/* Google Fonts Used
font-family: 'Cormorant Garamond', serif; font-weight: 500; Medium font-weight: 600; SemiBold
font-family: 'Montserrat', sans-serif; font-weight: 300; Light font-weight: 400; Regular font-weight: 500; Medium font-weight: 600; Semi-bold
*/
/* Reserve space for the Hero Section to prevent CLS */
.card-img, 
.swiper-container, 
#ppca_433 { /* Use the ID of your header container if known */
    min-height: 50vh; /* This ensures the header has height immediately */
    aspect-ratio: 16 / 9; /* Matches the video/slider aspect ratio */
    background-color: #47697e; /* Matches your brand color to avoid a white flash */
}

@media (min-width: 992px) {
    .card-img {
        min-height: 600px; /* Match your desktop header height */
    }
}
/* START - Rules created for header-block-buttons-logo-bottom-border partial */
* {
  font-size: 1.05em;
  font-family: "Montserrat", sans-serif;
  font-weight: 300;
  -webkit-font-smoothing: antialiased;
  color: #666666;
}

form,
.fakeform {
  font-size: 0.55em;
}

.the-tabor-group-gold-button-fill {
  background-color: #b4975a;
  border-radius: 8.5px;
  -moz-border-radius: 8.5px;
  -webkit-border-radius: 8.5px;
}

.the-tabor-group-button-font {
  font-weight: 500;
}

.the-tabor-group-logo-position {
  margin-top: -35px;
  position: relative;
}

.the-tabor-group-main-header-image-bottom-border {
  border-bottom: 5px solid #b4975a !important;
  outline: 2px solid #b4975a;
  outline-offset: 2px;
}

.the-tabor-group-main-header-image-sizing {
  -o-object-fit: cover;
  object-fit: cover;
}

.mobile-landscape {
  max-height: 80vh !important;
}

.mobile-portrait {
  min-height: 60vh !important;
}

/* END - Rules created for header-block-buttons-logo-bottom-border partial */

/* START - Rules created for colour-block-heading-para-half-circle partial */
.bg-the-tabor-group-light-brown {
  background-color: rgba(242, 241, 237, 1);
}

.bg-the-tabor-group-lighter-brown {
  background-color: rgba(230, 225, 219, 1);
}

.bg-the-tabor-group-lightest-brown {
  background-color: rgba(250, 249, 248, 1);
}

.bg-the-tabor-group-light-pink {
  background-color: rgba(246, 226, 225, 1);
}

.bg-the-tabor-group-lightest-pink {
  background-color: rgba(251, 238, 236, 0.5);
}

.bg-the-tabor-group-light-yellow {
  background-color: rgba(247, 240, 191, 0.4);
}

.bg-the-tabor-group-light-gold {
  background-color: rgba(232, 220, 194, 1);
}

.bg-the-tabor-group-light-green {
  background-color: rgba(223, 234, 227, 1);
}

.bg-the-tabor-group-light-lavender {
  background-color: rgba(213, 209, 219, 1);
}

.bg-the-tabor-group-lighter-gold {
  background-color: rgba(231, 222, 200, 1);
}

.bg-the-tabor-group-mint {
  background-color: rgba(204, 218, 209, 1);
}

.bg-the-tabor-group-olive {
  background-color: rgba(115, 131, 116, 1);
}

.bg-the-tabor-group-peach {
  background-color: rgba(211, 195, 157, 1);
}

.bg-the-tabor-group-wine {
  background-color: rgba(151, 113, 116, 1);
}

.bg-the-tabor-group-dark-gold {
  background-color: #b4975a;
}

.bg-the-tabor-group-light-blue {
  background-color: rgba(232, 240, 244, 1);
}

.bg-the-tabor-group-light-burgundy {
  background-color: rgba(211, 168, 170, 1);
}

.bg-the-tabor-group-dark-burgundy {
  background-color: rgba(167, 80, 86, 1);
}

.bg-the-tabor-group-dark-purple {
  background-color: rgba(151, 139, 164, 1);
}

.bg-the-tabor-group-navy {
  background-color: rgba(21, 23, 28, 1);
}

.bg-the-tabor-group-navy-76 {
  background-color: rgba(78, 79, 90, 1);
}

.bg-the-tabor-group-hunters-green {
  background-color: rgba(112, 132, 114, 1);
}

.bg-the-tabor-group-footer-corporate {
  background-color: rgba(219, 221, 217, 1);
}

.bg-gallery-categories {
  background-color: rgba(224, 220, 228, 1);
}

.bg-gallery-spring {
  background-color: rgba(252, 246, 246, 1);
}

.bg-gallery-summer {
  background-color: rgba(251, 235, 232, 1);
}

.bg-gallery-autumn {
  background-color: rgba(201, 212, 199, 1);
}

.bg-gallery-winter {
  background-color: rgba(232, 240, 244, 1);
}

.bg-gallery-house {
  background-color: rgba(235, 226, 204, 1);
}

