/*
 * Kaziara Solutions — Premium Skincare Theme Layer
 * Hummingbird 2.1.x / PrestaShop 9.2
 * Keeps the core theme intact and applies presentation-only overrides.
 */

:root {
  --kz-ink: #1f241f;
  --kz-muted: #6f756e;
  --kz-sage: #74816a;
  --kz-sage-deep: #4f5d49;
  --kz-cream: #f7f4ee;
  --kz-ivory: #fcfbf8;
  --kz-gold: #b4955d;
  --kz-line: rgba(31, 36, 31, .12);
  --kz-shadow: 0 18px 45px rgba(36, 43, 35, .09);
  --kz-radius: 18px;
}

html { scroll-behavior: smooth; }

body {
  background: var(--kz-ivory);
  color: var(--kz-ink);
  font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  -webkit-font-smoothing: antialiased;
}

a { transition: color .2s ease, opacity .2s ease, transform .2s ease; }

h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6,
.products-section-title,
.product__name {
  color: var(--kz-ink);
  letter-spacing: -.025em;
}

/* Header */
.header-top {
  background: var(--kz-ink);
  color: #fff;
  border: 0;
}

.header-top a,
.header-top .material-icons { color: #fff; }

.header-bottom {
  background: rgba(252, 251, 248, .96);
  border-bottom: 1px solid var(--kz-line);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
}

.header-bottom__container { padding-top: .45rem; padding-bottom: .45rem; }
.header-bottom__logo img { max-height: 62px; width: auto; }

.header-nav-full-width {
  background: #fff;
  border-bottom: 1px solid var(--kz-line);
  box-shadow: 0 8px 24px rgba(31, 36, 31, .035);
}

.header-block__action-btn,
.header-block__icon { color: var(--kz-ink); }

/* Main-menu styling is intentionally left to Hummingbird core.
 * Header/footer cosmetics must not replace the shop's navigation system.
 */

/* Homepage spacing */
.page-content--home { gap: clamp(1.5rem, 4vw, 4rem); }
.page-index .page { padding-bottom: 0; }

/* HERO / HOMEPAGE SLIDER
 * Important: never crop uploaded skincare banner artwork on mobile.
 */
.page-index #carousel,
.page-index .homeslider,
.page-index .home-slider,
.page-index [class*="homeslider"] {
  width: 100%;
  max-width: 100%;
  overflow: hidden;
  border-radius: var(--kz-radius);
  background: var(--kz-cream);
  box-shadow: var(--kz-shadow);
}

.page-index #carousel .carousel-inner,
.page-index #carousel .carousel-item,
.page-index #carousel figure,
.page-index .homeslider .carousel-inner,
.page-index .homeslider .carousel-item,
.page-index .homeslider figure {
  width: 100%;
  max-width: 100%;
  height: auto !important;
  min-height: 0 !important;
  margin: 0;
}

.page-index #carousel img,
.page-index .homeslider img,
.page-index .home-slider img,
.page-index [class*="homeslider"] img {
  display: block;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  object-fit: contain !important;
  object-position: center center !important;
  margin: 0 auto;
}


.page-index .homeslider-container .rslides,
.page-index .homeslider-container .slide {
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0;
  padding: 0;
}

.page-index #carousel .carousel-control-prev,
.page-index #carousel .carousel-control-next {
  width: 9%;
  opacity: .85;
}

.page-index #carousel .carousel-indicators { margin-bottom: .65rem; }

/* Standalone promotional banner */
.ps-banner .container { max-width: 1320px; }
.ps-banner .banner {
  overflow: hidden;
  border-radius: var(--kz-radius);
  background: var(--kz-cream);
  box-shadow: var(--kz-shadow);
}
.ps-banner img {
  width: 100% !important;
  max-width: 100%;
  height: auto !important;
  object-fit: contain !important;
}

