/*
 Theme Name:   GeneratePress child theme by k-Dushi
 Theme URI:    https://www.k-dushi.com
 Description:  GeneratePress child theme by k-Dushi
 Author:       k-Dushi
 Author URI:   https://www.k-dushi.com
 Template:     generatepress
 Version:      1.0
*/

/* TEMP */
body.page-id-15941 .grid-item-image {
  display: none !important;
}

/* FIXES */
body {
  overflow-x: hidden !important;
}
*[style*="color: #33cccc"], *[style*="color:#33cccc"] {
  color: var(--accent) !important;
}
ul li a {
  text-decoration: none !important;	
}
body.home #third-section, body.home #fourth-section, body.home .site-footer {
  z-index: var(--z-overlay) !important;
  position: relative;  
  margin-top: -50px !important;
}

/* GLOBAL STYLES */
:root {
  --transition: 0.5s ease all;
  --radius: 6px;
  --space-xs: 5px;
  --space-sm: 10px;
  --space-md: 15px;
  --space-lg: 20px;
  --z-overlay: 1000;
  --z-sticky: 1100;
  --z-menu: 1200;
  --border-dotted: 2px dotted;
}
.vc_single_image-wrapper img {
  border-radius: var(--radius);
}
.no-border::before {
  border: 0px !important;
}
.wpb_single_image .vc_box_border_circle.vc_box_border_grey {
  background-color: var(--base-3) !important;
}
.wpb_single_image .vc_box_border_circle.vc_box_border_grey img {
  background-color: var(--base) !important;
}
.white-text {
  color: var(--base) !important;
}
.blue-text {
  color: var(--accent) !important;
}
h2:not(.blue-text), h3.white-text {
  text-shadow: 0px 0px 10px var(--contrast);
}
h2.widget-title {
  color: var(--accent);
  text-shadow: none;
}
body.archive h2.entry-title {
  text-shadow: none !important;
  margin-top: 40px;
}
.wpb_text_column ul li a {
  text-decoration: underline !important;
}
.wpb_text_column > .wpb_wrapper a {
  transition: var(--transition);
}
ul {
  margin: 0 0 1.5em 1.2em;
}
body:not(.home) #content {
  padding: 2% 10px 0px 10px;
}
body:not(.home) #primary {
  padding: 0px 10px;
}
.custom-offset.one-and-half-col-offset > .wpb_column:first-child {
  margin-left: 12.5%;
}
.vc_icon_element-color-blue span {
  color: var(--accent) !important;
  transition: var(--transition);
}
.vc_icon_element-color-blue:hover span {
  color: var(--accent-2) !important;
}
.document-row .vc_icon_element.vc_icon_element-outer .vc_icon_element-inner.vc_icon_element-size-lg .vc_icon_element-icon {
  font-size: 2.2em !important;
}

/* BUTTONS */
.vc_btn3, ul li.menu-item.book-now {
  border-radius: var(--radius) !important;
  overflow: hidden;
}
.vc_btn3, .vc_btn3:hover {
  font-size: 15px !important;
  font-weight: normal;
  transition: var(--transition);
}
.vc_btn3-inline {
  margin-right: 8px;
}
.vc_btn3-size-sm {
  padding: 7px 10px !important;
}
.vc_btn3-style-flat.vc_btn3-color-white {
  background-color: var(--base) !important;
  color: var(--accent) !important;
}
.vc_btn3-style-flat.vc_btn3-color-white:hover {
  color: var(--accent-2) !important;
}
.vc_btn3-color-orange {
  background-color: var(--accent-2) !important;
  color: var(--base) !important;
}
.vc_btn3-color-orange:hover {
  background-color: var(--accent-3) !important;
}
.vc_btn3-cover {
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  transition: var(--transition);
}
.vc_btn3-cover .vc_btn3 {
  background-color: transparent !important;
  width: 100%;
  height: 100%;
}
.vc_btn3-style-outline.vc_btn3-color-blue {
  background: transparent !important;
  border: 0px !important;
  border-radius: 0px !important;
  border-bottom: 1px solid var(--accent) !important;
  padding-top: 3px !important;
  padding-left: 0px !important;
  padding-bottom: 3px !important;
  padding-right: 18px !important;
  margin-top: -25px;
}
.vc_btn3-style-outline.vc_btn3-color-blue:hover {
  color: var(--accent-2) !important;
  border-bottom: 1px solid var(--accent-2) !important;
}
.vc_btn3-style-outline.vc_btn3-color-blue .vc_btn3-icon {
  right: 0px !important;
}
.book-now {
  top: -1px;
}
.book-now, .book-now::before {
  background-color: var(--accent-2) !important;
  transition: var(--transition);
}
.book-now a {
  line-height: 40px !important;
  position: relative;
  height: 40px;
  background-color: transparent;
  border: 0px !important;
  padding-right: 32px !important;
}
.book-now:hover, .book-now:hover::before {
  background-color: var(--accent-3) !important;
}
.book-now a::after {
  border: 0px !important;
}
.book-now::before {
  font-family: "Font Awesome 6 Free";
  content: "\f054";
  font-weight: 600;
  right: 0px !important;
  position: absolute;
  background: var(--accent-2);
  height: 40px;
  width: 22px;
  line-height: 40px;
}
.alert a {
  color: var(--accent-2);
}
.alert a:hover {
  color: var(--base);
}
.alert a:before {
  content: "\f3ed";
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  margin-right: 6px;
}

/* HEADER */
/* container */
header#masthead {
  padding: 0px !important;
  background: transparent !important;
  max-height: 100px;
}
header#masthead .inside-header {
  padding: 0px !important;
  background: var(--accent) !important;
}
/* logo */
header#masthead .inside-header .site-logo {
  padding: var(--space-sm);
}
/* responsive tweaks */
@media screen and (max-width: 1270px) {
  .main-navigation:not(#sticky-navigation):not(.secondary-navigation) {
    margin-top: -18px;
    margin-left: 15px !important;
  }
  .main-navigation:not(#sticky-navigation):not(.secondary-navigation) ul.menu > li.menu-item {
    margin-bottom: 15px;
  }
  header#masthead > .inside-header {
    margin-top: 15px;
    padding-top: 5px !important;
    height: 133px;
  }
  .inside-header .site-logo {
    margin-top: -30px;
  }
  #masthead {
    margin-top: -15px;
    min-height: 113px;
  }
  #first-section .vc_row.vc_row-o-equal-height > .wpb_column.vc_column_container {
    top: -70px !important;
  }
}

/* TOP BAR */
.inside-top-bar {
  padding: 0px 15px;
}
.top-bar #text-4 {
  z-index: 888;
  width: 100%;
  padding: 0px !important;
}
.top-bar #nav_menu-2 {
  position: absolute;
  z-index: 999;
  right: 0px;
  background: var(--contrast-2) !important;
  padding-left: 25px;
  height: 19px;
}
.top-bar li.menu-item:last-child {
  padding-right: 20px;
}
.top-bar .menu-item a {  
  transition: var(--transition) !important;
  padding: 3px 0px;
  text-decoration: none;
  border-left: var(--border-dotted) var(--base);
  padding-left: 20px !important;
}

/* PRIMARY NAVIGATION */
nav.main-navigation li ul.sub-menu .with-separator {
  border-bottom: 2px dotted rgba(255,255,255,0.75);
  margin-bottom: 5px;
  padding-bottom: 5px;
}
li.menu-item a {
  transition: var(--transition) !important;
}
#primary-menu {
  padding-right: 20px;
}
body:not(.home) li.menu-item.show-in-subpages {
  display: block !important;
}
body.home li.menu-item.show-in-subpages {
  display: none !important;
}
.main-navigation ul ul {
  width: 275px !important;
}
nav.main-navigation ul.sub-menu, .secondary-navigation ul.sub-menu {
  padding: var(--space-xs) 0px;
}
nav.main-navigation li ul.sub-menu li, .secondary-navigation li ul.sub-menu li {
  border-bottom: 2px dotted rgba(255,255,255,0.1);
  margin: 0px 5px;
  width: calc(100% - 10px) !important;
}
nav.main-navigation li ul.sub-menu li:last-child {
  border-bottom: 0px;
}
.main-navigation .main-nav ul li a {
  line-height: 31px;
}
#primary-menu ul.menu > li.menu-item > a::after {
  opacity: 0;
  content: "";
  display: block;
  width: 100%;
  position: relative;
  top: 0px;
  border-bottom: var(--border-dotted) var(--base);
  transition: var(--transition);
}
#primary-menu ul.menu > li.menu-item-has-children > a::after {
  width: calc(100% - 10px);
  left: -2px;
}
#primary-menu ul.menu > li.menu-item:hover > a::after,
#primary-menu ul.menu > li.menu-item.current-menu-item > a::after {
  opacity: 1;
}
.navigation-branding img,
.site-logo.mobile-header-logo img {
  padding: 5px 0 !important;
}

