
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;}

.label{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:18px;}
.label::before{content:""; width:8px; height:8px; border-radius:50%; background:var(--gold); box-shadow:0 0 0 4px rgba(243,180,0,.2);}
.label.on-dark{color:var(--gold-soft);}

@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 ab-clip{from{clip-path:inset(100% 0 0 0 round 26px);} to{clip-path:inset(0 0 0 0 round 26px);}}
@keyframes ab-zoom{from{transform:scale(1.25);} to{transform:scale(1);}}
@keyframes ab-float{0%,100%{transform:translateY(0);} 50%{transform:translateY(-8px);}}
@keyframes ab-spin{to{transform:rotate(360deg);}}
@keyframes ab-mq{from{transform:translateX(0);} to{transform:translateX(-50%);}}

/* ===== HERO (statement + staggered photo mosaic) ===== */
.ah-sec{position:relative; overflow:hidden; padding:72px 0 50px;
  background:radial-gradient(38% 50% at 100% 0%, rgba(243,180,0,.13) 0%, rgba(243,180,0,0) 70%), radial-gradient(30% 45% at 0% 100%, rgba(20,184,166,.10) 0%, rgba(20,184,166,0) 70%), var(--paper);}
.ah-sec::before{content:""; position:absolute; inset:0; pointer-events:none;
  background-image:linear-gradient(90deg, rgba(18,58,46,.05) 1px, transparent 1px); background-size:calc(100% / 12) 100%;
  -webkit-mask-image:linear-gradient(180deg, #000 0%, transparent 70%); mask-image:linear-gradient(180deg, #000 0%, transparent 70%);}
.ah-head{position:relative; display:grid; grid-template-columns:minmax(0,1fr) 470px; gap:48px; align-items:end;}
.ah-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:24px; box-shadow:0 10px 30px -20px rgba(14,107,84,.4);}
.ah-tag span{display:inline-grid; place-items:center; width:28px; height:28px; border-radius:50%; background:var(--navy); color:var(--gold); font-size:.9rem;}
.ah-title{font-size:clamp(2.3rem, 4.3vw, 4.5rem); font-weight:400; line-height:1.08; letter-spacing:-0.04em;}
.ah-title span{display:block; white-space:nowrap;}
.ah-title em{color:var(--navy); position:relative;}
.ah-title em::after{content:""; position:absolute; left:0; right:0; bottom:.04em; height:.16em; border-radius:4px; background:var(--gold); opacity:.5; z-index:-1;}
.ah-side{padding-bottom:6px;}
.ah-lead{color:var(--ink-dim); font-size:clamp(1rem, 1.15vw, 1.08rem); line-height:1.7; font-weight:500; margin-bottom:24px;}
.ah-actions{display:flex; flex-wrap:wrap; gap:12px;}

.ah-mosaic{position:relative; margin-top:38px; height:clamp(260px, 32vh, 310px); display:grid; grid-template-columns:1fr .85fr 1.75fr .85fr 1fr; gap:14px; align-items:end;}
.ah-m{position:relative; overflow:hidden; border-radius:26px; height:100%; clip-path:inset(100% 0 0 0 round 26px); animation:ab-clip 1.1s cubic-bezier(.77,0,.18,1) forwards;}
.ah-m img{width:100%; height:100%; object-fit:cover; animation:ab-zoom 1.6s cubic-bezier(.16,1,.3,1) forwards;}
.ah-m.m1{height:84%; animation-delay:.25s;} .ah-m.m1 img{animation-delay:.25s; object-position:50% 30%;}
.ah-m.m2{height:66%; animation-delay:.4s;}
.ah-m.m3{height:100%; animation-delay:.1s;} .ah-m.m3 img{animation-delay:.1s; object-position:50% 38%;}
.ah-m.m4{height:74%; animation-delay:.55s;}
.ah-m.m5{height:90%; animation-delay:.35s;} .ah-m.m5 img{animation-delay:.35s; object-position:50% 25%;}
.ah-card{display:flex; flex-direction:column; justify-content:space-between; padding:22px 22px 24px;}
.ah-m.m2{background:radial-gradient(80% 60% at 100% 0%, rgba(243,180,0,.25) 0%, rgba(243,180,0,0) 60%), linear-gradient(160deg, #0F7259 0%, var(--navy-deep) 55%, #05302A 100%); color:#fff;}
.ah-m.m4{background:var(--gold); color:#171a2e;}
.ah-card > i{width:42px; height:42px; border-radius:13px; display:grid; place-items:center; font-size:1.2rem;}
.ah-m.m2 .ah-card > i, .ah-m.m2 > i{background:rgba(255,255,255,.12); color:var(--gold);}
.ah-m.m4 > i{background:rgba(23,26,46,.1); color:#171a2e;}
.ah-card b{display:block; font-size:clamp(2.2rem, 3.2vw, 3rem); font-weight:400; letter-spacing:-0.05em; line-height:1;}
.ah-card small{display:block; margin-top:8px; font-size:.84rem; font-weight:600; line-height:1.35; opacity:.8;}
.ah-stars{display:flex; gap:2px; margin-top:8px; font-size:.85rem;}
.ah-chip{position:absolute; left:16px; bottom:16px; display:flex; align-items:center; gap:10px; padding:8px 16px 8px 8px; border-radius:100px; background:rgba(255,255,255,.94); box-shadow:0 18px 30px -18px rgba(0,0,0,.5); font-size:.84rem; font-weight:600; color:var(--ink); white-space:nowrap; animation:ab-float 7s ease-in-out infinite;}
.ah-chip span{width:30px; height:30px; border-radius:50%; display:grid; place-items:center; background:var(--navy); color:var(--gold); font-size:.95rem;}

@media(max-width:1200px){ .ah-head{grid-template-columns:1fr; gap:22px;} .ah-side{max-width:620px;} }
@media(max-width:1100px){ .ah-mosaic{grid-template-columns:1fr .95fr 1.6fr .95fr 1fr;} .ah-card{padding:18px;} }
@media(max-width:960px){
  .ah-sec{padding-top:72px;}
  .ah-head{grid-template-columns:1fr; gap:22px;}
  .ah-side{max-width:600px;}
  .ah-mosaic{grid-template-columns:repeat(4, 1fr); height:auto; align-items:stretch;}
  .ah-m{height:auto!important;}
  .ah-m.m3{grid-column:1 / -1; order:-1; height:300px!important;}
  .ah-m.m1, .ah-m.m5{height:240px!important;}
}
@media(max-width:700px){
  .ah-mosaic{grid-template-columns:1fr 1fr; gap:10px;}
  .ah-m.m3{height:230px!important;}
  .ah-m.m1, .ah-m.m5{height:200px!important;}
  .ah-m.m2, .ah-m.m4{min-height:170px;}
  .ah-m.m5{order:1;} .ah-m.m4{order:2;}
}
@media(max-width:560px){
  .ah-sec{padding:64px 0 44px;}
  .ah-title{font-size:2.15rem;}
  .ah-title span{white-space:normal;}
  .ah-actions a{flex:1 1 auto; justify-content:center;}
  .ah-card{padding:16px;}
  .ah-card b{font-size:2.1rem;}
  .ah-chip{left:12px; bottom:12px; font-size:.78rem;}
}

/* ===== MANIFESTO (words fill on scroll) ===== */
.mf-sec{position:relative; overflow:hidden; padding:130px 0 120px; color:#fff;
  background:radial-gradient(40% 60% at 90% 100%, rgba(243,180,0,.16) 0%, rgba(243,180,0,0) 70%), linear-gradient(160deg, #0B5A47 0%, var(--navy-deep) 45%, #04291F 100%);}
.mf-sec::before{content:""; position:absolute; right:-160px; top:-160px; width:480px; height:480px; border-radius:50%; border:1.5px dashed rgba(255,255,255,.12); animation:ab-spin 70s linear infinite;}
.mf-inner{position:relative; display:grid; grid-template-columns:220px 1fr; gap:40px;}
.mf-side{padding-top:14px;}
.mf-side p{color:rgba(255,255,255,.55); font-size:.88rem; line-height:1.6; font-weight:500; max-width:200px;}
.mf-text{font-size:clamp(1.7rem, 3.3vw, 3.15rem); line-height:1.22; letter-spacing:-0.035em; font-weight:400; color:#fff;}
.mf-text .w{color:rgba(255,255,255,.18); transition:color .2s linear;}
.mf-text .w.hl{color:rgba(255,224,138,.22);}
.mf-text .w.lit{color:#fff;}
.mf-text .w.hl.lit{color:var(--gold-soft);}
.mf-foot{display:flex; flex-wrap:wrap; gap:10px; margin-top:48px;}
.mf-foot span{display:inline-flex; align-items:center; gap:8px; padding:9px 16px; border-radius:100px; background:rgba(255,255,255,.07); border:1px solid rgba(255,255,255,.14); font-size:.86rem; font-weight:600; color:rgba(255,255,255,.88);}
.mf-foot i{color:var(--gold);}
@media(max-width:860px){ .mf-sec{padding:90px 0 84px;} .mf-inner{grid-template-columns:1fr; gap:10px;} .mf-side p{max-width:none;} }

/* ===== STORY ===== */
.st-sec{background:var(--card); padding:120px 0;}
.st-grid{display:grid; grid-template-columns:1fr 1fr; gap:clamp(40px, 6vw, 96px); align-items:center;}
.st-media{position:relative; padding:0 12% 18% 0;}
.st-img1{border-radius:28px; overflow:hidden; aspect-ratio:4/3.1;}
.st-img1 img, .st-img2 img{width:100%; height:100%; object-fit:cover;}
.st-img2{position:absolute; right:0; bottom:0; width:40%; aspect-ratio:3/4; border-radius:24px; overflow:hidden; border:8px solid var(--card); box-shadow:0 30px 60px -30px rgba(8,74,59,.55);}
.st-img2 img{object-position:50% 20%;}
.st-badge{position:absolute; left:-18px; bottom:10%; z-index:2; display:flex; align-items:center; gap:14px; padding:16px 22px 16px 16px; border-radius:20px; background:var(--navy); color:#fff; box-shadow:0 30px 50px -26px rgba(8,74,59,.8); animation:ab-float 7s ease-in-out infinite;}
.st-badge > i{width:46px; height:46px; border-radius:14px; display:grid; place-items:center; background:var(--gold); color:#171a2e; font-size:1.3rem;}
.st-badge b{display:block; font-size:1.7rem; font-weight:400; letter-spacing:-0.04em; line-height:1;}
.st-badge small{display:block; font-size:.78rem; font-weight:600; color:rgba(255,255,255,.72); margin-top:4px;}
.st-text h2{font-size:clamp(2rem, 3.6vw, 3.1rem); line-height:1.1; letter-spacing:-0.04em; margin-bottom:22px;}
.st-text h2 span{color:rgba(18,58,46,.35);}
.st-text > p{color:var(--ink-dim); font-size:1rem; line-height:1.8; font-weight:500; margin-bottom:16px;}
.st-points{display:grid; gap:0; margin-top:28px; border-top:1px solid var(--line);}
.st-points > div{display:flex; gap:16px; align-items:flex-start; padding:18px 0; border-bottom:1px solid var(--line);}
.st-points i{flex-shrink:0; width:40px; height:40px; border-radius:12px; display:grid; place-items:center; background:rgba(14,107,84,.08); color:var(--navy); font-size:1.15rem;}
.st-points h4{font-size:1.02rem; font-weight:600; letter-spacing:-0.01em; margin-bottom:2px;}
.st-points p{color:var(--ink-dim); font-size:.9rem; line-height:1.6; font-weight:500;}
@media(max-width:960px){ .st-sec{padding:80px 0;} .st-grid{grid-template-columns:1fr;} .st-media{max-width:620px;} }
@media(max-width:560px){ .st-badge{left:-6px; padding:12px 16px 12px 12px;} .st-badge > i{width:38px; height:38px; font-size:1.1rem;} .st-badge b{font-size:1.4rem;} .st-img2{border-width:5px;} }

.gs-clip{clip-path:inset(0 0 100% 0);}

/* ===== MISSION / VISION / PROMISE (expanding panels) ===== */
.mv-sec{background:var(--paper); border-top:1px solid var(--line); padding:110px 0;}
.mv-head{display:grid; grid-template-columns:1fr 1fr; gap:48px; align-items:end; margin-bottom:46px;}
.mv-head h2{font-size:clamp(2rem, 3.8vw, 3rem); line-height:1.12;}
.mv-head p{color:var(--ink-dim); font-size:1rem; line-height:1.7; font-weight:500; max-width:480px; justify-self:end;}
.mv-panels{display:flex; gap:14px; height:440px;}
.mv-p{position:relative; overflow:hidden; flex:1 1 0; min-width:0; display:flex; flex-direction:column; padding:30px 30px 32px; border-radius:28px; background:var(--card); border:1px solid var(--line); cursor:pointer; outline:none; transition:flex-grow .7s cubic-bezier(.16,1,.3,1), border-color .4s ease, box-shadow .4s ease;}
.mv-p::before{content:""; position:absolute; inset:0; opacity:0; transition:opacity .5s ease;
  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%);}
.mv-p > *{position:relative;}
.mv-p.active{flex-grow:2.1; border-color:transparent; box-shadow:0 40px 70px -40px rgba(8,74,59,.8);}
.mv-p.active::before{opacity:1;}
.mv-p:focus-visible{box-shadow:0 0 0 3px var(--gold);}
.mv-top{display:flex; align-items:center; justify-content:space-between; margin-bottom:auto;}
.mv-ico{width:56px; height:56px; border-radius:17px; display:grid; place-items:center; font-size:1.55rem; background:rgba(14,107,84,.08); color:var(--navy); transition:background .4s ease, color .4s ease;}
.mv-p.active .mv-ico{background:var(--gold); color:#171a2e;}
.mv-num{font-size:3rem; font-weight:400; letter-spacing:-0.05em; line-height:1; color:transparent; -webkit-text-stroke:1.2px rgba(18,58,46,.25); transition:-webkit-text-stroke-color .4s ease;}
.mv-p.active .mv-num{-webkit-text-stroke-color:rgba(255,255,255,.35);}
.mv-p small{display:block; font-size:.74rem; font-weight:700; letter-spacing:.12em; text-transform:uppercase; color:var(--gold-deep); margin-bottom:10px; transition:color .4s ease;}
.mv-p.active small{color:var(--gold-soft);}
.mv-p h3{font-size:clamp(1.3rem, 1.9vw, 1.75rem); font-weight:400; line-height:1.2; letter-spacing:-0.03em; margin-bottom:14px; transition:color .4s ease;}
.mv-p.active h3{color:#fff;}
.mv-more{max-height:0; opacity:0; overflow:hidden; transition:max-height .6s cubic-bezier(.16,1,.3,1), opacity .4s ease;}
.mv-p.active .mv-more{max-height:260px; opacity:1; transition-delay:.15s;}
.mv-more p{color:rgba(255,255,255,.75); font-size:.94rem; line-height:1.7; font-weight:500; margin-bottom:16px; max-width:520px;}
.mv-more ul{list-style:none; display:flex; flex-wrap:wrap; gap:8px;}
.mv-more li{display:inline-flex; align-items:center; gap:7px; padding:7px 13px; border-radius:100px; background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.14); color:#fff; font-size:.8rem; font-weight:600;}
.mv-more li i{color:var(--gold);}
.mv-hint{display:inline-flex; align-items:center; gap:8px; font-size:.84rem; font-weight:600; color:var(--navy); transition:opacity .3s ease;}
.mv-p.active .mv-hint{display:none;}
@media(max-width:960px){
  .mv-sec{padding:80px 0;}
  .mv-head{grid-template-columns:1fr; gap:14px;} .mv-head p{justify-self:start;}
  .mv-panels{flex-direction:column; height:auto;}
  .mv-p{flex:none; cursor:default; padding:26px 24px 28px;}
  .mv-p::before{opacity:0;}
  .mv-top{margin-bottom:26px;}
  .mv-p .mv-more, .mv-p.active .mv-more{max-height:none; opacity:1;}
  .mv-more p{color:var(--ink-dim);}
  .mv-more li{background:var(--paper); border-color:var(--line); color:var(--ink);}
  .mv-more li i{color:var(--gold-deep);}
  .mv-hint{display:none;}
  .mv-p.active{box-shadow:none; border-color:var(--line);}
  .mv-p.active::before{opacity:0;}
  .mv-p.active h3{color:var(--ink);} .mv-p.active small{color:var(--gold-deep);}
  .mv-p.active .mv-ico{background:rgba(14,107,84,.08); color:var(--navy);}
  .mv-p.active .mv-num{-webkit-text-stroke-color:rgba(18,58,46,.25);}
  .mv-p:nth-child(2){background:linear-gradient(160deg, #0F7259 0%, var(--navy-deep) 55%, #05302A 100%); border-color:transparent;}
  .mv-p:nth-child(2) h3{color:#fff!important;} .mv-p:nth-child(2) small{color:var(--gold-soft)!important;}
  .mv-p:nth-child(2) .mv-more p{color:rgba(255,255,255,.75);}
  .mv-p:nth-child(2) .mv-more li{background:rgba(255,255,255,.08); border-color:rgba(255,255,255,.14); color:#fff;}
  .mv-p:nth-child(2) .mv-more li i{color:var(--gold);}
  .mv-p:nth-child(2) .mv-ico{background:var(--gold)!important; color:#171a2e!important;}
  .mv-p:nth-child(2) .mv-num{-webkit-text-stroke-color:rgba(255,255,255,.35)!important;}
}

/* ===== NUMBERS ===== */
.nm-sec{background:var(--card); border-top:1px solid var(--line); padding:110px 0;}
.nm-head{display:flex; flex-wrap:wrap; justify-content:space-between; align-items:end; gap:20px 48px; margin-bottom:50px;}
.nm-head h2{font-size:clamp(2rem, 3.8vw, 3rem); line-height:1.12; max-width:640px;}
.nm-head p{color:var(--ink-dim); font-size:1rem; line-height:1.7; font-weight:500; max-width:420px;}
.nm-grid{display:grid; grid-template-columns:repeat(4, 1fr); border-top:1px solid var(--ink); border-left:1px solid var(--line);}
.nm-cell{position:relative; padding:34px 28px 30px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); min-height:200px; display:flex; flex-direction:column; overflow:hidden; transition:background .45s ease;}
.nm-cell::after{content:""; position:absolute; left:0; bottom:0; height:3px; width:0; background:var(--gold); transition:width .6s cubic-bezier(.16,1,.3,1);}
.nm-cell:hover::after{width:100%;}
.nm-cell:hover{background:var(--paper);}
.nm-cell > i{font-size:1.5rem; color:var(--gold-deep); margin-bottom:auto;}
.nm-cell b{display:block; margin-top:34px; font-size:clamp(2.6rem, 4.4vw, 4rem); font-weight:400; letter-spacing:-0.05em; line-height:1; color:var(--ink); font-variant-numeric:tabular-nums;}
.nm-cell span{display:block; margin-top:10px; font-size:.9rem; font-weight:600; color:var(--ink-dim);}
.nm-cell.dark{background:linear-gradient(160deg, #0F7259 0%, var(--navy-deep) 55%, #05302A 100%);}
.nm-cell.dark:hover{background:linear-gradient(160deg, #0F7259 0%, var(--navy-deep) 55%, #05302A 100%);}
.nm-cell.dark b{color:#fff;} .nm-cell.dark span{color:rgba(255,255,255,.7);} .nm-cell.dark > i{color:var(--gold);}
.nm-cell .nm-stars, .nm-cell.dark .nm-stars{display:flex; gap:2px; margin:8px 0 0; color:var(--gold); font-size:.8rem;}
@media(max-width:960px){ .nm-sec{padding:80px 0;} .nm-grid{grid-template-columns:repeat(2, 1fr);} .nm-cell{min-height:170px;} }
@media(max-width:480px){ .nm-cell{padding:24px 18px 22px; min-height:150px;} .nm-cell b{font-size:2.3rem; margin-top:22px;} .nm-cell span{font-size:.82rem;} }

/* ===== SERVICES (index rows) ===== */
.sv-sec{background:var(--paper); border-top:1px solid var(--line); padding:110px 0;}
.sv-head{display:grid; grid-template-columns:1fr 1fr; gap:48px; align-items:end; margin-bottom:46px;}
.sv-head h2{font-size:clamp(2rem, 3.8vw, 3rem); line-height:1.12;}
.sv-head h2 span{color:rgba(18,58,46,.35);}
.sv-head p{color:var(--ink-dim); font-size:1rem; line-height:1.7; font-weight:500; max-width:480px; justify-self:end;}
.sv-list{border-top:1px solid var(--ink);}
.sv-row{position:relative; overflow:hidden; display:grid; grid-template-columns:64px minmax(0,1.15fr) minmax(0,1.3fr) minmax(0,1fr) 56px; gap:24px; align-items:center; padding:26px 22px; border-bottom:1px solid var(--line); border-radius:0; transition:border-radius .45s ease;}
.sv-row::before{content:""; position:absolute; inset:0; background:linear-gradient(120deg, #0F7259 0%, var(--navy-deep) 60%, #05302A 100%); transform:scaleY(0); transform-origin:bottom; transition:transform .5s cubic-bezier(.16,1,.3,1);}
.sv-row > *{position:relative;}
.sv-row:hover, .sv-row:focus-visible{border-radius:22px; outline:none;}
.sv-row:hover::before, .sv-row:focus-visible::before{transform:scaleY(1);}
.sv-num{font-size:.8rem; font-weight:700; letter-spacing:.1em; color:var(--gold-deep); transition:color .4s ease;}
.sv-name{display:flex; align-items:center; gap:16px;}
.sv-name i{flex-shrink:0; width:48px; height:48px; border-radius:15px; display:grid; place-items:center; background:rgba(14,107,84,.08); color:var(--navy); font-size:1.35rem; transition:background .4s ease, color .4s ease, transform .45s cubic-bezier(.34,1.56,.64,1);}
.sv-name h3{font-size:clamp(1.3rem, 2vw, 1.8rem); font-weight:400; line-height:1.15; letter-spacing:-0.03em; transition:color .4s ease;}
.sv-desc{color:var(--ink-dim); font-size:.92rem; line-height:1.65; font-weight:500; transition:color .4s ease;}
.sv-tags{display:flex; flex-wrap:wrap; gap:6px;}
.sv-tags span{padding:5px 11px; border-radius:100px; border:1px solid var(--line); background:var(--card); font-size:.76rem; font-weight:600; color:var(--ink); transition:background .4s ease, border-color .4s ease, color .4s ease;}
.sv-go{width:52px; height:52px; border-radius:50%; display:grid; place-items:center; border:1.5px solid var(--line); color:var(--navy); font-size:1.15rem; justify-self:end; transition:background .4s ease, color .4s ease, border-color .4s ease, transform .45s cubic-bezier(.16,1,.3,1);}
.sv-row:hover .sv-num, .sv-row:focus-visible .sv-num{color:var(--gold-soft);}
.sv-row:hover .sv-name i, .sv-row:focus-visible .sv-name i{background:var(--gold); color:#171a2e; transform:rotate(-8deg);}
.sv-row:hover h3, .sv-row:focus-visible h3{color:#fff;}
.sv-row:hover .sv-desc, .sv-row:focus-visible .sv-desc{color:rgba(255,255,255,.75);}
.sv-row:hover .sv-tags span, .sv-row:focus-visible .sv-tags span{background:rgba(255,255,255,.08); border-color:rgba(255,255,255,.16); color:#fff;}
.sv-row:hover .sv-go, .sv-row:focus-visible .sv-go{background:var(--gold); border-color:var(--gold); color:#171a2e; transform:rotate(-45deg);}
@media(max-width:1100px){ .sv-row{grid-template-columns:48px minmax(0,1fr) minmax(0,1.2fr) 52px;} .sv-tags{display:none;} }
@media(max-width:860px){
  .sv-sec{padding:80px 0;}
  .sv-head{grid-template-columns:1fr; gap:14px;} .sv-head p{justify-self:start;}
  .sv-row{grid-template-columns:1fr 46px; gap:10px 16px; padding:22px 16px;}
  .sv-num{display:none;}
  .sv-name{grid-column:1;}
  .sv-go{grid-column:2; grid-row:1; width:44px; height:44px; font-size:1rem;}
  .sv-desc{grid-column:1 / -1;}
  .sv-tags{display:flex; grid-column:1 / -1;}
}
@media(max-width:480px){ .sv-name i{width:42px; height:42px; font-size:1.15rem;} .sv-name{gap:12px;} }

/* ===== VALUES (stacking cards) ===== */
.vl-sec{background:var(--card); border-top:1px solid var(--line); padding:110px 0 120px;}
.vl-grid{display:grid; grid-template-columns:.85fr 1.15fr; gap:clamp(40px, 6vw, 90px); align-items:start;}
.vl-side{position:sticky; top:100px;}
.vl-side h2{font-size:clamp(2rem, 3.8vw, 3rem); line-height:1.12; margin-bottom:18px;}
.vl-side > p{color:var(--ink-dim); font-size:1rem; line-height:1.75; font-weight:500; margin-bottom:28px; max-width:440px;}
.vl-nav{display:grid; gap:4px; max-width:360px;}
.vl-nav span{display:flex; align-items:center; gap:12px; padding:9px 0; font-size:.95rem; font-weight:600; color:rgba(18,58,46,.4); border-bottom:1px solid var(--line); transition:color .3s ease;}
.vl-nav span b{font-size:.74rem; font-weight:700; letter-spacing:.08em; color:inherit; width:22px;}
.vl-nav span::after{content:""; margin-left:auto; width:8px; height:8px; border-radius:50%; background:var(--gold); transform:scale(0); transition:transform .3s ease;}
.vl-nav span.on{color:var(--ink);}
.vl-nav span.on::after{transform:scale(1);}
.vl-stack{display:grid; gap:24px;}
.vl-card{position:sticky; top:calc(100px + var(--i) * 16px); display:grid; grid-template-columns:auto 1fr; gap:26px; min-height:260px; padding:34px 34px 36px; border-radius:28px; background:var(--paper); border:1px solid var(--line); box-shadow:0 -20px 40px -34px rgba(8,74,59,.45); transform-origin:center top;}
.vl-card:nth-child(2n){background:linear-gradient(160deg, #0F7259 0%, var(--navy-deep) 55%, #05302A 100%); border-color:transparent;}
.vl-card:nth-child(3n){background:var(--gold-soft); border-color:transparent;}
.vl-ico{width:64px; height:64px; border-radius:20px; display:grid; place-items:center; font-size:1.8rem; background:var(--navy); color:var(--gold);}
.vl-card:nth-child(2n) .vl-ico{background:var(--gold); color:#171a2e;}
.vl-card small{display:block; font-size:.76rem; font-weight:700; letter-spacing:.12em; text-transform:uppercase; color:var(--gold-deep); margin-bottom:10px;}
.vl-card h3{font-size:clamp(1.5rem, 2.3vw, 2.1rem); font-weight:400; line-height:1.15; letter-spacing:-0.035em; margin-bottom:12px;}
.vl-card p{color:var(--ink-dim); font-size:.96rem; line-height:1.7; font-weight:500; max-width:520px;}
.vl-card .vl-in{display:inline-flex; align-items:center; gap:8px; margin-top:18px; padding:8px 14px; border-radius:100px; background:rgba(14,107,84,.08); font-size:.82rem; font-weight:600; color:var(--navy);}
.vl-card:nth-child(2n) small{color:var(--gold-soft);}
.vl-card:nth-child(2n) h3{color:#fff;}
.vl-card:nth-child(2n) p{color:rgba(255,255,255,.75);}
.vl-card:nth-child(2n) .vl-in{background:rgba(255,255,255,.1); color:#fff;}
.vl-card:nth-child(3n) small{color:var(--navy);}
.vl-card:nth-child(3n) p{color:rgba(18,58,46,.78);}
.vl-card:nth-child(3n) .vl-in{background:rgba(255,255,255,.6);}
@media(max-width:960px){
  .vl-sec{padding:80px 0 90px;}
  .vl-grid{grid-template-columns:1fr;}
  .vl-side{position:relative; top:auto;}
  .vl-nav{display:none;}
  .vl-card{top:calc(20px + var(--i) * 12px);}
}
@media(max-width:560px){ .vl-card{grid-template-columns:1fr; gap:18px; padding:26px 22px 28px; min-height:0;} .vl-ico{width:54px; height:54px; font-size:1.5rem; border-radius:16px;} }

/* ===== TEAMS ===== */
.tm-sec{position:relative; overflow:hidden; padding:110px 0; background:radial-gradient(45% 55% at 0% 0%, rgba(20,184,166,.14) 0%, rgba(20,184,166,0) 70%), radial-gradient(40% 50% at 100% 100%, rgba(243,180,0,.14) 0%, rgba(243,180,0,0) 70%), linear-gradient(170deg, #05302A 0%, #04291F 100%);}
.tm-sec::before{content:""; position:absolute; inset:0; pointer-events:none; background-image:radial-gradient(rgba(255,255,255,.08) 1px, transparent 1px); background-size:24px 24px; -webkit-mask-image:radial-gradient(60% 60% at 50% 0%, #000 0%, transparent 80%); mask-image:radial-gradient(60% 60% at 50% 0%, #000 0%, transparent 80%);}
.tm-head{position:relative; text-align:center; max-width:760px; margin:0 auto 54px;}
.tm-head h2{color:#fff; font-size:clamp(2rem, 3.8vw, 3rem); line-height:1.12; margin-bottom:14px;}
.tm-head h2 em{color:var(--gold-soft);}
.tm-head p{color:rgba(255,255,255,.7); font-size:1rem; line-height:1.7; font-weight:500;}
.tm-grid{position:relative; display:grid; grid-template-columns:repeat(4, 1fr); gap:14px;}
.tm-card{position:relative; display:flex; flex-direction:column; padding:26px 24px 26px; border-radius:24px; background:rgba(255,255,255,.05); border:1px solid rgba(255,255,255,.1); min-height:270px; transition:background .4s ease, border-color .4s ease, transform .45s cubic-bezier(.16,1,.3,1);}
.tm-card:hover{background:rgba(255,255,255,.09); border-color:rgba(243,180,0,.55); transform:translateY(-6px);}
.tm-ico{position:relative; width:58px; height:58px; margin-bottom:26px;}
.tm-ico::before{content:""; position:absolute; inset:-7px; border-radius:50%; border:1.5px dashed rgba(255,255,255,.2); transition:transform .8s cubic-bezier(.16,1,.3,1), border-color .4s ease;}
.tm-card:hover .tm-ico::before{transform:rotate(90deg); border-color:rgba(243,180,0,.7);}
.tm-ico i{position:relative; width:58px; height:58px; border-radius:50%; display:grid; place-items:center; background:var(--gold); color:#171a2e; font-size:1.5rem;}
.tm-card h4{color:#fff; font-size:1.14rem; font-weight:600; letter-spacing:-0.01em; margin-bottom:8px;}
.tm-card p{color:rgba(255,255,255,.66); font-size:.88rem; line-height:1.6; font-weight:500; margin-bottom:18px;}
.tm-card ul{list-style:none; margin-top:auto; display:flex; flex-wrap:wrap; gap:6px;}
.tm-card li{padding:4px 10px; border-radius:100px; background:rgba(255,255,255,.07); font-size:.74rem; font-weight:600; color:rgba(255,255,255,.85);}
@media(max-width:1100px){ .tm-grid{grid-template-columns:repeat(2, 1fr);} .tm-card{min-height:0;} }
@media(max-width:860px){ .tm-sec{padding:80px 0;} }
@media(max-width:560px){ .tm-grid{grid-template-columns:1fr;} .tm-card{padding:22px 20px;} .tm-ico{margin-bottom:20px;} }

/* ===== HOW WE WORK / TRUST ===== */
.hw-sec{background:var(--paper); padding:120px 0;}
.hw-grid{display:grid; grid-template-columns:.9fr 1.1fr; gap:clamp(40px, 6vw, 90px); align-items:center;}
.hw-media{position:relative;}
.hw-img{border-radius:28px; overflow:hidden; aspect-ratio:4/5;}
.hw-img img{width:100%; height:100%; object-fit:cover; object-position:40% 50%;}
.hw-card{position:absolute; right:-24px; top:40px; z-index:2; width:230px; padding:20px 22px; border-radius:22px; background:var(--card); border:1px solid var(--line); box-shadow:0 30px 60px -30px rgba(8,74,59,.5); animation:ab-float 7s ease-in-out infinite;}
.hw-card b{display:block; font-size:2.3rem; font-weight:400; letter-spacing:-0.05em; line-height:1; color:var(--navy);}
.hw-card span{display:block; margin-top:6px; font-size:.84rem; font-weight:600; color:var(--ink-dim);}
.hw-card2{position:absolute; left:24px; bottom:24px; right:24px; z-index:2; display:flex; align-items:center; gap:14px; padding:16px 18px; border-radius:20px; background:rgba(8,74,59,.9); backdrop-filter:blur(8px); -webkit-backdrop-filter:blur(8px); color:#fff; font-size:.92rem; font-weight:600; line-height:1.4;}
.hw-card2 i{flex-shrink:0; width:40px; height:40px; border-radius:12px; display:grid; place-items:center; background:var(--gold); color:#171a2e; font-size:1.15rem;}
.hw-text h2{font-size:clamp(2rem, 3.6vw, 3rem); line-height:1.1; letter-spacing:-0.04em; margin-bottom:16px;}
.hw-text > p{color:var(--ink-dim); font-size:1rem; line-height:1.75; font-weight:500; margin-bottom:36px; max-width:560px;}
.hw-steps{position:relative; display:grid; gap:8px;}
.hw-steps::before{content:""; position:absolute; left:27px; top:28px; bottom:28px; width:2px; background:repeating-linear-gradient(180deg, var(--line) 0 8px, transparent 8px 14px);}
.hw-bar{position:absolute; left:27px; top:28px; width:2px; height:0; background:linear-gradient(180deg, var(--navy), var(--gold)); border-radius:2px;}
.hw-step{position:relative; display:grid; grid-template-columns:56px 1fr; gap:20px; padding:10px 0;}
.hw-dot{position:relative; z-index:1; width:56px; height:56px; border-radius:50%; display:grid; place-items:center; background:var(--card); border:1.5px solid var(--line); color:var(--navy); font-size:1.3rem; transition:background .4s ease, color .4s ease, border-color .4s ease;}
.hw-step.on .hw-dot{background:var(--navy); border-color:var(--navy); color:var(--gold);}
.hw-step h4{font-size:1.14rem; font-weight:600; letter-spacing:-0.01em; margin:6px 0 4px;}
.hw-step p{color:var(--ink-dim); font-size:.92rem; line-height:1.65; font-weight:500; max-width:520px;}
.hw-actions{display:flex; flex-wrap:wrap; gap:12px; margin-top:34px;}
@media(max-width:960px){ .hw-sec{padding:80px 0;} .hw-grid{grid-template-columns:1fr;} .hw-media{max-width:560px;} .hw-img{aspect-ratio:4/3.4;} .hw-card{right:16px; top:16px;} }
@media(max-width:560px){ .hw-card{width:auto; left:auto; padding:14px 16px;} .hw-card b{font-size:1.8rem;} .hw-card2{left:14px; right:14px; bottom:14px; font-size:.84rem;} .hw-img{aspect-ratio:4/4.4;} .hw-actions a{flex:1 1 auto; justify-content:center;} }

/* ===== CTA ===== */
.ca-sec{background:var(--paper); padding:0 0 100px;}
.ca-box{position:relative; overflow:hidden; border-radius:34px; text-align:center; padding:clamp(56px, 7vw, 96px) clamp(22px, 5vw, 70px);
  background:radial-gradient(50% 80% at 50% 0%, rgba(243,180,0,.2) 0%, rgba(243,180,0,0) 60%), linear-gradient(160deg, #0B5A47 0%, var(--navy-deep) 50%, #04291F 100%);}
.ca-box::before, .ca-box::after{content:""; position:absolute; border-radius:50%; border:1.5px dashed rgba(255,255,255,.14); animation:ab-spin 60s linear infinite; pointer-events:none;}
.ca-box::before{width:420px; height:420px; left:-160px; bottom:-220px;}
.ca-box::after{width:340px; height:340px; right:-120px; top:-170px; animation-direction:reverse;}
.ca-box > *{position:relative;}
.ca-icons{display:flex; justify-content:center; flex-wrap:wrap; gap:10px; margin-bottom:30px;}
.ca-icons i{width:46px; height:46px; border-radius:50%; 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.15rem; animation:ab-float 6s ease-in-out infinite;}
.ca-icons i:nth-child(2n){animation-delay:-1.5s;} .ca-icons i:nth-child(3n){animation-delay:-3s;}
.ca-box h2{color:#fff; font-size:clamp(2rem, 4vw, 3.4rem); line-height:1.08; letter-spacing:-0.04em; margin:0 auto 16px; max-width:820px;}
.ca-box h2 em{color:var(--gold-soft);}
.ca-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;}
.ca-actions{display:flex; justify-content:center; flex-wrap:wrap; gap:14px;}
@media(max-width:560px){ .ca-sec{padding-bottom:70px;} .ca-box{border-radius:24px;} .ca-actions a{flex:1 1 auto; justify-content:center;} .ca-icons{gap:6px;} .ca-icons i{width:34px; height:34px; font-size:.9rem;} }

.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;}
  .gs-clip{clip-path:none!important;}
  .ah-m{clip-path:none!important; animation:none!important;}
  .ah-m img{animation:none!important;}
  .mf-text .w{color:#fff!important;} .mf-text .w.hl{color:var(--gold-soft)!important;}
  *{animation-duration:.001ms!important; animation-iteration-count:1!important; transition-duration:.001ms!important;}
}
