/* ===========================================================
   WebStart — stylesheet
   Standalone deployment build (extracted from single-file source)
   =========================================================== */

/* ---------- tokens ---------- */
:root{
  --ink:#12161C;
  --ink-soft:#4A5361;
  --navy:#16223D;
  --navy-soft:#24365C;
  --paper:#F7F6F2;
  --surface:#FFFFFF;
  --line:#DEDBD0;
  --line-strong:#C7C2B1;
  --brass:#9C7A32;
  --brass-ink:#3A2C0F;
  --brass-soft:#B4924E;
  --shadow-c: 15 20 27;

  --font-display:'Source Serif 4', Georgia, 'Times New Roman', serif;
  --font-body:'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --font-mono:'IBM Plex Mono', ui-monospace, 'SFMono-Regular', Menlo, monospace;

  --fs-eyebrow: .76rem;
  --fs-body: clamp(1rem, .95rem + .2vw, 1.06rem);
  --fs-lead: clamp(1.08rem, 1rem + .4vw, 1.24rem);
  --fs-h2: clamp(1.8rem, 1.45rem + 1.7vw, 2.6rem);
  --fs-h1: clamp(2.2rem, 1.5rem + 2.6vw, 3.6rem);
  --fs-price: clamp(2.4rem, 2rem + 2vw, 3.2rem);

  --sp-1:.5rem; --sp-2:.75rem; --sp-3:1.15rem; --sp-4:1.75rem;
  --sp-5:2.5rem; --sp-6:3.5rem; --sp-7:5rem; --sp-8:6.5rem; --sp-9:9rem;

  --radius: 4px;
  --radius-sm: 2px;
  --maxw: 1180px;

  --bg: var(--paper);
  --text: var(--ink);
  --text-muted: var(--ink-soft);
  --card-bg: var(--surface);
  --card-border: var(--line);
  --price-accent: var(--navy);
  --nav-bg: rgba(247,246,242,1);
  --band-dark-bg: var(--navy);
  --band-dark-text: #F3F1E9;
  --band-dark-muted: #A9B2C4;
  --band-dark-card: #1C2A48;
  --band-dark-border: #2C3C60;
}

@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]){
    --bg:#0B0E13;
    --text:#F0EFE9;
    --text-muted:#9EA6B3;
    --card-bg:#12161E;
    --card-border:#252B36;
    --line:#252B36;
    --line-strong:#343B48;
    --nav-bg: rgba(11,14,19,1);
    --band-dark-bg:#070A0F;
    --band-dark-card:#10141C;
    --band-dark-border:#1E2530;
    --logo-color:#F0EFE9;
    --brass-soft:#C9A85C;
    --price-accent: var(--brass-soft);
  }
}
:root[data-theme="dark"]{
  --bg:#0B0E13;
  --text:#F0EFE9;
  --text-muted:#9EA6B3;
  --card-bg:#12161E;
  --card-border:#252B36;
  --line:#252B36;
  --line-strong:#343B48;
  --nav-bg: rgba(11,14,19,1);
  --band-dark-bg:#070A0F;
  --band-dark-card:#10141C;
  --band-dark-border:#1E2530;
  --logo-color:#F0EFE9;
  --brass-soft:#C9A85C;
  --price-accent: var(--brass-soft);
}