/* STICKY NAVIGATION */
nav#sticky-navigation .show-in-sticky-menu {
  display: block !important;
}
nav:not(#sticky-navigation) .show-in-sticky-menu, nav#sticky-navigation .hide-in-sticky-menu {
  display: none !important;
}
#sticky-navigation {
  z-index: var(--z-menu) !important;
}
#sticky-navigation .inside-navigation {
  max-width: unset !important;
  padding-left: 10px;
}
#sticky-navigation li.book-now {
  position: absolute;
  right: 20px !important;
  top: 7.5px;
}
#sticky-navigation li.menu-item.book-now a:hover {
  color: var(--base) !important;
}
#sticky-navigation ul.menu > li.menu-item > a::after {
  opacity: 0 !important;
}
#sticky-navigation ul.menu > li.menu-item a:hover {
  color: var(--accent-2);
}

/* SECONDARY NAVIGATION */
.secondary-navigation ul.menu > li:last-child > a {
  box-shadow: none;
}
.secondary-navigation ul.menu a {
  color: var(--base);
  padding: var(--space-xs) 0px;
}
.secondary-navigation .menu-item-description {
  display: block;
  font-size: 15px;
  font-weight: 400 !important;
  line-height: 20px;
  margin-top: 2px;
  text-transform: capitalize;
  transition: var(--transition);
}
.secondary-navigation li a:hover, .secondary-navigation li a:hover * {
  color: var(--accent-2) !important;
}

/* ACCESSIBILITY: keyboard-only focus styles */
#primary-menu a:focus-visible,
.secondary-navigation a:focus-visible,
.vc_btn3:focus-visible,
.book-now a:focus-visible,
#left-sidebar a:focus-visible,
.gfield input:focus-visible,
.gfield textarea:focus-visible {
  outline: 2px solid var(--accent);
  outline-offset: 2px;
}

/* PAGE HERO */
.page-hero {
  z-index: 23;
  position: relative;
}
.page-hero .inside-page-hero {
  padding-left: 35px;
  padding-right: 35px;
}
.inside-page-hero > span {
  padding: var(--space-xs) 0px;
  color: var(--base);
}
.inside-page-hero a {
  color: var(--base);
  border-bottom: 1px solid var(--base);
  text-decoration: none;
  transition: var(--transition);
}
.inside-page-hero a:hover {
  color: var(--accent-2);
  border-bottom: 1px solid var(--accent-2);
}
.page-hero h1 {
  color: var(--base);
  text-shadow: 0px 0px 10px var(--contrast);
}
.page-hero #destination-tag, .page-hero #destination-tag > .destination-display {
  font-weight: 600 !important;
}
.page-hero span:not(.sub-title), .page-hero span a, .fd-breadcrumbs__link {
  font-weight: 500;
  color: var(--base);
  text-shadow:
    0 0 5px rgba(0, 0, 0, 0.75),
    0 0 10px rgba(0, 0, 0, 0.75),
    0 0 20px rgba(0, 0, 0, 0.75),
    0 0 40px rgba(0, 0, 0, 0.75);
}
.page-hero h1.sub-title {
  line-height: 0.6em !important;
}

/* FAQ and TOGGLE BUTTON */
.faq-tabs .vc_do_toggle, .faq-tabs.vc_do_toggle {
  margin-bottom: 15px !important;
}
.faq-tabs .vc_toggle .vc_toggle_title, .faq-tabs .vc_toggle_title {
  text-align: left !important;
  border-bottom: var(--border-dotted) var(--base-2);
}
.faq-tabs .vc_toggle .vc_toggle_title p, .faq-tabs .vc_toggle_title p {
  text-align: left !important;
  border-bottom: none;
}
.vc_toggle_title {
  text-align: center;
}
.vc_toggle_title p {
  font-weight: 600;
  border-bottom: 1px solid var(--accent);
  display: inline-block !important;
  padding-bottom: 5px;
  color: var(--accent);
  transition: var(--transition);
}
.vc_toggle_title:hover p {
  color: var(--accent-2);
  border-color: var(--accent-2);
}

