/*
File: abuelo-kalinas.css
Página: Casa Rural del Abuelo Kalinas
Versión: 190526-1
*/

/*---------- HERO KALINAS ------------*/
body .kalinas-hero { min-height:70vh; padding:0; background:var(--color-texto); margin-bottom:0; position:relative;}
body .kalinas-hero::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg, rgba(60,36,16,0) 0%, rgba(60,36,16,.4) 50%, rgba(60,36,16,.75) 100%); pointer-events:none; z-index:1;}
body .kalinas-hero > .wp-block-cover__inner-container { position:relative; z-index:2; width:100%; max-width:var(--ancho-caja); margin:0 auto; padding:0 5%; box-sizing:border-box; display:flex; flex-direction:column; justify-content:center; align-items:center; min-height:70vh;}
body .kalinas-hero-contenido {position: relative; z-index: 3; width: 100%; max-width: 880px; margin: 5% auto; padding: 8rem 5% 6rem; display: flex; flex-direction: column; align-items: center;  text-align: center; justify-content: center; background-color: rgb(60 36 16 / 80%); border-radius: 20px;}
body .kalinas-hero-logo { margin:0 0 2em !important;}
body .kalinas-hero-logo img { max-width:200px; height:auto; display:block;}
body .kalinas-hero-pretitulo { font-family:var(--fuente-textos); font-size:.78rem; font-weight:600; letter-spacing:.2em; text-transform:uppercase; color:var(--color-olivo-claro); margin:0 0 1.4em; text-align:center; text-shadow:0 1px 12px rgba(0,0,0,.5);}
body .kalinas-hero-titulo { font-family:var(--fuente-titulos); font-size:clamp(2.4rem,5vw,4.4rem); font-weight:500; line-height:1.05; letter-spacing:-.02em; color:var(--color-blanco); margin:0 0 .6em; text-align:center; text-shadow:0 2px 30px rgba(0,0,0,.4);}
body .kalinas-hero-subtitulo { font-family:var(--fuente-textos); font-size:clamp(1rem,1.3vw,1.18rem); font-weight:400; line-height:1.65; color:rgba(255,255,255,.92); margin:0 auto; max-width:680px; text-align:center; text-shadow:0 1px 14px rgba(0,0,0,.5);}
@media only screen and (max-width:959px){
body .kalinas-hero { min-height:62vh;}
body .kalinas-hero > .wp-block-cover__inner-container { min-height:62vh;}
body .kalinas-hero-logo img { max-width:160px;}
}
@media only screen and (max-width:767px){
body .kalinas-hero { min-height:70vh;}
body .kalinas-hero > .wp-block-cover__inner-container { min-height:70vh; padding:0 8%;}
body .kalinas-hero-logo img { max-width:140px;}
body .kalinas-hero-titulo { font-size:clamp(1.9rem,8vw,2.6rem);}
body .kalinas-hero-subtitulo { font-size:.98rem; line-height:1.55;}
}

/*---------- PRESENTACION KALINAS ------------*/
body .kalinas-presentacion { background:var(--color-fondo); padding:7rem 0; margin:0;}
body .kalinas-presentacion > .wp-block-group__inner-container { width:100%; max-width:var(--ancho-caja); margin:0 auto; padding:0 5%; box-sizing:border-box;}
body .kalinas-presentacion-contenedor { width:100%; max-width:880px; margin:0 auto;}
body .kalinas-presentacion-contenedor > .wp-block-group__inner-container { display:flex; flex-direction:column; gap:0;}
body .kalinas-presentacion-pretitulo { font-family:var(--fuente-textos); font-size:.78rem; font-weight:600; letter-spacing:.18em; text-transform:uppercase; color:var(--color-olivo); margin:0 0 1.2em; text-align:center;}
body .kalinas-presentacion-titulo { font-family:var(--fuente-titulos); font-size:clamp(2rem,3.5vw,3.2rem); font-weight:500; line-height:1.1; letter-spacing:-.015em; color:var(--color-texto); margin:0 0 1.5em; text-align:center;}
body .kalinas-presentacion-texto { font-family:var(--fuente-textos); font-size:1.05rem; font-weight:400; line-height:1.75; color:var(--color-texto-suave); margin:0 0 1.5em; text-align:center;}
@media only screen and (max-width:959px){
body .kalinas-presentacion { padding:5rem 0;}
}
@media only screen and (max-width:767px){
body .kalinas-presentacion { padding:4rem 0;}
body .kalinas-presentacion-titulo { font-size:clamp(1.7rem,6vw,2.2rem);}
body .kalinas-presentacion-texto { font-size:1rem;}
}

