/* Purpose: minimal responsive pages using the app's plum, gold and typography. */
:root{color-scheme:dark;--bg:#29132f;--gold:#e1be47;--text:#f0e5cb;--line:#775b67}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:Optima,Candara,"Segoe UI",sans-serif;font-size:18px;line-height:1.65}.shell{max-width:1200px;padding:0 56px;margin:auto;min-height:100vh;min-height:100svh;display:flex;flex-direction:column}a{color:var(--gold);text-underline-offset:5px}a:hover{color:#fff1bd}a:focus-visible{outline:2px solid var(--gold);outline-offset:6px}h1,h2,p{margin:0}h1,h2{color:var(--gold);font-weight:400;line-height:1.2}.wordmark{font-family:Georgia,serif;font-size:25px;letter-spacing:-.7px;text-decoration:none}footer{display:flex;align-items:center;justify-content:space-between;gap:25px;position:relative;padding:28px 0 40px;margin-top:auto}nav{display:flex;gap:32px}nav a{text-decoration:none;font-size:16px}
/* Flexible space keeps the footer at the bottom and the title in the upper center. */
.coming{flex:1;text-align:center;padding:clamp(80px,20svh,220px) 0 80px}.coming h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(40px,7vw,92px);letter-spacing:-.045em;line-height:1.12;text-wrap:balance}.coming p{font-family:Optima,Candara,"Segoe UI",sans-serif;font-size:clamp(22px,3vw,32px);margin-top:32px;color:var(--text)}
/* Policy sections remain unchanged in a comfortable reading column. */
.policy{width:100%;max-width:780px;margin:50px auto 85px}.back{text-decoration:none;display:inline-flex;align-items:center;gap:9px;font-size:20px;margin-bottom:44px}.eyebrow{font-size:12px;letter-spacing:2.5px;color:var(--gold);margin-bottom:26px}.policy h1{font-size:58px;letter-spacing:-2px}.policy section{margin-top:34px}.policy h2{font-size:26px;margin-bottom:14px}.policy p{overflow-wrap:anywhere}.text-link{font-size:16px}.skip{position:absolute;left:16px;top:-100px;background:var(--bg);padding:10px;z-index:10}.skip:focus{top:8px}
/* Stack footer content on phones, without hiding links or overflowing the viewport. */
@media(max-width:650px){.shell{padding:0 24px}.wordmark{font-size:21px}nav{gap:22px}nav a{font-size:15px}.coming p{margin-top:24px}footer{align-items:flex-start;flex-direction:column;gap:14px;padding:24px 0 30px}.policy{margin-top:30px}.policy h1{font-size:44px}.policy h2{font-size:25px}}

/* Soft full-page pattern stops precisely at the footer. */
body{overflow-x:clip}.coming{position:relative;isolation:isolate}.coming::before{content:"";position:absolute;inset:0 auto 0 50%;width:100vw;transform:translateX(-50%);background:url('/paisley-pattern.svg') top center/580px 520px repeat;opacity:.12;pointer-events:none;z-index:-1}footer::before{content:"";position:absolute;top:0;left:50%;width:100vw;transform:translateX(-50%);border-top:1px solid var(--line)}.back-arrow{font-size:26px;line-height:1}
