/* custom-style.css: custom widget styles (monochrome mode) */
/* GLOBAL SHARED STYLES START */
/* Sections mapped to PHP widgets in custom-widgets:
   - aside-category.php
   - category-grid.php
   - login.php, registeration.php
   - product-grid.php, product-card.php
   - favorites.php, action-icons.php
   - profile.php
   - cart-toast.php
   - custom-cart.php
   - header.php
   - burger-category-drawer.php
   - footer.php
   - redirections.php (no dedicated block, uses shared styles)
 */
@font-face {
  font-family: "Bitum";
  src: url("/wp-content/uploads/2026/04/Bitum-Light.ttf") format("truetype");
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Bitum";
  src: url("/wp-content/uploads/2026/04/Bitum-LightItalic.ttf")
    format("truetype");
  font-weight: 300;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: "Bitum";
  src: url("/wp-content/uploads/2026/04/Bitum.ttf") format("truetype");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Bitum";
  src: url("/wp-content/uploads/2026/04/Bitum-Italic.ttf") format("truetype");
  font-weight: 400;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: "Bitum";
  src: url("/wp-content/uploads/2026/04/Bitum-Bold.ttf") format("truetype");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Bitum";
  src: url("/wp-content/uploads/2026/04/Bitum-BoldItalic.ttf")
    format("truetype");
  font-weight: 700;
  font-style: italic;
  font-display: swap;
}

/* Global Tokens: Typography + Monochrome Colors */
:root {
  --wt-font: "Bitum", "Roboto", sans-serif;
  --wt-header-h: 84px;
  --wt-container-desktop: 1440px;
  --wt-container-full: 100%;
  --wt-page-padding-desktop: 30px;
  --wt-page-padding-full: 40px;
  --wt-page-padding: var(--wt-page-padding-desktop);
  --wt-container-width: min(
    var(--wt-container-desktop),
    calc(100vw - (var(--wt-page-padding) * 2))
  );
  --wt-black: #000;
  --wt-white: #fff;
  --wt-black-rgb: 0, 0, 0;
  --wt-white-rgb: 255, 255, 255;
  /* Reserved palette variables (not used in styles yet) */
  --wt-palette-warm-gray: #c8c4bb; /* RGB 200 196 187 */
  --wt-palette-off-white: #f4f6f1; /* RGB 244 246 241 */
  --wt-palette-dark: #2d2a2d; /* RGB 45 42 45 */
  --wt-palette-olive: #73775e; /* RGB 115 119 94 */
  --wt-palette-gray: #959d9f; /* RGB 149 157 159 */
  --wt-palette-blue-light: #b0c9cd; /* RGB 176 201 205 */
  --wt-palette-blue: #638090; /* RGB 99 128 144 */
  --wt-palette-teal: #395360; /* RGB 57 83 96 */
  --wt-palette-olive-dark: #42443a; /* RGB 66 68 58 */
  --wt-color-text: var(--wt-palette-dark);
  --wt-color-accent: #bb858c;
  --wt-color-accent-alt: #c58f99;
  --wt-bg-base: #f5f5f2;
  --wt-color-surface: var(--wt-white);
  --wt-color-surface-muted: #f1f1f1;
  --wt-color-muted-strong: #a6a6a6;
  --wt-color-divider: #8e8c8d;
  --wt-color-danger: #ac112b;
  --wt-color-accent-soft-18: rgba(187, 133, 140, 0.18);
  --wt-color-accent-soft-20: rgba(187, 133, 140, 0.2);
  --wt-color-accent-soft-35: rgba(187, 133, 140, 0.35);
  --wt-color-accent-soft-45: rgba(187, 133, 140, 0.45);
  --wt-color-accent-soft-50: rgba(187, 133, 140, 0.5);
  --wt-color-accent-soft-80: rgba(187, 133, 140, 0.8);
  --wt-color-text-06: rgba(45, 42, 45, 0.06);
  --wt-color-text-08: rgba(45, 42, 45, 0.08);
  --wt-color-text-16: rgba(45, 42, 45, 0.16);
  --wt-color-text-18: rgba(45, 42, 45, 0.18);
  --wt-color-text-24: rgba(45, 42, 45, 0.24);
  --wt-color-text-34: rgba(45, 42, 45, 0.34);
  --wt-color-text-50: rgba(45, 42, 45, 0.5);
  --wt-color-text-58: rgba(45, 42, 45, 0.58);
  --wt-color-text-72: rgba(45, 42, 45, 0.72);
  --wt-color-text-78: rgba(45, 42, 45, 0.78);
  --wt-text: var(--wt-black);
  --wt-border: var(--wt-black);
  --wt-shadow-soft: 0 10px 30px rgba(var(--wt-black-rgb), 0.18);
  --wt-shadow-strong: 0 10px 30px rgba(var(--wt-black-rgb), 1);
  --wt-shadow-subtle: 0 1px 4px rgba(var(--wt-black-rgb), 1);
  --wt-shadow-xl: 0 20px 60px rgba(var(--wt-black-rgb), 1);
  --wt-focus-light: rgba(var(--wt-white-rgb), 0.35);
  --wt-radius-pill: 999px;
  --wt-radius-round: 50%;
  --wt-transition-ui: all ease 0.3s;
  --wt-transition-border: all ease 0.3s;
}
body {
  background: var(--wt-bg-base);
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  overflow-x: hidden;
}
body > :is(main, #content, .site-main, .elementor, [data-elementor-type]) {
  flex: 1 0 auto;
}
body > :is(footer, #site-footer, .site-footer, .elementor-location-footer) {
  margin-top: auto;
  flex-shrink: 0;
}
body > :is(section, main, header, footer, div) {
  padding: 0 30px;
}

