@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@600;700;800;900&family=Barlow:wght@400;500;600;700&display=swap');
:root{--green:#07402b;--deep:#062d20;--yellow:#ffe000;--ink:#15231c;--paper:#fff;--muted:#556159}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Barlow,Arial,sans-serif;font-size:17px;line-height:1.6}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible{outline:3px solid #db9700;outline-offset:5px}.skip{position:absolute;left:16px;top:-100px;background:var(--yellow);padding:12px;z-index:99}.skip:focus{top:10px}.header{height:106px;display:flex;align-items:center;justify-content:space-between;padding:12px 5%;background:white;position:relative;z-index:10;border-bottom:1px solid #e5e9e6}.brand{display:flex;align-items:center;gap:18px}.brand img{height:78px;width:69px;object-fit:contain}.brand span{font-family:'Barlow Condensed',Impact,sans-serif;font-weight:800;font-size:36px;line-height:1}.brand b{color:#0a7546}.brand small{display:block;font-family:Barlow,Arial,sans-serif;font-size:10px;letter-spacing:1px;margin-top:10px;font-weight:600}nav{display:flex;gap:28px;align-items:center;font-weight:600;font-size:16px}nav>a:not(.button):hover{text-decoration:underline;text-underline-offset:6px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:13px 26px;background:var(--green);color:white;font-weight:700;font-size:16px;line-height:1.4;border:2px solid transparent;transition:background .2s,transform .2s}.button:hover{transform:translateY(-2px);background:#126445}.button.yellow{background:var(--yellow);color:var(--green)}.button.yellow:hover{background:#fff058}.small{min-height:44px;padding:10px 20px}.menu{display:none}.hero{min-height:690px;position:relative;overflow:hidden;background:var(--deep);color:white}.hero-photo{position:absolute;inset:0 0 0 34%}.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:58% 55%}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#062d20 0%,#062d20 27%,#062d20ed 36%,#062d2060 58%,#062d2010 85%);pointer-events:none}.hero-content{position:relative;z-index:1;padding:64px 5% 48px;max-width:770px}.eyebrow{font-size:14px;font-weight:700;letter-spacing:2.2px;margin:0 0 20px}.green{color:#0b7045}h1,h2,h3{font-family:'Barlow Condensed',Impact,'Arial Narrow',sans-serif;line-height:.97;margin:0;font-weight:800;letter-spacing:-.8px}h1{font-size:clamp(80px,8.4vw,130px)}h1 em,h2 em{color:var(--yellow);font-style:italic}h2{font-size:clamp(48px,5vw,72px);letter-spacing:-.5px}h3{font-size:45px;line-height:1.04}.intro{max-width:395px;margin:24px 0 30px;color:#e9f1ec;font-size:18px}.hero-location{margin-top:34px;font-size:13px;font-weight:700;letter-spacing:2px}.hero-location span{color:var(--yellow);margin:0 14px}.photo-caption{position:absolute;bottom:26px;right:5%;z-index:2;font-size:14px;color:white;text-shadow:0 2px 10px #000}.ribbon{padding:20px 5%;background:var(--yellow);display:flex;justify-content:space-between;gap:20px;align-items:center;font-family:'Barlow Condensed',Impact,sans-serif;font-size:23px;font-weight:700;letter-spacing:1px}.ribbon i{font-style:normal;font-size:18px}.section{padding:90px 7%;max-width:1600px;margin:auto}.section-top{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:40px}.section-top h2 em,.about h2 em{color:#0a7546}.section-top>p{color:var(--muted);max-width:360px;margin:0 0 8px}.programme-grid{display:grid;grid-template-columns:1fr 1.12fr;gap:34px}.weekly{background:#f1f5f1;padding:38px 38px 30px;border-top:5px solid var(--green)}.number{font-size:13px;letter-spacing:1.7px;font-weight:700;color:#4c6254;margin-bottom:22px}.weekly>p,.saturday-body>p{color:var(--muted)}.venue-list{border-top:1px solid #cbd6cc;margin-top:30px}.venue-list>div{display:flex;justify-content:space-between;gap:20px;padding:16px 0;border-bottom:1px solid #cbd6cc;font-size:16px}.venue-list span{color:var(--muted)}.price{display:flex;align-items:center;gap:18px;margin:24px 0 0}.price strong{font-family:'Barlow Condensed',Impact,sans-serif;font-size:60px;line-height:1}.price span{font-size:14px;line-height:1.7}.weekly .taster{font-weight:700;color:var(--green);margin:15px 0 22px}.note{font-size:14px;color:var(--muted);margin-bottom:0}.skill-photo{height:250px;position:relative;overflow:hidden}.skill-photo img{width:100%;height:100%;object-fit:cover;object-position:center 45%}.image-label{position:absolute;bottom:18px;left:24px;color:white;background:var(--green);padding:7px 12px;font-family:'Barlow Condensed',Impact,sans-serif;font-size:20px;font-weight:700;letter-spacing:.7px}.saturday{border:1px solid #dce4dc}.saturday-body{padding:28px 32px}.saturday-body .number{margin-bottom:16px}.session-line{display:flex;gap:0;margin-top:22px}.session-line>span{flex:1;padding-left:20px;border-left:3px solid var(--yellow);font-size:16px;line-height:1.7}.session-line b{display:block}.booking-row{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:25px}.booking-row>span{font-size:14px;line-height:1.6}.booking-row .button{padding:12px 19px}.holiday{display:grid;grid-template-columns:1fr 1fr;background:var(--green);color:white;min-height:570px}.holiday-image{overflow:hidden;min-height:500px}.holiday-image img{width:100%;height:100%;object-fit:cover;object-position:center 43%;display:block;max-height:650px}.holiday-copy{padding:65px 13% 60px 11%;align-self:center}.holiday-copy h2{font-size:clamp(60px,6vw,88px)}.holiday-copy>p:not(.eyebrow):not(.note){color:#e2ece5;margin:25px 0 30px}.light{color:#cbddd0}.about{display:grid;grid-template-columns:1fr 1.05fr;gap:70px;align-items:center}.about p:not(.eyebrow){max-width:480px;color:var(--muted);margin-top:25px}.about figure{margin:0;position:relative}.about figure img{width:100%;aspect-ratio:1.15;object-fit:cover;object-position:52% center;display:block}.about figcaption{background:var(--yellow);padding:14px 20px;font-size:15px;font-weight:600}.values{display:flex;flex-wrap:wrap;gap:22px;font-weight:700;font-size:16px;color:var(--green);border-top:1px solid #dce4dc;padding-top:22px;margin-top:28px}.contact{background:var(--deep);padding:60px 7%;display:flex;justify-content:space-between;align-items:center;gap:45px;color:white}.contact h2{font-size:65px}.contact p:last-child{color:#cbdcd0}.contact-links{display:flex;flex-direction:column;align-items:flex-start;gap:12px;font-size:16px}.contact-links>a:not(.button):hover{text-decoration:underline}.contact-links .button{margin-bottom:8px}footer{padding:32px 7%;display:flex;align-items:center;justify-content:space-between;gap:30px;font-size:14px;color:var(--muted)}.footer-brand{font-family:'Barlow Condensed',Impact,sans-serif;color:var(--green);font-size:32px;font-weight:800;line-height:1.3}.footer-brand span{display:block;font-family:Barlow,Arial,sans-serif;font-size:11px;letter-spacing:1.5px}footer>p{margin:0}footer>a:last-child{text-decoration:underline;text-underline-offset:5px}@media(min-width:1800px){.hero-content{padding-left:7%}.hero{min-height:760px}}@media(max-width:1050px){nav{gap:18px}.brand small{display:none}.hero-content{max-width:620px}.hero-photo{left:27%}.ribbon{font-size:19px}.section{padding:65px 5%}.programme-grid{gap:22px}.weekly{padding:30px}.venue-list>div{flex-direction:column;gap:3px}.booking-row{align-items:flex-start;flex-direction:column}.about{gap:35px}.holiday-copy{padding:50px 10%}.contact{padding:50px 5%}}@media(max-width:760px){html{scroll-padding-top:20px}.header{height:90px;padding:10px 5%}.brand img{height:64px;width:56px}.brand span{font-size:31px}.menu{display:block;background:white;border:1px solid #ccd5ce;padding:10px 16px;color:var(--green);font-size:16px;font-weight:700}nav{display:none;position:absolute;top:90px;left:0;right:0;padding:22px 5%;background:white;flex-direction:column;align-items:stretch;box-shadow:0 15px 20px #0002}nav.open{display:flex}.hero{min-height:780px}.hero-photo{inset:0;height:100%}.hero-photo img{object-position:57% center}.hero:after{background:linear-gradient(0deg,#062d20 0%,#062d20e0 37%,#062d2040 90%)}.hero-content{padding:280px 6% 30px}.hero h1{font-size:83px}.hero .eyebrow{font-size:12px}.hero .intro{font-size:17px;max-width:370px}.photo-caption{display:none}.hero-location{margin-top:25px}.ribbon{padding:17px 5%;flex-wrap:wrap;justify-content:center;font-size:17px;gap:12px}.ribbon span:last-child,.ribbon i:last-of-type{display:none}.section-top{display:block}.section-top>p{margin-top:24px}.section{padding:55px 6%}h2{font-size:54px}h3{font-size:42px}.programme-grid{grid-template-columns:1fr;gap:28px}.weekly{padding:28px 25px}.venue-list>div{flex-direction:row}.saturday-body{padding:25px}.booking-row{flex-direction:row;align-items:center;gap:12px}.booking-row .button{font-size:14px;padding:12px}.holiday{grid-template-columns:1fr}.holiday-image{min-height:0;height:380px}.holiday-copy{padding:45px 6% 50px}.holiday-copy h2{font-size:65px}.about{grid-template-columns:1fr;gap:30px}.about figure img{aspect-ratio:1.2}.contact{display:block;padding:45px 6%}.contact h2{font-size:55px}.contact-links{margin-top:28px;overflow-wrap:anywhere}footer{flex-wrap:wrap;padding:28px 6%;gap:25px}footer>p{font-size:13px}.price span{font-size:14px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}

.hero-photo img{object-position:center 55%}@media(max-width:760px){.hero-photo{height:490px}.hero-photo img{object-position:center 43%}.hero:after{background:linear-gradient(0deg,#062d20 0%,#062d20 38%,#062d2000 80%)}.hero-content{padding-top:390px}.hero{min-height:900px}}
/* Put the player in front of the brand colour, with no photographic backdrop. */
.hero{background:radial-gradient(ellipse at 75% 40%,#126341 0%,#07402b 42%,#062d20 80%)}
.hero-photo{inset:0 0 0 43%;padding:22px 4% 0 0;height:100%}
.hero-photo img{object-fit:contain;object-position:center bottom}
.hero:after{display:none}
.hero-content{max-width:650px;width:52%}
.photo-caption{display:none}
@media(max-width:1050px) and (min-width:761px){.hero-content{width:55%}.hero-photo{left:48%}.hero h1{font-size:100px}}
@media(max-width:760px){.hero-photo{inset:0 0 auto;height:450px;padding:20px 7% 0}.hero-photo img{object-position:center bottom}.hero-content{width:100%;max-width:none;padding:470px 6% 35px}.hero{min-height:0}.hero h1{font-size:78px}}
.hero{background:#062d20;min-height:690px}
.hero-photo{inset:0 0 0 22%;height:100%;padding:0}
.hero-photo img{object-fit:cover;object-position:right center}
.hero:after{display:block;background:linear-gradient(90deg,#062d20 0%,#062d20 24%,#062d20db 35%,#062d2040 55%,transparent 72%)}
@media(max-width:760px){.hero{min-height:0}.hero-photo{inset:0 0 auto;height:420px;padding:0}.hero-photo img{object-fit:cover;object-position:83% center}.hero:after{display:none}.hero-content{padding-top:450px}}

/* Front cover: a clear photograph beside the headline. */
.hero{display:grid;grid-template-columns:1fr 1fr;min-height:690px;overflow:hidden}
.hero-content{grid-column:1;grid-row:1;width:100%;max-width:none;padding:60px 10% 45px;align-self:center}
.hero-photo{position:relative;inset:auto;grid-column:2;grid-row:1;width:100%;height:100%;min-height:690px;padding:0}
.hero-photo img{display:block;width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:93% center}
.hero:after{display:none}
.hero h1{font-size:clamp(80px,7.6vw,118px)}
.hero .intro{max-width:360px}
.ribbon{display:block;text-align:center;padding:17px 5%;font-size:32px;letter-spacing:1px;font-weight:800}
@media(max-width:1050px) and (min-width:761px){.hero-content{width:100%;padding:45px 9%}.hero-photo{left:auto}.hero h1{font-size:88px}}
@media(max-width:760px){.hero{display:flex;flex-direction:column;min-height:0}.hero-photo{height:440px;min-height:440px;order:0;inset:auto}.hero-photo img{object-position:92% center}.hero-content{order:1;padding:35px 6% 40px;width:100%}.hero h1{font-size:76px}.hero .eyebrow{margin-bottom:16px}.hero .intro{max-width:100%}.ribbon{font-size:28px;padding:14px}}

/* Group cover: retain the whole group across screen sizes. */
.hero{grid-template-columns:1fr 1.25fr;min-height:640px;align-items:center}.hero-photo{height:auto;min-height:0;aspect-ratio:1.2;align-self:center}.hero-photo img{object-fit:cover;object-position:center 57%}.hero-content{padding:50px 10%}.hero h1{font-size:clamp(80px,7.8vw,120px)}
@media(max-width:760px){.hero{min-height:0}.hero-photo{height:auto;min-height:0;aspect-ratio:1.15;width:100%}.hero-photo img{object-position:center 57%}.hero-content{padding:35px 6% 40px}.hero h1{font-size:76px}}

/* Our Story: readable chapters with authentic photography. */
.story-opening{display:grid;grid-template-columns:1.15fr .85fr;gap:60px;align-items:center}.story-opening h1{font-size:clamp(48px,5.2vw,78px);line-height:1.04}.story-opening h1 em{color:#0a7546}.story-opening p,.story-row p{max-width:650px;color:var(--muted);font-size:18px}.story-opening figure,.story-row figure{margin:0}.story-opening img{width:100%;max-height:650px;object-fit:cover;display:block}.story-opening figcaption{background:var(--yellow);padding:14px 18px;font-weight:600}.story-row{padding-top:55px;padding-bottom:55px;border-top:1px solid #dce4dc}.story-row h2{font-size:clamp(38px,4vw,55px);line-height:1.07;color:var(--green)}.story-row.with-photo{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.story-row img{width:100%;height:auto;display:block}.story-row.text-only>div{max-width:820px;margin:auto}.story-row.text-only p{max-width:none}@media(max-width:760px){.story-opening,.story-row.with-photo{grid-template-columns:1fr;gap:28px}.story-opening{padding-top:35px}.story-opening h1{font-size:49px}.story-opening img{max-height:520px;object-position:center 35%}.story-row{padding-top:40px;padding-bottom:40px}.story-opening p,.story-row p{font-size:17px}}

.founder-photo-crop{aspect-ratio:1408/1500;overflow:hidden}.story-opening .founder-photo-crop img{width:100%;height:auto;max-height:none;object-fit:initial;display:block}

/* Align each venue from its first letter in a shared column. */
.venue-list>div{display:grid;grid-template-columns:minmax(140px,1fr) minmax(0,1.25fr);gap:20px;align-items:start}.venue-list span{text-align:left}@media(max-width:380px){.venue-list>div{grid-template-columns:125px minmax(0,1fr);gap:12px}}

.club-gallery h2{color:var(--green);font-size:clamp(40px,4vw,60px);margin-bottom:28px;line-height:1.06}.club-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;gap:24px}.club-track::-webkit-scrollbar{display:none}.club-slide{margin:0;flex:0 0 100%;scroll-snap-align:start;min-width:0}.club-slide img,.club-slide video{display:block;width:100%;height:560px;object-fit:contain;background:var(--deep)}.club-slide figcaption{background:var(--yellow);color:var(--green);padding:12px 18px;font-weight:700}.club-controls{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:18px}.club-controls>button{background:var(--green);color:white;padding:10px 16px;border:0;font:600 16px Barlow,Arial;cursor:pointer}.club-dots{display:flex;gap:10px}.club-dots button{border:0;border-radius:50%;width:14px;height:14px;background:#bacac1;cursor:pointer}.club-dots button[aria-pressed=true]{background:var(--green)}@media(max-width:760px){.club-slide img,.club-slide video{height:440px}.club-controls{gap:8px}.club-dots{gap:7px}.club-controls>button{padding:10px;font-size:14px}}

.about.awaiting-montage{grid-template-columns:1fr}.about.awaiting-montage>div{max-width:820px}.about.awaiting-montage p:not(.eyebrow){max-width:680px}

.football-montage video{display:block;width:100%;height:auto;aspect-ratio:4/3;background:var(--deep)}

/* Homepage football film: preserve all three portrait panels. */
.hero-film{aspect-ratio:16/9;min-height:0;height:auto;position:relative}.hero-film video{display:block;width:100%;height:100%;object-fit:contain}
@media(max-width:760px){.hero-film{aspect-ratio:16/9;height:auto;min-height:0}}

/* Full-screen homepage film with the headline over the action. */
.hero{display:block;position:relative;min-height:calc(100svh - 106px);isolation:isolate}
.hero .hero-film{position:absolute;inset:0;grid-column:auto;grid-row:auto;width:100%;height:100%;min-height:0;aspect-ratio:auto}
.hero .hero-film video{width:100%;height:100%;object-fit:cover;object-position:center}
.hero:after{display:block;position:absolute;inset:0;z-index:0;background:linear-gradient(90deg,#062d20e8 0%,#062d20b8 34%,#062d2040 65%,#062d2020 100%);pointer-events:none}
.hero .hero-content{position:relative;z-index:1;width:100%;max-width:720px;padding:60px 7% 65px;min-height:calc(100svh - 106px);display:flex;flex-direction:column;justify-content:center;align-items:flex-start}
.hero h1{font-size:clamp(80px,8.5vw,132px);text-shadow:0 2px 20px #0003}
.hero .intro{max-width:395px;color:#fff;text-shadow:0 1px 8px #0005}
@media(max-width:760px){
 .hero{min-height:calc(100svh - 90px)}
 .hero .hero-content{min-height:calc(100svh - 90px);max-width:none;padding:45px 6%;justify-content:flex-end}
 .hero h1{font-size:clamp(70px,19vw,90px)}
 .hero .intro{font-size:16px;max-width:350px;margin:20px 0 24px}
 .hero .hero-film video{object-position:center}
 .hero:after{background:linear-gradient(0deg,#062d20f2 0%,#062d20c0 42%,#062d2035 100%)}
}

.programme-grid{grid-template-columns:1fr}.weekly{display:grid;grid-template-columns:1fr 1fr;gap:38px;padding:0}.weekly-content{padding:38px}.weekly-content>p{color:var(--muted)}.weekly .skill-photo{height:100%;min-height:420px}.weekly .skill-photo img{display:block;object-position:center}.weekly .taster{color:var(--green)}@media(max-width:760px){.weekly{grid-template-columns:1fr;gap:0;padding:0}.weekly-content{padding:28px 25px}.weekly .skill-photo{height:300px;min-height:0}}

/* Weekly coaching photo background */
.weekly{display:block;position:relative;isolation:isolate;overflow:hidden;background:var(--deep);color:white;border-top-color:var(--yellow)}
.weekly .skill-photo{position:absolute;inset:0;height:100%;min-height:0;z-index:-2}
.weekly .skill-photo img{object-position:center 45%}
.weekly:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(6,45,32,.96) 0%,rgba(6,45,32,.91) 48%,rgba(6,45,32,.48) 100%);pointer-events:none}
.weekly-content{max-width:660px;padding:44px}
.weekly .number,.weekly-content>p,.weekly .venue-list span,.weekly .note{color:#e2ece5}
.weekly .venue-list,.weekly .venue-list>div{border-color:rgba(255,255,255,.3)}
.weekly .taster{color:var(--yellow)}
.weekly .button{background:var(--yellow);color:var(--deep)}
.weekly .button:hover{background:#fff058}
@media(max-width:760px){.weekly-content{padding:30px 25px;max-width:none}.weekly .skill-photo{height:100%}.weekly:after{background:rgba(6,45,32,.87)}.weekly .skill-photo img{object-position:55% center}}

/* Reveal the three playing panels across narrow phone screens. */
@keyframes mobile-hero-pan{
  0%,8%{object-position:0% center}
  92%,100%{object-position:100% center}
}
@media(max-width:760px) and (prefers-reduced-motion:no-preference){
  .hero .hero-film video{animation:mobile-hero-pan 20s ease-in-out infinite alternate}
}
@media(max-width:760px) and (prefers-reduced-motion:reduce){
  .hero .hero-film video{animation:none;object-position:center}
}

.holiday-montage h2{color:var(--green);font-size:clamp(40px,4vw,60px);margin-bottom:28px;line-height:1.06}.holiday-montage video{display:block;width:100%;aspect-ratio:4/3;object-fit:contain;background:var(--deep)}

.session-links{display:grid;gap:12px;margin:24px 0}.session-link{display:grid;grid-template-columns:1fr 1fr auto;gap:16px;align-items:center;padding:18px;border:1px solid #ffffff70;color:white;text-decoration:none;transition:background .2s,border-color .2s}.session-link:hover,.session-link:focus-visible{background:#ffe000;color:#062d20;border-color:#ffe000;outline:3px solid #ffe000;outline-offset:3px}.session-link strong{font-size:15px}.session-link span{line-height:1.5}@media(max-width:600px){.session-link{grid-template-columns:1fr 1fr}.session-link strong{grid-column:1/-1}}

.session-prices{display:flex;flex-wrap:wrap;gap:24px;margin:28px 0}.session-prices p{margin:0!important;flex:1;min-width:150px;font-size:18px!important}.session-prices strong{font-size:26px}.session-prices span{display:block;font-size:16px;margin-top:4px}

.football-montage{grid-template-columns:1fr}.football-montage>div:first-child{max-width:850px}.photo-train{overflow:hidden;min-width:0;width:100%}.photo-train-track{display:flex;width:max-content;animation:together-train 65s linear infinite}.photo-train-group{display:flex;gap:0;padding-right:0}.photo-train-group img{display:block;width:auto;height:240px;object-fit:cover;flex-shrink:0}.photo-train:hover .photo-train-track{animation-play-state:paused}@keyframes together-train{to{transform:translateX(-50%)}}@media(max-width:760px){.photo-train-group img{width:auto;height:195px}}@media(prefers-reduced-motion:reduce){.photo-train{overflow-x:auto}.photo-train-track{animation:none}.photo-train-group[aria-hidden=true]{display:none}}

.session-prices .free-taster-copy{display:block;color:#fff;margin-top:22px;line-height:1.4}.session-prices .free-taster-copy span{font-size:20px;margin:0}.session-prices .free-taster-copy strong{font-size:20px;font-weight:700}.session-prices .free-taster-copy small{display:block;font-size:16px;font-weight:400;margin-top:3px}.free-taster-copy:hover{text-decoration:underline}

.story-opening .story-match-photo{aspect-ratio:540/430;overflow:hidden;width:100%;max-width:380px;justify-self:center}.story-opening .story-match-photo img{width:100%;height:auto;max-height:none;object-fit:initial;transform:translateY(-12.3%)}

.story-row.shared-belief-photo{position:relative;min-height:720px;display:flex;align-items:center;background-color:var(--deep);background-image:linear-gradient(90deg,rgba(6,45,32,.98) 0%,rgba(6,45,32,.94) 40%,rgba(6,45,32,.55) 64%,rgba(6,45,32,.08) 100%),url('assets/story-shared-belief.jpeg');background-repeat:no-repeat;background-size:100% 100%,auto 100%;background-position:center,right center}.shared-belief-photo>div{position:relative;max-width:610px}.shared-belief-photo h2{color:white}.shared-belief-photo p{color:white;max-width:570px;text-shadow:0 1px 3px #062d20}@media(max-width:760px){.story-row.shared-belief-photo{min-height:760px;background-size:100% 100%,cover;background-position:center,center;background-image:linear-gradient(90deg,rgba(6,45,32,.87),rgba(6,45,32,.72)),url('assets/story-shared-belief.jpeg')}.shared-belief-photo>div{max-width:100%}}

 .landing-stage{position:relative;overflow:hidden;background:var(--deep);height:calc(100svh - 106px);min-height:420px;color:white}.landing-train{position:absolute;inset:0;overflow:hidden}.landing-train-track{display:flex;width:max-content;height:100%;animation:landing-train 90s linear infinite}.landing-train-group{display:flex;height:100%;gap:0}.landing-train-group img,.landing-train-group video{display:block;height:100%;width:auto;max-width:none;object-fit:cover;flex:none}.landing-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(6,45,32,.04),rgba(6,45,32,.08) 60%,rgba(6,45,32,.28));pointer-events:none}.landing-links{display:block;position:absolute;inset:0;padding:0;background:transparent;box-shadow:none;pointer-events:none}.landing-links a{position:absolute;display:block;opacity:0;visibility:hidden;pointer-events:none;transform:translate(-50%,-50%);white-space:nowrap;color:white;font-size:clamp(24px,3vw,40px);font-weight:800;text-shadow:0 2px 8px #000,0 0 22px #000;transition:opacity 2s ease-in-out;line-height:1.2;padding:8px 12px}.landing-links a.is-featured{opacity:1;visibility:visible;pointer-events:auto}.landing-links a:hover,.landing-links a:focus-visible{color:var(--yellow)}.landing-ball{position:absolute;left:0;top:0;line-height:1;width:48px;height:48px;filter:drop-shadow(0 3px 5px #0008);transition:transform .8s ease-in-out;pointer-events:none}.landing-ball img{display:block;width:100%;height:100%;object-fit:contain}.landing-ball>span{display:block;animation:landing-bounce 1.1s ease-in-out infinite}@keyframes landing-bounce{0%,100%{transform:translateY(0) rotate(-12deg)}50%{transform:translateY(-28px) rotate(18deg)}}@keyframes landing-train{to{transform:translateX(-50%)}}@media(max-width:760px){.landing-stage{height:calc(100svh - 90px);min-height:410px}.landing-ball{width:38px;height:38px}.landing-links a{font-size:26px}}@media(prefers-reduced-motion:reduce){.landing-train-track{animation:none}.landing-ball{display:none}.landing-links{display:flex;inset:auto 16px 20px;gap:16px;flex-wrap:wrap}.landing-links a{position:static;transform:none;opacity:1;visibility:visible;pointer-events:auto;font-size:20px;transition:none}.landing-train-group[aria-hidden=true]{display:none}}

.mobile-shortcuts{display:none}@media(max-width:760px){.header .menu{display:none}.header{padding-left:4%;padding-right:4%;gap:10px}.header .brand{gap:7px}.header .brand img{width:40px;height:48px}.header .brand span{font-size:24px}.header .mobile-shortcuts{display:flex;position:static;inset:auto;flex-direction:row;align-items:center;gap:6px;padding:0;background:transparent;box-shadow:none;flex-shrink:0}.mobile-shortcuts a{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid #07402b;border-radius:50%;color:var(--green);font-size:12px;font-weight:700;letter-spacing:.2px;line-height:1}.mobile-shortcuts a:hover,.mobile-shortcuts a:focus-visible{background:var(--green);color:white;text-decoration:none}}

@media(max-width:760px){.header .mobile-shortcuts a{background:var(--green);color:white;transition:opacity 2s ease-in-out}.landing-home .mobile-shortcuts a{opacity:0;visibility:hidden;transform:none;pointer-events:none}.landing-home .mobile-shortcuts a.is-revealed{opacity:1;visibility:visible;transform:none;pointer-events:auto}.header .mobile-shortcuts a:hover,.header .mobile-shortcuts a:focus-visible{background:#126445;color:white}}@media(max-width:760px) and (prefers-reduced-motion:reduce){.landing-home .mobile-shortcuts a{opacity:1;visibility:visible;transform:none;pointer-events:auto;transition:none}}

.price-booking-link{display:block;color:inherit}.price-booking-link:hover{text-decoration:underline;text-underline-offset:5px}.price-booking-link:focus-visible{outline:3px solid var(--yellow);outline-offset:6px}

.hc-film-hero{position:relative;height:calc(100svh - 106px);min-height:650px;overflow:hidden;background:var(--deep);color:white}.hc-film-hero video{position:absolute;inset:0;width:100%;height:100%;aspect-ratio:auto;object-fit:cover}.hc-film-shade{position:absolute;inset:0;background:linear-gradient(90deg,#062d20b8,#062d2020),linear-gradient(0deg,#062d20c9,transparent 85%);pointer-events:none}.hc-film-copy{position:absolute;left:6%;bottom:9%;right:6%;max-width:850px}.hc-film-copy h1{font-size:clamp(60px,7vw,100px);line-height:1.05;min-height:2.1em;text-shadow:0 2px 12px #0006}.hc-film-copy h1 .hc-type-line{display:block;min-height:1.05em}.hc-film-copy p{max-width:580px;min-height:5em;font-size:18px;line-height:1.5;text-shadow:0 1px 6px #000;margin:24px 0}.hc-type-ball{display:inline-block;width:28px;height:28px;margin-left:7px;vertical-align:middle;animation:hc-ball-bounce .8s ease-in-out infinite;filter:drop-shadow(0 2px 3px #0006)}@keyframes hc-ball-bounce{50%{transform:translateY(-8px) rotate(15deg)}}@media(max-width:760px){.hc-film-hero{height:calc(100svh - 90px);min-height:640px}.hc-film-copy{bottom:7%}.hc-film-copy h1{font-size:clamp(48px,12vw,70px)}.hc-film-copy p{font-size:16px;min-height:7.5em;max-width:420px}.hc-film-hero video{object-position:center}.hc-type-ball{width:22px;height:22px}}@media(prefers-reduced-motion:reduce){.hc-type-ball{display:none;animation:none}}

.hc-type-line{opacity:1;transition:opacity 2s ease-in-out}.hc-type-line.hc-awaiting{opacity:0}.hc-reveal-ball{position:absolute;left:0;top:-60px;width:32px;height:32px;pointer-events:none;transition:transform 1.2s cubic-bezier(.32,.05,.4,1);filter:drop-shadow(0 2px 4px #0007)}.hc-reveal-ball img{width:100%;height:100%;display:block;animation:hc-ball-bounce .8s ease-in-out infinite}@media(max-width:760px){.hc-reveal-ball{width:26px;height:26px}}@media(prefers-reduced-motion:reduce){.hc-type-line{transition:none}.hc-reveal-ball{display:none}}

.hc-writing-ball{display:inline-block;width:28px;height:28px;object-fit:contain;vertical-align:middle;margin-left:5px;filter:drop-shadow(0 2px 4px #0006)}.hc-film-hero .landing-train-track{animation-duration:70s}.hc-film-hero .landing-train-group img{width:auto;height:100%;max-height:none;object-fit:cover}.hero-film .landing-train{position:absolute;inset:0}.hero-film .landing-train-track{animation-duration:75s}.hero-film .landing-train-group img{height:100%;width:auto;max-width:none;object-fit:cover}@media(max-width:760px){.hc-writing-ball{width:22px;height:22px}}@media(prefers-reduced-motion:reduce){.hc-writing-ball{display:none}}

.story-film-hero .hc-film-copy{max-width:1000px}.story-film-hero h1{font-size:clamp(44px,5.6vw,78px)}.sessions-film-hero{height:540px;min-height:540px}.sessions-film-hero .hc-film-copy p{min-height:3em}@media(max-width:760px){.story-film-hero h1{font-size:clamp(36px,9vw,54px)}.sessions-film-hero{height:480px;min-height:480px}.sessions-film-hero .hc-film-copy p{min-height:4.5em}}

/* Equal panels keep the connected montage seamless as media loads. */
.landing-train .landing-train-group>img,.hc-film-hero .landing-train .landing-train-group>img,.landing-train .landing-train-group>video,.hc-film-hero .landing-train .landing-train-group>video{position:relative;inset:auto;display:block;flex:0 0 auto;width:clamp(320px,38vw,600px);height:100%;max-width:none;object-fit:cover;object-position:center;aspect-ratio:auto}
.holiday-montage .landing-train-track{animation-duration:70s}
@media(max-width:760px){.landing-train .landing-train-group>img,.hc-film-hero .landing-train .landing-train-group>img,.landing-train .landing-train-group>video,.hc-film-hero .landing-train .landing-train-group>video{width:82vw}}

/* Football story: retain the shared page styling and stable text layout. */
.football-story-page .story-row h3{color:var(--green);font-size:26px;margin-top:36px;margin-bottom:14px}.football-story-actions{display:flex;flex-wrap:wrap;gap:16px;margin-top:30px}
.football-scroll-letter{opacity:0}.football-scroll-letter.is-written{opacity:1}.football-scroll-ball{position:fixed;width:19px;height:19px;object-fit:contain;pointer-events:none;z-index:30;visibility:hidden;filter:drop-shadow(0 1px 2px #0004)}@media(prefers-reduced-motion:reduce){.football-scroll-letter{opacity:1}.football-scroll-ball{display:none}}
