@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,500;1,500&display=swap');
:root{color-scheme:light;--ink:#21201e;--cream:#f7f5f0;--line:#d9d6d0;--burgundy:#682d3b}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font:16px/1.65 'DM Sans',sans-serif}a{color:inherit;text-underline-offset:4px}button{font:inherit}a:focus-visible,summary:focus-visible{outline:2px solid var(--burgundy);outline-offset:5px}header{height:82px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(20px,5vw,80px);border-bottom:1px solid var(--line);background:var(--cream);position:sticky;top:0;z-index:10}.logo{display:inline-flex;align-items:center;flex-shrink:0;line-height:1}.logo img{display:block;width:142px;height:auto;max-width:100%}nav{display:flex;gap:24px;align-items:center}nav a{text-decoration:none;font-size:14px;font-weight:600}nav a[aria-current]{text-decoration:underline;text-underline-offset:6px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 24px;background:var(--ink);color:#fff;text-decoration:none;border:1px solid var(--ink);font-size:14px;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.btn:hover{background:var(--burgundy);border-color:var(--burgundy)}.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:12px;font-weight:700}.visit-hero{max-width:1440px;margin:auto;padding:90px clamp(24px,6vw,88px);display:grid;grid-template-columns:1.25fr 1fr;gap:7vw;align-items:center}h1{font:500 clamp(46px,5.2vw,78px)/1.1 'Playfair Display',serif;letter-spacing:-.045em;margin:24px 0}h1 em{font-weight:500}.lead{font-size:18px;max-width:550px;margin:0 0 28px}.actions{display:flex;align-items:center;flex-wrap:wrap;gap:24px}.text-link{font-size:14px;font-weight:700}.visit-note{font-size:13px;margin-top:24px;color:#635e58}.hours-card{padding:38px;background:var(--burgundy);color:#fff8f1}.hours-card h2{font:500 42px/1.15 'Playfair Display',serif;margin:15px 0 28px}.hours{margin:0}.hours div{display:flex;justify-content:space-between;gap:16px;border-bottom:1px solid #ffffff3d;padding:13px 0}.hours dd{margin:0;white-space:nowrap;font-weight:600}.hours-card p{font-size:13px;line-height:1.65;margin:22px 0 0;opacity:.9}.find-us{display:grid;grid-template-columns:1fr 1fr;gap:10vw;padding:80px clamp(24px,8vw,120px);background:#fff;border-top:1px solid var(--line)}h2{font:500 clamp(36px,4vw,54px)/1.15 'Playfair Display',serif;letter-spacing:-.03em;margin:16px 0 28px}address{font-style:normal;font-size:20px;line-height:1.65;margin-bottom:26px}.arrival article+article{border-top:1px solid var(--line);padding-top:20px;margin-top:25px}h3{font:500 28px/1.2 'Playfair Display',serif;margin:0 0 14px}p{margin:0 0 18px}.arrival a{overflow-wrap:anywhere}.prepare{padding:85px clamp(24px,8vw,120px)}.section-head{text-align:center;margin-bottom:48px}.prepare-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px}.step{display:block;color:var(--burgundy);font-size:13px;letter-spacing:.12em;border-top:1px solid var(--line);padding:18px 0 24px}.prepare-grid p{font-size:15px}.visit-faq{background:#fff;padding:75px max(24px,calc((100% - 850px)/2))}details{border-bottom:1px solid var(--line);padding:20px 0}summary{font-weight:600;cursor:pointer;min-height:28px}details p{padding-top:16px;margin-bottom:0}.closing{text-align:center;padding:85px 24px;background:#eadfe0}.closing h2{font-style:italic}footer{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:32px clamp(20px,5vw,80px);font-size:13px}footer a{overflow-wrap:anywhere}.mobile-book{display:none}@media(max-width:800px){.visit-hero{grid-template-columns:1fr;padding:55px 24px;gap:34px}.visit-copy{max-width:620px}.hours-card{padding:30px}.find-us{grid-template-columns:1fr;gap:40px;padding:55px 24px}.prepare{padding:60px 24px}.prepare-grid{grid-template-columns:1fr;gap:20px}.section-head{text-align:left;margin-bottom:30px}.visit-faq{padding:55px 24px}.closing{padding:60px 24px}footer{align-items:flex-start;flex-direction:column;padding-bottom:110px}.mobile-book{display:block;position:fixed;bottom:0;left:0;right:0;background:var(--cream);padding:10px 12px calc(10px + env(safe-area-inset-bottom));border-top:1px solid var(--line);z-index:22}.mobile-book .btn{width:100%}.logo img{width:122px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
