/* Spinorama typography and responsive shop polish. No external font dependency. */
:root {
  --spino-font: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --spino-ink: #202638;
  --spino-purple: #25165c;
  --spino-gold: #fcc02a;
  --spino-line: #e2e5ed;
  --spino-muted: #626b7c;
}
html { font-size: 16px; }
body { font-family: var(--spino-font); font-size: 16px; line-height: 1.6; color: var(--spino-ink); background: #fff; }
.site { overflow-x: clip; }
.site-main { padding-top: 32px; }
body, input, button, select, textarea { -webkit-font-smoothing: antialiased; }
button, input, select, textarea { font-family: var(--spino-font); font-size: 16px; }
p, li, label, td, th, .standart-text, .woocommerce-product-details__short-description p,
.product-page p, .short-description p { font-size: 16px; line-height: 1.65; }
h1, h2, h3, h4, .title, .small-title { font-style: normal; font-weight: 650; line-height: 1.22; letter-spacing: -.025em; }
h1, .page-title { font-size: clamp(1.65rem, 3vw, 2.25rem) !important; text-transform: none !important; }
.woocommerce-result-count { font-size: 14px; color: var(--spino-muted); }
h2, .title, .basket-contant .cart_totals h2, .wishlist-title h2,
.my-account-page h2, .reg-page h2, .log-in-pop-up__title,
.info-cutom-block h2 strong, .contact-us h2 strong {
  font-size: clamp(1.35rem, 2.2vw, 1.8rem) !important;
  font-family: var(--spino-font) !important;
  font-weight: 650; text-transform: none !important; margin-bottom: 20px !important;
}
h3, .small-title, .basket-contant h3, .main h2, .sort__title {
  font-size: 1.12rem; text-transform: none; font-weight: 650;
}
a { color: var(--spino-purple); text-underline-offset: 3px; }
a:hover { color: #68491a; }
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible {
  outline: 3px solid #b68b13; outline-offset: 3px;
}
.container { max-width: 1280px; padding-left: 28px; padding-right: 28px; }
.navigation { border-bottom: 1px solid var(--spino-line); box-shadow: 0 2px 12px #25165c08; }
.navigation .container { min-height: 86px; }
.logo, .footer .logo { font-size: 25px; font-style: normal; letter-spacing: -.04em; font-weight: 750; }
.logo .low-screen-br { display: none !important; }
.navigation .logo { width: auto; max-width: none; flex: 0 0 auto; line-height: 1.1; }
.navigation__list a { font-size: 14px; font-weight: 600; text-transform: none; }
.navigation__list li { line-height: 1.3; }
.navigation__list { background: transparent; }
.basket p, .basket span { font-size: 14px; line-height: 1.35; font-style: normal; }
.basket .yellow-text { color: var(--spino-purple); font-weight: 700; }
.basket__wrapper { display: flex; flex-direction: column; border: 0; padding: 0; background: transparent; text-align: left; color: var(--spino-ink); cursor: pointer; min-height: 42px; justify-content: center; }
.basket__wrapper > span { display: block; }
.basket__wrapper .black-text { white-space: nowrap; text-transform: none; }
.empty-button, .yellow-button, .button, .single_add_to_cart_button,
.woocommerce button.button, .woocommerce a.button, .woocommerce input.button,
#place_order, .cart-pop-up .woocommerce-mini-cart__buttons a {
  font-family: var(--spino-font) !important; font-size: 14px !important; font-weight: 650 !important;
  line-height: 1.4; text-transform: none !important; font-style: normal; letter-spacing: 0 !important;
  transform: none !important; border-radius: 7px; border-width: 1px; padding: 11px 18px; min-height: 42px;
  transition: background-color .18s, color .18s, border-color .18s;
}
.empty-button:hover { background: #f3f1fa; color: var(--spino-purple); }
.yellow-button:hover, #place_order:hover { background: #f0b51c; color: #211a10; }
.single_add_to_cart_button, .checkout-button, #place_order {
  background: var(--spino-purple) !important; border-color: var(--spino-purple) !important; color: #fff !important;
}
.single_add_to_cart_button:hover, .checkout-button:hover, #place_order:hover { background: #3e287c !important; }
.button:disabled { opacity: .45; cursor: not-allowed; }
.header__body { padding-top: 24px; }
.header__text-side { padding: 30px; }
.header__black-title { font-size: clamp(1.25rem, 2.2vw, 2rem); font-weight: 650; line-height: 1.25; text-transform: none; margin-bottom: 16px; }
.header__yellow-title { font-size: clamp(1.65rem, 3.4vw, 2.8rem); line-height: 1.12; font-style: normal; font-weight: 750; color: var(--spino-purple); margin-bottom: 18px; letter-spacing: -.035em; }
.header__shop-button { margin-top: 6px; }
.header h2.header__black-title { font-size: 17px !important; line-height: 1.45; font-weight: 450; }
.header h2.header__black-title:first-of-type { font-size: 13px !important; font-weight: 650; letter-spacing: .08em; text-transform: uppercase; color: var(--spino-muted); }
.header h2.header__yellow-title { font-size: clamp(1.8rem, 3.2vw, 2.65rem) !important; font-weight: 750; line-height: 1.14; }
.header__img-side { min-width: 0; flex: 1 1 60%; }
.header__img-side img { object-fit: cover; width: 100%; display: block; }
.cart-pop-up { width: min(420px, calc(100vw - 40px)); border: 1px solid var(--spino-line); border-radius: 10px; padding: 20px; box-shadow: 0 16px 50px #20263826; z-index: 30; }
.cart-pop-up .woocommerce-mini-cart-item { display: flow-root; padding: 12px 0; border-bottom: 1px solid var(--spino-line); font-size: 14px; }
.cart-pop-up .woocommerce-mini-cart-item img { width: 64px; height: 64px; object-fit: contain; float: left; margin: 0 14px 6px 0; }
.cart-pop-up .woocommerce-mini-cart-item .remove { float: right; padding: 0 6px; font-size: 22px; }
.cart-pop-up .woocommerce-mini-cart-item .quantity { display: block; font-size: 14px; }
.cart-pop-up .woocommerce-mini-cart__buttons { display: flex; gap: 10px; flex-wrap: wrap; }
.cart-pop-up .woocommerce-mini-cart__total, .cart-pop-up .woocommerce-mini-cart__total strong,
.cart-pop-up .woocommerce-mini-cart__total .amount { font-size: 16px; line-height: 1.5; }
.cart-pop-up .quantity .amount { font-size: 15px; }
.basket-contant { padding-top: 32px; }
.products, .new, .video { margin-top: 48px; }
.products__title-container .title { font-size: 18px !important; font-weight: 650; }
.products .small-title, .shop .small-title, .new .small-title,
.swiper-slide .small-title, .product-page .small-title, .related-slider__wrapper .small-title {
  font-size: 16px !important; line-height: 1.45; text-transform: none; font-weight: 600; letter-spacing: -.015em;
}
.cost, .price, .product-total, .product-subtotal, .product-price { font-size: 19px; font-style: normal; font-weight: 650; }
.cost del, .price del { font-size: 14px; color: var(--spino-muted); font-weight: 400; }
.woocommerce-Price-amount { white-space: nowrap; font-style: normal; }
.products__img-container { border-radius: 10px; overflow: hidden; background: #fff; }
.swiper-slide.product .cost, .shop > li.product .cost {
  width: auto; max-width: 100%; min-width: 0; flex: 1 1 auto;
  font-size: 19px !important; line-height: 1.4;
}
.swiper-slide.product { display: block; position: relative; }
.swiper-slide.product .products__img-container, .shop > li.product .products__img-container { width: 100%; height: 250px; display: block; }
.swiper-slide.product .products__img-container img, .shop > li.product .products__img-container img { width: 100%; height: 100%; object-fit: contain; }
.swiper-slide.product .small-title { display: block; margin-top: 10px; }
.swiper-slide.product .related-slide__cost { display: flex; justify-content: space-between; gap: 12px; margin: 14px 0 8px; }
.shop > li.product { position: relative; display: flex; flex-direction: column; min-width: 0; }
.product .onsale { position: absolute; top: 10px; left: 10px; z-index: 2; border-radius: 5px; background: #fff0be; color: #654500; font: 650 12px/1.4 var(--spino-font); padding: 4px 9px; width: auto; height: auto; min-width: 0; min-height: 0; }
.star-rating:has(span[style*="width:0"]) { display: none; }
.star-rating:has(span[style*="width: 0"]) { display: none; }
.product-slider { width: 100% !important; max-width: 610px; }
.woocommerce-breadcrumb { font-size: 13px; color: var(--spino-muted); padding: 24px 0; }
.product__title, .product-page__title { font-size: clamp(1.6rem, 3vw, 2.15rem) !important; line-height: 1.2; }
.quantity-container { border-color: #cdd2df; border-radius: 7px; height: 46px; width: 170px; }
.quantity-container .qty, input.qty { font-size: 16px; }
.quantity-btn { min-width: 28px; text-align: center; }
.product__bottom-text { max-width: 78ch; }
.product__bottom-text p, .product-page p { line-height: 1.7; }
.my-account-page { padding-top: 42px; padding-bottom: 60px; }
.my-account-page > .woocommerce { display: grid; grid-template-columns: 215px minmax(0, 1fr); gap: 36px; align-items: start; }
.my-account-page .woocommerce:has(.woocommerce-form-login) { display: block; }
.my-account-page .woocommerce-MyAccount-navigation { width: 100%; }
.woocommerce-MyAccount-navigation ul { margin: 0; padding: 8px; border: 1px solid var(--spino-line); border-radius: 10px; background: #f8f9fc; }
.my-account-page .woocommerce-MyAccount-navigation-link { list-style: none; margin: 2px 0; }
.my-account-page .woocommerce-MyAccount-navigation-link a { display: block; padding: 10px 12px; font-size: 14px; line-height: 1.35; color: var(--spino-ink); border-radius: 6px; }
.woocommerce-MyAccount-navigation .is-active a { background: var(--spino-purple); color: #fff !important; font-weight: 650; }
.woocommerce-MyAccount-content { min-width: 0; }
.woocommerce-MyAccount-content > p { margin-bottom: 24px; }
.woocommerce table.shop_table, .woocommerce-table, .woocommerce-orders-table, .woocommerce-checkout-review-order-table {
  width: 100%; max-width: 100%; border-collapse: collapse !important; border-spacing: 0 !important;
  border: 1px solid var(--spino-line); border-radius: 8px; margin: 20px 0 28px; background: #fff; font-size: 14px;
}
.woocommerce table.shop_table th, .woocommerce table.shop_table td,
.woocommerce-table th, .woocommerce-table td, .woocommerce-orders-table th, .woocommerce-orders-table td,
.woocommerce-checkout-review-order-table th, .woocommerce-checkout-review-order-table td,
.basket-contant td, .basket-contant th {
  padding: 14px 16px !important; border: 0 !important; border-bottom: 1px solid var(--spino-line) !important;
  font-family: var(--spino-font) !important; font-size: 14px !important; line-height: 1.5; font-weight: 400; text-align: left; vertical-align: middle;
}
.woocommerce table.shop_table thead th, .woocommerce-table thead th,
.woocommerce-orders-table thead th, .woocommerce-checkout-review-order-table thead th {
  background: #f5f6fa; font-size: 12px !important; font-weight: 700; letter-spacing: .035em; text-transform: uppercase;
}
.woocommerce table.shop_table tfoot th, .woocommerce-table tfoot th { font-weight: 600; }
.woocommerce table.shop_table tfoot td, .woocommerce-table tfoot td { text-align: right; }
.woocommerce table.shop_table .product-total, .woocommerce-table .product-total { text-align: right; }
.woocommerce table.shop_table .product-name a, .woocommerce-table .product-name a { font-size: 14px; line-height: 1.45; font-weight: 550; }
.woocommerce .woocommerce-table .product-name { width: 70%; }
.woocommerce mark { background: #f3f0fc; padding: 2px 5px; border-radius: 4px; color: var(--spino-purple); font-weight: 600; }
.woocommerce address { font-style: normal; line-height: 1.75; padding: 20px; background: #f8f9fc; border: 1px solid var(--spino-line); border-radius: 8px; }
.woocommerce ul.order_details { display: flex; flex-wrap: wrap; gap: 18px 36px; padding: 20px; background: #f8f9fc; border: 1px solid var(--spino-line); border-radius: 8px; margin: 24px 0; }
.woocommerce ul.order_details li { font-size: 13px; list-style: none; }
.woocommerce ul.order_details strong { display: block; font-size: 16px; }
.woocommerce form .form-row { margin: 0 0 18px; }
.woocommerce form .form-row label { display: block; font-size: 14px; font-weight: 550; margin-bottom: 7px; }
.woocommerce form .form-row input.input-text, .woocommerce form .form-row select,
.woocommerce form .form-row textarea, .woocommerce .select2-container .select2-selection--single {
  border: 1px solid #cbd1dc; border-radius: 6px; padding: 10px 12px; min-height: 44px; width: 100%; background: #fff; font-size: 16px;
}
.woocommerce .select2-container .select2-selection--single { padding: 6px 8px; }
.woocommerce form input[type=checkbox], .woocommerce form input[type=radio] { accent-color: var(--spino-purple); }
.woocommerce form .form-row label.checkbox, .woocommerce-form__label-for-checkbox { display: inline; font-weight: 400; }
.woocommerce-form-login, .woocommerce-form-register { max-width: 520px; }
.woocommerce-notices-wrapper, .woocommerce-message, .woocommerce-info, .woocommerce-error { font-family: var(--spino-font); font-size: 14px; line-height: 1.6; }
.woocommerce-message, .woocommerce-info { padding: 16px 20px; background: #f4f2fa; border: 1px solid #e0daef; border-radius: 8px; margin: 18px 0; }
.woocommerce-error { padding: 16px 24px; background: #fff5f4; border: 1px solid #edd0ca; border-radius: 8px; margin: 18px 0; }
.woocommerce-error li { font-size: 14px; }
.basket-contant .cart_totals { padding: 24px; border: 1px solid var(--spino-line); border-radius: 10px; }
.basket-contant .coupon { display: flex; flex-wrap: wrap; gap: 10px; position: static; }
.basket-contant .coupon input { border: 1px solid #cbd1dc; border-radius: 6px; padding: 10px 12px; }
.basket-contant .actions .button { position: static !important; margin: 12px 0 0 !important; }
.woocommerce-checkout #customer_details { max-width: 800px; }
.woocommerce-checkout #order_review { margin-top: 16px; }
.woocommerce-checkout #payment { padding: 24px; border: 1px solid var(--spino-line); border-radius: 10px; background: #fafbfc; }
.woocommerce-checkout #payment ul { padding: 0; }
.woocommerce-checkout #payment li { list-style: none; }
.woocommerce-checkout #payment .payment_box p, .woocommerce-privacy-policy-text p { font-size: 13px; color: var(--spino-muted); }
.woocommerce-checkout #place_order { margin-top: 18px; }
.footer { margin-top: 48px; }
.footer a, .footer p, .footer li { font-size: 14px; line-height: 1.65; }
@media (max-width: 1315px) {
  .navigation__list { display: none; right: 0; top: 100%; width: min(340px, 100vw); padding: 24px; background: #fff; border: 1px solid var(--spino-line); border-radius: 0 0 10px 10px; box-shadow: 0 18px 40px #2026381a; }
  .navigation__list.navigation__list_active { display: flex; right: 0; height: calc(100dvh - 110px); }
  .navigation__list li { margin: 0 0 18px; }
  .navigation__list li a { color: var(--spino-ink); font-size: 17px; font-weight: 550; text-transform: none; }
  .navigation__list .sub-menu a { color: var(--spino-muted) !important; font-size: 14px !important; }
}
@media (max-width: 960px) {
  .header__body { padding-top: 18px; }
  .header__text-side { padding: 26px; }
  .header__img-side { max-height: 340px; overflow: hidden; }
  .header__img-side { width: 100%; flex: none; }
  .header__img-side img { max-height: 340px; }
  .my-account-page > .woocommerce { grid-template-columns: 180px minmax(0,1fr); gap: 22px; }
}
@media (max-width: 640px) {
  .container { padding-left: 20px; padding-right: 20px; }
  .navigation .container { min-height: 76px; }
  .navigation .container { gap: 10px; }
  .navigation__login { display: inline-flex; padding: 8px 10px; min-height: 38px; font-size: 12px !important; margin: 0; }
  .navigation .basket { margin-right: 0; }
  .basket span { font-size: 12px; }
  .navigation .burger { margin: 0; min-width: 40px; }
  .navigation .logo { margin-right: auto; }
  .navigation .logo { font-size: 20px; }
  .site-main { padding-top: 18px; }
  .woocommerce-breadcrumb { padding-top: 12px; padding-bottom: 12px; margin-bottom: 12px; }
  .product__title { margin-bottom: 24px; }
  .cart-pop-up { position: fixed; top: 130px; left: 20px; right: 20px; width: auto; max-height: 65dvh; overflow-y: auto; }
  .logo { font-size: 23px; }
  .header__text-side { padding: 24px 20px; }
  .header__img-side, .header__img-side img { max-height: 260px; }
  .header__black-title { font-size: 20px; margin-bottom: 10px; }
  .header__yellow-title { font-size: 28px; margin-bottom: 12px; }
  .header__black-title:last-of-type { font-size: 16px; font-weight: 450; }
  .my-account-page { padding-top: 28px; }
  .my-account-page > .woocommerce { display: block; }
  .woocommerce-MyAccount-navigation { margin-bottom: 28px; }
  .woocommerce-MyAccount-navigation ul { display: flex; flex-wrap: wrap; gap: 4px; }
  .my-account-page .woocommerce-MyAccount-navigation-link a { padding: 8px 10px; font-size: 13px; }
  .woocommerce table.shop_table th, .woocommerce table.shop_table td, .woocommerce-table th, .woocommerce-table td,
  .woocommerce-checkout-review-order-table th, .woocommerce-checkout-review-order-table td { padding: 11px 10px !important; font-size: 13px !important; }
  .woocommerce-orders-table .woocommerce-orders-table__header-order-date,
  .woocommerce-orders-table .woocommerce-orders-table__cell-order-date { display: none; }
  .woocommerce table.shop_table .button { padding: 8px 10px; font-size: 12px !important; min-height: 36px; }
  .woocommerce table.cart .product-thumbnail { display: none; }
  .woocommerce table.cart .product-remove { width: 26px; }
  .woocommerce table.shop_table_responsive tr td::before { margin-right: 8px; color: var(--spino-muted); font-size: 13px; font-weight: 500; }
  .woocommerce table.cart input.qty { width: 72px; min-height: 42px; padding: 7px 10px; border: 1px solid #cbd1dc; border-radius: 6px; }
  .woocommerce ul.order_details { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
  .woocommerce-checkout #payment, .basket-contant .cart_totals { padding: 18px; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto !important; }
  *, *::before, *::after { transition-duration: .01ms !important; animation-duration: .01ms !important; }
}

/* Balanced promotional hero and consistent responsive gutters. */
.header { max-width: none; }
.navigation .container { padding-top: 20px; padding-bottom: 20px; gap: 20px; }
.navigation .logo { font-weight: 800; letter-spacing: -.055em; }
.navigation .search { flex-shrink: 0; }
.burger__item { display: block; width: 22px; height: 2px; margin: 0; background: var(--spino-purple); }
.burger__item::before, .burger__item::after { left: 0; right: auto; width: 100%; height: 2px; background: var(--spino-purple); transform-origin: center; }
.burger__item::before { top: auto; bottom: 6px; }
.burger__item::after { top: 6px; bottom: auto; }
.burger.burger_active .burger__item { background: transparent; }
.burger.burger_active .burger__item::before { top: 0; bottom: auto; transform: rotate(45deg); }
.burger.burger_active .burger__item::after { top: 0; bottom: auto; transform: rotate(-45deg); }
@media (max-width: 1315px) {
  .navigation .burger { display: inline-flex; align-items: center; justify-content: center; width: 42px; height: 42px; min-width: 42px; padding: 10px; }
}
.menu-underline { display: none; }
.header__body { max-width: 1280px; padding: 28px 28px 0; margin: 0 auto; }
.swiper-header { overflow: hidden; border-radius: 16px; background: var(--spino-purple); }
.header__wrapper { display: grid; grid-template-columns: 44% 56%; align-items: stretch; height: 460px; }
.header__text-side { width: auto; max-width: none; min-width: 0; height: auto; padding: 42px 44px 88px; background: var(--spino-purple); color: white; }
.header h2.header__black-title:first-of-type { color: #ddd7ef; margin-bottom: 18px !important; font-size: 12px !important; line-height: 1.5; letter-spacing: .1em; }
.header h2.header__yellow-title { color: var(--spino-gold); font-size: clamp(1.9rem, 3vw, 2.65rem) !important; line-height: 1.12; margin-bottom: 18px !important; text-transform: none; }
.header h2.header__black-title:last-of-type { color: #f2eff9; font-size: 17px !important; line-height: 1.5; font-weight: 400; margin-bottom: 24px !important; }
.header .header__shop-button { align-self: flex-start; margin: 0; padding: 12px 20px; background: var(--spino-gold); border: 1px solid var(--spino-gold); color: #231442; font-size: 14px !important; font-weight: 700; border-radius: 7px; }
.header .header__shop-button:hover { background: #ffce59; border-color: #ffce59; }
.header__img-side { height: 460px; width: 100%; max-height: none; min-width: 0; margin: 0; overflow: hidden; }
.header__slider-img { width: 100%; max-width: none; height: 100%; }
.header__slider-img::before { display: none; }
.header__img-side img { width: 100%; height: 100%; max-height: none; object-fit: cover; object-position: center; }
.header-pagination { top: auto; bottom: 25px; left: 72px; width: auto; max-height: none; display: flex; align-items: center; gap: 18px; transform: none; }
.header-pagination__blue-line { display: none; }
.header-pagination__dots-container { position: static !important; width: auto !important; min-width: 0; height: auto !important; padding: 0; background: transparent !important; gap: 8px; }
.header-pagination .swiper-pagination-bullet { margin: 0 !important; width: 24px; height: 4px; padding: 10px 0; background: transparent; position: relative; opacity: 1; cursor: pointer; }
.header-pagination .swiper-pagination-bullet::before { content: ''; position: absolute; inset: 8px 0; background: #8c81ad; border-radius: 4px; }
.header-pagination .swiper-pagination-bullet-active::before { background: var(--spino-gold); }
.hero-toggle { padding: 4px 8px; border: 1px solid #8c81ad; border-radius: 5px; font-size: 11px; font-weight: 550; line-height: 1.5; color: #ede8f7; background: transparent; cursor: pointer; }
.hero-toggle:hover { background: #ffffff18; color: white; }
.products { margin-top: 40px; }
.products__title-container { margin-bottom: 24px; }
.products__title-container .title { font-size: 17px !important; text-transform: capitalize !important; }
@media (min-width: 701px) and (max-width: 1100px) {
  .header__text-side { padding-left: 32px; padding-right: 28px; }
  .header-pagination { left: 60px; }
  .header__wrapper, .header__img-side { height: 420px; }
}
@media (max-width: 700px) {
  .header__body { padding-top: 20px; }
  .header__wrapper { grid-template-columns: 1fr; height: auto; }
  .header__text-side { padding: 30px 32px 74px; min-height: 290px; }
  .header h2.header__yellow-title { font-size: 32px !important; }
  .header h2.header__black-title:first-of-type { margin-bottom: 12px !important; }
  .header h2.header__black-title:last-of-type { margin-bottom: 20px !important; font-size: 16px !important; }
  .header__img-side { height: clamp(230px, 40vw, 340px); }
  .header-pagination { top: 245px; bottom: auto; left: 60px; }
}
@media (max-width: 640px) {
  .navigation .container { min-height: 76px; padding: 16px 20px; gap: 10px; }
  .navigation .burger { width: 42px; min-width: 42px; min-height: 40px; padding: 10px; }
  .burger__item { max-width: 22px; }
  .header__body { padding: 16px 20px 0; }
  .swiper-header { border-radius: 12px; }
  .header__text-side { padding: 26px 24px 72px; min-height: 280px; }
  .header h2.header__yellow-title { font-size: clamp(27px, 7vw, 32px) !important; }
  .header h2.header__black-title:last-of-type { font-size: 15px !important; }
  .header__img-side { height: clamp(210px, 56vw, 280px); }
  .header-pagination { top: 232px; left: 44px; }
  .products { margin-top: 30px; }
  .products__title-container .title { font-size: 15px !important; }
}
@media (max-width: 360px) {
  .navigation .container { gap: 8px; }
  .navigation .logo { font-size: 18px; }
  .navigation__login { padding: 7px 8px; font-size: 11px !important; }
  .basket span { font-size: 11px; }
  .header__body { padding-left: 16px; padding-right: 16px; }
  .header__text-side { padding-left: 20px; padding-right: 20px; }
  .header-pagination { left: 36px; }
}

/* Consistent purchase fields: one left edge, one label and control treatment. */
.single-product form.cart { width: 100%; margin-top: 26px; }
.single-product .product-data-align { display: block; width: 100%; }
.single-product .product-purchase-fields { width: min(100%, 320px); }
.single-product .variations { display: block; width: 100%; border: 0; border-spacing: 0; margin: 0; }
.single-product .variations tbody { display: block; }
.single-product .variations tr { display: block; margin: 0 0 20px; }
.single-product .variations th.label, .single-product .variations td.value { display: block; width: 100%; padding: 0; text-align: left; border: 0; }
.single-product .variations th.label label, .single-product .purchase-label { display: block; padding: 0; margin: 0 0 8px; font: 650 14px/1.4 var(--spino-font); color: var(--spino-ink); }
.single-product .variations .value select { width: 100%; height: 48px; min-height: 48px; padding: 10px 12px; border: 1px solid #cbd1dc; border-radius: 8px; background-color: #fff; color: var(--spino-ink); font: 400 16px/1.4 var(--spino-font); box-sizing: border-box; }
.single-product .quantity-wrapper { display: flex; flex-direction: column; align-items: flex-start; justify-content: flex-start; margin: 0 0 20px; width: min(100%,320px); }
.single-product .quantity-container { display: grid; grid-template-columns: 46px minmax(0,1fr) 46px; width: 100%; height: 48px; padding: 0; border: 1px solid #cbd1dc; border-radius: 8px; overflow: hidden; background: #fff; }
.single-product .quantity-container .quantity { width: 100%; min-width: 0; margin: 0; }
.single-product .quantity-container input.qty { width: 100%; height: 44px; border: 0; margin: 0; padding: 0; background: transparent; font-size: 16px; font-weight: 550; text-align: center; }
.single-product .quantity-container .quantity-btn { display: flex; align-items: center; justify-content: center; width: 46px; height: 46px; min-height: 0; margin: 0; padding: 0; border: 0; border-radius: 0; background: transparent; color: var(--spino-purple); }
.single-product .quantity-btn svg { width: 18px; height: 18px; }
.single-product .quantity-btn:disabled { opacity: .3; cursor: default; }
.single-product .quantity-btn:not(:disabled):hover { background: #f3f1f9; }
.single-product .woocommerce-variation-add-to-cart { display: flex; flex-direction: column; align-items: flex-start; }
.single-product form.cart .single_add_to_cart_button { margin: 0; align-self: flex-start; float: none; }
.single-product .stock-container { padding: 0; margin: 0 0 16px; width: 100%; }
.single-product .variable-price-container { display: block; padding: 0; background: transparent; width: 100%; }
.single-product .variable-price-container .stock { margin: 0; padding: 5px 10px; border-radius: 6px; font: 550 13px/1.4 var(--spino-font); background: #edf6f0; color: #24513a !important; }
.single-product .variable-price-container .out-of-stock { background: #fff0ed; color: #8a3320 !important; }
.single-product .stock-container:has(.single_variation[style*="display: none"]) { display: none; }
.single-product .quantity-wrapper:has(input.qty[type="hidden"]) { display: none; }

/* One segmented section bar on desktop, a compact two-by-two grid on phones. */
.product-page .info__links { display: flex; max-width: 760px; width: 100%; gap: 0; margin: 0 0 28px; padding: 0; border: 1px solid var(--spino-line); border-radius: 8px; overflow: hidden; background: #f8f9fc; }
.product-page .info__link { display: flex; flex: 1 1 0; align-items: center; justify-content: center; min-width: 0; min-height: 48px; width: auto; margin: 0; padding: 12px 16px; border: 0; border-right: 1px solid var(--spino-line); color: var(--spino-purple) !important; font: 600 15px/1.35 var(--spino-font); text-transform: none; text-align: center; text-decoration: none; white-space: nowrap; }
.product-page .info__link:last-child { border-right: 0; }
.product-page .info__link { transition: background-color .15s, color .15s; }
.product-page .info__link:hover, .product-page .info__link:focus-visible { background: #eeeaf7; color: var(--spino-purple) !important; }
.product-page .info__link:focus-visible { outline-offset: -3px; }
.product-page #overview, .product-page #key-features, .product-page #sizing, .product-page #additional-info { scroll-margin-top: 70px; }
@media (max-width: 767px) {
  .product-page .info__links { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); margin-bottom: 24px; }
  .product-page .info__link { min-height: 44px; padding: 10px; font-size: 14px; }
  .product-page .info__link:nth-child(even) { border-right: 0; }
  .product-page .info__link:nth-child(-n+2) { border-bottom: 1px solid var(--spino-line); }
  .product-page .info__link:last-child:nth-child(odd) { grid-column: 1 / -1; border-right: 0; }
}
@media (max-width: 360px) {
  .product-page .info__link { font-size: 13px; padding-left: 7px; padding-right: 7px; }
}

/* Self-contained, labelled sharing controls. No remote icon/script dependency. */
.hokkey-share { margin: 10px 0 24px; max-width: 520px; }
.hokkey-share summary { display: inline-flex; align-items: center; gap: 7px; min-height: 36px; padding: 4px 0; list-style: none; color: var(--spino-purple); font: 600 14px/1.4 var(--spino-font); cursor: pointer; }
.hokkey-share summary::-webkit-details-marker { display: none; }
.hokkey-share summary::marker { content: ''; }
.hokkey-share summary svg { flex-shrink: 0; }
.hokkey-share summary:focus-visible { outline: 3px solid #b68b13; outline-offset: 3px; border-radius: 4px; }
.hokkey-share[open] summary { margin-bottom: 8px; }
.hokkey-share-panel { padding: 14px; border: 1px solid var(--spino-line); border-radius: 8px; background: #f8f9fc; }
.hokkey-share .hokkey-share-heading { margin: 0 0 10px; font: 600 13px/1.4 var(--spino-font); }
.hokkey-share-links { display: flex; flex-wrap: wrap; gap: 8px; }
.hokkey-share-links a, .hokkey-share-links button { display: inline-flex; align-items: center; justify-content: center; min-height: 42px; margin: 0; padding: 9px 12px; border: 1px solid #cbd1dc; border-radius: 6px; background: #fff; color: var(--spino-purple); font: 600 13px/1.4 var(--spino-font); text-transform: none; text-decoration: none; cursor: pointer; }
.hokkey-share-links a:hover, .hokkey-share-links button:hover { border-color: var(--spino-purple); background: #eeeaf7; }
.hokkey-share .hokkey-share-status { margin: 10px 0 0; font: 400 13px/1.5 var(--spino-font); color: #24513a; }
.hokkey-share-status:empty { display: none; }
.hokkey-share-fallback { width: 100%; margin-top: 10px; padding: 10px; border: 1px solid #cbd1dc; border-radius: 6px; font: 400 13px/1.4 var(--spino-font); }
.hokkey-share [hidden] { display: none !important; }
@media (max-width: 640px) {
  .hokkey-share-links { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); }
  .hokkey-share-links a, .hokkey-share-links button { min-height: 44px; }
  .hokkey-share-links .hokkey-copy-link { grid-column: 1 / -1; }
}

/* Thumbnail overflow has visible, keyboard-accessible navigation. */
.thumbnail-gallery { display: grid; grid-template-columns: minmax(0,1fr); align-items: center; gap: 8px; width: 100%; margin-top: 12px; }
.thumbnail-gallery.has-overflow { grid-template-columns: 36px minmax(0,1fr) 36px; }
.thumbnail-strip { display: flex; gap: 10px; min-width: 0; width: 100%; padding: 4px 0; overflow-x: auto; overscroll-behavior-x: contain; scroll-snap-type: x proximity; scrollbar-width: none; }
.thumbnail-strip::-webkit-scrollbar { display: none; }
.thumbnail-gallery .gallery-thumb { flex: 0 0 80px; width: 80px; height: 80px; padding: 4px; margin: 0; border: 2px solid transparent; border-radius: 7px; background: #fff; cursor: pointer; scroll-snap-align: start; }
.thumbnail-gallery .gallery-thumb[aria-pressed="true"] { border-color: var(--spino-purple); background: #f6f3fc; }
.info-cutom-block { position: relative; }
.header-search { position: static; flex: 0 0 auto; margin-left: auto; }
.header-search__toggle, .header-search__close { display: inline-flex; align-items: center; justify-content: center; width: 44px; min-width: 44px; height: 44px; padding: 0; border: 0; border-radius: 8px; background: transparent; color: var(--spino-purple); cursor: pointer; }
.header-search__toggle:hover, .header-search__close:hover, .header-search__toggle[aria-expanded="true"] { background: #f1eef8; }
.header-search__panel { position: absolute; top: calc(100% + 8px); left: var(--search-left, 16px); z-index: 40; display: flex; flex-direction: column; gap: 12px; width: min(440px, calc(100vw - 32px)); max-height: var(--search-panel-max, 70dvh); padding: 16px; border: 1px solid var(--spino-line); border-radius: 12px; background: white; color: var(--spino-ink); box-shadow: 0 12px 36px #20263824; overflow: hidden; text-align: left; }
.header-search__panel[hidden], .header-search__all[hidden], .header-search__hint[hidden] { display: none !important; }
.header-search__heading { display: flex; align-items: center; justify-content: space-between; gap: 16px; flex: 0 0 auto; }
.header-search__title { font-size: 15px; font-weight: 700; line-height: 1.3; }
.header-search__close { width: 32px; min-width: 32px; height: 32px; }
.header-search__panel .aws-container, .header-search__panel form { flex: 0 0 auto; min-width: 0; width: 100%; margin: 0; }
.header-search__panel .aws-container .aws-search-form { height: 46px; }
.header-search__panel .aws-container .aws-wrapper, .header-search__panel .aws-search-field { border-radius: 8px !important; }
.header-search__panel .aws-search-field, .header-search__panel .search-field { height: 46px; min-height: 46px; border: 1px solid #bfc6d4; padding: 10px 40px 10px 12px; background: white; font-size: 16px; line-height: 24px; }
.header-search__panel .aws-search-field:focus { outline: 2px solid var(--spino-purple) !important; outline-offset: -2px !important; }
.header-search__panel .aws-search-clear { min-width: 36px; }
.header-search__panel .aws-search-clear:focus-visible { outline: 2px solid #b68b13; outline-offset: -3px; }
.header-search__hint { margin: 0; font-size: 13px; line-height: 1.5; color: var(--spino-muted); }
.header-search__results { min-height: 0; overflow-y: auto; overscroll-behavior: contain; scrollbar-width: thin; }
.header-search__results .aws-search-result { position: static !important; top: auto !important; left: auto !important; width: 100% !important; margin: 0; border: 0; font-family: var(--spino-font); font-size: 14px; line-height: 1.4; }
.header-search__results .aws_result_scroll { max-height: none; overflow: visible; }
.header-search__results .aws-search-result .aws_results .aws_result_item { display: grid; grid-template-columns: 48px minmax(0,1fr); align-items: center; gap: 12px; padding: 11px 4px; border-bottom: 1px solid #edf0f5; min-height: 70px; }
.header-search__results .aws-search-result .aws_result_item:last-child { border-bottom: 0; }
.header-search__results .aws-search-result .aws_result_image { float: none; width: 48px; height: 48px; margin: 0; }
.header-search__results .aws_result_image img { width: 48px; height: 48px; object-fit: contain; }
.header-search__results .aws-search-result .aws_result_head { display: block; margin: 0; }
.header-search__results .aws-search-result .aws_result_title { padding: 0; color: var(--spino-ink); font-size: 14px; font-weight: 600; line-height: 1.4; }
.header-search__results .aws-search-result .aws_result_price { display: block; white-space: normal; font-size: 13px; font-weight: 500; line-height: 1.5; margin-top: 4px; color: var(--spino-purple); }
.header-search__results .aws_result_price del { color: var(--spino-muted); font-size: 12px; margin-right: 5px; }
.header-search__results .aws_result_stock { display: block; margin-top: 3px; font-size: 12px; }
.header-search__results .aws_result_excerpt, .header-search__results .aws_result_term, .header-search__results .aws_result_sku, .header-search__results .aws_result_sale, .header-search__results .aws_result_featured { display: none !important; }
.header-search__results .aws-search-result .aws_results .aws_no_result { display: block; min-height: 0; padding: 12px 0; color: var(--spino-muted); font-size: 14px; line-height: 1.6; }
.header-search__results .aws-search-result .aws_result_item:hover, .header-search__results .aws-search-result .aws_result_item.hovered, .header-search__results .aws-search-result .aws_result_item:focus-within { background: #f5f3fa; }
.header-search__results .aws_result_item:focus-within { outline: 2px solid #b68b13; outline-offset: -2px; }
.header-search__all { display: flex; align-items: center; justify-content: space-between; flex: 0 0 auto; gap: 16px; width: 100%; min-height: 44px; margin: 0; padding: 10px 12px; border: 1px solid var(--spino-line); border-radius: 7px; background: #f7f6fb; color: var(--spino-purple); font-size: 14px; font-weight: 650; cursor: pointer; }
.header-search__all:hover { background: #eeeaf8; }
.navigation__account-icon { display: none; }
@media (max-width: 640px) {
  .navigation .container { gap: 8px; padding-left: 16px; padding-right: 16px; }
  .header-search { margin-left: 0; }
  .header-search__panel { top: calc(100% + 4px); left: 12px; right: 12px; width: auto; padding: 12px; gap: 10px; border-radius: 10px; }
  .header-search__close { width: 40px; min-width: 40px; height: 40px; }
  .navigation .navigation__login { width: 40px; min-width: 40px; min-height: 44px; height: 44px; padding: 0; align-items: center; justify-content: center; }
  .navigation__account-label { display: none; }
  .navigation__account-icon { display: block; }
  .navigation .burger { width: 40px; min-width: 40px; min-height: 44px; }
}
@media (max-width: 360px) {
  .navigation .container { gap: 4px; padding-left: 12px; padding-right: 12px; }
  .navigation .logo { font-size: 17px; }
  .header-search__toggle { width: 40px; min-width: 40px; }
  .navigation .basket span { font-size: 11px; }
}
.info-cutom-block iframe.wp-embedded-content { max-width: 100%; box-sizing: border-box; }
.thumbnail-gallery .gallery-thumb:hover { border-color: #a89ec2; }
.thumbnail-gallery .gallery-thumb img { display: block; width: 100%; height: 100%; object-fit: contain; }
.thumbnail-gallery .gallery-nav { display: flex; align-items: center; justify-content: center; width: 36px; height: 36px; padding: 0; margin: 0; border: 1px solid #d7dce6; border-radius: 50%; background: #fff; color: var(--spino-purple); cursor: pointer; }
.thumbnail-gallery .gallery-nav:not(:disabled):hover { background: #eeeaf7; border-color: var(--spino-purple); }
.thumbnail-gallery .gallery-nav:disabled { opacity: .3; cursor: default; }
.thumbnail-gallery .gallery-nav[hidden] { display: none !important; }
.thumbnail-gallery button:focus-visible, .thumbnail-strip:focus-visible { outline: 3px solid #b68b13; outline-offset: -3px; }
@media (max-width: 640px) {
  .thumbnail-gallery.has-overflow { grid-template-columns: 44px minmax(0,1fr) 44px; gap: 6px; }
  .thumbnail-gallery .gallery-nav { width: 44px; height: 44px; }
  .thumbnail-gallery .gallery-thumb { flex-basis: 72px; width: 72px; height: 72px; }
}

/* Article arrow controls: one surface and a dark icon in every state. */
.blog-card__title-container .yellow-button {
  display: inline-flex; align-items: center; justify-content: center;
  flex: 0 0 48px; width: 48px; min-height: 44px; padding: 12px;
  color: var(--spino-purple); background: var(--spino-gold);
}
.blog-card__title-container .yellow-button::before { content: none; }
.blog-card__title-container .yellow-button:is(:hover, :focus-visible, :active) {
  color: var(--spino-purple) !important; background: #ffce59;
}
.blog-card__title-container .yellow-button svg,
.blog-card__title-container .yellow-button svg path {
  fill: currentColor; opacity: 1;
}

/* Full-width shipping option cards. Native radios retain keyboard/AJAX behaviour. */
.woocommerce .spino-shipping-row > .spino-shipping-cell,
.spino-shipping-row > .spino-shipping-cell {
  width: auto !important; text-align: left !important; white-space: normal;
}
.spino-shipping-row > .spino-shipping-cell::before { display: none !important; }
.spino-shipping-options {
  min-width: 0; margin: 0; padding: 0; border: 0; text-align: left;
}
.spino-shipping-options legend {
  float: none; width: 100%; margin: 0; padding: 0; border: 0;
  color: var(--spino-ink); font: 700 15px/1.5 var(--spino-font);
}
.spino-shipping-options .spino-shipping-help {
  margin: 4px 0 12px; color: var(--spino-muted); font: 400 13px/1.5 var(--spino-font);
}
.spino-shipping-options ul.woocommerce-shipping-methods {
  display: grid; gap: 10px; width: 100%; min-width: 0;
  margin: 0 !important; padding: 0 !important; list-style: none; text-align: left;
}
.spino-shipping-options ul.woocommerce-shipping-methods > li {
  position: relative; float: none; width: 100%; min-width: 0;
  margin: 0 !important; padding: 0 !important; list-style: none;
  border: 1px solid #cbd1dc; border-radius: 9px; background: #fff;
  transition: border-color .15s, background-color .15s, box-shadow .15s;
}
.spino-shipping-options ul.woocommerce-shipping-methods > li:hover { border-color: var(--spino-purple); }
.spino-shipping-options li:has(input:checked),
.spino-shipping-options li:has(input[type="hidden"]) {
  border-color: var(--spino-purple); background: #f6f3fc;
  box-shadow: inset 0 0 0 1px var(--spino-purple);
}
.spino-shipping-options li:focus-within {
  outline: 2px solid var(--spino-purple); outline-offset: 3px;
}
.spino-shipping-options ul.woocommerce-shipping-methods input[type="radio"] {
  appearance: auto !important; -webkit-appearance: radio !important;
  position: absolute !important; inset: 17px auto auto 15px;
  width: 20px !important; height: 20px !important;
  margin: 0 !important; padding: 0 !important; opacity: 1;
  accent-color: var(--spino-purple); cursor: pointer; z-index: 1;
}
.spino-shipping-options ul.woocommerce-shipping-methods label {
  display: grid !important; grid-template-columns: minmax(0, 1fr) auto;
  align-items: baseline; column-gap: 14px; row-gap: 3px;
  min-height: 68px; width: 100%; margin: 0 !important;
  padding: 13px 15px 13px 46px; text-align: left !important;
  color: var(--spino-ink); font: 400 14px/1.5 var(--spino-font); cursor: pointer;
}
.spino-shipping-options li:has(input[type="hidden"]) label { padding-left: 15px; cursor: default; }
.spino-shipping-options .spino-shipping-name {
  min-width: 0; font: 650 14px/1.5 var(--spino-font); overflow-wrap: anywhere;
}
.spino-shipping-options .spino-shipping-price {
  color: var(--spino-ink); font: 650 14px/1.5 var(--spino-font); text-align: right;
}
.spino-shipping-options .spino-shipping-price .amount,
.spino-shipping-options .spino-shipping-price bdi { font: inherit; }
.spino-shipping-options .spino-shipping-description {
  grid-column: 1 / -1; color: var(--spino-muted); font: 400 13px/1.5 var(--spino-font);
}
.spino-shipping-options .woocommerce-shipping-destination,
.spino-shipping-options .woocommerce-shipping-contents {
  margin: 12px 0 0; font: 400 13px/1.5 var(--spino-font); text-align: left;
}
.spino-shipping-options .shipping-calculator-button { display: inline-block; margin-top: 10px; }

.spino-shipping-options { container-type: inline-size; }
.spino-shipping-options ul.woocommerce-shipping-methods { scroll-margin-top: 140px; }
@container (min-width: 600px) {
  .spino-shipping-options ul.woocommerce-shipping-methods { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* Leave readable space for amounts and GST alongside the new full-width row. */
.woocommerce .woocommerce-checkout-review-order-table { table-layout: fixed; }
.woocommerce .woocommerce-checkout-review-order-table .product-name { width: 60%; overflow-wrap: anywhere; }
.woocommerce .woocommerce-checkout-review-order-table .product-total { width: 40%; }
.woocommerce-checkout-review-order-table .amount,
.woocommerce-checkout-review-order-table .amount bdi,
.woocommerce-checkout-review-order-table .amount .woocommerce-Price-currencySymbol,
.cart_totals .amount, .cart_totals .amount bdi, .cart_totals .amount .woocommerce-Price-currencySymbol {
  font: inherit;
}
.woocommerce-checkout-review-order-table .order-total td > strong,
.cart_totals .order-total td > strong { display: block; font: 700 18px/1.4 var(--spino-font); }
.woocommerce-checkout-review-order-table .includes_tax,
.cart_totals .includes_tax { display: block; margin-top: 4px; font: 400 12px/1.5 var(--spino-font); color: var(--spino-muted); }

/* Payment panel follows the order summary instead of the legacy 320px width. */
.woocommerce-checkout #payment {
  width: 100%; max-width: 100%; min-width: 0; box-sizing: border-box;
}
.woocommerce-checkout #payment .payment_box,
.woocommerce-checkout #payment .place-order,
.woocommerce-checkout #payment .woocommerce-terms-and-conditions-wrapper {
  width: 100%; max-width: 100%; min-width: 0; box-sizing: border-box;
}
.woocommerce-checkout #payment .payment_box { border-radius: 6px; }
.woocommerce-checkout #payment .woocommerce-privacy-policy-text { max-width: 75ch; }
.woocommerce-checkout #payment input[type="checkbox"] {
  width: 18px; height: 18px; margin: 0 7px 0 0; vertical-align: middle;
}
@media (max-width: 600px) {
  .woocommerce-checkout #payment #place_order { width: 100%; min-height: 48px; }
}

/* Separate the optional delivery-address toggle from the order notes section. */
.woocommerce-checkout #ship-to-different-address { margin: 8px 0 0; font: 600 15px/1.5 var(--spino-font); }
.woocommerce-checkout #ship-to-different-address label {
  display: inline-flex; align-items: center; gap: 10px; min-height: 44px;
  margin: 0; font: inherit; cursor: pointer;
}
.woocommerce-checkout #ship-to-different-address label span { font: inherit; }
.woocommerce-checkout #ship-to-different-address input[type="checkbox"] {
  width: 18px; height: 18px; margin: 0; accent-color: var(--spino-purple);
}
.woocommerce-checkout .woocommerce-additional-fields { margin-top: 24px; }
.woocommerce-checkout .woocommerce-additional-fields h3 { margin: 0 0 16px; font: 650 16px/1.5 var(--spino-font); }

/* Override the old basket span rule, including the smaller GST annotation. */
.basket-contant .woocommerce-checkout-review-order-table .amount,
.basket-contant .woocommerce-checkout-review-order-table .amount bdi,
.basket-contant .woocommerce-checkout-review-order-table .amount .woocommerce-Price-currencySymbol,
.basket-contant .cart_totals .amount,
.basket-contant .cart_totals .amount bdi,
.basket-contant .cart_totals .amount .woocommerce-Price-currencySymbol {
  font: inherit; font-weight: inherit !important;
}
