/* CashPicks redesign demo — layout pattern after a bank homepage, own brand */
:root{
  --green:#007A52; --green-d:#00603F; --green-dd:#004E34;
  --ink:#062A20; --ink-2:#0C3A2D;
  --lime:#C8F169; --lime-l:#E6FAB8; --mint:#EAF6EF;
  --cream:#FBF8F1; --white:#fff; --text:#16231E; --muted:#4A5B54; --line:#DCE5E0;
  --fh:"Bricolage Grotesque",system-ui,sans-serif; --fb:"Figtree",system-ui,sans-serif;
  --wrap:1240px; --r:6px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--fb);color:var(--text);background:var(--white);font-size:17px;line-height:1.6;overflow-x:clip}
img{max-width:100%;display:block}
a{color:inherit}
h1,h2,h3{font-family:var(--fh);line-height:1.08;letter-spacing:-.02em;font-weight:800}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 32px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}

/* buttons */
.btn{display:inline-flex;align-items:center;gap:10px;font:600 16px/1 var(--fb);padding:17px 26px;border-radius:var(--r);text-decoration:none;border:2px solid transparent;cursor:pointer;transition:transform .2s,background .2s,color .2s,box-shadow .2s}
.btn svg{width:18px;height:18px;transition:transform .2s}
.btn:hover svg{transform:translateX(4px)}
.btn-white{background:#fff;color:var(--green)}
.btn-white:hover{background:var(--lime);color:var(--ink)}
.btn-lime{background:var(--lime);color:var(--ink)}
.btn-lime:hover{background:#fff}
.btn-green{background:var(--green);color:#fff}
.btn-green:hover{background:var(--ink)}
.btn-line{border-color:currentColor;color:#fff;background:transparent}
.btn-line:hover{background:#fff;color:var(--ink)}
.btn-line.dark{color:var(--green)}
.btn-line.dark:hover{background:var(--green);color:#fff;border-color:var(--green)}
.link{font-weight:600;text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1.5px}
.link:hover{color:var(--green)}

/* header */
.hd{position:sticky;top:0;z-index:50;background:#fff;transition:box-shadow .25s}
.hd.scrolled{box-shadow:0 6px 24px rgba(6,42,32,.08)}
.hd-top{display:flex;align-items:center;gap:40px;height:74px}
.logo{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink)}
.logo svg{width:40px;height:40px;flex:none;overflow:visible}
.lm-bg{fill:var(--ink)}
.lm-c,.lm-ar{fill:none;stroke-width:6.5;stroke-linecap:round;stroke-linejoin:round}
.lm-c{stroke:#fff}
.lm-ar{stroke:var(--lime);transition:transform .35s cubic-bezier(.3,1.4,.5,1)}
.logo:hover .lm-ar{transform:translateX(3px)}
.ft .logo .lm-bg{fill:var(--lime)}
.ft .logo .lm-c{stroke:var(--ink)}
.ft .logo .lm-ar{stroke:var(--green)}
.logo b{font:800 26px/1 var(--fh);letter-spacing:-.035em}
.logo b i{font-style:normal;color:var(--green)}
.tabs{display:flex;gap:28px;font-size:15px}
.tabs a{text-decoration:none;padding:6px 0;color:var(--muted)}
.tabs a.on{color:var(--green);font-weight:600;box-shadow:inset 0 -2px 0 var(--green)}
.util{margin-left:auto;display:flex;align-items:center;gap:26px;font-size:15px}
.util a{display:flex;align-items:center;gap:7px;text-decoration:none}
.util svg{width:18px;height:18px}
.util .signin{white-space:nowrap;border:1.5px solid var(--green);color:var(--green);padding:10px 18px;border-radius:var(--r);font-weight:600}
.util .signin:hover{background:var(--green);color:#fff}
.hd-nav{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.hd-nav ul{list-style:none;display:flex;justify-content:space-between;height:52px;align-items:center}
.hd-nav a{text-decoration:none;font-size:15px;font-weight:500;display:flex;align-items:center;gap:6px;padding:14px 0;position:relative}
.hd-nav a::after{content:"";position:absolute;left:0;right:0;bottom:6px;height:2px;background:var(--green);transform:scaleX(0);transform-origin:left;transition:transform .25s}
.hd-nav a:hover::after{transform:scaleX(1)}
.hd-nav svg{width:12px;height:12px;opacity:.6}
.dd-btn{font:500 15px var(--fb);color:inherit;background:none;border:0;cursor:pointer;display:flex;align-items:center;gap:6px;padding:14px 0}
.dd-btn svg{transition:transform .3s}
.has-dd{position:relative}
.has-dd.open .dd-btn svg,.has-dd:hover .dd-btn svg{transform:rotate(180deg)}
.dd{position:absolute;top:100%;left:-20px;width:300px;background:#fff;border-radius:14px;padding:10px;box-shadow:0 24px 50px rgba(6,42,32,.16);border:1px solid var(--line);opacity:0;visibility:hidden;transform:translateY(10px);transition:opacity .25s,transform .25s,visibility .25s;z-index:60}
.has-dd:hover .dd,.has-dd:focus-within .dd,.has-dd.open .dd{opacity:1;visibility:visible;transform:none}
.hd-nav .dd a{display:block;padding:12px 14px;border-radius:10px}
.hd-nav .dd a::after{display:none}
.hd-nav .dd a:hover{background:var(--mint)}
.dd b{display:block;font-weight:700;color:var(--ink)}
.dd span{display:block;font-size:13px;color:var(--muted);font-weight:400}
.burger{display:none;margin-left:auto;background:none;border:0;width:44px;height:44px;cursor:pointer}
.burger span{display:block;width:24px;height:2px;background:var(--ink);margin:5px auto;transition:.25s}

/* notice */
.notice{background:var(--ink);color:#fff;padding:22px 0}
.notice .wrap{display:flex;gap:16px;align-items:flex-start}
.notice .ico{flex:none;width:28px;height:28px;border-radius:50%;background:var(--lime);color:var(--ink);display:grid;place-items:center;font:800 15px var(--fh)}
.notice strong{display:block;font-size:17px}
.notice p{font-size:15px;opacity:.85}
.notice a{display:inline-flex;gap:6px;margin-top:10px;font-weight:600;font-size:15px}

/* split blocks */
.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:640px}
.split .txt{display:flex;flex-direction:column;justify-content:center;padding:72px max(32px,calc((100vw - var(--wrap))/2 + 32px));padding-right:72px}
.split.rev .txt{order:2;padding-left:72px;padding-right:max(32px,calc((100vw - var(--wrap))/2 + 32px))}
.split .media{position:relative;overflow:hidden}
.split .media img{width:100%;height:100%;object-fit:cover;transform:scale(1.08);transition:transform 1.6s cubic-bezier(.2,.7,.2,1)}
.split .media.in img{transform:scale(1)}
.txt h1,.txt h2{font-size:clamp(38px,4.2vw,60px);margin-bottom:22px}
.txt p.lead{font-size:20px;margin-bottom:24px;max-width:520px}
.txt .actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:12px}

.hero .txt{background:var(--green);color:#fff}
.hero h1 em{font-style:normal;color:var(--lime)}
.rep{font-size:14px;line-height:1.55;max-width:520px;border-left:3px solid var(--lime);padding-left:14px;margin-bottom:10px}
.rep b{font-weight:700}
.fine{font-size:13px;opacity:.8;margin:10px 0 18px}
.chips{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:26px}
.chips span{font-size:14px;font-weight:600;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.25);padding:7px 12px;border-radius:40px;display:flex;align-items:center;gap:6px}
.chips svg{width:14px;height:14px;color:var(--lime)}
.hero .media .tag{position:absolute;left:28px;bottom:28px;background:#fff;border-radius:14px;padding:14px 18px;display:flex;gap:12px;align-items:center;box-shadow:0 18px 40px rgba(0,0,0,.18);font-size:14px;animation:floaty 5s ease-in-out infinite}
.tag .dot{width:38px;height:38px;border-radius:10px;background:var(--lime);display:grid;place-items:center;color:var(--ink)}
.tag .dot svg{width:20px;height:20px}
.tag b{display:block;font:800 18px var(--fh);color:var(--ink)}
@keyframes floaty{50%{transform:translateY(-8px)}}

/* e-transfer section */
.etr{background:var(--lime);min-height:640px}
.etr .vis{position:relative;display:grid;place-items:center;padding:60px 32px}
.tiles{display:grid;grid-template-columns:repeat(4,86px);gap:20px}
.tiles span{height:86px;border-radius:12px;background:#fff;display:grid;place-items:center;font:800 22px var(--fh);color:var(--ink);box-shadow:0 6px 16px rgba(6,42,32,.08)}
.tiles span:nth-child(3n){background:var(--ink);color:var(--lime)}
.tiles span:nth-child(5n){background:var(--green);color:#fff}
.phone{position:absolute;width:250px;height:470px;border-radius:38px;background:var(--ink);padding:12px;box-shadow:0 30px 60px rgba(6,42,32,.35);transform:rotate(-6deg)}
.phone .scr{background:#F4F7F5;border-radius:28px;height:100%;padding:44px 14px 14px;position:relative;overflow:hidden}
.phone .scr::before{content:"";position:absolute;top:12px;left:50%;width:80px;height:20px;margin-left:-40px;background:var(--ink);border-radius:20px}
.notif{background:#fff;border-radius:14px;padding:12px;margin-bottom:10px;box-shadow:0 4px 12px rgba(0,0,0,.06);font-size:12px;line-height:1.35;opacity:0;transform:translateY(-16px);transition:opacity .5s,transform .5s}
.in .notif{opacity:1;transform:none}
.in .notif:nth-child(2){transition-delay:.35s}.in .notif:nth-child(3){transition-delay:.7s}
.notif small{color:var(--muted);display:block}
.notif b{font:800 13px var(--fh);color:var(--ink)}
.notif .amt{font:800 30px var(--fh);color:var(--green);letter-spacing:-.03em;margin-top:4px}
.etr .txt{color:var(--ink)}
.etr .txt p{max-width:480px;margin-bottom:14px}
.etr .note{font-size:13px;color:var(--ink-2);opacity:.8}

/* dark split */
.dark .txt{background:var(--ink);color:#fff}
.dark .txt p{opacity:.88;max-width:470px;margin-bottom:22px}
.ticks{list-style:none;margin:6px 0 26px}
.ticks li{position:relative;padding-left:32px;margin-bottom:10px}
.ticks li::before{content:"";position:absolute;left:0;top:4px;width:20px;height:20px;border-radius:50%;background:var(--lime) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23062A20' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12l5 5 9-10'/%3E%3C/svg%3E") center/12px no-repeat}

/* products band with swirl */
.prod{background:var(--green);color:#fff;position:relative;overflow:hidden;padding:96px 0 110px}
.swirl{position:absolute;inset:-10% -5% auto auto;width:900px;height:900px;pointer-events:none}
.swirl path{fill:none;stroke:var(--green-dd);stroke-width:110;stroke-linecap:round}
.prod .wrap{position:relative}
.prod h2{font-size:clamp(34px,3.6vw,52px);margin-bottom:16px}
.prod .intro{max-width:640px;font-size:18px;margin-bottom:48px;opacity:.92}
.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.card{background:#fff;color:var(--text);padding:30px 28px;border-radius:4px;display:flex;flex-direction:column;transition:transform .3s,box-shadow .3s}
.card:hover{transform:translateY(-6px);box-shadow:0 22px 40px rgba(0,0,0,.18)}
.card h3{font-size:26px;margin-bottom:8px;color:var(--ink)}
.card p{font-size:15px;color:var(--muted);margin-bottom:22px;flex:1}
.card a{font-size:15px}

/* calculator + content */
.calc-sec{background:var(--cream);padding:96px 0}
.calc-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:64px;align-items:start}
.eyebrow{font:700 13px var(--fb);letter-spacing:.14em;text-transform:uppercase;color:var(--green);margin-bottom:14px}
.calc-sec h2{font-size:clamp(32px,3.4vw,48px);color:var(--ink);margin-bottom:18px}
.calc-sec p{margin-bottom:16px;max-width:560px}
.calc{position:relative;overflow:hidden;isolation:isolate;background:linear-gradient(155deg,#0C3A2D 0%,#062A20 70%);color:#fff;border-radius:24px;padding:32px;box-shadow:0 30px 70px rgba(6,42,32,.28),inset 0 1px 0 rgba(255,255,255,.08)}
.calc-glow{position:absolute;z-index:-1;width:340px;height:340px;right:-120px;top:-140px;border-radius:50%;background:radial-gradient(circle,rgba(200,241,105,.35),transparent 65%);animation:glow 7s ease-in-out infinite}
@keyframes glow{50%{transform:translate(-40px,30px) scale(1.15)}}
.calc-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}
.calc-pill{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:600;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);padding:6px 12px;border-radius:40px}
.calc-pill i{width:8px;height:8px;border-radius:50%;background:var(--lime);box-shadow:0 0 0 0 rgba(200,241,105,.7);animation:pulse 2s infinite}
@keyframes pulse{70%{box-shadow:0 0 0 8px rgba(200,241,105,0)}100%{box-shadow:0 0 0 0 rgba(200,241,105,0)}}
.calc-cap{font-size:13px;color:#A9C2B8}
.calc-q{display:block;font-weight:600;font-size:15px;color:#C9D6D0;margin:0 0 6px!important}
.calc-amt output{display:block;font:800 clamp(48px,6vw,64px)/1 var(--fh);letter-spacing:-.04em;color:#fff;margin-bottom:22px;font-variant-numeric:tabular-nums}
.range-wrap{position:relative;padding-top:34px}
.calc input[type=range]{-webkit-appearance:none;appearance:none;width:100%;height:10px;border-radius:10px;outline:none;cursor:pointer;margin:0;background:linear-gradient(90deg,var(--lime) var(--p,29%),rgba(255,255,255,.14) var(--p,29%))}
.calc input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:30px;height:30px;border-radius:50%;background:#fff;border:7px solid var(--lime);box-shadow:0 6px 18px rgba(0,0,0,.35);transition:transform .2s}
.calc input[type=range]::-moz-range-thumb{width:16px;height:16px;border-radius:50%;background:#fff;border:7px solid var(--lime);box-shadow:0 6px 18px rgba(0,0,0,.35)}
.calc input[type=range]:active::-webkit-slider-thumb{transform:scale(1.18)}
.calc input[type=range]:focus-visible{box-shadow:0 0 0 3px rgba(200,241,105,.4)}
.bubble{position:absolute;top:0;left:var(--bx,29%);transform:translateX(-50%);background:var(--lime);color:var(--ink);font:800 13px var(--fh);padding:4px 10px;border-radius:8px;white-space:nowrap;pointer-events:none;transition:transform .2s}
.bubble::after{content:"";position:absolute;left:50%;bottom:-5px;margin-left:-5px;border:5px solid transparent;border-bottom:0;border-top-color:var(--lime)}
.calc .scale{display:flex;justify-content:space-between;font-size:13px;color:#8FA89E;margin:10px 0 24px}
.terms{position:relative;display:grid;grid-template-columns:repeat(4,1fr);background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);border-radius:14px;padding:5px;margin-bottom:24px}
.terms .seg{position:absolute;top:5px;bottom:5px;left:5px;width:calc((100% - 10px)/4);border-radius:10px;background:#fff;box-shadow:0 6px 16px rgba(0,0,0,.25);transform:translateX(calc(100% * var(--i,1)));transition:transform .45s cubic-bezier(.3,1.4,.5,1)}
.terms button{position:relative;z-index:1;font:600 14px var(--fb);padding:11px 0;border:0;background:none;color:#C9D6D0;cursor:pointer;transition:color .3s}
.terms button.on{color:var(--ink)}
.res{display:flex;align-items:center;gap:22px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:18px;margin-bottom:22px}
.ring{width:104px;height:104px;flex:none;transform:rotate(-90deg)}
.ring circle{fill:none;stroke-width:14;stroke-linecap:round}
.ring-bg{stroke:rgba(255,255,255,.1)}
.ring-amt{stroke:var(--lime);transition:stroke-dasharray .6s cubic-bezier(.2,.7,.2,1)}
.ring-cost{stroke:#5FD3A0;transition:stroke-dasharray .6s cubic-bezier(.2,.7,.2,1),stroke-dashoffset .6s cubic-bezier(.2,.7,.2,1)}
.res-rows{flex:1;min-width:0}
.res .row{display:flex;justify-content:space-between;align-items:baseline;gap:10px;font-size:14px;color:#C9D6D0;padding:5px 0}
.res .row b{font:800 18px var(--fh);color:#fff;font-variant-numeric:tabular-nums}
.res .row.tot{border-top:1px dashed rgba(255,255,255,.2);margin-top:6px;padding-top:10px}
.res .row.tot b{font-size:26px;color:var(--lime)}
.res .row em{font-style:normal;color:#fff}
.k{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:8px}
.k-amt{background:var(--lime)}.k-cost{background:#5FD3A0}
.pop{display:inline-block;animation:pop .35s ease}
@keyframes pop{40%{transform:translateY(-3px);opacity:.6}}
.calc .btn{width:100%;justify-content:center}
.calc-cta{font-size:17px;padding:19px 26px;box-shadow:0 12px 30px rgba(200,241,105,.25)}
.calc-cta:hover{transform:translateY(-2px);box-shadow:0 18px 36px rgba(200,241,105,.35)}
.calc .fine{color:#8FA89E;opacity:1;margin:14px 0 0}

/* steps */
.steps{padding:96px 0;background:#fff}
.steps h2{font-size:clamp(32px,3.4vw,48px);color:var(--ink);max-width:720px;margin-bottom:48px}
.steps ol{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;counter-reset:s}
.steps li{counter-increment:s;border-top:3px solid var(--line);padding-top:24px;position:relative}
.steps li::before{content:"0" counter(s);font:800 15px var(--fh);color:var(--green);display:block;margin-bottom:12px}
.steps li::after{content:"";position:absolute;top:-3px;left:0;height:3px;width:0;background:var(--green);transition:width 1s cubic-bezier(.2,.7,.2,1)}
.steps.in li::after{width:100%}
.steps li:nth-child(2)::after{transition-delay:.25s}.steps li:nth-child(3)::after{transition-delay:.5s}.steps li:nth-child(4)::after{transition-delay:.75s}
.steps h3{font-size:22px;margin-bottom:8px;color:var(--ink)}
.steps p{font-size:15px;color:var(--muted)}

/* seo article */
.article{padding:0 0 96px;background:#fff}
.article .cols{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:56px}
.article h2{font-size:30px;color:var(--ink);margin:0 0 14px}
.article h3{font-size:21px;color:var(--ink);margin:26px 0 8px}
.article p{margin-bottom:14px;color:#2B3934}
.article ul{margin:0 0 16px 20px}
.article li{margin-bottom:6px}
.tbl{width:100%;border-collapse:collapse;font-size:15px;margin:8px 0 18px}
.tbl th,.tbl td{text-align:left;padding:11px 12px;border-bottom:1px solid var(--line)}
.tbl th{background:var(--mint);font-weight:700;color:var(--ink)}
.callout{background:var(--lime-l);border-left:4px solid var(--green);padding:16px 18px;border-radius:0 8px 8px 0;font-size:15px;margin:18px 0}

/* support */
.support .media img{object-position:center 20%}
.support .txt{background:var(--ink);color:#fff}
.support .txt p{opacity:.88;max-width:470px;margin-bottom:28px}
.support .actions{flex-direction:column;align-items:flex-start}

.support .ext{font-size:14px;opacity:.85;margin-top:22px}
.support .ext a:hover{color:var(--lime)}

/* blog */
.blog{padding:96px 0;background:#fff}
.blog-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:40px;flex-wrap:wrap}
.blog h2{font-size:clamp(32px,3.4vw,48px);color:var(--ink)}
.posts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.post{text-decoration:none;display:flex;flex-direction:column}
.post .thumb{display:block;aspect-ratio:16/10;border-radius:16px;overflow:hidden;background:var(--mint);margin-bottom:18px}
.post img{width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.2,.7,.2,1)}
.post:hover img{transform:scale(1.06)}
.post .cat{font:700 12px var(--fb);letter-spacing:.12em;text-transform:uppercase;color:var(--green);margin-bottom:8px}
.post h3{font-size:21px;line-height:1.25;color:var(--ink);margin-bottom:12px}
.post .more{font-weight:600;font-size:15px;text-decoration:underline;text-underline-offset:4px;margin-top:auto}
.post:hover .more{color:var(--green)}

/* faq */
.faq{padding:96px 0;background:var(--cream)}
.faq .grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:64px}
.faq h2{font-size:clamp(32px,3.4vw,48px);color:var(--ink);margin-bottom:16px}
.faq-list{display:flex;flex-direction:column;gap:12px}
details{background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;transition:border-color .3s,box-shadow .3s,transform .3s}
details:hover{border-color:#B9CCC3}
details[open]{border-color:var(--green);box-shadow:0 18px 40px rgba(6,42,32,.10)}
summary{list-style:none;cursor:pointer;font:700 18px/1.35 var(--fh);color:var(--ink);padding:20px 70px 20px 22px;position:relative;display:flex;gap:14px;align-items:center}
summary::-webkit-details-marker{display:none}
summary .n{flex:none;font:800 13px var(--fh);color:var(--green);background:var(--mint);width:34px;height:34px;border-radius:10px;display:grid;place-items:center;transition:background .3s,color .3s}
details[open] summary .n{background:var(--green);color:#fff}
summary::after{content:"";position:absolute;right:20px;top:50%;width:34px;height:34px;margin-top:-17px;border-radius:50%;background:var(--mint) center/14px 2px no-repeat;background-image:linear-gradient(var(--green),var(--green)),linear-gradient(var(--green),var(--green));background-size:14px 2px,2px 14px;background-position:center;background-repeat:no-repeat;transition:transform .45s cubic-bezier(.3,1.4,.5,1),background-color .3s}
details[open] summary::after{transform:rotate(135deg);background-color:var(--lime)}
summary:focus-visible{outline:3px solid var(--lime);outline-offset:-3px;border-radius:16px}
details .a{padding:0 24px 22px 70px;color:var(--muted);max-width:720px}
details .a>*{transform:translateY(-6px);opacity:0;transition:transform .45s ease .08s,opacity .45s ease .08s}
details.is-open .a>*{transform:none;opacity:1}

/* band */
.band{background:var(--green);color:#fff;padding:64px 0;overflow:hidden}
.band h2,.band .band-t{font-family:var(--fh);line-height:1.08;letter-spacing:-.02em;font-weight:800;font-size:clamp(34px,4vw,58px);white-space:nowrap;margin:0}
.band .band-copy::before{content:attr(data-a)}
.band .band-copy::after{content:attr(data-b);color:var(--lime)}
.band .mq{display:flex;gap:60px;animation:mq 28s linear infinite;width:max-content}
.band .mq span{color:var(--lime)}
@keyframes mq{to{transform:translateX(-50%)}}

/* carousel */
.app{padding:96px 0}
.app .grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:64px;align-items:center}
.app .phone{position:relative;transform:none;margin:0 auto;width:280px;height:540px}
.app .scr{padding-top:54px}
.slide-ui{position:absolute;inset:54px 16px 16px;opacity:0;transform:translateX(30px);transition:opacity .5s,transform .5s}
.slide-ui.on{opacity:1;transform:none}
.ui-h{font:800 22px var(--fh);color:var(--ink);margin-bottom:12px}
.ui-card{background:#fff;border-radius:14px;padding:14px;margin-bottom:10px;font-size:13px;box-shadow:0 4px 12px rgba(0,0,0,.05)}
.ui-card b{font:800 24px var(--fh);color:var(--green);display:block}
.ui-bar{height:8px;border-radius:8px;background:var(--line);overflow:hidden;margin-top:8px}
.ui-bar i{display:block;height:100%;background:var(--green);width:62%}
.ui-btn{background:var(--green);color:#fff;text-align:center;border-radius:10px;padding:12px;font-weight:700;font-size:14px}
.app-bg{position:relative;padding:40px 0}
.app-bg::before{content:"";position:absolute;inset:0 8%;background:var(--lime);border-radius:50% 50% 24px 24px}
.dots{display:flex;gap:10px;margin-bottom:24px}
.dots button{width:14px;height:14px;border-radius:50%;border:2px solid var(--green);background:transparent;cursor:pointer;padding:0}
.dots button.on{background:var(--green)}
.app h2{font-size:clamp(34px,3.6vw,52px);color:var(--green);margin-bottom:16px}
.app .stxt{min-height:150px}
.app .stxt p{font-size:18px;max-width:480px;margin-bottom:24px}

/* footer */
.ft{background:var(--ink);color:#C9D6D0;padding:72px 0 34px;font-size:15px}
.ft-grid{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:40px;margin-bottom:48px}
.ft .logo{color:#fff;margin-bottom:16px}
.ft .logo b i{color:var(--lime)}
.ft h4{font:700 15px var(--fb);color:#fff;margin-bottom:14px}
.ft ul{list-style:none}
.ft li{margin-bottom:9px}
.ft a{text-decoration:none}
.ft a:hover{color:var(--lime)}
.ft-legal{border-top:1px solid rgba(255,255,255,.12);padding-top:26px;font-size:13px;line-height:1.65;color:#9DB0A8}
.ft-legal p{margin-bottom:10px}
.ft-disclaimer{color:#C9D6D0;font-size:14px}
.ft-disclaimer strong{color:#fff}
.legal-row{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}
.legal-row a:hover{color:var(--lime)}
.social{display:flex;gap:10px;margin-top:18px}
.social a{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.08);color:#fff;transition:background .25s,color .25s,transform .25s}
.social a:hover{background:var(--lime);color:var(--ink);transform:translateY(-3px)}
.social svg{width:17px;height:17px}

/* ===== about page ===== */
.tabs a.on{color:var(--green);font-weight:600;box-shadow:inset 0 -2px 0 var(--green)}
.crumbs{background:var(--cream);font-size:14px;padding:12px 0;border-bottom:1px solid var(--line)}
.crumbs .wrap{display:flex;gap:10px;align-items:center;color:var(--muted)}
.crumbs a{color:var(--green);font-weight:600;text-decoration:none}
.crumbs a:hover{text-decoration:underline}
.eyebrow-l{font:700 13px var(--fb);letter-spacing:.14em;text-transform:uppercase;color:var(--lime);margin-bottom:16px}
.about-hero{min-height:600px}

.story{padding:110px 0;background:#fff}
.story-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:72px}
.story h2{font-size:clamp(32px,3.6vw,52px);color:var(--ink);position:sticky;top:150px}
.story-body p{font-size:18px;color:#2B3934;margin-bottom:18px}
.pull{margin-top:34px;padding:62px 30px 28px;background:var(--mint);border-radius:18px;font:700 clamp(22px,2vw,28px)/1.3 var(--fh);color:var(--ink);position:relative}
.pull::before{content:"\201C";position:absolute;top:14px;left:24px;font:800 64px/1 var(--fh);color:var(--green)}
.pull cite{display:block;margin-top:12px;font:500 14px var(--fb);font-style:normal;color:var(--muted)}

.facts{background:var(--lime);padding:70px 0}
.facts-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
.fact{border-left:3px solid var(--ink);padding-left:20px}
.fact b{display:block;font:800 clamp(44px,5vw,68px)/1 var(--fh);letter-spacing:-.04em;color:var(--ink);margin-bottom:10px;font-variant-numeric:tabular-nums}
.fact span{font-size:15px;color:var(--ink-2);display:block;max-width:220px}

.values{background:var(--ink);color:#fff;padding:100px 0;position:relative;overflow:hidden}
.values::before{content:"";position:absolute;width:700px;height:700px;right:-250px;bottom:-350px;border-radius:50%;border:110px solid rgba(0,122,82,.35)}
.values .wrap{position:relative}
.values .eyebrow{color:var(--lime)}
.values h2{font-size:clamp(32px,3.6vw,52px);margin-bottom:48px}
.vgrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.vcard{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:18px;padding:28px 24px;transition:transform .35s,background .35s,border-color .35s}
.vcard:hover{transform:translateY(-8px);background:rgba(255,255,255,.09);border-color:var(--lime)}
.vico{width:52px;height:52px;border-radius:14px;background:var(--lime);color:var(--ink);display:grid;place-items:center;margin-bottom:22px;transition:transform .5s cubic-bezier(.3,1.4,.5,1)}
.vcard:hover .vico{transform:rotate(-8deg) scale(1.08)}
.vico svg{width:26px;height:26px}
.vcard h3{font-size:22px;margin-bottom:10px}
.vcard p{font-size:15px;color:#C9D6D0}

.lend .txt{background:var(--cream);color:var(--ink)}
.lend h2{font-size:clamp(32px,3.4vw,48px)!important}
.lend-cols{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:8px}
.lend h3{font-size:19px;margin-bottom:14px}
.lend .ticks{margin:0}
.lend .ticks li,.crosses li{font-size:15px}
.crosses{list-style:none}
.crosses li{position:relative;padding-left:32px;margin-bottom:10px}
.crosses li::before{content:"";position:absolute;left:0;top:4px;width:20px;height:20px;border-radius:50%;background:#FFE1DC url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23B42318' stroke-width='3.5' stroke-linecap='round'%3E%3Cpath d='M7 7l10 10M17 7L7 17'/%3E%3C/svg%3E") center/11px no-repeat}

.trust{padding:100px 0;background:#fff}
.trust-head{text-align:center;margin-bottom:46px}
.trust h2{font-size:clamp(32px,3.4vw,48px);color:var(--ink)}
.badges{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.badge{text-align:center;padding:30px 22px;border:1px solid var(--line);border-radius:18px;transition:border-color .3s,box-shadow .3s}
.badge:hover{border-color:var(--green);box-shadow:0 18px 40px rgba(6,42,32,.08)}
.badge svg{width:56px;height:56px;padding:14px;border-radius:50%;background:var(--mint);color:var(--green);margin:0 auto 16px;display:block}
.badge b{display:block;font:800 18px var(--fh);color:var(--ink);margin-bottom:6px}
.badge span{font-size:14px;color:var(--muted)}
.trust-note{text-align:center;margin-top:34px;color:var(--muted)}

.resp .txt p{opacity:.9;max-width:470px;margin-bottom:16px}
.resp .txt .link:hover{color:var(--lime)}
.resp-vis{background:var(--green);display:grid;place-items:center}
.meter{position:relative;width:min(380px,80%)}
.meter svg{width:100%;display:block}
.meter path{fill:none;stroke-width:22;stroke-linecap:round}
.m-bg{stroke:rgba(255,255,255,.15)}
.m-fg{stroke:var(--lime);stroke-dasharray:252;stroke-dashoffset:252;transition:stroke-dashoffset 1.8s cubic-bezier(.2,.7,.2,1) .3s}
.resp-vis.in .m-fg{stroke-dashoffset:75}
.m-txt{position:absolute;left:0;right:0;bottom:4px;text-align:center;color:#fff}
.m-txt b{display:block;font:800 26px var(--fh)}
.m-txt span{font-size:14px;opacity:.85}

.cta-band{background:var(--green);color:#fff;padding:80px 0}
.cta-inner{display:flex;justify-content:space-between;align-items:center;gap:32px;flex-wrap:wrap}
.cta-band h2{font-size:clamp(34px,4vw,56px);margin-bottom:10px}
.cta-band p{font-size:18px;opacity:.9}
.cta-band .actions{display:flex;gap:14px;flex-wrap:wrap}

@media (max-width:1100px){
  .vgrid,.badges,.facts-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:860px){
  .story,.values,.trust{padding:64px 0}
  .story-grid{grid-template-columns:minmax(0,1fr);gap:24px}
  .story h2{position:static}
  .story-body p{font-size:16px}
  .lend-cols{grid-template-columns:minmax(0,1fr)}
  .resp-vis{min-height:300px}
  .cta-band{padding:60px 0}
}
@media (max-width:560px){
  .vgrid,.badges{grid-template-columns:minmax(0,1fr)}
  .facts-grid{gap:28px 16px}
  .fact b{font-size:40px}
  .fact{padding-left:14px}
  .cta-band .actions,.cta-band .btn{width:100%;justify-content:center}
}

/* ===== how it works page ===== */
.hd-nav a.on{color:var(--green);font-weight:700}
.tl-sec{padding:100px 0;background:#fff}
.tl-head{text-align:center;margin-bottom:64px}
.tl-head h2{font-size:clamp(32px,3.6vw,52px);color:var(--ink)}
.tl-wrap{position:relative}
.tl-line{position:absolute;left:50%;top:0;bottom:0;width:4px;margin-left:-2px;background:var(--line);border-radius:4px}
.tl-line i{display:block;width:100%;height:0;background:linear-gradient(var(--green),var(--lime));border-radius:4px}
.tl{list-style:none;display:flex;flex-direction:column;gap:90px}
.tl-step{display:grid;grid-template-columns:minmax(0,1fr) 72px minmax(0,1fr);align-items:center;position:relative}
.tl-num{grid-column:2;grid-row:1;justify-self:center;width:58px;height:58px;border-radius:50%;background:#fff;border:4px solid var(--line);display:grid;place-items:center;font:800 22px var(--fh);color:var(--muted);position:relative;z-index:1;transition:background .4s,border-color .4s,color .4s,transform .4s cubic-bezier(.3,1.4,.5,1)}
.tl-step.lit .tl-num{background:var(--green);border-color:var(--lime);color:#fff;transform:scale(1.1)}
.tl-copy{grid-column:1;grid-row:1;padding-right:24px}
.tl-ui{grid-column:3;grid-row:1;padding-left:24px}
.tl-step:nth-child(even) .tl-copy{grid-column:3;padding:0 0 0 24px}
.tl-step:nth-child(even) .tl-ui{grid-column:1;padding:0 24px 0 0}
.tl-time{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:700;color:var(--green-d);background:var(--mint);padding:6px 12px;border-radius:40px;margin-bottom:14px}
.tl-time::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--green)}
.tl-copy h3{font-size:clamp(26px,2.4vw,34px);color:var(--ink);margin-bottom:12px}
.tl-copy p{color:#2B3934;margin-bottom:16px;max-width:500px}
.tl-copy .ticks li{font-size:15px}
.ui-win{background:var(--cream);border:1px solid var(--line);border-radius:22px;padding:24px;max-width:380px;margin:0 auto;box-shadow:0 24px 50px rgba(6,42,32,.10);position:relative}
.ui-win::before{content:"";display:block;width:46px;height:6px;border-radius:6px;background:var(--line);margin:-8px auto 18px}
.ui-row{display:flex;justify-content:space-between;align-items:center;padding:9px 0;font-size:14px;color:var(--muted)}
.ui-row b{font:800 22px var(--fh);color:var(--ink)}
.ui-row.tot{border-top:1px dashed var(--line);margin-top:4px}
.ui-row.tot b{color:var(--green)}
.ui-slide{height:8px;border-radius:8px;background:var(--line);margin:4px 0 10px;overflow:hidden}
.ui-slide i{display:block;height:100%;background:var(--green);border-radius:8px;transform-origin:left;transform:scaleX(0);transition:transform 1.2s cubic-bezier(.2,.7,.2,1) .3s}
.in .ui-slide i{transform:scaleX(1)}
.ui-chip{background:var(--green);color:#fff;font-weight:700;font-size:13px;padding:5px 12px;border-radius:30px}
.ui-field{height:40px;border-radius:10px;background:#fff;border:1px solid var(--line);margin-top:10px}
.ui-field.short{width:65%}
.ui-go{margin-top:16px;background:var(--green);color:#fff;text-align:center;font-weight:700;border-radius:12px;padding:12px;font-size:15px}
.ui-lock{display:flex;align-items:center;gap:10px;font-weight:700;color:var(--ink);margin-bottom:14px}
.ui-lock svg{width:34px;height:34px;padding:7px;border-radius:10px;background:var(--mint);color:var(--green)}
.ui-check{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:13px 14px;margin-top:10px;font-weight:600;font-size:15px;opacity:.35;transform:translateX(-10px);transition:opacity .5s,transform .5s}
.ui-check i{flex:none;width:22px;height:22px;border-radius:50%;background:var(--lime) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23062A20' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12l5 5 9-10'/%3E%3C/svg%3E") center/12px no-repeat;transform:scale(0);transition:transform .4s cubic-bezier(.3,1.4,.5,1)}
.in .ui-check{opacity:1;transform:none}
.in .ui-check i{transform:scale(1)}
.in .ui-check:nth-of-type(2),.in .ui-check:nth-of-type(2) i{transition-delay:.5s}
.in .ui-check:nth-of-type(3),.in .ui-check:nth-of-type(3) i{transition-delay:.9s}
.in .ui-check:nth-of-type(4),.in .ui-check:nth-of-type(4) i{transition-delay:1.3s}
.ui-sign{background:#fff;border:1px dashed #B9CCC3;border-radius:12px;margin-top:12px;height:64px;display:grid;place-items:center}
.ui-sign svg{width:150px}
.ui-sign path{fill:none;stroke:var(--ink);stroke-width:2.5;stroke-linecap:round;stroke-dasharray:260;stroke-dashoffset:260;transition:stroke-dashoffset 1.6s ease .4s}
.in .ui-sign path{stroke-dashoffset:0}
.ui-dep{background:var(--ink);border-color:var(--ink);text-align:center;color:#fff;padding:34px 24px}
.ui-dep::before{background:rgba(255,255,255,.18)}
.ui-dep small{display:block;color:#A9C2B8;font-size:14px}
.ui-big{display:block;font:800 52px/1.1 var(--fh);color:var(--lime);letter-spacing:-.03em;margin:8px 0 14px}
.ui-pill{display:inline-block;background:rgba(255,255,255,.1);border-radius:30px;padding:6px 14px;font-size:13px}

.req{background:var(--lime);padding:90px 0}
.req-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap;margin-bottom:40px}
.req h2{font-size:clamp(32px,3.4vw,48px);color:var(--ink)}
.req-head p{color:var(--ink-2);max-width:380px}
.req-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.req-card{background:#fff;border-radius:18px;padding:28px 24px;transition:transform .35s,box-shadow .35s}
.req-card:hover{transform:translateY(-8px) rotate(-.6deg);box-shadow:0 22px 40px rgba(6,42,32,.14)}
.req-ico{width:50px;height:50px;border-radius:14px;background:var(--ink);color:var(--lime);display:grid;place-items:center;margin-bottom:18px}
.req-ico svg{width:24px;height:24px}
.req-card h3{font-size:21px;color:var(--ink);margin-bottom:8px}
.req-card p{font-size:15px;color:var(--muted)}

.after-vis{background:var(--green);display:grid;place-items:center;padding:56px 32px}
.journey{position:relative;display:flex;flex-direction:column;gap:22px;width:min(360px,100%)}
.journey::before{content:"";position:absolute;left:23px;top:20px;bottom:20px;width:3px;background:rgba(255,255,255,.25)}
.jr{position:relative;background:#fff;border-radius:16px;padding:16px 18px 16px 62px;box-shadow:0 14px 30px rgba(0,0,0,.15);opacity:0;transform:translateX(30px);transition:opacity .6s,transform .6s cubic-bezier(.2,.7,.2,1)}
.jr::before{content:"";position:absolute;left:14px;top:50%;width:20px;height:20px;margin-top:-10px;border-radius:50%;background:var(--lime);border:4px solid var(--green)}
.in .jr{opacity:1;transform:none}
.in .jr:nth-child(2){transition-delay:.3s}.in .jr:nth-child(3){transition-delay:.6s}
.jd{display:block;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--green)}
.jr b{display:block;font:800 19px var(--fh);color:var(--ink)}
.jr small{color:var(--muted);font-size:14px}

@media (max-width:1100px){
  .req-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:860px){
  .tl-sec,.req{padding:64px 0}
  .tl-head{text-align:left;margin-bottom:40px}
  .tl-line{left:27px}
  .tl{gap:56px}
  .tl-step,.tl-step:nth-child(even){grid-template-columns:56px minmax(0,1fr);row-gap:22px}
  .tl-num{grid-column:1;grid-row:1;align-self:start;justify-self:start;width:56px;height:56px}
  .tl-copy,.tl-step:nth-child(even) .tl-copy{grid-column:2;grid-row:1;padding:4px 0 0 18px}
  .tl-ui,.tl-step:nth-child(even) .tl-ui{grid-column:2;grid-row:2;padding:0 0 0 18px}
  .ui-win{margin:0}
}
@media (max-width:560px){
  .req-grid{grid-template-columns:minmax(0,1fr)}
  .tl-step,.tl-step:nth-child(even){grid-template-columns:44px minmax(0,1fr)}
  .tl-num{width:44px;height:44px;font-size:18px;border-width:3px}
  .tl-line{left:21px}
  .tl-copy,.tl-step:nth-child(even) .tl-copy,.tl-ui,.tl-step:nth-child(even) .tl-ui{padding-left:14px}
  .ui-win{padding:20px 16px}
  .ui-big{font-size:42px}
}

/* ===== why choose page ===== */
.bento-sec{padding:100px 0;background:var(--cream)}
.bento-head{margin-bottom:44px}
.bento-head h2{font-size:clamp(32px,3.6vw,52px);color:var(--ink)}
.bento{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.tile{background:#fff;border:1px solid var(--line);border-radius:22px;padding:30px 28px;position:relative;overflow:hidden;transition:transform .35s,box-shadow .35s}
.tile:hover{transform:translateY(-6px);box-shadow:0 24px 50px rgba(6,42,32,.12)}
.tile h3{font-size:23px;line-height:1.2;color:var(--ink);margin-bottom:10px}
.tile p{font-size:15px;color:var(--muted)}
.t-ico{width:50px;height:50px;border-radius:14px;background:var(--mint);color:var(--green);display:grid;place-items:center;margin-bottom:20px;transition:transform .5s cubic-bezier(.3,1.4,.5,1)}
.tile:hover .t-ico{transform:rotate(-8deg) scale(1.08)}
.t-ico svg{width:24px;height:24px}
.t-wide{grid-column:span 2;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px;align-items:center}
.t-wide2{grid-column:span 3;display:flex;gap:22px;align-items:center}
.t-wide2 .t-ico{margin:0;flex:none}
.t-green{background:var(--green);border-color:var(--green)}
.t-green h3{color:#fff;font-size:clamp(24px,2.4vw,32px)}
.t-green p{color:#D5EDE2}
.t-lime{background:var(--lime);border-color:var(--lime)}
.t-lime .t-ico{background:var(--ink);color:var(--lime)}
.t-lime p{color:var(--ink-2)}
.t-dark{background:var(--ink);border-color:var(--ink)}
.t-dark h3{color:#fff}
.t-dark p{color:#C9D6D0}
.t-dark .t-ico{background:rgba(200,241,105,.15);color:var(--lime)}
.t-bars{display:flex;flex-direction:column;gap:14px}
.bar{display:grid;grid-template-columns:62px minmax(0,1fr) 58px;align-items:center;gap:10px;color:#fff;font-size:14px}
.bar i{display:block;height:14px;border-radius:14px;background:rgba(255,255,255,.18);position:relative;overflow:hidden}
.bar i::after{content:"";position:absolute;inset:0;width:var(--w);background:#fff;border-radius:14px;transform:scaleX(0);transform-origin:left;transition:transform 1.1s cubic-bezier(.2,.7,.2,1) .2s}
.bar i.c::after{background:var(--lime)}
.bar.tot i::after{background:var(--lime);transition-delay:.6s}
.in .bar i::after{transform:scaleX(1)}
.bar b{font:800 18px var(--fh);text-align:right}
.bar.tot{border-top:1px dashed rgba(255,255,255,.3);padding-top:12px}
.bar.tot b{color:var(--lime);font-size:22px}
.t-dep{margin-top:20px;background:var(--ink);border-radius:14px;padding:14px 16px;display:flex;justify-content:space-between;align-items:center}
.t-dep small{color:#A9C2B8;font-size:13px}
.t-dep b{font:800 24px var(--fh);color:var(--lime);font-variant-numeric:tabular-nums}

.check-sec{padding:100px 0;background:#fff}
.check-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:64px;align-items:start}
.check-intro{position:sticky;top:150px}
.check-intro h2{font-size:clamp(32px,3.4vw,48px);color:var(--ink);margin-bottom:14px}
.check-intro p{color:var(--muted);margin-bottom:26px}
.qa{list-style:none;counter-reset:q;display:flex;flex-direction:column;gap:14px}
.qa li{counter-increment:q;border:1px solid var(--line);border-radius:18px;padding:22px 24px 22px 76px;position:relative;transition:border-color .3s,box-shadow .3s}
.qa li:hover{border-color:var(--green);box-shadow:0 16px 34px rgba(6,42,32,.08)}
.qa li::before{content:counter(q);position:absolute;left:22px;top:22px;width:36px;height:36px;border-radius:10px;background:var(--mint);color:var(--green);display:grid;place-items:center;font:800 16px var(--fh)}
.q{display:block;font:700 19px/1.3 var(--fh);color:var(--ink);margin-bottom:8px}
.ans{display:flex;gap:10px;align-items:flex-start;color:#2B3934;font-size:15px}
.ans i{flex:none;width:20px;height:20px;margin-top:1px;border-radius:50%;background:var(--lime) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23062A20' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12l5 5 9-10'/%3E%3C/svg%3E") center/11px no-repeat;transform:scale(0);transition:transform .45s cubic-bezier(.3,1.4,.5,1) .35s}
.qa li.in .ans i{transform:scale(1)}

@media (max-width:1100px){
  .bento{grid-template-columns:repeat(2,minmax(0,1fr))}
  .t-wide{grid-column:span 2}
  .t-wide2{grid-column:span 2}
}
@media (max-width:860px){
  .bento-sec,.check-sec{padding:64px 0}
  .check-grid{grid-template-columns:minmax(0,1fr);gap:32px}
  .check-intro{position:static}
  .t-wide{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:560px){
  .bento{grid-template-columns:minmax(0,1fr)}
  .t-wide,.t-wide2{grid-column:auto}
  .t-wide2{flex-direction:column;align-items:flex-start}
  .tile{padding:24px 20px}
  .qa li{padding:18px 18px 18px 64px}
  .qa li::before{left:16px;top:18px}
  .q{font-size:17px}
}

/* ===== faqs page ===== */
.faq-hero{background:var(--green);color:#fff;padding:84px 0 96px;position:relative;overflow:hidden;text-align:center}
.fh-swirl{position:absolute;width:900px;height:900px;left:-300px;top:-380px;pointer-events:none;opacity:.9}
.fh-swirl path{fill:none;stroke:var(--green-dd);stroke-width:110;stroke-linecap:round}
.fh-inner{position:relative}
.faq-hero h1{font-size:clamp(38px,4.6vw,64px);margin-bottom:18px}
.faq-hero h1 em{font-style:normal;color:var(--lime)}
.faq-hero .lead{font-size:19px;max-width:620px;margin:0 auto 32px;opacity:.92}
.fh-search{position:relative;max-width:640px;margin:0 auto}
.fh-search svg{position:absolute;left:22px;top:50%;width:22px;height:22px;margin-top:-11px;color:var(--green)}
.fh-search input{width:100%;font:500 17px var(--fb);color:var(--ink);background:#fff;border:3px solid transparent;border-radius:60px;padding:20px 120px 20px 58px;outline:none;box-shadow:0 20px 44px rgba(0,0,0,.18);transition:border-color .25s,box-shadow .25s}
.fh-search input:focus{border-color:var(--lime);box-shadow:0 20px 44px rgba(0,0,0,.22),0 0 0 6px rgba(200,241,105,.3)}
.fh-search input::placeholder{color:#7D8F88}
.fh-count{position:absolute;right:22px;top:50%;transform:translateY(-50%);font-size:13px;font-weight:700;color:var(--green)}

.cat-bar{position:sticky;top:127px;z-index:40;background:rgba(255,255,255,.94);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.cat-scroll{display:flex;gap:8px;overflow-x:auto;padding:12px 0;scrollbar-width:none}
.cat-scroll::-webkit-scrollbar{display:none}
.cat-pill{flex:none;display:inline-flex;align-items:center;gap:8px;text-decoration:none;font-size:14px;font-weight:600;color:var(--ink);background:var(--mint);border:1.5px solid transparent;padding:9px 14px;border-radius:40px;transition:background .25s,color .25s,border-color .25s}
.cat-pill span{font-size:12px;background:#fff;color:var(--green);border-radius:20px;padding:1px 7px}
.cat-pill:hover{border-color:var(--green)}
.cat-pill.on{background:var(--green);color:#fff}
.cat-pill.on span{background:var(--lime);color:var(--ink)}
.cat-pill.dim{opacity:.35}

.faq-page{background:var(--cream);padding:24px 0 90px}
.faq-group{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:48px;padding:56px 0;border-bottom:1px solid var(--line);scroll-margin-top:200px}
.faq-group:last-of-type{border-bottom:0}
.fg-head{position:sticky;top:200px;align-self:start}
.fg-head h2{font-size:clamp(26px,2.6vw,36px);color:var(--ink);margin-bottom:8px}
.fg-head p{color:var(--muted)}
.faq-group[hidden]{display:none}
details[hidden]{display:none}
mark{background:var(--lime);color:inherit;border-radius:3px;padding:0 2px}
.faq-empty{text-align:center;padding:70px 0}
.faq-empty h2{font-size:30px;color:var(--ink);margin-bottom:8px}
.faq-empty p{color:var(--muted)}

.ask{background:var(--ink);color:#fff;padding:80px 0}
.ask-inner{display:flex;justify-content:space-between;align-items:center;gap:32px;flex-wrap:wrap}
.ask h2{font-size:clamp(32px,3.6vw,50px);margin-bottom:10px}
.ask p{opacity:.88;max-width:560px}
.ask .link:hover{color:var(--lime)}
.ask .actions{display:flex;gap:14px;flex-wrap:wrap}

@media (max-width:1100px){
  .cat-bar{top:74px}
  .faq-group{scroll-margin-top:150px}
  .fg-head{top:150px}
}
@media (max-width:860px){
  .faq-hero{padding:56px 0 64px;text-align:left}
  .faq-hero .lead{margin-left:0;font-size:17px}
  .fh-search{margin:0}
  .faq-group{grid-template-columns:minmax(0,1fr);gap:20px;padding:40px 0}
  .fg-head{position:static}
  .faq-page{padding-bottom:56px}
  .ask{padding:60px 0}
}
@media (max-width:560px){
  .fh-search input{font-size:16px;padding:17px 18px 17px 52px}
  .fh-search svg{left:18px}
  .fh-count{display:none}
  .ask .actions,.ask .btn{width:100%;justify-content:center}
}

/* ===== contact page ===== */
.ct-hero{background:var(--green);color:#fff;padding:80px 0 150px;position:relative;overflow:hidden}
.ct-hero .fh-swirl{left:auto;right:-320px;top:-360px}
.ct-hero-inner{position:relative}
.ct-hero h1{font-size:clamp(38px,4.6vw,64px);margin-bottom:18px}
.ct-hero h1 em{font-style:normal;color:var(--lime)}
.ct-hero .lead{font-size:19px;max-width:600px;opacity:.92}
.methods{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:-90px;position:relative;z-index:2}
.method{background:#fff;border-radius:20px;padding:28px 26px;text-decoration:none;box-shadow:0 24px 50px rgba(6,42,32,.14);border:1px solid var(--line);display:flex;flex-direction:column;transition:transform .35s,box-shadow .35s,border-color .35s}
.method:hover{transform:translateY(-8px);border-color:var(--green);box-shadow:0 30px 60px rgba(6,42,32,.18)}
.m-ico{width:52px;height:52px;border-radius:14px;background:var(--lime);color:var(--ink);display:grid;place-items:center;margin-bottom:18px;transition:transform .5s cubic-bezier(.3,1.4,.5,1)}
.method:hover .m-ico{transform:rotate(-8deg) scale(1.08)}
.m-ico svg{width:24px;height:24px}
.method h2{font-size:22px;color:var(--ink);margin-bottom:8px}
.method p{font-size:15px;color:var(--muted);margin-bottom:18px;flex:1}
.m-link{font-weight:700;color:var(--green);text-decoration:underline;text-underline-offset:4px;word-break:break-word}

.ct-main{padding:72px 0 96px;background:#fff}
.ct-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:40px;align-items:start}
.ct-form-card{background:var(--cream);border:1px solid var(--line);border-radius:24px;padding:40px}
.ct-form-card h2{font-size:clamp(28px,2.8vw,38px);color:var(--ink);margin-bottom:6px}
.ct-sub{color:var(--muted);margin-bottom:28px}
.f-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.f-field{margin-bottom:18px;position:relative}
.f-field label{display:flex;justify-content:space-between;font-weight:600;font-size:15px;color:var(--ink);margin-bottom:8px}
.f-count{font-weight:500;font-size:13px;color:var(--muted)}
.f-field input,.f-field select,.f-field textarea{width:100%;font:500 16px var(--fb);color:var(--ink);background:#fff;border:1.5px solid var(--line);border-radius:12px;padding:14px 16px;outline:none;transition:border-color .2s,box-shadow .2s}
.f-field select{appearance:none;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M2 4l4 4 4-4' fill='none' stroke='%23007A52' stroke-width='1.8'/%3E%3C/svg%3E") right 16px center/12px no-repeat;padding-right:40px;cursor:pointer}
.f-field textarea{resize:vertical;min-height:140px;line-height:1.5}
.f-field input:focus,.f-field select:focus,.f-field textarea:focus{border-color:var(--green);box-shadow:0 0 0 4px rgba(0,122,82,.14)}
.f-field.bad input,.f-field.bad textarea{border-color:#C0392B;box-shadow:0 0 0 4px rgba(192,57,43,.12);animation:shake .4s}
.f-field.ok input,.f-field.ok textarea{border-color:var(--green)}
@keyframes shake{20%,60%{transform:translateX(-5px)}40%,80%{transform:translateX(5px)}}
.f-err{display:none;color:#B42318;font-size:13px;font-weight:600;margin-top:6px}
.f-field.bad .f-err{display:block}
.f-note{background:var(--lime-l);border-radius:10px;padding:12px 14px;font-size:14px;color:var(--ink-2);margin:-4px 0 18px}
.f-warn{display:flex;gap:10px;align-items:flex-start;font-size:14px;color:var(--muted);background:#fff;border:1px dashed #B9CCC3;border-radius:12px;padding:12px 14px;margin-bottom:22px}
.f-warn svg{flex:none;width:18px;height:18px;color:#B7791F;margin-top:2px}
.f-submit{width:100%;justify-content:center;font-size:17px;padding:18px}
.f-done{text-align:center;padding:34px 10px;outline:none}
.done-ico{width:72px;height:72px;border-radius:50%;background:var(--green);color:#fff;display:grid;place-items:center;margin:0 auto 18px;animation:popin .5s cubic-bezier(.3,1.4,.5,1)}
.done-ico svg{width:34px;height:34px}
@keyframes popin{from{transform:scale(0)}}
.f-done h3{font-size:26px;color:var(--ink);margin-bottom:10px}
.f-done p{color:var(--muted);max-width:440px;margin:0 auto 22px}

.ct-side{display:flex;flex-direction:column;gap:16px}
.side-card{border:1px solid var(--line);border-radius:18px;padding:22px 24px;background:#fff}
.side-card h3{font-size:19px;color:var(--ink);margin-bottom:6px}
.side-card p{font-size:15px;color:var(--muted)}
.side-card.dark{background:var(--ink);border-color:var(--ink)}
.side-card.dark h3{color:#fff}
.side-card.dark p{color:#C9D6D0}
.side-card.dark .link:hover{color:var(--lime)}

.complaints{background:var(--lime);padding:90px 0;scroll-margin-top:140px}
.cp-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:56px}
.complaints h2{font-size:clamp(32px,3.4vw,48px);color:var(--ink);margin-bottom:12px}
.complaints p{color:var(--ink-2)}
.complaints .eyebrow{color:var(--ink)}
.cp-steps{list-style:none;counter-reset:c;display:flex;flex-direction:column;gap:12px}
.cp-steps li{counter-increment:c;background:#fff;border-radius:16px;padding:20px 22px 20px 74px;position:relative}
.cp-steps li::before{content:counter(c);position:absolute;left:20px;top:20px;width:36px;height:36px;border-radius:50%;background:var(--ink);color:var(--lime);display:grid;place-items:center;font:800 16px var(--fh)}
.cp-steps b{display:block;font:800 18px var(--fh);color:var(--ink);margin-bottom:4px}
.cp-steps span{font-size:15px;color:var(--muted)}

@media (max-width:1100px){
  .complaints{scroll-margin-top:90px}
}
@media (max-width:860px){
  .ct-hero{padding:56px 0 120px}
  .ct-hero .lead{font-size:17px}
  .methods{grid-template-columns:minmax(0,1fr);margin-top:-80px}
  .ct-main{padding:48px 0 64px}
  .ct-grid,.cp-grid{grid-template-columns:minmax(0,1fr);gap:28px}
  .complaints{padding:64px 0}
}
@media (max-width:560px){
  .ct-form-card{padding:26px 18px;border-radius:20px}
  .f-row{grid-template-columns:minmax(0,1fr);gap:0}
  .cp-steps li{padding:18px 18px 18px 64px}
  .cp-steps li::before{left:16px;top:18px}
}

/* ===== calculator page ===== */
.pc-hero{background:var(--green);color:#fff;padding:72px 0 96px;position:relative;overflow:hidden}
.pc-hero .fh-swirl{left:-340px;top:-300px}
.pc-grid{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.95fr);gap:56px;align-items:center}
.pc-intro h1{font-size:clamp(38px,4.4vw,62px);margin-bottom:18px}
.pc-intro h1 em{font-style:normal;color:var(--lime)}
.pc-intro .lead{font-size:19px;opacity:.92;margin-bottom:22px;max-width:520px}
.pc-points{list-style:none}
.pc-points li{position:relative;padding-left:32px;margin-bottom:10px;font-weight:500}
.pc-points li::before{content:"";position:absolute;left:0;top:3px;width:20px;height:20px;border-radius:50%;background:var(--lime) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23062A20' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12l5 5 9-10'/%3E%3C/svg%3E") center/12px no-repeat}
.pc-calc{box-shadow:0 40px 80px rgba(0,0,0,.3)}
.pc-days-val{font:800 15px var(--fh);color:var(--lime);margin-left:6px}
.range-wrap.short{padding-top:6px}
.pc-chips{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:-8px 0 22px}
.pc-chips button{font:600 13px var(--fb);color:#C9D6D0;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.14);border-radius:10px;padding:9px 0;cursor:pointer;transition:background .25s,color .25s,border-color .25s}
.pc-chips button:hover{border-color:var(--lime)}
.pc-chips button.on{background:#fff;color:var(--ink);border-color:#fff}
.pc-apr{display:flex;justify-content:space-between;align-items:center;margin:-8px 0 22px;padding:12px 18px;border-radius:12px;background:rgba(200,241,105,.1);border:1px dashed rgba(200,241,105,.4);font-size:14px;color:#C9D6D0}
.pc-apr b{font:800 20px var(--fh);color:#fff;font-variant-numeric:tabular-nums}

.apr-sec{padding:100px 0;background:#fff}
.apr-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:64px;align-items:center}
.apr-sec h2{font-size:clamp(32px,3.4vw,48px);color:var(--ink);margin-bottom:18px}
.apr-sec p{color:#2B3934;margin-bottom:14px;max-width:540px}
.apr-chart{background:var(--cream);border:1px solid var(--line);border-radius:22px;padding:30px}
.ac-row{display:grid;grid-template-columns:70px minmax(0,1fr) 64px;gap:14px;align-items:center;margin-bottom:16px;font-size:14px;font-weight:600;color:var(--ink)}
.ac-row i{display:block;height:16px;border-radius:16px;background:var(--line);overflow:hidden}
.ac-row em{display:block;height:100%;width:var(--w);border-radius:16px;background:linear-gradient(90deg,var(--green),var(--lime));transform:scaleX(0);transform-origin:left;transition:transform 1.1s cubic-bezier(.2,.7,.2,1)}
.ac-row:nth-child(2) em{transition-delay:.15s}.ac-row:nth-child(3) em{transition-delay:.3s}.ac-row:nth-child(4) em{transition-delay:.45s}
.in .ac-row em{transform:scaleX(1)}
.ac-row b{font:800 18px var(--fh);text-align:right}
.ac-note{margin:8px 0 0!important;padding-top:14px;border-top:1px dashed var(--line);font-size:14px;color:var(--muted)!important}
.ac-note b{color:var(--green)}

.vgrid.three{grid-template-columns:repeat(3,minmax(0,1fr))}

.rules{padding:100px 0;background:var(--cream)}
.rules-head{max-width:680px;margin-bottom:40px}
.rules h2{font-size:clamp(32px,3.4vw,48px);color:var(--ink);margin-bottom:12px}
.rules-head p{color:var(--muted)}
.rules-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.rule{background:#fff;border:1px solid var(--line);border-left:4px solid var(--green);border-radius:14px;padding:22px 22px}
.rule b{display:block;font:800 19px var(--fh);color:var(--ink);margin-bottom:6px}
.rule p{font-size:15px;color:var(--muted)}

.examples{padding:96px 0;background:#fff}
.examples h2{font-size:clamp(32px,3.4vw,48px);color:var(--ink);margin-bottom:8px}
.ex-sub{color:var(--muted);margin-bottom:32px}
.ex-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-bottom:26px}
.ex{border-radius:20px;padding:26px 24px;background:var(--ink);color:#fff;transition:transform .35s}
.ex:hover{transform:translateY(-6px)}
.ex-amt{display:block;font:800 40px var(--fh);letter-spacing:-.03em;color:var(--lime);margin-bottom:14px}
.ex dl{display:grid;grid-template-columns:1fr auto;gap:8px 12px;font-size:14px}
.ex dt{color:#A9C2B8}
.ex dd{font-weight:700;text-align:right}
.ex dd.t{font:800 18px var(--fh)}

@media (max-width:1100px){
  .rules-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ex-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:860px){
  .pc-hero{padding:48px 0 64px}
  .pc-grid,.apr-grid{grid-template-columns:minmax(0,1fr);gap:36px}
  .pc-intro .lead{font-size:17px}
  .apr-sec,.rules,.examples{padding:64px 0}
  .vgrid.three{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:560px){
  .rules-grid,.ex-grid{grid-template-columns:minmax(0,1fr)}
  .apr-chart{padding:22px 16px}
  .ac-row{grid-template-columns:58px minmax(0,1fr) 54px;gap:10px}
  .pc-chips button{font-size:12px}
}

/* ===== policy pages (editorial) ===== */
.read-bar{position:fixed;top:0;left:0;right:0;height:4px;z-index:70;pointer-events:none}
.read-bar i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--green),var(--lime))}
.pol-hero{background:var(--green);color:#fff;padding:72px 0 80px;position:relative;overflow:hidden}
.pol-hero .fh-swirl{left:auto;right:-340px;top:-380px}
.pol-hero-inner{position:relative;max-width:820px}
.pol-hero h1{font-size:clamp(36px,4.4vw,60px);margin-bottom:18px}
.pol-hero h1 em{font-style:normal;color:var(--lime)}
.pol-hero .lead{font-size:19px;opacity:.92;margin-bottom:22px}
.pol-meta{display:flex;flex-wrap:wrap;gap:10px}
.pol-meta span{font-size:13px;font-weight:600;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.22);padding:6px 12px;border-radius:30px}

.pol-wrap{background:#fff;padding:64px 0 96px}
.pol-grid{display:grid;grid-template-columns:260px minmax(0,1fr);gap:64px;align-items:start}
.pol-toc{position:sticky;top:150px;background:var(--cream);border:1px solid var(--line);border-radius:18px;padding:22px 18px}
.pol-toc{max-height:calc(100vh - 170px);overflow-y:auto;scrollbar-width:thin}
@media (max-width:860px){.pol-toc{max-height:none;overflow:visible}}
.toc-title{font:700 12px var(--fb);letter-spacing:.14em;text-transform:uppercase;color:var(--green);margin:0 0 12px 8px}
.pol-toc ol{list-style:none;counter-reset:t}
.pol-toc li{counter-increment:t}
.pol-toc a{display:flex;gap:10px;align-items:baseline;text-decoration:none;font-size:14px;color:var(--muted);padding:8px 10px;border-radius:10px;transition:background .25s,color .25s}
.pol-toc a::before{content:counter(t,decimal-leading-zero);font:800 12px var(--fh);color:#9DB0A8;transition:color .25s}
.pol-toc a:hover{background:#fff;color:var(--ink)}
.pol-toc a.on{background:var(--green);color:#fff;font-weight:600}
.pol-toc a.on::before{color:var(--lime)}

.pol-body{max-width:760px}
.pol-body section{position:relative;padding:0 0 48px;margin-bottom:48px;border-bottom:1px solid var(--line);scroll-margin-top:150px}
.pol-body section:last-child{border-bottom:0;margin-bottom:0}
.pol-num{display:inline-block;font:800 13px var(--fh);color:var(--green);background:var(--mint);padding:5px 10px;border-radius:8px;margin-bottom:12px}
.pol-body h2{font-size:clamp(26px,2.6vw,34px);color:var(--ink);margin-bottom:14px}
.pol-body p{color:#2B3934;margin-bottom:14px}
.pol-body .ticks{margin:6px 0 16px}
.pol-body .ticks li{color:#2B3934}
.promise-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:20px}
.promise{border:1px solid var(--line);border-radius:16px;padding:18px 20px;transition:border-color .3s,transform .3s}
.promise:hover{border-color:var(--green);transform:translateY(-4px)}
.promise b{display:block;font:800 19px var(--fh);color:var(--ink);margin-bottom:4px}
.promise span{font-size:15px;color:var(--muted)}
.fc-steps{list-style:none;counter-reset:f;margin:8px 0 18px}
.fc-steps li{counter-increment:f;position:relative;padding:12px 0 12px 52px;color:#2B3934;border-bottom:1px dashed var(--line)}
.fc-steps li:last-child{border-bottom:0}
.fc-steps li::before{content:counter(f);position:absolute;left:0;top:9px;width:34px;height:34px;border-radius:50%;background:var(--ink);color:var(--lime);display:grid;place-items:center;font:800 15px var(--fh)}
.ed-contact{display:flex;gap:12px;flex-wrap:wrap;margin:6px 0 24px}
.pol-note{font-size:14px;color:var(--muted)!important;background:var(--cream);border-radius:12px;padding:16px 18px}

@media (max-width:1100px){
  .pol-toc{top:100px}
  .pol-body section{scroll-margin-top:100px}
}
@media (max-width:860px){
  .pol-hero{padding:52px 0 60px}
  .pol-hero .lead{font-size:17px}
  .pol-wrap{padding:40px 0 64px}
  .pol-grid{grid-template-columns:minmax(0,1fr);gap:28px}
  .pol-toc{position:static}
  .pol-toc ol{columns:2;column-gap:8px}
  .pol-body section{padding-bottom:36px;margin-bottom:36px}
}
@media (max-width:560px){
  .pol-toc ol{columns:1}
  .promise-grid{grid-template-columns:minmax(0,1fr)}
  .ed-contact .btn{width:100%;justify-content:center}
}

/* ===== privacy page additions ===== */
.pol-h3{font-size:19px;color:var(--ink);margin:22px 0 8px}
.share-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:14px}
.share{background:var(--ink);color:#fff;border-radius:16px;padding:20px}
.share b{display:block;font:800 18px var(--fh);color:var(--lime);margin-bottom:6px}
.share span{font-size:14px;color:#C9D6D0}
.rights-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:14px 0 18px}
.right{background:var(--lime);border-radius:14px;padding:16px;transition:transform .3s}
.right:hover{transform:translateY(-4px)}
.right b{display:block;font:800 17px var(--fh);color:var(--ink);margin-bottom:4px}
.right span{font-size:13px;color:var(--ink-2)}
.addr{background:var(--cream);border:1px solid var(--line);border-radius:14px;padding:18px 20px;margin:8px 0 18px}
.addr p{margin-bottom:6px}
.addr p:last-child{margin-bottom:0}
@media (max-width:860px){
  .share-grid{grid-template-columns:minmax(0,1fr)}
  .rights-grid{grid-template-columns:1fr 1fr}
}

/* ===== cookie page additions ===== */
.ck-list{display:flex;flex-direction:column;gap:12px;margin-top:16px}
.ck{border:1px solid var(--line);border-radius:16px;padding:18px 20px;transition:border-color .3s,box-shadow .3s}
.ck:hover{border-color:var(--green);box-shadow:0 14px 30px rgba(6,42,32,.07)}
.ck-top{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:6px}
.ck-top b{font:800 19px var(--fh);color:var(--ink)}
.ck p{font-size:15px;color:var(--muted)!important;margin:0!important}
.pill{flex:none;font-size:12px;font-weight:700;padding:5px 11px;border-radius:30px;display:inline-flex;align-items:center;gap:6px}
.pill::before{content:"";width:7px;height:7px;border-radius:50%}
.pill.on{background:var(--mint);color:var(--green-d)}
.pill.on::before{background:var(--green)}
.pill.off{background:#F1F2F1;color:#5E6B66}
.pill.off::before{background:#A9B5B0}
.dur-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:6px}
.dur{background:var(--cream);border:1px solid var(--line);border-radius:16px;padding:18px 20px}
.dur b{display:block;font:800 18px var(--fh);color:var(--ink);margin-bottom:4px}
.dur span{font-size:15px;color:var(--muted)}
.pol-hero .lead .link:hover{color:var(--lime)}
@media (max-width:560px){
  .dur-grid{grid-template-columns:minmax(0,1fr)}
  .ck-top{flex-wrap:wrap}
}

/* ===== responsible borrowing page ===== */
.cost-card{background:var(--ink);color:#fff;border-radius:20px;padding:26px;margin:18px 0}
.cc-title{color:#A9C2B8!important;font-size:14px;font-weight:600;margin-bottom:10px!important}
.cc-row{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px dashed rgba(255,255,255,.18);font-size:15px}
.cc-row b{font:800 20px var(--fh)}
.cc-row.hl b{color:var(--lime);font-size:24px}
.cc-compare{margin-top:18px;display:flex;flex-direction:column;gap:12px}
.cc-compare div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 12px;font-size:13px;color:#C9D6D0}
.cc-compare i{grid-column:1/-1;display:block;height:10px;border-radius:10px;background:rgba(255,255,255,.1);position:relative;overflow:hidden}
.cc-compare i::after{content:"";position:absolute;inset:0;width:var(--w);background:linear-gradient(90deg,var(--green),var(--lime));border-radius:10px;transform:scaleX(0);transform-origin:left;transition:transform 1.2s cubic-bezier(.2,.7,.2,1) .2s}
.cc-compare div:nth-child(2) i::after{background:#5FD3A0;transition-delay:.5s}
.in .cc-compare i::after{transform:scaleX(1)}
.cc-compare b{color:#fff;font-weight:700}

.selfcheck{border:1px solid var(--line);border-radius:20px;padding:10px;margin-top:14px;background:var(--cream)}
.selfcheck label{display:flex;gap:14px;align-items:flex-start;padding:14px;border-radius:14px;cursor:pointer;transition:background .25s}
.selfcheck label:hover{background:#fff}
.selfcheck input{appearance:none;flex:none;width:26px;height:26px;border-radius:8px;border:2px solid #B9CCC3;background:#fff;cursor:pointer;margin-top:1px;transition:background .25s,border-color .25s,transform .25s;display:grid;place-items:center}
.selfcheck input:checked{background:var(--green) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12l5 5 9-10'/%3E%3C/svg%3E") center/14px no-repeat;border-color:var(--green);transform:scale(1.08)}
.selfcheck input:focus-visible{outline:3px solid var(--lime);outline-offset:2px}
.selfcheck span{font-size:15px;color:var(--muted)}
.selfcheck span b{display:block;color:var(--ink);font-size:16px;margin-bottom:2px}
.sc-result{margin:8px 4px 4px;padding:16px 18px;border-radius:14px;background:#fff;border:1px solid var(--line);transition:background .3s,border-color .3s}
.sc-bar{height:8px;border-radius:8px;background:var(--line);overflow:hidden;margin-bottom:10px}
.sc-bar i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--green),var(--lime));transition:width .45s cubic-bezier(.2,.7,.2,1)}
.sc-result p{margin:0!important;font-weight:600;color:var(--ink)!important}
.sc-result.ok{background:var(--lime-l);border-color:var(--green)}
.sc-result.warn{background:#FFF6E5;border-color:#E8B44C}

.alt-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:14px}
.alt{border:1px solid var(--line);border-radius:16px;padding:18px 20px;transition:border-color .3s,transform .3s}
.alt:hover{border-color:var(--green);transform:translateY(-4px)}
.alt:last-child{grid-column:1/-1}
.alt b{display:block;font:800 17px var(--fh);color:var(--ink);margin-bottom:4px}
.alt span{font-size:14px;color:var(--muted)}

.flag-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:8px}
.flag{border-radius:16px;padding:18px 20px 18px 54px;background:#FFF3F1;border:1px solid #F6D5CF;position:relative}
.flag::before{content:"!";position:absolute;left:16px;top:18px;width:26px;height:26px;border-radius:50%;background:#B42318;color:#fff;display:grid;place-items:center;font:800 14px var(--fh)}
.flag b{display:block;font:800 17px var(--fh);color:#7A1A10;margin-bottom:4px}
.flag span{font-size:14px;color:#6B4A45}

.cycle-wrap{position:relative;width:min(320px,100%);aspect-ratio:1;margin:18px auto 22px}
.cycle{position:absolute;inset:12%;width:76%;height:76%;transform:rotate(-90deg)}
.cycle circle{fill:none;stroke-width:10;stroke-linecap:round}
.cy-track{stroke:var(--line)}
.cy-run{stroke:#E5484D;stroke-dasharray:528;stroke-dashoffset:528}
.in .cy-run{animation:cyrun 4s cubic-bezier(.4,0,.2,1) .3s infinite}
@keyframes cyrun{0%{stroke-dashoffset:528}70%,100%{stroke-dashoffset:0}}
.cy-step{position:absolute;background:#fff;border:1px solid var(--line);border-radius:12px;padding:8px 12px;box-shadow:0 8px 20px rgba(6,42,32,.08);font-size:14px;white-space:nowrap}
.cy-step b{color:var(--ink)}
.cy-step.s1{top:0;left:50%;transform:translateX(-50%)}
.cy-step.s2{right:0;top:50%;transform:translateY(-50%)}
.cy-step.s3{bottom:0;left:50%;transform:translateX(-50%);border-color:#F6D5CF;background:#FFF3F1}
.cy-step.s3 b{color:#B42318}
.cy-step.s4{left:0;top:50%;transform:translateY(-50%)}

.help-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:14px}
.help{background:var(--cream);border:1px solid var(--line);border-radius:16px;padding:20px;display:flex;flex-direction:column}
.help b{display:block;font:800 18px var(--fh);color:var(--ink);margin-bottom:6px}
.help span{font-size:14px;color:var(--muted);flex:1}
.help-links{display:flex;flex-wrap:wrap;gap:6px 16px;margin-top:12px;font-size:14px}

@media (max-width:560px){
  .alt-grid,.flag-grid,.help-grid{grid-template-columns:minmax(0,1fr)}
  .alt:last-child{grid-column:auto}
  .cy-step{font-size:12px;padding:6px 9px}
  .cost-card{padding:20px 16px}
}
@media (prefers-reduced-motion:reduce){.cy-run{stroke-dashoffset:0}}

/* ===== application page ===== */
.ap-hero{background:var(--green);color:#fff;padding:64px 0 130px;position:relative;overflow:hidden}
.ap-hero .fh-swirl{left:auto;right:-320px;top:-380px}
.ap-hero-inner{position:relative;max-width:760px}
.ap-hero h1{font-size:clamp(36px,4.4vw,60px);margin-bottom:16px}
.ap-hero h1 em{font-style:normal;color:var(--lime)}
.ap-hero .lead{font-size:19px;opacity:.92}
.ap-main{background:var(--cream);padding:0 0 96px}
.ap-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);gap:32px;align-items:start;margin-top:-80px;position:relative;z-index:2}
.ap-card{background:#fff;border-radius:24px;padding:34px 36px;box-shadow:0 30px 70px rgba(6,42,32,.14);border:1px solid var(--line)}

.ap-progress{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);position:relative;margin-bottom:30px}
.ap-progress li{display:flex;flex-direction:column;align-items:center;gap:8px;position:relative;z-index:1}
.ap-progress li span{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;font:800 15px var(--fh);background:#fff;border:2px solid var(--line);color:var(--muted);transition:background .35s,border-color .35s,color .35s,transform .35s cubic-bezier(.3,1.4,.5,1)}
.ap-progress li em{font-style:normal;font-size:13px;font-weight:600;color:var(--muted);transition:color .3s}
.ap-progress li.active span{background:var(--green);border-color:var(--green);color:#fff;transform:scale(1.12)}
.ap-progress li.active em{color:var(--ink)}
.ap-progress li.done span{background:var(--lime);border-color:var(--lime);color:var(--ink)}
.ap-progress li.done span{font-size:0}
.ap-progress li.done span::after{content:"";width:14px;height:14px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23062A20' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12l5 5 9-10'/%3E%3C/svg%3E") center/contain no-repeat}
.ap-line{position:absolute;top:18px;left:12.5%;right:12.5%;height:3px;background:var(--line);border-radius:3px}
.ap-line b{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--green),var(--lime));border-radius:3px;transition:width .5s cubic-bezier(.2,.7,.2,1)}

.apply-step{border:0;display:none;min-width:0}
.apply-step.active{display:block;animation:stepIn .45s cubic-bezier(.2,.7,.2,1)}
.apply-step.back{animation-name:stepBack}
@keyframes stepIn{from{opacity:0;transform:translateX(24px)}}
@keyframes stepBack{from{opacity:0;transform:translateX(-24px)}}
.apply-step legend{font:800 clamp(24px,2.4vw,30px)/1.2 var(--fh);color:var(--ink);margin-bottom:22px;padding:0}
.ap-kicker{display:block;font:700 12px var(--fb);letter-spacing:.14em;text-transform:uppercase;color:var(--green);margin-bottom:8px}
.ap-card .f-field.half{max-width:calc(50% - 9px)}
.ap-card .f-field.bad select{border-color:#C0392B;box-shadow:0 0 0 4px rgba(192,57,43,.12);animation:shake .4s}
.ap-card .f-field.ok select{border-color:var(--green)}
.employ{border-left:3px solid var(--lime);padding-left:18px;margin:4px 0 6px;animation:stepIn .4s}
.seg-pick{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
.seg-pick label{margin:0!important;display:block!important}
.seg-pick input{position:absolute;opacity:0;pointer-events:none}
.seg-pick span{display:block;text-align:center;font-weight:600;font-size:15px;padding:13px 6px;border:1.5px solid var(--line);border-radius:12px;cursor:pointer;color:var(--text);transition:background .25s,border-color .25s,color .25s}
.seg-pick label:hover span{border-color:var(--green)}
.seg-pick input:checked+span{background:var(--green);border-color:var(--green);color:#fff}
.seg-pick input:focus-visible+span{outline:3px solid var(--lime);outline-offset:2px}
.f-field.bad .seg-pick span{border-color:#E7A49B}
.consent .chk{display:flex!important;gap:12px;align-items:flex-start;font-weight:500!important;font-size:14px!important;color:var(--muted)!important;cursor:pointer;line-height:1.55}
.consent .chk input{appearance:none;flex:none;width:24px!important;height:24px;padding:0!important;border-radius:7px;border:2px solid #B9CCC3;background:#fff;cursor:pointer;margin-top:2px;transition:background .25s,border-color .25s}
.consent .chk input:checked{background:var(--green) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12l5 5 9-10'/%3E%3C/svg%3E") center/13px no-repeat;border-color:var(--green)}
.consent.bad .chk input{border-color:#C0392B}
.ap-nav{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:10px;padding-top:20px;border-top:1px solid var(--line)}
.ap-nav .btn{min-width:150px;justify-content:center}
.ap-nav .btn[disabled]{opacity:.6;cursor:wait}
.ap-error{margin-top:14px;background:#FFF3F1;border:1px solid #F6D5CF;color:#7A1A10;border-radius:12px;padding:12px 14px;font-size:14px}

.ap-side{display:flex;flex-direction:column;gap:16px;padding-top:96px}
.ap-side .ticks{margin:8px 0 0}
.ap-side .ticks li{font-size:15px;color:var(--muted)}
.ap-next{list-style:none;counter-reset:n;margin-top:8px}
.ap-next li{counter-increment:n;position:relative;padding:6px 0 6px 36px;font-size:15px;color:var(--muted)}
.ap-next li::before{content:counter(n);position:absolute;left:0;top:6px;width:24px;height:24px;border-radius:50%;background:var(--mint);color:var(--green);display:grid;place-items:center;font:800 13px var(--fh)}
.ap-small{font-size:13px;color:var(--muted);padding:0 4px}

@media (max-width:860px){
  .ap-hero{padding:48px 0 110px}
  .ap-hero .lead{font-size:17px}
  .ap-grid{grid-template-columns:minmax(0,1fr);margin-top:-70px}
  .ap-side{padding-top:0}
  .ap-main{padding-bottom:64px}
}
@media (max-width:560px){
  .ap-card{padding:24px 18px;border-radius:20px}
  .ap-progress li em{font-size:11px}
  .ap-progress li span{width:32px;height:32px;font-size:13px}
  .ap-line{top:15px}
  .ap-card .f-field.half{max-width:none}
  .seg-pick{grid-template-columns:1fr 1fr}
  .ap-nav .btn{min-width:0;flex:1}
}

/* reveal animation */
.rv{opacity:0;transform:translateY(28px);transition:opacity .8s cubic-bezier(.2,.7,.2,1),transform .8s cubic-bezier(.2,.7,.2,1)}
.rv.in{opacity:1;transform:none}
.rv.d1{transition-delay:.1s}.rv.d2{transition-delay:.2s}.rv.d3{transition-delay:.3s}
.mask{display:block;overflow:hidden}
.mask>span{display:block;transform:translateY(105%);transition:transform .9s cubic-bezier(.2,.7,.2,1)}
.in .mask>span,.mask.in>span{transform:none}
.mask:nth-child(2)>span{transition-delay:.12s}.mask:nth-child(3)>span{transition-delay:.24s}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important}
  .rv{opacity:1;transform:none}.mask>span{transform:none}.notif{opacity:1;transform:none}
}

/* responsive */
@media (max-width:1100px){
  .tabs,.util a:not(.signin),.hd-nav{display:none}
  .burger{display:block;margin-left:0}
  .util{margin-left:auto}
  .hd-nav.open{display:block;position:absolute;left:0;right:0;top:74px;background:#fff;box-shadow:0 20px 30px rgba(0,0,0,.1)}
  .hd-nav.open ul{flex-direction:column;height:auto;align-items:stretch;padding:8px 32px 20px}
  .hd-nav.open a,.hd-nav.open .dd-btn{padding:14px 0;border-bottom:1px solid var(--line);justify-content:space-between;width:100%}
  .hd-nav.open{max-height:calc(100vh - 74px);overflow-y:auto}
  .dd{position:static;width:auto;box-shadow:none;border:0;padding:0 0 0 12px;opacity:1;visibility:visible;transform:none;display:none}
  .has-dd.open .dd{display:block}
  .has-dd:hover .dd-btn svg{transform:none}
  .has-dd.open .dd-btn svg{transform:rotate(180deg)}
  .hd-nav.open .dd a{padding:10px 0;border-radius:0}
  .posts{grid-template-columns:repeat(2,minmax(0,1fr))}
  .cards{grid-template-columns:repeat(2,minmax(0,1fr))}
  .steps ol{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:860px){
  body{font-size:16px}
  .wrap{padding:0 20px}
  .split,.calc-grid,.article .cols,.faq .grid,.app .grid{grid-template-columns:minmax(0,1fr);gap:40px}
  .split{min-height:0}
  .split .txt,.split.rev .txt{order:0;padding:52px 20px}
  .split .media{height:340px;order:1}
  .etr .vis{order:1;min-height:520px}
  .txt p.lead{font-size:18px}
  .prod,.calc-sec,.steps,.faq,.app,.blog{padding:64px 0}
  .article{padding-bottom:64px}
  .swirl{width:600px;height:600px;right:-260px}
  .app .stxt{min-height:0}
}
@media (max-width:560px){
  .cards,.steps ol,.posts{grid-template-columns:minmax(0,1fr)}
  .tiles{display:none}
  .etr .vis{min-height:500px}
  .phone{width:220px;height:420px}
  .util .signin{padding:9px 10px;font-size:13px}
  .burger{width:40px;margin-right:-8px}
  .logo b{font-size:21px}.logo svg{width:32px;height:32px}.logo{gap:8px}
  .hd-top{gap:12px}
  .calc{padding:24px 18px;border-radius:20px}
  .res{gap:14px;padding:14px}.ring{width:84px;height:84px}
  .res .row.tot b{font-size:22px}
  .tbl{font-size:14px}.tbl th,.tbl td{padding:9px 8px}
  .ft-grid{grid-template-columns:1fr 1fr}
  .ft-grid>div:first-child{grid-column:1/-1}
  .hero .media .tag{left:16px;bottom:16px}
  .txt .actions .btn{width:100%;justify-content:center}
}
@media (max-width:560px){
  summary{font-size:16px;padding:16px 60px 16px 16px;gap:12px}
  summary::after{right:14px}
  details .a{padding:0 18px 18px 16px}
}
.ap-debug{margin:10px 0 0;padding:10px 12px;background:#fff;border:1px dashed #E7A49B;border-radius:8px;font:12px/1.5 ui-monospace,Consolas,monospace;color:#5A1A12;white-space:pre-wrap;word-break:break-word;max-height:260px;overflow:auto}

/* Page photos (added for image SEO) */
.page-photo{margin:0 0 28px;border-radius:20px;overflow:hidden;background:var(--mint,#EAF6EF);aspect-ratio:3/2}
.page-photo img{width:100%;height:100%;object-fit:cover;display:block}
.apr-sec .page-photo{margin:28px 0 0;max-width:520px}
.faq-page .page-photo{max-width:880px;margin:0 auto 40px;aspect-ratio:21/9}
.ct-side .page-photo,.ap-side .page-photo{aspect-ratio:4/3;margin-bottom:18px}
.pol-body .page-photo{aspect-ratio:16/9;margin-bottom:36px}
.eyebrow-l[data-label]::before{content:attr(data-label)}
.apply-step legend .ap-q{font:inherit;color:inherit;letter-spacing:inherit;margin:0}

/* footer contact (address + email above social icons) */
.ft-contact{font-style:normal;display:flex;flex-direction:column;gap:10px;margin:4px 0 2px;max-width:340px}
.ft-ci{display:flex;align-items:flex-start;gap:10px;color:#C9D6D0;font-size:14.5px;line-height:1.5}
.ft-ci svg{width:17px;height:17px;flex:none;margin-top:2px;color:var(--lime)}
a.ft-ci{width:max-content;max-width:100%;overflow-wrap:anywhere}
a.ft-ci:hover{color:var(--lime)}

/* Homepage guide sections (timing, credit, repay) */
.article.pad{padding-top:96px}
.article.tint{background:var(--mint)}
.article .note{margin-top:-6px}
@media (max-width:860px){.article.pad{padding-top:64px}}

/* Article lists: dot bullets and numbered steps */
.article ul,.article ol{list-style:none;margin:8px 0 20px;padding:0}
.article ul li,.article ol li{position:relative;margin-bottom:12px;line-height:1.6;color:#2B3934}
.article ul li{padding-left:28px}
.article ul li::before{content:"";position:absolute;left:5px;top:.62em;width:8px;height:8px;border-radius:50%;background:var(--green);box-shadow:0 0 0 4px var(--lime-l)}
.article ul li b,.article ol li b{color:var(--ink)}
.article ol{counter-reset:step}
.article ol li{counter-increment:step;padding:4px 0 10px 46px;min-height:48px;margin-bottom:4px}
.article ol li::before{content:counter(step);position:absolute;left:0;top:0;width:30px;height:30px;border-radius:50%;background:var(--green);color:#fff;font:800 14px/30px var(--fh);text-align:center;box-shadow:0 0 0 4px var(--lime-l)}
.article ol li:not(:last-child)::after{content:"";position:absolute;left:14px;top:36px;bottom:-2px;width:2px;border-radius:2px;background:var(--line)}
.article ol li:last-child{min-height:30px;padding-bottom:0}
.article .callout ul{margin:12px 0 0}
.article .callout li{margin-bottom:8px;font-size:15px}
.article .callout li::before{box-shadow:0 0 0 4px #fff}
.article.tint ul li::before,.article.tint ol li::before{box-shadow:0 0 0 4px #fff}
