:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}#root{width:100%}:root{--primary: #5E7D60;--secondary: #FFF4E1;--accent: #DDA456;--text-dark: #333027;--alert: #B34A3C;--white: #FFFFFF;--light-gray: #F5F5F5}.skip-nav{position:absolute;left:-9999px;z-index:999;padding:8px;background-color:var(--primary);color:var(--white);text-decoration:none;border-radius:0 0 4px;font-weight:600}.skip-nav:focus{left:6px;top:6px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}*:focus{outline:2px solid var(--accent);outline-offset:2px}button:focus,a:focus,input:focus,select:focus,textarea:focus{outline:2px solid var(--accent);outline-offset:2px}button:focus:not(:focus-visible),a:focus:not(:focus-visible){outline:none}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Georgia,Times New Roman,serif;line-height:1.6;color:var(--text-dark);background-color:var(--secondary)}.app{min-height:100vh}.container{max-width:1200px;margin:0 auto;padding:0 2rem}.section-title{font-size:2.5rem;text-align:center;margin-bottom:3rem;color:var(--primary);font-weight:600}.btn-primary{background-color:var(--primary);color:var(--white);border:none;padding:1rem 2rem;border-radius:2rem;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #5e7d604d}.btn-primary:hover,.btn-primary:focus{background-color:#4a6b4c;transform:translateY(-2px);box-shadow:0 6px 20px #5e7d6066}.btn-secondary{background-color:transparent;color:var(--primary);border:2px solid var(--primary);padding:1rem 2rem;border-radius:2rem;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-secondary:hover,.btn-secondary:focus{background-color:var(--primary);color:var(--white);transform:translateY(-2px)}.navbar{background-color:var(--white);padding:1rem 2rem;display:flex;justify-content:space-between;align-items:center;box-shadow:0 2px 20px #0000001a;position:fixed;top:0;left:0;right:0;z-index:1000}.logo-container{display:flex;align-items:center;gap:1rem}.logo-placeholder{height:50px;width:50px;background:linear-gradient(135deg,var(--primary) 0%,#4a6b4c 100%);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.5rem;box-shadow:0 4px 15px #5e7d604d}.nav-logo{height:50px;width:auto;border-radius:50%}.brand-text h2{color:var(--primary);font-size:1.8rem;font-weight:700;margin:0;line-height:1}.tagline{color:var(--text-dark);font-size:.9rem;font-style:italic;opacity:.8;line-height:1}.nav-links{display:flex;gap:2rem}.mobile-menu-btn{display:none;flex-direction:column;background:none;border:none;cursor:pointer;padding:.5rem;gap:4px}.hamburger-line{width:25px;height:3px;background-color:var(--primary);transition:all .3s ease}.mobile-menu-btn[aria-expanded=true] .hamburger-line:nth-child(1){transform:rotate(45deg) translate(6px,6px)}.mobile-menu-btn[aria-expanded=true] .hamburger-line:nth-child(2){opacity:0}.mobile-menu-btn[aria-expanded=true] .hamburger-line:nth-child(3){transform:rotate(-45deg) translate(6px,-6px)}.nav-link{background:none;border:none;color:var(--text-dark);font-size:1rem;font-weight:500;cursor:pointer;padding:.5rem 1rem;border-radius:1rem;transition:all .3s ease;position:relative;text-decoration:none}.nav-link:hover,.nav-link:focus{color:var(--primary);background-color:var(--secondary)}.nav-link:hover:after,.nav-link:focus:after{content:"";position:absolute;bottom:-2px;left:50%;transform:translate(-50%);width:20px;height:2px;background-color:var(--accent)}.hero{margin-top:80px;padding:4rem 0;min-height:80vh;background:linear-gradient(135deg,var(--secondary) 0%,#f9e7b8 100%)}.hero .container{display:flex;align-items:center;gap:4rem}.hero-content{flex:1;max-width:600px}.hero-title{font-size:3.5rem;font-weight:700;color:var(--primary);margin-bottom:1.5rem;line-height:1.2}.hero-subtitle{font-size:1.3rem;color:var(--text-dark);margin-bottom:2.5rem;line-height:1.6}.hero-buttons{display:flex;gap:1.5rem;flex-wrap:wrap}.hero-image{flex:1;display:flex;justify-content:center;align-items:center}.placeholder-image{background:linear-gradient(135deg,var(--primary) 0%,#4a6b4c 100%);color:var(--white);padding:3rem;border-radius:2rem;text-align:center;font-size:1.2rem;max-width:500px;width:100%;box-shadow:0 10px 30px #5e7d604d;line-height:1.6}.about{padding:5rem 0;background-color:var(--white)}.about-content{max-width:800px;margin:0 auto}.about-text p{font-size:1.2rem;margin-bottom:1.5rem;line-height:1.8;text-align:center}.why-choose-us,.location-info{margin:3rem 0;text-align:left}.why-choose-us h3,.location-info h3{color:var(--primary);font-size:1.8rem;margin-bottom:1.5rem;text-align:center;font-weight:600}.why-choose-us p,.location-info p{text-align:left;font-size:1.1rem;line-height:1.7;margin-bottom:1rem}.features{display:flex;justify-content:space-around;margin-top:3rem;flex-wrap:wrap;gap:2rem}.feature{display:flex;flex-direction:column;align-items:center;text-align:center;max-width:200px}.feature-icon{font-size:3rem;margin-bottom:1rem}.feature span:last-child{font-size:1.1rem;font-weight:600;color:var(--primary)}.faq{padding:5rem 0;background-color:var(--light-gray)}.faq-list{max-width:800px;margin:0 auto}.faq-item{background-color:var(--white);margin-bottom:1rem;border-radius:1rem;overflow:hidden;box-shadow:0 4px 15px #0000001a}.faq-question{width:100%;background:none;border:none;padding:1.5rem 2rem;text-align:left;font-size:1.2rem;font-weight:600;color:var(--primary);cursor:pointer;display:flex;justify-content:space-between;align-items:center;transition:background-color .3s ease}.faq-question:hover{background-color:var(--secondary)}.faq-icon{font-size:1.5rem;color:var(--accent);font-weight:700}.faq-answer{max-height:0;overflow:hidden;transition:max-height .3s ease,padding .3s ease;background-color:var(--white)}.faq-answer.open{max-height:200px;padding:0 2rem 1.5rem}.faq-answer p{line-height:1.6;color:var(--text-dark);margin:0}.not-found{padding:8rem 0;background-color:var(--secondary);text-align:center;min-height:60vh;display:flex;align-items:center}.not-found h1{font-size:3rem;color:var(--primary);margin-bottom:1rem;font-weight:700}.not-found p{font-size:1.3rem;color:var(--text-dark);margin-bottom:2rem;line-height:1.6}.amenities{padding:5rem 0;background-color:var(--secondary)}.amenities-intro{font-size:1.2rem;line-height:1.8;text-align:center;color:var(--text-dark);margin-bottom:3rem;max-width:700px;margin-left:auto;margin-right:auto;font-style:italic;opacity:.9}.amenities-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;margin-top:2rem}.amenity-card{background-color:var(--white);padding:2rem;border-radius:1.5rem;text-align:center;box-shadow:0 5px 20px #0000001a;transition:transform .3s ease}.amenity-card:hover{transform:translateY(-5px)}.amenity-icon{font-size:3rem;margin-bottom:1rem}.amenity-title{font-size:1.3rem;color:var(--primary);margin-bottom:.5rem;font-weight:600}.amenity-description{color:var(--text-dark);line-height:1.6}.gallery{padding:5rem 0;background-color:var(--white)}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:2rem;margin-top:2rem}.gallery-item{border-radius:1.5rem;overflow:hidden;box-shadow:0 8px 25px #00000026;transition:transform .3s ease;position:relative}.gallery-item:hover{transform:scale(1.05)}.image-container{position:relative;width:100%;height:300px;overflow:hidden}.gallery-image{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.gallery-item:hover .gallery-image{transform:scale(1.1)}.image-overlay{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,#000c);color:var(--white);padding:2rem 1.5rem 1.5rem;transform:translateY(100%);transition:transform .3s ease}.gallery-item:hover .image-overlay{transform:translateY(0)}.image-caption{font-size:1.1rem;font-weight:500;margin:0;text-align:center}.placeholder-gallery-image{background:linear-gradient(135deg,var(--accent) 0%,#c8932e 100%);color:var(--white);padding:4rem 2rem;text-align:center;font-size:1.1rem;line-height:1.6;height:300px;display:flex;align-items:center;justify-content:center}.pricing{padding:5rem 0;background-color:var(--secondary)}.pricing-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;margin:2rem 0}.pricing-card{background-color:var(--white);padding:2.5rem;border-radius:2rem;text-align:center;position:relative;box-shadow:0 8px 30px #0000001a;transition:all .3s ease;cursor:pointer}.pricing-card:hover{transform:translateY(-8px);box-shadow:0 15px 40px #00000026}.pricing-card.popular{border:3px solid var(--accent);transform:scale(1.05)}.pricing-card.selected{border:3px solid var(--primary);background-color:var(--light-gray)}.popular-badge{position:absolute;top:-15px;left:50%;transform:translate(-50%);background-color:var(--accent);color:var(--white);padding:.5rem 1.5rem;border-radius:1.5rem;font-size:.9rem;font-weight:600}.package-name{font-size:1.8rem;color:var(--primary);margin-bottom:.5rem;font-weight:700}.package-duration{color:var(--text-dark);margin-bottom:1rem;font-size:1.1rem}.package-price{font-size:2.5rem;color:var(--accent);font-weight:700;margin-bottom:1.5rem}.package-features{list-style:none;margin-bottom:2rem;max-width:fit-content;margin-left:auto;margin-right:auto}.package-features li{color:var(--text-dark);position:relative;padding:.5rem 0 .5rem 1.5rem;text-align:left}.package-features li:before{content:"✓";position:absolute;left:0;color:var(--primary);font-weight:700}.package-btn{width:100%}.pricing-note{text-align:center;margin-top:2rem;font-style:italic;color:var(--text-dark)}.contact{padding:5rem 0;background-color:var(--white)}.contact-content{display:grid;grid-template-columns:1fr 1fr;gap:4rem;margin-top:2rem}.contact-map h3{color:var(--primary);font-size:1.8rem;margin-bottom:1.5rem;font-weight:600}.map-container{border-radius:1rem;overflow:hidden;box-shadow:0 8px 25px #0000001a}.map-container iframe{width:100%;height:300px;border:none}.contact-info h3{color:var(--primary);font-size:1.8rem;margin-bottom:2rem;font-weight:600}.contact-item{display:flex;align-items:flex-start;margin-bottom:1.5rem;gap:1rem}.contact-item a{color:var(--primary);text-decoration:none;transition:color .3s ease}.contact-item a:hover{color:var(--accent)}.contact-icon{font-size:1.5rem;margin-right:1rem}.contact-form{background-color:var(--secondary);padding:2.5rem;border-radius:2rem;box-shadow:0 8px 25px #0000001a}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1.5rem}.contact-form input,.contact-form select,.contact-form textarea{padding:1rem;border:2px solid transparent;border-radius:1rem;font-size:1rem;background-color:var(--white);color:var(--text-dark);transition:all .3s ease;font-family:inherit}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 10px #dda4564d}.contact-form textarea{resize:vertical;min-height:120px;margin-bottom:1.5rem}.contact-form button{width:100%}.footer{background-color:var(--primary);color:var(--white);padding:3rem 0 1rem}.footer-content{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem;margin-bottom:2rem}.footer-section h4{margin-bottom:1rem;font-size:1.3rem;color:var(--white);font-weight:600}.footer-section p{line-height:1.6;margin-bottom:1rem;color:#ffffffe6}.footer-section button{background:none;border:none;color:var(--white);cursor:pointer;display:block;margin-bottom:.5rem;transition:color .3s ease;font-size:1rem}.footer-section button:hover{color:var(--accent)}.social-links{display:flex;flex-direction:column;gap:.5rem}.social-links span,.social-links a{color:var(--white);text-decoration:none;cursor:pointer;transition:color .3s ease;font-size:1rem}.social-links span:hover,.social-links a:hover{color:var(--accent)}.footer-bottom{text-align:center;padding-top:2rem;border-top:1px solid rgba(255,255,255,.2);color:var(--secondary)}.footer-section nav{display:flex;flex-direction:column;gap:.5rem}.footer-section nav a{color:#fffc;text-decoration:none;padding:.25rem 0;transition:color .3s ease;font-size:1rem}.footer-section nav a:hover,.footer-section nav a:focus{color:var(--accent)}@media (max-width: 1024px){.hero .container{flex-direction:column;text-align:center;gap:2rem}.hero-content{max-width:100%}.hero-title{font-size:3rem}.contact-content{grid-template-columns:1fr;gap:2rem}}@media (max-width: 768px){.navbar{flex-direction:row;justify-content:space-between;align-items:center;padding:1rem;height:80px}.logo-container{flex-direction:row;align-items:center;gap:.5rem}.logo-placeholder{height:40px;width:40px;font-size:1.2rem}.nav-logo{height:40px}.brand-text h2{font-size:1.5rem}.tagline{font-size:.8rem}.mobile-menu-btn{display:flex;z-index:1001}.nav-links{display:none;position:fixed;top:80px;left:0;right:0;background-color:var(--white);flex-direction:column;padding:2rem;box-shadow:0 4px 20px #0000001a;z-index:1000}.nav-links.mobile-open{display:flex}.nav-link{padding:1rem 0;border-bottom:1px solid var(--light-gray);text-align:center;font-size:1.1rem}.nav-link:last-child{border-bottom:none}.hero{margin-top:80px;padding:2rem 0}.hero .container{flex-direction:column;text-align:center;gap:2rem}.hero-title{font-size:2.5rem}.hero-buttons{justify-content:center}.section-title{font-size:2rem}.container{padding:0 1rem}.features{flex-direction:column;align-items:center}.amenities-grid,.gallery-grid,.pricing-grid{grid-template-columns:1fr}.pricing-card.popular{transform:none}.form-row{grid-template-columns:1fr}}@media (max-width: 480px){.hero-title{font-size:2rem}.hero-subtitle{font-size:1.1rem}.hero-buttons{flex-direction:column;align-items:center}.btn-primary,.btn-secondary{width:100%;max-width:300px}}
