@import "https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,600;0,700;1,400;1,600&family=Montserrat:wght@300;400;500;600&display=swap";:root{--primary:#4a5d3f;--primary-dark:#32402a;--secondary:#c26938;--secondary-dark:#9e532a;--bg-color:#fbf9f6;--bg-alt:#f1ebd9;--text-main:#2c2925;--text-light:#59554e;--white:#fff;--glass-bg:#fbf9f6f2;--glass-border:#4a5d3f26;--glass-shadow:0 10px 40px -10px #00000014;--font-sans:"Montserrat", sans-serif;--font-serif:"Cormorant Garamond", serif;--nav-height:90px;--section-padding:6rem 2rem;--max-width:1200px}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-family:var(--font-sans);color:var(--text-main);background-color:var(--bg-color);line-height:1.7}body{background-image:radial-gradient(var(--bg-alt) 1px, transparent 1px);background-size:40px 40px;overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-serif);color:var(--primary-dark);margin-bottom:1rem;font-weight:600}a{color:inherit;text-decoration:none;transition:all .3s}ul{list-style:none}img{max-width:100%;height:auto;display:block}.container{max-width:var(--max-width);margin:0 auto;padding:0 1rem}.section-title{text-align:center;margin-bottom:4rem}.section-title span{font-family:var(--font-sans);text-transform:uppercase;letter-spacing:4px;color:var(--secondary);margin-bottom:1rem;font-size:.85rem;font-weight:600;display:block}.section-title h2{font-size:clamp(2.5rem,5vw,3.5rem);line-height:1.1}.btn{font-family:var(--font-sans);text-transform:uppercase;letter-spacing:1.5px;cursor:pointer;border:1px solid #0000;border-radius:2px;justify-content:center;align-items:center;gap:10px;padding:1rem 2.2rem;font-size:.95rem;font-weight:500;transition:all .4s cubic-bezier(.165,.84,.44,1);display:inline-flex}.btn-primary{background-color:var(--primary);color:var(--white);border-color:var(--primary)}.btn-primary:hover{color:var(--primary);background-color:#0000}.btn-secondary{background-color:var(--secondary);color:var(--white);border-color:var(--secondary)}.btn-secondary:hover{color:var(--secondary);background-color:#0000}.btn-outline{color:var(--white);background-color:#0000;border:1px solid #fff9}.btn-outline:hover{background-color:var(--white);color:var(--primary-dark)}@keyframes fadeIn{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:1.2s cubic-bezier(.16,1,.3,1) forwards fadeIn}.delay-100{animation-delay:.1s}.delay-200{animation-delay:.2s}.delay-300{animation-delay:.3s}.section{padding:var(--section-padding)}.section-alt{background-color:var(--bg-alt);background-image:none}.navbar{width:100%;height:var(--nav-height);z-index:1000;background:0 0;align-items:center;padding:1rem 0;transition:all .4s;display:flex;position:fixed;top:0;left:0}.navbar.scrolled{background:var(--glass-bg);-webkit-backdrop-filter:blur(10px);box-shadow:var(--glass-shadow);border-bottom:1px solid var(--glass-border);height:calc(var(--nav-height) - 10px)}.navbar-container{justify-content:space-between;align-items:center;width:100%;display:flex}.logo-link{align-items:center;display:flex}.navbar-logo{filter:drop-shadow(1px 1px 2px #00000080);width:auto;height:60px;transition:all .3s}.navbar.scrolled .navbar-logo{filter:none;height:50px}.desktop-nav{display:none}@media (width>=768px){.desktop-nav{align-items:center;gap:2.5rem;display:flex}}.nav-links a{color:var(--white);text-shadow:1px 1px 3px #00000080;font-size:1rem;font-weight:500}.navbar.scrolled .nav-links a:not(.nav-btn){color:var(--text-main);text-shadow:none}.nav-links a:not(.nav-btn):hover{color:var(--secondary)}.nav-btn{text-shadow:none!important}.mobile-toggle{color:var(--white);cursor:pointer;z-index:1001;text-shadow:1px 1px 3px #00000080;background:0 0;border:none;display:block}.navbar.scrolled .mobile-toggle{color:var(--primary-dark);text-shadow:none}@media (width>=768px){.mobile-toggle{display:none}}.mobile-menu{background-color:var(--bg-color);z-index:999;justify-content:center;align-items:center;width:100%;height:100vh;transition:right .4s ease-in-out;display:flex;position:fixed;top:0;right:-100%}.mobile-menu.open{right:0}.mobile-menu .nav-links{flex-direction:column;align-items:center;gap:2rem;display:flex}.mobile-menu .nav-links a{font-family:var(--font-serif);color:var(--text-main);text-shadow:none;font-size:2rem}.mobile-menu .nav-links .btn{font-family:var(--font-sans);margin-top:1rem;font-size:1.1rem}.hero{justify-content:center;align-items:center;height:100vh;min-height:600px;display:flex;position:relative;overflow:hidden}.hero-background{z-index:-1;width:100%;height:100%;position:absolute;top:0;left:0}.hero-img{object-fit:cover;object-position:center;width:100%;height:100%;transform:scale(1.05)}.hero-overlay{background:linear-gradient(#0006 0%,#0009 100%);width:100%;height:100%;position:absolute;top:0;left:0}.hero-content{text-align:center;color:var(--white);z-index:10;max-width:800px;padding:0 20px}.hero-subtitle{font-family:var(--font-sans);letter-spacing:4px;text-transform:uppercase;color:var(--secondary);margin-bottom:1rem;font-size:1.2rem;font-weight:500;display:block}.hero-title{font-family:var(--font-serif);text-shadow:2px 2px 8px #0006;color:var(--white);margin-bottom:1.5rem;font-size:clamp(4rem,8vw,7rem);font-weight:700;line-height:1.1}.hero-description{color:#ffffffe6;max-width:600px;margin-bottom:3rem;margin-left:auto;margin-right:auto;font-size:1.2rem;font-weight:300;line-height:1.8}.hero-actions{flex-wrap:wrap;justify-content:center;gap:1.5rem;display:flex}.scroll-indicator{color:var(--white);z-index:10;animation:2s infinite bounce;position:absolute;bottom:2rem;left:50%;transform:translate(-50%)}.sr-only{clip:rect(0, 0, 0, 0);border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0)translate(-50%)}40%{transform:translateY(-20px)translate(-50%)}60%{transform:translateY(-10px)translate(-50%)}}@media (width<=768px){.hero-actions{flex-direction:column;gap:1rem;width:100%}.hero-actions .btn{width:100%}}.about-image-wrapper{grid-template-columns:1fr 1fr;gap:1.5rem;margin-top:2rem;display:grid}.image-frame.main-frame{border-radius:12px;width:100%;height:400px;position:relative;overflow:hidden;box-shadow:0 15px 30px #00000026}.secondary-frame{border-radius:12px;width:100%;height:400px;margin-top:4rem;position:relative;overflow:hidden;box-shadow:0 15px 30px #00000026}.about-image{object-fit:cover;width:100%;height:100%;transition:transform .5s}.about-image:hover{transform:scale(1.05)}@media (width<=992px){.about-image-wrapper{grid-template-columns:1fr;gap:2rem}.image-frame.main-frame,.secondary-frame{height:350px;margin-top:0}}.gallery-section{background-color:var(--bg-alt)}.gallery-grid{grid-template-columns:repeat(1,1fr);gap:1.5rem;display:grid}@media (width>=576px){.gallery-grid{grid-template-columns:repeat(2,1fr)}}@media (width>=992px){.gallery-grid{grid-template-columns:repeat(3,1fr)}}.gallery-item{cursor:pointer;border-radius:6px;height:300px;position:relative;overflow:hidden;box-shadow:0 5px 15px #0000001a}.gallery-img{object-fit:cover;width:100%;height:100%;transition:transform .6s}.gallery-overlay{width:100%;color:var(--white);opacity:0;background:linear-gradient(#0000,#000c);align-items:flex-end;padding:2rem 1.5rem 1.5rem;transition:all .4s;display:flex;position:absolute;bottom:0;left:0;transform:translateY(20px)}.gallery-overlay span{font-family:var(--font-serif);letter-spacing:1px;font-size:1.2rem;font-weight:500}.gallery-item:hover .gallery-img{transform:scale(1.1)}.gallery-item:hover .gallery-overlay{opacity:1;transform:translateY(0)}.contact-footer{background-color:var(--primary-dark);color:#fffc;padding-top:5rem}.footer-grid{grid-template-columns:1fr;gap:3rem;margin-bottom:4rem;display:grid}@media (width>=768px){.footer-grid{grid-template-columns:repeat(2,1fr)}}@media (width>=992px){.footer-grid{grid-template-columns:1.5fr 1fr 1fr;gap:4rem}}.footer-logo{font-family:var(--font-serif);color:var(--white);flex-direction:column;margin-bottom:1.5rem;font-size:2rem;font-weight:700;line-height:1;display:flex}.footer-logo span{font-family:var(--font-sans);letter-spacing:3px;text-transform:uppercase;color:var(--secondary);margin-top:.5rem;font-size:.8rem;font-weight:500}.footer-desc{margin-bottom:2rem;line-height:1.8}.social-links{gap:1rem;display:flex}.social-links a{width:40px;height:40px;color:var(--white);background-color:#ffffff1a;border-radius:50%;justify-content:center;align-items:center;transition:all .3s;display:flex}.social-links a:hover{background-color:var(--secondary);transform:translateY(-3px)}.footer-contact h4,.footer-hours h4{font-family:var(--font-serif);color:var(--white);border-bottom:1px solid #ffffff1a;margin-bottom:1.5rem;padding-bottom:.5rem;font-size:1.5rem}.contact-list,.hours-list{flex-direction:column;gap:1rem;display:flex}.contact-list li{align-items:flex-start;gap:1rem;display:flex}.contact-icon{color:var(--secondary);flex-shrink:0;margin-top:.2rem}.hours-list li{border-bottom:1px dotted #fff3;justify-content:space-between;padding-bottom:.5rem;display:flex}.booking-cta{margin-top:2rem}.footer-bottom{text-align:center;border-top:1px solid #ffffff1a;padding:1.5rem 0;font-size:.9rem}.modal-overlay{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);z-index:2000;background-color:#0009;justify-content:center;align-items:center;width:100%;height:100vh;padding:1rem;display:flex;position:fixed;top:0;left:0}.modal-content{background-color:var(--white);border-radius:12px;width:100%;max-width:500px;padding:2.5rem 2rem;position:relative;box-shadow:0 25px 50px #0003}.modal-close{color:var(--text-light);cursor:pointer;background:0 0;border:none;transition:color .3s;position:absolute;top:1rem;right:1rem}.modal-close:hover{color:var(--primary)}.modal-header{text-align:center;margin-bottom:2rem}.modal-header h3{font-family:var(--font-serif);color:var(--primary-dark);margin-bottom:1rem;font-size:1.8rem}.modal-header p{color:var(--text-light);font-size:1rem;line-height:1.6}.modal-actions{flex-direction:column;gap:1rem;display:flex}.btn-whatsapp{color:#fff;background-color:#25d366}.btn-whatsapp:hover{background-color:#128c7e;transform:translateY(-2px)}.btn-phone{background-color:var(--bg-alt);color:var(--text-main);border:1px solid #0000001a}.btn-phone:hover{background-color:#e5dfd3;transform:translateY(-2px)}.modal-footer{text-align:center;color:var(--text-light);margin-top:1.5rem;font-size:.85rem;font-style:italic}
