@layer undamed-theme {
  :root {
    --undamed-ivory: #f8f8ef;
    --undamed-sage: #c5c89e;
    --undamed-mist: #cbd8ed;
    --undamed-navy: #1a2653;
    --undamed-burgundy: #58223b;
    --undamed-blush: #e2becd;
    --undamed-white: #ffffff;
    --undamed-ink: #18213f;
    --undamed-muted: #697083;
    --undamed-border: #dfe2e8;
    --undamed-shadow: 0 18px 50px rgb(26 38 83 / 8%);
    --undamed-radius-sm: 4px;
    --undamed-radius-md: 12px;
    --undamed-radius-lg: 28px;
    --undamed-container: 1380px;
  }

  html {
    scroll-behavior: smooth;
  }

  body {
    color: var(--undamed-ink);
    background: var(--undamed-white);
    font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    letter-spacing: -0.01em;
  }

  body .container,
  body .container-fluid {
    --bs-gutter-x: clamp(1rem, 3vw, 3rem);
  }

  body .container {
    max-width: var(--undamed-container);
  }

  a {
    color: inherit;
    text-underline-offset: 0.18em;
  }

  a:hover {
    color: var(--undamed-burgundy);
  }

  h1,
  h2,
  h3,
  h4,
  h5,
  h6 {
    color: var(--undamed-navy);
    font-weight: 600;
    letter-spacing: -0.035em;
  }

  .btn,
  button,
  input,
  select,
  textarea {
    border-radius: var(--undamed-radius-sm);
  }

  .btn-primary,
  .add-to-cart,
  .undamed-button--primary {
    border-color: var(--undamed-burgundy) !important;
    background: var(--undamed-burgundy) !important;
    color: var(--undamed-white) !important;
    font-weight: 650;
    letter-spacing: 0.02em;
    text-transform: uppercase;
  }

  .btn-primary:hover,
  .add-to-cart:hover,
  .undamed-button--primary:hover {
    border-color: var(--undamed-navy) !important;
    background: var(--undamed-navy) !important;
  }

  .btn-outline-primary,
  .undamed-button--secondary {
    border-color: var(--undamed-navy) !important;
    background: transparent !important;
    color: var(--undamed-navy) !important;
    font-weight: 650;
    text-transform: uppercase;
  }

  .btn-outline-primary:hover,
  .undamed-button--secondary:hover {
    background: var(--undamed-navy) !important;
    color: var(--undamed-white) !important;
  }

  #header,
  .header {
    border-bottom: 1px solid rgb(26 38 83 / 9%);
    background: rgb(255 255 255 / 96%);
    backdrop-filter: blur(14px);
  }

  #header .header-top,
  #header .header-nav,
  .header__top,
  .header__nav {
    background: transparent;
  }

  #header .logo,
  #header .header-logo img,
  .header__logo img {
    width: auto;
    max-height: 54px;
  }

  #header a,
  #header button,
  .header a,
  .header button {
    color: var(--undamed-navy);
  }

  #header .search-widget input,
  #header input[type="search"] {
    border-color: rgb(26 38 83 / 35%);
    background: var(--undamed-white);
  }

  .breadcrumb {
    margin-block: 1.25rem;
    color: var(--undamed-muted);
    font-size: 0.85rem;
  }

  .product-miniature,
  .product-card,
  article.product-miniature {
    border: 0;
    background: transparent;
  }

  .product-miniature .thumbnail-container,
  .product-miniature .product-thumbnail,
  .product-card__image {
    overflow: hidden;
    border-radius: 0;
    background: #f4f4f3;
  }

  .product-miniature img,
  .product-card__image img {
    transition: transform 280ms ease;
  }

  .product-miniature:hover img,
  .product-card:hover .product-card__image img {
    transform: scale(1.015);
  }

  .product-miniature .product-title,
  .product-card__title {
    margin-top: 0.75rem;
    color: var(--undamed-ink);
    font-size: 0.88rem;
    font-weight: 550;
    letter-spacing: -0.015em;
  }

  .product-miniature .price,
  .product-card__price {
    color: var(--undamed-ink);
    font-size: 0.85rem;
    font-weight: 650;
  }

  .product-flags .product-flag {
    border-radius: 999px;
    background: var(--undamed-burgundy);
    color: var(--undamed-white);
    font-size: 0.68rem;
    letter-spacing: 0.04em;
    text-transform: uppercase;
  }

  .product-cover,
  .product-images img,
  .product-image {
    background: #f5f5f4;
  }

  .product-cover img {
    width: 100%;
    object-fit: cover;
  }

  .product-information,
  .product-details {
    color: var(--undamed-ink);
  }

  .product-prices .current-price,
  .current-price-value {
    color: var(--undamed-ink);
    font-size: clamp(1.2rem, 2vw, 1.65rem);
    font-weight: 650;
  }

  .product-variants .control-label,
  .product-variants__label {
    color: var(--undamed-muted);
    font-size: 0.78rem;
    font-weight: 650;
    letter-spacing: 0.025em;
    text-transform: uppercase;
  }

  .product-variants .input-color,
  .product-variants .color,
  .color-input {
    width: 28px;
    height: 28px;
    border: 2px solid var(--undamed-white);
    border-radius: 50%;
    box-shadow: 0 0 0 1px rgb(26 38 83 / 24%);
  }

  .product-variants input:checked + .color,
  .product-variants input:checked + .input-color,
  .color-input.is-active {
    box-shadow: 0 0 0 2px var(--undamed-burgundy);
  }

  .product-variants select,
  .product-variants .form-select,
  .product-variants .form-control {
    border-color: var(--undamed-border);
  }

  .product-add-to-cart,
  .product-actions {
    padding-top: 1rem;
    border-top: 1px solid var(--undamed-border);
  }

  .product-add-to-cart .add-to-cart {
    min-height: 48px;
  }

  .tabs,
  .product-tabs {
    border-top: 1px solid var(--undamed-border);
  }

  #footer,
  footer.footer {
    margin-top: clamp(3rem, 7vw, 7rem);
    background: var(--undamed-navy);
    color: rgb(255 255 255 / 82%);
  }

  #footer a,
  #footer h2,
  #footer h3,
  #footer h4,
  .footer a,
  .footer h2,
  .footer h3,
  .footer h4 {
    color: var(--undamed-white);
  }

  #footer .footer-container,
  .footer__container {
    padding-block: clamp(3rem, 6vw, 6rem);
  }

  #footer .block-contact,
  #footer .footer-block,
  #footer .links {
    font-size: 0.88rem;
    line-height: 1.75;
  }

  .pagination .current a,
  .pagination .page-item.active .page-link {
    border-color: var(--undamed-navy);
    background: var(--undamed-navy);
    color: var(--undamed-white);
  }

  .facet,
  .faceted-overlay,
  .card,
  .modal-content {
    border-color: var(--undamed-border);
    box-shadow: none;
  }

  @media (min-width: 992px) {
    body#product main .product-container,
    body#product .product-container {
      display: grid;
      grid-template-columns: minmax(0, 1.55fr) minmax(340px, 0.85fr);
      gap: clamp(2rem, 4vw, 5rem);
      align-items: start;
    }

    body#product .product-information,
    body#product .product-details {
      position: sticky;
      top: 98px;
    }
  }

  @media (max-width: 991.98px) {
    #header .logo,
    #header .header-logo img,
    .header__logo img {
      max-height: 42px;
    }

    body#product main .product-container,
    body#product .product-container {
      display: block;
    }

    .product-information,
    .product-details {
      position: static;
      margin-top: 1.25rem;
    }
  }
}

/* CZ Undamed 1.0.3 - storefront shell */
#header.header{position:relative;z-index:1000;border-bottom:1px solid rgb(26 38 83 / 10%);box-shadow:none}
#header .header-top{display:none!important}
#header .header-bottom{min-height:78px;background:#fff}
#header .header-bottom__container{max-width:1460px!important;padding-inline:clamp(1rem,3vw,3.25rem)}
#header .header-bottom__row{position:relative;min-height:78px;align-items:center!important;flex-wrap:nowrap}
#header .header-bottom__logo{z-index:5;width:190px;flex:0 0 190px;margin:0!important}
#header .header-bottom__h1{width:100%}
#header .navbar-brand{display:block!important;width:178px;height:54px;margin:0;background:url('../img/undamed-logo.png') left center/contain no-repeat}
#header .navbar-brand img{width:178px!important;height:54px!important;opacity:0}
#header .ps-mainmenu{display:none!important}
#header .header-nav-full-width{position:absolute;z-index:6;top:0;left:50%;width:min(54vw,760px);height:78px;transform:translateX(-50%)}
#header .header-nav-full-width>.undamed-menu{height:100%}
#header .header-nav-full-width .undamed-menu__root{height:100%}
#header #_desktop_ps_searchbar{z-index:7;margin-left:auto!important}
#header .ps-searchbar__form{width:155px}
#header .ps-searchbar__input{height:34px;padding-left:2rem;border-color:rgb(26 38 83 / 25%);font-size:.78rem}
#header #_desktop_ps_customersignin{z-index:7}
#header #_desktop_ps_customersignin .header-block__title{display:none!important}
#header .header-block__action-btn{min-width:36px;min-height:36px;display:flex;align-items:center;justify-content:center}
#header .header-block__icon{font-size:1.15rem}
.page-index #wrapper{padding-top:0}
.page-index .page-content--home{padding-top:0}
#footer.footer{margin-top:4rem;background:var(--undamed-navy,#1a2653)}
#footer .footer__before{background:#fff;color:var(--undamed-navy,#1a2653)}
#footer .footer__before .ps-emailsubscription{display:none!important}
#footer .footer__main,#footer .copyright{background:var(--undamed-navy,#1a2653);color:rgb(255 255 255 / 82%)}
#footer .footer__main{padding:3rem 0 2.4rem}
#footer .footer-block__title,#footer .footer-block__title a,#footer .footer-block__list a,#footer .ps-contactinfo a,#footer .ps-contactinfo__infos{color:#fff!important}
#footer .copyright{padding:1.2rem 0;border-top:1px solid rgb(255 255 255 / 12%)}
#footer .copyright a{color:rgb(255 255 255 / 64%)!important}
@media(max-width:1199.98px) and (min-width:992px){#header .header-nav-full-width{width:min(50vw,620px)}#header .undamed-menu__root{gap:1rem}#header .undamed-menu__root-line>a{font-size:.82rem}}
@media(max-width:991.98px){#header .header-bottom{min-height:64px}#header .header-bottom__container{padding-inline:.65rem}#header .header-bottom__row{min-height:64px;padding-left:44px}#header .header-bottom__logo{width:138px;flex:0 0 138px;margin-right:auto!important}#header .navbar-brand{width:132px;height:44px;background-position:left center}#header .navbar-brand img{width:132px!important;height:44px!important}#header .header-nav-full-width{position:absolute;z-index:10;top:0;left:0;width:52px;height:64px;transform:none}#header .header-nav-full-width>.undamed-menu{height:64px}#header .ps-searchbar--mobile,#header #_mobile_ps_customersignin{z-index:7}.page-index .page-content--home{padding-top:0}}


/* CZ Undamed shell 1.0.5 - embedded in custom.css so updates apply without reinstalling the theme. */
/* CZ Undamed Theme 1.0.4 - cache-busted storefront shell */
:root {
  --undamed-ivory: #f8f8ef;
  --undamed-sage: #c5c89e;
  --undamed-mist: #cbd8ed;
  --undamed-navy: #1a2653;
  --undamed-burgundy: #58223b;
  --undamed-blush: #e2becd;
  --undamed-white: #fff;
  --undamed-ink: #18213f;
  --undamed-muted: #697083;
  --undamed-border: #dfe2e8;
  --undamed-shell-width: 1540px;
}

body {
  color: var(--undamed-ink);
  background: #fff;
}

/* Home must not inherit Hummingbird's narrow page column. */
body.page-index #wrapper,
body.page-index #center-column,
body.page-index #content,
body.page-index .page-content--home {
  width: 100% !important;
  max-width: none !important;
  margin-inline: 0 !important;
  padding-inline: 0 !important;
}

body.page-index #wrapper,
body.page-index .page-content--home {
  padding-top: 0 !important;
}

/* Desktop header: one visual bar, with account retained from Hummingbird's top hook. */
@media (min-width: 992px) {
  #header.header {
    position: relative;
    z-index: 1000;
    border-bottom: 1px solid rgb(26 38 83 / 10%);
    background: rgb(255 255 255 / 98%);
    box-shadow: none;
  }

  #header .header-top {
    display: block !important;
    height: 0 !important;
    min-height: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    overflow: visible !important;
    background: transparent !important;
  }

  #header .header-top > .container-md,
  #header .header-top > .container-md > .row {
    width: 100%;
    max-width: none !important;
    height: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  #header .header-top__left,
  #header #_desktop_ps_languageselector {
    display: none !important;
  }

  #header .header-top__right {
    position: absolute;
    z-index: 30;
    top: 20px;
    right: max(24px, calc((100vw - var(--undamed-shell-width)) / 2 + 28px));
    display: block !important;
    width: 42px !important;
    height: 42px !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  #header #_desktop_ps_customersignin {
    display: block !important;
    width: 42px;
    height: 42px;
  }

  #header #_desktop_ps_customersignin .header-block__title {
    display: none !important;
  }

  #header #_desktop_ps_customersignin .header-block__action-btn {
    display: grid;
    width: 42px;
    height: 42px;
    place-items: center;
    padding: 0;
    color: var(--undamed-navy);
    text-decoration: none;
  }

  #header #_desktop_ps_customersignin .header-block__icon {
    font-size: 1.25rem;
  }

  #header .header-bottom {
    min-height: 82px;
    border: 0;
    background: #fff;
  }

  #header .header-bottom__container {
    width: 100%;
    max-width: var(--undamed-shell-width) !important;
    margin-inline: auto;
    padding-inline: 28px !important;
  }

  #header .header-bottom__row {
    position: relative;
    min-height: 82px;
    align-items: center !important;
    flex-wrap: nowrap !important;
  }

  #header .header-bottom__logo {
    z-index: 20;
    width: 212px !important;
    flex: 0 0 212px !important;
    margin: 0 !important;
  }

  #header .header-bottom__h1 {
    width: 100%;
    margin: 0;
  }

  #header .navbar-brand {
    display: block !important;
    width: 200px !important;
    height: 52px !important;
    margin: 0 !important;
    background: url('../img/undamed-logo.png') left center / contain no-repeat !important;
  }

  #header .navbar-brand img {
    width: 200px !important;
    height: 52px !important;
    opacity: 0 !important;
  }

  #header .ps-mainmenu {
    display: none !important;
  }

  #header .header-nav-full-width {
    position: absolute !important;
    z-index: 15;
    top: 0 !important;
    left: 50% !important;
    width: min(55vw, 820px) !important;
    height: 82px !important;
    transform: translateX(-50%) !important;
  }

  #header .header-nav-full-width > .undamed-menu,
  #header .header-nav-full-width .undamed-menu__root {
    height: 100%;
  }

  #header .undamed-menu__root {
    gap: clamp(18px, 1.7vw, 30px);
  }

  #header .undamed-menu__root-line > a {
    padding: 31px 0 28px;
    font-size: 14px;
    font-weight: 500;
    letter-spacing: -0.01em;
  }

  #header #_desktop_ps_searchbar {
    z-index: 22;
    margin-left: auto !important;
    margin-right: 54px !important;
  }

  #header .ps-searchbar__form {
    width: 184px !important;
  }

  #header .ps-searchbar__input {
    height: 36px;
    padding-left: 2.15rem;
    border-color: rgb(26 38 83 / 28%);
    border-radius: 0;
    background: #fff;
    font-size: 12px;
  }

  #header .ps-searchbar__magnifier {
    color: var(--undamed-navy);
    font-size: 18px;
  }
}

/* Mobile remains the standard compact bar requested for this project. */
@media (max-width: 991.98px) {
  #header .header-top {
    display: none !important;
  }

  #header .header-bottom,
  #header .header-bottom__row {
    min-height: 64px;
  }

  #header .header-bottom__container {
    padding-inline: 10px !important;
  }

  #header .header-bottom__row {
    position: relative;
    padding-left: 46px;
    flex-wrap: nowrap !important;
  }

  #header .header-bottom__logo {
    width: 144px !important;
    flex: 0 0 144px !important;
    margin-right: auto !important;
  }

  #header .navbar-brand {
    display: block !important;
    width: 138px !important;
    height: 42px !important;
    margin: 0 !important;
    background: url('../img/undamed-logo.png') left center / contain no-repeat !important;
  }

  #header .navbar-brand img {
    width: 138px !important;
    height: 42px !important;
    opacity: 0 !important;
  }

  #header .ps-mainmenu {
    display: none !important;
  }

  #header .header-nav-full-width {
    position: absolute !important;
    z-index: 25;
    top: 0 !important;
    left: 0 !important;
    width: 52px !important;
    height: 64px !important;
    transform: none !important;
  }

  #header .header-nav-full-width > .undamed-menu {
    height: 64px;
  }
}

/* Footer - remove Hummingbird newsletter shell and restore Undamed navy. */
#footer.footer {
  margin-top: clamp(64px, 7vw, 110px) !important;
  background: var(--undamed-navy) !important;
  color: rgb(255 255 255 / 82%) !important;
}

#footer .footer__before {
  background: #fff !important;
  color: var(--undamed-navy) !important;
}

#footer .footer__before .ps-emailsubscription {
  display: none !important;
}

#footer .footer__main,
#footer .copyright {
  background: var(--undamed-navy) !important;
  color: rgb(255 255 255 / 82%) !important;
}

