:root{--orange:#f97316;--black:#0d0d0e;--charcoal:#171719;--mid:#242427;--white:#fff;--paper:#f4f1ec;--ink:#181818;--muted:#b6b6bb;--max:1180px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--black);color:var(--white);font-family:Montserrat,Arial,sans-serif;line-height:1.65}img{display:block;width:100%;height:100%;object-fit:cover}a{color:inherit;text-decoration:none}.container{width:min(calc(100% - 40px),var(--max));margin:auto}.narrow{max-width:850px}.section{padding:105px 0;scroll-margin-top:75px}.section-light{background:var(--paper);color:var(--ink)}.section-orange{background:var(--orange);color:var(--black)}h1,h2,h3,.brand{font-family:"Bebas Neue",Impact,sans-serif;line-height:.94;letter-spacing:.02em;margin:0}h1{font-size:clamp(4.8rem,11vw,10rem)}h2{font-size:clamp(3.3rem,7vw,6.5rem);margin-bottom:35px}h3{font-size:2rem}em{color:var(--orange);font-style:normal}.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:.76rem;font-weight:800;color:var(--orange);margin:0 0 18px}.eyebrow-dark{color:var(--black)}.lead{font-size:clamp(1rem,2vw,1.25rem);max-width:680px;color:#ddd}.lead-dark{font-size:1.2rem}.button{display:inline-flex;justify-content:center;align-items:center;background:var(--orange);color:#111;padding:15px 22px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;border:2px solid var(--orange);transition:.2s}.button:hover{transform:translateY(-2px);background:#ff8b35}.button-ghost{background:transparent;color:white;border-color:#666}.button-small{padding:9px 14px;font-size:.78rem}.skip-link{position:absolute;left:-999px;top:10px;background:white;color:black;padding:10px;z-index:99}.skip-link:focus{left:10px}.site-header{height:76px;position:sticky;top:0;z-index:10;background:rgba(13,13,14,.95);border-bottom:1px solid #303034;display:flex;align-items:center;padding:0 max(20px,calc((100vw - var(--max))/2));justify-content:space-between}.brand{font-size:1.65rem;white-space:nowrap}.brand span{color:var(--orange)}nav{display:flex;align-items:center;gap:25px}nav>a:not(.button){font-size:.75rem;text-transform:uppercase;font-weight:700;letter-spacing:.05em}.menu-toggle{display:none;background:none;border:1px solid #666;color:white;padding:8px 10px}.hero{min-height:calc(100vh - 76px);display:flex;align-items:center;position:relative;overflow:hidden;background:radial-gradient(circle at 75% 40%,#333 0,transparent 30%),linear-gradient(120deg,#111 20%,#1d1d20 100%)}.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.3) 1px,transparent 1px),linear-gradient(rgba(0,0,0,.3) 1px,transparent 1px);background-size:60px 60px;opacity:.22}.hero-content{position:relative;z-index:1}.hero .lead{margin:28px 0}.actions{display:flex;gap:12px;flex-wrap:wrap}.hero-mark{position:absolute;right:-4vw;bottom:-10vw;font:36vw/.7 "Bebas Neue";color:transparent;-webkit-text-stroke:2px rgba(249,115,22,.15);transform:rotate(-8deg)}.trust-strip{overflow:hidden;background:var(--orange);color:#111}.trust-track{display:flex;justify-content:center;flex-wrap:wrap}.trust-track span{font-weight:800;text-transform:uppercase;font-size:.72rem;padding:17px 22px}.trust-track span:before{content:"●";margin-right:12px}.split{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(40px,8vw,100px);align-items:center}.image-frame{height:680px;box-shadow:18px 18px 0 var(--orange)}.locked-image{position:relative;background:#252528}.locked-image figcaption{position:absolute;left:8px;bottom:8px;background:#111;color:#fff;padding:4px 8px;font-size:.55rem;letter-spacing:.08em}.locked-image>span{position:absolute;z-index:1;top:12px;left:12px;background:var(--orange);color:#111;padding:5px 10px;font-weight:800;text-transform:uppercase}blockquote{border-left:5px solid var(--orange);margin:30px 0;padding:8px 0 8px 22px;font-size:1.2rem;font-weight:600}.experience{display:flex;align-items:center;gap:12px;margin:25px 0}.experience strong{font:5rem/1 "Bebas Neue";color:var(--orange)}.experience span{text-transform:uppercase;font-weight:800;line-height:1.2}.tick-list{list-style:none;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:9px}.tick-list li:before{content:"✓";color:var(--orange);font-weight:900;margin-right:9px}.card-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.card{background:var(--charcoal);border:1px solid #303034;padding:30px;min-height:260px}.card-number{color:var(--orange);font-weight:800}.card h3{margin:38px 0 18px}.card p{color:#bbb;font-size:.9rem}.price-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.price-card{background:#111;color:white;padding:30px;min-height:220px;display:flex;flex-direction:column;justify-content:space-between}.price{margin:30px 0 0}.price strong{font:3.4rem/1 "Bebas Neue";color:var(--orange)}.price small{display:block;color:#aaa}.pricing-note{font-size:.82rem;font-weight:600}.results-intro{font-size:1.2rem;max-width:820px;margin-bottom:45px}.transformation{display:grid;grid-template-columns:1.6fr .7fr;gap:28px}.before-after{display:grid;grid-template-columns:1fr 30px 1fr;align-items:center}.before-after figure{height:560px;margin:0}.arrow{font-size:2rem;text-align:center;color:var(--orange)}.stats{background:var(--orange);color:#111;padding:28px}.stats h3{font-size:2.5rem}.stats dl{margin:18px 0 0}.stats dl div{border-top:1px solid rgba(0,0,0,.25);padding:9px 0}.stats dt{text-transform:uppercase;font-size:.65rem;font-weight:800}.stats dd{margin:0;font-size:1.25rem;font-weight:800}.testimonial{max-width:1000px;margin:55px auto 0;font-size:clamp(1.2rem,2.3vw,1.8rem)}cite{display:block;color:var(--orange);font-style:normal;margin-top:10px}.parq{display:flex;justify-content:space-between;align-items:center;gap:30px}.parq h2{margin-bottom:10px}.booking{background:linear-gradient(120deg,#111,#242427)}.booking-inner{display:grid;grid-template-columns:1.2fr .8fr;gap:60px;align-items:center}.booking-card{background:white;color:#111;padding:38px}.booking-card h3{font-size:2.6rem}.booking-card .button{width:100%;margin:15px 0}.text-link{display:block;text-align:center;font-weight:700}details{border-top:1px solid #cbc7c0;padding:20px 4px}details:last-child{border-bottom:1px solid #cbc7c0}summary{cursor:pointer;font-weight:800;font-size:1.05rem}details p{margin-bottom:0}.final-cta{text-align:center;background:var(--charcoal);border-top:5px solid var(--orange)}.final-cta h2{max-width:900px;margin:0 auto 20px}.final-cta p{margin-bottom:30px}footer{padding:65px 0 20px;background:#080808;color:#aaa}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:50px}.footer-grid h3{color:white;font-size:1.5rem}.footer-grid a{display:block;margin:6px 0}.footer-grid .brand{color:white;display:inline-block}.footer-bottom{border-top:1px solid #292929;margin-top:40px;padding-top:20px;display:flex;justify-content:space-between;font-size:.7rem}
@media(max-width:900px){.section{padding:80px 0}.menu-toggle{display:block}nav{display:none;position:absolute;top:76px;left:0;right:0;background:#111;padding:20px;flex-direction:column;align-items:stretch}nav.open{display:flex}.split,.transformation,.booking-inner{grid-template-columns:1fr}.image-frame{height:560px;max-width:520px}.card-grid,.price-grid{grid-template-columns:1fr 1fr}.stats dl{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}}
@media(max-width:600px){.container{width:min(calc(100% - 28px),var(--max))}.section{padding:65px 0}h1{font-size:4.6rem}h2{font-size:3.5rem}.hero{min-height:720px}.card-grid,.price-grid{grid-template-columns:1fr}.card{min-height:unset}.before-after{grid-template-columns:1fr}.before-after figure{height:450px}.arrow{transform:rotate(90deg);padding:5px}.parq{align-items:stretch;flex-direction:column}.parq .button{width:100%}.tick-list{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr}.footer-grid>div:first-child{grid-column:auto}.footer-bottom{gap:15px;flex-direction:column}.actions .button{width:100%}.image-frame{height:500px;box-shadow:9px 9px 0 var(--orange)}}

/* Approved original photography: files are displayed directly and remain unaltered. */
.hero{background-image:linear-gradient(90deg,rgba(0,0,0,.9) 0%,rgba(0,0,0,.72) 42%,rgba(0,0,0,.2) 78%),url("assets/images/hero_alby_header.jpg");background-size:cover;background-position:center}
.hero-mark{display:none}
.price-card .price-button{width:100%;margin-top:24px;padding:10px 12px;font-size:.72rem}.price-file-note{display:block;margin-top:24px;color:#999;font-size:.72rem;font-weight:700;text-transform:uppercase;line-height:1.4}

/* Current personal-training pricing and booking terms. */
.price-label{margin:0 0 10px;color:var(--orange);font-size:.72rem;font-weight:800;letter-spacing:.15em;text-transform:uppercase}.group-pricing-banner{display:grid;grid-template-columns:220px 1fr;align-items:center;gap:28px;margin-top:22px;padding:26px 30px;background:#111;color:#fff;border-left:8px solid #fff}.group-pricing-banner h3{color:var(--orange);font-size:2.1rem}.group-pricing-banner p{margin:0;font-weight:650}.pricing-terms{margin-top:16px;padding:28px 32px;border:2px solid rgba(17,17,17,.35);background:rgba(255,255,255,.12)}.pricing-terms h3{font-size:1.65rem;margin:0 0 10px}.pricing-terms p{max-width:1050px;margin:8px 0;font-size:.9rem;font-weight:600}
@media(max-width:700px){.group-pricing-banner{grid-template-columns:1fr;gap:10px;padding:24px 22px}.pricing-terms{padding:24px 22px}}

/* Three current coaching options displayed as stacked banners. */
.services-grid{grid-template-columns:1fr;gap:14px}.services-grid .card{min-height:unset;display:grid;grid-template-columns:55px minmax(210px,.75fr) 1.5fr;align-items:center;gap:24px;padding:26px 30px;border-left:7px solid var(--orange)}.services-grid .card-number{grid-column:1;grid-row:1;font-size:1rem}.services-grid .card h3{grid-column:2;grid-row:1;margin:0}.services-grid .card p{grid-column:3;grid-row:1;margin:0}.availability{color:var(--orange)}
@media(max-width:900px){.services-grid .card{grid-template-columns:45px 1fr;gap:12px 18px;padding:24px}.services-grid .card-number{grid-column:1;grid-row:1}.services-grid .card h3{grid-column:2;grid-row:1}.services-grid .card p{grid-column:1/-1;grid-row:2}}

/* Single pricing call-to-action aligned with the four-card grid. */
.pricing-heading-row{display:grid;grid-template-columns:max-content 1fr;gap:24px;align-items:stretch;margin-bottom:35px}.pricing-heading-row h2{margin:0;white-space:nowrap}.pricing-cta{width:100%;height:100%;min-height:72px;background:#111;border-color:#111;color:#fff;text-align:center}.pricing-cta:hover{background:#242427;border-color:#242427}
@media(max-width:900px){.pricing-heading-row{grid-template-columns:1fr;margin-bottom:24px}.pricing-heading-row h2{white-space:normal}.pricing-cta{min-height:58px}}

/* Centred pricing-card content with stronger price emphasis. */
.price-card{text-align:center;align-items:center}.price-card>div{width:100%}.price-card .price strong{font-size:4.6rem}

/* Brand divider between client results and coaching services. */
#results{border-bottom:10px solid var(--orange)}

/* Services uses the same warm off-white palette as About. */
.services-section{background:var(--paper);color:var(--ink)}.services-section h2{color:var(--ink)}.services-section .services-grid .card{background:var(--charcoal);color:#fff;border-top:1px solid #303034;border-right:1px solid #303034;border-bottom:1px solid #303034;box-shadow:0 8px 24px rgba(24,24,24,.14)}.services-section .services-grid .card h3{color:#fff}.services-section .services-grid .card p{color:#e1e1e4}
