:root{color-scheme:dark;--bg:#0f1712;--surface:#17221b;--ink:#e8e6da;--muted:#9aa596;--line:#26352b;--accent:#e8b777;--accent-ink:#14201a;--accent-hover:#f2c98f;--highlight:#e8b777;--focus:#e8b777;--shadow:#0008;--serif:Georgia,'Times New Roman',serif;font-family:'Segoe UI',system-ui,Arial,sans-serif;color:var(--ink);background:var(--bg);font-synthesis:none}
/* Dark is the page's own look; a visitor whose system asks for light gets the day palette and a daytime house. */
@media(prefers-color-scheme:light){:root{color-scheme:light;--bg:#f6f5ee;--surface:#fffdf5;--ink:#243f32;--muted:#637064;--line:#dcded2;--accent:#264d3b;--accent-ink:#f6f5ee;--accent-hover:#183d2a;--highlight:#a76e30;--focus:#b66a2a;--shadow:#3543301a}
.sky{fill:#e1e7d7}
.sky-grid{stroke:#ced6c6}
.stars,.moon-shade,.glow{display:none}
.moon{fill:#edb86f}
.sparkle{stroke:#54735c}
.ground{fill:#c6d0b8}
.walk{fill:#eee5cb}
.walk-line{stroke:#c7c7ac}
.wall-top{stop-color:#f0e8cc}
.wall-bottom{stop-color:#d9d7b8}
.eave{fill:#babda3}
.smoke{stroke:#adbca6}
.step{fill:#b0b99e}
.leaf-a{fill:#708a61}
.leaf-b{fill:#5e7b54}
.leaf-c{fill:#7e976d}
.leaf-d{fill:#8b9f73}
.bush-a{fill:#638158}
.bush-b{fill:#7b9265}
.tuft{stroke:#829472}
}
*{box-sizing:border-box}
body{margin:0;min-height:100vh;min-height:100svh;display:flex;flex-direction:column;background:var(--bg)}
a{color:inherit;-webkit-tap-highlight-color:transparent}
a:focus-visible{outline:3px solid var(--focus);outline-offset:5px;border-radius:4px}
h1,p{margin-top:0}
.wrap{max-width:1180px;margin-inline:auto;width:calc(100% - 96px)}
.skip{position:fixed;top:-80px;left:20px;padding:12px;background:var(--surface);color:var(--ink);z-index:10}
.skip:focus{top:10px}
.header{height:84px;display:flex;align-items:center}
.brand{display:flex;align-items:center;gap:11px;font-size:15px;font-weight:750;letter-spacing:1.1px;text-decoration:none;white-space:nowrap}
.brand-mark{display:block;flex:none;width:34px;height:34px}
.hero{flex:1;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:40px;padding-block:16px 32px}
.eyebrow{display:flex;align-items:center;gap:10px;font-size:11px;font-weight:700;letter-spacing:1.7px;text-transform:uppercase;color:var(--highlight);margin-bottom:22px}
.eyebrow span{font-size:20px;font-weight:400}
h1{font-size:clamp(48px,5.4vw,80px);line-height:1.03;font-weight:600;letter-spacing:-3px;margin-bottom:24px}
.serif{font-family:var(--serif);font-style:italic;font-weight:400;letter-spacing:-.05em;white-space:nowrap;color:var(--highlight)}
.hero-intro{max-width:540px;font-size:17px;line-height:1.7;color:var(--muted);margin-bottom:22px}
.claims{list-style:none;margin:0 0 30px;padding:0;display:grid;gap:12px;max-width:520px}
.claims li{display:flex;gap:12px;align-items:flex-start}
.claim-icon{flex:none;width:20px;height:20px;margin-top:2px;fill:none;stroke:var(--highlight);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.claims p{margin:0;font-size:14.5px;line-height:1.6;color:var(--muted)}
.claims strong{color:var(--ink);font-weight:600}
.button{display:inline-flex;align-items:center;gap:28px;padding:16px 22px;border-radius:8px;background:var(--accent);color:var(--accent-ink);font-size:15px;font-weight:600;text-decoration:none;transition:background .16s,transform .16s}
.button:hover{background:var(--accent-hover);transform:translateY(-2px)}
.button span{font-size:19px;line-height:1}
.access-info{font-size:12px;line-height:1.6;color:var(--muted);margin:14px 0 0}
.hero-art{position:relative;justify-self:center;width:100%;max-width:560px;max-width:min(560px,calc((100vh - 210px) * 1.1));max-width:min(560px,calc((100svh - 210px) * 1.1))}
.house{display:block;width:100%;height:auto}
.art-message{position:absolute;bottom:9%;left:1%;display:flex;gap:12px;align-items:flex-start;background:var(--surface);border:1px solid var(--line);padding:14px 18px;border-radius:12px;box-shadow:0 14px 32px var(--shadow);transform:rotate(-3deg)}
.mini-chip{display:block;flex:none;width:30px;height:30px}
.message-name{display:block;font-size:9px;letter-spacing:1.2px;font-weight:700;padding-block:1px 6px}
.message-name span{font-size:7px;letter-spacing:.7px;color:var(--muted);margin-left:7px}
.art-message p{font-size:13px;line-height:1.6;margin:0}
.footer{display:flex;justify-content:space-between;align-items:flex-start;gap:8px 40px;border-top:1px solid var(--line);padding-block:20px 26px;font-size:12px;line-height:1.6;color:var(--muted)}
.fine-print{margin:0;max-width:760px}
.footer>span{white-space:nowrap}
/* A short laptop screen still holds the whole page. */
@media(min-width:861px) and (max-height:780px){.header{height:64px}
.eyebrow{margin-bottom:16px}
h1{font-size:clamp(44px,min(5.4vw,9.5vh),80px);margin-bottom:18px}
.hero-intro{margin-bottom:16px}
.claims{gap:8px;margin-bottom:22px}
.claims p{font-size:14px}
.footer{padding-block:14px 18px}
}
@media(max-width:860px){.wrap{width:calc(100% - 40px)}
.header{height:68px}
.hero{grid-template-columns:1fr;gap:28px;padding-block:20px 36px}
h1{font-size:clamp(44px,12vw,64px);letter-spacing:-2px}
.hero-intro{font-size:16px}
.hero-art{max-width:480px}
.art-message{padding:12px 14px}
.art-message p{font-size:12px}
.footer{flex-direction:column}
.footer>span{white-space:normal}
}
@media(prefers-reduced-motion:reduce){*{transition:none!important}
}
