/* ec-shared.css — blocos CSS comuns extraídos de inline para cache externo
   40 blocos consolidados, gerado automaticamente
   NÃO editar manualmente — regenerado pelo script de consolidação */

/* === Block 1/40 | hash:7e97cbd9 | 22 pages === */
/* ═══════════════════════════════════════════════════════════════════════════
   NAV PADRONIZADO — idêntico à home
   ═══════════════════════════════════════════════════════════════════════════ */
nav.top{position:fixed;top:0;left:0;right:0;z-index:50;transition:background .3s,border-color .3s;border-bottom:1px solid transparent}nav.top.scrolled{background:color-mix(in oklab,var(--paper) 92%,transparent);backdrop-filter:blur(12px);border-bottom-color:var(--rule)}.nav-inner{display:flex;align-items:center;justify-content:space-between;gap:32px;padding:14px var(--gutter);max-width:100%;transition:color .3s;color:var(--areia-pale)}nav.top.scrolled .nav-inner{color:var(--azul1)}.brand-mark{display:flex;align-items:center;gap:18px;text-decoration:none;color:inherit}.brand-logo{width:56px;height:56px;display:block;transition:opacity .2s}.brand-logo.dark{display:none}nav.top.scrolled .brand-logo.light{display:none}nav.top.scrolled .brand-logo.dark{display:block}.brand-word{display:none}.brand-word-x{font-family:"JetBrains Mono",monospace;font-weight:500;text-transform:uppercase;letter-spacing:0.20em;line-height:1.35;font-size:11px;padding-left:18px;border-left:1px solid currentColor;opacity:0.90;min-width:140px}.brand-word b{font-weight:700;letter-spacing:0.16em;font-size:12px}.nav-links a{text-decoration:none;color:inherit;font-size:12px;font-weight:500;letter-spacing:0.06em;text-transform:uppercase;position:relative;padding:6px 0;white-space:nowrap}.nav-links a::after{content:"";position:absolute;left:0;bottom:-2px;width:0;height:2px;background:var(--amarelo);transition:width .35s ease}.nav-links a:hover::after{width:100%}.nav-links{display:flex;gap:28px;list-style:none;padding:0;margin:0;align-items:center}.btn{display:inline-flex;align-items:center;gap:10px;padding:13px 24px;border-radius:999px;background:var(--amarelo);color:var(--azul1);text-decoration:none;font-size:13px;font-weight:700;letter-spacing:0.06em;text-transform:uppercase;border:1.5px solid var(--amarelo);transition:background .2s,color .2s,border-color .2s,transform .15s;cursor:pointer;white-space:nowrap}.btn:hover{background:var(--azul1);color:var(--amarelo);border-color:var(--azul1)}.btn.ghost{background:transparent;color:currentColor;border-color:currentColor}.btn.ghost:hover{background:var(--areia-pale);color:var(--azul1);border-color:var(--areia-pale)}.btn.azul{background:var(--azul1);color:var(--areia-pale);border-color:var(--azul1)}.btn.azul:hover{background:var(--amarelo);color:var(--azul1);border-color:var(--amarelo)}.btn.lg{padding:16px 30px;font-size:14px}.hero{position:relative;min-height:100vh;display:flex;flex-direction:column;justify-content:flex-end;color:var(--areia-pale);overflow:hidden;isolation:isolate}.hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 40%;z-index:-2;aspect-ratio:1920/1267;contain-intrinsic-size:1920px 1267px}.hero-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,32,46,0.38) 0%,rgba(0,32,46,0.12) 28%,rgba(0,32,46,0.28) 55%,rgba(0,32,46,0.88) 100%);z-index:-1}.hero-content{padding:110px var(--gutter) 52px;max-width:var(--max);width:100%;margin:0 auto;display:grid;grid-template-columns:1.4fr 1fr;gap:48px;align-items:end}.hero-eyebrow{color:rgba(237,226,201,0.85);margin-bottom:32px}.hero-eyebrow::before{background:var(--amarelo)}.hero h1{font-family:"Catamaran",sans-serif;font-weight:200;font-size:clamp(36px,4.6vw,72px);line-height:0.95;letter-spacing:-0.026em;margin:0 0 12px;color:var(--areia-pale)}.hero h1 .serif{font-style:italic;font-weight:500;color:var(--amarelo);display:inline-block;margin:0 -0.04em}.hero h1 .strong{font-weight:700;color:var(--areia-pale)}.hero-sub{font-size:16px;line-height:1.5;color:rgba(237,226,201,0.88);max-width:520px;margin:0 0 44px;font-weight:300;letter-spacing:0.01em}.hero-ctas{display:flex;gap:14px;flex-wrap:wrap;align-items:center}.hero-side{display:flex;flex-direction:column;gap:24px;align-self:end;padding-bottom:56px}.hero-logo{width:210px;height:210px;margin-left:auto;display:block;filter:drop-shadow(0 8px 28px rgba(0,32,46,0.50))}.hero-meta-card{border-left:1px solid rgba(245,155,30,0.4);padding-left:24px;display:flex;flex-direction:column;gap:20px}.hmc{display:flex;flex-direction:column;gap:4px}.hmc .l{font-family:"JetBrains Mono",monospace;font-size:10px;letter-spacing:0.24em;text-transform:uppercase;color:var(--amarelo)}.hmc .v{font-size:16px;font-weight:500;color:var(--areia-pale);line-height:1.4}.hero-bottom-bar{position:absolute;bottom:0;left:0;right:0;background:rgba(0,32,46,0.60);backdrop-filter:blur(12px);border-top:1px solid rgba(245,155,30,0.30);padding:15px var(--gutter);display:flex;justify-content:space-between;align-items:center;gap:32px;font-family:"JetBrains Mono",monospace;font-size:11.5px;letter-spacing:0.22em;text-transform:uppercase;color:rgba(237,226,201,0.82)}.hero-bottom-bar b{color:var(--amarelo);font-weight:600}section{padding:140px 0;position:relative}.sec-head{display:grid;grid-template-columns:280px 1fr;gap:80px;margin-bottom:80px;align-items:end}.sec-head .num{font-family:"JetBrains Mono",monospace;font-size:11px;letter-spacing:0.28em;text-transform:uppercase;color:var(--azul2);display:flex;align-items:center;gap:14px}.sec-head .num b{color:var(--amarelo);font-weight:700;border:1.5px solid var(--amarelo);border-radius:50%;width:32px;height:32px;display:inline-grid;place-items:center;font-size:11px;transform:rotate(-14deg)}.sec-head h2{font-family:"Catamaran",sans-serif;font-weight:300;font-size:clamp(44px,5.4vw,88px);line-height:1.0;letter-spacing:-0.025em;margin:0;color:var(--azul1)}.sec-head h2 .serif{font-style:italic;font-weight:500;color:var(--verde);font-family:"Cormorant Garamond",serif}.sec-head h2 .am{color:var(--amarelo);font-weight:500}.sec-head .lede{grid-column:2 / -1;font-size:19px;color:var(--cinza1);line-height:1.5;max-width:56ch;margin-top:24px;font-weight:400}.momentos{background:var(--paper)}.momentos-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}.momento{background:var(--areia);border:1px solid var(--rule-soft);overflow:hidden;display:flex;flex-direction:column;transition:transform .35s ease,box-shadow .35s ease}.momento:hover{transform:translateY(-6px);box-shadow:0 24px 60px rgba(0,64,90,0.16)}picture.momento-photo,image-slot.momento-photo{display:block;aspect-ratio:4/3;--image-slot-bg:var(--verde2);--image-slot-fg:var(--azul2)}.momento-body{padding:36px 32px 32px;display:flex;flex-direction:column;gap:16px;flex:1}.momento-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:14px;border-bottom:1px solid var(--rule)}.momento-time{font-family:"JetBrains Mono",monospace;font-size:11px;letter-spacing:0.22em;text-transform:uppercase;color:var(--azul2)}.momento-num{width:32px;height:32px;border-radius:50%;background:var(--amarelo);color:var(--azul1);display:grid;place-items:center;font-family:"Catamaran",sans-serif;font-weight:800;font-size:13px;transform:rotate(-14deg)}.momento h3{font-family:"Catamaran",sans-serif;font-weight:700;font-size:30px;line-height:1.05;letter-spacing:-0.015em;margin:0;color:var(--azul1)}.momento h3 .serif{font-style:italic;font-weight:500;color:var(--verde);font-family:"Cormorant Garamond",serif}.momento p{font-size:15.5px;line-height:1.6;color:var(--cinza1);margin:0;flex:1}.momento .highlight{background:var(--verde2);border-left:3px solid var(--verde);padding:14px 16px;font-size:14px;color:var(--azul1);line-height:1.4}.momento .highlight strong{display:block;font-weight:700;margin-bottom:4px;color:var(--verde)}.momento .highlight .price{font-family:"Catamaran",sans-serif;font-weight:800;font-size:18px;color:var(--azul1)}.momento-cta{margin-top:8px;display:inline-flex;align-items:center;gap:10px;color:var(--azul1);font-weight:600;text-decoration:none;font-size:14px;letter-spacing:0.04em;text-transform:uppercase;padding-top:12px;border-top:1px solid var(--rule)}.momento-cta::after{content:"→";font-weight:400;transition:transform .25s}.momento-cta:hover{color:var(--amarelo)}.momento-cta:hover::after{transform:translateX(4px)}.visao{background:var(--areia);border-top:1px solid var(--rule-soft);border-bottom:1px solid var(--rule-soft)}.visao-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:96px;align-items:center}picture.visao-photo,image-slot.visao-photo{display:block;aspect-ratio:5/6;border:1px solid var(--rule);--image-slot-bg:var(--verde2);--image-slot-fg:var(--azul2)}.visao-text .eyebrow{margin-bottom:24px}.visao-text h2{font-family:"Catamaran",sans-serif;font-weight:300;font-size:clamp(40px,4.4vw,64px);line-height:1.02;letter-spacing:-0.02em;margin:0 0 32px;color:var(--azul1)}.visao-text h2 .serif{font-style:italic;font-family:"Cormorant Garamond",serif;color:var(--verde);font-weight:500}.visao-text p{font-size:17px;line-height:1.7;color:var(--ink);margin:0 0 20px;max-width:52ch}.visao-text p strong{font-weight:700;color:var(--verde)}.visao-credits{margin-top:36px;padding-top:28px;border-top:1px solid var(--rule);display:grid;grid-template-columns:1fr 1fr;gap:24px}.credit .l{font-family:"JetBrains Mono",monospace;font-size:10px;letter-spacing:0.24em;text-transform:uppercase;color:var(--azul2);margin-bottom:6px}.credit .v{font-weight:600;color:var(--azul1);font-size:15px}.feijoada{background:var(--verde);color:var(--areia-pale);overflow:hidden}.feijoada-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:96px;align-items:center}.feijoada-photo-wrap{position:relative}picture.feijoada-photo,image-slot.feijoada-photo{display:block;aspect-ratio:1/1;--image-slot-bg:rgba(237,226,201,0.06);--image-slot-fg:rgba(237,226,201,0.7);border:1px solid rgba(237,226,201,0.2)}.feijoada-medalha{position:absolute;top:-32px;right:-32px;width:160px;color:var(--amarelo)}.feijoada-medalha .pp-core{font-size:14px}.feijoada-medalha .pp-arc-top,.feijoada-medalha .pp-arc-bot{font-size:8px;color:var(--amarelo)}.feijoada-text .eyebrow{color:var(--amarelo);margin-bottom:24px}.feijoada-text .eyebrow::before{background:var(--amarelo)}.feijoada-text h2{font-family:"Catamaran",sans-serif;font-weight:300;font-size:clamp(40px,4.8vw,72px);line-height:1.0;letter-spacing:-0.02em;margin:0 0 28px;color:var(--areia-pale)}.feijoada-text h2 .serif{font-style:italic;font-weight:500;color:var(--amarelo);font-family:"Cormorant Garamond",serif}.feijoada-text p{font-size:17px;line-height:1.7;color:rgba(237,226,201,0.88);margin:0 0 16px;max-width:56ch}.feijoada-info{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin:40px 0 36px;padding:28px 0;border-top:1px solid rgba(237,226,201,0.22);border-bottom:1px solid rgba(237,226,201,0.22)}.fi{display:flex;flex-direction:column;gap:6px}.fi .l{font-family:"JetBrains Mono",monospace;font-size:10px;letter-spacing:0.24em;text-transform:uppercase;color:var(--amarelo)}.fi .v{font-family:"Catamaran",sans-serif;font-weight:600;font-size:18px;color:var(--areia-pale);line-height:1.2}.fi .v .big{font-size:28px;font-weight:700}.avaliacoes{background:var(--areia-pale)}.ratings-row{display:grid;grid-template-columns:repeat(3,1fr);gap:48px;margin-bottom:80px;padding-bottom:80px;border-bottom:1px solid var(--rule)}.rating{display:flex;flex-direction:column;align-items:flex-start;gap:14px}.rating .n{font-family:"Catamaran",sans-serif;font-weight:200;font-size:clamp(64px,7vw,104px);line-height:0.9;letter-spacing:-0.03em;color:var(--azul1)}.rating .n .star{color:var(--amarelo);font-weight:500;margin-right:8px}.rating .src{font-family:"JetBrains Mono",monospace;font-size:11px;letter-spacing:0.24em;text-transform:uppercase;color:var(--azul2)}.rating .label{font-size:15px;color:var(--cinza1);max-width:32ch;line-height:1.45}.pullquote{display:grid;grid-template-columns:280px 1fr;gap:80px;margin-bottom:80px}.pullquote .label{font-family:"JetBrains Mono",monospace;font-size:11px;letter-spacing:0.28em;text-transform:uppercase;color:var(--azul2)}.pullquote blockquote{margin:0;font-family:"Cormorant Garamond",serif;font-style:italic;font-weight:400;font-size:clamp(28px,3.2vw,44px);line-height:1.22;color:var(--azul1);letter-spacing:-0.01em;position:relative}.pullquote blockquote::before{content:"“";position:absolute;left:-0.5em;top:-0.3em;font-size:1.4em;color:var(--amarelo);font-style:normal;line-height:1}.pullquote cite{display:block;margin-top:28px;font-family:"Catamaran",sans-serif;font-style:normal;font-size:13px;font-weight:600;letter-spacing:0.18em;text-transform:uppercase;color:var(--cinza1)}.pullquote cite span{color:var(--amarelo)}.mini-quotes{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}.mq{background:var(--areia);padding:32px 28px 26px;border:1px solid var(--rule-soft);display:flex;flex-direction:column;gap:20px;transition:transform .3s,box-shadow .3s}.mq:hover{transform:translateY(-4px);box-shadow:0 12px 30px rgba(0,64,90,0.10)}.mq .stars{color:var(--amarelo);font-size:16px;letter-spacing:2px}.mq .q{font-family:"Catamaran",sans-serif;font-size:16.5px;line-height:1.5;color:var(--azul1)}.mq .src{font-family:"JetBrains Mono",monospace;font-size:11px;letter-spacing:0.22em;text-transform:uppercase;color:var(--azul2);padding-top:16px;border-top:1px solid var(--rule);margin-top:auto}.eventos{background:var(--paper)}.b2b-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px}.b2b-card{background:var(--areia);border:1px solid var(--rule-soft);padding:48px 44px 44px;display:flex;flex-direction:column;position:relative;transition:transform .35s,box-shadow .35s}.b2b-card:hover{transform:translateY(-4px);box-shadow:0 24px 50px rgba(0,64,90,0.12)}.b2b-card.variant{background:var(--verde2)}.b2b-tag{font-family:"JetBrains Mono",monospace;font-size:11px;letter-spacing:0.24em;text-transform:uppercase;color:var(--azul2);padding-bottom:14px;border-bottom:1px solid var(--rule);margin-bottom:28px;font-weight:500}.b2b-card.variant .b2b-tag{color:var(--verde);border-color:rgba(51,93,74,0.25)}.b2b-card h3{font-family:"Catamaran",sans-serif;font-weight:300;font-size:clamp(36px,3.6vw,52px);line-height:1.0;letter-spacing:-0.02em;margin:0 0 20px;color:var(--azul1)}.b2b-card h3 .serif{font-style:italic;font-weight:500;color:var(--verde);font-family:"Cormorant Garamond",serif}.b2b-card.variant h3 .serif{color:var(--amarelo-deep)}.b2b-lede{font-size:17px;line-height:1.55;color:var(--cinza1);margin:0 0 32px;max-width:44ch}.b2b-list{list-style:none;padding:0;margin:0 0 36px;display:flex;flex-direction:column;flex:1}.b2b-list li{padding:18px 0;border-top:1px solid var(--rule);display:flex;flex-direction:column;gap:4px}.b2b-card.variant .b2b-list li{border-top-color:rgba(51,93,74,0.18)}.b2b-list li:last-child{border-bottom:1px solid var(--rule)}.b2b-card.variant .b2b-list li:last-child{border-bottom-color:rgba(51,93,74,0.18)}.b2b-l{font-family:"Catamaran",sans-serif;font-weight:700;font-size:16px;color:var(--azul1);letter-spacing:-0.005em}.b2b-d{font-size:14.5px;color:var(--cinza1);line-height:1.45}.b2b-foot{display:grid;grid-template-columns:1fr auto;gap:40px;align-items:center;margin-top:56px;padding:32px 0;border-top:1px solid var(--rule)}.b2b-foot-eyebrow{font-family:"JetBrains Mono",monospace;font-size:11px;letter-spacing:0.24em;text-transform:uppercase;color:var(--azul2);margin-bottom:8px}.b2b-foot-text{font-size:16px;color:var(--cinza1);line-height:1.5;max-width:64ch}.reservas{background:var(--azul1);color:var(--areia-pale)}.reservas .sec-head h2{color:var(--areia-pale)}.reservas .sec-head h2 .serif{color:var(--amarelo)}.reservas .sec-head .num{color:rgba(237,226,201,0.65)}.reservas .sec-head .num b{color:var(--amarelo);border-color:var(--amarelo)}.reservas .sec-head .lede{color:rgba(237,226,201,0.78)}.reservas-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:80px;align-items:start}.reservas-info{display:flex;flex-direction:column;gap:36px}.info-block{padding:28px 0;border-bottom:1px solid rgba(237,226,201,0.18)}.info-block:first-child{padding-top:0}.info-block h4{font-family:"JetBrains Mono",monospace;font-size:11px;letter-spacing:0.28em;text-transform:uppercase;color:var(--amarelo);margin:0 0 14px;font-weight:500}.info-block p{font-size:16.5px;line-height:1.55;color:var(--areia-pale);margin:0}.info-block p+p{margin-top:8px}.horarios{display:grid;grid-template-columns:1fr 1fr;gap:16px 32px;font-size:16px;color:var(--areia-pale)}.horarios .d{color:rgba(237,226,201,0.72)}.horarios .h{font-weight:600;color:var(--amarelo);font-variant-numeric:tabular-nums}.reservas-cta-card{background:var(--verde);border:1px solid rgba(237,226,201,0.18);padding:56px 48px;position:relative;overflow:hidden}.reservas-cta-card .stamp{position:absolute;top:-28px;right:-28px;width:130px;color:var(--amarelo)}.reservas-cta-card .stamp .pp-core{font-size:13px}.reservas-cta-card .stamp .pp-arc-top,.reservas-cta-card .stamp .pp-arc-bot{font-size:7px}.reservas-cta-card h3{font-family:"Catamaran",sans-serif;font-weight:300;font-size:clamp(32px,3.6vw,52px);line-height:1.02;letter-spacing:-0.02em;margin:0 0 20px;color:var(--areia-pale);max-width:14ch}.reservas-cta-card h3 .serif{font-style:italic;font-weight:500;color:var(--amarelo);font-family:"Cormorant Garamond",serif}.reservas-cta-card p{color:rgba(237,226,201,0.85);font-size:15.5px;line-height:1.6;margin:0 0 32px;max-width:38ch}.access-pill{margin-top:28px;padding:14px 18px;background:rgba(237,226,201,0.08);border:1px solid rgba(237,226,201,0.18);border-radius:4px;font-size:13px;color:rgba(237,226,201,0.85);line-height:1.5;display:flex;gap:12px;align-items:flex-start}.access-pill::before{content:"♿";font-size:18px;flex-shrink:0;color:var(--amarelo)}footer.foot{background:var(--azul1);color:var(--areia-pale);padding:100px 0 40px;border-top:1px solid rgba(237,226,201,0.10)}.foot-top{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:56px;padding-bottom:64px;border-bottom:1px solid rgba(237,226,201,0.18)}.foot-brand .big{font-family:"Catamaran",sans-serif;font-weight:200;font-size:clamp(48px,5.4vw,80px);line-height:0.92;margin:0 0 28px;letter-spacing:-0.025em;color:var(--areia-pale)}.foot-brand .big .serif{font-style:italic;font-weight:500;color:var(--amarelo);font-family:"Cormorant Garamond",serif}.foot-brand .tagline{font-size:16px;color:rgba(237,226,201,0.78);line-height:1.6;max-width:42ch}.foot-col h5{font-family:"JetBrains Mono",monospace;font-size:11px;letter-spacing:0.26em;text-transform:uppercase;color:var(--amarelo);margin:0 0 22px;font-weight:500}.foot-col ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:12px}.foot-col a{color:var(--areia-pale);text-decoration:none;font-size:15px;transition:color .2s}.foot-col a:hover{color:var(--amarelo)}.foot-bottom{display:flex;justify-content:space-between;align-items:center;margin-top:32px;font-family:"JetBrains Mono",monospace;font-size:11px;color:rgba(237,226,201,0.6);letter-spacing:0.22em;text-transform:uppercase;gap:24px;flex-wrap:wrap}.foot-bottom .crest{display:flex;align-items:center;gap:16px;color:rgba(237,226,201,0.7)}.crest-logo{width:48px;height:48px;display:block}@media (max-width:1100px){:root{--gutter:40px}.sec-head,.visao-grid,.feijoada-grid,.reservas-grid,.foot-top,.pullquote{grid-template-columns:1fr !important;gap:48px}.sec-head .lede{grid-column:1 / -1}.momentos-grid,.mini-quotes{grid-template-columns:1fr}.ratings-row{grid-template-columns:1fr;gap:32px}.b2b-grid{grid-template-columns:1fr}.b2b-foot{grid-template-columns:1fr;gap:20px}section{padding:88px 0}.hero h1{font-size:clamp(40px,7vw,72px)}.hero-logo{margin-left:0;width:180px;height:180px}}@media (min-width:721px) and (max-width:1100px){.hero-content{grid-template-columns:1.4fr 1fr !important}}@media (max-width:720px){:root{--gutter:24px}.hero-bottom-bar{font-size:10px;gap:14px;flex-wrap:wrap}.feijoada-info{grid-template-columns:1fr}.reservas-cta-card{padding:40px 28px}}#tagme-modal-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.65);z-index:9999;align-items:center;justify-content:center}#tagme-modal-overlay.open{display:flex}#tagme-modal-box{background:#fff;border-radius:12px;overflow:hidden;width:min(480px,96vw);max-height:96vh;display:flex;flex-direction:column;box-shadow:0 24px 64px rgba(0,0,0,.4);animation:modalIn .25s ease}@keyframes modalIn{from{opacity:0;transform:translateY(24px) scale(.97)}to{opacity:1;transform:none}}#tagme-modal-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;background:#1a3a2a;color:#fff;font-family:"JetBrains Mono",monospace;font-size:.75rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;flex-shrink:0}#tagme-modal-close{background:none;border:none;color:#fff;font-size:1.5rem;cursor:pointer;line-height:1;padding:0 4px;opacity:.8;transition:opacity .2s}#tagme-modal-close:hover{opacity:1}#tagme-modal-iframe{width:100%;flex:1;border:none;min-height:680px}.fatos-rapidos-section{background:var(--azul1);color:#fff;padding:40px 0}.fatos-rapidos-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:0;text-align:center}.fato-item-hero{padding:16px 12px;border-right:1px solid rgba(255,255,255,0.1)}.fato-item-hero:last-child{border-right:none}.fato-num-hero{font-family:"Cormorant Garamond",Georgia,serif;font-size:2.4rem;font-weight:600;color:var(--amarelo);line-height:1;display:block}.fato-label-hero{font-size:11px;opacity:0.7;margin-top:5px;display:block;letter-spacing:0.02em;line-height:1.4}.answer-box{background:var(--verde2);border-left:4px solid var(--verde);border-radius:0 8px 8px 0;padding:18px 22px;margin:20px 0;font-size:1.02rem;line-height:1.6}.answer-box strong{color:var(--verde)}.speakable-intro{font-size:1.08rem;line-height:1.75;color:var(--cinza1)}@media (max-width:900px){.fatos-rapidos-grid{grid-template-columns:repeat(3,1fr)}.fato-item-hero{border-bottom:1px solid rgba(255,255,255,0.1)}}@media (max-width:480px){.fatos-rapidos-grid{grid-template-columns:repeat(2,1fr)}}.faq-section,.gallery-section,.nosso-grupo-section,section:not(.hero):not(.fatos-rapidos-section){content-visibility:auto;contain-intrinsic-size:0 500px}a,button,[role="button"]{will-change:auto;touch-action:manipulation}a,button{-webkit-tap-highlight-color:transparent}.nav-links a,.btn,.btn-reservar{transform:translateZ(0);backface-visibility:hidden}img{max-width:100%;height:auto}img[width][height]{aspect-ratio:attr(width) / attr(height)}.nav-hamburger{display:none;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:44px;height:44px;background:transparent;border:none;cursor:pointer;padding:8px;border-radius:8px;transition:background 0.2s;-webkit-tap-highlight-color:transparent;z-index:200}.nav-hamburger:hover{background:rgba(255,255,255,0.1)}nav.top.scrolled .nav-hamburger:hover{background:rgba(0,64,90,0.08)}.nav-hamburger span{display:block;width:22px;height:2px;background:currentColor;border-radius:2px;transition:transform 0.3s ease,opacity 0.3s ease,width 0.3s ease;transform-origin:center}.nav-hamburger.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}.nav-hamburger.open span:nth-child(2){opacity:0;width:0}.nav-hamburger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.nav-drawer-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,0.55);z-index:150;backdrop-filter:blur(2px);opacity:0;transition:opacity 0.3s ease}.nav-drawer-overlay.open{display:block;opacity:1}.nav-drawer{position:fixed;top:0;right:0;bottom:0;width:min(320px,88vw);background:var(--azul1,#00405A);z-index:160;transform:translateX(100%);transition:transform 0.35s cubic-bezier(0.4,0,0.2,1);display:flex;flex-direction:column;overflow-y:auto;-webkit-overflow-scrolling:touch}.nav-drawer.open{transform:translateX(0)}.nav-drawer-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid rgba(255,255,255,0.12)}.nav-drawer-logo{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--areia-pale,#F5EFE6)}.nav-drawer-logo img{width:40px;height:40px}.nav-drawer-logo-text{font-family:"JetBrains Mono",monospace;font-size:9px;font-weight:600;letter-spacing:0.2em;text-transform:uppercase;line-height:1.4;color:var(--areia-pale,#F5EFE6);opacity:0.85}.nav-drawer-close{width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,0.08);border:none;border-radius:50%;color:var(--areia-pale,#F5EFE6);font-size:20px;cursor:pointer;transition:background 0.2s;-webkit-tap-highlight-color:transparent}.nav-drawer-close:hover{background:rgba(255,255,255,0.16)}.nav-drawer-links{list-style:none;padding:16px 0;margin:0;flex:1}.nav-drawer-links li{border-bottom:1px solid rgba(255,255,255,0.06)}.nav-drawer-links a{display:flex;align-items:center;gap:14px;padding:16px 24px;text-decoration:none;color:var(--areia-pale,#F5EFE6);font-size:15px;font-weight:500;letter-spacing:0.04em;text-transform:uppercase;transition:background 0.2s,padding-left 0.2s;-webkit-tap-highlight-color:transparent;min-height:56px}.nav-drawer-links a:hover,.nav-drawer-links a:active{background:rgba(255,255,255,0.08);padding-left:32px}.nav-drawer-links .drawer-icon{font-size:18px;width:24px;text-align:center;flex-shrink:0}.nav-drawer-cta{padding:24px;border-top:1px solid rgba(255,255,255,0.12)}.nav-drawer-cta a{display:flex;align-items:center;justify-content:center;gap:10px;padding:16px 24px;background:var(--amarelo,#E8C547);color:var(--azul1,#00405A);border-radius:999px;text-decoration:none;font-size:14px;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;transition:transform 0.2s,box-shadow 0.2s;-webkit-tap-highlight-color:transparent}.nav-drawer-cta a:active{transform:scale(0.97)}.nav-drawer-contact{padding:16px 24px 24px;color:rgba(245,239,230,0.6);font-size:12px;line-height:1.6}.nav-drawer-contact a{color:rgba(245,239,230,0.8);text-decoration:none}.mobile-bottom-nav{display:none;position:fixed;bottom:0;left:0;right:0;z-index:100;background:var(--azul1,#00405A);border-top:1px solid rgba(255,255,255,0.12);padding:0;padding-bottom:env(safe-area-inset-bottom,0px)}.mobile-bottom-nav-inner{display:grid;grid-template-columns:repeat(4,1fr);height:60px}.mobile-bottom-nav a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;text-decoration:none;color:rgba(245,239,230,0.65);font-size:10px;font-weight:600;letter-spacing:0.04em;text-transform:uppercase;transition:color 0.2s,background 0.2s;-webkit-tap-highlight-color:transparent;padding:8px 4px}.mobile-bottom-nav a:hover,.mobile-bottom-nav a:active{color:var(--amarelo,#E8C547);background:rgba(255,255,255,0.06)}.mobile-bottom-nav .bnav-icon{font-size:20px;line-height:1}@media (max-width:720px){body{padding-bottom:calc(60px+env(safe-area-inset-bottom,0px))}.nav-hamburger{display:flex}.nav-inner>.btn{display:none}.brand-word{display:none !important}.brand-logo{width:44px !important;height:44px !important}.nav-inner{padding-top:12px !important;padding-bottom:12px !important;gap:12px !important}.mobile-bottom-nav{display:block}.wa-widget{bottom:calc(72px+env(safe-area-inset-bottom,0px));right:16px}.wa-btn{width:52px;height:52px}.wa-preview{max-width:calc(100vw - 40px);right:0;bottom:64px}}@media (min-width:721px){.nav-hamburger{display:none !important}.nav-drawer{display:none !important}.nav-drawer-overlay{display:none !important}.mobile-bottom-nav{display:none !important}body{padding-bottom:0 !important}}html,body{overflow-x:hidden;max-width:100vw}input,select,textarea{font-size:16px !important}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}@media (max-width:720px){body{font-size:16px;line-height:1.65}h1{font-size:clamp(32px,9vw,56px) !important}h2{font-size:clamp(24px,7vw,40px) !important}h3{font-size:clamp(18px,5vw,28px) !important}.nav-inner{padding-left:max(var(--gutter,24px),env(safe-area-inset-left));padding-right:max(var(--gutter,24px),env(safe-area-inset-right))}section{padding:64px 0 !important}.wrap{padding:0 20px !important}.grid,[class*="-grid"]{grid-template-columns:1fr !important}img{max-width:100%;height:auto}table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}.btn,.btn-reservar,.wa-btn{min-height:48px;min-width:48px;display:inline-flex;align-items:center;justify-content:center}.hero{min-height:100svh}.hero h1{font-size:clamp(36px,10vw,64px) !important}.faq-question{font-size:15px !important;padding:18px 16px !important}.faq-answer{font-size:14px !important;padding:0 16px 16px !important}.reviews-grid{grid-template-columns:1fr !important;gap:16px !important}footer .wrap>div{flex-direction:column !important;gap:24px !important}.menu-grid,.cardapio-grid{grid-template-columns:1fr !important}.decorative-only{display:none !important}}@media (max-width:380px){:root{--gutter:16px}body{font-size:15px}.hero h1{font-size:clamp(28px,8vw,44px) !important}.mobile-bottom-nav-inner{height:56px}.mobile-bottom-nav a{font-size:9px}}@media (max-width:720px) and (orientation:landscape){.hero{min-height:100vw}.mobile-bottom-nav{display:none}body{padding-bottom:0}}@media (max-width:720px){.section-below-fold{content-visibility:auto;contain-intrinsic-size:0 400px}}:focus-visible{outline:3px solid var(--amarelo,#E8C547);outline-offset:2px}@media (hover:none){:focus:not(:focus-visible){outline:none}}.nav-wa-btn{display:none;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background:#25D366;color:#fff;text-decoration:none;flex-shrink:0;transition:transform 0.2s,box-shadow 0.2s;box-shadow:0 2px 8px rgba(37,211,102,0.4);-webkit-tap-highlight-color:transparent}.nav-wa-btn:hover{transform:scale(1.08);box-shadow:0 4px 14px rgba(37,211,102,0.55)}.nav-wa-btn svg{width:20px;height:20px;fill:white}@media (max-width:720px){.nav-wa-btn{display:flex}.wa-widget{display:none !important}}@media (min-width:721px){.nav-wa-btn{display:none !important}.wa-widget{display:flex !important}}.lang-switcher{position:relative;display:flex;align-items:center;gap:0;margin-right:8px;z-index:200}.lang-current{display:flex;align-items:center;gap:6px;padding:6px 10px;border-radius:8px;cursor:pointer;font-size:12px;font-weight:700;letter-spacing:0.08em;color:inherit;background:rgba(255,255,255,0.12);border:1px solid rgba(255,255,255,0.25);transition:background 0.2s,border-color 0.2s;white-space:nowrap;user-select:none}nav.top.scrolled .lang-current{background:rgba(0,64,90,0.08);border-color:rgba(0,64,90,0.2);color:var(--azul1)}.lang-current:hover{background:rgba(255,255,255,0.22)}nav.top.scrolled .lang-current:hover{background:rgba(0,64,90,0.14)}.lang-current .lang-arrow{font-size:8px;opacity:0.7;transition:transform 0.2s}.lang-switcher.open .lang-arrow{transform:rotate(180deg)}.lang-dropdown{position:absolute;top:calc(100%+8px);right:0;background:#fff;border-radius:12px;box-shadow:0 8px 32px rgba(0,0,0,0.15);overflow:hidden;min-width:130px;opacity:0;pointer-events:none;transform:translateY(-8px);transition:opacity 0.2s,transform 0.2s;z-index:300}.lang-switcher.open .lang-dropdown{opacity:1;pointer-events:all;transform:translateY(0)}.lang-dropdown a{display:flex;align-items:center;gap:10px;padding:12px 16px;font-size:13px;font-weight:600;color:var(--azul1,#00405A);text-decoration:none;transition:background 0.15s;border-bottom:1px solid #f0f0f0}.lang-dropdown a:last-child{border-bottom:none}.lang-dropdown a:hover{background:#f5f0e8}.lang-dropdown a.active{background:#e8f4f8;font-weight:700}.lang-dropdown .lang-flag{font-size:18px;line-height:1}.lang-dropdown .lang-name{flex:1}.lang-dropdown .lang-check{color:var(--azul1);font-size:12px}@media (max-width:720px){.lang-switcher{margin-right:4px}.lang-current{padding:5px 8px;font-size:11px}}.quick-answers-section{padding:4rem 1.5rem;background:var(--cream,#f8f4ed)}.qa-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-top:2rem}.qa-card{background:white;border-radius:12px;padding:1.5rem;box-shadow:0 2px 12px rgba(0,0,0,0.08);border-left:4px solid var(--gold,#C8973A)}.qa-card h3{font-size:1rem;font-weight:700;color:var(--navy,#00405A);margin-bottom:0.75rem;line-height:1.4}.qa-answer p{font-size:0.95rem;color:#444;line-height:1.6;margin:0}@media (max-width:600px){.qa-grid{grid-template-columns:1fr}.quick-answers-section{padding:2.5rem 1rem}

