:root{--cream:#f7f2e8;--ink:#303624;--red:#6d1c23;--muted:#68685b;--line:#d8d1c0}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--cream);color:var(--ink);font-family:Arial,sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}a:focus-visible,button:focus-visible{outline:3px solid #aa762f;outline-offset:5px}.skip{position:absolute;left:20px;top:-100px;z-index:10;background:white;padding:10px}.skip:focus{top:10px}.announcement{background:var(--ink);color:var(--cream);text-align:center;font-size:10px;letter-spacing:2px;padding:9px 15px}header{display:flex;align-items:center;justify-content:space-between;max-width:1360px;margin:auto;padding:19px 5%;gap:30px;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:12px;line-height:1.1;color:var(--red);font-family:Georgia,serif;font-size:23px}.brand img{width:74px;height:74px;object-fit:contain;border-radius:50%}.brand small{display:block;font:11px Arial;letter-spacing:5px;margin-top:8px;color:var(--ink)}nav{display:flex;align-items:center;gap:28px;font-size:12px}nav a:hover,.text-link:hover{text-decoration:underline}.nav-cta{border:1px solid var(--ink);padding:10px 17px}.menu{display:none}.hero{max-width:1360px;margin:auto;display:grid;grid-template-columns:1fr 1fr;min-height:680px;padding:35px 5% 55px;gap:50px;align-items:center}.eyebrow{font-size:10px;font-weight:600;letter-spacing:2px;line-height:1.8;color:var(--red);margin:0 0 22px}h1,h2,h3{font-family:Georgia,serif;font-weight:400;line-height:1.08;letter-spacing:-1.7px;margin:0}h1{font-size:clamp(64px,6.5vw,100px)}em{color:var(--red);font-weight:400}h2{font-size:clamp(38px,4vw,58px)}h3{font-size:31px;letter-spacing:-.7px}.hero-copy>p:not(.eyebrow){max-width:400px;color:var(--muted);font-size:14px}.hero-copy .intro{font:23px/1.5 Georgia,serif!important;color:var(--ink)!important;margin:25px 0 16px}.actions{display:flex;align-items:center;gap:26px;flex-wrap:wrap;margin-top:30px}.button{display:inline-flex;justify-content:space-between;gap:30px;background:var(--red);color:var(--cream);padding:14px 21px;font-size:12px}.button:hover{background:#4f1118}.text-link{font-size:12px;font-weight:600}.hero-foot{margin-top:48px;display:flex;gap:15px;align-items:center;font-size:8px;letter-spacing:1.5px}.hero-foot span{color:var(--red);font-size:21px}.hero-photo{position:relative;padding:0 12px 20px 0}.hero-photo:after{content:'';position:absolute;inset:20px 0 0 20px;border:1px solid #b7ae95;z-index:-1}.hero-photo>img{display:block;width:100%;height:610px;object-fit:cover;object-position:50% 46%;border-radius:180px 180px 0 0}.photo-note{position:absolute;right:-15px;bottom:46px;background:var(--cream);transform:rotate(-5deg);border:1px solid var(--line);padding:20px 27px;font:23px/1.3 Georgia,serif;box-shadow:0 5px 20px #0001}.ribbon{border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;justify-content:center;align-items:center;gap:50px;padding:19px;font:21px Georgia,serif}.ribbon b{color:var(--red);font-weight:400}.section{max-width:1200px;margin:auto;padding:95px 45px}.story{display:grid;grid-template-columns:1fr 1fr;gap:85px;align-items:center}.story-image img{width:100%;height:520px;object-fit:cover;display:block}.image-caption{display:block;font:17px Georgia,serif;text-align:center;padding:16px;border-bottom:1px solid var(--line)}.story-copy>p:not(.eyebrow){font-size:14px;color:var(--muted);max-width:425px}.story-copy h2{margin-bottom:30px}.story-logo{width:120px;border-radius:50%;margin-top:17px}.events{border-top:1px solid var(--line)}.section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:35px}.section-head>p{font-size:13px;color:var(--muted);margin:0}.event-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.event-card{border:1px solid var(--line);background:#fcf9f1}.poster{display:block;border:0;background:#ddd;padding:0;position:relative;width:100%;height:290px;overflow:hidden}.poster img{width:100%;height:100%;object-fit:cover;object-position:50% 35%;display:block;transition:transform .4s}.poster:hover img{transform:scale(1.025)}.poster>span{position:absolute;bottom:12px;right:12px;padding:6px 13px;background:var(--cream);font-size:11px}.sold{position:absolute;left:15px;top:15px;color:white;background:var(--red);padding:5px 14px;font-size:10px;letter-spacing:2px}.event-body{padding:29px}.event-body .eyebrow{font-size:9px;margin-bottom:14px;letter-spacing:1.2px}.event-body>p:not(.eyebrow){color:var(--muted);font-size:13px}.event-bottom{border-top:1px solid var(--line);padding-top:21px;margin-top:23px;display:flex;justify-content:space-between;align-items:center;gap:15px}.event-bottom>span{font:23px Georgia,serif}.event-bottom small{font:10px Arial;color:var(--muted)}.sold-text{font-size:11px;color:var(--red)}.event-note{text-align:center;color:var(--muted);font-size:12px;margin-top:27px}.event-note a{text-decoration:underline}.gallery{padding-top:15px}.gallery>p:not(.eyebrow){font-size:14px;color:var(--muted)}.gallery-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px;margin-top:35px}.gallery-grid button{padding:0;background:transparent;text-align:left;border:0}.gallery-grid img{display:block;width:100%;height:420px;object-fit:cover;object-position:center 40%}.gallery-grid span{display:block;padding:14px 0;border-bottom:1px solid var(--line);font:18px Georgia,serif}.shop{background:var(--ink);color:var(--cream);padding:70px 8%;display:flex;justify-content:center;align-items:center;gap:110px}.shop .eyebrow{color:#d4bd99}.shop em{color:#d4bd99}.shop p:not(.eyebrow){font-size:13px;color:#dedacd}.shop-stamp{border:1px solid #c3b395;border-radius:50%;width:285px;height:285px;display:flex;flex-direction:column;justify-content:center;text-align:center;font:26px/1.05 Georgia,serif;letter-spacing:2px;transform:rotate(-8deg);flex-shrink:0}.shop-stamp em{font-size:66px;letter-spacing:-2px}.shop-stamp span{margin-top:17px;font-size:26px;color:#d4bd99}.coming{display:inline-block;border:1px solid #8e927f;padding:9px 17px;font-size:9px;letter-spacing:2px;margin-top:10px}.visit{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.visit p:not(.eyebrow){font-size:14px}.visit-quote{border-left:1px solid var(--line);padding-left:70px}.visit-quote p{font:46px/1.2 Georgia,serif!important}.visit-quote span{font-size:32px;color:var(--red)}footer{border-top:1px solid var(--line);display:flex;align-items:center;gap:24px;max-width:1200px;margin:auto;padding:30px 45px}footer img{width:75px;border-radius:50%}footer p{font:18px Georgia,serif;margin:0 0 8px}footer small{font-size:10px;color:var(--muted)}footer>a{margin-left:auto;font-size:12px}dialog{border:1px solid var(--line);background:var(--cream);padding:48px 18px 12px;max-width:95vw;max-height:95dvh}dialog::backdrop{background:#171b16cc}dialog img{display:block;max-width:85vw;max-height:76dvh;object-fit:contain;margin:auto}dialog p{font:17px Georgia,serif;margin:12px;text-align:center}.close{position:absolute;right:15px;top:10px;border:0;background:transparent;color:var(--red);padding:6px}
@media(max-width:900px){nav{gap:15px}.hero{gap:30px}.hero-photo>img{height:530px}.story{gap:40px}.section{padding:70px 30px}.section-head{display:block}.section-head>p{margin-top:20px}.event-bottom{align-items:flex-start;flex-direction:column}.shop{gap:55px}.visit-quote{padding-left:40px}.gallery{padding-top:20px}}
@media(max-width:650px){html{scroll-padding-top:20px}.announcement{font-size:8px;letter-spacing:1px}header{padding:15px 6%;flex-wrap:wrap;gap:15px}.brand{font-size:21px}.brand img{width:60px;height:60px}.menu{display:block;border:1px solid var(--line);padding:7px 13px;background:transparent;font-size:12px}nav{display:none;width:100%;flex-direction:column;align-items:stretch;gap:0}nav.open{display:flex}nav a{padding:10px}.nav-cta{margin-top:6px}.hero{display:flex;flex-direction:column;padding:35px 6% 40px;gap:30px;align-items:stretch}.hero h1{font-size:72px}.hero-copy>p:not(.eyebrow){max-width:100%}.hero-foot{margin-top:26px;letter-spacing:1px}.hero-photo{margin-top:5px;margin-right:10px}.hero-photo>img{height:440px;border-radius:160px 160px 0 0}.photo-note{font-size:19px;right:-20px;bottom:40px;padding:16px 22px}.actions{gap:20px}.ribbon{gap:14px;font-size:15px;padding:18px 10px}.section{padding:55px 6%}.story{display:flex;flex-direction:column;gap:35px;align-items:stretch}.story-image img{height:410px}.story-copy h2{font-size:44px}.story-logo{width:100px}.event-grid{grid-template-columns:1fr;gap:25px}.poster{height:260px}.event-body{padding:24px}.event-bottom{flex-direction:row;align-items:center}.event-bottom .text-link{font-size:11px}.gallery{padding-top:5px}.gallery-grid{gap:14px}.gallery-grid img{height:250px}.gallery-grid span{font-size:14px;line-height:1.5}.shop{flex-direction:column;gap:35px;padding:50px 6%;align-items:flex-start}.shop-stamp{width:225px;height:225px;align-self:center;font-size:23px}.shop-stamp em{font-size:54px}.shop h2{font-size:43px}.visit{grid-template-columns:1fr;gap:30px}.visit-quote{padding:15px 0 0;border-left:0;border-top:1px solid var(--line)}.visit-quote p{font-size:38px!important;margin:20px 0}footer{padding:25px 6%;gap:15px;flex-wrap:wrap}footer img{width:60px}footer small{font-size:9px}footer>a{width:100%;margin:0}h2{font-size:41px}}
/* Keep the detailed logo legible and preserve its complete artwork. */
.brand img{width:124px;height:auto;aspect-ratio:1179/1088;object-fit:contain;border-radius:0;flex-shrink:0}
@media(max-width:650px){.brand img{width:104px;height:auto}.brand{font-size:19px;gap:10px}}
@media(max-width:360px){.brand{font-size:17px}.brand img{width:94px}header{gap:10px}.menu{padding:7px 10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.poster img{transition:none}}
.hero .intro,#visit>div>p:not(.eyebrow),#shop p:not(.eyebrow){white-space:pre-line}.preview-bar{position:sticky;top:0;background:#fff3c9;color:#442d0d;padding:12px 20px;text-align:center;z-index:50;font-size:13px}.preview-bar a{text-decoration:underline}.social-links{display:flex;gap:18px;margin-top:8px}

.photo-note{max-width:calc(100% - 12px);overflow-wrap:anywhere}.photo-note[hidden]{display:none}

.contact-email{margin-top:24px}.contact-email a{font-size:16px;overflow-wrap:anywhere}.contact-email[hidden]{display:none}

.shop .affiliate-disclosure{font-size:14px;line-height:1.5;max-width:460px;margin-top:18px}.shop .coming{white-space:normal}.shop-stamp{flex-shrink:0}
