:root{
  --bg:#ffffff;
  --surface:#f9fafb;
  --text:#0f172a;
  --muted:#6b7280;
  --border:#e5e7eb;
  --accent:#CE6632;
  --accent-2:#732E0C;
  --shadow:0 2px 6px rgba(0,0,0,.08), 0 8px 24px rgba(0,0,0,.08);
  --shadow-sm:0 6px 16px rgba(0,0,0,.06);
  --radius:18px;
  --maxw:1180px;
  --grad-a:var(--accent);
  --grad-b:var(--accent-2);
  --ok:#10b981;
  --warn:#f59e0b;
  --bad:#ef4444;
}
*,*::before,*::after{box-sizing:border-box}
html,body{height:100%}
body{margin:0; font:16px/1.6 system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,"Apple Color Emoji","Segoe UI Emoji"; color:var(--text); background:var(--bg)}
a{color:inherit; text-decoration:none}
.container{max-width:var(--maxw); margin:0 auto; padding:0 20px}
.skip-link{position:absolute; left:-9999px; top:auto; width:1px; height:1px; overflow:hidden}
.skip-link:focus{left:16px; top:16px; width:auto; height:auto; background:#fff; color:#000; padding:8px 12px; border-radius:8px; box-shadow:var(--shadow)}
header{position:sticky; top:0; z-index:40; background:#fff; border-bottom:1px solid var(--border)}
@media (prefers-color-scheme: dark){header{background:linear-gradient(180deg, rgba(17,22,29,.7), rgba(17,22,29,.5))}}
.nav{display:flex; align-items:center; justify-content:space-between; padding:12px 0}
.masthead{line-height:0; border-bottom:1px solid var(--border); padding:0}
.masthead img{width:100%; height:clamp(120px,16vw,200px); object-fit:cover; object-position:top center; display:block}
.brand{display:flex; align-items:center; gap:12px; font-weight:800; letter-spacing:.3px}
.brand-badge{width:36px; height:36px; border-radius:12px; background:linear-gradient(135deg, var(--accent), var(--accent-2)); box-shadow:var(--shadow); display:grid; place-items:center}
.brand-badge svg{filter:drop-shadow(0 2px 6px rgba(0,0,0,.25))}
.nav a{padding:8px 12px; border-radius:10px}
.nav a[aria-current="page"], .nav a:hover{background:#f5f5f5}
/* Hero */
.hero{position:relative; padding:28px 0; overflow:hidden}
.hero-bg{display:none}
.hero-wrap{position:relative}
.eyebrow{display:inline-flex; align-items:center; gap:.5rem; font-size:.9rem; color:var(--muted); background:#f8fafc; padding:6px 10px; border-radius:999px; border:1px solid var(--border)}
.hero h1{font-size:clamp(2.1rem,4vw,3.2rem); line-height:1.1; margin:14px 0 12px; letter-spacing:-.02em}
.hero p{font-size:clamp(1rem,2vw,1.125rem); color:var(--muted); max-width:60ch}
.ad-slot{display:flex; justify-content:center; padding:0 0 24px; margin:0 auto; max-width:min(100%, 960px)}
.ad-slot2{display:flex; justify-content:center; padding:24px 0; margin:0 auto; max-width:min(100%, 960px)}
.ad-top-spaced{padding-top:24px}
.calorie-burn-page .ad .adsbygoogle{margin-left:0!important;margin-right:0!important}
.grid .ad-after-results{padding:0; max-width:100%}
.content-layout{display:grid; grid-template-columns:minmax(0, 920px); justify-content:center; gap:24px; align-items:flex-start; max-width:960px; margin:0 auto; padding:0 20px 24px}
.content-layout .container{max-width:100%; padding:0}
.content-layout.no-rail{grid-template-columns:minmax(0, 920px)}
.tool-page .hero > .container{max-width:960px}
.tool-page > .container{max-width:960px}
.tool-page > :is(.card,.content-block,.expand-content){max-width:920px; width:calc(100% - 40px); margin-left:auto; margin-right:auto}
.how-to-card{margin:22px auto 0; max-width:920px}
.content-main{width:100%; min-width:0}
.ad-rail{display:none}
.ad-rail .adsbygoogle{display:block}
.related-above-fold{margin:0 auto; max-width:920px}
.intent-summary{margin:0 auto 22px; max-width:920px}
.intent-list{display:grid; grid-template-columns:repeat(auto-fit,minmax(210px,1fr)); gap:10px; margin:12px 0 0; padding:0; list-style:none}
.intent-list li{padding:12px 14px; border:1px solid #e5e7eb; border-radius:12px; background:#fff; box-shadow:var(--shadow-sm)}
.intent-list strong{display:block; margin-bottom:3px; color:var(--accent-2)}
.ad-inline-inputs{margin:12px 0}
.ad-after-results{margin:12px 0 4px}
.house-ad{display:block; max-width:728px; width:100%; border-radius:12px; overflow:hidden; line-height:0; box-shadow:var(--shadow-sm); transition:transform .18s ease, box-shadow .18s ease}
.house-ad:hover{transform:translateY(-1px); box-shadow:var(--shadow)}
.house-ad:focus-visible{outline:3px solid var(--accent); outline-offset:3px}
.house-ad picture,.house-ad img{display:block; width:100%; height:auto}
.house-ad img{aspect-ratio:728 / 90; object-fit:cover}
.what-if{margin-top:14px; border-style:dashed}
.what-if-controls{display:grid; gap:8px; margin-bottom:10px}
.what-if-controls input[type="range"]{padding:0; box-shadow:none}
.what-if-controls select{max-width:260px}
.what-if-result p{margin:.25rem 0 .5rem}
.what-if-result ul{margin:.25rem 0 0 1.1rem; padding:0}
.expand-content{border:1px solid var(--border); border-radius:var(--radius); background:var(--surface); padding:14px}
.expand-content > summary{cursor:pointer; font-weight:700; color:var(--accent-2)}
.expand-content[open] > summary{margin-bottom:6px}
body.mock-ads .adsbygoogle{display:flex; align-items:center; justify-content:center; background:repeating-linear-gradient(135deg, rgba(148,163,184,.2) 0, rgba(148,163,184,.2) 10px, rgba(226,232,240,.45) 10px, rgba(226,232,240,.45) 20px); border:1px dashed #cbd5f5; color:var(--muted); font-size:.85rem; font-weight:600; letter-spacing:.04em; text-transform:uppercase; position:relative}
body.mock-ads .adsbygoogle::after{content:"Mock ad"; position:absolute}
.grid{display:grid;grid-template-columns:minmax(0,1fr);gap:22px;align-items:start}
.grid > *, .card{min-width:0}
@media (max-width:900px){.ad-rail{display:none}}
@media (max-width:900px){.content-layout{display:block; padding:0}}
@media (max-width:900px){.content-layout .container{padding:0 20px}}
.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}
.card .body{padding:20px}
.card h2{margin:0 0 12px;font-size:clamp(20px,2.5vw,26px)}
.toolbar{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:16px}
.seg{display:inline-flex;border-radius:999px;background:#f3f4f6;border:1px solid #e5e7eb; overflow:hidden}
.seg button{appearance:none;border:0;background:transparent;padding:8px 14px;font:inherit;cursor:pointer;color:#374151}
.seg button.active{background:linear-gradient(135deg,var(--grad-a),var(--grad-b)); color:#fff}
label{display:block;margin:.5rem 0 .3rem;font-weight:600}
input,select{width:100%;padding:12px 14px;border-radius:10px;border:1px solid #e5e7eb;box-shadow:var(--shadow-sm)}
.cadence-time-group{min-width:0;margin:12px 0 0;padding:0;border:0}
.cadence-time-group legend{padding:0;font-weight:700}
.row{display:grid; grid-template-columns:1fr 1fr; gap:12px}
.row3{display:grid; grid-template-columns:1fr 1fr 1fr; gap:12px}
.time-inputs{display:flex;align-items:center;gap:8px}
.time-part{max-width:72px;text-align:center}
.time-sep{font-weight:700;color:var(--muted)}
.hint{color:var(--muted);font-size:.92rem;margin-top:6px}
.quick{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0 12px}
.chipbtn{border:1px solid #e5e7eb;background:#fff;border-radius:999px;padding:6px 10px;cursor:pointer}
.result{display:flex;align-items:center;gap:14px;margin-top:14px;padding:14px;border-radius:12px;background:#f9fafb;border:1px solid #eef2f7;flex-wrap:wrap}
.result[hidden]{display:none!important}
.pill{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:6px 10px;background:#fff;border:1px solid #e5e7eb;box-shadow:var(--shadow-sm)}
.pace-pill{align-items:flex-start}
.pace-values{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap}
.result#resultBox{background:linear-gradient(135deg, rgba(206,102,50,.12), rgba(115,46,12,.08)); border:1px solid rgba(206,102,50,.2); box-shadow:var(--shadow); align-items:flex-start; padding:18px}
.result#resultBox .result-main{flex:1; min-width:220px}
.result#resultBox .result-kicker{margin:0; font-weight:700; color:var(--accent-2); letter-spacing:.01em}
.result#resultBox .result-time{margin:2px 0; font-size:clamp(28px, 5vw, 36px); font-weight:800; letter-spacing:-.02em}
.result#resultBox .result-delta{margin:0; color:var(--accent-2); font-weight:700}
.result#resultBox .stat-pill{display:grid; grid-template-columns:1fr 1fr; gap:12px; width:100%; align-items:start; border-radius:14px; padding:12px 14px}
.result#resultBox .stat-pill strong{display:block; font-size:.95rem; margin-bottom:4px}
.result#resultBox .stat-pill div{min-width:140px}
.result#resultBox .stat-pill div:last-child{text-align:right}
.result#resultBox .stat-pill div:last-child strong{text-align:right}
.result#resultBox .stat-pill .stat-right{text-align:right}
.result#resultBox .stat-pill .stat-right strong{text-align:right}
.treadmill-comparison h3{margin:0 0 4px;font-size:1.15rem}
.comparison-table-wrap{max-width:100%;overflow-x:auto;border:1px solid var(--border);border-radius:8px;background:#fff}
.comparison-table{min-width:660px}
.comparison-table th{white-space:nowrap}
.comparison-table td{font-variant-numeric:tabular-nums}
.comparison-table tr.selected td{background:rgba(206,102,50,.12);color:var(--accent-2);font-weight:700}
.comparison-table caption{padding:10px 12px}
.cadence-result-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;width:100%}
.cadence-stat{padding:14px;border-radius:12px;background:#fff;border:1px solid #e5e7eb;box-shadow:var(--shadow-sm)}
.cadence-stat span{display:block;color:var(--muted);font-size:.9rem}
.cadence-stat strong{display:block;margin-top:2px;font-size:1.15rem}
.cadence-guidance{width:100%;padding:14px;border-radius:12px;background:#fff;border-left:4px solid var(--accent)}
.cadence-guidance strong{display:block;color:var(--accent-2)}
.cadence-guidance p{margin:4px 0 0}
.range{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:10px}
.badge{padding:10px;border-radius:12px;background:#fff;border:1px solid #eee;text-align:center}
.badge small{display:block;color:var(--muted)}
.bmi-ranges .badge{transition:border-color .15s ease, box-shadow .15s ease, background .15s ease, color .15s ease}
.bmi-ranges .badge.active{background:linear-gradient(135deg, rgba(206,102,50,.16), rgba(115,46,12,.1));border-color:rgba(206,102,50,.55);box-shadow:0 0 0 2px rgba(206,102,50,.18), var(--shadow-sm)}
.bmi-ranges .badge.active small{color:var(--accent-2);font-weight:700}
table{width:100%;border-collapse:collapse}
th,td{padding:10px;border-bottom:1px solid #eee;text-align:left}
th{background:#fafafa}
.score{font-weight:700}
.score.ok{color:var(--ok)}
.score.warn{color:var(--warn)}
.score.bad{color:var(--bad)}
.prose h3{margin-top:0}
.prose p{line-height:1.6}
.related{display:flex;flex-wrap:wrap;gap:10px;margin-top:6px}
.chip{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:999px;background:#fff;border:1px solid #eee}
.chip a{text-decoration:none;color:#111}
.chip .dot{width:8px;height:8px;border-radius:999px;background:var(--accent)}
.section-spacing{margin-top:22px}
.section-compact{margin-top:12px}
.next-links{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin-top:12px}
.next-links a{display:block;padding:12px 14px;border:1px solid #e5e7eb;border-radius:12px;background:#fff;box-shadow:var(--shadow-sm)}
.next-links a strong{display:block;margin-bottom:4px}
.retention-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px}
.retention-card{display:block;min-height:100%;padding:16px;border:1px solid var(--border);border-radius:8px;background:#fff;box-shadow:var(--shadow-sm);transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}
.retention-card:hover{transform:translateY(-2px);border-color:rgba(206,102,50,.34);box-shadow:var(--shadow)}
.retention-card span{display:block;margin-bottom:8px;color:var(--accent-2);font-size:.78rem;font-weight:800;text-transform:uppercase}
.retention-card strong{display:block;margin-bottom:6px;line-height:1.25}
.retention-card p{margin:0;color:var(--muted);font-size:.95rem}
.recently-viewed{margin:22px auto 0;max-width:920px}
.retention-head{margin-bottom:12px}
.quick-note{margin:6px 0 12px;color:var(--muted);font-size:.92rem}
.table-title{margin:12px 0 6px}
.caption-note{caption-side:bottom;text-align:left;color:var(--muted);font-size:.92rem}
footer{margin-top:36px;padding:28px 0 40px;border-top:1px solid var(--border);color:var(--muted)}
footer a{color:inherit}
.made{display:flex;gap:8px;align-items:center}


.nav-links{display:flex; gap:6px; align-items:center; flex-wrap:wrap; justify-content:flex-end}
.hero-gradient-text{background:linear-gradient(135deg,var(--accent),var(--accent-2)); -webkit-background-clip:text; background-clip:text; color:transparent}
.ad-banner-728x90{display:inline-block; width:728px; max-width:100%; height:90px; overflow:hidden}
.ad-banner-160x600{display:inline-block; width:160px; max-width:100%; height:600px; overflow:hidden}
.footer-row{display:flex; align-items:center; justify-content:space-between; gap:16px; flex-wrap:wrap}
.copyright-meta{opacity:.8}
.footer-link-spaced{margin-right:12px}
.caption-note{caption-side:bottom; text-align:left}

@media (max-width: 640px){
  .row{grid-template-columns:1fr}
  .cadence-result-grid{grid-template-columns:1fr}
  table{display:block;max-width:100%;overflow-x:auto}
}

@media (max-width: 520px){
  .pace-values{display:flex;flex-direction:column;align-items:flex-start;gap:2px}
  .pace-values span[aria-hidden="true"]{display:none}
  .nav{align-items:flex-start; flex-direction:column; gap:8px}
  .nav-links{font-size:.92rem; gap:2px; justify-content:flex-start}
  .nav a{padding:6px 8px}
  .ad-banner-728x90{width:100%}
  .house-ad{max-width:320px}
  .house-ad img{aspect-ratio:320 / 100}
}


.next-step-cta{margin-top:12px;padding:14px;border:1px solid rgba(206,102,50,.24);border-radius:12px;background:linear-gradient(135deg, rgba(206,102,50,.08), rgba(115,46,12,.05))}
.next-step-cta p{margin:0 0 8px;color:var(--text);font-weight:600}
.next-step-cta .cta-link{display:inline-flex;align-items:center;gap:6px;padding:10px 14px;border-radius:999px;background:var(--accent-2);color:#fff;font-weight:700;text-decoration:none}
.next-step-cta .cta-link:hover,.next-step-cta .cta-link:focus-visible{background:var(--accent);text-decoration:none}

@media print {
  header,
  .masthead,
  .ad,
  .ad-slot,
  .ad-slot2,
  .ad-rail,
  .related,
  .next-step-cta,
  footer,
  .hero,
  .intent-summary,
  .related-above-fold,
  button,
  input,
  select,
  label,
  .quick,
  .toolbar,
  .faq-block {
    display: none !important;
  }

  body {
    background: #fff;
    color: #000;
  }

  .content-layout,
  .content-main,
  .container,
  .card,
  .tool-card {
    display: block;
    max-width: none;
    width: 100%;
    box-shadow: none;
    border: 0;
    margin: 0;
    padding: 0;
  }

  #resultBox,
  #splitsTbody,
  table {
    display: revert !important;
  }
}

/* Mobile layout fixes: wrapping navigation and scrollable wide tables */
@media (max-width: 640px) {
  .nav { align-items: flex-start; flex-direction: column; gap: 8px }
  .nav-links { flex-wrap: wrap; width: 100% }
  .ad-banner-728x90 { width: min(728px, calc(100vw - 32px)) }
  .ad-banner-336x280 { width: min(336px, calc(100vw - 32px)) }
  table.grid { display: block; max-width: 100%; overflow-x: auto; -webkit-overflow-scrolling: touch }
}

@media (max-width: 640px) {
  .range.bmi-ranges { grid-template-columns: repeat(2, minmax(0, 1fr)) }
  .badge strong { overflow-wrap: anywhere }
  caption.caption-note { text-align: left }
}
