@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,500;0,600;0,700;1,500;1,600&display=swap');
:root{--green:#17382b;--cream:#f6f2e7;--gold:#e4bf6d;--maroon:#782a2c;--ink:#23382d}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;font-size:16px;line-height:1.7}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}img{display:block;max-width:100%}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:'Playfair Display',Georgia,serif;font-weight:500;line-height:1.12}h2{font-size:clamp(36px,4.2vw,61px);letter-spacing:-1.8px}h3{font-size:29px}p+p{margin-top:18px}.wrap{max-width:1320px;width:calc(100% - 120px);margin:auto}.review{background:var(--maroon);color:#fff0d2;text-align:center;padding:7px 20px;font-size:10px;letter-spacing:1.2px;font-weight:600}.review span{margin-left:22px;font-weight:400;letter-spacing:.4px}header{height:98px;padding:12px 60px;display:flex;align-items:center;justify-content:space-between;background:var(--cream);position:relative;z-index:5;border-bottom:1px solid #d4d9cb}.brand img{width:166px;max-height:78px;object-fit:contain}nav{display:flex;gap:32px;align-items:center;font-size:13px;font-weight:600}nav a:hover,.text-link:hover{color:var(--maroon)}.nav-ticket{background:var(--green);color:var(--cream);padding:12px 23px}.nav-ticket span{margin-left:35px}.nav-ticket:hover{color:var(--gold)}.menu-toggle{display:none}.hero{min-height:690px;height:calc(100vh - 130px);max-height:920px;position:relative;isolation:isolate;color:white;display:flex;align-items:center}.hero-image,.hero-shade{position:absolute;inset:0;width:100%;height:100%;z-index:-2;object-fit:cover;object-position:center 45%}.hero-shade{z-index:-1;background:linear-gradient(90deg,rgba(11,32,22,.91) 0%,rgba(11,32,22,.55) 48%,rgba(11,32,22,.06) 100%),linear-gradient(0deg,rgba(11,32,22,.65),transparent 40%)}.hero-content{padding:70px 60px 110px;width:850px}.eyebrow{font-size:11px;font-weight:700;letter-spacing:2.5px;line-height:1.7;color:var(--gold);margin-bottom:25px}.maroon{color:var(--maroon)}h1{font-size:clamp(62px,7.5vw,112px);letter-spacing:-4px;line-height:1.02}h1 em{font-weight:500;color:var(--gold)}.hero-intro{max-width:480px;font-size:17px;margin-top:28px;color:#f3f0e4}.actions{display:flex;align-items:center;gap:35px;margin-top:33px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:32px;font-weight:600;font-size:13px;padding:16px 23px;transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px)}.gold{background:var(--gold);color:var(--green)}.green{background:var(--green);color:white}.outline{border:1px solid #829182}.text-link{font-size:13px;font-weight:600;border-bottom:1px solid currentColor;padding-bottom:6px;display:inline-block}.light{color:white}.light:hover{color:var(--gold)}.hero-bottom{position:absolute;bottom:27px;left:60px;right:60px;display:flex;justify-content:space-between;border-top:1px solid #ffffff60;padding-top:18px;font-size:9px;letter-spacing:1.8px}.hero-bottom span:last-child{letter-spacing:.3px}.welcome{padding:110px 0 70px;display:grid;grid-template-columns:1fr 1fr;gap:90px}.welcome-copy{padding-top:40px}.welcome-copy p{color:#647065;font-size:15px}.welcome-copy .lead{font-size:21px;color:var(--green);line-height:1.6}.welcome-copy a{margin-top:25px}.stories{display:grid;grid-template-columns:1.55fr 1fr;gap:30px;padding-bottom:110px}.story{position:relative;height:450px;overflow:hidden;background:var(--green)}.story img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.story:hover img{transform:scale(1.025)}.story:after{content:'';position:absolute;inset:35% 0 0;background:linear-gradient(transparent,#0b211cdd)}figcaption{position:absolute;bottom:32px;left:32px;z-index:1;color:white}figcaption span{font-size:10px;letter-spacing:2px}figcaption h3{margin-top:10px;font-size:31px}.programme{background:var(--green);color:var(--cream);padding:90px 0}.section-top{display:flex;align-items:end;justify-content:space-between;gap:45px;margin-bottom:45px}.section-top>p{font-size:14px;max-width:350px;opacity:.8}.day-tabs{display:flex;border-bottom:1px solid #82907b;margin-top:50px;gap:32px}.day-tabs button{display:flex;gap:18px;align-items:center;background:none;border:0;border-bottom:3px solid transparent;color:#a8b5a5;padding:18px 28px 22px 0;font-family:Georgia,serif;font-size:54px}.day-tabs button[aria-selected=true]{color:var(--gold);border-color:var(--gold)}.day-tabs button span{text-align:left;font:500 12px/1.8 'DM Sans',Arial;letter-spacing:1px}.day-panel{display:grid;grid-template-columns:1fr 1fr;gap:60px;padding:46px 0 32px}.day-panel[hidden]{display:none}.day-panel article{display:flex;gap:25px}.number{font:italic 25px Georgia;color:var(--gold)}.tag{font-size:10px;font-weight:700;letter-spacing:1.8px;margin-bottom:12px;color:var(--maroon)}.programme .tag{color:var(--gold)}.day-panel h3{font-size:29px}.day-panel article p:last-child{font-size:14px;margin-top:18px;opacity:.8;max-width:420px}.small{font-size:11px;opacity:.7}.visit{display:grid;grid-template-columns:1fr 1fr;gap:110px;padding:110px 0}.visit-intro>p:not(.eyebrow){margin-top:27px;font-size:15px;color:#647065;max-width:450px}.address{margin-top:35px;padding:28px 0;border-top:1px solid #ccd0c1}.address>span{font-size:10px;letter-spacing:2px;color:var(--maroon);font-weight:700}.address h3{font-size:27px;margin-top:14px}.address p{font-size:13px;margin:10px 0 20px}.address small{display:block;max-width:340px;color:#697262;font-size:11px;margin-top:15px}.travel-details{padding-top:35px}details{border-bottom:1px solid #c8cfbd;padding:23px 0}summary{font-weight:600;cursor:pointer;list-style:none;display:flex;gap:15px;font-size:16px;align-items:center}summary:after{content:'+';margin-left:auto;font-size:23px;font-weight:400}details[open] summary:after{content:'−'}summary::-webkit-details-marker{display:none}summary span{font-size:11px;color:var(--maroon)}details p{font-size:13px;color:#616e60;padding-left:30px;margin-top:17px}.travel-details>.button{margin-top:30px}.tickets{background:var(--maroon);color:var(--cream);padding:85px 0;position:relative}.ticket-layout{display:grid;grid-template-columns:1fr 1fr;gap:110px;align-items:center}.tickets h2{font-size:67px}.tickets p:not(.eyebrow,.tag){margin-top:27px}.tickets .text-link{margin-top:27px}.ticket-card{padding:42px;background:var(--cream);color:var(--green);border-top:5px solid var(--gold)}.ticket-card h3{font-size:40px}.ticket-card p:not(.tag){font-size:14px;color:#616e60;margin-top:20px;max-width:330px}.ticket-status{display:flex;align-items:center;gap:9px;margin:25px 0;font-size:12px}.ticket-status span{width:7px;height:7px;border-radius:50%;background:var(--maroon)}.ticket-card .button{width:100%}.ticket-card small{display:block;font-size:10px;color:#687263;line-height:1.6;margin-top:18px}.updates{padding:105px 0}.update-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}.update-grid article{border-top:2px solid var(--green);padding-top:25px;display:flex;flex-direction:column}.update-type{font-size:10px;color:var(--maroon);font-weight:700;letter-spacing:1.7px}.update-grid h3{margin-top:23px;font-size:30px;max-width:300px}.update-grid p{font-size:14px;color:#647065;margin:22px 0 27px}.update-grid a{margin-top:auto;align-self:start}.partner{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center;padding-bottom:110px}.partner img{width:100%;height:425px;object-fit:cover}.partner p:not(.eyebrow){font-size:14px;color:#647065;margin:27px 0;max-width:400px}.contact{background:var(--green);color:var(--cream);padding:85px 0;text-align:center}.contact h2{font-size:clamp(42px,5vw,72px)}.contact a{display:inline-block;margin-top:35px;color:var(--gold);border-bottom:1px solid var(--gold);font-size:18px}footer{padding:35px 0;display:flex;justify-content:space-between;gap:30px;font-size:10px}footer p:first-child{font-weight:700;letter-spacing:1px}footer span{display:block;font-weight:400;letter-spacing:0;margin-top:8px}footer p:nth-child(2){color:#697262}footer a{align-self:start;font-weight:600}.skip{position:fixed;top:-100px;left:10px;z-index:99;background:white;padding:10px}.skip:focus{top:10px}:focus-visible{outline:3px solid #bc8528;outline-offset:5px}
@media(min-width:1600px){.hero-content{margin-left:calc((100vw - 1440px)/2)}}
@media(max-width:1000px){.wrap{width:calc(100% - 64px)}header{padding:12px 32px}nav{gap:20px}.hero-content{padding-left:32px}.hero-bottom{left:32px;right:32px}.welcome,.visit,.ticket-layout{gap:45px}.partner{gap:40px}.stories{gap:20px}.hero{min-height:640px}.ticket-card{padding:30px}}
@media(max-width:720px){html{scroll-padding-top:20px}.wrap{width:calc(100% - 40px)}.review{font-size:9px}.review span{display:block;margin:2px 0 0;font-size:9px}header{height:85px;padding:8px 20px}.brand img{width:135px}.menu-toggle{display:block;background:transparent;border:1px solid #9ca98e;padding:7px 12px;font-size:12px}.menu-toggle span{margin-left:10px}nav{display:none;position:absolute;top:85px;left:0;right:0;background:var(--cream);padding:20px;box-shadow:0 15px 20px #17382b30}nav.open{display:flex;flex-direction:column;align-items:stretch;gap:0}nav a{padding:13px}.hero{height:auto;min-height:640px}.hero-content{padding:65px 20px 115px}.hero-image{object-position:60% center}.hero-shade{background:linear-gradient(90deg,#0b2016d9,#0b201650),linear-gradient(0deg,#0b2016c9,transparent)}h1{font-size:65px;letter-spacing:-2.5px}.hero .eyebrow{font-size:9px;letter-spacing:1.5px}.hero-intro{font-size:15px;max-width:340px}.actions{gap:20px;align-items:start;flex-direction:column}.hero-bottom{left:20px;right:20px;bottom:22px;display:block;font-size:8px}.hero-bottom span:last-child{display:block;margin-top:5px}.welcome{padding:65px 0 35px;display:block}.welcome-copy{padding-top:25px}.welcome-copy .lead{font-size:19px}h2{font-size:39px;letter-spacing:-1px}.stories{padding-bottom:65px;grid-template-columns:1fr}.story{height:370px}.story.narrow{height:390px}.narrow img{object-position:center 35%}.programme{padding:60px 0}.section-top{display:block;margin-bottom:30px}.section-top>p{margin-top:25px}.day-tabs{gap:20px;margin-top:25px}.day-tabs button{font-size:37px;gap:10px;padding-right:0}.day-tabs button span{font-size:10px;letter-spacing:0}.day-panel{grid-template-columns:1fr;gap:35px;padding-top:30px}.day-panel h3{font-size:26px}.visit{padding:65px 0;grid-template-columns:1fr;gap:0}.travel-details{padding-top:0}.ticket-layout{grid-template-columns:1fr;gap:35px}.tickets{padding:60px 0}.tickets h2{font-size:48px}.ticket-card h3{font-size:36px}.updates{padding:65px 0}.update-grid{grid-template-columns:1fr;gap:36px}.update-grid h3{max-width:none}.partner{grid-template-columns:1fr;gap:35px;padding-bottom:65px}.partner img{height:320px}.contact{padding:65px 0}.contact a{font-size:15px}footer{display:block}footer p{margin-bottom:20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.campaign{background:#ebe6d6;padding:70px 0 80px;margin-bottom:75px}.campaign-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:85px;align-items:center}.poster-link{display:block;max-width:490px;margin:auto;box-shadow:0 14px 35px #17382b22}.poster-link img{width:100%;height:auto}.campaign-copy h2 em{color:var(--maroon)}.campaign-copy .lead{font:500 27px/1.4 'Playfair Display',Georgia,serif;margin-top:28px}.campaign-copy>p:not(.eyebrow,.lead,.campaign-date){font-size:14px;color:#647065;max-width:420px;margin-top:25px}.campaign-date{font-size:12px;font-weight:700;letter-spacing:1.5px;margin-top:28px}.campaign-date span{font-size:12px;font-weight:400;letter-spacing:0}.campaign-copy .actions{gap:24px;flex-wrap:wrap}@media(max-width:1000px){.campaign-layout{gap:40px}}@media(max-width:720px){.campaign{padding:45px 0 55px;margin-bottom:55px}.campaign-layout{grid-template-columns:1fr;gap:38px}.poster-link{max-width:430px}.campaign-copy .actions{flex-direction:row;gap:20px}.campaign-copy h2{font-size:43px}}

.highlights{background:#10291f;color:var(--cream);padding:85px 0}.highlight-layout{display:grid;grid-template-columns:minmax(0,3fr) minmax(190px,1fr);gap:30px}.highlight-screen{aspect-ratio:16/9;background:#081a12 url('assets/road-march.jpg') center/cover}.highlight-screen iframe{width:100%;height:100%;border:0;display:block}.highlight-caption{display:flex;justify-content:space-between;gap:16px;padding-top:18px;font-size:12px}.highlight-caption a{color:var(--gold)}.highlight-note{font-size:11px;color:#b8c3b7;margin-top:12px}.highlight-years{display:flex;flex-direction:column;gap:12px}.highlight-years button{text-align:left;background:transparent;color:var(--cream);border:1px solid #526452;padding:19px 24px;flex:1}.highlight-years button[aria-pressed=true]{background:var(--gold);color:var(--green);border-color:var(--gold)}.highlight-years span{display:block;font-size:9px;letter-spacing:1.4px}.highlight-years strong{font:500 42px/1.3 'Playfair Display',Georgia,serif;display:block;margin:5px 0}.highlight-years b{float:right}.highlight-years button:hover{border-color:var(--gold)}@media(max-width:1000px){nav{gap:15px}.highlight-layout{grid-template-columns:minmax(0,3fr) minmax(160px,1fr)}.highlight-years button{padding:12px 18px}}@media(max-width:720px){.highlights{padding:60px 0}.highlight-layout{grid-template-columns:1fr}.highlight-years{flex-direction:row;gap:8px}.highlight-years button{min-width:0;padding:12px 10px}.highlight-years strong{font-size:31px}.highlight-years span{font-size:8px;letter-spacing:.3px}.highlight-years b{display:none}.highlight-caption{font-size:10px}}

.water-story{padding:90px 0;background:#ebe6d6}.water-layout{display:grid;grid-template-columns:1fr 1.5fr;gap:60px;align-items:center}.water-copy .lead{font:500 25px/1.5 'Playfair Display',Georgia,serif;margin:28px 0}.water-copy>p:not(.eyebrow,.lead){font-size:15px;color:#647065;max-width:450px}.water-copy .text-link{margin-top:27px}.water-video{width:100%;max-width:720px;margin:auto;background:var(--green);box-shadow:0 18px 40px #17382b22}.water-video iframe{display:block;border:0;width:100%;aspect-ratio:16/9}.water-video-label{padding:15px 18px;background:var(--green);color:var(--cream);font-size:11px;letter-spacing:1px}@media(max-width:720px){.water-story{padding:60px 0}.water-layout{grid-template-columns:1fr;gap:35px}.water-video{max-width:720px}.water-copy .lead{font-size:22px}}

.heritage-film{padding:85px 0}.film-screen{aspect-ratio:16/9;background:#10291f}.film-screen iframe{display:block;width:100%;height:100%;border:0}.film-caption{display:flex;justify-content:space-between;gap:20px;margin-top:17px;font-size:11px;letter-spacing:1px}.film-caption a{color:var(--maroon)}.voices{padding:80px 0;background:#ede8db}.voices-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}.voice-card{background:var(--cream)}.voice-copy{padding:24px}.voice-copy h3{font-size:26px}.voice-copy p{font-size:14px;color:#647065;margin:18px 0}.voice-copy a{font-size:12px}@media(max-width:1000px){nav{gap:11px;font-size:12px}.voice-copy{padding:18px}.voice-copy h3{font-size:23px}}@media(max-width:720px){.heritage-film,.voices{padding:55px 0}.voices-grid{grid-template-columns:1fr;gap:30px}.film-caption{font-size:9px;letter-spacing:.3px}.voice-copy{padding:24px}}

.photo-gallery{padding-top:30px;padding-bottom:88px}.photo-mosaic{display:grid;grid-template-columns:1fr 1.35fr;gap:22px}.photo-mosaic figure{margin:0;position:relative;min-height:255px;overflow:hidden;border-radius:4px;background:#17382b}.photo-mosaic figure:first-child{grid-row:span 2}.photo-mosaic img{display:block;width:100%;height:100%;position:absolute;object-fit:cover}.photo-mosaic figure:first-child img{object-position:center 45%}.photo-mosaic figcaption{position:absolute;bottom:0;left:0;right:0;padding:48px 24px 20px;background:linear-gradient(transparent,rgba(8,29,20,.85));color:#fff;font-size:20px}.photo-mosaic figure:first-child{min-height:550px}@media(max-width:700px){.photo-mosaic{grid-template-columns:1fr;gap:16px}.photo-mosaic figure:first-child{grid-row:auto;min-height:490px}.photo-mosaic figure{min-height:270px}.photo-gallery{padding-bottom:56px}}

.highlight-screen.portrait{aspect-ratio:9/16;width:min(100%,360px);margin-inline:auto}.photo-mosaic figure:nth-child(2) img{object-position:center 15%}

.photo-mosaic a{display:block;position:absolute;inset:0}.photo-mosaic figcaption{pointer-events:none}.photo-mosaic a:focus-visible{outline:4px solid #e7c661;outline-offset:-4px}

.social-follow{margin:0 0 32px}.footer-social{display:flex;gap:22px;flex-wrap:wrap}