/* Text / brand story block */
.ps-customtext {
  background: linear-gradient(135deg, #f5f1e8 0%, #fbfaf6 58%, #eef1ea 100%);
  border-top: 1px solid rgba(180, 149, 93, .18);
  border-bottom: 1px solid rgba(180, 149, 93, .18);
  padding: clamp(2.4rem, 6vw, 5.5rem) 0;
}

.ps-customtext .container {
  max-width: 900px;
  text-align: center;
}

.ps-customtext h1,
.ps-customtext h2,
.ps-customtext h3 {
  font-family: Georgia, "Times New Roman", serif;
  font-weight: 500;
  letter-spacing: -.03em;
}

.ps-customtext p {
  color: var(--kz-muted);
  font-size: 1.05rem;
  line-height: 1.8;
}

/* Section headings */
.page-content--home section > h2,
.page-content--home .products-section-title,
.featured-products > h2,
.new-products > h2,
.bestseller-products > h2,
.special-products > h2 {
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(1.7rem, 3vw, 2.5rem);
  font-weight: 500;
  text-align: center;
  margin-bottom: clamp(1.25rem, 3vw, 2rem);
}

/* Product cards */
.product-miniature__inner {
  height: 100%;
  background: #fff;
  border: 1px solid var(--kz-line);
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 0 8px 26px rgba(31, 36, 31, .045);
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}

.product-miniature__inner:hover {
  transform: translateY(-4px);
  border-color: rgba(116, 129, 106, .35);
  box-shadow: 0 20px 44px rgba(31, 36, 31, .10);
}

.product-miniature__top { background: #f4f1eb; }
.product-miniature__top img { transition: transform .4s ease; }
.product-miniature__inner:hover .product-miniature__top img { transform: scale(1.025); }

.product-miniature__bottom { padding: 1rem 1rem 1.15rem; }
.product-miniature__title {
  color: var(--kz-ink);
  font-weight: 600;
  line-height: 1.4;
}
.product-miniature__title:hover { color: var(--kz-sage-deep); }
.product-miniature__price { color: var(--kz-ink); font-weight: 650; }
.product-miniature__regular-price { color: #9a9d98; }

.product-flags .product-flag,
.product-flags li {
  border-radius: 999px;
  padding: .35rem .65rem;
  font-size: .72rem;
  letter-spacing: .04em;
  text-transform: uppercase;
}

/* Buttons */
.btn-primary,
.product-miniature__add,
.add-to-cart {
  background: var(--kz-ink) !important;
  border-color: var(--kz-ink) !important;
  color: #fff !important;
  border-radius: 999px;
  box-shadow: none;
}

.btn-primary:hover,
.product-miniature__add:hover,
.add-to-cart:hover {
  background: var(--kz-sage-deep) !important;
  border-color: var(--kz-sage-deep) !important;
}

.btn-outline-primary {
  color: var(--kz-ink) !important;
  border-color: var(--kz-ink) !important;
  border-radius: 999px;
}
.btn-outline-primary:hover {
  color: #fff !important;
  background: var(--kz-ink) !important;
}

/* Product detail */
.page-product .product__name {
  font-family: Georgia, "Times New Roman", serif;
  font-weight: 500;
  font-size: clamp(2rem, 4vw, 3.25rem);
}

.page-product .product__carousel,
.page-product .product__thumbnail-image { border-radius: 16px; }
.page-product .product__price { color: var(--kz-ink); }

/* Forms / search */
.form-control,
.form-select,
.input-group-text {
  border-color: rgba(31, 36, 31, .15);
  border-radius: 12px;
}
.form-control:focus,
.form-select:focus {
  border-color: var(--kz-sage);
  box-shadow: 0 0 0 .2rem rgba(116, 129, 106, .13);
}

/* Footer */
.footer__before { background: #eef0e9; }
.footer__main {
  background: #20251f;
  color: rgba(255, 255, 255, .78);
  border-top: 0;
}
.footer__main a { color: rgba(255,255,255,.82); }
.footer__main a:hover { color: #fff; }
.footer__main h3,
.footer__main h4,
.footer__main .h3,
.footer__main .h4,
.footer__main .block-contact-title { color: #fff; }
.footer__main .copyright {
  color: rgba(255,255,255,.58);
  border-top: 1px solid rgba(255,255,255,.12);
  margin-top: 1.5rem;
  padding-top: 1.25rem;
  padding-bottom: 1.25rem;
  text-align: center;
}
.footer__main .copyright a { color: rgba(255,255,255,.68); }
.footer__main .copyright a:hover { color: #fff; }

/* Mobile */
@media (max-width: 767.98px) {
  body { overflow-x: hidden; }

  .header-bottom__container { padding-left: .85rem; padding-right: .85rem; }
  .header-bottom__logo img { max-height: 46px; max-width: 160px; }

  .page-content--home { gap: 1.35rem; }

  .page-index #carousel,
  .page-index .homeslider,
  .page-index .home-slider,
  .page-index [class*="homeslider"],
  .ps-banner .banner {
    border-radius: 10px;
    box-shadow: 0 8px 22px rgba(31, 36, 31, .07);
  }

  .page-index #carousel .carousel-inner,
  .page-index #carousel .carousel-item,
  .page-index #carousel figure,
  .page-index #carousel picture,
  .page-index .homeslider .carousel-inner,
  .page-index .homeslider .carousel-item,
  .page-index .homeslider figure,
  .page-index .homeslider picture {
    height: auto !important;
    min-height: 0 !important;
    aspect-ratio: auto !important;
    overflow: visible !important;
  }


  .page-index .homeslider-container .rslides,
  .page-index .homeslider-container .slide {
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
  }

  .page-index #carousel img,
  .page-index .homeslider img,
  .page-index .home-slider img,
  .page-index [class*="homeslider"] img,
  .ps-banner img {
    width: 100% !important;
    height: auto !important;
    max-height: none !important;
    min-height: 0 !important;
    aspect-ratio: auto !important;
    object-fit: contain !important;
    object-position: 50% 50% !important;
  }

  .page-index #carousel .carousel-caption,
  .page-index #carousel .caption,
  .page-index .homeslider .carousel-caption,
  .page-index .homeslider .caption {
    display: none !important;
  }

  .product-miniature__bottom { padding: .8rem .8rem 1rem; }
  .product-miniature__inner:hover { transform: none; }
  .ps-customtext { padding: 2.6rem 0; }
  .ps-customtext p { font-size: .98rem; line-height: 1.7; }

  .footer__main { padding-top: 1rem; }
}

@media (max-width: 420px) {
  .container,
  .container-md { --bs-gutter-x: 1.5rem; }

  .product-miniature__title { font-size: .92rem; }
  .product-miniature__price { font-size: .95rem; }
}

/* Accessibility */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    scroll-behavior: auto !important;
    transition-duration: .01ms !important;
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
  }
}

/* Hummingbird 2.1.2 exact homepage slider selectors.
 * Core theme forces .ps-imageslider__figure to 320px/240px and images to cover
 * below 992px. Override that behavior so the complete banner stays visible.
 */
.page-index .ps-imageslider,
.page-index #ps_imageslider {
  width: 100%;
  max-width: 100%;
  overflow: hidden;
  border-radius: var(--kz-radius);
  background: var(--kz-cream);
  box-shadow: var(--kz-shadow);
}

.page-index #ps_imageslider .carousel-inner,
.page-index #ps_imageslider .carousel-item,
.page-index #ps_imageslider .ps-imageslider__link,
.page-index #ps_imageslider .ps-imageslider__figure {
  width: 100%;
  max-width: 100%;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
}

.page-index #ps_imageslider .ps-imageslider__figure {
  margin: 0;
  overflow: hidden;
}

.page-index #ps_imageslider .ps-imageslider__figure img {
  display: block;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  aspect-ratio: auto !important;
  object-fit: contain !important;
  object-position: center center !important;
  margin: 0 auto;
}

@media (max-width: 991.98px) {
  .page-index #ps_imageslider .carousel-inner,
  .page-index #ps_imageslider .carousel-item,
  .page-index #ps_imageslider .ps-imageslider__link,
  .page-index #ps_imageslider .ps-imageslider__figure {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    aspect-ratio: auto !important;
  }

  .page-index #ps_imageslider .ps-imageslider__figure img {
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    object-fit: contain !important;
  }
}

