body {height:auto !important;}
.ai_content_wrap .ai_image_widget {height: 100%; position: relative; overflow: hidden;}

/* Top-level AI-generated sections must always stack vertically, regardless of any float,
   inline-block, or width Claude's own generated inline style (or a widget-panel section's
   w-100 float-left convention) puts on an individual section. !important beats a plain
   inline style attribute, so this holds even when a section's own style="" disagrees.
   Scoped to DIRECT children only (>) so a Layout Grid's own intentionally side-by-side
   nested cell content — which sits deeper than one level below .ai_content_wrap — is
   never affected. display is intentionally NOT forced here — a hero section legitimately
   sets display: flex on itself (see HERO SECTION IMAGE RULES) to vertically-center its own
   content, and a flex container still stacks as an ordinary block-level box with its
   siblings; only float/width actually cause the side-by-side bug this rule prevents. */
.ai_content_wrap > section {
    float: none !important;
    clear: both !important;
    width: 100% !important;
}

/* pb_wrap_form_widget() wraps every [[FORM:N]] shortcode's rendered output in
   .page_widget_Form (see master_v_front.php / custom_html_template_master_v.php), and
   .page_widget_Form itself is float: left; width: 100% (see the .page_widget_Form rule
   above/elsewhere in style.css) — the same convention used for top-level widget-panel
   sections, which works there because it sits directly in the page's own row layout. When
   an AI-generated section instead nests it inside its own .ai-form-wrapper container (per
   FORM RULES in the raw-HTML system prompt), that wrapper has no clearfix of its own: a
   plain block element containing ONLY a floated child collapses to zero height, so the
   actual next sibling in the DOM (e.g. a closing <p>) gets pulled up to fill that space and
   renders beside the still-floated form instead of below it. overflow: hidden establishes a
   new block formatting context so .ai-form-wrapper properly contains that float's height. */
.ai-form-wrapper {
    display: block;
    clear: both;
    overflow: hidden;
}

/* Belt-and-suspenders: even if some other float this doesn't anticipate leaks past
   .ai-form-wrapper, force the very next element back onto its own line regardless. */
.ai-form-wrapper + * {
    clear: both;
}

/* The platform form widget's default structural CSS (.form-row/.form-label/.form-field —
   see style.css) renders a 30%-label / 70%-field admin-style row, and custom_lead_form()
   emits its own <h2>{form name}</h2> — both make sense for the platform's own default form
   styling, but fight an AI-designed section, which already writes its own heading (e.g.
   "Reserve Your Golf Cart Today") and its own field styling in an inline <style> block (see
   FORM RULES). Scoped to .ai-form-wrapper only, so legacy/default form rendering elsewhere
   is completely unaffected.

   Note: there's an existing .pb-ai-form-v2 marker class in style.css with the same intent
   as the .form-row override below, but it's never actually added to any rendered HTML
   anywhere in the codebase (grepped application/ — no hits) — it's dead CSS from an earlier,
   unfinished attempt at this exact fix. Using .ai-form-wrapper here instead since FORM RULES
   guarantees it's always present, without needing a PHP-side change to add a marker class. */

/* custom_lead_form() emits <h2 style="display: block;">{form name}</h2> — an inline style,
   which only !important in a stylesheet can override; a plain rule here would be silently
   ignored. */
.ai-form-wrapper .custom-lead-form h2 {
    display: none !important;
}

/* One level deeper than the base .form-row{display:flex} / .form-row .form-label{flex:0 0
   30%} / .form-row .form-field{flex:0 0 70%} rules (style.css), so this wins on specificity
   alone regardless of stylesheet load order — same reasoning the dead .pb-ai-form-v2 rule
   used, just scoped to a selector that's actually present in the DOM. */
.ai-form-wrapper .form-row {
    display: block !important;
    width: auto !important;
}

.ai-form-wrapper .form-row .form-label,
.ai-form-wrapper .form-row .form-field {
    flex: none;
    width: 100%;
    text-align: left;
}

.ai-form-wrapper .form-row .form-label {
    display: block;
    margin-bottom: 6px;
}

.ai-form-wrapper .custom-lead-form .form-label label {
    font-weight: 600;
}


/* .ai_header_fixed_spacer {min-height:200px;} */
.container{max-width:1320px!important; width:100%!important; margin:0 auto !important; padding:0 15px !important;}
.container_fluid{width:100%; padding:0 15px;}
.no_container{padding:0px;}
.container_fluid_mod{padding:0 15px; max-width:1920px; margin:0 auto;} 
.section_contain{padding:0 15px; max-width:1920px; margin:0 auto;}

/* ai button style start*/
.ai_content_wrap  button { 
  display: inline-block;
  font-weight: 500;
  line-height: 1.5;
  color: var(--White);
  background-color: var(--ThemeColor);
  text-align: center;
  text-decoration: none;
  vertical-align: middle;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  padding: 11px 25px !important;
  font-size: 16px;
  transition: color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;
  border-radius: 100px !important; border:none;
}

/* AI Header Fix start */

.side-hdr {

    width: 100%;

    float: left;

    background: rgba(0, 0, 0, 0.7);

    position: relative;

    display: none;

}
 
.side-hdr .sidebar-menu span {

    font-size: 18px;

    color: white;

    cursor: pointer;

    padding: 0;

    display: block;

}
 
.side-hdr .sidebar-menu {

	width: 25%;

    float: left;

    position: relative;

	text-align:center;

    padding:4px 0;

	line-height:40px;

}

