body.public-art-library{background:#f4f1e5;color:#173d2e;font-family:Instrument,sans-serif}
body.public-art-library>main{padding:120px 28px 40px;max-width:1440px;margin:auto}
body.public-art-library .experience-header{padding:0;border:0;margin:0;max-width:none}
body.public-art-library .experience-header-inner{max-width:none}
body.public-art-library .experience-header nav{margin:0}
body.public-art-library .report-footer{max-width:none;display:block;margin:0;border:0;padding-inline:0}
body.public-art-library .report-footer p{font-size:14px}
body.public-art-library .report-footer .brand{max-width:240px}
body.public-art-library main h1{font-family:Instrument,sans-serif;font-size:clamp(38px,5vw,70px);line-height:1.08;letter-spacing:-.04em}
.public-art-library .season-previews{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}
.public-art-library .season-previews a{border:1px solid #8b9983;border-radius:999px;padding:12px 18px;min-height:44px;font-weight:600}
.public-art-library .experience-brand img{object-fit:contain}
.public-art-library .source-note{line-height:1.7}
@media(max-width:600px){body.public-art-library>main{padding:105px 20px 30px}.public-art-library .season-previews{display:grid}.public-art-library .source-note h3{font-size:22px}.public-art-library .eyebrow{font-size:12px}}

.public-collection-nav{display:flex;gap:12px 24px;flex-wrap:wrap;margin:0 0 24px;border-bottom:1px solid #c4cbb7;padding-bottom:16px}.public-collection-nav a{min-height:44px;display:inline-flex;align-items:center;text-decoration:underline;font-size:15px}
.event-card--idea{border-top:1px solid #c4cbb7;padding-top:12px;align-self:start}
.event-card--idea .card-caption{padding:12px 0}
.card-caption .event-idea-line{font-size:16px;line-height:1.5;letter-spacing:0;margin:14px 0;color:#465747}
.art-preparation{padding:32px 0;border-block:1px solid #c4cbb7;max-width:850px;margin:24px 0}
.art-preparation h2{margin:0 0 16px}
.art-preparation p:last-child{max-width:65ch;margin:0}
.event-grid{align-items:start}
.calendar-spotlight{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:32px;padding:28px;border:1px solid #c4cbb7;border-radius:18px;background:#fffdf6;margin:28px 0}
.calendar-spotlight[hidden],.calendar-spotlight [hidden]{display:none}
.calendar-spotlight h2{font:650 clamp(26px,3vw,42px)/1.15 Bricolage,sans-serif;margin:12px 0}
.calendar-spotlight p{line-height:1.6;max-width:40ch}
.calendar-spotlight a{display:block;color:inherit;text-decoration:none}
.calendar-spotlight img{display:block;width:100%;height:auto;aspect-ratio:600/338;object-fit:contain;border-radius:10px}
.calendar-spotlight a>span{display:block;padding:14px 0;min-height:76px;text-decoration:underline;text-underline-offset:4px}
.calendar-spotlight a:focus-visible{outline:3px solid #173d2e;outline-offset:5px}
@media(max-width:600px){.calendar-spotlight{grid-template-columns:1fr;gap:16px;padding:20px}}
@media(max-width:600px){.public-art-library .intro-patch{margin-top:0}}
/* Seasonal context stays outside the artwork, so neither obscures the other. */
.seasonal-planner{scroll-margin-top:120px;margin:44px 0 36px;padding:32px;border:1px solid #bdc9b3;background:#e7ecdc;border-radius:16px}
.seasonal-planner h2{font-size:clamp(28px,3vw,40px);line-height:1.15;margin:0 0 18px}
.seasonal-planner>p:not(.eyebrow){max-width:76ch;line-height:1.6}
.seasonal-calendar-controls{display:flex;align-items:end;flex-wrap:wrap;gap:18px;margin:24px 0 14px}
.seasonal-calendar-controls[hidden]{display:none}
.seasonal-calendar-controls label{font-weight:650;font-size:14px}
.seasonal-calendar-controls input,.seasonal-calendar-controls select{display:block;max-width:100%;min-height:48px;margin-top:7px;padding:10px 12px;border:1px solid #6e806b;border-radius:8px;background:#fffdf5;color:#173d2e;font:inherit}
.seasonal-calendar-controls button{min-height:48px;padding:10px 20px;border:1px solid #173d2e;border-radius:8px;background:#173d2e;color:#fffdf5;font:inherit;font-weight:650}
.calendar-status,.calendar-policy{font-size:14px;color:#405d4a}
.seasonal-agenda{list-style:none;padding:0;margin:26px 0}
.seasonal-agenda li{display:flex;align-items:start;justify-content:space-between;gap:24px;padding:22px 0;border-top:1px solid #bdc9b3}
.seasonal-agenda h3{font-size:24px;line-height:1.25;margin:6px 0}
.seasonal-agenda h3 a{text-decoration:none}
.seasonal-agenda h3 a:hover{text-decoration:underline}
.seasonal-agenda li p{font-size:15px;max-width:68ch;margin:8px 0 0}
.calendar-date-label{font-size:14px;font-weight:650;color:#35543d}
.calendar-art-label{font-size:13px;white-space:nowrap;padding-top:4px}
.public-art-library .card-caption>.occasion-date{font-size:14px;letter-spacing:0;line-height:1.5;color:#35543d;margin:12px 0}
.occasion-usage{display:grid;grid-template-columns:1fr 1fr;gap:38px;background:#e7ecdc;border:1px solid #bdc9b3;border-radius:14px;padding:30px;margin:28px 0 36px}
.occasion-usage h2{font-size:28px;line-height:1.2;margin:0 0 16px}
.occasion-usage h3{font-size:22px;line-height:1.3;margin:0 0 16px}
.occasion-usage p{line-height:1.65;margin:12px 0}
.occasion-usage .occasion-date{font-weight:700;font-size:18px}
.calendar-source{display:inline-block;min-height:44px;padding-block:10px}
.calendar-source[hidden]{display:none}
.seasonal-planner :focus-visible,.occasion-usage :focus-visible{outline:3px solid #173d2e;outline-offset:4px}
@media(max-width:700px){.seasonal-planner{padding:22px 18px}.occasion-usage{grid-template-columns:1fr;gap:20px;padding:22px 18px}.seasonal-calendar-controls{gap:14px}.seasonal-calendar-controls label{min-width:0;flex:1 1 170px}.seasonal-calendar-controls input,.seasonal-calendar-controls select{width:100%}.seasonal-agenda li{display:block}.calendar-art-label{display:block;margin-top:10px}.seasonal-agenda h3{font-size:22px}}
