*{box-sizing:border-box}:root{--blue:#173f64;--blue2:#28688f;--wine:#a3263a;--cream:#fbfaf7;--line:#dbe3e8;--text:#465560}body{margin:0;background:var(--cream);color:#18212a;font-family:Inter,Arial,sans-serif}.wrap{width:min(1120px,calc(100% - 40px));margin:auto}header{position:sticky;top:0;z-index:30;background:rgba(251,250,247,.97)}.top{height:74px;display:flex;align-items:center;gap:18px}.brand{display:flex;align-items:center;gap:9px;text-decoration:none;color:var(--wine)}.brand>b{width:36px;height:36px;border:1px solid #79aac7;border-radius:50%;display:grid;place-items:center;font-family:Fraunces}.brand strong{font:700 1.45rem Fraunces}.brand small{display:block;font-size:.58rem;letter-spacing:.12em;text-transform:uppercase;color:#6c7983}.back{color:var(--blue);text-decoration:none;font-weight:600}.cart{margin-left:auto;border:0;border-radius:99px;background:var(--blue);color:white;padding:12px 16px;font-weight:700}.cart b{background:white;color:var(--blue);border-radius:20px;padding:2px 7px}.tile{height:9px;background:repeating-linear-gradient(45deg,#fff 0 5px,#34759e 5px 7px,#fff 7px 12px)}.hero{background:var(--blue);color:white;padding:55px 0}.eyebrow,.heading small,.drawerhead small{font-size:.7rem;letter-spacing:.16em;font-weight:800;color:#bcd5e4}.hero h1{font:600 clamp(2.7rem,5vw,4.5rem)/.98 Fraunces;margin:10px 0 16px}.hero p{color:#e7eef3;font-size:1.05rem}.shop{padding:36px 0 70px}.tools{display:grid;grid-template-columns:1fr 190px;gap:12px}.search{height:52px;border:1px solid var(--line);border-radius:14px;background:white;display:flex;align-items:center;padding:0 15px;font-size:1.3rem;color:var(--blue2)}.search input{border:0;outline:0;width:100%;padding-left:10px;font-size:1rem}.tools select{border:1px solid var(--line);border-radius:14px;background:white;padding:0 13px}.chips{display:flex;gap:8px;overflow:auto;padding:17px 0 3px}.chip{border:1px solid var(--line);background:white;color:var(--blue);border-radius:30px;padding:9px 15px;font-weight:700;white-space:nowrap}.chip.active{background:var(--blue);color:white}.trust{display:flex;gap:26px;flex-wrap:wrap;margin:20px 0 38px;background:#eef4f6;padding:14px 17px;border-radius:12px;color:#3d5d71;font-size:.85rem;font-weight:600}.heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:20px}.heading small{color:var(--blue2)}h2{font:600 2rem Fraunces;color:var(--blue);margin:4px 0}.heading>span{color:#75818a}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.card{background:white;border:1px solid #e1e7ea;border-radius:18px;overflow:hidden;display:flex;flex-direction:column}.pic{aspect-ratio:1/1;position:relative;overflow:hidden;background:#fff}.pic img{width:100%;height:100%;object-fit:contain}.badge{position:absolute;top:13px;left:13px;background:var(--wine);color:white;border-radius:20px;padding:7px 10px;font-size:.67rem;font-weight:800}.body{padding:19px;display:flex;flex-direction:column;flex:1}.meta{font-size:.67rem;letter-spacing:.13em;font-weight:800;color:var(--blue2);text-transform:uppercase}.title{font:600 1.4rem/1.12 Fraunces;color:var(--blue);margin:7px 0}.details{font-size:.8rem;color:#78848c}.desc{font-size:.9rem;line-height:1.5;color:var(--text);flex:1}.bottom{border-top:1px solid #edf0f2;padding-top:15px;display:flex;align-items:center;justify-content:space-between;gap:10px}.price{font-size:1.3rem;font-weight:800}.add{border:0;border-radius:10px;background:var(--wine);color:white;padding:11px 13px;font-weight:800}.drawer,.modal{position:fixed;inset:0;z-index:100;visibility:hidden;pointer-events:none}.drawer.open,.modal.open{visibility:visible;pointer-events:auto}.shade{position:absolute;inset:0;background:#071a29aa}.drawer aside{position:absolute;right:0;top:0;height:100%;width:min(440px,94vw);background:white;display:flex;flex-direction:column}.drawerhead{display:flex;justify-content:space-between;align-items:start;padding:22px;border-bottom:1px solid var(--line)}.drawerhead small{color:var(--blue2)}.drawerhead button{border:1px solid var(--line);background:white;border-radius:50%;width:38px;height:38px;font-size:1.4rem}.items{padding:8px 22px;overflow:auto;flex:1}.cartempty{text-align:center;padding:50px 10px;color:#71808a}.cartitem{display:grid;grid-template-columns:60px 1fr auto;gap:11px;padding:15px 0;border-bottom:1px solid #eee}.cartitem img{width:60px;height:60px;object-fit:cover;border-radius:9px}.cartitem strong{color:var(--blue);font-size:.88rem}.qty{display:flex;gap:7px;align-items:center;margin-top:7px}.qty button{border:1px solid var(--line);background:white;border-radius:6px;width:26px;height:26px}.remove{border:0;background:none;color:var(--wine);padding:5px 0;font-size:.73rem}.drawerfoot{padding:20px 22px;border-top:1px solid var(--line)}.total{display:flex;justify-content:space-between;margin-bottom:14px}.total b{font-size:1.35rem}.primary,.whatsapp{width:100%;border:0;border-radius:11px;padding:14px;background:var(--wine);color:white;font-weight:800}.drawerfoot>small{display:block;text-align:center;color:#78848c;margin-top:9px}.modalbox{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:min(620px,calc(100% - 28px));background:white;border-radius:18px;max-height:90vh;overflow:auto}.modalbox>p{padding:0 22px;color:#65747e}.modalbox form{padding:8px 22px 22px;display:grid;grid-template-columns:1fr 1fr;gap:14px}.modalbox label{font-size:.78rem;font-weight:700;color:#42535e}.modalbox input,.modalbox select,.modalbox textarea{display:block;width:100%;margin-top:6px;padding:11px;border:1px solid var(--line);border-radius:9px}.wide,.whatsapp{grid-column:1/-1}.whatsapp{background:#176044}.toast{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);background:#172d3d;color:white;border-radius:30px;padding:10px 16px;opacity:0;z-index:200}.toast.show{opacity:1}footer{background:#102f4b;color:#c8d7e0;padding:26px 0}footer .wrap{display:flex;justify-content:space-between}footer b{font:600 1.3rem Fraunces;color:white}@media(max-width:900px){.grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:640px){.wrap{width:calc(100% - 28px)}.brand small,.back{display:none}.hero{padding:40px 0}.hero h1{font-size:2.65rem}.tools{grid-template-columns:1fr}.tools select{height:45px}.trust{display:grid;gap:8px;margin-bottom:28px}.grid{grid-template-columns:1fr}.pic{aspect-ratio:1/1}.modalbox form{grid-template-columns:1fr}.wide,.whatsapp{grid-column:auto}}
.card.is-soldout .pic img{filter:grayscale(.55);opacity:.72}
.catalog-discount-label{display:block;margin-top:4px;color:var(--wine);font-size:.72rem;line-height:1.1;letter-spacing:.02em}
.soldout-btn{background:#9aa4aa!important;cursor:not-allowed!important}

.low-stock{font-size:.78rem;font-weight:800;color:#a34b1f;margin:10px 0 0;line-height:1.35;overflow-wrap:anywhere}

.category-label{margin-top:17px;font-size:.68rem;letter-spacing:.14em;font-weight:800;color:#28688f}
.chips{padding-top:9px}

.pairing{
  margin:-6px 0 14px;
  padding:10px 12px;
  border-left:3px solid #28688f;
  background:#f5f8fa;
  color:#53636e;
  font-size:.8rem;
  line-height:1.4;
}
.pairing strong{color:#173f64}

.delivery-fee-box{display:flex;justify-content:space-between;align-items:center;padding:12px 14px;border-radius:10px;background:#eef5f7;color:#173f64}
.delivery-fee-box[hidden]{display:none!important}

.coupon-line{display:grid;grid-template-columns:1fr auto;gap:8px}
.coupon-button{border:1px solid #173f64;background:#fff;color:#173f64;border-radius:9px;padding:0 16px;font-weight:800;cursor:pointer}
#couponMessage{display:block;margin-top:6px}
.checkout-summary{background:#f7fafb;border:1px solid #dce6eb;border-radius:12px;padding:13px 15px}
.checkout-summary>div{display:flex;justify-content:space-between;gap:18px;padding:5px 0}
.checkout-summary>div[hidden]{display:none!important}
#addressComplementField[hidden]{display:none!important}
.checkout-grand-total{border-top:1px solid #d8e2e8;margin-top:6px;padding-top:10px!important;font-size:1.05rem}

.url-product-highlight{
  outline:3px solid #a92840!important;
  outline-offset:3px;
  box-shadow:0 0 0 7px rgba(169,40,64,.10)!important;
}

/* Lockup compartilhado: o círculo carrega LUSO e o subtítulo permanece legível. */
.brand>b{font-size:0!important;color:transparent!important;line-height:1}
.brand span{display:flex;flex-direction:column;justify-content:center;min-width:0;line-height:1}
.brand strong{display:none}
.brand small{font-size:var(--luso-brand-subtitle-size,.62rem);font-weight:var(--luso-brand-subtitle-weight,800);letter-spacing:var(--luso-brand-subtitle-spacing,.1em);line-height:var(--luso-brand-subtitle-line,1);color:var(--luso-brand-blue,#173f64);white-space:nowrap;text-transform:uppercase}
@media(max-width:640px){
  .brand>b{width:32px;height:32px}
  .brand small{display:block!important;font-size:.52rem;letter-spacing:.07em}
}

/* A Loja usa o mesmo círculo/símbolo e a mesma hierarquia de Index/Home. */
.brand>b{font-size:1rem!important;color:var(--wine)!important;letter-spacing:0!important}
.brand>b::after{content:none!important}
.brand>b{background:url("../img/luso-logo.jpg") center/contain no-repeat!important;border:0!important;font-size:0!important;color:transparent!important;aspect-ratio:1/1}
.brand strong{display:block!important;font:700 1.45rem Fraunces;color:var(--wine);line-height:1}
.brand small{font-size:.62rem;letter-spacing:.1em;margin-top:4px}
@media(max-width:640px){.brand strong{font-size:1.12rem}.brand small{font-size:.52rem;letter-spacing:.07em}}
.institutional-footer .wrap{width:min(1120px,calc(100% - 40px));display:grid;grid-template-columns:1.3fr 1fr 1.2fr;gap:24px;align-items:start;line-height:1.5}.institutional-footer .wrap>*{min-width:0;overflow-wrap:anywhere}.institutional-footer .wrap span{display:block}.institutional-footer .wrap a{color:inherit;text-decoration:underline;text-underline-offset:3px}.institutional-footer .wrap>b{font:600 1.25rem Fraunces;color:#fff}.institutional-footer{padding:34px 0 28px}.institutional-footer .wrap{color:#d7e0e7}.institutional-footer .wrap span:last-child{display:grid;gap:6px}.cartitem strong{display:block;overflow-wrap:anywhere;line-height:1.25}.cartitem .qty button{width:32px;height:32px;min-width:32px}.cartitem .remove{min-height:32px;font-size:.82rem;text-decoration:underline;text-underline-offset:3px}
@media(max-width:640px){.chips{flex-wrap:wrap;overflow:visible;row-gap:8px}.chip{min-height:44px;display:inline-flex;align-items:center}.institutional-footer{padding:28px 0 24px}.institutional-footer .wrap{width:calc(100% - 28px);grid-template-columns:1fr;gap:14px}.institutional-footer .wrap span{font-size:.9rem}.luso-shop .cartitem{grid-template-columns:58px minmax(0,1fr)!important;gap:10px!important;align-items:start;max-width:100%}.cartitem> b{grid-column:2;grid-row:2;font-size:.95rem;justify-self:start;margin-top:3px}.cartitem>div{min-width:0}.cartitem .qty{margin-top:9px}.cartitem .remove{margin-top:6px}.drawerfoot{position:static!important}.modalbox{max-width:calc(100% - 24px)!important}.checkout-security-note{font-size:.84rem;line-height:1.45;text-align:left}.checkout-security-note a{display:inline}.#checkoutForm .whatsapp{position:static!important;box-shadow:none!important}}

/* Correções estruturais da homologação visual da Loja. */
.luso-shop #productsGrid .body{min-width:0}
.luso-shop #productsGrid .title{overflow-wrap:anywhere;word-break:normal}
.luso-shop #productsGrid .details{margin-top:0;line-height:1.45;overflow-wrap:anywhere}
.luso-shop #productsGrid .low-stock{margin:10px 0 0;padding:0;line-height:1.35;min-height:0;overflow-wrap:anywhere}
.luso-shop #productsGrid .bottom{margin-top:auto}

/* O rodapé antigo permanece no HTML histórico, mas não participa da apresentação. */
.luso-shop>footer.institutional-footer:not(.footer-v2){display:none}
.luso-shop .footer-v2{padding:28px 0 20px}
.luso-shop .footer-v2 .wrap{display:grid;grid-template-columns:1.2fr 1.2fr .9fr;gap:28px;align-items:start;width:min(1120px,calc(100% - 40px));color:#d7e0e7;line-height:1.5}
.luso-shop .footer-v2 section,.luso-shop .footer-v2 nav{display:flex;flex-direction:column;gap:4px;min-width:0}
.luso-shop .footer-v2 b{font:600 1.25rem Fraunces;color:#fff;margin-bottom:4px}
.luso-shop .footer-v2 span,.luso-shop .footer-v2 a{min-width:0;overflow-wrap:anywhere}
.luso-shop .footer-v2 a{color:inherit;text-decoration:underline;text-underline-offset:3px}
.luso-shop .footer-v2 .footer-legal{gap:8px}
.luso-shop .footer-v2 .footer-copyright{grid-column:1/-1;border-top:1px solid rgba(215,224,231,.3);padding-top:14px;margin-top:2px;font-size:.86rem;line-height:1.5;overflow-wrap:anywhere}
@media(max-width:640px){
  .luso-shop .footer-v2{padding:26px 0 22px}
  .luso-shop .footer-v2 .wrap{width:calc(100% - 28px);grid-template-columns:1fr;gap:16px}
  .luso-shop .footer-v2 span,.luso-shop .footer-v2 a{font-size:.9rem}
  .luso-shop .footer-v2 .footer-copyright{margin-top:2px;padding-top:14px}
}

/* Geometria de viewport: nenhum filho público deve ampliar o canvas móvel. */
.luso-shop .wrap,
.luso-shop main,
.luso-shop header,
.luso-shop footer{max-width:100%;min-width:0;box-sizing:border-box}
.luso-shop .top{min-width:0}
.luso-shop .brand{min-width:0;max-width:100%}
.luso-shop .brand span{min-width:0;max-width:100%}
.luso-shop .cart{min-width:0;max-width:48vw;flex:0 1 auto;overflow-wrap:anywhere}
.luso-shop .hero p{max-width:100%;overflow-wrap:anywhere}
.luso-shop .tools,
.luso-shop #productsGrid{min-width:0;max-width:100%}

/* Controles de catálogo isolados dos cards, carrinho e checkout. */
/* Lock only while an overlay is open; inner panels keep their own scrolling. */
@media screen{html:has(.drawer.open,.modal.open,#catalogFiltersDialog[open]){overflow-y:hidden;scrollbar-gutter:stable}}
.catalog-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.luso-shop .catalog-shop-tools{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,190px);gap:10px;align-items:stretch}
.catalog-shop-tools .search{min-width:0;height:auto;min-height:44px}
.catalog-shop-tools .search input{min-width:0;min-height:44px;font-size:16px}
.catalog-shop-tools .catalog-sort{min-width:0;display:flex}
.catalog-shop-tools #sortSelect{width:100%;min-width:0;min-height:44px;font-size:16px}
.catalog-filter-button{min-width:44px;min-height:44px;padding:10px 14px;border:1px solid #8297a5;border-radius:11px;background:#fff;color:#173f64;font:600 .9rem Inter,Arial,sans-serif;cursor:pointer}
.catalog-filters-dialog{box-sizing:border-box;width:min(480px,calc(100% - 24px));max-width:calc(100% - 24px);max-height:calc(100dvh - 24px);padding:20px;margin:auto;border:1px solid #8297a5;border-radius:16px;background:#fbfaf7;color:#18212a;overflow-y:auto;overscroll-behavior:contain}
.catalog-filters-dialog::backdrop{background:#071a29aa}
.catalog-filters-dialog form{min-width:0;margin:0}
.catalog-filters-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:20px}
.catalog-filters-head h2{font-size:1.65rem;overflow-wrap:anywhere}
.catalog-filters-dialog button{min-width:44px;min-height:44px;border:1px solid #8297a5;border-radius:9px;background:#fff;color:#173f64;font:600 .95rem Inter,Arial,sans-serif;padding:10px 12px;cursor:pointer}
.catalog-filters-head button{flex-shrink:0;font-size:1.4rem;line-height:1}
.catalog-filters-fields{display:grid;gap:16px;min-width:0}
.catalog-filters-fields label{display:flex;flex-direction:column;gap:6px;min-width:0;font-size:.9rem;font-weight:600}
.catalog-filters-fields :is(input,select){width:100%;min-width:0;max-width:100%;min-height:44px;padding:10px;border:1px solid #8297a5;border-radius:9px;color:#18212a;background:#fff;font:400 16px Inter,Arial,sans-serif}
.catalog-price-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.catalog-filters-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px;padding-bottom:env(safe-area-inset-bottom,0px)}
.catalog-filters-actions button{flex:1 1 150px}
.catalog-filters-actions .catalog-apply{background:#173f64;border-color:#173f64;color:#fff}
.catalog-filter-error{color:#a3263a;font-weight:600;margin:0}
.catalog-shop-tools :is(select,button):focus-visible,.catalog-filters-dialog :is(input,select,button):focus-visible,#clearEmptyFilters:focus-visible{outline:3px solid #28688f;outline-offset:3px}
.catalog-shop-tools .search:focus-within{border-color:var(--blue2);box-shadow:0 0 0 3px rgba(40,104,143,.22)}
.catalog-shop-tools .search input:focus-visible{outline:0}
.luso-shop #categoryChips .chip[aria-pressed="true"]{text-decoration:underline;text-underline-offset:4px}
.luso-shop #categoryChips .chip:focus-visible{outline:3px solid #28688f;outline-offset:2px}
.luso-shop #categoryChips .chip{min-height:44px}
.luso-shop #productCount{color:#465560;overflow-wrap:anywhere}
.luso-shop #emptyState{padding:20px;border:1px dashed #8297a5;border-radius:12px;color:#465560}
@media(max-width:640px){
  .luso-shop .catalog-shop-tools{grid-template-columns:minmax(0,1fr) auto}
  .catalog-shop-tools .catalog-sort{grid-column:1/-1}
}
@media(max-width:380px){.catalog-price-fields{grid-template-columns:minmax(0,1fr)}}

/* Fase 2A.1: navegação compacta, sem comprimir a busca nem os departamentos. */
.catalog-filters-dialog form{display:flex;flex-direction:column;max-height:calc(100dvh - 68px)}
.catalog-filters-head,.catalog-filters-actions{flex:none}
.catalog-filters-fields{overflow-y:auto;min-height:0;padding:4px;gap:8px}
.catalog-filters-fields details{border-bottom:1px solid #dbe3e8;min-width:0}
.catalog-filters-fields summary{padding:13px 2px;min-height:44px;font-weight:600;cursor:pointer;color:#173f64}
.catalog-filters-fields details>label,.catalog-filters-fields .catalog-price-fields{padding:4px 0 14px}
.catalog-filters-fields summary:focus-visible{outline:3px solid #28688f;outline-offset:-2px}
#catalogWineFilters{min-width:0}
#catalogWineFilters h3{margin:16px 0 2px;font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;color:#465560}
.catalog-filters-actions{margin-top:16px;flex-wrap:nowrap}
.catalog-filters-actions button{flex:1 1 0;min-width:0}
.catalog-filters-actions .catalog-apply{flex:1.4 1 0}
@media(max-width:900px){
  .luso-shop header .top{height:64px;gap:12px;width:calc(100% - 32px);padding-inline:0!important}
  .luso-shop header .back{display:none}
  .luso-shop header .brand{flex:1 1 auto;gap:8px}
  .luso-shop header .brand>b{width:36px;height:36px;flex:0 0 36px}
  .luso-shop header .brand strong{font-size:1.3rem!important}
  .luso-shop header .brand small{display:block;font-size:.55rem;letter-spacing:.06em;white-space:nowrap}
  .luso-shop header .cart{flex:0 0 auto;min-height:44px;padding:10px 12px;font-size:.85rem;white-space:nowrap}
  .luso-shop .hero{padding:22px 0}
  .luso-shop .hero h1{font-size:2.15rem;line-height:1.08;margin:7px 0 10px}
  .luso-shop .hero p{font-size:.94rem;line-height:1.45;margin:0;max-width:36rem}
  .luso-shop .shop{padding-top:14px}
  .luso-shop .catalog-shop-tools{grid-template-columns:auto minmax(0,1fr);gap:8px}
  .luso-shop .catalog-shop-tools .search{grid-column:1/-1;padding-inline:12px}
  .luso-shop .catalog-shop-tools .catalog-sort{grid-column:2;grid-row:2}
  .luso-shop .catalog-shop-tools #openCatalogFilters{grid-column:1;grid-row:2}
  .luso-shop .category-label{margin-top:14px;font-size:.65rem}
  .luso-shop #categoryChips{display:flex;flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;max-width:100%;gap:7px;padding:7px 2px;scrollbar-width:none;overscroll-behavior-x:contain}
  .luso-shop #categoryChips::-webkit-scrollbar,.luso-shop .trust::-webkit-scrollbar{display:none}
  .luso-shop #categoryChips .chip{flex:0 0 auto;white-space:nowrap;min-height:44px;padding:9px 13px;font-size:.83rem}
  .luso-shop .trust{display:flex;flex-wrap:nowrap;overflow-x:auto;gap:14px;margin:8px 0 12px;padding:0;background:transparent;scrollbar-width:none}
  .luso-shop .trust span{flex:0 0 auto;white-space:nowrap;font-size:.75rem;line-height:1.5;padding:4px 0;background:transparent;color:#465560}
  .luso-shop .heading{gap:12px;margin-bottom:10px;align-items:center}
  .luso-shop .heading h2{font-size:1.65rem;line-height:1.15}
  .luso-shop .heading>span{flex-shrink:0;font-size:.8rem}
}
@media(max-width:430px){
  .luso-shop .hero{padding:18px 0}
  .luso-shop .hero h1{font-size:1.95rem}
  .luso-shop .hero .eyebrow{font-size:.64rem}
  .luso-shop .hero p{font-size:.9rem}
  .luso-shop .heading h2{font-size:1.45rem}
  .catalog-filters-dialog{width:calc(100% - 16px);max-width:calc(100% - 16px);padding:16px}
}

/* Estimativa informativa de entrega — independente dos cálculos e da RPC V2. */
.delivery-eta-box{
  min-width:0;
  padding:13px 15px;
  border:1px solid #cadfe7;
  border-left:3px solid #28688f;
  border-radius:11px;
  background:#f2f7fa;
  color:#173f64;
  line-height:1.45;
  overflow-wrap:anywhere;
}
.delivery-eta-box[hidden]{display:none!important}
.delivery-eta-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap}
.delivery-eta-head span{font-size:.82rem;font-weight:800}
.delivery-eta-head strong{font-size:1.08rem;white-space:nowrap}
.delivery-eta-box p{margin:7px 0;font-size:.82rem}
.delivery-eta-box small{display:block;font-size:.73rem;color:#435e70;line-height:1.5}
.delivery-eta-box a{color:#173f64;text-underline-offset:2px}

/* Comunicação comercial sem interferir na confirmação ou no valor do pedido. */
.delivery-hours-notice{margin:0;padding:12px 14px;border-radius:10px;background:#edf5fa;color:#173f64;font-size:.83rem;line-height:1.5}
.delivery-hours-notice[hidden],.occasion-filter-banner[hidden]{display:none!important}
.occasion-filter-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;background:#eef5f9;border:1px solid #cbdde8;border-radius:12px;padding:12px 16px;margin:0 0 16px;color:#173f64}
.occasion-filter-banner button{min-height:44px;padding:8px 12px;border:1px solid #173f64;border-radius:8px;color:#173f64;background:#fff;font-weight:700;cursor:pointer}

/* Estado de carregamento da vitrine antes de receber o catálogo do Supabase. */
.luso-shop .catalog-loading-status{
  margin:18px 0 26px;
  padding:18px 20px;
  border-radius:14px;
  color:#375769;
  background:#eef4f7;
  font-size:.96rem;
}
.luso-shop .catalog-loading-status[hidden]{display:none!important}