@media (max-width: 767.98px) {
  .page-index .ps-imageslider,
  .page-index #ps_imageslider {
    border-radius: 10px;
    box-shadow: 0 8px 22px rgba(31, 36, 31, .07);
  }

  .page-index #ps_imageslider .ps-imageslider__figcaption {
    display: none !important;
  }
}


/* 2026-10-09 NO-CROP LOCK — deliberately ultra-specific for PrestaShop CCC/cache builds. */
html body.page-index main #ps_imageslider.carousel .carousel-inner > .carousel-item > .ps-imageslider__link > figure.ps-imageslider__figure,
html body.page-index main #ps_imageslider.carousel .carousel-inner > .carousel-item > figure.ps-imageslider__figure {
  width:100% !important; max-width:100% !important; height:auto !important; min-height:0 !important; max-height:none !important; aspect-ratio:auto !important; overflow:visible !important; margin:0 !important;
}
html body.page-index main #ps_imageslider.carousel .ps-imageslider__figure > img.w-100 {
  display:block !important; width:100% !important; max-width:100% !important; height:auto !important; min-height:0 !important; max-height:none !important; aspect-ratio:auto !important; object-fit:contain !important; object-position:center center !important; margin:0 auto !important;
}


/* FINAL BANNER FIT LOCK
 * Keep the uploaded artwork at its natural ratio so it fills the slider
 * container exactly: no crop, no stretching, no artificial mobile height.
 */
