
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,h5{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;}
.ghost-d{display:inline-flex; align-items:center; gap:10px; padding:14px 26px; border-radius:100px; border:1.5px solid rgba(18,58,46,.18); color:var(--ink)!important; font-weight:500; font-size:1rem; transition:background .3s ease, color .3s ease, border-color .3s ease;}
.ghost-d:hover{background:var(--ink); color:#fff!important; border-color:var(--ink);}

.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;}
.kicker.on-dark{color:var(--gold-soft);}
.kicker.on-dark b{background:var(--gold); color:#171a2e;}

@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 bp-float{0%,100%{transform:translateY(0);} 50%{transform:translateY(-10px);}}
@keyframes bp-spin{to{transform:rotate(360deg);}}
@keyframes bp-pulse{0%{box-shadow:0 0 0 0 rgba(20,184,166,.55);} 70%{box-shadow:0 0 0 12px rgba(20,184,166,0);} 100%{box-shadow:0 0 0 0 rgba(20,184,166,0);}}

/* ===== HERO ===== */
.bp-sec{background:var(--paper); overflow:hidden;}
.bp-main{position:relative;
  background:
    radial-gradient(34% 50% at 8% 12%, rgba(20,184,166,.13) 0%, rgba(20,184,166,0) 70%),
    radial-gradient(30% 45% at 70% 100%, rgba(243,180,0,.16) 0%, rgba(243,180,0,0) 70%),
    var(--paper);}
.bp-main::before{content:""; position:absolute; inset:0; pointer-events:none;
  background-image:radial-gradient(rgba(18,58,46,.12) 1.2px, transparent 1.3px); background-size:26px 26px;
  -webkit-mask-image:radial-gradient(55% 70% at 22% 40%, #000 0%, transparent 75%); mask-image:radial-gradient(55% 70% at 22% 40%, #000 0%, transparent 75%);}
.bp-grid{position:relative; display:grid; grid-template-columns:1.08fr .92fr; gap:30px; min-height:clamp(560px, calc(100vh - 230px), 680px); padding-top:84px;}
.bp-text{position:relative; z-index:2; align-self:center; padding-bottom:64px;}
.bp-tag{display:inline-flex; align-items:center; gap:10px; padding:7px 16px 7px 7px; border-radius:100px; background:#fff; border:1px solid var(--line); font-size:.82rem; font-weight:600; color:var(--ink); margin-bottom:26px; box-shadow:0 10px 24px -18px rgba(8,74,59,.5);}
.bp-tag span{display:inline-grid; place-items:center; width:28px; height:28px; border-radius:50%; background:var(--navy); color:var(--gold); font-size:.9rem;}
.bp-title{font-size:clamp(2.3rem, 4.3vw, 4.5rem); font-weight:400; line-height:1.08; letter-spacing:-0.04em; margin-bottom:22px;}
.bp-title span{display:block; white-space:nowrap;}
.bp-title em{color:var(--navy); position:relative; background:linear-gradient(transparent 68%, rgba(243,180,0,.45) 68%, rgba(243,180,0,.45) 90%, transparent 90%);}
.bp-lead{color:var(--ink-dim); font-size:clamp(1rem, 1.2vw, 1.12rem); line-height:1.7; font-weight:500; max-width:560px; margin-bottom:32px;}
.bp-actions{display:flex; flex-wrap:wrap; gap:14px; margin-bottom:38px;}
.bp-trust{display:flex; flex-wrap:wrap; gap:10px 26px; padding-top:24px; border-top:1px solid var(--line); max-width:600px;}
.bp-trust span{display:inline-flex; align-items:center; gap:8px; font-size:.88rem; font-weight:600; color:var(--ink);}
.bp-trust i{color:var(--navy); font-size:1.05rem;}

.bp-art{position:relative; z-index:1; align-self:end; justify-self:center; width:100%; max-width:580px; height:min(600px, calc(100vh - 160px)); min-height:480px;}
.bp-arch{position:absolute; right:3%; bottom:0; width:74%; height:84%; border-radius:999px 999px 0 0;
  background:radial-gradient(60% 40% at 50% 18%, rgba(255,255,255,.55) 0%, rgba(255,255,255,0) 70%), linear-gradient(180deg, var(--gold-soft) 0%, var(--gold) 62%, var(--gold-deep) 100%);}
.bp-arch::before{content:""; position:absolute; inset:18px 18px 0; border-radius:999px 999px 0 0; border:1.5px dashed rgba(23,26,46,.18); border-bottom:0;}
.bp-dot{position:absolute; border-radius:50%; pointer-events:none;}
.bp-dot.d1{width:110px; height:110px; left:12%; top:6%; background:rgba(20,184,166,.18);}
.bp-dot.d2{width:26px; height:26px; right:2%; top:18%; background:var(--navy);}
.bp-dot.d3{width:14px; height:14px; left:22%; top:36%; background:var(--gold);}
.bp-art img{position:absolute; right:6%; bottom:0; height:97%; width:auto; max-width:none; object-fit:contain; filter:drop-shadow(0 30px 40px rgba(8,74,59,.25));}

.bp-phone{position:absolute; z-index:3; left:-10%; bottom:44px; width:232px; padding:12px 12px 14px; border-radius:30px; background:#fff; border:1px solid var(--line); box-shadow:0 40px 70px -30px rgba(8,74,59,.55), 0 0 0 6px rgba(255,255,255,.55); animation:bp-float 8s ease-in-out infinite; animation-delay:-3s;}
.bp-phone-notch{width:60px; height:6px; border-radius:6px; background:var(--line); margin:0 auto 12px;}
.bp-phone-top{display:flex; align-items:center; justify-content:space-between; padding:0 4px 10px;}
.bp-phone-top b{display:block; font-size:.9rem; font-weight:700; letter-spacing:-0.01em; line-height:1.2;}
.bp-phone-top small{display:block; font-size:.66rem; font-weight:600; color:var(--ink-dim);}
.bp-phone-top > i{width:30px; height:30px; border-radius:10px; display:grid; place-items:center; background:rgba(14,107,84,.08); color:var(--navy); font-size:.95rem;}
.bp-apps{display:grid; grid-template-columns:repeat(3, 1fr); gap:6px; padding:10px 6px; border-radius:18px; background:var(--paper);}
.bp-app{display:flex; flex-direction:column; align-items:center; gap:5px; padding:6px 2px; border:0; background:transparent; border-radius:12px; cursor:pointer; color:var(--ink); transition:background .25s ease, transform .3s cubic-bezier(.34,1.56,.64,1);}
.bp-app:hover{background:#fff; transform:translateY(-2px);}
.bp-app i{width:36px; height:36px; border-radius:12px; display:grid; place-items:center; font-size:1.05rem; background:var(--navy); color:var(--gold);}
.bp-app:nth-child(3n+2) i{background:var(--gold); color:#171a2e;}
.bp-app:nth-child(3n) i{background:rgba(20,184,166,.16); color:var(--navy);}
.bp-app span{font-size:.62rem; font-weight:600; line-height:1.15; text-align:center;}
.bp-phone-bar{display:flex; align-items:center; justify-content:center; gap:8px; margin-top:10px; padding:10px; border-radius:14px; background:var(--ink); color:#fff; font-size:.74rem; font-weight:600;}
.bp-phone-bar i{color:var(--gold);}

.bp-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,.96); color:var(--ink); box-shadow:0 24px 44px -20px rgba(8,74,59,.45); border:1px solid var(--line); animation:bp-float 7s ease-in-out infinite; white-space:nowrap;}
.bp-chip > span{position:relative; width:38px; height:38px; border-radius:11px; display:grid; place-items:center; background:var(--mint); color:#fff; font-size:1.15rem; flex-shrink:0;}
.bp-chip.c1 > span{animation:bp-pulse 2.4s ease-out infinite;}
.bp-chip b{display:block; font-size:.9rem; font-weight:700; line-height:1.2;}
.bp-chip small{display:block; font-size:.72rem; font-weight:500; color:var(--ink-dim);}
.bp-chip.c1{right:-6%; top:30%;}
.bp-chip.c2{right:-4%; bottom:9%; animation-delay:-3.5s;}
.bp-chip.c2 > span{background:var(--navy); color:var(--gold);}

.bp-dock-wrap{position:relative; background:var(--card); border-top:1px solid var(--line); border-bottom:1px solid var(--line);}
.bp-dock{display:flex; align-items:center; gap:18px; padding-top:18px; padding-bottom:18px;}
.bp-dock-label{flex-shrink:0; display:flex; align-items:center; gap:10px; font-size:.78rem; font-weight:700; letter-spacing:.1em; text-transform:uppercase; color:var(--ink-dim);}
.bp-dock-label i{width:34px; height:34px; border-radius:10px; display:grid; place-items:center; background:var(--gold); color:#171a2e; font-size:1rem;}
@media(min-width:961px) and (max-width:1500px){ .bp-dock-label span{display:none;} }
.bp-dock-list{flex:1; min-width:0; display:flex; gap:6px; overflow-x:auto; scrollbar-width:none;}
@media(max-width:1300px){ .bp-dock-list{-webkit-mask-image:linear-gradient(90deg, #000 90%, transparent); mask-image:linear-gradient(90deg, #000 90%, transparent);} }
.bp-dock-list::-webkit-scrollbar{display:none;}
.bp-dock-list button{flex:1 0 auto; display:inline-flex; align-items:center; justify-content:center; gap:7px; padding:8px 12px 8px 8px; border-radius:100px; border:1px solid var(--line); background:var(--paper); color:var(--ink); font-size:.8rem; font-weight:600; cursor:pointer; white-space:nowrap; transition:background .25s ease, border-color .25s ease, color .25s ease, transform .3s ease;}
.bp-dock-list button i{width:26px; height:26px; border-radius:50%; display:grid; place-items:center; background:rgba(14,107,84,.1); color:var(--navy); font-size:.85rem; transition:background .25s ease, color .25s ease;}
.bp-dock-list button:hover{background:var(--ink); border-color:var(--ink); color:#fff; transform:translateY(-2px);}
.bp-dock-list button:hover i{background:var(--gold); color:#171a2e;}

@media(max-width:1180px){ .bp-phone{left:-4%;} .bp-chip.c1{right:-2%;} .bp-chip.c2{right:0;} }
@media(max-width:960px){
  .bp-grid{grid-template-columns:1fr; min-height:0; padding-top:70px; gap:10px;}
  .bp-text{padding-bottom:10px;}
  .bp-art{height:480px; min-height:0; max-width:520px;}
  .bp-phone{left:0;}
  .bp-dock{flex-direction:column; align-items:stretch; gap:12px;}
}
@media(max-width:560px){
  .bp-grid{padding-top:56px;}
  .bp-title span{white-space:normal; text-wrap:balance;}
  .bp-art{height:420px;}
  .bp-art img{right:0; height:96%;}
  .bp-arch{right:0; width:84%;}
  .bp-phone{width:178px; left:-6px; bottom:18px; padding:9px 8px 10px; border-radius:22px;}
  .bp-phone-notch{margin-bottom:8px;}
  .bp-phone-top{padding:0 2px 8px;}
  .bp-phone-top b{font-size:.8rem;}
  .bp-phone-top > i{width:26px; height:26px;}
  .bp-phone-bar{margin-top:8px; padding:8px; font-size:.68rem;}
  .bp-apps{gap:2px; padding:6px 4px;}
  .bp-app{padding:5px 1px; gap:4px;}
  .bp-app i{width:28px; height:28px; font-size:.86rem; border-radius:9px;}
  .bp-app span{font-size:.58rem;}
  .bp-chip{padding:6px 12px 6px 6px;}
  .bp-chip > span{width:30px; height:30px; font-size:.95rem;}
  .bp-chip b{font-size:.8rem;}
  .bp-chip small{display:none;}
  .bp-chip.c1{right:0; top:4%;}
  .bp-chip.c2{right:0; bottom:26%;}
  .bp-actions a{flex:1 1 auto; justify-content:center;}
}
@media (prefers-reduced-motion: reduce){ .bp-phone, .bp-chip, .bp-chip.c1 > span{animation:none;} }

/* ===== SERVICES (app board) ===== */
.bs-sec{padding:110px 0; color:#fff;
  background:radial-gradient(40% 50% at 100% 0%, rgba(243,180,0,.16) 0%, rgba(243,180,0,0) 70%), radial-gradient(40% 50% at 0% 100%, rgba(20,184,166,.16) 0%, rgba(20,184,166,0) 70%), linear-gradient(160deg, #0B5A47 0%, var(--navy-deep) 45%, #04291F 100%);}
.bs-head{display:grid; grid-template-columns:1.1fr .9fr; gap:48px; align-items:end; margin-bottom:48px;}
.bs-head h2{color:#fff; font-size:clamp(2.1rem, 4vw, 3.3rem); line-height:1.1; letter-spacing:-0.035em;}
.bs-head h2 em{color:var(--gold-soft);}
.bs-head p{color:rgba(255,255,255,.72); font-size:1rem; line-height:1.7; font-weight:500; max-width:480px; justify-self:end;}
.bs-head p b{color:#fff; font-weight:600;}
.bs-board{display:grid; grid-template-columns:1fr 1fr; gap:16px;}
.bs-group{position:relative; padding:26px; border-radius:28px; background:rgba(255,255,255,.05); border:1px solid rgba(255,255,255,.1);}
.bs-ghead{display:flex; align-items:flex-start; gap:14px; margin-bottom:20px;}
.bs-ghead > span{width:44px; height:44px; border-radius:13px; display:grid; place-items:center; flex-shrink:0; background:var(--gold); color:#171a2e; font-size:1.2rem;}
.bs-ghead h3{color:#fff; font-size:1.25rem; font-weight:500; letter-spacing:-0.02em; line-height:1.25;}
.bs-ghead p{color:rgba(255,255,255,.6); font-size:.86rem; font-weight:500; line-height:1.5;}
.bs-ghead small{margin-left:auto; flex-shrink:0; padding:4px 10px; border-radius:100px; background:rgba(255,255,255,.08); color:var(--gold-soft); font-size:.72rem; font-weight:700; letter-spacing:.06em;}
.bs-tiles{display:grid; grid-template-columns:repeat(3, 1fr); gap:10px;}
.bs-tile{position:relative; display:flex; flex-direction:column; align-items:flex-start; gap:14px; padding:18px 16px 16px; border-radius:20px; border:1px solid rgba(255,255,255,.08); background:rgba(255,255,255,.06); color:#fff; text-align:left; cursor:pointer; min-height:150px; transition:background .35s ease, border-color .35s ease, transform .45s cubic-bezier(.16,1,.3,1), box-shadow .35s ease;}
.bs-tile .ico{width:52px; height:52px; border-radius:16px; display:grid; place-items:center; font-size:1.5rem; background:#fff; color:var(--navy); transition:transform .45s cubic-bezier(.34,1.56,.64,1);}
.bs-tile:nth-child(3n+2) .ico{background:var(--gold); color:#171a2e;}
.bs-tile:nth-child(3n) .ico{background:var(--mint); color:#fff;}
.bs-tile b{display:block; font-size:.98rem; font-weight:600; letter-spacing:-0.01em; line-height:1.3;}
.bs-tile small{display:inline-flex; align-items:center; gap:6px; margin-top:auto; font-size:.76rem; font-weight:600; color:rgba(255,255,255,.55); transition:color .3s ease;}
.bs-tile small i{transition:transform .3s ease;}
.bs-tile:hover, .bs-tile:focus-visible{background:#fff; border-color:#fff; transform:translateY(-5px); box-shadow:0 30px 50px -28px rgba(0,0,0,.6); outline:none;}
.bs-tile:hover b, .bs-tile:focus-visible b{color:var(--ink);}
.bs-tile:hover small, .bs-tile:focus-visible small{color:var(--gold-deep);}
.bs-tile:hover small i{transform:translateX(4px);}
.bs-tile:hover .ico{transform:scale(1.08) rotate(-6deg);}
.bs-tile:nth-child(3n+1):hover .ico{background:var(--navy); color:var(--gold);}
.bs-tile.ask{border:1.5px dashed rgba(255,255,255,.22); background:transparent;}
.bs-tile.ask .ico{background:transparent; border:1.5px dashed rgba(255,255,255,.35); color:var(--gold-soft);}
.bs-tile.ask:hover .ico{border-color:var(--gold-deep); color:var(--gold-deep);}
.bs-foot{display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:18px; margin-top:26px; padding:20px 24px; border-radius:22px; border:1px solid rgba(255,255,255,.1); color:rgba(255,255,255,.75); font-size:.94rem; font-weight:500;}
.bs-foot span{display:inline-flex; align-items:center; gap:10px;}
.bs-foot span i{color:var(--gold); font-size:1.2rem;}

/* modal / sheet */
.bs-modal{position:fixed; inset:0; z-index:1000; display:flex; align-items:center; justify-content:center; padding:24px; visibility:hidden; pointer-events:none;}
.bs-modal.open{visibility:visible; pointer-events:auto;}
.bs-backdrop{position:absolute; inset:0; background:rgba(4,41,31,.55); backdrop-filter:blur(6px); -webkit-backdrop-filter:blur(6px); opacity:0; transition:opacity .35s ease;}
.bs-modal.open .bs-backdrop{opacity:1;}
.bs-sheet{position:relative; width:100%; max-width:580px; max-height:calc(100vh - 48px); overflow-y:auto; border-radius:30px; background:var(--card); color:var(--ink); box-shadow:0 50px 100px -30px rgba(0,0,0,.6); opacity:0; transform:translateY(30px) scale(.97); transition:opacity .35s ease, transform .45s cubic-bezier(.16,1,.3,1);}
.bs-modal.open .bs-sheet{opacity:1; transform:none;}
.bsm-top{position:relative; padding:28px 30px 24px; border-radius:30px 30px 0 0; overflow:hidden; background:radial-gradient(60% 90% at 100% 0%, rgba(243,180,0,.25) 0%, rgba(243,180,0,0) 60%), linear-gradient(160deg, #0F7259 0%, var(--navy-deep) 60%, #05302A 100%); color:#fff;}
.bsm-top::after{content:""; position:absolute; right:-50px; bottom:-80px; width:180px; height:180px; border-radius:50%; border:1.5px dashed rgba(255,255,255,.18);}
.bsm-row{position:relative; display:flex; align-items:center; gap:14px; margin-bottom:18px;}
.bsm-ico{width:58px; height:58px; border-radius:18px; display:grid; place-items:center; background:var(--gold); color:#171a2e; font-size:1.7rem; flex-shrink:0;}
.bsm-meta small{display:block; font-size:.74rem; font-weight:700; letter-spacing:.1em; text-transform:uppercase; color:var(--gold-soft);}
.bsm-meta span{display:block; font-size:.82rem; font-weight:600; color:rgba(255,255,255,.6);}
.bsm-close{position:absolute; top:18px; right:18px; z-index:2; width:40px; height:40px; border-radius:50%; border:1px solid rgba(255,255,255,.25); background:rgba(255,255,255,.08); color:#fff; display:grid; place-items:center; font-size:1rem; cursor:pointer; transition:background .25s ease, color .25s ease, transform .3s ease;}
.bsm-close:hover{background:#fff; color:var(--ink); transform:rotate(90deg);}
.bsm-top h3{position:relative; color:#fff; font-size:clamp(1.6rem, 3vw, 2rem); line-height:1.12; letter-spacing:-0.03em; margin-bottom:8px;}
.bsm-top p{position:relative; color:rgba(255,255,255,.78); font-size:.95rem; line-height:1.65; font-weight:500;}
.bsm-body{padding:24px 30px 28px;}
.bsm-body h5{display:flex; align-items:center; gap:8px; font-size:.78rem; font-weight:700; letter-spacing:.1em; text-transform:uppercase; color:var(--gold-deep); margin-bottom:12px;}
.bsm-need{list-style:none; display:grid; gap:8px; margin-bottom:18px;}
.bsm-need li{display:flex; align-items:flex-start; gap:12px; padding:12px 14px; border-radius:14px; background:var(--paper); border:1px solid var(--line); font-size:.92rem; font-weight:500; line-height:1.5;}
.bsm-need li i{width:26px; height:26px; border-radius:8px; display:grid; place-items:center; background:var(--navy); color:var(--gold); font-size:.8rem; flex-shrink:0;}
.bsm-tip{display:flex; gap:10px; padding:12px 14px; border-radius:14px; background:rgba(243,180,0,.12); color:var(--ink); font-size:.86rem; font-weight:500; line-height:1.55; margin-bottom:22px;}
.bsm-tip i{color:var(--gold-deep); font-size:1.1rem; flex-shrink:0; margin-top:1px;}
.bsm-actions{display:flex; align-items:center; justify-content:space-between; gap:12px; flex-wrap:wrap;}
.bsm-nav{display:flex; gap:8px;}
.bsm-nav button{width:44px; height:44px; border-radius:50%; border:1.5px solid var(--line); background:#fff; color:var(--ink); display:grid; place-items:center; font-size:1rem; cursor:pointer; transition:background .25s ease, color .25s ease, border-color .25s ease;}
.bsm-nav button:hover{background:var(--ink); border-color:var(--ink); color:#fff;}
html.bs-lock, html.bs-lock body{overflow:hidden;}

@media(max-width:1100px){ .bs-board{grid-template-columns:1fr;} }
@media(max-width:860px){ .bs-sec{padding:80px 0;} .bs-head{grid-template-columns:1fr; gap:14px; margin-bottom:34px;} .bs-head p{justify-self:start;} }
@media(max-width:600px){
  .bs-group{padding:20px 16px; border-radius:22px;}
  .bs-ghead p{display:none;}
  .bs-tiles{gap:8px;}
  .bs-tile{padding:14px 12px; min-height:128px; gap:10px; border-radius:16px;}
  .bs-tile .ico{width:42px; height:42px; font-size:1.2rem; border-radius:13px;}
  .bs-tile b{font-size:.84rem;}
  .bs-tile small{font-size:.7rem;}
  .bs-tile small span{display:none;}
  .bs-modal{align-items:flex-end; padding:0;}
  .bs-sheet{max-width:none; max-height:88vh; border-radius:26px 26px 0 0; transform:translateY(100%);}
  .bsm-top{border-radius:26px 26px 0 0; padding:24px 22px 20px;}
  .bsm-body{padding:20px 22px 24px;}
  .bsm-actions .pill-btn{flex:1 1 auto; justify-content:space-between;}
}
@media(max-width:380px){ .bs-tiles{grid-template-columns:1fr 1fr;} }

/* ===== DIGITAL SERVICES ===== */
.dg-sec{background:var(--card); padding:110px 0;}
.dg-head{text-align:center; max-width:760px; margin:0 auto 52px;}
.dg-head h2{font-size:clamp(2.1rem, 4vw, 3.2rem); line-height:1.1; margin-bottom:16px;}
.dg-head h2 em{color:var(--navy);}
.dg-head p{color:var(--ink-dim); font-size:1.02rem; line-height:1.7; font-weight:500;}
.dg-grid{display:grid; grid-template-columns:1fr 1fr; gap:18px; align-items:stretch;}
.dg-panel{position:relative; overflow:hidden; display:flex; flex-direction:column; padding:clamp(26px, 3.4vw, 44px); border-radius:32px;}
.dg-pan{background:var(--paper); border:1px solid var(--line);}
.dg-tide{color:#fff; background:radial-gradient(55% 60% at 100% 0%, rgba(20,184,166,.28) 0%, rgba(20,184,166,0) 70%), linear-gradient(160deg, #0F7259 0%, var(--navy-deep) 55%, #05302A 100%);}
.dg-top{position:relative; display:flex; align-items:flex-start; justify-content:space-between; gap:20px; margin-bottom:26px;}
.dg-label{display:inline-flex; align-items:center; gap:8px; padding:6px 12px; border-radius:100px; font-size:.74rem; font-weight:700; letter-spacing:.08em; text-transform:uppercase; margin-bottom:16px; background:rgba(14,107,84,.08); color:var(--navy);}
.dg-tide .dg-label{background:rgba(255,255,255,.1); color:var(--gold-soft);}
.dg-panel h3{font-size:clamp(1.7rem, 2.6vw, 2.3rem); line-height:1.1; letter-spacing:-0.035em; margin-bottom:12px;}
.dg-tide h3{color:#fff;}
.dg-panel .lead{color:var(--ink-dim); font-size:.98rem; line-height:1.7; font-weight:500; max-width:440px;}
.dg-tide .lead{color:rgba(255,255,255,.75);}
/* ID art */
.dg-id{flex-shrink:0; width:150px; height:98px; border-radius:14px; background:#fff; border:1px solid var(--line); box-shadow:0 20px 40px -24px rgba(8,74,59,.5); padding:12px; display:grid; grid-template-columns:38px 1fr; gap:10px; align-content:start; transform:rotate(4deg); transition:transform .5s cubic-bezier(.34,1.56,.64,1);}
.dg-pan:hover .dg-id{transform:rotate(0) translateY(-4px);}
.dg-id-top{grid-column:1 / -1; height:8px; border-radius:4px; background:linear-gradient(90deg, var(--navy) 0 40%, var(--gold) 40% 60%, var(--mint) 60%);}
.dg-id-photo{width:38px; height:46px; border-radius:8px; background:rgba(14,107,84,.12); display:grid; place-items:center; color:var(--navy); font-size:1.3rem;}
.dg-id-lines{display:grid; gap:6px; align-content:start; padding-top:4px;}
.dg-id-lines span{height:6px; border-radius:3px; background:var(--line);}
.dg-id-lines span:nth-child(1){width:90%; background:rgba(18,58,46,.25);}
.dg-id-lines span:nth-child(2){width:70%;}
.dg-id-lines span:nth-child(3){width:55%; background:rgba(243,180,0,.5);}
.dg-list{display:grid; gap:10px; margin:0 0 28px;}
.dg-item{display:grid; grid-template-columns:44px 1fr; gap:14px; padding:16px; border-radius:18px; background:#fff; border:1px solid var(--line); transition:border-color .3s ease, transform .35s cubic-bezier(.16,1,.3,1), box-shadow .35s ease;}
.dg-item:hover{border-color:rgba(243,180,0,.7); transform:translateX(4px); box-shadow:0 20px 36px -30px rgba(14,107,84,.6);}
.dg-item > i{width:44px; height:44px; border-radius:13px; display:grid; place-items:center; background:var(--navy); color:var(--gold); font-size:1.2rem;}
.dg-item h4{font-size:1rem; font-weight:600; letter-spacing:-0.01em; margin-bottom:3px;}
.dg-item p{color:var(--ink-dim); font-size:.86rem; line-height:1.55; font-weight:500;}
.dg-item p b{color:var(--ink); font-weight:600;}
.dg-cta{margin-top:auto; display:flex; flex-wrap:wrap; align-items:center; gap:16px;}
.dg-cta small{color:var(--ink-dim); font-size:.82rem; font-weight:500;}
.dg-tide .dg-cta small{color:rgba(255,255,255,.6);}
/* business card art */
.dg-card{position:relative; flex-shrink:0; width:190px; height:120px; border-radius:16px; padding:14px 16px; color:#fff; overflow:hidden; transform:rotate(-5deg); transition:transform .5s cubic-bezier(.34,1.56,.64,1); box-shadow:0 26px 40px -20px rgba(0,0,0,.6);
  background:radial-gradient(80% 90% at 100% 0%, rgba(255,224,138,.5) 0%, rgba(255,224,138,0) 60%), linear-gradient(135deg, var(--gold) 0%, var(--gold-deep) 100%);}
.dg-tide:hover .dg-card{transform:rotate(0) translateY(-4px);}
.dg-card::after{content:""; position:absolute; right:-40px; bottom:-60px; width:140px; height:140px; border-radius:50%; border:1.5px solid rgba(23,26,46,.14);}
.dg-card-top{display:flex; justify-content:space-between; align-items:center; color:#171a2e;}
.dg-card-top b{font-size:.62rem; font-weight:800; letter-spacing:.14em;}
.dg-card-top i{font-size:1.1rem;}
.dg-chip{width:30px; height:22px; border-radius:5px; margin:14px 0 10px; background:linear-gradient(135deg, #FFE08A, #C98A00); border:1px solid rgba(23,26,46,.25);}
.dg-card-num{font-size:.78rem; font-weight:700; letter-spacing:.18em; color:#171a2e;}
.dg-perks{display:grid; grid-template-columns:1fr 1fr; gap:10px; margin:0 0 20px;}
.dg-perk{padding:18px; border-radius:18px; background:rgba(255,255,255,.07); border:1px solid rgba(255,255,255,.12); transition:background .3s ease, border-color .3s ease;}
.dg-perk:hover{background:rgba(255,255,255,.12); border-color:rgba(243,180,0,.5);}
.dg-perk i{display:block; font-size:1.4rem; color:var(--gold); margin-bottom:12px;}
.dg-perk h4{color:#fff; font-size:.98rem; font-weight:600; letter-spacing:-0.01em; margin-bottom:4px;}
.dg-perk p{color:rgba(255,255,255,.66); font-size:.84rem; line-height:1.55; font-weight:500;}
.dg-docs{display:flex; gap:12px; align-items:flex-start; padding:14px 16px; border-radius:16px; background:rgba(0,0,0,.18); color:rgba(255,255,255,.8); font-size:.86rem; line-height:1.55; font-weight:500; margin-bottom:26px;}
.dg-docs i{color:var(--gold); font-size:1.15rem; flex-shrink:0; margin-top:1px;}
.dg-docs b{color:#fff; font-weight:600;}
.dg-also{display:flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:10px 18px; margin-top:22px; padding:18px 22px; border-radius:22px; border:1.5px dashed var(--line); color:var(--ink-dim); font-size:.92rem; font-weight:500; text-align:center;}
.dg-also span{display:inline-flex; align-items:center; gap:8px; padding:6px 12px; border-radius:100px; background:var(--paper); border:1px solid var(--line); color:var(--ink); font-weight:600; font-size:.84rem;}
.dg-also span i{color:var(--navy);}
.dg-also a{display:inline-flex; align-items:center; gap:6px; color:var(--gold-deep); font-weight:700;}
@media(max-width:1000px){ .dg-grid{grid-template-columns:1fr;} }
@media(max-width:860px){ .dg-sec{padding:80px 0;} .dg-head{margin-bottom:36px;} }
@media(max-width:560px){
  .dg-panel{border-radius:24px; padding:24px 18px;}
  .dg-top{flex-direction:column-reverse; gap:18px;}
  .dg-perks{grid-template-columns:1fr;}
  .dg-item{grid-template-columns:40px 1fr; padding:14px;}
  .dg-item > i{width:40px; height:40px;}
  .dg-cta a{flex:1 1 auto; justify-content:space-between;}
}

/* ===== HOW IT WORKS (receipts) ===== */
.hw-sec{padding:110px 0 120px; border-top:1px solid var(--line); background:radial-gradient(50% 60% at 50% 0%, rgba(20,184,166,.10) 0%, rgba(20,184,166,0) 70%), var(--paper);}
.hw-head{display:grid; grid-template-columns:1fr 1fr; gap:48px; align-items:end; margin-bottom:56px;}
.hw-head h2{font-size:clamp(2.1rem, 4vw, 3.2rem); line-height:1.1;}
.hw-head h2 em{color:var(--navy);}
.hw-head p{color:var(--ink-dim); font-size:1rem; line-height:1.7; font-weight:500; max-width:470px; justify-self:end;}
.hw-printer{position:relative; z-index:2; height:58px; border-radius:20px; display:flex; align-items:center; justify-content:space-between; padding:0 24px; background:linear-gradient(180deg, #0F7259 0%, var(--navy-deep) 100%); box-shadow:0 20px 40px -24px rgba(8,74,59,.8);}
.hw-printer::after{content:""; position:absolute; left:24px; right:24px; bottom:12px; height:6px; border-radius:6px; background:#04291F;}
.hw-printer span{display:inline-flex; align-items:center; gap:10px; color:rgba(255,255,255,.8); font-size:.76rem; font-weight:700; letter-spacing:.12em; text-transform:uppercase; margin-top:-10px;}
.hw-led{width:9px; height:9px; border-radius:50%; background:var(--mint); animation:bp-pulse 2s ease-out infinite;}
.hw-printer b{color:var(--gold-soft); font-size:.76rem; font-weight:700; letter-spacing:.08em; margin-top:-10px;}
.hw-rolls{position:relative; z-index:1; display:grid; grid-template-columns:repeat(4, 1fr); gap:18px; padding:0 30px; margin-top:-16px;}
.hw-step{filter:drop-shadow(0 22px 26px rgba(8,74,59,.14));}
.hw-rc{--s:9px; position:relative; height:100%; background:#fff; padding:34px 24px calc(28px + var(--s));
  -webkit-mask:conic-gradient(from -45deg at bottom, #0000, #000 1deg 89deg, #0000 90deg) 50% / calc(2 * var(--s)) 100%;
  mask:conic-gradient(from -45deg at bottom, #0000, #000 1deg 89deg, #0000 90deg) 50% / calc(2 * var(--s)) 100%;
  transition:transform .45s cubic-bezier(.16,1,.3,1);}
.hw-step:hover .hw-rc{transform:translateY(6px);}
.hw-rc-top{display:flex; align-items:center; justify-content:space-between; margin-bottom:22px;}
.hw-rc-top small{font-size:.72rem; font-weight:700; letter-spacing:.14em; color:var(--ink-dim);}
.hw-rc-top i{width:46px; height:46px; border-radius:14px; display:grid; place-items:center; background:var(--navy); color:var(--gold); font-size:1.3rem;}
.hw-step:nth-child(2) .hw-rc-top i{background:var(--gold); color:#171a2e;}
.hw-step:nth-child(3) .hw-rc-top i{background:var(--mint); color:#fff;}
.hw-step:nth-child(4) .hw-rc-top i{background:var(--ink); color:var(--gold-soft);}
.hw-num{display:block; font-size:3.4rem; font-weight:400; letter-spacing:-0.06em; line-height:1; color:transparent; -webkit-text-stroke:1.2px rgba(18,58,46,.28); margin-bottom:14px;}
.hw-rc h4{font-size:1.14rem; font-weight:600; letter-spacing:-0.015em; margin-bottom:8px;}
.hw-rc p{color:var(--ink-dim); font-size:.88rem; line-height:1.6; font-weight:500;}
.hw-rule{height:0; border-top:1.5px dashed var(--line); margin:20px 0 14px;}
.hw-kv{display:flex; justify-content:space-between; gap:10px; font-size:.78rem; font-weight:600; color:var(--ink-dim); padding:3px 0;}
.hw-kv b{color:var(--ink); font-weight:700; text-align:right;}
.hw-ok{display:inline-flex; align-items:center; gap:6px; margin-top:14px; padding:5px 11px; border-radius:100px; background:rgba(20,184,166,.12); color:var(--navy); font-size:.74rem; font-weight:700; letter-spacing:.04em;}
@media(max-width:1100px){ .hw-rolls{padding:0 14px; gap:12px;} .hw-rc{padding-left:18px; padding-right:18px;} }
@media(max-width:960px){
  .hw-sec{padding:80px 0 90px;}
  .hw-head{grid-template-columns:1fr; gap:14px; margin-bottom:36px;}
  .hw-head p{justify-self:start;}
  .hw-rolls{grid-template-columns:1fr 1fr; row-gap:22px;}
}
@media(max-width:600px){
  .hw-printer{height:52px; padding:0 18px;}
  .hw-printer b{display:none;}
  .hw-rolls{grid-template-columns:1fr; padding:0 12px; row-gap:16px;}
}

/* ===== WHY (receipt + benefit rows) ===== */
.wp-sec{position:relative; overflow:hidden; padding:110px 0; color:#fff;
  background:radial-gradient(40% 55% at 0% 100%, rgba(243,180,0,.16) 0%, rgba(243,180,0,0) 70%), radial-gradient(35% 50% at 100% 0%, rgba(20,184,166,.18) 0%, rgba(20,184,166,0) 70%), linear-gradient(155deg, #0B5A47 0%, var(--navy-deep) 45%, #04291F 100%);}
.wp-sec::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(55% 70% at 25% 45%, #000 0%, transparent 80%); mask-image:radial-gradient(55% 70% at 25% 45%, #000 0%, transparent 80%);}
.wp-grid{position:relative; display:grid; grid-template-columns:.92fr 1.08fr; gap:clamp(40px, 6vw, 90px); align-items:center;}
.wp-left h2{color:#fff; font-size:clamp(2.1rem, 3.8vw, 3.2rem); line-height:1.1; letter-spacing:-0.035em; margin-bottom:14px;}
.wp-left h2 em{color:var(--gold-soft);}
.wp-left .gs-reveal > p{color:rgba(255,255,255,.72); font-size:1rem; line-height:1.7; font-weight:500; max-width:470px; margin-bottom:44px;}
.wp-rcw{position:relative; max-width:430px; filter:drop-shadow(0 34px 40px rgba(0,0,0,.35));}
.wp-rc{--s:9px; position:relative; background:#fff; color:var(--ink); border-radius:24px 24px 0 0; padding:26px 24px calc(24px + var(--s));
  -webkit-mask:conic-gradient(from -45deg at bottom, #0000, #000 1deg 89deg, #0000 90deg) 50% / calc(2 * var(--s)) 100%;
  mask:conic-gradient(from -45deg at bottom, #0000, #000 1deg 89deg, #0000 90deg) 50% / calc(2 * var(--s)) 100%;}
.wp-rc-head{display:flex; align-items:center; gap:14px;}
.wp-rc-ok{width:50px; height:50px; border-radius:50%; display:grid; place-items:center; flex-shrink:0; background:var(--mint); color:#fff; font-size:1.35rem; animation:bp-pulse 2.4s ease-out infinite;}
.wp-rc-head b{display:block; font-size:1.12rem; font-weight:700; letter-spacing:-0.015em; line-height:1.25;}
.wp-rc-head small{display:block; font-size:.78rem; font-weight:600; color:var(--ink-dim);}
.wp-rc-rule{height:0; border-top:1.5px dashed var(--line); margin:18px 0 10px;}
.wp-rr{display:flex; align-items:center; justify-content:space-between; gap:12px; padding:9px 12px; margin:0 -12px; border-radius:12px; font-size:.86rem; font-weight:600; color:var(--ink-dim); transition:background .4s ease, color .4s ease;}
.wp-rr b{display:inline-flex; align-items:center; gap:8px; color:var(--ink); font-weight:700; text-align:right; transition:color .4s ease;}
.wp-rr b::before{content:""; width:7px; height:7px; border-radius:50%; background:var(--gold); opacity:0; transform:scale(0); transition:opacity .3s ease, transform .4s cubic-bezier(.34,1.56,.64,1);}
.wp-rr.on{background:rgba(20,184,166,.12); color:var(--ink);}
.wp-rr.on b{color:var(--navy);}
.wp-rr.on b::before{opacity:1; transform:scale(1);}
.wp-rr .st{padding:3px 10px; border-radius:100px; background:rgba(20,184,166,.14); color:var(--navy); font-size:.76rem; letter-spacing:.02em;}
.wp-rr .st::before{display:none;}
.wp-rr.on .st{background:var(--mint); color:#fff;}
.wp-rc-foot{display:flex; align-items:center; gap:10px; margin-top:14px; padding-top:14px; border-top:1.5px dashed var(--line); font-size:.8rem; font-weight:600; color:var(--ink-dim);}
.wp-rc-foot i{color:var(--navy); font-size:1.05rem;}
.wp-stamp{position:absolute; z-index:2; top:-18px; right:-18px; width:74px; height:74px; border-radius:50%; display:grid; place-items:center; text-align:center; background:var(--gold); color:#171a2e; box-shadow:0 14px 30px -12px rgba(0,0,0,.5), 0 0 0 6px rgba(243,180,0,.2);}
.wp-stamp i{font-size:1.3rem; display:block; margin:0 auto 1px;}
.wp-stamp small{display:block; font-size:.54rem; font-weight:800; letter-spacing:.1em;}
.wp-list{display:grid; gap:12px;}
.wp-row{position:relative; overflow:hidden; display:grid; grid-template-columns:52px 1fr auto; gap:18px; align-items:center; padding:18px 22px 18px 18px; border-radius:20px; background:rgba(255,255,255,.04); border:1px solid rgba(255,255,255,.1); cursor:default; outline:none; transition:background .45s ease, border-color .45s ease, left .5s cubic-bezier(.16,1,.3,1), box-shadow .45s ease; left:0;}
.wp-row::before{content:""; position:absolute; left:0; top:14px; bottom:14px; width:3px; border-radius:0 3px 3px 0; background:var(--gold); transform:scaleY(0); transition:transform .45s cubic-bezier(.16,1,.3,1);}
.wp-row.on{background:rgba(255,255,255,.1); border-color:rgba(243,180,0,.45); left:8px; box-shadow:0 26px 44px -30px rgba(0,0,0,.7);}
.wp-row.on::before{transform:scaleY(1);}
.wp-row:focus-visible{box-shadow:0 0 0 3px var(--gold);}
.wp-ico{width:52px; height:52px; border-radius:15px; display:grid; place-items:center; font-size:1.4rem; background:rgba(243,180,0,.14); color:var(--gold); transition:background .45s ease, color .45s ease, transform .5s cubic-bezier(.34,1.56,.64,1);}
.wp-row.on .wp-ico{background:var(--gold); color:#171a2e; transform:scale(1.06);}
.wp-row h4{color:#fff; font-size:1.08rem; font-weight:600; letter-spacing:-0.015em; line-height:1.3; margin-bottom:3px;}
.wp-row p{color:rgba(255,255,255,.64); font-size:.9rem; line-height:1.55; font-weight:500; transition:color .45s ease;}
.wp-row.on p{color:rgba(255,255,255,.85);}
.wp-n{font-size:.8rem; font-weight:700; letter-spacing:.08em; color:rgba(255,255,255,.28); transition:color .45s ease;}
.wp-row.on .wp-n{color:var(--gold-soft);}
@media(max-width:1000px){
  .wp-sec{padding:80px 0;}
  .wp-grid{grid-template-columns:1fr; gap:44px;}
  .wp-rcw{max-width:460px;}
}
@media(max-width:560px){
  .wp-rcw{margin-right:14px;}
  .wp-rc{padding:22px 18px calc(20px + var(--s));}
  .wp-rr{font-size:.8rem; padding:8px 10px; margin:0 -10px;}
  .wp-stamp{width:62px; height:62px; top:-14px; right:-14px;}
  .wp-row{grid-template-columns:44px 1fr; gap:14px; padding:16px 16px 16px 14px;}
  .wp-row.on{left:0;}
  .wp-ico{width:44px; height:44px; font-size:1.2rem; border-radius:13px;}
  .wp-n{display:none;}
  .wp-row h4{font-size:1rem;}
  .wp-row p{font-size:.86rem;}
}
@media (prefers-reduced-motion: reduce){ .wp-rc-ok{animation:none;} }
/* ===== FAQ ===== */
.fq-sec{background:var(--paper); border-top:1px solid var(--line); padding:110px 0;}
.fq-grid{display:grid; grid-template-columns:.8fr 1.2fr; gap:60px; 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; max-width:420px;}
.fq-help{position:relative; overflow:hidden; padding:26px; border-radius:24px; color:#fff; background:radial-gradient(60% 80% at 100% 0%, rgba(243,180,0,.25) 0%, rgba(243,180,0,0) 60%), linear-gradient(160deg, #0F7259 0%, var(--navy-deep) 60%, #05302A 100%); max-width:420px;}
.fq-help i.big{width:48px; height:48px; border-radius:14px; display:grid; place-items:center; background:var(--gold); color:#171a2e; font-size:1.3rem; margin-bottom:16px;}
.fq-help h4{color:#fff; font-size:1.2rem; font-weight:500; letter-spacing:-0.02em; margin-bottom:6px;}
.fq-help p{color:rgba(255,255,255,.72); font-size:.9rem; line-height:1.6; font-weight:500; margin-bottom:18px;}
.fq-help .pill-btn{font-size:.92rem;}
.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 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% 80% at 0% 100%, rgba(255,255,255,.35) 0%, rgba(255,255,255,0) 60%), linear-gradient(140deg, var(--gold-soft) 0%, var(--gold) 55%, var(--gold-deep) 100%);}
.ct-box::before{content:""; position:absolute; right:-120px; top:-160px; width:420px; height:420px; border-radius:50%; border:1.5px dashed rgba(23,26,46,.16); animation:bp-spin 50s linear infinite;}
.ct-box::after{content:""; position:absolute; right:60px; bottom:-90px; width:180px; height:180px; border-radius:50%; background:rgba(255,255,255,.18);}
.ct-box > *{position:relative; z-index:1;}
.ct-box h2{color:#171a2e; 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(--navy-deep);}
.ct-box > div > p{color:rgba(23,26,46,.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-actions .ghost-d{border-color:rgba(23,26,46,.3); color:#171a2e!important;}
.ct-actions .ghost-d:hover{background:#171a2e; color:#fff!important; border-color:#171a2e;}
.ct-list{display:grid; gap:10px; padding:22px; border-radius:24px; background:rgba(255,255,255,.55); border:1px solid rgba(255,255,255,.7); backdrop-filter:blur(6px); -webkit-backdrop-filter:blur(6px);}
.ct-list div{display:flex; align-items:center; gap:14px; padding:12px 14px; border-radius:16px; background:#fff; color:var(--ink); font-weight:600; font-size:.94rem;}
.ct-list i{width:36px; height:36px; border-radius:11px; display:grid; place-items:center; background:var(--navy); color:var(--gold); 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; padding:30px 20px;} .ct-list{padding:12px;} .ct-actions a{flex:1 1 auto; justify-content:center;} }
@media (prefers-reduced-motion: reduce){ .ct-box::before, .hw-led{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;}
}
