html { scroll-behavior: smooth; }

body.md-body,
body {
  font-family: "Lato", sans-serif;
  background-color: #f5f0e8;
  color: #2c2c2c;
}

.font-display { font-family: "Playfair Display", serif; }
.font-cinzel { font-family: "Cinzel", serif; }
.font-nav { font-family: "Montserrat", sans-serif; }
.font-body { font-family: "Lato", sans-serif; }

.skip-link {
  position: absolute;
  left: 1rem;
  top: -4rem;
  z-index: 80;
  background: #2c2c2c;
  color: #f5f0e8;
  padding: 0.6rem 1rem;
  font-family: "Montserrat", sans-serif;
  font-size: 12px;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}
.skip-link:focus { top: 1rem; }

nav a[aria-current="page"],
nav a.is-active { color: #d4af37; }
nav a[aria-current="page"]::after,
nav a.is-active::after { width: 100%; }

.nav-link { position: relative; }
.nav-link::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -4px;
  height: 1px;
  width: 0;
  background: #d4af37;
  transition: width 0.3s ease;
}
.nav-link:hover::after { width: 100%; }

.md-menu-icon,
.md-menu-icon::before,
.md-menu-icon::after {
  display: block;
  width: 18px;
  height: 1.5px;
  background: #2c2c2c;
  position: relative;
}
.md-menu-icon::before,
.md-menu-icon::after {
  content: "";
  position: absolute;
  left: 0;
}
.md-menu-icon::before { top: -6px; }
.md-menu-icon::after { top: 6px; }

.md-notice {
  background: #6b2d5e;
  color: #f5f0e8;
  text-align: center;
  font-family: "Montserrat", sans-serif;
  font-size: 11px;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  padding: 0.85rem 1rem;
}

.md-hp {
  position: absolute;
  left: -9999px;
  width: 1px;
  height: 1px;
  overflow: hidden;
}

.md-page img { max-width: 100%; height: auto; }

.md-page-home {
  overflow-x: hidden;
  max-width: 100%;
}

.md-marquee {
  overflow: hidden;
  max-width: 100%;
}

.md-page-home .marquee-track {
  display: flex;
  width: max-content;
  max-width: none;
  white-space: nowrap;
}

.md-page-home .md-branch-card {
  position: relative;
  display: block;
  overflow: hidden;
  aspect-ratio: 4 / 5;
}

.md-page-home img.md-branch-card-photo {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  max-width: none;
  object-fit: cover;
}

