.av-btn { display: inline-flex; align-items: center; justify-content: center; gap: var(--av-space-2); min-height: var(--av-control-height); padding: 0 var(--av-space-6); border: 1px solid transparent; border-radius: var(--av-radius-sm); font-family: var(--av-font-body); font-size: var(--av-text-button); font-weight: var(--av-weight-medium); line-height: 1.2; letter-spacing: var(--av-tracking-button); text-transform: var(--av-case-label); text-decoration: none; cursor: pointer; transition: background-color var(--av-duration-fast) var(--av-ease), border-color var(--av-duration-fast) var(--av-ease), color var(--av-duration-fast) var(--av-ease); } .av-btn--primary { background-color: var(--av-color-primary); color: var(--av-color-on-primary); } .av-btn--primary:hover { background-color: var(--av-color-primary-hover); color: var(--av-color-on-primary); } .av-btn--secondary { background-color: var(--av-color-secondary); color: var(--av-color-on-secondary); } .av-btn--secondary:hover { background-color: var(--av-color-secondary-hover); color: var(--av-color-on-secondary); } .av-btn--ghost { background-color: transparent; border-color: var(--av-color-heading); color: var(--av-color-heading); } .av-btn--ghost:hover { background-color: var(--av-color-primary); border-color: var(--av-color-primary); color: var(--av-color-on-primary); } .av-btn:active { transform: translateY(1px); } .av-btn:disabled, .av-btn[aria-disabled="true"] { opacity: 0.5; cursor: not-allowed; pointer-events: none; } .wp-block-button.is-style-av-secondary .wp-block-button__link { --theme-button-background-initial-color: var(--av-color-secondary); --theme-button-background-hover-color: var(--av-color-secondary-hover); --theme-button-text-initial-color: var(--av-color-on-secondary); --theme-button-text-hover-color: var(--av-color-on-secondary); } .wp-block-button.is-style-av-ghost .wp-block-button__link { --theme-button-background-initial-color: transparent; --theme-button-background-hover-color: var(--av-color-primary); --theme-button-text-initial-color: var(--av-color-heading); --theme-button-text-hover-color: var(--av-color-on-primary); --theme-button-border: 1px solid var(--av-color-heading); --theme-button-border-hover-color: var(--av-color-primary); } .is-style-av-inverse .wp-block-button.is-style-av-ghost .wp-block-button__link, .av-band--inverse .av-btn--ghost { --theme-button-text-initial-color: var(--av-color-inverse-text); --theme-button-border: 1px solid var(--av-color-inverse-text); --theme-button-background-hover-color: var(--av-color-inverse-accent); --theme-button-border-hover-color: var(--av-color-inverse-accent); --theme-button-text-hover-color: var(--av-ink); border-color: var(--av-color-inverse-text); color: var(--av-color-inverse-text); } .av-band--inverse .av-btn--ghost:hover { background-color: var(--av-color-inverse-accent); border-color: var(--av-color-inverse-accent); color: var(--av-ink); } .av-card { position: relative; display: flex; flex-direction: column; background: transparent; color: var(--av-color-text); } .av-card__media { position: relative; display: block; aspect-ratio: 4 / 5; overflow: hidden; background: var(--av-color-image-well); border: 1px solid var(--av-color-border); border-radius: var(--av-radius-none); } .av-card__media img { width: 100%; height: 100%; object-fit: contain; transition: transform var(--av-duration-slow) var(--av-ease); } .av-card:hover .av-card__media img { transform: scale(1.03); } .av-card__badge { position: absolute; top: var(--av-space-3); inset-inline-start: var(--av-space-3); z-index: 1; } .av-card__category { margin-top: var(--av-space-4); font-size: var(--av-text-xs); font-weight: var(--av-weight-semibold); letter-spacing: var(--av-tracking-label); text-transform: var(--av-case-label); color: var(--av-color-text-muted); } .av-card__title { margin: var(--av-space-1) 0 0; font-family: var(--av-font-body); font-size: var(--av-text-h5); font-weight: var(--av-weight-medium); line-height: var(--av-leading-h5); letter-spacing: var(--av-tracking-normal); text-transform: none; color: var(--av-color-heading); } .av-card__title a { color: inherit; text-decoration: none; } .av-card__title a::after { content: ""; position: absolute; inset: 0; } .av-card__title a:hover { color: var(--av-color-link); } .av-card__price { margin-top: var(--av-space-1); font-size: var(--av-text-body); font-weight: var(--av-weight-semibold); color: var(--av-color-heading); } .av-card__price del { margin-inline-start: var(--av-space-2); font-weight: var(--av-weight-regular); color: var(--av-color-text-muted); } .av-card__price ins { text-decoration: none; } [data-products] .product .ct-media-container, .woocommerce ul.products li.product .ct-media-container { background: var(--av-color-image-well); border: 1px solid var(--av-color-border); border-radius: var(--av-radius-none); } [data-products] .product .woocommerce-loop-product__title, .woocommerce ul.products li.product .woocommerce-loop-product__title { --theme-font-family: var(--av-font-body); --theme-font-size: var(--av-text-h5); --theme-font-weight: var(--av-weight-medium); --theme-line-height: var(--av-leading-h5); --theme-letter-spacing: var(--av-tracking-normal); --theme-text-transform: none; --theme-heading-color: var(--theme-palette-color-4); } [data-products] .product .price, .woocommerce ul.products li.product .price { --theme-font-size: var(--av-text-body); --theme-font-weight: var(--av-weight-semibold); --theme-text-color: var(--theme-palette-color-4); } [data-products] .product .price del, .woocommerce ul.products li.product .price del { font-weight: var(--av-weight-regular); color: var(--theme-palette-color-13); opacity: 1; } [data-products] .product .price ins { text-decoration: none; } [data-products] .product .entry-meta, [data-products] .product .entry-meta a { font-size: var(--av-text-xs); letter-spacing: var(--av-tracking-label); text-transform: var(--av-case-label); color: var(--theme-palette-color-13); } .av-field { display: block; margin-bottom: var(--av-space-5); } .av-field__label, .woocommerce form .form-row label, .wpcf7 label { display: block; margin-bottom: var(--av-space-2); font-size: var(--av-text-small); font-weight: var(--av-weight-medium); line-height: var(--av-leading-small); color: var(--av-color-text); } .av-field__required, .woocommerce form .form-row .required { color: var(--av-color-error); text-decoration: none; } .av-field__input { width: 100%; min-height: var(--av-control-height); padding: 0 var(--av-space-4); border: 1px solid var(--av-color-border-strong); border-radius: var(--av-radius-sm); background: var(--av-color-bg); color: var(--av-color-text); font: inherit; } textarea.av-field__input { min-height: 140px; padding-block: var(--av-space-3); } .av-field__input::placeholder { color: var(--av-color-text-muted); opacity: 1; } .av-field__input:hover { border-color: var(--av-color-text-muted); } .av-field__input:focus { border-color: var(--av-color-focus); outline: var(--av-focus-ring); outline-offset: 0; } .av-field__input:disabled { background: var(--av-color-surface); color: var(--av-color-text-muted); cursor: not-allowed; } .av-field__help { margin-top: var(--av-space-2); font-size: var(--av-text-small); line-height: var(--av-leading-small); color: var(--av-color-text-muted); } .av-field--error .av-field__input, .av-field__input[aria-invalid="true"], .woocommerce form .form-row.woocommerce-invalid input.input-text, .woocommerce form .form-row.woocommerce-invalid select, .woocommerce form .form-row.woocommerce-invalid textarea { --theme-form-field-border-initial-color: var(--av-color-error); border-color: var(--av-color-error); } .av-field__error, .woocommerce form .form-row .checkout-inline-error-message { display: flex; align-items: flex-start; gap: var(--av-space-2); margin-top: var(--av-space-2); font-size: var(--av-text-small); line-height: var(--av-leading-small); color: var(--av-color-error); } .av-field__error::before { content: ""; flex: 0 0 16px; width: 16px; height: 16px; margin-top: 0.2em; background: currentColor; -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M8 1a7 7 0 1 0 0 14A7 7 0 0 0 8 1zm-.75 3.5h1.5v5h-1.5v-5zM8 12.25a.9.9 0 1 1 0-1.8.9.9 0 0 1 0 1.8z'/%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M8 1a7 7 0 1 0 0 14A7 7 0 0 0 8 1zm-.75 3.5h1.5v5h-1.5v-5zM8 12.25a.9.9 0 1 1 0-1.8.9.9 0 0 1 0 1.8z'/%3E%3C/svg%3E") center / contain no-repeat; } .av-field--success .av-field__input, .woocommerce form .form-row.woocommerce-validated input.input-text { --theme-form-field-border-initial-color: var(--av-color-success); border-color: var(--av-color-success); } .av-section-header { display: grid; gap: var(--av-space-3); margin-bottom: var(--av-space-7); } .av-section-header > *, .av-section-header__text > * { max-width: 46rem; margin-block: 0; } .av-section-header__text { display: grid; gap: var(--av-space-3); } .av-section-header--center { text-align: center; justify-items: center; } .av-section-header--split { grid-template-columns: 1fr auto; align-items: end; } .av-section-header__action { margin: 0; padding-bottom: 0.35em; } .av-section-header__eyebrow { margin: 0; font-size: var(--av-text-xs); font-weight: var(--av-weight-semibold); letter-spacing: var(--av-tracking-label); text-transform: var(--av-case-label); color: var(--av-color-secondary); } .av-section-header__title { margin: 0; } .av-section-header__lead { margin: 0; font-size: var(--av-text-lead); color: var(--av-color-text-muted); } .av-section-header__link { font-size: var(--av-text-small); font-weight: var(--av-weight-medium); letter-spacing: var(--av-tracking-button); text-transform: var(--av-case-label); color: var(--av-color-heading); text-decoration: underline; text-decoration-color: var(--av-color-brand-gold); text-decoration-thickness: 1px; text-underline-offset: 0.4em; white-space: nowrap; } .av-section-header__link:hover { color: var(--av-color-link); } @media (max-width: 689.98px) { .av-section-header--split { grid-template-columns: 1fr; } .av-section-header { margin-bottom: var(--av-space-6); } } .av-breadcrumb, .ct-breadcrumbs { font-size: var(--av-text-small); line-height: var(--av-leading-small); color: var(--av-color-text); --theme-text-color: var(--theme-palette-color-3); --theme-link-initial-color: var(--theme-palette-color-13); --theme-link-hover-color: var(--theme-palette-color-1); } .av-breadcrumb { padding-block: var(--av-space-4); border-bottom: 1px solid var(--av-color-border); } .av-breadcrumb__list { display: flex; flex-wrap: wrap; align-items: center; gap: var(--av-space-2); margin: 0; padding: 0; list-style: none; } .av-breadcrumb__item { display: inline-flex; align-items: center; gap: var(--av-space-2); } .av-breadcrumb__item + .av-breadcrumb__item::before { content: "/"; color: var(--av-color-border-strong); } .av-breadcrumb__link { color: var(--av-color-text-muted); text-decoration: none; } .av-breadcrumb__link:hover { color: var(--av-color-link); text-decoration: underline; text-underline-offset: 0.25em; } .av-breadcrumb__item[aria-current="page"] { color: var(--av-color-text); font-weight: var(--av-weight-medium); } .av-badge { display: inline-flex; align-items: center; min-height: 24px; padding: 0 var(--av-space-3); border-radius: var(--av-radius-sm); font-family: var(--av-font-body); font-size: var(--av-text-xs); font-weight: var(--av-weight-semibold); line-height: 1.1; letter-spacing: var(--av-tracking-label); text-transform: var(--av-case-label); white-space: nowrap; } .av-badge--new { background: var(--av-color-primary); color: var(--av-color-on-primary); } .av-badge--sale { background: var(--av-color-accent); color: var(--av-color-on-accent); } .av-badge--soldout { background: var(--av-color-text-muted); color: var(--av-color-bg); } .woocommerce span.onsale, .onsale, .out-of-stock-badge { height: 24px; min-height: 24px; padding: 0 var(--av-space-3); border-radius: var(--av-radius-sm); letter-spacing: var(--av-tracking-label); text-transform: var(--av-case-label); } [data-products] .product { position: relative; } [data-products] .product > .av-badge--new { position: absolute; top: 15px; inset-inline-start: 15px; z-index: 2; } .av-band, .wp-block-group.is-style-av-band, .wp-block-group.is-style-av-inverse { padding-block: var(--av-section-y); } .av-band--alt, .wp-block-group.is-style-av-band { background: var(--av-color-bg-alt); } .av-band--inverse, .wp-block-group.is-style-av-inverse { background: var(--av-color-inverse-bg); color: var(--av-color-inverse-text); --theme-text-color: var(--av-color-inverse-text); --theme-headings-color: var(--av-color-inverse-text); --theme-heading-color: var(--av-color-inverse-text); --theme-link-initial-color: var(--av-color-inverse-accent); --theme-link-hover-color: var(--av-gold-300); --av-color-heading: var(--av-color-inverse-text); --av-color-text: var(--av-color-inverse-text); --av-color-text-muted: var(--av-color-inverse-muted); --av-color-secondary: var(--av-color-inverse-accent); --av-color-secondary-hover: var(--av-gold-300); --av-color-on-secondary: var(--av-ink); --av-color-link: var(--av-color-inverse-accent); --av-color-focus: var(--av-gold-300); } .av-band--inverse :is(h1, h2, h3, h4, h5, h6), .wp-block-group.is-style-av-inverse :is(h1, h2, h3, h4, h5, h6) { color: var(--av-color-inverse-text); } .av-band--inverse :is(p, li, figcaption) a:not(.wp-element-button, .wp-block-button__link), .wp-block-group.is-style-av-inverse :is(p, li, figcaption) a:not(.wp-element-button, .wp-block-button__link) { color: var(--av-color-inverse-accent); } .av-band--inverse :is(p, li, figcaption) a:not(.wp-element-button, .wp-block-button__link):hover, .wp-block-group.is-style-av-inverse :is(p, li, figcaption) a:not(.wp-element-button, .wp-block-button__link):hover { color: var(--av-gold-300); } .av-btn:focus-visible, .wp-block-button__link:focus-visible, .button:focus-visible, .wp-element-button:focus-visible { outline: var(--av-focus-ring); outline-offset: var(--av-focus-offset); } .av-card__title a:focus-visible { outline: none; } .av-card:focus-within .av-card__media { outline: var(--av-focus-ring); outline-offset: var(--av-focus-offset); } .ct-header :is(a, button, summary):focus-visible, .ct-footer :is(a, button, summary):focus-visible, #offcanvas :is(a, button, summary):focus-visible, .av-band--inverse :is(a, button, summary):focus-visible, .is-style-av-inverse :is(a, button, summary):focus-visible { outline: 2px solid var(--av-gold-300); outline-offset: 3px; } .av-sr-only { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; } .av-card-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: var(--av-space-6); margin: 0; padding: 0; list-style: none; } .skip-link:focus, .skip-link:focus-visible { position: fixed; top: 0.5rem; left: 0.5rem; z-index: 100000; width: auto; height: auto; padding: 0.75rem 1rem; clip: auto; clip-path: none; background: var(--av-color-primary); color: var(--av-color-on-primary); font-weight: 600; text-decoration: none; outline: 2px solid var(--av-color-focus); outline-offset: 2px; } .av-field__req { color: var(--av-color-error); margin-left: 0.15em; } .av-form__hint { font-size: 0.875rem; color: var(--av-color-text-muted); margin: 0 0 1rem; } .xoo-wsch-close:focus-visible { outline: 2px solid var(--av-color-focus); outline-offset: 2px; } @media (min-width: 1000px) { .ct-header .menu > li.menu-item-has-children:focus-within > .sub-menu { opacity: 1; visibility: visible; pointer-events: auto; transform: none; } } @media (prefers-reduced-motion: reduce) { *, *::before, *::after { animation-duration: 0.01ms !important; animation-iteration-count: 1 !important; transition-duration: 0.01ms !important; scroll-behavior: auto !important; } } .av-consent { position: fixed; left: 1rem; right: 1rem; bottom: 1rem; z-index: 99990; display: flex; flex-wrap: wrap; align-items: center; gap: 0.75rem 1rem; max-width: 720px; margin: 0 auto; padding: 0.9rem 1.1rem; background: var(--av-ink, #0c0b08); color: var(--av-neutral-100, #f5f1ec); border: 1px solid var(--av-night-600, #302d29); box-shadow: 0 16px 40px rgba(12, 11, 8, 0.3); font-size: 0.9rem; } .av-consent[hidden] { display: none; } .av-consent__text { flex: 1 1 320px; margin: 0; } .av-consent__text a { color: var(--av-gold-500, #cd994f); text-decoration: underline; text-underline-offset: 0.2em; } .av-consent__ok { flex: 0 0 auto; padding: 0.5rem 1.1rem; } .av-size-table table { width: 100%; border-collapse: collapse; } .av-size-table th, .av-size-table td { padding: 0.5rem 0.6rem; border-bottom: 1px solid var(--av-color-border, #dcd7cf); text-align: left; } .av-size-table thead th { background: var(--av-neutral-100, #f5f1ec); } .av-price-ask { display: inline-block; font-weight: 600; color: var(--av-gold-700, #8b5e22); } .av-pgal { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 1.25rem; } .av-pgal__item { margin: 0; } .av-pgal__item img { width: 100%; height: auto; aspect-ratio: 3 / 4; object-fit: cover; background: #fff; } .av-pgal__item figcaption { margin-top: 0.5rem; font-size: 0.9rem; color: var(--av-color-text-muted, #59554e); } .av-empty-grid { padding: 1.25rem 1.5rem; border: 1px dashed var(--av-color-border, #dcd7cf); color: var(--av-color-text-muted, #59554e); text-align: center; } .av-order { display: flex; flex-wrap: wrap; gap: 0.5rem; margin-top: 0.85rem; } .av-order__btn { flex: 1 1 9rem; display: inline-flex; align-items: center; justify-content: center; min-height: 46px; padding: 0.55rem 1rem; border: 1px solid var(--av-color-border-strong, #8b857d); border-radius: 2px; background: transparent; color: var(--av-color-text, #1f1d19); font-size: 0.9rem; letter-spacing: 0.02em; line-height: 1.2; text-align: center; text-decoration: none; } .av-order__btn--wa, .av-order__btn--wa:hover, .av-order__btn--wa:focus { border-color: var(--av-green-600, #17653c); background: var(--av-green-600, #17653c); color: #fff; } .av-order__btn--call:hover, .av-order__btn--call:focus { color: var(--av-color-text, #1f1d19); } .av-order__btn:focus-visible { outline: 2px solid var(--av-gold-700, #8b5e22); outline-offset: 2px; } .av-order--card { margin-top: 0.6rem; gap: 0.4rem; } .av-order--card .av-order__btn { flex-basis: 6.5rem; min-height: 38px; padding: 0.35rem 0.5rem; font-size: 0.78rem; } .av-book-note { margin: 0.85rem 0 0; font-size: 0.9rem; color: var(--av-color-text-muted, #59554e); } .av-book-banner { margin: 0 0 1.5rem; padding: 1rem 1.25rem; border-left: 3px solid var(--av-gold-500, #cd994f); background: var(--av-gold-100, #fbefd6); color: var(--av-neutral-900, #1f1d19); }