@font-face{font-family:Fraunces;font-weight:400;font-style:normal;font-display:swap;src:url(/fonts/fraunces-latin-400-normal.woff2) format('woff2')}
@font-face{font-family:Fraunces;font-weight:400;font-style:italic;font-display:swap;src:url(/fonts/fraunces-latin-400-italic.woff2) format('woff2')}
@font-face{font-family:Fraunces;font-weight:600;font-display:swap;src:url(/fonts/fraunces-latin-600-normal.woff2) format('woff2')}
@font-face{font-family:Fraunces;font-weight:700;font-display:swap;src:url(/fonts/fraunces-latin-700-normal.woff2) format('woff2')}
@font-face{font-family:'DM Sans';font-weight:400;font-display:swap;src:url(/fonts/dm-sans-latin-400-normal.woff2) format('woff2')}
@font-face{font-family:'DM Sans';font-weight:500;font-display:swap;src:url(/fonts/dm-sans-latin-500-normal.woff2) format('woff2')}
@font-face{font-family:'DM Sans';font-weight:700;font-display:swap;src:url(/fonts/dm-sans-latin-700-normal.woff2) format('woff2')}

:root{--navy:#1F2A44;--mari:#F2B33D;--mari-d:#C98A10;--mari-l:#FCE9C0;--mari-xl:#FEF6E4;--paper:#FBF7EF;
--green:#3C7A5A;--green-l:#DCEDE2;--brick:#C8553D;--brick-l:#F7DDD6;--gray:#8A8F98;--gray-d:#5B6170;--line:#E8E0CF;
--r:20px;--max:1180px}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:'DM Sans',system-ui,sans-serif;color:var(--navy);background:var(--paper);-webkit-font-smoothing:antialiased;line-height:1.55;font-size:17px}
img{max-width:100%;height:auto;display:block}
.ui{width:100%;margin:-20px 0}
.herovis{position:relative}
.herovis .ui{width:112%;max-width:none;margin-left:-4%}
.herovis .phone{position:absolute;right:-2%;bottom:-14%;width:30%;transform:rotate(4deg);filter:drop-shadow(0 20px 30px rgba(31,42,68,.35))}
@media(max-width:900px){.herovis .ui{width:100%;margin-left:0}.herovis .phone{width:34%;right:0}}
a{color:inherit}
.wrap{max-width:var(--max);margin:0 auto;padding:0 24px}
.stripe{height:8px;background:repeating-linear-gradient(90deg,var(--mari) 0 48px,var(--paper) 48px 96px)}
h1,h2,h3{font-family:Fraunces,Georgia,serif;font-weight:700;letter-spacing:-.02em;line-height:1.05}
h1{font-size:clamp(44px,7vw,84px)}
h2{font-size:clamp(34px,4.6vw,56px)}
h3{font-size:26px;letter-spacing:-.01em}
.k{font-size:13px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--mari-d);margin-bottom:14px}
.lede{font-size:clamp(18px,2vw,21px);color:var(--gray-d);max-width:620px}
.btn{display:inline-flex;align-items:center;gap:8px;background:var(--navy);color:#fff;text-decoration:none;font-weight:700;padding:16px 26px;border-radius:999px;font-size:16px;border:0;cursor:pointer;transition:transform .15s,box-shadow .15s}
.btn:hover{transform:translateY(-2px);box-shadow:0 10px 24px -10px rgba(31,42,68,.5)}
.btn.m{background:var(--mari);color:var(--navy)}
.btn.ghost{background:transparent;color:var(--navy);box-shadow:inset 0 0 0 2px var(--navy)}
.badges{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}
.badge{display:inline-flex;align-items:center;gap:8px;background:#fff;border-radius:999px;padding:9px 16px;font-size:14px;font-weight:700;box-shadow:0 4px 12px rgba(31,42,68,.06)}
.badge:before{content:"";width:9px;height:9px;border-radius:50%;background:var(--mari)}

/* nav */
nav{position:sticky;top:0;z-index:20;background:rgba(251,247,239,.92);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
nav .wrap{display:flex;align-items:center;justify-content:space-between;height:68px}
.logo{display:flex;align-items:center;gap:10px;text-decoration:none;font-family:Fraunces;font-weight:600;font-size:21px}
.logo img{width:30px}
nav ul{display:flex;gap:28px;list-style:none;align-items:center;font-weight:500;font-size:15px}
nav ul a{text-decoration:none}
nav ul a:hover{color:var(--mari-d)}
nav .btn{padding:11px 18px;font-size:14px}
@media(max-width:760px){nav ul li:not(:last-child){display:none}}

/* sections */
section{padding:96px 0}
.hero{padding:70px 0 40px}
.hero .grid{display:grid;grid-template-columns:1fr 1.15fr;gap:48px;align-items:center}
.hero h1 em{font-style:normal;color:var(--mari-d)}
.hero .ctas{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}
.shot{border-radius:var(--r);overflow:hidden;box-shadow:0 30px 60px -24px rgba(31,42,68,.4)}
@media(max-width:900px){.hero .grid{grid-template-columns:1fr}}

.problem{background:var(--navy);color:#fff}
.problem .grid{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.problem p{color:#C9CDD6;font-size:19px;margin-top:18px}
.problem strong{color:var(--mari)}
@media(max-width:900px){.problem .grid{grid-template-columns:1fr}}

.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:48px}
.step{background:#fff;border-radius:var(--r);padding:34px 30px}
.step .n{width:56px;height:56px;border-radius:14px;background:var(--mari);font-family:Fraunces;font-weight:700;font-size:28px;display:flex;align-items:center;justify-content:center;margin-bottom:22px}
.step p{color:var(--gray-d);margin-top:10px;font-size:16px}
@media(max-width:820px){.steps{grid-template-columns:1fr}}

.feature{display:grid;grid-template-columns:1fr 1.25fr;gap:56px;align-items:center;margin-top:90px}
.feature.flip{grid-template-columns:1.25fr 1fr}
.feature.flip .txt{order:2}
.feature p{color:var(--gray-d);margin-top:16px;font-size:18px}
.feature ul{margin-top:18px;list-style:none}
.feature li{padding-left:28px;position:relative;margin-bottom:8px}
.feature li:before{content:"✓";position:absolute;left:0;color:var(--green);font-weight:700}
@media(max-width:900px){.feature,.feature.flip{grid-template-columns:1fr}.feature.flip .txt{order:0}}

.pricing{background:#fff}
.plans{display:grid;grid-template-columns:1fr 1fr;gap:26px;margin-top:50px;max-width:980px}
.plan{background:var(--paper);border-radius:24px;padding:40px 36px;position:relative;border:2px solid transparent}
.plan.best{border-color:var(--mari);background:var(--mari-xl)}
.plan .tag{position:absolute;top:-14px;left:36px;background:var(--mari);font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:6px 12px;border-radius:999px}
.price{font-family:Fraunces;font-size:56px;font-weight:700;margin:14px 0 4px}
.price small{font-family:'DM Sans';font-size:16px;color:var(--gray-d);font-weight:500}
.plan ul{list-style:none;margin:22px 0 30px}
.plan li{padding:9px 0 9px 30px;border-bottom:1px solid var(--line);position:relative;font-size:16px}
.plan li:before{content:"✓";position:absolute;left:2px;color:var(--green);font-weight:700}
.plan .btn{width:100%;justify-content:center}
.plan .note{font-size:13px;color:var(--gray);text-align:center;margin-top:12px}
@media(max-width:820px){.plans{grid-template-columns:1fr}}

.optin{background:var(--mari)}
.optin .grid{display:grid;grid-template-columns:1.1fr .9fr;gap:56px;align-items:center}
.optin .lede{color:var(--navy);opacity:.85}
form.cap{margin-top:28px;display:grid;gap:12px;max-width:520px}
form.cap .row{display:grid;grid-template-columns:1fr 1.3fr;gap:12px}
form.cap input{font:inherit;font-size:16px;padding:16px 18px;border-radius:14px;border:2px solid transparent;background:#fff;color:var(--navy);width:100%}
form.cap input:focus{outline:none;border-color:var(--navy)}
form.cap .fine{font-size:13px;opacity:.75}
.hidden{position:absolute;left:-9999px}
.optin img{border-radius:var(--r);box-shadow:0 30px 60px -24px rgba(31,42,68,.45);transform:rotate(2deg);max-width:420px;margin-left:auto}
@media(max-width:900px){.optin .grid{grid-template-columns:1fr}form.cap .row{grid-template-columns:1fr}.optin img{margin:0 auto}}

.faq{max-width:820px}
details{background:#fff;border-radius:16px;padding:22px 26px;margin-top:14px}
summary{font-weight:700;font-size:18px;cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:16px}
summary:after{content:"+";font-family:Fraunces;font-size:26px;line-height:1;color:var(--mari-d)}
details[open] summary:after{content:"–"}
details p{color:var(--gray-d);margin-top:12px}

footer{background:var(--navy);color:#C9CDD6;padding:56px 0 40px;font-size:15px}
footer .grid{display:flex;justify-content:space-between;gap:32px;flex-wrap:wrap;align-items:flex-start}
footer .logo{color:#fff}
footer a{color:#fff}
footer .small{font-size:13px;margin-top:28px;opacity:.7}

.center{text-align:center}.center .lede{margin:16px auto 0}
.card-page{min-height:calc(100vh - 140px);display:flex;align-items:center;padding:60px 0}
.panel{background:#fff;border-radius:28px;padding:56px 48px;max-width:760px;margin:0 auto;box-shadow:0 30px 60px -30px rgba(31,42,68,.3)}
.dl{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.code{display:inline-block;background:var(--mari);font-weight:700;padding:4px 10px;border-radius:8px;letter-spacing:.04em}

.grid>*{min-width:0}
form.cap input{min-width:0}
body{overflow-x:hidden}
.optin img{max-width:min(420px,100%)}
@media(max-width:900px){.wrap.grid{grid-template-columns:minmax(0,1fr)!important}}
.logo,.btn{white-space:nowrap}
@media(max-width:480px){.logo{font-size:18px}.logo img{width:26px}nav .btn{padding:10px 14px;font-size:13px}}
