@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@600;700;800&family=Barlow:wght@400;500;600;700&display=swap');
:root{--bg:#080808;--paper:#f4f4f4;--muted:#b0b0b0;--accent:#ef292f;--line:#303030}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--paper);font-family:Barlow,Arial,sans-serif}a{color:inherit;text-decoration:none}a:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:5px}header{height:110px;margin:0 5%;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line)}.brand{font-family:'Barlow Condensed',Impact,sans-serif;font-weight:800;font-size:35px;letter-spacing:3px;line-height:1}.brand small{display:block;font:600 8px Barlow,Arial,sans-serif;letter-spacing:3.4px;margin-top:8px}nav{display:flex;gap:38px;align-items:center;font-size:14px}.button{display:inline-block;background:var(--accent);color:#ffffff;padding:19px 25px;font-weight:600;font-size:15px}.button:hover{background:#c91e24}nav .button{padding:13px 20px}.hero{padding:55px 5% 0;display:grid;grid-template-columns:1fr 1.1fr;gap:35px}.eyebrow{font-size:11px;letter-spacing:2.5px;font-weight:600;color:var(--accent);margin:0 0 27px}h1,h2{font-family:'Barlow Condensed',Impact,sans-serif;font-weight:700;line-height:.88;letter-spacing:-1.5px;margin:0}h1{font-size:clamp(84px,9.7vw,155px)}em{font-style:normal;color:var(--accent)}.intro{line-height:1.6;font-size:17px;color:var(--muted);margin:28px 0}.link{display:block;font-size:14px;text-decoration:underline;text-underline-offset:6px;margin-top:25px}.photo{position:relative;min-height:590px}.photo img{width:100%;height:100%;object-fit:cover;object-position:52% center;filter:brightness(.77) saturate(.65)}.caption{position:absolute;bottom:23px;left:24px;right:24px;font-size:10px;letter-spacing:2px}.caption span{float:right}.strip{grid-column:1/-1;border-bottom:1px solid var(--line);padding:20px 0 27px;display:flex;justify-content:space-between;font-size:10px;letter-spacing:2px;color:var(--muted)}.section{padding:105px 5%}h2{font-size:clamp(48px,5.6vw,82px);line-height:.98}.gym{display:grid;grid-template-columns:1fr 1fr;gap:50px}.copy{padding-top:35px;max-width:510px;color:var(--muted);font-size:18px;line-height:1.7}.copy p:first-child{margin-top:0}.copy a{color:var(--paper)}figure{margin:20px 0 0;grid-column:1/-1}figure img{display:block;width:100%;height:510px;object-fit:cover;object-position:center 58%;filter:saturate(.65)}figcaption{font-size:11px;color:var(--muted);letter-spacing:1.5px;margin-top:17px}.start{background:#151515;color:#f4f4f4}.start .eyebrow{color:#ef292f}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:55px;margin-top:65px}.steps article{border-top:1px solid #383838;padding-top:23px}.steps article>span{font-size:13px;color:#ef292f}h3{font-family:'Barlow Condensed',Impact,sans-serif;font-size:34px;font-weight:600;margin:25px 0 15px}.steps p{font-size:17px;line-height:1.6;color:#b0b0b0}.faq{display:grid;grid-template-columns:1fr 1.6fr;border-bottom:1px solid var(--line)}details{border-top:1px solid var(--line);padding:23px 0}details:last-child{border-bottom:1px solid var(--line)}summary{font-size:20px;cursor:pointer}details p{color:var(--muted);font-size:17px;line-height:1.6;max-width:600px}.contact h2{font-size:clamp(65px,9vw,130px)}.contact-bottom{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-top:55px}.contact-bottom p{color:var(--muted);font-size:20px;line-height:1.5}.contacts a{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);font-size:24px;padding:18px 0}.contacts a:hover{color:var(--accent)}footer{border-top:1px solid var(--line);margin:0 5%;padding:35px 0;display:flex;justify-content:space-between;align-items:center;color:var(--muted);font-size:12px}footer .brand{color:var(--paper);font-size:25px}footer .brand small{font-size:6px;letter-spacing:2.1px}@media(min-width:1600px){body{max-width:1800px;margin:auto}}@media(max-width:750px){header{height:90px}nav{gap:18px}nav>a:not(.button){display:none}.brand{font-size:29px}.hero{grid-template-columns:1fr;padding-top:40px;gap:30px}h1{font-size:100px}.photo{height:420px;min-height:0}.strip{font-size:8px;gap:20px;line-height:1.5}.section{padding:65px 6%}.gym,.faq,.contact-bottom{grid-template-columns:1fr;gap:25px}.copy{padding-top:0;font-size:17px}figure{margin-top:8px}figure img{height:320px}.steps{grid-template-columns:1fr;gap:25px;margin-top:40px}.steps article{padding-top:18px}h3{margin:12px 0}.steps p{margin-bottom:10px}.contacts a{font-size:20px}.contact-bottom{margin-top:30px}footer{gap:20px;flex-wrap:wrap}footer p{margin-left:auto}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media(min-width:751px){h1{font-size:clamp(70px,7.3vw,117px)}}@media(max-width:750px){h1{font-size:clamp(58px,13vw,100px)}}
.brand{display:flex;align-items:center;gap:12px;letter-spacing:1.5px}.brand img{width:75px;height:75px;object-fit:contain}.brand span{font-size:28px}.hero .photo img{filter:none;object-fit:cover}.gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.gallery img{height:auto;aspect-ratio:1;object-fit:cover;filter:none}.gallery figcaption{grid-column:1/-1}footer .brand img{width:60px;height:60px}footer .brand span{font-size:23px}@media(max-width:750px){.brand{gap:7px}.brand img{width:55px;height:55px}.brand span{font-size:22px}.gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.photo{height:auto;aspect-ratio:3/4}}
.progress{padding-top:0}.progress figure img{height:auto;object-fit:contain;filter:none}.progress .copy{padding-top:0}.progress figcaption{line-height:1.6;font-size:13px;color:#b0b0b0}
.brand img.full-wordmark{width:205px;height:auto;display:block}.headline-wordmark{display:block;width:100%;max-width:480px;height:auto;margin-top:16px}footer .brand img.full-wordmark{width:165px;height:auto}@media(max-width:750px){.brand img.full-wordmark{width:155px;height:auto}.headline-wordmark{max-width:420px;margin-top:14px}}
.brand img.full-wordmark{width:205px;height:80px;object-fit:cover;object-position:center}.headline-wordmark{width:100%;max-width:480px;height:auto;aspect-ratio:2.05;object-fit:cover;object-position:center}footer .brand img.full-wordmark{width:165px;height:70px;object-fit:cover}@media(max-width:750px){.brand img.full-wordmark{width:155px;height:65px}.headline-wordmark{height:auto;max-width:420px}}
.brand img.full-wordmark{height:100px}footer .brand img.full-wordmark{height:80px}@media(max-width:750px){.brand img.full-wordmark{height:76px}}
.pricing{border-bottom:1px solid var(--line)}.pricing-intro>p:last-child{color:var(--muted);font-size:18px;line-height:1.6;margin:25px 0 0}.pricing-intro strong{color:var(--paper)}.price-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-top:60px}.price-card{position:relative;border:1px solid var(--line);background:#131313;padding:30px 22px;display:flex;flex-direction:column}.package-name{font-size:12px;font-weight:600;letter-spacing:1.5px;margin:0 0 22px}.session-rate{margin:0;display:flex;flex-wrap:wrap;align-items:baseline;column-gap:7px}.session-rate strong{font:700 clamp(52px,4.8vw,78px)/1 'Barlow Condensed',Impact,sans-serif;color:var(--accent);letter-spacing:-1px}.session-rate span{font-size:14px;color:var(--paper)}.package-total{font-size:14px;color:#b0b0b0;line-height:1.5;margin:15px 0}.duration{font-size:13px;color:var(--paper);padding-top:17px;border-top:1px solid var(--line);margin:5px 0 25px}.price-card .button{font-size:13px;text-align:center;padding:15px 10px;margin-top:auto}.best-value{border-color:var(--accent)}.value-label{position:absolute;top:-26px;left:-1px;right:-1px;height:26px;background:var(--accent);color:white;font-size:10px;letter-spacing:1px;font-weight:600;display:grid;place-items:center;margin:0}.pricing-note{font-size:15px;line-height:1.7;color:var(--muted);margin:28px 0 0}.pricing-note a,.faq details p a{text-decoration:underline;text-underline-offset:4px;color:var(--paper)}@media(max-width:1100px){.price-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:36px 20px}.session-rate strong{font-size:72px}}@media(max-width:500px){.price-grid{grid-template-columns:1fr;gap:38px;margin-top:40px}.price-card{padding:28px}.session-rate strong{font-size:76px}}
h1,h2{font-family:'Teko','Barlow Condensed',Impact,sans-serif;font-weight:700;text-transform:uppercase;letter-spacing:.3px;line-height:.92}h2{font-size:clamp(54px,6.2vw,90px)}.contact h2{font-size:clamp(70px,9.8vw,140px)}.availability-note{margin:30px 0 0;padding:22px 25px;border-left:3px solid var(--accent);background:#151515}.availability-note strong{font-size:13px;letter-spacing:1.5px;color:var(--paper)}.availability-note p{margin:10px 0 0;color:var(--muted);font-size:16px;line-height:1.65;max-width:850px}.availability-note a{color:var(--paper);text-decoration:underline;text-underline-offset:4px}@media(max-width:750px){h2{font-size:54px}.availability-note{padding:20px}.contact h2{font-size:clamp(64px,12vw,90px)}}
header .brand img.dg-header{width:88px;height:88px;object-fit:contain}@media(max-width:750px){header .brand img.dg-header{width:70px;height:70px}}
.contract-callout{display:flex;align-items:center;gap:18px;margin-top:30px;padding:20px 24px;border:1px solid #443032;background:#151112;max-width:900px}.contract-icon{display:grid;place-items:center;flex:0 0 36px;width:36px;height:36px;border:1px solid var(--accent);border-radius:50%;color:var(--accent);font-size:22px}.contract-callout strong{font-size:15px;letter-spacing:.8px;line-height:1.4;color:var(--paper)}.contract-callout p{margin:7px 0 0;font-size:15px;line-height:1.6;color:var(--muted)}.contract-callout+.price-grid{margin-top:52px}@media(max-width:750px){.contract-callout{padding:18px;align-items:flex-start;gap:14px}.contract-callout strong{font-size:14px}.contract-callout p{font-size:14px}}
.gallery>img:first-child{object-position:center top}
footer .brand img.dg-footer{width:75px;height:75px;object-fit:contain}.consultation-callout{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:25px 0 0;margin-top:5px}.consultation-callout strong{font-size:17px;letter-spacing:1px;color:var(--paper)}.consultation-callout p{color:var(--muted);font-size:16px;line-height:1.6;max-width:650px;margin:10px 0 0}.consultation-callout .button{flex-shrink:0;white-space:nowrap;font-size:14px}@media(max-width:900px){.consultation-callout{align-items:flex-start;flex-direction:column;gap:20px}.consultation-callout .button{white-space:normal}}

.page-header{position:sticky;top:0;z-index:100;background:#080808f5;backdrop-filter:blur(12px);margin:0;padding:0 5%;height:auto;min-height:104px;gap:25px}.page-header nav{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.page-header nav>a{display:block;padding:12px 18px;border:1px solid #343434;font-size:14px;font-weight:600;white-space:nowrap}.page-header nav>a:hover{border-color:var(--accent);color:var(--paper)}.page-header nav>a[aria-current=page]{background:var(--accent);border-color:var(--accent);color:white}main{min-height:calc(100vh - 260px)}.progress{padding-top:35px}.hero .text-link{display:block}@media(max-width:750px){.page-header{display:block;padding:8px 5% 12px;min-height:0}.page-header .brand{width:max-content;margin:auto}.page-header .brand img.dg-header{width:55px;height:55px}.page-header nav{display:flex;justify-content:center;gap:6px;margin-top:5px}.page-header nav>a:not(.button){display:block}.page-header nav>a{padding:9px 10px;font-size:12px}html{scroll-padding-top:160px}}

.page-header{position:static;min-height:95px;justify-content:flex-start}.home-wide{display:block;padding-top:65px}.home-wide>div:first-child{width:100%}.home-wide h1{font-size:clamp(80px,9vw,150px);display:grid;grid-template-columns:1fr 1fr;column-gap:50px;align-items:center;line-height:.95}.home-wide h1 br{display:none}.home-wide .headline-wordmark{grid-column:2;grid-row:1/3;max-width:none;width:100%;margin:0}.home-wide .intro{margin-top:35px}.home-wide .strip{margin-top:45px}.lower-nav{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:12px;padding:28px 0;margin-top:5px}.lower-nav a{display:block;border:1px solid #444;padding:15px 23px;font-size:15px;font-weight:600;color:var(--paper)}.lower-nav a:hover{border-color:var(--accent)}.lower-nav a[aria-current=page]{background:var(--accent);border-color:var(--accent);color:white}main>.lower-nav{margin:0 5%;border-top:1px solid var(--line)}@media(max-width:750px){.page-header{min-height:75px;padding:8px 5%;display:flex}.page-header .brand{margin:0}.home-wide{padding-top:35px}.home-wide h1{display:block;font-size:clamp(58px,13vw,100px)}.home-wide h1 br{display:block}.home-wide .headline-wordmark{width:100%;max-width:420px;margin-top:14px}.home-wide .intro{margin-top:28px}.lower-nav{gap:8px;padding:24px 0}.lower-nav a{font-size:13px;padding:12px 14px}.home-wide .strip{margin-top:10px}}

.page-header{justify-content:space-between;gap:25px}.page-header .top-nav{margin:0;padding:0;display:flex;gap:10px;justify-content:flex-end;flex-wrap:wrap}.home-wide h1{display:block;font-size:clamp(54px,7.8vw,145px);line-height:1}.hero-title-line{display:block;white-space:nowrap}.home-wide .headline-wordmark{display:block;grid-area:auto;width:100%;max-width:none;height:auto;aspect-ratio:2.05;object-fit:cover;margin-top:24px}.home-wide{padding-top:45px}.home-wide .intro{margin-top:28px}@media(min-width:1600px){body{max-width:none;margin:0}}@media(max-width:750px){.page-header{display:block}.page-header .brand{margin:auto}.page-header .top-nav{justify-content:center;gap:6px;margin-top:5px}.home-wide h1{font-size:clamp(38px,9vw,68px)}.hero-title-line{white-space:normal}.home-wide .headline-wordmark{width:100%;max-width:none;margin-top:18px}.home-wide{padding-top:35px}}
.home-wide .headline-wordmark{aspect-ratio:auto;object-fit:contain;height:auto;background:transparent}.dg-header,.dg-footer{background:transparent}

.home-wide .intro{font-weight:700;font-size:clamp(22px,2.2vw,34px);line-height:1.4;color:var(--paper);letter-spacing:.2px;margin:30px 0}.button,.page-header nav>a,.lower-nav a{background-color:#ad151d;background-image:linear-gradient(180deg,rgba(255,78,78,.28),rgba(45,0,4,.32)),url("assets/red-cracks.svg");background-size:100% 100%,240px 90px;background-repeat:no-repeat,repeat;border:1px solid #e53a42;color:#fff;text-shadow:0 1px 3px #1e0000;font-weight:700;box-shadow:inset 0 1px 0 #ff8b8444,inset 0 -2px 0 #41000888;transition:filter .15s,border-color .15s}.button:hover,.page-header nav>a:hover,.lower-nav a:hover{background-color:#c5222b;background-image:linear-gradient(180deg,rgba(255,78,78,.28),rgba(45,0,4,.32)),url("assets/red-cracks.svg");filter:brightness(1.15);border-color:#ff8787;color:white}.page-header nav>a[aria-current=page],.lower-nav a[aria-current=page]{background-color:#e42932;background-image:linear-gradient(180deg,rgba(255,100,100,.22),rgba(65,0,3,.2)),url("assets/red-cracks.svg");border-color:#ff9b9b;box-shadow:inset 0 -3px 0 #ffbebc,0 0 0 1px #ff595966}@media(prefers-reduced-motion:reduce){.button,.page-header nav>a,.lower-nav a{transition:none}}
.lower-nav{justify-content:center}.page-header .top-nav{justify-content:center}.page-header{display:grid;grid-template-columns:88px 1fr 88px}.page-header .top-nav{grid-column:2}.page-header nav>a,.lower-nav a{background-color:#74777b;background-image:linear-gradient(125deg,#c4c6c8 0%,#85898e 28%,#afb2b5 46%,#62676c 70%,#8d9296 100%);background-size:100% 100%;background-repeat:no-repeat;border:1px solid #9b9fa3;color:#111214;text-shadow:0 1px 0 #ffffff66;box-shadow:inset 0 1px 0 #eceeef99,inset 0 -3px 0 #33373c,0 2px 5px #0006;font-weight:700}.page-header nav>a:hover,.lower-nav a:hover{background-color:#91969a;background-image:linear-gradient(125deg,#e0e1e2,#94999f 35%,#bfc3c5 55%,#747a80);border-color:#e0e2e5;color:#111214;filter:none}.page-header nav>a[aria-current=page],.lower-nav a[aria-current=page]{background-color:#65696d;background-image:url("assets/red-cracks.svg"),linear-gradient(125deg,#b2b5b8,#777d82 35%,#a2a6aa 55%,#555a60);background-size:200px 80px,100% 100%;background-repeat:repeat,no-repeat;border:1px solid #f55760;color:white;text-shadow:0 1px 3px #000;box-shadow:inset 0 0 13px #ee172755,inset 0 -3px 0 #e52c36,0 0 14px #e51d365e,0 0 3px #ff4c58}.page-header nav>a:focus-visible,.lower-nav a:focus-visible{outline:3px solid #ff737b;outline-offset:4px}@media(max-width:750px){.page-header{display:block}.page-header .top-nav{display:flex;justify-content:center}.lower-nav{justify-content:center}}
.page-header nav>a[aria-current=page],.lower-nav a[aria-current=page]{background-image:url("assets/glowing-cracks.svg"),linear-gradient(125deg,#b2b5b8,#777d82 35%,#a2a6aa 55%,#555a60)}
.button{background-color:#74777b;background-image:linear-gradient(125deg,#c4c6c8 0%,#85898e 28%,#afb2b5 46%,#62676c 70%,#8d9296 100%);background-size:100% 100%;background-repeat:no-repeat;border:1px solid #9b9fa3;color:#111214;text-shadow:0 1px 0 #ffffff66;box-shadow:inset 0 1px 0 #eceeef99,inset 0 -3px 0 #33373c,0 2px 5px #0006;font-weight:700}.button:hover,.button:focus-visible,.button:active{background-color:#65696d;background-image:url("assets/glowing-cracks.svg"),linear-gradient(125deg,#b2b5b8,#777d82 35%,#a2a6aa 55%,#555a60);background-size:200px 80px,100% 100%;background-repeat:repeat,no-repeat;border:1px solid #f55760;color:white;text-shadow:0 1px 3px #000;box-shadow:inset 0 0 13px #ee172755,inset 0 -3px 0 #e52c36,0 0 14px #e51d365e,0 0 3px #ff4c58;filter:none}.button:focus-visible{outline:3px solid #ff737b;outline-offset:4px}
.phone-contact{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:18px 0;border-bottom:1px solid var(--line)}.phone-number{font-size:24px;white-space:nowrap}.phone-actions{display:flex;gap:10px}.contacts .phone-actions a.button{display:inline-flex;align-items:center;justify-content:center;padding:12px 22px;font-size:15px;min-width:76px;min-height:44px;border:1px solid #9b9fa3}.contacts .phone-actions a.button:hover,.contacts .phone-actions a.button:focus-visible{border-color:#f55760;color:white}@media(max-width:750px){.phone-number{font-size:20px}.phone-contact{flex-wrap:wrap;gap:14px}.contacts .phone-actions a.button{padding:11px 18px}}
.progress figcaption{font-size:11px;font-weight:400;letter-spacing:.15px;line-height:1.55;color:#aaa}

.home-service{color:var(--accent);font-weight:600;font-size:clamp(13px,1.3vw,18px);letter-spacing:1.3px;line-height:1.6;margin:28px 0 0}
