.elementor-kit-12{--e-global-color-primary:#353FA3;--e-global-color-secondary:#24348B;--e-global-color-text:#4A5C6E;--e-global-color-accent:#0167F7;--e-global-color-hcpnaranja:#F18700;--e-global-color-hcpamarillo:#FBB800;--e-global-color-hcpfondo:#FFFFFF;--e-global-color-hcpborde:#D1DBE3;--e-global-color-hcpdorado:#B58A45;--e-global-typography-primary-font-family:"Sinhala Mn";--e-global-typography-primary-font-weight:400;--e-global-typography-secondary-font-family:"Inter";--e-global-typography-secondary-font-size:1rem;--e-global-typography-secondary-font-weight:400;--e-global-typography-secondary-line-height:1.25em;--e-global-typography-text-font-family:"Inter";--e-global-typography-text-font-size:1rem;--e-global-typography-text-font-weight:300;--e-global-typography-text-line-height:1.25em;--e-global-typography-accent-font-family:"Inter";--e-global-typography-accent-font-size:1rem;--e-global-typography-accent-font-weight:500;--e-global-typography-accent-text-transform:none;--e-global-typography-accent-line-height:1.25em;--e-global-typography-accent-letter-spacing:0em;--e-global-typography-hcpeyebrow-font-family:"Inter";--e-global-typography-hcpeyebrow-font-size:0.875rem;--e-global-typography-hcpeyebrow-font-weight:400;--e-global-typography-hcpeyebrow-text-transform:uppercase;--e-global-typography-hcpeyebrow-line-height:1.2em;--e-global-typography-hcpeyebrow-letter-spacing:2px;--e-global-typography-hcpeyebrowhero-font-family:"Inter";--e-global-typography-hcpeyebrowhero-font-size:clamp(1rem, 0.942rem + 0.256vw, 1.25rem);--e-global-typography-hcpeyebrowhero-font-weight:500;--e-global-typography-hcpeyebrowhero-text-transform:uppercase;--e-global-typography-hcpeyebrowhero-line-height:1.3em;--e-global-typography-hcpeyebrowhero-letter-spacing:0.1em;--e-global-typography-hcpsmall-font-family:"Inter";--e-global-typography-hcpsmall-font-size:0.875rem;--e-global-typography-hcpsmall-font-weight:300;--e-global-typography-hcpsmall-line-height:1.3em;--e-global-typography-hcpnav-font-family:"Inter";--e-global-typography-hcpnav-font-size:1rem;--e-global-typography-hcpnav-font-weight:400;--e-global-typography-hcpnav-line-height:1.2em;--e-global-typography-hcpboton-font-family:"Inter";--e-global-typography-hcpboton-font-size:0.875rem;--e-global-typography-hcpboton-font-weight:700;--e-global-typography-hcpboton-text-transform:uppercase;--e-global-typography-hcpboton-line-height:1em;--e-global-typography-hcpboton-letter-spacing:1.5px;--e-global-typography-hcpprecio-font-family:"Sinhala Mn";--e-global-typography-hcpprecio-font-size:clamp(1.25rem, 1.178rem + 0.321vw, 1.5625rem);--e-global-typography-hcpprecio-font-weight:400;--e-global-typography-hcpprecio-line-height:1.2em;--e-global-typography-hcpprecio-letter-spacing:0em;--e-global-typography-hcpattr-font-family:"Inter";--e-global-typography-hcpattr-font-size:0.875rem;--e-global-typography-hcpattr-font-weight:400;--e-global-typography-hcpattr-line-height:1.3em;--e-global-typography-hcph1portada-font-family:"Sinhala Mn";--e-global-typography-hcph1portada-font-size:clamp(2.5rem, 2.067rem + 1.923vw, 4.375rem);--e-global-typography-hcph1portada-font-weight:400;--e-global-typography-hcph1portada-text-transform:none;--e-global-typography-hcph1portada-line-height:1.18em;--e-global-typography-hcph1portada-letter-spacing:0em;--e-global-typography-hcpbotongrande-font-family:"Inter";--e-global-typography-hcpbotongrande-font-size:1rem;--e-global-typography-hcpbotongrande-font-weight:700;--e-global-typography-hcpbotongrande-text-transform:uppercase;--e-global-typography-hcpbotongrande-line-height:1em;--e-global-typography-hcpbotongrande-letter-spacing:2px;--e-global-typography-hcprotulo-font-family:"Sinhala Mn";--e-global-typography-hcprotulo-font-size:clamp(1.125rem, 1.038rem + 0.385vw, 1.5rem);--e-global-typography-hcprotulo-font-weight:400;--e-global-typography-hcprotulo-text-transform:none;--e-global-typography-hcprotulo-line-height:1.2em;--e-global-typography-hcprotulo-letter-spacing:0em;--e-global-typography-hcplegal-font-family:"Inter";--e-global-typography-hcplegal-font-size:0.75rem;--e-global-typography-hcplegal-font-weight:300;--e-global-typography-hcplegal-line-height:1.3em;--e-global-typography-hcpbotonform-font-family:"Inter";--e-global-typography-hcpbotonform-font-size:1.125rem;--e-global-typography-hcpbotonform-font-weight:400;--e-global-typography-hcpbotonform-text-transform:uppercase;--e-global-typography-hcpbotonform-line-height:1em;--e-global-typography-hcpbotonform-letter-spacing:0.12em;color:var( --e-global-color-text );font-family:"Inter", Georgia, serif;font-size:1rem;font-weight:300;line-height:1.25em;}.elementor-kit-12 button,.elementor-kit-12 input[type="button"],.elementor-kit-12 input[type="submit"],.elementor-kit-12 .elementor-button{background-color:transparent;font-family:var( --e-global-typography-hcpboton-font-family ), Georgia, serif;font-size:var( --e-global-typography-hcpboton-font-size );font-weight:var( --e-global-typography-hcpboton-font-weight );text-transform:var( --e-global-typography-hcpboton-text-transform );line-height:var( --e-global-typography-hcpboton-line-height );letter-spacing:var( --e-global-typography-hcpboton-letter-spacing );color:var( --e-global-color-hcpfondo );background-image:linear-gradient(180deg, var( --e-global-color-hcpamarillo ) 0%, var( --e-global-color-hcpnaranja ) 100%);border-radius:100px 100px 100px 100px;padding:17px 34px 17px 34px;}.elementor-kit-12 button:hover,.elementor-kit-12 button:focus,.elementor-kit-12 input[type="button"]:hover,.elementor-kit-12 input[type="button"]:focus,.elementor-kit-12 input[type="submit"]:hover,.elementor-kit-12 input[type="submit"]:focus,.elementor-kit-12 .elementor-button:hover,.elementor-kit-12 .elementor-button:focus{background-color:var( --e-global-color-hcpnaranja );color:var( --e-global-color-hcpfondo );box-shadow:0px 10px 24px 0px rgba(241,135,0,0.3);}.elementor-kit-12 e-page-transition{background-color:#FFBC7D;}.elementor-kit-12 p{margin-block-end:20px;}.elementor-kit-12 a{color:var( --e-global-color-accent );}.elementor-kit-12 a:hover{color:var( --e-global-color-primary );}.elementor-kit-12 h1{color:var( --e-global-color-secondary );font-family:"Sinhala Mn", Georgia, serif;font-size:clamp(2.5rem, 2.212rem + 1.282vw, 3.75rem);font-weight:400;line-height:1.18em;letter-spacing:0em;}.elementor-kit-12 h2{color:var( --e-global-color-primary );font-family:"Sinhala Mn", Georgia, serif;font-size:clamp(1.875rem, 1.731rem + 0.641vw, 2.5rem);font-weight:400;line-height:1.22em;letter-spacing:0em;}.elementor-kit-12 h3{color:var( --e-global-color-primary );font-family:"Sinhala Mn", Georgia, serif;font-size:clamp(1.25rem, 1.178rem + 0.321vw, 1.5625rem);font-weight:400;line-height:1.25em;letter-spacing:0em;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1200px;}.e-con{--container-max-width:1200px;--container-default-padding-top:0px;--container-default-padding-right:0px;--container-default-padding-bottom:0px;--container-default-padding-left:0px;}.elementor-widget:not(:last-child){margin-block-end:10px;}.elementor-element{--widgets-spacing:10px 10px;--widgets-spacing-row:10px;--widgets-spacing-column:10px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1366px){.elementor-kit-12 button,.elementor-kit-12 input[type="button"],.elementor-kit-12 input[type="submit"],.elementor-kit-12 .elementor-button{font-size:var( --e-global-typography-hcpboton-font-size );line-height:var( --e-global-typography-hcpboton-line-height );letter-spacing:var( --e-global-typography-hcpboton-letter-spacing );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:95%;}.e-con{--container-max-width:95%;--container-default-padding-top:0em;--container-default-padding-right:0em;--container-default-padding-bottom:0em;--container-default-padding-left:0em;}}@media(max-width:1024px){.elementor-kit-12{--e-global-typography-text-line-height:1.5em;--e-global-typography-hcpsmall-line-height:1.5em;line-height:1.5em;}.elementor-kit-12 button,.elementor-kit-12 input[type="button"],.elementor-kit-12 input[type="submit"],.elementor-kit-12 .elementor-button{font-size:var( --e-global-typography-hcpboton-font-size );line-height:var( --e-global-typography-hcpboton-line-height );letter-spacing:var( --e-global-typography-hcpboton-letter-spacing );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:98%;}.e-con{--container-max-width:98%;--container-default-padding-top:0px;--container-default-padding-right:0px;--container-default-padding-bottom:0px;--container-default-padding-left:0px;}}@media(max-width:767px){.elementor-kit-12{--e-global-typography-text-line-height:1.5em;--e-global-typography-hcpsmall-line-height:1.5em;line-height:1.5em;}.elementor-kit-12 button,.elementor-kit-12 input[type="button"],.elementor-kit-12 input[type="submit"],.elementor-kit-12 .elementor-button{font-size:var( --e-global-typography-hcpboton-font-size );line-height:var( --e-global-typography-hcpboton-line-height );letter-spacing:var( --e-global-typography-hcpboton-letter-spacing );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:98%;}.e-con{--container-max-width:98%;--container-default-padding-top:0px;--container-default-padding-right:0px;--container-default-padding-bottom:0px;--container-default-padding-left:0px;}}@media(min-width:2400px){.elementor-kit-12 button,.elementor-kit-12 input[type="button"],.elementor-kit-12 input[type="submit"],.elementor-kit-12 .elementor-button{font-size:var( --e-global-typography-hcpboton-font-size );line-height:var( --e-global-typography-hcpboton-line-height );letter-spacing:var( --e-global-typography-hcpboton-letter-spacing );}.e-con{--container-default-padding-top:0em;--container-default-padding-right:0em;--container-default-padding-bottom:0em;--container-default-padding-left:0em;}}/* Start custom CSS *//* Hostal Cruz del Pacífico — CSS personalizado del sitio
   1. Base
   2. Header
   3. Botones
   4. Enlaces de texto
   5. Hero
   6. Paneles vidrio
   7. Imágenes con hover
   8. Habitaciones
   9. Instalaciones
   10. Servicios
   11. Footer
   12. Contacto
   13. Accesibilidad
*/

/* 1. Base
-------------------------------------------------- */

.elementor-widget-text-editor p:last-child {
  margin-block-end: 0;
}

/* Listas con viñeta alineada al borde del texto (clase hcp-lista en el Editor de texto) */
.hcp-lista ul {
  margin: 0;
  padding-left: 1.1em;
}

.hcp-lista li + li {
  margin-top: 0.25em;
}

/* 2. Header
-------------------------------------------------- */

/* Fijo arriba con Sticky nativo; al bajar 60px Elementor agrega .elementor-sticky--effects */
.hcp-header {
  transition: background-color 0.3s ease, box-shadow 0.3s ease;
}

/* En un container boxed el padding lo aplica .e-con-inner */
.hcp-header > .e-con-inner {
  transition: padding 0.3s ease;
}

.hcp-header.elementor-sticky--effects {
  background-color: var(--e-global-color-hcpfondo);
  box-shadow: 0 2px 16px rgba(36, 52, 139, 0.08);
}

/* Menos alto al bajar: se cambian las variables de padding del container
   (con .elementor-location-header para ganarle a la regla que genera Elementor) */
.elementor-location-header .e-con.hcp-header.elementor-sticky--effects {
  --padding-top: 0.5em;
  --padding-bottom: 0.5em;
}

/* Logo más chico al bajar (180 → 140px) */
.hcp-logo img {
  transform-origin: left center;
  transition: transform 0.3s ease;
}

.hcp-header.elementor-sticky--effects .hcp-logo img {
  transform: scale(0.78);
}

/* 3. Botones
-------------------------------------------------- */

/* La sombra del hover está en Ajustes del sitio → Botones; aquí solo la elevación */
.elementor-widget-button:not(.hcp-link) .elementor-button {
  transition: transform 0.25s ease, box-shadow 0.25s ease, background-color 0.25s ease;
}

.elementor-widget-button:not(.hcp-link) .elementor-button:hover {
  transform: translateY(-2px);
}

/* 4. Enlaces de texto
-------------------------------------------------- */

/* Subrayado que crece desde la izquierda, del largo del texto.
   En un widget Botón va en el texto interno, porque el fondo del botón lo maneja el widget */
.hcp-link a:not(.elementor-button),
.hcp-link .elementor-button-text {
  display: inline-block;
  width: fit-content;
  padding-bottom: 0.125em;
  background: linear-gradient(currentColor, currentColor) 0 100% / 0 1px no-repeat;
  transition: background-size 0.35s ease, color 0.3s ease;
}

.hcp-link a:not(.elementor-button):hover,
.hcp-link .elementor-button:hover .elementor-button-text {
  background-size: 100% 1px;
}

/* 5. Hero
-------------------------------------------------- */

/* Desenfoque de la foto: ::before es la Superposición de fondo del container */
.hcp-hero::before {
  -webkit-backdrop-filter: blur(6px);
  backdrop-filter: blur(6px);
}

/* Entrada del contenido con CSS: las animaciones de Elementor lo ocultan hasta que carga el JS */
@keyframes hcpEntrada {
  from {
    opacity: 0;
    transform: translateY(1.5rem);
  }
  to {
    opacity: 1;
    transform: none;
  }
}

.hcp-hero-in {
  animation: hcpEntrada 0.8s cubic-bezier(0.2, 0.6, 0.2, 1) both;
}

.hcp-hero-in-2 {
  animation-delay: 0.15s;
}

.hcp-hero-in-3 {
  animation-delay: 0.3s;
}

.hcp-hero-in-4 {
  animation-delay: 0.45s;
}

.hcp-hero-in-5 {
  animation-delay: 0.8s;
}

/* Flecha: flotación continua */
@keyframes hcpFlotar {
  0%,
  100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(0.5em);
  }
}

