/* Montserrat, self-hosted, SIL OFL 1.1 (assets/fonts/OFL.txt) */
@font-face{font-family:"Montserrat";src:url("fonts/montserrat-latin-500.woff2") format("woff2");font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:"Montserrat";src:url("fonts/montserrat-latin-600.woff2") format("woff2");font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:"Montserrat";src:url("fonts/montserrat-latin-700.woff2") format("woff2");font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:"Montserrat";src:url("fonts/montserrat-latin-800.woff2") format("woff2");font-weight:800;font-style:normal;font-display:swap}
/* Hayseed Live: Consumers + Enterprise mockups. Palette: #05223A navy, #C49E52 gold, #FFFFFF white only.
   Tints below are the same three colors at lower opacity. */
:root{
  --navy:#05223A; --gold:#C49E52; --white:#FFFFFF;
  --navy-70:rgba(5,34,58,.74); --navy-12:rgba(5,34,58,.12); --navy-06:rgba(5,34,58,.05);
  --gold-16:rgba(196,158,82,.16); --gold-40:rgba(196,158,82,.45);
  --white-80:rgba(255,255,255,.82); --white-14:rgba(255,255,255,.14); --white-08:rgba(255,255,255,.07);
  --font:"Montserrat","Segoe UI",-apple-system,BlinkMacSystemFont,Roboto,Helvetica,Arial,sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--font);color:var(--navy);background:var(--white);line-height:1.6;font-size:17px;-webkit-font-smoothing:antialiased}
img,svg{display:block;max-width:100%}
a{color:inherit}
.wrap{max-width:1160px;margin:0 auto;padding:0 32px}
.sr{position:absolute;left:-9999px}

/* header */
.site-header{position:sticky;top:0;z-index:20;background:var(--white);border-bottom:1px solid var(--navy-12)}
.site-header .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:84px}
.logo-link{display:block;line-height:0}
.logo-h{height:68px;width:auto}
.header-right{display:flex;align-items:center;gap:22px}
.anchors{display:flex;gap:24px;font-size:15px;font-weight:500}
.anchors a{text-decoration:none;color:var(--navy-70)}
.anchors a:hover{color:var(--navy)}
.toggle{display:inline-flex;background:var(--navy-06);border:1px solid var(--navy-12);border-radius:999px;padding:4px}
.toggle a{text-decoration:none;font-weight:700;font-size:14px;padding:8px 18px;border-radius:999px;color:var(--navy-70)}
.toggle a[aria-current="page"]{background:var(--navy);color:var(--white)}
.toggle a:not([aria-current]):hover{color:var(--navy)}

/* buttons */
.btn{display:inline-block;text-decoration:none;font-weight:700;font-size:16px;padding:14px 26px;border-radius:10px;border:2px solid var(--gold);background:var(--gold);color:var(--navy);transition:transform .12s}
.btn:hover{transform:translateY(-1px)}
.btn.sm{padding:10px 18px;font-size:14.5px}
.btn.ghost{background:transparent;color:var(--white);border-color:var(--white-80)}
.btn.ghost-dark{background:transparent;color:var(--navy);border-color:var(--navy)}
.btn.navy{background:var(--navy);border-color:var(--navy);color:var(--white)}

/* hero */
.hero{background:var(--navy);color:var(--white);padding:84px 0 92px;position:relative;overflow:hidden}
.hero::after{content:"";position:absolute;right:-140px;top:-140px;width:460px;height:460px;border-radius:50%;border:1px solid var(--gold-40);opacity:.5}
.hero .wrap{display:grid;grid-template-columns:1.15fr .85fr;gap:56px;align-items:center;position:relative;z-index:1}
.kicker{display:inline-block;font-size:12.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);margin-bottom:16px}
h1{font-size:50px;line-height:1.1;font-weight:800;letter-spacing:-.025em}
h1 em{font-style:normal;color:var(--gold)}
.lede{font-size:20px;color:var(--white-80);margin:22px 0 32px;max-width:600px}
.cta-row{display:flex;gap:14px;flex-wrap:wrap}
.fine{font-size:14px;color:var(--white-80);margin-top:18px}