/* Nav inicial: fundo semitransparente escuro + texto branco (como na home) */
nav.top {
  background: rgba(0,0,0,0.35) !important;
}
nav.top .nav-inner {
  color: var(--areia-pale, #F5EDD6) !important;
}
nav.top .nav-links a,
nav.top .brand-word,
nav.top .lang-current,
nav.top .lang-current span {
  color: var(--areia-pale, #F5EDD6) !important;
}
.nav-rating-badge{
  display:flex !important;align-items:center !important;gap:6px !important;
  background:rgba(255,255,255,0.13) !important;
  border:1px solid rgba(255,255,255,0.28) !important;
  border-radius:20px !important;
  padding:5px 12px !important;
  text-decoration:none !important;
  color:var(--areia-pale,#f6efde) !important;
  transition:background 0.2s,border-color 0.2s;
}
.nav-rating-badge:hover{background:rgba(255,255,255,0.22);}
nav.top.scrolled .nav-rating-badge{
  background:rgba(0,64,90,0.08);
  border-color:rgba(0,64,90,0.2);
  color:var(--azul1,#00405A);
}
nav.top.scrolled .nav-rating-badge:hover{background:rgba(0,64,90,0.14);}
.nav-rating-stars{font-size:13px;font-weight:800;letter-spacing:-0.02em;color:#f5a623;}
nav.top.scrolled .nav-rating-stars{color:#c8830a;}
.nav-rating-count{font-size:10px;font-weight:600;opacity:0.75;letter-spacing:0.04em;}
@media(max-width:900px){.nav-rating-badge{display:none;}}
nav.top .nav-rating-badge,
nav.top .nav-rating-badge:visited,
nav.top .nav-rating-badge:link {
  color: var(--areia-pale, #f6efde) !important;
  text-decoration: none !important;
}
nav.top.scrolled .nav-rating-badge,
nav.top.scrolled .nav-rating-badge:visited {
  color: var(--azul1, #00405a) !important;
}
/* ── NAV DRAWER: cor clara garantida ── */
.nav-drawer-links a,
.nav-drawer-links a:visited,
.nav-drawer-links a:link,
.nav-drawer-links a:any-link { color: var(--areia-pale, #F5EFE6) !important; }
.nav-drawer-contact a,
.nav-drawer-contact a:visited { color: rgba(245,239,230,0.8) !important; }
.nav-drawer-logo,
.nav-drawer-logo:visited { color: var(--areia-pale, #F5EFE6) !important; }
.nav-drawer-close { color: var(--areia-pale, #F5EFE6) !important; }

nav.top .btn:hover {
  background: var(--azul1, #00405A) !important;
  color: var(--amarelo, #E8C547) !important;
  border-color: var(--azul1, #00405A) !important;
}
nav.top.scrolled {
  background: color-mix(in oklab, var(--paper, #F0E8D0) 92%, transparent) !important;
  backdrop-filter: blur(12px) !important;
}
nav.top.scrolled .nav-inner {
  color: var(--azul1, #00405A) !important;
}
nav.top.scrolled .nav-links a,
nav.top.scrolled .brand-word,
nav.top.scrolled .lang-current,
nav.top.scrolled .lang-current span {
  color: var(--azul1, #00405A) !important;
}
/* brand-word visível nas páginas internas */
.brand-word {
  display: block !important;
  font-family: "JetBrains Mono", monospace !important;
  font-weight: 500 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.20em !important;
  line-height: 1.35 !important;
  font-size: 11px !important;
  padding-left: 18px !important;
  border-left: 1px solid currentColor !important;
  opacity: 0.90 !important;
  min-width: 140px !important;
}
.brand-word b {
  font-weight: 700 !important;
  letter-spacing: 0.16em !important;
  font-size: 12px !important;
}
@media(max-width:900px) {
  .brand-word { display: none !important; }
}
/* Links visitados: sem cor roxa */
nav a:visited,
nav .nav-links a:visited,
nav .lang-dropdown a:visited {
  color: inherit !important;
}

/* ── MOBILE NAV FIX v2: cores corretas no mobile (nav superior + bottom nav) ── */
@media (max-width: 720px) {
  /* ── NAV SUPERIOR: fundo escuro + texto claro ── */
  nav.top,
  nav.top.scrolled {
    background: rgba(0, 20, 30, 0.92) !important;
    backdrop-filter: blur(12px) !important;
    -webkit-backdrop-filter: blur(12px) !important;
    border-bottom-color: rgba(255,255,255,0.08) !important;
    color-scheme: dark !important;
  }
  /* Todos os textos dentro do nav superior: cor clara */
  nav.top *,
  nav.top.scrolled * {
    color: #F5EDD6 !important;
  }
  /* Exceção: botão RESERVAR mantém cor escura no texto */
  nav.top .btn,
  nav.top.scrolled .btn,
  nav.top .btn-reservar,
  nav.top.scrolled .btn-reservar {
    color: #00405A !important;
    background: #E8C547 !important;
    border-color: #E8C547 !important;
  }
  /* Seletor de idioma: fundo semitransparente claro */
  nav.top .lang-current,
  nav.top.scrolled .lang-current {
    background: rgba(255,255,255,0.15) !important;
    border-color: rgba(255,255,255,0.3) !important;
    color: #F5EDD6 !important;
  }
  /* Logo: mostrar versão clara */
  nav.top .brand-logo.light,
  nav.top.scrolled .brand-logo.light {
    display: block !important;
  }
  nav.top .brand-logo.dark,
  nav.top.scrolled .brand-logo.dark {
    display: none !important;
  }
  /* Hamburguer: botão transparente, barrinhas claras */
  .nav-hamburger {
    color: #F5EDD6 !important;
    background-color: transparent !important;
    border-color: transparent !important;
  }
  .nav-hamburger span,
  .nav-hamburger::before,
  .nav-hamburger::after {
    background-color: #F5EDD6 !important;
    border-color: #F5EDD6 !important;
  }

  /* ── BOTTOM NAV: fundo azul escuro + texto claro ── */
  .mobile-bottom-nav {
    background: #00405A !important;
    border-top-color: rgba(255,255,255,0.15) !important;
    color-scheme: dark !important;
  }
  .mobile-bottom-nav a {
    color: rgba(245, 237, 214, 0.75) !important;
    background: transparent !important;
  }
  .mobile-bottom-nav a:hover,
  .mobile-bottom-nav a:active,
  .mobile-bottom-nav a:focus {
    color: #E8C547 !important;
    background: rgba(255,255,255,0.06) !important;
  }
  .mobile-bottom-nav .bnav-icon {
    color: rgba(245, 237, 214, 0.75) !important;
  }
  /* Botão RESERVAR no bottom nav: fundo amarelo + texto azul */
  .mobile-bottom-nav .bnav-reservar,
  .mobile-bottom-nav a.bnav-reservar {
    background: #E8C547 !important;
    color: #00405A !important;
  }
  .mobile-bottom-nav .bnav-reservar .bnav-icon,
  .mobile-bottom-nav a.bnav-reservar .bnav-icon {
    color: #00405A !important;
  }}

/* === Block 2/40 | hash:e4a93115 | 12 pages === */
/* ══════════════════════════════════════════
   MOBILE 95+ — UX 6 ESTRELAS
   Performance · Acessibilidade · Conversão
══════════════════════════════════════════ */

/* 1. Respeitar preferência de animação reduzida */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}

/* 2. Content-visibility para seções off-screen (melhora LCP) */
@media (max-width: 720px) {
  section:not(.hero):not(:first-of-type) {
    content-visibility: auto;
    contain-intrinsic-size: 0 500px;
  }
}

/* 3. Scroll snap nos cards de pratos (swipe nativo mobile) */
@media (max-width: 720px) {
  .pratos-estrela-grid,
  .momentos-grid {
    display: flex !important;
    flex-direction: row !important;
    overflow-x: auto !important;
    scroll-snap-type: x mandatory !important;
    -webkit-overflow-scrolling: touch !important;
    gap: 16px !important;
    padding: 0 20px 16px !important;
    scrollbar-width: none !important;
    grid-template-columns: unset !important;
  }
  .pratos-estrela-grid::-webkit-scrollbar,
  .momentos-grid::-webkit-scrollbar {
    display: none !important;
  }
  .prato-estrela-card,
  .momento-card,
  .momento {
    scroll-snap-align: start !important;
    flex: 0 0 85vw !important;
    max-width: 320px !important;
  }
}

/* 4. Scroll snap nas reviews (swipe nativo mobile) */
@media (max-width: 720px) {
  .reviews-grid,
  .mini-quotes {
    display: flex !important;
    flex-direction: row !important;
    overflow-x: auto !important;
    scroll-snap-type: x mandatory !important;
    -webkit-overflow-scrolling: touch !important;
    gap: 16px !important;
    padding: 0 20px 16px !important;
    scrollbar-width: none !important;
    grid-template-columns: unset !important;
  }
  .reviews-grid::-webkit-scrollbar,
  .mini-quotes::-webkit-scrollbar {
    display: none !important;
  }
  .review-card,
  .mini-quote {
    scroll-snap-align: start !important;
    flex: 0 0 85vw !important;
    max-width: 320px !important;
  }
}

/* 5. Microinterações: feedback tátil ao tocar */
@media (hover: none) and (pointer: coarse) {
  .btn:active,
  .momento-cta:active,
  .mobile-bottom-nav a:active,
  .nav-drawer-links a:active {
    transform: scale(0.96) !important;
    opacity: 0.85 !important;
    transition: transform 0.1s ease, opacity 0.1s ease !important;
  }
  /* Ripple effect nos botões principais */
  .btn, .momento-cta {
    position: relative !important;
    overflow:visible !important;
  }
}

/* 6. Hero mobile: CTA único e grande */
@media (max-width: 720px) {
  .hero-ctas {
    flex-direction: column !important;
    gap: 12px !important;
    width: 100% !important;
  }
  .hero-ctas .btn {
    width: 100% !important;
    max-width: 340px !important;
    font-size: 16px !important;
    padding: 18px 24px !important;
    min-height: 56px !important;
    border-radius: 8px !important;
  }
  .hero-ctas .btn.ghost {
    padding: 14px 24px !important;
    min-height: 48px !important;
  }
}

/* 7. Sticky CTA bar (aparece após scroll do hero) */
.sticky-cta-bar {
  display: none;
  position: fixed;
  bottom: calc(60px + env(safe-area-inset-bottom, 0px));
  left: 0;
  right: 0;
  z-index: 45;
  background: var(--azul1, #00405A);
  padding: 10px 20px;
  box-shadow: 0 -2px 12px rgba(0,0,0,0.3);
  transform: translateY(100%);
  transition: transform 0.3s ease;
}
.sticky-cta-bar.visible {
  transform: translateY(0);
}
.sticky-cta-bar a {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  background: var(--amarelo, #C8973A) !important;
  color: var(--azul1, #00405A) !important;
  font-weight: 700 !important;
  font-size: 15px !important;
  padding: 12px 24px !important;
  border-radius: 6px !important;
  text-decoration: none !important;
  min-height: 48px !important;
  width: 100% !important;
}
@media (max-width: 720px) {
  .sticky-cta-bar { display: block; }
}

/* 8. Indicador de swipe (hint visual) */
@media (max-width: 720px) {
  .swipe-hint {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 11px;
    color: var(--azul2, #5a7a8a);
    letter-spacing: 0.1em;
    text-transform: uppercase;
    margin-bottom: 8px;
    padding-left: 20px;
  }
  .swipe-hint::before {
    content: "← →";
    font-size: 13px;
  }
}

/* 9. FAQ accordion animação suave */
.faq-answer {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.35s cubic-bezier(0.4, 0, 0.2, 1),
              padding 0.35s ease !important;
}
.faq-item.open .faq-answer {
  max-height: 600px;
}

/* 10. Melhorar legibilidade do eyebrow em mobile */
@media (max-width: 720px) {
  .eyebrow {
    font-size: 10px !important;
    letter-spacing: 0.2em !important;
  }
  /* Seções com padding adequado */
  section {
    padding: 72px 0 !important;
  }
  /* Hero sem padding extra */
  .hero {
    padding: 0 !important;
  }
}

/* 11. Imagens com aspect-ratio para evitar CLS */
.hero-photo, .momento-photo img, .chef-photo {
  aspect-ratio: attr(width) / attr(height);
}

/* 12. Melhorar contraste dos textos em mobile */
@media (max-width: 720px) {
  .faq-question {
    font-size: 15px !important;
    line-height: 1.5 !important;
    padding: 20px 16px !important;
  }
  .faq-answer p, .faq-answer li {
    font-size: 14px !important;
    line-height: 1.7 !important;
  }
  /* Menu items mais legíveis */
  .menu-item-name {
    font-size: 16px !important;
  }
  .menu-item-desc {
    font-size: 13px !important;
    line-height: 1.6 !important;
  }
  .menu-item-price {
    font-size: 15px !important;
    font-weight: 700 !important;
  }
}

/* 13. Scroll suave com momentum no iOS */
.pratos-estrela-grid,
.momentos-grid,
.reviews-grid,
.mini-quotes {
  -webkit-overflow-scrolling: touch;
}

/* 14. Focus visible para acessibilidade */
:focus-visible {
  outline: 3px solid var(--amarelo, #C8973A) !important;
  outline-offset: 2px !important;
  border-radius: 4px !important;
}

/* 15. Skeleton loader para imagens (evita CLS) */
/* Skeleton loader apenas para imagens de conteúdo (não SVGs, logos ou ícones) */
img[loading="lazy"]:not([src*=".svg"]):not(.brand-logo):not(.hero-logo):not(.crest-logo):not(.nav-drawer-logo img):not([src*="logo"]):not([src*="icon"]) {
  background: linear-gradient(90deg, #f0f0f0 25%, #e0e0e0 50%, #f0f0f0 75%);
  background-size: 200% 100%;
}
img[loading="lazy"].loaded {
  background: none;
}
/* Garantir que logos SVG nunca tenham fundo */
.hero-logo, .brand-logo, .crest-logo, img[src*=".svg"] {
  background: none !important;
  background-image: none !important;
  animation: none !important;
}

/* === Block 3/40 | hash:35fc11bf | 12 pages === */
/* ══════════════════════════════════════════
   UX FIXES — Legibilidade e Acessibilidade
══════════════════════════════════════════ */

/* Hero bottom bar: legível em mobile */
@media (max-width: 720px) {
  .hero-bottom-bar {
    font-size: 11px !important;
    letter-spacing: 0.18em !important;
    gap: 12px !important;
    padding: 12px 20px !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
  }
  /* Separadores do hero-bottom-bar */
  .hero-bottom-bar .sep {
    display: none !important;
  }
}

/* Melhorar contraste do hero overlay */
@media (max-width: 720px) {
  .hero::before,
  .hero-overlay {
    background: linear-gradient(
      to bottom,
      rgba(0, 40, 58, 0.35) 0%,
      rgba(0, 40, 58, 0.55) 50%,
      rgba(0, 40, 58, 0.75) 100%
    ) !important;
  }
}

/* Cards de menu: melhor espaçamento mobile */
@media (max-width: 720px) {
  .menu-item {
    padding: 16px !important;
    border-radius: 8px !important;
  }
  .menu-item-badge {
    font-size: 9px !important;
    padding: 3px 8px !important;
    letter-spacing: 0.12em !important;
  }
  /* Preço alinhado à direita */
  .menu-item-footer {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    margin-top: 8px !important;
  }
}

/* Skip navigation (acessibilidade) */
.skip-nav {
  position: absolute;
  top: -100%;
  left: 0;
  background: var(--amarelo, #C8973A);
  color: var(--azul1, #00405A);
  padding: 12px 20px;
  font-weight: 700;
  font-size: 14px;
  z-index: 9999;
  text-decoration: none;
  border-radius: 0 0 8px 0;
}
.skip-nav:focus {
  top: 0;
}

/* Melhorar tap highlight em iOS */
* {
  -webkit-tap-highlight-color: rgba(200, 151, 58, 0.2);
}

/* Botões do drawer: melhor espaçamento */
@media (max-width: 720px) {
  .nav-drawer-links a {
    padding: 14px 20px !important;
    font-size: 16px !important;
    border-bottom: 1px solid rgba(255,255,255,0.08) !important;
  }
  .nav-drawer-links a:last-child {
    border-bottom: none !important;
  }
}

/* Melhorar legibilidade das stats */
@media (max-width: 720px) {
  .stat-number {
    font-size: clamp(40px, 12vw, 64px) !important;
  }
  .stat-label {
    font-size: 12px !important;
    letter-spacing: 0.15em !important;
  }
}

/* Seção de pratos estrela: padding lateral adequado */
@media (max-width: 720px) {
  .pratos-estrela-section .wrap {
    padding: 0 !important;
  }
  .pratos-estrela-section h2,
  .pratos-estrela-section .eyebrow {
    padding: 0 20px !important;
  }
}

/* Reviews: padding lateral adequado */
@media (max-width: 720px) {
  .reviews-section .wrap,
  .mini-quotes-section .wrap {
    padding: 0 !important;
  }
  .reviews-section h2,
  .reviews-section .eyebrow,
  .mini-quotes-section h2,
  .mini-quotes-section .eyebrow {
    padding: 0 20px !important;
  }
}

/* Melhorar visibilidade do seletor de idioma */
@media (max-width: 720px) {
  .lang-switcher {
    font-size: 12px !important;
  }
  .lang-switcher-btn {
    padding: 6px 10px !important;
    min-height: 36px !important;
  }
}

/* === Block 4/40 | hash:ba2d5c96 | 34 pages === */
/* ══════════════════════════════════════════
   PAGE HERO — Imagem de fundo com overlay
   Injetado via fix_page_hero.py
══════════════════════════════════════════ */
.page-hero {
  position: relative;
  min-height: 75vh;
  display: flex; flex-direction: column;
  justify-content: flex-end;
  color: var(--areia-pale, #f6efde);
  overflow: hidden;
  isolation: isolate;
  padding-bottom: 88px;
}
.page-hero-photo,
picture.page-hero-photo {
  position: absolute; inset: 0;
  width: 100%; height: 100%;
  object-fit: cover;
  object-position: center 45%;
  z-index: -2;
}
picture.page-hero-photo img {
  position: absolute; inset: 0;
  width: 100%; height: 100%;
  object-fit: cover;
  object-position: center 45%;
}
.page-hero-overlay {
  position: absolute; inset: 0;
  background:
    linear-gradient(180deg,
      rgba(0,32,46,0.55) 0%,
      rgba(0,32,46,0.20) 35%,
      rgba(0,32,46,0.55) 75%,
      rgba(0,32,46,0.90) 100%);
  z-index: -1;
}
.page-hero-content {
  padding: 200px var(--gutter, 64px) 0;
  max-width: var(--max, 1440px);
  width: 100%;
  margin: 0 auto;
}
.page-hero-content .crumbs {
  font-family: "JetBrains Mono", monospace;
  font-size: 11px;
  letter-spacing: 0.24em;
  text-transform: uppercase;
  color: rgba(237,226,201,0.7);
  margin-bottom: 28px;
  display: flex; gap: 10px; align-items: center;
}
.page-hero-content .crumbs a {
  color: rgba(237,226,201,0.7);
  text-decoration: none;
  transition: color .2s;
}
.page-hero-content .crumbs a:hover { color: var(--amarelo, #f59b1e); }
.page-hero-content .crumbs .sep { opacity: 0.5; }
.page-hero-content .crumbs .here { color: var(--amarelo, #f59b1e); font-weight: 600; }
.page-hero-content h1 {
  font-family: "Catamaran", sans-serif;
  font-weight: 200;
  font-size: clamp(56px, 7.6vw, 124px);
  line-height: 0.95;
  letter-spacing: -0.025em;
  margin: 0 0 28px;
  color: var(--areia-pale, #f6efde);
  max-width: 18ch;
}
.page-hero-content h1 .serif {
  font-style: italic;
  font-weight: 500;
  color: var(--amarelo, #f59b1e);
  display: inline-block;
}
.page-hero-content h1 .strong { font-weight: 700; }
.page-hero-content .lede {
  font-size: 21px;
  line-height: 1.45;
  color: rgba(237,226,201,0.92);
  max-width: 580px;
  margin: 0 0 36px;
  font-weight: 300;
}
.page-hero-content .ctas { display: flex; gap: 14px; flex-wrap: wrap; }
@media (max-width: 960px) {
}
@media (max-width: 720px) {
}

/* Foto de fundo do hero — sem skeleton loading */
picture.page-hero-photo {
  position: absolute; inset: 0;
  width: 100%; height: 100%;
  z-index: -2;
  display: block;
}
picture.page-hero-photo img,
.page-hero-photo {
  position: absolute; inset: 0;
  width: 100%; height: 100%;
  object-fit: cover;
  object-position: center 30%;
  z-index: -2;
  background: none !important;
  animation: none !important;
}

/* === Block 5/40 | hash:954d4f67 | 25 pages === */
/* ══════════════════════════════════════════
   NAVBAR CSS — Injetado via fix_nav_css.py
   (Páginas internas não carregam style.css)
══════════════════════════════════════════ */
/* Brand / Logo */
.brand-mark {
  display: flex; align-items: center; gap: 18px;
  text-decoration: none; color: inherit;
}
.brand-logo {
  width: 56px; height: 56px; display: block;
  flex-shrink: 0;
  transition: opacity .2s;
}
.brand-logo.dark { display: none; }
nav.top.scrolled .brand-logo.light { display: none; }
nav.top.scrolled .brand-logo.dark  { display: block; }
.brand-word {
  font-family: "JetBrains Mono", monospace;
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: 0.22em;
  line-height: 1.3;
  font-size: 10px;
  padding-left: 18px;
  border-left: 1px solid currentColor;
  opacity: 0.85;
}
.brand-word b {
  font-weight: 600;
  letter-spacing: 0.18em;
  font-size: 11px;
}
/* Nav links */
.nav-links {
  display: flex; gap: 36px; list-style: none; padding: 0; margin: 0;
}
.nav-links a {
  font-family: "JetBrains Mono", monospace;
  font-size: 10px; letter-spacing: 0.22em;
  text-transform: uppercase; font-weight: 500;
  text-decoration: none; color: inherit; opacity: 0.85;
  transition: opacity .2s;
}
.nav-links a:hover { opacity: 1; }
/* Nav inner layout */
.nav-inner {
  max-width: var(--max, 1440px);
  margin: 0 auto;
  padding: 0 var(--gutter, 64px);
  display: flex; align-items: center;
  gap: 48px; height: 100%;
}
/* Topnav */
nav.top {
  position: fixed; top: 0; left: 0; right: 0;
  z-index: 900;
  transition: background .3s, border-color .3s, backdrop-filter .3s;
  border-bottom: 1px solid transparent;
  background: rgba(0,0,0,0.35);
}
nav.top .nav-inner {
  color: var(--areia-pale, #F5EDD6);
}
nav.top .nav-links a {
  color: inherit;
}

nav.top.scrolled {
  background: rgba(246, 239, 222, 0.95);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border-bottom: 1px solid rgba(0,64,90,0.12);
}
nav.top.scrolled .nav-inner {
  color: var(--azul1, #00405a);
}
nav.top.scrolled .nav-links a {
  color: var(--azul1, #00405a);
}
nav.top.scrolled .btn {
  background: var(--laranja, #E8672A);
  color: #fff;
}

nav.top .btn {
  background: var(--amarelo, #E8C547) !important;
  color: var(--azul1, #00405A) !important;
  border-color: var(--amarelo, #E8C547) !important;
  font-size: 13px !important;
  padding: 13px 24px !important;
  border-radius: 999px !important;
  font-weight: 700 !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
  min-height: unset !important;
  min-width: unset !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  white-space: nowrap !important;
  box-sizing: content-box !important;
  overflow: visible !important;
  height: auto !important;
  line-height: 1.2 !important;
}
nav.top.scrolled .btn {
  background: var(--amarelo, #E8C547) !important;
  color: var(--azul1, #00405A) !important;
  border-color: var(--amarelo, #E8C547) !important;
}

/* === Block 6/40 | hash:11169c21 | 6 pages === */
.seo-vh{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* === Block 7/40 | hash:da4e9b3c | 19 pages === */
/* ── Hero Eyebrow nas subpáginas ── */
.page-hero-content .eyebrow.hero-eyebrow {
  color: rgba(246, 239, 222, 0.75);
  margin-bottom: 20px;
  font-size: 10px;
  letter-spacing: 0.22em;
}
.page-hero-content .eyebrow.hero-eyebrow::before {
  background: var(--amarelo, #d4a017);
}

/* === Block 8/40 | hash:29f29b3e | 18 pages === */
/* Design fallback 95 */
.page-hero{background:linear-gradient(135deg,#071a23 0%,#0d1f29 48%,#123241 100%);}
.page-hero-photo img,.page-hero-photo{filter:saturate(1.02) contrast(1.02);}
@media (min-width: 961px){.page-hero{min-height:72vh}.page-hero-content{padding-top:160px}}

/* === Block 9/40 | hash:00b3a281 | 6 pages === */
.topic-authority nav a{display:inline-flex;align-items:center;padding:10px 15px;border:1px solid rgba(0,64,90,.18);border-radius:999px;text-decoration:none;color:var(--azul1,#00405a);font-weight:700;font-size:13px;background:rgba(255,255,255,.35)}
.topic-authority nav a:hover{background:var(--amarelo,#f59b1e);border-color:var(--amarelo,#f59b1e)}

/* === Block 10/40 | hash:451f7de7 | 61 pages === */
/* FINAL DESIGN LOCK — linha laranja, botões e frames no padrão visual da home */
@media (min-width:961px){
  header.hero .hero-content .eyebrow.hero-eyebrow,
  header.page-hero .page-hero-content .eyebrow.hero-eyebrow{position:absolute!important;top:96px!important;left:clamp(78px,5.5vw,112px)!important;transform:none!important;margin:0!important;width:calc(100vw - clamp(78px,5.5vw,112px) - 250px)!important;max-width:none!important;white-space:nowrap!important;overflow:hidden!important;display:flex!important;align-items:center!important;gap:14px!important;font-family:"JetBrains Mono",ui-monospace,monospace!important;font-size:9px!important;line-height:1!important;letter-spacing:.31em!important;font-weight:700!important;text-transform:uppercase!important;color:var(--amarelo,#f59b1e)!important;z-index:20!important;border:0!important;outline:0!important;box-shadow:none!important;}
  header.hero .hero-content .eyebrow.hero-eyebrow:before,
  header.page-hero .page-hero-content .eyebrow.hero-eyebrow:before{content:""!important;display:inline-block!important;flex:0 0 34px!important;width:34px!important;height:2px!important;background:var(--amarelo,#f59b1e)!important;}
}

/* Base comum dos botões da hero */
.hero-ctas a,.hero-ctas button,.ctas a,.ctas button,.btn,a.btn,button.btn,.btn-secondary,a.btn-secondary{min-height:60px!important;height:60px!important;padding:0 36px!important;border-radius:999px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:0!important;font-family:"JetBrains Mono",ui-monospace,monospace!important;font-size:14px!important;line-height:1!important;font-weight:900!important;letter-spacing:.13em!important;text-transform:uppercase!important;text-align:center!important;text-decoration:none!important;white-space:nowrap!important;overflow:visible!important;}
.btn:after,.btn:before,a.btn:after,button.btn:after,.btn-secondary:after,.btn-secondary:before,.hero-ctas a:after,.ctas a:after{content:none!important;display:none!important;}

/* Somente reserva / TagMe fica laranja */
.hero-ctas a[href*="tagme"],.hero-ctas a[href*="reserv"],.ctas a[href*="tagme"],.ctas a[href*="reserv"],a.btn[href*="tagme"],a.btn[href*="reserv"],.bnav-reservar{border:1px solid var(--amarelo,#f59b1e)!important;background:var(--amarelo,#f59b1e)!important;color:#fff!important;box-shadow:0 9px 0 rgba(0,64,90,.20),0 16px 30px rgba(0,32,46,.18)!important;}

/* Demais botões ficam vazados; no hover invertem */
.hero-ctas a:not([href*="tagme"]):not([href*="reserv"]),.ctas a:not([href*="tagme"]):not([href*="reserv"]),.hero-ctas button:not([data-primary]),.ctas button:not([data-primary]),.btn-secondary,a.btn-secondary{color:var(--areia-pale,#f6efde)!important;border:1px solid rgba(246,239,222,.82)!important;background:rgba(0,32,46,.18)!important;box-shadow:inset 0 0 0 1px rgba(246,239,222,.08),0 10px 26px rgba(0,32,46,.18)!important;backdrop-filter:blur(6px)!important;-webkit-backdrop-filter:blur(6px)!important;}
.hero-ctas a:not([href*="tagme"]):not([href*="reserv"]):hover,.ctas a:not([href*="tagme"]):not([href*="reserv"]):hover,.btn-secondary:hover,a.btn-secondary:hover{background:rgba(246,239,222,.94)!important;border-color:rgba(246,239,222,.98)!important;color:var(--azul1,#00405a)!important;box-shadow:0 12px 28px rgba(0,32,46,.24)!important;}

/* Topo: reservar permanece laranja, sem seta */
nav.top .btn,nav.top a.btn[href*="tagme"]{min-height:60px!important;height:60px!important;width:188px!important;min-width:188px!important;padding:0!important;letter-spacing:.16em!important;border:1px solid var(--amarelo,#f59b1e)!important;background:var(--amarelo,#f59b1e)!important;color:#fff!important;}

/* Frames/pílulas acima dos botões no padrão home */
header.hero .hero-chips,header.page-hero .hero-chips{display:flex!important;flex-wrap:wrap!important;align-items:center!important;gap:8px!important;margin:0!important;border:0!important;outline:0!important;box-shadow:none!important;}
header.hero .hero-chips span,header.hero .hero-chips a,header.page-hero .hero-chips span,header.page-hero .hero-chips a{min-height:36px!important;height:36px!important;padding:0 17px!important;border-radius:999px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:7px!important;background:rgba(0,32,46,.46)!important;border:1px solid rgba(246,239,222,.30)!important;color:var(--areia-pale,#f6efde)!important;box-shadow:0 8px 22px rgba(0,32,46,.14)!important;backdrop-filter:blur(7px)!important;-webkit-backdrop-filter:blur(7px)!important;font-family:Catamaran,Verdana,system-ui,sans-serif!important;font-size:14px!important;line-height:1!important;font-weight:700!important;text-decoration:none!important;white-space:nowrap!important;}

/* Blindagem contra molduras cinzas */
header.hero,header.page-hero,header.hero .hero-content,header.page-hero .page-hero-content,header.hero .hero-photo,header.page-hero .page-hero-photo,header.hero .hero-overlay,header.page-hero .page-hero-overlay{border:0!important;outline:0!important;box-shadow:none!important;}

@media(max-width:960px){.hero-ctas{flex-wrap:wrap!important;gap:10px!important;}.hero-ctas a,.hero-ctas button,.ctas a,.ctas button,.btn,a.btn,button.btn,.btn-secondary,a.btn-secondary{min-height:54px!important;height:54px!important;padding:0 20px!important;font-size:12px!important;letter-spacing:.08em!important;white-space:nowrap!important;}nav.top .btn,nav.top a.btn[href*="tagme"]{width:auto!important;min-width:124px!important;height:46px!important;min-height:46px!important;font-size:9.5px!important;}header.hero .hero-chips span,header.hero .hero-chips a,header.page-hero .hero-chips span,header.page-hero .hero-chips a{height:34px!important;min-height:34px!important;padding:0 13px!important;font-size:12px!important;}}

/* === Block 11/40 | hash:bceab4e2 | 17 pages === */
.ec-sprint2-geo{background:#f6efde;color:#00405a;border-top:1px solid rgba(0,64,90,.10);border-bottom:1px solid rgba(0,64,90,.10);padding:48px 0;font-family:Catamaran,Verdana,system-ui,sans-serif}
.ec-sprint2-geo .ec-wrap{max-width:1180px;margin:0 auto;padding:0 24px}
.ec-sprint2-geo .ec-kicker{font-family:'JetBrains Mono',ui-monospace,monospace;font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:#527f8f;margin-bottom:12px}
.ec-sprint2-geo h2{font-size:clamp(26px,3vw,42px);line-height:1.05;margin:0 0 14px;font-weight:700;letter-spacing:-.02em;color:#00405a}
.ec-sprint2-geo p{font-size:18px;line-height:1.55;max-width:860px;margin:0;color:#485156}
.ec-sprint2-geo strong{color:#00405a}
.ec-sprint2-geo .ec-links{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}
.ec-sprint2-geo .ec-links a{display:inline-flex;align-items:center;gap:8px;border:1px solid rgba(0,64,90,.18);border-radius:999px;padding:10px 15px;text-decoration:none;color:#00405a;background:rgba(255,255,255,.45);font-size:14px;font-weight:700}
.ec-sprint2-geo .ec-links a:hover{background:#f59b1e;color:#00405a;border-color:#f59b1e}
@media(max-width:760px){.ec-sprint2-geo{padding:34px 0}.ec-sprint2-geo p{font-size:16px}.ec-sprint2-geo .ec-links a{width:100%;justify-content:center}}

/* === Block 12/40 | hash:fe033d13 | 29 pages === */
/* Idiomas: abre para baixo, sem cortar fora da página */
nav.top,
nav.top .nav-inner,
nav.top .lang-switcher{
  overflow:visible!important;
}
nav.top .lang-switcher{
  position:relative!important;
  z-index:4000!important;
}
nav.top .lang-dropdown{
  position:absolute!important;
  top:calc(100% + 8px)!important;
  bottom:auto!important;
  right:0!important;
  left:auto!important;
  transform:none!important;
  min-width:190px!important;
  max-width:min(240px,calc(100vw - 24px))!important;
  max-height:calc(100vh - 96px)!important;
  overflow-y:auto!important;
  z-index:99999!important;
  border-radius:0 0 16px 16px!important;
  box-shadow:0 18px 42px rgba(0,32,46,.26)!important;
}
nav.top .lang-switcher:hover .lang-dropdown,
nav.top .lang-switcher:focus-within .lang-dropdown{
  transform:none!important;
}
@media(max-width:960px){
  nav.top .lang-dropdown{
    right:auto!important;
    left:0!important;
    top:calc(100% + 6px)!important;
    max-width:calc(100vw - 24px)!important;
  }
}

/* Como Chegar: sem pin no menu principal */
nav.top .nav-links .drawer-icon,
nav.top a[href*="como-chegar"] .drawer-icon,
nav.top a[href*="how-to-get-there"] .drawer-icon,
nav.top a[href*="como-llegar"] .drawer-icon{
  display:none!important;
}

/* Google Reviews compacto no topo — altura igual ao idioma */
nav.top .nav-rating-badge.google-review-badge{
  width:auto!important;
  min-width:136px!important;
  height:36px!important;
  min-height:36px!important;
  max-height:36px!important;
  padding:4px 10px!important;
  border-radius:12px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:0!important;
  text-decoration:none!important;
  background:rgba(246,239,222,.13)!important;
  border:1px solid rgba(246,239,222,.30)!important;
  color:rgba(246,239,222,.94)!important;
  backdrop-filter:blur(9px)!important;
  -webkit-backdrop-filter:blur(9px)!important;
}
nav.top .lang-current{
  min-height:36px!important;
  height:36px!important;
}
nav.top.scrolled .nav-rating-badge.google-review-badge{
  background:rgba(0,64,90,.06)!important;
  border-color:rgba(0,64,90,.18)!important;
  color:#00405a!important;
}
.google-review-badge .google-g{display:none!important;}
.google-review-badge .gr-copy{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:center!important;
  gap:1px!important;
  min-width:0!important;
}
.google-review-badge .gr-label{
  font-family:Catamaran,Verdana,system-ui,sans-serif!important;
  font-size:8.3px!important;
  line-height:1!important;
  font-weight:700!important;
  letter-spacing:.015em!important;
  text-transform:none!important;
  opacity:.90!important;
  white-space:nowrap!important;
}
.google-review-badge .gr-row{
  display:flex!important;
  align-items:center!important;
  gap:3px!important;
  line-height:1!important;
  white-space:nowrap!important;
}
.google-review-badge .gr-score{
  font-family:Catamaran,Verdana,system-ui,sans-serif!important;
  font-size:11.5px!important;
  line-height:.95!important;
  font-weight:700!important;
  letter-spacing:0!important;
}
.google-review-badge .gr-stars{
  color:#fbbc04!important;
  font-size:9px!important;
  letter-spacing:-.015em!important;
  line-height:1!important;
}
.google-review-badge .gr-count{
  font-family:Catamaran,Verdana,system-ui,sans-serif!important;
  font-size:8px!important;
  line-height:1!important;
  font-weight:400!important;
  opacity:.84!important;
  letter-spacing:0!important;
  margin-left:1px!important;
}

/* Ajuste visual pedido: Reviews + Idioma mais próximos entre si e do Reservar, sem mover o botão */
@media(min-width:1181px){
  nav.top .nav-rating-badge.google-review-badge{
    transform:translateX(28px)!important;
  }
  nav.top .lang-switcher{
    transform:translateX(16px)!important;
  }
}

/* Botão Reservar do topo: efeito pulsante semelhante ao CTA principal */
@keyframes ecTopReservePulse{
  0%,100%{box-shadow:0 9px 0 rgba(0,64,90,.22),0 16px 30px rgba(0,32,46,.22),0 0 0 rgba(232,160,32,0)}
  45%{box-shadow:0 9px 0 rgba(0,64,90,.18),0 18px 34px rgba(0,32,46,.26),0 0 0 8px rgba(232,160,32,.16)}
  70%{box-shadow:0 9px 0 rgba(0,64,90,.18),0 18px 34px rgba(0,32,46,.22),0 0 0 14px rgba(232,160,32,0)}
}
nav.top .btn,
nav.top a.btn[href*="tagme"]{
  position:relative!important;
  overflow:hidden!important;
  animation:ecTopReservePulse 2.8s ease-in-out infinite!important;
}
nav.top .btn::before,
nav.top a.btn[href*="tagme"]::before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  border-radius:inherit!important;
  background:linear-gradient(110deg,transparent 0%,rgba(255,255,255,.28) 42%,transparent 68%)!important;
  transform:translateX(-130%)!important;
  animation:ecTopReserveShine 3.4s ease-in-out infinite!important;
  pointer-events:none!important;
}
@keyframes ecTopReserveShine{
  0%,45%{transform:translateX(-130%)}
  70%{transform:translateX(130%)}
  100%{transform:translateX(130%)}
}
@media(prefers-reduced-motion:reduce){
  nav.top .btn,
  nav.top a.btn[href*="tagme"],
  nav.top .btn::before,
  nav.top a.btn[href*="tagme"]::before{animation:none!important}
}

@media(max-width:1180px){
  nav.top .nav-rating-badge.google-review-badge{
    min-width:72px!important;
    width:72px!important;
    height:32px!important;
    min-height:32px!important;
    max-height:32px!important;
    padding:4px 7px!important;
  }
  nav.top .lang-current{
    min-height:32px!important;
    height:32px!important;
  }
  .google-review-badge .gr-label,
  .google-review-badge .gr-count{display:none!important;}
  .google-review-badge .gr-score{font-size:11.5px!important;}
  .google-review-badge .gr-stars{font-size:9px!important;}
}

/* === Block 13/40 | hash:3a06b576 | 85 pages === */
@media (min-width: 961px) {
  .hero .hero-eyebrow,
  .page-hero .hero-eyebrow {
    position: relative !important;
    transform: translate(37px, -6px) !important;
    will-change: transform;
  }
}

/* === Block 14/40 | hash:a2aac2ed | 85 pages === */
/* Topo: botão Reservar com efeito do CTA principal, sem seta e menor */
nav.top .btn,
nav.top .nav-inner > .btn{
  min-width:148px!important;
  width:auto!important;
  max-width:164px!important;
  justify-content:center!important;
  text-align:center!important;
  padding-left:22px!important;
  padding-right:22px!important;
  gap:0!important;
  box-shadow:0 9px 0 rgba(0,64,90,.22),0 16px 30px rgba(0,32,46,.22)!important;
}
nav.top .btn::after,
nav.top .nav-inner > .btn::after{content:none!important;display:none!important}
@media(max-width:1180px) and (min-width:961px){
  nav.top .nav-inner{grid-template-columns:68px minmax(0,1fr) 136px 62px 148px!important}
  nav.top .btn,nav.top .nav-inner > .btn{min-width:118px!important;max-width:148px!important;padding-left:14px!important;padding-right:14px!important}
}
/* Âncoras: evitam links quebrados e compensam header fixo */
.ec-anchor-target{display:block;position:relative;top:-118px;visibility:hidden;height:0;width:0;overflow:hidden}
/* Blocos R2D2/AIO */
.ec-r2d2-depth,.ec-sprint4-faq,.ec-sprint4-steps{background:#f6efde;color:#00405a;padding:64px 0;border-top:1px solid rgba(0,64,90,.10)}
.ec-r2d2-depth .wrap,.ec-sprint4-faq .wrap,.ec-sprint4-steps .wrap{max-width:1120px;margin:0 auto;padding:0 24px}
.ec-r2d2-depth h2,.ec-sprint4-faq h2,.ec-sprint4-steps h2{font-size:clamp(30px,3.6vw,50px);line-height:1.05;margin:0 0 20px;color:#00405a}
.ec-r2d2-depth h3{font-size:24px;line-height:1.15;margin:28px 0 8px;color:#00405a}
.ec-r2d2-depth p,.ec-sprint4-faq p,.ec-sprint4-steps li{font-size:17px;line-height:1.62;color:#485156}
.ec-r2d2-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px;margin:28px 0}
.ec-r2d2-card,.ec-sprint4-faq details{background:#fff;border:1px solid rgba(0,64,90,.12);border-radius:20px;padding:22px}
.ec-r2d2-card strong{display:block;color:#00405a;margin-bottom:6px}
.ec-r2d2-depth table{width:100%;border-collapse:collapse;margin:28px 0;background:#fff;border-radius:18px;overflow:hidden}
.ec-r2d2-depth th,.ec-r2d2-depth td{padding:14px 16px;border-bottom:1px solid rgba(0,64,90,.10);text-align:left;vertical-align:top}
.ec-r2d2-depth th{background:#e9ddc2;color:#00405a}
.ec-sprint4-faq details{margin:12px 0}
.ec-sprint4-faq summary{font-weight:800;cursor:pointer;color:#00405a}
.ec-sprint4-steps ol{background:#fff;border:1px solid rgba(0,64,90,.12);border-radius:20px;padding:26px 26px 26px 48px}
@media(max-width:760px){.ec-r2d2-depth,.ec-sprint4-faq,.ec-sprint4-steps{padding:42px 0}}

/* === Block 15/40 | hash:d7662892 | 82 pages === */
/* Home top exact replication lock — mesma base visual em home e subpáginas */
html,body{overflow-x:hidden!important;}
nav.top,nav.top *{box-sizing:border-box!important;}
@media (min-width:961px){
  nav.top:not(.scrolled){position:fixed!important;top:0!important;left:0!important;right:0!important;z-index:50!important;background:linear-gradient(180deg,rgba(0,32,46,.40) 0%,rgba(0,32,46,.24) 58%,rgba(0,32,46,0) 100%)!important;border:0!important;box-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;}
  nav.top .nav-inner{width:100%!important;max-width:100%!important;margin:0!important;padding:14px var(--gutter,64px)!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:32px!important;color:var(--areia-pale,#f6efde)!important;}
  nav.top .brand-mark{display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:18px!important;flex:0 0 auto!important;text-decoration:none!important;color:inherit!important;}
  nav.top .brand-logo{width:68px!important;height:68px!important;object-fit:contain!important;display:block!important;}
  nav.top .brand-logo.light{display:block!important;}nav.top .brand-logo.dark{display:none!important;}nav.top .brand-word{display:none!important;}
  nav.top .nav-links{display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:28px!important;margin:0!important;padding:0!important;list-style:none!important;min-width:0!important;overflow:visible!important;}
  nav.top .nav-links a,nav.top .nav-links a:link,nav.top .nav-links a:visited{font-family:"JetBrains Mono",ui-monospace,monospace!important;font-size:12px!important;line-height:1!important;letter-spacing:.145em!important;font-weight:800!important;text-transform:uppercase!important;color:rgba(246,239,222,.94)!important;opacity:1!important;text-decoration:none!important;white-space:nowrap!important;padding:6px 0!important;}
  nav.top .nav-links a::after{bottom:-13px!important;height:2px!important;background:var(--amarelo,#f59b1e)!important;}
  nav.top .nav-wa-btn{display:none!important;}
  nav.top .nav-rating-badge.google-review-badge,nav.top .nav-rating-badge.google-review-badge:link,nav.top .nav-rating-badge.google-review-badge:visited{flex:0 0 170px!important;width:170px!important;min-width:170px!important;height:36px!important;min-height:36px!important;max-height:36px!important;margin-left:auto!important;margin-right:0!important;padding:4px 10px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:0!important;border-radius:12px!important;background:rgba(246,239,222,.13)!important;border:1px solid rgba(246,239,222,.30)!important;color:rgba(246,239,222,.94)!important;text-decoration:none!important;backdrop-filter:blur(9px)!important;-webkit-backdrop-filter:blur(9px)!important;transform:translateX(28px)!important;box-shadow:0 8px 22px rgba(0,32,46,.12)!important;}
  .google-review-badge .gr-label{font-size:8.3px!important;line-height:1!important;font-weight:700!important}.google-review-badge .gr-score{font-size:11.5px!important}.google-review-badge .gr-stars{color:#fbbc04!important;font-size:9px!important}.google-review-badge .gr-count{font-size:8px!important;font-weight:400!important;margin-left:1px!important;}
  nav.top .lang-switcher{position:relative!important;z-index:4000!important;flex:0 0 94px!important;width:94px!important;min-width:94px!important;margin:0!important;transform:translateX(16px)!important;}
  nav.top .lang-current{width:94px!important;height:36px!important;min-height:36px!important;padding:0 12px!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:6px!important;border-radius:12px!important;background:rgba(246,239,222,.14)!important;border:1px solid rgba(246,239,222,.30)!important;color:var(--areia-pale,#f6efde)!important;font-family:"JetBrains Mono",ui-monospace,monospace!important;font-size:12px!important;font-weight:900!important;letter-spacing:.06em!important;white-space:nowrap!important;}
  nav.top .lang-dropdown{position:absolute!important;top:calc(100% + 8px)!important;bottom:auto!important;right:0!important;left:auto!important;transform:none!important;z-index:99999!important;}
  nav.top .nav-hamburger{display:none!important;}
  nav.top .btn,nav.top .btn:link,nav.top .btn:visited,nav.top a.btn[href*="tagme"]{flex:0 0 188px!important;width:188px!important;min-width:188px!important;height:60px!important;min-height:60px!important;margin:0!important;padding:0!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:0!important;border-radius:999px!important;background:var(--amarelo,#f59b1e)!important;border:1px solid var(--amarelo,#f59b1e)!important;color:#fff!important;font-family:"JetBrains Mono",ui-monospace,monospace!important;font-size:14px!important;line-height:1!important;font-weight:900!important;letter-spacing:.16em!important;text-transform:uppercase!important;text-decoration:none!important;overflow:hidden!important;position:relative!important;animation:ecTopReservePulse 2.8s ease-in-out infinite!important;}
  .hero .hero-eyebrow,.page-hero .hero-eyebrow{position:relative!important;transform:translate(37px,-6px)!important;will-change:transform!important;}
}
@media (min-width:961px) and (max-width:1180px){nav.top .nav-inner{padding-left:18px!important;padding-right:18px!important;gap:10px!important;}nav.top .brand-logo{width:54px!important;height:54px!important;}nav.top .nav-links{gap:12px!important;overflow:hidden!important;}nav.top .nav-links a{font-size:8px!important;letter-spacing:.04em!important;}nav.top .nav-rating-badge.google-review-badge{flex-basis:72px!important;width:72px!important;min-width:72px!important;transform:none!important;}nav.top .lang-switcher,nav.top .lang-current{width:62px!important;min-width:62px!important;flex-basis:62px!important;transform:none!important;}nav.top .btn,nav.top a.btn[href*="tagme"]{flex-basis:124px!important;width:124px!important;min-width:124px!important;height:46px!important;min-height:46px!important;font-size:9.3px!important;letter-spacing:.07em!important;}}
@media (max-width:960px){nav.top .nav-rating-badge.google-review-badge{display:none!important;}}

/* === Block 16/40 | hash:bfef27e1 | 82 pages === */
/* HERO VISUAL LOCK — pedra do Pão de Açúcar livre no centro */
html,body{background:#00202e!important;overflow-x:hidden!important;}
header.hero,.hero,.page-hero,.hero-photo,.page-hero-photo,.hero-overlay,.page-hero-overlay,.hero-content,.page-hero-content{
  border:0!important;outline:0!important;box-shadow:none!important;
}
header.hero::before,header.hero::after,.hero::before,.hero::after,.page-hero::before,.page-hero::after{
  box-shadow:none!important;border:0!important;outline:0!important;
}

@media (min-width:961px){
  html body header.hero,
  html body header.page-hero{
    --ec-hero-up-2cm:76px;
    --ec-hero-down-1cm:38px;
    --ec-hero-up-05cm:19px;
    --ec-hero-down-subtitle:38px;
    --ec-hero-eyebrow-left:clamp(185px,11.8vw,215px);
    min-height:100svh!important;
    position:relative!important;
    overflow:hidden!important;
    isolation:isolate!important;
    background:#00202e!important;
    padding:0!important;
  }

  html body header.hero img.hero-photo,
  html body header.hero .hero-photo,
  html body header.page-hero img.page-hero-photo,
  html body header.page-hero .page-hero-photo,
  html body header.page-hero picture.page-hero-photo img{
    position:absolute!important;inset:0!important;width:100%!important;height:100%!important;
    object-fit:cover!important;object-position:center 44%!important;z-index:-2!important;
    border:0!important;outline:0!important;box-shadow:none!important;background:transparent!important;
  }

  html body header.hero .hero-overlay,
  html body header.page-hero .page-hero-overlay{
    position:absolute!important;inset:0!important;z-index:-1!important;
    background:
      linear-gradient(90deg,
        rgba(0,32,46,.06) 0%,
        rgba(0,32,46,.08) 32%,
        rgba(0,32,46,.24) 48%,
        rgba(0,32,46,.62) 70%,
        rgba(0,32,46,.88) 100%),
      linear-gradient(180deg,
        rgba(0,32,46,.14) 0%,
        rgba(0,32,46,.18) 46%,
        rgba(0,32,46,.76) 100%)!important;
  }

  html body header.hero .hero-content,
  html body header.page-hero .page-hero-content{
    position:absolute!important;inset:0!important;z-index:3!important;display:block!important;
    width:100%!important;height:100%!important;max-width:none!important;margin:0!important;padding:0!important;
    border:0!important;outline:0!important;box-shadow:none!important;
  }
  html body header.hero .hero-content>div:first-child{position:static!important;max-width:none!important;transform:none!important;}

  /* Linha laranja — posição única */
  html body header.hero .hero-content .eyebrow.hero-eyebrow,
  html body header.page-hero .page-hero-content .eyebrow.hero-eyebrow{
    position:absolute!important;
    left:var(--ec-hero-eyebrow-left)!important;
    top:calc(clamp(136px,16vh,172px) - var(--ec-hero-up-2cm) + var(--ec-hero-down-1cm) - var(--ec-hero-up-05cm))!important;
    transform:translate(37px,-6px)!important;
    width:calc(100vw - var(--ec-hero-eyebrow-left) - clamp(210px,16vw,300px))!important;
    max-width:none!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:clip!important;
    font-size:9px!important;letter-spacing:.31em!important;line-height:1!important;color:var(--amarelo,#f59b1e)!important;
    opacity:1!important;text-shadow:0 2px 12px rgba(0,32,46,.66)!important;z-index:10!important;
    margin:0!important;border:0!important;outline:0!important;
  }
  html body header.hero .hero-content .eyebrow.hero-eyebrow::before,
  html body header.page-hero .page-hero-content .eyebrow.hero-eyebrow::before{
    width:32px!important;min-width:32px!important;height:2px!important;background:var(--amarelo,#f59b1e)!important;opacity:1!important;
  }

  /* Título grande sempre à direita da pedra */
  html body header.hero h1,
  html body header.page-hero .page-hero-content h1{
    position:absolute!important;right:clamp(66px,5.5vw,126px)!important;
    top:calc(clamp(205px,23vh,270px) - var(--ec-hero-up-2cm))!important;
    max-width:min(610px,39vw)!important;font-size:clamp(38px,4.35vw,70px)!important;
    line-height:.98!important;margin:0!important;text-wrap:balance!important;z-index:7!important;
    border:0!important;outline:0!important;box-shadow:none!important;
  }

  /* Páginas internas: texto pequeno sai do centro e vai para o frame lateral */
  html body:not([data-screen-label="Home"]) header.hero .hero-sub,
  html body header.page-hero .page-hero-content .lede{
    display:none!important;
  }
  html body[data-screen-label="Home"] header.hero .hero-sub{
    position:absolute!important;right:clamp(66px,5.5vw,126px)!important;
    top:calc(clamp(520px,58vh,625px) - var(--ec-hero-up-2cm) + var(--ec-hero-down-subtitle))!important;
    max-width:min(610px,40vw)!important;font-size:clamp(15px,1vw,18px)!important;line-height:1.55!important;margin:0!important;color:rgba(246,239,222,.95)!important;z-index:7!important;
  }

  html body header.page-hero .page-hero-content .crumbs{display:none!important;}

  html body header.hero .hero-chips,
  html body header.page-hero .hero-chips{
    position:absolute!important;left:clamp(70px,5.5vw,118px)!important;
    bottom:calc(clamp(132px,15.8vh,172px) + var(--ec-hero-up-2cm))!important;
    max-width:min(760px,56vw)!important;margin:0!important;gap:8px!important;z-index:8!important;
    display:flex!important;flex-wrap:wrap!important;align-items:center!important;
  }
  html body header.hero .hero-chips span,
  html body header.page-hero .hero-chips span{font-size:.82rem!important;padding:5px 13px!important;background:rgba(0,32,46,.42)!important;border-color:rgba(246,239,222,.28)!important;}

  html body header.hero .hero-ctas,
  html body header.page-hero .ctas{
    position:absolute!important;left:clamp(70px,5.5vw,118px)!important;
    bottom:calc(clamp(54px,7.2vh,82px) + var(--ec-hero-up-2cm))!important;
    max-width:min(900px,62vw)!important;gap:12px!important;z-index:8!important;
  }

  html body header.hero aside.hero-side{
    position:absolute!important;inset:0!important;z-index:6!important;max-width:none!important;width:100%!important;height:100%!important;
    display:block!important;pointer-events:none!important;transform:none!important;padding:0!important;margin:0!important;
  }
  html body header.hero aside.hero-side .hero-meta-card,
  html body header.page-hero .ec-page-hero-side-frame{
    position:absolute!important;left:clamp(38px,3vw,70px)!important;top:auto!important;
    bottom:calc(clamp(246px,28.5vh,315px) + var(--ec-hero-up-2cm))!important;
    width:min(214px,15vw)!important;min-height:clamp(310px,38vh,390px)!important;
    display:flex!important;flex-direction:column!important;justify-content:space-between!important;
    padding:18px 16px!important;border-radius:16px!important;background:rgba(0,32,46,.55)!important;
    border:1px solid rgba(245,155,30,.24)!important;box-shadow:0 16px 40px rgba(0,0,0,.22)!important;
    backdrop-filter:blur(8px)!important;-webkit-backdrop-filter:blur(8px)!important;z-index:8!important;overflow:hidden!important;
  }
  html body header.hero aside.hero-side .hero-meta-card .hmc,
  html body header.page-hero .ec-page-hero-side-frame .hmc{display:block!important;padding:8px 0!important;}
  html body header.hero aside.hero-side .hero-meta-card .hmc .l,
  html body header.page-hero .ec-page-hero-side-frame .hmc .l{display:block!important;width:100%!important;font-size:8px!important;letter-spacing:.30em!important;line-height:1!important;margin:0 0 10px!important;white-space:nowrap!important;color:var(--amarelo,#f59b1e)!important;text-transform:uppercase!important;font-family:"JetBrains Mono",monospace!important;}
  html body header.hero aside.hero-side .hero-meta-card .hmc .v,
  html body header.page-hero .ec-page-hero-side-frame .hmc .v{display:block!important;width:100%!important;font-size:13px!important;line-height:1.30!important;margin:0!important;white-space:normal!important;color:var(--areia-pale,#f6efde)!important;}
  html body header.page-hero .ec-page-hero-side-frame .hmc.hero-summary-card .v{font-size:12.2px!important;line-height:1.26!important;}

  html body header.hero aside.hero-side img.hero-logo{
    position:absolute!important;left:72vw!important;top:auto!important;right:auto!important;
    bottom:calc(clamp(54px,7.2vh,82px) + var(--ec-hero-up-2cm) - 46px)!important;
    transform:translateX(-50%)!important;width:clamp(140px,10vw,166px)!important;height:clamp(140px,10vw,166px)!important;
    opacity:.80!important;z-index:6!important;filter:drop-shadow(0 14px 34px rgba(0,32,46,.58))!important;pointer-events:none!important;
  }
  html body header.hero .hero-bottom-bar{
    background:rgba(0,32,46,.58)!important;backdrop-filter:blur(8px)!important;-webkit-backdrop-filter:blur(8px)!important;z-index:9!important;
    border-top:1px solid rgba(245,155,30,.30)!important;box-shadow:none!important;outline:0!important;
  }
}

@media (max-width:960px){
  html body header.hero,html body header.page-hero{border:0!important;outline:0!important;box-shadow:none!important;}
  html body header.hero aside.hero-side,html body header.page-hero .ec-page-hero-side-frame{display:none!important;}
  html body header.hero .hero-content,html body header.page-hero .page-hero-content{position:relative!important;display:grid!important;grid-template-columns:1fr!important;}
  html body header.hero .hero-content .eyebrow.hero-eyebrow,
  html body header.hero h1,
  html body header.hero .hero-sub,
  html body header.hero .hero-chips,
  html body header.hero .hero-ctas,
  html body header.page-hero .page-hero-content .eyebrow.hero-eyebrow,
  html body header.page-hero .page-hero-content h1,
  html body header.page-hero .page-hero-content .lede,
  html body header.page-hero .hero-chips,
  html body header.page-hero .ctas{position:static!important;white-space:normal!important;width:auto!important;display:revert!important;}
}

/* === Block 17/40 | hash:e5f5d71c | 82 pages === */
/* Embaixada Carioca — alinhamento ao Manual da Marca V02
   Paleta oficial: Azul 1 #00405a; Azul 2 #527f8f; Verde #335d4a; Amarelo #f59b1e;
   Areia #ede2c9; Verde 2 #cbded4; Cinzas #485156/#7d8386/#b1b7bc.
   Tipografia oficial: Catamaran + Verdana/sistema.
*/
:root{--ec-azul1:#00405a;--ec-azul2:#527f8f;--ec-verde:#335d4a;--ec-amarelo:#f59b1e;--ec-areia:#ede2c9;--ec-verde2:#cbded4;--ec-cinza1:#485156;--ec-cinza2:#7d8386;--ec-cinza3:#b1b7bc;--azul1:#00405a;--azul2:#527f8f;--verde:#335d4a;--amarelo:#f59b1e;--areia:#ede2c9;--areia-pale:#ede2c9;--verde2:#cbded4;--cinza1:#485156;--cinza2:#7d8386;--cinza3:#b1b7bc;}
html,body{font-family:Catamaran,Verdana,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;background:var(--ec-azul1)!important;color:var(--ec-areia)!important;}
body{color-scheme:dark;}

/* Logo: principal preservada, sem distorção, com contraste adequado em foto/fundo escuro */
.brand-logo,.hero-logo,img[src*="logo"]{object-fit:contain!important;height:auto;max-width:100%;filter:none;}
nav.top .brand-mark{padding:10px 12px!important;min-width:calc(68px + 24px)!important;min-height:calc(68px + 20px)!important;}
nav.top .brand-logo{width:68px!important;height:68px!important;min-width:68px!important;min-height:68px!important;}
@media(max-width:960px){nav.top .brand-mark{padding:8px 10px!important;min-width:64px!important;min-height:64px!important;}nav.top .brand-logo{width:54px!important;height:54px!important;min-width:54px!important;min-height:54px!important;}}

/* Navegação — paleta oficial e legibilidade */
nav.top:not(.scrolled){background:linear-gradient(180deg,rgba(0,64,90,.52) 0%,rgba(0,64,90,.28) 58%,rgba(0,64,90,0) 100%)!important;}
nav.top:not(.scrolled) .nav-links a{font-family:Catamaran,Verdana,system-ui,sans-serif!important;color:var(--ec-areia)!important;-webkit-text-fill-color:var(--ec-areia)!important;font-weight:800!important;letter-spacing:.145em!important;text-shadow:0 2px 10px rgba(0,64,90,.78)!important;}
nav.top.scrolled,nav.top.nav-scrolled,body.scrolled nav.top{background:rgba(237,226,201,.96)!important;border-bottom:1px solid rgba(0,64,90,.16)!important;box-shadow:0 12px 34px rgba(0,64,90,.12)!important;}
nav.top.scrolled .nav-links a,nav.top.nav-scrolled .nav-links a,body.scrolled nav.top .nav-links a{color:var(--ec-azul1)!important;-webkit-text-fill-color:var(--ec-azul1)!important;text-shadow:none!important;}
nav.top.scrolled .brand-logo.light,nav.top.nav-scrolled .brand-logo.light,body.scrolled nav.top .brand-logo.light{display:none!important;}
nav.top.scrolled .brand-logo.dark,nav.top.nav-scrolled .brand-logo.dark,body.scrolled nav.top .brand-logo.dark{display:block!important;}

/* Badges, idioma e chips com cores oficiais */
.nav-rating-badge,.lang-current,header.hero .hero-chips span,header.hero .hero-chips a,header.page-hero .hero-chips span,header.page-hero .hero-chips a{background:rgba(0,64,90,.58)!important;border:1px solid rgba(237,226,201,.34)!important;color:var(--ec-areia)!important;-webkit-text-fill-color:var(--ec-areia)!important;box-shadow:0 8px 22px rgba(0,64,90,.18)!important;}
nav.top.scrolled .nav-rating-badge,nav.top.scrolled .lang-current,nav.top.nav-scrolled .nav-rating-badge,nav.top.nav-scrolled .lang-current,body.scrolled nav.top .nav-rating-badge,body.scrolled nav.top .lang-current{background:rgba(255,255,255,.54)!important;border-color:rgba(0,64,90,.22)!important;color:var(--ec-azul1)!important;-webkit-text-fill-color:var(--ec-azul1)!important;}
.gr-stars{color:var(--ec-amarelo)!important;-webkit-text-fill-color:var(--ec-amarelo)!important;}

/* Títulos e corpo — Catamaran/Verdana e contraste dentro da paleta */
h1,h2,h3,h4,h5,h6{font-family:Catamaran,Verdana,system-ui,sans-serif!important;color:var(--ec-areia)!important;-webkit-text-fill-color:var(--ec-areia)!important;font-weight:600;}
header.hero h1,header.page-hero h1{color:var(--ec-areia)!important;-webkit-text-fill-color:var(--ec-areia)!important;text-shadow:0 3px 18px rgba(0,64,90,.78)!important;}
header.hero h1 em,header.page-hero h1 em,header.hero h1 .serif,header.page-hero h1 .serif{color:var(--ec-amarelo)!important;-webkit-text-fill-color:var(--ec-amarelo)!important;font-style:italic;}
main,.article-body,.article-content,.longform,.story,.guide-content,.rio-guide,.ec-sprint2-geo{font-family:Catamaran,Verdana,system-ui,sans-serif!important;color:rgba(237,226,201,.90)!important;-webkit-text-fill-color:rgba(237,226,201,.90)!important;}
.article-body p,.article-content p,.longform p,.story p,.guide-content p,.rio-guide p,.ec-sprint2-geo p,main .lede,main .copy,main .description{color:rgba(237,226,201,.88)!important;-webkit-text-fill-color:rgba(237,226,201,.88)!important;line-height:1.72;}
.article-body strong,.article-content strong,.longform strong,.story strong,.guide-content strong,.rio-guide strong,main strong{color:var(--ec-amarelo)!important;-webkit-text-fill-color:var(--ec-amarelo)!important;}
.article-body a,.article-content a,.longform a,.story a,.guide-content a,.rio-guide a,main a:not(.btn):not(.btn-secondary){color:var(--ec-amarelo)!important;-webkit-text-fill-color:var(--ec-amarelo)!important;text-underline-offset:3px;}

/* Botões: hierarquia de marca + melhoria de acessibilidade */
a.btn,.btn,button.btn,.hero-ctas a,.ctas a{font-family:Catamaran,Verdana,system-ui,sans-serif!important;font-weight:900!important;letter-spacing:.13em!important;text-transform:uppercase!important;border-radius:999px!important;}
.hero-ctas a[href*="tagme"],.hero-ctas a[href*="reserv"],.ctas a[href*="tagme"],.ctas a[href*="reserv"],a.btn[href*="tagme"],a.btn[href*="reserv"],nav.top a.btn[href*="tagme"]{background:var(--ec-amarelo)!important;border-color:var(--ec-amarelo)!important;color:var(--ec-azul1)!important;-webkit-text-fill-color:var(--ec-azul1)!important;box-shadow:0 9px 0 rgba(0,64,90,.22),0 16px 30px rgba(0,64,90,.20)!important;}
.hero-ctas a:not([href*="tagme"]):not([href*="reserv"]),.ctas a:not([href*="tagme"]):not([href*="reserv"]),.btn-secondary,a.btn-secondary{background:rgba(0,64,90,.20)!important;border:1px solid rgba(237,226,201,.86)!important;color:var(--ec-areia)!important;-webkit-text-fill-color:var(--ec-areia)!important;}
.hero-ctas a:not([href*="tagme"]):not([href*="reserv"]):hover,.ctas a:not([href*="tagme"]):not([href*="reserv"]):hover,.btn-secondary:hover,a.btn-secondary:hover{background:var(--ec-areia)!important;border-color:var(--ec-areia)!important;color:var(--ec-azul1)!important;-webkit-text-fill-color:var(--ec-azul1)!important;}

/* Cards claros mantêm leitura azul/verdes oficiais */
.ec-final-geo-answer,.ec-final-geo-answer *,.light-section,.light-section *,.paper-section,.paper-section *,.section-paper,.section-paper *,.bg-paper,.bg-paper *,.card-light,.card-light *{background-color:inherit;color:var(--ec-azul1)!important;-webkit-text-fill-color:var(--ec-azul1)!important;text-shadow:none!important;}
.ec-final-geo-answer h1,.ec-final-geo-answer h2,.ec-final-geo-answer h3,.light-section h1,.light-section h2,.light-section h3,.paper-section h1,.paper-section h2,.paper-section h3,.section-paper h1,.section-paper h2,.section-paper h3,.bg-paper h1,.bg-paper h2,.bg-paper h3,.card-light h1,.card-light h2,.card-light h3{color:var(--ec-verde)!important;-webkit-text-fill-color:var(--ec-verde)!important;}
.ec-final-geo-answer a,.light-section a,.paper-section a,.section-paper a,.bg-paper a,.card-light a{color:#b76f00!important;-webkit-text-fill-color:#b76f00!important;}

/* Elementos de apoio: ondas/estampas sutis inspiradas no manual */
.brand-wave-bg,.ec-brand-wave-bg{background-image:repeating-linear-gradient(0deg,rgba(237,226,201,.08) 0 1px,transparent 1px 10px);background-blend-mode:soft-light;}

/* === Block 18/40 | hash:da28b290 | 82 pages === */
/* AAA READABILITY EMERGENCY FIX
   Corrige o problema real visto no navegador: textos herdando -webkit-text-fill-color claro em cards claros
   e textos escuros em fundos azul-escuro. Este bloco deve ficar por último no <head>. */
:root{--ec-readable-blue:#00405a;--ec-readable-green:#335d4a;--ec-readable-yellow:#f59b1e;--ec-readable-sand:#ede2c9;--ec-readable-sand-soft:#f6efde;--ec-readable-gray:#485156;--ec-readable-gray-2:#6b7377;}

/* 1) Zera herança problemática de -webkit-text-fill-color */
html body main :where(h1,h2,h3,h4,h5,h6,p,li,span,strong,em,a,small,summary,details,div,td,th,dd,dt,label){-webkit-text-fill-color:currentColor!important;}

/* 2) Padrão em áreas escuras: texto claro, legível */
html body main{color:rgba(237,226,201,.90)!important;}
html body main :where(p,li,small,summary,dd,dt){color:rgba(237,226,201,.88)!important;}
html body main :where(h1,h2,h3,h4,h5,h6){color:var(--ec-readable-sand-soft)!important;text-shadow:none!important;}
html body main :where(strong,b){color:var(--ec-readable-yellow)!important;}
html body main :where(a:not(.btn):not(.btn-secondary)){color:var(--ec-readable-yellow)!important;text-decoration-color:rgba(245,155,30,.55)!important;text-underline-offset:3px!important;}

/* 3) Cards, boxes, rotas, menu e blocos claros: texto escuro obrigatório */
html body main :where(.box,.card,.card-light,.menu-item,.menu-card,.menu-section,.menu-items,.access-direct,.access-section,.access-faq,.access-fact,.access-route,.access-card,.route-card,.guide-card,.place-card,.beach-card,.experience-card,.faq-card,.faq-item,.faq-block,.faq-grid,.info-card,.content-card,.copy-card,.direct-answer-card,.geo-card,.ec-r2d2-card,.ec-final-geo-card,.ec-final-geo-faq details,.ec-sprint4-faq details,.ec-sprint4-steps,.ec-r2d2-depth,.ec-final-geo-answer,.light-section,.paper-section,.section-paper,.bg-paper){color:var(--ec-readable-blue)!important;-webkit-text-fill-color:var(--ec-readable-blue)!important;text-shadow:none!important;}
html body main :where(.box,.card,.card-light,.menu-item,.menu-card,.access-fact,.access-route,.access-card,.route-card,.guide-card,.place-card,.beach-card,.experience-card,.faq-card,.faq-item,.info-card,.content-card,.copy-card,.direct-answer-card,.geo-card,.ec-r2d2-card,.ec-final-geo-card,.ec-final-geo-faq details,.ec-sprint4-faq details){background-color:var(--ec-readable-sand-soft);}
html body main :where(.box,.card,.card-light,.menu-item,.menu-card,.access-fact,.access-route,.access-card,.route-card,.guide-card,.place-card,.beach-card,.experience-card,.faq-card,.faq-item,.info-card,.content-card,.copy-card,.direct-answer-card,.geo-card,.ec-r2d2-card,.ec-final-geo-card,.ec-final-geo-faq details,.ec-sprint4-faq details) :where(h1,h2,h3,h4,h5,h6,.menu-item-name,.title,.card-title){color:var(--ec-readable-blue)!important;-webkit-text-fill-color:var(--ec-readable-blue)!important;text-shadow:none!important;}
html body main :where(.box,.card,.card-light,.menu-item,.menu-card,.access-fact,.access-route,.access-card,.route-card,.guide-card,.place-card,.beach-card,.experience-card,.faq-card,.faq-item,.info-card,.content-card,.copy-card,.direct-answer-card,.geo-card,.ec-r2d2-card,.ec-final-geo-card,.ec-final-geo-faq details,.ec-sprint4-faq details) :where(p,li,span,small,summary,dd,dt,.menu-item-desc,.description,.copy){color:var(--ec-readable-gray)!important;-webkit-text-fill-color:var(--ec-readable-gray)!important;text-shadow:none!important;}
html body main :where(.box,.card,.card-light,.menu-item,.menu-card,.access-fact,.access-route,.access-card,.route-card,.guide-card,.place-card,.beach-card,.experience-card,.faq-card,.faq-item,.info-card,.content-card,.copy-card,.direct-answer-card,.geo-card,.ec-r2d2-card,.ec-final-geo-card,.ec-final-geo-faq details,.ec-sprint4-faq details) :where(strong,b,.menu-item-price,.tag,.kicker){color:var(--ec-readable-green)!important;-webkit-text-fill-color:var(--ec-readable-green)!important;text-shadow:none!important;}
html body main :where(.box,.card,.card-light,.menu-item,.menu-card,.access-fact,.access-route,.access-card,.route-card,.guide-card,.place-card,.beach-card,.experience-card,.faq-card,.faq-item,.info-card,.content-card,.copy-card,.direct-answer-card,.geo-card,.ec-r2d2-card,.ec-final-geo-card,.ec-final-geo-faq details,.ec-sprint4-faq details) a:not(.btn):not(.btn-secondary){color:#b76f00!important;-webkit-text-fill-color:#b76f00!important;text-shadow:none!important;}

/* 4) Seções claras completas: fundo areia/off-white com textos azuis/cinza */
html body main :where(.access-direct,.access-section,.access-faq,.menu-section,.ec-final-geo-answer,.ec-r2d2-depth,.ec-sprint4-faq,.ec-sprint4-steps,.light-section,.paper-section,.section-paper,.bg-paper){background-color:var(--ec-readable-sand-soft)!important;color:var(--ec-readable-blue)!important;-webkit-text-fill-color:var(--ec-readable-blue)!important;}
html body main :where(.access-direct,.access-section,.access-faq,.menu-section,.ec-final-geo-answer,.ec-r2d2-depth,.ec-sprint4-faq,.ec-sprint4-steps,.light-section,.paper-section,.section-paper,.bg-paper) :where(h1,h2,h3,h4,h5,h6){color:var(--ec-readable-blue)!important;-webkit-text-fill-color:var(--ec-readable-blue)!important;text-shadow:none!important;}
html body main :where(.access-direct,.access-section,.access-faq,.menu-section,.ec-final-geo-answer,.ec-r2d2-depth,.ec-sprint4-faq,.ec-sprint4-steps,.light-section,.paper-section,.section-paper,.bg-paper) :where(p,li,span,small,summary,dd,dt){color:var(--ec-readable-gray)!important;-webkit-text-fill-color:var(--ec-readable-gray)!important;text-shadow:none!important;}

/* 5) Cardápio: garante leitura em todos os cards de produto */
html body main .menu-section-head h2,html body main .menu-section-head .hours,html body main .menu-section-head .tag{color:var(--ec-readable-blue)!important;-webkit-text-fill-color:var(--ec-readable-blue)!important;text-shadow:none!important;}
html body main .menu-item{background:var(--ec-readable-sand)!important;border-color:rgba(0,64,90,.16)!important;}
html body main .menu-item:hover{background:var(--ec-readable-sand-soft)!important;}
html body main .menu-item-badge{background:var(--ec-readable-yellow)!important;color:var(--ec-readable-blue)!important;-webkit-text-fill-color:var(--ec-readable-blue)!important;}

/* 6) FAQ/eventos em fundo escuro: perguntas claras, respostas claras */
html body main :where(.faq,.faq-section,.faq-list,.questions,.qa-grid,.event-faq,.events-faq) :where(h2,h3,h4,summary){color:var(--ec-readable-sand-soft)!important;-webkit-text-fill-color:var(--ec-readable-sand-soft)!important;}
html body main :where(.faq,.faq-section,.faq-list,.questions,.qa-grid,.event-faq,.events-faq) :where(p,li,span){color:rgba(237,226,201,.84)!important;-webkit-text-fill-color:rgba(237,226,201,.84)!important;}

/* 7) Botões preservam hierarquia de marca */
html body main a.btn[href*="tagme"],html body main a.btn[href*="reserv"],html body main .hero-ctas a[href*="tagme"],html body main .hero-ctas a[href*="reserv"],nav.top a.btn[href*="tagme"]{background:var(--ec-readable-yellow)!important;border-color:var(--ec-readable-yellow)!important;color:var(--ec-readable-blue)!important;-webkit-text-fill-color:var(--ec-readable-blue)!important;}
html body main .btn-secondary,html body main a.btn-secondary,html body main .hero-ctas a:not([href*="tagme"]):not([href*="reserv"]),html body main .ctas a:not([href*="tagme"]):not([href*="reserv"]){color:var(--ec-readable-sand-soft)!important;-webkit-text-fill-color:var(--ec-readable-sand-soft)!important;}
html body main .btn-secondary:hover,html body main a.btn-secondary:hover,html body main .hero-ctas a:not([href*="tagme"]):not([href*="reserv"]):hover,html body main .ctas a:not([href*="tagme"]):not([href*="reserv"]):hover{background:var(--ec-readable-sand-soft)!important;color:var(--ec-readable-blue)!important;-webkit-text-fill-color:var(--ec-readable-blue)!important;}

/* === Block 19/40 | hash:59114fa9 | 83 pages === */
/* Legibilidade real: menu, hero e corpo em áreas escuras */
nav.top:not(.scrolled) .nav-links a,
nav.top:not(.scrolled) .nav-links a:link,
nav.top:not(.scrolled) .nav-links a:visited{color:rgba(246,239,222,.98)!important;-webkit-text-fill-color:rgba(246,239,222,.98)!important;text-shadow:0 2px 10px rgba(0,32,46,.78)!important;opacity:1!important;}
nav.top.scrolled,nav.top.nav-scrolled,body.scrolled nav.top{background:rgba(246,239,222,.96)!important;border-bottom:1px solid rgba(0,64,90,.14)!important;box-shadow:0 10px 32px rgba(0,32,46,.12)!important;backdrop-filter:blur(12px)!important;-webkit-backdrop-filter:blur(12px)!important;}
nav.top.scrolled .nav-links a,nav.top.nav-scrolled .nav-links a,body.scrolled nav.top .nav-links a{color:#00405a!important;-webkit-text-fill-color:#00405a!important;text-shadow:none!important;opacity:1!important;font-weight:900!important;}
nav.top.scrolled .brand-logo.light,nav.top.nav-scrolled .brand-logo.light,body.scrolled nav.top .brand-logo.light{display:none!important;}
nav.top.scrolled .brand-logo.dark,nav.top.nav-scrolled .brand-logo.dark,body.scrolled nav.top .brand-logo.dark{display:block!important;}
nav.top.scrolled .lang-current,nav.top.nav-scrolled .lang-current,body.scrolled nav.top .lang-current{color:#00405a!important;-webkit-text-fill-color:#00405a!important;background:rgba(255,255,255,.58)!important;border-color:rgba(0,64,90,.24)!important;text-shadow:none!important;}
nav.top.scrolled a.nav-rating-badge,nav.top.nav-scrolled a.nav-rating-badge,body.scrolled nav.top a.nav-rating-badge{background:rgba(255,255,255,.62)!important;border-color:rgba(0,64,90,.24)!important;color:#00405a!important;-webkit-text-fill-color:#00405a!important;}
header.hero h1,header.page-hero h1{color:#f6efde!important;-webkit-text-fill-color:#f6efde!important;text-shadow:0 3px 18px rgba(0,32,46,.76)!important;}
header.hero h1 .serif,header.page-hero h1 .serif,header.hero h1 em,header.page-hero h1 em{color:#f59b1e!important;-webkit-text-fill-color:#f59b1e!important;}
header.hero .hero-sub,header.page-hero .lede{color:rgba(246,239,222,.95)!important;-webkit-text-fill-color:rgba(246,239,222,.95)!important;text-shadow:0 2px 14px rgba(0,32,46,.72)!important;}
body{background:#00202e!important;}
.article-body,.article-content,.longform,.story,.guide-content,.rio-guide,.ec-sprint2-geo{color:rgba(246,239,222,.88)!important;font-size:18px!important;line-height:1.72!important;}
.article-body p,.article-content p,.longform p,.story p,.guide-content p,.rio-guide p,.ec-sprint2-geo p,main .lede,main .copy,main .description{color:rgba(246,239,222,.87)!important;-webkit-text-fill-color:rgba(246,239,222,.87)!important;}
.article-body li,.article-content li,.longform li,.story li,.guide-content li,.rio-guide li{color:rgba(246,239,222,.88)!important;}
.article-body h1,.article-body h2,.article-body h3,.article-content h1,.article-content h2,.article-content h3,.longform h1,.longform h2,.longform h3,.story h1,.story h2,.story h3,.guide-content h1,.guide-content h2,.guide-content h3,.rio-guide h1,.rio-guide h2,.rio-guide h3,.ec-sprint2-geo h2,main section:not(.ec-final-geo-answer) h1,main section:not(.ec-final-geo-answer) h2,main section:not(.ec-final-geo-answer) h3{color:#f6efde!important;-webkit-text-fill-color:#f6efde!important;text-shadow:0 2px 12px rgba(0,32,46,.38)!important;}
.article-body .serif,.article-content .serif,.longform .serif,.story .serif,.guide-content .serif,.rio-guide .serif,main section:not(.ec-final-geo-answer) em{color:#f2b24a!important;-webkit-text-fill-color:#f2b24a!important;}
.article-body strong,.article-content strong,.longform strong,.story strong,.guide-content strong,.rio-guide strong,main section:not(.ec-final-geo-answer) strong{color:#f5b548!important;-webkit-text-fill-color:#f5b548!important;}
.article-body a,.article-content a,.longform a,.story a,.guide-content a,.rio-guide a,main section:not(.ec-final-geo-answer) a{color:#f2b24a!important;-webkit-text-fill-color:#f2b24a!important;text-underline-offset:3px!important;}
.article-body .highlight,.article-content .highlight,.longform .highlight,.story .highlight,.guide-content .highlight,.rio-guide .highlight{background:rgba(246,239,222,.08)!important;border-left:3px solid #f59b1e!important;color:rgba(246,239,222,.92)!important;}
.ec-final-geo-answer,.ec-final-geo-answer *,.light-section,.light-section *,.paper-section,.paper-section *,.section-paper,.section-paper *,.bg-paper,.bg-paper *,.card-light,.card-light *{color:#00405a!important;-webkit-text-fill-color:#00405a!important;text-shadow:none!important;}
.ec-final-geo-answer a,.light-section a,.paper-section a,.section-paper a,.bg-paper a,.card-light a{color:#c47e15!important;-webkit-text-fill-color:#c47e15!important;}
@media(max-width:960px){.article-body,.article-content,.longform,.story,.guide-content,.rio-guide{font-size:16px!important;line-height:1.64!important;}}

/* === Block 20/40 | hash:4197402e | 16 pages === */
/* ── WhatsApp Floating Widget ── */
.wa-widget {
  position: fixed;
  bottom: 28px;
  right: 28px;
  z-index: 9999;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 12px;
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}

/* Botão principal */
.wa-btn {
  width: 60px;
  height: 60px;
  border-radius: 50%;
  background: #25D366;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  box-shadow: 0 4px 20px rgba(37,211,102,0.45);
  transition: transform 0.2s ease, box-shadow 0.2s ease;
  position: relative;
  text-decoration: none;
  border: none;
  outline: none;
}
.wa-btn:hover {
  transform: scale(1.08);
  box-shadow: 0 6px 28px rgba(37,211,102,0.6);
}
.wa-btn svg {
  width: 32px;
  height: 32px;
  fill: white;
}

/* Animação pulse */
.wa-btn::before {
  content: '';
  position: absolute;
  inset: -6px;
  border-radius: 50%;
  background: rgba(37,211,102,0.3);
  animation: wa-pulse 2.2s ease-out infinite;
}
@keyframes wa-pulse {
  0%   { transform: scale(0.9); opacity: 0.8; }
  70%  { transform: scale(1.4); opacity: 0; }
  100% { transform: scale(1.4); opacity: 0; }
}

/* Preview da mensagem do bot */
.wa-preview {
  background: white;
  border-radius: 16px 16px 4px 16px;
  box-shadow: 0 8px 32px rgba(0,0,0,0.18);
  padding: 14px 16px;
  max-width: 280px;
  opacity: 0;
  transform: translateY(10px) scale(0.95);
  transition: opacity 0.3s ease, transform 0.3s ease;
  pointer-events: none;
  display: none;
}
.wa-preview.visible {
  opacity: 1;
  transform: translateY(0) scale(1);
  pointer-events: auto;
  display: block;
}
.wa-preview-header {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 10px;
  padding-bottom: 10px;
  border-bottom: 1px solid #f0f0f0;
}
.wa-avatar {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: linear-gradient(135deg, #1a2e44, #2d5a8e);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  font-size: 18px;
}
.wa-preview-name {
  font-weight: 700;
  font-size: 0.88rem;
  color: #1a1a1a;
  line-height: 1.2;
}
.wa-preview-status {
  font-size: 0.75rem;
  color: #25D366;
  font-weight: 500;
}
.wa-preview-msg {
  font-size: 0.82rem;
  color: #333;
  line-height: 1.5;
  margin-bottom: 12px;
}
.wa-preview-msg strong {
  color: #1a1a1a;
}
.wa-preview-cta {
  display: block;
  background: #25D366;
  color: white !important;
  text-align: center;
  padding: 10px 16px;
  border-radius: 10px;
  font-weight: 700;
  font-size: 0.85rem;
  text-decoration: none;
  transition: background 0.2s;
}
.wa-preview-cta:hover {
  background: #1ebe5d;
  color: white !important;
}
.wa-close {
  position: absolute;
  top: -8px;
  right: -8px;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  background: #888;
  color: white;
  border: none;
  cursor: pointer;
  font-size: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
  opacity: 0.8;
}
.wa-close:hover { opacity: 1; }

/* Notificação de mensagem nova */
.wa-badge {
  position: absolute;
  top: -4px;
  right: -4px;
  width: 18px;
  height: 18px;
  background: #24DA1E;
  border-radius: 50%;
  font-size: 11px;
  font-weight: 700;
  color: white;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 2px solid white;
}

@media (max-width: 480px) {
  .wa-widget {
    bottom: 20px;
    right: 16px;
  }
  .wa-preview {
    max-width: 240px;
  }
}

/* Touch Action — Mobile 6 Estrelas */
a, button, [role="button"], .btn, .nav-hamburger, .bottom-nav-item, .lang-btn {
  touch-action: manipulation;
  -webkit-tap-highlight-color: transparent;
}
input, select, textarea {
  touch-action: pan-y;
}

/* ── FOOTER ── */
footer.foot {
  background: var(--azul1);
  color: var(--areia-pale);
  padding: 96px 0 36px;
  border-top: 1px solid rgba(237,226,201,0.10);
}
.foot-top {
  display: grid;
  grid-template-columns: 2fr 1fr 1fr 1fr;
  gap: 56px;
  padding-bottom: 64px;
  border-bottom: 1px solid rgba(237,226,201,0.18);
}
.foot-brand .big {
  font-family: "Catamaran", sans-serif;
  font-weight: 200;
  font-size: clamp(44px, 5vw, 72px);
  line-height: 0.92;
  margin: 0 0 28px;
  letter-spacing: -0.025em;
  color: var(--areia-pale);
}
.foot-brand .big .serif {
  font-style: italic; font-weight: 500;
  color: var(--amarelo);
  font-family: "Cormorant Garamond", serif;
}
.foot-brand .tagline {
  font-size: 16px;
  color: rgba(237,226,201,0.78);
  line-height: 1.6;
  max-width: 42ch;
}
.foot-col h5 {
  font-family: "JetBrains Mono", monospace;
  font-size: 11px;
  letter-spacing: 0.26em;
  text-transform: uppercase;
  color: var(--amarelo);
  margin: 0 0 22px;
  font-weight: 500;
}
.foot-col ul {
  list-style: none; padding: 0; margin: 0;
  display: flex; flex-direction: column; gap: 12px;
}
.foot-col a {
  color: var(--areia-pale);
  text-decoration: none;
  font-size: 15px;
  transition: color .2s;
}
.foot-col a:hover { color: var(--amarelo); }
.foot-bottom {
  display: flex; justify-content: space-between; align-items: center;
  margin-top: 32px;
  font-family: "JetBrains Mono", monospace;
  font-size: 11px;
  color: rgba(237,226,201,0.6);
  letter-spacing: 0.22em;
  text-transform: uppercase;
  gap: 24px; flex-wrap: wrap;
}
.foot-bottom .crest { display: flex; align-items: center; gap: 16px; color: rgba(237,226,201,0.7); }
.crest-logo { width: 48px !important; height: 48px !important; display: block !important; max-width: 48px !important; }
/* Responsive footer */
@media (max-width: 1100px) {
  .foot-top { grid-template-columns: 1fr !important; gap: 40px; }
}
@media (max-width: 720px) {
  footer.foot { padding: 64px 0 28px; }
  .foot-top { grid-template-columns: 1fr !important; gap: 32px; }
  .foot-brand .big { font-size: clamp(36px, 10vw, 56px); }
  .foot-bottom { flex-direction: column; align-items: flex-start; gap: 12px; }
}

/* === Block 21/40 | hash:707fed4e | 31 pages === */
/* ── BOTTOM NAV: cor final garantida (inclui :visited, forced-colors) ── */
@layer bnav-override {
  body .mobile-bottom-nav { background: #00405A !important; color-scheme: dark !important; }
  body .mobile-bottom-nav a,
  body .mobile-bottom-nav a:link,
  body .mobile-bottom-nav a:visited,
  body .mobile-bottom-nav a:active,
  body .mobile-bottom-nav a:any-link { color: rgba(245,237,229,0.82) !important; -webkit-text-fill-color: rgba(245,237,229,0.82) !important; }
  body .mobile-bottom-nav span.bnav-icon { color: rgba(245,237,229,0.82) !important; -webkit-text-fill-color: rgba(245,237,229,0.82) !important; }
  body .mobile-bottom-nav a.bnav-reservar,
  body .mobile-bottom-nav a.bnav-reservar:link,
  body .mobile-bottom-nav a.bnav-reservar:visited { background: #E8C547 !important; color: #00405A !important; -webkit-text-fill-color: #00405A !important; }
  body .mobile-bottom-nav a.bnav-reservar span.bnav-icon { color: #00405A !important; -webkit-text-fill-color: #00405A !important; }
}

/* ── NAV RATING BADGE: override definitivo ── */
a.nav-rating-badge,
a.nav-rating-badge:link,
a.nav-rating-badge:visited,
a.nav-rating-badge:hover,
a.nav-rating-badge:any-link {
  display: flex !important;
  align-items: center !important;
  gap: 6px !important;
  background: rgba(255,255,255,0.13) !important;
  border: 1px solid rgba(255,255,255,0.28) !important;
  border-radius: 20px !important;
  padding: 5px 14px !important;
  color: #f6efde !important;
  text-decoration: none !important;
  font-family: var(--font-mono, monospace) !important;
  font-size: 12px !important;
  letter-spacing: 0.04em !important;
  white-space: nowrap !important;
  cursor: pointer !important;
}
a.nav-rating-badge:hover {
  background: rgba(255,255,255,0.22) !important;
}
nav.top.scrolled a.nav-rating-badge,
nav.top.scrolled a.nav-rating-badge:link,
nav.top.scrolled a.nav-rating-badge:visited {
  background: rgba(0,64,90,0.08) !important;
  border-color: rgba(0,64,90,0.2) !important;
  color: var(--azul1, #00405a) !important;
}
@media(max-width:900px){ a.nav-rating-badge { display: none !important; } }

/* === Block 22/40 | hash:c9a90a0f | 82 pages === */
/* HARD READABILITY FIX — deve ficar no fim do body para vencer CSS anterior */
:root{--ec-blue:#00405a;--ec-green:#335d4a;--ec-yellow:#f59b1e;--ec-sand:#ede2c9;--ec-paper:#f6efde;--ec-gray:#485156;--ec-gray2:#6b7377;}

/* Reset de herança que deixou texto claro em fundo claro */
html body main *{-webkit-text-fill-color:currentColor!important;text-shadow:none!important;}

/* Fundo escuro: texto claro de verdade */
html body main{background-color:var(--ec-blue);color:rgba(246,239,222,.92)!important;}
html body main section:not(.gallery-section):not(.ec-final-geo-answer):not(.light-section):not(.paper-section):not(.section-paper):not(.bg-paper):not(.menu-section){color:rgba(246,239,222,.92)!important;}
html body main section:not(.gallery-section):not(.ec-final-geo-answer):not(.light-section):not(.paper-section):not(.section-paper):not(.bg-paper):not(.menu-section) :where(p,li,span,small,dd,dt,summary,.lede,.copy,.description){color:rgba(246,239,222,.88)!important;}
html body main section:not(.gallery-section):not(.ec-final-geo-answer):not(.light-section):not(.paper-section):not(.section-paper):not(.bg-paper):not(.menu-section) :where(h1,h2,h3,h4,h5,h6){color:var(--ec-paper)!important;}
html body main section:not(.gallery-section):not(.ec-final-geo-answer):not(.light-section):not(.paper-section):not(.section-paper):not(.bg-paper):not(.menu-section) :where(strong,b){color:var(--ec-yellow)!important;}

/* Cards/caixas claras: texto escuro obrigatório */
html body main :where(.card,.box,.guide-card,.place-card,.beach-card,.route-card,.access-card,.access-fact,.access-route,.faq-card,.faq-item,.info-card,.content-card,.copy-card,.menu-item,.menu-card,.dish-card,.ec-final-geo-card,.ec-final-geo-faq details,.ec-r2d2-card,.ec-sprint4-faq details,.direct-answer-card,.geo-card){background:var(--ec-paper)!important;color:var(--ec-blue)!important;border-color:rgba(0,64,90,.16)!important;}
html body main :where(.card,.box,.guide-card,.place-card,.beach-card,.route-card,.access-card,.access-fact,.access-route,.faq-card,.faq-item,.info-card,.content-card,.copy-card,.menu-item,.menu-card,.dish-card,.ec-final-geo-card,.ec-final-geo-faq details,.ec-r2d2-card,.ec-sprint4-faq details,.direct-answer-card,.geo-card) :where(h1,h2,h3,h4,h5,h6,.title,.card-title,.menu-item-name){color:var(--ec-blue)!important;}
html body main :where(.card,.box,.guide-card,.place-card,.beach-card,.route-card,.access-card,.access-fact,.access-route,.faq-card,.faq-item,.info-card,.content-card,.copy-card,.menu-item,.menu-card,.dish-card,.ec-final-geo-card,.ec-final-geo-faq details,.ec-r2d2-card,.ec-sprint4-faq details,.direct-answer-card,.geo-card) :where(p,li,span,small,dd,dt,summary,.copy,.description,.menu-item-desc){color:var(--ec-gray)!important;}
html body main :where(.card,.box,.guide-card,.place-card,.beach-card,.route-card,.access-card,.access-fact,.access-route,.faq-card,.faq-item,.info-card,.content-card,.copy-card,.menu-item,.menu-card,.dish-card,.ec-final-geo-card,.ec-final-geo-faq details,.ec-r2d2-card,.ec-sprint4-faq details,.direct-answer-card,.geo-card) :where(strong,b,.tag,.kicker,.menu-item-price){color:var(--ec-green)!important;}
html body main :where(.card,.box,.guide-card,.place-card,.beach-card,.route-card,.access-card,.access-fact,.access-route,.faq-card,.faq-item,.info-card,.content-card,.copy-card,.menu-item,.menu-card,.dish-card,.ec-final-geo-card,.ec-final-geo-faq details,.ec-r2d2-card,.ec-sprint4-faq details,.direct-answer-card,.geo-card) a:not(.btn):not(.btn-secondary){color:#b76f00!important;}

/* Seções claras completas */
html body main :where(.menu-section,.gallery-section,.ec-final-geo-answer,.light-section,.paper-section,.section-paper,.bg-paper,.access-direct,.access-section,.access-faq){background:var(--ec-paper)!important;color:var(--ec-blue)!important;}
html body main :where(.menu-section,.gallery-section,.ec-final-geo-answer,.light-section,.paper-section,.section-paper,.bg-paper,.access-direct,.access-section,.access-faq) :where(h1,h2,h3,h4,h5,h6){color:var(--ec-blue)!important;}
html body main :where(.menu-section,.gallery-section,.ec-final-geo-answer,.light-section,.paper-section,.section-paper,.bg-paper,.access-direct,.access-section,.access-faq) :where(p,li,span,small,dd,dt,summary){color:var(--ec-gray)!important;}

/* Página almoço: fotos reais nos placeholders */
html body main .dish-card .photo-ph,html body main .feijoada-feature .photo-ph{position:relative;min-height:260px;background-size:cover!important;background-position:center!important;background-repeat:no-repeat!important;border:0!important;overflow:hidden;}
html body main .dish-card.featured .photo-ph{min-height:360px;}
html body main .photo-ph:before{display:none!important;content:none!important;}
html body main .photo-ph:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,64,90,0) 46%,rgba(0,64,90,.22) 100%);pointer-events:none;}
html body main .photo-ph[data-label*="Feijoada"],html body main .photo-ph[data-label*="feijoada"]{background-image:linear-gradient(180deg,rgba(0,64,90,.06),rgba(0,64,90,.06)),url('/assets/fabio-almoco-mesa-completa.webp')!important;}
html body main .photo-ph[data-label*="Picanha"],html body main .photo-ph[data-label*="picanha"]{background-image:linear-gradient(180deg,rgba(0,64,90,.06),rgba(0,64,90,.06)),url('/assets/fabio-almoco-mesa-completa.webp')!important;}
html body main .photo-ph[data-label*="Picadinho"],html body main .photo-ph[data-label*="picadinho"]{background-image:linear-gradient(180deg,rgba(0,64,90,.06),rgba(0,64,90,.06)),url('/assets/carne-seca-mandioca.webp')!important;}
html body main .photo-ph[data-label*="Bobó"],html body main .photo-ph[data-label*="Bobo"],html body main .photo-ph[data-label*="camarão"],html body main .photo-ph[data-label*="camarao"]{background-image:linear-gradient(180deg,rgba(0,64,90,.06),rgba(0,64,90,.06)),url('/assets/bobo-camarao-real.webp')!important;}
html body main .photo-ph[data-label*="Salmão"],html body main .photo-ph[data-label*="Salmao"],html body main .photo-ph[data-label*="salmão"],html body main .photo-ph[data-label*="salmao"]{background-image:linear-gradient(180deg,rgba(0,64,90,.06),rgba(0,64,90,.06)),url('/assets/fabio-almoco-salmao-pao-acucar.webp')!important;}
html body main .photo-ph[data-label*="Cheeseburger"],html body main .photo-ph[data-label*="cheeseburger"]{background-image:linear-gradient(180deg,rgba(0,64,90,.06),rgba(0,64,90,.06)),url('/assets/almoco-mesa-opt-mobile.webp')!important;}

/* Cardápio: cards de produto legíveis */
html body main .menu-item{background:var(--ec-sand)!important;color:var(--ec-blue)!important;}
html body main .menu-item *{text-shadow:none!important;}
html body main .menu-item :where(h3,h4,.menu-item-name){color:var(--ec-blue)!important;}
html body main .menu-item :where(p,.menu-item-desc,span,small){color:var(--ec-gray)!important;}
html body main .menu-item :where(.price,.menu-item-price,strong){color:#b76f00!important;}

/* Blocos de FAQ em fundo azul: melhora contraste sem virar card branco */
html body main :where(.faq,.faq-section,.faq-list,.questions,.qa-grid,.event-faq,.events-faq) :where(h2,h3,h4,summary){color:var(--ec-paper)!important;}
html body main :where(.faq,.faq-section,.faq-list,.questions,.qa-grid,.event-faq,.events-faq) :where(p,li,span){color:rgba(246,239,222,.86)!important;}

/* Galerias e captions */
html body main .gallery-section figure,html body main .gallery-section figcaption{background:#fff!important;color:var(--ec-gray)!important;}
html body main .gallery-section figcaption{color:var(--ec-gray)!important;}

/* Botões */
html body main a.btn[href*="tagme"],html body main a.btn[href*="reserv"],nav.top a.btn[href*="tagme"]{background:var(--ec-yellow)!important;border-color:var(--ec-yellow)!important;color:var(--ec-blue)!important;}
html body main .btn-secondary,html body main a.btn-secondary,html body main .hero-ctas a:not([href*="tagme"]):not([href*="reserv"]),html body main .ctas a:not([href*="tagme"]):not([href*="reserv"]){color:var(--ec-paper)!important;}
html body main .btn-secondary:hover,html body main a.btn-secondary:hover,html body main .hero-ctas a:not([href*="tagme"]):not([href*="reserv"]):hover,html body main .ctas a:not([href*="tagme"]):not([href*="reserv"]):hover{background:var(--ec-paper)!important;color:var(--ec-blue)!important;}
@media(max-width:760px){html body main .dish-card .photo-ph{min-height:230px;}html body main .dish-card.featured .photo-ph{min-height:270px;}}

/* === Block 23/40 | hash:a417b052 | 82 pages === */
/* VISUAL READABILITY REALITY FIX V3
   Correção baseada em print real: no cardápio, o nome do prato deve ser verde escuro e legível no fundo areia. */
:root{--ec-vr-blue:#00405a;--ec-vr-green:#335d4a;--ec-vr-yellow:#f59b1e;--ec-vr-sand:#ede2c9;--ec-vr-paper:#f6efde;--ec-vr-gray:#485156;--ec-vr-price:#9a6500;}
html body main *{-webkit-text-fill-color:currentColor!important;}
html body main .menu-section .menu-item,html body main .menu-grid .menu-item,html body main .menu-item{background:var(--ec-vr-sand)!important;color:var(--ec-vr-gray)!important;border-color:rgba(0,64,90,.16)!important;}
html body main .menu-section .menu-item :is(h1,h2,h3,h4,.menu-item-name,.item-name,.dish-name,.title,.card-title),html body main .menu-grid .menu-item :is(h1,h2,h3,h4,.menu-item-name,.item-name,.dish-name,.title,.card-title),html body main .menu-item :is(h1,h2,h3,h4,.menu-item-name,.item-name,.dish-name,.title,.card-title){color:var(--ec-vr-green)!important;-webkit-text-fill-color:var(--ec-vr-green)!important;font-weight:900!important;text-shadow:none!important;opacity:1!important;}
html body main .menu-section .menu-item :is(p,li,span,small,.menu-item-desc,.item-desc,.description,.copy),html body main .menu-grid .menu-item :is(p,li,span,small,.menu-item-desc,.item-desc,.description,.copy),html body main .menu-item :is(p,li,span,small,.menu-item-desc,.item-desc,.description,.copy){color:var(--ec-vr-gray)!important;-webkit-text-fill-color:var(--ec-vr-gray)!important;text-shadow:none!important;opacity:1!important;}
html body main .menu-section .menu-item :is(.price,.menu-item-price,.item-price),html body main .menu-grid .menu-item :is(.price,.menu-item-price,.item-price),html body main .menu-item :is(.price,.menu-item-price,.item-price){color:var(--ec-vr-price)!important;-webkit-text-fill-color:var(--ec-vr-price)!important;font-weight:900!important;text-shadow:none!important;}
html body main .menu-item :is(.tag,.badge,.kicker){color:var(--ec-vr-blue)!important;-webkit-text-fill-color:var(--ec-vr-blue)!important;text-shadow:none!important;}
html body main .menu-item :is(.tag.win,.badge.win,.premiada,.premiado){background:var(--ec-vr-yellow)!important;color:var(--ec-vr-blue)!important;-webkit-text-fill-color:var(--ec-vr-blue)!important;}
html body main :is(.card,.box,.guide-card,.place-card,.beach-card,.route-card,.access-card,.access-fact,.access-route,.faq-card,.faq-item,.info-card,.content-card,.copy-card,.direct-answer-card,.geo-card,.ec-r2d2-card,.ec-final-geo-card,.ec-final-geo-faq details,.ec-sprint4-faq details){background-color:var(--ec-vr-paper)!important;color:var(--ec-vr-gray)!important;border-color:rgba(0,64,90,.14)!important;}
html body main :is(.card,.box,.guide-card,.place-card,.beach-card,.route-card,.access-card,.access-fact,.access-route,.faq-card,.faq-item,.info-card,.content-card,.copy-card,.direct-answer-card,.geo-card,.ec-r2d2-card,.ec-final-geo-card,.ec-final-geo-faq details,.ec-sprint4-faq details) :is(h1,h2,h3,h4,h5,h6,.title,.card-title){color:var(--ec-vr-blue)!important;-webkit-text-fill-color:var(--ec-vr-blue)!important;font-weight:850!important;text-shadow:none!important;opacity:1!important;}
html body main :is(.card,.box,.guide-card,.place-card,.beach-card,.route-card,.access-card,.access-fact,.access-route,.faq-card,.faq-item,.info-card,.content-card,.copy-card,.direct-answer-card,.geo-card,.ec-r2d2-card,.ec-final-geo-card,.ec-final-geo-faq details,.ec-sprint4-faq details) :is(p,li,span,small,dd,dt,summary,.copy,.description){color:var(--ec-vr-gray)!important;-webkit-text-fill-color:var(--ec-vr-gray)!important;text-shadow:none!important;opacity:1!important;}
html body main section:not(.menu-section):not(.gallery-section):not(.light-section):not(.paper-section):not(.section-paper):not(.bg-paper):not(.ec-final-geo-answer) :is(p,li,span,small,dd,dt,.lede,.copy,.description){color:rgba(246,239,222,.90)!important;-webkit-text-fill-color:rgba(246,239,222,.90)!important;opacity:1!important;text-shadow:none!important;}
html body main section:not(.menu-section):not(.gallery-section):not(.light-section):not(.paper-section):not(.section-paper):not(.bg-paper):not(.ec-final-geo-answer) :is(h1,h2,h3,h4,h5,h6){color:var(--ec-vr-paper)!important;-webkit-text-fill-color:var(--ec-vr-paper)!important;opacity:1!important;text-shadow:none!important;}
html body main .gallery-section :is(figure,figcaption,.caption){background:#fff!important;color:var(--ec-vr-gray)!important;-webkit-text-fill-color:var(--ec-vr-gray)!important;}
html body main a.btn[href*="tagme"],html body main a.btn[href*="reserv"],nav.top a.btn[href*="tagme"]{background:var(--ec-vr-yellow)!important;border-color:var(--ec-vr-yellow)!important;color:var(--ec-vr-blue)!important;-webkit-text-fill-color:var(--ec-vr-blue)!important;}

/* === Block 24/40 | hash:5505e4f1 | 6 pages === */
html body .ec-page-hero-side-frame,
html body .hero-summary-card {
  background: rgba(0,32,46,.74) !important;
  border-color: rgba(246,239,222,.34) !important;
  box-shadow: 0 22px 64px rgba(0,0,0,.46) !important;
  color: #f6efde !important;
  -webkit-text-fill-color: #f6efde !important;
  text-shadow: none !important;
  opacity: 1 !important;
}
html body .ec-page-hero-side-frame .hmc,
html body .hero-summary-card .hmc,
html body .hmc {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  color: inherit !important;
  -webkit-text-fill-color: inherit !important;
}
html body .ec-page-hero-side-frame *,
html body .hero-summary-card *,
html body .hmc * {
  opacity: 1 !important;
}
html body .ec-page-hero-side-frame .l,
html body .ec-page-hero-side-frame .label,
html body .ec-page-hero-side-frame .kicker,
html body .ec-page-hero-side-frame .eyebrow,
html body .hero-summary-card .l,
html body .hero-summary-card .label,
html body .hero-summary-card .kicker,
html body .hero-summary-card .eyebrow,
html body .hmc .l,
html body .hmc .label,
html body .hmc .kicker,
html body .hmc .eyebrow {
  color: #f2b24a !important;
  -webkit-text-fill-color: #f2b24a !important;
  text-shadow: 0 2px 10px rgba(0,0,0,.56) !important;
  font-weight: 900 !important;
  letter-spacing: .26em !important;
}
html body .ec-page-hero-side-frame .v,
html body .ec-page-hero-side-frame .value,
html body .ec-page-hero-side-frame p,
html body .hero-summary-card .v,
html body .hero-summary-card .value,
html body .hero-summary-card p,
html body .hmc .v,
html body .hmc .value,
html body .hmc p {
  color: #f6efde !important;
  -webkit-text-fill-color: #f6efde !important;
  text-shadow: 0 2px 12px rgba(0,0,0,.62) !important;
  font-weight: 750 !important;
  font-size: clamp(15px, 4vw, 18px) !important;
  line-height: 1.35 !important;
}

/* === Block 25/40 | hash:5507e0d2 | 6 pages === */
/* Main-content only. Never touch nav, header, hero, hero chips, hero side frame or CTAs. */
html body main :is(.access-direct,.access-section,.access-faq,.light-section,.paper-section,.section-paper,.bg-paper,.menu-section,.gallery-section,.ec-sprint4-steps,.ec-sprint5-quality,.ec-sprint5-faq,.ec-r2d2-depth,.ec-sprint4-faq) {
  background:#f6efde !important;
  color:#00405a !important;
  -webkit-text-fill-color:initial !important;
}
html body main :is(.box,.access-fact,.access-route,details,.card,.faq-item,.faq-card,.info-card,.content-card,.copy-card,.route-card,.guide-card,.place-card,.beach-card,.experience-card,.ec-sprint5-card,.ec-r2d2-card) {
  position:relative !important;
  z-index:1 !important;
  background:#fffaf0 !important;
  color:#00405a !important;
  -webkit-text-fill-color:#00405a !important;
  text-shadow:none !important;
  opacity:1 !important;
  visibility:visible !important;
  filter:none !important;
  mix-blend-mode:normal !important;
}
html body main :is(.box,.access-fact,.access-route,details,.card,.faq-item,.faq-card,.info-card,.content-card,.copy-card,.route-card,.guide-card,.place-card,.beach-card,.experience-card,.ec-sprint5-card,.ec-r2d2-card)::before,
html body main :is(.box,.access-fact,.access-route,details,.card,.faq-item,.faq-card,.info-card,.content-card,.copy-card,.route-card,.guide-card,.place-card,.beach-card,.experience-card,.ec-sprint5-card,.ec-r2d2-card)::after {
  pointer-events:none !important;
  opacity:0 !important;
  display:none !important;
}
html body main :is(.box,.access-fact,.access-route,details,.card,.faq-item,.faq-card,.info-card,.content-card,.copy-card,.route-card,.guide-card,.place-card,.beach-card,.experience-card,.ec-sprint5-card,.ec-r2d2-card) > *,
html body main :is(.box,.access-fact,.access-route,details,.card,.faq-item,.faq-card,.info-card,.content-card,.copy-card,.route-card,.guide-card,.place-card,.beach-card,.experience-card,.ec-sprint5-card,.ec-r2d2-card) :is(h1,h2,h3,h4,h5,h6,p,li,span,small,dd,dt,summary,strong,b,a) {
  position:relative !important;
  z-index:3 !important;
  opacity:1 !important;
  visibility:visible !important;
  filter:none !important;
  mix-blend-mode:normal !important;
  text-shadow:none !important;
}
html body main :is(.access-direct,.access-section,.access-faq,.light-section,.paper-section,.section-paper,.bg-paper,.menu-section,.gallery-section,.ec-sprint4-steps,.ec-sprint5-quality,.ec-sprint5-faq,.ec-r2d2-depth,.ec-sprint4-faq,.box,.access-fact,.access-route,details,.card,.faq-item,.faq-card,.info-card,.content-card,.copy-card,.route-card,.guide-card,.place-card,.beach-card,.experience-card,.ec-sprint5-card,.ec-r2d2-card) :is(h1,h2,h3,h4,h5,h6,.title,.headline,.section-title,.card-title,summary) {
  color:#00405a !important;
  -webkit-text-fill-color:#00405a !important;
  text-shadow:none !important;
  opacity:1 !important;
  visibility:visible !important;
}
html body main :is(.access-direct,.access-section,.access-faq,.light-section,.paper-section,.section-paper,.bg-paper,.menu-section,.gallery-section,.ec-sprint4-steps,.ec-sprint5-quality,.ec-sprint5-faq,.ec-r2d2-depth,.ec-sprint4-faq,.box,.access-fact,.access-route,details,.card,.faq-item,.faq-card,.info-card,.content-card,.copy-card,.route-card,.guide-card,.place-card,.beach-card,.experience-card,.ec-sprint5-card,.ec-r2d2-card) :is(p,li,span,small,dd,dt,.lede,.copy,.description,.faq-answer) {
  color:#485156 !important;
  -webkit-text-fill-color:#485156 !important;
  text-shadow:none !important;
  opacity:1 !important;
  visibility:visible !important;
}
html body main :is(.access-direct,.access-section,.access-faq,.light-section,.paper-section,.section-paper,.bg-paper,.menu-section,.gallery-section,.ec-sprint4-steps,.ec-sprint5-quality,.ec-sprint5-faq,.ec-r2d2-depth,.ec-sprint4-faq,.box,.access-fact,.access-route,details,.card,.faq-item,.faq-card,.info-card,.content-card,.copy-card,.route-card,.guide-card,.place-card,.beach-card,.experience-card,.ec-sprint5-card,.ec-r2d2-card) :is(strong,b,a:not(.btn),.kicker,.eyebrow,.tag) {
  color:#9a6500 !important;
  -webkit-text-fill-color:#9a6500 !important;
  text-shadow:none !important;
  opacity:1 !important;
  visibility:visible !important;
}
/* Specific access page visible text rescue */
html body[data-screen-label="Como Chegar"] main .box .kicker,
html body[data-screen-label="Como Chegar"] main .box h2,
html body[data-screen-label="Como Chegar"] main .box p,
html body[data-screen-label="Como Chegar"] main .access-fact h3,
html body[data-screen-label="Como Chegar"] main .access-fact p,
html body[data-screen-label="Como Chegar"] main .access-route h3,
html body[data-screen-label="Como Chegar"] main .access-route p {
  display:block !important;
  opacity:1 !important;
  visibility:visible !important;
  transform:none !important;
}
html body[data-screen-label="Como Chegar"] main .box h2,
html body[data-screen-label="Como Chegar"] main .access-fact h3,
html body[data-screen-label="Como Chegar"] main .access-route h3 {
  color:#00405a !important;
  -webkit-text-fill-color:#00405a !important;
}
html body[data-screen-label="Como Chegar"] main .box p,
html body[data-screen-label="Como Chegar"] main .access-fact p,
html body[data-screen-label="Como Chegar"] main .access-route p {
  color:#485156 !important;
  -webkit-text-fill-color:#485156 !important;
}
html body main :is(.menu-item,.menu-card,.dish-card) :is(h1,h2,h3,h4,.title,.menu-item-name) { color:#335d4a !important; -webkit-text-fill-color:#335d4a !important; }
html body main :is(.menu-item,.menu-card,.dish-card) :is(p,li,span,small,.description,.menu-item-desc) { color:#485156 !important; -webkit-text-fill-color:#485156 !important; }
html body main :is(.menu-item,.menu-card,.dish-card) :is(.price,.menu-item-price,strong,b) { color:#9a6500 !important; -webkit-text-fill-color:#9a6500 !important; }

/* === Block 26/40 | hash:f6bfaa93 | 10 pages === */
/* ══════════════════════════════════════════
   MOBILE 95+ — UX 6 ESTRELAS
   Performance · Accessibility · Conversão
══════════════════════════════════════════ */

/* 1. Respeitar preferência de animação reduzida */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}

/* 2. Content-visibility para seções off-screen (melhora LCP) */
@media (max-width: 720px) {
  section:not(.hero):not(:first-of-type) {
    content-visibility: auto;
    contain-intrinsic-size: 0 500px;
  }
}

/* 3. Scroll snap nos cards de pratos (swipe nativo mobile) */
@media (max-width: 720px) {
  .pratos-estrela-grid,
  .momentos-grid {
    display: flex !important;
    flex-direction: row !important;
    overflow-x: auto !important;
    scroll-snap-type: x mandatory !important;
    -webkit-overflow-scrolling: touch !important;
    gap: 16px !important;
    padding: 0 20px 16px !important;
    scrollbar-width: none !important;
    grid-template-columns: unset !important;
  }
  .pratos-estrela-grid::-webkit-scrollbar,
  .momentos-grid::-webkit-scrollbar {
    display: none !important;
  }
  .prato-estrela-card,
  .momento-card,
  .momento {
    scroll-snap-align: start !important;
    flex: 0 0 85vw !important;
    max-width: 320px !important;
  }
}

/* 4. Scroll snap nas reviews (swipe nativo mobile) */
@media (max-width: 720px) {
  .reviews-grid,
  .mini-quotes {
    display: flex !important;
    flex-direction: row !important;
    overflow-x: auto !important;
    scroll-snap-type: x mandatory !important;
    -webkit-overflow-scrolling: touch !important;
    gap: 16px !important;
    padding: 0 20px 16px !important;
    scrollbar-width: none !important;
    grid-template-columns: unset !important;
  }
  .reviews-grid::-webkit-scrollbar,
  .mini-quotes::-webkit-scrollbar {
    display: none !important;
  }
  .review-card,
  .mini-quote {
    scroll-snap-align: start !important;
    flex: 0 0 85vw !important;
    max-width: 320px !important;
  }
}

/* 5. Microinterações: feedback tátil ao tocar */
@media (hover: none) and (pointer: coarse) {
  .btn:active,
  .momento-cta:active,
  .mobile-bottom-nav a:active,
  .nav-drawer-links a:active {
    transform: scale(0.96) !important;
    opacity: 0.85 !important;
    transition: transform 0.1s ease, opacity 0.1s ease !important;
  }
  /* Ripple effect nos botões principais */
  .btn, .momento-cta {
    position: relative !important;
    overflow:visible !important;
  }
}

/* 6. Hero mobile: CTA único e grande */
@media (max-width: 720px) {
  .hero-ctas {
    flex-direction: column !important;
    gap: 12px !important;
    width: 100% !important;
  }
  .hero-ctas .btn {
    width: 100% !important;
    max-width: 340px !important;
    font-size: 16px !important;
    padding: 18px 24px !important;
    min-height: 56px !important;
    border-radius: 8px !important;
  }
  .hero-ctas .btn.ghost {
    padding: 14px 24px !important;
    min-height: 48px !important;
  }
}

/* 7. Sticky CTA bar (aparece após scroll do hero) */
.sticky-cta-bar {
  display: none;
  position: fixed;
  bottom: calc(60px + env(safe-area-inset-bottom, 0px));
  left: 0;
  right: 0;
  z-index: 45;
  background: var(--azul1, #00405A);
  padding: 10px 20px;
  box-shadow: 0 -2px 12px rgba(0,0,0,0.3);
  transform: translateY(100%);
  transition: transform 0.3s ease;
}
.sticky-cta-bar.visible {
  transform: translateY(0);
}
.sticky-cta-bar a {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  background: var(--amarelo, #C8973A) !important;
  color: var(--azul1, #00405A) !important;
  font-weight: 700 !important;
  font-size: 15px !important;
  padding: 12px 24px !important;
  border-radius: 6px !important;
  text-decoration: none !important;
  min-height: 48px !important;
  width: 100% !important;
}
@media (max-width: 720px) {
  .sticky-cta-bar { display: block; }
}

/* 8. Indicador de swipe (hint visual) */
@media (max-width: 720px) {
  .swipe-hint {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 11px;
    color: var(--azul2, #5a7a8a);
    letter-spacing: 0.1em;
    text-transform: uppercase;
    margin-bottom: 8px;
    padding-left: 20px;
  }
  .swipe-hint::before {
    content: "← →";
    font-size: 13px;
  }
}

/* 9. FAQ accordion animação suave */
.faq-answer {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.35s cubic-bezier(0.4, 0, 0.2, 1),
              padding 0.35s ease !important;
}
.faq-item.open .faq-answer {
  max-height: 600px;
}

/* 10. Melhorar legibilidade do eyebrow em mobile */
@media (max-width: 720px) {
  .eyebrow {
    font-size: 10px !important;
    letter-spacing: 0.2em !important;
  }
  /* Seções com padding adequado */
  section {
    padding: 72px 0 !important;
  }
  /* Hero sem padding extra */
  .hero {
    padding: 0 !important;
  }
}

/* 11. Imagens com aspect-ratio para evitar CLS */
.hero-photo, .momento-photo img, .chef-photo {
  aspect-ratio: attr(width) / attr(height);
}

/* 12. Melhorar contraste dos textos em mobile */
@media (max-width: 720px) {
  .faq-question {
    font-size: 15px !important;
    line-height: 1.5 !important;
    padding: 20px 16px !important;
  }
  .faq-answer p, .faq-answer li {
    font-size: 14px !important;
    line-height: 1.7 !important;
  }
  /* Menu items mais legíveis */
  .menu-item-name {
    font-size: 16px !important;
  }
  .menu-item-desc {
    font-size: 13px !important;
    line-height: 1.6 !important;
  }
  .menu-item-price {
    font-size: 15px !important;
    font-weight: 700 !important;
  }
}

/* 13. Scroll suave com momentum no iOS */
.pratos-estrela-grid,
.momentos-grid,
.reviews-grid,
.mini-quotes {
  -webkit-overflow-scrolling: touch;
}

/* 14. Focus visible para acessibilidade */
:focus-visible {
  outline: 3px solid var(--amarelo, #C8973A) !important;
  outline-offset: 2px !important;
  border-radius: 4px !important;
}

/* 15. Skeleton loader para imagens (evita CLS) */
/* Skeleton loader apenas para imagens de conteúdo (não SVGs, logos ou ícones) */
img[loading="lazy"]:not([src*=".svg"]):not(.brand-logo):not(.hero-logo):not(.crest-logo):not(.nav-drawer-logo img):not([src*="logo"]):not([src*="icon"]) {
  background: linear-gradient(90deg, #f0f0f0 25%, #e0e0e0 50%, #f0f0f0 75%);
  background-size: 200% 100%;
}
img[loading="lazy"].loaded {
  background: none;
}
/* Garantir que logos SVG nunca tenham fundo */
.hero-logo, .brand-logo, .crest-logo, img[src*=".svg"] {
  background: none !important;
  background-image: none !important;
  animation: none !important;
}

/* === Block 27/40 | hash:593a74ec | 10 pages === */
/* ══════════════════════════════════════════
   UX FIXES — Legibilidade e Accessibility
══════════════════════════════════════════ */

/* Hero bottom bar: legível em mobile */
@media (max-width: 720px) {
  .hero-bottom-bar {
    font-size: 11px !important;
    letter-spacing: 0.18em !important;
    gap: 12px !important;
    padding: 12px 20px !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
  }
  /* Separadores do hero-bottom-bar */
  .hero-bottom-bar .sep {
    display: none !important;
  }
}

/* Melhorar contraste do hero overlay */
@media (max-width: 720px) {
  .hero::before,
  .hero-overlay {
    background: linear-gradient(
      to bottom,
      rgba(0, 40, 58, 0.35) 0%,
      rgba(0, 40, 58, 0.55) 50%,
      rgba(0, 40, 58, 0.75) 100%
    ) !important;
  }
}

/* Cards de menu: melhor espaçamento mobile */
@media (max-width: 720px) {
  .menu-item {
    padding: 16px !important;
    border-radius: 8px !important;
  }
  .menu-item-badge {
    font-size: 9px !important;
    padding: 3px 8px !important;
    letter-spacing: 0.12em !important;
  }
  /* Preço alinhado à direita */
  .menu-item-footer {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    margin-top: 8px !important;
  }
}

/* Skip navigation (acessibilidade) */
.skip-nav {
  position: absolute;
  top: -100%;
  left: 0;
  background: var(--amarelo, #C8973A);
  color: var(--azul1, #00405A);
  padding: 12px 20px;
  font-weight: 700;
  font-size: 14px;
  z-index: 9999;
  text-decoration: none;
  border-radius: 0 0 8px 0;
}
.skip-nav:focus {
  top: 0;
}

/* Melhorar tap highlight em iOS */
* {
  -webkit-tap-highlight-color: rgba(200, 151, 58, 0.2);
}

/* Botões do drawer: melhor espaçamento */
@media (max-width: 720px) {
  .nav-drawer-links a {
    padding: 14px 20px !important;
    font-size: 16px !important;
    border-bottom: 1px solid rgba(255,255,255,0.08) !important;
  }
  .nav-drawer-links a:last-child {
    border-bottom: none !important;
  }
}

/* Melhorar legibilidade das stats */
@media (max-width: 720px) {
  .stat-number {
    font-size: clamp(40px, 12vw, 64px) !important;
  }
  .stat-label {
    font-size: 12px !important;
    letter-spacing: 0.15em !important;
  }
}

/* Seção de pratos estrela: padding lateral adequado */
@media (max-width: 720px) {
  .pratos-estrela-section .wrap {
    padding: 0 !important;
  }
  .pratos-estrela-section h2,
  .pratos-estrela-section .eyebrow {
    padding: 0 20px !important;
  }
}

/* Reviews: padding lateral adequado */
@media (max-width: 720px) {
  .reviews-section .wrap,
  .mini-quotes-section .wrap {
    padding: 0 !important;
  }
  .reviews-section h2,
  .reviews-section .eyebrow,
  .mini-quotes-section h2,
  .mini-quotes-section .eyebrow {
    padding: 0 20px !important;
  }
}

/* Melhorar visibilidade do seletor de idioma */
@media (max-width: 720px) {
  .lang-switcher {
    font-size: 12px !important;
  }
  .lang-switcher-btn {
    padding: 6px 10px !important;
    min-height: 36px !important;
  }
}

/* === Block 28/40 | hash:ad25fabd | 15 pages === */
:root{--azul:#00202e;--azul1:#00405a;--amarelo:#f59b1e;--areia:#f6efde}*{box-sizing:border-box}html,body{margin:0;padding:0;overflow-x:hidden}body{font-family:Catamaran,system-ui,sans-serif;background:var(--areia);color:var(--azul1);font-size:17px;line-height:1.6}.mono{font-family:'JetBrains Mono',monospace}a{color:inherit}nav.top{position:fixed;top:0;left:0;right:0;z-index:50}.nav-inner{display:flex;gap:26px;align-items:center;justify-content:space-between;padding:14px 64px;color:var(--areia)}.brand-logo{width:60px;height:60px}.brand-logo.dark,.brand-word,.nav-wa-btn{display:none}.nav-links{display:flex;gap:26px}.nav-links a,.btn{font-family:'JetBrains Mono',monospace;text-decoration:none;text-transform:uppercase;letter-spacing:.1em;font-size:12px;font-weight:800;white-space:nowrap}.btn{background:var(--amarelo);color:#fff;border-radius:999px;padding:15px 28px}.btn.ghost{background:transparent;border:1px solid var(--areia);color:var(--areia)}.nav-rating-badge{border:1px solid rgba(246,239,222,.3);border-radius:999px;padding:8px 16px;text-decoration:none;background:rgba(246,239,222,.12);font-family:'JetBrains Mono',monospace;font-size:11px}.nav-rating-stars{color:var(--amarelo);font-weight:900}.lang-current{border:1px solid rgba(246,239,222,.3);background:rgba(246,239,222,.12);color:#fff;border-radius:12px;height:36px;padding:0 12px;font-weight:800}.page-hero{height:100svh;min-height:720px;position:relative;overflow:hidden;color:var(--areia);isolation:isolate}.page-hero-photo{position:absolute;inset:0;z-index:-3}.page-hero-photo img{width:100%;height:100%;object-fit:cover;object-position:center 44%}.page-hero-overlay{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(0,32,46,.08),rgba(0,32,46,.12) 35%,rgba(0,32,46,.5) 62%,rgba(0,32,46,.86)),linear-gradient(180deg,rgba(0,32,46,.18),rgba(0,32,46,.78))}.page-hero-content{position:absolute;inset:0;padding:140px 70px 90px}.eyebrow{font-family:'JetBrains Mono',monospace;color:var(--amarelo);text-transform:uppercase;letter-spacing:.28em;font-size:10px}.page-hero h1{position:absolute;right:7vw;top:22vh;max-width:620px;font-size:clamp(42px,5vw,78px);line-height:.95;font-weight:200;letter-spacing:-.03em;margin:0}.lede{position:absolute;right:7vw;top:54vh;max-width:580px;font-size:18px;color:rgba(246,239,222,.94)}.hero-chips{position:absolute;left:70px;bottom:175px;display:flex;gap:8px;flex-wrap:wrap}.hero-chips span{border:1px solid rgba(246,239,222,.28);background:rgba(0,32,46,.42);border-radius:999px;padding:6px 13px}.ctas{position:absolute;left:70px;bottom:88px;display:flex;gap:14px;flex-wrap:wrap}.wrap{max-width:1180px;margin:0 auto;padding:0 32px}.section{padding:82px 0;border-bottom:1px solid rgba(0,64,90,.12)}.section h2{font-size:clamp(32px,4vw,56px);line-height:1.04;margin:0 0 24px;font-weight:300}.direct-answer{background:white;border-left:5px solid var(--amarelo);padding:28px 32px;margin-top:-70px;position:relative;z-index:3;box-shadow:0 18px 60px rgba(0,32,46,.14)}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card{background:white;border:1px solid rgba(0,64,90,.1);padding:24px}.faq details{background:white;margin-bottom:10px;padding:18px 22px}.territory-links{display:flex;flex-wrap:wrap;gap:10px}.territory-link{background:white;border:1px solid rgba(0,64,90,.18);border-radius:999px;padding:9px 14px;text-decoration:none}.footer{background:var(--azul);color:var(--areia);padding:42px 32px;text-align:center}@media(max-width:960px){.nav-links,.nav-rating-badge,.lang-switcher{display:none}.nav-inner{padding:10px 22px}.page-hero h1,.lede{position:static}.page-hero-content{padding:120px 24px}.hero-chips,.ctas{position:static;margin-top:24px}.grid{grid-template-columns:1fr}.direct-answer{margin-top:0}}

/* === Block 29/40 | hash:b3b292fe | 15 pages === */
.page-hero-content .eyebrow.hero-eyebrow {
            color: rgba(246, 239, 222, 0.75);
            margin-bottom: 20px;
            font-size: 10px;
            letter-spacing: 0.22em;
        }
        .page-hero-content .eyebrow.hero-eyebrow::before {
            background: var(--amarelo, #d4a017);
        }

/* === Block 30/40 | hash:660a18fd | 53 pages === */
.ec-sprint5-quality,.ec-sprint5-faq{background:#f6efde;color:#00405a;padding:62px 0;border-top:1px solid rgba(0,64,90,.10)}
.ec-sprint5-quality .wrap,.ec-sprint5-faq .wrap{max-width:1120px;margin:0 auto;padding:0 24px}
.ec-sprint5-quality h2,.ec-sprint5-faq h2{font-size:clamp(30px,3.4vw,48px);line-height:1.06;margin:0 0 18px;color:#00405a}
.ec-sprint5-quality h3{font-size:22px;line-height:1.18;margin:24px 0 8px;color:#00405a}
.ec-sprint5-quality p,.ec-sprint5-quality li,.ec-sprint5-faq p{font-size:17px;line-height:1.62;color:#485156}
.ec-sprint5-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px;margin:26px 0}
.ec-sprint5-card,.ec-sprint5-faq details{background:#fff;border:1px solid rgba(0,64,90,.12);border-radius:20px;padding:22px;box-shadow:0 12px 32px rgba(0,64,90,.05)}
.ec-sprint5-card strong{display:block;color:#00405a;margin-bottom:6px}
.ec-sprint5-quality ol{background:#fff;border:1px solid rgba(0,64,90,.12);border-radius:20px;padding:24px 24px 24px 46px}
.ec-sprint5-faq details{margin:12px 0}
.ec-sprint5-faq summary{font-weight:800;cursor:pointer;color:#00405a}
@media(max-width:760px){.ec-sprint5-quality,.ec-sprint5-faq{padding:42px 0}}

/* === Block 31/40 | hash:fa313951 | 28 pages === */
/* Idiomas: abre para baixo, sem cortar fora da página */
nav.top,
nav.top .nav-inner,
nav.top .lang-switcher{
  overflow:visible!important;
}
nav.top .lang-switcher{
  position:relative!important;
  z-index:4000!important;
}
nav.top .lang-dropdown{
  position:absolute!important;
  top:calc(100% + 8px)!important;
  bottom:auto!important;
  right:0!important;
  left:auto!important;
  transform:none!important;
  min-width:190px!important;
  max-width:min(240px,calc(100vw - 24px))!important;
  max-height:calc(100vh - 96px)!important;
  overflow-y:auto!important;
  z-index:99999!important;
  border-radius:0 0 16px 16px!important;
  box-shadow:0 18px 42px rgba(0,32,46,.26)!important;
}
nav.top .lang-switcher:hover .lang-dropdown,
nav.top .lang-switcher:focus-within .lang-dropdown{
  transform:none!important;
}
@media(max-width:960px){
  nav.top .lang-dropdown{
    right:auto!important;
    left:0!important;
    top:calc(100% + 6px)!important;
    max-width:calc(100vw - 24px)!important;
  }
}

/* Cómo Llegar: sem pin no menu principal */
nav.top .nav-links .drawer-icon,
nav.top a[href*="como-chegar"] .drawer-icon,
nav.top a[href*="how-to-get-there"] .drawer-icon,
nav.top a[href*="como-llegar"] .drawer-icon{
  display:none!important;
}

/* Google Reviews compacto no topo — altura igual ao idioma */
nav.top .nav-rating-badge.google-review-badge{
  width:auto!important;
  min-width:136px!important;
  height:36px!important;
  min-height:36px!important;
  max-height:36px!important;
  padding:4px 10px!important;
  border-radius:12px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:0!important;
  text-decoration:none!important;
  background:rgba(246,239,222,.13)!important;
  border:1px solid rgba(246,239,222,.30)!important;
  color:rgba(246,239,222,.94)!important;
  backdrop-filter:blur(9px)!important;
  -webkit-backdrop-filter:blur(9px)!important;
}
nav.top .lang-current{
  min-height:36px!important;
  height:36px!important;
}
nav.top.scrolled .nav-rating-badge.google-review-badge{
  background:rgba(0,64,90,.06)!important;
  border-color:rgba(0,64,90,.18)!important;
  color:#00405a!important;
}
.google-review-badge .google-g{display:none!important;}
.google-review-badge .gr-copy{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:center!important;
  gap:1px!important;
  min-width:0!important;
}
.google-review-badge .gr-label{
  font-family:Catamaran,Verdana,system-ui,sans-serif!important;
  font-size:8.3px!important;
  line-height:1!important;
  font-weight:700!important;
  letter-spacing:.015em!important;
  text-transform:none!important;
  opacity:.90!important;
  white-space:nowrap!important;
}
.google-review-badge .gr-row{
  display:flex!important;
  align-items:center!important;
  gap:3px!important;
  line-height:1!important;
  white-space:nowrap!important;
}
.google-review-badge .gr-score{
  font-family:Catamaran,Verdana,system-ui,sans-serif!important;
  font-size:11.5px!important;
  line-height:.95!important;
  font-weight:700!important;
  letter-spacing:0!important;
}
.google-review-badge .gr-stars{
  color:#fbbc04!important;
  font-size:9px!important;
  letter-spacing:-.015em!important;
  line-height:1!important;
}
.google-review-badge .gr-count{
  font-family:Catamaran,Verdana,system-ui,sans-serif!important;
  font-size:8px!important;
  line-height:1!important;
  font-weight:400!important;
  opacity:.84!important;
  letter-spacing:0!important;
  margin-left:1px!important;
}

/* Ajuste visual pedido: Reviews + Idioma mais próximos entre si e do Reservar, sem mover o botão */
@media(min-width:1181px){
  nav.top .nav-rating-badge.google-review-badge{
    transform:translateX(28px)!important;
  }
  nav.top .lang-switcher{
    transform:translateX(16px)!important;
  }
}

/* Botão Reservar do topo: efeito pulsante semelhante ao CTA principal */
@keyframes ecTopReservePulse{
  0%,100%{box-shadow:0 9px 0 rgba(0,64,90,.22),0 16px 30px rgba(0,32,46,.22),0 0 0 rgba(232,160,32,0)}
  45%{box-shadow:0 9px 0 rgba(0,64,90,.18),0 18px 34px rgba(0,32,46,.26),0 0 0 8px rgba(232,160,32,.16)}
  70%{box-shadow:0 9px 0 rgba(0,64,90,.18),0 18px 34px rgba(0,32,46,.22),0 0 0 14px rgba(232,160,32,0)}
}
nav.top .btn,
nav.top a.btn[href*="tagme"]{
  position:relative!important;
  overflow:hidden!important;
  animation:ecTopReservePulse 2.8s ease-in-out infinite!important;
}
nav.top .btn::before,
nav.top a.btn[href*="tagme"]::before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  border-radius:inherit!important;
  background:linear-gradient(110deg,transparent 0%,rgba(255,255,255,.28) 42%,transparent 68%)!important;
  transform:translateX(-130%)!important;
  animation:ecTopReserveShine 3.4s ease-in-out infinite!important;
  pointer-events:none!important;
}
@keyframes ecTopReserveShine{
  0%,45%{transform:translateX(-130%)}
  70%{transform:translateX(130%)}
  100%{transform:translateX(130%)}
}
@media(prefers-reduced-motion:reduce){
  nav.top .btn,
  nav.top a.btn[href*="tagme"],
  nav.top .btn::before,
  nav.top a.btn[href*="tagme"]::before{animation:none!important}
}

@media(max-width:1180px){
  nav.top .nav-rating-badge.google-review-badge{
    min-width:72px!important;
    width:72px!important;
    height:32px!important;
    min-height:32px!important;
    max-height:32px!important;
    padding:4px 7px!important;
  }
  nav.top .lang-current{
    min-height:32px!important;
    height:32px!important;
  }
  .google-review-badge .gr-label,
  .google-review-badge .gr-count{display:none!important;}
  .google-review-badge .gr-score{font-size:11.5px!important;}
  .google-review-badge .gr-stars{font-size:9px!important;}
}

/* === Block 32/40 | hash:72c67dde | 12 pages === */
/* ══════════════════════════════════════════
   MOBILE 95+ — UX 6 ESTRELAS
   Performance · Accesibilidad · Conversão
══════════════════════════════════════════ */

/* 1. Respeitar preferência de animação reduzida */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}

/* 2. Content-visibility para seções off-screen (melhora LCP) */
@media (max-width: 720px) {
  section:not(.hero):not(:first-of-type) {
    content-visibility: auto;
    contain-intrinsic-size: 0 500px;
  }
}

/* 3. Scroll snap nos cards de pratos (swipe nativo mobile) */
@media (max-width: 720px) {
  .pratos-estrela-grid,
  .momentos-grid {
    display: flex !important;
    flex-direction: row !important;
    overflow-x: auto !important;
    scroll-snap-type: x mandatory !important;
    -webkit-overflow-scrolling: touch !important;
    gap: 16px !important;
    padding: 0 20px 16px !important;
    scrollbar-width: none !important;
    grid-template-columns: unset !important;
  }
  .pratos-estrela-grid::-webkit-scrollbar,
  .momentos-grid::-webkit-scrollbar {
    display: none !important;
  }
  .prato-estrela-card,
  .momento-card,
  .momento {
    scroll-snap-align: start !important;
    flex: 0 0 85vw !important;
    max-width: 320px !important;
  }
}

/* 4. Scroll snap nas reviews (swipe nativo mobile) */
@media (max-width: 720px) {
  .reviews-grid,
  .mini-quotes {
    display: flex !important;
    flex-direction: row !important;
    overflow-x: auto !important;
    scroll-snap-type: x mandatory !important;
    -webkit-overflow-scrolling: touch !important;
    gap: 16px !important;
    padding: 0 20px 16px !important;
    scrollbar-width: none !important;
    grid-template-columns: unset !important;
  }
  .reviews-grid::-webkit-scrollbar,
  .mini-quotes::-webkit-scrollbar {
    display: none !important;
  }
  .review-card,
  .mini-quote {
    scroll-snap-align: start !important;
    flex: 0 0 85vw !important;
    max-width: 320px !important;
  }
}

/* 5. Microinterações: feedback tátil ao tocar */
@media (hover: none) and (pointer: coarse) {
  .btn:active,
  .momento-cta:active,
  .mobile-bottom-nav a:active,
  .nav-drawer-links a:active {
    transform: scale(0.96) !important;
    opacity: 0.85 !important;
    transition: transform 0.1s ease, opacity 0.1s ease !important;
  }
  /* Ripple effect nos botões principais */
  .btn, .momento-cta {
    position: relative !important;
    overflow:visible !important;
  }
}

/* 6. Hero mobile: CTA único e grande */
@media (max-width: 720px) {
  .hero-ctas {
    flex-direction: column !important;
    gap: 12px !important;
    width: 100% !important;
  }
  .hero-ctas .btn {
    width: 100% !important;
    max-width: 340px !important;
    font-size: 16px !important;
    padding: 18px 24px !important;
    min-height: 56px !important;
    border-radius: 8px !important;
  }
  .hero-ctas .btn.ghost {
    padding: 14px 24px !important;
    min-height: 48px !important;
  }
}

/* 7. Sticky CTA bar (aparece após scroll do hero) */
.sticky-cta-bar {
  display: none;
  position: fixed;
  bottom: calc(60px + env(safe-area-inset-bottom, 0px));
  left: 0;
  right: 0;
  z-index: 45;
  background: var(--azul1, #00405A);
  padding: 10px 20px;
  box-shadow: 0 -2px 12px rgba(0,0,0,0.3);
  transform: translateY(100%);
  transition: transform 0.3s ease;
}
.sticky-cta-bar.visible {
  transform: translateY(0);
}
.sticky-cta-bar a {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  background: var(--amarelo, #C8973A) !important;
  color: var(--azul1, #00405A) !important;
  font-weight: 700 !important;
  font-size: 15px !important;
  padding: 12px 24px !important;
  border-radius: 6px !important;
  text-decoration: none !important;
  min-height: 48px !important;
  width: 100% !important;
}
@media (max-width: 720px) {
  .sticky-cta-bar { display: block; }
}

/* 8. Indicador de swipe (hint visual) */
@media (max-width: 720px) {
  .swipe-hint {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 11px;
    color: var(--azul2, #5a7a8a);
    letter-spacing: 0.1em;
    text-transform: uppercase;
    margin-bottom: 8px;
    padding-left: 20px;
  }
  .swipe-hint::before {
    content: "← →";
    font-size: 13px;
  }
}

/* 9. FAQ accordion animação suave */
.faq-answer {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.35s cubic-bezier(0.4, 0, 0.2, 1),
              padding 0.35s ease !important;
}
.faq-item.open .faq-answer {
  max-height: 600px;
}

/* 10. Melhorar legibilidade do eyebrow em mobile */
@media (max-width: 720px) {
  .eyebrow {
    font-size: 10px !important;
    letter-spacing: 0.2em !important;
  }
  /* Seções com padding adequado */
  section {
    padding: 72px 0 !important;
  }
  /* Hero sem padding extra */
  .hero {
    padding: 0 !important;
  }
}

/* 11. Imagens com aspect-ratio para evitar CLS */
.hero-photo, .momento-photo img, .chef-photo {
  aspect-ratio: attr(width) / attr(height);
}

/* 12. Melhorar contraste dos textos em mobile */
@media (max-width: 720px) {
  .faq-question {
    font-size: 15px !important;
    line-height: 1.5 !important;
    padding: 20px 16px !important;
  }
  .faq-answer p, .faq-answer li {
    font-size: 14px !important;
    line-height: 1.7 !important;
  }
  /* Menú items mais legíveis */
  .menu-item-name {
    font-size: 16px !important;
  }
  .menu-item-desc {
    font-size: 13px !important;
    line-height: 1.6 !important;
  }
  .menu-item-price {
    font-size: 15px !important;
    font-weight: 700 !important;
  }
}

/* 13. Scroll suave com momentum no iOS */
.pratos-estrela-grid,
.momentos-grid,
.reviews-grid,
.mini-quotes {
  -webkit-overflow-scrolling: touch;
}

/* 14. Focus visible para acessibilidade */
:focus-visible {
  outline: 3px solid var(--amarelo, #C8973A) !important;
  outline-offset: 2px !important;
  border-radius: 4px !important;
}

/* 15. Skeleton loader para imagens (evita CLS) */
/* Skeleton loader apenas para imagens de conteúdo (não SVGs, logos ou ícones) */
img[loading="lazy"]:not([src*=".svg"]):not(.brand-logo):not(.hero-logo):not(.crest-logo):not(.nav-drawer-logo img):not([src*="logo"]):not([src*="icon"]) {
  background: linear-gradient(90deg, #f0f0f0 25%, #e0e0e0 50%, #f0f0f0 75%);
  background-size: 200% 100%;
}
img[loading="lazy"].loaded {
  background: none;
}
/* Garantir que logos SVG nunca tenham fundo */
.hero-logo, .brand-logo, .crest-logo, img[src*=".svg"] {
  background: none !important;
  background-image: none !important;
  animation: none !important;
}

/* === Block 33/40 | hash:57c50e4c | 6 pages === */
.ec-final-geo-answer{background:#f6efde;color:#00405a;padding:58px 0;border-top:1px solid rgba(0,64,90,.10)}
.ec-final-geo-answer .wrap{max-width:1120px;margin:0 auto;padding:0 24px}
.ec-final-geo-answer h2{font-size:clamp(30px,3.3vw,48px);line-height:1.06;margin:0 0 16px;color:#00405a}
.ec-final-geo-answer p,.ec-final-geo-answer li{font-size:17px;line-height:1.62;color:#485156}
.ec-final-geo-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px;margin:26px 0}
.ec-final-geo-card,.ec-final-geo-faq details{background:#fff;border:1px solid rgba(0,64,90,.12);border-radius:18px;padding:20px;box-shadow:0 10px 28px rgba(0,64,90,.05)}
.ec-final-geo-card strong{display:block;color:#00405a;margin-bottom:6px}
.ec-final-geo-faq summary{cursor:pointer;font-weight:800;color:#00405a}
.ec-final-geo-faq details{margin:12px 0}
@media(max-width:760px){.ec-final-geo-answer{padding:42px 0}}

/* === Block 34/40 | hash:ae17388e | 9 pages === */
/* ══════════════════════════════════════════
   NAVBAR CSS — Injetado via fix_nav_css.py
══════════════════════════════════════════ */
.brand-mark {
  display: flex; align-items: center; gap: 18px;
  text-decoration: none; color: inherit;
}
.brand-logo {
  width: 56px; height: 56px; display: block;
  flex-shrink: 0;
  transition: opacity .2s;
}
.brand-logo.dark { display: none; }
nav.top.scrolled .brand-logo.light { display: none; }
nav.top.scrolled .brand-logo.dark  { display: block; }
.brand-word {
  font-family: "JetBrains Mono", monospace;
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: 0.22em;
  line-height: 1.3;
  font-size: 10px;
  padding-left: 18px;
  border-left: 1px solid currentColor;
  opacity: 0.85;
}
.nav-inner {
  max-width: var(--max, 1440px);
  margin: 0 auto;
  padding: 0 var(--gutter, 64px);
  display: flex; align-items: center;
  gap: 48px; height: 100%;
}

nav.top .btn {
  background: var(--amarelo, #E8C547) !important;
  color: var(--azul1, #00405A) !important;
  border-color: var(--amarelo, #E8C547) !important;
  font-size: 13px !important;
  padding: 13px 24px !important;
  border-radius: 999px !important;
  font-weight: 700 !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
  min-height: unset !important;
  min-width: unset !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  white-space: nowrap !important;
  box-sizing: content-box !important;
  overflow: visible !important;
  height: auto !important;
  line-height: 1.2 !important;
}
nav.top.scrolled .btn {
  background: var(--amarelo, #E8C547) !important;
  color: var(--azul1, #00405A) !important;
  border-color: var(--amarelo, #E8C547) !important;
}

/* === Block 35/40 | hash:88487bac | 13 pages === */
.ec-sprint51-source-quality{background:#f6efde;color:#00405a;padding:64px 0;border-top:1px solid rgba(0,64,90,.10)}
.ec-sprint51-source-quality .wrap{max-width:1120px;margin:0 auto;padding:0 24px}
.ec-sprint51-source-quality h1,.ec-sprint51-source-quality h2{font-size:clamp(30px,3.5vw,50px);line-height:1.06;margin:0 0 18px;color:#00405a}
.ec-sprint51-source-quality h3{font-size:22px;line-height:1.18;margin:26px 0 8px;color:#00405a}
.ec-sprint51-source-quality p,.ec-sprint51-source-quality li{font-size:17px;line-height:1.62;color:#485156}
.ec-sprint51-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px;margin:26px 0}
.ec-sprint51-card,.ec-sprint51-sources{background:#fff;border:1px solid rgba(0,64,90,.12);border-radius:20px;padding:22px;box-shadow:0 12px 32px rgba(0,64,90,.05)}
.ec-sprint51-card strong{display:block;color:#00405a;margin-bottom:6px}
.ec-sprint51-source-quality ol{background:#fff;border:1px solid rgba(0,64,90,.12);border-radius:20px;padding:24px 24px 24px 46px}
.ec-sprint51-sources a{color:#00405a;text-decoration:underline;text-underline-offset:3px}
@media(max-width:760px){.ec-sprint51-source-quality{padding:42px 0}}

/* === Block 36/40 | hash:62991328 | 6 pages === */
.seo-vh{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
/* ── NAV RATING BADGE: override definitivo ── */
a.nav-rating-badge,
a.nav-rating-badge:link,
a.nav-rating-badge:visited,
a.nav-rating-badge:hover,
a.nav-rating-badge:any-link {
  display: flex !important;
  align-items: center !important;
  gap: 6px !important;
  background: rgba(255,255,255,0.13) !important;
  border: 1px solid rgba(255,255,255,0.28) !important;
  border-radius: 20px !important;
  padding: 5px 14px !important;
  color: #f6efde !important;
  text-decoration: none !important;
  font-family: var(--font-mono, monospace) !important;
  font-size: 12px !important;
  letter-spacing: 0.04em !important;
  white-space: nowrap !important;
  cursor: pointer !important;
}
a.nav-rating-badge:hover {
  background: rgba(255,255,255,0.22) !important;
}
nav.top.scrolled a.nav-rating-badge,
nav.top.scrolled a.nav-rating-badge:link,
nav.top.scrolled a.nav-rating-badge:visited {
  background: rgba(0,64,90,0.08) !important;
  border-color: rgba(0,64,90,0.2) !important;
  color: var(--azul1, #00405a) !important;
}
@media(max-width:900px){ a.nav-rating-badge { display: none !important; } }

/* === Block 37/40 | hash:595e0273 | 24 pages === */
/* Final AAA closeout — Somente reserva / TagMe fica laranja; botões secundários são vazados e invertem no hover. */
:root{--ec-blue:#00405a;--ec-green:#335d4a;--ec-yellow:#f59b1e;--ec-sand:#ede2c9;--ec-paper:#f6efde;--ec-gray:#485156;}
html body nav.top .nav-links a{color:var(--ec-blue);}
html body nav.top a.btn[href*="tagme"],html body a.btn[href*="tagme"],html body a.btn[href*="reserv"],html body .ctas a[href*="tagme"],html body .hero-ctas a[href*="tagme"]{background:var(--ec-yellow)!important;border-color:var(--ec-yellow)!important;color:var(--ec-blue)!important;-webkit-text-fill-color:var(--ec-blue)!important;}
html body .btn-secondary,html body a.btn-secondary,html body .ctas a:not([href*="tagme"]):not([href*="reserv"]),html body .hero-ctas a:not([href*="tagme"]):not([href*="reserv"]){background:rgba(0,64,90,.18)!important;border:1px solid rgba(246,239,222,.82)!important;color:var(--ec-paper)!important;-webkit-text-fill-color:var(--ec-paper)!important;}
html body .btn-secondary:hover,html body a.btn-secondary:hover,html body .ctas a:not([href*="tagme"]):not([href*="reserv"]):hover,html body .hero-ctas a:not([href*="tagme"]):not([href*="reserv"]):hover{background:var(--ec-paper)!important;color:var(--ec-blue)!important;-webkit-text-fill-color:var(--ec-blue)!important;}

/* === Block 38/40 | hash:0d650255 | 12 pages === */
/* ══════════════════════════════════════════
   UX FIXES — Legibilidade e Accesibilidad
══════════════════════════════════════════ */

/* Hero bottom bar: legível em mobile */
@media (max-width: 720px) {
  .hero-bottom-bar {
    font-size: 11px !important;
    letter-spacing: 0.18em !important;
    gap: 12px !important;
    padding: 12px 20px !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
  }
  /* Separadores do hero-bottom-bar */
  .hero-bottom-bar .sep {
    display: none !important;
  }
}

/* Melhorar contraste do hero overlay */
@media (max-width: 720px) {
  .hero::before,
  .hero-overlay {
    background: linear-gradient(
      to bottom,
      rgba(0, 40, 58, 0.35) 0%,
      rgba(0, 40, 58, 0.55) 50%,
      rgba(0, 40, 58, 0.75) 100%
    ) !important;
  }
}

/* Cards de menu: melhor espaçamento mobile */
@media (max-width: 720px) {
  .menu-item {
    padding: 16px !important;
    border-radius: 8px !important;
  }
  .menu-item-badge {
    font-size: 9px !important;
    padding: 3px 8px !important;
    letter-spacing: 0.12em !important;
  }
  /* Preço alinhado à direita */
  .menu-item-footer {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    margin-top: 8px !important;
  }
}

/* Skip navigation (acessibilidade) */
.skip-nav {
  position: absolute;
  top: -100%;
  left: 0;
  background: var(--amarelo, #C8973A);
  color: var(--azul1, #00405A);
  padding: 12px 20px;
  font-weight: 700;
  font-size: 14px;
  z-index: 9999;
  text-decoration: none;
  border-radius: 0 0 8px 0;
}
.skip-nav:focus {
  top: 0;
}

/* Melhorar tap highlight em iOS */
* {
  -webkit-tap-highlight-color: rgba(200, 151, 58, 0.2);
}

/* Botões do drawer: melhor espaçamento */
@media (max-width: 720px) {
  .nav-drawer-links a {
    padding: 14px 20px !important;
    font-size: 16px !important;
    border-bottom: 1px solid rgba(255,255,255,0.08) !important;
  }
  .nav-drawer-links a:last-child {
    border-bottom: none !important;
  }
}

/* Melhorar legibilidade das stats */
@media (max-width: 720px) {
  .stat-number {
    font-size: clamp(40px, 12vw, 64px) !important;
  }
  .stat-label {
    font-size: 12px !important;
    letter-spacing: 0.15em !important;
  }
}

/* Seção de pratos estrela: padding lateral adequado */
@media (max-width: 720px) {
  .pratos-estrela-section .wrap {
    padding: 0 !important;
  }
  .pratos-estrela-section h2,
  .pratos-estrela-section .eyebrow {
    padding: 0 20px !important;
  }
}

/* Reviews: padding lateral adequado */
@media (max-width: 720px) {
  .reviews-section .wrap,
  .mini-quotes-section .wrap {
    padding: 0 !important;
  }
  .reviews-section h2,
  .reviews-section .eyebrow,
  .mini-quotes-section h2,
  .mini-quotes-section .eyebrow {
    padding: 0 20px !important;
  }
}

/* Melhorar visibilidade do seletor de idioma */
@media (max-width: 720px) {
  .lang-switcher {
    font-size: 12px !important;
  }
  .lang-switcher-btn {
    padding: 6px 10px !important;
    min-height: 36px !important;
  }
}

/* === Block 39/40 | hash:57ed682a | 28 pages === */
/* Idiomas: abre para baixo, sem cortar fora da página */
nav.top,
nav.top .nav-inner,
nav.top .lang-switcher{
  overflow:visible!important;
}
nav.top .lang-switcher{
  position:relative!important;
  z-index:4000!important;
}
nav.top .lang-dropdown{
  position:absolute!important;
  top:calc(100% + 8px)!important;
  bottom:auto!important;
  right:0!important;
  left:auto!important;
  transform:none!important;
  min-width:190px!important;
  max-width:min(240px,calc(100vw - 24px))!important;
  max-height:calc(100vh - 96px)!important;
  overflow-y:auto!important;
  z-index:99999!important;
  border-radius:0 0 16px 16px!important;
  box-shadow:0 18px 42px rgba(0,32,46,.26)!important;
}
nav.top .lang-switcher:hover .lang-dropdown,
nav.top .lang-switcher:focus-within .lang-dropdown{
  transform:none!important;
}
@media(max-width:960px){
  nav.top .lang-dropdown{
    right:auto!important;
    left:0!important;
    top:calc(100% + 6px)!important;
    max-width:calc(100vw - 24px)!important;
  }
}

/* How to Get There: sem pin no menu principal */
nav.top .nav-links .drawer-icon,
nav.top a[href*="como-chegar"] .drawer-icon,
nav.top a[href*="how-to-get-there"] .drawer-icon,
nav.top a[href*="como-llegar"] .drawer-icon{
  display:none!important;
}

/* Google Reviews compacto no topo — altura igual ao idioma */
nav.top .nav-rating-badge.google-review-badge{
  width:auto!important;
  min-width:136px!important;
  height:36px!important;
  min-height:36px!important;
  max-height:36px!important;
  padding:4px 10px!important;
  border-radius:12px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:0!important;
  text-decoration:none!important;
  background:rgba(246,239,222,.13)!important;
  border:1px solid rgba(246,239,222,.30)!important;
  color:rgba(246,239,222,.94)!important;
  backdrop-filter:blur(9px)!important;
  -webkit-backdrop-filter:blur(9px)!important;
}
nav.top .lang-current{
  min-height:36px!important;
  height:36px!important;
}
nav.top.scrolled .nav-rating-badge.google-review-badge{
  background:rgba(0,64,90,.06)!important;
  border-color:rgba(0,64,90,.18)!important;
  color:#00405a!important;
}
.google-review-badge .google-g{display:none!important;}
.google-review-badge .gr-copy{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:center!important;
  gap:1px!important;
  min-width:0!important;
}
.google-review-badge .gr-label{
  font-family:Catamaran,Verdana,system-ui,sans-serif!important;
  font-size:8.3px!important;
  line-height:1!important;
  font-weight:700!important;
  letter-spacing:.015em!important;
  text-transform:none!important;
  opacity:.90!important;
  white-space:nowrap!important;
}
.google-review-badge .gr-row{
  display:flex!important;
  align-items:center!important;
  gap:3px!important;
  line-height:1!important;
  white-space:nowrap!important;
}
.google-review-badge .gr-score{
  font-family:Catamaran,Verdana,system-ui,sans-serif!important;
  font-size:11.5px!important;
  line-height:.95!important;
  font-weight:700!important;
  letter-spacing:0!important;
}
.google-review-badge .gr-stars{
  color:#fbbc04!important;
  font-size:9px!important;
  letter-spacing:-.015em!important;
  line-height:1!important;
}
.google-review-badge .gr-count{
  font-family:Catamaran,Verdana,system-ui,sans-serif!important;
  font-size:8px!important;
  line-height:1!important;
  font-weight:400!important;
  opacity:.84!important;
  letter-spacing:0!important;
  margin-left:1px!important;
}

/* Ajuste visual pedido: Reviews + Idioma mais próximos entre si e do Reservar, sem mover o botão */
@media(min-width:1181px){
  nav.top .nav-rating-badge.google-review-badge{
    transform:translateX(28px)!important;
  }
  nav.top .lang-switcher{
    transform:translateX(16px)!important;
  }
}

/* Botão Reservar do topo: efeito pulsante semelhante ao CTA principal */
@keyframes ecTopReservePulse{
  0%,100%{box-shadow:0 9px 0 rgba(0,64,90,.22),0 16px 30px rgba(0,32,46,.22),0 0 0 rgba(232,160,32,0)}
  45%{box-shadow:0 9px 0 rgba(0,64,90,.18),0 18px 34px rgba(0,32,46,.26),0 0 0 8px rgba(232,160,32,.16)}
  70%{box-shadow:0 9px 0 rgba(0,64,90,.18),0 18px 34px rgba(0,32,46,.22),0 0 0 14px rgba(232,160,32,0)}
}
nav.top .btn,
nav.top a.btn[href*="tagme"]{
  position:relative!important;
  overflow:hidden!important;
  animation:ecTopReservePulse 2.8s ease-in-out infinite!important;
}
nav.top .btn::before,
nav.top a.btn[href*="tagme"]::before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  border-radius:inherit!important;
  background:linear-gradient(110deg,transparent 0%,rgba(255,255,255,.28) 42%,transparent 68%)!important;
  transform:translateX(-130%)!important;
  animation:ecTopReserveShine 3.4s ease-in-out infinite!important;
  pointer-events:none!important;
}
@keyframes ecTopReserveShine{
  0%,45%{transform:translateX(-130%)}
  70%{transform:translateX(130%)}
  100%{transform:translateX(130%)}
}
@media(prefers-reduced-motion:reduce){
  nav.top .btn,
  nav.top a.btn[href*="tagme"],
  nav.top .btn::before,
  nav.top a.btn[href*="tagme"]::before{animation:none!important}
}

@media(max-width:1180px){
  nav.top .nav-rating-badge.google-review-badge{
    min-width:72px!important;
    width:72px!important;
    height:32px!important;
    min-height:32px!important;
    max-height:32px!important;
    padding:4px 7px!important;
  }
  nav.top .lang-current{
    min-height:32px!important;
    height:32px!important;
  }
  .google-review-badge .gr-label,
  .google-review-badge .gr-count{display:none!important;}
  .google-review-badge .gr-score{font-size:11.5px!important;}
  .google-review-badge .gr-stars{font-size:9px!important;}
}

/* === Block 40/40 | hash:8b82f1f1 | 12 pages === */
/* ═══════════════════════════════════════════════════════════════════════════
   NAV PADRONIZADO — idêntico à home
   ═══════════════════════════════════════════════════════════════════════════ */
nav.top{position:fixed;top:0;left:0;right:0;z-index:50;transition:background .3s,border-color .3s;border-bottom:1px solid transparent}nav.top.scrolled{background:color-mix(in oklab,var(--paper) 92%,transparent);backdrop-filter:blur(12px);border-bottom-color:var(--rule)}.nav-inner{display:flex;align-items:center;justify-content:space-between;gap:32px;padding:14px var(--gutter);max-width:100%;transition:color .3s;color:var(--areia-pale)}nav.top.scrolled .nav-inner{color:var(--azul1)}.brand-mark{display:flex;align-items:center;gap:18px;text-decoration:none;color:inherit}.brand-logo{width:56px;height:56px;display:block;transition:opacity .2s}.brand-logo.dark{display:none}nav.top.scrolled .brand-logo.light{display:none}nav.top.scrolled .brand-logo.dark{display:block}.brand-word{display:none}.brand-word-x{font-family:"JetBrains Mono",monospace;font-weight:500;text-transform:uppercase;letter-spacing:0.20em;line-height:1.35;font-size:11px;padding-left:18px;border-left:1px solid currentColor;opacity:0.90;min-width:140px}.brand-word b{font-weight:700;letter-spacing:0.16em;font-size:12px}.nav-links a{text-decoration:none;color:inherit;font-size:12px;font-weight:500;letter-spacing:0.06em;text-transform:uppercase;position:relative;padding:6px 0;white-space:nowrap}.nav-links a::after{content:"";position:absolute;left:0;bottom:-2px;width:0;height:2px;background:var(--amarelo);transition:width .35s ease}.nav-links a:hover::after{width:100%}.nav-links{display:flex;gap:28px;list-style:none;padding:0;margin:0;align-items:center}.btn{display:inline-flex;align-items:center;gap:10px;padding:13px 24px;border-radius:999px;background:var(--amarelo);color:var(--azul1);text-decoration:none;font-size:13px;font-weight:700;letter-spacing:0.06em;text-transform:uppercase;border:1.5px solid var(--amarelo);transition:background .2s,color .2s,border-color .2s,transform .15s;cursor:pointer;white-space:nowrap}.btn:hover{background:var(--azul1);color:var(--amarelo);border-color:var(--azul1)}.btn.ghost{background:transparent;color:currentColor;border-color:currentColor}.btn.ghost:hover{background:var(--areia-pale);color:var(--azul1);border-color:var(--areia-pale)}.btn.azul{background:var(--azul1);color:var(--areia-pale);border-color:var(--azul1)}.btn.azul:hover{background:var(--amarelo);color:var(--azul1);border-color:var(--amarelo)}.btn.lg{padding:16px 30px;font-size:14px}.hero{position:relative;min-height:100vh;display:flex;flex-direction:column;justify-content:flex-end;color:var(--areia-pale);overflow:hidden;isolation:isolate}.hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 40%;z-index:-2;aspect-ratio:1920/1267;contain-intrinsic-size:1920px 1267px}.hero-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,32,46,0.38) 0%,rgba(0,32,46,0.12) 28%,rgba(0,32,46,0.28) 55%,rgba(0,32,46,0.88) 100%);z-index:-1}.hero-content{padding:110px var(--gutter) 52px;max-width:var(--max);width:100%;margin:0 auto;display:grid;grid-template-columns:1.4fr 1fr;gap:48px;align-items:end}.hero-eyebrow{color:rgba(237,226,201,0.85);margin-bottom:32px}.hero-eyebrow::before{background:var(--amarelo)}.hero h1{font-family:"Catamaran",sans-serif;font-weight:200;font-size:clamp(36px,4.6vw,72px);line-height:0.95;letter-spacing:-0.026em;margin:0 0 12px;color:var(--areia-pale)}.hero h1 .serif{font-style:italic;font-weight:500;color:var(--amarelo);display:inline-block;margin:0 -0.04em}.hero h1 .strong{font-weight:700;color:var(--areia-pale)}.hero-sub{font-size:16px;line-height:1.5;color:rgba(237,226,201,0.88);max-width:520px;margin:0 0 44px;font-weight:300;letter-spacing:0.01em}.hero-ctas{display:flex;gap:14px;flex-wrap:wrap;align-items:center}.hero-side{display:flex;flex-direction:column;gap:24px;align-self:end;padding-bottom:56px}.hero-logo{width:210px;height:210px;margin-left:auto;display:block;filter:drop-shadow(0 8px 28px rgba(0,32,46,0.50))}.hero-meta-card{border-left:1px solid rgba(245,155,30,0.4);padding-left:24px;display:flex;flex-direction:column;gap:20px}.hmc{display:flex;flex-direction:column;gap:4px}.hmc .l{font-family:"JetBrains Mono",monospace;font-size:10px;letter-spacing:0.24em;text-transform:uppercase;color:var(--amarelo)}.hmc .v{font-size:16px;font-weight:500;color:var(--areia-pale);line-height:1.4}.hero-bottom-bar{position:absolute;bottom:0;left:0;right:0;background:rgba(0,32,46,0.60);backdrop-filter:blur(12px);border-top:1px solid rgba(245,155,30,0.30);padding:15px var(--gutter);display:flex;justify-content:space-between;align-items:center;gap:32px;font-family:"JetBrains Mono",monospace;font-size:11.5px;letter-spacing:0.22em;text-transform:uppercase;color:rgba(237,226,201,0.82)}.hero-bottom-bar b{color:var(--amarelo);font-weight:600}section{padding:140px 0;position:relative}.sec-head{display:grid;grid-template-columns:280px 1fr;gap:80px;margin-bottom:80px;align-items:end}.sec-head .num{font-family:"JetBrains Mono",monospace;font-size:11px;letter-spacing:0.28em;text-transform:uppercase;color:var(--azul2);display:flex;align-items:center;gap:14px}.sec-head .num b{color:var(--amarelo);font-weight:700;border:1.5px solid var(--amarelo);border-radius:50%;width:32px;height:32px;display:inline-grid;place-items:center;font-size:11px;transform:rotate(-14deg)}.sec-head h2{font-family:"Catamaran",sans-serif;font-weight:300;font-size:clamp(44px,5.4vw,88px);line-height:1.0;letter-spacing:-0.025em;margin:0;color:var(--azul1)}.sec-head h2 .serif{font-style:italic;font-weight:500;color:var(--verde);font-family:"Cormorant Garamond",serif}.sec-head h2 .am{color:var(--amarelo);font-weight:500}.sec-head .lede{grid-column:2 / -1;font-size:19px;color:var(--cinza1);line-height:1.5;max-width:56ch;margin-top:24px;font-weight:400}.momentos{background:var(--paper)}.momentos-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}.momento{background:var(--areia);border:1px solid var(--rule-soft);overflow:hidden;display:flex;flex-direction:column;transition:transform .35s ease,box-shadow .35s ease}.momento:hover{transform:translateY(-6px);box-shadow:0 24px 60px rgba(0,64,90,0.16)}picture.momento-photo,image-slot.momento-photo{display:block;aspect-ratio:4/3;--image-slot-bg:var(--verde2);--image-slot-fg:var(--azul2)}.momento-body{padding:36px 32px 32px;display:flex;flex-direction:column;gap:16px;flex:1}.momento-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:14px;border-bottom:1px solid var(--rule)}.momento-time{font-family:"JetBrains Mono",monospace;font-size:11px;letter-spacing:0.22em;text-transform:uppercase;color:var(--azul2)}.momento-num{width:32px;height:32px;border-radius:50%;background:var(--amarelo);color:var(--azul1);display:grid;place-items:center;font-family:"Catamaran",sans-serif;font-weight:800;font-size:13px;transform:rotate(-14deg)}.momento h3{font-family:"Catamaran",sans-serif;font-weight:700;font-size:30px;line-height:1.05;letter-spacing:-0.015em;margin:0;color:var(--azul1)}.momento h3 .serif{font-style:italic;font-weight:500;color:var(--verde);font-family:"Cormorant Garamond",serif}.momento p{font-size:15.5px;line-height:1.6;color:var(--cinza1);margin:0;flex:1}.momento .highlight{background:var(--verde2);border-left:3px solid var(--verde);padding:14px 16px;font-size:14px;color:var(--azul1);line-height:1.4}.momento .highlight strong{display:block;font-weight:700;margin-bottom:4px;color:var(--verde)}.momento .highlight .price{font-family:"Catamaran",sans-serif;font-weight:800;font-size:18px;color:var(--azul1)}.momento-cta{margin-top:8px;display:inline-flex;align-items:center;gap:10px;color:var(--azul1);font-weight:600;text-decoration:none;font-size:14px;letter-spacing:0.04em;text-transform:uppercase;padding-top:12px;border-top:1px solid var(--rule)}.momento-cta::after{content:"→";font-weight:400;transition:transform .25s}.momento-cta:hover{color:var(--amarelo)}.momento-cta:hover::after{transform:translateX(4px)}.visao{background:var(--areia);border-top:1px solid var(--rule-soft);border-bottom:1px solid var(--rule-soft)}.visao-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:96px;align-items:center}picture.visao-photo,image-slot.visao-photo{display:block;aspect-ratio:5/6;border:1px solid var(--rule);--image-slot-bg:var(--verde2);--image-slot-fg:var(--azul2)}.visao-text .eyebrow{margin-bottom:24px}.visao-text h2{font-family:"Catamaran",sans-serif;font-weight:300;font-size:clamp(40px,4.4vw,64px);line-height:1.02;letter-spacing:-0.02em;margin:0 0 32px;color:var(--azul1)}.visao-text h2 .serif{font-style:italic;font-family:"Cormorant Garamond",serif;color:var(--verde);font-weight:500}.visao-text p{font-size:17px;line-height:1.7;color:var(--ink);margin:0 0 20px;max-width:52ch}.visao-text p strong{font-weight:700;color:var(--verde)}.visao-credits{margin-top:36px;padding-top:28px;border-top:1px solid var(--rule);display:grid;grid-template-columns:1fr 1fr;gap:24px}.credit .l{font-family:"JetBrains Mono",monospace;font-size:10px;letter-spacing:0.24em;text-transform:uppercase;color:var(--azul2);margin-bottom:6px}.credit .v{font-weight:600;color:var(--azul1);font-size:15px}.feijoada{background:var(--verde);color:var(--areia-pale);overflow:hidden}.feijoada-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:96px;align-items:center}.feijoada-photo-wrap{position:relative}picture.feijoada-photo,image-slot.feijoada-photo{display:block;aspect-ratio:1/1;--image-slot-bg:rgba(237,226,201,0.06);--image-slot-fg:rgba(237,226,201,0.7);border:1px solid rgba(237,226,201,0.2)}.feijoada-medalha{position:absolute;top:-32px;right:-32px;width:160px;color:var(--amarelo)}.feijoada-medalha .pp-core{font-size:14px}.feijoada-medalha .pp-arc-top,.feijoada-medalha .pp-arc-bot{font-size:8px;color:var(--amarelo)}.feijoada-text .eyebrow{color:var(--amarelo);margin-bottom:24px}.feijoada-text .eyebrow::before{background:var(--amarelo)}.feijoada-text h2{font-family:"Catamaran",sans-serif;font-weight:300;font-size:clamp(40px,4.8vw,72px);line-height:1.0;letter-spacing:-0.02em;margin:0 0 28px;color:var(--areia-pale)}.feijoada-text h2 .serif{font-style:italic;font-weight:500;color:var(--amarelo);font-family:"Cormorant Garamond",serif}.feijoada-text p{font-size:17px;line-height:1.7;color:rgba(237,226,201,0.88);margin:0 0 16px;max-width:56ch}.feijoada-info{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin:40px 0 36px;padding:28px 0;border-top:1px solid rgba(237,226,201,0.22);border-bottom:1px solid rgba(237,226,201,0.22)}.fi{display:flex;flex-direction:column;gap:6px}.fi .l{font-family:"JetBrains Mono",monospace;font-size:10px;letter-spacing:0.24em;text-transform:uppercase;color:var(--amarelo)}.fi .v{font-family:"Catamaran",sans-serif;font-weight:600;font-size:18px;color:var(--areia-pale);line-height:1.2}.fi .v .big{font-size:28px;font-weight:700}.avaliacoes{background:var(--areia-pale)}.ratings-row{display:grid;grid-template-columns:repeat(3,1fr);gap:48px;margin-bottom:80px;padding-bottom:80px;border-bottom:1px solid var(--rule)}.rating{display:flex;flex-direction:column;align-items:flex-start;gap:14px}.rating .n{font-family:"Catamaran",sans-serif;font-weight:200;font-size:clamp(64px,7vw,104px);line-height:0.9;letter-spacing:-0.03em;color:var(--azul1)}.rating .n .star{color:var(--amarelo);font-weight:500;margin-right:8px}.rating .src{font-family:"JetBrains Mono",monospace;font-size:11px;letter-spacing:0.24em;text-transform:uppercase;color:var(--azul2)}.rating .label{font-size:15px;color:var(--cinza1);max-width:32ch;line-height:1.45}.pullquote{display:grid;grid-template-columns:280px 1fr;gap:80px;margin-bottom:80px}.pullquote .label{font-family:"JetBrains Mono",monospace;font-size:11px;letter-spacing:0.28em;text-transform:uppercase;color:var(--azul2)}.pullquote blockquote{margin:0;font-family:"Cormorant Garamond",serif;font-style:italic;font-weight:400;font-size:clamp(28px,3.2vw,44px);line-height:1.22;color:var(--azul1);letter-spacing:-0.01em;position:relative}.pullquote blockquote::before{content:"“";position:absolute;left:-0.5em;top:-0.3em;font-size:1.4em;color:var(--amarelo);font-style:normal;line-height:1}.pullquote cite{display:block;margin-top:28px;font-family:"Catamaran",sans-serif;font-style:normal;font-size:13px;font-weight:600;letter-spacing:0.18em;text-transform:uppercase;color:var(--cinza1)}.pullquote cite span{color:var(--amarelo)}.mini-quotes{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}.mq{background:var(--areia);padding:32px 28px 26px;border:1px solid var(--rule-soft);display:flex;flex-direction:column;gap:20px;transition:transform .3s,box-shadow .3s}.mq:hover{transform:translateY(-4px);box-shadow:0 12px 30px rgba(0,64,90,0.10)}.mq .stars{color:var(--amarelo);font-size:16px;letter-spacing:2px}.mq .q{font-family:"Catamaran",sans-serif;font-size:16.5px;line-height:1.5;color:var(--azul1)}.mq .src{font-family:"JetBrains Mono",monospace;font-size:11px;letter-spacing:0.22em;text-transform:uppercase;color:var(--azul2);padding-top:16px;border-top:1px solid var(--rule);margin-top:auto}.eventos{background:var(--paper)}.b2b-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px}.b2b-card{background:var(--areia);border:1px solid var(--rule-soft);padding:48px 44px 44px;display:flex;flex-direction:column;position:relative;transition:transform .35s,box-shadow .35s}.b2b-card:hover{transform:translateY(-4px);box-shadow:0 24px 50px rgba(0,64,90,0.12)}.b2b-card.variant{background:var(--verde2)}.b2b-tag{font-family:"JetBrains Mono",monospace;font-size:11px;letter-spacing:0.24em;text-transform:uppercase;color:var(--azul2);padding-bottom:14px;border-bottom:1px solid var(--rule);margin-bottom:28px;font-weight:500}.b2b-card.variant .b2b-tag{color:var(--verde);border-color:rgba(51,93,74,0.25)}.b2b-card h3{font-family:"Catamaran",sans-serif;font-weight:300;font-size:clamp(36px,3.6vw,52px);line-height:1.0;letter-spacing:-0.02em;margin:0 0 20px;color:var(--azul1)}.b2b-card h3 .serif{font-style:italic;font-weight:500;color:var(--verde);font-family:"Cormorant Garamond",serif}.b2b-card.variant h3 .serif{color:var(--amarelo-deep)}.b2b-lede{font-size:17px;line-height:1.55;color:var(--cinza1);margin:0 0 32px;max-width:44ch}.b2b-list{list-style:none;padding:0;margin:0 0 36px;display:flex;flex-direction:column;flex:1}.b2b-list li{padding:18px 0;border-top:1px solid var(--rule);display:flex;flex-direction:column;gap:4px}.b2b-card.variant .b2b-list li{border-top-color:rgba(51,93,74,0.18)}.b2b-list li:last-child{border-bottom:1px solid var(--rule)}.b2b-card.variant .b2b-list li:last-child{border-bottom-color:rgba(51,93,74,0.18)}.b2b-l{font-family:"Catamaran",sans-serif;font-weight:700;font-size:16px;color:var(--azul1);letter-spacing:-0.005em}.b2b-d{font-size:14.5px;color:var(--cinza1);line-height:1.45}.b2b-foot{display:grid;grid-template-columns:1fr auto;gap:40px;align-items:center;margin-top:56px;padding:32px 0;border-top:1px solid var(--rule)}.b2b-foot-eyebrow{font-family:"JetBrains Mono",monospace;font-size:11px;letter-spacing:0.24em;text-transform:uppercase;color:var(--azul2);margin-bottom:8px}.b2b-foot-text{font-size:16px;color:var(--cinza1);line-height:1.5;max-width:64ch}.reservations{background:var(--azul1);color:var(--areia-pale)}.reservations .sec-head h2{color:var(--areia-pale)}.reservations .sec-head h2 .serif{color:var(--amarelo)}.reservations .sec-head .num{color:rgba(237,226,201,0.65)}.reservations .sec-head .num b{color:var(--amarelo);border-color:var(--amarelo)}.reservations .sec-head .lede{color:rgba(237,226,201,0.78)}.reservations-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:80px;align-items:start}.reservations-info{display:flex;flex-direction:column;gap:36px}.info-block{padding:28px 0;border-bottom:1px solid rgba(237,226,201,0.18)}.info-block:first-child{padding-top:0}.info-block h4{font-family:"JetBrains Mono",monospace;font-size:11px;letter-spacing:0.28em;text-transform:uppercase;color:var(--amarelo);margin:0 0 14px;font-weight:500}.info-block p{font-size:16.5px;line-height:1.55;color:var(--areia-pale);margin:0}.info-block p+p{margin-top:8px}.horarios{display:grid;grid-template-columns:1fr 1fr;gap:16px 32px;font-size:16px;color:var(--areia-pale)}.horarios .d{color:rgba(237,226,201,0.72)}.horarios .h{font-weight:600;color:var(--amarelo);font-variant-numeric:tabular-nums}.reservations-cta-card{background:var(--verde);border:1px solid rgba(237,226,201,0.18);padding:56px 48px;position:relative;overflow:hidden}.reservations-cta-card .stamp{position:absolute;top:-28px;right:-28px;width:130px;color:var(--amarelo)}.reservations-cta-card .stamp .pp-core{font-size:13px}.reservations-cta-card .stamp .pp-arc-top,.reservations-cta-card .stamp .pp-arc-bot{font-size:7px}.reservations-cta-card h3{font-family:"Catamaran",sans-serif;font-weight:300;font-size:clamp(32px,3.6vw,52px);line-height:1.02;letter-spacing:-0.02em;margin:0 0 20px;color:var(--areia-pale);max-width:14ch}.reservations-cta-card h3 .serif{font-style:italic;font-weight:500;color:var(--amarelo);font-family:"Cormorant Garamond",serif}.reservations-cta-card p{color:rgba(237,226,201,0.85);font-size:15.5px;line-height:1.6;margin:0 0 32px;max-width:38ch}.access-pill{margin-top:28px;padding:14px 18px;background:rgba(237,226,201,0.08);border:1px solid rgba(237,226,201,0.18);border-radius:4px;font-size:13px;color:rgba(237,226,201,0.85);line-height:1.5;display:flex;gap:12px;align-items:flex-start}.access-pill::before{content:"♿";font-size:18px;flex-shrink:0;color:var(--amarelo)}footer.foot{background:var(--azul1);color:var(--areia-pale);padding:100px 0 40px;border-top:1px solid rgba(237,226,201,0.10)}.foot-top{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:56px;padding-bottom:64px;border-bottom:1px solid rgba(237,226,201,0.18)}.foot-brand .big{font-family:"Catamaran",sans-serif;font-weight:200;font-size:clamp(48px,5.4vw,80px);line-height:0.92;margin:0 0 28px;letter-spacing:-0.025em;color:var(--areia-pale)}.foot-brand .big .serif{font-style:italic;font-weight:500;color:var(--amarelo);font-family:"Cormorant Garamond",serif}.foot-brand .tagline{font-size:16px;color:rgba(237,226,201,0.78);line-height:1.6;max-width:42ch}.foot-col h5{font-family:"JetBrains Mono",monospace;font-size:11px;letter-spacing:0.26em;text-transform:uppercase;color:var(--amarelo);margin:0 0 22px;font-weight:500}.foot-col ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:12px}.foot-col a{color:var(--areia-pale);text-decoration:none;font-size:15px;transition:color .2s}.foot-col a:hover{color:var(--amarelo)}.foot-bottom{display:flex;justify-content:space-between;align-items:center;margin-top:32px;font-family:"JetBrains Mono",monospace;font-size:11px;color:rgba(237,226,201,0.6);letter-spacing:0.22em;text-transform:uppercase;gap:24px;flex-wrap:wrap}.foot-bottom .crest{display:flex;align-items:center;gap:16px;color:rgba(237,226,201,0.7)}.crest-logo{width:48px;height:48px;display:block}@media (max-width:1100px){:root{--gutter:40px}.sec-head,.visao-grid,.feijoada-grid,.reservations-grid,.foot-top,.pullquote{grid-template-columns:1fr !important;gap:48px}.sec-head .lede{grid-column:1 / -1}.momentos-grid,.mini-quotes{grid-template-columns:1fr}.ratings-row{grid-template-columns:1fr;gap:32px}.b2b-grid{grid-template-columns:1fr}.b2b-foot{grid-template-columns:1fr;gap:20px}section{padding:88px 0}.hero h1{font-size:clamp(40px,7vw,72px)}.hero-logo{margin-left:0;width:180px;height:180px}}@media (min-width:721px) and (max-width:1100px){.hero-content{grid-template-columns:1.4fr 1fr !important}}@media (max-width:720px){:root{--gutter:24px}.hero-bottom-bar{font-size:10px;gap:14px;flex-wrap:wrap}.feijoada-info{grid-template-columns:1fr}.reservations-cta-card{padding:40px 28px}}#tagme-modal-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.65);z-index:9999;align-items:center;justify-content:center}#tagme-modal-overlay.open{display:flex}#tagme-modal-box{background:#fff;border-radius:12px;overflow:hidden;width:min(480px,96vw);max-height:96vh;display:flex;flex-direction:column;box-shadow:0 24px 64px rgba(0,0,0,.4);animation:modalIn .25s ease}@keyframes modalIn{from{opacity:0;transform:translateY(24px) scale(.97)}to{opacity:1;transform:none}}#tagme-modal-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;background:#1a3a2a;color:#fff;font-family:"JetBrains Mono",monospace;font-size:.75rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;flex-shrink:0}#tagme-modal-close{background:none;border:none;color:#fff;font-size:1.5rem;cursor:pointer;line-height:1;padding:0 4px;opacity:.8;transition:opacity .2s}#tagme-modal-close:hover{opacity:1}#tagme-modal-iframe{width:100%;flex:1;border:none;min-height:680px}.fatos-rapidos-section{background:var(--azul1);color:#fff;padding:40px 0}.fatos-rapidos-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:0;text-align:center}.fato-item-hero{padding:16px 12px;border-right:1px solid rgba(255,255,255,0.1)}.fato-item-hero:last-child{border-right:none}.fato-num-hero{font-family:"Cormorant Garamond",Georgia,serif;font-size:2.4rem;font-weight:600;color:var(--amarelo);line-height:1;display:block}.fato-label-hero{font-size:11px;opacity:0.7;margin-top:5px;display:block;letter-spacing:0.02em;line-height:1.4}.answer-box{background:var(--verde2);border-left:4px solid var(--verde);border-radius:0 8px 8px 0;padding:18px 22px;margin:20px 0;font-size:1.02rem;line-height:1.6}.answer-box strong{color:var(--verde)}.speakable-intro{font-size:1.08rem;line-height:1.75;color:var(--cinza1)}@media (max-width:900px){.fatos-rapidos-grid{grid-template-columns:repeat(3,1fr)}.fato-item-hero{border-bottom:1px solid rgba(255,255,255,0.1)}}@media (max-width:480px){.fatos-rapidos-grid{grid-template-columns:repeat(2,1fr)}}.faq-section,.gallery-section,.nosso-grupo-section,section:not(.hero):not(.fatos-rapidos-section){content-visibility:auto;contain-intrinsic-size:0 500px}a,button,[role="button"]{will-change:auto;touch-action:manipulation}a,button{-webkit-tap-highlight-color:transparent}.nav-links a,.btn,.btn-reservar{transform:translateZ(0);backface-visibility:hidden}img{max-width:100%;height:auto}img[width][height]{aspect-ratio:attr(width) / attr(height)}.nav-hamburger{display:none;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:44px;height:44px;background:transparent;border:none;cursor:pointer;padding:8px;border-radius:8px;transition:background 0.2s;-webkit-tap-highlight-color:transparent;z-index:200}.nav-hamburger:hover{background:rgba(255,255,255,0.1)}nav.top.scrolled .nav-hamburger:hover{background:rgba(0,64,90,0.08)}.nav-hamburger span{display:block;width:22px;height:2px;background:currentColor;border-radius:2px;transition:transform 0.3s ease,opacity 0.3s ease,width 0.3s ease;transform-origin:center}.nav-hamburger.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}.nav-hamburger.open span:nth-child(2){opacity:0;width:0}.nav-hamburger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.nav-drawer-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,0.55);z-index:150;backdrop-filter:blur(2px);opacity:0;transition:opacity 0.3s ease}.nav-drawer-overlay.open{display:block;opacity:1}.nav-drawer{position:fixed;top:0;right:0;bottom:0;width:min(320px,88vw);background:var(--azul1,#00405A);z-index:160;transform:translateX(100%);transition:transform 0.35s cubic-bezier(0.4,0,0.2,1);display:flex;flex-direction:column;overflow-y:auto;-webkit-overflow-scrolling:touch}.nav-drawer.open{transform:translateX(0)}.nav-drawer-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid rgba(255,255,255,0.12)}.nav-drawer-logo{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--areia-pale,#F5EFE6)}.nav-drawer-logo img{width:40px;height:40px}.nav-drawer-logo-text{font-family:"JetBrains Mono",monospace;font-size:9px;font-weight:600;letter-spacing:0.2em;text-transform:uppercase;line-height:1.4;color:var(--areia-pale,#F5EFE6);opacity:0.85}.nav-drawer-close{width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,0.08);border:none;border-radius:50%;color:var(--areia-pale,#F5EFE6);font-size:20px;cursor:pointer;transition:background 0.2s;-webkit-tap-highlight-color:transparent}.nav-drawer-close:hover{background:rgba(255,255,255,0.16)}.nav-drawer-links{list-style:none;padding:16px 0;margin:0;flex:1}.nav-drawer-links li{border-bottom:1px solid rgba(255,255,255,0.06)}.nav-drawer-links a{display:flex;align-items:center;gap:14px;padding:16px 24px;text-decoration:none;color:var(--areia-pale,#F5EFE6);font-size:15px;font-weight:500;letter-spacing:0.04em;text-transform:uppercase;transition:background 0.2s,padding-left 0.2s;-webkit-tap-highlight-color:transparent;min-height:56px}.nav-drawer-links a:hover,.nav-drawer-links a:active{background:rgba(255,255,255,0.08);padding-left:32px}.nav-drawer-links .drawer-icon{font-size:18px;width:24px;text-align:center;flex-shrink:0}.nav-drawer-cta{padding:24px;border-top:1px solid rgba(255,255,255,0.12)}.nav-drawer-cta a{display:flex;align-items:center;justify-content:center;gap:10px;padding:16px 24px;background:var(--amarelo,#E8C547);color:var(--azul1,#00405A);border-radius:999px;text-decoration:none;font-size:14px;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;transition:transform 0.2s,box-shadow 0.2s;-webkit-tap-highlight-color:transparent}.nav-drawer-cta a:active{transform:scale(0.97)}.nav-drawer-contact{padding:16px 24px 24px;color:rgba(245,239,230,0.6);font-size:12px;line-height:1.6}.nav-drawer-contact a{color:rgba(245,239,230,0.8);text-decoration:none}.mobile-bottom-nav{display:none;position:fixed;bottom:0;left:0;right:0;z-index:100;background:var(--azul1,#00405A);border-top:1px solid rgba(255,255,255,0.12);padding:0;padding-bottom:env(safe-area-inset-bottom,0px)}.mobile-bottom-nav-inner{display:grid;grid-template-columns:repeat(4,1fr);height:60px}.mobile-bottom-nav a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;text-decoration:none;color:rgba(245,239,230,0.65);font-size:10px;font-weight:600;letter-spacing:0.04em;text-transform:uppercase;transition:color 0.2s,background 0.2s;-webkit-tap-highlight-color:transparent;padding:8px 4px}.mobile-bottom-nav a:hover,.mobile-bottom-nav a:active{color:var(--amarelo,#E8C547);background:rgba(255,255,255,0.06)}.mobile-bottom-nav .bnav-icon{font-size:20px;line-height:1}@media (max-width:720px){body{padding-bottom:calc(60px+env(safe-area-inset-bottom,0px))}.nav-hamburger{display:flex}.nav-inner>.btn{display:none}.brand-word{display:none !important}.brand-logo{width:44px !important;height:44px !important}.nav-inner{padding-top:12px !important;padding-bottom:12px !important;gap:12px !important}.mobile-bottom-nav{display:block}.wa-widget{bottom:calc(72px+env(safe-area-inset-bottom,0px));right:16px}.wa-btn{width:52px;height:52px}.wa-preview{max-width:calc(100vw - 40px);right:0;bottom:64px}}@media (min-width:721px){.nav-hamburger{display:none !important}.nav-drawer{display:none !important}.nav-drawer-overlay{display:none !important}.mobile-bottom-nav{display:none !important}body{padding-bottom:0 !important}}html,body{overflow-x:hidden;max-width:100vw}input,select,textarea{font-size:16px !important}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}@media (max-width:720px){body{font-size:16px;line-height:1.65}h1{font-size:clamp(32px,9vw,56px) !important}h2{font-size:clamp(24px,7vw,40px) !important}h3{font-size:clamp(18px,5vw,28px) !important}.nav-inner{padding-left:max(var(--gutter,24px),env(safe-area-inset-left));padding-right:max(var(--gutter,24px),env(safe-area-inset-right))}section{padding:64px 0 !important}.wrap{padding:0 20px !important}.grid,[class*="-grid"]{grid-template-columns:1fr !important}img{max-width:100%;height:auto}table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}.btn,.btn-reservar,.wa-btn{min-height:48px;min-width:48px;display:inline-flex;align-items:center;justify-content:center}.hero{min-height:100svh}.hero h1{font-size:clamp(36px,10vw,64px) !important}.faq-question{font-size:15px !important;padding:18px 16px !important}.faq-answer{font-size:14px !important;padding:0 16px 16px !important}.reviews-grid{grid-template-columns:1fr !important;gap:16px !important}footer .wrap>div{flex-direction:column !important;gap:24px !important}.menu-grid,.cardapio-grid{grid-template-columns:1fr !important}.decorative-only{display:none !important}}@media (max-width:380px){:root{--gutter:16px}body{font-size:15px}.hero h1{font-size:clamp(28px,8vw,44px) !important}.mobile-bottom-nav-inner{height:56px}.mobile-bottom-nav a{font-size:9px}}@media (max-width:720px) and (orientation:landscape){.hero{min-height:100vw}.mobile-bottom-nav{display:none}body{padding-bottom:0}}@media (max-width:720px){.section-below-fold{content-visibility:auto;contain-intrinsic-size:0 400px}}:focus-visible{outline:3px solid var(--amarelo,#E8C547);outline-offset:2px}@media (hover:none){:focus:not(:focus-visible){outline:none}}.nav-wa-btn{display:none;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background:#25D366;color:#fff;text-decoration:none;flex-shrink:0;transition:transform 0.2s,box-shadow 0.2s;box-shadow:0 2px 8px rgba(37,211,102,0.4);-webkit-tap-highlight-color:transparent}.nav-wa-btn:hover{transform:scale(1.08);box-shadow:0 4px 14px rgba(37,211,102,0.55)}.nav-wa-btn svg{width:20px;height:20px;fill:white}@media (max-width:720px){.nav-wa-btn{display:flex}.wa-widget{display:none !important}}@media (min-width:721px){.nav-wa-btn{display:none !important}.wa-widget{display:flex !important}}.lang-switcher{position:relative;display:flex;align-items:center;gap:0;margin-right:8px;z-index:200}.lang-current{display:flex;align-items:center;gap:6px;padding:6px 10px;border-radius:8px;cursor:pointer;font-size:12px;font-weight:700;letter-spacing:0.08em;color:inherit;background:rgba(255,255,255,0.12);border:1px solid rgba(255,255,255,0.25);transition:background 0.2s,border-color 0.2s;white-space:nowrap;user-select:none}nav.top.scrolled .lang-current{background:rgba(0,64,90,0.08);border-color:rgba(0,64,90,0.2);color:var(--azul1)}.lang-current:hover{background:rgba(255,255,255,0.22)}nav.top.scrolled .lang-current:hover{background:rgba(0,64,90,0.14)}.lang-current .lang-arrow{font-size:8px;opacity:0.7;transition:transform 0.2s}.lang-switcher.open .lang-arrow{transform:rotate(180deg)}.lang-dropdown{position:absolute;top:calc(100%+8px);right:0;background:#fff;border-radius:12px;box-shadow:0 8px 32px rgba(0,0,0,0.15);overflow:hidden;min-width:130px;opacity:0;pointer-events:none;transform:translateY(-8px);transition:opacity 0.2s,transform 0.2s;z-index:300}.lang-switcher.open .lang-dropdown{opacity:1;pointer-events:all;transform:translateY(0)}.lang-dropdown a{display:flex;align-items:center;gap:10px;padding:12px 16px;font-size:13px;font-weight:600;color:var(--azul1,#00405A);text-decoration:none;transition:background 0.15s;border-bottom:1px solid #f0f0f0}.lang-dropdown a:last-child{border-bottom:none}.lang-dropdown a:hover{background:#f5f0e8}.lang-dropdown a.active{background:#e8f4f8;font-weight:700}.lang-dropdown .lang-flag{font-size:18px;line-height:1}.lang-dropdown .lang-name{flex:1}.lang-dropdown .lang-check{color:var(--azul1);font-size:12px}@media (max-width:720px){.lang-switcher{margin-right:4px}.lang-current{padding:5px 8px;font-size:11px}}.quick-answers-section{padding:4rem 1.5rem;background:var(--cream,#f8f4ed)}.qa-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-top:2rem}.qa-card{background:white;border-radius:12px;padding:1.5rem;box-shadow:0 2px 12px rgba(0,0,0,0.08);border-left:4px solid var(--gold,#C8973A)}.qa-card h3{font-size:1rem;font-weight:700;color:var(--navy,#00405A);margin-bottom:0.75rem;line-height:1.4}.qa-answer p{font-size:0.95rem;color:#444;line-height:1.6;margin:0}@media (max-width:600px){.qa-grid{grid-template-columns:1fr}.quick-answers-section{padding:2.5rem 1rem}

/* Nav inicial: fundo semitransparente escuro + texto branco (como na home) */
nav.top {
  background: rgba(0,0,0,0.35) !important;
}
nav.top .nav-inner {
  color: var(--areia-pale, #F5EDD6) !important;
}
nav.top .nav-links a,
nav.top .brand-word,
nav.top .lang-current,
nav.top .lang-current span {
  color: var(--areia-pale, #F5EDD6) !important;
}
.nav-rating-badge{
  display:flex !important;align-items:center !important;gap:6px !important;
  background:rgba(255,255,255,0.13) !important;
  border:1px solid rgba(255,255,255,0.28) !important;
  border-radius:20px !important;
  padding:5px 12px !important;
  text-decoration:none !important;
  color:var(--areia-pale,#f6efde) !important;
  transition:background 0.2s,border-color 0.2s;
}
.nav-rating-badge:hover{background:rgba(255,255,255,0.22);}
nav.top.scrolled .nav-rating-badge{
  background:rgba(0,64,90,0.08);
  border-color:rgba(0,64,90,0.2);
  color:var(--azul1,#00405A);
}
nav.top.scrolled .nav-rating-badge:hover{background:rgba(0,64,90,0.14);}
.nav-rating-stars{font-size:13px;font-weight:800;letter-spacing:-0.02em;color:#f5a623;}
nav.top.scrolled .nav-rating-stars{color:#c8830a;}
.nav-rating-count{font-size:10px;font-weight:600;opacity:0.75;letter-spacing:0.04em;}
@media(max-width:900px){.nav-rating-badge{display:none;}}
nav.top .nav-rating-badge,
nav.top .nav-rating-badge:visited,
nav.top .nav-rating-badge:link {
  color: var(--areia-pale, #f6efde) !important;
  text-decoration: none !important;
}
nav.top.scrolled .nav-rating-badge,
nav.top.scrolled .nav-rating-badge:visited {
  color: var(--azul1, #00405a) !important;
}
/* ── NAV DRAWER: cor clara garantida ── */
.nav-drawer-links a,
.nav-drawer-links a:visited,
.nav-drawer-links a:link,
.nav-drawer-links a:any-link { color: var(--areia-pale, #F5EFE6) !important; }
.nav-drawer-contact a,
.nav-drawer-contact a:visited { color: rgba(245,239,230,0.8) !important; }
.nav-drawer-logo,
.nav-drawer-logo:visited { color: var(--areia-pale, #F5EFE6) !important; }
.nav-drawer-close { color: var(--areia-pale, #F5EFE6) !important; }

nav.top .btn:hover {
  background: var(--azul1, #00405A) !important;
  color: var(--amarelo, #E8C547) !important;
  border-color: var(--azul1, #00405A) !important;
}
nav.top.scrolled {
  background: color-mix(in oklab, var(--paper, #F0E8D0) 92%, transparent) !important;
  backdrop-filter: blur(12px) !important;
}
nav.top.scrolled .nav-inner {
  color: var(--azul1, #00405A) !important;
}
nav.top.scrolled .nav-links a,
nav.top.scrolled .brand-word,
nav.top.scrolled .lang-current,
nav.top.scrolled .lang-current span {
  color: var(--azul1, #00405A) !important;
}
/* brand-word visível nas páginas internas */
.brand-word {
  display: block !important;
  font-family: "JetBrains Mono", monospace !important;
  font-weight: 500 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.20em !important;
  line-height: 1.35 !important;
  font-size: 11px !important;
  padding-left: 18px !important;
  border-left: 1px solid currentColor !important;
  opacity: 0.90 !important;
  min-width: 140px !important;
}
.brand-word b {
  font-weight: 700 !important;
  letter-spacing: 0.16em !important;
  font-size: 12px !important;
}
@media(max-width:900px) {
  .brand-word { display: none !important; }
}
/* Links visitados: sem cor roxa */
nav a:visited,
nav .nav-links a:visited,
nav .lang-dropdown a:visited {
  color: inherit !important;
}

/* ── MOBILE NAV FIX v2: cores corretas no mobile (nav superior + bottom nav) ── */
@media (max-width: 720px) {
  /* ── NAV SUPERIOR: fundo escuro + texto claro ── */
  nav.top,
  nav.top.scrolled {
    background: rgba(0, 20, 30, 0.92) !important;
    backdrop-filter: blur(12px) !important;
    -webkit-backdrop-filter: blur(12px) !important;
    border-bottom-color: rgba(255,255,255,0.08) !important;
    color-scheme: dark !important;
  }
  /* Todos os textos dentro do nav superior: cor clara */
  nav.top *,
  nav.top.scrolled * {
    color: #F5EDD6 !important;
  }
  /* Exceção: botão Reserve mantém cor escura no texto */
  nav.top .btn,
  nav.top.scrolled .btn,
  nav.top .btn-reservar,
  nav.top.scrolled .btn-reservar {
    color: #00405A !important;
    background: #E8C547 !important;
    border-color: #E8C547 !important;
  }
  /* Seletor de idioma: fundo semitransparente claro */
  nav.top .lang-current,
  nav.top.scrolled .lang-current {
    background: rgba(255,255,255,0.15) !important;
    border-color: rgba(255,255,255,0.3) !important;
    color: #F5EDD6 !important;
  }
  /* Logo: mostrar versão clara */
  nav.top .brand-logo.light,
  nav.top.scrolled .brand-logo.light {
    display: block !important;
  }
  nav.top .brand-logo.dark,
  nav.top.scrolled .brand-logo.dark {
    display: none !important;
  }
  /* Hamburguer: botão transparente, barrinhas claras */
  .nav-hamburger {
    color: #F5EDD6 !important;
    background-color: transparent !important;
    border-color: transparent !important;
  }
  .nav-hamburger span,
  .nav-hamburger::before,
  .nav-hamburger::after {
    background-color: #F5EDD6 !important;
    border-color: #F5EDD6 !important;
  }

  /* ── BOTTOM NAV: fundo azul escuro + texto claro ── */
  .mobile-bottom-nav {
    background: #00405A !important;
    border-top-color: rgba(255,255,255,0.15) !important;
    color-scheme: dark !important;
  }
  .mobile-bottom-nav a {
    color: rgba(245, 237, 214, 0.75) !important;
    background: transparent !important;
  }
  .mobile-bottom-nav a:hover,
  .mobile-bottom-nav a:active,
  .mobile-bottom-nav a:focus {
    color: #E8C547 !important;
    background: rgba(255,255,255,0.06) !important;
  }
  .mobile-bottom-nav .bnav-icon {
    color: rgba(245, 237, 214, 0.75) !important;
  }
  /* Botão Reserve no bottom nav: fundo amarelo + texto azul */
  .mobile-bottom-nav .bnav-reservar,
  .mobile-bottom-nav a.bnav-reservar {
    background: #E8C547 !important;
    color: #00405A !important;
  }
  .mobile-bottom-nav .bnav-reservar .bnav-icon,
  .mobile-bottom-nav a.bnav-reservar .bnav-icon {
    color: #00405A !important;
  }}