.hcp-scroll .elementor-icon {
  animation: hcpFlotar 2.2s ease-in-out infinite;
}

/* 6. Paneles vidrio
-------------------------------------------------- */

.hcp-glass {
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
}

/* 7. Imágenes con hover
-------------------------------------------------- */

.hcp-img-hover {
  position: relative;
  overflow: hidden;
}

/* Degradado azul al pasar el mouse */
.hcp-img-hover::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(1, 103, 247, 0) 40%, rgba(1, 103, 247, 0.92) 100%);
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.35s ease;
}

.hcp-card:hover .hcp-img-hover::after,
.hcp-slide:hover .hcp-img-hover::after {
  opacity: 1;
}

.hcp-img-hover img {
  transition: transform 0.8s cubic-bezier(0.2, 0.6, 0.2, 1);
}

.hcp-card:hover .hcp-img-hover img,
.hcp-slide:hover .hcp-img-hover img {
  transform: scale(1.05);
}

/* Texto sobre la imagen: aparece subiendo; en pantallas táctiles queda visible */
.hcp-caption {
  opacity: 0;
  transform: translateY(0.75em);
  transition: opacity 0.35s ease, transform 0.45s ease;
}

.hcp-card:hover .hcp-caption,
.hcp-slide:hover .hcp-caption {
  opacity: 1;
  transform: none;
}

