/* Miure final detail polish - 2026-08-08 */

:root {
  --miure-final-ink: #11100f;
  --miure-final-paper: #fff;
  --miure-final-wash: #f7f4f1;
  --miure-final-line: #e4dfda;
  --miure-final-muted: #625e59;
}

/* Keep the document itself as the only vertical scroll container. */
html,
body {
  height: auto !important;
  min-height: 100% !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  position: static !important;
  touch-action: pan-y !important;
  -webkit-overflow-scrolling: touch;
}

html body #miure-reference-home.miure-reference-home {
  max-width: 100% !important;
  overflow: visible !important;
  touch-action: pan-y !important;
}

/* Homepage campaign hero: one artwork, responsive composition. */
.route-common-home .miure-reference-hero {
  width: 100% !important;
  min-height: 0 !important;
  aspect-ratio: 1600 / 533;
  background: #f7f3f0 !important;
}

/* Functional home navigation drawer. */
.route-common-home .miure-menu-drawer {
  position: fixed;
  z-index: 1002;
  inset: 0 auto 0 0;
  display: flex;
  width: min(86vw, 360px);
  padding: 96px 30px 30px;
  flex-direction: column;
  gap: 4px;
  background: var(--miure-final-paper);
  box-shadow: 20px 0 60px rgba(17,16,15,.14);
  transform: translateX(-105%);
  transition: transform .25s ease-out;
}

.route-common-home .miure-menu-drawer a {
  display: flex;
  min-height: 52px;
  align-items: center;
  border-bottom: 1px solid var(--miure-final-line);
  color: var(--miure-final-ink);
  font-size: 14px;
  font-weight: 650;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.route-common-home .miure-menu-drawer.is-open { transform: translateX(0); }
.route-common-home .miure-menu-button { position: relative; z-index: 1003; min-width: 44px; min-height: 44px; }
.route-common-home .miure-nav-actions a { min-width: 44px; min-height: 44px; }

.route-common-home .miure-menu-overlay {
  position: fixed;
  z-index: 1001;
  inset: 0;
  visibility: hidden;
  background: rgba(17,16,15,.36);
  opacity: 0;
  transition: opacity .2s ease-out, visibility .2s;
}

.route-common-home .miure-menu-overlay.is-open { visibility: visible; opacity: 1; }
body.miure-menu-open { overflow: hidden !important; }

.route-common-home .miure-reference-hero > img {
  content: url('/image/catalog/miure/miure-hero-banner-final.png');
  display: block !important;
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  max-width: none !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: center !important;
}

.route-common-home .miure-reference-hero__veil {
  display: none !important;
}

/* Keep the two CTAs in the supplied artwork functional on desktop. */
.route-common-home .miure-reference-hero__copy {
  display: block !important;
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  padding: 0 !important;
  background: transparent !important;
  pointer-events: none;
}

.route-common-home .miure-reference-hero__copy > :not(.miure-reference-actions) {
  display: none !important;
}

.route-common-home .miure-reference-actions {
  position: absolute;
  top: 71.5%;
  left: 6.1%;
  width: 28.5%;
  height: 8.8%;
  gap: 1.25vw;
  pointer-events: auto;
}

.route-common-home .miure-reference-actions .miure-reference-button {
  min-width: 0 !important;
  height: 100% !important;
  padding: 0 !important;
  border-color: transparent !important;
  background: transparent !important;
  color: transparent !important;
  opacity: 0;
}

.route-common-home .miure-reference-actions .miure-reference-button:first-child {
  flex: 0 0 42%;
}

.route-common-home .miure-reference-actions .miure-reference-button:last-child {
  flex: 1 1 auto;
}

/* Compact, neutral product status badge. */
#product-product .product-image > .swiper > .product-labels {
  top: 18px !important;
  left: 18px !important;
  width: auto !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
}

#product-product .product-image > .swiper > .product-labels .product-label-29 {
  min-width: 0 !important;
  width: auto !important;
  height: 30px !important;
  flex: 0 0 30px !important;
  align-self: flex-start !important;
  margin: 0 !important;
  padding: 0 12px !important;
  border: 0 !important;
  border-radius: 2px !important;
  background: #11100f !important;
  color: #fff !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
}

#product-product .product-image > .swiper > .product-labels .product-label-29,
#product-product .product-image > .swiper > .product-labels .product-label-29 strong,
#product-product .product-image > .swiper > .product-labels .product-label-29 a {
  color: #fff !important;
  text-decoration: none !important;
}

/* Neutral catalogue labels everywhere, with no nested badge. */
body:not(:has(.miure-reference-home)) .product-labels .product-label-group,
body:not(:has(.miure-reference-home)) .product-labels-outside .product-label,
body:not(:has(.miure-reference-home)) .product-labels .product-label {
  display: inline-flex !important;
  width: auto !important;
  min-width: 46px !important;
  min-height: 28px !important;
  padding: 7px 10px !important;
  align-items: center !important;
  justify-content: center !important;
  color: #fff !important;
  background: var(--miure-final-ink) !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  font-size: 10px !important;
  font-weight: 650 !important;
  line-height: 1 !important;
  letter-spacing: .12em !important;
  text-transform: uppercase !important;
}

body:not(:has(.miure-reference-home)) .product-labels .product-label-group strong,
body:not(:has(.miure-reference-home)) .product-labels .product-label strong,
#product-product .product-labels .product-label strong {
  display: contents !important;
  color: inherit !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  font: inherit !important;
}

/* The Instagram gallery duplicates product imagery and weakens the catalogue focus. */
.route-common-home .miure-reference-look {
  display: none !important;
}

/* Disable the unfinished Journal newsletter popup; it blocks product and checkout actions. */
.module-popup-1052,
.popup-wrapper.module-popup-1052 { display: none !important; }

/* Editorial campaign panel: preserve the complete portrait instead of letterbox cropping. */
.route-common-home .miure-reference-campaign {
  min-height: 420px !important;
  background: #f4f0ec !important;
}

.route-common-home .miure-reference-campaign > img {
  inset: 0 7% 0 auto !important;
  width: 42% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: center center !important;
  max-height: none !important;
}

.route-common-home .miure-reference-campaign::after {
  background: linear-gradient(90deg,#f4f0ec 0%,#f4f0ec 44%,rgba(244,240,236,.78) 55%,rgba(244,240,236,0) 72%) !important;
}

.route-common-home .miure-reference-campaign__copy {
  width: 46% !important;
  padding: 92px 0 72px clamp(32px,5vw,72px) !important;
}

.route-common-home .miure-reference-campaign__copy h2 {
  font-size: clamp(36px,3.2vw,52px) !important;
}

.route-common-home .miure-reference-campaign__copy > span {
  margin: 8px 0 24px !important;
  font-size: 13px !important;
}

.route-common-home .miure-reference-campaign__copy .miure-reference-button {
  min-height: 44px !important;
  padding: 12px 18px !important;
  font-size: 10px !important;
}

.route-common-home .miure-reference-campaign__offer {
  right: 4% !important;
  width: 86px !important;
  height: 86px !important;
  color: #fff !important;
  background: #11100f !important;
}

/* Product information hierarchy: description first; redundant extra panel removed. */
html.route-product-product .product_extra-513 {
  display: none !important;
}

html.route-product-product .miure-product-description-first {
  width: 100% !important;
  margin: 0 0 24px !important;
  padding: 0 0 22px !important;
  border-bottom: 1px solid var(--miure-final-line) !important;
}

@media (max-width: 820px) {
  html.route-product-product .miure-product-description-first {
    margin-bottom: 20px !important;
    padding-bottom: 18px !important;
  }
}

/* Give payment confirmation copy and its action room to breathe. */
#checkout-confirm .buttons,
.checkout-payment-form .buttons,
.payment-form .buttons {
  margin-top: 22px !important;
}

#button-confirm {
  margin-top: 18px !important;
}

