/* Polish round 2 */
/* 1. search clear button in palette */
input[type=search]::-webkit-search-cancel-button{-webkit-appearance:none;appearance:none;width:24px;height:24px;margin:0 0 0 6px;cursor:pointer;background:var(--pine,#2f4a3d);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M7 7l10 10M17 7L7 17'/%3E%3C/svg%3E") center/16px no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M7 7l10 10M17 7L7 17'/%3E%3C/svg%3E") center/16px no-repeat}
/* 4. min text sizes (desktop) */
.hero-foot{font-size:11px}
.hero-image-note,#hero-image-note{font-size:12px}
#total-products{font-size:11px}
.footer nav a,.footer nav button{font-size:12px}
.footer-bottom{font-size:12px}
/* 7. bag qty targets */
.quantity button{width:44px;height:44px}
@media(max-width:720px){
  /* 2. footer gutter = 20px */
  .footer{padding-left:20px;padding-right:20px}
  /* 5. keep drawer close clear of content */
  #product-drawer .profile-summary,#product-drawer .detail-body{padding-top:64px}
  #cart-drawer .drawer-head{padding-right:72px}
  /* 8. shorter story photo */
  .story-image{min-height:0;height:300px}
  .story-image img{height:100%;max-width:100%;object-fit:cover}
}

/* Type floor: nothing the visitor reads or taps goes below 12px. */
.announcement,.cart-count,.hero-image-note,.hero-foot,.card-category,.card-new,.card-reference,.card-inspired,.card-availability,.size-tag,.section-index,.results-count,#total-products,.filter .f-short,.profile-summary-kicker,.usage-meter-label,.usage-profile-disclaimer,.usage-profile-heading,.size-option span,.detail-note,.contact-alt,.cart-row p,.footer-bottom,.footer nav a,.footer nav button,.checkout-disabled,.checkout-message{font-size:12px}
.remove-item{font-size:12px;min-height:44px;padding:0 6px}
.card-info>span,.size-prices span{font-size:14px}
@media(max-width:720px){.vertical-text{display:none}}
#hero-image-note,.card-info h3 .card-inspired,.size-option .size-tag,.filter .f-long,.filter .f-short{font-size:12px}

.footer nav{align-items:center}
.footer nav a,.footer nav button{display:inline-flex;align-items:center;min-height:44px;margin:0;padding-top:0;padding-bottom:0;font-family:inherit;line-height:1.2;vertical-align:baseline}

/* Fotos padronizadas (600x750): todos os frascos ocupam a mesma proporção do cartão. */
.product-grid .card-visual img,.launch-grid .card-visual img,.card-visual img{width:auto;height:88%;max-width:92%;max-height:none;aspect-ratio:4/5;object-fit:contain;transform:none;mix-blend-mode:multiply;filter:none}
.card-visual:hover img{transform:scale(1.03)}
.profile-summary-bottle img{transform:none;object-fit:contain;mix-blend-mode:multiply;filter:none}

/* Aba de detalhes: frasco maior no desktop (a foto padronizada tem folga de ~10% em cada lado). */
@media(min-width:761px){.profile-summary-bottle{padding:8px 6px 0}.profile-summary-bottle img{width:auto;max-width:100%;aspect-ratio:4/5;height:min(68dvh,600px);transform:scale(1.1)!important}}

/* Rótulos em caixa-alta usam monoespaçada (nome CodeScent = código; mesmo clima das etiquetas de perfumarias de nicho). */
.announcement,.section-index,.hero-foot,.card-category,.hero-image-note,.vertical-text{font-family:var(--mono);font-weight:400}

.wordmark{letter-spacing:-.02em}
.hero h1,.section-intro h2,.story h2,.price-note h2,.drawer h2{letter-spacing:-.012em}

/* Celular (foco do projeto): menu com 5 links quebra linha em vez de cortar; frasco da aba de detalhes maior. */
@media(max-width:720px){.main-nav{flex-wrap:wrap!important;justify-content:flex-start!important;overflow:hidden!important;gap:0 22px!important;margin:0!important;padding:4px 16px 10px!important}}
@media(max-width:520px){
  .profile-summary-frame{grid-template-columns:150px minmax(0,1fr);min-height:204px}
  .profile-summary-bottle{min-height:204px;padding:4px 0 4px 6px}
  .profile-summary-bottle img{height:204px;width:100%;transform:scale(1.14)!important}
}

/* Direção "etiqueta de laboratório" (Decorador, rodada 2, versão lab): títulos Hanken Grotesk em caixa-alta, etiquetas em Courier Prime, sem itálica de ênfase. */
.hero h1 em,.section-intro h2 em,.price-note h2 em,.drawer h2 em,.story h2 em,#catalog-title em{font-style:normal;color:inherit}
body .wordmark{font-family:var(--display);text-transform:uppercase;font-weight:700;letter-spacing:.14em;font-size:19px}
body .wordmark span{font-weight:700}
body .footer-logo{font-size:22px}
body .hero h1,body .section-intro h2,body .story h2,body .price-note h2,body .drawer h2,body .launch-collection-head h2,body .how-to-order h2,body .quiz-modal .quiz-title,body .quiz-result h3,body #product-drawer h2{text-transform:uppercase;font-weight:600;letter-spacing:-.01em}
body .hero h1 em,body .section-intro h2 em,body .price-note h2 em,body .drawer h2 em,body .story h2 em{font-weight:400}
body .card-info h3,body .quiz-option strong{text-transform:uppercase;font-weight:600;letter-spacing:.03em}
body .card-info h3{line-height:1.2}
body .card-info h3 .card-inspired{font-family:var(--mono);text-transform:none;letter-spacing:0;font-weight:400}
body .card-category,body .section-index,body .announcement,body .hero-foot{font-family:var(--mono);letter-spacing:.02em}
body .profile-tagline,body .quiz-tagline,body .profile-summary-copy p{font-family:var(--mono);font-style:normal;font-size:15px;line-height:1.35}
@media(min-width:721px){body .hero h1{font-size:clamp(48px,5vw,76px);line-height:1;max-width:640px}}
@media(max-width:720px){
  body .hero h1{font-size:40px;line-height:.98}
  body .section-intro h2,body .story h2,body .price-note h2,body .drawer h2,body .launch-collection-head h2,body .how-to-order h2{font-size:28px;line-height:1}
  body #product-drawer h2{font-size:26px;line-height:1.02}
  body .card-info h3{font-size:15px}
  body .quiz-modal .quiz-title{font-size:26px;line-height:1.02}
  body .quiz-option strong{font-size:14px}
  body .quiz-result h3{font-size:19px;line-height:1.1}
}
.announcement .announcement-tail{font-size:inherit;color:inherit}
@media(max-width:420px){.announcement{flex-direction:column;gap:2px;height:auto;padding:7px 12px}.announcement span[aria-hidden]{display:none}}
.section-index,.quiz-rank{color:var(--sage-deep)}
.announcement a.announcement-tail{text-decoration:underline;text-underline-offset:4px;display:inline-flex;align-items:center;min-height:32px}

/* Celular: "Ver todas as fragrâncias" fica à esquerda (launch-carousel.css empurrava com margin-left:auto). */
@media(max-width:720px){.launch-collection-head>a{margin-left:0;justify-self:start;text-align:left}}

/* Decorador rodada 3: título da aba de detalhes, itálico falso, alvo de toque do link da barra e janela do quiz estável. */
body #product-drawer .detail-body h2{font-size:26px;line-height:1.05}
@media(min-width:721px){body #product-drawer .detail-body h2{font-size:clamp(28px,2.4vw,36px)}}
.footer-top p,.order-step-number{font-style:normal}
.announcement a.announcement-tail{position:relative}
.announcement a.announcement-tail::after{content:'';position:absolute;inset:-8px -12px}
.quiz-modal{min-height:min(88dvh,780px)}
@media(min-width:721px){.quiz-modal{height:min(88dvh,820px)}}

/* Carrossel de lançamentos: camada própria para o giro e foto com entrada suave, sem salto. */
.launch-grid{will-change:transform}
.launch-grid .card-visual img{transition:opacity .25s ease,transform .45s cubic-bezier(.2,.8,.2,1)}

/* Fundo dos cartões de perfume: um só tom (antes alternava entre branco e azulado). Para testar outra cor, mude só --card-bg. */
:root{--card-bg:#dcdcdc}
body .product-card .card-visual,body .product-card:nth-child(n) .card-visual{background:var(--card-bg)!important}
.card-visual:before{border-color:rgba(35,49,44,.09)}
.quiz-result-photo{background:var(--card-bg)}

/* Centro óptico dos botões: a métrica da Hanken deixa o glifo (×, + e −) e o texto 1 a 4 px abaixo do meio. */
.close-button{display:flex;align-items:center;justify-content:center;line-height:1;padding:0 0 7px}
.quantity button{display:flex;align-items:center;justify-content:center;padding:0 0 4px}
.primary-link{padding-top:16px;padding-bottom:18px}
.announcement a.announcement-tail{padding-bottom:3px}
