/**
 * CUSTOM STYLES OVERRIDE FILE
 * =========================================================================================
 * 
 * This file is for custom style overrides only.
 * All base styles have been moved to: 
 * wp-content/themes/aguru-avada7-child/css/base.scss
 * 
 * =========================================================================================
 * CUSTOMIZATION GUIDE
 * =========================================================================================
 * 
 * To customize the theme, you can override any of the CSS variables defined in base.scss
 * by redefining them here. The theme uses CSS custom properties (CSS variables) that can
 * be overridden at runtime.
 *
 * =========================================================================================
 * AVAILABLE CSS VARIABLES
 * =========================================================================================
 *
 * COLOR VARIABLES
 * ---------------
 * --primary: Main brand color (default: #145876)
 * --primary-light-5: 5% lighter variant
 * --primary-light-10: 10% lighter variant
 * --primary-dark: Darker variant
 * --primary-dark-10: 10% darker variant
 * --primary-text: Text color on primary backgrounds (default: #fff)
 *
 * --secondary: Secondary brand color (default: #1a3755)
 * --secondary-light-5: 5% lighter variant
 * --secondary-light-10: 10% lighter variant
 * --secondary-dark: Darker variant
 * --secondary-text: Text color on secondary backgrounds (default: #fff)
 *
 * --color-text: Main body text color
 * --color-heading: Heading text color
 * --color-text-light: Light text color
 * --color-text-muted: Muted text color
 * --color-link: Link color
 * --color-link-hover: Link hover color
 * --color-link-active: Link active color
 * --color-border: Border color
 * --color-bg-light: Light background color
 *
 * LAYOUT VARIABLES
 * ----------------
 * --site-width: Maximum site width (default: 1400px)
 * --border-radius: Global border radius (default: 4px)
 *
 * TYPOGRAPHY VARIABLES
 * --------------------
 * --base-font-size: Base font size (default: 18px)
 * --base-line-height: Base line height (default: 1.5)
 * --font-family-heading: Heading font family
 * --font-family-body: Body font family
 * --font-family-mono: Monospace font family
 *
 * --font-size-small: Small text size
 * --font-size-base: Base text size
 * --font-size-h1 through --font-size-h6: Heading sizes
 * --font-size-lead: Lead paragraph size
 *
 * --font-weight-light: 300
 * --font-weight-regular: 400
 * --font-weight-medium: 500
 * --font-weight-semibold: 600
 * --font-weight-bold: 700
 * --font-weight-black: 900
 * --heading-font-weight: Default heading weight
 *
 * SPACING VARIABLES
 * -----------------
 * --spacing-quarter: 6px
 * --spacing-half: 12px
 * --spacing-single: 24px
 * --spacing-double: 48px
 * --spacing-triple: 72px
 *
 * FORM VARIABLES
 * --------------
 * --input-bg: Input background color
 * --input-text: Input text color
 * --input-border: Input border color
 *
 * FOOTER VARIABLES
 * ----------------
 * --footer-text: Footer text color
 * --footer-heading: Footer heading color
 * --footer-link: Footer link color
 * --footer-link-hover: Footer link hover color
 * --footer-button-bg: Footer button background
 * --footer-button-text: Footer button text color
 * --footer-button-bg-hover: Footer button hover background
 * --footer-button-text-hover: Footer button hover text
 *
 * ODYSSEUS SEARCH WIDGET VARIABLES
 * ---------------------------------
 * --ove-search-home-bg: Search widget background
 * --ove-search-home-bg-light-5: 5% lighter background
 * --ove-search-home-bg-light-10: 10% lighter background
 * --ove-search-secondary: Search button color
 * --ove-search-secondary-dark: Search button hover color
 * --ove-search-secondary-text: Search button text color
 * --ove-search-input-bg: Search input background
 * --ove-search-input-text: Search input text color
 * --ove-search-main-border-color: Search widget border color
 * --ove-search-main-border-radius: Search widget border radius
 * --ove-search-home-box-width: Search widget max width
 * --ove-search-widget-width: Inner widget width
 * --ove-search-show-dest-type: Show/hide destination type (block/none)
 * --ove-search-dest-type-text: Destination type text color
 * --ove-search-border-radius: Button border radius
 *
 * =========================================================================================
 * CUSTOMIZATION EXAMPLES
 * =========================================================================================
 */