#footer .footer__main {
  padding: 52px 0 38px !important;
}

#footer .footer__main > .container {
  width: 100%;
  max-width: var(--undamed-shell-width) !important;
  padding-inline: 28px !important;
}

#footer .footer-block__title,
#footer .footer-block__title a,
#footer .footer-block__list a,
#footer .ps-contactinfo a,
#footer .ps-contactinfo__infos {
  color: #fff !important;
}

#footer .footer-block__title {
  margin-bottom: 16px;
  font-size: 14px;
  font-weight: 650;
}

#footer .footer-block__list a,
#footer .ps-contactinfo,
#footer .ps-contactinfo a,
#footer .ps-contactinfo__infos {
  font-size: 12px;
  line-height: 1.75;
}

#footer .copyright {
  padding: 18px 0 24px !important;
  border-top: 1px solid rgb(255 255 255 / 13%);
}

#footer .copyright a {
  color: rgb(255 255 255 / 62%) !important;
  font-size: 11px;
}

.undamed-footer-signature {
  width: min(var(--undamed-shell-width), calc(100% - 40px));
  margin: 0 auto;
  padding: 28px 20px !important;
  color: var(--undamed-navy) !important;
  background: #fff !important;
}

/* CZ Undamed 1.0.6 - header/logo polish after live visual QA. */
@media (min-width: 992px) {
  #header .header-bottom__logo {
    width: 196px !important;
    flex-basis: 196px !important;
  }

  #header .navbar-brand {
    width: 184px !important;
    height: 48px !important;
    background-image: url('../img/undamed-logo.png') !important;
    background-size: contain !important;
    background-repeat: no-repeat !important;
    background-position: left center !important;
  }

  #header .navbar-brand img {
    width: 184px !important;
    height: 48px !important;
    opacity: 0 !important;
  }

  #header #_desktop_ps_customersignin .header-block__action-btn {
    font-size: 0 !important;
    line-height: 0 !important;
  }

  #header #_desktop_ps_customersignin .header-block__title,
  #header #_desktop_ps_customersignin .d-md-inline,
  #header #_desktop_ps_customersignin span:not(.material-icons):not(.header-block__icon) {
    display: none !important;
  }

  #header #_desktop_ps_customersignin .header-block__icon,
  #header #_desktop_ps_customersignin .material-icons {
    display: inline-block !important;
    font-size: 20px !important;
    line-height: 1 !important;
  }

  #header .header-top__right {
    top: 19px !important;
  }
}

@media (max-width: 991.98px) {
  #header .navbar-brand {
    width: 142px !important;
    height: 38px !important;
    background-image: url('../img/undamed-logo.png') !important;
    background-size: contain !important;
    background-repeat: no-repeat !important;
    background-position: left center !important;
  }

  #header .navbar-brand img {
    width: 142px !important;
    height: 38px !important;
    opacity: 0 !important;
  }
}

/* The supplied fabric artwork already contains its typography - never crop it. */
.undamed-fabric-card {
  background: transparent !important;
}

.undamed-fabric-card img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: center !important;
}

/* Hide the generic PrestaShop credit in the branded storefront footer. */
#footer .copyright {
  min-height: 22px;
}

#footer .copyright > a {
  display: none !important;
}


/* CZ Undamed 1.0.7 - cart entry point. Cart drawer/AJAX stays in a separate module. */
.undamed-header-cart {
  position: relative;
  display: grid;
  width: 42px;
  height: 42px;
  flex: 0 0 42px;
  place-items: center;
  color: var(--undamed-navy) !important;
  text-decoration: none !important;
}

.undamed-header-cart .material-icons {
  font-size: 21px;
  line-height: 1;
}

.undamed-header-cart__count {
  position: absolute;
  top: 2px;
  right: 0;
  display: grid;
  min-width: 17px;
  height: 17px;
  padding: 0 4px;
  place-items: center;
  border: 1px solid #fff;
  border-radius: 999px;
  background: var(--undamed-burgundy, #62213f);
  color: #fff;
  font-size: 9px;
  font-weight: 700;
  line-height: 1;
}

.undamed-header-cart__count[data-count="0"] {
  display: none;
}

@media (min-width: 992px) {
  #header .header-top__right {
    right: max(70px, calc((100vw - var(--undamed-shell-width)) / 2 + 74px)) !important;
  }

  #header #_desktop_ps_searchbar {
    margin-right: 104px !important;
  }

  #header .undamed-header-cart {
    position: absolute;
    z-index: 31;
    top: 20px;
    right: 28px;
  }
}

@media (max-width: 991.98px) {
  #header .undamed-header-cart {
    width: 40px;
    height: 64px;
    flex: 0 0 40px;
  }

  #header .undamed-header-cart__count {
    top: 12px;
    right: 0;
  }
}

/* CZ Undamed 1.0.8 - coherent desktop header actions + cart hover preview. */
@media (min-width: 992px) {
  #header .header-bottom__row {
    padding-right: 0 !important;
  }

  /* These nodes are moved into .undamed-header-actions by custom.js. */
  #header .undamed-header-actions {
    position: relative;
    z-index: 35;
    display: flex;
    flex: 0 0 auto;
    min-height: 82px;
    margin-left: auto;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
  }

  #header .undamed-header-actions #_desktop_ps_searchbar {
    display: flex !important;
    margin: 0 !important;
    align-items: center;
  }

  #header .undamed-header-actions .ps-searchbar__form {
    width: 184px !important;
    margin: 0 !important;
  }

  #header .undamed-header-actions #_desktop_ps_customersignin {
    display: flex !important;
    width: 40px !important;
    height: 40px !important;
    margin: 0 !important;
    align-items: center;
    justify-content: center;
  }

  #header .undamed-header-actions #_desktop_ps_customersignin .header-block,
  #header .undamed-header-actions #_desktop_ps_customersignin .ps-customersignin {
    display: flex !important;
    width: 40px !important;
    height: 40px !important;
    margin: 0 !important;
    align-items: center;
    justify-content: center;
  }

  #header .undamed-header-actions #_desktop_ps_customersignin .header-block__action-btn,
  #header .undamed-header-cart__trigger {
    display: grid !important;
    width: 40px !important;
    height: 40px !important;
    min-width: 40px !important;
    min-height: 40px !important;
    padding: 0 !important;
    place-items: center;
    border: 0 !important;
    border-radius: 999px !important;
    background: transparent !important;
    color: var(--undamed-navy) !important;
    text-decoration: none !important;
    transition: background-color .18s ease, color .18s ease;
  }

  #header .undamed-header-actions #_desktop_ps_customersignin .header-block__action-btn:hover,
  #header .undamed-header-actions #_desktop_ps_customersignin .header-block__action-btn:focus-visible,
  #header .undamed-header-cart__trigger:hover,
  #header .undamed-header-cart__trigger:focus-visible {
    background: rgb(26 38 83 / 7%) !important;
    color: var(--undamed-burgundy) !important;
    outline: none !important;
  }

  #header .undamed-header-actions #_desktop_ps_customersignin .header-block__icon,
  #header .undamed-header-cart__trigger .material-icons {
    margin: 0 !important;
    font-size: 21px !important;
    line-height: 1 !important;
  }

  /* Cancel older absolute positioning rules now that actions live in one flex group. */
  #header .header-top__right {
    position: static !important;
    width: auto !important;
    height: auto !important;
  }

  #header .undamed-header-cart {
    position: relative !important;
    top: auto !important;
    right: auto !important;
    display: block !important;
    width: 40px !important;
    height: 40px !important;
    flex: 0 0 40px !important;
  }

  #header .undamed-header-cart__count {
    top: -2px !important;
    right: -3px !important;
    z-index: 2;
    min-width: 17px;
    height: 17px;
    border: 2px solid #fff;
    font-size: 9px;
  }

  .undamed-cart-preview {
    position: absolute;
    z-index: 100;
    top: calc(100% + 12px);
    right: -4px;
    width: min(390px, calc(100vw - 32px));
    padding: 18px;
    border: 1px solid rgb(26 38 83 / 12%);
    background: #fff;
    box-shadow: 0 18px 52px rgb(20 29 62 / 16%);
    color: var(--undamed-ink);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translateY(-5px);
    transition: opacity .16s ease, transform .16s ease, visibility .16s ease;
  }

  .undamed-cart-preview::before {
    position: absolute;
    top: -14px;
    right: 0;
    width: 96px;
    height: 14px;
    content: '';
  }

  .undamed-header-cart:hover .undamed-cart-preview,
  .undamed-header-cart:focus-within .undamed-cart-preview {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateY(0);
  }

  .undamed-cart-preview__title {
    margin: 0 0 14px;
    color: var(--undamed-navy);
    font-size: 15px;
    font-weight: 650;
    letter-spacing: -.01em;
  }

  .undamed-cart-preview__items {
    display: grid;
    gap: 0;
  }

  .undamed-cart-preview__item {
    display: grid;
    grid-template-columns: 72px minmax(0, 1fr) auto;
    gap: 12px;
    padding: 12px 0;
    align-items: start;
    border-top: 1px solid rgb(26 38 83 / 9%);
  }

  .undamed-cart-preview__item:first-child {
    padding-top: 0;
    border-top: 0;
  }

  .undamed-cart-preview__image {
    display: block;
    width: 72px;
    height: 86px;
    overflow: hidden;
    background: #f5f5f2;
  }

  .undamed-cart-preview__image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .undamed-cart-preview__name {
    display: block;
    margin: 1px 0 5px;
    color: var(--undamed-navy) !important;
    font-size: 12px;
    font-weight: 650;
    line-height: 1.35;
    text-decoration: none !important;
  }

  .undamed-cart-preview__attributes,
  .undamed-cart-preview__qty {
    margin: 0;
    color: var(--undamed-muted);
    font-size: 10px;
    line-height: 1.45;
  }

  .undamed-cart-preview__price {
    padding-top: 1px;
    color: var(--undamed-navy);
    font-size: 11px;
    font-weight: 650;
    white-space: nowrap;
  }

  .undamed-cart-preview__more {
    padding: 8px 0 3px;
    color: var(--undamed-muted);
    font-size: 10px;
    text-align: center;
  }

  .undamed-cart-preview__summary {
    display: flex;
    margin-top: 12px;
    padding-top: 14px;
    align-items: baseline;
    justify-content: space-between;
    gap: 16px;
    border-top: 1px solid rgb(26 38 83 / 14%);
  }

  .undamed-cart-preview__summary-label {
    color: var(--undamed-navy);
    font-size: 12px;
    font-weight: 600;
  }

  .undamed-cart-preview__summary-value {
    color: var(--undamed-navy);
    font-size: 14px;
    font-weight: 700;
  }

  .undamed-cart-preview__button {
    display: flex;
    min-height: 40px;
    margin-top: 14px;
    padding: 9px 14px;
    align-items: center;
    justify-content: center;
    background: var(--undamed-burgundy);
    color: #fff !important;
    font-size: 11px;
    font-weight: 650;
    letter-spacing: .025em;
    text-decoration: none !important;
    text-transform: uppercase;
  }

  .undamed-cart-preview__button:hover,
  .undamed-cart-preview__button:focus-visible {
    background: var(--undamed-navy);
    color: #fff !important;
  }

  .undamed-cart-preview__empty {
    margin: 0;
    padding: 18px 4px 8px;
    color: var(--undamed-muted);
    font-size: 12px;
    text-align: center;
  }
}

@media (max-width: 1199.98px) and (min-width: 992px) {
  #header .undamed-header-actions {
    gap: 5px;
  }

  #header .undamed-header-actions .ps-searchbar__form {
    width: 154px !important;
  }
}

@media (max-width: 991.98px) {
  .undamed-cart-preview {
    display: none !important;
  }

  #header .undamed-header-cart__trigger {
    display: grid;
    width: 40px;
    height: 64px;
    place-items: center;
    color: var(--undamed-navy) !important;
    text-decoration: none !important;
  }
}


/* CZ Undamed 1.0.9 - cart/header alignment hotfix after enabling shop mode.
 * ps_shoppingcart becomes visible again when catalog mode is disabled. We keep
 * it installed as the native cart data/AJAX provider, but the branded header
 * uses exactly one CZ Undamed trigger and preview. */
#header #_desktop_ps_shoppingcart,
#header #_mobile_ps_shoppingcart {
  display: none !important;
}

@media (min-width: 992px) {
  /* Anchor the whole action cluster as one unit: search -> account -> cart. */
  #header .undamed-header-actions {
    position: absolute !important;
    z-index: 40 !important;
    top: 0 !important;
    right: 28px !important;
    left: auto !important;
    display: flex !important;
    width: auto !important;
    height: 82px !important;
    min-height: 82px !important;
    margin: 0 !important;
    padding: 0 !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 6px !important;
  }

  #header .undamed-header-actions #_desktop_ps_searchbar {
    order: 1 !important;
    display: flex !important;
    width: 184px !important;
    margin: 0 8px 0 0 !important;
    padding: 0 !important;
  }

  #header .undamed-header-actions .ps-searchbar__form {
    width: 184px !important;
  }

  #header .undamed-header-actions #_desktop_ps_customersignin {
    order: 2 !important;
  }

  #header .undamed-header-actions .undamed-header-cart {
    order: 3 !important;
  }

  #header .undamed-header-actions #_desktop_ps_customersignin,
  #header .undamed-header-actions .undamed-header-cart {
    position: relative !important;
    top: auto !important;
    right: auto !important;
    left: auto !important;
    width: 40px !important;
    height: 40px !important;
    flex: 0 0 40px !important;
    margin: 0 !important;
  }

  #header .undamed-header-actions #_desktop_ps_customersignin .header-block__action-btn,
  #header .undamed-header-actions .undamed-header-cart__trigger {
    width: 40px !important;
    height: 40px !important;
    min-width: 40px !important;
    min-height: 40px !important;
  }

  /* Make the badge sit on the bag, not in the surrounding flex gap. */
  #header .undamed-header-actions .undamed-header-cart__count {
    top: -1px !important;
    right: -2px !important;
  }
}

@media (max-width: 1199.98px) and (min-width: 992px) {
  #header .undamed-header-actions {
    right: 18px !important;
    gap: 4px !important;
  }

  #header .undamed-header-actions #_desktop_ps_searchbar,
  #header .undamed-header-actions .ps-searchbar__form {
    width: 154px !important;
  }
}


/* CZ Undamed 1.0.11 - stable account action.
 * Do not move Hummingbird's #_desktop_ps_customersignin between DOM slots:
 * its responsive relocation logic can overlap the search widget. Instead the
 * branded shell uses one independent account link with the native URL. */
#header #_desktop_ps_customersignin {
  display: none !important;
}

@media (min-width: 992px) {
  #header .undamed-header-actions #_desktop_ps_searchbar {
    position: relative !important;
    z-index: 1 !important;
    flex: 0 0 184px !important;
    max-width: 184px !important;
  }

  #header .undamed-header-actions .undamed-header-account {
    position: relative !important;
    z-index: 5 !important;
    order: 2 !important;
    display: grid !important;
    width: 40px !important;
    height: 40px !important;
    min-width: 40px !important;
    min-height: 40px !important;
    flex: 0 0 40px !important;
    margin: 0 !important;
    padding: 0 !important;
    place-items: center !important;
    border: 0 !important;
    border-radius: 999px !important;
    background: transparent !important;
    color: var(--undamed-navy) !important;
    line-height: 1 !important;
    text-decoration: none !important;
    cursor: pointer !important;
    isolation: isolate;
    transition: background-color .18s ease, color .18s ease;
  }

  #header .undamed-header-actions .undamed-header-account:hover,
  #header .undamed-header-actions .undamed-header-account:focus-visible {
    background: rgb(26 38 83 / 7%) !important;
    color: var(--undamed-burgundy) !important;
    outline: none !important;
  }

  #header .undamed-header-account__icon {
    display: block !important;
    width: 22px !important;
    height: 22px !important;
    margin: 0 !important;
    pointer-events: none !important;
  }

  #header .undamed-header-actions .undamed-header-cart {
    z-index: 5 !important;
  }

  #header .undamed-header-actions .undamed-header-cart__trigger {
    line-height: 1 !important;
  }
}

@media (max-width: 1199.98px) and (min-width: 992px) {
  #header .undamed-header-actions #_desktop_ps_searchbar {
    flex-basis: 154px !important;
    max-width: 154px !important;
  }
}

@media (max-width: 991.98px) {
  /* Mobile keeps Hummingbird's native account action. */
  #header .undamed-header-account {
    display: none !important;
  }
}

/* CZ Undamed 1.0.13 - product page layout, based on the approved storefront reference. */
body#product .breadcrumb__wrapper {
  border-bottom: 1px solid rgb(26 38 83 / 6%);
  background: #fafafa;
}

body#product .breadcrumb__wrapper .container {
  max-width: 1540px !important;
  padding-inline: 28px !important;
}

body#product .breadcrumb {
  margin-block: 12px !important;
  font-size: 12px;
}

body#product .columns-container.container {
  width: 100%;
  max-width: 1540px !important;
  padding: 34px 28px 0 !important;
}

body#product .product__container.product-container {
  display: grid !important;
  grid-template-columns: minmax(0, 1.62fr) minmax(390px, .78fr) !important;
  gap: clamp(38px, 4vw, 72px) !important;
  align-items: start !important;
}

body#product .product__left,
body#product .product__right {
  min-width: 0;
}

/* Gallery: thumbnails on the left, large image on the right. */
body#product .product__images {
  display: grid !important;
  grid-template-columns: 82px minmax(0, 1fr) !important;
  grid-template-areas: "thumbs main" !important;
  gap: 14px !important;
  align-items: start !important;
}