.page-header {
  display: none !important;
}

/* Typography Utility Classes */
.wt-h1 {
  font-family: var(--wt-font);
  font-weight: 400;
  font-size: 48px;
  line-height: 100%;
  letter-spacing: 0;
}

.wt-h2 {
  font-family: var(--wt-font);
  font-weight: 400;
  font-size: 32px;
  line-height: 100%;
  letter-spacing: 0;
}

.wt-h3 {
  font-family: var(--wt-font);
  font-weight: 300;
  font-size: 20px;
  line-height: 100%;
  letter-spacing: 0;
}

.wt-body {
  font-family: var(--wt-font);
  font-weight: 300;
  font-size: 16px;
  line-height: 100%;
  letter-spacing: 0;
}

.wt-s {
  font-family: var(--wt-font);
  font-weight: 300;
  font-size: 14px;
  line-height: 100%;
  letter-spacing: 0;
}

.wt-btn-text {
  font-family: var(--wt-font);
  font-weight: 300;
  font-size: 16px;
  line-height: 100%;
  letter-spacing: 0.05em;
  width: 49%;
}

.wt-price-display {
  position: relative;
  display: inline-flex;
  align-items: center;
  flex-wrap: wrap;
  column-gap: 12px;
  row-gap: 6px;
  line-height: 1;
}

.wt-price-display__current {
  font-size: inherit;
  font-weight: 400;
  line-height: 0.94;
  color: var(--wt-color-text);
  white-space: nowrap;
}

.wt-price-display__info {
  width: 22px;
  height: 22px;
  min-width: 22px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 !important;
  border: 1px solid #b65d68 !important;
  border-radius: 50% !important;
  background: transparent !important;
  color: #b65d68 !important;
  font-size: 14px;
  font-weight: 700;
  line-height: 1;
  box-shadow: none !important;
}

.wt-price-display__info:hover,
.wt-price-display__info:focus,
.wt-price-display__info:active {
  background: transparent !important;
  color: #b65d68 !important;
  border-color: #b65d68 !important;
}

.wt-price-display__meta {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
}

.wt-price-display__tooltip {
  position: absolute;
  left: 50%;
  top: calc(100% * -1 - 14px);
  transform: translateX(-50%);
  z-index: 12;
  display: inline-flex;
  align-items: center;
  min-height: 32px;
  padding: 6px 10px;
  background: rgba(122, 128, 133, 0.92);
  color: var(--wt-white);
  white-space: nowrap;
  line-height: 1.2;
}

.wt-price-display__tooltip[hidden] {
  display: none !important;
}

.wt-price-display__info:hover + .wt-price-display__tooltip[hidden],
.wt-price-display__info:focus + .wt-price-display__tooltip[hidden] {
  display: inline-flex !important;
}

.wt-price-display__tooltip::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -6px;
  width: 12px;
  height: 12px;
  background: rgba(122, 128, 133, 0.92);
  transform: translateX(-50%) rotate(45deg);
}

.wt-price-display__base {
  position: relative;
  display: inline-block;
  color: rgba(45, 42, 45, 0.48);
  font-size: 0.72em;
  font-weight: 300;
  line-height: 1;
  white-space: nowrap;
}

.wt-price-display__base::after {
  content: "";
  position: absolute;
  top: 50%;
  left: -4%;
  width: 108%;
  height: 2px;
  background: currentColor;
  transform: rotate(-12deg);
  transform-origin: center;
  pointer-events: none;
}
.woocommerce div.product div.images img {
  aspect-ratio: 1;
}

/* Global style normalization requested by project */
*,
*::before,
*::after {
  border-radius: 0 !important;
  transition: all ease 0.3s !important;
}

