/* =========================================================
   New Aeon — advanced-service detail pages
   (loaded after na.css)
   ========================================================= */

/* ---------- hero ---------- */
.sv-hero{position:relative;min-height:100svh;display:flex;flex-direction:column;justify-content:flex-end;padding:8rem 0 clamp(2.4rem,6vh,4rem);overflow:hidden;isolation:isolate}
.sv-hero-media{position:absolute;inset:0;z-index:-2;overflow:hidden}
.sv-hero-media img{position:absolute;inset:-6% 0;width:100%;height:112%;object-fit:cover;opacity:.55;filter:saturate(.9)}
.sv-hero::before{content:"";position:absolute;inset:0;z-index:-1;background:
  linear-gradient(180deg,rgba(8,7,11,.55) 0%,rgba(8,7,11,.25) 35%,rgba(8,7,11,.85) 78%,var(--ink) 100%),
  radial-gradient(80% 70% at 85% 15%,rgba(101,29,122,.55),transparent 70%),
  linear-gradient(90deg,rgba(8,7,11,.75),transparent 60%)}
.sv-hero .crumb{position:absolute;top:clamp(7rem,15vh,9.5rem);left:var(--pad);right:var(--pad);display:flex;justify-content:space-between;align-items:center;gap:1rem}
.sv-hero .crumb a{color:var(--muted);transition:color .3s}
.sv-hero .crumb a:hover{color:var(--gold)}
.sv-idx{position:absolute;right:var(--pad);top:50%;transform:translateY(-58%);font-family:var(--display);font-size:clamp(9rem,26vw,26rem);line-height:.8;letter-spacing:-.07em;color:transparent;-webkit-text-stroke:1px rgba(255,193,7,.35);pointer-events:none;z-index:-1}
.sv-hero h1{font-family:var(--display);font-weight:400;font-size:clamp(3rem,8.2vw,9rem);line-height:.92;letter-spacing:-.055em;max-width:14ch}
.sv-hero .hero-b{display:grid;grid-template-columns:1.2fr auto;gap:2rem;align-items:end;margin-top:clamp(1.8rem,4vh,3rem);padding-top:1.4rem;border-top:1px solid var(--line)}
.sv-hero .sub{font-family:var(--serif);font-style:italic;font-size:clamp(1.3rem,2.1vw,2rem);line-height:1.25;color:rgba(255,255,255,.9);max-width:36rem}
.jump{display:flex;flex-wrap:wrap;gap:.4rem;justify-content:flex-end;max-width:34rem}
.jump a{padding:.5rem .85rem;border:1px solid var(--line);border-radius:99px;font-family:var(--mono);font-size:.6rem;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.75);background:rgba(8,7,11,.35);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);transition:background .3s,color .3s,border-color .3s}
.jump a:hover{background:var(--gold);border-color:var(--gold);color:var(--ink)}
@media(max-width:860px){.sv-hero .hero-b{grid-template-columns:1fr}.jump{justify-content:flex-start}}

/* current-section indicator */
.sv-now{position:fixed;left:var(--pad);bottom:1.4rem;z-index:40;display:flex;align-items:center;gap:.7rem;padding:.55rem .95rem .55rem .6rem;border-radius:99px;background:rgba(9,9,11,.7);border:1px solid var(--line);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);font-family:var(--mono);font-size:.64rem;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.85);opacity:0;transform:translateY(20px);transition:opacity .5s,transform .6s var(--ease);pointer-events:none}
.sv-now.on{opacity:1;transform:none}
.sv-now i{width:1.7rem;height:1.7rem;border-radius:50%;display:grid;place-items:center;background:var(--gold);color:var(--ink);font-style:normal;font-size:.6rem}
@media(max-width:600px){.sv-now{display:none}}

