.rep-section{padding-block:48px}.rep-section header{margin-bottom:24px}.rep-section h2{font:500 clamp(34px,4vw,52px)/1.1 'Cormorant Garamond',Georgia,serif;color:#F8F0DF}.rep-section header p{font:14px/1.6 'Manrope',Arial,sans-serif;color:#C7B5A4;margin-top:12px}.rep-track{display:flex;gap:22px;overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:#634536 #210F14}.rep-card{flex:0 0 calc((100% - 44px)/3);min-width:0;scroll-snap-align:start;background:#30171D;border:1px solid #634536;border-radius:8px;overflow:hidden;color:#F8F0DF;text-decoration:none}.rep-card img{display:block;width:100%;height:180px;object-fit:cover}.rep-card>div{padding:22px}.rep-card h3{font:500 30px/1.1 'Cormorant Garamond',Georgia,serif;margin:0}.rep-card p{font:14px/1.6 'Manrope',Arial,sans-serif;color:#C7B5A4;margin:12px 0 20px;min-height:45px}.rep-card span{color:#E5BA70;font:600 13px/1.5 'Manrope',Arial,sans-serif;text-decoration:underline;text-underline-offset:5px}.rep-controls{display:flex;justify-content:space-between;align-items:center;padding-top:16px;color:#C7B5A4;font-size:12px}.rep-controls[hidden]{display:none}.rep-controls>div{display:flex;gap:8px}.rep-controls button{min-width:48px;min-height:44px;background:#210F14;border:1px solid #634536;color:#E5BA70;border-radius:4px;font-size:24px;cursor:pointer}.rep-controls button:disabled{opacity:.35}.rep-section a:focus-visible,.rep-section button:focus-visible,.rep-track:focus-visible{outline:3px solid #E5BA70;outline-offset:4px}@media(max-width:800px){.rep-card{flex-basis:calc((100% - 22px)/2)}}@media(max-width:600px){.rep-section{padding-block:30px}.rep-card{flex-basis:86%}.rep-track{gap:16px}.rep-card img{height:155px}.rep-card>div{padding:20px}.rep-card h3{font-size:28px}.rep-card p{min-height:45px}.rep-section header p{max-width:32ch}}

/* Image-led event pages and a focused sponsorship invitation. */
.rep-section .rep-card{position:relative;display:flex;align-items:end;flex-basis:43%;min-height:350px;isolation:isolate;border-color:#634536}
.rep-section .rep-card:before{content:'';position:absolute;inset:0;z-index:0;background:linear-gradient(0deg,#210F14 0%,#210F14EB 30%,#210F1440 76%,#210F141A 100%)}
.rep-section .rep-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-1;transition:transform .6s ease}
.rep-section .rep-card>div{position:relative;padding:28px;width:100%}
.rep-section .rep-card h3{font-size:40px;max-width:15ch}
.rep-section .rep-card p{color:#F8F0DF;max-width:30ch;min-height:45px;margin-block:12px 18px}
.rep-section .rep-card span{display:inline-flex;min-height:30px;align-items:center}
.rep-section .rep-card:hover{border-color:#E5BA70}
.rep-controls{flex-wrap:wrap;gap:14px}
.rep-controls .rep-progress{flex:0 0 100%;height:2px;background:#634536;overflow:hidden}
.rep-progress span{display:block;height:100%;width:16.67%;background:#E5BA70;transition:width .2s}
.rep-controls button{min-width:52px;min-height:46px}
.rep-controls button:not(:disabled):hover{background:#E5BA70;color:#210F14}
.sc-home.sp-home-invite{position:relative;padding:0;margin:40px 0;min-height:0;height:auto;display:block;overflow:hidden;background:#30171D}
.sc-scene{position:relative;min-height:420px;isolation:isolate;display:flex;align-items:center}
.sc-art{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:75% 45%;z-index:-2}
.sc-shade{position:absolute;inset:0;background:linear-gradient(90deg,#210F14 0%,#210F14ED 30%,#210F1499 53%,#210F141A 100%);z-index:-1}
.sc-inner{position:relative;padding-block:48px}
.sc-copy{max-width:470px}
.sc-home .sc-label{color:#E5BA70;font-size:13px;font-weight:600;margin:0 0 18px}
.sc-home h2{font:500 clamp(42px,4.7vw,66px)/1.04 'Cormorant Garamond',Georgia,serif;letter-spacing:-.025em;max-width:100%;color:#F8F0DF;margin:0}
.sc-home .sc-lead{font:15px/1.6 'Manrope',Arial,sans-serif;color:#F8F0DF;max-width:35ch;margin:22px 0 26px}
.sc-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap}
.sc-contact{color:#E5BA70;font-size:13px;text-decoration:underline;text-underline-offset:5px}
.sc-home .sc-partners{padding-block:20px 24px}
.sc-partners>p{font-size:12px;color:#C7B5A4;margin-bottom:12px}
.sc-partners nav{display:flex;gap:10px;overflow-x:auto;scrollbar-width:thin;scrollbar-color:#634536 #30171D}
.sc-partners a{flex:none;display:flex;align-items:center;min-height:44px;border:1px solid #634536;border-radius:4px;padding:9px 16px;color:#E5BA70;font-size:12px}
.sc-partners a:hover{border-color:#E5BA70;background:#210F14}
.sc-home a:focus-visible{outline:3px solid #E5BA70;outline-offset:4px}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.rep-section .rep-card:hover img{transform:scale(1.045)}}
@media(max-width:800px){.rep-section .rep-card{flex-basis:65%}.sc-scene{min-height:390px}.sc-copy{max-width:390px}.sc-shade{background:linear-gradient(90deg,#210F14F2,#210F14BB 50%,#210F1440)}}
@media(max-width:600px){
.rep-section .rep-card{flex-basis:88%;min-height:315px}
.rep-section .rep-card>div{padding:22px}
.rep-section .rep-card h3{font-size:34px}
.rep-section .rep-card p{font-size:13px;line-height:1.5;min-height:40px;max-width:28ch}
.sc-home.sp-home-invite{margin-block:28px}
.sc-scene{min-height:380px;align-items:end}
.sc-home .sc-inner{padding-block:110px 24px}
.sc-art{object-position:62% 35%}
.sc-shade{background:linear-gradient(0deg,#210F14 0%,#210F14ED 35%,#210F1490 68%,#210F1430 100%)}
.sc-copy{max-width:100%}
.sc-home .sc-label{font-size:12px;margin-bottom:12px}
.sc-home h2{font-size:42px;max-width:12ch}
.sc-home .sc-lead{font-size:14px;line-height:1.5;max-width:31ch;margin:16px 0 20px}
.sc-actions{gap:16px}
.sc-home .button{min-height:48px;padding:12px 18px;font-size:12px;gap:16px}
.sc-contact{font-size:12px}
.sc-home .sc-partners{padding-block:18px 20px}
.sc-partners nav{gap:8px}
.sc-partners a{padding-inline:12px}
}
@media(prefers-reduced-motion:reduce){.rep-section .rep-card img,.rep-progress span{transition:none}}

/* Compact phone hero. Desktop retains the original composition. */
.hero-event-summary{display:none}
@media(max-width:600px){
.rep-compact-hero.hero{min-height:0}





.rep-compact-hero .eyebrow{display:none}
.rep-compact-hero h1{font-size:36px;line-height:1.04}
.rep-compact-hero .hero-intro{font-size:14px;line-height:1.5;margin-top:12px;max-width:36ch}
.rep-compact-hero .hero-event-summary{display:flex;justify-content:center;gap:22px;margin-top:16px;text-align:left}
.hero-event-summary p{font:11px/1.5 'Manrope',Arial,sans-serif;color:#C7B5A4}
.hero-event-summary strong{display:block;font-size:12px;font-weight:600;color:#F8F0DF}
.hero-event-summary span{display:block;margin-top:3px}
.rep-compact-hero .hero-actions{display:flex;flex-direction:row;flex-wrap:wrap;gap:12px;justify-content:center;margin-top:18px}
.rep-compact-hero .hero-actions .button{min-height:48px;padding:12px 16px;font-size:12px;gap:12px}
.rep-compact-hero .hero-countdown,.rep-compact-hero .countdown-container,.rep-compact-hero .countdown-widget{display:none!important}
.rep-compact-hero + .event-strip{display:none}
}
@media(max-width:360px){.rep-compact-hero h1{font-size:32px}.rep-compact-hero .hero-event-summary{gap:14px}.rep-compact-hero .hero-actions .button{padding-inline:12px;font-size:11px}}
.rep-controls .rep-autoplay{font:600 12px/1.4 'Manrope',Arial,sans-serif;padding-inline:14px;min-width:64px}

@media(max-width:600px){
body.home .rep-compact-hero .hero-actions{flex-direction:row!important;gap:12px!important;margin-top:16px!important;align-items:center}
body.home .rep-compact-hero .hero-actions .button{font-size:12px!important;line-height:1.3!important;min-height:48px;padding:12px 14px!important;width:auto;flex:0 1 auto}
}
@media(max-width:360px){body.home .rep-compact-hero .hero-actions .button{font-size:11px!important;padding-inline:11px!important}}

@media(max-width:360px){body.home .rep-compact-hero .hero-actions .button span{display:none}}

/* Full-screen-width slides and restored original hero artwork proportions. */
.rep-section.rep-wide{width:100%;max-width:none;margin-inline:0}
.rep-wide>header,.rep-wide>.rep-controls{width:min(1240px,calc(100% - 112px));margin-inline:auto}
.rep-wide .rep-track{width:100%;gap:0;border-radius:0}
.rep-section.rep-wide .rep-card{flex-basis:100%;min-height:470px;border-radius:0;border-inline:0}
.rep-wide .rep-card>div{width:min(1240px,calc(100% - 112px));margin-inline:auto;padding:34px 0}
.rep-wide .rep-card h3{font-size:54px}
.rep-wide .rep-card p{font-size:16px;max-width:34ch}
.rep-wide .rep-card img{object-position:50% 35%}
@media(max-width:780px){.rep-wide>header,.rep-wide>.rep-controls,.rep-wide .rep-card>div{width:calc(100% - 40px)}}
@media(max-width:600px){
.rep-section.rep-wide .rep-card{min-height:365px}
.rep-wide .rep-card>div{padding-block:24px}
.rep-wide .rep-card h3{font-size:38px}
.rep-wide .rep-card p{font-size:14px;max-width:29ch}
.rep-compact-hero .hero-content{padding-top:335px;padding-bottom:24px}
}
@media(max-width:359px){.rep-compact-hero .hero-content{padding-top:260px}.rep-section.rep-wide .rep-card{min-height:350px}}

/* Mobile cards retain their previous size while the track spans the screen. */
.rep-track.rep-mouse-ready{cursor:grab}
.rep-track.rep-mouse-ready .rep-card{cursor:inherit}
.rep-track.rep-mouse-ready img{-webkit-user-drag:none}
.rep-track.rep-dragging{cursor:grabbing;scroll-snap-type:none!important;scroll-behavior:auto!important;user-select:none}
@media(hover:hover) and (pointer:fine){.rep-track.rep-mouse-ready{user-select:none}}
@media(max-width:600px){
.rep-section.rep-wide .rep-track{padding-inline:20px;scroll-padding-inline:20px;gap:16px;box-sizing:border-box}
.rep-section.rep-wide .rep-card{flex-basis:88%;min-height:315px;border:1px solid #634536;border-radius:8px}
.rep-section.rep-wide .rep-card>div{width:100%;margin:0;padding:22px;box-sizing:border-box}
.rep-section.rep-wide .rep-card h3{font-size:34px}
.rep-section.rep-wide .rep-card p{font-size:13px;line-height:1.5;min-height:40px;max-width:28ch}
.rep-wide .rep-controls .rep-progress{flex-basis:100vw;width:100vw;margin-inline:-20px}
}

/* Full-width desktop track with smaller cards instead of oversized slides. */
@media(min-width:601px){
.rep-section.rep-wide .rep-track{gap:24px;padding-inline:max(32px,calc((100vw - 1240px)/2));scroll-padding-inline:max(32px,calc((100vw - 1240px)/2));box-sizing:border-box}
.rep-section.rep-wide .rep-card{flex-basis:420px;min-height:360px;border:1px solid #634536;border-radius:8px}
.rep-section.rep-wide .rep-card>div{width:100%;margin:0;padding:28px;box-sizing:border-box}
.rep-section.rep-wide .rep-card h3{font-size:38px}
.rep-section.rep-wide .rep-card p{font-size:14px;line-height:1.55;max-width:30ch}
.rep-section.rep-wide .rep-card img{object-position:50% 35%}
.rep-wide .rep-controls .rep-progress{flex-basis:100vw;width:100vw;margin-left:calc((100% - 100vw)/2);margin-right:calc((100% - 100vw)/2)}
}
@media(min-width:601px) and (max-width:900px){.rep-section.rep-wide .rep-card{flex-basis:360px;min-height:340px}}

/* Keep the cards flush with the screen and remove the controls row. */
.rep-section.rep-wide .rep-track{padding-inline:0;scroll-padding-inline:0}
.rep-section.rep-wide>.rep-controls{display:none!important}
@media(max-width:600px){.rep-section.rep-wide .rep-card{flex-basis:calc(88% - 35.2px)}}

/* Small, balanced inset around the carousel cards. */
.rep-section.rep-wide .rep-track{padding-inline:16px;scroll-padding-inline:16px}
@media(max-width:600px){.rep-section.rep-wide .rep-card{flex-basis:calc((100% - 8px)*.88)}}

/* Balanced 24px carousel inset. */
.rep-section.rep-wide .rep-track{padding-inline:24px;scroll-padding-inline:24px}
@media(max-width:600px){.rep-section.rep-wide .rep-card{flex-basis:calc(88% + 7.04px)}}

/* Consistent mobile section rhythm and immediately visible content. */
@media(max-width:600px){
body.home main .reveal{opacity:1!important;transform:none!important;visibility:visible!important;transition:none!important}
body.home .cfp-home-invite{padding-block:32px}
body.home .rep-section{padding-block:32px}
body.home #about{padding-block:32px;gap:24px}
body.home #about .value{padding-bottom:20px;margin-bottom:20px}
body.home #about .value:last-child{margin-bottom:0;padding-bottom:0}
body.home .sc-home.sp-home-invite{margin-block:0}
body.home #visit{padding-block:32px;gap:24px}
body.home #visit .visit-art img{height:auto;aspect-ratio:1110/530;object-fit:cover}
body.home .transit-container{margin-bottom:32px!important}
body.home #register{padding-block:36px}
body.home .register-grid{gap:24px}
body.home #newsletter{padding-block:32px}
body.home #newsletter .wa-community-banner{margin-block:0}
body.home #organised-by{padding-block:32px}
}

@media(max-width:600px){body.home #about,body.home #visit,body.home #newsletter{padding-block:32px!important}body.home #newsletter .wa-community-banner{margin-block:0!important}}

/* Compact mobile sponsorship while retaining a clear artwork area. */
@media(max-width:600px){body.home .sc-home .sc-scene{min-height:0}body.home .sc-home .sc-inner{padding-top:64px;padding-bottom:24px}}

/* Compact phone registration with generous touch targets. */
@media(max-width:600px){
body.home #register{padding-block:28px}
body.home #register .register-grid{gap:20px}
body.home #register .register-copy .eyebrow{font-size:11px;line-height:1.5;letter-spacing:.18em;margin:0 0 12px}
body.home #register .register-copy h2{font-size:36px;line-height:1.06}
body.home #register .register-copy>p:not(.eyebrow){font-size:14px;line-height:1.5;margin-top:12px}
body.home #register .register-facts{font-size:13px;line-height:1.6;margin-top:16px;padding-top:14px}
body.home #register .form-panel{padding:20px 18px}
body.home #register .form-panel h3{font-size:26px;margin-bottom:6px}
body.home #register .form-helper{margin-bottom:16px}
body.home #register .gform_wrapper .gform_fields{gap:14px}
body.home #register .gform_wrapper .gfield_label{margin-bottom:6px}
body.home #register .gform_wrapper input:not([type=submit]):not([type=checkbox]){height:48px;min-height:48px;font-size:16px}
body.home #register .gform_wrapper .gform_footer{margin-top:18px}
body.home #register .privacy-note{margin-top:14px;line-height:1.5}
}

/* Compact mobile heritage values without collapsing their descriptions. */
@media(max-width:600px){
body.home #about{padding-block:28px!important;gap:20px}
body.home #about .eyebrow{margin-bottom:14px}
body.home #about h2{font-size:32px;line-height:1.08}
body.home #about .intro{font-size:14px;line-height:1.6;margin-top:14px}
body.home #about .values{padding:0;border-left:0}
body.home #about .value{grid-template-columns:30px 1fr;gap:12px;padding-bottom:14px;margin-bottom:14px}
body.home #about .value:last-child{padding-bottom:0;margin-bottom:0}
body.home #about .value-mark{font-size:26px;padding-top:3px}
body.home #about .value h3{font-size:26px;line-height:1.1;margin-bottom:6px}
body.home #about .value p{font-size:14px;line-height:1.55}
}

/* Compact mobile organiser lockup with logo beside the trust name. */
@media(max-width:600px){
body.home #organised-by{padding-block:24px}
body.home .home-organiser-inner{display:grid;grid-template-columns:80px minmax(0,1fr);gap:10px 16px;align-items:center;text-align:left}
body.home .home-organiser-logo{grid-column:1;grid-row:1 / 3;justify-self:start;width:80px;height:80px}
body.home .home-organiser-logo img{width:80px;height:80px;object-fit:contain}
body.home .home-organiser-copy{grid-column:2;text-align:left}
body.home .home-organiser-copy h2{font-size:28px;line-height:1.12}
body.home .home-organiser-copy h2 span{font-size:12px;line-height:1.5;margin-bottom:6px}
body.home .home-organiser-link{grid-column:2;justify-self:start;min-height:44px;font-size:13px}
}
@media(max-width:359px){body.home .home-organiser-copy h2{font-size:26px}}

/* Desktop sponsorship: balanced copy and uncrowded partnership artwork. */
@media(min-width:901px){
body.home .sc-home.sp-home-invite{width:min(1240px,calc(100% - 64px));margin:24px auto 48px;border:1px solid #634536;border-radius:16px;background:#210F14}
body.home .sc-home .sc-scene{min-height:400px;align-items:center}
body.home .sc-home .sc-art{left:auto;right:0;width:50%;height:100%;object-fit:cover;object-position:center}
body.home .sc-home .sc-shade{background:linear-gradient(90deg,#210F14 0%,#210F14 48%,#210F1480 52%,transparent 60%)}
body.home .sc-home .sc-inner{width:50%;margin:0;padding:40px}
body.home .sc-home .sc-copy{max-width:none}
body.home .sc-home .sc-label{font-size:12px;margin-bottom:16px}
body.home .sc-home h2{font-size:54px;line-height:1.05;max-width:12ch}
body.home .sc-home .sc-lead{font-size:15px;line-height:1.6;max-width:36ch;margin:18px 0 24px}
body.home .sc-home .sc-actions{gap:18px}
body.home .sc-home .sc-actions .button{padding-inline:20px;gap:20px;font-size:13px}
body.home .sc-home .sc-contact{font-size:12px}
body.home .sc-home .sc-partners{width:100%;margin:0;padding:20px 32px;display:flex;align-items:center;gap:24px;border-top:1px solid #634536;background:#30171D}
body.home .sc-home .sc-partners>p{margin:0;flex:none}
body.home .sc-home .sc-partners nav{flex:1;justify-content:flex-end;gap:8px}
body.home .sc-home .sc-partners a{padding-inline:12px}
}
@media(min-width:901px) and (max-width:1100px){body.home .sc-home .sc-inner{padding:32px}body.home .sc-home h2{font-size:46px}body.home .sc-home .sc-partners{display:block}body.home .sc-home .sc-partners>p{margin-bottom:12px}body.home .sc-home .sc-partners nav{justify-content:flex-start}}

/* More readable desktop partnership labels. */
@media(min-width:901px){body.home .sc-home .sc-partners>p{font-size:14px}body.home .sc-home .sc-partners a{font-size:14px}}