/* Shared Journal footer: stable grid on every route. */
body:not(:has(.miure-reference-home)) footer .grid-row-3 { display: none !important; }
body:not(:has(.miure-reference-home)) footer,
body:not(:has(.miure-reference-home)) footer .grid-rows {
  background: var(--miure-final-wash) !important;
}
body:not(:has(.miure-reference-home)) footer .grid-row-5,
body:not(:has(.miure-reference-home)) footer .grid-row-6 { background: var(--miure-final-wash) !important; }
body:not(:has(.miure-reference-home)) footer .grid-row-5 .row-bg,
body:not(:has(.miure-reference-home)) footer .grid-row-5 .grid-cols-wrapper,
body:not(:has(.miure-reference-home)) footer .grid-row-5 .grid-cols,
body:not(:has(.miure-reference-home)) footer .grid-row-5 .grid-col,
body:not(:has(.miure-reference-home)) footer .grid-row-5 .grid-items,
body:not(:has(.miure-reference-home)) footer .grid-row-5 .grid-item,
body:not(:has(.miure-reference-home)) footer .grid-row-5 .module,
body:not(:has(.miure-reference-home)) footer .grid-row-5 .module-body,
body:not(:has(.miure-reference-home)) footer .grid-row-5 .catalog-grid,
body:not(:has(.miure-reference-home)) footer .grid-row-5 .auto-grid-items,
body:not(:has(.miure-reference-home)) footer .grid-row-5 .module-item {
  background: var(--miure-final-wash) !important;
}
body:not(:has(.miure-reference-home)) footer .grid-row-6 .row-bg,
body:not(:has(.miure-reference-home)) footer .grid-row-6 .grid-cols-wrapper,
body:not(:has(.miure-reference-home)) footer .grid-row-6 .grid-cols,
body:not(:has(.miure-reference-home)) footer .grid-row-6 .grid-col,
body:not(:has(.miure-reference-home)) footer .grid-row-6 .grid-items,
body:not(:has(.miure-reference-home)) footer .grid-row-6 .grid-item,
body:not(:has(.miure-reference-home)) footer .grid-row-6 .module,
body:not(:has(.miure-reference-home)) footer .grid-row-6 .module-body,
body:not(:has(.miure-reference-home)) footer .grid-row-6 .auto-grid-items,
body:not(:has(.miure-reference-home)) footer .grid-row-6 .module-item {
  background: var(--miure-final-wash) !important;
}
body:not(:has(.miure-reference-home)) footer .grid-row-5 .grid-cols {
  display: grid !important;
  grid-template-columns: minmax(210px, 1.05fr) minmax(0, 2.95fr) !important;
  gap: clamp(28px, 5vw, 72px) !important;
  padding: 46px clamp(24px, 5vw, 72px) 34px !important;
}
body:not(:has(.miure-reference-home)) footer .grid-row-5 .grid-col-1,
body:not(:has(.miure-reference-home)) footer .grid-row-5 .grid-col-2 {
  min-width: 0 !important;
  height: auto !important;
}
body:not(:has(.miure-reference-home)) footer .grid-row-5 .auto-grid-items {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(145px, 1fr)) !important;
  grid-auto-flow: row !important;
  grid-auto-columns: auto !important;
  width: 100% !important;
  flex-direction: initial !important;
  align-items: start !important;
  gap: clamp(22px, 4vw, 60px) !important;
}
body:not(:has(.miure-reference-home)) footer .grid-row-5 .auto-grid-items > .module-item {
  display: block !important;
  width: auto !important;
  min-width: 0 !important;
  height: auto !important;
  align-self: start !important;
}
body:not(:has(.miure-reference-home)) footer .grid-row-5 .grid-col-1::after { display: none !important; }
body:not(:has(.miure-reference-home)) footer .grid-row-5 .icons-menu-61 { margin-top: 18px !important; }
body:not(:has(.miure-reference-home)) footer .grid-row-5 .module-item,
body:not(:has(.miure-reference-home)) footer .grid-row-5 .module-item > div,
body:not(:has(.miure-reference-home)) footer .grid-row-5 .catalog-grid { min-width: 0 !important; }
body:not(:has(.miure-reference-home)) footer .grid-row-5 .catalog-title {
  margin-bottom: 14px !important;
  font-size: 11px !important;
  letter-spacing: .1em !important;
  white-space: normal !important;
}
body:not(:has(.miure-reference-home)) footer .grid-row-5 .subitem a {
  display: block !important;
  padding: 6px 0 !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
  white-space: normal !important;
  word-break: normal !important;
}
body:not(:has(.miure-reference-home)) footer .grid-row-6 { padding: 14px clamp(24px, 5vw, 72px) !important; }

/* Prevent the support bubble from covering product purchase actions. */
#product-product .miure-whatsapp-float,
#product-product a[href*="wa.me"].whatsapp-float,
#product-product a[href*="api.whatsapp.com"].whatsapp-float { bottom: 136px !important; }

@media (max-width: 820px) {
  body:has(#product-product) #miure-whatsapp-chat {
    right: 18px !important;
    bottom: 164px !important;
  }
}

/* Better interaction sizing across shared Journal pages. */
body:not(:has(.miure-reference-home)) .btn-cart,
body:not(:has(.miure-reference-home)) .btn-wishlist,
body:not(:has(.miure-reference-home)) .btn-compare,
body:not(:has(.miure-reference-home)) header a,
body:not(:has(.miure-reference-home)) header button { min-height: 44px; }

/* A warmer, structured order confirmation without changing checkout logic. */
#common-success {
  padding-top: 54px !important;
  padding-bottom: 72px !important;
}

#common-success #content {
  max-width: 860px;
  margin: 0 auto;
  padding: 58px 64px !important;
  text-align: center;
  border: 1px solid #e5e1dc;
  background: #faf9f7;
}

#common-success #content::before {
  content: "\2713";
  display: flex;
  align-items: center;
  justify-content: center;
  width: 58px;
  height: 58px;
  margin: 0 auto 20px;
  border-radius: 50%;
  background: #11100f;
  color: #fff;
  font-size: 28px;
}

#common-success .page-title {
  margin-top: 0 !important;
  font-size: 48px !important;
  line-height: 1.08 !important;
}

#common-success .miure-order-id {
  display: inline-block;
  margin: 8px 0 26px;
  padding: 9px 15px;
  border: 1px solid #d7d1ca;
  background: #fff;
}

#common-success #content > p {
  max-width: 650px;
  margin: 0 auto 16px;
  color: #363330;
  font-size: 16px;
  line-height: 1.7;
}

#common-success .miure-success-greeting {
  font-size: 19px;
  color: #11100f;
}

#common-success .buttons {
  margin-top: 34px;
}

#common-success .buttons .pull-right {
  float: none !important;
}

#common-success .buttons .btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 230px;
  min-height: 52px;
}

/* Continue the neutral top strip across the complete mobile viewport. */
@media (max-width: 820px) {
  .route-common-home .miure-utility-bar {
    justify-content: space-between !important;
    padding-inline: 16px !important;
  }

  .route-common-home .miure-utility-items {
    justify-content: flex-start !important;
    margin: 0 auto 0 0 !important;
  }

  .route-common-home .miure-utility-items span:first-child {
    font-weight: 600 !important;
  }

  .mobile-header,
  .mobile-header .mobile-top-bar,
  .mobile-header .top-bar,
  .mobile-header .top-menu {
    background-color: #f1efec !important;
  }

  .mobile-header .mobile-top-bar,
  .mobile-header .top-bar {
    width: 100% !important;
    max-width: none !important;
  }

  #product-product .product-image > .swiper > .product-labels {
    top: 12px !important;
    left: 12px !important;
  }

  .route-common-home .miure-reference-hero {
    min-height: 0 !important;
    aspect-ratio: 1600 / 533 !important;
    background: #f7f3f0 !important;
  }
  .route-common-home .miure-reference-hero > img {
    content: url('/image/catalog/miure/miure-hero-banner-final.png');
    display: block !important;
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    object-position: center !important;
  }
  .route-common-home .miure-reference-hero__veil { display: none !important; }
  .route-common-home .miure-reference-hero__copy { position: absolute !important; inset: 0 !important; width: 100% !important; padding: 0 !important; background: transparent !important; }
  .route-common-home .miure-reference-hero__copy > :not(.miure-reference-actions) { display: none !important; }
  .route-common-home .miure-reference-actions {
    position: absolute !important;
    top: 71.5% !important;
    left: 6.1% !important;
    display: flex !important;
    width: 28.5% !important;
    height: 8.8% !important;
    gap: 1.25vw !important;
  }
  .route-common-home .miure-reference-actions .miure-reference-button {
    min-height: 0 !important;
    padding: 0 !important;
    border-color: transparent !important;
    background: transparent !important;
    color: transparent !important;
    opacity: 0 !important;
  }

  .route-common-home .miure-reference-pager {
    display: none !important;
  }

  .route-common-home .miure-reference-campaign {
    min-height: 0 !important;
    aspect-ratio: 1600 / 800 !important;
    background: #f4f0ec url('/image/catalog/miure/summer-swirl-26-fdf5f463.png') center / contain no-repeat !important;
  }
  .route-common-home .miure-reference-campaign > img,
  .route-common-home .miure-reference-campaign::after,
  .route-common-home .miure-reference-campaign__copy > :not(.miure-reference-button),
  .route-common-home .miure-reference-campaign__offer { display: none !important; }
  .route-common-home .miure-reference-campaign__copy { position: absolute !important; inset: 0 !important; width: 100% !important; padding: 0 !important; }
  .route-common-home .miure-reference-campaign__copy .miure-reference-button {
    position: absolute !important;
    top: 57% !important;
    left: 6.2% !important;
    display: block !important;
    width: 13.5% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    height: 14% !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    color: transparent !important;
    opacity: 0 !important;
  }

  body:not(:has(.miure-reference-home)) footer .grid-row-5 .grid-cols {
    grid-template-columns: 1fr !important;
    gap: 32px !important;
    width: 100% !important;
    padding: 36px clamp(24px, 7vw, 56px) 30px !important;
  }
  body:not(:has(.miure-reference-home)) footer .grid-row-5 .grid-col-1,
  body:not(:has(.miure-reference-home)) footer .grid-row-5 .grid-col-2 {
    display: flex !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  body:not(:has(.miure-reference-home)) footer .grid-row-5 .grid-col-1 {
    align-items: center !important;
    text-align: center !important;
  }
  body:not(:has(.miure-reference-home)) footer .grid-row-5 .grid-col-1 .grid-items {
    align-items: center !important;
    width: 100% !important;
  }
  body:not(:has(.miure-reference-home)) footer .grid-row-5 .grid-col-2 > .grid-items,
  body:not(:has(.miure-reference-home)) footer .grid-row-5 .grid-col-2 .module,
  body:not(:has(.miure-reference-home)) footer .grid-row-5 .grid-col-2 .module-body,
  body:not(:has(.miure-reference-home)) footer .grid-row-5 .grid-col-2 .catalog-grid {
    width: 100% !important;
  }
  body:not(:has(.miure-reference-home)) footer .grid-row-5 .auto-grid-items {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 28px 24px !important;
  }
  body:not(:has(.miure-reference-home)) footer .grid-row-5 .catalog-title { white-space: nowrap !important; }
  body:not(:has(.miure-reference-home)) footer .grid-row-5 .subitem a { font-size: 14px !important; }

  #product-product .miure-whatsapp-float,
  #product-product a[href*="wa.me"].whatsapp-float,
  #product-product a[href*="api.whatsapp.com"].whatsapp-float { right: 18px !important; bottom: 150px !important; }

  #common-success {
    padding: 30px 18px 48px !important;
  }

  #common-success #content {
    padding: 38px 22px !important;
  }

  #common-success .page-title {
    font-size: 34px !important;
  }

  #common-success .buttons .btn {
    width: 100%;
    min-width: 0;
  }
}