body#product .product__carousel {
  grid-area: main;
  width: 100% !important;
  margin: 0 !important;
  overflow: hidden;
  border: 0 !important;
  border-radius: 0 !important;
  background: #f5f5f3;
}

body#product .product__carousel .carousel-inner,
body#product .product__carousel .carousel-item,
body#product .product__carousel picture {
  width: 100%;
  height: 100%;
}

body#product .product__carousel .carousel-inner {
  aspect-ratio: 1 / 1;
}

body#product .product__carousel .carousel-item img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: center !important;
  background: #f5f5f3;
}

body#product .product__thumbnails {
  grid-area: thumbs;
  width: 82px !important;
  margin: 0 !important;
  overflow: visible !important;
}

body#product .product__thumbnails-list {
  display: flex !important;
  width: 82px !important;
  max-height: 720px;
  margin: 0 !important;
  padding: 0 !important;
  flex-direction: column !important;
  gap: 8px !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  list-style: none;
  scrollbar-width: thin;
}

body#product .product__thumbnail {
  display: block !important;
  width: 78px !important;
  height: 92px !important;
  min-width: 78px !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden;
  border: 1px solid transparent !important;
  border-radius: 0 !important;
  background: #f5f5f3 !important;
  box-shadow: none !important;
}

body#product .product__thumbnail.active,
body#product .product__thumbnail:has(.js-thumb-selected),
body#product .product__thumbnail:focus-visible {
  border-color: var(--undamed-navy) !important;
  outline: none !important;
}

body#product .product__thumbnail-image {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: #f5f5f3;
}

body#product .product__carousel .carousel-control-prev,
body#product .product__carousel .carousel-control-next {
  width: 38px !important;
  height: 38px !important;
  top: 50% !important;
  bottom: auto !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: rgb(255 255 255 / 86%) !important;
  box-shadow: 0 4px 18px rgb(26 38 83 / 8%);
  opacity: .9 !important;
  transform: translateY(-50%);
}

body#product .product__carousel .carousel-control-prev { left: 14px !important; }
body#product .product__carousel .carousel-control-next { right: 14px !important; }

body#product .product__zoom {
  right: 14px !important;
  bottom: 14px !important;
  width: 38px !important;
  height: 38px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: rgb(255 255 255 / 90%) !important;
  color: var(--undamed-navy) !important;
  box-shadow: 0 4px 18px rgb(26 38 83 / 8%);
}

body#product .product-flags {
  top: 12px !important;
  left: 12px !important;
}

body#product .product-flags .badge,
body#product .product-flags .product-flag {
  padding: 5px 8px !important;
  border-radius: 0 !important;
  background: var(--undamed-navy) !important;
  color: #fff !important;
  font-size: 10px !important;
  font-weight: 600 !important;
}

/* Product information column. */
body#product .product__right {
  position: sticky !important;
  top: 98px !important;
  max-width: 500px;
  padding-top: 4px;
}

body#product .product__name {
  margin: 0 0 14px !important;
  color: var(--undamed-navy) !important;
  font-size: clamp(21px, 1.45vw, 28px) !important;
  font-weight: 650 !important;
  line-height: 1.12 !important;
  letter-spacing: -.035em !important;
}

body#product .product__prices {
  margin-bottom: 16px !important;
}

body#product .product__price {
  color: #151a2e !important;
  font-size: 20px !important;
  font-weight: 700 !important;
}

body#product .product__tax-infos,
body#product .product__description-short,
body#product .ps-sharebuttons {
  display: none !important;
}

body#product .product__actions {
  padding-top: 0 !important;
  border-top: 0 !important;
}

body#product .product__variants {
  display: flex !important;
  flex-direction: column !important;
  gap: 0 !important;
  margin-top: 8px;
}

body#product .product-variant {
  margin: 0 !important;
  padding: 14px 0 !important;
  border: 0 !important;
  border-bottom: 1px solid rgb(26 38 83 / 10%) !important;
}

body#product .product-variant.undamed-variant--color { order: 1; }
body#product .product-variant.undamed-variant--size { order: 2; }
body#product .product-variant:not(.undamed-variant--color):not(.undamed-variant--size) { order: 3; }

body#product .product-variant__label {
  display: flex !important;
  min-height: 24px;
  margin-bottom: 9px !important;
  align-items: center !important;
  gap: 4px !important;
}

body#product .product-variant__legend,
body#product .product-variant__selected {
  margin: 0 !important;
  color: #24283a !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  line-height: 1.3 !important;
  text-transform: none !important;
}

body#product .product-variant__selected {
  font-weight: 650 !important;
}

body#product .undamed-inline-size-guide {
  margin-left: auto !important;
  color: #51586d !important;
  font-size: 11px !important;
  text-decoration: underline !important;
  text-underline-offset: 2px;
}

body#product .undamed-variant-kicker {
  margin: 0 0 9px;
  color: #6e7384;
  font-size: 10px;
  font-weight: 500;
}

/* Colour dots. */
body#product .product-variant__colors {
  display: flex !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
}

body#product .product-variant__color.input-color {
  position: relative !important;
  width: 25px !important;
  height: 25px !important;
  margin: 0 !important;
}

body#product .product-variant__color .input-color__input {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  opacity: 0 !important;
  pointer-events: none;
}

body#product .product-variant__color .input-color__label {
  display: grid !important;
  width: 25px !important;
  height: 25px !important;
  margin: 0 !important;
  place-items: center !important;
  border: 1px solid transparent !important;
  border-radius: 999px !important;
  cursor: pointer;
}

body#product .product-variant__color .color {
  display: block !important;
  width: 19px !important;
  height: 19px !important;
  margin: 0 !important;
  border: 1px solid rgb(26 38 83 / 15%) !important;
  border-radius: 999px !important;
  box-shadow: none !important;
}

body#product .product-variant__color .input-color__label--active,
body#product .product-variant__color .input-color__input:checked + .input-color__label {
  border-color: var(--undamed-navy) !important;
}

/* Size chips - square controls instead of native radio circles. */
body#product .product-variant__radios {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 7px !important;
}

body#product .product-variant__radio.form-check {
  position: relative !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

body#product .product-variant__radio .form-check-input {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  margin: 0 !important;
  opacity: 0 !important;
  pointer-events: none;
}

body#product .product-variant__radio label {
  margin: 0 !important;
  cursor: pointer;
}

body#product .product-variant__radio .form-check-label {
  display: grid !important;
  min-width: 43px !important;
  height: 34px !important;
  padding: 0 10px !important;
  place-items: center !important;
  border: 1px solid #d7d9df !important;
  background: #fff !important;
  color: #252a3d !important;
  font-size: 11px !important;
  font-weight: 550 !important;
  line-height: 1 !important;
}

body#product .product-variant__radio .form-check-input:checked + label .form-check-label {
  border-color: var(--undamed-navy) !important;
  box-shadow: inset 0 0 0 1px var(--undamed-navy);
  color: var(--undamed-navy) !important;
}

/* Personalization is moved by JS above the buy row. */
body#product .undamed-personalization {
  margin: 0 !important;
  padding: 14px 0 !important;
  border: 0 !important;
  border-bottom: 1px solid rgb(26 38 83 / 10%) !important;
  background: transparent !important;
}

body#product .undamed-personalization__head {
  min-height: 34px;
}

body#product .undamed-personalization__toggle {
  gap: 8px !important;
  color: #252a3d !important;
  font-size: 12px !important;
  font-weight: 550 !important;
}

body#product .undamed-personalization__head > strong {
  color: #252a3d !important;
  font-size: 11px !important;
  font-weight: 600 !important;
}

body#product .undamed-personalization__fields {
  gap: 9px !important;
  margin-top: 12px !important;
}

body#product .undamed-personalization__fields label {
  gap: 5px !important;
  font-size: 10px !important;
}

body#product .undamed-personalization__fields input,
body#product .undamed-personalization__fields select {
  min-height: 38px !important;
  border-radius: 0 !important;
  font-size: 12px !important;
}

body#product .undamed-personalization > small {
  margin-top: 8px !important;
  font-size: 10px !important;
}

/* Quantity and CTA like the reference. */
body#product .product__add-to-cart-container.product-add-to-cart {
  margin-top: 14px !important;
  padding-top: 0 !important;
  border-top: 0 !important;
}

body#product .product__actions-qty-add {
  display: grid !important;
  grid-template-columns: 76px minmax(0, 1fr) !important;
  gap: 10px !important;
  align-items: stretch !important;
}

body#product #add-to-cart-or-refresh .product-actions__quantity,
body#product #add-to-cart-or-refresh .quantity-button__group {
  width: 76px !important;
  height: 44px !important;
}

body#product #add-to-cart-or-refresh .quantity-button__group .btn {
  width: 24px !important;
  min-width: 24px !important;
  height: 44px !important;
  padding: 0 !important;
  border-color: #d8dae0 !important;
  border-radius: 0 !important;
  background: #fff !important;
  color: var(--undamed-navy) !important;
}

body#product #add-to-cart-or-refresh .quantity-button__group .material-icons {
  font-size: 15px !important;
}

body#product #add-to-cart-or-refresh #quantity_wanted {
  width: 28px !important;
  min-width: 28px !important;
  height: 44px !important;
  padding: 0 !important;
  border-block-color: #d8dae0 !important;
  border-inline: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  font-size: 12px !important;
  text-align: center !important;
}

body#product .product__add-to-cart,
body#product .product__add-to-cart-button {
  width: 100% !important;
  height: 44px !important;
}

body#product .product__add-to-cart-button {
  display: flex !important;
  padding: 0 18px !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  border-radius: 0 !important;
  background: var(--undamed-burgundy) !important;
  font-size: 12px !important;
  font-weight: 650 !important;
  letter-spacing: .02em !important;
}

/* Product extras - compact metadata and accordion stack. */
body#product .undamed-product-extras {
  margin-top: 18px !important;
}

body#product .undamed-product-extras__meta {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 14px !important;
  margin: 0 !important;
  padding: 14px 0 !important;
  border-top: 1px solid rgb(26 38 83 / 14%) !important;
  border-bottom: 1px solid rgb(26 38 83 / 14%) !important;
}

body#product .undamed-product-extras__meta small {
  margin-bottom: 4px;
  font-size: 9px !important;
  letter-spacing: .04em;
}

body#product .undamed-product-extras__meta strong {
  font-size: 11px !important;
  line-height: 1.35;
}

body#product .undamed-product-extras__meta > a {
  display: none !important;
}

body#product .undamed-accordions details {
  border-bottom-color: rgb(26 38 83 / 14%) !important;
}

body#product .undamed-accordions summary {
  padding: 13px 0 !important;
  font-size: 10px !important;
  letter-spacing: .025em !important;
}

body#product .undamed-accordions details > div {
  padding: 0 0 14px !important;
  color: #4c5265;
  font-size: 12px !important;
  line-height: 1.6 !important;
}

/* Hummingbird repeats description/details/reassurance below our intended panel. */
body#product .product__bottom,
body#product #product-comments-list,
body#product .product-comments,
body#product .product-comments-additional-info,
body#product .product-comment-modal + .product-comment-modal:not(.show) {
  display: none !important;
}

/* Matching product - broad horizontal band like the reference. */
body#product .undamed-product-pairing,
body#product .undamed-product-recommendations {
  width: 100% !important;
  max-width: 1540px !important;
  margin: 58px auto 0 !important;
  padding: 0 28px !important;
}

body#product .undamed-product-pairing h2,
body#product .undamed-product-recommendations h2 {
  margin: 0 0 16px !important;
  color: #11182d !important;
  font-size: 18px !important;
  font-weight: 650 !important;
  letter-spacing: -.02em !important;
}

body#product .undamed-product-pairing__card {
  display: grid !important;
  grid-template-columns: 185px minmax(0, 1fr) !important;
  min-height: 215px;
  gap: 30px !important;
  padding: 14px 0 20px !important;
  border-top: 1px solid rgb(26 38 83 / 12%) !important;
  border-bottom: 1px solid rgb(26 38 83 / 12%) !important;
}

body#product .undamed-product-pairing__image {
  aspect-ratio: 4 / 5 !important;
  background: #f5f5f3 !important;
}

body#product .undamed-product-pairing__image img {
  object-fit: contain !important;
}

body#product .undamed-product-pairing__content {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  grid-template-rows: auto auto 1fr;
  gap: 5px 24px;
  align-content: center;
  align-items: center;
}

body#product .undamed-product-pairing__content h3,
body#product .undamed-product-pairing__price,
body#product .undamed-product-pairing__copy {
  grid-column: 1;
}

body#product .undamed-product-pairing__content h3 {
  margin: 0 !important;
  font-size: 14px !important;
}

body#product .undamed-product-pairing__price {
  margin: 0 !important;
  font-size: 12px !important;
}

body#product .undamed-product-pairing__copy {
  margin: 4px 0 0 !important;
  font-size: 11px !important;
}

body#product .undamed-product-pairing__button {
  grid-column: 2;
  grid-row: 1 / -1;
  min-width: 230px !important;
  min-height: 44px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 0 !important;
  background: #202020 !important;
  color: #fff !important;
}

/* Recommendation strip. */
body#product .undamed-product-recommendations {
  margin-top: 42px !important;
}

body#product .undamed-product-recommendations__row {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  grid-auto-flow: unset !important;
  grid-auto-columns: unset !important;
  gap: 12px !important;
  overflow: visible !important;
}

body#product .undamed-product-card {
  position: relative;
  min-width: 0;
}

body#product .undamed-product-card__image {
  position: relative;
  aspect-ratio: 4 / 5 !important;
  background: #f5f5f3 !important;
}

body#product .undamed-product-card__image::after {
  position: absolute;
  z-index: 2;
  top: 10px;
  right: 11px;
  content: '♡';
  color: #1d253f;
  font-size: 24px;
  font-weight: 300;
  line-height: 1;
}

body#product .undamed-product-card__image img {
  object-fit: contain !important;
}

body#product .undamed-product-card h3 {
  margin: 10px 0 3px !important;
  font-size: 12px !important;
  line-height: 1.3;
}

body#product .undamed-product-card p {
  margin: 0 !important;
  font-size: 11px !important;
}

/* Keep the footer closer to the reference after the product carousels. */
body#product #footer.footer {
  margin-top: 74px !important;
}

@media (max-width: 1199.98px) and (min-width: 992px) {
  body#product .columns-container.container,
  body#product .breadcrumb__wrapper .container,
  body#product .undamed-product-pairing,
  body#product .undamed-product-recommendations {
    padding-inline: 20px !important;
  }

  body#product .product__container.product-container {
    grid-template-columns: minmax(0, 1.45fr) minmax(360px, .85fr) !important;
    gap: 34px !important;
  }

  body#product .product__images {
    grid-template-columns: 72px minmax(0, 1fr) !important;
  }

  body#product .product__thumbnails,
  body#product .product__thumbnails-list {
    width: 72px !important;
  }

  body#product .product__thumbnail {
    width: 68px !important;
    min-width: 68px !important;
    height: 82px !important;
  }
}

@media (max-width: 991.98px) {
  body#product .breadcrumb__wrapper .container,
  body#product .columns-container.container,
  body#product .undamed-product-pairing,
  body#product .undamed-product-recommendations {
    padding-inline: 14px !important;
  }

  body#product .columns-container.container {
    padding-top: 16px !important;
  }

  body#product .product__container.product-container {
    display: block !important;
  }

  body#product .product__images {
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
  }

  body#product .product__carousel {
    order: 1;
  }

  body#product .product__thumbnails {
    order: 2;
    width: 100% !important;
    overflow-x: auto !important;
  }

  body#product .product__thumbnails-list {
    display: flex !important;
    width: max-content !important;
    max-width: none !important;
    max-height: none !important;
    flex-direction: row !important;
    gap: 7px !important;
    overflow: visible !important;
  }

  body#product .product__thumbnail {
    width: 68px !important;
    min-width: 68px !important;
    height: 78px !important;
  }

  body#product .product__right {
    position: static !important;
    max-width: none !important;
    margin-top: 24px !important;
  }

  body#product .product__name {
    font-size: 22px !important;
  }

  body#product .undamed-product-pairing,
  body#product .undamed-product-recommendations {
    margin-top: 44px !important;
  }

  body#product .undamed-product-pairing__card {
    grid-template-columns: 118px minmax(0, 1fr) !important;
    gap: 14px !important;
  }

  body#product .undamed-product-pairing__content {
    display: block !important;
  }

  body#product .undamed-product-pairing__button {
    width: 100%;
    min-width: 0 !important;
    margin-top: 12px;
  }

  body#product .undamed-product-recommendations__row {
    display: grid !important;
    grid-auto-flow: column !important;
    grid-auto-columns: minmax(72vw, 300px) !important;
    grid-template-columns: none !important;
    gap: 10px !important;
    overflow-x: auto !important;
    scroll-snap-type: x mandatory;
  }

  body#product .undamed-product-card {
    scroll-snap-align: start;
  }
}

@media (max-width: 575.98px) {
  body#product .product__actions-qty-add {
    grid-template-columns: 74px minmax(0, 1fr) !important;
  }

  body#product .undamed-personalization__fields {
    grid-template-columns: 1fr !important;
  }

  body#product .undamed-product-extras__meta {
    grid-template-columns: 1fr 1fr !important;
  }
}

/* The reference product page does not expose Hummingbird's generic "New" badge. */
body#product .product-flags { display: none !important; }

