.group-classes{padding:105px 6vw;background:#111214;color:#fff}.group-class-head{max-width:1300px;margin:0 auto 42px;display:flex;justify-content:space-between;align-items:end;gap:45px}.group-class-head h2{font:600 clamp(38px,4.5vw,66px)/1.03 Oswald,sans-serif;text-transform:uppercase;margin:0;max-width:850px}.group-class-head>p{max-width:410px;color:#aaa;margin:0}.class-grid{max-width:1300px;margin:auto;display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.class-grid article{min-height:315px;padding:28px 24px;background:#191a1d;border:1px solid #ffffff17;display:flex;flex-direction:column;transition:.2s}.class-grid article:hover{border-color:#ff5d21;transform:translateY(-4px)}.class-grid article>span{color:#ff742b;font-size:11px;letter-spacing:.13em;text-transform:uppercase;font-weight:800}.class-grid h3{font:600 28px/1.08 Oswald,sans-serif;text-transform:uppercase;margin:28px 0 12px}.class-grid p{color:#b8b8b8;font-size:14px}.class-grid small{margin-top:auto;color:#fff;font-weight:700;border-top:1px solid #ffffff1c;padding-top:14px}.group-booking-bar{max-width:1300px;margin:18px auto 0;background:#f5f3ee;color:#111;padding:24px;display:flex;align-items:center;justify-content:space-between;gap:25px}.group-booking-bar strong,.group-booking-bar span{display:block}.group-booking-bar strong{font:600 22px Oswald,sans-serif;text-transform:uppercase}.group-booking-bar span{color:#666;font-size:13px;margin-top:3px}.consultation-choices{max-width:1000px;margin:38px auto 25px;display:grid;grid-template-columns:1fr 1fr;gap:16px;text-align:left;align-items:stretch}.consultation-choices article{background:#fff;color:#111;padding:30px;border:1px solid #ffffff7a;box-shadow:0 15px 45px #8d2c1630;display:flex;flex-direction:column;height:100%}.consultation-choices h3{font:600 34px Oswald,sans-serif;text-transform:uppercase;margin:10px 0}.consultation-choices p{color:#555;margin:0 0 18px}.consultation-choices ul{padding:0;list-style:none;margin:0 0 24px}.consultation-choices li{padding:5px 0;font-weight:700}.consultation-choices li:before{content:'✓';color:#ff4b0b;margin-right:9px}.choice-icon{font-size:28px;color:#ff4b0b}.consultation-choices .button{width:100%;background:#111;color:#fff;box-shadow:none;margin-top:auto}.client-booking{max-width:1000px;margin:0 auto 22px;padding:20px 24px;background:#171717;color:#fff;display:flex;align-items:center;justify-content:space-between;gap:25px;text-align:left}.client-booking strong,.client-booking span{display:block}.client-booking strong{font:600 20px Oswald,sans-serif;text-transform:uppercase}.client-booking span{color:#bbb;font-size:13px}.client-booking>a{color:#ff7a32;font-weight:800;white-space:nowrap}.booking .booking-note{font-size:12px;max-width:900px;opacity:.8}.booking .consultation-choices p{margin-left:0;margin-right:0}.booking .client-booking span{margin:2px 0 0}
@media(max-width:980px){.class-grid{grid-template-columns:1fr 1fr}.group-class-head{display:block}.group-class-head>p{margin-top:18px}.class-grid article{min-height:270px}}
@media(max-width:650px){.group-classes{padding:72px 20px}.class-grid,.consultation-choices{grid-template-columns:1fr}.class-grid article{min-height:0}.group-booking-bar,.client-booking{align-items:stretch;flex-direction:column}.group-booking-bar .button{width:100%}.consultation-choices article{padding:24px 20px}.client-booking>a{white-space:normal}.booking{padding-left:16px;padding-right:16px}}
.group-class-trigger{width:100%;min-height:50px;margin-top:auto;border:1px solid transparent;cursor:pointer;font:800 15px/1.45 Inter,system-ui,sans-serif;text-align:center;white-space:normal}
.group-class-trigger:hover{border-color:#b53206;filter:brightness(1.06)}
.group-dialog{width:min(1240px,calc(100% - 32px));max-height:calc(100vh - 32px);max-height:calc(100svh - 32px);padding:0;border:1px solid #ffffff30;border-radius:16px;background:#111214;color:#fff;box-shadow:0 24px 90px #000b;overflow:auto;overscroll-behavior:contain}
.group-dialog::backdrop{background:#000c;backdrop-filter:blur(6px)}
.group-dialog-toolbar{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 28px;background:#111214f5;border-bottom:1px solid #ffffff15}
.group-dialog-toolbar .eyebrow{margin:0}
.group-dialog .group-classes{padding:30px 28px}
.group-dialog .group-class-head{align-items:start;gap:24px;margin-bottom:28px}
.group-dialog .group-class-head>div{flex:1;min-width:0}
.group-dialog .group-class-head h2{font-size:clamp(32px,4.2vw,54px);overflow-wrap:anywhere}
.group-dialog .group-class-head>p{flex:0 1 330px;font-size:15px}
.group-dialog .class-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.group-dialog .class-grid article{min-width:0;padding:22px 18px;min-height:310px}
.group-dialog .class-grid h3{font-size:26px;overflow-wrap:anywhere}
.group-dialog .class-grid p{font-size:15px}
.group-dialog .class-grid small{font-size:13px}
@media(max-width:980px){.group-dialog .class-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.group-dialog .class-grid article{min-height:260px}.group-dialog .group-class-head>p{max-width:none}}
@media(max-width:650px){.group-dialog{width:calc(100% - 20px);max-height:calc(100svh - 20px);border-radius:12px}.group-dialog-toolbar{padding:12px 16px}.group-dialog .group-classes{padding:24px 16px}.group-dialog .class-grid{grid-template-columns:minmax(0,1fr)}.group-dialog .class-grid article{min-height:0}.group-dialog .class-grid h3{margin:20px 0 12px}.group-dialog .group-booking-bar{padding:20px 16px}.group-dialog .group-booking-bar .button{white-space:normal;text-align:center}}
