/* Shared visual foundation. Brand, spacing and interactive states across draft page types. */
body.fvx-ready {
 --fvx-page-width:1280px; --fvx-gutter:clamp(20px,5.56vw,80px);
 --fvx-surface:#f6f7f6; --fvx-card:#fff; --fvx-text:#151815;
 --fvx-muted:#535c56; --fvx-border:#dce1dd; --fvx-radius:16px;
 --fvx-section-space:clamp(40px,5.56vw,80px);
 font-family:Montserrat,Arial,sans-serif;font-size:16px;line-height:1.6;color:var(--fvx-text);
}
body.fvx-ready :where(main,section,article,form) {min-width:0;}
body.fvx-ready :where(p,li,label,input,textarea,select) {overflow-wrap:break-word;}
body.fvx-ready :where(a,button,input,textarea,select,summary):focus-visible {
 outline:3px solid #176439;outline-offset:4px;
}
body.fvx-tennis :where(a,button,input,textarea,select,summary):focus-visible {outline-color:#6b5500;}
body.fvx-ready :where(h1,h2,h3,h4) {text-wrap:balance;}
body.fvx-ready :where(p) {text-wrap:pretty;}
body.fvx-ready :where(.fvx-home-container,.fvx-catalog-container,.fvx-events-container,.fvx-event-container) {
 width:calc(100% - 2 * var(--fvx-gutter));max-width:var(--fvx-page-width);margin-inline:auto;
}
/* Legacy information pages use a quiet, solid introduction instead of stacked image overlays. */
body.fvx-ready .page-header {
 position:relative;background:var(--fvx-surface)!important;color:var(--fvx-text);
 padding:0!important;min-height:0!important;margin:0!important;isolation:isolate;
}
body.fvx-ready .page-header::before,body.fvx-ready .page-header::after {content:none!important;}
body.fvx-ready .page-header>.container {
 width:calc(100% - 2 * var(--fvx-gutter));max-width:var(--fvx-page-width)!important;
 margin:0 auto!important;padding:clamp(40px,5vw,72px) 0!important;
 display:flex;flex-direction:column;align-items:flex-start;gap:20px;
}
body.fvx-ready .page-header .page-title {
 color:var(--fvx-text)!important;font:400 clamp(40px,5vw,72px)/1.08 Anton,sans-serif;
 text-align:left;margin:0!important;letter-spacing:0;text-transform:uppercase;
}
body.fvx-ready .page-header .page-subtitle {
 max-width:65ch;font:400 17px/1.65 Montserrat,sans-serif;color:var(--fvx-muted);text-align:left;
}
body.fvx-ready .page-header .page-subtitle p {margin:0;}
body.fvx-ready .page-header .page-cta {margin:4px 0 0;}
body.fvx-ready .page-header .btn--primary {
 display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 24px;
 border:1px solid transparent;border-radius:999px;background:var(--fvx-accent);color:#111;
 font:600 15px/22px Montserrat,sans-serif;text-decoration:none;transform:none;
}
body.fvx-ready.page-template-page-template-about-us .about-us {padding:var(--fvx-section-space) 0;background:#fff;}
body.fvx-ready.page-template-page-template-about-us .about-container {
 width:calc(100% - 2 * var(--fvx-gutter));max-width:var(--fvx-page-width);margin-inline:auto;
 display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:clamp(28px,4vw,64px);align-items:start;
}
body.fvx-ready.page-template-page-template-about-us .about-image {border-radius:var(--fvx-radius);overflow:hidden;position:sticky;top:136px;}
body.fvx-ready.page-template-page-template-about-us .about-image::before,
body.fvx-ready.page-template-page-template-about-us .about-image::after {content:none;}
body.fvx-ready.page-template-page-template-about-us .about-content {min-width:0;max-width:65ch;}
body.fvx-ready.page-template-page-template-about-us .about-content h2,
body.fvx-ready.page-template-page-template-about-us .about-content h2[data-fvx-about-subheading] {
 font:600 clamp(24px,2.2vw,32px)/1.25 Montserrat,sans-serif;color:var(--fvx-text);margin:32px 0 16px;
}
body.fvx-ready.page-template-page-template-about-us .about-content h2:first-child {margin-top:0;}
body.fvx-ready.page-template-page-template-about-us .about-content p {font:400 16px/1.75 Montserrat,sans-serif;margin:0 0 20px;}
body.fvx-ready.page-template-page-template-about-us .about-content a {text-decoration:underline;text-underline-offset:3px;color:inherit;}
body.fvx-ready .team-members-section {padding:var(--fvx-section-space) var(--fvx-gutter);background:#f6f7f6;color:var(--fvx-text);}
body.fvx-ready .team-members-section::before,body.fvx-ready .team-members-section::after {content:none;}
body.fvx-ready .team-members-header {max-width:var(--fvx-page-width);gap:24px;}
body.fvx-ready .team-members-header h2 {font:400 clamp(32px,3.4vw,48px)/1.1 Anton,sans-serif;color:var(--fvx-text);}
body.fvx-ready .team-members-btn-all {color:var(--fvx-text);text-decoration:underline;text-underline-offset:4px;min-height:44px;}
/* Controls have one readable size and a clear selected/focus state. */
body.fvx-ready form :where(input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=submit]):not([type=button]):not([type=range]),textarea,select) {
 box-sizing:border-box;max-width:100%;min-height:48px;border:1px solid #909c94;border-radius:8px;
 padding:12px 14px;background:#fff;color:#151815;font:400 16px/1.5 Montserrat,sans-serif;box-shadow:none;
}
body.fvx-ready form textarea {min-height:140px;resize:vertical;}
body.fvx-ready form :where(input,textarea)::placeholder {color:#626e66;opacity:1;}
body.fvx-ready form :where(input[type=checkbox],input[type=radio]) {accent-color:#176439;width:20px;height:20px;flex-shrink:0;}
body.fvx-ready :where(.fvx-home-event,.fvx-service-card,.fvx-center-card) {box-shadow:none;border-color:var(--fvx-border);}
body.fvx-ready :where(.fvx-home-event,.fvx-service-card,.fvx-center-card):focus-within {border-color:#506458;}
body.fvx-ready .fvx-button {min-height:48px;font-size:15px;line-height:22px;gap:8px;}
@media(max-width:767px) {
 body.fvx-ready {--fvx-gutter:20px;}
 body.fvx-ready .page-header .page-subtitle {font-size:16px;}
 body.fvx-ready.page-template-page-template-about-us .about-container {grid-template-columns:1fr;}
 body.fvx-ready.page-template-page-template-about-us .about-image {position:static;}
 body.fvx-ready .team-members-header {align-items:flex-start;flex-wrap:wrap;}
}
@media(prefers-reduced-motion:reduce) {
 body.fvx-ready *,body.fvx-ready *::before,body.fvx-ready *::after {scroll-behavior:auto!important;transition-duration:0s!important;animation-duration:0s!important;}
}

/* Shared catalog/contact surfaces; photographs occupy their own region. */
body.fvx-ready #masthead.fvx-header {margin-bottom:0!important;background:var(--fvx-ink)!important;backdrop-filter:none!important;}
body.fvx-ready .fvx-catalog {background:var(--fvx-surface);color:var(--fvx-text);}
body.fvx-ready :where(.fvx-catalog-hero,.fvx-contact-hero,.fvx-event-index-hero,.fvx-booking-hero) {
 min-height:400px;padding:64px 0;background:var(--fvx-surface);color:var(--fvx-text);
 display:flex;align-items:center;position:relative;isolation:isolate;
}
body.fvx-ready .fvx-catalog-hero-shade,body.fvx-ready .fvx-contact-hero::after,body.fvx-ready .fvx-event-index-hero::after,body.fvx-ready .fvx-booking-hero::after {display:none;}
body.fvx-ready :is(.fvx-catalog-hero,.fvx-contact-hero,.fvx-event-index-hero,.fvx-booking-hero)>img,
body.fvx-ready :is(.fvx-catalog-hero,.fvx-contact-hero,.fvx-event-index-hero,.fvx-booking-hero)>picture {
 position:absolute;inset:0 0 0 auto;width:44%;height:100%;object-fit:cover;z-index:0;
}
body.fvx-ready :is(.fvx-catalog-hero,.fvx-contact-hero,.fvx-event-index-hero,.fvx-booking-hero)>picture img {
 position:static;width:100%;height:100%;object-fit:cover;
}
body.fvx-ready :is(.fvx-catalog-hero,.fvx-contact-hero,.fvx-event-index-hero,.fvx-booking-hero)>:is(.fvx-catalog-container,.fvx-event-container) {position:relative;z-index:1;}
body.fvx-ready :is(.fvx-catalog-hero,.fvx-contact-hero,.fvx-event-index-hero,.fvx-booking-hero) h1 {
 max-width:50%;color:var(--fvx-text);font-size:clamp(40px,4.5vw,64px);line-height:1.1;
}
body.fvx-ready :is(.fvx-catalog-intro,.fvx-contact-subtitle,.fvx-event-index-intro,.fvx-booking-subtitle) {max-width:48%;font-size:16px;line-height:1.7;color:var(--fvx-muted);}
body.fvx-ready .fvx-catalog-list {padding:var(--fvx-section-space) 0;}
body.fvx-ready .fvx-catalog-grid {gap:24px;}
body.fvx-ready .fvx-catalog-card {background:#fff;border:1px solid var(--fvx-border);box-shadow:none;border-radius:16px;}
body.fvx-ready .fvx-catalog-card h2 {color:var(--fvx-text);font:400 clamp(28px,2.5vw,36px)/1.2 Anton,sans-serif;text-transform:uppercase;}
body.fvx-ready :is(.fvx-catalog-description,.fvx-catalog-meta p,.fvx-catalog-contacts) {font-size:15px;line-height:1.6;}
body.fvx-ready .fvx-catalog-contacts {border-color:var(--fvx-border);}
body.fvx-ready .fvx-catalog-contacts summary {min-height:44px;display:flex;align-items:center;gap:8px;}
body.fvx-ready .fvx-catalog-contacts summary::before {content:'+';font-size:22px;font-weight:400;}
body.fvx-ready .fvx-catalog-contacts[open] summary::before {content:'−';}
body.fvx-ready .fvx-catalog-contacts a,body.fvx-ready .fvx-catalog-map-link {color:var(--fvx-muted);font-size:14px;}
body.fvx-ready .fvx-catalog .fvx-catalog-map-link {display:inline-flex;align-items:center;min-height:44px;}
body.fvx-ready .fvx-catalog-meta img {filter:brightness(0);}
body.fvx-ready .fvx-catalog-credit {color:#59625c;}
body.fvx-ready .fvx-catalog-newsletter {border-color:var(--fvx-border);}
body.fvx-ready .fvx-contact-main {border:0;padding:var(--fvx-section-space) 0;}
body.fvx-ready .fvx-contact h2 {font-size:clamp(32px,3.4vw,48px);line-height:1.15;}
body.fvx-ready .fvx-contact .fvx-contact-form-title {font:600 24px/1.3 Montserrat,sans-serif;}
body.fvx-ready .fvx-contact-group {border-color:var(--fvx-border);}
body.fvx-ready .fvx-contact-form {background:#fff;border:1px solid var(--fvx-border);padding:32px;border-radius:16px;}
body.fvx-ready .fvx-contact-form label,body.fvx-ready .fvx-contact-field-label {color:var(--fvx-text);font-size:15px;line-height:24px;}
body.fvx-ready .fvx-contact-form :is(input,textarea,select):not([type=hidden]):not([type=submit]):not([type=button]):not([type=checkbox]):not([type=radio]) {
 background:#fff;color:#151815;border:1px solid #909c94;border-radius:8px;font:400 16px/1.5 Montserrat,sans-serif;
}
body.fvx-ready .fvx-contact-form input::placeholder,body.fvx-ready .fvx-contact-form textarea::placeholder {color:#626e66;}
body.fvx-ready .fvx-contact-form .wpcf7-response-output {color:var(--fvx-text);}
body.fvx-ready .fvx-contact-form .wpcf7-not-valid-tip {color:#9d1829;}
body.fvx-ready .fvx-contact-newsletter {border-top:1px solid var(--fvx-border);padding:var(--fvx-section-space) 0;}
body.fvx-ready .fvx-white {border:1px solid var(--fvx-border);}
body.fvx-ready .fvx-center-hero {min-height:440px;padding:64px 0;color:#fff;}
body.fvx-ready .fvx-center-hero h1 {font-size:clamp(40px,4.5vw,64px);color:#fff;}
body.fvx-ready :is(.fvx-center-prices,.fvx-center-others,.fvx-center-map,.fvx-service-prices,.fvx-service-others,.fvx-service-newsletter) h2 {
 font-size:clamp(32px,3.4vw,48px);line-height:1.15;
}
body.fvx-ready :is(.fvx-center-services,.fvx-service-actions) .fvx-button {font-size:15px;min-height:48px;}
/* Preserve the existing consent controls and behavior; improve only their surface and targets. */
body.fvx-ready #moove_gdpr_cookie_info_bar {
 background:#fff!important;color:#151815!important;border:1px solid #dce1dd!important;border-radius:16px;
 box-shadow:0 6px 24px #0002;left:16px;bottom:16px;max-width:420px;width:calc(100% - 32px);
}
body.fvx-ready #moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container {padding:20px;}
body.fvx-ready #moove_gdpr_cookie_info_bar .moove-gdpr-cookie-notice p,
body.fvx-ready #moove_gdpr_cookie_info_bar .moove-gdpr-cookie-notice a {color:#151815;font-size:14px;line-height:1.5;}
body.fvx-ready #moove_gdpr_cookie_info_bar .moove-gdpr-button-holder {display:grid;grid-template-columns:1fr 1fr;gap:8px;padding-top:12px;}
body.fvx-ready #moove_gdpr_cookie_info_bar button {
 margin:0;min-height:44px;width:100%;padding:8px 12px;border:1px solid #909c94;border-radius:8px;
 background:#fff;color:#151815;font:600 14px/20px Montserrat,sans-serif;
}
body.fvx-ready #moove_gdpr_cookie_info_bar button.moove-gdpr-infobar-allow-all {background:var(--fvx-accent);border-color:transparent;color:#111;}
@media(max-width:767px) {
 body.fvx-ready :is(.fvx-catalog-hero,.fvx-contact-hero,.fvx-event-index-hero,.fvx-booking-hero) {min-height:0;padding:0;display:flex;flex-direction:column;align-items:stretch;}
 body.fvx-ready :is(.fvx-catalog-hero,.fvx-contact-hero,.fvx-event-index-hero,.fvx-booking-hero)>:is(.fvx-catalog-container,.fvx-event-container) {order:1;padding-block:40px;}
 body.fvx-ready :is(.fvx-catalog-hero,.fvx-contact-hero,.fvx-event-index-hero,.fvx-booking-hero)>img,
 body.fvx-ready :is(.fvx-catalog-hero,.fvx-contact-hero,.fvx-event-index-hero,.fvx-booking-hero)>picture {position:relative;inset:auto;order:2;width:100%;height:200px;flex:none;}
 body.fvx-ready :is(.fvx-catalog-hero,.fvx-contact-hero,.fvx-event-index-hero,.fvx-booking-hero) h1,body.fvx-ready :is(.fvx-catalog-intro,.fvx-contact-subtitle,.fvx-event-index-intro,.fvx-booking-subtitle) {max-width:none;}
 body.fvx-ready .fvx-contact-form {padding:24px 20px;}
 body.fvx-ready .fvx-center-hero {min-height:360px;padding:48px 0;}
}

/* Booking pages share the readable light surfaces, retaining form markup and handlers. */
body.fvx-ready .fvx-catalog h2 {color:inherit;}
body.fvx-ready .fvx-booking-title-row {display:block;}
body.fvx-ready .fvx-booking-powered {
 display:inline-flex;align-items:flex-start;width:fit-content;margin-top:20px;padding:12px 16px;
 border-radius:8px;background:#151815;color:white;
}
body.fvx-ready .fvx-booking-overview {padding:var(--fvx-section-space) 0;}
body.fvx-ready :is(.fvx-booking-waiting,.fvx-booking-calculator,.fvx-booking-faq,.fvx-booking-newsletter) {
 padding:var(--fvx-section-space) 0;background:var(--fvx-surface);color:var(--fvx-text);border-color:var(--fvx-border);
}
body.fvx-ready :is(.fvx-booking-waiting,.fvx-booking-calculator,.fvx-booking-faq) h2 {font-size:clamp(32px,3.4vw,48px);line-height:1.15;}
body.fvx-ready .fvx-booking-form {background:#fff;border:1px solid var(--fvx-border);border-radius:16px;}
body.fvx-ready .fvx-booking-form .gform_wrapper,
body.fvx-ready .fvx-booking-form .gform_wrapper label,
body.fvx-ready .fvx-booking-form .gform_wrapper .gfield_label {color:var(--fvx-text);font-size:15px;line-height:24px;}
body.fvx-ready .fvx-booking-form .gform_wrapper :is(input,textarea,select):not([type=hidden]):not([type=submit]):not([type=button]):not([type=checkbox]):not([type=radio]) {
 background:white;color:#151815;border:1px solid #909c94;font-size:16px;
}
body.fvx-ready .fvx-booking-form .gform_wrapper .gfield_description {color:var(--fvx-muted);font-size:14px;}
body.fvx-ready .fvx-booking-form input::placeholder,body.fvx-ready .fvx-booking-form textarea::placeholder {color:#626e66;}
body.fvx-ready .fvx-booking-faq details {border-color:var(--fvx-border);}
body.fvx-ready .fvx-booking-faq summary {min-height:48px;}
body.fvx-ready .fvx-booking-clubs a {border-color:#909c94;border-radius:12px;font-size:15px;min-height:48px;}
body.fvx-ready .fvx-booking-location-note {color:var(--fvx-muted);}
body.fvx-ready .fvx-booking .fvx-booking-actions .fvx-button {font-size:15px;min-height:48px;}
body.fvx-ready .fvx-booking-calculator .fv-tools {background:transparent;color:var(--fvx-text);}
body.fvx-ready .fvx-booking-calculator .fv-tools :is(.panel,.request-preview) {background:#fff;color:var(--fvx-text);border:1px solid var(--fvx-border);border-radius:16px;}
body.fvx-ready .fvx-booking-calculator .fv-tools :is(input,select,textarea) {background:#fff;color:var(--fvx-text);border-color:#909c94;font-size:16px;}
body.fvx-ready .fvx-booking-calculator .fv-tools :is(.source-note,.calc-status) {color:var(--fvx-muted);}
body.fvx-ready .fvx-booking-calculator .fv-tools .draft-pricing-note {background:#f6f7f6;color:var(--fvx-text);border-color:var(--fvx-border);}
body.fvx-ready .fvx-booking-calculator .fv-tools a {color:var(--fvx-text);}
body.fvx-ready .fvx-booking-calculator .fv-tools .button {background:var(--fvx-accent);color:#111;}
body.fvx-ready main.fv-tools {padding:64px var(--fvx-gutter) 80px;}
body.fvx-ready .fv-tools :is(.eyebrow,label,.calc-status,.source-note,.calc-item small,.item-price button) {font-size:14px;line-height:1.6;}
body.fvx-ready .fv-tools :is(input,select,textarea) {font-size:16px;}
body.fvx-ready main .has-small-font-size {font-size:14px!important;line-height:1.6;}
body.fvx-ready.fvx-event-index .events-card-btn {font-size:14px;line-height:22px;min-height:44px;align-items:center;}
@media(max-width:767px){
 body.fvx-ready main.fv-tools {padding:40px 20px;}
 body.fvx-ready .fvx-booking-narrow {width:calc(100% - 40px);}
}

/* Action feedback and readable notes, without decorative motion on event posters. */
body.fvx-ready .fv-tools {--tool-accent:var(--fvx-accent);}
body.fvx-ready .fvx-catalog-credit {font-size:14px;line-height:1.5;}
body.fvx-ready .fvx-button {transition:background-color .15s ease,border-color .15s ease,transform .15s ease;}
body.fvx-ready .fvx-button:hover {transform:translateY(-1px);}
body.fvx-ready .fvx-button:active {transform:none;}
body.fvx-ready :is(.fvx-catalog-card,.fvx-home-event) {transition:border-color .15s ease;}
body.fvx-ready :is(.fvx-catalog-card,.fvx-home-event):hover {border-color:#687e70;}
body.fvx-ready :is(.fvx-service-price,.fvx-booking-faq details) summary {transition:background-color .15s ease;}
body.fvx-ready :is(.fvx-service-price,.fvx-booking-faq details) summary:hover {background:#edf1ed;}
@media(min-width:1000px) {
 body.fvx-ready .fv-tools .split>aside.panel {position:sticky;top:calc(var(--fvx-sticky-top,112px) + 24px);align-self:start;}
}
@media(prefers-reduced-motion:reduce){body.fvx-ready .fvx-button:hover {transform:none;}}

/* Commerce headings and a readable account form; WooCommerce fields stay intact. */
body.fvx-ready .fvx-commerce-header {margin:0 0 32px;}
body.fvx-ready .fvx-commerce-title {font:400 clamp(40px,4.5vw,64px)/1.1 Anton,sans-serif;color:#151815;margin:0;text-transform:uppercase;}
body.fvx-ready.woocommerce-account #primary {width:calc(100% - 2 * var(--fvx-gutter));max-width:1280px;margin:0 auto;padding:64px 0;}
body.fvx-ready.woocommerce-account .woocommerce {max-width:640px;}
body.fvx-ready.woocommerce-account .woocommerce h2 {font:600 24px/1.3 Montserrat,sans-serif;color:#151815;}
body.fvx-ready.woocommerce-account .woocommerce form.login {background:#fff;border:1px solid var(--fvx-border);border-radius:16px;padding:32px;}
body.fvx-ready.woocommerce-account .woocommerce form label {font-size:15px;line-height:24px;}
body.fvx-ready.woocommerce-account .woocommerce form .input-text {font-size:16px;min-height:48px;border:1px solid #909c94;border-radius:8px;color:#151815;background:#fff;}
body.fvx-ready.woocommerce-account .woocommerce-form-login__submit {background:var(--fvx-accent);color:#111;min-height:48px;border-radius:999px;padding:12px 24px;font-size:15px;}
@media(max-width:767px){body.fvx-ready.woocommerce-account #primary {padding:40px 0;}body.fvx-ready.woocommerce-account .woocommerce form.login {padding:24px 20px;}}

/* FAQ answers keep their natural height; buttons expose state to keyboards/readers. */
body.fvx-ready .fv-faq-section {margin:0;padding:var(--fvx-section-space) 0;background:var(--fvx-surface);}
body.fvx-ready .fv-faq-container {width:calc(100% - 2 * var(--fvx-gutter));max-width:1280px;margin:0 auto;padding:0;background:transparent;box-shadow:none;border-radius:0;}
body.fvx-ready .fv-faq-col-title {font:600 24px/1.3 Montserrat,sans-serif;color:#151815;margin:40px 0 20px;}
body.fvx-ready .fv-faq-col-title:first-child {margin-top:0;}
body.fvx-ready .fv-faq-item {border:1px solid var(--fvx-border);border-radius:12px;overflow:hidden;background:#fff;}
body.fvx-ready .fv-faq-toggle {min-height:56px;font:600 16px/1.5 Montserrat,sans-serif;padding:20px 24px;color:#151815;background:#fff;}
body.fvx-ready .fv-faq-toggle:hover,body.fvx-ready .fv-faq-item.active .fv-faq-toggle {background:#edf1ed;}
body.fvx-ready .fv-faq-content,body.fvx-ready .fv-faq-item.active .fv-faq-content {max-height:none;overflow:visible;transition:none;padding:0 24px 24px;background:#fff;color:#151815;font:400 16px/1.7 Montserrat,sans-serif;}
body.fvx-ready .fv-faq-content[hidden] {display:none!important;}
body.fvx-ready .fv-faq-content a {color:inherit;text-decoration:underline;text-underline-offset:3px;}
body.fvx-ready .fv-faq-number,body.fvx-ready .fv-faq-icon {color:#151815;}
/* News archive uses the same container, card surface and type scale. */
body.fvx-ready .uudised-archive-wrap {width:calc(100% - 2 * var(--fvx-gutter));max-width:1280px;margin:0 auto;padding:var(--fvx-section-space) 0;}
body.fvx-ready .uudised-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;}
body.fvx-ready .uudis-item {display:flex;flex-direction:column;margin:0;padding:0;border:1px solid var(--fvx-border);background:#fff;border-radius:16px;overflow:hidden;box-shadow:none;}
body.fvx-ready .uudis-thumb {display:block;aspect-ratio:16/10;overflow:hidden;}
body.fvx-ready .uudis-thumb img,body.fvx-ready .uudis-thumb picture {display:block;width:100%;height:100%;object-fit:cover;}
body.fvx-ready .uudis-entry {padding:24px;display:flex;flex-direction:column;gap:16px;}
body.fvx-ready .uudis-title {font:600 24px/1.35 Montserrat,sans-serif;color:#151815;text-transform:none;margin:0;}
body.fvx-ready .uudis-title a {color:inherit;text-decoration:none;}
body.fvx-ready .uudis-title a:hover {text-decoration:underline;text-underline-offset:4px;}
body.fvx-ready .uudis-excerpt p {font:400 16px/1.7 Montserrat,sans-serif;color:#535c56;margin:0;}
body.fvx-ready .uudis-read-more {display:inline-flex;align-items:center;gap:8px;width:fit-content;min-height:44px;border:0;border-radius:0;padding:0;margin:0;background:transparent;color:#151815;font:600 15px/24px Montserrat,sans-serif;text-decoration:underline;text-underline-offset:4px;transform:none;}
body.fvx-ready .uudis-read-more::after {content:'↗';}
body.fvx-ready .uudised-grid:has(>.uudis-item:only-child) {grid-template-columns:1fr;}
body.fvx-ready .uudis-item:only-child {display:grid;grid-template-columns:1fr 1.2fr;}
body.fvx-ready .uudis-item:only-child .uudis-thumb {height:100%;min-height:320px;aspect-ratio:auto;}
@media(max-width:900px){body.fvx-ready .uudised-grid {grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:767px){
 body.fvx-ready .fv-faq-toggle {padding:16px;}
 body.fvx-ready .fv-faq-content {padding:0 16px 20px;}
 body.fvx-ready .uudised-grid {grid-template-columns:1fr;}
 body.fvx-ready .uudis-item:only-child {display:flex;}
 body.fvx-ready .uudis-item:only-child .uudis-thumb {height:auto;min-height:0;aspect-ratio:16/10;}
 body.fvx-ready .uudis-entry {padding:24px 20px;}
}

/* Long headings must reflow even before the brand font is available. */
body.fvx-ready h1{overflow-wrap:anywhere}

/* Article reading view: title before media, stable measure and clear hierarchy. */
body.fvx-ready.single-uudised #primary {padding:48px 0 80px;margin:0;background:#fff;}
body.fvx-ready.single-uudised .uudis-single {width:calc(100% - 80px);max-width:860px;margin:0 auto;padding:0;background:transparent;}
body.fvx-ready.single-uudised .uudis-title {font:600 clamp(28px,3vw,42px)/1.22 Montserrat,sans-serif;color:#111;text-transform:none;margin:0 0 32px;overflow-wrap:anywhere;}
body.fvx-ready.single-uudised .uudis-featured-image {margin:0 0 32px;border-radius:16px;box-shadow:none;}
body.fvx-ready.single-uudised .uudis-featured-image img {width:100%;height:auto;transform:none;transition:none;}
body.fvx-ready.single-uudised .uudis-content {font:500 16px/1.75 Montserrat,sans-serif;color:#252c28;}
body.fvx-ready.single-uudised .uudis-content p {font-size:16px;line-height:1.75;margin:0 0 24px;}
body.fvx-ready.single-uudised .uudis-content h2 {font:600 28px/1.25 Montserrat,sans-serif;margin:40px 0 20px;color:#111;text-transform:none;}
body.fvx-ready.single-uudised .uudis-content h3 {font:600 22px/1.3 Montserrat,sans-serif;margin:32px 0 16px;color:#111;text-transform:none;}
body.fvx-ready.single-uudised .uudis-content a {color:#1c5036;text-decoration:underline;text-underline-offset:3px;border:0;overflow-wrap:anywhere;}
body.fvx-ready.single-uudised .uudis-content blockquote {border-left:3px solid var(--fvx-accent);padding:20px 24px;margin:24px 0;background:#f5f7f5;}
body.fvx-ready.single-uudised .uudis-content img {box-shadow:none;max-width:100%;height:auto;}
@media(max-width:767px) {
 body.fvx-ready.single-uudised #primary {padding:28px 0 48px;}
 body.fvx-ready.single-uudised .uudis-single {width:calc(100% - 40px);}
 body.fvx-ready.single-uudised .uudis-title {margin-bottom:24px;}
 body.fvx-ready.single-uudised .uudis-content h2 {font-size:24px;}
}

/* Center photo rail follows the Figma gallery, with native scrolling and a keyboard-accessible full view. */
.fvx-center .fvx-center-gallery {padding:0 0 64px;}
.fvx-center-gallery-heading {display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:24px;}
.fvx-center-gallery-heading h2 {margin:0;}
.fvx-center-gallery-controls {display:flex;gap:8px;}
.fvx-center .fvx-center-gallery-controls button {display:inline-flex;align-items:center;justify-content:center;min-width:48px;min-height:48px;padding:8px;border:1px solid #d9dfdb;border-radius:50%;background:#fff;color:#111;font:600 24px/1 Montserrat,sans-serif;cursor:pointer;}
.fvx-center .fvx-center-gallery-controls button:disabled {opacity:.35;cursor:default;}
.fvx-center-gallery-rail {display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:thin;padding-bottom:12px;}
.fvx-center .fvx-center-gallery-photo {position:relative;display:block;flex:0 0 calc((100% - 16px)/2);min-width:0;padding:0;border:0;border-radius:12px;overflow:hidden;aspect-ratio:1.85;background:#e8ece9;scroll-snap-align:start;cursor:zoom-in;}
.fvx-center-gallery-rail:has(>.fvx-center-gallery-photo:only-child)>.fvx-center-gallery-photo {flex-basis:100%;aspect-ratio:2.2;}
.fvx-center-gallery-photo>img {display:block;width:100%;height:100%;object-fit:cover;}
.fvx-center-gallery-photo>span {position:absolute;right:16px;bottom:16px;display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:#fff;color:#111;border-radius:50%;font:600 24px/1 Montserrat,sans-serif;}
.fvx-center-gallery-photo:focus-visible,.fvx-center-dialog button:focus-visible {outline:3px solid #247044;outline-offset:3px;}
.fvx-center-dialog {width:calc(100% - 40px);max-width:1120px;max-height:92svh;padding:20px;border:0;border-radius:16px;background:#fff;color:#111;overflow-y:auto;}
.fvx-center-dialog::backdrop {background:#000c;}
.fvx-center-dialog-top {display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;}
.fvx-center-dialog h2 {font:600 20px/1.3 Montserrat,sans-serif!important;margin:0!important;color:#111;}
.fvx-center-dialog button {display:inline-flex;justify-content:center;align-items:center;min-width:48px;min-height:48px;padding:10px 16px;border:1px solid #d9dfdb;border-radius:999px;background:#f5f7f5;color:#111;font:600 16px/1.3 Montserrat,sans-serif;cursor:pointer;}
.fvx-center-dialog>img {display:block;width:100%;height:auto;max-height:65svh;object-fit:contain;background:#f5f7f5;}
.fvx-center-dialog-bottom {display:flex;gap:16px;align-items:center;justify-content:space-between;margin-top:16px;}
.fvx-center-dialog-bottom p {font:500 14px/1.5 Montserrat,sans-serif;margin:0;}
@media(max-width:767px){
 .fvx-center .fvx-center-gallery {padding-bottom:40px;}
 .fvx-center-gallery-heading {gap:12px;margin-bottom:20px;}
 .fvx-center .fvx-center-gallery-photo {flex-basis:86%;aspect-ratio:1.5;}
 .fvx-center-gallery-rail:has(>.fvx-center-gallery-photo:only-child)>.fvx-center-gallery-photo {aspect-ratio:1.5;}
 .fvx-center-dialog {width:calc(100% - 24px);padding:16px;}
 .fvx-center-dialog-bottom {display:grid;grid-template-columns:48px 1fr 48px;gap:8px;}
 .fvx-center-dialog-bottom button {padding:8px;}
}

.fvx-center-dialog button[hidden] {display:none!important;}
.fvx-center-dialog-top button {flex:0 0 auto;white-space:nowrap;}
.fvx-center-dialog-bottom:has(button[hidden]) {display:block;}

.fvx-center-gallery-controls[hidden] {display:none!important;}

/* Allow pasted nonbreaking phrases to reflow inside center grid columns. */
.fvx-center .fvx-center-columns {grid-template-columns:minmax(0,2fr) minmax(0,1fr);}
.fvx-center .fvx-center-columns>div {min-width:0;}
.fvx-center .fvx-center-copy {overflow-wrap:anywhere;}
@media(max-width:900px){.fvx-center .fvx-center-columns {grid-template-columns:minmax(0,1fr);}}

/* The consent plugin emits dark-scheme !important rules after theme styles.
   Override only the infobar presentation; all original choices and handlers stay intact. */
body.fvx-ready #moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content .moove-gdpr-cookie-notice p,
body.fvx-ready #moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content .moove-gdpr-cookie-notice a {color:#151815!important;font:500 14px/1.5 Montserrat,sans-serif!important;}
body.fvx-ready #moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content .moove-gdpr-button-holder button {background:#fff!important;color:#151815!important;border:1px solid #ced5cf!important;opacity:1!important;font:600 14px/20px Montserrat,sans-serif!important;min-height:44px;padding:10px 12px!important;box-shadow:none!important;}
body.fvx-ready #moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content .moove-gdpr-button-holder button.moove-gdpr-infobar-allow-all {background:var(--fvx-accent)!important;border-color:var(--fvx-accent)!important;}
body.fvx-ready #moove_gdpr_cookie_info_bar .moove-gdpr-cookie-notice p button.change-settings-button {display:inline!important;width:auto!important;min-height:0!important;height:auto!important;margin:0!important;padding:0!important;border:0!important;border-radius:0;background:transparent!important;color:#151815!important;font:inherit!important;text-decoration:underline;text-underline-offset:3px;}
body.fvx-ready #moove_gdpr_cookie_info_bar .moove-gdpr-button-holder .moovegdpr-arrow-close::before {color:#151815!important;}

/* A compact consent infobar: preserve plugin visibility classes and every action. */
body.fvx-ready #moove_gdpr_cookie_info_bar {max-width:420px!important;width:calc(100% - 32px)!important;left:16px!important;right:auto!important;bottom:16px!important;top:auto!important;border-radius:16px!important;}
body.fvx-ready #moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container {padding:20px!important;}
body.fvx-ready #moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content {position:relative!important;display:block!important;width:100%!important;margin:0!important;}
body.fvx-ready #moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content .moove-gdpr-cookie-notice {width:100%!important;padding:0 36px 0 0!important;margin:0!important;float:none!important;}
body.fvx-ready #moove_gdpr_cookie_info_bar .moove-gdpr-cookie-notice p {margin:0!important;}
body.fvx-ready #moove_gdpr_cookie_info_bar .moove-gdpr-cookie-notice p+p {margin-top:8px!important;}
body.fvx-ready #moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content .moove-gdpr-button-holder {display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important;width:100%!important;margin:16px 0 0!important;padding:0!important;}
body.fvx-ready #moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content .moove-gdpr-button-holder button {position:static!important;width:100%!important;margin:0!important;border-radius:8px!important;min-width:0!important;}
body.fvx-ready #moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content .moove-gdpr-button-holder button.moove-gdpr-infobar-close-btn {position:absolute!important;top:-4px!important;right:-4px!important;left:auto!important;bottom:auto!important;width:36px!important;min-width:36px!important;height:36px!important;min-height:36px!important;padding:6px!important;border:0!important;background:transparent!important;}

/* WooCommerce draft presentation: same FV typography, gutters and form rhythm. */
body.fvx-ready:is(.tax-product_cat,.post-type-archive-product,.single-product) #primary {
 width:calc(100% - 2 * var(--fvx-gutter));max-width:var(--fvx-page-width);margin-inline:auto;
}
body.fvx-ready.tax-product_cat .woocommerce-products-header .page-title,
body.fvx-ready.single-product .product_title {
 font:400 clamp(36px,4.5vw,64px)/1.12 Anton,sans-serif;text-transform:uppercase;color:var(--fvx-text);overflow-wrap:anywhere;
}
body.fvx-ready.tax-product_cat .term-description {max-width:65ch;margin-top:20px;}
body.fvx-ready.tax-product_cat .term-description img {display:block;margin:0;width:min(100%,420px);height:auto;}
body.fvx-ready.tax-product_cat .term-description p {margin:0 0 16px;}
body.fvx-ready.tax-product_cat .term-description p:last-child {margin-bottom:0;}
body.fvx-ready.single-product .summary form.cart button.single_add_to_cart_button,
body.fvx-ready.tax-product_cat #primary ul.products li.product .button {
 background:var(--fvx-accent);color:#111;border-radius:999px;min-height:48px;font:600 15px/1.4 Montserrat,sans-serif;
}
body.fvx-ready.single-product .summary form.cart button.single_add_to_cart_button:hover,
body.fvx-ready.tax-product_cat #primary ul.products li.product .button:hover {background:var(--fvx-accent);filter:brightness(.95);}
body.fvx-ready.woocommerce-account .woocommerce form :is(.form-row,.woocommerce-form-row) {margin:0 0 20px;padding:0;}
body.fvx-ready.woocommerce-account .woocommerce form :is(.form-row,.woocommerce-form-row)>label:not(.woocommerce-form-login__rememberme) {
 display:block;margin-bottom:8px;font-weight:500;
}
body.fvx-ready.woocommerce-account .woocommerce form :is(input.input-text,.password-input) {display:block;width:100%;max-width:100%;box-sizing:border-box;}
body.fvx-ready.woocommerce-account .woocommerce form input.input-text {padding:11px 14px;}
body.fvx-ready.woocommerce-account .woocommerce form .woocommerce-form-login__rememberme {display:flex;align-items:center;gap:8px;margin:4px 0 18px;}
body.fvx-ready.woocommerce-account .woocommerce form input[type=checkbox] {width:20px;height:20px;margin:0;flex-shrink:0;accent-color:var(--fvx-accent);}
body.fvx-ready.woocommerce-account .woocommerce form button.button {display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 24px;background:var(--fvx-accent);color:#111;border:0;border-radius:999px;font:600 15px/1.4 Montserrat,sans-serif;}
body.fvx-ready.woocommerce-account .woocommerce form .lost_password {margin:20px 0 0;font-size:15px;}
body.fvx-ready.woocommerce-account .woocommerce form.lost_reset_password {padding:32px;border:1px solid var(--fvx-border);border-radius:16px;}
@media(max-width:767px){
 body.fvx-ready.tax-product_cat #primary {grid-template-columns:minmax(0,1fr);gap:20px;padding-top:32px;}
 body.fvx-ready.tax-product_cat #primary>.woocommerce-ordering {grid-column:1;}
 body.fvx-ready.tax-product_cat .woocommerce-ordering,body.fvx-ready.tax-product_cat .woocommerce-ordering select {width:100%;}
 body.fvx-ready.woocommerce-account .woocommerce form.lost_reset_password {padding:24px 20px;}
}

/* Price lists: preserve all source values, isolate wide tables from body copy. */
body.fvx-ready.page-template-page-template-hinnakiri .price-list {padding:var(--fvx-section-space) 0;background:#fff;}
body.fvx-ready.page-template-page-template-hinnakiri .price-list>.container {width:calc(100% - 2 * var(--fvx-gutter));max-width:var(--fvx-page-width);padding:0;margin-inline:auto;}
body.fvx-ready.page-template-page-template-hinnakiri .page-cta .btn-header {display:inline-flex;align-items:center;gap:16px;padding:14px 20px;min-height:48px;background:var(--fvx-accent);color:#111;transform:none;clip-path:none;border-radius:999px;box-shadow:none;}
body.fvx-ready.page-template-page-template-hinnakiri .page-cta .btn-header>* {transform:none;}
body.fvx-ready.page-template-page-template-hinnakiri .page-cta .btn-header img {width:20px;height:20px;padding:0;background:none;}
body.fvx-ready.page-template-page-template-hinnakiri .price-groups ul {gap:8px;flex-wrap:wrap;border:0;margin:0 0 32px;}
body.fvx-ready.page-template-page-template-hinnakiri .price-groups a {min-height:48px;padding:12px 24px;border-radius:999px;transform:none;clip-path:none;background:var(--fvx-surface);color:var(--fvx-text);font:600 15px/24px Montserrat,sans-serif;}
body.fvx-ready.page-template-page-template-hinnakiri .price-groups li.active a {background:var(--fvx-accent);color:#111;}
body.fvx-ready.page-template-page-template-hinnakiri .price-tabs:not(:has(a:not([data-tab=""]))) {display:none;}
body.fvx-ready.page-template-page-template-hinnakiri .price-tabs ul {margin:0 0 24px;gap:24px;flex-wrap:wrap;}
body.fvx-ready.page-template-page-template-hinnakiri .price-tabs a {display:block;padding:10px 0;font:600 15px/24px Montserrat,sans-serif;}
body.fvx-ready.page-template-page-template-hinnakiri .price-panel {overflow:visible;animation:none;}
body.fvx-ready .fvx-price-group-title {font:600 28px/1.3 Montserrat,sans-serif;margin:0 0 24px;color:var(--fvx-text);}
body.fvx-ready .fvx-price-table-scroll {overflow-x:auto;max-width:100%;border:1px solid var(--fvx-border);border-radius:12px;margin-bottom:28px;}
body.fvx-ready.page-template-page-template-hinnakiri .price-panel table {width:100%;margin:0;border:0;border-collapse:collapse;box-shadow:none;border-radius:0;overflow:visible;font:400 15px/1.6 Montserrat,sans-serif;}
body.fvx-ready.page-template-page-template-hinnakiri .price-panel :is(th,td) {padding:14px 16px;border:0;border-bottom:1px solid var(--fvx-border);}
body.fvx-ready.page-template-page-template-hinnakiri .price-panel tr:last-child :is(th,td) {border-bottom:0;}
body.fvx-ready.page-template-page-template-hinnakiri .price-panel tr.header th {background:var(--fvx-surface);color:var(--fvx-text);font-weight:600;}
body.fvx-ready.page-template-page-template-hinnakiri .price-extra {max-width:78ch;padding:0;margin:32px 0 48px;font:400 16px/1.75 Montserrat,sans-serif;}
body.fvx-ready.page-template-page-template-hinnakiri .price-extra::before {content:none;}
body.fvx-ready.page-template-page-template-hinnakiri .price-extra li {margin-bottom:10px;}
body.fvx-ready .fvx-price-scroll-hint {display:none;}
@media(max-width:767px){
 body.fvx-ready.page-template-page-template-hinnakiri .price-panel table {min-width:600px;}
 body.fvx-ready.page-template-page-template-hinnakiri .price-panel :is(th,td) {padding:12px;font-size:14px;}
 body.fvx-ready .fvx-price-scroll-hint {display:block;font:400 13px/1.5 Montserrat,sans-serif;color:var(--fvx-muted);margin:0 0 10px;}
 body.fvx-ready .fvx-price-group-title {font-size:24px;}
}

/* Wide price headers keep whole words while the table scrolls independently. */
body.fvx-ready.page-template-page-template-hinnakiri .price-panel table {table-layout:auto;}
body.fvx-ready.page-template-page-template-hinnakiri .price-panel th {min-width:110px;overflow-wrap:normal;word-break:normal;}

body.fvx-ready.page-template-page-template-hinnakiri .price-panel .fvx-price-note td {text-align:left;font-size:14px;line-height:1.7;}

/* Team pages share the approved FV container, light surfaces and readable cards. */
body.fvx-ready.page-template-page-meeskond .fvx-team-index {background:#fff;}
body.fvx-ready.page-template-page-meeskond .meeskond-archive-container {width:calc(100% - 2 * var(--fvx-gutter));max-width:var(--fvx-page-width);padding:var(--fvx-section-space) 0;margin-inline:auto;overflow:visible;}
body.fvx-ready.page-template-page-meeskond .meeskond-archive-container::before {content:none;}
body.fvx-ready.page-template-page-meeskond .meeskond-archive-grid {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px 24px;margin:0;}
body.fvx-ready.page-template-page-meeskond .team-card {display:flex;flex-direction:column;min-width:0;overflow:hidden;border:1px solid var(--fvx-border);border-radius:var(--fvx-radius);background:#fff;text-align:left;}
body.fvx-ready.page-template-page-meeskond .team-card-image {display:block;width:100%;aspect-ratio:4/5;overflow:hidden;}
body.fvx-ready.page-template-page-meeskond .team-card-image::before {content:none;}
body.fvx-ready.page-template-page-meeskond .team-card-image img {display:block;width:100%;height:100%;object-fit:cover;object-position:center top;border-radius:0;}
body.fvx-ready.page-template-page-meeskond .team-card-body {display:flex;flex:1;flex-direction:column;align-items:flex-start;gap:8px;width:100%;margin:0;padding:20px;transform:none;box-shadow:none;border-top:3px solid var(--fvx-accent);}
body.fvx-ready.page-template-page-meeskond .team-card-body>* {transform:none;text-align:left;}
body.fvx-ready.page-template-page-meeskond .team-card-name {margin:0;padding:0;border:0;font:600 21px/1.35 Montserrat,sans-serif;overflow-wrap:anywhere;}
body.fvx-ready.page-template-page-meeskond .team-card-name a {color:var(--fvx-text);text-decoration:none;}
body.fvx-ready.page-template-page-meeskond .team-card-name a:hover {text-decoration:underline;text-underline-offset:4px;}
body.fvx-ready.page-template-page-meeskond .team-card-role {margin:0;font:400 15px/1.6 Montserrat,sans-serif;color:var(--fvx-muted);}
body.fvx-ready .fvx-trainer {background:#fff;}
body.fvx-ready .fvx-trainer-container {width:calc(100% - 2 * var(--fvx-gutter));max-width:var(--fvx-page-width);margin:0 auto;padding:48px 0 var(--fvx-section-space);}
body.fvx-ready .fvx-trainer-intro {margin:0 0 28px;}
body.fvx-ready .fvx-trainer-back {display:inline-flex;align-items:center;min-height:44px;margin-bottom:16px;font:500 14px/1.5 Montserrat,sans-serif;color:var(--fvx-muted);text-decoration:underline;text-underline-offset:4px;}
body.fvx-ready .fvx-trainer-intro .trainer-name {font:400 clamp(36px,4.5vw,64px)/1.12 Anton,sans-serif;text-transform:uppercase;color:var(--fvx-text);margin:0 0 16px;overflow-wrap:anywhere;}
body.fvx-ready .fvx-trainer-intro .trainer-position {font:500 18px/1.5 Montserrat,sans-serif;color:var(--fvx-muted);margin:0;}
body.fvx-ready .fvx-trainer-layout {display:grid;grid-template-columns:minmax(240px,.8fr) minmax(0,1fr);align-items:start;gap:clamp(28px,3.34vw,48px);}
body.fvx-ready.single-meeskond .trainer-image {width:100%;height:auto;margin:0;padding:0;aspect-ratio:4/5;border-radius:var(--fvx-radius);overflow:hidden;}
body.fvx-ready.single-meeskond .trainer-image img {display:block;width:100%;height:100%;object-fit:cover;object-position:center top;}
body.fvx-ready .fvx-trainer-layout .trainer-details {min-width:0;}
body.fvx-ready .fvx-trainer-layout h2 {font:600 24px/1.35 Montserrat,sans-serif;margin:0 0 20px;}
body.fvx-ready .fvx-trainer-contact {padding:24px;border:1px solid var(--fvx-border);border-radius:var(--fvx-radius);background:var(--fvx-surface);margin-bottom:40px;}
body.fvx-ready .fvx-trainer-contact :is(.trainer-phone,.trainer-email) {margin:0;font:500 16px/1.6 Montserrat,sans-serif;}
body.fvx-ready .fvx-trainer-contact a {display:inline-flex;align-items:center;min-height:44px;color:var(--fvx-text);overflow-wrap:anywhere;text-decoration:underline;text-underline-offset:4px;}
body.fvx-ready.single-meeskond .trainer-bio {max-width:68ch;font:400 16px/1.8 Montserrat,sans-serif;overflow-wrap:anywhere;}
body.fvx-ready.single-meeskond .trainer-bio p {margin:0 0 24px;}
body.fvx-ready.single-meeskond .trainer-bio :is(ul,ol) {padding-left:24px;}
body.fvx-ready.single-meeskond .trainer-bio li {margin-bottom:10px;}
body.fvx-ready.single-meeskond .trainer-bio img {max-width:100%;height:auto;}
@media(max-width:1023px){body.fvx-ready.page-template-page-meeskond .meeskond-archive-grid {grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:767px){
 body.fvx-ready .fvx-trainer-container {padding-top:24px;}
 body.fvx-ready .fvx-trainer-intro {margin-bottom:28px;}
 body.fvx-ready .fvx-trainer-layout {grid-template-columns:minmax(0,1fr);gap:28px;}
 body.fvx-ready.single-meeskond .trainer-image {max-width:440px;}
 body.fvx-ready .fvx-trainer-contact {padding:20px;margin-bottom:32px;}
}
@media(max-width:599px){body.fvx-ready.page-template-page-meeskond .meeskond-archive-grid {grid-template-columns:minmax(0,1fr);gap:28px;}}

body.fvx-ready.page-template-page-template-hinnakiri .table-title h3 {font:600 24px/1.35 Montserrat,sans-serif;margin:0 0 24px;color:var(--fvx-text);}

body.fvx-ready.page-template-page-template-hinnakiri .price-extra h3 {font:600 24px/1.35 Montserrat,sans-serif;margin:32px 0 20px;color:var(--fvx-text);}

/* Classic Woo checkout: native fields and payment markup, shared FV surfaces. */
body.fvx-ready.woocommerce-checkout #primary .checkout-page-forms,
body.fvx-ready.woocommerce-checkout #primary>.entry-content,
body.fvx-ready.woocommerce-checkout #primary article>.entry-content {
 width:calc(100% - 2 * var(--fvx-gutter));max-width:var(--fvx-page-width);margin:0 auto;padding:40px 0 var(--fvx-section-space);
}
body.fvx-ready.woocommerce-checkout .checkout-container {max-width:none;margin:0;padding:0;}
body.fvx-ready.woocommerce-checkout .checkout-layout {display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px;align-items:start;}
body.fvx-ready.woocommerce-checkout :is(.checkout-billing,.checkout-order) {min-width:0;width:auto;max-width:none;padding:0;}
body.fvx-ready.woocommerce-checkout :is(.woocommerce-billing-fields,.woocommerce-additional-fields) {margin:0 0 28px;padding:24px;border:1px solid var(--fvx-border);border-radius:var(--fvx-radius);background:#fff;box-shadow:none;}
body.fvx-ready.woocommerce-checkout :is(.checkout-container h3,#order_review_heading) {font:600 24px/1.35 Montserrat,sans-serif;color:var(--fvx-text);padding:0;margin:0 0 24px;}
body.fvx-ready.woocommerce-checkout .woocommerce-billing-fields__field-wrapper {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 16px;}
body.fvx-ready.woocommerce-checkout form .form-row {float:none;width:100%;padding:0;margin:0;min-width:0;}
body.fvx-ready.woocommerce-checkout .woocommerce-billing-fields__field-wrapper>.form-row {grid-column:1/-1;}
body.fvx-ready.woocommerce-checkout .woocommerce-billing-fields__field-wrapper>:is(#billing_first_name_field,#billing_last_name_field) {grid-column:auto;}
body.fvx-ready.woocommerce-checkout form .form-row label {display:block;margin-bottom:8px;font:500 15px/1.6 Montserrat,sans-serif;color:var(--fvx-text);}
body.fvx-ready.woocommerce-checkout form :is(input.input-text,textarea,select) {box-sizing:border-box;display:block;width:100%;max-width:100%;min-height:48px;padding:11px 14px;border:1px solid #909c94;border-radius:8px;background:#fff;color:var(--fvx-text);font:400 16px/1.5 Montserrat,sans-serif;}
body.fvx-ready.woocommerce-checkout form textarea {min-height:120px;resize:vertical;}
body.fvx-ready.woocommerce-checkout .checkout-order {padding:24px;border:1px solid var(--fvx-border);border-radius:var(--fvx-radius);background:var(--fvx-surface);}
body.fvx-ready.woocommerce-checkout #order_review {margin:0;padding:0;background:transparent;border-radius:0;}
body.fvx-ready.woocommerce-checkout #primary .shop_table {width:100%;margin:0 0 24px;border:0!important;border-collapse:collapse;table-layout:fixed;font:400 15px/1.6 Montserrat,sans-serif;color:var(--fvx-text);}
body.fvx-ready.woocommerce-checkout #primary .shop_table :is(th,td) {padding:14px 0;border:0!important;border-bottom:1px solid var(--fvx-border)!important;color:var(--fvx-text);vertical-align:top;text-align:left;overflow-wrap:anywhere;}
body.fvx-ready.woocommerce-checkout #primary .shop_table :is(th,td):last-child {width:34%;padding-left:16px;text-align:right;}
body.fvx-ready.woocommerce-checkout #primary .shop_table th {font-weight:600;}
body.fvx-ready.woocommerce-checkout #payment {background:#fff;border:1px solid var(--fvx-border);border-radius:12px;}
body.fvx-ready.woocommerce-checkout #payment ul.payment_methods {padding:20px;border-bottom:1px solid var(--fvx-border);font-size:15px;line-height:1.6;}
body.fvx-ready.woocommerce-checkout #payment .payment_box {padding:16px;background:var(--fvx-surface);color:var(--fvx-text);font-size:14px;line-height:1.65;}
body.fvx-ready.woocommerce-checkout #payment .payment_box::before {border-bottom-color:var(--fvx-surface);}
body.fvx-ready.woocommerce-checkout #payment .place-order {padding:20px;}
body.fvx-ready.woocommerce-checkout #payment .woocommerce-privacy-policy-text {font-size:14px;line-height:1.7;}
body.fvx-ready.woocommerce-checkout #payment .woocommerce-form__label-for-checkbox {display:block;font-size:14px;line-height:1.7;}
body.fvx-ready.woocommerce-checkout #payment input[type=checkbox] {width:20px;height:20px;vertical-align:middle;margin-right:8px;accent-color:var(--fvx-accent);}
body.fvx-ready.woocommerce-checkout #place_order {display:block;width:100%;height:auto;min-height:48px;padding:12px 20px;margin-top:24px;border:0;border-radius:999px;background:var(--fvx-accent);color:#111;font:600 16px/1.5 Montserrat,sans-serif;}
body.fvx-ready.woocommerce-checkout #place_order:disabled {opacity:.6;cursor:not-allowed;}
body.fvx-ready.woocommerce-checkout .woocommerce-checkout-coupon-container {margin:0 0 28px;padding:0;max-width:none;width:100%;}
body.fvx-ready.woocommerce-checkout .woocommerce-checkout-coupon-container .woocommerce-info {padding:18px 20px;background:var(--fvx-surface);border:1px solid var(--fvx-border);border-radius:12px;box-shadow:none;color:var(--fvx-text);font:400 15px/1.65 Montserrat,sans-serif;}
body.fvx-ready.woocommerce-checkout .woocommerce-checkout-coupon-container form.checkout_coupon {padding:20px;border:1px solid var(--fvx-border);border-radius:12px;margin-top:16px;}
body.fvx-ready.woocommerce-checkout #primary :is(.woocommerce-message,.woocommerce-error) {visibility:visible;background:#f4f7f4;color:#151815;border:1px solid var(--fvx-border);font-size:15px;line-height:1.6;}
body.fvx-ready.woocommerce-checkout #primary .woocommerce-message {display:block;}
body.fvx-ready.woocommerce-checkout #wc_gc_cart_redeem_form {margin:24px 0;}
body.fvx-ready.woocommerce-checkout #wc_gc_cart_redeem_form input {font-size:16px;min-height:48px;max-width:100%;}
body.fvx-ready.woocommerce-checkout #wc_gc_cart_redeem_form button {background:var(--fvx-accent);color:#111;min-height:48px;border:0;border-radius:999px;padding:12px 20px;font:600 15px/1.5 Montserrat,sans-serif;}
@media(max-width:899px){body.fvx-ready.woocommerce-checkout .checkout-layout {grid-template-columns:minmax(0,1fr);gap:4px;}}
@media(max-width:599px){
 body.fvx-ready.woocommerce-checkout :is(.woocommerce-billing-fields,.woocommerce-additional-fields,.checkout-order) {padding:20px;}
 body.fvx-ready.woocommerce-checkout .woocommerce-billing-fields__field-wrapper {grid-template-columns:minmax(0,1fr);}
 body.fvx-ready.woocommerce-checkout #payment :is(ul.payment_methods,.place-order) {padding:16px;}
}

body.fvx-ready.woocommerce-checkout .woocommerce-checkout-coupon-container {border:0;box-shadow:none;background:transparent;}

/* Filled cart uses the same brand accent, gutters and touch sizes as checkout. */
body.fvx-ready.woocommerce-cart #primary {width:calc(100% - 2 * var(--fvx-gutter));max-width:var(--fvx-page-width);margin-inline:auto;}
body.fvx-ready.woocommerce-cart .wc-block-cart__submit-button {background:var(--fvx-accent);color:#111;border-radius:999px;min-height:48px;font:600 16px/1.5 Montserrat,sans-serif;}
body.fvx-ready.woocommerce-cart .wc-block-cart__submit-button:hover {background:var(--fvx-accent);filter:brightness(.95);color:#111;}
body.fvx-ready.woocommerce-cart .wc-block-components-quantity-selector {min-height:44px;}
body.fvx-ready.woocommerce-cart .wc-block-components-quantity-selector .wc-block-components-quantity-selector__button {min-height:42px;min-width:32px;}
body.fvx-ready.woocommerce-cart .wc-block-cart-item__remove-link {display:inline-flex;align-items:center;min-height:44px;font-size:14px;}

/* Existing indexed ticket archives get an informative introduction without changing term data. */
body.fvx-ready.tax-product_cat .fvx-shop-intro {max-width:65ch;margin:24px 0 0;font:400 16px/1.75 Montserrat,sans-serif;color:var(--fvx-muted);}
body.fvx-ready.tax-product_cat .fvx-shop-intro p {margin:0 0 12px;}
body.fvx-ready.tax-product_cat .fvx-shop-intro a {display:inline-flex;align-items:center;gap:8px;min-height:44px;color:var(--fvx-text);font-weight:600;text-decoration:underline;text-underline-offset:4px;}

/* Same filled-cart surface and spacing for both legacy brand themes. */
body.fvx-ready.woocommerce-cart #primary {padding:48px 0 var(--fvx-section-space);}
body.fvx-ready.woocommerce-cart #primary article {margin:0;}
body.fvx-ready.woocommerce-cart #primary article>.entry-content {margin:0;padding:0;}
body.fvx-ready.woocommerce-cart .wc-block-cart.wc-block-components-sidebar-layout {display:grid;grid-template-columns:minmax(0,1.8fr) minmax(300px,1fr);gap:32px;align-items:start;margin-top:32px;}
body.fvx-ready.woocommerce-cart .wc-block-cart__main {width:100%;min-width:0;padding:0;}
body.fvx-ready.woocommerce-cart .wc-block-cart__sidebar {box-sizing:border-box;width:100%;min-width:0;max-width:none;margin:0;padding:24px;border:1px solid var(--fvx-border);border-radius:var(--fvx-radius);background:var(--fvx-surface);align-self:start;}
body.fvx-ready.woocommerce-cart .wc-block-cart-items {width:100%;font-size:15px;}
body.fvx-ready.woocommerce-cart .wc-block-cart-items th {font-size:12px;color:var(--fvx-muted);}
body.fvx-ready.woocommerce-cart .wc-block-cart-items th.wc-block-cart-items__header-product {visibility:visible;text-align:left;}
body.fvx-ready.woocommerce-cart .wc-block-cart-item__product {padding-left:0;}
body.fvx-ready.woocommerce-cart .wc-block-cart-items :is(th,td):last-child {text-align:right;}
body.fvx-ready.woocommerce-cart .wc-block-cart-items:not(:has(.wc-block-cart-item__image img:not([src*="woocommerce-placeholder"]))) :is(.wc-block-cart-items__header-image,.wc-block-cart-item__image) {display:none;}
body.fvx-ready.woocommerce-cart .wc-block-cart-item__image img[src*="woocommerce-placeholder"] {display:none;}
body.fvx-ready.woocommerce-cart .wc-block-cart__submit-button {text-decoration:none;}
body.fvx-ready.woocommerce-cart .wc-block-cart__submit-button:hover {text-decoration:none;}
@media(max-width:899px){body.fvx-ready.woocommerce-cart .wc-block-cart.wc-block-components-sidebar-layout {grid-template-columns:minmax(0,1fr);gap:28px;}body.fvx-ready.woocommerce-cart #primary {padding-top:32px;}}

/* Shared card corners and product-name weight win over legacy brand media rules. */
body.fvx-ready.woocommerce-cart #primary .wc-block-cart__sidebar {border-radius:var(--fvx-radius);}
body.fvx-ready.woocommerce-cart #primary .wc-block-components-product-name {font:600 17px/1.5 Montserrat,sans-serif;color:var(--fvx-text);text-decoration:none;}

/* A missing address should offer the same calm, readable recovery on either brand. */
body.fvx-ready .fvx-not-found {background:var(--fvx-surface);color:var(--fvx-text);padding:clamp(56px,8vw,112px) var(--fvx-gutter);}
body.fvx-ready .fvx-not-found-inner {max-width:var(--fvx-page-width);margin-inline:auto;}
body.fvx-ready .fvx-not-found-code {display:inline-block;margin:0 0 24px;padding:6px 14px;border-radius:999px;background:var(--fvx-accent);color:#111;font:600 14px/24px Montserrat,sans-serif;}
body.fvx-ready .fvx-not-found h1 {max-width:900px;font:400 clamp(40px,5vw,72px)/1.1 Anton,sans-serif;text-transform:uppercase;margin:0 0 24px;color:var(--fvx-text);}
body.fvx-ready .fvx-not-found-intro {max-width:64ch;font-size:17px;line-height:1.7;color:var(--fvx-muted);margin:0 0 32px;}
body.fvx-ready .fvx-not-found-links {display:flex;flex-wrap:wrap;gap:12px;}
body.fvx-ready .fvx-not-found-help {margin:32px 0 0;font-size:15px;}
body.fvx-ready .fvx-not-found-help a {color:inherit;text-decoration:underline;text-underline-offset:4px;}
@media(max-width:479px) {body.fvx-ready .fvx-not-found-links {display:grid;}body.fvx-ready .fvx-not-found-intro {font-size:16px;}}

/* Detail-page price tables share the readable, keyboard-scrollable price-list behavior. */
body.fvx-ready :is(.fvx-service,.fvx-center) .fvx-center-table-scroll {max-width:100%;border:1px solid var(--fvx-border);}
body.fvx-ready :is(.fvx-service,.fvx-center) .fvx-center-table-scroll table {table-layout:auto;margin:0;}
body.fvx-ready :is(.fvx-service,.fvx-center) .fvx-center-table-scroll :is(th,td) {min-width:110px;overflow-wrap:normal;word-break:normal;}
body.fvx-ready :is(.fvx-service,.fvx-center) .fvx-detail-table-note td {font-size:13px;line-height:1.6;background:#f0f3f0;}
body.fvx-ready .fvx-detail-table-hint {display:none;}
@media(max-width:767px) {body.fvx-ready .fvx-detail-table-hint {display:block;font:400 13px/1.5 Montserrat,sans-serif;color:var(--fvx-muted);margin:0 0 10px;}}

/* Figma trainer 110:3814: portrait, then identity on mobile; side by side on desktop. */
body.fvx-ready .fvx-trainer-layout-no-photo {grid-template-columns:minmax(0,1fr);}

/* The source trainer view places contact links inline beneath the name, without another card. */
body.fvx-ready .fvx-trainer-contact {display:flex;flex-wrap:wrap;align-items:center;gap:8px 24px;padding:0;border:0;border-radius:0;background:transparent;margin-bottom:32px;}
body.fvx-ready .fvx-trainer-contact .screen-reader-text {position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}
body.fvx-ready .fvx-trainer-intro {margin-bottom:12px;}

/* Figma 110:4296 / 110:5002 and mobile 110:3742: one photographic catalog header.
   Light cards and all content surfaces remain the user-approved direction. */
body.fvx-ready .fvx-catalog-hero {min-height:600px;padding:104px 0 64px;display:flex;flex-direction:row;align-items:flex-end;background:#151815;color:#fff;overflow:hidden;}
body.fvx-ready .fvx-catalog-hero>img.fvx-catalog-hero-image {position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:0;}
body.fvx-ready .fvx-catalog-hero-shade {display:block;position:absolute;inset:0;z-index:0;background:linear-gradient(90deg,rgba(0,0,0,.84),rgba(0,0,0,.52) 58%,rgba(0,0,0,.1)),linear-gradient(0deg,rgba(0,0,0,.65),transparent 70%);}
body.fvx-ready .fvx-catalog-hero>.fvx-catalog-container {position:relative;z-index:1;order:0;padding-block:0;}
body.fvx-ready .fvx-catalog-hero h1 {max-width:100%;font-size:clamp(48px,6.667vw,96px);line-height:1.05;color:#fff;margin:0 0 20px;}
body.fvx-ready .fvx-catalog-hero .fvx-catalog-intro {max-width:774px;color:#fff;font-size:16px;line-height:1.6;}
body.fvx-ready .fvx-catalog-hero .fvx-catalog-intro p:last-child {margin-bottom:0;}
@media(max-width:767px) {
 body.fvx-ready .fvx-catalog-hero {min-height:400px;padding:64px 0 40px;}
 body.fvx-ready .fvx-catalog-hero>img.fvx-catalog-hero-image {position:absolute;inset:0;width:100%;height:100%;order:0;}
 body.fvx-ready .fvx-catalog-hero h1 {font-size:48px;}
 body.fvx-ready .fvx-catalog-hero .fvx-catalog-intro {max-width:none;}
 body.fvx-ready .fvx-catalog-hero-shade {background:linear-gradient(0deg,rgba(0,0,0,.88),rgba(0,0,0,.64) 65%,rgba(0,0,0,.28));}
}

/* Keep long existing service descriptions readable below the compact photographic lead. */
body.fvx-ready .fvx-catalog-overview {max-width:774px;margin:0 0 40px;font-size:16px;line-height:1.7;color:var(--fvx-text);}
body.fvx-ready .fvx-catalog-overview p {margin:0 0 20px;}
body.fvx-ready .fvx-catalog-overview p:last-child {margin-bottom:0;}

/* Figma event index mobile 110:3562: one photograph above the light event list. */
body.fvx-ready .fvx-event-index-hero {min-height:600px;padding:104px 0 64px;display:flex;flex-direction:row;align-items:flex-end;background:#151815;color:#fff;overflow:hidden;}
body.fvx-ready .fvx-event-index-hero>img,body.fvx-ready .fvx-event-index-hero>picture {position:absolute;inset:0;width:100%;height:100%;z-index:0;object-fit:cover;object-position:center top;}
body.fvx-ready .fvx-event-index-hero>picture img {position:static;width:100%;height:100%;object-fit:cover;}
body.fvx-ready .fvx-event-index-hero::after {display:block;content:'';position:absolute;inset:0;z-index:0;background:linear-gradient(90deg,rgba(0,0,0,.84),rgba(0,0,0,.52) 58%,rgba(0,0,0,.1)),linear-gradient(0deg,rgba(0,0,0,.65),transparent 70%);}
body.fvx-ready .fvx-event-index-hero>.fvx-event-container {position:relative;z-index:1;padding-block:0;order:0;}
body.fvx-ready .fvx-event-index-hero h1 {max-width:100%;font-size:clamp(48px,6.667vw,96px);line-height:1.05;color:#fff;margin:0 0 20px;}
body.fvx-ready .fvx-event-index-intro {max-width:774px;color:#fff;font-size:16px;line-height:1.6;margin:0;}
body.fvx-ready .fvx-event-index-overview {max-width:774px;font-size:16px;line-height:1.7;margin:0 0 40px;}
body.fvx-ready .fvx-event-index-overview p {margin:0 0 20px;}
body.fvx-ready .fvx-event-upcoming-title {font:400 clamp(32px,4.45vw,64px)/1.1 Anton,sans-serif;text-transform:uppercase;color:var(--fvx-text);margin:0 0 32px;}
@media(max-width:767px) {
 body.fvx-ready .fvx-event-index-hero {min-height:400px;padding:64px 0 40px;}
 body.fvx-ready .fvx-event-index-hero h1 {font-size:48px;}
 body.fvx-ready .fvx-event-index-hero::after {background:linear-gradient(0deg,rgba(0,0,0,.88),rgba(0,0,0,.64) 65%,rgba(0,0,0,.28));}
 body.fvx-ready .fvx-event-index-intro {max-width:none;}
 body.fvx-ready .fvx-event-upcoming-title {margin-bottom:24px;}
}
@media(max-width:600px) {
 body.fvx-ready.fvx-event-index .card-mansory {grid-template-columns:minmax(0,1fr);gap:24px;}
 body.fvx-ready.fvx-event-index .events-card {padding:8px 8px 24px;border-radius:16px;}
 body.fvx-ready.fvx-event-index .events-card-body {padding:16px 12px 0;gap:16px;}
 body.fvx-ready.fvx-event-index .events-card-title {font-size:20px;line-height:1.3;}
}

body.fvx-ready.fvx-event-index .events-card-btn img {filter:none;}

/* Team source mobile 110:3691: shared photo header and two portrait cards per phone row. */
body.fvx-ready .fvx-team-hero {position:relative;isolation:isolate;display:flex;align-items:flex-end;min-height:600px;padding:104px 0 64px;background:#151815;color:#fff;overflow:hidden;}
body.fvx-ready .fvx-team-hero>img {position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center top;z-index:0;}
body.fvx-ready .fvx-team-hero-shade {position:absolute;inset:0;z-index:0;background:linear-gradient(0deg,rgba(0,0,0,.88),rgba(0,0,0,.15) 85%);}
body.fvx-ready .fvx-team-hero-content {position:relative;z-index:1;width:calc(100% - 2 * var(--fvx-gutter));max-width:var(--fvx-page-width);margin-inline:auto;}
body.fvx-ready .fvx-team-hero .page-title {font:400 clamp(48px,6.667vw,96px)/1.05 Anton,sans-serif;text-transform:uppercase;color:#fff;margin:0 0 20px;text-align:left;}
body.fvx-ready .fvx-team-hero .page-subtitle {max-width:774px;font:400 16px/1.6 Montserrat,sans-serif;color:#fff;text-align:left;}
body.fvx-ready .fvx-team-hero .page-subtitle p {margin:0 0 20px;}
body.fvx-ready .fvx-team-hero .page-subtitle p:last-child {margin-bottom:0;}
body.fvx-ready .fvx-team-hero .page-cta {margin-top:24px;}
@media(max-width:767px) {
 body.fvx-ready .fvx-team-hero {min-height:400px;padding:64px 0 40px;}
 body.fvx-ready .fvx-team-hero .page-title {font-size:48px;}
 body.fvx-ready .fvx-team-hero-shade {background:linear-gradient(0deg,rgba(0,0,0,.9),rgba(0,0,0,.62) 65%,rgba(0,0,0,.28));}
 body.fvx-ready.page-template-page-meeskond .meeskond-archive-grid {grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 12px;}
 body.fvx-ready.page-template-page-meeskond .team-card-body {padding:12px;gap:6px;}
 body.fvx-ready.page-template-page-meeskond .team-card-name {font-size:clamp(16px,4.19vw,18px);line-height:1.35;}
 body.fvx-ready.page-template-page-meeskond .team-card-role {font-size:14px;line-height:1.5;}
}

/* Figma contact 110:5747 and booking 110:5318/110:5642 photo headers.
   Existing form and overview surfaces remain light. */
body.fvx-ready :is(.fvx-contact-hero,.fvx-booking-hero) {min-height:600px;padding:104px 0 64px;display:flex;flex-direction:row;align-items:flex-end;background:#151815;color:#fff;overflow:hidden;}
body.fvx-ready :is(.fvx-contact-hero,.fvx-booking-hero)>img,
body.fvx-ready :is(.fvx-contact-hero,.fvx-booking-hero)>picture {position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center top;z-index:0;}
body.fvx-ready :is(.fvx-contact-hero,.fvx-booking-hero)>picture img {position:static;width:100%;height:100%;object-fit:cover;}
body.fvx-ready :is(.fvx-contact-hero,.fvx-booking-hero)::after {display:block;content:'';position:absolute;inset:0;z-index:0;background:linear-gradient(90deg,rgba(0,0,0,.84),rgba(0,0,0,.52) 58%,rgba(0,0,0,.1)),linear-gradient(0deg,rgba(0,0,0,.65),transparent 70%);}
body.fvx-ready :is(.fvx-contact-hero,.fvx-booking-hero)>.fvx-catalog-container {position:relative;z-index:1;order:0;padding-block:0;}
body.fvx-ready :is(.fvx-contact-hero,.fvx-booking-hero) h1 {max-width:100%;font-size:clamp(48px,6.667vw,96px);line-height:1.05;color:#fff;margin:0 0 20px;}
body.fvx-ready :is(.fvx-contact-subtitle,.fvx-booking-subtitle) {max-width:774px;color:#fff;font-size:16px;line-height:1.6;}
body.fvx-ready .fvx-booking-title-row {display:flex;flex-direction:row;align-items:flex-end;justify-content:space-between;gap:32px;}
body.fvx-ready .fvx-booking-title-row>div:first-child {min-width:0;max-width:calc(100% - 240px);}
body.fvx-ready .fvx-booking-powered {display:flex;flex-direction:column;flex-shrink:0;align-items:flex-start;gap:8px;margin:0;padding:0;border:0;border-radius:0;background:transparent;color:#fff;}
body.fvx-ready .fvx-booking-powered img {max-width:208px;max-height:44px;object-fit:contain;}
@media(max-width:1000px) {
 body.fvx-ready .fvx-booking-title-row {flex-direction:column;align-items:flex-start;gap:24px;}
 body.fvx-ready .fvx-booking-title-row>div:first-child {max-width:100%;}
}
@media(max-width:767px) {
 body.fvx-ready :is(.fvx-contact-hero,.fvx-booking-hero) {min-height:400px;padding:64px 0 40px;}
 body.fvx-ready :is(.fvx-contact-hero,.fvx-booking-hero) h1 {font-size:48px;}
 body.fvx-ready :is(.fvx-contact-hero,.fvx-booking-hero)::after {background:linear-gradient(0deg,rgba(0,0,0,.88),rgba(0,0,0,.64) 65%,rgba(0,0,0,.28));}
 body.fvx-ready :is(.fvx-contact-subtitle,.fvx-booking-subtitle) {max-width:none;}
 body.fvx-ready .fvx-booking-powered img {max-width:160px;max-height:36px;}
}

@media(max-width:767px) {
 body.fvx-ready :is(.fvx-contact-hero,.fvx-booking-hero)>img,
 body.fvx-ready :is(.fvx-contact-hero,.fvx-booking-hero)>picture img {object-position:right top;}
}

/* Source desktop 600px frame includes the navigation (absolute in Figma).
   Keep a solid separate navigation and compensate its measured height, without an overlay. */
@media(min-width:768px) {
 body.fvx-ready :is(.fvx-catalog-hero,.fvx-event-index-hero,.fvx-team-hero,.fvx-contact-hero,.fvx-booking-hero,.fvx-center-hero) {
  min-height:max(360px,calc(600px - var(--fvx-header-height,112px)));padding-top:64px;
 }
 body.fvx-ready .fvx-center-hero h1 {font-size:clamp(48px,6.667vw,96px);line-height:1.05;}
}

/* Read-only test copies cannot embed external frames; keep their location action usable. */
body.fvx-ready .fvx-center-map-preview {display:flex;align-items:center;justify-content:space-between;gap:24px;padding:32px;background:var(--fvx-surface);border:1px solid var(--fvx-border);border-radius:var(--fvx-radius);}
body.fvx-ready .fvx-center-map-preview h3 {font:600 24px/1.35 Montserrat,sans-serif;margin:0 0 12px;color:var(--fvx-text);}
body.fvx-ready .fvx-center-map-preview p {margin:0;color:var(--fvx-muted);}
body.fvx-ready .fvx-center-map-preview .fvx-button {flex-shrink:0;}
@media(max-width:767px){body.fvx-ready .fvx-center-map-preview {display:block;padding:24px;}body.fvx-ready .fvx-center-map-preview .fvx-button {margin-top:24px;}}

/* Reading width and real side gutters for the legacy information-page templates. */
body.fvx-ready:not(.woocommerce-checkout):not(.woocommerce-account):not(.woocommerce-cart) .fvx-document > .site-main {
 width:calc(100% - 2 * var(--fvx-gutter));max-width:800px;margin:0 auto;
 padding:clamp(24px,4vw,48px) 0 64px;
}
body.fvx-ready:not(.woocommerce-checkout):not(.woocommerce-account):not(.woocommerce-cart) .fvx-document > .site-main .entry-content {margin:0;}
body.fvx-ready:not(.woocommerce-checkout):not(.woocommerce-account):not(.woocommerce-cart) .fvx-document > .site-main :where(ul,ol) {padding-left:1.5em;margin-left:0;}
body.fvx-ready:not(.woocommerce-checkout):not(.woocommerce-account):not(.woocommerce-cart) .fvx-document > .site-main li + li {margin-top:.6em;}

/* Transactional result/confirmation pages share the approved quiet light surface. */
body.fvx-ready .fvx-flow-result {
 width:calc(100% - 2 * var(--fvx-gutter));max-width:760px;margin:0 auto;
 min-height:380px;padding:clamp(48px,7vw,96px) 0;
 display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px;text-align:center;
}
body.fvx-ready .fvx-flow-result h1 {font:400 clamp(28px,3.5vw,44px)/1.2 Anton,sans-serif;text-transform:uppercase;letter-spacing:0;margin:0;overflow-wrap:anywhere;}
body.fvx-ready .fvx-flow-result p {font:400 clamp(16px,1.5vw,18px)/1.65 Montserrat,sans-serif;margin:0;max-width:60ch;}
body.fvx-ready .fvx-flow-result .custom-container {margin:0;padding:0;max-width:none;}
body.fvx-ready .fvx-flow-result .custom-container>*+* {margin-top:24px;}
body.fvx-ready .fvx-flow-result .custom-form {margin:0;}
body.fvx-ready .fvx-flow-result .custom-button {
 display:inline-flex;align-items:center;justify-content:center;min-height:48px;
 padding:12px 24px;border:0;border-radius:999px;background:var(--fvx-accent);
 color:#151815;font:600 16px/1.4 Montserrat,sans-serif;text-decoration:none;cursor:pointer;
}
body.fvx-ready .fvx-flow-result .custom-form .custom-button {background:#b42318;color:#fff;}
body.fvx-ready .fvx-flow-result #countdown-timer {color:var(--fvx-muted);font-size:16px;}

/* Checkout owns its content gutter; avoid stacking information-page gutters. */
body.fvx-ready.woocommerce-checkout #primary.fvx-document > .site-main {width:auto;max-width:none;margin:0;padding:0;}
body.fvx-ready.woocommerce-order-received #primary article > .entry-content {max-width:900px;}
body.fvx-ready.woocommerce-order-received .woocommerce-order {width:100%;margin:0;}

/* v84: native signed-in Woo account views, preserving endpoint/form markup. */
body.fvx-ready.woocommerce-account.logged-in .woocommerce {max-width:none;display:grid;grid-template-columns:230px minmax(0,1fr);gap:32px 48px;align-items:start;}
body.fvx-ready.woocommerce-account.logged-in .woocommerce > .woocommerce-notices-wrapper {grid-column:1/-1;}
body.fvx-ready.woocommerce-account.logged-in .woocommerce-MyAccount-navigation,
body.fvx-ready.woocommerce-account.logged-in .woocommerce-MyAccount-content {float:none;width:auto;min-width:0;margin:0;}
body.fvx-ready.woocommerce-account .woocommerce-MyAccount-navigation ul {list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;}
body.fvx-ready.woocommerce-account .woocommerce-MyAccount-navigation li {margin:0;padding:0;}
body.fvx-ready.woocommerce-account .woocommerce-MyAccount-navigation a {display:flex;align-items:center;min-height:46px;padding:11px 16px;border:1px solid var(--fvx-border);border-radius:8px;background:#fff;color:#151815;font:600 14px/1.5 Montserrat,sans-serif;text-decoration:none;}
body.fvx-ready.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a {background:var(--fvx-accent);border-color:var(--fvx-accent);color:#111;}
body.fvx-ready.woocommerce-account .woocommerce-MyAccount-navigation a:hover {border-color:#151815;}
body.fvx-ready.woocommerce-account .woocommerce-MyAccount-content {font-size:16px;line-height:1.7;}
body.fvx-ready.woocommerce-account .woocommerce-MyAccount-content > :first-child {margin-top:0;}
body.fvx-ready.woocommerce-account .woocommerce-MyAccount-content table {width:100%;border-collapse:collapse;border:1px solid var(--fvx-border);font-size:14px;line-height:1.6;}
body.fvx-ready.woocommerce-account .woocommerce-MyAccount-content table :is(th,td) {padding:14px 12px;vertical-align:top;border-color:var(--fvx-border);}
body.fvx-ready.woocommerce-account .woocommerce-MyAccount-content table thead th {background:#f4f6f3;font-weight:600;}
body.fvx-ready.woocommerce-account .woocommerce-MyAccount-content a.button {display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:8px 14px;margin:4px 6px 4px 0;border:1px solid #9aa59d;border-radius:8px;color:#151815;background:#fff;text-decoration:none;font:600 13px/1.5 Montserrat,sans-serif;}
body.fvx-ready.woocommerce-account .woocommerce-MyAccount-content a.button:hover {border-color:#151815;background:#f4f6f3;}
body.fvx-ready.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;}
body.fvx-ready.woocommerce-account .woocommerce-Addresses::before,
body.fvx-ready.woocommerce-account .woocommerce-Addresses::after {display:none;}
body.fvx-ready.woocommerce-account .woocommerce-Address {float:none;width:auto;min-width:0;border:1px solid var(--fvx-border);border-radius:12px;padding:24px;}
body.fvx-ready.woocommerce-account .woocommerce-Address-title {display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:12px;margin:0 0 20px;}
body.fvx-ready.woocommerce-account .woocommerce-Address-title h2 {margin:0;font-size:22px;}
body.fvx-ready.woocommerce-account .woocommerce-Address-title a {font-size:14px;}
body.fvx-ready.woocommerce-account .woocommerce-Address address {margin:0;font-size:15px;font-style:normal;}
body.fvx-ready.woocommerce-account .woocommerce-MyAccount-content form {max-width:760px;}
body.fvx-ready.woocommerce-account .woocommerce-MyAccount-content fieldset {min-width:0;margin:28px 0;padding:24px;border:1px solid var(--fvx-border);border-radius:12px;}
body.fvx-ready.woocommerce-account .woocommerce-MyAccount-content fieldset legend {padding:0 8px;font-weight:600;font-size:20px;}
body.fvx-ready.woocommerce-account .woocommerce-MyAccount-content select {max-width:100%;min-height:48px;border:1px solid #909c94;border-radius:8px;background:#fff;color:#151815;font-size:16px;padding:10px 14px;}
body.fvx-ready.woocommerce-account .woocommerce-MyAccount-content .select2-container {max-width:100%;}
body.fvx-ready.woocommerce-account .woocommerce-MyAccount-content .select2-selection--single {height:auto;min-height:48px;display:flex;align-items:center;border:1px solid #909c94;border-radius:8px;}
body.fvx-ready.woocommerce-account .woocommerce-MyAccount-content .select2-selection__rendered {padding:8px 14px;color:#151815;}
body.fvx-ready.woocommerce-account .woocommerce-MyAccount-content .select2-selection__arrow {top:11px;}
body.fvx-ready.woocommerce-account .woocommerce-MyAccount-content .woocommerce-customer-details address {border:1px solid var(--fvx-border);border-radius:12px;padding:20px;font-style:normal;}
@media(max-width:900px){
 body.fvx-ready.woocommerce-account.logged-in .woocommerce {grid-template-columns:minmax(0,1fr);gap:28px;}
 body.fvx-ready.woocommerce-account .woocommerce-MyAccount-navigation ul {flex-direction:row;flex-wrap:wrap;gap:8px;}
 body.fvx-ready.woocommerce-account .woocommerce-MyAccount-navigation a {font-size:13px;padding:10px 12px;min-height:44px;}
}
@media(max-width:767px){
 body.fvx-ready.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses {grid-template-columns:minmax(0,1fr);}
 body.fvx-ready.woocommerce-account .woocommerce-Address {padding:20px;}
 body.fvx-ready.woocommerce-account .woocommerce-MyAccount-content fieldset {padding:20px 16px;}
 body.fvx-ready.woocommerce-account .woocommerce-orders-table tbody th.woocommerce-orders-table__cell-order-number {display:block;text-align:right!important;font-weight:400;border-bottom:1px solid var(--fvx-border);}
 body.fvx-ready.woocommerce-account .woocommerce-orders-table tbody th.woocommerce-orders-table__cell-order-number::before {content:attr(data-title) ': ';float:left;font-weight:600;}
 body.fvx-ready.woocommerce-account .woocommerce-orders-table tr {margin-bottom:20px;}
 body.fvx-ready.woocommerce-account .woocommerce-orders-table .woocommerce-orders-table__cell-order-actions {text-align:left!important;}
 body.fvx-ready.woocommerce-account .woocommerce-orders-table .woocommerce-orders-table__cell-order-actions::before {float:none;display:block;margin-bottom:8px;}
}

/* Native Montonio choices retain their handlers and provider identifiers. */
body.fvx-ready #payment .montonio-bank-item {border-radius:8px;min-height:48px;transition:background-color .15s,border-color .15s;}
body.fvx-ready #payment .montonio-bank-item.active {border-color:#111;background-color:var(--fvx-accent);color:#111;box-shadow:0 0 0 1px #111;}
body.fvx-ready #payment .montonio-bank-item:hover {border-color:#111;}
body.fvx-ready #payment .montonio-bank-item:focus-visible {outline:3px solid #111;outline-offset:4px;}
@media(prefers-reduced-motion:reduce){body.fvx-ready #payment .montonio-bank-item {transition:none;}}

/* v105: existing newsletter URL, central preferences form and legacy status messages. */
body.fvx-ready .fvx-newsletter-page {background:#fff;padding:64px 0 88px;color:#151815;}
body.fvx-ready .fvx-newsletter-heading {max-width:920px;margin:0 0 36px;}
body.fvx-ready .fvx-newsletter-eyebrow {font-size:13px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;margin:0 0 16px;}
body.fvx-ready .fvx-newsletter-heading h1 {font-family:Anton,sans-serif;font-weight:400;text-transform:uppercase;font-size:clamp(40px,5vw,72px);line-height:1.08;margin:0 0 24px;overflow-wrap:anywhere;}
body.fvx-ready .fvx-newsletter-heading>p:last-child {max-width:720px;font-size:18px;line-height:1.7;margin:0;}
body.fvx-ready .fvx-newsletter-card {display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,auto);align-items:center;gap:32px;border:1px solid #d8ddd9;border-radius:14px;background:#f7f7f7;padding:36px;}
body.fvx-ready .fvx-newsletter-card h2,body.fvx-ready .fvx-newsletter-status h2 {font-size:26px;line-height:1.3;margin:0 0 14px;}
body.fvx-ready .fvx-newsletter-card p {max-width:660px;line-height:1.7;margin:0;}
body.fvx-ready .fvx-newsletter-card-action {min-width:0;}
body.fvx-ready .fvx-newsletter-card-action .fvx-button {white-space:normal;text-align:left;}
body.fvx-ready .fvx-newsletter-card-action p {font-size:13px;margin:12px 0 0;color:#515b54;}
body.fvx-ready .fvx-newsletter-status {padding:24px;border:1px solid #d8ddd9;border-left:4px solid var(--fvx-accent);border-radius:8px;margin:0 0 28px;overflow-wrap:anywhere;}
body.fvx-ready .fvx-newsletter-status p {margin:0;line-height:1.7;}
body.fvx-ready .fvx-newsletter-existing {margin-top:36px;}
@media(max-width:760px){
 body.fvx-ready .fvx-newsletter-page {padding:36px 0 52px;}
 body.fvx-ready .fvx-newsletter-heading>p:last-child {font-size:16px;}
 body.fvx-ready .fvx-newsletter-card {grid-template-columns:minmax(0,1fr);gap:24px;padding:24px;}
 body.fvx-ready .fvx-newsletter-card h2,body.fvx-ready .fvx-newsletter-status h2 {font-size:23px;}
 body.fvx-ready .fvx-newsletter-card-action .fvx-button {max-width:100%;}
}

/* v106: document typography; no commerce/account form selectors. */
body.fvx-ready .fvx-policy-page .entry-content {font-size:16px;line-height:1.8;overflow-wrap:anywhere;}
body.fvx-ready .fvx-policy-page .entry-content h2 {font:600 clamp(22px,2.2vw,28px)/1.35 Montserrat,sans-serif;margin:40px 0 18px;color:var(--fvx-text);}
body.fvx-ready .fvx-policy-page .entry-content h3 {font:600 20px/1.4 Montserrat,sans-serif;margin:28px 0 14px;color:var(--fvx-text);}
body.fvx-ready .fvx-policy-page .entry-content p {line-height:1.8;}
body.fvx-ready .fvx-policy-page .entry-content a {text-underline-offset:3px;}

/* About-page carousel uses the same straight cards as the team index. */
body.fvx-ready.page-template-page-template-about-us .fvx-about-empty-content {display:none;}
body.fvx-ready.page-template-page-template-about-us .team-slider {max-width:var(--fvx-page-width);}
body.fvx-ready.page-template-page-template-about-us .team-slider-viewport {overflow:hidden;padding-block:4px;}
body.fvx-ready.page-template-page-template-about-us .team-slider-inner {align-items:stretch;}
body.fvx-ready.page-template-page-template-about-us .team-slide {display:flex;}
body.fvx-ready.page-template-page-template-about-us .team-card {display:flex;flex:1;flex-direction:column;min-width:0;overflow:hidden;border:1px solid var(--fvx-border);border-radius:var(--fvx-radius);background:#fff;text-align:left;}
body.fvx-ready.page-template-page-template-about-us .team-card-image {aspect-ratio:4/5;background-position:center top;}
body.fvx-ready.page-template-page-template-about-us .team-card-image:focus-visible {outline-offset:-5px;}
body.fvx-ready.page-template-page-template-about-us .team-card-body {display:flex;flex:1;flex-direction:column;align-items:flex-start;gap:8px;width:100%;margin:0;padding:20px;transform:none;box-shadow:none;border-top:3px solid var(--fvx-accent);}
body.fvx-ready.page-template-page-template-about-us .team-card-body>* {transform:none;text-align:left;}
body.fvx-ready.page-template-page-template-about-us .team-card-name {margin:0;padding:0;border:0;font:600 21px/1.35 Montserrat,sans-serif;text-transform:none;overflow-wrap:anywhere;}
body.fvx-ready.page-template-page-template-about-us .team-card-name a {color:var(--fvx-text);text-decoration:none;}
body.fvx-ready.page-template-page-template-about-us .team-card-name a:hover {text-decoration:underline;text-underline-offset:4px;}
body.fvx-ready.page-template-page-template-about-us .team-card-role {margin:0;font:400 15px/1.6 Montserrat,sans-serif;color:var(--fvx-muted);}
body.fvx-ready.page-template-page-template-about-us .fvx-about-team-controls {display:flex;justify-content:flex-end;gap:12px;margin-top:24px;}
body.fvx-ready.page-template-page-template-about-us .team-nav {position:static;inset:auto;transform:none;flex:none;width:44px;height:44px;margin:0;border:1px solid var(--fvx-border);background:#fff;color:var(--fvx-text);}
body.fvx-ready.page-template-page-template-about-us .team-nav:hover {background:var(--fvx-accent);border-color:var(--fvx-text);}
body.fvx-ready.page-template-page-template-about-us .team-nav img {width:18px;height:18px;}
body.fvx-ready.page-template-page-template-about-us .fvx-about-team-all.hide-desktop {margin-top:24px;}
body.fvx-ready.page-template-page-template-about-us .fvx-about-team-all .fvx-button {background:#000;color:#fff;white-space:normal;}
body.fvx-ready.page-template-page-template-about-us .fvx-about-team-all .fvx-button img {width:20px;height:20px;filter:invert(1);}
@media(max-width:767px){
 body.fvx-ready.page-template-page-template-about-us .team-card-body {padding:16px;}
 body.fvx-ready.page-template-page-template-about-us .team-card-name {font-size:20px;}
}
