@font-face{font-family:"Plus Jakarta Sans";src:url(/fonts/plus-jakarta-sans-latin-wght-normal.woff2) format("woff2");font-weight:200 800;font-display:swap}
:root{--bone:#f4f1ea;--bone2:#ebe6db;--paper:#fbfaf6;--ink:#23221f;--ink2:#55524b;--line:#ddd7ca;--fjord:#2f5d7c;--fjord2:#244a63;--sage:#2f6a40;--amber:#8a5a12;--r:18px;--sh:0 1px 2px rgba(35,34,31,.06),0 12px 32px -12px rgba(35,34,31,.18)}
*{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bone);color:var(--ink);font:400 17px/1.6 "Plus Jakarta Sans",system-ui,-apple-system,Segoe UI,sans-serif;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img{max-width:100%;height:auto;display:block}a{color:var(--fjord)}
h1,h2,h3{letter-spacing:-.025em;line-height:1.1;margin:0;font-weight:750}
h1{font-size:clamp(2.3rem,6.4vw,4.1rem);letter-spacing:-.035em}h1 em{font-style:normal;color:var(--fjord)}
h2{font-size:clamp(1.85rem,4.4vw,2.9rem)}h3{font-size:1.22rem;letter-spacing:-.015em}
p{margin:0}.wrap{max-width:1180px;margin:0 auto;padding:0 20px}.narrow{max-width:820px}
.skip{position:absolute;left:-999px;top:8px;background:var(--ink);color:#fff;padding:8px 12px;border-radius:8px;z-index:99}.skip:focus{left:8px}
:focus-visible{outline:3px solid var(--fjord);outline-offset:3px;border-radius:6px}
.btn{display:inline-flex;align-items:center;gap:.5em;justify-content:center;background:var(--fjord);color:#fff;text-decoration:none;font-weight:650;border-radius:12px;padding:12px 20px;border:1px solid transparent;transition:transform .15s,background .15s,box-shadow .15s;box-shadow:0 1px 0 rgba(255,255,255,.15) inset,0 6px 16px -6px rgba(47,93,124,.6)}
.btn:hover{background:var(--fjord2);transform:translateY(-1px)}.btn.sm{padding:8px 14px;font-size:.92rem;border-radius:10px}.btn.lg{padding:15px 24px;font-size:1.04rem}.btn.block{width:100%}
.btn.ghost{background:transparent;color:var(--ink);border-color:var(--line);box-shadow:none}.btn.ghost:hover{background:var(--paper)}
.btn.light{background:var(--bone);color:var(--ink);box-shadow:none}.btn.light:hover{background:#fff}
.nav{position:sticky;top:0;z-index:20;background:rgba(244,241,234,.82);backdrop-filter:saturate(1.4) blur(12px);-webkit-backdrop-filter:saturate(1.4) blur(12px);border-bottom:1px solid transparent;transition:border-color .2s}
.nav.scrolled{border-bottom-color:var(--line)}
.navin{display:flex;align-items:center;justify-content:space-between;height:64px;gap:16px}
.logo{display:inline-flex;align-items:center;gap:10px;font-weight:750;font-size:1.12rem;color:var(--ink);text-decoration:none;letter-spacing:-.02em}
.links{display:none;gap:28px}.links a{color:var(--ink2);text-decoration:none;font-weight:550;font-size:.95rem}.links a:hover{color:var(--ink)}
.hero{padding:44px 0 56px;overflow:hidden;background:radial-gradient(900px 500px at 85% 10%,rgba(47,93,124,.11),transparent 60%),radial-gradient(700px 400px at 0% 100%,rgba(47,106,64,.08),transparent 60%)}
.herogrid{display:grid;gap:44px}
.eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:.86rem;font-weight:600;color:var(--ink2);background:var(--paper);border:1px solid var(--line);padding:6px 12px;border-radius:99px;margin-bottom:22px}
.dot{width:8px;height:8px;border-radius:50%;background:var(--sage);box-shadow:0 0 0 4px rgba(47,106,64,.15)}
.lead{font-size:1.14rem;color:var(--ink2);margin:20px 0 28px;max-width:36em}
.ctas{display:flex;flex-wrap:wrap;gap:12px}.ctas .btn{flex:1 1 auto}
.trust{list-style:none;padding:0;margin:20px 0 0;display:flex;flex-wrap:wrap;gap:8px 18px;font-size:.93rem;font-weight:600;color:var(--ink2)}
.trust li{display:flex;align-items:center;gap:6px}.trust svg{width:18px;height:18px;fill:none;stroke:var(--sage);stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.heroviz{position:relative;padding:0 0 40px}
.laptop{margin:0;background:#fff;border-radius:14px;border:1px solid var(--line);box-shadow:var(--sh),0 40px 80px -40px rgba(35,34,31,.35);overflow:hidden}
.lbar{display:flex;align-items:center;gap:6px;height:30px;padding:0 12px;background:var(--bone2);border-bottom:1px solid var(--line)}
.lbar i{width:9px;height:9px;border-radius:50%;background:#cfc8b8}.lbar span{margin:0 auto;font-size:.72rem;color:var(--ink2);background:var(--paper);padding:2px 14px;border-radius:6px}
.phone{margin:0;background:var(--ink);padding:7px;border-radius:38px;box-shadow:var(--sh),0 30px 60px -24px rgba(35,34,31,.45);max-width:250px;position:relative}
.phone img{border-radius:31px;width:100%}
.phone::before{content:"";position:absolute;top:15px;left:50%;transform:translateX(-50%);width:64px;height:18px;border-radius:12px;background:var(--ink);z-index:1}
.hp{position:absolute;right:-6px;bottom:0;width:40%;max-width:210px}
.heroviz .laptop{width:92%}
.chip{position:absolute;background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:8px 12px;font-size:.8rem;box-shadow:var(--sh);white-space:nowrap}
.c1{left:-4px;bottom:62px}.c2{right:30%;top:-14px;display:none}.ok{color:var(--sage);font-weight:800}
.strip{border-block:1px solid var(--line);background:var(--paper)}.stripin{padding:18px 20px;text-align:center;color:var(--ink2);font-size:.95rem}
.sec{padding:84px 0}.sec.alt{background:var(--paper);border-block:1px solid var(--line)}
.head{max-width:720px;margin:0 auto 48px;text-align:center}.kicker{color:var(--fjord);font-weight:700;font-size:.85rem;letter-spacing:.08em;text-transform:uppercase;margin-bottom:12px}
.sub{color:var(--ink2);font-size:1.08rem;margin-top:14px}
.steps{list-style:none;padding:0;margin:0;display:grid;gap:16px;counter-reset:s}
.steps li{background:var(--paper);border:1px solid var(--line);border-radius:var(--r);padding:26px}
.steps p{color:var(--ink2);margin-top:8px}
.num{display:inline-grid;place-items:center;width:38px;height:38px;border-radius:11px;background:var(--ink);color:var(--bone);font-weight:750;margin-bottom:16px}
.tabs{background:var(--bone);border:1px solid var(--line);border-radius:24px;padding:10px;margin-bottom:72px}
.tablist{display:flex;gap:6px;background:var(--bone2);border-radius:14px;padding:5px;max-width:420px;margin:0 auto 4px}
.tablist button{flex:1;font:inherit;font-weight:650;font-size:.95rem;border:0;background:transparent;color:var(--ink2);padding:10px 12px;border-radius:10px;cursor:pointer}
.tablist button[aria-selected=true]{background:var(--paper);color:var(--ink);box-shadow:0 1px 3px rgba(0,0,0,.08)}
.tabpanel{padding:24px 14px 14px}
.tabgrid{display:grid;gap:28px;align-items:center}
.ticks{list-style:none;padding:0;margin:0;display:grid;gap:14px}
.ticks li{position:relative;padding-left:32px;color:var(--ink2)}.ticks li b{color:var(--ink)}
.ticks li::before{content:"";position:absolute;left:0;top:3px;width:21px;height:21px;border-radius:50%;background:rgba(47,106,64,.12) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M5.5 10.5l3 3 6-6.5' fill='none' stroke='%232f6a40' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/15px no-repeat}
.ticks.small{gap:10px;font-size:.95rem;margin:22px 0 26px}
.phone.sm{width:240px;max-width:80%;margin:0 auto}.laptop.sm{width:100%}
.feat{display:grid;gap:32px;align-items:center;margin-bottom:72px}
.ftxt h3{font-size:clamp(1.5rem,3.2vw,2.1rem);letter-spacing:-.03em;margin:10px 0 14px}.ftxt p{color:var(--ink2);font-size:1.06rem;max-width:30em}
.fviz{display:flex;justify-content:center;background:linear-gradient(160deg,var(--bone2),var(--bone));border:1px solid var(--line);border-radius:28px;padding:36px 20px 0;overflow:hidden;max-height:440px}
.fviz .phone{width:250px;max-width:80%;border-bottom-left-radius:0;border-bottom-right-radius:0}
.tag{display:inline-block;font-size:.8rem;font-weight:700;padding:4px 10px;border-radius:99px}
.tag.fjord{background:rgba(47,93,124,.1);color:var(--fjord)}.tag.sage{background:rgba(47,106,64,.1);color:var(--sage)}.tag.amber{background:rgba(138,90,18,.1);color:var(--amber)}
.cards{display:grid;gap:16px}
.card{background:var(--bone);border:1px solid var(--line);border-radius:var(--r);padding:24px 24px 0;overflow:hidden;display:flex;flex-direction:column}
.card p{color:var(--ink2);font-size:.96rem;margin:8px 0 20px}
.card img{margin-top:auto;border-radius:16px 16px 0 0;border:1px solid var(--line);border-bottom:0;height:220px;object-fit:cover;object-position:top}
.ic{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;margin-bottom:14px}
.ic svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.ic.sage{background:rgba(47,106,64,.11);color:var(--sage)}.ic.fjord{background:rgba(47,93,124,.11);color:var(--fjord)}.ic.amber{background:rgba(138,90,18,.11);color:var(--amber)}
.cmp{border:1px solid var(--line);border-radius:var(--r);overflow:hidden;background:var(--paper);max-width:900px;margin:0 auto}
.crow{display:grid;grid-template-columns:1.2fr 1fr;gap:4px 16px;padding:16px 20px;border-top:1px solid var(--line);font-size:.96rem}
.crow:first-child{border-top:0}.crow>span:first-child{grid-column:1/-1;font-weight:650}
.crow .q{color:var(--ink2)}.crow .us{color:var(--ink)}.y{color:var(--sage)}
.chead{background:var(--bone2);font-size:.8rem;text-transform:uppercase;letter-spacing:.06em;color:var(--ink2);font-weight:700}.chead>span:first-child{display:none}.chead .us{color:var(--fjord)}
.pricegrid{display:grid;gap:20px;max-width:960px;margin:0 auto}
.plan,.calc{background:var(--bone);border:1px solid var(--line);border-radius:24px;padding:30px}
.plan{background:var(--ink);color:var(--bone);border-color:var(--ink)}
.plan .ticks li{color:#d8d3c7}.plan .ticks li::before{background-color:rgba(255,255,255,.12)}
.pname{font-weight:700;color:#bfb9ac;font-size:.9rem;text-transform:uppercase;letter-spacing:.08em}
.pbig{font-size:1.2rem;margin-top:10px}.pbig span{font-size:3.6rem;font-weight:780;letter-spacing:-.04em}
.pmeta{color:#bfb9ac}.pplus{margin-top:8px;font-weight:650;color:#e9c98f}
.fine{font-size:.85rem;color:var(--ink2);margin-top:14px;text-align:center}.plan .fine{color:#bfb9ac}
.clab{font-weight:650;display:block}.cval{font-size:2.6rem;font-weight:780;letter-spacing:-.04em;margin:8px 0 6px}.cval span{font-size:1.1rem;font-weight:600;color:var(--ink2);letter-spacing:0}
input[type=range]{width:100%;-webkit-appearance:none;appearance:none;height:8px;border-radius:9px;background:linear-gradient(90deg,var(--fjord) var(--p,14%),var(--line) var(--p,14%));outline-offset:6px}
input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:28px;height:28px;border-radius:50%;background:#fff;border:3px solid var(--fjord);box-shadow:0 2px 8px rgba(0,0,0,.2);cursor:grab}
input[type=range]::-moz-range-thumb{width:24px;height:24px;border-radius:50%;background:#fff;border:3px solid var(--fjord);cursor:grab}
.cticks{display:flex;justify-content:space-between;font-size:.78rem;color:var(--ink2);margin-top:8px}
.cbreak{margin:24px 0 0;display:grid;gap:10px}.cbreak div{display:flex;justify-content:space-between;gap:12px;color:var(--ink2)}.cbreak dd{margin:0;font-variant-numeric:tabular-nums;color:var(--ink);font-weight:600}
.ctotal{border-top:1px solid var(--line);padding-top:14px;margin-top:4px}.ctotal dt{color:var(--ink);font-weight:700}.ctotal dd{font-size:1.6rem;font-weight:780;color:var(--fjord)}
.faq details{border-bottom:1px solid var(--line)}.faq details:first-child{border-top:1px solid var(--line)}
.faq summary{list-style:none;cursor:pointer;padding:22px 40px 22px 0;font-weight:650;font-size:1.06rem;position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"";position:absolute;right:6px;top:50%;width:12px;height:12px;border-right:2px solid var(--ink2);border-bottom:2px solid var(--ink2);transform:translateY(-70%) rotate(45deg);transition:transform .25s}
.faq details[open] summary::after{transform:translateY(-30%) rotate(225deg)}
.faq details div{color:var(--ink2);padding:0 0 22px;max-width:44em}
.band{padding:0 0 84px}.bandin{background:var(--fjord);color:#fff;border-radius:28px;padding:56px 24px;text-align:center;background-image:radial-gradient(600px 300px at 80% 0%,rgba(255,255,255,.14),transparent 60%),radial-gradient(500px 300px at 0% 100%,rgba(47,106,64,.45),transparent 60%)}
.bandin p{opacity:.88;margin:14px 0 28px;font-size:1.1rem}
.foot{border-top:1px solid var(--line);padding:40px 0 48px;font-size:.93rem}
.footin{display:grid;gap:24px}.foot nav{display:flex;flex-wrap:wrap;gap:12px 22px}.foot nav a,.foot a{color:var(--ink2);text-decoration:none}.foot a:hover{color:var(--ink)}
.muted{color:var(--ink2);margin-top:6px}
.reveal{opacity:0;transform:translateY(18px);transition:opacity .7s cubic-bezier(.2,.7,.2,1),transform .7s cubic-bezier(.2,.7,.2,1)}
.reveal.in,.no-js .reveal{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}html{scroll-behavior:auto}}
@media (min-width:720px){
 .steps{grid-template-columns:repeat(3,1fr)}.cards{grid-template-columns:repeat(2,1fr)}
 .crow{grid-template-columns:1.3fr 1fr 1fr;align-items:center}.crow>span:first-child{grid-column:auto}.chead>span:first-child{display:block}
 .pricegrid{grid-template-columns:1fr 1.15fr;align-items:stretch}.footin{grid-template-columns:1.3fr 2fr 1fr;align-items:start}
 .c2{display:block}.ctas .btn{flex:0 0 auto}
}
@media (min-width:960px){
 .links{display:flex}.hero{padding:72px 0 96px}
 .herogrid{grid-template-columns:1fr 1.08fr;align-items:center;gap:56px}
 .tabgrid{grid-template-columns:1fr 1.3fr;padding:12px 20px}
 .feat{grid-template-columns:1fr 1fr;gap:64px}.feat.rev .ftxt{order:2}
 .cards{grid-template-columns:repeat(4,1fr)}.sec{padding:112px 0}
}
.logo img{width:auto}.nav .logo img{height:28px}.foot .logo img{height:24px}
