/* ============================================================
   Gandi Shiraz — Universal text-size layer
   Loaded LAST (after responsive.css) so it wins the cascade.
   Only font sizes change here; layout, spacing and colors are
   intentionally untouched. Safe for light & dark mode.
   ============================================================ */

/* 1. Root presets — WordPress / block content scales with the store. */
:root {
  --wp--preset--font-size--x-small: 0.9rem;
  --wp--preset--font-size--small: 0.9375rem;
  --wp--preset--font-size--medium: clamp(15.5px, 0.97rem + ((1vw - 3.2px) * 0.5), 21px);
  --wp--preset--font-size--large: clamp(23px, 1.44rem + ((1vw - 3.2px) * 1.27), 38px);
  --wp--preset--font-size--x-large: clamp(26.5px, 1.66rem + ((1vw - 3.2px) * 1.544), 44px);
}

/* 2. Base text — beats the parent's body{} rule (class > element). */
.gandi-shiraz-theme {
  font-size: 1.0625rem;
}

/* 3. Component bump table — every small label grows one step.
   Selectors mirror the source files exactly; loading order wins. */

/* Header + announcement */
.gandi-kicker { font-size: 0.88rem; }
.gandi-announcement { font-size: 0.88rem; }
.gandi-wordmark span { font-size: 0.82rem; }
.gandi-search-result__copy small { font-size: 0.85rem; }
.gandi-search-results__status { font-size: 0.92rem; }
.gandi-search-result__price { font-size: 0.92rem; }
.gandi-submenu-toggle { font-size: 1.3rem; }
.gandi-action-link { font-size: 0.88rem; }
.gandi-cart-count { font-size: 0.76rem; }
.gandi-category-trigger { font-size: 0.94rem; }
.gandi-primary-menu > li > a { font-size: 0.92rem; }
.gandi-primary-menu .sub-menu a { font-size: 0.9rem; }
.gandi-location { font-size: 0.88rem; }
.gandi-mega-menu__column li a { font-size: 0.9rem; }
.gandi-mega-menu__all { font-size: 0.92rem; }
.gandi-mobile-menu .sub-menu a { font-size: 0.92rem; }
.gandi-mobile-drawer__actions a { font-size: 0.9rem; }
.gandi-mobile-bottom-nav a { font-size: 0.75rem; }

/* Hero + benefits */
.gandi-hero__text { font-size: clamp(1.05rem, 1.35vw, 1.18rem); }
.gandi-benefits strong,
.gandi-footer__service-row strong { font-size: 0.98rem; }
.gandi-benefits small,
.gandi-footer__service-row small { font-size: 0.82rem; }

/* Categories */
.gandi-category-card__copy strong { font-size: 1.15rem; }
.gandi-category-card--large .gandi-category-card__copy strong { font-size: 1.65rem; }
.gandi-category-card__copy small { font-size: 0.82rem; }

/* Product cards */
.gandi-sale-badge,
.gandi-stock-badge { font-size: 0.82rem; }
.gandi-product-card__category { font-size: 0.8rem; }
.gandi-product-card__title { font-size: 1.02rem; }
.gandi-product-card__facts li { font-size: 0.79rem; }
.gandi-product-card__price .price,
.gandi-product-card__price > span { font-size: 0.96rem; }
.gandi-product-card__price del { font-size: 0.78rem; }

/* Editorial + sale stage + story + journal */
.gandi-editorial-card__overlay > span { font-size: 0.92rem; }
.gandi-countdown b { font-size: 1.25rem; }
.gandi-countdown small { font-size: 0.74rem; }
.gandi-journal-card time { font-size: 0.82rem; }
.gandi-journal-card h2,
.gandi-journal-card h3 { font-size: 1.1rem; }
.gandi-journal-card p { font-size: 0.92rem; }

/* Catalogue */
.gandi-breadcrumbs { font-size: 0.85rem; }
.gandi-subcategory-strip strong { font-size: 0.88rem; }
.gandi-catalog-toolbar__result { font-size: 0.88rem; }
.gandi-filter-heading a { font-size: 0.82rem; }
.gandi-filter-group legend { font-size: 0.92rem; }
.gandi-price-fields label span { font-size: 0.78rem; }
.gandi-check { font-size: 0.86rem; }
.gandi-check small { font-size: 0.76rem; }
.gandi-pagination a,
.gandi-pagination span { font-size: 0.88rem; }

/* Content pages */
.gandi-prose { font-size: 1.08rem; }
.gandi-search-list time { font-size: 0.82rem; }
.gandi-search-list h2 { font-size: 1.2rem; }
.gandi-search-list p { font-size: 0.96rem; }

/* Footer */
.gandi-footer h2 { font-size: 1.1rem; }
.gandi-footer__brand h2 { font-size: 1.45rem; }
.gandi-footer-menu a { font-size: 0.9rem; }
.gandi-footer__contact p { font-size: 0.9rem; }
.gandi-footer__bottom { font-size: 0.82rem; }