/*---------- ALOJAMIENTOS KALINAS ------------*/
body .kalinas-alojamientos { background:var(--color-fondo-suave); padding:7rem 0; margin:0;}
body .kalinas-alojamientos > .wp-block-group__inner-container { width:100%; max-width:var(--ancho-caja); margin:0 auto; padding:0 5%; box-sizing:border-box; display:flex; flex-direction:column; gap:4rem;}
body .kalinas-alojamientos-encabezado { text-align:center; max-width:780px; margin:0 auto !important;}
body .kalinas-alojamientos-encabezado > .wp-block-group__inner-container { display:flex; flex-direction:column; align-items:center; gap:0;}
body .kalinas-alojamientos-pretitulo { font-family:var(--fuente-textos); font-size:.78rem; font-weight:600; letter-spacing:.18em; text-transform:uppercase; color:var(--color-olivo); margin:0 0 1.2em; text-align:center;}
body .kalinas-alojamientos-titulo { font-family:var(--fuente-titulos); font-size:clamp(2rem,3.5vw,3.2rem); font-weight:500; line-height:1.1; letter-spacing:-.015em; color:var(--color-texto); margin:0 0 .8em; text-align:center;}
body .kalinas-alojamientos-subtitulo { font-family:var(--fuente-textos); font-size:1.05rem; font-weight:400; line-height:1.65; color:var(--color-texto-suave); margin:0; text-align:center;}
body .kalinas-alojamientos-grid { width:100%; max-width:1100px; margin:0 auto; display:grid; grid-template-columns:repeat(2,1fr); gap:2.5rem;}
body .kalinas-alojamiento { background:var(--color-blanco); border-radius:18px; overflow:hidden; box-shadow:0 14px 40px rgba(60,36,16,.1); transition:all .35s ease; display:flex; flex-direction:column;}
body .kalinas-alojamiento:hover { transform:translateY(-6px); box-shadow:0 24px 60px rgba(60,36,16,.18);}
body .kalinas-alojamiento-imagen { margin:0; overflow:hidden;}
body .kalinas-alojamiento-imagen img { width:100%; height:320px; object-fit:cover; display:block;}
body .kalinas-alojamiento-contenido { padding:2.5rem 2rem; flex:1; display:flex; flex-direction:column;}
body .kalinas-alojamiento-etiqueta { font-family:var(--fuente-textos); font-size:.72rem; font-weight:600; letter-spacing:.16em; text-transform:uppercase; color:var(--color-olivo); margin:0 0 1em;}
body .kalinas-alojamiento-titulo { font-family:var(--fuente-titulos); font-size:clamp(1.6rem,2.2vw,2rem); font-weight:500; line-height:1.15; letter-spacing:-.015em; color:var(--color-texto); margin:0 0 1em;}
body .kalinas-alojamiento-texto { font-family:var(--fuente-textos); font-size:.98rem; font-weight:400; line-height:1.7; color:var(--color-texto-suave); margin:0 0 2em; flex:1;}
body .kalinas-alojamiento-acciones { display:flex; gap:.5rem; margin:0 0 1.4em; flex-wrap:wrap;}
body .kalinas-boton-accion { display:inline-flex; align-items:center; gap:8px; padding:10px 16px; border-radius:999px; background:var(--color-fondo); color:var(--color-texto) !important; font-family:var(--fuente-textos); font-size:.74rem; font-weight:600; line-height:1; letter-spacing:.06em; text-transform:uppercase; text-decoration:none !important; border:1.5px solid transparent; transition:all .25s ease; flex:1; justify-content:center; min-width:100px;}
body .kalinas-boton-accion:hover { background:var(--color-texto); color:var(--color-blanco) !important;}
body .kalinas-boton-accion .icono { display:inline-block; width:14px; height:14px; background-color:currentColor; -webkit-mask:center center / contain no-repeat; mask:center center / contain no-repeat; flex-shrink:0;}
body .kalinas-boton-accion.boton-reservar .icono { -webkit-mask-image:url('/imagenes/iconos/icono-reservar.svg'); mask-image:url('/imagenes/iconos/icono-reservar.svg');}
body .kalinas-boton-accion.boton-consultar .icono { -webkit-mask-image:url('/imagenes/iconos/icono-consultar.svg'); mask-image:url('/imagenes/iconos/icono-consultar.svg');}
body .kalinas-boton-accion.boton-360 .icono { -webkit-mask-image:url('/imagenes/iconos/icono-360.svg'); mask-image:url('/imagenes/iconos/icono-360.svg');}
body .kalinas-boton-ficha { display:inline-flex; align-items:center; justify-content:center; gap:10px; padding:14px 28px; border-radius:999px; background:var(--color-olivo); color:var(--color-blanco) !important; font-family:var(--fuente-textos); font-size:.82rem; font-weight:700; line-height:1; letter-spacing:.08em; text-transform:uppercase; text-decoration:none !important; transition:all .25s ease; box-shadow:0 4px 16px rgba(138,138,74,.25);}
body .kalinas-boton-ficha:hover { background:var(--color-texto); color:var(--color-blanco) !important; transform:translateY(-2px); box-shadow:0 8px 24px rgba(60,36,16,.25);}
body .kalinas-boton-ficha .icono { display:inline-block; width:14px; height:14px; background-color:currentColor; -webkit-mask:url('/imagenes/iconos/icono-flecha-derecha.svg') no-repeat center / contain; mask:url('/imagenes/iconos/icono-flecha-derecha.svg') no-repeat center / contain; transition:transform .25s ease;}
body .kalinas-boton-ficha:hover .icono { transform:translateX(4px);}
@media only screen and (max-width:959px){
body .kalinas-alojamientos { padding:5rem 0;}
body .kalinas-alojamientos > .wp-block-group__inner-container { gap:3rem;}
body .kalinas-alojamientos-grid { gap:2rem;}
body .kalinas-alojamiento-imagen img { height:280px;}
body .kalinas-alojamiento-contenido { padding:2rem 1.6rem;}
}
@media only screen and (max-width:767px){
body .kalinas-alojamientos { padding:4rem 0;}
body .kalinas-alojamientos-grid { grid-template-columns:1fr; gap:1.8rem;}
body .kalinas-alojamiento-imagen img { height:240px;}
body .kalinas-alojamiento-contenido { padding:1.8rem 1.6rem;}
body .kalinas-alojamiento-acciones { flex-direction:column; gap:.5rem;}
body .kalinas-boton-accion { width:100%; min-width:0;}
body .kalinas-boton-ficha { width:100%;}
}

