:root{color-scheme:light;--paper:#fff5d4;--ink:#692d29;--line:#692d2938;--serif:Georgia,'Times New Roman',serif;--sans:Arial,Helvetica,sans-serif;font-family:var(--sans);color:var(--ink);background:var(--paper)}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-underline-offset:5px}button{font:inherit;color:inherit}a:focus-visible,button:focus-visible{outline:3px solid #bc4e36;outline-offset:6px}.page{max-width:1680px;margin:0 auto;padding:0 5.4%}header{min-height:150px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:28px}.wordmark{text-decoration:none;display:flex;flex-direction:column;align-items:center}.wordmark-small{font-size:.72rem;letter-spacing:.24em;margin-bottom:-10px}.wordmark-large{font-family:var(--serif);font-size:4.9rem;line-height:1.2;letter-spacing:-.07em;font-weight:700}.wordmark-dot{color:#b74732}.header-right{display:flex;align-items:center;gap:58px}.place,.eyebrow{font-size:.75rem;font-weight:600;letter-spacing:.16em;line-height:1.6}.languages{display:flex;align-items:center;gap:8px;font-size:.875rem}.languages button{background:none;border:0;padding:12px 7px;cursor:pointer;min-height:44px}.languages button[aria-pressed=true]{font-weight:bold;text-decoration:underline;text-underline-offset:6px}.hero{display:grid;grid-template-columns:1.1fr 1fr;gap:7%;padding:66px 0 72px;align-items:center}.hero-copy{padding:16px 0 24px}.eyebrow{margin:0 0 22px}h1{font-family:var(--serif);font-size:clamp(3.5rem,6.5vw,7rem);font-weight:400;line-height:1.02;letter-spacing:-.055em;margin:0 0 34px}h1 span,h1 em{display:block}h1 em{font-weight:400;color:#a64230}.opening{display:inline-flex;align-items:center;flex-wrap:wrap;gap:13px 20px;border:1px solid var(--ink);padding:12px 18px;margin-bottom:24px}.opening-label{font-size:.7rem;letter-spacing:.13em;font-weight:bold}.opening-date{font-family:var(--serif);font-size:1.3rem}.intro{font-size:1.0625rem;line-height:1.7;max-width:385px;margin:0 0 28px}.contact-link{display:inline-flex;gap:46px;text-decoration:none;padding-bottom:10px;border-bottom:1px solid var(--ink);font-weight:600;font-size:.9375rem}.contact-link:hover{color:#b74732}.hero-image{margin:0;position:relative;align-self:stretch;min-height:510px;overflow:hidden;background:#d8caaa}.hero-image img{display:block;width:100%;height:100%;position:absolute;object-fit:cover;object-position:center}.hero-image:after{content:'';position:absolute;inset:65% 0 0;background:linear-gradient(transparent,#191913ad);pointer-events:none}figcaption{position:absolute;z-index:1;bottom:27px;left:27px;right:27px;color:#fff9e8;display:flex;justify-content:space-between;align-items:end;gap:16px}figcaption span:first-child{font-size:.7rem;letter-spacing:.16em}figcaption span:last-child{font-family:var(--serif);font-style:italic;font-size:1.375rem}.details{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:34px 0;display:grid;grid-template-columns:1fr 1fr 1.1fr;gap:32px}.details .eyebrow{font-size:.6875rem;line-height:1.7;margin-bottom:12px}.details p:not(.eyebrow){font-size:1rem;line-height:1.65;margin:0;white-space:pre-line}.details a{text-decoration-thickness:1px}footer{display:flex;justify-content:space-between;gap:15px;font-size:.75rem;padding:25px 0 30px}footer span:nth-child(2){letter-spacing:.12em;font-size:.625rem}.skip-link{position:fixed;top:-100px;left:16px;z-index:10;padding:16px;background:var(--ink);color:var(--paper)}.skip-link:focus{top:16px}@media(min-width:1500px){.hero{min-height:760px}}@media(max-width:1000px){.header-right{gap:28px}.hero{gap:5%;padding:45px 0}.hero-image{min-height:470px}h1{font-size:clamp(3rem,6.8vw,5rem)}.details{grid-template-columns:1fr 1fr}.season-note{grid-column:1/-1}figcaption{left:18px;right:18px;flex-wrap:wrap}.place{font-size:.65rem}}@media(max-width:640px){.page{padding:0 7%}header{min-height:110px}.wordmark-large{font-size:3.9rem}.wordmark-small{font-size:.6rem;margin-bottom:-9px}.header-right{gap:0}.place{display:none}.hero{grid-template-columns:1fr;gap:32px;padding:36px 0}.hero-copy{padding:0}h1{font-size:clamp(3.4rem,13vw,5rem);margin-bottom:27px}.hero-copy>.eyebrow{margin-bottom:20px}.intro{max-width:100%;font-size:1rem}.hero-image{height:430px;min-height:0;aspect-ratio:1/1.12}.hero-image img{object-position:center}.details{grid-template-columns:1fr;gap:27px;padding:30px 0}.season-note{grid-column:auto}footer span:nth-child(2){display:none}figcaption span:last-child{font-size:1.2rem}}@media(prefers-reduced-motion:no-preference){a,button{transition:color .18s ease}}

/* Keep the complete hand-drawn illustration visible. */
.hero-image{background:#f8edce}.hero-image img{object-fit:contain;padding:12px 12px 70px}.hero-image:after{display:none}figcaption{color:var(--ink)}

.activities{border-top:1px solid var(--line);padding:50px 0 60px}.activities-heading{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:30px}.activities h2{font:400 clamp(2.5rem,4vw,4rem)/1.1 var(--serif);letter-spacing:-.04em;margin:0}.activities-heading .eyebrow{margin-bottom:12px}.activities-heading>p,.calendar-note>p{line-height:1.7;max-width:340px}
.activity-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.activity-card{display:flex;align-items:flex-start;gap:24px;padding:30px;border:1px solid var(--line);background:#ffffff25;border-radius:3px}
.activity-date{display:flex;flex:0 0 72px;flex-direction:column;align-items:center;border-top:3px solid #a64230;padding-top:13px;color:#a64230}
.activity-day{font:400 3.6rem/.95 var(--serif);letter-spacing:-.07em}
.activity-month{text-transform:uppercase;font-size:.75rem;letter-spacing:.14em;margin:9px 0 5px}
.activity-year{font-size:.7rem;letter-spacing:.08em}
.activity-body{min-width:0}.activity-when{font-size:.75rem;line-height:1.5;margin:0 0 10px;color:#884839}
.activity-card h3{font:400 1.75rem/1.15 var(--serif);letter-spacing:-.025em;margin:0 0 14px;overflow-wrap:anywhere}
.activity-description{font-size:.95rem;line-height:1.65;margin:0 0 18px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.activity-location{font-size:.8rem;line-height:1.5;margin:0 0 18px;overflow-wrap:anywhere}
.activity-details{display:inline-block;font-size:.8rem;font-weight:600;text-decoration-thickness:1px;line-height:1.6}
.activity-empty{grid-column:1/-1;display:flex;align-items:center;gap:40px;padding:46px 50px;border:1px solid var(--line);background:#ffffff20;border-radius:3px}
.activity-flower{font:400 6rem/1 var(--serif);color:#a64230;flex-shrink:0}
.activity-empty h3{font:400 clamp(1.6rem,3vw,2.2rem)/1.2 var(--serif);letter-spacing:-.025em;margin:0 0 14px}
.activity-empty .eyebrow{font-size:.65rem;margin:0 0 14px}.activity-empty-copy>p:last-child{font-size:.98rem;line-height:1.7;max-width:540px;margin:0}
.activities-status{grid-column:1/-1;padding:32px 0;line-height:1.7}
.activities>p:last-child{margin:24px 0 0;font-size:.8rem}.activities>p:last-child a{text-decoration-thickness:1px}
.more-activities{background:none;border:1px solid var(--ink);padding:14px 22px;cursor:pointer;margin-top:24px}.more-activities[hidden]{display:none}
@media(max-width:800px){.activity-cards{grid-template-columns:1fr}.activities-heading{display:block}.activity-card{padding:25px}.activity-empty{padding:32px;gap:26px}}
@media(max-width:480px){.activities{padding:36px 0}.activity-card{gap:18px;padding:22px 18px}.activity-date{flex-basis:58px}.activity-day{font-size:3rem}.activity-card h3{font-size:1.5rem}.activity-empty{display:block;padding:28px 24px}.activity-flower{display:block;font-size:3.5rem;margin-bottom:22px}}

.wordmark-art{display:block;width:215px;height:auto}@media(max-width:640px){.wordmark-art{width:175px}}

/* Merge the paper illustration into the page instead of a framed panel. */
.hero-image{background:transparent;overflow:visible}.hero-image img{mix-blend-mode:multiply;filter:grayscale(1) contrast(1.15) brightness(1.12)}

/* Phone layout: compact proportions and comfortable touch targets. */
@media(max-width:640px){
  .page{padding:0 clamp(20px,6vw,32px)}
  header{min-height:96px;gap:16px}
  .wordmark{flex-shrink:0}.wordmark-art{width:clamp(145px,40vw,180px)}
  .languages{gap:0}.languages button{min-width:40px;min-height:44px;padding:12px 8px}
  .hero{padding:32px 0;gap:24px}
  .hero-copy>.eyebrow{font-size:.65rem;letter-spacing:.14em;margin-bottom:18px}
  h1{font-size:clamp(2.2rem,10.8vw,3.8rem);line-height:1.05;letter-spacing:-.045em;margin-bottom:24px}
  .opening{gap:10px 16px;padding:12px 14px;margin-bottom:20px;max-width:100%}
  .opening-label{font-size:.63rem;letter-spacing:.1em}.opening-date{font-size:1.18rem}
  .intro{font-size:1rem;line-height:1.65;margin-bottom:22px}
  .contact-link{display:flex;align-items:center;justify-content:space-between;min-height:48px;border:1px solid var(--line);padding:13px 16px;width:100%;gap:20px}
  .hero-image{height:clamp(250px,75vw,360px);min-height:0;aspect-ratio:auto}
  .hero-image img{padding:0 0 48px}
  figcaption{bottom:6px;left:0;right:0;align-items:center;gap:10px;flex-wrap:wrap}
  figcaption span:first-child{font-size:.6rem;letter-spacing:.1em}figcaption span:last-child{font-size:1.05rem}
  .activities{padding:32px 0 36px}.activities-heading{margin-bottom:22px}.activities h2{font-size:2.2rem}
  .activities-heading>p{font-size:.95rem;margin:14px 0 0;line-height:1.6}
  .activity-cards{gap:16px}.activity-card{gap:16px;padding:22px 18px}
  .activity-date{flex-basis:54px}.activity-day{font-size:2.8rem}.activity-card h3{font-size:1.45rem;line-height:1.2}
  .activity-details{min-height:44px;display:inline-flex;align-items:center;font-size:.875rem}
  .activity-empty{padding:24px}.activity-empty h3{font-size:1.65rem}.activity-empty-copy>p:last-child{font-size:.95rem}
  .activity-flower{font-size:3rem;margin-bottom:18px}
  .activities>p:last-child a{display:inline-flex;align-items:center;min-height:44px;font-size:.875rem}
  .more-activities{width:100%;min-height:48px}.details{padding:28px 0;gap:24px}
  .details a{display:inline-flex;align-items:center;min-height:44px}.details .eyebrow{margin-bottom:8px}
  footer{padding:22px 0 calc(22px + env(safe-area-inset-bottom));font-size:.7rem}
}