.page-index .ps-imageslider,
.page-index #ps_imageslider,
.page-index #ps_imageslider .carousel-inner,
.page-index #ps_imageslider .carousel-item,
.page-index #ps_imageslider .ps-imageslider__link,
.page-index #ps_imageslider .ps-imageslider__figure {
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  aspect-ratio: auto !important;
  border-radius: 0 !important;
}

.page-index .ps-imageslider,
.page-index #ps_imageslider,
.page-index #ps_imageslider .carousel-inner,
.page-index #ps_imageslider .carousel-item,
.page-index #ps_imageslider .ps-imageslider__link,
.page-index #ps_imageslider .ps-imageslider__figure {
  overflow: hidden !important;
}

.page-index #ps_imageslider .ps-imageslider__figure {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
}

.page-index #ps_imageslider .ps-imageslider__figure > img.w-100,
.page-index #ps_imageslider .ps-imageslider__figure img {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  aspect-ratio: auto !important;
  object-fit: contain !important;
  object-position: center center !important;
  margin: 0 !important;
  padding: 0 !important;
  border-radius: 0 !important;
}

@media (max-width: 767.98px) {
  .page-index #ps_imageslider .carousel-inner,
  .page-index #ps_imageslider .carousel-item,
  .page-index #ps_imageslider .ps-imageslider__link,
  .page-index #ps_imageslider .ps-imageslider__figure {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
  }

  .page-index #ps_imageslider .ps-imageslider__figure > img.w-100,
  .page-index #ps_imageslider .ps-imageslider__figure img {
    width: 100% !important;
    height: auto !important;
  }
}


/* =========================================================
   PREMIUM SKINCARE HEADER + FOOTER — Kaziara Solutions
   Visual-only refinement; keeps Hummingbird structure intact.
   ========================================================= */

:root {
  --kz-beauty-ivory: #fbf8f2;
  --kz-beauty-cream: #f4efe6;
  --kz-beauty-sage: #7a846d;
  --kz-beauty-sage-dark: #4f5c49;
  --kz-beauty-charcoal: #242922;
  --kz-beauty-muted: #747a70;
  --kz-beauty-gold: #b79a66;
  --kz-beauty-gold-soft: #d9c8a8;
  --kz-beauty-line: rgba(79, 92, 73, .14);
}

/* ---------- Header: luxury beauty / skincare ---------- */
.header-top {
  background: var(--kz-beauty-sage-dark) !important;
  color: rgba(255,255,255,.9) !important;
  border-bottom: 1px solid rgba(255,255,255,.10) !important;
  font-size: .76rem;
  font-weight: 500;
  letter-spacing: .075em;
}

.header-top .container-md {
  min-height: 35px;
  display: flex;
  align-items: center;
}

