:root{--ink:#1C2421;--muted:#5A635F;--bg:#FBFAF7;--paper:#fff;--rule:#E4E0D8;--tint:#F3F1EA;--brand:#0F6E66;--brand-ink:#0A4D47;--coral:#E2725B;--good:#2F9D6E;--warn:#B7841A;--bad:#C0392B;--info:#4C79C9;--serif:"Fraunces",Georgia,"Times New Roman",serif;--sans:"Source Sans 3",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif}
*,*::before,*::after{box-sizing:border-box}
[hidden]{display:none!important}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font:18px/1.65 var(--sans)}
img,svg{max-width:100%}
a{color:var(--brand-ink);text-decoration-thickness:1px;text-underline-offset:3px}
a:hover{color:var(--brand);text-decoration-thickness:2px}
h1,h2,h3{font-family:var(--serif);font-weight:600;line-height:1.15;letter-spacing:-.01em;margin:1.7em 0 .55em;color:#13201C}
h1{font-size:clamp(2.1rem,1.3rem + 3vw,3.4rem);font-weight:700;margin-top:.15em}
h2{font-size:clamp(1.45rem,1.15rem + 1vw,1.95rem)}
h3,.h3{font-size:1.2rem}
p,ul,ol{margin:0 0 1em}
.small{font-size:.86rem}
.muted{color:var(--muted)}
.lead{font-size:1.2rem;line-height:1.55;color:#33403B}
.wrap{max-width:1140px;margin:0 auto;padding-left:22px;padding-right:22px}
.narrow{max-width:760px}
.section{padding-top:48px;padding-bottom:48px}
.section+.section{border-top:1px solid var(--rule)}
.section-tint{background:var(--tint)}
.skip-link{position:absolute;left:-999px;top:0;background:#fff;padding:8px 12px;z-index:10}
.skip-link:focus{left:8px}
.staging-bar{background:#FFE9A8;color:#5A4300;text-align:center;font-size:.85rem;padding:6px 12px}

/* Header: light, editorial masthead with a teal rule */
.site-header{background:var(--paper);border-top:5px solid var(--brand);border-bottom:1px solid var(--rule)}
.site-header-inner{display:flex;align-items:center;gap:20px;min-height:76px;flex-wrap:wrap}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--ink)}
.brand:hover{color:var(--ink)}
.brand-mark{flex:0 0 auto;background:var(--brand);border-radius:50%;padding:4px}
.brand-text{font-family:var(--serif);font-weight:700;font-size:1.45rem;letter-spacing:-.01em}
.brand-text small{display:block;font-family:var(--sans);font-weight:600;font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.site-nav{display:flex;gap:4px 26px;margin-left:auto;flex-wrap:wrap}
.site-nav a{color:var(--ink);text-decoration:none;font-weight:600;font-size:.98rem;padding:6px 0;border-bottom:2px solid transparent}
.site-nav a:hover{border-bottom-color:var(--coral);color:var(--ink)}
.nav-toggle{display:none;margin-left:auto;background:transparent;border:1.5px solid var(--ink);color:var(--ink);border-radius:4px;padding:7px 14px;font:inherit;font-weight:700}
@media (max-width:860px){
  .nav-toggle{display:block}
  .site-nav{display:none;width:100%;flex-direction:column;gap:0;padding-bottom:12px}
  .site-nav.open{display:flex}
  .site-nav a{padding:12px 0;border-bottom:1px solid var(--rule)}
}
@media (max-width:420px){.site-header-inner{gap:10px}.brand-text{font-size:1.2rem}.brand-text small{font-size:.6rem}}
.breadcrumb ol{list-style:none;display:flex;flex-wrap:wrap;gap:4px;padding:16px 0 0;margin:0 auto;font-size:.82rem;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}
.breadcrumb li+li::before{content:"/";margin:0 8px 0 4px;color:#B9B3A6}
.breadcrumb a{color:var(--muted);text-decoration:none}
.breadcrumb a:hover{color:var(--brand)}

/* Hero: no gradient — big serif type on paper, card with offset shadow */
.hero{padding:56px 0 60px;border-bottom:1px solid var(--rule)}
.hero-inner{display:grid;grid-template-columns:1.3fr .7fr;gap:44px;align-items:center}
.hero-inner>*{min-width:0}
.hero h1{font-size:clamp(2.3rem,1.4rem + 3.4vw,3.8rem)}
.hero-art{display:flex;justify-content:center}
@media (max-width:860px){.hero-inner{grid-template-columns:1fr}.hero-art{display:none}}
.hero-sm{padding-bottom:20px}

.card{background:var(--paper);border:1px solid var(--rule);border-radius:6px;padding:24px}
.check-card{margin:26px 0;border:2px solid var(--ink);box-shadow:8px 8px 0 var(--brand);border-radius:4px}
.narrow-card{max-width:640px}
.bp-row{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap}
.bp-row label{display:flex;flex-direction:column;flex:1 1 110px;font-weight:700;font-size:.92rem;text-transform:uppercase;letter-spacing:.06em}
.bp-row label small{font-weight:400;text-transform:none;letter-spacing:0;color:var(--muted);font-size:.82rem;margin-bottom:4px}
.bp-row input{font-family:var(--serif);font-size:2rem;font-weight:700;padding:6px 12px;border:0;border-bottom:3px solid var(--ink);border-radius:0;background:transparent;width:100%;min-width:0;color:var(--ink)}
.bp-row input:focus{outline:none;border-bottom-color:var(--brand)}
.bp-slash{font-family:var(--serif);font-size:2.4rem;color:var(--muted);padding-bottom:4px}
@media (max-width:480px){.bp-row .btn{flex:1 1 100%}}
.check-error{color:var(--bad);font-weight:600;margin:12px 0 0}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font:inherit;font-weight:700;letter-spacing:.03em;border-radius:3px;padding:13px 24px;text-decoration:none;cursor:pointer;border:2px solid transparent;line-height:1.2}
.btn-primary{background:var(--brand);color:#fff}
.btn-primary:hover{background:var(--brand-ink);color:#fff}
.btn-ghost{background:transparent;border-color:var(--ink);color:var(--ink)}
.btn-ghost:hover{background:var(--ink);color:#fff}

/* Badges: outlined with a coloured dot */
.badge{display:inline-flex;align-items:center;gap:7px;font-size:.78rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:4px 11px 4px 9px;border-radius:999px;border:1.5px solid var(--c,#888);color:#22302B;background:#fff;white-space:nowrap}
.badge::before{content:"";width:9px;height:9px;border-radius:50%;background:var(--c,#888)}
.badge-good{--c:var(--good)}.badge-warn{--c:var(--warn)}.badge-bad{--c:var(--bad)}.badge-info{--c:var(--info)}

/* Reading page */
.summary{display:grid;grid-template-columns:auto 1fr;gap:36px;align-items:start;margin-top:10px}
@media (max-width:760px){.summary{grid-template-columns:1fr}}
.bp-reading{border-left:6px solid var(--c);padding:6px 0 6px 22px;min-width:220px}
.bp-num{font-family:var(--serif);font-size:4.4rem;font-weight:700;line-height:.95;letter-spacing:-.03em;color:var(--ink)}
.bp-num span{color:var(--c);margin:0 2px;font-weight:600}
.bp-unit{color:var(--muted);font-weight:700;letter-spacing:.12em;text-transform:uppercase;font-size:.8rem;margin:8px 0 12px}
.quick{list-style:none;padding:0;margin:0;border-top:2px solid var(--ink)}
.quick li{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 2px;border-bottom:1px solid var(--rule)}
.quick span{color:var(--muted)}
.callout{border-radius:0;padding:18px 22px;margin:22px 0;background:var(--paper);border:1px solid var(--rule);border-left:5px solid var(--info)}
.callout-good{border-left-color:var(--good)}
.callout-warn{border-left-color:var(--warn);background:#FFFBF0}
.callout-bad{border-left-color:var(--bad);background:#FFF6F4}
.callout-info{border-left-color:var(--info)}
.callout h2,.callout h3{margin-top:0;font-size:1.15rem}
.callout ul{margin:0;padding-left:1.2em}
.callout li{margin-bottom:.35em}
.chart-card{padding:18px 18px 12px;max-width:640px}
.legend{list-style:none;display:flex;flex-wrap:wrap;gap:6px 16px;padding:0;margin:10px 0 0;font-size:.82rem;color:var(--muted)}
.legend span{display:inline-block;width:12px;height:12px;border-radius:50%;margin-right:6px;vertical-align:-1px}

.table-scroll{overflow-x:auto;margin:0 0 1.3em;-webkit-overflow-scrolling:touch}
table{border-collapse:collapse;width:100%;font-size:.95rem;background:transparent}
th,td{text-align:left;padding:11px 12px;border-bottom:1px solid var(--rule);vertical-align:top}
th{font-size:.76rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);border-bottom:2px solid var(--ink);font-weight:700}
.row-hit td{background:#EAF4F1;font-weight:700}
.cell-hit{background:#EAF4F1;font-weight:700}

.chips{list-style:none;display:flex;flex-wrap:wrap;gap:8px;padding:0}
.chips a{display:block;padding:6px 12px;border:1px solid var(--ink);border-radius:3px;background:#fff;text-decoration:none;font-weight:700;font-size:.9rem;color:var(--ink)}
.chips a:hover{background:var(--ink);color:#fff}
.disclaimer{margin-top:30px;border-top:1px solid var(--rule);padding-top:14px}

.value-grid{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(60px,1fr));gap:0;border-top:1px solid var(--rule);border-left:1px solid var(--rule)}
.value-grid.wide{grid-template-columns:repeat(auto-fill,minmax(88px,1fr))}
.value-grid a{display:block;text-align:center;padding:10px 0;border-right:1px solid var(--rule);border-bottom:1px solid var(--rule);font-weight:700;text-decoration:none;color:var(--ink);background:#fff;box-shadow:inset 0 -4px 0 var(--c,#999)}
.value-grid a:hover{background:var(--tint)}

/* Article lists: magazine rows */
.guide-cards{display:flex;flex-direction:column;gap:0;margin-bottom:16px;border-top:2px solid var(--ink)}
.guide-card{display:grid;grid-template-columns:200px 1fr;gap:22px;align-items:center;padding:18px 0;border-bottom:1px solid var(--rule);text-decoration:none;color:var(--ink)}
.guide-card:hover{color:var(--ink)}
.guide-card:hover strong{color:var(--brand);text-decoration:underline}
.guide-card img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;border-radius:3px;background:var(--tint)}
.guide-card span{display:flex;flex-direction:column;gap:6px}
.guide-card strong{font-family:var(--serif);font-size:1.25rem;font-weight:600;line-height:1.25}
.guide-card small{color:var(--muted);font-size:.92rem;line-height:1.5}
@media (max-width:600px){.guide-card{grid-template-columns:110px 1fr;gap:14px}.guide-card strong{font-size:1.05rem}.guide-card small{display:none}}
.guide-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:34px}
@media (max-width:860px){.guide-grid{grid-template-columns:1fr}}
.guide-col h3{margin-top:0;font-family:var(--sans);font-size:.8rem;text-transform:uppercase;letter-spacing:.12em;color:var(--coral)}
.link-list{list-style:none;padding:0}
.link-list li{padding:9px 0;border-bottom:1px solid var(--rule)}
.link-list a{font-family:var(--serif);font-weight:600;font-size:1.08rem;text-decoration:none;color:var(--ink)}
.link-list a:hover{color:var(--brand);text-decoration:underline}
details{border-bottom:1px solid var(--rule);padding:14px 0}
details:first-of-type{border-top:2px solid var(--ink)}
summary{font-family:var(--serif);font-weight:600;font-size:1.15rem;cursor:pointer;list-style-position:outside}
details p{margin:.7em 0 .2em}

.prose h2{margin-top:1.8em}
.prose ul,.prose ol{padding-left:1.3em}
.prose li{margin-bottom:.45em}
.prose>p:first-child::first-letter{font-family:var(--serif);font-weight:700;float:left;font-size:3.6rem;line-height:.85;margin:6px 10px 0 0;color:var(--brand)}
.prose code{background:var(--tint);padding:1px 5px;border-radius:3px;font-size:.88em}
.article .meta{margin-top:-.3em;text-transform:uppercase;letter-spacing:.08em;font-size:.76rem}
.cover{margin:0 0 30px}
.cover img{display:block;width:100%;height:auto;aspect-ratio:3/2;background:var(--tint)}
.contact-mail{font-family:var(--serif);font-size:1.4rem;font-weight:700}

/* Footer: light colophon */
.site-footer{background:var(--tint);color:var(--ink);margin-top:48px;padding:48px 0 30px;border-top:5px solid var(--brand)}
.site-footer a{color:var(--ink)}
.footer-cols{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:30px}
@media (max-width:860px){.footer-cols{grid-template-columns:1fr 1fr}}
@media (max-width:480px){.footer-cols{grid-template-columns:1fr}}
.footer-cols strong{font-size:.78rem;text-transform:uppercase;letter-spacing:.12em;color:var(--muted)}
.footer-cols .footer-brand{font-family:var(--serif);font-size:1.4rem;text-transform:none;letter-spacing:-.01em;color:var(--ink)}
.footer-cols ul{list-style:none;padding:0;margin:.7em 0 0}
.footer-cols li{margin-bottom:.45em}
.footer-note{border-top:1px solid var(--rule);margin-top:28px;padding-top:18px;color:var(--muted)}
.footer-copy{color:var(--muted);margin:0}
@media print{.site-header,.site-footer,.check-card,.breadcrumb,.chips{display:none}body{background:#fff}}
.guide-grid>*,.ref-grid>*,.summary>*,.footer-cols>*{min-width:0}.guide-col,.link-list a{overflow-wrap:anywhere}

/* Reading report (MyBodyResearch only) */
.kicker{font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.14em;color:var(--coral);margin:0 0 .4em}
.report-head{display:grid;grid-template-columns:auto 1fr;gap:40px;align-items:center;margin-top:10px}
.report-head>*{min-width:0}
@media (max-width:760px){.report-head{grid-template-columns:1fr;gap:20px}}
.report-meters{background:var(--paper);border:1px solid var(--rule);border-radius:6px;padding:16px 18px 6px}
.planner{border:2px solid var(--ink);border-radius:4px}
.plan-list{list-style:none;padding:0;margin:0 0 14px}
.plan-list li{border-bottom:1px solid var(--rule)}
.plan-list label{display:flex;align-items:center;gap:12px;padding:10px 2px;cursor:pointer}
.plan-list input{width:20px;height:20px;accent-color:var(--brand);flex:0 0 auto}
.plan-list span{flex:1 1 auto}
.plan-list em{font-style:normal;font-weight:700;color:var(--brand);white-space:nowrap}
.plan-result{display:flex;align-items:center;gap:22px;flex-wrap:wrap}
.plan-result div{display:flex;flex-direction:column}
.plan-result strong{font-family:var(--serif);font-size:2.6rem;line-height:1;font-weight:700}
.plan-arrow{font-size:2rem;color:var(--coral)}
.metric-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
@media (max-width:640px){.metric-grid{grid-template-columns:1fr}}
.metric{border-top:2px solid var(--ink);padding-top:12px}
.metric-label{display:block;font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}
.metric-value{display:block;font-family:var(--serif);font-size:2.2rem;font-weight:700;margin:2px 0 6px}
.metric-value small{font-family:var(--sans);font-size:.9rem;color:var(--muted);font-weight:600}
.checklist{list-style:none;padding:0}
.checklist li{position:relative;padding:8px 0 8px 30px;border-bottom:1px solid var(--rule)}
.checklist li::before{content:"?";position:absolute;left:0;top:8px;width:20px;height:20px;border-radius:50%;background:var(--brand);color:#fff;font-weight:700;font-size:.8rem;text-align:center;line-height:20px}
.log-table td{height:40px;border:1px solid var(--rule)}
.log-table td:first-child{white-space:nowrap}
@media print{.planner,.report-meters{break-inside:avoid}}
.metric-grid.three{grid-template-columns:repeat(3,1fr)}
@media (max-width:860px){.metric-grid.three{grid-template-columns:1fr}}
.metric p{margin:.4em 0 0}

.tool-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:2px solid var(--ink)}
@media (max-width:760px){.tool-grid{grid-template-columns:1fr}}
.tool{display:flex;flex-direction:column;gap:4px;padding:18px 20px 20px 0;border-bottom:1px solid var(--rule);text-decoration:none;color:var(--ink)}
.tool:hover strong{color:var(--brand);text-decoration:underline}
.tool-k{font-family:var(--serif);font-size:2.4rem;font-weight:700;color:var(--coral);line-height:1}
.tool strong{font-family:var(--serif);font-size:1.25rem}
.tool small{color:var(--muted)}
.calc-form{border:2px solid var(--ink);box-shadow:8px 8px 0 var(--brand);border-radius:4px;margin:24px 0 10px}
.units{border:0;padding:0;margin:0 0 14px;display:flex;gap:6px 20px;flex-wrap:wrap}
.units legend{font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);margin-bottom:6px;width:100%}
.units label{display:flex;gap:6px;align-items:center;cursor:pointer}
.units input{accent-color:var(--brand)}
.calc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px 24px;margin-bottom:16px}
.calc-grid label{display:flex;flex-direction:column;gap:4px;font-weight:700;font-size:.9rem;text-transform:uppercase;letter-spacing:.06em}
.pair{display:flex;align-items:flex-end;gap:6px}
.pair input{font-family:var(--serif);font-size:1.6rem;font-weight:700;width:100%;min-width:0;border:0;border-bottom:3px solid var(--ink);background:transparent;padding:4px 6px;color:var(--ink)}
.pair input:focus{outline:none;border-bottom-color:var(--brand)}
.pair em{font-style:normal;text-transform:none;letter-spacing:0;color:var(--muted);padding-bottom:6px}
.calc-out{margin-top:18px}
.calc-out:empty{display:none}
.calc-row{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:10px 0;border-top:1px solid var(--rule)}
.calc-row span:first-child{flex:1 1 180px;color:var(--muted)}
.calc-row strong{font-family:var(--serif);font-size:1.6rem}
.calc-form[data-units="us"] [data-metric],.calc-form[data-units="metric"] [data-us]{display:none}
html,body{overflow-x:clip}.google-auto-placed,ins.adsbygoogle{max-width:100%!important;overflow:hidden}