.side-hdr .sidebar-menu ul.mb-drpdwn {

    width: 180px;

    position: absolute;

    top: 49px;

    left: 0px;

    display: none;

    background: black;

    z-index: 999;

}

.side-hdr .sidebar-menu ul.mb-drpdwn li {

    float: left;

	list-style:none;

    width: 100%;

    border-bottom: 1px solid silver;

}
 
.side-hdr .sidebar-menu ul.mb-drpdwn li a {

    color: white;

    float: left;

    padding: 10px;

	line-height:normal;

	text-align:left;

	width:100%;

}
 
.side-hdr .crt a,

.side-hdr .cl a {

    color: white;

    font-size: 12px;

}

.side-hdr .shpbrnd-map {

    width: 35%;

	text-align:center;

    float: left;

    padding: 8px 0;

	height:48px;

    background: black;

    color: white;

}
 
.side-hdr .shpbrnd-map a {

    color: white;

    float: left;

    padding: 8px 4px;

    font-size: 12px;

    text-align: center;

    margin: 2px 0px;

}
 
.side-hdr .crt a img ,

.side-hdr .cl a img {

    width: 15px !important;

    height: 15px;

}
 
.side-hdr .cl,

.side-hdr .crt {

	line-height:1.42857143;

    width: 20%;

    float: left;

    color: white;

    background: black;

    text-align: center;

    padding: 4px 0;

    border-right: 1px solid silver;

}

p.creditCar_b.loct a i{

	font-size: 12px;

    margin: 1px;

}
 
.mblacnt-log {

    width: 100%;

    float: left;

	line-height:normal;

    background: black;

    padding: 1% 3%;

    margin: 5px 0px 0px;

    padding: 10px 0px;

    text-align: center;

	display: none;

}
 
.mblacnt-log a {

    color: white;

    font-size: 15px;

	text-transform: uppercase;

}
 
.mblacnt-log a .usr {

    margin: 0px 5px 0 0;

}
 
.search-two {

	display:none;

}
 
.loct {

	line-height:normal !important;

}
 
.side-hdr .crt a.cel, .side-hdr .cl a.cel{

	margin: 6px 0 0 !important;

    display: inline-block;

    line-height: 15px;

}
 
.side-hdr .crt a.cel img, .side-hdr .cl a.cel img {

    margin: 0 0 4px;

}
 
/* AI Header Fix ends */

.ai_content_wrap h1 {font-size: 36px; margin-top:20px; margin-bottom:10px;}
.ai_content_wrap h2 {font-size: 30px; margin-top:20px; margin-bottom:10px;}
.ai_content_wrap h3 {font-size: 22px; margin-top:10px; margin-bottom:10px;}
.ai_content_wrap h4 {font-size: 18px; margin-top:10px; margin-bottom:10px;}
.ai_content_wrap h5 {font-size: 14px; margin-top:10px; margin-bottom:10px;}
.ai_content_wrap h6 {font-size: 12px; margin-top:10px; margin-bottom:10px;}
 
.ai_content_wrap p {font-size: 18px; line-height:normal; margin-top:10px; margin-bottom:10px;}
 

/* Gallery style starts */

.vb_grid_gallery_widget{display:block; width:100%; position:relative; }
.vb_crousal_gallery_widget{display:block; width:100%; position:relative; }
.vb_gg_repeat{margin-bottom:15px;}

/* Gallery style ends */

/* Slider style starts */

.vb_backgrund_slide_widget{display:block; width:100%; position:relative; padding:20px 0;}
.vb_backgrund_slide_widget .item:before{content:''; position:absolute; left:0; top:0; background:rgba(0,0,0,0.2); height:100%; width:100%; z-index:3;}
.vb_backgrund_slide_widget .item > div{position:relative; z-index:4;}
.vb_bs_mobile_image{display:none!important;}
.vb_bs_flex{display:flex; justify-content:center; align-items:center; min-height:550px; padding:20px 0;}
.vb_bs_text{text-align:center; color:#fff; text-shadow:2px 2px 2px rgba(0, 0, 0, 0.1);}

.owl-nav{margin:0!important;}
.owl-dots{ padding-top:20px; padding-bottom:20px;}

.owl-prev{
    position: absolute!important;
    z-index: 9!important; width:40px!important; height:40px!important;
    background:#fff!important; border-radius:100px!important;
    left: 20px!important; top:calc( 50% - 20px ) !important;
}
.owl-next{
    position: absolute!important;
    z-index: 9; width:40px!important;  height:40px!important;
    background:#fff!important; border-radius:100px!important;
    right: 20px!important; top:calc( 50% - 20px ) !important;
}

.owl-prev::before{content:"\f104"; color:var(--Black); font-family: "Font Awesome 7 Free"; font-weight: 700; font-size: 24px;  text-rendering: auto;}
.owl-prev span{display:none;}
.owl-next span{display:none;}
.owl-next::before{content:"\f105"; color:var(--Black); font-family: "Font Awesome 7 Free"; font-weight: 700; font-size: 24px; text-rendering: auto;}

.vb_image_slide_widget{display:block; width:100%;}

@media (max-width:576px){
    .vb_bs_mobile_image{display:block!important;}
    .vb_bs_desktop_bg{background:none!important;}
    .vb_bs_flex{min-height:auto;background:var(--Black);padding:40px 0; }            
}
