/* Fuentes alojadas en el propio servidor (sin Google Fonts) */
@font-face{font-family:"Avigea";src:url("../fonts/avigea.woff2") format("woff2");font-display:swap;}
@font-face{font-family:"Poppins";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/poppins-latin-400-normal.woff2") format("woff2");}
@font-face{font-family:"Poppins";font-style:normal;font-weight:500;font-display:swap;src:url("../fonts/poppins-latin-500-normal.woff2") format("woff2");}
@font-face{font-family:"Poppins";font-style:normal;font-weight:600;font-display:swap;src:url("../fonts/poppins-latin-600-normal.woff2") format("woff2");}
@font-face{font-family:"Poppins";font-style:normal;font-weight:700;font-display:swap;src:url("../fonts/poppins-latin-700-normal.woff2") format("woff2");}
html,body{margin:0;padding:0;background:#ffffff;}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto;}}
.lc a:focus-visible,.lc button:focus-visible{outline:3px solid #fe7c39;outline-offset:3px;}
.lc-salto{position:absolute;left:-9999px;top:0;}
.lc-salto:focus{left:16px;top:16px;z-index:10000;background:#fff;color:#2b1208!important;padding:10px 16px;border:2px solid #2b1208;border-radius:8px;}
.lc-hero-foto{background:#fff3ea;}
.lc{--rojo:#d53a1a;--naranja:#fe7c39;--blanco:#ffffff;--crema:#fff3ea;--vino:#7a1f0c;--texto:#2b1208;--titulo:"Avigea",Georgia,serif;--cuerpo:"Poppins",Arial,sans-serif;
  font-family:var(--cuerpo);color:var(--texto);background:var(--blanco);overflow-x:hidden;line-height:1.6;}
.lc *,.lc *::before,.lc *::after{box-sizing:border-box;}
.lc img{max-width:100%;display:block;}
.lc a{text-decoration:none;}
.lc h1,.lc h2,.lc h3{font-family:var(--titulo);font-weight:400;text-transform:uppercase;line-height:.95;margin:0;letter-spacing:.5px;}
.lc p{margin:0 0 1em;}
.lc-wrap{max-width:1200px;margin:0 auto;padding:0 24px;}
/* --- Botones con sombra sólida --- */
.lc-btn{display:inline-block;font-family:var(--cuerpo);font-weight:600;font-size:15px;padding:14px 28px;border-radius:999px;border:2px solid var(--texto);box-shadow:4px 4px 0 var(--texto);transition:transform .15s,box-shadow .15s;cursor:pointer;}
.lc-btn:hover{transform:translate(2px,2px);box-shadow:2px 2px 0 var(--texto);}
.lc-btn--naranja{background:var(--naranja);color:var(--texto)!important;}
.lc-btn--blanco{background:var(--blanco);color:var(--rojo)!important;}
.lc-btn--rojo{background:var(--rojo);color:var(--blanco)!important;}
/* --- Encabezado / menú --- */
.lc-nav{background:var(--vino);padding:12px 0;border-bottom:3px solid var(--texto);}
.lc-nav .lc-wrap{display:flex;align-items:center;justify-content:space-between;gap:20px;}
.lc-logo{font-family:var(--titulo);font-size:34px;color:var(--blanco)!important;text-transform:uppercase;line-height:1;}
.lc-logo img{height:68px;width:auto;max-width:none;}
.lc-links{display:flex;gap:28px;list-style:none;margin:0;padding:0;}
.lc-links a{color:var(--blanco)!important;font-weight:600;font-size:14px;text-transform:uppercase;letter-spacing:1px;}
.lc-links a:hover{color:var(--naranja)!important;}
/* --- Portada --- */
.lc-hero{background:var(--rojo);color:var(--blanco);padding:70px 0 90px;}
.lc-hero .lc-wrap{display:grid;grid-template-columns:1.2fr 1fr;gap:50px;align-items:center;}
.lc-hero h1{font-size:clamp(52px,8vw,110px);color:var(--blanco);}
.lc-hero h1 span{color:var(--naranja);}
.lc-hero p{font-size:18px;max-width:480px;margin:24px 0 32px;}
.lc-hero-btns{display:flex;gap:16px;flex-wrap:wrap;}
.lc-hero-foto{transform:rotate(4deg);border:10px solid var(--blanco);box-shadow:12px 12px 0 var(--vino);}
.lc-hero-foto img{width:100%;aspect-ratio:4/5;object-fit:cover;}
/* --- Cinta animada --- */
.lc-cinta{background:var(--blanco);border-top:3px solid var(--texto);border-bottom:3px solid var(--texto);padding:14px 0;overflow:hidden;white-space:nowrap;}
.lc-cinta-track{display:inline-flex;animation:lc-mover 28s linear infinite;}
.lc-cinta span{font-family:var(--titulo);font-size:24px;text-transform:uppercase;color:var(--rojo);padding:0 22px;}
.lc-cinta span.lc-sep{color:var(--naranja);padding:0;}
@keyframes lc-mover{from{transform:translateX(0);}to{transform:translateX(-50%);}}
@media (prefers-reduced-motion:reduce){.lc-cinta-track{animation:none;}}
/* --- Menú (bloque partido) --- */
.lc-menu{display:grid;grid-template-columns:1fr 1fr;}
.lc-menu-arte{background:var(--vino);position:relative;display:flex;align-items:center;justify-content:center;padding:70px 30px;min-height:600px;overflow:hidden;}
.lc-vertical{position:absolute;top:50%;writing-mode:vertical-rl;font-family:var(--titulo);font-size:clamp(70px,9vw,140px);color:var(--rojo);text-transform:uppercase;line-height:1;white-space:nowrap;}
.lc-vertical--izq{left:3%;transform:translateY(-50%) rotate(180deg);}
.lc-vertical--der{right:3%;transform:translateY(-50%);}
.lc-menu-arte img{position:relative;z-index:1;width:70%;max-width:340px;aspect-ratio:3/4;object-fit:cover;border-radius:16px;border:6px solid var(--blanco);transform:rotate(-3deg);}
.lc-menu-texto{background:var(--crema);padding:80px 60px;display:flex;flex-direction:column;justify-content:center;}
.lc-menu-texto h2{font-size:clamp(44px,5.5vw,76px);color:var(--rojo);margin-bottom:24px;}
.lc-platos{list-style:none;padding:0;margin:8px 0 34px;display:grid;grid-template-columns:1fr 1fr;gap:12px;}
.lc-platos li{background:var(--blanco);border:2px solid var(--texto);border-radius:12px;padding:12px 16px;font-weight:500;font-size:15px;}
.lc-platos li strong{display:block;color:var(--rojo);font-family:var(--titulo);font-weight:400;font-size:20px;text-transform:uppercase;letter-spacing:.5px;}
/* --- Menú completo (carta) --- */
.lc-carta{background:var(--blanco);padding:100px 0;}
.lc-carta h2{font-size:clamp(46px,6vw,84px);color:var(--rojo);}
.lc-carta-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:64px 48px;align-items:start;}
.lc-cat-num{display:block;font-family:var(--titulo);font-size:22px;letter-spacing:3px;color:var(--rojo);margin-bottom:8px;}
.lc-cat h3{font-size:clamp(26px,2.4vw,32px);color:var(--texto);overflow-wrap:break-word;}
.lc-cat-sub{font-style:italic;font-size:14px;color:#8a5a48;margin:8px 0 0!important;padding-bottom:18px;border-bottom:3px solid var(--naranja);}
.lc-cat h4{font-family:var(--cuerpo);font-weight:700;font-size:12px;letter-spacing:2px;text-transform:uppercase;color:var(--rojo);margin:22px 0 6px;}
.lc-cat ul{list-style:none;margin:14px 0 0;padding:0;}
.lc-cat h4+ul{margin-top:0;}
.lc-cat li{position:relative;padding:7px 0 7px 22px;font-size:15px;font-weight:500;line-height:1.4;}
.lc-cat li::before{content:"";position:absolute;left:2px;top:14px;width:8px;height:8px;border-radius:50%;background:var(--naranja);}
.lc-cat li small{display:block;font-weight:400;font-size:13px;color:#8a5a48;margin-top:2px;}
.lc-nota{font-size:13px;font-style:italic;background:var(--crema);border-left:4px solid var(--rojo);padding:8px 12px;margin:12px 0 0!important;border-radius:0 8px 8px 0;}
.lc-fav{display:inline-block;background:var(--naranja);color:var(--texto);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:1px;padding:2px 10px;border-radius:999px;border:2px solid var(--texto);vertical-align:middle;margin-left:4px;}
.lc-cat--ancha{grid-column:1/-1;}
.lc-cat-cols{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 48px;}
.lc-carta-cta{text-align:center;margin-top:70px;}
/* --- Servicios --- */
.lc-servicios{background:var(--naranja);padding:100px 0;}
.lc-cabecera{text-align:center;margin-bottom:56px;}
.lc-etiqueta{display:inline-block;font-weight:700;font-size:13px;letter-spacing:2px;text-transform:uppercase;margin-bottom:14px;}
.lc-servicios h2{font-size:clamp(46px,6vw,84px);color:var(--texto);}
.lc-tarjetas{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:24px;}
.lc-tarjeta{background:var(--blanco);border:3px solid var(--texto);border-radius:20px;padding:32px 28px;box-shadow:8px 8px 0 var(--texto);transition:transform .2s;}
.lc-tarjeta:hover{transform:translateY(-6px) rotate(-1deg);}
.lc-num{font-family:var(--titulo);font-size:52px;color:var(--naranja);line-height:1;}
.lc-tarjeta h3{font-size:30px;color:var(--rojo);margin:10px 0 14px;}
.lc-tarjeta p{font-size:15px;margin:0;}
/* --- Galería --- */
.lc-galeria{background:var(--crema);padding:100px 0;}
.lc-galeria h2{font-size:clamp(46px,6vw,84px);color:var(--rojo);}
.lc-galeria .lc-etiqueta{color:var(--texto);}
.lc-fotos{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:20px;}
.lc-fotos img{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:16px;border:3px solid var(--texto);}
.lc-pronto{aspect-ratio:1/1;border-radius:16px;border:3px dashed var(--rojo);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:24px;color:var(--rojo);}
.lc-pronto strong{font-family:var(--titulo);font-weight:400;font-size:34px;text-transform:uppercase;line-height:1;margin-bottom:10px;}
/* --- Contacto --- */
.lc-contacto{background:var(--rojo);color:var(--blanco);padding:100px 0;}
.lc-contacto .lc-wrap{display:grid;grid-template-columns:1.1fr 1fr;gap:60px;align-items:center;}
.lc-contacto h2{font-size:clamp(50px,7vw,100px);color:var(--blanco);margin-bottom:24px;}
.lc-contacto p{font-size:18px;max-width:460px;}
.lc-datos{display:grid;gap:16px;}
.lc-dato{background:var(--blanco);color:var(--texto);border:3px solid var(--texto);border-radius:16px;padding:18px 22px;box-shadow:6px 6px 0 var(--vino);}
.lc-dato small{display:block;font-weight:700;font-size:12px;letter-spacing:2px;text-transform:uppercase;color:var(--rojo);}
.lc-dato a,.lc-dato span{color:var(--texto)!important;font-weight:600;font-size:17px;}
.lc-redes{display:flex;gap:12px;flex-wrap:wrap;margin-top:8px;}
.lc-pie{background:var(--vino);color:var(--blanco);text-align:center;padding:22px 24px;font-size:14px;}
/* --- Celular y tablet --- */
@media (max-width:900px){
  .lc-nav .lc-wrap{flex-wrap:wrap;justify-content:center;}
  .lc-links{order:3;width:100%;justify-content:center;flex-wrap:wrap;gap:14px 22px;}
  .lc-hero{padding:20px 0 70px;}
  .lc-hero .lc-wrap,.lc-menu,.lc-contacto .lc-wrap{grid-template-columns:1fr;}
  .lc-hero-foto{max-width:420px;margin:10px auto 0;transform:rotate(3deg);}
  .lc-menu-arte{min-height:460px;}
  .lc-menu-texto{padding:60px 24px;}
  .lc-servicios,.lc-galeria,.lc-contacto,.lc-carta{padding:70px 0;}
  .lc-carta-grid,.lc-cat-cols{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media (max-width:640px){
  .lc-carta-grid,.lc-cat-cols{grid-template-columns:minmax(0,1fr);gap:48px;}
}
@media (max-width:520px){
  .lc-logo img{height:50px;}
  .lc-nav-btn{display:none;}
  .lc-platos{grid-template-columns:1fr;}
  .lc-cinta span{font-size:20px;}
}
/* --- Encabezado de la página de menú --- */
.lc-cabeza-pag{background:var(--rojo);color:var(--blanco);text-align:center;padding:70px 0 80px;}
.lc-cabeza-pag .lc-etiqueta{color:var(--blanco);}
.lc-cabeza-pag h1{font-size:clamp(56px,9vw,120px);color:var(--blanco);}
.lc-cabeza-pag h1 span{color:var(--naranja);}
.lc-cabeza-pag p{font-size:18px;max-width:620px;margin:24px auto 0;}
.lc-banda{background:var(--naranja);padding:70px 0;text-align:center;}
.lc-banda h2{font-size:clamp(40px,5.5vw,72px);color:var(--texto);margin-bottom:28px;}
.lc-banda-btns{display:flex;gap:16px;justify-content:center;flex-wrap:wrap;}
/* --- Botón flotante de WhatsApp --- */
.lc-wa{position:fixed;right:20px;bottom:20px;z-index:9999;display:flex;align-items:center;gap:10px;background:#25d366;color:#ffffff!important;font-family:var(--cuerpo);font-weight:600;font-size:15px;padding:12px 20px 12px 14px;border-radius:999px;border:2px solid var(--texto);box-shadow:4px 4px 0 var(--texto);transition:transform .15s,box-shadow .15s;}
.lc-wa:hover{transform:translate(2px,2px);box-shadow:2px 2px 0 var(--texto);}
.lc-wa svg{width:30px;height:30px;fill:#ffffff;flex-shrink:0;}
@media (max-width:520px){.lc-wa{padding:14px;right:16px;bottom:16px;}.lc-wa span{display:none;}}
/* --- Ventana emergente "Cotiza tu evento" --- */
.lc-modal{border:3px solid var(--texto);border-radius:24px;padding:0;width:calc(100% - 32px);max-width:560px;max-height:calc(100vh - 32px);overflow:auto;background:var(--blanco);color:var(--texto);font-family:var(--cuerpo);box-shadow:10px 10px 0 var(--rojo);}
.lc-modal::backdrop{background:rgba(43,18,8,.65);}
.lc-modal[open]{animation:lc-entrar .25s ease-out;}
@keyframes lc-entrar{from{opacity:0;transform:translateY(16px) scale(.97);}to{opacity:1;transform:none;}}
.lc-modal-in{position:relative;padding:40px 36px 26px;}
.lc-modal-x{position:absolute;top:14px;right:14px;width:40px;height:40px;border-radius:50%;border:2px solid var(--texto);background:var(--crema);color:var(--texto);font-size:24px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;}
.lc-modal-x:hover{background:var(--naranja);}
.lc-modal h2{font-size:clamp(38px,6vw,54px);color:var(--rojo);margin:0 44px 12px 0;}
.lc-modal-sub{font-size:16px;margin:0 0 24px!important;}
.lc-opcion{display:flex;align-items:center;gap:16px;padding:18px 20px;margin-bottom:14px;border:2px solid var(--texto);border-radius:16px;background:var(--blanco);color:var(--texto)!important;box-shadow:4px 4px 0 var(--texto);transition:transform .15s,box-shadow .15s;}
.lc-opcion:hover{transform:translate(2px,2px);box-shadow:2px 2px 0 var(--texto);}
.lc-opcion--principal{background:var(--rojo);color:var(--blanco)!important;}
.lc-opcion-ico{flex:0 0 50px;height:50px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--crema);color:var(--rojo);}
.lc-opcion--principal .lc-opcion-ico{background:#25d366;color:var(--blanco);border:2px solid var(--texto);}
.lc-opcion-ico svg{width:26px;height:26px;}
.lc-opcion strong{display:block;font-family:var(--titulo);font-weight:400;font-size:23px;text-transform:uppercase;line-height:1.1;margin-bottom:4px;}
.lc-opcion-txt{display:block;font-size:14px;line-height:1.45;}
.lc-opcion-flecha{flex:0 0 22px;width:22px;height:22px;margin-left:auto;}
.lc-modal-pie{display:flex;align-items:center;gap:10px;margin-top:10px;padding-top:18px;border-top:2px dashed #ecc7b3;font-size:14px;color:#8a5a48;}
.lc-modal-pie svg{width:20px;height:20px;flex-shrink:0;color:var(--rojo);}
@media (max-width:520px){.lc-modal-in{padding:34px 20px 20px;}.lc-opcion{padding:16px;gap:12px;}.lc-opcion-ico{flex-basis:42px;height:42px;}.lc-opcion strong{font-size:20px;}}

/* --- Galería: miniaturas rectangulares (4:3) más pequeñas --- */
.lc-fotos{grid-template-columns:repeat(auto-fill,minmax(196px,207px));justify-content:center;gap:14px;}
.lc-fotos img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:12px;border:2px solid var(--texto);}
.lc-pronto{aspect-ratio:4/3;border-radius:12px;border-width:2px;padding:12px;}
.lc-pronto strong{font-size:20px;margin-bottom:6px;}
.lc-pronto span{font-size:12px;line-height:1.35;}
@media (max-width:900px){.lc-fotos{grid-template-columns:repeat(3,minmax(0,1fr));}}
@media (max-width:520px){.lc-fotos{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}}

/* --- Galería: miniaturas rectangulares (4:3) más pequeñas --- */
.lc-fotos{grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:14px;}
.lc-fotos img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:12px;border:2px solid var(--texto);}
.lc-pronto{aspect-ratio:4/3;border-radius:12px;border-width:2px;padding:12px;}
.lc-pronto strong{font-size:20px;margin-bottom:6px;}
.lc-pronto span{font-size:12px;line-height:1.35;}
@media (max-width:900px){.lc-fotos{grid-template-columns:repeat(3,minmax(0,1fr));}}
@media (max-width:520px){.lc-fotos{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}}
