:root{
  --bg:#f5e6ef;
  --red:#f12b2e;
  --mint:#6bd5be;
  --text:#dc3a3a;
  --soft:#fff8fc;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);font-family:"Arial Narrow",Arial,sans-serif;color:var(--text)}
body:not(.started){overflow:hidden}.en{display:none}.lang-en .en{display:block}.lang-en .es{display:none}
.welcome{position:fixed;inset:0;z-index:20;display:grid;place-items:center;padding:24px;background:var(--bg);transition:opacity .35s ease,visibility .35s ease}.started .welcome{opacity:0;visibility:hidden;pointer-events:none}.welcome-card{width:min(520px,100%);padding:38px 28px;border:2px solid rgba(107,213,190,.65);border-radius:28px;text-align:center;background:rgba(255,255,255,.34);box-shadow:0 24px 70px rgba(220,58,58,.13)}.brand-blank,.top-logo{margin:auto;width:160px;height:70px;border:2px dashed rgba(107,213,190,.9);border-radius:18px;background:rgba(255,255,255,.35)}.eyebrow{margin:24px 0 8px;font-weight:900;text-transform:uppercase;letter-spacing:2px;color:var(--red)}.welcome h1{margin:0;font-family:Impact,"Arial Black",sans-serif;font-size:46px;line-height:1;color:var(--mint);text-transform:uppercase}.subtitle{margin:14px auto 24px;max-width:360px;font-size:17px;font-weight:700}.language-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px}.language-actions button,.lang-switch button{border:0;border-radius:999px;padding:14px 18px;background:var(--red);color:white;font-weight:900;text-transform:uppercase;cursor:pointer}.language-actions button:last-child{background:var(--mint);color:#fff}.topbar{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px clamp(16px,4vw,54px);background:rgba(245,230,239,.92);backdrop-filter:blur(14px);border-bottom:1px solid rgba(220,58,58,.1)}.top-logo{width:90px;height:42px;margin:0;border-radius:12px}.topbar nav{display:flex;gap:10px;justify-content:center;flex:1}.nav-link{display:inline-flex;align-items:center;justify-content:center;min-width:110px;padding:10px 16px;border:1px solid rgba(220,58,58,.16);border-radius:999px;text-decoration:none;color:var(--red);font-family:Impact,"Arial Black",sans-serif;font-size:18px;letter-spacing:.8px;background:rgba(255,255,255,.35)}.lang-switch{display:flex;gap:6px}.lang-switch button{padding:9px 11px;font-size:12px;background:rgba(241,43,46,.9)}.lang-en .lang-switch [data-lang="en"],.lang-es .lang-switch [data-lang="es"]{background:var(--mint)}
.menu-wrap{width:100%;margin:0 auto;display:grid}.sheet{position:relative;background:var(--bg);padding:58px clamp(20px,6vw,88px);overflow:hidden;border-bottom:1px solid rgba(220,58,58,.08)}.grid{width:min(1180px,100%);margin:0 auto;display:grid;grid-template-columns:1.05fr 1.05fr 1fr;gap:44px;position:relative;z-index:2}.page-one{gap:42px}.hero-title h1{margin:0 0 14px;font-family:Impact,"Arial Black",sans-serif;font-size:52px;line-height:.78;letter-spacing:1px;color:var(--mint);font-weight:900}.hero-title span{font-size:.42em;vertical-align:middle;margin-left:5px}h2{margin:18px 0 20px;font-family:Impact,"Arial Black",sans-serif;color:var(--red);font-size:30px;line-height:.92;letter-spacing:1px}.item,.list-block{position:relative;margin:0 0 17px;padding-left:16px}.item:before,.list-block h3:before{content:"";position:absolute;left:0;top:7px;width:7px;height:7px;background:var(--red);border-radius:50%}.item h3,.list-block h3{margin:0 0 3px;font-family:Impact,"Arial Black",sans-serif;color:var(--red);font-size:18px;line-height:1;text-transform:uppercase;letter-spacing:.2px}.item b,.list-block b,.beer-list b,.shot-list b{font-family:Arial,sans-serif;font-weight:800;margin-left:9px;color:var(--text)}.item p,.item em,.list-block p,.beer-list p,.shot-list p{margin:0;font-size:13px;line-height:1.14;font-weight:700}.item em{font-style:italic;font-weight:500;font-size:12px}.tag{display:inline-block;vertical-align:middle;margin-left:5px;padding:1px 3px;background:#fff;color:#e63737;border-radius:2px;font-family:Arial,sans-serif;font-size:6px;font-weight:900}.section-space{margin-top:52px}.image-side{display:grid;grid-template-columns:1fr 90px;gap:10px;align-items:center}.photo,.logo-placeholder{display:flex;align-items:center;justify-content:center;border:2px dashed rgba(106,213,190,.85);background:rgba(255,255,255,.42);color:transparent;font-family:Arial,sans-serif;font-weight:900;text-align:center}.small-photo{width:90px;height:105px;border-radius:60% 60% 46% 46%}.cocktail{width:95px;height:70px;border-radius:50%}.glass-one{position:absolute;left:160px;bottom:95px;width:210px;height:150px;border-radius:45%;opacity:.82}.page-two .hero-title h1{font-size:47px;line-height:.95}.page-two h2{font-size:29px}.page-two .list-block{margin-bottom:20px}.page-two .list-block p,.beer-list p,.shot-list p{font-size:14px;line-height:1.18}.center-column{padding-top:6px}.shot-list{margin:26px 0 48px}.promo-box{border:3px solid rgba(106,213,190,.85);border-radius:18px;min-height:250px;padding:24px 18px 16px;text-align:center;background:rgba(255,255,255,.12)}.promo-box span{display:block;font-family:Impact,"Arial Black",sans-serif;color:var(--red);font-size:18px}.promo-box strong{display:block;margin:15px 0 10px;font-family:Impact,"Arial Black",sans-serif;color:var(--red);font-size:28px;line-height:1.05;letter-spacing:1px}.cans{height:86px;border:0;background:rgba(255,255,255,.35)}.flor-logo{width:170px;height:70px;border:0;background:rgba(255,255,255,.22);margin:45px auto 20px}.warning{font-family:Impact,"Arial Black",sans-serif;text-align:center;color:var(--red);font-size:32px;line-height:1.28;margin:0}.bucket{margin-top:72px}.beer-list{margin:27px 0 0}.compact{padding-left:0;margin-top:26px}.compact h3:before{display:none}.compact h3{position:relative}.mini-cans{float:right;width:95px;height:66px;margin-top:-55px;border:0}.valetodo-logo{width:210px;height:70px;border:0;background:rgba(255,255,255,.22);margin-top:56px;margin-left:auto}
@media (max-width:900px){body:not(.started){overflow:hidden}.topbar{gap:8px;padding:10px 12px}.top-logo{width:56px;height:34px}.topbar nav{gap:6px}.nav-link{min-width:auto;padding:9px 12px;font-size:16px}.lang-switch button{padding:8px 9px}.sheet{padding:38px 24px}.grid{grid-template-columns:1fr;gap:0}.hero-title h1,.page-two .hero-title h1{font-size:44px}.col{max-width:520px;width:100%;margin:0 auto}.section-space{margin-top:34px}.glass-one{position:relative;left:auto;bottom:auto;margin:10px auto;width:170px;height:110px}.page-two .grid{gap:18px}.promo-box{min-height:210px}.warning{font-size:26px}.bucket{margin-top:36px}.valetodo-logo{margin:32px auto 0}.welcome h1{font-size:38px}.language-actions{grid-template-columns:1fr}}
@media (max-width:420px){.sheet{padding:30px 18px}.hero-title h1,.page-two .hero-title h1{font-size:38px}h2{font-size:26px}.item h3,.list-block h3{font-size:17px}.item p,.item em,.list-block p,.beer-list p,.shot-list p{font-size:12px}.image-side{grid-template-columns:1fr 74px}.small-photo{width:74px;height:88px}.warning{font-size:22px}.promo-box strong{font-size:24px}.welcome-card{padding:30px 20px}.brand-blank{width:130px;height:58px}}


/* === FIX FINAL: misma tipografía y precios como el PDF === */
html,body{font-family:"Arial Narrow","Aptos Narrow","Roboto Condensed",Arial,sans-serif !important;}
body, p, em, span, a, button, .item p, .item em, .list-block p, .beer-list p, .shot-list p{
  font-family:"Arial Narrow","Aptos Narrow","Roboto Condensed",Arial,sans-serif !important;
  font-style:normal !important;
  font-stretch:condensed;
}
.hero-title h1,h1,h2,h3,.nav-link,.welcome h1,.promo-box span,.promo-box strong,.warning{
  font-family:Impact,"Arial Black","Anton",sans-serif !important;
  font-weight:900 !important;
  font-style:normal !important;
  letter-spacing:.8px;
}
.item p,.item em{display:block; font-size:13px !important; line-height:1.14 !important; font-weight:700 !important;}
.item b,.list-block b,.beer-list b,.shot-list b{
  font-family:Arial,Helvetica,sans-serif !important;
  font-weight:800 !important;
  font-style:normal !important;
  color:var(--text) !important;
}
body.lang-en .item p.es{display:none !important;}
body.lang-en .item em.en{display:block !important;}
body.lang-es .item p.es{display:block !important;}
body.lang-es .item em.en{display:none !important;}


/* =========================================================
   AJUSTE FINAL: TIPOGRAFÍA Y TAMAÑOS UNIFORMES
   ========================================================= */
:root{
  --menu-title-font: Impact, "Arial Black", "Arial Narrow", sans-serif;
  --menu-body-font: "Arial Narrow", Arial, Helvetica, sans-serif;
}

html, body{
  font-family: var(--menu-body-font) !important;
  font-synthesis: none !important;
  -webkit-font-smoothing: antialiased !important;
  text-rendering: geometricPrecision !important;
}

/* Títulos principales: CARTA, BOTELLAS, CERVEZA */
.hero-title h1,
.welcome h1{
  font-family: var(--menu-title-font) !important;
  font-size: clamp(42px, 5.1vw, 64px) !important;
  line-height: .82 !important;
  font-weight: 900 !important;
  letter-spacing: 1px !important;
  text-transform: uppercase !important;
}

/* Títulos de secciones: COCTELES, RED BULL DRINKS, COMPLEMENTOS, etc */
h2,
.section-title,
.category-title{
  font-family: var(--menu-title-font) !important;
  font-size: clamp(25px, 2.8vw, 34px) !important;
  line-height: .95 !important;
  font-weight: 900 !important;
  letter-spacing: 1px !important;
  text-transform: uppercase !important;
}

/* Nombres de tragos y categorías pequeñas */
.item h3,
.list-block h3{
  font-family: var(--menu-title-font) !important;
  font-size: 18px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  letter-spacing: .2px !important;
  text-transform: uppercase !important;
}

/* Descripciones, botellas, cerveza, bucket, mixers */
.item p,
.item em,
.list-block p,
.beer-list p,
.shot-list p,
.mixers-list p{
  font-family: var(--menu-body-font) !important;
  font-size: 13px !important;
  line-height: 1.14 !important;
  font-weight: 700 !important;
  letter-spacing: 0 !important;
}

/* Precios: siempre visibles, sin mostrarse como código y con mismo estilo */
.item b,
.list-block b,
.beer-list b,
.shot-list b,
.mixers-list b,
.price-fix{
  font-family: var(--menu-body-font) !important;
  font-size: 14px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  color: var(--text) !important;
  white-space: nowrap !important;
  display: inline-block !important;
  visibility: visible !important;
  opacity: 1 !important;
  margin-left: 8px !important;
}

/* Alineación limpia para listas tipo botellas / mixers */
.list-block p,
.beer-list p,
.shot-list p,
.mixers-list p{
  display: flex !important;
  justify-content: space-between !important;
  align-items: baseline !important;
  gap: 10px !important;
  max-width: 100% !important;
}
.list-block p b,
.beer-list p b,
.shot-list p b,
.mixers-list p b{
  margin-left: auto !important;
  flex: 0 0 auto !important;
}

/* Texto legal siempre visible */
.warning{
  display: block !important;
  text-align: center !important;
  font-family: var(--menu-title-font) !important;
  font-size: clamp(28px, 3.8vw, 48px) !important;
  line-height: 1.12 !important;
  color: var(--text) !important;
  text-transform: uppercase !important;
  margin: 34px auto 14px !important;
  max-width: 720px !important;
  visibility: visible !important;
  opacity: 1 !important;
}

/* Evita que el inglés cambie de forma visual */
.lang-en *,
.lang-es *{
  font-synthesis: none !important;
}

@media(max-width:760px){
  .hero-title h1{font-size:46px !important;}
  h2{font-size:28px !important;}
  .item h3,.list-block h3{font-size:18px !important;}
  .item p,.item em,.list-block p,.beer-list p,.shot-list p,.mixers-list p{font-size:13px !important;}
  .warning{font-size:30px !important;}
}


/* FIX ORIGINAL PRICE POSITION */
.list-block p,
.beer-list p,
.shot-list p,
.mixers-list p{
display:block !important;
}

.list-block p b,
.beer-list p b,
.shot-list p b,
.mixers-list p b,
.item h3 b{
display:inline-block !important;
margin-left:6px !important;
position:relative !important;
left:auto !important;
right:auto !important;
float:none !important;
vertical-align:baseline !important;
}

.mixers-list p b{
opacity:1 !important;
visibility:visible !important;
color:var(--text) !important;
}


/* EASY EDIT LOGOS */
.top-logo,
.brand-blank{
background:url('../img/logo-principal.png') center/contain no-repeat !important;
background-size:contain !important;
background-repeat:no-repeat !important;
background-position:center !important;
border:none !important;
color:transparent !important;
}

.flor-logo,
.logo-placeholder{
background:url('../img/logo-flor.png') center/contain no-repeat !important;
background-size:contain !important;
background-repeat:no-repeat !important;
background-position:center !important;
border:none !important;
color:transparent !important;
}

/* =========================================================
   LOGOS / FOTOS EDITABLES DESDE EL INDEX
   Ya no necesitas tocar CSS: cambia el src de cada <img> en index.html
   ========================================================= */
.top-logo,
.brand-blank,
.photo,
.logo-placeholder,
.small-photo,
.cocktail,
.cans,
.mini-cans,
.flor-logo{
  background: transparent !important;
  border: none !important;
  overflow: visible !important;
}
.top-logo img,
.brand-blank img,
.photo img,
.logo-placeholder img,
.small-photo img,
.cocktail img,
.cans img,
.mini-cans img,
.flor-logo img{
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  display: block !important;
}
.cans img,
.mini-cans img{
  object-fit: contain !important;
}
.brand-blank{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
}

/* =========================================================
   AJUSTE FINAL MÓVIL + WARNING EN PIE DE PÁGINA
   ========================================================= */
.sheet-bottles .menu-footer-warning{
  width: min(920px, 100%) !important;
  margin: 52px auto 0 !important;
  padding: 34px 16px 0 !important;
  display: block !important;
  text-align: center !important;
  clear: both !important;
}

@media (max-width:900px){
  .topbar{
    flex-wrap: wrap !important;
    justify-content: center !important;
  }
  .topbar nav{
    order: 3 !important;
    width: 100% !important;
    margin-top: 6px !important;
  }
  .sheet{
    padding-left: 18px !important;
    padding-right: 18px !important;
  }
  .grid,
  .page-two{
    gap: 26px !important;
  }
  .col{
    max-width: 560px !important;
  }
  .page-two .col-right{
    padding-top: 24px !important;
  }
  .flor-logo{
    margin-bottom: 10px !important;
  }
  .sheet-bottles .menu-footer-warning{
    margin-top: 44px !important;
    padding-top: 30px !important;
    font-size: 27px !important;
    line-height: 1.12 !important;
  }
}

@media (max-width:420px){
  .nav-link{
    font-size: 14px !important;
    padding: 8px 10px !important;
  }
  .sheet{
    padding-left: 14px !important;
    padding-right: 14px !important;
  }
  .page-two .col-right{
    padding-top: 28px !important;
  }
  .sheet-bottles .menu-footer-warning{
    margin-top: 38px !important;
    padding-top: 26px !important;
    font-size: 23px !important;
    line-height: 1.14 !important;
  }
}


.footer-warning-wrap{
  width:100%;
  display:flex;
  justify-content:center;
  align-items:center;
  padding:35px 20px 10px 20px;
}

.footer-warning-wrap .warning{
  text-align:center;
  font-size:14px;
  line-height:1.5;
  opacity:0.85;
}

@media (max-width:768px){
  .footer-warning-wrap{
    padding:50px 20px 20px 20px;
  }

  .footer-warning-wrap .warning{
    font-size:13px;
  }
}


/* TAGS MÁS GRANDES */
.tag{
  font-size:9px !important;
  padding:3px 6px !important;
  border-radius:4px !important;
  letter-spacing:0.5px;
}

/* MEJORAS CELULARES */
@media (max-width:768px){

  body{
    overflow-x:hidden;
  }

  .grid{
    gap:24px !important;
  }

  .hero-title h1{
    font-size:34px !important;
    line-height:1.05 !important;
  }

  .item h3,
  .list-block h3{
    font-size:18px !important;
  }

  .item p,
  .item em,
  .beer-list p,
  .list-block p{
    font-size:14px !important;
    line-height:1.45 !important;
  }

  .top-logo img{
    width:120px !important;
    max-width:120px !important;
    height:auto !important;
  }

  .promo-box{
    padding:18px !important;
  }

  .warning{
    font-size:13px !important;
    line-height:1.5 !important;
  }

  img{
    image-rendering:auto;
  }
}

/* RENDIMIENTO */
img{
  will-change:auto;
}

*{
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}


/* HEADER FIX FINAL */
.topbar{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:12px !important;
}

.top-logo{
  flex:0 0 auto !important;
  width:120px !important;
  max-width:120px !important;
}

.top-logo img{
  width:120px !important;
  max-width:120px !important;
  height:auto !important;
  display:block !important;
}

.topbar nav{
  flex:1 1 auto !important;
}

.lang-switch{
  margin-left:auto !important;
  flex:0 0 auto !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:6px !important;
  white-space:nowrap !important;
}

@media (max-width:768px){
  .topbar{
    flex-wrap:nowrap !important;
  }

  .top-logo{
    width:120px !important;
    max-width:120px !important;
  }

  .top-logo img{
    width:120px !important;
    max-width:120px !important;
  }

  .topbar nav{
    flex:1 1 auto !important;
    min-width:0 !important;
  }

  .lang-switch{
    margin-left:auto !important;
    margin-right:0 !important;
    justify-content:flex-end !important;
  }
}


/* FIX FINAL ES EN DERECHA */
.topbar{
  display:flex !important;
  align-items:center !important;
}

.top-logo{
  width:120px !important;
  flex-shrink:0 !important;
}

.topbar nav{
  margin-left:20px !important;
}

.lang-switch{
  position:absolute !important;
  right:20px !important;
  top:50% !important;
  transform:translateY(-50%) !important;
  margin-left:0 !important;
  display:flex !important;
  gap:6px !important;
  z-index:20 !important;
}

@media (max-width:768px){
  .lang-switch{
    right:15px !important;
  }
}


/* NAV CENTRADO */
.topbar{
  position:relative !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
}

.top-logo{
  width:120px !important;
  max-width:120px !important;
  flex-shrink:0 !important;
  z-index:2;
}

.top-logo img{
  width:120px !important;
  max-width:120px !important;
  height:auto !important;
}

.topbar nav{
  position:absolute !important;
  left:50% !important;
  transform:translateX(-50%) !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:28px !important;
  width:auto !important;
  margin:0 !important;
  z-index:1;
}

.lang-switch{
  position:absolute !important;
  right:20px !important;
  top:50% !important;
  transform:translateY(-50%) !important;
  display:flex !important;
  gap:6px !important;
  z-index:2;
}

@media (max-width:768px){

  .topbar nav{
    gap:16px !important;
  }

  .nav-link{
    font-size:13px !important;
  }

  .lang-switch{
    right:12px !important;
  }
}


/* TOPBAR SIEMPRE VISIBLE */
.topbar{
  position:sticky !important;
  top:0 !important;
  z-index:9999 !important;
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
}

/* SUAVIDAD */
html{
  scroll-behavior:smooth;
}

body{
  overflow-x:hidden;
}


/* TOPBAR OCULTO EN PANTALLA DE IDIOMA */
body:not(.menu-visible) .topbar{
  opacity:0 !important;
  visibility:hidden !important;
  pointer-events:none !important;
  transform:translateY(-20px);
  transition:all .35s ease;
}

body.menu-visible .topbar{
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
  transform:translateY(0);
}


.topbar{
  transition:all .35s ease !important;
}


/* AJUSTE FINAL HEADER: LOGO IZQUIERDA + BOTONES MÁS GRANDES */
.topbar{
  position:sticky !important;
  top:0 !important;
  display:flex !important;
  align-items:center !important;
  min-height:72px !important;
  padding-top:10px !important;
  padding-bottom:10px !important;
}

.top-logo{
  position:relative !important;
  left:0 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  width:120px !important;
  max-width:120px !important;
  height:100% !important;
  flex:0 0 120px !important;
  z-index:3 !important;
}

.top-logo img{
  width:120px !important;
  max-width:120px !important;
  height:auto !important;
  display:block !important;
}

.topbar nav{
  position:absolute !important;
  left:50% !important;
  top:50% !important;
  transform:translate(-50%, -50%) !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:14px !important;
  margin:0 !important;
  width:auto !important;
}

.topbar .nav-link{
  font-size:17px !important;
  line-height:1 !important;
  padding:10px 14px !important;
  border-radius:999px !important;
  white-space:nowrap !important;
}

.lang-switch{
  position:absolute !important;
  right:20px !important;
  top:50% !important;
  transform:translateY(-50%) !important;
  z-index:3 !important;
}

@media (max-width:768px){
  .topbar{
    min-height:66px !important;
    padding-left:14px !important;
    padding-right:14px !important;
  }

  .top-logo{
    width:120px !important;
    max-width:120px !important;
    flex-basis:120px !important;
  }

  .top-logo img{
    width:120px !important;
    max-width:120px !important;
  }

  .topbar nav{
    gap:8px !important;
  }

  .topbar .nav-link{
    font-size:15px !important;
    padding:9px 10px !important;
  }

  .lang-switch{
    right:12px !important;
  }
}


/* =========================================================
   FIX DEFINITIVO TOPBAR / LOGO SIN SALTO
   Mantiene el logo reservado desde el primer render para que no cambie
   de tamaño cuando carga la imagen.
   ========================================================= */
.topbar{
  position:sticky !important;
  top:0 !important;
  z-index:9999 !important;
  min-height:72px !important;
  height:72px !important;
  padding:10px clamp(16px,4vw,54px) !important;
  display:grid !important;
  grid-template-columns:120px 1fr 78px !important;
  align-items:center !important;
  column-gap:16px !important;
  background:rgba(245,230,239,.94) !important;
  border-bottom:1px solid rgba(220,58,58,.1) !important;
  backdrop-filter:blur(14px) !important;
  -webkit-backdrop-filter:blur(14px) !important;
  overflow:hidden !important;
  transition:opacity .25s ease, transform .25s ease, visibility .25s ease !important;
}

.top-logo{
  grid-column:1 !important;
  position:relative !important;
  left:auto !important;
  top:auto !important;
  transform:none !important;
  width:120px !important;
  max-width:120px !important;
  min-width:120px !important;
  height:52px !important;
  min-height:52px !important;
  max-height:52px !important;
  flex:none !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  margin:0 !important;
  padding:0 !important;
  line-height:0 !important;
  background:transparent !important;
  border:0 !important;
  overflow:hidden !important;
  contain:layout paint size !important;
}

.top-logo img{
  display:block !important;
  width:120px !important;
  max-width:120px !important;
  min-width:120px !important;
  height:52px !important;
  max-height:52px !important;
  object-fit:contain !important;
  object-position:left center !important;
  margin:0 !important;
  padding:0 !important;
  transform:none !important;
}

.topbar nav{
  grid-column:2 !important;
  position:static !important;
  left:auto !important;
  top:auto !important;
  transform:none !important;
  width:100% !important;
  min-width:0 !important;
  margin:0 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:14px !important;
}

.lang-switch{
  grid-column:3 !important;
  position:static !important;
  right:auto !important;
  top:auto !important;
  transform:none !important;
  width:78px !important;
  min-width:78px !important;
  margin:0 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:6px !important;
  white-space:nowrap !important;
}

body:not(.menu-visible) .topbar{
  opacity:0 !important;
  visibility:hidden !important;
  pointer-events:none !important;
  transform:translateY(-10px) !important;
}

body.menu-visible .topbar{
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
  transform:translateY(0) !important;
}

@media (max-width:768px){
  .topbar{
    height:66px !important;
    min-height:66px !important;
    padding:8px 12px !important;
    grid-template-columns:120px minmax(120px,1fr) 66px !important;
    column-gap:8px !important;
  }
  .top-logo,
  .top-logo img{
    width:120px !important;
    max-width:120px !important;
    min-width:120px !important;
    height:50px !important;
    max-height:50px !important;
  }
  .topbar nav{
    gap:6px !important;
  }
  .topbar .nav-link{
    font-size:14px !important;
    padding:8px 9px !important;
    min-width:auto !important;
  }
  .lang-switch{
    width:66px !important;
    min-width:66px !important;
    gap:4px !important;
  }
  .lang-switch button{
    padding:7px 7px !important;
    font-size:11px !important;
  }
}

@media (max-width:390px){
  .topbar{
    grid-template-columns:96px minmax(102px,1fr) 62px !important;
    column-gap:6px !important;
  }
  .top-logo,
  .top-logo img{
    width:96px !important;
    max-width:96px !important;
    min-width:96px !important;
    height:44px !important;
    max-height:44px !important;
  }
  .topbar .nav-link{
    font-size:13px !important;
    padding:7px 7px !important;
  }
  .lang-switch{
    width:62px !important;
    min-width:62px !important;
  }
}