/* ---------- overview ---------- */
.sv-ov{display:grid;grid-template-columns:.8fr 2fr;gap:clamp(2rem,6vw,7rem);align-items:start}
.sv-ov h2{font-family:var(--display);font-weight:400;font-size:clamp(2.2rem,4.6vw,4.6rem);line-height:.95;letter-spacing:-.05em;margin-top:1.2rem}
.sv-ov .statement{font-size:clamp(1.5rem,3vw,3rem);line-height:1.15}
.sv-ov .more{margin-top:2rem;font-size:clamp(1rem,1.3vw,1.25rem);line-height:1.7;color:rgba(255,255,255,.74);max-width:46rem}
.sv-feat{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:2.4rem}
.sv-feat span{display:inline-flex;align-items:center;gap:.7rem;padding:1rem 1.4rem;border-radius:99px;border:1px solid rgba(255,193,7,.4);font-size:clamp(1rem,1.5vw,1.35rem);letter-spacing:-.01em;background:rgba(255,193,7,.05)}
.sv-feat span::before{content:"";width:.5rem;height:.5rem;border-radius:50%;background:var(--gold)}
.sv-phil{position:relative;margin-top:clamp(4rem,9vw,8rem);padding:clamp(2rem,5vw,4.5rem);border-radius:1.6rem;overflow:hidden;background:linear-gradient(150deg,var(--p2),var(--purple) 55%,var(--p3));isolation:isolate}
.sv-phil::before{content:"\201C";position:absolute;right:2rem;top:-3.5rem;font-family:var(--serif);font-size:clamp(14rem,24vw,24rem);line-height:1;color:rgba(255,193,7,.2);z-index:-1}
.sv-phil p{font-family:var(--display);font-size:clamp(1.5rem,3vw,3rem);line-height:1.15;letter-spacing:-.03em;max-width:60rem}
@media(max-width:860px){.sv-ov{grid-template-columns:1fr}}

/* ---------- section scaffolding ---------- */
.sv-sec{position:relative;padding:clamp(5rem,10vw,9rem) 0;border-top:1px solid var(--line)}
.sv-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:2rem;margin-bottom:clamp(2.4rem,5vw,4rem)}
.sv-head h2,.sv-aside h2{font-family:var(--display);font-weight:400;font-size:clamp(2.3rem,5vw,5.2rem);line-height:.94;letter-spacing:-.05em}
.sv-head .lede{max-width:30rem}
.sv-no{display:flex;align-items:center;gap:.8rem;font-family:var(--mono);font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);margin-bottom:1.2rem}
.sv-no b{font-weight:500;color:#fff}
.sv-no::after{content:"";flex:0 0 3rem;height:1px;background:currentColor}

/* sticky aside + cards */
.sv-split{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.2fr);gap:clamp(2rem,6vw,7rem);align-items:start}
.sv-split.flip .sv-aside{order:2}
.sv-aside{position:sticky;top:7.5rem}
.sv-aside .intro{margin-top:1.4rem;font-size:clamp(1rem,1.25vw,1.2rem);line-height:1.65;color:rgba(255,255,255,.76);max-width:34rem}
.sv-media{position:relative;margin-top:2rem;border-radius:1.3rem;overflow:hidden;aspect-ratio:4/3;border:1px solid rgba(255,255,255,.12);background:var(--p3)}
.sv-media img{position:absolute;left:0;top:-10%;width:100%;height:120%;object-fit:cover}
.sv-media::after{content:"";position:absolute;inset:0;background:linear-gradient(200deg,rgba(101,29,122,.25),transparent 45%,rgba(8,7,11,.55))}
@media(max-width:960px){.sv-split{grid-template-columns:1fr}.sv-split.flip .sv-aside{order:0}.sv-aside{position:relative;top:0}}

