/* Cabeçalho compartilhado das páginas públicas da loja. */
body.shop-shared-shell { --header-height:88px; --shop-header:88px; padding-top:88px; }
body.shop-shared-shell .shop-shared-header,
body.shop-shared-shell .shop-shared-header * { box-sizing:border-box; }
body.shop-shared-shell .shop-shared-header {
  position:fixed; inset:0 0 auto; z-index:1000; display:grid;
  grid-template-columns:44px minmax(230px,1fr) minmax(220px,380px) auto;
  grid-template-rows:64px; align-items:center; gap:0 24px;
  width:100%; max-width:none; height:88px; min-height:0; margin:0;
  padding:12px max(24px,calc((100% - 1280px)/2)) 12px;
  border:0; border-bottom:1px solid #a68c55; border-radius:0;
  background:linear-gradient(#062c32e8,#062c32f0),url('/assets/img/loja/manto-mariano-cabecalho.webp') center/cover;
  color:#f3ead8; box-shadow:0 4px 24px #0002; backdrop-filter:none;
  font:400 14px/1.4 'Inter',Arial,sans-serif;
}
body.shop-shared-shell .shop-shared-header::before,
body.shop-shared-shell .shop-shared-header::after { display:none; }
body.shop-shared-shell .shop-shared-header .menu-btn {
  grid-column:1; grid-row:1; position:static; display:flex; align-items:center;
  justify-content:center; width:44px; min-width:44px; height:44px; min-height:44px;
  margin:0; padding:0; border:1px solid #a68c5580; border-radius:3px;
  background:transparent; color:#f3ead8; box-shadow:none; cursor:pointer;
}
body.shop-shared-shell .shop-shared-header .menu-btn::before,
body.shop-shared-shell .shop-shared-header .menu-btn::after { display:none; }
body.shop-shared-shell .shop-shared-header .menu-btn svg { display:block; width:22px; height:16px; }
body.shop-shared-shell .shop-shared-header .logo {
  /* Anula o centramento absoluto da folha global: aqui a marca pertence à coluna 2. */
  grid-column:2; grid-row:1;
  position:static; left:auto; right:auto; top:auto; bottom:auto;
  transform:none; z-index:auto;
  min-width:0; width:auto; height:auto; margin:0; padding:0;
}
body.shop-shared-shell .shop-shared-header .logo a {
  display:flex; align-items:center; gap:12px; width:auto; margin:0; padding:0;
  border:0; background:transparent; color:#f3ead8; text-decoration:none;
}
body.shop-shared-shell .shop-shared-header .logo img {
  display:block; width:42px; height:42px; max-width:none; margin:0; padding:0;
  object-fit:contain; border:0; border-radius:50%; filter:none; box-shadow:none;
}
body.shop-shared-shell .shop-shared-header .shop-brand {
  display:block; margin:0; color:#f3ead8; text-shadow:none; white-space:nowrap;
  font:400 24px/1.2 'Spectral',Georgia,serif; letter-spacing:-.02em;
}
body.shop-shared-shell .shop-shared-header .shop-brand small {
  display:block; margin:4px 0 0; padding:0; color:#c7c9bb;
  font:500 8px/1.5 'Inter',Arial,sans-serif; letter-spacing:.16em; text-transform:uppercase;
}
body.shop-shared-shell .shop-shared-header .shop-search {
  grid-column:3; grid-row:1; position:static; display:flex; align-items:stretch;
  width:100%; max-width:none; min-width:0; height:44px; margin:0; padding:0;
  border:1px solid #a68c55; border-radius:4px; overflow:hidden; box-shadow:none;
  background:#f3eee3; color:#183333; color-scheme:light;
}
body.shop-shared-shell .shop-shared-header .shop-search[hidden] { display:none; }
body.shop-shared-shell .shop-shared-header .shop-search input {
  display:block; flex:1; width:0; min-width:0; height:42px; min-height:0;
  margin:0; padding:0 14px; border:0; border-radius:0; outline:0; box-shadow:none;
  background:transparent; color:#183333; font:400 14px/1.4 'Inter',Arial,sans-serif;
}
body.shop-shared-shell .shop-shared-header .shop-search input::placeholder { color:#746d60; opacity:1; }
body.shop-shared-shell .shop-shared-header .shop-search:focus-within { outline:2px solid #dfc58c; outline-offset:3px; }
body.shop-shared-shell .shop-shared-header .shop-search button {
  display:flex; align-items:center; justify-content:center; flex:0 0 46px;
  width:46px; min-width:46px; height:42px; min-height:0; margin:0; padding:0;
  border:0; border-left:1px solid #a68c55; border-radius:0;
  background:#d2b575; color:#183333; box-shadow:none; cursor:pointer;
}
body.shop-shared-shell .shop-shared-header .shop-search button svg { width:21px; height:21px; }
body.shop-shared-shell .shop-shared-header .shop-cart-link {
  grid-column:4; grid-row:1; position:static; display:flex; align-items:center;
  justify-content:center; gap:9px; width:auto; min-width:44px; height:44px; min-height:44px;
  margin:0; padding:0 15px; border:1px solid #c2a77380; border-radius:4px;
  background:#0a3037; color:#eee8dc; box-shadow:none; text-decoration:none;
  font:400 14px/1.4 'Inter',Arial,sans-serif; letter-spacing:0;
}
body.shop-shared-shell .shop-shared-header .shop-cart-link > span { font:inherit; letter-spacing:0; color:inherit; }
body.shop-shared-shell .shop-shared-header .shop-cart-link svg { display:block; width:24px; height:24px; }
body.shop-shared-shell .shop-shared-header .shop-cart-link .shop-cart-count {
  display:inline-flex; align-items:center; justify-content:center; min-width:20px; height:20px;
  padding:0 5px; border-radius:50%; background:#e6c586; color:#183333;
  font:600 11px/1 'Inter',Arial,sans-serif;
}
body.shop-shared-shell .shop-shared-header .shop-cart-count[hidden] { display:none; }
body.shop-shared-shell .shop-shared-header .shop-header-links,
body.shop-shared-shell .shop-shared-header .header-actions { display:none!important; }
body.shop-shared-shell .shop-shared-header a:focus-visible,
body.shop-shared-shell .shop-shared-header button:focus-visible { outline:2px solid #dfc58c; outline-offset:4px; }
.shop-header-sr { position:absolute!important; width:1px!important; height:1px!important; padding:0!important; margin:-1px!important; overflow:hidden!important; clip:rect(0,0,0,0)!important; white-space:nowrap!important; border:0!important; }
.shop-shell-dialog { position:fixed; inset:0 auto 0 0; width:min(360px,90vw); max-width:90vw; height:100dvh; max-height:100dvh; margin:0; padding:28px; border:0; border-right:1px solid #a68c5580; background:#0a3037; color:#f3ead8; font:400 15px/1.5 'Inter',Arial,sans-serif; box-shadow:10px 0 50px #0005; }
.shop-shell-dialog::backdrop { background:#0008; }
.shop-shell-dialog .shop-shell-close { display:block; width:auto; min-height:42px; margin:0 0 30px auto; padding:8px 12px; border:1px solid #a68c5580; border-radius:4px; background:transparent; color:#f3ead8; font:500 13px/1.4 'Inter',Arial,sans-serif; cursor:pointer; }
.shop-shell-dialog nav { display:block; position:static; margin:0; padding:0; }
.shop-shell-dialog nav a { display:block; padding:15px 0; border-bottom:1px solid #e7cd9126; color:#f3ead8; text-decoration:none; font:400 16px/1.4 'Inter',Arial,sans-serif; }
.shop-shell-dialog a:focus-visible,.shop-shell-dialog button:focus-visible { outline:2px solid #dfc58c; outline-offset:4px; }
@media(max-width:1000px) {
  body.shop-shared-shell .shop-shared-header { grid-template-columns:44px minmax(190px,1fr) minmax(180px,280px) auto; gap:0 14px; padding-inline:20px; }
  body.shop-shared-shell .shop-shared-header .shop-brand { font-size:20px; }
  body.shop-shared-shell .shop-shared-header .shop-brand small { font-size:7px; }
  body.shop-shared-shell .shop-shared-header .shop-cart-link { padding-inline:10px; }
}
@media(max-width:760px) {
  body.shop-shared-shell { --header-height:118px; --shop-header:118px; padding-top:118px; }
  body.shop-shared-shell .shop-shared-header { height:118px; grid-template-columns:44px minmax(0,1fr) auto; grid-template-rows:50px 48px; gap:0 12px; padding:10px 16px; }
  body.shop-shared-shell .shop-shared-header .logo a { gap:9px; }
  body.shop-shared-shell .shop-shared-header .logo img { width:32px; height:32px; }
  body.shop-shared-shell .shop-shared-header .shop-brand { font-size:18px; white-space:normal; }
  body.shop-shared-shell .shop-shared-header .shop-brand small { font-size:7px; letter-spacing:.08em; }
  body.shop-shared-shell .shop-shared-header .shop-search { grid-column:1/-1; grid-row:2; align-self:center; }
  body.shop-shared-shell .shop-shared-header .shop-cart-link { grid-column:3; grid-row:1; padding:0 8px; }
  body.shop-shared-shell .shop-shared-header .shop-cart-link > span:not(.shop-cart-count) { display:none; }
}
@media(max-width:370px) {
  body.shop-shared-shell .shop-shared-header .shop-brand { font-size:16px; }
  body.shop-shared-shell .shop-shared-header .logo img { display:none; }
}
 
/* Atalhos de navegação direta na loja, também nas páginas de produto e checkout. */
@media(min-width:768px) {
 body.shop-shared-shell .shop-shared-header {
  grid-template-columns:44px minmax(160px,1fr) max-content minmax(160px,340px) auto;
  column-gap:clamp(8px,1.4vw,19px);
 }
 body.shop-shared-shell .shop-shared-header .shop-header-shortcuts {
  grid-column:3;grid-row:1;display:flex;align-items:center;gap:6px;min-width:0;margin:0;padding:0;
 }
 body.shop-shared-shell .shop-shared-header .shop-header-shortcuts a {
  display:inline-flex;align-items:center;justify-content:center;
  min-width:54px;min-height:39px;padding:8px 12px;
  border:1px solid #c6a87188;border-radius:5px;background:#0b3339aa;color:#eee6d4;
  text-decoration:none;white-space:nowrap;font:600 12px/1.3 'Inter',Arial,sans-serif;
  transition:background .16s ease,border-color .16s ease;
 }
 body.shop-shared-shell .shop-shared-header .shop-header-shortcuts a:hover,
 body.shop-shared-shell .shop-shared-header .shop-header-shortcuts a[aria-current="page"] {
  background:#d9bf88;color:#143238;border-color:#d9bf88;
 }
 body.shop-shared-shell .shop-shared-header .shop-search {grid-column:4;}
 body.shop-shared-shell .shop-shared-header .shop-cart-link {grid-column:5;}
}
@media(min-width:768px) and (max-width:1050px) {
 body.shop-shared-shell .shop-shared-header {
  grid-template-columns:44px minmax(153px,1fr) max-content minmax(135px,240px) auto;
  column-gap:9px;padding-inline:16px;
 }
 body.shop-shared-shell .shop-shared-header .logo img {width:34px;height:34px;}
 body.shop-shared-shell .shop-shared-header .logo a {gap:7px;}
 body.shop-shared-shell .shop-shared-header .shop-brand {font-size:17px;}
 body.shop-shared-shell .shop-shared-header .shop-brand small {font-size:6px;letter-spacing:.06em;}
 body.shop-shared-shell .shop-shared-header .shop-header-shortcuts a {min-width:48px;padding:7px 9px;font-size:11px;}
 body.shop-shared-shell .shop-shared-header .shop-cart-link {padding:0 9px;gap:6px;}
}
@media(min-width:768px) and (max-width:860px) {
 body.shop-shared-shell .shop-shared-header .shop-cart-link > span:not(.shop-cart-count) {display:none;}
 body.shop-shared-shell .shop-shared-header .shop-cart-link {width:46px;}
}
@media(max-width:767px) {
 body.shop-shared-shell .shop-shared-header .shop-header-shortcuts {display:none!important;}
}
@media(prefers-reduced-motion:reduce) {
 body.shop-shared-shell .shop-shared-header .shop-header-shortcuts a {transition:none;}
}


/* 2026-11-06 — Cabeçalho desktop da loja com a mesma altura (48px) da HOME.
   Preserva a arte da loja, a busca, os atalhos e o carrinho. Mobile intocado. */
@media (min-width: 768px) {
  body.shop-shared-shell {
    --header-height: 48px;
    --shop-header: 48px;
    padding-top: 48px;
  }
  body.shop-shared-shell .shop-shared-header {
    height: 48px;
    min-height: 0;
    grid-template-rows: 44px;
    padding-top: 1px;
    padding-bottom: 2px;
    align-items: center;
  }
  body.shop-shared-shell .shop-shared-header .logo a { gap: 8px; }
  body.shop-shared-shell .shop-shared-header .logo img { width: 36px; height: 36px; }
  body.shop-shared-shell .shop-shared-header .shop-brand { font-size: 18px; line-height: 1.04; }
  body.shop-shared-shell .shop-shared-header .shop-brand small { font-size: 7px; line-height: 1.13; margin-top: 1px; }
  body.shop-shared-shell .shop-shared-header .shop-search { height: 40px; }
  body.shop-shared-shell .shop-shared-header .shop-search input { height: 38px; font-size: 13px; padding-inline: 10px; }
  body.shop-shared-shell .shop-shared-header .shop-search button { height: 38px; min-height: 0; }
  body.shop-shared-shell .shop-shared-header .shop-search button svg { width: 19px; height: 19px; }
  body.shop-shared-shell .shop-shared-header .shop-cart-link {
    height: 42px; min-height: 42px; font-size: 12px; gap: 6px; padding-inline: 10px;
  }
  body.shop-shared-shell .shop-shared-header .shop-cart-link svg { width: 21px; height: 21px; }
  body.shop-shared-shell .shop-shared-header .shop-header-shortcuts a {
    min-height: 36px; padding: 7px 10px; font-size: 11px;
  }
}
@media (min-width: 768px) and (max-width: 1050px) {
  body.shop-shared-shell .shop-shared-header .shop-brand { font-size: 16px; }
  body.shop-shared-shell .shop-shared-header .shop-cart-link { padding-inline: 8px; }
  body.shop-shared-shell .shop-shared-header .shop-header-shortcuts a { min-height: 34px; padding-inline: 8px; }
}

/* 12/11/2026 — Header editorial da loja: hierarquia clara, navegação agrupada
   e busca equilibrada. Desktop apenas; a barra de app no celular é independente. */
@media (min-width:768px) {
  body.shop-shared-shell .shop-shared-header {
    grid-template-columns:40px clamp(186px,19vw,255px) max-content minmax(170px,1fr) auto;
    grid-template-rows:40px;
    gap:0 clamp(9px,1.05vw,18px);
    height:48px;
    padding:4px clamp(18px,2.7vw,48px);
    align-items:center;
    border-bottom:1px solid rgba(214,181,116,.58);
    background:
      linear-gradient(90deg,rgba(3,29,38,.97),rgba(8,50,57,.97) 54%,rgba(3,29,38,.97)),
      url('/assets/img/loja/manto-mariano-cabecalho.webp') center/cover no-repeat;
    box-shadow:0 4px 15px rgba(0,13,19,.18);
  }
  body.shop-shared-shell .shop-shared-header::after {
    display:block;
    content:"";
    position:absolute;
    pointer-events:none;
    left:2.7%;right:2.7%;bottom:0;
    height:1px;
    background:linear-gradient(90deg,transparent,rgba(225,192,131,.28),transparent);
  }
  body.shop-shared-shell .shop-shared-header .menu-btn {
    width:38px;min-width:38px;height:38px;min-height:38px;
    border:1px solid rgba(219,187,126,.42);
    border-radius:7px;
    background:rgba(5,38,46,.70);
    color:#f3e8d1;
    transition:background-color .18s ease,border-color .18s ease,color .18s ease;
  }
  body.shop-shared-shell .shop-shared-header .menu-btn svg {width:20px;height:16px;}
  body.shop-shared-shell .shop-shared-header .menu-btn:is(:hover,:focus-visible) {
    background:#164751;border-color:#e2c58d;color:#fff7e7;
  }
  body.shop-shared-shell .shop-shared-header .logo {
    grid-column:2;grid-row:1;
    min-width:0;max-width:100%;
    justify-self:start;
  }
  body.shop-shared-shell .shop-shared-header .logo a {
    gap:9px;
    min-width:0;max-width:100%;
  }
  body.shop-shared-shell .shop-shared-header .logo img {
    flex:0 0 34px;width:34px;height:34px;
    border:1px solid rgba(228,196,136,.40);
    box-shadow:0 0 0 2px rgba(7,39,46,.55);
  }
  body.shop-shared-shell .shop-shared-header .shop-brand {
    font-size:clamp(16px,1.45vw,19px);
    line-height:1.04;
    font-weight:400;
    letter-spacing:-.028em;
    color:#f6eddd;
  }
  body.shop-shared-shell .shop-shared-header .shop-brand small {
    margin-top:2px;
    color:#cbb993;
    font-size:6.7px;
    font-weight:600;
    letter-spacing:.09em;
    line-height:1.15;
  }
  body.shop-shared-shell .shop-shared-header .shop-header-shortcuts {
    grid-column:3;grid-row:1;
    display:inline-flex;align-items:center;justify-content:center;
    gap:2px;width:max-content;min-width:0;
    height:38px;padding:3px;margin:0;
    border:1px solid rgba(214,182,123,.30);
    border-radius:8px;
    background:rgba(2,27,34,.49);
    box-shadow:inset 0 1px 3px rgba(0,0,0,.18);
  }
  body.shop-shared-shell .shop-shared-header .shop-header-shortcuts a {
    display:inline-flex;align-items:center;justify-content:center;
    height:30px;min-height:30px;
    min-width:60px;
    padding:0 13px;
    border:0;border-radius:5px;
    background:transparent;
    color:#e3d7bf;
    font:600 11.5px/1.2 'Inter',Arial,sans-serif;
    letter-spacing:.01em;
    box-shadow:none;
    transition:background-color .18s ease,color .18s ease,box-shadow .18s ease;
  }
  body.shop-shared-shell .shop-shared-header .shop-header-shortcuts a:hover {
    background:rgba(224,191,130,.15);
    color:#fff5e2;
  }
  body.shop-shared-shell .shop-shared-header .shop-header-shortcuts a[aria-current="page"],
  body.shop-shared-shell .shop-shared-header .shop-header-shortcuts a[aria-current="page"]:hover {
    background:linear-gradient(150deg,#edd5a1,#d4ae70);
    color:#17333a;
    box-shadow:0 1px 5px rgba(0,0,0,.22);
  }
  body.shop-shared-shell .shop-shared-header .shop-search {
    grid-column:4;grid-row:1;
    width:100%;max-width:420px;
    justify-self:end;
    height:38px;
    border:1px solid rgba(226,202,158,.68);
    border-radius:7px;
    background:#f5f0e6;
    box-shadow:0 1px 3px rgba(0,0,0,.15);
  }
  body.shop-shared-shell .shop-shared-header .shop-search input {
    height:36px;min-height:36px;
    padding:0 13px;
    background:transparent;
    font-size:13px;
    color:#1b3439;
  }
  body.shop-shared-shell .shop-shared-header .shop-search input::placeholder {color:#777064;}
  body.shop-shared-shell .shop-shared-header .shop-search button {
    height:36px;min-height:36px;
    width:42px;min-width:42px;flex:0 0 42px;
    border-left:1px solid rgba(154,119,64,.33);
    background:linear-gradient(140deg,#e8ce96,#d5b274);
    color:#16333b;
    transition:background-color .18s ease,filter .18s ease;
  }
  body.shop-shared-shell .shop-shared-header .shop-search button:is(:hover,:focus-visible) {filter:brightness(1.075);}
  body.shop-shared-shell .shop-shared-header .shop-search button svg {width:19px;height:19px;stroke-width:1.7;}
  body.shop-shared-shell .shop-shared-header .shop-cart-link {
    grid-column:5;grid-row:1;
    justify-self:end;
    height:38px;min-height:38px;
    width:auto;min-width:42px;
    gap:8px;padding:0 13px;
    border:1px solid rgba(219,187,126,.53);
    border-radius:7px;
    background:rgba(5,41,49,.81);
    color:#f7e8cb;
    font-size:12px;font-weight:600;
    white-space:nowrap;
    transition:background-color .18s ease,border-color .18s ease,transform .18s ease;
  }
  body.shop-shared-shell .shop-shared-header .shop-cart-link svg {width:20px;height:20px;color:#e5c58d;}
  body.shop-shared-shell .shop-shared-header .shop-cart-link:hover {
    background:#17444d;border-color:#e6c68b;
  }
  body.shop-shared-shell .shop-shared-header .shop-cart-count {flex-shrink:0;}
}
@media (min-width:768px) and (max-width:1050px) {
  body.shop-shared-shell .shop-shared-header {
    grid-template-columns:38px clamp(174px,19vw,200px) max-content minmax(150px,1fr) auto;
    column-gap:10px;
    padding-inline:16px;
  }
  body.shop-shared-shell .shop-shared-header .logo a {gap:7px;}
  body.shop-shared-shell .shop-shared-header .logo img {width:30px;height:30px;flex-basis:30px;}
  body.shop-shared-shell .shop-shared-header .shop-brand {font-size:16px;}
  body.shop-shared-shell .shop-shared-header .shop-brand small {font-size:6px;letter-spacing:.03em;}
  body.shop-shared-shell .shop-shared-header .shop-header-shortcuts a {min-width:52px;padding:0 9px;font-size:11px;}
  body.shop-shared-shell .shop-shared-header .shop-search {max-width:350px;}
  body.shop-shared-shell .shop-shared-header .shop-cart-link {padding-inline:10px;}
}
@media (min-width:768px) and (max-width:900px) {
  body.shop-shared-shell .shop-shared-header .shop-cart-link {
    width:40px;min-width:40px;padding:0;
  }
  body.shop-shared-shell .shop-shared-header .shop-cart-link > span:not(.shop-cart-count) {display:none;}
  body.shop-shared-shell .shop-shared-header .shop-cart-count {
    position:absolute;top:-5px;right:-7px;
    border:1px solid #16343c;
  }
}
@media (min-width:768px) and (max-width:820px) {
  body.shop-shared-shell .shop-shared-header {
    grid-template-columns:38px 160px max-content minmax(135px,1fr) 40px;
    column-gap:8px;
    padding-inline:12px;
  }
  body.shop-shared-shell .shop-shared-header .shop-brand {font-size:14px;}
  body.shop-shared-shell .shop-shared-header .shop-brand small {font-size:5.6px;}
  body.shop-shared-shell .shop-shared-header .logo img {width:26px;height:26px;flex-basis:26px;}
}
@media (prefers-reduced-motion:reduce) {
  body.shop-shared-shell .shop-shared-header :is(.menu-btn,.shop-cart-link,.shop-search button),
  body.shop-shared-shell .shop-shared-header .shop-header-shortcuts a {transition:none!important;}
}