.header-top .row { width: 100%; align-items: center; }
.header-top a,
.header-top .material-icons,
.header-top .dropdown-toggle {
  color: rgba(255,255,255,.9) !important;
}
.header-top a:hover { color: #fff !important; }

.header-bottom {
  background: rgba(251,248,242,.98) !important;
  border-bottom: 1px solid var(--kz-beauty-line) !important;
  box-shadow: 0 8px 26px rgba(47,55,45,.045) !important;
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
}

.header-bottom__container {
  padding-top: .72rem !important;
  padding-bottom: .72rem !important;
}

.header-bottom__row { align-items: center !important; }
.header-bottom__logo { padding-right: clamp(.6rem, 2vw, 1.7rem); }
.header-bottom__logo img {
  width: auto !important;
  max-height: 68px !important;
  object-fit: contain;
}

/* Search */
.ps-searchbar__form { position: relative; }
.ps-searchbar__input,
.header-bottom .form-control {
  min-height: 44px;
  background: #fff !important;
  color: var(--kz-beauty-charcoal) !important;
  border: 1px solid rgba(79,92,73,.18) !important;
  border-radius: 999px !important;
  box-shadow: none !important;
  font-size: .9rem;
  padding-left: 1.05rem;
}
.ps-searchbar__input::placeholder { color: #969b91; }
.ps-searchbar__input:focus,
.header-bottom .form-control:focus {
  border-color: rgba(183,154,102,.75) !important;
  box-shadow: 0 0 0 .2rem rgba(183,154,102,.10) !important;
}
.ps-searchbar__magnifier { color: var(--kz-beauty-sage-dark) !important; }

/* Account, cart and header actions */
.header-block__action-btn {
  color: var(--kz-beauty-charcoal) !important;
  border-radius: 999px;
  transition: background-color .2s ease, color .2s ease, transform .2s ease;
}
.header-block__action-btn:hover {
  color: var(--kz-beauty-sage-dark) !important;
  background: rgba(122,132,109,.09) !important;
}
.header-block__icon {
  color: var(--kz-beauty-sage-dark) !important;
  font-size: 1.45rem;
}
.header-block__title {
  color: var(--kz-beauty-charcoal) !important;
  font-size: .78rem;
  font-weight: 600;
  letter-spacing: .025em;
}
.header-block__badge {
  background: var(--kz-beauty-gold) !important;
  color: #fff !important;
  border: 2px solid var(--kz-beauty-ivory);
  font-size: .68rem;
  font-weight: 700;
}

/* Main navigation
 * Do not override Hummingbird's ps_mainmenu tree, dropdown, typography,
 * spacing or interaction styles. This preserves the original menu system.
 */
.header-nav-full-width {
  background: #fff !important;
  border-bottom: 1px solid var(--kz-beauty-line) !important;
  box-shadow: 0 8px 22px rgba(47,55,45,.035) !important;
}

/* Mobile header/menu */
@media (max-width: 767.98px) {
  .header-bottom {
    background: #fbf8f2 !important;
    box-shadow: 0 4px 18px rgba(47,55,45,.05) !important;
  }
  .header-bottom__container {
    padding-top: .58rem !important;
    padding-bottom: .58rem !important;
  }
  .header-bottom__logo img {
    max-height: 50px !important;
    max-width: 172px !important;
  }
  .header-bottom .header-block__action-btn,
  .ps-searchbar--mobile .header-block__action-btn {
    width: 40px;
    height: 40px;
    min-width: 40px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 !important;
    color: var(--kz-beauty-sage-dark) !important;
    background: rgba(255,255,255,.72) !important;
    border: 1px solid rgba(79,92,73,.12) !important;
    border-radius: 50% !important;
  }
  .ps-searchbar__offcanvas {
    background: var(--kz-beauty-ivory) !important;
  }
}

/* ---------- Footer: warm, editorial skincare look ---------- */
.footer__before {
  background: #eee8dd !important;
  color: var(--kz-beauty-charcoal) !important;
  border-top: 1px solid rgba(183,154,102,.20);
}

.footer__main {
  position: relative;
  overflow: hidden;
  background: var(--kz-beauty-cream) !important;
  color: #62685f !important;
  border-top: 1px solid rgba(183,154,102,.28) !important;
  padding-top: clamp(2.2rem, 5vw, 4.2rem) !important;
}

.footer__main::before {
  content: "";
  position: absolute;
  inset: 0 0 auto 0;
  height: 3px;
  background: linear-gradient(90deg, transparent 0%, var(--kz-beauty-gold-soft) 28%, var(--kz-beauty-gold) 50%, var(--kz-beauty-gold-soft) 72%, transparent 100%);
  opacity: .72;
  pointer-events: none;
}

.footer__main-top { row-gap: 2rem; }
.footer-block { padding-bottom: 1rem; }

.footer__main .footer-block__title,
.footer__main .block-contact-title,
.footer__main h3,
.footer__main h4,
.footer__main .h3,
.footer__main .h4,
.footer__main .ps-contactinfo__title {
  position: relative;
  color: var(--kz-beauty-charcoal) !important;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.08rem !important;
  font-weight: 500 !important;
  letter-spacing: -.012em !important;
  margin-bottom: 1rem;
  text-transform: none !important;
}

@media (min-width: 768px) {
  .footer__main .footer-block__title::after,
  .footer__main .block-contact-title::after,
  .footer__main .ps-contactinfo__title::after {
    content: "";
    display: block;
    width: 28px;
    height: 1px;
    margin-top: .65rem;
    background: var(--kz-beauty-gold);
  }
}

.footer__main a,
.footer__main .footer-block__list a,
.footer__main .ps-contactinfo a {
  color: #646b61 !important;
  font-size: .88rem;
  line-height: 1.8;
  text-decoration: none;
}
.footer__main a:hover,
.footer__main .footer-block__list a:hover,
.footer__main .ps-contactinfo a:hover {
  color: var(--kz-beauty-sage-dark) !important;
}

.footer__main .footer-block__list {
  display: grid;
  gap: .35rem;
  padding-left: 0;
}

.footer__main .ps-contactinfo__infos,
.footer__main .ps-contactinfo__phone,
.footer__main .ps-contactinfo__email,
.footer__main .ps-contactinfo__fax {
  color: #646b61 !important;
  font-size: .88rem;
  line-height: 1.75;
}
.footer__main .ps-contactinfo .material-icons {
  color: var(--kz-beauty-gold) !important;
  font-size: 1.05rem;
  vertical-align: middle;
}

/* Social icons */
.ps-socialfollow {
  background: #eee8dd !important;
  border-top: 1px solid rgba(79,92,73,.08);
  border-bottom: 1px solid rgba(79,92,73,.08);
}
.ps-socialfollow a {
  width: 38px;
  height: 38px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--kz-beauty-sage-dark) !important;
  background: rgba(255,255,255,.62);
  border: 1px solid rgba(79,92,73,.15);
  border-radius: 50%;
  transition: transform .2s ease, background-color .2s ease, color .2s ease, border-color .2s ease;
}
.ps-socialfollow a:hover {
  color: #fff !important;
  background: var(--kz-beauty-sage-dark);
  border-color: var(--kz-beauty-sage-dark);
  transform: translateY(-2px);
}

/* Copyright / Kaziara credit */
.footer__main .copyright {
  color: #7d8178 !important;
  border-top: 1px solid rgba(79,92,73,.12) !important;
  margin-top: 1.75rem !important;
  padding-top: 1.15rem !important;
  padding-bottom: 1.35rem !important;
  font-size: .78rem;
  letter-spacing: .025em;
  text-align: center;
}
.footer__main .copyright a {
  color: var(--kz-beauty-sage-dark) !important;
  font-weight: 700;
}
.footer__main .copyright a:hover { color: var(--kz-beauty-gold) !important; }

@media (max-width: 767.98px) {
  .footer__main {
    padding-top: 1.4rem !important;
  }
  .footer__main .footer-block {
    border-bottom: 1px solid rgba(79,92,73,.11);
    padding-top: .35rem;
    padding-bottom: .35rem;
  }
  .footer__main .footer-block__title {
    margin: 0 !important;
    padding: .95rem .15rem !important;
    font-size: 1rem !important;
  }
  .footer__main .footer-block__title .material-icons {
    color: var(--kz-beauty-sage-dark) !important;
  }
  .footer__main .footer-block__content {
    padding-bottom: .85rem;
  }
  .footer__main .copyright {
    margin-top: .75rem !important;
    line-height: 1.7;
  }
}

/* =========================================================
   CLASSIC MENU RESTORE — based on the supplied Classic theme
   Keeps the premium skincare header, but restores the familiar
   horizontal Classic menu + simple nested dropdown behavior.
   ========================================================= */
.header-bottom { position: relative; }

.kz-classic-menu--desktop {
  min-width: 0;
  align-items: center;
  position: static;
}

.kz-classic-menu__list {
  list-style: none;
  margin: 0;
  padding: 0;
}

.kz-classic-menu--desktop > .kz-classic-menu__list[data-depth="0"] {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: .15rem;
  width: 100%;
}

.kz-classic-menu__item { margin: 0; padding: 0; }
.kz-classic-menu__item-row {
  display: flex;
  align-items: center;
}

.kz-classic-menu--desktop > .kz-classic-menu__list[data-depth="0"] > .kz-classic-menu__item {
  position: relative;
}

.kz-classic-menu__link {
  color: var(--kz-beauty-charcoal) !important;
  text-decoration: none !important;
  line-height: 1.25;
}

.kz-classic-menu--desktop > .kz-classic-menu__list[data-depth="0"] > .kz-classic-menu__item > .kz-classic-menu__item-row > .kz-classic-menu__link {
  display: block;
  padding: .8rem .62rem;
  font-size: .79rem;
  font-weight: 650;
  letter-spacing: .055em;
  text-transform: uppercase;
  white-space: nowrap;
}

.kz-classic-menu--desktop > .kz-classic-menu__list[data-depth="0"] > .kz-classic-menu__item.current > .kz-classic-menu__item-row > .kz-classic-menu__link,
.kz-classic-menu--desktop > .kz-classic-menu__list[data-depth="0"] > .kz-classic-menu__item:hover > .kz-classic-menu__item-row > .kz-classic-menu__link,
.kz-classic-menu--desktop > .kz-classic-menu__list[data-depth="0"] > .kz-classic-menu__item:focus-within > .kz-classic-menu__item-row > .kz-classic-menu__link {
  color: var(--kz-beauty-sage-dark) !important;
}

.kz-classic-menu__toggle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.65rem;
  height: 1.65rem;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--kz-beauty-sage-dark);
  cursor: pointer;
}
.kz-classic-menu__toggle .material-icons {
  font-size: 1.2rem;
  transition: transform .18s ease;
}
.kz-classic-menu__toggle[aria-expanded="true"] .material-icons { transform: rotate(180deg); }

