.site-header .header-inner { display:grid; grid-template-columns:auto minmax(0,1fr); gap:12px 24px; max-width:1600px; padding-block:12px; }
.header-tools { display:flex; align-items:center; justify-content:flex-end; gap:12px; min-width:0; }
.header-tools .cart-nav { display:inline-flex; align-items:center; justify-content:center; gap:9px; padding:10px 15px; min-height:44px; color:var(--plum-dark); border:1px solid #c5a98d; border-radius:5px; background:#fff; text-decoration:none; font-size:14px; white-space:nowrap; }
.header-tools .cart-nav svg { width:20px; height:20px; flex-shrink:0; }
.header-tools .cart-nav span { margin:0; min-width:24px; height:24px; }
.site-header .main-nav { grid-column:1/-1; display:grid; grid-template-columns:repeat(9,minmax(0,1fr)); width:100%; margin:0; padding:0; gap:8px; border:0; }
.site-header .main-nav a { width:auto; min-width:0; padding:10px 8px; min-height:48px; font-size:14px; white-space:normal; text-align:center; }
.site-header .menu-toggle { display:none; }
.business-hero { padding-block:48px; }
.business-hero h1 { max-width:1000px; font-size:clamp(38px,4.5vw,64px); }
.business-hero .lead { max-width:70ch; margin:22px 0 30px; }
.business-options { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:28px; }
.business-options article { padding:32px; background:#fff; border:1px solid var(--line); }
.business-options h3 { font-family:var(--serif); font-size:34px; margin:18px 0; }
.business-options .button { margin-top:16px; }
.project-details { border:1px solid var(--line); padding:24px; margin:24px 0; min-width:0; }
.project-details legend { padding:0 10px; font-size:20px; color:var(--plum-dark); }
.profit-section { background:#fbf7fa; }
.simulation-badge { display:inline-block; padding:12px 16px; margin:0 0 26px; border-left:3px solid var(--plum); background:#f0e2ec; font-size:14px; color:#552440; }
.calculator-layout { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr); align-items:start; gap:32px; }
.calculator-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
.calculator-form label { display:flex; flex-direction:column; gap:9px; font-size:15px; line-height:1.5; color:#4b3543; min-width:0; }
.calculator-form input,.calculator-form select { box-sizing:border-box; width:100%; min-width:0; min-height:48px; padding:11px 12px; font:inherit; font-size:16px; color:var(--ink); border:1px solid #b9a3b0; border-radius:4px; background:#fff; }
.calculator-form input:focus-visible,.calculator-form select:focus-visible { outline:2px solid var(--plum); outline-offset:3px; }
.capacity-control { margin:24px 0; }
.capacity-control>label { max-width:480px; }
.calculator-caption { font-size:14px; line-height:1.7; color:#655160; margin:18px 0; }
.calculator-details { border-top:1px solid #cdbac5; padding:20px 0; margin-top:22px; }
.calculator-details summary { cursor:pointer; font-size:18px; color:#512b43; margin-bottom:20px; }
.purchase-fields { display:contents; }
.lease-fields { min-width:0; }
.lease-fields .text-link { display:inline-block; font-size:14px; margin-top:14px; }
.calculator-reset { border:0; background:none; padding:4px 0; cursor:pointer; font:inherit; font-size:14px; }
.calculator-results { background:#fff; border:1px solid #c7acbe; padding:30px; min-width:0; }
.calculator-results h3 { font-family:var(--serif); font-size:29px; }
.profit-total { display:block; font-size:clamp(36px,4.3vw,58px); line-height:1.2; color:var(--plum-dark); margin:17px 0; overflow-wrap:anywhere; }
.profit-metrics { margin:24px 0; }
.profit-metrics>div { border-top:1px solid var(--line); padding:15px 0; display:grid; grid-template-columns:minmax(0,1fr) minmax(0,.8fr); align-items:start; gap:16px; font-size:15px; }
.profit-metrics dt { color:#655160; }
.profit-metrics dd { text-align:right; margin:0; font-weight:600; overflow-wrap:anywhere; }
.calculator-status { font-size:14px; line-height:1.65; margin:20px 0; }
.calculator-results .button { width:100%; justify-content:center; text-align:center; padding-inline:12px; font-size:15px; }
.scenario-section { margin-top:48px; }
.scenario-section h3 { font-family:var(--serif); font-size:32px; margin-bottom:18px; }
.business-table { width:100%; border-collapse:collapse; font-size:15px; }
.business-table caption { text-align:left; font-size:14px; color:#655160; line-height:1.7; margin:0 0 18px; }
.business-table th,.business-table td { padding:18px 14px; text-align:left; border-bottom:1px solid #d6c4cf; overflow-wrap:anywhere; }
.business-table thead th { background:#eadce6; color:#542440; font-weight:600; }
.business-table tbody th { font-weight:500; }
.business-table tbody tr.selected-scenario { background:#efe1eb; }
.scenario-selected { display:block; font-size:12px; color:#6c3558; margin-top:5px; }
.is-loss { color:#a02036!important; }
.finance-fields { grid-template-columns:repeat(3,minmax(0,1fr)); margin:28px 0 36px; }
.purchase-fields[hidden],.lease-fields[hidden],.project-details[hidden] { display:none!important; }
.payment-summary { padding:24px; border:1px solid var(--line); background:#faf3f7; margin:24px 0; }
.payment-summary h2 { font-size:30px; margin-bottom:14px; }
.selection-totals { display:flex; flex-wrap:wrap; gap:12px 30px; padding:18px 0; border-bottom:1px solid var(--line); margin-bottom:18px; font-size:16px; }
.payment-methods { display:flex; gap:10px; flex-wrap:wrap; margin:20px 0; }
.payment-methods span { padding:8px 12px; border:1px solid #cbb5c2; background:#fff; font-size:14px; }
.checkout-overview { margin:24px 0; }
.checkout-overview .cart-total { border-bottom:1px solid var(--line); padding:13px 0; }
@media(min-width:1101px) { html { scroll-padding-top:168px; } }
@media(max-width:1100px) {
 .site-header .header-inner { gap:10px 18px; }
 .site-header .main-nav { display:none; grid-template-columns:repeat(3,minmax(0,1fr)); padding-top:10px; }
 .site-header .main-nav.is-open { display:grid; }
 .site-header .menu-toggle { display:inline-flex; }
 .site-header .main-nav a { font-size:16px; padding:12px; }
 .calculator-layout { grid-template-columns:minmax(0,1fr); }
 .calculator-results { max-width:none; }
 .profit-metrics { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 26px; }
}
@media(max-width:700px) {
 .site-header .header-inner { gap:8px; padding-inline:16px; }
 .site-header .brand-name { font-size:24px; }
 .site-header .brand-sub { font-size:9px; margin-top:5px; }
 .header-tools { gap:8px; }
 .header-tools .cart-nav { font-size:13px; gap:6px; padding:8px; }
 .header-tools .cart-nav svg { display:none; }
 .header-tools .menu-toggle { font-size:13px; gap:7px; padding:8px 10px; }
 .site-header .main-nav { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .site-header .main-nav a { font-size:14px; }
 .business-options,.calculator-fields,.finance-fields { grid-template-columns:minmax(0,1fr); }
 .business-hero { padding-block:34px; }
 .business-hero h1 { font-size:39px; }
 .business-options article,.calculator-results { padding:24px; }
 .profit-metrics { display:block; }
 .business-table,.business-table caption,.business-table tbody { display:block; }
 .business-table thead { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
 .business-table tr { display:block; padding:18px; margin:16px 0; border:1px solid #d6c4cf; background:#fff; }
 .business-table tbody th { display:block; padding:0 0 14px; font-weight:600; font-size:17px; }
 .business-table td { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:12px; padding:12px 0; }
 .business-table td::before { content:attr(data-label); font-size:14px; color:#655160; font-weight:400; }
 .business-table td:last-child { border-bottom:0; }
 .business-table td[colspan] { display:block; }
 .business-table td[colspan]::before { content:none; }
 .project-details { padding:20px 16px; }
}
@media(max-width:360px) { .site-header .brand-name { font-size:21px; } .header-tools .menu-toggle { padding-inline:8px; } }
.revenue-stream { border:1px solid #d4becc; padding:22px; margin:26px 0; min-width:0; }
.revenue-stream legend { box-sizing:border-box; max-width:100%; padding:0 10px; color:var(--plum-dark); font-weight:600; font-size:19px; line-height:1.4; overflow-wrap:anywhere; }
.calculator-period { max-width:250px; }
@media (max-width:700px) { .revenue-stream { padding:18px 16px; } }

.payment-methods[hidden] { display:none!important; }

.calculator-shortcuts { margin:0 0 28px; }
.scenario-controls { display:flex; flex-wrap:wrap; gap:10px; margin:22px 0; }
.scenario-controls button { font:inherit; font-size:15px; padding:12px 18px; border:1px solid #bda4b4; color:var(--plum-dark); background:#fff; border-radius:4px; cursor:pointer; min-height:44px; }
.scenario-controls button[aria-pressed=true] { background:var(--plum-dark); color:#fff; }

.startup-stock { margin-top:20px; }
.startup-table { margin-top:24px; }
.startup-table .budget-total-row { background:#f0e2ec; font-weight:600; }
.startup-table .budget-total-row th { font-weight:600; }
.calculator-step { font-family:var(--serif); font-size:30px; margin:38px 0 22px; }
.startup-budget { margin-top:0; }
.pack-fields[hidden],.machine-only-fields[hidden],.purchase-details[hidden] { display:none!important; }
.profit-cell { background:#ecf4ed; color:#245732; font-size:17px; }
.scenario-table thead th:last-child { background:#245732; color:#fff; }
.scenario-table .profit-cell.is-loss { background:#faecef; }
.calculator-results .profit-total { color:#245732; }
.calculator-results { position:sticky; top:175px; }
@media(max-width:1100px) { .calculator-results { position:static; } }
