/* Festival day overview and daily programme. */
.desktop-nav a[aria-current=page]{color:var(--brand-red);border-bottom:2px solid var(--brand-red)}.home-festival{background:#f5e1bf}.home-day-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.home-day-card{display:grid;grid-template-columns:1.2fr .8fr;min-height:245px;background:var(--brand-red);color:var(--brand-cream);padding:22px 18px;border-radius:4px 38px 38px 4px;overflow:hidden;position:relative;gap:10px}.home-day-card:nth-child(2){background:var(--brand-navy)}.home-day-card:nth-child(3){background:var(--brand-cyan);color:var(--brand-navy)}.home-day-card>div{position:relative;z-index:1;display:flex;flex-direction:column;align-items:flex-start}.home-day-card .eyebrow{font-size:12px;letter-spacing:1.6px}.home-day-card h3{font:800 23px/1.18 var(--serif);letter-spacing:-.6px;margin:13px 0 10px}.home-day-card p{font-size:14px;line-height:1.55;margin:0 0 18px}.home-day-card img{width:100%;height:100%;object-fit:cover;object-position:50% 25%;mask:url('assets/brand/holding-b.svg') center/100% 100% no-repeat;-webkit-mask:url('assets/brand/holding-b.svg') center/100% 100% no-repeat;transform:rotate(5deg);transition:transform .2s}.home-day-card:hover img{transform:rotate(0deg) scale(1.04)}.day-card-cta{font-size:14px;font-weight:700;border-bottom:1px solid currentColor;padding-bottom:3px;margin-top:auto}.day-preview-caption{font-size:12px;color:var(--muted);margin:20px 0 0}.festival-hero{display:grid;grid-template-columns:1.3fr 1fr;background:var(--brand-red);color:var(--brand-cream);padding:38px 7% 48px;gap:65px;overflow:hidden}.festival-breadcrumb{font-size:13px;color:#f8d6bc;display:inline-block;margin-bottom:27px}.festival-breadcrumb span{color:var(--brand-cream);font-weight:700}.festival-eyebrow{font-size:11px;letter-spacing:1.3px;color:var(--brand-cream)}.festival-hero h1{font:800 63px/1.13 var(--serif);letter-spacing:-2px;margin:19px 0 22px}.festival-hero h1 em{font-weight:900;font-style:normal;text-shadow:2px 3px 0 var(--brand-burgundy);display:inline-block;transform:rotate(-4deg)}.festival-hero-copy>p{font-size:17px;line-height:1.65;max-width:450px;color:var(--brand-cream);margin-bottom:25px}.festival-hero .button{font-size:14px}.festival-date-note{font-size:13px;display:inline-block;margin-left:22px;color:#f9ddc3}.festival-hero-art{position:relative;min-height:340px;align-self:center}.festival-hero-main{width:89%;height:315px;object-fit:cover;object-position:50% 30%;mask:url('assets/brand/holding-b.svg') center/100% 100% no-repeat;-webkit-mask:url('assets/brand/holding-b.svg') center/100% 100% no-repeat;transform:rotate(6deg);filter:drop-shadow(4px 7px 0 #63101133)}.festival-wow{position:absolute;right:-5px;bottom:2px;background:var(--brand-cyan);color:var(--brand-navy);padding:21px 27px;border-radius:4px 32px 32px 4px;font-size:19px;font-weight:700;transform:rotate(-7deg);line-height:1.4}.festival-wow strong{font:800 22px var(--serif);letter-spacing:-.6px}.festival-star{position:absolute;right:8%;top:-25px;color:var(--brand-cream);font-size:66px;line-height:1;transform:rotate(10deg)}.day-programme{padding-top:45px;scroll-margin-top:10px}.day-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-bottom:25px}.day-tabs>button{border:1px solid #cebda1;background:#f8e7c9;border-radius:4px 30px 30px 4px;padding:23px 25px;text-align:left;transition:background .15s;color:var(--brand-navy)}.day-tabs>button>span{display:block;font:900 30px/1 var(--serif);letter-spacing:-.8px;margin-bottom:10px}.day-tabs>button strong{display:block;font-size:16px;line-height:1.5}.day-tabs>button small{font-size:13px;line-height:1.6;display:block;margin-top:7px;color:#5c6665}.day-tabs>button.active{background:var(--brand-red);border-color:var(--brand-red);color:var(--brand-cream);box-shadow:0 4px 0 var(--brand-burgundy)}.day-tabs>button.active small{color:#f6dbc3}.day-tabs>button:not(.active):hover{background:#f2d8b4}.festival-preview-note{margin:0 0 36px}.day-intro{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center;margin-bottom:33px}.day-intro h2{font:800 42px/1.15 var(--serif);letter-spacing:-1.3px;margin:14px 0 17px}.day-intro>div>p{font-size:16px;line-height:1.7;color:var(--muted);margin:0;max-width:460px}.daily-spotlight{display:grid;grid-template-columns:105px 1fr;gap:18px;align-items:center;padding:17px;background:#bce5e5;border-radius:4px 30px 30px 4px}.daily-spotlight img{width:105px;height:150px;object-fit:cover;object-position:50% 25%;mask:url('assets/brand/holding-b.svg') center/100% 100% no-repeat;-webkit-mask:url('assets/brand/holding-b.svg') center/100% 100% no-repeat}.daily-spotlight .eyebrow{font-size:9px;letter-spacing:1.2px;color:var(--brand-navy)}.daily-spotlight h3{font:800 20px/1.25 var(--serif);letter-spacing:-.5px;margin:7px 0 8px}.daily-spotlight p{font-size:13px!important;line-height:1.6!important;color:#355765!important;margin:0 0 8px!important}.daily-spotlight button{font-size:13px;color:var(--brand-navy);font-weight:700;text-decoration:underline;padding:3px 0}.festival-toolbar{display:flex;align-items:end;justify-content:space-between;gap:25px;padding:23px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.festival-selects{display:flex;gap:16px;align-items:end}.festival-selects label{display:block}.festival-toolbar .field-label{font-size:12px;letter-spacing:.2px;margin-bottom:7px}.festival-toolbar select{font-size:14px;border:1px solid #d5c5ad;border-radius:4px 17px 17px 4px;background:#fff8eb;color:var(--brand-navy);padding:11px 35px 11px 12px;min-height:43px;width:195px}.festival-search{width:300px}.festival-search .search-wrap{width:100%;height:43px}.festival-search input{width:100%;font-size:14px}.daily-results{display:flex;justify-content:space-between;align-items:center;gap:15px;margin:20px 0 27px;font-size:13px;color:var(--muted)}.daily-results p{margin:0}.daily-results>div{display:flex;align-items:center;gap:22px}.daily-results .checkbox-filter{font-size:13px}.daily-results .clear-filters{font-size:12px;white-space:nowrap}.agenda-caption{display:grid;grid-template-columns:120px 1fr;gap:24px;padding-bottom:14px;border-bottom:2px solid var(--brand-navy);font-size:10px;font-weight:700;letter-spacing:1.1px;color:#536773}.agenda-event{display:grid;grid-template-columns:96px 120px 1fr 152px;gap:24px;padding:27px 0;border-bottom:1px solid var(--line);position:relative;min-width:0}.agenda-times{display:flex;flex-direction:column;align-items:flex-start;padding-top:6px;gap:6px}.agenda-time{font-size:17px;font-weight:700;line-height:1.4;white-space:nowrap;color:var(--brand-navy)}.agenda-time.first-time{font:800 24px/1.1 var(--serif);letter-spacing:-.6px;color:var(--brand-red);margin-bottom:4px}.agenda-times small{font-size:10px;line-height:1.6;color:var(--muted);margin-top:5px}.agenda-image{height:170px;padding:0;overflow:hidden;background:var(--brand-navy);border-radius:4px 26px 26px 4px}.agenda-image img{width:100%;height:100%;object-fit:cover;transition:transform .3s}.agenda-image:hover img{transform:scale(1.06)}.agenda-info{min-width:0;padding-top:3px}.agenda-category{font-size:10px;text-transform:uppercase;letter-spacing:.4px;color:var(--brand-red);font-weight:700;line-height:1.6;margin-bottom:9px}.agenda-category>span{font-weight:400;color:var(--muted);font-size:9px}.agenda-info h3{font:800 25px/1.2 var(--serif);letter-spacing:-.8px;margin:0 0 10px}.agenda-info h3 button{font:inherit;letter-spacing:inherit;padding:0;text-align:left}.agenda-info h3 button:hover{color:var(--brand-red)}.agenda-info>p{font-size:15px;line-height:1.6;color:var(--muted);margin:0 0 10px}.agenda-venue{display:flex;align-items:center;flex-wrap:wrap;gap:6px;font-size:13px;color:#385365;line-height:1.6}.agenda-venue svg{flex-shrink:0}.agenda-duration{color:var(--muted);font-size:12px}.agenda-artists{font-size:12px;line-height:1.6;color:var(--muted);margin-top:8px}.agenda-detail{font-size:13px;font-weight:700;color:var(--brand-red);padding:8px 0 0}.agenda-detail:hover{text-decoration:underline}.agenda-actions{display:flex;flex-direction:column;align-items:flex-end;gap:13px}.agenda-save{width:33px;height:33px;border:1px solid #ccbaa0;border-radius:50%;font:24px/1 Arial;color:var(--brand-red);display:grid;place-items:center;background:#fff6e6}.agenda-save[aria-pressed=true]{background:var(--brand-cyan);color:var(--brand-navy);border-color:var(--brand-cyan)}.agenda-price{text-align:right;line-height:1.3}.agenda-price>span{display:block;font-size:12px;color:var(--muted)}.agenda-price>strong{display:block;font:800 25px/1.4 var(--serif);letter-spacing:-.5px}.agenda-ticket{font-size:12px;min-height:43px;padding:10px 15px;gap:13px;width:100%;justify-content:space-between}.day-bottom-nav{display:flex;justify-content:space-between;align-items:center;gap:25px;padding-top:29px}.day-bottom-nav>span{font-size:13px;color:var(--muted);margin:auto}.day-bottom-nav .button{font-size:13px;min-height:44px;padding:12px 21px}.festival-plan-banner{display:flex;align-items:center;justify-content:space-between;gap:40px;background:var(--brand-red);color:var(--brand-cream);padding:47px 7%}.festival-plan-banner .eyebrow{font-size:10px;letter-spacing:1.3px}.festival-plan-banner h2{font:800 38px/1.2 var(--serif);letter-spacing:-1px;margin:12px 0}.festival-plan-banner h2 em{font-weight:900;font-style:normal}.festival-plan-banner p{font-size:16px;line-height:1.6;color:var(--brand-cream);margin-bottom:0}.festival-plan-banner>.button{flex-shrink:0}.festival-page #day-panel:focus-visible{outline-offset:12px}
@media(max-width:1100px){.desktop-nav{gap:18px;font-size:13px}.home-day-card{padding:19px 15px;gap:9px;grid-template-columns:1.3fr .7fr}.home-day-card h3{font-size:20px}.home-day-card p{font-size:13px}.home-day-card img{height:200px;align-self:center}.festival-hero{gap:30px;padding:34px 6% 43px}.festival-hero h1{font-size:54px;letter-spacing:-1.8px}.festival-hero-copy>p{font-size:16px;max-width:420px}.festival-hero-main{height:290px}.festival-hero-art{min-height:310px}.festival-wow{padding:18px 21px;font-size:17px;right:0}.festival-wow strong{font-size:20px}.festival-date-note{font-size:12px;margin-left:15px}.day-tabs>button{padding:22px}.day-intro{gap:32px}.day-intro h2{font-size:37px}.day-intro>div>p{font-size:15px}.daily-spotlight{grid-template-columns:85px 1fr;gap:14px;padding:15px}.daily-spotlight img{width:85px;height:155px}.daily-spotlight h3{font-size:18px}.daily-spotlight p{font-size:12px!important}.festival-toolbar select{width:175px;font-size:13px}.festival-search{width:270px}.agenda-event{grid-template-columns:83px 100px 1fr 140px;gap:19px}.agenda-caption{grid-template-columns:102px 1fr;gap:19px}.agenda-image{height:165px}.agenda-info h3{font-size:23px}.agenda-info>p{font-size:14px}.agenda-category{font-size:9px}.agenda-time.first-time{font-size:22px}.agenda-time{font-size:16px}.agenda-ticket{font-size:11px;padding:10px 13px}.agenda-venue{font-size:12px}.agenda-artists{font-size:11px}.festival-plan-banner h2{font-size:35px}}
@media(max-width:850px){.home-day-grid{gap:14px}.home-day-card{display:flex;flex-direction:column-reverse;min-height:0;padding:18px}.home-day-card img{height:160px;width:100%;margin-bottom:12px}.home-day-card h3{font-size:20px}.home-day-card p{font-size:13px}.home-day-card>div{flex:1}.day-card-cta{font-size:13px}.festival-hero{grid-template-columns:1.5fr 1fr;gap:27px;padding:30px 6% 40px}.festival-breadcrumb{margin-bottom:24px}.festival-eyebrow{font-size:9px;letter-spacing:1px}.festival-hero h1{font-size:47px;letter-spacing:-1.6px}.festival-hero-copy>p{font-size:15px}.festival-hero-art{min-height:280px}.festival-hero-main{height:265px;width:100%}.festival-wow{padding:15px 17px;font-size:16px;bottom:-17px;right:-10px}.festival-wow strong{font-size:17px}.festival-star{font-size:49px;top:-21px;right:1%}.festival-date-note{display:block;margin:22px 0 0}.day-tabs{gap:11px}.day-tabs>button{padding:19px}.day-tabs>button>span{font-size:27px}.day-tabs>button strong{font-size:14px}.day-tabs>button small{font-size:11px}.day-intro{grid-template-columns:1fr;gap:25px}.day-intro>div>p{max-width:100%}.day-intro h2{font-size:36px}.daily-spotlight{grid-template-columns:85px 1fr;max-width:100%;padding:16px 20px}.daily-spotlight img{height:120px}.daily-spotlight h3{font-size:21px}.daily-spotlight p{font-size:14px!important}.daily-spotlight .eyebrow{font-size:10px}.festival-toolbar{align-items:stretch;flex-direction:column;gap:20px}.festival-selects{gap:15px}.festival-selects label{flex:1}.festival-toolbar select{width:100%;font-size:14px}.festival-search{width:100%}.daily-results .checkbox-filter{font-size:12px}.daily-results>div{gap:13px}.agenda-event{grid-template-columns:75px 85px 1fr;gap:15px;padding:25px 0;grid-template-rows:auto auto}.agenda-times{grid-column:1;grid-row:1/3}.agenda-image{grid-column:2;grid-row:1;height:140px}.agenda-info{grid-column:3;grid-row:1}.agenda-actions{grid-column:2/4;grid-row:2;flex-direction:row;align-items:center;justify-content:flex-end;gap:15px;margin-top:7px}.agenda-save{order:0;margin-right:auto}.agenda-price{display:flex;gap:7px;align-items:center}.agenda-price>span{font-size:11px}.agenda-price>strong{font-size:23px}.agenda-ticket{width:auto;min-width:135px;font-size:12px}.agenda-caption{grid-template-columns:75px 1fr;gap:15px}.agenda-info h3{font-size:22px}.agenda-duration{font-size:11px}.agenda-artists{font-size:12px}.day-bottom-nav{gap:15px}.festival-plan-banner{padding:40px 6%;gap:30px}.festival-plan-banner h2{font-size:31px}.festival-plan-banner p{font-size:15px;max-width:350px}.festival-plan-banner .button{font-size:12px;padding:13px 20px}}
@media(max-width:600px){.home-day-grid{grid-template-columns:1fr;gap:17px}.home-day-card{display:grid;grid-template-columns:1.4fr 1fr;min-height:230px;padding:22px 19px;gap:17px}.home-day-card img{height:200px;margin:0;width:100%}.home-day-card .eyebrow{font-size:11px}.home-day-card h3{font-size:22px;line-height:1.2;letter-spacing:-.6px;margin:12px 0 11px}.home-day-card p{font-size:14px;line-height:1.6;margin-bottom:18px}.day-card-cta{font-size:14px}.day-preview-caption{font-size:12px;line-height:1.6}.festival-hero{display:block;padding:24px 6% 37px;position:relative}.festival-breadcrumb{font-size:12px;margin-bottom:23px}.festival-eyebrow{font-size:8px;letter-spacing:.8px;line-height:1.6}.festival-hero h1{font-size:42px;line-height:1.17;letter-spacing:-1.4px;margin:18px 0 22px}.festival-hero-copy>p{font-size:16px;line-height:1.65;margin-bottom:23px}.festival-hero .button{font-size:13px}.festival-date-note{display:inline-block;font-size:11px;margin:0 0 0 14px}.festival-hero-art{min-height:0;height:245px;max-width:330px;margin:32px auto 6px}.festival-hero-main{height:228px;width:80%;object-position:50% 26%;transform:rotate(5deg)}.festival-wow{right:3px;bottom:0;font-size:16px;padding:17px 21px;transform:rotate(-7deg)}.festival-wow strong{font-size:19px}.festival-star{font-size:48px;top:3px;right:4%}.day-programme{padding-top:29px}.day-tabs{gap:7px;margin-bottom:23px}.day-tabs>button{padding:16px 11px 15px;border-radius:3px 23px 23px 3px;min-width:0}.day-tabs>button>span{font-size:23px;letter-spacing:-.7px;margin-bottom:9px}.day-tabs>button strong{font-size:12px;line-height:1.5;font-weight:700;min-height:36px}.day-tabs>button small{font-size:10px;line-height:1.5;margin-top:8px}.festival-preview-note{font-size:12px;line-height:1.65;margin-bottom:29px;padding:14px 12px;gap:8px}.day-intro{gap:23px;margin-bottom:27px}.day-intro h2{font-size:32px;line-height:1.2;letter-spacing:-1px;margin:13px 0 16px}.day-intro>div>p{font-size:15px;line-height:1.7}.daily-spotlight{grid-template-columns:75px 1fr;gap:13px;padding:15px 13px;border-radius:3px 24px 24px 3px}.daily-spotlight img{width:75px;height:145px}.daily-spotlight .eyebrow{font-size:8px;letter-spacing:.8px}.daily-spotlight h3{font-size:18px;line-height:1.25;margin:7px 0 8px;letter-spacing:-.6px}.daily-spotlight p{font-size:12px!important;line-height:1.6!important}.daily-spotlight button{font-size:12px;line-height:1.6}.festival-toolbar{gap:17px;padding:20px 0}.festival-selects{gap:11px}.festival-toolbar .field-label{font-size:12px;letter-spacing:0;margin-bottom:7px}.festival-toolbar select{font-size:13px;padding:10px 23px 10px 9px;min-height:43px;border-radius:3px 15px 15px 3px}.festival-search input{font-size:14px}.daily-results{font-size:12px;align-items:flex-start;margin:19px 0 23px;gap:10px;line-height:1.6}.daily-results p{max-width:155px}.daily-results>div{flex-direction:column;align-items:flex-end;gap:8px}.daily-results .checkbox-filter{font-size:11px;gap:4px;margin:0}.daily-results .checkbox-filter input{width:14px;height:14px;margin:0 3px 0 0}.daily-results .clear-filters{font-size:11px}.agenda-caption{grid-template-columns:65px 1fr;gap:12px;font-size:8px;letter-spacing:.7px;padding-bottom:12px}.agenda-event{grid-template-columns:65px 1fr;gap:0 12px;grid-template-rows:112px auto auto;padding:22px 0;min-width:0}.agenda-times{grid-column:1;grid-row:1/4;gap:6px;padding-top:5px}.agenda-time.first-time{font-size:19px;letter-spacing:-.6px}.agenda-time{font-size:15px}.agenda-times small{font-size:9px;line-height:1.6;max-width:55px}.agenda-image{grid-column:2;grid-row:1;height:110px;width:100%;border-radius:3px 24px 24px 3px}.agenda-image img{object-position:50% 23%!important}.agenda-info{grid-column:2;grid-row:2;padding-top:15px;min-width:0}.agenda-category{font-size:9px;line-height:1.6;letter-spacing:.2px;margin-bottom:8px}.agenda-category>span{display:block;font-size:9px;line-height:1.5}.agenda-info h3{font-size:23px;line-height:1.2;letter-spacing:-.7px;margin-bottom:9px}.agenda-info>p{font-size:14px;line-height:1.6;margin-bottom:10px}.agenda-venue{font-size:12px;line-height:1.6;gap:6px}.agenda-duration{display:block;font-size:11px}.agenda-artists{font-size:11px;line-height:1.6;margin-top:9px}.agenda-detail{font-size:13px;padding-top:8px}.agenda-actions{grid-column:2;grid-row:3;display:grid;grid-template-columns:1fr 35px;gap:12px;margin-top:17px;align-items:center}.agenda-price{grid-column:1;grid-row:1;text-align:left;display:flex;gap:7px;align-items:baseline}.agenda-price>span{font-size:11px}.agenda-price>strong{font-size:23px}.agenda-save{grid-column:2;grid-row:1;width:32px;height:32px;font-size:23px;order:initial;margin:0}.agenda-ticket{grid-column:1/3;grid-row:2;width:100%;font-size:13px;min-height:43px;padding:10px 15px;gap:15px}.day-bottom-nav{padding-top:25px;gap:10px;flex-wrap:wrap}.day-bottom-nav>span{font-size:12px;order:3;flex-basis:100%;text-align:center;margin-top:7px}.day-bottom-nav .button{font-size:12px;padding:11px 16px;min-height:43px}.day-bottom-nav #next-day{margin-left:auto}.festival-plan-banner{display:block;padding:36px 6% 42px}.festival-plan-banner .eyebrow{font-size:8px;letter-spacing:1.1px}.festival-plan-banner h2{font-size:29px;line-height:1.2;letter-spacing:-1px;margin:15px 0}.festival-plan-banner p{font-size:15px;line-height:1.65;max-width:100%;margin-bottom:25px}.festival-plan-banner .button{font-size:13px;min-height:45px;padding:12px 22px}.festival-page footer{padding-top:24px}.festival-page #day-panel:focus-visible{outline-offset:5px}}
@media(max-width:360px){.festival-hero h1{font-size:38px;letter-spacing:-1.2px}.festival-date-note{font-size:10px;margin-left:10px}.festival-hero .button{font-size:12px;padding:13px 17px}.day-tabs>button{padding:15px 9px}.day-tabs>button>span{font-size:21px}.day-tabs>button strong{font-size:11px}.day-tabs>button small{font-size:9px}.day-intro h2{font-size:29px}.agenda-event{grid-template-columns:58px 1fr;gap:0 11px}.agenda-caption{grid-template-columns:58px 1fr;gap:11px}.agenda-info h3{font-size:21px}.agenda-time.first-time{font-size:18px}.daily-results p{max-width:135px}.home-day-card{padding:20px 16px;gap:12px;grid-template-columns:1.5fr 1fr}.home-day-card h3{font-size:20px}}
