/* Generated by build_styles.py; edit the source stylesheets and rebuild. */
@layer base{*,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}
:root{--paper:#fffef9;--cream:#f4f3e9;--mist:#edf2ed;--ink:#17251f;--muted:#66736c;--forest:#194d38;--green:#2f7557;--lime:#dff36d;--line:#d9e1da;--white:#fff;--radius:18px;--shadow:0 24px 70px #17251f17}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased;margin:0;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-size:16px;line-height:1.55}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,summary{cursor:pointer}::selection{background:var(--lime);color:var(--ink)}.site-header{z-index:20;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffef9f0;border-bottom:1px solid #194d381f;grid-template-columns:auto 1fr auto;align-items:center;gap:28px;min-height:78px;padding:14px clamp(22px,5vw,78px);display:grid;position:sticky;top:0}.brand{letter-spacing:-.035em;align-items:center;gap:11px;font-size:21px;font-weight:750;display:inline-flex}.brand sup{color:var(--green);vertical-align:super;margin-left:2px;font-size:9px}.brand-mark{width:35px;height:35px;color:var(--white);background:var(--forest);border-radius:50%;place-items:center;font-weight:800;display:grid}.site-header nav{justify-content:center;gap:clamp(18px,2.1vw,34px);display:flex}.site-header nav a{color:#394b42;font-size:14px;font-weight:650}.site-header nav a:hover{color:var(--green)}.header-action{border:1px solid var(--forest);color:var(--forest);border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:11px 17px;font-size:14px;font-weight:700;display:inline-flex}.hero{background:radial-gradient(circle at 78% 20%, #dff36d4a, transparent 25%), linear-gradient(135deg, var(--paper) 0%, #fafbf5 57%, #eef5ee 100%);grid-template-columns:minmax(0,1.15fr) minmax(330px,.75fr);align-items:center;gap:clamp(45px,7vw,110px);min-height:710px;padding:92px clamp(22px,7vw,112px) 104px;display:grid}.hero-copy{max-width:790px}.eyebrow{color:var(--green);letter-spacing:.15em;text-transform:uppercase;margin:0 0 17px;font-size:12px;font-weight:800}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Arial,Helvetica,sans-serif}h1{letter-spacing:-.065em;margin-bottom:28px;font-size:clamp(52px,7vw,102px);font-weight:780;line-height:.93}h1 em{color:var(--green);font-style:normal;font-weight:420}.hero-lead{color:#4f5f57;max-width:680px;margin-bottom:31px;font-size:clamp(19px,1.55vw,24px);line-height:1.5}.hero-actions{flex-wrap:wrap;align-items:center;gap:22px;margin-bottom:27px;display:flex}.button-primary{border:1px solid var(--forest);min-height:51px;color:var(--white);background:var(--forest);border-radius:999px;justify-content:center;align-items:center;gap:10px;padding:13px 20px;font-weight:750;transition:transform .2s,background .2s;display:inline-flex}.button-primary:hover{background:#236448;transform:translateY(-2px)}.button-link,.text-link{color:var(--forest);align-items:center;gap:9px;font-weight:750;display:inline-flex}.button-link:hover,.text-link:hover{color:var(--green)}.safety-line{max-width:660px;color:var(--muted);align-items:flex-start;gap:9px;margin:0;font-size:14px;display:flex}.safety-line svg{color:var(--green);flex:none;margin-top:3px}.hero-finder{box-shadow:var(--shadow);background:#fffc;border:1px solid #194d381f;border-radius:26px;padding:clamp(25px,3vw,42px)}.finder-label{letter-spacing:.04em;margin-bottom:15px;font-size:13px;font-weight:800}.search-box{border:1px solid var(--line);background:var(--white);border-radius:12px;align-items:center;gap:11px;padding:0 16px;display:flex}.search-box:focus-within{border-color:var(--green);outline:3px solid #2f755726}.search-box svg{color:var(--green)}.search-box input{width:100%;height:57px;color:var(--ink);background:0 0;border:0;outline:0}.search-box input::placeholder{color:#8b958f}.quick-links{flex-wrap:wrap;gap:8px;margin:16px 0 28px;display:flex}.quick-links button{border:1px solid var(--line);color:#4d5f56;background:var(--paper);border-radius:999px;padding:7px 11px;font-size:12px;font-weight:700}.quick-links button:hover{border-color:var(--green);color:var(--green)}.finder-result{border-top:1px solid var(--line);align-items:center;gap:17px;padding-top:23px;display:flex}.finder-result span{letter-spacing:-.05em;color:var(--forest);font-size:44px;font-weight:800;line-height:1}.finder-result p{max-width:190px;color:var(--muted);margin:0;font-size:13px;line-height:1.35}.scope-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--white);grid-template-columns:repeat(4,1fr);display:grid}.scope-strip div{border-right:1px solid var(--line);align-items:center;gap:14px;min-height:110px;padding:24px clamp(18px,3vw,44px);display:flex}.scope-strip div:last-child{border-right:0}.scope-strip strong{color:var(--green);letter-spacing:-.04em;font-size:34px}.scope-strip span{color:var(--muted);font-size:13px;line-height:1.35}.section{padding:105px clamp(22px,7vw,112px)}.section-heading{grid-template-columns:64px minmax(0,1.05fr) minmax(280px,.65fr);align-items:end;gap:28px;margin-bottom:55px;display:grid}.section-heading.compact{grid-template-columns:64px 1fr}.section-number{color:var(--green);letter-spacing:.15em;font-size:12px;font-weight:800}.section h2,.boundary-section h2{letter-spacing:-.055em;margin-bottom:0;font-size:clamp(36px,4.2vw,68px);font-weight:760;line-height:1.02}.section-intro{color:var(--muted);margin:0;font-size:17px}.topics-section{background:var(--paper)}.topics-grid{border-top:1px solid var(--line);border-left:1px solid var(--line);grid-template-columns:repeat(4,1fr);display:grid}.topic-card{border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--white);min-height:410px;padding:29px;transition:background .2s,transform .2s}.topic-card:hover{background:#f8faf6;position:relative;transform:translateY(-3px);box-shadow:0 18px 40px #17251f14}.topic-top{color:var(--green);justify-content:space-between;align-items:center;margin-bottom:43px;display:flex}.topic-top span{letter-spacing:.13em;font-size:11px;font-weight:800}.topic-card h3{letter-spacing:-.035em;margin-bottom:13px;font-size:24px;line-height:1.08}.topic-card>p{min-height:69px;color:var(--muted);font-size:14px}.topic-card ul{margin:22px 0 25px;padding:0;list-style:none}.topic-card li{padding:6px 0 6px 16px;font-size:13px;position:relative}.topic-card li:before{content:"•";color:var(--green);position:absolute;left:0}.topic-card details{border-top:1px solid var(--line);padding-top:17px}.topic-card summary{color:var(--forest);justify-content:space-between;align-items:center;font-size:13px;font-weight:800;list-style:none;display:flex}.topic-card summary::-webkit-details-marker{display:none}.topic-card details[open] summary svg{transform:rotate(90deg)}.topic-card details p{color:var(--muted);margin:16px 0 0;font-size:13px}.empty-state{text-align:center;border:1px solid var(--line);background:var(--cream);justify-items:center;padding:65px 20px;display:grid}.empty-state svg{color:var(--green)}.empty-state h3{margin:18px 0 8px}.empty-state p{color:var(--muted)}.empty-state button{color:var(--forest);background:0 0;border:0;font-weight:800}.method-section{background:var(--forest);color:var(--white);grid-template-columns:minmax(0,.85fr) minmax(420px,1fr);gap:clamp(45px,8vw,130px);display:grid}.method-section .eyebrow,.method-section .section-number{color:var(--lime)}.method-copy>p:not(.eyebrow):not(.section-number){color:#cbd9d1;max-width:620px;margin:27px 0 29px;font-size:17px}.method-section .text-link{color:var(--lime)}.method-steps{border-top:1px solid #fff3;margin:0;padding:0;list-style:none}.method-steps li{border-bottom:1px solid #fff3;grid-template-columns:60px 1fr;gap:22px;padding:25px 0;display:grid}.method-steps>li>span{color:var(--lime);letter-spacing:.15em;font-size:12px;font-weight:800}.method-steps strong{font-size:19px}.method-steps p{color:#bfd0c7;margin:5px 0 0;font-size:14px}.practice-section{background:var(--cream)}.protocol-grid{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.protocol-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);flex-direction:column;min-height:330px;padding:27px;display:flex}.protocol-card>span{color:var(--green);letter-spacing:.1em;text-transform:uppercase;font-size:12px;font-weight:800}.protocol-card h3{letter-spacing:-.04em;margin:42px 0 12px;font-size:26px}.protocol-card p{color:var(--muted);font-size:14px}.protocol-card strong{color:var(--forest);align-items:center;gap:7px;margin-top:auto;font-size:13px;display:flex}.protocol-card:hover{border-color:var(--green)}.principle-banner{border-radius:var(--radius);color:var(--white);background:var(--green);align-items:flex-start;gap:18px;margin-top:16px;padding:24px 28px;display:flex}.principle-banner svg{flex:none}.principle-banner p{margin:0}.books-section{background:var(--paper)}.books-list{border-top:1px solid var(--line)}.books-list article{border-bottom:1px solid var(--line);grid-template-columns:70px minmax(0,1fr) auto;align-items:center;gap:22px;padding:24px 8px;display:grid}.books-list>article>span{color:var(--green);font-size:24px;font-weight:800}.books-list h3{letter-spacing:-.025em;margin-bottom:5px;font-size:21px}.books-list p{color:var(--muted);margin:0;font-size:14px}.books-list svg{color:var(--green)}.evidence-section{background:#e8efe8;grid-template-columns:minmax(320px,.8fr) minmax(0,1.2fr);gap:clamp(45px,8vw,130px);display:grid}.evidence-lead h2{max-width:560px}.evidence-grid{border-top:1px solid #c7d4ca;border-left:1px solid #c7d4ca;grid-template-columns:1fr 1fr;display:grid}.evidence-grid article{border-bottom:1px solid #c7d4ca;border-right:1px solid #c7d4ca;min-height:225px;padding:25px}.evidence-grid span{width:34px;height:34px;color:var(--forest);background:var(--lime);border-radius:50%;place-items:center;margin-bottom:29px;font-weight:800;display:grid}.evidence-grid h3{margin-bottom:9px;font-size:19px}.evidence-grid p{color:var(--muted);margin:0;font-size:13px}.materials-section{background:var(--white)}.resource-grid{grid-template-columns:repeat(5,1fr);gap:10px;display:grid}.resource-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);grid-template-rows:auto 1fr auto;min-height:300px;padding:24px;display:grid}.resource-card>svg:first-child{color:var(--green)}.resource-card>div{align-self:end;margin:46px 0 24px}.resource-card span{color:var(--green);letter-spacing:.15em;font-size:10px;font-weight:800}.resource-card h3{margin:9px 0 7px;font-size:19px;line-height:1.1}.resource-card p{color:var(--muted);margin:0;font-size:13px}.resource-card>svg:last-child{color:var(--forest);justify-self:end}.resource-card:hover{border-color:var(--green)}.audio-panel{color:var(--white);background:var(--forest);border-radius:24px;grid-template-columns:.75fr 1.25fr;gap:clamp(35px,7vw,100px);margin-top:18px;padding:clamp(29px,5vw,65px);display:grid}.audio-panel>div:first-child>svg{color:var(--lime);margin-bottom:28px}.audio-panel .eyebrow{color:var(--lime)}.audio-panel h3{letter-spacing:-.045em;max-width:480px;font-size:clamp(27px,3vw,44px);line-height:1.08}.audio-intro>p:not(.eyebrow){color:#ffffffb8;max-width:470px;margin-top:20px;line-height:1.65}.audio-download{color:var(--white);border:1px solid #ffffff4d;border-radius:999px;align-items:center;gap:9px;margin-top:28px;padding:13px 17px;font-size:13px;font-weight:700;transition:background .2s,color .2s;display:inline-flex}.audio-download:hover{color:var(--forest);background:var(--lime)}.audio-list{scrollbar-color:#fff6 transparent;gap:17px;max-height:660px;padding-right:12px;display:grid;overflow-y:auto}.audio-list>div{border-bottom:1px solid #ffffff2e;grid-template-columns:170px 1fr;align-items:center;gap:14px;padding-bottom:15px;display:grid}.audio-list span{align-items:baseline;gap:10px;font-size:13px;font-weight:700;display:flex}.audio-list span b{color:var(--lime);letter-spacing:.12em;font-size:10px}.audio-list audio{width:100%;height:36px}.community-section{background:var(--cream);grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(48px,8vw,130px);display:grid}.community-intro>p:not(.eyebrow):not(.section-number){max-width:620px;color:var(--muted);margin:25px 0}.community-status{color:var(--forest);background:#ffffffa6;border:1px solid #cdd8cf;border-radius:999px;align-items:center;gap:10px;padding:10px 14px;font-size:12px;font-weight:750;display:inline-flex}.community-status span{background:#d49b2e;border-radius:50%;width:8px;height:8px;box-shadow:0 0 0 5px #d49b2e21}.community-cards{gap:12px;display:grid}.community-cards article{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);padding:27px}.community-cards svg{color:var(--green)}.community-cards h3{margin:25px 0 8px;font-size:21px}.community-cards p{color:var(--muted);margin:0;font-size:14px}.question-section{background:var(--paper);grid-template-columns:minmax(0,.8fr) minmax(360px,.75fr);gap:clamp(50px,9vw,150px);display:grid}.question-copy>p:not(.eyebrow){color:var(--muted);margin:24px 0}.question-copy ul{color:#45564d;padding-left:20px}.question-copy li{margin:8px 0}.question-form{border:1px solid var(--line);background:var(--white);box-shadow:var(--shadow);border-radius:22px;align-content:start;gap:17px;padding:clamp(24px,4vw,42px);display:grid}.question-form label{color:#425249;gap:7px;font-size:13px;font-weight:750;display:grid}.question-form select,.question-form textarea{border:1px solid var(--line);width:100%;color:var(--ink);background:var(--paper);border-radius:10px;outline:0}.question-form select{height:49px;padding:0 13px}.question-form textarea{resize:vertical;min-height:135px;padding:13px}.question-form select:focus,.question-form textarea:focus{border-color:var(--green);box-shadow:0 0 0 3px #2f755721}.question-form .button-primary{width:100%}.form-status{min-height:22px;color:var(--muted);margin:0;font-size:12px}.boundary-section{color:var(--white);background:#102b20;grid-template-columns:minmax(0,1fr) minmax(280px,.55fr);align-items:end;gap:clamp(45px,8vw,120px);padding:88px clamp(22px,7vw,112px);display:grid}.boundary-section svg,.boundary-section .eyebrow{color:var(--lime)}.boundary-section svg{margin-bottom:26px}.boundary-section>p{color:#c4d4ca;margin:0;font-size:15px}footer{border-top:1px solid var(--line);background:var(--paper);grid-template-columns:1.1fr .7fr .8fr;gap:50px;padding:60px clamp(22px,7vw,112px);display:grid}.footer-brand{margin-bottom:17px}footer>div>p{max-width:450px;color:var(--muted);margin:0;font-size:13px}.footer-links{align-content:start;gap:9px;font-size:13px;font-weight:700;display:grid}footer details{color:var(--muted);font-size:12px}footer summary{color:var(--forest);font-weight:750}footer details p{margin-top:13px}:focus-visible{outline:3px solid var(--lime);outline-offset:3px}@media (max-width:1100px){.site-header nav{display:none}.site-header{grid-template-columns:1fr auto}.hero{grid-template-columns:1fr}.hero-copy{max-width:850px}.scope-strip{grid-template-columns:1fr 1fr}.scope-strip div:nth-child(2){border-right:0}.scope-strip div:nth-child(-n+2){border-bottom:1px solid var(--line)}.section-heading{grid-template-columns:55px 1fr}.section-heading .section-intro{grid-column:2}.topics-grid,.protocol-grid{grid-template-columns:repeat(2,1fr)}.resource-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width:760px){.site-header{min-height:68px;padding-inline:18px}.header-action{padding:9px 12px;font-size:12px}.hero{min-height:auto;padding:64px 20px 70px}h1{font-size:clamp(48px,15vw,72px)}.hero-lead{font-size:18px}.scope-strip{grid-template-columns:1fr 1fr}.scope-strip div{min-height:95px;padding:18px}.scope-strip strong{font-size:27px}.section{padding:75px 20px}.section-heading,.section-heading.compact{grid-template-columns:1fr;gap:13px}.section-heading .section-intro{grid-column:auto}.topics-grid,.protocol-grid,.resource-grid,.evidence-grid{grid-template-columns:1fr}.topic-card{min-height:auto}.method-section,.evidence-section,.audio-panel,.community-section,.question-section,.boundary-section{grid-template-columns:1fr}.method-section{gap:60px}.evidence-section{gap:50px}.resource-card{min-height:235px}.audio-list>div{grid-template-columns:1fr}.books-list article{grid-template-columns:46px 1fr}.books-list article svg{display:none}.boundary-section{padding:70px 20px}footer{grid-template-columns:1fr;padding:48px 20px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
/* Readability improvements layered over the existing site design. */
:root {
  --muted: #4f6057;
}

.topic-card > p,
.topic-card li,
.topic-card summary,
.topic-card details p,
.protocol-card p,
.protocol-card strong,
.books-list p,
.evidence-grid p,
.resource-card p,
.method-steps p,
.community-cards p,
.audio-list span,
.audio-download,
.question-form label,
.question-form select,
.question-form textarea,
.form-status,
.boundary-section > p,
footer > div > p,
.footer-links,
footer details {
  font-size: 16px;
  line-height: 1.6;
}

.safety-line,
.finder-label,
.finder-result p,
.scope-strip span,
.community-status {
  font-size: 15px;
  line-height: 1.55;
}

.search-box input::placeholder { color: var(--muted); }
.quick-links button { min-height: 44px; font-size: 14px; }
.topic-card h3,
.resource-card h3 { line-height: 1.2; }
.topic-card > p { min-height: 0; }
.topic-card summary { min-height: 44px; gap: 12px; }
.topic-card summary svg { flex: none; }
.topic-card details p { max-width: 60ch; }
.topic-top { margin-bottom: 30px; }
.topic-card { display: flex; flex-direction: column; }
.topic-card details { margin-top: auto; }
.protocol-card strong { padding-top: 16px; }
.resource-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.resource-card { min-height: 270px; }
.resource-card > div { margin-top: 30px; }
.audio-list > div { grid-template-columns: minmax(150px, .85fr) minmax(0, 1.4fr); }
.audio-list span b { flex: none; font-size: 12px; }
.audio-list audio { min-width: 0; }
.audio-intro > p:not(.eyebrow) { color: #d8e5dd; }
.question-form select,
.question-form textarea { font-weight: 400; }
.question-form select { height: auto; min-height: 52px; padding-block: 10px; }
.question-form textarea::placeholder { color: var(--muted); }
.site-header > nav a { font-size: 15px; }
.site-header > nav a,
.footer-links a { min-height: 44px; display: inline-flex; align-items: center; }
:focus-visible { outline: 3px solid var(--green); outline-offset: 4px; }
.method-section :focus-visible,
.audio-panel :focus-visible,
.boundary-section :focus-visible { outline-color: var(--lime); }
section[id] { scroll-margin-top: 90px; }
.mobile-nav { display: none; }
.collection-toggle {
  border: 1px solid var(--forest);
  border-radius: 999px;
  min-height: 48px;
  padding: 12px 20px;
  color: var(--forest);
  background: var(--paper);
  font-size: 16px;
  font-weight: 700;
  line-height: 1.5;
  align-items: center;
  justify-content: center;
  gap: 10px;
  cursor: pointer;
  display: none;
}
.collection-toggle::after { content: '+'; font-size: 22px; line-height: 1; }
.collection-toggle[aria-expanded='true']::after { content: '−'; }
.search-empty { margin: 24px 0 0; padding: 24px; border: 1px solid var(--line); background: var(--cream); }
.search-empty button { text-decoration: underline; text-underline-offset: 3px; color: var(--forest); min-height: 44px; font-weight: 700; }

@media (min-width: 1101px) {
  .topics-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .protocol-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
  .protocol-card { min-height: 280px; }
  .protocol-card h3 { margin-top: 26px; }
}

@media (max-width: 1100px) {
  .site-header { grid-template-columns: minmax(0, 1fr) auto auto; gap: 14px; }
  .mobile-nav { display: block; }
  .mobile-nav > summary {
    min-height: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 9px 14px;
    border: 1px solid var(--forest);
    border-radius: 999px;
    color: var(--forest);
    background: var(--paper);
    font-size: 15px;
    font-weight: 700;
    list-style: none;
  }
  .mobile-nav > summary::-webkit-details-marker { display: none; }
  .mobile-nav > summary svg { width: 18px; height: 18px; flex: none; }
  .mobile-nav[open] > summary { color: var(--white); background: var(--forest); }
  .site-header .mobile-nav nav {
    position: absolute;
    top: calc(100% + 8px);
    left: 18px;
    right: 18px;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 4px 12px;
    padding: 16px;
    border: 1px solid var(--line);
    border-radius: 18px;
    background: var(--paper);
    box-shadow: var(--shadow);
    max-height: calc(100dvh - 100px);
    overflow-y: auto;
  }
  .site-header .mobile-nav nav a {
    display: flex;
    align-items: center;
    min-height: 48px;
    padding: 10px 12px;
    border-radius: 10px;
    font-size: 16px;
  }
  .mobile-nav nav a:hover { background: var(--mist); }
  .method-section,
  .evidence-section,
  .audio-panel,
  .community-section,
  .question-section,
  .boundary-section { grid-template-columns: 1fr; }
  .audio-panel h3 { max-width: 650px; }
  .audio-list > div { grid-template-columns: minmax(170px, .8fr) minmax(0, 1.4fr); }
  .audio-list { max-height: 660px; }
  .resource-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 760px) {
  .site-header { gap: 10px; }
  .site-header .brand { font-size: 20px; gap: 8px; }
  .header-action { min-height: 44px; }
  .topics-grid,
  .resource-grid { grid-template-columns: minmax(0, 1fr); }
  .section h2,
  .boundary-section h2 { line-height: 1.12; }
  .section-heading { margin-bottom: 36px; }
  .hero { padding-top: 48px; }
  .hero-finder { padding: 25px; }
  .finder-label { letter-spacing: 0; }
  .scope-strip div { gap: 10px; }
  .scope-strip span { font-size: 14px; }
  .topic-card { padding: 25px; }
  .topic-card > p { margin-bottom: 0; }
  .topic-card ul { margin-block: 18px; }
  .topic-top { margin-bottom: 24px; }
  .protocol-card { min-height: 0; padding: 25px; }
  .protocol-card h3 { margin-top: 24px; }
  .books-list article { grid-template-columns: 34px minmax(0, 1fr); gap: 14px; }
  .books-list h3 { line-height: 1.3; }
  .resource-card { min-height: 0; padding: 24px; }
  .resource-card > div { margin: 22px 0 16px; }
  .resource-card > svg:last-child { margin-top: 0; }
  .audio-panel { padding: 26px 22px; gap: 32px; }
  .audio-panel h3 { line-height: 1.18; }
  .audio-list { max-height: none; padding-right: 0; overflow: visible; }
  .audio-list > div { grid-template-columns: minmax(0, 1fr); gap: 12px; padding-bottom: 20px; }
  .audio-list audio { height: 44px; }
  .audio-download { font-size: 15px; }
  .collection-toggle:not([hidden]) { display: flex; width: 100%; margin-top: 20px; }
  .audio-panel .collection-toggle { color: var(--white); background: transparent; border-color: #ffffff80; }
  .community-status { border-radius: 16px; align-items: flex-start; }
  .community-status span { flex: none; margin-top: 8px; }
  .question-form { padding: 24px 20px; }
  footer { gap: 30px; }
  .footer-links { gap: 4px; }
}

@media (max-width: 480px) {
  .header-action .header-action-label { display: none; }
  .header-action { width: 44px; padding: 0; }
  .header-action svg { width: 18px; height: 18px; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
}

/* The light palette remains the site's default. */
:root {
  --display-panel: #fffef9;
  --display-text: #17251f;
  --display-muted: #4f6057;
  --display-line: #c1cdc4;
  --display-active: #edf2ed;
  --display-accent: #194d38;
}
html[data-display-mode='light'] { color-scheme: light; }
html[data-display-mode='dark'] {
  color-scheme: dark;
  --paper: #14221b;
  --cream: #1a2b22;
  --mist: #22392d;
  --ink: #f2f6ef;
  --muted: #c3d1c7;
  --forest: #b5dda0;
  --green: #b5dda0;
  --lime: #e0f28e;
  --line: #40594a;
  --white: #1d3025;
  --shadow: 0 24px 70px #0005;
  --display-panel: #1d3025;
  --display-text: #f2f6ef;
  --display-muted: #c3d1c7;
  --display-line: #66806c;
  --display-active: #304a37;
  --display-accent: #d5ecaa;
}
html[data-display-mode='accessible'] {
  color-scheme: light;
  --paper: #fff;
  --cream: #fff;
  --mist: #fff;
  --ink: #111;
  --muted: #111;
  --forest: #000;
  --green: #000;
  --lime: #ffed00;
  --line: #111;
  --white: #fff;
  --shadow: none;
  --display-panel: #fff;
  --display-text: #000;
  --display-muted: #111;
  --display-line: #000;
  --display-active: #fff7a8;
  --display-accent: #000;
}

/* Dark surfaces and text that were explicitly colored in the original design. */
html[data-display-mode='dark'] .site-header { background: #14221bf5; border-color: var(--line); }
html[data-display-mode='dark'] .site-header nav a { color: var(--ink); }
html[data-display-mode='dark'] .hero { background: radial-gradient(ellipse at 80% 20%, #b5dda00d, transparent 55%), #14221b; }
html[data-display-mode='dark'] .hero-lead,
html[data-display-mode='dark'] .quick-links button,
html[data-display-mode='dark'] .question-copy ul,
html[data-display-mode='dark'] .question-form label { color: var(--muted); }
html[data-display-mode='dark'] .hero-finder { background: #1d3025; border-color: var(--line); }
html[data-display-mode='dark'] .brand-mark,
html[data-display-mode='dark'] .button-primary,
html[data-display-mode='dark'] .principle-banner,
html[data-display-mode='dark'] .mobile-nav[open] > summary { background: #c4e5aa; color: #14221b; border-color: #c4e5aa; }
html[data-display-mode='dark'] .button-primary:hover { background: #dcf1c8; }
html[data-display-mode='dark'] .topic-card:hover { background: #263e2f; }
html[data-display-mode='dark'] .method-section,
html[data-display-mode='dark'] .audio-panel,
html[data-display-mode='dark'] .boundary-section { background: #0e1913; color: var(--ink); }
html[data-display-mode='dark'] .method-copy > p:not(.eyebrow):not(.section-number),
html[data-display-mode='dark'] .method-steps p,
html[data-display-mode='dark'] .audio-intro > p:not(.eyebrow),
html[data-display-mode='dark'] .boundary-section > p { color: var(--muted); }
html[data-display-mode='dark'] .evidence-section { background: #1a2b22; }
html[data-display-mode='dark'] .evidence-grid,
html[data-display-mode='dark'] .evidence-grid article { border-color: var(--line); }
html[data-display-mode='dark'] .evidence-grid span { background: #d5ecaa; color: #14221b; }
html[data-display-mode='dark'] .community-status { background: #243b2d; color: var(--ink); border-color: var(--line); }
html[data-display-mode='dark'] .audio-download,
html[data-display-mode='dark'] .audio-panel .collection-toggle { color: var(--ink); border-color: #84998a; }
html[data-display-mode='dark'] .audio-download:hover { background: #d5ecaa; color: #14221b; }

/* The low-vision mode uses larger text, solid backgrounds and stronger borders. */
html[data-display-mode='accessible'] { scroll-behavior: auto; }
html[data-display-mode='accessible'] body { font-size: 20px; line-height: 1.75; }
html[data-display-mode='accessible'] .site-header { background: #fff; border-bottom: 2px solid #000; backdrop-filter: none; }
html[data-display-mode='accessible'] .hero,
html[data-display-mode='accessible'] .hero-finder,
html[data-display-mode='accessible'] .evidence-section,
html[data-display-mode='accessible'] .community-status { background: #fff; }
html[data-display-mode='accessible'] h1,
html[data-display-mode='accessible'] h2,
html[data-display-mode='accessible'] h3 { letter-spacing: -.025em; line-height: 1.2; }
html[data-display-mode='accessible'] :is(p, li, label, input, select, textarea, output, button, summary, .audio-list span, .scope-strip span, .footer-links a, .header-action, .button-link, .text-link, .audio-download, .protocol-card strong) { font-size: 20px; line-height: 1.75; }
html[data-display-mode='accessible'] :is(.eyebrow, .section-number, .topic-top span, .protocol-card > span, .resource-card span, .method-steps > li > span, .audio-list span b) { font-size: 16px; line-height: 1.6; letter-spacing: .08em; }
html[data-display-mode='accessible'] :is(.hero-lead, .quick-links button, .question-copy ul, .question-form label, .site-header nav a) { color: #111; }
html[data-display-mode='accessible'] .search-box input::placeholder,
html[data-display-mode='accessible'] textarea::placeholder { color: #333; }
html[data-display-mode='accessible'] a { text-decoration: underline; text-underline-offset: .2em; text-decoration-thickness: 2px; }
html[data-display-mode='accessible'] .brand { text-decoration: none; }
html[data-display-mode='accessible'] :is(button, summary, .header-action, .button-primary, .quick-links button) { min-height: 52px; }
html[data-display-mode='accessible'] :is(.hero-finder, .search-box, .topic-card, .protocol-card, .resource-card, .question-form, .question-form select, .question-form textarea, .community-cards article, .evidence-grid, .evidence-grid article, .community-status) { border-color: #000; border-width: 2px; }
html[data-display-mode='accessible'] .topic-card:hover { background: #fffbe0; transform: none; box-shadow: none; }
html[data-display-mode='accessible'] :is(.method-section, .audio-panel, .boundary-section, .principle-banner) { background: #000; color: #fff; }
html[data-display-mode='accessible'] :is(.method-copy > p:not(.eyebrow):not(.section-number), .method-steps p, .audio-intro > p:not(.eyebrow), .boundary-section > p) { color: #fff; }
html[data-display-mode='accessible'] :is(.method-section .text-link, .audio-download, .audio-panel .collection-toggle) { color: #ffed00; }
html[data-display-mode='accessible'] .brand-mark,
html[data-display-mode='accessible'] .button-primary,
html[data-display-mode='accessible'] .mobile-nav[open] > summary { background: #000; color: #fff; }
html[data-display-mode='accessible'] .button-primary:hover { background: #222; }
html[data-display-mode='accessible'] .evidence-grid span { background: #ffed00; color: #000; border: 2px solid #000; }
html[data-display-mode='accessible'] .topics-grid,
html[data-display-mode='accessible'] .protocol-grid,
html[data-display-mode='accessible'] .resource-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
html[data-display-mode='accessible'] .method-section,
html[data-display-mode='accessible'] .evidence-section,
html[data-display-mode='accessible'] .audio-panel,
html[data-display-mode='accessible'] .community-section,
html[data-display-mode='accessible'] .question-section,
html[data-display-mode='accessible'] .boundary-section { grid-template-columns: minmax(0, 1fr); }
html[data-display-mode='accessible'] .topic-card h3,
html[data-display-mode='accessible'] .resource-card h3 { font-size: 26px; }
html[data-display-mode='accessible'] .audio-list { max-height: none; overflow: visible; }
html[data-display-mode='accessible'] .audio-list > div { grid-template-columns: minmax(0, 1fr); }
html[data-display-mode='accessible'] .audio-list audio { height: 52px; }
html[data-display-mode='accessible'] .method-steps li { grid-template-columns: 40px minmax(0, 1fr); gap: 16px; }
html[data-display-mode='accessible'] .finder-result p { max-width: none; }
html[data-display-mode='accessible'] .site-header { grid-template-columns: minmax(0, 1fr) auto auto; gap: 14px; }
html[data-display-mode='accessible'] .site-header > nav { display: none; }
html[data-display-mode='accessible'] .mobile-nav { display: block; }
html[data-display-mode='accessible'] .mobile-nav > summary { display: inline-flex; align-items: center; gap: 8px; padding: 8px 14px; border: 2px solid #000; border-radius: 999px; list-style: none; }
html[data-display-mode='accessible'] .mobile-nav > summary::-webkit-details-marker { display: none; }
html[data-display-mode='accessible'] .mobile-nav > summary svg { width: 20px; height: 20px; }
html[data-display-mode='accessible'] .site-header .mobile-nav nav { position: absolute; top: calc(100% + 8px); left: 18px; right: 18px; display: grid; grid-template-columns: 1fr 1fr; gap: 8px; padding: 16px; background: #fff; border: 2px solid #000; border-radius: 16px; max-height: calc(100dvh - 110px); overflow-y: auto; }
html[data-display-mode='accessible'] .site-header .mobile-nav nav a { font-size: 20px; min-height: 52px; padding: 8px; }
html[data-display-mode='accessible'] :focus-visible { outline: 4px solid #000; outline-offset: 4px; box-shadow: 0 0 0 8px #ffed00; }
html[data-display-mode='accessible'] :is(.method-section, .audio-panel, .boundary-section) :focus-visible { outline-color: #ffed00; box-shadow: none; }
html[data-display-mode='accessible'] * { animation: none !important; transition: none !important; }

/* A fixed control with a non-modal panel, above the site's bottom-left corner. */
footer { padding-bottom: max(110px, calc(90px + env(safe-area-inset-bottom))); }
.display-settings { position: fixed; z-index: 50; left: max(18px, env(safe-area-inset-left)); bottom: max(18px, env(safe-area-inset-bottom)); color: var(--display-text); }
.display-toggle,
.display-close { display: inline-flex; align-items: center; justify-content: center; cursor: pointer; color: var(--display-text); background: var(--display-panel); border: 1px solid var(--display-line); }
.display-toggle { min-height: 48px; gap: 10px; border-radius: 999px; padding: 11px 17px; font-size: 15px; font-weight: 750; line-height: 1.4; box-shadow: 0 5px 22px #0002; }
.display-toggle svg { width: 21px; height: 21px; flex: none; }
.display-toggle:hover,
.display-close:hover { background: var(--display-active); }
.display-toggle[aria-expanded='true'] { border-color: var(--display-accent); }
.display-panel { position: absolute; left: 0; bottom: calc(100% + 12px); width: min(360px, calc(100vw - 36px)); max-height: calc(100dvh - 120px); overflow-y: auto; overscroll-behavior: contain; background: var(--display-panel); color: var(--display-text); border: 1px solid var(--display-line); border-radius: 20px; padding: 20px; box-shadow: 0 14px 60px #0003; }
.display-panel[hidden] { display: none; }
.display-panel-header { display: flex; align-items: center; justify-content: space-between; gap: 14px; margin-bottom: 16px; }
.display-panel h2 { font-size: 20px; line-height: 1.3; letter-spacing: -.02em; margin: 0; font-weight: 750; }
.display-close { border-radius: 50%; width: 40px; height: 40px; flex: none; }
.display-close svg { width: 18px; height: 18px; }
.display-options { border: 0; padding: 0; margin: 0; display: grid; gap: 10px; min-width: 0; }
.display-option { display: flex; align-items: center; gap: 12px; padding: 13px 14px; border: 1px solid var(--display-line); border-radius: 12px; cursor: pointer; }
.display-option:has(input:checked) { background: var(--display-active); border: 2px solid var(--display-accent); padding: 12px 13px; }
.display-option input { width: 20px; height: 20px; flex: none; accent-color: var(--display-accent); margin: 0; }
.display-option > span { min-width: 0; }
.display-option strong { display: block; font-size: 16px; line-height: 1.5; }
.display-option small { display: block; font-size: 14px; line-height: 1.5; color: var(--display-muted); margin-top: 2px; }
.display-hint { font-size: 13px; line-height: 1.5; color: var(--display-muted); margin: 15px 0 0; }
.display-sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
.display-settings :focus-visible { outline: 3px solid var(--display-accent); outline-offset: 3px; }
html[data-display-mode='accessible'] .display-toggle { min-height: 56px; border: 2px solid #000; font-size: 20px; }
html[data-display-mode='accessible'] .display-panel { border: 2px solid #000; }
html[data-display-mode='accessible'] .display-panel h2 { font-size: 24px; }
html[data-display-mode='accessible'] .display-option strong { font-size: 20px; }
html[data-display-mode='accessible'] .display-option small,
html[data-display-mode='accessible'] .display-hint { font-size: 18px; line-height: 1.6; }
html[data-display-mode='accessible'] .display-option input { width: 26px; height: 26px; }
html[data-display-mode='accessible'] .display-close { width: 48px; height: 48px; }

@media (max-width: 760px) {
  html[data-display-mode='accessible'] .topics-grid,
  html[data-display-mode='accessible'] .protocol-grid,
  html[data-display-mode='accessible'] .resource-grid { grid-template-columns: minmax(0, 1fr); }
  html[data-display-mode='accessible'] .scope-strip { grid-template-columns: minmax(0, 1fr); }
  html[data-display-mode='accessible'] .scope-strip div { border-right: 0; border-bottom: 1px solid #000; min-height: 80px; }
  html[data-display-mode='accessible'] .scope-strip div:last-child { border-bottom: 0; }
  html[data-display-mode='accessible'] .hero-finder { padding: 22px; }
  html[data-display-mode='accessible'] .books-list article { grid-template-columns: 28px minmax(0, 1fr); gap: 12px; }
  html[data-display-mode='accessible'] .site-header { gap: 8px; padding-inline: 12px; }
  html[data-display-mode='accessible'] .header-action { width: 52px; padding: 0; }
  html[data-display-mode='accessible'] .header-action-label { display: none; }
  html[data-display-mode='accessible'] .mobile-nav > summary { padding-inline: 10px; font-size: 18px; }
}

@media (forced-colors: active) {
  .display-settings :is(button, .display-panel, .display-option) { border: 2px solid ButtonText; }
  .display-option:has(input:checked) { outline: 2px solid Highlight; }
}
