/* Casa Lin · diseño de cabecera, pie y héroes (réplica de maqueta-casa-lin.html) */
:root{--cl-verde:#335C43;--cl-verde-osc:#24382C;--cl-ambar:#C9973F;--cl-crema:#F7F3EB;--cl-texto:#3A3A3A}

body,button,input,select,textarea,#top-menu a,#main-footer{font-family:'Lato',sans-serif}
h1,h2,h3,h4,h5,h6{font-family:'Playfair Display',serif}

/* ---------- Cabecera ---------- */
#main-header,#main-header.et-fixed-header{
  background:rgba(36,56,44,.97)!important;box-shadow:none!important;
}
#main-header .container{width:100%!important;max-width:none!important;padding:0 5%!important}
#page-container{padding-top:66px!important} /* misma altura que la cabecera fija: sin hueco sobre la portada */
#main-header .et_menu_container{display:flex;align-items:center;justify-content:space-between;min-height:66px}
#main-header .logo_container{position:static!important;float:none!important;width:auto!important;height:auto!important;display:block}
#main-header .logo_helper{display:none}
#main-header #logo{display:none!important}
/* Logotipo oficial (vector, convertido desde Logotipo.ai) en blanco */
#main-header .logo_container a{
  display:block;width:165px;height:52px;margin:7px 0;
  background:url(logo-blanco.svg) left center/contain no-repeat;
}

@media(min-width:981px){
  #main-header #et-top-navigation{float:none!important;padding:0!important;display:flex;align-items:center}
  #main-header #top-menu{display:flex;align-items:center;gap:4px}
}
#main-header #top-menu li{padding-right:0!important}
#main-header #top-menu li a{
  color:#e8e4da!important;font-size:13px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;
  padding:8px 12px!important;border-radius:20px;opacity:1!important;transition:color .2s;
}
#main-header #top-menu li a:hover{color:var(--cl-ambar)!important}
/* Sección visible en la página única (la marca el script cld-menu) */
#main-header #top-menu li.cl-active>a{background:var(--cl-ambar);color:#fff!important}
.et_mobile_menu li.cl-active>a{color:var(--cl-ambar)!important}
html{scroll-behavior:smooth}
#inicio,#nosotros,#restaurante,#especialidades,#llagar,#contacto{scroll-margin-top:66px}
#main-header #top-menu li.cl-tel>a{
  background:var(--cl-ambar);color:#fff!important;font-size:14px;letter-spacing:0;text-transform:none;
  padding:9px 18px!important;border-radius:30px;margin-left:10px;white-space:nowrap;
}
#main-header #top-menu li.cl-tel>a:hover{color:#fff!important;filter:brightness(1.1)}
#main-header #et_top_search,#main-header #et_search_icon{display:none!important}
#main-header .mobile_menu_bar::before{color:#fff!important}
.et_mobile_menu{background:var(--cl-verde-osc)!important;border-top:3px solid var(--cl-ambar)!important}
.et_mobile_menu li a{color:#e8e4da!important;font-weight:700;letter-spacing:1px;text-transform:uppercase;font-size:13px;border-bottom-color:rgba(255,255,255,.1)!important}
.et_mobile_menu li.cl-tel a{color:var(--cl-ambar)!important}

/* ---------- Héroes y bloques con imagen ---------- */
.cl-hero,.cl-cta{position:relative;background-size:cover!important;background-position:center!important}
.cl-hero::before,.cl-cta::before{content:"";position:absolute;inset:0;background:rgba(22,33,26,.62);z-index:0}
.cl-cta::before{background:rgba(22,33,26,.68)}
.cl-hero>.et_pb_row,.cl-cta>.et_pb_row{position:relative;z-index:1}
.cl-hero{min-height:78vh;display:flex;align-items:center;justify-content:center}
.cl-hero.cl-small{min-height:46vh}
.cl-hero>.et_pb_row{width:100%}
.cl-hero .et_pb_button_module_wrapper,.cl-cta .et_pb_button_module_wrapper{display:inline-block;margin:6px}
.cl-hero .et_pb_column,.cl-cta .et_pb_column{text-align:center}

/* ---------- Botones (.btn de la maqueta) ---------- */
body #page-container .et_pb_button{
  background:var(--cl-ambar);color:#fff!important;border:2px solid var(--cl-ambar)!important;border-radius:40px;
  font-family:'Lato',sans-serif;font-weight:700;font-size:13px;letter-spacing:1px;text-transform:uppercase;
  padding:14px 30px!important;line-height:1.2;transition:filter .2s,transform .2s;
}
body #page-container .et_pb_button:after,body #page-container .et_pb_button:before{display:none!important}
body #page-container .et_pb_button:hover{filter:brightness(1.1);transform:translateY(-2px);padding:14px 30px!important;background:var(--cl-ambar)}
body #page-container .et_pb_button.cl-ghost{background:transparent;border-color:#fff!important}
body #page-container .et_pb_button.cl-ghost:hover{background:rgba(255,255,255,.12)}

