@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Oswald:wght@500;600;700&display=swap');
:root{--blue:#0753c6;--deep:#082958;--navy:#092348;--orange:#ffbb78;--pale:#edf5ff;--line:#d8e3ee;--ink:#122f50;--muted:#526779}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:var(--ink);font:400 1rem/1.65 'DM Sans',Arial,sans-serif}a{color:inherit}img{max-width:100%;display:block}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.13}h1,h2{font-family:Oswald,Impact,sans-serif;text-transform:uppercase;letter-spacing:.005em}h1{font-size:clamp(3.1rem,6vw,6.3rem);margin-bottom:1.3rem}h2{font-size:clamp(2.2rem,4vw,3.65rem);margin-bottom:1.1rem}h3{font-size:1.3rem;line-height:1.25;margin-bottom:.65rem}p{max-width:66ch}ul{padding-left:1.3rem}li{margin:.45rem 0}.container{width:min(1180px,calc(100% - 40px));margin-inline:auto}.site-header{background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}.header-inner{min-height:76px;display:flex;align-items:center;gap:2rem}.brand{display:inline-flex;align-items:center;gap:.65rem;text-decoration:none;color:var(--deep);line-height:1}.brand-icon{width:39px;height:39px;display:grid;place-items:center;background:var(--blue);color:#fff;font:700 1.15rem Oswald;clip-path:polygon(0 0,100% 0,100% 78%,76% 100%,0 100%)}.brand-text{font:700 1.28rem/1 Oswald;letter-spacing:.04em}.brand-text small{display:block;font:700 .65rem/1.5 'DM Sans';letter-spacing:.22em;color:var(--blue)}.nav{display:flex;align-items:center;gap:1.5rem;margin-left:auto}.nav a{text-decoration:none;font-weight:700;font-size:.9rem;color:var(--ink)}.nav a:hover,.nav a[aria-current=page]{color:var(--blue)}.nav .nav-cta{background:var(--blue);color:#fff;padding:.68rem 1.1rem;border-radius:4px}.nav .nav-cta:hover{color:#fff;background:var(--deep)}.menu-toggle{display:none}.eyebrow{font-weight:700;color:var(--blue);letter-spacing:.13em;text-transform:uppercase;font-size:.83rem;margin-bottom:1rem}.section{padding:clamp(4rem,7vw,7rem) 0}.section-tight{padding:3.5rem 0}.hero{background:#fff;overflow:hidden}.hero-grid{display:grid;grid-template-columns:1fr 1.12fr;align-items:center;min-height:650px;gap:3rem}.hero-copy{padding:3.5rem 0}.hero h1 span{color:var(--blue)}.lede{font-size:1.16rem;line-height:1.65;color:#39546c;max-width:56ch}.actions{display:flex;gap:.8rem;flex-wrap:wrap;margin-top:2rem}.button{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;border:2px solid var(--blue);border-radius:4px;background:var(--blue);color:white;font-weight:700;line-height:1.25;padding:.9rem 1.3rem;min-height:48px;cursor:pointer;font:700 1rem/1.25 'DM Sans'}.button:hover{background:var(--deep);border-color:var(--deep)}.button.secondary{background:transparent;color:var(--blue)}.button.secondary:hover{background:var(--pale)}.button.light{background:white;color:var(--blue);border-color:white}.hero-photo{height:560px;position:relative}.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:68% center;border-radius:5px}.hero-photo:before{content:'';position:absolute;left:-18px;bottom:-18px;width:55%;height:55%;border-left:8px solid var(--orange);border-bottom:8px solid var(--orange);z-index:-1}.photo-caption{font-size:.79rem;color:var(--muted);margin-top:.6rem}.stat-band{background:var(--deep);color:white}.stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;padding:1.4rem 0}.stat-grid span{font-size:.9rem;font-weight:700;border-left:3px solid var(--orange);padding-left:1rem}.split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,6vw,6rem);align-items:start}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}.card{border:1px solid var(--line);padding:1.7rem;background:#fff;border-radius:5px}.card p{color:var(--muted);margin-bottom:0}.card .number{font:600 2rem Oswald;color:var(--blue);margin-bottom:1rem}.card-link{display:inline-block;color:var(--blue);font-weight:700;margin-top:1rem;text-underline-offset:3px}.tint{background:var(--pale)}.accent-line{border-top:6px solid var(--orange)}.panel{background:var(--deep);color:#fff;padding:clamp(2rem,5vw,4rem);border-radius:5px}.panel p{color:#dbe7f6}.panel .eyebrow{color:var(--orange)}.offer-price{font:700 clamp(3.8rem,8vw,6rem)/1 Oswald;color:var(--blue)}.list-check{list-style:none;padding:0}.list-check li{padding-left:1.8rem;position:relative;margin:.8rem 0}.list-check li:before{content:'✓';position:absolute;left:0;color:var(--blue);font-weight:700}.mini-label{display:inline-block;background:#dcecff;color:var(--deep);padding:.3rem .65rem;border-radius:3px;font-weight:700;font-size:.8rem;letter-spacing:.04em;text-transform:uppercase}.page-hero{background:linear-gradient(115deg,#eff6ff,#fff);padding:5.5rem 0 4.8rem;border-bottom:1px solid var(--line)}.page-hero h1{max-width:900px}.page-hero p{font-size:1.16rem;color:#39546c}.feature-row{padding:1.55rem 0;border-top:1px solid var(--line)}.feature-row:last-child{border-bottom:1px solid var(--line)}.feature-row h3{color:var(--deep)}.feature-row p{margin-bottom:0;color:var(--muted)}.callout{background:var(--pale);border-left:5px solid var(--orange);padding:1.3rem 1.5rem}.cta-section{background:var(--blue);color:#fff}.cta-section p{color:#eaf3ff}.cta-section .button{background:white;color:var(--blue);border-color:white}.cta-section .button:hover{background:var(--orange);border-color:var(--orange);color:var(--deep)}.footer{background:#071d3c;color:#d8e3f1;padding:3.5rem 0 2rem}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:2rem}.footer a{color:#d8e3f1}.footer a:hover{color:white}.footer h3{color:white}.footer p{font-size:.9rem}.footer-bottom{border-top:1px solid #34506d;margin-top:2rem;padding-top:1.3rem;font-size:.85rem}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem 1.2rem}.field{display:flex;flex-direction:column;gap:.35rem}.field.full{grid-column:1/-1}.field label{font-weight:700;font-size:.92rem}.field input,.field select,.field textarea{font:inherit;color:var(--ink);width:100%;border:1px solid #a9bbce;border-radius:4px;padding:.72rem .8rem;background:#fff;min-height:48px}.field textarea{min-height:138px;resize:vertical}.field small{color:var(--muted)}.check-field{display:flex;gap:.65rem;align-items:flex-start}.check-field input{width:20px;height:20px;margin-top:.25rem;accent-color:var(--blue)}.check-field label{line-height:1.5}.form-status{border-radius:4px;padding:.8rem 1rem;margin:1rem 0;display:none}.form-status.show{display:block}.form-status.error{background:#fff1ef;color:#8b2319}.form-status.success{background:#e7f6ed;color:#14502e}.site-note{background:#fff5e8;border:1px solid #f2cb9c;border-radius:5px;padding:1rem 1.25rem}.site-note strong{color:var(--deep)}.small{font-size:.9rem;color:var(--muted)}:focus-visible{outline:3px solid #ff9b35;outline-offset:3px}
@media(max-width:900px){.hero-grid{grid-template-columns:1fr;gap:0}.hero-copy{padding:4rem 0 2rem}.hero-photo{height:410px}.split{gap:2rem}.grid-3{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1.5fr 1fr}}@media(max-width:680px){.container{width:min(100% - 32px,1180px)}.header-inner{min-height:68px;justify-content:space-between}.menu-toggle{display:inline-flex;background:#fff;border:1px solid var(--line);border-radius:4px;padding:.55rem .75rem;font:700 .9rem 'DM Sans';color:var(--deep);cursor:pointer}.nav{display:none;position:absolute;top:68px;left:0;right:0;background:white;border-bottom:1px solid var(--line);padding:1rem 16px 1.25rem;box-shadow:0 10px 20px #09234816;flex-direction:column;align-items:stretch;gap:0}.nav.open{display:flex}.nav a{padding:.75rem .5rem}.nav .nav-cta{text-align:center;margin-top:.5rem}.hero-grid{min-height:0}.hero-copy{padding:3rem 0 2rem}.hero h1{font-size:clamp(3rem,13vw,4.6rem)}.hero-photo{height:310px}.stat-grid{grid-template-columns:1fr;padding:1.5rem 0}.split,.grid-3,.footer-grid,.form-grid{grid-template-columns:1fr}.page-hero{padding:3.6rem 0}.section{padding:3.7rem 0}.field.full{grid-column:auto}.brand-text{font-size:1.14rem}}

.coach-intro{display:flex;align-items:center;gap:1.6rem;margin-bottom:1.2rem}.coach-intro h2{margin-bottom:0}.coach-portrait{flex:none;width:160px;height:160px;object-fit:cover;object-position:center 40%;border-radius:50%;border:5px solid #fff;outline:4px solid var(--orange);box-shadow:0 8px 30px #09234820}.coach-intro .eyebrow{margin-bottom:.5rem}@media(max-width:680px){.coach-intro{align-items:center;gap:1.3rem}.coach-portrait{width:116px;height:116px;border-width:4px;outline-width:3px}.coach-intro h2{font-size:clamp(1.9rem,8vw,2.4rem)}}

.performance-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem;margin-top:1.5rem}.performance-gallery figure,.editorial-photo{margin:0}.performance-gallery figure{background:var(--deep);color:#fff;overflow:hidden;border-radius:5px}.performance-gallery img{width:100%;height:260px;object-fit:cover}.performance-gallery figcaption{padding:1.2rem 1.35rem;display:flex;flex-direction:column;gap:.2rem}.performance-gallery figcaption strong{font:600 1.4rem/1.2 Oswald;text-transform:uppercase}.performance-gallery figcaption span{font-size:.92rem;color:#d9e7fa}.editorial-photo{margin-top:2rem}.editorial-photo img{width:100%;height:300px;object-fit:cover;border-radius:5px}.editorial-photo figcaption{font-size:.83rem;color:var(--muted);margin-top:.55rem;line-height:1.45}@media(max-width:680px){.performance-gallery{grid-template-columns:1fr}.performance-gallery img{height:230px}.editorial-photo img{height:220px}}

.honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}

.programme-photo{margin:0}.programme-photo img{width:100%;height:390px;object-fit:cover;border-radius:5px}.programme-photo figcaption{font-size:.83rem;color:var(--muted);margin-top:.5rem}.programme-grid .card{display:flex;flex-direction:column;align-items:flex-start}.programme-grid .card h3{margin-top:1.2rem}.programme-grid .programme-detail{margin-top:auto;padding-top:1rem;color:var(--deep);font-weight:700}.programme-note{background:var(--pale);border-left:5px solid var(--orange);padding:1.2rem 1.4rem;margin-top:1.5rem}.programme-note a,.programmes-home-link a{color:var(--blue);font-weight:700;text-underline-offset:3px}.programmes-home-link{margin:1.5rem 0 0}@media(max-width:680px){.programme-photo img{height:260px}.programme-note{padding:1rem}}