.bg-gallery-gardens {
  background-color: rgba(223, 234, 227, 1);
}

.bg-gallery-multicultural {
  background-color: rgba(241, 227, 228, 1);
}

.bg-the-tabor-group-blue {
  background-color: #47697e;
}

.bg-landing-pages-light-pink {
  background-color: rgba(199, 148, 146, 1);
}

div.the-tabor-group-half-circle-bottom-light-pink-lp {
  background-color: rgba(199, 148, 146, 1);
  display: inline-block;
}

.landing-pages-light-pink-text-colour {
  color: rgba(199, 148, 146, 1);
}

.bg-landing-pages-darker-pink {
  background-color: rgba(186, 114, 118, 1);
}

div.the-tabor-group-half-circle-bottom-darker-pink-lp {
  background-color: rgba(186, 114, 118, 1);
  display: inline-block;
}

.landing-pages-darker-pink-text-colour {
  color: rgba(186, 114, 118, 1);
}

.text-white p {
  color: white;
}

div.spring-circ::after,
div.summer-circ::after,
div.autumn-circ::after,
div.winter-circ::after,
div.house-circ::after,
div.gardens-circ::after,
div.multi-cultural-circ::after {
  content: "";
  height: 33px;
  width: 66px;
  background-color: inherit;
  border-bottom-left-radius: 33px;
  border-bottom-right-radius: 33px;
  position: absolute;
  margin-top: 80px;
  z-index: 2;
}

div.navbar-nav.top-version div.dynamic-circ::after {
  content: "";
  height: 33px;
  width: 66px;
  background-color: inherit;
  border-bottom-left-radius: 33px;
  border-bottom-right-radius: 33px;
  z-index: 2;
  position: relative;
  display: block;
  margin: 0px auto 0px auto;
}

div.navbar-nav.bottom-version div.dynamic-circ::before {
  content: "";
  height: 33px;
  width: 66px;
  background-color: inherit;
  border-bottom-left-radius: 33px;
  border-bottom-right-radius: 33px;
  z-index: 2;
  position: relative;
  display: block;
  margin: -33px auto -33px auto;
}

h1,
h2,
h4 {
  font-family: "Cormorant Garamond", serif;
  font-weight: 500;
  color: #688171;
}

h1 {
  font-size: 2.5rem;
}

h2,
h4 {
  font-size: 1.4rem;
}

h3,
h5 {
  font-family: "Montserrat", sans-serif;
  font-weight: 600;
  font-size: 1rem;
  color: #464646;
}

h5 {
  font-size: 0.85rem;
}

p,
.virtual-p,
.virtual-p:hover {
  font-size: 0.85rem;
  color: #666666;
}

.voucher-description-area p,
.voucher-description-area strong,
.voucher-description-area li {
  font-size: 0.85rem;
  color: #666666;
  line-height: 1.6;
}

.voucher-description-area ul {
  padding-left: 1.2rem;
  margin-bottom: 1.5rem;
  margin-top: 0.5rem;
}

/* Enhances the look of the Left/Right split in the modal */
@media (min-width: 992px) {
  #modal_voucher_order .modal-xl {
    max-width: 1100px;
  }
}


p.strong {
  font-weight: 400;
}

div.the-tabor-group-half-circle-bottom-light-brown {
  background-color: rgba(242, 241, 237, 1);
  display: inline-block;
}

div.the-tabor-group-half-circle-bottom-lightest-brown {
  background-color: rgba(250, 249, 248, 1);
  display: inline-block;
}

div.the-tabor-group-half-circle-bottom-light-pink {
  background-color: rgba(246, 226, 225, 1);
  display: inline-block;
}

div.the-tabor-group-half-circle-bottom-lightest-pink {
  background-color: rgba(241, 189, 177, 0.5);
  display: inline-block;
}

div.the-tabor-group-half-circle-bottom-light-gold {
  background-color: rgba(232, 220, 194, 1);
  display: inline-block;
}

div.the-tabor-group-half-circle-bottom-light-green {
  background-color: rgba(223, 234, 227, 1);
  display: inline-block;
}

div.the-tabor-group-half-circle-bottom-light-lavender {
  background-color: rgba(213, 209, 219, 1);
  display: inline-block;
}

div.the-tabor-group-half-circle-bottom-dark-gold {
  background-color: #b4975a;
  display: inline-block;
}

div.the-tabor-group-half-circle-bottom-light-blue {
  background-color: rgba(232, 240, 244, 1);
  display: inline-block;
}

div.the-tabor-group-half-circle-bottom-dark-burgundy {
  background-color: rgba(167, 80, 86, 1);
  display: inline-block;
}

div.the-tabor-group-half-circle-bottom-dark-purple {
  background-color: rgba(151, 139, 164, 1);
  display: inline-block;
}

