:root{
  --paper:#FBF7F0;--ink:#1E2430;--ink-2:#2D3546;--amber:#C9761E;--amber-d:#B5691A;
  --link:#9A5512;--link-d:#7A420C;--honey:#F4E4C8;--honey-2:#F2D9AE;--line:#E4DCCD;
  --muted:#5C6370;--body:#3A4150;--on-ink:#D9DDE5;--on-ink-muted:#B8BFCC;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;font-family:"Familjen Grotesk","Helvetica Neue",Arial,sans-serif;background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased;overflow-x:clip}
img{max-width:100%;display:block}
a{color:var(--link)}a:hover{color:var(--link-d)}
a:focus-visible,summary:focus-visible{outline:3px solid var(--amber);outline-offset:3px;border-radius:6px}
h1,h2,h3,p{margin:0}
h1{font-size:clamp(36px,5vw,56px);line-height:1.04;letter-spacing:-.025em;font-weight:600;text-wrap:balance}
h2{font-size:clamp(30px,3.6vw,40px);line-height:1.08;letter-spacing:-.02em;font-weight:600;text-wrap:balance}
h3{font-size:20px;line-height:1.25;font-weight:600}
p{font-size:18px;line-height:1.55;color:var(--body)}
.muted{color:var(--muted);font-size:15px;line-height:1.5}
.skip{position:absolute;left:-9999px}.skip:focus{left:16px;top:16px;background:var(--ink);color:var(--paper);padding:10px 14px;border-radius:8px;z-index:10}

.cta{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 28px;border-radius:999px;background:var(--ink);color:var(--paper);font-weight:600;font-size:17px;text-decoration:none;transition:background-color .15s}
.cta:hover{background:var(--ink-2);color:var(--paper)}
.cta-amber{background:var(--amber);color:var(--ink)}.cta-amber:hover{background:var(--amber-d);color:var(--ink)}

.wrap{width:min(1120px,100% - 32px);margin:0 auto}
.band{margin:104px 40px 0;border-radius:28px}
section.wrap{padding-top:104px}
.two{display:grid;grid-template-columns:1fr 1fr;gap:64px}

/* announcement countdown */
.announce{background:var(--ink);color:var(--paper);text-align:center;padding:10px 16px}
.announce p{color:var(--paper);font-size:15px;line-height:1.45;display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:6px 10px}
.announce strong{font-weight:600}
.announce-sub{color:var(--on-ink)}
.clock{font-variant-numeric:tabular-nums;font-weight:600;background:#2D3546;border-radius:8px;padding:2px 10px;color:#F2D9AE}
.announce a{color:#F2D9AE;font-weight:600}
.announce a:hover{color:#fff}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* nav */
.nav{padding:28px 80px;display:flex;justify-content:space-between;align-items:center;gap:16px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink);font-size:20px;font-weight:700;letter-spacing:-.01em}
.nav-links{display:flex;align-items:center;gap:28px;font-size:16px}
.nav-links a:not(.cta){color:var(--body);text-decoration:none}
.nav-links a:not(.cta):hover{color:var(--ink)}
.nav .cta{min-height:44px;font-size:16px;padding:0 22px}

/* hero */
.hero{margin:8px 40px 0;border-radius:28px;padding:72px 64px 64px;background:radial-gradient(120% 90% at 85% 10%,var(--honey-2) 0%,#F7E8CF 38%,var(--paper) 75%);display:grid;grid-template-columns:minmax(0,540px) 1fr;gap:52px;align-items:center}
.hero-copy{display:flex;flex-direction:column;gap:22px}
.eyebrow{font-size:16px;color:var(--link-d);font-weight:600}
.hero-cta{display:flex;align-items:center;gap:18px;margin-top:4px;flex-wrap:wrap}
.hero-media{display:flex;flex-direction:column;gap:14px}
.hero-media figure{margin:0;border-radius:20px;overflow:hidden;aspect-ratio:16/10;background:#E9DCC6}
.hero-media img{width:100%;height:100%;object-fit:cover}

/* holdbacks */
.checks{list-style:none;margin:0;padding:0;border-bottom:1px solid var(--line)}
.checks li{display:flex;gap:12px;padding:14px 0;border-top:1px solid var(--line);font-size:17px;line-height:1.45;color:var(--body)}
.checks svg{flex-shrink:0;margin-top:3px}
.checks strong{color:var(--ink);font-weight:600}

/* bridge */
.bridge{background:var(--ink);color:var(--paper);padding:88px 120px;display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:end}
.bridge h2{color:var(--paper);font-size:clamp(30px,3.8vw,46px)}
.bridge p{color:var(--on-ink)}
.stack{display:flex;flex-direction:column;gap:16px}

/* table */
.head-row{display:flex;justify-content:space-between;align-items:end;gap:48px;margin-bottom:36px}
.tbl{width:100%;border-collapse:collapse;font-size:17px}
.tbl th{font-weight:500;color:var(--muted);font-size:15px;text-align:left;padding:0 20px 14px 0;border-bottom:1px solid var(--ink)}
.tbl td{padding:22px 20px 22px 0;border-bottom:1px solid var(--line);vertical-align:top;line-height:1.45;color:var(--body)}
.tbl td:first-child{font-weight:600;color:var(--ink);width:210px}
.tbl td:nth-child(2){font-weight:600;color:var(--ink);width:300px}

/* morning queue */
.imagine{background:var(--honey);padding:88px 80px;display:grid;grid-template-columns:1fr minmax(0,520px);gap:72px;align-items:center}
.queue{background:var(--ink);border-radius:22px;padding:22px;display:flex;flex-direction:column;gap:10px}
.queue-top{display:flex;justify-content:space-between;align-items:center;padding:4px 6px 10px;color:var(--paper)}
.job{display:grid;grid-template-columns:1fr auto;gap:6px 16px;padding:14px 16px;border-radius:12px;background:#fff;align-items:center}
.job strong{font-size:16px}
.job .muted{font-size:14px}
.pill{font-size:13px;font-weight:600;padding:4px 10px;border-radius:999px;background:#F6E7CF;color:var(--link-d);white-space:nowrap;justify-self:end}
.pill-ink{background:#E6E9EF;color:var(--ink-2)}

/* offer */
.offer{border-radius:22px;background:#fff;border:1px solid var(--line);padding:40px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:48px}
.offer-side{display:flex;flex-direction:column;gap:16px}
.hb{padding:18px 0;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:4px}
.hb:last-child{border-bottom:1px solid var(--line)}
.hb p{font-size:16px}

/* steps */
.steps{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--ink)}
.steps > div{padding:24px 24px 0;display:flex;flex-direction:column;gap:10px;border-left:1px solid var(--line)}
.steps > div:first-child{padding-left:0;border-left:0}
.steps span{font-size:15px;color:var(--link);font-weight:600}
.steps p{font-size:16px}

/* rules */
.rules{margin:0;padding-left:22px;font-size:18px;line-height:1.75;color:var(--body)}
.promise{border-radius:22px;background:var(--honey);padding:36px;display:flex;flex-direction:column;gap:14px;align-self:start}

/* final */
.final{background:var(--ink);padding:72px 64px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,440px);gap:56px;align-items:center;overflow:hidden}
.final h2{color:var(--paper)}
.final p{color:var(--on-ink)}
.final figure{margin:0;border-radius:18px;overflow:hidden;aspect-ratio:16/10}
.final img{width:100%;height:100%;object-fit:cover}

/* faq */
.faq{display:grid;grid-template-columns:360px 1fr;gap:72px}
details{border-bottom:1px solid var(--line);padding:20px 0}
summary{font-size:19px;font-weight:600;cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:16px}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";font-weight:500;color:var(--link)}
details[open] summary::after{content:"\2212"}
details p{margin-top:10px;font-size:17px}

/* footer */
footer.wrap{margin-top:104px;padding:32px 0 48px;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}
.foot-links{display:flex;gap:24px;font-size:15px;flex-wrap:wrap}

/* legal pages */
.legal{max-width:720px;padding:40px 0 0}
.legal h1{font-size:clamp(32px,4vw,44px);margin-bottom:12px}
.legal h2{font-size:24px;margin:36px 0 10px}
.legal p,.legal li{font-size:17px;line-height:1.6;color:var(--body)}
.legal p+p{margin-top:12px}
.legal ul{padding-left:22px}

@media (max-width:1100px){
  .nav{padding:22px 32px}
  .hero{padding:56px 40px;gap:40px}
  .bridge,.imagine{padding:64px 48px}
}
@media (max-width:900px){
  .hero,.bridge,.imagine,.two,.offer,.faq,.final{grid-template-columns:1fr}
  .two,.bridge,.imagine,.faq,.offer,.final{gap:28px}
  .hero{gap:32px}
  .head-row{flex-direction:column;align-items:flex-start;gap:12px}
  .steps{grid-template-columns:1fr 1fr;row-gap:28px}
  .steps > div:nth-child(3){padding-left:0;border-left:0}
}
@media (max-width:640px){
  body{font-size:16px}
  p{font-size:17px}
  .nav{padding:16px}
  .announce{padding:8px 12px}
  .announce p{font-size:14px;gap:4px 8px}
  .announce a{display:none}
  .nav-links a:not(.cta){display:none}
  .nav .cta{min-height:40px;padding:0 18px;font-size:15px}
  .hero{margin:4px 0 0;border-radius:0;padding:28px 16px 40px}
  .hero-cta .cta{width:100%}
  .hero-cta .muted{text-align:center;width:100%}
  .band{margin:56px 0 0;border-radius:0}
  section.wrap{padding-top:56px}
  .bridge,.imagine,.final{padding:48px 16px}
  .queue{padding:14px}
  .offer{padding:24px;gap:20px}
  .offer .cta{width:100%}
  .tbl thead{display:none}
  .tbl,.tbl tbody,.tbl tr,.tbl td{display:block;width:100%}
  .tbl tr{padding:18px 0;border-bottom:1px solid var(--line)}
  .tbl td{padding:0;border:0;width:auto}
  .tbl td:first-child{font-size:18px;margin-bottom:6px;width:auto}
  .tbl td:nth-child(2){width:auto;margin-bottom:6px}
  .steps{grid-template-columns:1fr}
  .steps > div{padding:18px 0 0;border-left:0}
  .promise{padding:24px}
  .final .cta{width:100%}
  .final figure{display:none}
  footer.wrap{margin-top:56px;flex-direction:column;align-items:flex-start}
}
@media (prefers-reduced-motion:reduce){.cta{transition:none}}

/* compare / welcome */
.page-head{max-width:760px;display:flex;flex-direction:column;gap:14px;padding-top:40px}
.compare{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.12fr);gap:24px;align-items:stretch;margin-top:40px}
.opt{border-radius:22px;padding:32px;display:flex;flex-direction:column;gap:16px;border:1px solid var(--line);background:#fff}
.opt-best{background:var(--ink);border-color:var(--ink);box-shadow:0 24px 60px -30px rgba(30,36,48,.55)}
.opt-best h2,.opt-best h3{color:var(--paper)}
.opt-best p,.opt-best li{color:var(--on-ink)}
.opt-top{display:flex;justify-content:space-between;align-items:center;gap:12px}
.price{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}
.price b{font-size:40px;letter-spacing:-.02em;font-weight:600;color:var(--ink)}
.opt-best .price b{color:var(--paper)}
.price span{font-size:15px;color:var(--muted)}
.opt-best .price span{color:var(--on-ink-muted)}
.ticks{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
.ticks li{display:flex;gap:10px;padding:12px 0;border-top:1px solid var(--line);font-size:16px;line-height:1.45;color:var(--body)}
.opt-best .ticks li{border-top-color:#3A4356}
.ticks li::before{content:"";flex-shrink:0;width:18px;height:18px;margin-top:2px;border-radius:5px;background:var(--honey-2) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 18'%3E%3Cpath d='M4.5 9.5l3 3 6-7' fill='none' stroke='%231E2430' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/18px no-repeat}
.ticks li.plus{font-weight:600;color:var(--ink)}
.opt-best .ticks li.plus{color:var(--paper)}
.opt-best .ticks li::before{background-color:var(--amber)}
.opt .cta{margin-top:auto}
.ghost{background:transparent;color:var(--ink);border:1px solid var(--ink)}
.ghost:hover{background:var(--ink);color:var(--paper)}
.note{font-size:14px;color:var(--muted);line-height:1.5}
.opt-best .note{color:var(--on-ink-muted)}
.steps-list{counter-reset:s;list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:0;border-top:1px solid var(--line)}
.steps-list li{counter-increment:s;display:grid;grid-template-columns:44px 1fr;gap:14px;padding:20px 0;border-bottom:1px solid var(--line)}
.steps-list li::before{content:counter(s);width:32px;height:32px;border-radius:10px;background:var(--ink);color:var(--paper);display:flex;align-items:center;justify-content:center;font-weight:600}
.steps-list p{font-size:17px}
.upsell{border-radius:22px;background:var(--ink);padding:36px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:36px;margin-top:48px}
.upsell h2{color:var(--paper)}
.upsell p{color:var(--on-ink)}
.no-thanks{font-size:15px;color:var(--on-ink-muted)}
.no-thanks:hover{color:var(--paper)}
@media (max-width:900px){.compare,.upsell{grid-template-columns:1fr}.compare .opt-best{order:-1}}
@media (max-width:640px){.opt,.upsell{padding:24px}.opt .cta,.upsell .cta{width:100%}.price b{font-size:34px}}

.price-line{font-size:15px;color:var(--muted)}
.price-line span{font-weight:600;color:var(--ink)}
.opt-best .ticks li{color:var(--on-ink)}

[id]{scroll-margin-top:16px}