@media (hover: none) {
  .hcp-caption {
    opacity: 1;
    transform: none;
  }
}

/* 8. Habitaciones
-------------------------------------------------- */

/* Foto en 6:5, la misma proporción de la imagen que se sube (720 × 600) */
.hcp-card .hcp-img-hover img {
  height: auto;
  aspect-ratio: 6 / 5;
}

/* Entrada escalonada por columna */
.hcp-hab-listing .jet-listing-grid__item:nth-child(3n+2) .hcp-card {
  animation-delay: 0.15s;
}

.hcp-hab-listing .jet-listing-grid__item:nth-child(3n+3) .hcp-card {
  animation-delay: 0.3s;
}

/* 9. Instalaciones
-------------------------------------------------- */

/* Foto en 4:5, la misma proporción de la imagen que se sube (1000 × 1250) */
.hcp-slide .hcp-img-hover img {
  height: auto;
  aspect-ratio: 4 / 5;
}

/* Deja ver los slides vecinos (JetEngine usa Swiper); la sección los recorta */
.hcp-inst-listing .jet-listing-grid__slider {
  overflow: visible;
}

/* 10. Servicios
-------------------------------------------------- */

/* Fondo, borde, sombra y elevación del hover están en cada card; aquí solo el color del texto de la Caja de ícono.
   Selector con .e-con para ganarle al color que la Caja de ícono define en su propio CSS */
