/** Shopify CDN: Minification failed

Line 54:0 Unexpected "="

**/
* {
  /* outline: 1px solid red; */
}

/* ========================/* Article excerpt color styling */
.article-item__excerpt {
  color: #67676b !important;
  font-size: 0.9rem;
  line-height: 1.4;
  margin-top: 0.5rem;
}

.article-item__excerpt p {
  color: #67676b !important;
}

/* Article item header styling - title and meta above image */
.article-item__header {
  padding: 1rem 1rem 0.5rem 1rem;
}

.article-item__header .article-item__title {
  margin-bottom: 0.5rem;
}

.article-item__header .article-item__meta {
  margin-bottom: 0.75rem;
}

.article-item__header .article-item__tags {
  margin-bottom: 0.5rem;
}

/* Ensure image has proper spacing */
.article-item__image-wrapper {
  margin-bottom: 1rem;
}

/* Excerpt and button spacing adjustment */
.article-item__header .article-item__excerpt {
  margin-top: 1rem;
  margin-bottom: 1rem;
}

.article-item__header .article-item__read-button {
  margin-top: 0.5rem;
}

===============*/
/* RESPONSIVE TYPOGRAPHY SCALE */
/* ================================================== */

/* Base heading styles */
.heading-sm {
  font-size: 0.77rem;
}

.heading-base {
  font-size: 1rem;
}

.heading-md {
  font-size: 1.5rem;
}

.heading-lg {
  font-size: 2rem;
}

.heading-xl {
  font-size: 3rem;
}

.heading-2xl {
  font-size: 4rem;
}

.heading-3xl {
  font-size: 5rem;
}

/* Mobile responsive adjustments */
@media (max-width: 768px) {
  /* heading-sm, heading-base, heading-md stay the same */

  .heading-lg {
    font-size: 1.5rem;
    /* Down from 2rem */
  }

  .heading-xl {
    font-size: 2rem;
    /* Down from 3rem */
  }

  .heading-2xl {
    font-size: 2.5rem;
    /* Down from 4rem */
  }

  .heading-3xl {
    font-size: 3rem;
    /* Down from 5rem */
  }
}

/* ================================================== */
/* ARTICLE ITEM STYLING */
/* ================================================== */

/* Article excerpt color styling */
.article-item__excerpt {
  color: #67676b;
  font-size: 0.9rem;
  line-height: 1.4;
  margin-top: 0.5rem;
}

.article-item__title {
  color: #263765 !important;
  font-weight: 200 !important;
  font-family: 'Poppins', sans-serif !important;
}

/* Article page title styling - comprehensive selectors */
.article__heading,
h1.article__heading,
.main-article h1,
.main-article .article-title,
.article-title,
.main-article .title h1,
.main-article [class*="title"] h1,
.main-article [class*="heading"] {
  font-family: 'Poppins', sans-serif !important;
  font-weight: 200 !important;
  color: #263765 !important;
}

/* Article meta/date styling - comprehensive selectors */
.article__meta,
.article__date,
.main-article .article__meta,
.main-article .article__date,
.main-article .meta,
.main-article .date,
.main-article time,
.main-article [class*="meta"],
.main-article [class*="date"],
.article-meta,
.article-date {
  font-family: 'Poppins', sans-serif !important;
  font-weight: 600 !important;
  color: #212529 !important;
}

