.elementor-745 .elementor-element.elementor-element-dc63666{--display:flex;}.elementor-745 .elementor-element.elementor-element-dc63666.e-con{--flex-grow:0;--flex-shrink:0;}@media(max-width:767px){.elementor-745 .elementor-element.elementor-element-dc63666{--width:648.333px;}}/* Start custom CSS for html, class: .elementor-element-65a23b68 */@import url('https://fonts.googleapis.com/css2?family=Space+Mono:ital,wght@0,400;0,700;1,400&family=DM+Sans:wght@300;400;500&display=swap');
:root {
  --black: #000; --white: #f5f4f0; --accent: #c8ff00;
  --mid: #1a1a1a; --border: #2a2a2a; --muted: #777;
  --orange: #ff9500; --red: #ff3c3c;
  --mono: 'Space Mono', monospace; --body: 'DM Sans', sans-serif;
}
* { box-sizing: border-box; margin: 0; padding: 0; }
.page { background: var(--black); color: var(--white); font-family: var(--body); font-weight: 300; line-height: 1.75; padding-bottom: 5rem; }

.hero { padding: 3.5rem 2.5rem 3rem; border-bottom: 1px solid var(--border); position: relative; overflow: hidden; }
.hero::after {
  content: 'VO₂';
  position: absolute; bottom: -2rem; right: -1rem;
  font-family: var(--mono); font-size: 9rem; font-weight: 700;
  color: rgba(200,255,0,0.04); pointer-events: none; letter-spacing: -0.04em; line-height: 1;
}

.breadcrumb { font-family: var(--mono); font-size: 10px; letter-spacing: 0.15em; color: var(--muted); margin-bottom: 1.25rem; display: flex; align-items: center; gap: 6px; }
.breadcrumb .bc-link { color: var(--accent); cursor: pointer; border-bottom: 1px solid transparent; transition: border-color 0.15s; }
.breadcrumb .bc-link:hover { border-color: var(--accent); }

.eyebrow { font-family: var(--mono); font-size: 10px; letter-spacing: 0.22em; text-transform: uppercase; color: var(--accent); display: flex; align-items: center; gap: 8px; margin-bottom: 1.25rem; }
.eyebrow::before { content:''; width:20px; height:1px; background:var(--accent); display:block; }

h1 { font-family: var(--mono); font-size: clamp(1.35rem, 2.8vw, 2rem); font-weight: 700; line-height: 1.15; letter-spacing: -0.03em; color: var(--white); margin-bottom: 1.5rem; }
h1 em { font-style: normal; color: var(--accent); }

