:root{--ink:#243d35;--paper:#fcf5e8;--rust:#a33c27;--gold:#f5c856;--muted:#58635b;--line:#d6cdbd}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:18px/1.6 system-ui,-apple-system,sans-serif}a{color:inherit;text-underline-offset:4px}button,input,select,textarea{font:inherit}button,.button{cursor:pointer;border:0;background:var(--ink);color:var(--paper);min-height:48px;padding:12px 24px;border-radius:8px;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;font-weight:700;gap:25px}button:disabled{opacity:.65;cursor:wait}button.secondary{color:var(--ink);background:#e7ddcc}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--rust);outline-offset:4px}[hidden]{display:none!important}.skip{position:absolute;top:-100px;left:10px;background:white;padding:15px;z-index:10}.skip:focus{top:10px}header{max-width:1280px;margin:auto;padding:28px 45px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;align-items:center;gap:12px;font-size:32px;font-weight:850;letter-spacing:-1.8px;text-decoration:none;line-height:1.15}.brand .brew{color:var(--rust)}.brand small{display:block;font-size:9px;font-weight:800;letter-spacing:1.6px;line-height:2}.parent{font-size:14px;font-weight:600}nav{max-width:1190px;margin:auto;display:flex;gap:30px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:9px 0}nav a{min-height:44px;display:flex;align-items:center;text-decoration:none;font-weight:650;font-size:16px;border-bottom:3px solid transparent}nav a[aria-current]{border-color:var(--rust);color:var(--rust)}main{max-width:1280px;margin:auto;padding:45px}.hero{display:grid;grid-template-columns:1.04fr 1fr;gap:70px;align-items:center}.eyebrow{font-size:12px;letter-spacing:2px;font-weight:800;margin:0 0 24px}h1{font:700 clamp(46px,5.1vw,72px)/1.05 Georgia,serif;letter-spacing:-2px;margin:0 0 25px}h1 em{font-weight:500;color:var(--rust)}.lead{font-size:22px;line-height:1.5}p{margin:0 0 20px}.hero-copy>.button{margin:10px 0 15px}.small{font-size:14px;color:var(--muted);line-height:1.5}.tags{display:flex;flex-wrap:wrap;gap:9px;margin-top:25px}.tags span{border:1px solid var(--line);border-radius:30px;padding:5px 12px;font-size:12px;font-weight:700}figure{position:relative;margin:0;padding:14px;background:#fffdf7;transform:rotate(2deg);box-shadow:0 8px 30px #243d3518;border-radius:3px}figure>img{width:100%;height:auto;display:block;border-radius:2px;max-height:580px;object-fit:cover;object-position:50% 50%}figcaption{font-size:12px;padding:14px 2px 2px}.stamp{position:absolute;right:-18px;bottom:55px;background:var(--gold);padding:20px 14px;border-radius:50%;font-size:13px;text-align:center;font-weight:850;line-height:1.2;transform:rotate(-12deg);border:2px dashed var(--ink)}.promise{display:flex;gap:30px;background:#e3eadb;border-radius:12px;padding:35px;margin:65px 0 25px}.promise-icon{font-size:60px;line-height:1}h2{font:700 30px/1.2 Georgia,serif;margin:0 0 17px}.promise p:last-child{margin:0}.notice{padding:25px 30px;border:1px solid var(--line);border-radius:10px;margin-top:30px}.notice p:last-child{margin-bottom:0}.section-head{max-width:740px;margin-bottom:40px}.section-head h1{font-size:64px}.story-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:70px;margin:40px 0}.quote{background:var(--gold);padding:40px;transform:rotate(2deg);border-radius:9px}.quote>span{font-size:85px;line-height:.7;font-family:Georgia,serif}.quote h2{font-size:50px}.quote p{font-size:15px}.neighbours{display:grid;grid-template-columns:1fr 1fr;gap:25px}.neighbours article{border-top:2px solid var(--ink);padding:25px 0 15px}.neighbours article>span:first-child{font-size:12px;letter-spacing:1.5px;font-weight:750}.neighbours h2{margin-top:15px}.neighbours a{display:inline-flex;align-items:center;min-height:44px;margin-right:15px;font-weight:700}.pending{font-size:14px;color:var(--muted)}details{margin-top:24px;max-width:850px}summary{min-height:44px;cursor:pointer;font-weight:700}details p{font-size:16px;margin-top:15px}footer{border-top:1px solid var(--line);max-width:1190px;margin:35px auto 0;padding:35px 0 50px;display:flex;justify-content:space-between;align-items:center;gap:25px;font-size:14px}footer p{margin:0}.footer-brand{font-size:28px}form{max-width:850px;background:#fffaf1;border:1px solid var(--line);border-radius:12px;padding:35px}.form-progress p{font-size:14px;font-weight:750;margin:0 0 8px}progress{width:100%;height:8px;accent-color:var(--rust);margin-bottom:28px}fieldset{border:0;margin:0;padding:0;min-width:0}legend{font:700 30px/1.2 Georgia,serif;margin-bottom:15px;padding:0}label{display:block;font-weight:650;margin:22px 0 7px;font-size:16px}label>span:not(.check span){font-weight:400;font-size:14px;color:var(--muted)}input:not([type=checkbox]),textarea,select{display:block;width:100%;background:#fffef9;color:var(--ink);border:1px solid #969d90;border-radius:6px;min-height:50px;padding:11px 13px;max-width:100%}textarea{min-height:100px;resize:vertical}input[type=checkbox]{accent-color:var(--ink);width:22px;height:22px;flex-shrink:0;margin-top:2px}.check{display:flex;align-items:flex-start;gap:12px;line-height:1.5;font-weight:450;min-height:44px}.choices{display:grid;grid-template-columns:1fr 1fr;gap:10px}.choices .check{padding:12px;background:#eee9da;border-radius:7px;margin:0}.two{display:grid;grid-template-columns:1fr 1fr;gap:20px}.skill{border-top:1px solid var(--line);padding:15px 0}.skill h3{margin:0;font-size:20px}.skill label{margin-top:10px}.form-actions{display:flex;gap:15px;justify-content:space-between;margin-top:30px}.form-actions>button:only-of-type{margin-left:auto}.error{color:#9a2c20;font-weight:650;margin-top:20px}.honey{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.text-link{display:inline-flex;min-height:44px;align-items:center}table{border-collapse:collapse;width:100%;font-size:16px}th,td{padding:12px;text-align:left;border-bottom:1px solid var(--line)}.admin-card{border:1px solid var(--line);border-radius:10px;padding:24px;margin:20px 0;overflow-wrap:anywhere}.admin-card pre{white-space:pre-wrap;font:inherit;font-size:15px}.tools{display:flex;gap:10px;flex-wrap:wrap}.privacy{margin-bottom:20px}.privacy summary{font-size:16px}
@media(max-width:800px){header{padding:20px}.parent{max-width:100px;font-size:12px}nav{margin:0 20px;gap:20px;overflow-x:auto;white-space:nowrap}nav a{font-size:14px}main{padding:30px 20px}.hero{grid-template-columns:1fr;gap:35px}.hero-copy{max-width:580px}h1{font-size:49px;letter-spacing:-1.5px}.eyebrow{font-size:10px;letter-spacing:1.6px}.lead{font-size:20px}figure{max-width:520px;margin:0 auto}figure>img{max-height:530px;object-fit:contain}.stamp{right:-7px;bottom:65px;padding:16px 12px}.promise{padding:24px 20px;gap:15px;margin-top:45px}.promise-icon{font-size:35px}.promise h2{font-size:25px}.promise p{font-size:16px}.notice{padding:22px}.section-head h1{font-size:47px}.story-layout{grid-template-columns:1fr;gap:30px}.quote{padding:32px;max-width:500px}.quote h2{font-size:40px}.neighbours{grid-template-columns:1fr}footer{margin:25px 20px 0;display:block}footer>*{margin-bottom:20px!important}form{padding:23px 17px}.two,.choices{grid-template-columns:1fr}.choices{gap:8px}.choices .check{margin:0}.form-actions{gap:8px}.form-actions button{padding:12px 18px;font-size:16px}input,textarea,select{font-size:16px}legend{font-size:27px}h2{font-size:27px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}

.form-tabs{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 20px}.form-tabs button{font-size:16px;background:#e7ddcc;color:var(--ink)}.form-tabs button[aria-pressed=true]{background:var(--ink);color:var(--paper)}.optional-box{margin:16px 0;border-top:1px solid var(--line);padding-top:12px}.optional-box .choices{margin:12px 0}.form-panel>p{max-width:800px}.word-form{margin-top:25px}.check span{font-weight:450;font-size:16px!important;color:var(--ink)!important}.question{margin-bottom:24px}.question>label:first-child{margin-top:0}#forms .thanks .button{margin-bottom:20px} .field-hint{font-size:14px;color:var(--muted)}
/* Each view is a short part. Scale the whole typography system with access settings. */
:root{font-size:18px;--surface:#fffaf1;--field:#fffef9;--soft:#eee9da;--care:#e3eadb;--button-ink:#fcf5e8;--on-gold:#243d35;--error:#9a2c20}
:root[data-brew=mint]{--ink:#173e32;--paper:#edf7ef;--rust:#8c3020;--gold:#d5e8a8;--muted:#3e6255;--line:#98b3a4;--surface:#f6fff6;--field:#fff;--soft:#d9eadd;--care:#d2e7d8;--button-ink:#fff}
:root[data-brew=earl-grey]{--ink:#342746;--paper:#f4eff9;--rust:#753647;--gold:#e6ceee;--muted:#63536e;--line:#b9aac4;--surface:#fffbff;--field:#fff;--soft:#e8deef;--care:#e5ddee;--button-ink:#fff;--on-gold:#342746}
:root[data-brew=espresso]{--ink:#f3e9d9;--paper:#211e1b;--rust:#ffb69b;--gold:#e7bd65;--muted:#cbbdae;--line:#807165;--surface:#2d2723;--field:#211e1b;--soft:#3d342e;--care:#343d31;--button-ink:#211e1b;--on-gold:#211e1b;--error:#ffb69b}
:root[data-brew=contrast]{--ink:#fff;--paper:#000;--rust:#ffe500;--gold:#ffe500;--muted:#fff;--line:#fff;--surface:#000;--field:#000;--soft:#202020;--care:#000;--button-ink:#000;--on-gold:#000;--error:#ffe500}
:root[data-size=large]{font-size:22px}:root[data-size=larger]{font-size:26px}
body{font-size:1rem}.brand{font-size:1.78rem}.brand small{font-size:.56rem}.parent{font-size:.8rem}nav a{font-size:.9rem}.eyebrow{font-size:.7rem}.lead{font-size:1.22rem}h1,.section-head h1{font-size:clamp(2.4rem,5vw,4rem)}h2,legend{font-size:1.67rem}.small,.field-hint,.pending,figcaption{font-size:.89rem}.tags span{font-size:.8rem}.quote h2{font-size:2.78rem}.quote p,footer{font-size:.89rem}details p,summary,label,.check span,.form-tabs button,.privacy summary,.form-actions button,input,textarea,select{font-size:1rem!important}.brand small{letter-spacing:.06em}.section-head{margin-bottom:24px}form{margin-top:18px}.question{margin:12px 0 18px}.question>summary{display:list-item}.question .explain-button{font-size:.85rem;min-height:44px;padding:6px 12px;margin:6px 0;background:var(--soft);color:var(--ink)}.question>label{margin-bottom:0}.field-hint{margin:4px 0 12px}.choices .check{padding:9px 12px;gap:10px;background:var(--soft)}.choice-pager{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:12px;flex-wrap:wrap}.choice-pager button{padding:8px 12px;font-size:.85rem}.access-bar,.access-panel,.speech-status{max-width:1190px;margin:14px auto}.access-bar{display:flex;gap:12px;flex-wrap:wrap}.access-bar button{padding:9px 16px;font-size:.9rem}.access-panel{border:1px solid var(--line);border-radius:12px;padding:20px;background:var(--surface)}.access-settings{display:grid;grid-template-columns:1fr 1fr;gap:24px}.access-settings label{margin:0 0 16px}.speech-status:empty{display:none}.tools button{padding:10px 16px}.page-pager{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-top:28px;padding-top:20px;border-top:1px solid var(--line)}.page-pager button{padding:10px 16px;font-size:.9rem}.page-pager .small{margin:0}.draft-tools{border:1px solid var(--line);padding:14px 18px;border-radius:10px;background:var(--surface)}.draft-status{margin:20px 0 12px}.word-form>.small{margin:15px 0 0}.promise{margin:15px 0 20px;background:var(--care)}form,figure{background:var(--surface)}input:not([type=checkbox]),textarea,select{background:var(--field);border-color:var(--line)}button.secondary,.form-tabs button{background:var(--soft);color:var(--ink)}button,.button,.form-tabs button[aria-pressed=true]{color:var(--button-ink);background:var(--ink)}.quote,.stamp{color:var(--on-gold)}.error{color:var(--error)}.skip{background:var(--surface)}.mobile-picture{display:none}.hero{gap:45px}.hero p{margin-bottom:16px}.hero figure>img{max-height:480px}.tags{margin-top:16px}.view{scroll-margin-top:15px}dialog{background:var(--surface);color:var(--ink);border:2px solid var(--line);border-radius:14px;padding:24px;max-width:650px;width:calc(100% - 32px);max-height:85dvh;overflow:auto}dialog::backdrop{background:#0009}dialog p{line-height:1.65}button[disabled]{cursor:default}#welcome .mobile-picture figure{transform:none}.notice{overflow-wrap:anywhere}.view h1{overflow-wrap:break-word}:focus-visible{outline:3px solid var(--rust);outline-offset:4px}
@media(max-width:800px){header{padding:16px 20px}.brand{font-size:1.6rem}.parent{font-size:.75rem}nav{gap:18px}nav a{font-size:.88rem}main{padding:22px 20px}.hero{gap:12px}.hero-copy>p:not(.eyebrow){font-size:1rem}.hero-copy .lead{font-size:1.1rem}.hero-copy h1{margin-bottom:18px}.eyebrow{font-size:.65rem;letter-spacing:.1em;margin-bottom:14px}h1,.section-head h1{font-size:2.5rem}.desktop-figure{display:none}.mobile-picture{display:block;margin:0}.mobile-picture figure{margin-top:16px}.mobile-picture img{height:320px;object-fit:contain}.tags{display:none}.access-bar,.access-panel,.speech-status{margin:12px 20px}.access-settings{grid-template-columns:1fr;gap:0}.promise{padding:20px;gap:12px}.promise-icon{display:none}.promise p{font-size:1rem}.story-layout{margin:20px 0;gap:16px}.quote{padding:24px}.quote h2{font-size:2rem}.neighbours{gap:12px}.neighbours article{padding:14px 0}.neighbours article p{margin-bottom:6px}.section-head{margin-bottom:20px}.word-form{padding:20px 16px}.form-tabs{gap:7px}.form-tabs button{font-size:.89rem!important;padding:9px 12px}.form-actions{flex-wrap:wrap;margin-top:20px}.form-actions button{font-size:.95rem!important}footer{padding:20px 0;margin-top:20px}.footer-brand{font-size:1.6rem}.page-pager button{font-size:.85rem}.page-pager{gap:10px}.page-pager span{order:3;width:100%;text-align:center}.choices{gap:8px}.check{margin-top:14px}.brand small{font-size:.5rem}.quote>span{display:none}}
@media(prefers-reduced-motion:reduce){figure,.quote,.stamp{transform:none}}

/* Word Brew's shared table: warm brick colours and readable, tactile controls. */
:root[data-brew=blocks]{--ink:#20374b;--paper:#f7f1e7;--rust:#70447f;--gold:#e6be6b;--muted:#535b60;--line:#b9a78d;--surface:#fffaf1;--field:#fffdf8;--soft:#e8dfcf;--care:#e1eadc;--button-ink:#fffaf1;--on-gold:#20374b}
[data-brew=blocks] h1,[data-brew=blocks] h2,[data-brew=blocks] legend{font-family:system-ui,-apple-system,sans-serif;font-weight:850;letter-spacing:-.04em}
[data-brew=blocks] h1 em{font-style:normal}
[data-brew=blocks] button,[data-brew=blocks] .button{border-radius:10px;box-shadow:0 4px 0 #142536;padding:12px 20px;gap:12px}
[data-brew=blocks] button.secondary{box-shadow:0 4px 0 #b9a78d}
[data-brew=blocks] button:active,[data-brew=blocks] .button:active{transform:translateY(2px);box-shadow:0 2px 0 #142536}
[data-brew=blocks] .tags span{border:0;border-radius:7px;background:#dce7d8;color:#284c36;padding:8px 12px;box-shadow:0 3px 0 #adc3a7;font-size:.89rem}
[data-brew=blocks] .tags span:nth-child(2){background:#e9ddef;color:#543262;box-shadow:0 3px 0 #c9b2d2}
[data-brew=blocks] .tags span:nth-child(3){background:#dde5ed;color:#20374b;box-shadow:0 3px 0 #afc1d2}
[data-brew=blocks] figure{transform:none;border:2px solid var(--line);border-radius:18px;box-shadow:0 7px 0 #d8c7ae;padding:10px}
[data-brew=blocks] .notice,[data-brew=blocks] .draft-tools,[data-brew=blocks] form{border:2px solid var(--line);border-radius:14px}
.hero figure>img{object-fit:contain;max-height:520px;border-radius:10px}
.hero .stamp{display:none}
@media(max-width:800px){.hero{display:flex;flex-direction:column;gap:22px}.hero .desktop-figure{display:block;order:-1;width:100%;max-width:420px;transform:none;padding:8px}.hero .desktop-figure>img{height:220px;width:100%;object-fit:contain}.hero figcaption{text-align:center;font-size:.89rem;padding:8px 0 0}.hero-copy h1{font-size:2.2rem}.hero-copy{width:100%}}

/* Keep the next part reachable on phones without clipping enlarged text. */
@media(max-width:980px){
 body{padding-bottom:calc(8rem + env(safe-area-inset-bottom));overflow-wrap:anywhere}
 .page-pager{position:fixed;z-index:35;bottom:0;left:0;right:0;margin:0;padding:.6rem .8rem calc(.6rem + env(safe-area-inset-bottom));background:var(--paper,var(--bg,#fffdf8));border-top:2px solid var(--line);box-shadow:0 -3px 14px #0001;display:grid;grid-template-columns:1fr 1fr;gap:.3rem}
 .page-pager button{min-height:48px;min-width:0;padding:.5rem;font-size:1rem}
 .page-pager .small,.page-pager span{grid-column:1/-1;order:3;text-align:center;width:100%;font-size:1rem}
 main{padding:1rem}.part h1,.view h1{font-size:clamp(2rem,8vw,2.7rem)}
 #brew-table figure{margin:1rem 0;transform:none;width:100%;max-width:450px}
 #brew-table img{width:100%;height:auto;max-height:55dvh;object-fit:contain}
 #brew-table figcaption{font-size:1rem}
 #brew-table .stamp{display:none}
}
@media print{.page-pager{display:none}}
