/* ==========================================================
   DAWWWG Core - Savoy Child v2
   Purpose: Single, unified design system (Woo + Savoy + Elementor + WP blocks)
   Guideline source: "Child Theme - Savoy - Custom CSS Base"
   ========================================================== */

/* 1) Design Tokens (edit these first) */
:root{
  /* Typography */
  --d-font: "Inter Tight", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
  --d-weight: 400;
  --d-weight-strong: 600;
  --d-weight-bold: 800;

  /* Base scale */
  --d-font-size: 16px;
  --d-line: 1.55;
  --d-letter: 0.025rem;
  --d-transform: uppercase;

  /* Colors */
  --d-bg: #0b0b0b;
  --d-bg-2: #111111;
  --d-text: #f2f2f2;
  --d-muted: rgba(242,242,242,.65);
  --d-border: rgba(242,242,242,.14);
  --d-accent: #e4be35;
  --d-accent-2: #e4be35;
  --d-accent-text: #0b0b0b;

  /* Rhythm / spacing */
  --d-pad-x: 1vw;
  --d-pad-y: 1.5vh;
  --d-gap-1: .35rem;
  --d-gap-2: .7rem;
  --d-gap-3: 1.05rem;
  --d-gap-4: 1.4rem;

  /* Effects */
  --d-radius: 0px;
  --d-trans: 200ms ease-out;
  --d-hover-opacity: .65;

  /* Savoy / NM canonical values */
  --nm--v-111: #111111 !important;
  --nm--v-000: #000000 !important;
  --nm--v-ddd: #dddddd !important;
  --nm--v-fff: #ffffff !important;
  --nm--v-0000: 0px !important;
  --nm--v-sp-transparent: transparent !important;

  /* Font sizes (unique) */
  --nm--font-size-xsmall: 10px !important;
  --nm--font-size-small: 14px !important;
  --nm--font-size-medium: 16px !important;
  --nm--font-size-large: 21px !important;

  /* Grouped via alias */
  --nm--color-font: var(--nm--v-111) !important;
  --nm--color-font-highlight: var(--nm--v-111) !important;
  --nm--mobile-menu-color-font: var(--nm--v-111) !important;
  --nm--mobile-menu-color-font-hover: var(--nm--v-111) !important;

  --nm--color-font-strong: var(--nm--v-000) !important;

  --nm--color-border: var(--nm--v-ddd) !important;
  --nm--color-divider: var(--nm--v-ddd) !important;
  --nm--mobile-menu-color-border: var(--nm--v-ddd) !important;

  --nm--color-button: var(--nm--v-fff) !important;
  --nm--color-body-background: var(--nm--v-fff) !important;
  --nm--mobile-menu-color-background: var(--nm--v-fff) !important;
  --nm--shop-preloader-color: var(--nm--v-fff) !important;

  --nm--border-radius-container: var(--nm--v-0000) !important;
  --nm--border-radius-image: var(--nm--v-0000) !important;
  --nm--border-radius-image-fullwidth: var(--nm--v-0000) !important;
  --nm--border-radius-inputs: var(--nm--v-0000) !important;
  --nm--border-radius-button: var(--nm--v-0000) !important;

  --nm--single-product-background-color: var(--nm--v-sp-transparent) !important;
  --nm--single-product-background-color-mobile: var(--nm--v-sp-transparent) !important;

  /* Unique */
  --nm--color-button-background: #282828 !important;
  --nm--shop-preloader-gradient: linear-gradient(
    90deg,
    rgba(238,238,238,0) 20%,
    rgba(238,238,238,0.3) 50%,
    rgba(238,238,238,0) 70%
  ) !important;
  --nm--shop-rating-color: #e4be35 !important;
  --nm--single-product-mobile-gallery-width: 500px !important;
}

/* 2) Global baseline */
html{ font-size: var(--d-font-size); }

body{
  font-family: var(--d-font);
  font-weight: var(--d-weight);
  line-height: var(--d-line);
  color: var(--d-text);
  background: var(--d-bg);
  letter-spacing: 0;
}