div.the-tabor-group-half-circle-bottom-light-brown.bottom,
div.the-tabor-group-half-circle-bottom-lightest-brown.bottom,
div.the-tabor-group-half-circle-bottom-light-pink.bottom,
div.the-tabor-group-half-circle-bottom-lightest-pink.bottom,
div.the-tabor-group-half-circle-bottom-light-gold.bottom,
div.the-tabor-group-half-circle-bottom-light-green.bottom,
div.the-tabor-group-half-circle-bottom-light-lavender.bottom,
div.the-tabor-group-half-circle-bottom-dark-gold.bottom,
div.the-tabor-group-half-circle-bottom-light-blue.bottom,
div.the-tabor-group-half-circle-bottom-dark-burgundy.bottom,
div.the-tabor-group-half-circle-bottom-dark-purple.bottom,
div.the-tabor-group-half-circle-bottom-light-pink-lp,
div.the-tabor-group-half-circle-bottom-darker-pink-lp {
  height: 33px;
  width: 66px;
  border-bottom-left-radius: 66px;
  border-bottom-right-radius: 66px;
}

/* END - Rules created for colour-block-heading-para-half-circle partial */

/* START - Rules created for multi-image-block-lpl-plp partial */
.the-tabor-group-landscape-masonary-style {
  height: 264px;
}

.the-tabor-group-landscape-masonary-style img {
  -o-object-fit: cover;
  object-fit: cover;
}

.the-tabor-group-portrait-masonary-style {
  height: 552px;
}

.the-tabor-group-portrait-masonary-style img {
  -o-object-fit: cover;
  object-fit: cover;
}

.the-tabor-group-trbl0 {
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}

.the-tabor-group-gold-button-text {
  color: #b4975a;
  border-radius: 8.5px;
  -moz-border-radius: 8.5px;
  -webkit-border-radius: 8.5px;
  border: 1px solid #b4975a;
  background-color: white;
}

.the-tabor-group-gold-button-text-transparent {
  color: #ffffff;
  border-radius: 8.5px;
  -moz-border-radius: 8.5px;
  -webkit-border-radius: 8.5px;
  border: 1px solid #8a4d31;
  background-color: #8a4d31;
}

.the-tabor-group-gold-button-text-transparent.lighter-gold-fss {
  color: #ffffff;
  border-radius: 8.5px;
  -moz-border-radius: 8.5px;
  -webkit-border-radius: 8.5px;
  border: 1px solid #b06e42;
  background-color: #b06e42;
}

.the-tabor-group-gold-text-colour {
  color: #b4975a !important;
}

/* END - Rules created for multi-image-block-lpl-plp partial */

.the-tabor-group-lavender-button-fill {
  background-color: #655c71;
  border-radius: 8.5px;
  -moz-border-radius: 8.5px;
  -webkit-border-radius: 8.5px;
}

.the-tabor-group-plum-button-fill {
  background-color: #a05359;
  border-radius: 8.5px;
  -moz-border-radius: 8.5px;
  -webkit-border-radius: 8.5px;
}

.the-tabor-group-green-button-fill {
  background-color: #708472;
  border-radius: 8.5px;
  -moz-border-radius: 8.5px;
  -webkit-border-radius: 8.5px;
}

.the-tabor-group-navy-button-fill {
  background-color: #151726;
  border-radius: 8.5px;
  -moz-border-radius: 8.5px;
  -webkit-border-radius: 8.5px;
}

.the-tabor-group-plum-text-colour {
  color: #a05359;
}

.the-tabor-group-green-text-colour {
  color: #708472;
}

.the-tabor-group-navy-text-colour {
  color: #184a5d;
}

.the-tabor-group-lavender-text-colour {
  color: #67586e;
}

.the-tabor-group-blue-text-colour {
  color: #47697e;
}

/* .navbar-nav a {
  font-weight: 400;
  font-size: 0.8rem;
  color: #b4975a !important;
} */
/* .navbar-nav .dropdown-menu {
  border-color: #b4975a;
  border-radius: 10px;
} */
span.body-copy p:last-child {
  margin-bottom: 0px;
}

.body-copy h4 a {
  font-family: "Cormorant Garamond", serif;
  font-size: 1.4rem;
}

.btn:focus {
  outline: none;
  -webkit-box-shadow: none;
  box-shadow: none;
}

.the-tabor-group-form label {
  font-size: 0.85rem;
}

.the-tabor-group-form input:not([type='submit']),
.the-tabor-group-form select,
.the-tabor-group-form textarea {
  background-color: rgba(255, 255, 255, 0.5);
}

.dropdown-item.active,
.dropdown-item:active {
  color: #fff !important;
  text-decoration: none;
  background-color: rgba(185, 160, 97, 1);
}

.dropdown-item.hover,
.dropdown-item:hover {
  color: rgba(112, 132, 114, 1) !important;
  text-decoration: none;
  background-color: rgba(185, 160, 97, 1);
}

.text-white .text-decoration-none {
  font-weight: 500 !important;
}

.dropdown-menu {
  opacity: 1;
}

#db_repeat_containers_for_footer .border-start {
  border-color: white !important;
}

span.body-copy h3 {
  color: #777;
}

span.body-copy-light p {
  color: #FFF;
}

span ul {
  font-size: 0.85rem;
  color: #666666;
  margin-left: 15px;
  padding-left: 0px;
}

.first-swiper-load .swiper-wrapper {
  height: -webkit-min-content !important;
  height: -moz-min-content !important;
  height: min-content !important;
}

.bg-menu-the-tabor-group-gold-a {
  background-color: rgba(252, 250, 247, 1);
}

.bg-menu-the-tabor-group-gold-b {
  background-color: rgba(248, 245, 238, 1);
}

.bg-menu-the-tabor-group-gold-c {
  background-color: rgba(245, 241, 230, 1);
}

.bg-menu-the-tabor-group-gold-d {
  background-color: rgba(242, 236, 221, 1);
}

.bg-menu-the-tabor-group-gold-e {
  background-color: rgba(239, 231, 213, 1);
}

.bg-menu-the-tabor-group-gold-f {
  background-color: rgba(235, 226, 204, 1);
}

.bg-menu-the-tabor-group-bronze-a {
  background-color: rgba(245, 240, 237, 1);
}

.bg-menu-the-tabor-group-bronze-b {
  background-color: rgba(239, 233, 228, 1);
}

.bg-menu-the-tabor-group-bronze-c {
  background-color: rgba(234, 225, 219, 1);
}

.bg-menu-the-tabor-group-bronze-d {
  background-color: rgba(229, 218, 210, 1);
}

.bg-menu-the-tabor-group-bronze-d8 {
  background-color: rgba(229, 218, 210, .8);
}

.bg-menu-the-tabor-group-bronze-e {
  background-color: rgba(224, 210, 201, 1);
}

.bg-recommended-suppliers-celebrant {
  background-color: rgba(247, 215, 208, 1);
}

.bg-recommended-suppliers-child-care {
  background-color: rgba(235, 213, 214, 1);
}

.bg-recommended-suppliers-decor-and-florist {
  background-color: rgba(239, 244, 241, 1);
}

.bg-recommended-suppliers-multicultural-specialists {
  background-color: rgba(210, 225, 232, 1);
}

.bg-recommended-suppliers-toastmaster {
  background-color: rgba(254, 250, 240, 1);
}

.bg-recommended-suppliers-photographer {
  background-color: rgba(235, 233, 230, 1);
}

.navbar-light .navbar-toggler-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28190, 159, 86, 1.0%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e") !important;
}

.fake-content::after {
  content: "";
  height: 300px;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
}

.the-tabor-group-footer-font {
  font-family: "Cormorant Garamond", serif;
  font-weight: 600;
  font-size: 1.1rem;
}

.the-tabor-group-main-section-image-sizing {
  max-height: 480px;
  -o-object-fit: cover;
  object-fit: cover;
}

span.the-tabor-group-about-picture-font {
  font-family: "Cormorant Garamond", serif;
  font-weight: 600;
  font-size: 6.6rem;
  color: white;
}

span.the-tabor-group-about-picture-font p {
  font-family: "Cormorant Garamond", serif;
  font-weight: 600;
  font-size: 1.1rem;
  color: white;
}

.navbar a.fs-6 {
  font-size: 1rem !important;
}

/* X-Small devices (portrait phones, less than 576px)
No media query for `xs` since this is the default in Bootstrap */

/* Smallest devices (landscape phones, 576px and under) */
@media (max-width: 576px) {
  .the-tabor-group-main-section-image-sizing {
    height: 480px;
  }

  .the-tabor-group-footer-font {
    font-size: 0.85rem;
  }

  span.the-tabor-group-about-picture-font {
    font-size: 5.6rem;
  }

  span.the-tabor-group-about-picture-font p {
    font-size: 1rem;
  }

  .navbar a.fs-6 {
    font-size: 0.75rem !important;
  }

  div.spring-circ::after,
  div.summer-circ::after,
  div.autumn-circ::after,
  div.winter-circ::after,
  div.house-circ::after,
  div.gardens-circ::after,
  div.multi-cultural-circ::after {
    margin-top: 30px;
  }

  .the-tabor-group-no-hero {
    display: none;
  }

  .the-tabor-group-no-hero-container {
    display: none;
  }

  .table-rotate {
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg);
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    white-space: nowrap;
    display: inline-block;
    overflow: visible;
  }

  .georgis-unusual-gold-heading {
    font-size: 1.7em;
  }

  /* START - Rules created for image-background-inset-text-block partial */
  .the-tabor-group-inset-block {
    margin-top: -45px;
    z-index: 1;
  }

  /* START - Rules created for image-background-inset-text-block partial */
  .the-tabor-group-main-header-image-sizing {
    max-height: calc(100vh - 60px);
  }

  .the-tabor-group-inset-block-first {
    margin-top: 0px;
  }
}

/* Small devices (landscape phones, 576px and up) */
@media (min-width: 576px) {
  .the-tabor-group-main-section-image-sizing {
    height: 480px;
  }

  div#swiper_int.swiper,
  div#swiper_int_new_mobile.swiper {
    margin-bottom: inherit !important;
  }

  .the-tabor-group-main-header-image-sizing {
    min-height: 500px;
  }

  .the-tabor-group-footer-font {
    font-size: 0.85rem;
  }

  span.the-tabor-group-about-picture-font {
    font-size: 5.6rem;
  }

  span.the-tabor-group-about-picture-font p {
    font-size: 1rem;
  }

  .navbar a.fs-6 {
    font-size: 1rem !important;
  }

  div.spring-circ::after,
  div.summer-circ::after,
  div.autumn-circ::after,
  div.winter-circ::after,
  div.house-circ::after,
  div.gardens-circ::after,
  div.multi-cultural-circ::after {
    margin-top: 129px;
  }

  .the-tabor-group-no-hero {
    display: none;
  }

  .the-tabor-group-no-hero-container {
    display: none;
  }

  .georgis-unusual-gold-heading {
    font-size: 1.7em;
  }
}

/* Medium devices (tablets, 768px and up) */
@media (min-width: 768px) {
  .the-tabor-group-no-hero {
    display: block;
  }

  .the-tabor-group-no-hero-container {
    display: block;
    height: 116px;
  }

  div#swiper_int.swiper,
  div#swiper_int_new_mobile.swiper {
    margin-bottom: 4.5rem !important;
  }

  .georgis-unusual-gold-heading {
    font-size: 1.7em;
  }

  /* START - Rules created for image-background-inset-text-block partial */
  .the-tabor-group-inset-block {
    margin-top: -75px;
    z-index: 1;
  }

  .the-tabor-group-inset-block-first {
    margin-top: -75px;
  }

  /* START - Rules created for image-background-inset-text-block partial */
}

/* Large devices (desktops, 992px and up) */
@media (min-width: 992px) {
  .navbar-nav .dropdown-menu {
    border-color: #708472;
    border-radius: 0px;
    width: -webkit-fill-available;
  }

  div.spring-circ::after,
  div.summer-circ::after,
  div.autumn-circ::after,
  div.winter-circ::after,
  div.house-circ::after,
  div.gardens-circ::after,
  div.multi-cultural-circ::after {
    margin-top: 110px;
  }

  div#swiper_int.swiper,
  div#swiper_int_new_mobile.swiper {
    margin-bottom: inherit !important;
  }

  .the-tabor-group-main-header-image-sizing {
    max-height: 500px;
  }

  .navbar-nav {
    -webkit-box-align: center !important;
    -ms-flex-align: center !important;
    align-items: center !important;
    -ms-flex-pack: distribute !important;
    justify-content: space-around !important;
    width: 100% !important;
  }

  .navbar-nav a {
    font-weight: 600;
    font-size: 0.8rem;
    color: #708472 !important;
  }

  .nav-item:hover {
    background-color: #be9f56 !important;
  }
}

/* X-Large devices (large desktops, 1200px and up) */
@media (min-width: 1200px) {}

/* XX-Large devices (larger desktops, 1400px and up) */
@media (min-width: 1400px) {}

.w-20 {
  width: 20% !important;
}

a.lavender-hover {
  color: #ffffff !important;
}

a.lavender-hover.the-tabor-group-gold-button-text {
  color: #be9f56 !important;
}

a:hover.lavender-hover {
  color: white !important;
  background-color: rgba(190, 159, 86, 1);
}

.the-tabor-group-form input[type='submit']:hover,
a.the-tabor-group-gold-button-fill:hover {
  color: #666 !important;
  background-color: white;
}

.invalid-feedback {
  font-size: 0.85rem !important;
}

.sonas-form div a {
  display: none;
}

.sonas-form select {
  font-size: 0.6em;
  font-weight: 300;
}

.ttg-t-rot {
  display: inline-block;
  filter: progid: DXImageTransform.Microsoft.BasicImage(rotation=3);
  -webkit-transform: rotate(270deg);
  transform: rotate(270deg);
}

.the-tabor-group-child-video-resizer div {
  width: 100%;
  height: 100%;
}

.mb-4 {
  margin-bottom: 3rem !important;
}

.mb-5 {
  margin-bottom: 4.5rem !important;
}

.the-tabor-group-script-font-2024 {
  font-family: "Licorice", cursive;
  font-weight: 400;
  font-style: normal;
}

.the-tabor-group-script-rotate-2024 {
  -webkit-transform: rotate(-1.5deg);
  transform: rotate(-1.5deg);
}

div#swiper_int.swiper,
div#swiper_int_new_mobile.swiper {
  overflow-y: visible;
  overflow-x: clip;
  margin-bottom: 4.5rem !important;
}

.swiper-pagination {
  bottom: -30px !important;
}

.ttg-murder-mystery-a {
  font-family: "Lacquer", system-ui;
  font-weight: 400;
  font-style: normal;
  color: rgb(255, 22, 22);
}

.ttg-murder-mystery-b {
  font-family: "Creepster", system-ui;
  font-weight: 400;
  font-style: normal;
}

.ttg-murder-mystery-c {
  font-family: "Barlow Condensed", sans-serif;
  font-weight: 500;
  font-style: normal;
}

.ttg-murder-mystery-d {
  font-family: "Barlow Condensed", sans-serif;
  font-weight: 700;
  font-style: normal;
}

.ttg-murder-mystery-col-d-red {
  color: darkred;
}

#swiper_fs.swiper div.swiper-pagination-bullets {
  bottom: 0px !important;
}

#swiper_fs.swiper {
  height: 105% !important;
}

.ttg-landing-page-bigger-font {
  font-size: 120%;
}




.mb-md-0 {
  margin-bottom: 0px !important;
}

.bg-the-tabor-group-fss-bg {
  background-color: #e0d8d0;
}

.navbar-brand {
  position: relative;
  /* background: url(../images/logo.png); */
  width: 170px;
  left: 15px;
  background-size: contain;
  z-index: 20;
}

.image-overlay-fss {
  position: relative;
  display: block;
}

.image-overlay-fss::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: #000;
  opacity: 0.4;
  z-index: 1;
  -webkit-transition: opacity 0.3s ease-in-out;
  transition: opacity 0.3s ease-in-out;
}

.image-overlay-fss:hover::before {
  opacity: 0;
}


/* 2026 */
/* FSS Navigation Brand Colors */
.fss-nav-blue {
  color: #47697e !important;
}

.fss-nav-gold-bg {
  background-color: #b59859 !important;
}

.fss-nav-green-bg {
  background-color: #688171 !important;
}

/* 2026 Navigation Branding Refined */
.navbar-nav .nav-link,
.navbar-nav .nav-item {
  font-family: 'Montserrat', sans-serif !important;
  font-weight: 500 !important;
  color: #47697e !important;
  /* Desktop Blue */
  -webkit-transition: none !important;
  transition: none !important;
  border-radius: 0 !important;
}

/* Hover/Active State: Gold Background, White Text, White Underline */
.navbar-nav .nav-link:hover,
.navbar-nav .nav-link.active,
.navbar-nav .show>.nav-link {
  background-color: #b59859 !important;
  color: #FFFFFF !important;
  /* White text on Gold */
  border-bottom: 0px solid #FFFFFF !important;
  /* High-contrast underline */
}

/* Sub-menu text always white */
.navbar-nav .dropdown-menu {
  background-color: #688171 !important;
  /* Fennes Green */
}

.navbar-nav .dropdown-item {
  font-family: 'Montserrat', sans-serif !important;
  color: #FFFFFF !important;
  padding: 1.5rem 3rem !important;
  /* RESTORED: CTA Sizing */
  font-weight: 500 !important;
  text-align: center !important;
  /* ADDED: Centers text on desktop */
}

/* Remove hover background for dropdown items as requested */
.navbar-nav .dropdown-item:hover {
  background-color: transparent !important;
  color: #FFFFFF !important;
}

/* Align nav items to the right */
@media (min-width: 992px) {
  .navbar-nav.ms-auto {
    -webkit-box-pack: end !important;
    -ms-flex-pack: end !important;
    justify-content: flex-end !important;
    width: auto !important;
    /* Allow it to shrink to content size */
  }

  /* Set spacing between items equal to roughly one nav item width (approx 120px - 150px) */
  /* Or use em units to keep it relative to the Montserrat font size */
  .fss-nav-container .nav-item {
    margin-left: 2rem;
    /* Adjust this value to get the exact look of one 'item width' gap */
  }

  /* Ensure the first item doesn't have a left margin to stay flush with the right edge */
  .fss-nav-container .nav-item:first-child {
    margin-left: 0;
  }



  /* Ensure the navigation container only takes up as much space as needed */
  .navbar-collapse {
    -webkit-box-flex: 0 !important;
    -ms-flex-positive: 0 !important;
    flex-grow: 0 !important;
  }

  /* Maintain the consistent spacing between FSS navigation items */
  .navbar-nav .nav-item {
    margin-left: 1.5rem !important;
    /* Keep the 'item-width' gap logic */
  }

  .navbar-nav .nav-item:first-child {
    margin-left: 0 !important;
  }

  /* Ensure the dropdown menu doesn't push the page width out on the right */
  .dropdown-menu-end {
    right: 0;
    left: auto;
  }

  /* Enable the container to center its children */
  .navbar-collapse.justify-content-center {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
    -webkit-box-pack: center !important;
    -ms-flex-pack: center !important;
    justify-content: center !important;
    -ms-flex-preferred-size: auto;
    flex-basis: auto;
  }
}

@media (min-width: 992px) {
  .navbar-nav .nav-item.dropdown:hover .dropdown-menu {
    display: block;
    margin-top: 0;
  }
}

/* Container for all strip items */
.image-strip-item {
  position: relative;
  overflow: hidden;
  aspect-ratio: 1 / 1;
  display: block;
}

/* 60% Opacity Overlay */
.image-strip-item::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  /* background-color: #e0d8d0; */
  opacity: 1.0;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  z-index: 1;
}

/* Remove overlay on hover */
.image-strip-item:hover::after {
  opacity: 0;
}

/* Text Overlay Styling */
.image-strip-text {
  position: absolute;
  z-index: 2;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  color: white;
  font-weight: bold;
  font-family: 'Montserrat', sans-serif;
  text-align: center;
  -webkit-transition: color 0.3s ease;
  transition: color 0.3s ease;
  pointer-events: none;
}

/* Change text to Fennes Green on hover */
.image-strip-item:hover .image-strip-text {
  color: white !important;
}

@media (min-width: 768px) {
  .border-md-end {
    border-right: 1px solid #708472 !important;
  }
}

@media (max-width: 767px) {

  /* Targets the columns with (IMG) styles but no text content */
  .col-12[style*="background-image"] {
    min-height: 250px;
  }
}


/* only the mobile menu */
@media (max-width: 991.98px) {

  /* 1. Mobile-only divider between Junior and Joint Lessons */
  .border-fss-mobile {
    border-bottom: 1px solid #708472 !important;
  }

  /* Fix 1: Push menu down to clear the logo */
  .navbar-collapse {
    margin-top: 70px;
  }

  .navbar-nav .nav-item {
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
    /* Subtle white divider */
    padding-bottom: 8px;
    margin-bottom: 8px;
  }

  /* Fix 2: Change Blue text to White for contrast */
  .navbar-nav a,
  .navbar-nav .nav-link {
    font-weight: 500;
    font-size: 0.9rem;
    color: #FFFFFF !important;
  }

  /* Hover/Active State: Gold Background, White Text, White Underline */
  .navbar-nav .nav-link:hover,
  .navbar-nav .nav-link.active,
  .navbar-nav .show>.nav-link {
    border-bottom: 3px solid #FFFFFF !important;
    /* High-contrast underline */
  }

  /* 2. Fix MEMBERSHIP white line: Use an inset shadow or thick border */
  /* Because the link is h-100, a standard border-bottom is often cut off */
  .navbar-nav .nav-link.active {
    border-bottom: 4px solid #FFFFFF !important;
    -webkit-box-shadow: inset 0 -4px 0 #FFFFFF;
    box-shadow: inset 0 -4px 0 #FFFFFF;
    /* Ensures the line is visible inside the gold box */
    padding-bottom: 10px !important;
  }

  /* 3. Clean up "Ugly" Sub-menus (Practice, Lessons, Events) */
  .navbar-nav .dropdown-menu {
    background-color: rgba(0, 0, 0, 0.15) !important;
    /* Darker green for depth */
    padding-top: 10px !important;
    padding-bottom: 10px !important;
    margin-top: 0 !important;
  }

  .navbar-nav .dropdown-item {
    padding: 12px 0 !important;
    /* Better vertical spacing for thumb-tapping */
    font-size: 0.9rem !important;
    text-transform: uppercase;
    letter-spacing: 1px;
  }

  .navbar {
    background-color: #708472 !important;
  }

  button.navbar-toggler {
    background-color: #FFF !important;
  }

  .fss-nav-container .nav-item {
    margin-left: 0 !important;
    margin-bottom: 5px;
  }

  /* 1. Force image to full visibility */
  .image-strip-item img {
    opacity: 1 !important;
    -webkit-filter: none !important;
            filter: none !important;
    -webkit-transform: none !important;
            transform: none !important;
  }

  /* 2. Hide the dark overlay layer if it's a separate div */
  .image-strip-item .overlay,
  .image-strip-item::after {
    background: transparent !important;
    display: none !important;
  }

  /* 3. Ensure text is clearly visible since there's no hover reveal */
  .image-strip-text {
    opacity: 1 !important;
    color: #FFFFFF !important;
    /* Or your preferred static mobile color */
    background: rgba(0, 0, 0, 0.3);
    /* Optional: slight backing for legibility */
  }
}


/* Ensure the divider stays hidden on desktop */
@media (min-width: 992px) {
  .border-fss-mobile {
    border-bottom: 0 !important;
  }
}

/* --- Typography Utilities --- */
.fss-achievements-list {
  font-size: 0.70rem;
  /* Approx 20% smaller than standard body copy */
  line-height: 1.5;
  display: block;
  /* Ensures it sits on its own lines */
  margin-top: 1rem;
  margin-bottom: 1rem;
}

/* Custom Order Utilities for the 10-image grid */
.order-6 { -webkit-box-ordinal-group: 7 !important; -ms-flex-order: 6 !important; order: 6 !important; }
.order-7 { -webkit-box-ordinal-group: 8 !important; -ms-flex-order: 7 !important; order: 7 !important; }
.order-8 { -webkit-box-ordinal-group: 9 !important; -ms-flex-order: 8 !important; order: 8 !important; }
.order-9 { -webkit-box-ordinal-group: 10 !important; -ms-flex-order: 9 !important; order: 9 !important; }
.order-10 { -webkit-box-ordinal-group: 11 !important; -ms-flex-order: 10 !important; order: 10 !important; }

/* Reset to natural order on Desktop */
@media (min-width: 992px) {
    .order-md-1 { -webkit-box-ordinal-group: 2 !important; -ms-flex-order: 1 !important; order: 1 !important; }
    .order-md-2 { -webkit-box-ordinal-group: 3 !important; -ms-flex-order: 2 !important; order: 2 !important; }
    .order-md-3 { -webkit-box-ordinal-group: 4 !important; -ms-flex-order: 3 !important; order: 3 !important; }
    .order-md-4 { -webkit-box-ordinal-group: 5 !important; -ms-flex-order: 4 !important; order: 4 !important; }
    .order-md-5 { -webkit-box-ordinal-group: 6 !important; -ms-flex-order: 5 !important; order: 5 !important; }
    .order-md-6 { -webkit-box-ordinal-group: 7 !important; -ms-flex-order: 6 !important; order: 6 !important; }
    .order-md-7 { -webkit-box-ordinal-group: 8 !important; -ms-flex-order: 7 !important; order: 7 !important; }
    .order-md-8 { -webkit-box-ordinal-group: 9 !important; -ms-flex-order: 8 !important; order: 8 !important; }
    .order-md-9 { -webkit-box-ordinal-group: 10 !important; -ms-flex-order: 9 !important; order: 9 !important; }
    .order-md-10 { -webkit-box-ordinal-group: 11 !important; -ms-flex-order: 10 !important; order: 10 !important; }
}

/* Only show icons clearly on hover to keep the UI clean */
.cms-editable-wrapper {
    outline: 1px dashed transparent;
    -webkit-transition: outline 0.2s ease;
    transition: outline 0.2s ease;
}

.cms-editable-wrapper:hover {
    outline: 1px dashed #0d6efd; /* Light blue dash to show what you're editing */
}

.cms-edit-button {
    opacity: 0.3;
    -webkit-transition: opacity 0.2s ease;
    transition: opacity 0.2s ease;
}

.cms-editable-wrapper:hover .cms-edit-button {
    opacity: 1;
}

/* Updated "Ghost Mode" Logic */
.cms-hidden-debug.d-none,
.cms-hidden-debug .d-none {
    display: block !important; /* Force visibility for container OR children */
    opacity: 0.5 !important;
    outline: 2px dashed #ffc107 !important;
    position: relative;
    -webkit-filter: grayscale(100%);
            filter: grayscale(100%);
}
.cms-hidden-debug::before {
    content: "HIDDEN LAYER";
    position: absolute;
    top: 0; left: 0;
    background: #ffc107;
    color: #000;
    font-size: 10px;
    font-weight: bold;
    padding: 2px 5px;
    z-index: 1000;
}

/* Force a height for empty editable rows so we can see the background image */
.cms-row-container {
    min-height: 150px; /* Adjust to your liking */
    outline: 1px dashed rgba(13, 110, 253, 0.1);
}

/* Style for the Layer Labels */
.clickable { cursor: pointer; }
.hover-opacity-100:hover { opacity: 1 !important; }

.tiny-label {
    font-size: 9px;
    font-weight: 800;
    color: #666;
    text-transform: uppercase;
    display: block;
    margin-bottom: 2px;
}
.btn-xs {
    padding: 1px 5px;
    font-size: 10px;
}

div.dmx-notify-message {color: #FFF;}

/* Total suppression for deleted items */
.cms-deleted {
    display: none !important;
}

/* Ensure empty rows stay selectable in the editor */
.row:empty {
    min-height: 50px;
    background-color: rgba(0,0,0,0.05);
    border: 1px dashed #ccc;
}

/* --- Fix for ultra-narrow screens (e.g., Galaxy Z Fold Cover) --- */
@media (max-width: 360px) {
    /* 1. Limit the logo container width so it never pushes the button away */
    .navbar-brand {
        max-width: 65% !important; 
    }
    
    /* 2. Ensure the image scales fluidly inside that limit */
    .navbar-brand img {
        max-width: 100% !important;
        height: auto !important;
    }
    
    /* 3. Reduce button padding slightly on tiny screens */
    .navbar-toggler {
        padding: 4px 8px !important;
    }
}

/* --- Remove the harsh black outline when the mobile menu is tapped --- */
.navbar-toggler:focus,
.navbar-toggler:active {
    -webkit-box-shadow: none !important;
            box-shadow: none !important;
    outline: none !important;
}