/* ============================================================
   ORSEL v9 — HOME
   One light source (tokens.css ramp), four component families:
   framed figure (case), portrait split (who), bento (services),
   dial track (process), ink band (prices), hairline list (FAQ).
   ============================================================ */

:root{
  --n9-ink:#16161d;--n9-muted:#4f5666;--n9-paper:#fbfdff;--n9-raised:#ffffff;
  --n9-cyan:#9ee8f5;--n9-cyan-soft:#e3f7fb;--n9-magenta:#f3a6dc;--n9-magenta-soft:#fbe9f5;
  --n9-hair:rgba(22,22,29,.14);--n9-band:#edf8fb;--n9-band-ink:#16161d;--n9-band-muted:#4f5666;--n9-band-hair:rgba(22,22,29,.18);--n9-band-link:#12616f;
  --n9-shadow:0 2px 4px rgba(22,58,77,.07),0 12px 24px -8px rgba(22,58,77,.14),0 36px 60px -28px rgba(22,58,77,.22);
  --n9-shadow-sm:0 1px 2px rgba(22,58,77,.08),0 8px 18px -8px rgba(22,58,77,.16);
  --n9-display:Fraunces,Georgia,serif;--n9-text:'Source Sans 3',system-ui,sans-serif;
}
:root[data-theme="dark"]{
  --n9-ink:#eef0f4;--n9-muted:#c3c8d3;--n9-paper:#121217;--n9-raised:#1b1d26;
  --n9-cyan:#8bdceb;--n9-cyan-soft:#16313a;--n9-magenta:#f2a2d8;--n9-magenta-soft:#2f1f2c;
  --n9-hair:rgba(238,240,244,.2);--n9-band:#0f2129;--n9-band-ink:#f2f4f7;--n9-band-muted:#c3c8d3;--n9-band-hair:rgba(242,244,247,.22);--n9-band-link:#9ee8f5;
  --n9-shadow:0 2px 4px rgba(0,0,0,.4),0 14px 28px -10px rgba(0,0,0,.6),0 0 0 1px rgba(139,220,235,.14);
  --n9-shadow-sm:0 1px 2px rgba(0,0,0,.4),0 8px 18px -8px rgba(0,0,0,.55),0 0 0 1px rgba(139,220,235,.1);
}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){
  --n9-ink:#eef0f4;--n9-muted:#c3c8d3;--n9-paper:#121217;--n9-raised:#1b1d26;
  --n9-cyan:#8bdceb;--n9-cyan-soft:#16313a;--n9-magenta:#f2a2d8;--n9-magenta-soft:#2f1f2c;
  --n9-hair:rgba(238,240,244,.2);--n9-band:#0f2129;--n9-band-ink:#f2f4f7;--n9-band-muted:#c3c8d3;--n9-band-hair:rgba(242,244,247,.22);--n9-band-link:#9ee8f5;
  --n9-shadow:0 2px 4px rgba(0,0,0,.4),0 14px 28px -10px rgba(0,0,0,.6),0 0 0 1px rgba(139,220,235,.14);
  --n9-shadow-sm:0 1px 2px rgba(0,0,0,.4),0 8px 18px -8px rgba(0,0,0,.55),0 0 0 1px rgba(139,220,235,.1);
}}

/* ---------- hero: signature first, one sentence, one action ---------- */
.home-hero{padding:3rem 0 3.5rem;background:none}
.home-hero .hero-copy{max-width:980px;margin:0 auto;text-align:center}
.home-hero .signature{width:min(560px,82%);margin:0 auto 2rem}
.home-hero .eyebrow{margin:0 auto 1.1rem;text-align:center}
.home-hero h1{font-family:var(--n9-display);font-weight:400;font-size:clamp(2.3rem,4.6vw,4.1rem);letter-spacing:-.035em;line-height:1.08;max-width:21ch;margin-inline:auto;color:var(--n9-ink)}
.home-hero .lede{font-family:var(--n9-text);font-size:clamp(1.08rem,1.4vw,1.24rem);max-width:54ch;color:var(--n9-muted);margin-top:1.4rem}
.home-hero .actions{margin-top:2.2rem;gap:1rem 1.8rem}
.home-hero .button{min-height:54px;padding:.95rem 2rem;border-radius:999px;font-size:1rem;box-shadow:var(--n9-shadow-sm)}
.whatsapp-link{font-size:.98rem}