.prose-md p { margin-bottom: 1.15rem; }
.prose-md a { text-decoration: underline; text-underline-offset: 3px; text-decoration-color: #d4af37; }

.admin-bar .sticky.top-0 { top: 32px; }

.md-form-sent { outline: 2px solid #d4af37; }

.md-band-dark {
  background-color: #2c2c2c;
}

.md-audio-player .md-audio-el {
  display: none;
}

.md-page-author p,
.md-page-author li,
.md-page-entertainment p,
.md-page-entertainment li {
  overflow-wrap: break-word;
}

.md-page-entertainment img {
  display: block;
}

.md-gallery-video {
  position: relative;
  width: 100%;
  aspect-ratio: 4 / 5;
  overflow: hidden;
  background: #2c2c2c;
  cursor: pointer;
}

.md-gallery-video-el {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 20%;
}

.md-gallery-video-el--samba {
  object-position: left center;
}

.md-gallery-video-el:fullscreen,
.md-gallery-video-el:-webkit-full-screen {
  object-fit: contain;
  object-position: center;
  background: #000;
}

.md-gallery-video.is-expanded {
  position: fixed;
  inset: 0;
  z-index: 80;
  aspect-ratio: auto;
  width: 100%;
  height: 100%;
  background: #000;
  cursor: default;
}

.md-gallery-video.is-expanded .md-gallery-video-el {
  object-fit: contain;
  object-position: center;
}

.md-gallery-video-close {
  display: none;
  position: absolute;
  top: 1rem;
  right: 1rem;
  z-index: 2;
  font-family: "Montserrat", sans-serif;
  font-size: 10px;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: #f5f0e8;
  background: rgba(44, 44, 44, 0.72);
  border: 1px solid rgba(245, 240, 232, 0.35);
  padding: 0.5rem 0.8rem;
}

.md-gallery-video.is-expanded .md-gallery-video-close {
  display: block;
}

body.md-video-expanded {
  overflow: hidden;
}

.md-page-woo .button,
.md-page-woo button.button,
.md-page-woo .woocommerce a.button,
.md-page-woo .woocommerce button.button,
.md-page-woo .woocommerce input.button,
.md-page-woo #place_order {
  background: #2c2c2c !important;
  color: #f5f0e8 !important;
  border: 0 !important;
  border-radius: 0 !important;
  font-family: "Montserrat", sans-serif !important;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  padding: 0.9rem 1.4rem !important;
}
.md-page-woo .button:hover,
.md-page-woo .woocommerce a.button:hover,
.md-page-woo .woocommerce button.button:hover {
  background: #6b2d5e !important;
}
.md-page-woo .woocommerce-Price-amount {
  font-family: "Playfair Display", serif;
}

.md-page-woo .woocommerce form .form-row input.input-text,
.md-page-woo .woocommerce form .form-row textarea,
.md-page-woo .woocommerce form .form-row select,
.md-page-woo .woocommerce-input-wrapper input,
.md-page-woo .select2-container .select2-selection--single {
  border: 1px solid rgba(44, 44, 44, 0.2) !important;
  border-radius: 0 !important;
  background: #fff !important;
  min-height: 46px;
  padding: 0.65rem 0.85rem;
}

.md-page-woo .woocommerce-message,
.md-page-woo .woocommerce-info,
.md-page-woo .woocommerce-error {
  border-top-color: #d4af37;
}

.md-page-woo .woocommerce div.product .product_title {
  font-family: "Playfair Display", serif;
  font-size: clamp(2rem, 4vw, 3rem);
}

.md-page-woo .woocommerce div.product p.price {
  color: #6b2d5e;
}

.md-page-shop [data-block-id="blk_1fxlk3n"],
.md-page-shop [data-block-id="blk_u2qxmn"],
.md-page-shop [data-block-id="blk_1pmma5p"] {
  background-color: #2c2c2c;
  color: #f5f0e8;
}

.divider-gold::after,
.divider-gold-center::after {
  display: none !important;
  content: none !important;
}

.md-home-hero {
  position: relative;
  background: #2c2c2c;
  overflow: hidden;
}

.md-page-home img.md-home-hero-photo {
  display: block;
  width: 100%;
  max-width: none;
  height: 22rem;
  object-fit: cover;
  object-position: center 18%;
}

.md-home-hero-media {
  position: relative;
}

.md-home-hero-media::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 4.5rem;
  background: linear-gradient(to bottom, transparent, #2c2c2c);
  pointer-events: none;
}

.md-home-hero-overlay,
.md-home-hero-grain {
  display: none;
}

@media (min-width: 640px) {
  .md-page-home img.md-home-hero-photo {
    height: 26rem;
  }
}

@media (min-width: 1024px) {
  .md-home-hero {
    min-height: 46rem;
  }

  .md-home-hero-media {
    position: static;
  }

  .md-home-hero-media::after {
    display: none;
  }

  .md-page-home img.md-home-hero-photo {
    position: absolute;
    inset: 0;
    height: 100%;
    object-position: 82% 22%;
  }

  .md-home-hero-overlay {
    display: block;
    position: absolute;
    inset: 0;
    background: linear-gradient(to right, #2c2c2c, rgba(44, 44, 44, 0.6) 55%, rgba(44, 44, 44, 0.15));
  }

  .md-home-hero-grain {
    display: block;
    position: absolute;
    inset: 0;
    opacity: 0.25;
    pointer-events: none;
  }

  .md-home-hero-copy {
    position: relative;
    min-height: 46rem;
    display: flex;
    align-items: flex-end;
  }
}

.md-page-voiceover p,
.md-page-voiceover li {
  overflow-wrap: break-word;
}

.md-vo-demos {
  position: relative;
}

.md-vo-demos .vo-tab-input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

.md-vo-demos .vo-panel {
  display: none;
}

.md-vo-demos #tab-commercial:checked ~ .vo-panels #panel-commercial,
.md-vo-demos #tab-narration:checked ~ .vo-panels #panel-narration,
.md-vo-demos #tab-inspirational:checked ~ .vo-panels #panel-inspirational,
.md-vo-demos #tab-childrens:checked ~ .vo-panels #panel-childrens {
  display: block;
}

.md-vo-demos #tab-commercial:checked ~ .vo-tabbar label[for="tab-commercial"],
.md-vo-demos #tab-narration:checked ~ .vo-tabbar label[for="tab-narration"],
.md-vo-demos #tab-inspirational:checked ~ .vo-tabbar label[for="tab-inspirational"],
.md-vo-demos #tab-childrens:checked ~ .vo-tabbar label[for="tab-childrens"] {
  background-color: #d4af37;
  color: #2c2c2c;
  border-color: #d4af37;
}

