/*
Theme Name:   Qrays
Theme URI:    https://www.qrays.net
Author:       Qrays
Description:  Luxury organic skincare & body care theme for Qrays. Conversion-optimised WooCommerce storefront built on a cream / olive / terracotta design system with Playfair Display + Montserrat typography.
Version:      1.0.0
Requires at least: 6.4
Tested up to: 6.7
Requires PHP: 8.0
License:      GPL-2.0-or-later
Text Domain:  qrays
Tags:         e-commerce, custom-colors, custom-menu, featured-images, full-width-template, block-styles
WC requires at least: 8.0
WC tested up to: 9.5
*/

/* =========================================================================
   00. DESIGN TOKENS
   ========================================================================= */
:root{
  /* Brand palette */
  --q-cream:        #F4F1ED;   /* primary background            */
  --q-cream-deep:   #EBE5DC;   /* alternate/banded background   */
  --q-white:        #FFFFFF;
  --q-olive:        #879177;   /* secondary background          */
  --q-olive-dark:   #6F7A61;   /* olive hover / dark surfaces   */
  --q-olive-deep:   #5A6450;   /* top bar                       */
  --q-terracotta:   #B46A55;   /* accent, primary CTA           */
  --q-terracotta-d: #9C5643;   /* terracotta hover              */
  --q-gold:         #B8913F;   /* luxury metallic accent        */
  --q-gold-light:   #D9B975;

  /* Text */
  --q-ink:          #2E332B;   /* headings, dark slate-olive    */
  --q-body:         #555C50;   /* body copy                     */
  --q-muted:        #8A9080;   /* meta, labels                  */
  --q-line:         #DED7CC;   /* hairlines / borders           */

  /* Type */
  --q-font-display: 'Playfair Display', 'Lora', Georgia, 'Times New Roman', serif;
  --q-font-body:    'Montserrat', 'Lato', -apple-system, BlinkMacSystemFont, 'Segoe UI', Helvetica, Arial, sans-serif;

  --q-fs-eyebrow: 0.6875rem;                            /* 11px */
  --q-fs-small:   0.8125rem;                            /* 13px */
  --q-fs-base:    clamp(0.9375rem, 0.9rem + 0.15vw, 1rem);
  --q-fs-lead:    clamp(1rem, 0.95rem + 0.25vw, 1.125rem);
  --q-fs-h4:      clamp(1.05rem, 1rem + 0.3vw, 1.25rem);
  --q-fs-h3:      clamp(1.35rem, 1.2rem + 0.7vw, 1.75rem);
  --q-fs-h2:      clamp(1.85rem, 1.45rem + 1.6vw, 3rem);
  --q-fs-h1:      clamp(2.35rem, 1.7rem + 3vw, 4.25rem);

  /* Space & shape */
  --q-container:  1280px;
  --q-gutter:     clamp(1.25rem, 4vw, 3rem);
  --q-section-y:  clamp(3.5rem, 6vw, 6.5rem);
  --q-radius-sm:  8px;
  --q-radius:     16px;
  --q-radius-lg:  26px;
  --q-radius-xl:  40px;
  --q-pill:       999px;

  /* Elevation & motion */
  --q-shadow-sm:  0 2px 10px rgba(46,51,43,.05);
  --q-shadow:     0 10px 30px rgba(46,51,43,.08);
  --q-shadow-lg:  0 22px 55px rgba(46,51,43,.13);
  --q-ease:       cubic-bezier(.22,.61,.36,1);
  --q-dur:        .38s;

  --q-header-h:   82px;
}