/*---------- SERVICIOS COMUNES KALINAS ------------*/
body .kalinas-servicios { background:var(--color-fondo); padding:7rem 0; margin:0;}
body .kalinas-servicios > .wp-block-group__inner-container { width:100%; max-width:var(--ancho-caja); margin:0 auto; padding:0 5%; box-sizing:border-box; display:flex; flex-direction:column; gap:4rem;}
body .kalinas-servicios-encabezado { text-align:center; max-width:780px; margin:0 auto !important;}
body .kalinas-servicios-encabezado > .wp-block-group__inner-container { display:flex; flex-direction:column; align-items:center; gap:0;}
body .kalinas-servicios-pretitulo { font-family:var(--fuente-textos); font-size:.78rem; font-weight:600; letter-spacing:.18em; text-transform:uppercase; color:var(--color-olivo); margin:0 0 1.2em; text-align:center;}
body .kalinas-servicios-titulo { font-family:var(--fuente-titulos); font-size:clamp(2rem,3.5vw,3.2rem); font-weight:500; line-height:1.1; letter-spacing:-.015em; color:var(--color-texto); margin:0 0 .8em; text-align:center;}
body .kalinas-servicios-subtitulo { font-family:var(--fuente-textos); font-size:1.05rem; font-weight:400; line-height:1.65; color:var(--color-texto-suave); margin:0; text-align:center;}
body .kalinas-servicios-grid { width:100%; max-width:1100px; margin:0 auto; display:grid; grid-template-columns:repeat(3,1fr); gap:2rem;}
body .kalinas-servicio { background:var(--color-blanco); border-radius:14px; padding:2.2rem 1.8rem; text-align:center; box-shadow:0 8px 24px rgba(60,36,16,.06); transition:all .3s ease;}
body .kalinas-servicio:hover { transform:translateY(-4px); box-shadow:0 14px 36px rgba(60,36,16,.12);}
body .kalinas-servicio-icono { display:block; width:48px; height:48px; margin:0 auto 1.2em; background-color:var(--color-olivo); -webkit-mask:center center / contain no-repeat; mask:center center / contain no-repeat;}
body .kalinas-servicio .icono-wifi-svc { -webkit-mask-image:url('/imagenes/iconos/icono-wifi.svg'); mask-image:url('/imagenes/iconos/icono-wifi.svg');}
body .kalinas-servicio .icono-clima-svc { -webkit-mask-image:url('/imagenes/iconos/icono-clima.svg'); mask-image:url('/imagenes/iconos/icono-clima.svg');}
body .kalinas-servicio .icono-tv-svc { -webkit-mask-image:url('/imagenes/iconos/icono-tv.svg'); mask-image:url('/imagenes/iconos/icono-tv.svg');}
body .kalinas-servicio .icono-bano-svc { -webkit-mask-image:url('/imagenes/iconos/icono-bano.svg'); mask-image:url('/imagenes/iconos/icono-bano.svg');}
body .kalinas-servicio .icono-decoracion-svc { -webkit-mask-image:url('/imagenes/iconos/icono-decoracion.svg'); mask-image:url('/imagenes/iconos/icono-decoracion.svg');}
body .kalinas-servicio .icono-electro-svc { -webkit-mask-image:url('/imagenes/iconos/icono-electrodomesticos.svg'); mask-image:url('/imagenes/iconos/icono-electrodomesticos.svg');}
body .kalinas-servicio h3 { font-family:var(--fuente-titulos); font-size:1.25rem; font-weight:500; line-height:1.2; letter-spacing:-.01em; color:var(--color-texto); margin:0 0 .8em;}
body .kalinas-servicio p { font-family:var(--fuente-textos); font-size:.95rem; font-weight:400; line-height:1.65; color:var(--color-texto-suave); margin:0;}
@media only screen and (max-width:959px){
body .kalinas-servicios { padding:5rem 0;}
body .kalinas-servicios > .wp-block-group__inner-container { gap:3rem;}
body .kalinas-servicios-grid { grid-template-columns:repeat(2,1fr); gap:1.5rem;}
body .kalinas-servicio { padding:1.8rem 1.4rem;}
}
@media only screen and (max-width:767px){
body .kalinas-servicios { padding:4rem 0;}
body .kalinas-servicios-grid { grid-template-columns:1fr; gap:1.2rem;}
body .kalinas-servicio-icono { width:42px; height:42px;}
}

