/* Vogue — fashion, shoes, accessories. Editorial: sharp edges, tall photos,
   high-contrast serif headings, small uppercase labels with generous tracking. */

body { letter-spacing: .01em; }
.sec-title { font-weight: 500; letter-spacing: -.01em; font-size: clamp(1.75rem, 6vw, 2.75rem); }
.sec-head { margin-bottom: 28px; }
.sec-head--center .sec-text { max-width: 36rem; margin: 6px auto 0; }
.sec-text { opacity: .8; }
.link-arrow { text-transform: uppercase; letter-spacing: .14em; font-size: .75rem; font-weight: 600; border-bottom: 1px solid currentColor; padding-bottom: 2px; }

/* Buttons: flat, uppercase, tracked */
.btn { text-transform: uppercase; letter-spacing: .14em; font-size: .75rem; font-weight: 600; }
.btn--lg { font-size: .8125rem; }
.btn--outline { border-width: 1px; }

/* Announcement and header: centred brand, thin rules */
.announce { text-transform: uppercase; letter-spacing: .16em; font-size: .6875rem; font-weight: 500; padding: 10px 16px; }
.hdr { border-bottom-color: color-mix(in srgb, var(--c-text) 12%, transparent); }
.hdr__in { height: 68px; }
.brand__name { font-family: var(--font-heading); font-weight: 600; letter-spacing: .06em; text-transform: uppercase; font-size: 1.25rem; }
.hdr__nav a { text-transform: uppercase; letter-spacing: .14em; font-size: .75rem; font-weight: 500; border-radius: 0; }
.hdr__nav a:hover { background: transparent; text-decoration: underline; text-underline-offset: 6px; }

/* Hero: big serif title bottom-left over the photo */
.slide__title { font-weight: 500; letter-spacing: -.02em; font-size: clamp(1.875rem, 7.5vw, 4.5rem); line-height: 1.05; text-wrap: balance; overflow-wrap: anywhere; }
.slide__text { text-transform: uppercase; letter-spacing: .16em; font-size: .75rem; }
.slide__overlay { background: linear-gradient(to top, rgba(0,0,0,.6), rgba(0,0,0,0) 55%); }

/* Product cards: tall portrait photos, label-like titles */
.card__media { aspect-ratio: 3/4; border-radius: 0; background: var(--c-surface); }
.card:hover .card__img:not(.card__img--alt) { transform: scale(1.03); }
.card__body { padding-top: 12px; gap: 6px; }
.card__title { text-transform: uppercase; letter-spacing: .1em; font-size: .75rem; font-weight: 500; }
.card__price, .card .price { font-size: .875rem; }
.price .now { font-weight: 500; }
.tag { border-radius: 0; text-transform: uppercase; letter-spacing: .12em; font-size: .625rem; }
.grid--products { row-gap: 32px; }

/* Categories as tall tiles with the name under a thin rule */
.cats--tile .cat { justify-items: start; text-align: left; }
.cats--tile .cat__media { aspect-ratio: 3/4; border: 0; }
.cats--tile .cat__name { text-transform: uppercase; letter-spacing: .14em; font-size: .75rem; font-weight: 600; padding-top: 4px; border-top: 1px solid currentColor; width: 100%; }
.cat:hover .cat__media { border-color: transparent; }
.cat:hover .cat__img { transform: scale(1.03); }
.cat__img { transition: transform .6s cubic-bezier(.2,.7,.2,1); }

/* Lookbook (Vogue only): one tall photo then two side by side on phones, three equal columns on desktop */
.lookbook__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.lookbook__grid > :first-child { grid-column: 1 / -1; }
.lookbook__grid--2 > :first-child { grid-column: auto; }
@media (min-width: 768px) {
  .lookbook__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
  .lookbook__grid > :first-child { grid-column: auto; }
  .lookbook__grid--2 { grid-template-columns: 1fr 1fr; }
}
.lookbook__item { position: relative; display: block; overflow: hidden; background: var(--c-surface); }
.lookbook__img { width: 100%; aspect-ratio: 3/4; object-fit: cover; transition: transform .8s cubic-bezier(.2,.7,.2,1); }
@media (max-width: 767px) { .lookbook__grid--3 > :first-child .lookbook__img { aspect-ratio: 4/5; } }
a.lookbook__item:hover .lookbook__img { transform: scale(1.03); }
.lookbook__label { position: absolute; left: 12px; bottom: 12px; padding: 8px 12px; background: var(--c-bg); color: var(--c-text); text-transform: uppercase; letter-spacing: .16em; font-size: .6875rem; font-weight: 600; }

/* Story, reviews, trust: quiet surfaces */
.split__media { border-radius: 0; }
.split__text .sec-title { font-style: italic; }
.review { border: 1px solid color-mix(in srgb, var(--c-text) 10%, transparent); background: var(--c-bg); border-radius: 0; }
.faq__item { border-radius: 0; background: transparent; border-bottom: 1px solid color-mix(in srgb, var(--c-text) 12%, transparent); }
.trust { background: var(--c-surface); border-top: 0; }
.trust__icon { background: var(--c-bg); color: var(--c-text); border-radius: 0; }
.trust__list strong { text-transform: uppercase; letter-spacing: .1em; font-size: .75rem; }

/* Product page */
.pdp__title { font-weight: 500; letter-spacing: -.01em; }
.pill { border-radius: 0; min-width: 48px; text-transform: uppercase; letter-spacing: .08em; font-size: .8125rem; }
.qty { border-radius: 0; }
.gallery__slide, .gallery__img { border-radius: 0; }

/* Checkout and tracking keep the same sharp language */
.co-summary, .tracking__card, .co-pay__opt, .co-alert, .co-test { border-radius: 0; }
.co-step legend { font-weight: 500; }
.co-step__n { border-radius: 0; }
.ftr__title { text-transform: uppercase; letter-spacing: .14em; font-size: .75rem; }
