@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Outfit:wght@300;400;500;600;700;800&family=Playfair+Display:ital,wght@0,400;0,600;0,700;1,400&display=swap";@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Outfit:wght@300;400;500;600;700;800&family=Playfair+Display:ital,wght@0,400;0,600;0,700;1,400&display=swap";@keyframes fadeIn{0%{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}@keyframes slideIn{0%{transform:translate(-100%)}to{transform:translate(0)}}body{background-color:var(--neutral-50);font-family:var(--font-sans);margin:0;padding:0}.page-banner{text-align:center;background-position:50%;background-repeat:no-repeat;background-size:cover;margin-bottom:3rem;padding:5rem 0;position:relative}.page-banner:before{content:"";z-index:1;background:#0006;width:100%;height:100%;position:absolute;top:0;left:0}.banner-content{z-index:2;position:relative}.banner-content h1{color:#fff;text-shadow:0 2px 4px #0000004d;margin-bottom:.5rem;font-size:2.75rem;font-weight:700}.banner-content h2{color:var(--secondary-light);text-shadow:0 1px 2px #0000004d;font-size:1.5rem;font-weight:400}.navbar-root{background-color:var(--neutral-900);z-index:1000;width:100%;transition:var(--transition-normal);border-bottom:1px solid #ffffff0d;position:sticky;top:0;left:0}.navbar-scrolled{-webkit-backdrop-filter:var(--glass-blur);box-shadow:var(--shadow-md);background-color:#1c1917f2;border-bottom:1px solid #ffffff1a}.navbar-container{justify-content:space-between;align-items:center;height:80px;display:flex}.navbar-logo{font-family:var(--font-serif);transition:var(--transition-fast);gap:.35rem;font-size:1.5rem;font-weight:700;text-decoration:none;display:flex}.navbar-logo:hover{transform:scale(1.02)}.logo-casa{color:#fff}.logo-del-sur{color:var(--secondary)}.navbar-desktop-menu{align-items:center;gap:1.75rem;display:flex}.nav-link{color:var(--neutral-300);align-items:center;gap:.5rem;padding:.5rem .25rem;font-size:.95rem;font-weight:500;display:flex;position:relative}.nav-link:hover{color:#fff}.nav-link:after{content:"";background-color:var(--secondary);width:0;height:2px;transition:var(--transition-fast);position:absolute;bottom:-4px;left:0}.nav-link:hover:after,.nav-link.active-link:after{width:100%}.nav-link.active-link{color:var(--secondary)}.btn-navbar{padding:.5rem 1.25rem;font-size:.9rem}.navbar-toggle-btn{color:#fff;cursor:pointer;transition:var(--transition-fast);background:0 0;border:none;padding:.5rem;display:none}.navbar-toggle-btn:hover{color:var(--secondary)}.navbar-mobile-drawer{background-color:var(--neutral-900);width:100%;max-height:0;transition:max-height var(--transition-normal) ease-in-out;border-top:1px solid #ffffff14;display:none;overflow:hidden}.navbar-mobile-drawer.drawer-open{max-height:350px}.drawer-links{flex-direction:column;gap:1.25rem;padding:1.5rem;display:flex}.drawer-link{color:var(--neutral-300);align-items:center;gap:.75rem;font-size:1.1rem;font-weight:500;display:flex}.drawer-link.active-link{color:var(--secondary)}.btn-drawer{width:100%;margin-top:.5rem}.carousel-wrapper{width:100%;max-width:1000px;margin:2rem auto;position:relative}.carousel-main{aspect-ratio:16/10;background-color:var(--neutral-900);border-radius:var(--border-radius-lg) var(--border-radius-lg) 0 0;width:100%;box-shadow:var(--shadow-lg);position:relative;overflow:hidden}.carousel-slides-container{width:100%;height:100%;position:relative}.carousel-slide{opacity:0;width:100%;height:100%;transition:opacity var(--transition-slow);z-index:1;position:absolute;top:0;left:0}.carousel-slide.slide-active{opacity:1;z-index:2}.carousel-image{object-fit:cover;opacity:0;width:100%;height:100%;transition:opacity var(--transition-normal)}.carousel-image.image-loaded{opacity:1}.carousel-spinner-container{background-color:var(--neutral-800);z-index:2;justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:absolute;top:0;left:0}.carousel-spinner{border:4px solid #ffffff1a;border-left-color:var(--primary-light);border-radius:50%;width:50px;height:50px;animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.carousel-arrow{cursor:pointer;z-index:10;width:48px;height:48px;transition:var(--transition-fast);box-shadow:var(--shadow-sm);color:var(--neutral-900);background-color:#ffffffe6;border:none;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.carousel-arrow:hover{color:var(--primary);box-shadow:var(--shadow-md);background-color:#fff;transform:translateY(-50%)scale(1.05)}.arrow-left{left:1.25rem}.arrow-right{right:1.25rem}.carousel-controls-overlay{z-index:10;pointer-events:none;justify-content:space-between;align-items:center;display:flex;position:absolute;top:1.25rem;left:1.25rem;right:1.25rem}.carousel-index{-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);color:#fff;background-color:#0009;border:1px solid #fff3;border-radius:50px;padding:.35rem .75rem;font-size:.85rem;font-weight:600}.carousel-action-buttons{pointer-events:auto;gap:.5rem;display:flex}.carousel-control-btn{-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);color:#fff;cursor:pointer;width:36px;height:36px;transition:var(--transition-fast);background-color:#0009;border:1px solid #fff3;border-radius:50%;justify-content:center;align-items:center;display:flex}.carousel-control-btn:hover{background-color:var(--primary);border-color:var(--primary-light)}.carousel-caption-bar{background-color:var(--neutral-900);color:var(--secondary);border-bottom-left-radius:var(--border-radius-lg);border-bottom-right-radius:var(--border-radius-lg);text-align:center;box-shadow:var(--shadow-md);padding:1rem 1.5rem;font-size:1rem;font-weight:500}.carousel-dots{flex-wrap:wrap;justify-content:center;gap:.35rem;max-width:100%;margin-top:1rem;display:flex}.carousel-dot{background-color:var(--neutral-300);cursor:pointer;width:8px;height:8px;transition:var(--transition-fast);border:none;border-radius:50%;padding:0}.carousel-dot.dot-active{background-color:var(--primary);border-radius:4px;width:12px;transform:scale(1.25)}.carousel-fullscreen{z-index:9999;background-color:#000;width:100vw;max-width:100%;height:100vh;margin:0;position:fixed;top:0;left:0}.carousel-fullscreen .carousel-main{aspect-ratio:auto;border-radius:0;height:calc(100vh - 80px)}.carousel-fullscreen .carousel-caption-bar{border-radius:0}.carousel-fullscreen .carousel-dots{display:none}.restaurant-card{border:1px solid var(--neutral-200);flex-direction:column;height:100%;display:flex;overflow:hidden}.restaurant-image-container{background-color:var(--neutral-100);width:100%;height:220px;position:relative;overflow:hidden}.restaurant-image{object-fit:cover;width:100%;height:100%;transition:transform var(--transition-slow)}.restaurant-card:hover .restaurant-image{transform:scale(1.04)}.restaurant-rating{-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border-radius:var(--border-radius-sm);background-color:#0009;border:1px solid #ffffff1a;gap:.15rem;padding:.25rem .5rem;display:flex;position:absolute;bottom:.75rem;right:.75rem}.restaurant-content{flex-direction:column;flex-grow:1;padding:1.5rem;display:flex}.restaurant-title{font-family:var(--font-serif);color:var(--neutral-900);margin-bottom:.75rem;font-size:1.35rem}.restaurant-description{color:var(--neutral-700);flex-grow:1;margin-bottom:1.25rem;font-size:.95rem;line-height:1.5}.restaurant-quote{background-color:var(--neutral-100);border-left:3px solid var(--primary);border-radius:var(--border-radius-sm);margin-bottom:1.5rem;padding:.75rem 1rem;font-style:italic}.quote-label{font-family:var(--font-sans);color:var(--primary-dark);text-transform:uppercase;margin-bottom:.25rem;font-size:.8rem;font-style:normal;font-weight:700;display:block}.quote-text{color:var(--neutral-800);font-size:.9rem;line-height:1.45}.restaurant-actions{flex-wrap:wrap;gap:.5rem;margin-top:auto;display:flex}.btn-sm{border-radius:var(--border-radius-sm);padding:.45rem 1rem;font-size:.85rem}.btn-outline{border:1px solid var(--neutral-300);color:var(--neutral-800);background-color:#0000}.btn-outline:hover{background-color:var(--neutral-100);border-color:var(--neutral-700)}.contact-form-wrapper{border:1px solid var(--neutral-200);padding:2.25rem}.form-group{flex-direction:column;gap:.4rem;margin-bottom:1.25rem;display:flex}.form-group label{color:var(--neutral-800);font-size:.9rem;font-weight:600}.required{color:var(--accent)}.form-input{border:1px solid var(--neutral-300);border-radius:var(--border-radius-md);width:100%;transition:var(--transition-fast);background-color:#fff;outline:none;padding:.75rem 1rem;font-family:inherit;font-size:.95rem}.form-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px #0e749026}.form-textarea{resize:vertical;min-height:120px}.input-error{border-color:var(--accent);background-color:#f9731605}.error-text{color:var(--accent-dark);font-size:.8rem;font-weight:500}.captcha-group{background-color:var(--neutral-100);border-radius:var(--border-radius-md);border:1px dashed var(--neutral-300);padding:1.25rem}.captcha-display{align-items:center;gap:1rem;margin-bottom:.75rem;display:flex}.captcha-images{border-radius:var(--border-radius-sm);border:1px solid var(--neutral-300);background-color:#fff;justify-content:center;align-items:center;gap:2px;padding:.35rem .75rem;display:flex}.captcha-images img{-webkit-user-select:none;user-select:none;width:auto;height:28px}.captcha-audio-btn{border:1px solid var(--neutral-300);color:var(--primary);cursor:pointer;width:38px;height:38px;transition:var(--transition-fast);box-shadow:var(--shadow-sm);background-color:#fff;border-radius:50%;justify-content:center;align-items:center;display:flex}.captcha-audio-btn:hover{background-color:var(--primary-light);color:#fff;border-color:var(--primary-light)}.captcha-input{letter-spacing:1.5px;text-align:center;text-transform:lowercase;max-width:250px;margin:0 auto;font-size:1.1rem}.captcha-help-text{color:var(--neutral-700);text-align:center;font-size:.75rem}.form-error-banner{background-color:var(--accent-light);border:1px solid var(--accent);color:var(--accent-dark);border-radius:var(--border-radius-md);align-items:center;gap:.5rem;margin-bottom:1.25rem;padding:.75rem 1rem;font-size:.9rem;font-weight:500;display:flex}.btn-submit{gap:.5rem;width:100%;padding:.85rem;font-size:1rem;display:flex}.btn-spinner{border:3px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:20px;height:20px;animation:.8s linear infinite spin}.form-success-message{text-align:center;flex-direction:column;align-items:center;gap:1rem;padding:3rem 1.5rem;display:flex}.form-success-message h3{color:var(--neutral-900);font-size:1.75rem}.form-success-message p{color:var(--neutral-700);max-width:400px}.hero-section{text-align:center;padding:8rem 0;position:relative;overflow:hidden}.hero-content{z-index:2;position:relative}.hero-text-block{text-align:center;flex-direction:column;align-items:center;max-width:800px;margin:0 auto;display:flex}.hero-bg-carousel{z-index:1;background-color:var(--neutral-900);width:100%;height:100%;position:absolute;top:0;left:0;overflow:hidden}.hero-bg-slide{opacity:0;width:100%;height:100%;transition:opacity 1.5s ease-in-out;position:absolute;top:0;left:0}.hero-bg-slide.active{opacity:1}.hero-bg-image{object-fit:cover;width:100%;height:100%}@keyframes kenburns{0%{transform:scale(1)}to{transform:scale(1.08)}}.hero-bg-slide.active .hero-bg-image{animation:8s ease-out forwards kenburns}.hero-bg-overlay{z-index:2;background:linear-gradient(135deg,#0a192fbf 0%,#0a192f99 100%);width:100%;height:100%;position:absolute;top:0;left:0}.hero-badge{background-color:var(--secondary);color:var(--neutral-900);text-transform:uppercase;letter-spacing:1.5px;border-radius:50px;margin-bottom:1.5rem;padding:.35rem 1rem;font-size:.75rem;font-weight:700}.hero-title{color:#fff;text-shadow:0 2px 8px #0006;margin-bottom:1rem;font-size:3rem}.hero-subtitle{color:var(--secondary-light);text-shadow:0 1px 4px #0006;margin-bottom:1.5rem;font-size:1.5rem;font-weight:400}.hero-tagline{color:var(--neutral-100);text-shadow:0 1px 4px #0006;max-width:600px;margin-bottom:2rem;font-size:1.1rem}.hero-actions{flex-wrap:wrap;justify-content:center;gap:1rem;display:flex}.btn-outline-white{color:#fff;background-color:#0000;border:2px solid #fff}.btn-outline-white:hover{color:var(--primary-dark);background-color:#fff}.gallery-section{padding:4rem 1.5rem}.section-header{text-align:center;margin-bottom:2.5rem}.section-title{color:var(--neutral-900);margin-bottom:.5rem;font-size:2.25rem}.section-subtitle{color:var(--neutral-700);max-width:600px;margin:0 auto;font-size:1.05rem}.overview-section{padding:5rem 0}.overview-grid{grid-template-columns:1fr 1fr;gap:2.5rem;display:grid}.overview-text,.overview-details{padding:2.5rem}.overview-title{font-family:var(--font-serif);border-bottom:2px solid var(--secondary-light);margin-bottom:1.5rem;padding-bottom:.5rem;font-size:1.75rem}.overview-text p{color:var(--neutral-700);margin-bottom:1.25rem;font-size:1.05rem}.features-list{flex-direction:column;gap:1.5rem;list-style:none;display:flex}.features-list li{align-items:flex-start;gap:1rem;display:flex}.feature-icon{font-size:1.75rem;line-height:1}.features-list strong{color:var(--neutral-900);font-size:1.1rem;display:block}.features-list span{color:var(--neutral-700);font-size:.95rem}.highlights-section{padding:5rem 1.5rem}.highlights-grid{grid-template-columns:repeat(3,1fr);gap:2.5rem;display:grid}.highlight-card{text-align:center;padding:1.5rem}.highlight-icon{width:48px;height:48px;color:var(--primary);margin-bottom:1.25rem}.highlight-card h4{color:var(--neutral-900);margin-bottom:.75rem;font-size:1.25rem}.highlight-card p{color:var(--neutral-700);font-size:.95rem}.cta-bannerbg{text-align:center;padding:5rem 1.5rem}.cta-container h2{color:#fff;margin-bottom:1rem;font-size:2.5rem}.cta-container p{color:var(--neutral-100);margin-bottom:2rem;font-size:1.15rem}.cta-buttons{justify-content:center;gap:1rem;display:flex}.about-main{padding-bottom:5rem}.about-intro-grid{grid-template-columns:2fr 1fr;gap:2.5rem;margin-bottom:4rem;display:grid}.about-intro-text{padding:2.5rem}.about-intro-text h2{font-family:var(--font-serif);margin-bottom:1rem;font-size:1.75rem}.about-intro-text p{color:var(--neutral-700);margin-bottom:1rem}.about-intro-card{border-radius:var(--border-radius-lg);box-shadow:var(--shadow-md);flex-direction:column;justify-content:center;padding:2.5rem;display:flex}.about-intro-card h3{font-family:var(--font-serif);color:var(--secondary-light);border-bottom:1px solid #fff3;margin-bottom:1.25rem;padding-bottom:.5rem;font-size:1.5rem}.info-list{flex-direction:column;gap:1rem;list-style:none;display:flex}.info-list li{color:#fff;border-bottom:1px solid #ffffff0d;padding-bottom:.5rem;font-size:.95rem}.info-list li strong{color:var(--secondary-light);text-transform:uppercase;letter-spacing:.5px;font-size:.8rem;display:block}.dining-guide{margin-top:2rem}.restaurant-grid{grid-template-columns:repeat(2,1fr);gap:2.5rem;margin-top:2rem;display:grid}.contact-main{padding-bottom:5rem}.contact-layout-grid{grid-template-columns:1.2fr 1.8fr;align-items:start;gap:3rem;display:grid}.contact-info-panel{flex-direction:column;gap:2rem;display:flex}.info-card{padding:2rem}.info-card h3{border-bottom:2px solid var(--secondary-light);margin-bottom:1.25rem;padding-bottom:.5rem;font-size:1.5rem}.highlight-border{border:2px solid var(--primary)}.booking-instructions{color:var(--neutral-700);margin-bottom:1.5rem}.booking-contact-list{flex-direction:column;gap:1.25rem;list-style:none;display:flex}.contact-detail-item{border-radius:var(--border-radius-md);background-color:var(--neutral-100);border:1px solid var(--neutral-200);transition:var(--transition-fast);color:inherit;align-items:center;gap:1rem;padding:.75rem;display:flex}.contact-detail-item:hover{border-color:var(--primary);background-color:#fff;transform:translate(4px)}.contact-icon-box{background-color:var(--primary);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.contact-label{text-transform:uppercase;color:var(--neutral-700);font-size:.75rem;font-weight:600;display:block}.contact-value{color:var(--neutral-900);word-break:break-all;font-size:1rem;font-weight:500}.details-list{flex-direction:column;gap:1.25rem;list-style:none;display:flex}.details-list li{align-items:flex-start;gap:1rem;display:flex}.details-icon{color:var(--primary);flex-shrink:0;margin-top:.25rem}.contact-map-card{padding:1.5rem}.map-iframe-container{border-radius:var(--border-radius-md);border:1px solid var(--neutral-200);width:100%;height:350px;overflow:hidden}.contact-form-panel{padding:1rem 0}.panel-title{margin-bottom:.5rem;font-size:2rem}.panel-subtitle{color:var(--neutral-700);margin-bottom:2rem}.rates-main{padding-bottom:5rem}.rates-layout-grid{grid-template-columns:1.2fr 1.8fr;align-items:start;gap:3rem;display:grid}.price-primary-card{border-radius:var(--border-radius-lg);box-shadow:var(--shadow-lg);text-align:center;flex-direction:column;align-items:center;padding:3rem 2.25rem;display:flex}.price-card-icon{color:var(--secondary-light);margin-bottom:1rem}.price-primary-card h3{color:#fff;margin-bottom:1.5rem;font-size:1.75rem}.price-tag{border-top:1px solid #ffffff26;border-bottom:1px solid #ffffff26;flex-wrap:wrap;justify-content:center;align-items:baseline;gap:.25rem;width:100%;margin-bottom:1.5rem;padding:1.5rem 0;display:flex}.price-currency{color:var(--secondary);font-size:2.25rem;font-weight:800}.price-dash{color:#fff9;margin:0 .25rem;font-size:1.5rem}.price-amount{color:var(--secondary);font-size:2.25rem;font-weight:800}.price-period{color:#fffc;margin-left:.5rem;font-size:1.1rem;font-weight:600}.price-conditions{color:var(--neutral-100);margin-bottom:2rem;font-size:.95rem;line-height:1.5}.price-requirements{color:var(--secondary-light);text-align:center;align-items:center;gap:.5rem;margin-bottom:2rem;font-size:.85rem;font-weight:600;display:flex}.btn-block{width:100%}.rates-details-panel{flex-direction:column;gap:2rem;display:flex}.details-card{padding:2.5rem}.details-card h3{border-bottom:2px solid var(--secondary-light);margin-bottom:1.25rem;padding-bottom:.5rem;font-size:1.5rem}.details-intro{color:var(--neutral-700);margin-bottom:1.5rem}.inclusions-grid{grid-template-columns:repeat(2,1fr);gap:1rem;display:grid}.inclusion-item{color:var(--neutral-700);align-items:center;gap:.75rem;font-size:.95rem;display:flex}.inclusion-check{color:var(--primary);flex-shrink:0}.policies-list{flex-direction:column;gap:1.5rem;display:flex}.policy-item{align-items:flex-start;gap:1rem;display:flex}.policy-icon{color:var(--primary);flex-shrink:0;margin-top:.2rem}.policy-item strong{color:var(--neutral-900);margin-bottom:.25rem;font-size:1.05rem;display:block}.policy-item p{color:var(--neutral-700);font-size:.95rem}.footer-root{background-color:var(--neutral-900);color:var(--neutral-300);border-top:1px solid #ffffff0d;padding:4.5rem 0 3rem;font-size:.95rem}.footer-grid{grid-template-columns:2fr 1fr 1.5fr;gap:4rem;margin-bottom:3.5rem;display:grid}.footer-logo{font-family:var(--font-serif);gap:.35rem;margin-bottom:1.25rem;font-size:1.5rem;font-weight:700;text-decoration:none;display:flex}.footer-description{color:var(--neutral-700);line-height:1.6}.footer-title{color:#fff;font-family:var(--font-sans);margin-bottom:1.25rem;font-size:1.1rem;font-weight:600}.footer-links ul,.footer-contact ul{flex-direction:column;gap:.75rem;list-style:none;display:flex}.footer-links a{color:var(--neutral-300);transition:var(--transition-fast)}.footer-links a:hover{color:#fff;padding-left:4px}.footer-contact li{align-items:flex-start;gap:.75rem;display:flex}.footer-contact svg{color:var(--secondary);flex-shrink:0;margin-top:.25rem}.footer-contact a{color:var(--neutral-300)}.footer-contact a:hover{color:#fff}.footer-divider{background-color:#ffffff0d;height:1px;margin-bottom:2rem}.footer-bottom{color:var(--neutral-700);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;font-size:.85rem;display:flex}.footer-parent-link{color:var(--neutral-300);font-weight:600;text-decoration:underline}.footer-parent-link:hover{color:#fff}@media (width<=1024px){.hero-title{font-size:3rem}.overview-grid,.about-intro-grid,.contact-layout-grid,.rates-layout-grid{grid-template-columns:1fr;gap:2rem}.footer-grid{grid-template-columns:1fr 1fr;gap:3rem}}@media (width<=768px){.container{padding:0 1rem}.navbar-toggle-btn{display:block}.navbar-desktop-menu{display:none}.navbar-mobile-drawer{display:block}.navbar-container{height:64px}.navbar-logo{font-size:1.3rem}.page-banner{margin-bottom:1.5rem;padding:2.5rem 0}.banner-content h1{font-size:2rem}.banner-content h2{font-size:1.1rem}h1{font-size:1.85rem}h2{font-size:1.5rem}h3{font-size:1.25rem}.hero-section{padding:4rem 0}.hero-badge{margin-bottom:1rem;padding:.25rem .75rem;font-size:.7rem}.hero-title{font-size:2rem}.hero-subtitle{margin-bottom:1rem;font-size:1.15rem}.hero-tagline{margin-bottom:1.5rem;padding:0 .5rem;font-size:.95rem}.hero-actions{gap:.75rem}.gallery-section,.overview-section,.highlights-section,.dining-guide,.contact-main,.rates-main,.cta-bannerbg{padding:2.5rem 0}.carousel-wrapper{width:calc(100% + 2rem);max-width:none;margin:1rem -1rem}.carousel-main{aspect-ratio:4/3;border-radius:0}.carousel-caption-bar{border-radius:0;padding:.75rem 1rem;font-size:.9rem}.carousel-arrow{width:34px;height:34px}.arrow-left{left:.25rem}.arrow-right{right:.25rem}.carousel-dots{gap:.25rem;margin-top:.5rem}.overview-grid,.about-intro-grid,.contact-layout-grid,.rates-layout-grid{grid-template-columns:1fr;gap:1.5rem}.restaurant-grid,.highlights-grid{grid-template-columns:1fr;gap:1.25rem;margin-top:1.25rem}.overview-text,.overview-details,.about-intro-text,.about-intro-card,.info-card,.details-card,.contact-form-wrapper,.price-primary-card,.contact-map-card{padding:1.25rem}.restaurant-image-container{height:180px}.restaurant-content{padding:1rem}.restaurant-quote{margin-bottom:1rem;padding:.5rem .75rem}.features-list,.info-list,.booking-contact-list,.details-list,.policies-list{gap:1rem}.form-group{margin-bottom:1rem}.captcha-group{padding:1rem}.map-iframe-container{height:250px}.footer-root{padding:2.5rem 0 1.5rem}.footer-grid{grid-template-columns:1fr;gap:1.5rem;margin-bottom:2rem}.footer-bottom{text-align:center;flex-direction:column}}:root{--primary:#0e7490;--primary-light:#06b6d4;--primary-dark:#155e75;--secondary:#eab308;--secondary-light:#fef08a;--secondary-dark:#ca8a04;--accent:#f97316;--accent-light:#ffedd5;--accent-dark:#ea580c;--neutral-50:#fafaf9;--neutral-100:#f5f5f4;--neutral-200:#e7e5e4;--neutral-300:#d6d3d1;--neutral-700:#44403c;--neutral-800:#292524;--neutral-900:#1c1917;--font-sans:"Outfit", "Inter", system-ui, -apple-system, sans-serif;--font-serif:"Playfair Display", Georgia, serif;--max-width:1200px;--border-radius-sm:6px;--border-radius-md:12px;--border-radius-lg:20px;--border-radius-xl:32px;--shadow-sm:0 2px 8px #0000000a;--shadow-md:0 8px 16px #0e749014;--shadow-lg:0 16px 32px #0e74901f;--shadow-inset:inset 0 2px 4px 0 #0000000f;--transition-fast:.15s ease;--transition-normal:.3s cubic-bezier(.4, 0, .2, 1);--transition-slow:.5s cubic-bezier(.4, 0, .2, 1);--glass-bg:#ffffffd9;--glass-border:#ffffff80;--glass-blur:blur(12px);--glass-bg-dark:#1c1917d9;--glass-border-dark:#44403c4d}*{box-sizing:border-box;margin:0;padding:0}html,body{background-color:var(--neutral-50);width:100%;height:100%;color:var(--neutral-800);font-family:var(--font-sans);scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px;line-height:1.6}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--neutral-100)}::-webkit-scrollbar-thumb{background:var(--neutral-300);border-radius:var(--border-radius-sm)}::-webkit-scrollbar-thumb:hover{background:var(--primary)}h1,h2,h3,h4,h5,h6{font-family:var(--font-serif);color:var(--neutral-900);font-weight:700;line-height:1.25}h1{margin-bottom:1rem;font-size:2.5rem}h2{margin-bottom:.75rem;font-size:2rem}h3{margin-bottom:.5rem;font-size:1.5rem}a{color:var(--primary);transition:var(--transition-fast);text-decoration:none}a:hover{color:var(--primary-light)}.container{width:100%;max-width:var(--max-width);margin:0 auto;padding:0 1.5rem}.glass-panel{background:var(--glass-bg);border:1px solid var(--glass-border);-webkit-backdrop-filter:var(--glass-blur);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-md);transition:var(--transition-normal)}.glass-panel:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.animate-fade-in{animation:fadeIn var(--transition-normal) forwards}.bg-ocean-gradient{background:linear-gradient(135deg,#0e7490 0%,#155e75 100%)}.bg-sunset-gradient{background:linear-gradient(135deg,#f97316 0%,#ca8a04 100%)}.bg-sand-gradient{background:linear-gradient(#f5f5f4 0%,#fafaf9 100%)}.btn{font-weight:600;font-family:var(--font-sans);border-radius:var(--border-radius-md);transition:var(--transition-normal);cursor:pointer;border:none;outline:none;justify-content:center;align-items:center;padding:.75rem 1.5rem;display:inline-flex}.btn-primary{background:var(--primary);color:#fff;box-shadow:var(--shadow-sm)}.btn-primary:hover{background:var(--primary-dark);color:#fff;box-shadow:var(--shadow-md);transform:translateY(-1px)}.btn-secondary{background:var(--secondary);color:var(--neutral-900);box-shadow:var(--shadow-sm)}.btn-secondary:hover{background:var(--secondary-dark);box-shadow:var(--shadow-md);transform:translateY(-1px)}.btn-accent{background:var(--accent);color:#fff;box-shadow:var(--shadow-sm)}.btn-accent:hover{background:var(--accent-dark);color:#fff;box-shadow:var(--shadow-md);transform:translateY(-1px)}.badge{background:var(--accent-light);color:var(--accent-dark);border-radius:50px;padding:.25rem .75rem;font-size:.85rem;font-weight:600;display:inline-block}
