/* Boteco Caribe R4 customer-only palette correction; original R13 remains sealed.
 Official logo blue pixels sampled from LOGO-BOTECO-CARIBE.png: approx #486090.
 UI blue #486090, accessible white foreground ~6:1. */
:root{--caribe-brand-blue:#486090;--caribe-brand-blue-deep:#354D76;--caribe-brand-orange:#F7931E;--caribe-shell:#FFF8EC;--caribe-text:#123755;--navy:#354D76;--navy2:#486090;--orange:#F7931E;--ink:#123755}
/* keep exterior sand, replace ALL sand on header/footer/institutional and flavor area */
body{background:#FFF8EC!important}
.siteFrame{border-color:#E7C9A6!important}
.sharedSiteHeader,.top.gate01.sharedSiteHeader,.sharedHeader,.headerOuter{background:var(--caribe-brand-blue)!important;border-bottom:3px solid var(--caribe-brand-orange)!important}
.sharedSiteHeader nav a,.sharedSiteHeader .navLink,.sharedSiteHeader a:not(.brand),.sharedSiteHeader .topNav a,.sharedSiteHeader .menuToggle{color:#FFFFFF!important;text-shadow:none!important}
.sharedSiteHeader nav a:hover,.sharedSiteHeader nav a:focus-visible,.sharedSiteHeader nav a.active,.sharedSiteHeader a[aria-current=page]{color:#FFFFFF!important;border-bottom-color:#FFAD48!important;text-decoration-color:#FFAD48!important}
.sharedSiteHeader nav a:focus-visible{outline:2px solid white!important;outline-offset:4px!important}
/* transparent PNG over brand blue, no forced white rectangles */
.sharedSiteHeader .brand,.footerBrand,.sharedSiteFooter .brand{background:transparent!important;box-shadow:none!important;border:0!important;border-radius:0!important;padding:0!important}
.sharedSiteHeader .brand img,.footerBrand img,.sharedSiteFooter .brand img{object-fit:contain!important}
/* brand logo has blue letters: subtle translucent white spot behind logo only if needed for legibility */
.sharedSiteHeader .brand img,.footerBrand img{filter:drop-shadow(0 1px 1px rgba(255,255,255,.72))!important}
.block03Canonical,.flavors,.block05Canonical,.block05Canonical.wrap,.block06Canonical,.footerPrimary,.block06Canonical .footerPrimary,.sharedSiteFooter,.footerBrandBand{background:var(--caribe-brand-blue)!important;color:#FFFFFF!important}
.block03Canonical h2,.block03Canonical .flavorIntro,.block03Canonical .flavorIntro h2,.block05Canonical h2,.block06Canonical h2,.block05Canonical .institutionalInfo,.block05Canonical .institutionalInfo *,.block06Canonical a,.footerPrimary a,.block06Canonical .footerMotto,.footerPrimary .footerMotto{color:#FFFFFF!important}
.block03Canonical .flavorIntro .script,.block03Canonical .flavorIntro em{color:#FFFFFF!important}
.block06Canonical small,.block06Canonical .fineprint,.footerPrimary small,.sharedSiteFooter small{color:#FFFFFF!important}
.block05Canonical a,.block06Canonical a,.footerPrimary a{color:#FFFFFF!important}
.block05Canonical a:focus-visible,.block06Canonical a:focus-visible{outline:2px solid #FFFFFF!important;outline-offset:3px!important}
.menuHero,.menuHeroSection,.cardapioHero,.menuHeader{background:var(--caribe-brand-blue)!important}
.menuHero h1,.menuHero p,.menuHeroSection h1{color:#FFFFFF!important}
.menuCard,.productCard{border-color:#E6B77F!important}
/* Popup content has its own typography, not the brand-mark typeface file. */
#popup .popupTitle{display:block!important;font-size:10px!important;line-height:1.2!important;letter-spacing:.045em!important;font-weight:800!important;margin-bottom:11px!important;text-transform:uppercase!important;color:#FFFFFF!important;max-width:180px!important}
#popup .popupTitleBrand{display:block!important;font-size:21px!important;line-height:1.1!important;color:#F7931E!important;font-family:Impact,'Arial Black',Arial,sans-serif!important;font-style:italic!important;letter-spacing:0!important;margin-top:4px!important;text-transform:none!important}
#popup .popupScript{margin-top:10px!important}
#popup .popupContent{padding-top:12px!important}
/* Ensure header nav text remains visible, and mobile avoids overflow */
@media(max-width:768px){.sharedSiteHeader,.top.gate01.sharedSiteHeader{background:var(--caribe-brand-blue)!important}.sharedSiteHeader nav a{color:#FFFFFF!important}#popup.popup{display:none!important}}

/* CARIBE R5: user approved exterior sand; use distinct canonical blues by user request. */
:root{--caribe-template-blue:#05253D;--caribe-brand-blue:#486090;--caribe-orange:#F7931E}
.block03Canonical,.flavors,.block05Canonical,.block05Canonical.wrap{background:var(--caribe-orange)!important;color:#FFFFFF!important}
.block03Canonical .flavorIntro small,.block03Canonical .menuMomentAccent,.block03Canonical .flavorBrush{color:var(--caribe-template-blue)!important}
.block03Canonical .flavorBrush{background:var(--caribe-template-blue)!important}
.block03Canonical .flavorIntro h2{color:#FFFFFF!important}
.block03Canonical .flavorIntro h2 .menuMomentAccent{color:var(--caribe-template-blue)!important}
.block03Canonical .block03MenuBtn{background:var(--caribe-brand-blue)!important;color:#FFFFFF!important;border-color:var(--caribe-brand-blue)!important}
.block03Canonical .block03MenuBtn:hover{background:var(--caribe-template-blue)!important}
.block05Canonical .locationIntro small,.block05Canonical .locationTitleIcon,.block05Canonical .locationIntro h2,.block05Canonical .locationClientName{color:var(--caribe-template-blue)!important}
.block05Canonical .mapsBtn{background:var(--caribe-brand-blue)!important;color:#FFFFFF!important;border-color:var(--caribe-brand-blue)!important}
.block05Canonical .locationInfo .locationClientName{display:block;font-size:clamp(18px,2vw,26px);font-weight:900;letter-spacing:.035em;text-transform:uppercase;margin-bottom:12px}
.block05Canonical .institutionalInfo,.block05Canonical .institutionalInfo *, .block05Canonical .locationIntro p,.block05Canonical .locationInfo li,.block05Canonical .locationInfo li *{color:var(--caribe-template-blue)!important}
/* No white panel: new approved transparent web-only logo in both shared slots. */
.sharedSiteHeader .brand img,.footerBrand img,.sharedSiteFooter .brand img{filter:none!important;object-fit:contain!important}
/* Popup follows live header geometry from JS; prevent cascade fixed top conflict. */
#popup.popup{position:fixed!important;z-index:10000!important;max-height:calc(100vh - 135px)!important;overflow:auto!important}
#popup .popupTitleBrand{font-family:var(--font-hand,'Kalam','Segoe Print',cursive)!important;font-size:24px!important;font-weight:900!important;font-style:italic!important;letter-spacing:-.03em!important;color:var(--caribe-orange)!important}
#popup .popupScript{margin-top:18px!important}
.food99Brand{background:#ff9b19!important;color:#153350!important;font-size:13px!important;font-weight:900!important}
@media(max-width:768px){.block05Canonical,.block03Canonical,.flavors{background:var(--caribe-orange)!important}}


/* CARIBE QA R6 — corrective color decisions of 29 October 2026.
   Loaded after all base styles. No change to sealed generic R13. */
:root{--caribe-template-blue:#05253D;--caribe-brand-blue:#486090;--caribe-orange:#F7931E;--caribe-developer-charcoal:#303236}
/* Home: entire menu showcase is orange, not inherited navy. */
body[data-page="home"] .flavors.block03Canonical,
body[data-page="home"] .block03Canonical,
body[data-page="home"] .block03Canonical .flavorGrid{background-color:var(--caribe-orange)!important}
body[data-page="home"] .block03Canonical .flavorIntro>small,
body[data-page="home"] .block03Canonical .flavorIntro>h2 .menuMomentAccent{color:var(--caribe-template-blue)!important;-webkit-text-fill-color:var(--caribe-template-blue)!important;opacity:1!important}
body[data-page="home"] .block03Canonical .flavorIntro>h2{color:#FFFFFF!important;-webkit-text-fill-color:#FFFFFF!important;opacity:1!important}
body[data-page="home"] .block03Canonical .flavorIntro>h2 .menuMomentAccent{color:var(--caribe-template-blue)!important;-webkit-text-fill-color:var(--caribe-template-blue)!important}
body[data-page="home"] .block03Canonical .flavorBrush{background:var(--caribe-template-blue)!important;border-color:var(--caribe-template-blue)!important;opacity:1!important;filter:none!important}
body[data-page="home"] .block03Canonical a.block03MenuBtn,
body[data-page="home"] .block03Canonical a.btn.orange{background:var(--caribe-brand-blue)!important;border-color:var(--caribe-brand-blue)!important;color:white!important}
body[data-page="home"] .block03Canonical a.block03MenuBtn:hover,
body[data-page="home"] .block03Canonical a.block03MenuBtn:focus-visible{background:var(--caribe-template-blue)!important;border-color:var(--caribe-template-blue)!important}
/* Location: leave title ONDE ESTAMOS in template navy, but requested body and info lines white. */
body[data-page="home"] .block05Canonical .locationIntro p,
body[data-page="home"] .block05Canonical .locationIntro p *,
body[data-page="home"] .block05Canonical .locationInfo li,
body[data-page="home"] .block05Canonical .locationInfo li *,
body[data-page="home"] .block05Canonical .institutionalInfo,
body[data-page="home"] .block05Canonical .institutionalInfo *{color:#FFFFFF!important;-webkit-text-fill-color:#FFFFFF!important;opacity:1!important}
body[data-page="home"] .block05Canonical .locationInfo li svg,
body[data-page="home"] .block05Canonical .institutionalInfo svg{color:#FFFFFF!important;stroke:#FFFFFF!important}
/* Developer signature line only; do not recolor other footer bands. */
.sharedSiteFooter .footerProfessionalRow,
.block06Canonical .footerProfessionalRow,
.footerProfessionalRow{background:var(--caribe-developer-charcoal)!important;color:#FFFFFF!important}
.footerProfessionalRow a,.footerProfessionalRow a span,.footerProfessionalRow .professionalLink,
.footerProfessionalRow .professionalLink span{color:#FFFFFF!important;-webkit-text-fill-color:#FFFFFF!important}
.footerProfessionalRow svg,.footerProfessionalRow .professionalLink svg{color:#FFFFFF!important;stroke:#FFFFFF!important;fill:none!important}
/* Menu's title region, not the navigation header. Text stays as in R5 except label. */
body[data-page="cardapio"] .menuHero,
body[data-page="cardapio"] #menuHero,
body[data-page="cardapio"] .menuHeroSection{background:var(--caribe-orange)!important;background-color:var(--caribe-orange)!important}
body[data-page="cardapio"] .menuHero>small,
body[data-page="cardapio"] #menuHero>small{color:var(--caribe-template-blue)!important;-webkit-text-fill-color:var(--caribe-template-blue)!important}
/* Readability improvements: CTA focus and product text must not be occluded by hard-coded overlay styles. */
body[data-page="home"] .block03Canonical .block03MenuBtn:focus-visible,
body[data-page="cardapio"] .menuHero:focus-within{outline-color:#FFFFFF!important}

/* CARIBE R7 — prevent navbar collisions when DevTools/print resize viewport.
   This fixes the 769–1100px gap between desktop and the <=768px compact mode. */
@media screen and (min-width:769px) and (max-width:1100px) {
 .top.gate01.sharedSiteHeader, .sharedSiteHeader {
   box-sizing:border-box!important;
   grid-template-columns:minmax(140px,1fr) minmax(0,auto) minmax(100px,.65fr)!important;
   column-gap:clamp(8px,1.4vw,18px)!important;
   padding-left:clamp(12px,2vw,24px)!important;
   padding-right:clamp(12px,2vw,24px)!important;
 }
 .sharedSiteHeader .brand{min-width:0!important;width:auto!important;max-width:155px!important}
 .sharedSiteHeader .brand img{max-width:155px!important;width:100%!important;height:auto!important;object-fit:contain!important}
 .sharedSiteHeader nav.primaryNav{gap:clamp(9px,1.4vw,17px)!important;min-width:0!important}
 .sharedSiteHeader .primaryNav .navItem{font-size:clamp(12px,1.35vw,14px)!important;white-space:nowrap!important}
 .sharedSiteHeader .headerMotto{width:clamp(94px,11vw,125px)!important;max-width:125px!important;font-size:clamp(10px,1.2vw,12px)!important;justify-self:end!important}
}
@media screen and (min-width:769px) and (max-width:930px) {
 .top.gate01.sharedSiteHeader, .sharedSiteHeader {
   grid-template-columns:minmax(125px,1fr) minmax(0,auto)!important;
 }
 .sharedSiteHeader .headerMotto{display:none!important}
 .sharedSiteHeader .brand{max-width:148px!important}
 .sharedSiteHeader nav.primaryNav{justify-self:end!important}
}
/* Independent layout at browser print, never allow inherited grid clipping. */
@media print {
 .sharedSiteHeader{position:relative!important;grid-template-columns:minmax(125px,1fr) auto!important;column-gap:12px!important;overflow:visible!important}
 .sharedSiteHeader .headerMotto{display:none!important}
 .sharedSiteHeader nav.primaryNav{gap:12px!important}
 .sharedSiteHeader .brand img{max-width:145px!important;height:auto!important}
}

/* Caribe R9 — restore approved Instagram five-tile layout, do NOT change section grid. */
.block04Canonical .instagramFeed {display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;align-items:stretch!important;gap:7px!important;}
.block04Canonical .instagramFeed img {display:block!important;width:100%!important;height:auto!important;aspect-ratio:1.18/1!important;min-height:0!important;max-height:86px!important;object-fit:cover!important;object-position:center!important;border-radius:9px!important;}
@media(max-width:768px){.block04Canonical .instagramFeed img {max-height:66px!important;}}
/* Caribe R9 — order modal: real HTML overlay, unchanged fixed-position contract; not a baked image. */
#popup.caribeDeliveryPopup{width:clamp(320px,35vw,470px)!important;min-height:0!important;height:auto!important;max-height:calc(100vh - 120px)!important;background:#06233c!important;border:1px solid rgba(255,255,255,.4)!important;border-radius:16px!important;overflow:hidden!important;box-shadow:0 15px 42px #00132299!important;}
#popup.caribeDeliveryPopup .popupBgImage{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;object-fit:cover!important;object-position:68% center!important;opacity:1!important;}
#popup.caribeDeliveryPopup .popupBgOverlay{position:absolute!important;inset:0!important;background:linear-gradient(90deg,rgba(5,37,61,.98) 0%,rgba(5,37,61,.94) 42%,rgba(5,37,61,.34) 77%,rgba(5,37,61,.08) 100%)!important;}
#popup.caribeDeliveryPopup .caribeDeliveryContent{position:relative!important;z-index:3!important;padding:24px 22px 22px!important;min-height:0!important;max-width:67%!important;display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:0!important;color:#fff!important;}
#popup.caribeDeliveryPopup .caribeDeliveryTitle{font-size:21px!important;font-weight:900!important;line-height:1.1!important;color:#fff!important;margin:0 0 10px!important;text-transform:uppercase!important;}
#popup.caribeDeliveryPopup .caribeDeliveryAccent{height:3px!important;width:42px!important;border-radius:3px!important;background:#f7931e!important;margin:0 0 16px!important;}
#popup.caribeDeliveryPopup .caribeDeliveryDescription{font-size:13px!important;line-height:1.4!important;font-weight:500!important;margin:0 0 12px!important;color:#fff!important;}
#popup.caribeDeliveryPopup .caribeDeliveryDescription strong{color:#ff982b!important;font-weight:800!important;}
#popup.caribeDeliveryPopup .caribeDeliveryButton{display:flex!important;align-items:center!important;justify-content:center!important;box-sizing:border-box!important;text-align:center!important;font-size:12px!important;font-weight:800!important;line-height:1.15!important;text-decoration:none!important;color:#fff!important;min-height:39px!important;border-radius:8px!important;padding:9px 10px!important;width:100%!important;margin:0!important;letter-spacing:.015em!important;}
#popup.caribeDeliveryPopup .caribeWhatsApp{background:#10863f!important;color:white!important;}
#popup.caribeDeliveryPopup .caribe99Food{background:#ffc236!important;color:#172027!important;}
#popup.caribeDeliveryPopup .caribeDeliveryDivider{height:1px!important;width:100%!important;background:#ffffff55!important;margin:17px 0 13px!important;}
#popup.caribeDeliveryPopup #closePopup{position:absolute!important;top:10px!important;right:10px!important;z-index:6!important;border:1px solid #fff!important;border-radius:50%!important;color:#fff!important;background:#05253d!important;width:30px!important;height:30px!important;cursor:pointer!important;}
@media(max-width:900px){#popup.caribeDeliveryPopup{width:min(410px,calc(100vw - 24px))!important;}#popup.caribeDeliveryPopup .caribeDeliveryContent{max-width:74%!important;}}
@media(max-width:768px){#popup.caribeDeliveryPopup{display:none!important;}}

/* R10 – restore Instagram 5-tile original template geometry; only asset bytes differ. */
.block04Canonical .instagramFeed{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:7px!important;margin:0 0 11px!important;align-items:stretch!important;min-width:0!important;}
.block04Canonical .instagramFeed>img{display:block!important;width:100%!important;height:auto!important;aspect-ratio:1.18/1!important;max-height:none!important;min-height:0!important;object-fit:cover!important;object-position:center center!important;border-radius:9px!important;}
/* R10 – delivery modal: real DOM over standalone background; align to Header measured by JS. */
#popup.caribeDeliveryPopup{box-sizing:border-box!important;width:470px!important;max-width:calc(100vw - 28px)!important;max-height:calc(100dvh - 24px)!important;min-height:0!important;height:auto!important;padding:0!important;overflow:hidden!important;border-radius:16px!important;}
#popup.caribeDeliveryPopup .popupBgImage{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;object-fit:cover!important;object-position:center!important;}
#popup.caribeDeliveryPopup .popupBgOverlay{background:linear-gradient(90deg,rgba(5,37,61,.98) 0%,rgba(5,37,61,.94) 45%,rgba(5,37,61,.40) 74%,rgba(5,37,61,.14) 100%)!important;}
#popup.caribeDeliveryPopup .caribeBagBrand{position:absolute!important;z-index:2!important;width:27%!important;height:auto!important;left:66%!important;top:35%!important;transform:rotate(-2deg)!important;object-fit:contain!important;opacity:.82!important;mix-blend-mode:multiply!important;pointer-events:none!important;filter:sepia(.35) contrast(1.18)!important;}
#popup.caribeDeliveryPopup .caribeDeliveryContent{box-sizing:border-box!important;width:66%!important;max-width:none!important;padding:22px 20px 20px!important;max-height:min(520px,calc(100dvh - 30px))!important;overflow:auto!important;}
#popup.caribeDeliveryPopup .caribeDeliveryTitle{font-size:21px!important;line-height:1.12!important;margin:0 0 11px!important;}
#popup.caribeDeliveryPopup .caribeDeliveryDescription{font-size:13px!important;line-height:1.4!important;}
#popup.caribeDeliveryPopup .caribeDeliveryButton{min-height:40px!important;border-radius:8px!important;font-size:11px!important;}
#popup.caribeDeliveryPopup #closePopup{top:10px!important;right:10px!important;}
@media(max-width:768px){#popup.caribeDeliveryPopup{display:block!important;width:min(420px,calc(100vw - 24px))!important;right:12px!important;max-height:calc(100dvh - 22px)!important;}#popup.caribeDeliveryPopup .caribeDeliveryContent{width:75%!important;padding:18px 14px!important;}#popup.caribeDeliveryPopup .caribeBagBrand{width:22%!important;left:73%!important;}}
@media(max-width:420px){#popup.caribeDeliveryPopup .caribeDeliveryContent{width:82%!important;}#popup.caribeDeliveryPopup .caribeBagBrand{width:18%!important;left:80%!important;top:40%!important;} }

/* R11: isolated visual gate. Legacy popup content styles must not leak across cascade. */
#popup.caribeDeliveryPopup{width:470px!important;height:322px!important;max-height:min(322px,calc(100dvh - 120px))!important;min-height:0!important;position:fixed!important;overflow:hidden!important;border:1px solid rgba(255,255,255,.4)!important;border-radius:14px!important;box-shadow:0 16px 38px #001a2c55!important;isolation:isolate!important;box-sizing:border-box!important;}
#popup.caribeDeliveryPopup .popupBgImage{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;object-fit:cover!important;object-position:58% 53%!important;z-index:0!important}
#popup.caribeDeliveryPopup .popupBgOverlay{position:absolute!important;inset:0!important;z-index:1!important;background:linear-gradient(90deg,rgba(5,37,61,.99) 0%,rgba(5,37,61,.96) 48%,rgba(5,37,61,.17) 83%,transparent 100%)!important}
#popup.caribeDeliveryPopup .caribeBagBrand{display:none!important}
#popup.caribeDeliveryPopup .popupContent.caribeDeliveryContent{position:absolute!important;inset:0 auto 0 0!important;box-sizing:border-box!important;width:62%!important;max-width:62%!important;height:100%!important;max-height:none!important;min-height:0!important;overflow:visible!important;padding:17px 16px 16px!important;margin:0!important;z-index:3!important;display:flex!important;flex-direction:column!important;align-items:stretch!important;justify-content:flex-start!important;gap:0!important}
#popup.caribeDeliveryPopup h2.caribeDeliveryTitle{font-size:21px!important;line-height:1.12!important;letter-spacing:0!important;margin:0 0 6px!important;flex:0 0 auto!important;color:white!important}
#popup.caribeDeliveryPopup .caribeDeliveryAccent{height:3px!important;width:44px!important;margin:0 0 12px!important;flex:0 0 3px!important;background:#f7931e!important}
#popup.caribeDeliveryPopup p.caribeDeliveryDescription{font-size:12px!important;line-height:1.38!important;margin:0 0 9px!important;padding:0!important;min-height:0!important;flex:0 0 auto!important;color:white!important}
#popup.caribeDeliveryPopup .caribeDeliveryButton{display:flex!important;flex:0 0 39px!important;box-sizing:border-box!important;width:100%!important;height:39px!important;min-height:39px!important;max-height:39px!important;position:relative!important;margin:0!important;padding:8px!important;font-size:12px!important;line-height:1.1!important;border:0!important;text-align:center!important;align-items:center!important;justify-content:center!important;border-radius:8px!important;white-space:normal!important;text-decoration:none!important}
#popup.caribeDeliveryPopup .caribeDeliveryDivider{width:100%!important;height:1px!important;flex:0 0 1px!important;margin:12px 0 10px!important;background:#ffffff70!important}
#popup.caribeDeliveryPopup #closePopup{position:absolute!important;right:-155px!important;top:8px!important;width:30px!important;height:30px!important;z-index:10!important;line-height:1!important}
/* Instagram: restore original canonical slot geometry without layout overrides or white-space artefacts */
.block04Canonical .instagramFeed{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:7px!important;align-items:stretch!important;width:100%!important;max-width:100%!important;min-width:0!important;margin:0 0 11px!important}
.block04Canonical .instagramFeed>img{display:block!important;aspect-ratio:1.18 / 1!important;width:100%!important;height:auto!important;max-width:100%!important;max-height:none!important;min-width:0!important;min-height:0!important;object-fit:cover!important;object-position:center!important;border-radius:9px!important;overflow:hidden!important}
@media(max-width:768px){#popup.caribeDeliveryPopup{width:min(470px,calc(100vw - 24px))!important;height:322px!important;right:12px!important}#popup.caribeDeliveryPopup .popupContent.caribeDeliveryContent{width:70%!important;max-width:70%!important}#popup.caribeDeliveryPopup #closePopup{right:calc(-1 * (min(470px,100vw - 24px) * .30 - 10px))!important}}
@media(max-width:490px){#popup.caribeDeliveryPopup{height:auto!important;min-height:314px!important;max-height:calc(100dvh - 24px)!important}#popup.caribeDeliveryPopup .popupContent.caribeDeliveryContent{width:75%!important;max-width:75%!important;position:relative!important}#popup.caribeDeliveryPopup #closePopup{right:-28%!important}}


/* R12: isolation and reset of the popup. No inherited text clipping. */
#popup.caribeDeliveryPopup {position:fixed!important;display:block!important;box-sizing:border-box!important;width:470px!important;height:340px!important;min-height:340px!important;max-height:calc(100dvh - 120px)!important;right:24px!important;left:auto!important;bottom:auto!important;margin:0!important;padding:0!important;overflow:hidden!important;border-radius:17px!important;z-index:500!important;isolation:isolate!important;background:#05253d!important;box-shadow:0 12px 38px #0007!important;}
#popup.caribeDeliveryPopup .popupBgImage{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;object-fit:cover!important;object-position:center!important;z-index:0!important;}
#popup.caribeDeliveryPopup .popupBgOverlay{position:absolute!important;inset:0!important;z-index:1!important;background:linear-gradient(90deg,rgba(5,37,61,.98) 0%,rgba(5,37,61,.96) 49%,rgba(5,37,61,.30) 75%,transparent 100%)!important;}
#popup.caribeDeliveryPopup .popupContent.caribeDeliveryContent{position:relative!important;display:flex!important;flex-direction:column!important;align-items:stretch!important;justify-content:flex-start!important;box-sizing:border-box!important;inset:auto!important;width:60%!important;max-width:60%!important;height:100%!important;min-height:0!important;max-height:none!important;padding:19px 16px!important;margin:0!important;overflow:visible!important;gap:0!important;z-index:3!important;background:none!important;}
#popup.caribeDeliveryPopup h2.caribeDeliveryTitle{display:block!important;flex:none!important;font-size:20px!important;line-height:1.18!important;font-weight:900!important;color:#fff!important;margin:0 0 8px!important;padding:0!important;white-space:normal!important;}
#popup.caribeDeliveryPopup .caribeDeliveryAccent{flex:none!important;width:44px!important;height:3px!important;margin:0 0 14px!important;background:#f7931e!important;}
#popup.caribeDeliveryPopup p.caribeDeliveryDescription{display:block!important;position:static!important;flex:none!important;box-sizing:border-box!important;min-height:0!important;max-height:none!important;width:100%!important;line-height:1.45!important;font-size:12px!important;font-weight:500!important;color:#fff!important;margin:0 0 10px!important;padding:0!important;overflow:visible!important;white-space:normal!important;text-overflow:clip!important;}
#popup.caribeDeliveryPopup .caribeDeliveryButton{display:flex!important;position:static!important;box-sizing:border-box!important;align-items:center!important;justify-content:center!important;flex:none!important;width:100%!important;height:40px!important;min-height:40px!important;max-height:40px!important;padding:0 6px!important;margin:0!important;line-height:1.1!important;font-size:11px!important;font-weight:900!important;text-align:center!important;text-decoration:none!important;border-radius:7px!important;white-space:nowrap!important;}
#popup.caribeDeliveryPopup .caribeDeliveryDivider{display:block!important;flex:none!important;height:1px!important;width:100%!important;margin:13px 0 13px!important;background:#ffffff66!important;}
#popup.caribeDeliveryPopup .caribeWhatsApp{background:#128c44!important;color:#fff!important;}
#popup.caribeDeliveryPopup .caribe99Food{background:#ffbe32!important;color:#101010!important;}
#popup.caribeDeliveryPopup #closePopup{position:absolute!important;right:auto!important;left:calc(470px - 56px)!important;top:13px!important;width:30px!important;height:30px!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:0!important;border-radius:100%!important;z-index:10!important;line-height:1!important;}
/* Identical canonical Instagram layout: no modification to parent section geometry */
.block04Canonical .instagramFeed{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;column-gap:7px!important;row-gap:7px!important;align-items:stretch!important;margin:0 0 11px!important;}
.block04Canonical .instagramFeed>img{display:block!important;box-sizing:border-box!important;width:100%!important;height:auto!important;aspect-ratio:1.18 / 1!important;max-height:none!important;object-fit:cover!important;object-position:center!important;border-radius:9px!important;}
@media(max-width:768px){#popup.caribeDeliveryPopup{width:min(470px,calc(100vw - 24px))!important;height:340px!important;right:12px!important;max-height:calc(100dvh - 24px)!important}#popup.caribeDeliveryPopup .popupContent.caribeDeliveryContent{width:66%!important;max-width:66%!important}#popup.caribeDeliveryPopup #closePopup{left:calc(min(470px,100vw - 24px) - 56px)!important}.block04Canonical .instagramFeed{gap:5px!important}}
@media(max-width:430px){#popup.caribeDeliveryPopup{height:320px!important}#popup.caribeDeliveryPopup .popupContent.caribeDeliveryContent{width:73%!important;max-width:73%!important;padding:14px 11px!important}#popup.caribeDeliveryPopup h2.caribeDeliveryTitle{font-size:17px!important}#popup.caribeDeliveryPopup p.caribeDeliveryDescription{font-size:11px!important;margin-bottom:8px!important}#popup.caribeDeliveryPopup .caribeDeliveryButton{font-size:10px!important;height:36px!important;min-height:36px!important;max-height:36px!important}#popup.caribeDeliveryPopup .caribeDeliveryDivider{margin:9px 0!important}.block04Canonical .instagramFeed{gap:4px!important}.block04Canonical .instagramFeed>img{border-radius:6px!important}}


/* R13: LOCKED CANONICAL INSTAGRAM GRID / no intrinsic photo ratio allowed to expand tiles */
html body .block04Canonical .block04Instagram .instagramFeed{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;width:100%!important;gap:7px!important;align-items:start!important;margin:0 0 11px!important}
html body .block04Canonical .block04Instagram .instagramFeed>img{display:block!important;width:100%!important;height:auto!important;aspect-ratio:1.18 / 1!important;object-fit:cover!important;object-position:center!important;max-height:none!important;min-height:0!important;border:0!important;border-radius:9px!important;box-sizing:border-box!important}
/* R13: eliminate cross-generation pop-up geometry conflicts at final cascade */
html body #popup.caribeDeliveryPopup{box-sizing:border-box!important;display:block;position:fixed!important;width:470px!important;max-width:calc(100vw - 28px)!important;height:320px!important;min-height:0!important;max-height:calc(100dvh - 24px)!important;right:16px!important;left:auto!important;bottom:auto!important;overflow:hidden!important;padding:0!important;border-radius:16px!important;background:#05253d!important;z-index:99999!important}
html body #popup.caribeDeliveryPopup .popupBgImage{display:block!important;position:absolute!important;inset:0!important;width:100%!important;height:100%!important;object-fit:cover!important;object-position:center!important;z-index:0!important}
html body #popup.caribeDeliveryPopup .popupBgOverlay{display:block!important;position:absolute!important;inset:0!important;width:100%!important;height:100%!important;background:linear-gradient(90deg,rgba(5,37,61,.95) 0%,rgba(5,37,61,.88) 48%,rgba(5,37,61,.23) 78%,transparent 100%)!important;z-index:1!important;pointer-events:none!important}
html body #popup.caribeDeliveryPopup .popupContent.caribeDeliveryContent{box-sizing:border-box!important;position:relative!important;z-index:2!important;width:68%!important;max-width:68%!important;height:100%!important;max-height:100%!important;padding:16px 13px 13px 18px!important;margin:0!important;display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:0!important;overflow:visible!important}
html body #popup.caribeDeliveryPopup h2.caribeDeliveryTitle{font-size:21px!important;line-height:1.1!important;margin:0 0 9px!important;white-space:nowrap!important;color:#fff!important}
html body #popup.caribeDeliveryPopup .caribeDeliveryAccent{height:3px!important;width:47px!important;margin:0 0 10px!important;flex:none!important}
html body #popup.caribeDeliveryPopup p.caribeDeliveryDescription{display:block!important;font-size:12px!important;line-height:1.3!important;margin:0 0 9px!important;color:#fff!important;max-width:none!important;flex:none!important}
html body #popup.caribeDeliveryPopup .caribeDeliveryButton{box-sizing:border-box!important;display:flex!important;width:100%!important;max-width:100%!important;height:37px!important;min-height:37px!important;max-height:37px!important;padding:0 8px!important;font-size:12px!important;line-height:1.15!important;align-items:center!important;justify-content:center!important;margin:0!important;flex:none!important;text-align:center!important;white-space:nowrap!important;text-decoration:none!important}
html body #popup.caribeDeliveryPopup .caribeDeliveryDivider{width:100%!important;height:1px!important;min-height:1px!important;max-height:1px!important;flex:none!important;margin:12px 0!important}
html body #popup.caribeDeliveryPopup #closePopup{box-sizing:border-box!important;position:absolute!important;z-index:5!important;top:12px!important;left:auto!important;right:-135px!important;width:30px!important;height:30px!important;min-width:30px!important;min-height:30px!important;line-height:26px!important;border-radius:50%!important}
@media(max-width:560px){
 html body #popup.caribeDeliveryPopup{width:calc(100vw - 24px)!important;right:12px!important;height:320px!important}
 html body #popup.caribeDeliveryPopup .popupContent.caribeDeliveryContent{width:72%!important;max-width:72%!important;padding:13px 11px!important}
 html body #popup.caribeDeliveryPopup h2.caribeDeliveryTitle{font-size:17px!important}
 html body #popup.caribeDeliveryPopup p.caribeDeliveryDescription{font-size:11px!important}
 html body #popup.caribeDeliveryPopup #closePopup{right:calc(-1 * (min(72vw, 360px) * .38))!important}
}

html body #popup.caribeDeliveryPopup > #closePopup{position:absolute!important;top:12px!important;right:12px!important;left:auto!important;z-index:10!important;width:30px!important;height:30px!important}

/* R14 audited: Imperial-style compact delivery buttons. Content column only; no photo invasion. */
html body #popup.caribeDeliveryPopup .popupContent.caribeDeliveryContent{box-sizing:border-box!important;}
html body #popup.caribeDeliveryPopup .caribeDeliveryButton{display:inline-flex!important;justify-content:center!important;align-items:center!important;box-sizing:border-box!important;width:210px!important;max-width:100%!important;min-height:34px!important;height:36px!important;padding:7px 10px!important;margin:7px 0 0!important;font-size:11px!important;line-height:1.1!important;letter-spacing:0!important;white-space:nowrap!important;}
@media(max-width:560px){html body #popup.caribeDeliveryPopup .caribeDeliveryButton{width:min(190px,100%)!important;min-height:34px!important;height:34px!important;padding:6px 7px!important;font-size:10px!important;}}
/* Tile geometry: fixed aspect and rounded mask (source has no baked-in white side margins). */
html body .block04Canonical .block04Instagram .instagramFeed>img{display:block!important;width:100%!important;aspect-ratio:1.18/1!important;height:auto!important;object-fit:cover!important;border-radius:9px!important;}