/* WIDGETS */
body:not(.page-id-102):not(.page-id-92):not(.page-id-94):not(.page-id-104) #nav_menu-15, /* TRIPS MENU */
body:not(.page-id-92) #trip-filter-form, /* TRIPS FILTER */
body:not(.page-id-94) #kids-sea-camp-trip-filter-form, /* KIDS SEA CAMP TRIPS FILTER */
body:not(.page-id-102) #family-dive-adventures-trip-filter-form, /* FAMILY DIVE ADVENTURES FILTER */
body:not(.page-id-104) #empty-nester-trips-trip-filter-form, /* EMPTY NESTER TRIPS FILTER */
body:not(.page-id-106) #special-trips-trip-filter-form, /* SPECIAL TRIPS FILTER */
body:not(.page-id-154) #post-filter-form, /* POSTS FILTER */
body:not(.page-id-15815) #family-stories-filter-form, /* FAMILY STORIES FILTER */
body:not(.page-id-15937) #family-blog-filter-form, /* FAMILY BLOG FILTER */
body:not(.page-id-15935) #family-travel-tips-filter-form, /* FAMILY TRAVEL TIPS FILTER */
body:not(.page-id-15939) #ksc-in-the-news-filter-form, /* FAMILY TRAVEL TIPS FILTER */
body:not(.page-id-15941) #poetry-filter-form, /* POETRY FILTER */
body:not(.page-id-15943) #the-scubapanda-filter-form, /* THE SCUBAPANDA TIPS FILTER */
body:not(.page-id-156) #trip-dates-filter-form, /* TRIP DATES FILTER */
body.single-post .widget#nav_menu-9, body.page .widget#nav_menu-9, /* KSC SINGLE TRIP MENU */
body.page-id-65 .widget#nav_menu-10 .parent-item, body:not(.page-id-65):not(.parent-pageid-65):not(.parent-pageid-75):not(.page-id-162):not(.page-id-160):not(.page-id-16906) .widget#nav_menu-10, /* ABOUT US | SUBPAGES MENU */
body.page-id-108 .widget#nav_menu-11 .parent-item, body:not(.page-id-108):not(.parent-pageid-108) .widget#nav_menu-11, /* DIVE TRAINING | SUBPAGES MENU */
body.page-id-136 .widget#nav_menu-12 .parent-item, body:not(.page-id-136):not(.parent-pageid-136):not(.parent-pageid-146) .widget#nav_menu-12, /* OTHER SERVICES */
body:not(.single-trip):not(.page-id-156) .widget#text-2, /* REQUEST INFORMATION WIDGET */
body.page-id-156 .widget#text-5 /* RELATED STORIES WIDGET */ {
  display: none !important;
}
#left-sidebar, #right-sidebar {
  margin-top: -5px
}
body.parent-pageid-65 .widget#nav_menu-10 .menu-item:not(.parent-item) {
  margin-left: 10px;
}
#left-sidebar h2.widget-title, .inside-right-sidebar #text-5 h2 {
  margin-bottom: 15px;
}
.filter .suitable-age-filter-group > span {
  display: block;
  margin-bottom: 8px;
  font-weight: 600;
}
.filter .suitable-age-filter {
  border: 0;
  margin: 0 0 12px;
  padding: 0;
}
.filter .suitable-age-filter label {
  display: block;
  margin-bottom: 6px;
  font-weight: normal;
}
.filter .suitable-age-filter input[type="checkbox"] {
  margin-right: 8px;
}
#left-sidebar > .inside-left-sidebar, #right-sidebar > .inside-right-sidebar {
  position: sticky !important;
  top: 50px !important;
  max-height: calc(100vh - 42px)!important;
  overflow-y: auto !important;
  padding-top: 20px !important;
  padding-bottom: 20px !important;
  padding-right: 10px !important;
  background-color: var(--base);
  z-index: 999 !important;
  width: calc(100% + 20px) !important;
}
.inside-left-sidebar {
  margin-left: -10px !important;
  padding-left: 10px;
}
.inside-left-sidebar > aside.widget {
  padding-top: 0px !important;
  padding-bottom: 0px !important;
}
#left-sidebar ul.menu li, #right-sidebar ul li, .footer-widgets ul.menu li {
  border-bottom: var(--border-dotted) var(--base-2);
  padding: var(--space-xs) 0px;
}
#left-sidebar ul.menu li a, #right-sidebar ul li a, .footer-widgets ul.menu li a {
  line-height: 22px;
  position: relative;
  top: -4px;
  font-weight: 600;
}
#left-sidebar ul.menu li a:hover, #right-sidebar ul li a:hover, .footer-widgets ul.menu li a:hover {
  color: var(--accent-2);
}
#left-sidebar ul.menu li a::before, #right-sidebar ul li a::before, .footer-widgets ul.menu li a::before {
  font-family: "Font Awesome 6 Free";
  content: "\f105";
  margin-right: 4px;
  display: inline-block;
  font-weight: 600;
  color: var(--accent);
  position: relative;
  transition: var(--transition);
}
#left-sidebar ul.menu li a:hover::before, #right-sidebar ul li a:hover::before, .footer-widgets ul.menu li a:hover::before {
  color: var(--accent-2) !important;
  margin-left: 4px;
}
.widget.widget_nav_menu li ul.sub-menu li:last-child {
  border-bottom: 0px !important;
}
.footer-widgets .widget-title {
  margin-bottom: 15px;
}
.inside-right-sidebar > aside {
  padding: 0px !important;
  width: calc(100% + 10px);
  position: relative;
  left: 0px;
  padding-right: 10px;
  box-sizing: border-box;
}
.inside-right-sidebar {
  margin-right: -10px !important;
  padding-left: 10px;
}
.inside-right-sidebar > aside#text-2 {
  margin-bottom: 35px;
}
#right-sidebar > .inside-right-sidebar {
  width: 100% !important; /* keep scrollbar within column */
  margin-right: 0 !important;
  scrollbar-gutter: stable; /* reserve space for scrollbar */
}
/* prevent horizontal scrollbars inside sidebars */
#left-sidebar > .inside-left-sidebar,
#right-sidebar > .inside-right-sidebar {
  overflow-x: hidden !important;
}
.inside-right-sidebar > aside#text-2 {
  margin-bottom: 35px;
}
.inside-right-sidebar > aside#text-2 > .textwidget, .inside-right-sidebar > aside#text-2 > h2 {
  background-color: var(--base-3);
  margin-bottom: 0px;
}
.inside-right-sidebar > aside#text-2 > h2 {
  padding: 10px 15px 0px 15px;
  border-radius: 8px 8px 0px 0px;
}
.inside-right-sidebar > aside#text-2 > .textwidget {
  border-radius: 0px 0px 8px 8px;
}
#nav_menu-15 {
  margin-top: 45px;
}

/* SINGLE POSTS */
body.single-post #main {
	padding-top: 23px;
}
body.single-post #main h2, body.single-post #main h2 *, body.single-post #main h3, body.single-post #main h3 * {
  color: var(--contrast);
  font-weight: 600 !important;
  text-transform: uppercase;
  font-style: normal;
  text-decoration: none;
  font-size: 28px;
  text-shadow: none;
}
body.single-post header.entry-header .author, body.single-post header.entry-header .entry-meta {
  display: none;
}
footer.entry-meta * {
  text-decoration: none !important;
  font-size: 15px;
}
footer.entry-meta *::before {
  color: var(--accent);
  opacity: 1;
}
footer.entry-meta, #comments {
  margin-top: 45px !important;
}
footer.entry-meta #nav-below {
  margin-top: 20px !important;
  font-weight: 600;
}
#commentform textarea {
  border: 0px;
  border-top: var(--border-dotted) var(--base-2);
  border-bottom: 0px;
  color: var(--accent) !important;
  margin-bottom: 0px !important;
  background-color: var(--base-4) !important;
  font-weight: 600;
}
#commentform p.comment-form-comment {
  margin-bottom: 0px !important;
}
#commentform input#author, #commentform input#email, #commentform input#url {
  border: 0px;
  border-top: var(--border-dotted) var(--base-2);
  border-bottom: 0px;
  width: 100%;
  margin-bottom: 0px !important;
  background-color: var(--base-4) !important;
  font-weight: 600;
}
#commentform input#author, #commentform input#email, #commentform input#url {
  color: var(--accent) !important;
}
#commentform *::placeholder {
  color: var(--base-2) !important;
  opacity: 1 !important;
}
#commentform input#url {
  border-bottom: var(--border-dotted) var(--base-2);
  margin-bottom: 20px !important;
}
body.single-post #main #comments h3.comment-reply-title {
  font-size: 20px !important;
  text-transform: none !important;
  font-weight: 800 !important;
  color: var(--accent) !important;
}
#comments input#submit {
  border-radius: var(--radius);
  font-weight: 600;
}

/* SINGLE TRIPS */
body.single-trip:not(:has(div#other)) li.other {
  display: none !important;
}
.smugmug-iframe-wrapper iframe {
  width: 100%;
}

/* HOMEPAGE */
.vc_video-bg video {
  height: 100%;
}
#first-section .vc_row.vc_row-o-equal-height > .wpb_column.vc_column_container {
  top: -80px;
  height: calc(100vh -  225px) !important;
}
#first-section .vc_row.vc_row-o-equal-height > .wpb_column.vc_column_container:nth-child(1) > .vc_column-inner {
  justify-content: flex-end !important;
}
#first-section .vc_row.vc_row-o-equal-height > .wpb_column.vc_column_container:nth-child(2) {
  transition: transform 0.5s cubic-bezier(0.4, 0, 0.2, 1);
  will-change: transform;
  position: relative;
  z-index: 10;
  background: rgba(255,255,255,0.65);
}
#first-section .vc_row.vc_row-o-equal-height > .wpb_column.vc_column_container:nth-child(2).collapsed {
  transform: translateX(calc(100% - 15px));
}
#first-section .vc_row.vc_row-o-equal-height > .wpb_column.vc_column_container:nth-child(2) > .vc_column-inner {
  position: relative;
}
#first-section .vc_row.vc_row-o-equal-height > .wpb_column.vc_column_container:nth-child(2) > .vc_column-inner > .wpb_wrapper {
  position: absolute;
  top: 0px;
  height: 100%;
  overflow: hidden;
  padding: 30px 15px 15px 0px;
  max-height: calc(100% - 30px) !important;
  overflow: auto;
}
#first-section .vc_row.vc_row-o-equal-height > .wpb_column .wpb_text_column {
  margin-bottom: 0px !important;
}
#blogs-homepage-content .wpb_single_image, #blogs-homepage-content .wpb_text_column {
  margin-bottom: 15px;
}
#blogs-homepage-content .vc_single_image-wrapper {
    max-height: 100px;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}