body .site-main {
  max-width: var(--wt-container-desktop) !important;
  width: 100%;
  margin-inline: auto;
}
body .site-main {
  padding-inline-end: 0 !important;
  padding-inline-start: 0 !important;
}
body > .site-main {
  padding: 0 var(--wt-page-padding);
}
body main#content.site-main {
  max-width: 1500px !important;
}
button,
input[type="button"],
input[type="submit"],
input[type="reset"],
.button,
.btn,
.elementor-button,
a.button {
  background: var(--wt-color-accent) !important;
  color: var(--wt-white) !important;
  border: 1px solid var(--wt-color-accent) !important;
  transition: all ease 0.3s !important;
  border-radius: 100px !important;
}

button:hover,
input[type="button"]:hover,
input[type="submit"]:hover,
input[type="reset"]:hover,
.button:hover,
.btn:hover,
.elementor-button:hover,
a.button:hover {
  background: transparent !important;
  color: var(--wt-color-accent) !important;
  border-color: var(--wt-color-accent) !important;
}

a {
  transition: all ease 0.3s;
}

footer a {
  border: none;
  border-left: solid 3px transparent;
  transition: all ease 0.3s;
}

footer a:hover {
  border-left: solid 3px var(--wt-black);
  padding-left: 5px;
  color: inherit !important;
}

.wt-fav-heart,
.wt-fav-heart--img,
button.wt-fav-heart,
button.wt-fav-heart--img,
.wt-fav-heart.wt-fav-heart--img {
  border-radius: 0 !important;
  overflow: visible !important;
}

.wt-fav-heart:hover,
.wt-fav-heart--img:hover,
button.wt-fav-heart:hover,
button.wt-fav-heart--img:hover,
.wt-fav-heart.wt-fav-heart--img:hover {
  top: -1px;
}

.wt-cartAction {
  display: flex;
  width: 50%;
}

.wt-cartAction [data-wt-cart-add] {
  gap: 16px;
}

.wt-cartAction__icon {
  width: 28px;
  height: 28px;
  flex: 0 0 28px;
  display: inline-block;
  background: url("/wp-content/uploads/2026/04/Cart.svg") center/contain
    no-repeat;
}

.wt-cartAction [data-wt-cart-add]:hover .wt-cartAction__icon,
.wt-cartAction [data-wt-cart-add]:focus .wt-cartAction__icon,
.wt-cartAction [data-wt-cart-add]:focus-visible .wt-cartAction__icon,
.wt-cartAction [data-wt-cart-add]:active .wt-cartAction__icon {
  filter: brightness(0) invert(1);
}

.wt-cartAction > [data-wt-cart-add] {
  width: 100%;
}
.wt-cartAction > .wt-cartQty {
  width: 50%;
}

.wt-cartAction > [hidden] {
  display: none !important;
}

.wt-cartAction.is-empty .wt-cartQty {
  display: none !important;
}

.wt-cartAction.is-empty > [data-wt-cart-add] {
  display: inline-flex !important;
}

.wt-cartAction.has-items > [data-wt-cart-add] {
  display: none !important;
}

.wt-cartAction.has-items .wt-cartQty {
  display: inline-flex !important;
}

.wt-cartQty {
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  width: 50%;
  min-height: 56px;
  border: 1px solid var(--wt-color-accent-soft-80);
  border-radius: var(--wt-radius-pill) !important;
  overflow: hidden;
  background: transparent;
}

.wt-cartQty__btn {
  width: 56px;
  min-height: 56px;
  border: 1px solid var(--wt-color-accent) !important;
  background: var(--wt-color-accent) !important;
  color: var(--wt-white) !important;
  font-size: 28px;
  line-height: 1;
  cursor: pointer;
  transition: none;
}

.wt-cartQty__btn:hover,
.wt-cartQty__btn:focus,
.wt-cartQty__btn:focus-visible,
.wt-cartQty__btn:active,
.wt-cartQty__btn:visited {
  background: var(--wt-color-accent) !important;
  color: var(--wt-white) !important;
  border: 1px solid var(--wt-color-accent) !important;
  box-shadow: none !important;
  outline: none;
}

.wt-cartQty__value {
  flex: 1 1 auto;
  text-align: center;
  padding: 0 12px;
  font-size: 18px;
}

.wt-cartAction.is-loading {
  opacity: 0.65;
  pointer-events: none;
}

@media (max-width: 1024px) {
  body > :is(section, main, header, footer, div) {
    padding: 0 20px;
  }
}
@media (max-width: 767px) {
  body > :is(section, main, header, footer, div) {
    padding: 0 15px;
  }
  .wt-cartAction > .wt-cartQty {
    width: 100%;
  }
  .wt-cartAction {
    width: 100%;
  }
}
/* GLOBAL SHARED STYLES END */
