:root{--ink:#24201e;--paper:#fffdf8;--wine:#762b35;--sand:#f1e8dc;--line:#d8cec2}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 Arial,sans-serif}a{color:var(--wine)}header{padding:1rem max(1.25rem,calc((100vw - 72rem)/2));border-bottom:1px solid var(--line);display:flex;gap:1rem;align-items:center;justify-content:space-between;flex-wrap:wrap}.brand{text-decoration:none;color:var(--ink);font:1.35rem Georgia,serif;letter-spacing:.06em}.brand b,.eyebrow{color:var(--wine)}.brand small{display:block;font:600 .55rem Arial,sans-serif;letter-spacing:.18em;margin-top:.25rem}nav{display:flex;gap:1rem;flex-wrap:wrap}nav a{text-decoration:none;font-weight:700}.nav-toggle{display:none}.inner{max-width:72rem;margin:auto;padding:2rem 1.25rem 4rem}.breadcrumbs{font-size:.9rem;margin-bottom:1.5rem}.page-title{border-bottom:3px solid var(--wine);margin-bottom:1.8rem}h1,h2{font-family:Georgia,serif;line-height:1.15}h1{font-size:clamp(2.3rem,6vw,4.25rem);margin:.2em 0 .5em}h2{font-size:clamp(1.6rem,3vw,2.25rem);margin-top:2.2rem}.hero{display:grid;grid-template-columns:1fr 1fr;gap:2rem;padding:2rem;background:var(--sand)}.visuals{display:grid;grid-template-columns:1fr 1fr;gap:.65rem}.visuals figure{margin:0}.visuals img{display:block;width:100%;height:auto}.button{display:inline-block;padding:.7rem 1rem;background:var(--wine);color:white;text-decoration:none;font-weight:bold}.secondary{background:transparent;color:var(--wine);border:1px solid var(--wine)}.cards{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(15rem,1fr));gap:1rem}.cards li{border:1px solid var(--line);padding:1rem;background:white}.cards a{text-decoration:none}.cards strong,.cards span{display:block}.cards span{color:#4e4741;font-size:.9rem;margin-top:.35rem}article img{max-width:100%;height:auto}.contact-line{font-size:1.2rem;font-weight:bold}footer{padding:2rem max(1.25rem,calc((100vw - 72rem)/2));background:var(--ink);color:#fff;display:grid;grid-template-columns:2fr 1fr;gap:1rem}footer a,footer .brand{color:#fff}.notice{grid-column:1/-1;border-top:1px solid #695f59;padding-top:1rem;font-size:.85rem}@media(max-width:42rem){.hero{grid-template-columns:1fr}.nav-toggle{display:block}header>nav{display:none;flex-basis:100%;flex-direction:column}header>nav.open{display:flex}footer{grid-template-columns:1fr}}