/* CZ Undamed 1.0.14 - product page cleanup and full "Pairs with" configurator. */
body#product .breadcrumb__wrapper {
  display: none !important;
}

body#product .columns-container.container {
  padding-top: 30px !important;
}

/* productcomments is rendered outside .product__bottom in Hummingbird 9.1 */
body#product .product-comments-wrapper {
  display: none !important;
}

/* Compact FIGS-like personalization row. */
body#product .undamed-personalization__head {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto auto !important;
  gap: 12px !important;
  align-items: center !important;
}

body#product .undamed-personalization__heading {
  display: grid;
  gap: 2px;
  min-width: 0;
}

body#product .undamed-personalization__heading > span {
  color: #202537;
  font-size: 11px;
  font-weight: 700;
}

body#product .undamed-personalization__heading > small {
  color: #7a7e8b;
  font-size: 9px;
}

body#product .undamed-personalization__toggle {
  display: inline-flex !important;
  min-height: 30px;
  padding: 0 10px;
  align-items: center;
  border: 1px solid #d7d9df;
  background: #fff;
  cursor: pointer;
}

body#product .undamed-personalization__toggle input {
  width: 14px;
  height: 14px;
  margin: 0 !important;
  accent-color: var(--undamed-burgundy);
}

body#product .undamed-personalization__head > strong {
  white-space: nowrap;
}

/* Rich matching product row: image / summary / selectors / CTA. */
body#product .undamed-product-pairing__card {
  grid-template-columns: 170px minmax(170px, .78fr) minmax(390px, 1.75fr) minmax(210px, .72fr) !important;
  min-height: 230px !important;
  gap: 26px !important;
  align-items: center !important;
}

body#product .undamed-product-pairing__summary {
  align-self: start;
  padding-top: 20px;
}

body#product .undamed-product-pairing__summary h3 {
  margin: 0 0 5px !important;
  font-size: 13px !important;
  line-height: 1.35 !important;
}

body#product .undamed-product-pairing__summary h3 a {
  color: #161b2e !important;
  text-decoration: none !important;
}

body#product .undamed-product-pairing__price {
  margin: 0 !important;
  color: #161b2e !important;
  font-size: 11px !important;
  font-weight: 700 !important;
}

body#product .undamed-product-pairing__options {
  display: grid;
  gap: 12px;
  min-width: 0;
}

body#product .undamed-pair-option-group {
  display: grid;
  gap: 7px;
}

body#product .undamed-pair-option-group__head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
}

body#product .undamed-pair-option-group__head a {
  color: #62677a !important;
  font-size: 9px !important;
  text-decoration: underline !important;
  text-underline-offset: 2px;
}

body#product .undamed-pair-option-group__label {
  color: #686d7c;
  font-size: 9px;
  font-weight: 600;
}

body#product .undamed-pair-colors,
body#product .undamed-pair-sizes,
body#product .undamed-pair-length__choices {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

body#product .undamed-pair-color {
  display: grid;
  width: 24px;
  height: 24px;
  padding: 0;
  place-items: center;
  border: 1px solid transparent;
  border-radius: 50%;
  background: transparent;
  cursor: pointer;
}

body#product .undamed-pair-color > span {
  display: block;
  width: 18px;
  height: 18px;
  border: 1px solid rgb(26 38 83 / 14%);
  border-radius: 50%;
}

body#product .undamed-pair-color.is-active {
  border-color: var(--undamed-navy);
}

body#product .undamed-pair-size {
  min-width: 40px;
  height: 30px;
  padding: 0 9px;
  border: 1px solid #d7d9df;
  background: #fff;
  color: #262b3f;
  font-size: 10px;
  line-height: 1;
  cursor: pointer;
}

body#product .undamed-pair-size.is-active {
  border-color: var(--undamed-navy);
  box-shadow: inset 0 0 0 1px var(--undamed-navy);
  color: var(--undamed-navy);
}

body#product .undamed-pair-length__choices span {
  display: grid;
  min-width: 116px;
  height: 31px;
  place-items: center;
  border: 1px solid #dedfe4;
  color: #777b88;
  font-size: 9px;
}

body#product .undamed-pair-length__choices span.is-active {
  border-color: #9ea2ae;
  color: #252a3c;
  font-weight: 650;
}

body#product .undamed-product-pairing__action {
  display: flex;
  min-width: 0;
  align-self: stretch;
  align-items: center;
}

body#product .undamed-product-pairing__action form {
  width: 100%;
}

body#product .undamed-product-pairing__button {
  width: 100% !important;
  min-width: 0 !important;
  height: 44px !important;
  border: 1px solid #202020 !important;
  background: #202020 !important;
  color: #fff !important;
  font-size: 10px !important;
  font-weight: 650 !important;
  text-transform: uppercase;
}

@media (max-width: 1199.98px) and (min-width: 992px) {
  body#product .undamed-product-pairing__card {
    grid-template-columns: 145px minmax(155px, .75fr) minmax(330px, 1.5fr) minmax(180px, .65fr) !important;
    gap: 18px !important;
  }
}

@media (max-width: 991.98px) {
  body#product .breadcrumb__wrapper {
    display: none !important;
  }

  body#product .columns-container.container {
    padding-top: 18px !important;
  }

  body#product .undamed-product-pairing__card {
    grid-template-columns: 120px minmax(0, 1fr) !important;
    gap: 14px !important;
  }

  body#product .undamed-product-pairing__summary {
    align-self: center;
    padding-top: 0;
  }

  body#product .undamed-product-pairing__options,
  body#product .undamed-product-pairing__action {
    grid-column: 1 / -1;
  }

  body#product .undamed-product-pairing__action {
    margin-top: 4px;
  }
}

@media (max-width: 575.98px) {
  body#product .undamed-personalization__head {
    grid-template-columns: minmax(0, 1fr) auto !important;
  }

  body#product .undamed-personalization__head > strong {
    grid-column: 2;
    grid-row: 2;
    justify-self: end;
    margin-top: -6px;
  }

  body#product .undamed-product-pairing__card {
    grid-template-columns: 104px minmax(0, 1fr) !important;
  }

  body#product .undamed-pair-length__choices span {
    min-width: 100px;
  }
}


/* CZ Undamed 1.0.15 - personalization polish and recently viewed. */
body#product .undamed-personalization {
  margin: 18px 0 16px !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}

body#product .undamed-personalization__title {
  margin: 0 0 7px;
  color: #202537;
  font-size: 10px;
  font-weight: 700;
}

body#product .undamed-personalization__toggle {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto 18px !important;
  gap: 10px !important;
  min-height: 38px !important;
  padding: 0 11px !important;
  align-items: center !important;
  border: 1px solid #d7d9df !important;
  background: #fff !important;
  color: #202537 !important;
  cursor: pointer;
}

body#product .undamed-personalization__toggle input {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

body#product .undamed-personalization__toggle-label {
  font-size: 10px !important;
  font-weight: 600 !important;
}

body#product .undamed-personalization__toggle strong {
  color: #202537 !important;
  font-size: 10px !important;
  font-weight: 650 !important;
  white-space: nowrap;
}

body#product .undamed-personalization__chevron {
  display: block;
  font-size: 19px;
  line-height: 1;
  transition: transform .18s ease;
}

body#product .undamed-personalization.is-enabled .undamed-personalization__chevron {
  transform: rotate(90deg);
}

body#product .undamed-personalization__fields {
  margin-top: 8px !important;
  padding: 12px !important;
  border: 1px solid #e0e2e7;
  border-top: 0;
  background: #fafaf8;
}

body#product .undamed-personalization > small {
  display: none !important;
  margin-top: 7px !important;
}

body#product .undamed-personalization.is-enabled > small {
  display: block !important;
}

body#product .undamed-product-recent {
  width: 100% !important;
  max-width: 1540px !important;
  margin: 44px auto 0 !important;
  padding: 0 28px !important;
}

body#product .undamed-product-recent h2 {
  margin: 0 0 16px !important;
  color: #11182d !important;
  font-size: 18px !important;
  font-weight: 650 !important;
  letter-spacing: -.02em !important;
}

body#product .undamed-product-recent__row {
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  gap: 12px !important;
}

body#product .undamed-product-recent .undamed-product-card__image {
  aspect-ratio: 4 / 5 !important;
}

/* Bring the recommendation cards slightly closer to the FIGS proportions. */
body#product .undamed-product-recommendations__row {
  gap: 14px !important;
}

body#product .undamed-product-pairing__button {
  background: #202020 !important;
  border-color: #202020 !important;
}

body#product #footer.footer {
  margin-top: 62px !important;
}

@media (max-width: 991.98px) {
  body#product .undamed-product-recent {
    margin-top: 40px !important;
    padding-inline: 14px !important;
  }

  body#product .undamed-product-recent__row {
    grid-auto-flow: column !important;
    grid-auto-columns: minmax(72vw, 300px) !important;
    grid-template-columns: none !important;
    gap: 10px !important;
    overflow-x: auto !important;
    scroll-snap-type: x mandatory;
  }

  body#product .undamed-product-recent .undamed-product-card {
    scroll-snap-align: start;
  }
}

/* CZ Undamed 1.0.16 - gallery thumbnails and colour-linked imagery. */
body#product .product__images {
  grid-template-columns: 76px minmax(0, 1fr) !important;
  gap: 14px !important;
}

body#product .product__thumbnails {
  width: 76px !important;
}

body#product .product__thumbnails-list {
  width: 76px !important;
  gap: 9px !important;
}

body#product .product__thumbnail {
  width: 74px !important;
  height: 74px !important;
  min-width: 74px !important;
  aspect-ratio: 1 / 1 !important;
  padding: 4px !important;
  border: 1px solid #e3e4e7 !important;
  background: #f7f7f5 !important;
}

body#product .product__thumbnail.active,
body#product .product__thumbnail:has(.js-thumb-selected),
body#product .product__thumbnail:focus-visible {
  border-color: var(--undamed-navy) !important;
  box-shadow: inset 0 0 0 1px var(--undamed-navy) !important;
}

body#product .product__thumbnail picture {
  display: flex !important;
  width: 100% !important;
  height: 100% !important;
  align-items: center !important;
  justify-content: center !important;
}

body#product .product__thumbnail-image {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  max-height: 100% !important;
  object-fit: contain !important;
  object-position: center !important;
  background: transparent !important;
}

body#product .product__thumbnail:hover {
  border-color: rgb(26 38 83 / 45%) !important;
}

@media (max-width: 991.98px) {
  body#product .product__images {
    grid-template-columns: 1fr !important;
  }

  body#product .product__thumbnails,
  body#product .product__thumbnails-list {
    width: 100% !important;
  }

  body#product .product__thumbnail {
    width: 68px !important;
    height: 68px !important;
    min-width: 68px !important;
  }
}


/* CZ Undamed 1.0.17 - native 4:5 product image pipeline. */
body#product .product__carousel .carousel-inner {
  aspect-ratio: 4 / 5 !important;
}

body#product .product__carousel .carousel-item img {
  object-fit: cover !important;
  object-position: center !important;
}

body#product .product__thumbnail {
  width: 72px !important;
  height: 90px !important;
  min-width: 72px !important;
  aspect-ratio: 4 / 5 !important;
  padding: 0 !important;
}

body#product .product__thumbnail-image {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
}

@media (max-width: 991.98px) {
  body#product .product__thumbnail {
    width: 64px !important;
    height: 80px !important;
    min-width: 64px !important;
  }
}

/* CZ Undamed Theme 1.0.19 - category & product listing */
body:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) .columns-container {
  width: 100%;
  max-width: 1540px !important;
  padding-inline: clamp(14px, 2.25vw, 34px) !important;
}

body:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) #js-product-list-header {
  margin: 10px 0 clamp(22px, 3vw, 42px);
}

body:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) #js-product-list-header h1,
body:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) #js-product-list-header .page-title-section__title {
  margin: 0;
  color: var(--undamed-navy);
  font-size: clamp(30px, 4vw, 58px);
  font-weight: 600;
  line-height: .98;
  letter-spacing: -.045em;
}

body:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) #left-column {
  padding-right: clamp(18px, 2vw, 30px);
}

body:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) #search_filters,
body:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) .facets {
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) #search_filters .facet,
body:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) .facets .facet {
  margin: 0 !important;
  padding: 17px 0 !important;
  border: 0 !important;
  border-bottom: 1px solid rgb(26 38 83 / 13%) !important;
  border-radius: 0 !important;
  background: transparent !important;
}

body:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) #search_filters .facet-title,
body:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) .facets .facet__title {
  color: var(--undamed-navy);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .045em;
  text-transform: uppercase;
}

body:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) .products__selection {
  display: flex;
  min-height: 58px;
  margin-bottom: 26px;
  padding: 10px 0;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  border-top: 1px solid rgb(26 38 83 / 12%);
  border-bottom: 1px solid rgb(26 38 83 / 12%);
}

body:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) .products__count {
  color: var(--undamed-muted);
  font-size: 12px;
}

body:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) .products__sort {
  margin-left: auto;
  gap: 10px;
}

body:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) .products__sort-label {
  color: var(--undamed-muted);
  font-size: 12px;
}

body:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) .products__sort-dropdown-button,
body:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) .products__filter-button {
  min-height: 38px;
  padding: 8px 12px;
  border: 1px solid rgb(26 38 83 / 22%) !important;
  border-radius: 0 !important;
  background: #fff !important;
  color: var(--undamed-navy) !important;
  font-size: 12px;
  font-weight: 600;
  box-shadow: none !important;
}

body:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) #js-product-list > .products {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: clamp(30px, 3vw, 48px) clamp(12px, 1.5vw, 22px);
  align-items: start;
}

body:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) .product-miniature {
  width: auto !important;
  min-width: 0;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) .product-miniature__inner {
  display: flex;
  height: 100%;
  min-width: 0;
  flex-direction: column;
}

body:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) .product-miniature__top {
  position: relative;
  overflow: hidden;
  width: 100%;
  aspect-ratio: 4 / 5;
  border: 0 !important;
  border-radius: 0 !important;
  background: #f5f5f2;
}

body:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) .product-miniature__image-container,
body:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) .product-miniature__image-link,
body:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) .product-miniature__image-container picture {
  display: block;
  width: 100%;
  height: 100%;
  margin: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
}

body:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) .product-miniature__image {
  display: block;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover;
  transition: transform 300ms ease, opacity 220ms ease;
}

body:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) .undamed-listing-secondary {
  position: absolute;
  z-index: 2;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  pointer-events: none;
  opacity: 0;
  transition: opacity 240ms ease, transform 320ms ease;
}

/* The hover image is moved into .product-miniature__top by custom.js.
   Keep it clipped to the exact product-media box even if parent-theme rules change. */
body:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) .product-miniature__top > .undamed-listing-secondary {
  max-width: 100% !important;
  max-height: 100% !important;
  margin: 0 !important;
}

@media (hover:hover) and (pointer:fine) {
  body:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) .product-miniature:not(.is-undamed-swatch-preview):hover .undamed-listing-secondary {
    opacity: 1;
  }

  body:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) .product-miniature:hover .product-miniature__image,
  body:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) .product-miniature:hover .undamed-listing-secondary {
    transform: scale(1.012);
  }
}

body:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) .product-miniature__quickview,
body:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) .product-miniature__quickview-button,
body:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) .product-miniature__quickview-touch {
  display: none !important;
}

body:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) .product-miniature__bottom {
  padding: 12px 0 0 !important;
  background: transparent !important;
}

body:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) .product-miniature__infos {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 7px;
}

body:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) .product-miniature__title {
  display: block;
  margin: 0 !important;
  color: var(--undamed-ink) !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  line-height: 1.35;
  letter-spacing: -.015em;
  text-decoration: none !important;
}

body:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) .product-miniature__prices {
  display: flex;
  min-height: 20px;
  align-items: baseline;
  gap: 7px;
}

body:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) .product-miniature__price {
  color: var(--undamed-ink) !important;
  font-size: 12px !important;
  font-weight: 650 !important;
}

body:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) .product-miniature__regular-price {
  color: var(--undamed-muted) !important;
  font-size: 11px !important;
}

body:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) .product-miniature__actions {
  display: none !important;
}

body:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) .product-flags {
  z-index: 4;
  top: 10px;
  left: 10px;
}

body:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) .product-flags .badge,
body:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) .product-flags .product-flag {
  padding: 5px 7px;
  border-radius: 0 !important;
  background: #fff !important;
  color: var(--undamed-navy) !important;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: .055em;
  box-shadow: none;
}

.undamed-listing-swatches {
  display: flex;
  min-height: 23px;
  align-items: center;
  flex-wrap: wrap;
  gap: 7px;
  order: 5;
}

.undamed-listing-swatch {
  position: relative;
  display: block;
  width: 17px;
  height: 17px;
  padding: 0;
  border: 2px solid #fff;
  border-radius: 50%;
  background: var(--undamed-swatch, #f4f4f1);
  box-shadow: 0 0 0 1px rgb(26 38 83 / 19%);
  cursor: pointer;
  transition: box-shadow 160ms ease, transform 160ms ease;
}

.undamed-listing-swatch:hover,
.undamed-listing-swatch:focus-visible,
.undamed-listing-swatch.is-active {
  outline: 0;
  box-shadow: 0 0 0 2px var(--undamed-navy);
  transform: scale(1.04);
}

body:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) .active_filters,
body:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) .active-filters {
  margin: 0 0 22px;
  padding: 0;
  border: 0;
  background: transparent;
}

body:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) .products__pagination {
  margin-top: clamp(42px, 5vw, 72px);
}

body:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) .pagination {
  justify-content: center;
  gap: 4px;
}

body:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) .pagination .page-link {
  min-width: 38px;
  min-height: 38px;
  display: grid;
  place-items: center;
  border: 1px solid rgb(26 38 83 / 18%);
  border-radius: 0 !important;
  background: #fff;
  color: var(--undamed-navy);
  font-size: 12px;
}

@media (max-width: 1199.98px) {
  body:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) #js-product-list > .products {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 767.98px) {
  body:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) .columns-container {
    padding-inline: 10px !important;
  }

  body:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) #js-product-list-header {
    margin: 8px 0 22px;
  }

  body:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) #js-product-list-header h1,
  body:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) #js-product-list-header .page-title-section__title {
    font-size: 32px;
  }

  body:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) .products__selection {
    min-height: 50px;
    margin-bottom: 16px;
    padding: 7px 0;
    gap: 8px;
  }

  body:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) .products__count,
  body:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) .products__sort-label {
    display: none;
  }

  body:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) #js-product-list > .products {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 28px 10px;
  }

  body:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) .product-miniature__bottom {
    padding-top: 9px !important;
  }

  body:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) .product-miniature__title {
    font-size: 11px !important;
  }

  body:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) .product-miniature__price {
    font-size: 11px !important;
  }

  .undamed-listing-swatches {
    gap: 6px;
  }

  .undamed-listing-swatch {
    width: 16px;
    height: 16px;
  }
}

/* CZ Undamed Theme 1.0.20 - full-width listing + filter drawer */
body.undamed-listing-fullwidth:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) .columns-container > .row {
  display: block !important;
  margin-inline: 0 !important;
}

body.undamed-listing-fullwidth:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) #left-column,
body.undamed-listing-fullwidth:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) #right-column {
  display: none !important;
}

body.undamed-listing-fullwidth:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) #center-column {
  width: 100% !important;
  max-width: 100% !important;
  flex: 0 0 100% !important;
  padding-inline: 0 !important;
}

body.undamed-listing-fullwidth:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) #js-product-list-header {
  max-width: 920px;
  margin-top: clamp(16px, 2.4vw, 34px);
}

body.undamed-listing-fullwidth:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) #js-product-list-header .category__description,
body.undamed-listing-fullwidth:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) #js-product-list-header .rich-text {
  max-width: 720px;
  margin-top: 12px;
  color: var(--undamed-muted);
  font-size: 14px;
  line-height: 1.6;
}

body.undamed-listing-fullwidth:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) .products__selection {
  justify-content: flex-start;
}

body.undamed-listing-fullwidth:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) .products__count {
  margin-right: auto;
}

body.undamed-listing-fullwidth:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) #search_filter_toggler,
body.undamed-listing-fullwidth:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) .products__filter-button.js-search-toggler {
  display: none !important;
}

.undamed-filter-trigger {
  display: inline-flex;
  min-width: 116px;
  min-height: 40px;
  padding: 8px 14px;
  align-items: center;
  justify-content: center;
  gap: 9px;
  border: 1px solid var(--undamed-navy);
  border-radius: 0;
  background: var(--undamed-navy);
  color: #fff;
  font-size: 12px;
  font-weight: 650;
  letter-spacing: .015em;
  cursor: pointer;
  transition: background 160ms ease, color 160ms ease;
}

.undamed-filter-trigger:hover,
.undamed-filter-trigger:focus-visible {
  outline: 0;
  background: #111c44;
  color: #fff;
}

.undamed-filter-trigger__icon {
  position: relative;
  width: 16px;
  height: 12px;
  background:
    linear-gradient(currentColor,currentColor) 0 1px/16px 1px no-repeat,
    linear-gradient(currentColor,currentColor) 0 6px/16px 1px no-repeat,
    linear-gradient(currentColor,currentColor) 0 11px/16px 1px no-repeat;
}

.undamed-filter-trigger__icon::before,
.undamed-filter-trigger__icon::after {
  position: absolute;
  width: 4px;
  height: 4px;
  border: 1px solid currentColor;
  border-radius: 50%;
  background: var(--undamed-navy);
  content: '';
}

.undamed-filter-trigger__icon::before {
  top: -1px;
  left: 3px;
}

.undamed-filter-trigger__icon::after {
  right: 3px;
  bottom: -1px;
}

.undamed-filter-trigger__count {
  display: inline-grid;
  min-width: 18px;
  height: 18px;
  padding: 0 4px;
  place-items: center;
  border-radius: 999px;
  background: #fff;
  color: var(--undamed-navy);
  font-size: 10px;
  line-height: 1;
}

body.undamed-filter-open {
  overflow: hidden;
}

.undamed-filter-shell {
  position: fixed;
  z-index: 2000;
  inset: 0;
  pointer-events: none;
}

.undamed-filter-shell[hidden] {
  display: none !important;
}

.undamed-filter-shell.is-open {
  pointer-events: auto;
}

.undamed-filter-backdrop {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  padding: 0;
  border: 0;
  background: rgb(9 18 48 / 38%);
  opacity: 0;
  transition: opacity 220ms ease;
}

.undamed-filter-shell.is-open .undamed-filter-backdrop {
  opacity: 1;
}

.undamed-filter-drawer {
  position: absolute;
  top: 0;
  right: 0;
  display: grid;
  width: min(440px, 92vw);
  height: 100%;
  grid-template-rows: auto minmax(0, 1fr) auto;
  background: #fff;
  box-shadow: -18px 0 50px rgb(9 18 48 / 12%);
  transform: translateX(100%);
  transition: transform 240ms ease;
}

.undamed-filter-shell.is-open .undamed-filter-drawer {
  transform: translateX(0);
}

.undamed-filter-drawer__header {
  display: flex;
  min-height: 76px;
  padding: 20px 24px;
  align-items: center;
  justify-content: space-between;
  border-bottom: 1px solid rgb(26 38 83 / 13%);
}

.undamed-filter-drawer__header h2 {
  margin: 0;
  color: var(--undamed-navy);
  font-size: 22px;
  font-weight: 650;
  letter-spacing: -.025em;
}

.undamed-filter-drawer__close {
  display: grid;
  width: 36px;
  height: 36px;
  padding: 0;
  place-items: center;
  border: 0;
  background: transparent;
  color: var(--undamed-navy);
  font-size: 28px;
  font-weight: 300;
  line-height: 1;
  cursor: pointer;
}

.undamed-filter-drawer__body {
  overflow: auto;
  overscroll-behavior: contain;
  padding: 0 24px 28px;
}

.undamed-filter-section,
.undamed-filter-drawer__body #search-filters .accordion-item {
  padding: 22px 0;
  border: 0 !important;
  border-bottom: 1px solid rgb(26 38 83 / 13%) !important;
  background: transparent !important;
}

.undamed-filter-section h3 {
  margin: 0 0 15px;
  color: var(--undamed-navy);
  font-size: 12px;
  font-weight: 750;
  letter-spacing: .055em;
  text-transform: uppercase;
}

.undamed-filter-options {
  display: grid;
  gap: 12px;
}

.undamed-filter-option {
  position: relative;
  display: flex;
  min-height: 24px;
  margin: 0;
  align-items: center;
  gap: 11px;
  color: var(--undamed-ink);
  font-size: 13px;
  cursor: pointer;
}

.undamed-filter-option input {
  position: absolute;
  width: 1px;
  height: 1px;
  opacity: 0;
  pointer-events: none;
}

.undamed-filter-option__mark {
  position: relative;
  display: block;
  width: 18px;
  height: 18px;
  flex: 0 0 18px;
  border: 1px solid rgb(26 38 83 / 35%);
  background: #fff;
}

.undamed-filter-option input:checked + .undamed-filter-option__mark {
  border-color: var(--undamed-navy);
  background: var(--undamed-navy);
}

.undamed-filter-option input:checked + .undamed-filter-option__mark:not(.undamed-filter-option__mark--color)::after {
  position: absolute;
  top: 3px;
  left: 5px;
  width: 5px;
  height: 9px;
  border-right: 1.5px solid #fff;
  border-bottom: 1.5px solid #fff;
  content: '';
  transform: rotate(45deg);
}

.undamed-filter-option__mark--color {
  border: 3px solid #fff;
  border-radius: 50%;
  background: var(--undamed-filter-color, #f4f4f1);
  box-shadow: 0 0 0 1px rgb(26 38 83 / 22%);
}

.undamed-filter-option input:checked + .undamed-filter-option__mark--color {
  background: var(--undamed-filter-color, #f4f4f1);
  box-shadow: 0 0 0 2px var(--undamed-navy);
}

.undamed-filter-options--sizes {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}

.undamed-filter-options--sizes .undamed-filter-option {
  min-height: 38px;
  justify-content: center;
  border: 1px solid rgb(26 38 83 / 20%);
  font-size: 11px;
}

.undamed-filter-options--sizes .undamed-filter-option:has(input:checked) {
  border-color: var(--undamed-navy);
  box-shadow: inset 0 0 0 1px var(--undamed-navy);
}

.undamed-filter-options--sizes .undamed-filter-option__mark {
  display: none;
}

.undamed-filter-price {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.undamed-filter-price input {
  width: 100%;
  min-height: 42px;
  padding: 9px 11px;
  border: 1px solid rgb(26 38 83 / 22%);
  border-radius: 0;
  background: #fff;
  color: var(--undamed-ink);
  font-size: 12px;
  box-shadow: none;
}

.undamed-filter-price input:focus {
  outline: 0;
  border-color: var(--undamed-navy);
}

.undamed-filter-drawer__footer {
  display: grid;
  grid-template-columns: 1fr 1.45fr;
  gap: 10px;
  padding: 16px 24px max(16px, env(safe-area-inset-bottom));
  border-top: 1px solid rgb(26 38 83 / 13%);
  background: #fff;
}

.undamed-filter-clear,
.undamed-filter-show {
  min-height: 46px;
  padding: 10px 14px;
  border-radius: 0;
  font-size: 12px;
  font-weight: 700;
  cursor: pointer;
}

.undamed-filter-clear {
  border: 1px solid rgb(26 38 83 / 28%);
  background: #fff;
  color: var(--undamed-navy);
}

.undamed-filter-show {
  border: 1px solid var(--undamed-navy);
  background: var(--undamed-navy);
  color: #fff;
}

/* Native ps_facetedsearch moved into the UNDAMED drawer. */
.undamed-filter-drawer__body #search-filters {
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.undamed-filter-drawer__body #search-filters > .left-block__title,
.undamed-filter-drawer__body #search-filters > .search-filters__clear {
  display: none !important;
}

.undamed-filter-drawer__body #search-filters .accordion {
  border: 0 !important;
}

.undamed-filter-drawer__body #search-filters .accordion-button {
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: var(--undamed-navy) !important;
  font-size: 12px;
  font-weight: 750;
  letter-spacing: .055em;
  text-transform: uppercase;
  box-shadow: none !important;
}

.undamed-filter-drawer__body #search-filters .accordion-body {
  margin: 15px 0 0 !important;
  padding: 0 !important;
}

.undamed-filter-drawer__body #search-filters li {
  margin: 0 0 10px;
}

.undamed-filter-drawer__body #search-filters .form-check {
  min-height: 22px;
  margin: 0;
  padding-left: 27px;
}

.undamed-filter-drawer__body #search-filters .form-check-input {
  width: 17px;
  height: 17px;
  margin-left: -27px;
  border-radius: 0;
  border-color: rgb(26 38 83 / 35%);
  box-shadow: none;
}

.undamed-filter-drawer__body #search-filters .form-check-input:checked {
  border-color: var(--undamed-navy);
  background-color: var(--undamed-navy);
}

.undamed-filter-drawer__body #search-filters .search-filters__form-label,
.undamed-filter-drawer__body #search-filters .search-filters__link {
  color: var(--undamed-ink) !important;
  font-size: 13px;
  text-decoration: none !important;
}

.undamed-filter-drawer__body #search-filters .color,
.undamed-filter-drawer__body #search-filters .color-sm {
  width: 18px !important;
  height: 18px !important;
}

.undamed-filter-drawer__body #search-filters .search-filters__slider-container {
  padding-top: 16px !important;
}

.undamed-active-filter-list {
  display: flex;
  margin: -4px 0 22px;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
}

.undamed-active-filter,
.undamed-active-filter-clear {
  display: inline-flex;
  min-height: 32px;
  padding: 6px 10px;
  align-items: center;
  gap: 8px;
  border-radius: 999px;
  font-size: 11px;
  cursor: pointer;
}

.undamed-active-filter {
  border: 1px solid rgb(26 38 83 / 18%);
  background: #f7f7f4;
  color: var(--undamed-ink);
}

.undamed-active-filter span {
  color: var(--undamed-navy);
  font-size: 15px;
  line-height: 1;
}

.undamed-active-filter-clear {
  border: 0;
  background: transparent;
  color: var(--undamed-navy);
  text-decoration: underline;
  text-underline-offset: 3px;
}

body.undamed-fallback-filtering .products__pagination {
  display: none !important;
}

@media (max-width: 767.98px) {
  body.undamed-listing-fullwidth:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) .products__selection {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
  }

  body.undamed-listing-fullwidth:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) .products__count {
    display: none !important;
  }

  body.undamed-listing-fullwidth:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) .products__sort {
    width: 100%;
    margin: 0;
  }

  body.undamed-listing-fullwidth:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) .products__sort-dropdown,
  body.undamed-listing-fullwidth:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) .products__sort-dropdown-button,
  .undamed-filter-trigger {
    width: 100%;
  }

  .undamed-filter-drawer {
    width: 100%;
    max-width: none;
  }

  .undamed-filter-drawer__header {
    min-height: 66px;
    padding: 16px 18px;
  }

  .undamed-filter-drawer__body {
    padding-inline: 18px;
  }

  .undamed-filter-drawer__footer {
    padding-inline: 18px;
  }

  .undamed-filter-options--sizes {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

/* CZ Undamed Theme 1.0.21 - compact sticky desktop header. */
.undamed-sticky-header-spacer[hidden] {
  display: none !important;
}

@media (min-width: 992px) {
  #header.header {
    transition: box-shadow .2s ease, border-color .2s ease;
  }

  #header.undamed-header--stuck {
    position: fixed !important;
    z-index: 12000 !important;
    top: 0 !important;
    right: 0 !important;
    left: 0 !important;
    width: 100% !important;
    margin: 0 !important;
    border-bottom-color: rgb(26 38 83 / 13%) !important;
    background: rgb(255 255 255 / 98%) !important;
    box-shadow: 0 8px 28px rgb(19 29 65 / 8%) !important;
    backdrop-filter: blur(10px);
  }

  #header.undamed-header--stuck .header-bottom,
  #header.undamed-header--stuck .header-bottom__row {
    min-height: 64px !important;
    height: 64px !important;
  }

  #header.undamed-header--stuck .header-bottom__container {
    max-width: var(--undamed-shell-width) !important;
  }

  #header.undamed-header--stuck .header-bottom__logo {
    width: 176px !important;
    flex-basis: 176px !important;
  }

  #header.undamed-header--stuck .navbar-brand {
    width: 164px !important;
    height: 42px !important;
  }

  #header.undamed-header--stuck .navbar-brand img {
    width: 164px !important;
    height: 42px !important;
  }

  #header.undamed-header--stuck .header-nav-full-width {
    height: 64px !important;
  }

  #header.undamed-header--stuck .undamed-menu__root-line > a {
    padding-top: 22px !important;
    padding-bottom: 20px !important;
  }

  #header.undamed-header--stuck .undamed-header-actions {
    height: 64px !important;
    min-height: 64px !important;
  }

  #header.undamed-header--stuck .undamed-header-actions #_desktop_ps_searchbar,
  #header.undamed-header--stuck .undamed-header-actions .ps-searchbar__form {
    width: 174px !important;
    max-width: 174px !important;
    flex-basis: 174px !important;
  }

  #header.undamed-header--stuck .ps-searchbar__input {
    height: 34px !important;
  }

  #header.undamed-header--stuck .undamed-header-actions .undamed-header-account,
  #header.undamed-header--stuck .undamed-header-actions .undamed-header-cart,
  #header.undamed-header--stuck .undamed-header-actions .undamed-header-cart__trigger {
    width: 38px !important;
    height: 38px !important;
    min-width: 38px !important;
    min-height: 38px !important;
    flex-basis: 38px !important;
  }

  body.undamed-desktop-header-stuck#product .product-information,
  body.undamed-desktop-header-stuck#product .product-details {
    top: 80px !important;
  }
}

@media (max-width: 1199.98px) and (min-width: 992px) {
  #header.undamed-header--stuck .header-bottom__logo {
    width: 158px !important;
    flex-basis: 158px !important;
  }

  #header.undamed-header--stuck .navbar-brand,
  #header.undamed-header--stuck .navbar-brand img {
    width: 148px !important;
  }

  #header.undamed-header--stuck .undamed-header-actions #_desktop_ps_searchbar,
  #header.undamed-header--stuck .undamed-header-actions .ps-searchbar__form {
    width: 146px !important;
    max-width: 146px !important;
    flex-basis: 146px !important;
  }
}


/* CZ Undamed 1.0.32 - do not leak the main PDP quantity sizing into related/recent product miniatures. */
body#product .product-miniature .quantity-button__group {
  width: auto !important;
  height: auto !important;
  min-width: 0 !important;
  flex-wrap: nowrap !important;
}

/* CZ Undamed 1.0.23 - cart drawer */
body.undamed-cart-drawer-open {
  overflow: hidden !important;
}

/* The native ps_shoppingcart confirmation modal is replaced by the UNDAMED drawer. */
body.cz-undamedtheme #blockcart-modal {
  display: none !important;
}

