/* Ajustes Hotel Centenario — compartido por index.html y nosotros.html */

.brand-text { display: inline-flex; align-items: center; gap: 12px; color: #fff; line-height: 1.1; white-space: nowrap; }
.brand-text .monogram { width: 44px; height: 44px; border: 1px solid #dfc5a0; display: grid; place-items: center; color: #dfc5a0; font: 24px 'Playfair Display', Georgia, serif; }
.brand-text strong { display: block; font: 600 20px 'Playfair Display', Georgia, serif; letter-spacing: .13em; }
.brand-text small { display: block; font-size: 10px; letter-spacing: .35em; margin-top: 5px; }
.brand-text.dark { color: var(--title-color); }
.brand-text.dark .monogram { border-color: var(--theme-color); color: var(--theme-color); }
.hero-style4 .sub-title { text-transform: uppercase; letter-spacing: .2em; font-weight: 600; }
.about-feature.style3 .box-icon { display: flex; align-items: center; justify-content: center; flex: none; }
.about-feature.style3 .box-icon i { font-size: 26px; color: var(--theme-color); }
.service-block .box-icon i { font-size: 40px; color: #fff; }
.service-box3 .box-icon i { font-size: 38px; color: #fff; transition: .4s ease-in-out; }
.service-box3:hover .box-icon i { color: var(--theme-color); }
.map-box { border-radius: 16px; overflow: hidden; height: 100%; min-height: 420px; }
.map-box iframe { width: 100%; height: 100%; min-height: 420px; border: 0; display: block; }
.location-list { list-style: none; padding: 0; margin: 30px 0 0; }
.location-list li { display: flex; gap: 14px; align-items: flex-start; margin-bottom: 14px; }
.location-list i { color: var(--theme-color); margin-top: 5px; width: 18px; text-align: center; }

/* Fotos del bloque "El hotel": recortar sin deformar */
.img-box3 img { width: 100%; object-fit: cover; }

/* Tarjetas de habitaciones: que la tarjeta no tape la foto */
#habitaciones .service-block .box-img { margin-bottom: -48px; height: 320px; }
#habitaciones .service-block .box-img img { width: 100%; height: 100%; object-fit: cover; }
#habitaciones .service-block .box-icon { padding: 26px 18px 12px; margin-bottom: 16px; }
#habitaciones .service-block .box-icon i { font-size: 30px; }
#habitaciones .service-block .box-title { font-size: 22px; margin-bottom: 8px; }
#habitaciones .service-block .box-text { margin-bottom: 20px; min-height: 52px; }
#habitaciones .service-block .service-btn { max-width: none; width: max-content; padding: 16px 28px; white-space: nowrap; }
/* Habitaciones con la paleta del logo (azul + dorado) en lugar del verde de la plantilla */
#habitaciones .title-area.style3 { --title-color: #374868; --theme-color: #374868; }
#habitaciones .sub-title.style3 { border-color: #dfc5a0; color: #374868; letter-spacing: .12em; padding: 14px 26px; }
#habitaciones .service-block .box-content { background: #f7f2ea; }
#habitaciones .service-block .box-icon { background: #374868; }
#habitaciones .service-block .box-icon i { color: #dfc5a0; }
#habitaciones .service-block .box-title,
#habitaciones .service-block .box-title a { color: #374868; }
#habitaciones .service-block .service-btn { background: #dfc5a0; }
#habitaciones .service-block .service-btn:before { border-color: transparent #c2a67c transparent transparent; }
#habitaciones .service-block .service-btn .line-btn { color: #1f2a3d; }
#habitaciones .swiper-slide { height: auto; }
#habitaciones .service-block { height: 100%; display: flex; flex-direction: column; }
#habitaciones .service-block .box-content { flex: 1; display: flex; flex-direction: column; }
#habitaciones .service-block .service-btn { margin-top: auto; }
@media (max-width: 575px) { #habitaciones .service-block .box-img { height: 240px; } }

/* Todo lo que era amarillo pasa al dorado */
:root { --theme-color2: #dfc5a0; }
.footer-widget.widget_nav_menu a:before { content:"\f594";font-family:"Font Awesome 6 Pro";font-weight:900;color:#dfc5a0;font-size:13px; top: 3px; }

/* "El hotel": gris clarito con el patrón encima */
#about-sec { background: #eceef1 url("../img/bg/hc-patron.png") repeat; background-blend-mode: multiply; }
#about-sec .about-feature.style3 .box-icon { background-color: #fff; }

/* Footer: azul del logo con detalles dorados */
.footer-layout3 { background-color: #26324a; }
.footer-layout3 a[href^="mailto:"] { text-transform: none; }
.footer-layout3 .footer-widget .widget_title { color: #dfc5a0; }
.footer-layout3 .about-text, .footer-layout3 .footer-text,
.footer-layout3 .widget_nav_menu a { color: rgba(255,255,255,.82); }
.footer-layout3 .widget_nav_menu a:hover { color: #dfc5a0; }
.footer-layout3 .copyright-wrap { background-color: #dfc5a0; border-top: 0; }
.footer-layout3 .copyright-wrap .copyright-text,
.footer-layout3 .copyright-wrap .copyright-text a,
.footer-layout3 .copyright-wrap .footer-links li a { color: #26324a; }
.footer-layout3 .copyright-wrap .footer-links li:after { background-color: #26324a; }

/* Hero a pantalla completa */
.hc-hero { position: relative; height: calc(100vh - 183px); min-height: 560px; max-height: 900px; overflow: hidden; background: #0d1412; }
.hc-hero-slider, .hc-hero-slider .swiper-slide { height: 100%; }
.hc-hero-media { position: absolute; inset: 0; overflow: hidden; }
.hc-hero-media img { width: 100%; height: 100%; object-fit: cover; transform: scale(1.12); transition: transform 8s ease-out; }
.hc-hero .swiper-slide-active .hc-hero-media img { transform: scale(1); }
.hc-hero-media::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(6,14,12,.85) 0%, rgba(6,14,12,.6) 45%, rgba(6,14,12,.15) 100%), linear-gradient(0deg, rgba(0,0,0,.55) 0%, transparent 35%); }
/* pattern.png de la plantilla es un placeholder ("2115 × 1323") */
body.body-pattern { background-image: none; }

.hc-hero-slider .container { position: relative; z-index: 2; height: 100%; display: flex; align-items: center; }
.hc-hero-content { max-width: 660px; padding-bottom: 60px; }
.hc-hero-sub { display: inline-block; color: #dfc5a0; text-transform: uppercase; letter-spacing: .25em; font-size: 14px; font-weight: 600; margin-bottom: 18px; }
.hc-hero .hero-title { color: #fff; font-size: clamp(38px, 5.6vw, 76px); line-height: 1.08; margin-bottom: 22px; }
.hc-hero .hero-text { color: rgba(255,255,255,.88); font-size: 18px; line-height: 1.7; max-width: 540px; margin-bottom: 36px; }
.hc-hero .btn-group { gap: 16px; flex-wrap: wrap; }
.hc-hero-controls { position: absolute; left: 0; right: 0; bottom: 36px; z-index: 3; }
.hc-hero-bar { display: flex; align-items: center; gap: 24px; }
.hc-hero-count { color: #fff; font: 500 15px 'Playfair Display', Georgia, serif; letter-spacing: .1em; white-space: nowrap; }
.hc-hero-count .current { font-size: 22px; color: #dfc5a0; }
.hc-hero .hc-hero-pagination.swiper-pagination-bullets { display: flex; gap: 8px; flex: 1; max-width: 320px; width: auto; height: auto; margin: 0; padding: 12px 0; line-height: 0; }
.hc-hero .hc-hero-pagination .swiper-pagination-bullet,
.hc-hero .hc-hero-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active { flex: 1; height: 3px; width: auto; border: 0; border-radius: 2px; background-color: rgba(255,255,255,.3); transform: none; opacity: 1; margin: 0 !important; position: relative; overflow: hidden; }
.hc-hero-pagination .swiper-pagination-bullet::after { content: ""; position: absolute; inset: 0; background: #dfc5a0; transform: scaleX(0); transform-origin: left; }
.hc-hero-pagination .swiper-pagination-bullet-active::after { animation: hcProgress 6s linear forwards; }
@keyframes hcProgress { to { transform: scaleX(1); } }
.hc-hero-arrows { display: flex; gap: 10px; margin-left: auto; }
.hc-arrow { width: 52px; height: 52px; border-radius: 50%; border: 1px solid rgba(255,255,255,.5); background: transparent; color: #fff; font-size: 18px; display: grid; place-items: center; transition: .3s; }
.hc-arrow:hover { background: #dfc5a0; border-color: #dfc5a0; color: #1b1b1b; }
.hc-arrow.dark { border-color: rgba(0,0,0,.25); color: var(--title-color); }
@media (max-width: 767px) {
    .hc-hero { height: calc(100svh - 143px); min-height: 520px; }
    .hc-hero-media::after { background: linear-gradient(0deg, rgba(6,14,12,.85) 0%, rgba(6,14,12,.4) 60%, rgba(6,14,12,.2) 100%); }
    .hc-hero-slider .container { align-items: flex-end; }
    .hc-hero-content { padding-bottom: 110px; }
    .hc-hero .hero-text { font-size: 16px; margin-bottom: 26px; }
    .hc-hero .th-btn { padding: 16px 22px; font-size: 15px; }
    .hc-hero-arrows { display: none; }
    .hc-hero-pagination { max-width: none; }
}

/* Galería: carrusel de fotos grandes */
.hc-gallery-nav { display: flex; align-items: center; gap: 10px; margin-bottom: 40px; }
.hc-gallery-count { font: 500 16px 'Playfair Display', Georgia, serif; color: var(--title-color); margin-right: 12px; letter-spacing: .1em; }
.hc-gallery-slider { padding: 0 16px; }
.hc-gallery-slider .swiper-slide { width: min(1100px, 78vw); transition: opacity .5s; opacity: .45; }
.hc-gallery-slider .swiper-slide-active { opacity: 1; }
.hc-gallery-item { position: relative; display: block; height: min(68vh, 680px); border-radius: 24px; overflow: hidden; }
.hc-gallery-item img { width: 100%; height: 100%; object-fit: cover; transition: transform 1.2s ease; }
.hc-gallery-item:hover img { transform: scale(1.04); }
.hc-gallery-item::after { content: ""; position: absolute; inset: 0; background: linear-gradient(0deg, rgba(0,0,0,.55) 0%, transparent 40%); }
.hc-gallery-caption { position: absolute; left: 32px; bottom: 28px; z-index: 2; color: #fff; font: 500 26px 'Playfair Display', Georgia, serif; }
.hc-gallery-caption small { display: block; font: 600 12px Inter, sans-serif; letter-spacing: .25em; text-transform: uppercase; color: #dfc5a0; margin-bottom: 6px; }
@media (max-width: 767px) {
    .hc-gallery-nav { justify-content: center; margin-bottom: 24px; }
    .hc-gallery-slider .swiper-slide { width: 88vw; }
    .hc-gallery-item { height: 62vw; min-height: 260px; border-radius: 16px; }
    .hc-gallery-caption { left: 18px; bottom: 16px; font-size: 19px; }
}

/* ================= Página Nosotros ================= */
.main-menu a.is-active, .th-mobile-menu a.is-active { color: var(--theme-color); }
.main-menu a.is-active { text-decoration: underline; text-decoration-color: #dfc5a0; text-underline-offset: 8px; text-decoration-thickness: 2px; }

/* Portada con foto grande (reusa .hc-hero-media y textos del hero del index) */
.hc-page-hero { position: relative; height: calc(100vh - 183px); min-height: 560px; max-height: 820px; overflow: hidden; background: #0d1412; }
.hc-page-hero .hc-hero-media img { transform: none; transition: none; object-position: 50% 58%; }
.hc-page-hero > .container { position: relative; z-index: 2; height: 100%; display: flex; align-items: center; }
.hc-page-hero .hero-title { color: #fff; font-size: clamp(38px, 5.6vw, 76px); line-height: 1.08; margin-bottom: 22px; }
.hc-page-hero .hero-text { color: rgba(255,255,255,.88); font-size: 18px; line-height: 1.7; max-width: 540px; margin-bottom: 36px; }
.hc-page-hero .btn-group { gap: 16px; flex-wrap: wrap; }
.hc-page-hero-bottom { position: absolute; left: 0; right: 0; bottom: 30px; z-index: 3; }
.hc-page-hero-bottom .container { display: flex; justify-content: space-between; color: #fff; font-size: 13px; letter-spacing: .2em; text-transform: uppercase; }
.hc-page-hero-bottom a { color: #dfc5a0; }
.hc-page-hero-bottom a:hover { color: #fff; }
.hc-page-hero-bottom i { margin-left: 8px; }

/* Fondo gris con patrón (igual que "El hotel" del index) */
.hc-pattern { background: #eceef1 url("../img/bg/hc-patron.png") repeat; background-blend-mode: multiply; }

/* Jardín + detalles numerados */
.hc-garden-img { border-radius: 24px; overflow: hidden; height: 620px; }
.hc-garden-img img { width: 100%; height: 100%; object-fit: cover; }
.hc-detail { display: grid; grid-template-columns: 56px 1fr; gap: 16px; border-top: 1px solid rgba(55,72,104,.15); margin-top: 28px; padding-top: 24px; }
.hc-detail-num { font: 500 28px 'Playfair Display', Georgia, serif; color: #c2a67c; line-height: 1; }
.hc-detail h3 { font-size: 20px; margin: 0 0 6px; color: #374868; }
.hc-detail p { margin: 0; }

/* Tarjetas "Tiempo para vos" */
.hc-eyebrow { display: block; color: #b08f5f; text-transform: uppercase; letter-spacing: .22em; font-size: 13px; font-weight: 600; margin: 26px 0 10px; }
.hc-exp-img { border-radius: 24px; overflow: hidden; height: 400px; }
.hc-exp-img img { width: 100%; height: 100%; object-fit: cover; transition: transform 1.2s ease; }
.hc-exp-card:hover .hc-exp-img img { transform: scale(1.04); }
.hc-exp-card h3 { font-size: 30px; margin: 0 0 12px; color: #374868; }
.hc-exp-card p { max-width: 480px; margin: 0; }

/* Galería en grilla con lightbox */
.hc-photo { display: block; color: var(--title-color); }
.hc-photo-img { display: block; border-radius: 16px; overflow: hidden; height: 300px; }
.hc-photo-img img { width: 100%; height: 100%; object-fit: cover; transition: transform 1s ease, filter .3s; }
.hc-photo:hover .hc-photo-img img { transform: scale(1.05); filter: brightness(.9); }
.hc-photo-caption { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; padding-top: 14px; font: 500 18px 'Playfair Display', Georgia, serif; color: #374868; }
.hc-photo-caption small { font: 500 12px Inter, sans-serif; letter-spacing: .12em; text-transform: uppercase; color: #b08f5f; white-space: nowrap; }

@media (max-width: 991px) {
    .hc-garden-img { height: 480px; }
    .hc-exp-img { height: 320px; }
}
@media (max-width: 767px) {
    .hc-page-hero { height: calc(100svh - 143px); min-height: 520px; }
    .hc-page-hero .hc-hero-media::after { background: linear-gradient(0deg, rgba(6,14,12,.85) 0%, rgba(6,14,12,.4) 60%, rgba(6,14,12,.2) 100%); }
    .hc-page-hero > .container { align-items: flex-end; padding-bottom: 80px; }
    .hc-page-hero .hero-text { font-size: 16px; margin-bottom: 26px; }
    .hc-page-hero .th-btn { padding: 16px 22px; font-size: 15px; }
    .hc-page-hero-bottom span { display: none; }
    .hc-exp-card h3 { font-size: 24px; }
    .hc-photo-img { height: 240px; }
}

/* Botón flotante de WhatsApp (encima del botón de subir) */
.hc-whatsapp { position: fixed; right: 27px; bottom: 96px; z-index: 10000; width: 56px; height: 56px; border-radius: 50%; background: #25d366; color: #fff; display: grid; place-items: center; font-size: 30px; box-shadow: 0 6px 18px rgba(0,0,0,.2); transition: transform .3s; }
.hc-whatsapp:hover { color: #fff; transform: scale(1.08); }
.hc-whatsapp::before { content: ""; position: absolute; inset: 0; border-radius: 50%; background: #25d366; z-index: -1; animation: hcWaPulse 2.4s ease-out infinite; }
@keyframes hcWaPulse { 0% { transform: scale(1); opacity: .5; } 100% { transform: scale(1.6); opacity: 0; } }
.hc-whatsapp-label { position: absolute; right: 68px; top: 50%; transform: translateY(-50%); background: #fff; color: #374868; font: 500 14px Inter, sans-serif; padding: 9px 14px; border-radius: 8px; white-space: nowrap; box-shadow: 0 4px 14px rgba(0,0,0,.12); opacity: 0; visibility: hidden; transition: .3s; }
.hc-whatsapp:hover .hc-whatsapp-label { opacity: 1; visibility: visible; }
@media (max-width: 767px) { .hc-whatsapp { right: 29px; bottom: 92px; width: 52px; height: 52px; font-size: 28px; } .hc-whatsapp-label { display: none; } }
@media (prefers-reduced-motion: reduce) { .hc-whatsapp::before { animation: none; } }

/* Redes sociales */
.hc-top-social { display: inline-flex !important; align-items: center; gap: 14px; }
.hc-top-social a { color: #fff; font-size: 15px; transition: color .3s; }
.hc-top-social a:hover { color: #dfc5a0; }
.hc-footer-social { margin-top: 26px; }
.footer-layout3 .hc-footer-social a { --icon-size: 42px; border: 1px solid rgba(223,197,160,.5); color: #dfc5a0; margin-right: 10px; transition: .3s; }
.footer-layout3 .hc-footer-social a:hover { background: #dfc5a0; border-color: #dfc5a0; color: #26324a; }

/* Íconos de los subtítulos: ícono de hotel en lugar del adorno de la plantilla */
.sub-title:before,
.sub-title.style2:before,
.title-area.style3 .sub-title:before {
    background-image: none !important;
    content: "\f594";
    font-family: "Font Awesome 6 Pro";
    font-weight: 900;
    font-size: 14px;
    line-height: 1;
    width: auto;
    height: auto;
    top: 4px;
    color: #b08f5f;
}
.sub-title.style2:before { color: #dfc5a0; } /* sobre fondos oscuros (foto del banner) */

/* Texto en círculo de "El hotel": 40 letras repartidas en 360° (9° cada una) para que no se superpongan */
.img-box3 .discount-tag span { --rotate-letter: 9deg; }
