/**
 * TYPOGRAPHY-2 — Iodonna storefront type system.
 * DESIGN.md authority. One text family: Onest. No second display family.
 * Icon fonts (icomoon) are a separate technical system and are exempt.
 *
 * Delivery: self-hosted variable WOFF2, 4 unicode-range subsets, font-display: swap.
 * Weights used: 400 body / 500 UI+headings / 600 price+CTA / 700 only genuine emphasis.
 * No italics loaded (storefront does not require them).
 */

@font-face {
  font-family: "Onest";
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("../fonts/onest/onest-cyrillic-ext-wght.woff2") format("woff2");
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}

@font-face {
  font-family: "Onest";
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("../fonts/onest/onest-cyrillic-wght.woff2") format("woff2");
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

@font-face {
  font-family: "Onest";
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("../fonts/onest/onest-latin-ext-wght.woff2") format("woff2");
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
  font-family: "Onest";
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("../fonts/onest/onest-latin-wght.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

:root {
  --iod-font: "Onest", system-ui, -apple-system, "Segoe UI", sans-serif;
}

html {
  font-family: var(--iod-font);
}

html,
body {
  font-family: var(--iod-font);
}

body {
  font-weight: 400;
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

button,
input,
select,
textarea,
.button,
input[type="submit"],
input[type="button"] {
  font-family: inherit;
}

/* Beat legacy all.css / UA / plugin font stacks. Icon glyphs stay icomoon. */
body *:not([class^="icon-"]):not([class*=" icon-"]) {
  font-family: inherit !important;
}

body *:not([class^="icon-"]):not([class*=" icon-"])::before,
body *:not([class^="icon-"]):not([class*=" icon-"])::after {
  font-family: inherit !important;
}

[class^="icon-"],
[class*=" icon-"],
[class^="icon-"]::before,
[class*=" icon-"]::before,
[class^="icon-"]::after,
[class*=" icon-"]::after {
  font-family: icomoon !important;
}

/* ---- Roles (family is inherited; hierarchy is weight / tracking / case) ---- */

h1,
.page-title h1,
h1.category-h1,
.category-title.main-heading > div,
.iodonna-pdp__title h1,
.iodonna-new-arrivals__title,
.blog-post-view h1,
.postTitle h1,
.postTitle h2,
.aw-blog-post h1 {
  font-weight: 500;
  letter-spacing: -0.02em;
  text-transform: none;
  line-height: 1.25;
}

.page-title h1,
.blog-post-view h1,
.postTitle h1,
.postTitle h2 {
  text-transform: none !important;
  font-weight: 500 !important;
  letter-spacing: -0.02em !important;
}

h2,
h3 {
  font-weight: 500;
  letter-spacing: -0.01em;
}

.price,
.regular-price .price,
.special-price .price,
.iodonna-pdp__price .price,
.iodonna-new-arrivals .price {
  font-weight: 600;
  font-variant-numeric: tabular-nums;
  letter-spacing: -0.012em;
}

.old-price .price,
.old-price {
  font-weight: 400;
}

.button,
button.button,
.iodonna-pdp button,
.iodonna-pdp .button,
input.button {
  font-weight: 600;
}

label,
.iodonna-pdp__label {
  font-weight: 500;
}

.iod-mega,
.iod-mega a,
.iod-mega__trigger {
  font-weight: 400;
  letter-spacing: 0.01em;
  text-transform: none;
}

.product-name,
.product-name a,
.iodonna-new-arrivals__name {
  font-weight: 400;
}

@media (max-width: 767px) {
  input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):not([type="image"]):not([type="submit"]):not([type="button"]),
  select,
  textarea {
    font-size: 16px;
  }
}