/* Ensure form controls inherit */
button, input, select, textarea{
  font-family: var(--d-font);
  font-weight: var(--d-weight);
  letter-spacing: 0;
}

/* Links & hover behavior */
a{ transition: all var(--d-trans) !important; }
a:hover{ opacity: var(--d-hover-opacity) !important; }

/* 3) Unified typography */
h1,h2,h3,h4,h5,h6,
.nm-header,
.nm-menu li a,
.menu li a,
.nm-product-title,
.woocommerce-loop-product__title,
.product_title,
.wc-block-components-product-title,
.elementor-widget-heading .elementor-heading-title,
.woocommerce-LoopProduct-link:after, .nm-label-itsnew, .onsale,
div#nm-shop-taxonomy-header.has-image h1,
h1.nm-banner-title,
ul.dawwwg-core-brand-social li a{
  font-family: var(--d-font) !important;
  font-weight: var(--d-weight-strong) !important;
}

.nm-menu li a{
  text-transform: var(--d-transform);
  letter-spacing: var(--d-letter);
}

.woocommerce-LoopProduct-link:after, .nm-label-itsnew, .onsale, .dawwwg-core-single-under-atc{
  text-transform: var(--d-transform);
	border-radius: 0 !important;
}

p, li, td, th, label,
.woocommerce, .woocommerce p,
.nm-footer-bar-text,
.elementor-widget-text-editor,
.elementor-widget-text-editor p, div#cookie-consent-popup p{
  font-family: var(--d-font) !important;
  font-weight: var(--d-weight) !important;
}

/* Secondary texts */
small, .nm-footer-bar-text, .woocommerce-breadcrumb, nav#nm-breadcrumb{
  font-weight: var(--d-weight) !important;
  opacity: .85;
}

/* 4) Buttons (Woo + Elementor + generic) */
a.button:not(#nm-header-search-clear-button),
input[type="submit"],
input[type="button"],
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.wc-block-components-button,
.wc-block-components-button__text,
a.nm-banner-link.type-txt,
a.button.wc-forward{
  padding: 0.85rem !important;
  text-align: center !important;
  text-transform: var(--d-transform) !important;
  letter-spacing: var(--d-letter);
  font-family: var(--d-font) !important;
  font-weight: var(--d-weight-strong) !important;
  background-color: var(--d-accent) !important;
  color: var(--d-accent-text) !important;
  border-radius: var(--d-radius) !important;
  border: 1px solid transparent !important;
  transition: all var(--d-trans) !important;
}

  @media (max-width: 575px) {
a.button:not(#nm-header-search-clear-button),
input[type="submit"],
input[type="button"],
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.wc-block-components-button,
.wc-block-components-button__text,
a.nm-banner-link.type-txt,
a.button.wc-forward{
  padding: 1rem 0.5rem !important;
}
	  }

a.button:hover,
button:hover,
input[type="submit"]:hover,
input[type="button"]:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.wc-block-components-button:hover,
.elementor-button:hover{
  opacity: var(--d-hover-opacity) !important;
}

/* 6) Universal section spacing (Savoy + Elementor + content) */
.nm-row{ padding: 1vh 1vw !important; }

#nm-shop.header-disabled,
.upsells,
.related,
.tabs-layout-default .woocommerce-tabs .panel,section.dawwwg-core-brand-group h2{
  padding-top: 4vh !important;
  padding-bottom: 2.5vh !important;
}

/* Elementor: safe padding rhythm */
.elementor-section .elementor-container,
.elementor-section.elementor-section-boxed > .elementor-container{
  padding-left: var(--d-pad-x) !important;
  padding-right: var(--d-pad-x) !important;
}

.elementor-element:not(.elementor-widget-nm-banner-slider):not(:has(.elementor-widget-nm-banner-slider)){
  padding: var(--d-pad-y) var(--d-pad-x) !important;
}

.nm-header-search-wrap{
  padding-top: 4vh !important;
  padding-bottom: 4vh !important;
}

/* Titles spacing */
.upsells h2, .related h2, .dawwwg-core-brand-group-heading{ padding-bottom: 3vh !important; }

/* 7) Navigation / breadcrumbs */
li.menu-item, nav#nm-breadcrumb{
  text-transform: var(--d-transform);
  letter-spacing: var(--d-letter);
}

/* 8) Banners & overlays */
#nm-shop-taxonomy-header.has-image,
.nm-banner-image{
  height: 35vh;
}

  @media (max-width: 575px) {
#nm-shop-taxonomy-header.has-image,
.nm-banner-image{
  height: 45vh;
}
	  }

.nm-shop-taxonomy-header-inner{ background-position: 50% 20% !important; }

.nm-banner-image,
.nm-banner-alt-image,
.nm-shop-taxonomy-header-inner{
  position: relative;
}

.nm-banner-image::before,
.nm-banner-alt-image::before,
.nm-shop-taxonomy-header-inner::before{
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,0.5);
  pointer-events: none;
}