@media (max-width: 560px) {
  .route-common-home .miure-reference-hero,
  .route-common-home .miure-reference-campaign {
    width: calc(100% - 24px) !important;
    margin-inline: 12px !important;
  }
  body:not(:has(.miure-reference-home)) footer .grid-row-5 .grid-cols {
    gap: 30px !important;
    padding: 32px 24px 26px !important;
  }
  body:not(:has(.miure-reference-home)) footer .grid-row-5 .auto-grid-items {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 28px 24px !important;
  }
  body:not(:has(.miure-reference-home)) footer .grid-row-5 .auto-grid-items > .module-item:nth-child(3) {
    grid-column: 1 / -1 !important;
  }
  body:not(:has(.miure-reference-home)) footer .grid-row-5 .catalog-title {
    margin-bottom: 12px !important;
    font-size: 11px !important;
    white-space: nowrap !important;
  }
  body:not(:has(.miure-reference-home)) footer .grid-row-5 .subitem a {
    padding: 5px 0 !important;
    font-size: 13px !important;
    line-height: 1.5 !important;
    white-space: nowrap !important;
  }
  body:has(#product-product):not(:has(.miure-reference-home)) footer .grid-row-6 {
    padding-bottom: 6px !important;
  }
}

/* 2026-08-17: one quiet navigation system across the storefront. */
.route-common-home .miure-main-nav {
  display: grid !important;
  grid-template-columns: minmax(44px, 1fr) auto minmax(132px, 1fr) !important;
  align-items: center !important;
}

.route-common-home .miure-main-nav > .miure-nav {
  display: none !important;
}

.route-common-home .miure-main-nav > .miure-menu-button {
  justify-self: start !important;
}

.route-common-home .miure-main-nav > .miure-reference-logo {
  grid-column: 2 !important;
  justify-self: center !important;
}

.route-common-home .miure-main-nav > .miure-nav-actions {
  grid-column: 3 !important;
  justify-self: end !important;
}

.route-common-home .miure-menu-button span {
  width: 22px !important;
  height: 1.5px !important;
  flex: 0 0 1.5px !important;
  margin: 0 !important;
  background: #11100f !important;
}

/* Journal header menus are intentionally suppressed; the hamburger exposes
 * the same concise Shop / Contact navigation on all screen sizes. */
body:not(:has(.miure-reference-home)) header .desktop-main-menu-wrapper,
body:not(:has(.miure-reference-home)) header .desktop-main-menu-wrapper-2,
body:not(:has(.miure-reference-home)) header .main-menu:not(.mobile-main-menu) {
  display: none !important;
}

/* Footer brand mark belongs to the footer surface, not a white card. */
body:not(:has(.miure-reference-home)) footer .grid-row-5 .module-image,
body:not(:has(.miure-reference-home)) footer .grid-row-5 .module-image .module-body,
body:not(:has(.miure-reference-home)) footer .grid-row-5 .module-image a,
body:not(:has(.miure-reference-home)) footer .grid-row-5 .module-image img {
  background-color: var(--miure-final-wash) !important;
  box-shadow: none !important;
}

body:not(:has(.miure-reference-home)) footer .grid-row-5 .module-image img {
  mix-blend-mode: multiply;
}

/* Product gallery: remove Journal's empty label rail and preserve every image
 * without cropping at desktop, tablet or phone widths. */
html.route-product-product #product-product .product-image,
html.route-product-product #product-product .product-image > .swiper,
html.route-product-product #product-product .product-image .swiper-wrapper,
html.route-product-product #product-product .product-image .swiper-slide {
  padding-top: 0 !important;
  margin-top: 0 !important;
}

html.route-product-product #product-product .product-image .product-labels,
html.route-product-product #product-product .product-image .product-labels-outside,
html.route-product-product #product-product .product-image .product-labels-price {
  display: none !important;
  width: 0 !important;
  height: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

html.route-product-product #product-product .product-image .swiper-slide > a,
html.route-product-product #product-product .product-image .swiper-slide img {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  max-height: none !important;
  object-fit: contain !important;
  object-position: center top !important;
  background: #f7f4f1 !important;
}

/* WhatsApp-only contact page. */
html.route-information-contact #information-contact,
html.route-information-contact #information-contact #content {
  width: 100% !important;
  max-width: none !important;
}

html.route-information-contact iframe,
html.route-information-contact .map,
html.route-information-contact .contact-map,
html.route-information-contact [class*="google-map"],
html.route-information-contact .module-banners_grid-716 {
  display: none !important;
}

.mobile-main-menu-container .mobile-wrapper-top-menu {
  display: none !important;
}

/* One clear delivery notice, aligned with the left page edge. */
header .top-menu-331 .j-menu {
  justify-content: flex-start !important;
  text-align: left !important;
}

header .top-menu-331 .j-menu::after {
  display: none !important;
  content: none !important;
}

header .top-menu-331 .miure-delivery-notice,
header .top-menu-331 .miure-delivery-notice a,
header .top-menu-331 .miure-delivery-notice .links-text {
  font-weight: 700 !important;
  text-align: left !important;
}

.route-common-home .miure-utility-items .miure-home-delivery-notice {
  font-weight: 700 !important;
}

@media (min-width: 761px) {
  .route-common-home .miure-reference-footer {
    grid-template-columns: minmax(240px, 1.4fr) repeat(2, minmax(180px, 1fr)) !important;
  }
}

.miure-contact-card {
  max-width: 760px;
  margin: clamp(44px, 7vw, 92px) auto;
  padding: clamp(34px, 6vw, 72px);
  border: 1px solid var(--miure-final-line);
  background: var(--miure-final-wash);
  text-align: center;
}

.miure-contact-card__eyebrow {
  display: block;
  margin-bottom: 14px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .16em;
  text-transform: uppercase;
}

.miure-contact-card h1 {
  margin: 0 0 18px !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: clamp(36px, 5vw, 58px) !important;
  font-weight: 400 !important;
  line-height: 1.08 !important;
}

.miure-contact-card > p {
  max-width: 560px;
  margin: 0 auto 26px;
  color: var(--miure-final-muted);
  font-size: 16px;
  line-height: 1.7;
}

.miure-contact-card__whatsapp {
  display: inline-flex;
  min-height: 58px;
  padding: 12px 24px;
  align-items: center;
  gap: 13px;
  border: 1px solid #11100f;
  color: #fff !important;
  background: #11100f;
  text-align: left;
  text-decoration: none !important;
}

.miure-contact-card__whatsapp svg {
  width: 25px;
  height: 25px;
  fill: currentColor;
}

.miure-contact-card__whatsapp span { display: grid; gap: 2px; }
.miure-contact-card__whatsapp strong { font-size: 13px; letter-spacing: .04em; }
.miure-contact-card__whatsapp small { color: #d8d4cf; font-size: 11px; }
.miure-contact-card__hours { margin: 20px auto 0 !important; font-size: 13px !important; }

@media (max-width: 560px) {
  .route-common-home .miure-main-nav {
    grid-template-columns: minmax(44px, 1fr) auto minmax(88px, 1fr) !important;
  }

  .miure-contact-card {
    margin: 28px 0 42px;
    padding: 32px 22px;
  }

  .miure-contact-card__whatsapp {
    width: 100%;
    justify-content: center;
  }
}

/* Summer Swirl campaign artwork: preserve the complete supplied horizontal
 * composition on every viewport. The whole artwork remains a shop link. */
html.route-common-home .miure-reference-hero {
  aspect-ratio: 1600 / 866 !important;
  background: #f4eee9 !important;
}

html.route-common-home .miure-reference-hero > img {
  content: url('/image/catalog/miure/miure-summer-swirl-hero.png') !important;
  object-fit: contain !important;
  object-position: center center !important;
}

html.route-common-home .miure-reference-hero__copy {
  pointer-events: none !important;
}

html.route-common-home .miure-reference-actions {
  inset: 0 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  pointer-events: auto !important;
}

html.route-common-home .miure-reference-actions .miure-reference-button:first-child {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
}

html.route-common-home .miure-reference-actions .miure-reference-button:last-child {
  display: none !important;
}

/* Product colour dots are decorative and duplicate unavailable variation UI. */
html.route-common-home .miure-reference-products .miure-swatches {
  display: none !important;
}

/* Journal's one-item auto carousel reserves columns for controls. Present the
 * recommendation as a normal, left-aligned product grid instead. */
html.route-product-product .module-products-868 .product-grid.auto-grid {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
}

html.route-product-product .module-products-868 .auto-grid-items {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(220px, 298px)) !important;
  grid-auto-flow: row !important;
  grid-auto-columns: auto !important;
  justify-content: start !important;
  gap: 20px !important;
  width: 100% !important;
  padding: 0 !important;
}

html.route-product-product .module-products-868 .auto-grid-items > .product-layout {
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
}

html.route-product-product .module-products-868 .auto-carousel-controls {
  display: none !important;
}

@media (max-width: 560px) {
  html.route-product-product .module-products-868 .auto-grid-items {
    grid-template-columns: minmax(0, 1fr) !important;
    grid-auto-flow: row !important;
    grid-auto-columns: auto !important;
  }

  html.route-product-product .module-products-868 .auto-grid-items > .product-layout,
  html.route-product-product .module-products-868 .auto-grid-items > .product-layout > .product-thumb {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }
}

/* Miure mobile navigation replaces Journal's imported demo catalogue. */
.mobile-main-menu-container .miure-mobile-nav {
  display: flex !important;
  flex-direction: column !important;
  min-height: calc(100dvh - 66px) !important;
  padding: 28px 24px 24px !important;
  color: #11100f !important;
  background: #fff !important;
}

