:root{--forest:#1a3a1a;--forest-mid:#2d5a27;--forest-light:#4a7c45;--cream:#f5f0e8;--cream-dark:#ede5d5;--gold:#c8a96e;--gold-light:#e4c98c;--earth:#7a5c3a;--charcoal:#2a2a2a;--text-muted:#6b6b5e;--white:#fff;--card-bg:#fdfaf5;--border:#ddd5c0}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background-color:var(--cream);color:var(--charcoal);font-family:Jost,sans-serif;overflow-x:hidden}.navbar{z-index:1000;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#1a3a1af5;border-bottom:1px solid #c8a96e33;justify-content:space-between;align-items:center;height:70px;padding:0 3rem;transition:all .3s;display:flex;position:fixed;top:0;left:0;right:0}.navbar-brand{color:var(--gold);letter-spacing:.05em;white-space:nowrap;font-family:Playfair Display,serif;font-size:1.25rem;text-decoration:none}.navbar-links{align-items:center;gap:.2rem;display:flex}.navbar a{color:#ffffffd9;letter-spacing:.12em;text-transform:uppercase;white-space:nowrap;border-radius:2px;padding:.5rem .75rem;font-size:.78rem;font-weight:500;text-decoration:none;transition:all .25s}.navbar a:hover{color:var(--gold);background:#c8a96e14}.navbar a.btn-nav{background:var(--gold);color:var(--forest);border-radius:2px;padding:.45rem 1.1rem;font-weight:600}.navbar a.btn-nav:hover{background:var(--gold-light);color:var(--forest)}.hero{background:var(--forest);justify-content:center;align-items:center;height:100vh;min-height:650px;display:flex;position:relative;overflow:hidden}.hero-bg{opacity:.55;background:url(/hero.jpg) 50%/cover no-repeat;animation:12s ease-out forwards heroZoom;position:absolute;inset:0;transform:scale(1.04)}@keyframes heroZoom{0%{transform:scale(1.08)}to{transform:scale(1)}}.hero-overlay{background:linear-gradient(#0a1e0a4d 0%,#0a1e0a26 40%,#0a1e0a8c 100%);position:absolute;inset:0}.hero-content{z-index:2;text-align:center;max-width:900px;padding:0 1.5rem;animation:1s .3s both fadeUp;position:relative}@keyframes fadeUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.hero-eyebrow{letter-spacing:.35em;text-transform:uppercase;color:var(--gold);opacity:.95;margin-bottom:1.2rem;font-family:Jost,sans-serif;font-size:.72rem;font-weight:500;display:inline-block}.hero h1{color:var(--white);text-shadow:0 2px 20px #0000004d;margin-bottom:1.2rem;font-family:Playfair Display,serif;font-size:clamp(2.8rem,7vw,5.5rem);font-weight:700;line-height:1.1}.hero h1 em{color:var(--gold-light);font-style:italic}.hero p{color:#ffffffd9;letter-spacing:.02em;margin-bottom:2.5rem;font-family:Cormorant Garamond,serif;font-size:clamp(1.1rem,2.5vw,1.5rem);font-weight:300}.hero-cta{flex-wrap:wrap;justify-content:center;gap:1rem;display:flex}.btn{letter-spacing:.15em;text-transform:uppercase;cursor:pointer;border:none;border-radius:2px;padding:.9rem 2.2rem;font-family:Jost,sans-serif;font-size:.8rem;font-weight:600;text-decoration:none;transition:all .3s;display:inline-block}.btn-primary{background:var(--gold);color:var(--forest)}.btn-primary:hover{background:var(--gold-light);transform:translateY(-2px);box-shadow:0 8px 25px #c8a96e66}.btn-outline{color:var(--white);background:0 0;border:1.5px solid #fff9}.btn-outline:hover{border-color:var(--gold);color:var(--gold)}.hero-scroll{z-index:2;color:#ffffff80;letter-spacing:.2em;text-transform:uppercase;flex-direction:column;align-items:center;gap:.5rem;font-size:.65rem;display:flex;position:absolute;bottom:2rem;left:50%;transform:translate(-50%)}.scroll-line{background:linear-gradient(#ffffff80,#0000);width:1px;height:40px;animation:2s infinite scrollPulse}@keyframes scrollPulse{0%,to{opacity:.4;transform:scaleY(1)}50%{opacity:1;transform:scaleY(1.2)}}.section{max-width:1280px;margin:0 auto;padding:6rem 2rem}.section-full{padding:6rem 2rem}.section-label{align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.section-label:before{content:"";background:var(--gold);width:32px;height:1.5px;display:block}.section-label span{letter-spacing:.3em;text-transform:uppercase;color:var(--gold);font-size:.7rem;font-weight:500}.section-title{color:var(--forest);margin-bottom:1.2rem;font-family:Playfair Display,serif;font-size:clamp(2rem,4vw,3rem);font-weight:600;line-height:1.2}.section-title em{color:var(--earth);font-style:italic}.section-body{color:var(--text-muted);max-width:680px;font-family:Cormorant Garamond,serif;font-size:1.2rem;line-height:1.7}.highlights-strip{background:var(--forest);padding:3rem 2rem}.highlights-inner{border:1px solid #c8a96e33;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:0;max-width:1280px;margin:0 auto;display:grid}.highlight-item{text-align:center;border-right:1px solid #c8a96e26;padding:2.5rem 1.5rem;transition:background .3s}.highlight-item:last-child{border-right:none}.highlight-item:hover{background:#c8a96e0f}.highlight-icon{margin-bottom:.8rem;font-size:2.2rem;display:block}.highlight-item h4{color:var(--gold);margin-bottom:.3rem;font-family:Playfair Display,serif;font-size:1rem;font-weight:600}.highlight-item p{color:#ffffff80;letter-spacing:.05em;font-size:.78rem}.about-split{grid-template-columns:1fr 1fr;align-items:center;gap:5rem;display:grid}.about-image-wrap{position:relative}.about-image-main{aspect-ratio:4/5;object-fit:cover;background:#c4d4b8 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='100' height='100'%3E%3Ctext y='55' x='10' font-size='40'%3E🌿%3C/text%3E%3C/svg%3E") 50%/80px no-repeat;border-radius:4px;width:100%;min-height:400px;display:block}.about-image-accent{aspect-ratio:1;object-fit:cover;border:5px solid var(--cream);background:#b5d0a0 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='100' height='100'%3E%3Ctext y='55' x='15' font-size='40'%3E🏡%3C/text%3E%3C/svg%3E") 50%/60px no-repeat;border-radius:4px;width:55%;min-height:180px;position:absolute;bottom:-2rem;right:-2rem}.about-badge{background:var(--forest);color:var(--gold);text-align:center;border-radius:4px;padding:1.2rem 1.5rem;position:absolute;top:2rem;left:-2rem}.about-badge strong{font-family:Playfair Display,serif;font-size:2rem;line-height:1;display:block}.about-badge span{letter-spacing:.15em;text-transform:uppercase;opacity:.8;font-size:.65rem}.packages-bg{background:var(--forest)}.packages-header{text-align:center;max-width:700px;margin:0 auto 4rem}.packages-header .section-label{justify-content:center}.packages-header .section-title{color:var(--cream)}.packages-header .section-body{color:#ffffff8c;margin:0 auto}.packages-grid{background:#c8a96e26;border:1px solid #c8a96e26;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5px;display:grid}.package-card{cursor:default;background:#0f2510;padding:2.8rem 2.5rem;transition:background .35s;position:relative}.package-card:hover{background:#162d17}.package-card.featured{background:var(--gold)}.package-card.featured:hover{background:var(--gold-light)}.package-badge{letter-spacing:.2em;text-transform:uppercase;color:var(--gold);background:#c8a96e1f;border-radius:1px;margin-bottom:1.5rem;padding:.3rem .8rem;font-size:.65rem;font-weight:600;display:inline-block}.package-card.featured .package-badge{color:var(--forest);background:#1a3a1a26}.package-card h3{color:var(--cream);margin-bottom:.5rem;font-family:Playfair Display,serif;font-size:1.5rem;font-weight:600}.package-card.featured h3{color:var(--forest)}.package-subtitle{color:#ffffff73;letter-spacing:.08em;margin-bottom:2rem;font-size:.8rem}.package-card.featured .package-subtitle{color:#1a3a1aa6}.price-row{align-items:baseline;gap:.5rem;margin-bottom:.4rem;display:flex}.price-label{letter-spacing:.1em;color:#fff6;text-transform:uppercase;min-width:90px;font-size:.72rem}.package-card.featured .price-label{color:#1a3a1a8c}.price-amount{color:var(--gold);font-family:Playfair Display,serif;font-size:1.8rem;font-weight:600;line-height:1}.package-card.featured .price-amount{color:var(--forest)}.price-per{color:#fff6;font-size:.72rem}.package-card.featured .price-per{color:#1a3a1a80}.package-divider{background:#c8a96e26;height:1px;margin:1.8rem 0}.package-card.featured .package-divider{background:#1a3a1a26}.package-features{margin-bottom:2rem;list-style:none}.package-features li{color:#ffffffb3;align-items:center;gap:.75rem;padding:.4rem 0;font-size:.85rem;display:flex}.package-card.featured .package-features li{color:#1a3a1acc}.package-features li:before{content:"✓";color:var(--gold);font-size:.75rem;font-weight:700}.package-card.featured .package-features li:before{color:var(--forest)}.package-cta{text-align:center;letter-spacing:.15em;text-transform:uppercase;color:var(--gold);border:1px solid #c8a96e66;border-radius:2px;padding:.85rem;font-size:.75rem;font-weight:600;text-decoration:none;transition:all .3s;display:block}.package-card.featured .package-cta{border-color:var(--forest);color:var(--forest);background:#1a3a1a1a}.package-cta:hover{background:var(--gold);border-color:var(--gold);color:var(--forest)}.package-card.featured .package-cta:hover{background:var(--forest);color:var(--gold);border-color:var(--forest)}.amenities-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin-top:3.5rem;display:grid}.amenity-card{background:var(--card-bg);border:1px solid var(--border);text-align:center;border-radius:4px;padding:2.2rem 1.8rem;transition:all .3s;position:relative;overflow:hidden}.amenity-card:before{content:"";background:var(--gold);height:3px;transition:transform .3s;position:absolute;bottom:0;left:0;right:0;transform:scaleX(0)}.amenity-card:hover{border-color:var(--gold);transform:translateY(-4px);box-shadow:0 16px 40px #1a3a1a1f}.amenity-card:hover:before{transform:scaleX(1)}.amenity-icon{margin-bottom:1rem;font-size:2.5rem;display:block}.amenity-card h4{color:var(--forest);margin-bottom:.4rem;font-family:Playfair Display,serif;font-size:1rem;font-weight:600}.amenity-card p{color:var(--text-muted);font-size:.8rem;line-height:1.5}.gallery-mosaic{grid-template-rows:auto;grid-template-columns:repeat(3,1fr);gap:.75rem;margin-top:3rem;display:grid}.gallery-item{cursor:pointer;border-radius:4px;position:relative;overflow:hidden}.gallery-item:first-child{grid-area:span 2/span 2}.gallery-img-placeholder{object-fit:cover;width:100%;height:100%;min-height:220px;transition:transform .5s;display:block}.gallery-item:first-child .gallery-img-placeholder{min-height:460px}.gallery-item:hover .gallery-img-placeholder{transform:scale(1.06)}.gallery-item img{object-fit:cover;width:100%;height:100%;transition:transform .5s}.gallery-item:hover img{transform:scale(1.06)}.events-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-top:3.5rem;display:grid}.event-card{background:var(--card-bg);border:1px solid var(--border);border-radius:4px;transition:all .3s;overflow:hidden}.event-card:hover{transform:translateY(-4px);box-shadow:0 16px 40px #1a3a1a1f}.event-thumb{background:var(--forest-mid);justify-content:center;align-items:center;height:160px;font-size:4rem;display:flex}.event-content{padding:1.8rem}.event-content h4{color:var(--forest);margin-bottom:.5rem;font-family:Playfair Display,serif;font-size:1.15rem}.event-content p{color:var(--text-muted);font-size:.85rem;line-height:1.6}.contact-layout{grid-template-columns:1fr 1fr;align-items:start;gap:4rem;display:grid}.contact-info-item{align-items:flex-start;gap:1.2rem;margin-bottom:2rem;display:flex}.contact-icon-wrap{background:var(--forest);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;font-size:1.2rem;display:flex}.contact-info-item h4{color:var(--forest);margin-bottom:.3rem;font-family:Playfair Display,serif;font-size:1rem}.contact-info-item p,.contact-info-item a{color:var(--text-muted);font-size:.9rem;line-height:1.6;text-decoration:none}.contact-info-item a:hover{color:var(--forest)}.map-container{border:1px solid var(--border);background:#c4d4b8;border-radius:4px;height:350px;overflow:hidden}.map-container iframe{border:none;width:100%;height:100%;display:block}.booking-wrap{max-width:780px;margin:0 auto}.form-card{background:var(--card-bg);border:1px solid var(--border);border-radius:4px;padding:3rem}.form-grid{grid-template-columns:1fr 1fr;gap:1.5rem;display:grid}.form-group{flex-direction:column;gap:.5rem;display:flex}.form-group.full{grid-column:span 2}.form-group label{letter-spacing:.12em;text-transform:uppercase;color:var(--forest);font-size:.75rem;font-weight:600}.form-group input,.form-group select,.form-group textarea{border:1px solid var(--border);color:var(--charcoal);background:var(--white);border-radius:2px;outline:none;padding:.8rem 1rem;font-family:Jost,sans-serif;font-size:.9rem;transition:border-color .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--forest-light);box-shadow:0 0 0 3px #4a7c451a}.form-group textarea{resize:vertical;min-height:120px}.form-submit{text-align:center;margin-top:2rem}.footer{color:#fff9;background:#0d1f0d;padding:4rem 2rem 2rem}.footer-inner{grid-template-columns:1.5fr 1fr 1fr;gap:3rem;max-width:1280px;margin:0 auto 3rem;display:grid}.footer-brand h3{color:var(--gold);margin-bottom:.5rem;font-family:Playfair Display,serif;font-size:1.4rem}.footer-brand p{color:#ffffff73;max-width:280px;font-size:.83rem;line-height:1.7}.footer-col h4{letter-spacing:.2em;text-transform:uppercase;color:var(--gold);margin-bottom:1.2rem;font-size:.7rem;font-weight:600}.footer-col a{color:#ffffff80;padding:.25rem 0;font-size:.85rem;text-decoration:none;transition:color .2s;display:block}.footer-col a:hover{color:var(--gold)}.footer-bottom{text-align:center;color:#ffffff4d;border-top:1px solid #ffffff12;max-width:1280px;margin:0 auto;padding-top:1.5rem;font-size:.78rem}.page-hero{background:var(--forest);text-align:center;padding:9rem 2rem 5rem;position:relative;overflow:hidden}.page-hero:before{content:"";opacity:.2;background:url(/hero.jpg) 50%/cover no-repeat;position:absolute;inset:0}.page-hero-content{z-index:1;position:relative}.page-hero-content h1{color:var(--cream);margin-bottom:.75rem;font-family:Playfair Display,serif;font-size:clamp(2rem,5vw,3.5rem)}.page-hero-content p{color:#fff9;font-family:Cormorant Garamond,serif;font-size:1.2rem}@media (max-width:900px){.navbar{flex-direction:column;gap:.5rem;height:auto;padding:.8rem 1.2rem}.navbar-links{flex-wrap:wrap;justify-content:center;gap:.1rem}.about-split,.contact-layout{grid-template-columns:1fr;gap:2rem}.about-image-wrap{display:none}.footer-inner{grid-template-columns:1fr;gap:2rem}.form-grid{grid-template-columns:1fr}.form-group.full{grid-column:span 1}.gallery-mosaic{grid-template-columns:1fr 1fr}.gallery-item:first-child{grid-area:span 1/span 2}}@media (max-width:600px){.section,.section-full{padding:3.5rem 1.2rem}.gallery-mosaic{grid-template-columns:1fr}.gallery-item:first-child{grid-column:span 1}.form-card{padding:2rem 1.2rem}}