/* WooCommerce — forms, tables, notices, tabs */
.gandi-shiraz-theme .woocommerce form .form-row label,
.gandi-shiraz-theme .wc-block-components-text-input label,
.gandi-shiraz-theme .wc-block-components-combobox-control label { font-size: 0.88rem; }
.gandi-shiraz-theme .woocommerce table.shop_table th { font-size: 0.88rem; }
.gandi-shiraz-theme .woocommerce-notices-wrapper .woocommerce-message,
.gandi-shiraz-theme .woocommerce-notices-wrapper .woocommerce-info,
.gandi-shiraz-theme .woocommerce-notices-wrapper .woocommerce-error { font-size: 0.95rem; }
.gandi-product-eyebrow { font-size: 0.85rem; }
.gandi-product-page .woocommerce-product-rating { font-size: 0.86rem; }
.gandi-product-page .summary .price {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.15rem;
}
.gandi-product-page .summary .price del {
  order: -1;
  font-size: 0.78em;
  font-weight: 600;
}
.gandi-product-page .summary .price del .woocommerce-Price-currencySymbol {
  display: none;
}
.gandi-product-page .woocommerce-product-details__short-description { font-size: 1rem; }
.gandi-product-key-facts span { font-size: 0.78rem; }
.gandi-product-key-facts strong { font-size: 0.88rem; }
.gandi-product-page .reset_variations { font-size: 0.82rem; }
.gandi-product-page .woocommerce-variation-description { font-size: 0.92rem; }
.gandi-product-page .stock { font-size: 0.9rem; }
.gandi-product-page .product_meta { font-size: 0.82rem; }
.gandi-product-reassurance strong { font-size: 0.78rem; }
.gandi-product-reassurance small { font-size: 0.68rem; }
.gandi-product-details ul.products li.product .woocommerce-loop-product__title { font-size: 0.95rem !important; }
.gandi-product-details ul.products li.product .price { font-size: 0.88rem !important; }
.gandi-shiraz-theme #review_form .comment-reply-title { font-size: 1.2rem; }
.gandi-checkout-progress li { font-size: 0.9rem; }
.gandi-login-invitation small { font-size: 0.84rem; }
.gandi-login-invitation > a { font-size: 0.88rem; }
.gandi-shiraz-theme .woocommerce a.remove { font-size: 1.45rem; }
.gandi-shiraz-theme #order_review_heading { font-size: 1.2rem; }
.gandi-shiraz-theme #payment div.payment_box { font-size: 0.9rem; }
.gandi-shiraz-theme .woocommerce-MyAccount-navigation a { font-size: 0.9rem; }
.gandi-shiraz-theme .woocommerce-Address-title h2 { font-size: 1.1rem; }
.gandi-shiraz-theme .woocommerce-Address-title .edit { font-size: 0.85rem; }
.gandi-shiraz-theme .woocommerce-orders-table__cell-order-actions .button { font-size: 0.8rem; }
.gandi-shiraz-theme .woocommerce-order-overview li { font-size: 0.82rem; }
.gandi-shiraz-theme .woocommerce-order-overview li strong { font-size: 1rem; }

/* Account + cart (account.css values) */
.gandi-auth__field label { font-size: 0.95rem; }
.gandi-auth__check { font-size: 0.9rem; }
.gandi-auth__lost { font-size: 0.9rem; }
.gandi-auth__optional { font-size: 0.85rem; }
.gandi-auth__hint { font-size: 0.88rem; }
.gandi-auth__title { font-size: 1.25rem; }
.gandi-auth__back a { font-size: 0.9rem; }
.gandi-cart-empty__text { font-size: 1rem; }
.gandi-shiraz-theme .cart-collaterals .cart_totals h2 { font-size: 1.15rem; }
.gandi-shiraz-theme .cart-collaterals .cart_totals table.shop_table td,
.gandi-shiraz-theme .cart-collaterals .cart_totals table.shop_table th { font-size: 0.98rem; }
.gandi-shiraz-theme .cart-collaterals .cart_totals .order-total .amount { font-size: 1.25rem; }
.gandi-qty-btn { font-size: 1.15rem; }

/* Mobile overrides — keep the same one-step bump at small screens. */
@media (max-width: 760px) {
  .gandi-announcement { font-size: 0.82rem; }
  .gandi-product-search input { font-size: 0.93rem; }
  .gandi-product-card__title { font-size: 1rem; }
  .gandi-product-card__price { font-size: 0.92rem; }
  .gandi-hero__text { font-size: 1.04rem; }
  .gandi-category-card__copy strong { font-size: 0.96rem; }
  .gandi-product-card__category { font-size: 0.77rem; }
  .gandi-sale-badge,
  .gandi-stock-badge { font-size: 0.76rem; }
  .gandi-countdown b { font-size: 1.1rem; }
  .gandi-countdown small { font-size: 0.72rem; }
}

@media (max-width: 520px) {
  .gandi-wordmark strong { font-size: 1.22rem; }
  .gandi-hero__copy h1 { font-size: 2.15rem; }
  .gandi-page-hero h1 { font-size: 1.95rem; }
}
