/* Figma 110:4717 detail + established FV homepage card design. User requires full 4:5 posters. */
.fvx-event-container{width:calc(100% - 160px);max-width:1280px;margin:0 auto}body.fvx-event-index #masthead.fvx-header{margin-bottom:-112px;background:rgba(13,14,13,.35);backdrop-filter:blur(6px)}body.fvx-event-index #masthead.fvx-header.fvx-scrolled{background:rgba(13,14,13,.96)}.fvx-event-list{margin:0!important;padding:0!important;max-width:none!important;width:100%;background:#f5f5f5;color:#000;font:500 16px/24px Montserrat,sans-serif}.fvx-event-list *{box-sizing:border-box}.fvx-event-list h1,.fvx-event-list h2,.fvx-event-list p{margin:0;padding:0;letter-spacing:normal}.fvx-event-index-hero{min-height:600px;position:relative;isolation:isolate;display:flex;align-items:flex-end;padding:180px 0 64px;color:#fff;background:#000}.fvx-event-index-hero>picture{position:absolute;inset:0;width:100%;height:100%;z-index:-2;display:block}.fvx-event-index-hero>picture>img,.fvx-event-index-hero>img{position:absolute;inset:0;object-fit:cover;object-position:center top;width:100%;height:100%;z-index:-2}.fvx-event-index-hero::after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 30%,#000);z-index:-1}.fvx-event-index-hero h1{font:400 96px/1.05 Anton,sans-serif;text-transform:uppercase;color:inherit}.fvx-event-index-intro{max-width:774px;margin-top:16px}.fvx-event-index-actions{margin-top:32px}.fvx-event-list-content{padding:64px 0 80px}.fvx-event-list .entry-content{max-width:none;margin:0}.fvx-event-list .entry-content>p:empty{display:none}body.fvx-event-index .filter-container{max-width:none;margin:0 0 32px;padding:0}body.fvx-event-index .filter-container::before,body.fvx-event-index .filter-container::after{display:none}body.fvx-event-index .horizontal-months{padding:0;margin:0;gap:8px;overflow-x:auto;scrollbar-width:thin;list-style:none}body.fvx-event-index .horizontal-months .month-link{padding:14px 20px;border-radius:100px;clip-path:none;background:#fff;border:1px solid #0002;color:#000;font:600 14px/20px Montserrat,sans-serif;transform:none;white-space:nowrap;text-decoration:none}body.fvx-event-index .horizontal-months .month-link[aria-current=true],body.fvx-event-index .horizontal-months .month-link:hover{background:var(--fvx-accent)}body.fvx-event-index .filter-container .arrow{display:none}body.fvx-event-index .card-container{max-width:none;margin:0}body.fvx-event-index .card-mansory{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;list-style:none;margin:0;padding:0;column-count:unset}body.fvx-event-index .card-mansory>li{width:auto;min-width:0;margin:0;box-sizing:border-box}body.fvx-event-index .events-card{display:flex;flex-direction:column;height:100%;margin:0;padding:8px 8px 24px;border:1px solid #0000001a;border-radius:16px;background:#fff;color:#111;box-shadow:none}body.fvx-event-index .events-card-image{display:block;width:100%;height:auto;aspect-ratio:4/5;border-radius:12px;overflow:hidden;background:#e8e8e8}body.fvx-event-index .events-card-image picture,body.fvx-event-index .events-card-image img{display:block;width:100%;height:100%;object-fit:contain;max-width:100%}body.fvx-event-index .events-card-body{flex:1;display:flex;flex-direction:column;align-items:flex-start;gap:16px;padding:16px 12px 0;text-align:left}body.fvx-event-index .events-card-title{font:600 20px/1.3 Montserrat,sans-serif;text-transform:none;color:#000;margin:0}body.fvx-event-index .events-card-title a{color:inherit;text-decoration:none}body.fvx-event-index .events-card-date{font:500 14px/20px Montserrat,sans-serif;color:#666;margin:0}body.fvx-event-index .events-card-btn{display:inline-flex;gap:6px;align-items:center;padding:0;margin-top:auto;background:none;color:#000;border:0;clip-path:none;transform:none;box-shadow:none;font:600 14px/20px Montserrat,sans-serif;text-decoration:none}body.fvx-event-index .events-card-btn span,body.fvx-event-index .events-card-btn img{transform:none}body.fvx-event-index .events-card-btn img{display:block;width:20px;height:20px;margin:0;filter:invert(1)}body.fvx-event-index .no-events-message{padding:32px 0;text-align:left;font:500 16px/24px Montserrat,sans-serif;color:#000}.fvx-event-index-newsletter{padding:64px 0}.fvx-event-index-newsletter h2{font:400 48px/1.1 Anton,sans-serif;color:#000;margin:0 0 24px}
/* Event template content, field IDs, inline handlers and dates remain from the original. */
body.fvx-event-detail #masthead.fvx-header{margin-bottom:0;background:#0d0e0d}body.fvx-event-detail #primary.events{margin:0!important;padding:80px 0!important;max-width:none!important;width:100%;background:#f5f5f5;color:#000;font:500 16px/24px Montserrat,sans-serif}body.fvx-event-detail #primary *{box-sizing:border-box}body.fvx-event-detail .post-container{width:calc(100% - 160px);max-width:1280px;margin:0 auto;display:grid;grid-template-columns:minmax(0,1.851852fr) minmax(0,1fr);gap:48px;align-items:start}body.fvx-event-detail .post-image{grid-column:1;grid-row:1;position:relative;top:auto;flex:none;padding:0;width:100%;aspect-ratio:4/5;border-radius:16px;overflow:hidden;background:#e8e8e8}body.fvx-event-detail .post-image>picture,body.fvx-event-detail .post-image img{display:block;width:100%;height:100%;object-fit:contain;max-width:100%}body.fvx-event-detail .post-content{grid-column:1;grid-row:2;padding:0;margin:0;min-width:0;flex:none;color:#000}body.fvx-event-detail .post-content h1{font:400 64px/1.05 Anton,sans-serif;text-transform:uppercase;letter-spacing:normal;color:#000;margin:0 0 32px;overflow-wrap:anywhere}body.fvx-event-detail .post-content h2{font:600 24px/1.2 Montserrat,sans-serif;color:#000;text-transform:none;margin:32px 0 24px}body.fvx-event-detail .post-content h3{font:600 20px/1.3 Montserrat,sans-serif;color:#000;text-transform:none}body.fvx-event-detail .post-content p{font-size:16px;line-height:24px;margin:0 0 20px}body.fvx-event-detail .post-content a{color:inherit;text-decoration:underline;text-underline-offset:3px}body.fvx-event-detail .post-content>.event-dates{display:none}body.fvx-event-detail .post-content .content{min-width:0;overflow-wrap:anywhere}body.fvx-event-detail .post-content .wp-block-table{overflow-x:auto;max-width:100%;margin:24px 0}body.fvx-event-detail .post-content table{width:100%;border-collapse:collapse;background:#fff;color:#000;font:500 14px/20px Montserrat,sans-serif}body.fvx-event-detail .post-content th,body.fvx-event-detail .post-content td{padding:12px;border:0;border-bottom:1px solid #0001;text-align:left}body.fvx-event-detail .post-content tr:nth-child(even){background:#f5f5f5}body.fvx-event-detail .fvx-event-summary{grid-column:2;grid-row:1/span 2;position:sticky;top:150px;align-self:start;padding:0;min-width:0;color:#000}body.fvx-event-detail .fvx-event-summary h2{font:600 24px/1.2 Montserrat,sans-serif;color:#000;text-transform:none;margin:0 0 24px}body.fvx-event-detail .fvx-event-summary .event-dates{font:500 16px/24px Montserrat,sans-serif;color:#000;padding:0 0 24px;border-bottom:1px solid #0002;margin-bottom:24px}body.fvx-event-detail .fvx-event-summary p{font:500 16px/24px Montserrat,sans-serif;margin:24px 0 0}body.fvx-event-detail .fvx-event-summary p a{color:#000;text-decoration:underline;overflow-wrap:anywhere}.fvx-event-summary-actions{display:flex;flex-direction:column;align-items:flex-start;gap:12px}.fvx-event-summary-actions button{display:none;border:0;border-radius:100px;padding:16px 24px;font:600 14px/20px Montserrat,sans-serif;color:#000;background:var(--fvx-accent);cursor:pointer}.fvx-event-detail:has(.gform_wrapper) .fvx-event-summary-actions .fvx-event-register,.fvx-event-detail:has(.group-container,.wp-block-table) .fvx-event-summary-actions .fvx-event-participants{display:inline-flex}.fvx-event-summary-actions .fvx-event-participants{background:#fff}.fvx-event-summary-actions>a{font:600 14px/20px Montserrat,sans-serif;color:#000;text-decoration:underline;text-underline-offset:3px}body.fvx-event-detail .gform_wrapper{padding:32px;border:1px solid #0002;border-radius:12px;background:#fff;margin:32px 0;color:#000}body.fvx-event-detail .gform_wrapper .gfield_label,body.fvx-event-detail .gform_wrapper label{font-family:Montserrat,sans-serif;color:#000}body.fvx-event-detail .gform_wrapper input:not([type=hidden]):not([type=checkbox]):not([type=radio]):not([type=submit]):not([type=button]),body.fvx-event-detail .gform_wrapper select,body.fvx-event-detail .gform_wrapper textarea{max-width:100%;min-width:0;background:#fff;color:#000;border:1px solid #0003;border-radius:6px;padding:16px 20px;font:500 16px/21px Montserrat,sans-serif;min-height:53px}body.fvx-event-detail .gform_wrapper input[type=submit],body.fvx-event-detail .gform_wrapper button[type=submit]{border:0;border-radius:100px;padding:16px 24px;background:#000;color:#fff;font:600 14px/20px Montserrat,sans-serif;cursor:pointer}body.fvx-event-detail .gform_wrapper .gfield_validation_message{color:#b00020;background:#fff0f1}body.fvx-event-detail :focus-visible,body.fvx-event-index :focus-visible{outline:3px solid #238600;outline-offset:3px}body.fvx-tennis.fvx-event-detail :focus-visible,body.fvx-tennis.fvx-event-index :focus-visible{outline-color:#956d00}
@media(max-width:1100px){body.fvx-event-index .card-mansory{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:1000px){body.fvx-event-detail .post-container{grid-template-columns:minmax(0,1fr)}body.fvx-event-detail .post-image{max-width:620px;margin:0 auto}body.fvx-event-detail .fvx-event-summary{display:none}body.fvx-event-detail .post-content>.event-dates{display:block;margin:0 0 24px}}
@media(max-width:767px){.fvx-event-container,body.fvx-event-detail .post-container{width:calc(100% - 24px)}.fvx-event-index-hero{min-height:460px;padding:160px 0 40px}.fvx-event-index-hero h1{font-size:56px}.fvx-event-list-content{padding:40px 0}body.fvx-event-index .card-mansory{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}body.fvx-event-index .events-card{padding:6px 6px 16px;border-radius:12px}body.fvx-event-index .events-card-body{padding:12px 6px 0;gap:12px}body.fvx-event-index .events-card-title{font-size:16px;line-height:22px}body.fvx-event-index .events-card-btn{font-size:12px;line-height:18px;flex-wrap:wrap}.fvx-event-detail .scroll-to-register{margin:0 auto 24px!important;width:calc(100% - 24px);gap:8px!important}.fvx-event-detail .scroll-to-register button{border-radius:100px;padding:14px 20px!important;background:#000!important;color:#fff!important;font:600 14px/20px Montserrat,sans-serif!important}body.fvx-event-detail #primary.events{padding:32px 0 40px!important}body.fvx-event-detail .post-container{gap:32px}body.fvx-event-detail .post-content h1{font-size:40px;line-height:1.1;margin-bottom:24px}body.fvx-event-detail .gform_wrapper{padding:24px 16px}body.fvx-event-detail .post-content th,body.fvx-event-detail .post-content td{padding:10px 8px}}
@media(max-width:389px){body.fvx-event-index .card-mansory{grid-template-columns:minmax(0,1fr)}}

/* Existing payment handler stays intact; match its inline-styled button to the FV controls. */
body.fvx-event-detail .gform_wrapper #custom_payment_submit{background:#000!important;color:#fff!important;border:0!important;border-radius:100px!important;padding:16px 24px!important;font:600 14px/20px Montserrat,sans-serif!important;cursor:pointer}body.fvx-event-detail .gform_wrapper,body.fvx-event-detail .group-container,body.fvx-event-detail .wp-block-table{scroll-margin-top:150px}

/* Event reading order: title first; whole poster and readable content side by side. */
body.fvx-event-detail #primary.events {padding-top:40px!important;}
body.fvx-event-detail .fvx-event-heading {width:calc(100% - 160px);max-width:1280px;margin:0 auto 32px;}
body.fvx-event-detail .fvx-event-heading h1 {font:400 clamp(36px,4.4vw,64px)/1.12 Anton,sans-serif;letter-spacing:normal;text-transform:uppercase;color:#111;margin:0;overflow-wrap:anywhere;}
body.fvx-event-detail .post-container {grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:32px 48px;}
body.fvx-event-detail .post-image {grid-column:1;grid-row:1;max-width:460px;justify-self:start;margin:0;}
body.fvx-event-detail .post-content {grid-column:2;grid-row:1 / span 2;}
body.fvx-event-detail .fvx-event-summary {grid-column:1;grid-row:2;position:sticky;top:calc(var(--fvx-sticky-top,155px) + 24px);width:100%;max-width:460px;background:#fff;border:1px solid #dde1de;border-radius:16px;padding:24px;}
body.fvx-event-detail .fvx-event-summary h2 {margin-bottom:16px;}
body.fvx-event-detail .fvx-event-summary .event-dates {margin-bottom:16px;padding-bottom:16px;}
body.fvx-event-detail .fvx-event-summary-actions {align-items:stretch;}
body.fvx-event-detail .fvx-event-summary-actions button {justify-content:center;min-height:48px;}
body.fvx-event-detail .fvx-event-summary-actions .fvx-event-participants {background:#f2f4f2;}
body.fvx-event-detail .scroll-to-register {display:none!important;}
@media(max-width:1000px) {
 body.fvx-event-detail .post-container {grid-template-columns:minmax(0,1fr);}
 body.fvx-event-detail .post-image {grid-column:1;grid-row:1;max-width:480px;justify-self:center;}
 body.fvx-event-detail .fvx-event-summary {display:block;grid-column:1;grid-row:2;position:static;max-width:none;}
 body.fvx-event-detail .post-content {grid-column:1;grid-row:3;}
 body.fvx-event-detail .post-content>.event-dates {display:none;}
 body.fvx-event-detail .fvx-event-summary-actions {flex-direction:row;flex-wrap:wrap;align-items:center;}
}
@media(max-width:767px) {
 body.fvx-event-detail .fvx-event-heading,body.fvx-event-detail .post-container {width:calc(100% - 40px);}
 body.fvx-event-detail .fvx-event-heading {margin-bottom:24px;}
 body.fvx-event-detail #primary.events {padding-top:28px!important;}
 body.fvx-event-detail .post-container {gap:24px;}
 body.fvx-event-detail .fvx-event-summary {padding:20px;}
 body.fvx-event-detail .fvx-event-summary-actions {flex-direction:column;align-items:stretch;}
 body.fvx-event-detail .gform_wrapper {padding:20px 16px;}
}

/* Keep quick info directly below the poster, independent of article length. */
body.fvx-event-detail .fvx-event-side {grid-column:1;grid-row:1;display:flex;flex-direction:column;gap:24px;align-self:stretch;min-width:0;}
body.fvx-event-detail .post-content {grid-column:2;grid-row:1;}
body.fvx-event-detail .fvx-event-side .post-image {flex:none;}
@media(max-width:1000px) {
 body.fvx-event-detail .fvx-event-side {display:contents;}
 body.fvx-event-detail .post-content {grid-column:1;grid-row:3;}
}

body.fvx-event-detail .fvx-event-summary .event-dates {display:block!important;}

/* Wider event articles; retain the poster ratio and the existing mobile stack. */
@media (min-width:1001px) {
 body.fvx-event-detail .post-container,body.fvx-event-detail .fvx-event-heading {width:calc(100% - 80px);max-width:1440px;}
 body.fvx-event-detail .post-container {grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:32px 48px;}
}

/* Desktop event layout: align with header content and move poster + quick info together.
   All <=1000px layout rules and document reading order are intentionally retained. */
body.fvx-event-detail .fvx-event-layout {display:contents;}
@media (min-width:1001px) {
 body.fvx-event-detail .fvx-event-layout {
  --fvx-event-side-width:clamp(220px,min(36%,calc((100dvh - var(--fvx-sticky-top,155px) - var(--fvx-event-info-height,200px) - 64px) * .8)),540px);
  display:grid;grid-template-columns:minmax(0,var(--fvx-event-side-width)) minmax(0,1fr);
  gap:24px 48px;align-items:start;width:calc(100% - 80px);max-width:1520px;margin:0 auto;
 }
 body.fvx-event-detail .fvx-event-layout>.post-container {display:contents;}
 body.fvx-event-detail .fvx-event-layout>.fvx-event-heading {grid-column:2;grid-row:1;width:auto;max-width:none;margin:0;position:static;}
 body.fvx-event-detail .fvx-event-layout .post-content {grid-column:2;grid-row:2;min-width:0;}
 body.fvx-event-detail .fvx-event-layout .post-content .content>:first-child {margin-top:0;}
 body.fvx-event-detail .fvx-event-layout .fvx-event-side {grid-column:1;grid-row:1 / span 2;position:sticky;top:calc(var(--fvx-sticky-top,155px) + 24px);align-self:start;gap:16px;}
 body.fvx-event-detail .fvx-event-side .post-image {width:100%;max-width:none;top:auto;}
 body.fvx-event-detail .fvx-event-side .fvx-event-summary {position:static;top:auto;max-width:none;padding:20px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;}
 body.fvx-event-detail .fvx-event-summary h2 {margin:0;font-size:20px;line-height:24px;}
 body.fvx-event-detail .fvx-event-summary .event-dates {margin:0;padding:0;border:0;max-width:250px;text-align:right;font-size:13px;line-height:20px;}
 body.fvx-event-detail .fvx-event-summary-actions {grid-column:1 / -1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;align-items:stretch;}
 body.fvx-event-detail .fvx-event-summary-actions button {min-height:44px;padding:12px 10px;font-size:13px;line-height:20px;}
 body.fvx-event-detail .fvx-event-summary-actions>a {grid-column:1 / -1;font-size:13px;line-height:20px;}
 body.fvx-event-detail .fvx-event-summary p {grid-column:1 / -1;margin:0;font-size:13px;line-height:20px;}
 body.fvx-event-detail .fvx-event-summary p br {display:none;}
 body.fvx-event-detail .fvx-event-summary p a {margin-left:8px;}
}
@media (min-width:1001px) and (max-width:1279px) {
 body.fvx-event-detail .fvx-event-layout {width:calc(100% - 48px);gap:24px 32px;}
}
/* Very short desktop windows retain ordinary page scrolling so no controls are trapped. */
@media (min-width:1001px) and (max-height:650px) {
 body.fvx-event-detail .fvx-event-layout {--fvx-event-side-width:min(36%,540px);}
 body.fvx-event-detail .fvx-event-layout .fvx-event-side {position:static;}
}