.nm-shop-taxonomy-header-inner .nm-shop-taxonomy-text{
  position: relative;
  z-index: 2;
}

div#nm-shop-taxonomy-header.has-image h1, div#nm-shop-taxonomy-header.has-image p {color: #ffffff;}

/* 9) Functional toggles */
.wp-block-woocommerce-coming-soon.woocommerce-coming-soon-default{
  background: url("/wp-content/uploads/site-placeholder.jpg") center center / cover no-repeat !important;
}

.wp-block-woocommerce-coming-soon.woocommerce-coming-soon-default .wp-block-cover__background,
.wp-block-woocommerce-coming-soon.woocommerce-coming-soon-default .wp-block-cover__inner-container{
  display: none !important;
}

/* Preorder label + footer */
span.dawwwg-preorder-label,
.nm-footer-bar-text{
  text-transform: var(--d-transform);
  font-size: 65%;
  opacity: 0.65;
}

/* Top Bar */
.nm-top-bar-left{ display: none !important; }

.nm-top-bar-right{
  justify-content: space-between !important;
  width: 100% !important;
}

  @media (max-width: 575px) {
	  ul.nm-top-bar-social {display: none;}
	  }

/* Brands */
ul.brands_index,
a.top, ul.dawwwg-core-brand-social li a .dawwwg-core-icon, ul.dawwwg-core-brand-social li a i{
  display: none !important;
}
.dawwwg-core-brand-desc-full p{
    max-width: 1080px;
    margin: 0 auto;
}

ul.dawwwg-core-brand-social li {display: inline-block; padding:0.5rem;}

  @media (max-width: 991px) {
	  .dawwwg-core-brand-desc-full,
ul.dawwwg-core-brand-social {display: none;}
	  }
/* Product Catalogue */
div#nm-shop-taxonomy-header:not(.has-image){ display: none !important; }
.woocommerce-loop-product__title{ padding-right: 0 !important; }

/* Single Product: hide blocks you marked as unwanted */
.nm-single-product-top,
p.stock,
.woocommerce-variation-availability,
.ppcp-messages,
.ppc-button-wrapper,
span.dawwwg-preorder-note, 
.nm-row:has(div ul.tabs.wc-tabs),
ul.tabs.wc-tabs,
div#nm-product-meta{
  display: none !important;
}

a.nm-infload-to-top,
.woocommerce-tabs.wc-tabs-wrapper,
section#nm-related{
  border: 0;
}

.dawwwg-core-single-under-atc {margin-top: 1rem;}

iframe {width:100%;}

/* Cart & Checkout */
div#radio-control-wc-payment-method-options-ppcp-gateway__content, .nm-order-track-top{
  display: none !important;
}

/* ==========================================================
   Responsive Typography System
   ========================================================== */

