/* Venue pages share the storefront typography, buttons, header and footer. */
.twc-venue-page{color:#635b54;background:#fff;font:400 18px/1.55 Urbanist,sans-serif;overflow-wrap:anywhere}
.twc-venue-page .venue-container{width:min(1440px,calc(100% - 64px));margin-inline:auto}
.twc-venue-page :is(h1,h2,h3,p,figure){margin:0}
.twc-venue-page :is(h1,h2,h3){color:#160c04;font-family:'DM Serif Display',Georgia,serif;font-weight:400;text-wrap:balance}
.twc-venue-page h1{font-size:clamp(40px,4.8vw,72px);line-height:1.08;max-width:780px;color:inherit}
.twc-venue-page h2{font-size:clamp(32px,3vw,46px);line-height:1.18}
.twc-venue-page h3{font-size:26px;line-height:1.2}
.twc-venue-page img{display:block;max-width:100%;height:auto}
.twc-venue-page .venue-eyebrow{font-size:13px;font-weight:600;letter-spacing:.18em;text-transform:uppercase}
.venue-hero{position:relative;isolation:isolate;display:flex;align-items:center;min-height:570px;padding-block:80px;color:#fff;background:#160c04}
.venue-hero-photo{position:absolute;inset:0;z-index:-2;overflow:hidden}
.venue-hero-photo img{width:100%;height:100%;object-fit:cover;object-position:center 57%}
.venue-hero::after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(22,12,4,.88),rgba(22,12,4,.58) 47%,rgba(22,12,4,.08))}
.venue-hero-copy{max-width:700px;display:grid;justify-items:start;gap:24px}
.venue-hero-copy>p:not(.venue-eyebrow){max-width:520px;font-size:20px;line-height:1.5;color:#fff}
.twc-venue-page .venue-hero-copy .button{margin-top:4px}
.venue-intro{padding-block:88px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:80px;align-items:center}
.venue-intro figure{overflow:hidden;border-radius:16px;max-height:610px}
.venue-intro figure img{width:100%;height:610px;object-fit:cover;object-position:center 66%}
.venue-intro-copy{display:grid;gap:24px;max-width:600px}
.venue-intro-copy ul{list-style:none;margin:0;padding:0;display:grid;gap:14px}
.venue-intro-copy li{position:relative;padding:0 0 0 24px;color:#160c04}
.venue-intro-copy li::before{position:absolute;left:0;top:.65em;content:'';width:6px;height:6px;border-radius:50%;background:#825433}
.venue-occasions{padding-block:8px 88px}
.venue-section-heading{display:flex;align-items:center;gap:24px;margin-bottom:32px}
.venue-section-heading::after{content:'';height:1px;background:#e3d7ce;flex:1}
.venue-occasion-grid,.venue-step-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.venue-occasion-grid{grid-auto-rows:1fr}
.venue-occasion{border:1px solid #e3d7ce;border-radius:16px;padding:32px;display:grid;gap:16px;align-content:start}
.venue-occasion h3{min-height:2.4em}
.venue-label{font-size:14px;letter-spacing:.1em;color:#825433}
.venue-planning{background:#f5f0eb;padding-block:72px}
.venue-planning .venue-section-heading{margin-bottom:40px}
.venue-step{display:grid;gap:12px;align-content:start;padding-right:32px}
.venue-step h3{font:600 21px/1.3 Urbanist,sans-serif}
.venue-contact{background:#160c04;color:#e3d7ce;padding-block:80px;scroll-margin-top:100px}
.venue-contact-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:clamp(32px,5vw,80px);align-items:start}
.venue-contact-copy{display:grid;gap:24px;justify-items:start}
.twc-venue-page .venue-contact :is(h2,h3){color:#fff}
.venue-contact-copy p{max-width:550px}
.venue-contact-copy .venue-small{font-size:14px;color:#c4b8ad}
/* Reuse the shared contact renderer and its existing submission handler. */
.venue-hero-actions{display:flex;flex-wrap:wrap;gap:12px}
.twc-venue-page .venue-events-button{--twc-button-background:transparent;--twc-button-text:#fff;--twc-button-edge:#e3d7ce;--twc-button-hover-background:#e3d7ce;--twc-button-hover-text:#160c04;border:1px solid #e3d7ce}
.venue-contact-direct{display:grid;gap:4px}
.venue-contact-direct a{display:inline-flex;align-items:center;min-height:44px;color:#e3d7ce;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}
.venue-inquiry-form{min-width:0;padding:32px;border:1px solid #635044;border-radius:16px;background:transparent;color:#e3d7ce;color-scheme:dark}
.venue-inquiry-form .elementor-widget-form{width:100%}
.venue-inquiry-form .elementor-widget-form form.elementor-form .elementor-field-group>label,
.venue-inquiry-form .elementor-widget-form form.elementor-form .elementor-field-subgroup label{color:#e3d7ce}
.twc-venue-page .venue-inquiry-form .elementor-widget-form form.elementor-form .elementor-field-group .elementor-field-textual{background:transparent;border-color:#a49588;color:#fff;box-shadow:none}
.twc-venue-page .venue-inquiry-form .elementor-widget-form form.elementor-form .elementor-field-group .elementor-field-textual::placeholder{color:#c4b8ad;opacity:1}
.venue-inquiry-form select.elementor-field-textual option{background:#160c04;color:#fff}
.venue-inquiry-form .elementor-select-wrapper .select-caret-down-wrapper{color:#e3d7ce;fill:currentColor}
.venue-inquiry-form .twc-phone.iti{--iti-icon-color:#e3d7ce;background:transparent;color:#e3d7ce;outline-color:#a49588}
.venue-inquiry-form .twc-phone.iti:focus-within{outline-color:#e3d7ce}
.venue-inquiry-form .twc-phone.iti .iti__selected-country{
    --twc-button-hover-background:var(--twc-button-cream);
    --twc-button-hover-text:var(--twc-button-ink);
    --twc-button-hover-border:var(--twc-button-cream);
    --iti-icon-color:currentColor;
    background:#2c2017;border-color:#a49588;color:var(--twc-button-cream)
}
.venue-inquiry-form .twc-phone.iti .iti__selected-country[aria-expanded=true]{
    background:var(--twc-button-hover-background);color:var(--twc-button-hover-text);border-color:var(--twc-button-hover-border)
}
.venue-inquiry-form .twc-phone.iti .iti__country-selector{color:#160c04;color-scheme:light}
.venue-inquiry-form input[type=checkbox]{accent-color:#e3d7ce}
.venue-inquiry-form .elementor-widget-form form.elementor-form .elementor-button{--twc-button-background:transparent;--twc-button-text:#e3d7ce;--twc-button-edge:#e3d7ce;--twc-button-hover-background:#e3d7ce;--twc-button-hover-text:#160c04;background:var(--twc-button-background);color:var(--twc-button-text);border:1px solid #e3d7ce}
.venue-inquiry-form :is(.twc-field-error,.elementor-message-danger){color:#ffadc2}
.venue-inquiry-form .elementor-message-success{color:#b9e5bd}
.twc-venue-page .venue-inquiry-form .elementor-widget-form form.elementor-form .elementor-field-group .elementor-field-textual:focus{border-color:#e3d7ce}
.venue-inquiry-form :is(.elementor-field-textual,.elementor-button,.iti__selected-country,input[type=checkbox],a):focus-visible{outline:2px solid #e3d7ce;outline-offset:3px}
.venue-inquiry-form .elementor-field-group-privacy label{min-height:24px}
.twc-venue-page a:focus-visible{outline:2px solid #b18a66;outline-offset:5px}

/* Elementor containers retain the same composition as the original venue article. */
.twc-venue-builder.e-con,
.twc-venue-builder :is(.venue-hero > .venue-container,.venue-occasions,.venue-planning,.venue-planning > .venue-container,.venue-contact){display:block}
.twc-venue-builder .venue-hero{flex-direction:row}
.twc-venue-builder :is(.venue-intro,.venue-occasion-grid,.venue-step-grid,.venue-contact-grid,.venue-hero-copy,.venue-intro-copy,.venue-occasion,.venue-step,.venue-contact-copy){display:grid}
.twc-venue-builder :is(.venue-section-heading,.venue-hero-actions){flex-direction:row}
.twc-venue-builder :is(.venue-section-heading,.venue-hero-actions) > .elementor-widget{width:auto}
.twc-venue-builder .venue-section-heading{flex-wrap:nowrap}
.twc-venue-builder .venue-section-heading > .elementor-widget{min-width:0}
.twc-venue-builder .venue-hero-photo.elementor-widget{position:absolute;width:100%;height:100%}
.twc-venue-builder .venue-hero-photo > .elementor-widget-container{height:100%}
.twc-venue-builder .elementor-widget-heading .elementor-heading-title{font-family:'DM Serif Display',Georgia,serif;font-weight:400;color:#160c04}
.twc-venue-builder :is(.venue-hero,.venue-contact) .elementor-heading-title{color:#fff}
.twc-venue-builder .venue-step h3.elementor-heading-title{font-family:Urbanist,sans-serif;font-weight:600}
.twc-venue-builder .elementor-widget-text-editor.elementor-widget{font-family:inherit;color:inherit}
.twc-venue-builder .elementor-widget-text-editor.venue-label{color:#825433}
.twc-venue-builder .elementor-widget-text-editor.venue-small{color:#c4b8ad}
.twc-venue-builder .venue-hero-copy .elementor-widget-text-editor:not(.venue-eyebrow){max-width:520px;font-size:20px;line-height:1.5}
.twc-venue-builder .venue-hero-actions .elementor-widget-button.elementor-element.elementor-widget a.elementor-button{
    min-height:45px;margin-top:4px;padding:13px 24px;border-radius:8px;font-size:max(13px,var(--twc-mobile-text-min,0px));line-height:1.55
}
.twc-venue-builder .venue-hero-actions [data-twc-button=inverse]{--twc-button-text:#fff}
.twc-venue-builder .venue-hero-actions .elementor-widget-button.elementor-element.elementor-widget a.elementor-button .elementor-button-content-wrapper{gap:12px}
.twc-venue-builder .venue-hero-actions .elementor-button-content-wrapper::after{content:'→' / ''}
.twc-venue-builder .venue-detail-photo{overflow:hidden;border-radius:16px}
.twc-venue-builder .venue-detail-photo img{width:100%;height:610px;object-fit:cover;object-position:center 66%}
.twc-venue-builder .venue-inquiry-form{width:100%}
@media(max-width:1024px){.twc-venue-builder .venue-detail-photo img{height:540px}}
@media(max-width:760px){
    .twc-venue-builder .venue-detail-photo img{height:400px;object-position:center 70%}
    .twc-venue-builder .venue-hero-copy .elementor-widget-text-editor:not(.venue-eyebrow){font-size:18px}
    .twc-venue-builder .venue-hero-actions > .elementor-widget,
    .twc-venue-builder .venue-hero-actions .elementor-button{width:100%}
}
@media(min-width:1600px){.venue-hero{min-height:640px}}
@media(max-width:1024px){.venue-intro{gap:40px;padding-block:64px}.venue-contact-grid{gap:40px}.venue-occasion{padding:24px}.venue-intro figure img{height:540px}}
@media(min-width:761px) and (max-width:1100px){.venue-occasion-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.venue-occasion h3{font-size:24px}}
@media(max-width:760px){.twc-venue-page{font-size:16px}.twc-venue-page .venue-container{width:calc(100% - 32px)}.venue-hero{min-height:570px;padding-block:64px 48px;align-items:flex-end}.venue-hero::after{background:linear-gradient(0deg,rgba(22,12,4,.95),rgba(22,12,4,.6) 57%,rgba(22,12,4,.15))}.venue-hero-photo img{object-position:58% center}.venue-hero-copy{gap:20px}.venue-hero-copy>p:not(.venue-eyebrow){font-size:18px}.venue-intro{grid-template-columns:1fr;gap:32px;padding-block:48px}.venue-intro figure{max-height:400px}.venue-intro figure img{height:400px;object-position:center 70%}.venue-intro-copy{gap:20px}.venue-occasions{padding-block:0 48px}.venue-section-heading{gap:16px;margin-bottom:24px}.venue-occasion-grid,.venue-step-grid{grid-template-columns:1fr;gap:16px}.venue-occasion-grid{grid-auto-rows:auto}.venue-occasion{gap:12px;padding:24px}.venue-occasion h3{min-height:0}.venue-planning{padding-block:48px}.venue-step{padding:0 0 24px}.venue-step:last-child{padding-bottom:0}.venue-contact{padding-block:48px;scroll-margin-top:84px}.venue-contact-grid{grid-template-columns:1fr;gap:32px}.venue-inquiry-form{padding:24px}.venue-inquiry-form .elementor-field-group:is(.elementor-field-group-email,.elementor-field-group-phone){width:100%}.twc-venue-page .venue-inquiry-form .elementor-widget-form form.elementor-form .elementor-field-group .elementor-field-textual{font-size:16px;line-height:1.4;min-height:46px}.venue-inquiry-form .elementor-widget-form form.elementor-form .elementor-button{width:100%;min-height:46px!important}.venue-hero-actions{width:100%}.venue-hero-actions .button{width:100%;justify-content:center}}