/* Article featured image - contain within content area like copy */
.article__image {
  max-width: var(--content-width) !important;
  margin: 0 auto !important;
  width: 100% !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.article__image-container {
  max-width: var(--content-width) !important;
  margin: 0 auto !important;
  width: 100% !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.article__image-inner {
  max-width: var(--content-width) !important;
  margin: 0 auto !important;
  width: 100% !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* Ensure the image itself respects the container limits */
.article__image img,
.article__image .image__img {
  width: 100% !important;
  height: auto !important;
  max-width: var(--content-width) !important;
  margin: 0 auto !important;
  display: block !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* Article content headings - light weight */
.main-article h1,
.main-article h2,
.main-article h3,
.main-article h4,
.main-article h5,
.main-article h6,
.article__content h1,
.article__content h2,
.article__content h3,
.article__content h4,
.article__content h5,
.article__content h6 {
  font-weight: 200 !important;
  font-family: 'Poppins', sans-serif !important;
}

/* Article body text - lighter weight and consistent grey color */
.main-article p,
.main-article div,
.main-article span,
.article__content p,
.article__content div,
.article__content span,
.article__text p,
.article__text div,
.article__text span {
  font-weight: 300 !important;
  color: #67676b !important;
  font-family: 'Poppins', sans-serif !important;
}

.article-item__excerpt p {
  color: #212529 !important;
}

/* ================================================== */
/* LEGACY CUSTOM CSS FROM PREVIOUS DEVS - START */
/* ================================================== */

.rk-widget.rk-bought_together.rk-bought_together__amazon_bought_together {
  display: none;
}

.product__meta-recommendations-sidebar.visible {
  display: none;
}

/* Omit this to prevent add to cart button from being fixed size */

/* .product-form__cart-submit.btn.btn--medium.btn--full.btn--secondary {
  width: 340px !important;
} */
.shopify-payment-button__button.shopify-payment-button__button--unbranded {
  width: 340px !important;
}

.product-item__media {
  height: 100% !important;
  padding: 0 !important;
}

/* LEGACY CUSTOM CSS FROM PREVIOUS DEVS - END */
/* ============================================== */

/* ================================================== */
/* BOOK NOW BUTTON STYLES - START */
/* ================================================== */

/* Desktop Header Container Adjustments */
.header__content-segment-desktop.right {
  /* gap: 1rem; */
  height: 42px;
}

/* Desktop Book Now Button - Matching existing site button styling */
.header__book-now-button {
  /* Base button styles */
  display: inline-block;
  height: 42px;
  width: 110px;
  font-weight: 500;
  color: #ffffff;
  text-align: center;
  vertical-align: middle;
  user-select: none;
  background-color: #263765;
  border: 2px solid #263765;
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
  line-height: 1.5;
  border-radius: 0;
  text-decoration: none;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out,
    border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  white-space: nowrap;

  /* Typography matching the nav */
  font-family: "Poppins", sans-serif;
  font-style: normal;
  letter-spacing: 0.1em;
  text-transform: uppercase;

  /* Smoothing */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.rich-text .rich-text__inner .section-blocks__heading {
  color: #263765;
}

.section-header__heading,
.icon-grid-title {
  color: #263765;
}

/* Desktop Book Now Button - Hover state */
.header__book-now-button:hover {
  color: #ffffff;
  background-color: #1e2c52;
  border-color: #1e2c52;
  text-decoration: none;
}

/* Desktop Book Now Button - Focus state for accessibility */
.header__book-now-button:focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(38, 55, 101, 0.25);
}

/* Desktop Book Now Button - Active state */
.header__book-now-button:active {
  background-color: #192340;
  border-color: #192340;
}

/* Desktop Book Now Button - Responsive adjustments */
@media (min-width: 1200px) {
  .header__book-now-button {
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }
}

/* Desktop Book Now Button - Ensure proper spacing in header */
.header__content-segment .header__book-now-button {
  margin-right: 1.5rem;
}

/* Desktop Book Now Button - Hide on mobile */
@media (max-width: 767px) {
  .header__book-now-button {
    display: none;
  }
}


.header__nav-bar .header__links>ul>li>[data-link] span.link-hover::before {
  background-color: #263765;
}

.header.header--has-nav-bar .meganav {
  margin-top: 8px;
}

/* Mobile Book Now Button - Container styling */
.mobile-menu__item--book-now {
  list-style: none;
  font-size: var(--font-size-body-50);
  word-wrap: break-word;
  word-break: break-word;
  hyphens: auto;
  margin: 1rem 0;
  padding: 0 var(--spacing-4);
  display: flex;
  justify-content: center;
  /* Center the button within the container */
}

/* Mobile Book Now Button - Main button styling */
.mobile-menu__book-now-button {
  /* Button sizing - not full width */
  display: inline-block;
  width: auto;
  max-width: 200px;
  /* Limit button width */

  /* Typography matching desktop button but sized for mobile menu */
  font-family: "Poppins", sans-serif;
  font-style: normal;
  font-weight: 500;
  font-size: var(--font-size-body-100);
  letter-spacing: 0.1em;
  text-transform: uppercase;
  text-decoration: none;
  line-height: 1.5;
  text-align: center;

  /* Colors matching desktop button */
  color: #ffffff !important;
  background-color: #263765;
  border: 2px solid #263765;
  border-radius: 0;

  /* Spacing */
  padding: var(--spacing-3) var(--spacing-6);

  /* Transitions */
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out,
    border-color 0.15s ease-in-out;

  /* Font smoothing */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;

  /* Override mobile menu defaults */
  cursor: pointer;
}

/* Mobile Book Now Button - Text styling override */
.mobile-menu__book-now-button .mobile-menu__link__text {
  color: #ffffff !important;
  font-weight: 500;
  font-size: var(--font-size-body-100);
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

/* Mobile Book Now Button - Hover and active states */
.mobile-menu__book-now-button:hover,
.mobile-menu__book-now-button:active {
  color: #ffffff !important;
  background-color: #1e2c52;
  border-color: #1e2c52;
  text-decoration: none;
}

.mobile-menu__book-now-button:hover .mobile-menu__link__text {
  color: #ffffff !important;
}

/* Mobile Book Now Button - Focus state for accessibility */
.mobile-menu__book-now-button:focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(38, 55, 101, 0.25);
}

/* Mobile Book Now Button - Remove inherited mobile menu item styles */
.mobile-menu__item--book-now {
  /* Inherits standard mobile menu item styles */
}

/* Mobile Book Now Button - List item adjustments */
.mobile-menu__item--book-now[data-list-item] {
  /* No special overrides needed - uses standard mobile menu styling */
}

/* Mobile Book Now Button - Spacing between menu items */
.mobile-menu__item--book-now+.mobile-menu__item {
  /* Standard spacing between menu items */
}


/* BOOK NOW BUTTON STYLES - END */
/* ============================================== */

/* Forms and inputs */

.form-group {
  margin-bottom: 1rem;
}

.form-control {
  border-radius: 0;
  font-size: 1rem;
}

.form-group {
  margin-bottom: 1rem;
}

.custom-control-label::before {
  background-color: #fff;
  border: 1px solid #67676b;
}

.custom-checkbox .custom-control-input:checked~.custom-control-label::before {
  background-color: #263765;
  border-color: transparent;
}


.map-responsive {
  overflow: hidden;
  padding-bottom: 98%;
  position: relative;
  height: 0;
}

.map-responsive iframe {
  left: 0;
  top: 0;
  height: 100%;
  width: 100%;
  position: absolute;
}

/* Buttons */


/* Standard CSS button styles, variables replaced with values */
.btn-primary {
  font-family: "Poppins", sans-serif;
  font-weight: 500;
  color: #fff;
  background-color: #263765;
  border: 2px solid #263765;
}

.btn-primary:hover,
.btn-primary:not(:disabled):not(.disabled).active,
.btn-primary:not(:disabled):not(.disabled):active {
  background-color: #1e2c52;
  border-color: #1e2c52;
  color: #fff;
}

.btn-primary.disabled,
.btn-primary:disabled {
  color: rgba(255, 255, 255, .6);
  background-color: #8d8d90;
  border-color: #8d8d90;
  cursor: not-allowed;
}

.btn-outline-primary {
  font-family: "Poppins", sans-serif;
  font-weight: 500;
  color: #263765;
  border: 2px solid #263765;
  background-color: transparent;
}

.btn-outline-primary:hover,
.btn-outline-primary:not(:disabled):not(.disabled).active,
.btn-outline-primary:not(:disabled):not(.disabled):active {
  background-color: #263765;
  border-color: #263765;
  color: #fff;
}

.btn-outline-primary.disabled,
.btn-outline-primary:disabled {
  color: rgba(255, 255, 255, .6);
  background-color: #76767a;
  border-color: #76767a;
  cursor: not-allowed;
}

.btn-secondary {
  border-radius: 0;
  font-family: "Poppins", sans-serif;
  font-weight: 500;
  color: #fff;
  background-color: #67676b;
  border: 2px solid #67676b;
}

.btn-secondary:hover,
.btn-secondary:not(:disabled):not(.disabled).active,
.btn-secondary:not(:disabled):not(.disabled):active {
  background-color: #56565a;
  border-color: #56565a;
  color: #fff;
}

.btn-outline-secondary {
  font-family: "Poppins", sans-serif;
  font-weight: 500;
  color: #67676b;
  border: 2px solid #67676b;
  background-color: transparent;
}

.btn-outline-secondary:hover,
.btn-outline-secondary:not(:disabled):not(.disabled).active,
.btn-outline-secondary:not(:disabled):not(.disabled):active {
  background-color: #67676b;
  border-color: #67676b;
  color: #fff;
}

.btn-outline-light {
  font-family: "Poppins", sans-serif;
  font-weight: 500;
  color: #fff;
  background-color: transparent;
  border: 2px solid #fff;
}

.btn-outline-light:hover,
.btn-outline-light:not(:disabled):not(.disabled).active,
.btn-outline-light:not(:disabled):not(.disabled):active {
  background-color: #fff;
  border-color: #fff;
  color: #263765;
}

.btn-outline-light.disabled,
.btn-outline-light:disabled {
  color: rgba(255, 255, 255, .6);
  background-color: #76767a;
  border-color: #76767a;
  cursor: not-allowed;
}

.btn,
button.btn,
a.btn,
.btn-primary,
.btn-secondary,
.btn-outline,
.btn-outline-primary,
.btn-outline-secondary,
.btn-outline-light {
  border-radius: 0 !important;
  font-size: 1.125rem;
}

.btn.disabled,
.btn:disabled {
  opacity: 1;
}

.btn-lg {
  padding: .875rem 3.75rem;
}

@media screen and (max-width: 576px) {
  .btn-lg {
    padding: .75rem 2.5rem;
  }
}

.btn-sm {
  font-size: 1rem;
}


/* Container system */
.container {
  width: 100%;
  padding-right: calc(var(--space-outer, 16px));
  padding-left: calc(var(--space-outer, 16px));
  margin-right: auto;
  margin-left: auto;
}

@media (min-width: 576px) {
  .container {
    max-width: 540px;
  }
}

@media (min-width: 768px) {
  .container {
    max-width: 720px;
  }
}

@media (min-width: 992px) {
  .container {
    max-width: 960px;
  }
}

@media (min-width: 1200px) {
  .container {
    max-width: 1140px;
  }
}

@media (min-width: 1400px) {
  .container {
    max-width: 1320px;
  }
}

.container-fluid {
  width: 100%;
  padding-right: calc(var(--space-outer, 16px));
  padding-left: calc(var(--space-outer, 16px));
  margin-right: auto;
  margin-left: auto;
}


/*  Nav Tabs
.nav-tabs {
  border-bottom: 0;
  margin: .5rem 0;
  transition: margin .5s ease;
}

.nav-tabs .nav-link {
  font-size: 1rem;
  line-height: 1.25;
  color: #67676b;
  border: 0;
  border-radius: 0;
  border-right: 2px solid #263765;
  padding: .125rem .75rem;
  text-transform: uppercase;
  letter-spacing: .025em;
}

.nav-tabs .nav-link:hover,
.nav-tabs .nav-link:focus,
.nav-tabs .nav-link.active {
  color: #263765;
  border-color: #263765;
}

.nav-item:last-of-type .nav-link {
  border-right: 0;
}


#services-sticky-nav {
  &.sticky {
    position: fixed;
    //top: 0;
    top: $nav-height; //height of site navbar
    left: 0;
    width: 100%;
    z-index: 2000;
    background-color: $white;
    box-shadow: 0 2px 3px rgba($gray, .1);

    @media screen and (max-width: 576px) {
      top: $nav-height-mobile; //height of site navbar at this breakpoint
    }

    .nav-tabs {
      margin: .25rem 0;
    }
  }

  button.navbar-toggler {
    span.text {
      text-transform: uppercase;
      font-size: 1rem;
      @include font-body-medium;
    }
  }

  .nav-tabs {
    .nav-link {
      @media screen and (max-width: 767px) {
        padding: .75rem 0rem;
        border-right: 0;
      }
    }
  }
}

hr.services-nav-border {
  margin: 0 0 3rem 0;
  border-top: 1px solid rgba($gray, .25);
}

#servicesTab {
  &.nav-tabs {
    margin: 0;
    padding: 1.5rem 0;
    transition: padding .5s ease;

    &.sticky {
      position: fixed;
      //top: 0;
      top: $nav-height; //height of site navbar
      left: 0;
      width: 100%;
      z-index: 2000;
      background-color: $white;
      box-shadow: 0 2px 3px rgba($gray, .1);
      padding: .75rem 0;

      @media screen and (max-width: 576px) {
        top: $nav-height-mobile; //height of site navbar at this breakpoint
      }
    }
  }
}
     */

/* Table Gina Styles */
.table-gina {
  max-width: fit-content;
  min-width: 320px;
  margin: 0 auto;
  border-collapse: collapse;
}

.table-gina thead th {
  font-weight: 400;
  /* Reduced from default (usually 700) by 300, or you can adjust as needed */
  padding: 0.75rem;
  border-bottom: 1px solid #ddd;
}

.table-gina tbody td {
  color: #67676b;
  /* Grey color instead of black */
  padding: 0.75rem;
  border-bottom: 1px solid #f0f0f0;
}

.table-gina tbody td span {
  color: inherit;
}

/* Section block table specific alignment */
.section-block--table .table-gina th,
.section-block--table .table-gina td {
  text-align: left;
}

/* Sidebar */

.sidebar-collection-list__products {
  margin-left: 0rem;
  padding-left: 0;
  padding-bottom: var(--spacing-7);
  list-style: none;
}

.sidebar-collection-list__products li {
  padding: .5rem 0;
}

.sidebar-collection-list__toggle {
  background: none;
  border: none;
  font-weight: bold;
  cursor: pointer;
  padding: 0.5rem 0;
  position: relative;
  width: 100%;
  display: block;
  text-align: left;
}

.sidebar-collection:first-of-type {
  margin-top: 0
}

.collection-filters-wrapper .drawer__underlay,
.collection-filters-wrapper .drawer__top {
  display: none
}


.sidebar-collection-list {
  margin: 0;
  padding: 0;
  font-family: 'Poppins', sans-serif !important;
  list-style: none;
  padding-bottom: var(--spacing-7) !important;
  list-style: none;

}

@media only screen and (max-width: 767px) {
  .sidebar-collection-list {
    border-top: 1px solid var(--border);
    margin-top: 10px;
    padding-top: 10px
  }
}

.sidebar-collection-list .swatch__button {
  padding: 0;
  margin: 8px 6px 0 4px;
  font-size: 0
}

.sidebar-collection-list .swatch__button label {
  margin-left: 0
}

.sidebar-collection-list .swatch__button.is-hidden {
  overflow: hidden;
  width: 0;
  padding: 0
}

.sidebar-collection {
  position: relative;
  display: flex;
  flex-flow: row nowrap;
  width: 100%;
  font-family: var(--FONT-STACK-ACCENT);
  font-weight: var(--FONT-WEIGHT-ACCENT);
  font-style: var(--FONT-STYLE-ACCENT);
  text-transform: uppercase;
  letter-spacing: 1px;
  font-weight: var(--FONT-WEIGHT-ACCENT-BOLD);
  font-size: calc(12px * var(--FONT-ADJUST-ACCENT));
  padding: 0 28px 0 0;
  margin: 0 0 4px;
  color: var(--text);
  cursor: pointer;
  text-align: left;
  white-space: normal
}

.sidebar-collection .strong,
.sidebar-collection.strong {
  font-weight: var(--FONT-WEIGHT-ACCENT-BOLD)
}

.sidebar-collection span {
  white-space: nowrap
}

.sidebar-collection-chevron {
  position: absolute;
  top: 8px;
  right: 10px;
  transform: rotate(90deg);
  transition: transform .3s
}

.accordion-is-open>.sidebar-collection-chevron {
  transform: rotate(-90deg)
}

.sidebar-collection-chevron svg {
  width: 16px !important;
  height: 9px !important;
}

.sidebar-collection__color {
  overflow: hidden;
  flex: 1 1 auto;
  padding: 0 5px;
  border-left: 1px solid var(--border);
  margin-left: 6px;
  font-weight: var(--FONT-WEIGHT-BODY);
  font-size: calc(12px * var(--FONT-ADJUST-ACCENT));
  text-transform: none;
  text-overflow: ellipsis
}

.sidebar__filter__group .icon-box,
.sidebar__filter__group .icon-reset {
  position: absolute;
  top: 6px;
  right: 8px;
  z-index: 0
}

.sidebar__filter__group .filter__button {
  margin: 0
}

.sidebar__filter__group .filter__button label,
.sidebar__filter__group .sidebar-collection-list+button {
  font-family: var(--FONT-STACK-ACCENT);
  font-weight: var(--FONT-WEIGHT-ACCENT);
  font-style: var(--FONT-STYLE-ACCENT);
  text-transform: uppercase;
  letter-spacing: 1px;
  font-size: calc(12px * var(--FONT-ADJUST-ACCENT));
  width: 100%;
  margin: 0;
  padding: 4px 25px 4px 0;
  display: block;
  position: relative;
  z-index: 5
}

.sidebar__filter__group .filter__button label .strong,
.sidebar__filter__group .filter__button label.strong,
.sidebar__filter__group .sidebar-collection-list+button .strong,
.sidebar__filter__group .sidebar-collection-list+button.strong {
  font-weight: var(--FONT-WEIGHT-ACCENT-BOLD)
}

.sidebar__filter__group .filter__button label:hover .checkbox-core,
.sidebar__filter__group .sidebar-collection-list+button:hover .checkbox-core {
  fill: var(--border)
}

.sidebar__filter__group .sidebar-collection-list+button {
  display: none;
  padding: 0;
  margin-top: 4px;
  color: var(--text);
  font-weight: var(--FONT-WEIGHT-ACCENT-BOLD);
  cursor: pointer;
  text-transform: uppercase;
  text-align: left;
  transition: color .3s
}

.sidebar__filter__group .sidebar-collection-list+button:hover {
  color: var(--border)
}

.sidebar__filter__group .accordion-is-open~button {
  display: block
}