:root{--color-terracotta:#d96b43;--color-terracotta-dark:#c25932;--color-terracotta-light:#f0a081;--color-sand:#f7f4eb;--color-sand-dark:#e8e2d2;--color-sand-light:#fbf9f6;--color-olive:#5b7053;--color-olive-dark:#44543d;--color-olive-light:#839d79;--color-cream:#fcfbf9;--color-charcoal:#2b2d2f;--color-charcoal-light:#4a4d50;--color-glass:#fcfbf9bf;--color-glass-dark:#2b2d2fbf;--font-title:"Playfair Display", serif;--font-body:"Outfit", sans-serif;--shadow-sm:0 2px 8px #0000000d;--shadow-md:0 8px 24px #00000014;--shadow-lg:0 16px 40px #0000001f;--radius-sm:8px;--radius-md:16px;--radius-lg:24px;--radius-full:9999px;--transition-smooth:all .4s cubic-bezier(.25, 1, .5, 1);--transition-fast:all .2s ease}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;height:-webkit-fill-available}body{font-family:var(--font-body);background-color:var(--color-sand);color:var(--color-charcoal);min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:-webkit-fill-available;line-height:1.6;overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-title);font-weight:600;line-height:1.25}p{font-weight:300}a{color:inherit;transition:var(--transition-fast);text-decoration:none}.app-container{flex-direction:column;min-height:100vh;display:flex}.main-content{flex-grow:1}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--color-sand)}::-webkit-scrollbar-thumb{background:var(--color-olive-light);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--color-olive)}.container{width:100%;max-width:1200px;margin-left:auto;margin-right:auto;padding-left:1.5rem;padding-right:1.5rem}.section-padding{padding-top:5rem;padding-bottom:5rem}.glass{background:var(--color-glass);-webkit-backdrop-filter:blur(12px);border:1px solid #ffffff4d}.glass-dark{background:var(--color-glass-dark);-webkit-backdrop-filter:blur(12px);border:1px solid #ffffff0d}.btn{font-family:var(--font-body);border-radius:var(--radius-full);cursor:pointer;transition:var(--transition-smooth);border:none;justify-content:center;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-size:.95rem;font-weight:500;display:inline-flex}.btn-primary{background-color:var(--color-terracotta);color:var(--color-cream)}.btn-primary:hover{background-color:var(--color-terracotta-dark);transform:translateY(-2px);box-shadow:0 4px 12px #d96b434d}.btn-secondary{border:1px solid var(--color-olive);color:var(--color-olive);background-color:#0000}.btn-secondary:hover{background-color:var(--color-olive);color:var(--color-cream);transform:translateY(-2px)}.btn-whatsapp{color:#fff;background-color:#25d366}.btn-whatsapp:hover{background-color:#128c7e;transform:translateY(-2px);box-shadow:0 4px 12px #25d3664d}.section-title{color:var(--color-charcoal);text-align:center;margin-bottom:1rem;font-size:2.5rem}.section-subtitle{text-align:center;color:var(--color-olive);max-width:600px;margin:0 auto 3rem;font-size:1.1rem;font-weight:400}.header{z-index:1000;width:100%;transition:var(--transition-smooth);background-color:#0000;border-bottom:1px solid #0000;padding:1.5rem 0;position:fixed;top:0;left:0}.header.scrolled{box-shadow:var(--shadow-sm);border-bottom:1px solid #fff3;padding:1rem 0}.header.menu-open{background-color:var(--color-sand);border-bottom:1px solid var(--color-sand-dark)}.header-container{justify-content:space-between;align-items:center;width:100%;max-width:1200px;margin:0 auto;padding:0 1.5rem;display:flex}.header-logo{transition:var(--transition-fast);align-items:center;text-decoration:none;display:flex}.header-logo:hover{opacity:.88}.header-logo-img{object-fit:contain;filter:drop-shadow(0 2px 8px #00000059);width:auto;height:38px;transition:var(--transition-fast)}.desktop-nav{gap:2.5rem;display:flex}.nav-link{color:var(--color-cream);text-shadow:0 1px 4px #00000040;padding:.5rem 0;font-size:.95rem;font-weight:500;position:relative}.nav-link:after{content:"";background-color:var(--color-terracotta);width:0;height:2px;transition:var(--transition-fast);position:absolute;bottom:0;left:0}.nav-link:hover{color:var(--color-terracotta-light)}.nav-link:hover:after,.nav-link.active:after{width:100%}.nav-link.active{color:var(--color-terracotta-light)}.mobile-toggle{cursor:pointer;color:var(--color-cream);filter:drop-shadow(0 1px 2px #0000004d);background:0 0;border:none;padding:.5rem;display:none}.header.menu-open .header-logo-img{filter:brightness(.2)}.header.menu-open .mobile-toggle{color:var(--color-charcoal);filter:none}.mobile-nav{z-index:999;background-color:var(--color-sand);border-top:1px solid #fff3;flex-direction:column;gap:1.5rem;width:100%;height:calc(100vh - 100%);padding:2rem 1.5rem;animation:.3s cubic-bezier(.16,1,.3,1) slideDown;display:flex;position:absolute;top:100%;left:0}.mobile-nav-link{color:var(--color-charcoal);border-bottom:1px solid var(--color-sand-dark);padding:.5rem 0;font-size:1.3rem;font-weight:500}.mobile-nav-link.active{color:var(--color-terracotta);border-bottom-color:var(--color-terracotta)}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@media (width<=768px){.header-logo-img{height:30px}.desktop-nav{display:none}.mobile-toggle{display:block}}.intro-overlay{z-index:2000;background:radial-gradient(circle,#222921 0%,#131812 65%,#0b0e0b 100%);justify-content:center;align-items:center;width:100%;height:100vh;padding:2rem;display:flex;position:fixed;top:0;left:0;overflow:hidden}.intro-glow-1{filter:blur(50px);pointer-events:none;background:radial-gradient(circle,#d96b4347 0%,#d96b4300 70%);border-radius:50%;width:500px;height:500px;animation:14s ease-in-out infinite alternate floatGlow;position:absolute;top:15%;left:20%}.intro-glow-2{filter:blur(40px);pointer-events:none;background:radial-gradient(circle,#839d7938 0%,#839d7900 70%);border-radius:50%;width:400px;height:400px;animation:10s ease-in-out infinite alternate-reverse floatGlow;position:absolute;bottom:10%;right:15%}@keyframes floatGlow{0%{transform:translate(0)scale(1)}to{transform:translate(40px,-40px)scale(1.1)}}.intro-content-wrapper{z-index:10;justify-content:center;align-items:center;display:flex;position:relative}.intro-title-group{flex-direction:column;justify-content:center;align-items:center;display:flex}.intro-logo-container{justify-content:center;align-items:center;margin-bottom:1.25rem;display:flex}.intro-logo{object-fit:contain;filter:drop-shadow(0 4px 15px #00000059);max-width:130px;height:auto;max-height:42px}.intro-row-top{justify-content:center;align-items:baseline;gap:1rem;display:flex}.intro-word-tu{font-family:var(--font-title);color:#e8e2d2;font-size:3.8rem;font-style:italic;font-weight:400;display:inline-block}.intro-word-verano{font-family:var(--font-title);color:var(--color-terracotta-light);text-transform:uppercase;letter-spacing:6px;font-size:5.5rem;font-weight:700;display:inline-block}.intro-row-bottom{font-family:var(--font-body);text-transform:uppercase;letter-spacing:8px;color:#f7f4eb;text-align:center;border-top:1px solid #f7f4eb40;width:100%;margin-top:.75rem;padding-top:.75rem;font-size:1.25rem;font-weight:400}@media (width<=768px){.intro-logo{max-width:105px;max-height:34px}.intro-logo-container{margin-bottom:1rem}.intro-row-top{gap:.5rem}.intro-word-tu{font-size:2.2rem}.intro-word-verano{letter-spacing:4px;font-size:3.6rem}.intro-row-bottom{letter-spacing:5px;margin-top:.25rem;padding-top:.5rem;font-size:.95rem}}.home-wrapper{background-color:var(--color-charcoal);width:100%;height:100dvh;position:relative;overflow:hidden}.split-container{flex-direction:row;width:100%;height:100%;display:flex;overflow:hidden}.split-panel{cursor:pointer;flex-direction:column;flex:1;justify-content:center;align-items:center;height:100%;transition:flex .6s cubic-bezier(.25,1,.5,1);display:flex;position:relative;overflow:hidden}.panel-bg{background-position:50%;background-size:cover;width:100%;height:100%;transition:transform 1.2s cubic-bezier(.25,1,.5,1);position:absolute;top:0;left:0;transform:scale(1.03)}.split-panel:hover .panel-bg{transform:scale(1.1)}.panel-overlay{width:100%;height:100%;transition:var(--transition-smooth);opacity:.9;background:linear-gradient(#2b2d2f33 0%,#2b2d2f66 60%,#2b2d2fd9 100%);position:absolute;top:0;left:0}.split-panel:hover .panel-overlay{background-color:var(--accent-color);opacity:.8}.panel-content{z-index:10;text-align:center;flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%;padding:2rem;display:flex;position:relative}.logo-wrapper{width:75%;max-width:140px;transition:var(--transition-smooth);margin-bottom:2rem}.hotel-logo-img{object-fit:contain;filter:drop-shadow(0 4px 8px #0000004d);width:100%;height:auto}.panel-cta{opacity:0;transition:var(--transition-smooth);transform:translateY(20px)}.split-panel:hover .panel-cta{opacity:1;transform:translateY(0)}.btn-white-border{border-color:var(--color-cream);color:var(--color-cream);-webkit-backdrop-filter:blur(4px);background-color:#fcfbf91a}.btn-white-border:hover{background-color:var(--color-cream);color:var(--color-charcoal);border-color:var(--color-cream)}@media (width<=768px){.split-container{flex-direction:column}.split-panel{flex:33.333%;width:100%;height:33.333%;transition:flex .5s cubic-bezier(.25,1,.5,1)}.split-panel.expanded-mobile{cursor:default;flex-grow:2.2}.split-panel.collapsed-mobile{opacity:.7;flex-grow:.6}.logo-wrapper{max-width:110px;margin-bottom:.5rem}.split-panel.expanded-mobile .logo-wrapper{margin-bottom:1.25rem}.panel-cta{opacity:0;transition:var(--transition-smooth);pointer-events:none;margin-top:.5rem;display:block;transform:translateY(15px)}.split-panel.expanded-mobile .panel-cta{opacity:1;pointer-events:auto;transform:translateY(0)}}.promo-card{border-radius:var(--radius-md);transition:var(--transition-smooth);height:100%;box-shadow:var(--shadow-sm);background-color:var(--color-cream);border:1px solid var(--color-sand-dark);flex-direction:column;justify-content:space-between;padding:2.25rem 2rem;display:flex;position:relative;overflow:hidden}.promo-card:hover{box-shadow:var(--shadow-lg);border-color:var(--color-terracotta-light);transform:translateY(-6px)}.promo-card-content{margin-bottom:2rem}.promo-card-title{color:var(--color-charcoal);text-align:center;justify-content:center;align-items:center;min-height:3.75rem;margin-bottom:1rem;font-size:1.5rem;font-weight:600;line-height:1.3;display:flex}.promo-card-divider{background-color:var(--color-terracotta);border-radius:var(--radius-full);width:50px;height:3px;margin:0 auto 1.5rem}.promo-card-features{flex-direction:column;gap:.85rem;list-style:none;display:flex}.promo-card-feature-item{align-items:flex-start;gap:.75rem;display:flex}.feature-icon{width:20px;height:20px;color:var(--color-olive);background-color:#5b70531a;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin-top:2px;display:inline-flex}.feature-text{color:var(--color-charcoal-light);font-size:.95rem;font-weight:300;line-height:1.4}.promo-card-footer{flex-direction:column;gap:1.25rem;margin-top:auto;display:flex}.promo-card-price-container{background-color:var(--color-sand);border-radius:var(--radius-sm);border:1px dashed var(--color-sand-dark);flex-direction:column;align-items:center;padding:.75rem 1rem;display:flex}.price-label{text-transform:uppercase;letter-spacing:1px;color:var(--color-olive);margin-bottom:.25rem;font-size:.75rem;font-weight:500}.price-value{color:var(--color-charcoal);font-size:1.45rem;font-weight:700;font-family:var(--font-body)}.w-full{width:100%}.footer-section{background-color:var(--color-olive-dark);color:var(--color-sand);border-top:1px solid #ffffff0d;padding-top:5rem;padding-bottom:2rem}.footer-grid{grid-template-columns:2fr 1fr 1.5fr 2fr;gap:3rem;margin-bottom:4rem;display:grid}.footer-col{flex-direction:column;display:flex}.footer-brand{color:var(--color-cream);font-size:1.8rem;font-weight:700;line-height:1}.footer-tagline{text-transform:uppercase;letter-spacing:2px;color:var(--color-terracotta-light);margin-top:.25rem;margin-bottom:1.5rem;font-size:.8rem}.footer-about{opacity:.85;max-width:320px;margin-bottom:1.5rem;font-size:.9rem;font-weight:300;line-height:1.6}.social-links{gap:1rem;display:flex}.social-links a{width:36px;height:36px;color:var(--color-sand);transition:var(--transition-fast);background-color:#ffffff0d;border-radius:50%;justify-content:center;align-items:center;display:flex}.social-links a:hover{background-color:var(--color-terracotta);color:var(--color-cream);transform:translateY(-2px)}.footer-title{color:var(--color-cream);margin-bottom:1.5rem;padding-bottom:.5rem;font-size:1.15rem;position:relative}.footer-title:after{content:"";background-color:var(--color-terracotta);width:30px;height:2px;position:absolute;bottom:0;left:0}.footer-links{flex-direction:column;gap:.75rem;list-style:none;display:flex}.footer-links a{color:var(--color-sand);opacity:.85;font-size:.95rem;font-weight:300}.footer-links a:hover{color:var(--color-terracotta-light);opacity:1;padding-left:4px}.contact-list,.location-list{flex-direction:column;gap:1rem;list-style:none;display:flex}.contact-item,.location-item{opacity:.85;align-items:flex-start;gap:.75rem;font-size:.9rem;font-weight:300;display:flex}.contact-item{color:var(--color-sand)}a.contact-item:hover{color:var(--color-terracotta-light);opacity:1}.location-item div{line-height:1.4}.location-item strong{color:var(--color-cream);font-weight:500;display:block}.footer-bottom{border-top:1px solid #ffffff14;padding-top:2rem}.footer-bottom-flex{opacity:.7;justify-content:space-between;align-items:center;font-size:.8rem;font-weight:300;display:flex}.footer-bottom-links{gap:.75rem;display:flex}.footer-bottom-links a:hover{color:var(--color-terracotta-light)}@media (width<=1024px){.footer-grid{grid-template-columns:1fr 1fr;gap:3rem}}@media (width<=640px){.footer-grid{grid-template-columns:1fr;gap:2rem}.footer-bottom-flex{text-align:center;flex-direction:column;gap:1rem}}.hotel-promos-wrapper{background-color:var(--color-sand);min-height:100vh;padding-bottom:2rem}.promo-hero-section{justify-content:center;align-items:center;width:100%;height:55vh;min-height:400px;max-height:600px;display:flex;position:relative;overflow:hidden}.promo-hero-bg{background-position:50%;background-size:cover;width:100%;height:100%;position:absolute;top:0;left:0}.promo-hero-overlay{background:linear-gradient(#2b2d2f66 0%,#2b2d2f80 60%,#2b2d2fcc 100%);width:100%;height:100%;position:absolute;top:0;left:0}.promo-hero-container{z-index:10;flex-direction:column;justify-content:center;align-items:center;height:100%;padding-top:5rem;display:flex;position:relative}.back-link{color:var(--color-cream);border-radius:var(--radius-full);-webkit-backdrop-filter:blur(4px);transition:var(--transition-smooth);background-color:#ffffff1a;border:1px solid #ffffff40;align-items:center;gap:.5rem;padding:.5rem 1.25rem;font-size:.9rem;font-weight:500;display:inline-flex;position:absolute;top:7rem;left:1.5rem}.back-link:hover{background-color:var(--color-cream);color:var(--color-charcoal);border-color:var(--color-cream);transform:translate(-3px)}.hero-logo-container{width:80%;max-width:200px;margin-bottom:1.5rem}.hero-logo-img{object-fit:contain;filter:drop-shadow(0 4px 12px #0006);width:100%;height:auto}.location-badge{background-color:var(--color-terracotta);color:var(--color-cream);text-transform:uppercase;letter-spacing:1px;border-radius:var(--radius-full);box-shadow:var(--shadow-sm);align-items:center;gap:.35rem;padding:.4rem 1rem;font-size:.8rem;font-weight:500;display:flex}.hotel-info-section{z-index:20;margin-top:-5rem;padding-left:1.5rem;padding-right:1.5rem;position:relative}.hotel-info-card{background-color:var(--color-cream);border:1px solid var(--color-sand-dark);border-radius:var(--radius-md);box-shadow:var(--shadow-md);padding:3rem}.hotel-info-title{color:var(--color-charcoal);text-align:center;margin-bottom:1.25rem;font-size:2.25rem}.hotel-info-desc{color:var(--color-charcoal-light);text-align:center;max-width:800px;margin:0 auto 3rem;font-size:1.05rem;font-weight:300;line-height:1.7}.hotel-badges-grid{border-top:1px solid var(--color-sand-dark);grid-template-columns:repeat(3,1fr);gap:2rem;padding-top:2.5rem;display:grid}.hotel-badge-item{border-radius:var(--radius-sm);align-items:center;gap:1rem;padding:1.25rem 1.5rem;display:flex}.badge-icon{flex-shrink:0}.hotel-badge-item h4{font-family:var(--font-body);color:var(--color-charcoal);margin-bottom:.15rem;font-size:.95rem;font-weight:600}.hotel-badge-item p{color:var(--color-charcoal-light);opacity:.85;font-size:.8rem}.promos-list-section{background-color:var(--color-sand-light)}.promos-grid{grid-template-columns:repeat(auto-fit,minmax(300px,350px));justify-content:center;gap:2.5rem;display:grid}.promos-feature-banner{border-radius:var(--radius-md);max-width:1000px;box-shadow:var(--shadow-md);border:1px solid var(--color-sand-dark);margin:2.5rem auto 3.5rem;overflow:hidden}.promos-feature-img-wrapper{width:100%;height:360px;position:relative;overflow:hidden}.promos-feature-img{object-fit:cover;object-position:center;width:100%;height:100%;transition:transform .8s}.promos-feature-banner:hover .promos-feature-img{transform:scale(1.03)}.promos-feature-overlay{background:linear-gradient(#0000 0%,#14161859 45%,#141618cc 100%);position:absolute;inset:0}.promos-feature-content{color:var(--color-cream);z-index:2;padding:2.25rem 2.5rem;position:absolute;bottom:0;left:0;right:0}.promos-feature-badge{background-color:var(--color-terracotta);color:var(--color-cream);text-transform:uppercase;letter-spacing:1px;border-radius:var(--radius-full);margin-bottom:.6rem;padding:.3rem .85rem;font-size:.75rem;font-weight:600;display:inline-block}.promos-feature-title{font-family:var(--font-heading);color:var(--color-cream);text-shadow:0 2px 10px #0006;margin-bottom:.4rem;font-size:2rem;font-weight:400}.promos-feature-text{color:#ffffffe6;max-width:650px;font-size:.95rem;font-weight:300;line-height:1.5}.kids-notice-banner{border-radius:var(--radius-md);text-align:left;border:1px dashed #2b2d2f33;align-items:center;gap:1rem;max-width:750px;margin:1.5rem auto 2.5rem;padding:.85rem 1.5rem;display:flex}.kids-notice-badge{white-space:nowrap;color:var(--color-cream);text-transform:uppercase;letter-spacing:1px;border-radius:var(--radius-full);padding:.3rem .85rem;font-size:.75rem;font-weight:600;display:inline-block}.kids-notice-text{color:var(--color-charcoal);margin:0;font-size:.95rem}.hotel-gallery-section{padding-top:3rem;padding-bottom:5rem}.gallery-header{text-align:center;margin-bottom:2.5rem}.gallery-subtitle{text-transform:uppercase;letter-spacing:2px;margin-bottom:.5rem;font-size:.85rem;font-weight:600;display:inline-block}.gallery-title{font-family:var(--font-title);color:var(--color-charcoal);margin-bottom:.5rem;font-size:2.25rem}.gallery-desc{color:var(--color-charcoal-light);max-width:600px;margin:0 auto;font-size:1rem}.gallery-grid{gap:1.5rem;display:grid}.gallery-count-4{grid-template-columns:repeat(4,1fr)}.gallery-count-3{grid-template-columns:repeat(3,1fr)}.gallery-count-2{grid-template-columns:repeat(2,1fr)}.gallery-card{border-radius:var(--radius-lg);box-shadow:var(--shadow-md);transition:var(--transition-smooth);overflow:hidden}.gallery-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-6px)}.gallery-img-wrapper{aspect-ratio:4/3;width:100%;position:relative;overflow:hidden}.gallery-img{object-fit:cover;width:100%;height:100%;transition:transform .6s cubic-bezier(.25,1,.5,1)}.gallery-card:hover .gallery-img{transform:scale(1.06)}.gallery-card-overlay{background:linear-gradient(#0000 50%,#00000080 100%);width:100%;height:100%;position:absolute;top:0;left:0}.gallery-card-badge{color:var(--color-cream);letter-spacing:.5px;text-shadow:0 1px 3px #0009;font-size:.8rem;font-weight:500;position:absolute;bottom:1rem;left:1rem}@media (width<=1024px){.hotel-badges-grid{grid-template-columns:1fr;gap:1rem}.gallery-count-4{grid-template-columns:repeat(2,1fr)}}@media (width<=768px){.gallery-count-4,.gallery-count-3,.gallery-count-2{grid-template-columns:1fr}.gallery-title{font-size:1.75rem}.promo-hero-section{height:45vh;min-height:320px}.back-link{padding:.4rem 1rem;font-size:.8rem;top:5.5rem;left:1rem}.hero-logo-container{max-width:140px}.hotel-info-section{margin-top:-3rem}.hotel-info-card{padding:2rem 1.5rem}.hotel-info-title{font-size:1.75rem}.hotel-info-desc{margin-bottom:2rem;font-size:.95rem}.promos-feature-img-wrapper{height:240px}.promos-feature-content{padding:1.25rem 1.5rem}.promos-feature-title{font-size:1.4rem}.promos-feature-text{font-size:.85rem}.kids-notice-banner{flex-direction:column;align-items:flex-start;gap:.5rem;margin:1.25rem auto 1.75rem;padding:1rem}.kids-notice-text{font-size:.88rem}}