.hcp-service .elementor-icon-box-title,
.hcp-service .elementor-icon-box-description {
  transition: color 0.3s ease;
}

.e-con.hcp-service:hover .elementor-widget-icon-box .elementor-icon-box-title,
.e-con.hcp-service:hover .elementor-widget-icon-box .elementor-icon-box-description {
  color: var(--e-global-color-hcpfondo);
}

/* 11. Footer
-------------------------------------------------- */

.hcp-footer-nav .elementor-nav-menu > li {
  display: flex;
}

/* Separador "·" entre ítems del menú (sin el borde del divisor nativo, que usa el mismo ::after) */
.hcp-footer-nav .elementor-nav-menu--main .elementor-nav-menu > li:not(:last-child)::after {
  content: "·";
  border: 0;
  display: flex;
  align-items: center;
  padding: 0 0.5em;
  color: var(--e-global-color-hcpfondo);
}

/* 12. Contacto
-------------------------------------------------- */

/* Mapa de Google: iframe en un widget HTML dentro del container .hcp-mapa */
.hcp-mapa iframe {
  display: block;
  width: 100%;
  height: 34.25em;
  border: 0;
}

@media (max-width: 1024px) {
  .hcp-mapa iframe {
    height: 28em;
  }
}

@media (max-width: 767px) {
  .hcp-mapa iframe {
    height: 22em;
  }
}