.mobile-main-menu-container .miure-mobile-nav__eyebrow {
  margin: 0 0 8px !important;
  color: #79736e !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  letter-spacing: .16em !important;
  text-transform: uppercase !important;
}

.mobile-main-menu-container .miure-mobile-nav__title {
  margin: 0 0 24px !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 29px !important;
  font-weight: 400 !important;
  letter-spacing: -.02em !important;
  line-height: 1 !important;
}

.mobile-main-menu-container .miure-mobile-nav__links,
.desktop-mobile-main-menu-container .miure-mobile-nav__links {
  display: flex !important;
  flex-direction: column !important;
  margin: 0 !important;
  padding: 0 !important;
  border-top: 1px solid #e5e1dc !important;
  list-style: none !important;
}

.mobile-main-menu-container .miure-mobile-nav__links li,
.desktop-mobile-main-menu-container .miure-mobile-nav__links li {
  margin: 0 !important;
  padding: 0 !important;
  border-bottom: 1px solid #e5e1dc !important;
}

.mobile-main-menu-container .miure-mobile-nav__links a,
.desktop-mobile-main-menu-container .miure-mobile-nav__links a {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  min-height: 54px !important;
  padding: 0 32px !important;
  color: #11100f !important;
  background: transparent !important;
  font-size: 14px !important;
  font-weight: 650 !important;
  letter-spacing: .015em !important;
  text-decoration: none !important;
}

.mobile-main-menu-container .miure-mobile-nav__links a::after,
.desktop-mobile-main-menu-container .miure-mobile-nav__links a::after {
  content: "\2192" !important;
  font-size: 17px !important;
  font-weight: 400 !important;
  transition: transform .18s ease !important;
}

.mobile-main-menu-container .miure-mobile-nav__links a:hover::after,
.mobile-main-menu-container .miure-mobile-nav__links a:focus-visible::after,
.desktop-mobile-main-menu-container .miure-mobile-nav__links a:hover::after,
.desktop-mobile-main-menu-container .miure-mobile-nav__links a:focus-visible::after {
  transform: translateX(3px) !important;
}

.mobile-main-menu-container .miure-mobile-nav__support {
  margin-top: auto !important;
  padding-top: 24px !important;
}

.mobile-main-menu-container .miure-mobile-nav__whatsapp {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 48px !important;
  padding: 12px 18px !important;
  border: 1px solid #11100f !important;
  color: #fff !important;
  background: #11100f !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
}

@media (min-width: 821px) {
  .route-common-home .miure-reference-campaign {
    min-height: 0 !important;
    aspect-ratio: 1600 / 800 !important;
    background: #f4f0ec url('/image/catalog/miure/summer-swirl-26-fdf5f463.png') center / contain no-repeat !important;
  }
  .route-common-home .miure-reference-campaign > img,
  .route-common-home .miure-reference-campaign::after,
  .route-common-home .miure-reference-campaign__copy > :not(.miure-reference-button),
  .route-common-home .miure-reference-campaign__offer { display: none !important; }
  .route-common-home .miure-reference-campaign__copy { position: absolute !important; inset: 0 !important; width: 100% !important; padding: 0 !important; }
  .route-common-home .miure-reference-campaign__copy .miure-reference-button {
    position: absolute !important;
    top: 57% !important;
    left: 6.2% !important;
    display: block !important;
    width: 13.5% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    height: 14% !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    color: transparent !important;
    opacity: 0 !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  .route-common-home .miure-menu-drawer,
  .route-common-home .miure-menu-overlay { transition: none !important; }
}

/* Summer Swirl campaign: keep the supplied artwork complete at every width. */
.route-common-home .miure-reference-campaign {
  position: relative !important;
  display: grid !important;
  place-items: center !important;
  box-sizing: border-box !important;
  width: min(calc(100% - 48px), 1320px) !important;
  min-height: 0 !important;
  aspect-ratio: auto !important;
  margin: clamp(32px, 4vw, 64px) auto 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  background: #f3ece9 !important;
}

.route-common-home .miure-reference-campaign > img {
  content: url('/image/catalog/miure/summer-swirl-26-fdf5f463.png') !important;
  position: relative !important;
  inset: auto !important;
  z-index: 1 !important;
  display: block !important;
  width: 100% !important;
  height: auto !important;
  max-width: 100% !important;
  max-height: none !important;
  margin: 0 auto !important;
  aspect-ratio: 1600 / 800 !important;
  object-fit: contain !important;
  object-position: center !important;
}

.route-common-home .miure-reference-campaign::after,
.route-common-home .miure-reference-campaign__copy > :not(.miure-reference-button),
.route-common-home .miure-reference-campaign__offer {
  display: none !important;
}

.route-common-home .miure-reference-campaign__copy {
  position: absolute !important;
  inset: 0 !important;
  z-index: 2 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  padding: 0 !important;
  pointer-events: none !important;
}

.route-common-home .miure-reference-campaign__copy .miure-reference-button {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: transparent !important;
  opacity: 0 !important;
  pointer-events: auto !important;
}

@media (max-width: 820px) {
  .route-common-home .miure-reference-campaign {
    width: calc(100% - 24px) !important;
    margin: 28px 12px 0 !important;
    padding: 0 !important;
  }

  .route-common-home .miure-reference-campaign > img {
    width: 100% !important;
    aspect-ratio: 1600 / 800 !important;
  }
}

/* Keep the desktop campaign editorial and compact without changing its artwork ratio. */
@media (min-width: 821px) {
  .route-common-home .miure-reference-campaign {
    width: min(calc(100% - 48px), 1120px) !important;
  }
}

/* Live OpenCart prices and sale badge on the custom homepage cards. */
.route-common-home .miure-reference-product__price {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: baseline !important;
  gap: 4px 8px !important;
  min-height: 22px !important;
  color: #111 !important;
  font-size: 12px !important;
  line-height: 1.35 !important;
}

.route-common-home .miure-reference-product__price .miure-price-sale {
  font-size: 13px !important;
  font-weight: 700 !important;
}

.route-common-home .miure-reference-product__price del {
  color: #777 !important;
  font-size: 10px !important;
  font-weight: 400 !important;
}

.route-common-home .miure-discount-badge {
  position: absolute !important;
  top: 10px !important;
  left: 10px !important;
  z-index: 4 !important;
  display: inline-flex !important;
  align-items: center !important;
  min-height: 24px !important;
  padding: 5px 8px !important;
  color: #fff !important;
  background: #c8323e !important;
  font-size: 9px !important;
  font-weight: 700 !important;
  letter-spacing: .06em !important;
  line-height: 1 !important;
}

/* Remove the generic NEW label; the active discount is the useful message. */
.route-common-home .miure-reference-product__image > em,
.product-label-29 {
  display: none !important;
}

/*
 * Product-page label guard.
 * Journal renders the Bestseller marker before its product scripts settle,
 * which causes a visible flash and can cover faces in the Also Bought cards.
 * Price labels (including the red 20% OFF label) remain untouched.
 */
html.route-product-product body:not(:has(.miure-reference-home)) .product-labels .product-label.product-label-31,
html.route-product-product .module-products-868 .product-thumb .product-labels,
html.route-product-product .module-products-868 .product-thumb .product-labels-outside {
  display: none !important;
}

/* Journal's native percentage label, restyled as a clear sale-red tag. */
.product-label-297 { display: none !important; }
.product-label-397 {
  padding: 0 !important;
  border: 0 !important;
  color: #fff !important;
  background: #c8323e !important;
  box-shadow: none !important;
}
.product-label-397 strong {
  display: block !important;
  padding: 7px 10px !important;
  color: #fff !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  letter-spacing: .06em !important;
  line-height: 1 !important;
}

#product-product .product-image > .swiper > .product-labels .product-label-29 {
  display: none !important;
}

#product-product .product-image > .swiper > .product-labels .product-label-397,
#product-product .product-image > .swiper > .product-labels .product-label-397 strong {
  color: #fff !important;
  background: #c8323e !important;
}

/* Accessible S / M / L buttons backed by the original OpenCart select. */
html.route-product-product #product-product .miure-size-enhanced {
  position: relative !important;
}

html.route-product-product #product-product .miure-size-enhanced > select {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

html.route-product-product #product-product .miure-size-buttons {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
  margin-top: 12px !important;
}

html.route-product-product #product-product .miure-size-button {
  display: inline-grid !important;
  place-items: center !important;
  width: 52px !important;
  height: 52px !important;
  padding: 0 !important;
  border: 1px solid #bbb !important;
  border-radius: 3px !important;
  color: #111 !important;
  background: #fff !important;
  font: 600 14px/1 Arial, sans-serif !important;
  box-shadow: none !important;
  cursor: pointer !important;
  transition: color .18s ease, background-color .18s ease, border-color .18s ease !important;
}

html.route-product-product #product-product .miure-size-button:hover,
html.route-product-product #product-product .miure-size-button:focus-visible {
  border-color: #111 !important;
  outline: 2px solid transparent !important;
}

html.route-product-product #product-product .miure-size-button.is-selected,
html.route-product-product #product-product .miure-size-button[aria-pressed="true"] {
  border-color: #111 !important;
  color: #fff !important;
  background: #111 !important;
}

@media (max-width: 560px) {
  html.route-product-product #product-product .miure-size-button {
    width: 48px !important;
    height: 48px !important;
  }
}

/* Keep product additional images in one horizontal, swipeable row. */
html.route-product-product #product-product .product-left-wrapper .additional-images {
  display: flex !important;
  flex-flow: row nowrap !important;
  grid-template-columns: none !important;
  gap: 12px !important;
  width: 100% !important;
  height: auto !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  overscroll-behavior-x: contain;
  scroll-snap-type: x proximity;
  scrollbar-width: thin;
}

