
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;}
.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 tx-float{0%,100%{transform:translateY(0);} 50%{transform:translateY(-10px);}}
@keyframes tx-spin{to{transform:rotate(360deg);}}
@keyframes tx-mq{from{transform:translateX(0);} to{transform:translateX(-50%);}}

/* ===== HERO (boxed) ===== */
.th-sec{background:var(--paper); padding:14px 14px 0;}
.th-box{position:relative; overflow:hidden; border-radius:34px; display:grid; grid-template-columns:1.12fr .88fr; gap:30px; min-height:clamp(560px, calc(100vh - 90px), 720px); padding:96px clamp(26px, 5vw, 84px) 0;
  background:
    radial-gradient(40% 60% at 78% 70%, rgba(243,180,0,.22) 0%, rgba(243,180,0,0) 70%),
    radial-gradient(35% 45% at 0% 0%, rgba(20,184,166,.16) 0%, rgba(20,184,166,0) 70%),
    linear-gradient(155deg, #0B5A47 0%, var(--navy-deep) 45%, #04291F 100%);}
.th-box::before{content:""; position:absolute; inset:0; pointer-events:none;
  background-image:linear-gradient(rgba(255,255,255,.045) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.045) 1px, transparent 1px); background-size:56px 56px;
  -webkit-mask-image:radial-gradient(60% 70% at 25% 35%, #000 0%, transparent 80%); mask-image:radial-gradient(60% 70% at 25% 35%, #000 0%, transparent 80%);}
.th-text{position:relative; z-index:2; align-self:center; padding-bottom:80px;}
.th-tag{display:inline-flex; align-items:center; gap:10px; padding:7px 16px 7px 7px; border-radius:100px; background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.16); font-size:.82rem; font-weight:600; color:#fff; margin-bottom:26px;}
.th-tag span{display:inline-grid; place-items:center; width:28px; height:28px; border-radius:50%; background:var(--gold); color:#171a2e; font-size:.9rem;}
.th-title{color:#fff; font-size:clamp(2.3rem, 4.3vw, 4.5rem); font-weight:400; line-height:1.08; letter-spacing:-0.04em; margin-bottom:22px;}
.th-title span{display:block; white-space:nowrap;}
.th-title em{color:var(--gold-soft);}
.th-lead{color:rgba(255,255,255,.76); font-size:clamp(1rem, 1.2vw, 1.14rem); line-height:1.7; font-weight:500; max-width:560px; margin-bottom:32px;}
.th-actions{display:flex; flex-wrap:wrap; gap:14px; margin-bottom:40px;}
.th-trust{display:flex; flex-wrap:wrap; gap:10px 26px; padding-top:26px; border-top:1px solid rgba(255,255,255,.14); max-width:600px;}
.th-trust span{display:inline-flex; align-items:center; gap:8px; font-size:.88rem; font-weight:600; color:rgba(255,255,255,.85);}
.th-trust i{color:var(--gold); font-size:1.05rem;}

.th-art{position:relative; z-index:1; align-self:end; justify-self:center; width:100%; max-width:520px; height:min(560px, calc(100vh - 150px)); min-height:440px;}
.th-art img{position:absolute; left:50%; bottom:0; transform:translateX(-50%); height:100%; width:auto; max-width:none; object-fit:contain; filter:drop-shadow(0 30px 50px rgba(0,0,0,.35));}
.th-ring{position:absolute; left:50%; bottom:-120px; width:620px; height:620px; margin-left:-310px; border-radius:50%; border:1.5px dashed rgba(255,255,255,.16); animation:tx-spin 60s linear infinite; pointer-events:none;}
.th-ring::before{content:""; position:absolute; top:-7px; left:50%; width:14px; height:14px; margin-left:-7px; border-radius:50%; background:var(--gold); box-shadow:0 0 0 6px rgba(243,180,0,.2);}
.th-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,.95); color:var(--ink); box-shadow:0 24px 44px -20px rgba(0,0,0,.5); animation:tx-float 7s ease-in-out infinite; white-space:nowrap;}
.th-chip > span{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;}
.th-chip b{display:block; font-size:.92rem; font-weight:700; line-height:1.2;}
.th-chip small{display:block; font-size:.72rem; font-weight:500; color:var(--ink-dim);}
.th-chip.c1{left:-12%; top:22%;}
.th-chip.c2{right:-10%; top:46%; animation-delay:-2.5s;}
.th-chip.c2 > span{background:var(--gold); color:#171a2e;}
.th-chip.c3{left:-4%; bottom:12%; animation-delay:-4.8s;}

.th-ticker{overflow:hidden; padding:26px 0 8px;}
.th-ticker-track{display:flex; width:max-content; animation:tx-mq 55s linear infinite;}
.th-ticker-track span{display:inline-flex; align-items:center; gap:18px; padding-right:18px; font-size:clamp(1.3rem, 2vw, 1.8rem); font-weight:400; letter-spacing:-0.02em; color:rgba(18,58,46,.3); white-space:nowrap;}
.th-ticker-track span i{color:var(--gold); font-size:1rem;}
.th-ticker-track span:nth-child(3n+1){color:var(--ink);}

@media(max-width:1100px){ .th-chip.c1{left:-4%;} .th-chip.c2{right:-2%;} }
@media(max-width:960px){
  .th-box{grid-template-columns:1fr; padding-top:80px; min-height:0;}
  .th-text{padding-bottom:10px;}
  .th-art{height:440px; min-height:0;}
  .th-chip.c1{left:0;} .th-chip.c2{right:0;} .th-chip.c3{left:2%;}
}
@media(max-width:560px){
  .th-sec{padding:10px 10px 0;}
  .th-box{border-radius:24px; padding:70px 20px 0;}
  .th-title span{white-space:normal;}
  .th-art{height:360px;}
  .th-ring{width:420px; height:420px; margin-left:-210px; bottom:-90px;}
  .th-chip{padding:6px 12px 6px 6px;}
  .th-chip > span{width:30px; height:30px; font-size:.9rem;}
  .th-chip small{display:none;}
  .th-actions a{flex:1 1 auto; justify-content:center;}
}
@media (prefers-reduced-motion: reduce){ .th-ring, .th-chip, .th-ticker-track{animation:none;} }

/* ===== WHO WE SERVE ===== */
.ws-sec{background:var(--paper); padding:100px 0 110px;}
.ws-head{display:grid; grid-template-columns:1fr 1fr; gap:48px; align-items:end; margin-bottom:46px;}
.ws-head h2{font-size:clamp(2rem, 3.8vw, 3rem); line-height:1.12;}
.ws-head p{color:var(--ink-dim); font-size:1rem; line-height:1.7; font-weight:500; max-width:480px; justify-self:end;}
.ws-grid{display:grid; grid-template-columns:repeat(6, 1fr); gap:14px;}
.ws-card{position:relative; overflow:hidden; display:flex; flex-direction:column; min-height:250px; padding:24px 22px; border-radius:24px; background:var(--card); border:1px solid var(--line); transition:transform .45s cubic-bezier(.16,1,.3,1), background .45s ease, border-color .45s ease, box-shadow .45s ease;}
.ws-card::before{content:""; position:absolute; inset:0; background:linear-gradient(160deg, #0F7259 0%, var(--navy-deep) 60%, #05302A 100%); opacity:0; transition:opacity .45s ease;}
.ws-card > *{position:relative;}
.ws-card:hover{transform:translateY(-6px); border-color:transparent; box-shadow:0 30px 50px -30px rgba(8,74,59,.7);}
.ws-card:hover::before{opacity:1;}
.ws-ico{width:50px; height:50px; border-radius:15px; display:grid; place-items:center; font-size:1.4rem; background:rgba(14,107,84,.08); color:var(--navy); margin-bottom:auto; transition:background .45s ease, color .45s ease;}
.ws-card:hover .ws-ico{background:var(--gold); color:#171a2e;}
.ws-card h4{font-size:1.1rem; font-weight:600; letter-spacing:-0.01em; margin:34px 0 6px; transition:color .45s ease;}
.ws-card p{color:var(--ink-dim); font-size:.84rem; line-height:1.55; font-weight:500; transition:color .45s ease;}
.ws-card:hover h4{color:#fff;}
.ws-card:hover p{color:rgba(255,255,255,.72);}
@media(max-width:1200px){ .ws-grid{grid-template-columns:repeat(3, 1fr);} .ws-card{min-height:210px;} }
@media(max-width:860px){ .ws-sec{padding:70px 0 80px;} .ws-head{grid-template-columns:1fr; gap:14px;} .ws-head p{justify-self:start;} }
@media(max-width:600px){ .ws-grid{grid-template-columns:1fr 1fr;} .ws-card{padding:20px 18px; min-height:0;} .ws-card h4{margin-top:22px; font-size:1rem;} }

/* ===== SERVICES DIRECTORY ===== */
.sd-sec{background:var(--card); border-top:1px solid var(--line); padding:0 0 110px;}
.sd-intro{padding:100px 0 40px; text-align:center; max-width:780px; margin:0 auto;}
.sd-intro h2{font-size:clamp(2.1rem, 4vw, 3.2rem); line-height:1.1; margin-bottom:16px;}
.sd-intro h2 em{color:var(--navy);}
.sd-intro p{color:var(--ink-dim); font-size:1.02rem; line-height:1.7; font-weight:500;}

.sd-bar{position:sticky; top:0; z-index:20; background:rgba(255,255,255,.92); backdrop-filter:blur(12px); -webkit-backdrop-filter:blur(12px); border-top:1px solid var(--line); border-bottom:1px solid var(--line);}
.sd-bar-inner{display:flex; align-items:center; gap:16px; padding-top:12px; padding-bottom:12px;}
.sd-nav{position:relative; flex:1; min-width:0; display:flex; gap:6px; overflow-x:auto; scrollbar-width:none; -webkit-mask-image:linear-gradient(90deg, #000 92%, transparent); mask-image:linear-gradient(90deg, #000 92%, transparent);}
.sd-nav::-webkit-scrollbar{display:none;}
.sd-nav a{flex-shrink:0; display:inline-flex; align-items:center; gap:8px; padding:9px 15px; border-radius:100px; font-size:.86rem; font-weight:600; color:var(--ink-dim); border:1px solid transparent; transition:color .25s ease, background .25s ease, border-color .25s ease;}
.sd-nav a i{font-size:1rem;}
.sd-nav a:hover{color:var(--ink); border-color:var(--line);}
.sd-nav a.active{background:var(--ink); color:#fff;}
.sd-nav a.active i{color:var(--gold);}
.sd-search{position:relative; flex:0 0 280px;}
.sd-search i{position:absolute; left:14px; top:50%; transform:translateY(-50%); color:var(--ink-dim);}
.sd-search input{width:100%; padding:11px 14px 11px 40px; border-radius:100px; border:1.5px solid var(--line); background:var(--paper); font:500 .9rem 'Inter',sans-serif; color:var(--ink); outline:none; transition:border-color .25s ease, box-shadow .25s ease, background .25s ease;}
.sd-search input:focus{border-color:var(--navy); background:#fff; box-shadow:0 0 0 4px rgba(14,107,84,.1);}

.sd-cat{display:grid; grid-template-columns:340px 1fr; gap:36px; align-items:start; padding:60px 0; border-bottom:1px solid var(--line); scroll-margin-top:70px;}
.sd-cat:last-of-type{border-bottom:0;}
.sd-cat.is-hidden{display:none;}
.sd-side{position:sticky; top:96px; padding:30px 28px; border-radius:26px; color:#fff; overflow:hidden;
  background:radial-gradient(70% 60% at 100% 0%, rgba(243,180,0,.22) 0%, rgba(243,180,0,0) 60%), linear-gradient(160deg, #0F7259 0%, var(--navy-deep) 55%, #05302A 100%);}
.sd-side::after{content:""; position:absolute; right:-70px; bottom:-70px; width:200px; height:200px; border-radius:50%; border:1.5px dashed rgba(255,255,255,.16);}
.sd-side > *{position:relative;}
.sd-side-top{display:flex; align-items:center; justify-content:space-between; margin-bottom:26px;}
.sd-side-ico{width:58px; height:58px; border-radius:17px; display:grid; place-items:center; background:var(--gold); color:#171a2e; font-size:1.6rem;}
.sd-side-num{font-size:2.6rem; font-weight:400; letter-spacing:-0.05em; line-height:1; color:transparent; -webkit-text-stroke:1.2px rgba(255,255,255,.35);}
.sd-side h3{color:#fff; font-size:1.6rem; font-weight:500; line-height:1.15; letter-spacing:-0.025em; margin-bottom:10px;}
.sd-side p{color:rgba(255,255,255,.74); font-size:.92rem; line-height:1.65; font-weight:500; margin-bottom:22px;}
.sd-side-count{display:inline-flex; align-items:center; gap:8px; font-size:.8rem; font-weight:700; letter-spacing:.06em; text-transform:uppercase; color:var(--gold-soft); margin-bottom:22px;}
.sd-side .pill-btn{font-size:.92rem;}

.sd-list{display:grid; grid-template-columns:1fr 1fr; gap:12px;}
.sd-item{position:relative; display:flex; gap:14px; align-items:flex-start; padding:18px 18px 18px 16px; border-radius:18px; background:var(--paper); border:1px solid var(--line); transition:background .3s ease, border-color .3s ease, transform .35s cubic-bezier(.16,1,.3,1), box-shadow .35s ease;}
.sd-item:hover{background:#fff; border-color:rgba(243,180,0,.7); transform:translateY(-3px); box-shadow:0 22px 40px -30px rgba(14,107,84,.5);}
.sd-item.is-hidden{display:none;}
.sd-item > i{width:36px; height:36px; border-radius:11px; display:grid; place-items:center; flex-shrink:0; background:rgba(14,107,84,.08); color:var(--navy); font-size:1.05rem; transition:background .3s ease, color .3s ease;}
.sd-item:hover > i{background:var(--navy); color:var(--gold);}
.sd-item h4{font-size:.98rem; font-weight:600; letter-spacing:-0.01em; line-height:1.35; margin-bottom:3px;}
.sd-item p{color:var(--ink-dim); font-size:.84rem; line-height:1.55; font-weight:500;}
.sd-item mark{background:rgba(243,180,0,.35); color:inherit; border-radius:3px; padding:0 2px;}
.sd-empty{display:none; margin:60px auto 0; max-width:520px; padding:40px; text-align:center; border-radius:24px; border:1.5px dashed var(--line); color:var(--ink-dim); font-weight:500;}
.sd-empty.show{display:block;}
.sd-empty a{color:var(--gold-deep); font-weight:700;}

@media(max-width:1100px){ .sd-cat{grid-template-columns:280px 1fr; gap:24px;} .sd-list{grid-template-columns:1fr;} }
@media(max-width:860px){
  .sd-sec{padding-bottom:80px;}
  .sd-intro{padding:70px 0 30px;}
  .sd-bar-inner{flex-direction:column; align-items:stretch; gap:10px;}
  .sd-search{flex:none;}
  .sd-cat{grid-template-columns:1fr; padding:44px 0; scroll-margin-top:120px;}
  .sd-side{position:relative; top:auto;}
  .sd-list{grid-template-columns:1fr 1fr;}
}
@media(max-width:600px){ .sd-list{grid-template-columns:1fr;} .sd-side{padding:24px 22px;} }

/* ===== WHY (editorial grid) ===== */
.wy-sec{background:var(--paper); border-top:1px solid var(--line); padding:110px 0;}
.wy-top{display:grid; grid-template-columns:1.1fr .9fr; gap:60px; align-items:end; margin-bottom:60px;}
.wy-top h2{font-size:clamp(2.2rem, 4.2vw, 3.6rem); line-height:1.08; letter-spacing:-0.04em;}
.wy-top h2 span{color:rgba(18,58,46,.35);}
.wy-top p{color:var(--ink-dim); font-size:1.02rem; line-height:1.75; font-weight:500;}
.wy-grid{display:grid; grid-template-columns:repeat(3, 1fr); border-top:1px solid var(--ink);}
.wy-item{position:relative; padding:34px 30px 38px 0; border-bottom:1px solid var(--line);}
.wy-item:nth-child(3n+2), .wy-item:nth-child(3n+3){padding-left:30px; border-left:1px solid var(--line);}
.wy-item::before{content:""; position:absolute; left:0; top:-1px; width:0; height:3px; background:var(--gold); transition:width .6s cubic-bezier(.16,1,.3,1);}
.wy-item:hover::before{width:100%;}
.wy-num{display:block; font-size:.78rem; font-weight:700; letter-spacing:.1em; color:var(--gold-deep); margin-bottom:26px;}
.wy-item i{display:block; font-size:2rem; color:var(--navy); margin-bottom:18px; transition:transform .45s cubic-bezier(.34,1.56,.64,1);}
.wy-item:hover i{transform:translateY(-4px) rotate(-6deg);}
.wy-item h4{font-size:1.25rem; font-weight:500; letter-spacing:-0.02em; margin-bottom:10px;}
.wy-item p{color:var(--ink-dim); font-size:.92rem; line-height:1.7; font-weight:500; max-width:360px;}
@media(max-width:960px){
  .wy-sec{padding:80px 0;}
  .wy-top{grid-template-columns:1fr; gap:18px; margin-bottom:40px;}
  .wy-grid{grid-template-columns:1fr 1fr;}
  .wy-item, .wy-item:nth-child(3n+2), .wy-item:nth-child(3n+3){padding:28px 22px 30px 0; border-left:0;}
  .wy-item:nth-child(even){padding-left:22px; border-left:1px solid var(--line);}
}
@media(max-width:600px){
  .wy-grid{grid-template-columns:1fr;}
  .wy-item, .wy-item:nth-child(even){padding:26px 0; border-left:0;}
}

/* ===== PROCESS (rail) ===== */
.pr-sec{background:var(--card); border-top:1px solid var(--line); padding:110px 0;}
.pr-head{text-align:center; max-width:720px; margin:0 auto 64px;}
.pr-head h2{font-size:clamp(2rem, 3.8vw, 2.9rem); line-height:1.15; margin-bottom:14px;}
.pr-head p{color:var(--ink-dim); font-size:1rem; line-height:1.7; font-weight:500;}
.pr-rail{position:relative; display:grid; grid-template-columns:repeat(5, 1fr); gap:18px;}
.pr-rail::before{content:""; position:absolute; left:10%; right:10%; top:36px; height:2px; background:repeating-linear-gradient(90deg, var(--line) 0 10px, transparent 10px 18px);}
.pr-bar{position:absolute; left:10%; top:36px; height:2px; width:0; background:linear-gradient(90deg, var(--navy), var(--gold)); border-radius:2px;}
.pr-step{position:relative; text-align:center;}
.pr-dot{position:relative; z-index:1; width:72px; height:72px; margin:0 auto 22px; border-radius:50%; display:grid; place-items:center; background:var(--card); border:1.5px solid var(--line); color:var(--navy); font-size:1.6rem; box-shadow:0 0 0 8px var(--card); transition:background .4s ease, color .4s ease, border-color .4s ease, transform .45s cubic-bezier(.34,1.56,.64,1);}
.pr-dot small{position:absolute; top:-6px; right:-6px; width:26px; height:26px; border-radius:50%; display:grid; place-items:center; background:var(--gold); color:#171a2e; font-size:.7rem; font-weight:800;}
.pr-step:hover .pr-dot, .pr-step.on .pr-dot{background:var(--navy); border-color:var(--navy); color:var(--gold);}
.pr-step:hover .pr-dot{transform:scale(1.06);}
.pr-card{padding:22px 20px 24px; border-radius:22px; background:var(--paper); border:1px solid var(--line); min-height:180px; transition:border-color .35s ease, transform .35s cubic-bezier(.16,1,.3,1);}
.pr-step:hover .pr-card{border-color:rgba(243,180,0,.7); transform:translateY(-4px);}
.pr-card h4{font-size:1.06rem; font-weight:600; letter-spacing:-0.01em; margin-bottom:8px;}
.pr-card p{color:var(--ink-dim); font-size:.86rem; line-height:1.6; font-weight:500;}
@media(max-width:1000px){
  .pr-sec{padding:80px 0;}
  .pr-rail{grid-template-columns:1fr; gap:14px;}
  .pr-rail::before, .pr-bar{display:none;}
  .pr-step{display:grid; grid-template-columns:64px 1fr; gap:18px; text-align:left; align-items:start;}
  .pr-dot{width:60px; height:60px; margin:0; font-size:1.35rem; box-shadow:none;}
  .pr-card{min-height:0;}
}

/* ===== FAQ ===== */
.fq-sec{background:var(--paper); border-top:1px solid var(--line); padding:110px 0;}
.fq-wrap{max-width:900px; margin:0 auto;}
.fq-head{text-align:center; margin-bottom:44px;}
.fq-head h2{font-size:clamp(2rem, 3.8vw, 2.9rem); line-height:1.15; margin-bottom:12px;}
.fq-head p{color:var(--ink-dim); font-size:1rem; font-weight:500;}
.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.18rem); 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:600px){ .fq-sec{padding:80px 0;} .fq-item p{padding:0 4px 22px 50px;} }

/* ===== CTA ===== */
.ct-sec{background:var(--paper); padding:0 0 100px;}
.ct-box{position:relative; overflow:hidden; border-radius:34px; display:grid; grid-template-columns:1.15fr .85fr; gap:40px; align-items:center; padding:clamp(34px, 5vw, 70px);
  background:radial-gradient(50% 90% at 100% 0%, rgba(243,180,0,.24) 0%, rgba(243,180,0,0) 60%), linear-gradient(155deg, #0B5A47 0%, var(--navy-deep) 50%, #04291F 100%);}
.ct-box::before{content:""; position:absolute; left:-100px; bottom:-160px; width:360px; height:360px; border-radius:50%; border:1.5px dashed rgba(255,255,255,.15); animation:tx-spin 50s linear infinite;}
.ct-box > *{position:relative;}
.ct-box h2{color:#fff; font-size:clamp(2rem, 3.8vw, 3.2rem); line-height:1.08; letter-spacing:-0.035em; margin-bottom:16px;}
.ct-box h2 em{color:var(--gold-soft);}
.ct-box > div > p{color:rgba(255,255,255,.75); font-size:1.02rem; line-height:1.7; font-weight:500; max-width:520px; margin-bottom:28px;}
.ct-actions{display:flex; flex-wrap:wrap; gap:14px;}
.ct-list{display:grid; gap:12px;}
.ct-list div{display:flex; align-items:center; gap:14px; padding:16px 18px; border-radius:18px; background:rgba(255,255,255,.07); border:1px solid rgba(255,255,255,.12); color:#fff; font-weight:600; font-size:.95rem;}
.ct-list i{width:36px; height:36px; border-radius:11px; display:grid; place-items:center; background:var(--gold); color:#171a2e; font-size:1rem; flex-shrink:0;}
@media(max-width:900px){ .ct-box{grid-template-columns:1fr;} }
@media(max-width:560px){ .ct-sec{padding-bottom:70px;} .ct-box{border-radius:24px;} .ct-actions a{flex:1 1 auto; justify-content:center;} }
@media (prefers-reduced-motion: reduce){ .ct-box::before{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;}
}
