/*
Theme Name: Perfume Empire Factory
Theme URI: https://perfumeempiremefls.com/
Author: Perfume Empire
Description: A premium WooCommerce theme for a perfume manufacturer, OEM factory and wholesale fragrance catalog.
Version: 1.0.0
Requires at least: 6.5
Requires PHP: 7.4
Text Domain: perfume-empire
*/

:root {
  --pe-black: #171512;
  --pe-ink: #29251f;
  --pe-gold: #ad8231;
  --pe-line: #e7e1d7;
  --pe-paper: #fff;
  --pe-soft: #f6f4ef;
}

body.admin-bar .site-header { top: 32px; }

.site-header { transition: background-color .25s ease, color .25s ease, box-shadow .25s ease; }
.site-header.is-scrolled,
.site-header.solid-header { color: var(--pe-black); background: rgba(255,255,255,.97); box-shadow: 0 1px 0 var(--pe-line); }
.custom-logo { width: auto; max-height: 42px; }
.logo-emblem { width: 32px; height: 32px; object-fit: contain; }
.site-header:not(.solid-header):not(.is-scrolled) .logo-emblem { filter: brightness(0) invert(1); }
.menu-toggle { display: none; border: 0; background: transparent; color: inherit; font: inherit; padding: 8px; }
.cart-count { display: inline-grid; place-items: center; min-width: 18px; height: 18px; padding: 0 4px; border-radius: 9px; background: var(--pe-gold); color: #fff; font: 700 10px/1 Arial,sans-serif; }

.hero { min-height: min(760px, 88vh); }
.hero-copy h1 { max-width: 760px; font-size: clamp(40px, 5vw, 72px); line-height: 1.04; }
.hero-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 28px; }
.btn-hero-line { border-color: rgba(255,255,255,.72); color: #fff; background: rgba(0,0,0,.12); }

.wp-product-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 24px; margin-top: 36px; }
.wp-product-card { min-width: 0; }
.wp-product-card__image { position: relative; aspect-ratio: 1 / 1.08; overflow: hidden; background: #f4f2ee; }
.wp-product-card__image img { width: 100%; height: 100%; object-fit: cover; transition: transform .45s ease; }
.wp-product-card:hover .wp-product-card__image img { transform: scale(1.025); }
.wp-product-card__body { padding: 15px 0 8px; }
.wp-product-card h3 { margin: 0 0 7px; font-size: 18px; font-weight: 500; }
.wp-product-card .price { color: var(--pe-gold); font: 700 14px/1.4 Arial,sans-serif; }
.product-card-actions { display: flex; gap: 9px; margin-top: 13px; }
.product-card-actions .btn { min-height: 38px; padding: 0 15px; border-radius: 2px; }

.collection-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 18px; margin-top: 34px; }
.collection-card { position: relative; min-height: 360px; overflow: hidden; color: #fff; background: #403b35; }
.collection-card img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.collection-card::after { content: ""; position: absolute; inset: 0; background: linear-gradient(0deg,rgba(16,14,12,.72),rgba(16,14,12,.04) 65%); }
.collection-card__copy { position: absolute; z-index: 1; left: 22px; right: 22px; bottom: 22px; }
.collection-card h3 { margin: 0 0 6px; font-size: 25px; }
.collection-card span { font: 700 11px/1.4 Arial,sans-serif; text-transform: uppercase; }

.quote-notice { padding: 14px 16px; margin-bottom: 18px; border: 1px solid #b9d3b2; background: #f3faf1; color: #31552b; }
.quote-form button { width: 100%; }

.content-shell,
.woocommerce-page main.site-main { width: min(1180px,92vw); margin: 0 auto; padding: 128px 0 80px; }
.woocommerce .woocommerce-breadcrumb { color: #81796e; font-size: 13px; }
.woocommerce ul.products { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 28px 20px; }
.woocommerce ul.products::before,
.woocommerce ul.products::after { display: none; }
.woocommerce ul.products li.product { float: none!important; width: auto!important; margin: 0!important; }
.woocommerce ul.products li.product a img { aspect-ratio: 1/1.05; object-fit: cover; margin: 0 0 14px; background: #f5f3ef; }
.woocommerce ul.products li.product .woocommerce-loop-product__title { color: var(--pe-ink); font-size: 17px; font-weight: 500; }
.woocommerce ul.products li.product .price { color: var(--pe-gold); }
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit { border-radius: 2px; background: var(--pe-black); color: #fff; }
.woocommerce a.button:hover,
.woocommerce button.button:hover { background: var(--pe-gold); color: #fff; }
.woocommerce div.product div.images img { background: #f5f3ef; }
.woocommerce div.product .product_title { font-size: clamp(32px,4vw,54px); }
.woocommerce div.product p.price { color: var(--pe-gold); }

.site-footer { background: #171512; color: #fff; }
.footer-logo .logo-emblem { filter: brightness(0) invert(1); }
.footer-contact a { display: block; margin: 6px 0; }
.copyright { padding: 18px 4vw; border-top: 1px solid rgba(255,255,255,.12); color: rgba(255,255,255,.6); font: 12px/1.5 Arial,sans-serif; text-align: center; }
.whatsapp-float { position: fixed; z-index: 30; right: 22px; bottom: 24px; display: grid; place-items: center; width: 58px; height: 58px; border-radius: 50%; color: #fff; background: #25d366; box-shadow: 0 10px 28px rgba(0,0,0,.22); font: 800 21px/1 Arial,sans-serif; }

@media (max-width: 900px) {
  body.admin-bar .site-header { top: 46px; }
  .menu-toggle { display: block; }
  .site-header { padding: 13px 18px; }
  .site-header .left-nav { display: none; }
  .site-header .right-nav { position: absolute; top: 100%; left: 0; right: 0; display: none; align-items: stretch; flex-direction: column; gap: 0; padding: 12px 20px 20px; color: var(--pe-black); background: #fff; border-bottom: 1px solid var(--pe-line); }
  .site-header.menu-open .right-nav { display: flex; }
  .site-header .right-nav a { padding: 12px 0; border-bottom: 1px solid var(--pe-line); }
  .logo-text { font-size: 14px; }
  .wp-product-grid,
  .collection-grid,
  .woocommerce ul.products { grid-template-columns: repeat(2,minmax(0,1fr)); }
}

@media (max-width: 560px) {
  .hero { min-height: 680px; }
  .hero-copy { padding: 120px 22px 54px; }
  .hero-copy h1 { font-size: 39px; }
  .wp-product-grid,
  .collection-grid,
  .woocommerce ul.products { grid-template-columns: 1fr; }
  .collection-card { min-height: 390px; }
}
