/*
 * Atelier — tema Plus editoriale. Colori e caratteri arrivano dalle opzioni (KvView::optionStyles).
 */
:root {
    --kv-surface: #ffffff;
    --kv-surface-2: #efe9df;
    --kv-muted: #6f675c;
    --kv-border: #e3dbcd;
    --kv-radius: 0;
    --kv-radius-lg: 0;
    --kv-radius-btn: 0;
    --kv-shadow: 0 1px 0 rgba(28, 26, 23, .06);
    --kv-header-bg: var(--kv-bg);
    --kv-footer-bg: #1c1a17;
    --kv-footer-text: #d9d1c3;
    --kv-container: 1320px;
}

.kv-theme-atelier .kv-header__bar { background: var(--kv-text); color: #efe9df; }
.kv-theme-atelier .kv-header__bar a, .kv-theme-atelier .kv-header__link, .kv-theme-atelier .kv-header__contact a { color: #efe9df; }
.kv-theme-atelier .kv-brand__mark { border-radius: 0; background: transparent; color: var(--kv-text); border: 1px solid var(--kv-text); }
.kv-theme-atelier .kv-brand__name { font-family: var(--kv-font-heading); font-size: 1.6rem; font-weight: 600; letter-spacing: .02em; }
.kv-theme-atelier .kv-search { background: transparent; border-color: var(--kv-border); }
.kv-theme-atelier .kv-search button, .kv-theme-atelier .kv-cart__count { background: var(--kv-text); }
.kv-theme-atelier .kv-nav__list { justify-content: center; }
.kv-theme-atelier .kv-nav__item > a { text-transform: uppercase; letter-spacing: .14em; font-size: .78rem; }

.kv-theme-atelier h1, .kv-theme-atelier h2, .kv-theme-atelier h3, .kv-theme-atelier .kv-block__title { font-weight: 500; letter-spacing: 0; }
.kv-theme-atelier .kv-block__head { align-items: center; text-align: center; }
.kv-theme-atelier .kv-block__title { font-size: clamp(2rem, 3.6vw, 3rem); }
.kv-theme-atelier .kv-btn { text-transform: uppercase; letter-spacing: .12em; font-size: .78rem; }
.kv-theme-atelier .kv-hero__slide::after { background: linear-gradient(0deg, rgba(20, 18, 15, .55), rgba(20, 18, 15, 0) 60%); }
.kv-theme-atelier .kv-hero__content { align-self: flex-end; }
.kv-theme-atelier .kv-hero__title { font-size: clamp(2.6rem, 6vw, 5rem); font-weight: 500; }

/* card editoriale: immagine verticale, testo centrato, pulsante che compare al passaggio */
.atelier-card { border: 0; background: transparent; text-align: center; }
.atelier-card:hover { box-shadow: none; transform: none; }
.atelier-card__media { aspect-ratio: 3 / 4 !important; }
.atelier-card__tag { position: absolute; top: 12px; left: 12px; padding: 3px 10px; background: var(--kv-text); color: var(--kv-bg); font-size: .72rem; letter-spacing: .1em; }
.atelier-card__body { padding: 16px 6px 6px; display: flex; flex-direction: column; gap: 4px; align-items: center; }
.atelier-card__brand { font-size: .7rem; text-transform: uppercase; letter-spacing: .16em; color: var(--kv-muted); }
.atelier-card__title { font-family: var(--kv-font-heading); font-size: 1.2rem; font-weight: 500; margin: 0; }
.atelier-card .kv-price { justify-content: center; }
.atelier-card .kv-price__current { font-weight: 500; }
.atelier-card__actions { padding: 8px 6px 0; }
@media (hover: hover) and (min-width: 861px) {
    .atelier-card__actions { opacity: 0; transform: translateY(6px); transition: opacity var(--kv-transition), transform var(--kv-transition); }
    .atelier-card:hover .atelier-card__actions, .atelier-card:focus-within .atelier-card__actions { opacity: 1; transform: none; }
}

/* lookbook */
.atelier-lookbook__grid { display: grid; grid-template-columns: 1fr 1fr; gap: var(--kv-gap); }
.atelier-lookbook__tile { position: relative; display: block; aspect-ratio: 4 / 5; overflow: hidden; background: var(--kv-surface-2); }
.kv-body .atelier-lookbook__tile img { width: 100%; height: 100%; object-fit: cover; transition: transform .8s ease; }
.atelier-lookbook__tile:hover img { transform: scale(1.03); }
.atelier-lookbook__label { position: absolute; left: 24px; bottom: 22px; padding: 10px 18px; background: var(--kv-bg); color: var(--kv-text); font-size: .8rem; text-transform: uppercase; letter-spacing: .16em; }
.atelier-lookbook__tile.is-empty { display: grid; place-items: center; }
.atelier-lookbook__tile.is-empty .atelier-lookbook__label { position: static; background: transparent; font-family: var(--kv-font-heading); font-size: 1.6rem; letter-spacing: .04em; text-transform: none; }
@media (max-width: 640px) { .atelier-lookbook__grid { grid-template-columns: 1fr; } }

.kv-theme-atelier .kv-newsletter { background: var(--kv-text); color: var(--kv-bg); }
.kv-theme-atelier .kv-newsletter p { color: #cfc6b8; }
.kv-theme-atelier .kv-newsletter__title { color: var(--kv-bg); }
.kv-theme-atelier .kv-newsletter .kv-btn--primary { background: var(--kv-accent); }