/* cards on dark */
.panel{background:var(--white-08);border:1px solid var(--white-14);border-radius:18px;padding:26px}
.panel h3{font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);margin-bottom:14px}
.panel .tag-note{font-size:12.5px;color:var(--white-80);margin-top:14px;font-style:italic}
.run{display:flex;gap:12px;align-items:flex-start;padding:14px 0;border-top:1px solid var(--white-14)}
.run:first-of-type{border-top:0;padding-top:0}
.chip{flex:0 0 auto;font-size:11.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;padding:4px 10px;border-radius:6px;margin-top:2px}
.chip.ok{background:var(--gold);color:var(--navy)}
.chip.part{background:transparent;color:var(--gold);border:1.5px solid var(--gold)}
.chip.block{background:var(--white);color:var(--navy)}
.chip.fail{background:transparent;color:var(--white);border:1.5px solid var(--white)}
.run b{display:block;font-size:15.5px}
.run span.d{font-size:14px;color:var(--white-80)}
.factlist{list-style:none}
.factlist li{padding:12px 0 12px 28px;border-top:1px solid var(--white-14);position:relative;font-size:15.5px}
.factlist li:first-child{border-top:0;padding-top:0}
.factlist li::before{content:"";position:absolute;left:0;top:18px;width:12px;height:12px;border-radius:50%;background:var(--gold)}
.factlist li:first-child::before{top:6px}