.cards{display:grid;gap:1rem}
.cards.grid{grid-template-columns:1fr 1fr}
@media(max-width:640px){.cards.grid{grid-template-columns:1fr}}
.gc{position:relative;padding:clamp(1.3rem,2.2vw,2rem);border-radius:1.2rem;border:1px solid rgba(255,255,255,.12);background:linear-gradient(165deg,rgba(62,27,84,.5),rgba(13,7,18,.55));overflow:hidden;isolation:isolate;transition:border-color .5s,transform .7s var(--ease)}
.gc::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(22rem circle at var(--mx,90%) var(--my,0%),rgba(255,193,7,.16),transparent 60%);opacity:0;transition:opacity .5s}
.gc:hover{border-color:rgba(255,193,7,.5)}
.gc:hover::before{opacity:1}
.gc .n{display:flex;justify-content:space-between;align-items:center;font-family:var(--mono);font-size:.66rem;letter-spacing:.14em;color:var(--gold);margin-bottom:1rem}
.gc .n i{font-style:normal;color:rgba(255,255,255,.35)}
.gc h3{font-family:var(--display);font-weight:400;font-size:clamp(1.4rem,2.1vw,2rem);line-height:1.05;letter-spacing:-.035em}
.gc .sub{font-family:var(--serif);font-style:italic;color:var(--gold);font-size:clamp(1.02rem,1.3vw,1.22rem);line-height:1.3;margin-top:.5rem}
.gc ul{margin-top:1.2rem;display:grid;gap:.15rem}
.gc li{position:relative;padding:.55rem 0 .55rem 1.5rem;border-top:1px solid rgba(255,255,255,.07);color:rgba(255,255,255,.82);font-size:.96rem;line-height:1.45;transition:color .3s,padding .5s var(--ease)}
.gc li::before{content:"";position:absolute;left:0;top:1.15rem;width:.7rem;height:1px;background:var(--gold);transition:width .5s var(--ease)}
.gc li:hover{color:#fff;padding-left:1.9rem}
.gc li:hover::before{width:1.1rem}
.gc li b{color:var(--gold);font-weight:500}

/* ---------- phases (timeline) ---------- */
.sv-phase-media{position:relative;height:clamp(14rem,32vw,26rem);border-radius:1.4rem;overflow:hidden;margin-bottom:clamp(2.4rem,5vw,4rem);border:1px solid rgba(255,255,255,.12)}
.sv-phase-media img{position:absolute;left:0;top:-15%;width:100%;height:130%;object-fit:cover}
.sv-phase-media::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,7,11,.8),rgba(101,29,122,.25) 60%,rgba(8,7,11,.4))}
.sv-phase-media .cap{position:absolute;left:clamp(1.2rem,3vw,2.6rem);bottom:clamp(1.2rem,3vw,2.4rem);z-index:2;font-family:var(--display);font-size:clamp(1.6rem,3.4vw,3.2rem);letter-spacing:-.04em;line-height:1;max-width:20ch}
.tl{position:relative;display:grid;grid-template-columns:repeat(var(--cols,4),minmax(0,1fr));gap:1rem;padding-top:2.6rem}
.tl-line{position:absolute;left:0;right:0;top:.55rem;height:1px;background:rgba(255,255,255,.14)}
.tl-line i{position:absolute;inset:0;background:var(--gold);transform-origin:0 50%;transform:scaleX(0)}
.ph{position:relative;padding:1.4rem 1.3rem 1.5rem;border-radius:1.1rem;border:1px solid rgba(255,255,255,.12);background:rgba(13,7,18,.6);transition:border-color .4s,background .4s}
.ph:hover{border-color:rgba(255,193,7,.5);background:rgba(62,27,84,.45)}
.ph::before{content:"";position:absolute;left:1.3rem;top:-2.45rem;width:.9rem;height:.9rem;border-radius:50%;background:var(--ink);border:2px solid var(--gold);box-shadow:0 0 0 5px rgba(255,193,7,.12)}
.ph .when{font-family:var(--mono);font-size:.64rem;letter-spacing:.14em;text-transform:uppercase;color:var(--gold)}
.ph h3{font-family:var(--display);font-weight:400;font-size:clamp(1.3rem,1.8vw,1.7rem);letter-spacing:-.03em;line-height:1.05;margin:.7rem 0 1rem}
.ph li{position:relative;padding:.35rem 0 .35rem 1.1rem;font-size:.9rem;line-height:1.45;color:rgba(255,255,255,.78)}
.ph li::before{content:"";position:absolute;left:0;top:.95rem;width:.45rem;height:1px;background:var(--gold)}
.ph .big{position:absolute;right:.8rem;top:.2rem;font-family:var(--display);font-size:3.6rem;line-height:1;letter-spacing:-.05em;color:rgba(255,255,255,.06)}
@media(max-width:1100px){.tl{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:3.4rem}.tl-line{display:none}}
@media(max-width:600px){.tl{grid-template-columns:1fr;row-gap:1rem;padding-top:0}.ph::before{display:none}}