/* Desktop dropdown — Classic-style white popover, not Hummingbird tabs/mega menu. */
.kz-classic-menu--desktop .kz-classic-menu__submenu {
  display: none;
  position: absolute;
  z-index: 1055;
  top: calc(100% + .1rem);
  left: 0;
  min-width: 250px;
  max-width: min(880px, 92vw);
  margin: 0;
  padding: .9rem 1rem;
  background: #fff;
  border: 1px solid rgba(79,92,73,.12);
  border-radius: 0;
  box-shadow: 0 14px 34px rgba(35,42,33,.12);
}

.kz-classic-menu--desktop .kz-classic-menu__item:hover > .kz-classic-menu__submenu,
.kz-classic-menu--desktop .kz-classic-menu__item:focus-within > .kz-classic-menu__submenu,
.kz-classic-menu--desktop .kz-classic-menu__item.is-open > .kz-classic-menu__submenu {
  display: block;
}

.kz-classic-menu--desktop .kz-classic-menu__submenu > .kz-classic-menu__list[data-depth="1"] {
  display: grid;
  grid-template-columns: repeat(3, minmax(150px, 1fr));
  gap: .25rem 1.4rem;
  min-width: 520px;
}

.kz-classic-menu--desktop .kz-classic-menu__submenu .kz-classic-menu__item { position: relative; }
.kz-classic-menu--desktop .kz-classic-menu__submenu .kz-classic-menu__link {
  display: block;
  padding: .48rem .25rem;
  font-size: .86rem;
  font-weight: 500;
  color: #5d6459 !important;
}
.kz-classic-menu--desktop .kz-classic-menu__submenu .kz-classic-menu__list[data-depth="1"] > .kz-classic-menu__item > .kz-classic-menu__item-row > .kz-classic-menu__link {
  color: var(--kz-beauty-charcoal) !important;
  font-weight: 700;
}
.kz-classic-menu--desktop .kz-classic-menu__submenu .kz-classic-menu__link:hover {
  color: var(--kz-beauty-sage-dark) !important;
}