#blogs-homepage-content .vc_single_image-wrapper img {
    vertical-align: middle;
    max-height: 100%;
    width: auto;
}
#blogs-homepage-content .wpb_single_image, #blogs-homepage-content h4, #blogs-homepage-content .wpb_text_column {
  margin-bottom: 0px;
}
#blogs-homepage-content h4 {
  padding: 6px 15px 0px 15px;
}
#blogs-homepage-content .wpb_text_column {
  padding-top: 3px;
  padding-bottom: 10px;
}
#blogs-homepage-content h4, #blogs-homepage-content .wpb_text_column {
  background-color: var(--base);
}
#blogs-homepage-content .wpb_text_column p {
  padding: 0px 15px;
}
#blogs-homepage-content > .wpb_wrapper {
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
  position: relative;
  margin-bottom: 20px;
}
#blogs-homepage-content > .wpb_wrapper:hover {
  transform: translateY(-5px);
  text-decoration: none;
  color: inherit;
  box-shadow: 0 8px 15px rgba(0, 0, 0, 0.15);
}
.collapse-control-wrapper {
  position: fixed;
  top: calc(50% - 25px);
  left: -20px;
  z-index: 1004;
}
.collapse-control-btn {
  height: 50px;
  width: 20px;
  padding: 0px;
  background-color: rgba(255,255,255,0.65);
  color: var(--accent-2);
  transition: var(--transition);
  border-radius: 5px 0px 0px 5px;
}
.collapse-control-btn .control-icon {
  margin-right: -15px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
}
.collapse-control-btn .control-icon i {
  font-size: 14px;
  color: var(--accent-2);
  transition: var(--transition);
}
button.collapse-control-btn:focus, .collapse-control-btn:hover {
  background-color: rgba(255,255,255,0.75);
}
button.collapse-control-btn:focus .control-icon i, .collapse-control-btn:hover .control-icon i {
  color: var(--accent);
}
#second-row > div > .vc_column-inner {
  padding: 0px;
}
.menu-wrapper.bottom {
  background: var(--accent);
  color: var(--base);
  position: absolute !important;
  bottom: 0px;
  left: 0px !important;
  min-width: 100%;
}
.main-navigation.secondary-navigation ul ul,
.main-navigation.secondary-navigation .main-nav ul ul,
#secondary-menu ul ul {
  top: auto !important;
  bottom: 100% !important;
}
.main-navigation.secondary-navigation ul ul li,
.main-navigation.secondary-navigation .main-nav ul ul li,
#secondary-menu ul ul li {
  position: relative;
}
#second-row {
  overflow: visible !important;
  z-index: var(--z-overlay) !important;
}
body.home #second-row .wpb_widgetised_column > div > aside.widget_custom_html,
body.home #second-row .wpb_widgetised_column > div > aside.widget_media_image {
  display: none !important;
}
body.home #second-row .wpb_widgetised_column {
  text-align: center;
  margin-bottom: 0px;
}
body.home #second-row .wpb_widgetised_column h2 {
  font-weight: 800;
  font-size: 15px;
  letter-spacing: -0.8px;
  text-shadow: none;
  padding-top: 20px;
  margin-bottom: 10px;
}
body.home #second-row .wpb_widgetised_column > div > aside.widget_lsi_widget ul {
  text-align: center !important;
}

/* DOCUMENTS PAGE */
.document-row > .vc_column_container > .vc_column-inner > .wpb_wrapper {
  border-top: var(--border-dotted) var(--base-2);
}
.document-row > .vc_column_container:nth-child(1) > .vc_column-inner {
  padding-right: 0px !important;
}
.document-row > .vc_column_container:nth-child(2) > .vc_column-inner {
  padding-left: 0px !important;
}
.document-row > .vc_column_container .wpb_text_column {
  padding-top: 24px;
  padding-left: 5px;
}
.document-row > .vc_column_container .vc_icon_element {
  padding-top: 4px;
}

/* MARGO PAGE */
.slides li::before, .slides li::after {
  position: absolute;
  color: var(--base);
  text-align: center;
  width: 100%;
  text-shadow: 0px 0px 10px var(--contrast);
  padding-left: 50px;
  padding-right: 50px;
}
.slides li::before {
  top: calc(50% - 95px);
  font-weight: 900;
  text-transform: uppercase;
  font-size: 34px;
}
.slides li::after {
  top: calc(50% - 40px);
  font-weight: 800;
  font-size: 1.2em;
  letter-spacing: -0.8px;
}
.slides li:nth-child(1)::before {
  content: "Say Hello To Margo Peyton";
}
.slides li:nth-child(1)::after {
  content: "Margo Peyton has selflessly dedicated her life to training, empowering children and their families to safely explore and care for the ocean while engaging with diverse cultures.";
}
.slides li:nth-child(2)::before {
  content: "International Scuba Diver Hall of Famer";
}
.slides li:nth-child(2)::after {
  content: "Margo Peyton pioneering embrace of families and children has changed the dive industry forever.";
}
.slides li:nth-child(3)::before {
  content: "A True Pioneer";
}
.slides li:nth-child(3)::after {
  content: "Margo's company has certified over 8,100 children in 25 years";
}
ul.flex-direction-nav {
  display: none;
}
ol.flex-control-paging {
  top: calc(100% - 50px) !important;
}
ol.flex-control-paging a:not(.flex-active) {
  background-color: var(--base) !important;
  opacity: 50%;
  transition: var(--transition);
}
ol.flex-control-paging a:hover {
  opacity: 100%;
}
ol.flex-control-paging a.flex-active {
  background-color: var(--base) !important;
}
.flexslider {
  border: 0px !important;
  margin-bottom: 35px !important;
}
.hof-btns {
  width: 100%;
  text-align: center;  
}

/* BROCHURE PAGE */
.brochure-btn a {
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.4);
}
.brochure-btn a:hover {
  transform: translateY(-5px);
  text-decoration: none;
  box-shadow: 0 8px 15px rgba(0, 0, 0, 0.45);
}

/* GALLERY PAGE */
.gallery-row {
  padding: 0px 5px;
}
.gallery-row > .wpb_column {
  padding: var(--space-sm);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.gallery-row > .wpb_column > .vc_column-inner {
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.4);
}
.gallery-row > .wpb_column:hover > .vc_column-inner {
  box-shadow: 0 8px 15px rgba(0, 0, 0, 0.45);
}
.gallery-row > .wpb_column.vc_col-sm-12, .gallery-row > .wpb_column.vc_col-sm-8  {
  min-height: 46vh !important;
}
.gallery-row > .wpb_column.vc_col-sm-4 {
  min-height: 23vh !important;
}
.gallery-row > .wpb_column:hover {
  transform: translateY(-5px);
  text-decoration: none;
  color: inherit;
}

/* TRIPS GRID — underwater waves video background on homepage trip rows */
#upcoming-ksc-trips.fd-has-mp4-bg,
#popular-fda-trips.fd-has-mp4-bg {
  position: relative;
  overflow: hidden;
  background-image: url("/wp-content/uploads/2026/04/underwater-waves-loop.webp") !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
  background-size: cover !important;
}
#upcoming-ksc-trips .vc_video-bg,
#popular-fda-trips .vc_video-bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
  overflow: hidden;
  pointer-events: none;
}
#upcoming-ksc-trips .vc_video-bg video,
#popular-fda-trips .vc_video-bg video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0;
  transition: opacity 0.5s ease;
}
#upcoming-ksc-trips.fd-mp4-video-ready .vc_video-bg video,
#popular-fda-trips.fd-mp4-video-ready .vc_video-bg video {
  opacity: 1;
}
#upcoming-ksc-trips > .wpb_column,
#popular-fda-trips > .wpb_column {
  position: relative;
  z-index: 1;
}