/* ---------- tabs explorer ---------- */
.tabs-wrap{display:grid;grid-template-columns:minmax(16rem,.75fr) minmax(0,2fr);gap:clamp(1.6rem,4vw,4rem);align-items:start}
.tab-list{position:sticky;top:7.5rem;display:grid;gap:.5rem}
.tab-list .sv-media{margin:0 0 1rem;aspect-ratio:16/10}
.tab{position:relative;display:grid;grid-template-columns:2.4rem 1fr;align-items:center;gap:.6rem;width:100%;text-align:left;padding:1rem 1.1rem;border-radius:1rem;border:1px solid rgba(255,255,255,.1);background:rgba(13,7,18,.5);color:rgba(255,255,255,.7);font-size:1.02rem;line-height:1.25;letter-spacing:-.01em;overflow:hidden;transition:color .3s,border-color .3s,background .3s}
.tab i{font-style:normal;font-family:var(--mono);font-size:.66rem;letter-spacing:.1em;color:rgba(255,255,255,.4);transition:color .3s}
.tab small{display:block;font-family:var(--mono);font-size:.58rem;letter-spacing:.12em;text-transform:uppercase;color:var(--gold);margin-bottom:.2rem}
.tab::after{content:"";position:absolute;left:0;bottom:0;height:2px;width:100%;background:var(--gold);transform:scaleX(0);transform-origin:0 50%;transition:transform .7s var(--ease)}
.tab:hover{color:#fff;border-color:rgba(255,255,255,.3)}
.tab[aria-selected="true"]{color:#fff;border-color:rgba(255,193,7,.55);background:linear-gradient(120deg,rgba(90,40,125,.65),rgba(42,18,56,.65))}
.tab[aria-selected="true"] i{color:var(--gold)}
.tab[aria-selected="true"]::after{transform:scaleX(1)}
.panel{min-height:20rem}
.panel[hidden]{display:none}
.panel .p-head{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;margin-bottom:1rem}
.panel .p-head h3{font-family:var(--display);font-weight:400;font-size:clamp(1.8rem,3.4vw,3.2rem);letter-spacing:-.045em;line-height:1}
.panel .p-head span{font-family:var(--mono);font-size:.7rem;letter-spacing:.14em;color:var(--gold);white-space:nowrap}
.panel .p-intro{font-size:clamp(1rem,1.3vw,1.22rem);line-height:1.65;color:rgba(255,255,255,.8);max-width:52rem;margin-bottom:1.8rem}
.panel .p-intro b{color:var(--gold);font-weight:500}
.panel .cards{grid-template-columns:repeat(auto-fit,minmax(15rem,1fr))}
.panel .stat-row{margin-bottom:1rem}
@media(max-width:960px){.tabs-wrap{grid-template-columns:1fr}.tab-list{position:relative;top:0;display:flex;gap:.5rem;overflow-x:auto;padding-bottom:.6rem;scrollbar-width:none}.tab-list::-webkit-scrollbar{display:none}.tab-list .sv-media{display:none}.tab{flex:0 0 auto;width:auto;max-width:17rem;grid-template-columns:auto 1fr}}

/* ---------- stats ---------- */
.stat-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(13rem,1fr));gap:1rem}
.st{position:relative;padding:1.5rem 1.4rem;border-radius:1.2rem;border:1px solid rgba(255,193,7,.28);background:linear-gradient(160deg,rgba(255,193,7,.08),rgba(13,7,18,.4));overflow:hidden}
.st b{display:block;font-family:var(--display);font-weight:400;font-size:clamp(2.6rem,4.6vw,4.4rem);letter-spacing:-.05em;line-height:.95;color:var(--gold)}
.st span{display:block;margin-top:.8rem;font-size:.95rem;line-height:1.45;color:rgba(255,255,255,.82)}
.st.text b{font-family:var(--serif);font-style:italic;font-size:clamp(1.7rem,2.6vw,2.5rem);color:#fff}
.stats-t{font-family:var(--mono);font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);margin:0 0 1rem}
.sv-stats-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.6fr);gap:clamp(1.6rem,4vw,4rem);align-items:stretch}
.sv-stats-grid .sv-media{margin:0;aspect-ratio:auto;min-height:20rem;height:100%}
@media(max-width:960px){.sv-stats-grid{grid-template-columns:1fr}.sv-stats-grid .sv-media{min-height:16rem}}