.undamed-cart-drawer-shell {
  position: fixed;
  z-index: 2147482000;
  inset: 0;
  display: grid;
  grid-template-columns: 1fr auto;
  pointer-events: none;
}

.undamed-cart-drawer-shell[hidden] {
  display: none !important;
}

.undamed-cart-drawer__backdrop {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  padding: 0;
  border: 0;
  background: rgb(14 22 48 / 42%);
  opacity: 0;
  cursor: default;
  transition: opacity .22s ease;
}

.undamed-cart-drawer {
  position: relative;
  z-index: 1;
  grid-column: 2;
  display: grid;
  width: min(460px, 100vw);
  height: 100dvh;
  grid-template-rows: auto auto minmax(0, 1fr) auto;
  background: #fff;
  box-shadow: -22px 0 64px rgb(12 22 50 / 18%);
  color: var(--undamed-ink, #12172a);
  transform: translateX(102%);
  transition: transform .24s cubic-bezier(.22,.61,.36,1);
  pointer-events: auto;
}

.undamed-cart-drawer-shell.is-open {
  pointer-events: auto;
}

.undamed-cart-drawer-shell.is-open .undamed-cart-drawer__backdrop {
  opacity: 1;
}

.undamed-cart-drawer-shell.is-open .undamed-cart-drawer {
  transform: translateX(0);
}

.undamed-cart-drawer__header {
  display: flex;
  min-height: 76px;
  padding: 18px 22px;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  border-bottom: 1px solid rgb(26 38 83 / 12%);
}

.undamed-cart-drawer__heading {
  display: flex;
  align-items: center;
  gap: 9px;
}

.undamed-cart-drawer__title {
  margin: 0;
  color: var(--undamed-navy, #1a2653);
  font-size: 21px;
  font-weight: 700;
  line-height: 1.15;
  letter-spacing: -.025em;
}

.undamed-cart-drawer__count {
  display: grid;
  min-width: 22px;
  height: 22px;
  padding: 0 6px;
  place-items: center;
  border-radius: 999px;
  background: var(--undamed-navy, #1a2653);
  color: #fff;
  font-size: 10px;
  font-weight: 700;
}

.undamed-cart-drawer__close {
  display: grid;
  width: 38px;
  height: 38px;
  padding: 0;
  place-items: center;
  border: 0;
  background: transparent;
  color: var(--undamed-navy, #1a2653);
  font: 300 30px/1 Arial, sans-serif;
  cursor: pointer;
}

.undamed-cart-drawer__close:hover,
.undamed-cart-drawer__close:focus-visible {
  background: rgb(26 38 83 / 6%);
  outline: none;
}

.undamed-cart-drawer__status {
  min-height: 0;
  padding: 0 22px;
  background: #fff3f3;
  color: #7b2136;
  font-size: 12px;
  line-height: 1.4;
}

.undamed-cart-drawer__status:not(:empty) {
  padding-top: 10px;
  padding-bottom: 10px;
  border-bottom: 1px solid rgb(123 33 54 / 12%);
}

.undamed-cart-drawer__body {
  min-height: 0;
  overflow: auto;
  overscroll-behavior: contain;
}

.undamed-cart-drawer__items {
  padding: 4px 22px;
}

.undamed-cart-drawer__item {
  display: grid;
  grid-template-columns: 86px minmax(0, 1fr) auto;
  gap: 14px;
  padding: 18px 0;
  align-items: start;
  border-bottom: 1px solid rgb(26 38 83 / 10%);
}

.undamed-cart-drawer__image {
  display: block;
  width: 86px;
  aspect-ratio: 4 / 5;
  overflow: hidden;
  background: #f6f6f3;
}

.undamed-cart-drawer__image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.undamed-cart-drawer__info {
  min-width: 0;
}

.undamed-cart-drawer__name {
  display: block;
  margin: 1px 0 6px;
  color: var(--undamed-navy, #1a2653) !important;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.3;
  text-decoration: none !important;
}

.undamed-cart-drawer__name:hover,
.undamed-cart-drawer__name:focus-visible {
  color: var(--undamed-burgundy, #64213e) !important;
}

.undamed-cart-drawer__attributes {
  margin: 0 0 12px;
  color: var(--undamed-muted, #687087);
  font-size: 11px;
  line-height: 1.45;
}

.undamed-cart-drawer__controls {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px 14px;
}

.undamed-cart-drawer__quantity {
  display: grid;
  grid-template-columns: 30px 34px 30px;
  height: 32px;
  border: 1px solid rgb(26 38 83 / 18%);
}

.undamed-cart-drawer__qty-button {
  display: grid;
  padding: 0;
  place-items: center;
  border: 0;
  background: transparent;
  color: var(--undamed-navy, #1a2653);
  font-size: 17px;
  line-height: 1;
  cursor: pointer;
}

.undamed-cart-drawer__qty-button:hover:not(:disabled),
.undamed-cart-drawer__qty-button:focus-visible:not(:disabled) {
  background: rgb(26 38 83 / 6%);
  outline: none;
}

.undamed-cart-drawer__qty-button:disabled,
.undamed-cart-drawer__remove:disabled {
  opacity: .4;
  cursor: not-allowed;
}

.undamed-cart-drawer__qty-value {
  display: grid;
  place-items: center;
  border-right: 1px solid rgb(26 38 83 / 12%);
  border-left: 1px solid rgb(26 38 83 / 12%);
  color: var(--undamed-navy, #1a2653);
  font-size: 11px;
  font-weight: 650;
}

.undamed-cart-drawer__remove {
  padding: 3px 0;
  border: 0;
  border-bottom: 1px solid currentColor;
  background: transparent;
  color: var(--undamed-muted, #687087);
  font-size: 10px;
  line-height: 1.2;
  cursor: pointer;
}

.undamed-cart-drawer__remove:hover,
.undamed-cart-drawer__remove:focus-visible {
  color: var(--undamed-burgundy, #64213e);
  outline: none;
}

.undamed-cart-drawer__price {
  padding-top: 1px;
  color: var(--undamed-navy, #1a2653);
  font-size: 12px;
  font-weight: 700;
  white-space: nowrap;
}

.undamed-cart-drawer__footer {
  padding: 18px 22px 20px;
  border-top: 1px solid rgb(26 38 83 / 12%);
  background: #fff;
  box-shadow: 0 -10px 32px rgb(24 34 64 / 4%);
}

.undamed-cart-drawer__shipping {
  margin-bottom: 14px;
}

.undamed-cart-drawer__shipping-text {
  margin: 0 0 7px;
  color: var(--undamed-navy, #1a2653);
  font-size: 11px;
  text-align: center;
}

.undamed-cart-drawer__shipping-track {
  height: 3px;
  overflow: hidden;
  background: rgb(26 38 83 / 10%);
}

.undamed-cart-drawer__shipping-bar {
  display: block;
  height: 100%;
  background: var(--undamed-burgundy, #64213e);
  transition: width .2s ease;
}

.undamed-cart-drawer__summary {
  display: flex;
  margin-bottom: 14px;
  align-items: baseline;
  justify-content: space-between;
  gap: 20px;
  color: var(--undamed-navy, #1a2653);
  font-size: 13px;
  font-weight: 650;
}

.undamed-cart-drawer__summary strong {
  font-size: 17px;
  font-weight: 750;
}

.undamed-cart-drawer__actions {
  display: grid;
  gap: 8px;
}

.undamed-cart-drawer__button,
.undamed-cart-drawer__continue {
  display: flex;
  min-height: 46px;
  padding: 11px 16px;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--undamed-navy, #1a2653);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .025em;
  text-decoration: none !important;
  text-transform: uppercase;
  transition: background-color .16s ease, color .16s ease, border-color .16s ease;
}

.undamed-cart-drawer__button--primary {
  border-color: var(--undamed-burgundy, #64213e);
  background: var(--undamed-burgundy, #64213e);
  color: #fff !important;
}

.undamed-cart-drawer__button--primary:hover,
.undamed-cart-drawer__button--primary:focus-visible {
  border-color: var(--undamed-navy, #1a2653);
  background: var(--undamed-navy, #1a2653);
  color: #fff !important;
}

.undamed-cart-drawer__button--secondary,
.undamed-cart-drawer__continue {
  background: #fff;
  color: var(--undamed-navy, #1a2653) !important;
}

.undamed-cart-drawer__button--secondary:hover,
.undamed-cart-drawer__button--secondary:focus-visible,
.undamed-cart-drawer__continue:hover,
.undamed-cart-drawer__continue:focus-visible {
  background: rgb(26 38 83 / 5%);
  color: var(--undamed-navy, #1a2653) !important;
}

.undamed-cart-drawer__empty {
  display: grid;
  min-height: 100%;
  padding: 52px 28px;
  place-items: center;
  align-content: center;
  gap: 12px;
  text-align: center;
}

.undamed-cart-drawer__empty .material-icons {
  color: var(--undamed-navy, #1a2653);
  font-size: 38px;
}

.undamed-cart-drawer__empty p {
  margin: 0 0 8px;
  color: var(--undamed-navy, #1a2653);
  font-size: 14px;
}

.undamed-cart-drawer__continue {
  min-width: 190px;
  cursor: pointer;
}

.undamed-cart-drawer-shell.is-busy .undamed-cart-drawer__qty-button,
.undamed-cart-drawer-shell.is-busy .undamed-cart-drawer__remove {
  pointer-events: none;
  opacity: .45;
}

@media (max-width: 575.98px) {
  .undamed-cart-drawer-shell {
    grid-template-columns: 1fr;
  }

  .undamed-cart-drawer {
    grid-column: 1;
    width: min(100vw, 440px);
  }

  .undamed-cart-drawer__header {
    min-height: 68px;
    padding: 14px 16px;
  }

  .undamed-cart-drawer__items {
    padding: 0 16px;
  }

  .undamed-cart-drawer__item {
    grid-template-columns: 76px minmax(0, 1fr);
    gap: 12px;
    padding: 16px 0;
  }

  .undamed-cart-drawer__image {
    width: 76px;
  }

  .undamed-cart-drawer__price {
    grid-column: 2;
    justify-self: start;
    margin-top: -4px;
  }

  .undamed-cart-drawer__footer {
    padding: 16px;
    padding-bottom: max(16px, env(safe-area-inset-bottom));
  }
}

@media (prefers-reduced-motion: reduce) {
  .undamed-cart-drawer,
  .undamed-cart-drawer__backdrop,
  .undamed-cart-drawer__shipping-bar {
    transition: none !important;
  }
}

/* CZ Undamed Theme 1.0.24 - mobile storefront audit. */
@media (max-width: 991.98px) {
  html {
    scroll-padding-top: 72px !important;
    -webkit-text-size-adjust: 100%;
  }

  body.cz-undamedtheme {
    overflow-x: hidden;
  }

  /* Keep the compact navigation available while browsing long mobile pages. */
  #header.header {
    position: sticky !important;
    z-index: 12000 !important;
    top: 0 !important;
    width: 100% !important;
    border-bottom: 1px solid rgb(26 38 83 / 11%) !important;
    background: rgb(255 255 255 / 98%) !important;
    box-shadow: 0 5px 20px rgb(18 28 60 / 6%) !important;
    backdrop-filter: blur(10px);
  }

  #header .header-bottom,
  #header .header-bottom__row {
    min-height: 64px !important;
    height: 64px !important;
  }

  #header .header-bottom__container {
    width: 100% !important;
    padding-inline: 8px !important;
  }

  #header .header-bottom__row {
    gap: 0 !important;
    padding-left: 46px !important;
  }

  #header .header-bottom__logo {
    width: min(142px, 31vw) !important;
    min-width: 0 !important;
    flex: 1 1 auto !important;
    margin-right: auto !important;
  }

  #header .navbar-brand,
  #header .navbar-brand img {
    width: min(138px, 30vw) !important;
    max-width: 138px !important;
    height: 38px !important;
  }

  #header .header-nav-full-width {
    width: 46px !important;
    height: 64px !important;
  }

  #header .undamed-menu__toggle {
    width: 46px !important;
    height: 64px !important;
  }

  #header .undamed-menu__panel {
    z-index: 11990 !important;
    top: 64px !important;
    padding-bottom: env(safe-area-inset-bottom);
    overscroll-behavior: contain;
  }

  #header .ps-searchbar--mobile,
  #header #_mobile_ps_customersignin,
  #header .undamed-header-wishlist-mobile-holder,
  #header .undamed-header-cart {
    display: flex !important;
    width: 40px !important;
    min-width: 40px !important;
    height: 64px !important;
    flex: 0 0 40px !important;
    margin: 0 !important;
    padding: 0 !important;
    align-items: center !important;
    justify-content: center !important;
  }

  #header .ps-searchbar--mobile .header-block,
  #header #_mobile_ps_customersignin .header-block,
  #header .ps-searchbar--mobile .header-block__action-btn,
  #header #_mobile_ps_customersignin .header-block__action-btn,
  #header .undamed-header-wishlist--mobile,
  #header .undamed-header-cart__trigger {
    display: grid !important;
    width: 40px !important;
    min-width: 40px !important;
    height: 64px !important;
    min-height: 64px !important;
    padding: 0 !important;
    place-items: center !important;
  }

  #header .undamed-header-wishlist__count,
  #header .undamed-header-cart__count {
    top: 11px !important;
    right: 0 !important;
  }

  /* Home: reduce excessive vertical length without making touch targets tiny. */
  body.page-index .undamed-home {
    --uh-gap: 38px !important;
    width: calc(100% - 20px) !important;
    padding-top: 10px !important;
  }

  body.page-index .undamed-section-heading {
    margin-bottom: 16px !important;
  }

  body.page-index .undamed-hero__content,
  body.page-index .undamed-split__content,
  body.page-index .undamed-fabrics {
    padding: clamp(20px, 5vw, 30px) !important;
  }

  body.page-index .undamed-hero h1 {
    max-width: 9ch !important;
    margin-bottom: 18px !important;
    font-size: clamp(38px, 10.7vw, 56px) !important;
    line-height: 1.04 !important;
    letter-spacing: -.048em !important;
  }

  body.page-index .undamed-hero__media,
  body.page-index .undamed-split__media {
    aspect-ratio: 4 / 5 !important;
  }

  body.page-index .undamed-usp-bar > div {
    display: grid;
    min-height: 54px;
    padding: 12px 10px !important;
    place-items: center;
    font-size: 10px !important;
    line-height: 1.35;
  }

  body.page-index .undamed-categories__grid,
  body.page-index .undamed-product-row__items,
  body.page-index .undamed-blog .cz-blog-grid-home,
  body.page-index .undamed-fabrics__cards {
    scrollbar-width: none;
    -webkit-overflow-scrolling: touch;
  }

  body.page-index .undamed-categories__grid::-webkit-scrollbar,
  body.page-index .undamed-product-row__items::-webkit-scrollbar,
  body.page-index .undamed-blog .cz-blog-grid-home::-webkit-scrollbar,
  body.page-index .undamed-fabrics__cards::-webkit-scrollbar {
    display: none;
  }

  body.page-index .undamed-split__content h2,
  body.page-index .undamed-fabrics__intro h2 {
    font-size: clamp(32px, 8.8vw, 46px) !important;
    line-height: 1.02 !important;
  }

  body.page-index .undamed-benefits {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    margin-top: -12px !important;
  }

  body.page-index .undamed-benefits article {
    min-height: 112px;
    padding: 16px 11px !important;
  }

  body.page-index .undamed-benefits article:nth-child(2n) {
    border-right: 0 !important;
  }

  body.page-index .undamed-fabrics__cards {
    display: grid !important;
    grid-auto-columns: min(76vw, 330px) !important;
    grid-auto-flow: column !important;
    grid-template-columns: none !important;
    gap: 12px !important;
    overflow-x: auto !important;
    scroll-snap-type: x mandatory;
  }

  body.page-index .undamed-fabric-card {
    min-height: 0 !important;
    aspect-ratio: 4 / 5;
    scroll-snap-align: start;
  }

  body.page-index .undamed-product-row__items {
    grid-auto-columns: min(68vw, 300px) !important;
    gap: 10px !important;
  }

  body.page-index .undamed-blog .cz-blog-grid-home {
    display: grid !important;
    grid-auto-columns: min(82vw, 360px) !important;
    grid-auto-flow: column !important;
    grid-template-columns: none !important;
    gap: 12px !important;
    overflow-x: auto !important;
    scroll-snap-type: x mandatory;
  }

  body.page-index .undamed-blog .cz-blog-card {
    min-width: 0;
    scroll-snap-align: start;
  }

  /* Listing: two readable cards, large filter/sort targets and horizontal active chips. */
  body:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) .columns-container {
    padding-inline: 10px !important;
  }

  body:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) #js-product-list-header {
    margin: 8px 0 18px !important;
  }

  body:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) #js-product-list-header h1,
  body:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) #js-product-list-header .page-title-section__title {
    font-size: clamp(28px, 8.5vw, 36px) !important;
    line-height: 1.02 !important;
  }

  body:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) .category__description {
    margin-top: 8px;
    font-size: 12px;
    line-height: 1.55;
  }

  body.undamed-listing-fullwidth:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) .products__selection {
    min-height: 52px !important;
    margin-bottom: 14px !important;
    padding: 6px 0 !important;
  }

  body.undamed-listing-fullwidth:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) .undamed-filter-trigger,
  body.undamed-listing-fullwidth:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) .products__sort-dropdown-button {
    min-height: 44px !important;
    padding-block: 9px !important;
  }

  body:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) #js-product-list > .products {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 26px 8px !important;
  }

  body:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) .product-miniature__bottom {
    padding-top: 8px !important;
  }

  body:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) .product-miniature__infos {
    gap: 6px !important;
  }

  body:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) .product-miniature__title {
    font-size: 11px !important;
    line-height: 1.32 !important;
  }

  body:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) .product-flags {
    top: 7px !important;
    left: 7px !important;
  }

  body:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) .product-flags .badge,
  body:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) .product-flags .product-flag {
    padding: 4px 5px !important;
    font-size: 8px !important;
  }

  .undamed-listing-swatches {
    min-height: 26px !important;
    gap: 7px !important;
  }

  .undamed-listing-swatch {
    width: 20px !important;
    height: 20px !important;
  }

  .undamed-active-filter-list {
    margin: -2px 0 14px !important;
    padding-bottom: 2px;
    flex-wrap: nowrap !important;
    overflow-x: auto;
    scrollbar-width: none;
  }

  .undamed-active-filter-list::-webkit-scrollbar {
    display: none;
  }

  .undamed-active-filter,
  .undamed-active-filter-clear {
    flex: 0 0 auto;
    min-height: 36px !important;
  }

  .undamed-filter-drawer {
    width: 100% !important;
    max-width: none !important;
    height: 100dvh !important;
  }

  .undamed-filter-drawer__header {
    min-height: 64px !important;
    padding: 12px 16px !important;
  }

  .undamed-filter-drawer__close {
    width: 44px !important;
    height: 44px !important;
  }

  .undamed-filter-drawer__body {
    padding: 0 16px 18px !important;
    overscroll-behavior: contain;
  }

  .undamed-filter-drawer__footer {
    padding: 12px 16px max(12px, env(safe-area-inset-bottom)) !important;
  }

  .undamed-filter-clear,
  .undamed-filter-show {
    min-height: 46px !important;
  }

  /* PDP: larger taps, stable 4:5 gallery and compact purchase flow. */
  body#product .columns-container.container,
  body#product .undamed-product-pairing,
  body#product .undamed-product-recommendations,
  body#product .undamed-product-recent {
    padding-inline: 10px !important;
  }

  body#product .columns-container.container {
    padding-top: 10px !important;
  }

  body#product .product__images {
    gap: 8px !important;
  }

  body#product .product__carousel .carousel-control-prev,
  body#product .product__carousel .carousel-control-next,
  body#product .product__zoom {
    width: 40px !important;
    height: 40px !important;
  }

  body#product .product__thumbnails {
    margin-inline: -1px !important;
    padding-bottom: 2px;
    scrollbar-width: none;
  }

  body#product .product__thumbnails::-webkit-scrollbar,
  body#product .product__thumbnails-list::-webkit-scrollbar {
    display: none;
  }

  body#product .product__thumbnail {
    width: 60px !important;
    height: 75px !important;
    min-width: 60px !important;
  }

  body#product .product__right {
    margin-top: 18px !important;
  }

  body#product .product__name,
  body#product .product__name.undamed-product-title-with-wishlist {
    min-height: 42px !important;
    margin-bottom: 9px !important;
    padding-right: 48px !important;
    font-size: clamp(20px, 5.5vw, 24px) !important;
    line-height: 1.12 !important;
  }

  body#product .product__name > .undamed-wishlist-button--product {
    top: -5px !important;
    width: 42px !important;
    height: 42px !important;
  }

  body#product .product__prices {
    margin-bottom: 10px !important;
  }

  body#product .product__price {
    font-size: 18px !important;
  }

  body#product .product-variant {
    padding: 13px 0 !important;
  }

  body#product .product-variant__label {
    margin-bottom: 8px !important;
  }

  body#product .undamed-inline-size-guide {
    display: inline-flex;
    min-height: 32px;
    align-items: center;
    padding-left: 8px;
  }

  body#product .product-variant__colors {
    gap: 7px !important;
  }

  body#product .product-variant__color.input-color,
  body#product .product-variant__color .input-color__label {
    width: 38px !important;
    height: 38px !important;
  }

  body#product .product-variant__color .color {
    width: 24px !important;
    height: 24px !important;
  }

  body#product .product-variant__radios {
    gap: 7px !important;
  }

  body#product .product-variant__radio .form-check-label {
    min-width: 44px !important;
    height: 40px !important;
    padding-inline: 9px !important;
    font-size: 11px !important;
  }

  body#product .undamed-personalization {
    margin: 12px 0 !important;
  }

  body#product .undamed-personalization__toggle {
    min-height: 40px !important;
  }

  body#product .product__actions-qty-add {
    grid-template-columns: 84px minmax(0, 1fr) !important;
    gap: 8px !important;
  }

  body#product #add-to-cart-or-refresh .product-actions__quantity,
  body#product #add-to-cart-or-refresh .quantity-button__group,
  body#product .product__add-to-cart-button {
    min-height: 48px !important;
    height: 48px !important;
  }

  body#product .undamed-product-extras__meta {
    gap: 12px !important;
  }

  body#product .undamed-accordions summary {
    min-height: 48px;
    padding-block: 14px !important;
    align-items: center;
  }

  body#product .undamed-product-pairing,
  body#product .undamed-product-recommendations,
  body#product .undamed-product-recent {
    margin-top: 36px !important;
  }

  body#product .undamed-product-pairing__card {
    grid-template-columns: 96px minmax(0, 1fr) !important;
    gap: 12px !important;
  }

  body#product .undamed-pair-color {
    width: 38px !important;
    height: 38px !important;
  }

  body#product .undamed-pair-color > span {
    width: 24px !important;
    height: 24px !important;
  }

  body#product .undamed-pair-size {
    min-width: 44px !important;
    height: 40px !important;
  }

  body#product .undamed-pair-length__choices span {
    min-width: 108px !important;
    height: 40px !important;
  }

  body#product .undamed-product-pairing__button {
    min-height: 48px !important;
    height: 48px !important;
  }

  body#product .undamed-product-recommendations__row,
  body#product .undamed-product-recent__row {
    grid-auto-columns: min(72vw, 300px) !important;
    gap: 10px !important;
    padding-bottom: 4px;
    scrollbar-width: none;
  }

  body#product .undamed-product-recommendations__row::-webkit-scrollbar,
  body#product .undamed-product-recent__row::-webkit-scrollbar {
    display: none;
  }

  /* Generic related cards on the PDP stay clean on touch devices. */
  body#product .product-miniature__actions {
    display: none !important;
  }

  /* Size guide bottom sheet: safe-area aware and easier to scroll horizontally. */
  .undamed-size-guide-modal__dialog {
    width: 100% !important;
    max-width: none !important;
    max-height: 94dvh !important;
    padding: 28px 16px max(28px, env(safe-area-inset-bottom)) !important;
    border-radius: 14px 14px 0 0 !important;
    overscroll-behavior: contain;
  }

  .undamed-size-guide-modal__close {
    width: 44px !important;
    height: 44px !important;
    top: 8px !important;
    right: 8px !important;
  }

  .undamed-size-guide-modal__header {
    padding-right: 38px !important;
  }

  .undamed-size-guide-table-wrap {
    margin-inline: -16px;
    padding-inline: 16px;
    scrollbar-width: thin;
  }

  .undamed-size-guide-table {
    min-width: 540px !important;
  }

  .undamed-size-guide-table th,
  .undamed-size-guide-table td {
    padding: 12px 10px !important;
  }

  /* Wishlist page and feedback. */
  .undamed-wishlist-page {
    padding-inline: 10px !important;
    padding-bottom: 36px !important;
  }

  .undamed-wishlist-page__head h1 {
    font-size: clamp(28px, 8vw, 36px) !important;
  }

  .undamed-wishlist-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 24px 8px !important;
  }

  .undamed-wishlist-card__media .undamed-wishlist-button {
    width: 40px !important;
    height: 40px !important;
  }

  .undamed-wishlist-toast {
    bottom: max(18px, env(safe-area-inset-bottom)) !important;
    width: max-content;
    max-width: calc(100vw - 24px) !important;
  }

  /* Cart drawer: full touch targets and iOS safe areas. */
  .undamed-cart-drawer {
    width: min(100vw, 440px) !important;
    height: 100dvh !important;
  }

  .undamed-cart-drawer__close {
    width: 44px !important;
    height: 44px !important;
  }

  .undamed-cart-drawer__qty-button {
    min-width: 40px;
    min-height: 40px;
  }

  .undamed-cart-drawer__quantity {
    grid-template-columns: 40px 40px 40px !important;
    height: 42px !important;
  }

  .undamed-cart-drawer__button,
  .undamed-cart-drawer__continue {
    min-height: 48px !important;
  }

  /* Footer consumes less vertical space while retaining native collapsibles. */
  #footer.footer {
    margin-top: 52px !important;
  }

  #footer .footer__main {
    padding: 24px 0 18px !important;
  }

  #footer .footer__main > .container {
    padding-inline: 14px !important;
  }

  #footer .footer-block {
    margin: 0 !important;
    border-bottom: 1px solid rgb(255 255 255 / 13%);
  }

  #footer .footer-block__title {
    display: flex;
    min-height: 48px;
    margin: 0 !important;
    align-items: center;
  }

  #footer .footer-block__content {
    padding-bottom: 12px;
  }

  .undamed-footer-signature {
    width: 100% !important;
    padding: 22px 14px !important;
    gap: 10px !important;
    font-size: 11px !important;
    line-height: 1.45;
  }

  .undamed-footer-signature__mark {
    width: 38px !important;
    height: 38px !important;
    flex: 0 0 38px;
    font-size: 15px !important;
  }

  button,
  a,
  input,
  select,
  label {
    touch-action: manipulation;
  }
}