.trips-grid {
  height: calc(100vh) !important;
  background-color: var(--base);
  margin-top: -70px;
}
.trips-grid .vc_column-inner .wpb_wrapper .vc_row .vc_column-inner {
  height: calc(50vh - 50px);
  width: calc(100% - 22.5px);
  padding: var(--space-md);
  margin: 15px 15px 0px 15px;
  border-radius: var(--radius);
}
.trips-grid .vc_column-inner .wpb_wrapper .vc_row:first-child .vc_btn3-container, .trips-grid .vc_column-inner .wpb_wrapper .vc_row:first-child .dates, .trips-grid .vc_column-inner .wpb_wrapper .vc_row:first-child .price, .trips-grid .vc_column-inner .wpb_wrapper .vc_row:first-child .vc_column-inner {
  width: calc(100% - 30px);
  border-radius: var(--radius);
}
.trips-grid .vc_column-inner .wpb_wrapper .vc_row > .wpb_column:nth-child(2) .vc_column-inner {
  margin-left: 7.5px;
}
.trips-grid .vc_btn3-container {
  height: calc(50vh - 50px);
  width: calc(100% - 22.5px);
  top: 15px;
  left: 15px;
  border-radius: var(--radius);
}
.trips-grid .vc_column-inner .wpb_wrapper .vc_row > .wpb_column:nth-child(2) .vc_btn3-container {
  left: 7.5px;
}
.trips-grid .dates, .trips-grid .price {
  background: var(--accent-2);
  position: absolute;
  left: 15px;
  width: calc(100% - 22.5px);
  color: var(--base);
  padding: 10px 15px;
}
.trips-grid .dates {
  bottom: -35px;
  border-radius: 0px 0px 6px 6px !important;
}
.trips-grid .vc_column-inner .wpb_wrapper .vc_row > .wpb_column:nth-child(2) .dates, .trips-grid .vc_column-inner .wpb_wrapper .vc_row > .wpb_column:nth-child(2) .price {
  left: 7.5px;
}
.trips-grid .price::before {
  opacity: 1;
  content: "";
  display: block;
  width: 100%;
  height: 2px;
  position: relative;
  top: -7px;
  background-repeat: repeat-x;
  background-image: url("/wp-content/uploads/2025/08/dot-1.png");
  transition: var(--transition);
}
.trips-grid .wpb_column .vc_btn3-container {
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.4);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.trips-grid .wpb_column .vc_btn3-container:hover {
  box-shadow: 0 8px 15px rgba(0, 0, 0, 0.45);
}
.trips-grid .wpb_column {
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.trips-grid .wpb_column:hover {
  transform: translateY(-5px);
  text-decoration: none;
  color: inherit;
}
h3.grid-item-title .trip-category, h3.grid-item-title .trip-destination {
  font-weight: 600;
  font-size: 18px;
}

/* SUB PAGES */
body.page:not(.home) .second-section {
  background-image: url("/wp-content/uploads/2025/09/Cudanewsite.jpg");
  background-size: cover;
  background-position: center center;
  min-height: 300px;
  height: 25vh;
  z-index: 222;
  margin-top: 25px;
}
body.page:not(.home) .second-section > div.vc_row {
  background: #192058;
  background: -webkit-linear-gradient(130deg, rgba(25, 32, 88, 0.75) 0%, rgba(40, 111, 178, 0.8) 50%, rgba(234, 133, 30, 0.5) 80%);
  background: -moz-linear-gradient(130deg, rgba(25, 32, 88, 0.75) 0%, rgba(40, 111, 178, 0.8) 50%, rgba(234, 133, 30, 0.5) 80%);
  background: linear-gradient(130deg, rgba(25, 32, 88, 0.75) 0%, rgba(40, 111, 178, 0.8) 50%, rgba(234, 133, 30, 0.5) 80%);
  height: 100%;
  padding: 25px 0px;
}
body.page:not(.home) div#cta_wrapper {
  width: calc(55% - 10px);
  margin-left: auto;
  margin-right: auto;
}
body.page:not(.home) .second-section h1, body.page:not(.home) .second-section h3 {
  color: var(--base);
  text-transform: uppercase;
}
body.page:not(.home) .second-section h3 {
  width: calc(100% - 205px);
  display: inline-block;
}
body.page:not(.home) .second-section .vc_btn3-container {
  display: inline-block;
  position: absolute;
  right: calc(20% + 25px);
}