/* sections */
section{padding:84px 0}
section.tint{background:var(--navy-06)}
h2{font-size:36px;line-height:1.18;font-weight:800;letter-spacing:-.02em;margin-bottom:14px;max-width:760px}
.kicker.on-light{color:var(--navy);border-bottom:3px solid var(--gold);padding-bottom:4px}
.sub{font-size:19px;color:var(--navy-70);max-width:700px;margin-bottom:44px}
.grid{display:grid;gap:22px}
.g2{grid-template-columns:repeat(2,1fr)}.g3{grid-template-columns:repeat(3,1fr)}.g4{grid-template-columns:repeat(4,1fr)}
.card{background:var(--white);border:1px solid var(--navy-12);border-radius:16px;padding:28px 26px;box-shadow:0 6px 20px rgba(5,34,58,.06)}
.card h3{font-size:19px;line-height:1.3;margin:14px 0 8px}
.card p{font-size:15.5px;color:var(--navy-70)}
.ico{width:46px;height:46px;border-radius:12px;background:var(--navy);display:flex;align-items:center;justify-content:center}
.ico svg{width:24px;height:24px;stroke:var(--gold);fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.num{width:46px;height:46px;border-radius:50%;background:var(--gold);color:var(--navy);font-weight:800;font-size:20px;display:flex;align-items:center;justify-content:center}
.step p{font-size:16px}

/* outcomes */
.out{border-radius:14px;padding:22px;border:1px solid var(--navy-12);background:var(--white)}
.out .chip{margin:0 0 10px;display:inline-block}
.out .chip.ok{background:var(--navy);color:var(--gold)}
.out .chip.part{color:var(--navy);border-color:var(--navy)}
.out .chip.block{background:var(--gold);color:var(--navy)}
.out .chip.fail{color:var(--navy);border-color:var(--navy);background:var(--gold-16)}
.out p{font-size:15px;color:var(--navy-70)}.out b{color:var(--navy);display:block;margin-bottom:4px;font-size:16px}

/* dark band */
.band{background:var(--navy);color:var(--white)}
.band h2{color:var(--white)}
.band .sub{color:var(--white-80)}
.band .card{background:var(--white-08);border-color:var(--white-14);box-shadow:none}
.band .card p{color:var(--white-80)}
.band .card h3{color:var(--white)}
.band .ico{background:var(--gold)}.band .ico svg{stroke:var(--navy)}

/* pricing */
.price{display:flex;flex-direction:column}
.price.hot{border:2px solid var(--gold);position:relative}
.price .badge{position:absolute;top:-14px;left:24px;background:var(--gold);color:var(--navy);font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;padding:5px 12px;border-radius:999px}
.price .amt{font-size:44px;font-weight:800;letter-spacing:-.02em;line-height:1.1;margin:8px 0 2px}
.price .amt small{font-size:16px;font-weight:600;color:var(--navy-70)}
.price .was{font-size:14px;color:var(--navy-70);margin-bottom:14px;min-height:42px}
.price ul{list-style:none;margin:6px 0 24px;flex:1}
.price li{font-size:15.5px;padding:7px 0 7px 26px;position:relative;color:var(--navy)}
.price li::before{content:"";position:absolute;left:2px;top:14px;width:10px;height:6px;border-left:2.5px solid var(--gold);border-bottom:2.5px solid var(--gold);transform:rotate(-45deg)}

/* faq */
details{border-bottom:1px solid var(--navy-12);padding:20px 0;max-width:820px}
summary{font-weight:700;font-size:18px;cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:20px;min-height:44px;padding:8px 0}
summary::after{content:"+";color:var(--gold);font-size:26px;line-height:1}
details[open] summary::after{content:"\2212"}
details p{margin-top:12px;color:var(--navy-70);font-size:16.5px;max-width:720px}

/* table */
.tbl{width:100%;border-collapse:collapse;background:var(--white);border:1px solid var(--navy-12);border-radius:14px;overflow:hidden}
.tbl th,.tbl td{text-align:left;padding:16px 20px;vertical-align:top;font-size:15.5px;border-top:1px solid var(--navy-12)}
.tbl thead th{background:var(--navy);color:var(--white);font-size:13px;letter-spacing:.12em;text-transform:uppercase;border-top:0}
.tbl thead th:first-child{color:var(--gold)}
.tbl td:first-child{font-weight:700;width:32%}
.pill{display:inline-block;font-size:11.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;padding:3px 10px;border-radius:6px;background:var(--navy);color:var(--gold);white-space:nowrap}
.pill.r{background:transparent;color:var(--navy);border:1.5px solid var(--navy)}
.pill.p{background:var(--gold);color:var(--navy)}

/* placeholder */
.ph{border:2px dashed var(--gold);background:var(--gold-16);border-radius:14px;padding:22px 24px;font-size:15.5px}
.ph b{display:inline-block;background:var(--gold);color:var(--navy);font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;padding:3px 10px;border-radius:6px;margin-right:8px}

/* CTA band */
.cta-band{background:var(--navy);color:var(--white);text-align:center;padding:84px 0}
.cta-band h2{margin:0 auto 14px;color:var(--white)}
.cta-band p{color:var(--white-80);font-size:19px;max-width:620px;margin:0 auto 30px}
.cta-band .cta-row{justify-content:center}

/* footer */
.site-footer{background:var(--navy);color:var(--white);border-top:1px solid var(--white-14);padding:56px 0 40px}
.site-footer .wrap{display:grid;grid-template-columns:240px 1fr auto;gap:48px;align-items:start}
.logo-s{width:200px;height:auto}
.site-footer p{font-size:14.5px;color:var(--white-80);max-width:460px}
.site-footer nav a{display:block;text-decoration:none;color:var(--white);font-weight:600;font-size:15px;padding:4px 0}
.site-footer nav a:hover{color:var(--gold)}
.legal{grid-column:1/-1;border-top:1px solid var(--white-14);padding-top:22px;font-size:13px;color:var(--white-80)}

.site-strip{background:var(--navy);border-bottom:1px solid var(--white-14)}
.site-strip .wrap{padding-top:9px;padding-bottom:9px}
.site-strip nav{display:flex;flex-wrap:wrap;gap:6px 22px}
.site-strip a{color:var(--white);text-decoration:none;font-size:14px;font-weight:600}
.site-strip a:hover,.site-strip a:focus-visible{color:var(--gold)}
.site-footer nav{display:grid;grid-template-columns:repeat(2,auto);column-gap:44px;align-content:start}
@media (max-width:640px){.site-footer nav{column-gap:28px}.site-strip a{font-size:13px}}
@media (max-width:900px){
  .hero .wrap{grid-template-columns:1fr;gap:40px}
  .g3,.g4{grid-template-columns:repeat(2,1fr)}
  .anchors{display:none}
  .site-footer .wrap{grid-template-columns:1fr;gap:28px}
}
@media (max-width:640px){
  body{font-size:16px}
  .wrap{padding:0 20px}
  .site-header .wrap{min-height:68px}
  .logo-h{height:44px}
  .header-right .btn{display:none}
  .toggle a{padding:7px 12px;font-size:13px}
  .hero{padding:52px 0 60px}
  h1{font-size:34px}
  .lede{font-size:17.5px}
  .btn{width:100%;text-align:center}
  .cta-row{flex-direction:column}
  section{padding:56px 0}
  h2{font-size:28px}
  .sub{font-size:17px;margin-bottom:30px}
  .g2,.g3,.g4{grid-template-columns:1fr}
  .tbl th,.tbl td{padding:12px 12px;font-size:14.5px}
  .tbl td:first-child{width:auto}
  .price .was{min-height:0}
  .cta-band{padding:60px 0}
}

/* terms / legal document layout */
.doc-hero{background:var(--navy);color:var(--white);padding:56px 0 52px}
.doc-hero h1{font-size:42px}
.doc-hero p{color:var(--white-80);font-size:18px;max-width:680px;margin-top:14px}
.doc-hero .meta{font-size:14px;margin-top:18px;color:var(--gold);font-weight:600}
.doc{display:grid;grid-template-columns:270px minmax(0,1fr);gap:56px;padding:56px 0 84px;align-items:start}
.toc{position:sticky;top:96px;border:1px solid var(--navy-12);border-radius:14px;padding:22px 22px 14px;background:var(--navy-06)}
.toc h2{font-size:12.5px;letter-spacing:.16em;text-transform:uppercase;margin:0 0 12px;color:var(--navy)}
.toc ol{list-style:none;counter-reset:t}
.toc li{counter-increment:t}
.toc a{display:block;text-decoration:none;font-size:14.5px;font-weight:600;padding:8px 0;border-top:1px solid var(--navy-12);color:var(--navy-70)}
.toc li:first-child a{border-top:0}
.toc a::before{content:counter(t) ". ";color:var(--gold);font-weight:800}
.toc a:hover{color:var(--navy)}
.terms-body section{padding:0 0 44px;scroll-margin-top:96px}
.terms-body h2{font-size:27px;margin:0 0 14px;max-width:none}
.terms-body h2 .n{color:var(--gold);margin-right:8px}
.terms-body p{margin:0 0 14px;color:var(--navy);font-size:16.5px;max-width:740px}
.terms-body ul,.terms-body ol.alpha{margin:0 0 16px 0;padding-left:22px;max-width:740px}
.terms-body li{margin-bottom:10px;font-size:16.5px}
.terms-body li::marker{color:var(--gold);font-weight:800}
.terms-body ol.alpha{list-style:none;padding-left:0}
.terms-body ol.alpha li{padding-left:44px;position:relative}
.terms-body ol.alpha li .l{position:absolute;left:0;top:0;width:30px;height:30px;border-radius:50%;background:var(--navy);color:var(--gold);font-weight:800;font-size:14px;display:flex;align-items:center;justify-content:center}
.terms-body h3{font-size:18px;margin:24px 0 10px}
.glance{max-width:740px;margin:6px 0 22px}
.glance .tbl td:first-child{width:46%}
.toc-m{display:none}
@media (max-width:900px){
  .doc{grid-template-columns:1fr;gap:28px;padding-top:36px}
  .toc{position:static}
  .doc-hero h1{font-size:32px}
}

.terms-body .ph{max-width:740px}
@media (max-width:640px){
  .logo-h{height:52px}
  .tbl.stack thead{display:none}
  .tbl.stack,.tbl.stack tbody,.tbl.stack tr,.tbl.stack td{display:block;width:100%}
  .tbl.stack tr{padding:14px 14px;border-top:1px solid var(--navy-12)}
  .tbl.stack tr:first-child{border-top:0}
  .tbl.stack td{border:0;padding:3px 0;width:100%!important}
  .tbl.stack td:nth-child(2){padding:6px 0}
}
.price.hot .was{font-size:15.5px;color:var(--navy)}

@media (max-width:640px){.header-right .btn.keep{display:inline-block;width:auto}}

/* pricing states: hidden hooks, skeleton, unavailable fallback, preview banner */
[hidden]{display:none!important}
.spec-banner{background:var(--gold);color:var(--navy);font-weight:800;font-size:13px;letter-spacing:.12em;text-transform:uppercase;text-align:center;padding:10px 16px}
.sk{display:block;border-radius:8px;background:linear-gradient(90deg,var(--navy-06) 0%,var(--navy-12) 50%,var(--navy-06) 100%);background-size:200% 100%;animation:shim 1.4s ease-in-out infinite}
.sk.amt-sk{width:46%;height:46px;margin:8px 0 14px}
.sk.l1{width:92%;height:12px;margin-bottom:9px}.sk.l2{width:70%;height:12px;margin-bottom:9px}.sk.l3{width:54%;height:12px;margin-bottom:4px}
@keyframes shim{from{background-position:200% 0}to{background-position:-200% 0}}
@media (prefers-reduced-motion:reduce){.sk{animation:none}}
.unavail{border:1.5px dashed var(--navy-12);border-radius:12px;padding:16px;margin:6px 0 10px;font-size:15.5px;color:var(--navy);background:var(--navy-06)}

.price-skel .skel-note{font-size:15px;font-weight:600;color:var(--navy);margin:8px 0 0}
.price-skel .skel-late{font-size:13.5px;color:var(--navy-70);margin:6px 0 4px;opacity:0;animation:late 0s linear 8s forwards}
@keyframes late{to{opacity:1}}
.noscript-note{border:1.5px solid var(--gold);background:var(--navy-06);border-radius:12px;padding:14px 18px;margin:0 0 22px;font-size:16px;font-weight:600;color:var(--navy);max-width:760px}
.price-skel{margin-bottom:12px}