@media (max-width: 575.98px) {
  body.page-index .undamed-home {
    --uh-gap: 32px !important;
    width: calc(100% - 16px) !important;
  }

  body.page-index .undamed-categories__grid {
    grid-auto-columns: min(68vw, 280px) !important;
    gap: 10px !important;
  }

  body.page-index .undamed-benefits article {
    min-height: 104px;
  }

  body.page-index .undamed-fabrics__cards {
    grid-auto-columns: min(78vw, 300px) !important;
  }

  body#product .undamed-personalization__head {
    gap: 8px !important;
  }

  body#product .undamed-product-extras__meta {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .undamed-cart-drawer__header {
    padding: 12px 14px !important;
  }

  .undamed-cart-drawer__items {
    padding-inline: 14px !important;
  }

  .undamed-cart-drawer__item {
    grid-template-columns: 72px minmax(0, 1fr) !important;
    gap: 11px !important;
  }

  .undamed-cart-drawer__image {
    width: 72px !important;
  }

  .undamed-cart-drawer__footer {
    padding: 14px 14px max(14px, env(safe-area-inset-bottom)) !important;
  }
}

@media (max-width: 374.98px) {
  #header .header-bottom__row {
    padding-left: 42px !important;
  }

  #header .header-nav-full-width,
  #header .undamed-menu__toggle {
    width: 42px !important;
  }

  #header .header-bottom__logo {
    width: 108px !important;
    flex-basis: 108px !important;
  }

  #header .navbar-brand,
  #header .navbar-brand img {
    width: 106px !important;
    height: 34px !important;
  }

  #header .ps-searchbar--mobile,
  #header #_mobile_ps_customersignin,
  #header .undamed-header-wishlist-mobile-holder,
  #header .undamed-header-cart,
  #header .ps-searchbar--mobile .header-block,
  #header #_mobile_ps_customersignin .header-block,
  #header .ps-searchbar--mobile .header-block__action-btn,
  #header #_mobile_ps_customersignin .header-block__action-btn,
  #header .undamed-header-wishlist--mobile,
  #header .undamed-header-cart__trigger {
    width: 36px !important;
    min-width: 36px !important;
    flex-basis: 36px !important;
  }

  body.page-index .undamed-hero h1 {
    font-size: 36px !important;
  }

  body:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) #js-product-list > .products {
    gap-inline: 7px !important;
  }

  .undamed-listing-swatch {
    width: 19px !important;
    height: 19px !important;
  }

  body#product .product__actions-qty-add {
    grid-template-columns: 78px minmax(0, 1fr) !important;
  }

  body#product .undamed-product-pairing__card {
    grid-template-columns: 86px minmax(0, 1fr) !important;
  }

  .undamed-wishlist-grid {
    grid-template-columns: 1fr !important;
    gap: 24px !important;
  }
}

/* CZ Undamed Theme 1.0.25 - mobile menu/sticky fixes and compact miniature CTA. */
.undamed-mobile-header-spacer[hidden] {
  display: none !important;
}

@media (max-width: 991.98px) {
  body.undamed-mobile-menu-open {
    overflow: hidden !important;
    touch-action: none;
  }

  #header.header {
    /* backdrop-filter can establish a containing block for fixed descendants
       in mobile WebKit. Keep the menu panel tied to the viewport instead. */
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
  }

  #header.undamed-mobile-header--stuck {
    position: fixed !important;
    z-index: 12000 !important;
    top: 0 !important;
    right: 0 !important;
    left: 0 !important;
    width: 100% !important;
    transform: none !important;
  }

  .undamed-mobile-header-spacer {
    width: 100%;
    min-height: 64px;
  }

  #header .undamed-menu__panel {
    position: fixed !important;
    z-index: 11990 !important;
    top: 64px !important;
    right: 0 !important;
    bottom: 0 !important;
    left: 0 !important;
    width: 100vw !important;
    height: calc(100dvh - 64px) !important;
    max-height: calc(100dvh - 64px) !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    background: #fff !important;
    -webkit-overflow-scrolling: touch;
  }

  #header .undamed-menu.is-open .undamed-menu__panel {
    display: block !important;
  }

  /* Product-card cart CTAs should never dominate a two-column/mobile card. */
  body.cz-undamedtheme .product-miniature .product-miniature__add {
    display: inline-grid !important;
    width: 40px !important;
    min-width: 40px !important;
    max-width: 40px !important;
    height: 40px !important;
    min-height: 40px !important;
    max-height: 40px !important;
    padding: 0 !important;
    border-radius: 999px !important;
    line-height: 1 !important;
    place-items: center !important;
  }

  body.cz-undamedtheme .product-miniature .product-miniature__add .product-miniature__add-text {
    display: none !important;
  }

  body.cz-undamedtheme .product-miniature .product-miniature__add .material-icons {
    margin: 0 !important;
    font-size: 18px !important;
    line-height: 1 !important;
  }
}


/* CZ Undamed Theme 1.0.26 - mobile miniature/header containment hotfix. */
@media (max-width: 991.98px) {
  /* The theme marker is attached to <html>; keep the page itself from becoming
     a horizontal scroller while preserving intended inner carousels. */
  html.cz-undamedtheme,
  html.cz-undamedtheme body {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
  }

  @supports (overflow: clip) {
    html.cz-undamedtheme,
    html.cz-undamedtheme body {
      overflow-x: clip !important;
    }
  }

  #header .header-bottom__container,
  #header .header-bottom__row {
    max-width: 100% !important;
  }

  #header .header-bottom__row {
    width: 100% !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
  }

  /* ps_shoppingcart stays installed as the AJAX provider, but its native
     header trigger must never render next to the UNDAMED drawer trigger. */
  #header #_mobile_ps_shoppingcart,
  #header #_desktop_ps_shoppingcart,
  #header .ps-shoppingcart {
    display: none !important;
  }

  /* Hover photos are desktop-only. On touch screens the secondary image must
     not participate in layout at all (it can otherwise expose its intrinsic
     1200px width and create a horizontal page scroll). */
  .product-miniature .undamed-listing-secondary {
    display: none !important;
  }

  /* Compact quick-add on every miniature, including cart recommendations.
     Category cards already hide the action area, so this mainly cleans up
     recommendations and other Hummingbird miniature blocks. */
  html.cz-undamedtheme .product-miniature .product-miniature__actions .quantity-button {
    display: none !important;
  }

  html.cz-undamedtheme .product-miniature .product-miniature__form {
    display: flex !important;
    margin-top: 6px !important;
    align-items: center !important;
    justify-content: flex-start !important;
  }

  html.cz-undamedtheme .product-miniature .product-miniature__add {
    display: inline-grid !important;
    width: 40px !important;
    min-width: 40px !important;
    max-width: 40px !important;
    height: 40px !important;
    min-height: 40px !important;
    max-height: 40px !important;
    margin: 0 !important;
    padding: 0 !important;
    border-radius: 999px !important;
    line-height: 1 !important;
    place-items: center !important;
  }

  html.cz-undamedtheme .product-miniature .product-miniature__add .product-miniature__add-text {
    display: none !important;
  }

  html.cz-undamedtheme .product-miniature .product-miniature__add .material-icons {
    margin: 0 !important;
    font-size: 18px !important;
    line-height: 1 !important;
  }
}

/* Secondary listing image remains available only for real hover devices. */
.product-miniature .undamed-listing-secondary {
  display: none;
}

@media (min-width: 992px) and (hover: hover) and (pointer: fine) {
  body:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier)
  .product-miniature__top > .undamed-listing-secondary {
    display: block;
  }
}