/* Nested desktop levels become simple lists within each Classic column. */
.kz-classic-menu--desktop .kz-classic-menu__submenu .kz-classic-menu__submenu {
  display: block;
  position: static;
  min-width: 0;
  max-width: none;
  padding: 0 0 .45rem .35rem;
  border: 0;
  box-shadow: none;
  background: transparent;
}
.kz-classic-menu--desktop .kz-classic-menu__submenu .kz-classic-menu__toggle { display: none; }

/* Mobile Classic menu panel. */
.kz-classic-menu-mobile { display: flex; align-items: center; }
.kz-classic-menu-mobile__button {
  width: 40px;
  height: 40px;
  min-width: 40px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  border: 1px solid rgba(79,92,73,.12);
  border-radius: 50%;
  background: rgba(255,255,255,.72);
  color: var(--kz-beauty-sage-dark);
}
.kz-classic-menu-mobile__button .material-icons { font-size: 1.55rem; }

.kz-classic-menu-mobile__panel {
  position: absolute;
  z-index: 1060;
  top: 100%;
  left: 0;
  right: 0;
  width: 100%;
  max-height: calc(100vh - 70px);
  overflow-y: auto;
  background: #fff;
  border-top: 1px solid var(--kz-beauty-line);
  border-bottom: 1px solid var(--kz-beauty-line);
  box-shadow: 0 18px 34px rgba(35,42,33,.14);
}
.kz-classic-menu-mobile__panel[hidden] { display: none !important; }
.kz-classic-menu--mobile { padding: .55rem 1rem 1rem; }
.kz-classic-menu--mobile .kz-classic-menu__list { width: 100%; }
.kz-classic-menu--mobile .kz-classic-menu__item {
  border-bottom: 1px solid rgba(79,92,73,.10);
}
.kz-classic-menu--mobile .kz-classic-menu__item-row { min-height: 46px; }
.kz-classic-menu--mobile .kz-classic-menu__link {
  flex: 1 1 auto;
  padding: .72rem .25rem;
  font-size: .9rem;
  font-weight: 600;
  color: var(--kz-beauty-charcoal) !important;
}
.kz-classic-menu--mobile .kz-classic-menu__toggle {
  flex: 0 0 42px;
  width: 42px;
  height: 42px;
}
.kz-classic-menu--mobile .kz-classic-menu__submenu {
  display: none;
  position: static;
  margin: 0;
  padding: 0 0 .4rem .85rem;
  border: 0;
  box-shadow: none;
  background: transparent;
}
.kz-classic-menu--mobile .kz-classic-menu__item.is-open > .kz-classic-menu__submenu { display: block; }
.kz-classic-menu--mobile .kz-classic-menu__submenu .kz-classic-menu__link {
  font-size: .86rem;
  font-weight: 500;
  color: #646b61 !important;
}

@media (min-width: 768px) and (max-width: 1199.98px) {
  .kz-classic-menu--desktop > .kz-classic-menu__list[data-depth="0"] > .kz-classic-menu__item > .kz-classic-menu__item-row > .kz-classic-menu__link {
    padding-inline: .42rem;
    font-size: .74rem;
    letter-spacing: .035em;
  }
  .kz-classic-menu--desktop .kz-classic-menu__submenu > .kz-classic-menu__list[data-depth="1"] {
    grid-template-columns: repeat(2, minmax(150px, 1fr));
    min-width: 420px;
  }
}

@media (max-width: 767.98px) {
  .header-bottom__logo { padding-right: .25rem !important; }
  .kz-classic-menu-mobile { margin-right: .25rem; }
}