html.route-product-product #product-product .product-left-wrapper .additional-images .additional-image {
  flex: 0 0 calc((100% - 12px) / 2) !important;
  width: auto !important;
  height: auto !important;
  min-height: 0 !important;
  aspect-ratio: auto !important;
  scroll-snap-align: start;
}

@media (max-width: 760px) {
  html.route-product-product #product-product .product-left-wrapper .additional-images {
    gap: 8px !important;
  }

  html.route-product-product #product-product .product-left-wrapper .additional-images .additional-image {
    flex-basis: calc((100% - 8px) / 2) !important;
  }
}

/* Catalogue photography must determine its own height. Journal's generated
 * square thumbnails and forced ratios created false bands above and below the
 * portrait clothing images. The first photo now renders at its native ratio;
 * the optional hover photo remains an overlay and never changes card height. */
html.route-product-catalog .main-products .product-thumb .image-group,
html.route-product-catalog .main-products .product-thumb .image,
html.route-product-catalog .main-products .product-thumb .product-img,
html.route-product-catalog .main-products .product-thumb .product-img > div {
  width: 100% !important;
  max-width: none !important;
  height: auto !important;
  min-height: 0 !important;
  aspect-ratio: auto !important;
  margin: 0 !important;
  padding: 0 !important;
}

html.route-product-catalog .main-products .product-thumb .image-group,
html.route-product-catalog .main-products .product-thumb .image {
  overflow: visible !important;
  background: transparent !important;
}

html.route-product-catalog .main-products .product-thumb .product-img {
  position: relative !important;
  display: block !important;
  overflow: hidden !important;
  line-height: 0 !important;
  background: #f8f3f0 !important;
}

html.route-product-catalog .main-products .product-thumb .product-img > div {
  position: relative !important;
  display: block !important;
  line-height: 0 !important;
}

html.route-product-catalog .main-products .product-thumb .product-img img.img-first,
html.route-product-catalog .main-products .product-thumb .product-img img:first-child {
  position: relative !important;
  inset: auto !important;
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  height: auto !important;
  min-height: 0 !important;
  aspect-ratio: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  object-fit: initial !important;
  object-position: initial !important;
}

html.route-product-catalog .main-products .product-thumb .product-img img.img-second {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  aspect-ratio: auto !important;
  object-fit: contain !important;
  object-position: center !important;
}

html.route-product-catalog .main-products .product-thumb .product-img .miure-catalog-discount-badge {
  top: 10px !important;
  left: 10px !important;
}

@media (max-width: 760px) {
  html.route-product-catalog .main-products.product-list .product-thumb .product-img img.img-second {
    display: none !important;
  }
}

/* Product lightbox: display the complete portrait photograph inside the
 * available viewport. The source normalization in footer.twig supplies the
 * uncropped original; these rules prevent theme/global image rules cropping it. */
.lg-outer.lg-product-images .lg-img-wrap {
  padding: 10px 12px !important;
  box-sizing: border-box !important;
}

.lg-outer.lg-product-images img.lg-object.lg-image {
  width: auto !important;
  height: auto !important;
  max-width: 100% !important;
  max-height: 100% !important;
  object-fit: contain !important;
  object-position: center center !important;
}

/* Checkout methods: replace OpenCart's modal Choose controls with immediate,
 * accessible radio options while retaining its hidden method state fields. */
html.route-checkout-checkout .miure-native-method-controls > .input-group {
  display: none !important;
}

html.route-checkout-checkout .miure-method-list {
  display: grid !important;
  gap: 10px !important;
  margin: 10px 0 4px !important;
}

html.route-checkout-checkout .miure-method-option {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  width: 100% !important;
  min-height: 58px !important;
  margin: 0 !important;
  padding: 12px 14px !important;
  color: #211f1d !important;
  background: #fff !important;
  border: 1px solid #ded8d3 !important;
  border-radius: 4px !important;
  cursor: pointer !important;
}

html.route-checkout-checkout .miure-method-option:has(input:checked) {
  border-color: #11100f !important;
  box-shadow: 0 0 0 1px #11100f !important;
}

html.route-checkout-checkout .miure-method-option input[type="radio"] {
  flex: 0 0 18px !important;
  width: 18px !important;
  height: 18px !important;
  margin: 0 !important;
  accent-color: #11100f !important;
}

html.route-checkout-checkout .miure-method-copy {
  display: flex !important;
  flex: 1 1 auto !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
}

html.route-checkout-checkout .miure-method-copy strong {
  font-size: 13px !important;
  font-weight: 700 !important;
}

html.route-checkout-checkout .miure-method-copy small {
  color: #706a65 !important;
  font-size: 11px !important;
  line-height: 1.35 !important;
  text-align: right !important;
}

html.route-checkout-checkout .miure-method-list.is-loading {
  opacity: .55 !important;
  pointer-events: none !important;
}

html.route-checkout-checkout .miure-bank-transfer-details[hidden] {
  display: none !important;
}

html.route-checkout-checkout .miure-bank-transfer-details {
  margin: 2px 0 4px !important;
  padding: 18px !important;
  color: #211f1d !important;
  background: #faf7f4 !important;
  border: 1px solid #ded8d3 !important;
  border-radius: 4px !important;
}

html.route-checkout-checkout .miure-bank-transfer-details h3 {
  margin: 0 0 14px !important;
  color: #11100f !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  letter-spacing: .04em !important;
  text-transform: uppercase !important;
}

html.route-checkout-checkout .miure-bank-transfer-details dl {
  display: grid !important;
  gap: 9px !important;
  margin: 0 !important;
}

html.route-checkout-checkout .miure-bank-transfer-details dl > div {
  display: grid !important;
  grid-template-columns: 118px minmax(0, 1fr) !important;
  gap: 12px !important;
}

html.route-checkout-checkout .miure-bank-transfer-details dt,
html.route-checkout-checkout .miure-bank-transfer-details dd {
  margin: 0 !important;
  font-size: 12px !important;
  line-height: 1.45 !important;
}

html.route-checkout-checkout .miure-bank-transfer-details dt {
  color: #706a65 !important;
  font-weight: 500 !important;
}

html.route-checkout-checkout .miure-bank-transfer-details dd {
  overflow-wrap: anywhere !important;
  color: #11100f !important;
  font-weight: 700 !important;
}

html.route-checkout-checkout .miure-bank-transfer-details p {
  margin: 15px 0 8px !important;
  padding-top: 13px !important;
  color: #514c47 !important;
  border-top: 1px solid #e4ded9 !important;
  font-size: 12px !important;
  line-height: 1.5 !important;
}

html.route-checkout-checkout .miure-bank-transfer-details a {
  display: inline-flex !important;
  align-items: center !important;
  min-height: 38px !important;
  padding: 9px 13px !important;
  color: #fff !important;
  background: #11100f !important;
  border-radius: 3px !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  text-decoration: none !important;
}

@media (max-width: 520px) {
  html.route-checkout-checkout .miure-method-copy {
    align-items: flex-start !important;
    flex-direction: column !important;
    gap: 3px !important;
  }

  html.route-checkout-checkout .miure-method-copy small {
    text-align: left !important;
  }

  html.route-checkout-checkout .miure-bank-transfer-details {
    padding: 15px !important;
  }

  html.route-checkout-checkout .miure-bank-transfer-details dl > div {
    grid-template-columns: 1fr !important;
    gap: 1px !important;
  }

  html.route-checkout-checkout .miure-bank-transfer-details a {
    justify-content: center !important;
    width: 100% !important;
  }
}

/* 2026-08-16 catalogue and homepage cleanup.
 * Journal exposes several demo label systems simultaneously. Only the
 * admin-backed 20% offer is useful to customers, so the catalogue receives
 * one stable image badge and no Bestseller/New/custom-label overlays. */
html.route-product-catalog .product-thumb .product-labels,
html.route-product-catalog .product-thumb .product-labels-outside,
html.route-product-catalog .product-thumb .product-labels-price {
  display: none !important;
}

html.route-product-catalog .product-thumb .product-label {
  display: none !important;
}

html.route-product-catalog .product-thumb .image {
  position: relative !important;
  aspect-ratio: 1 / 1 !important;
  min-height: 0 !important;
  height: auto !important;
}

html.route-product-catalog .product-thumb .product-img,
html.route-product-catalog .product-thumb .product-img > div,
html.route-product-catalog .product-thumb .product-img img {
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  aspect-ratio: 1 / 1 !important;
}

html.route-product-catalog .product-thumb .product-img img {
  object-fit: contain !important;
  object-position: center top !important;
}

html.route-product-catalog .product-thumb .miure-catalog-discount-badge {
  position: absolute !important;
  top: 10px !important;
  left: 10px !important;
  z-index: 8 !important;
  display: inline-flex !important;
  align-items: center !important;
  min-height: 24px !important;
  padding: 5px 8px !important;
  border: 0 !important;
  border-radius: 0 !important;
  color: #fff !important;
  background: #c8323e !important;
  box-shadow: none !important;
  font: 700 9px/1 Arial, sans-serif !important;
  letter-spacing: .06em !important;
  text-transform: uppercase !important;
}

/* Compact, legible catalogue action: icon and text stay separated. */
html.route-product-catalog .product-thumb .cart-group {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
}

html.route-product-catalog .product-thumb .btn-cart {
  display: inline-flex !important;
  flex: 0 1 132px !important;
  gap: 8px !important;
  width: auto !important;
  max-width: 132px !important;
  min-width: 0 !important;
  min-height: 40px !important;
  height: 40px !important;
  padding: 0 13px !important;
  justify-content: center !important;
  white-space: nowrap !important;
}

