@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@500;600;700;800;900&family=Inter:wght@400;500;600;700&display=swap');

:root { --red:#e30613; --red-dark:#a90009; --green:#008f5a; --black:#080808; --charcoal:#121212; --gray:#aaa; --white:#fff; --max:1180px; --display-leading:.78; --heading-leading:.9; --body-leading:1.5; --compact-leading:1.25; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; color:var(--white); background:var(--black); font-family:Inter,Arial,sans-serif; line-height:var(--body-leading); }
a { color:inherit; }
img { display:block; max-width:100%; }
.skip-link { position:absolute; left:-9999px; top:1rem; z-index:100; background:#fff; color:#000; padding:.7rem 1rem; }
.skip-link:focus { left:1rem; }
.site-header { height:76px; padding:0 max(24px,calc((100vw - var(--max))/2)); display:flex; align-items:center; justify-content:space-between; position:fixed; inset:0 0 auto; z-index:100; width:100%; background:#080808e8; border-bottom:1px solid #ffffff24; backdrop-filter:blur(12px); }
.brand { text-decoration:none; font:800 1.25rem/1 'Barlow Condensed',sans-serif; letter-spacing:.04em; }
.brand strong { color:var(--red); }
.site-header nav { display:flex; align-items:center; justify-content:flex-end; gap:clamp(.75rem,1.15vw,1.25rem); margin-left:2rem; }
.site-header nav a,.site-header nav summary { white-space:nowrap; }
nav a { text-decoration:none; text-transform:uppercase; font:700 .8rem Inter,sans-serif; letter-spacing:.07em; }
.language-select { display:inline-flex; align-items:center; }
.language-select select { min-width:120px; max-width:170px; padding:.7rem 1.75rem .7rem .65rem; color:#ddd; background:#111; border:1px solid #444; font:700 .72rem Inter,sans-serif; }
.language-select select:hover,.language-select select:focus-visible { color:#fff; border-color:var(--red); outline:none; }
[dir="rtl"] body { text-align:right; }
[dir="rtl"] .skip-link { left:auto; right:-9999px; }
[dir="rtl"] .skip-link:focus { left:auto; right:1rem; }
[dir="rtl"] .site-header,[dir="rtl"] .site-header nav,[dir="rtl"] .report-actions,[dir="rtl"] .resource-links { direction:rtl; }
[dir="rtl"] .eyebrow,[dir="rtl"] .brand,[dir="rtl"] .button { letter-spacing:0; }
[dir="rtl"] .pledge-copy li { padding-right:2rem; padding-left:0; }
[dir="rtl"] .pledge-copy li::before { right:0; left:auto; }
[dir="rtl"] .external-disclaimer { border-left:0; border-right:3px solid #555; }
html:is([lang="ko"],[lang="fr"],[lang="pt"],[lang="zh-Hans"],[lang="ar"],[lang="ja"],[lang="de"],[lang="ru"],[lang="tr"],[lang="fa"]) h1,
html:is([lang="ko"],[lang="fr"],[lang="pt"],[lang="zh-Hans"],[lang="ar"],[lang="ja"],[lang="de"],[lang="ru"],[lang="tr"],[lang="fa"]) h2,
html:is([lang="ko"],[lang="fr"],[lang="pt"],[lang="zh-Hans"],[lang="ar"],[lang="ja"],[lang="de"],[lang="ru"],[lang="tr"],[lang="fa"]) h3 { line-height:1.08; }
html:is([lang="ko"],[lang="zh-Hans"],[lang="ar"],[lang="ja"],[lang="fa"]) h1,
html:is([lang="ko"],[lang="zh-Hans"],[lang="ar"],[lang="ja"],[lang="fa"]) h2,
html:is([lang="ko"],[lang="zh-Hans"],[lang="ar"],[lang="ja"],[lang="fa"]) h3 { line-height:1.18; }
.translation-preview-note { position:fixed; right:1rem; bottom:1rem; z-index:120; max-width:390px; margin:0; padding:.7rem .9rem; color:#f2e6aa; background:#2a2107ee; border:1px solid #806916; box-shadow:0 8px 30px #0009; font-size:.72rem; line-height:1.35; }
.weeks-menu { position:relative; }
.weeks-menu summary { cursor:pointer; list-style:none; text-transform:uppercase; font:700 .82rem Inter,sans-serif; letter-spacing:.08em; }
.weeks-menu summary::-webkit-details-marker { display:none; }
.weeks-menu summary::after { content:"▾"; margin-left:.45rem; color:var(--red); }
.weeks-menu[open] summary::after { content:"▴"; }
.weeks-menu-panel { position:absolute; top:calc(100% + 1.1rem); right:0; width:310px; padding:.5rem; background:#0d0d0df5; border:1px solid #3a3a3a; box-shadow:0 18px 50px #000b; }
.weeks-menu-panel a { display:block; padding:.75rem .85rem; color:#ddd; border-bottom:1px solid #292929; font-size:.76rem; }
.weeks-menu-panel a:last-child { border-bottom:0; }
.weeks-menu-panel a:hover,.weeks-menu-panel a:focus-visible { color:#fff; background:#242424; outline:none; }
.weeks-menu-panel span { display:inline-block; min-width:70px; color:var(--red); }
.weeks-menu-panel .menu-all { color:#fff; font-weight:800; }
.menu-note { margin:.5rem 0 0; padding:.75rem .85rem; color:#777; text-transform:uppercase; font:700 .68rem Inter,sans-serif; letter-spacing:.08em; }
.nav-report { background:var(--red); padding:.55rem .9rem; }
.about-menu .weeks-menu-panel { left:0; right:auto; width:245px; }
.about-menu .weeks-menu-panel a { overflow-wrap:anywhere; line-height:1.35; }
.report-menu summary { padding:.55rem .9rem; background:var(--red); }
.report-menu summary::after { color:#fff; }
.report-menu .weeks-menu-panel { width:285px; }
.mobile-nav-toggle { display:none; }
.hero { min-height:820px; max-height:1000px; height:100vh; position:relative; overflow:hidden; display:grid; grid-template-columns:minmax(0,1fr) minmax(420px,1fr); align-items:center; padding:100px max(24px,calc((100vw - var(--max))/2)) 40px; background:radial-gradient(circle at 72% 40%,#272727 0,transparent 43%),#050505; }
.hero-copy { position:relative; z-index:2; max-width:650px; }
.eyebrow { margin:0 0 .6rem; color:var(--red); text-transform:uppercase; font:800 .8rem/1.2 Inter,sans-serif; letter-spacing:.18em; }
h1,h2,h3 { font-family:'Barlow Condensed',Impact,sans-serif; text-transform:uppercase; line-height:var(--heading-leading); margin:0; }
h1 { font-size:clamp(5rem,10vw,9rem); letter-spacing:-.045em; }
.hero h1,.topics-index-hero h1,.donate-hero h1,.pledge-hero h1,.global-reporting-hero h1,.glossary-hero h1,.week-hero h1 { line-height:var(--display-leading); }
h1 span { display:block; color:#fff; font-size:1em; letter-spacing:-.045em; }
h1 { color:var(--red); }
.hero-lede { max-width:580px; color:#ddd; font-size:clamp(1.05rem,2vw,1.3rem); margin:1.7rem 0; }
.hero-actions { display:flex; flex-wrap:wrap; gap:.8rem; }
.button { display:inline-flex; justify-content:center; align-items:center; min-height:50px; padding:.7rem 1.25rem; text-decoration:none; text-transform:uppercase; font:800 .82rem Inter,sans-serif; letter-spacing:.07em; border:1px solid transparent; }
.button-primary { color:var(--white); background:var(--red); }
.button-primary:hover { background:#ff1824; }
.button-secondary { border-color:#777; }
.button-secondary:hover { border-color:#fff; }
.emergency { margin-top:1.4rem; color:#aaa; font-size:.86rem; }
.emergency a { color:#fff; font-weight:700; }
.hero-art { position:absolute; right:max(36px,calc((100vw - var(--max))/2 + 70px)); bottom:5px; width:min(57vw,760px); z-index:1; }
.hero-art::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,#050505 0%,transparent 28%),linear-gradient(0deg,#050505 0%,transparent 15%); }
.hero-art img { width:100%; max-height:calc(100vh - 90px); object-fit:contain; object-position:right bottom; filter:contrast(1.08); }
.standard { max-width:var(--max); margin:auto; padding:32px 24px; display:grid; grid-template-columns:repeat(3,1fr); gap:2rem; text-transform:uppercase; font:800 clamp(1.15rem,2.3vw,1.8rem) 'Barlow Condensed',sans-serif; }
.standard p { margin:0; padding-left:1rem; border-left:3px solid var(--red); }
.icon-standard p { display:flex; align-items:center; gap:.8rem; }
.icon-standard svg { width:30px; height:30px; fill:none; stroke:currentColor; stroke-width:2.4; stroke-linecap:round; stroke-linejoin:round; flex:0 0 auto; }
.section { max-width:var(--max); margin:auto; padding:82px 24px; }
main > .section:not(:first-child):not(.report):not(.deep-dive-divider):not(.donate-hero):not(.pledge-hero):not(.global-reporting-hero):not(.topics-index-hero),.information-page > .section + .section:not(.report) { background-image:linear-gradient(90deg,var(--green) 0 72%,#fff 72% 75%,var(--red) 75% 100%); background-repeat:no-repeat; background-size:150px 5px; background-position:24px 0; }
.intro { display:grid; grid-template-columns:1fr 1fr; gap:7vw; align-items:start; }
.section-heading h2,.intro h2,.warning-signs h2,.parents h2,.report h2,.pledge h2 { font-size:clamp(2.6rem,5vw,4.6rem); letter-spacing:-.02em; }
.intro-copy { font-size:1.05rem; color:#cfcfcf; }
.intro > .intro-copy { padding-top:1.4rem; }
.intro-copy p:first-child { margin-top:0; }
.principles { padding-top:10px; display:grid; grid-template-columns:repeat(3,1fr); gap:1px; }
.principles article { background:#151515; padding:2.2rem; }
.principles span { color:#666; font:700 .8rem Inter,sans-serif; }
.principles h3 { font-size:2.5rem; margin:.7rem 0 1rem; }
.principles p { color:#bbb; margin:0; }
.topics { max-width:1240px; }
.topics .section-heading { max-width:730px; margin-bottom:3.5rem; }
.topic-grid { display:grid; grid-template-columns:repeat(12,1fr); gap:1rem; }
.topic { grid-column:span 4; background:#141414; min-height:330px; padding:2rem; border:1px solid #222; display:flex; flex-direction:column; }
.topic-featured { grid-column:span 8; background:linear-gradient(120deg,#310003,#101010 65%); }
.week { color:var(--red); text-transform:uppercase; font-size:.72rem; font-weight:800; letter-spacing:.15em; }
.topic h3 { font-size:clamp(2rem,4vw,3.2rem); margin:.5rem 0 1rem; }
.topic > p:not(.week,.prompt) { color:#bbb; }
.topic .prompt { margin:auto 0 0; padding-top:1rem; border-top:1px solid #444; font-weight:600; font-size:.9rem; }
.topics-index-hero { min-height:480px; display:flex; flex-direction:column; justify-content:center; }
.topics-index-hero h1 { font-size:clamp(4rem,9vw,8rem); }
.topics-index-hero > p:last-child { max-width:680px; color:#bbb; }
.topics-index { padding-top:20px; }
.topic-link { color:#fff; text-decoration:none; transition:border-color .15s ease,transform .15s ease; }
.topic-link:hover,.topic-link:focus-visible { border-color:var(--red); transform:translateY(-3px); outline:none; }
.topic-coming { color:#888; border-style:dashed; }
.topic { position:relative; overflow:hidden; }
.topic-icon { width:54px; height:54px; margin:0 0 1.3rem auto; display:block; fill:none; stroke:var(--red); stroke-width:2.2; stroke-linecap:round; stroke-linejoin:round; transition:transform .2s ease; }
.topic-link:hover .topic-icon,.topic-link:focus-visible .topic-icon { transform:translateY(-3px) scale(1.04); }
.topic-coming .topic-icon { stroke:#666; }
.warning-signs { max-width:none; padding-left:max(24px,calc((100vw - var(--max))/2)); padding-right:max(24px,calc((100vw - var(--max))/2)); display:block; background-image:linear-gradient(90deg,var(--green) 0 72%,#fff 72% 75%,var(--red) 75% 100%),linear-gradient(#080808cc,#080808e8),url('assets/texture.webp'); background-repeat:no-repeat,no-repeat,no-repeat; background-size:150px 5px,cover,cover; background-position:24px 0,center,center; }
.warning-signs > div > p:last-child { color:#bbb; max-width:500px; }
.warning-signs > div { max-width:850px; }
.warning-signs ul { display:block; max-width:850px; list-style:none; padding:0; margin:2.5rem 0 0; }
.warning-signs li { border-bottom:1px solid #ffffff30; padding:1rem 0; font-weight:600; }
.warning-signs li::before { content:"+"; color:var(--red); margin-right:.65rem; }
.parents { display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:6vw; padding-bottom:0; overflow:hidden; }
.parents-art { align-self:end; }
.parents-art img { max-height:650px; margin:auto; object-fit:contain; }
.parents-copy { padding-bottom:100px; }
.parents-copy > p:not(.eyebrow) { color:#bbb; font-size:1.05rem; }
.text-link { display:inline-block; margin-top:1rem; color:#fff; font-weight:700; text-decoration-color:var(--red); text-underline-offset:6px; }
.text-link span { color:var(--red); }
.parent-training { grid-template-columns:auto minmax(0,1fr) auto; gap:4rem; min-height:360px; align-items:center; }
.parent-training.with-art { grid-template-columns:minmax(180px,.65fr) minmax(0,1fr) auto; gap:4.5rem; }
.parent-training .parents-copy { padding-bottom:0; }
.parents .parent-heading { margin:0 0 1rem; color:#fff; font-size:clamp(1.35rem,2.25vw,1.95rem); line-height:1; white-space:nowrap; }
.parents .parent-heading::after { content:""; display:block; width:100px; height:4px; margin-top:.65rem; background:linear-gradient(90deg,var(--green) 0 72%,#fff 72% 75%,var(--red) 75% 100%); }
.parent-training-cta { display:inline-flex; align-items:center; gap:1rem; min-width:220px; padding:1.15rem 1.3rem; color:#fff; background:var(--red); border:1px solid var(--red); text-decoration:none; text-transform:uppercase; font:800 .78rem Inter,sans-serif; letter-spacing:.07em; box-shadow:0 10px 30px #0006; }
.parent-training-cta:hover,.parent-training-cta:focus-visible { background:#ff1824; border-color:#ff5b64; outline:none; transform:translateY(-2px); }
.parent-training-cta span { font-size:1.3rem; line-height:1; }
.report { max-width:none; padding-top:48px; padding-bottom:48px; padding-left:max(24px,calc((100vw - var(--max))/2)); padding-right:max(24px,calc((100vw - var(--max))/2)); background:var(--red); display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:clamp(2rem,5vw,5rem); align-items:start; }
.multi-route-report { grid-template-columns:1fr; gap:1.35rem; align-items:start; padding-top:48px; padding-bottom:48px; }
.multi-route-report > div:first-child { max-width:950px; }
.multi-route-report .report-actions { width:100%; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.8rem; align-items:stretch; }
.multi-route-report .report-route-card,.multi-route-report .usatkd-nonsexual-route { height:100%; }
.multi-route-report .safesport-route { order:1; }
.multi-route-report .usatkd-nonsexual-route { order:2; }
.multi-route-report .reporting-route-helper { order:3; }
.multi-route-report .global-reporting-note { order:4; max-width:none!important; }
.report .eyebrow { color:#fff; font-size:clamp(1.35rem,2.6vw,2rem); font-weight:900; letter-spacing:.035em; line-height:1; }
.report p { max-width:650px; line-height:1.5; }
.report-actions { display:flex; flex-direction:column; gap:1.5rem; align-items:flex-start; }
.report:not(.multi-route-report) .report-actions { width:100%; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.75rem; align-items:stretch; }
.report:not(.multi-route-report) .us-reporting-label { grid-column:1/-1; max-width:none; }
.report:not(.multi-route-report) .button-light,.report:not(.multi-route-report) .phone { min-height:82px; display:flex; justify-content:center; padding:1rem; }
.report:not(.multi-route-report) .button-light { align-items:center; text-align:center; }
.report:not(.multi-route-report) .phone { color:#111; background:#fff; font-size:clamp(1.7rem,2.5vw,2.35rem); }
.report:not(.multi-route-report) .reporting-route-helper { align-items:flex-start; flex-direction:column; justify-content:space-between; }
.report-route-card { width:100%; padding:1rem; color:#111; background:#fff; border-left:5px solid var(--red); }
.route-card-heading strong,.route-card-heading span { display:block; }
.route-card-heading strong { text-transform:uppercase; font:900 .86rem/1.2 Inter,sans-serif; letter-spacing:.04em; }
.route-card-heading span { margin-top:.3rem; font-size:.76rem; line-height:1.4; }
.safesport-route .button { width:100%; margin-top:.9rem; color:#fff; background:var(--red); }
.safesport-route .phone { margin-top:1rem; color:#111; font-size:clamp(1.9rem,3vw,2.7rem); }
.us-reporting-label { width:100%; max-width:520px; padding:.9rem 1rem; color:#111; background:#fff; border-left:5px solid #111; }
.us-reporting-label strong,.us-reporting-label span { display:block; }
.us-reporting-label strong { font:900 1rem/1.05 'Barlow Condensed',sans-serif; text-transform:uppercase; letter-spacing:.06em; }
.us-reporting-label span { margin-top:.35rem; font-size:.76rem; line-height:1.4; }
.global-reporting-note { margin:0; max-width:500px!important; display:flex; align-items:flex-start; gap:.75rem; padding:1rem; color:#fff; background:#8f0009; font-size:.82rem; line-height:1.4; }
.global-reporting-note svg { width:28px; height:28px; flex:0 0 auto; fill:none; stroke:#fff; stroke-width:2.1; stroke-linecap:round; stroke-linejoin:round; }
.global-reporting-note span,.global-reporting-note strong,.global-reporting-note a { display:block; }
.global-reporting-note strong { font-size:.78rem; text-transform:uppercase; letter-spacing:.06em; }
.global-reporting-note a { margin-top:.25rem; color:#fff; font-weight:800; text-decoration-thickness:2px; text-underline-offset:3px; }
.global-reporting-note a:hover,.global-reporting-note a:focus-visible { color:#111; outline:none; }
.usatkd-nonsexual-route { width:100%; padding:1rem; color:#111; background:#fff; border-left:5px solid var(--green); }
.usatkd-nonsexual-route > strong,.usatkd-nonsexual-route > span { display:block; }
.usatkd-nonsexual-route > strong { text-transform:uppercase; font:900 .86rem/1.2 Inter,sans-serif; letter-spacing:.04em; }
.usatkd-nonsexual-route > span { margin:.35rem 0 .8rem; font-size:.76rem; line-height:1.4; }
.usatkd-contact-links { display:grid; gap:.45rem; }
.usatkd-contact-links a { color:#111; font-size:.78rem; font-weight:850; overflow-wrap:anywhere; text-underline-offset:3px; }
.mandatory-reporting-actions .usatkd-nonsexual-route { margin-top:1rem; color:#fff; background:#181818; }
.mandatory-reporting-actions .usatkd-contact-links a { color:#fff; }
.button-light { color:#111; background:#fff; }
.phone { display:flex; flex-direction:column; text-decoration:none; font:800 clamp(2rem,4vw,3.5rem)/1 'Barlow Condensed',sans-serif; }
.phone span { font:700 .72rem/1 Inter,sans-serif; letter-spacing:.12em; text-transform:uppercase; margin-bottom:.7rem; }
.pledge { text-align:center; min-height:620px; display:flex; flex-direction:column; justify-content:center; background:radial-gradient(circle,#291012 0,transparent 57%); }
.pledge-lines { max-width:750px; width:100%; margin:2rem auto; border-top:1px solid #444; }
.pledge-lines p { margin:0; padding:.7rem; border-bottom:1px solid #444; text-transform:uppercase; font:700 clamp(1.2rem,3vw,2rem) 'Barlow Condensed',sans-serif; }
.pledge-close { color:var(--red); text-transform:uppercase; font:900 clamp(1.4rem,3vw,2.4rem) 'Barlow Condensed',sans-serif; }
.home-intro { min-height:520px; align-items:center; }
.home-intro .intro-copy { padding-top:0; transform:translateY(3.65rem); }
.home-report { margin-bottom:90px; }
.page-header { position:fixed; padding-left:max(24px,calc((100vw - var(--max))/2)); padding-right:max(24px,calc((100vw - var(--max))/2)); }
.poster-page { min-height:980px; position:relative; overflow:hidden; padding:90px max(24px,calc((100vw - var(--max))/2)); display:flex; align-items:center; background:#050505; }
.poster-page::before { content:""; position:absolute; left:50%; bottom:0; z-index:3; width:210px; height:7px; transform:translateX(-50%); background:linear-gradient(90deg,var(--green) 0 72%,#fff 72% 75%,var(--red) 75% 100%); }
.poster-copy { width:min(54%,650px); position:relative; z-index:2; }
.poster-copy > .eyebrow { display:none; }
.poster-copy h1 { font-size:clamp(4rem,7vw,7rem); color:#fff; }
.poster-copy h1,.cyber-hero h1 { margin-left:-.045em; }
.poster-copy h1,.poster-copy h2 { line-height:var(--display-leading); }
.poster-copy h2 { margin:.65rem 0 1rem; color:var(--red); font-size:clamp(2.5rem,5vw,4.8rem); }
.poster-copy h3 { margin:1.4rem 0 .15rem; font-size:clamp(1.5rem,3vw,2.4rem); }
.poster-copy > p { margin:.1rem 0; max-width:560px; color:#ccc; }
.poster-page > img { position:absolute; right:max(-30px,calc((100vw - var(--max))/2 - 120px)); top:90px; width:min(68vw,900px); max-height:calc(100% - 90px); object-fit:contain; object-position:right top; opacity:1; filter:contrast(1.05) brightness(1.08); z-index:0; }
body[data-week="7"] .poster-page > img { right:max(-110px,calc((100vw - var(--max))/2 - 260px)); }
body[data-week="3"] .poster-copy h2 + h2 { color:#fff; }
.poster-page::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,#050505 0%,#050505e8 30%,#05050566 48%,transparent 67%); pointer-events:none; z-index:1; }
.poster-standard { margin-top:2.5rem; padding-top:1.5rem; border-top:1px solid #555; }
.poster-standard p { max-width:570px; font-size:.85rem; }
.information-page { display:block; }
.copy-intro { padding-top:20px; padding-bottom:20px; }
.copy-intro > p:last-child { max-width:850px; color:#bbb; font-size:1.05rem; }
.information-page > .section { padding-top:84px; padding-bottom:84px; }
.information-page > .section + .section:not(.report) { border-top-color:#ffffff32; }
.information-page > .copy-intro { padding-bottom:18px; }
.information-page > .copy-intro + .principles { padding-top:22px; border-top:0; background-image:none; }
.information-page > .principles + .warning-signs { margin-top:20px; }
.information-page > .warning-signs { border:0; }
.information-page > .report { margin-top:20px; }
.donate-hero { max-width:none; min-height:570px; padding-left:max(24px,calc((100vw - var(--max))/2)); padding-right:max(24px,calc((100vw - var(--max))/2)); display:flex; flex-direction:column; justify-content:center; background:linear-gradient(100deg,#050505 30%,#05050588),url('assets/texture.webp') center/cover; }
.donate-hero h1 { max-width:850px; font-size:clamp(4rem,9vw,8rem); }
.donate-hero > p:last-child { max-width:680px; color:#ccc; font-size:1.1rem; }
.donate-hero > div:first-child > p:last-child { max-width:680px; color:#ccc; font-size:1.1rem; }
.donate-content { display:grid; grid-template-columns:1fr 1fr; gap:7vw; align-items:start; }
.donate-content h2 { font-size:clamp(2.8rem,5vw,4.6rem); }
.donate-content > div > p:last-child { color:#bbb; }
.donation-instruction { padding:2.2rem; background:#151515; }
.donation-instruction h2 { font-size:clamp(2.2rem,4vw,3.6rem); }
.donation-instruction blockquote { margin:1.5rem 0; padding:1rem 1.2rem; color:#fff; background:#080808; border-left:3px solid var(--red); font-weight:700; }
.external-note { margin-bottom:0; color:#888; font-size:.75rem; }
.deep-dive-divider { position:relative; overflow:hidden; max-width:none; padding-top:110px; padding-bottom:110px; text-align:center; background:#111; }
.deep-dive-divider { background-color:#111; background-image:linear-gradient(90deg,var(--green) 0 72%,#fff 72% 75%,var(--red) 75% 100%); background-repeat:no-repeat; background-size:210px 7px; background-position:center top; }
.deep-dive-icon { position:absolute; width:310px; height:310px; left:50%; top:50%; transform:translate(-50%,-50%); fill:none; stroke:#ffffff08; stroke-width:1.4; stroke-linecap:round; stroke-linejoin:round; pointer-events:none; }
.deep-dive-divider > *:not(.deep-dive-icon) { position:relative; z-index:1; }
.deep-dive-divider .eyebrow { color:var(--red); }
.deep-dive-divider h2 { max-width:1000px; margin:.7rem auto 0; font-size:clamp(2.5rem,5vw,4.6rem); letter-spacing:-.02em; }
.deep-dive-divider > p:last-child { max-width:680px; margin:1.25rem auto 0; color:#aaa; font-size:1.05rem; }
.learn-more-intro { max-width:980px; text-align:center; padding-top:120px; }
.visual-feature { max-width:1240px; display:grid; grid-template-columns:.72fr 1.28fr; gap:6vw; align-items:center; background:linear-gradient(135deg,#151515,#0c0c0c); }
.visual-feature h2 { font-size:clamp(2.3rem,4.2vw,4rem); }
.visual-feature svg { fill:none; stroke:currentColor; stroke-width:2.2; stroke-linecap:round; stroke-linejoin:round; }
.process-visual { list-style:none; padding:0; margin:0; display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:#ffffff16; }
.process-visual li { min-height:130px; padding:1.2rem; display:flex; flex-direction:column; justify-content:space-between; background:#111; font-size:1.05rem; font-weight:800; }
.process-visual li span { color:var(--red); font-size:.72rem; letter-spacing:.14em; }
.icon-sequence { display:grid; grid-template-columns:repeat(3,1fr); gap:1rem; }
.icon-sequence article { min-height:230px; padding:1.5rem; background:#111; }
.icon-sequence svg { width:48px; height:48px; color:var(--red); margin-bottom:2rem; }
.icon-sequence strong,.icon-sequence span { display:block; }
.icon-sequence strong { font-size:1.25rem; color:#fff; }
.icon-sequence span { margin-top:.5rem; color:#aaa; line-height:1.4; }
.dojang-diagram { min-height:360px; padding:2rem; display:grid; grid-template-columns:1fr 1.35fr; grid-template-rows:1fr 1fr; gap:1rem; border:2px solid #555; background:repeating-linear-gradient(90deg,#111 0,#111 39px,#151515 40px); }
.dojang-diagram > div { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:.7rem; border:1px dashed #555; color:#bbb; text-align:center; }
.dojang-diagram svg { width:60px; height:60px; color:var(--red); }
.diagram-training { grid-row:1/3; grid-column:2; }
.report-path { grid-template-columns:repeat(5,1fr); }
.report-path li { min-height:155px; }
.parent-icon { width:62px; height:62px; flex:0 0 auto; fill:none; stroke:var(--red); stroke-width:2.2; stroke-linecap:round; stroke-linejoin:round; }
.donate-hero { display:grid; grid-template-columns:1.2fr .8fr; gap:5vw; align-items:center; }
.donate-symbol { position:relative; min-height:330px; display:grid; place-items:center; }
.donate-symbol svg { position:absolute; width:230px; height:230px; fill:none; stroke:#ffffff18; stroke-width:1.5; stroke-linecap:round; stroke-linejoin:round; }
.donate-symbol svg:last-child { width:135px; height:135px; stroke:var(--red); }
.pledge-hero { min-height:620px; display:grid; grid-template-columns:1.2fr .8fr; gap:5vw; align-items:center; background:radial-gradient(circle at 80% 50%,#330005 0,transparent 38%); }
.global-reporting-hero { min-height:610px; display:flex; flex-direction:column; justify-content:center; background:radial-gradient(circle at 78% 42%,#330005 0,transparent 38%); }
.global-reporting-hero h1 { max-width:1000px; font-size:clamp(4rem,9vw,8rem); }
.global-reporting-hero > p:last-child { max-width:760px; color:#bbb; font-size:1.08rem; }
.global-reporting-holding { display:grid; grid-template-columns:.55fr 1.45fr; gap:7vw; align-items:start; }
.global-reporting-holding > div:first-child { min-height:350px; display:grid; place-items:center; background:#141414; }
.global-reporting-holding svg { width:180px; height:180px; fill:none; stroke:#ffffff24; stroke-width:1.5; stroke-linecap:round; stroke-linejoin:round; }
.global-reporting-holding h2 { font-size:clamp(2.8rem,6vw,5rem); }
.global-reporting-holding > div:last-child > p:not(.eyebrow) { max-width:760px; color:#bbb; }
.reporting-first { display:grid; gap:2.5rem; }
.reporting-urgent { display:grid; grid-template-columns:auto 1fr; gap:2rem; align-items:center; padding:2.4rem; background:var(--red); }
.reporting-urgent svg { width:92px; height:92px; fill:none; stroke:#fff; stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round; }
.reporting-urgent h2 { margin-bottom:.5rem; }
.reporting-urgent p { max-width:850px; }
.reporting-order { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:#444; }
.reporting-order article { padding:2rem; background:#181818; }
.reporting-order span { display:grid; width:44px; height:44px; place-items:center; margin-bottom:1.2rem; border:2px solid var(--green); border-radius:50%; font-weight:900; }
.reporting-order h3 { font-size:1.45rem; }
.reporting-order p,.directory-intro > p:last-child,.continent-card > p:not(.route-status):not(.route-action),.reporting-fallback p { color:#bbb; }
.wt-reporting { display:grid; grid-template-columns:.8fr 1.2fr; gap:6vw; align-items:start; }
.wt-reporting h2,.directory-intro h2,.reporting-fallback h2 { font-size:clamp(2.8rem,6vw,5rem); }
.wt-reporting > div:first-child > p:last-child { max-width:620px; color:#bbb; }
.reporting-route { padding:2.2rem; background:#171717; border-left:5px solid var(--green); }
.reporting-route h3 { margin:1.5rem 0 .2rem; font-size:1rem; text-transform:uppercase; letter-spacing:.08em; color:#aaa; }
.reporting-route > p a,.route-action a { color:#fff; font-size:clamp(1rem,2vw,1.3rem); font-weight:850; overflow-wrap:anywhere; }
.route-status { display:flex; flex-wrap:wrap; justify-content:space-between; gap:.5rem 1rem; margin-bottom:1rem; color:#999; font-size:.75rem; text-transform:uppercase; letter-spacing:.08em; }
.route-status span { color:#8ee2ae; font-weight:900; }
.route-links { display:flex; flex-wrap:wrap; gap:.8rem 1.4rem; margin-top:1.5rem; }
.route-links a:not(.button) { color:#fff; font-weight:800; text-decoration-thickness:2px; text-underline-offset:4px; }
.continental-directory { display:grid; gap:2.5rem; }
.directory-intro { max-width:850px; }
.continental-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:1rem; }
.continent-card { min-height:300px; padding:2rem; background:#171717; border-top:5px solid #777; }
.continent-card.route-verified { border-color:var(--green); }
.continent-card.route-policy { border-color:#d2aa34; }
.continent-card h3 { font-size:clamp(1.7rem,3vw,2.5rem); }
.continent-card .route-action { margin-top:1.4rem; }
.continent-card .route-links { margin-top:auto; padding-top:1rem; }
.continent-card { display:flex; flex-direction:column; }
.route-policy .route-status span { color:#f0c856; }
.route-limited .route-status span { color:#bbb; }
.directory-checked { max-width:950px; color:#999; font-size:.85rem; }
.global-standards-call { padding-top:clamp(4rem,8vw,7rem)!important; padding-bottom:clamp(4rem,8vw,7rem)!important; background:var(--green)!important; }
.global-standards-call h2 { max-width:1000px; font-size:clamp(2.5rem,4.5vw,4.4rem); }
.global-standards-call > p:last-child { max-width:900px; font-size:clamp(1.05rem,2vw,1.3rem); line-height:1.65; }
.reporting-fallback { display:grid; grid-template-columns:.8fr 1.2fr; gap:6vw; background:#103f26!important; }
.reporting-fallback .button:not(.button-primary) { border:2px solid #fff; color:#fff; }
.reporting-nonnegotiable { display:grid; grid-template-columns:1.15fr .85fr; gap:1rem; }
.reporting-nonnegotiable > div { min-width:0; padding:clamp(2rem,5vw,4rem); }
.nonnegotiable-law { background:var(--red); }
.nonnegotiable-wt { background:#103f26; }
.reporting-nonnegotiable h2 { font-size:clamp(2.6rem,5.2vw,5.4rem); }
.reporting-nonnegotiable p:not(.eyebrow) { max-width:760px; }
.nonnegotiable-wt .button { margin-top:1rem; }
.directory-contribute { display:grid; grid-template-columns:.8fr 1.2fr; gap:6vw; align-items:start; }
.directory-contribute h2 { font-size:clamp(2.8rem,6vw,5rem); }
.directory-contribute > div:last-child > p { max-width:760px; color:#bbb; }
.directory-contribute .submission-warning { margin:1.5rem 0; padding:1.2rem; color:#fff!important; background:#2a2a2a; border-left:5px solid var(--red); }
.reporting-journey { display:grid; grid-template-columns:.72fr 1.28fr; gap:6vw; align-items:start; background:#101010!important; }
.journey-intro { position:sticky; top:120px; }
.journey-intro h2 { font-size:clamp(3rem,6vw,5.8rem); }
.journey-intro > p:last-child { max-width:620px; color:#bbb; line-height:1.6; }
.journey-shell { min-width:0; padding:clamp(1.4rem,4vw,2.5rem); background:#1a1a1a; border-top:5px solid var(--green); scroll-margin-top:110px; }
.journey-progress { height:5px; margin-bottom:1rem; overflow:hidden; background:#3b3b3b; }
.journey-progress span { display:block; height:100%; width:20%; background:var(--red); transition:width .25s ease; }
.journey-step-count { margin:0 0 2rem; color:#aaa; font-size:.76rem; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.journey-step { min-width:0; margin:0; padding:0; border:0; }
.journey-step legend { max-width:760px; padding:0; color:#fff; font:900 clamp(2.1rem,4.5vw,3.8rem)/.98 'Barlow Condensed',sans-serif; text-transform:uppercase; }
.journey-step > p { max-width:720px; color:#aaa; line-height:1.5; }
.journey-options { display:grid; gap:.75rem; margin-top:1.8rem; }
.journey-options-grid { grid-template-columns:1fr 1fr; }
.journey-options label { display:block; cursor:pointer; }
.journey-options input { position:absolute; opacity:0; pointer-events:none; }
.journey-options label > span { min-height:94px; padding:1.15rem; display:flex; flex-direction:column; justify-content:center; color:#aaa; background:#111; border:2px solid #3a3a3a; line-height:1.35; transition:border-color .15s ease,background .15s ease,color .15s ease; }
.journey-options label > span strong { margin-bottom:.35rem; color:#fff; font-size:1rem; }
.journey-options input:checked + span { color:#fff; background:#103f26; border-color:var(--green); }
.journey-options input:focus-visible + span { outline:3px solid #fff; outline-offset:3px; }
.journey-select { display:grid; gap:.6rem; margin-top:1.8rem; color:#fff; font-weight:800; }
.journey-select select { width:100%; padding:1rem; color:#fff; background:#111; border:2px solid #555; border-radius:0; font:700 1rem Inter,sans-serif; }
.journey-select select:focus-visible { outline:3px solid #fff; outline-offset:3px; border-color:var(--green); }
.journey-controls { display:flex; flex-wrap:wrap; justify-content:space-between; gap:.8rem; margin-top:2rem; }
.journey-controls .button { cursor:pointer; border:2px solid #fff; }
.journey-error { margin-top:1.2rem; padding:1rem; color:#fff; background:#511117; border-left:5px solid var(--red); font-weight:800; }
.journey-urgent-alert { margin:0 0 2rem; padding:1rem 1.2rem; color:#fff; background:var(--red); }
.journey-urgent-alert strong,.journey-urgent-alert span { display:block; }
.journey-urgent-alert strong { text-transform:uppercase; }
.journey-urgent-alert span { margin-top:.3rem; line-height:1.4; }
.journey-result:focus { outline:none; }
.journey-result > h3 { font-size:clamp(2.7rem,5vw,4.8rem); }
.journey-summary { color:#bbb; line-height:1.5; }
.journey-result-cards { display:grid; gap:1rem; margin-top:2rem; }
.journey-result-card { padding:1.5rem; background:#111; border-left:5px solid var(--green); }
.journey-result-card:first-child { border-color:var(--red); }
.journey-priority { margin:0 0 .7rem; color:#8ee2ae; font-size:.7rem; font-weight:900; letter-spacing:.1em; text-transform:uppercase; }
.journey-result-card:first-child .journey-priority { color:#ff8994; }
.journey-result-card h4 { margin:0; font-size:clamp(1.6rem,3vw,2.4rem); }
.journey-result-card > p:not(.journey-priority) { color:#bbb; line-height:1.5; }
.journey-result-actions { display:flex; flex-direction:column; margin-top:1rem; border-top:1px solid #333; }
.journey-result-actions a { display:flex; justify-content:space-between; gap:1rem; padding:.8rem 0; color:#fff; font-weight:800; text-underline-offset:3px; }
.journey-result-actions span { color:var(--red); }
.journey-result-note { margin-top:1rem; padding:1.2rem; background:#272727; border-left:5px solid #777; }
.journey-result-note strong,.journey-result-note span { display:block; }
.journey-result-note span { margin-top:.35rem; color:#bbb; line-height:1.45; }
.journey-noscript { margin:1rem 0 0; padding:1rem; color:#fff; background:#511117; }
.continent-card[id] { scroll-margin-top:110px; }
.continent-card[id]:target { outline:3px solid #fff; outline-offset:5px; }
.guidance-hero { min-height:610px; display:flex; flex-direction:column; justify-content:center; background:radial-gradient(circle at 78% 42%,#173b2a 0,transparent 38%); }
.guidance-hero h1 { max-width:1050px; font-size:clamp(4rem,9vw,8rem); }
.guidance-hero h1 span { color:var(--green); }
.guidance-hero > p:last-child { max-width:800px; color:#bbb; font-size:1.08rem; }
.guidance-purpose,.guidance-review,.guidance-sources,.guidance-limits,.guidance-schedule,.guidance-corrections { display:grid; grid-template-columns:.8fr 1.2fr; gap:6vw; align-items:start; }
.guidance-purpose h2,.guidance-review h2,.guidance-sources h2,.guidance-limits h2,.guidance-schedule h2,.guidance-corrections h2,.guidance-ownership h2 { font-size:clamp(2.8rem,6vw,5.2rem); }
.guidance-purpose > div:last-child p,.guidance-review > div:first-child > p:last-child,.guidance-sources > div:first-child > p:last-child,.guidance-limits > div:last-child p,.guidance-corrections > div:last-child p { color:#bbb; line-height:1.6; }
.guidance-limits { background:#103f26!important; }
.guidance-limits strong,.guidance-corrections strong { color:#fff; }
.guidance-card-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1rem; }
.guidance-card-grid article { min-height:280px; padding:1.8rem; background:#151515; border-top:4px solid #555; }
.guidance-card-grid article:nth-child(2) { border-color:var(--green); }
.guidance-card-grid article > span { color:var(--red); font-weight:900; }
.guidance-card-grid h3 { margin-top:1rem; font-size:1.8rem; }
.guidance-card-grid p { color:#bbb; line-height:1.5; }
.guidance-card-grid a { color:#fff; font-weight:850; overflow-wrap:anywhere; }
.guidance-review-list,.guidance-schedule-list { margin:0; padding:0; list-style:none; }
.guidance-review-list li,.guidance-schedule-list li { padding:1.15rem 0; border-bottom:1px solid #ffffff20; }
.guidance-review-list strong,.guidance-review-list span,.guidance-schedule-list span { display:block; }
.guidance-review-list span,.guidance-schedule-list li { margin-top:.3rem; color:#bbb; line-height:1.5; }
.guidance-schedule-list span { margin:0 0 .3rem; color:#fff; font-weight:900; text-transform:uppercase; letter-spacing:.05em; }
.guidance-source-links { display:flex; flex-direction:column; }
.guidance-source-links a { padding:1rem 0; color:#fff; border-bottom:1px solid #ffffff20; text-decoration:none; }
.guidance-source-links strong,.guidance-source-links span { display:block; }
.guidance-source-links span { margin-top:.3rem; color:#aaa; font-size:.82rem; }
.guidance-source-links a:hover span,.guidance-source-links a:focus-visible span { color:#fff; }
.guidance-actions { display:flex; flex-wrap:wrap; gap:.8rem; margin-top:1.5rem; }
.guidance-actions .button:not(.button-primary) { color:#fff; border:2px solid #fff; }
.footer-governance { color:#aaa; font-weight:750; text-underline-offset:3px; }
.footer-governance:hover,.footer-governance:focus-visible { color:#fff; }
.reporting-route-helper { min-height:100%; display:flex; align-items:center; justify-content:space-between; gap:1.25rem; padding:1rem; color:#ddd; background:#0b2e1c; border:1px solid #16834d; }
.reporting-route-helper > span,.reporting-route-helper strong { display:block; }
.reporting-route-helper strong { margin-bottom:.2rem; color:#fff; }
.reporting-route-helper > a { flex:0 0 auto; color:#fff; font-weight:900; text-transform:uppercase; letter-spacing:.04em; text-decoration:none; }
.reporting-route-helper > a:hover,.reporting-route-helper > a:focus-visible { color:#8df0b8; }
.glossary-hero { min-height:570px; display:flex; flex-direction:column; justify-content:center; background:radial-gradient(circle at 78% 45%,#173b2a 0,transparent 38%); }
.glossary-hero h1 { max-width:950px; font-size:clamp(4rem,9vw,8rem); }
.glossary-hero > p:last-child { max-width:790px; color:#bbb; font-size:1.08rem; }
.glossary-jump { padding-top:35px; padding-bottom:45px; }
.glossary-jump > div { display:flex; flex-wrap:wrap; gap:.55rem; }
.glossary-jump a { padding:.5rem .75rem; color:#ddd; background:#181818; border:1px solid #383838; text-decoration:none; font-size:.78rem; font-weight:700; }
.glossary-jump a:hover,.glossary-jump a:focus-visible { color:#fff; border-color:var(--red); outline:none; }
.glossary-list { display:grid; grid-template-columns:repeat(2,1fr); gap:1rem; padding-top:20px; }
.glossary-list article { scroll-margin-top:100px; min-height:310px; padding:2rem; display:flex; flex-direction:column; background:#171717; border-top:4px solid #444; }
.glossary-list article:target { border-color:var(--green); background:#1a231e; }
.glossary-list h2 { font-size:clamp(2rem,4vw,3.3rem); }
.glossary-list p { color:#bbb; }
.glossary-list .why-term { padding-top:1rem; border-top:1px solid #3a3a3a; }
.glossary-list .why-term strong { color:#fff; }
.glossary-list article > a { margin-top:auto; padding-top:1rem; color:#fff; font-weight:800; text-decoration-color:var(--red); text-underline-offset:4px; }
.glossary-note { display:grid; grid-template-columns:.9fr 1.1fr; gap:6vw; background:#103f26!important; }
.glossary-note h2 { font-size:clamp(2.7rem,5vw,4.7rem); }
.glossary-note > p { max-width:700px; }
.pledge-hero h1 { font-size:clamp(4.5rem,10vw,9rem); }
.pledge-hero > div > p:last-child { max-width:720px; color:#ccc; font-size:1.1rem; }
.pledge-hero > svg { width:min(340px,70vw); height:min(340px,70vw); justify-self:center; fill:none; stroke:#ffffff18; stroke-width:1.4; stroke-linecap:round; stroke-linejoin:round; }
.pledge-statement { display:grid; grid-template-columns:.85fr 1.15fr; gap:7vw; }
.pledge-statement h2,.pledge-sign h2 { font-size:clamp(2.8rem,6vw,5rem); }
.pledge-copy { padding:2rem; background:#141414; }
.pledge-copy > p:first-child { font-size:1.2rem; color:#fff; }
.pledge-copy ul { margin:2rem 0; padding:0; list-style:none; }
.pledge-copy li { padding:1rem 0 1rem 2rem; border-bottom:1px solid #ffffff18; color:#ccc; position:relative; line-height:1.45; }
.pledge-copy li::before { content:"✓"; position:absolute; left:0; color:var(--red); font-weight:900; }
.pledge-sign { display:grid; grid-template-columns:.75fr 1.25fr; gap:7vw; align-items:start; }
.pledge-form-heading { position:sticky; top:110px; }
.pledge-form-heading > p:last-child { color:#999; }
.pledge-form { padding:2rem; background:#141414; }
.form-grid { display:grid; grid-template-columns:1fr 1fr; gap:1.2rem; }
.pledge-form label { display:flex; flex-direction:column; gap:.55rem; color:#fff; font-size:.82rem; font-weight:700; }
.pledge-form label > span { color:#777; font-weight:400; }
.pledge-form .consent span { color:#bbb; font-weight:400; }
.pledge-form input:not([type="checkbox"]),.pledge-form select { width:100%; padding:1rem; color:#fff; background:#090909; border:1px solid #444; border-radius:0; font:inherit; }
.pledge-form input:focus,.pledge-form select:focus { outline:2px solid var(--red); outline-offset:2px; }
.form-wide { grid-column:1/-1; }
.consent { flex-direction:row!important; align-items:flex-start; margin:1.4rem 0; color:#bbb!important; font-weight:400!important; line-height:1.4; }
.consent input { width:20px; height:20px; flex:0 0 auto; accent-color:var(--red); }
.form-note { margin-top:1rem; color:#777; font-size:.75rem; }
.form-status { min-height:1.5em; margin:.8rem 0 0; color:#f0b8bb; font-size:.82rem; }
.pledge-turnstile { min-height:65px; margin:1.5rem 0 1rem; }
.pledge-form button:disabled { cursor:not-allowed; opacity:.55; }
.pledge-confirmation { padding:3rem; background:#141414; }
.pledge-confirmation > svg { width:70px; height:70px; fill:none; stroke:var(--red); stroke-width:2.2; stroke-linecap:round; stroke-linejoin:round; }
.pledge-confirmation:focus { outline:none; }
.pledge-confirmation-copy > svg { width:70px; height:70px; fill:none; stroke:var(--green); stroke-width:2.2; stroke-linecap:round; stroke-linejoin:round; }
.pledge-confirmation-copy > .eyebrow { color:var(--green); }
.pledge-share { margin:2.5rem 0 2rem; padding-top:2rem; border-top:1px solid #3a3a3a; }
.pledge-share canvas { width:min(100%,420px); height:auto; display:block; border:1px solid #333; box-shadow:0 24px 55px #0008; }
.pledge-share-copy { margin-top:1.7rem; }
.pledge-share-copy .eyebrow { color:var(--green); }
.pledge-share-copy h3 { margin:.15em 0 .35em; color:#fff; font-size:clamp(2rem,4vw,3.2rem); }
.pledge-share-copy > p:last-child { max-width:620px; color:#aaa; }
.pledge-share-actions { display:flex; flex-wrap:wrap; gap:.75rem; margin-top:1.4rem; }
.share-button,.share-download { min-height:48px; display:inline-flex; align-items:center; justify-content:center; gap:.65rem; padding:.8rem 1.05rem; border:1px solid #444; color:#fff; background:#1b1b1b; font:800 .75rem Inter,sans-serif; letter-spacing:.06em; text-transform:uppercase; cursor:pointer; transition:transform .18s ease,filter .18s ease,border-color .18s ease; }
.share-button:hover,.share-button:focus-visible,.share-download:hover,.share-download:focus-visible { transform:translateY(-2px); filter:brightness(1.12); outline:2px solid #fff; outline-offset:3px; }
.share-button span { font:900 1.25rem/1 Inter,sans-serif; }
.share-facebook { border-color:#3975d5; background:#2356a8; }
.share-instagram { border-color:#e55386; background:linear-gradient(120deg,#6d39b6,#d83f72 55%,#ee8d32); }
.share-download { color:#ddd; }
.share-help { max-width:650px; margin:1rem 0 0; color:#888; font-size:.76rem; line-height:1.5; }
.share-status { min-height:1.5em; margin:.9rem 0 0; color:#bbb; font-size:.8rem; }
.privacy-details { display:grid; grid-template-columns:.8fr 1.2fr; gap:7vw; border-top:1px solid #2d2d2d; }
.privacy-details h2 { font-size:clamp(2.4rem,5vw,4.3rem); }
.privacy-details > div:last-child { max-width:760px; color:#bbb; }
.learn-more-intro h2,.expanded-heading h2,.comparison h2,.scenario-section h2,.action-section h2,.role-guidance h2,.related-resources h2 { font-size:clamp(2.4rem,5vw,4.35rem); }
.learn-more-intro > p:not(.eyebrow) { max-width:760px; margin:1.4rem auto; color:#bbb; font-size:1.05rem; }
.learn-nav { display:flex; flex-wrap:wrap; justify-content:center; gap:.6rem; margin-top:2.2rem; }
.learn-nav a { padding:.65rem .85rem; color:#ddd; border:1px solid #3b3b3b; text-decoration:none; text-transform:none; font-size:.78rem; letter-spacing:0; }
.learn-nav a:hover,.learn-nav a:focus-visible { border-color:var(--red); color:#fff; outline:none; }
.expanded-section { display:grid; grid-template-columns:.85fr 1.15fr; gap:7vw; }
.expanded-copy > p { margin-top:0; color:#bbb; }
.detail-list { list-style:none; margin:2rem 0 0; padding:0; }
.detail-list li { padding:1rem 0; border-bottom:1px solid #ffffff20; }
.detail-list li::before { content:"+"; color:var(--red); margin-right:.8rem; font-weight:800; }
.detail-list li strong { display:inline; color:#fff; font-weight:800; }
.detail-list li span { display:block; margin:.3rem 0 0 1.65rem; color:#aaa; line-height:1.42; }
.comparison { max-width:1240px; }
.comparison .section-heading,.scenario-section .section-heading,.action-section .section-heading,.role-guidance .section-heading { max-width:800px; margin-bottom:3rem; }
.comparison-grid { display:grid; grid-template-columns:1fr 1fr; gap:1rem; }
.comparison-grid article { padding:2rem; background:#151515; border-top:4px solid #555; }
.comparison-grid article:first-child:not(.concern-card) { border-top-color:var(--green); }
.comparison-grid .concern-card { border-color:var(--red); }
.comparison-grid h3,.role-grid h3 { font-size:2rem; }
.comparison-grid ul,.role-grid ul { padding-left:1.2rem; color:#bbb; }
.comparison-grid li,.role-grid li { margin:.65rem 0; }
.explained-list li { margin:1rem 0; }
.explained-list strong { display:block; color:#fff; }
.explained-list span { display:block; margin-top:.25rem; color:#aaa; line-height:1.42; }
.scenario-section { max-width:1240px; }
.scenario-section .section-heading > p:last-child { color:#aaa; }
.scenario-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1rem; }
.scenario-grid article { min-height:190px; padding:1.6rem; background:#121212; border:1px solid #292929; }
.scenario-grid span { color:var(--red); font-size:.7rem; font-weight:800; letter-spacing:.12em; }
.scenario-grid p { margin:1rem 0 0; font-weight:600; }
.athlete-callout { max-width:none; padding-left:max(24px,calc((100vw - var(--max))/2)); padding-right:max(24px,calc((100vw - var(--max))/2)); background:var(--red); }
.athlete-callout .eyebrow { color:#fff; }
.athlete-callout h2 { font-size:clamp(3rem,6.5vw,5.8rem); }
.athlete-callout > div { display:flex; flex-wrap:wrap; gap:.75rem; margin-top:2rem; }
.athlete-callout > div p { margin:0; padding:.75rem 1rem; background:#0002; font-weight:700; }
.action-steps { max-width:900px; margin:0; padding:0; list-style:none; }
.action-steps li { display:grid; grid-template-columns:54px 1fr; gap:1.2rem; padding:1.4rem 0; border-bottom:1px solid #ffffff20; }
.action-steps > li > span { width:42px; height:42px; display:grid; place-items:center; color:#fff; background:var(--red); border-radius:50%; font-weight:800; }
.action-steps h3 { margin:0; font-size:1.7rem; }
.action-steps p { margin:.25rem 0 0; color:#aaa; }
.no-proof { max-width:980px; text-align:center; border:1px solid #3b3b3b; margin-bottom:100px; }
.no-proof h2 { font-size:clamp(2.6rem,5.8vw,5.1rem); }
.no-proof > p:not(.eyebrow) { max-width:700px; margin:1.2rem auto 2rem; color:#bbb; }
.role-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1rem; }
.role-grid article { padding:1.8rem; background:#121212; }
.related-resources { display:grid; grid-template-columns:1fr 1fr; gap:6vw; }
.resource-links { display:flex; flex-direction:column; }
.resource-links a { display:flex; justify-content:space-between; gap:1rem; padding:1rem 0; color:#fff; border-bottom:1px solid #ffffff20; text-decoration:none; font-weight:700; }
.resource-links span { color:var(--red); }
.further-reading { max-width:1240px; }
.further-reading .section-heading { max-width:760px; margin-bottom:2.5rem; }
.further-reading .section-heading > p:last-child { color:#aaa; }
.reading-grid { display:grid; grid-template-columns:1fr 1fr; gap:1rem; }
.reading-card { min-height:270px; padding:2rem; display:flex; flex-direction:column; color:#fff; background:#141414; border:1px solid #2d2d2d; border-top:3px solid #555; text-decoration:none; transition:border-color .2s ease,transform .2s ease; }
.reading-card:hover,.reading-card:focus-visible { transform:translateY(-3px); outline:none; }
.reading-source { color:var(--red); text-transform:uppercase; letter-spacing:.1em; font-size:.7rem; font-weight:800; }
.reading-card strong { margin-top:.75rem; font:800 1.65rem 'Barlow Condensed',sans-serif; text-transform:uppercase; line-height:1.05; }
.reading-card p { color:#aaa; line-height:1.42; }
.reading-link { margin-top:auto; padding-top:1rem; color:#fff; border-top:1px solid #ffffff18; font-size:.78rem; font-weight:700; }
.external-disclaimer { margin-top:1.2rem; padding:1.15rem 1.25rem; color:#8f8f8f; background:#0c0c0c; border-left:3px solid #555; font-size:.78rem; line-height:1.42; }
.external-disclaimer strong { color:#bbb; }
.week-hero { max-width:none; min-height:680px; margin:auto; padding:100px max(24px,calc((100vw - var(--max))/2)) 80px; display:flex; align-items:center; justify-content:space-between; gap:3rem; position:relative; overflow:hidden; background:radial-gradient(circle at 74% 45%,#2a2a2a 0,transparent 38%); }
.week-hero > div:first-child { max-width:650px; position:relative; z-index:2; }
.week-hero h1 { font-size:clamp(4.5rem,10vw,8rem); }
.week-hero h1 span { font-size:1em; }
.week-hero h1 em { color:var(--red); font-style:normal; }
.week-hero-art { position:absolute; right:max(20px,calc((100vw - var(--max))/2)); bottom:0; width:min(48vw,610px); z-index:1; }
.week-hero-art::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,#080808 0,transparent 30%),linear-gradient(0deg,#080808 0,transparent 13%); }
.week-hero-art img { width:100%; max-height:650px; object-fit:contain; object-position:right bottom; }
.week-number { position:absolute; right:max(12px,calc((100vw - var(--max))/2)); bottom:0; z-index:0; margin:0; color:#181818; font:900 clamp(14rem,32vw,28rem)/.75 'Barlow Condensed',sans-serif; letter-spacing:-.08em; }
.week-signs { border:0; }
.week-intro,.training { display:grid; grid-template-columns:1fr 1fr; gap:7vw; align-items:start; }
.week-intro h2,.training h2 { font-size:clamp(2.6rem,5vw,4.6rem); }
.week-intro > div:last-child,.training > div:last-child { color:#bbb; font-size:1.05rem; }
.week-intro > div:last-child { padding-top:1.4rem; }
.training > div:first-child:has(.eyebrow) + div { padding-top:1.4rem; }
.week-intro > div:last-child p:first-child,.training > div:last-child p:first-child { margin-top:0; }
.assurances { padding-top:20px; display:grid; grid-template-columns:repeat(3,1fr); gap:1rem; }
.assurances article { padding:2rem; border:1px solid #333; border-left:4px solid var(--red); }
.assurances h2 { font-size:clamp(2rem,4vw,3rem); }
.assurances p { margin-bottom:0; color:#aaa; }
.poster-statement { padding-top:10px; padding-bottom:70px; text-align:center; }
.poster-statement p { max-width:850px; margin:auto; color:#ddd; font:700 clamp(1.5rem,3vw,2.4rem)/1.2 'Barlow Condensed',sans-serif; text-transform:uppercase; }
.week-signs > div > p:last-child { color:#fff; font-weight:700; text-transform:uppercase; }
.discussion { max-width:900px; text-align:center; }
.discussion h2 { max-width:800px; margin-inline:auto; font-size:clamp(1.7rem,3.2vw,2.7rem); line-height:1.1; }
.discussion > p:nth-of-type(2) { color:#bbb; max-width:620px; margin:1.5rem auto 0; font-size:1.05rem; }
.reflection { max-width:760px; margin:2.5rem auto 0; text-align:left; }
.reflection label { display:block; margin-bottom:.65rem; text-transform:uppercase; font:800 .75rem Inter,sans-serif; letter-spacing:.12em; }
.reflection textarea { display:block; width:100%; min-height:190px; resize:vertical; border:1px solid #444; border-radius:0; padding:1.2rem; color:#fff; background:#131313; font:500 1rem/1.6 Inter,sans-serif; }
.reflection textarea:focus { outline:3px solid #e3061355; border-color:var(--red); }
.reflection textarea::placeholder { color:#777; }
.reflection .privacy-note { margin:.65rem 0 0; color:#888; font-size:.76rem; }
.training { border-top:0; }
.zero-tolerance { max-width:900px; text-align:center; }
.zero-tolerance h2 { font-size:clamp(3.4rem,8vw,6.7rem); }
.zero-tolerance h2 span { color:var(--red); }
.zero-tolerance > p:not(.eyebrow,.certification) { max-width:650px; margin:1.3rem auto; color:#bbb; }
.zero-tolerance .certification { margin-top:2.5rem; color:#fff; text-transform:uppercase; font:700 1rem 'Barlow Condensed',sans-serif; letter-spacing:.08em; }
.parents.compact { max-height:700px; }
.page-navigation { max-width:var(--max); margin:auto; padding:40px 24px 80px; display:grid; grid-template-columns:1fr 1fr; gap:1rem; }
.page-navigation a,.page-navigation p { margin:0; padding:1.5rem; border:1px solid #333; text-decoration:none; font:700 1.35rem 'Barlow Condensed',sans-serif; text-transform:uppercase; }
.page-navigation p { color:#666; }
.page-navigation span { display:block; margin-bottom:.4rem; color:var(--red); font:700 .65rem Inter,sans-serif; letter-spacing:.15em; }
footer { max-width:var(--max); margin:auto; padding:2rem 24px; border-top:1px solid #333; display:flex; align-items:center; justify-content:space-between; gap:1rem; color:#aaa; font-size:.8rem; }
.footer-logo { width:118px; height:auto; opacity:.72; }
footer p { text-transform:uppercase; letter-spacing:.1em; }
.visually-hidden { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }

.merch-hero { max-width:var(--max); min-height:740px; margin:auto; padding:120px 24px 80px; display:grid; grid-template-columns:minmax(0,.8fr) minmax(400px,1.2fr); gap:clamp(2.5rem,6vw,6rem); align-items:center; }
.merch-hero-copy h1 { margin:.08em 0 .25em; color:#fff; font-size:clamp(4.8rem,10vw,9rem); line-height:var(--display-leading); }
.merch-hero-copy h1 span { color:var(--red); }
.merch-coming { display:inline-block; margin:0 0 1.4rem; padding:.55rem .85rem; color:#090909; background:#fff; text-transform:uppercase; font:900 .75rem Inter,sans-serif; letter-spacing:.14em; }
.merch-hero-copy > p:last-of-type { max-width:570px; color:#bbb; font-size:1.08rem; }
.brand-line { width:min(100%,440px); height:22px; margin:2rem 0; display:grid; grid-template-columns:3.5fr 8px 1fr; gap:7px; }
.brand-line::before,.brand-line::after,.brand-line span { content:""; display:block; }
.brand-line::before { background:var(--green); }
.brand-line span { background:#fff; }
.brand-line::after { background:var(--red); }
.hero h1 .home-title-sport { width:max-content; color:var(--red); }
.hero h1 .home-title-sport::after { content:""; display:block; width:100%; height:12px; margin-top:.14em; background:linear-gradient(90deg,var(--green) 0 72%,#fff 72% 75%,var(--red) 75% 100%); }
.hero h1 + .hero-lede { margin-top:1.35rem; }
.merch-mockup { margin:0; padding:1rem; background:#f1ebe6; box-shadow:0 28px 70px #000a; transform:rotate(1deg); }
.merch-mockup img { width:100%; }
.brand-story { display:grid; grid-template-columns:minmax(260px,.7fr) minmax(0,1.3fr); gap:8vw; }
.brand-story h2,.merch-support h2 { font-size:clamp(3.2rem,7vw,6rem); }
.brand-story-copy { padding-top:1.45rem; color:#bbb; font-size:1.06rem; }
.brand-story-copy p:first-child { margin-top:0; }
.brand-story-copy .story-turn { margin:1rem 0; color:#fff; font:800 clamp(1.8rem,4vw,3rem)/1.05 'Barlow Condensed',sans-serif; text-transform:uppercase; }
.brand-story-copy .story-close { color:#fff; font-weight:800; }
.line-meaning { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; padding-top:20px; }
.line-meaning { background-image:none!important; }
.line-meaning article { min-height:260px; padding:2rem; background:#151515; border-top:5px solid; }
.line-meaning article:nth-child(1) { border-color:var(--green); }
.line-meaning article:nth-child(2) { border-color:#fff; }
.line-meaning article:nth-child(3) { border-color:var(--red); }
.line-meaning article:nth-child(3) h3 { color:var(--red); }
.line-meaning h3 { margin:.7rem 0; font-size:2.4rem; }
.line-meaning p { color:#aaa; }
.merch-support { display:grid; grid-template-columns:minmax(280px,.75fr) minmax(0,1.25fr); gap:7vw; align-items:start; }
.merch-support > div > p { color:#bbb; }
.merch-support-list { display:grid; grid-template-columns:1fr 1fr; gap:1px; list-style:none; margin:0; padding:1.45rem 0 0; background:linear-gradient(transparent 0 1.45rem,#333 1.45rem); }
.merch-support-list li { min-height:145px; padding:1.35rem; background:#111; color:#bbb; }
.merch-support-list strong { display:block; margin-bottom:.45rem; color:#fff; font:800 1.25rem/1.05 'Barlow Condensed',sans-serif; text-transform:uppercase; }
.merch-compact { max-width:900px; text-align:center; }
.merch-compact h2 { font-size:clamp(3rem,7vw,6rem); }
.merch-compact p { max-width:720px; margin:1.2rem auto; color:#bbb; font-size:1.1rem; }
.merch-compact .hero-actions { justify-content:center; }
.merch-compact .brand-line { margin:2.3rem auto 0; }
.about-hero { max-width:var(--max); min-height:680px; margin:auto; padding:120px 24px 80px; display:flex; flex-direction:column; justify-content:center; }
.about-hero h1 { max-width:980px; color:#fff; font-size:clamp(4.6rem,10vw,9rem); line-height:var(--display-leading); }
.about-hero h1 span { color:var(--red); }
.about-hero > p:last-of-type { max-width:720px; color:#bbb; font-size:1.12rem; }
.about-hero .brand-line { width:min(100%,560px); }
.about-priority { display:grid; grid-template-columns:minmax(260px,.75fr) minmax(0,1.25fr); gap:7vw; align-items:start; }
.about-priority h2 { max-width:720px; font-size:clamp(3rem,6vw,5.5rem); }
.about-priority > div:last-child { color:#bbb; font-size:1.08rem; }
.about-priority > div:last-child p:first-child { color:#fff; font-size:1.2rem; }
.about-participate h2 { max-width:900px; font-size:clamp(3.2rem,7vw,6rem); }
.about-action-grid { margin-top:3rem; display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:#333; }
.about-action-grid a { min-height:210px; padding:1.7rem; display:flex; flex-direction:column; color:#fff; background:#111; text-decoration:none; }
.about-action-grid a:hover,.about-action-grid a:focus-visible { background:#181818; outline:2px solid var(--green); outline-offset:-2px; }
.about-action-grid strong { color:var(--green); font:800 1.8rem/1 'Barlow Condensed',sans-serif; text-transform:uppercase; }
.about-action-grid span { margin-top:.8rem; color:#aaa; }
.about-action-grid b { margin-top:auto; color:#fff; font-size:.78rem; text-transform:uppercase; letter-spacing:.08em; }

/* Cyberbullying resource: the image panel intentionally reserves the final hero crop. */
.cyber-hero { max-width:var(--max); min-height:690px; margin:auto; padding:120px 24px 82px; display:grid; grid-template-columns:minmax(0,1.05fr) minmax(340px,.95fr); gap:clamp(2rem,6vw,6rem); align-items:center; }
.cyber-hero-copy { position:relative; z-index:1; }
.cyber-hero h1 { position:relative; left:-.052em; width:calc(100% + .052em); margin:.1em 0 0; color:#fff; font-size:clamp(4.5rem,9vw,8rem); line-height:var(--display-leading); }
.cyber-hero h2 { margin:.12em 0 .38em; color:var(--red); font-size:clamp(3rem,6vw,5.5rem); line-height:var(--display-leading); }
.cyber-hero-copy > p:not(.eyebrow) { max-width:680px; color:#bbb; font-size:1.05rem; line-height:var(--body-leading); }
.cyber-hero .poster-standard { margin-top:2.2rem; padding:1.25rem 0 0 1.4rem; border-top:1px solid #333; border-left:3px solid var(--red); }
.cyber-hero .poster-standard h3 { margin:0; color:#fff; font-size:clamp(1.65rem,3vw,2.35rem); }
.cyber-hero .poster-standard p { max-width:560px; margin:.45rem 0 0; color:#999; }
.cyber-hero-image { width:calc(100% + 4vw); max-width:none; height:auto; aspect-ratio:2/3; display:block; justify-self:end; object-fit:cover; filter:contrast(1.04); -webkit-mask-image:linear-gradient(90deg,transparent 0,#000 13%,#000 100%),linear-gradient(180deg,transparent 0,#000 6%,#000 88%,transparent 100%); -webkit-mask-composite:source-in; mask-image:linear-gradient(90deg,transparent 0,#000 13%,#000 100%),linear-gradient(180deg,transparent 0,#000 6%,#000 88%,transparent 100%); mask-composite:intersect; }
.cyber-hero-placeholder { aspect-ratio:4/5; min-height:510px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:.8rem; position:relative; overflow:hidden; border:1px solid #3a3a3a; background:radial-gradient(circle at 50% 42%,#2b2b2b 0,#171717 42%,#0c0c0c 75%); color:#ddd; text-align:center; text-transform:uppercase; letter-spacing:.1em; }
.cyber-hero-placeholder::before,.cyber-hero-placeholder::after { content:""; position:absolute; background:#ffffff0b; transform:rotate(-12deg); }
.cyber-hero-placeholder::before { width:150%; height:1px; }
.cyber-hero-placeholder::after { width:1px; height:150%; }
.cyber-hero-placeholder svg { width:112px; height:112px; position:relative; fill:none; stroke:var(--red); stroke-width:1.4; }
.cyber-hero-placeholder span,.cyber-hero-placeholder small { position:relative; }
.cyber-hero-placeholder span { font:800 1rem Inter,sans-serif; }
.cyber-hero-placeholder small { color:#777; font-size:.65rem; }
.online-bullying-feature { display:grid; grid-template-columns:minmax(0,1fr) minmax(300px,.78fr); gap:clamp(2rem,6vw,5rem); align-items:center; background:#111; }
.online-bullying-feature h2 { margin:.15em 0 .3em; color:#fff; font-size:clamp(3rem,6vw,5.4rem); line-height:var(--display-leading); }
.online-bullying-feature p:not(.eyebrow) { color:#bbb; }
.online-bullying-feature .poster-standard { margin-top:2rem; padding:1.25rem 0 0 1.4rem; border-top:1px solid #333; border-left:3px solid var(--red); }
.online-bullying-feature .poster-standard h3 { margin:0; color:#fff; font-size:clamp(1.5rem,3vw,2.3rem); }
.online-bullying-feature img { width:100%; max-height:680px; object-fit:cover; }
.cyber-process { grid-template-columns:repeat(3,1fr); }
.cyber-urgent { background:linear-gradient(135deg,#181818,#0b0b0b); }
.cyber-urgent h2 { max-width:850px; }
.cyber-urgent p:last-child { max-width:850px; color:#bbb; }

/* Replace remaining horizontal red rules with the complete brand mark. */
.donation-instruction,.icon-sequence article,.global-reporting-holding > div:first-child,.pledge-copy,.pledge-form,.pledge-confirmation,.signer-window,.role-grid article { border-top:0; background-image:linear-gradient(90deg,var(--green) 0 72%,#fff 72% 75%,var(--red) 75% 100%); background-repeat:no-repeat; background-size:100% 4px; background-position:left top; }
.reflection textarea { border-bottom-color:#444; background-image:linear-gradient(90deg,var(--green) 0 72%,#fff 72% 75%,var(--red) 75% 100%); background-repeat:no-repeat; background-size:100% 3px; background-position:left bottom; }
.reading-card:hover,.reading-card:focus-visible { border-top-color:#2d2d2d; background-image:linear-gradient(90deg,var(--green) 0 72%,#fff 72% 75%,var(--red) 75% 100%); background-repeat:no-repeat; background-size:100% 3px; background-position:left top; }
.cyber-urgent { border-top-color:#3b3b3b; background-image:linear-gradient(90deg,var(--green) 0 72%,#fff 72% 75%,var(--red) 75% 100%),linear-gradient(135deg,#181818,#0b0b0b); background-repeat:no-repeat,no-repeat; background-size:100% 4px,cover; background-position:left top,center; }
.comparison-grid article:first-child:not(.concern-card) h3 { color:var(--green); }
.comparison-grid .concern-card h3 { color:var(--red); }

/* GREEN-ACCENT EXPERIMENT: remove this block to roll back the color trial. */
.learn-more-intro > .eyebrow,.visual-feature .eyebrow { color:var(--green); }
.principles span { color:var(--green); }
.pledge-confirmation > svg { stroke:var(--green); }
.pledge-confirmation > .eyebrow { color:var(--green); }
.merch-page .brand-story > div > .eyebrow,.merch-page .merch-support > div > .eyebrow,.merch-page .merch-compact > .eyebrow,.line-meaning article:first-child .eyebrow,.line-meaning article:first-child h3 { color:var(--green); }
/* END GREEN-ACCENT EXPERIMENT */

/* TOPIC QUIZ: scored locally in the visitor's browser. No answers are transmitted. */
.topic-quiz { max-width:var(--max); display:grid; grid-template-columns:minmax(250px,.72fr) minmax(0,1.28fr); gap:clamp(2.5rem,7vw,7rem); align-items:start; }
.quiz-intro { position:sticky; top:110px; }
.quiz-intro .eyebrow { color:var(--green); }
.quiz-intro h2 { margin:.12em 0 .3em; font-size:clamp(3rem,6vw,5.4rem); line-height:var(--display-leading); }
.quiz-intro > p:not(.eyebrow):not(.quiz-score) { max-width:390px; color:#aaa; }
.quiz-score { max-width:390px; margin-top:1.6rem; padding-top:1.2rem; border-top:3px solid var(--green); color:#ddd; font-size:.82rem; line-height:1.5; }
.knowledge-check-link { max-width:390px; min-height:62px; margin-top:1.8rem; padding:1rem 1.25rem; display:flex; align-items:center; justify-content:space-between; gap:1rem; color:#fff; background:var(--red); border:2px solid var(--red); box-shadow:0 14px 34px #e3061338; text-decoration:none; text-transform:uppercase; font-size:.82rem; line-height:1.25; font-weight:900; letter-spacing:.055em; transition:transform .18s ease,background .18s ease,box-shadow .18s ease; }
.knowledge-check-link span { color:#fff; font-size:1.35rem; }
.knowledge-check-link:hover,.knowledge-check-link:focus-visible { transform:translateY(-3px); background:#ff1824; border-color:#ff1824; box-shadow:0 18px 38px #e3061355; outline:2px solid #fff; outline-offset:3px; }
.quiz-card { position:relative; overflow:hidden; padding:clamp(1.5rem,4vw,3rem); border:1px solid #303030; background:linear-gradient(145deg,#171717 0%,#0c0c0c 62%,#121712 100%); box-shadow:0 28px 70px #0008; }
.quiz-card::before { content:""; height:5px; position:absolute; inset:0 0 auto; background:linear-gradient(90deg,var(--green) 0 72%,#fff 72% 75%,var(--red) 75% 100%); }
.quiz-label { margin:0 0 1.1rem; color:#888; font-size:.72rem; font-weight:800; letter-spacing:.15em; text-transform:uppercase; }
.quiz-label span { margin-right:.65rem; color:var(--green); }
.quiz-card h3 { max-width:850px; margin:0 0 2rem; color:#fff; font-size:clamp(1.65rem,3vw,2.45rem); line-height:1.12; text-transform:none; }
.quiz-options { display:grid; gap:.8rem; }
.quiz-option { width:100%; min-height:76px; display:grid; grid-template-columns:48px 1fr; gap:1rem; align-items:center; padding:.85rem 1.1rem; border:1px solid #383838; border-radius:0; color:#ddd; background:#101010; text-align:left; cursor:pointer; transition:transform .18s ease,border-color .18s ease,background .18s ease; }
.quiz-option:hover:not(:disabled),.quiz-option:focus-visible { transform:translateX(5px); border-color:#777; background:#191919; outline:none; }
.quiz-option > span { width:42px; height:42px; display:grid; place-items:center; border:1px solid #555; color:#fff; background:#1c1c1c; font:800 1rem Inter,sans-serif; transition:inherit; }
.quiz-option > strong { font:650 .98rem/1.45 Inter,sans-serif; }
.quiz-option.is-selected { border-color:#fff; background:#1c1c1c; }
.quiz-option.is-selected > span { border-color:#fff; background:#fff; color:#111; }
.quiz-option.is-correct { border-color:var(--green); background:#102117; }
.quiz-option.is-correct > span { border-color:var(--green); background:var(--green); color:#071109; }
.quiz-option.is-incorrect { border-color:var(--red); background:#251013; }
.quiz-option.is-incorrect > span { border-color:var(--red); background:var(--red); color:#fff; }
.quiz-option:disabled { cursor:default; }
.quiz-check { margin-top:1.25rem; padding:1rem 1.5rem; border:1px solid var(--green); color:#071109; background:var(--green); font:800 .78rem Inter,sans-serif; letter-spacing:.1em; text-transform:uppercase; cursor:pointer; transition:filter .18s ease,transform .18s ease; }
.quiz-check:hover:not(:disabled),.quiz-check:focus-visible { filter:brightness(1.14); transform:translateY(-2px); outline:2px solid #fff; outline-offset:3px; }
.quiz-check:disabled { border-color:#333; color:#777; background:#1a1a1a; cursor:not-allowed; }
.quiz-feedback { margin-top:1.4rem; padding:1.25rem 1.35rem; border-left:4px solid var(--green); background:#112017; animation:quiz-reveal .32s ease both; }
.quiz-feedback.is-incorrect { border-left-color:var(--red); background:#211114; }
.quiz-feedback strong { color:var(--green); font:800 1.55rem 'Barlow Condensed',sans-serif; text-transform:uppercase; }
.quiz-feedback.is-incorrect strong { color:#ff5b65; }
.quiz-feedback p { margin:.45rem 0 0; color:#ddd; line-height:1.62; }
@keyframes quiz-reveal { from { opacity:0; transform:translateY(10px); } to { opacity:1; transform:none; } }
/* END TOPIC QUIZ */

/* COMPLETE KNOWLEDGE CHECK */
.knowledge-invite { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:3rem; margin-bottom:20px; padding-top:48px; padding-bottom:48px; background:linear-gradient(120deg,#241013,#111 68%); border:1px solid #382629; }
.knowledge-invite h2 { max-width:800px; font-size:clamp(2.7rem,5vw,4.8rem); }
.knowledge-invite p:last-child { max-width:760px; color:#bbb; }
.knowledge-hero { min-height:560px; padding-top:130px; display:grid; grid-template-columns:1.1fr .9fr; gap:7vw; align-items:center; }
.knowledge-hero h1 { font-size:clamp(4.5rem,9vw,8rem); line-height:var(--display-leading); }
.knowledge-hero > div:last-child { color:#bbb; font-size:1.1rem; }
.knowledge-hero > div:last-child strong { color:#fff; }
.knowledge-shell { max-width:980px; padding-top:20px; padding-bottom:110px; }
#knowledge-check-app:focus { outline:none; }
.knowledge-progress { margin-bottom:1rem; }
.knowledge-progress > div:first-child { display:flex; justify-content:space-between; gap:1rem; margin-bottom:.7rem; color:#aaa; text-transform:uppercase; font-size:.72rem; font-weight:800; letter-spacing:.1em; }
.knowledge-progress strong { color:#fff; }
.knowledge-progress-track { height:7px; overflow:hidden; background:#292929; }
.knowledge-progress-track span { display:block; height:100%; background:linear-gradient(90deg,var(--red),#ff3943); transition:width .25s ease; }
.knowledge-card { padding:clamp(1.5rem,5vw,3.5rem); }
.knowledge-card h2 { max-width:850px; margin:.4em 0 .7em; font-size:clamp(2.1rem,4.5vw,3.6rem); text-transform:none; line-height:1.05; }
.knowledge-question-heading { margin:.5rem 0 2rem; display:grid; grid-template-columns:minmax(180px,240px) 1fr; gap:clamp(1.3rem,4vw,3rem); align-items:center; }
.knowledge-question-heading img { width:100%; aspect-ratio:4/3; object-fit:cover; object-position:center 30%; filter:grayscale(1) contrast(1.08); }
.knowledge-question-heading h2 { margin:0; }
.knowledge-navigation { display:flex; justify-content:space-between; gap:1rem; margin-top:1.5rem; }
.knowledge-navigation button:disabled { opacity:.35; cursor:not-allowed; }
.knowledge-result { padding:clamp(1.8rem,6vw,4.5rem); background:radial-gradient(circle at 80% 12%,#341117 0,transparent 34%),#121212; border:1px solid #333; }
.knowledge-final-score { margin:1rem 0; display:flex; align-items:end; gap:1rem; }
.knowledge-final-score strong { color:var(--red); font:900 clamp(6rem,18vw,12rem)/.72 'Barlow Condensed',sans-serif; }
.knowledge-final-score span { color:#bbb; text-transform:uppercase; font-weight:800; }
.knowledge-result > h2 { max-width:800px; font-size:clamp(2.5rem,5vw,4.6rem); }
.knowledge-review { margin:2.5rem 0; }
.knowledge-review h3 { margin-bottom:1rem; font-size:2rem; }
.knowledge-review > div { display:grid; grid-template-columns:1fr 1fr; gap:1px; background:#333; }
.knowledge-review a { min-height:90px; padding:1rem 1.2rem; display:flex; flex-direction:column; justify-content:center; color:#fff; background:#171717; text-decoration:none; font-weight:800; }
.knowledge-review a:hover,.knowledge-review a:focus-visible { background:#222; outline:2px solid var(--red); outline-offset:-2px; }
.knowledge-review a span { color:var(--red); text-transform:uppercase; font-size:.68rem; letter-spacing:.1em; }
.knowledge-result-actions { display:flex; flex-wrap:wrap; gap:.8rem; margin-top:2rem; }
.knowledge-privacy,.knowledge-perfect { color:#aaa; }
.knowledge-privacy { margin-top:1.5rem; font-size:.78rem; }
/* END COMPLETE KNOWLEDGE CHECK */

/* POSITIVE CLOSE EXPERIMENT: remove this block and the .positive-close sections to roll back. */
.positive-close { max-width:var(--max); display:grid; grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr); gap:clamp(2rem,6vw,6rem); align-items:center; margin:60px auto; color:#fff; }
.positive-close > * { min-width:0; }
.positive-close-copy .eyebrow { color:var(--green); font:800 clamp(1.45rem,2.4vw,2rem)/1 'Barlow Condensed',sans-serif; letter-spacing:.08em; }
.positive-close-copy h2 { max-width:780px; margin:.22em 0 .38em; color:#fff; font-size:clamp(2.4rem,4.5vw,4.2rem); line-height:var(--display-leading); }
.positive-close-copy > p:last-child { max-width:700px; color:#c8c8c8; font-size:1.08rem; line-height:var(--body-leading); }
.positive-close-image { aspect-ratio:4/3; min-height:350px; position:relative; overflow:visible; }
.positive-close-image img { width:108%; height:108%; margin:-4%; display:block; object-fit:cover; object-position:center; filter:contrast(1.02); -webkit-mask-image:linear-gradient(90deg,transparent 0,#000 10%,#000 90%,transparent 100%),linear-gradient(180deg,transparent 0,#000 8%,#000 90%,transparent 100%); -webkit-mask-composite:source-in; mask-image:linear-gradient(90deg,transparent 0,#000 10%,#000 90%,transparent 100%),linear-gradient(180deg,transparent 0,#000 8%,#000 90%,transparent 100%); mask-composite:intersect; }
/* END POSITIVE CLOSE EXPERIMENT */

/* FINAL IMPACT CLOSE: short, topic-specific statement at the end of each safety page. */
main > .impact-close.section { max-width:var(--max); margin:0 auto 60px; padding:clamp(2rem,5vw,4rem); position:relative; overflow:hidden; text-align:center; color:#fff; background-color:#00543d; background-image:linear-gradient(90deg,var(--green) 0 72%,#fff 72% 75%,var(--red) 75% 100%),radial-gradient(circle at 85% 20%,#ffffff18 0,transparent 32%),linear-gradient(135deg,#006b49,#003d30); background-repeat:no-repeat,no-repeat,no-repeat; background-size:calc(100% - 24px) 7px,100% 100%,100% 100%; background-position:center 12px,center,center; border:1px solid #48b58d; box-shadow:0 22px 60px #0009; }
.impact-close::after { content:""; width:180px; height:180px; position:absolute; right:-70px; bottom:-100px; border:24px solid #ffffff08; border-radius:50%; pointer-events:none; }
.impact-close .eyebrow { margin-bottom:.8rem; color:#bff4dd; }
.impact-close > p:last-child { max-width:940px; margin:0 auto; font:800 clamp(1.65rem,3.4vw,3rem)/1.12 'Barlow Condensed',sans-serif; text-transform:uppercase; }
.campaign-purpose,.leader-invite { display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); gap:clamp(2.5rem,7vw,7rem); align-items:start; }
.campaign-purpose h2,.leader-invite h2 { margin:.15em 0 0; color:#fff; font-size:clamp(2.8rem,5.5vw,5rem); line-height:var(--display-leading); }
.campaign-purpose > div:last-child > p,.leader-invite > div:last-child > p { color:#bbb; font-size:1.08rem; line-height:var(--body-leading); }
.campaign-purpose .campaign-purpose-statement { margin:1.4rem 0; color:#fff; font:800 clamp(1.8rem,3.3vw,2.8rem)/1 'Barlow Condensed',sans-serif; letter-spacing:.015em; }
.campaign-purpose .button { margin-top:1rem; }
.leader-invite { background-color:#111; border:1px solid #333; }
.leader-invite .eyebrow { color:var(--green); }
.leader-invite-actions { display:flex; flex-wrap:wrap; gap:.8rem; margin-top:1.5rem; }
.campaign-origin-strip { max-width:var(--max); margin:0 auto; padding:1.2rem 32px; display:grid; grid-template-columns:minmax(220px,.42fr) minmax(0,1.58fr); gap:clamp(1.5rem,4vw,4rem); align-items:center; position:relative; overflow:hidden; background:#006b49; color:#fff; }
.campaign-origin-strip::after { content:""; position:absolute; inset:0 0 0 auto; width:9px; background:var(--red); }
.campaign-origin-strip strong { font:800 clamp(1.3rem,2.6vw,2rem)/1 'Barlow Condensed',sans-serif; text-transform:uppercase; }
.campaign-origin-strip span { max-width:820px; font-weight:650; line-height:1.45; }
.campaign-start { display:flex; align-items:center; justify-content:space-between; gap:2rem; background:#111; border:1px solid #333; }
.campaign-start h2 { margin:.12em 0 .2em; color:#fff; font-size:clamp(2.5rem,5vw,4.5rem); }
.campaign-start p:last-child { max-width:760px; color:#bbb; }
.campaign-start .button { flex:0 0 auto; }
.mandatory-reporting { background:linear-gradient(135deg,#2b090d,#14090b 62%,#090909); border:1px solid #7c2630; box-shadow:0 24px 65px #0009; }
.mandatory-reporting-heading { max-width:920px; }
.mandatory-reporting-heading h2 { margin:.12em 0 .28em; color:#fff; font-size:clamp(3rem,6vw,5.5rem); line-height:var(--display-leading); }
.mandatory-reporting-heading > p:last-child { color:#ddd; font-size:1.1rem; }
.mandatory-reporting-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1px; margin-top:2.5rem; background:#ffffff20; border:1px solid #ffffff20; }
.mandatory-reporting-grid article { min-width:0; padding:clamp(1.35rem,3vw,2.25rem); background:#120c0d; }
.mandatory-reporting-grid article > span { color:var(--red); font:800 .8rem Inter,sans-serif; letter-spacing:.14em; }
.mandatory-reporting-grid h3 { margin:.55rem 0 .7rem; color:#fff; font-size:clamp(1.55rem,2.5vw,2.15rem); }
.mandatory-reporting-grid p { margin:0; color:#bbb; font-size:.94rem; line-height:1.55; }
.mandatory-reporting-actions { display:flex; flex-wrap:wrap; align-items:center; gap:1.25rem 1.75rem; margin-top:2rem; }
.mandatory-reporting-note { margin:1.5rem 0 0; padding-top:1.25rem; color:#bbb; border-top:1px solid #ffffff24; font-size:.88rem; }
.mandatory-reporting-note strong { color:#fff; }

@media (max-width:1220px) {
  .site-header { height:66px; padding:0 20px; }
  .mobile-nav-toggle { width:44px; height:44px; margin-left:auto; padding:10px; display:grid; align-content:center; gap:5px; color:#fff; background:transparent; border:1px solid #555; cursor:pointer; }
  .mobile-nav-toggle span { display:block; width:100%; height:2px; background:currentColor; transition:transform .2s ease,opacity .2s ease; }
  .mobile-nav-open .mobile-nav-toggle span:nth-child(1) { transform:translateY(7px) rotate(45deg); }
  .mobile-nav-open .mobile-nav-toggle span:nth-child(2) { opacity:0; }
  .mobile-nav-open .mobile-nav-toggle span:nth-child(3) { transform:translateY(-7px) rotate(-45deg); }
  body.mobile-nav-active { overflow:hidden; }
  .site-header nav { display:none; position:fixed; top:66px; right:0; bottom:auto; left:0; max-height:calc(100dvh - 66px); margin-left:0; padding:14px 20px 24px; overflow-y:auto; flex-direction:column; align-items:stretch; gap:0; background:#080808f7; border-bottom:1px solid #444; box-shadow:0 20px 45px #000c; }
  .site-header.mobile-nav-open nav { display:flex; }
  .site-header nav > a,.site-header nav > a:not(.nav-report),.site-header nav > a.nav-donate { display:block; width:100%; padding:1rem .2rem; border-bottom:1px solid #2b2b2b; }
  .site-header .weeks-menu { width:100%; border-bottom:1px solid #2b2b2b; }
  .site-header .weeks-menu summary { padding:1rem .2rem; }
  .site-header .weeks-menu-panel { position:static; width:100%; padding:0 0 .6rem; background:#111; border:0; box-shadow:none; }
  .site-header .weeks-menu-panel a { display:block; }
}

@media (max-width:800px) {
  .site-header { height:66px; padding:0 20px; }
  .mobile-nav-toggle { width:44px; height:44px; margin-left:auto; padding:10px; display:grid; align-content:center; gap:5px; color:#fff; background:transparent; border:1px solid #555; cursor:pointer; }
  .mobile-nav-toggle span { display:block; width:100%; height:2px; background:currentColor; transition:transform .2s ease,opacity .2s ease; }
  .mobile-nav-open .mobile-nav-toggle span:nth-child(1) { transform:translateY(7px) rotate(45deg); }
  .mobile-nav-open .mobile-nav-toggle span:nth-child(2) { opacity:0; }
  .mobile-nav-open .mobile-nav-toggle span:nth-child(3) { transform:translateY(-7px) rotate(-45deg); }
  body.mobile-nav-active { overflow:hidden; }
  .site-header nav { display:none; position:fixed; top:66px; right:0; bottom:auto; left:0; max-height:calc(100dvh - 66px); padding:14px 20px 24px; overflow-y:auto; flex-direction:column; align-items:stretch; gap:0; background:#080808f7; border-bottom:1px solid #444; box-shadow:0 20px 45px #000c; }
  .site-header.mobile-nav-open nav { display:flex; }
  .site-header nav > a,.site-header nav > a:not(.nav-report),.site-header nav > a.nav-donate { display:block; width:100%; padding:1rem .2rem; border-bottom:1px solid #2b2b2b; }
  .site-header .weeks-menu { width:100%; border-bottom:1px solid #2b2b2b; }
  .site-header .weeks-menu summary { padding:1rem .2rem; }
  .site-header .weeks-menu-panel { position:static; width:100%; padding:0 0 .6rem; background:#111; border:0; box-shadow:none; }
  .site-header .weeks-menu-panel a { display:block; }
  .hero { min-height:0; height:auto; padding-top:116px; padding-bottom:2rem; display:flex; flex-direction:column; align-items:stretch; }
  .hero-copy { display:contents; }
  .hero-art { position:relative; right:auto; bottom:auto; order:1; width:min(88vw,480px); margin:1rem auto 0; }
  .hero-actions,.hero .emergency { order:2; }
  .hero-art img { width:100%; max-height:none; object-position:center bottom; }
  .hero-art::after { background:linear-gradient(180deg,#050505 0%,transparent 18%),linear-gradient(0deg,#050505 0%,transparent 8%); }
  .standard { grid-template-columns:1fr; gap:.8rem; }
  .section { padding-top:60px; padding-bottom:60px; }
  .intro,.warning-signs,.report { grid-template-columns:1fr; gap:2.5rem; }
  .multi-route-report .report-actions,.report:not(.multi-route-report) .report-actions { grid-template-columns:1fr; }
  .report:not(.multi-route-report) .us-reporting-label { grid-column:auto; }
  .multi-route-report { padding-top:44px; padding-bottom:44px; }
  .principles { grid-template-columns:1fr; }
  .topic,.topic-featured { grid-column:span 12; min-height:280px; }
  .parents { grid-template-columns:1fr; padding-bottom:0; }
  .parents-art { order:2; }
  .parents-copy { padding-bottom:0; }
  .parent-training,.parent-training.with-art { grid-template-columns:1fr; gap:2rem; }
  .parent-training-cta { justify-content:space-between; width:100%; }
  footer { flex-direction:column; align-items:flex-start; }
  .week-hero { min-height:0; padding-top:100px; padding-bottom:0; align-items:flex-start; flex-direction:column; gap:1.5rem; }
  .week-hero > div:first-child { max-width:100%; }
  .week-hero-art { position:relative; right:auto; bottom:auto; width:min(88vw,480px); margin:0 auto; align-self:center; }
  .week-hero-art img { width:100%; max-height:none; object-position:center bottom; }
  .week-number { right:10px; opacity:.6; }
  .page-navigation { grid-template-columns:1fr; }
  .topic-quiz { grid-template-columns:1fr; gap:2rem; }
  .quiz-intro { position:static; }
  .quiz-option { grid-template-columns:42px 1fr; padding:.75rem; }
  .positive-close { grid-template-columns:1fr; margin-top:30px; margin-bottom:30px; }
  .positive-close-image { width:100%; min-height:280px; }
  .knowledge-invite,.knowledge-hero { grid-template-columns:1fr; }
  .knowledge-invite { gap:1.5rem; }
  .knowledge-invite .button { width:100%; }
  .campaign-start { align-items:flex-start; flex-direction:column; }
  .campaign-start .button { width:100%; }
  .mandatory-reporting-grid { grid-template-columns:1fr; }
  .mandatory-reporting-actions .button { width:100%; }
  .knowledge-hero { min-height:0; padding-top:110px; gap:2rem; }
  .knowledge-review > div { grid-template-columns:1fr; }
  .knowledge-question-heading { grid-template-columns:1fr; }
  .knowledge-question-heading img { aspect-ratio:16/9; }
  .knowledge-navigation { flex-direction:column-reverse; }
  .knowledge-navigation .button { width:100%; }
  .week-intro,.training { grid-template-columns:1fr; gap:2rem; }
  .intro > .intro-copy,.week-intro > div:last-child,.training > div:first-child:has(.eyebrow) + div { padding-top:0; }
  .home-intro .intro-copy { transform:none; }
  .assurances { grid-template-columns:1fr; }
  .donate-content { grid-template-columns:1fr; }
  .expanded-section,.comparison-grid,.role-grid,.related-resources,.visual-feature,.donate-hero,.pledge-hero,.pledge-statement,.pledge-sign,.reading-grid,.global-reporting-holding,.campaign-purpose,.leader-invite,.campaign-origin-strip,.wt-reporting,.reporting-fallback,.reporting-nonnegotiable,.directory-contribute,.glossary-list,.glossary-note,.reporting-journey,.guidance-purpose,.guidance-review,.guidance-sources,.guidance-limits,.guidance-schedule,.guidance-corrections,.privacy-details { grid-template-columns:1fr; }
  .journey-intro { position:static; }
  .guidance-card-grid { grid-template-columns:1fr; }
  .journey-options-grid { grid-template-columns:1fr; }
  .reporting-route-helper { align-items:flex-start; flex-direction:column; }
  .reporting-order,.continental-grid { grid-template-columns:1fr; }
  .reporting-urgent { grid-template-columns:1fr; }
  .process-visual,.report-path { grid-template-columns:repeat(2,1fr); }
  .icon-sequence { grid-template-columns:1fr; }
  .icon-sequence article { min-height:0; }
  .donate-symbol { min-height:220px; }
  .pledge-hero { min-height:0; }
  .pledge-hero > svg { width:180px; height:180px; }
  .pledge-form-heading { position:static; }
  .pledge-share-actions > * { flex:1 1 100%; }
  .form-grid { grid-template-columns:1fr; }
  .form-wide { grid-column:auto; }
  .scenario-grid { grid-template-columns:1fr; }
  .learn-nav { justify-content:flex-start; }
  .poster-page { min-height:0; padding-top:100px; padding-bottom:2rem; display:flex; flex-direction:column; align-items:stretch; }
  .poster-copy { width:100%; display:contents; }
  .poster-copy > * { order:0; }
  .poster-copy > .poster-standard { order:2; }
  .poster-page > img { position:relative; order:1; width:min(88vw,480px); max-width:100%; right:auto; top:auto; margin:1.5rem auto 0; max-height:none; opacity:1; object-position:center top; filter:contrast(1.04) brightness(1.12); z-index:2; }
  body[data-week="7"] .poster-page > img { right:auto; }
  .poster-page::after { background:linear-gradient(180deg,#050505 0%,transparent 12%); }
  .information-page > .section { padding-top:64px; padding-bottom:64px; }
  .information-page > .copy-intro { padding-bottom:16px; }
  .information-page > .copy-intro + .principles { padding-top:18px; }
  .merch-hero,.brand-story,.merch-support,.about-priority { grid-template-columns:1fr; }
  .brand-story-copy,.merch-support-list { padding-top:0; }
  .merch-support-list { background:#333; }
  .merch-hero { min-height:0; padding-top:104px; }
  .merch-mockup { width:min(100%,620px); justify-self:center; }
  .line-meaning { grid-template-columns:1fr; }
  .about-action-grid { grid-template-columns:1fr; }
  .line-meaning article { min-height:0; }
  .cyber-hero { min-height:0; padding-top:104px; padding-bottom:2rem; display:flex; flex-direction:column; gap:0; }
  .cyber-hero-copy { display:contents; }
  .cyber-hero-copy > * { order:0; }
  .cyber-hero-copy > .poster-standard { order:2; }
  .cyber-hero-image { order:1; width:min(88vw,480px); max-width:100%; margin:1.5rem auto 0; aspect-ratio:auto; object-fit:contain; -webkit-mask-image:none; mask-image:none; }
  .cyber-hero-placeholder { width:min(100%,560px); min-height:0; justify-self:center; }
  .online-bullying-feature { grid-template-columns:1fr; }
  .online-bullying-feature img { max-height:none; }
  .cyber-process { grid-template-columns:repeat(2,1fr); }
}
@media (max-width:480px) {
  h1 { font-size:4.6rem; }
  .warning-signs ul { grid-template-columns:1fr; }
  .cyber-hero h1 { font-size:4.2rem; }
  .cyber-process { grid-template-columns:1fr; }
  .merch-support-list { grid-template-columns:1fr; }
}
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } }
