.gform-theme--foundation .gfield.title-secondary {
    font-family: "BeautiqueDisplay";
    font-size: 2.2rem;
    line-height: 1.2727272727;
    font-weight: 500;
    letter-spacing: 0.5px;
    color: #192350;
}

.section-our-benefits .benefit-card .benefit-image img {
    height: 46rem !important;
}

.section-view-our-rooms .room-card .room-meta .meta-item {
    padding: 0 0.8rem;
}

.header.fixed .separator-v.d-none {
    display: none !important;
}

.header .header-left {
    flex-shrink: 0;
}

.offcanvas-top .offcanvas-body .menu-outer-wrapper .sub-menu-panel .sub-menu-group .sub-nav .sub-nav-item .sub-nav-link {
    text-decoration: unset;
}

.section-membership-list-page .btn-group {
    flex-wrap: wrap;
}

.section-promotion-single .description h1 {
    font-family: "BeautiqueDisplay";
    font-size: 2.2rem;
    line-height: 1.2727272727;
    font-weight: 500;
    letter-spacing: 0.5px;
}

.header-main.logo-center .header-center {
    margin-left: 30%;
}

.header .header-right {
    flex-shrink: 0;
}

.header.fixed .header-right.d-none {
    display: none !important;
}

.checkbox-label legend {
    display: none !important;
}

.section-boat-dealer .boat-dealer-card .dealer-contact .contact-item.mail svg {
    width: 2.4rem;
    height: 2.4rem;
    margin-right: 0;
    margin-left: -0.2rem;
}

.modal-search {
    position: fixed;
    z-index: 2000;
}

.pb-80 {
    padding-bottom: 8rem;
}

.accordion-list .accordion-item.active .accordion-header .header-left .item-label {
    font-size: 2.2rem;
}

.wedding-package-detail .room-description p {
    font-size: unset;
    color: #00071B;
}

.gap-12 {
    gap: 1.2rem;
}

.gap-20 {
    gap: 2rem;
}

.section-berthing-rates .right-accordion-list .accordion-item .accordion-content ul:last-child {
    margin-bottom: 0;
}

.section-berthing-rates .right-accordion-list .accordion-item .accordion-content {
    padding-bottom: 0 !important;
}

.section-top.is-admin-trackable,
.section-tab.is-admin-trackable {
    position: sticky !important;
}

.header {
    z-index: 3000;
}

.gform-theme--framework .gform-field-label--type-sub:where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)) {
    color: #112337 !important;
}

a {
    color: #0081C6;
    text-decoration: underline;
}

.header .sub-title-label {
    font-weight: 500;
}

.header.fixed .header-center,
.header.fixed .header-right,
.header.fixed .search-toggle,
.header.fixed .separator-v {
    display: flex !important;
}

.header.fixed .header-left {
    width: fit-content;
}

.section-packages .package-card .package-card-overlay-image {
    background: linear-gradient(180deg, rgba(0, 0, 0, 0) 30%, rgba(0, 0, 0, 0.6) 100%);
}

.section-view-our-rooms .list-room {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    grid-template-rows: 1fr;
    grid-column-gap: 2.4rem;
    grid-row-gap: 4rem;
}

.header .header-center img {
    transition: 0.3s all ease-in-out;
}

.header.fixed .header-center img {
    transform: scale(.8);
    transition: 0.3s all ease-in-out;
}

.header.fixed .header-main {
    padding: 0.9rem 0;
}

.header {
    position: sticky;
    top: 0;
}

.header.fixed {
    animation: none;
    transition: 0.3s all ease-in-out;
}

.btn-wrap {
    transition: 0.3s all ease-in-out;
}

.section-our-offerings .offering-card:hover .offering-image img {
    transform: unset;
}

.section-our-offerings .offering-card:hover .btn-wrap {
    color: #D9A86C;
}

.section-our-offerings .offering-card:hover .btn-wrap::after {
    filter: unset;
}

.section-new-updates .update-card .update-image:hover img {
    transform: unset;
}

.modal-search .modal-header i {
    color: #000000;
}

.modal-search .modal-header {
    padding: 3rem 5rem;
    position: absolute;
    top: 8rem;
    right: 0;
    z-index: 9999;
}

.section-packages .packages-grid {
    grid-row-gap: 5rem;
}

.section-packages.bg-FDF9F3 {
    background-color: #FFFFFF !important;
}

.description h1 li:not(:last-child),
.description .h1 li:not(:last-child),
.description h2 li:not(:last-child),
.description .h2 li:not(:last-child),
.description h3 li:not(:last-child),
.description .h3 li:not(:last-child),
.description h4 li:not(:last-child),
.description .h4 li:not(:last-child),
.description h5 li:not(:last-child),
.description .h5 li:not(:last-child),
.description ul li:not(:last-child) {
    margin-bottom: 1.5rem;
}

.room-detail .room-gallery-swiper .swiper-slide {
    height: auto;
}

.room-detail .room-gallery-swiper .swiper-slide img {
    height: 65rem;
    object-fit: cover;
}

.modal-room-detail #room-detail-content {
    padding-top: 12rem;
}

.modal-room-detail .btn-close-custom {
    top: 11rem
}

@media (max-width:991px) {
    .section-our-benefits .benefit-card .benefit-image img {
        height: 25rem !important;
    }

    .header-main.logo-center .header-center {
        margin-left: 19%;
    }

    .modal-room-detail .btn-close-custom {
        top: 9rem;
    }

    .section-wedding-venues .venue-item .venue-meta {
        font-size: 16px;
    }

    .pb-80 {
        padding-bottom: 5rem;
    }

    .header.fixed .separator-v {
        display: none !important;
    }

    .section-packages .packages-grid {
        grid-row-gap: 3rem;
    }

    .section-view-our-rooms .list-room {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        grid-template-rows: 1fr;
        grid-column-gap: 2.4rem;
        grid-row-gap: 4rem;
    }

    .section-view-our-rooms .room-card .room-image img {
        height: 27rem;
    }

    .section-hotel-offers .offer-date.text-14 {
        font-size: 15px !important
    }

    .section-over-dining .dining-card .btn-more-info {
        font-size: 15px;
        color: #00071B !important;
    }
}

@media (max-width:575px) {
    .fs-14 {
        font-size: 15px !important;
    }

    .section-promotion-single .description h1 {
        font-size: 22px;
    }

    .header-main.logo-center .header-center {
        margin-left: 3rem;
    }

    .section-our-benefits .benefit-title.title-secondary {
        font-size: 13px !important;
    }

    .room-detail .room-gallery-swiper .swiper-slide img,
    section.section-hero-banner .bg {
        height: 100%;
    }

    section.section-hero-banner .hero-banner {
        height: auto;
        min-height: 55rem;
    }

    .header .btn-member-login {
        width: 3rem;
    }

    .modal-search .modal-header {
        position: absolute;
        padding: 4rem;
        top: 8rem;
    }

    .section-view-our-rooms .list-room {
        display: grid;
        grid-template-columns: repeat(1, 1fr);
        grid-template-rows: 1fr;
        grid-column-gap: 2.4rem;
        grid-row-gap: 4rem;
    }

    .section-view-our-rooms .room-title,
    .section-hotel-offers .offer-title {
        font-size: 22px;
    }

    .section-view-our-rooms .room-card .room-meta .meta-item {
        font-size: 15px;
    }

    .section-view-our-rooms .room-excerpt.text-16 {
        font-size: 15px;
    }
}

.room-amenities-wrap .amenity-section-title,
.amenity-group .amenity-section-title {
    padding-bottom: 2rem;
    border-bottom: 1px solid #EDEDED;
    margin-bottom: 2rem;
}

.room-amenities-wrap .row,
.amenity-group .row {
    margin: 0 auto;
    justify-content: center;
    border-bottom: 1px solid #EDEDED;
}

.room-amenities-wrap .row:last-child,
.amenity-group .row:last-child {
    border-bottom: 0;
}

.room-amenities-wrap .row:first-child,
.amenity-group .row:first-child {
    padding-top: 0;
}

.room-amenities-wrap .row .col,
.amenity-group .row .col {
    margin: 2rem 0;
    border-right: 1px solid #EDEDED;
    padding: 0 2.4rem;
}

.room-amenities-wrap .row .col:first-child,
.amenity-group .row .col:first-child {
    padding-left: 0;
}

.section-marina-overview .content {
    font-family: "Satoshi";
}

.swiper-button-disabled {
    opacity: 0.3;
}

.section-our-benefits .swiper-wrapper {
    transition-timing-function: linear;
}

.mc4wp-response {
    margin-top: 2rem;
}

@media (max-width: 991.98px) {
    .section-weather-component .weather-main-bar .metric-item {
        padding: 0;
    }

    .section-berthing-rates .accordion-list .item-label,
    .section-fact-sheet .marquee-swiper .fact-sheet-card .fact-sheet-overlay {
        font-size: 2.2rem;
    }

    .section-list-accordion .accordion-item .accordion-button,
    .section-over-dining .dining-card .title-item,
    .description-table table thead td,
    .description-table table thead th,
    .accordion-list table thead td,
    .accordion-list table thead th,
    .description-table table tbody th,
    .description-table table tbody td,
    .accordion-list table tbody th,
    .accordion-list table tbody td,
    .section-fact-sheet .fact-sheet-features-grid .feature-item .feature-label {
        font-size: 15px;
    }

    .room-amenities-wrap .row .col:first-child,
    .amenity-group .row .col:first-child {
        padding-left: 2.4rem;
    }
}

.room-amenities-wrap .row .col:last-child,
.amenity-group .row .col:last-child {
    border-right: 0;
}

.room-amenities-wrap .amenity-item,
.amenity-group .amenity-item {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    text-align: left;
    height: 100%;
}

.room-amenities-wrap .amenity-item .amenity-icon,
.amenity-group .amenity-item .amenity-icon {
    width: 4rem;
    height: 4rem;
    display: flex;
    align-items: center;
}

.room-amenities-wrap .amenity-item .amenity-icon img,
.amenity-group .amenity-item .amenity-icon img {
    max-height: 100%;
    width: auto;
}

.room-amenities-wrap .amenity-item .amenity-label,
.amenity-group .amenity-item .amenity-label {
    font-size: 1.6rem;
    line-height: 1.375;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.032rem;
    color: #00071B;
}

.room-amenities-wrap .amenity-item .amenity-label p,
.amenity-group .amenity-item .amenity-label p {
    margin-bottom: 0;
}

@media (max-width: 575.98px) {
    .title-biggest {
        font-size: 5.5rem;
    }

    .title-item-bigger {
        font-size: 2rem !important;
    }

    .description,
    body {
        font-size: 15px !important;
    }

    .section-wedding-venues .venue-item .venue-content {
        right: unset;
        left: 0.4rem;
    }

    .footer-contact-text {
        font-size: 13px;
    }

    .section-new-updates .update-card .update-image img {
        aspect-ratio: 1 / 1;
    }

    .section-new-updates .update-card .update-content {
        text-align: center;
    }

    .section-fact-sheet .marquee-swiper .fact-sheet-card .fact-sheet-image,
    .section-fact-sheet .marquee-swiper .fact-sheet-card {
        width: 100%;
    }

    .section-fact-sheet .marquee-swiper .fact-sheet-card {
        height: 30rem !important;
    }

    .section-fact-sheet .marquee-swiper .fact-sheet-card img {
        width: 100% !important;
        object-fit: cover;
    }

    .room-amenities-wrap .row .col:nth-child(odd),
    .amenity-group .row .col:nth-child(odd) {
        border-left: 1px solid #EDEDED;
    }

    .room-amenities-wrap .row .col,
    .amenity-group .row .col:last-child {
        border-right: 1px solid #EDEDED;
    }

    .room-amenities-wrap .row .col,
    .amenity-group .row .col {
        padding: 2rem 1.5rem;
        border-top: 1px solid #EDEDED;
        border-bottom: 1px solid #EDEDED;
        margin: 0;
    }

    .section-weather-component .col-6 {
        height: auto;
    }

    .section-boat-dealer .boat-dealer-card .dealer-location.text-14 {
        font-size: 15px !important;
    }

    .section-boat-dealer .dealer-content.flex-grow-1 {
        flex-grow: unset !important;
    }
}

.description ol ol,
.description ul ol {
    list-style-type: lower-alpha !important;
}

.section-our-legacy .legacy-grid .legacy-item .description p {
    margin-bottom: 1.2rem;
}

.section-our-legacy .legacy-grid .legacy-item .description p:last-child {
    margin-bottom: 0;
}

.section-promotion-related .list-post {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-template-rows: 1fr;
    grid-column-gap: 2.4rem;
    grid-row-gap: 3rem;
}

.section-promotions-offers {
    background-color: transparent;
}

.section-promotion-single .description img {
    height: 67rem;
    margin-top: 2rem;
}

.section-promotion-single .promotion-hero-image img {
    height: 67rem;
}

.section-promotion-single .promotion-gallery-swiper .swiper-slide img {
    height: 67rem;
    object-fit: cover;
}

@media(max-width:991px) {
    .section-promotion-related .list-post {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        grid-template-rows: 1fr;
        grid-column-gap: 2.4rem;
        grid-row-gap: 3rem;
    }
}

@media(max-width:575px) {
    .section-partners .swiper-button-next {
        right: -1rem;
    }

    .section-partners .swiper-button-prev {
        left: -1rem;
    }

    .section-subscribe .subscribe-form .label.text-14 {
        font-size: 14px !important;
    }

    .section-promotion-related .list-post {
        display: grid;
        grid-template-columns: repeat(1, 1fr);
        grid-template-rows: 1fr;
        grid-column-gap: 2.4rem;
        grid-row-gap: 3rem;
    }

    .section-promotion-single .promotion-gallery-swiper .swiper-slide img,
    .section-promotion-single .description img {
        height: 35rem;
    }
}

/*--------------------------------------------------------------
# Event Detail
--------------------------------------------------------------*/
.section-event-detail .description-table table {
    border: 1px solid #CED4DA;
    border-collapse: collapse;
}
.section-event-detail .description-table thead th {
    background-color: #E9ECEF;
    color: #192350;
    font-weight: 700;
    font-size: 1.4rem;
    padding: 1.5rem;
    border: 1px solid #CED4DA;
}
.section-event-detail .description-table tbody td {
    padding: 2rem 1.5rem;
    border: 1px solid #CED4DA;
    font-size: 1.6rem;
    color: #192350;
    vertical-align: middle;
}
.section-event-detail .enquiry-content a {
    color: #D9A86C;
    text-decoration: underline;
}
@media (max-width: 767.98px) {
    .section-event-detail .description-table {
        overflow-x: auto;
    }
    .section-event-detail .description-table table {
        min-width: 600px;
    }
}

/* Event Content Styles */
.event-main-content table {
    width: 100%;
    margin-bottom: 3rem;
    border: 1px solid #CED4DA;
    border-collapse: collapse;
}
.event-main-content table thead th,
.event-main-content table thead td {
    background-color: #E9ECEF;
    color: #192350;
    font-weight: 700;
    font-size: 1.4rem;
    padding: 1.5rem;
    border: 1px solid #CED4DA;
    text-align: center;
}
.event-main-content table tbody td {
    padding: 2rem 1.5rem;
    border: 1px solid #CED4DA;
    font-size: 1.6rem;
    color: #192350;
    vertical-align: middle;
    text-align: center;
}
.event-main-content .enquiry-info,
.event-main-content p:last-child {
    font-family: 'BeautiqueDisplay';
    font-size: 2.4rem;
    line-height: 1.3;
}
.event-main-content a {
    color: #D9A86C;
    text-decoration: underline;
}

/* Event Archive / Calendar */
.btn-event-filter {
    padding: 6px 15px;
    border: 1px solid #CED4DA;
    color: #192350;
    text-decoration: none;
    font-size: 14px;
    transition: all 0.3s ease;
    min-width: 100px;
    text-align: center;
}
.btn-event-filter:hover, .btn-event-filter.active {
    background-color: #F8F9FA;
    border-color: #192350;
}
.calendar-grid-wrapper {
    border-left: 1px solid #EDEDED;
}
.cal-header {
    flex: 1;
    text-align: center;
    padding: 12px 0;
    font-weight: 700;
    font-size: 13px;
    color: #192350;
    border-right: 1px solid #EDEDED;
}
.cal-day {
    flex: 1;
    min-height: 140px;
    padding: 10px 5px;
    position: relative;
}
.cal-day.empty {
    background-color: #E9ECEF;
    opacity: 0.5;
}
.day-number {
    font-weight: 700;
    font-size: 13px;
    color: #192350;
    width: 24px;
    height: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 5px;
}
.day-number.active {
    background-color: #192350;
    color: #fff;
    border-radius: 50%;
}
.event-item-link {
    display: block;
    font-size: 14px;
    color: #192350;
    text-decoration: none;
    padding: 8px 6px;
    margin-bottom: 4px;
    line-height: 1.3;
    white-space: normal;
    background: #FFF9F3;
    transition: background 0.2s;
    font-weight: 500;
}
.event-item-link:hover {
    background-color: #FDF1E5;
}
.nav-arrow {
    color: #192350;
    font-size: 16px;
    text-decoration: none;
}
.calendar-row {
    width: 100%;
}
@media (max-width: 991.98px) {
    .cal-day {
        min-height: 100px;
    }
    .cal-header {
        font-size: 11px;
    }
    .event-item-link {
        font-size: 12px;
    }
}

