:root {
    --primary: #0f172a;
    --primary-accent: #d6a92c;
    --accent-teal: #187a4f;
    --bg-dark: #090d16;
    --card-bg: #1e293b;
    --card-border: #334155;
    --text-light: #f8fafc;
    --text-muted: #94a3b8;
    --success: #5bd396;
    --warning: #f59e0b;
}

* { box-sizing: border-box; margin: 0; padding: 0; font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif; }
body { background-color: var(--bg-dark); color: var(--text-light); line-height: 1.6; }

header {
    background: rgba(15, 23, 42, 0.95);
    border-bottom: 1px solid var(--card-border);
    padding: 1rem 2rem;
    position: sticky; top: 0; z-index: 1000;
    display: flex; justify-content: space-between; align-items: center;
}

.logo { font-size: 1.2rem; font-weight: 800; letter-spacing: 0.5px; }
.logo span { color: #f4d678; font-weight: 400; }
.badge { background: rgba(16, 185, 129, 0.15); border: 1px solid var(--success); color: var(--success); padding: 0.25rem 0.75rem; border-radius: 20px; font-size: 0.8rem; font-weight: 600; }

nav.tabs { display: flex; background: var(--primary); border-bottom: 1px solid var(--card-border); padding: 0 2rem; overflow-x: auto; }
.tab-btn { background: none; border: none; color: var(--text-muted); padding: 1rem 1.5rem; font-weight: 600; cursor: pointer; border-bottom: 3px solid transparent; transition: all 0.2s; white-space: nowrap; }
.tab-btn.active { color: #f4d678; border-bottom-color: var(--primary-accent); }

main { max-width: 1400px; margin: 2rem auto; padding: 0 1.5rem; }
.panel { display: none; }
.panel.active { display: block; }

.card { background: var(--card-bg); border: 1px solid var(--card-border); border-radius: 12px; padding: 1.5rem; margin-bottom: 1.5rem; }
h2 { font-size: 1.4rem; color: #fff; margin-bottom: 0.5rem; }

.rumsfeld-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 1.5rem; margin-top: 1rem; }
@media (max-width: 900px) { .rumsfeld-grid { grid-template-columns: 1fr; } }

.quadrant { background: #0f172a; border: 1px solid var(--card-border); border-radius: 8px; padding: 1.25rem; }
.quadrant-1 { border-top: 4px solid var(--primary-accent); }
.quadrant-2 { border-top: 4px solid var(--warning); }
.quadrant-3 { border-top: 4px solid var(--accent-teal); }
.quadrant-4 { border-top: 4px solid #e11d48; }

.quadrant h3 { font-size: 1.1rem; margin-bottom: 0.5rem; }
.quadrant p { font-size: 0.85rem; color: var(--text-muted); margin-bottom: 1rem; }
.quadrant label { display:block; color:#f4d678; font-weight:700; font-size:.9rem; margin:.8rem 0 .35rem; }
.quadrant textarea { display:block; }

textarea { width: 100%; background: #1e293b; border: 1px solid var(--card-border); color: #fff; padding: 0.75rem; border-radius: 6px; font-size: 0.9rem; resize: vertical; min-height: 90px; }

.tac-buttons { display: flex; flex-wrap: wrap; gap: 0.5rem; margin-bottom: 1rem; }
.tac-btn { background: #0f172a; border: 1px solid var(--card-border); color: var(--text-muted); padding: 0.6rem 1rem; border-radius: 6px; cursor: pointer; font-weight: 500; }
.tac-btn.active { background: #6e5012; color: #fff; border-color: var(--primary-accent); }

.action-btn { background: var(--accent-teal); color: #fff; border: none; padding: 0.75rem 1.5rem; border-radius: 6px; font-weight: 600; cursor: pointer; transition: background 0.2s; }
.action-btn:hover { background: #0f766e; }

.pricing-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 1.5rem; }
.price-card { background: #0f172a; border: 1px solid var(--card-border); border-radius: 12px; padding: 1.5rem; text-align: center; display: flex; flex-direction: column; justify-content: space-between; }
.price-card.featured { border-color: var(--primary-accent); background: linear-gradient(180deg, #273122 0%, #0f172a 100%); }
.price-val { font-size: 2rem; font-weight: 800; color: #fff; margin: 1rem 0; }

.baa-doc { background: #090d16; border: 1px solid var(--card-border); padding: 1.5rem; border-radius: 8px; max-height: 400px; overflow-y: auto; font-size: 0.85rem; color: var(--text-muted); text-align: left; margin: 1rem 0; }
.baa-doc h4 { color: #fff; margin-top: 1rem; margin-bottom: 0.25rem; }

@media print {
    header, nav, .action-btn, .tac-buttons { display: none !important; }
    body { background: #fff; color: #000; }
    .card, .quadrant { border: 1px solid #000; background: #fff; color: #000; }
    textarea { border: 1px solid #000; background: #fff; color: #000; }
}
.preview-footer { margin: 2rem auto; max-width: 1100px; padding: 1rem; color: var(--text-muted); font-size: .8rem; line-height: 1.5; }
button:disabled { cursor: not-allowed; opacity: .58; }

.learning-note { background:#102c3f; border:1px solid #34546a; padding:1.2rem; margin:1rem 0; border-radius:10px; line-height:1.65; }
.learning-note h3 { margin:0 0 .5rem; color:#f8fafc; }
.learning-note ol { padding-left:1.4rem; }
.curriculum-browser { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.4fr); gap:1rem; margin-top:1.5rem; align-items:start; }
.track-list { grid-column:1/-1; }
.lesson-list { grid-column:1; }
.lesson-content { grid-column:2; position:static; max-height:none; overflow:visible; }
.track-list,.lesson-list,.lesson-content { background:#0f172a; border:1px solid #334155; border-radius:10px; padding:1rem; }
.track-list { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:.65rem; }
.track-list button,.lesson-list button { display:block; width:100%; text-align:left; background:#182b3d; border:1px solid #45566a; color:#f8fafc; border-radius:9px; padding:.8rem; cursor:pointer; line-height:1.4; }
.track-list button[aria-current="true"],.lesson-list button[aria-current="true"] { border-color:#9ee5b5; background:#1c533a; }
.day-group { margin:0 0 1.5rem; }
.day-group h3 { font-size:1rem; color:#e9cc77; margin:.25rem 0 .7rem; }
.day-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.65rem; }
.day-tile { min-height:112px; display:flex!important; flex-direction:column; gap:.4rem; }
.day-tile strong { color:#f4d678; font-size:.9rem; }
.day-tile span { font-size:.87rem; overflow-wrap:anywhere; }
.day-pager { display:flex; justify-content:space-between; gap:.8rem; margin-top:1.5rem; }
.day-pager button { background:#1c533a; color:#fff; border:1px solid #9ee5b5; border-radius:8px; padding:.7rem 1rem; cursor:pointer; }
.lesson-content h3 { margin:.15rem 0 1rem; } .lesson-content h4 { color:#9ee5b5; margin:1.3rem 0 .35rem; }
.lesson-content p,.lesson-content li { line-height:1.65; } .lesson-content ul { padding-left:1.3rem; }
.lesson-block { margin:1rem 0; padding:1rem 1.1rem; border:1px solid #334e5a; border-radius:12px; background:#142738; }
.lesson-block h4 { margin:0 0 .35rem; }
.lesson-block p { margin:.25rem 0 .8rem; }
.lesson-block--facilitator { border-left:4px solid #d4ac52; background:#1d2935; }
.lesson-block--guide { background:#102c3f; }
.lesson-block--guide ol { margin:.6rem 0 .2rem; padding-left:1.4rem; }
.lesson-block--guide li + li { margin-top:.55rem; }
.workbook-field { margin:1rem 0 .2rem; padding:1rem; border:1px solid #486c62; border-radius:10px; background:#0d2a2b; }
.workbook-field label { display:block; font-weight:700; color:#f4d678; margin-bottom:.25rem; }
.workbook-field .workbook-help { font-size:.9rem; margin:.2rem 0 .65rem; color:#e5f0ec; }
.workbook-field textarea { display:block; width:100%; min-height:0; line-height:1.5; background:#172b35; }
.lesson-block--journal { border-color:#d4ac52; }
.lesson-block--journal textarea { min-height:12rem; }
.tac-workbook { margin-top:1.4rem; }
.tac-workbook h3 { margin-bottom:.3rem; }
.tac-workbook .workbook-field { margin:.8rem 0; }
.source-note { font-size:.83rem; line-height:1.6; margin-top:1.5rem; color:#cbd5e1; } .source-note a { color:#aee8b5; }
@media(max-width:850px) { .curriculum-browser { grid-template-columns:1fr; } .track-list,.lesson-list,.lesson-content { grid-column:1; } .lesson-content { position:static; max-height:none; } .track-list { grid-template-columns:repeat(2,minmax(0,1fr)); } .day-grid { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media(max-width:540px) { .track-list,.day-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .day-tile { min-height:96px; } }
@media print { .tabs,.track-list,.lesson-list,.source-note { display:none!important; } .curriculum-browser { display:block; } .lesson-content { border:0; } }

:focus-visible { outline: 3px solid #f4d678; outline-offset: 3px; }
@media print { .card,.quadrant,.learning-note,.lesson-content { background:#fff!important; color:#000!important; } .card *,.quadrant *,.learning-note *,.lesson-content * { color:#000!important; } textarea { color:#000!important; background:#fff!important; } .panel:not(.active) { display:none!important; } }

/* Print the full answer rather than the visible, scrollable textarea viewport. */
.print-answer { display: none; }
@media print {
    textarea { display: none !important; }
    .print-answer { display: block; white-space: pre-wrap; overflow-wrap: anywhere; min-height: 2rem; border: 1px solid #000; padding: .5rem; margin-top: .5rem; color: #000; background: #fff; }
    .quadrant, .workbook-field { break-inside: avoid; }
    .lesson-block,.workbook-field { background:#fff!important; color:#000!important; border-color:#555!important; }
    .workbook-field label,.workbook-field .workbook-help { color:#000!important; }
}

/* Recovery center gateway and partner readiness */
.gateway-hero,.baa-hero { border-radius:18px; padding:clamp(1.5rem,4vw,3.5rem); background:linear-gradient(125deg,#123c2a 0%,#10293a 58%,#0f172a 100%); border:1px solid #3f7258; }
.gateway-hero h1 { max-width:900px; font-size:clamp(2rem,4.5vw,3.8rem); line-height:1.12; letter-spacing:-.035em; margin:.8rem 0 1rem; }
.baa-hero h2 { font-size:clamp(1.75rem,3.4vw,3rem); line-height:1.15; margin:.8rem 0 1rem; }
.eyebrow { color:#e9cc77; font-size:.78rem; letter-spacing:.14em; font-weight:800; text-transform:uppercase; }
.hero-lede { max-width:760px; font-size:1.12rem; color:#e3eee8; }
.gateway-actions { display:flex; flex-wrap:wrap; gap:.75rem; margin:1.6rem 0; }
.secondary-btn { background:transparent; border:1px solid #9ee5b5; color:#e8fff0; padding:.7rem 1.1rem; border-radius:7px; font-weight:700; cursor:pointer; }
.secondary-btn:hover { background:#24513c; }
.gateway-boundary { max-width:850px; color:#e7eadf; border-left:3px solid #e9cc77; padding-left:1rem; font-size:.92rem; }
.gateway-section { margin:3rem 0; }
.section-heading { max-width:820px; margin-bottom:1.4rem; }
.section-heading h2,.gateway-feature h2 { font-size:clamp(1.5rem,2.5vw,2.2rem); margin:.35rem 0 .6rem; }
.section-heading h3 { font-size:1.6rem; margin:.35rem 0; }
.section-heading p:not(.eyebrow) { color:#d7e4dd; }
.pathway-grid,.baa-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1rem; }
.pathway-card,.baa-step,.gateway-feature { background:#15273a; border:1px solid #3c5960; border-radius:13px; padding:1.5rem; }
.pathway-card { display:flex; flex-direction:column; align-items:flex-start; min-height:310px; }
.pathway-number { color:#e9cc77; font-weight:800; font-size:.9rem; }
.pathway-card h3 { font-size:1.3rem; margin:.8rem 0; }
.pathway-card p,.gateway-feature p,.baa-step p { color:#d8e4df; }
.status-pill { margin:auto 0 .7rem; padding:.3rem .65rem; border:1px solid #7fcfa1; border-radius:100px; color:#c8f5d7; font-size:.78rem; }
.text-link { border:0; background:none; color:#f3d887; font-weight:800; padding:.4rem 0; text-decoration:underline; cursor:pointer; text-align:left; }
.gateway-columns { display:grid; grid-template-columns:1fr 1fr; gap:1rem; }
.small-note { color:#d5e2dc; font-size:.92rem; margin-top:1rem; }
.baa-hero > p:not(.eyebrow) { max-width:850px; color:#e3eee8; }
.baa-status { margin-top:1.4rem; padding:1rem 1.2rem; border:1px solid #e9cc77; border-radius:8px; background:#1f342e; color:#fff2cc; }
.baa-step span { color:#e9cc77; font-size:.8rem; font-weight:800; }
.baa-step h4 { font-size:1.1rem; margin:.7rem 0; }
.baa-checklist { list-style:none; display:grid; grid-template-columns:1fr 1fr; gap:.7rem 1.3rem; }
.baa-checklist li { background:#15273a; border-left:3px solid #e9cc77; padding:.9rem 1rem; border-radius:4px; }
.baa-reference { background:#162b28; border:1px solid #3f7258; border-radius:12px; padding:1.4rem; margin-bottom:2rem; }
.baa-reference h3 { margin-bottom:.5rem; }
.baa-reference a { color:#f3d887; text-decoration:underline; }
@media(max-width:1100px) { .pathway-grid,.baa-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:700px) { header { position:static; flex-wrap:wrap; gap:.5rem; padding:1rem; } nav.tabs { padding:0 .5rem; } main { margin:1rem auto; padding:0 1rem; } .pathway-grid,.baa-grid,.gateway-columns,.baa-checklist { grid-template-columns:1fr; } .pathway-card { min-height:0; } .status-pill { margin:1rem 0 .7rem; } }
@media print { .gateway-hero,.baa-hero,.pathway-card,.baa-step,.gateway-feature,.baa-reference,.baa-checklist li { background:#fff!important; color:#000!important; border-color:#333!important; } .gateway-hero *,.baa-hero *,.pathway-card *,.baa-step *,.gateway-feature *,.baa-reference *,.baa-checklist * { color:#000!important; } }


/* Read aloud controls wrap naturally on narrow screens. */
.speech-controls { display:flex; flex-wrap:wrap; align-items:center; gap:.5rem; padding:.65rem 0; margin-bottom:.75rem; }
.speech-controls button,.speech-controls select { background:#173d2b; color:#fff3cc; border:1px solid #d2b45c; border-radius:6px; padding:.5rem .65rem; min-height:44px; font:inherit; }
.speech-controls button { cursor:pointer; }
.speech-controls button:disabled { opacity:.55; cursor:default; }
.speech-controls button:focus-visible,.speech-controls select:focus-visible { outline:3px solid #9ee5b5; outline-offset:3px; }
.speech-controls label,.speech-status { font-size:.85rem; }
.speech-status { flex-basis:100%; color:#d7e4dd; }
@media print { .speech-controls { display:none!important; } }

/* Branded build review, using native browser validation and Netlify Forms. */
.review-page { max-width: 860px; }
.review-page > a { display:inline-block; margin-bottom:1rem; }
.review-page a, .preview-footer a, .learning-note a, .gateway-feature a, .gateway-section a { color:#f4d678; text-underline-offset:.2em; }
.review-page input:not([type=checkbox]):not([type=hidden]), .review-page select { display:block; width:100%; padding:.8rem; border:1px solid var(--card-border); border-radius:6px; background:#1e293b; color:#fff; font:inherit; }
.review-check { display:flex; align-items:flex-start; gap:.7rem; margin:1.2rem 0; }
.review-check input { margin-top:.3rem; flex-shrink:0; }
:focus-visible { outline:3px solid #f4d678; outline-offset:4px; }

.header-brand { display:flex; align-items:center; gap:1rem; }
.foundation-header-logo { display:block; width:72px; height:72px; object-fit:contain; border-radius:6px; flex-shrink:0; }
.header-owner { font-size:.8rem; color:#f4d678; margin-top:.2rem; }
.review-header { justify-content:flex-start; gap:1rem; }
.foundation-footer { text-align:left; padding:2rem; border-top:2px solid #9a7b38; background:#15291e; border-radius:12px; }
.foundation-brand { display:flex; align-items:center; gap:1.5rem; margin-bottom:1.25rem; }
.foundation-brand img { width:112px; height:112px; object-fit:contain; border-radius:8px; flex-shrink:0; }
.foundation-brand h2 { font-size:1.25rem; color:#f4d678; }
.foundation-status { color:#e6eada; }
.foundation-credits { margin-bottom:1rem; }
.foundation-credits p { margin:.25rem 0; }
.footer-boundary { padding-top:1rem; border-top:1px solid #526c59; margin-bottom:1rem; max-width:80ch; }
@media(max-width:600px) { header { position:static; flex-wrap:wrap; gap:.7rem; padding:1rem; } .header-brand { gap:.7rem; } .foundation-footer { padding:1.2rem; } .foundation-brand { align-items:flex-start; gap:1rem; } .foundation-brand img { width:88px; height:88px; } .foundation-brand h2 { font-size:1.05rem; } }
@media print { .foundation-footer { background:white; color:black; } .foundation-brand h2,.foundation-status { color:black; } .foundation-header-logo,.foundation-brand img { print-color-adjust:exact; } }

/* Bilingual saved-voice controls retain readable transcript access. */
.speech-controls { flex-wrap: wrap; }
.speech-controls details { flex-basis: 100%; max-width: 100%; }
.speech-transcript { white-space: pre-wrap; max-height: 22rem; overflow: auto; line-height: 1.65; }
@media print { .speech-controls { display: none !important; } }
.price-table-wrap { overflow-x: auto; margin: 1.25rem 0; }
.license-price-table { border-collapse: collapse; width: 100%; }
.license-price-table caption { text-align: left; font-weight: 700; margin-bottom: .75rem; }
.license-price-table th, .license-price-table td { padding: .85rem; text-align: left; border-bottom: 1px solid #cad9cf; }
.license-price-table thead { background: #073c2a; color: white; }

/* Calm learner interface. Project content and release boundaries remain separate. */
[hidden] { display:none!important; }
html { scroll-padding-top:8rem; }
body { background:#0c1613; }
header { background:#10251c; padding:.8rem clamp(1rem,4vw,3rem); position:static; }
.foundation-header-logo { width:54px; height:54px; }
.logo { letter-spacing:.06em; font-size:1.05rem; }
.badge { font-size:.67rem; border-color:#536b5c; background:transparent; color:#bdd0c1; letter-spacing:.06em; }
nav.tabs { overflow:visible; padding:0 clamp(1rem,4vw,3rem); background:#10251c; gap:.15rem; align-items:stretch; }
.tab-btn { padding:.9rem .85rem; font-size:.88rem; text-decoration:none; min-height:46px; display:flex; align-items:center; justify-content:center; color:#c6d4c9; }
.tab-btn:hover { background:#1c3428; color:#fff; }
.nav-more { position:relative; margin-left:auto; }
.nav-more>summary { padding:.9rem 1rem; min-height:46px; cursor:pointer; color:#c6d4c9; font-size:.88rem; }
.nav-more-links { position:absolute; right:0; top:100%; z-index:1100; width:265px; padding:.5rem; background:#193329; border:1px solid #47604f; border-radius:0 0 12px 12px; box-shadow:0 15px 35px #0005; }
.nav-more-links a,.nav-more-links button { display:block; width:100%; border:0; border-radius:6px; background:none; color:#e6eee8; text-align:left; font:inherit; font-size:.87rem; text-decoration:none; padding:.8rem; cursor:pointer; white-space:normal; min-height:44px; }
.nav-more-links a:hover,.nav-more-links button:hover { background:#274738; }
main { max-width:1200px; margin:2rem auto; }
.gateway-hero { background:linear-gradient(115deg,#1a4935,#132c23); border-color:#375b45; padding:clamp(1.6rem,5vw,4rem); }
.gateway-hero h1 { max-width:730px; font-size:clamp(2.4rem,5.2vw,4.6rem); font-weight:650; letter-spacing:-.045em; }
.hero-lede { max-width:560px; font-size:1.08rem; line-height:1.7; color:#d3dfd5; }
.action-btn { background:#e3c469; color:#172b20; border:1px solid #e3c469; border-radius:8px; min-height:46px; }
.action-btn:hover { background:#f0d784; }
.gateway-actions { align-items:center; margin:1.5rem 0; }
.quiet-link { color:#d5e6d7; text-underline-offset:.3em; font-size:.9rem; padding:.7rem; }
.gateway-boundary { border:0; padding:0; font-size:.78rem; color:#bacbbc; max-width:65ch; }
.gateway-section { margin:2.75rem 0; }
.section-heading { max-width:760px; }
.section-heading h2,.gateway-feature h2 { font-size:clamp(1.5rem,3vw,2.2rem); font-weight:650; }
.section-heading p:not(.eyebrow) { font-size:.96rem; color:#b8cbbd; }
.pathway-grid { gap:.85rem; }
.pathway-card,.gateway-feature { background:#152b22; border-color:#36503f; padding:1.4rem; }
.pathway-card { min-height:250px; }
.pathway-card h3 { font-size:1.22rem; line-height:1.35; margin:.85rem 0; }
.pathway-card p { font-size:.92rem; line-height:1.65; }
.pathway-number,.project-label { font-size:.68rem; letter-spacing:.1em; color:#d9c379; font-weight:750; }
.pathway-card .text-link { margin-top:auto; padding-top:1.25rem; font-size:.87rem; min-height:44px; }
.text-link { text-underline-offset:.3em; }
.section-note { color:#b5c9bc; font-size:.8rem; margin-top:1rem; }
.practice-strip { display:flex; justify-content:space-between; align-items:center; gap:1.5rem; padding:1.75rem; border-block:1px solid #36503f; }
.practice-strip h2 { font-size:1.6rem; margin:.25rem 0; }
.practice-strip p:not(.eyebrow) { color:#bdcec2; font-size:.92rem; }
.practice-strip .gateway-actions { margin:0; flex-shrink:0; }
.project-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem; }
.project-grid h3 { font-size:1.12rem; margin:.7rem 0; }
.project-grid p:not(.project-label) { font-size:.9rem; margin-bottom:1rem; }
.supporting-details>summary,.lesson-disclosure>summary,.day-picker>summary { cursor:pointer; color:#dfce93; font-weight:650; min-height:44px; padding:.5rem 0; }
.supporting-details>summary { font-size:.95rem; }
.supporting-details[open]>summary,.lesson-disclosure[open]>summary { margin-bottom:.75rem; }
.lesson-disclosure { padding:1rem 1.1rem; }
.lesson-disclosure>summary { font-size:1rem; }
.day-picker { grid-column:1; border:1px solid #36503f; background:#13281f; border-radius:10px; padding:.6rem 1rem; }
.day-picker .lesson-list { border:0; background:transparent; padding:.6rem 0 0; }
.day-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
.day-tile { min-height:90px; }
.lesson-content { background:#13281f; border-color:#36503f; padding:clamp(1rem,2.5vw,2rem); }
.lesson-block { background:#172f26; border-color:#365648; }
.lesson-block--facilitator,.lesson-block--guide { background:#172b23; }
.workbook-field { background:#10261e; border-color:#3c5f4e; }
.workbook-field textarea { background:#1b3028; }
.speech-controls { gap:.45rem; margin-bottom:1rem; padding:0 0 .8rem; border-bottom:1px solid #36503f; }
.speech-controls button,.speech-controls select { font-size:.82rem; border-color:#506653; color:#e1d3a7; background:#1b3529; }
.speech-controls>.audio-options { flex-basis:auto; margin-left:auto; position:relative; }
.audio-options>summary { cursor:pointer; font-size:.8rem; color:#c6d5c9; padding:.65rem .25rem; min-height:44px; }
.audio-options[open] { flex-basis:100%; width:100%; padding:.5rem .8rem; background:#13291f; border:1px solid #36503f; border-radius:8px; }
.audio-options label { display:inline-flex; flex-wrap:wrap; align-items:center; gap:.5rem; margin:.4rem .9rem .5rem 0; }
.audio-options details { margin:.5rem 0; }
.audio-options details>summary { cursor:pointer; color:#dfce93; font-size:.85rem; min-height:44px; padding:.6rem 0; }
.audio-note { color:#aebfb2; font-size:.75rem; margin:.5rem 0; }
.speech-status:empty { display:none; }
.speech-status { font-size:.77rem; }
.foundation-footer { max-width:1152px; border-radius:0; background:transparent; border-top:1px solid #47604f; padding:1.75rem 1rem; font-size:.75rem; }
.foundation-brand { gap:1rem; margin-bottom:.8rem; }
.foundation-brand img { width:64px; height:64px; }
.foundation-brand h2 { font-size:1rem; }
.foundation-credits { margin-bottom:.8rem; }
.footer-boundary { max-width:100ch; font-size:.74rem; color:#aebfb2; }
.footer-link { background:none; border:0; color:#f4d678; font:inherit; cursor:pointer; text-decoration:underline; text-underline-offset:.2em; padding:.5rem .2rem; min-height:44px; }
@media(max-width:1000px) { .practice-strip { align-items:flex-start; flex-direction:column; }.project-grid { grid-template-columns:1fr; }.gateway-feature { min-width:0; } }
@media(max-width:899px) { .curriculum-browser { grid-template-columns:1fr; }.track-list,.day-picker,.lesson-content { grid-column:1; }.day-picker { margin-bottom:.3rem; }.day-picker:not([open]) { padding-bottom:.6rem; } }
@media(max-width:700px) {
  header { gap:.5rem; }.header-brand { gap:.65rem; }.logo { font-size:.9rem; }.header-owner { font-size:.7rem; }.foundation-header-logo { width:44px; height:44px; }
  .badge { margin-left:0; font-size:.6rem; padding:.2rem .45rem; }
  nav.tabs.oasis-nav { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:0; padding:0 .5rem; }.oasis-nav>.tab-btn,.oasis-nav>.nav-more>summary { font-size:.75rem; padding:.65rem .2rem; min-height:44px; white-space:normal; text-align:center; }
  .nav-more { margin-left:0; }.nav-more-links { width:min(270px,85vw); }
  .gateway-hero h1 { font-size:2.65rem; }.gateway-hero { padding:1.6rem; }.gateway-section { margin:2rem 0; }
  .pathway-grid { grid-template-columns:1fr; }.pathway-card { min-height:0; }.pathway-card .text-link { padding-top:.8rem; }
  .practice-strip { padding:1.2rem 0; }.practice-strip .gateway-actions { width:100%; }.practice-strip button { flex:1; font-size:.82rem; padding:.65rem; }
  .track-list { padding:.7rem; gap:.5rem; }.track-list button { font-size:.8rem; min-height:64px; padding:.65rem; }
  .speech-controls>.audio-options { margin-left:0; }.speech-controls { gap:.35rem; }.speech-controls button { padding:.5rem; }
  .foundation-footer { margin-inline:1rem; padding-inline:0; }.foundation-brand h2 { font-size:.95rem; }.foundation-brand img { width:54px; height:54px; }
}
@media print { .oasis-nav,.footer-link { display:none!important; }.day-picker { display:none!important; }.lesson-disclosure { background:white!important; color:black!important; }.lesson-disclosure>summary { color:black!important; } }



/* Production polish: progressive lessons and qualified launch-access funnel */
.launch-access { margin-top:2rem; padding:clamp(1rem,3vw,1.6rem); border:1px solid #526343; border-radius:12px; background:linear-gradient(145deg,#172f26,#11261e); }
.launch-access h3 { margin-top:0; }
.license-interest-form { margin-top:1rem; }
.license-form-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; }
.license-interest-form label { display:flex; flex-direction:column; gap:.45rem; color:#edf5ef; font-weight:650; }
.license-interest-form label span { color:#afc0b3; font-size:.78rem; font-weight:400; }
.license-interest-form input,.license-interest-form select { width:100%; min-height:48px; padding:.7rem .8rem; border:1px solid #56705f; border-radius:8px; background:#10261e; color:#f5f8f6; font:inherit; }
.license-interest-form input:focus,.license-interest-form select:focus { outline:3px solid rgba(217,195,121,.35); outline-offset:2px; border-color:#d9c379; }
.license-interest-form .consent-row { display:grid; grid-template-columns:auto 1fr; align-items:start; gap:.7rem; margin:1rem 0; font-weight:500; }
.license-interest-form .consent-row input { width:1.15rem; min-height:1.15rem; margin-top:.15rem; }
.form-honeypot { position:absolute!important; left:-10000px!important; width:1px!important; height:1px!important; overflow:hidden!important; }
.confirmation-card { max-width:760px; margin-inline:auto; }
.lesson-disclosure { margin-block:.7rem; }
.lesson-disclosure[open] { box-shadow:0 8px 22px rgba(0,0,0,.12); }
@media(max-width:700px) { .license-form-grid { grid-template-columns:1fr; } }
