/* Homepage v3 (Oct 2026): shorter page. Loaded only by index.html.
   Brand rule kept: mint text only on slate/dark backgrounds. */

/* Mobile: keep "Book a consult" visible next to the menu button */
.nav-cta-m{display:none}
@media (max-width:920px){
  .nav-cta-m{display:inline-flex;margin-left:auto;padding:11px 16px;font-size:.9rem}
  .nav{gap:14px}
}
@media (max-width:360px){.nav-cta-m{padding:10px 12px;font-size:.84rem}}

/* Hero */
.hero h1{font-size:clamp(2.9rem,5.6vw,4.6rem)}
.hero h1 .accent{font-size:.78em}


/* Pillars (on dark) */
.pillars{background:var(--ink)}
.pillars .section-head{max-width:760px}
.pillar-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--line-dark)}
.pillar{padding:32px 32px 8px 0}
.pillar+.pillar{padding-left:32px;border-left:1px solid var(--line-dark)}
.pillar-num{display:block;font-family:var(--serif);font-weight:600;color:var(--mint);font-size:1rem;letter-spacing:.04em;margin-bottom:12px}
.pillar h3{font-family:var(--serif);font-weight:600;font-size:1.5rem;letter-spacing:0;margin-bottom:16px}
.pillar ul{list-style:none;margin:0;padding:0}
.pillar li{position:relative;padding-left:26px;margin-bottom:12px;color:var(--on-slate);font-size:1rem;line-height:1.5}
.pillar li::before{content:"";position:absolute;left:3px;top:.3em;width:7px;height:13px;border:solid var(--mint);border-width:0 2.5px 2.5px 0;transform:rotate(40deg)}

/* How it works: three steps */
.how{background:var(--bg)}
.steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:24px;counter-reset:st}
.steps li{counter-increment:st;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:30px 28px}
.steps li::before{content:counter(st);display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--slate);color:#fff;font-family:var(--serif);font-weight:600;font-size:1.05rem;margin-bottom:18px}
.steps h3{font-size:1.15rem;margin-bottom:8px}
.steps p{margin:0;color:var(--muted);font-size:.98rem}

/* Compare: rows come from styles.css (title + 6 rows). The old 3-row override made rows 4 to 6 overlap. */
.compare-note{margin-top:24px}

