/* GROUP TRAINING PAGE — matched to the COREO reference PDF */
.group-page{background:#070706;color:#f6f1ed;overflow:hidden}.group-page[hidden]{display:none!important}.group-panel{position:relative;isolation:isolate;border-bottom:1px solid rgba(240,68,22,.72);overflow:hidden}.group-page h1,.group-page h2,.group-page h3{font-family:var(--heading);font-weight:800;letter-spacing:-.45px;line-height:.99;margin:0;color:#f8f5f1}.group-page h1{font-size:clamp(39px,4.15vw,66px)}.group-page h2{font-size:clamp(32px,3.45vw,54px)}.group-page h3{font-size:clamp(17px,1.55vw,23px);line-height:1.05}.group-page p{font-family:var(--body);font-size:clamp(13px,.98vw,16px);line-height:1.62;color:#e3dbd5}.group-page .eyebrow{font:600 clamp(14px,1.15vw,18px)/1.15 var(--heading);letter-spacing:1.8px;color:#f04416;margin:0 0 19px}.group-page em{font-style:normal;color:#f04416}.group-page .button{font:600 16px var(--heading);letter-spacing:.2px;display:inline-flex;align-items:center;gap:14px;padding:15px 20px;min-height:52px;background:#f04416;color:white}.group-page .button b{font-size:22px;font-weight:500;line-height:.8}.group-page .button-outline{background:transparent;border:1px solid #f04416;color:#f04416}
.group-hero{min-height:650px;height:clamp(620px,51vw,770px);display:flex;background:#070706}.group-hero-photo,.group-hero-shade{position:absolute;inset:0;z-index:-2}.group-hero-photo img,.group-screen-photo img,.group-energy-photo img,.group-goal-cards img,.group-coach-photo img,.group-final-photo img{width:100%;height:100%;object-fit:cover;display:block}.group-hero-photo img{object-position:52% 48%;filter:saturate(1.22) contrast(1.12) brightness(1.05)}.group-hero-shade{z-index:-1;background:linear-gradient(90deg,#070706 0%,rgba(7,7,6,.97) 24%,rgba(7,7,6,.78) 39%,rgba(7,7,6,.22) 58%,rgba(7,7,6,.03) 100%),linear-gradient(0deg,rgba(0,0,0,.78),transparent 27%,transparent 76%,rgba(0,0,0,.14))}.group-hero-copy{width:min(48%,630px);padding:clamp(40px,4.7vw,70px) 0 32px max(4.7vw,38px);display:flex;align-items:flex-start;flex-direction:column}.group-hero-copy h1{max-width:660px}.group-hero-copy>p:not(.eyebrow){max-width:470px;margin:22px 0 24px}.group-hero-copy .button{margin-bottom:25px}.group-hero-features{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:min(660px,70vw);gap:0;margin-top:auto}.group-hero-features>div{display:flex;flex-direction:column;align-items:flex-start;padding:0 17px;border-right:1px solid rgba(240,68,22,.4)}.group-hero-features>div:first-child{padding-left:0}.group-hero-features>div:last-child{border:0}.group-icon{font-size:32px;line-height:1;color:#f04416;margin-bottom:12px}.group-hero-features b{font:700 14px/1.18 var(--heading);color:#f4eee8;margin-bottom:8px}.group-hero-features small{font:400 12px/1.45 var(--body);color:#d7cec7}.group-hero-tag{position:absolute;right:3.5%;bottom:32px;font:600 13px var(--heading);letter-spacing:1px;color:#f7eee8;text-shadow:0 2px 8px #000}
.group-screen{min-height:610px;display:grid;grid-template-columns:.84fr 1.16fr;background:#080807}.group-screen-copy{padding:clamp(45px,5vw,75px) clamp(28px,4vw,60px) 42px max(4.7vw,38px);align-self:center}.group-screen-copy h2{margin-bottom:24px}.group-screen-copy p{max-width:430px}.group-rule{width:42px;height:3px;background:#f04416;margin:30px 0 20px}.group-signoff{font:500 17px var(--heading);letter-spacing:1px}.group-screen-photo{min-height:610px;overflow:hidden;position:relative}.group-screen-photo img{object-position:43% 50%;filter:saturate(1.18) contrast(1.1) brightness(1.06)}.group-screen-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.15),transparent 24%),linear-gradient(0deg,rgba(0,0,0,.1),transparent 40%)}
.group-energy{min-height:650px;display:flex;align-items:flex-start;padding:clamp(40px,4.7vw,70px) max(4.5vw,35px);background:#080807}.group-energy-photo,.group-energy-shade{position:absolute;inset:0;z-index:-2}.group-energy-photo img{object-position:50% 45%;filter:saturate(1.2) contrast(1.12) brightness(.95)}.group-energy-shade{z-index:-1;background:linear-gradient(90deg,#080807 0%,rgba(8,8,7,.98) 27%,rgba(8,8,7,.77) 43%,rgba(8,8,7,.16) 72%,rgba(8,8,7,.1)),linear-gradient(0deg,rgba(0,0,0,.78) 0%,transparent 43%)}.group-energy-copy{width:44%;max-width:600px}.group-energy-copy h2{margin-bottom:24px}.group-energy-copy>p{max-width:460px}.group-energy-copy .button{margin-top:12px}.group-energy-mantra{margin-top:55px;font:600 16px/1.55 var(--heading);letter-spacing:1px;color:#bcb2aa}.group-energy-cards{position:absolute;right:3%;bottom:42px;width:63%;display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.group-energy-cards article{display:flex;gap:13px;align-items:flex-start;padding:20px 16px;background:rgba(7,7,6,.92);border:1px solid rgba(240,68,22,.72);border-radius:4px;min-height:140px}.group-energy-cards article>span{font-size:31px;color:#f04416;line-height:1}.group-energy-cards h3{font-size:clamp(15px,1.25vw,20px);margin:3px 0 10px}.group-energy-cards p{font-size:13px;margin:0}
.group-goals{padding:clamp(42px,4.8vw,70px) max(3.4vw,28px) 26px;display:grid;grid-template-columns:.83fr 1.7fr;column-gap:4%;background:radial-gradient(ellipse at 0 55%,rgba(240,68,22,.16),transparent 35%),#080807}.group-goals-copy{align-self:start;padding-top:35px}.group-goals-copy h2{margin-bottom:22px}.group-goals-copy>p:last-child{max-width:380px}.group-goal-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.group-goal-cards article{border:1px solid rgba(240,68,22,.65);border-radius:5px;overflow:hidden;background:#090908;min-width:0}.group-goal-cards article>img{height:clamp(180px,20vw,280px);object-position:center;filter:saturate(1.2) contrast(1.08) brightness(1.04)}.group-goal-cards article>div{padding:18px 16px 22px}.group-goal-cards article span{font-size:29px;color:#f04416}.group-goal-cards h3{font-size:clamp(17px,1.5vw,23px);margin:9px 0 12px}.group-goal-cards i{display:block;width:30px;height:4px;background:#f04416;margin-bottom:15px}.group-goal-cards p{margin:0}.group-reassurance{grid-column:1/-1;display:flex;align-items:center;justify-content:center;gap:22px;border:1px solid rgba(240,68,22,.45);border-radius:5px;margin-top:22px;padding:20px}.group-reassurance span{font-size:34px;color:#f04416}.group-reassurance p{margin:0;font-size:15px}
.group-timetable{display:grid;grid-template-columns:.7fr 1.3fr;gap:4%;align-items:center;padding:clamp(42px,4.8vw,70px) max(4vw,30px);background:linear-gradient(90deg,rgba(0,0,0,.9),rgba(0,0,0,.65)),url('images/group-room.webp') center/cover no-repeat}.group-timetable-copy h2{margin-bottom:22px}.group-timetable-copy>p:last-child{max-width:420px}.timetable-shell{background:rgba(5,7,7,.97);border:1px solid rgba(240,68,22,.28);border-radius:7px;padding:18px 18px 14px;box-shadow:0 20px 60px rgba(0,0,0,.45);min-width:0}.timetable-title{display:flex;align-items:center;gap:12px;margin-bottom:18px}.timetable-title>span{font-size:30px;color:#f04416}.timetable-title h3{font-size:clamp(17px,1.55vw,24px);white-space:nowrap}.timetable-month{display:flex;align-items:center;gap:12px;margin-left:auto;white-space:nowrap}.timetable-month b{font:500 14px var(--heading);letter-spacing:.8px}.timetable-month button{background:none;border:0;color:#e8e0da;font-size:23px;opacity:.8;padding:0 4px}.timetable-scroll{overflow-x:auto}.group-schedule{width:100%;border-collapse:collapse;font:500 clamp(10px,.85vw,13px)/1.25 var(--heading);text-align:center;min-width:590px}.group-schedule th,.group-schedule td{border:1px solid rgba(255,255,255,.09);padding:13px 7px}.group-schedule thead th{background:#151819;color:#e8e5e1;font-size:12px}.group-schedule tbody th{font-weight:500;color:#e4ddd7;white-space:nowrap;background:rgba(255,255,255,.025)}.group-schedule td{color:#c6c2be}.group-schedule .strength{color:#91b98c}.group-schedule .yoga{color:#8bc2a0}.group-schedule .hiit{color:#68c4df}.group-schedule .functional{color:#ef7867}.group-schedule .zumba{color:#f5b85a}.group-schedule .pilates{color:#73b8d5}.group-schedule .core{color:#e5c86b}.timetable-note{display:flex;align-items:center;gap:10px;border:1px solid rgba(255,255,255,.1);padding:12px;margin:14px 0 0;font-size:12px!important}.timetable-note b{font-size:22px;color:#eee}
.group-coach{min-height:580px;display:flex;align-items:center}.group-coach-photo,.group-coach-shade{position:absolute;inset:0;z-index:-2}.group-coach-photo img{object-position:52% 48%;filter:saturate(1.22) contrast(1.12) brightness(1.04)}.group-coach-shade{z-index:-1;background:linear-gradient(90deg,rgba(0,0,0,.96) 0%,rgba(0,0,0,.8) 27%,rgba(0,0,0,.2) 55%,rgba(0,0,0,.02) 100%),linear-gradient(0deg,rgba(0,0,0,.15),transparent)}.group-coach-copy{padding:clamp(48px,6vw,88px) 0 clamp(48px,6vw,88px) max(4.7vw,38px);width:min(47%,600px)}.group-coach-copy h2{margin-bottom:12px}.group-coach-copy .group-rule{margin:20px 0}.group-coach-copy p:not(.eyebrow){max-width:430px}
.group-faq{display:grid;grid-template-columns:.72fr 1.55fr .65fr;gap:22px;padding:clamp(42px,4.8vw,70px) max(4.3vw,30px);align-items:start;background:#080807}.group-faq-intro h2{margin-bottom:22px}.group-faq-intro>p:not(.eyebrow){max-width:300px}.group-faq-intro .button{margin-top:20px}.group-faq-list details{background:#111211;border-bottom:1px solid #050505;margin-bottom:4px}.group-faq-list summary{position:relative;list-style:none;padding:15px 16px 15px 48px;font:500 clamp(14px,1.1vw,17px)/1.25 var(--heading);cursor:pointer;color:#f0eae5}.group-faq-list summary::-webkit-details-marker{display:none}.group-faq-list summary:before{content:'+';position:absolute;left:16px;top:10px;font:400 27px var(--body);color:#f04416}.group-faq-list details[open] summary:before{content:'−'}.group-faq-list details p{padding:0 18px 15px 48px;margin:0;font-size:13px}.group-testimonial{padding:24px 20px 28px;border:1px solid rgba(240,68,22,.28);background:linear-gradient(140deg,rgba(240,68,22,.1),rgba(255,255,255,.015));min-height:100%}.group-testimonial>span{font:700 54px/1 Georgia;color:#f04416}.group-testimonial blockquote{font:400 clamp(17px,1.4vw,22px)/1.45 var(--heading);margin:0 0 25px;color:#f3ece6}.group-testimonial>b,.group-testimonial>small{display:block;font:600 13px var(--heading);letter-spacing:.5px}.group-testimonial>small{margin-top:5px;color:#bdb3ab}
.group-final{min-height:640px;display:flex;align-items:center}.group-final-photo,.group-final-shade{position:absolute;inset:0;z-index:-2}.group-final-photo img{object-position:55% 50%;filter:saturate(1.2) contrast(1.12) brightness(1.05)}.group-final-shade{z-index:-1;background:linear-gradient(90deg,#070706 0%,rgba(7,7,6,.97) 25%,rgba(7,7,6,.76) 42%,rgba(7,7,6,.14) 65%,rgba(7,7,6,.03) 100%),linear-gradient(0deg,rgba(0,0,0,.42),transparent 35%)}.group-final-copy{padding:clamp(48px,5vw,75px) 0 38px max(4.7vw,38px);width:min(48%,620px)}.group-final-copy h2{font-size:clamp(40px,4.4vw,68px);margin-bottom:20px}.group-final-copy>p:not(.eyebrow){max-width:450px;font-size:clamp(15px,1.2vw,18px)}.group-final-copy .button{margin:10px 0 36px}.group-final-meta{display:flex;gap:22px;align-items:center}.group-final-meta span{display:flex;gap:10px;align-items:center;border-right:1px solid rgba(240,68,22,.6);padding-right:18px;color:#f04416;font-size:25px}.group-final-meta span:last-child{border:0}.group-final-meta small{font:500 12px/1.45 var(--heading);letter-spacing:.4px;color:#f1e8e1}
@media(max-width:900px){.group-hero{height:auto;min-height:760px}.group-hero-photo{inset:0}.group-hero-photo img{object-position:58% center}.group-hero-shade{background:linear-gradient(90deg,rgba(0,0,0,.92),rgba(0,0,0,.45)),linear-gradient(0deg,#070706 0%,rgba(7,7,6,.6) 32%,transparent 70%)}.group-hero-copy{width:75%;min-height:760px;padding:48px 28px 32px}.group-hero-features{width:100%}.group-hero-tag{display:none}.group-screen{grid-template-columns:1fr}.group-screen-copy{padding:48px 30px}.group-screen-photo{min-height:430px;height:55vw}.group-energy{min-height:820px;padding:48px 30px}.group-energy-copy{width:70%}.group-energy-cards{width:calc(100% - 60px);right:30px;bottom:28px}.group-goals{grid-template-columns:1fr;gap:28px;padding:48px 30px 24px}.group-goals-copy{padding-top:0}.group-goal-cards article>img{height:260px}.group-timetable{grid-template-columns:1fr;gap:25px;padding:48px 30px}.group-coach{min-height:560px}.group-coach-copy{width:65%;padding:55px 0 55px 30px}.group-faq{grid-template-columns:1fr 1.5fr; padding:48px 30px}.group-testimonial{grid-column:1/-1;min-height:0}.group-testimonial blockquote{max-width:700px}.group-final{min-height:610px}.group-final-copy{width:65%;padding-left:30px}}
@media(max-width:600px){.group-page h1{font-size:clamp(39px,10.5vw,54px)}.group-page h2{font-size:clamp(32px,8.6vw,43px)}.group-hero{min-height:780px}.group-hero-copy{width:100%;min-height:780px;padding:40px 22px 25px}.group-hero-shade{background:linear-gradient(90deg,rgba(0,0,0,.92),rgba(0,0,0,.56)),linear-gradient(0deg,#070706 0%,rgba(7,7,6,.5) 38%,transparent 75%)}.group-hero-copy>p:not(.eyebrow){font-size:14px}.group-hero-features{grid-template-columns:repeat(3,minmax(0,1fr));gap:0}.group-hero-features>div{padding:0 9px}.group-hero-features b{font-size:12px}.group-hero-features small{font-size:10px}.group-icon{font-size:26px}.group-screen-copy{padding:42px 22px}.group-screen-photo{min-height:320px;height:80vw}.group-energy{min-height:1010px;padding:42px 22px}.group-energy-copy{width:100%}.group-energy-shade{background:linear-gradient(90deg,rgba(0,0,0,.94),rgba(0,0,0,.52)),linear-gradient(0deg,#080807 0%,rgba(0,0,0,.75) 36%,transparent 80%)}.group-energy-mantra{margin-top:30px}.group-energy-cards{left:22px;right:22px;bottom:22px;width:auto;grid-template-columns:1fr;gap:8px}.group-energy-cards article{min-height:0;padding:13px 14px}.group-energy-cards h3{margin:1px 0 5px}.group-energy-cards p{font-size:12px}.group-goals{padding:42px 22px 22px}.group-goal-cards{grid-template-columns:1fr;gap:13px}.group-goal-cards article{display:grid;grid-template-columns:.88fr 1fr;min-height:220px}.group-goal-cards article>img{height:100%;min-height:220px}.group-goal-cards article>div{padding:15px 13px}.group-goal-cards h3{font-size:20px}.group-goal-cards p{font-size:13px}.group-reassurance{padding:15px;gap:12px}.group-reassurance p{font-size:13px}.group-timetable{padding:42px 16px;gap:20px}.timetable-shell{padding:12px 10px}.timetable-title{flex-wrap:wrap}.timetable-title h3{font-size:17px}.timetable-month{width:100%;justify-content:flex-end}.group-schedule{min-width:590px}.group-coach{min-height:620px;align-items:flex-start}.group-coach-photo img{object-position:62% center}.group-coach-shade{background:linear-gradient(90deg,rgba(0,0,0,.92),rgba(0,0,0,.45)),linear-gradient(0deg,rgba(0,0,0,.65),transparent)}.group-coach-copy{width:100%;padding:42px 22px}.group-faq{grid-template-columns:1fr;padding:42px 22px;gap:22px}.group-faq-intro .button{margin-top:8px}.group-testimonial{grid-column:auto}.group-final{min-height:680px;align-items:flex-start}.group-final-photo img{object-position:60% center}.group-final-shade{background:linear-gradient(90deg,rgba(0,0,0,.92),rgba(0,0,0,.45)),linear-gradient(0deg,#070706 0%,rgba(0,0,0,.58) 38%,transparent 80%)}.group-final-copy{width:100%;padding:42px 22px 28px}.group-final-copy h2{font-size:clamp(39px,10vw,54px)}.group-final-meta{gap:10px;flex-wrap:wrap}.group-final-meta span{padding-right:10px;gap:7px}.group-final-meta small{font-size:10px}}

/* Keep timetable photography clean and let the reference's short headings hold their intended lines. */
.group-timetable{background-image:linear-gradient(90deg,rgba(0,0,0,.9),rgba(0,0,0,.65)),url('images/about-community.webp');background-position:center;background-size:cover;}
.group-goals-copy h2{font-size:clamp(31px,2.85vw,40px);line-height:1.04;}
.group-timetable-copy h2{font-size:clamp(30px,3.05vw,42px);line-height:1.04;}
.group-energy-copy h2{font-size:clamp(34px,3vw,40px);}
.group-goals-copy h2{font-size:clamp(30px,2.7vw,36px);}
.group-timetable-copy h2{font-size:clamp(30px,2.75vw,36px);}
.group-faq-intro h2{font-size:clamp(30px,2.75vw,36px);}
.group-final-copy h2{font-size:clamp(38px,3.7vw,48px);}
@media(max-width:600px){.group-goals-copy h2,.group-timetable-copy h2{font-size:clamp(30px,8vw,38px)}}



/* Desktop proportions follow the supplied eight-panel reference at 16:9 browser sizes. */
@media(min-width:901px){
 .group-hero{height:clamp(540px,43vw,650px);min-height:540px}
 .group-screen{min-height:410px;height:clamp(380px,33vw,470px)}
 .group-screen-photo{min-height:100%;height:100%}
 .group-screen-copy{padding-top:32px;padding-bottom:30px}
 .group-screen-copy h2{font-size:clamp(31px,3.1vw,44px);margin-bottom:15px}
 .group-screen-copy p{font-size:clamp(13px,.92vw,15px);line-height:1.48;margin:12px 0}
 .group-energy{min-height:470px;height:clamp(440px,38vw,520px);padding-top:42px}
 .group-energy-copy h2{font-size:clamp(33px,3.1vw,44px);margin-bottom:15px}
 .group-energy-copy>p{font-size:14px;line-height:1.48;margin:10px 0}
 .group-energy-cards{bottom:28px}
 .group-energy-cards article{min-height:112px;padding:15px 12px}
 .group-goals{min-height:450px;padding-top:35px;padding-bottom:22px}
 .group-goals-copy{padding-top:0}
 .group-goals-copy h2{font-size:clamp(31px,3vw,42px)}
 .group-goal-cards article>img{height:clamp(180px,19vw,245px)}
 .group-goal-cards article>div{padding:12px 14px 16px}
 .group-goal-cards h3{margin:5px 0 8px;font-size:19px}
 .group-goal-cards p{font-size:14px;line-height:1.42}
 .group-reassurance{margin-top:14px;padding:10px 18px}
 .group-timetable{min-height:410px;padding-top:30px;padding-bottom:30px}
 .group-timetable-copy h2{font-size:clamp(32px,3vw,44px);margin-bottom:14px}
 .group-timetable-copy>p:last-child{font-size:15px;line-height:1.52}
 .timetable-shell{padding:12px 14px 10px}
 .timetable-title{margin-bottom:10px}
 .group-schedule th,.group-schedule td{padding:8px 5px}
 .timetable-note{padding:8px;margin-top:9px}
 .group-coach{min-height:390px;height:clamp(360px,32vw,440px)}
 .group-coach-copy{padding-top:35px;padding-bottom:35px}
 .group-coach-copy h2{font-size:clamp(35px,3.3vw,46px)}
 .group-coach-copy p:not(.eyebrow){font-size:15px;line-height:1.5;margin:10px 0}
 .group-coach-copy .group-rule{margin:14px 0}
 .group-faq{min-height:320px;padding-top:25px;padding-bottom:25px;gap:18px}
 .group-faq-intro h2{font-size:clamp(32px,3vw,42px);margin-bottom:13px}
 .group-faq-intro>p:not(.eyebrow){font-size:14px;line-height:1.45}
 .group-faq-list summary{padding-top:10px;padding-bottom:10px;font-size:14px}
 .group-faq-list summary:before{top:5px}
 .group-testimonial{padding:16px 16px 18px}
 .group-testimonial blockquote{font-size:17px;line-height:1.35;margin-bottom:15px}
 .group-final{min-height:390px;height:clamp(360px,31vw,440px)}
 .group-final-copy{padding-top:32px;padding-bottom:28px}
 .group-final-copy h2{font-size:clamp(40px,4vw,55px);margin-bottom:12px}
 .group-final-copy>p:not(.eyebrow){font-size:15px}
 .group-final-copy .button{margin:7px 0 20px}
}
@media(min-width:901px){
 .group-timetable{background-image:linear-gradient(90deg,rgba(0,0,0,.9),rgba(0,0,0,.65)),url('images/group-ref-energy.png')}
 .group-hero-photo img{filter:saturate(1.12) contrast(1.06) brightness(1.23)}
}
