:root{--color-primary: #2E6B8A;--color-secondary: #7B6B9E;--color-bg: #F8F6F2;--color-surface: #EEEBE5;--color-text: #2C2C2C;--color-muted: #6B6B6B;--color-primary-dark: #245570;--font-heading: "Playfair Display", Georgia, serif;--font-body: "Lato", system-ui, sans-serif;--radius: 14px;--shadow: 0 6px 24px rgb(44 44 44 / .08)}*,*:before,*:after{box-sizing:border-box}*{margin:0;padding:0}html{scroll-behavior:smooth;scroll-padding-top:5rem}img{display:block;max-width:100%;height:auto}body{background-color:var(--color-bg);color:var(--color-text);font-family:var(--font-body);font-size:1.0625rem;line-height:1.65}.container{width:min(1040px,calc(100% - 2.5rem));margin:0 auto}h1,h2,h3{font-family:var(--font-heading);color:var(--color-secondary);line-height:1.2}h1{font-size:clamp(2.2rem,5vw,3.4rem);margin-bottom:1rem}h2{font-size:clamp(1.5rem,3vw,2rem);margin-bottom:.75rem}h3{font-size:1.25rem;margin-bottom:.5rem}p,address,table{margin-bottom:1rem}address{font-style:normal}a{color:var(--color-primary);text-decoration:none}a:hover{text-decoration:underline}:focus-visible{outline:3px solid var(--color-secondary);outline-offset:3px;border-radius:4px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.skip-link{position:absolute;left:1rem;top:-4rem;z-index:10;background:var(--color-primary);color:#fff;padding:.5rem 1rem;border-radius:6px}.skip-link:focus{top:1rem}.site-header{background:#fff;border-bottom:1px solid var(--color-surface);position:sticky;top:0;z-index:5}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.6rem 0;flex-wrap:wrap}.brand{display:flex;align-items:center;gap:.75rem;color:inherit}.brand:hover{text-decoration:none}.brand img{width:56px;height:56px}.brand-text{display:flex;flex-direction:column;line-height:1.15}.brand-name{font-family:var(--font-heading);font-weight:700;font-size:1.25rem;color:var(--color-secondary)}.brand-place{font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;color:var(--color-muted)}.site-header nav ul{display:flex;align-items:center;gap:1.5rem;list-style:none;flex-wrap:wrap}.site-header nav a{text-transform:uppercase;letter-spacing:.06em;font-size:.85rem;font-weight:700;color:var(--color-text);padding:.4rem 0;border-bottom:2px solid transparent}.site-header nav a:hover{color:var(--color-primary);text-decoration:none}.social{display:flex;gap:.9rem;font-size:1.25rem}.site-header .social{list-style:none}.site-header .social a{font-size:1.2rem}.hero{background:linear-gradient(135deg,#fff 0%,var(--color-surface) 100%);padding:clamp(2.5rem,7vw,5rem) 0}.hero-inner{display:grid;grid-template-columns:1.3fr 1fr;align-items:center;gap:2.5rem}.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:.85rem;font-weight:700;color:var(--color-primary);margin-bottom:.5rem}.lead{font-size:1.25rem;color:var(--color-muted);max-width:36em}.hero-logo{width:min(100%,360px);justify-self:center;filter:drop-shadow(var(--shadow))}.actions{display:flex;gap:.8rem;flex-wrap:wrap;margin-top:1.5rem}.button{display:inline-block;background:var(--color-primary);color:#fff;font-weight:700;padding:.75rem 1.5rem;border-radius:999px;border:2px solid var(--color-primary);transition:background .15s,transform .15s}.button:hover{background:var(--color-primary-dark);border-color:var(--color-primary-dark);text-decoration:none;transform:translateY(-1px)}.button.ghost{background:transparent;color:var(--color-primary)}.button.ghost:hover{background:var(--color-primary);color:#fff}main>section.container{padding:3rem 0 0}main>section.container:last-child{padding-bottom:3rem}.about-text{columns:2 22rem;column-gap:2.5rem}.about-text p{margin-bottom:1rem}.about-text p:last-child{margin-bottom:0}.split{display:grid;grid-template-columns:1fr 1fr;gap:2.5rem;align-items:start}.card{background:#fff;border-radius:var(--radius);padding:1.75rem;box-shadow:var(--shadow)}.note{font-size:.9rem;color:var(--color-muted);margin:1rem 0 0}.map{width:100%;height:380px;border:0;border-radius:var(--radius);box-shadow:var(--shadow);margin-top:2.5rem}.hours{width:100%;max-width:360px;border-collapse:collapse}.hours th,.hours td{padding:.4rem .5rem;border-bottom:1px solid var(--color-surface);text-align:left;font-weight:400}.hours td{text-align:right}.hours th{font-weight:700}.hours .closed td{color:var(--color-muted)}.hours .today{background:color-mix(in srgb,var(--color-secondary) 12%,transparent)}.hours .today th:after{content:" · today";font-weight:400;font-size:.8rem;color:var(--color-secondary)}.hours:last-child,.card .hours{margin-bottom:0}.site-footer{background:var(--color-primary);color:#fff;padding:2.5rem 0 1rem;margin-top:3rem}.site-footer h2{color:#fff;font-size:1.3rem}.site-footer a{color:#fff;text-decoration:underline}.site-footer .hours th,.site-footer .hours td{border-color:#fff3}.site-footer .hours .closed td{color:#ffffffbf}.site-footer .hours .today{background:#ffffff24}.site-footer .hours .today th:after{color:#fff}.footer-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem}.copyright{text-align:center;font-size:.85rem;opacity:.85;margin:2rem 0 0}@media(max-width:720px){html{scroll-padding-top:1rem}.hero-inner,.split,.footer-grid{grid-template-columns:1fr}.hero-logo{order:-1;width:180px}.header-inner{justify-content:center}.site-header nav ul{justify-content:center;gap:1rem}.site-header{position:static}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}
