/* Shared navigation and the seven festival pages. */
header{gap:24px}#navigation{gap:21px;font-size:13px}#navigation a{white-space:nowrap}#navigation [aria-current="page"]{text-decoration:underline;text-underline-offset:7px;text-decoration-thickness:2px}.coming-soon[href]{cursor:pointer}.footer-links{display:flex;position:static;flex-basis:100%;flex-wrap:wrap;gap:14px 26px;background:none;color:var(--cream);font-size:12px;padding:14px 0 0;box-shadow:none;border:0}.footer-links a:hover{text-decoration:underline}.page-directory{background:#ffeedb}.page-directory h2{margin-top:22px}.directory-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:35px}.directory-grid>a{position:relative;min-height:160px;border:1px solid #005b5930;border-radius:16px;padding:23px;background:var(--cream);transition:transform .2s}.directory-grid>a:hover{transform:translateY(-3px);border-color:var(--teal)}.directory-grid>a>span{font-family:Outfit,sans-serif;font-size:25px;font-weight:800;letter-spacing:-.6px}.directory-grid p{font-size:13px;margin-top:10px;max-width:180px;padding-right:15px}.directory-grid .signpost-icon{position:absolute;right:19px;bottom:20px}.inner-page section.page-hero{position:relative;padding:38px 6% 132px;overflow:hidden}.page-hero-inner{max-width:1180px;margin:auto}.breadcrumb{display:inline-block;border-bottom:1px solid;font-size:12px;margin-bottom:31px;padding:5px 0}.page-hero .eyebrow{margin-bottom:24px}.page-hero h1{font-size:clamp(48px,7vw,90px);line-height:1.02;letter-spacing:-3.8px;max-width:1000px}.page-lede{max-width:650px;font-size:19px;line-height:1.65;margin-top:27px}.page-hills{position:absolute;bottom:-1px;left:0;width:100%;height:94px;pointer-events:none}.page-hills svg{width:100%;height:100%;display:block}.tone-yellow{background:var(--yellow)}.tone-yellow h1 em{color:var(--teal)}.tone-orange{background:var(--orange)}.tone-orange h1 em{color:var(--cream)}.tone-teal{background:var(--teal);color:var(--cream)}.tone-teal h1 em{color:var(--yellow)}.tone-teal .page-hills path:last-child{fill:var(--cream)}.tone-teal .page-status{border-color:#fff9ec80;color:var(--cream)}.tone-cream{background:var(--cream)}.page-status{display:inline-block;padding:7px 14px;font-size:12px;font-weight:700;line-height:1.4;border:1px solid #005b5960;border-radius:30px}.page-hero .page-status{margin-top:25px}.page-content{max-width:1440px;margin:auto}.section-heading{max-width:820px}.section-heading h2{font-size:clamp(38px,5vw,62px);margin-top:22px;letter-spacing:-2px}.section-heading>p:last-child{font-size:17px;line-height:1.7;max-width:690px;margin-top:24px}.cards-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:36px}.info-card{background:#ffeedb;border-radius:18px;padding:30px;scroll-margin-top:125px}.card-number{display:block;letter-spacing:2px;font-size:11px;font-weight:700;color:#a33a0f;margin-bottom:27px}.info-card h3{font-size:27px;line-height:1.13;letter-spacing:-.7px}.info-card p{font-size:15px;line-height:1.7;margin-top:18px}.info-card .button{margin-top:22px;font-size:12px;padding:11px 17px;gap:13px}.split-content{display:grid;grid-template-columns:1fr 1.1fr;gap:65px;align-items:center}.split-content h2{font-size:clamp(40px,5vw,64px);letter-spacing:-2px;margin-top:22px}.split-content p{margin-top:22px;font-size:16px;line-height:1.7}.split-content .body-large{font-size:25px;line-height:1.45;font-weight:600}.split-content .button{margin-top:28px}.split-content .record-art{min-height:330px}.feature-strip{background:var(--yellow);text-align:center}.feature-strip h2{font-size:clamp(40px,5vw,68px);letter-spacing:-2px;margin-top:22px}.feature-strip h2 em{color:var(--teal)}.feature-strip>p:not(.eyebrow){font-size:18px;max-width:700px;margin:25px auto 0}.feature-strip .button,.feature-strip .page-status{margin-top:28px}.inner-page section.page-endnote{display:flex;justify-content:space-between;align-items:center;gap:45px;background:#ffeedb}.page-endnote h2{font-size:clamp(32px,4vw,48px);letter-spacing:-1.5px}.page-endnote p{font-size:16px;max-width:640px;margin-top:16px}.page-endnote>.button{flex-shrink:0}.info-jumps{display:flex;position:static;background:none;flex-wrap:wrap;gap:12px;margin-bottom:25px;padding:0;border:0;box-shadow:none}.info-jumps a{padding:10px 18px;border:1px solid #005b5950;border-radius:30px;font-size:13px;font-weight:700}.info-jumps a:hover{background:var(--teal);color:var(--cream)}.charity-fact{border-top:1px solid #005b5940;border-bottom:1px solid #005b5940;padding:20px 0;margin-top:28px;display:flex;align-items:center;justify-content:space-between;gap:20px}.charity-fact span{font-size:13px}.charity-fact strong{font-family:Outfit,sans-serif;font-size:33px;letter-spacing:1px}.merch-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;margin-top:36px}.merch-card{overflow:hidden;border:1px solid #005b5925;border-radius:20px;background:var(--cream)}.merch-card img{display:block;width:100%;height:auto}.merch-card>div{padding:28px}.merch-card h3{font-size:27px;margin-top:18px}.merch-card p{font-size:15px;margin-top:14px}.notice-panel{background:#ffeedb;border-radius:16px;padding:28px 32px;margin-top:28px}.notice-panel h3{font-size:25px}.notice-panel p{font-size:15px;line-height:1.7;margin-top:12px}.info-card:target{outline:2px solid var(--teal);outline-offset:4px}
@media(max-width:1100px) and (min-width:1001px){#navigation{gap:14px;font-size:12px}.nav-button{padding:11px 16px}}
@media(max-width:1000px){header{position:relative}.menu-toggle{display:flex;gap:12px;border:0;background:none;color:var(--teal);font-size:14px;font-weight:700;align-items:center;min-height:48px}.menu-toggle span{font-size:20px}#navigation{display:none;position:absolute;top:100%;left:0;right:0;background:var(--cream);z-index:30;flex-direction:column;align-items:stretch;padding:14px 6% 22px;gap:4px;box-shadow:0 15px 20px #005b5910;border-bottom:1px solid #005b5925}#navigation.open{display:flex}#navigation>a{min-height:44px;padding:11px 14px}.nav-button{text-align:center}#navigation [aria-current="page"]{background:#ffeedb;border-radius:8px}#navigation .nav-button[aria-current="page"]{background:var(--teal)}.directory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cards-grid{gap:14px}.info-card{padding:23px}.split-content{gap:35px}}
@media(max-width:700px){header{position:sticky}.inner-page section.page-hero{padding:20px 6% 90px}.breadcrumb{margin-bottom:25px}.page-hero .eyebrow{font-size:9px;letter-spacing:1.3px;max-width:290px;margin-bottom:18px}.page-hero h1{font-size:clamp(41px,11vw,62px);letter-spacing:-1.8px}.page-lede{font-size:16px;line-height:1.6;margin-top:21px}.page-hills{height:55px}.page-status{font-size:11px}.directory-grid{gap:12px;margin-top:26px}.directory-grid>a{padding:19px 16px;min-height:166px}.directory-grid>a>span{font-size:23px}.directory-grid p{font-size:12px;padding-right:0}.directory-grid .signpost-icon{width:18px;height:18px;right:14px;bottom:14px}.cards-grid,.split-content,.merch-grid{grid-template-columns:1fr}.cards-grid{margin-top:26px;gap:16px}.info-card{padding:25px}.card-number{margin-bottom:17px}.info-card h3{font-size:26px}.info-card p{font-size:15px;margin-top:14px}.section-heading h2{font-size:39px;letter-spacing:-1.5px}.section-heading>p:last-child{font-size:15px;margin-top:20px}.split-content{gap:24px}.split-content h2{font-size:40px}.split-content .record-art{min-height:220px}.split-content .record{width:200px;height:200px}.split-content .record-label{width:85px;height:85px}.split-content .body-large{font-size:22px}.split-content p{font-size:15px}.feature-strip h2{font-size:41px}.feature-strip>p:not(.eyebrow){font-size:16px}.inner-page section.page-endnote{flex-direction:column;align-items:flex-start;gap:24px}.page-endnote h2{font-size:36px;letter-spacing:-1px}.page-endnote p{font-size:15px}.footer-links{display:flex;flex-direction:row;align-items:center;gap:12px 20px;padding:10px 0 0;font-size:12px;min-width:0}.footer-links a{min-height:36px;display:inline-flex;align-items:center}.info-jumps{display:flex;flex-direction:row;align-items:center;gap:8px;position:static;padding:0;margin-bottom:22px;background:none}.info-jumps a{font-size:12px;min-height:42px;padding:9px 14px}.charity-fact strong{font-size:29px}.merch-grid{gap:23px;margin-top:28px}.merch-card>div{padding:24px}.merch-card h3{font-size:26px}.notice-panel{padding:25px}.notice-panel h3{font-size:24px}}
/* Our local illustrated map and the real village hall. */
.map-section{padding-bottom:38px!important}.local-map{margin:32px 0 0;background:var(--cream);border:1px solid #005b5925;border-radius:22px;overflow:hidden}.local-map>a{display:block;cursor:zoom-in}.local-map img{display:block;width:100%;height:auto}.local-map figcaption{padding:15px 22px;border-top:1px solid #005b5915;font-size:12px;line-height:1.6}.local-map figcaption a,.venue-photo figcaption a{text-decoration:underline;text-underline-offset:3px}.map-actions{display:flex;flex-wrap:wrap;align-items:center;gap:18px 26px;margin-top:26px}.map-actions .button{margin-top:0}.location-panel{display:grid;grid-template-columns:1fr 1.25fr;gap:50px;background:var(--yellow);padding:35px;border-radius:18px;margin-top:32px}.location-panel h3{font-size:30px;line-height:1.15;margin-top:17px}.location-panel p:not(.eyebrow){font-size:16px;line-height:1.7;margin-top:16px}.location-panel .text-link{display:inline-block;margin-top:18px}address{font-style:normal;font-size:16px;line-height:1.75;margin-top:18px}.venue-photo{margin:0;overflow:hidden;border-radius:18px;background:#ffeedb}.venue-photo img{display:block;width:100%;height:auto}.venue-photo figcaption{font-size:11px;line-height:1.65;padding:14px 18px}.venue-section{align-items:center}.booking-notes{padding-top:0!important}.booking-notes .notice-panel{margin-top:0}.booking-notes .notice-panel h3{margin-top:17px}.area-guide{padding-top:28px!important}.map-section .section-heading>p:last-child{max-width:800px}
@media(max-width:700px){.map-section{padding-bottom:25px!important}.local-map{margin-top:26px;border-radius:14px}.local-map figcaption{font-size:11px;padding:13px 15px}.map-actions{gap:18px;margin-top:23px}.location-panel{grid-template-columns:1fr;gap:25px;padding:25px;margin-top:26px}.location-panel h3{font-size:27px}.location-panel p:not(.eyebrow),address{font-size:15px}.venue-photo figcaption{font-size:10px;padding:12px 15px}.area-guide{padding-top:20px!important}}

details p a{text-decoration:underline;text-underline-offset:3px}

/* Proposed festival layout: distinct from the geographic village map. */
.festival-plan-section{background:#ffeedb;max-width:none}.festival-plan-section>.section-heading,.festival-plan-section>.local-map,.festival-plan-section>.map-actions,.festival-area-key{max-width:1200px;margin-left:auto;margin-right:auto}.festival-plan-section .section-heading{max-width:1200px}.festival-plan-section .section-heading>p:last-of-type{max-width:760px}.concept-status{margin-top:24px;background:var(--cream)}.festival-site-plan{background:var(--cream)}.festival-area-key{margin-top:48px;scroll-margin-top:120px}.festival-area-key>h3{font-size:35px;letter-spacing:-1px;margin-top:18px}.festival-area-list{list-style:none;padding:0;margin:28px 0 0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.festival-area-list>li{display:flex;align-items:flex-start;gap:15px;background:var(--cream);padding:25px;border-radius:16px;border:1px solid #005b5920}.area-key-number{display:grid;place-items:center;width:34px;height:34px;flex-shrink:0;border-radius:50%;background:var(--teal);color:var(--cream);font-weight:800;font-size:14px}.festival-area-list h4{font-family:Outfit,sans-serif;margin:3px 0 0;font-size:22px;line-height:1.15;letter-spacing:-.4px}.festival-area-list p{font-size:14px;line-height:1.65;margin-top:12px}
@media(max-width:1000px){.festival-area-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.festival-area-list{grid-template-columns:1fr;gap:13px}.festival-area-list>li{padding:22px}.festival-area-key{margin-top:35px}.festival-area-key>h3{font-size:29px}.festival-area-list h4{font-size:23px}.festival-area-list p{font-size:14px}.festival-plan-section .map-actions .button{font-size:13px}}

/* Light, responsive festival concept photography. */
.festival-photo{margin:0;background:var(--cream);border-radius:18px;overflow:hidden;border:1px solid #005b5920}.festival-photo img{display:block;width:100%;height:auto}.festival-photo figcaption{font-size:11px;line-height:1.65;padding:14px 18px;color:var(--ink)}.festival-photo figcaption>span{display:inline-block;font-weight:800;font-size:10px;letter-spacing:.6px;text-transform:uppercase;margin-right:7px;color:var(--teal)}.photo-band{background:var(--cream);padding-top:38px!important;padding-bottom:38px!important}.photo-band>.festival-photo{max-width:1200px;margin:0 auto}.festival-photo-wide img{aspect-ratio:16/9;object-fit:cover;object-position:center 43%}.music-grid>.festival-photo{min-width:0}.festival-scenes .text-link{display:inline-block;margin-top:25px}.festival-scenes .festival-photo{min-width:0}
@media(max-width:700px){.photo-band{padding-top:25px!important;padding-bottom:25px!important}.festival-photo{border-radius:14px}.festival-photo-wide img{aspect-ratio:3/2;object-fit:contain}.festival-photo figcaption{font-size:11px;padding:12px 15px}.festival-scenes .text-link{margin-top:20px}}

/* Brand-accurate merch artwork and food, bar and yurt concepts. */
.merch-preview-link{display:block;cursor:zoom-in}.merch-preview-link:focus-visible{outline-offset:-5px}.festival-life-section{background:#ffeedb}.festival-life-section>.section-heading,.festival-life-section>.festival-life-grid{max-width:1200px;margin-left:auto;margin-right:auto}.festival-life-grid{display:grid;gap:24px;margin-top:32px}.festival-life-grid.two-up{grid-template-columns:repeat(2,minmax(0,1fr))}.festival-life-grid.three-up{grid-template-columns:repeat(3,minmax(0,1fr))}.festival-life-grid .festival-photo{min-width:0}.festival-life-grid img{aspect-ratio:3/2;object-fit:cover}.festival-life-section>.text-link{display:inline-block;margin-top:28px}
@media(max-width:1000px){.festival-life-grid.three-up{grid-template-columns:repeat(2,minmax(0,1fr))}.festival-life-grid.three-up>.festival-photo:last-child{grid-column:1/-1;max-width:760px;margin:auto}}
@media(max-width:700px){.festival-life-grid.two-up,.festival-life-grid.three-up{grid-template-columns:1fr;gap:20px;margin-top:26px}.festival-life-grid.three-up>.festival-photo:last-child{grid-column:auto;max-width:none}.festival-life-section>.text-link{margin-top:23px}}
