/* Iranyekan Font Definitions */
@font-face {
  font-family: "Iranyekan";
  src: url("../myfonts/iranyekan/woff/IRANYekanX-Regular.woff") format("woff");
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: "Iranyekan";
  src: url("../myfonts/iranyekan/woff/IRANYekanX-Bold.woff") format("woff");
  font-weight: bold;
  font-style: normal;
}

@font-face {
  font-family: "Iranyekan";
  src: url("../myfonts/iranyekan/woff/IRANYekanX-Light.woff") format("woff");
  font-weight: 300;
  font-style: normal;
}

@font-face {
  font-family: "Iranyekan";
  src: url("../myfonts/iranyekan/woff/IRANYekanX-Medium.woff") format("woff");
  font-weight: 500;
  font-style: normal;
}

/* Dastnevis (IranSansDN) Font Definitions */
@font-face {
  font-family: "Dastnevis";
  src: url("../myfonts/dastnevis/fonts/woff/iransansdn.woff") format("woff");
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: "Dastnevis";
  src: url("../myfonts/dastnevis/fonts/woff/iransansdnbold.woff") format("woff");
  font-weight: bold;
  font-style: normal;
}

@font-face {
  font-family: "Dastnevis";
  src: url("../myfonts/dastnevis/fonts/woff/iransansdnlight.woff")
    format("woff");
  font-weight: 300;
  font-style: normal;
}

/* Apply Iranyekan to Headings and Titles */
h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
.page-title,
.block-title,
.title,
.product-title,
.product-title a,
.modal-title,
.card-title,
.page-title span{
  font-family: "Iranyekan", sans-serif !important;
}

/* Apply Dastnevis to Body and General Text */
body,
p,
span,
div,
a,
li,
input,
textarea,
select,
button,
.btn {
  font-family: "Iranyekan", sans-serif;
}
p, p span{
  font-family: "Iranyekan", sans-serif!important;
}

/* Apply Iranyekan with Farsi Numerals to Prices */
.product-price,
.price,
.current-price,
.regular-price,
.product-price-and-shipping,
.cart-summary-line .value {
  font-family: "Iranyekan", sans-serif !important;
  -moz-font-feature-settings: "ss02";
  -webkit-font-feature-settings: "ss02";
  font-feature-settings: "ss02";
}

/* Out-of-stock attribute indicators */
.product-variants .attribute-not-in-stock .color,
.product-variants .attribute-not-in-stock .color.texture {
  position: relative;
}
.product-variants .attribute-not-in-stock .color::before,
.product-variants .attribute-not-in-stock .color::after,
.product-variants .attribute-not-in-stock .color.texture::before,
.product-variants .attribute-not-in-stock .color.texture::after {
  content: '';
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  height: 2px;
  background: rgba(220, 50, 50, 0.85);
  transform-origin: center;
  pointer-events: none;
  z-index: 1;
}
.product-variants .attribute-not-in-stock .color::before,
.product-variants .attribute-not-in-stock .color.texture::before {
  transform: translateY(-50%) rotate(45deg);
}
.product-variants .attribute-not-in-stock .color::after,
.product-variants .attribute-not-in-stock .color.texture::after {
  transform: translateY(-50%) rotate(-45deg);
}
.product-variants .attribute-not-in-stock .radio-label {
  color: #ff4c4c;
  position: relative;
}
.product-variants .attribute-not-in-stock .radio-label::after {
  content: '';
  position: absolute;
  top: 50%;
  left: 10%;
  width: 80%;
  height: 1px;
  background: #ff4c4c;
  transform: translateY(-50%);
  pointer-events: none;
}
.product-miniature-default .variant-links .attribute-not-in-stock.color {
  position: relative;
  opacity: 0.5;
}
.product-miniature-default .variant-links .attribute-not-in-stock.color::before,
.product-miniature-default .variant-links .attribute-not-in-stock.color::after {
  content: '';
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  height: 1px;
  background: rgba(220, 50, 50, 0.85);
  transform-origin: center;
  pointer-events: none;
  z-index: 1;
}
.product-miniature-default .variant-links .attribute-not-in-stock.color::before {
  transform: translateY(-50%) rotate(45deg);
}
.product-miniature-default .variant-links .attribute-not-in-stock.color::after {
  transform: translateY(-50%) rotate(-45deg);
}