html.route-product-catalog .product-thumb .btn-cart::before {
  position: static !important;
  flex: 0 0 auto !important;
  margin: 0 !important;
  color: currentColor !important;
  opacity: 1 !important;
}

html.route-product-catalog .product-thumb .btn-cart .btn-text {
  display: block !important;
  min-width: 0 !important;
  overflow: hidden !important;
  font-size: 11px !important;
  line-height: 1 !important;
  text-overflow: clip !important;
  white-space: nowrap !important;
}

/* Homepage should flow directly from the hero into New Arrivals. */
html.route-common-home .miure-reference-collections {
  display: none !important;
}

/* The truck overlay is decorative duplication, not a product action. */
html.route-common-home .miure-reference-product__image > b {
  display: none !important;
}

@media (max-width: 560px) {
  html.route-product-catalog .product-thumb .btn-cart {
    flex-basis: 124px !important;
    max-width: 124px !important;
    padding-inline: 11px !important;
  }
}

/* Refined catalogue action rail: one clear primary action and two consistent
 * secondary controls with real touch targets. */
html.route-product-catalog .product-thumb .buttons-wrapper {
  width: 100% !important;
  margin: 14px 0 0 !important;
  padding: 14px 0 0 !important;
  border-top: 1px solid #e5e1dc !important;
}

html.route-product-catalog .product-thumb .button-group {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: 10px !important;
  width: 100% !important;
  height: auto !important;
  min-height: 44px !important;
  margin: 0 !important;
  padding: 0 !important;
}

html.route-product-catalog .product-thumb .cart-group {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
}

html.route-product-catalog .product-thumb .cart-group .stepper {
  display: none !important;
}

html.route-product-catalog .product-thumb .btn-cart {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  height: 44px !important;
  min-height: 44px !important;
  padding: 0 16px !important;
  border: 1px solid #11100f !important;
  border-radius: 2px !important;
  color: #fff !important;
  background: #11100f !important;
  box-shadow: none !important;
  font-weight: 700 !important;
  letter-spacing: .025em !important;
  transition: color .18s ease, background-color .18s ease, transform .18s ease !important;
}

html.route-product-catalog .product-thumb .btn-cart:hover,
html.route-product-catalog .product-thumb .btn-cart:focus-visible {
  color: #11100f !important;
  background: #fff !important;
  transform: translateY(-1px);
}

html.route-product-catalog .product-thumb .wish-group {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  width: auto !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
}

html.route-product-catalog .product-thumb .btn-wishlist,
html.route-product-catalog .product-thumb .btn-compare {
  position: relative !important;
  display: inline-flex !important;
  flex: 0 0 44px !important;
  align-items: center !important;
  justify-content: center !important;
  width: 44px !important;
  min-width: 44px !important;
  height: 44px !important;
  min-height: 44px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 1px solid #d8d4cf !important;
  border-radius: 50% !important;
  color: #11100f !important;
  background: #fff !important;
  box-shadow: none !important;
  font-size: 17px !important;
  transition: color .18s ease, background-color .18s ease, border-color .18s ease, transform .18s ease !important;
}

html.route-product-catalog .product-thumb .btn-wishlist:hover,
html.route-product-catalog .product-thumb .btn-wishlist:focus-visible,
html.route-product-catalog .product-thumb .btn-compare:hover,
html.route-product-catalog .product-thumb .btn-compare:focus-visible {
  border-color: #11100f !important;
  color: #fff !important;
  background: #11100f !important;
  transform: translateY(-1px);
}

html.route-product-catalog .product-thumb .btn-wishlist .btn-text,
html.route-product-catalog .product-thumb .btn-compare .btn-text {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

@media (max-width: 560px) {
  html.route-product-catalog .product-thumb .button-group {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 10px !important;
  }

  html.route-product-catalog .product-thumb .btn-cart {
    width: 100% !important;
    max-width: none !important;
    padding-inline: 10px !important;
    font-size: 10px !important;
  }

  html.route-product-catalog .product-thumb .wish-group {
    justify-content: center !important;
  }

  html.route-product-catalog .product-thumb .btn-wishlist,
  html.route-product-catalog .product-thumb .btn-compare {
    flex-basis: 42px !important;
    width: 42px !important;
    min-width: 42px !important;
    height: 42px !important;
    min-height: 42px !important;
  }
}

/* 2026-08-17 product-detail regression guard. Journal's gallery JavaScript
 * assigns a portrait frame to square product assets. Let every frame follow
 * the real image ratio instead, so no artificial bars remain. */
html.route-product-product #product-product .product-image .main-image,
html.route-product-product #product-product .product-image .main-image > .swiper-container,
html.route-product-product #product-product .product-image .main-image .swiper-wrapper,
html.route-product-product #product-product .product-image .main-image .swiper-slide {
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  padding: 0 !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

html.route-product-product #product-product .product-image .main-image {
  aspect-ratio: 1 / 1 !important;
  overflow: hidden !important;
}

html.route-product-product #product-product .product-image .main-image,
html.route-product-product #product-product .product-image .main-image > .swiper-container,
html.route-product-product #product-product .product-image .main-image .swiper-slide,
html.route-product-product #product-product .product-image .main-image .swiper-slide > img {
  border: 0 !important;
}

html.route-product-product #product-product .product-image .main-image .swiper-slide {
  align-items: flex-start !important;
}

html.route-product-product #product-product .product-image .main-image .swiper-slide > img,
html.route-product-product #product-product .product-image .main-image .swiper-slide > a,
html.route-product-product #product-product .product-image .main-image .swiper-slide > a > img {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 0 !important;
  object-fit: fill !important;
  object-position: center top !important;
}

/* Remove internal merchandising/admin data requested by the client. */
html.route-product-product #product-product .countdown-wrapper,
html.route-product-product #product-product .product-tax,
html.route-product-product #product-product .product-stats {
  display: none !important;
}

/* Contact page: remove Journal's map module and its fixed-height parent row. */
html.route-information-contact #top .grid-row-top-2,
html.route-information-contact #top .module-blocks-104,
html.route-information-contact #top .block-map {
  display: none !important;
}

html.route-information-contact #top,
html.route-information-contact #top > .grid-rows {
  min-height: 0 !important;
  height: auto !important;
}

/* Product page: keep a compact handoff from product details to Also Bought. */
html.route-product-product #product-product {
  margin-bottom: 0 !important;
}

html.route-product-product #product-product > .row > #content.col-sm-12 {
  padding-bottom: 16px !important;
}

html.route-product-product .bottom-row .grid-row-bottom-1 {
  padding-top: 24px !important;
}

/* 2026-08-19 release-blocking storefront corrections. */
header #logo h1 a,
header #logo h1 a:link,
.mobile-header #logo h1 a {
  color: transparent !important;
  font-size: 0 !important;
  line-height: 0 !important;
  text-indent: -9999px !important;
  overflow: hidden !important;
}

html.route-product-product #product-product .product-image .main-image {
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  aspect-ratio: 2 / 3 !important;
  overflow: hidden !important;
  background: #f8f3f0 !important;
}

html.route-product-product #product-product .product-image .main-image > .swiper-container,
html.route-product-product #product-product .product-image .main-image .swiper-wrapper,
html.route-product-product #product-product .product-image .main-image .swiper-slide {
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  max-height: none !important;
  aspect-ratio: 2 / 3 !important;
  transition: none !important;
  animation: none !important;
}

html.route-product-product #product-product .product-image .main-image .swiper-slide {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: #f8f3f0 !important;
}

html.route-product-product #product-product .product-image .main-image .swiper-slide > img,
html.route-product-product #product-product .product-image .main-image .swiper-slide > a > img,
html.route-product-product .module-products .product-thumb .product-img img,
html.route-product-catalog .product-thumb .product-img img {
  object-fit: contain !important;
  object-position: center center !important;
}

html.route-product-product #product-product .product-image .main-image .swiper-slide > img,
html.route-product-product #product-product .product-image .main-image .swiper-slide > a,
html.route-product-product #product-product .product-image .main-image .swiper-slide > a > img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  max-height: none !important;
  aspect-ratio: 2 / 3 !important;
  transition: none !important;
  animation: none !important;
}

html.route-product-product #product-product .product-image .additional-image,
html.route-product-product #product-product .product-image .additional-image img {
  transition: none !important;
  animation: none !important;
}

/* Match Journal's final desktop gallery frame before its JavaScript starts.
 * This prevents the first portrait-ratio frame from collapsing after load. */
@media (min-width: 761px) {
  html.route-product-product #product-product .product-info {
    --miure-gallery-height: clamp(560px, calc(100vh - 220px), 710px);
    --miure-gallery-width: clamp(373.333px, calc(66.6667vh - 146.667px), 473.333px);
  }

  html.route-product-product #product-product .product-left {
    flex: 0 0 var(--miure-gallery-width) !important;
    width: var(--miure-gallery-width) !important;
    min-width: 0 !important;
    max-width: var(--miure-gallery-width) !important;
  }

  html.route-product-product #product-product .product-left-wrapper,
  html.route-product-product #product-product .product-image,
  html.route-product-product #product-product .product-image .main-image {
    width: 100% !important;
    max-width: 100% !important;
  }

  html.route-product-product #product-product .product-right {
    flex: 1 1 0 !important;
    min-width: 0 !important;
  }

  html.route-product-product #product-product .product-image .main-image,
  html.route-product-product #product-product .product-image .main-image > .swiper-container,
  html.route-product-product #product-product .product-image .main-image .swiper-wrapper,
  html.route-product-product #product-product .product-image .main-image .swiper-slide {
    height: var(--miure-gallery-height) !important;
    min-height: 560px !important;
    max-height: 710px !important;
    aspect-ratio: auto !important;
  }
}