/* shared */
.n9-case,.n9-who,.n9-services,.n9-process,.n9-prices,.n9-faq,.n9-final{font-family:var(--n9-text);color:var(--n9-ink)}
.n9-case h2,.n9-who h2,.n9-services h2,.n9-process h2,.n9-prices h2,.n9-faq h2,.n9-final h2{font-family:var(--n9-display);font-weight:400;letter-spacing:-.03em;line-height:1.1}
.n9-head{margin-bottom:2.6rem}
.n9-head h2{font-size:clamp(1.9rem,3.2vw,2.9rem);max-width:20ch}
.n9-kicker{font-size:.8rem;font-weight:600;letter-spacing:.02em;color:var(--n9-muted);margin-bottom:.35rem}
.n9-case p,.n9-who p,.n9-services p,.n9-process p,.n9-faq p{color:var(--n9-muted);font-size:1.02rem;line-height:1.65}

/* ---------- 1. case: framed figure, real screenshots ---------- */
.n9-case{padding:2rem 0 6rem}
.n9-case-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);gap:clamp(2.5rem,5vw,5rem);align-items:center}
.n9-shots{position:relative;margin:0;padding:0 3.5rem 2.5rem 0}
.n9-browser{border-radius:12px;overflow:hidden;background:var(--n9-raised);box-shadow:var(--n9-shadow)}
.n9-browser-bar{display:flex;align-items:center;gap:6px;padding:.6rem .9rem;background:linear-gradient(180deg,#f4f6f9,#eceff3);border-bottom:1px solid rgba(22,22,29,.08)}
.n9-browser-bar i{width:9px;height:9px;border-radius:50%;background:#d7dbe2}
.n9-browser-bar span{margin-left:.8rem;font-size:.72rem;color:#5d6472;background:#fff;border-radius:6px;padding:.15rem .7rem}
:root[data-theme="dark"] .n9-browser-bar{background:linear-gradient(180deg,#262935,#20232d);border-bottom-color:rgba(255,255,255,.06)}
:root[data-theme="dark"] .n9-browser-bar i{background:#454a58}
:root[data-theme="dark"] .n9-browser-bar span{background:#14161d;color:#b9bfcc}
.n9-browser img{display:block;width:100%;height:auto;aspect-ratio:1200/750;object-fit:cover;object-position:top}
.n9-phone{position:absolute;right:0;bottom:0;width:29%;min-width:120px;border-radius:22px;padding:7px;background:#16161d;box-shadow:var(--n9-shadow)}
.n9-phone img{display:block;width:100%;height:auto;aspect-ratio:600/1077;object-fit:cover;object-position:top;border-radius:16px}
.n9-case-copy h2{font-size:clamp(1.8rem,2.7vw,2.5rem);margin-bottom:1.2rem}
.n9-case-copy p+p{margin-top:.9rem}
.n9-facts{margin:1.8rem 0 1.2rem;display:grid;gap:.1rem}
.n9-facts div{display:grid;grid-template-columns:6.5rem 1fr;gap:1rem;padding:.7rem 0;border-top:1px solid var(--n9-hair)}
.n9-facts dt{font-size:.85rem;font-weight:600}
.n9-facts dd{margin:0;font-size:.95rem;color:var(--n9-muted)}

/* ---------- 2. who: portrait split, asymmetric ---------- */
.n9-who{padding:6rem 0;background:linear-gradient(180deg,transparent,var(--n9-cyan-soft) 30%,var(--n9-cyan-soft) 70%,transparent)}
.n9-who-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1fr);gap:clamp(2.5rem,6vw,6rem);align-items:center}
.n9-portrait{margin:0;position:relative;max-width:440px;justify-self:end}
.n9-portrait img{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;border-radius:4px;box-shadow:var(--n9-shadow)}
.n9-portrait picture{position:relative;display:block;isolation:isolate}
.n9-portrait picture::before{content:"";position:absolute;inset:1.4rem -1.4rem -1.4rem 1.4rem;border:1.5px solid var(--n9-magenta);border-radius:4px;z-index:-1}
.n9-portrait figcaption{margin-top:1.9rem;font-size:.8rem;color:var(--n9-muted);letter-spacing:.04em}
.n9-who-copy h2{font-size:clamp(2rem,3.4vw,3.1rem);max-width:15ch;margin-bottom:1.4rem}
.n9-who-copy .n9-lead{font-size:clamp(1.12rem,1.5vw,1.3rem);color:var(--n9-ink);max-width:40ch}
.n9-who-copy p+p{margin-top:1rem;max-width:46ch}
.n9-who-copy .text-link{margin-top:1rem}

/* ---------- 3. services: bento, four distinct members ---------- */
.n9-services{padding:6rem 0 5rem}
.n9-bento{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);grid-template-areas:"web ads" "web local" "care care";gap:1.5rem}
.n9-bento article{position:relative}
.n9-bento h3{font-family:var(--n9-display);font-weight:400;font-size:clamp(1.55rem,2.2vw,2.05rem);letter-spacing:-.02em;margin-bottom:.8rem;color:var(--n9-ink)}
.n9-web{grid-area:web;padding:clamp(2rem,3.5vw,3.2rem);border-radius:14px;background:var(--n9-raised);box-shadow:var(--n9-shadow);display:flex;flex-direction:column}
.n9-web h3{font-size:clamp(2.2rem,3.4vw,3.2rem)}
.n9-web::after{content:"";position:absolute;left:clamp(2rem,3.5vw,3.2rem);top:0;width:64px;height:3px;background:var(--n9-cyan);border-radius:0 0 3px 3px}
.n9-ticks{list-style:none;padding:0;margin:1.6rem 0 auto}
.n9-ticks li{position:relative;padding:.75rem 0 .75rem 2rem;border-top:1px solid var(--n9-hair);font-size:1rem}
.n9-ticks li::before{content:"";position:absolute;left:.15rem;top:1.15rem;width:.75rem;height:.4rem;border-left:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(-45deg);color:var(--n9-ink);opacity:.75}
.n9-web .text-link{margin-top:1.8rem}
.n9-ads{grid-area:ads;padding:2.2rem 2.4rem;border-radius:14px;background:var(--n9-cyan-soft)}
.n9-ads p{color:var(--n9-ink);opacity:.86}
.n9-local{grid-area:local;display:grid;grid-template-columns:84px 1fr;gap:1.4rem;padding:2rem .4rem 0;border-top:1px solid var(--n9-hair)}
.n9-pin{width:84px;height:84px;color:var(--n9-ink)}
.n9-pin circle{fill:var(--n9-magenta)}
.n9-care{grid-area:care;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.5fr);gap:3rem;align-items:center;padding:2.4rem 2.6rem;border-radius:14px;background:var(--n9-magenta-soft)}
.n9-tiers{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:0}
.n9-tiers li{padding:.4rem 1.4rem;border-left:1px solid var(--n9-hair)}
.n9-tiers strong{display:block;font-family:var(--n9-display);font-weight:500;font-size:1.25rem;margin-bottom:.35rem}
.n9-tiers span{display:block;font-size:.93rem;color:var(--n9-muted);line-height:1.5}
.n9-other{margin-top:2rem;font-size:.98rem;color:var(--n9-muted)}
.n9-other a{color:var(--n9-ink)}

/* ---------- 4. process: dial track (payment progress) ---------- */
.n9-process{padding:5.5rem 0}
.n9-track{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:2rem;position:relative}
.n9-track::before{content:"";position:absolute;top:27px;left:28px;right:12%;height:2px;background:linear-gradient(90deg,var(--n9-cyan),var(--n9-magenta))}
.n9-track li{position:relative}
.n9-dial{display:block;width:56px;height:56px;border-radius:50%;margin-bottom:1.5rem;position:relative;background:conic-gradient(var(--n9-ink) calc(var(--paid)*1%),var(--n9-paper) 0);box-shadow:0 0 0 2px var(--n9-ink),0 0 0 8px var(--n9-paper),var(--n9-shadow-sm)}
.n9-dial::after{content:"";position:absolute;inset:14px;border-radius:50%;background:var(--n9-paper)}
.n9-track h3{font-family:var(--n9-display);font-weight:500;font-size:1.3rem;margin-bottom:.5rem;color:var(--n9-ink)}
.n9-track p{font-size:.97rem}
.n9-track small{display:inline-block;margin-top:.9rem;padding:.25rem .7rem;border-radius:999px;font-size:.8rem;font-weight:600;background:var(--n9-cyan-soft);color:var(--n9-ink)}
.n9-note{margin-top:2.4rem;font-size:.9rem!important;max-width:70ch}

/* ---------- 5. prices: ink band, full bleed ---------- */
.n9-prices{padding:5.5rem 0;background:var(--n9-band);color:var(--n9-band-ink)}
.n9-prices .wrap{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.3fr);gap:2rem 5rem}
.n9-prices .eyebrow{color:var(--n9-band-muted)}
.n9-prices h2{font-size:clamp(1.9rem,3vw,2.7rem);color:var(--n9-band-ink);max-width:14ch}
.n9-prices-head p{margin-top:1.2rem;color:var(--n9-band-muted);max-width:38ch}
.n9-price-list{margin:0;display:grid;grid-template-columns:1fr 1fr;gap:0 2.5rem;align-self:end}
.n9-price-list div{padding:1.3rem 0;border-top:1px solid var(--n9-band-hair)}
.n9-price-list dt{font-size:.92rem;color:var(--n9-band-muted);margin-bottom:.3rem}
.n9-price-list dd{margin:0;font-size:1.15rem;color:var(--n9-band-ink)}
.n9-price-list b{font-family:var(--n9-display);font-weight:400;font-size:clamp(1.8rem,2.6vw,2.4rem);letter-spacing:-.02em}
.n9-prices-foot{grid-column:1/-1;margin-top:.8rem;padding-top:1.6rem;border-top:1px solid var(--n9-band-hair);color:var(--n9-band-muted);font-size:.98rem;max-width:none}
.n9-prices-foot a{color:var(--n9-band-link);margin-left:.4rem}

/* ---------- 6. FAQ: hairline list ---------- */
.n9-faq{padding:6rem 0 4rem}
.n9-faq-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.4fr);gap:3rem 5rem;align-items:start}
.n9-faq .n9-head{position:sticky;top:2rem}
.n9-faq-list details{max-width:none;border-bottom:1px solid var(--n9-hair);padding:1.25rem 0}
.n9-faq-list details:first-child{border-top:1px solid var(--n9-hair)}
.n9-faq-list summary{list-style:none;display:flex;justify-content:space-between;gap:1.5rem;font-size:1.1rem;font-weight:600;color:var(--n9-ink)}
.n9-faq-list summary::-webkit-details-marker{display:none}
.n9-faq-list summary::after{content:"";flex:none;width:12px;height:12px;margin-top:.45rem;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);transition:transform .2s}
.n9-faq-list details[open] summary::after{transform:rotate(225deg)}
.n9-faq-list details p{margin-top:.8rem;max-width:62ch}

/* ---------- 7. final call ---------- */
.n9-final{padding:3rem 0 6rem}
.n9-final .wrap{text-align:center;padding:clamp(2.5rem,5vw,4.5rem) 1.5rem;border-radius:18px;background:radial-gradient(ellipse 60% 80% at 20% 0%,var(--n9-cyan-soft),transparent 70%),radial-gradient(ellipse 60% 80% at 85% 100%,var(--n9-magenta-soft),transparent 70%),var(--n9-raised);box-shadow:var(--n9-shadow)}
.n9-final h2{font-size:clamp(2rem,3.6vw,3.2rem);margin:0 auto}
.n9-final p{margin:1rem auto 0;color:var(--n9-muted);font-size:1.1rem}
.n9-final .actions{justify-content:center}
.n9-final .button{border-radius:999px;padding:.95rem 2rem}

/* ---------- responsive ---------- */
@media (max-width:900px){
  .home-hero{padding:1.5rem 0 2.5rem}
  .home-hero h1{font-size:clamp(2rem,8.4vw,2.6rem)}
  .n9-case{padding-bottom:4rem}
  .n9-case-grid,.n9-who-grid,.n9-faq-grid,.n9-prices .wrap{grid-template-columns:1fr}
  .n9-shots{padding:0 1.5rem 2.5rem 0}
  .n9-phone{width:34%}
  .n9-portrait{justify-self:start;max-width:330px;margin-right:1.4rem}
  .n9-who{padding:4rem 0}
  .n9-bento{grid-template-columns:1fr;grid-template-areas:"web" "ads" "local" "care"}
  .n9-care{grid-template-columns:1fr;gap:1.6rem;padding:2rem 1.5rem}
  .n9-tiers{grid-template-columns:1fr}
  .n9-tiers li{border-left:0;border-top:1px solid var(--n9-hair);padding:.9rem 0}
  .n9-ads{padding:2rem 1.5rem}
  .n9-local{grid-template-columns:60px 1fr;gap:1rem}
  .n9-pin{width:60px;height:60px}
  .n9-track{grid-template-columns:1fr;gap:0}
  .n9-track::before{top:28px;bottom:28px;left:27px;right:auto;width:2px;height:auto;background:linear-gradient(180deg,var(--n9-cyan),var(--n9-magenta))}
  .n9-track li{display:grid;grid-template-columns:56px 1fr;column-gap:1.3rem;padding-bottom:2.2rem}
  .n9-track .n9-dial{grid-row:1/4;margin:0}
  .n9-track small{justify-self:start}
  .n9-price-list{grid-template-columns:1fr}
  .n9-faq .n9-head{position:static}
  .n9-services,.n9-process,.n9-prices,.n9-faq{padding:4rem 0}
}
@media (prefers-reduced-motion:reduce){.n9-faq-list summary::after{transition:none}}
