
html,body{margin:0!important;padding:0!important;}
*{margin:0;padding:0;box-sizing:border-box;}

:root{
  --navy:#0E6B54;
  --navy-deep:#084A3B;
  --paper:#FBFAF6;
  --card:#FFFFFF;
  --gold:#F3B400;
  --gold-deep:#C98A00;
  --gold-soft:#FFE08A;
  --mint:#14B8A6;
  --ink:#123A2E;
  --ink-dim:#5B6E68;
  --line:#E7E4DB;
  --radius-lg:24px;
  --content-max:88rem;
  --side-gutter:42px;
}
body{background:var(--paper); color:var(--ink); font-family:'Inter',sans-serif; line-height:1.6; -webkit-font-smoothing:antialiased; overflow-x:hidden;}
h1,h2,h3,h4{font-family:'Inter',sans-serif; font-weight:400; letter-spacing:-0.03em; color:var(--ink);}
em,i,cite{font-style:normal;}
a{color:inherit; text-decoration:none;}
img{max-width:100%; display:block;}
button{font-family:inherit;}
.wrap{max-width:var(--content-max); margin:0 auto; padding:0 var(--side-gutter);}
@media(max-width:640px){.wrap{padding:0 22px;} :root{--side-gutter:22px;}}
.fw{width:100vw; position:relative; left:50%; margin-left:-50vw!important; z-index:0;}