/* Example 1: Override primary brand colors */
/*
:root {
  --primary: #2C5282;
  --primary-light-5: #3A6A9B;
  --primary-light-10: #4882B4;
  --primary-dark: #1E3A5F;
  --primary-dark-10: #162D4A;
}
*/
/* Example 2: Change typography settings */
/*
:root {
  --base-font-size: 16px;
  --font-family-heading: 'Montserrat', sans-serif;
  --font-family-body: 'Lato', sans-serif;
  --heading-font-weight: 600;
  --font-size-h1: 2.5rem;
  --font-size-h2: 2rem;
}
*/
/* Example 3: Customize the search widget */
/*
:root {
  --ove-search-home-bg: #2C5282;
  --ove-search-secondary: #E67E22;
  --ove-search-secondary-dark: #D35400;
  --ove-search-input-bg: #F8F9FA;
  --ove-search-main-border-radius: 8px;
  --ove-search-home-box-width: 1200px;
}
*/
/* Example 4: Modify footer colors */
/*
:root {
  --footer-text: #E5E5E5;
  --footer-heading: #FFFFFF;
  --footer-link: #A0AEC0;
  --footer-link-hover: #FFFFFF;
  --footer-button-bg: #E67E22;
  --footer-button-bg-hover: #D35400;
}
*/
/* Example 5: Adjust spacing throughout the site */
/*
:root {
  --spacing-single: 20px;
  --spacing-double: 40px;
  --spacing-triple: 60px;
}
*/
/* Example 6: Create a dark theme variant */
/*
body.dark-theme {
  --color-text: #E5E5E5;
  --color-heading: #FFFFFF;
  --color-bg-light: #2D3748;
  --color-border: #4A5568;
  --input-bg: #2D3748;
  --input-text: #E5E5E5;
  --input-border: #4A5568;
}
*/
/* =========================================================================================
 * YOUR CUSTOM STYLES BELOW
 * =========================================================================================
 *
 * Add any custom CSS variable overrides or additional styles below this line.
 * Remember to use CSS custom properties for maximum flexibility.
 */
/* =========================================================================================
 * CUSTOM FONTS
 * =========================================================================================
 */
@font-face {
  font-family: "Southern Aire";
  src: url("fonts/southern_aire.woff") format("woff");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "BigNoodleTitling";
  font-style: normal;
  font-weight: normal;
  src: local("BigNoodleTitling"), url("fonts/big_noodle_titling.woff") format("woff");
}
@font-face {
  font-family: "BigNoodleTitling Oblique";
  font-style: normal;
  font-weight: normal;
  src: local("BigNoodleTitling Oblique"), url("fonts/big_noodle_titling_oblique.woff") format("woff");
}
:root {
  --footer-button-bg: var(--secondary);
  --footer-button-bg-hover: var(--secondary-dark);
  --footer-button-text: #111;
  --footer-button-text-hover: #000;
}

#wrapper .slider-sidebar-row {
  padding: 0 !important;
}

/* =========================================================================================
 * Layout helpers
 * =========================================================================================
 */
.offset-two-thirds .fusion-builder-row {
  max-width: calc(var(--site_width) * 0.666666) !important;
}

.w-100 {
  height: auto;
  min-width: 100%;
  width: 100%;
}

div.w-100 > img {
  height: auto;
  min-width: 100%;
  width: 100%;
}

/* =========================================================================================
 * Typography
 * =========================================================================================
 */
