/*
 * Vetrina — tema gratuito per moda, lifestyle e concept store.
 * Direzione: header sottile, hero immersiva, mosaico asimmetrico, catalogo denso, blu elettrico.
 */

:root {
    --kv-surface-2: var(--vetrina-tint, #eef4ff);
    --kv-muted: color-mix(in srgb, var(--kv-text) 64%, transparent);
    --kv-border: color-mix(in srgb, var(--kv-text) 16%, transparent);
    --kv-radius: 2px;
    --kv-radius-lg: 2px;
    --kv-radius-btn: 2px;
    --kv-shadow: 0 18px 46px rgba(17, 24, 39, .09);
    --kv-shadow-lg: 0 28px 70px rgba(17, 24, 39, .16);
    --kv-header-bg: var(--kv-surface);
    --kv-footer-bg: var(--vetrina-tint, #eef4ff);
    --kv-footer-text: var(--kv-text);
    --kv-container: 1360px;
    --kv-section-space: clamp(58px, 7vw, 106px);
}

.kv-theme-vetrina { font-weight: 400; }
.kv-theme-vetrina h1,
.kv-theme-vetrina h2,
.kv-theme-vetrina h3,
.kv-theme-vetrina .kv-block__title { font-weight: 600; letter-spacing: -.035em; }
.kv-theme-vetrina .kv-block__head { align-items: center; text-align: center; margin-bottom: clamp(24px, 3vw, 42px); }
.kv-theme-vetrina .kv-block__title { font-size: clamp(2rem, 3.9vw, 3.5rem); line-height: .98; }
.kv-theme-vetrina .kv-block__title em { color: var(--kv-accent); font-style: normal; }
.kv-theme-vetrina .kv-block__subtitle { max-width: 560px; margin: 10px auto 0; color: var(--kv-muted); font-size: 1.04rem; }
.kv-theme-vetrina .kv-btn { min-height: 46px; padding-inline: 24px; text-transform: uppercase; letter-spacing: .105em; font-size: .72rem; font-weight: 700; }
.kv-opt-corners-bevel { --kv-radius: 6px; --kv-radius-lg: 8px; --kv-radius-btn: 6px; }
.kv-opt-corners-soft { --kv-radius: 12px; --kv-radius-lg: 18px; --kv-radius-btn: 999px; }
.kv-opt-corners-round { --kv-radius: 18px; --kv-radius-lg: 28px; --kv-radius-btn: 999px; }
.kv-opt-density-airy .kv-grid { gap: clamp(20px, 2.4vw, 34px); }

/* Intestazione: una barra commerciale netta e un menu visivamente leggero. */
.kv-theme-vetrina .kv-announcement { min-height: 32px; display: grid; place-items: center; padding-block: 5px; text-transform: uppercase; letter-spacing: .16em; font-size: .66rem; font-weight: 600; }
.kv-theme-vetrina .kv-header { box-shadow: 0 1px 0 var(--kv-border); border: 0; }
.kv-theme-vetrina .kv-header__bar { background: var(--vetrina-deep); color: #fff; }
.kv-theme-vetrina .kv-header__bar-inner { min-height: 30px; }
.kv-theme-vetrina .kv-header__bar a,
.kv-theme-vetrina .kv-header__link,
.kv-theme-vetrina .kv-header__contact a { color: #fff; opacity: .86; }
.kv-theme-vetrina .kv-header__main { min-height: 66px; gap: 18px; }
.kv-theme-vetrina .kv-brand__mark { width: 38px; height: 38px; border-radius: 0; background: var(--kv-accent); }
.kv-theme-vetrina .kv-brand__name { font-family: var(--kv-font-heading); font-weight: 700; font-size: 1.35rem; letter-spacing: -.045em; }
.kv-theme-vetrina .kv-brand__logo { max-height: 42px; }
.kv-theme-vetrina .kv-search { max-width: 360px; background: transparent; border: 0; border-bottom: 1px solid var(--kv-border); border-radius: 0; padding-left: 4px; }
.kv-theme-vetrina .kv-search button { width: 38px; height: 38px; background: transparent; color: var(--kv-text); }
.kv-theme-vetrina .kv-cart__count { background: var(--kv-accent); }
.kv-theme-vetrina .kv-nav { border-top: 1px solid var(--kv-border); }
.kv-theme-vetrina .kv-nav__list { justify-content: center; gap: 0 12px; }
.kv-theme-vetrina .kv-nav__item > a { padding-block: 12px; text-transform: uppercase; letter-spacing: .12em; font-size: .72rem; font-weight: 600; }
.kv-theme-vetrina .kv-nav__item > a:hover { color: var(--kv-accent); }

/* Hero firma: piena finestra, testo centrale e fondale astratto se manca la foto. */
.vetrina-hero { position: relative; overflow: hidden; background: var(--vetrina-deep); color: #fff; }
.vetrina-hero--normal { min-height: clamp(580px, 72vh, 820px); }
.vetrina-hero--full { min-height: calc(100svh - 128px); }
.vetrina-hero .kv-slides__track,
.vetrina-hero .kv-slides__item { min-height: inherit; }
.vetrina-hero__slide { position: relative; display: none; align-items: stretch; overflow: hidden; background: var(--vetrina-deep); }
.vetrina-hero__slide.is-active { display: flex; }
.vetrina-hero__slide::after { content: ""; position: absolute; inset: 0; z-index: 1; background: linear-gradient(180deg, rgba(5, 9, 17, .06), rgba(5, 9, 17, .34)); pointer-events: none; }
.vetrina-hero__slide.has-image::after { background: linear-gradient(90deg, rgba(5, 9, 17, .48), rgba(5, 9, 17, .18) 45%, rgba(5, 9, 17, .34)); }
.vetrina-hero__image { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.vetrina-hero__art { position: absolute; inset: 0; overflow: hidden; background: linear-gradient(125deg, var(--kv-accent) 0 48%, var(--vetrina-deep) 48% 100%); }
.vetrina-hero__art::before { content: ""; position: absolute; width: 48vw; height: 48vw; min-width: 520px; min-height: 520px; border: 1px solid rgba(255, 255, 255, .28); border-radius: 50%; right: -8vw; top: 50%; transform: translateY(-50%); }
.vetrina-hero__art::after { content: ""; position: absolute; inset: 13% 10% 13% auto; width: min(34vw, 520px); border: 1px solid rgba(255, 255, 255, .38); background: linear-gradient(145deg, rgba(255,255,255,.12), rgba(255,255,255,.02)); transform: rotate(6deg); }
.vetrina-hero__shape { position: absolute; display: block; z-index: 1; }
.vetrina-hero__shape--one { width: clamp(120px, 14vw, 230px); aspect-ratio: 1; border-radius: 50%; right: 21%; top: 17%; background: var(--vetrina-highlight); box-shadow: 0 32px 70px rgba(0,0,0,.25); }
.vetrina-hero__shape--two { width: clamp(170px, 20vw, 330px); aspect-ratio: 4 / 5; right: 9%; bottom: 8%; background: var(--kv-surface); transform: rotate(-9deg); opacity: .94; }
.vetrina-hero__shape--three { width: clamp(120px, 13vw, 220px); aspect-ratio: 3 / 5; right: 29%; bottom: 4%; border: 22px solid var(--kv-accent); background: transparent; transform: rotate(14deg); }
.vetrina-hero__frame { position: absolute; right: 15%; top: 22%; width: clamp(200px, 24vw, 390px); aspect-ratio: 3 / 4; border: 2px solid rgba(255,255,255,.82); z-index: 2; transform: rotate(-2deg); }
.vetrina-hero__content { position: relative; z-index: 3; display: grid; place-items: center; min-height: inherit; padding-block: clamp(72px, 9vw, 130px); }
.vetrina-hero__copy { width: min(880px, 82vw); margin-inline: auto; text-align: center; }
.vetrina-hero__badge { display: inline-flex; align-items: center; min-height: 27px; padding: 4px 11px; margin-bottom: 22px; border: 1px solid rgba(255,255,255,.55); color: #fff; text-transform: uppercase; letter-spacing: .16em; font-size: .64rem; font-weight: 600; }
.vetrina-hero__eyebrow { margin: 0 0 15px; color: #fff; font-size: .75rem; font-weight: 600; letter-spacing: .24em; text-transform: uppercase; }
.vetrina-hero__title { margin: 0; color: #fff; font-size: clamp(3.35rem, 8.2vw, 7.5rem); line-height: .82; font-weight: 600; letter-spacing: -.065em; text-wrap: balance; }
.vetrina-hero__title em { color: var(--vetrina-highlight); font-style: normal; }
.vetrina-hero__text { width: min(650px, 100%); margin: 28px auto 0; color: rgba(255,255,255,.9); font-size: clamp(1rem, 1.4vw, 1.18rem); line-height: 1.55; }
.vetrina-hero__actions { display: flex; justify-content: center; flex-wrap: wrap; gap: 12px; margin-top: 30px; }
.vetrina-hero__secondary { border: 1px solid rgba(255,255,255,.72); color: #fff; background: rgba(7, 13, 24, .12); }
.vetrina-hero__secondary:hover { background: #fff; color: var(--vetrina-deep); }
.vetrina-hero .kv-slides__nav { color: #fff; border-color: rgba(255,255,255,.5); }
.vetrina-hero .kv-slides__dots button { background: rgba(255,255,255,.5); }
.vetrina-hero .kv-slides__dots button[aria-current="true"] { background: #fff; }

/* Mosaico categorie: 12 colonne su desktop e geometrie diverse, senza dipendere dalle foto. */
.vetrina-categories__grid { list-style: none; display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); grid-auto-rows: clamp(150px, 17vw, 246px); gap: 10px; margin: 0; padding: 0; }
.vetrina-categories__item { grid-column: span 4; }
.vetrina-categories__item--1 { grid-column: span 5; grid-row: span 2; }
.vetrina-categories__item--2 { grid-column: span 3; }
.vetrina-categories__item--3 { grid-column: span 4; }
.vetrina-categories__item--4 { grid-column: span 4; }
.vetrina-categories__item--5 { grid-column: span 3; }
.vetrina-categories__item--6 { grid-column: span 4; }
.vetrina-category { position: relative; display: block; width: 100%; height: 100%; overflow: hidden; background: var(--vetrina-tint); color: var(--kv-text); }
.vetrina-categories__item:nth-child(6n + 1) .vetrina-category { background: var(--vetrina-deep); color: #fff; }
.vetrina-categories__item:nth-child(6n + 2) .vetrina-category { background: var(--vetrina-highlight); color: var(--vetrina-deep); }
.vetrina-categories__item:nth-child(6n + 3) .vetrina-category { background: var(--kv-accent); color: var(--kv-accent-contrast); }
.vetrina-categories__item:nth-child(6n + 4) .vetrina-category { background: var(--kv-surface); color: var(--kv-text); border: 1px solid var(--kv-border); }
.vetrina-category > img { width: 100%; height: 100%; object-fit: cover; transition: transform .8s cubic-bezier(.2,.75,.25,1); }
.vetrina-category.has-image::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 35%, rgba(6,10,18,.64)); }
.vetrina-category:hover > img { transform: scale(1.045); }
.vetrina-category__initial { position: absolute; right: -2%; top: -17%; font-family: var(--kv-font-heading); font-weight: 700; font-size: clamp(7rem, 16vw, 14rem); line-height: 1; opacity: .12; transform: rotate(4deg); }
.vetrina-category__label { position: absolute; z-index: 2; left: clamp(18px, 2.2vw, 32px); right: clamp(18px, 2.2vw, 32px); bottom: clamp(16px, 2vw, 28px); display: flex; justify-content: space-between; align-items: flex-end; gap: 16px; }
.vetrina-category__label strong { font-family: var(--kv-font-heading); font-size: clamp(1.3rem, 2.2vw, 2.15rem); line-height: .98; letter-spacing: -.035em; }
.vetrina-category__label span { display: grid; place-items: center; width: 38px; height: 38px; flex: 0 0 38px; border: 1px solid currentColor; border-radius: 50%; transition: transform .25s ease, background .25s ease; }
.vetrina-category:hover .vetrina-category__label span { transform: translateX(4px); background: currentColor; }
.vetrina-category:hover .vetrina-category__label span .fa { color: var(--kv-surface); }

/* Catalogo compatto: il prodotto resta il protagonista, le azioni compaiono senza spostare la griglia. */
.kv-theme-vetrina .kv-grid { gap: clamp(14px, 1.55vw, 24px); }
.vetrina-card { position: relative; overflow: visible; border: 0; background: transparent; border-radius: 0; }
.vetrina-card:hover { box-shadow: none; transform: none; }
.vetrina-card__media { overflow: hidden; aspect-ratio: 4 / 5 !important; background: var(--vetrina-tint); }
.kv-body .vetrina-card__media > img { transition: opacity .45s ease, transform .65s cubic-bezier(.2,.75,.25,1); }
.vetrina-card:hover .vetrina-card__media > img { transform: scale(1.025); }
.vetrina-card__badge { position: absolute; z-index: 3; left: 10px; top: 10px; padding: 6px 9px 4px; background: var(--vetrina-deep); color: #fff; text-transform: uppercase; letter-spacing: .08em; font-size: .64rem; font-weight: 700; }
.vetrina-card__open { position: absolute; z-index: 3; right: 12px; bottom: 12px; display: grid; place-items: center; width: 38px; height: 38px; border-radius: 50%; background: var(--kv-surface); color: var(--kv-text); box-shadow: 0 8px 24px rgba(0,0,0,.12); transform: translateY(8px); opacity: 0; transition: opacity .25s ease, transform .25s ease; }
.vetrina-card:hover .vetrina-card__open,
.vetrina-card:focus-within .vetrina-card__open { opacity: 1; transform: none; }
.vetrina-card__body { display: grid; gap: 3px; padding: 14px 0 0; }
.vetrina-card__brand { color: var(--kv-muted); font-size: .67rem; font-weight: 600; letter-spacing: .14em; text-transform: uppercase; }
.vetrina-card__title { margin: 0; font-family: var(--kv-font); font-size: .94rem; font-weight: 500; line-height: 1.25; letter-spacing: 0; }
.vetrina-card .kv-price { margin-top: 3px; }
.vetrina-card .kv-price__current { font-weight: 600; }
.vetrina-card__actions { position: absolute; z-index: 4; left: 10px; right: 10px; bottom: calc(100% - 10px); padding: 0; transform: translateY(-2px); opacity: 0; pointer-events: none; transition: opacity .24s ease, transform .24s ease; }
.vetrina-card__actions .kv-btn { min-height: 42px; box-shadow: 0 10px 24px rgba(17,24,39,.17); }
.vetrina-card:hover .vetrina-card__actions,
.vetrina-card:focus-within .vetrina-card__actions { opacity: 1; transform: translateY(-8px); pointer-events: auto; }

/* Promozioni comuni ridisegnate come tre poster grafici. */
.kv-theme-vetrina .kv-promos { background: var(--vetrina-tint); padding-block: var(--kv-section-space); }
.kv-theme-vetrina .kv-promo { min-height: clamp(330px, 33vw, 490px); border: 0; border-radius: 0; overflow: hidden; }
.kv-theme-vetrina .kv-promos__list { gap: 10px; }
.kv-theme-vetrina .kv-promos__list li:nth-child(1) .kv-promo.is-plain { background: var(--kv-accent); color: var(--kv-accent-contrast); }
.kv-theme-vetrina .kv-promos__list li:nth-child(2) .kv-promo.is-plain { background: var(--vetrina-deep); color: #fff; }
.kv-theme-vetrina .kv-promos__list li:nth-child(3) .kv-promo.is-plain { background: var(--vetrina-highlight); color: var(--vetrina-deep); }
.kv-theme-vetrina .kv-promo__body { justify-content: flex-end; padding: clamp(24px, 3vw, 42px); }
.kv-theme-vetrina .kv-promo__kicker { font-size: .68rem; letter-spacing: .19em; }
.kv-theme-vetrina .kv-promo__title { max-width: 12ch; font-size: clamp(1.75rem, 3vw, 3rem); line-height: .94; letter-spacing: -.04em; }
.kv-theme-vetrina .kv-promo__text { max-width: 32ch; opacity: .82; }
.kv-theme-vetrina .kv-promo__link { margin-top: 16px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; font-size: .68rem; }

/* Campagna editoriale firma. */
.vetrina-campaign { margin-top: var(--kv-section-space); background: var(--vetrina-deep); color: #fff; overflow: hidden; }
.vetrina-campaign__inner { min-height: clamp(560px, 68vw, 820px); display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); padding-block: clamp(48px, 7vw, 96px); }
.vetrina-campaign__copy { position: relative; z-index: 2; align-self: center; max-width: 660px; padding-right: clamp(24px, 5vw, 80px); }
.vetrina-campaign__eyebrow { margin: 0 0 18px; color: var(--vetrina-highlight); font-size: .72rem; font-weight: 700; letter-spacing: .22em; text-transform: uppercase; }
.vetrina-campaign__title { margin: 0; color: #fff; font-size: clamp(2.7rem, 6.2vw, 6rem); line-height: .88; letter-spacing: -.055em; }
.vetrina-campaign__title em { color: var(--vetrina-highlight); font-style: normal; }
.vetrina-campaign__text { max-width: 520px; margin: 27px 0 31px; color: rgba(255,255,255,.78); font-size: 1.08rem; line-height: 1.55; }
.vetrina-campaign__visual { position: relative; min-height: 440px; }
.vetrina-campaign__visual > img { width: 100%; height: 100%; object-fit: cover; }
.vetrina-campaign__disc { position: absolute; width: min(34vw, 480px); aspect-ratio: 1; border-radius: 50%; left: 12%; top: 4%; background: var(--vetrina-highlight); }
.vetrina-campaign__arch { position: absolute; width: min(29vw, 400px); aspect-ratio: 3 / 4; right: 7%; bottom: 0; border-radius: 50% 50% 0 0; background: var(--kv-accent); box-shadow: -32px 30px 0 rgba(255,255,255,.09); }
.vetrina-campaign__tile { position: absolute; width: min(19vw, 260px); aspect-ratio: 4 / 5; left: 4%; bottom: 6%; border: 2px solid #fff; transform: rotate(-8deg); }
.vetrina-campaign__note { position: absolute; z-index: 2; right: 0; bottom: 0; margin: 0; padding: 12px 16px; background: #fff; color: var(--vetrina-deep); font-size: .66rem; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; writing-mode: vertical-rl; transform: rotate(180deg); }

/* Blocchi comuni finali. */
.kv-theme-vetrina .kv-features--strip { padding-block: clamp(34px, 5vw, 72px); }
.kv-theme-vetrina .kv-features--strip .kv-features__list { border-radius: 0; border-inline: 0; background: transparent; }
.kv-theme-vetrina .kv-features--strip .kv-features__item { padding-block: 22px; }
.kv-theme-vetrina .kv-features__icon { border-radius: 50%; background: var(--vetrina-tint); }
.kv-theme-vetrina .kv-newsletter { margin-top: 0; background: var(--kv-accent); color: var(--kv-accent-contrast); }
.kv-theme-vetrina .kv-newsletter__inner { min-height: 174px; }
.kv-theme-vetrina .kv-newsletter__title,
.kv-theme-vetrina .kv-newsletter p { color: var(--kv-accent-contrast); }
.kv-theme-vetrina .kv-newsletter .kv-inline-form input { min-width: min(340px, 70vw); border-color: color-mix(in srgb, var(--kv-accent-contrast) 38%, transparent); background: color-mix(in srgb, var(--kv-accent-contrast) 10%, transparent); color: var(--kv-accent-contrast); }
.kv-theme-vetrina .kv-newsletter .kv-btn { background: var(--vetrina-deep); color: #fff; }
.kv-theme-vetrina .kv-footer { color: var(--kv-text); }
.kv-theme-vetrina .kv-footer a { color: var(--kv-text); opacity: .8; }
.kv-theme-vetrina .kv-footer a:hover { color: var(--kv-accent); opacity: 1; }
.kv-theme-vetrina .kv-footer__brand { color: var(--kv-text); font-size: 1.5rem; letter-spacing: -.04em; }
.kv-theme-vetrina .kv-footer__title { color: var(--kv-text); }
.kv-theme-vetrina .kv-footer .kv-inline-form input[type="email"] { background: var(--kv-surface); border-color: var(--kv-border); color: var(--kv-text); }
.kv-theme-vetrina .kv-footer__bottom { border-color: var(--kv-border); }

/* Animazioni e accessibilità. */
.kv-js .kv-opt-motion-off [data-kv-reveal] { opacity: 1; transform: none; transition: none; }
.kv-opt-motion-off .vetrina-category > img,
.kv-opt-motion-off .vetrina-card__media > img { transition: none; }
.kv-js .kv-opt-motion-soft [data-kv-reveal="up"] { transform: translateY(10px); }
@media (prefers-reduced-motion: reduce) {
    .vetrina-category > img, .vetrina-card__media > img, .vetrina-card__open, .vetrina-card__actions { transition: none; }
}

@media (max-width: 1050px) {
    .vetrina-hero__shape--one { right: 13%; }
    .vetrina-hero__shape--three { right: 24%; }
    .vetrina-categories__grid { grid-auto-rows: clamp(150px, 23vw, 230px); }
    .vetrina-categories__item--1 { grid-column: span 7; }
    .vetrina-categories__item--2 { grid-column: span 5; }
    .vetrina-categories__item--3,
    .vetrina-categories__item--4,
    .vetrina-categories__item--5,
    .vetrina-categories__item--6 { grid-column: span 5; }
    .vetrina-campaign__inner { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 860px) {
    .kv-theme-vetrina .kv-header__main { min-height: 62px; }
    .kv-theme-vetrina .kv-search { border: 1px solid var(--kv-border); padding-left: 14px; }
    .vetrina-hero--full { min-height: calc(100svh - 94px); }
    .vetrina-hero__copy { width: min(680px, 90vw); }
    .vetrina-hero__art { background: linear-gradient(155deg, var(--kv-accent) 0 57%, var(--vetrina-deep) 57% 100%); }
    .vetrina-hero__art::after { inset: auto 9% 8% auto; width: 48vw; height: 50%; }
    .vetrina-hero__shape--one { right: 8%; top: 11%; opacity: .65; }
    .vetrina-hero__shape--two { right: 2%; bottom: 3%; opacity: .38; }
    .vetrina-hero__shape--three, .vetrina-hero__frame { opacity: .42; }
    .vetrina-campaign__inner { grid-template-columns: 1fr; min-height: 0; gap: 44px; }
    .vetrina-campaign__copy { padding-right: 0; }
    .vetrina-campaign__visual { min-height: min(75vw, 560px); }
    .vetrina-campaign__disc { width: 52vw; }
    .vetrina-campaign__arch { width: 45vw; }
    .vetrina-campaign__tile { width: 28vw; }
}

@media (max-width: 640px) {
    :root { --kv-section-space: 58px; }
    .kv-theme-vetrina .kv-block__head { align-items: flex-start; text-align: left; }
    .kv-theme-vetrina .kv-block__title { font-size: clamp(2.05rem, 11vw, 3rem); }
    .kv-theme-vetrina .kv-block__subtitle { margin-inline: 0; }
    .vetrina-hero--normal,
    .vetrina-hero--full { min-height: 680px; }
    .vetrina-hero__content { padding-block: 82px 104px; align-items: end; }
    .vetrina-hero__copy { width: 100%; text-align: left; }
    .vetrina-hero__title { font-size: clamp(3.2rem, 18vw, 5rem); line-height: .84; }
    .vetrina-hero__text { margin-left: 0; font-size: .98rem; }
    .vetrina-hero__actions { justify-content: flex-start; }
    .vetrina-hero__actions .kv-btn { flex: 1 1 100%; }
    .vetrina-hero__art::before { right: -82%; top: 28%; }
    .vetrina-hero__art::after { width: 64vw; height: 42%; opacity: .6; }
    .vetrina-hero__shape--one { width: 130px; right: 1%; top: 7%; }
    .vetrina-hero__shape--two { width: 190px; }
    .vetrina-hero__shape--three { right: 25%; bottom: 2%; }
    .vetrina-hero__frame { right: 4%; top: 15%; width: 205px; }
    .vetrina-categories__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); grid-auto-rows: 180px; gap: 8px; }
    .vetrina-categories__item,
    .vetrina-categories__item--1,
    .vetrina-categories__item--2,
    .vetrina-categories__item--3,
    .vetrina-categories__item--4,
    .vetrina-categories__item--5,
    .vetrina-categories__item--6 { grid-column: span 1; grid-row: span 1; }
    .vetrina-categories__item--1 { grid-column: span 2; grid-row: span 2; }
    .vetrina-category__label { left: 16px; right: 16px; bottom: 15px; }
    .vetrina-category__label strong { font-size: 1.22rem; }
    .vetrina-category__label span { width: 32px; height: 32px; flex-basis: 32px; }
    .vetrina-card__body { padding-top: 10px; }
    .vetrina-card__brand { font-size: .61rem; }
    .vetrina-card__title { font-size: .86rem; }
    .vetrina-card__open { display: none; }
    .vetrina-card__actions { position: static; margin-top: 8px; opacity: 1; transform: none; pointer-events: auto; }
    .vetrina-card__actions .kv-btn { min-height: 38px; padding-inline: 10px; font-size: .62rem; }
    .kv-theme-vetrina .kv-promos .kv-block__head { padding-inline: var(--kv-gap); }
    .kv-theme-vetrina .kv-promos__list { gap: 8px; }
    .kv-theme-vetrina .kv-promo { min-height: 310px; }
    .vetrina-campaign__title { font-size: clamp(2.8rem, 14vw, 4rem); }
    .vetrina-campaign__visual { min-height: 370px; }
    .vetrina-campaign__disc { width: 66vw; }
    .vetrina-campaign__arch { width: 58vw; }
    .vetrina-campaign__tile { width: 42vw; }
    .vetrina-campaign__note { writing-mode: initial; transform: none; right: 0; left: 0; text-align: center; }
    .kv-theme-vetrina .kv-newsletter__inner { align-items: flex-start; }
    .kv-theme-vetrina .kv-newsletter .kv-inline-form,
    .kv-theme-vetrina .kv-newsletter .kv-inline-form input { width: 100%; min-width: 0; }
}

@media (max-width: 390px) {
    .vetrina-categories__grid { grid-auto-rows: 158px; }
    .vetrina-hero__title { font-size: 3.1rem; }
}