/* Pricing */
.pricing{background:#fff}
.compare{background:var(--bg)}
.compare .cmp:not(.cmp-us){background:#fff}
.price-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:24px;max-width:920px;margin:0 auto;align-items:stretch}
.price-main{background:var(--slate);color:#fff;border-radius:var(--radius-lg);padding:36px 36px 34px;display:flex;flex-direction:column;align-items:flex-start}
.price-label{font-family:var(--serif);font-weight:600;font-size:1.6rem;margin:0 0 2px;color:#fff}
.price-range{color:var(--on-slate);margin:0 0 22px;font-size:1rem}
.price-main .tier-price{color:#fff}
.price-main .tier-price .amt{font-size:3.2rem}
.price-main .tier-price .per{color:var(--on-slate)}
.price-terms{color:var(--on-slate-muted);font-size:.92rem;margin:4px 0 26px}
.price-main .btn{margin-top:auto}
.price-side{display:flex}
.tier-list{list-style:none;margin:0;padding:6px 28px;background:#fff;border:1px solid var(--line);border-radius:var(--radius-lg);width:100%;display:flex;flex-direction:column;justify-content:center}
.tier-list li{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:20px 0;border-top:1px solid var(--line)}
.tier-list li:first-child{border-top:0}
.tier-list b{display:block;font-size:1.05rem}
.tier-list span small{display:block;color:var(--muted);font-size:.9rem}
.tier-list strong{font-family:var(--serif);font-weight:700;font-size:1.6rem;white-space:nowrap}
.tier-list strong small{font-family:var(--sans);font-weight:400;font-size:.9rem;color:var(--muted);margin-left:2px}
.price-big{max-width:920px;margin:24px auto 0;display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;border:1.5px solid var(--slate);border-radius:var(--radius);padding:20px 28px;background:#fff}
.price-big p{margin:0;color:var(--muted)}
.price-big p b{color:var(--ink)}
.price-big .text-link svg{width:18px;height:18px}
.price-fine.center{text-align:center;margin:22px auto 0;max-width:640px}

/* FAQ: shorter list, rest behind "More questions" */
.faq{background:var(--bg)}
.faq-more>summary{color:var(--slate)}
.faq-more-list{border-top:1px solid var(--line);margin-left:16px}
.faq-more-list details:last-child{border-bottom:0}

@media (max-width:920px){
  .pillar-grid{grid-template-columns:1fr}
  .pillar,.pillar+.pillar{padding:26px 0 10px;border-left:0;border-bottom:1px solid var(--line-dark)}
  .steps{grid-template-columns:1fr;gap:14px}
  .price-grid{grid-template-columns:1fr}
}
@media (max-width:600px){
  .price-main{padding:28px 22px}
  .price-main .btn{width:100%}
  .tier-list{padding:4px 20px}
  .price-big{padding:18px 20px}
  .faq-more-list{margin-left:0}
}

/* ---------- Hybrid v3: tabs, subpages, calculator ---------- */
.more-link{text-align:center;margin:28px 0 0}
.page-hero .accent{color:var(--mint)}
.page-hero p a{color:var(--mint)}
.sub-h2{font-size:clamp(1.6rem,2.6vw,2.1rem);margin-bottom:24px}
.section-head .sub-h2{margin-bottom:0}

/* Tabs (shared). Without JS every panel shows. */
.no-js .tab-panel[hidden]{display:block}
.tab-list{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;padding:2px;margin-bottom:14px}
.tab-list::-webkit-scrollbar{display:none}
.tab-list [role=tab]{flex:1 0 auto;font:inherit;text-align:left;cursor:pointer;background:#fff;border:1.5px solid var(--line);color:var(--ink);border-radius:12px;padding:11px 16px;display:flex;flex-direction:column;gap:2px;transition:background-color .2s,border-color .2s;white-space:nowrap}
.tab-list [role=tab] b{font-size:.98rem;font-weight:700}
.tab-list [role=tab] span{font-size:.8rem;color:var(--muted)}
.tab-list [role=tab]:hover{border-color:var(--slate)}
.tab-list [role=tab][aria-selected=true]{background:var(--slate);border-color:var(--slate);color:#fff}
.tab-list [role=tab][aria-selected=true] span{color:var(--on-slate)}
.tab-panel{background:#fff;border:1px solid var(--line);border-radius:var(--radius-lg);padding:30px 32px;outline-offset:4px}
.tier-tabs{max-width:760px;margin:0 auto}
.tier-panel{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap}
.tier-panel .price-range{color:var(--muted);margin:0 0 10px}
.tier-panel .tier-price .amt{font-size:3rem}
.tier-panel .price-terms{color:var(--muted);font-size:.92rem;margin:6px 0 0}
.pricing .price-big{max-width:760px}
.step-tabs .tab-panel h3{font-family:var(--serif);font-weight:600;font-size:1.45rem;letter-spacing:0;margin-bottom:10px}
.step-tabs .tab-panel p{margin:0;color:var(--muted)}

.calc-teaser{max-width:760px;margin:24px auto 0;display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;background:var(--bg);border-radius:var(--radius);padding:24px 28px}
.calc-teaser h3{font-family:var(--serif);font-weight:600;font-size:1.3rem;letter-spacing:0;margin-bottom:4px}
.calc-teaser p{margin:0;color:var(--muted);font-size:.96rem}
.pricing .tier-details{max-width:920px;margin-left:auto;margin-right:auto}

.how-page{background:#fff}
.how-page-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:56px;align-items:start}
.how-page .setup-card{margin-top:0}
.how-page .step-tabs .tab-panel{min-height:150px}

.cta-band{background:var(--slate);padding:64px 0}
.cta-band-inner{display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap}
.cta-band h2{font-size:clamp(1.7rem,3vw,2.4rem);color:#fff}
.cta-band h2 .accent{color:var(--mint)}
.faq-page{max-width:820px}

/* Calculator */
.calc-page{background:var(--bg)}
.lc{display:grid;grid-template-columns:1fr 1fr;background:#fff;border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow);max-width:1000px;margin:0 auto}
.lc-inputs{padding:36px 38px}
.lc-out{background:var(--slate);color:#fff;padding:36px 38px}
.lc-gate h3{color:#fff;font-family:var(--serif);font-weight:600;font-size:1.6rem;letter-spacing:0;margin-bottom:6px}
.lc-gate-sub{color:var(--on-slate);margin:0 0 20px;font-size:.98rem}
.lc-gate .field label{color:#fff}
.lc-gate .field label .opt{color:var(--on-slate-muted)}
.lc-gate .field{margin-bottom:14px}
.lc-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.lc-gate .btn{width:100%;margin-top:6px}
.lc-privacy{display:block;margin-top:12px;color:var(--on-slate-muted);font-size:.84rem;text-align:center}
.lc-privacy a,.lc-err a{color:var(--mint)}
.lc-err{background:rgba(255,255,255,.1);border-radius:10px;padding:10px 12px;font-size:.92rem;margin:4px 0 8px;color:#fff}
.lc-result dl{margin:0 0 24px}
.lc-result dl div{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:13px 0;border-bottom:1px solid var(--line-dark)}
.lc-result dt{color:var(--on-slate);font-size:.96rem}
.lc-result dd{margin:0;font-weight:700;font-size:1.15rem;white-space:nowrap;text-align:right}
.lc-result .total{border-bottom:0}
.lc-result .total dt{color:#fff;font-weight:600}
.lc-result .total dd{font-family:var(--serif);font-weight:600;font-size:2rem;color:var(--mint)}
.lc-result:focus{outline:none}
.lc-note{max-width:1000px;margin:18px auto 0;color:var(--muted)}
.lc-note b{color:var(--ink)}

@media (max-width:920px){
  .how-page-grid,.lc{grid-template-columns:1fr}
  .how-page-grid{gap:32px}
}
@media (max-width:600px){
  .tab-panel{padding:22px 20px}
  .tier-panel .btn{width:100%}
  .tier-panel .tier-price .amt{font-size:2.6rem}
  .calc-teaser{padding:20px}
  .calc-teaser .btn{width:100%}
  .lc-inputs,.lc-out{padding:26px 20px}
  .lc-row{grid-template-columns:1fr}
  .lc-result dl div{flex-direction:column;gap:2px}
  .lc-result dd{text-align:left}
  .cta-band{padding:48px 0}
  .cta-band .btn{width:100%}
}
.how-page-grid>div,.tabs,.tab-panels{min-width:0}
.tabs{max-width:100%}

/* Live v2 sections restored on the v3 homepage: keep their original look */
.how{background:#fff}
.how .more-link{margin-top:48px}
.how + .integrations{border-top:1px solid var(--line)}

/* Small inline link under the timeline (replaces oversized CTA, Oct 28 2026) */
.how-steps{min-width:0}
.how-more{margin:22px 0 0 56px;font-size:.95rem;line-height:1.5}
.small-link{color:var(--slate);font-weight:600;text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}
.small-link:hover{text-decoration-thickness:2px}
.small-link span{display:inline-block;margin-left:2px;transition:transform .2s var(--ease)}
.small-link:hover span{transform:translateX(2px)}
.text-link svg{width:18px;height:18px;flex:none}

/* Weekly summary: lead with dollars collected (Oct 28 2026) */
.report-money{display:grid;grid-template-columns:1.15fr 1fr;gap:12px;margin:0 0 12px}
.report-money>div{border-radius:12px;padding:16px 16px 14px;background:var(--bg);min-width:0}
.report-money .money-main{background:var(--mint-100)}
.report-money dt{font-size:.8rem;font-weight:600;color:var(--muted);line-height:1.3}
.report-money .money-main dt{color:#1E5B3E}
.report-money dd{margin:6px 0 0;font-family:var(--serif);font-weight:600;line-height:1;color:var(--ink);font-size:1.8rem;font-variant-numeric:lining-nums tabular-nums;font-variant-ligatures:no-common-ligatures no-discretionary-ligatures no-contextual;font-feature-settings:"liga" 0,"dlig" 0,"calt" 0}
.report-money .money-main dd{font-size:2.5rem}
.money-note{margin:6px 0 0;font-size:.8rem;color:var(--muted)}
.report-stats.report-stats-sm{grid-template-columns:repeat(3,1fr);gap:10px}
.report-stats-sm div{padding:11px 12px}
.report-stats-sm dt{font-size:.74rem}
.report-stats-sm dd{font-size:1.3rem}
@media (max-width:1080px){.report-stats.report-stats-sm{grid-template-columns:repeat(3,1fr)}}
@media (max-width:920px){.report-money .money-main dd{font-size:2.2rem}.report-money dd{font-size:1.6rem}.report-stats-sm dd{font-size:1.2rem}}
@media (max-width:480px){
  .report-money{grid-template-columns:1fr}
  .report-money .money-main dd{font-size:2.3rem}
  .report-stats.report-stats-sm{gap:8px}
  .report-stats-sm div{padding:10px 9px}
  .report-stats-sm dt{font-size:.7rem}
}
