/* Shared desktop and mobile hierarchy: identity first, then the artists. */
:root{--gutter:clamp(22px,6vw,110px)}.site-header{height:96px}.festival-logo{height:80px}.site-header ul{gap:34px}.site-header li:last-child a,.button{border-radius:7px}.cover-top{font-size:11px;padding-block:14px}.poster-stage,.poster-stage:not([style]){aspect-ratio:auto;overflow:hidden;background-color:var(--accent);background-image:repeating-radial-gradient(circle at 105% 14%,#a9840018 0 1px,transparent 2px 18px)!important;padding:0 var(--gutter) 42px}.cover-center{width:100%;max-width:760px;padding:32px 20px 34px;position:relative}.cover-logo{width:174px;max-width:none}.edition-pill{position:absolute;top:54px;left:calc(50% - 188px);right:auto;font-size:23px;transform:rotate(-6deg);padding:7px 19px}.cover-center h1{font-size:44px;line-height:1.01;margin:18px 0 22px;font-style:normal;letter-spacing:-.015em}.cover-center .button{font-size:12px;padding:13px 23px}.cover-headliners{position:relative;inset:auto;display:grid;grid-template-columns:1fr 1fr;gap:24px;padding:0;max-width:1110px;margin:0 auto}.cover-artist,.poster-stage:not([style]) .cover-artist{width:auto;padding:0;min-height:0;aspect-ratio:1.65;position:relative;background:#141510;overflow:hidden;border-radius:12px;box-shadow:0 7px 0 #1a1b1320}.cover-artist>img,.poster-stage:not([style]) .cover-artist>img{display:block;position:absolute;inset:0;width:100%;height:100%;max-height:none;object-fit:cover;object-position:var(--focus-x,50%) 20%;transition:transform .5s}.cover-artist:hover>img{transform:scale(1.025)}.cover-artist:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#0a0a08ef 0%,#1117 30%,transparent 72%)}.cover-artist>div{position:absolute;inset:auto 25px 23px;z-index:2}.artist-date{font-size:10px;border-radius:4px;padding:7px 11px;background:#191a13}.cover-artist h2{font-size:46px;margin:11px 0 13px;line-height:.91;text-shadow:none}.cover-artist h2 strong{display:inline;margin-left:.14em}.artist-format{display:inline-block;background:#d81a29;border-radius:3px;font-family:Arial,sans-serif;font-size:10px;line-height:1.35;padding:8px 11px;min-height:0}.cover-bottom{padding-block:24px;max-width:none}.cover-bottom p{max-width:470px;font-size:13px}.section{padding-block:84px}.program{max-width:1440px;margin:auto}.program .section-heading{align-items:flex-end}.program h2{font-size:clamp(42px,4.6vw,68px)}.program .text-link{white-space:nowrap}.filters{margin:32px 0 24px}.filters button{border-radius:100px;padding:10px 22px}.event-row{grid-template-columns:94px 75px 1fr 44px;padding:27px 14px;gap:20px;border-top-color:#dfd8c5}.event-row:hover{padding-left:22px;padding-right:22px;background:#fff1a5;border-radius:8px}.event-row time strong{font-size:53px}.event-name h3{font-size:33px;line-height:1.1}.event-name small{color:#696a60;font-size:9px}.row-arrow{width:36px;height:36px;border:1px solid #d7d0b8;border-radius:50%;display:grid;place-items:center;font-size:22px}.manifesto{grid-template-columns:1fr 2.4fr;gap:60px;border-block:1px solid #15161120}.manifesto h2{font-size:75px;max-width:710px}.manifesto p{font-size:17px;max-width:700px}.manifesto .button{margin-top:6px}.visit{gap:100px}.visit h2{font-size:72px}.partner-section{padding-block:58px}.footer-top{padding-bottom:12px}.footer-wordmark{margin-top:15px}.footer-statement{font-size:38px}.about-heading{padding-top:56px;padding-bottom:54px;position:relative;background-image:repeating-radial-gradient(circle at 110% 30%,#b89c1218 0 1px,transparent 2px 20px)}.about-heading h1{font-size:106px;margin-bottom:20px;letter-spacing:-.02em}.about-heading .lead{font-size:19px;max-width:620px}.about-content{max-width:1440px;padding-top:0;padding-bottom:0}.about-content .prose{line-height:1.7}.about-chapter{padding:65px 0;border-bottom:1px solid #dcd6c5}.about-content .section-kicker{font-size:10px;letter-spacing:1.9px;font-weight:700;margin-bottom:22px;color:#9b1b23}.about-content .about-chapter>h2{font-size:clamp(40px,4.6vw,66px);max-width:800px;line-height:1.02;margin:0 0 26px}.about-content .about-chapter>p:not(.section-kicker){max-width:850px;font-size:17px}.team-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:46px 28px;margin-top:36px}.team-person{min-width:0}.about-content .team-person figure{margin:0}.about-content .team-person img{width:100%;height:285px;object-fit:cover;object-position:50% 22%;border-radius:10px}.about-content .team-person h3{font-size:34px;line-height:1;margin:21px 0 9px}.about-content .team-person p{font-size:13px;margin-bottom:10px}.about-content .team-role{font-size:11px!important;font-weight:700;text-transform:uppercase;letter-spacing:.6px;color:#8e1a22}.organization-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px;margin-top:32px}.organization-card{background:#f2eedf;border-radius:12px;padding:30px}.about-content .organization-card figure{margin:0 0 22px}.about-content .organization-card img{height:82px;width:90px;object-fit:contain;mix-blend-mode:multiply}.about-content .organization-card h3{font-size:31px;margin:0 0 13px;line-height:1.1}.about-content .organization-card p{font-size:14px}.vision-chapter{background:#fff9dd}.vision-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:35px}.vision-card{padding:25px 25px 22px 0;border-top:1px solid #d8cea5;min-width:0}.vision-card:not(:nth-child(3n+1)){padding-left:25px;border-left:1px solid #d8cea5}.about-content .vision-number{font:900 40px/1 Folk;margin-bottom:20px;color:#bca700}.about-content .vision-card h3{font-size:28px;line-height:1.1;margin:0 0 12px}.about-content .vision-card p:not(.vision-number){font-size:14px;margin-bottom:0}.quote-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.quote-grid blockquote{border:0;border-top:3px solid #ffe12b;margin:5px 0 0;padding:24px 0 0;font-size:15px}.quote-grid cite{font-size:11px;font-style:normal;font-weight:700;color:#777064}.about-invitation{border:0;padding-bottom:70px}.about-invitation .wp-block-button__link{background:#171813;color:#fffdf5;border-radius:7px;font-size:13px;padding:15px 23px}.about-invitation .wp-block-buttons{margin-top:28px}
@media(min-width:1600px){.cover-center{padding-top:38px}.cover-logo{width:190px}.cover-center h1{font-size:48px}.cover-headliners{max-width:1200px}.cover-artist{aspect-ratio:1.8}.cover-artist h2{font-size:52px}}
@media(max-width:1000px){.cover-artist h2{font-size:37px}.cover-artist h2 strong{display:block;margin-left:0}.cover-artist{aspect-ratio:1.3}.artist-format{font-size:9px}.team-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.about-content .team-person img{height:330px}.manifesto{gap:35px}.manifesto h2{font-size:61px}.event-name h3{font-size:29px}.visit{gap:40px}.visit h2{font-size:59px}}
@media(max-width:760px){.site-header{height:89px}.festival-logo{height:73px}.cover-top{font-size:9px;gap:12px}.poster-stage,.poster-stage:not([style]){padding:0 16px 27px}.cover-center{padding:26px 10px 26px}.cover-logo{width:205px}.edition-pill{left:8px;top:31px;font-size:21px}.cover-center h1{font-size:38px;margin:20px 0 23px}.cover-headliners{gap:12px}.cover-artist,.poster-stage:not([style]) .cover-artist{aspect-ratio:auto;min-height:292px;border-radius:8px;box-shadow:0 4px 0 #1a1b131a}.cover-artist>div{inset:auto 10px 13px}.cover-artist h2{font-size:32px;line-height:.95;margin:11px 0}.cover-artist h2 strong{display:block;margin-left:0}.artist-date{font-size:8px;padding:6px 7px}.artist-format{font-family:Folk;font-size:11px;padding:7px 8px;min-height:39px;display:flex;align-items:center}.section{padding-block:49px}.cover-bottom{gap:12px;padding-block:25px}.cover-bottom p{font-size:13px}.program .section-heading{align-items:flex-start}.program h2{font-size:46px}.filters{gap:7px;margin:26px 0 15px}.filters button{padding:9px 13px;font-size:10px}.event-row{grid-template-columns:47px 36px 1fr 25px;gap:10px;padding:22px 0}.event-row:hover{padding:22px 0}.event-row time strong{font-size:40px}.event-name h3{font-size:25px}.event-time{font-size:10px}.event-row time span{font-size:9px}.row-arrow{border:0;width:24px;height:24px;font-size:22px}.manifesto{grid-template-columns:1fr;gap:8px}.manifesto h2{font-size:59px}.manifesto p{font-size:15px}.visit{gap:15px}.visit h2{font-size:57px}.footer-statement{font-size:27px}.about-heading h1{font-size:80px}.about-heading .lead{font-size:17px}.about-content{padding-top:0;padding-bottom:0}.about-chapter{padding:43px 0}.about-content .about-chapter>h2{font-size:39px}.about-content .about-chapter>p:not(.section-kicker){font-size:15px}.team-grid{gap:30px 15px;margin-top:27px}.about-content .team-person img{height:200px;border-radius:7px}.about-content .team-person h3{font-size:27px;margin-top:16px}.about-content .team-person p{font-size:12px}.about-content .team-role{font-size:9px!important}.organization-grid{grid-template-columns:1fr;gap:18px}.organization-card{padding:25px}.vision-grid{grid-template-columns:1fr 1fr}.vision-card,.vision-card:not(:nth-child(3n+1)){padding:20px 16px 23px 0;border-left:0}.vision-card:nth-child(even){padding-left:16px;border-left:1px solid #d8cea5}.about-content .vision-card h3{font-size:25px}.about-content .vision-card p:not(.vision-number){font-size:12px}.quote-grid{grid-template-columns:1fr;gap:22px}.quote-grid blockquote{font-size:14px}.about-content .section-kicker{font-size:9px}}
@media(max-width:360px){.team-grid{grid-template-columns:1fr}.about-content .team-person img{height:320px}.cover-artist h2{font-size:28px}}
@media(prefers-reduced-motion:reduce){.cover-artist>img{transition:none}}

/* Reset WordPress flow spacing inside explicit card grids. */
.about-content :is(.team-grid,.organization-grid,.vision-grid,.quote-grid)>*{margin-block:0!important}

/* Vision cards: explicit layout keeps Gutenberg's flow defaults from
   collapsing the grid or inheriting unexpected spacing/colours. */
.about-content .vision-chapter{display:block!important;clear:both;overflow:hidden;background:#fff9dd;color:#151611}
.about-content .vision-chapter{width:100vw;margin-left:calc(50% - 50vw);margin-right:0;padding-left:var(--gutter);padding-right:var(--gutter)}
.about-content .vision-chapter>p,.about-content .vision-chapter>h2,.about-content .vision-chapter>.section-kicker{width:100%;max-width:1440px;margin-left:auto;margin-right:auto;text-align:left}
.about-content .vision-chapter .vision-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:0!important;width:100%;max-width:1440px;margin:36px auto 0!important}
.about-content .vision-chapter .vision-card{display:block!important;min-width:0;min-height:190px;padding:25px 25px 26px 0!important;margin:0!important;border-top:1px solid #d8cea5;border-left:0!important}
.about-content .vision-chapter .vision-card:nth-child(3n+2),.about-content .vision-chapter .vision-card:nth-child(3n+3){padding-left:25px!important;border-left:1px solid #d8cea5!important}
.about-content .vision-chapter .vision-card p,.about-content .vision-chapter .vision-card h3{visibility:visible;opacity:1}
.about-content .vision-chapter .vision-number{display:block!important;margin:0 0 20px!important;color:#b09a00;font:900 40px/1 Folk,Impact,sans-serif}
.about-content .vision-chapter .vision-card h3{margin:0 0 12px!important;font-size:28px;line-height:1.1}
.about-content .vision-chapter .vision-card p:last-child{margin:0!important;font-size:14px;line-height:1.55}
@media(max-width:760px){.about-content .vision-chapter .vision-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.about-content .vision-chapter .vision-card{min-height:0;padding:20px 16px 23px 0!important}.about-content .vision-chapter .vision-card:nth-child(3n+2),.about-content .vision-chapter .vision-card:nth-child(3n+3){padding-left:0!important;border-left:0!important}.about-content .vision-chapter .vision-card:nth-child(even){padding-left:16px!important;border-left:1px solid #d8cea5!important}.about-content .vision-chapter .vision-card h3{font-size:25px}.about-content .vision-chapter .vision-card p:last-child{font-size:12px}}
@media(max-width:360px){.about-content .vision-chapter .vision-grid{grid-template-columns:1fr}.about-content .vision-chapter .vision-card:nth-child(even){padding-left:0!important;border-left:0!important}}

/* Manifesto hero restored: approved vinyl artwork is the visual anchor. */
.poster-stage{background-image:var(--poster-art,none),repeating-radial-gradient(circle at 10% 50%,#f0cc1318 0 1px,transparent 2px 19px)!important;background-size:cover,auto;background-position:center,center}
.featured-events{background:#fffdf5}
.featured-event-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.featured-event-card{display:block;position:relative;min-height:430px;overflow:hidden;background:#171813;color:#fffdf5;border-radius:10px}
.featured-event-card>img{display:block;position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:var(--focus-x,50%) 20%;transition:transform .5s}
.featured-event-card:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#0a0a08ee 0%,#1118 35%,transparent 75%)}
.featured-event-card>div{position:absolute;z-index:2;inset:auto 24px 22px}
.featured-event-card h3{font-size:clamp(38px,4.3vw,68px);line-height:.92;margin:11px 0 13px;text-transform:uppercase}
.featured-event-card h3 strong{display:block;color:#ffe12b}
.featured-event-card:hover>img{transform:scale(1.03)}
@media(min-width:761px){.poster-stage,.poster-stage:not([style]){display:block;aspect-ratio:2.4;padding:0 var(--gutter);background-size:cover,auto}.cover-center{width:40%;max-width:none;padding:18px 0 26px;margin:auto;align-items:center;text-align:center}.cover-logo{width:clamp(190px,19vw,360px)}.edition-pill{position:absolute;margin:0;top:54px;left:calc(50% - 188px);font-size:23px}.cover-center h1{font-size:clamp(26px,2.8vw,49px);margin:18px 0 20px;max-width:none}.cover-center .button{font-size:12px}.cover-bottom{padding-block:25px}}
@media(max-width:760px){.poster-stage{background-image:none!important}.featured-events{padding-top:48px}.featured-event-grid{grid-template-columns:1fr;gap:16px}.featured-event-card{min-height:330px}.featured-event-card>div{inset:auto 14px 14px}.featured-event-card h3{font-size:42px}}

/* Desktop hero: compact poster composition. Mobile keeps the stacked layout. */
@media(min-width:761px){
  .poster-stage,.poster-stage:not([style]){padding:30px var(--gutter) 34px;display:grid;grid-template-columns:minmax(270px,.78fr) minmax(520px,1.42fr);align-items:center;gap:clamp(28px,5vw,86px);background-image:repeating-radial-gradient(circle at 8% 48%,#c3a30018 0 1px,transparent 2px 20px)!important}
  .cover-center{width:auto;max-width:420px;margin:0;padding:0;text-align:left;align-items:flex-start}
  .cover-logo{width:clamp(170px,15vw,235px)}
  .edition-pill{position:static;margin:0 0 20px;transform:rotate(-5deg);font-size:20px}
  .cover-center h1{font-size:clamp(34px,3.4vw,56px);margin:22px 0 26px;max-width:390px}
  .cover-headliners{position:static;display:grid;grid-template-columns:1fr 1fr;gap:18px;max-width:none;margin:0}
  .cover-artist,.poster-stage:not([style]) .cover-artist{aspect-ratio:1/1.08;min-height:0;border-radius:10px}
  .cover-artist>div{inset:auto 16px 16px}
  .cover-artist h2{font-size:clamp(32px,3.25vw,58px);margin:9px 0 11px}
  .cover-bottom{padding-block:17px;grid-template-columns:1fr 1.35fr auto;gap:25px}
}