/* Campos con solo línea inferior: sin padding lateral para alinear el texto con la etiqueta */
.hcp-form .elementor-field-textual {
  padding-inline: 0;
}

/* Botón ENVIAR sin el degradado ni la sombra del botón global (el widget Formulario no tiene esos controles) */
.hcp-form .elementor-button,
.hcp-form .elementor-button:hover {
  background-image: none;
  box-shadow: none;
}

/* 13. Accesibilidad
-------------------------------------------------- */

/* Foco visible al navegar con teclado */
:focus-visible {
  outline: 2px solid var(--e-global-color-accent);
  outline-offset: 3px;
}

/* Sin movimiento si la persona lo pidió en su sistema */
@media (prefers-reduced-motion: reduce) {
  .elementor-invisible {
    visibility: visible !important;
  }

  .animated,
  .hcp-hero-in,
  .hcp-scroll .elementor-icon {
    animation: none !important;
  }

  *,
  *::before,
  *::after {
    transition-duration: 0.01ms !important;
  }
}/* End custom CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'Sinhala Mn';
	font-style: normal;
	font-weight: normal;
	font-display: auto;
	src: url('https://f-web.cl/demo/cruzpacifico/wp-content/uploads/2026/09/sinhala-mn.ttf') format('truetype');
}
/* End Custom Fonts CSS */