/* ---------- reset ---------- */
*,*::before,*::after{box-sizing:border-box;}
html{scroll-behavior:smooth;}
@media (prefers-reduced-motion: reduce){ html{scroll-behavior:auto;} }
body{
  margin:0;
  background:var(--bg);
  color:var(--text);
  font-family:var(--font-body);
  font-size:var(--fs-body);
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
}
img,svg,canvas{display:block;max-width:100%;}
a{color:inherit;text-decoration:none;}
button{font:inherit;color:inherit;}
ul{margin:0;padding:0;list-style:none;}
h1,h2,h3,p{margin:0;}
h1,h2,h3{font-family:var(--font-display);text-wrap:balance;font-weight:600;}
.skip-link{position:absolute;left:-999px;top:0;background:var(--brass);color:#fff;padding:.6em 1em;z-index:200;}
.skip-link:focus{left:0;}
:focus-visible{outline:2px solid var(--brass);outline-offset:3px;}

.container{max-width:var(--maxw);margin-inline:auto;padding-inline:clamp(1.25rem,4vw,2.5rem);}
section{padding-block:var(--sp-8);border-bottom:1px solid var(--card-border);}
section:last-of-type{border-bottom:none;}

/* index/eyebrow row */
.index-row{display:flex;align-items:center;gap:var(--sp-3);margin-bottom:var(--sp-3);}
.index-no{font-family:var(--font-mono);font-size:.82rem;font-weight:600;color:var(--brass-soft);letter-spacing:.03em;}
.index-rule{flex:none;width:34px;height:1px;background:var(--line-strong);}
.eyebrow{
  font-family:var(--font-mono);
  font-size:var(--fs-eyebrow);
  font-weight:600;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:var(--text-muted);
}
.band-dark .eyebrow{ color:var(--band-dark-muted); }
.band-dark .index-no{color:var(--brass-soft);}
.band-dark .index-rule{background:var(--band-dark-border);}

.section-head{max-width:640px;margin-bottom:var(--sp-6);}
.section-head h2{margin-top:0;}
.section-head p{margin-top:var(--sp-3);color:var(--text-muted);font-size:var(--fs-lead);}
.section-head.center{max-width:680px;margin-inline:auto;text-align:center;}
.section-head.center .index-row{justify-content:center;}

.band-dark{background:var(--band-dark-bg);color:var(--band-dark-text);border-color:var(--band-dark-border) !important;}
.band-dark .text-muted, .band-dark p{color:var(--band-dark-muted);}

/* ---------- buttons ---------- */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:.6em;
  padding:.9em 1.6em;border-radius:var(--radius);font-weight:600;font-size:.95rem;
  border:1.5px solid transparent;cursor:pointer;transition:background .15s ease, border-color .15s ease, color .15s ease;
  white-space:nowrap;font-family:var(--font-body);
}
.btn:active{transform:translateY(1px);}
.btn-primary{background:var(--brass);color:#fff;}
.btn-primary:hover{background:#876A2C;}
.band-dark .btn-primary{background:var(--brass-soft);color:#241B08;}
.band-dark .btn-primary:hover{background:#D2B36C;}
.btn-outline{background:transparent;border-color:var(--ink);color:var(--ink);}
.btn-outline:hover{background:var(--ink);color:var(--paper);}
.band-dark .btn-outline{border-color:rgba(240,239,233,.5);color:var(--band-dark-text);}
.band-dark .btn-outline:hover{background:rgba(240,239,233,.12);}
.btn-sm{padding:.62em 1.2em;font-size:.86rem;}

/* ---------- nav ---------- */
.nav{
  position:sticky;top:0;z-index:100;
  background:var(--nav-bg);backdrop-filter:blur(6px);
  border-bottom:1px solid var(--card-border);
}
.nav-inner{display:flex;align-items:center;justify-content:space-between;padding-block:1.1rem;}
.logo{font-family:var(--font-display);font-weight:600;font-size:1.32rem;letter-spacing:-.01em;color:var(--logo-color, var(--navy));}
.logo b{color:var(--brass);font-weight:600;}
.nav-links{display:flex;gap:var(--sp-5);align-items:center;}
.nav-links a{font-weight:500;font-size:.88rem;letter-spacing:.02em;color:var(--text-muted);transition:color .15s;}
.nav-links a:hover{color:var(--text);}
.nav-cta{display:flex;align-items:center;gap:var(--sp-3);}
.nav-toggle{display:none;background:none;border:none;padding:.4rem;cursor:pointer;}
.nav-toggle span{display:block;width:22px;height:1.5px;background:currentColor;margin:5px 0;}

@media (max-width: 860px){
  .nav-links{
    position:absolute;top:100%;left:0;right:0;background:var(--bg);
    flex-direction:column;align-items:flex-start;gap:0;
    border-bottom:1px solid var(--card-border);
    max-height:0;overflow:hidden;transition:max-height .25s ease;
  }
  .nav-links.open{max-height:280px;}
  .nav-links a{padding:.9rem clamp(1.25rem,4vw,2.5rem);width:100%;border-top:1px solid var(--card-border);}
  .nav-toggle{display:block;}
}

/* ---------- hero ---------- */
.hero{
  padding-block: var(--sp-7) var(--sp-8);
}
.hero-grid{
  display:grid;grid-template-columns: 1.15fr 1fr;gap:var(--sp-7);align-items:stretch;
}
@media (max-width: 960px){ .hero-grid{grid-template-columns:1fr;} }
.hero-copy{display:flex;flex-direction:column;justify-content:center;}
.hero-copy .eyebrow{display:block;margin-bottom:var(--sp-3);}
.hero h1{font-size:var(--fs-h1);line-height:1.1;letter-spacing:-.01em;max-width:13ch;}
.hero-lead{margin-top:var(--sp-4);font-size:var(--fs-lead);color:var(--text-muted);max-width:44ch;}
.price-badge{
  margin-top:var(--sp-5);display:inline-flex;align-items:baseline;gap:.6em;
  padding:.85em 1.2em;border-radius:var(--radius-sm);background:transparent;
  border:1.5px solid var(--card-border);font-family:var(--font-mono);
}
.price-badge .amount{font-size:1.35rem;font-weight:600;color:var(--price-accent);}
.band-dark .price-badge .amount{color:var(--band-dark-text);}
.hero-maint{margin-top:var(--sp-2);font-size:.88rem;color:var(--text-muted);font-family:var(--font-mono);}
.hero-ctas{display:flex;flex-wrap:wrap;gap:var(--sp-3);margin-top:var(--sp-5);}

/* ---------- hero panel: demo offer ---------- */
.demo-panel{
  position:relative;background:var(--navy);color:#F3F1E9;
  padding:var(--sp-6) var(--sp-5);border-top:3px solid var(--brass);
  display:flex;flex-direction:column;
}
.demo-panel .index-row{margin-bottom:var(--sp-4);}
.demo-panel .index-no{color:var(--brass-soft);}
.demo-panel .index-rule{background:rgba(255,255,255,.2);}
.demo-panel .eyebrow{color:#A9B2C4;}
.demo-panel h3{font-size:1.5rem;font-weight:600;line-height:1.2;color:#fff;}
.demo-panel p{margin-top:.8em;color:#C3CAD6;font-size:1rem;max-width:36ch;}
.demo-panel .btn{margin-top:var(--sp-5);align-self:flex-start;}
.demo-points{margin-top:var(--sp-6);display:flex;flex-direction:column;gap:0;border-top:1px solid rgba(255,255,255,.14);}
.demo-points li{display:flex;gap:.7em;align-items:center;font-size:.9rem;color:#C3CAD6;padding:.85em 0;border-bottom:1px solid rgba(255,255,255,.14);}
.demo-points li svg{flex:none;width:15px;height:15px;color:var(--brass-soft);}

/* ---------- process ---------- */
.steps{display:flex;flex-direction:column;}
.step{
  display:grid;grid-template-columns:70px 1fr;gap:var(--sp-5);
  padding-block:var(--sp-5);border-top:1px solid var(--card-border);
}
.steps .step:last-child{border-bottom:1px solid var(--card-border);}
.step .step-no{font-family:var(--font-display);font-size:2rem;font-weight:600;color:var(--line-strong);line-height:1;}
.step h3{font-size:1.25rem;margin-bottom:.35em;}
.step p{color:var(--text-muted);font-size:.98rem;max-width:52ch;}
@media (max-width:600px){ .step{grid-template-columns:44px 1fr;gap:var(--sp-3);} .step .step-no{font-size:1.4rem;} }

/* ---------- offer rows ---------- */
.offer-grid{display:grid;grid-template-columns:repeat(3,1fr);}
.offer-card{
  padding:var(--sp-5) var(--sp-5) var(--sp-6);border-top:1px solid var(--card-border);
  border-left:1px solid var(--card-border);display:flex;flex-direction:column;gap:var(--sp-3);
}
.offer-card:first-child{border-left:none;}
.offer-card .offer-icon{width:34px;height:34px;color:var(--brass);}
.offer-card .offer-icon svg{width:100%;height:100%;}
.offer-card .tag{font-family:var(--font-mono);font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);margin-top:var(--sp-2);}
.offer-card h3{font-size:1.25rem;}
.offer-card p{color:var(--text-muted);font-size:.96rem;}
@media (max-width:860px){
  .offer-grid{grid-template-columns:1fr;}
  .offer-card{border-left:none;border-top:1px solid var(--card-border);}
  .offer-card:first-child{border-top:1px solid var(--card-border);}
  .offer-grid .offer-card:last-child{border-bottom:1px solid var(--card-border);}
}

/* ---------- pricing ---------- */
.pricing-wrap{display:grid;grid-template-columns:1.35fr .9fr;gap:0;border:1px solid var(--card-border);}
.quote{
  padding:var(--sp-6);border-right:1px solid var(--card-border);
}
.quote-head{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:var(--sp-3);border-bottom:1px solid var(--card-border);padding-bottom:var(--sp-4);margin-bottom:var(--sp-4);}
.quote-head .name{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;font-size:.82rem;color:var(--text-muted);}
.quote-head .amount{font-family:var(--font-display);font-size:var(--fs-price);font-weight:600;color:var(--price-accent);line-height:1;}
.quote-checklist{display:grid;grid-template-columns:1fr 1fr;gap:.65em 1.2em;margin-bottom:var(--sp-5);}
.quote-checklist li{display:flex;gap:.55em;align-items:flex-start;font-size:.94rem;}
.quote-checklist li svg{flex:none;width:16px;height:16px;color:var(--brass);margin-top:.2em;}
@media (max-width:560px){.quote-checklist{grid-template-columns:1fr;}}

.maint-card{padding:var(--sp-6);}
.maint-card .name{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;font-size:.78rem;color:var(--text-muted);}
.maint-card .amount{font-family:var(--font-display);font-size:1.9rem;font-weight:600;margin-top:.2em;}
.maint-card .amount span{font-size:1rem;font-family:var(--font-mono);color:var(--text-muted);font-weight:500;}
.maint-card ul{margin-top:var(--sp-4);display:flex;flex-direction:column;}
.maint-card li{display:flex;gap:.55em;font-size:.88rem;color:var(--text-muted);padding-block:.5em;border-top:1px solid var(--card-border);}
.maint-card li:first-child{border-top:none;}
.maint-card li svg{flex:none;width:15px;height:15px;color:var(--brass);margin-top:.15em;}
@media (max-width:900px){.pricing-wrap{grid-template-columns:1fr;}.quote{border-right:none;border-bottom:1px solid var(--card-border);}}

/* ---------- before/after ---------- */
.compare{display:grid;grid-template-columns:1fr 1px 1fr;gap:var(--sp-6);}
.compare .divider{background:var(--card-border);}
.compare-col h3{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;font-size:.82rem;margin-bottom:var(--sp-4);color:var(--text-muted);}
.compare-col.after h3{color:var(--price-accent);}
.band-dark .compare-col.after h3{color:var(--brass-soft);}
.compare-col ul{display:flex;flex-direction:column;}
.compare-col li{display:flex;gap:.6em;align-items:flex-start;font-size:.96rem;padding-block:.7em;border-top:1px solid var(--card-border);}
.compare-col li:first-child{border-top:none;}
.compare-col.before li{color:var(--text-muted);}
.compare-col li svg{flex:none;width:16px;height:16px;margin-top:.2em;}
.compare-col.before li svg{color:var(--line-strong);}
.compare-col.after li svg{color:var(--brass);}
.compare-head{text-align:center;margin-bottom:var(--sp-6);max-width:680px;margin-inline:auto;}
@media (max-width:760px){.compare{grid-template-columns:1fr;}.compare .divider{display:none;}}

/* ---------- businesses ---------- */
.biz-grid{display:grid;grid-template-columns:repeat(5,1fr);border:1px solid var(--card-border);border-right:none;border-bottom:none;}
.biz-item{border-right:1px solid var(--card-border);border-bottom:1px solid var(--card-border);padding:var(--sp-4) var(--sp-2);display:flex;flex-direction:column;align-items:center;gap:.7em;text-align:center;}
.biz-item svg{width:24px;height:24px;color:var(--brass);}
.biz-item span{font-size:.82rem;font-weight:500;color:var(--text-muted);}
@media (max-width:860px){.biz-grid{grid-template-columns:repeat(3,1fr);}}
@media (max-width:480px){.biz-grid{grid-template-columns:repeat(2,1fr);}}

/* ---------- final cta ---------- */
.final-cta{text-align:center;}
.final-cta .container{max-width:760px;}
.final-cta h2{font-size:var(--fs-h1);color:#fff;}
.final-cta p{margin-top:var(--sp-3);font-size:var(--fs-lead);}
.final-cta .index-row{justify-content:center;}
.final-price{font-family:var(--font-mono);font-size:1.05rem;margin-top:var(--sp-4);color:var(--brass-soft);}
.final-ctas{display:flex;justify-content:center;flex-wrap:wrap;gap:var(--sp-3);margin-top:var(--sp-5);}

/* ---------- contact ---------- */
.contact-wrap{display:grid;grid-template-columns:.8fr 1fr;gap:var(--sp-7);align-items:start;}
.contact-note{display:flex;flex-direction:column;}
.contact-note li{display:flex;gap:.6em;align-items:flex-start;color:var(--text-muted);padding-block:.8em;border-top:1px solid var(--card-border);}
.contact-note li:first-child{border-top:none;}
.contact-note li svg{flex:none;width:17px;height:17px;color:var(--brass);margin-top:.15em;}
form{border:1px solid var(--card-border);padding:var(--sp-5);display:flex;flex-direction:column;gap:var(--sp-3);}
.field{display:flex;flex-direction:column;gap:.4em;}
.field label{font-size:.76rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);}
.field input,.field select{
  font:inherit;padding:.8em 1em;border-radius:var(--radius-sm);border:1.5px solid var(--card-border);
  background:var(--bg);color:var(--text);
}
.field input:focus,.field select:focus{border-color:var(--brass);}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-3);}
@media (max-width:520px){.form-row{grid-template-columns:1fr;}}
.form-msg{font-size:.86rem;color:var(--brass);min-height:1.2em;}
@media (max-width:900px){.contact-wrap{grid-template-columns:1fr;}}

/* ---------- footer ---------- */
footer{padding-block:var(--sp-6);border-bottom:none;}
.footer-top{display:flex;justify-content:space-between;flex-wrap:wrap;gap:var(--sp-5);padding-bottom:var(--sp-5);border-bottom:1px solid var(--band-dark-border);}
.footer-brand .logo{color:#F3F1E9;}
.footer-tag{margin-top:.4em;color:var(--band-dark-muted);font-size:.9rem;}
.footer-domain{margin-top:.6em;font-family:var(--font-mono);font-size:.84rem;color:var(--brass-soft);}
.footer-links{display:flex;gap:var(--sp-4);flex-wrap:wrap;}
.footer-links a{color:var(--band-dark-muted);font-size:.9rem;}
.footer-links a:hover{color:#fff;}
.footer-bottom{display:flex;justify-content:space-between;flex-wrap:wrap;gap:.5em;padding-top:var(--sp-4);font-size:.8rem;color:#6C7689;}
