:root{--blue:#0ac16e;--blue-rgb:10,193,110;--blue-ink:var(--blue);--blue-soft:color-mix(in srgb,var(--blue) 12%,white);--blue-soft-strong:color-mix(in srgb,var(--blue) 25%,white);--black:#101619;--muted:#657076;--line:#dce3e5;--paper:#f3f5f3}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;color:var(--black);font:16px/1.6 Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}a,button{touch-action:manipulation}a:focus-visible,button:focus-visible{outline:3px solid var(--blue);outline-offset:5px}header{height:100px;padding:14px 5%;background:#101619;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:20;color:white}.brand img{width:170px;height:auto;display:block}nav{display:flex;align-items:center;gap:27px;font-size:13px;font-weight:600}nav a:hover{color:var(--blue)}.button{display:inline-flex;align-items:center;justify-content:center;gap:28px;background:var(--blue);color:#0d252a;padding:17px 24px;font-size:14px;font-weight:700;border:1px solid transparent;transition:background .2s,transform .2s}.button:hover{background:var(--blue);transform:translateY(-2px);color:var(--black)}.small{padding:12px 18px}.dark{background:var(--black);color:white}.dark:hover{background:#26383e;color:white}.outline{background:transparent;border-color:var(--black)}.menu{display:none}.hero{height:680px;min-height:570px;position:relative;background:#182126;color:white;overflow:hidden}.hero-image{position:absolute;width:100%;height:100%;object-fit:cover;object-position:center 45%}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,17,22,.86),rgba(5,17,22,.45) 55%,rgba(5,17,22,.08)),linear-gradient(0deg,rgba(5,17,22,.6),transparent 35%)}.hero-content{position:relative;padding:90px 7%;max-width:1100px}.eyebrow{font-size:11px;letter-spacing:2.3px;font-weight:700;margin-bottom:25px}.blue{color:var(--blue-ink)}h1{font-size:clamp(48px,6.6vw,94px);line-height:1.02;letter-spacing:-3.8px;margin:0 0 28px;font-weight:900}h1 em{font-style:normal;color:var(--blue)}.hero-content p{color:#e4ebed;font-size:17px;line-height:1.8}.actions{display:flex;align-items:center;gap:30px;margin-top:30px;flex-wrap:wrap}.textlink{font-weight:600;font-size:14px;display:inline-block;border-bottom:1px solid currentColor;padding-bottom:5px}.hero-bottom{position:absolute;bottom:25px;left:7%;right:7%;display:flex;justify-content:space-between;font-size:10px;letter-spacing:2px}.trust{padding:27px 7%;display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1px solid var(--line);font-size:12px;color:var(--muted);gap:25px}.trust span{border-right:1px solid var(--line)}.trust span:last-child{border:0}.trust b{display:block;color:var(--black);font-size:17px;letter-spacing:1px}.section{padding:85px 7%}h2{font-size:clamp(34px,4vw,56px);line-height:1.08;letter-spacing:-2px;font-weight:750;margin:0 0 30px}h3{line-height:1.2;letter-spacing:-.5px}p{color:var(--muted)}.lead{font-size:19px;line-height:1.65;color:#35464d}.intro{display:grid;grid-template-columns:1fr 1fr;gap:9%;padding-bottom:25px}.intro p:first-child{margin-top:0}.training-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:20px;padding-top:30px}.training-grid article{min-height:365px;padding:33px;position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between}.training-grid span{font-size:10px;letter-spacing:1.5px;font-weight:bold}.training-grid h3{font-size:29px;margin:25px 0 15px}.training-grid p{font-size:14px}.training-grid a{font-size:13px;font-weight:bold}.photo-card{color:white}.photo-card img{position:absolute;inset:0;height:100%;width:100%;object-fit:cover}.photo-card:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.9),rgba(0,0,0,.05))}.photo-card>div{position:relative;z-index:1;margin-top:auto}.photo-card p{color:#e6ecef}.blue-card{background:var(--blue)}.blue-card p{color:#17414c}.light-card{background:var(--paper)}.courses{background:var(--paper)}.course-top{display:flex;align-items:flex-start;justify-content:space-between;gap:50px}.course-top>.lead{max-width:390px;margin-top:30px}.course-row{display:grid;grid-template-columns:60px 1fr 1fr;align-items:center;border-top:1px solid #cbd5d7;padding:14px 0}.course-row>span{font-size:12px;color:var(--blue-ink)}.course-row h3{font-size:24px}.course-row p{justify-self:end;font-size:14px}.courses .actions p{font-size:12px}.price-heading{display:flex;justify-content:space-between}.price-heading p{margin-top:0}.tabs{display:inline-flex;background:#edf1f1;padding:5px;margin:10px 0 30px;gap:4px}.tabs button{background:transparent;border:0;padding:12px 24px;color:#53656b;font-size:14px}.tabs button[aria-pressed=true]{background:#142125;color:white}.price-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.price-card{padding:28px 23px;border:1px solid var(--line);position:relative;background:white}.price-card.featured{border:2px solid var(--blue);background:var(--blue-soft)}.badge{font-size:9px;letter-spacing:1px;color:#176277;min-height:18px;text-transform:uppercase;font-weight:bold}.price-card h3{font-size:23px;margin:20px 0 22px}.amount{font-size:38px;font-weight:bold;letter-spacing:-1.8px}.amount small{font-size:12px;letter-spacing:0;font-weight:normal}.price-card p{font-size:12px;margin:0 0 28px}.price-card a{width:100%;padding:12px 8px;font-size:12px}.included{display:flex;gap:15px 25px;flex-wrap:wrap;padding:30px 0 20px;font-size:12px}.included b{width:100%}.fine{font-size:11px;max-width:850px}.services{background:#131c20;color:white}.services .blue{color:var(--blue)}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin-top:45px}.service-grid article{border-top:1px solid #435055;padding-top:25px}.service-grid article>span{color:var(--blue);font-size:12px}.service-grid h3{font-size:25px}.service-grid p{color:#acb9bf;font-size:15px;min-height:80px}.service-grid strong,.service-grid small,.service-grid a{display:block}.service-grid small{font-size:12px;color:#aab7bd}.service-grid a{color:var(--blue);margin-top:25px;font-size:14px}.physio{margin-top:60px;padding:25px 0 0;border-top:1px solid #435055;display:flex;justify-content:space-between;font-size:16px}.physio span{color:#aab7bd}.team-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:30px 24px;margin:25px 0 35px}.person img{width:100%;aspect-ratio:1;object-fit:cover;background:#edf2f2;filter:saturate(.85)}.person h3{font-size:23px;margin:15px 0 6px}.person p{font-size:12px;line-height:1.5;margin:0}.cta{background:var(--blue);text-align:center}.cta h2{font-size:clamp(35px,4.5vw,64px)}.cta p{color:#234650}.cta .button{margin-top:15px}.contact{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:45px}.contact h2{font-size:38px}.contact h3{font-size:17px;margin:0 0 20px}.contact address{font-style:normal;color:var(--muted);margin-bottom:20px}.contact a:not(.button){font-size:14px}.contact .hours{display:flex;gap:20px;justify-content:space-between;font-size:12px;padding-bottom:20px;margin-bottom:20px;border-bottom:1px solid var(--line)}.hours b{text-align:right;font-weight:500}.contact-link{display:block;margin-bottom:10px}.contact p{font-size:13px}footer{padding:35px 7%;background:#101619;color:#a7b4b9;display:flex;gap:30px;align-items:center;justify-content:space-between;font-size:11px}footer .brand img{width:140px}footer>div{display:flex;gap:25px}@media(min-width:1500px){.section{padding-left:max(7%,calc((100% - 1350px)/2));padding-right:max(7%,calc((100% - 1350px)/2))}}@media(max-width:1000px){header{height:85px}nav{gap:14px;font-size:12px}.brand img{width:135px}.training-grid{grid-template-columns:1fr 1fr}.photo-card{grid-column:1/-1;min-height:350px!important}.price-cards{grid-template-columns:repeat(2,1fr)}.contact{grid-template-columns:1fr 1fr}.contact>div:first-child{grid-column:1/-1}.hero{height:620px}.hero-content{padding-top:80px}}@media(max-width:760px){.section{padding:55px 6%}header{height:77px;padding:12px 6%}.menu{display:block;color:white;background:none;border:1px solid #53646b;padding:7px 12px;font-size:12px}.menu span{margin-left:12px}nav{display:none;position:absolute;top:77px;left:0;right:0;background:#101619;padding:24px 6%;flex-direction:column;align-items:stretch;gap:0;box-shadow:0 15px 20px #0003}nav.open{display:flex}nav a{padding:12px;font-size:15px}.hero{height:650px;min-height:0}.hero-content{padding:85px 6% 40px}.hero-image{object-position:62% center}.hero-shade{background:linear-gradient(90deg,#071419d9,#07141970)}h1{font-size:clamp(43px,10vw,72px);letter-spacing:-2px}.hero-content p{font-size:15px}.hero-content br:not(h1 br){display:none}.hero .actions{gap:22px;align-items:flex-start;flex-direction:column}.hero-bottom{left:6%;right:6%;font-size:8px;letter-spacing:1px;gap:15px}.trust{grid-template-columns:1fr 1fr;padding:22px 6%;gap:22px;font-size:11px}.trust span:nth-child(2){border:0}.trust b{font-size:14px}.intro{grid-template-columns:1fr;gap:0;padding-bottom:10px}h2{letter-spacing:-1.3px}.lead{font-size:17px}.training-grid{padding-top:25px;grid-template-columns:1fr;gap:15px}.photo-card{grid-column:auto}.training-grid article{min-height:300px}.course-top{display:block}.course-top>.lead{margin-top:0}.course-row{grid-template-columns:30px 1fr;padding:15px 0}.course-row h3{font-size:20px;margin:10px 0}.course-row p{grid-column:2;justify-self:start;margin:0;font-size:13px}.price-heading{display:block}.tabs{display:flex}.tabs button{padding:10px 8px;font-size:11px;flex:1}.price-cards{gap:12px}.price-card{padding:18px 14px}.price-card h3{font-size:20px}.amount{font-size:30px}.service-grid{grid-template-columns:1fr;gap:35px}.service-grid p{min-height:0}.physio{flex-direction:column;gap:10px}.team-grid{grid-template-columns:repeat(2,1fr);gap:25px 16px}.person h3{font-size:21px}.person p{font-size:11px}.contact{grid-template-columns:1fr;gap:35px}.contact>div:first-child{grid-column:auto}footer{flex-direction:column;align-items:flex-start;gap:24px}footer>div{flex-wrap:wrap}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Body typography: existing Avenir Light face, browser-synthesized bold. Headings retain their original typography. */
@font-face {font-family: 'INFINITI Avenir Light'; font-style: normal; font-weight: 400; src: url('assets/avenir-light-0.woff2') format('woff2'); unicode-range: U+0100-012B, U+012E-0130, U+0132-0137, U+0139-0149, U+014C-0151, U+0154-015F, U+0162-0177, U+0179-017C, U+0218-021B, U+02C9, U+02D8-02D9, U+02DB, U+02DD, U+0394, U+03A9, U+03BC, U+03C0, U+1E9E, U+20B9-20BA, U+20BC-20BD, U+2113, U+2126, U+212E, U+2202, U+2206, U+220F, U+2211-2212, U+2215, U+2219-221A, U+221E, U+222B, U+2248, U+2260, U+2264-2265, U+25CA, U+F8FF, U+FB01-FB02;font-display: swap;
font-display: swap;}
@font-face {font-family: 'INFINITI Avenir Light'; font-style: normal; font-weight: 400; src: url('assets/avenir-light-1.woff2') format('woff2'); unicode-range: U+0000, U+000D, U+0020-007E, U+00A0-00FF, U+0131, U+0152-0153, U+0160-0161, U+0178, U+017D-017E, U+0192, U+0237, U+02C6-02C7, U+02DA, U+02DC, U+2013-2014, U+2018-201A, U+201C-201E, U+2020-2022, U+2026, U+2030, U+2039-203A, U+2044, U+20AC, U+2122;font-display: swap;
font-display: swap;}
body {font-family: 'INFINITI Avenir Light', 'Avenir Light', Arial, sans-serif; font-weight:700;}
body *:not(h1,h2,h3,h4,h5,h6):not(h1 *,h2 *,h3 *,h4 *,h5 *,h6 *) {font-family:'INFINITI Avenir Light', 'Avenir Light', Arial, sans-serif !important; font-weight:700 !important;}
h1,h2,h3,h4,h5,h6 {font-family:Arial,Helvetica,sans-serif;}

/* Seasonal campaign dialog */
#autumn-offer {padding:0;border:0;width:min(820px,calc(100vw - 32px));max-height:calc(100dvh - 40px);overflow:auto;background:#fff;color:var(--black);box-shadow:0 25px 100px #0006;}
#autumn-offer[open]{display:grid;grid-template-columns:.85fr 1.15fr;}
#autumn-offer::backdrop{background:rgba(5,15,20,.75);backdrop-filter:blur(4px)}
.offer-close{position:absolute;right:12px;top:10px;z-index:1;width:42px;height:42px;border:0;background:white;color:#122329;font-size:29px;line-height:1;border-radius:50%;}
.offer-visual{background:linear-gradient(0deg,#07171de6,#07171d10),url('assets/img1.jpg') center/cover;display:flex;align-items:flex-end;min-height:450px;padding:30px;color:white;}
.offer-visual span{font-size:28px;line-height:1.15;letter-spacing:-1px;}
.offer-content{padding:55px 35px 30px}.offer-content .eyebrow{font-size:10px;margin-bottom:18px}.offer-content h2{font-size:36px;letter-spacing:-1.3px;margin-bottom:22px}.offer-discount{font-size:52px;color:var(--blue-ink);line-height:1.1;letter-spacing:-2px}.offer-discount span{font-size:18px;letter-spacing:0}.offer-content p{font-size:15px}.offer-content .button{width:100%;margin-top:12px}.offer-content .offer-validity{font-size:11px;margin-bottom:18px}.offer-later{display:block;margin:auto;border:0;border-bottom:1px solid #b1bfc3;padding:4px;background:transparent;color:#56666d;font-size:12px}body.offer-open{overflow:hidden}
@media(max-width:600px){#autumn-offer[open]{grid-template-columns:1fr}.offer-visual{min-height:120px;padding:20px;background-position:center 55%}.offer-visual span{font-size:22px}.offer-content{padding:25px}.offer-content h2{font-size:30px;margin-bottom:15px}.offer-discount{font-size:44px}.offer-content p{font-size:14px}.offer-content .eyebrow{margin-bottom:12px}}

/* Uploaded original Futura Extra Bold Oblique. */
@font-face {font-family:'INFINITI Futura Extra Bold Oblique';src:url('assets/futura-extra-bold-oblique.woff') format('woff');font-weight:700;font-style:oblique;font-display:swap;}
h1,h2,h3,h4,h5,h6,h1 *,h2 *,h3 *,h4 *,h5 *,h6 *,body .eyebrow,body .offer-visual span {font-family:'INFINITI Futura Extra Bold Oblique',Arial,sans-serif !important;font-weight:700 !important;font-style:oblique !important;font-synthesis:none;}
