/* Tarozi project layer: UniShop2 1.7.3.1. Keep vendor files intact. */
html { font-size: 100%; scroll-padding-top: 1.5rem; }
:root { --tarozi-accent: #007c93; --tarozi-accent-hover: #006477; --tarozi-text: #333; --tarozi-muted: #5b6570; --tarozi-focus: #125b83; --tarozi-border: #b7c4ca; --tarozi-surface: #fff; --tarozi-motion: cubic-bezier(.22,1,.36,1); }
body { font-size: .875rem; line-height: 1.5; }
html body :is(a,button,input,textarea,select,[tabindex]):focus-visible { outline: 3px solid var(--tarozi-focus) !important; outline-offset: 3px !important; }
.tarozi-sr-only { position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important; margin: -1px !important; overflow: hidden !important; clip: rect(0,0,0,0) !important; clip-path: inset(50%) !important; white-space: nowrap !important; border: 0 !important; }
.tarozi-skip-link { position: fixed; inset-inline-start: 1rem; top: .5rem; z-index: 12000; padding: .75rem 1rem; background: var(--tarozi-surface); color: var(--tarozi-focus); font-weight: 500; transform: translateY(-180%); }
.tarozi-skip-link:focus { transform: none; }
label.input, label.option__item { position: relative; }
label.input > input, input.tarozi-native-option { display: block !important; position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important; margin: -1px !important; overflow: hidden !important; clip: rect(0,0,0,0) !important; clip-path: inset(50%) !important; border: 0 !important; }
label.input > input:focus-visible ~ span, input.tarozi-native-option:focus-visible ~ :is(span,img) { outline: 3px solid var(--tarozi-focus) !important; outline-offset: 3px; }
button, input, select, textarea { font-family: inherit; }
.menu, .menu2, .btn-primary, .uni-banner__title.btn-primary { background-color: var(--tarozi-accent); color: #fff; }
.btn-primary:focus { background-color: var(--tarozi-accent-hover); color: #fff; }
.menu__level-1-a { font-size: .875rem; line-height: 1.5; }
button.menu__header { width: 100%; border: 0; text-align: start; font: inherit; font-weight: 500; background: transparent; color: inherit; }
button.menu__pm { border: 0; padding: 0; background: transparent; color: inherit; min-width: 44px; min-height: 44px; }
button.qty-switch__btn { border: 0; background: transparent; color: inherit; }
button.header-phones__show-phone { border: 0; padding: 0; background: transparent; color: inherit; min-width: 24px; min-height: 24px; }
.tarozi-link-button, .tarozi-search-category { border: 0; background: transparent; color: inherit; font: inherit; text-align: start; cursor: pointer; }
.dropdown-menu > li > .tarozi-link-button, .header-search__category-li > .tarozi-search-category { display: block; width: 100%; padding: .5rem 1rem; color: var(--tarozi-text); }
.header-phones__main { color: inherit; text-decoration-thickness: from-font; text-underline-offset: .15em; }
.header-search__input, .form-control { color: var(--tarozi-text); }
.form-control, .header-search { border-color: #7a858a; }
.header-search__input::placeholder, .form-control::placeholder { color: var(--tarozi-muted); opacity: 1; }
.header-search__btn { min-width: 44px; min-height: 44px; }
.product-thumb__name, .product-thumb .caption > a { overflow-wrap: anywhere; line-height: 1.4; }
.product-thumb__name { color: var(--tarozi-accent); }
.nav-tabs > li > a, .nav-tabs > li.active > a { color: var(--tarozi-accent-hover); }
.nav-tabs > li.active > a { font-weight: 500; border-bottom-color: var(--tarozi-accent); }
.uni-slideshow__title { color: var(--tarozi-focus); text-shadow: none; }
.uni-slideshow__btn { background-color: var(--tarozi-accent); color: #fff; }
.footer { background-color: var(--tarozi-accent); color: #fff; }
.footer a, .footer p, .footer li, .footer h5, .footer__powered { color: #fff; }
.product-description, #tab-description, .information-information #content { font-size: 1rem; line-height: 1.5; }
.product-description p, #tab-description p, .information-information #content > p { max-width: 75ch; text-wrap: pretty; }
.heading-h1, .heading-h2 { line-height: 1.25; text-wrap: balance; overflow-wrap: break-word; }
.price, .product-price, [class*="price"], .qty-switch__input { font-variant-numeric: tabular-nums; }
.tarozi-quote-price { font-size: 1.5rem; line-height: 1.3; overflow-wrap: anywhere; }
.tarozi-quote-panel { margin-block: 1rem; max-width: 100%; }
.tarozi-quote-panel label { display: block; margin-block: .75rem .5rem; }
.tarozi-quote-panel textarea { height: auto; min-height: 6rem; }
.tarozi-quote-panel .btn { white-space: normal; max-width: 100%; overflow-wrap: anywhere; margin-block: .5rem; }
.product-thumb .product-thumb__cart .product-thumb__quote { display: inline-block; white-space: normal; max-width: 100%; height: auto; min-height: 44px; padding: .5rem; line-height: 1.35; }
.uni-banner__title { max-width: 100%; font-size: .875rem; line-height: 1.4; white-space: normal; background-color: var(--tarozi-accent); color: #fff; opacity: 1; }
.uni-banner__item { position: relative; }
.tarozi-platform-trigger { position: absolute; inset-inline-end: .5rem; top: .5rem; z-index: 2; min-width: 44px; min-height: 44px; padding: .5rem .75rem; border: 1px solid var(--tarozi-accent); border-radius: 4px; background: var(--tarozi-surface); color: var(--tarozi-accent); font: inherit; font-weight: 500; }
.tarozi-banner-controls { display: flex; justify-content: flex-end; padding: .25rem 0 .5rem; }
.tarozi-banner-pause { min-height: 36px; border: 1px solid var(--tarozi-border); border-radius: 4px; padding: .25rem .75rem; background: var(--tarozi-surface); color: var(--tarozi-text); font: inherit; }
.tarozi-banner-pause:disabled { opacity: 1; color: var(--tarozi-muted); cursor: default; }
.tarozi-viewer-dialog { width: min(52rem,calc(100vw - 2rem)); max-height: calc(100dvh - 2rem); overflow-y: auto; overscroll-behavior: contain; padding: 1.5rem; border: 1px solid var(--tarozi-border); border-radius: 8px; background: var(--tarozi-surface); color: var(--tarozi-text); box-sizing: border-box; }
.tarozi-viewer-dialog::backdrop { background: rgb(15 35 43 / .58); }
.tarozi-viewer-header { display: flex; gap: 1rem; justify-content: space-between; align-items: start; }
.tarozi-viewer-header h2 { margin: 0; font-size: 1.5rem; line-height: 1.3; }
.tarozi-viewer-close, .tarozi-notification-close { min-width: 44px; min-height: 44px; border: 1px solid var(--tarozi-border); border-radius: 4px; background: var(--tarozi-surface); color: var(--tarozi-text); font: inherit; }
.tarozi-viewer-description { margin: .5rem 0 1rem; font-size: 1rem; line-height: 1.5; }
.tarozi-viewer-host { min-height: 18rem; }
.tarozi-viewer-poster { display: block; max-width: 100%; width: auto; max-height: 24rem; margin: auto; object-fit: contain; }
.tarozi-viewer-poster[hidden] { display: none; }
.tarozi-viewer-status { margin: .75rem 0; color: var(--tarozi-muted); font-size: .875rem; }
.tarozi-viewer-link { display: inline-block; padding: .5rem 0; color: var(--tarozi-accent); text-decoration: underline; text-underline-offset: .15em; }
.tarozi-notifications { position: fixed; top: 1rem; inset-inline-end: 1rem; z-index: 11000; width: min(26rem,calc(100vw - 2rem)); max-height: calc(100dvh - 2rem); overflow-y: auto; }
.tarozi-notification { display: flex; gap: .75rem; align-items: start; margin-bottom: .5rem; padding: 1rem; border: 1px solid var(--tarozi-border); border-radius: 4px; background: var(--tarozi-surface); color: var(--tarozi-text); box-shadow: 0 4px 20px rgb(15 35 43 / .15); }
.tarozi-notification-message { flex: 1; overflow-wrap: anywhere; }
.tarozi-notification a { color: var(--tarozi-accent); text-decoration: underline; }
.tarozi-notification--danger { border-color: #a32a2a; }
.tarozi-notification--warning { border-color: #936208; }
.tarozi-notification-close { flex-shrink: 0; }
/* Raw vendor JS fades option errors after five seconds. Keep them readable. */
.option .text-danger { display: block !important; opacity: 1 !important; }
@media (min-width: 992px) {
  .menu__level-1-li:focus-within > .menu__level-2, .menu__level-2-li:focus-within > .menu__level-3 { display: block !important; opacity: 1 !important; visibility: visible !important; pointer-events: auto !important; }
}
@media (hover: none) and (min-width: 992px) {
  button.menu__pm.visible-xs.visible-sm { display: block !important; position: absolute; inset-inline-end: 0; top: 0; }
  .menu__level-1-a { padding-inline-end: 3rem; }
  .menu__level-2.in { display: block; visibility: visible; opacity: 1; left: 100%; }
}
@media (max-width: 767px) {
  .uni-module__wrapper:not(.owl-carousel) { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); margin-inline: -.3125rem; }
  .uni-module__wrapper:not(.owl-carousel) > .uni-module__item { width: auto !important; min-width: 0; float: none; padding-inline: .3125rem; }
  .product-thumb { min-width: 0; }
  .product-thumb__name { font-size: .875rem; }
  .product-thumb__quote { display: block; width: 100%; padding: .5rem; font-size: .8125rem; }
  .product-thumb__price { font-size: 1.125rem; line-height: 1.3; flex-wrap: wrap; overflow-wrap: anywhere; }
  .uni-slideshow__description.fullwidth { position: static; width: 100%; padding: 1rem; text-align: start; background: #f3f8fa; }
  .uni-slideshow__title.fullwidth { font-size: 1.125rem; line-height: 1.3; }
  .uni-slideshow__text.fullwidth { font-size: .875rem; line-height: 1.5; }
  .uni-slideshow__btn.fullwidth { height: auto; min-height: 44px; padding: .5rem .75rem; font-size: .875rem; }
  .uni-slideshow .owl-dots { position: static; height: auto; padding-block: .5rem; }
  .tarozi-category-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1rem; margin-bottom: 1.25rem; }
  .tarozi-category-grid > .uni-banner { display: contents; }
  .tarozi-category-grid .uni-banner__item { width: auto; min-width: 0; padding: 0; margin: 0; }
  .tarozi-category-grid .uni-banner__item > a { display: block; }
  .tarozi-category-grid .uni-banner__img { display: block; width: 100%; aspect-ratio: 2 / 1; object-fit: contain; }
  .tarozi-category-grid .uni-banner__title { position: static; display: block; min-height: 3rem; padding: .375rem .5rem; max-width: 100%; }
  .tarozi-category-grid .uni-banner__title:after { display: none; }
  .header-search__input, input.form-control, textarea.form-control, select.form-control { font-size: 1rem; }
  .header-search__input { min-width: 0; }
  .header-phones__main { white-space: nowrap; }
  #cart .dropdown-menu { width: min(450px,calc(100vw - 2rem)); max-width: calc(100vw - 2rem); }
  .tarozi-viewer-dialog { padding: 1rem; }
  .tarozi-platform-trigger { padding: .5rem; }
}
@media (prefers-reduced-motion: no-preference) {
  .btn, .tarozi-platform-trigger, .tarozi-viewer-close, .tarozi-banner-pause { transition: background-color 150ms ease-out, transform 150ms ease-out; }
  .btn:not(:disabled):active, .tarozi-platform-trigger:not(:disabled):active, .tarozi-viewer-close:not(:disabled):active { transform: scale(.96); }
}
@media (hover: hover) {
  .btn-primary:hover, .uni-slideshow__btn:hover, .menu__level-1-a:hover { background-color: var(--tarozi-accent-hover); color: #fff; }
  .product-thumb__name:hover { color: var(--tarozi-accent-hover); }
  .dropdown-menu > li > .tarozi-link-button:hover, .header-search__category-li > .tarozi-search-category:hover, .tarozi-platform-trigger:hover { background: #eaf5f7; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto !important; }
  .animated, .owl-stage, .owl-item, .modal, .modal-dialog, .collapsing { animation: none !important; transition-duration: 0ms !important; }
}
@media (forced-colors: active) {
  html body :is(a,button,input,textarea,select,[tabindex]):focus-visible { outline-color: Highlight !important; }
  label.input > input:focus-visible ~ span, input.tarozi-native-option:focus-visible ~ :is(span,img) { outline-color: Highlight !important; }
}