.md-page-woo-shop .woocommerce-products-header {
  display: none;
}

.md-page-woo-shop .woocommerce-notices-wrapper:empty {
  display: none;
}

.md-page-woo-shop .woocommerce-notices-wrapper:not(:empty) {
  margin-bottom: 1.5rem;
}

.md-shop-toolbar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding-bottom: 1.25rem;
  margin-bottom: 2rem;
  border-bottom: 1px solid rgba(44, 44, 44, 0.1);
}

.md-page-woo-shop .woocommerce-result-count,
.md-shop-catalog .woocommerce-result-count {
  margin: 0;
  font-family: "Montserrat", sans-serif;
  font-size: 11px;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: rgba(44, 44, 44, 0.55);
}

.md-page-woo-shop .woocommerce-ordering,
.md-shop-catalog .woocommerce-ordering {
  margin: 0;
}

.md-page-woo-shop .woocommerce-ordering select,
.md-shop-catalog .woocommerce-ordering select {
  appearance: none;
  -webkit-appearance: none;
  min-width: 16.5rem;
  background-color: #fff;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%236B2D5E' d='M1 1.5 6 6.5 11 1.5'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 1rem center;
  background-size: 12px 8px;
  border: 1px solid rgba(44, 44, 44, 0.18);
  border-left: 3px solid #d4af37;
  border-radius: 0;
  color: #2c2c2c;
  font-family: "Montserrat", sans-serif;
  font-size: 11px;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  padding: 0.85rem 2.6rem 0.85rem 1rem;
  cursor: pointer;
  box-shadow: 0 1px 0 rgba(44, 44, 44, 0.04);
}

.md-page-woo-shop .woocommerce-ordering select:hover,
.md-page-woo-shop .woocommerce-ordering select:focus,
.md-shop-catalog .woocommerce-ordering select:hover,
.md-shop-catalog .woocommerce-ordering select:focus {
  border-color: #6b2d5e;
  outline: none;
}

.md-page-woo-shop .woocommerce-ordering option,
.md-shop-catalog .woocommerce-ordering option {
  font-family: "Montserrat", sans-serif;
  letter-spacing: 0.06em;
  text-transform: none;
}

.md-page-woo ul.products,
.md-page-woo-shop ul.products,
.md-shop-catalog ul.products {
  display: grid !important;
  grid-template-columns: 1fr;
  gap: 2rem 1.75rem !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
  width: 100% !important;
  justify-content: start;
}

.md-page-woo ul.products::before,
.md-page-woo ul.products::after,
.md-page-woo-shop ul.products::before,
.md-page-woo-shop ul.products::after {
  display: none !important;
  content: none !important;
}

@media (min-width: 640px) {
  .md-page-woo ul.products,
  .md-page-woo-shop ul.products {
    grid-template-columns: repeat(auto-fit, minmax(280px, 360px));
  }
}

@media (min-width: 1024px) {
  .md-page-woo ul.products,
  .md-page-woo-shop ul.products {
    grid-template-columns: repeat(auto-fit, minmax(300px, 360px));
  }
}

.md-page-woo ul.products li.product,
.md-shop-card {
  width: auto !important;
  max-width: none !important;
  float: none !important;
  margin: 0 !important;
  padding: 0 !important;
  display: flex;
  flex-direction: column;
  background: #fff;
  border: 1px solid rgba(44, 44, 44, 0.1);
  transition: border-color 0.3s ease, transform 0.3s ease;
}

.md-shop-card:hover {
  border-color: #d4af37;
  transform: translateY(-4px);
}

.md-shop-card-media {
  position: relative;
  display: block;
  overflow: hidden;
  background: #f5f0e8;
  aspect-ratio: 4 / 5;
}

.md-shop-card-badge {
  position: absolute;
  top: 0.85rem;
  left: 0.85rem;
  z-index: 2;
  background: #6b2d5e;
  color: #f5f0e8;
  font-family: "Montserrat", sans-serif;
  font-size: 10px;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  padding: 0.4rem 0.65rem;
}

.md-shop-card-media img,
.md-page-woo ul.products li.product img {
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  object-fit: contain;
  object-position: center;
  display: block;
  transition: transform 0.5s ease;
}

.md-shop-card:hover .md-shop-card-media img {
  transform: scale(1.04);
}

.md-shop-card-body {
  display: flex;
  flex-direction: column;
  flex: 1;
  padding: 1.35rem 1.35rem 1.5rem;
}