/* TRIPS PAGES */
body:not(.single-trip) #destination-tag {
  display: none;
}
body:not(.home) .first-section {
  padding-top: 20px;
  min-height: 400px;
}
body:not(.home) .first-section > .vc_row {
  padding-top: 20px;
}
body:not(.home) .first-section > .vc_row::before {
  border-bottom: var(--border-dotted) var(--contrast);
  content: "";
  display: block;
  width: calc(100% - 30px);
  position: relative;
  top: -22px;
  left: 15px;
}
body:not(.home) .first-section > .vc_row:first-child {
  margin-top: -22px;
}
body:not(.home) .first-section > .vc_row:first-child::before {
  border: 0px;
}
body.single-trip section.second-section::before {
  border-bottom: var(--border-dotted) var(--contrast);
  content: "";
  display: block;
  width: 100% ;
  position: relative;
}
span.sub-title {
  font-size: 0.6em;
}
p#disclaimer {
  padding-top: 25px;
}
p#disclaimer, p#terms-conditions {
  font-style: italic;
  font-size: 0.9em;
}
body.single-trip:not(:has(div#other)) li.other,
body.single-trip:not(:has(div#dates)) li.dates,
body.single-trip:not(:has(div#introduction)) li.introduction,
body.single-trip:not(:has(div#rates)) li.rates,
body.single-trip:not(:has(div#package)) li.package,
body.single-trip:not(:has(div#accommodations)) li.accommodations,
body.single-trip:not(:has(div#activities)) li.activities,
body.single-trip:not(:has(div#photos-videos)) li.photos-videos,
body.single-trip:not(:has(div#getting-here)) li.getting-here,
body.single-trip:not(:has(div#packages)) li.packages,
body.single-trip:not(:has(div#diving)) li.diving,
body.single-trip:not(:has(div#dining)) li.dining,
body.single-trip:not(:has(div#rates-prices-specials)) li.rates-prices-specials,
body.single-trip:not(:has(div#schedule)) li.schedule {
  display: none !important;
}
body.single-trip li.other,
body.single-trip li.dates,
body.single-trip li.introduction,
body.single-trip li.rates,
body.single-trip li.package,
body.single-trip li.accommodations,
body.single-trip li.activities,
body.single-trip li.photos-videos,
body.single-trip li.getting-here,
body.single-trip li.packages,
body.single-trip li.diving,
body.single-trip li.dining,
body.single-trip li.rates-prices-specials,
body.single-trip li.schedule {
  display: none;
}
body.single-trip:has(div#other) li.other,
body.single-trip:has(div#dates) li.dates,
body.single-trip:has(div#introduction) li.introduction,
body.single-trip:has(div#rates) li.rates,
body.single-trip:has(div#package) li.package,
body.single-trip:has(div#accommodations) li.accommodations,
body.single-trip:has(div#activities) li.activities,
body.single-trip:has(div#photos-videos) li.photos-videos,
body.single-trip:has(div#getting-here) li.getting-here,
body.single-trip:has(div#packages) li.packages,
body.single-trip:has(div#diving) li.diving,
body.single-trip:has(div#dining) li.dining,
body.single-trip:has(div#rates-prices-specials) li.rates-prices-specials,
body.single-trip:has(div#schedule) li.schedule {
  display: list-item;
}

/* INQUIRY FORM */
.gform_heading {
  display: none !important;
}
.inside-right-sidebar div.gform_wrapper {
  padding: var(--space-md);
}
div.gform_wrapper * {
  box-shadow: none !important;
}
.gform-theme--foundation .gform_fields {
  display: inline-block !important;
  background-color: var(--base) !important;
}
.gfield:not(#gform_1 :nth-child(3)) {
  border-top: var(--border-dotted) var(--base-2);
}
.gfield * {
  border: 0px !important;
}
.gfield input {
  height: 50px !important;
}
.gfield input, .gfield textarea, fieldset.gfield--type-checkbox label {
  color: var(--base-2) !important;
  font-weight: 600 !important;
}
.gform_body select {
  font-weight: 600 !important;
  color: var(--accent) !important;
}
.gform-theme--foundation .gfield textarea.large {
  min-block-size: 10rem !important;
}
.gfield input:focus, .gfield textarea:focus {
  color: var(--accent) !important;
  border-bottom: var(--border-dotted) var(--accent) !important;
  outline: none !important;
}
fieldset#field_3_13 {
  border-top: 0px !important;
}
#gform_1 > .gform_body {
  border-radius: var(--radius) !important;
  overflow: hidden !important;
}
#field_1_7 textarea {
  margin-bottom: 6px !important;
}
input.gform_button {
  margin-top: 0px !important;
  background-color: var(--accent-2) !important;
  margin-top: 7px !important;
  margin-bottom: 5px !important;
  height: 49px !important;
  padding: 14px 20px !important;
  font-size: 15px !important;
  border-radius: var(--radius) !important;
}
input.gform_button:hover {
  background-color: var(--accent-3) !important;
}
.gform-footer {
  margin-top: 10px !important;
  padding-bottom: 5px;
}
.gfield_label {
  display: none !important;
}
#gform_2 #field_2_3 {
  border-bottom: var(--border-dotted) var(--base-2);
}
.gfield input::placeholder, .gfield textarea::placeholder {
  color: var(--base-2) !important;
  opacity: 1;
}
.gfield input, .gfield textarea {
  color: var(--accent) !important;
}
body.page-id-16906 #gform_1 #field_1_7 {
  border-bottom: var(--border-dotted) var(--base-2);
}
body.page-id-16906 #gform_1 #field_1_3 {
  border-top: var(--border-dotted) var(--base-2);
}
.ginput_container_checkbox {
  height: 40px !important;
  padding: 9px 12px !important;
}
.gfield-choice-input {
  border: 1px solid var(--base-2) !important;
  max-height: 20px !important;
  border-radius: 5px !important;
}
#gform_2 *:not(input.gform_button), #gform_3 *:not(input.gform_button) {
  background-color: var(--base-4) !important;
}
#gform_3 .gform-field-label--type-sub {
  display: none !important;
}
.gfield:not(#gform_1 :nth-child(3)) {
  border-top: var(--border-dotted) var(--base-2);
}
#input_3_13, #input_3_14_container {
  inline-size: 100%;
  margin-left: 0px;
}
#input_3_13 > span#input_3_13_1_container {
  margin-top: 0px !important;
  border-top: 0px !important;
}
#input_3_13 > span:not(#input_3_13_5_container) {
  border-top: var(--border-dotted) var(--base-2) !important;
}
#input_3_13 > span {
  margin-top: -12px !important;
}
#input_3_13 > span input, #input_3_14_container span input {
  padding-left: 5px;
}
select.gfield_select, span.address_state select, fieldset.gfield--type-checkbox {
  line-height: 50px !important;
  height: 50px !important;
}
fieldset.gfield--type-checkbox > * {
  margin-top: 3px !important;
}
.gform-footer.top_label {
  margin-top: 0px !important;
  padding-top: 10px !important;
  padding-bottom: 10px;
}
#input_3_13_4_container, #input_3_13_3_container {
  border-bottom: var(--border-dotted) var(--base-2) !important;
}

/* DIVE TRAVEL PAGE */
body:not(.page-id-92) h3.grid-item-title .trip-category, body:not(.page-id-92) .trip-category-overlay {
  display: none;
}

/* CTA */
.call-to-action {
  margin-top: 25px;
  margin-bottom: 25px;
  padding: 35px 5px;
  background-image: url("/wp-content/uploads/2025/09/Cudanewsite.jpg");
  background-size: cover;
  background-position: center center;
  width: calc(100% - 0px);
  margin-left: 0px !important;
  border-radius: 12px;
}
.call-to-action h3, .call-to-action .vc_btn3-container {
  padding: 0px !important;
  margin: 0px !important;
  color: var(--base);
}

/* TABS */
ul.vc_tta-tabs-list li {
  margin-right: 8px !important;
  margin-bottom: 5px !important;
}
ul.vc_tta-tabs-list li:last-child {
  margin-right: 0px !important;
}
ul.vc_tta-tabs-list li:first-child {
  margin-left: 0px !important;
}
ul.vc_tta-tabs-list li a {
  padding: 3px 0px !important;
  border-bottom: 1px solid var(--accent) !important;
  color: var(--accent) !important;
  background-color: transparent !important;
  transition: var(--transition);
  border-left: 0px !important;
  border-right: 0px !important;
  font-size: 1.05em;
  letter-spacing: -0.4px !important;
}
ul.vc_tta-tabs-list li:not(.vc_active) a:hover {
  border-bottom: 1px solid var(--accent-2) !important;
  color: var(--accent-2) !important;
}
ul.vc_tta-tabs-list li.vc_active a {
  font-weight: 600;
}
.vc_tta.vc_general .vc_tta-title-text:not(:empty):not(:first-child), .vc_tta.vc_general .vc_tta-title-text:not(:empty) ~ * {
  margin-left: 8px !important;
}

/* TABLES */
.tablepress > :where(thead, tfoot) > tr > * {
  background-color: var(--base-3) !important;
}
.tablepress * {
  color: var(--contrast) !important;
}

/* FOOTER */
.copyright-bar img {
  position: relative;
  height: 20px;
  top: 4px;
  margin: 0px 2px;
}

/* Z-INDEX FIX: ensure dropdown menus appear above sidebars/widgets */
.main-navigation, .secondary-navigation {
  position: relative;
  z-index: var(--z-menu) !important;
}
.main-navigation .sub-menu, .secondary-navigation .sub-menu {
  z-index: 1300 !important;
}

/* CUSTOM BREADCRUMBS */
.fd-breadcrumbs {
  margin: 0 0 15px 0;
  line-height: 1.5;
}
.fd-breadcrumbs__list {
  display: flex;
  flex-wrap: wrap;
  list-style: none;
  margin: 0;
  padding: 0;
}
.fd-breadcrumbs__item {
  margin: 0;
  padding: 0;
}
.fd-breadcrumbs__link {
  text-decoration: none;
  border-bottom: 1px solid transparent;
  transition: var(--transition);
}
.fd-breadcrumbs__link:hover {
  color: var(--accent-2);
  border-bottom-color: var(--accent-2);
}
.fd-breadcrumbs__separator {
  color: var(--base);
  margin-right: 5px;
}

/* TRIP GRID - KSC / ENT MESSAGES */
.trip-program-messages {
  margin-bottom: 10px;
}
.trip-program-message {
  margin: 0 0 6px 0;
  margin-bottom: 6px;
  line-height: 1.45;
  font-weight: normal;
  text-transform: initial;
  font-style: normal;
  font-size: 15px;
}
.trip-program-message a {
  text-decoration: none;
  border-bottom: 1px solid var(--accent);
}
.trip-program-message a:hover {
  border-bottom: 1px solid var(--accent-2);
}

/* -------------------------------------------------- */
/* DESKTOP */
/* -------------------------------------------------- */
@media (min-width: 1025px) {
  .mobile-only {
    display: none !important;
  }
  .page-hero {
    padding-top: 10%;
    padding-bottom: 10%;
  }
  /* SECONDARY NAVIGATION */
  .secondary-navigation {
    margin-bottom: 0px !important;
  }
  .secondary-navigation ul:not(.sub-menu) {
    display: flex;
    position: relative !important;
  }
  .secondary-navigation li {
    position: static !important;
  }
  .secondary-navigation ul.menu > li {
    margin: 0px !important;
    height: 120px;
    width: 25% !important;
    text-align: center;
  }
  .secondary-navigation ul.menu > li > a {
    height: 120px;
    padding: 5px 10px;
    position: relative;
  }
  .secondary-navigation ul.menu > li.menu-item > a::after {
    content: "";
    display: block;
    position: absolute;
    height: calc(100% - 20px);
    top: 10px;
    right: 0px;
    border-right: var(--border-dotted) var(--base);
  }
  .secondary-navigation ul.menu > li > a::before {
    content: "";
    margin-top: 14px;
    margin-bottom: 8px;
    display: block;
  }
  .hof-btns {
    position: absolute;
    top: calc(50% + 25px); 
  }
}

/* -------------------------------------------------- */
/* CUSTOM FOR HERO */
/* -------------------------------------------------- */
@media (min-width: 1400px) {
  .page-hero {
    padding-top: 13%;
    padding-bottom: 13%;
  }
}

/* -------------------------------------------------- */
/* TABLET */
/* -------------------------------------------------- */
@media (min-width: 769px) and (max-width: 1024px) {
  .mobile-only {
    display: none !important;
  }
  /* SECONDARY NAVIGATION */
  .secondary-navigation {
    margin-bottom: 0px !important;
  }
  .secondary-navigation ul:not(.sub-menu) {
    display: flex;
    position: relative !important;
  }
  .secondary-navigation li {
    position: static !important;
  }
  .secondary-navigation ul.menu > li {
    margin: 0px !important;
    height: 120px;
    width: 20% !important;
    text-align: center;
  }
  .secondary-navigation ul.menu > li > a {
    height: 120px;
    padding: 5px 10px;
    position: relative;
  }
  .secondary-navigation ul.menu > li.menu-item > a::after {
    content: "";
    display: block;
    position: absolute;
    height: calc(100% - 20px);
    top: 10px;
    right: 0px;
    border-right: var(--border-dotted) var(--base);
  }
  .secondary-navigation ul.menu > li > a::before {
    content: "";
    margin-top: 14px;
    margin-bottom: 8px;
    display: block;
  }
  .hof-btns {
    position: absolute;
    top: calc(50% + 25px); 
  }
}

/* -------------------------------------------------- */
/* MOBILE */
/* -------------------------------------------------- */
@media (max-width: 768px) {
  #sticky-placeholder, #sticky-navigation {
    display: none !important;
  }
  body:not(.home) .top-bar, body:not(.home) header#masthead {
    position: fixed;
    width: 100%;
    z-index: 9999;
  }
  .top-bar {
    top: 0px;
  }
  .top-bar aside#nav_menu-2 {
    display: none;
  }
  body:not(.home) header#masthead {
    top: 36px !important;
  }
  header#masthead {
    height: 80px !important;
    min-height: 80px !important;
  }
  .inside-header {
    height: 80px !important;
  }
  .inside-header .site-logo {
    margin-top: -5px !important;
  }
  body:not(.home) #page {
    margin-top: 116px;
  }
  .page-hero {
    top: 116px;
    padding: 20% 0px;
  }
  .inside-page-hero {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
  h1 {
    font-size: 34px;
    margin-bottom: 10px;
  }
  #mobile-menu-control-wrapper {
    margin-top: -5px !important;
    right: 20px !important;
    position: absolute;
    border: 1px solid var(--base) !important;
    border-radius: var(--radius) !important;
    width: 50px;
  }
  #generate-slideout-menu.main-navigation:not(#sticky-navigation):not(.secondary-navigation) {
    margin-top: 0px !important;
    margin-left: 0px !important;
    margin: 0px !important;
  }
  #generate-slideout-menu {
    z-index: 99999 !important;
  }
  #generate-slideout-menu .inside-navigation {
    padding: var(--space-lg);
    padding-top: 50px !important;
  }
  #generate-slideout-menu .slideout-exit {
    position: absolute !important;
    top: 20px !important;
    right: 20px !important;
    border: 1px solid var(--base) !important;
    padding: 0px !important;
    height: 50px !important;
    width: 50px !important;
    line-height: 50px !important;
    border-radius: var(--radius);
  }
  #generate-slideout-menu aside *, #generate-slideout-menu .main-nav * {
    text-align: left !important;
  }
  #generate-slideout-menu aside.widget_nav_menu {
    padding: 0px !important;
    width: 100%;
  }
  #generate-slideout-menu aside.widget_nav_menu {
    border-bottom: var(--border-dotted) var(--base);
    padding-bottom: 20px !important;
  }
  #generate-slideout-menu aside.widget_nav_menu li a {
    font-weight: 400;
    text-transform: capitalize;
    letter-spacing: 0;
  }
  #generate-slideout-menu .main-nav {
    order: 3;
  }
  #generate-slideout-menu .main-nav li a {
    padding: 0px !important;
  }
  #generate-slideout-menu .main-navigation.offside {
    width: 100vw !important;
    overflow: hidden !important;
  }
  #generate-slideout-menu .dropdown-menu-toggle {
    border: 0px !important;
  }
  #generate-slideout-menu ul li {
    margin: 0px !important;
    line-height: 36px;
    border-bottom: 2px dotted rgba(255,255,255,0.1);
  }
  #generate-slideout-menu ul li:last-of-type {
    border-bottom: 0px !important;
  }
  #generate-slideout-menu ul li a {
    margin: 0px !important;
  }
  #generate-slideout-menu ul.sub-menu {
    width: 100% !important;
    left: 10px !important;
  }
  #generate-slideout-menu ul.sub-menu a {
    font-weight: 400;
    text-transform: capitalize;
    letter-spacing: 0 !important;
  }
  #generate-slideout-menu li#menu-item-18290 {
    border-bottom: var(--border-dotted) var(--base) !important;
    padding-bottom: 30px !important;
    margin-bottom: 20px !important;
  }
  #generate-slideout-menu .main-nav li#menu-item-18290 a {
    background-color: var(--accent-2) !important;
    border-radius: var(--radius) !important;
    padding: 0px 10px !important;
    height: 40px;
    line-height: 40px;
    margin-top: 10px !important;
  }
  #generate-slideout-menu .main-nav {
    order: 2;
    padding-bottom: 30px !important;
    margin: 0px !important;
    width: 100% !important;
  }
  #generate-slideout-menu #nav_menu-14 {
    order: 1;
    margin-bottom: 20px;
  }
  #generate-slideout-menu #nav_menu-16 {
    order: 3;
    border-bottom: 0px;
  }
  #generate-slideout-menu .menu-item-description {
    display: none;
  }
  #generate-slideout-menu.main-navigation ul #menu-item-18320 ul {
    display: block !important;
    height: auto !important;
    opacity: 1 !important;
    left: 0px !important;
  }
  #generate-slideout-menu.main-navigation ul #menu-item-18320 .dropdown-menu-toggle {
    display: none;
  }
  .footer-widgets-container {
    padding: 50px 15px;
  }
  #content > #left-sidebar {
    order: 1 !important;
  }
  #content > #primary {
    order: 2 !important;
  }
  #upcoming-ksc-trips .vc_do_btn .vc_btn3-color-orange, #popular-fda-trips .vc_do_btn .vc_btn3-color-orange {
    margin-bottom: 25px;
  }
  #upcoming-ksc-trips, #popular-fda-trips {
    background-position-x: left !important; 
  }
  .trips-grid {
    height: unset !important;
    display: block !important;
    margin-top: 0px !important;
  }
  #first-section {
    min-height: 400px !important;
  }
  #first-row {
    display: block !important;
    height: 310px !important;
    top: -35px !important;
    position: relative;
  }
  #first-row h2 {
    font-size: 22px;
  }
  #first-row .wpb_column.vc_col-sm-3:nth-child(2) {
    display: none;
  }
  #first-section .vc_row.vc_row-o-equal-height > .wpb_column.vc_column_container {
    top: 0px !important;
    height: 305px !important;
  }  
  #second-row {
    position: relative !important;
    display: block !important;
    margin-top: -35px;
  }
  .menu-wrapper.bottom {
    bottom: unset;
  }
  #menu-our-blog-menu-homepage {
    display: block;
  }
  .secondary-navigation li:first-child::before {
    content: "Our Blog Items";
    height: 50px !important;
    font-size: 22px;
    text-transform: uppercase;
    font-weight: 900;
    margin: 30px 15px -8px 15px;
    display: block;
  }
  .secondary-navigation li a {
    border-top: var(--border-dotted) var(--base);
    padding: 11px 15px 5px 15px !important;
  }
  .trips-grid {
    padding-bottom: 70px;
  }
  .trips-grid .vc_btn3-container {
    height: calc(50vh - 65px) !important;
  }
  .second-tile .vc_btn3-container, .second-tile .vc_column-inner, .second-tile .dates, .third-tile .vc_btn3-container, .third-tile .vc_column-inner, .third-tile .dates {
    width: calc(100% - 30px) !important;
  }
  .third-tile .vc_column-inner {
    margin-left: 15px !important;
  }
  .third-tile .vc_btn3-container, .third-tile .dates {
    margin-left: 7.5px !important;
  }
  body.home #third-section, body.home #fourth-section, body.home .site-footer {
    margin-top: 0px !important;
  }
  body.page:not(.home) div#cta_wrapper {
    width: 100%;
    padding: 15px;
    top: -25px !important;
    position: relative;
  }
  body.page:not(.home) div#cta_wrapper > h1, body.page:not(.home) div#cta_wrapper > h3 {
    display: block !important;
    width: 100% !important;
    text-align: center;
  }
  h4.vc_tta-panel-title a {
    display: inline-block !important;
    font-weight: 400 !important;
    font-size: 15px !important;
    padding: 3px 0px !important;
    border-bottom: 1px solid var(--accent) !important;
    color: var(--accent) !important;
    border-left: 0px !important;
    border-right: 0px !important;
    font-size: 1.05em;
    letter-spacing: -0.4px !important;
    margin-bottom: 10px;
  }
  .grid-item, .post-grid-item, .trip-grid-item, .client-comment-item {
    margin-bottom: 30px;
  }
  .document-row .vc_col-sm-1 {
    width: 55px;
    padding-right: 10px;
  }
  .document-row .vc_col-sm-11 {
    width: calc(100% - 55px);
  }
  ul.slides .flex-active-slide {
    overflow: hidden; 
    height: auto !important;
    width: calc(100% + 40px) !important;
    left: -20px;
  }
  ul.slides .flex-active-slide img {
    width: 200% !important;
    height: auto !important;
    max-width: 200%;
    aspect-ratio: auto;
    object-fit: contain;
    display: block;
    margin-left: -75% !important;
  }
  ul.slides li:not(.flex-active-slide) {
    display: none !important;
  }
  ul.slides .flex-active-slide::after {
    display: block !important;
    position: relative;
    bottom: -25px;
    font-size: 16px;
    font-weight: 700;
    width: 100%;
    text-shadow: none;
    color: var(--accent);
  }
  .hof-btns {
    position: relative;
    bottom: 15px !important;
    top: unset !important;
    left: 15px;
    width: 100% !important;
  }
  ol.flex-control-nav {
    display: none;
  }
  .the-numbers-row h4 {
    margin-bottom: 40px !important;
  }
  body.page-id-85 .vc_custom_1758036747085 > .wpb_column, body.page-id-69 .vc_custom_1758036747085 > .wpb_column {
    margin-top: 40px;
  }
  /* LEFT SIDEBAR */
  body.page-id-94 #left-sidebar aside#nav_menu-15, body.page-id-102 #left-sidebar aside#nav_menu-15, body.page-id-104 #left-sidebar aside#nav_menu-15, body.page-id-92 #left-sidebar aside#nav_menu-15, body.page-id-16906 #left-sidebar, body.page-id-108 #left-sidebar, body.parent-pageid-108 #left-sidebar, body.page-id-160 #left-sidebar, body.page-id-162 #left-sidebar, body.parent-pageid-65 #left-sidebar, body.page-id-65 #left-sidebar, body.parent-pageid-75 #left-sidebar, body.page-id-136 #left-sidebar li.menu-item-16735 ul.sub-menu, body.parent-pageid-136:not(.page-id-146) #left-sidebar, body.page-id-146 #left-sidebar li:not(.menu-item-16735), body.parent-pageid-146 #left-sidebar li:not(.menu-item-16735) {
    display: none;
  }
  body.page-id-146 #left-sidebar ul.sub-menu li, body.parent-pageid-146 #left-sidebar ul.sub-menu li {
    display: block;
  }
  body.parent-pageid-102 .first-section, body.page-id-94 .first-section, body.page-id-102 .first-section, body.page-id-104 .first-section {
    display: flex;
    flex-direction: column;
  }
  body.parent-pageid-102 .first-section > .grid-row, body.page-id-94 .first-section > .grid-row, body.page-id-102 .first-section > .grid-row, body.page-id-104 .first-section > .grid-row {
    order: 1;
    display: block !important;
  }
  body.parent-pageid-102 .first-section > #introduction, body.page-id-94 .first-section > #introduction, body.page-id-102 .first-section > #introduction, body.page-id-104 .first-section > #introduction {
    order: 2;
    display: block !important;
  }
  body.page-id-94 .first-section > #other-info, body.page-id-102 .first-section > #other-info {
    order: 3;
    display: block !important;
  }
  body.parent-pageid-102  .first-section > .vc_row::before, body.page-id-94  .first-section > .vc_row::before, body.page-id-102  .first-section > .vc_row::before, body.page-id-104  .first-section > .vc_row::before {
    border: 0px !important;
  }
  body.parent-pageid-102 .first-section > .grid-row > .vc_column_container > div > div, body.page-id-94 .first-section > .grid-row > .vc_column_container > div > div, body.page-id-102 .first-section > .grid-row > .vc_column_container > div > div, body.page-id-104 .first-section > .grid-row > .vc_column_container > div > div {
    border-bottom: var(--border-dotted) var(--contrast);
    margin-bottom: 40px;
  }
  #left-sidebar aside {
    padding: 10px;
  }
  #left-sidebar .inside-left-sidebar {
    padding-bottom: 0px !important;
  }
  button.reset-filter-btn {
    width: 75px !important;
  }
  /* RIGHT SIDEBAR */
  body.parent-pageid-94 #right-sidebar, body.parent-pageid-102 #right-sidebar, body.page-id-16799 #right-sidebar, body.page-id-16795 #right-sidebar, body.page-id-108 #right-sidebar, body.parent-pageid-108 #right-sidebar {
    display: none;
  }
  /* SINGLE TRIP */
  body.single-trip  #content > #primary {
    order: 2 !important;
  }
  body.single-trip  #content > #left-sidebar {
    order: 1 !important;
  }
  body.single-trip  #content > #right-sidebar {
    order: 3 !important;
  }
  body.single-trip #right-sidebar > .inside-right-sidebar {
    width: calc(100% - 10px) !important;
  }
  body.single-trip .first-section > .vc_row:not(#dates) {
    padding-top: 130px;
    margin-top: -110px;
  }
  body.home #second-row .wpb_widgetised_column {
    margin-top: 0px !important;
    padding-top: 0px !important;
    margin-bottom: 35px;
  }
  body.home #second-row .wpb_widgetised_column *:not(a) {
    margin-top: 0px !important;
    padding-top: 0px !important;
  }
  body.home #second-row .secondary-navigation li:last-child a {
    border-bottom: var(--border-dotted) var(--base) !important;
    padding-bottom: 12.5px !important;
  }
  body.home #second-row .vc_wp_custommenu {
    margin-bottom: 20px;
  }
  body.home #second-row .wpb_widgetised_column {
    text-align: left !important;
    padding-left: 15px !important;
  }
  body.home #second-row .wpb_widgetised_column > div > aside.widget_lsi_widget ul {
    text-align: left !important;
  }
  body.home #second-row .wpb_widgetised_column h2 {
    font-size: 22px !important;
  }
}

