/*
Theme Name: Odin Marketing House Child Theme
Theme URI: https://odinmarketinghouse.com/
Version: 1.0
Description: This is a customized theme that styles your website.
Author: Odin Marketing House
Author URI: https://odinmarketinghouse.com/
template: bb-theme
*/

/* Add your custom styles here... */
/* accessability css */
.fl-rich-text a {
  text-decoration: underline;
}
.fl-builder-content img:not(.fl-slideshow-image-img) {
    -webkit-transition: all .2s ease-in-out;
    -moz-transition: all .2s ease-in-out;
    -ms-transition: all .2s ease-in-out;
    -o-transition: all .2s ease-in-out;
    transition: all .2s ease-in-out;
}
.fl-builder-content a:hover img:not(.fl-slideshow-image-img) {
    opacity: 0.75;
}
/* helper classes */
.padding-large > .fl-row-content-wrap,
.padding-large .fl-callout-content {
  padding-top:  150px;
  padding-bottom: 150px;
}
.padding-medium > .fl-row-content-wrap,
.padding-medium .fl-callout-content {
  padding-top:  80px;
  padding-bottom: 80px;
}
.padding-small > .fl-row-content-wrap {
  padding-top:  40px;
  padding-bottom: 40px;
}
a:focus {
  outline: none;
}

.max-500 {
  max-width: 500px;
  margin: auto;
}
.max-600 {
  max-width: 600px;
  margin: auto;
}
.max-700 {
  max-width: 700px;
  margin: auto;
}
.max-800 {
  max-width: 800px;
  margin: auto;
}
.max-900 {
  max-width: 900px;
  margin: auto;
}
.max-1000 {
  max-width: 1000px;
  margin: auto;
}
.max-1100 {
  max-width: 1100px;
  margin: auto;
}
.max-1200 {
  max-width: 1200px;
  margin: auto;
}
.max-1300 {
  max-width: 1300px;
  margin: auto;
}
.max-1400 {
  max-width: 1400px;
  margin: auto;
}

/* native full width video player */
.wp-video, video.wp-video-shortcode, .mejs-container, .mejs-overlay.load {
    width: 100% !important;
    height: 100% !important;
}
.mejs-container {
    padding-top: 56.25%;
}
.wp-video, video.wp-video-shortcode {
    max-width: 100% !important;
}
video.wp-video-shortcode {
    position: relative;
}
.mejs-mediaelement {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
}
.mejs-controls {
    display: none;
}
.mejs-overlay-play {
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: auto !important;
    height: auto !important;
}



/* flex children match height .give-children-equal-height */
/* put this class on the column   */
.fl-col-group-equal-height .give-children-equal-height .fl-col-content {
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
}
.fl-col-group-equal-height .give-children-equal-height .fl-module-info-box {
    display: flex;
}
.fl-col-group-equal-height .give-children-equal-height .fl-module-info-box .fl-module-content {
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
}

.fl-col-group-equal-height .give-children-equal-height .fl-module-info-box a {
    overflow-wrap: break-word;
    word-break: break-all;
}

/* make slideshow arrows not look old */
/* Hide default BB arrow PNG images */
.fl-slideshow .fl-slideshow-content .fl-slideshow-image-nav-left a,
.fl-slideshow .fl-slideshow-content .fl-slideshow-image-nav-left button,
.fl-slideshow .fl-slideshow-content .fl-slideshow-image-nav-right a,
.fl-slideshow .fl-slideshow-content .fl-slideshow-image-nav-right button {
    background-image: none !important;
}

/* Hide default BB arrow ::before icons */
.fl-slideshow-nav-prev.fl-content-ui-button::before,
.fl-slideshow-nav-next.fl-content-ui-button::before {
    display: none;
}

/* Nav container positioning */
.fl-slideshow .fl-slideshow-content .fl-slideshow-image-nav-left {
    left: 15px !important;
}

.fl-slideshow .fl-slideshow-content .fl-slideshow-image-nav-right {
    right: 15px !important;
}

/* Button base styles */
.fl-slideshow-nav-prev.fl-content-ui-button,
.fl-slideshow-nav-next.fl-content-ui-button {
    background: none;
    border: none;
    width: 60px;
    height: 60px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    opacity: 0.8;
    transition: opacity 0.2s ease;
    position: static;
    transform: none;
}

.fl-slideshow-nav-prev.fl-content-ui-button:hover,
.fl-slideshow-nav-next.fl-content-ui-button:hover {
    opacity: 1;
}

/* Chevrons */
.fl-slideshow-nav-prev.fl-content-ui-button::after,
.fl-slideshow-nav-next.fl-content-ui-button::after {
    content: '';
    display: block;
    width: 20px;
    height: 20px;
    border-top: 2.5px solid #fff;
    border-right: 2.5px solid #fff;
}

.fl-slideshow-nav-prev.fl-content-ui-button::after {
    transform: rotate(-135deg);
    margin-left: 6px;
}

.fl-slideshow-nav-next.fl-content-ui-button::after {
    transform: rotate(45deg);
    margin-right: 6px;
}
.fl-slideshow-nav-next.fl-content-ui-button::after {
    transform: rotate(45deg);
    margin-right: 6px;
    position: absolute;
    right: 0px;
}


