*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; } html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; overflow-x: hidden; overflow-x: clip; overscroll-behavior-x: none; } body { overflow-x: hidden; overflow-x: clip; overscroll-behavior-x: none; } img, video, svg { display: block; max-width: 100%; height: auto; } input, button, textarea, select { font: inherit; } ul, ol { list-style: none; } button { background: none; border: none; cursor: pointer; } a { text-decoration: none; } :focus-visible { outline: 2px solid var(--color-accent); outline-offset: 3px; } .sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; } .skip-link:focus { position: fixed; top: 8px; left: 8px; z-index: 9999; padding: 12px 20px; background: var(--color-ink); color: #fff; border-radius: var(--radius); font-weight: 600; font-size: var(--fs-small); } .topbar { background: var(--color-accent-soft); color: #fff; } .topbar__inner { display: flex; align-items: center; justify-content: space-between; height: 38px; gap: var(--gap); } .topbar__contact { display: flex; align-items: center; gap: 20px; } .topbar__link { display: inline-flex; align-items: center; gap: 6px; font-size: 0.8125rem; color: rgba(255, 255, 255, 0.9); transition: opacity var(--dur) var(--ease); white-space: nowrap; } .topbar__link svg { flex-shrink: 0; } .topbar__address { cursor: default; } .topbar__link:hover { color: #fff; opacity: 1; } .site-header { position: sticky; top: 0; z-index: 200; background: var(--color-bg); border-bottom: 1px solid var(--color-border); transition: box-shadow var(--dur) var(--ease); } .site-header.is-sticky { box-shadow: var(--shadow-md); } .site-header__inner { display: flex; align-items: center; gap: 32px; height: 72px; } .site-header__logo { flex-shrink: 0; } .site-header__logo .site-logo__img { height: 26px; width: auto; max-width: 140px; } .site-header__logo .custom-logo { height: 26px; width: auto; } .site-header__logo .custom-logo-link { display: block; } .site-logo__text { font-family: var(--font-heading); font-size: 1.05rem; color: var(--color-ink); white-space: nowrap; } .site-nav { flex: 1; overflow: visible; } .site-nav__list { display: flex; align-items: center; gap: 2px; list-style: none; } .site-nav__list > li { position: static; } .site-nav__link { display: inline-flex; align-items: center; gap: 4px; padding: 8px 12px; font-size: 0.8125rem; font-weight: 600; letter-spacing: 0.2px; text-transform: uppercase; color: var(--color-ink); border-radius: var(--radius); white-space: nowrap; transition: background var(--dur) var(--ease), color var(--dur) var(--ease); } .site-nav__link:hover, .has-dropdown.is-open .site-nav__link { color: var(--color-accent); } .site-nav__link--cta { background: none; color: var(--color-ink); } .site-nav__link--cta:hover { color: var(--color-accent); } .mega-nav__chevron { transition: transform var(--dur) var(--ease); flex-shrink: 0; } .has-dropdown.is-open .mega-nav__chevron { transform: rotate(180deg); } .mega-panel { position: absolute; left: 0; right: 0; top: 100%; z-index: 199; background: var(--color-bg); border-top: 1px solid var(--color-border); border-bottom: 1px solid var(--color-border); box-shadow: var(--shadow-md); opacity: 0; visibility: hidden; transform: translateY(-6px); transition: opacity var(--dur) var(--ease), transform var(--dur) var(--ease), visibility 0s var(--dur); pointer-events: none; } .has-dropdown.is-open .mega-panel { opacity: 1; visibility: visible; transform: translateY(0); transition: opacity var(--dur) var(--ease), transform var(--dur) var(--ease), visibility 0s; pointer-events: auto; } .mega-panel__inner { padding-block: 32px; } .mega-panel__grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 24px 20px; } @media (max-width: 1100px) { .mega-panel__grid { grid-template-columns: repeat(3, 1fr); } } @media (max-width: 768px) { .mega-panel__grid { grid-template-columns: repeat(2, 1fr); } } .mega-panel__cat-title { display: flex; align-items: center; gap: 10px; font-weight: 700; font-size: 0.875rem; color: var(--color-ink); margin-bottom: 10px; transition: color var(--dur) var(--ease); } .mega-panel__cat-title:hover { color: var(--color-accent); } .mega-panel__cat-img { width: 44px; height: 44px; object-fit: cover; border-radius: var(--radius); flex-shrink: 0; } .mega-panel__sub { display: flex; flex-direction: column; gap: 2px; } .mega-panel__sub-link { display: block; padding: 2px 0; font-size: var(--fs-small); color: var(--color-muted); transition: color var(--dur) var(--ease); } .mega-panel__sub-link:hover { color: var(--color-accent); } .mega-panel__sub-extra { display: none; } .mega-panel__sub.is-expanded .mega-panel__sub-extra { display: block; } .mega-panel__sub-more { margin-top: 4px; } .mega-panel__sub-toggle { display: inline-flex; align-items: center; gap: 4px; padding: 2px 0; font-size: var(--fs-small); font-weight: 600; color: var(--color-accent); background: none; border: none; cursor: pointer; letter-spacing: 0.02em; transition: color var(--dur) var(--ease); } .mega-panel__sub-toggle:hover { color: var(--color-ink); } .mega-panel__sub-toggle-less { display: none; } .mega-panel__sub.is-expanded .mega-panel__sub-toggle-more { display: none; } .mega-panel__sub.is-expanded .mega-panel__sub-toggle-less { display: inline; } .mega-panel__footer { margin-top: 24px; padding-top: 20px; border-top: 1px solid var(--color-border); } .mega-panel__all { display: inline-flex; align-items: center; gap: 6px; padding: 0; font-size: 0.8125rem; font-weight: 600; color: var(--color-accent); background: none; border: none; text-decoration: none; letter-spacing: 0.03em; transition: color var(--dur) var(--ease); } .mega-panel__all::after { content: '\2192'; font-size: 1rem; line-height: 1; } .mega-panel__all:hover { color: var(--color-ink); } .site-header__actions { display: flex; align-items: center; gap: 4px; flex-shrink: 0; } .header-search-widget { flex: 1; min-width: 0; display: flex; align-items: center; } .header-search-widget .dgwt-wcas-search-wrapp, .header-search-widget .dgwt-wcas-sf-wrapp, .header-search-widget .dgwt-wcas-search-form { width: 100%; } .wishlist-toolbar__search .dgwt-wcas-search-wrapp, .wishlist-toolbar__search .dgwt-wcas-sf-wrapp, .wishlist-toolbar__search .dgwt-wcas-suggestions-wrapp, .wishlist-toolbar__search .dgwt-wcas-datalist { display: none !important; } .header-search-widget .dgwt-wcas-search-input { height: 40px !important; padding-top: 0 !important; padding-bottom: 0 !important; font-size: 0.875rem !important; box-sizing: border-box !important; } .header-search-widget .dgwt-wcas-search-submit { top: 50% !important; transform: translateY(-50%) !important; } .action-btn { position: relative; display: inline-flex; align-items: center; justify-content: center; width: 40px; height: 40px; border-radius: var(--radius); color: var(--color-ink); transition: background var(--dur) var(--ease), color var(--dur) var(--ease); } .action-btn:hover { background: var(--color-bg-soft); color: var(--color-accent); } .cart-badge, .header-wishlist-count { position: absolute; top: 4px; right: 4px; min-width: 16px; height: 16px; padding-inline: 4px; background: var(--color-accent); color: #fff; border-radius: var(--radius-pill); font-size: 10px; font-weight: 700; line-height: 16px; text-align: center; } .cart-badge:empty { display: none; } .products .added_to_cart, .product-card .added_to_cart, .pc-cart .added_to_cart { display: none !important; } .action-btn--wishlist.is-active, .pc-action--wish.is-active { color: var(--color-accent); } .pc-action--wish.is-active svg { fill: var(--color-accent); stroke: var(--color-accent); } .account-dropdown-wrap { position: relative; } .account-panel { position: absolute; top: calc(100% + 10px); right: 0; width: 280px; background: var(--color-bg); border: 1px solid var(--color-border, #E2E2E0); border-radius: var(--radius-md, 12px); box-shadow: 0 8px 32px rgba(30, 36, 51, .14); z-index: 400; opacity: 0; visibility: hidden; transform: translateY(-8px); transition: opacity .2s var(--ease), transform .2s var(--ease), visibility 0s .2s; } .account-panel.is-open { opacity: 1; visibility: visible; transform: translateY(0); transition: opacity .2s var(--ease), transform .2s var(--ease), visibility 0s; } .account-panel__header { padding: 20px 20px 14px; border-bottom: 1px solid var(--color-border, #E2E2E0); } .account-panel__name { display: block; font-family: var(--font-heading); font-size: 1rem; color: var(--color-ink); font-weight: var(--fw-heading); } .account-panel__nav { display: flex; flex-direction: column; padding: 8px 0; } .account-panel__item { display: flex; align-items: center; gap: 10px; padding: 10px 20px; font-size: .875rem; color: var(--color-ink); text-decoration: none; transition: background .15s, color .15s; } .account-panel__item:hover { background: var(--color-bg-alt, #F5F6F4); color: var(--color-accent); } .account-panel__item svg { flex-shrink: 0; opacity: .7; transition: opacity .15s; } .account-panel__item:hover svg { opacity: 1; } .account-panel__item--logout { border-top: 1px solid var(--color-border, #E2E2E0); margin-top: 4px; padding-top: 12px; color: #9b3a3a; } .account-panel__item--logout:hover { background: #fdf2f2; color: #7a2222; } .account-panel__login-wrap { padding: 20px; } .account-panel__intro { font-family: var(--font-heading); font-size: 1.05rem; color: var(--color-ink); margin: 0 0 16px; } .account-panel__form { display: flex; flex-direction: column; gap: 12px; } .account-panel__field { display: flex; flex-direction: column; gap: 4px; } .account-panel__field label { font-size: .75rem; font-weight: 600; color: var(--color-ink); opacity: .7; text-transform: uppercase; letter-spacing: .04em; } .account-panel__input { width: 100%; padding: 9px 12px; border: 1px solid var(--color-border, #E2E2E0); border-radius: var(--radius-sm, 8px); font-size: .875rem; color: var(--color-ink); background: var(--color-bg); outline: none; transition: border-color .15s; box-sizing: border-box; } .account-panel__input:focus { border-color: var(--color-accent); } .account-panel__submit { width: 100%; padding: 10px 16px; background: var(--color-accent); color: #fff; border: none; border-radius: var(--radius-pill, 999px); font-size: .875rem; font-weight: 600; cursor: pointer; transition: opacity .15s; margin-top: 4px; } .account-panel__submit:hover { opacity: .88; } .account-panel__links { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin-top: 14px; } .account-panel__link { font-size: .8rem; color: var(--color-ink); opacity: .65; text-decoration: underline; text-underline-offset: 2px; } .account-panel__link:hover { opacity: 1; } .account-panel__register-btn { font-size: .8rem; font-weight: 600; color: var(--color-accent); text-decoration: none; border: 1px solid var(--color-accent); border-radius: var(--radius-pill, 999px); padding: 5px 14px; transition: background .15s, color .15s; } .account-panel__register-btn:hover { background: var(--color-accent); color: #fff; } .nav-toggle { display: none; flex-direction: column; justify-content: center; gap: 5px; width: 40px; height: 40px; padding: 8px; border-radius: var(--radius); color: var(--color-ink); transition: background var(--dur) var(--ease); } .nav-toggle:hover { background: var(--color-bg-soft); } .nav-toggle__bar { display: block; width: 100%; height: 2px; background: currentColor; border-radius: 2px; transition: transform var(--dur) var(--ease), opacity var(--dur) var(--ease); } .nav-toggle[aria-expanded="true"] .nav-toggle__bar:nth-child(1) { transform: translateY(7px) rotate(45deg); } .nav-toggle[aria-expanded="true"] .nav-toggle__bar:nth-child(2) { opacity: 0; } .nav-toggle[aria-expanded="true"] .nav-toggle__bar:nth-child(3) { transform: translateY(-7px) rotate(-45deg); } .search-overlay { position: fixed; inset: 0; z-index: 300; background: rgba(30, 36, 51, 0.6); display: flex; align-items: flex-start; padding-top: 80px; opacity: 0; visibility: hidden; transition: opacity var(--dur) var(--ease), visibility 0s var(--dur); } .search-overlay.is-open { opacity: 1; visibility: visible; transition: opacity var(--dur) var(--ease), visibility 0s; } .search-overlay__inner { position: relative; width: 100%; } .search-overlay .search-form { display: flex; gap: 0; } .search-overlay .search-field { flex: 1; height: 56px; padding: 0 20px; border: 2px solid var(--color-border); border-right: none; border-radius: var(--radius) 0 0 var(--radius); background: var(--color-bg); font-size: 1rem; color: var(--color-ink); } .search-overlay .search-field:focus { outline: none; border-color: var(--color-accent); } .search-overlay .search-submit { height: 56px; padding: 0 24px; background: var(--color-accent); color: #fff; border: 2px solid var(--color-accent); border-radius: 0 var(--radius) var(--radius) 0; font-weight: 600; font-size: var(--fs-small); cursor: pointer; transition: background var(--dur) var(--ease); } .search-overlay .search-submit:hover { background: var(--color-accent-soft); border-color: var(--color-accent-soft); } .search-overlay__close { position: absolute; top: -48px; right: var(--gap); width: 36px; height: 36px; display: flex; align-items: center; justify-content: center; color: #fff; border-radius: var(--radius); transition: color var(--dur) var(--ease); } .search-overlay__close:hover { color: var(--color-accent); } .mobile-menu { position: fixed; top: 0; left: 0; bottom: 0; width: min(340px, 90vw); z-index: 350; background: var(--color-bg); overflow-y: auto; display: none; flex-direction: column; clip-path: inset(0 100% 0 0); transition: clip-path 0.3s var(--ease); } .mobile-menu.is-animating { display: flex; } .mobile-menu.is-open { display: flex; clip-path: inset(0 0% 0 0); } .mobile-menu__header { display: flex; align-items: center; justify-content: space-between; padding: 20px 24px; border-bottom: 1px solid var(--color-border); flex-shrink: 0; } .mobile-menu__logo .custom-logo { height: 36px; width: auto; } .mobile-menu__logo .site-logo__text { font-size: 1.2rem; } .mobile-menu__close { display: flex; align-items: center; justify-content: center; width: 36px; height: 36px; color: var(--color-ink); border-radius: var(--radius); transition: color var(--dur) var(--ease), background var(--dur) var(--ease); } .mobile-menu__close:hover { color: var(--color-accent); background: var(--color-bg-soft); } .mobile-nav { flex: 1; overflow-y: auto; padding: 12px 0; } .mobile-nav__item { border-bottom: none; } .mobile-nav__row { display: flex; align-items: center; } .mobile-nav__link { flex: 1; padding: 10px 24px; font-size: 0.9375rem; font-weight: 500; color: var(--color-ink); transition: color var(--dur) var(--ease); } .mobile-nav__link:hover { color: var(--color-accent); } .mobile-nav__expand { display: flex; align-items: center; justify-content: center; width: 48px; height: 48px; color: var(--color-muted); flex-shrink: 0; transition: color var(--dur) var(--ease), transform var(--dur) var(--ease); } .mobile-nav__expand[aria-expanded="true"] { transform: rotate(180deg); color: var(--color-accent); } .mobile-nav__sub { padding: 4px 0 8px 0; } .mobile-nav__sub-link { display: block; padding: 7px 24px 7px 36px; font-size: var(--fs-small); color: var(--color-muted); transition: color var(--dur) var(--ease); } .mobile-nav__sub-link:hover { color: var(--color-accent); } .mobile-nav__sub > .mobile-nav__item { border-bottom: none; } .mobile-nav__sub > .mobile-nav__item > .mobile-nav__row .mobile-nav__link { padding-left: 36px; font-size: var(--fs-small); font-weight: 400; color: var(--color-muted); } .mobile-nav__sub > .mobile-nav__item > .mobile-nav__row .mobile-nav__expand { width: 40px; height: 40px; } .mobile-nav__sub .mobile-nav__sub { padding: 2px 0 6px 0; } .mobile-nav__sub .mobile-nav__sub .mobile-nav__sub-link { padding-left: 52px; } .mobile-menu__footer { padding: 20px 24px; border-top: 1px solid var(--color-border); flex-shrink: 0; display: flex; flex-direction: column; gap: 12px; } .mobile-menu__phone, .mobile-menu__login { display: inline-flex; align-items: center; gap: 8px; font-size: var(--fs-small); font-weight: 600; color: var(--color-ink); } .bottom-nav { display: none; } @media (max-width: 767px) { .site-header__actions { display: none; } .site-header__inner { gap: 16px; } .nav-toggle { margin-left: auto; } body { padding-bottom: calc(64px + env(safe-area-inset-bottom, 0px)); } .mobile-menu.is-open ~ .bottom-nav { transform: translateY(100%); } .bottom-nav { display: flex; position: fixed; bottom: 0; left: 0; right: 0; z-index: 310; height: 64px; padding-bottom: env(safe-area-inset-bottom, 0px); background: var(--color-bg); border-top: 1px solid var(--color-border); box-shadow: 0 -2px 16px rgba(30, 36, 51, 0.09); transition: transform 0.3s var(--ease); overflow: clip; } .bottom-nav__btn { display: flex; flex-direction: column; align-items: center; justify-content: center; flex: 1; gap: 4px; color: var(--color-ink); transition: color var(--dur) var(--ease); position: relative; } .bottom-nav__btn:hover, .bottom-nav__btn:active { color: var(--color-accent); } .bottom-nav__btn { touch-action: manipulation; cursor: pointer; } .bottom-nav__label { font-size: 0.625rem; font-weight: 500; letter-spacing: 0.02em; line-height: 1; } .bottom-nav__icon-wrap { position: relative; display: flex; align-items: center; justify-content: center; } .bottom-nav__btn .cart-badge, .bottom-nav__btn .js-wish-count { position: absolute; top: -6px; right: -8px; } .bottom-nav__fibo-trigger { position: absolute; inset: 0; opacity: 0; z-index: 2; overflow: hidden; pointer-events: none; } .bottom-nav__fibo-trigger * { max-width: 100% !important; min-width: 0 !important; } } .site-overlay { position: fixed; inset: 0; z-index: 299; background: rgba(30, 36, 51, 0.5); opacity: 0; visibility: hidden; transition: opacity 0.3s var(--ease), visibility 0s 0.3s; } .site-overlay.is-visible { opacity: 1; visibility: visible; transition: opacity 0.3s var(--ease), visibility 0s; } .site-footer { position: relative; background: var(--color-ink); color: rgba(255, 255, 255, 0.75); } .site-footer--has-bg { background-size: cover; background-position: center top; background-repeat: no-repeat; } .site-footer__overlay { position: absolute; inset: 0; pointer-events: none; z-index: 0; } .site-footer__inner { position: relative; z-index: 1; } .site-footer__divider { border-top: 1px solid rgba(255, 255, 255, 0.1); margin-inline: auto; max-width: var(--container); padding-inline: var(--page-gutter); } .site-footer__newsletter { padding-block: clamp(48px, 6vw, 80px); text-align: center; } .site-footer__newsletter-inner { max-width: 640px; margin-inline: auto; } .site-footer__newsletter-title { font-family: var(--font-heading); font-size: clamp(1.6rem, 3vw, 2.2rem); color: #fff; margin-bottom: 32px; font-weight: var(--fw-heading); line-height: 1.25; } .site-footer__newsletter-desc { max-width: 54ch; margin: -18px auto 30px; color: rgba(255, 255, 255, .72); font-size: 0.95rem; line-height: 1.6; } .site-footer__main { padding-block: clamp(40px, 5vw, 64px); } .site-footer__grid { display: grid; grid-template-columns: 1.6fr 1fr 1fr; gap: 48px 40px; } .footer-logo .custom-logo { height: 44px; width: auto; filter: brightness(0) invert(1); } .footer-logo .site-logo__text { color: #fff; font-size: 1.4rem; } .footer-desc { margin-top: 16px; font-size: var(--fs-small); line-height: var(--lh-body); } .footer-contact { display: flex; flex-direction: column; gap: 10px; margin-top: 24px; font-style: normal; } .footer-contact__item { display: flex; align-items: flex-start; gap: 8px; font-size: var(--fs-small); color: rgba(255, 255, 255, 0.7); } .footer-contact__item svg { flex-shrink: 0; margin-top: 1px; } .footer-contact__link { transition: color var(--dur) var(--ease); } .footer-contact__link:hover { color: var(--color-accent); } .footer-nav__title { font-family: var(--font-body); font-size: var(--fs-small); font-weight: 700; letter-spacing: 0.8px; text-transform: uppercase; color: #fff; margin-bottom: 20px; } .footer-nav__list { display: flex; flex-direction: column; gap: 10px; } .footer-nav__list a { font-size: var(--fs-small); color: rgba(255, 255, 255, 0.65); transition: color var(--dur) var(--ease); } .footer-nav__list a:hover { color: var(--color-accent); } .footer-newsletter__text { font-size: var(--fs-small); margin-bottom: 16px; } .footer-newsletter__form { display: flex; flex-direction: column; gap: 12px; } .footer-newsletter__row { display: flex; gap: 0; } .footer-newsletter__input { flex: 1; height: 48px; padding: 0 20px; border: 1px solid rgba(255, 255, 255, 0.15); border-right: none; border-radius: var(--radius-pill) 0 0 var(--radius-pill); background: rgba(255, 255, 255, 0.08); color: #fff; font-size: var(--fs-small); transition: border-color var(--dur) var(--ease); } .footer-newsletter__input::placeholder { color: rgba(255, 255, 255, 0.4); } .footer-newsletter__input:focus { outline: none; border-color: var(--color-accent); } .footer-newsletter__btn { height: 48px; padding: 0 24px; border-radius: 0 var(--radius-pill) var(--radius-pill) 0; font-size: 0.8125rem; white-space: nowrap; } .footer-newsletter__msg { font-size: var(--fs-small); padding: 8px 12px; border-radius: var(--radius); } .footer-newsletter__msg--ok { background: rgba(100, 200, 100, 0.15); color: #7dd87d; } .footer-newsletter__msg--err { background: rgba(220, 80, 80, 0.15); color: #f08080; } .site-footer__bottom { padding-block: 24px; } .site-footer__bottom-inner { display: flex; align-items: center; justify-content: space-between; gap: 24px; flex-wrap: wrap; } .footer-anpc { display: flex; align-items: center; gap: 12px; } .site-footer .footer-anpc img { height: 40px; width: auto; opacity: 0.85; transition: opacity var(--dur) var(--ease); } .site-footer .footer-anpc a:hover img { opacity: 1; } .social-links { display: flex; align-items: center; gap: 8px; } .social-link { display: flex; align-items: center; justify-content: center; width: 36px; height: 36px; border: 1px solid rgba(255, 255, 255, 0.15); border-radius: var(--radius); color: rgba(255, 255, 255, 0.7); transition: color var(--dur) var(--ease), border-color var(--dur) var(--ease), background var(--dur) var(--ease); } .social-link:hover { color: var(--color-accent); border-color: var(--color-accent); background: rgba(2, 183, 131, 0.08); } .footer-copyright { font-size: 0.8125rem; color: rgba(255, 255, 255, 0.45); } @media ( max-width: 1100px ) { .site-nav { display: none; } .site-header__actions { margin-left: auto; } .nav-toggle { display: flex; } } @media ( max-width: 860px ) { .topbar__address { display: none; } .site-footer__grid { grid-template-columns: 1fr 1fr; } .site-footer__col--brand { grid-column: 1 / -1; } } @media ( max-width: 600px ) { .topbar__inner { gap: 12px; } .topbar__contact { gap: 14px; } .topbar__link { font-size: 0.74rem; gap: 5px; } .topbar__link svg { width: 12px; height: 12px; } } @media ( max-width: 430px ) { .topbar__inner { gap: 8px; } .topbar__contact { gap: 10px; justify-content: center; width: 100%; } .topbar__link { font-size: 0.66rem; gap: 4px; } .topbar__link svg { width: 11px; height: 11px; } } @media ( max-width: 360px ) { .topbar__link { font-size: 0.6rem; gap: 3px; } .topbar__contact { gap: 8px; } .topbar__contact .topbar__link[href^="mailto"] { display: none; } } @media ( max-width: 768px ) { .site-footer__newsletter { padding-block: 36px 28px; } .site-footer__newsletter-title { font-size: clamp(1.3rem, 5vw, 1.8rem); margin-bottom: 20px; } .site-footer__newsletter-desc { margin: -10px auto 22px; font-size: 0.9rem; } .footer-newsletter__row { flex-direction: column; gap: 10px; } .footer-newsletter__input { border: 1px solid rgba(255, 255, 255, 0.25); border-radius: var(--radius-pill); height: 46px; width: 100%; font-size: 1rem; padding: 0 18px; } .footer-newsletter__btn { border-radius: var(--radius-pill); width: 100%; height: 46px; justify-content: center; font-size: 0.9rem; } .site-footer__grid { grid-template-columns: 1fr 1fr; gap: 32px 24px; } .site-footer__col--brand { grid-column: 1 / -1; } .site-footer__bottom-inner { flex-direction: column; align-items: flex-start; gap: 16px; } } @media ( max-width: 480px ) { .site-footer__grid { grid-template-columns: 1fr; gap: 24px; } .site-footer__col--brand { grid-column: auto; } } .section-label { font-size: 0.6875rem; font-weight: 700; letter-spacing: 1.4px; text-transform: uppercase; color: var(--color-muted); margin-bottom: 10px; } .section-heading { font-size: var(--fs-h2); color: var(--color-ink); margin-bottom: clamp(28px, 4vw, 48px); } .hero { position: relative; overflow: hidden; } .hero-slider { position: relative; overflow: hidden; } .hero-swiper { width: 100%; overflow: hidden; } .hero-slide { background-color: var(--slide-bg, #242424); height: calc(100vh - 110px); height: calc(100svh - 110px); min-height: 480px; max-height: 960px; display: flex; align-items: center; position: relative; } .hero-slide--has-bg { background-image: var(--slide-bg-img); background-size: cover; background-position: center center; background-repeat: no-repeat; } @media (min-width: 769px) and (max-width: 1024px) { .hero-slide--has-bg { background-image: var(--slide-bg-img-tablet, var(--slide-bg-img)); } } @media (max-width: 768px) { .hero-slide--has-bg { background-image: var(--slide-bg-img-mobile, var(--slide-bg-img)); } } .hero-slide--has-bg::before { content: ''; position: absolute; inset: 0; background-color: var(--slide-overlay-color, var(--slide-bg, #242424)); opacity: var(--slide-overlay, 0.55); z-index: 1; } .hero-slide__inner { display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: clamp(32px, 5vw, 80px); padding-block: clamp(56px, 7vw, 100px); width: 100%; position: relative; z-index: 2; } .hero-slide--text-only .hero-slide__inner { grid-template-columns: 1fr; } .hero-slide--text-only.hero-slide--has-bg::before { background-color: transparent; background-image: linear-gradient(96deg, rgba(18, 20, 24, 0.96) 0%, rgba(18, 20, 24, 0.78) 32%, rgba(18, 20, 24, 0.42) 60%, rgba(18, 20, 24, 0.12) 100%), linear-gradient(to top, rgba(18, 20, 24, 0.45), transparent 42%); opacity: var(--slide-overlay, 0.55); } .hero-slide--text-only .hero-slide__left { max-width: 620px; gap: 22px; } .hero-slide--text-only .hero-slide__left::before { content: ""; width: 54px; height: 2px; background: var(--color-accent); opacity: 0.9; } .hero-slide--text-only .hero-slide__title { font-size: clamp(2.125rem, 3.6vw, 3.5rem); line-height: 1.08; letter-spacing: -0.015em; text-wrap: balance; text-shadow: 0 2px 24px rgba(0, 0, 0, 0.32); } .hero-slide--text-only .hero-slide__desc { max-width: 520px; color: rgba(255, 255, 255, 0.82); font-size: clamp(0.9375rem, 1.15vw, 1.0625rem); line-height: 1.75; text-shadow: 0 1px 12px rgba(0, 0, 0, 0.3); } .hero-slide--text-only .hero-slide__actions { margin-top: 6px; } .hero-slide__left { display: flex; flex-direction: column; align-items: flex-start; gap: 20px; } .hero-slide__badge { display: inline-flex; align-items: center; gap: 6px; background: var(--slide-badge-bg, var(--color-accent)); color: #fff; font-size: 0.6875rem; font-weight: 700; letter-spacing: 0.09em; text-transform: uppercase; padding: 5px 14px; border-radius: 12px; max-width: min(100%, 30ch); line-height: 1.35; text-wrap: balance; } .hero-slide__title { font-family: var(--font-heading); font-size: clamp(2rem, 4vw, 3.25rem); line-height: 1.1; color: #fff; letter-spacing: -0.01em; margin: 0; } .hero-slide__desc { font-size: clamp(0.9375rem, 1.4vw, 1.0625rem); color: rgba(255, 255, 255, 0.72); line-height: 1.7; margin: 0; max-width: 440px; } .hero-slide__actions { display: flex; align-items: center; gap: 14px; flex-wrap: wrap; margin-top: 6px; } .hero-slide__cta { display: inline-flex; align-items: center; gap: 8px; padding: 14px 28px; background: var(--slide-cta-bg, var(--color-accent)); border: 1px solid transparent; border-radius: var(--radius-pill); color: #fff; font-size: 0.8125rem; font-weight: 700; letter-spacing: 0.07em; text-transform: uppercase; text-decoration: none; transition: background var(--dur) var(--ease), gap var(--dur) var(--ease); } .hero-slide__cta:hover { background: #4b72f3; background: color-mix(in srgb, var(--slide-cta-bg, var(--color-accent)) 86%, #000); color: #fff; gap: 12px; } .hero-slide__cta2 { display: inline-flex; align-items: center; gap: 8px; padding: 13px 24px; background: transparent; border: 1.5px solid rgba(255, 255, 255, 0.35); border-radius: var(--radius-pill); color: rgba(255, 255, 255, 0.85); font-size: 0.8125rem; font-weight: 600; letter-spacing: 0.05em; text-decoration: none; transition: border-color var(--dur) var(--ease), color var(--dur) var(--ease), background var(--dur) var(--ease); } .hero-slide__cta2:hover { border-color: rgba(255, 255, 255, 0.7); color: #fff; background: rgba(255, 255, 255, 0.07); } .hero-slide--align-center .hero-slide__inner { grid-template-columns: 1fr; } .hero-slide--align-center .hero-slide__left { align-items: center; text-align: center; max-width: 800px; margin-inline: auto; } .hero-slide--align-center .hero-slide__desc { max-width: 640px; } .hero-slide--align-center .hero-slide__actions { justify-content: center; } .hero-slide--align-center.hero-slide--text-only .hero-slide__left::before { display: none; } .hero-slide--gpos-left .hero-slide__left { order: 2; } .hero-slide--gpos-left .hero-slide__right { order: 1; } .hero-slide--theme-dark .hero-slide__title { color: #1d2327; text-shadow: none; } .hero-slide--theme-dark .hero-slide__desc { color: rgba(29, 35, 39, 0.78); text-shadow: none; } .hero-slide--theme-dark .hero-slide__cta2 { border-color: rgba(29, 35, 39, 0.28); color: rgba(29, 35, 39, 0.82); } .hero-slide--theme-dark .hero-slide__cta2:hover { border-color: rgba(29, 35, 39, 0.6); color: #1d2327; background: rgba(0, 0, 0, 0.04); } .hero-slide--title-sm .hero-slide__title { font-size: clamp(1.625rem, 2.8vw, 2.375rem); } .hero-slide--title-lg .hero-slide__title { font-size: clamp(2.375rem, 5vw, 4rem); } .hero-slide__right { display: flex; align-items: center; justify-content: center; position: relative; } .hero-slide__right::before { content: ''; position: absolute; inset: 10%; background: radial-gradient(ellipse at center, var(--color-accent), transparent 70%); opacity: 0.1; border-radius: 50%; pointer-events: none; } .hero-slide__graphic { position: relative; z-index: 1; max-height: min(680px, 76vh); max-height: min(680px, 76svh); max-width: 100%; width: auto; height: auto; object-fit: contain; display: block; filter: drop-shadow(0 24px 64px rgba(0, 0, 0, 0.30)); } .hero-slide__graphic-placeholder { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 12px; min-height: 300px; color: rgba(255, 255, 255, 0.25); font-size: var(--fs-small); } .hero-swiper__prev, .hero-swiper__next { position: absolute; top: 50%; transform: translateY(-50%); z-index: 10; width: 44px; height: 44px; border-radius: 50%; display: flex; align-items: center; justify-content: center; background: rgba(255, 255, 255, 0.08); border: 1.5px solid rgba(255, 255, 255, 0.22); color: #fff; backdrop-filter: blur(6px); -webkit-backdrop-filter: blur(6px); cursor: pointer; transition: background var(--dur) var(--ease), border-color var(--dur) var(--ease); } .hero-swiper__prev:hover, .hero-swiper__next:hover { background: rgba(255, 255, 255, 0.18); border-color: rgba(255, 255, 255, 0.5); } .hero-swiper__prev { left: clamp(10px, 2vw, 28px); } .hero-swiper__next { right: clamp(10px, 2vw, 28px); } .hero-swiper__pagination { position: absolute; bottom: 24px; left: 0; right: 0; display: flex; align-items: center; justify-content: center; gap: 8px; z-index: 10; pointer-events: none; } .hero-swiper__pagination .swiper-pagination-bullet { width: 8px; height: 8px; border-radius: 4px; background: rgba(255, 255, 255, 0.4); opacity: 1; transition: width 0.3s var(--ease), background 0.3s var(--ease); pointer-events: auto; cursor: pointer; } .hero-swiper__pagination .swiper-pagination-bullet-active { width: 28px; background: var(--color-accent); } .hero-swiper.swiper-fade .swiper-slide { pointer-events: none; } .hero-swiper.swiper-fade .swiper-slide-active { pointer-events: auto; } .hero-slide .hero-slide__left { opacity: 0; transform: translateY(22px); transition: opacity 0.65s ease 0.15s, transform 0.65s ease 0.15s; } .hero-slide .hero-slide__right { opacity: 0; transform: translateY(16px) scale(0.97); transition: opacity 0.65s ease 0.3s, transform 0.65s ease 0.3s; } .swiper-slide-active .hero-slide__left { opacity: 1; transform: translateY(0); } .swiper-slide-active .hero-slide__right { opacity: 1; transform: translateY(0) scale(1); } @media (max-width: 860px) { .hero-slide__inner { grid-template-columns: 1fr; text-align: center; gap: 32px; padding-block: clamp(40px, 5vw, 64px); } .hero-slide__left { align-items: center; order: 2; } .hero-slide--text-only.hero-slide--has-bg::before { background-image: linear-gradient( to bottom, rgba(18, 20, 24, 0.52) 0%, rgba(18, 20, 24, 0.72) 45%, rgba(18, 20, 24, 0.80) 100% ); } .hero-slide--text-only .hero-slide__left { max-width: 100%; } .hero-slide__right { order: 1; } .hero-slide__graphic { max-height: min(260px, 35vh); max-height: min(260px, 35svh); } .hero-slide__desc { max-width: 560px; margin-inline: auto; } .hero-swiper__prev { left: 8px; } .hero-swiper__next { right: 8px; } } @media (max-width: 480px) { .hero-slide { height: calc(100svh - 110px); max-height: none; } .hero-slide__inner { gap: 20px; padding-block: 36px 48px; } .hero-slide__graphic { max-height: min(200px, 30vh); max-height: min(200px, 30svh); } .hero-slide__title { font-size: clamp(1.625rem, 7vw, 2.25rem); } .hero-slide__actions { justify-content: center; } .hero-swiper__prev, .hero-swiper__next { top: auto; transform: none; bottom: 12px; width: 38px; height: 38px; } .hero-swiper__prev { left: auto; right: 58px; } .hero-swiper__next { right: 12px; } .hero-swiper__pagination { display: none; } } .promo-banner { width: 100%; line-height: 0; } .promo-banner__link { display: block; line-height: 0; } .promo-banner__img { width: 100%; height: auto; display: block; object-fit: cover; } .promo-banner__img--mobile { display: none; } @media (max-width: 767px) { .promo-banner__img--desktop { display: none; } .promo-banner__img--mobile { display: block; } } .usp-band { padding-block: clamp(32px, 4vw, 48px); } .usp-band__grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: var(--gap); } .usp-item { display: flex; flex-direction: column; align-items: center; text-align: center; gap: 14px; padding: 28px 20px; } .usp-item__icon { color: var(--color-accent); } .usp-item__title { font-family: var(--font-heading); font-size: 1.1rem; color: var(--color-ink); } .usp-item__text { font-size: var(--fs-small); color: var(--color-muted); line-height: var(--lh-body); } .cats-grid__header { display: flex; align-items: center; justify-content: flex-end; margin-bottom: 20px; } .cats-grid__nav { display: flex; gap: 8px; } .cats-grid-swiper { overflow: hidden; } .cats-grid__list { list-style: none; padding: 0; margin: 0; } .cats-grid__item { display: flex; justify-content: center; height: auto; } .cat-card { display: flex; flex-direction: column; align-items: center; gap: 14px; text-align: center; width: 100%; text-decoration: none; } .cat-card__img-wrap { width: 100%; aspect-ratio: 1; overflow: hidden; background: var(--color-bg-soft); } .cat-card__img-wrap img { width: 100%; height: 100%; object-fit: cover; transition: opacity var(--dur) var(--ease); } .cat-card:hover .cat-card__img-wrap img { opacity: 0.85; } .cat-card__placeholder { width: 100%; height: 100%; display: flex; align-items: center; justify-content: center; color: var(--color-border); } .cat-card__name { font-size: var(--fs-small); font-weight: 600; color: var(--color-ink); letter-spacing: 0.2px; transition: color var(--dur) var(--ease); } .cat-card:hover .cat-card__name { color: var(--color-accent); } .cat-circle__name { font-family: var(--font-heading); font-size: 0.9375rem; color: var(--color-ink); transition: color var(--dur) var(--ease); } .cat-circle:hover .cat-circle__name { color: var(--color-accent); } .cta-band { background: var(--color-ink); padding-block: clamp(48px, 6vw, 80px); } .cta-band__inner { display: flex; align-items: center; justify-content: space-between; gap: 40px; } .cta-band__title { font-size: var(--fs-h2); color: #fff; } .cta-band__desc { font-size: 1rem; color: rgba(255, 255, 255, 0.7); margin-top: 10px; max-width: 480px; } .cta-band__actions { display: flex; flex-shrink: 0; gap: 12px; } .cta-band__btn--ghost { border-color: rgba(255, 255, 255, 0.35); color: #fff; } .cta-band__btn--ghost:hover { border-color: var(--color-accent); color: var(--color-accent); background: transparent; } .home-products { padding-block: clamp(48px, 6vw, 80px); } .home-products + .home-products { padding-top: 0; } .home-products:has(+ .home-products) { padding-bottom: clamp(28px, 3.5vw, 44px); } .home-products__head { display: flex; align-items: flex-end; justify-content: space-between; margin-bottom: 32px; gap: 24px; } .home-products__head-left .section-heading { margin-bottom: 0; } .home-products__nav { display: flex; gap: 8px; flex-shrink: 0; } .home-products__nav .products-swiper__prev, .home-products__nav .products-swiper__next { position: static; transform: none; } .home-products__swiper-wrap { overflow: hidden; } .home-products__footer { display: flex; justify-content: center; margin-top: 32px; } .home-products__all-link { display: inline-flex; align-items: center; gap: 6px; font-size: 0.75rem; font-weight: 700; letter-spacing: 0.8px; text-transform: uppercase; color: var(--color-ink); border-bottom: 1px solid currentColor; padding-bottom: 2px; transition: color var(--dur) var(--ease), gap var(--dur) var(--ease); } .home-products__all-link:hover { color: var(--color-accent); gap: 9px; } .products-swiper { overflow: visible; padding-inline: 20px; } .products-swiper .swiper-wrapper { align-items: stretch; } .products-swiper .swiper-slide { height: auto; display: flex; flex-direction: column; } .product-card { display: flex; flex-direction: column; height: 100%; overflow: hidden; background: var(--color-bg); } .product-card__media { position: relative; overflow: hidden; background: var(--color-bg-soft); aspect-ratio: 1; } .product-card__media img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.4s var(--ease); } .product-card:hover .product-card__media img { transform: none; } .product-card__img-placeholder { width: 100%; height: 100%; display: flex; align-items: center; justify-content: center; color: var(--color-muted); background: var(--color-bg-soft); } .product-card__badge { position: absolute; top: 12px; left: 12px; font-size: 11px; } .product-card__body { display: flex; flex-direction: column; gap: 8px; padding: 16px; flex: 1; } .pc-variations { position: absolute; left: 10px; bottom: 35px; z-index: 3; display: flex; align-items: center; gap: 5px; padding: 4px 7px; background: rgba(255, 255, 255, 0.92); -webkit-backdrop-filter: blur(4px); backdrop-filter: blur(4px); border-radius: 999px; box-shadow: 0 1px 5px rgba(0, 0, 0, 0.14); line-height: 1; max-width: calc(100% - 20px); } .product-card__media:has(.product-card__oos-overlay) .pc-variations { display: none; } .pc-swatch { width: 13px; height: 13px; border-radius: 50%; background: var(--sw, #ccc); border: 1px solid rgba(0, 0, 0, 0.18); box-shadow: inset 0 1px 1px rgba(255, 255, 255, 0.4); flex-shrink: 0; } .pc-vmore, .pc-vcount { font-size: 10.5px; font-weight: 600; color: #30353f; white-space: nowrap; } @media (max-width: 600px) { .pc-variations { left: 8px; } .pc-swatch { width: 12px; height: 12px; } } .pc-mp-note { position: absolute; left: 10px; bottom: 35px; z-index: 3; padding: 4px 8px; background: rgba(255, 255, 255, 0.92); -webkit-backdrop-filter: blur(4px); backdrop-filter: blur(4px); border-radius: 999px; box-shadow: 0 1px 5px rgba(0, 0, 0, 0.14); font-size: 10.5px; font-weight: 600; color: #30353f; line-height: 1; white-space: nowrap; max-width: calc(100% - 20px); } .pc-mp-note--sus { bottom: 61px; } .product-card__media:has(.product-card__oos-overlay) .pc-mp-note { display: none; } @media (max-width: 600px) { .pc-mp-note { left: 8px; } } .product-card__cat { font-size: 11px; font-weight: 600; letter-spacing: 0.5px; text-transform: uppercase; color: var(--color-muted); text-decoration: none; } a.product-card__cat:hover { color: var(--color-accent); } .product-card__title { font-family: var(--font-heading); font-size: 1rem; line-height: 1.3; min-height: calc(1rem * 1.3 * 2); } .product-card__title a { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; color: var(--color-ink); transition: color var(--dur) var(--ease); } .product-card__title a:hover { color: var(--color-accent); } .product-card__rating { display: none; } .product-card__price { font-weight: 700; color: var(--color-ink); font-size: 1.0625rem; margin-top: auto; } .product-card__price del { font-weight: 400; color: var(--color-muted); font-size: var(--fs-small); } .product-card__price ins { text-decoration: none; color: var(--color-accent); } .product-card__cart { margin-top: auto; padding: 10px 18px; font-size: 0.8125rem; width: 100%; justify-content: center; white-space: nowrap; text-transform: none; letter-spacing: normal; } .products-grid .product-card__cart { font-size: 0.875rem; font-weight: 600; padding: 11px 28px; line-height: 1.4; border: none; } .swiper-nav-btn { width: 52px; height: 38px; display: flex; align-items: center; justify-content: center; background: var(--color-bg); border: 1px solid var(--color-border); border-radius: 100px; color: var(--color-ink); box-shadow: var(--shadow-sm); flex-shrink: 0; transition: background var(--dur) var(--ease), border-color var(--dur) var(--ease), color var(--dur) var(--ease); } .swiper-nav-btn:hover, .swiper-nav-btn:focus-visible { background: var(--color-accent); border-color: var(--color-accent); color: #fff; } .swiper-nav-btn.swiper-button-disabled { opacity: 0.35; pointer-events: none; } .inspiration { background: var(--color-ink); } .inspiration--no-bg .inspiration__frame { background: linear-gradient(135deg, #1f232b 0%, #13161b 100%); } .inspiration__frame { position: relative; aspect-ratio: 16 / 7; min-height: 400px; } .inspiration__bg-wrap { position: absolute; inset: 0; overflow: hidden; z-index: 0; } .inspiration__bg { width: 100%; height: 100%; object-fit: cover; object-position: center; display: block; } .inspiration__overlay { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(0,0,0,0.68) 0%, rgba(0,0,0,0.32) 50%, rgba(0,0,0,0.08) 100%); pointer-events: none; z-index: 1; } .inspiration__inner { position: absolute; inset: 0; z-index: 2; display: flex; align-items: center; padding-inline: clamp(24px, 6vw, 96px); } .inspiration__intro { display: flex; flex-direction: column; gap: 22px; max-width: 400px; align-items: flex-start; } .inspiration__title { font-size: var(--fs-h2); color: #fff; } .inspiration__text { color: rgba(255, 255, 255, 0.75); font-size: 1rem; line-height: var(--lh-body); } .btn--ghost-light { background: transparent; border-color: rgba(255, 255, 255, 0.45); color: #fff; font-size: 0.75rem; font-weight: 700; letter-spacing: 0.6px; } .btn--ghost-light:hover { border-color: #fff; background: rgba(255, 255, 255, 0.1); color: #fff; } .hotspot { position: absolute; left: var(--hx, 50%); top: var(--hy, 50%); transform: translate(-50%, -50%); z-index: 10; overflow: visible; } @media (max-width: 768px) { .hotspot { display: none; } } .hotspot__pin { position: relative; width: 22px; height: 22px; border-radius: 50%; background: rgba(255, 255, 255, 0.9); display: flex; align-items: center; justify-content: center; cursor: pointer; transition: transform 0.2s var(--ease), background 0.2s var(--ease); box-shadow: 0 2px 8px rgba(0,0,0,0.3); } .hotspot__pin:hover, .hotspot__pin[aria-expanded="true"] { transform: scale(1.15); background: #fff; } .hotspot__dot { color: var(--color-accent); display: flex; align-items: center; justify-content: center; line-height: 1; } .hotspot__pulse { position: absolute; inset: -5px; border-radius: 50%; border: 1.5px solid rgba(255, 255, 255, 0.55); animation: hotspot-pulse 2.4s ease-out infinite; pointer-events: none; } @keyframes hotspot-pulse { 0% { transform: scale(1); opacity: 0.8; } 70% { transform: scale(1.6); opacity: 0; } 100% { transform: scale(1.6); opacity: 0; } } .hotspot__pin[aria-expanded="true"] .hotspot__pulse { animation-play-state: paused; opacity: 0; } .hotspot__popup { position: absolute; width: 220px; background: #fff; box-shadow: 0 8px 32px rgba(0,0,0,0.22); overflow: hidden; opacity: 0; visibility: hidden; pointer-events: none; transform: scale(0.94) translateY(4px); transition: opacity 0.2s var(--ease), visibility 0.2s var(--ease), transform 0.2s var(--ease); z-index: 9999; } .hotspot__popup.is-open { opacity: 1; visibility: visible; pointer-events: auto; transform: scale(1) translateY(0); } .hotspot { --popup-left: calc(100% + 14px); --popup-right: auto; --popup-top: 50%; --popup-translate-y: -50%; } .hotspot__popup { top: var(--popup-top); left: var(--popup-left); right: var(--popup-right); transform: scale(0.92) translateY(calc(var(--popup-translate-y) + 6px)); } .hotspot__popup.is-open { transform: scale(1) translateY(var(--popup-translate-y)); } .hotspot--left { --popup-left: auto; --popup-right: calc(100% + 14px); } .hotspot--vbottom { --popup-top: auto; --popup-translate-y: 0; } .hotspot--vbottom .hotspot__popup { top: auto; bottom: calc(100% + 14px); } .hotspot--vtop { --popup-translate-y: 0; } .hotspot--vtop .hotspot__popup { top: calc(100% + 14px); } .hotspot__popup-img { display: block; width: 100%; aspect-ratio: 4/3; overflow: hidden; background: var(--color-bg-soft); } .hotspot__popup-img img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.3s var(--ease); } .hotspot__popup-img:hover img { transform: scale(1.04); } .hotspot__popup-img--placeholder { display: flex; align-items: center; justify-content: center; color: var(--color-muted); width: 100%; aspect-ratio: 4/3; background: var(--color-bg-soft); } .hotspot__popup-body { padding: 14px 16px 16px; display: flex; flex-direction: column; gap: 6px; } .hotspot__popup-title { font-family: var(--font-heading); font-size: 0.875rem; line-height: 1.3; } .hotspot__popup-title a { color: var(--color-ink); transition: color var(--dur) var(--ease); } .hotspot__popup-title a:hover { color: var(--color-accent); } .hotspot__popup-price { font-size: 0.875rem; font-weight: 700; color: var(--color-ink); } .hotspot__popup-price .price { font-size: inherit; font-weight: inherit; } .hotspot__popup-link { display: inline-flex; align-items: center; gap: 5px; font-size: 0.6875rem; font-weight: 700; letter-spacing: 0.5px; text-transform: uppercase; color: var(--color-accent); margin-top: 4px; transition: gap var(--dur) var(--ease); } .hotspot__popup-link:hover { gap: 8px; } @media (max-width: 768px) { .inspiration__frame { aspect-ratio: 4 / 3; min-height: 320px; } .inspiration__inner { padding-inline: 20px; } .inspiration__intro { max-width: 260px; } .hotspot__popup { width: 180px; } .hotspot__popup-body { padding: 10px 12px 12px; } } .testimonials { padding-block: clamp(48px, 6vw, 80px); } .testimonials__head { display: grid; grid-template-columns: 1fr 1fr; gap: 48px; align-items: flex-start; margin-bottom: clamp(28px, 4vw, 48px); } .testimonials__head-left .section-heading { margin-bottom: 0; } .testimonials__head-right { display: flex; flex-direction: column; gap: 20px; padding-top: 4px; } .testimonials__intro { font-size: var(--fs-small); color: var(--color-muted); line-height: var(--lh-body); } .testimonials__nav { display: flex; gap: 8px; } .testimonials-swiper { overflow: hidden; } .testimonial-card { background: var(--color-bg); padding: 28px; height: 100%; display: flex; flex-direction: column; gap: 16px; } .testimonial-card__top { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; } .testimonial-card__author-info { display: flex; flex-direction: column; gap: 4px; } .testimonial-card__author { font-style: normal; font-weight: 700; font-size: 0.9375rem; color: var(--color-ink); } .testimonial-card__city { font-size: var(--fs-small); color: var(--color-muted); } .testimonial-card__stars { display: flex; gap: 2px; margin-top: 2px; } .testimonial-card__quote-icon { font-family: Georgia, serif; font-size: 4rem; line-height: 1; color: var(--color-accent); opacity: 0.5; user-select: none; flex-shrink: 0; } .testimonial-card__text { font-size: var(--fs-small); color: var(--color-muted); line-height: var(--lh-body); flex: 1; } .brands { padding-block: clamp(40px, 5vw, 72px); } .brands__head { display: flex; align-items: center; justify-content: space-between; margin-bottom: clamp(24px, 3vw, 40px); } .brands__head .section-heading { margin-bottom: 0; } .brands__nav { display: flex; gap: 8px; flex-shrink: 0; } .brands-swiper { overflow: hidden; } .brands__slide { display: flex; align-items: center; justify-content: center; height: clamp(88px, 7vw, 108px); border: 1px solid rgba(30, 36, 51, 0.07); transition: border-color var(--dur) var(--ease); } .brands__slide:hover { border-color: rgba(2, 183, 131, 0.32); } .brands__brand-link { display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; padding: 10px 14px; text-decoration: none; opacity: 0.72; transition: opacity var(--dur) var(--ease), transform var(--dur) var(--ease); } .brands__brand-link:hover { opacity: 1; transform: scale(1.03); } .brands__logo { max-height: 72%; max-width: 88%; width: auto; height: auto; object-fit: contain; filter: grayscale(100%); transition: filter var(--dur) var(--ease); } .brands__brand-link:hover .brands__logo { filter: grayscale(0%); } .brands__name { font-family: var(--font-heading); font-size: clamp(1.1875rem, 1.3vw, 1.375rem); line-height: 1.2; color: var(--color-muted); text-align: center; text-wrap: balance; transition: color var(--dur) var(--ease); } .brands__brand-link:hover .brands__name { color: var(--color-ink); } .blog-preview__header { display: flex; align-items: flex-end; justify-content: space-between; margin-bottom: clamp(24px, 4vw, 48px); gap: 24px; } .blog-preview__header .section-heading { margin-bottom: 0; } .blog-preview__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--gap); align-items: stretch; } .blog-preview__grid > li { display: flex; } .blog-card--feature { width: 100%; background: #fff; border-color: rgba(30, 36, 51, 0.07); transition: transform 0.35s var(--ease), box-shadow 0.35s var(--ease), border-color 0.35s var(--ease); } .blog-card--feature:hover { transform: translateY(-4px); box-shadow: 0 14px 38px rgba(30, 36, 51, 0.12); border-color: rgba(74, 112, 248, 0.28); } .blog-card--feature .blog-card__thumb { position: relative; aspect-ratio: 3 / 2; background: var(--color-bg-soft); } .blog-card--feature .blog-card__thumb::after { content: ""; position: absolute; inset: auto 0 0 0; height: 45%; background: linear-gradient(to top, rgba(21, 23, 29, 0.34), transparent); opacity: 0; transition: opacity 0.35s var(--ease); pointer-events: none; } .blog-card--feature:hover .blog-card__thumb::after { opacity: 1; } .blog-card__thumb-fallback { display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; color: rgba(30, 36, 51, 0.18); background: linear-gradient(135deg, #eef1f7, #e1e5ef); } .blog-card__chip { position: absolute; left: 14px; bottom: 14px; z-index: 2; font-size: 0.625rem; font-weight: 700; letter-spacing: 0.8px; text-transform: uppercase; color: var(--color-ink); background: rgba(255, 255, 255, 0.94); backdrop-filter: blur(6px); padding: 5px 11px; border-radius: var(--radius-pill); box-shadow: 0 2px 8px rgba(30, 36, 51, 0.1); } .blog-card--feature .blog-card__body { padding: 20px 22px 22px; gap: 11px; } .blog-card--feature .blog-card__meta { font-size: 0.75rem; letter-spacing: 0.2px; } .blog-card__reading { color: var(--color-accent); font-weight: 600; } .blog-card--feature .blog-card__title { font-size: clamp(1.0625rem, 1.3vw, 1.25rem); line-height: 1.32; } .blog-card--feature .blog-card__excerpt { display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; } .blog-card__more { display: inline-flex; align-items: center; gap: 7px; margin-top: auto; padding-top: 4px; font-size: 0.6875rem; font-weight: 700; letter-spacing: 0.9px; text-transform: uppercase; color: var(--color-accent); text-decoration: none; white-space: nowrap; transition: color var(--dur) var(--ease); } .blog-card__more svg { flex-shrink: 0; transition: transform var(--dur) var(--ease); } .blog-card__more:hover { color: var(--color-accent-soft); } .blog-card__more:hover svg { transform: translateX(4px); } .home-newsletter { position: relative; padding-block: clamp(64px, 8vw, 120px); background: var(--color-ink); background-image: var(--newsletter-bg); background-size: cover; background-position: center; } .home-newsletter__overlay { position: absolute; inset: 0; background: rgba(8, 34, 120, 0.72); } .home-newsletter__inner { position: relative; z-index: 1; display: flex; flex-direction: column; align-items: center; gap: 32px; text-align: center; } .home-newsletter__title { font-size: clamp(1.6rem, 3.5vw, 2.6rem); color: #fff; max-width: 600px; line-height: 1.15; } .home-newsletter__form { display: flex; flex-direction: column; align-items: center; gap: 12px; width: 100%; max-width: 560px; } .home-newsletter__row { display: flex; width: 100%; } .home-newsletter__input { flex: 1; height: 52px; padding: 0 22px; border: 1.5px solid rgba(255, 255, 255, 0.25); border-right: none; border-radius: var(--radius-pill) 0 0 var(--radius-pill); background: rgba(255, 255, 255, 0.08); font-size: 0.9375rem; color: #fff; transition: border-color var(--dur) var(--ease), background var(--dur) var(--ease); } .home-newsletter__input::placeholder { color: rgba(255, 255, 255, 0.45); } .home-newsletter__input:focus { outline: none; border-color: var(--color-accent); background: rgba(255, 255, 255, 0.12); } .home-newsletter__btn { height: 52px; padding: 0 28px; border: 1.5px solid var(--color-accent); border-radius: 0 var(--radius-pill) var(--radius-pill) 0; background: var(--color-accent); color: #fff; font-size: 0.75rem; font-weight: 700; letter-spacing: 0.8px; text-transform: uppercase; white-space: nowrap; display: inline-flex; align-items: center; gap: 6px; cursor: pointer; transition: background var(--dur) var(--ease), border-color var(--dur) var(--ease); } .home-newsletter__btn:hover { background: var(--color-accent-soft); border-color: var(--color-accent-soft); } .home-newsletter__msg { font-size: var(--fs-small); padding: 8px 12px; border-radius: var(--radius); } .home-newsletter__msg--ok { background: rgba(100, 180, 100, 0.1); color: #2e7d32; } .home-newsletter__msg--err { background: rgba(200, 60, 60, 0.1); color: #c0392b; } .posts-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--gap); } @media ( max-width: 960px ) { .hero-slide__inner { grid-template-columns: 1fr; } .hero-slide__deco { display: none; } .hero-slide { min-height: clamp(360px, 50vh, 560px); min-height: clamp(360px, 50svh, 560px); } .usp-band__grid { grid-template-columns: repeat(2, 1fr); } .testimonials__head { grid-template-columns: 1fr; gap: 16px; } .cta-band__inner { flex-direction: column; text-align: center; align-items: center; } .inspiration__inner { grid-template-columns: 1fr; } .inspiration__products { grid-template-columns: repeat(3, 1fr); } .inspiration__products li:nth-child(2) { margin-top: 0; } .blog-preview__grid { grid-template-columns: repeat(2, 1fr); } .posts-grid { grid-template-columns: repeat(2, 1fr); } } .woo-breadcrumb { margin-bottom: 24px; } .woo-breadcrumb ol { display: flex; flex-wrap: wrap; align-items: center; gap: 4px; gap: 6px; list-style: none; } .woo-breadcrumb li { display: inline-flex; align-items: center; gap: 6px; font-size: var(--fs-small); color: var(--color-muted); } .woo-breadcrumb a { color: var(--color-muted); transition: color var(--dur) var(--ease); } .woo-breadcrumb a:hover { color: var(--color-accent); } .woo-breadcrumb li:last-child { color: var(--color-ink); font-weight: 500; } .shop-hero { padding-block: clamp(28px, 3vw, 44px); } .shop-hero__inner { display: flex; flex-direction: column; gap: 8px; } .shop-hero__title { font-size: var(--fs-h2); color: var(--color-ink); } .cat-hero { position: relative; padding-block: clamp(40px, 5vw, 72px); background: var(--color-bg-soft); } .cat-hero--has-image { background: var(--color-ink); background-image: var(--cat-hero-bg); background-size: cover; background-position: center; min-height: 260px; } .cat-hero__overlay { position: absolute; inset: 0; background: rgba(0, 0, 0, 0.5); } .cat-hero__inner { position: relative; z-index: 1; display: flex; flex-direction: column; gap: 10px; } .cat-hero--has-image .woo-breadcrumb a, .cat-hero--has-image .woo-breadcrumb li { color: rgba(255, 255, 255, 0.7); } .cat-hero--has-image .woo-breadcrumb li:last-child { color: #fff; } .cat-hero__title { font-size: var(--fs-h2); color: var(--color-ink); } .cat-hero--has-image .cat-hero__title { color: #fff; } .cat-hero__desc { font-size: 1rem; color: var(--color-muted); max-width: 540px; } .cat-hero--has-image .cat-hero__desc { color: rgba(255, 255, 255, 0.8); } .archive-shop__body { padding-block: clamp(32px, 4vw, 56px); } .shop-bar { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding-bottom: 24px; border-bottom: 1px solid var(--color-border); margin-bottom: 32px; flex-wrap: wrap; } .woocommerce-result-count { font-size: var(--fs-small); color: var(--color-muted); } .woocommerce-ordering select { height: 40px; padding: 0 36px 0 14px; border: 1px solid var(--color-border); border-radius: var(--radius); background: var(--color-bg); color: var(--color-ink); font-size: var(--fs-small); cursor: pointer; appearance: none; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%237A726B' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: right 12px center; transition: border-color var(--dur) var(--ease); } .woocommerce-ordering select:focus { outline: none; border-color: var(--color-accent); } .products-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: var(--gap); list-style: none; } .grid-blog-card { display: flex; flex-direction: column; height: 100%; min-height: 320px; border-radius: var(--radius); overflow: hidden; } .grid-blog-card__inner { position: relative; display: flex; flex-direction: column; justify-content: flex-end; flex: 1; padding: 20px; text-decoration: none; background-color: var(--color-ink); background-size: cover; background-position: center; border-radius: var(--radius); overflow: hidden; } .grid-blog-card__overlay { position: absolute; inset: 0; background: linear-gradient(to top, rgba(0,0,0,.7) 0%, rgba(0,0,0,.2) 55%, transparent 100%); pointer-events: none; } .grid-blog-card__badge { position: absolute; top: 12px; left: 12px; display: inline-block; padding: 3px 10px; background: var(--color-accent); color: #fff; font-family: var(--font-body); font-size: 0.6875rem; font-weight: 700; letter-spacing: 0.06em; text-transform: uppercase; border-radius: 100px; } .grid-blog-card__body { position: relative; z-index: 1; display: flex; flex-direction: column; gap: 8px; } .grid-blog-card__title { margin: 0; font-family: var(--font-heading); font-size: clamp(0.9375rem, 1.3vw, 1.0625rem); font-weight: var(--fw-heading); line-height: 1.3; color: #fff; } .grid-blog-card__cta { display: inline-flex; align-items: center; gap: 5px; font-family: var(--font-body); font-size: 0.8125rem; font-weight: 700; color: #fff; letter-spacing: 0.04em; text-transform: uppercase; } .grid-blog-card__cta::after { content: '→'; } .product-card-wrap { display: flex; } .product-card-wrap .product-card { width: 100%; } .product-card__sale-pct { position: absolute; top: 12px; right: 12px; background: #e53935; color: #fff; font-size: 11px; font-weight: 700; padding: 4px 8px; border-radius: var(--radius-pill); } .product-card__cart.added::after { content: ' ✓'; } .btn--sm { padding: 10px 18px; font-size: 0.8125rem; } .woo-pagination { display: flex; justify-content: center; gap: 6px; flex-wrap: wrap; padding-top: 40px; } .woo-pagination .page-numbers { display: inline-flex; align-items: center; justify-content: center; min-width: 40px; height: 40px; padding-inline: 6px; border: 1px solid var(--color-border); border-radius: var(--radius-pill); font-size: var(--fs-small); font-weight: 500; color: var(--color-ink); transition: background var(--dur) var(--ease), border-color var(--dur) var(--ease), color var(--dur) var(--ease); } .woo-pagination .page-numbers:hover { border-color: var(--color-accent); color: var(--color-accent); } .woo-pagination .page-numbers.current { background: var(--color-accent); border-color: var(--color-accent); color: #fff; } .woo-pagination .page-numbers.prev, .woo-pagination .page-numbers.next { min-width: 64px; padding-inline: 20px; } .single-product-page { padding-block: 0; overflow-x: clip; } .single-product-wrap { width: 100%; max-width: 100%; } .single-product-main { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(24px, 3vw, 40px); align-items: start; width: 100%; max-width: var(--container); margin-inline: auto; padding-inline: var(--page-gutter); margin-bottom: 0; box-sizing: border-box; } .sp-gallery-premium { position: relative; background: #fff; padding: clamp(28px, 4vw, 48px) clamp(16px, 2vw, 24px); padding-left: var(--page-gutter); margin-left: calc(-1 * var(--page-gutter) + var(--gap)); display: flex; flex-direction: column; justify-content: center; overflow-x: clip; overflow-clip-margin: 16px; min-width: 0; } .sp-gallery-premium .woocommerce-product-gallery { position: relative; width: 100%; max-width: min(720px, 100%); margin-inline: auto; } .sp-gallery-premium .woocommerce-product-gallery .flex-direction-nav { list-style: none; margin: 0; padding: 0; } .sp-gallery-premium .woocommerce-product-gallery .flex-direction-nav a { position: absolute; top: 50%; z-index: 6; display: flex; align-items: center; justify-content: center; width: 56px; height: 40px; margin-top: -20px; padding: 0; background: rgba(255, 255, 255, 0.45); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); color: var(--color-ink); text-decoration: none; border: 1px solid rgba(30, 36, 51, 0.14); border-radius: var(--radius-pill); box-shadow: 0 4px 20px rgba(30, 36, 51, 0.06); opacity: 1; transition: background var(--dur) var(--ease), border-color var(--dur) var(--ease), color var(--dur) var(--ease), opacity var(--dur) var(--ease); } .sp-gallery-premium .woocommerce-product-gallery .flex-direction-nav a svg { width: 18px; height: 18px; stroke-width: 1.5; } .sp-gallery-premium .woocommerce-product-gallery .flex-direction-nav a:hover { background: rgba(255, 255, 255, 0.72); border-color: rgba(30, 36, 51, 0.22); color: var(--color-ink); } .sp-gallery-premium .woocommerce-product-gallery .flex-direction-nav .flex-prev { left: 12px; } .sp-gallery-premium .woocommerce-product-gallery .flex-direction-nav .flex-next { right: 12px; } .sp-gallery-premium .woocommerce-product-gallery .flex-direction-nav .flex-disabled { opacity: 0.3; cursor: default; } .sp-gallery-premium .flex-viewport { overflow: hidden; background: transparent; padding: 0; border: none; } .sp-gallery-premium .woocommerce-product-gallery__image { display: flex; align-items: center; justify-content: center; height: clamp(360px, 55vh, 560px); height: clamp(360px, 55svh, 560px); } .sp-gallery-premium .woocommerce-product-gallery__image > a { display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; } .sp-gallery-premium .woocommerce-product-gallery__image img { width: 100%; height: 100%; max-height: none; object-fit: contain; margin-inline: auto; } .sp-gallery-premium .flex-viewport, .sp-gallery-premium .woocommerce-product-gallery__wrapper { height: clamp(360px, 55vh, 560px) !important; height: clamp(360px, 55svh, 560px) !important; } .sp-gallery-premium .woocommerce-product-gallery__trigger { position: absolute; top: 8px; right: 8px; z-index: 10; width: 40px; height: 40px; display: flex; align-items: center; justify-content: center; background: rgba(255, 255, 255, 0.92); border: none; border-radius: 50%; color: var(--color-ink); transition: background var(--dur) var(--ease), color var(--dur) var(--ease); } .sp-gallery-premium .woocommerce-product-gallery__trigger:hover { background: var(--color-accent); color: #fff; } .sp-gallery-premium .flex-control-thumbs { display: flex; flex-wrap: nowrap; gap: 8px; margin: 16px auto 0; list-style: none; max-width: min(720px, 100%); width: 100%; overflow-x: auto; scrollbar-width: none; -ms-overflow-style: none; -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 14px, #000 calc(100% - 14px), transparent 100%); mask-image: linear-gradient(90deg, transparent 0, #000 14px, #000 calc(100% - 14px), transparent 100%); scroll-behavior: smooth; scroll-snap-type: x proximity; overscroll-behavior-x: contain; } .sp-gallery-premium .flex-control-thumbs::-webkit-scrollbar { width: 0; height: 0; display: none; } .sp-gallery-premium .flex-control-thumbs li { scroll-snap-align: start; } .sp-gallery-premium .flex-control-thumbs li { flex: 0 0 96px; width: 96px; } .sp-gallery-premium .flex-control-thumbs li img { width: 96px; height: 96px; object-fit: cover; cursor: pointer; border: none; opacity: 0.5; transition: opacity var(--dur) var(--ease); } .sp-gallery-premium .flex-control-thumbs li img.flex-active { opacity: 1; } .single-product-info { padding: clamp(32px, 5vw, 56px) 0; align-self: start; min-width: 0; } @media ( min-width: 901px ) { .single-product-gallery { position: sticky; top: 96px; align-self: start; } } .single-product-info .product_title { font-size: var(--fs-h2); font-family: var(--font-heading); color: var(--color-ink); margin-bottom: 10px; } .sp-breadcrumb { margin: 0 0 12px; } .sp-breadcrumb__list { display: flex; align-items: center; flex-wrap: nowrap; gap: 0; list-style: none; margin: 0; padding: 0; overflow: hidden; } .sp-breadcrumb__list li { display: inline-flex; align-items: center; font-size: 0.75rem; color: var(--color-muted); white-space: nowrap; flex-shrink: 0; min-width: 0; } .sp-breadcrumb__list li:last-child { flex-shrink: 1; overflow: hidden; text-overflow: ellipsis; color: var(--color-ink); } .sp-breadcrumb__list li + li::before { content: '›'; margin: 0 7px; opacity: 0.4; flex-shrink: 0; } .sp-breadcrumb__list a { color: inherit; text-decoration: none; transition: color var(--dur) var(--ease); } .sp-breadcrumb__list a:hover { color: var(--color-accent); } .single-product-info .woocommerce-product-rating { display: flex; align-items: center; gap: 8px; margin-bottom: 16px; } .single-product-info .woocommerce-review-link { font-size: var(--fs-small); color: var(--color-muted); transition: color var(--dur) var(--ease); } .single-product-info .woocommerce-review-link:hover { color: var(--color-accent); } .single-product-info .price { font-size: 1.6rem; font-weight: 700; color: var(--color-ink); margin-bottom: 20px; } .single-product-info .price del { font-size: 1.1rem; font-weight: 400; color: var(--color-muted); margin-right: 8px; } .single-product-info .price ins { text-decoration: none; color: var(--color-accent); } .single-product-info .woocommerce-product-details__short-description { font-size: 0.9375rem; color: var(--color-muted); line-height: var(--lh-body); margin-bottom: 12px; } .woocommerce-product-details__short-description.sp-desc-collapsed { max-height: 130px; overflow: hidden; position: relative; margin-bottom: 0; } .woocommerce-product-details__short-description.sp-desc-collapsed::after { content: ''; position: absolute; bottom: 0; left: 0; right: 0; height: 48px; background: linear-gradient(to bottom, transparent, var(--color-bg)); pointer-events: none; } .sp-read-more-btn { display: inline-flex; align-items: center; gap: 4px; background: none; border: none; padding: 0; margin-bottom: 12px; font-size: 0.875rem; font-weight: 600; color: var(--color-accent); cursor: pointer; text-decoration: underline; text-underline-offset: 3px; } .sp-read-more-btn:hover { opacity: .8; } .single-product-info .cart { display: flex; gap: 12px; align-items: center; margin-bottom: 16px; } .sp-fbt-outer { max-width: var(--container); margin-inline: auto; padding-inline: var(--page-gutter); box-sizing: border-box; } .sp-fbt { margin: 20px 0 8px; padding: 20px; border: 1px solid var(--color-border); border-radius: 8px; background: var(--color-bg); overflow: hidden; transform: translateZ(0); } .sp-fbt__title { font-family: var(--font-heading); font-size: clamp(1.05rem, 1.6vw, 1.25rem); font-weight: var(--fw-heading); margin: 0 0 16px; color: var(--color-ink); } .sp-fbt__items { display: flex; align-items: stretch; gap: 10px; overflow-x: auto; padding-bottom: 4px; scrollbar-width: thin; } .sp-fbt__item { flex: 1 1 100px; min-width: 108px; } .sp-fbt__item--main { flex: 0 0 auto; min-width: 100px; max-width: 130px; } .sp-fbt__item-label { display: flex; flex-direction: column; align-items: center; gap: 8px; height: 100%; margin: 0; cursor: pointer; text-align: center; } .sp-fbt__check { width: 16px; height: 16px; accent-color: var(--color-accent); flex-shrink: 0; } .sp-fbt__check--main { opacity: 0.65; } .sp-fbt__plus { flex: 0 0 auto; align-self: center; font-size: 1.25rem; font-weight: 600; color: var(--color-muted); line-height: 1; } .sp-fbt__thumb { display: block; width: 100%; aspect-ratio: 1; background: #fff; overflow: hidden; } .sp-fbt__img { display: block; width: 100%; height: 100%; object-fit: contain; } .sp-fbt__info { display: flex; flex-direction: column; gap: 4px; width: 100%; } .sp-fbt__name { font-size: 0.6875rem; line-height: 1.35; color: var(--color-ink); display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; } .sp-fbt__price { font-size: 0.75rem; font-weight: 600; color: var(--color-ink); } .sp-fbt__price del { color: var(--color-muted); font-weight: 400; } .sp-fbt__price ins { text-decoration: none; } .sp-fbt__footer { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px 16px; margin-top: 18px; padding-top: 16px; border-top: 1px solid var(--color-border); } .sp-fbt__total-wrap { margin: 0; font-size: 0.875rem; color: var(--color-muted); flex: 1 1 auto; } .sp-fbt__total { color: var(--color-ink); font-size: 1rem; } .sp-fbt__add-all { flex: 0 0 auto; min-height: 48px; padding-inline: 36px; } @media (max-width: 600px) { .sp-fbt__footer { flex-direction: column; align-items: center; } } .sp-fbt__notice { width: 100%; margin: 0; font-size: 0.8125rem; color: var(--color-accent-soft); } .sp-fbt__notice.is-error { color: #b3261e; } .sp-fbt__carousel { display: flex; align-items: center; gap: 6px; flex: 1 1 auto; min-width: 0; overflow: hidden; } .sp-fbt__carousel-viewport { flex: 1 1 auto; min-width: 0; max-width: 100%; overflow-x: auto; overflow-y: hidden; scrollbar-width: none; scroll-behavior: smooth; } .sp-fbt__carousel-viewport::-webkit-scrollbar { display: none; } .sp-fbt__carousel-track { display: flex; gap: 10px; touch-action: pan-x; } .sp-fbt__nav { flex-shrink: 0; width: 32px; height: 32px; display: flex; align-items: center; justify-content: center; background: var(--color-ink); border: none; border-radius: 50%; padding: 0; color: #fff; cursor: pointer; transition: background .15s; font-size: 0; } .sp-fbt__nav::before { content: ''; width: 7px; height: 7px; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor; border-radius: 1px; transform: translateX(-1px) rotate(-45deg); } .sp-fbt__nav--prev::before { transform: translateX(1px) rotate(135deg); } .sp-fbt__nav:hover { background: var(--color-accent); } .sp-fbt__nav:disabled { opacity: .35; cursor: default; pointer-events: none; } .sp-fbt[data-slider="1"] .sp-fbt__items { align-items: center; } .sp-fbt[data-slider="1"] .sp-fbt__thumb { width: 100%; aspect-ratio: 1; height: auto; max-height: 240px; } .sp-fbt[data-slider="1"] .sp-fbt__img { width: 100%; height: 100%; object-fit: contain; } @media (max-width: 640px) { .sp-fbt[data-slider="1"] .sp-fbt__items { flex-wrap: wrap; align-items: stretch; gap: 8px; overflow-x: hidden; } .sp-fbt[data-slider="1"] .sp-fbt__items > .sp-fbt__plus { display: none; } .sp-fbt[data-slider="1"] .sp-fbt__item--main { flex: 0 0 100%; max-width: 100%; min-width: 0; } .sp-fbt[data-slider="1"] .sp-fbt__item--main .sp-fbt__item-label { flex-direction: row; align-items: center; text-align: left; gap: 10px; } .sp-fbt[data-slider="1"] .sp-fbt__item--main .sp-fbt__thumb { width: 72px; height: 72px; aspect-ratio: unset; flex-shrink: 0; margin-inline: 0; } .sp-fbt[data-slider="1"] .sp-fbt__carousel { flex: 0 0 100%; min-width: 0; } .sp-fbt[data-slider="1"] .sp-fbt__nav { display: none; } .sp-fbt[data-slider="1"] .sp-fbt__carousel-viewport { overflow-x: scroll; scroll-snap-type: x mandatory; overscroll-behavior-x: contain; scrollbar-width: none; width: 100%; } .sp-fbt[data-slider="1"] .sp-fbt__carousel-viewport::-webkit-scrollbar { display: none; } .sp-fbt[data-slider="1"] .sp-fbt__carousel .sp-fbt__item { scroll-snap-align: start; } .sp-fbt[data-slider="1"] .sp-fbt__carousel .sp-fbt__thumb { width: 140px; height: 140px; aspect-ratio: unset; margin-inline: auto; } .sp-fbt[data-slider="1"] .sp-fbt__gift-row { flex: 0 0 100%; min-width: 0; } .sp-fbt[data-slider="1"] .sp-fbt__gift-row > .sp-fbt__plus { display: none; } .sp-fbt[data-slider="1"] .sp-fbt__item--gift { flex: 0 0 100%; width: 100%; max-width: 100%; flex-direction: row; align-items: center; gap: 12px; padding: 30px 12px 12px; position: relative; } .sp-fbt[data-slider="1"] .sp-fbt__gift-ribbon { position: absolute; top: 8px; left: 12px; } .sp-fbt[data-slider="1"] .sp-fbt__thumb--gift { width: 80px !important; height: 80px !important; aspect-ratio: unset !important; max-height: 80px !important; flex-shrink: 0; margin-inline: 0; } .sp-fbt[data-slider="1"] .sp-fbt__item--gift .sp-fbt__info { flex: 1; min-width: 0; } } .sp-fbt__gift-row { display: flex; align-items: center; gap: 10px; flex-shrink: 0; } .sp-fbt__item--gift { flex: 0 0 120px; min-width: 120px; max-width: 120px; position: relative; background: #f9fafd; border: 1px dashed var(--color-accent); padding: 8px 6px 6px; display: flex; flex-direction: column; align-items: center; gap: 6px; } .sp-fbt__gift-ribbon { display: inline-block; background: var(--color-accent); color: #fff; font-size: .6rem; font-weight: 700; letter-spacing: .08em; padding: 2px 7px; border-radius: var(--radius-pill, 999px); text-transform: uppercase; line-height: 1.6; } .sp-fbt__thumb--gift { background: transparent; } .sp-fbt__gift-cond { display: block; font-size: .62rem; color: var(--color-muted); font-style: italic; line-height: 1.3; margin-top: 2px; } .sp-fbt__price--gift del { color: var(--color-muted); font-weight: 400; font-size: .68rem; } .sp-fbt__price--gift ins { text-decoration: none; color: #4a7c59; font-weight: 700; } .sp-fbt__promo-badge { width: fit-content; max-width: 100%; margin: 6px 0 0; padding: 5px 14px; background: #e8ecf5; border-left: 3px solid var(--color-accent); border-radius: 0 var(--radius-sm, 8px) var(--radius-sm, 8px) 0; font-size: .8125rem; color: var(--color-ink); font-style: italic; } .sp-whatsapp-btn { display: flex; align-self: flex-start; align-items: center; justify-content: center; gap: 8px; width: fit-content; max-width: 100%; clear: both; box-sizing: border-box; margin: 18px 0; padding: 10px 20px; border: 1.5px solid #25d366; border-radius: var(--radius-pill); background: #25d366; color: #fff; font-size: 0.85rem; font-weight: 600; line-height: 1; text-decoration: none; cursor: pointer; transition: background var(--dur) var(--ease), border-color var(--dur) var(--ease), transform var(--dur) var(--ease); } .sp-whatsapp-btn:hover, .sp-whatsapp-btn:focus-visible { background: #1eb85a; border-color: #1eb85a; color: #fff; transform: translateY(-1px); } .sp-whatsapp-btn svg { width: 18px; height: 18px; flex-shrink: 0; } .sp-benefits { list-style: none; margin: 28px 0 24px; padding: 0; display: flex; flex-direction: column; gap: 12px; } .sp-benefit { display: flex; align-items: center; gap: 10px; } .sp-benefit__icon { flex-shrink: 0; display: flex; align-items: center; justify-content: center; color: var(--color-accent); } .sp-benefit__icon svg { display: block; width: 16px; height: 16px; } .sp-benefit__text { font-size: 0.8125rem; line-height: 1.45; color: var(--color-muted); } .qty-stepper { display: inline-flex; align-items: center; height: 52px; border: 1.5px solid var(--color-border); border-radius: var(--radius-pill); overflow: hidden; background: #fff; flex-shrink: 0; } .qty-stepper__btn { display: flex; align-items: center; justify-content: center; width: 44px; height: 100%; padding: 0; background: var(--color-bg-soft); border: none; font-size: 1.25rem; line-height: 1; color: var(--color-ink); cursor: pointer; transition: background var(--dur) var(--ease), color var(--dur) var(--ease); flex-shrink: 0; } .qty-stepper__btn:hover { background: var(--color-accent); color: #fff; } .qty-stepper .qty, .qty-stepper input.qty, .qty-stepper input.input-text.qty { width: 56px !important; min-width: 56px; height: 100% !important; padding: 0 !important; text-align: center; font-family: var(--font-body); font-size: 1rem; font-weight: 600; color: var(--color-ink); background: #fff !important; border: none !important; border-left: 1px solid var(--color-border) !important; border-right: 1px solid var(--color-border) !important; border-radius: 0 !important; box-shadow: none !important; -moz-appearance: textfield; } .qty-stepper .qty::-webkit-outer-spin-button, .qty-stepper .qty::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; } .single-product-info .quantity { display: flex; align-items: center; } .single-product-info .single_add_to_cart_button, .single-product-info .button.single_add_to_cart_button { flex: 1; display: inline-flex !important; align-items: center; justify-content: center; height: 52px !important; min-height: 52px; padding: 0 28px !important; font-family: var(--font-body) !important; font-size: 0.875rem !important; font-weight: 600 !important; letter-spacing: 0.3px; text-transform: uppercase; color: #fff !important; background: var(--color-accent) !important; border: 1px solid var(--color-accent) !important; border-radius: var(--radius-pill) !important; box-shadow: none !important; cursor: pointer; transition: background var(--dur) var(--ease), color var(--dur) var(--ease); } .single-product-info .single_add_to_cart_button:hover, .single-product-info .button.single_add_to_cart_button:hover { background: transparent !important; color: var(--color-accent) !important; } .single-product-info .cart:has(.bwmp-wrap), .single-product-info .woocommerce-variation-add-to-cart:has(.bwmp-wrap) { flex-wrap: wrap; align-items: stretch; row-gap: 14px; } .single-product-info .cart:has(.bwmp-wrap) .bwmp-wrap, .single-product-info .cart:has(.bwmp-wrap) .bwmp-disclaimer, .single-product-info .cart:has(.bwmp-wrap) .single_add_to_cart_button, .single-product-info .cart:has(.bwmp-wrap) .button.single_add_to_cart_button, .single-product-info .cart:has(.bwmp-wrap) .tbi_button_container2, .single-product-info .woocommerce-variation-add-to-cart:has(.bwmp-wrap) .bwmp-wrap, .single-product-info .woocommerce-variation-add-to-cart:has(.bwmp-wrap) .bwmp-disclaimer, .single-product-info .woocommerce-variation-add-to-cart:has(.bwmp-wrap) .single_add_to_cart_button, .single-product-info .woocommerce-variation-add-to-cart:has(.bwmp-wrap) .button.single_add_to_cart_button { flex: 1 1 100%; width: 100%; box-sizing: border-box; margin: 0; } .single-product-info .cart:has(.bwmp-wrap) .bwmp-wrap, .single-product-info .woocommerce-variation-add-to-cart:has(.bwmp-wrap) .bwmp-wrap { margin-bottom: 2px; } .single-product-info .woocommerce-variation-add-to-cart:has(.bwmp-wrap) .quantity { display: none !important; } .single-product-info .product_meta { font-size: var(--fs-small); color: var(--color-muted); border-top: 1px solid var(--color-border); padding-top: 20px; display: flex; flex-direction: column; gap: 6px; } .single-product-info .product_meta a { color: var(--color-ink); transition: color var(--dur) var(--ease); } .single-product-info .product_meta a:hover { color: var(--color-accent); } .single-product-wrap .onsale, .single-product-wrap span.onsale { display: none !important; } .sp-gallery-badges { position: absolute; top: clamp(20px, 3vw, 32px); left: var(--page-gutter); z-index: 4; display: flex; flex-direction: column; align-items: flex-start; gap: 6px; pointer-events: none; } .sp-head { margin-bottom: 10px; } .sp-cat { display: inline-block; font-size: 0.6875rem; font-weight: 700; letter-spacing: 0.1em; text-transform: uppercase; color: var(--color-accent); text-decoration: none; transition: color var(--dur) var(--ease); } .sp-cat:hover { color: var(--color-ink); } .sp-actions-row { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 20px; margin-bottom: 22px; padding-top: 4px; } .screen-reader-text { border: 0; clip: rect(1px, 1px, 1px, 1px); clip-path: inset(50%); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; word-wrap: normal !important; } .woocommerce *, .woocommerce-page * { box-sizing: border-box; } .woocommerce img, .woocommerce-page img { height: auto; max-width: 100%; } .woocommerce, .woocommerce-page { font-family: var(--font-body); color: var(--color-ink); } .woocommerce a.button, .woocommerce button.button, .woocommerce input.button, .woocommerce #respond input#submit, .woocommerce a.button.alt, .woocommerce button.button.alt, .woocommerce input.button.alt, .woocommerce button.button.wp-element-button { display: inline-flex; align-items: center; justify-content: center; padding: 11px 28px; background: var(--color-accent); color: #fff; border: none; border-radius: var(--radius-pill); font-family: var(--font-body); font-size: var(--fs-small); font-weight: 600; line-height: 1.4; cursor: pointer; text-decoration: none; transition: background var(--dur) var(--ease); box-shadow: none; } .woocommerce a.button:hover, .woocommerce button.button:hover, .woocommerce input.button:hover, .woocommerce #respond input#submit:hover, .woocommerce a.button.alt:hover, .woocommerce button.button.alt:hover, .woocommerce input.button.alt:hover { background: var(--color-accent-soft); color: #fff; text-decoration: none; } .woocommerce a.button.disabled, .woocommerce button.button:disabled, .woocommerce input.button:disabled { opacity: 0.5; cursor: not-allowed; } .woocommerce-message, .woocommerce-error, .woocommerce-info { list-style: none; padding: 14px 20px; margin: 0 0 20px; border-radius: var(--radius); font-size: var(--fs-small); line-height: 1.55; clear: both; } .woocommerce-message::before, .woocommerce-error li::before, .woocommerce-info::before { display: none !important; } .woocommerce-message { background: #f0fdf4; color: #15803d; } .woocommerce-error { background: #fef2f2; color: #b91c1c; } .woocommerce-info { background: var(--color-bg-soft); color: var(--color-muted); } .woocommerce-message a, .woocommerce-info a { color: var(--color-accent); font-weight: 500; text-decoration: none; } .woocommerce-message a:hover, .woocommerce-info a:hover { text-decoration: underline; } .woocommerce-info a.button, .woocommerce-info .button { background: none !important; border: none !important; padding: 0 !important; border-radius: 0 !important; box-shadow: none !important; color: var(--color-accent) !important; font-weight: 600; font-size: inherit; text-decoration: none !important; cursor: pointer; display: inline; } .woocommerce table.shop_table, .woocommerce-page table.shop_table { width: 100%; border-collapse: collapse; border: none; border-radius: 0; border-spacing: 0; margin: 0 0 24px; text-align: left; font-size: var(--fs-small); } .woocommerce table.shop_table th, .woocommerce-page table.shop_table th { padding: 10px 12px; font-weight: 600; color: var(--color-muted); font-size: 0.8125rem; text-transform: uppercase; letter-spacing: 0.4px; border-bottom: 2px solid var(--color-border); background: none; } .woocommerce table.shop_table td, .woocommerce-page table.shop_table td { padding: 12px; border-bottom: 1px solid var(--color-border); vertical-align: middle; color: var(--color-ink); background: none; } .woocommerce table.shop_table td:last-child, .woocommerce table.shop_table th:last-child { text-align: right; } .woocommerce form .form-row { padding: 0; margin: 0 0 16px; } .woocommerce-checkout form .form-row { margin: 0; padding: 0; } .woocommerce form .form-row label { display: block; font-size: var(--fs-small); font-weight: 600; color: var(--color-ink); margin-bottom: 6px; line-height: 1.4; } .woocommerce form .form-row label .required { color: var(--color-accent); text-decoration: none; } .woocommerce form .form-row input.input-text, .woocommerce form .form-row input[type="text"], .woocommerce form .form-row input[type="email"], .woocommerce form .form-row input[type="tel"], .woocommerce form .form-row input[type="password"], .woocommerce form .form-row input[type="number"], .woocommerce form .form-row textarea { width: 100%; padding: 12px 20px; border: 1.5px solid var(--color-border); border-radius: var(--radius-pill); font-size: 0.9375rem; font-family: var(--font-body); color: var(--color-ink); background: var(--color-bg); transition: border-color var(--dur) var(--ease), box-shadow var(--dur) var(--ease); box-shadow: none; height: auto; outline: none; line-height: 1.4; appearance: none; } .woocommerce form .form-row input.input-text:focus, .woocommerce form .form-row input[type="text"]:focus, .woocommerce form .form-row input[type="email"]:focus, .woocommerce form .form-row input[type="tel"]:focus, .woocommerce form .form-row input[type="password"]:focus, .woocommerce form .form-row textarea:focus { border-color: var(--color-accent); box-shadow: 0 0 0 3px rgba(2, 183, 131, 0.08); outline: none; } .woocommerce form .form-row textarea { border-radius: 4px; min-height: 100px; resize: vertical; } .woocommerce form .form-row.woocommerce-invalid input.input-text { border-color: #ef4444; } .woocommerce .quantity { display: inline-flex; align-items: center; border: 1.5px solid var(--color-border); border-radius: var(--radius-pill); overflow: hidden; background: var(--color-bg); } .woocommerce .quantity input[type="number"] { width: 52px; height: 40px; padding: 0 8px; text-align: center; border: none; background: transparent; font-size: var(--fs-small); font-family: var(--font-body); color: var(--color-ink); font-weight: 500; -moz-appearance: textfield; appearance: textfield; outline: none; } .woocommerce .quantity input[type="number"]::-webkit-inner-spin-button, .woocommerce .quantity input[type="number"]::-webkit-outer-spin-button { -webkit-appearance: none; } .star-rating { overflow: hidden; position: relative; height: 1.1em; line-height: 1; font-size: 1em; width: 5.5em; display: inline-block; color: var(--color-accent-amber); } .star-rating span { overflow: hidden; position: absolute; top: 0; left: 0; } .star-rating span::before, .star-rating::before { content: '\2605\2605\2605\2605\2605'; font-family: inherit; letter-spacing: 0.1em; display: block; } .star-rating::before { color: var(--color-border); } .star-rating span::before { color: var(--color-accent-amber); } .woocommerce .woocommerce-product-rating { display: flex; align-items: center; gap: 8px; margin-bottom: 12px; } .woocommerce .product_meta { font-size: var(--fs-small); color: var(--color-muted); margin-top: 20px; } .woocommerce .product_meta > span { display: block; margin-bottom: 4px; } .woocommerce .product_meta a { color: var(--color-accent); text-decoration: none; } .woocommerce .product_meta a:hover { text-decoration: underline; } .woocommerce .price del { opacity: 0.5; margin-right: 8px; } .woocommerce .price ins { font-weight: 700; text-decoration: none; } .woocommerce .price .amount { color: var(--color-ink); } .woocommerce div.product .woocommerce-tabs ul.tabs { display: flex; list-style: none; border-bottom: 2px solid var(--color-border); margin: 0 0 24px; padding: 0; gap: 0; } .woocommerce div.product .woocommerce-tabs ul.tabs li { position: relative; padding: 0; margin: 0; } .woocommerce div.product .woocommerce-tabs ul.tabs li a { display: block; padding: 12px 20px; font-size: var(--fs-small); font-weight: 600; color: var(--color-muted); text-decoration: none; border-bottom: 2px solid transparent; margin-bottom: -2px; transition: color var(--dur) var(--ease), border-color var(--dur) var(--ease); } .woocommerce div.product .woocommerce-tabs ul.tabs li.active a { color: var(--color-accent); border-bottom-color: var(--color-accent); } .woocommerce div.product .woocommerce-tabs ul.tabs li a:hover { color: var(--color-ink); } .woocommerce div.product .woocommerce-tabs .panel { padding: 24px 0; font-size: var(--fs-body); line-height: var(--lh-body); color: var(--color-ink); } #reviews { margin-top: 32px; } #reviews h2 { font-family: var(--font-heading); font-size: var(--fs-h3); font-weight: var(--fw-heading); margin-bottom: 20px; } .woocommerce #reviews ol.commentlist { list-style: none; padding: 0; } .woocommerce #reviews ol.commentlist li.comment { border-bottom: 1px solid var(--color-border); padding: 20px 0; } .woocommerce #reviews ol.commentlist li.comment:last-child { border-bottom: none; } .woocommerce #reviews ol.commentlist li.comment .comment-text p.meta { font-size: 0.8125rem; color: var(--color-muted); margin-bottom: 8px; } .woocommerce #reviews ol.commentlist li.comment .comment-text p.meta time { margin-left: 8px; opacity: 0.7; } #review_form_wrapper { margin-top: 32px; padding-top: 24px; border-top: 1px solid var(--color-border); } #review_form_wrapper h3 { font-family: var(--font-heading); font-size: 1.1rem; font-weight: var(--fw-heading); margin-bottom: 16px; } .woocommerce-account .woocommerce-MyAccount-navigation ul { list-style: none; padding: 0; } .woocommerce-account .woocommerce-MyAccount-navigation ul li { border-bottom: 1px solid var(--color-border); } .woocommerce-account .woocommerce-MyAccount-navigation ul li a { display: block; padding: 10px 16px; color: var(--color-ink); font-size: var(--fs-small); text-decoration: none; transition: color var(--dur) var(--ease); } .woocommerce-account .woocommerce-MyAccount-navigation ul li a:hover, .woocommerce-account .woocommerce-MyAccount-navigation ul li.is-active a { color: var(--color-accent); } .woocommerce-orders-table { width: 100%; border-collapse: collapse; } .woocommerce-orders-table th { font-weight: 600; font-size: 0.8125rem; color: var(--color-muted); text-transform: uppercase; letter-spacing: 0.4px; padding: 8px 12px; border-bottom: 2px solid var(--color-border); } .woocommerce-orders-table td { padding: 12px; border-bottom: 1px solid var(--color-border); font-size: var(--fs-small); vertical-align: middle; } .woocommerce-orders-table .woocommerce-orders-table__cell-order-number a { color: var(--color-accent); font-weight: 600; } .woocommerce-orders-table .wc-order-status { font-size: 0.75rem; font-weight: 600; padding: 3px 10px; border-radius: var(--radius-pill); display: inline-block; } .woocommerce-orders-table .wc-order-status.status-processing { background: #EEFBF6; color: #1d4ed8; } .woocommerce-orders-table .wc-order-status.status-completed { background: #f0fdf4; color: #15803d; } .woocommerce-orders-table .wc-order-status.status-on-hold { background: #f1f3fa; color: #b45309; } .woocommerce-orders-table .wc-order-status.status-cancelled { background: #fef2f2; color: #b91c1c; } .woocommerce-orders-table .wc-order-status.status-pending { background: var(--color-bg-soft); color: var(--color-muted); } .woocommerce-order { max-width: 680px; margin: 0 auto; } .woocommerce-order-details h2 { font-family: var(--font-heading); font-weight: var(--fw-heading); font-size: var(--fs-h3); margin-bottom: 16px; } .woocommerce-customer-details { margin-top: 24px; } .woocommerce-customer-details h2 { font-family: var(--font-heading); font-weight: var(--fw-heading); font-size: 1.1rem; margin-bottom: 12px; } .woocommerce-customer-details address { line-height: 1.7; font-style: normal; color: var(--color-ink); } .woo-breadcrumb { font-size: 0.8125rem; color: var(--color-muted); margin-bottom: 20px; } .woo-breadcrumb ol { display: flex; flex-wrap: wrap; list-style: none; gap: 0; } .woo-breadcrumb li a { color: var(--color-muted); text-decoration: none; transition: color var(--dur) var(--ease); } .woo-breadcrumb li a:hover { color: var(--color-accent); } .woocommerce-cart-form table, .woocommerce-checkout-payment, .woocommerce-account .woocommerce { font-size: 0.9375rem; } .woocommerce-notices-wrapper { position: fixed; bottom: 24px; left: 0; right: 0; margin: 0 auto; z-index: 9990; width: min(440px, calc(100% - 32px)); pointer-events: none; } @media (max-width: 767px) { .woocommerce-notices-wrapper { bottom: calc(64px + 16px + env(safe-area-inset-bottom, 0px)); } } .woocommerce-notices-wrapper .woocommerce-message, .woocommerce-notices-wrapper .woocommerce-error, .woocommerce-notices-wrapper .woocommerce-info { pointer-events: auto; list-style: none; position: relative; display: flex; align-items: center; gap: 8px; padding: 8px 32px 8px 16px; margin: 0 0 8px; border-radius: 16px; border: none; outline: none; font-size: 0.8125rem; line-height: 1.35; color: var(--color-ink); background: #fff; box-shadow: 0 2px 16px rgba(30, 36, 51, .14); animation: noticeIn .28s var(--ease) both; } .wc-notice-text { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .woocommerce-notices-wrapper .woocommerce-error .wc-notice-text, .woocommerce-notices-wrapper .woocommerce-error li { white-space: normal; overflow: visible; text-overflow: clip; } .woocommerce-notices-wrapper .woocommerce-message.notice-hide { animation: noticeOut .28s var(--ease) forwards; } @keyframes noticeIn { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } } @keyframes noticeOut { from { opacity: 1; transform: translateY(0); } to { opacity: 0; transform: translateY(10px); } } .wc-notice-icon { flex-shrink: 0; width: 22px; height: 22px; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: 11px; font-weight: 700; color: #fff; } .wc-notice-icon--success { background: #2e7d32; } .wc-notice-icon--error { background: #c0392b; } .wc-notice-icon--info { background: var(--color-accent); font-style: italic; } .woocommerce-notices-wrapper .woocommerce-message li, .woocommerce-notices-wrapper .woocommerce-error li, .woocommerce-notices-wrapper .woocommerce-info li { display: contents; } .woocommerce-notices-wrapper .woocommerce-message::before, .woocommerce-notices-wrapper .woocommerce-error::before, .woocommerce-notices-wrapper .woocommerce-info::before, .woocommerce-notices-wrapper .woocommerce-message li::before, .woocommerce-notices-wrapper .woocommerce-error li::before, .woocommerce-notices-wrapper .woocommerce-info li::before { display: none !important; content: none !important; } .woocommerce-notices-wrapper .woocommerce-message a.button, .woocommerce-notices-wrapper .woocommerce-message .button { flex-shrink: 0; padding: 5px 14px; font-size: 0.75rem; font-weight: 600; white-space: nowrap; border-radius: var(--radius-pill); background: var(--color-ink); color: #fff !important; text-decoration: none; border: none; transition: background .15s; } .woocommerce-notices-wrapper .woocommerce-message a.button:hover { background: var(--color-accent); } .wc-notice-dismiss { position: absolute; right: 10px; top: 50%; transform: translateY(-50%); width: 20px; height: 20px; display: flex; align-items: center; justify-content: center; border: none; background: none; color: var(--color-muted); cursor: pointer; padding: 0; transition: color .15s; } .wc-notice-dismiss:hover { color: var(--color-ink); } .pswp__top-bar { padding-top: env(safe-area-inset-top, 0px); height: calc(44px + env(safe-area-inset-top, 0px)) !important; padding-right: max(8px, env(safe-area-inset-right, 8px)); display: flex !important; align-items: flex-end; justify-content: flex-end; } .pswp__counter { position: absolute; left: max(8px, env(safe-area-inset-left, 8px)); bottom: 0; height: 44px; line-height: 44px; } .pswp__preloader { position: absolute; left: 50%; bottom: 0; transform: translateX(-50%); } .star-rating { display: inline-flex; align-items: center; gap: 2px; color: var(--color-accent); font-size: 0; } .star-rating::before { content: '\2605\2605\2605\2605\2605'; font-size: 14px; letter-spacing: 2px; } @media ( max-width: 1024px ) { .products-grid { grid-template-columns: repeat(3, 1fr); } } @media ( max-width: 900px ) { .single-product-main { grid-template-columns: 1fr; } .single-product-main { padding-inline: 16px; gap: 16px; } .sp-gallery-premium { min-height: auto; padding: 20px 0 24px; padding-left: var(--page-gutter); margin-left: calc(-1 * var(--page-gutter)); } .sp-gallery-premium .woocommerce-product-gallery { max-width: 100%; } .sp-gallery-premium .woocommerce-product-gallery__image { height: clamp(300px, 46vh, 420px); height: clamp(300px, 46svh, 420px); } .sp-gallery-premium .woocommerce-product-gallery__image img { max-height: none; } .sp-gallery-premium .flex-viewport, .sp-gallery-premium .woocommerce-product-gallery__wrapper { height: clamp(300px, 46vh, 420px) !important; height: clamp(300px, 46svh, 420px) !important; } .sp-gallery-badges { top: 14px; left: 16px; } .single-product-info { position: static; padding: 20px 0 28px; } .single-product-info .product_title { font-size: clamp(1.35rem, 5vw, 1.75rem); } .sp-breadcrumb { margin-bottom: 10px; } .sp-breadcrumb__list li { font-size: 0.6875rem; } .sp-actions-row { gap: 6px 16px; margin-bottom: 18px; } .sp-action-btn { font-size: 0.75rem; gap: 6px; } .sp-action-btn svg { width: 16px; height: 16px; } .sp-benefits { gap: 10px; margin-top: 22px; margin-bottom: 20px; } .sp-benefit__text { font-size: 0.75rem; } .single-product-info .price { font-size: 1.35rem; margin-bottom: 14px; } .single-product-info .woocommerce-product-details__short-description { margin-bottom: 10px; } .single-product-info .cart { flex-direction: row; align-items: center; gap: 10px; } .single-product-info .quantity { flex-shrink: 0; } .qty-stepper { height: 48px; } .qty-stepper__btn { width: 40px; height: 100%; } .qty-stepper .qty, .qty-stepper input.qty, .qty-stepper input.input-text.qty { width: 48px !important; min-width: 48px; height: 100% !important; } .single-product-info .single_add_to_cart_button, .single-product-info .button.single_add_to_cart_button { flex: 1; height: 48px !important; min-height: 48px; padding: 0 16px !important; font-size: 0.8125rem !important; } .sp-gallery-premium .flex-control-thumbs li, .sp-gallery-premium .flex-control-thumbs li img { flex-basis: 80px; width: 80px; height: 80px; } .sp-gallery-premium .woocommerce-product-gallery .flex-direction-nav .flex-prev { left: 6px; } .sp-gallery-premium .woocommerce-product-gallery .flex-direction-nav .flex-next { right: 6px; } .sp-gallery-premium .woocommerce-product-gallery .flex-direction-nav a { width: 48px; height: 36px; margin-top: -18px; } .sp-review-form.contact-form { grid-template-columns: 1fr; } .wc-tabs-nav-wrap { margin-bottom: 24px; } .products-grid { grid-template-columns: repeat(2, 1fr); } } @media ( max-width: 420px ) { .qty-stepper { height: 44px; } .qty-stepper__btn { width: 34px; height: 100%; } .qty-stepper .qty, .qty-stepper input.qty, .qty-stepper input.input-text.qty { width: 40px !important; min-width: 40px; height: 100% !important; font-size: 0.9375rem; } .single-product-info .single_add_to_cart_button, .single-product-info .button.single_add_to_cart_button { height: 44px !important; min-height: 44px; font-size: 0.75rem !important; padding: 0 12px !important; } } .mini-cart-panel { position: fixed; top: 0; right: 0; bottom: 0; width: min(380px, 95vw); z-index: 350; background: var(--color-bg); display: none; flex-direction: column; clip-path: inset(0 0 0 100%); transition: clip-path 0.3s var(--ease); box-shadow: var(--shadow-md); } .mini-cart-panel.is-animating { display: flex; } .mini-cart-panel.is-open { display: flex; clip-path: inset(0 0% 0 0); } .mini-cart-panel.is-loading .widget_shopping_cart_content { visibility: hidden; } .mini-cart-panel.is-loading::after { content: ""; position: absolute; top: 130px; left: 50%; width: 34px; height: 34px; margin-left: -17px; border: 3px solid var(--color-border, #E8E8E6); border-top-color: var(--color-accent); border-radius: 50%; animation: qv-spin 0.7s linear infinite; z-index: 2; } .mini-cart-panel__header { display: flex; align-items: center; justify-content: space-between; padding: 20px 24px; border-bottom: 1px solid var(--color-border); flex-shrink: 0; } .mini-cart-panel__title { font-family: var(--font-heading); font-size: 1.2rem; color: var(--color-ink); } .mini-cart-panel__close { display: flex; align-items: center; justify-content: center; width: 36px; height: 36px; color: var(--color-muted); border-radius: var(--radius); transition: color var(--dur) var(--ease), background var(--dur) var(--ease); } .mini-cart-panel__close:hover { color: var(--color-ink); background: var(--color-bg-soft); } .widget_shopping_cart_content { flex: 1; overflow-y: auto; display: flex; flex-direction: column; } .mini-cart-empty { display: flex; flex-direction: column; align-items: center; gap: 16px; padding: 48px 24px; color: var(--color-muted); text-align: center; flex: 1; justify-content: center; } .mini-cart-empty p { font-size: var(--fs-small); } .mini-cart-items { flex: 1; padding: 16px 24px; overflow-y: auto; } .mini-cart-item { display: flex; align-items: flex-start; gap: 12px; padding: 14px 0; border-bottom: 1px solid var(--color-border); } .mini-cart-item:last-child { border-bottom: none; } .mini-cart-item__thumb { flex-shrink: 0; width: 64px; height: 64px; overflow: hidden; background: var(--color-bg-soft); } .mini-cart-item__thumb img { width: 100%; height: 100%; object-fit: cover; } .mini-cart-item__info { flex: 1; min-width: 0; } .mini-cart-item__name { display: block; font-size: var(--fs-small); font-weight: 500; color: var(--color-ink); line-height: 1.3; transition: color var(--dur) var(--ease); } .mini-cart-item__name:hover { color: var(--color-accent); } .mini-cart-item__qty-price { display: block; font-size: 0.8125rem; color: var(--color-muted); margin-top: 4px; } .mini-cart-item { transition: opacity 0.25s ease; } .mini-cart-item__remove { flex-shrink: 0; display: flex; align-items: center; justify-content: center; width: 28px; height: 28px; color: var(--color-muted); border-radius: var(--radius); transition: color var(--dur) var(--ease), background var(--dur) var(--ease); } .mini-cart-item__remove:hover { color: #c0392b; background: rgba(192, 57, 43, 0.08); } .mini-cart-footer { padding: 16px 24px 24px; border-top: 1px solid var(--color-border); flex-shrink: 0; } .mini-cart-footer__total { display: flex; justify-content: space-between; align-items: center; font-size: 0.9375rem; margin-bottom: 16px; } .mini-cart-footer__total strong { font-size: 1.1rem; font-weight: 700; color: var(--color-ink); } .mini-cart-footer__actions { display: flex; flex-direction: column; gap: 10px; } .mini-cart-footer__btn-cart, .mini-cart-footer__btn-checkout { width: 100%; justify-content: center; height: 48px; } .checkout-wrapper { padding-block: clamp(24px, 4vw, 48px); } .checkout-page-header { margin-bottom: 32px; } .checkout-page__title { font-family: var(--font-heading); font-size: var(--fs-h2); font-weight: var(--fw-heading); color: var(--color-ink); margin-bottom: 8px; } .checkout-breadcrumb ol { display: flex; list-style: none; font-size: 0.8125rem; color: var(--color-muted); } .checkout-breadcrumb li:not(:last-child)::after { content: '/'; margin: 0 8px; opacity: 0.4; } .checkout-breadcrumb a { color: var(--color-muted); transition: color var(--dur) var(--ease); } .checkout-breadcrumb a:hover { color: var(--color-accent); } .checkout-breadcrumb li[aria-current="page"] { color: var(--color-ink); font-weight: 500; } .checkout-layout { display: grid; grid-template-columns: 1fr 380px; column-gap: 48px; row-gap: 0; align-items: start; } .checkout-layout > .woocommerce-NoticeGroup, .checkout-layout > .woocommerce-error, .checkout-layout > .woocommerce-message, .checkout-layout > .woocommerce-info { grid-column: 1 / -1; margin: 0 0 28px; } .checkout-inline-error-message { display: block; margin: 6px 0 0; font-size: 0.8125rem; line-height: 1.4; font-weight: 400; color: #c0392b; } .checkout-section { margin-bottom: 32px; } .checkout-section:last-child { margin-bottom: 0; } .checkout-section__head { display: flex; align-items: center; gap: 12px; margin-bottom: 24px; padding-bottom: 14px; border-bottom: 1px solid var(--color-border); } .checkout-section__num { display: flex; align-items: center; justify-content: center; width: 30px; height: 30px; background: var(--color-accent); color: #fff; border-radius: 50%; font-size: 0.875rem; font-weight: 700; flex-shrink: 0; line-height: 1; } .checkout-section__title { font-family: var(--font-heading); font-size: 1.15rem; font-weight: var(--fw-heading); color: var(--color-ink); margin: 0; } .woocommerce-billing-fields__field-wrapper, .woocommerce-shipping-fields__field-wrapper, .woocommerce-additional-fields__field-wrapper, .woocommerce-address-fields__field-wrapper { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; } .woocommerce-billing-fields__field-wrapper .form-row.form-row-wide, .woocommerce-shipping-fields__field-wrapper .form-row.form-row-wide, .woocommerce-additional-fields__field-wrapper .form-row.form-row-wide, .woocommerce-additional-fields__field-wrapper .form-row.notes, .woocommerce-address-fields__field-wrapper .form-row.form-row-wide { grid-column: 1 / -1; } .woocommerce-account-fields { margin-top: 18px; } .woocommerce-account-fields .create-account label.checkbox, .woocommerce-account-fields .create-account label.woocommerce-form__label-for-checkbox { display: flex; align-items: center; gap: 9px; margin: 0; padding-top: 0; cursor: pointer; } .woocommerce-account-fields .create-account input[type="checkbox"] { flex-shrink: 0; margin: 0; } .form-row { display: flex; flex-direction: column; gap: 7px; } .form-row label { display: block; font-size: var(--fs-small); font-weight: 600; color: var(--color-ink); margin-bottom: 6px; } .woocommerce-billing-fields__field-wrapper .form-row label, .woocommerce-shipping-fields__field-wrapper .form-row label, .woocommerce-additional-fields__field-wrapper .form-row label, .woocommerce-address-fields__field-wrapper .form-row label { padding-top: 8px; margin-bottom: 4px; } .form-row label .required { color: var(--color-accent); margin-left: 2px; } .form-row label:empty { display: none; } .woocommerce-checkout .form-row input.input-text, .woocommerce-checkout .form-row .input-text:not(textarea), .woocommerce-page .form-row input.input-text, .woocommerce-page .form-row .input-text:not(textarea) { width: 100% !important; padding: 12px 20px !important; border: 1.5px solid var(--color-border) !important; border-radius: var(--radius-pill) !important; font-size: 0.9375rem !important; font-family: var(--font-body) !important; color: var(--color-ink) !important; background: var(--color-bg) !important; transition: border-color var(--dur) var(--ease), box-shadow var(--dur) var(--ease) !important; height: auto !important; box-shadow: none !important; outline: none !important; } .woocommerce-checkout .form-row select, .woocommerce-page .form-row select { width: 100% !important; padding: 12px 44px 12px 20px !important; border: 1.5px solid var(--color-border) !important; border-radius: var(--radius-pill) !important; font-size: 0.9375rem !important; font-family: var(--font-body) !important; color: var(--color-ink) !important; background-color: var(--color-bg) !important; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%237A726B' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important; background-repeat: no-repeat !important; background-position: right 18px center !important; appearance: none !important; -webkit-appearance: none !important; cursor: pointer !important; transition: border-color var(--dur) var(--ease), box-shadow var(--dur) var(--ease) !important; height: auto !important; box-shadow: none !important; outline: none !important; display: block !important; } .woocommerce-checkout .form-row select:focus, .woocommerce-page .form-row select:focus { border-color: var(--color-accent) !important; box-shadow: 0 0 0 3px rgba(2, 183, 131, 0.08) !important; outline: none !important; } .woocommerce-checkout .form-row textarea, .woocommerce-page .form-row textarea { width: 100% !important; padding: 12px 16px !important; border: 1.5px solid var(--color-border) !important; border-radius: 15px !important; font-size: 0.9375rem !important; font-family: var(--font-body) !important; color: var(--color-ink) !important; background: var(--color-bg) !important; transition: border-color var(--dur) var(--ease) !important; resize: vertical !important; min-height: 100px !important; height: auto !important; box-shadow: none !important; } .woocommerce-checkout .form-row input.input-text:focus, .woocommerce-checkout .form-row .input-text:focus, .woocommerce-checkout .form-row textarea:focus, .woocommerce-page .form-row input.input-text:focus, .woocommerce-page .form-row .input-text:focus, .woocommerce-page .form-row textarea:focus { outline: none !important; border-color: var(--color-accent) !important; box-shadow: 0 0 0 3px rgba(2, 183, 131, 0.08) !important; } .woocommerce-checkout .woocommerce-billing-fields__field-wrapper .form-row, .woocommerce-checkout .woocommerce-shipping-fields__field-wrapper .form-row, .woocommerce-address-fields__field-wrapper .form-row { float: none !important; width: auto !important; clear: none !important; } .woocommerce-input-wrapper { display: block; width: 100%; } .form-row.woocommerce-invalid input.input-text, .form-row.woocommerce-invalid select { border-color: #c0392b !important; box-shadow: none !important; } .woocommerce-error, .woocommerce-invalid-required-field abbr { color: #c0392b; } .select2-container { box-sizing: border-box; display: inline-block; margin: 0; position: relative; vertical-align: middle; max-width: 100%; overflow-x: clip; } .select2-container .select2-selection--single { box-sizing: border-box; cursor: pointer; display: block; user-select: none; } .select2-container .select2-selection--single .select2-selection__rendered { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .select2-container .select2-selection--multiple { box-sizing: border-box; cursor: pointer; display: block; min-height: 32px; user-select: none; } .select2-dropdown { background: var(--color-bg); box-sizing: border-box; display: block; position: absolute; left: -100000px; width: 100%; z-index: 10500; } .select2-container--open .select2-dropdown { left: 0; } .select2-results { display: block; } .select2-results__options { list-style: none; margin: 0; padding: 0; max-height: 240px; overflow-y: auto; } .select2-container--default .select2-selection--single .select2-selection__arrow { height: 100%; position: absolute; top: 0; right: 1px; width: 20px; } .select2-container--default .select2-selection--single .select2-selection__arrow b { border-color: #888 transparent transparent; border-style: solid; border-width: 5px 4px 0; height: 0; left: 50%; margin-left: -4px; margin-top: -2px; position: absolute; top: 50%; width: 0; } .select2-hidden-accessible { border: 0 !important; clip: rect(0 0 0 0) !important; clip-path: inset(50%) !important; height: 1px !important; overflow: hidden !important; padding: 0 !important; position: absolute !important; width: 1px !important; white-space: nowrap !important; } .checkout-wrapper .select2-container, .woocommerce-page .select2-container { width: 100% !important; display: block; } .checkout-wrapper .select2-container--default .select2-selection--single, .woocommerce-page .select2-container--default .select2-selection--single { border: 1.5px solid var(--color-border) !important; border-radius: var(--radius-pill) !important; height: auto !important; padding: 12px 44px 12px 20px !important; background: var(--color-bg) !important; transition: border-color var(--dur) var(--ease), box-shadow var(--dur) var(--ease) !important; } .checkout-wrapper .select2-container--default .select2-selection--single .select2-selection__rendered, .woocommerce-page .select2-container--default .select2-selection--single .select2-selection__rendered { line-height: normal; padding: 0; font-size: 0.9375rem; font-family: var(--font-body); color: var(--color-ink); } .checkout-wrapper .select2-container--default .select2-selection--single .select2-selection__arrow, .woocommerce-page .select2-container--default .select2-selection--single .select2-selection__arrow { height: 100%; top: 0; right: 16px; width: 20px; } .checkout-wrapper .select2-container--default .select2-selection--single .select2-selection__arrow b, .woocommerce-page .select2-container--default .select2-selection--single .select2-selection__arrow b { border-color: #767676 transparent transparent; border-width: 5px 4px 0; margin-top: -2px; } .checkout-wrapper .select2-container--default.select2-container--open .select2-selection--single, .woocommerce-page .select2-container--default.select2-container--open .select2-selection--single { border-color: var(--color-accent); box-shadow: none; } .checkout-wrapper .select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow b, .woocommerce-page .select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow b { border-color: transparent transparent var(--color-accent); border-width: 0 4px 5px; } .select2-dropdown { border: none; border-radius: 16px; box-shadow: 0 8px 32px rgba(0, 0, 0, 0.12); font-family: var(--font-body); overflow: hidden; margin-top: 4px; } .select2-results__options { padding: 6px; } .select2-search--dropdown { padding: 10px 10px 4px; } .select2-search--dropdown .select2-search__field { border: 1.5px solid var(--color-border); border-radius: var(--radius-pill); padding: 8px 14px; font-size: 0.875rem; font-family: var(--font-body); color: var(--color-ink); outline: none; width: 100%; transition: border-color var(--dur) var(--ease); } .select2-search--dropdown .select2-search__field:focus { border-color: var(--color-accent); box-shadow: 0 0 0 3px rgba(2, 183, 131, 0.12); } .select2-results__option { font-size: 0.875rem; padding: 8px 12px; border-radius: 8px; border: none !important; outline: none !important; color: var(--color-ink); transition: background var(--dur) var(--ease); } .select2-container--default .select2-results__option--highlighted[aria-selected], .select2-container--default .select2-results__option--highlighted { background: #F5F6F4 !important; color: var(--color-ink) !important; border: none !important; outline: none !important; box-shadow: none !important; } .select2-container--default .select2-results__option[aria-selected="true"] { background: rgba(2, 183, 131, 0.12); color: var(--color-accent); font-weight: 500; } .woocommerce-checkout .select2-selection--single, .woocommerce-page .select2-selection--single { border-radius: var(--radius-pill) !important; height: auto !important; min-height: 46px !important; display: flex !important; align-items: center !important; } .select2-hidden-accessible { border: 0 !important; clip: rect(0 0 0 0) !important; height: 1px !important; margin: -1px !important; overflow: hidden !important; padding: 0 !important; position: absolute !important; width: 1px !important; } .woocommerce-info { background: var(--color-bg-soft); border-radius: 15px; padding: 12px 20px; font-size: 0.875rem; color: var(--color-muted); margin-bottom: 24px; border-left: none; box-shadow: none; } .woocommerce-info::before { display: none; } .woocommerce-info a { color: var(--color-accent); font-weight: 500; text-decoration: none; } .woocommerce-info a:hover { text-decoration: underline; } .checkout-coupon-card { background: var(--color-bg-soft); border-radius: 12px; padding: 24px; } .checkout-coupon-card__title { font-family: var(--font-heading); font-size: 1.05rem; font-weight: var(--fw-heading); color: var(--color-ink); margin: 0 0 16px; } .checkout-coupon-card .woocommerce-info { display: none !important; } .checkout_coupon.woocommerce-form-coupon { margin: 0; } .coupon-row { display: flex; flex-direction: column; gap: 10px; } .coupon-row__input { flex: 1; min-width: 0; padding: 11px 20px; border: 1.5px solid var(--color-border); border-radius: var(--radius-pill); font-size: 0.9375rem; font-family: var(--font-body); color: var(--color-ink); background: var(--color-bg); outline: none; transition: border-color var(--dur) var(--ease), box-shadow var(--dur) var(--ease); } .coupon-row__input:focus { border-color: var(--color-accent); box-shadow: 0 0 0 3px rgba(2, 183, 131, 0.08); } .coupon-row__btn { flex-shrink: 0; white-space: nowrap; padding: 11px 24px; background: var(--color-accent); color: #fff; border: none; border-radius: var(--radius-pill); font-size: 0.9375rem; font-family: var(--font-body); font-weight: 600; cursor: pointer; transition: background var(--dur) var(--ease); } .coupon-row__btn:hover { background: var(--color-accent); } .woocommerce-checkout .shipping_address { display: none; } .checkout-ship-toggle { display: flex; align-items: center; gap: 10px; cursor: pointer; margin-bottom: 20px; padding: 14px 18px; border: 1.5px solid var(--color-border); border-radius: 15px; background: var(--color-bg-soft); font-size: 0.9375rem; font-weight: 500; color: var(--color-ink); transition: border-color var(--dur) var(--ease); user-select: none; } .checkout-ship-toggle:hover { border-color: var(--color-accent); } .checkout-ship-toggle input[type="checkbox"] { position: absolute; opacity: 0; width: 1px; height: 1px; } .checkout-ship-toggle__checkmark { width: 20px; height: 20px; border: 2px solid var(--color-border); border-radius: 6px; background: #fff; flex-shrink: 0; transition: border-color var(--dur) var(--ease), background var(--dur) var(--ease); background-repeat: no-repeat; background-position: center; } .checkout-ship-toggle input:checked ~ .checkout-ship-toggle__checkmark { background-color: var(--color-accent); border-color: var(--color-accent); background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E"); } .checkout-notes-section { margin-top: 24px; padding-top: 20px; border-top: 1px solid var(--color-border); } .checkout-notes-label { font-size: 0.9375rem; font-weight: 500; color: var(--color-ink); margin-bottom: 10px; } .checkout-review-col { position: sticky; top: calc(80px + 16px); display: flex; flex-direction: column; gap: 16px; } .checkout-review-card, .checkout-payment-card { background: var(--color-bg-soft); border-radius: 12px; padding: 24px; } .checkout-review-card__title, .checkout-payment-card__title { font-family: var(--font-heading); font-size: 1.05rem; font-weight: var(--fw-heading); color: var(--color-ink); margin-bottom: 16px; padding-bottom: 14px; border-bottom: 1px solid rgba(0, 0, 0, 0.06); } .checkout-wrapper .woocommerce-checkout-review-order-table, .woocommerce .woocommerce-checkout-review-order-table { width: 100% !important; border-collapse: collapse !important; margin-bottom: 0 !important; background: transparent !important; } .checkout-wrapper .woocommerce-checkout-review-order-table thead { display: none; } .checkout-wrapper .woocommerce-checkout-review-order-table tbody td, .woocommerce .woocommerce-checkout-review-order-table tbody td { padding: 9px 0 !important; font-size: 0.875rem !important; border-bottom: none !important; border-top: none !important; vertical-align: middle !important; color: var(--color-ink) !important; background: transparent !important; } .checkout-wrapper .woocommerce-checkout-review-order-table .product-name { padding-right: 12px !important; } .checkout-wrapper .woocommerce-checkout-review-order-table .product-quantity { color: var(--color-muted); font-weight: 400; } .checkout-wrapper .woocommerce-checkout-review-order-table .product-total { text-align: right !important; font-weight: 500; white-space: nowrap; } .checkout-wrapper .woocommerce-checkout-review-order-table tfoot th, .checkout-wrapper .woocommerce-checkout-review-order-table tfoot td, .woocommerce .woocommerce-checkout-review-order-table tfoot th, .woocommerce .woocommerce-checkout-review-order-table tfoot td { padding: 8px 0 !important; font-size: 0.875rem !important; border-bottom: none !important; border-top: none !important; vertical-align: middle !important; background: transparent !important; } .checkout-wrapper .woocommerce-checkout-review-order-table tfoot th { color: var(--color-muted) !important; font-weight: 400 !important; text-align: left !important; } .checkout-wrapper .woocommerce-checkout-review-order-table tfoot td { text-align: right !important; font-weight: 500 !important; color: var(--color-ink) !important; } .checkout-wrapper .woocommerce-checkout-review-order-table tfoot .order-total th, .checkout-wrapper .woocommerce-checkout-review-order-table tfoot .order-total td { font-weight: 700 !important; font-size: 0.9375rem !important; border-top: 1px solid rgba(0, 0, 0, 0.1) !important; border-bottom: none !important; padding-top: 14px !important; } .checkout-wrapper .woocommerce-checkout-review-order-table tfoot .order-total td { color: var(--color-accent) !important; } .woocommerce-checkout-review-order-table .woocommerce-shipping-calculator { display: none !important; } .checkout-wrapper .woocommerce-checkout-review-order-table .woocommerce-shipping-totals th, .checkout-wrapper .woocommerce-checkout-review-order-table .woocommerce-shipping-totals td { display: block !important; width: 100% !important; text-align: left !important; } .checkout-wrapper .woocommerce-checkout-review-order-table .woocommerce-shipping-totals th { padding: 14px 0 6px !important; } .checkout-wrapper .woocommerce-checkout-review-order-table tfoot .cart-subtotal th, .checkout-wrapper .woocommerce-checkout-review-order-table tfoot .cart-subtotal td { border-bottom: 1px solid rgba(0, 0, 0, 0.1) !important; padding-bottom: 12px !important; } .checkout-wrapper .woocommerce-checkout-review-order-table .woocommerce-shipping-totals td { padding: 0 0 12px !important; } .checkout-wrapper .woocommerce-checkout-review-order-table #shipping_method { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 10px; } .checkout-wrapper .woocommerce-checkout-review-order-table #shipping_method li { display: flex; align-items: flex-start; gap: 9px; margin: 0; padding: 0; } .checkout-wrapper .woocommerce-checkout-review-order-table #shipping_method li input.shipping_method { flex-shrink: 0; width: 17px; height: 17px; margin: 1px 0 0; accent-color: var(--color-accent); cursor: pointer; } .checkout-wrapper .woocommerce-checkout-review-order-table #shipping_method li label { margin: 0; font-size: 0.85rem; line-height: 1.45; color: var(--color-ink); cursor: pointer; } .checkout-wrapper .woocommerce-checkout-review-order-table #shipping_method li .woocommerce-Price-amount { font-weight: 600; white-space: nowrap; } .checkout-review-card a, .checkout-review-card .woocommerce-checkout-review-order-table a { color: var(--color-ink) !important; text-decoration: none !important; } .checkout-review-card .woocommerce-checkout-review-order-table .product-name a { color: var(--color-ink) !important; font-weight: 400 !important; } .checkout-review-card .woocommerce-checkout-review-order-table tfoot a { color: var(--color-muted) !important; font-size: 0.75rem !important; } .checkout-payment { margin-top: 4px; } .checkout-payment__methods { list-style: none; margin: 0 0 16px; padding: 0; display: flex; flex-direction: column; gap: 8px; } .checkout-payment__method { display: flex; flex-wrap: wrap; align-items: center; border: 1.5px solid var(--color-border); border-radius: 12px; background: var(--color-bg); overflow: hidden; transition: border-color var(--dur) var(--ease); } .checkout-payment__method:has(.checkout-payment__radio:checked) { border-color: var(--color-accent); background: #fbfbfd; } .checkout-payment__radio { flex-shrink: 0; accent-color: var(--color-accent); width: 17px; height: 17px; margin: 0 0 0 16px; cursor: pointer; } .checkout-payment__label { flex: 1; display: flex; align-items: center; gap: 8px; padding: 14px 16px; cursor: pointer; font-size: 0.875rem; font-weight: 500; color: var(--color-ink); } .checkout-payment__label img { height: 22px; width: auto; } .checkout-payment__box { flex-basis: 100%; padding: 12px 16px 14px; border-top: 1px solid var(--color-border); background: var(--color-bg-soft); font-size: 0.8125rem; color: var(--color-muted); line-height: 1.6; } .checkout-payment__box::before { display: none; } .checkout-payment__box p { margin: 0; color: var(--color-muted); font-size: 0.8125rem; } .checkout-payment__box a { color: var(--color-accent); } .checkout-payment__no-methods { padding: 14px 0; color: var(--color-muted); font-size: var(--fs-small); } .checkout-payment__footer { padding: 0 !important; margin: 0 !important; background: transparent !important; } .checkout-payment__footer noscript { display: none; } .checkout-payment__footer .woocommerce-terms-and-conditions-wrapper { margin-bottom: 12px; } .checkout-payment__footer .woocommerce-privacy-policy-text p { font-size: 0.8125rem; color: var(--color-muted); margin-bottom: 12px; line-height: 1.55; } .checkout-payment__footer .woocommerce-privacy-policy-text a { color: var(--color-accent); } .checkout-payment__footer .form-row.validate-required label { display: flex; align-items: flex-start; gap: 8px; font-size: 0.8125rem; font-weight: 400; color: var(--color-muted); cursor: pointer; } .checkout-payment__footer .form-row.validate-required label input[type="checkbox"] { accent-color: var(--color-accent); flex-shrink: 0; margin-top: 2px; width: 15px; height: 15px; } .checkout-payment__submit { display: flex; align-items: center; justify-content: center; width: 100%; height: 52px; background: var(--color-accent); color: #fff; border: none; border-radius: var(--radius-pill); font-family: var(--font-body); font-weight: 700; font-size: 0.9375rem; letter-spacing: 0.3px; cursor: pointer; transition: background var(--dur) var(--ease); margin-top: 16px; } .checkout-payment__submit:hover { background: var(--color-accent-soft); } .checkout-payment__submit:disabled { opacity: 0.6; cursor: not-allowed; } .checkout-contact { display: flex; align-items: center; justify-content: center; gap: 20px; margin-top: 14px; padding-top: 14px; border-top: 1px solid rgba(0, 0, 0, 0.06); flex-wrap: wrap; } .checkout-contact__item { display: flex; align-items: center; gap: 6px; font-size: 0.8125rem; color: var(--color-muted); text-decoration: none; transition: color var(--dur) var(--ease); } .checkout-contact__item:hover { color: var(--color-accent); } .checkout-contact__item svg { flex-shrink: 0; opacity: 0.7; } @media (max-width: 1100px) { .checkout-layout { grid-template-columns: 1fr 320px; gap: 32px; } } @media (max-width: 860px) { .checkout-wrapper { padding-block: 24px 40px; } .checkout-layout { grid-template-columns: 1fr; gap: 32px; } .checkout-details { order: 1; } .checkout-review-col { order: 2; position: static; } .checkout-review-card, .checkout-coupon-card, .checkout-payment-card { padding: 20px; } .checkout-review-col { display: flex; flex-direction: column; gap: 16px; } } @media (max-width: 640px) { .woocommerce-billing-fields__field-wrapper, .woocommerce-shipping-fields__field-wrapper, .woocommerce-address-fields__field-wrapper { grid-template-columns: 1fr; } .checkout-section__head { margin-bottom: 16px; } .checkout-section { margin-bottom: 24px; } .checkout-page-header { margin-bottom: 20px; } .checkout-review-card, .checkout-coupon-card, .checkout-payment-card { padding: 16px; border-radius: 14px; } .checkout-ship-toggle { padding: 12px 16px; font-size: 0.875rem; } } @media (max-width: 480px) { .checkout-section__num { width: 26px; height: 26px; font-size: 0.8125rem; } .checkout-section__title { font-size: 1rem; } .woocommerce-billing-fields__field-wrapper, .woocommerce-shipping-fields__field-wrapper, .woocommerce-additional-fields__field-wrapper, .woocommerce-address-fields__field-wrapper { gap: 4px; } .woocommerce-checkout .form-row input.input-text, .woocommerce-checkout .form-row .input-text:not(textarea), .woocommerce-checkout .form-row select { padding-top: 9px !important; padding-bottom: 9px !important; font-size: 0.9375rem; } .woocommerce-billing-fields__field-wrapper .form-row, .woocommerce-shipping-fields__field-wrapper .form-row, .woocommerce-additional-fields__field-wrapper .form-row, .woocommerce-address-fields__field-wrapper .form-row { gap: 4px; } .woocommerce-billing-fields__field-wrapper .form-row label, .woocommerce-shipping-fields__field-wrapper .form-row label, .woocommerce-additional-fields__field-wrapper .form-row label, .woocommerce-address-fields__field-wrapper .form-row label { font-size: 0.8125rem; padding-top: 10px; line-height: 1.2; } .checkout-payment__submit { height: 52px; font-size: 0.9375rem; width: 100%; } } @media ( max-width: 480px ) { .products-grid { grid-template-columns: 1fr; } .sp-tab-prose { font-size: 0.9375rem; line-height: 1.65; } } @media ( max-width: 640px ) { .usp-band__grid { grid-template-columns: repeat(2, 1fr); } .home-products__head { flex-direction: column; align-items: flex-start; } .blog-preview__header { flex-direction: column; align-items: flex-start; gap: 16px; } .home-newsletter__row { flex-direction: column; gap: 10px; } .home-newsletter__input { flex: none; width: 100%; height: 46px; border: 1.5px solid rgba(255, 255, 255, 0.25); border-radius: var(--radius-pill); } .home-newsletter__btn { flex: none; width: 100%; height: 46px; border-radius: var(--radius-pill); justify-content: center; } .cta-band__actions { flex-direction: column; width: 100%; } .cta-band__btn { text-align: center; justify-content: center; } .blog-preview__grid { grid-template-columns: 1fr; } .posts-grid { grid-template-columns: 1fr; } } @media (max-width: 480px) { .hero-slide { padding-bottom: 48px; } .usp-band { padding-block: 20px; } .usp-band__grid { gap: 8px; } .usp-item { padding: 14px 10px; gap: 8px; } .usp-item__icon { width: 24px; height: 24px; } .usp-item__title { font-size: 0.825rem; } .usp-item__text { display: none; } .cta-band__inner { gap: 20px; } .cta-band__actions { width: 100%; } .testimonial-card { padding: 20px; } .testimonial-card__quote { font-size: 2.5rem; } .blog-card__body { padding: 16px; } .blog-card__title { font-size: 1.0625rem; } .inspiration__frame { aspect-ratio: 3 / 4; min-height: 280px; } .inspiration__intro { max-width: 100%; } } @media (max-width: 768px) { .testimonials__nav .swiper-nav-btn { width: 40px; height: 34px; } .home-products__head { gap: 12px; } .brands__grid-item { padding: 6px 12px; } .brands__grid-item .brands__logo { max-height: 60px; } .brands__slide { height: 104px; } .brands__brand-link { padding: 8px 10px; } } .page-content { padding-block: clamp(40px, 5vw, 72px); } .prose-article { max-width: 760px; margin-inline: auto; padding-block: clamp(48px, 6vw, 80px); } .page-article { max-width: none; margin-inline: 0; } .prose-article__header { margin-bottom: 36px; padding-bottom: 24px; border-bottom: 1px solid var(--color-border); } .prose-article__title { font-size: var(--fs-h1); color: var(--color-ink); } .page-article__pages { margin-top: 2em; font-size: var(--fs-small); color: var(--color-muted); } .entry-content { font-size: 1rem; line-height: var(--lh-body); color: var(--color-ink); } .entry-content > * + * { margin-top: 1.25em; } .entry-content h2 { font-size: var(--fs-h2); color: var(--color-ink); margin-top: 2em; } .entry-content h3 { font-size: var(--fs-h3); color: var(--color-ink); margin-top: 1.75em; } .entry-content h4 { font-size: 1.125rem; font-weight: 700; margin-top: 1.5em; } .entry-content ul, .entry-content ol { padding-left: 1.5em; } .entry-content ul { list-style: disc; } .entry-content ol { list-style: decimal; } .entry-content a { color: var(--color-accent); text-decoration: underline; } .entry-content a:hover { text-decoration: none; } .entry-content .product-card__title a { color: var(--color-ink); text-decoration: none; } .entry-content .product-card__title a:hover { color: var(--color-accent); text-decoration: none; } .entry-content a.product-card__cat { color: var(--color-muted); text-decoration: none; } .entry-content a.product-card__cat:hover { color: var(--color-accent); text-decoration: none; } .entry-content a.pc-cart-btn { color: #fff; text-decoration: none; } .hotspot__popup a { color: var(--color-ink); text-decoration: none; } .hotspot__popup a:hover { color: var(--color-accent); text-decoration: none; } .hotspot__popup a.hotspot__popup-link { color: var(--color-accent); text-decoration: none; } .hotspot__popup a.hotspot__popup-link:hover { color: var(--color-accent); text-decoration: none; } .hotspot__popup .hotspot__popup-title { font-size: 0.875rem; margin-top: 0; } .hotspot__popup .hotspot__popup-title a { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; } .entry-content strong { font-weight: 700; } .entry-content em { font-style: italic; } .entry-content blockquote { border-left: 3px solid var(--color-accent); padding-left: 20px; color: var(--color-muted); font-style: italic; } .entry-content table { width: 100%; border-collapse: collapse; font-size: var(--fs-small); } .entry-content th, .entry-content td { border: 1px solid var(--color-border); padding: 10px 14px; text-align: left; } .entry-content th { background: var(--color-bg-soft); font-weight: 700; } .archive-page, .search-page { padding-block: clamp(40px, 5vw, 72px); } .single-post { padding-block: 0; } .archive-page__header, .search-page__header { margin-bottom: clamp(32px, 4vw, 56px); } .archive-page__title, .search-page__title { font-family: var(--font-heading); font-weight: var(--fw-heading); font-size: var(--fs-h1); color: var(--color-ink); margin-bottom: 8px; } .archive-page__desc { color: var(--color-muted); font-size: 1rem; max-width: 600px; } .blog-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 32px; margin-bottom: 48px; } @media (max-width: 900px) { .blog-grid { grid-template-columns: repeat(2, 1fr); } } @media (max-width: 560px) { .blog-grid { grid-template-columns: 1fr; } } .blog-card { overflow: hidden; background: var(--color-bg); display: flex; flex-direction: column; border-radius: var(--radius); border: 1px solid var(--color-border); transition: box-shadow 0.3s var(--ease), border-color 0.3s var(--ease); } .blog-card:hover { box-shadow: 0 6px 24px rgba(30, 36, 51, 0.09); border-color: transparent; } .blog-card__thumb { display: block; overflow: hidden; aspect-ratio: 16/9; } .blog-card__thumb img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.45s var(--ease); } .blog-card:hover .blog-card__thumb img { transform: scale(1.04); } .blog-card__body { padding: 20px 22px 24px; display: flex; flex-direction: column; flex: 1; gap: 10px; } .blog-card__meta { display: flex; align-items: center; gap: 10px; font-size: var(--fs-small); color: var(--color-muted); } .blog-card__meta-sep { opacity: 0.5; } .blog-card__type { background: var(--color-bg-soft); padding: 2px 8px; border-radius: 4px; } .blog-card__title { font-family: var(--font-heading); font-size: 1.0625rem; line-height: 1.35; } .blog-card__title a { color: var(--color-ink); transition: color var(--dur) var(--ease); } .blog-card__title a:hover { color: var(--color-accent); } .blog-card__excerpt { font-size: var(--fs-small); color: var(--color-muted); line-height: var(--lh-body); flex: 1; } .blog-card__read-more { display: inline-flex; align-items: center; gap: 5px; font-size: 0.6875rem; font-weight: 700; letter-spacing: 0.5px; text-transform: uppercase; color: var(--color-accent); transition: gap var(--dur) var(--ease); margin-top: auto; } .blog-card__read-more:hover { gap: 8px; } .archive-page__pagination { margin-top: 16px; } .archive-page__pagination .nav-links { display: flex; align-items: center; gap: 8px; justify-content: center; } .archive-page__pagination .page-numbers { display: flex; align-items: center; justify-content: center; width: 40px; height: 40px; border-radius: 50%; border: 1.5px solid var(--color-border); font-size: var(--fs-small); font-weight: 600; color: var(--color-ink); transition: background var(--dur) var(--ease), border-color var(--dur) var(--ease), color var(--dur) var(--ease); } .archive-page__pagination .page-numbers.current, .archive-page__pagination .page-numbers:hover { background: var(--color-accent); border-color: var(--color-accent); color: #fff; } .page-shop { background: #fff; padding-bottom: clamp(48px, 6vw, 88px); } .shop-layout { display: grid; grid-template-columns: 1fr 280px; gap: 40px; align-items: start; padding-block: clamp(32px, 4vw, 56px); } .shop-layout--no-sidebar { grid-template-columns: minmax(0, 1fr); } .shop-toolbar { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 12px 16px; margin-bottom: 24px; padding-bottom: 16px; border-bottom: 1px solid var(--color-border); } .shop-toolbar__left, .shop-toolbar__count { font-size: 0.875rem; color: var(--color-muted); flex: 1 1 auto; min-width: 0; } .shop-toolbar__right { display: flex; align-items: center; gap: 10px; flex-wrap: nowrap; margin-left: auto; justify-content: flex-end; } .shop-toolbar .woocommerce-ordering, .shop-per-page { margin: 0; display: flex; align-items: stretch; } .shop-toolbar .woocommerce-ordering select, .shop-per-page__select { box-sizing: border-box; height: 36px; min-height: 36px; padding: 0 32px 0 14px; border: 1px solid var(--color-border); border-radius: var(--radius-pill); font-size: 0.8125rem; line-height: 34px; color: var(--color-ink); background-color: #fff; cursor: pointer; appearance: none; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%237A726B' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: right 12px center; } .custom-select { position: relative; display: inline-flex; } .custom-select select { position: absolute; width: 1px; height: 1px; opacity: 0; pointer-events: none; z-index: -1; } .custom-select__trigger { display: inline-flex; align-items: center; gap: 8px; height: 36px; padding: 0 14px; border: 1px solid var(--color-border); border-radius: var(--radius-pill); background: #fff; color: var(--color-ink); font-size: 0.8125rem; font-family: var(--font-body); cursor: pointer; white-space: nowrap; transition: border-color .15s, box-shadow .15s; } .custom-select__trigger:hover, .custom-select.is-open .custom-select__trigger { border-color: var(--color-accent); box-shadow: 0 0 0 3px color-mix(in srgb, var(--color-accent) 12%, transparent); } .custom-select__label { max-width: 180px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .custom-select__arrow { display: block; width: 14px; height: 14px; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%237A726B' stroke-width='2.5'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: center; background-size: contain; flex-shrink: 0; transition: transform .2s var(--ease); } .custom-select.is-open .custom-select__arrow { transform: rotate(180deg); } .custom-select__list { position: absolute; top: calc(100% + 6px); right: 0; min-width: 100%; background: #fff; border: 1px solid var(--color-border); border-radius: 14px; box-shadow: 0 8px 28px rgba(30, 36, 51, .14); overflow: hidden; z-index: 200; list-style: none; padding: 6px; margin: 0; animation: customSelectIn .15s var(--ease) both; } @keyframes customSelectIn { from { opacity: 0; transform: translateY(-6px); } to { opacity: 1; transform: translateY(0); } } .custom-select__option { padding: 9px 14px; font-size: 0.8125rem; color: var(--color-ink); border-radius: 4px; cursor: pointer; white-space: nowrap; transition: background .12s; } .custom-select__option:hover { background: var(--color-bg-soft); } .custom-select__option.is-selected { background: var(--color-ink); color: #fff; font-weight: 600; } .shop-sidebar { position: sticky; top: 100px; } .shop-sidebar__mobile-toggle { display: none; width: 100%; align-items: center; gap: 8px; padding: 12px 16px; background: var(--color-bg-soft); border: 1px solid var(--color-border); border-radius: 14px; font-size: 0.9375rem; font-weight: 600; color: var(--color-ink); cursor: pointer; margin-bottom: 12px; } .shop-sidebar__badge { display: inline-flex; align-items: center; justify-content: center; min-width: 20px; height: 20px; padding: 0 5px; background: var(--color-accent); color: #fff; border-radius: 999px; font-size: 0.75rem; font-weight: 700; margin-left: auto; } .sidebar-widget { border-bottom: 1px solid var(--color-border); padding-bottom: 0; margin-bottom: 0; } .shop-sidebar__inner > .sidebar-widget:last-child { border-bottom: none; } .sidebar-widget__header { display: flex; align-items: center; justify-content: space-between; gap: 8px; padding: 16px 0; width: 100%; background: none; border: none; cursor: pointer; text-align: left; } .sidebar-widget__title { font-family: var(--font-body); font-size: 0.875rem; font-weight: 700; text-transform: uppercase; letter-spacing: .06em; color: var(--color-ink); margin: 0; } .sidebar-widget__chevron { flex-shrink: 0; color: var(--color-muted); transition: transform 0.2s; } .sidebar-widget__toggle[aria-expanded="false"] .sidebar-widget__chevron { transform: rotate(-90deg); } .sidebar-widget__body { padding-bottom: 16px; } .sidebar-widget__toggle[aria-expanded="false"] + .sidebar-widget__body { display: none; } .sidebar-widget--active { border-bottom: 1px solid var(--color-border); } .sidebar-widget--active .sidebar-widget__header { cursor: default; } .sidebar-clear-all { font-size: 0.8125rem; color: var(--color-accent); text-decoration: underline; white-space: nowrap; } .sidebar-active-tags { display: flex; flex-wrap: wrap; gap: 6px; padding-bottom: 16px; } .active-tag { display: inline-flex; align-items: center; gap: 6px; padding: 4px 10px; background: var(--color-bg-soft); border: 1px solid var(--color-border); font-size: 0.8125rem; color: var(--color-ink); text-decoration: none; transition: background .15s; } .active-tag:hover { background: #eee; } .active-tag span { font-size: 10px; color: var(--color-muted); } .sidebar-cats { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 0; } .sidebar-cats__row { display: flex; align-items: center; gap: 4px; } .sidebar-cats__row .sidebar-cats__link { flex: 1; } .sidebar-cats__toggle { flex-shrink: 0; display: flex; align-items: center; justify-content: center; width: 24px; height: 24px; border: none; background: transparent; cursor: pointer; color: var(--color-muted); border-radius: 4px; transition: color var(--dur) var(--ease), transform var(--dur) var(--ease); padding: 0; } .sidebar-cats__toggle:hover { color: var(--color-accent); } .sidebar-cats__item.is-open > .sidebar-cats__row .sidebar-cats__toggle { transform: rotate(180deg); color: var(--color-accent); } .sidebar-cats__link { display: flex; align-items: center; gap: 6px; padding: 7px 0; font-size: 0.9rem; color: var(--color-ink); text-decoration: none; transition: color .15s; } .sidebar-cats__link:hover, .sidebar-cats__link.is-active { color: var(--color-accent); } .sidebar-cats__link.is-active { font-weight: 600; } .sidebar-cats__count { font-size: 0.8rem; color: var(--color-muted); } .sidebar-cats__sub { list-style: none; margin: 0 0 4px 16px; padding: 0; display: none; } .sidebar-cats__item.is-open > .sidebar-cats__sub { display: block; } .sidebar-cats__sub .sidebar-cats__link { font-size: 0.875rem; padding: 5px 0; } .sidebar-widget--price .sidebar-widget__body { padding-bottom: 24px; } .price-filter-form { padding: 8px 0; } .price-range-slider { position: relative; height: 30px; margin-bottom: 12px; } .price-range-track { position: absolute; top: 50%; transform: translateY(-50%); width: 100%; height: 4px; background: var(--color-border); border-radius: 2px; } .price-range-fill { position: absolute; height: 100%; background: var(--color-accent); border-radius: 2px; } .price-range-input { position: absolute; top: 50%; transform: translateY(-50%); width: 100%; height: 4px; appearance: none; background: transparent; pointer-events: none; margin: 0; } .price-range-input::-webkit-slider-thumb { appearance: none; width: 18px; height: 18px; border-radius: 50%; background: #fff; border: 2px solid var(--color-accent); cursor: pointer; pointer-events: all; box-shadow: 0 1px 4px rgba(0,0,0,.15); } .price-range-input::-moz-range-thumb { width: 18px; height: 18px; border-radius: 50%; background: #fff; border: 2px solid var(--color-accent); cursor: pointer; pointer-events: all; } .price-range-labels { display: flex; justify-content: space-between; font-size: 0.875rem; color: var(--color-ink); margin-bottom: 12px; } .price-filter-btn { display: block; width: 100%; padding: 9px 16px; background: var(--color-ink); color: #fff; font-size: 0.875rem; font-weight: 600; text-align: center; cursor: pointer; border: 1px solid var(--color-ink); border-radius: var(--radius-pill); transition: background .15s, color .15s; } .price-filter-btn:hover { background: transparent; color: var(--color-ink); } .sidebar-attr-list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 2px; } .sidebar-attr-check { display: flex; align-items: center; gap: 8px; padding: 5px 0; font-size: 0.9rem; color: var(--color-ink); text-decoration: none; transition: color .15s; } .sidebar-attr-check:hover { color: var(--color-accent); } .sidebar-attr-check__box { flex-shrink: 0; width: 16px; height: 16px; border: 1.5px solid var(--color-border); display: inline-block; background: #fff; transition: background .15s, border-color .15s; } .sidebar-attr-check.is-checked .sidebar-attr-check__box { background: var(--color-accent); border-color: var(--color-accent); background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: center; } .sidebar-attr-check.is-checked { color: var(--color-accent); font-weight: 500; } .sidebar-attr-check__count { font-size: 0.8rem; color: var(--color-muted); margin-left: auto; } .sidebar-show-more { display: inline-flex; align-items: center; gap: 4px; margin-top: 6px; padding: 0; background: none; border: none; cursor: pointer; font-family: var(--font-body); font-size: 0.8125rem; font-weight: 600; color: var(--color-accent); transition: color var(--dur) var(--ease); } .sidebar-show-more:hover { color: var(--color-accent-soft); } @media (max-width: 1024px) { .shop-layout { grid-template-columns: 1fr 240px; gap: 28px; } } @media (max-width: 860px) { .shop-layout { grid-template-columns: minmax(0, 1fr); padding-block: 20px 36px; } .shop-sidebar { position: static; order: -1; } .shop-main { order: 0; } .shop-sidebar__mobile-toggle { display: inline-flex; padding: 8px 12px; font-size: 0.8125rem; margin-bottom: 8px; min-height: 36px; } .shop-sidebar__inner { display: none; } .shop-sidebar__inner.is-open { display: block; padding: 6px 16px 12px; border: 1px solid var(--color-border); border-radius: 14px; background: #fff; } .sidebar-widget__header { padding: 8px 0; } .sidebar-widget__title { font-size: 0.8125rem; } .sidebar-widget__body { padding-bottom: 8px; } .sidebar-active-tags { padding-bottom: 8px; gap: 4px; } .sidebar-cats { margin: 0 0 6px; } .sidebar-cats__link { padding: 4px 0; font-size: 0.8125rem; } .sidebar-cats__sub .sidebar-cats__link { padding: 3px 0; font-size: 0.8125rem; } .price-filter-form { padding: 2px 0 0; } .price-range-slider { height: 24px; margin-bottom: 6px; } .price-range-labels { margin-bottom: 8px; font-size: 0.8125rem; } .price-filter-btn { padding: 7px 12px; font-size: 0.8125rem; } .sidebar-attr-check { padding: 3px 0; font-size: 0.8125rem; } .shop-toolbar { flex-direction: column; align-items: stretch; gap: 8px; margin-bottom: 14px; padding-bottom: 0; border-bottom: none; } .shop-toolbar__left { font-size: 0.75rem; line-height: 1.3; } .shop-toolbar__right { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; width: 100%; } .shop-view-modes { flex: 0 0 auto; } .shop-per-page, .shop-toolbar .woocommerce-ordering { flex: 1 1 0; min-width: 0; } .shop-per-page__select, .shop-toolbar .woocommerce-ordering select { width: 100%; height: 30px; min-height: 30px; padding: 0 22px 0 8px; line-height: 28px; font-size: 0.7rem; background-position: right 7px center; background-size: 10px; } .products-grid.view-grid-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); } .products-grid.view-grid-1 { grid-template-columns: minmax(0, 1fr); } } @media (min-width: 601px) and (max-width: 860px) { .shop-per-page, .shop-toolbar .woocommerce-ordering { flex: 0 1 auto; } .shop-per-page__select, .shop-toolbar .woocommerce-ordering select { width: auto; min-width: 140px; } .shop-toolbar .woocommerce-ordering { margin-left: auto; } } @media (max-width: 600px) { .shop-toolbar .custom-select { width: 100%; } .shop-toolbar .custom-select__trigger { width: 100%; height: 32px; padding: 0 10px; gap: 4px; font-size: 0.72rem; justify-content: space-between; } .shop-toolbar .custom-select__label { max-width: none; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .shop-toolbar .custom-select__list { padding: 4px; border-radius: 12px; } .shop-toolbar .custom-select__option { padding: 7px 10px; font-size: 0.72rem; line-height: 1.25; } } @media (max-width: 400px) { .shop-toolbar .custom-select__trigger { height: 30px; padding: 0 8px; font-size: 0.64rem; } .shop-view-modes .js-view-mode { width: 24px; height: 24px; } .shop-toolbar .custom-select__list { padding: 3px; border-radius: 10px; } .shop-toolbar .custom-select__option { padding: 6px 9px; font-size: 0.66rem; } } .product-card-wrap { list-style: none; } .product-card { position: relative; display: flex; flex-direction: column; height: 100%; min-width: 0; background: #fff; transition: box-shadow .2s; } .product-card:hover { box-shadow: 0 4px 24px rgba(0,0,0,.08); } .product-card__media { position: relative; overflow: hidden; background: var(--color-bg-soft); aspect-ratio: 1 / 1; } .product-card__img-link { display: block; width: 100%; height: 100%; } .product-card__img { width: 100%; height: 100%; object-fit: cover; transition: transform .4s var(--ease); } .product-card:hover .product-card__img { transform: scale(1.04); } .product-card__badges { position: absolute; top: 10px; left: 10px; display: flex; flex-direction: column; align-items: flex-start; gap: 4px; z-index: 2; } .pc-badge { display: inline-flex; align-items: center; padding: 3px 8px; font-size: 11px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; border-radius: var(--radius-pill); } .pc-badge--sale { background: #2E7D32; color: #fff; } .pc-badge--new { background: var(--color-ink); color: #fff; } .pc-badge--delivery { background: var(--color-ink); color: #fff; } .pc-badge--out { background: rgba(255, 255, 255, .92); color: var(--color-muted); } .product-card__oos-overlay { position: absolute; inset: 0; background: rgba(244, 246, 251, 0.72); display: flex; align-items: center; justify-content: center; z-index: 3; backdrop-filter: grayscale(0.4); } .product-card__oos-overlay span { padding: 5px 14px; border: 1px solid var(--color-border); border-radius: var(--radius-pill); background: #fff; font-size: 11px; font-weight: 700; letter-spacing: .05em; text-transform: uppercase; color: var(--color-muted); } .product-card__actions { position: absolute; top: 10px; right: 10px; display: flex; flex-direction: column; gap: 6px; z-index: 3; opacity: 0; transform: translateX(8px); transition: opacity .2s, transform .2s; } .product-card:hover .product-card__actions, .product-card:focus-within .product-card__actions { opacity: 1; transform: translateX(0); } .pc-action { display: flex; align-items: center; justify-content: center; width: 36px; height: 36px; background: #fff; border: none; color: var(--color-ink); cursor: pointer; transition: background .15s, color .15s; } .pc-action svg { width: 18px; height: 18px; flex-shrink: 0; } .pc-action:hover { background: var(--color-accent); color: #fff; } .pc-action--wish.is-active { background: #fff0f0; color: #e03; } .pc-action--compare.is-active { background: var(--color-bg-soft); color: var(--color-accent); } @media (max-width: 860px) { .product-card__actions { top: 8px; right: 8px; gap: 4px; opacity: 1; transform: none; } .pc-action { width: 28px; height: 28px; } .pc-action svg { width: 14px; height: 14px; } } .product-card__body { display: flex; flex-direction: column; flex: 1; padding: 14px 16px 16px; gap: 6px; } .product-card__cat { font-size: 10px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--color-muted); text-decoration: none; } .product-card__cat:hover { color: var(--color-accent); } .product-card__title { font-family: var(--font-heading); font-size: 0.9375rem; line-height: 1.35; margin: 0; min-height: 2.7em; } .product-card__title a { color: var(--color-ink); text-decoration: none; transition: color .15s; } .product-card__title a:hover { color: var(--color-accent); } .product-card__rating, .product-card__rating-count { display: none; } .product-card__footer { display: flex; flex-direction: column; gap: 10px; margin-top: auto; padding-top: 10px; } .product-card__price { font-weight: 700; font-size: 1.0625rem; line-height: 1.35; color: var(--color-ink); min-height: 2.7em; } .product-card__price del { display: inline; font-weight: 400; color: var(--color-muted); font-size: .8125rem; margin-right: 5px; } .product-card__price ins { display: inline; text-decoration: none; color: var(--color-accent); } .product-card__price .woocommerce-price-suffix { display: block; font-weight: 400; font-size: .75rem; line-height: 1.2; color: var(--color-muted); } @media (max-width: 600px) { .product-card__title { font-size: 0.8125rem; } .product-card__cat { font-size: 8.5px; } .product-card__price { font-size: 0.9375rem; } .product-card__price .woocommerce-price-suffix { font-size: 0.6875rem; } } .pc-cart-btn, .product-card .button { display: block; width: 100%; text-align: center; padding: 10px 14px; font-size: 0.8125rem; font-weight: 600; white-space: nowrap !important; } .pc-cart-btn { background: var(--color-accent); color: #fff; border: none; border-radius: var(--radius-pill); text-decoration: none; transition: background var(--dur) var(--ease), color var(--dur) var(--ease); } .pc-cart-btn:hover { background: var(--color-accent-soft); color: #fff; text-decoration: none; } .pc-cart-btn--oos, .pc-cart-btn--oos:hover { background: var(--color-bg-soft, #e9ebf1); color: var(--color-muted, #767676); border: 1px solid var(--color-border, #E8E8E6); cursor: default; } @media (max-width: 860px) { .product-card__cart, .pc-cart-btn, .product-card a.button { padding: 8px 6px !important; font-size: 0.6875rem !important; letter-spacing: 0.02em !important; } .product-card__price { min-height: 2.5em; } } .products-grid.view-grid-5 { grid-template-columns: repeat(5, minmax(0, 1fr)); } .products-grid.view-grid-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); } .products-grid.view-grid-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); } .products-grid.view-list { grid-template-columns: 1fr; } @media (max-width: 1366px) { .products-grid.view-grid-5 { grid-template-columns: repeat(4, minmax(0, 1fr)); } } .products-grid.view-list .product-card { flex-direction: row; } .products-grid.view-list .product-card__media { flex: 0 0 200px; aspect-ratio: unset; height: 200px; } .products-grid.view-list .product-card__cart, .products-grid.view-list .product-card .button { width: auto; align-self: flex-start; } .products-grid.view-list .product-card__body { justify-content: center; } @media (max-width: 1024px) { .products-grid.view-grid-5, .products-grid.view-grid-4 { grid-template-columns: repeat(3, minmax(0, 1fr)); } } @media (max-width: 860px) { .products-grid.view-grid-5, .products-grid.view-grid-4, .products-grid.view-grid-3 { grid-template-columns: repeat(2, minmax(0, 1fr)); } } .shop-view-modes { display: flex; gap: 4px; } .shop-view-modes--mobile { display: none; } .js-view-mode { display: flex; align-items: center; justify-content: center; width: 32px; height: 32px; padding: 0; border: 1px solid var(--color-border); border-radius: var(--radius-pill); background: #fff; color: var(--color-muted); cursor: pointer; line-height: 0; transition: background .15s, color .15s; } .js-view-mode.is-active, .js-view-mode:hover { background: var(--color-ink); color: #fff; border-color: var(--color-ink); } @media (max-width: 860px) { .shop-view-modes--desktop { display: none; } .shop-view-modes--mobile { display: flex; } .shop-view-modes .js-view-mode { width: 26px; height: 26px; } .shop-view-modes .js-view-mode svg { width: 12px; height: 12px; } .shop-toolbar__right { gap: 5px; } .shop-view-modes { gap: 3px; } } .qv-modal { position: fixed; inset: 0; z-index: 9999; display: flex; align-items: center; justify-content: center; padding: 16px; } .qv-modal[hidden] { display: none; } body.qv-open { overflow: hidden; } .qv-modal__backdrop { position: absolute; inset: 0; background: rgba(0,0,0,.55); backdrop-filter: blur(2px); } .qv-modal__dialog { position: relative; background: #fff; width: 100%; max-width: 1140px; min-height: 520px; max-height: 92vh; max-height: 92dvh; overflow-y: auto; z-index: 1; border-radius: 4px; } .qv-modal__close { position: absolute; top: 14px; right: 14px; z-index: 2; width: 38px; height: 38px; display: flex; align-items: center; justify-content: center; background: var(--color-bg-soft); border: none; border-radius: 50%; cursor: pointer; color: var(--color-ink); transition: background .15s, color .15s; } .qv-modal__close:hover { background: var(--color-accent); color: #fff; } .qv-inner { display: grid; grid-template-columns: 1.15fr 0.85fr; gap: 0; min-height: 520px; } .qv-gallery { position: relative; background: var(--color-bg, #fff); display: flex; flex-direction: column; justify-content: center; padding: 32px 32px 24px; gap: 20px; } .qv-gallery__main { flex: 1; display: flex; align-items: center; justify-content: center; min-height: 360px; overflow: hidden; } .qv-gallery__main-img { max-width: 100%; max-height: 440px; width: auto; height: auto; object-fit: contain; mix-blend-mode: multiply; transition: opacity .25s var(--ease); } .qv-gallery__main-img.is-swapping { opacity: 0; } .qv-gallery__placeholder { display: flex; align-items: center; justify-content: center; width: 100%; min-height: 360px; font-size: 0.875rem; color: var(--color-muted); } .qv-gallery__thumbs { display: flex; flex-wrap: nowrap; justify-content: flex-start; gap: 8px; padding: 0; overflow-x: auto; overflow-y: hidden; scrollbar-width: none; -ms-overflow-style: none; -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 12px, #000 calc(100% - 12px), transparent 100%); mask-image: linear-gradient(90deg, transparent 0, #000 12px, #000 calc(100% - 12px), transparent 100%); scroll-behavior: smooth; overscroll-behavior-x: contain; } .qv-gallery__thumbs::-webkit-scrollbar { width: 0; height: 0; display: none; } .qv-gallery__thumbs > * { flex-shrink: 0; } .qv-gallery__thumb { position: relative; flex-shrink: 0; width: 56px; height: 56px; overflow: hidden; border: 1px solid var(--color-border); border-radius: 2px; background: #fff; cursor: pointer; padding: 4px; opacity: .75; transition: opacity .15s var(--ease), border-color .15s var(--ease); } .qv-gallery__thumb:hover { opacity: 1; border-color: var(--color-muted); } .qv-gallery__thumb.is-active { opacity: 1; border-color: var(--color-accent); box-shadow: 0 0 0 1px var(--color-accent); } .qv-gallery__thumb img { width: 100%; height: 100%; object-fit: contain; mix-blend-mode: multiply; } .qv-info { padding: 40px 44px; display: flex; flex-direction: column; gap: 14px; justify-content: center; } .qv-cat { font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: .08em; color: var(--color-muted); text-decoration: none; } .qv-title { font-family: var(--font-heading); font-size: clamp(1.2rem, 2vw, 1.6rem); line-height: 1.25; color: var(--color-ink); margin: 0; } .qv-rating { display: flex; align-items: center; gap: 6px; } .qv-rating-count { font-size: .8125rem; color: var(--color-muted); } .qv-price { font-size: 1.375rem; font-weight: 700; color: var(--color-ink); } .qv-price del { font-weight: 400; color: var(--color-muted); font-size: 1rem; } .qv-price ins, .qv-price ins .woocommerce-Price-amount { text-decoration: none; color: var(--color-accent); } .qv-price .woocommerce-price-suffix { font-size: 0.8125rem; font-weight: 400; color: var(--color-muted); } .qv-desc { font-size: .9375rem; color: var(--color-muted); line-height: 1.6; } .qv-desc-wrap { min-width: 0; } .qv-desc-wrap:not(.is-expanded) .qv-desc { display: -webkit-box; -webkit-line-clamp: 5; line-clamp: 5; -webkit-box-orient: vertical; overflow: hidden; } .qv-desc-toggle { display: inline-flex; align-items: center; gap: 5px; margin-top: 6px; padding: 0; background: none; border: 0; font-family: var(--font-body); font-size: 0.8125rem; font-weight: 600; color: var(--color-accent); cursor: pointer; } .qv-desc-toggle[hidden] { display: none; } .qv-desc-toggle:hover { color: var(--color-ink); } .qv-desc-toggle__icon { transition: transform .2s var(--ease); } .qv-desc-toggle__less { display: none; } .qv-desc-wrap.is-expanded .qv-desc-toggle__more { display: none; } .qv-desc-wrap.is-expanded .qv-desc-toggle__less { display: inline; } .qv-desc-wrap.is-expanded .qv-desc-toggle__icon { transform: rotate(180deg); } .qv-meta { display: flex; flex-wrap: wrap; gap: 12px; font-size: .8125rem; } .qv-meta__item { color: var(--color-muted); } .qv-stock-badge { display: inline-flex; align-items: center; gap: 7px; padding: 5px 12px; border-radius: var(--radius-pill); font-size: 0.75rem; font-weight: 600; letter-spacing: 0.02em; } .qv-stock-badge__dot { width: 7px; height: 7px; border-radius: 50%; flex-shrink: 0; } .qv-mp-badge { display: inline-flex; align-items: center; padding: 5px 12px; border-radius: var(--radius-pill); background: rgba(2, 183, 131, 0.12); color: var(--color-accent); font-size: 0.75rem; font-weight: 600; letter-spacing: 0.02em; } .qv-stock-badge--in { background: rgba(46, 125, 50, 0.1); color: #2e7d32; } .qv-stock-badge--in .qv-stock-badge__dot { background: #2e7d32; } .qv-stock-badge--low { background: rgba(15, 67, 238, 0.12); color: #8a5a10; } .qv-stock-badge--low .qv-stock-badge__dot { background: #0f43ee; } .qv-stock-badge--out { background: rgba(30, 36, 51, 0.06); color: var(--color-muted); } .qv-stock-badge--out .qv-stock-badge__dot { background: var(--color-muted); } .qv-outofstock { margin-top: 16px; padding: 18px 20px; border-radius: var(--radius); background: var(--color-bg-soft); border: 1px solid rgba(30, 36, 51, 0.08); } .qv-outofstock__title { margin: 0 0 6px; font-family: var(--font-heading); font-size: 1rem; font-weight: var(--fw-heading); color: var(--color-ink); } .qv-outofstock__desc { margin: 0; font-size: 0.875rem; line-height: 1.55; color: var(--color-muted); } .qv-modal .qv-cart { margin-top: 12px; } .qv-modal .qv-cart .cart, .qv-modal .qv-cart form.cart { display: flex; align-items: stretch; gap: 12px; margin: 0; flex-wrap: nowrap; } .qv-modal .qv-cart form.cart:has(.bwmp-wrap) { flex-wrap: wrap; } .qv-modal .qv-cart form.cart:has(.bwmp-wrap) .bwmp-wrap, .qv-modal .qv-cart form.cart:has(.bwmp-wrap) .single_add_to_cart_button, .qv-modal .qv-cart form.cart:has(.bwmp-wrap) button[type="submit"] { flex: 1 1 100%; width: 100%; } .qv-modal .qv-cart .quantity { display: inline-flex; align-items: center; flex-shrink: 0; height: 52px; margin: 0; } .qv-modal .qv-cart > .stock, .qv-modal .qv-cart p.stock { display: none; } .qv-modal .qv-cart .button, .qv-modal .qv-cart .button.alt, .qv-modal .qv-cart .single_add_to_cart_button, .qv-modal .qv-cart button[type="submit"] { flex: 1; display: inline-flex !important; align-items: center; justify-content: center; height: 52px !important; min-height: 52px; padding: 0 28px !important; font-family: var(--font-body) !important; font-size: 0.875rem !important; font-weight: 600 !important; letter-spacing: 0.3px; text-transform: uppercase; color: #fff !important; background: var(--color-accent) !important; border: 1px solid var(--color-accent) !important; border-radius: var(--radius-pill) !important; box-shadow: none !important; cursor: pointer; transition: background var(--dur) var(--ease), color var(--dur) var(--ease); } .qv-modal .qv-cart .button:hover, .qv-modal .qv-cart .button.alt:hover, .qv-modal .qv-cart .single_add_to_cart_button:hover, .qv-modal .qv-cart button[type="submit"]:hover { background: transparent !important; color: var(--color-accent) !important; } .qv-modal .qv-cart form.variations_form.cart { display: block; } .qv-modal .qv-cart .variations, .qv-modal .qv-cart .variations tbody, .qv-modal .qv-cart .variations tr, .qv-modal .qv-cart .variations th, .qv-modal .qv-cart .variations td { display: block; width: 100%; padding: 0; border: 0; background: none; text-align: left; } .qv-modal .qv-cart .variations { margin: 0 0 16px; } .qv-modal .qv-cart .variations tr + tr { margin-top: 14px; } .qv-modal .qv-cart .variations th.label { margin-bottom: 7px; } .qv-modal .qv-cart .variations th.label label { font-family: var(--font-body); font-size: 0.6875rem; font-weight: 600; letter-spacing: 0.08em; text-transform: uppercase; color: var(--color-muted); margin: 0; } .qv-modal .qv-cart .variations td.value { position: relative; } .qv-modal .qv-cart .variations select { appearance: none; -webkit-appearance: none; width: 100%; height: 48px; padding: 0 42px 0 18px; border: 1.5px solid var(--color-border); border-radius: var(--radius-pill); background: #fff; font-family: var(--font-body); font-size: 0.9375rem; color: var(--color-ink); cursor: pointer; transition: border-color .15s var(--ease); } .qv-modal .qv-cart .variations select:hover, .qv-modal .qv-cart .variations select:focus { border-color: var(--color-accent); outline: none; } .qv-modal .qv-cart .variations td.value::after { content: ''; position: absolute; top: 24px; right: 19px; width: 9px; height: 9px; margin-top: -6px; border-right: 1.5px solid var(--color-muted); border-bottom: 1.5px solid var(--color-muted); transform: rotate(45deg); pointer-events: none; } .qv-modal .qv-cart .variations .reset_variations { display: inline-block; margin-top: 8px; font-size: 0.75rem; color: var(--color-muted); text-decoration: underline; text-underline-offset: 3px; } .qv-modal .qv-cart .variations .reset_variations:hover { color: var(--color-ink); } .qv-modal .qv-cart .woocommerce-variation-add-to-cart { display: flex; align-items: center; gap: 12px; width: 100%; } .qv-modal .qv-cart .woocommerce-variation-price { margin-bottom: 12px; font-size: 1.25rem; font-weight: 600; line-height: 1.2; color: var(--color-ink); } .qv-modal .qv-cart .woocommerce-variation-price .woocommerce-price-suffix { display: block; margin-top: 2px; font-size: 0.6875rem; font-weight: 400; color: var(--color-muted); } .qv-modal .qv-cart .woocommerce-variation-description { margin-bottom: 12px; font-size: 0.875rem; line-height: var(--lh-body); color: var(--color-muted); } .qv-modal .qv-cart .woocommerce-variation-availability p { margin: 0 0 10px; font-size: 0.8125rem; color: var(--color-muted); } .qv-modal .qv-cart .single_add_to_cart_button.disabled, .qv-modal .qv-cart .single_add_to_cart_button.wc-variation-selection-needed, .qv-modal .qv-cart button[type="submit"].disabled { opacity: 0.45; cursor: not-allowed; } .qv-modal .qv-cart .single_add_to_cart_button.disabled:hover, .qv-modal .qv-cart .single_add_to_cart_button.wc-variation-selection-needed:hover, .qv-modal .qv-cart button[type="submit"].disabled:hover { background: var(--color-accent) !important; color: #fff !important; } .qv-mp-cta { margin-top: 4px; } .qv-mp-btn { display: flex; align-items: center; justify-content: center; gap: 9px; width: 100%; padding: 14px 20px; background: var(--color-accent); color: #fff; border: 1px solid var(--color-accent); border-radius: var(--radius-pill, 999px); font-size: 0.9rem; font-weight: 600; text-decoration: none; transition: background var(--dur) var(--ease), color var(--dur) var(--ease); } .qv-mp-btn:hover { background: transparent; color: var(--color-accent); } .qv-mp-btn svg { flex-shrink: 0; } .qv-full-link { display: inline-flex; align-items: center; justify-content: center; gap: 8px; margin-top: 20px; padding-top: 20px; border-top: 1px solid rgba(30, 36, 51, 0.08); width: 100%; font-size: 0.875rem; font-weight: 600; color: var(--color-ink); text-decoration: none; transition: color var(--dur) var(--ease), gap var(--dur) var(--ease); } .qv-full-link:hover { color: var(--color-accent); gap: 12px; } .qv-full-link svg { flex-shrink: 0; transition: transform var(--dur) var(--ease); } .qv-full-link:hover svg { transform: translateX(3px); } .qv-loading { display: flex; align-items: center; justify-content: center; min-height: 300px; } .qv-spinner { animation: qv-spin 1s linear infinite; } @keyframes qv-spin { to { transform: rotate(360deg); } } @media (max-width: 900px) { .qv-modal__dialog { max-width: 96vw; min-height: auto; } .qv-inner { grid-template-columns: 1fr; min-height: auto; } .qv-gallery__main { min-height: 280px; } .qv-info { padding: 24px 20px; } } @media (max-width: 480px) { .qv-modal .qv-cart .cart, .qv-modal .qv-cart form.cart { flex-direction: row; align-items: stretch; gap: 8px; } .qv-modal .qv-cart form.variations_form.cart { display: block; } .qv-modal .qv-cart .woocommerce-variation-add-to-cart { flex-direction: row; align-items: stretch; gap: 8px; } .qv-modal .qv-cart .qty-stepper { width: auto; flex-shrink: 0; align-self: auto; } .qv-modal .qv-cart .single_add_to_cart_button, .qv-modal .qv-cart button[type="submit"] { flex: 1 1 auto; min-width: 0; padding: 0 10px !important; font-size: 0.72rem !important; letter-spacing: 0.02em; } } .compare-bar { position: fixed; bottom: 0; left: 0; right: 0; z-index: 9000; background: var(--color-ink); color: #fff; padding: 12px 0; box-shadow: 0 -4px 24px rgba(0,0,0,.18); animation: slideUp .25s var(--ease); } .compare-bar[hidden] { display: none; } @keyframes slideUp { from { transform: translateY(100%); } to { transform: translateY(0); } } .compare-bar__inner { max-width: 1280px; margin: 0 auto; padding: 0 24px; display: flex; align-items: center; gap: 20px; } .compare-bar__products { display: flex; gap: 12px; flex: 1; overflow-x: auto; } .compare-bar__item { display: flex; align-items: center; gap: 8px; background: rgba(255,255,255,.1); padding: 6px 10px; flex-shrink: 0; max-width: 200px; } .compare-bar__item img { width: 40px; height: 40px; object-fit: cover; flex-shrink: 0; } .compare-bar__item-name { font-size: .8125rem; color: rgba(255,255,255,.9); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .compare-bar__item-remove { background: none; border: none; color: rgba(255,255,255,.6); cursor: pointer; flex-shrink: 0; padding: 2px; transition: color .15s; } .compare-bar__item-remove:hover { color: #fff; } .compare-bar__actions { display: flex; gap: 10px; flex-shrink: 0; align-items: stretch; } .compare-bar__btn, .compare-bar__clear { display: flex; align-items: center; justify-content: center; } .compare-bar__btn { background: var(--color-accent); color: #fff; border: 1px solid transparent; padding: 10px 24px; font-size: .875rem; font-weight: 700; font-family: var(--font-body); letter-spacing: .03em; border-radius: var(--radius-pill); cursor: pointer; transition: background .15s, border-color .15s; } .compare-bar__btn:hover, .compare-bar__btn:focus-visible, .compare-bar__btn:active { background: var(--color-accent-soft); border-color: var(--color-accent-soft); color: #fff; } .compare-bar__clear { background: none; border: 1px solid rgba(255,255,255,.35); color: rgba(255,255,255,.85); padding: 10px 20px; font-size: .875rem; font-family: var(--font-body); border-radius: var(--radius-pill); cursor: pointer; transition: border-color .15s, color .15s; } .compare-bar__clear:hover { border-color: #fff; color: #fff; } @media (max-width: 600px) { .compare-bar__inner { flex-wrap: wrap; gap: 10px; padding: 10px 16px; } .compare-bar__products { gap: 8px; } .compare-bar__actions { width: 100%; gap: 8px; } .compare-bar__btn, .compare-bar__clear { flex: 1; text-align: center; padding: 9px 12px; font-size: .8125rem; } } .wishlist-page { padding-block: clamp(32px, 4vw, 56px) clamp(48px, 6vw, 80px); } .wishlist-toolbar { display: flex; flex-direction: column; gap: 20px; margin-bottom: 28px; } .wishlist-toolbar[hidden] { display: none !important; } .wishlist-toolbar__head { display: flex; align-items: flex-end; justify-content: space-between; gap: 16px 24px; flex-wrap: wrap; padding-bottom: 20px; border-bottom: 1px solid var(--color-border); } .wishlist-toolbar__count { margin: 0; font-family: var(--font-heading); font-size: clamp(1.25rem, 2vw, 1.5rem); font-weight: 600; line-height: 1.25; color: var(--color-ink); } .wishlist-toolbar__info { margin: 4px 0 0; font-size: 0.8125rem; color: var(--color-muted); } .wishlist-toolbar__info[hidden] { display: none; } .wishlist-toolbar__actions { display: flex; align-items: center; gap: 8px 20px; flex-wrap: wrap; } .wishlist-clear { display: inline-flex; align-items: center; gap: 7px; height: 44px; padding: 0; border: 0; background: none; color: var(--color-muted); font-family: var(--font-body); font-size: 0.8125rem; font-weight: 500; cursor: pointer; transition: color var(--dur) var(--ease); } .wishlist-clear:hover, .wishlist-clear:focus-visible { color: #D93A3A; } .wishlist-add-all, .wishlist-btn { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 46px; padding: 0 22px; border: 1px solid transparent; border-radius: 10px; font-family: var(--font-body); font-size: 0.875rem; font-weight: 600; line-height: 1; text-decoration: none; cursor: pointer; transition: background-color var(--dur) var(--ease), border-color var(--dur) var(--ease), color var(--dur) var(--ease); } .wishlist-add-all, .wishlist-btn--solid { background: var(--color-accent); color: #fff; } .wishlist-add-all:hover, .wishlist-btn--solid:hover, .wishlist-btn--solid:focus-visible { background: var(--color-accent-soft); color: #fff; } .wishlist-add-all[hidden] { display: none; } .wishlist-add-all.is-loading { opacity: 0.7; cursor: progress; } .wishlist-add-all__num { font-weight: 500; opacity: 0.85; } .wishlist-btn--line { background: #fff; border-color: var(--color-border); color: var(--color-ink); } .wishlist-btn--line:hover, .wishlist-btn--line:focus-visible { border-color: var(--color-ink); color: var(--color-ink); } .wishlist-toolbar__controls { display: flex; align-items: center; justify-content: space-between; gap: 12px 16px; flex-wrap: wrap; } .wishlist-search { position: relative; flex: 0 1 340px; min-width: 0; } .wishlist-search__icon { position: absolute; top: 50%; left: 16px; transform: translateY(-50%); color: var(--color-muted); pointer-events: none; } .wishlist-search .wishlist-search__input { width: 100%; height: 44px; padding: 0 16px 0 42px; border: 1px solid var(--color-border); border-radius: 999px; background: #fff; font-family: var(--font-body); font-size: 0.875rem; color: var(--color-ink); box-shadow: none; transition: border-color var(--dur) var(--ease); } .wishlist-search .wishlist-search__input:focus { outline: none; border-color: var(--color-accent); } .wishlist-toolbar__selects { display: flex; align-items: center; gap: 12px 20px; flex-wrap: wrap; } .wishlist-select { display: inline-flex; align-items: center; gap: 8px; margin: 0; } .wishlist-select__label { font-size: 0.8125rem; color: var(--color-muted); white-space: nowrap; } .wishlist-select__input { height: 44px; padding: 0 36px 0 14px; border: 1px solid var(--color-border); border-radius: 10px; font-size: 0.875rem; font-family: var(--font-body); background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23332F2C' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E") right 13px center no-repeat; color: var(--color-ink); cursor: pointer; appearance: none; -webkit-appearance: none; box-shadow: none; transition: border-color var(--dur) var(--ease); } .wishlist-select__input:hover, .wishlist-select__input:focus { outline: none; border-color: var(--color-ink); } .wishlist-grid-wrap .wishlist-grid, .wishlist-grid--suggest { margin: 0; padding: 0; } .wishlist-grid .product-card-wrap { transition: opacity .18s var(--ease); } .wishlist-grid .product-card-wrap.is-removing { opacity: 0.3; pointer-events: none; } .wishlist-grid-wrap .product-card .pc-action--wish { display: none; } .wishlist-grid-wrap .product-card .pc-variations { top: 58px; } .product-card .wl-remove { position: absolute; top: 10px; right: 10px; z-index: 4; display: inline-flex; align-items: center; justify-content: center; width: 40px; height: 40px; padding: 0; border: 1px solid var(--color-border); border-radius: 10px; background: #fff; color: #D93A3A; cursor: pointer; transition: color var(--dur) var(--ease); } .product-card .wl-remove:hover, .product-card .wl-remove:focus-visible { background: #fff; color: #A82424; } .product-card .wl-remove svg { display: block; } .wishlist-no-results { display: flex; flex-direction: column; align-items: center; gap: 10px; padding: 48px 20px 56px; text-align: center; } .wishlist-no-results[hidden] { display: none !important; } .wishlist-no-results__title { margin: 0; color: var(--color-muted); } .wishlist-no-results__reset { padding: 6px 0; border: 0; background: none; color: var(--color-accent); font-family: var(--font-body); font-size: 0.875rem; font-weight: 600; cursor: pointer; transition: color var(--dur) var(--ease); } .wishlist-no-results__reset:hover { color: var(--color-accent-soft); } .wishlist-pagination { margin-top: 40px; padding-bottom: 8px; } .wishlist-pagination[hidden] { display: none !important; } .wishlist-pagination__list { display: flex; align-items: center; justify-content: center; gap: 6px; list-style: none; margin: 0; padding: 0; flex-wrap: wrap; } .wishlist-pagination__btn { display: inline-flex; align-items: center; justify-content: center; min-width: 42px; height: 42px; padding: 0 14px; border: 1px solid var(--color-border); border-radius: 10px; background: #fff; color: var(--color-ink); font-size: var(--fs-small); font-weight: 500; cursor: pointer; transition: border-color var(--dur) var(--ease), color var(--dur) var(--ease); white-space: nowrap; } .wishlist-pagination__btn:hover { border-color: var(--color-ink); color: var(--color-ink); } .wishlist-pagination__btn.is-current { background: var(--color-accent); border-color: var(--color-accent); color: #fff; } .wishlist-pagination__dots { display: inline-flex; align-items: center; justify-content: center; min-width: 32px; height: 42px; color: var(--color-muted); font-size: var(--fs-small); } .wishlist-loading { display: flex; flex-direction: column; align-items: center; gap: 12px; padding: 64px 0; color: var(--color-muted); } .wishlist-loading p { margin: 0; font-size: 0.875rem; } .wishlist-loading[hidden], .wishlist-empty[hidden], .wishlist-grid-wrap[hidden] { display: none !important; } .wishlist-spinner { animation: wishlist-spin 1s linear infinite; } @keyframes wishlist-spin { to { transform: rotate(360deg); } } .wishlist-empty__intro { display: flex; flex-direction: column; align-items: center; max-width: 560px; margin: 0 auto; padding: clamp(16px, 4vw, 40px) 0 0; text-align: center; } .wishlist-empty__art { width: 132px; height: auto; margin-bottom: 24px; color: var(--color-accent); } .wishlist-empty__heart { color: #D93A3A; stroke: #D93A3A; fill: #D93A3A; } .wishlist-empty__title { margin: 0 0 12px; font-family: var(--font-heading); font-size: clamp(1.375rem, 2.6vw, 1.75rem); font-weight: 600; line-height: 1.25; color: var(--color-ink); } .wishlist-empty__desc { margin: 0 0 28px; color: var(--color-muted); line-height: 1.65; } .wishlist-empty__btns { display: flex; justify-content: center; gap: 12px; flex-wrap: wrap; } .wishlist-suggest { margin-top: clamp(48px, 6vw, 72px); padding-top: clamp(32px, 4vw, 44px); border-top: 1px solid var(--color-border); } .wishlist-suggest__title { margin: 0 0 24px; font-family: var(--font-heading); font-size: clamp(1.125rem, 2vw, 1.375rem); font-weight: 600; color: var(--color-ink); } @media (max-width: 860px) { .wishlist-grid-wrap .product-card .pc-variations { top: 46px; } .product-card .wl-remove { top: 6px; right: 6px; width: 34px; height: 34px; border-radius: 9px; } .product-card .wl-remove svg { width: 17px; height: 17px; } } @media (max-width: 600px) { .wishlist-toolbar { gap: 14px; margin-bottom: 20px; } .wishlist-toolbar__head { align-items: center; padding-bottom: 14px; } .wishlist-toolbar__actions { width: 100%; justify-content: space-between; } .wishlist-add-all { min-height: 42px; padding: 0 16px; font-size: 0.8125rem; } .wishlist-search { flex: 1 1 100%; } .wishlist-toolbar__selects { width: 100%; gap: 10px; } .wishlist-select { flex: 1 1 0; min-width: 0; } .wishlist-select--short { flex: 0 0 auto; } .wishlist-select__label { display: none; } .wishlist-select__input { width: 100%; } .wishlist-pagination__btn { min-width: 44px; height: 44px; } .wishlist-pagination__list { gap: 4px; } .wishlist-empty__btns { width: 100%; flex-direction: column; } } .products-grid.wishlist-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); } @media (max-width: 1024px) { .products-grid.wishlist-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } } @media (max-width: 900px) { .products-grid.wishlist-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } } @media (min-width: 1200px) { .wishlist-grid-wrap .products-grid.wishlist-grid { grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 20px; } } @media (max-width: 480px) { .products-grid.wishlist-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; } } .wishlist-toast { position: fixed; bottom: 24px; left: 0; right: 0; margin: 0 auto; width: max-content; max-width: calc(100% - 40px); transform: translateY(10px); z-index: 9999; background: #fff; color: var(--color-ink); border: 1px solid var(--color-border); padding: 12px 20px; border-radius: var(--radius-pill); font-size: .875rem; box-shadow: 0 4px 16px rgba(30, 36, 51, .10); opacity: 0; visibility: hidden; transition: opacity .25s var(--ease), transform .25s var(--ease), visibility .25s var(--ease); pointer-events: none; white-space: nowrap; } .wishlist-toast.is-visible { opacity: 1; visibility: visible; transform: translateY(0); pointer-events: auto; } .wishlist-toast a { color: var(--color-accent); margin-left: 10px; font-weight: 600; text-decoration: none; transition: color var(--dur) var(--ease); } .wishlist-toast a:hover { color: var(--color-ink); } .wishlist-toast__action { margin-left: 10px; padding: 0; border: 0; background: none; color: var(--color-accent); font: inherit; font-weight: 600; cursor: pointer; transition: color var(--dur) var(--ease); } .wishlist-toast__action:hover { color: var(--color-ink); } .compare-page { padding-block: clamp(32px, 4vw, 56px); } .compare-loading { display: flex; flex-direction: column; align-items: center; gap: 12px; padding: 48px 0; color: var(--color-muted); } .compare-loading[hidden], .compare-empty[hidden], .compare-table-host[hidden] { display: none !important; } .compare-spinner { animation: wishlist-spin 1s linear infinite; } .compare-empty { text-align: center; padding: clamp(40px, 6vw, 72px) 24px; max-width: 520px; margin-inline: auto; } .compare-empty__icon { color: var(--color-accent); margin-bottom: 20px; opacity: .7; } .compare-empty__title { font-family: var(--font-heading); font-size: clamp(1.25rem, 2.5vw, 1.5rem); margin: 0 0 12px; color: var(--color-ink); } .compare-empty__desc { color: var(--color-muted); margin: 0 0 28px; line-height: 1.6; } .compare-table-wrap { overflow-x: auto; -webkit-overflow-scrolling: touch; } .compare-table { width: 100%; min-width: 640px; border-collapse: collapse; background: #fff; } .compare-table th, .compare-table td { padding: 14px 16px; text-align: center; vertical-align: middle; border-bottom: 1px solid rgba(30, 36, 51, 0.08); font-size: 0.875rem; } .compare-table__label-col, .compare-table tbody th[scope="row"] { text-align: left; font-weight: 600; color: var(--color-ink); width: 140px; background: var(--color-bg-soft, #F5F6F4); } .compare-table__product-col { min-width: 180px; position: relative; vertical-align: top; padding-top: 36px; } .compare-table__remove { position: absolute; top: 10px; right: 10px; display: inline-flex; align-items: center; justify-content: center; width: 28px; height: 28px; border: none; border-radius: 50%; background: rgba(30, 36, 51, 0.06); color: var(--color-muted); cursor: pointer; transition: background var(--dur) var(--ease), color var(--dur) var(--ease); } .compare-table__remove:hover { background: rgba(214, 54, 56, 0.1); color: #d63638; } .compare-table__thumb { display: block; margin: 0 auto 10px; width: 120px; height: 120px; border-radius: var(--radius, 10px); overflow: hidden; background: var(--color-bg-soft, #F5F6F4); } .compare-table__thumb img { width: 100%; height: 100%; object-fit: cover; display: block; } .compare-table__name { display: block; font-weight: 600; color: var(--color-ink); text-decoration: none; line-height: 1.35; transition: color var(--dur) var(--ease); } .compare-table__name:hover { color: var(--color-accent); } .compare-table td del { color: var(--color-muted); font-size: 0.8125rem; margin-right: 4px; } .compare-table td ins { text-decoration: none; color: var(--color-accent); font-weight: 700; } .compare-table__stock--in { color: #2e7d32; } .compare-table__stock--out { color: var(--color-muted); } .compare-table__rating { display: flex; flex-direction: column; align-items: center; gap: 4px; } .compare-table__rating .star-rating { margin: 0 auto; } .compare-table__rating-count { font-size: 0.75rem; color: var(--color-muted); } .compare-table__text { margin: 0; font-size: 0.8125rem; line-height: 1.55; color: var(--color-muted); text-align: left; max-width: 280px; margin-inline: auto; } .compare-table td .compare-table__text { text-align: left; } .compare-table__actions { display: flex; flex-direction: column; align-items: center; gap: 10px; } .compare-table__link { display: inline-block; font-size: 0.75rem; color: var(--color-accent); text-decoration: none; font-weight: 600; transition: color var(--dur) var(--ease); } .compare-table__link:hover { color: var(--color-ink); } .compare-table tbody th[scope="row"] { vertical-align: top; padding-top: 18px; } .compare-table td { vertical-align: top; } .compare-table__cart.btn { padding: 9px 18px; font-size: 0.75rem; white-space: nowrap; } .compare-toast { position: fixed; bottom: 24px; left: 0; right: 0; margin: 0 auto; width: max-content; max-width: calc(100% - 40px); transform: translateY(10px); z-index: 9999; background: #fff; color: var(--color-ink); border: 1px solid var(--color-border); padding: 12px 20px; border-radius: var(--radius-pill); font-size: .875rem; box-shadow: 0 4px 16px rgba(30, 36, 51, .10); opacity: 0; visibility: hidden; transition: opacity .25s var(--ease), transform .25s var(--ease), visibility .25s var(--ease); pointer-events: none; white-space: nowrap; } .compare-toast.is-visible { opacity: 1; visibility: visible; transform: translateY(0); pointer-events: auto; } .compare-toast a { color: var(--color-accent); margin-left: 10px; font-weight: 600; text-decoration: none; transition: color var(--dur) var(--ease); } .compare-toast a:hover { color: var(--color-ink); } body:has(.compare-bar:not([hidden])) .compare-toast.is-visible, body:has(.compare-bar:not([hidden])) .wishlist-toast.is-visible { bottom: 88px; } @media (max-width: 600px) { body:has(.compare-bar:not([hidden])) .compare-toast.is-visible, body:has(.compare-bar:not([hidden])) .wishlist-toast.is-visible { bottom: 160px; } } @media (max-width: 768px) { .compare-table__label-col, .compare-table tbody th[scope="row"] { width: 110px; font-size: 0.8125rem; } } .page-sitemap { background: #fff; padding-bottom: clamp(48px, 6vw, 88px); } .page-sitemap > .container { padding-top: clamp(40px, 5vw, 72px); } .sitemap-html__intro { max-width: 720px; margin: 0 0 clamp(28px, 4vw, 44px); font-size: var(--fs-small); line-height: var(--lh-body); color: var(--color-muted); } .sitemap-html { display: grid; grid-template-columns: repeat(2, 1fr); gap: clamp(28px, 4vw, 48px); align-items: start; } .sitemap-html__section--wide { grid-column: 1 / -1; } .sitemap-html__title { font-family: var(--font-heading); font-size: clamp(1.125rem, 1.6vw, 1.4375rem); color: var(--color-ink); margin: 0 0 14px; padding-bottom: 10px; border-bottom: 1px solid rgba(30, 36, 51, 0.08); } .sitemap-html__list { list-style: none; margin: 0; padding: 0; } .sitemap-html__list li { margin: 0 0 7px; line-height: 1.5; break-inside: avoid; } .sitemap-html__list a { font-size: 0.875rem; color: var(--color-ink); text-decoration: none; transition: color var(--dur) var(--ease); } .sitemap-html__list a:hover { color: var(--color-accent); } .sitemap-html__list--cols { column-width: 250px; column-gap: 32px; } .sitemap-html__list--tree { column-count: 3; column-gap: 40px; } .sitemap-html__list--tree > li { margin-bottom: 16px; break-inside: avoid; page-break-inside: avoid; -webkit-column-break-inside: avoid; } .sitemap-html__list--tree > li > a { font-weight: 600; } .sitemap-html__anchor { display: block; position: relative; top: -110px; visibility: hidden; } @media (max-width: 1100px) { .sitemap-html__list--tree { column-count: 2; } } @media (max-width: 700px) { .sitemap-html__list--tree { column-count: 1; } } .sitemap-html__list--tree ul { margin: 6px 0 0 14px; padding-left: 12px; border-left: 1px solid rgba(30, 36, 51, 0.09); } .sitemap-html__list--tree ul a { font-size: 0.8125rem; color: var(--color-muted); } .sitemap-html__count { font-size: 0.6875rem; color: var(--color-muted); background: var(--color-bg-soft); border-radius: var(--radius-pill); padding: 1px 7px; margin-left: 4px; } .sitemap-html__pager { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 18px; } .sitemap-html__page { display: inline-flex; align-items: center; justify-content: center; min-width: 34px; height: 34px; padding: 0 9px; font-size: 0.8125rem; color: var(--color-ink); text-decoration: none; border: 1px solid rgba(30, 36, 51, 0.1); border-radius: var(--radius-pill); transition: border-color var(--dur) var(--ease), color var(--dur) var(--ease); } .sitemap-html__page:hover { border-color: var(--color-accent); color: var(--color-accent); } .sitemap-html__page.is-current { background: var(--color-accent); border-color: var(--color-accent); color: #fff; font-weight: 600; } .sitemap-html__total { margin-top: 12px; font-size: 0.75rem; color: var(--color-muted); } .footer-extra-links { display: flex; gap: 16px; flex-wrap: wrap; justify-content: center; } .site-footer__sitemap-link { font-size: 0.8125rem; color: rgba(255, 255, 255, 0.6); text-decoration: none; transition: color var(--dur) var(--ease); } .site-footer__sitemap-link:hover { color: #fff; } @media (max-width: 780px) { .sitemap-html { grid-template-columns: 1fr; } } .tanzanite-ship-badge { display: inline-flex; align-items: center; gap: 5px; padding: 4px 10px; border-radius: 999px; font-size: 11px; font-weight: 700; letter-spacing: .02em; line-height: 1.1; white-space: nowrap; } .tanzanite-ship-badge svg { width: 13px; height: 13px; flex-shrink: 0; } .tanzanite-ship-badge--archive { position: absolute; left: 10px; bottom: 10px; z-index: 2; box-shadow: 0 2px 8px rgba(0, 0, 0, 0.18); } @media (max-width: 600px) { .tanzanite-ship-badge--archive { font-size: 9.5px; padding: 3px 8px; gap: 4px; left: 8px; bottom: 8px; } .tanzanite-ship-badge--archive svg { width: 11px; height: 11px; } } .tanzanite-ship-badge--product { margin: 8px 0 18px; font-size: 12px; padding: 6px 12px; } .tanzanite-preorder-note { display: inline-flex; align-items: center; gap: 7px; font-size: 12.5px; line-height: 1.4; color: #1347f0; background: #fdf8ea; border: 1px solid #cbd5eb; border-radius: 8px; padding: 7px 12px; } .tanzanite-preorder-note__ico { width: 15px; height: 15px; flex-shrink: 0; opacity: 0.9; } .tanzanite-preorder-note__txt { display: inline; } .tanzanite-preorder-note--product { margin: 16px 0 0; } .tanzanite-preorder-note--cart { padding: 4px 10px; font-size: 11.5px; border-radius: 6px; } .tanzanite-preorder-note--checkout { background: none; border: none; padding: 0; gap: 0; font-size: 11.5px; line-height: 1.45; color: #b06a5c; } .tanzanite-preorder-note--checkout .tanzanite-preorder-note__ico { display: none; } .tanzanite-preorder-note--mini { display: block; background: none; border: none; padding: 0; margin-top: 3px; font-size: 10.5px; line-height: 1.35; font-weight: 400; color: #b06a5c; } .tanzanite-preorder-note--mini .tanzanite-preorder-note__ico { display: none; } .tanzanite-preorder-note-line { display: block; margin-top: 5px; } .woocommerce-checkout .form-row .optional, .woocommerce-checkout .optional { display: none !important; } .tanzanite-call-btn { display: inline-flex; align-items: center; justify-content: center; gap: 8px; box-sizing: border-box; background: var(--color-ink); border: 1px solid var(--color-ink); border-radius: var(--radius-pill); color: #fff; font-family: var(--font-body); font-weight: 600; line-height: 1.4; text-align: center; text-decoration: none; cursor: pointer; transition: background var(--dur) var(--ease), border-color var(--dur) var(--ease), color var(--dur) var(--ease); } .tanzanite-call-btn:hover, .tanzanite-call-btn:focus-visible, .entry-content a.tanzanite-call-btn:hover { background: var(--color-accent); border-color: var(--color-accent); color: #fff; text-decoration: none; } .entry-content a.tanzanite-call-btn { color: #fff; text-decoration: none; } .tanzanite-call-btn__icon { width: 16px; height: 16px; flex-shrink: 0; } .tanzanite-call-btn--card, .woocommerce a.tanzanite-call-btn--card { padding: 11px 28px; background: var(--color-accent); border-color: var(--color-accent); color: #fff; font-size: var(--fs-small); } .tanzanite-call-btn--card:hover, .tanzanite-call-btn--card:focus-visible, .woocommerce a.tanzanite-call-btn--card:hover, .woocommerce a.tanzanite-call-btn--card:focus-visible { background: var(--color-accent-soft); border-color: var(--color-accent-soft); color: #fff; } .product-card .tanzanite-call-btn--card { width: 100%; } .product-card__body > .tanzanite-call-btn--card { margin-top: auto; padding: 10px 18px; font-size: 0.8125rem; white-space: nowrap; } .tanzanite-call-box { display: flex; flex-direction: column; gap: 9px; margin: 16px 0 20px; padding: 13px 16px; background: var(--color-bg-soft); border: 1px solid var(--color-border); border-left: 3px solid var(--color-accent); } .tanzanite-call-box__head { display: flex; flex-direction: column; gap: 6px; } .tanzanite-call-box__badge { align-self: flex-start; padding: 3px 9px; background: var(--color-accent); border-radius: var(--radius-pill); color: #fff; font-size: 0.625rem; font-weight: 700; letter-spacing: 0.4px; text-transform: uppercase; } .tanzanite-call-box__note { margin: 0; color: var(--color-muted); font-size: var(--fs-small); line-height: 1.5; } .tanzanite-call-box__cta { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; } .tanzanite-call-box__phone { color: var(--color-ink); font-size: 0.9375rem; font-weight: 700; letter-spacing: 0.3px; white-space: nowrap; } .tanzanite-call-btn--single, .tanzanite-call-btn--qv, .tanzanite-call-btn--variation { padding: 10px 18px; font-size: 0.8125rem; } .tanzanite-call-btn--single .tanzanite-call-btn__icon, .tanzanite-call-btn--qv .tanzanite-call-btn__icon, .tanzanite-call-btn--variation .tanzanite-call-btn__icon { width: 15px; height: 15px; } .tanzanite-call-box--qv, .tanzanite-call-box--variation { margin: 12px 0; padding: 12px 14px; } .woocommerce-variation-availability .tanzanite-call-box { margin-top: 0; } .variations_form.tanzanite-call-order-variation .bwmp-wrap, .variations_form.tanzanite-call-order-variation .quantity, .variations_form.tanzanite-call-order-variation .single_add_to_cart_button { display: none !important; } @media (max-width: 600px) { .tanzanite-call-box__cta { gap: 10px; } .tanzanite-call-btn--single, .tanzanite-call-btn--qv, .tanzanite-call-btn--variation { flex: 1 1 100%; padding: 11px 18px; } .tanzanite-call-box__phone { font-size: 0.9375rem; } } .sp-thumbs { position: relative; max-width: min(720px, 100%); margin-inline: auto; margin-top: 16px; } .sp-thumbs .flex-control-thumbs { margin: 0; max-width: none; cursor: grab; } .sp-thumbs .flex-control-thumbs.is-dragging { cursor: grabbing; scroll-behavior: auto; scroll-snap-type: none; user-select: none; } .sp-thumbs__nav { position: absolute; top: 50%; transform: translateY(-50%); z-index: 2; display: none; align-items: center; justify-content: center; width: 32px; height: 32px; padding: 0; border: 1px solid var(--color-line, #e1e5ed); border-radius: 50%; background: rgba(255, 255, 255, 0.94); color: var(--color-ink, #1d2327); font-size: 20px; line-height: 1; cursor: pointer; box-shadow: 0 1px 4px rgba(0, 0, 0, 0.1); transition: opacity var(--dur, .2s) var(--ease, ease), background var(--dur, .2s) var(--ease, ease); } .sp-thumbs.has-nav .sp-thumbs__nav { display: flex; } .sp-thumbs__nav:hover { background: #fff; } .sp-thumbs__nav:disabled { opacity: 0; pointer-events: none; } .sp-thumbs__nav--prev { left: -6px; } .sp-thumbs__nav--next { right: -6px; } @media (max-width: 640px) { .sp-thumbs.has-nav .sp-thumbs__nav { display: none; } } .sp-thumbs .flex-control-thumbs:focus-visible { outline: 2px solid var(--color-accent, #02B783); outline-offset: 3px; border-radius: 4px; } .swiper:not(.swiper-initialized) > .swiper-wrapper { display: flex; gap: var(--pre-gap, 16px); } .swiper:not(.swiper-initialized) > .swiper-wrapper > .swiper-slide { flex: 0 0 calc((100% - (var(--pre-n, 2) - 1) * var(--pre-gap, 16px)) / var(--pre-n, 2)); width: auto; } .swiper:not(.swiper-initialized) { overflow: hidden; } .hero-swiper:not(.swiper-initialized) { --pre-n: 1; --pre-gap: 0px; } .testimonials-swiper:not(.swiper-initialized) { --pre-n: 1; --pre-gap: 24px; } .brands-swiper:not(.swiper-initialized) { --pre-n: 3; --pre-gap: 10px; } .cats-grid-swiper:not(.swiper-initialized) { --pre-n: 2; --pre-gap: 20px; } .cats-swiper:not(.swiper-initialized) { --pre-n: 2; --pre-gap: 12px; } .products-swiper:not(.swiper-initialized), .related-swiper:not(.swiper-initialized), .brand-swiper:not(.swiper-initialized), .cs-swiper:not(.swiper-initialized), .camp-products-swiper:not(.swiper-initialized), .camp-cat-swiper:not(.swiper-initialized) { --pre-n: 2; --pre-gap: 12px; } @media (min-width: 480px) { .products-swiper:not(.swiper-initialized), .related-swiper:not(.swiper-initialized), .brand-swiper:not(.swiper-initialized), .cs-swiper:not(.swiper-initialized) { --pre-n: 2; --pre-gap: 16px; } } @media (min-width: 560px) { .cats-grid-swiper:not(.swiper-initialized) { --pre-n: 3; } .cats-swiper:not(.swiper-initialized) { --pre-n: 2; --pre-gap: 16px; } } @media (min-width: 640px) { .brands-swiper:not(.swiper-initialized) { --pre-n: 4; --pre-gap: 12px; } .testimonials-swiper:not(.swiper-initialized) { --pre-n: 2; } } @media (min-width: 768px) { .products-swiper:not(.swiper-initialized), .related-swiper:not(.swiper-initialized), .brand-swiper:not(.swiper-initialized), .cs-swiper:not(.swiper-initialized) { --pre-n: 3; --pre-gap: 20px; } } @media (min-width: 860px) { .cats-swiper:not(.swiper-initialized) { --pre-n: 3; --pre-gap: 20px; } } @media (min-width: 900px) { .brands-swiper:not(.swiper-initialized) { --pre-n: 5; --pre-gap: 14px; } .cats-grid-swiper:not(.swiper-initialized) { --pre-n: 4; --pre-gap: 24px; } } @media (min-width: 1024px) { .testimonials-swiper:not(.swiper-initialized) { --pre-n: 3; } } @media (min-width: 1100px) { .products-swiper:not(.swiper-initialized), .related-swiper:not(.swiper-initialized), .brand-swiper:not(.swiper-initialized), .cs-swiper:not(.swiper-initialized) { --pre-n: 4; --pre-gap: 24px; } .cats-swiper:not(.swiper-initialized) { --pre-n: 3; --pre-gap: 24px; } } @media (min-width: 1200px) { .brands-swiper:not(.swiper-initialized) { --pre-n: 6; --pre-gap: 16px; } .cats-grid-swiper:not(.swiper-initialized) { --pre-n: 5; } } @media (min-width: 1280px) { .products-swiper:not(.swiper-initialized), .related-swiper:not(.swiper-initialized), .brand-swiper:not(.swiper-initialized), .cs-swiper:not(.swiper-initialized) { --pre-n: 5; } } @media (min-width: 1500px) { .brands-swiper:not(.swiper-initialized) { --pre-n: 7; --pre-gap: 18px; } } .team-section { padding-block: clamp(40px, 6vw, 80px); background: var(--color-bg-soft, #F5F6F4); } .team-section__inner { text-align: center; } .team-section__label { margin: 0 0 10px; font-size: 0.75rem; font-weight: 600; letter-spacing: .14em; text-transform: uppercase; color: var(--color-accent, #02B783); } .team-section__title { margin: 0 0 12px; font-family: var(--font-heading, Georgia, serif); font-size: var(--fs-h2, 1.7rem); line-height: var(--lh-heading, 1.2); color: var(--color-ink, #242424); } .team-section__desc { margin: 0 auto clamp(28px, 4vw, 44px); max-width: 34rem; font-size: var(--fs-small, 0.875rem); line-height: 1.7; color: var(--color-muted, #767676); } .team-grid { display: grid; grid-template-columns: repeat(var(--team-n, 3), minmax(0, 1fr)); gap: clamp(14px, 2vw, 26px); max-width: 78rem; margin: clamp(12px, 2vw, 24px) auto 0; padding: 0; list-style: none; } .team-card__info { display: flex; flex-direction: column; align-items: center; gap: 0; min-width: 0; width: 100%; flex: 1; } .contact-meta { display: flex; flex-wrap: wrap; justify-content: center; gap: 14px clamp(28px, 4vw, 56px); max-width: 60rem; margin: clamp(26px, 3vw, 38px) auto 0; text-align: left; } .contact-meta__item { display: flex; align-items: flex-start; gap: 11px; min-width: 0; } .contact-meta__item svg { width: 20px; height: 20px; flex: none; margin-top: 2px; color: var(--color-accent, #02B783); } .contact-meta__label { display: block; font-size: 0.6875rem; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; color: var(--color-muted, #767676); margin-bottom: 2px; } .contact-meta__value { display: block; font-size: 0.875rem; line-height: 1.55; color: var(--color-ink, #242424); overflow-wrap: anywhere; } .contact-meta__value a { color: inherit; text-decoration: none; transition: color var(--dur, .25s) var(--ease, ease); } .contact-meta__value a:hover, .contact-meta__value a:focus-visible { color: var(--color-accent, #02B783); text-decoration: underline; } @media (max-width: 700px) { .contact-meta { flex-direction: column; gap: 15px; max-width: 100%; } .contact-meta__item svg { width: 19px; height: 19px; } } .team-card { display: flex; flex-direction: column; align-items: center; gap: 0; padding: clamp(30px, 3.5vw, 44px) 24px clamp(26px, 3vw, 34px); background: var(--color-bg-soft, #F5F6F4); border: 0; text-align: center; } .team-card__photo { width: clamp(124px, 11vw, 148px); height: clamp(124px, 11vw, 148px); margin-bottom: 20px; object-fit: cover; border-radius: 50%; display: block; } .team-card__photo--empty { display: flex; align-items: center; justify-content: center; background: var(--color-bg, #fff); color: var(--color-accent, #02B783); font-family: var(--font-heading, Georgia, serif); font-size: 2.8rem; line-height: 1; } .team-card__name { margin: 0 0 6px; font-family: var(--font-heading, Georgia, serif); font-size: 1.25rem; line-height: 1.25; color: var(--color-ink, #242424); } .team-card__role { margin: 0; font-size: 0.6875rem; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; line-height: 1.45; color: var(--color-muted, #767676); } .team-card__phone, .team-card__email { width: 100%; } .team-card__phone { display: inline-flex; align-items: center; justify-content: center; gap: 9px; margin-top: auto; padding-top: 20px; font-size: 1.0625rem; font-weight: 600; color: var(--color-ink, #242424); text-decoration: none; transition: color var(--dur, .25s) var(--ease, ease); } .team-card__phone svg { width: 17px; height: 17px; flex: none; color: var(--color-accent, #02B783); } .team-card__phone:hover, .team-card__phone:focus-visible { color: var(--color-accent, #02B783); } .team-card__email { margin-top: 8px; font-size: 0.8125rem; color: var(--color-muted, #767676); text-decoration: none; overflow-wrap: anywhere; transition: color var(--dur, .25s) var(--ease, ease); } .team-card__role + .team-card__email { margin-top: auto; padding-top: 20px; } .team-card__name + .team-card__email { margin-top: auto; padding-top: 20px; } .team-card__email:hover, .team-card__email:focus-visible { color: var(--color-accent, #02B783); text-decoration: underline; } @media (max-width: 860px) { .team-grid { grid-template-columns: 1fr; max-width: 100%; gap: 12px; } .team-card { flex-direction: row; align-items: center; gap: 18px; padding: 26px 20px; text-align: left; border-bottom: 0; } .team-card__photo { width: clamp(72px, 20vw, 92px); height: clamp(72px, 20vw, 92px); margin-bottom: 0; flex: none; } .team-card__photo--empty { font-size: clamp(1.6rem, 6vw, 2rem); } .team-card__name { font-size: 1.0625rem; margin-bottom: 3px; } .team-card__role { font-size: 0.625rem; } .team-card__info { align-items: flex-start; } .team-card__role { margin-bottom: 6px; } .team-card__info { flex: 0 1 auto; } .team-card__phone, .team-card__role + .team-card__email, .team-card__name + .team-card__email { margin-top: 6px; padding-top: 0; font-size: 1rem; } .team-card__phone, .team-card__email { justify-content: flex-start; width: auto; } .team-card__email { margin-top: 4px; font-size: 0.78rem; } } @media (max-width: 860px) { .product-card__cart, .pc-cart-btn, .product-card a.button, .product-card .tanzanite-call-btn--card { display: flex !important; align-items: center; justify-content: center; box-sizing: border-box; min-height: 34px; padding: 4px 8px !important; line-height: 1.2; } .product-card__badges { top: 7px; left: 7px; gap: 3px; max-width: calc(100% - 46px); } .product-card__badges .pc-badge { display: block; max-width: 100%; padding: 2px 5px; font-size: 8.5px; line-height: 1.5; letter-spacing: .01em; white-space: nowrap; overflow: hidden; } .pc-mp-note { padding: 2px 6px; font-size: 9px; } .pc-variations { padding: 2px 6px; gap: 4px; } .pc-variations, .pc-mp-note { bottom: 27px; } .pc-mp-note--sus { bottom: 48px; } .tanzanite-ship-badge--archive { padding: 2px 7px; font-size: 9px; gap: 3px; } .tanzanite-ship-badge--archive svg { width: 10px; height: 10px; } .product-card__oos-overlay span { padding: 3px 9px; font-size: 9px; letter-spacing: .03em; } .pc-action { width: 24px; height: 24px; background: rgba(255, 255, 255, 0.62); -webkit-backdrop-filter: blur(3px); backdrop-filter: blur(3px); } .pc-action svg { width: 12px; height: 12px; } .product-card__actions { gap: 3px; } } .hero-slide--img { height: auto; min-height: 0; max-height: none; background-image: none; } .hero-slide__poster { display: block; width: 100%; } .hero-slide__poster-img { display: block; width: 100%; height: auto; object-fit: contain; } .hero-slide--img:not(.hero-slide--img-only) { display: block; position: relative; } .hero-slide--img:not(.hero-slide--img-only)::before { content: ''; position: absolute; inset: 0; z-index: 1; background-color: var(--slide-overlay-color, var(--slide-bg, #242424)); opacity: var(--slide-overlay, 0.55); } .hero-slide--img .hero-slide__inner { grid-template-columns: 1fr; align-content: center; } .hero-slide--img:not(.hero-slide--img-only) .hero-slide__inner { position: absolute; inset: 0; margin-inline: auto; max-width: var(--container, 1280px); padding-block: clamp(20px, 4vw, 64px); overflow: hidden; } .hero-slide--img .hero-slide__right { display: none; } .hero-slide--imgh-sm, .hero-slide--imgh-md, .hero-slide--imgh-lg, .hero-slide--imgh-screen { display: flex; align-items: center; overflow: hidden; } .hero-slide--imgh-sm { height: 380px; } .hero-slide--imgh-md { height: 520px; } .hero-slide--imgh-lg { height: 680px; } .hero-slide--imgh-screen { height: calc(100vh - 110px); height: calc(100svh - 110px); } .hero-slide--imgh-sm .hero-slide__poster, .hero-slide--imgh-md .hero-slide__poster, .hero-slide--imgh-lg .hero-slide__poster, .hero-slide--imgh-screen .hero-slide__poster { height: 100%; } .hero-slide--imgh-sm .hero-slide__poster-img, .hero-slide--imgh-md .hero-slide__poster-img, .hero-slide--imgh-lg .hero-slide__poster-img, .hero-slide--imgh-screen .hero-slide__poster-img { height: 100%; object-fit: cover; } @media (max-width: 768px) { .hero-slide--imgh-lg { height: 520px; } .hero-slide--imgh-md { height: 420px; } .hero-slide--imgh-sm { height: 320px; } } .hero-slide--cpos-top { align-items: flex-start; } .hero-slide--cpos-bottom { align-items: flex-end; } .hero-slide--img.hero-slide--cpos-top .hero-slide__inner { align-content: start; } .hero-slide--img.hero-slide--cpos-bottom .hero-slide__inner { align-content: end; } .hero-slide--tw-narrow .hero-slide__left { max-width: 460px; } .hero-slide--tw-wide .hero-slide__left { max-width: 820px; } .hero-slide__cta--outline { background: transparent; border-color: var(--slide-cta-bg, var(--color-accent)); color: var(--slide-cta-bg, var(--color-accent)); } .hero-slide__cta--outline:hover { background: var(--slide-cta-bg, var(--color-accent)); color: #fff; } .hero-slide__cta--ghost { padding-inline: 0; background: transparent; border-color: transparent; color: var(--slide-cta-bg, var(--color-accent)); } .hero-slide__cta--ghost:hover { gap: 14px; background: transparent; } .hero-slide__cta2--solid { background: var(--slide-cta-bg, var(--color-accent)); border-color: transparent; color: #fff; } .hero-slide__cta2--solid:hover { border-color: transparent; color: #fff; } .hero-slide__cta2--ghost { padding-inline: 0; border-color: transparent; } .hero-slide__cta2--ghost:hover { border-color: transparent; } .hero-slide__left { gap: 22px; } .hero-slide__badge { padding: 7px 18px; border-radius: 14px; font-size: 0.75rem; letter-spacing: 0.14em; box-shadow: 0 6px 22px rgba(0, 0, 0, 0.18); } .hero-slide__title { font-size: clamp(2.5rem, 5vw, 4.25rem); line-height: 1.03; letter-spacing: -0.02em; text-wrap: balance; text-shadow: 0 2px 28px rgba(0, 0, 0, 0.34); } .hero-slide--title-sm .hero-slide__title { font-size: clamp(2rem, 3.6vw, 3rem); } .hero-slide--title-lg .hero-slide__title { font-size: clamp(2.875rem, 6vw, 5rem); } .hero-slide__title::after { content: ""; display: block; width: 64px; height: 2px; margin-top: 22px; background: var(--slide-cta-bg, var(--color-accent)); opacity: 0.9; } .hero-slide--align-center .hero-slide__title::after { margin-inline: auto; } .hero-slide__desc { max-width: 30rem; color: rgba(255, 255, 255, 0.88); font-size: clamp(1rem, 1.35vw, 1.1875rem); line-height: 1.75; text-shadow: 0 1px 14px rgba(0, 0, 0, 0.34); } .hero-slide--theme-dark .hero-slide__desc { color: rgba(29, 35, 39, 0.82); } .hero-slide__actions { margin-top: 10px; gap: 16px; } .hero-slide__cta { padding: 16px 34px; font-size: 0.875rem; letter-spacing: 0.09em; box-shadow: 0 10px 30px rgba(0, 0, 0, 0.22); } .hero-slide__cta2 { padding: 15px 28px; font-size: 0.875rem; } @media (max-width: 860px) { .hero-slide__title { font-size: clamp(1.875rem, 7.2vw, 2.75rem); } .hero-slide--title-lg .hero-slide__title { font-size: clamp(2.125rem, 8vw, 3rem); } .hero-slide--title-sm .hero-slide__title { font-size: clamp(1.625rem, 6.4vw, 2.25rem); } .hero-slide__title::after { margin-top: 16px; } .hero-slide__desc { font-size: 1rem; } .hero-slide__cta { padding: 14px 26px; } } .hero-slide--text-only .hero-slide__title { font-size: clamp(2.5rem, 5vw, 4.25rem); line-height: 1.03; letter-spacing: -0.02em; } .hero-slide--text-only .hero-slide__desc { max-width: 34rem; color: rgba(255, 255, 255, 0.88); font-size: clamp(1rem, 1.35vw, 1.1875rem); } .hero-slide--text-only.hero-slide--theme-dark .hero-slide__desc { color: rgba(29, 35, 39, 0.82); } .hero-slide--text-only .hero-slide__title::after { display: none; } @media (max-width: 860px) { .hero-slide--text-only .hero-slide__title { font-size: clamp(1.875rem, 7.2vw, 2.75rem); } .hero-slide--text-only .hero-slide__desc { font-size: 1rem; } } @media (max-width: 960px) { .hero-slide__inner { grid-template-columns: 1fr; text-align: center; } .hero-slide__left { align-items: center; order: 2; } .hero-slide__right { order: 1; } .hero-slide__desc { margin-inline: auto; } .hero-slide__actions { justify-content: center; } .hero-slide { height: auto; min-height: min(calc(100vh - 110px), 640px); min-height: min(calc(100svh - 110px), 640px); max-height: none; } .hero-slide__graphic { max-height: min(420px, 46vh); max-height: min(420px, 46svh); } .hero-slide__title, .hero-slide--text-only .hero-slide__title { font-size: clamp(1.875rem, 4.4vw, 2.75rem); } .hero-slide--title-lg .hero-slide__title { font-size: clamp(2.125rem, 5vw, 3rem); } .hero-slide--title-sm .hero-slide__title { font-size: clamp(1.625rem, 3.8vw, 2.25rem); } .hero-slide__title::after { margin-top: 16px; margin-inline: auto; } .hero-slide__desc, .hero-slide--text-only .hero-slide__desc { font-size: 1rem; line-height: 1.65; } .hero-slide__cta, .hero-slide__cta2 { padding: 13px 24px; font-size: 0.8125rem; } .hero-slide__inner { gap: 28px; } } @media (max-width: 860px) { .hero-slide { height: auto; min-height: min(calc(100vh - 110px), 640px); min-height: min(calc(100svh - 110px), 640px); max-height: none; } .hero-slide__graphic { max-height: min(260px, 35vh); max-height: min(260px, 35svh); } } @media (max-width: 767px) { .hero-slide { padding-bottom: 0; } .hero-slide__inner { padding-bottom: calc(72px + env(safe-area-inset-bottom, 0px)); } } @media (max-width: 480px) { .hero-slide__graphic { max-height: min(210px, 30vh); max-height: min(210px, 30svh); } .hero-slide__inner { gap: 18px; padding-top: 28px; } .hero-slide__left { gap: 16px; } .hero-slide__title::after { margin-top: 12px; } .hero-slide__desc { font-size: 0.9375rem; line-height: 1.65; } .hero-slide__cta { padding: 13px 24px; } } @media (max-width: 860px) { .hero-slide__title, .hero-slide--text-only .hero-slide__title { font-size: clamp(1.625rem, 6vw, 2.25rem); line-height: 1.12; } .hero-slide--title-lg .hero-slide__title { font-size: clamp(1.875rem, 7vw, 2.5rem); } .hero-slide--title-sm .hero-slide__title { font-size: clamp(1.375rem, 5vw, 1.875rem); } .hero-slide__title::after { width: 48px; margin-top: 14px; margin-inline: auto; } .hero-slide__badge { padding: 5px 13px; border-radius: 11px; font-size: 0.6875rem; letter-spacing: 0.1em; } .hero-slide__desc, .hero-slide--text-only .hero-slide__desc { max-width: 34rem; font-size: 0.9375rem; line-height: 1.6; } .hero-slide__cta, .hero-slide__cta2 { padding: 12px 22px; font-size: 0.75rem; letter-spacing: 0.08em; } .hero-slide__left { gap: 16px; } .hero-slide__actions { margin-top: 4px; gap: 12px; } } @media (max-width: 480px) { .hero-slide__title, .hero-slide--text-only .hero-slide__title { font-size: clamp(1.5rem, 6.4vw, 1.875rem); } .hero-slide__desc, .hero-slide--text-only .hero-slide__desc { font-size: 0.875rem; } .hero-slide__cta, .hero-slide__cta2 { padding: 11px 20px; } }