:root { color-scheme: dark; }
html { scroll-behavior: smooth; }
body { overflow-x: visible; }
img { height: auto; }
.wp-site-blocks { padding-top: 0; padding-bottom: 0; }
.solo-section { padding-block: clamp(3.5rem, 7vw, 6.5rem); }
.solo-eyebrow { letter-spacing: .14em; text-transform: uppercase; font-weight: 800; }
.solo-card { height: 100%; border-top: 3px solid var(--wp--preset--color--yellow); transition: transform .3s ease, box-shadow .3s ease; }
.solo-card:hover { transform: translateY(-8px); box-shadow: 0 18px 45px rgba(0, 0, 0, .35); }
.solo-feature-image { overflow: hidden; }
.solo-feature-image img { width: 100%; aspect-ratio: 16 / 9; object-fit: cover; filter: saturate(.72) contrast(1.1); transition: transform .45s cubic-bezier(.2,.7,.2,1), filter .3s ease; }
.solo-feature-image:hover img { transform: scale(1.025); filter: saturate(1) contrast(1.05); }
.solo-hero { min-height: min(780px, 88vh); display: grid; align-items: center; }
.solo-hero .wp-block-cover__image-background { animation: solo-hero-in 1.2s ease-out both; }
.solo-hero-slider { position: relative; width: 100vw; max-width: none !important; min-height: clamp(680px, 88vh, 900px); margin-block: 0; margin-left: calc(50% - 50vw) !important; overflow: hidden; background: #070707; }
.solo-hero-slider .solo-slide { position: absolute; inset: 0; width: 100%; min-height: 100% !important; margin: 0; opacity: 0; visibility: hidden; pointer-events: none; transition: opacity .75s ease, visibility .75s ease; }
.solo-hero-slider .solo-slide.is-active { opacity: 1; visibility: visible; pointer-events: auto; }
.solo-hero-slider .solo-slide::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(7,7,7,.92) 0%, rgba(7,7,7,.62) 48%, rgba(7,7,7,.1) 100%), linear-gradient(0deg, rgba(7,7,7,.45), transparent 45%); pointer-events: none; }
.solo-hero-slider .wp-block-cover__inner-container { position: relative; z-index: 2; }
.solo-slide-content { margin-inline: 0; padding-bottom: 7rem; }
.solo-slide-content h1, .solo-slide-content h2 { max-width: 900px; margin-block: .55rem 1.25rem; }
.solo-slide-content > p { max-width: 720px; }
.solo-slider-controls { position: absolute; z-index: 5; right: max(var(--wp--preset--spacing--30), calc((100vw - 1800px)/2)); bottom: clamp(2rem,4vw,3.5rem); display: flex; align-items: center; gap: .65rem; padding: .55rem .7rem; border: 1px solid rgba(255,255,255,.18); background: rgba(7,7,7,.72); backdrop-filter: blur(10px); }
.solo-slider-dot { width: 2.8rem; height: 4px; padding: 0; border: 0; background: rgba(255,255,255,.38); cursor: pointer; transition: width .25s ease, background .25s ease; }
.solo-slider-dot.is-active { width: 5rem; background: var(--wp--preset--color--yellow); }
.solo-slider-arrow { display: grid; place-items: center; width: 2.75rem; height: 2.75rem; margin-left: .35rem; border: 1px solid rgba(255,255,255,.45); border-radius: 50%; background: rgba(7,7,7,.5); color: #fff; cursor: pointer; transition: border-color .2s ease, color .2s ease, transform .2s ease; }
.solo-slider-arrow:hover { border-color: var(--wp--preset--color--yellow); color: var(--wp--preset--color--yellow); transform: translateX(3px); }
.solo-header { position: sticky; top: 0; z-index: 1000; box-shadow: 0 8px 30px rgba(0,0,0,.34); backdrop-filter: blur(14px); }
.solo-header { transition: padding .25s ease, background-color .25s ease, box-shadow .25s ease; }
.solo-header.is-scrolled { background: rgba(7,7,7,.94) !important; box-shadow: 0 14px 36px rgba(0,0,0,.5); }
.admin-bar .solo-header { top: 32px; }
.solo-header .wp-block-site-logo img { width: auto; max-height: 56px; }
.solo-header-cta .wp-element-button { padding: .55rem 1.1rem; white-space: nowrap; }
.solo-mini-card { height: 100%; padding: 2rem; border: 1px solid #2d2d2d; background: linear-gradient(145deg, #191919, #101010); }
.solo-mini-card::before { content: ""; display: block; width: 3rem; height: 3px; margin-bottom: 1.25rem; background: var(--wp--preset--color--yellow); }
.solo-quote { height: 100%; margin: 0; padding: 2rem; border: 1px solid #303030; border-left: 4px solid var(--wp--preset--color--yellow); background: #161616; }
.solo-quote p { font-size: 1.1rem; }
.solo-faq details { margin-bottom: .75rem; padding: 1.15rem 1.25rem; border: 1px solid #303030; background: var(--wp--preset--color--charcoal); }
.solo-faq summary { cursor: pointer; font-family: var(--wp--preset--font-family--bebas-neue); font-size: 1.35rem; letter-spacing: .03em; }
.solo-footer { position: relative; border-top: 4px solid var(--wp--preset--color--yellow); }
.solo-footer::before { content: ""; position: absolute; inset: 0; pointer-events: none; background: radial-gradient(circle at 10% 0%, rgba(255,212,0,.09), transparent 32%); }
.solo-footer .wp-block-site-logo img { max-height: 82px; width: auto; }
.solo-footer .wp-block-navigation-item__content { color: var(--wp--preset--color--muted); }
.solo-footer .wp-block-navigation-item__content:hover { color: var(--wp--preset--color--yellow); }
.wp-block-navigation__responsive-container.is-menu-open { padding: 2rem; background: var(--wp--preset--color--black) !important; }
.wp-block-post-featured-image img { object-fit: cover; }
.wp-block-query-pagination { margin-top: 3rem; }
:focus-visible { outline: 3px solid var(--wp--preset--color--yellow); outline-offset: 4px; }
.wp-element-button { transition: transform .2s ease, box-shadow .2s ease, background-color .2s ease, color .2s ease; }
.wp-element-button:hover { transform: translateY(-2px); box-shadow: 0 10px 26px rgba(255, 212, 0, .18); }
.solo-reveal { opacity: 1; visibility: visible; }
@keyframes solo-hero-in { from { transform: scale(1.04); opacity: .65; } to { transform: scale(1); opacity: 1; } }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; } }
@media (max-width: 900px) { .solo-header-cta { display: none; } }
@media (max-width: 781px) { .solo-hero { min-height: 680px; } .solo-section { padding-block: 3.5rem; } .solo-footer .wp-block-columns { gap: 2.25rem; } }
@media (min-width: 782px) { .solo-feature-grid { margin-top: 3rem; } }

/* Inner-page system */
.solo-page-main { margin-top: 0; }
.solo-page-main > .wp-block-post-content { margin-block-start: 0; }
.solo-inner-hero { position: relative; min-height: clamp(440px, 56vh, 560px); }
.solo-inner-hero::after { content: ""; position: absolute; inset: 0; pointer-events: none; background: linear-gradient(90deg, rgba(7,7,7,.82) 0%, rgba(7,7,7,.48) 48%, rgba(7,7,7,.08) 78%), linear-gradient(0deg, rgba(7,7,7,.62) 0%, transparent 38%); }
.solo-inner-hero .wp-block-cover__inner-container { position: relative; z-index: 2; }
.solo-inner-hero-content { max-width: 720px; margin-inline: 0; }
.solo-inner-hero h1 { max-width: 700px; margin-block: .45rem 1rem; font-size: clamp(3rem, 6vw, 5.4rem) !important; line-height: .96; }
.solo-hero-copy { max-width: 580px; margin-bottom: 0; color: #e4e4e4; font-size: clamp(1rem, 1.5vw, 1.2rem); }
.solo-section-heading { max-width: 850px; margin-inline: 0; margin-bottom: clamp(2.5rem, 5vw, 4.5rem); }
.solo-section-heading { position: relative; padding-left: clamp(1rem,2vw,1.75rem); border-left: 5px solid var(--wp--preset--color--yellow); }
.solo-section-heading h2 { line-height: .92; text-wrap: balance; }
.solo-centered-heading { margin-inline: auto; }
.solo-surface-section { position: relative; overflow: hidden; }
.solo-surface-section::before { content: ""; position: absolute; width: clamp(5rem,12vw,10rem); height: 5px; right: 0; top: clamp(2rem,5vw,4rem); background: var(--wp--preset--color--yellow); }
.solo-story-section { background: linear-gradient(180deg, #070707, #0e0e0e); }
.solo-split { gap: clamp(2rem, 7vw, 7rem); }
.solo-stats-row { margin-top: clamp(3rem, 7vw, 6rem); padding: 2rem 0; border-block: 1px solid #2e2e2e; }
.solo-stats-row .wp-block-column { padding-inline: 1.5rem; border-left: 1px solid #2e2e2e; }
.solo-stats-row .wp-block-column:first-child { border-left: 0; }
.solo-stats-row h3 { margin: 0; color: var(--wp--preset--color--yellow); }
.solo-stats-row p { margin-bottom: 0; color: var(--wp--preset--color--muted); }
.solo-card-grid, .solo-program-grid, .solo-pricing-grid { gap: 1.5rem; align-items: stretch; }
.solo-icon-card, .solo-program-card, .solo-price-card { position: relative; height: 100%; padding: clamp(1.75rem, 3vw, 3rem); border: 1px solid #303030; background: linear-gradient(145deg, #1a1a1a, #101010); overflow: hidden; transition: transform .3s ease, border-color .3s ease, box-shadow .3s ease; }
.solo-icon-card:hover, .solo-program-card:hover, .solo-price-card:hover { transform: translateY(-8px); border-color: var(--wp--preset--color--yellow); box-shadow: 0 24px 60px rgba(0,0,0,.4); }
.solo-card-number { margin: 0 0 2rem; color: var(--wp--preset--color--yellow); font-family: var(--wp--preset--font-family--bebas-neue); font-size: 2rem; }
.solo-icon-card h3 { font-size: clamp(2rem, 3.2vw, 3.2rem); }
.solo-program-card { min-height: 480px; display: flex; flex-direction: column; justify-content: flex-end; }
.solo-program-card::after { content: ""; position: absolute; width: 12rem; height: 12rem; right: -6rem; top: -6rem; border: 1px solid rgba(255,212,0,.25); transform: rotate(45deg); }
.solo-program-card ul, .solo-price-card ul { padding-left: 1.2rem; color: #d4d4d4; }
.solo-program-card li, .solo-price-card li { margin-bottom: .65rem; }
.solo-editorial-image { position: relative; margin: 0; }
.solo-editorial-image::before { content: ""; position: absolute; inset: -14px 14px 14px -14px; border: 2px solid var(--wp--preset--color--yellow); z-index: -1; }
.solo-editorial-image img { width: 100%; min-height: 560px; object-fit: cover; }
.solo-step-list { margin-block: 2rem; }
.solo-step-list h3 { margin-bottom: .3rem; padding-top: 1.25rem; border-top: 1px solid #333; color: var(--wp--preset--color--yellow); }
.solo-step-list p { margin-top: 0; color: var(--wp--preset--color--muted); }
.solo-yellow-band { position: relative; }
.solo-yellow-band .wp-element-button:hover { border-color: #070707; }
.solo-steps .wp-block-column { position: relative; padding: 2rem 1.5rem 1rem; border-top: 3px solid var(--wp--preset--color--yellow); }
.solo-steps h3 { font-size: 2rem; }
.solo-price-card { display: flex; flex-direction: column; min-height: 560px; }
.solo-price-card .wp-block-buttons, .solo-price-card .wp-block-button { margin-top: auto; }
.solo-price-card.is-featured { border-color: var(--wp--preset--color--yellow); transform: translateY(-18px); box-shadow: 0 24px 70px rgba(255,212,0,.1); }
.solo-price-card.is-featured:hover { transform: translateY(-26px); }
.solo-badge { position: absolute; top: 0; right: 0; margin: 0; padding: .55rem 1rem; background: var(--wp--preset--color--yellow); color: #070707; font-size: .75rem; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }

/* Membership pricing */
.solo-membership-grid { gap: 1rem; align-items: stretch; }
.solo-membership-card { position: relative; height: 100%; min-height: 300px; box-sizing: border-box; padding: clamp(1.5rem, 2.5vw, 2.5rem); border: 1px solid #333; border-top: 4px solid var(--wp--preset--color--yellow); background: linear-gradient(145deg, #191919, #0e0e0e); transition: transform .3s ease, border-color .3s ease, box-shadow .3s ease; }
.solo-membership-card:hover { transform: translateY(-8px); border-color: var(--wp--preset--color--yellow); box-shadow: 0 24px 60px rgba(0,0,0,.4); }
.solo-membership-card.is-featured { background: linear-gradient(145deg, #24210c, #111); }
.solo-membership-card h3 { margin-block: .6rem 2.5rem; font-size: clamp(2rem, 3vw, 3rem); }
.solo-membership-price { margin-block: auto 0; color: #fff; font-family: var(--wp--preset--font-family--bebas-neue); font-size: clamp(3.5rem, 5vw, 5.5rem); line-height: .9; letter-spacing: .02em; }
.solo-membership-price span { color: var(--wp--preset--color--yellow); font-family: var(--wp--preset--font-family--inter); font-size: .9rem; font-weight: 800; letter-spacing: .08em; }
.solo-membership-section > .wp-block-buttons { margin-top: 2rem; }
.solo-premium-grid { gap: 1.25rem; align-items: stretch; }
.solo-premium-card { height: 100%; min-height: 370px; box-sizing: border-box; padding: clamp(2rem, 4vw, 4rem); border: 1px solid #3b3b3b; background: #111; }
.solo-premium-card.is-annual { border: 0; background: linear-gradient(135deg, #ffd400, #b89100); color: #070707; }
.solo-premium-card.is-annual .solo-membership-price { color: #070707; }
.solo-premium-card.is-annual .solo-membership-price span { color: #070707; }
.solo-pt-price { margin-block: .65rem; font-size: clamp(1.25rem, 2.2vw, 1.8rem); }
.solo-premium-card .wp-block-button { margin-top: 2rem; }

/* Contact and lead generation */
.solo-contact-grid { gap: clamp(2.5rem, 7vw, 7rem); align-items: flex-start; }
.solo-contact-cards { margin-top: 2.5rem; }
.solo-contact-card { padding: 1.5rem 0; border-top: 1px solid #303030; }
.solo-contact-card .solo-eyebrow { margin: 0 0 .35rem; color: var(--wp--preset--color--muted); font-size: .75rem; }
.solo-contact-card h3 { margin: 0; font-size: clamp(1.5rem, 2.4vw, 2.2rem); overflow-wrap: anywhere; }
.solo-form-panel { padding: clamp(1.75rem, 4vw, 3.5rem); border-top: 5px solid var(--wp--preset--color--yellow); background: #151515; box-shadow: 0 30px 80px rgba(0,0,0,.42); }
.solo-lead-form { display: grid; gap: 1.15rem; margin-top: 2rem; }
.solo-form-row { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 1rem; }
.solo-lead-form label { display: grid; gap: .5rem; color: #fff; font-size: .82rem; font-weight: 800; letter-spacing: .04em; }
.solo-lead-form label span { color: var(--wp--preset--color--yellow); }
.solo-lead-form input:not([type="hidden"]), .solo-lead-form select, .solo-lead-form textarea { width: 100%; box-sizing: border-box; padding: .95rem 1rem; border: 1px solid #3a3a3a; border-radius: 0; background: #0b0b0b; color: #fff; font: inherit; transition: border-color .2s ease, box-shadow .2s ease; }
.solo-lead-form input:not([type="hidden"]):focus, .solo-lead-form select:focus, .solo-lead-form textarea:focus { outline: 0; border-color: var(--wp--preset--color--yellow); box-shadow: 0 0 0 3px rgba(255,212,0,.12); }
.solo-lead-form input[type="hidden"] { display: none !important; }
.solo-lead-form > p:empty { display: none; }
.solo-lead-form > p:not(:empty) { display: contents; }
.solo-lead-form textarea { resize: vertical; }
.solo-lead-form .solo-consent { display: flex; grid-template-columns: auto 1fr; align-items: flex-start; font-weight: 500; color: var(--wp--preset--color--muted); }
.solo-consent input { width: auto; margin-top: .25rem; accent-color: var(--wp--preset--color--yellow); }
.solo-lead-form button { display: flex; justify-content: space-between; padding: 1rem 1.35rem; border: 2px solid var(--wp--preset--color--yellow); background: var(--wp--preset--color--yellow); color: #070707; font-family: var(--wp--preset--font-family--bebas-neue); font-size: 1.35rem; letter-spacing: .06em; cursor: pointer; }
.solo-lead-form button:hover { background: transparent; color: var(--wp--preset--color--yellow); }
.solo-form-honeypot { position: absolute !important; left: -10000px !important; }
.solo-form-notice { margin-bottom: 1rem; padding: 1rem; border-left: 4px solid; }
.solo-form-notice.is-success { border-color: #66d17a; background: rgba(102,209,122,.1); }
.solo-form-notice.is-error { border-color: #ff6b6b; background: rgba(255,107,107,.1); }

/* Articles and single posts */
.solo-articles-query .wp-block-post-template { gap: 2rem; }
.solo-article-card { height: 100%; padding-bottom: 1.75rem; border-bottom: 2px solid #303030; transition: transform .3s ease, border-color .3s ease; }
.solo-article-card:hover { transform: translateY(-7px); border-color: var(--wp--preset--color--yellow); }
.solo-article-card .wp-block-post-featured-image { overflow: hidden; margin-bottom: 1.5rem; background: #191919; }
.solo-article-card .wp-block-post-featured-image { min-height: 180px; border-bottom: 4px solid var(--wp--preset--color--yellow); }
.solo-article-card .wp-block-post-featured-image img { transition: transform .6s ease; }
.solo-article-card:hover .wp-block-post-featured-image img { transform: scale(1.04); }
.solo-article-card .wp-block-post-title { margin-block: .65rem; }
.solo-article-card .wp-block-post-title a { color: #fff; }
.solo-article-card .wp-block-post-title a:hover { color: var(--wp--preset--color--yellow); }
.solo-article-card .wp-block-post-excerpt__more-link { display: inline-block; margin-top: 1rem; font-weight: 800; text-transform: uppercase; }
.solo-empty-state { padding: 4rem; border: 1px dashed #444; text-align: center; background: #121212; }
.solo-article-shell { padding-top: clamp(4rem, 8vw, 8rem); padding-bottom: 0; }
.solo-article-hero { max-width: 1100px; text-align: center; }
.solo-article-hero h1 { max-width: 980px; margin-block: 1rem 1.5rem; font-size: clamp(3.4rem, 7vw, 6.8rem); line-height: .95; }
.solo-post-meta { justify-content: center; }
.solo-article-cover { margin-top: clamp(2rem, 5vw, 4rem); margin-bottom: clamp(3rem, 7vw, 6rem); }
.solo-article-cover img { width: 100%; max-height: 760px; object-fit: cover; }
.solo-single-layout { gap: clamp(2.5rem, 5vw, 5rem); align-items: flex-start; }
.solo-reading-layout { max-width: none; }
.solo-reading-layout .wp-block-post-content { font-size: clamp(1.05rem, 1.4vw, 1.2rem); }
.solo-reading-layout .wp-block-post-content > p:first-of-type { font-size: 1.35em; color: #fff; }
.solo-reading-layout h2 { margin-top: 2.5em; font-size: clamp(2.5rem, 5vw, 4.5rem); }
.solo-reading-layout h3 { margin-top: 2em; font-size: clamp(2rem, 3.5vw, 3rem); }
.solo-reading-layout blockquote { margin-block: 2.5rem; padding: 1.5rem 2rem; border-left: 5px solid var(--wp--preset--color--yellow); background: #151515; }
.solo-article-share { margin-top: 4rem; padding-top: 1.5rem; border-top: 1px solid #333; }
.solo-post-nav { margin-top: 5rem; margin-bottom: 5rem; padding: 2rem 0; border-block: 1px solid #333; }
.solo-article-sidebar { position: sticky; top: 7rem; display: grid; gap: 1.25rem; }
.admin-bar .solo-article-sidebar { top: 9rem; }
.solo-sidebar-panel { padding: clamp(1.5rem, 2.8vw, 2.5rem); border: 1px solid #333; background: #131313; }
.solo-sidebar-panel h2 { margin-block: .35rem 1.5rem; font-size: clamp(2.1rem, 3vw, 3rem); }
.solo-sidebar-post { display: grid; grid-template-columns: 92px minmax(0,1fr); grid-template-rows: auto auto; column-gap: 1rem; align-items: center; padding-block: 1rem; border-top: 1px solid #333; }
.solo-sidebar-post:first-child { padding-top: 0; border-top: 0; }
.solo-sidebar-post .wp-block-post-featured-image { grid-row: 1 / 3; width: 92px; height: 78px; margin: 0; overflow: hidden; }
.solo-sidebar-post .wp-block-post-featured-image img { width: 100%; height: 100%; object-fit: cover; }
.solo-sidebar-post .wp-block-post-title { align-self: end; margin: 0; font-size: 1.15rem; line-height: 1.05; }
.solo-sidebar-post .wp-block-post-date { align-self: start; margin-top: .45rem; font-size: .72rem; }
.solo-sidebar-post .wp-block-post-title a { color: #fff; }
.solo-sidebar-post .wp-block-post-title a:hover { color: var(--wp--preset--color--yellow); }
.solo-sidebar-lead { border: 0; background: var(--wp--preset--color--yellow); color: #070707; }
.solo-sidebar-lead .solo-lead-form { gap: .8rem; margin-top: 1.25rem; }
.solo-sidebar-lead .solo-form-row { grid-template-columns: 1fr; }
.solo-sidebar-lead .solo-lead-form label { color: #070707; }
.solo-sidebar-lead .solo-lead-form label span { color: #070707; }
.solo-sidebar-lead .solo-lead-form input:not([type="hidden"]), .solo-sidebar-lead .solo-lead-form select, .solo-sidebar-lead .solo-lead-form textarea { border-color: rgba(7,7,7,.28); background: rgba(255,255,255,.92); color: #070707; }
.solo-sidebar-lead .solo-lead-form textarea { min-height: 110px; }
.solo-sidebar-lead .solo-consent { color: #272000; }
.solo-sidebar-lead .solo-lead-form button { border-color: #070707; background: #070707; color: var(--wp--preset--color--yellow); }
.solo-sidebar-lead .solo-lead-form button:hover { background: transparent; color: #070707; }
.solo-home-articles-query { margin-bottom: 2.5rem; }
.solo-footer-links { gap: 1.25rem; }
.solo-footer-links .wp-block-navigation { min-width: 0; }

/* Audit-led homepage rhythm */
.solo-proof-strip { padding-block: clamp(1.8rem,4vw,3.25rem); }
.solo-proof-line { align-items: flex-end; gap: clamp(1rem,4vw,4rem); }
.solo-proof-line > * { margin: 0; }
.solo-proof-kicker { max-width: 12rem; font-size: .74rem; font-weight: 900; letter-spacing: .13em; }
.solo-proof-line h2 { flex: 1 1 30rem; font-size: clamp(2.6rem,5vw,5.6rem); line-height: .84; }
.solo-proof-line > p:last-child { flex: 0 1 28rem; font-size: 1rem; }
.solo-experience-split { gap: clamp(3rem,9vw,9rem); align-items: flex-start; }
.solo-experience-split > .wp-block-column:first-child { position: sticky; top: 8rem; }
.solo-experience-notes { border-top: 1px solid #3a3a3a; }
.solo-experience-note { display: grid; grid-template-columns: 4rem 1fr; column-gap: 1.5rem; padding-block: clamp(1.8rem,4vw,3rem); border-bottom: 1px solid #3a3a3a; }
.solo-experience-note > * { grid-column: 2; margin-block: 0 .6rem; }
.solo-experience-note .solo-note-number { grid-column: 1; grid-row: 1 / 3; color: var(--wp--preset--color--yellow); font-family: var(--wp--preset--font-family--bebas-neue); font-size: 2rem; }
.solo-experience-note h3 { font-size: clamp(2rem,4vw,3.7rem); line-height: .95; }
.solo-membership-intro { gap: clamp(2rem,8vw,8rem); align-items: flex-end; margin-bottom: clamp(2.5rem,5vw,5rem); }
.solo-price-run { gap: 0; margin-bottom: 2.5rem; border-block: 1px solid #383838; }
.solo-price-line { position: relative; min-height: 230px; padding: 1.8rem; border-right: 1px solid #383838; }
.solo-price-line:last-child { border-right: 0; }
.solo-price-line h3 { margin: 0; font-size: clamp(2rem,3vw,3.2rem); }
.solo-price-amount { position: absolute; left: 1.8rem; bottom: 1.5rem; margin: 0; color: #fff; font-family: var(--wp--preset--font-family--bebas-neue); font-size: clamp(3.3rem,5vw,5.2rem); line-height: .9; }
.solo-price-amount span { color: var(--wp--preset--color--yellow); font-family: var(--wp--preset--font-family--inter); font-size: .78rem; font-weight: 800; letter-spacing: .1em; }
.solo-price-line.is-annual { background: var(--wp--preset--color--yellow); color: #070707; }
.solo-price-line.is-annual .solo-price-amount, .solo-price-line.is-annual .solo-price-amount span { color: #070707; }
.solo-price-label { margin: 0 0 .5rem; font-size: .68rem; font-weight: 900; letter-spacing: .12em; }
.solo-proof-bar { margin-block: 0; }
.solo-proof-bar .wp-block-column { padding: 1rem clamp(.5rem,2vw,2rem); border-left: 1px solid rgba(7,7,7,.24); }
.solo-proof-bar .wp-block-column:first-child { border-left: 0; }
.solo-proof-bar h3 { margin-bottom: .45rem; font-size: clamp(1.9rem,3.4vw,3.4rem) !important; }
.solo-proof-bar p { margin: 0; font-size: .72rem; }
.solo-proof-grid { margin-top: clamp(3rem,7vw,6rem); border-block: 1px solid #2e2e2e; }
.solo-proof-grid .wp-block-column { padding: 2rem; border-left: 1px solid #2e2e2e; }
.solo-proof-grid .wp-block-column:first-child { border-left: 0; }
.solo-proof-grid h3 { color: var(--wp--preset--color--yellow); }
.solo-proof-grid p { color: var(--wp--preset--color--muted); }
.solo-facility-mosaic { display: grid; grid-template-columns: 1.15fr .85fr; gap: 1rem; }
.solo-facility-mosaic figure { height: 100%; margin: 0; overflow: hidden; }
.solo-facility-mosaic figure:nth-child(2) { transform: translateY(2rem); }
.solo-facility-mosaic img { width: 100%; height: 520px; object-fit: cover; transition: transform .7s cubic-bezier(.2,.7,.2,1); }
.solo-facility-mosaic img, .solo-editorial-gallery img { filter: saturate(.78) contrast(1.12); }
.solo-facility-mosaic figure:hover img, .solo-editorial-gallery figure:hover img { filter: saturate(1) contrast(1.06); }
.solo-facility-mosaic figure:nth-child(2) img { height: 420px; }
.solo-facility-mosaic figure:hover img { transform: scale(1.04); }
.solo-facility-list { margin-top: 5rem; border-block: 1px solid #343434; }
.solo-facility-list .wp-block-column { padding: 2rem; border-left: 1px solid #343434; }
.solo-facility-list .wp-block-column:first-child { border-left: 0; }
.solo-facility-list h3 { margin: 0 0 .6rem; color: var(--wp--preset--color--yellow); }
.solo-facility-list p { margin: 0; color: var(--wp--preset--color--muted); }
.solo-class-grid { gap: 0; }
.solo-class-card { position: relative; min-height: 430px; display: flex; flex-direction: column; justify-content: flex-end; padding: clamp(2rem,4vw,4rem); border: 1px solid #2e2e2e; background: linear-gradient(165deg,#181818,#0b0b0b); overflow: hidden; transition: flex-grow .35s ease, background .35s ease; }
.solo-class-card::before { content: ""; position: absolute; width: 16rem; height: 16rem; right: -8rem; top: -8rem; border: 1px solid rgba(255,212,0,.18); border-radius: 50%; }
.solo-class-card:hover { background: linear-gradient(165deg,#22200e,#0b0b0b); }
.solo-home-plans { margin-top: 3rem; align-items: stretch; }
.solo-home-plans .solo-card { position: relative; min-height: 310px; padding: 2.5rem; background: #151515; border: 1px solid #333; }
.solo-home-plans .solo-card.is-featured { border-color: var(--wp--preset--color--yellow); transform: translateY(-12px); }
.solo-home-articles-query .wp-block-post-template { grid-template-columns: 1.35fr .8fr .8fr; align-items: start; }
.solo-home-articles-query .solo-article-card { height: auto; }
.solo-home-articles-query .wp-block-post:nth-child(n+2) .wp-block-post-excerpt { display: none; }
.solo-home-articles-query .wp-block-post:nth-child(n+2) .wp-block-post-featured-image img { aspect-ratio: 16 / 10; }
.solo-editorial-gallery { display: grid !important; grid-template-columns: 1.15fr .85fr 1fr; grid-template-rows: 300px 300px; gap: 1rem !important; }
.solo-editorial-gallery figure { width: 100% !important; height: 100%; margin: 0 !important; overflow: hidden; }
.solo-editorial-gallery figure:first-child { grid-row: 1 / 3; }
.solo-editorial-gallery figure:last-child { grid-column: 2 / 4; }
.solo-editorial-gallery img { width: 100%; height: 100% !important; object-fit: cover; transition: transform .65s ease, filter .35s ease; }
.solo-editorial-gallery figure:hover img { transform: scale(1.04); filter: contrast(1.08); }
.solo-location-band { padding-block: clamp(3rem,7vw,6rem); }
.solo-location-band h2 { margin-block: .3rem; }
.solo-mobile-actionbar { display: none !important; }
/* Persistent website actions */
.solo-floating-actions { position: fixed; z-index: 1900; right: clamp(.8rem,2vw,1.5rem); bottom: 2rem; display: grid; gap: .65rem; }
.solo-floating-action { display: grid; grid-template-columns: 2.8rem 0fr; align-items: center; min-width: 2.8rem; min-height: 2.8rem; padding: .25rem; border: 0; border-radius: 999px; background: #171717; color: #fff; box-shadow: 0 10px 30px rgba(0,0,0,.4); text-decoration: none; overflow: hidden; cursor: pointer; transition: grid-template-columns .3s ease, background .2s ease, color .2s ease, transform .2s ease; }
.solo-floating-action svg { width: 1.3rem; height: 1.3rem; margin: auto; fill: currentColor; }
.solo-floating-action span { min-width: 0; padding-right: 0; font-size: .78rem; font-weight: 800; letter-spacing: .05em; text-transform: uppercase; white-space: nowrap; opacity: 0; transition: opacity .2s ease, padding-right .3s ease; }
.solo-floating-action:hover, .solo-floating-action:focus-visible { grid-template-columns: 2.8rem 1fr; transform: translateX(-3px); }
.solo-floating-action:hover span, .solo-floating-action:focus-visible span { padding-right: .9rem; opacity: 1; }
.solo-floating-action.is-whatsapp { background: #1f9d55; }
.solo-floating-action.is-call { background: var(--wp--preset--color--yellow); color: #070707; }
.solo-floating-action.is-top { border: 1px solid #404040; }
.solo-floating-action[hidden] { display: none; }

@media (max-width: 1100px) {
  .solo-header .wp-block-site-title { display: none; }
  .solo-header .wp-block-navigation { font-size: .78rem; }
}
@media (max-width: 900px) {
  .solo-price-card.is-featured, .solo-price-card.is-featured:hover { transform: none; }
  .solo-program-card { min-height: 380px; }
  .solo-membership-grid { flex-wrap: wrap !important; }
  .solo-membership-grid > .wp-block-column { flex-basis: calc(50% - .5rem) !important; }
  .solo-single-layout { flex-wrap: wrap !important; }
  .solo-single-layout > .wp-block-column { flex-basis: 100% !important; }
  .solo-article-sidebar { position: static; grid-template-columns: 1fr 1fr; }
  .solo-home-articles-query .wp-block-post-template { grid-template-columns: 1fr 1fr; }
  .solo-home-articles-query .wp-block-post:first-child { grid-column: 1 / 3; }
}
@media (max-width: 781px) {
  .admin-bar .solo-header { top: 46px; }
  .solo-inner-hero { min-height: 460px; }
  .solo-inner-hero::after { background: linear-gradient(0deg, rgba(7,7,7,.88), rgba(7,7,7,.24) 82%); }
  .solo-stats-row .wp-block-column { padding: 1.25rem 0; border-left: 0; border-top: 1px solid #2e2e2e; }
  .solo-stats-row .wp-block-column:first-child { border-top: 0; }
  .solo-editorial-image img { min-height: 380px; }
  .solo-form-row { grid-template-columns: 1fr; }
  .solo-form-panel { margin-top: 1rem; }
  .solo-article-shell { padding-top: 3rem; }
  .solo-article-hero { text-align: left; }
  .solo-post-meta { justify-content: flex-start; }
  .solo-proof-bar .wp-block-column { padding: 1.2rem 0; border-left: 0; border-top: 1px solid rgba(7,7,7,.22); }
  .solo-proof-bar .wp-block-column:first-child { border-top: 0; }
  .solo-proof-grid .wp-block-column { padding: 1.5rem 0; border-left: 0; border-top: 1px solid #2e2e2e; }
  .solo-proof-grid .wp-block-column:first-child { border-top: 0; }
  .solo-facility-mosaic { margin-top: 2rem; }
  .solo-facility-mosaic img, .solo-facility-mosaic figure:nth-child(2) img { height: 320px; }
  .solo-facility-mosaic figure:nth-child(2) { transform: none; }
  .solo-facility-list { margin-top: 2.5rem; }
  .solo-facility-list .wp-block-column { padding: 1.5rem 0; border-left: 0; border-top: 1px solid #343434; }
  .solo-facility-list .wp-block-column:first-child { border-top: 0; }
  .solo-class-card { min-height: 300px; }
  .solo-home-plans .solo-card.is-featured { transform: none; }
  .solo-membership-grid > .wp-block-column { flex-basis: 100% !important; }
  .solo-membership-card { min-height: 240px; }
  .solo-article-sidebar { grid-template-columns: 1fr; }
  .solo-experience-split > .wp-block-column:first-child { position: static; }
  .solo-price-run { grid-template-columns: 1fr 1fr; }
  .solo-price-line:nth-child(2) { border-right: 0; }
  .solo-price-line:nth-child(-n+2) { border-bottom: 1px solid #383838; }
  .solo-footer-links { flex-wrap: nowrap !important; }
  .solo-editorial-gallery { grid-template-columns: 1fr 1fr; grid-template-rows: 300px 220px 260px; }
  .solo-editorial-gallery figure:first-child { grid-column: 1 / 3; grid-row: auto; }
  .solo-editorial-gallery figure:last-child { grid-column: 1 / 3; }
  .solo-hero-slider { min-height: 700px; }
  .solo-hero-slider .solo-slide { min-height: 700px !important; }
  .solo-hero-slider .solo-slide::after { background: linear-gradient(0deg, rgba(7,7,7,.95), rgba(7,7,7,.38) 80%); }
  .solo-slide-content { padding-bottom: 6rem; }
  .solo-slider-controls { left: 50%; right: auto; bottom: 1.25rem; width: max-content; max-width: calc(100% - 2rem); transform: translateX(-50%); }
  .solo-slider-dot { width: 2rem; }
  .solo-slider-dot.is-active { width: 3.5rem; }
  .solo-floating-actions { bottom: 1rem; }
  .solo-floating-action { grid-template-columns: 2.8rem 0fr; }
}
@media (max-width: 600px) {
  .admin-bar .solo-header { top: 0; }
  .solo-inner-hero h1 { font-size: clamp(2.65rem, 11vw, 3.8rem) !important; }
  .solo-hero-slider, .solo-hero-slider .solo-slide { min-height: 620px !important; }
  .solo-slide-content { padding-bottom: 5.5rem; }
  .solo-slide-content h1, .solo-slide-content h2 { font-size: clamp(2.9rem, 13vw, 4.2rem) !important; line-height: .87; }
  .solo-slide-content > p { max-width: 32ch; font-size: 1rem !important; }
  .solo-slide-content .wp-block-buttons { gap: .65rem; }
  .solo-slide-content .wp-block-button, .solo-slide-content .wp-element-button { width: 100%; text-align: center; }
  .solo-proof-line h2 { flex-basis: 100%; }
  .solo-experience-note { grid-template-columns: 2.6rem 1fr; column-gap: .8rem; }
  .solo-price-run { grid-template-columns: 1fr; }
  .solo-price-line, .solo-price-line:nth-child(2) { min-height: 180px; border-right: 0; border-bottom: 1px solid #383838; }
  .solo-price-line:last-child { border-bottom: 0; }
  .solo-home-articles-query .wp-block-post-template { grid-template-columns: 1fr; }
  .solo-home-articles-query .wp-block-post:first-child { grid-column: auto; }
  .solo-home-articles-query .wp-block-post:nth-child(n+2) .wp-block-post-excerpt { display: block; }
  .solo-form-panel { padding: 1.5rem; }
}

/* Fitwear-inspired performance editorial direction */
.solo-header { border-bottom: 1px solid rgba(255,255,255,.12); box-shadow: none; }
.solo-header::after { content: ""; position: absolute; left: 0; bottom: -1px; width: clamp(4rem,12vw,10rem); height: 3px; background: var(--wp--preset--color--yellow); }
.solo-header .wp-block-navigation-item__content { position: relative; }
.solo-header .wp-block-navigation-item__content::after { content: ""; position: absolute; left: 0; right: 100%; bottom: -.45rem; height: 2px; background: var(--wp--preset--color--yellow); transition: right .25s ease; }
.solo-header .wp-block-navigation-item__content:hover::after { right: 0; }

.solo-hero-slider { min-height: min(920px, calc(100svh - 70px)); background: #050505; }
.solo-hero-slider::before { content: "SOLO / TRAIN / REPEAT"; position: absolute; z-index: 4; left: max(1.5rem,calc((100vw - 1800px)/2)); bottom: 2.5rem; color: rgba(255,255,255,.55); font-size: .68rem; font-weight: 900; letter-spacing: .22em; writing-mode: vertical-rl; transform: rotate(180deg); }
.solo-hero-slider .solo-slide { min-height: min(920px, calc(100svh - 70px)) !important; background: #050505; }
.solo-hero-slider .solo-slide .wp-block-cover__image-background { left: 0; right: auto; width: 64%; filter: grayscale(1) contrast(1.14); transform: scale(1.015); transition: transform 3s cubic-bezier(.2,.7,.2,1), filter .4s ease; }
.solo-hero-slider .solo-slide.is-active .wp-block-cover__image-background { transform: scale(1.055); }
.solo-hero-slider .solo-slide::after { background: linear-gradient(90deg,rgba(5,5,5,.08) 0%,rgba(5,5,5,.1) 42%,#050505 66%,#050505 100%); }
.solo-hero-slider .solo-slide .wp-block-cover__background { opacity: .2; }
.solo-slide-content { width: min(54%,780px); margin-right: 0; margin-left: auto; padding: 4rem 1rem 8rem clamp(2rem,5vw,6rem); }
.solo-slide-content h1, .solo-slide-content h2 { max-width: 780px; font-size: clamp(4.8rem,8vw,9.2rem) !important; line-height: .78; letter-spacing: -.015em; }
.solo-slide-content h1 span, .solo-slide-content h2 span, .solo-stage-heading h2 span, .solo-coach-copy h2 span { color: var(--wp--preset--color--yellow); }
.solo-slide-content > p { max-width: 500px; color: #d8d8d8 !important; }
.solo-slider-controls { right: max(1.5rem,calc((100vw - 1800px)/2)); bottom: 2.25rem; border: 0; border-top: 1px solid rgba(255,255,255,.3); background: transparent; backdrop-filter: none; }
.solo-slider-dot { height: 2px; }
.solo-slider-arrow { border-radius: 0; }

.solo-training-rail { width: 100%; max-width: none !important; padding-block: 1.05rem; overflow: hidden; }
.solo-training-track { width: max-content; gap: 0 !important; animation: solo-training-rail 24s linear infinite; animation-play-state: paused; will-change: transform; }
.solo-training-rail.is-running .solo-training-track { animation-play-state: running; }
.solo-training-track p { position: relative; margin: 0; padding-inline: 2.8rem; font-family: var(--wp--preset--font-family--bebas-neue); font-size: clamp(1.5rem,2.4vw,2.6rem); line-height: 1; letter-spacing: .045em; white-space: nowrap; }
.solo-training-track p::after { content: "+"; position: absolute; right: -.2rem; top: 50%; transform: translateY(-52%); font-family: inherit; font-size: .8em; }
@keyframes solo-training-rail { to { transform: translateX(-36%); } }

.solo-experience-editorial { padding-block: clamp(6rem,11vw,11rem); }
.solo-experience-split > .wp-block-column:first-child h2 { font-size: clamp(4rem,7vw,7.5rem) !important; line-height: .82; }
.solo-experience-note { grid-template-columns: 5rem 1fr; padding-block: clamp(2.2rem,4vw,3.5rem); }
.solo-experience-note h3 { font-size: clamp(2.6rem,4vw,4.6rem); }

.solo-classes-stage { padding-bottom: clamp(5rem,9vw,8rem); overflow: hidden; }
.solo-stage-heading { align-items: flex-end; gap: 2rem; margin-bottom: clamp(2.5rem,5vw,5rem); }
.solo-stage-heading h2 { margin: .5rem 0 0; font-size: clamp(4rem,7.5vw,8rem) !important; line-height: .82; }
.solo-stage-heading > p { max-width: 28rem; margin-bottom: .5rem; }
.solo-class-panels { width: 100vw; max-width: none !important; margin-left: calc(50% - 50vw) !important; gap: 0 !important; overflow: hidden; }
.solo-class-panel { flex: 1 1 0; min-width: 0; min-height: 620px !important; border-right: 1px solid rgba(255,255,255,.28); transition: flex-grow .45s cubic-bezier(.2,.7,.2,1); }
.solo-class-panel:first-child { flex-grow: 1.45; }
.solo-class-panel:hover { flex-grow: 1.65; }
.solo-class-panel .wp-block-cover__image-background { filter: grayscale(1) contrast(1.1); transition: filter .35s ease, transform .6s cubic-bezier(.2,.7,.2,1); }
.solo-class-panel:hover .wp-block-cover__image-background { filter: grayscale(0) contrast(1.04); transform: scale(1.035); }
.solo-class-panel::after { content: ""; position: absolute; inset: 0; background: linear-gradient(0deg,rgba(5,5,5,.94),rgba(5,5,5,.08) 68%); }
.solo-class-panel .wp-block-cover__inner-container { position: relative; z-index: 2; align-self: flex-end; padding: clamp(1.5rem,3vw,3rem); }
.solo-class-panel h3 { margin: .35rem 0; font-size: clamp(3.2rem,5vw,6rem); line-height: .86; }
.solo-class-panel p:last-child { max-width: 28rem; color: #ddd; opacity: 0; transform: translateY(8px); transition: opacity .3s ease,transform .3s ease; }
.solo-class-panel:hover p:last-child { opacity: 1; transform: none; }
.solo-panel-number { margin: 0; font-family: var(--wp--preset--font-family--bebas-neue); font-size: 1.8rem; }
.solo-classes-stage > .wp-block-buttons { margin-top: 2.5rem; }

.solo-coach-scene { position: relative; min-height: min(860px,86vh); display: grid; align-items: end; overflow: hidden; }
.solo-coach-image { position: absolute; inset: 0; width: 100%; height: 100%; margin: 0; }
.solo-coach-image::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg,rgba(5,5,5,.96),rgba(5,5,5,.5) 52%,rgba(5,5,5,.08)); }
.solo-coach-image img { width: 100%; height: 100%; object-fit: cover; object-position: 68% 50%; filter: grayscale(1) contrast(1.12); }
.solo-coach-copy { position: relative; z-index: 2; width: min(58%,820px); margin-left: 0; padding-block: clamp(5rem,10vw,9rem); }
.solo-coach-copy h2 { margin-block: .6rem 1.3rem; font-size: clamp(4rem,7vw,8rem) !important; line-height: .8; }
.solo-coach-copy > p:not(.solo-eyebrow) { max-width: 42rem; }

.solo-inner-hero { min-height: clamp(500px,68vh,720px); }
.solo-inner-hero .wp-block-cover__image-background { left: auto; right: 0; width: 64%; filter: grayscale(1) contrast(1.12); }
.solo-inner-hero::after { background: linear-gradient(90deg,#050505 0%,#050505 34%,rgba(5,5,5,.82) 54%,rgba(5,5,5,.06) 100%); }
.solo-inner-hero-content { width: 56%; max-width: 820px; margin-left: 0; }
.solo-inner-hero h1 { max-width: 900px; font-size: clamp(4rem,7vw,7.2rem) !important; }
.solo-card-grid, .solo-program-grid, .solo-pricing-grid { gap: 0; border-top: 1px solid #3a3a3a; }
.solo-icon-card, .solo-program-card, .solo-price-card { border: 0; border-right: 1px solid #3a3a3a; border-bottom: 1px solid #3a3a3a; background: transparent; box-shadow: none; }
.solo-icon-card:hover, .solo-program-card:hover, .solo-price-card:hover { transform: none; border-color: #3a3a3a; background: #151515; box-shadow: inset 0 4px 0 var(--wp--preset--color--yellow); }
.solo-card-grid > .wp-block-column:nth-child(even) { transform: translateY(clamp(1.5rem,3vw,3rem)); }

@media (max-width: 900px) {
  .solo-slide-content { width: 62%; }
  .solo-class-panel:first-child, .solo-class-panel, .solo-class-panel:hover { flex-grow: 1; }
  .solo-class-panel p:last-child { opacity: 1; transform: none; }
  .solo-coach-copy { width: 72%; }
}
@media (max-width: 781px) {
  .solo-hero-slider, .solo-hero-slider .solo-slide { min-height: 760px !important; }
  .solo-hero-slider::before { display: none; }
  .solo-hero-slider .solo-slide .wp-block-cover__image-background { width: 100%; height: 62%; filter: grayscale(.85) contrast(1.12); }
  .solo-hero-slider .solo-slide::after { background: linear-gradient(0deg,#050505 20%,rgba(5,5,5,.88) 40%,rgba(5,5,5,.05) 78%); }
  .solo-slide-content { width: 100%; margin: 0; padding: 21rem 0 6.5rem; align-self: end; }
  .solo-slide-content h1, .solo-slide-content h2 { font-size: clamp(3.7rem,14vw,6rem) !important; }
  .solo-experience-split > .wp-block-column:first-child h2 { font-size: clamp(3.7rem,13vw,5.4rem) !important; }
  .solo-class-panels { display: grid; grid-template-columns: 1fr; }
  .solo-class-panel { width: 100%; min-height: 430px !important; border-right: 0; border-bottom: 1px solid rgba(255,255,255,.28); }
  .solo-class-panel .wp-block-cover__image-background { filter: grayscale(.45) contrast(1.08); }
  .solo-stage-heading h2 { font-size: clamp(3.7rem,13vw,5.4rem) !important; }
  .solo-coach-scene { min-height: 760px; }
  .solo-coach-image::after { background: linear-gradient(0deg,#050505 6%,rgba(5,5,5,.84) 50%,rgba(5,5,5,.05)); }
  .solo-coach-image img { object-position: 64% 25%; }
  .solo-coach-copy { width: 100%; margin: 0; padding: 22rem 0 4rem; }
  .solo-coach-copy h2 { font-size: clamp(3.7rem,13vw,5.4rem) !important; }
  .solo-inner-hero .wp-block-cover__image-background { width: 100%; }
  .solo-inner-hero::after { background: linear-gradient(0deg,#050505 10%,rgba(5,5,5,.82) 52%,rgba(5,5,5,.08)); }
  .solo-inner-hero-content { width: 100%; align-self: end; padding-bottom: 2.5rem; }
  .solo-card-grid > .wp-block-column:nth-child(even) { transform: none; }
}
@media (max-width: 480px) {
  .solo-hero-slider, .solo-hero-slider .solo-slide { min-height: 700px !important; }
  .solo-slide-content { padding-top: 17rem; }
  .solo-slider-controls { right: auto; left: 1rem; transform: none; max-width: calc(100% - 7rem); }
  .solo-slider-dot { display: none; }
  .solo-class-panel { min-height: 380px !important; }
}
@media (prefers-reduced-motion: reduce) {
  .solo-training-track { animation: none; }
  .solo-hero-slider .solo-slide .wp-block-cover__image-background { transform: none !important; }
}

/* Full-canvas reference-faithful hero carousel */
.home .solo-hero-slider { margin-top: -90px !important; }
.solo-hero-slider { min-height: clamp(780px,100svh,1050px); }
.solo-hero-slider .solo-slide { min-height: clamp(780px,100svh,1050px) !important; transition: opacity 1s ease,visibility 1s ease; }
.solo-hero-slider .solo-slide .wp-block-cover__image-background { inset: 0; width: 100%; height: 100%; object-position: center; filter: grayscale(1) contrast(1.14); transform: scale(1.01); }
.solo-hero-slider .solo-slide.is-active .wp-block-cover__image-background { transform: scale(1.055); }
.solo-hero-slider .solo-slide::after { background: linear-gradient(90deg,rgba(5,5,5,.93),rgba(5,5,5,.56) 43%,rgba(5,5,5,.18) 72%,rgba(5,5,5,.4)); }
.solo-hero-slider .solo-slide.is-align-right::after { background: linear-gradient(90deg,rgba(5,5,5,.18),rgba(5,5,5,.18) 38%,rgba(5,5,5,.72) 68%,rgba(5,5,5,.96)); }
.solo-hero-slider .solo-slide .wp-block-cover__background { opacity: .08; }
.solo-slide-content { width: min(58%,760px); margin-right: auto; margin-left: 0; padding: 8rem 1rem 8rem clamp(2rem,6vw,6.5rem); }
.solo-slide.is-align-right .solo-slide-content { margin-right: 0; margin-left: auto; padding-right: clamp(2rem,6vw,6.5rem); padding-left: 2rem; text-align: right; }
.solo-slide.is-align-right .solo-slide-content > p { margin-left: auto; }
.solo-slide.is-align-right .solo-slide-content .wp-block-buttons { justify-content: flex-end; }
.solo-slide-content h1,.solo-slide-content h2 { font-size: clamp(5rem,8.8vw,9.8rem) !important; line-height: .78; }
.solo-slide.is-active .solo-slide-content > * { animation: solo-hero-copy-in .75s cubic-bezier(.2,.7,.2,1) both; }
.solo-slide.is-active .solo-slide-content > *:nth-child(2) { animation-delay: .08s; }
.solo-slide.is-active .solo-slide-content > *:nth-child(3) { animation-delay: .16s; }
.solo-slide.is-active .solo-slide-content > *:nth-child(4) { animation-delay: .24s; }
@keyframes solo-hero-copy-in { from { opacity: 0; transform: translateY(24px); } to { opacity: 1; transform: none; } }
.solo-slider-controls { right: max(1.5rem,calc((100vw - 1800px)/2)); bottom: 2.5rem; gap: .45rem; padding: 0; border: 0; }
.solo-slider-controls .solo-slider-arrow { display: none; }
.solo-slider-dot { width: 3.5rem; height: 3px; }
.solo-slider-dot.is-active { width: 6.5rem; }

@media (max-width: 781px) {
  .home .solo-hero-slider { margin-top: -98px !important; }
  .solo-hero-slider,.solo-hero-slider .solo-slide { min-height: max(760px,100svh) !important; }
  .solo-hero-slider .solo-slide .wp-block-cover__image-background { width: 100%; height: 100%; object-position: 58% center; }
  .solo-hero-slider .solo-slide::after,.solo-hero-slider .solo-slide.is-align-right::after { background: linear-gradient(0deg,#050505 5%,rgba(5,5,5,.82) 48%,rgba(5,5,5,.08) 84%); }
  .solo-slide-content,.solo-slide.is-align-right .solo-slide-content { width: 100%; margin: 0; padding: 24rem 0 7.5rem; align-self: end; text-align: left; }
  .solo-slide.is-align-right .solo-slide-content > p { margin-left: 0; }
  .solo-slide.is-align-right .solo-slide-content .wp-block-buttons { justify-content: flex-start; }
  .solo-slide-content h1,.solo-slide-content h2 { font-size: clamp(3.7rem,14vw,6rem) !important; }
  .solo-slider-controls { right: auto; left: 1rem; bottom: 1.5rem; transform: none; }
  .solo-slider-dot { display: block; width: 2.25rem; }
  .solo-slider-dot.is-active { width: 4rem; }
}
@media (max-width: 480px) {
  .solo-hero-slider,.solo-hero-slider .solo-slide { min-height: max(720px,100svh) !important; }
  .solo-slide-content,.solo-slide.is-align-right .solo-slide-content { padding-top: 20rem; }
}
@media (prefers-reduced-motion: reduce) {
  .solo-slide.is-active .solo-slide-content > * { animation: none; }
}

/* 2.2 — quieter Fitwear-led composition */
.solo-header {
  position: fixed;
  inset: 0 0 auto;
  width: 100%;
  z-index: 1000;
  border-bottom-color: rgba(255,255,255,.09) !important;
  background: linear-gradient(180deg,rgba(4,4,4,.82),rgba(4,4,4,.38)) !important;
  box-shadow: none;
  backdrop-filter: blur(7px);
}
.admin-bar .solo-header { top: 32px; }
.solo-header.is-scrolled { background: rgba(5,5,5,.94) !important; }
.solo-header::after { width: clamp(4.5rem,11vw,9rem); height: 2px; }
.solo-header .wp-block-navigation__container { gap: clamp(.8rem,1.45vw,1.65rem); }
.solo-header .wp-block-navigation-item__content { font-size: clamp(.76rem,.85vw,.9rem); letter-spacing: .055em; }
.home .solo-hero-slider { margin-top: 0 !important; }
.solo-hero-slider,.solo-hero-slider .solo-slide { min-height: clamp(680px,88svh,880px) !important; }
.solo-hero-slider .solo-slide::after,
.solo-hero-slider .solo-slide.is-align-right::after {
  background: linear-gradient(90deg,rgba(3,3,3,.9) 0%,rgba(3,3,3,.64) 38%,rgba(3,3,3,.12) 72%,rgba(3,3,3,.22) 100%);
}
.solo-slide-content,
.solo-slide.is-align-right .solo-slide-content {
  width: min(52%,710px);
  margin-right: auto;
  margin-left: 0;
  padding: 8.5rem 1rem 7rem clamp(2rem,3.5vw,4.25rem);
  text-align: left;
}
.solo-slide.is-align-right .solo-slide-content > p { margin-left: 0; }
.solo-slide.is-align-right .solo-slide-content .wp-block-buttons { justify-content: flex-start; }
.solo-slide-content h1,.solo-slide-content h2 {
  max-width: 680px;
  margin-block: 1rem 1.2rem;
  font-size: clamp(4.1rem,7vw,7.25rem) !important;
  line-height: .84;
  letter-spacing: .005em;
}
.solo-slide-content > p {
  max-width: 440px;
  margin-bottom: 1.65rem;
  font-size: clamp(1rem,1.2vw,1.15rem) !important;
  line-height: 1.55;
}
.solo-slide-content .solo-eyebrow {
  display: flex;
  align-items: center;
  gap: 1rem;
  width: min(100%,380px);
  margin: 0;
  color: var(--wp--preset--color--yellow) !important;
}
.solo-slide-content .solo-eyebrow::after { content: ""; flex: 1; height: 1px; background: rgba(255,255,255,.48); }
.solo-slide-content .wp-element-button { min-width: 11.5rem; text-align: center; }
.solo-slider-controls { bottom: 2.1rem; }
.solo-slider-dot { width: 2.25rem; }
.solo-slider-dot.is-active { width: 5rem; }

.solo-training-rail {
  min-height: 88px;
  padding-block: 0;
  border-block: 1px solid rgba(0,0,0,.18);
}
.solo-training-track { min-height: 88px; align-items: stretch; animation-duration: 30s; }
.solo-training-track p {
  display: flex;
  align-items: center;
  gap: 1.25rem;
  min-width: clamp(290px,27vw,430px);
  padding-inline: clamp(1.5rem,3vw,3rem);
  border-right: 1px solid rgba(0,0,0,.16);
  font-size: clamp(1.45rem,2vw,2.15rem);
  letter-spacing: .025em;
}
.solo-training-track p::after { content: none; }
.solo-training-track p span { font-size: .65em; letter-spacing: -.16em; transform: rotate(-35deg); }

.solo-experience-editorial {
  position: relative;
  min-height: clamp(520px,66vw,760px);
  display: grid;
  align-items: center;
  padding-block: clamp(6rem,11vw,10rem);
  color: #0a0a0a;
  overflow: hidden;
}
.solo-experience-editorial::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: repeating-linear-gradient(90deg,transparent 0,transparent calc(25% - 1px),rgba(0,0,0,.055) 25%);
}
.solo-experience-statement { position: relative; z-index: 1; max-width: 1480px !important; }
.solo-experience-statement .solo-eyebrow { color: #111; }
.solo-statement-heading {
  max-width: 1360px;
  margin: clamp(1.8rem,3.5vw,3rem) auto;
  color: #0a0a0a;
  font-family: var(--wp--preset--font-family--system-sans);
  font-size: clamp(2.55rem,4.65vw,5.15rem) !important;
  font-weight: 650;
  line-height: 1.18;
  letter-spacing: -.035em;
  text-wrap: balance;
}
.solo-statement-heading span { color: var(--wp--preset--color--yellow-dark); font-family: var(--wp--preset--font-family--bebas-neue); font-weight: 400; letter-spacing: .015em; }
.solo-statement-proof { margin-top: 2.25rem; color: #343434; font-size: .86rem; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; }

@media (max-width: 1050px) {
  .solo-header .wp-block-navigation__container { gap: .75rem; }
  .solo-header .wp-block-navigation-item__content { font-size: .72rem; }
  .solo-slide-content,.solo-slide.is-align-right .solo-slide-content { width: 60%; }
}
@media (max-width: 781px) {
  .admin-bar .solo-header { top: 46px; }
  .solo-header { background: rgba(5,5,5,.72) !important; }
  .solo-hero-slider,.solo-hero-slider .solo-slide { min-height: max(650px,92svh) !important; }
  .solo-hero-slider .solo-slide::after,.solo-hero-slider .solo-slide.is-align-right::after { background: linear-gradient(0deg,#050505 7%,rgba(5,5,5,.82) 48%,rgba(5,5,5,.08) 88%); }
  .solo-slide-content,.solo-slide.is-align-right .solo-slide-content { width: 100%; padding: 20rem 0 6rem; }
  .solo-slide-content h1,.solo-slide-content h2 { max-width: 9ch; font-size: clamp(3.25rem,13vw,4.85rem) !important; }
  .solo-slide-content > p { max-width: 30ch; line-height: 1.45; }
  .solo-training-rail,.solo-training-track { min-height: 72px; }
  .solo-training-track p { min-width: 250px; font-size: 1.55rem; }
  .solo-experience-editorial { min-height: auto; padding-block: 6rem; }
  .solo-experience-editorial::before { background: repeating-linear-gradient(90deg,transparent 0,transparent calc(50% - 1px),rgba(0,0,0,.045) 50%); }
  .solo-statement-heading { font-size: clamp(2.3rem,9vw,3.6rem) !important; line-height: 1.12; }
  .solo-statement-proof { line-height: 1.8; }
}
@media (max-width: 480px) {
  .solo-slide-content,.solo-slide.is-align-right .solo-slide-content { padding-top: 18rem; }
  .solo-slide-content .solo-eyebrow { width: min(100%,280px); }
  .solo-slider-controls { bottom: 1.25rem; }
  .solo-statement-heading { text-align: left; text-wrap: pretty; }
  .solo-experience-statement .solo-eyebrow,.solo-statement-proof { text-align: left; }
}

/* 2.3 — About story and a restrained site-wide motion language */
.solo-about-hero {
  min-height: clamp(640px,88svh,860px) !important;
  margin-top: 0;
  overflow: hidden;
}
.solo-about-hero .wp-block-cover__image-background {
  object-position: 58% 48%;
  filter: grayscale(.9) contrast(1.12);
  transform: scale(1.02);
}
.solo-about-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg,rgba(4,4,4,.94),rgba(4,4,4,.58) 44%,rgba(4,4,4,.08) 78%),linear-gradient(0deg,rgba(4,4,4,.35),transparent 42%);
}
.solo-about-hero .wp-block-cover__inner-container { position: relative; z-index: 2; }
.solo-about-hero-copy { width: min(54%,780px); margin-left: 0; padding-top: clamp(8rem,14vw,11rem); }
.solo-about-hero-copy h1 {
  max-width: 760px;
  margin-block: .8rem 1.3rem;
  font-size: clamp(4.25rem,7.4vw,7.7rem) !important;
  line-height: .83;
}
.solo-about-hero-copy h1 span { color: var(--wp--preset--color--yellow); }
.solo-about-intro { max-width: 520px; color: #e4e4e4; font-size: clamp(1.05rem,1.45vw,1.3rem); line-height: 1.55; }

.solo-about-story {
  padding-block: clamp(6rem,11vw,11rem);
  color: #0b0b0b;
  overflow: hidden;
}
.solo-about-story-grid { gap: clamp(3rem,8vw,8rem); margin-bottom: clamp(4rem,8vw,8rem); }
.solo-about-story h2 { max-width: 12ch; color: #0b0b0b; font-size: clamp(3.6rem,5.8vw,6.4rem); line-height: .88; }
.solo-about-lead { max-width: 760px; margin-top: 0; color: #111; font-size: clamp(1.55rem,2.5vw,2.5rem); line-height: 1.27; letter-spacing: -.02em; }
.solo-about-body { max-width: 680px; color: #bdbdbd; font-size: clamp(1rem,1.25vw,1.18rem); line-height: 1.7; }
.solo-about-story .solo-about-body { color: #484848; }
.solo-about-image-composition { position: relative; min-height: clamp(600px,65vw,920px); }
.solo-about-image-primary { position: absolute; inset: 0 14% 8% 0; margin: 0; overflow: hidden; }
.solo-about-image-primary img,.solo-about-image-detail img,.solo-about-coach-image img { width: 100%; height: 100%; object-fit: cover; }
.solo-about-image-primary img { object-position: center; }
.solo-about-image-detail { position: absolute; z-index: 2; right: 0; bottom: 0; width: 34%; height: 52%; margin: 0; overflow: hidden; border: 12px solid #fff; }
.solo-about-image-detail img { object-position: 62% center; }
.solo-about-image-caption { position: absolute; z-index: 3; left: 1.5rem; bottom: 1.5rem; margin: 0; padding: .65rem .85rem; background: #fff; color: #111; font-size: .7rem; font-weight: 800; letter-spacing: .16em; }

.solo-about-manifesto { padding-block: clamp(5rem,10vw,9rem); }
.solo-about-manifesto h2 { max-width: 1320px; margin: 1.4rem 0 0; color: #080808; font-family: var(--wp--preset--font-family--system-sans); font-size: clamp(3rem,6vw,6.8rem); font-weight: 700; line-height: 1.02; letter-spacing: -.045em; }
.solo-about-manifesto h2 span { font-family: var(--wp--preset--font-family--bebas-neue); font-weight: 400; letter-spacing: .01em; }

.solo-about-principles { padding-block: clamp(6rem,11vw,10rem); }
.solo-about-principles-grid { gap: clamp(3rem,9vw,9rem); }
.solo-about-principles-grid > .wp-block-column:first-child { position: sticky; top: 9rem; }
.solo-about-principles h2 { max-width: 9ch; font-size: clamp(3.5rem,5.4vw,6rem); line-height: .88; }
.solo-about-principle {
  display: grid;
  grid-template-columns: 4.5rem minmax(0,1fr);
  column-gap: clamp(1.25rem,3vw,3rem);
  padding-block: clamp(2.4rem,4vw,4rem);
  border-top: 1px solid #393939;
}
.solo-about-principle:last-child { border-bottom: 1px solid #393939; }
.solo-about-principle .solo-principle-number { grid-row: 1 / span 2; margin: .2rem 0 0; color: var(--wp--preset--color--yellow); font-family: var(--wp--preset--font-family--bebas-neue); font-size: 1.6rem; }
.solo-about-principle h3 { margin: 0; font-size: clamp(2.4rem,4vw,4.5rem); line-height: .9; }
.solo-about-principle p:last-child { max-width: 620px; margin-bottom: 0; color: #b9b9b9; }

.solo-about-coaching { padding-block: clamp(6rem,10vw,9rem); overflow: hidden; }
.solo-about-coaching-grid { gap: clamp(3rem,8vw,8rem); }
.solo-about-coach-image { height: clamp(560px,62vw,820px); margin: 0; overflow: hidden; }
.solo-about-coach-image img { object-position: 58% center; filter: grayscale(.75) contrast(1.08); }
.solo-about-coaching h2 { max-width: 9ch; font-size: clamp(3.8rem,6vw,6.5rem); line-height: .86; }
.solo-about-coaching .wp-block-buttons { margin-top: 2rem; }

/* Motion starts from a fully usable static state; Web Animations supplies the entrance. */
.solo-mask-reveal,.solo-motion-heading,.solo-motion-image { will-change: auto; }
.solo-motion-image img { transform: scale(1.025); transition: transform 1.1s cubic-bezier(.2,.7,.2,1); }
.solo-motion-image:hover img { transform: scale(1.06); }
.solo-about-principle { transition: padding-left .35s cubic-bezier(.2,.7,.2,1),background-color .35s ease; }
.solo-about-principle:hover { padding-left: 1.25rem; background: #111; }
.solo-about-principle:hover h3 { color: var(--wp--preset--color--yellow); }

@media (max-width: 900px) {
  .solo-about-hero-copy { width: 66%; }
  .solo-about-story-grid,.solo-about-principles-grid,.solo-about-coaching-grid { gap: 3rem; }
}
@media (max-width: 781px) {
  .solo-about-hero { min-height: max(620px,88svh) !important; }
  .solo-about-hero::after { background: linear-gradient(0deg,#050505 5%,rgba(5,5,5,.83) 48%,rgba(5,5,5,.1) 88%); }
  .solo-about-hero .wp-block-cover__image-background { object-position: 58% center; }
  .solo-about-hero-copy { width: 100%; align-self: end; padding: 22rem 0 4.5rem; }
  .solo-about-hero-copy h1 { max-width: 9ch; font-size: clamp(3.7rem,14vw,5.4rem) !important; }
  .solo-about-story-grid,.solo-about-principles-grid,.solo-about-coaching-grid { display: flex; flex-direction: column; }
  .solo-about-story h2,.solo-about-principles h2,.solo-about-coaching h2 { max-width: 11ch; }
  .solo-about-image-composition { min-height: 620px; }
  .solo-about-image-primary { inset: 0 0 18% 0; }
  .solo-about-image-detail { width: 58%; height: 42%; border-width: 8px; }
  .solo-about-principles-grid > .wp-block-column:first-child { position: static; }
  .solo-about-coaching-grid > .wp-block-column:first-child { order: 2; }
  .solo-about-coaching-grid > .wp-block-column:last-child { order: 1; }
  .solo-about-coach-image { height: 520px; }
  .solo-about-principle:hover { padding-left: 0; }
}
@media (max-width: 480px) {
  .solo-about-hero-copy { padding-top: 18rem; }
  .solo-about-story { padding-block: 5.5rem; }
  .solo-about-lead { font-size: 1.55rem; }
  .solo-about-image-composition { min-height: 500px; }
  .solo-about-image-primary { bottom: 14%; }
  .solo-about-image-detail { width: 64%; height: 38%; }
  .solo-about-image-caption { left: .75rem; bottom: .75rem; max-width: 70%; }
  .solo-about-principle { grid-template-columns: 2.75rem minmax(0,1fr); }
  .solo-about-coaching .wp-block-button,.solo-about-coaching .wp-element-button { width: 100%; text-align: center; }
}

@media (prefers-reduced-motion: reduce) {
  .solo-motion-image img,.solo-about-principle { transition: none !important; }
  .solo-motion-image:hover img { transform: none; }
}

/* 2.4 — one visual language, page-specific compositions */
.solo-inner-hero {
  min-height: clamp(590px,76svh,760px) !important;
  margin-top: 0;
  overflow: hidden;
}
.solo-inner-hero .wp-block-cover__image-background {
  inset: 0;
  width: 100%;
  height: 100%;
  object-position: 58% center;
  filter: grayscale(.82) contrast(1.12);
  transform: scale(1.025);
}
.solo-inner-hero::after {
  background: linear-gradient(90deg,rgba(4,4,4,.95) 0%,rgba(4,4,4,.7) 40%,rgba(4,4,4,.12) 76%),linear-gradient(0deg,rgba(4,4,4,.35),transparent 42%);
}
.solo-inner-hero-content {
  width: min(55%,760px);
  max-width: 760px;
  margin-left: 0;
  padding-top: clamp(8rem,13vw,10rem);
}
.solo-inner-hero h1 {
  max-width: 730px;
  margin-block: .8rem 1.15rem;
  font-size: clamp(4rem,6.6vw,6.9rem) !important;
  line-height: .84;
  letter-spacing: .005em;
}
.solo-inner-hero-content .solo-eyebrow {
  display: flex;
  align-items: center;
  gap: 1rem;
  width: min(100%,380px);
}
.solo-inner-hero-content .solo-eyebrow::after { content: ""; flex: 1; height: 1px; background: rgba(255,255,255,.44); }
.solo-inner-hero .solo-hero-copy { max-width: 440px; font-size: clamp(1rem,1.25vw,1.15rem); line-height: 1.55; }

/* Facilities: image-led equipment story. */
.solo-facilities { padding-block: clamp(6rem,10vw,9rem); background: #fff !important; color: #0a0a0a; }
.solo-facilities .solo-split { align-items: flex-start; gap: clamp(3rem,7vw,7rem); }
.solo-facilities h2 { max-width: 8ch; color: #0a0a0a; font-size: clamp(3.8rem,5.7vw,6.3rem) !important; line-height: .86; }
.solo-facilities .has-muted-color { color: #464646 !important; }
.solo-facility-mosaic { grid-template-columns: 1.25fr .75fr; gap: clamp(.75rem,1.5vw,1.4rem); }
.solo-facility-mosaic figure:first-child { margin-top: 4rem; }
.solo-facility-mosaic img { height: clamp(520px,54vw,760px); filter: grayscale(.32) contrast(1.08); }
.solo-facility-mosaic figure:nth-child(2) img { height: clamp(400px,42vw,590px); }
.solo-facility-list { margin-top: clamp(5rem,9vw,8rem); border-color: #cfcfcf; }
.solo-facility-list .wp-block-column { padding: clamp(1.5rem,3vw,3rem); border-color: #cfcfcf; }
.solo-facility-list h3 { color: #0a0a0a; font-size: clamp(2rem,3vw,3.4rem); }
.solo-facility-list p { color: #4a4a4a; }

/* Memberships: a price ledger rather than four repeated cards. */
.solo-membership-section { padding-block: clamp(6rem,10vw,9rem); }
.solo-membership-section .solo-section-heading { max-width: 1080px; margin-bottom: clamp(3rem,6vw,6rem); border-left: 0; padding-left: 0; }
.solo-membership-section .solo-section-heading h2 { max-width: 11ch; font-size: clamp(3.8rem,6vw,6.5rem) !important; }
.solo-membership-grid { display: grid !important; grid-template-columns: 1fr 1fr; gap: 0 !important; border-top: 1px solid #383838; }
.solo-membership-grid > .wp-block-column { min-width: 0; }
.solo-membership-card {
  min-height: 245px;
  padding: clamp(1.75rem,3vw,3rem);
  border: 0;
  border-right: 1px solid #383838;
  border-bottom: 1px solid #383838;
  background: transparent !important;
  box-shadow: none !important;
  transform: none !important;
}
.solo-membership-grid > .wp-block-column:nth-child(2n) .solo-membership-card { border-right: 0; }
.solo-membership-card.is-featured { background: var(--wp--preset--color--yellow) !important; color: #080808; }
.solo-membership-card.is-featured .solo-eyebrow,.solo-membership-card.is-featured .solo-membership-price,.solo-membership-card.is-featured .solo-membership-price span { color: #080808 !important; }
.solo-membership-card h3 { font-size: clamp(2.7rem,4vw,4.5rem); }
.solo-membership-card:hover { padding-left: clamp(2.25rem,4vw,4rem); }
.solo-premium-memberships { padding-block: clamp(6rem,10vw,9rem); }
.solo-premium-grid { gap: 0; border-top: 1px solid #3a3a3a; }
.solo-premium-grid > .wp-block-column { display: flex; }
.solo-premium-card { flex: 1; border: 0; border-right: 1px solid #3a3a3a; border-radius: 0; }

/* Classes: keep photography dominant and the next action singular. */
.solo-classes-stage { padding-top: clamp(6rem,10vw,9rem); }
.solo-classes-stage > .wp-block-buttons { justify-content: center; margin-top: 3rem; }
.solo-class-panel { min-height: clamp(500px,55vw,700px) !important; }

/* Coaching: the method reads as a continuous route. */
.solo-steps { position: relative; gap: 0; margin-top: 4rem; border-block: 1px solid #393939; }
.solo-steps .wp-block-column { min-height: 250px; padding: 2.5rem 2rem; border-top: 0; border-left: 1px solid #393939; }
.solo-steps .wp-block-column:first-child { border-left: 0; }
.solo-steps h3 { max-width: 7ch; color: var(--wp--preset--color--yellow); font-size: clamp(2rem,3vw,3.4rem); }
.solo-steps p { color: #bcbcbc; }

/* Programs: stacked editorial lanes instead of equal tiles. */
.solo-program-grid { display: grid !important; grid-template-columns: 1fr; gap: 0 !important; border-top: 1px solid #393939; }
.solo-program-grid > .wp-block-column { width: 100%; }
.solo-program-card {
  display: grid;
  grid-template-columns: minmax(100px,.3fr) minmax(220px,.75fr) minmax(280px,1fr);
  align-items: start;
  gap: clamp(1.5rem,4vw,4rem);
  min-height: 0;
  padding: clamp(2rem,4vw,4rem) 0;
  border: 0;
  border-bottom: 1px solid #393939;
  background: transparent;
}
.solo-program-card::after { display: none; }
.solo-program-card .solo-card-number,.solo-program-card h3,.solo-program-card p { margin-top: 0; }
.solo-program-card:hover { transform: none; padding-left: 1.25rem; background: #111; box-shadow: none; }
.solo-yellow-band { padding-block: clamp(4rem,7vw,6rem); }

/* Gallery: a full-width visual field with controlled irregularity. */
.solo-gallery-section { padding-block: clamp(6rem,10vw,9rem); background: #fff !important; color: #0a0a0a; }
.solo-gallery-section .solo-section-heading { max-width: 1060px; border-left: 0; padding-left: 0; }
.solo-gallery-section .solo-section-heading h2 { color: #0a0a0a; font-size: clamp(3.8rem,6vw,6.6rem) !important; }
.solo-editorial-gallery { grid-template-rows: clamp(310px,34vw,500px) clamp(270px,30vw,430px); gap: clamp(.6rem,1vw,1rem) !important; }
.solo-editorial-gallery img { filter: grayscale(.45) contrast(1.08); }
.solo-editorial-gallery figure:hover img { filter: grayscale(0) contrast(1.06); }

/* Contact: one calm conversation surface. */
.solo-contact-section { padding-block: clamp(6rem,10vw,9rem); background: #fff; color: #0a0a0a; }
.solo-contact-grid { gap: 0; border: 1px solid #d9d9d9; }
.solo-contact-grid > .wp-block-column:first-child { padding: clamp(2rem,5vw,5rem); }
.solo-contact-section h2,.solo-contact-section h3,.solo-contact-section a { color: #0a0a0a; }
.solo-contact-section .has-muted-color { color: #4b4b4b !important; }
.solo-contact-card { border-color: #cfcfcf; }
.solo-form-panel { min-height: 100%; padding: clamp(2rem,5vw,5rem); border: 0; background: #0a0a0a; color: #fff; }
.solo-form-panel h2 { color: #fff; font-size: clamp(3.4rem,5vw,5.8rem); line-height: .86; }
.solo-form-panel input,.solo-form-panel select,.solo-form-panel textarea { border-color: #4a4a4a; background: #151515; color: #fff; }

/* Articles: first story leads; the rest read like a journal index. */
.solo-articles-section { padding-block: clamp(6rem,10vw,9rem); }
.solo-articles-section .solo-section-heading { max-width: 1060px; border-left: 0; padding-left: 0; }
.solo-articles-section .solo-section-heading h2 { max-width: 11ch; font-size: clamp(3.8rem,6vw,6.5rem) !important; }
.solo-articles-query .wp-block-post-template { display: grid !important; grid-template-columns: 1.35fr .65fr; gap: 0 !important; border-top: 1px solid #383838; }
.solo-articles-query .wp-block-post { padding: clamp(1.5rem,3vw,3rem); border-right: 1px solid #383838; border-bottom: 1px solid #383838; }
.solo-articles-query .wp-block-post:first-child { grid-row: span 2; }
.solo-articles-query .wp-block-post:nth-child(2n) { border-right: 0; }
.solo-articles-query .wp-block-post:first-child .wp-block-post-title { font-size: clamp(3rem,5vw,5.5rem) !important; line-height: .9; }
.solo-articles-query .wp-block-post:not(:first-child) .wp-block-post-featured-image { float: left; width: 34%; margin: 0 1.25rem .75rem 0; }
.solo-articles-query .wp-block-post:not(:first-child) .wp-block-post-excerpt { display: none; }

/* Repeated final CTA behaves like a transition into the footer, not another content card. */
.solo-page-main > .wp-block-post-content > .solo-section.has-yellow-background-color:last-child { padding-block: clamp(3.5rem,6vw,5.5rem); }
.solo-page-main > .wp-block-post-content > .solo-section.has-yellow-background-color:last-child h2 { max-width: 11ch; font-size: clamp(3rem,5vw,5.4rem) !important; }

@media (max-width: 900px) {
  .solo-inner-hero-content { width: 64%; }
  .solo-program-card { grid-template-columns: 80px .7fr 1fr; }
}
@media (max-width: 781px) {
  .solo-inner-hero { min-height: max(600px,82svh) !important; }
  .solo-inner-hero .wp-block-cover__image-background { width: 100%; object-position: 62% center; }
  .solo-inner-hero::after { background: linear-gradient(0deg,#050505 6%,rgba(5,5,5,.84) 50%,rgba(5,5,5,.08) 88%); }
  .solo-inner-hero-content { width: 100%; align-self: end; padding: 20rem 0 4.5rem; }
  .solo-inner-hero h1 { max-width: 10ch; font-size: clamp(3.5rem,13vw,5rem) !important; }
  .solo-facilities { padding-block: 5.5rem; }
  .solo-facility-mosaic figure:first-child { margin-top: 0; }
  .solo-membership-grid { grid-template-columns: 1fr; }
  .solo-membership-grid .solo-membership-card { border-right: 0; }
  .solo-program-card { grid-template-columns: 3rem 1fr; }
  .solo-program-card > p:not(.solo-card-number),.solo-program-card > ul { grid-column: 2; }
  .solo-steps { display: grid; grid-template-columns: 1fr 1fr; }
  .solo-steps .wp-block-column:nth-child(3) { border-left: 0; border-top: 1px solid #393939; }
  .solo-steps .wp-block-column:nth-child(4) { border-top: 1px solid #393939; }
  .solo-contact-grid { border: 0; }
  .solo-contact-grid > .wp-block-column:first-child,.solo-form-panel { padding: 2rem; }
  .solo-articles-query .wp-block-post-template { grid-template-columns: 1fr; }
  .solo-articles-query .wp-block-post:first-child { grid-row: auto; }
  .solo-articles-query .wp-block-post { border-right: 0; }
}
@media (max-width: 480px) {
  .solo-inner-hero-content { padding-top: 17rem; }
  .solo-facility-mosaic { grid-template-columns: 1fr; }
  .solo-facility-mosaic img,.solo-facility-mosaic figure:nth-child(2) img { height: 340px; }
  .solo-steps { grid-template-columns: 1fr; }
  .solo-steps .wp-block-column { min-height: 0; border-left: 0; border-top: 1px solid #393939; }
  .solo-steps .wp-block-column:first-child { border-top: 0; }
  .solo-program-card { grid-template-columns: 2.25rem 1fr; }
  .solo-editorial-gallery { grid-template-columns: 1fr; grid-template-rows: repeat(4,300px); }
  .solo-editorial-gallery figure:first-child,.solo-editorial-gallery figure:last-child { grid-column: auto; }
  .solo-articles-query .wp-block-post:not(:first-child) .wp-block-post-featured-image { width: 38%; }
}

/* 2.5 — dark continuity and an editorial contact journey. */
.solo-page-main,
.solo-page-main > .wp-block-post-content,
.solo-about-story,
.solo-experience-editorial,
.solo-facilities,
.solo-gallery-section,
.solo-contact-section {
  background: #080808 !important;
  color: #f7f7f4 !important;
}
.solo-about-story h2,
.solo-about-story h3,
.solo-experience-editorial h2,
.solo-facilities h2,
.solo-facilities h3,
.solo-gallery-section h2,
.solo-contact-section h2,
.solo-contact-section h3,
.solo-contact-section a { color: #f7f7f4 !important; }
.solo-about-story .solo-about-body,
.solo-facilities .has-muted-color,
.solo-facility-list p,
.solo-contact-section .has-muted-color { color: #aaa !important; }
.solo-about-image-detail { border-color: #080808; }
.solo-about-image-caption { background: #080808; color: var(--wp--preset--color--yellow); }
.solo-about-manifesto {
  background: #101010 !important;
  color: #f7f7f4 !important;
  border-block: 1px solid #2d2d2d;
}
.solo-about-manifesto h2 { color: #f7f7f4; }
.solo-about-manifesto h2 span { color: var(--wp--preset--color--yellow); }
.solo-facility-list,
.solo-facility-list .wp-block-column { border-color: #343434; }
.solo-experience-editorial .solo-statement-heading { color: #f7f7f4; }
.solo-experience-editorial .solo-statement-proof { color: #a9a9a9; }

.solo-contact-overview { padding-block: clamp(5rem,8vw,7.5rem); }
.solo-contact-facts { gap: 0; border-top: 1px solid #353535; }
.solo-contact-facts > .wp-block-column {
  min-width: 0;
  padding: clamp(2rem,3.5vw,3.5rem) clamp(1.25rem,2.8vw,2.8rem);
  border-right: 1px solid #353535;
}
.solo-contact-facts > .wp-block-column:first-child { padding-left: 0; }
.solo-contact-facts > .wp-block-column:last-child { padding-right: 0; border-right: 0; }
.solo-contact-facts h2 {
  max-width: 100%;
  margin-block: .8rem 1rem;
  color: #f7f7f4;
  font-size: clamp(2rem,3vw,3.25rem);
  line-height: .95;
  overflow-wrap: anywhere;
}
.solo-contact-facts a { color: inherit; text-decoration: none; }
.solo-contact-facts p:last-child { color: #aaa; }
.solo-contact-facts p:last-child a { color: #d8d8d8; border-bottom: 1px solid #555; }
.solo-contact-facts p:last-child a:hover { color: var(--wp--preset--color--yellow); border-color: currentColor; }

.solo-contact-place { min-height: clamp(500px,66vw,760px) !important; }
.solo-contact-place .wp-block-cover__image-background {
  object-position: center 58%;
  filter: grayscale(.72) contrast(1.12);
  transition: transform 1.1s cubic-bezier(.2,.7,.2,1),filter .45s ease;
}
.solo-contact-place:hover .wp-block-cover__image-background { transform: scale(1.025); filter: grayscale(.28) contrast(1.08); }
.solo-contact-place .wp-block-cover__inner-container { align-self: stretch; display: flex; }
.solo-contact-place .wp-block-cover__inner-container > .wp-block-group { align-self: flex-end; width: 100%; padding-bottom: clamp(2rem,5vw,4rem); }
.solo-contact-place-title { max-width: 8ch; margin: 0; font-size: clamp(4rem,8vw,8rem); line-height: .8; }
.solo-contact-place-label { margin: 0 0 .55rem; color: var(--wp--preset--color--yellow); font-size: .75rem; font-weight: 800; letter-spacing: .16em; }

.solo-contact-conversation { padding-block: clamp(6rem,10vw,10rem); }
.solo-contact-conversation-grid { gap: clamp(3rem,8vw,8rem); }
.solo-contact-form-heading { max-width: 8ch; margin-block: 1rem 1.5rem; font-size: clamp(3.5rem,6vw,6.5rem); line-height: .86; }
.solo-contact-form-heading span { color: var(--wp--preset--color--yellow); }
.solo-contact-conversation .solo-form-panel { min-height: 0; padding: 0; background: transparent; }
.solo-contact-conversation .solo-form-panel label { color: #f7f7f4; }
.solo-contact-conversation .solo-form-panel input,
.solo-contact-conversation .solo-form-panel select,
.solo-contact-conversation .solo-form-panel textarea { border: 0; border-bottom: 1px solid #555; background: transparent; }
.solo-contact-conversation .solo-form-panel input:focus,
.solo-contact-conversation .solo-form-panel select:focus,
.solo-contact-conversation .solo-form-panel textarea:focus { border-color: var(--wp--preset--color--yellow); outline: 0; }

@media (max-width: 781px) {
  .solo-contact-facts { display: block; }
  .solo-contact-facts > .wp-block-column { padding: 2rem 0; border-right: 0; border-bottom: 1px solid #353535; }
  .solo-contact-conversation-grid { display: flex; flex-direction: column; }
  .solo-contact-place .wp-block-cover__inner-container > .wp-block-group { align-items: flex-start; }
}

@media (max-width: 480px) {
  .solo-contact-overview { padding-block: 4rem; }
  .solo-contact-place { min-height: 480px !important; }
  .solo-contact-place-title { font-size: clamp(3.8rem,18vw,5.4rem); }
  .solo-contact-conversation { padding-block: 5rem; }
  .solo-contact-form-heading { font-size: clamp(3.25rem,15vw,4.6rem); }
}

@media (prefers-reduced-motion: reduce) {
  .solo-contact-place .wp-block-cover__image-background { transition: none; }
  .solo-contact-place:hover .wp-block-cover__image-background { transform: none; }
}

/* 2.6 — wider typography, membership ledger, and About purpose cards. */
.solo-inner-hero-content { width: min(72%,980px); max-width: 980px; }
.solo-inner-hero h1 {
  max-width: 14ch;
  font-size: clamp(3.25rem,5.2vw,5.6rem) !important;
  line-height: .9;
}
.solo-inner-hero .solo-hero-copy { max-width: 620px; }
.solo-section-heading { width: 100%; max-width: 1180px; }
.solo-section-heading h2 {
  max-width: 18ch;
  font-size: clamp(2.8rem,4.6vw,5rem) !important;
  line-height: .94;
}
.solo-facilities h2,
.solo-membership-section .solo-section-heading h2,
.solo-gallery-section .solo-section-heading h2,
.solo-articles-section .solo-section-heading h2 {
  max-width: 18ch;
  font-size: clamp(2.8rem,4.6vw,5rem) !important;
  line-height: .94;
}
.solo-articles-section .solo-section-heading { width: 100%; max-width: none; }
.solo-articles-section .solo-section-heading h2 { width: 100%; max-width: none; text-wrap: pretty; }

.solo-about-image-composition { display: none !important; }
.solo-about-story { padding-bottom: clamp(4rem,7vw,6rem); }
.solo-about-purpose { padding-block: 0 clamp(6rem,10vw,9rem); }
.solo-purpose-grid { gap: 0; border-top: 1px solid #393939; border-bottom: 1px solid #393939; }
.solo-purpose-grid > .wp-block-column { display: flex; min-width: 0; }
.solo-purpose-grid > .wp-block-column + .wp-block-column { border-left: 1px solid #393939; }
.solo-purpose-panel {
  position: relative;
  flex: 1;
  min-height: 430px;
  padding: clamp(2rem,4vw,4.5rem);
  overflow: hidden;
  background: #0d0d0d;
  transition: background-color .35s ease;
}
.solo-purpose-panel:hover { background: #151515; }
.solo-purpose-number {
  position: absolute;
  right: clamp(1.25rem,3vw,3rem);
  top: clamp(1rem,2vw,2rem);
  margin: 0;
  color: #272727;
  font-family: var(--wp--preset--font-family--bebas-neue);
  font-size: clamp(5rem,9vw,9rem);
  line-height: 1;
}
.solo-purpose-panel .solo-eyebrow { position: relative; margin-top: clamp(5rem,8vw,8rem); }
.solo-purpose-panel h2 { position: relative; max-width: 13ch; font-size: clamp(2.7rem,4vw,4.5rem); line-height: .92; }
.solo-purpose-panel p:last-child { position: relative; max-width: 570px; color: #aaa; font-size: 1.05rem; line-height: 1.75; }

.solo-membership-ledger,
.solo-membership-page-ledger { padding-block: clamp(6rem,10vw,9rem); }
.solo-membership-ledger-intro,
.solo-membership-page-intro { gap: clamp(2.5rem,8vw,8rem); margin-bottom: clamp(3rem,6vw,6rem); }
.solo-ledger-heading { max-width: 13ch; margin-block: .8rem 0; font-size: clamp(3.2rem,5.5vw,5.8rem); line-height: .88; }
.solo-plan-ledger { border-top: 1px solid #414141; }
.solo-plan-row,
.solo-support-row {
  display: grid !important;
  grid-template-columns: minmax(120px,.45fr) minmax(240px,1fr) auto;
  align-items: center;
  gap: clamp(1.5rem,4vw,4rem);
  min-height: 132px;
  padding: 1.3rem clamp(.25rem,1vw,1rem);
  border-bottom: 1px solid #414141;
  transition: padding-left .3s ease,background-color .3s ease;
}
.solo-plan-row:hover,
.solo-support-row:hover { padding-left: clamp(1rem,2.5vw,2.5rem); background: #121212; }
.solo-plan-row.is-best { box-shadow: inset 5px 0 0 var(--wp--preset--color--yellow); }
.solo-plan-index { margin: 0; color: var(--wp--preset--color--yellow); font-size: .72rem; font-weight: 900; letter-spacing: .13em; }
.solo-plan-row h3,
.solo-support-row h3 { margin: 0; font-size: clamp(2.5rem,4.2vw,4.6rem); line-height: .9; }
.solo-plan-price { margin: 0; color: #f7f7f4; font-family: var(--wp--preset--font-family--bebas-neue); font-size: clamp(2.8rem,4.5vw,5rem); line-height: .85; white-space: nowrap; }
.solo-plan-price span { color: var(--wp--preset--color--yellow); font-family: var(--wp--preset--font-family--inter); font-size: .72rem; font-weight: 900; letter-spacing: .1em; }
.solo-membership-ledger > .wp-block-buttons,
.solo-membership-page-ledger > .wp-block-buttons { margin-top: clamp(2rem,4vw,3.5rem); }
.solo-membership-support { padding-block: clamp(6rem,9vw,8rem); }
.solo-membership-support-head { max-width: 1100px; margin: 0 0 clamp(3rem,6vw,5rem); }
.solo-membership-support-head h2 { max-width: 18ch; font-size: clamp(2.8rem,4.6vw,5rem); line-height: .94; }
.solo-support-ledger { border-top: 1px solid #414141; }
.solo-support-prices { margin: 0; text-align: right; }
.solo-support-prices p { margin: .3rem 0; color: #aaa; white-space: nowrap; }
.solo-support-prices strong { color: #f7f7f4; font-size: 1.2rem; }

@media (max-width: 900px) {
  .solo-inner-hero-content { width: 72%; }
  .solo-plan-row,.solo-support-row { grid-template-columns: 110px 1fr auto; }
}

@media (max-width: 781px) {
  .solo-inner-hero-content { width: 100%; }
  .solo-inner-hero h1 { max-width: 12ch; font-size: clamp(3rem,11vw,4.6rem) !important; }
  .solo-section-heading h2,
  .solo-facilities h2,
  .solo-membership-section .solo-section-heading h2,
  .solo-gallery-section .solo-section-heading h2,
  .solo-articles-section .solo-section-heading h2 { max-width: 15ch; font-size: clamp(2.6rem,10vw,4rem) !important; }
  .solo-purpose-grid { display: block; }
  .solo-purpose-grid > .wp-block-column + .wp-block-column { border-left: 0; border-top: 1px solid #393939; }
  .solo-purpose-panel { min-height: 360px; }
  .solo-membership-ledger-intro,.solo-membership-page-intro { display: block; }
  .solo-ledger-heading { margin-bottom: 2rem; font-size: clamp(3rem,12vw,4.7rem); }
  .solo-plan-row,.solo-support-row { grid-template-columns: 1fr auto; gap: .6rem 1.25rem; min-height: 118px; }
  .solo-plan-index { grid-column: 1 / -1; }
  .solo-plan-row h3,.solo-support-row h3 { font-size: clamp(2.25rem,9vw,3.4rem); }
  .solo-plan-price { font-size: clamp(2.5rem,10vw,3.7rem); }
  .solo-support-prices { text-align: left; }
}

@media (max-width: 480px) {
  .solo-inner-hero h1 { font-size: clamp(2.8rem,13vw,4rem) !important; }
  .solo-purpose-panel { min-height: 330px; padding: 1.75rem; }
  .solo-purpose-panel .solo-eyebrow { margin-top: 4.5rem; }
  .solo-plan-row,.solo-support-row { padding-block: 1.5rem; }
  .solo-plan-row h3,.solo-support-row h3 { font-size: 2.25rem; }
  .solo-plan-price { font-size: 2.65rem; }
  .solo-support-row { grid-template-columns: 1fr; }
  .solo-support-prices { grid-column: 1; }
}

/* 2.6.1 — requested layout refinements. */
.solo-coach-copy { width: min(80%,1200px); }
.solo-about-principles h2 { max-width: 15ch; }
.solo-about-coaching h2 { max-width: 13ch; }
.solo-contact-form-heading { max-width: 15ch; }
.solo-membership-page-intro > .wp-block-column:first-child { flex-basis: 35% !important; }

@media (max-width: 781px) {
  .solo-coach-copy { width: 100%; }
  .solo-membership-page-intro > .wp-block-column:first-child { flex-basis: auto !important; }
}

/* 2.7 — one wide editorial system with varied section compositions. */
:root {
  --solo-wide: 1800px;
  --solo-reading: 1120px;
  --solo-gutter: clamp(1rem,3vw,3.75rem);
  --solo-rule: #353535;
  --solo-section-space: clamp(5.5rem,8.5vw,9rem);
  --solo-motion: cubic-bezier(.2,.7,.2,1);
}

html { overflow-x: clip; }
.wp-site-blocks { --wp--style--global--wide-size: var(--solo-wide); --wp--style--global--content-size: var(--solo-reading); }
.solo-header > .alignwide,
.solo-footer .alignwide,
.solo-section > .alignwide,
.solo-section > .wp-block-columns.alignwide,
.solo-page-main .solo-inner-hero-content.alignwide,
.solo-about-hero-copy.alignwide,
.solo-contact-overview > .alignwide,
.solo-contact-conversation > .alignwide,
.solo-membership-page-ledger > .alignwide,
.solo-membership-support > .alignwide {
  width: min(calc(100% - (var(--solo-gutter) * 2)),var(--solo-wide));
  max-width: var(--solo-wide) !important;
  margin-inline: auto;
}

.solo-section { padding-block: var(--solo-section-space); }
.solo-section-heading,
.solo-stage-heading,
.solo-membership-ledger-intro,
.solo-membership-page-intro,
.solo-membership-support-head { width: 100%; max-width: none !important; }
.solo-section-heading h2,
.solo-stage-heading h2,
.solo-membership-support-head h2 {
  font-size: clamp(3rem,4.5vw,5.25rem) !important;
  line-height: .92;
  letter-spacing: .01em;
}
.solo-eyebrow { font-size: clamp(.7rem,.72vw,.8rem); line-height: 1.35; }
.solo-section p:not(.solo-eyebrow):not(.solo-plan-price):not(.solo-membership-price) { text-wrap: pretty; }
.solo-section-heading > p:last-child,
.solo-stage-heading > p:last-child,
.solo-membership-ledger-intro p:last-child,
.solo-membership-page-intro p:last-child { max-width: 68ch; }

/* The active photograph moves closer during its three-second slide window. */
.solo-hero-slider .solo-slide .wp-block-cover__image-background {
  transform: scale(1.01);
  animation: none;
  backface-visibility: hidden;
}
.solo-hero-slider .solo-slide.is-active .wp-block-cover__image-background {
  animation: solo-hero-soft-zoom 3s var(--solo-motion) both;
}
@keyframes solo-hero-soft-zoom {
  from { transform: scale(1.01); }
  to { transform: scale(1.055); }
}

@media (max-width: 781px) {
  :root { --solo-gutter: clamp(1rem,5vw,1.5rem); --solo-section-space: clamp(4.5rem,14vw,6.5rem); }
  .solo-section-heading h2,
  .solo-stage-heading h2,
  .solo-membership-support-head h2 { font-size: clamp(2.6rem,10vw,4rem) !important; }
}

@media (prefers-reduced-motion: reduce) {
  .solo-hero-slider .solo-slide.is-active .wp-block-cover__image-background { animation: none; transform: none; }
}

/* 2.8 — home membership proportion and shared heading measure. */
.solo-membership-ledger-intro > .wp-block-column:first-child { flex-basis: 45% !important; }
.solo-ledger-heading { max-width: 15ch; }

@media (max-width: 781px) {
  .solo-membership-ledger-intro > .wp-block-column:first-child { flex-basis: auto !important; }
}

/* 2.8.1 — transparent header until the page starts moving. */
.solo-header {
  background: transparent !important;
  box-shadow: none;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
  transition: background-color .3s ease,backdrop-filter .3s ease,box-shadow .3s ease,border-color .3s ease;
}
.solo-header.is-scrolled {
  border-bottom-color: rgba(255,255,255,.1) !important;
  background: rgba(7,7,7,.78) !important;
  box-shadow: 0 14px 36px rgba(0,0,0,.28);
  backdrop-filter: blur(14px) saturate(1.15);
  -webkit-backdrop-filter: blur(14px) saturate(1.15);
}

@media (max-width: 781px) {
  .solo-header { background: transparent !important; }
  .solo-header.is-scrolled { background: rgba(7,7,7,.84) !important; }
}
/* Sections remain readable without JavaScript; motion is enabled only after observers are ready. */
.solo-motion-enabled .solo-section-reveal {
	opacity: 0;
	transform: translateY(42px);
	transition: opacity 800ms var(--solo-motion, cubic-bezier(.2,.7,.2,1)), transform 800ms var(--solo-motion, cubic-bezier(.2,.7,.2,1));
}

.solo-motion-enabled .solo-section-reveal.is-visible {
	opacity: 1;
	transform: translateY(0);
}

.solo-articles-query .wp-block-post:not(:first-child) .wp-block-post-featured-image {
	width: 100%;
}

.is-layout-constrained > .alignwide {
	max-width: 1400px !important;
}

.solo-section {
	padding-block: 50px;
}

.solo-coach-copy {
	width: min(100%, 1600px);
}

.solo-steps h3 {
	max-width: 13ch;
}

.solo-contact-place-title {
	max-width: 13ch;
}

.solo-lead-form .solo-consent {
	display: grid;
	grid-template-columns: auto 1fr;
}

.solo-lead-form label {
	display: inline;
}

@media (max-width: 781px) {
	.solo-header:has(.wp-block-navigation__responsive-container.is-menu-open) {
		z-index: 100000 !important;
		backdrop-filter: none !important;
		-webkit-backdrop-filter: none !important;
	}

	.solo-header .wp-block-navigation__responsive-container.is-menu-open {
		position: fixed !important;
		inset: 0 !important;
		z-index: 100000 !important;
		width: 100vw !important;
		height: 100dvh !important;
		min-height: 100dvh !important;
		overflow-y: auto !important;
		background: #070707 !important;
	}

	.solo-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
		box-sizing: border-box;
		width: 100% !important;
		max-width: 100% !important;
		height: 100% !important;
		padding: 3.75rem 1.5rem 1.5rem !important;
		align-items: flex-start !important;
		justify-content: flex-start !important;
		overflow-y: visible;
	}

	.solo-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container {
		width: 100% !important;
		max-width: 100% !important;
		align-items: flex-start !important;
		justify-content: flex-start !important;
		gap: 0 !important;
	}

	.solo-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item {
		width: 100%;
		border-bottom: 1px solid rgba(255, 255, 255, .13);
	}

	.solo-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content {
		display: block;
		width: 100%;
		padding: .8rem 0;
		text-align: left;
		font-size: clamp(1.4rem, 7vw, 2rem);
	}

	.solo-header .wp-block-navigation__responsive-container-close {
		top: .85rem !important;
		right: 1.25rem !important;
	}

	.solo-class-panels {
		display: grid !important;
		grid-template-columns: minmax(0, 1fr) !important;
	}

	.solo-class-panels > .solo-class-panel {
		width: 100% !important;
		max-width: none !important;
		flex-basis: auto !important;
	}
}

/* Coach scene: establish the image, then reveal the message in reading order. */
.gc-services-menu > .wp-block-navigation__submenu-container {
	left: 50% !important;
	width: min(760px, calc(100vw - 3rem)) !important;
	padding: 1rem !important;
	transform: translateX(-50%) translateY(14px);
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: .55rem;
	border: 1px solid rgba(255,255,255,.1) !important;
	border-radius: 24px !important;
	background: rgba(10,10,10,.96) !important;
	box-shadow: 0 28px 70px rgba(0,0,0,.46) !important;
	backdrop-filter: blur(20px);
	-webkit-backdrop-filter: blur(20px);
}
.gc-services-menu:hover > .wp-block-navigation__submenu-container,
.gc-services-menu:focus-within > .wp-block-navigation__submenu-container {
	display: grid !important;
	transform: translateX(-50%) translateY(0);
}
.gc-services-menu .wp-block-navigation__submenu-container > .wp-block-navigation-item {
	border-radius: 17px;
	background: #151515;
	transition: background .25s ease, transform .25s ease;
}
.gc-services-menu .wp-block-navigation__submenu-container > .wp-block-navigation-item:first-child {
	grid-column: 1 / -1;
	background: var(--wp--preset--color--yellow);
}
.gc-services-menu .wp-block-navigation__submenu-container > .wp-block-navigation-item:hover {
	background: #202020;
	transform: translateY(-2px);
}
.gc-services-menu .wp-block-navigation__submenu-container > .wp-block-navigation-item:first-child:hover { background: #fff72e; }
.gc-services-menu .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
	display: flex;
	min-height: 78px;
	padding: 1rem 1.2rem !important;
	flex-direction: column;
	align-items: flex-start;
	justify-content: center;
	gap: .3rem;
	font-size: .95rem !important;
	font-weight: 800;
}
.gc-services-menu .wp-block-navigation__submenu-container .wp-block-navigation-item__description {
	color: #939393;
	font-size: .72rem;
	font-weight: 500;
	letter-spacing: 0;
}
.gc-services-menu .wp-block-navigation__submenu-container > .wp-block-navigation-item:first-child .wp-block-navigation-item__content,
.gc-services-menu .wp-block-navigation__submenu-container > .wp-block-navigation-item:first-child .wp-block-navigation-item__description { color: #050505 !important; }

@media (max-width: 781px) {
	.gc-services-menu > .wp-block-navigation__submenu-container,
	.gc-services-menu:hover > .wp-block-navigation__submenu-container,
	.gc-services-menu:focus-within > .wp-block-navigation__submenu-container {
		position: static !important;
		display: grid !important;
		width: 100% !important;
		padding: 0 0 .8rem 1rem !important;
		transform: none !important;
		grid-template-columns: 1fr;
		border: 0 !important;
		border-radius: 0 !important;
		background: transparent !important;
		box-shadow: none !important;
	}
	.gc-services-menu .wp-block-navigation__submenu-icon { margin-left: auto; }
	.gc-services-menu .wp-block-navigation__submenu-container > .wp-block-navigation-item,
	.gc-services-menu .wp-block-navigation__submenu-container > .wp-block-navigation-item:first-child { grid-column: auto; border: 0; background: transparent; }
	.gc-services-menu .wp-block-navigation__submenu-container .wp-block-navigation-item__content { min-height: 0;padding: .45rem 0 !important;font-size: 1rem !important; }
	.gc-services-menu .wp-block-navigation__submenu-container .wp-block-navigation-item__description { display: none; }
	.gc-services-menu .wp-block-navigation__submenu-container > .wp-block-navigation-item:first-child .wp-block-navigation-item__content { color: var(--wp--preset--color--yellow) !important; }
}

.solo-motion-enabled .solo-coach-scene.solo-section-reveal {
	opacity: 1;
	transform: none;
}

.solo-motion-enabled .solo-coach-scene.solo-section-reveal .solo-coach-image,
.solo-motion-enabled .solo-coach-scene.solo-section-reveal .solo-coach-copy > * {
	opacity: 0;
	transform: translateY(30px);
	transition: opacity 720ms var(--solo-motion, cubic-bezier(.2,.7,.2,1)), transform 720ms var(--solo-motion, cubic-bezier(.2,.7,.2,1));
}

.solo-motion-enabled .solo-coach-scene.solo-section-reveal .solo-coach-image {
	transform: scale(1.025);
}

.solo-motion-enabled .solo-coach-scene.solo-section-reveal.is-visible .solo-coach-image,
.solo-motion-enabled .solo-coach-scene.solo-section-reveal.is-visible .solo-coach-copy > * {
	opacity: 1;
	transform: none;
}

.solo-motion-enabled .solo-coach-scene.is-visible .solo-coach-copy > :nth-child(1) { transition-delay: 120ms; }
.solo-motion-enabled .solo-coach-scene.is-visible .solo-coach-copy > :nth-child(2) { transition-delay: 220ms; }
.solo-motion-enabled .solo-coach-scene.is-visible .solo-coach-copy > :nth-child(3) { transition-delay: 320ms; }
.solo-motion-enabled .solo-coach-scene.is-visible .solo-coach-copy > :nth-child(4) { transition-delay: 420ms; }

@media (prefers-reduced-motion: reduce) {
	.solo-motion-enabled .solo-coach-scene.solo-section-reveal .solo-coach-image,
	.solo-motion-enabled .solo-coach-scene.solo-section-reveal .solo-coach-copy > * {
		opacity: 1;
		transform: none;
		transition: none;
	}
}

@media (prefers-reduced-motion: reduce) {
	.solo-motion-enabled .solo-section-reveal,
	.solo-motion-enabled .solo-section-reveal.is-visible {
		opacity: 1;
		transform: none;
		transition: none;
	}
}