html.route-product-product .module-products .product-thumb .image {
  aspect-ratio: 2 / 3 !important;
  background: #f8f3f0 !important;
}

html.route-product-product .module-products-868 .product-thumb .image,
html.route-product-product .module-products-868 .product-thumb .product-img,
html.route-product-product .module-products-868 .product-thumb .product-img > div {
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  aspect-ratio: 2 / 3 !important;
  padding: 0 !important;
  margin: 0 !important;
  overflow: hidden !important;
  background: #f8f3f0 !important;
}

html.route-product-product .module-products-868 .product-thumb .product-img img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  aspect-ratio: 2 / 3 !important;
  margin: 0 !important;
  padding: 0 !important;
  object-fit: contain !important;
  object-position: center !important;
}

html.route-product-product .a2a_button_email {
  display: none !important;
}

html.route-product-catalog .main-products .extra-group,
html.route-product-catalog .main-products .btn-extra-46,
html.route-product-catalog .main-products .btn-extra-93 {
  display: none !important;
}

html.route-common-home .miure-reference-campaign__copy .miure-reference-button {
  display: none !important;
  pointer-events: none !important;
}

body:not(:has(.miure-reference-home)) footer,
body:not(:has(.miure-reference-home)) footer .grid-rows,
body:not(:has(.miure-reference-home)) footer .grid-row-5,
body:not(:has(.miure-reference-home)) footer .grid-row-5 > .row-bg,
body:not(:has(.miure-reference-home)) footer .grid-row-5 .grid-cols-wrapper,
body:not(:has(.miure-reference-home)) footer .grid-row-5 .grid-cols,
body:not(:has(.miure-reference-home)) footer .grid-row-5 .grid-col,
body:not(:has(.miure-reference-home)) footer .grid-row-5 .grid-items,
body:not(:has(.miure-reference-home)) footer .grid-row-5 .grid-item,
body:not(:has(.miure-reference-home)) footer .grid-row-6,
body:not(:has(.miure-reference-home)) footer .grid-row-6 > .row-bg {
  background: #f7f4f1 !important;
}

body:not(:has(.miure-reference-home)) footer .grid-row-5 .module-image a {
  background-color: transparent !important;
}

body:not(:has(.miure-reference-home)) footer:not(.miure-shared-footer) {
  display: none !important;
}

body:has(.miure-reference-home) .miure-reference-home > footer.miure-reference-footer {
  display: none !important;
}

body:has(.miure-reference-home) .miure-shared-footer {
  display: grid !important;
}

.miure-shared-footer {
  display: grid !important;
  grid-template-columns: minmax(240px, 1.4fr) repeat(2, minmax(180px, 1fr)) !important;
  gap: 30px !important;
  margin: 0 !important;
  padding: 30px clamp(24px, 5vw, 56px) 18px !important;
  color: #11100f !important;
  background: #f7f4f1 !important;
  border-top: 1px solid #e6dfda !important;
  font-size: 14px !important;
  line-height: 1.5 !important;
}

footer.miure-reference-footer.miure-shared-footer {
  background: #f7f4f1 !important;
}

.miure-shared-footer > div:not(.miure-reference-footer__brand):not(.miure-reference-footer__bottom) {
  display: flex !important;
  flex-direction: column !important;
  gap: 8px !important;
  background: transparent !important;
}

.miure-shared-footer strong {
  margin-bottom: 4px !important;
  color: #11100f !important;
  font-size: 12px !important;
  line-height: 1.5 !important;
  letter-spacing: .06em !important;
  text-transform: uppercase !important;
}

.miure-shared-footer a {
  color: #615d59 !important;
  font-size: 14px !important;
  line-height: 1.65 !important;
}

.miure-shared-footer .miure-reference-footer__brand p {
  max-width: 210px !important;
  margin: 14px 0 0 !important;
  color: #615d59 !important;
  font-size: 13px !important;
  line-height: 1.55 !important;
}

footer.miure-reference-footer.miure-shared-footer .miure-reference-footer__brand {
  background: #f7f4f1 !important;
  box-shadow: none !important;
}

.miure-shared-footer .miure-reference-footer__logo {
  display: block !important;
  position: relative !important;
  width: 150px !important;
  height: auto !important;
  aspect-ratio: auto !important;
  overflow: hidden !important;
  background: transparent !important;
}

.miure-shared-footer .miure-reference-footer__logo img {
  position: static !important;
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  object-fit: contain !important;
  object-position: left center !important;
  transform: none !important;
  background: transparent !important;
  image-rendering: auto !important;
}

.miure-reference-instagram {
  grid-template-columns: minmax(0, 1fr) !important;
}

.miure-reference-instagram__grid {
  display: none !important;
}

.a2a_kit .miure-share-instagram {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 32px !important;
  height: 32px !important;
  margin-right: 4px !important;
  color: #fff !important;
  background: #999 !important;
  border-radius: 3px !important;
  font-size: 20px !important;
  text-decoration: none !important;
}

html.route-common-home .miure-reference-product__image > i svg {
  display: block !important;
}

/* Checkout consent: one clear, accessible tap target instead of loose text
 * and a detached browser-default checkbox. */
html.route-checkout-checkout .miure-agreement-actions {
  margin: 18px 0 0 !important;
}

html.route-checkout-checkout .miure-agreement-actions > .pull-right {
  float: none !important;
  display: grid !important;
  gap: 16px !important;
  width: 100% !important;
}

html.route-checkout-checkout .miure-terms-consent {
  display: grid !important;
  grid-template-columns: 24px minmax(0, 1fr) !important;
  align-items: start !important;
  gap: 12px !important;
  width: 100% !important;
  min-height: 52px !important;
  margin: 0 !important;
  padding: 15px 16px !important;
  color: #2f2c29 !important;
  background: #faf8f6 !important;
  border: 1px solid #ddd7d1 !important;
  border-radius: 8px !important;
  cursor: pointer !important;
  line-height: 1.55 !important;
}

html.route-checkout-checkout .miure-terms-consent input {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  opacity: 0 !important;
}

html.route-checkout-checkout .miure-terms-check {
  display: grid !important;
  width: 24px !important;
  height: 24px !important;
  place-items: center !important;
  margin-top: 1px !important;
  background: #fff !important;
  border: 1.5px solid #8b8580 !important;
  border-radius: 5px !important;
  transition: background-color .16s ease, border-color .16s ease !important;
}

html.route-checkout-checkout .miure-terms-consent input:checked + .miure-terms-check {
  background: #171615 !important;
  border-color: #171615 !important;
}

html.route-checkout-checkout .miure-terms-consent input:checked + .miure-terms-check::after {
  content: "" !important;
  width: 10px !important;
  height: 6px !important;
  border: solid #fff !important;
  border-width: 0 0 2px 2px !important;
  transform: rotate(-45deg) translateY(-1px) !important;
}

html.route-checkout-checkout .miure-terms-consent input:focus-visible + .miure-terms-check {
  outline: 3px solid rgba(23, 22, 21, .2) !important;
  outline-offset: 2px !important;
}

html.route-checkout-checkout .miure-terms-copy {
  min-width: 0 !important;
  color: #625d58 !important;
  font-size: 14px !important;
}

html.route-checkout-checkout .miure-terms-copy a {
  color: #171615 !important;
  font-weight: 700 !important;
  text-decoration: underline !important;
  text-decoration-thickness: 1px !important;
  text-underline-offset: 3px !important;
}

/* Checkout order summary: quiet editorial card with hierarchy instead of a
 * spreadsheet-like bordered table. */
html.route-checkout-checkout .miure-order-summary {
  overflow: hidden !important;
  margin: 0 0 24px !important;
  color: #211f1d !important;
  background: #fff !important;
  border: 1px solid #ddd7d1 !important;
  border-radius: 12px !important;
  box-shadow: 0 12px 32px rgba(47, 40, 34, .07) !important;
}

html.route-checkout-checkout .miure-order-summary__heading {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 20px !important;
  padding: 17px 20px !important;
  background: #f7f4f1 !important;
  border-bottom: 1px solid #e6e0da !important;
  font-size: 11px !important;
  font-weight: 750 !important;
  letter-spacing: .1em !important;
  text-transform: uppercase !important;
}

html.route-checkout-checkout .miure-order-summary__product {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: start !important;
  gap: 20px !important;
  padding: 20px !important;
  border-bottom: 1px solid #eee9e4 !important;
}

html.route-checkout-checkout .miure-order-summary__product-copy {
  display: grid !important;
  gap: 4px !important;
  min-width: 0 !important;
}

html.route-checkout-checkout .miure-order-summary__name {
  color: #171615 !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  line-height: 1.35 !important;
}

html.route-checkout-checkout .miure-order-summary__quantity,
html.route-checkout-checkout .miure-order-summary__option {
  color: #77716c !important;
  font-size: 12px !important;
  line-height: 1.45 !important;
}

html.route-checkout-checkout .miure-order-summary__amount {
  color: #171615 !important;
  font-size: 14px !important;
  font-weight: 650 !important;
  white-space: nowrap !important;
}

html.route-checkout-checkout .miure-order-summary__totals {
  padding: 10px 20px 14px !important;
  background: #fbfaf8 !important;
}

html.route-checkout-checkout .miure-order-summary__total {
  display: flex !important;
  align-items: baseline !important;
  justify-content: space-between !important;
  gap: 24px !important;
  padding: 10px 0 !important;
  color: #625d58 !important;
  font-size: 13px !important;
}

html.route-checkout-checkout .miure-order-summary__total strong {
  color: #292623 !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  white-space: nowrap !important;
}

html.route-checkout-checkout .miure-order-summary__total.is-grand-total {
  margin-top: 4px !important;
  padding-top: 15px !important;
  color: #171615 !important;
  border-top: 1px solid #d8d1ca !important;
  font-size: 16px !important;
  font-weight: 750 !important;
}