/* Base text group (mobile smaller; desktop max ~18px) */
.add_to_cart_inline .add_to_cart_button,
.add_to_cart_inline .amount,
.nm-product-category-text > a,
.nm-testimonial-description,
.nm-feature h3,
.nm_btn,
.vc_toggle_content,
.nm-message-box,
.wpb_text_column,
#nm-wishlist-table ul li.title .woocommerce-loop-product__title,
.nm-order-track-top p,
.customer_details h3,
.woocommerce-order-details .order_details tbody,
.woocommerce-MyAccount-content .shop_table tr th,
.woocommerce-MyAccount-navigation ul li a,
.nm-MyAccount-user-info .nm-username,
.nm-MyAccount-dashboard,
.nm-myaccount-lost-reset-password h2,
.nm-login-form-divider span,
.woocommerce-thankyou-order-details li strong,
.woocommerce-order-received h3,
#order_review .shop_table tbody .product-name,
.woocommerce-checkout .nm-coupon-popup-wrap .nm-shop-notice,
.nm-checkout-login-coupon .nm-shop-notice,
.shop_table.cart .nm-product-quantity-pricing .product-subtotal,
.shop_table.cart .product-quantity,
.shop_attributes tr th,
.shop_attributes tr td,
#tab-description,
.woocommerce-tabs .tabs li a,
.woocommerce-product-details__short-description,
.woocommerce-product-details__short-description p,
.nm-shop-no-products h3,
.nm-infload-controls a,
#nm-shop-browse-wrap .term-description,
.list_nosep .nm-shop-categories .nm-shop-sub-categories li a,
.nm-shop-taxonomy-text .term-description,
.nm-shop-loop-details h3,
.woocommerce-loop-category__title,
div.wpcf7-response-output,
.wpcf7 .wpcf7-form-control,
.widget_search button,
.widget_product_search #searchsubmit,
#wp-calendar caption,
.widget .nm-widget-title,
.comment-form p label,
.no-comments,
.commentlist .pingback p,
.commentlist .trackback p,
.commentlist .comment .comment-text .description,
.nm-search-results .nm-post-content,
.post-password-form > p:first-child,
.nm-post-pagination a .long-title,
.nm-blog-list .nm-post-content,
.nm-blog-grid .nm-post-content,
.nm-blog-classic .nm-post-content,
.nm-blog-pagination a,
.nm-blog-categories-list.columns li a,
.page-numbers li a,
.page-numbers li span,
#nm-widget-panel .total,
#nm-widget-panel .nm-cart-panel-item-price .amount,
#nm-widget-panel .quantity .qty,
#nm-widget-panel .nm-cart-panel-quantity-pricing > span.quantity,
#nm-widget-panel .product-quantity,
.nm-cart-panel-product-title,
#nm-widget-panel .product_list_widget .empty,
#nm-cart-panel-loader h5,
.nm-widget-panel-header,
.nm-banner-link,
p,
.nm-menu li a,
a.nm-shop-loop-title-link.woocommerce-LoopProduct-link{
  font-size: clamp(10px, 3.4vw, 18px) !important;
}

/* Headings / titles group */
h1,
h2,
.product .summary .product_title,
.upsells h2,
.related h2{
  font-size: clamp(18px, 6.5vw, 40px) !important;
}

/* Slider heading larger on desktop */
.nm-banner-title, div#nm-shop-taxonomy-header.has-image h1{
  font-size: clamp(23.4px, 8.45vw, 52px) !important;
}

/* Mobile menu links: match slider heading sizing */
.mobile-menu-layout-side #nm-mobile-menu .menu a{
  font-size: clamp(18px, 6.5vw, 56px) !important;
}

/* Micro text group */
span.dawwwg-core-preorder-label,
.nm-footer-bar-text, .nm-label-itsnew, .onsale,
.dawwwg-core-single-under-atc, div#cookie-consent-popup p{
  font-size: clamp(8px, 1.8vw, 12px) !important;
}

.dawwwg-core-single-under-atc a{font-weight: var(--d-weight-strong);}