.answer-first { background: var(--mid); border-left: 2px solid var(--accent); padding: 1.25rem 1.5rem; font-size: 15px; line-height: 1.68; color: #bbb; margin-bottom: 2.5rem; }
.answer-first strong { color: var(--white); font-weight: 500; }
.answer-first a { color: var(--accent); text-decoration: underline; cursor: pointer; }

.stat-row { display: grid; grid-template-columns: repeat(4,1fr); gap: 1px; background: var(--border); border: 1px solid var(--border); }
.stat { background: var(--black); padding: 0.9rem 1rem; }
.stat .v { font-family: var(--mono); font-size: 1.35rem; font-weight: 700; color: var(--accent); line-height: 1; margin-bottom: 3px; }
.stat .k { font-size: 9px; letter-spacing: 0.14em; text-transform: uppercase; color: var(--muted); }

.body { padding: 0 2.5rem; }

h2 { font-family: var(--mono); font-size: 10px; letter-spacing: 0.22em; text-transform: uppercase; color: var(--accent); margin: 3.5rem 0 1.25rem; display: flex; align-items: center; gap: 10px; }
h2::after { content:''; flex:1; height:1px; background:var(--border); }

h3 { font-family: var(--mono); font-size: 0.95rem; font-weight: 700; color: var(--white); margin: 2rem 0 0.75rem; letter-spacing: -0.02em; }

p { font-size: 15px; color: #bbb; margin-bottom: 1rem; line-height: 1.78; }
p strong { color: var(--white); font-weight: 500; }

.ilink { color: var(--accent); text-decoration: underline; cursor: pointer; font-weight: 500; }

.mono { font-family: var(--mono); font-size: 11px; background: var(--mid); color: var(--accent); padding: 1px 5px; border-radius: 2px; }

.callout { border: 1px solid var(--border); padding: 1.25rem 1.5rem; margin: 1.5rem 0; position: relative; }
.callout::before { content: attr(data-label); position: absolute; top: 0; left: 1rem; transform: translateY(-50%); background: var(--black); padding: 0 8px; font-family: var(--mono); font-size: 9px; letter-spacing: 0.15em; text-transform: uppercase; color: var(--accent); }
.callout p { margin: 0; font-size: 14px; }
.callout.warn { border-color: var(--orange); }
.callout.warn::before { color: var(--orange); }
.callout.red { border-color: var(--red); }
.callout.red::before { color: var(--red); }

/* SUBSYSTEM BARS */
.bar-row { display: flex; align-items: center; gap: 12px; margin-bottom: 10px; }
.bar-label { font-family: var(--mono); font-size: 11px; color: var(--muted); min-width: 160px; }
.bar-val { font-family: var(--mono); font-size: 11px; color: var(--accent); min-width: 80px; }
.bar-track { flex:1; height:6px; background: var(--border); border-radius:1px; overflow:hidden; }
.bar-fill { height:100%; border-radius:1px; }

/* PROTOCOL TABLE */
.proto-stack { display: flex; flex-direction: column; gap: 1px; background: var(--border); border: 1px solid var(--border); margin: 1.5rem 0 2rem; }
.proto-row { background: var(--black); padding: 1.1rem 1.5rem; display: grid; grid-template-columns: 2.5fr 1fr 1fr 1fr; gap: 1rem; align-items: start; transition: background 0.15s; }
.proto-row:hover { background: var(--mid); }
.proto-name { font-family: var(--mono); font-size: 12px; font-weight: 700; color: var(--white); margin-bottom: 4px; line-height: 1.3; }
.proto-desc { font-size: 12px; color: var(--muted); line-height: 1.45; }
.proto-badge { display: inline-block; font-family: var(--mono); font-size: 8px; letter-spacing: 0.1em; padding: 2px 6px; border: 1px solid; margin-top: 6px; }
.proto-badge.gold { border-color: var(--accent); color: var(--accent); }
.proto-badge.mid { border-color: var(--orange); color: var(--orange); }
.proto-badge.adv { border-color: var(--muted); color: var(--muted); }
.proto-stat-l { font-family: var(--mono); font-size: 9px; letter-spacing: 0.12em; text-transform: uppercase; color: var(--muted); margin-bottom: 3px; }
.proto-stat-v { font-family: var(--mono); font-size: 13px; font-weight: 700; color: var(--accent); }
.proto-stat-v.or { color: var(--orange); }
.proto-stat-v.rd { color: var(--red); }

/* ADAPT LIST */
.alist { list-style: none; margin: 0.75rem 0 1.75rem; }
.alist li { display: flex; align-items: flex-start; gap: 14px; padding: 0.85rem 0; border-bottom: 1px solid var(--border); font-size: 14px; color: #bbb; }
.alist li:last-child { border-bottom: none; }
.anum { font-family: var(--mono); font-size: 10px; color: var(--accent); min-width: 22px; padding-top: 3px; }
.ahead { display: block; font-weight: 500; color: var(--white); margin-bottom: 3px; font-size: 14px; }

/* WEEK VISUAL */
.week-legend { display: flex; gap: 1.5rem; margin-bottom: 1rem; flex-wrap: wrap; }
.wl { display: flex; align-items: center; gap: 6px; font-family: var(--mono); font-size: 9px; letter-spacing: 0.1em; color: var(--muted); }
.wdot { width: 8px; height: 8px; border-radius: 50%; }
.week-grid { display: grid; grid-template-columns: repeat(7,1fr); gap: 4px; margin-bottom: 2rem; }
.day { aspect-ratio:1; border-radius:2px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:3px; border: 1px solid var(--border); background: var(--black); }
.day.hi { background: var(--mid); border-color: var(--red); }
.day.med { background: var(--mid); border-color: var(--orange); }
.day.rest { opacity: 0.35; }
.dl { font-family: var(--mono); font-size: 9px; color: var(--muted); }
.dd { width:6px; height:6px; border-radius:50%; background: var(--border); }
.day.hi .dd { background: var(--red); }
.day.med .dd { background: var(--orange); }
.dt { font-family: var(--mono); font-size: 8px; color: var(--muted); text-align:center; line-height:1.2; }

/* BACK / FORWARD NAV */
.nav-row { display: grid; grid-template-columns: 1fr 1fr; gap: 1px; background: var(--border); border: 1px solid var(--border); margin: 2rem 0; }
.nav-card { background: var(--black); padding: 1.1rem 1.5rem; cursor: pointer; transition: background 0.15s; }
.nav-card:hover { background: var(--mid); }
.nav-card .nc-dir { font-family: var(--mono); font-size: 9px; letter-spacing: 0.15em; color: var(--muted); margin-bottom: 4px; }
.nav-card .nc-title { font-family: var(--mono); font-size: 12px; font-weight: 700; color: var(--white); margin-bottom: 3px; line-height: 1.3; }
.nav-card .nc-arrow { font-family: var(--mono); font-size: 10px; color: var(--accent); margin-top: 6px; }

.footer { margin-top: 3rem; padding: 1.5rem 2.5rem; border-top: 1px solid var(--border); display: flex; justify-content: space-between; align-items: center; }
.footer .brand { font-family: var(--mono); font-size: 12px; letter-spacing: 0.22em; color: var(--accent); }
.footer .tag { font-family: var(--mono); font-size: 10px; color: var(--muted); letter-spacing: 0.15em; text-transform: uppercase; }/* End custom CSS */