/* Event Archive / Calendar */
.section-event-archive .cal-day {
  padding-left: 0 !important;
  padding-right: 0 !important;
}
.section-event-archive .event-filter-bar .d-flex {
  gap: 2rem !important;
}
.section-event-archive .btn-event-filter {
  display: block;
  background: #fff;
  padding: 1rem 2rem;
  text-decoration: none;
  color: #192350;
  font-size: 1.8rem;
  font-weight: 500;
  text-align: center;
  border: 1px solid #EDEDED;
  transition: all 0.3s ease;
}
@media (max-width: 575.98px) {
  .section-event-archive .btn-event-filter {
    font-size: 16px;
  }
}
.section-event-archive .btn-event-filter:hover, .section-event-archive .btn-event-filter.active {
  background-color: #FFF9F3 !important;
  border: 1px solid transparent;
  border-top: 0.4rem solid var(--cat-color);
  outline: none;
  text-decoration: none;
  color: #192350;
}
.section-event-archive .btn-event-filter:focus, .section-event-archive .btn-event-filter:focus-visible, .section-event-archive .btn-event-filter:active {
  outline: none !important;
  box-shadow: none !important;
  text-decoration: none;
}
.section-event-archive .calendar-grid-wrapper {
  border-left: 1px solid #EDEDED;
}
@media (max-width: 575.98px) {
  .section-event-archive .calendar-grid-wrapper {
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    border-right: 1px solid #EDEDED;
  }
}
.section-event-archive .calendar-header-row,
.section-event-archive .calendar-header-row.d-flex {
  display: grid !important;
  grid-template-columns: repeat(7, 1fr) !important;
}
@media (max-width: 575.98px) {
  .section-event-archive .calendar-header-row,
.section-event-archive .calendar-header-row.d-flex {
    min-width: 120rem;
  }
}
.section-event-archive .calendar-grid {
  display: grid;
  grid-template-columns: repeat(7, 1fr);
  grid-auto-rows: 1fr;
  min-height: 70rem;
}
@media (max-width: 575.98px) {
  .section-event-archive .calendar-grid {
    min-width: 120rem;
    min-height: 80rem;
  }
}
.section-event-archive .cal-header {
  text-align: center;
  padding: 1.2rem 0;
  font-weight: 700;
  font-size: 1.6rem;
  color: #192350;
  border-right: 1px solid #EDEDED;
  border-bottom: 1px solid #EDEDED;
}
.section-event-archive .cal-day {
  min-height: 14rem;
  padding: 1rem 0.5rem;
  position: relative;
  border-right: 1px solid #EDEDED;
  border-bottom: 1px solid #EDEDED;
  display: flex;
  flex-direction: column;
}
.section-event-archive .cal-day.empty {
  background-color: #E9ECEF;
  opacity: 0.5;
}
.section-event-archive .day-number {
  font-weight: 700;
  font-size: 1.6rem;
  color: #192350;
  width: 2.4rem;
  height: 2.4rem;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 0.5rem;
}
.section-event-archive .day-number.active {
  background-color: #192350;
  color: #fff;
  border-radius: 50%;
}
.section-event-archive .event-item-link {
  display: block;
  font-size: 1.6rem;
  color: #192350;
  text-decoration: none;
  padding: 0.8rem 0.6rem;
  margin-bottom: 0.4rem;
  line-height: 1.3;
  white-space: normal;
  background: #FFF9F3 !important;
  transition: all ease-in-out 0.2s;
  font-weight: 500;
}
.section-event-archive .event-item-link:hover {
  background-color: #FDF1E5;
}
.section-event-archive .nav-arrow {
  color: #192350;
  font-size: 2rem;
  text-decoration: none;
}
.section-event-archive .calendar-row {
  width: 100%;
}
@media (max-width: 991.98px) {
  .section-event-archive .cal-day {
    min-height: 10rem;
  }
  .section-event-archive .cal-header {
    font-size: 1.6rem;
  }
  .section-event-archive .event-item-link {
    font-size: 1.6rem;
  }
}

.modal-room-detail #wedding-detail-content {
  padding: 12rem 2% 8rem;
}

 