#wrapper.fusion-wrapper #main .fusion-accordian .panel-title a:active, #wrapper.fusion-wrapper #main .fusion-accordian .panel-title a:focus, #wrapper.fusion-wrapper #main .fusion-accordian .panel-title a:hover,
#wrapper.fusion-wrapper #main .fusion-toggle .panel-title a:active,
#wrapper.fusion-wrapper #main .fusion-toggle .panel-title a:focus,
#wrapper.fusion-wrapper #main .fusion-toggle .panel-title a:hover {
  text-decoration: none !important;
}
#wrapper.fusion-wrapper #main table th {
  text-align: left;
}
#wrapper.fusion-wrapper #main table.table-1 th {
  background: var(--awb-color3);
  border: 1px solid var(--awb-color3);
  padding: 10px 20px;
}

/* =========================================================================================
 * Home search modal
 * =========================================================================================
 */
#sliders-container {
  display: none;
}

#search_modal.fusion-modal .modal-header .modal-title {
  color: #fff;
  font-family: var(--font-family-heading), sans-serif;
  font-size: 2.5rem;
  font-weight: bold;
  margin-top: 0;
}

/* =========================================================================================
 * Megamenu Customization
 * =========================================================================================
 */
.awb-menu__mega-wrap .mega-submenu {
  list-style: none;
  margin: 0;
  padding: 0;
}
.awb-menu__mega-wrap .mega-submenu > li {
  position: relative;
  background-color: var(--awb-submenu-bg);
}
.awb-menu__mega-wrap .mega-submenu > li > a {
  display: block;
  color: var(--awb-submenu-color) !important;
  font-size: 1rem !important;
  line-height: 1.2;
  padding-top: var(--awb-submenu-items-padding-top);
  padding-bottom: var(--awb-submenu-items-padding-bottom);
  padding-left: var(--awb-submenu-items-padding-left);
  padding-right: var(--awb-submenu-items-padding-right);
  text-decoration: none !important;
  white-space: normal;
  word-wrap: break-word;
}
.awb-menu__mega-wrap .mega-submenu > li > a:hover {
  color: var(--awb-submenu-active-color) !important;
  text-decoration: none !important;
}
.awb-menu__mega-wrap .mega-submenu > li > span {
  background-color: var(--color-bg-light);
  color: var(--awb-color8);
  display: block;
  font-size: 1rem !important;
  line-height: 1.2;
  padding: 0.33rem 1rem;
  white-space: normal;
  word-wrap: break-word;
}
.awb-menu__mega-wrap .mega-submenu > li:has(ul) > a::after {
  color: var(--awb-submenu-color) !important;
  content: "\f107";
  font-family: awb-icons;
  margin-left: 8px;
  transition: transform 0.3s ease;
}
.awb-menu__mega-wrap .mega-submenu > li:has(ul):hover {
  background-color: var(--awb-color3, #ebeaea) !important;
}
.awb-menu__mega-wrap .mega-submenu > li ul {
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  min-width: 200px;
  background-color: var(--awb-submenu-bg);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
  z-index: 1000;
  list-style: none;
  margin: 0;
  padding: 0;
}
.awb-menu__mega-wrap .mega-submenu > li ul li {
  margin: 0;
  background-color: var(--awb-submenu-bg);
}
.awb-menu__mega-wrap .mega-submenu > li ul li a {
  display: block;
  color: var(--awb-submenu-color) !important;
  line-height: 1.2;
  padding: 0.33rem 1rem;
  text-decoration: none !important;
  white-space: normal;
  word-wrap: break-word;
  transition: background-color 0.2s ease, color 0.2s ease;
}
.awb-menu__mega-wrap .mega-submenu > li ul li a:hover {
  background-color: var(--awb-submenu-active-bg) !important;
  color: var(--awb-submenu-active-color) !important;
}
.awb-menu__mega-wrap .mega-submenu > li:hover {
  background-color: var(--awb-submenu-active-bg) !important;
}
.awb-menu__mega-wrap .mega-submenu > li:hover > ul {
  display: block;
}
.awb-menu__mega-wrap .mega-submenu > li:hover > a::after {
  transform: rotate(180deg);
}
.awb-menu__mega-wrap .mega-submenu.mega-submenu--always-open > li > ul {
  display: block;
  position: static;
  box-shadow: none;
}
.awb-menu__mega-wrap .mega-submenu.mega-submenu--always-open > li > a::after {
  transform: rotate(180deg);
}
.awb-menu__mega-wrap .menu-destinations .mega-submenu > li > a {
  background-color: var(--color-bg-light);
}
.awb-menu__mega-wrap .menu-destinations .mega-submenu > li > a:hover {
  background-color: var(--awb-color3, #ebeaea) !important;
}

/* =========================================================================================
 * Image frames
 * =========================================================================================
 */
.awb-imageframe-style-navin:hover img {
  opacity: 0.5 !important;
}

.awb-imageframe-style .awb-imageframe-caption-title,
.awb-imageframe-style-navin:hover .awb-imageframe-caption-text {
  line-height: 1 !important;
}

.awb-imageframe-style-schantel.destination .awb-imageframe-caption-title {
  font-size: 30px !important;
}
.awb-imageframe-style-schantel.destination .awb-imageframe-caption-title:before {
  content: "\f3c5";
  font-family: "Font Awesome 5 Free";
  font-size: 90%;
  font-weight: 900;
  margin-right: 8px;
}

/* =========================================================================================
 * Content boxes
 * =========================================================================================
 */
.content-box .fusion-column-wrapper div:last-child {
  margin-top: auto;
}

/* =========================================================================================
 * Blog
 * =========================================================================================
 */
.fusion-blog-layout-medium h2.entry-title {
  font-size: var(--font-size-h3) !important;
}
.fusion-blog-layout-medium h2.entry-title a {
  text-decoration: none !important;
}

.fusion-post-medium {
  background: #fff;
  padding: 2rem;
}
.fusion-post-medium h3.blog-shortcode-post-title a {
  text-decoration: none !important;
}

.fusion-recent-posts .entry-title {
  font-size: 1.25rem !important;
  font-weight: bold !important;
  line-height: 1.5 !important;
}
.fusion-recent-posts .entry-title a {
  text-decoration: none !important;
}

.widget_categories h4.widget-title {
  margin-bottom: 0.5rem !important;
}
.widget_categories ul {
  padding-left: 0 !important;
}
.widget_categories ul li {
  border-bottom: none !important;
  padding: 0 !important;
  margin-bottom: 0.5rem !important;
}
.widget_categories ul li:last-child {
  margin-bottom: 0 !important;
}
.widget_categories ul li a {
  font-weight: bold;
  text-decoration: none !important;
}
.widget_categories ul li a:before {
  display: none;
}

/* =========================================================================================
 * Packages (Grid/Listing View)
 * =========================================================================================
 * Note: Single package page styles are in wp-content/plugins/itb-packages/css/packages-details.scss
 */
#wrapper.fusion-wrapper #main #itbp-container.itbp-container--grid > div {
  /* Force equal height columns */
  align-items: stretch;
}
#wrapper.fusion-wrapper #main #itbp-container.itbp-container--grid .itbp-row {
  background: #fff;
  border: 0;
  border-radius: 2rem;
  box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.15) !important;
  height: 100%;
  overflow: hidden;
  transition: box-shadow 0.4s ease;
}
#wrapper.fusion-wrapper #main #itbp-container.itbp-container--grid .itbp-row:hover {
  box-shadow: 8px 8px 15px rgba(0, 0, 0, 0.5) !important;
}
#wrapper.fusion-wrapper #main #itbp-container.itbp-container--grid .itbp-row p {
  margin-bottom: 0;
}
#wrapper.fusion-wrapper #main #itbp-container.itbp-container--grid .itbp-row .itbp-mainbox {
  /* Make main content area grow to push price box down */
  flex-grow: 1;
}
#wrapper.fusion-wrapper #main #itbp-container.itbp-container--grid .itbp-row .itbp-mainbox h4 {
  font-size: 1.25rem !important;
  line-height: 1.2;
  margin-bottom: 1rem;
}
#wrapper.fusion-wrapper #main #itbp-container.itbp-container--grid .itbp-row .itbp-pricebox {
  align-items: center;
  align-self: center;
  background: var(--awb-color2, #f6f6f6);
  border-top: 1px solid var(--awb-color3, #ebeaea);
  display: flex;
  flex-direction: column;
  justify-content: center;
  margin-top: auto; /* Push price box to bottom */
  min-width: 180px;
  padding: 1.5em;
  position: relative;
  text-align: center;
  /* From/Per Text Styling */
  /* Responsive adjustments */
}
#wrapper.fusion-wrapper #main #itbp-container.itbp-container--grid .itbp-row .itbp-pricebox .itbp-pricefrom,
#wrapper.fusion-wrapper #main #itbp-container.itbp-container--grid .itbp-row .itbp-pricebox .itbp-priceper {
  display: block;
  font-size: 0.75em;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  font-weight: 500;
  color: #666;
}
#wrapper.fusion-wrapper #main #itbp-container.itbp-container--grid .itbp-row .itbp-pricebox .itbp-pricefrom {
  position: absolute;
  top: -8px;
  left: 50%;
  transform: translateX(-50%);
  background: var(--secondary);
  color: #fff;
  padding: 2px 10px;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.5px;
  border-radius: 12px;
  margin: 0 0 0.5rem !important;
}
#wrapper.fusion-wrapper #main #itbp-container.itbp-container--grid .itbp-row .itbp-pricebox .itbp-priceper {
  margin-top: 0.3em;
  margin-bottom: 1em;
}
#wrapper.fusion-wrapper #main #itbp-container.itbp-container--grid .itbp-row .itbp-pricebox .itbp-price {
  font-size: var(--font-size-h1, 2.5em);
  font-weight: 700;
  letter-spacing: -0.02em;
  margin: 0;
  line-height: 1 !important;
  display: flex;
  align-items: baseline;
  justify-content: center;
  gap: 2px;
  /* Currency Symbol Styling */
}
#wrapper.fusion-wrapper #main #itbp-container.itbp-container--grid .itbp-row .itbp-pricebox .itbp-price span {
  font-size: 0.825rem;
  font-weight: 600;
  align-self: flex-start;
  margin-top: 0.15em;
  opacity: 0.8;
}
#wrapper.fusion-wrapper #main #itbp-container.itbp-container--grid .itbp-row .itbp-pricebox a {
  align-items: center;
  align-self: center;
  background: var(--primary);
  border-radius: 50px;
  color: #fff;
  display: flex;
  font-size: var(--button_font_size, 14px);
  font-family: var(--button_typography-font-family), sans-serif;
  font-style: var(--button_typography-font-style, normal);
  font-weight: var(--button_typography-font-weight);
  height: auto;
  justify-content: center;
  line-height: var(--button_line_height, 1);
  padding: var(--button_padding-top, 13px) var(--button_padding-right, 29px) var(--button_padding-bottom, 13px) var(--button_padding-left, 29px);
  text-align: center;
  text-decoration: none;
  text-transform: none;
  transition: background 0.3s ease;
  width: 100%;
}
#wrapper.fusion-wrapper #main #itbp-container.itbp-container--grid .itbp-row .itbp-pricebox a:hover {
  background: var(--primary-dark);
  color: #fff;
  text-decoration: none;
}
@media screen and (max-width: 480px) {
  #wrapper.fusion-wrapper #main #itbp-container.itbp-container--grid .itbp-row .itbp-pricebox {
    width: 100%;
    padding: 1.5em;
    background: linear-gradient(135deg, #f8f9fa 0%, #ffffff 100%);
    border-top: 1px solid #e0e0e0;
    margin-top: 1em;
  }
  #wrapper.fusion-wrapper #main #itbp-container.itbp-container--grid .itbp-row .itbp-pricebox .itbp-price {
    font-size: 2.4em;
  }
}

.fusion-tabs.vertical-tabs.clean .nav-tabs li .tab-link {
  border: none !important;
}

.ody-shiplinks {
  margin: 0;
}

/* =========================================================================================
 * Footer
 * =========================================================================================
 */

/*# sourceMappingURL=custom.css.map */