/* ---------- Tarjetas de cristal sobre fondo verde ---------- */
.et_pb_blurb.cl-glass{background:rgba(255,255,255,.06)!important;border:1px solid rgba(255,255,255,.12);border-radius:10px;padding:28px!important}
.et_pb_blurb.cl-glass .et_pb_module_header,.et_pb_blurb.cl-glass .et_pb_module_header span{color:var(--cl-ambar)!important;font-family:'Playfair Display',serif;font-size:20px;font-weight:600}
.et_pb_blurb.cl-glass .et_pb_blurb_description{color:#ede9e0!important;font-size:15px;line-height:1.75}

/* ---------- Tiras de 3 fotos cuadradas ---------- */
.cl-galeria .et_pb_image_wrap{display:block;width:100%}
.cl-galeria img{display:block;width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:10px}
@media(max-width:980px){
  /* en móvil, las 3 en fila y pequeñas en vez de una debajo de otra */
  .et_pb_row:has(> .et_pb_column > .cl-galeria){display:flex;gap:8px}
  .et_pb_row:has(> .et_pb_column > .cl-galeria)>.et_pb_column{width:33.33%!important;margin:0!important}
}

/* ---------- Mapa en dos clics (sin cookies hasta que se pide) ---------- */
.cl-mapa{min-height:420px;border-radius:10px;display:flex;flex-direction:column;align-items:center;justify-content:center;
  text-align:center;padding:30px;background:var(--cl-verde-osc);color:#ede9e0;font-size:15px}
.cl-mapa p{margin:0 0 12px;color:#ede9e0}
.cl-mapa-titulo{font-family:'Playfair Display',serif;font-size:24px;color:#fff!important}
.cl-mapa-ver{background:var(--cl-ambar);color:#fff;border:0;border-radius:40px;padding:12px 26px;font:700 13px/1 'Lato',sans-serif;
  letter-spacing:1px;text-transform:uppercase;cursor:pointer;margin:6px}
.cl-mapa-ver:hover{filter:brightness(1.1)}
.cl-mapa-ext{color:var(--cl-ambar)!important;font-weight:700;margin:6px;display:inline-block}
.cl-mapa.cl-mapa-cargado{padding:0;background:none}
.cl-mapa iframe{width:100%;height:420px;border:0;border-radius:10px}

/* ---------- Enlaces legales del pie ---------- */
#footer-info a{margin:0 4px}

/* ---------- Páginas legales ---------- */
.cl-legal{max-width:820px;margin:0 auto;padding:40px 0 70px;font-size:16px;line-height:1.8}
.cl-legal h2{font-size:24px;margin:34px 0 10px;color:var(--cl-verde-osc)}
.cl-legal p,.cl-legal li{color:var(--cl-texto)}

/* ---------- Página 404 ---------- */
.cl-404{background:var(--cl-crema);padding:90px 20px;min-height:60vh;display:flex;align-items:center;justify-content:center}
.cl-404-caja{max-width:640px;text-align:center}
.cl-404 .cl-404-codigo{font-family:'Playfair Display',serif;font-size:120px;line-height:1;font-weight:700;color:var(--cl-ambar);margin:0;padding:0}
.cl-404 .cl-404-etiqueta{color:var(--cl-verde);font-weight:700;letter-spacing:3px;font-size:14px;line-height:1.4;margin:10px 0 6px}
.cl-404 h1{font-size:38px;color:var(--cl-verde-osc);margin:0 0 16px}
.cl-404 p{font-size:17px;line-height:1.8;color:var(--cl-texto)}
.cl-404-boton{display:inline-block;margin-top:14px;background:var(--cl-ambar);color:#fff!important;border-radius:40px;padding:14px 32px;
  font:700 13px/1.2 'Lato',sans-serif;letter-spacing:1px;text-transform:uppercase;transition:filter .2s,transform .2s}
.cl-404-boton:hover{filter:brightness(1.1);transform:translateY(-2px)}
.cl-404-secciones{margin-top:30px;display:flex;flex-wrap:wrap;justify-content:center;gap:8px 22px}
.cl-404-secciones a{color:var(--cl-verde)!important;font-weight:700}
@media(max-width:600px){.cl-404 .cl-404-codigo{font-size:90px}.cl-404 h1{font-size:30px}}

/* ---------- Pie ---------- */
#main-footer{background:#1b2a21!important}
#main-footer .container{width:100%!important;max-width:1140px!important}
#footer-widgets{padding:55px 0 25px!important}
#footer-widgets .footer-widget{width:47.75%!important;margin-right:4.5%!important}
#footer-widgets .footer-widget:last-child{margin-right:0!important}
#main-footer .fwidget h4,#main-footer .fwidget .title{
  font-family:'Playfair Display',serif;color:#fff!important;font-size:18px;font-weight:600;padding-bottom:12px
}
#main-footer .fwidget,#main-footer .fwidget p{color:#cfc9bb!important;font-size:14px;line-height:1.8em}
#main-footer .fwidget a{color:var(--cl-ambar)!important;text-decoration:none}
#footer-bottom{background:#1b2a21!important;border-top:1px solid rgba(255,255,255,.12);padding:20px 0!important}
#footer-bottom .et-social-icons{display:none!important}
#footer-bottom #footer-info{float:none!important;text-align:center;color:#cfc9bb!important;font-size:13px;padding:0}
#footer-bottom #footer-info a{color:var(--cl-ambar)!important}

@media(max-width:980px){
  /* Cabecera fija también en móvil, con el teléfono siempre visible junto al icono de menú */
  #main-header{position:fixed!important;top:0;left:0;right:0;z-index:99999}
  #main-header #et-top-navigation{display:flex!important;align-items:center;gap:12px;padding:0!important;margin-left:auto}
  #main-header #top-menu-nav,#main-header #top-menu{display:block!important}
  #main-header #top-menu>li:not(.cl-tel){display:none!important}
  #main-header #top-menu li.cl-tel>a{margin-left:0;font-size:13px;padding:8px 14px!important}
  #main-header #et_mobile_nav_menu{display:block!important;float:none}
  #main-header .mobile_nav{padding:0}
  .et_mobile_menu li.cl-tel{display:none!important}
  #main-header .logo_container a{width:125px;height:44px;margin:11px 0}
  #footer-widgets .footer-widget{width:100%!important;margin-right:0!important;margin-bottom:25px}
}