.pill-btn{display:inline-flex!important; align-items:center!important; gap:12px!important; background:var(--navy); color:#fff!important; font-size:1rem; font-weight:500; padding:8px 8px 8px 28px!important; border-radius:100px!important; transition:background .3s cubic-bezier(.4,0,.2,1), transform .3s cubic-bezier(.4,0,.2,1), box-shadow .3s cubic-bezier(.4,0,.2,1);}
.pill-btn:hover{background:var(--navy-deep); transform:translateY(-2px); box-shadow:0 12px 28px -10px rgba(0,0,0,.45);}
.pill-btn .arrow-c{background:#fff; border-radius:100px; padding:9px; display:flex; align-items:center; justify-content:center; flex-shrink:0; transition:transform .3s cubic-bezier(.4,0,.2,1);}
.pill-btn:hover .arrow-c{transform:rotate(45deg);}
.pill-btn .arrow-c i{color:var(--navy); font-size:1.05rem;}
.pill-btn.gold{background:var(--gold); color:#171a2e!important;}
.pill-btn.gold:hover{background:#FFC61A;}
.line-btn{display:inline-flex; align-items:center; gap:10px; padding:14px 24px; border-radius:100px; border:1.5px solid var(--line); background:var(--card); color:var(--ink)!important; font-weight:600; font-size:.95rem; transition:border-color .25s ease, background .25s ease, color .25s ease;}
.line-btn:hover{border-color:var(--navy); background:var(--navy); color:#fff!important;}
.ghost-w{display:inline-flex; align-items:center; gap:10px; padding:14px 26px; border-radius:100px; border:1px solid rgba(255,255,255,.3); color:#fff!important; font-weight:500; font-size:1rem; transition:background .3s ease, color .3s ease, border-color .3s ease;}
.ghost-w:hover{background:#fff; color:var(--navy-deep)!important; border-color:#fff;}

.kicker{display:inline-flex; align-items:center; gap:10px; font-size:.76rem; font-weight:700; letter-spacing:.12em; text-transform:uppercase; color:var(--gold-deep); margin-bottom:16px;}
.kicker b{display:inline-grid; place-items:center; min-width:30px; height:22px; padding:0 8px; border-radius:6px; background:var(--ink); color:var(--gold); font-size:.7rem; letter-spacing:.04em;}

@keyframes fade-up{from{opacity:0; transform:translateY(24px);} to{opacity:1; transform:translateY(0);}}
.animate-fade-up{opacity:0; animation:fade-up .8s cubic-bezier(0.16,1,0.3,1) forwards;}
@keyframes in-float{0%,100%{transform:translateY(0);} 50%{transform:translateY(-10px);}}
@keyframes in-spin{to{transform:rotate(360deg);}}
@keyframes in-pulse{0%{box-shadow:0 0 0 0 rgba(20,184,166,.55);} 100%{box-shadow:0 0 0 10px rgba(20,184,166,0);}}

/* ===== HERO (arch window) ===== */
.ih-sec{background:var(--paper); overflow:hidden; padding-top:56px;
  background-image:radial-gradient(38% 55% at 82% 55%, rgba(20,184,166,.12) 0%, rgba(20,184,166,0) 70%), radial-gradient(30% 40% at 8% 10%, rgba(243,180,0,.13) 0%, rgba(243,180,0,0) 70%);}
.ih-sec::before{content:""; position:absolute; inset:0; pointer-events:none; background-image:radial-gradient(rgba(18,58,46,.09) 1.2px, transparent 1.3px); background-size:26px 26px;
  -webkit-mask-image:radial-gradient(55% 60% at 30% 40%, #000 0%, transparent 85%); mask-image:radial-gradient(55% 60% at 30% 40%, #000 0%, transparent 85%);}
.ih-grid{position:relative; display:grid; grid-template-columns:1.08fr .92fr; gap:30px; align-items:end;}
.ih-text{position:relative; z-index:2; align-self:center; padding:10px 0 40px;}
.ih-tag{display:inline-flex; align-items:center; gap:10px; padding:6px 16px 6px 6px; border-radius:100px; background:var(--card); border:1px solid var(--line); font-size:.82rem; font-weight:600; color:var(--ink); margin-bottom:20px; box-shadow:0 10px 24px -18px rgba(8,74,59,.5);}
.ih-tag span{display:inline-grid; place-items:center; width:28px; height:28px; border-radius:50%; background:var(--navy); color:var(--gold); font-size:.9rem;}
.ih-title{font-size:clamp(2.3rem, 4.3vw, 4.5rem); font-weight:400; line-height:1.08; letter-spacing:-0.04em; margin-bottom:20px;}
.ih-title span{display:block; white-space:nowrap;}
.ih-title em{color:var(--navy); position:relative;}
.ih-title em::after{content:""; position:absolute; left:0; right:0; bottom:.04em; height:.14em; background:var(--gold-soft); z-index:-1; border-radius:4px;}
.ih-lead{color:var(--ink-dim); font-size:clamp(1rem, 1.15vw, 1.1rem); line-height:1.7; font-weight:500; max-width:560px; margin-bottom:28px;}
.ih-actions{display:flex; flex-wrap:wrap; gap:12px; margin-bottom:26px;}

.ih-pick{max-width:620px; padding:14px 14px 14px; border-radius:22px; background:var(--card); border:1px solid var(--line); box-shadow:0 24px 50px -36px rgba(8,74,59,.55);}
.ih-pick-h{display:flex; align-items:center; justify-content:space-between; gap:10px; margin:2px 4px 12px; font-size:.78rem; font-weight:700; letter-spacing:.1em; text-transform:uppercase; color:var(--ink-dim);}
.ih-pick-h span{display:inline-flex; align-items:center; gap:6px; color:var(--gold-deep);}
.ih-pick-g{display:grid; grid-template-columns:repeat(6, 1fr); gap:8px;}
.ih-pick button{display:flex; flex-direction:column; align-items:center; gap:8px; padding:12px 4px 11px; border-radius:14px; border:1px solid var(--line); background:var(--paper); color:var(--ink); font-size:.8rem; font-weight:600; line-height:1.2; text-align:center; white-space:nowrap; cursor:pointer; transition:background .3s ease, border-color .3s ease, color .3s ease, transform .3s cubic-bezier(.16,1,.3,1);}
.ih-pick button i{width:36px; height:36px; border-radius:11px; display:grid; place-items:center; flex-shrink:0; background:rgba(14,107,84,.09); color:var(--navy); font-size:1rem; transition:background .3s ease, color .3s ease;}
.ih-pick button:hover{background:var(--navy); border-color:var(--navy); color:#fff; transform:translateY(-2px);}
.ih-pick button:hover i{background:var(--gold); color:#171a2e;}
.ih-pick button:focus-visible{outline:2px solid var(--gold); outline-offset:2px;}

.ih-art{position:relative; z-index:1; justify-self:center; width:100%; max-width:560px; height:560px;}
.ih-arch{position:absolute; left:50%; bottom:0; width:410px; height:470px; margin-left:-205px; border-radius:205px 205px 0 0; overflow:hidden;
  background:radial-gradient(60% 45% at 50% 30%, rgba(243,180,0,.35) 0%, rgba(243,180,0,0) 70%), linear-gradient(170deg, #0F7259 0%, var(--navy-deep) 55%, #05302A 100%);}
.ih-arch::before{content:""; position:absolute; inset:0; background-image:linear-gradient(rgba(255,255,255,.06) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.06) 1px, transparent 1px); background-size:34px 34px;}
.ih-arch-line{position:absolute; left:50%; bottom:0; width:474px; height:526px; margin-left:-237px; border-radius:237px 237px 0 0; border:1.5px dashed rgba(14,107,84,.28); border-bottom:0; pointer-events:none;}
.ih-arch-dot{position:absolute; left:50%; top:-7px; width:14px; height:14px; margin-left:-7px; border-radius:50%; background:var(--gold); box-shadow:0 0 0 6px rgba(243,180,0,.22);}
.ih-art img{position:absolute; left:50%; bottom:0; transform:translateX(-50%); height:528px; width:auto; max-width:none; filter:drop-shadow(0 26px 40px rgba(8,74,59,.3));}
.ih-chip{position:absolute; z-index:3; display:flex; align-items:center; gap:10px; padding:9px 18px 9px 9px; border-radius:16px; background:rgba(255,255,255,.97); color:var(--ink); border:1px solid var(--line); box-shadow:0 24px 44px -22px rgba(8,74,59,.55); animation:in-float 7s ease-in-out infinite; white-space:nowrap;}
.ih-chip > span{position:relative; width:38px; height:38px; border-radius:11px; display:grid; place-items:center; background:var(--navy); color:var(--gold); font-size:1.1rem; flex-shrink:0;}
.ih-chip b{display:block; font-size:.9rem; font-weight:700; line-height:1.2;}
.ih-chip small{display:flex; align-items:center; gap:6px; font-size:.72rem; font-weight:600; color:var(--ink-dim);}
.ih-chip small::before{content:""; width:7px; height:7px; border-radius:50%; background:var(--mint); animation:in-pulse 1.8s ease-out infinite;}
.ih-chip.c1{left:0; top:24%;}
.ih-chip.c2{right:-2%; top:52%; animation-delay:-2.5s;}
.ih-chip.c2 > span{background:var(--gold); color:#171a2e;}
.ih-chip.c3{left:2%; bottom:9%; animation-delay:-4.8s;}

.ih-strip{position:relative; z-index:2; background:var(--card); border-top:1px solid var(--line);}
.ih-strip-in{display:flex; flex-wrap:wrap; justify-content:space-between; gap:12px 28px; padding-top:20px; padding-bottom:20px;}
.ih-strip span{display:inline-flex; align-items:center; gap:10px; font-size:.92rem; font-weight:600; color:var(--ink);}
.ih-strip i{width:30px; height:30px; border-radius:9px; display:grid; place-items:center; background:rgba(243,180,0,.18); color:var(--gold-deep); font-size:1rem;}

@media(max-width:1180px){ .ih-chip.c2{right:0;} .ih-pick-g{grid-template-columns:repeat(3, 1fr);} }
@media(max-width:960px){
  .ih-grid{grid-template-columns:1fr; gap:0;}
  .ih-text{padding-bottom:30px;}
  .ih-art{height:500px;}
}
@media(max-width:560px){
  .ih-sec{padding-top:64px;}
  .ih-title span{white-space:normal;}
  .ih-actions a{flex:1 1 auto; justify-content:center;}
  .ih-pick{padding:12px;}
  .ih-pick-h span{display:none;}
  .ih-pick button{font-size:.78rem; padding:10px 2px 9px; gap:6px;}
  .ih-art{height:410px;}
  .ih-arch{width:300px; height:350px; margin-left:-150px; border-radius:150px 150px 0 0;}
  .ih-arch-line{width:346px; height:392px; margin-left:-173px; border-radius:173px 173px 0 0;}
  .ih-art img{height:390px;}
  .ih-chip{padding:6px 12px 6px 6px;}
  .ih-chip > span{width:30px; height:30px; font-size:.9rem;}
  .ih-chip b{font-size:.8rem;}
  .ih-chip small{display:none;}
  .ih-chip.c1{top:18%;}
  .ih-chip.c3{bottom:6%;}
  .ih-strip-in{display:grid; grid-template-columns:1fr 1fr; gap:12px;}
  .ih-strip span{font-size:.82rem; gap:8px;}
}
@media (prefers-reduced-motion: reduce){ .ih-chip, .ih-chip small::before{animation:none;} }

/* ===== COVER EXPLORER (selector + single detail panel) ===== */
.ex-sec{background:var(--card); padding:96px 0 100px;}
.ex-head{display:grid; grid-template-columns:1fr 1fr; gap:48px; align-items:end; margin-bottom:34px;}
.ex-head h2{font-size:clamp(2rem, 3.8vw, 3.1rem); line-height:1.1;}
.ex-head h2 em{color:var(--navy);}
.ex-head p{color:var(--ink-dim); font-size:1rem; line-height:1.7; font-weight:500; max-width:500px; justify-self:end;}
.ex-tabs{display:grid; grid-template-columns:repeat(6, minmax(0, 1fr)); grid-auto-rows:1fr; align-items:stretch; gap:10px; margin-bottom:16px; scroll-margin-top:24px;}
.ex-tab{position:relative; display:flex; align-items:center; gap:12px; height:100%; min-height:76px; margin:0; padding:12px 14px; border-radius:18px; border:1px solid var(--line); background:var(--paper); color:var(--ink); text-align:left; cursor:pointer; transform:none; transition:background .35s ease, border-color .35s ease, color .35s ease, box-shadow .35s ease;}
.ex-tab > span{min-width:0;}
.ex-tab > i{width:42px; height:42px; border-radius:13px; display:grid; place-items:center; flex-shrink:0; background:rgba(14,107,84,.09); color:var(--navy); font-size:1.25rem; transition:background .35s ease, color .35s ease;}
.ex-tab b{display:block; font-size:.95rem; font-weight:600; letter-spacing:-0.01em; line-height:1.2; white-space:nowrap;}
.ex-tab small{display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; overflow:hidden; height:calc(.74rem * 1.3 * 2); font-size:.74rem; font-weight:500; color:var(--ink-dim); line-height:1.3; margin-top:2px; transition:color .35s ease;}
.ex-tab::after{content:""; position:absolute; left:50%; bottom:-9px; width:16px; height:16px; margin-left:-8px; background:#0D6A53; transform:rotate(45deg) scale(0); border-radius:3px; transition:transform .35s cubic-bezier(.34,1.56,.64,1);}
.ex-tab:hover{border-color:rgba(243,180,0,.8); background:#fff; box-shadow:0 14px 30px -24px rgba(8,74,59,.6);}
.ex-tab.on{background:#0D6A53; border-color:#0D6A53; color:#fff; box-shadow:0 18px 34px -22px rgba(8,74,59,.8);}
.ex-tab.on > i{background:var(--gold); color:#171a2e;}
.ex-tab.on small{color:rgba(255,255,255,.7);}
.ex-tab.on::after{transform:rotate(45deg) scale(1);}
.ex-tab:focus-visible{outline:2px solid var(--gold); outline-offset:2px;}

.ex-panel{position:relative; overflow:hidden; border-radius:30px; color:#fff; padding:34px 38px;
  background:radial-gradient(40% 70% at 100% 0%, rgba(243,180,0,.18) 0%, rgba(243,180,0,0) 65%), linear-gradient(160deg, #0D6A53 0%, var(--navy-deep) 50%, #05302A 100%);}
.ex-panel::before{content:""; position:absolute; left:-80px; bottom:-120px; width:280px; height:280px; border-radius:50%; border:1.5px dashed rgba(255,255,255,.12); pointer-events:none;}
.ex-in{position:relative; display:grid; grid-template-columns:minmax(0, .95fr) minmax(0, 2.05fr); gap:34px; transition:opacity .22s ease, transform .22s ease;}
.ex-in.out{opacity:0; transform:translateY(10px);}
.ex-info{display:flex; flex-direction:column;}
.ex-top{display:flex; align-items:center; justify-content:space-between; margin-bottom:18px;}
.ex-ico{width:58px; height:58px; border-radius:17px; display:grid; place-items:center; background:var(--gold); color:#171a2e; font-size:1.6rem;}
.ex-num{font-size:2.8rem; font-weight:400; letter-spacing:-0.05em; line-height:1; color:transparent; -webkit-text-stroke:1.2px rgba(255,255,255,.3);}
.ex-info h3{color:#fff; font-size:clamp(1.6rem, 2.2vw, 2rem); font-weight:400; line-height:1.1; letter-spacing:-0.03em; margin-bottom:6px;}
.ex-tagline{color:var(--gold-soft); font-size:.92rem; font-weight:600; margin-bottom:12px;}
.ex-desc{color:rgba(255,255,255,.76); font-size:.92rem; line-height:1.65; font-weight:500; margin-bottom:18px;}
.ex-who{display:flex; gap:12px; align-items:flex-start; padding:14px 16px; border-radius:16px; background:rgba(243,180,0,.12); border:1px solid rgba(243,180,0,.3); margin-bottom:20px;}
.ex-who i{color:var(--gold); font-size:1.2rem; flex-shrink:0; margin-top:1px;}
.ex-who b{display:block; color:var(--gold-soft); font-size:.7rem; font-weight:700; letter-spacing:.1em; text-transform:uppercase; margin-bottom:2px;}
.ex-who p{color:rgba(255,255,255,.86); font-size:.84rem; line-height:1.5; font-weight:500;}
.ex-info .pill-btn{align-self:flex-start; margin-top:auto;}

.ex-detail{display:flex; flex-direction:column; gap:12px; min-width:0;}
.ex-cols{display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); gap:12px; flex:1;}
.ex-box{padding:18px 18px 16px; border-radius:20px; background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.12);}
.ex-box h4{display:flex; align-items:center; gap:8px; color:#fff; font-size:.74rem; font-weight:700; letter-spacing:.1em; text-transform:uppercase; margin-bottom:12px;}
.ex-box h4 i{color:var(--gold); font-size:1rem;}
.ex-list{list-style:none; display:grid; gap:8px;}
.ex-list li{display:flex; gap:9px; align-items:flex-start; color:rgba(255,255,255,.86); font-size:.86rem; line-height:1.45; font-weight:500;}
.ex-list li i{color:var(--mint); font-size:.95rem; margin-top:2px; flex-shrink:0;}
.ex-docs li i{color:var(--gold-soft);}
.ex-tags{display:flex; flex-wrap:wrap; gap:7px;}
.ex-tags span{padding:6px 11px; border-radius:100px; background:rgba(255,255,255,.1); border:1px solid rgba(255,255,255,.14); color:#fff; font-size:.78rem; font-weight:600; line-height:1.3;}
.ex-claim{display:grid; grid-template-columns:auto repeat(3, minmax(0, 1fr)); gap:14px; align-items:center; padding:14px 18px; border-radius:18px; background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.12);}
.ex-claim > b{color:#fff; font-size:.72rem; font-weight:700; letter-spacing:.1em; text-transform:uppercase; line-height:1.3;}
.ex-claim span{display:flex; gap:8px; align-items:flex-start; color:rgba(255,255,255,.8); font-size:.8rem; line-height:1.4; font-weight:500;}
.ex-claim span b{display:grid; place-items:center; width:20px; height:20px; border-radius:50%; background:var(--mint); color:#04291F; font-size:.68rem; font-weight:800; flex-shrink:0;}

@media(max-width:1240px){
  .ex-tab{padding:10px 12px; gap:10px;}
  .ex-tab > i{width:38px; height:38px; font-size:1.1rem;}
  .ex-tab b{font-size:.9rem;}
  .ex-in{grid-template-columns:1fr; gap:22px;}
  .ex-info .pill-btn{margin-top:0;}
  .ex-info{display:grid; grid-template-columns:1fr 1fr; column-gap:28px; align-items:start;}
  .ex-info > .ex-top, .ex-info > h3, .ex-info > .ex-tagline, .ex-info > .ex-desc{grid-column:1;}
  .ex-info > .ex-who{grid-column:2; grid-row:1 / span 3; align-self:start; margin-top:4px;}
  .ex-info > .pill-btn{grid-column:2; grid-row:4; align-self:end; justify-self:start;}
}
@media(max-width:1100px){ .ex-tabs{grid-template-columns:repeat(3, minmax(0, 1fr));} .ex-tab::after{display:none;} }
@media(max-width:900px){
  .ex-sec{padding:76px 0 80px;}
  .ex-head{grid-template-columns:1fr; gap:12px; margin-bottom:26px;}
  .ex-head p{justify-self:start;}
  .ex-tabs{display:flex; gap:8px; overflow-x:auto; scrollbar-width:none; margin:0 calc(var(--side-gutter) * -1) 14px; padding:2px var(--side-gutter) 12px; -webkit-mask-image:linear-gradient(90deg, transparent 0, #000 16px, #000 calc(100% - 28px), transparent); mask-image:linear-gradient(90deg, transparent 0, #000 16px, #000 calc(100% - 28px), transparent);}
  .ex-tabs::-webkit-scrollbar{display:none;}
  .ex-tab{flex:0 0 156px; height:auto; min-height:0; padding:7px 14px 7px 7px; border-radius:100px; gap:9px;}
  .ex-tab small{display:none;}
  .ex-tab > i{width:32px; height:32px; border-radius:50%; font-size:1rem;}
  .ex-tab b{font-size:.86rem;}
  .ex-tab::after{display:none;}
  .ex-panel{padding:24px 22px; border-radius:24px;}
  .ex-info{display:flex;}
  .ex-cols{grid-template-columns:1fr 1fr;}
  .ex-cols .ex-box:first-child{grid-column:1 / -1;}
  .ex-claim{grid-template-columns:1fr 1fr 1fr;}
  .ex-claim > b{grid-column:1 / -1;}
  .ex-in{gap:0;}
  .ex-info{display:contents;}
  .ex-info > *{order:0; grid-column:1 / -1!important; grid-row:auto!important;}
  .ex-detail{order:1; margin-bottom:16px;}
  .ex-info > .pill-btn{order:2; margin-top:0; justify-self:start;}
}
@media(max-width:600px){
  .ex-panel{padding:20px 16px;}
  .ex-top{margin-bottom:14px;}
  .ex-ico{width:48px; height:48px; font-size:1.35rem; border-radius:14px;}
  .ex-num{font-size:2.1rem;}
  .ex-desc{display:none;}
  .ex-tagline{margin-bottom:14px;}
  .ex-list{gap:6px;}
  .ex-list li{font-size:.84rem;}
  .ex-who{margin-bottom:16px; padding:12px 14px;}
  .ex-cols{grid-template-columns:1fr; gap:10px;}
  .ex-box{padding:15px 15px 13px; border-radius:16px;}
  .ex-claim{grid-template-columns:1fr; gap:8px; padding:14px 15px;}
  .ex-info .pill-btn{justify-self:stretch; justify-content:space-between;}
}

/* ===== NEEDS FINDER ===== */
.nf-sec{background:var(--paper); border-top:1px solid var(--line); padding:110px 0;}
.nf-grid{display:grid; grid-template-columns:1fr 1fr; gap:56px; align-items:start;}
.nf-left h2{font-size:clamp(2rem, 3.8vw, 3.1rem); line-height:1.1; margin-bottom:14px;}
.nf-left h2 em{color:var(--navy);}
.nf-left > p{color:var(--ink-dim); font-size:1rem; line-height:1.7; font-weight:500; max-width:520px; margin-bottom:30px;}
.nf-opts{display:grid; grid-template-columns:1fr 1fr; gap:10px;}
.nf-opt{position:relative; display:flex; align-items:center; gap:12px; padding:14px 44px 14px 14px; border-radius:18px; border:1.5px solid var(--line); background:var(--card); color:var(--ink); font-size:.9rem; font-weight:600; line-height:1.35; text-align:left; cursor:pointer; transition:border-color .3s ease, background .3s ease, box-shadow .3s ease, transform .3s cubic-bezier(.16,1,.3,1);}
.nf-opt > i:first-child{width:38px; height:38px; border-radius:12px; display:grid; place-items:center; flex-shrink:0; background:rgba(14,107,84,.08); color:var(--navy); font-size:1.15rem; transition:background .3s ease, color .3s ease;}
.nf-opt::after{content:""; position:absolute; right:14px; top:50%; width:20px; height:20px; margin-top:-10px; border-radius:6px; border:1.5px solid var(--line); background:#fff; transition:background .25s ease, border-color .25s ease;}
.nf-opt .nf-tick{position:absolute; right:17px; top:50%; margin-top:-7px; font-size:.85rem; color:#171a2e; opacity:0; transform:scale(.4); transition:opacity .25s ease, transform .3s cubic-bezier(.34,1.56,.64,1); z-index:1;}
.nf-opt:hover{border-color:rgba(14,107,84,.4); transform:translateY(-2px);}
.nf-opt[aria-pressed="true"]{border-color:var(--navy); box-shadow:0 18px 36px -28px rgba(8,74,59,.7);}
.nf-opt[aria-pressed="true"] > i:first-child{background:var(--navy); color:var(--gold);}
.nf-opt[aria-pressed="true"]::after{background:var(--gold); border-color:var(--gold);}
.nf-opt[aria-pressed="true"] .nf-tick{opacity:1; transform:scale(1);}
.nf-opt:focus-visible{outline:2px solid var(--gold); outline-offset:2px;}

.nf-out{position:sticky; top:30px; padding:30px; border-radius:30px; background:var(--card); border:1px solid var(--line); box-shadow:0 40px 70px -50px rgba(8,74,59,.55);}
.nf-out-h{display:flex; align-items:center; justify-content:space-between; gap:14px; padding-bottom:18px; margin-bottom:18px; border-bottom:1px dashed var(--line);}
.nf-out-h h3{font-size:1.4rem; font-weight:500; letter-spacing:-0.02em;}
.nf-out-h span{display:inline-flex; align-items:center; gap:6px; padding:6px 12px; border-radius:100px; background:rgba(20,184,166,.12); color:#0F7259; font-size:.78rem; font-weight:700; white-space:nowrap;}
.nf-list{display:grid; gap:10px; min-height:120px;}
.nf-rec{display:grid; grid-template-columns:auto 1fr auto; gap:14px; align-items:center; padding:14px 14px 14px 14px; border-radius:18px; background:var(--paper); border:1px solid var(--line); animation:fade-up .5s cubic-bezier(.16,1,.3,1) both;}
.nf-rec > i{width:44px; height:44px; border-radius:13px; display:grid; place-items:center; background:var(--navy); color:var(--gold); font-size:1.25rem;}
.nf-rec h4{display:flex; flex-wrap:wrap; align-items:center; gap:8px; font-size:1rem; font-weight:600; letter-spacing:-0.01em; margin-bottom:2px;}
.nf-rec h4 small{padding:2px 9px; border-radius:100px; font-size:.66rem; font-weight:700; letter-spacing:.06em; text-transform:uppercase; background:var(--gold-soft); color:#171a2e;}
.nf-rec h4 small.m{background:rgba(14,107,84,.1); color:var(--navy);}
.nf-rec p{color:var(--ink-dim); font-size:.84rem; line-height:1.5; font-weight:500;}
.nf-go{width:40px; height:40px; border-radius:50%; display:grid; place-items:center; border:1.5px solid var(--line); background:#fff; color:var(--navy); font-size:.95rem; cursor:pointer; transition:background .25s ease, color .25s ease, border-color .25s ease, transform .3s ease;}
.nf-go:hover{background:var(--navy); color:#fff; border-color:var(--navy); transform:rotate(-45deg);}
.nf-empty{display:grid; place-items:center; text-align:center; gap:8px; padding:30px 20px; border-radius:18px; border:1.5px dashed var(--line); color:var(--ink-dim); font-size:.92rem; font-weight:500;}
.nf-empty i{font-size:1.8rem; color:var(--gold-deep);}
.nf-out-f{display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:14px; margin-top:22px; padding-top:20px; border-top:1px dashed var(--line);}
.nf-out-f p{color:var(--ink-dim); font-size:.84rem; font-weight:500; max-width:260px; line-height:1.5;}
@media(max-width:960px){ .nf-sec{padding:80px 0;} .nf-grid{grid-template-columns:1fr; gap:34px;} .nf-out{position:relative; top:auto;} }
@media(max-width:560px){
  .nf-opts{grid-template-columns:1fr;}
  .nf-out{padding:20px 16px; border-radius:24px;}
  .nf-out-h h3{font-size:1.2rem;}
  .nf-rec{gap:12px; padding:12px;}
  .nf-rec > i{width:38px; height:38px; font-size:1.1rem;}
  .nf-out-f .pill-btn{width:100%; justify-content:space-between;}
}

/* ===== CLAIMS ===== */
.cl-sec{position:relative; overflow:hidden; padding:110px 0; color:#fff;
  background:radial-gradient(40% 60% at 90% 20%, rgba(243,180,0,.16) 0%, rgba(243,180,0,0) 70%), radial-gradient(35% 50% at 0% 100%, rgba(20,184,166,.18) 0%, rgba(20,184,166,0) 70%), linear-gradient(160deg, #0B5A47 0%, var(--navy-deep) 50%, #04291F 100%);}
.cl-sec::before{content:""; position:absolute; inset:0; pointer-events:none; background-image:linear-gradient(rgba(255,255,255,.04) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.04) 1px, transparent 1px); background-size:56px 56px;
  -webkit-mask-image:radial-gradient(50% 60% at 20% 30%, #000 0%, transparent 85%); mask-image:radial-gradient(50% 60% at 20% 30%, #000 0%, transparent 85%);}
.cl-grid{position:relative; display:grid; grid-template-columns:1.1fr .9fr; gap:64px; align-items:center;}
.cl-sec .kicker{color:var(--gold-soft);}
.cl-sec .kicker b{background:var(--gold); color:#171a2e;}
.cl-left h2{color:#fff; font-size:clamp(2rem, 3.8vw, 3.1rem); line-height:1.1; margin-bottom:14px;}
.cl-left h2 em{color:var(--gold-soft);}
.cl-left > p{color:rgba(255,255,255,.74); font-size:1rem; line-height:1.7; font-weight:500; max-width:560px; margin-bottom:28px;}
.cl-modes{display:inline-flex; flex-wrap:wrap; gap:4px; padding:5px; border-radius:100px; background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.14); margin-bottom:26px;}
.cl-modes button{padding:10px 18px; border-radius:100px; border:0; background:none; color:rgba(255,255,255,.75); font-size:.88rem; font-weight:600; cursor:pointer; transition:background .3s ease, color .3s ease;}
.cl-modes button:hover{color:#fff;}
.cl-modes button.on{background:var(--gold); color:#171a2e;}
.cl-modes button:focus-visible{outline:2px solid var(--gold-soft); outline-offset:2px;}
.cl-steps{list-style:none; display:grid; gap:10px;}
.cl-step{display:grid; grid-template-columns:44px 1fr; gap:16px; padding:16px 18px; border-radius:18px; border:1px solid rgba(255,255,255,.1); background:rgba(255,255,255,.04); cursor:pointer; transition:background .35s ease, border-color .35s ease;}
.cl-step b{width:44px; height:44px; border-radius:50%; display:grid; place-items:center; border:1.5px solid rgba(255,255,255,.25); color:#fff; font-size:.95rem; font-weight:700; transition:background .35s ease, color .35s ease, border-color .35s ease;}
.cl-step h4{color:#fff; font-size:1.02rem; font-weight:600; letter-spacing:-0.01em; margin-bottom:3px;}
.cl-step p{color:rgba(255,255,255,.7); font-size:.87rem; line-height:1.6; font-weight:500;}
.cl-step:hover{border-color:rgba(255,255,255,.22);}
.cl-step.on{background:rgba(255,255,255,.1); border-color:rgba(243,180,0,.55);}
.cl-step.on b{background:var(--gold); border-color:var(--gold); color:#171a2e;}

.cl-card{position:relative; max-width:440px; justify-self:center; width:100%; padding:26px; border-radius:30px; background:var(--card); color:var(--ink); box-shadow:0 50px 90px -40px rgba(0,0,0,.6);}
.cl-card::before{content:""; position:absolute; inset:-14px; border-radius:40px; border:1.5px dashed rgba(255,255,255,.18); pointer-events:none;}
.cl-card-h{display:flex; align-items:center; gap:12px; margin-bottom:20px;}
.cl-card-h > i{width:46px; height:46px; border-radius:14px; display:grid; place-items:center; background:var(--navy); color:var(--gold); font-size:1.3rem;}
.cl-card-h b{display:block; font-size:1.02rem; font-weight:700; line-height:1.2;}
.cl-card-h small{display:block; color:var(--ink-dim); font-size:.8rem; font-weight:600;}
.cl-badge{margin-left:auto; display:inline-flex; align-items:center; gap:6px; padding:6px 11px; border-radius:100px; background:rgba(20,184,166,.12); color:#0F7259; font-size:.74rem; font-weight:700; white-space:nowrap;}
.cl-badge::before{content:""; width:7px; height:7px; border-radius:50%; background:var(--mint); animation:in-pulse 1.8s ease-out infinite;}
.cl-meter{height:8px; border-radius:8px; background:var(--line); overflow:hidden; margin-bottom:8px;}
.cl-meter span{display:block; height:100%; width:25%; border-radius:8px; background:linear-gradient(90deg, var(--navy), var(--mint)); transition:width .7s cubic-bezier(.16,1,.3,1);}
.cl-meter-l{display:flex; justify-content:space-between; color:var(--ink-dim); font-size:.78rem; font-weight:600; margin-bottom:20px;}
.cl-track{list-style:none; position:relative; display:grid; gap:4px; margin-bottom:20px;}
.cl-track li{position:relative; display:flex; align-items:center; gap:14px; padding:10px 12px; border-radius:14px; font-size:.9rem; font-weight:600; color:var(--ink-dim); transition:background .35s ease, color .35s ease;}
.cl-track li::before{content:""; position:absolute; left:27px; top:38px; width:2px; height:calc(100% - 28px); background:var(--line);}
.cl-track li:last-child::before{display:none;}
.cl-track li i{position:relative; z-index:1; width:32px; height:32px; border-radius:50%; display:grid; place-items:center; flex-shrink:0; background:var(--paper); border:1.5px solid var(--line); color:var(--ink-dim); font-size:.9rem; transition:background .35s ease, color .35s ease, border-color .35s ease;}
.cl-track li small{margin-left:auto; font-size:.72rem; font-weight:700; letter-spacing:.04em; color:var(--ink-dim);}
.cl-track li.done{color:var(--ink);}
.cl-track li.done i{background:var(--navy); border-color:var(--navy); color:#fff;}
.cl-track li.done::before{background:var(--navy);}
.cl-track li.now{background:rgba(243,180,0,.13); color:var(--ink);}
.cl-track li.now i{background:var(--gold); border-color:var(--gold); color:#171a2e;}
.cl-track li.now small{color:var(--gold-deep);}
.cl-advisor{display:flex; align-items:center; gap:12px; padding:14px; border-radius:18px; background:var(--paper); border:1px solid var(--line);}
.cl-advisor > i{width:42px; height:42px; border-radius:50%; display:grid; place-items:center; background:var(--gold-soft); color:var(--ink); font-size:1.2rem; flex-shrink:0;}
.cl-advisor b{display:block; font-size:.9rem; font-weight:700; line-height:1.25;}
.cl-advisor small{display:block; color:var(--ink-dim); font-size:.76rem; font-weight:500;}
.cl-advisor a{margin-left:auto; width:38px; height:38px; border-radius:50%; display:grid; place-items:center; flex-shrink:0; background:var(--navy); color:#fff; font-size:1rem; transition:background .25s ease, transform .3s ease;}
.cl-advisor a:hover{background:var(--navy-deep); transform:scale(1.06);}
@media(max-width:1000px){ .cl-sec{padding:80px 0;} .cl-grid{grid-template-columns:1fr; gap:50px;} }
@media(max-width:560px){
  .cl-modes{display:flex; border-radius:18px;}
  .cl-modes button{flex:1 1 auto; padding:9px 12px; font-size:.82rem;}
  .cl-step{grid-template-columns:36px 1fr; gap:12px; padding:14px;}
  .cl-step b{width:36px; height:36px; font-size:.85rem;}
  .cl-card{padding:18px; border-radius:24px;}
  .cl-card::before{inset:-8px; border-radius:30px;}
  .cl-track li{gap:10px; padding:9px 8px; font-size:.84rem;}
  .cl-track li::before{left:23px;}
}
@media (prefers-reduced-motion: reduce){ .cl-badge::before{animation:none;} }

/* ===== WHY (comparison) ===== */
.wc-sec{background:var(--paper); padding:110px 0;}
.wc-top{display:grid; grid-template-columns:1.1fr .9fr; gap:60px; align-items:end; margin-bottom:50px;}
.wc-top h2{font-size:clamp(2.1rem, 4vw, 3.4rem); line-height:1.08; letter-spacing:-0.04em;}
.wc-top h2 span{color:rgba(18,58,46,.35);}
.wc-top p{color:var(--ink-dim); font-size:1.02rem; line-height:1.75; font-weight:500;}
.wc-table{position:relative; display:grid; grid-template-columns:1fr 1fr 1.15fr; border-radius:30px; background:var(--card); border:1px solid var(--line);}
.wc-col-us{position:absolute; top:-14px; bottom:-14px; right:0; width:calc(100% * 1.15 / 3.15); border-radius:26px; background:linear-gradient(165deg, #0F7259 0%, var(--navy-deep) 55%, #05302A 100%); box-shadow:0 40px 70px -40px rgba(8,74,59,.8); pointer-events:none;}
.wc-cell{position:relative; padding:22px 26px; border-bottom:1px solid var(--line); font-size:.92rem; line-height:1.55; font-weight:500;}
.wc-row:last-child .wc-cell{border-bottom:0;}
.wc-h{padding-top:28px; padding-bottom:20px; font-size:.78rem; font-weight:700; letter-spacing:.1em; text-transform:uppercase; color:var(--ink-dim);}
.wc-h.us{color:var(--gold-soft); display:flex; align-items:center; gap:8px;}
.wc-label{display:flex; align-items:center; gap:14px; font-size:1.02rem; font-weight:600; color:var(--ink); letter-spacing:-0.01em;}
.wc-label i{width:40px; height:40px; border-radius:12px; display:grid; place-items:center; flex-shrink:0; background:rgba(14,107,84,.08); color:var(--navy); font-size:1.15rem;}
.wc-self{display:flex; gap:10px; color:var(--ink-dim);}
.wc-self i{color:#C98A00; opacity:.7; font-size:1.05rem; margin-top:2px; flex-shrink:0;}
.wc-us{display:flex; gap:10px; color:rgba(255,255,255,.9); border-bottom-color:rgba(255,255,255,.1);}
.wc-us i{color:var(--gold); font-size:1.1rem; margin-top:1px; flex-shrink:0;}
.wc-row-lbl{display:none;}
@media(max-width:960px){
  .wc-sec{padding:80px 0;}
  .wc-top{grid-template-columns:1fr; gap:16px; margin-bottom:34px;}
  .wc-table{grid-template-columns:1fr; background:none; border:0; gap:12px;}
  .wc-col-us, .wc-h{display:none;}
  .wc-row{display:grid; gap:10px; padding:18px; border-radius:22px; background:var(--card); border:1px solid var(--line);}
  .wc-cell{padding:0; border:0!important;}
  .wc-cell.wc-us{margin:0; padding:14px 16px; border-radius:14px; background:linear-gradient(160deg, #0F7259 0%, var(--navy-deep) 100%);}
  .wc-row-lbl{display:block; font-size:.68rem; font-weight:700; letter-spacing:.1em; text-transform:uppercase; margin-bottom:2px;}
  .wc-self .wc-row-lbl{color:var(--ink-dim);}
  .wc-us .wc-row-lbl{color:var(--gold-soft);}
}
@media(min-width:961px){ .wc-row{display:contents;} }

/* ===== FAQ (split) ===== */
.fq-sec{background:var(--card); border-top:1px solid var(--line); padding:110px 0;}
.fq-grid{display:grid; grid-template-columns:.8fr 1.2fr; gap:70px; align-items:start;}
.fq-side{position:sticky; top:40px;}
.fq-side h2{font-size:clamp(2rem, 3.8vw, 2.9rem); line-height:1.12; margin-bottom:14px;}
.fq-side > p{color:var(--ink-dim); font-size:1rem; line-height:1.7; font-weight:500; margin-bottom:28px;}
.fq-help{padding:24px; border-radius:24px; background:var(--paper); border:1px solid var(--line);}
.fq-help i{width:46px; height:46px; border-radius:14px; display:grid; place-items:center; background:var(--gold); color:#171a2e; font-size:1.3rem; margin-bottom:14px;}
.fq-help h4{font-size:1.15rem; font-weight:600; letter-spacing:-0.01em; margin-bottom:6px;}
.fq-help p{color:var(--ink-dim); font-size:.9rem; line-height:1.6; font-weight:500; margin-bottom:18px;}
.fq-item{border-bottom:1px solid var(--line);}
.fq-item:first-child{border-top:1px solid var(--ink);}
.fq-item summary{list-style:none; cursor:pointer; display:flex; align-items:center; gap:20px; padding:24px 4px; font-size:clamp(1.02rem, 1.4vw, 1.16rem); font-weight:500; letter-spacing:-0.01em; color:var(--ink); transition:color .25s ease;}
.fq-item summary::-webkit-details-marker{display:none;}
.fq-item summary:hover{color:var(--navy);}
.fq-item summary:focus-visible{outline:2px solid var(--gold); outline-offset:2px;}
.fq-item summary b{font-size:.8rem; font-weight:700; color:var(--gold-deep); letter-spacing:.06em; flex-shrink:0; width:26px;}
.fq-item summary i{margin-left:auto; flex-shrink:0; width:36px; height:36px; border-radius:50%; display:grid; place-items:center; border:1.5px solid var(--line); color:var(--navy); font-size:.9rem; transition:transform .35s cubic-bezier(.16,1,.3,1), background .3s ease, color .3s ease, border-color .3s ease;}
.fq-item[open] summary i{transform:rotate(45deg); background:var(--navy); border-color:var(--navy); color:#fff;}
.fq-item p{padding:0 60px 26px 50px; color:var(--ink-dim); font-size:.96rem; line-height:1.75; font-weight:500;}
@media(max-width:960px){ .fq-sec{padding:80px 0;} .fq-grid{grid-template-columns:1fr; gap:36px;} .fq-side{position:relative; top:auto;} }
@media(max-width:600px){ .fq-item p{padding:0 4px 22px 46px;} .fq-item summary{gap:14px;} }

/* ===== CTA ===== */
.ct-sec{background:var(--paper); padding:100px 0;}
.ct-box{position:relative; overflow:hidden; border-radius:34px; text-align:center; padding:clamp(44px, 6vw, 84px) clamp(22px, 5vw, 70px);
  background:radial-gradient(50% 70% at 50% 0%, rgba(243,180,0,.24) 0%, rgba(243,180,0,0) 65%), linear-gradient(160deg, #0B5A47 0%, var(--navy-deep) 50%, #04291F 100%);}
.ct-box::before, .ct-box::after{content:""; position:absolute; border-radius:50%; border:1.5px dashed rgba(255,255,255,.14); pointer-events:none; animation:in-spin 60s linear infinite;}
.ct-box::before{left:-140px; bottom:-200px; width:420px; height:420px;}
.ct-box::after{right:-120px; top:-180px; width:360px; height:360px; animation-direction:reverse;}
.ct-box > *{position:relative; z-index:1;}
.ct-icons{display:flex; justify-content:center; flex-wrap:wrap; gap:10px; margin-bottom:28px;}
.ct-icons span{width:50px; height:50px; border-radius:16px; display:grid; place-items:center; background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.14); color:var(--gold); font-size:1.35rem; transition:background .3s ease, color .3s ease, transform .35s cubic-bezier(.34,1.56,.64,1);}
.ct-icons span:hover{background:var(--gold); color:#171a2e; transform:translateY(-4px);}
.ct-box h2{color:#fff; font-size:clamp(2rem, 4vw, 3.4rem); line-height:1.08; letter-spacing:-0.035em; margin:0 auto 16px; max-width:820px;}
.ct-box h2 em{color:var(--gold-soft);}
.ct-box p{color:rgba(255,255,255,.75); font-size:1.04rem; line-height:1.7; font-weight:500; max-width:600px; margin:0 auto 32px;}
.ct-actions{display:flex; justify-content:center; flex-wrap:wrap; gap:14px; margin-bottom:34px;}
.ct-notes{display:flex; justify-content:center; flex-wrap:wrap; gap:10px 26px; padding-top:26px; border-top:1px solid rgba(255,255,255,.12); max-width:760px; margin:0 auto;}
.ct-notes span{display:inline-flex; align-items:center; gap:8px; color:rgba(255,255,255,.85); font-size:.88rem; font-weight:600;}
.ct-notes i{color:var(--gold); font-size:1.05rem;}
@media(max-width:560px){ .ct-sec{padding:70px 0;} .ct-box{border-radius:24px;} .ct-actions a{flex:1 1 auto; justify-content:center;} .ct-icons span{width:42px; height:42px; font-size:1.15rem; border-radius:13px;} .ct-notes{justify-content:flex-start;} }
@media (prefers-reduced-motion: reduce){ .ct-box::before, .ct-box::after{animation:none;} }

.gs-reveal{opacity:0; transform:translateY(36px); will-change:transform,opacity;}
.gs-scale{opacity:0; transform:translateY(24px) scale(.96); will-change:transform,opacity;}
.gs-stagger > *{opacity:0; transform:translateY(24px); will-change:transform,opacity;}
@media (prefers-reduced-motion: reduce){
  .gs-reveal,.gs-scale{opacity:1!important; transform:none!important;}
  .gs-stagger > *{opacity:1!important; transform:none!important;}
  *{animation-duration:.001ms!important; animation-iteration-count:1!important; transition-duration:.001ms!important;}
}
