/* Rentalit brand: Ink + Teal + Amber. Light and dark tokens. */
:root{--bg:#f5f6f9;--surface:#ffffff;--surface2:#eceff5;--ink:#242F65;--mut:#59617f;--line:#d9dde8;--p:#64B05A;--pt:#3b7733;--p-ink:#242F65;--p-soft:#e6f2e4;--hero1:#eceff7;--hero2:#f5f6f9;--l1:#2d3a7d;--l2:#242F65;--shadow:0 6px 18px -10px rgba(36,47,101,.35);--f-d:'Sora',system-ui,sans-serif;--f-b:'DM Sans',system-ui,sans-serif;color-scheme:light}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){--bg:#0d1128;--surface:#151b3d;--surface2:#1b2350;--ink:#e9ecf7;--mut:#a3abcd;--line:#2a3366;--p:#64B05A;--pt:#8bd07f;--p-ink:#0d1128;--p-soft:#1e3a2f;--hero1:#171f4a;--hero2:#0d1128;--l1:#2d3a7d;--l2:#242F65;--shadow:0 6px 18px -10px #000;color-scheme:dark}}
:root[data-theme="dark"]{--bg:#0d1128;--surface:#151b3d;--surface2:#1b2350;--ink:#e9ecf7;--mut:#a3abcd;--line:#2a3366;--p:#64B05A;--pt:#8bd07f;--p-ink:#0d1128;--p-soft:#1e3a2f;--hero1:#171f4a;--hero2:#0d1128;--l1:#2d3a7d;--l2:#242F65;--shadow:0 6px 18px -10px #000;color-scheme:dark}*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;scroll-padding-top:84px}
body{font-family:var(--f-b);background:var(--bg);color:var(--ink);line-height:1.65;font-size:1rem;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
img,svg{max-width:100%}
:focus-visible{outline:3px solid var(--p);outline-offset:3px;border-radius:6px}
.wrap{max-width:1160px;margin:auto;padding-inline:20px}
h1,h2,h3,h4{font-family:var(--f-d);line-height:1.15;letter-spacing:-.02em;text-wrap:balance}
h1{font-size:clamp(2.2rem,5.4vw,4rem);font-weight:700}
h2{font-size:clamp(1.7rem,3.6vw,2.6rem);font-weight:700;margin-bottom:12px}
h3{font-size:1.15rem;font-weight:600;margin-bottom:6px}
p{max-width:68ch}
.lead{color:var(--mut);font-size:1.12rem}
.eyebrow{font:600 .78rem var(--f-d);letter-spacing:.14em;text-transform:uppercase;color:var(--p);margin-bottom:12px;display:block}
.hl{color:var(--p)}
section{padding-block:84px}
.alt{background:var(--surface2)}
.head{margin-bottom:40px;max-width:720px}
.head p{color:var(--mut)}
/* logo */
.logo{display:flex;align-items:center;gap:12px}
.logo svg{width:44px;height:44px;flex:none}
.lt{display:flex;flex-direction:column;line-height:1}
.lt b{font:700 1.75rem var(--f-d);letter-spacing:-.04em;color:var(--ink)}
.lt b i{font-style:normal;color:var(--p)}
.lt b u{text-decoration:none;color:var(--ink);font-weight:400;opacity:.55}
.lt small{font:600 .56rem var(--f-d);letter-spacing:.24em;color:var(--mut);margin-top:6px;text-transform:uppercase}
.s1{stop-color:var(--l1)}.s2{stop-color:var(--l2)}
/* header */
header{position:sticky;top:0;z-index:50;background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
nav{display:flex;align-items:center;justify-content:space-between;height:76px;gap:16px}
.menu{display:flex;gap:26px;align-items:center;list-style:none}
.menu a{color:var(--mut);font-weight:500;font-size:.95rem}
.menu a:hover{color:var(--ink)}
.tools{display:flex;gap:10px;align-items:center}
.tg{width:42px;height:42px;border-radius:50%;border:1px solid var(--line);background:var(--surface);color:var(--ink);cursor:pointer;display:grid;place-items:center;transition:.3s}
.tg:hover{border-color:var(--p);transform:rotate(18deg)}
.tg svg{width:20px;height:20px}
.tg .sun{display:none}
:root[data-theme="dark"] .tg .sun{display:block}:root[data-theme="dark"] .tg .moon{display:none}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .tg .sun{display:block}:root:not([data-theme="light"]) .tg .moon{display:none}}
.burger{display:none}
.btn{display:inline-flex;align-items:center;gap:9px;padding:13px 24px;border-radius:12px;font:600 .95rem var(--f-b);border:1px solid transparent;cursor:pointer;transition:.25s}
.btn svg{width:18px;height:18px}
.btn.p{background:var(--p);color:var(--p-ink)}
.btn.p:hover{transform:translateY(-2px);box-shadow:0 14px 26px -12px var(--p)}
.btn.o{background:var(--surface);border-color:var(--line);color:var(--ink)}
.btn.o:hover{border-color:var(--p)}
/* hero */
.hero{padding-block:70px 80px;background:radial-gradient(900px 480px at 82% 0,var(--hero1),transparent 65%),var(--hero2);overflow:hidden}
.hg{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:center}
.hero h1{margin-block:14px 20px}
.cta{display:flex;gap:12px;flex-wrap:wrap;margin-block:28px}
.pills{display:flex;gap:10px;flex-wrap:wrap;list-style:none}
.pills li{padding:7px 14px;border:1px solid var(--line);border-radius:99px;background:var(--surface);font-size:.86rem;color:var(--mut)}
.panel{background:var(--surface);border:1px solid var(--line);border-radius:24px;padding:26px;box-shadow:var(--shadow);position:relative}
.panel:before{content:"";position:absolute;inset:-1px;border-radius:24px;padding:1px;background:linear-gradient(140deg,var(--p),transparent 40%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}
.panel h2{font-size:1.05rem;margin-bottom:16px}
.tl{display:grid;gap:10px}
.tl a{display:flex;align-items:center;gap:14px;padding:14px 16px;border-radius:14px;background:var(--surface2);transition:.25s;font-weight:500}
.tl a:hover{background:var(--p-soft);transform:translateX(4px)}
.tl svg{width:26px;height:26px;color:var(--p);flex:none}
.tl small{display:block;color:var(--mut);font-weight:400;font-size:.82rem}
.tl em{margin-left:auto;font-style:normal;color:var(--p)}
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:18px;overflow:hidden;margin-top:56px}
.stats div{background:var(--surface);padding:24px;text-align:center}
.stats b{display:block;font:700 2.2rem var(--f-d);color:var(--p);font-variant-numeric:tabular-nums}
.stats span{color:var(--mut);font-size:.9rem}
/* cards */
.grid{display:grid;gap:20px}
.c2{grid-template-columns:repeat(2,1fr)}.c3{grid-template-columns:repeat(3,1fr)}.c4{grid-template-columns:repeat(4,1fr)}
.card{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:26px;transition:.3s;min-width:0}
a.card:hover,.card.h:hover{transform:translateY(-5px);border-color:var(--p);box-shadow:var(--shadow)}
.card p,.card li{color:var(--mut);font-size:.94rem}
.ic{width:46px;height:46px;border-radius:12px;background:var(--p-soft);color:var(--p);display:grid;place-items:center;margin-bottom:14px}
.ic svg{width:24px;height:24px}
.catblock{margin-bottom:44px}
.catblock>h3{font-size:1.4rem;display:flex;align-items:center;gap:12px;margin-bottom:18px}
.prod{display:flex;flex-direction:column;gap:6px}
.prod b{font:600 1rem var(--f-d)}
.prod span{color:var(--mut);font-size:.88rem}
.prod i{font-style:normal;color:var(--p);font-weight:600;font-size:.88rem;margin-top:6px}
.ck{list-style:none;display:grid;gap:8px}
.ck li:before{content:"";display:inline-block;width:8px;height:8px;border-radius:2px;background:var(--p);margin-right:10px}
.cmp{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.cmp .card:first-child{border-color:var(--p)}
.chips{display:flex;flex-wrap:wrap;gap:10px}
.chip{padding:9px 16px;border:1px solid var(--line);border-radius:10px;background:var(--surface);font-size:.92rem;transition:.2s}
.chip:hover{border-color:var(--p);color:var(--p)}
.steps{counter-reset:s;display:grid;grid-template-columns:repeat(5,1fr);gap:16px}
.step{position:relative;padding:22px;border:1px solid var(--line);border-radius:16px;background:var(--surface)}
.step:before{counter-increment:s;content:counter(s);display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--p);color:var(--p-ink);font:700 .9rem var(--f-d);margin-bottom:14px}
.step p{font-size:.9rem;color:var(--mut)}
.tbl{overflow-x:auto;border:1px solid var(--line);border-radius:16px;background:var(--surface)}
table{border-collapse:collapse;width:100%;min-width:560px}
th,td{padding:14px 18px;text-align:left;border-bottom:1px solid var(--line);font-size:.94rem}
th{font:600 .78rem var(--f-d);letter-spacing:.08em;text-transform:uppercase;color:var(--mut);background:var(--surface2)}
tr:last-child td{border:0}
.q p{color:var(--ink);font-size:1rem;margin-bottom:14px}
.q b{color:var(--p);font-family:var(--f-d)}
details{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:18px 22px;margin-bottom:10px}
details[open]{border-color:var(--p)}
summary{cursor:pointer;font-weight:600;list-style:none;display:flex;justify-content:space-between;gap:16px}
summary:after{content:"+";color:var(--p);font-size:1.4rem;line-height:1}
details[open] summary:after{content:"\2212"}
details p{color:var(--mut);margin-top:10px}
.cb{border-radius:28px;padding:56px;background:linear-gradient(135deg,var(--l2),var(--l1));color:#fff;display:flex;justify-content:space-between;align-items:center;gap:30px;flex-wrap:wrap}
.cb h2{color:#fff;margin:0 0 8px}.cb p{color:#e4f6f4}
.cb .btn.p{background:#fff;color:#0d1b34}.cb .btn.o{background:transparent;color:#fff;border-color:#ffffff66}
.ct{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.ct h3{display:flex;gap:10px;align-items:center}
.ct address{font-style:normal;color:var(--mut);font-size:.94rem}
.ct a{color:var(--p);font-weight:600}
footer{border-top:1px solid var(--line);padding-block:56px 28px;background:var(--surface);color:var(--mut);font-size:.92rem}
.fg{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:32px;margin-bottom:36px}
footer h4{color:var(--ink);margin-bottom:12px;font-size:.95rem}
footer ul{list-style:none;display:grid;gap:7px}
footer a:hover{color:var(--p)}
.wa{position:fixed;right:18px;bottom:18px;z-index:60;width:56px;height:56px;border-radius:50%;background:var(--p);color:var(--p-ink);display:grid;place-items:center;box-shadow:var(--shadow)}
.wa svg{width:26px;height:26px}
.crumbs{font-size:.85rem;color:var(--mut);margin-bottom:12px}
.crumbs a:hover{color:var(--p)}
.rv{opacity:0;transform:translateY(22px);transition:.7s cubic-bezier(.2,.7,.2,1)}
.rv.in{opacity:1;transform:none}
@media(max-width:960px){.hg,.cmp{grid-template-columns:1fr}.c3,.c4,.ct{grid-template-columns:1fr 1fr}.steps{grid-template-columns:1fr 1fr}.fg{grid-template-columns:1fr 1fr}.stats{grid-template-columns:1fr 1fr}
.menu{display:none;position:absolute;top:76px;left:0;right:0;background:var(--bg);flex-direction:column;align-items:flex-start;padding:22px 20px;border-bottom:1px solid var(--line)}.menu.open{display:flex}.burger{display:grid}.nbtn{display:none}}
@media(max-width:600px){.c2,.c3,.c4,.ct,.steps,.fg{grid-template-columns:1fr}section{padding-block:60px}.cb{padding:34px 24px}.lt small{display:none}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}.rv{opacity:1;transform:none}}
.pimg{border-radius:20px;overflow:hidden;border:1px solid var(--line);background:#fff;box-shadow:var(--shadow);aspect-ratio:1/1}
.pimg img{display:block;width:100%;height:100%;object-fit:cover}
.hero2{display:grid;grid-template-columns:1.15fr .85fr;gap:44px;align-items:center}
.hero2 .pimg{max-width:460px;justify-self:end;width:100%}
.prod .th{border-radius:12px;overflow:hidden;background:#fff;border:1px solid var(--line);aspect-ratio:1/1;margin-bottom:14px}
.prod .th img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .5s}
.prod:hover .th img{transform:scale(1.06)}
.clients{padding-block:40px;border-block:1px solid var(--line);background:var(--surface)}
.clients .wrap{display:flex;align-items:center;gap:28px;flex-wrap:wrap;justify-content:center}
.clients p{color:var(--mut);font-size:.9rem;font-weight:500}
.clients ul{display:flex;gap:18px;flex-wrap:wrap;list-style:none;align-items:center}
.clients li{width:76px;height:76px;border-radius:14px;background:#fff;border:1px solid var(--line);display:grid;place-items:center;overflow:hidden}
.clients img{width:62px;height:62px;object-fit:contain}
.hero .panel img{display:block;width:100%;border-radius:14px;margin-bottom:18px;aspect-ratio:16/10;object-fit:cover;object-position:center 40%}
@media(max-width:960px){.hero2{grid-template-columns:1fr}.hero2 .pimg{justify-self:start;max-width:360px}}
/* cut-out product art on a light brand tile, readable in both themes */
.pimg,.prod .th,.hero .panel .ph{background:radial-gradient(circle at 78% 18%,rgba(229,57,31,.16),transparent 55%),linear-gradient(150deg,#ffffff,#e6ecf9)}
.pimg img,.prod .th img{object-fit:contain;padding:8%;filter:drop-shadow(0 14px 14px rgba(11,31,75,.28))}
.pimg{border-color:var(--line)}
.prod .th img{padding:7%}
.hero .panel .ph{border-radius:14px;margin-bottom:18px;aspect-ratio:16/11;overflow:hidden}
.hero .panel .ph img{margin:0;border-radius:0;width:100%;height:100%;object-fit:contain;padding:4%;filter:drop-shadow(0 12px 12px rgba(11,31,75,.25));aspect-ratio:auto}
.wa{width:auto;height:58px;padding:0 20px 0 16px;border-radius:99px;gap:10px;display:flex;align-items:center;font:600 .92rem var(--f-b);background:#25d366;color:#fff;box-shadow:0 12px 28px -8px rgba(37,211,102,.6)}
.wa svg{width:28px;height:28px;flex:none}
.wa:hover{transform:translateY(-3px)}
@media(max-width:600px){.wa{width:58px;padding:0;justify-content:center}.wa span{display:none}}
.ico{display:inline-flex;align-items:center;gap:8px}
.ico svg,.hcall svg{width:17px;height:17px;flex:none;color:var(--p)}
.hcall{display:inline-flex;align-items:center;gap:8px;font:600 .92rem var(--f-d);color:var(--ink);white-space:nowrap}
.hcall:hover{color:var(--p)}
.ck2{list-style:none;display:grid;gap:12px}
.ck2 li{display:flex;flex-direction:column;gap:2px;font-size:.94rem}
.ck2 span{color:var(--mut);font-size:.8rem;text-transform:uppercase;letter-spacing:.08em}
.ck2 a{font-weight:600;color:var(--ink)}
.ck2 a:hover{color:var(--p)}
@media(max-width:1100px){.hcall{display:none}}
form label{display:grid;gap:6px;font-size:.88rem;font-weight:500;color:var(--mut)}
form input{padding:12px 14px;border:1px solid var(--line);border-radius:10px;background:var(--bg);color:var(--ink);font:400 1rem var(--f-b)}
form input:focus{outline:2px solid var(--p);border-color:transparent}

/* ---- brand v3: calmer, corporate, brand navy + green ---- */
h1{font-size:clamp(1.9rem,3.8vw,2.8rem);line-height:1.15}
h2{font-size:clamp(1.45rem,2.6vw,2rem)}
section{padding-block:60px}
.hl,.eyebrow,.hcall svg,.ico svg,.tl svg,.prod i,.q b,.crumbs a:hover,.ck2 a:hover,footer a:hover,.menu a:hover,.hcall:hover,.btn.o:hover,.chip:hover{color:var(--pt)}
.ic{color:var(--pt)}
.lt{display:none}
.logo img{display:block;height:44px;width:auto}
:root[data-theme="dark"] .logo img{background:#fff;padding:5px 8px;border-radius:4px}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .logo img{background:#fff;padding:5px 8px;border-radius:4px}}
.btn,.chip,.pills li,.tg,.wa{border-radius:4px}
.btn.p{background:var(--p);color:var(--p-ink)}
.btn.p:hover{transform:none;box-shadow:0 6px 14px -6px rgba(36,47,101,.5);filter:brightness(1.05)}
.card,details,.stats,.stats div:first-child,.panel,.tbl,.step,.pimg,.prod .th,.cb,.hero .panel .ph,.clients li{border-radius:6px}
.card{box-shadow:none}
a.card:hover,.card.h:hover{transform:none;border-color:var(--p);box-shadow:var(--shadow)}
.panel:before{display:none}
.panel{box-shadow:none}
.tl a{border-radius:4px}.tl a:hover{transform:none;background:var(--p-soft)}
.hero{background:linear-gradient(180deg,var(--hero1),var(--hero2) 85%);padding-block:48px 56px}
.cb{background:#242F65;color:#fff}.cb h2{color:#fff}.cb p{color:#d6dbf0}
.cb .btn.p{background:var(--p);color:#242F65}.cb .btn.o{border-color:#ffffff66;color:#fff;background:transparent}
.pimg,.prod .th,.hero .panel .ph{background:#fff;border:1px solid var(--line)}
.pimg img,.prod .th img,.hero .panel .ph img{filter:none}
.pimg img,.prod .th img{padding:6%}
.step:before{border-radius:4px;background:var(--p);color:#242F65}
.stats b{color:var(--ink)}
.wa{background:var(--p);color:#242F65;box-shadow:0 6px 16px -6px rgba(0,0,0,.45);height:50px;padding:0 18px 0 14px}
.wa:hover{transform:none;filter:brightness(1.06)}
.wa svg{width:24px;height:24px}
.rv{transform:translateY(8px);transition:.4s ease}
.tg:hover{transform:none;border-color:var(--p)}
.eyebrow{letter-spacing:.1em}
.btn.o{border-color:var(--line)}
.ck li:before{border-radius:1px}
.sec-note{font-size:.88rem;color:var(--mut);margin-top:14px}.frow{display:grid;grid-template-columns:1fr 1fr;gap:14px}
form textarea{padding:12px 14px;border:1px solid var(--line);border-radius:4px;background:var(--bg);color:var(--ink);font:400 1rem var(--f-b);resize:vertical}
form input,form textarea{border-radius:4px}
@media(max-width:600px){.frow{grid-template-columns:1fr}}

/* wide desktop: use the full width instead of a narrow centred column */
.wrap{max-width:1840px;padding-inline:clamp(20px,4.5vw,96px)}
.wrap[style*="max-width:840px"]{max-width:1100px!important}
.grid.c4{grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}
.grid.c3{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}
.hero2 .pimg{max-width:560px}
.hg{gap:clamp(32px,5vw,96px)}
@media(min-width:1400px){h1{font-size:clamp(2.4rem,3vw,3.4rem)}p.lead,.lead{max-width:62ch}}
@media(max-width:960px){.grid.c4{grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}}
@media(max-width:600px){.grid.c4{grid-template-columns:1fr 1fr}.grid.c3{grid-template-columns:1fr}}

/* font size: scale with screen, never below 16px */
html{font-size:clamp(16px,.42vw + 10px,19px)}
.menu a{font-size:.98rem}
.card p,.card li,.step p,.prod span,details p,.head p{font-size:1rem}
.lead,p.lead{font-size:clamp(1.08rem,.9vw + .75rem,1.35rem)}
h3{font-size:1.2rem}
.lt b,.hcall{font-size:1rem}
th,td{font-size:1rem}
.btn{font-size:1rem}
footer{font-size:.98rem}
.stats span,.ck2 li,.sec-note,.crumbs{font-size:.95rem}

/* one row per category on desktop: six cards */
@media(min-width:1100px){.catblock .grid.c4{grid-template-columns:repeat(6,minmax(0,1fr));gap:16px}.catblock .prod{padding:18px}.catblock .prod b{font-size:1rem}.catblock .prod span{font-size:.9rem}}
@media(min-width:700px) and (max-width:1099px){.catblock .grid.c4{grid-template-columns:repeat(3,minmax(0,1fr))}}

/* about / related card rows: 4 per row, so 8 cards make 4 + 4 */
@media(min-width:1000px){.grid.c4{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(min-width:601px) and (max-width:999px){.grid.c4{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* why section: six cards in one row on desktop */
@media(min-width:1200px){.grid.c3.six{grid-template-columns:repeat(6,minmax(0,1fr));gap:16px}.grid.c3.six .card{padding:22px}.grid.c3.six h3{font-size:1.05rem}.grid.c3.six p{font-size:.95rem}}
@media(min-width:601px) and (max-width:1199px){.grid.c3.six{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:600px){.grid.c3.six{grid-template-columns:1fr 1fr}}

/* FAQ: two columns, three questions each */
.faq2{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:start}
.faq2>div{display:grid;gap:12px;align-content:start}
.faq2 details{margin:0}
@media(max-width:800px){.faq2{grid-template-columns:1fr}}

/* ===== responsive type + alignment: mobile < 600, tablet 600-1024, desktop > 1024 ===== */
html{font-size:16px}
body{text-align:left;overflow-wrap:break-word}
img{max-width:100%;height:auto}
/* mobile */
h1{font-size:1.9rem;line-height:1.2}
h2{font-size:1.45rem;line-height:1.25}
h3{font-size:1.1rem}
.lead,p.lead{font-size:1.05rem}
.hero{padding-block:32px 40px}
section{padding-block:44px}
.wrap{padding-inline:18px}
.logo img{height:36px}
nav{height:64px}
.menu{top:64px}
.menu a{display:block;padding:12px 0;font-size:1.05rem}
.hero .cta,.cb .cta{flex-direction:column;align-items:stretch}
.hero .cta .btn,.cb .cta .btn,.pimg+.cta .btn{width:100%;justify-content:center}
.hg,.hero2{gap:24px}
.hero2 .pimg{max-width:100%;justify-self:stretch}
.stats{grid-template-columns:1fr 1fr}
.stats div{padding:16px 12px;text-align:left}
.stats b{font-size:1.7rem}
.card{padding:18px}
.cb{padding:28px 20px;gap:20px}
details{padding:14px 16px}
summary{font-size:1rem}
.fg{grid-template-columns:1fr;gap:24px}
.steps{grid-template-columns:1fr}
.pills li{font-size:.85rem}
.wa span{display:none}
.wa{width:52px;padding:0;justify-content:center}
/* tablet */
@media(min-width:600px){
 html{font-size:17px}
 h1{font-size:2.4rem}
 h2{font-size:1.75rem}
 h3{font-size:1.15rem}
 .lead,p.lead{font-size:1.15rem}
 .hero{padding-block:44px 52px}
 section{padding-block:56px}
 .wrap{padding-inline:28px}
 .logo img{height:40px}
 nav{height:70px}.menu{top:70px}
 .hero .cta,.cb .cta{flex-direction:row;align-items:center}
 .hero .cta .btn,.cb .cta .btn{width:auto}
 .hero2 .pimg{max-width:420px;justify-self:start}
 .stats{grid-template-columns:repeat(4,1fr)}
 .card{padding:22px}
 .fg{grid-template-columns:1fr 1fr}
 .steps{grid-template-columns:repeat(2,1fr)}
 .cb{padding:40px 32px}
 .wa span{display:inline}.wa{width:auto;padding:0 16px 0 14px}
}
/* desktop */
@media(min-width:1025px){
 html{font-size:17px}
 h1{font-size:clamp(2.5rem,3vw,3.3rem)}
 h2{font-size:2rem}
 h3{font-size:1.2rem}
 .lead,p.lead{font-size:1.2rem}
 .hero{padding-block:52px 60px}
 section{padding-block:64px}
 .wrap{padding-inline:clamp(28px,4.5vw,96px)}
 .logo img{height:44px}
 nav{height:76px}
 .menu a{display:inline;padding:0;font-size:.98rem}
 .steps{grid-template-columns:repeat(5,1fr)}
 .fg{grid-template-columns:1.6fr 1fr 1fr 1fr}
 .card{padding:24px}
 .cb{padding:48px}
}
@media(min-width:1440px){html{font-size:18px}}
@media(min-width:1920px){html{font-size:19px}}
/* menu toggle visible below desktop */
@media(max-width:1024px){.menu{display:none;position:absolute;left:0;right:0;background:var(--bg);flex-direction:column;align-items:flex-start;padding:12px 20px 20px;border-bottom:1px solid var(--line)}.menu.open{display:flex}.burger{display:grid}.nbtn{display:none}.hcall{display:none}}
@media(min-width:1025px){.burger{display:none}.menu{display:flex;position:static;flex-direction:row}}

/* stat strip: icon + label, no numbers */
.stats div{display:flex;align-items:center;gap:14px;text-align:left}
.stats .ic{margin:0;flex:none}
.stats div>span:last-child{font-size:1rem;font-weight:500;color:var(--ink);line-height:1.4}
@media(max-width:600px){.stats div{gap:10px;padding:14px 12px}.stats .ic{width:40px;height:40px}.stats div>span:last-child{font-size:.95rem}}

/* stat strip: big icons only; label kept for screen readers */
.stats div{justify-content:center;padding:28px 16px}
.stats .ic{width:76px;height:76px;border-radius:10px}
.stats .ic svg{width:40px;height:40px;stroke-width:1.6}
.stats div>span:last-child{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.stats div{position:relative}
@media(max-width:600px){.stats div{padding:18px 10px}.stats .ic{width:60px;height:60px}.stats .ic svg{width:32px;height:32px}}

/* stat strip: tap or hover an icon to read what it means */
.stats>div{flex-direction:column;text-align:center;gap:10px;cursor:pointer;transition:background .2s}
.stats>div:hover,.stats>div:focus-visible{background:var(--p-soft)}
.stats>div:after{content:"i";position:absolute;top:10px;right:10px;width:20px;height:20px;border:1.5px solid var(--pt);border-radius:50%;color:var(--pt);font:700 .72rem/17px var(--f-d);text-align:center;opacity:.8}
.stats>div.open>span:last-child,.stats>div.peek>span:last-child{position:static;width:auto;height:auto;margin:0;overflow:visible;clip:auto;white-space:normal;font-size:.98rem;font-weight:600;line-height:1.4;color:var(--ink)}
.stats>div.open:after{content:"\00d7";font-size:1rem;line-height:16px}

/* text-only logo in brand navy + green, tagline underneath */
.lt{display:flex;flex-direction:column;align-items:flex-start;line-height:1}
.lt b{font:700 1.7rem var(--f-d);letter-spacing:-.035em;color:var(--ink)}
.lt b i{font-style:normal;color:#64B05A}
.lt b u{text-decoration:none;font-weight:500;color:var(--ink);opacity:.6}
.lt small{display:block;margin-top:6px;padding-top:6px;border-top:2px solid #64B05A;font:600 .6rem var(--f-d);letter-spacing:.2em;text-transform:uppercase;color:var(--mut);white-space:nowrap;width:100%}
.logo{display:inline-flex}
@media(max-width:600px){.lt b{font-size:1.45rem}.lt small{font-size:.52rem;letter-spacing:.16em}}
footer .lt b{font-size:1.6rem}

/* bigger logo text */
.lt b{font-size:2.3rem;letter-spacing:-.04em}
.lt small{font-size:.74rem;letter-spacing:.2em;margin-top:7px;padding-top:7px;border-top-width:3px}
@media(max-width:1024px){.lt b{font-size:2rem}.lt small{font-size:.66rem}}
@media(max-width:600px){.lt b{font-size:1.75rem}.lt small{font-size:.58rem;letter-spacing:.15em;margin-top:5px;padding-top:5px}}
footer .lt b{font-size:2.1rem}
@media(min-width:1025px){nav{height:88px}.menu{top:88px}}

/* smaller tagline under the logo */
.lt small{font-size:.56rem;letter-spacing:.17em;margin-top:6px;padding-top:6px;border-top-width:2px;font-weight:600}
@media(max-width:1024px){.lt small{font-size:.54rem}}
@media(max-width:600px){.lt small{font-size:.5rem;letter-spacing:.14em;margin-top:4px;padding-top:4px}}

/* CTA buttons: call = icon only; quote opens popup */
.btn.icon-only{padding:0;width:50px;height:50px;justify-content:center;gap:0}
.btn.icon-only svg{width:22px;height:22px}
.hcall{width:44px;height:44px;border:1px solid var(--line);border-radius:4px;background:var(--surface);display:inline-flex!important;align-items:center;justify-content:center;gap:0}
.hcall svg{width:20px;height:20px;color:var(--pt)}
.hcall:hover{border-color:var(--p);background:var(--p-soft)}
.menu .mq{display:none}
@media(max-width:600px){.nbtn{display:none!important}.menu .mq{display:block;width:100%;padding-top:8px}.menu .mq a{display:flex!important;justify-content:center;width:100%;padding:12px!important;font-size:1rem}}
@media(min-width:601px){.nbtn{display:inline-flex!important}}
.hero .cta .btn.icon-only,.cb .cta .btn.icon-only{width:50px}
@media(max-width:600px){.hero .cta .btn.icon-only,.cb .cta .btn.icon-only{width:100%;height:50px}}
.qm[hidden]{display:none}
.qm{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:16px}
.qm-backdrop{position:absolute;inset:0;background:rgba(13,17,40,.6)}
.qm-box{position:relative;width:min(640px,100%);max-height:calc(100vh - 32px);overflow:auto;background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:8px;padding:28px;box-shadow:0 24px 60px -20px rgba(0,0,0,.6)}
.qm-box h2{font-size:1.4rem;margin:0 0 4px}
.qm-sub{color:var(--mut);margin-bottom:16px;font-size:.95rem}
.qm-box form{display:grid;gap:12px}
.qm-x{position:absolute;top:10px;right:12px;width:36px;height:36px;border:0;background:transparent;color:var(--ink);font-size:1.8rem;line-height:1;cursor:pointer;border-radius:4px}
.qm-x:hover{background:var(--surface2)}
.qm-actions{display:flex;gap:10px;flex-wrap:wrap}
.qm-err{color:#b3261e;font-weight:600;margin:0}
.qm-ok{color:var(--pt);font-weight:600;margin:0}
html.qm-open{overflow:hidden}
@media(max-width:600px){.qm-box{padding:20px 16px}.qm-actions .btn{width:100%;justify-content:center}}