span.dawwwg-core-preorder-label, .dawwwg-core-single-under-atc, span.price{
  opacity: 0.65;
}

/*Brand*/
.dawwwg-core-brand-social {justify-content: center;}
ul.dawwwg-core-brand-social li a {color: #ffffff; text-transform: uppercase;}

/* Social icons (i.nm-font): new 21px group */
#nm-top-bar i.nm-font{
  font-size: clamp(11.7px, 3.97vw, 21px) !important;
}

/* 15% smaller than the base text group for this specific UI set */
.button,
input[type="submit"],
div#nm-top-bar .nm-menu li a,
.nm-shop-loop-actions > a,
.nm-banner-link,
ul.dawwwg-core-brand-social li a, .dawwwg-core-brand-desc-full p{
  font-size: clamp(8.5px, 2.89vw, 15.3px) !important;
}

/* Brands wrapper borders */
.nm-brands-wrapper:first-of-type{ border-top: 0 !important; }
.nm-brands-wrapper:last-child{ border-bottom: 0 !important; }

/* Product cards equal height */
.nm-shop-loop-details {
    flex-direction: column;
    display: flex;
    justify-content: space-between;
    flex-grow: 1;
}

/* 404 page */
.nm-page-not-found-products {
    background-color: #ffffff;
}
.nm-page-not-found p {
    max-width: 100% !important;
}

/* Cookies message */
div#cookie-consent-popup{
    background-color: #e4be35;
	color: #222222;
	box-shadow: none;
}

div#cookie-consent-popup p{text-transform: uppercase; line-height:1.7;}
/* DAWWWG Core - Savoy overwrite layer (v2.0.4) */
/* Bandcamp icon for nm_get_social_profiles(): <i class="nm-font nm-font-bandcamp"></i> */
.nm-font-bandcamp {
  position: relative;
  display: inline-block;
  width: 1em;
  height: 1em;
}

.nm-font-bandcamp:before{
  content:"";
  position:absolute;
  inset:0;
  background:currentColor;

  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M0 18.75l7.437-13.5H24l-7.438 13.5H0z'/%3E%3C/svg%3E") center/contain no-repeat;
          mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M0 18.75l7.437-13.5H24l-7.438 13.5H0z'/%3E%3C/svg%3E") center/contain no-repeat;
}


/* Brand taxonomy extras */
.dawwwg-core-core-brand-extra {
  margin-top: 14px;
}

.dawwwg-core-core-brand-desc-full {
  margin: 10px 0 0;
}

.dawwwg-core-core-brand-social {
  list-style: none;
  margin: 12px 0 0;
  padding: 0;
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
}

