/* Redesign exclusivo da loja. Não altera estilos das outras páginas. */
body.shop-redesign {
  --shop-bg: #101712; --shop-panel: #18221b; --shop-text: #efe9da;
  --shop-muted: #b6b9ac; --shop-gold: #d7b779; --shop-line: #b59a5f45;
  --shop-header: 76px; --header-height: 76px;
  background: var(--shop-bg); padding-top: var(--shop-header); color: var(--shop-text);
}
.shop-redesign .site-header { height: var(--shop-header); padding: 10px max(24px, calc((100vw - 1280px)/2)); gap: 22px; background: #0d120fee; backdrop-filter: blur(12px); border-bottom: 1px solid #b59a5f40; overflow: visible; }
body.shop-redesign .site-header .menu-btn { margin: 0; width: 44px; min-width: 44px; height: 44px; padding: 10px; background: none; border: 1px solid var(--shop-line); border-radius: 3px; }
body.shop-redesign .site-header .menu-btn::after { display: none; }
.shop-redesign .site-header .logo { position: static; transform: none; margin: 0; padding: 0; flex-shrink: 0; font-size: inherit; }
.shop-redesign .logo a { display: flex; align-items: center; gap: 10px; text-decoration: none; }
.shop-redesign .logo img { width: 34px; height: 34px; object-fit: contain; }
.shop-redesign .shop-brand { color: #e5cf9f; font: 400 21px/1.2 'Spectral', Georgia, serif; letter-spacing: -.02em; white-space: nowrap; }
.shop-redesign .shop-brand small { display: block; color: #c6aa73; font: 500 8px/1.7 'Inter', sans-serif; letter-spacing: .16em; text-transform: uppercase; margin-top: 3px; }
.shop-redesign .shop-header-links { display: flex; flex: 1; justify-content: center; gap: 24px; }
.shop-redesign .shop-header-links a { color: #ded8c9; font: 500 12px/1.6 'Inter', sans-serif; display: inline-flex; align-items: center; min-height: 44px; text-decoration: none; }
.shop-redesign .site-header .shop-header-links .icon-btn { width: auto; height: auto; min-width: 0; padding: 0; border: 0; background: none; border-radius: 0; box-shadow: none; }
.shop-redesign .shop-header-links a:hover, .shop-redesign .shop-header-links a[aria-current] { color: var(--shop-gold); }
.shop-redesign .shop-search { display: flex; align-items: center; width: 230px; flex-shrink: 0; border: 1px solid #82734c; border-radius: 24px; background: #141a15; line-height: 1; }
.shop-redesign .shop-search input { min-width: 0; width: 100%; border: 0; background: none; color: var(--shop-text); height: 42px; padding: 8px 0 8px 16px; font: 12px/1.5 'Inter', sans-serif; }
.shop-redesign .shop-search input::placeholder { color: #b3b5a8; opacity: 1; }
.shop-redesign .shop-search button { min-width: 44px; min-height: 44px; display: grid; place-items: center; padding: 10px; border: 0; background: none; color: var(--shop-gold); cursor: pointer; }
.shop-redesign .shop-search svg { width: 18px; height: 18px; }
.shop-redesign #vavi-inquiry-size { display: block; width: 100%; min-height: 44px; margin: 8px 0 18px; padding: 10px; color: #efe9da; background: #171f18; border: 1px solid #82734c; border-radius: 3px; font: 14px/1.5 'Inter', sans-serif; }
.shop-redesign .shop-cart-link { display: flex; align-items: center; gap: 8px; min-height: 44px; color: #e6d9bd; font: 12px/1.5 'Inter', sans-serif; text-decoration: none; }
.shop-redesign .shop-cart-link svg { width: 24px; height: 24px; }
.shop-redesign .atelier.editorial-main { max-width: 1280px; width: 100%; padding: 24px 40px 0; }
.shop-redesign :is(section[id], details[id], #catalogo, #colecao) { scroll-margin-top: calc(var(--shop-header) + 20px); }
.shop-redesign .shop-kicker { color: var(--shop-gold); font: 500 10px/1.7 'Inter', sans-serif; letter-spacing: .22em; text-transform: uppercase; }
.shop-redesign .shop-button { display: inline-flex; justify-content: center; align-items: center; gap: 28px; min-height: 46px; padding: 12px 22px; border: 1px solid #dac18b; border-radius: 3px; background: linear-gradient(110deg, #ead7ac, #cdb17a); color: #151b14; font: 600 11px/1.6 'Inter', sans-serif; letter-spacing: .06em; text-transform: uppercase; cursor: pointer; text-decoration: none; }
.shop-redesign .shop-button:hover { background: #efd9a9; }
.shop-redesign :is(a, button, input, select, summary):focus-visible { outline: 3px solid #f3d591; outline-offset: 4px; }
/* Uma abertura editorial, com a composição original completa da coleção. */
.shop-redesign .shop-hero { display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: 44px; position: relative; isolation: isolate; min-height: 365px; padding: 12px 0 36px; border: 0; background: radial-gradient(ellipse at 72% 50%, #62523726, transparent 65%); }
.shop-redesign .shop-hero-copy { padding: 0; }
.shop-redesign .shop-hero-copy .shop-kicker { font-size: 10px; letter-spacing: .18em; }
.shop-redesign .shop-hero h1 { margin: 18px 0 20px; color: #f0e7d5; font: 400 clamp(38px, 4.2vw, 57px)/1.08 'Spectral', Georgia, serif; letter-spacing: -.045em; text-transform: none; text-shadow: none; }
.shop-redesign .shop-hero h1 em { color: #dabc80; font-style: italic; font-weight: 400; }
.shop-redesign .shop-hero-copy > p:not(.shop-kicker) { max-width: 355px; color: #bec5b9; font: 16px/1.65 'Inter', sans-serif; }
.shop-redesign .shop-hero .shop-button { margin-top: 24px; }
.shop-redesign .shop-hero-copy > small { display: block; margin-top: 18px; color: #aeb8a8; font: 10px/1.7 'Inter', sans-serif; }
.shop-redesign .shop-hero-copy > small > span { color: #c9ac73; margin-right: 5px; }
.shop-redesign .shop-hero-art { position: relative; min-width: 0; margin: 0; padding: 0; }
.shop-redesign .shop-hero-image { position: relative; padding: 8px; border: 1px solid #c2a46b66; border-radius: 4px; background: #161e15; box-shadow: 0 18px 45px #0003; }
.shop-redesign .shop-hero-image::before, .shop-redesign .shop-hero-image::after { content: ''; position: absolute; width: 32px; height: 32px; pointer-events: none; border: solid #cbb17b; }
.shop-redesign .shop-hero-image::before { left: -3px; top: -3px; border-width: 1px 0 0 1px; }
.shop-redesign .shop-hero-image::after { right: -3px; bottom: -3px; border-width: 0 1px 1px 0; }
.shop-redesign .shop-hero-art img { display: block; width: 100%; height: auto; aspect-ratio: 1672/941; object-fit: contain; border-radius: 2px; }
.shop-redesign .shop-hero-art figcaption { display: flex; justify-content: space-between; align-items: center; gap: 16px; padding-top: 14px; color: #cfb986; font: 500 10px/1.5 'Inter', sans-serif; letter-spacing: .14em; text-transform: uppercase; }
.shop-redesign .shop-hero-art figcaption > span:last-child { color: #a2ab9c; font-size: 9px; }
.shop-redesign .shop-promises { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); padding: 18px 0; border-block: 1px solid #b59a5f30; background: #d5c18b04; }
.shop-redesign .shop-promises > div { display: flex; align-items: center; justify-content: center; gap: 14px; padding: 0 12px; border-right: 1px solid var(--shop-line); }
.shop-redesign .shop-promises > div:last-child { border: 0; }
.shop-redesign .shop-promises svg { width: 27px; height: 27px; flex: 0 0 27px; color: var(--shop-gold); }
.shop-redesign .shop-promises > div > span { color: var(--shop-gold); font-size: 34px; line-height: 1; }
.shop-redesign .shop-promises strong { display: block; color: #e5d8b9; font: 500 12px/1.6 'Inter', sans-serif; }
.shop-redesign .shop-promises small { display: block; color: var(--shop-muted); font: 11px/1.6 'Spectral', Georgia, serif; }
.shop-redesign .shop-section-title { display: flex; align-items: center; justify-content: center; gap: 20px; margin: 0; color: #f0e7d5; font: 400 32px/1.25 'Spectral', Georgia, serif; letter-spacing: -.025em; text-transform: none; }
.shop-redesign .shop-section-title::before, .shop-redesign .shop-section-title::after { content: ''; width: 54px; height: 16px; flex-shrink: 0; background: url('../assets/img/loja/ornamento.svg') center / contain no-repeat; opacity: .7; }
.shop-redesign .shop-categories { padding: 26px 0 26px; text-align: center; }
.shop-redesign .shop-categories > .shop-kicker { margin-bottom: 9px; }
.shop-redesign .shop-category-grid { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 28px; max-width: 1000px; margin: 20px auto 0; }
.shop-redesign .shop-category { display: flex; flex-direction: column; align-items: center; min-width: 0; padding: 5px 0; color: var(--shop-text); text-decoration: none; border-radius: 5px; }
.shop-redesign .shop-category-art { position: relative; display: block; width: min(100%, 136px); aspect-ratio: 1; border: 1px solid #b69b6380; border-radius: 50%; padding: 6px; background: #1b251d; transition: border-color .2s ease, transform .2s ease, box-shadow .2s ease; }
.shop-redesign .shop-category-art::after { content: '✦'; display: grid; place-items: center; position: absolute; bottom: -6px; left: calc(50% - 10px); width: 20px; height: 16px; font: 12px/1 Georgia, serif; color: #cdb47c; background: #101712; }
.shop-redesign .shop-category-art img { display: block; width: 100%; height: 100%; aspect-ratio: 1; border-radius: 50%; object-fit: cover; object-position: center; }
.shop-redesign .shop-category > span:not(.shop-category-art) { display: flex; justify-content: center; align-items: center; gap: 7px; padding: 15px 0 3px; color: #e8ddc5; font: 500 20px/1.3 'Spectral', Georgia, serif; }
.shop-redesign .shop-category > span > span { color: #b9a16d; font: 14px/1 'Inter', sans-serif; }
.shop-redesign .shop-category small { display: block; color: #aeb8a8; font: 11px/1.5 'Inter', sans-serif; }
.shop-redesign .shop-category:hover .shop-category-art, .shop-redesign .shop-category[aria-current] .shop-category-art { border-color: #ead09b; box-shadow: 0 0 0 4px #b99b5620; transform: translateY(-3px); }
.shop-redesign .shop-category[aria-current] > span:not(.shop-category-art) { color: #f2d99f; }
.shop-redesign .shop-catalog { padding: 24px 0 42px; border-top: 1px solid #b59a5f30; }
.shop-redesign .shop-catalog-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 20px; margin-bottom: 16px; }
.shop-redesign .shop-catalog-heading .shop-kicker { margin-bottom: 7px; }
.shop-redesign .shop-catalog-heading h2 { justify-content: flex-start; }
.shop-redesign .shop-catalog-heading h2::before { display: none; }
.shop-redesign #shop-results { color: var(--shop-muted); font: 11px/1.6 'Inter', sans-serif; text-align: right; }
.shop-redesign .shop-catalog-tools { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 0 0 12px; font: 11px/1.6 'Inter', sans-serif; }
.shop-redesign .shop-active-filter { display: flex; align-items: center; gap: 12px; color: #dbcead; }
.shop-redesign .shop-catalog-tools button { border: 0; background: none; min-height: 44px; padding: 6px 10px; color: #d7bc82; font: inherit; text-decoration: underline; text-underline-offset: 4px; cursor: pointer; }
.shop-redesign .shop-catalog-tools label { display: flex; align-items: center; gap: 8px; font: inherit; }
.shop-redesign .shop-catalog-tools select { min-height: 44px; padding: 8px 30px 8px 10px; font: 11px/1.6 'Inter', sans-serif; color: #e4dfd1; background: #171f18; border-color: #70674f; border-radius: 3px; }
.shop-redesign .shop-product-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px; align-items: stretch; }
/* O marfim separa a informação comercial das artes e melhora a leitura. */
.shop-redesign .shop-product-card { display: flex; flex-direction: column; min-width: 0; background: #eee7d8; border: 1px solid #d5c6a733; border-radius: 5px; overflow: hidden; transition: box-shadow .2s ease; }
.shop-redesign .shop-product-card:hover { box-shadow: 0 12px 30px #0003; }
.shop-redesign .shop-product-image { display: block; position: relative; background: #182118; }
.shop-redesign .shop-product-image img { display: block; width: 100%; height: auto; aspect-ratio: 1; object-fit: contain; }
.shop-redesign .shop-product-badge { position: absolute; top: 12px; left: 12px; padding: 5px 9px; background: #f2eadceF; color: #4d4b3c; font: 500 10px/1.5 'Inter', sans-serif; border-radius: 2px; }
.shop-redesign [data-availability='consultation'] .shop-product-badge { background: #17362ef2; color: #eee2c7; }
.shop-redesign .shop-product-info { padding: 20px; display: flex; flex-direction: column; flex: 1; text-align: left; }
.shop-redesign .shop-product-collection { color: #796238; text-transform: uppercase; letter-spacing: .15em; font: 500 9px/1.6 'Inter', sans-serif; }
.shop-redesign .shop-product-info h3 { color: #253025; font: 500 23px/1.15 'Spectral', Georgia, serif; margin: 8px 0 9px; min-height: 52px; letter-spacing: -.025em; }
.shop-redesign .shop-product-variation { color: #626555; font: 12px/1.6 'Inter', sans-serif; min-height: 38px; }
.shop-redesign .shop-price { margin: 12px 0 18px; }
.shop-redesign .shop-price small { display: block; color: #656454; font: 11px/1.6 'Inter', sans-serif; }
.shop-redesign .shop-price strong { display: block; color: #67502a; font: 500 24px/1.4 'Spectral', Georgia, serif; }
.shop-redesign .shop-price strong span { font: 11px/1.6 'Inter', sans-serif; }
.shop-redesign .shop-product-action { margin-top: auto; min-height: 44px; padding-inline: 14px; border: 1px solid #83714c; border-radius: 2px; display: flex; align-items: center; justify-content: space-between; gap: 16px; color: #313c2d; text-decoration: none; font: 600 11px/1.5 'Inter', sans-serif; letter-spacing: .03em; }
.shop-redesign .shop-product-action:hover { color: #f1e8d5; background: #253b2e; border-color: #253b2e; }
.shop-redesign .shop-product-state { margin-top: 12px; color: #656454; font: 10px/1.6 'Inter', sans-serif; text-align: center; }
.shop-redesign .shop-product-card :is(a, button):focus-visible { outline-color: #274a39; outline-offset: -4px; }
.shop-redesign .shop-catalog-note { margin-top: 14px; color: var(--shop-muted); font: 11px/1.7 'Inter', sans-serif; }
.shop-redesign .shop-empty { padding: 34px 20px; text-align: center; border: 1px solid var(--shop-line); background: #1a221b; }
.shop-redesign .shop-empty p { font: 14px/1.7 'Inter', sans-serif; margin: 12px 0 20px; }
/* O bloco gerado do livro segue intacto, integrado à grade e à busca. */
.shop-redesign .atelier-catalog { grid-column: 1 / -1; padding: 28px; border: 1px solid #b59a5f30; border-radius: 5px; background: #18241c; }
.shop-redesign .atelier-catalog-heading { margin: 0 0 18px; }
.shop-redesign .atelier-catalog-heading .atelier-eyebrow { display: none; }
.shop-redesign .atelier-catalog-heading h2 { margin: 0; font-size: 22px; }
.shop-redesign .atelier-grid-single .atelier-product { grid-template-columns: 160px minmax(0, 1fr); gap: 30px; padding: 0; border: 0; background: none; }
.shop-redesign .atelier-product-art { max-width: 160px; }
.shop-redesign .atelier-product-art figcaption { font-size: 9px; margin-top: 6px; }
.shop-redesign .atelier-product-meta { gap: 10px; }
.shop-redesign .atelier-product-kind { font-size: 9px; }
.shop-redesign .atelier-grid-single .atelier-product h3 { font-size: 30px; margin: 10px 0 8px; }
.shop-redesign .atelier-product-subtitle { font-size: 16px; }
.shop-redesign .atelier-product-author { margin-top: 8px; font-size: 10px; }
.shop-redesign .atelier-product-description { margin: 12px 0; font-size: 15px; }
.shop-redesign .atelier-product-purchase { padding-top: 12px; display: grid; grid-template-columns: auto 1fr; gap: 10px 20px; align-items: center; }
.shop-redesign .atelier-purchase-label { margin: 0; font-size: 11px; }
.shop-redesign .atelier-retailers { grid-template-columns: repeat(2,minmax(0,1fr)); }
.shop-redesign a.atelier-buy { min-height: 44px; padding: 10px 14px; font-size: 11px; }
.shop-redesign .atelier-purchase-note { grid-column: 1 / -1; margin-top: 0; font-size: 10px; }
.shop-redesign .shop-collection { display: grid; grid-template-columns: 1fr 1fr; gap: 40px; align-items: center; padding: 32px; margin-block: 0 40px; border: 1px solid #b59a5f40; border-radius: 5px; background: linear-gradient(125deg, #253b3b, #121e1b 75%); position: relative; }
.shop-redesign .shop-collection-art img { display: block; width: 100%; height: auto; aspect-ratio: 1672 / 941; object-fit: contain; }
.shop-redesign .shop-collection h2 { color: #e4c385; font: 400 clamp(34px, 3.5vw, 49px)/1.1 'Cinzel', Georgia, serif; margin: 10px 0 3px; }
.shop-redesign .shop-latin { color: #ecdfc1; font: 400 17px/1.5 'Spectral', Georgia, serif; letter-spacing: .13em; text-transform: uppercase; }
.shop-redesign .shop-collection p:not(.shop-kicker):not(.shop-latin) { margin: 12px 0 18px; max-width: 470px; color: #c9ccbc; font: 16px/1.55 'Spectral', Georgia, serif; }
.shop-redesign .shop-collection-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 10px 22px; }
.shop-redesign .shop-collection-actions > a:not(.shop-button) { color: #dfc38a; font: 12px/1.6 'Inter', sans-serif; min-height: 44px; display: inline-flex; align-items: center; text-underline-offset: 4px; }
.shop-redesign .shop-details { padding: 0 0 32px; }
.shop-redesign .shop-details > h2 { margin-bottom: 18px; }
.shop-redesign .shop-detail { display: block; border: 0; border-bottom: 1px solid var(--shop-line); background: transparent; border-radius: 0; }
.shop-redesign .shop-detail > summary { display: flex; align-items: center; gap: 18px; min-height: 64px; list-style: none; padding: 14px 8px; cursor: pointer; color: #e8ddc5; font: 500 19px/1.4 'Spectral', Georgia, serif; }
.shop-redesign .shop-detail > summary::-webkit-details-marker { display: none; }
.shop-redesign .shop-detail > summary small { margin-left: auto; font: 11px/1.6 'Inter', sans-serif; color: #b9bcaf; }
.shop-redesign .shop-detail > summary::after { content: '+'; color: var(--shop-gold); font-size: 24px; }
.shop-redesign .shop-detail[open] > summary::after { content: '−'; }
.shop-redesign .shop-detail-body { padding: 24px; background: #1a221b; border: 1px solid var(--shop-line); margin-bottom: 20px; }
.shop-redesign .shop-detail-info { display: grid; grid-template-columns: minmax(0, .6fr) minmax(0, 1.4fr); gap: 32px; align-items: center; }
.shop-redesign .shop-detail-info img { width: 100%; height: auto; max-height: 310px; object-fit: contain; display: block; }
.shop-redesign .shop-detail-info h3 { color: #f0e3c8; font-size: 30px; margin-bottom: 16px; }
.shop-redesign .shop-detail-info p { margin-bottom: 16px; font: 14px/1.7 'Inter', sans-serif; color: #c6cbbc; }
.shop-redesign .shop-detail-info strong, .shop-redesign .shop-detail-info a { display: block; margin-block: 16px; color: var(--shop-gold); }
.shop-redesign .shop-detail-info a { font: 12px/1.7 'Inter', sans-serif; }
.shop-redesign .shop-detail-info dl { display: flex; gap: 32px; margin: 18px 0; padding-block: 16px; border-block: 1px solid var(--shop-line); }
.shop-redesign .shop-detail-info dt { font: 11px/1.6 'Inter', sans-serif; color: #b6bead; }
.shop-redesign .shop-detail-info dd { margin: 4px 0 0; font: 14px/1.6 'Inter', sans-serif; }
.shop-redesign .atelier-vavi-status { margin-bottom: 14px; }
.shop-redesign .atelier-vavi-inquiry { margin-top: 24px; border: 1px solid var(--shop-line); padding: 26px; }
.shop-redesign .atelier-vavi-live-link { margin: 20px 0; }
.shop-redesign .shop-about { display: grid; grid-template-columns: 110px 1.4fr 1fr; align-items: center; gap: 30px; background: #e7ddc7; color: #302b20; border-block: 1px solid #a58a4c; padding: 28px; }
.shop-redesign .shop-about-mark { position: relative; width: 90px; height: 90px; border: 1px solid #8c744a; outline: 1px solid #8c744a60; outline-offset: 6px; border-radius: 50%; }
.shop-redesign .shop-about-mark img { display: none; }
.shop-redesign .shop-about-mark span { position: absolute; inset: 0; display: grid; place-items: center; color: #574325; font: 400 27px/1 'Cinzel', Georgia, serif; }
.shop-redesign .shop-about .shop-kicker { color: #675232; font-size: 9px; }
.shop-redesign .shop-about h2 { color: #2a2b20; font: 500 28px/1.2 'Spectral', Georgia, serif; margin: 5px 0 8px; }
.shop-redesign .shop-about p:not(.shop-kicker) { color: #484333; font: 15px/1.65 'Spectral', Georgia, serif; }
.shop-redesign .shop-about a { display: inline-flex; align-items: center; min-height: 44px; margin-top: 8px; color: #302b20; font: 600 11px/1.5 'Inter', sans-serif; text-decoration: underline; text-underline-offset: 4px; }
.shop-redesign .shop-about ul { margin: 0; padding: 0 0 0 24px; border-left: 1px solid #9b885655; list-style: none; }
.shop-redesign .shop-about li { margin: 10px 0; font: 14px/1.6 'Spectral', Georgia, serif; }
.shop-redesign .shop-about li::before { content: '✧'; margin-right: 10px; color: #72552d; }
.shop-redesign .sacred-help { padding: 32px 0; border-top: 0; }
.shop-redesign .shop-section-heading h2 { font-size: 30px; }
.shop-redesign .shop-steps { margin-top: 20px; gap: 28px; }
.shop-redesign .shop-steps li { padding-top: 20px; }
.shop-redesign .shop-steps h3 { font-size: 21px; }
.shop-redesign .shop-faq { gap: 36px; padding: 32px 0 40px; }
.shop-redesign .shop-faq summary { font-size: 12px; min-height: 54px; padding-block: 15px; }
.shop-redesign .shop-faq details p { font-size: 12px; }
.shop-redesign .shop-footer { display: grid; grid-template-columns: 1fr 1fr; text-align: left; gap: 16px 40px; padding: 28px max(32px, calc((100vw - 1176px)/2)); }
.shop-redesign .shop-footer-brand { grid-row: span 2; color: #e5cf9f; font: 400 23px/1.3 'Spectral', Georgia, serif; }
.shop-redesign .shop-footer-brand small { display: block; margin-top: 6px; font: 500 8px/1.6 'Inter', sans-serif; letter-spacing: .15em; text-transform: uppercase; }
.shop-redesign .shop-footer > p { margin: 0; color: #aeb4a7; font-size: 10px; text-align: right; }
.shop-redesign .shop-footer nav { justify-content: flex-end; margin: 0; gap: 18px; }
.shop-redesign .shop-footer nav a { font-size: 11px; }
@media (max-width: 1150px) {
 .shop-redesign .site-header { gap: 16px; padding-inline: 20px; }
 .shop-redesign .shop-header-links { gap: 16px; }
 .shop-redesign .shop-search { width: 190px; }
 .shop-redesign .shop-cart-link span { display: none; }
 .shop-redesign .shop-brand { font-size: 19px; }
}
@media (max-width: 1000px) {
 .shop-redesign .shop-header-links { display: none; }
 .shop-redesign .shop-search { margin-left: auto; width: 260px; }
 .shop-redesign .shop-product-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
 .shop-redesign .shop-product-info h3 { min-height: 0; }
 .shop-redesign .shop-promises { grid-template-columns: repeat(2, minmax(0,1fr)); gap: 16px 0; }
 .shop-redesign .shop-promises > div { justify-content: flex-start; padding-left: 26px; }
 .shop-redesign .shop-promises > div:nth-child(2) { border: 0; }
 .shop-redesign .shop-about { grid-template-columns: 90px 1fr; gap: 20px; }
 .shop-redesign .shop-about ul { grid-column: 2; border: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 8px 18px; }
 .shop-redesign .shop-about li { margin: 0; font-size: 12px; }
 .shop-redesign .atelier-product-purchase { grid-template-columns: 1fr; }
 .shop-redesign .atelier-retailers { max-width: 480px; }
}
@media (max-width: 760px) {
 body.shop-redesign { --shop-header: 120px; }
 .shop-redesign .site-header { display: grid; grid-template-columns: 44px 1fr 44px; gap: 5px 14px; padding: 8px 20px; }
 .shop-redesign .site-header .logo { justify-self: center; }
 .shop-redesign .logo img { display: none; }
 .shop-redesign .shop-search { grid-column: 1 / -1; grid-row: 2; width: 100%; margin: 0; }
 .shop-redesign .shop-cart-link { grid-column: 3; grid-row: 1; justify-self: center; }
 .shop-redesign .atelier.editorial-main { padding: 14px 20px 0; }
 .shop-redesign .shop-hero { grid-template-columns: 1fr; min-height: 0; gap: 28px; padding: 16px 0 26px; }
 .shop-redesign .shop-hero-copy { padding: 0; text-align: center; }
 .shop-redesign .shop-hero-copy > p:not(.shop-kicker) { margin-inline: auto; }
 .shop-redesign .shop-hero h1 { font-size: 46px; }
 .shop-redesign .shop-hero-copy > p:not(.shop-kicker) { font-size: 16px; }
 .shop-redesign .shop-hero-art img { height: auto; }
 .shop-redesign .shop-hero-art { max-width: 560px; width: 100%; margin-inline: auto; }
 .shop-redesign .shop-hero .shop-button { padding-inline: 14px; gap: 12px; font-size: 10px; }
 .shop-redesign .shop-category-grid { gap: 14px; margin-top: 22px; }
 .shop-redesign .shop-category > span:not(.shop-category-art) { font-size: 18px; }
 .shop-redesign .shop-category > span > span { display: none; }
 .shop-redesign .shop-categories { padding-block: 28px; }
 .shop-redesign .shop-section-title { font-size: 27px; gap: 10px; }
 .shop-redesign .shop-section-title::before, .shop-redesign .shop-section-title::after { width: 40px; }
 .shop-redesign .shop-catalog-heading { flex-wrap: wrap; align-items: flex-start; gap: 6px; }
 .shop-redesign .shop-catalog-heading h2 { font-size: 29px; }
 .shop-redesign #shop-results { text-align: left; }
 .shop-redesign .shop-catalog-tools { flex-wrap: wrap; }
 .shop-redesign .shop-product-grid { gap: 16px; }
 .shop-redesign .shop-product-info { padding: 14px; }
 .shop-redesign .shop-collection { gap: 22px; grid-template-columns: 1fr; padding: 20px; }
 .shop-redesign .shop-collection-art { max-width: 520px; }
 .shop-redesign .shop-collection h2 { font-size: 38px; }
 .shop-redesign .shop-detail > summary { flex-wrap: wrap; gap: 2px 14px; padding: 14px 4px; }
 .shop-redesign .shop-detail > summary > span { flex-basis: calc(100% - 28px); }
 .shop-redesign .shop-detail > summary small { margin: 0; order: 1; flex-basis: 100%; }
 .shop-redesign .shop-detail > summary::after { margin-left: auto; }
 .shop-redesign .shop-detail-body { padding: 20px; }
 .shop-redesign .shop-detail-info { grid-template-columns: 1fr; gap: 16px; }
 .shop-redesign .shop-detail-info > a { margin: 0; }
 .shop-redesign .atelier-vavi-inquiry { padding: 20px; }
 .shop-redesign .atelier-catalog { padding: 20px; }
 .shop-redesign .atelier-grid-single .atelier-product { grid-template-columns: 130px minmax(0,1fr); gap: 24px; }
 .shop-redesign .atelier-grid-single .atelier-product h3 { font-size: 27px; }
 .shop-redesign .atelier-retailers { grid-template-columns: 1fr; }
 .shop-redesign .shop-faq { grid-template-columns: 1fr; gap: 20px; }
 .shop-redesign .shop-footer { padding-inline: 20px; grid-template-columns: 1fr; gap: 10px; }
 .shop-redesign .shop-footer-brand { grid-row: auto; }
 .shop-redesign .shop-footer > p { text-align: left; }
 .shop-redesign .shop-footer nav { justify-content: flex-start; }
}
@media (max-width: 540px) {
 .shop-redesign .shop-hero { grid-template-columns: 1fr; }
 .shop-redesign .shop-hero-copy { padding: 0; }
 .shop-redesign .shop-hero h1 { font-size: clamp(36px, 10vw, 43px); margin-block: 16px; }
 .shop-redesign .shop-hero-art { padding: 0; }
 .shop-redesign .shop-hero-art img { width: 100%; height: auto; }
 .shop-redesign .shop-hero-art figcaption { font-size: 9px; letter-spacing: .08em; }
 .shop-redesign .shop-hero-art figcaption > span:last-child { font-size: 8px; }
 .shop-redesign .shop-category-grid { grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 18px 12px; }
 .shop-redesign .shop-category { grid-column: span 2; }
 .shop-redesign .shop-category:nth-child(4) { grid-column: 2 / span 2; }
 .shop-redesign .shop-category-art { width: min(100%, 96px); padding: 4px; }
 .shop-redesign .shop-category > span:not(.shop-category-art) { padding-top: 12px; font-size: 17px; }
 .shop-redesign .shop-category small { font-size: 10px; }
 .shop-redesign .shop-categories .shop-section-title::before, .shop-redesign .shop-categories .shop-section-title::after { display: none; }
 .shop-redesign .shop-promises { gap: 12px 0; }
 .shop-redesign .shop-promises > div { padding-inline: 7px; gap: 8px; }
 .shop-redesign .shop-promises svg { width: 22px; height: 22px; flex-basis: 22px; }
 .shop-redesign .shop-promises strong { font-size: 10px; }
 .shop-redesign .shop-promises small { font-size: 10px; }
 .shop-redesign .shop-product-grid { grid-template-columns: 1fr; }
 .shop-redesign .shop-product-info h3 { font-size: 25px; min-height: 0; }
 .shop-redesign .shop-product-variation { min-height: 0; }
 .shop-redesign .shop-product-info { padding: 18px 20px; }
 .shop-redesign .shop-product-state { font-size: 10px; }
 .shop-redesign .atelier-grid-single .atelier-product { grid-template-columns: 1fr; gap: 18px; }
 .shop-redesign .atelier-product-art { max-width: 180px; }
 .shop-redesign .atelier-catalog-heading { gap: 12px; }
 .shop-redesign .atelier-catalog-heading h2 { font-size: 20px; }
 .shop-redesign .shop-about { grid-template-columns: 1fr; padding: 24px; }
 .shop-redesign .shop-about-mark { display: none; }
 .shop-redesign .shop-about ul { grid-column: 1; }
 .shop-redesign .shop-steps { grid-template-columns: 1fr; gap: 20px; }
 .shop-redesign .shop-catalog-tools label { flex-wrap: wrap; }
 .shop-redesign .atelier-vavi-inquiry { padding: 18px 14px; }
 .shop-redesign .shop-section-title::before, .shop-redesign .shop-section-title::after { width: 32px; }
 .shop-redesign .shop-brand { font-size: 18px; }
 .shop-redesign .shop-brand small { font-size: 7px; }
}
@media (prefers-reduced-motion: reduce) {
 .shop-redesign *, .shop-redesign *::before, .shop-redesign *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
}

/* ==========================================================================
   BOUTIQUE SACRA — 2026
   Direção editorial da loja. Escopo exclusivo .shop-redesign.
   Não altera o fluxo de consulta, carrinho, frete ou checkout.
   ========================================================================== */
body.shop-redesign {
  --shop-bg: #0d1511;
  --shop-panel: #17231d;
  --shop-text: #f2ead9;
  --shop-muted: #b8baab;
  --shop-gold: #c9aa72;
  --shop-line: #bda17143;
  background: radial-gradient(ellipse 1000px 640px at 92% 4%, #24362b55 0%, transparent 70%), #0d1511;
  color: var(--shop-text);
}
.shop-redesign [hidden] { display: none !important; }
.shop-redesign .site-header {
  background: #0b120feb;
  border-bottom: 1px solid #bda17147;
  box-shadow: 0 12px 30px #00000026;
}
.shop-redesign .shop-brand { font-family: 'Spectral', Georgia, serif; font-size: 23px; color: #ebd8ac; }
.shop-redesign .shop-brand small { color: #bfa375; }
.shop-redesign .shop-header-links { gap: clamp(17px, 2.25vw, 34px); }
.shop-redesign .shop-header-links a { letter-spacing: .025em; }
.shop-redesign .shop-search { border-radius: 4px; background: #172019; border-color: #a78f5d75; }
.shop-redesign .shop-search:focus-within { border-color: #e2c58e; box-shadow: 0 0 0 2px #d6bc8340; }
.shop-redesign .atelier.editorial-main { max-width: 1512px; padding: 35px clamp(24px, 4vw, 72px) 0; }
.shop-redesign .shop-kicker { color: #d8b879; font: 600 10px/1.6 'Inter', sans-serif; letter-spacing: .25em; text-transform: uppercase; }
.shop-redesign .shop-button {
  min-height: 52px; padding: 14px 26px; gap: 35px;
  color: #172018; border: 1px solid #e6cea0; border-radius: 2px;
  background: linear-gradient(125deg, #f2dfb3 0%, #c9a96e 100%);
  box-shadow: 0 9px 25px #0509073a;
  font-size: 11px; letter-spacing: .085em;
  transition: background .22s ease, transform .22s ease, box-shadow .22s ease;
}
.shop-redesign .shop-button:hover { background: #f2dfb3; box-shadow: 0 12px 27px #05090755; transform: translateY(-2px); }
/* Abertura: uma única composição editorial, em vez de caixas concorrentes. */
.shop-redesign .shop-hero {
  position: relative; display: grid;
  grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr);
  gap: 0; min-height: 530px; padding: 0; overflow: hidden;
  border: 1px solid #c3a46b57; border-radius: 2px;
  background: radial-gradient(ellipse at 72% 44%, #6a5a3924, transparent 60%),
              linear-gradient(112deg, #131f18 0%, #0b1410 62%, #17271e 100%);
  box-shadow: 0 30px 80px #00000031;
}
.shop-redesign .shop-hero::after {
  content: ''; position: absolute; z-index: 3; inset: 11px;
  border: 1px solid #c9ae7235; pointer-events: none;
}
.shop-redesign .shop-hero-copy {
  position: relative; z-index: 4; align-self: center;
  padding: clamp(38px, 5.1vw, 88px) clamp(30px, 4.2vw, 76px);
  text-align: left;
}
.shop-redesign .shop-hero-copy .shop-kicker {
  display: flex; align-items: center; gap: 15px;
  font-size: 10px; letter-spacing: .22em;
}
.shop-redesign .shop-hero-copy .shop-kicker::before {
  content: ''; display: block; flex: 0 0 33px; height: 1px; background: #cba96a;
}
.shop-redesign .shop-hero h1 {
  margin: 28px 0 24px; max-width: 700px;
  color: #f3ecdf; font: 400 clamp(45px, 4.7vw, 75px)/1.045 'Spectral', Georgia, serif;
  letter-spacing: -.047em; text-wrap: balance;
}
.shop-redesign .shop-hero h1 em { color: #d6b67d; font-style: italic; }
.shop-redesign .shop-hero-copy > p:not(.shop-kicker) {
  max-width: 430px; margin: 0;
  color: #d0d1c5; font: 400 clamp(17px, 1.5vw, 21px)/1.54 'Spectral', Georgia, serif;
}
.shop-redesign .shop-hero .shop-button { margin-top: 34px; }
.shop-redesign .shop-hero-copy > small {
  margin-top: 24px; color: #bfc4b5;
  font: 11px/1.7 'Inter', sans-serif; letter-spacing: .012em;
}
.shop-redesign .shop-hero-art {
  display: flex; flex-direction: column; justify-content: center;
  min-width: 0; min-height: 530px; margin: 0;
  padding: 52px clamp(22px, 3vw, 55px) 34px;
  background: radial-gradient(ellipse at 55% 52%, #4c573d48, transparent 68%),
              linear-gradient(145deg, #1c2a2169, #0a130f7f);
  border-left: 1px solid #c9ae7226;
}
.shop-redesign .shop-hero-image {
  width: 100%; position: relative;
  padding: 0; border: 0; border-radius: 0;
  background: transparent; box-shadow: none;
}
.shop-redesign .shop-hero-image::before,
.shop-redesign .shop-hero-image::after { display: none; }
.shop-redesign .shop-hero-art img {
  display: block; width: 100%; height: auto; max-height: 425px;
  object-fit: contain; aspect-ratio: auto; border-radius: 0;
  filter: drop-shadow(0 22px 25px #0000004a);
}
.shop-redesign .shop-hero-art figcaption {
  justify-content: center; gap: 14px; padding-top: 26px;
  font: 600 10px/1.5 'Inter', sans-serif;
  letter-spacing: .21em; color: #d4bb88;
}
.shop-redesign .shop-hero-art figcaption > span:last-child { font-size: 9px; color: #a7b6a2; }
.shop-redesign .shop-hero-art figcaption > span:last-child::before {
  content: '•'; margin-right: 14px; color: #b89c66;
}
/* Faixa de confiança: discreta, sem competir com os produtos. */
.shop-redesign .shop-promises {
  margin: 0 0 24px; padding: 25px 5px 22px;
  border-top: 0; border-bottom: 1px solid #c1a57435;
  background: transparent;
}
.shop-redesign .shop-promises > div { padding: 0 clamp(9px, 1.6vw, 25px); }
.shop-redesign .shop-promises strong { color: #e8dbc3; font-size: 12px; font-weight: 500; }
.shop-redesign .shop-promises small { color: #aeb9a9; font: 12px/1.5 'Spectral', Georgia, serif; }
.shop-redesign .shop-promises svg { color: #d2b17b; }
.shop-redesign .shop-section-title {
  justify-content: flex-start; gap: 0; margin: 0;
  color: #f2e9d7; font: 400 clamp(31px, 3vw, 43px)/1.18 'Spectral', Georgia, serif;
  letter-spacing: -.035em; text-transform: none;
}
.shop-redesign .shop-section-title::before,
.shop-redesign .shop-section-title::after { display: none; }
/* Categorias: vitrines fotográficas alinhadas, não miniaturas apertadas. */
.shop-redesign .shop-categories { padding: 43px 0 49px; text-align: left; }
.shop-redesign .shop-categories > .shop-kicker { margin: 0 0 12px; }
.shop-redesign .shop-category-grid {
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 14px; max-width: 1170px; margin: 26px auto 0;
}
.shop-redesign .shop-category {
  display: flex; flex-direction: column; align-items: stretch;
  min-width: 0; padding: 0 0 18px;
  color: #ebdfcb; text-align: left;
  border: 1px solid #baa17135; border-radius: 2px;
  background: #152019;
  transition: transform .22s ease, border-color .22s ease, background .22s ease;
}
.shop-redesign .shop-category:hover,
.shop-redesign .shop-category[aria-current] {
  transform: translateY(-3px); background: #1b2a20; border-color: #e0bb7b96;
}
.shop-redesign .shop-category-art {
  display: block; width: 100%; flex: none;
  aspect-ratio: 1.42 / 1; padding: 10px;
  border: none; border-bottom: 1px solid #baa17126;
  border-radius: 0;
  background: radial-gradient(ellipse at center, #334034, #141e18 72%);
  box-shadow: none;
}
.shop-redesign .shop-category-art::after { display: none; }
.shop-redesign .shop-category-art img {
  width: 100%; height: 100%; object-fit: contain; border-radius: 0;
  transition: transform .3s ease;
}
.shop-redesign .shop-category:hover .shop-category-art,
.shop-redesign .shop-category[aria-current] .shop-category-art { border-color: #baa17150; box-shadow: none; transform: none; }
.shop-redesign .shop-category:hover img { transform: scale(1.035); }
.shop-redesign .shop-category > span:not(.shop-category-art) {
  display: flex; align-items: center; justify-content: space-between;
  width: 100%; gap: 6px; padding: 13px 13px 0;
  color: #f0e7d5; font: 400 clamp(17px, 1.4vw, 21px)/1.25 'Spectral', Georgia, serif;
}
.shop-redesign .shop-category[aria-current] > span:not(.shop-category-art) { color: #f0d7a5; }
.shop-redesign .shop-category > span > span { color: #d6b67d; }
.shop-redesign .shop-category small {
  align-self: flex-start; padding: 5px 13px 0;
  color: #abb7a8; font: 11px/1.5 'Inter', sans-serif;
}
/* Catálogo de produtos: imagens inteiras e preços fáceis de localizar. */
.shop-redesign .shop-catalog {
  padding: 49px 0 60px; border-top: 1px solid #bda17143;
}
.shop-redesign .shop-catalog-heading { max-width: 1170px; margin: 0 auto 20px; gap: 24px; }
.shop-redesign .shop-catalog-heading .shop-kicker { margin-bottom: 12px; }
.shop-redesign #shop-results { color: #b8c3b3; font: 11px/1.55 'Inter', sans-serif; }
.shop-redesign .shop-catalog-tools {
  max-width: 1170px; margin-inline: auto; padding-bottom: 17px; border-bottom: 0;
  color: #d6d4c9; font-size: 12px;
}
.shop-redesign .shop-catalog-tools select {
  border: 1px solid #bda17170; border-radius: 2px; background: #17231c;
}
.shop-redesign .shop-product-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px; align-items: stretch; max-width: 1170px; margin-inline: auto;
}
.shop-redesign .shop-product-card {
  display: flex; flex-direction: column; min-width: 0; overflow: hidden;
  background: #eee8dc; border: 1px solid #bfae8d;
  border-radius: 2px; box-shadow: 0 9px 22px #00000026;
  transition: transform .22s ease, box-shadow .22s ease;
}
.shop-redesign .shop-product-card:hover {
  transform: translateY(-4px); box-shadow: 0 20px 36px #00000040;
}
.shop-redesign .shop-product-image {
  display: block; position: relative;
  overflow: hidden; padding: 9px;
  background: radial-gradient(ellipse at 50% 38%, #334337, #141f19 77%); border-bottom: 1px solid #b19c6c55;
}
.shop-redesign .shop-product-image img {
  display: block; width: 100%; height: 205px;
  aspect-ratio: auto; object-fit: contain;
  transition: transform .35s ease;
}
.shop-redesign .shop-product-image:hover img { transform: scale(1.035); }
.shop-redesign .shop-product-badge {
  top: 13px; left: 13px; border: 1px solid #ffffff42;
  padding: 6px 10px; border-radius: 2px;
  background: #e9e0cfef; color: #534b3c;
  font: 600 9px/1.4 'Inter', sans-serif; letter-spacing: .035em;
}
.shop-redesign .shop-product-info { padding: 17px 18px 15px; }
.shop-redesign .shop-product-collection { color: #806a43; letter-spacing: .18em; }
.shop-redesign .shop-product-info h3 { margin: 5px 0 6px; min-height: 0; font-size: clamp(20px, 1.65vw, 23px); line-height: 1.16; }
.shop-redesign .shop-product-variation { color: #5c6258; min-height: 0; margin: 0; font-size: 11px; line-height: 1.45; }
.shop-redesign .shop-price { padding-top: 10px; margin: 10px 0 12px; border-top: 1px solid #bea98177; }
.shop-redesign .shop-price small { font-size: 10px; }
.shop-redesign .shop-price strong { color: #4c3f2a; font-size: 22px; line-height: 1.3; }
.shop-redesign .shop-product-action {
  min-height: 42px; border-color: #6c6b53;
  padding: 8px 13px; border-radius: 2px; font-size: 10px;
  letter-spacing: .055em; color: #27362c;
}
.shop-redesign .shop-product-action:hover { background: #20382a; color: #f2e9d7; border-color: #20382a; }
.shop-redesign .shop-product-state { margin: 9px 0 0; color: #727265; font-size: 9px; line-height: 1.4; }
.shop-redesign .shop-catalog-note { max-width: 1170px; margin: 22px auto 0; color: #b4bcae; }
/* O livro ocupa uma faixa editorial completa, preservando os links parceiros. */
.shop-redesign .atelier-catalog {
  grid-column: 1 / -1; margin-top: 15px; padding: clamp(24px, 3vw, 44px);
  border: 1px solid #bda17155; border-radius: 2px;
  background: linear-gradient(110deg, #1b2d23, #101b15);
}
.shop-redesign .atelier-catalog-heading h2 { font-size: 29px; color: #f1e4cb; }
.shop-redesign .atelier-grid-single .atelier-product { grid-template-columns: minmax(140px, 210px) minmax(0, 1fr); gap: 36px; }
.shop-redesign .atelier-product-art { max-width: 210px; }
.shop-redesign .atelier-grid-single .atelier-product h3 { font-size: 39px; }
.shop-redesign .shop-collection {
  gap: clamp(28px, 4.5vw, 72px); margin-bottom: 68px;
  padding: clamp(28px, 4vw, 64px);
  border: 1px solid #bda17160; border-radius: 2px;
  background: radial-gradient(ellipse at 75% 40%, #3957445e, transparent 68%), #14221a;
}
.shop-redesign .shop-collection-art img { filter: drop-shadow(0 20px 24px #00000034); }
.shop-redesign .shop-collection h2 { font-size: clamp(38px, 4vw, 59px); }
.shop-redesign .shop-details { padding-bottom: 57px; }
.shop-redesign .shop-details > h2 { margin-bottom: 22px; }
.shop-redesign .shop-detail > summary { min-height: 74px; font-size: 22px; }
.shop-redesign .shop-detail-body { border-radius: 2px; background: #1a271e; }
.shop-redesign .shop-about { margin-top: 28px; border-radius: 2px; }
.shop-redesign .sacred-help { padding-block: 59px; }
.shop-redesign .shop-faq { padding-block: 34px 70px; }
/* Tablet e celular: leitura clara e cartões proporcionais. */
@media (max-width: 1100px) {
  .shop-redesign .atelier.editorial-main { padding-inline: 30px; }
  .shop-redesign .shop-hero { min-height: 450px; }
  .shop-redesign .shop-hero-art { min-height: 450px; padding-inline: 22px; }
  .shop-redesign .shop-category-grid { gap: 12px; }
  .shop-redesign .shop-category-art { padding: 9px; }
  .shop-redesign .shop-category > span:not(.shop-category-art) { padding-inline: 11px; font-size: 18px; }
  .shop-redesign .shop-category small { padding-inline: 11px; }
  .shop-redesign .shop-product-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); max-width: 760px; gap: 18px; }
  .shop-redesign .shop-catalog-heading, .shop-redesign .shop-catalog-tools { max-width: 760px; }
  .shop-redesign .shop-product-image img { height: 212px; }
}
@media (max-width: 760px) {
  .shop-redesign .atelier.editorial-main { padding: 20px 20px 0; }
  .shop-redesign .site-header { box-shadow: 0 5px 20px #00000035; }
  .shop-redesign .shop-hero { grid-template-columns: 1fr; min-height: 0; }
  .shop-redesign .shop-hero-copy {
    padding: 50px 30px 17px; text-align: left;
  }
  .shop-redesign .shop-hero h1 { font-size: clamp(40px, 7.5vw, 60px); line-height: 1.08; }
  .shop-redesign .shop-hero-copy > p:not(.shop-kicker) { margin-inline: 0; }
  .shop-redesign .shop-hero-art { min-height: 0; padding: 15px 25px 35px; border-left: 0; }
  .shop-redesign .shop-hero-art img { max-height: 400px; }
  .shop-redesign .shop-hero-art figcaption { padding-top: 16px; }
  .shop-redesign .shop-promises { margin-top: 0; }
  .shop-redesign .shop-categories { padding: 32px 0 55px; }
  .shop-redesign .shop-category-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
  .shop-redesign .shop-section-title { font-size: clamp(30px, 5.5vw, 39px); }
  .shop-redesign .shop-catalog { padding-block: 48px 55px; }
  .shop-redesign .shop-catalog-heading { gap: 12px; }
  .shop-redesign .shop-product-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 15px; }
  .shop-redesign .shop-category-grid { max-width: 630px; }
  .shop-redesign .shop-category-art { aspect-ratio: 1.35 / 1; }
  .shop-redesign .shop-product-info { padding: 16px; }
  .shop-redesign .shop-product-info h3 { font-size: 24px; min-height: 0; }
  .shop-redesign .shop-collection { padding: 25px; margin-bottom: 48px; }
  .shop-redesign .atelier-grid-single .atelier-product { grid-template-columns: minmax(120px, 170px) minmax(0, 1fr); gap: 24px; }
}
@media (max-width: 540px) {
  .shop-redesign .atelier.editorial-main { padding-inline: 16px; }
  .shop-redesign .shop-hero-copy { padding: 40px 24px 13px; }
  .shop-redesign .shop-hero h1 { font-size: clamp(35px, 10vw, 49px); }
  .shop-redesign .shop-hero .shop-button { width: 100%; justify-content: space-between; }
  .shop-redesign .shop-hero-art { padding: 5px 17px 29px; }
  .shop-redesign .shop-hero-art figcaption { flex-wrap: wrap; gap: 6px; font-size: 9px; }
  .shop-redesign .shop-hero-art figcaption > span:last-child::before { margin-right: 6px; }
  .shop-redesign .shop-promises { grid-template-columns: 1fr 1fr; gap: 10px 0; padding: 21px 0; }
  .shop-redesign .shop-promises > div { align-items: flex-start; gap: 7px; padding: 0 7px; }
  .shop-redesign .shop-promises strong { font-size: 10px; }
  .shop-redesign .shop-promises small { font-size: 10px; }
  .shop-redesign .shop-category-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 11px; }
  .shop-redesign .shop-category,
  .shop-redesign .shop-category:nth-child(4) { grid-column: auto; }
  .shop-redesign .shop-category-art { width: 100%; padding: 8px; aspect-ratio: 1.4 / 1; }
  .shop-redesign .shop-category > span:not(.shop-category-art) { padding: 12px 11px 0; font-size: 18px; }
  .shop-redesign .shop-category small { font-size: 10px; }
  .shop-redesign .shop-product-grid { grid-template-columns: 1fr; max-width: 375px; gap: 17px; }
  .shop-redesign .shop-product-image img { height: 220px; aspect-ratio: auto; }
  .shop-redesign .shop-product-info { padding: 18px 19px 16px; }
  .shop-redesign .shop-product-info h3 { font-size: 23px; }
  .shop-redesign .shop-price strong { font-size: 24px; }
  .shop-redesign .atelier-catalog { padding: 22px; }
  .shop-redesign .atelier-grid-single .atelier-product { grid-template-columns: 1fr; }
  .shop-redesign .atelier-product-art { max-width: 185px; }
  .shop-redesign .atelier-grid-single .atelier-product h3 { font-size: 30px; }
  .shop-redesign .shop-catalog-tools { flex-wrap: wrap; }
  .shop-redesign .shop-collection { padding: 21px; }
  .shop-redesign .shop-detail > summary { font-size: 20px; }
}
@media (prefers-reduced-motion: reduce) {
  .shop-redesign .shop-category,
  .shop-redesign .shop-category-art img,
  .shop-redesign .shop-product-card,
  .shop-redesign .shop-product-image img,
  .shop-redesign .shop-button { transition: none; transform: none; }
}