/* CZ Undamed Theme 1.0.27 - mobile search, typography and full-width miniature CTA. */
@media (max-width: 991.98px) {
  /* FIGS-like mobile typography: compact UI copy, without shrinking form fields
     below the iOS-friendly 16px input size. */
  html.cz-undamedtheme body.cz-undamedtheme {
    font-size: 14px;
    line-height: 1.45;
  }

  html.cz-undamedtheme body.cz-undamedtheme .btn,
  html.cz-undamedtheme body.cz-undamedtheme button:not(.undamed-menu__toggle):not(.undamed-wishlist-button):not(.undamed-cart-drawer__close):not(.undamed-filter-drawer__close) {
    font-size: 12px;
  }

  html.cz-undamedtheme body.cz-undamedtheme input,
  html.cz-undamedtheme body.cz-undamedtheme select,
  html.cz-undamedtheme body.cz-undamedtheme textarea {
    font-size: 16px;
  }

  body.page-index .undamed-split__content h2,
  body.page-index .undamed-fabrics__intro h2 {
    font-size: clamp(27px, 7.4vw, 36px) !important;
    line-height: 1.05 !important;
  }

  body:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) #js-product-list-header h1,
  body:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) #js-product-list-header .page-title-section__title {
    font-size: clamp(23px, 6.8vw, 28px) !important;
    line-height: 1.08 !important;
  }

  body#product .product__name,
  body#product .product__name.undamed-product-title-with-wishlist {
    min-height: 0 !important;
    font-size: clamp(18px, 5vw, 21px) !important;
    line-height: 1.16 !important;
  }

  body#product .product__price {
    font-size: 16px !important;
  }

  body#product .undamed-product-pairing h2,
  body#product .undamed-product-recommendations h2,
  body#product .undamed-product-recent h2 {
    font-size: 15px !important;
    line-height: 1.25 !important;
  }

  .undamed-wishlist-page__head h1 {
    font-size: clamp(23px, 6.8vw, 28px) !important;
  }

  /* Hummingbird mobile search is an offcanvas nested in the header. Give it
     its own row below the 64px header so it never collides with menu/icons. */
  #header #searchCanvas.ps-searchbar__offcanvas {
    position: fixed !important;
    z-index: 12150 !important;
    top: 64px !important;
    right: 0 !important;
    bottom: auto !important;
    left: 0 !important;
    width: 100vw !important;
    max-width: none !important;
    height: auto !important;
    min-height: 68px !important;
    border: 0 !important;
    border-top: 1px solid rgb(26 38 83 / 8%) !important;
    border-bottom: 1px solid rgb(26 38 83 / 12%) !important;
    background: #fff !important;
    box-shadow: 0 10px 24px rgb(18 28 60 / 10%) !important;
  }

  #header #searchCanvas .offcanvas-header {
    width: 100% !important;
    min-height: 68px !important;
    margin: 0 !important;
    padding: 11px 12px !important;
    align-items: center !important;
    gap: 9px !important;
  }

  #header #searchCanvas #_mobile_ps_searchbar,
  #header #searchCanvas .ps-searchbar__container,
  #header #searchCanvas #ps_searchbar,
  #header #searchCanvas .ps-searchbar,
  #header #searchCanvas .ps-searchbar__form {
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    margin: 0 !important;
  }

  #header #searchCanvas #_mobile_ps_searchbar,
  #header #searchCanvas .ps-searchbar__container {
    flex: 1 1 auto !important;
  }

  #header #searchCanvas #ps_searchbar,
  #header #searchCanvas .ps-searchbar {
    position: relative !important;
  }

  #header #searchCanvas .ps-searchbar__form {
    position: relative !important;
    display: block !important;
  }

  #header #searchCanvas .ps-searchbar__input {
    width: 100% !important;
    height: 44px !important;
    padding: 0 40px 0 40px !important;
    border: 1px solid rgb(26 38 83 / 24%) !important;
    border-radius: 0 !important;
    background: #fff !important;
    color: var(--undamed-ink) !important;
    font-size: 16px !important;
    line-height: 44px !important;
    box-shadow: none !important;
  }

  #header #searchCanvas .ps-searchbar__magnifier {
    position: absolute !important;
    z-index: 2 !important;
    top: 50% !important;
    left: 12px !important;
    margin: 0 !important;
    color: var(--undamed-navy) !important;
    font-size: 19px !important;
    transform: translateY(-50%) !important;
    pointer-events: none;
  }

  #header #searchCanvas .ps-searchbar__clear {
    position: absolute !important;
    z-index: 3 !important;
    top: 50% !important;
    right: 4px !important;
    width: 36px !important;
    min-width: 36px !important;
    height: 36px !important;
    min-height: 36px !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    transform: translateY(-50%) !important;
  }

  #header #searchCanvas .offcanvas-header > .btn[data-bs-dismiss="offcanvas"] {
    width: auto !important;
    min-width: 0 !important;
    height: 44px !important;
    min-height: 44px !important;
    margin: 0 !important;
    padding: 0 2px !important;
    border: 0 !important;
    background: transparent !important;
    color: var(--undamed-navy) !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    text-transform: none !important;
    white-space: nowrap;
  }

  #header #searchCanvas .ps-searchbar__dropdown {
    position: absolute !important;
    z-index: 12170 !important;
    top: calc(100% + 7px) !important;
    right: 0 !important;
    left: 0 !important;
    width: 100% !important;
    max-height: min(54dvh, 430px) !important;
    overflow-y: auto !important;
    border: 1px solid rgb(26 38 83 / 12%) !important;
    background: #fff !important;
    box-shadow: 0 16px 34px rgb(18 28 60 / 14%) !important;
  }

  /* Full-width mobile CTA below miniatures instead of the 40px round icon. */
  html.cz-undamedtheme .product-miniature .product-miniature__actions,
  html.cz-undamedtheme .product-miniature .product-miniature__form {
    width: 100% !important;
    max-width: none !important;
  }

  html.cz-undamedtheme .product-miniature .product-miniature__form {
    display: block !important;
    margin-top: 7px !important;
  }

  html.cz-undamedtheme .product-miniature .product-miniature__add {
    display: flex !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    height: 40px !important;
    min-height: 40px !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 10px !important;
    border-radius: 0 !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
    font-size: 10px !important;
    line-height: 1.15 !important;
  }

  html.cz-undamedtheme .product-miniature .product-miniature__add .product-miniature__add-text {
    display: inline !important;
    font-size: 10px !important;
    font-weight: 650 !important;
    letter-spacing: .025em !important;
    line-height: 1.15 !important;
  }

  html.cz-undamedtheme .product-miniature .product-miniature__add .material-icons {
    margin: 0 !important;
    font-size: 16px !important;
    line-height: 1 !important;
  }
}

@media (max-width: 374.98px) {
  #header #searchCanvas .offcanvas-header {
    padding-inline: 9px !important;
    gap: 7px !important;
  }

  #header #searchCanvas .offcanvas-header > .btn[data-bs-dismiss="offcanvas"] {
    font-size: 10px !important;
  }
}


/* CZ Undamed Theme 1.0.28 - mobile listing cleanup and swatch de-duplication. */
@media (max-width: 767.98px) {
  body:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) #js-product-list > .products {
    gap: 22px 8px !important;
  }

  body:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) .product-miniature__bottom {
    padding-top: 7px !important;
  }

  body:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) .product-miniature__infos {
    gap: 4px !important;
  }

  body:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) .product-miniature__title {
    font-size: 11px !important;
    font-weight: 600 !important;
    line-height: 1.28 !important;
  }

  body:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) .product-miniature__prices {
    min-height: 18px !important;
    gap: 5px !important;
  }

  body:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) .product-miniature__price {
    font-size: 11px !important;
    line-height: 1.25 !important;
  }

  body:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) .undamed-listing-swatches {
    min-height: 22px !important;
    margin: 1px 0 0 !important;
    gap: 6px !important;
  }

  body:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier) .undamed-listing-swatch {
    width: 18px !important;
    height: 18px !important;
  }

  /* If stale compiled markup or another listing renderer leaves both the
     native Hummingbird variants and UNDAMED swatches, UNDAMED wins. */
  body:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier)
  .product-miniature__infos:has(> .undamed-listing-swatches) > .product-miniature__variants {
    display: none !important;
  }

  /* CSS fallback for a duplicated UNDAMED swatch row. The JS below also
     removes duplicates from the DOM, including after faceted-search refreshes. */
  body:is(.page-category,.page-search,.page-new-products,.page-best-sales,.page-prices-drop,.page-manufacturer,.page-supplier)
  .product-miniature__infos > .undamed-listing-swatches ~ .undamed-listing-swatches {
    display: none !important;
  }
}

/* CZ Undamed Theme 1.0.29 - FIGS-like desktop PDP and shared product rails. */
body#product .ps-categoryproducts,
body#product .product__accessories {
  display: none !important;
}

/* Fit / length stay available to JS as a source for the size-guide link, but
   visually belong inside MODEL DETAILS instead of a separate band. */
body#product .undamed-product-extras__meta {
  display: none !important;
}

body#product .undamed-model-meta {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px 18px;
  margin: 0 0 14px;
  padding: 0 0 14px;
  border-bottom: 1px solid rgb(26 38 83 / 10%);
}

body#product .undamed-model-meta span {
  display: grid;
  gap: 3px;
}

body#product .undamed-model-meta small {
  color: #717689;
  font-size: 9px;
  font-weight: 600;
  letter-spacing: .045em;
  text-transform: uppercase;
}

body#product .undamed-model-meta strong {
  color: #24293c;
  font-size: 11px;
  font-weight: 650;
  line-height: 1.35;
}

body#product .undamed-product-rail__head {
  display: flex;
  margin: 0 0 16px;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}

body#product .undamed-product-rail__head h2 {
  margin: 0 !important;
}

body#product .undamed-product-rail__controls {
  display: flex;
  gap: 7px;
}

body#product .undamed-product-rail__controls button {
  display: grid;
  width: 34px;
  height: 34px;
  padding: 0;
  place-items: center;
  border: 1px solid #d8dbe2;
  border-radius: 50%;
  background: #fff;
  color: var(--undamed-navy);
  font-size: 22px;
  font-weight: 300;
  line-height: 1;
  cursor: pointer;
}

body#product .undamed-product-rail__controls button:disabled {
  opacity: .28;
  cursor: default;
}

body#product .undamed-product-card__meta {
  margin-top: 2px !important;
  color: #6f7483 !important;
  font-size: 10px !important;
  font-weight: 500 !important;
  line-height: 1.35 !important;
}

body#product .undamed-product-card__price {
  margin-top: 4px !important;
  color: #151a2e !important;
  font-size: 11px !important;
  font-weight: 700 !important;
}

body#product .undamed-product-pairing,
body#product .undamed-product-recommendations,
body#product .undamed-product-recent {
  max-width: 1540px !important;
}

@media (min-width: 992px) {
  /* Make the buy panel read as one compact stack, like the approved reference. */
  body#product .product__right {
    max-width: 470px !important;
    padding-top: 0 !important;
  }

  body#product .product__name {
    margin-bottom: 9px !important;
    font-size: clamp(20px, 1.25vw, 25px) !important;
  }

  body#product .product__prices {
    margin-bottom: 10px !important;
  }

  body#product .product__price {
    font-size: 17px !important;
  }

  body#product .product__variants {
    margin-top: 2px !important;
  }

  body#product .product-variant {
    padding: 11px 0 !important;
  }

  body#product .product-variant__label {
    min-height: 20px !important;
    margin-bottom: 7px !important;
  }

  body#product .undamed-variant-kicker {
    margin-bottom: 7px !important;
  }

  body#product .undamed-personalization {
    margin: 10px 0 9px !important;
  }

  body#product .product__add-to-cart-container.product-add-to-cart {
    margin-top: 9px !important;
  }

  /* Quantity: compact single field with a chevron instead of a +/- stepper. */
  body#product .product__actions-qty-add {
    grid-template-columns: 58px minmax(0, 1fr) !important;
    gap: 8px !important;
  }

  body#product #add-to-cart-or-refresh .product-actions__quantity,
  body#product #add-to-cart-or-refresh .quantity-button__group {
    position: relative !important;
    width: 58px !important;
    height: 44px !important;
  }

  body#product #add-to-cart-or-refresh .quantity-button__group .btn {
    display: none !important;
  }

  body#product #add-to-cart-or-refresh #quantity_wanted {
    width: 58px !important;
    min-width: 58px !important;
    height: 44px !important;
    padding: 0 25px 0 11px !important;
    border: 1px solid #d8dae0 !important;
    background-color: #fff !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='7' viewBox='0 0 12 7'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%231a2653' stroke-width='1.2'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: right 9px center !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    font-size: 11px !important;
    text-align: left !important;
  }

  body#product .undamed-product-extras {
    margin-top: 11px !important;
    border-top: 1px solid rgb(26 38 83 / 22%);
  }

  body#product .undamed-accordions summary {
    padding: 11px 0 !important;
    font-size: 9px !important;
  }

  /* Pairs with: image, product summary, options and the CTA on one row. */
  body#product .undamed-product-pairing {
    margin-top: 48px !important;
  }

  body#product .undamed-product-pairing__card {
    grid-template-columns: 160px 250px minmax(360px, 1fr) minmax(220px, 300px) !important;
    min-height: 198px !important;
    gap: 22px !important;
    padding: 13px 0 18px !important;
  }

  body#product .undamed-product-pairing__image {
    aspect-ratio: 4 / 5 !important;
  }

  body#product .undamed-product-pairing__summary {
    align-self: start !important;
    padding-top: 7px !important;
  }

  body#product .undamed-product-pairing__options {
    align-self: center !important;
    gap: 10px !important;
  }

  body#product .undamed-product-pairing__action {
    align-self: center !important;
  }

  body#product .undamed-product-pairing__button {
    height: 40px !important;
  }

  /* 4 full cards + a visible slice of the next one, as in FIGS. */
  body#product .undamed-product-recommendations,
  body#product .undamed-product-recent {
    margin-top: 34px !important;
  }

  body#product .undamed-product-recommendations__row,
  body#product .undamed-product-recent__row {
    display: grid !important;
    grid-auto-flow: column !important;
    grid-auto-columns: 21.6% !important;
    grid-template-columns: none !important;
    gap: 12px !important;
    padding-bottom: 3px;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    scroll-behavior: smooth;
    scroll-snap-type: x proximity;
    scrollbar-width: none;
  }

  body#product .undamed-product-recommendations__row::-webkit-scrollbar,
  body#product .undamed-product-recent__row::-webkit-scrollbar {
    display: none;
  }

  body#product .undamed-product-card {
    scroll-snap-align: start;
  }

  body#product .undamed-product-card__image {
    overflow: hidden;
  }

  body#product .undamed-product-card__image img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
  }

  body#product .undamed-product-card h3 {
    margin-top: 8px !important;
    font-size: 11px !important;
  }
}

@media (max-width: 1199.98px) and (min-width: 992px) {
  body#product .undamed-product-pairing__card {
    grid-template-columns: 135px 205px minmax(300px, 1fr) minmax(180px, 230px) !important;
    gap: 16px !important;
  }

  body#product .undamed-product-recommendations__row,
  body#product .undamed-product-recent__row {
    grid-auto-columns: 27% !important;
  }
}

@media (max-width: 991.98px) {
  /* Rails remain touch-first on mobile; desktop arrows would only add clutter. */
  body#product .undamed-product-rail__controls {
    display: none !important;
  }

  body#product .undamed-model-meta {
    margin-bottom: 12px;
    padding-bottom: 12px;
  }
}

@media (min-width: 992px) {
  body#product .undamed-product-rail:not(.is-scrollable) .undamed-product-rail__controls {
    display: none !important;
  }
}


/* CZ Undamed Theme 1.0.30 - PDP section order and rail alignment. */
/* The native ps_viewedproduct hook duplicates UNDAMED's own recently-viewed rail
   directly below the hero. Keep the module installed for compatibility, but do
   not render its storefront block on product pages. */
body#product .ps-viewedproduct {
  display: none !important;
}

/* Explicit section rhythm: hero -> pairing -> selected -> recent -> footer. */
body#product .undamed-product-pairing {
  margin-top: 42px !important;
}

body#product .undamed-product-recommendations {
  margin-top: 30px !important;
}

body#product .undamed-product-recent {
  margin-top: 34px !important;
}

@media (min-width: 992px) {
  /* Start every rail flush with its section edge. This also prevents a restored
     horizontal scroll position from making the first card look cropped. */
  body#product .undamed-product-recommendations__row,
  body#product .undamed-product-recent__row {
    width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    scroll-padding-left: 0 !important;
    overscroll-behavior-inline: contain;
  }

  /* 4 full cards plus a clear preview of card 5, matching the desktop target. */
  body#product .undamed-product-recommendations__row,
  body#product .undamed-product-recent__row {
    grid-auto-columns: calc((100% - 48px) / 4.55) !important;
    gap: 12px !important;
  }

  body#product .undamed-product-card:first-child {
    margin-left: 0 !important;
  }

  body#product .undamed-product-rail__head {
    margin-bottom: 13px !important;
  }

  body#product .undamed-product-pairing__card {
    padding-top: 10px !important;
    padding-bottom: 14px !important;
  }
}

@media (max-width: 991.98px) {
  body#product .undamed-product-pairing,
  body#product .undamed-product-recommendations,
  body#product .undamed-product-recent {
    margin-top: 32px !important;
  }
}


/* CZ Undamed Theme 1.0.31 - editorial blog cards, no boxed/card chrome. */
body.cz-undamedtheme .cz-blog-card {
  overflow: visible !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  transform: none !important;
  transition: none !important;
}

body.cz-undamedtheme .cz-blog-card:hover {
  box-shadow: none !important;
  transform: none !important;
}

body.cz-undamedtheme .cz-blog-card-image-link {
  border-radius: 0 !important;
}

body.cz-undamedtheme .cz-blog-card-body {
  padding: 12px 0 0 !important;
}

body.cz-undamedtheme .cz-blog-card-title,
body.cz-undamedtheme .cz-blog-card-intro {
  padding-inline: 0 !important;
}
