/* Palette drawn from the real courtyards: water blue, sun yellow, animal green,
   pale light-court blue, mosaic terracotta and weathered metal. */
:root{--paper:#fffaf0;--ink:#192d32;--blue:#1954a5;--lime:#f5c447;--line:#d5d8cb;--sun:#f5c447;--water:#087a9d;--forest:#25634b;--mosaic:#b14a33;--sky:#b7cbe5}
body{background:var(--paper)}header{padding-block:21px;border-bottom:0;background:#fffaf0}nav a{font-weight:500}nav a.active{color:var(--blue);text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:8px}.dev-note{background:#123c50;font-size:10px;padding-block:5px}
.section{padding-block:68px}.eyebrow{letter-spacing:.11em;margin-bottom:18px}h1,h2,h3{letter-spacing:-.045em}h2{line-height:1.06}.section-heading{margin-bottom:32px;align-items:end}.section-heading>a{font-weight:500}.fine{line-height:1.5}
.seasonal-notice{margin:0;border:0;background:var(--forest);color:#fff;padding:21px 5vw;gap:28px}.seasonal-notice .eyebrow{color:#f7d574;font-size:10px;margin-bottom:7px}.seasonal-notice h2{font-size:31px;line-height:1.1;margin-bottom:7px}.seasonal-notice h2 span{color:#f7d574;font-size:.68em;margin-left:18px}.seasonal-notice p{font-size:13px;max-width:670px}.seasonal-action .button{background:var(--sun);color:#192d32;font-weight:500}.seasonal-action>span{font-size:10px;color:#fff}
.hero{background:var(--sun);padding:48px 5vw 52px;gap:45px;min-height:620px;grid-template-columns:1.05fr 1fr}.hero-copy{padding-top:12px}.hero h1{font-size:clamp(3.8rem,6.4vw,7.3rem);margin-bottom:35px}.hero h1 em{font-size:.85em;color:#174a95}.hero .eyebrow{font-size:10px}.hero-art>.photo{min-height:490px;max-height:590px;border-radius:46% 46% 4px 4px;object-position:54% center}.hero-bottom{gap:30px}.hero-bottom p{font-size:17px}.round-link{font-weight:500}.round-link:after{background:#fffaf0;color:#174a95}.hero-sticker{background:var(--forest);color:#fff;bottom:35px;left:-25px;width:133px;height:133px;font-size:13px;padding:24px;transform:rotate(-8deg)}.hero-sticker b{font-size:30px}.vertical-label{right:13px;top:135px;font-weight:500;text-shadow:0 1px 3px #000}.marquee{background:#123c50;color:#fff;border:0;padding-block:14px;font-size:15px;letter-spacing:.06em}.marquee span{color:var(--sun);padding-inline:38px}
.intro{grid-template-columns:1fr 2fr;gap:35px;background:#fffaf0}.intro h2{font-size:clamp(2.5rem,3.5vw,4.1rem)}.intro h2 em{color:var(--blue)}.intro p{font-size:17px}.courts-section{padding-top:25px;padding-bottom:75px}.court-grid{gap:14px}.court-card{background:var(--court);color:var(--court-ink,#fff);border:0;padding:16px 16px 20px}.court-card:nth-child(even){padding-top:16px}.court-card .card-number{display:flex;justify-content:space-between;margin-bottom:13px;font-weight:500}.court-card .photo{height:245px;border-radius:0}.court-card h3{font-size:23px;line-height:1.08;margin:19px 0 10px;min-height:50px}.court-card p{font-size:12px;line-height:1.5;margin-bottom:0}.court-card:hover .photo{transform:none;filter:brightness(1.05)}
.plan-teaser{background:var(--sky);color:var(--ink);padding-block:65px;gap:50px}.plan-teaser h2{font-size:clamp(3.6rem,5.5vw,6rem);margin-bottom:24px}.plan-teaser h2 em{color:#174a95}.plan-teaser .dark{background:#174a95;color:white}.plan-real-teaser{transform:none}.plan-real-teaser .map-canvas{border-radius:0;box-shadow:12px 12px 0 #174a9529}.site-plan .plan-zone text{fill:#fff}.site-plan [data-map-zone=licht] text{fill:#192d32}.interactive-map.map-legend button{color:white}.interactive-map.map-legend button[data-map-court=licht]{color:#192d32}
.shop-grid{gap:24px}.shop-card{background:#fff;border-top:4px solid var(--water);padding:20px;text-decoration:none}.shop-card:nth-child(3n+2){border-color:var(--forest)}.shop-card:nth-child(3n){border-color:var(--mosaic)}.shop-card h3{font-size:28px}.shop-card .eyebrow{font-size:10px;color:#52636a}.shop-card p{font-size:14px}.shop-card small{background:#f3f0e5;color:#314348;font-size:10px}.shop-photo{height:225px;margin-bottom:20px}.event-section{background:var(--forest);color:#fff}.event-section .eyebrow{color:#f7d574}.event-section .event-flower{color:var(--sun)}.event-section .date-block{color:#f7d574}.event-feature{gap:55px}.event-feature h2{font-size:clamp(2.6rem,4vw,4.5rem)}
.home-artists{background:#e2ebf3}.artist-card{background:#fff;padding:18px}.artist-card-image{height:270px;margin-bottom:20px}.artist-card:nth-child(3n+2) .artist-card-image{border-radius:0}.artist-card .eyebrow{font-size:10px;color:#52636a;min-height:30px}.artist-card h3{font-size:27px}.artist-card p{margin-bottom:4px}.home-stories{background:#fffaf0}.story-card{border-top:4px solid var(--mosaic);padding-top:20px}.story-card:nth-child(2){border-color:var(--forest)}.story-card:nth-child(3){border-color:var(--water)}.story-card-image{height:260px;margin-bottom:23px}.story-card h3{font-size:32px}.visit-banner{background:var(--forest);color:white}.visit-banner .eyebrow{color:#f7d574}.visit-banner h2{font-size:clamp(3.5rem,5.7vw,6rem);margin-bottom:25px}.visit-banner .dark{background:var(--sun);color:#192d32}footer{background:#123c50;padding-top:50px}.footer-top{margin-bottom:40px}.footer-wordmark{font-size:clamp(3rem,5.5vw,6rem)}.footer-cow{width:125px}.footer-links{border-color:#a6bdc1}.footer-bottom{color:#d6e3e6}
.page-title{background:#e2ebf3;padding-top:55px;padding-bottom:45px}.page-title h1{margin-bottom:25px;font-size:clamp(3.3rem,6vw,6.7rem)}.page-title p{font-size:18px;margin-bottom:0}.page-title h1 em{color:#174a95}.detail-hero{background:#e2ebf3;border-bottom:8px solid var(--court);padding-block:55px}.detail-hero h1{font-size:clamp(3.3rem,5.8vw,6.3rem)}.detail-hero>.photo{height:490px}.court-gallery-section{padding-top:0}.court-facts{border-top:5px solid var(--blue);padding-top:22px}.court-chapters article{border-top:1px solid var(--line);padding-top:25px;margin-bottom:30px}.court-chapters p{font-size:17px}.works-section{background:#e2ebf3}.works-grid article{background:#fff;border-top:4px solid var(--water);padding:25px}.works-grid article:nth-child(2n){border-color:var(--mosaic)}.profile-facts{background:#e2ebf3}.filters{background:#e2ebf3;padding:22px;gap:18px}.filters label{font-weight:500}.filters input,.filters select{background:#fff}.profile-grid .photo-gallery{margin-bottom:0}.map-detail{background:#e2ebf3}.map-shop{background:#fff;padding:17px;margin-top:15px;border:0}.map-detail .fine{margin-top:25px}.timeline{background:#fffaf0}.timeline-year{color:#174a95}.timeline article:nth-child(2n) .timeline-year{color:var(--mosaic)}.history-chapters{background:#e2ebf3}.story-hero{background:#fffaf0}.story-hero h1{color:#174a95}.artist-detail{background:#e2ebf3}.artist-work{height:540px}.artist-role{color:#174a95}
.culture-title{background:#fffaf0;padding-block:30px}.culture-title h1{font-size:clamp(2rem,3.4vw,3.5rem);margin:0}.culture-title .eyebrow{margin-bottom:10px}.festival-hero{background:var(--sky);padding-top:50px;padding-bottom:55px;gap:60px}.festival-hero h2{font-size:clamp(3.3rem,5.5vw,6rem)}.festival-hero h2 em{color:#174a95;font-size:.69em}.festival-date{color:#174a95;font-size:clamp(2.8rem,4.2vw,4.5rem)}.festival-programme{background:#fffaf0}.programme-day{border:0;background:#fff;padding:0 20px 15px}.programme-day-heading{background:var(--water);color:#fff;margin:0 -20px;padding:25px}.programme-day:nth-child(2) .programme-day-heading{background:var(--forest)}.programme-day:nth-child(3) .programme-day-heading{background:var(--mosaic)}.programme-day-heading .eyebrow{font-size:12px}.programme-day-heading h3{font-size:59px}.programme-time{background:#fff0bc;color:#192d32}.programme-items li{padding-block:18px}.programme-items p{font-size:15px}.programme-filters button{border-radius:0;border-color:#174a95;color:#174a95;background:#fff}.programme-filters button[aria-pressed=true]{background:#174a95;color:#fff}.festival-practical{background:#e2ebf3;border-left:5px solid var(--forest)}
@media(max-width:1050px){.hero{gap:30px}.hero h1{font-size:clamp(3.3rem,6.5vw,5.6rem)}.court-card .photo{height:250px}.seasonal-notice h2{font-size:27px}.hero-art>.photo{min-height:450px}.shop-card h3{font-size:25px}.artist-card h3{font-size:25px}}
@media(max-width:700px){header{padding-block:17px}.section{padding-block:45px}.seasonal-notice{padding:18px 6vw;margin:0}.seasonal-notice h2{font-size:26px}.seasonal-notice h2 span{display:block;font-size:19px;margin:7px 0 0}.seasonal-notice p{font-size:12px}.seasonal-action{margin-top:14px}.seasonal-action .button{width:100%;text-align:center}.seasonal-action>span{text-align:center;margin-top:8px}.hero{padding:30px 6vw 40px;gap:28px;min-height:0}.hero h1{font-size:clamp(3.2rem,11.7vw,4.6rem);margin-bottom:25px}.hero h1 em{font-size:.84em;white-space:nowrap}.hero-copy{padding:0}.hero-bottom p{font-size:14px}.hero-bottom{gap:20px}.hero-art{padding-left:20px}.hero-art>.photo{height:385px;min-height:0;max-height:none}.hero-sticker{left:0;bottom:25px;width:118px;height:118px;padding:21px;font-size:12px}.vertical-label{top:100px}.marquee{font-size:12px;padding-block:13px}.marquee span{padding-inline:20px}.intro{display:block}.intro>.eyebrow{margin-bottom:25px}.intro h2{font-size:2.25rem}.intro p{font-size:16px}.section-heading h2{font-size:2.35rem}.section-heading>a{margin-top:15px;font-size:13px}.court-grid{gap:12px}.court-card,.court-card:nth-child(even){padding:12px}.court-card .photo{height:185px}.court-card:last-child>.photo{height:240px}.court-card h3{font-size:21px;min-height:44px;margin-top:16px}.court-card p{font-size:12px}.plan-teaser{padding-block:45px;gap:25px}.plan-teaser h2{font-size:3.6rem}.plan-real-teaser .map-canvas{box-shadow:7px 7px 0 #174a9529}.shop-card{padding:18px}.shop-card h3{font-size:28px}.shop-photo{height:260px}.event-feature{gap:25px}.event-feature h2{font-size:29px}.event-feature p{font-size:13px}.artist-card-image{height:310px}.artist-card h3{font-size:29px}.story-card-image{height:260px}.visit-banner h2{font-size:3.4rem}.footer-wordmark{font-size:3.5rem}.page-title{padding-top:35px;padding-bottom:35px}.page-title h1{font-size:3.1rem}.page-title p{font-size:16px}.detail-hero h1{font-size:3.1rem}.detail-hero>.photo{height:370px}.artist-work{height:400px}.artist-detail h1{font-size:3.1rem}.court-editorial{gap:30px}.court-gallery-section{padding-top:0}.filters{padding:18px}.festival-hero{gap:30px;padding-top:35px;padding-bottom:40px}.festival-hero h2{font-size:clamp(2.5rem,11.4vw,3.4rem)}.festival-date{font-size:2.9rem}.culture-title{padding-block:24px}.culture-title h1{font-size:2.2rem}.programme-day-heading h3{font-size:53px}.programme-day{padding-bottom:5px}.programme-days{gap:28px}.works-grid article{padding:20px}}