.dawwwg-core-core-brand-social a {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.dawwwg-core-core-icon {
  position: relative;
  display: inline-block;
  width: 1em;
  height: 1em;
  background: currentColor;
}

.dawwwg-core-core-icon-apple-music {
  -webkit-mask: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M16.5 1c-1.1 0-2.3.7-3 1.6-.6.8-1.1 2-1 3.2 1.2.1 2.4-.6 3.1-1.5.7-.9 1.1-2.1.9-3.3zM12 5.1C9.6 5.1 7.7 6.9 7.7 9.2v9.5c0 2.1 1.7 3.8 3.8 3.8s3.8-1.7 3.8-3.8V9.2c0-2.3-1.8-4.1-4.1-4.1zm0 2c1.2 0 2.1.9 2.1 2.1v9.5c0 1-.8 1.8-1.8 1.8s-1.8-.8-1.8-1.8V9.2c0-1.2.9-2.1 2.1-2.1z"/></svg>') center / contain no-repeat;
          mask: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M16.5 1c-1.1 0-2.3.7-3 1.6-.6.8-1.1 2-1 3.2 1.2.1 2.4-.6 3.1-1.5.7-.9 1.1-2.1.9-3.3zM12 5.1C9.6 5.1 7.7 6.9 7.7 9.2v9.5c0 2.1 1.7 3.8 3.8 3.8s3.8-1.7 3.8-3.8V9.2c0-2.3-1.8-4.1-4.1-4.1zm0 2c1.2 0 2.1.9 2.1 2.1v9.5c0 1-.8 1.8-1.8 1.8s-1.8-.8-1.8-1.8V9.2c0-1.2.9-2.1 2.1-2.1z"/></svg>') center / contain no-repeat;
}

.dawwwg-core-core-icon-bandcamp {
  -webkit-mask: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M2 6.5A2.5 2.5 0 0 1 4.5 4h17A2.5 2.5 0 0 1 24 6.5v11A2.5 2.5 0 0 1 21.5 20h-17A2.5 2.5 0 0 1 2 17.5v-11zm6.42 11.2 5.38-11.4h-3.2L5.2 17.7h3.22z"/></svg>') center / contain no-repeat;
          mask: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M2 6.5A2.5 2.5 0 0 1 4.5 4h17A2.5 2.5 0 0 1 24 6.5v11A2.5 2.5 0 0 1 21.5 20h-17A2.5 2.5 0 0 1 2 17.5v-11zm6.42 11.2 5.38-11.4h-3.2L5.2 17.7h3.22z"/></svg>') center / contain no-repeat;
}

/* Sort dropdown */
.dawwwg-core-core-sort-wrap {
  margin-top: 14px;
}

.dawwwg-core-core-sort-wrap select {
  max-width: 220px;
}

/* Brand groups */
.dawwwg-core-core-brand-group {
  margin: 26px 0 0;
}

.dawwwg-core-core-brand-group:first-of-type {
  margin-top: 0;
}

.dawwwg-core-core-brand-group > h2 {
  margin: 0 0 12px;
}


/* Catalog: remove sorting UI */
.woocommerce-ordering,
.nm-shop-catalog-ordering,
.woocommerce-result-count {
  display: none !important;
}


/* DAWWWG Core: Brand archive grouped headings */
.dawwwg-core-brand-group-heading{
    margin: 26px 0 14px;
    font-size: 18px;
    line-height: 1.2;
    letter-spacing: 0.02em;
}

/* Default Page */
.page-id-20678 .nm-page-default,
.page-id-20632 .nm-page-default,
.page-id-3 .nm-page-default {
    max-width: 1080px !important;
  padding-top: 4vh !important;
  padding-bottom: 2.5vh !important;
}

/* Credits */
.nm-footer-bar-copyright-text strong span {
    letter-spacing: -0.125rem;
}

/* Single Product */
.woocommerce-product-gallery__image {
    pointer-events: none;
}

/* Sort Bar */
.sortbar{text-align: right;
  margin-bottom: 1rem;
  line-height:1;
  opacity:.9;
}
.sortbar .sortlink{ text-decoration:none; }
.sortbar .sortlink.is-active{ font-weight:600; }
.sortbar .sortsep{ margin:0 8px; opacity:.5; }

.tax-product_brand .sortbar {display: none;}

/* ==========================================================
   Global type scale (Chrome 90% feel)
   ========================================================== */
:root{
  --d-type-scale: 0.9; /* 10% smaller */
}

/* If anything uses rem/em, scale that too */
html{
  font-size: calc(var(--d-font-size) * var(--d-type-scale));
}

/* Scale your clamp-based typography groups */
.add_to_cart_inline .add_to_cart_button,
.add_to_cart_inline .amount,
.nm-product-category-text > a,
.nm-testimonial-description,
.nm-feature h3,
.nm_btn,
.vc_toggle_content,
.nm-message-box,
.wpb_text_column,
#nm-wishlist-table ul li.title .woocommerce-loop-product__title,
.nm-order-track-top p,
.customer_details h3,
.woocommerce-order-details .order_details tbody,
.woocommerce-MyAccount-content .shop_table tr th,
.woocommerce-MyAccount-navigation ul li a,
.nm-MyAccount-user-info .nm-username,
.nm-MyAccount-dashboard,
.nm-myaccount-lost-reset-password h2,
.nm-login-form-divider span,
.woocommerce-thankyou-order-details li strong,
.woocommerce-order-received h3,
#order_review .shop_table tbody .product-name,
.woocommerce-checkout .nm-coupon-popup-wrap .nm-shop-notice,
.nm-checkout-login-coupon .nm-shop-notice,
.shop_table.cart .nm-product-quantity-pricing .product-subtotal,
.shop_table.cart .product-quantity,
.shop_attributes tr th,
.shop_attributes tr td,
#tab-description,
.woocommerce-tabs .tabs li a,
.woocommerce-product-details__short-description,
.woocommerce-product-details__short-description p,
.nm-shop-no-products h3,
.nm-infload-controls a,
#nm-shop-browse-wrap .term-description,
.list_nosep .nm-shop-categories .nm-shop-sub-categories li a,
.nm-shop-taxonomy-text .term-description,
.nm-shop-loop-details h3,
.woocommerce-loop-category__title,
div.wpcf7-response-output,
.wpcf7 .wpcf7-form-control,
.widget_search button,
.widget_product_search #searchsubmit,
#wp-calendar caption,
.widget .nm-widget-title,
.comment-form p label,
.no-comments,
.commentlist .pingback p,
.commentlist .trackback p,
.commentlist .comment .comment-text .description,
.nm-search-results .nm-post-content,
.post-password-form > p:first-child,
.nm-post-pagination a .long-title,
.nm-blog-list .nm-post-content,
.nm-blog-grid .nm-post-content,
.nm-blog-classic .nm-post-content,
.nm-blog-pagination a,
.nm-blog-categories-list.columns li a,
.page-numbers li a,
.page-numbers li span,
#nm-widget-panel .total,
#nm-widget-panel .nm-cart-panel-item-price .amount,
#nm-widget-panel .quantity .qty,
#nm-widget-panel .nm-cart-panel-quantity-pricing > span.quantity,
#nm-widget-panel .product-quantity,
.nm-cart-panel-product-title,
#nm-widget-panel .product_list_widget .empty,
#nm-cart-panel-loader h5,
.nm-widget-panel-header,
.nm-banner-link,
p,
.nm-menu li a,
a.nm-shop-loop-title-link.woocommerce-LoopProduct-link{
  font-size: calc(clamp(10px, 3.4vw, 18px) * var(--d-type-scale)) !important;
}

h1,
h2,
.product .summary .product_title,
.upsells h2,
.related h2{
  font-size: calc(clamp(18px, 6.5vw, 40px) * var(--d-type-scale)) !important;
}

.nm-banner-title,
div#nm-shop-taxonomy-header.has-image h1{
  font-size: calc(clamp(23.4px, 8.45vw, 52px) * var(--d-type-scale)) !important;
}

.mobile-menu-layout-side #nm-mobile-menu .menu a{
  font-size: calc(clamp(18px, 6.5vw, 56px) * var(--d-type-scale)) !important;
}

span.dawwwg-core-preorder-label,
.nm-footer-bar-text,
.nm-label-itsnew,
.onsale,
.dawwwg-core-single-under-atc,
div#cookie-consent-popup p{
  font-size: calc(clamp(8px, 1.8vw, 12px) * var(--d-type-scale)) !important;
}

#nm-top-bar i.nm-font{
  font-size: calc(clamp(11.7px, 3.97vw, 21px) * var(--d-type-scale)) !important;
}

.button,
input[type="submit"],
div#nm-top-bar .nm-menu li a,
.nm-shop-loop-actions > a,
.nm-banner-link,
ul.dawwwg-core-brand-social li a,
.dawwwg-core-brand-desc-full p{
  font-size: calc(clamp(8.5px, 2.89vw, 15.3px) * var(--d-type-scale)) !important;
}

/* Preorder notice */
.dawwwg-core-preorder-note {
    color: #d73840;
}