/* ============================================================
   MOSAIC variant - mode-aware bands + dark identity islands
   vivid-frequency . css/variants/mosaic.css   (P4 . M2 + R5/R6 token conformance, per vf.p4.light_inversion_pattern)
   DARK ISLANDS (literal --sa-void/--sa-parchment, never flip): hero . bento backdrop+dark-stat+accent tiles . feature card 1(dark)+5(accent) . callout . dark price card . split CTA
   MODE-AWARE BANDS (flip via --vf-*): bento . manifesto . features grid . process . pricing surround . faq . testimonial
   Map: section bg->--vf-surface . rhythm(warm-cream)->--vf-surface-rhythm . cards(#fff)->--vf-surface-alt . hairline->--vf-border . strong head-rule + heading/quote ink->--vf-heading . body/muted/subtle->--vf-text/--vf-text-muted/--vf-text-subtle
   Accent system (--accent/--accent-ink/--accent-deep) + chakra hex stay variant-local & mode-independent (tuned for legibility).
   ============================================================ */
.sa-msc2{font-family:'Plus Jakarta Sans',sans-serif;--spirit-blue:#0896F2;--shakti-pink:#FF0060;--shakti-magenta:#FF008B;--anahata-green:#A7FF00;--electric-violet:#9000FF;--accent:var(--anahata-green);--accent-ink:#3B6D11;--accent-deep:#2A4F0C;color:var(--vf-text);font-size:16px;line-height:1.65;overflow-x:hidden}
.sa-msc2 *,.sa-msc2 *::before,.sa-msc2 *::after{box-sizing:border-box;margin:0;padding:0;font-style:normal!important}
.sa-msc2 a{color:inherit;text-decoration:none}
.sa-msc2 img{max-width:100%;display:block;height:auto}
.sa-msc2.sa-accent-anahata-green{--accent:#A7FF00;--accent-ink:#3B6D11;--accent-deep:#2A4F0C}
.sa-msc2.sa-accent-spirit-blue{--accent:#0896F2;--accent-ink:#0567A6;--accent-deep:#034170}
.sa-msc2.sa-accent-shakti-pink{--accent:#FF0060;--accent-ink:#A10039;--accent-deep:#6E0025}
.sa-msc2.sa-accent-electric-violet{--accent:#9000FF;--accent-ink:#5A00A1;--accent-deep:#3A0069}
.sa-msc2.sa-accent-shakti-magenta{--accent:#FF008B;--accent-ink:#A1005A;--accent-deep:#6E003C}
body.single-service main#main{background:var(--vf-surface)!important}
.sa-msc2 section{position:relative;width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw)}
.sa-msc2 .sa-acc-word{color:var(--accent-ink);border-bottom:4px solid var(--accent);padding-bottom:2px;font-weight:800}
.sa-msc2-hero{padding-right:0;padding-bottom:3.5rem;padding-left:0;overflow:hidden;color:var(--sa-parchment);background:var(--sa-void)}
.sa-msc2-hero-bg{position:absolute;inset:0;background:linear-gradient(-45deg,#0D0D1A,color-mix(in srgb,var(--accent) 18%,var(--sa-deep-violet-dark)),color-mix(in srgb,var(--accent) 30%,var(--sa-void)),color-mix(in srgb,var(--accent) 14%,var(--sa-deep-violet-dark)),#0D0D1A);background-size:400% 400%;animation:sa-msc2-flow 14s ease infinite;z-index:0}
@keyframes sa-msc2-flow{0%{background-position:0% 50%}50%{background-position:100% 50%}100%{background-position:0% 50%}}
.sa-msc2-hero-dots{position:absolute;inset:0;background-image:radial-gradient(circle,color-mix(in srgb,var(--accent) 22%,transparent) 1px,transparent 1px);background-size:38px 38px;pointer-events:none;z-index:0;opacity:.4}
.sa-msc2-hero::after{content:'';position:absolute;bottom:0;left:50%;transform:translateX(-50%);width:100%;height:2px;background:linear-gradient(90deg,transparent,var(--accent) 40%,var(--shakti-magenta) 60%,transparent);animation:sa-msc2-shim 4s ease-in-out infinite;z-index:2}
@keyframes sa-msc2-shim{0%,100%{opacity:.3;transform:translateX(-50%) scaleX(.6)}50%{opacity:1;transform:translateX(-50%) scaleX(1)}}
.sa-msc2-hero-inner{position:relative;z-index:1;max-width:1100px;margin:0 auto;padding:0 1.5rem;text-align:center}
.sa-msc2-cp{display:flex;gap:.55rem;align-items:center;justify-content:center;margin-bottom:1.25rem}
.sa-msc2-cp span{display:block;width:9px;height:9px;border-radius:50%;animation:sa-msc2-cp-pulse 2s ease-in-out infinite}
.sa-msc2-cp span:nth-child(1){background:#FF1500;animation-delay:0s}
.sa-msc2-cp span:nth-child(2){background:#FF5500;animation-delay:.15s}
.sa-msc2-cp span:nth-child(3){background:#FFD000;animation-delay:.3s}
.sa-msc2-cp span:nth-child(4){background:#A7FF00;animation-delay:.45s}
.sa-msc2-cp span:nth-child(5){background:#0896F2;animation-delay:.6s}
.sa-msc2-cp span:nth-child(6){background:#9000FF;animation-delay:.75s}
.sa-msc2-cp span:nth-child(7){background:#FF008B;animation-delay:.9s}
@keyframes sa-msc2-cp-pulse{0%,100%{transform:scale(1);opacity:.4}50%{transform:scale(1.7);opacity:1;box-shadow:0 0 6px currentColor}}
.sa-msc2-hero-badge-wrap{display:inline-block;padding:6px 16px;background:color-mix(in srgb,var(--accent) 14%,transparent);border:1px solid color-mix(in srgb,var(--accent) 40%,transparent);border-radius:999px;font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin-bottom:1rem}
.sa-msc2-hero-badge-wrap:empty{display:none}
.sa-msc2-hero-title{font-family:'Plus Jakarta Sans',sans-serif;font-size:clamp(2.6rem,5.5vw,4.8rem);font-weight:800;line-height:1;letter-spacing:-.04em;margin:0 0 1.25rem;color:var(--sa-parchment)}
.sa-msc2-hero-sub{font-size:clamp(1rem,1.6vw,1.2rem);color:color-mix(in srgb,var(--sa-parchment) 78%,transparent);line-height:1.6;max-width:720px;margin:0 auto 2rem;font-weight:500}
.sa-msc2-hero-sub:empty{display:none}
.sa-msc2-hero .sa-cta-row{display:flex;gap:12px;justify-content:center;margin-bottom:2.5rem;flex-wrap:wrap}
.sa-msc2-hero .sa-btn-primary{display:inline-flex;align-items:center;gap:8px;background:var(--accent);color:var(--sa-void)!important;font-weight:800;font-size:15px;padding:14px 28px;border-radius:999px;transition:transform .15s,box-shadow .2s;box-shadow:0 8px 28px color-mix(in srgb,var(--accent) 30%,transparent);text-decoration:none}
.sa-msc2-hero .sa-btn-primary:hover{transform:translateY(-2px);box-shadow:0 12px 36px color-mix(in srgb,var(--accent) 40%,transparent)}
.sa-msc2-hero .sa-btn-ghost{display:inline-flex;align-items:center;gap:8px;background:color-mix(in srgb,var(--sa-parchment) 4%,transparent);border:1px solid color-mix(in srgb,var(--sa-parchment) 25%,transparent);color:var(--sa-parchment)!important;font-weight:800;font-size:15px;padding:13px 26px;border-radius:999px;transition:all .2s;text-decoration:none}
.sa-msc2-hero .sa-btn-ghost:hover{border-color:var(--accent);transform:translateY(-2px)}
.sa-msc2-hero-stats{display:flex;gap:3rem;justify-content:center;flex-wrap:wrap;margin-top:1rem}
.sa-msc2-hero-stats .sa-stat{text-align:center}
.sa-msc2-hero-stats .sa-stat b{display:block;font-size:clamp(1.8rem,3vw,2.4rem);font-weight:800;color:var(--accent);letter-spacing:-.03em;line-height:1}
.sa-msc2-hero-stats .sa-stat span{display:block;font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:color-mix(in srgb,var(--sa-parchment) 50%,transparent);margin-top:.4rem}
.sa-msc2-bento{padding:5rem 0 4rem;background:var(--vf-surface)}
.sa-msc2-b-head{max-width:1200px;margin:0 auto 2rem;padding:0 1.5rem;display:flex;justify-content:space-between;align-items:end;gap:2rem;border-bottom:2px solid var(--vf-heading);padding-bottom:1.25rem;flex-wrap:wrap}
.sa-msc2-b-head h2{font-family:'Plus Jakarta Sans',sans-serif;font-size:clamp(1.8rem,3.4vw,2.6rem);font-weight:800;line-height:1;letter-spacing:-.03em;color:var(--vf-heading)}
.sa-msc2-eyebrow{font-size:11px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--accent-ink);padding:5px 12px;background:color-mix(in srgb,var(--accent) 18%,transparent);border:1px solid color-mix(in srgb,var(--accent) 35%,transparent);border-radius:999px;display:inline-block}
.sa-msc2-bgrid{max-width:1200px;margin:0 auto;padding:0 1.5rem;display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:repeat(4,minmax(200px,auto));gap:12px;grid-template-areas:"edhero edhero scland scland" "edhero edhero scland scland" "why scport scport stat" "why edport edport edport"}
@media(max-width:900px){.sa-msc2-bgrid{grid-template-columns:repeat(2,1fr);grid-template-rows:auto;grid-template-areas:"edhero edhero" "scland scland" "scport scport" "edport edport" "why stat"}}
@media(max-width:540px){.sa-msc2-bgrid{grid-template-columns:1fr;grid-template-areas:"edhero" "scland" "scport" "edport" "why" "stat"}}
.sa-bt{border-radius:16px;overflow:hidden;position:relative;margin:0;background:var(--sa-void);min-height:200px;transition:transform .25s}
.sa-bt:hover{transform:translateY(-3px)}
.sa-bt-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s}
.sa-bt-img:hover img{transform:scale(1.05)}
.sa-bt-img figcaption{position:absolute;bottom:0;left:0;right:0;padding:.85rem 1.1rem;color:#fff;font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;background:linear-gradient(180deg,transparent,color-mix(in srgb,var(--sa-void) 80%,transparent));opacity:0;transform:translateY(6px);transition:all .3s;z-index:2}
.sa-bt-img:hover figcaption{opacity:1;transform:translateY(0)}
.sa-bt-edhero{grid-area:edhero}
.sa-bt-stat{grid-area:stat}
.sa-bt-edport{grid-area:edport}
.sa-bt-why{grid-area:why}
.sa-bt-scport{grid-area:scport}
.sa-bt-scland{grid-area:scland}
.sa-bt-txt{padding:1.75rem 1.5rem;display:flex;flex-direction:column;justify-content:space-between;align-items:flex-start}
.sa-bt-dark{background:var(--sa-deep-violet-dark);color:var(--sa-parchment)}
.sa-bt-dark .sa-bt-big{font-family:'Plus Jakarta Sans',sans-serif;font-size:clamp(3rem,5.5vw,4.8rem);font-weight:800;color:var(--accent);letter-spacing:-.04em;line-height:1}
.sa-bt-dark .sa-bt-big span{font-size:.45em;color:color-mix(in srgb,var(--sa-parchment) 50%,transparent);font-weight:700}
.sa-bt-dark .sa-bt-sm{font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:color-mix(in srgb,var(--sa-parchment) 55%,transparent);margin-top:.75rem}
.sa-bt-dark .sa-bt-sm-title{font-family:'Plus Jakarta Sans',sans-serif;font-size:16px;font-weight:800;color:var(--sa-parchment);line-height:1.25;margin-top:.35rem}
/* WHY panel: mode-aware neutral surface (was a flat --accent slab).
   .sa-bt-accent is why-panel-exclusive (scope-guarded, 1A). Green as a short
   accent bar, not a fill; content top-aligned (overrides shared .sa-bt-txt
   space-between for this tile only, via later source order). Mode-aware token = conformant. */
.sa-bt-accent{background:var(--vf-surface-alt);border:1px solid var(--vf-border);color:var(--vf-heading);justify-content:flex-start}
.sa-bt-accent::before{content:"";display:block;width:28px;height:3px;background:var(--accent);border-radius:2px;margin-bottom:1rem}
.sa-bt-accent .sa-bt-label{font-size:11px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--vf-text-subtle);margin-bottom:.65rem}
.sa-bt-accent .sa-bt-body{font-family:'Plus Jakarta Sans',sans-serif;font-size:clamp(.92rem,1.25vw,1.05rem);font-weight:700;line-height:1.5;color:var(--vf-heading);letter-spacing:-.005em}
.sa-msc2-mani{padding:5rem 1.5rem;background:var(--vf-surface-rhythm);border-top:1px solid var(--vf-border)}
.sa-msc2-mani-inner{max-width:1000px;margin:0 auto;display:grid;grid-template-columns:6px 1fr;gap:2.5rem;align-items:start}
@media(max-width:600px){.sa-msc2-mani-inner{grid-template-columns:4px 1fr;gap:1.5rem}}
.sa-msc2-mani-bar{width:6px;align-self:stretch;background:linear-gradient(180deg,var(--accent),var(--accent-ink));border-radius:3px;min-height:120px}
.sa-msc2-mani-body{font-family:'Plus Jakarta Sans',sans-serif;font-size:clamp(1.3rem,2.5vw,1.95rem);line-height:1.3;color:var(--vf-heading);font-weight:600;letter-spacing:-.02em}
.sa-msc2-mani-body strong{color:var(--accent-ink);font-weight:800}
.sa-msc2-mani-attr{margin-top:1.25rem;font-size:11px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--vf-text-subtle)}
.sa-msc2-feats{padding:5rem 1.5rem;background:var(--vf-surface)}
.sa-msc2-feats-head{max-width:1200px;margin:0 auto 2rem;display:flex;justify-content:space-between;align-items:end;gap:2rem;border-bottom:2px solid var(--vf-heading);padding-bottom:1.25rem;flex-wrap:wrap}
.sa-msc2-feats-head h2{font-family:'Plus Jakarta Sans',sans-serif;font-size:clamp(1.8rem,3.4vw,2.6rem);font-weight:800;line-height:1;letter-spacing:-.03em;color:var(--vf-heading)}
.sa-msc2-fgrid{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:repeat(6,1fr);grid-auto-rows:min-content;gap:12px}
.sa-msc2-fgrid .sa-fcard{background:var(--vf-surface-alt);border:1px solid var(--vf-border);border-radius:16px;padding:1.4rem 1.3rem;transition:all .25s;min-height:170px;display:flex;flex-direction:column;justify-content:space-between;grid-column:span 2}
.sa-msc2-fgrid .sa-fcard:hover{transform:translateY(-3px);border-color:color-mix(in srgb,var(--accent) 40%,transparent);box-shadow:0 14px 28px -12px color-mix(in srgb,var(--accent) 25%,transparent)}
.sa-msc2-fgrid .sa-fcard:nth-child(1){grid-column:span 3;grid-row:span 2;background:var(--sa-deep-violet-dark);color:var(--sa-parchment);min-height:340px;padding:2rem 1.75rem}
.sa-msc2-fgrid .sa-fcard:nth-child(1) h3{color:var(--sa-parchment);font-size:clamp(1.4rem,2.3vw,1.9rem);letter-spacing:-.025em;line-height:1.1}
.sa-msc2-fgrid .sa-fcard:nth-child(1) p{color:color-mix(in srgb,var(--sa-parchment) 78%,transparent);font-size:15px}
.sa-msc2-fgrid .sa-fcard:nth-child(2){grid-column:span 3}
.sa-msc2-fgrid .sa-fcard:nth-child(5){background:var(--accent);color:var(--sa-void);grid-column:span 2}
.sa-msc2-fgrid .sa-fcard:nth-child(5) h3{color:var(--sa-void)}
.sa-msc2-fgrid .sa-fcard:nth-child(5) p{color:color-mix(in srgb,var(--sa-void) 85%,transparent)}
.sa-msc2-fgrid .sa-fcard:nth-child(5) .sa-fcard-dot{background:var(--sa-void);box-shadow:0 0 10px color-mix(in srgb,#000 25%,transparent)}
.sa-msc2-fgrid .sa-fcard:nth-child(6){grid-column:span 4}
@media(max-width:900px){.sa-msc2-fgrid{grid-template-columns:repeat(2,1fr)}.sa-msc2-fgrid .sa-fcard,.sa-msc2-fgrid .sa-fcard:nth-child(1),.sa-msc2-fgrid .sa-fcard:nth-child(2),.sa-msc2-fgrid .sa-fcard:nth-child(5),.sa-msc2-fgrid .sa-fcard:nth-child(6){grid-column:span 1;grid-row:auto;min-height:auto;padding:1.4rem 1.3rem}}
.sa-msc2-fgrid .sa-fcard-dot{width:8px;height:8px;border-radius:50%;background:var(--accent);margin-bottom:1rem;box-shadow:0 0 12px currentColor}
.sa-msc2-fgrid .sa-fcard h3{font-family:'Plus Jakarta Sans',sans-serif;font-size:17px;font-weight:800;color:var(--vf-heading);margin-bottom:.4rem;letter-spacing:-.01em;line-height:1.2}
.sa-msc2-fgrid .sa-fcard p{font-size:14px;line-height:1.55;color:var(--vf-text-muted)}
.sa-msc2-callout{padding:5rem 1.5rem;background:var(--sa-void);color:var(--sa-parchment);overflow:hidden}
.sa-msc2-co-inner{max-width:1000px;margin:0 auto;display:grid;grid-template-columns:5px 1fr;gap:2.5rem;align-items:start}
.sa-msc2-co-bar{width:5px;align-self:stretch;background:var(--accent);border-radius:3px;min-height:100px}
.sa-msc2-callout h2{font-family:'Plus Jakarta Sans',sans-serif;font-size:clamp(1.6rem,3vw,2.4rem);font-weight:800;line-height:1.15;letter-spacing:-.025em;color:var(--sa-parchment);margin-bottom:1rem}
.sa-msc2-callout p{font-size:16px;line-height:1.65;color:color-mix(in srgb,var(--sa-parchment) 75%,transparent);margin-bottom:1.5rem}
.sa-msc2-callout a.sa-msc2-co-link{display:inline-flex;align-items:center;gap:8px;font-size:14px;font-weight:800;color:var(--accent);border-bottom:1px solid color-mix(in srgb,var(--accent) 50%,transparent);padding-bottom:2px}
.sa-msc2-process{padding:4.5rem 1.5rem;background:var(--vf-surface-rhythm);border-top:4px solid var(--accent)}
.sa-msc2-proc-head{max-width:1100px;margin:0 auto 2.5rem;text-align:center}
.sa-msc2-proc-head h2{font-family:'Plus Jakarta Sans',sans-serif;font-size:clamp(1.8rem,3vw,2.4rem);font-weight:800;color:var(--vf-heading);letter-spacing:-.025em;margin-bottom:.5rem;line-height:1.1}
.sa-msc2-proc-head p{font-size:15px;color:var(--vf-text-muted);max-width:560px;margin:0 auto}
.sa-msc2-steps{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}
.sa-msc2-steps .sa-step{background:var(--vf-surface-alt);border:1px solid var(--vf-border);border-radius:16px;padding:1.5rem 1.4rem}
.sa-msc2-steps .sa-step-n{font-family:'Plus Jakarta Sans',sans-serif;display:inline-block;font-size:2.6rem;font-weight:800;color:var(--accent);line-height:.85;margin-bottom:.75rem;letter-spacing:-.04em}
.sa-msc2-steps .sa-step strong{display:block;font-size:16px;font-weight:800;color:var(--vf-heading);margin-bottom:.4rem}
.sa-msc2-steps .sa-step p{font-size:13.5px;line-height:1.55;color:var(--vf-text-muted)}
.sa-msc2-pricing{padding:4.5rem 1.5rem;background:var(--vf-surface)}
.sa-msc2-price-card{max-width:1000px;margin:0 auto;display:grid;grid-template-columns:auto 1fr auto;gap:2rem;align-items:center;background:var(--sa-deep-violet-dark);color:var(--sa-parchment);padding:2.25rem;border-radius:20px;position:relative;overflow:hidden}
.sa-msc2-price-card::before{content:'';position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--accent),var(--shakti-magenta))}
@media(max-width:760px){.sa-msc2-price-card{grid-template-columns:1fr;gap:1.25rem;text-align:center}}
.sa-msc2-price-left .label{font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:color-mix(in srgb,var(--sa-parchment) 50%,transparent);margin-bottom:.5rem}
.sa-msc2-price-left .amount{font-family:'Plus Jakarta Sans',sans-serif;font-size:clamp(2.2rem,3.8vw,3rem);font-weight:800;letter-spacing:-.04em;color:var(--accent);line-height:1}
.sa-msc2-price-left .amount .per{font-size:.4em;color:color-mix(in srgb,var(--sa-parchment) 50%,transparent);margin-left:4px;font-weight:700}
.sa-msc2-price-mid{font-size:14.5px;line-height:1.6;color:color-mix(in srgb,var(--sa-parchment) 78%,transparent)}
.sa-msc2-price-mid strong{color:var(--sa-parchment)}
.sa-msc2-price-right{display:flex;flex-direction:column;gap:6px}
@media(max-width:760px){.sa-msc2-price-right{align-items:center}}
.sa-msc2-price-cta{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--accent);color:var(--sa-void)!important;font-weight:800;font-size:14px;padding:13px 22px;border-radius:999px;transition:all .2s;text-decoration:none;white-space:nowrap}
.sa-msc2-price-cta:hover{transform:translateY(-2px);box-shadow:0 8px 22px color-mix(in srgb,var(--accent) 40%,transparent)}
.sa-msc2-price-alt{display:inline-flex;align-items:center;justify-content:center;gap:6px;color:color-mix(in srgb,var(--sa-parchment) 65%,transparent)!important;font-weight:700;font-size:13px;padding:4px 12px;text-decoration:none}
.sa-msc2-price-alt:hover{color:var(--sa-parchment)!important}
.sa-msc2-faq{padding:5rem 1.5rem;background:var(--vf-surface-rhythm)}
.sa-msc2-faq-head{max-width:1100px;margin:0 auto 1.75rem;display:flex;justify-content:space-between;align-items:baseline;gap:1rem;border-bottom:2px solid var(--vf-heading);padding-bottom:1rem;flex-wrap:wrap}
.sa-msc2-faq-head h2{font-family:'Plus Jakarta Sans',sans-serif;font-size:clamp(1.8rem,3vw,2.4rem);font-weight:800;color:var(--vf-heading);letter-spacing:-.025em;line-height:1.1}
.sa-msc2-faq-grid{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:12px}
.sa-msc2-faq-grid .sa-faq-item{background:var(--vf-surface-alt);border:1px solid var(--vf-border);border-radius:16px;padding:1.4rem 1.35rem}
.sa-msc2-faq-grid .sa-faq-item[open]{border-color:color-mix(in srgb,var(--accent) 45%,transparent)}
.sa-msc2-faq-grid .sa-faq-item summary{list-style:none;font-family:'Plus Jakarta Sans',sans-serif;font-size:15.5px;font-weight:800;color:var(--vf-heading);letter-spacing:-.01em;line-height:1.3;margin-bottom:.75rem;cursor:default;display:flex;gap:.5rem;align-items:baseline}
.sa-msc2-faq-grid .sa-faq-item summary::-webkit-details-marker{display:none}
.sa-msc2-faq-grid .sa-faq-item summary::before{content:'Q.';font-weight:800;color:var(--accent-ink);font-size:1em;flex-shrink:0}
.sa-msc2-faq-grid .sa-faq-item .a{font-size:14.5px;line-height:1.6;color:var(--vf-text-muted);display:flex;gap:.5rem;align-items:baseline}
.sa-msc2-faq-grid .sa-faq-item .a::before{content:'A.';font-weight:800;color:var(--accent-ink);font-size:1em;flex-shrink:0}
.sa-msc2-testi{padding:5rem 1.5rem;background:var(--vf-surface)}
.sa-msc2-testi-inner{max-width:900px;margin:0 auto;display:grid;grid-template-columns:6px 1fr;gap:2rem;align-items:start}
.sa-msc2-testi-bar{width:6px;align-self:stretch;background:linear-gradient(180deg,var(--accent),var(--accent-ink));border-radius:3px;min-height:100px}
.sa-msc2-testi-card .sa-testi-quote{font-family:'Plus Jakarta Sans',sans-serif;font-size:clamp(1.2rem,2.2vw,1.7rem);line-height:1.35;color:var(--vf-heading);font-weight:600;letter-spacing:-.015em;margin-bottom:1.5rem}
.sa-msc2-testi-card .sa-testi-meta{display:flex;align-items:center;gap:1rem;padding-top:1rem;border-top:1px solid var(--vf-border)}
.sa-msc2-testi-card .sa-testi-meta b{font-size:15px;font-weight:800;color:var(--vf-heading);display:block}
.sa-msc2-testi-card .sa-testi-meta span{font-size:13px;color:var(--vf-text-subtle);display:block;margin-top:2px}
.sa-msc2-cta{background:var(--sa-void);color:var(--sa-parchment);overflow:hidden;position:relative}
.sa-msc2-cta-inner{max-width:1280px;margin:0 auto;display:grid;grid-template-columns:1.15fr .85fr;min-height:320px}
@media(max-width:760px){.sa-msc2-cta-inner{grid-template-columns:1fr}}
.sa-msc2-cta-left{padding:4rem 2.5rem;display:flex;flex-direction:column;justify-content:center}
.sa-msc2-cta-right{background:var(--accent);color:var(--sa-void);padding:4rem 2.5rem;display:flex;flex-direction:column;justify-content:center;clip-path:polygon(8% 0,100% 0,100% 100%,0 100%)}
@media(max-width:760px){.sa-msc2-cta-right{clip-path:none}}
.sa-msc2-cta-left h2{font-family:'Plus Jakarta Sans',sans-serif;font-size:clamp(1.8rem,3.4vw,2.8rem);font-weight:800;line-height:1.1;letter-spacing:-.025em;color:var(--sa-parchment);margin-bottom:.75rem}
.sa-msc2-cta-left p{font-size:15.5px;line-height:1.6;color:color-mix(in srgb,var(--sa-parchment) 72%,transparent);margin-bottom:1.5rem;max-width:440px}
.sa-msc2-cta-row{display:flex;gap:10px;flex-wrap:wrap}
.sa-msc2-cta-row .b1{display:inline-flex;align-items:center;gap:6px;background:var(--accent);color:var(--sa-void)!important;font-weight:800;font-size:14px;padding:13px 22px;border-radius:999px;text-decoration:none;transition:transform .2s}
.sa-msc2-cta-row .b1:hover{transform:translateY(-2px)}
.sa-msc2-cta-row .b2{display:inline-flex;align-items:center;gap:6px;background:transparent;color:var(--sa-parchment)!important;font-weight:800;font-size:14px;padding:12px 20px;border:1px solid color-mix(in srgb,var(--sa-parchment) 25%,transparent);border-radius:999px;text-decoration:none}
.sa-msc2-cta-row .b2:hover{border-color:var(--sa-parchment)}
.sa-msc2-cta-right .r-lab{font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:color-mix(in srgb,var(--sa-void) 65%,transparent);margin-bottom:.75rem}
.sa-msc2-cta-right .r-main{font-family:'Plus Jakarta Sans',sans-serif;font-size:clamp(1.3rem,2.4vw,1.8rem);font-weight:800;line-height:1.2;letter-spacing:-.02em;color:var(--sa-void);margin-bottom:1.25rem}
.sa-msc2-cta-right .btn-dark{display:inline-flex;align-items:center;gap:6px;background:var(--sa-void);color:var(--accent)!important;font-weight:800;font-size:14px;padding:12px 22px;border-radius:999px;align-self:flex-start;text-decoration:none;transition:transform .2s}
.sa-msc2-cta-right .btn-dark:hover{transform:translateY(-2px)}

/* B3 (P4) - lock hero ghost button to its dark-island look in BOTH modes,
   beating global body.vf--light a.sa-btn-ghost. Mirrors showcase. */
.sa-msc2 .sa-msc2-hero a.sa-btn-ghost{background:color-mix(in srgb,var(--spirit-blue) 10%,transparent);border-color:color-mix(in srgb,var(--spirit-blue) 35%,transparent);color:var(--sa-parchment)}
.sa-msc2 .sa-msc2-hero a.sa-btn-ghost:hover{background:var(--sa-shakti-gradient);border-color:transparent;color:var(--sa-parchment)}

/* ===== LIGHT-MODE INVERSION (P4 — Vikas: no fixed islands, everything flips) =====
   Per vf.p4.light_inversion_pattern (site:vivid-frequency); mirrors the approved
   story.css + showcase.css .vf--light tails. Void stays byte-identical (every rule
   above untouched); these .vf--light overrides give mosaic's six dark sections a
   light form. Accent-coloured bands (accent bento/feature tiles, accent CTA half)
   are mode-independent — left vivid, untouched. */
/* 1 HERO — pale accent mesh + dark ink (flow animation kept; background-size re-declared) */
.vf--light .sa-msc2 .sa-msc2-hero{background:var(--vf-surface);color:var(--vf-heading)}
.vf--light .sa-msc2 .sa-msc2-hero-bg{background:linear-gradient(-45deg,#FAFAF7,color-mix(in srgb,var(--accent) 12%,#F4F0FB),color-mix(in srgb,var(--accent) 18%,#FBF9FF),color-mix(in srgb,var(--accent) 12%,#F4F0FB),#FAFAF7);background-size:400% 400%}
.vf--light .sa-msc2 .sa-msc2-hero-dots{background-image:radial-gradient(circle,color-mix(in srgb,var(--electric-violet) 7%,transparent) 1px,transparent 1px)}
.vf--light .sa-msc2 .sa-msc2-hero-title{color:var(--vf-heading)}
.vf--light .sa-msc2 .sa-msc2-hero-sub{color:var(--vf-text-muted)}
.vf--light .sa-msc2 .sa-msc2-hero-badge-wrap{color:var(--accent-ink)}
.vf--light .sa-msc2 .sa-msc2-hero-stats .sa-stat span{color:var(--vf-text-subtle)}
.vf--light .sa-msc2 .sa-msc2-hero a.sa-btn-ghost{background:color-mix(in srgb,var(--sa-deep-violet-dark) 4%,transparent);border-color:color-mix(in srgb,var(--sa-deep-violet-dark) 30%,transparent);color:var(--sa-deep-violet-dark)!important}
.vf--light .sa-msc2 .sa-msc2-hero a.sa-btn-ghost:hover{background:var(--sa-shakti-gradient);border-color:transparent;color:var(--sa-parchment)!important}
/* 2 DARK BENTO STAT TILE (.sa-bt-dark) — light card */
.vf--light .sa-msc2 .sa-bt-dark{background:var(--vf-surface-alt);color:var(--vf-heading);border:1px solid var(--vf-border)}
.vf--light .sa-msc2 .sa-bt-dark .sa-bt-big span{color:var(--vf-text-subtle)}
.vf--light .sa-msc2 .sa-bt-dark .sa-bt-sm{color:var(--vf-text-subtle)}
.vf--light .sa-msc2 .sa-bt-dark .sa-bt-sm-title{color:var(--vf-heading)}
/* 3 DARK FEATURE CARD (.sa-fcard:nth-child(1)) — tinted lead card, distinct from surface-alt siblings */
.vf--light .sa-msc2 .sa-msc2-fgrid .sa-fcard:nth-child(1){background:var(--vf-surface-tint);color:var(--vf-heading)}
.vf--light .sa-msc2 .sa-msc2-fgrid .sa-fcard:nth-child(1) h3{color:var(--vf-heading)}
.vf--light .sa-msc2 .sa-msc2-fgrid .sa-fcard:nth-child(1) p{color:var(--vf-text-muted)}
/* 4 CALLOUT — emphasis band -> --vf-surface-rhythm + dark ink */
.vf--light .sa-msc2 .sa-msc2-callout{background:var(--vf-surface-rhythm);color:var(--vf-heading)}
.vf--light .sa-msc2 .sa-msc2-callout h2{color:var(--vf-heading)}
.vf--light .sa-msc2 .sa-msc2-callout p{color:var(--vf-text-muted)}
/* 5 DARK PRICE CARD — light standout card */
.vf--light .sa-msc2 .sa-msc2-price-card{background:var(--vf-surface-alt);color:var(--vf-heading);border:1px solid var(--vf-border)}
.vf--light .sa-msc2 .sa-msc2-price-left .label{color:var(--vf-text-subtle)}
.vf--light .sa-msc2 .sa-msc2-price-left .amount .per{color:var(--vf-text-subtle)}
.vf--light .sa-msc2 .sa-msc2-price-mid{color:var(--vf-text-muted)}
.vf--light .sa-msc2 .sa-msc2-price-mid strong{color:var(--vf-heading)}
.vf--light .sa-msc2 .sa-msc2-price-alt{color:var(--vf-text-muted)!important}
.vf--light .sa-msc2 .sa-msc2-price-alt:hover{color:var(--vf-heading)!important}
/* 6 SPLIT-CTA DARK (LEFT) HALF — light; accent (right) half untouched */
.vf--light .sa-msc2 .sa-msc2-cta{background:var(--vf-surface);color:var(--vf-heading)}
.vf--light .sa-msc2 .sa-msc2-cta-left h2{color:var(--vf-heading)}
.vf--light .sa-msc2 .sa-msc2-cta-left p{color:var(--vf-text-muted)}
.vf--light .sa-msc2 .sa-msc2-cta-row .b2{color:var(--vf-heading)!important;border-color:var(--vf-border)}
.vf--light .sa-msc2 .sa-msc2-cta-row .b2:hover{border-color:var(--vf-heading)}