/* ---------- versus ---------- */
.vs-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.vs-blk{padding:clamp(1.3rem,2.4vw,2.2rem);border-radius:1.2rem;border:1px solid rgba(255,255,255,.12);background:rgba(13,7,18,.55)}
.vs-blk h3{font-family:var(--display);font-weight:400;font-size:clamp(1.5rem,2.4vw,2.3rem);letter-spacing:-.04em;margin-bottom:1rem}
.vs-row{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:.8rem;padding:.85rem 0;border-top:1px solid rgba(255,255,255,.08);transition:padding .5s var(--ease)}
.vs-row span{font-size:1rem;line-height:1.3}
.vs-row span:last-child{text-align:right;color:rgba(255,255,255,.7)}
.vs-row em{display:grid;place-items:center;width:2.2rem;height:2.2rem;border-radius:50%;background:var(--gold);color:var(--ink);font-family:var(--mono);font-style:normal;font-size:.62rem;letter-spacing:.06em;text-transform:uppercase;transition:transform .6s var(--ease)}
.vs-row:hover em{transform:rotate(180deg) scale(1.1)}
.vs-row:hover span:first-child{color:var(--gold)}
@media(max-width:760px){.vs-grid{grid-template-columns:1fr}}

/* ---------- next service ---------- */
.sv-next{position:relative;display:block;padding:clamp(4rem,9vw,8rem) 0;border-top:1px solid var(--line);overflow:hidden;isolation:isolate}
.sv-next .bg{position:absolute;inset:0;z-index:-1;opacity:0;transform:scale(1.12);transition:opacity .8s,transform 1.4s var(--ease)}
.sv-next .bg img{width:100%;height:100%;object-fit:cover;opacity:.45}
.sv-next .bg::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--ink),rgba(101,29,122,.55),var(--ink))}
.sv-next:hover .bg{opacity:1;transform:scale(1)}
.sv-next .row{display:flex;justify-content:space-between;align-items:flex-end;gap:2rem;flex-wrap:wrap}
.sv-next .t{font-family:var(--display);font-weight:400;font-size:clamp(2.6rem,8vw,8.4rem);letter-spacing:-.055em;line-height:.9;transition:transform .9s var(--ease)}
.sv-next:hover .t{transform:translateX(1.4rem)}
.sv-next .nw{white-space:nowrap}
.sv-next .go{display:inline-grid;vertical-align:middle;margin-left:.22em;position:relative;top:-.06em;width:clamp(3rem,6.4vw,6.2rem);aspect-ratio:1;border-radius:50%;background:var(--gold);color:var(--ink);place-items:center;transition:transform .8s var(--ease)}
.sv-next .go svg{width:36%}
.sv-next:hover .go{transform:rotate(45deg)}
.sv-others{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:2.4rem}