.md-shop-card-cat {
  margin: 0;
  font-family: "Montserrat", sans-serif;
  font-size: 10px;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: #6b2d5e;
}

.md-shop-card-title {
  margin: 0.4rem 0 0 !important;
  font-family: "Playfair Display", serif !important;
  font-size: 1.35rem !important;
  font-weight: 500 !important;
  line-height: 1.3 !important;
}

.md-shop-card-title a {
  color: #2c2c2c;
  text-decoration: none;
}

.md-shop-card-title a:hover {
  color: #6b2d5e;
}

.md-shop-card-excerpt {
  margin: 0.65rem 0 0;
  font-size: 0.875rem;
  line-height: 1.55;
  color: rgba(44, 44, 44, 0.62);
}

.md-shop-card-price {
  margin: 0.9rem 0 1.1rem;
  font-family: "Playfair Display", serif;
  font-size: 1.35rem;
  color: #6b2d5e;
}

.md-shop-card-price .woocommerce-Price-amount {
  font-size: inherit;
}

.md-shop-card .button,
.md-shop-card a.button,
.md-shop-card .add_to_cart_button {
  display: block !important;
  width: 100% !important;
  text-align: center;
  margin-top: auto;
  box-sizing: border-box;
}

.md-shop-card .added_to_cart,
.md-page-woo .added_to_cart {
  display: block;
  margin-top: 0.85rem;
  text-align: center;
  font-family: "Montserrat", sans-serif;
  font-size: 11px;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: #6b2d5e;
  text-decoration: none;
}

.md-shop-card .added_to_cart:hover {
  color: #d4af37;
}

.md-page-woo .woocommerce-loop-product__link {
  display: contents;
}

.md-shop-product div.product {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2.5rem;
  align-items: start;
}

@media (min-width: 900px) {
  .md-shop-product div.product {
    grid-template-columns: 0.9fr 1.1fr;
    gap: 3.5rem;
  }
}

.md-shop-product .woocommerce-product-gallery {
  width: 100% !important;
  float: none !important;
  margin: 0 !important;
}

.md-shop-product .woocommerce-product-gallery img {
  width: 100%;
  height: auto;
}

.md-shop-product div.product .summary {
  width: 100% !important;
  float: none !important;
}

.md-shop-product div.product .product_title {
  font-family: "Playfair Display", serif;
  font-size: clamp(2rem, 4vw, 3rem);
  line-height: 1.1;
}

.md-shop-product div.product p.price {
  color: #6b2d5e;
  font-size: 1.75rem;
}

.md-shop-product .quantity input.qty {
  border: 1px solid rgba(44, 44, 44, 0.2);
  min-height: 46px;
  width: 4.5rem;
  padding: 0.4rem 0.6rem;
}

.md-shop-product form.cart {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.75rem;
}

.md-page-woo .woocommerce-breadcrumb {
  font-family: "Montserrat", sans-serif;
  font-size: 11px;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: rgba(44, 44, 44, 0.5);
  margin-bottom: 1.5rem;
}

.md-page-woo .woocommerce-breadcrumb a {
  color: #6b2d5e;
}

.md-shop-product .woocommerce-tabs {
  margin-top: 3rem;
  clear: both;
}

.md-shop-product .woocommerce-tabs ul.tabs {
  padding: 0 !important;
  margin: 0 0 1.5rem !important;
  border-bottom: 1px solid rgba(44, 44, 44, 0.12);
}

.md-shop-product .woocommerce-tabs ul.tabs::before {
  display: none !important;
}

.md-shop-product .woocommerce-tabs ul.tabs li {
  background: transparent !important;
  border: 0 !important;
  margin: 0 1.5rem 0 0 !important;
  padding: 0 !important;
}

.md-shop-product .woocommerce-tabs ul.tabs li a {
  font-family: "Montserrat", sans-serif;
  font-size: 11px;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: rgba(44, 44, 44, 0.5) !important;
  padding: 0.75rem 0 !important;
  border-bottom: 2px solid transparent;
}

.md-shop-product .woocommerce-tabs ul.tabs li.active a,
.md-shop-product .woocommerce-tabs ul.tabs li a:hover {
  color: #6b2d5e !important;
  border-bottom-color: #d4af37;
}

.md-page-woo table.shop_table {
  border: 1px solid rgba(44, 44, 44, 0.1) !important;
}

.md-page-woo table.cart img,
.md-page-woo .shop_table .product-thumbnail img {
  width: 72px !important;
  height: auto !important;
  max-width: 72px !important;
}