html.route-checkout-checkout .miure-order-summary__total.is-grand-total strong {
  color: #171615 !important;
  font-size: 18px !important;
  font-weight: 750 !important;
}

@media (max-width: 560px) {
  html.route-checkout-checkout .miure-terms-consent {
    padding: 14px !important;
  }

  html.route-checkout-checkout .miure-order-summary__heading,
  html.route-checkout-checkout .miure-order-summary__product,
  html.route-checkout-checkout .miure-order-summary__totals {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }
}

.miure-shared-footer .miure-reference-footer__bottom {
  grid-column: 1 / -1 !important;
  display: flex !important;
  justify-content: space-between !important;
  gap: 20px !important;
  padding-top: 16px !important;
  color: #77716d !important;
  background: transparent !important;
  border-top: 1px solid #e6dfda !important;
  font-size: 9px !important;
  line-height: 1.5 !important;
  letter-spacing: .06em !important;
  text-transform: uppercase !important;
}

@media (max-width: 760px) {
  html.route-product-catalog .main-products.product-list .product-thumb {
    display: block !important;
    width: 100% !important;
  }

  html.route-product-catalog .main-products.product-list .product-thumb .image-group,
  html.route-product-catalog .main-products.product-list .product-thumb .image,
  html.route-product-catalog .main-products.product-list .product-thumb .product-img,
  html.route-product-catalog .main-products.product-list .product-thumb .product-img > div {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    height: auto !important;
    min-height: 0 !important;
    aspect-ratio: 2 / 3 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    background: #f8f3f0 !important;
  }

  html.route-product-catalog .main-products.product-list .product-thumb .product-img img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    min-height: 0 !important;
    aspect-ratio: 2 / 3 !important;
    margin: 0 !important;
    padding: 0 !important;
    object-fit: contain !important;
    object-position: center !important;
  }

  html.route-product-catalog .main-products.product-list .product-thumb .caption {
    width: 100% !important;
    padding: 18px 16px !important;
  }

  .miure-shared-footer {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 26px 18px !important;
    padding: 30px 18px 84px !important;
  }

  .miure-shared-footer .miure-reference-footer__brand,
  .miure-shared-footer .miure-reference-footer__bottom {
    grid-column: 1 / -1 !important;
  }

  .miure-shared-footer .miure-reference-footer__bottom {
    flex-direction: column !important;
    gap: 8px !important;
  }

  body:not(:has(.miure-reference-home)) footer .grid-row-5 .grid-cols {
    grid-template-columns: 1fr !important;
    gap: 24px !important;
  }

  body:not(:has(.miure-reference-home)) footer .grid-row-5 .catalog-grid .auto-grid-items {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 22px 18px !important;
  }
}

/* Final catalogue ratio override: keep this after Journal/list-view rules. */
html.route-product-catalog .main-products .product-thumb .image-group,
html.route-product-catalog .main-products .product-thumb .image,
html.route-product-catalog .main-products .product-thumb .product-img,
html.route-product-catalog .main-products .product-thumb .product-img > div {
  width: 100% !important;
  max-width: none !important;
  height: auto !important;
  min-height: 0 !important;
  aspect-ratio: auto !important;
  margin: 0 !important;
  padding: 0 !important;
}

html.route-product-catalog .main-products .product-thumb .image-group,
html.route-product-catalog .main-products .product-thumb .image {
  overflow: visible !important;
  background: transparent !important;
}

html.route-product-catalog .main-products .product-thumb .product-img,
html.route-product-catalog .main-products .product-thumb .product-img > div {
  position: relative !important;
  display: block !important;
  overflow: hidden !important;
  line-height: 0 !important;
  background: #f8f3f0 !important;
}

html.route-product-catalog .main-products .product-thumb .product-img img.img-first,
html.route-product-catalog .main-products .product-thumb .product-img img:first-child {
  position: relative !important;
  inset: auto !important;
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  height: auto !important;
  min-height: 0 !important;
  aspect-ratio: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  object-fit: initial !important;
  object-position: initial !important;
}

html.route-product-catalog .main-products .product-thumb .product-img img.img-second {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  aspect-ratio: auto !important;
  object-fit: contain !important;
  object-position: center !important;
}

@media (max-width: 760px) {
  html.route-product-catalog .main-products.product-list .product-thumb .product-img img.img-second {
    display: none !important;
  }
}

/* Product social sharing: preserve each platform's recognizable brand colour. */
.a2a_kit.miure-social-brand-icons {
  align-items: center;
  gap: 8px;
  line-height: 1 !important;
}

.a2a_kit.miure-social-brand-icons > a {
  display: inline-flex !important;
  float: none !important;
  width: 36px !important;
  height: 36px !important;
  padding: 0 !important;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  border-radius: 9px;
  filter: none !important;
  opacity: 1 !important;
  transform: none !important;
  transition: transform 180ms ease, box-shadow 180ms ease;
}

.a2a_kit.miure-social-brand-icons > a:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 5px 12px rgba(17, 16, 15, .18);
}

.a2a_kit.miure-social-brand-icons > a:focus-visible {
  outline: 2px solid #633d82;
  outline-offset: 3px;
}

.a2a_kit.miure-social-brand-icons .a2a_svg {
  float: none !important;
  width: 36px !important;
  height: 36px !important;
  border-radius: 9px !important;
}

.a2a_kit.miure-social-brand-icons .a2a_s_facebook {
  background-color: #1877f2 !important;
}

.a2a_kit.miure-social-brand-icons .a2a_s_whatsapp {
  background-color: #25d366 !important;
}

.a2a_kit.miure-social-brand-icons .miure-share-instagram {
  color: #fff !important;
  background: radial-gradient(circle at 30% 107%, #ffd600 0 5%, #ff7a00 28%, #ff0169 52%, #d300c5 72%, #7638fa 100%) !important;
}

.a2a_kit.miure-social-brand-icons .miure-share-instagram svg {
  display: block;
  width: 30px;
  height: 30px;
}

.miure-share-status {
  position: fixed;
  z-index: 22000;
  left: 50%;
  bottom: 24px;
  max-width: min(420px, calc(100vw - 32px));
  padding: 12px 16px;
  color: #fff;
  background: #11100f;
  border-radius: 4px;
  box-shadow: 0 10px 30px rgba(17, 16, 15, .24);
  font-size: 14px;
  font-weight: 600;
  line-height: 1.4;
  text-align: center;
  transform: translateX(-50%);
}

.miure-share-status[hidden] {
  display: none !important;
}

@media (prefers-reduced-motion: reduce) {
  .a2a_kit.miure-social-brand-icons > a {
    transition: none;
  }
}

/* The wishlist should contain only wishlist content. Journal injects its
   account accordion through the column-right layout independently of Twig. */
html.route-account-wishlist #account-wishlist > .row > #column-right {
  display: none !important;
}

html.route-account-wishlist #account-wishlist > .row > #content {
  flex: 0 0 100% !important;
  width: 100% !important;
  max-width: 100% !important;
}

/* Keep the returns page focused on the customer's return records and actions.
   Journal injects the account accordion through the shared right column. */
html.route-account-returns #account-return > .row > #column-right {
  display: none !important;
}

html.route-account-returns #account-return > .row > #content {
  flex: 0 0 100% !important;
  width: 100% !important;
  max-width: 100% !important;
}

/* Standalone Returns & Exchanges information page. The supplied policy copy
   remains in OpenCart; this layer provides a focused, readable presentation. */
html.route-information-information #information-information #content:has(.miure-returns-policy) {
  flex: 0 0 100%;
  width: 100%;
  max-width: 1120px;
  margin: 0 auto;
}

html.route-information-information #information-information:has(.miure-returns-policy) #column-right {
  display: none !important;
}

html.route-information-information #information-information #content:has(.miure-returns-policy) > .page-title {
  margin-bottom: clamp(24px, 4vw, 42px);
  border-bottom: 0 !important;
  color: #22201f;
  font-size: clamp(32px, 5vw, 54px);
  line-height: 1.08;
  text-align: center;
}

html.route-information-information #information-information #content:has(.miure-returns-policy) > .page-title::after {
  display: none !important;
  content: none !important;
}

.miure-returns-policy {
  max-width: 820px;
  margin: 0 auto;
  padding: 0 clamp(18px, 3vw, 30px);
  color: #35312f;
  background: transparent;
  border: 0;
}

.miure-returns-policy__intro {
  max-width: 660px;
  margin: 0 auto clamp(30px, 5vw, 48px);
  color: #22201f;
  font-size: clamp(17px, 2vw, 20px);
  line-height: 1.65;
  text-align: center;
}

.miure-returns-policy__list {
  counter-reset: miure-policy;
  margin: 0;
  padding: 0;
  list-style: none;
}

.miure-returns-policy__list li {
  counter-increment: miure-policy;
  position: relative;
  margin: 0;
  padding: 24px 0 24px 58px;
  border-top: 1px solid rgba(34, 32, 31, .11);
  font-size: 16px;
  line-height: 1.65;
}

.miure-returns-policy__list li::before {
  position: absolute;
  top: 27px;
  left: 0;
  width: 36px;
  color: #8b817b;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.6;
  letter-spacing: .12em;
  content: counter(miure-policy, decimal-leading-zero);
}

.miure-returns-policy__list strong {
  color: #22201f;
  font-weight: 700;
}

@media (max-width: 560px) {
  .miure-returns-policy {
    padding: 0 4px;
  }

  .miure-returns-policy__intro {
    margin-bottom: 26px;
    text-align: left;
  }

  .miure-returns-policy__list li {
    padding: 20px 0 20px 44px;
    font-size: 15px;
    line-height: 1.7;
  }

  .miure-returns-policy__list li::before {
    top: 23px;
    left: 0;
  }
}