/* ==========================================================================
  Custom Global Styles
========================================================================== */
/* a,
header a *,
.woocommerce-page .woocommerce-MyAccount-navigation ul li a,
.woocommerce-page .woocommerce-MyAccount-navigation ul li a:after,
.fl-post-grid-image a:hover img,
footer a {
    -webkit-transition: all .2s ease-in-out;
    -moz-transition: all .2s ease-in-out;
    -ms-transition: all .2s ease-in-out;
    -o-transition: all .2s ease-in-out;
    transition: all .2s ease-in-out;
}
 */

/* Global easing for links, buttons, and nav text */
a,
button,
input[type="submit"],
.fl-button,
.fl-button-wrap a,
.fl-button:is(a, button),
.fl-button:is(a, button) *,
.fl-button-text {
    transition: all 0.2s ease-in-out !important;
}

/* Nav text colour transition only (pseudo line has its own transition) */
header .menu-item a {
    transition: color 0.2s ease-in-out !important;
}
/* carousel */
.uabb-image-carousel .slick-track {
  display: flex;
  flex-wrap: wrap;
}
.uabb-image-carousel-item {
  display: flex !important;
  flex-wrap: wrap;
  align-items: center;
  align-self: center;
}

/* Buttons */
.fl-builder-content .fl-button {
  padding: 20px 40px;
  letter-spacing: 2px !important;
}

/* Header button - override default button padding */
.fl-builder-content .fl-node-cpv5lty0iu9h .fl-button:is(a, button) {
  padding: 7px !important;
}

.text-only.fl-module .fl-button {
  padding: 5px 0px !important;
  background-color: transparent !important;
  border-bottom: 1px solid #c9a96e !important;
  box-shadow: none !important;
}

.text-only.fl-module .fl-button .fl-button-text {
  color: #111110;
  transition: color 0.2s;
}

.text-only.fl-module .fl-button:hover .fl-button-text {
  color: #D11C1F;
}


/* main menu style */
/* main menu style */
header .menu-item a {
    position: relative;
    border-bottom: none !important;
}

header .menu-item a::before {
    content: '';
    display: inline-block;
    vertical-align: middle;
    width: 0;
    height: 2px;
    background-color: #c9a96e;
    margin-right: 0;
    transition: width 0.45s ease, margin-right 0.45s ease;
    overflow: hidden;
}

/* Hover */
header .menu-item a:hover::before {
    width: 12px;
    margin-right: 6px;
}

/* Active page */
header .current-menu-item > a::before {
    width: 12px;
    margin-right: 6px;
}

.fl-number-string {
    overflow: visible !important;
    line-height: 1.2 !important;
}

/* ==========================================================================
  Custom Page Styles
========================================================================== */
@media screen and (max-width: 768px) {
.fl-builder-content .remove-boarder-on-small .uabb-infobox {
	border-left-width: 0px;
    border-right-width: 0px;
	border-top-width: 1px;
    border-bottom-width: 0px;
	padding: 40px;
}
}
.fl-builder-content .remove-boarder-on-small .uabb-infobox {
		padding: 40px;
}

@media (max-width: 768px) {
  .horizontal-scroll-on-mobile {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    background: #2c2c2a; /* match your existing dark bg color */
  }

  .horizontal-scroll-on-mobile .fl-col-group {
    display: inline-flex;
    min-width: max-content;
    background: #2c2c2a; /* same color on the inner group */
    vertical-align: top; /* removes inline-flex baseline gap */
  }

  .horizontal-scroll-on-mobile .fl-col {
    white-space: normal;
  }
}

/* =========================================================================
   Disable BB sticky column on mobile (≤767px)
   Node: fl-node-lvyocq0s6pdn — "Questions Before You Book" left column
   The bt-sticky plugin writes position:sticky inline; !important overrides it
   ========================================================================= */
@media (max-width: 767px) {
  .fl-node-lvyocq0s6pdn[bt-sticky] {
    position: relative !important;
    top: auto !important;
  }
}

/* =========================================================================
   Fix: phase-active ::after indicator bar flush with bottom edge of nav row.
   The row (.fl-node-0ep9xh8kyd34) has overflow-x:auto for mobile scrolling,
   which coerces its overflow-y to auto, clipping bottom:0 pseudo-elements.
   The fl-row-content-wrap is a separate element and can have overflow:visible,
   allowing the 3px gold bar to render fully without any padding needed.
   ========================================================================= */
.fl-node-0ep9xh8kyd34 > .fl-row-content-wrap {
  overflow: visible !important;
  padding-bottom: 0 !important;
}

/* =========================================================================
   Hide scrollbar on horizontal nav row — scroll still works, bar just hidden
   ========================================================================= */
.fl-node-0ep9xh8kyd34 {
  scrollbar-width: none; /* Firefox */
  -ms-overflow-style: none; /* IE/Edge */
}
.fl-node-0ep9xh8kyd34::-webkit-scrollbar {
  display: none; /* Chrome, Safari, Opera */
}