/* SHARE THIS PAGE */
.fd-share-bar {
  position: fixed;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  z-index: var(--z-sticky, 1100);
  display: flex;
  flex-direction: column;
  align-items: stretch;
  background: var(--accent-2);
  width: 53px;
  border-radius: var(--radius, 6px) 0 0 var(--radius, 6px);
  box-shadow: -2px 2px 12px rgba(0, 0, 0, 0.15);
  overflow: hidden;
  transition: var(--transition, 0.3s ease all);
}
.fd-share-bar__label {
  display: block;
  padding: 10px 8px 6px;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  text-align: center;
  color: var(--base);
  border-bottom: 1px solid rgba(255, 255, 255, 0.15);
}
.fd-share-bar__list {
  list-style: none;
  margin: 0;
  padding: 0;
}
.fd-share-bar__item {
  margin: 0;
}
.fd-share-bar__button {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  width: 52px;
  padding: 12px 8px;
  color: var(--base);
  text-decoration: none;
  transition: var(--transition, 0.3s ease all);
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}
.fd-share-bar__button:hover {
  color: var(--base);
  background-color: var(--accent-3);
}
.fd-share-bar__item:last-child .fd-share-bar__button {
  border-bottom: 0;
}
.fd-share-bar__button i {
  font-size: 18px;
  line-height: 1;
}
.fd-share-bar__text {
  font-size: 9px;
  font-weight: 600;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  line-height: 1.2;
}