/* A quieter homepage, with detailed information on dedicated pages. */
.icon{display:block;width:20px;height:20px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}
.carousel-arrow,.round-button,.dialog-story-nav button,.dialog-close{display:inline-flex;align-items:center;justify-content:center}
.carousel-arrow,.dialog-story-nav button,.dialog-close{padding:0}
.dialog-story-nav button,.dialog-close{border-radius:50%}
.dialog-done{justify-content:center;gap:20px}
.photo-expand{display:flex;align-items:center;justify-content:center;gap:8px;min-height:44px}
.photo-expand>span{min-width:0;font-size:inherit;line-height:1.35}
.photo-expand .icon{width:16px;height:16px}
.primary-cta:hover .cta-label{transform:none}
.story-photo:focus-visible{outline:3px solid #fff;outline-offset:-5px}
.results .carousel-arrow:focus-visible,.results .round-button:focus-visible{outline:2px solid #f4f5f8;outline-offset:4px}
.back-top{min-height:44px}
.footer-bottom a{min-width:0;max-width:100%;overflow-wrap:anywhere}
.volume-waves{display:none}
.testimonial-media.is-audible .volume-waves{display:block}
.testimonial-media.is-audible .volume-muted{display:none}
.life-photo>img{display:block;width:100%;height:100%;object-fit:cover}
.testimonial-fallback a{text-decoration:underline;text-underline-offset:4px}
.testimonial-playback{position:absolute;z-index:3;top:10px;right:10px;display:grid;place-items:center;width:44px;height:44px;padding:0;border:1px solid #ffffff95;border-radius:50%;color:#fff;background:#111216e8}
.testimonial-playback:hover{background:#30343d}
.testimonial-playback:focus-visible{outline:3px solid #fff;outline-offset:3px}
.testimonial-playback .play-mark{display:none}
.testimonial-playback.is-paused .play-mark{display:block}
.testimonial-playback.is-paused .pause-mark{display:none}
.desktop-nav a[aria-current="page"]:after{transform:scaleX(1)}
.desktop-nav a[aria-current="page"]{color:#fff}
.desktop-nav .shop-nav-link{max-width:10rem;line-height:1.35;text-wrap:balance}
.desktop-nav .nutrition-nav-link{max-width:7.5rem;line-height:1.35;text-wrap:balance}
.desktop-nav{gap:clamp(12px,1.2vw,22px)}
.mobile-nav a[aria-current="page"]{border-left:2px solid #fff;padding-left:14px}
.mobile-nav .shop-nav-link{white-space:normal;line-height:1.4}
.section{padding-block:88px}
.section-top{margin-bottom:28px}
.section-heading{margin-bottom:32px}
.page-title{font-size:clamp(3.5rem,7.3vw,7.5rem);font-weight:600;line-height:1.02;letter-spacing:-.02em}
.page-title em{color:#e7e9ef}
.section-link{display:inline-flex;align-items:center;gap:16px;min-height:44px;padding-block:10px;border-bottom:1px solid #ffffff65;font-size:1rem;white-space:nowrap}
.section-link svg,.offer-link svg,.text-link svg,.back-top svg{flex-shrink:0}

/* Keep the familiar marble opening, with fewer competing messages. */
.page-home .hero{min-height:0}
.page-home .hero-composition{padding-block:60px 72px}
.page-home .hero h1{font-size:clamp(4.5rem,8.8vw,8.5rem)}
.page-home .hero-training{max-width:350px;margin:0}
.page-home .hero-intro{max-width:420px}
.page-home .hero-training figcaption span:last-child{display:none}

.home-programs h2{font-size:clamp(3rem,5.5vw,5.5rem)}
.offer-grid{display:grid;grid-template-columns:minmax(0,1.2fr) repeat(2,minmax(0,1fr));gap:20px}
.offer-card{min-width:0;display:flex;flex-direction:column;gap:22px;padding:30px;border:1px solid #cfd0d4;background:#ececef}
.offer-tag{font-size:.875rem;letter-spacing:.06em;line-height:1.5;color:#656872}
.offer-card h3{font-size:clamp(2.3rem,3.5vw,3.7rem);font-weight:600;line-height:1.06;overflow-wrap:normal}
.offer-card p{font-size:1rem;line-height:1.6;max-width:340px;color:#50535a}
.offer-featured{background:linear-gradient(135deg,#282a30,#0c0d10);border-color:#34363e;color:#f6f7fa}
.offer-featured .offer-tag{color:#c6c9d1}
.offer-featured p{color:#d0d2d9}
.offer-link{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:48px;margin-top:auto;padding-top:14px;border-top:1px solid #ffffff45;font-size:1rem;font-weight:600}
.offer-link:hover{color:#fff}
.offer-link:focus-visible{outline-color:#fff}

/* Photographs do the talking; full case studies open only when requested. */
.home-results:before{display:none}
.home-results .story-track{grid-auto-columns:calc((100% - 48px)/3);gap:24px}
.home-results .story-track>.story{padding:0;min-height:0;overflow:hidden;background:#191a1f}
.home-results .story-photo{border:0;border-radius:0;max-width:none}
.home-results .story-footer{padding:18px 16px;border-top:1px solid #ffffff25;min-height:86px;gap:12px}
.home-results .story-footer>span{font-size:1.125rem;font-weight:600;line-height:1.3}
.home-results .muted-inline{font-size:.875rem;font-weight:400;line-height:1.4;margin-top:7px}
.home-results .round-button{display:grid;place-items:center;width:44px;height:44px;flex:0 0 44px}
.home-results .round-button:before{content:none}
.home-results .results-note{margin-top:12px}
.home-results .carousel-toolbar{margin-bottom:16px}
.home-results .carousel-hint{max-width:none}

/* A compact client perspective beside the video, below the transformations. */
.home-testimonial{grid-template-columns:minmax(0,1fr) minmax(0,230px);gap:40px;max-width:920px;margin:44px auto 0;padding:28px 32px}
.home-testimonial .testimonial-copy h3{font-size:clamp(2.8rem,4.3vw,4.5rem);line-height:1.03;margin:18px 0}
.home-testimonial .testimonial-copy>p:not(.eyebrow){font-size:1rem;line-height:1.5;max-width:300px}
.home-testimonial .testimonial-media{width:100%;max-width:230px}
.home-testimonial .testimonial-sound{padding:14px;flex-direction:column;align-items:flex-start;justify-content:flex-end;gap:6px}
.home-testimonial .sound-label{font-size:.875rem;line-height:1.4}

.home-about{display:grid;grid-template-columns:minmax(100px,210px) minmax(0,1fr);gap:48px;align-items:center;max-width:960px}
.home-about>img{display:block;width:100%;height:auto;border:1px solid #cfd0d4}
.home-about h2{font-size:clamp(2.6rem,4.5vw,4.8rem);line-height:1.05;margin-block:16px}
.home-about p:not(.eyebrow){color:#50535a;max-width:380px}
.home-about .text-link{margin-top:16px}

/* A compact supplement offer with a direct, mobile-friendly shop link. */
.supplements{padding-bottom:64px;scroll-margin-top:100px}
.supplements-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;align-items:center;gap:32px;padding:36px;border:1px solid #383a42;background:linear-gradient(120deg,#26282e,#111216);color:#f6f7fa}
.supplements-card>div{min-width:0}
.supplements-heading .eyebrow{font-size:.875rem;letter-spacing:.08em;color:#c7c9d1}
.supplements-heading h2{font-size:clamp(2.5rem,4.5vw,4.5rem);line-height:1.05;margin-top:12px}
.supplements-offer{font-size:1rem;color:#d0d2d9}
.supplements-offer>strong{display:block;font-family:var(--display);font-size:2.75rem;font-weight:600;line-height:1.1;letter-spacing:-.02em;color:#fff}
.supplements-code{margin-top:10px;font-size:1rem;line-height:1.65;color:#d0d2d9}
.supplements-code>strong{display:inline-block;padding:1px 8px;margin-inline:3px;border:1px solid #7e828e;border-radius:4px;background:#ffffff0a;color:#fff;letter-spacing:.08em;user-select:all}
.supplements-cta{min-width:0;max-width:100%;gap:24px}
.supplements-cta .cta-label{min-width:0;overflow-wrap:anywhere}

/* Two visual categories, with checkout handled by Best Body. */
.shop-intro{display:flex;justify-content:space-between;align-items:flex-end;gap:32px;margin-bottom:40px}
.shop-intro .eyebrow{margin-bottom:20px;color:#585b64}
.shop-intro .page-title{font-size:clamp(3.5rem,6.5vw,6rem)}
.shop-intro .page-title em{color:#656a75}
.shop-intro>p{max-width:260px;color:#50535a}
.shop-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.shop-card{min-width:0;display:flex;flex-direction:column;border:1px solid #cfd0d4;background:#ececef}
.shop-image{aspect-ratio:4/3;overflow:hidden;background:#e1e2e6}
.shop-image img{display:block;width:100%;height:100%;object-fit:cover}
.shop-supplements-image img{object-position:62% center}
.shop-card-body{display:flex;flex-direction:column;align-items:flex-start;gap:16px;flex:1;min-width:0;padding:28px;overflow-wrap:anywhere}
.shop-card-body h2{font-size:clamp(2.3rem,3.8vw,4rem);line-height:1.05}
.shop-card-body>p{font-size:1rem;line-height:1.5;color:#50535a}
.shop-discount{width:100%;padding:14px 16px;background:#1c1e24;color:#f5f6f9;border:1px solid #373a43}
.shop-discount p{font-size:1rem;line-height:1.55}
.shop-discount strong{display:block;font-weight:650}
.shop-discount span{display:block;margin-top:5px;color:#d9dbe2}
.shop-discount b{display:inline-block;margin-inline:3px;padding-inline:7px;border:1px solid #848a97;border-radius:3px;letter-spacing:.08em;user-select:all;color:#fff}
.shop-cta{display:flex;align-items:center;justify-content:space-between;gap:18px;width:100%;min-height:56px;margin-top:auto;padding:16px 20px;font-size:1rem;font-weight:650;line-height:1.4;background:#111216;color:#fff}
.shop-cta span{min-width:0;overflow-wrap:anywhere}
.shop-cta:hover{background:#32353f}
.shop-cta:hover span{transform:none}
.shop-cta:focus-visible{outline:3px solid #393f4c;outline-offset:4px}
.shop-purchase-note{margin-top:20px;font-size:.875rem;line-height:1.5;color:#585b64}

/* Short, consistent closing action on every page. */
.contact-compact-layout{display:flex;justify-content:space-between;align-items:center;gap:40px}
.contact-compact h2{font-size:clamp(2.7rem,5.3vw,5.5rem);line-height:1.04}
.contact-compact .primary-cta{flex-shrink:0;min-width:240px}
.footer{padding-block:32px 20px}
.footer-top{padding-block:0 28px}

/* Detailed programs preserve the full premium offer and coaching phases. */
.page-programs .resources>.wrap>.section-heading{align-items:center;margin-bottom:40px}
.page-programs .resources>.wrap>.section-heading>p{max-width:330px;color:#bdc0c8}
.page-programs .resource-premium .premium-title{font-size:clamp(3rem,4.5vw,5rem);line-height:1.02;margin:0}
.page-programs .premium-inclusions .inclusions-title{margin:0 0 20px;font-family:var(--body);font-size:.875rem;font-weight:600;line-height:1.5;letter-spacing:.07em;text-transform:uppercase;color:#c7c9cf}
.page-programs .premium-features h4{margin:0;font-family:var(--body);font-size:1rem;font-weight:650;line-height:1.4;letter-spacing:-.01em;color:#f5f6f8}
.page-programs .resource-title{font-size:clamp(3rem,5vw,5rem);font-weight:600;line-height:1.02;margin-top:36px}
.page-programs #premium{scroll-margin-top:110px}
.page-programs .coaching-intro{position:static}
.page-programs .coaching-intro h2{font-size:clamp(3rem,5vw,5rem)}
.page-transformations .results .section-heading{align-items:center}
.page-transformations .story-selectors{grid-template-columns:repeat(3,minmax(0,1fr))}
.page-transformations .testimonial-feature{margin-top:64px}
.page-about .founder-heading .page-title{margin-top:26px;font-size:clamp(3.4rem,6vw,6.5rem)}
.page-about .founder{padding-top:88px}
.page-about .approach{border-top:1px solid #d1d2d5}
.page-about .life,.page-home .life{min-height:460px}
.page-about .life-content,.page-home .life-content{padding-block:64px 90px}
.page-about .life h2,.page-home .life h2{font-size:clamp(3.5rem,6vw,6rem)}

@media (min-width:801px) and (max-width:1100px){
 .offer-card{padding:24px;gap:20px}
 .home-results .story-track{grid-auto-columns:calc((100% - 24px)/2)}
 .page-home .hero h1{font-size:clamp(4.4rem,9vw,6.2rem)}
}

@media (max-width:800px){
 :root{--marble-image:url('optimised/marble-960.webp')}
 .section{padding-block:44px}
 .section-top{margin-bottom:18px}
 .section-heading{margin-bottom:24px;gap:18px}
 .page-title{font-size:clamp(2.6rem,10.4vw,4.5rem);line-height:1.04}
 .section-link{white-space:normal;font-size:.875rem;gap:12px}
 .page-home .hero-composition{padding-block:28px 30px}
 .page-home .hero h1{font-size:clamp(2rem,9.6vw,4.8rem)}
 .page-home .hero-training{max-width:270px}
 .page-home .hero-intro{margin:0;max-width:none}
 .home-programs h2{font-size:clamp(2.15rem,8.5vw,3.6rem)}
 .offer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
 .offer-card{gap:16px;padding:18px 16px}
 .offer-card h3{font-size:clamp(1.6rem,6vw,2.8rem);line-height:1.08}
 .offer-card p{font-size:1rem;line-height:1.5}
 .offer-tag{font-size:.875rem;letter-spacing:.04em}
 .offer-featured{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-areas:"tag tag" "title description" "link link";gap:16px 20px;padding:22px 20px}
 .offer-featured .offer-tag{grid-area:tag}
 .offer-featured h3{grid-area:title;font-size:clamp(1.9rem,7.2vw,3rem)}
 .offer-featured p{grid-area:description}
 .offer-featured .offer-link{grid-area:link;padding-top:12px}
 .home-results .section-heading{display:block}
 .home-results h2{font-size:clamp(2.25rem,8vw,4rem)}
 .home-results .section-link{margin-top:12px}
 .home-results .story-track{grid-auto-columns:82%;gap:12px}
 .home-results .story-footer{padding:16px 14px}
 .home-results .story-footer .round-button{width:44px;flex-basis:44px;padding:0}
 .home-results .story-footer .round-button:before{content:none}
 .home-testimonial{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:16px;margin-top:28px;padding:18px 16px}
 .home-testimonial .testimonial-copy h3{font-size:clamp(1.5rem,6.1vw,3rem);line-height:1.08;margin:12px 0}
 .home-testimonial .testimonial-media{max-width:210px}
 .home-testimonial .testimonial-sound{padding:10px}
 .home-about{grid-template-columns:minmax(0,.65fr) minmax(0,1.35fr);gap:22px}
 .home-about h2{font-size:clamp(1.9rem,6.9vw,3.2rem);margin-block:12px}
 .home-about .eyebrow{font-size:.875rem}
 .home-about p:not(.eyebrow){font-size:1rem;line-height:1.5}
 .home-about .text-link{margin-top:12px}
 .supplements{padding-bottom:44px}
 .supplements-card{display:flex;flex-wrap:wrap;gap:22px 18px;padding:24px 20px}
 .supplements-card>div{flex:1 1 calc(50% - 9px);min-width:min(100%,7rem)}
 .supplements-heading h2{font-size:clamp(2rem,7.4vw,3.5rem)}
 .supplements-offer>strong{font-size:2.25rem}
 .supplements-cta{flex:0 1 100%;width:100%;gap:16px;padding-inline:18px}
 .shop-intro{align-items:flex-start;gap:24px;margin-bottom:28px}
 .shop-intro .eyebrow{margin-bottom:14px}
 .shop-intro .page-title{font-size:clamp(2.5rem,8.5vw,4rem)}
 .shop-intro>p{max-width:190px;padding-top:34px;font-size:1rem;line-height:1.5}
 .shop-grid{grid-template-columns:minmax(0,1fr);gap:18px}
 .shop-card{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}
 .shop-image{height:100%;min-height:180px;aspect-ratio:auto}
 .shop-card-body{padding:20px 18px;gap:14px}
 .shop-card-body h2{font-size:clamp(1.75rem,5.8vw,2.8rem);overflow-wrap:anywhere}
 .shop-discount{padding:12px}
 .shop-cta{min-height:52px;padding:12px;gap:10px;font-size:.875rem}
 .shop-purchase-note{margin-top:16px}
 .contact-compact-layout{gap:24px;align-items:start;flex-direction:column}
 .contact-compact h2{font-size:clamp(2.5rem,9vw,4rem)}
 .contact-compact .primary-cta{width:100%;min-width:0}
 .footer{padding-block:28px 20px}
 .page-programs .resources>.wrap>.section-heading{display:block;margin-bottom:28px}
 .page-programs .resource-premium .premium-title{font-size:clamp(2rem,8.2vw,3.7rem);line-height:1.06}
 .page-programs .resource-title{font-size:clamp(1.6rem,6vw,2.8rem);line-height:1.08;margin-top:20px;overflow-wrap:break-word}
 .page-programs .premium-inclusions .inclusions-title{margin-bottom:14px}
 .page-programs .coaching-intro h2{font-size:clamp(1.9rem,7vw,3.6rem)}
 .page-transformations .results .section-heading{display:block}
 .page-transformations .story-selectors{grid-auto-flow:row;grid-auto-columns:auto}
 .page-transformations .testimonial-feature{margin-top:28px}
 .page-about .founder{padding-top:36px}
 .page-about .founder-heading .page-title{font-size:clamp(2rem,7.5vw,3.5rem);margin-top:14px}
 .page-about .life,.page-home .life{min-height:0}
 .page-about .life h2,.page-home .life h2{font-size:clamp(2.5rem,9vw,4.5rem)}
 .page-about .life-content,.page-home .life-content{padding-block:44px 90px}
}
@media (max-width:359px){
 .shop-intro{display:block}
 .shop-intro>p{max-width:260px;padding-top:16px}
 .shop-card{grid-template-columns:minmax(0,.62fr) minmax(0,1.38fr)}
 .shop-card-body{padding:18px 12px}
 .offer-featured{padding:20px 16px;grid-template-columns:minmax(0,1fr);grid-template-areas:"tag" "title" "description" "link";gap:14px}
 .offer-card{padding:16px 12px}
 .home-about{gap:16px;grid-template-columns:minmax(0,.55fr) minmax(0,1.45fr)}
 .home-results .story-track{grid-auto-columns:88%}
}

/* Keep the six-page navigation clear before switching to the full-width menu. */
@media(min-width:1051px) and (max-width:1280px){
 .header{height:76px;padding-inline:24px;gap:18px}
 .header .desktop-nav{display:none}
 .header .header-cta.primary-cta{display:inline-flex;margin-left:auto;flex-shrink:0}
 .header .brand-mark{width:43px;height:46.3px}
 .header .menu-toggle{margin-left:0;border:1px solid #ffffff50;display:flex;flex-direction:column;gap:7px;align-items:center;justify-content:center;width:46px;height:44px;background:none}
 .menu-toggle span{width:20px;height:1px;background:white;transition:transform .2s}
 .menu-toggle[aria-expanded=true] span:first-child{transform:translateY(4px) rotate(45deg)}
 .menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-4px) rotate(-45deg)}
 .mobile-nav{z-index:30;padding:18px 24px 26px;border-bottom:1px solid #ffffff30;box-shadow:0 24px 50px #0009}
 .mobile-nav a{min-height:52px;display:flex;align-items:center;padding:14px 4px;font-size:1.0625rem}
 .mobile-nav .mobile-cta{justify-content:space-between;padding-inline:18px}
 body.menu-open{overflow:hidden}
}
@media(min-width:1281px) and (max-width:1440px){.header{padding-inline:28px;gap:24px}}
@media(max-width:800px){
 .story-selectors .selector-distinct{gap:4px}
 .story-selectors .selector-distinct .selector-phase{display:block;font-size:.875rem;line-height:1.3;color:#c8cbd3;overflow-wrap:normal}
}

/* Supplied H Performance Culture lockup: preserve the lettering and transparency. */
.brand.brand-lockup{display:block;width:256px;max-width:100%;min-width:0;line-height:0}
.brand-image{display:block;width:100%;height:auto;aspect-ratio:1186 / 315;overflow:hidden}
.header .brand-lockup{flex-shrink:0}
.brand.footer-brand.brand-lockup{width:320px}
@media(max-width:1280px){
 .header .brand-lockup{width:224px}
}
@media(max-width:600px){
 .header .brand-lockup{width:100%;max-width:220px}
 .brand.footer-brand.brand-lockup{width:min(100%,300px)}
}