/*---------- PARKING ------------*/
body .inicio-parking { background:var(--color-fondo-suave); padding:7rem 0; margin:0;}
body .inicio-parking > .wp-block-group__inner-container { width:100%; max-width:var(--ancho-caja); margin:0 auto; padding:0 5%; box-sizing:border-box;}
body .inicio-parking-contenedor { width:100%; max-width:1100px; margin:0 auto;}
body .inicio-parking-contenedor > .wp-block-group__inner-container { display:flex; flex-direction:column; align-items:center; gap:0;}
body .inicio-parking-icono { display:block; width:44px; height:44px; margin:0 auto 1.4em; background-color:var(--color-olivo); -webkit-mask:url('/imagenes/iconos/icono-parking.svg') no-repeat center / contain; mask:url('/imagenes/iconos/icono-parking.svg') no-repeat center / contain;}
body .inicio-parking-pretitulo { font-family:var(--fuente-textos); font-size:.78rem; font-weight:600; letter-spacing:.18em; text-transform:uppercase; color:var(--color-olivo); margin:0 0 1.2em; text-align:center;}
body .inicio-parking-titulo { font-family:var(--fuente-titulos); font-size:clamp(2rem,3.5vw,3.2rem); font-weight:500; line-height:1.1; letter-spacing:-.015em; color:var(--color-texto); margin:0 0 1em; text-align:center;}
body .inicio-parking-subtitulo { font-family:var(--fuente-textos); font-size:1.05rem; font-weight:400; line-height:1.7; color:var(--color-texto-suave); margin:0 0 3.5rem; text-align:center; max-width:780px;}
body .inicio-parking-cards { gap:1.5rem !important; width:100%; max-width:1100px; margin:0 auto !important;}
body .inicio-parking-card { padding:0 !important;}
body .inicio-parking-link { display:flex !important; flex-direction:column; align-items:center; justify-content:center; gap:.8rem; padding:2rem 1.5rem; background:var(--color-blanco); border-radius:14px; box-shadow:0 8px 24px rgba(60,36,16,.08); text-decoration:none !important; transition:all .25s ease; height:100%; text-align:center;}
body .inicio-parking-link:hover { transform:translateY(-4px); box-shadow:0 14px 36px rgba(60,36,16,.15); background:var(--color-texto);}
body .inicio-parking-card-icono { display:block; width:34px; height:34px; background-color:var(--color-olivo); -webkit-mask:url('/imagenes/iconos/icono-ubicacion.svg') no-repeat center / contain; mask:url('/imagenes/iconos/icono-ubicacion.svg') no-repeat center / contain; transition:background-color .25s ease;}
body .inicio-parking-link:hover .inicio-parking-card-icono { background-color:var(--color-blanco);}
body .inicio-parking-card-titulo { font-family:var(--fuente-titulos); font-size:1.18rem; font-weight:500; line-height:1.2; letter-spacing:-.01em; color:var(--color-texto); transition:color .25s ease;}
body .inicio-parking-link:hover .inicio-parking-card-titulo { color:var(--color-blanco);}
body .inicio-parking-card-cta { display:inline-flex; align-items:center; gap:6px; font-family:var(--fuente-textos); font-size:.72rem; font-weight:600; letter-spacing:.1em; text-transform:uppercase; color:var(--color-olivo); margin-top:.3rem; transition:color .25s ease;}
body .inicio-parking-card-cta::after { content:""; display:inline-block; width:14px; height:14px; background-color:currentColor; -webkit-mask:url('/imagenes/iconos/icono-flecha-derecha.svg') no-repeat center / contain; mask:url('/imagenes/iconos/icono-flecha-derecha.svg') no-repeat center / contain; transition:transform .25s ease;}
body .inicio-parking-link:hover .inicio-parking-card-cta { color:var(--color-blanco);}
body .inicio-parking-link:hover .inicio-parking-card-cta::after { transform:translateX(4px);}
@media only screen and (max-width:959px){
body .inicio-parking { padding:5rem 0;}
body .inicio-parking-icono { width:38px; height:38px;}
body .inicio-parking-subtitulo { margin-bottom:3rem;}
body .inicio-parking-cards { gap:1.2rem !important;}
body .inicio-parking-link { padding:1.6rem 1.2rem;}
}
@media only screen and (max-width:767px){
body .inicio-parking { padding:4rem 0;}
body .inicio-parking-icono { width:36px; height:36px;}
body .inicio-parking-titulo { font-size:clamp(1.9rem,7vw,2.4rem);}
body .inicio-parking-subtitulo { font-size:1rem; margin-bottom:2.5rem;}
body .inicio-parking-cards { flex-direction:column !important; gap:1rem !important;}
body .inicio-parking-link { padding:1.4rem 1.2rem;}
}