/* Loja — o manto mariano encontra a identidade editorial do site.
   Camada restrita a esta página; mantém os contratos do catálogo e carrinho. */
body.shop-manto { --shop-gold:#d2b575; --shop-copper:#d2b575; background:#151715; color:#e9e5dc; }
body.shop-manto .site-header { background:#103336; border-bottom:1px solid #a68c55; box-shadow:0 4px 24px #0002; }
.shop-manto .shop-brand { color:#f3ead8; text-shadow:none; }
.shop-manto .shop-brand small { color:#c7c9bb; }
.shop-manto .shop-header-links a,.shop-manto .shop-cart-link { color:#eee8dc; }
.shop-manto .shop-search { background:#f3eee3; border-color:#a68c55; box-shadow:none; }
.shop-manto .shop-search button { background:#d2b575; color:#183333; }
body.shop-manto .site-header .menu-btn { background:transparent; border-color:#a68c5580; color:#f3ead8; }
.shop-manto .shop-ribbon { background:#1d211e; border-bottom:1px solid #3c4139; box-shadow:none; letter-spacing:.06em; min-height:40px; }
.shop-manto .shop-ribbon strong,.shop-manto .shop-ribbon a { color:#d2b575; }
.shop-manto .atelier.editorial-main { max-width:1440px; padding:24px clamp(16px,3.5vw,52px) 0; }
.shop-manto .shop-hero { position:relative; isolation:isolate; display:grid; grid-template-columns:1fr; min-height:390px; overflow:hidden; border:1px solid #a68c5566; border-radius:3px; background:#073d42; }
.shop-manto .shop-mantle-art { position:absolute; z-index:-2; inset:0; width:100%; height:100%; object-fit:cover; object-position:center; }
.shop-manto .shop-hero::before { content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(90deg,#032d32e8 0%,#032d3299 35%,#032d3210 68%); pointer-events:none; }
.shop-manto .shop-hero-copy { padding:48px clamp(26px,5vw,72px); max-width:630px; }
.shop-manto .shop-hero-copy .shop-kicker { color:#e1c88f; font-size:11px; letter-spacing:.16em; }
.shop-manto .shop-hero h1 { font-family:'EB Garamond',Georgia,serif; font-size:clamp(42px,4.8vw,68px); font-weight:400; line-height:1.04; letter-spacing:-.025em; margin:20px 0; color:#fff8e9; }
.shop-manto .shop-hero h1 em { color:#ebd5a6; font-weight:400; }
.shop-manto .shop-hero-copy > p:not(.shop-kicker) { max-width:350px; color:#ede9df; font:17px/1.6 'Spectral',Georgia,serif; }
.shop-manto .shop-button { background:#dfc58c; border:1px solid #efdcb1; color:#193234; font-size:12px; min-height:46px; padding:12px 22px; border-radius:3px; box-shadow:none; }
.shop-manto .shop-button:hover { background:#f1dfb5; color:#193234; }
.shop-manto .shop-promises { background:transparent; padding:20px 0; border-color:#3c4139; }
.shop-manto .shop-promises strong { font-size:12px; color:#e9e5dc; }
.shop-manto .shop-promises small { font-size:12px; color:#bcbcaf; }
.shop-manto .shop-promises svg,.shop-manto .shop-promises > div > span { color:#d2b575; }
.shop-manto .shop-categories { padding:34px 0; }
.shop-manto .shop-kicker,.shop-manto .shop-categories > .shop-kicker,.shop-manto .shop-catalog-heading .shop-kicker { color:#d2b575; font-size:10px; letter-spacing:.14em; }
.shop-manto .shop-section-title { font:400 clamp(28px,3vw,38px)/1.2 'EB Garamond',Georgia,serif; color:#e9e5dc; }
.shop-manto .shop-section-title::before { display:none!important; }
.shop-manto .shop-category { background:#1d211e; border:1px solid #3c4139; border-radius:3px; padding:12px; }
.shop-manto .shop-category:hover,.shop-manto .shop-category[aria-current] { background:#24302b; border-color:#b49b67; }
.shop-manto .shop-category-art { background:#151715; border:0; }
.shop-manto .shop-category > span:not(.shop-category-art) { color:#e9e5dc; }
.shop-manto .shop-catalog { padding:12px 0 40px; }
.shop-manto .shop-catalog-heading { margin-bottom:20px; }
.shop-manto .shop-product-grid { grid-template-columns:repeat(4,minmax(0,1fr)); gap:20px; }
.shop-manto .shop-product-card,.shop-manto .atelier-catalog { border:1px solid #a99b7b; border-radius:4px; background:#f3eee4; box-shadow:none; }
.shop-manto .shop-product-card:hover,.shop-manto .atelier-catalog:hover { border-color:#d2b575; box-shadow:0 8px 28px #0003; }
.shop-manto .shop-product-image { padding:0; background:#e9e4d9; border-color:#d5cbb6; }
.shop-manto .shop-product-image img { width:100%; height:auto; aspect-ratio:1; object-fit:contain; }
.shop-manto .shop-product-badge { top:12px; left:12px; background:#163f40; color:#f4eddd; border:1px solid #bca36e; border-radius:2px; font-size:10px; padding:6px 9px; box-shadow:none; }
.shop-manto .shop-product-card[data-availability="preparation"] .shop-product-badge { background:#55594d; }
.shop-manto .shop-product-info,.shop-manto .atelier-product-copy { padding:18px; background:#f3eee4; }
.shop-manto .shop-product-info h3,.shop-manto .atelier-grid-single .atelier-product h3 { display:block; max-height:none; min-height:52px; font:500 23px/1.15 'EB Garamond',Georgia,serif; color:#233830; overflow:visible; }
.shop-manto .shop-product-info h3 a { color:inherit; }
.shop-manto .shop-product-collection,.shop-manto .atelier-product-kind { font-size:10px; color:#72613f; letter-spacing:.1em; }
.shop-manto .shop-product-variation { min-height:32px; }
.shop-manto .shop-product-variation > span { font-size:10px; background:#e9e2d4; }
.shop-manto .shop-price { padding:12px 0; border-color:#cfc3a9; }
.shop-manto .shop-price small { font-size:11px; color:#605f52; }
.shop-manto .shop-price strong { font-size:22px; color:#163f40; }
.shop-manto .shop-cart-size { font-size:12px; margin:6px 0; }
.shop-manto .shop-cart-size select { min-height:44px; height:44px; font-size:14px; }
.shop-manto .shop-product-info .shop-cart-add,.shop-manto .atelier a.atelier-buy-primary { min-height:44px; background:#163f40; border-color:#163f40; color:#fff8e9; font-size:12px; border-radius:3px; }
.shop-manto .shop-product-info .shop-cart-add:hover { background:#245a58; }
.shop-manto .shop-product-info .shop-product-action { min-height:36px; font-size:12px; color:#214d49; }
.shop-manto .shop-cart-quick { min-height:44px; font-size:12px; color:#214d49; border-color:#a99b7b; }
.shop-manto .shop-product-state { font-size:11px; line-height:1.5; color:#666456; margin-top:8px; }
.shop-manto .atelier-product-art { height:auto; padding:0; background:#e9e4d9; }
.shop-manto .atelier-product-art img { height:auto; aspect-ratio:1; object-fit:contain; }
.shop-manto .atelier a.atelier-buy { min-height:44px; font-size:12px; }
.shop-manto .atelier-purchase-note { font-size:11px; line-height:1.5; }
.shop-manto .shop-collection { background:#1d2926; border-color:#6e7157; }
.shop-manto .shop-collection h2 { color:#dfc58c; }
.shop-manto :is(a,button,input,select,summary):focus-visible { outline:3px solid #c29d4e; outline-offset:3px; }
@media(max-width:1100px) { .shop-manto .shop-product-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; } }
@media(max-width:760px) {
 .shop-manto .shop-hero { min-height:360px; }
 .shop-manto .shop-hero-copy { padding:32px 24px; }
 .shop-manto .shop-hero::before { background:linear-gradient(90deg,#032d32e0,#032d3255); }
 .shop-manto .shop-product-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
 .shop-manto .shop-product-info,.shop-manto .atelier-product-copy { padding:12px; }
 .shop-manto .shop-product-info h3 { font-size:21px; }
 .shop-manto .shop-promises { gap:16px 0; }
}
@media(max-width:480px) {
 .shop-manto .shop-product-grid { grid-template-columns:1fr; }
 .shop-manto .shop-product-image img,.shop-manto .atelier-product-art img { max-height:320px; }
 .shop-manto .shop-product-info,.shop-manto .atelier-product-copy { padding:20px; }
 .shop-manto .shop-product-info h3 { min-height:0; font-size:26px; margin-bottom:12px; }
 .shop-manto .shop-product-variation { min-height:0; }
 .shop-manto .shop-ribbon { font-size:9px; letter-spacing:0; }
 .shop-manto .shop-catalog-tools { align-items:flex-start; flex-direction:column; }
}

/* Cabeçalho compacto da loja; a arte enviada é exibida por inteiro. */
body.shop-manto { --shop-header:132px; --header-height:132px; padding-top:88px; }
/* Os links principais ficam no menu lateral; não mostrar uma segunda faixa no cabeçalho. */
.shop-manto .site-header .shop-header-links,
.shop-manto .site-header .header-actions { display:none!important; }
body.shop-manto .site-header { display:grid; grid-template-columns:44px minmax(230px,1fr) minmax(220px,380px) auto; grid-template-rows:64px; gap:0 24px; height:88px; padding:12px max(24px,calc((100vw - 1280px)/2)) 0; background:linear-gradient(#062c32dd,#062c32ed),url('../assets/img/loja/manto-mariano-cabecalho.webp') center/cover; backdrop-filter:none; }
.shop-manto .site-header .menu-btn { grid-column:1; grid-row:1; }
.shop-manto .site-header .logo { grid-column:2; grid-row:1; }
.shop-manto .site-header .logo img { width:42px; height:42px; }
.shop-manto .shop-brand { font-size:24px; }
.shop-manto .site-header .shop-search { grid-column:3; grid-row:1; width:100%; max-width:none; border-radius:4px; }
.shop-manto .shop-search input { font-size:14px; }
.shop-manto .site-header .shop-cart-link { grid-column:4; grid-row:1; padding:0 15px; border:1px solid #c2a77380; border-radius:4px; background:#0a3037; }
.shop-manto .atelier.editorial-main { padding-top:24px; }
.shop-manto .shop-hero { display:flex; flex-direction:column; min-height:0; padding:0; background:#1b2522; border-color:#a68c5570; }
.shop-manto .shop-mantle-art { position:static; z-index:auto; display:block; width:100%; height:auto; aspect-ratio:2048/682; object-fit:contain; }
.shop-manto .shop-hero::before { display:none; }
.shop-manto .shop-hero-copy { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:8px 40px; align-items:center; width:100%; max-width:none; padding:28px 36px 30px; }
.shop-manto .shop-hero-copy .shop-kicker { grid-column:1; margin:0; font-size:10px; }
.shop-manto .shop-hero h1 { grid-column:1; font-size:clamp(30px,3.2vw,44px); line-height:1.12; margin:0; }
.shop-manto .shop-hero h1 br { display:none; }
.shop-manto .shop-hero h1 em::before { content:' '; }
.shop-manto .shop-hero-copy > p:not(.shop-kicker) { grid-column:1; max-width:620px; margin:4px 0 0; font-size:15px; color:#c4c7ba; }
.shop-manto .shop-hero-actions { grid-column:2; grid-row:1/4; display:flex; flex-direction:column; align-items:stretch; gap:10px; min-width:210px; }
.shop-manto .shop-hero .shop-button { margin:0; min-height:48px; }
.shop-manto .shop-hero-secondary { display:flex; align-items:center; justify-content:center; min-height:44px; padding:8px 18px; font:12px/1.5 'Inter',sans-serif; color:#e1c88f; text-underline-offset:5px; }
@media(max-width:1000px) {
 body.shop-manto .site-header { grid-template-columns:44px minmax(190px,1fr) minmax(180px,280px) auto; gap:0 14px; padding-inline:20px; }
 .shop-manto .shop-brand { font-size:20px; }
 .shop-manto .shop-brand small { font-size:7px; }
 .shop-manto .site-header .shop-cart-link { padding:0 10px; }
 .shop-manto .shop-hero-copy { gap:10px 24px; padding:24px; }
}
@media(max-width:760px) {
 body.shop-manto { --shop-header:118px; --header-height:118px; padding-top:118px; }
 body.shop-manto .site-header { height:118px; grid-template-columns:44px minmax(0,1fr) auto; grid-template-rows:60px 48px; padding:10px 16px 0; gap:0 12px; }
 .shop-manto .site-header .logo { min-width:0; }
 .shop-manto .site-header .logo img { width:32px; height:32px; }
 .shop-manto .shop-brand { font-size:18px; white-space:normal; }
 .shop-manto .shop-brand small { font-size:7px; letter-spacing:.08em; }
 .shop-manto .site-header .shop-search { grid-column:1/-1; grid-row:2; width:100%; align-self:center; }
 .shop-manto .site-header .shop-cart-link { grid-column:3; grid-row:1; min-width:44px; padding:0 8px; }
 .shop-manto .shop-cart-link > span:not(.shop-cart-count) { display:none; }
 .shop-manto .shop-hero-copy { display:block; padding:24px 20px; text-align:center; }
 .shop-manto .shop-hero-copy .shop-kicker { justify-content:center; margin-bottom:10px; }
 .shop-manto .shop-hero h1 { font-size:34px; }
 .shop-manto .shop-hero-copy > p:not(.shop-kicker) { margin:12px auto 18px; }
 .shop-manto .shop-hero-actions { min-width:0; max-width:320px; margin:auto; }
 .shop-manto .shop-mantle-art { height:auto; min-height:0; }
}
@media(max-width:370px) {
 .shop-manto .shop-brand { font-size:16px; }
 .shop-manto .site-header .logo img { display:none; }
 .shop-manto .shop-hero h1 { font-size:30px; }
}

/* Vitrine editorial compacta: imagem, nome e preço; compra na ficha do produto. */
body.shop-manto #shop-product-grid {
  display:grid; grid-template-columns:repeat(5,minmax(0,1fr));
  gap:28px 20px; align-items:start; max-width:none;
}
body.shop-manto #shop-product-grid > .shop-product-card,
body.shop-manto #shop-product-grid > .atelier-catalog {
  display:flex; flex-direction:column; min-width:0; height:auto;
  margin:0; padding:0; overflow:visible; border:0; border-radius:0;
  background:transparent; box-shadow:none;
}
body.shop-manto #shop-product-grid > .shop-product-card:hover,
body.shop-manto #shop-product-grid > .atelier-catalog:hover {
  transform:none; border:0; box-shadow:none;
}
body.shop-manto #shop-product-grid .shop-product-image,
body.shop-manto #shop-product-grid .atelier-product-art {
  display:block; position:relative; width:100%; height:auto; min-height:0;
  margin:0; padding:0; aspect-ratio:4/5; overflow:hidden;
  border:1px solid #b49b6738; border-radius:7px; background:#1d2926;
}
body.shop-manto #shop-product-grid .atelier-product-link {
  display:block; width:100%; height:100%;
}
body.shop-manto #shop-product-grid .shop-product-image img,
body.shop-manto #shop-product-grid .atelier-product-art img {
  display:block; width:100%; height:100%; max-height:none;
  aspect-ratio:auto; object-fit:contain; object-position:center;
  padding:0; border:0; border-radius:0; transition:transform .2s ease;
}
/* Fotos do catálogo preenchem o cartão; o livro mantém seu enquadramento original. */
body.shop-manto #shop-product-grid .shop-product-image img { object-fit:cover; object-position:center; }
body.shop-manto #shop-product-grid .shop-product-image:hover img,
body.shop-manto #shop-product-grid .atelier-product-link:hover img { transform:scale(1.025); }
body.shop-manto #shop-product-grid .shop-product-badge {
  top:auto; bottom:0; left:0; right:auto; max-width:100%;
  padding:6px 9px; border:0; border-radius:0 5px 0 5px;
  background:#164440f2; color:#f4ead7; box-shadow:none;
  font:500 10px/1.25 'Inter',sans-serif; letter-spacing:0; text-transform:none;
}
body.shop-manto #shop-product-grid .shop-product-info,
body.shop-manto #shop-product-grid .atelier-product-copy {
  display:flex; flex-direction:column; flex:none;
  width:100%; min-width:0; height:auto; min-height:0;
  padding:11px 2px 0; background:transparent;
}
body.shop-manto #shop-product-grid .shop-product-info h3,
body.shop-manto #shop-product-grid .atelier-product h3 {
  display:block; height:auto; min-height:0; max-height:none;
  margin:0 0 7px; overflow:visible;
  font:500 14px/1.4 'Inter',sans-serif; letter-spacing:-.015em;
  text-wrap:pretty; color:#f0ece3;
}
body.shop-manto #shop-product-grid h3 a { color:inherit; text-decoration:none; }
body.shop-manto #shop-product-grid h3 a:hover { color:#dfc58c; }
body.shop-manto #shop-product-grid .shop-price {
  display:block; min-height:0; height:auto; margin:0; padding:0; border:0;
}
body.shop-manto #shop-product-grid .shop-price small {
  display:block; margin:0 0 2px; color:#b6b9ac;
  font:400 10px/1.4 'Inter',sans-serif;
}
body.shop-manto #shop-product-grid .shop-price strong {
  display:block; margin:0; color:#dfc58c; font:600 16px/1.4 'Inter',sans-serif;
}
body.shop-manto #shop-product-grid .shop-price strong span {
  color:#b6b9ac; font:400 10px/1.4 'Inter',sans-serif;
}
body.shop-manto #shop-product-grid .shop-product-action {
  display:inline-flex; order:initial; align-self:flex-start; align-items:center;
  gap:10px; min-height:32px; width:auto; margin:4px 0 0; padding:3px 0;
  background:transparent; border:0; border-radius:0; box-shadow:none;
  color:#cbbb98; font:500 11px/1.4 'Inter',sans-serif;
  text-decoration:none; letter-spacing:0;
}
body.shop-manto #shop-product-grid .shop-product-action:hover { color:#f1dfb5; }
body.shop-manto #shop-product-grid .shop-product-collection,
body.shop-manto #shop-product-grid .shop-product-variation,
body.shop-manto #shop-product-grid .shop-cart-size,
body.shop-manto #shop-product-grid .shop-cart-add,
body.shop-manto #shop-product-grid .shop-cart-quick,
body.shop-manto #shop-product-grid .shop-cart-buy-now,
body.shop-manto #shop-product-grid .shop-product-state,
body.shop-manto #shop-product-grid .atelier-catalog-heading,
body.shop-manto #shop-product-grid .atelier-product-meta,
body.shop-manto #shop-product-grid .atelier-product-art figcaption,
body.shop-manto #shop-product-grid .atelier-product-subtitle,
body.shop-manto #shop-product-grid .atelier-product-description,
body.shop-manto #shop-product-grid .atelier-product-purchase { display:none!important; }
body.shop-manto #shop-product-grid .atelier-grid,
body.shop-manto #shop-product-grid .atelier-product {
  display:flex; flex-direction:column; flex:none; width:100%;
  height:auto; min-height:0; margin:0; padding:0; gap:0;
  border:0; background:transparent;
}
body.shop-manto #shop-product-grid .atelier-product-author {
  margin:0; color:#b6b9ac; font:400 11px/1.4 'Inter',sans-serif;
}
body.shop-manto #shop-product-grid a:focus-visible {
  outline:2px solid #dfc58c; outline-offset:4px;
}
@media(max-width:1100px) {
  body.shop-manto #shop-product-grid { grid-template-columns:repeat(4,minmax(0,1fr)); gap:25px 16px; }
}
@media(max-width:850px) {
  body.shop-manto #shop-product-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media(max-width:600px) {
  body.shop-manto #shop-product-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px 12px; }
  body.shop-manto #shop-product-grid .shop-product-info h3,
  body.shop-manto #shop-product-grid .atelier-product h3 { font-size:13px; }
  body.shop-manto #shop-product-grid .shop-price strong { font-size:15px; }
  body.shop-manto #shop-product-grid .shop-product-badge { font-size:9px; padding:5px 7px; }
}

/* Ações da vitrine: tamanho, adicionar e ficha do produto. */
body.shop-manto #shop-product-grid .shop-cart-size {
  display:flex!important; order:1; align-items:center; justify-content:space-between;
  gap:8px; margin:10px 0 0; color:#c6c7bb; font:400 11px/1.4 'Inter',sans-serif;
}
body.shop-manto #shop-product-grid .shop-cart-size select {
  min-height:34px; height:34px; min-width:74px; padding:4px 9px;
  border:1px solid #a68c5566; border-radius:4px;
  background:#1d2926; color:#f0ece3; font:500 12px/1.3 'Inter',sans-serif;
}
body.shop-manto #shop-product-grid .shop-cart-add {
  display:flex!important; order:2; align-items:center; justify-content:center;
  gap:6px; width:100%; min-height:40px; margin:10px 0 0; padding:9px 6px;
  border:1px solid #b49b6780; border-radius:4px; background:#164440; color:#f4ead7;
  font:600 11px/1.35 'Inter',sans-serif; letter-spacing:0; cursor:pointer;
}
body.shop-manto #shop-product-grid .shop-cart-add:hover { background:#215953; border-color:#dfc58c; }
body.shop-manto #shop-product-grid .shop-product-action {
  display:flex; order:3; align-self:stretch; align-items:center; justify-content:center;
  gap:8px; width:100%; min-height:36px; margin:6px 0 0; padding:8px 6px;
  border:1px solid #b49b6755; border-radius:4px; color:#d9c69d; background:transparent;
  font:500 11px/1.35 'Inter',sans-serif; text-decoration:none;
}
body.shop-manto #shop-product-grid .shop-product-action:hover { background:#dfc58c0d; border-color:#b49b67; }
body.shop-manto #shop-product-grid .shop-cart-add:focus-visible,
body.shop-manto #shop-product-grid .shop-cart-size select:focus-visible {
  outline:2px solid #dfc58c; outline-offset:3px;
}
body.shop-manto #shop-product-grid .atelier-product-purchase { display:block!important; margin:10px 0 0; padding:0; border:0; }
body.shop-manto #shop-product-grid .atelier-purchase-label,
body.shop-manto #shop-product-grid .atelier-purchase-note,
body.shop-manto #shop-product-grid .atelier-buy-secondary { display:none!important; }
body.shop-manto #shop-product-grid .atelier-retailers { display:block; }
body.shop-manto #shop-product-grid a.atelier-buy-primary {
  display:flex; align-items:center; justify-content:center; gap:6px;
  min-height:40px; width:100%; margin:0; padding:9px 6px;
  border:1px solid #b49b6780; border-radius:4px; background:#164440; color:#f4ead7;
  font:600 11px/1.35 'Inter',sans-serif; text-decoration:none;
}

/* Paleta de vitrine: marfim, verde profundo e ouro envelhecido. */
body.shop-manto #catalogo {
  margin:24px 0 32px; padding:28px 24px 32px;
  border:1px solid #dcd2c0; border-radius:8px;
  background:#f7f3eb; color:#243f38;
}
body.shop-manto #catalogo .shop-section-title { color:#183e36; }
body.shop-manto #catalogo .shop-kicker { color:#80633a; }
body.shop-manto #catalogo .shop-catalog-tools { border-color:#d9cfbf; }
body.shop-manto #catalogo #shop-results,
body.shop-manto #catalogo .shop-active-filter,
body.shop-manto #catalogo .shop-catalog-tools label,
body.shop-manto #catalogo .shop-catalog-note { color:#62685f; }
body.shop-manto #catalogo [data-shop-reset] { color:#36574b; text-decoration-color:#8a9b8b; }
body.shop-manto #catalogo .shop-catalog-tools select {
  background:#fffcf6; color:#243f38; border-color:#c5bda9; color-scheme:light;
}
body.shop-manto #catalogo .shop-cart-feedback { color:#215449; background:transparent; }
body.shop-manto #catalogo .shop-cart-feedback a { color:#155449; }
body.shop-manto #shop-product-grid .shop-product-info h3,
body.shop-manto #shop-product-grid .atelier-product h3 { color:#183e36; }
body.shop-manto #shop-product-grid h3 a:hover { color:#796039; }
body.shop-manto #shop-product-grid .shop-price strong { color:#183e36; }
body.shop-manto #shop-product-grid .shop-price small,
body.shop-manto #shop-product-grid .shop-price strong span,
body.shop-manto #shop-product-grid .atelier-product-author,
body.shop-manto #shop-product-grid .shop-cart-size { color:#62685f; }
body.shop-manto #shop-product-grid .shop-product-image,
body.shop-manto #shop-product-grid .atelier-product-art { background:#e9e2d5; border-color:#d7cebd; }
body.shop-manto #shop-product-grid .shop-cart-size select {
  background:#fffcf6; color:#243f38; border-color:#c5bda9; color-scheme:light;
}
body.shop-manto #shop-product-grid .shop-cart-add,
body.shop-manto #shop-product-grid a.atelier-buy-primary {
  background:#155449; color:#fffdf7; border-color:#155449;
}
body.shop-manto #shop-product-grid .shop-cart-add:hover,
body.shop-manto #shop-product-grid a.atelier-buy-primary:hover { background:#0b3c33; border-color:#0b3c33; color:#fffdf7; }
body.shop-manto #shop-product-grid .shop-product-action {
  color:#315547; background:transparent; border-color:#b3bdae;
}
body.shop-manto #shop-product-grid .shop-product-action:hover {
  background:#e9ede3; border-color:#6d8979; color:#183e36;
}
body.shop-manto #shop-product-grid a:focus-visible,
body.shop-manto #shop-product-grid .shop-cart-add:focus-visible,
body.shop-manto #shop-product-grid .shop-cart-size select:focus-visible {
  outline:2px solid #80633a; outline-offset:3px;
}
body.shop-manto #catalogo .shop-empty { background:#eee8dc; color:#243f38; border-color:#d2c6b1; }
body.shop-manto #catalogo .shop-empty h3,
body.shop-manto #catalogo .shop-empty p { color:#243f38; }
@media(max-width:600px) {
  body.shop-manto #catalogo { margin-top:18px; padding:22px 12px 26px; border-radius:6px; }
}

/* Abertura da loja em largura total, com apresentação sobre o manto. */
body.shop-manto .atelier.editorial-main { width:100%; max-width:none; padding:0; }
body.shop-manto .shop-store-content {
  width:100%; max-width:1440px; margin:0 auto;
  padding:0 clamp(16px,3.5vw,52px);
}
body.shop-manto .shop-hero {
  position:relative; isolation:isolate; display:flex; align-items:center;
  width:100%; min-height:clamp(460px,calc(100svh - 168px),680px);
  margin:0; padding:0; overflow:hidden; border:0; border-radius:0;
  background:#073d42;
}
body.shop-manto .shop-mantle-art {
  position:absolute; inset:0; z-index:0; display:block;
  width:100%; height:100%; min-height:0; aspect-ratio:auto;
  object-fit:cover; object-position:center;
}
body.shop-manto .shop-hero::before {
  content:""; display:block; position:absolute; inset:0; z-index:1;
  background:linear-gradient(90deg,rgba(3,35,39,.94) 0%,rgba(3,41,44,.82) 30%,rgba(3,45,49,.38) 57%,rgba(3,45,49,.04) 85%);
  pointer-events:none;
}
body.shop-manto .shop-hero-copy {
  position:relative; z-index:2; display:block; width:100%; max-width:1360px;
  margin:0 auto; padding:76px clamp(24px,4.5vw,72px); text-align:left;
}
body.shop-manto .shop-hero-copy .shop-kicker {
  justify-content:flex-start; margin:0 0 24px; color:#e7cd91;
  font:600 11px/1.5 'Inter',sans-serif; letter-spacing:.18em;
}
body.shop-manto .shop-hero h1 {
  max-width:720px; margin:0; color:#fff7e7;
  font:400 clamp(44px,5.6vw,78px)/1.05 'EB Garamond',Georgia,serif;
  letter-spacing:-.025em; text-wrap:balance;
}
body.shop-manto .shop-hero h1 br { display:block; }
body.shop-manto .shop-hero h1 em { color:#e8ce96; font-weight:400; }
body.shop-manto .shop-hero h1 em::before { content:none; }
body.shop-manto .shop-hero-copy > p:not(.shop-kicker) {
  max-width:510px; width:55%; margin:24px 0 0; color:#eee8da;
  font:400 18px/1.65 'Spectral',Georgia,serif;
}
body.shop-manto .shop-hero-actions {
  display:flex; flex-direction:row; flex-wrap:wrap; align-items:center;
  justify-content:flex-start; gap:14px; min-width:0; max-width:none;
  margin:30px 0 0; grid-column:auto; grid-row:auto;
}
body.shop-manto .shop-hero .shop-button {
  display:inline-flex; align-items:center; justify-content:center; gap:24px;
  min-height:50px; margin:0; padding:14px 24px; border-radius:4px;
  background:#e1c58b; border:1px solid #efd9ab; color:#163c36;
  font:600 11px/1.5 'Inter',sans-serif; letter-spacing:.08em;
}
body.shop-manto .shop-hero .shop-button:hover { background:#f1dcad; }
body.shop-manto .shop-hero-secondary {
  display:inline-flex; align-items:center; justify-content:center;
  min-height:50px; padding:13px 20px; border:1px solid #e7cd9170;
  border-radius:4px; background:#073d4233; color:#f4e8cc;
  font:500 11px/1.5 'Inter',sans-serif; text-decoration:none;
}
body.shop-manto .shop-hero-secondary:hover { background:#e7cd9115; border-color:#e7cd91; }
body.shop-manto .shop-hero a:focus-visible { outline:2px solid #fff4d7; outline-offset:5px; }
@media(max-width:760px) {
  body.shop-manto .shop-hero { min-height:560px; }
  body.shop-manto .shop-mantle-art { object-position:62% center; }
  body.shop-manto .shop-hero::before {
    background:linear-gradient(90deg,#03272be8,#032d3294 70%,#032d3266);
  }
  body.shop-manto .shop-hero-copy { padding:58px 26px; }
  body.shop-manto .shop-hero-copy .shop-kicker { font-size:10px; letter-spacing:.13em; margin-bottom:20px; }
  body.shop-manto .shop-hero h1 { max-width:540px; font-size:clamp(43px,8vw,62px); }
  body.shop-manto .shop-hero-copy > p:not(.shop-kicker) { width:100%; max-width:430px; font-size:17px; margin-top:22px; }
  body.shop-manto .shop-hero-actions { margin:26px 0 0; gap:10px; }
}
@media(max-width:420px) {
  body.shop-manto .shop-hero { min-height:570px; }
  body.shop-manto .shop-hero-copy { padding:46px 22px; }
  body.shop-manto .shop-hero-actions { align-items:stretch; flex-direction:column; max-width:290px; }
  body.shop-manto .shop-hero h1 { font-size:44px; }
}
