/* Isolated review pages: never loaded by public pages. */
.preview-page .review-notice{margin:0;padding:12px 18px;background:#1b220d;border-bottom:1px solid #384417;text-align:center;color:#dfff60;font-size:14px;line-height:1.5}
.preview-page .flyer-nav{position:static;height:auto;min-height:76px;gap:16px;flex-wrap:wrap;padding-top:8px;padding-bottom:8px;overflow:visible}
.preview-page .flyer-nav nav a{font-size:14px;min-height:44px;display:flex;align-items:center}
.preview-page .flyer-shell{max-width:1200px;padding:36px 20px}
.preview-page .flyer-title p{font-size:16px;line-height:1.5}
.preview-page .flyer-title>span{font-size:12px}
.preview-page .plan-section{max-width:960px;margin:30px auto}
.preview-page .plan-section h2{font:600 24px "Space Grotesk",sans-serif;margin:0 0 16px}
.preview-page .flyer-plans{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;align-items:stretch}
.preview-page .flyer-plans.pairs{grid-template-columns:repeat(2,minmax(0,1fr));max-width:636px;margin:auto}
.preview-page .flyer-plans .plan{width:auto;min-height:0;padding:22px;grid-column:auto;grid-row:auto}
.preview-page .flyer-plans .plan h3{font-size:26px;margin:14px 0 10px}
.preview-page .flyer-plans .plan>p{font-size:14px;line-height:1.5;min-height:84px;margin:0 0 20px;color:#b5b5b5}
.preview-page .flyer-plans .plan.featured>p{color:#354017}
.preview-page .flyer-plans .plan-badge{font-size:12px}
.preview-page .flyer-plans .prices>div{gap:10px;padding:14px 0;flex-wrap:wrap}
.preview-page .flyer-plans .prices span{font-size:12px}
.preview-page .flyer-plans .prices strong{font-size:23px;white-space:nowrap}
.preview-page .flyer-plans .prices small{font-size:12px;color:#aaa}
.preview-page .flyer-plans .featured .prices small{color:#495529}
.preview-page .review-plan-label{display:block;text-align:center;border:1px solid #555;border-radius:30px;padding:12px;margin-top:auto;font-size:13px;color:#ccc}
.preview-page .featured .review-plan-label{color:#172000;border-color:#93aa35}
.preview-page .prices{margin-bottom:20px}
.preview-page .flyer-note{font-size:14px;line-height:1.6;color:#aaa}
.preview-page .enrollment-card small{font-size:14px;line-height:1.5;display:block;margin-top:8px;color:#bbb}

.preview-page .flyer-filters button{font:600 14px "DM Sans",sans-serif;padding:10px 16px;min-height:44px;cursor:pointer}
.preview-page .flyer-schedule{grid-template-columns:repeat(7,minmax(0,1fr));gap:10px}
.preview-page .flyer-schedule .day{padding:14px 10px;min-width:0;grid-column:auto;background:#131313;border:1px solid #292929;border-radius:12px}
.preview-page .flyer-schedule .day h3{font-size:18px;margin:0 0 14px}
.preview-page .flyer-schedule .class-row{display:flex;flex-direction:column;align-items:stretch;gap:7px;padding:12px 0;border-bottom:1px solid #303030}
.preview-page .flyer-schedule time{font-size:15px;font-weight:600}
.preview-page .class-options{display:flex;flex-direction:column;align-items:stretch;gap:5px}
.preview-page .flyer-schedule .class-type{font-size:12px;padding:7px 5px;line-height:1.3;white-space:normal;overflow-wrap:break-word;border-radius:6px;text-align:center;font-weight:700;color:#080808}
.preview-page .class-plus{font-size:13px;text-align:center;color:#bbb}
.preview-page .class-type.crossfit{background:#dfff00}
.preview-page .class-type.hyrox{background:#00c8ff}
.preview-page .class-type.cardio{background:#ff8a00}
.preview-page .agenda-preview-shell .class-type.cardio{white-space:normal;text-align:center}
.preview-page .class-type.ginasticos{background:#cf7cff}
.preview-page .class-type.senior{background:#00e6a7}
.preview-page [hidden]{display:none!important}
.preview-page #filter-status{min-height:24px}
@media(max-width:1000px){.preview-page .flyer-schedule{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:760px){.preview-page .flyer-plans{grid-template-columns:1fr}.preview-page .flyer-plans.pairs{grid-template-columns:1fr}.preview-page .flyer-plans .plan>p{min-height:0}.preview-page .flyer-schedule{grid-template-columns:repeat(2,minmax(0,1fr))}.preview-page .flyer-shell{padding:28px 16px}.preview-page .flyer-title h1{font-size:52px}.preview-page .flyer-nav>a img{width:120px;transform:none}}
@media(max-width:420px){.preview-page .flyer-nav{justify-content:center}.preview-page .flyer-nav nav{width:100%;justify-content:center}.preview-page .flyer-nav nav a{padding:10px 12px}.preview-page .flyer-schedule{grid-template-columns:1fr}.preview-page .flyer-schedule .class-row{flex-direction:row;align-items:center;justify-content:space-between;gap:12px}.preview-page .class-options{min-width:145px}.preview-page .flyer-schedule .day{padding:18px}}

/* Compact review layout, aligned with the public HOM flyer. */
.preview-page .review-notice{padding:6px 14px;font-size:12px;line-height:1.4}
.preview-page .flyer-nav{min-height:64px;padding-top:0;padding-bottom:0}
.preview-page .flyer-nav nav a{font-size:12px;min-height:36px;padding:8px 12px}
.preview-page .flyer-shell{padding-top:24px;padding-bottom:20px}
.preview-page .flyer-title{margin-bottom:18px}
.preview-page .flyer-title h1{font-size:58px;margin:10px 0}
.preview-page .flyer-title p{font-size:14px;line-height:1.4}
.preview-page .flyer-title>span{font-size:10px}
.preview-page .flyer-note{font-size:12px;line-height:1.4;margin:10px 0}

.preview-page .plan-section{margin:22px auto}
.preview-page .plan-section h2{font-size:20px;margin-bottom:10px}
.preview-page .flyer-plans.pairs{max-width:510px;gap:10px}
.preview-page .pairs .plan{padding:16px;border-radius:14px}
.preview-page .pairs .plan h3{font-size:21px;margin:8px 0 6px}
.preview-page .pairs .plan>p{font-size:12px;line-height:1.4;min-height:51px;margin-bottom:12px}
.preview-page .pairs .plan-badge{font-size:10px;padding:5px 8px}
.preview-page .pairs .prices{margin-bottom:12px}
.preview-page .pairs .prices>div{padding:8px 0;gap:6px}
.preview-page .pairs .prices span{font-size:10px}
.preview-page .pairs .prices strong{font-size:18px}
.preview-page .pairs .prices small{font-size:10px}
.preview-page .pairs .review-plan-label{font-size:11px;padding:8px}
.preview-page .agenda-preview-shell{width:min(100%,1540px);max-width:1540px;padding-left:18px;padding-right:18px}
.preview-page .flyer-filters{gap:6px;margin-bottom:8px}
.preview-page .flyer-filters button{font-size:12px;min-height:34px;padding:7px 14px}
.preview-page #filter-status{min-height:17px;margin:7px 0 12px}
.preview-page .flyer-schedule{grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}
.preview-page .flyer-schedule .day{padding:12px 10px;border-radius:13px}
.preview-page .flyer-schedule .day h3{font-size:17px;margin:0 0 8px}
.preview-page .flyer-schedule .class-row{flex-direction:column;align-items:stretch;gap:4px;padding:7px 0}
.preview-page .flyer-schedule time{font-size:12px;line-height:1.3;flex-shrink:0}
.preview-page .class-options{flex-direction:row;justify-content:flex-end;align-items:center;gap:4px;min-width:0;flex-wrap:wrap}
.preview-page .flyer-schedule .class-type{font-size:10px;line-height:1.2;padding:5px 6px;border-radius:6px;white-space:nowrap;overflow-wrap:normal}
.preview-page .class-plus{font-size:11px;line-height:1}
@media(min-width:1440px){.preview-page .flyer-schedule .class-row{flex-direction:row;align-items:center;justify-content:space-between;gap:4px;min-height:42px}.preview-page .class-options{flex-wrap:nowrap}}
@media(max-width:999px){.preview-page .flyer-schedule{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:760px){.preview-page .flyer-plans.pairs{grid-template-columns:repeat(2,minmax(0,1fr))}.preview-page .pairs .plan{padding:13px}.preview-page .pairs .plan h3{font-size:19px}.preview-page .pairs .plan>p{min-height:68px}.preview-page .flyer-title h1{font-size:46px}}
@media(max-width:639px){.preview-page .flyer-schedule{grid-template-columns:repeat(2,minmax(0,1fr))}.preview-page .agenda-preview-shell{padding:18px 10px}.preview-page .flyer-schedule .day{padding:12px}.preview-page .flyer-schedule .class-type{font-size:11px}.preview-page .flyer-nav{gap:0}.preview-page .flyer-nav nav a{min-height:36px}.preview-page .flyer-title{margin-bottom:14px}}
@media(max-width:359px){.preview-page .flyer-plans.pairs{grid-template-columns:1fr}.preview-page .pairs .plan>p{min-height:0}.preview-page .flyer-schedule .day{padding:10px 7px}.preview-page .flyer-schedule .class-type{font-size:10px;padding:5px 4px}}
@media(pointer:coarse){.preview-page .flyer-filters button{min-height:44px}}

/* Side-by-side modality plans and original public agenda proportions. */
.preview-page .frequency-section{max-width:1060px}
.preview-page .flyer-plans.frequency-grid{max-width:none;grid-template-columns:repeat(4,minmax(0,1fr))}
.preview-page .flyer-plans.other-grid{max-width:790px;grid-template-columns:repeat(3,minmax(0,1fr))}
.preview-page .pairs .modality-crossfit{background:#19200e;border-color:#61782c}
.preview-page .pairs .modality-crossfit .plan-badge{background:#dfff00;color:#111}
.preview-page .pairs .modality-hyrox{background:#0c2028;border-color:#236e87}
.preview-page .pairs .modality-hyrox .plan-badge{background:#00c8ff;color:#07151b}
.preview-page .pairs .modality-crossfit .prices,.preview-page .pairs .modality-crossfit .prices>div{border-color:#3b4824}
.preview-page .pairs .modality-hyrox .prices,.preview-page .pairs .modality-hyrox .prices>div{border-color:#224754}
.preview-page .other-grid .enrollment-card{background:#151515;border:1px solid #292929;border-radius:14px;padding:16px;display:flex;flex-direction:column;gap:12px;min-width:0}
.preview-page .other-grid .enrollment-card>span{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:#aaa}
.preview-page .other-grid .enrollment-card>strong{font:600 28px "Space Grotesk",sans-serif}
.preview-page .other-grid .enrollment-card>small{font-size:12px;line-height:1.5;color:#bbb;margin-top:0}
.preview-page .agenda-preview-shell{width:min(100%,1180px);max-width:1180px}
.preview-page .agenda-preview-shell .flyer-schedule{gap:7px}
.preview-page .agenda-preview-shell .day{padding:12px;border-radius:12px}
.preview-page .agenda-preview-shell .day h3{font-size:15px;margin-bottom:8px}
.preview-page .agenda-preview-shell .class-row{flex-direction:row;align-items:center;justify-content:space-between;gap:5px;padding:7px 0;min-height:0}
.preview-page .agenda-preview-shell time{font-size:10px}
.preview-page .agenda-preview-shell .class-options{gap:3px;flex-wrap:nowrap;min-width:0}
.preview-page .agenda-preview-shell .class-type{font-size:7px;padding:4px 5px}
.preview-page .agenda-preview-shell .class-plus{font-size:8px}
.preview-page .agenda-preview-shell .flyer-filters button{font-size:10px;padding:7px 12px;min-height:0}
.preview-page .agenda-preview-shell .flyer-note{font-size:10px;margin:15px 0}
.preview-page .agenda-preview-shell #filter-status{min-height:0;font-size:9px;margin:5px 0 10px}
@media(max-width:1000px) and (min-width:801px){.preview-page .agenda-preview-shell .day{padding:10px 7px}.preview-page .agenda-preview-shell .class-row{gap:3px}.preview-page .agenda-preview-shell .class-type{padding:4px 3px}.preview-page .agenda-preview-shell .class-options{gap:2px}}
@media(min-width:801px){.preview-page .agenda-preview-shell .flyer-schedule{grid-template-columns:repeat(7,minmax(0,1fr))}}
@media(max-width:800px){.preview-page .flyer-plans.frequency-grid{grid-template-columns:repeat(2,minmax(0,1fr));max-width:510px}.preview-page .agenda-preview-shell .flyer-schedule{grid-template-columns:repeat(2,minmax(0,1fr))}.preview-page .agenda-preview-shell .day:last-child{grid-column:span 2}}
@media(max-width:600px){.preview-page .flyer-plans.other-grid{grid-template-columns:repeat(2,minmax(0,1fr));max-width:510px}.preview-page .other-grid .enrollment-card{grid-column:span 2}.preview-page .pairs .plan>p{min-height:0}}
@media(max-width:359px){.preview-page .flyer-plans.frequency-grid,.preview-page .flyer-plans.other-grid{grid-template-columns:1fr}.preview-page .other-grid .enrollment-card{grid-column:auto}}

/* Unlimited cards: approximately 15% less height through vertical spacing. */
.preview-page .unlimited-section .plan{padding:18px 22px}
.preview-page .unlimited-section .plan h3{margin-top:10px;margin-bottom:8px}
.preview-page .unlimited-section .plan>p{min-height:64px;margin-bottom:14px}
.preview-page .unlimited-section .prices>div{padding-top:9px;padding-bottom:9px}
.preview-page .unlimited-section .prices{margin-bottom:14px}
.preview-page .unlimited-section .review-plan-label{padding-top:9px;padding-bottom:9px}
.preview-page .unlimited-section .modality-hyrox{background:#0c2028;border-color:#236e87}
.preview-page .unlimited-section .modality-hyrox .plan-badge{background:#00c8ff;color:#07151b}
.preview-page .unlimited-section .modality-hyrox .prices,.preview-page .unlimited-section .modality-hyrox .prices>div{border-color:#224754}
@media(max-width:760px){.preview-page .unlimited-section .plan>p{min-height:0}}

/* Keep period rows aligned even when descriptions use different line counts. */
.preview-page .flyer-plans .plan .prices{margin-top:auto}
.preview-page .flyer-plans .review-plan-label{margin-top:0}
.preview-page .flyer-plans .prices>div{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;column-gap:8px}
.preview-page .flyer-plans .prices strong{text-align:right;justify-self:end;font-variant-numeric:tabular-nums}
.preview-page .flyer-plans .prices span{white-space:nowrap}
.preview-page .unlimited-section .featured .plan-badge{text-transform:none}
.preview-page .pairs .prices span{font-size:9px;letter-spacing:.03em}
@media(max-width:600px){
 .preview-page .pairs .prices>div{grid-template-columns:minmax(0,1fr) auto;column-gap:4px;row-gap:0;padding:9px 0;align-items:center}
 .preview-page .pairs .prices span{justify-self:start;font-size:9px;letter-spacing:0;line-height:1.3}
 .preview-page .pairs .prices strong{justify-self:end;white-space:nowrap;font-size:14px;line-height:1.3}
 .preview-page .pairs .prices small{font-size:8px}
}

/* Light-gray background experiment, isolated to the two review pages. */
html.hom-light-test{background:#ededed;color-scheme:light}
.hom-light-test .preview-page{background:#ededed;color:#202020}
.preview-page .review-notice{background:#e3ebd8;color:#344319;border-color:#bdc9ad}
.preview-page .flyer-title>span{color:#455612}
.preview-page .flyer-title h1,.preview-page .plan-section h2{color:#202020}
.preview-page .flyer-title p,.preview-page .flyer-note{color:#505050}
.preview-page .flyer-nav{background:#080808;color:#fff}
.preview-page .flyer-plans .plan{color:#fafafa}
.preview-page .flyer-plans .plan.featured{color:#090909}
.preview-page .other-grid .enrollment-card{color:#fafafa}
.preview-page .agenda-preview-shell .day{background:#fff;color:#202020;border-color:#c9c9c9}
.preview-page .agenda-preview-shell .day h3,.preview-page .agenda-preview-shell time{color:#202020}
.preview-page .agenda-preview-shell .class-row{border-color:#dedede}
.preview-page .agenda-preview-shell .class-plus{color:#505050}
.preview-page .agenda-preview-shell .flyer-filters button{background:#fff;color:#333;border-color:#aaa}
.preview-page .agenda-preview-shell .flyer-filters button.active{background:#202020!important;color:#fff!important;border-color:#202020!important;box-shadow:none}
.preview-page .agenda-preview-shell .flyer-filters{display:flex;flex-wrap:nowrap;overflow-x:auto;max-width:100%;justify-content:flex-start;padding:3px 2px 6px;overscroll-behavior-x:contain}
.preview-page .agenda-preview-shell .flyer-filters button{flex:0 0 auto;white-space:nowrap}
.preview-page .agenda-preview-shell .flyer-filters button:first-child{margin-left:auto}
.preview-page .agenda-preview-shell .flyer-filters button:last-child{margin-right:auto}
.preview-page .flyer-cta{background:#151515;color:#fff}
.preview-page .flyer-cta:hover{background:#333;color:#fff}
.preview-page .experience-note{background:#fff;border-color:#c9c9c9;color:#202020}
.preview-page .experience-note strong{color:#455612}
.preview-page .experience-note p{color:#505050}
.preview-page .flyer-footer{background:#e5e5e5;border-color:#c9c9c9;color:#505050}
.preview-page .flyer-footer .waze-link,.preview-page .flyer-footer .legal-copy,.preview-page .flyer-footer>a:last-child{color:#454545}
.preview-page .flyer-footer .pass-notice{color:#455612}

/* New supplied logo and a single compact header row on all screen sizes. */
.preview-page .review-notice{background:#ededed;color:#505050;border:0;padding:4px 12px;font-size:10px}
.preview-page .flyer-nav{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;justify-content:space-between;gap:14px;min-height:78px;height:auto;padding:4px max(4vw,16px);background:#ededed;color:#202020;border-bottom:1px solid #ccc}
.preview-page .flyer-nav .preview-brand{position:relative;display:block;width:178.125px;max-width:100%;aspect-ratio:2.75;overflow:hidden;justify-self:start}
.preview-page .flyer-nav .preview-brand img{position:absolute;display:block;left:-6%;top:-54%;width:112%;max-width:none;height:auto;object-fit:contain;transform:none;mix-blend-mode:multiply}
.preview-page .flyer-nav nav{justify-self:end;width:auto;display:flex;flex-wrap:nowrap;justify-content:flex-end;background:#dedede;padding:3px}
.preview-page .flyer-nav nav a{display:flex;align-items:center;padding:8px 13px;min-height:34px;font-size:12px;color:#454545}
.preview-page .flyer-nav nav a.active{background:#d8ff45;color:#141900}
.preview-page .flyer-shell{padding-top:18px}
@media(max-width:600px){
 .preview-page .flyer-nav{min-height:61px;padding:3px 12px;gap:10px}
 .preview-page .flyer-nav .preview-brand{width:108.75px}
 .preview-page .flyer-nav nav{width:auto;justify-content:flex-end}
 .preview-page .flyer-nav nav a{padding:8px 10px;font-size:11px;min-height:34px}
 .preview-page .flyer-shell{padding-top:14px}
}

/* Keep the enrollment amount prominent with its original neutral card colors. */
.preview-page .flyer-plans.other-grid .enrollment-card>strong{font-size:44px;font-weight:700;line-height:1.1;margin:8px 0}

/* CrossFit Unlimited badge matches the CrossFit frequency badges. */
.preview-page .unlimited-section .plan:not(.featured):not(.modality-hyrox) .plan-badge{background:#dfff00;color:#111}

.preview-page .frequency-heading{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 16px;margin-bottom:16px}
.preview-page .frequency-heading h2{margin:0}
.preview-page .frequency-heading p{margin:0;font-size:13px;line-height:1.4;color:#454545}

/* Prominent pass policy on both review pages. */
.preview-page .agenda-preview-shell .weekend-stack{display:flex;flex-direction:column;gap:7px;align-self:start;min-width:0}
.preview-page .agenda-preview-shell .weekend-stack .day{min-height:0;height:auto;margin:0;flex:none;grid-column:auto}
.preview-page .agenda-preview-shell .weekend-stack:not(:has(.day:not([hidden]))){display:none}
@media(min-width:801px){.preview-page .agenda-preview-shell .flyer-schedule{grid-template-columns:repeat(6,minmax(0,1fr))}}
.preview-page .flyer-footer .pass-notice{display:block;box-sizing:border-box;width:80%;max-width:768px;margin:0 auto 19.2px;padding:14.4px 16px;border:1.6px solid #172000;border-radius:9.6px;background:#dfff00;color:#111;font-size:clamp(11.2px,1.6vw,14.4px);font-weight:800;line-height:1.5;text-align:center}

/* Combined modalities and a single aligned row of frequency/package options. */
.preview-page .flyer-plans .plan-badge.split-badge{display:inline-flex;align-items:stretch;padding:0;background:transparent;color:#111;overflow:hidden;white-space:nowrap;align-self:flex-start}
.preview-page .split-badge>span{display:block;padding:5px 8px;line-height:1.3}
.preview-page .split-badge .badge-crossfit{background:#dfff00}
.preview-page .split-badge .badge-hyrox{background:#00c8ff;color:#07151b}
.preview-page .frequency-grid .badge-spacer{display:block;height:23px}
.preview-page .frequency-grid .plan h3{min-height:50px}
.preview-page .enrollment-notice{display:flex;align-items:center;flex-wrap:wrap;gap:6px 18px;margin:16px 0 0;padding:12px 16px;border:1px solid #c9c9c9;border-radius:10px;background:#e5e5e5;color:#454545;font-size:12px;line-height:1.5}
.preview-page .enrollment-notice p{margin:0}
.preview-page .enrollment-notice strong{font-size:14px;color:#202020;white-space:nowrap}
@media(max-width:600px){.preview-page .split-badge>span{padding:5px 6px}.preview-page .enrollment-notice{display:block}.preview-page .enrollment-notice p+p{margin-top:4px}}

/* Senior badge uses the same color as the 60+ timetable label. */
.preview-page .flyer-plans [data-plan-id="senior"] .plan-badge{background:#00e6a7;color:#080808;max-width:100%;white-space:nowrap}
@media(max-width:600px){.preview-page .flyer-plans [data-plan-id="senior"] .plan-badge{font-size:9px;padding:5px 6px}}

/* Compact enrollment notice with a clearer label and amount. */
.preview-page .enrollment-notice{padding:16px 20px;border:1px solid #bacb77;border-left:5px solid #8cae20;background:#f0f6dc;color:#344319;gap:8px 24px;font-size:13px;box-shadow:0 2px 8px #3443190a}
.preview-page .enrollment-notice p:first-child{font-weight:700;font-size:14px}
.preview-page .enrollment-notice strong{font-size:22px;color:#202b09;margin-left:4px}