/* =========================================================================
   01. RESET / BASE
   ========================================================================= */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{
  margin:0;
  background:var(--q-cream);
  color:var(--q-body);
  font-family:var(--q-font-body);
  font-size:var(--q-fs-base);
  line-height:1.72;
  font-weight:400;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  overflow-x:hidden;
}
h1,h2,h3,h4,h5{
  font-family:var(--q-font-display);
  color:var(--q-ink);
  font-weight:500;
  line-height:1.16;
  letter-spacing:-.01em;
  margin:0 0 .5em;
}
h1{font-size:var(--q-fs-h1)}
h2{font-size:var(--q-fs-h2)}
h3{font-size:var(--q-fs-h3)}
h4{font-size:var(--q-fs-h4)}
p{margin:0 0 1.1em}
p:last-child{margin-bottom:0}
a{color:var(--q-terracotta);text-decoration:none;transition:color var(--q-dur) var(--q-ease)}
a:hover{color:var(--q-terracotta-d)}
img{max-width:100%;height:auto;display:block}
ul,ol{margin:0 0 1.1em;padding-left:1.15rem}
button,input,select,textarea{font:inherit;color:inherit}
:focus-visible{outline:2px solid var(--q-terracotta);outline-offset:3px;border-radius:4px}
.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.skip-link{position:absolute;left:-9999px;top:0;z-index:999;background:var(--q-ink);color:#fff;padding:.75rem 1.25rem;border-radius:0 0 var(--q-radius-sm) 0}
.skip-link:focus{left:0;color:#fff}

/* Layout helpers */
.q-container{width:100%;max-width:var(--q-container);margin-inline:auto;padding-inline:var(--q-gutter)}
.q-section{padding-block:var(--q-section-y)}
.q-eyebrow{
  font-size:var(--q-fs-eyebrow);letter-spacing:.22em;text-transform:uppercase;
  font-weight:600;color:var(--q-muted);margin:0 0 .85rem;display:block;
}
.q-section__head{display:flex;align-items:flex-end;justify-content:space-between;gap:1.5rem;margin-bottom:clamp(1.75rem,3vw,2.75rem);flex-wrap:wrap}
.q-section__head h2{margin:0}
.q-divider{width:44px;height:1px;background:var(--q-gold);margin:1.1rem 0}

/* =========================================================================
   02. BUTTONS & FORM CONTROLS
   ========================================================================= */
.q-btn,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.wp-block-button__link{
  --_bg:var(--q-terracotta);
  --_bg-hover:var(--q-terracotta-d);
  --_fg:#fff;
  position:relative;display:inline-flex;align-items:center;justify-content:center;gap:.6rem;
  padding:.95rem 2rem;border:1px solid transparent;border-radius:var(--q-pill);
  background:var(--_bg);color:var(--_fg);
  font-family:var(--q-font-body);font-size:var(--q-fs-small);font-weight:600;
  letter-spacing:.14em;text-transform:uppercase;line-height:1;
  cursor:pointer;text-decoration:none;white-space:nowrap;
  transition:background var(--q-dur) var(--q-ease),color var(--q-dur) var(--q-ease),
             transform var(--q-dur) var(--q-ease),box-shadow var(--q-dur) var(--q-ease);
}
.q-btn:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce #respond input#submit:hover{
  background:var(--_bg-hover);color:var(--_fg);
  transform:translateY(-2px);box-shadow:0 12px 24px rgba(180,106,85,.28);
}
.q-btn:active{transform:translateY(0)}
.q-btn .q-btn__arrow{transition:transform var(--q-dur) var(--q-ease)}
.q-btn:hover .q-btn__arrow{transform:translateX(5px)}

.q-btn--olive{--_bg:var(--q-olive);--_bg-hover:var(--q-olive-dark)}
.q-btn--olive:hover{box-shadow:0 12px 24px rgba(135,145,119,.32)}
.q-btn--ghost{--_bg:transparent;--_fg:var(--q-ink);border-color:var(--q-line);background:transparent}
.q-btn--ghost:hover{background:var(--q-ink);border-color:var(--q-ink);--_fg:#fff;box-shadow:0 12px 24px rgba(46,51,43,.18)}
.q-btn--light{--_bg:#fff;--_fg:var(--q-ink);--_bg-hover:#fff}
.q-btn--light:hover{box-shadow:0 12px 24px rgba(0,0,0,.14)}
.q-btn--sm{padding:.7rem 1.4rem;font-size:.6875rem}
.q-btn--block{width:100%}

input[type=text],input[type=email],input[type=search],input[type=tel],
input[type=password],input[type=number],input[type=url],textarea,select,
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.select2-container--default .select2-selection--single{
  width:100%;padding:.85rem 1.15rem;background:#fff;color:var(--q-ink);
  border:1px solid var(--q-line);border-radius:var(--q-radius-sm);
  font-size:var(--q-fs-small);line-height:1.5;
  transition:border-color var(--q-dur) var(--q-ease),box-shadow var(--q-dur) var(--q-ease);
}
input:focus,textarea:focus,select:focus{border-color:var(--q-olive);box-shadow:0 0 0 3px rgba(135,145,119,.16);outline:none}
::placeholder{color:#A7AC9E}

/* =========================================================================
   03. TOP BAR
   ========================================================================= */
.q-topbar{background:var(--q-olive-deep);color:rgba(255,255,255,.92);font-size:var(--q-fs-eyebrow);letter-spacing:.1em}
.q-topbar__inner{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:1rem;min-height:38px}
.q-topbar__msg{grid-column:2;text-align:center;text-transform:uppercase;font-weight:500;margin:0}
.q-topbar__msg .q-topbar__icon{color:var(--q-gold-light);margin-right:.4rem}
.q-topbar__links{grid-column:3;display:flex;align-items:center;justify-content:flex-end;gap:1.25rem;list-style:none;margin:0;padding:0}
.q-topbar__links a{color:rgba(255,255,255,.82);text-transform:uppercase;font-weight:500;transition:color .25s var(--q-ease)}
.q-topbar__links a:hover{color:#fff}
.q-topbar__social{display:flex;gap:.85rem;align-items:center}
.q-topbar__social a{display:inline-flex}
.q-topbar__social svg{width:14px;height:14px;fill:currentColor}

/* =========================================================================
   04. HEADER
   ========================================================================= */
.q-header{background:var(--q-cream);position:sticky;top:0;z-index:120;transition:box-shadow .3s var(--q-ease),background .3s var(--q-ease)}
.q-header.is-stuck{box-shadow:0 6px 24px rgba(46,51,43,.07);background:rgba(244,241,237,.94);backdrop-filter:saturate(140%) blur(10px)}
.q-header__inner{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:1.5rem;min-height:var(--q-header-h)}

.q-logo{display:inline-flex;align-items:center;gap:.6rem;color:var(--q-ink)}
.q-logo img{max-height:52px;width:auto}
.q-logo__mark{width:38px;height:38px;flex:none}
.q-logo__text{display:flex;flex-direction:column;line-height:1}
.q-logo__name{font-family:var(--q-font-display);font-size:1.5rem;letter-spacing:.06em;color:var(--q-ink)}
.q-logo__tag{font-size:.5rem;letter-spacing:.42em;text-transform:uppercase;color:var(--q-muted);margin-top:.28rem}

/* Primary nav */
.q-nav{justify-self:center}
.q-nav ul{display:flex;align-items:center;gap:clamp(1rem,2.2vw,2.15rem);list-style:none;margin:0;padding:0}
.q-nav li{position:relative}
.q-nav a{
  display:inline-flex;align-items:center;gap:.35rem;padding:.4rem 0;
  color:var(--q-ink);font-size:var(--q-fs-small);font-weight:500;letter-spacing:.04em;
}
.q-nav > ul > li > a::after{
  content:"";position:absolute;left:0;bottom:-2px;width:0;height:1px;background:var(--q-terracotta);
  transition:width var(--q-dur) var(--q-ease);
}
.q-nav > ul > li:hover > a::after,
.q-nav > ul > li.current-menu-item > a::after{width:100%}
.q-nav .menu-item-has-children > a::before{
  content:"";width:6px;height:6px;order:2;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;
  transform:rotate(45deg) translateY(-2px);transition:transform var(--q-dur) var(--q-ease);
}
.q-nav .menu-item-has-children:hover > a::before{transform:rotate(225deg) translateY(-2px)}
.q-nav .sub-menu{
  position:absolute;top:calc(100% + 14px);left:50%;translate:-50% 0;min-width:220px;
  background:#fff;border:1px solid var(--q-line);border-radius:var(--q-radius);
  box-shadow:var(--q-shadow);padding:.6rem;display:block;flex-direction:column;gap:0;
  opacity:0;visibility:hidden;transform:translateY(8px);pointer-events:none;
  transition:opacity .28s var(--q-ease),transform .28s var(--q-ease),visibility .28s;
}
.q-nav li:hover > .sub-menu,
.q-nav li:focus-within > .sub-menu{opacity:1;visibility:visible;transform:translateY(0);pointer-events:auto}
.q-nav .sub-menu li{width:100%}
.q-nav .sub-menu a{display:block;width:100%;padding:.6rem .85rem;border-radius:var(--q-radius-sm);transition:background .25s var(--q-ease),color .25s var(--q-ease)}
.q-nav .sub-menu a:hover{background:var(--q-cream);color:var(--q-terracotta)}

/* Header actions */
.q-actions{display:flex;align-items:center;gap:.65rem;justify-self:end}
.q-search{position:relative;display:flex;align-items:center}
.q-search input{width:210px;padding:.6rem 2.5rem .6rem 1.1rem;border-radius:var(--q-pill);background:#fff;font-size:var(--q-fs-small)}
.q-search button{position:absolute;right:.35rem;background:none;border:0;padding:.4rem;cursor:pointer;color:var(--q-muted);display:flex}
.q-search button:hover{color:var(--q-terracotta)}
.q-icon-btn{
  position:relative;display:inline-flex;align-items:center;justify-content:center;
  width:42px;height:42px;border-radius:50%;border:1px solid transparent;background:transparent;
  color:var(--q-ink);cursor:pointer;transition:background var(--q-dur) var(--q-ease),color var(--q-dur) var(--q-ease),transform var(--q-dur) var(--q-ease);
}
.q-icon-btn:hover{background:#fff;color:var(--q-terracotta);transform:translateY(-1px);box-shadow:var(--q-shadow-sm)}
.q-icon-btn svg{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:1.5}
.q-cart-count{
  position:absolute;top:2px;right:0;min-width:18px;height:18px;padding:0 5px;border-radius:var(--q-pill);
  background:var(--q-terracotta);color:#fff;font-size:.625rem;font-weight:700;line-height:18px;text-align:center;
}
.q-burger{display:none}

/* Mobile drawer */
.q-drawer{
  position:fixed;inset:0 0 0 auto;width:min(86vw,360px);background:var(--q-cream);z-index:200;
  transform:translateX(100%);transition:transform .42s var(--q-ease);
  display:flex;flex-direction:column;padding:1.5rem;overflow-y:auto;box-shadow:-20px 0 50px rgba(46,51,43,.14);
}
.q-drawer.is-open{transform:translateX(0)}
.q-drawer__head{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem}
.q-drawer ul{list-style:none;margin:0;padding:0}
.q-drawer > ul > li{border-bottom:1px solid var(--q-line)}
.q-drawer a{display:block;padding:.95rem 0;font-family:var(--q-font-display);font-size:1.15rem;color:var(--q-ink)}
.q-drawer .sub-menu a{font-family:var(--q-font-body);font-size:var(--q-fs-small);padding:.5rem 0 .5rem 1rem;color:var(--q-body)}
.q-overlay{position:fixed;inset:0;background:rgba(46,51,43,.42);opacity:0;visibility:hidden;transition:opacity .38s var(--q-ease),visibility .38s;z-index:190;backdrop-filter:blur(2px)}
.q-overlay.is-open{opacity:1;visibility:visible}

/* =========================================================================
   05. HERO
   ========================================================================= */
.q-hero{padding-block:clamp(1rem,2vw,2rem) clamp(2rem,4vw,3.5rem)}
.q-hero__inner{
  position:relative;display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);
  align-items:center;gap:clamp(1.5rem,3vw,3rem);
  background:linear-gradient(120deg,var(--q-cream-deep) 0%, #E4E7DC 100%);
  border-radius:var(--q-radius-xl);overflow:hidden;min-height:clamp(440px,52vw,600px);
}
.q-hero__copy{padding:clamp(2rem,4vw,4.25rem) 0 clamp(2rem,4vw,4.25rem) clamp(1.75rem,4vw,4.25rem);position:relative;z-index:2}
.q-hero__title{margin:0 0 1.1rem;font-weight:400;letter-spacing:-.02em}
.q-hero__title em{font-style:italic;color:var(--q-olive-dark)}
.q-hero__text{font-size:var(--q-fs-lead);max-width:46ch;color:var(--q-body);margin-bottom:2rem}
.q-hero__cta{display:flex;flex-wrap:wrap;gap:.85rem;align-items:center}
.q-hero__badges{display:flex;flex-wrap:wrap;gap:clamp(1.25rem,3vw,2.5rem);margin-top:clamp(2rem,4vw,3rem)}
.q-badge{display:flex;align-items:center;gap:.7rem;max-width:180px}
.q-badge__icon{
  width:42px;height:42px;flex:none;border-radius:50%;background:rgba(255,255,255,.7);
  border:1px solid rgba(135,145,119,.35);display:grid;place-items:center;color:var(--q-olive-dark);
  transition:transform var(--q-dur) var(--q-ease),background var(--q-dur) var(--q-ease);
}
.q-badge:hover .q-badge__icon{transform:translateY(-3px) rotate(-6deg);background:#fff}
.q-badge__icon svg{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:1.4}
.q-badge__label{font-size:var(--q-fs-small);font-weight:600;color:var(--q-ink);line-height:1.3}
.q-hero__media{position:relative;align-self:stretch;min-height:320px}
.q-hero__media img{width:100%;height:100%;object-fit:cover;border-radius:var(--q-radius-xl) 0 0 var(--q-radius-xl)}
.q-hero__media::after{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(90deg,rgba(235,229,220,.9) 0%,rgba(235,229,220,0) 28%);
}
.q-hero__seal{
  position:absolute;left:-46px;bottom:34px;z-index:3;width:104px;height:104px;border-radius:50%;
  background:var(--q-white);box-shadow:var(--q-shadow);display:grid;place-items:center;text-align:center;
  font-size:.5625rem;letter-spacing:.14em;text-transform:uppercase;color:var(--q-olive-dark);font-weight:600;line-height:1.5;
}

/* =========================================================================
   06. FEATURED COLLECTION
   ========================================================================= */
.q-collection__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(1rem,1.6vw,1.5rem)}
.q-cat-card{
  position:relative;display:flex;flex-direction:column;background:var(--q-white);
  border-radius:var(--q-radius-lg);overflow:hidden;box-shadow:var(--q-shadow-sm);
  transition:transform var(--q-dur) var(--q-ease),box-shadow var(--q-dur) var(--q-ease);
}
.q-cat-card:hover{transform:translateY(-8px);box-shadow:var(--q-shadow-lg)}
.q-cat-card__media{aspect-ratio:4/3;overflow:hidden;background:var(--q-cream-deep)}
.q-cat-card__media img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--q-ease)}
.q-cat-card:hover .q-cat-card__media img{transform:scale(1.07)}
.q-cat-card__body{padding:1.35rem 1.4rem 1.5rem;display:flex;flex-direction:column;gap:.5rem;flex:1}
.q-cat-card__title{font-size:var(--q-fs-h4);margin:0}
.q-cat-card__text{font-size:var(--q-fs-small);color:var(--q-body);margin:0;flex:1}
.q-cat-card__link{
  display:inline-flex;align-items:center;gap:.45rem;margin-top:.6rem;
  font-size:var(--q-fs-eyebrow);letter-spacing:.16em;text-transform:uppercase;font-weight:600;color:var(--q-ink);
}
.q-cat-card__link svg{width:14px;height:14px;stroke:currentColor;fill:none;stroke-width:1.6;transition:transform var(--q-dur) var(--q-ease)}
.q-cat-card:hover .q-cat-card__link{color:var(--q-terracotta)}
.q-cat-card:hover .q-cat-card__link svg{transform:translateX(5px)}
.q-cat-card__overlay{position:absolute;inset:0;z-index:1}

/* =========================================================================
   07. INGREDIENTS (olive band)
   ========================================================================= */
.q-ingredients{position:relative;background:var(--q-olive);color:#fff;border-radius:var(--q-radius-xl);overflow:hidden;padding-block:clamp(2.5rem,4.5vw,4rem)}
.q-ingredients-wrap{padding-block:clamp(1rem,2vw,2rem)}
.q-ingredients::before,.q-ingredients::after{
  content:"";position:absolute;border-radius:50%;background:rgba(255,255,255,.055);pointer-events:none;
}
.q-ingredients::before{width:340px;height:340px;right:-90px;top:-120px}
.q-ingredients::after{width:220px;height:220px;left:-80px;bottom:-110px}
.q-ingredients__inner{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,2.1fr);gap:clamp(1.75rem,3.5vw,3.5rem);align-items:center}
.q-ingredients .q-eyebrow{color:rgba(255,255,255,.72)}
.q-ingredients h2{color:#fff;font-weight:400}
.q-ingredients__list{display:grid;grid-template-columns:repeat(5,1fr);gap:clamp(.75rem,1.5vw,1.5rem)}
.q-ingredient{text-align:center;color:#fff}
.q-ingredient__media{
  width:clamp(74px,8.5vw,104px);aspect-ratio:1;margin:0 auto .85rem;border-radius:50%;overflow:hidden;
  background:rgba(255,255,255,.9);border:3px solid rgba(255,255,255,.28);
  transition:transform var(--q-dur) var(--q-ease),border-color var(--q-dur) var(--q-ease);
}
.q-ingredient:hover .q-ingredient__media{transform:translateY(-6px) scale(1.04);border-color:var(--q-gold-light)}
.q-ingredient__media img{width:100%;height:100%;object-fit:cover}
.q-ingredient__name{font-family:var(--q-font-display);font-size:var(--q-fs-base);color:#fff;margin:0 0 .15rem}
.q-ingredient__text{font-size:.75rem;color:rgba(255,255,255,.76);margin:0;line-height:1.5}
.q-ingredients .q-btn--light{margin-top:1.4rem}

/* =========================================================================
   08. BEST SELLERS / PRODUCT CARDS
   ========================================================================= */
.q-products{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(1.25rem,2.2vw,2rem);list-style:none;margin:0;padding:0}
ul.products.q-products::before,ul.products.q-products::after{content:none}
.q-products li.product,
.woocommerce ul.products li.product{
  width:auto!important;float:none!important;margin:0!important;padding:0;
}
.q-product-card{
  position:relative;display:flex;flex-direction:column;height:100%;background:var(--q-white);
  border:1px solid transparent;border-radius:var(--q-radius-lg);overflow:hidden;
  box-shadow:var(--q-shadow-sm);
  transition:transform var(--q-dur) var(--q-ease),box-shadow var(--q-dur) var(--q-ease),border-color var(--q-dur) var(--q-ease);
}
.q-product-card:hover{transform:translateY(-8px);box-shadow:var(--q-shadow-lg);border-color:var(--q-line)}
.q-product-card__media{position:relative;display:block;aspect-ratio:1/1;background:var(--q-cream-deep);overflow:hidden}
.q-product-card__media img{width:100%;height:100%;object-fit:cover;transition:transform .85s var(--q-ease),opacity .45s var(--q-ease)}
.q-product-card:hover .q-product-card__media img{transform:scale(1.06)}
.q-product-card__media .q-img-alt{position:absolute;inset:0;opacity:0}
.q-product-card:hover .q-img-alt{opacity:1}
.q-product-card__badge{
  position:absolute;top:1rem;left:1rem;z-index:3;padding:.4rem .85rem;border-radius:var(--q-pill);
  background:var(--q-cream);color:var(--q-ink);font-size:.625rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;
}
.q-product-card__badge--sale{background:var(--q-terracotta);color:#fff}
.q-product-card__body{display:flex;flex-direction:column;gap:.35rem;padding:1.25rem 1.35rem 1.4rem;flex:1}
.q-product-card__title{font-size:var(--q-fs-h4);margin:0}
.q-product-card__title a{color:var(--q-ink)}
.q-product-card__title a:hover{color:var(--q-terracotta)}
.q-product-card__sub{font-size:var(--q-fs-small);color:var(--q-muted);margin:0}
.q-product-card__price{font-family:var(--q-font-display);font-size:1.2rem;color:var(--q-ink);margin:.35rem 0 .9rem}
.q-product-card__price del{color:var(--q-muted);font-size:.9rem;margin-right:.45rem;opacity:.7}
.q-product-card__price ins{text-decoration:none;color:var(--q-terracotta)}
.q-product-card__foot{margin-top:auto}

/* Star rating */
.q-stars{display:inline-flex;align-items:center;gap:.45rem;font-size:var(--q-fs-small);color:var(--q-muted)}
.q-stars__icons{display:inline-flex;gap:2px;color:var(--q-gold)}
.q-stars__icons svg{width:14px;height:14px;fill:currentColor}
.q-stars__icons svg.is-empty{fill:none;stroke:currentColor;stroke-width:1.4;opacity:.55}

/* Woo add-to-cart button inside cards */
.q-product-card .button,
.q-product-card .added_to_cart{
  --_bg:var(--q-olive);--_bg-hover:var(--q-olive-dark);
  width:100%;margin:0;padding:.9rem 1.25rem;border-radius:var(--q-pill);
}
.q-product-card .added_to_cart{margin-top:.5rem;--_bg:transparent;--_fg:var(--q-ink);border:1px solid var(--q-line)}
.q-product-card .button.loading{opacity:.75;pointer-events:none}
.q-product-card .button.loading::after{
  content:"";width:14px;height:14px;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;
  animation:q-spin .7s linear infinite;
}
@keyframes q-spin{to{transform:rotate(360deg)}}

/* =========================================================================
   09. TESTIMONIALS / RESULTS
   ========================================================================= */
.q-results{background:var(--q-cream-deep);border-radius:var(--q-radius-xl);padding:clamp(2rem,4vw,3.5rem)}
.q-results__inner{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.9fr) minmax(0,.8fr);gap:clamp(1.5rem,3vw,2.75rem);align-items:center}
.q-results h2{font-weight:400}
.q-results__cards{display:grid;grid-template-columns:repeat(2,1fr);gap:clamp(1rem,2vw,1.5rem)}
.q-result-card{background:#fff;border-radius:var(--q-radius);overflow:hidden;box-shadow:var(--q-shadow-sm);transition:transform var(--q-dur) var(--q-ease),box-shadow var(--q-dur) var(--q-ease)}
.q-result-card:hover{transform:translateY(-6px);box-shadow:var(--q-shadow)}
.q-result-card__media{position:relative;display:grid;grid-template-columns:1fr 1fr;aspect-ratio:16/11;background:var(--q-cream)}
.q-result-card__media img{width:100%;height:100%;object-fit:cover}
.q-result-card__media::after{content:"";position:absolute;left:50%;top:0;bottom:0;width:1px;background:rgba(255,255,255,.75)}
.q-result-card__tag{
  position:absolute;bottom:.7rem;padding:.3rem .7rem;border-radius:var(--q-pill);background:rgba(46,51,43,.7);
  color:#fff;font-size:.5625rem;letter-spacing:.16em;text-transform:uppercase;font-weight:600;z-index:2;
}
.q-result-card__tag--before{left:.7rem}
.q-result-card__tag--after{right:.7rem}
.q-result-card__body{padding:1.1rem 1.25rem 1.3rem}
.q-result-card__quote{font-size:var(--q-fs-small);color:var(--q-body);font-style:italic;margin:0 0 .6rem;line-height:1.65}
.q-result-card__author{font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;color:var(--q-muted);font-weight:600;margin:0}
.q-rating-badge{background:var(--q-olive);color:#fff;border-radius:var(--q-radius-lg);padding:clamp(1.5rem,2.5vw,2rem) 1.5rem;text-align:center}
.q-rating-badge__stars{display:flex;justify-content:center;gap:3px;color:var(--q-gold-light);margin-bottom:.7rem}
.q-rating-badge__stars svg{width:18px;height:18px;fill:currentColor}
.q-rating-badge__score{font-family:var(--q-font-display);font-size:clamp(2rem,3.5vw,2.75rem);line-height:1;color:#fff;margin:0}
.q-rating-badge__meta{font-size:.75rem;color:rgba(255,255,255,.78);margin:.5rem 0 1.25rem}
.q-rating-badge__list{list-style:none;margin:0;padding:0;display:grid;gap:.7rem;text-align:left}
.q-rating-badge__list li{display:flex;align-items:center;gap:.6rem;font-size:.75rem;color:rgba(255,255,255,.9)}
.q-rating-badge__list svg{width:16px;height:16px;flex:none;stroke:currentColor;fill:none;stroke-width:1.5;color:var(--q-gold-light)}

/* =========================================================================
   10. NEWSLETTER (terracotta band)
   ========================================================================= */
.q-newsletter-wrap{padding-block:clamp(1rem,2vw,2rem)}
.q-newsletter{position:relative;background:var(--q-terracotta);color:#fff;border-radius:var(--q-radius-xl);overflow:hidden;padding:clamp(2rem,3.5vw,3.25rem) clamp(1.5rem,3vw,3rem)}
.q-newsletter::before{content:"";position:absolute;inset:0;background:radial-gradient(120% 140% at 0% 0%,rgba(255,255,255,.12),transparent 55%);pointer-events:none}
.q-newsletter__inner{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:clamp(1.75rem,3.5vw,3rem);align-items:center}
.q-newsletter .q-eyebrow{color:rgba(255,255,255,.75)}
.q-newsletter h2{color:#fff;font-weight:400;margin-bottom:.5rem}
.q-newsletter p{color:rgba(255,255,255,.88);font-size:var(--q-fs-small);max-width:46ch}
.q-newsletter__form{display:flex;gap:.5rem;background:#fff;border-radius:var(--q-pill);padding:.35rem;margin-top:1.35rem;max-width:460px;box-shadow:0 10px 26px rgba(0,0,0,.09)}
.q-newsletter__form input{border:0;background:transparent;padding:.75rem 1.15rem;flex:1;min-width:0}
.q-newsletter__form input:focus{box-shadow:none}
.q-newsletter__form .q-btn{--_bg:var(--q-ink);--_bg-hover:var(--q-olive-dark);padding:.85rem 1.6rem}
.q-newsletter__msg{margin:.85rem 0 0;font-size:var(--q-fs-small);min-height:1.2em;color:#fff}
.q-newsletter__values{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;text-align:center}
.q-value__icon{
  width:46px;height:46px;margin:0 auto .7rem;border-radius:50%;border:1px solid rgba(255,255,255,.4);
  display:grid;place-items:center;transition:transform var(--q-dur) var(--q-ease),background var(--q-dur) var(--q-ease);
}
.q-value:hover .q-value__icon{transform:translateY(-4px);background:rgba(255,255,255,.14)}
.q-value__icon svg{width:20px;height:20px;stroke:#fff;fill:none;stroke-width:1.4}
.q-value__title{font-size:var(--q-fs-small);font-weight:600;color:#fff;margin:0}
.q-value__text{font-size:.6875rem;color:rgba(255,255,255,.82);margin:.15rem 0 0;line-height:1.5}

/* =========================================================================
   11. FOOTER
   ========================================================================= */
.q-footer{background:var(--q-cream);padding-block:clamp(3rem,5vw,4.5rem) 0;border-top:1px solid var(--q-line)}
.q-footer__top{display:grid;grid-template-columns:minmax(0,1.5fr) repeat(4,minmax(0,1fr)) minmax(0,1.2fr);gap:clamp(1.5rem,2.5vw,2.5rem)}
.q-footer__brand p{font-size:var(--q-fs-small);color:var(--q-body);max-width:32ch;margin:1rem 0 1.25rem}
.q-footer__social{display:flex;gap:.6rem}
.q-footer__social a{
  width:36px;height:36px;border-radius:50%;border:1px solid var(--q-line);display:grid;place-items:center;color:var(--q-ink);
  transition:background var(--q-dur) var(--q-ease),color var(--q-dur) var(--q-ease),transform var(--q-dur) var(--q-ease);
}
.q-footer__social a:hover{background:var(--q-olive);color:#fff;border-color:var(--q-olive);transform:translateY(-3px)}
.q-footer__social svg{width:15px;height:15px;fill:currentColor}
.q-footer__col h4{font-size:var(--q-fs-eyebrow);letter-spacing:.2em;text-transform:uppercase;font-family:var(--q-font-body);font-weight:700;color:var(--q-ink);margin-bottom:1.1rem}
.q-footer__col ul{list-style:none;margin:0;padding:0;display:grid;gap:.6rem}
.q-footer__col a{font-size:var(--q-fs-small);color:var(--q-body);position:relative}
.q-footer__col a:hover{color:var(--q-terracotta);padding-left:.3rem}
.q-footer__col a{transition:color .3s var(--q-ease),padding-left .3s var(--q-ease)}
.q-trust{display:grid;gap:.75rem;align-content:start}
.q-trust__item{display:flex;align-items:center;gap:.75rem;background:#fff;border:1px solid var(--q-line);border-radius:var(--q-radius);padding:.8rem .95rem}
.q-trust__item svg{width:20px;height:20px;flex:none;stroke:var(--q-olive-dark);fill:none;stroke-width:1.5}
.q-trust__title{font-size:var(--q-fs-small);font-weight:600;color:var(--q-ink);margin:0;line-height:1.3}
.q-trust__text{font-size:.6875rem;color:var(--q-muted);margin:0}
.q-footer__bottom{
  margin-top:clamp(2rem,4vw,3rem);border-top:1px solid var(--q-line);padding-block:1.35rem;
  display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;
  font-size:.75rem;color:var(--q-muted);
}
.q-footer__bottom p{margin:0}
.q-payments{display:flex;gap:.5rem;align-items:center}
.q-payments span{padding:.3rem .55rem;border:1px solid var(--q-line);border-radius:5px;background:#fff;font-size:.625rem;font-weight:600;letter-spacing:.06em;color:var(--q-body)}

/* =========================================================================
   12. WOOCOMMERCE OVERRIDES (shop, single, cart, checkout)
   ========================================================================= */
.woocommerce-page .q-page{padding-block:clamp(2rem,4vw,3.5rem)}
.q-page-hero{background:var(--q-cream-deep);padding-block:clamp(2rem,4vw,3.25rem);text-align:center;border-radius:0 0 var(--q-radius-xl) var(--q-radius-xl)}
.q-page-hero h1{margin:0}
.woocommerce-breadcrumb{font-size:var(--q-fs-small);color:var(--q-muted);margin-bottom:1.5rem}
.woocommerce .woocommerce-result-count,
.woocommerce .woocommerce-ordering{margin-bottom:1.75rem}
.woocommerce ul.products{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(1.25rem,2.2vw,2rem);list-style:none;margin:0;padding:0}
.woocommerce ul.products::before,.woocommerce ul.products::after{content:none}
.woocommerce div.product .product_title{font-size:var(--q-fs-h2);font-weight:400}
.woocommerce div.product p.price,
.woocommerce div.product span.price{color:var(--q-ink);font-family:var(--q-font-display);font-size:1.6rem}
.woocommerce div.product form.cart div.quantity{margin-right:.75rem}
.woocommerce .quantity input.qty{width:76px;text-align:center;border-radius:var(--q-pill);padding:.85rem .5rem}
.woocommerce div.product .woocommerce-tabs ul.tabs{padding:0;margin-bottom:1.5rem;border-bottom:1px solid var(--q-line)}
.woocommerce div.product .woocommerce-tabs ul.tabs::before{border:0}
.woocommerce div.product .woocommerce-tabs ul.tabs li{background:transparent;border:0;border-radius:0;margin:0 1.75rem 0 0;padding:0}
.woocommerce div.product .woocommerce-tabs ul.tabs li::before,
.woocommerce div.product .woocommerce-tabs ul.tabs li::after{content:none}
.woocommerce div.product .woocommerce-tabs ul.tabs li a{
  font-family:var(--q-font-body);font-size:var(--q-fs-small);font-weight:600;letter-spacing:.12em;text-transform:uppercase;
  color:var(--q-muted);padding:.9rem 0;display:inline-block;border-bottom:2px solid transparent;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a{color:var(--q-ink);border-bottom-color:var(--q-terracotta)}
.woocommerce .star-rating span::before,.woocommerce p.stars a::before{color:var(--q-gold)}
.woocommerce-message,.woocommerce-info,.woocommerce-error{
  border-top:0;border-left:3px solid var(--q-olive);background:#fff;border-radius:var(--q-radius-sm);
  box-shadow:var(--q-shadow-sm);color:var(--q-ink);font-size:var(--q-fs-small);
}
.woocommerce-error{border-left-color:var(--q-terracotta)}
.woocommerce-message::before,.woocommerce-info::before{color:var(--q-olive)}
.woocommerce table.shop_table{border:1px solid var(--q-line);border-radius:var(--q-radius);background:#fff;border-collapse:separate}
.woocommerce table.shop_table th{font-family:var(--q-font-body);font-size:var(--q-fs-eyebrow);letter-spacing:.14em;text-transform:uppercase;color:var(--q-muted)}
.woocommerce-cart table.cart img{width:72px;border-radius:var(--q-radius-sm)}
.woocommerce #respond input#submit.alt,.woocommerce a.button.alt,.woocommerce button.button.alt,.woocommerce input.button.alt{
  --_bg:var(--q-terracotta);--_bg-hover:var(--q-terracotta-d);background:var(--_bg)
}
.woocommerce #payment,.woocommerce-checkout #customer_details,.woocommerce .cart_totals,
.woocommerce-order-details,.woocommerce-customer-details,.woocommerce-MyAccount-content{
  background:#fff;border:1px solid var(--q-line);border-radius:var(--q-radius);padding:clamp(1.25rem,2.5vw,2rem)
}
.woocommerce #payment{background:#fff}
.woocommerce #payment div.payment_box{background:var(--q-cream);border-radius:var(--q-radius-sm)}
.woocommerce #payment div.payment_box::before{border-bottom-color:var(--q-cream)}
.woocommerce-MyAccount-navigation ul{list-style:none;padding:0;display:grid;gap:.35rem}
.woocommerce-MyAccount-navigation a{display:block;padding:.7rem 1rem;border-radius:var(--q-radius-sm);background:#fff;border:1px solid var(--q-line);color:var(--q-ink);font-size:var(--q-fs-small)}
.woocommerce-MyAccount-navigation li.is-active a{background:var(--q-olive);border-color:var(--q-olive);color:#fff}

/* Sticky mobile add-to-cart on single product */
.q-sticky-atc{
  position:fixed;left:0;right:0;bottom:0;z-index:150;display:none;align-items:center;gap:1rem;
  padding:.75rem var(--q-gutter);background:rgba(255,255,255,.97);border-top:1px solid var(--q-line);
  box-shadow:0 -6px 22px rgba(46,51,43,.08);transform:translateY(110%);transition:transform .4s var(--q-ease);
}
.q-sticky-atc.is-visible{transform:translateY(0)}
.q-sticky-atc__info{flex:1;min-width:0}
.q-sticky-atc__title{font-family:var(--q-font-display);font-size:.95rem;color:var(--q-ink);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.q-sticky-atc__price{font-size:var(--q-fs-small);color:var(--q-terracotta);margin:0;font-weight:600}

/* =========================================================================
   13. MOTION / REVEAL
   ========================================================================= */
.q-reveal{opacity:0;transform:translateY(22px);transition:opacity .7s var(--q-ease),transform .7s var(--q-ease)}
.q-reveal.is-in{opacity:1;transform:none}
.q-reveal[data-delay="1"]{transition-delay:.08s}
.q-reveal[data-delay="2"]{transition-delay:.16s}
.q-reveal[data-delay="3"]{transition-delay:.24s}
.q-reveal[data-delay="4"]{transition-delay:.32s}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}
  .q-reveal{opacity:1;transform:none}
}

/* =========================================================================
   14. RESPONSIVE
   ========================================================================= */
@media (max-width:1180px){
  .q-footer__top{grid-template-columns:minmax(0,1.4fr) repeat(2,minmax(0,1fr));row-gap:2.5rem}
  .q-trust{grid-column:span 3;grid-template-columns:repeat(3,1fr);display:grid}
}
@media (max-width:1024px){
  :root{--q-header-h:70px}
  .q-nav,.q-search{display:none}
  .q-burger{display:inline-flex}
  .q-header__inner{grid-template-columns:1fr auto}
  .q-hero__inner{grid-template-columns:1fr;min-height:0}
  .q-hero__copy{padding:clamp(2rem,5vw,3rem) clamp(1.5rem,5vw,2.5rem) 0;order:1}
  .q-hero__media{order:2;min-height:clamp(280px,48vw,420px)}
  .q-hero__media img{border-radius:0 0 var(--q-radius-xl) var(--q-radius-xl)}
  .q-hero__media::after{background:linear-gradient(180deg,rgba(235,229,220,.85) 0%,rgba(235,229,220,0) 24%)}
  .q-hero__seal{display:none}
  .q-collection__grid{grid-template-columns:repeat(2,1fr)}
  .q-ingredients__inner{grid-template-columns:1fr;text-align:center}
  .q-ingredients__list{grid-template-columns:repeat(5,1fr)}
  .q-products,.woocommerce ul.products{grid-template-columns:repeat(2,1fr)}
  .q-results__inner{grid-template-columns:1fr}
  .q-results__head{text-align:center}
  .q-newsletter__inner{grid-template-columns:1fr}
  .q-newsletter__form{max-width:none}
  .q-topbar__inner{grid-template-columns:1fr auto}
  .q-topbar__msg{grid-column:1;text-align:left}
  .q-topbar__links{grid-column:2}
  .q-sticky-atc{display:flex}
}
@media (max-width:768px){
  .q-topbar__links li:not(.q-topbar__social){display:none}
  .q-ingredients__list{grid-template-columns:repeat(3,1fr);gap:1.5rem 1rem}
  .q-results__cards{grid-template-columns:1fr}
  .q-newsletter__values{grid-template-columns:repeat(3,1fr);gap:.5rem}
  .q-footer__top{grid-template-columns:repeat(2,minmax(0,1fr))}
  .q-footer__brand{grid-column:span 2}
  .q-trust{grid-column:span 2;grid-template-columns:1fr}
  .q-section__head{flex-direction:column;align-items:flex-start}
}
@media (max-width:560px){
  :root{--q-radius-xl:26px;--q-radius-lg:20px}
  .q-hero__badges{gap:1rem}
  .q-badge{max-width:none;flex:1 1 40%}
  .q-collection__grid{grid-template-columns:1fr}
  .q-products,.woocommerce ul.products{grid-template-columns:1fr}
  .q-ingredients__list{grid-template-columns:repeat(2,1fr)}
  .q-newsletter__form{flex-direction:column;border-radius:var(--q-radius);padding:.5rem}
  .q-newsletter__form .q-btn{width:100%}
  .q-newsletter__values{grid-template-columns:1fr;text-align:left;gap:1rem}
  .q-value{display:flex;align-items:center;gap:.85rem;text-align:left}
  .q-value__icon{margin:0}
  .q-footer__bottom{justify-content:center;text-align:center}
}

/* Print */
@media print{.q-topbar,.q-header,.q-newsletter-wrap,.q-footer,.q-sticky-atc{display:none!important}}

/* =========================================================================
   15. IMAGE PLACEHOLDERS
   Used automatically until the real photography is uploaded to
   /assets/img — so the layout is never broken on a fresh install.
   ========================================================================= */
.q-img-placeholder{
  position:relative;width:100%;height:100%;min-height:150px;display:grid;place-items:center;
  background:
    radial-gradient(120% 120% at 20% 15%, rgba(255,255,255,.75), transparent 60%),
    linear-gradient(135deg, var(--q-cream-deep) 0%, #DCDCCB 55%, #CFC6B6 100%);
  color:rgba(46,51,43,.32);
}
.q-img-placeholder span{
  font-size:.625rem;letter-spacing:.16em;text-transform:uppercase;font-weight:600;
  padding:.35rem .7rem;border:1px dashed rgba(46,51,43,.22);border-radius:var(--q-pill);
}
.q-ingredient .q-img-placeholder{min-height:0}
.q-ingredient .q-img-placeholder span{display:none}

/* =========================================================================
   16. INNER PAGES: prose, blog grid, single-product trust strip
   ========================================================================= */
.q-main{display:block}
.q-page{padding-block:clamp(2.5rem,5vw,4rem)}
.q-page-hero + .q-main{padding-top:clamp(2rem,4vw,3rem)}

.q-prose{max-width:76ch;margin-inline:auto;font-size:var(--q-fs-lead)}
.q-prose h2{margin-top:2.25em}
.q-prose h3{margin-top:1.75em}
.q-prose img,.q-prose figure{border-radius:var(--q-radius);overflow:hidden;margin:2rem 0}
.q-prose blockquote{
  margin:2rem 0;padding:1.25rem 1.75rem;border-left:3px solid var(--q-gold);
  background:var(--q-cream-deep);border-radius:0 var(--q-radius) var(--q-radius) 0;
  font-family:var(--q-font-display);font-size:1.15rem;font-style:italic;color:var(--q-ink);
}

.q-post-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(1.25rem,2.2vw,2rem)}
.q-post-card{
  display:flex;flex-direction:column;background:#fff;border-radius:var(--q-radius-lg);overflow:hidden;
  box-shadow:var(--q-shadow-sm);transition:transform var(--q-dur) var(--q-ease),box-shadow var(--q-dur) var(--q-ease);
}
.q-post-card:hover{transform:translateY(-6px);box-shadow:var(--q-shadow-lg)}
.q-post-card__media{aspect-ratio:16/10;overflow:hidden;display:block}
.q-post-card__media img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--q-ease)}
.q-post-card:hover .q-post-card__media img{transform:scale(1.06)}
.q-post-card__body{padding:1.35rem 1.4rem 1.6rem;display:flex;flex-direction:column;gap:.4rem;flex:1}
.q-post-card__title{font-size:var(--q-fs-h4);margin:0}
.q-post-card__title a{color:var(--q-ink)}
.q-post-card__title a:hover{color:var(--q-terracotta)}
.q-post-card p{font-size:var(--q-fs-small);flex:1}

.q-single-trust{list-style:none;margin:1.5rem 0 0;padding:1.25rem 0 0;border-top:1px solid var(--q-line);display:grid;gap:.7rem}
.q-single-trust li{display:flex;align-items:center;gap:.7rem;font-size:var(--q-fs-small);color:var(--q-body)}
.q-single-trust svg{stroke:var(--q-olive-dark);fill:none;stroke-width:1.5;flex:none}

.q-drawer__search{margin-bottom:1.25rem}
.q-drawer__search input{border-radius:var(--q-pill)}

.q-widget{background:#fff;border:1px solid var(--q-line);border-radius:var(--q-radius);padding:1.35rem;margin-bottom:1.25rem}
.q-widget__title{font-family:var(--q-font-body);font-size:var(--q-fs-eyebrow);letter-spacing:.18em;text-transform:uppercase;font-weight:700}

.q-searchform{display:flex;gap:.5rem}
.q-searchform input{flex:1}

.woocommerce-pagination ul,.q-page .navigation .nav-links{
  display:flex;gap:.4rem;list-style:none;padding:0;justify-content:center;margin-top:2.5rem;border:0
}
.woocommerce-pagination ul li{border:0!important}
.woocommerce-pagination a,.woocommerce-pagination span,
.q-page .nav-links .page-numbers{
  display:grid;place-items:center;min-width:42px;height:42px;padding:0 .6rem;border-radius:var(--q-pill);
  background:#fff;border:1px solid var(--q-line);color:var(--q-ink);font-size:var(--q-fs-small);
  transition:background .3s var(--q-ease),color .3s var(--q-ease),border-color .3s var(--q-ease)
}
.woocommerce-pagination .current,.q-page .nav-links .page-numbers.current{background:var(--q-olive);border-color:var(--q-olive);color:#fff}
.woocommerce-pagination a:hover,.q-page .nav-links a.page-numbers:hover{background:var(--q-ink);border-color:var(--q-ink);color:#fff}

.q-related{padding-bottom:0}
.q-results__head .q-btn{margin-top:1.25rem}

@media (max-width:1024px){.q-post-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:640px){.q-post-grid{grid-template-columns:1fr}}
