:root{font-family:Circular,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Helvetica Neue,sans-serif;line-height:1.5;font-weight:400;color-scheme:light;color:#213547;background-color:#fff;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{margin:0;padding:0;box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}h1,h2,h3,h4,h5,h6{line-height:1.2}button{font-family:inherit}a{color:inherit;text-decoration:none}:root{--app_primary_color: #2d5016;--app_primary_color_dark: #1f3a0f;--app_primary_color_hover: #3d6826}.app{min-height:100vh;width:100%}.horizontal-margin-container{padding:0 5.5rem}.nonbooking-section{padding:6rem 2rem 2rem;background:linear-gradient(to bottom,#f8f9fa,#e9f5e9)}.content-wrapper{display:flex;width:100%;transition:all .3s ease}.content-wrapper.split-view{display:flex;flex-direction:row}.main-content{flex:1;width:100%;transition:all .3s ease}.content-container{padding:0 4rem;max-width:1400px;margin:0 auto}.content-wrapper.split-view .main-content{flex:0 0 calc(100% - 330px);max-width:calc(100% - 330px);overflow-x:hidden}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;padding:0}.section-header{text-align:left}.section-header-text{text-align:left;font-size:2.3rem;margin-bottom:18px;font-weight:700;letter-spacing:-1px;color:var(--app_primary_color_dark)}.section-subtitle{text-align:left}.floating-booking-button{position:fixed;bottom:2rem;right:7.5rem;background:#2d5016;color:#fff;border:none;padding:1rem 2rem;font-size:1.1rem;font-weight:700;border-radius:50px;cursor:pointer;box-shadow:0 4px 20px #2d501666;z-index:1000;transition:all .3s ease;animation:pulse 2s infinite;opacity:1;transform:translate(0)}.floating-booking-button.hidden{opacity:0;transform:translate(150px);pointer-events:none}.floating-booking-button:hover{background:#4a7c2d;transform:translateY(-3px);box-shadow:0 6px 25px #2d501680;animation:none}.floating-booking-close-button{position:fixed;bottom:2rem;right:26.5rem;background:#f0f0f0;border:none;width:170px;height:40px;font-size:1.1rem;font-weight:700;border-radius:50px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s ease;color:#666;z-index:10;opacity:1;transform:translate(0)}.floating-booking-close-button.hidden{opacity:0;transform:translate(150px);pointer-events:none}.floating-booking-close-button:hover{background:#e0e0e0;color:#2d5016}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@media(max-width:768px){.content-container{padding:0 1.5rem}.floating-booking-button{bottom:1rem;right:1rem;padding:.875rem 1.5rem;font-size:1rem}.content-wrapper.split-view{flex-direction:column}.content-wrapper.split-view .main-content{flex:1;max-width:100%}.horizontal-margin-container{padding:0 0rem}}.navigation{position:fixed;top:0;left:0;right:0;z-index:1000;padding:1.5rem 0;transition:all .3s ease;background:transparent;margin-right:0}.navigation.scrolled{background:#fffffffa;box-shadow:0 2px 20px #0000001a;padding:1rem 0}.nav-container{max-width:100%;margin:0 auto;padding:0 3rem;display:flex;justify-content:space-between;align-items:center}.nav-logo{font-size:1.5rem;font-weight:700;color:#2d5016;cursor:pointer;transition:color .3s ease}.nav-logo:hover{color:#4a7c2d}.mobile-menu-toggle{display:none;background:none;border:none;color:#2d5016;cursor:pointer;padding:.5rem}.nav-links{display:flex;gap:2rem;list-style:none;margin:0;padding:0;align-items:center}.nav-links li a{color:#2d5016;text-decoration:none;font-weight:500;cursor:pointer;transition:color .3s ease;font-size:1rem}.nav-links li a:hover{color:#4a7c2d}.book-button{background:#2d5016;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:25px;font-weight:600;cursor:pointer;transition:all .3s ease;font-size:1rem}.book-button:hover{background:#4a7c2d;transform:translateY(-2px);box-shadow:0 4px 12px #2d50164d}@media(max-width:768px){.mobile-menu-toggle{display:block}.nav-links{position:absolute;top:100%;left:0;right:0;background:#fff;flex-direction:column;padding:2rem;gap:1rem;box-shadow:0 4px 20px #0000001a;transform:translateY(-100%);opacity:0;pointer-events:none;transition:all .3s ease}.nav-links.mobile-open{transform:translateY(0);opacity:1;pointer-events:all}.book-button{width:100%}}.book-now-mobile-btn{position:fixed;right:1.5rem;bottom:1.5rem;z-index:9999;background:#2d5016;color:#fff;border:none;border-radius:50px;padding:1rem 2rem;font-size:1.2rem;font-weight:700;box-shadow:0 4px 16px #2d501633;cursor:pointer;transition:background .2s,box-shadow .2s;display:none}.book-now-mobile-btn:hover{background:#4a7c2d;box-shadow:0 6px 24px #2d50164d}@media(max-width:768px){.book-now-mobile-btn{display:block}}.see-more-btn{background:none;border:none;color:#3c7bbf;font-size:.95em;cursor:pointer;text-decoration:underline;padding:0 .2em}.see-more-btn:hover{color:#e31c5f}.reviews-carousel-center{display:flex;gap:2.5rem;justify-content:center;width:100%;margin:8rem auto 0;z-index:10}.review-box{background:#ffffffd9;border-radius:1rem;box-shadow:0 4px 16px #0000001f;padding:1.5rem 2rem;max-width:350px;min-width:250px;text-align:center;display:flex;flex-direction:column;gap:.5rem}.airbnb-box .airbnb-stars{font-size:1.1rem;font-weight:700;color:#e31c5f;margin-bottom:.5rem;letter-spacing:.5px}.vrbo-box .vrbo-rating{color:#3c7bbf;font-weight:700;font-size:1.05rem;margin-bottom:.5rem}.airbnb-review{font-size:1rem;color:#333}.review-text{font-style:italic;margin-bottom:.25rem}.review-author{font-size:.95rem;color:#666}.carousel-controls{display:flex;justify-content:center;gap:1.5rem;margin-top:.5rem}.carousel-controls button{background:none;border:none;font-size:1.5rem;color:#e31c5f;cursor:pointer;transition:color .2s}.carousel-controls button:hover{color:#b81a4b}.hero{height:100vh;position:relative;display:flex;align-items:center;justify-content:center;background:linear-gradient(to bottom,#8fbc8f,#2d5016);overflow:hidden}.hero-video{position:absolute;top:50%;left:50%;min-width:100%;min-height:100%;width:auto;height:auto;transform:translate(-50%,-50%);z-index:0;object-fit:cover;opacity:0;transition:opacity .5s}.hero-video.loaded{opacity:1}.hero-overlay{position:absolute;inset:0;z-index:5;display:flex;flex-direction:column;align-items:center;justify-content:center}.hero-content{position:relative;text-align:center;color:#fff;padding:2rem;max-width:900px;animation:fadeInUp 1s ease}@keyframes fadeInUp{0%{opacity:0;transform:translateY(-50px)}to{opacity:1;transform:translateY(-100px)}}.hero-title{font-size:4rem;font-weight:800;margin:0 0 1.5rem;text-shadow:2px 4px 12px rgba(0,0,0,.3);letter-spacing:-1px}.hero-subtitle{font-size:1.4rem;margin:0 0 3rem;opacity:.95;line-height:1.6;text-shadow:1px 2px 8px rgba(0,0,0,.3)}.hero-buttons{display:flex;gap:1.5rem;justify-content:center;flex-wrap:wrap;margin-top:1rem}.hero-button{padding:1rem 2.5rem;font-size:1.1rem;font-weight:600;border:none;border-radius:30px;cursor:pointer;transition:all .3s ease;text-transform:uppercase;letter-spacing:.5px}.hero-button.primary{background:#fff;color:#2d5016}.hero-button.primary:hover{transform:translateY(-3px);box-shadow:0 8px 20px #0000004d}.hero-button.secondary{background:transparent;color:#fff;border:2px solid white}.hero-button.secondary:hover{background:#fff;color:#2d5016;transform:translateY(-3px)}.scroll-indicator{position:absolute;bottom:2rem;left:50%;transform:translate(-50%);background:none;border:none;color:#fff;cursor:pointer;animation:bounce 2s infinite;opacity:.8;transition:opacity .3s ease;z-index:6}.scroll-indicator:hover{opacity:1}@keyframes bounce{0%,20%,50%,80%,to{transform:translate(-50%) translateY(0)}40%{transform:translate(-50%) translateY(-10px)}60%{transform:translate(-50%) translateY(-5px)}}@media(max-width:768px){.hero-title{font-size:2.5rem}.hero{padding-top:154px}.hero-subtitle{font-size:1.1rem}.hero-buttons{flex-direction:column;align-items:center}.hero-button{width:100%;max-width:300px}}.pictures-preview{height:400px;min-height:300px;padding:4rem 0 1rem;background:#fff;margin-left:0;margin-right:0}.pictures-preview-container{height:100%;display:flex;gap:.5rem;padding-left:0;padding-right:0;padding-top:.5rem;padding-bottom:.5rem;max-width:100%}.pictures-preview-main{flex:1;height:100%;overflow:hidden;border-radius:12px 0 0 12px}.main-image{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s ease}.pictures-preview-main:hover .main-image{transform:scale(1.05)}.pictures-preview-sub{flex:1;display:grid;grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(2,1fr);gap:.5rem;height:100%}.sub-image-wrapper{overflow:hidden;position:relative}.sub-image-wrapper:nth-child(2){border-radius:0 12px 0 0}.sub-image-wrapper:nth-child(4){border-radius:0 0 12px}.sub-image{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s ease}.sub-image-house-twilight{object-position:center 65%}.sub-image-hottub{object-position:center 39%}.sub-image-wrapper:hover .sub-image{transform:scale(1.1)}@media(max-width:768px){.pictures-preview{height:auto;min-height:auto;margin-left:0;margin-right:0}.pictures-preview-container{flex-direction:column;gap:.25rem;padding-left:0;padding-right:0;padding-top:.25rem;padding-bottom:.25rem}.pictures-preview-main{height:400px}.pictures-preview-sub{height:400px;gap:.25rem}.sub-image{border-radius:18px 18px 0 0;overflow:hidden}}.carousel .control-arrow,.carousel.carousel-slider .control-arrow{-webkit-transition:all .25s ease-in;-moz-transition:all .25s ease-in;-ms-transition:all .25s ease-in;-o-transition:all .25s ease-in;transition:all .25s ease-in;opacity:.4;filter:alpha(opacity=40);position:absolute;z-index:2;top:20px;background:none;border:0;font-size:32px;cursor:pointer}.carousel .control-arrow:focus,.carousel .control-arrow:hover{opacity:1;filter:alpha(opacity=100)}.carousel .control-arrow:before,.carousel.carousel-slider .control-arrow:before{margin:0 5px;display:inline-block;border-top:8px solid transparent;border-bottom:8px solid transparent;content:""}.carousel .control-disabled.control-arrow{opacity:0;filter:alpha(opacity=0);cursor:inherit;display:none}.carousel .control-prev.control-arrow{left:0}.carousel .control-prev.control-arrow:before{border-right:8px solid #fff}.carousel .control-next.control-arrow{right:0}.carousel .control-next.control-arrow:before{border-left:8px solid #fff}.carousel-root{outline:none}.carousel{position:relative;width:100%}.carousel *{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.carousel img{width:100%;display:inline-block;pointer-events:none}.carousel .carousel{position:relative}.carousel .control-arrow{outline:0;border:0;background:none;top:50%;margin-top:-13px;font-size:18px}.carousel .thumbs-wrapper{margin:20px;overflow:hidden}.carousel .thumbs{-webkit-transition:all .15s ease-in;-moz-transition:all .15s ease-in;-ms-transition:all .15s ease-in;-o-transition:all .15s ease-in;transition:all .15s ease-in;-webkit-transform:translate3d(0,0,0);-moz-transform:translate3d(0,0,0);-ms-transform:translate3d(0,0,0);-o-transform:translate3d(0,0,0);transform:translateZ(0);position:relative;list-style:none;white-space:nowrap}.carousel .thumb{-webkit-transition:border .15s ease-in;-moz-transition:border .15s ease-in;-ms-transition:border .15s ease-in;-o-transition:border .15s ease-in;transition:border .15s ease-in;display:inline-block;margin-right:6px;white-space:nowrap;overflow:hidden;border:3px solid #fff;padding:2px}.carousel .thumb:focus{border:3px solid #ccc;outline:none}.carousel .thumb.selected,.carousel .thumb:hover{border:3px solid #333}.carousel .thumb img{vertical-align:top}.carousel.carousel-slider{position:relative;margin:0;overflow:hidden}.carousel.carousel-slider .control-arrow{top:0;color:#fff;font-size:26px;bottom:0;margin-top:0;padding:5px}.carousel.carousel-slider .control-arrow:hover{background:#0003}.carousel .slider-wrapper{overflow:hidden;margin:auto;width:100%;-webkit-transition:height .15s ease-in;-moz-transition:height .15s ease-in;-ms-transition:height .15s ease-in;-o-transition:height .15s ease-in;transition:height .15s ease-in}.carousel .slider-wrapper.axis-horizontal .slider{-ms-box-orient:horizontal;display:-webkit-box;display:-moz-box;display:-ms-flexbox;display:-moz-flex;display:-webkit-flex;display:flex}.carousel .slider-wrapper.axis-horizontal .slider .slide{flex-direction:column;flex-flow:column}.carousel .slider-wrapper.axis-vertical{-ms-box-orient:horizontal;display:-webkit-box;display:-moz-box;display:-ms-flexbox;display:-moz-flex;display:-webkit-flex;display:flex}.carousel .slider-wrapper.axis-vertical .slider{-webkit-flex-direction:column;flex-direction:column}.carousel .slider{margin:0;padding:0;position:relative;list-style:none;width:100%}.carousel .slider.animated{-webkit-transition:all .35s ease-in-out;-moz-transition:all .35s ease-in-out;-ms-transition:all .35s ease-in-out;-o-transition:all .35s ease-in-out;transition:all .35s ease-in-out}.carousel .slide{min-width:100%;margin:0;position:relative;text-align:center}.carousel .slide img{width:100%;vertical-align:top;border:0}.carousel .slide iframe{display:inline-block;width:calc(100% - 80px);margin:0 40px 40px;border:0}.carousel .slide .legend{-webkit-transition:all .5s ease-in-out;-moz-transition:all .5s ease-in-out;-ms-transition:all .5s ease-in-out;-o-transition:all .5s ease-in-out;transition:all .5s ease-in-out;position:absolute;bottom:40px;left:50%;margin-left:-45%;width:90%;border-radius:10px;background:#000;color:#fff;padding:10px;font-size:12px;text-align:center;opacity:.25;-webkit-transition:opacity .35s ease-in-out;-moz-transition:opacity .35s ease-in-out;-ms-transition:opacity .35s ease-in-out;-o-transition:opacity .35s ease-in-out;transition:opacity .35s ease-in-out}.carousel .control-dots{position:absolute;bottom:0;margin:10px 0;padding:0;text-align:center;width:100%;z-index:1}@media(min-width:960px){.carousel .control-dots{bottom:0}}.carousel .control-dots .dot{-webkit-transition:opacity .25s ease-in;-moz-transition:opacity .25s ease-in;-ms-transition:opacity .25s ease-in;-o-transition:opacity .25s ease-in;transition:opacity .25s ease-in;opacity:.3;filter:alpha(opacity=30);box-shadow:1px 1px 2px #000000e6;background:#fff;border-radius:50%;width:8px;height:8px;cursor:pointer;display:inline-block;margin:0 8px}.carousel .control-dots .dot.selected,.carousel .control-dots .dot:hover{opacity:1;filter:alpha(opacity=100)}.carousel .carousel-status{position:absolute;top:0;right:0;padding:5px;font-size:10px;text-shadow:1px 1px 1px rgba(0,0,0,.9);color:#fff}.carousel:hover .slide .legend{opacity:1}.about-container{max-width:1200px;margin:0 auto}.about-header{text-align:center;margin-bottom:4rem}.about-content{display:grid;gap:4rem}.about-text{font-size:1.1rem;line-height:1.8;color:#444;max-width:900px}.about-subtitle{font-size:1.3rem;color:var(--app_primary_color);font-weight:600;text-align:left;margin:0 0 1rem}.about-text p{margin:0 0 1.5rem}.about-buttons{display:flex;gap:1rem;margin-top:2rem;flex-wrap:wrap;justify-content:center}.about-buttons button{padding:.7rem 1.1rem;background:var(--app_primary_color);color:#fff;border:none;border-radius:20px;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 2px 8px #2d50162e}.about-buttons button:hover{background:var(--app_primary_color_hover);transform:translateY(-2px);box-shadow:0 6px 20px #2d50164d}.about-buttons button:active{transform:translateY(0)}.about-images{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:3rem;max-width:1200px;margin-left:auto;margin-right:auto}.about-image-wrapper{width:100%;height:350px;border-radius:15px;overflow:hidden;box-shadow:0 8px 30px #00000026;transition:transform .3s ease,box-shadow .3s ease}.about-image-wrapper:hover{transform:translateY(-8px);box-shadow:0 12px 40px #2d501640}.about-image-wrapper img{width:100%;height:100%;object-fit:cover}@media(max-width:768px){.about-container{margin-left:1rem;margin-right:1rem}.about{padding:4rem 1.5rem}.about-text{font-size:1rem}.about-images{grid-template-columns:1fr;gap:1.5rem}.about-image-wrapper{height:300px}}.stays-gallery-animated{animation:slideInSection .5s cubic-bezier(.4,0,.2,1)}@keyframes slideInSection{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}.section-title{font-size:1.3rem;color:#2d5016;margin:0 0 .5rem;font-weight:700}.section-description{font-size:.98rem;color:#555;margin:0 0 1.2rem;font-weight:400}.accommodations{padding:3rem 2rem;background:#fff;margin-top:60px}.accommodations-container{max-width:1200px;margin:0 auto}.accommodations-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;margin-bottom:4rem}.accommodation-card{background:#fff;border-radius:20px;overflow:hidden;box-shadow:0 4px 20px #0000001a;transition:all .3s ease}.accommodation-card:hover{transform:translateY(-8px);box-shadow:0 12px 40px #2d501633}.accommodation-image{height:200px;background:linear-gradient(135deg,#8fbc8f,#4a7c2d);display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.accommodation-emoji{font-size:6rem;filter:drop-shadow(2px 4px 6px rgba(0,0,0,.2))}.accommodation-content{padding:2rem}.accommodation-name{font-size:1.5rem;color:#2d5016;margin:0 0 1rem;font-weight:700}.accommodation-description{color:#666;line-height:1.6;margin:0 0 1.5rem}.accommodation-details{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1.5rem;border-bottom:1px solid #eee}.accommodation-price{display:flex;flex-direction:column}.price-amount{font-size:2rem;color:#2d5016;font-weight:700}.price-period{font-size:.9rem;color:#999}.accommodation-capacity{display:flex;align-items:center;gap:.5rem;color:#666;font-size:.95rem}.accommodation-amenities{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem}.amenity-tag{background:#f0f7ed;color:#2d5016;padding:.4rem .8rem;border-radius:15px;font-size:.85rem;font-weight:500}.book-accommodation-btn{width:100%;padding:1rem;background:#2d5016;color:#fff;border:none;border-radius:10px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.book-accommodation-btn:hover{background:#4a7c2d;transform:translateY(-2px);box-shadow:0 4px 12px #2d50164d}.accommodations-features{display:flex;justify-content:center;gap:4rem;flex-wrap:wrap;padding:2rem;background:#f8f9fa;border-radius:20px}.feature-item{display:flex;align-items:center;gap:.8rem;color:#2d5016;font-weight:500;font-size:1.1rem}.stays-gallery-section{margin-top:1rem}.stays-gallery-section .section-header{margin-bottom:1rem}.stays-gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem;margin-top:2rem}.stays-gallery-item{position:relative;overflow:hidden;border-radius:15px;aspect-ratio:4/3;box-shadow:0 4px 15px #0000001a;transition:all .3s ease;cursor:pointer;background:#f0f0f0}.stays-gallery-item:hover{transform:scale(1.02);box-shadow:0 8px 30px #2d501633}.stays-gallery-image{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.stays-gallery-item:hover .stays-gallery-image{transform:scale(1.05)}@media(max-width:768px){.accommodations{padding:4rem 1.5rem}.accommodations-grid{grid-template-columns:1fr}.accommodations-features{flex-direction:column;gap:1.5rem;align-items:center}.stays-gallery-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem}.stays-gallery-section{margin-top:3rem}.accommodations{background:linear-gradient(#8080800a,#fffffff5),#fff}.accommodation-card{background:linear-gradient(#8080800d,#fffffff2),#fff}}.calendar{padding:5rem 2rem}.calendar .calendar-container{max-width:1200px;margin:0 auto}.calendar .calendar-wrapper{background:#fff;padding:2rem;border-radius:12px;box-shadow:0 4px 20px #00000014;margin-top:2rem}.calendar .calendar-wrapper .fc{font-family:inherit}.calendar .calendar-wrapper .fc-toolbar-title{font-size:1.75rem;font-weight:700;color:#2d5016}.calendar .calendar-wrapper .fc-button{background:#2d5016;border-color:#2d5016;color:#fff;text-transform:capitalize;padding:.5rem 1rem;font-weight:500}.calendar .calendar-wrapper .fc-button:hover{background:#4a7c2d;border-color:#4a7c2d}.calendar .calendar-wrapper .fc-button:disabled{background:#ccc;border-color:#ccc;opacity:.6}.calendar .calendar-wrapper .fc-button-active{background:#4a7c2d!important;border-color:#4a7c2d!important}.calendar .calendar-wrapper .fc-col-header-cell{padding:1rem .5rem;font-weight:600;color:#2d5016;background:#f8f9fa}.calendar .calendar-wrapper .fc-daygrid-day{cursor:pointer;transition:background-color .2s ease}.calendar .calendar-wrapper .fc-daygrid-day:hover{background:#f8f9fa}.calendar .calendar-wrapper .fc-daygrid-day-number{padding:.5rem;color:#333}.calendar .calendar-wrapper .fc-event{cursor:pointer;border-radius:4px;padding:2px 4px;margin:2px 0}.calendar .calendar-wrapper .fc-event-title{font-weight:500}.calendar .calendar-wrapper .fc-day-today{background:#e8f5e9!important}.calendar .calendar-wrapper .fc-day-past{opacity:.6}.calendar .calendar-wrapper .selected-start-date{opacity:.5}.calendar .calendar-wrapper .fc-bg-event{opacity:.3}.calendar .calendar-wrapper .day-cell-content{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;padding:.5rem 0}.calendar .calendar-wrapper .day-number{font-size:1rem;font-weight:600;color:#333;margin-bottom:.25rem}.calendar .calendar-wrapper .day-price{font-size:.75rem;font-weight:600;color:#2d5016;background:#e8f5e9;padding:.15rem .4rem;border-radius:4px}.calendar .calendar-wrapper .fc-daygrid-day.fc-day-past .day-price{opacity:.5}.calendar .calendar-wrapper .fc-day-sat .day-price,.calendar .calendar-wrapper .fc-day-sun .day-price{background:#fff3cd;color:#856404}.calendar .booking-cta{margin-top:3rem;text-align:center;padding:2rem;background:linear-gradient(135deg,#f8f9fa,#e8f5e9);border-radius:12px;display:flex;flex-direction:column;align-items:center;gap:1rem}.calendar .booking-cta .booking-buttons{display:flex;gap:1rem;flex-wrap:wrap;justify-content:center}.calendar .booking-cta .booking-button{background:#2d5016;color:#fff;border:none;padding:1.25rem 2rem;font-size:1.1rem;font-weight:700;border-radius:50px;cursor:pointer;transition:all .3s ease;box-shadow:0 6px 20px #2d50164d;text-transform:uppercase;letter-spacing:.5px;flex:1;min-width:200px;max-width:300px}.calendar .booking-cta .booking-button:hover{background:#4a7c2d;transform:translateY(-3px);box-shadow:0 8px 25px #2d501666}.calendar .booking-cta .booking-button:active{transform:translateY(-1px)}.calendar .booking-cta .cta-helper-text{margin-top:1rem;color:#555;font-size:1rem;font-style:italic}@media(max-width:768px){.calendar .calendar{padding:3rem 1rem}.calendar .calendar-wrapper{padding:1rem}.calendar .booking-cta{padding:1.5rem 1rem}.calendar .booking-cta .booking-button{width:100%;font-size:1.1rem;padding:1rem 2rem}.calendar .calendar-wrapper .fc-toolbar{flex-direction:column;gap:1rem}.calendar .calendar-wrapper .fc-toolbar-title{font-size:1.25rem}.calendar .calendar-wrapper .fc-button{padding:.4rem .8rem;font-size:.9rem}.calendar .calendar-container{max-width:100%;margin:0}.calendar .calendar-wrapper .fc-daygrid{overflow-x:auto;min-width:350px}.calendar .calendar-wrapper .fc-daygrid-day{min-width:40px;min-height:40px;font-size:.95rem;padding:.2rem}.calendar .calendar-wrapper .fc-col-header-cell{font-size:.95rem;padding:.5rem .2rem}.calendar .calendar-wrapper .fc-event{font-size:.85rem;padding:2px}}@media(max-width:480px){.calendar .calendar{padding:2rem .5rem}.calendar .calendar-wrapper{padding:.5rem}.calendar .calendar-wrapper .fc-daygrid{min-width:280px}.calendar .calendar-wrapper .fc-daygrid-day{min-width:32px;min-height:32px;font-size:.85rem}.calendar .calendar-wrapper .fc-col-header-cell{font-size:.85rem;padding:.3rem .1rem}}.nearby-attractions{padding:6rem 2rem}.attractions-container{max-width:1200px;margin:0 auto}.section-header{text-align:center;margin-bottom:4rem}.attractions-content{display:flex;flex-direction:column;gap:3rem}.map-container{width:100%;border-radius:15px;overflow:hidden;box-shadow:0 4px 20px #0000001a;background:#fff}.map-container{border-radius:15px;margin-bottom:30px}.map-container iframe,.map-container img{display:block}.mapboxgl-popup-content{border-radius:12px;box-shadow:0 4px 12px #00000026}.mapboxgl-popup-close-button{font-size:20px;padding:4px 8px}.attractions-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem}.attraction-card{background:#fff;border-radius:15px;overflow:hidden;box-shadow:0 4px 15px #00000014;transition:all .3s ease;display:flex;flex-direction:column}.attraction-card:hover{transform:translateY(-5px);box-shadow:0 8px 25px #2d501626}.attraction-image-container{width:100%;height:200px;overflow:hidden}.attraction-image{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.attraction-card:hover .attraction-image{transform:scale(1.05)}.attraction-card-content{padding:2rem;display:flex;gap:1.5rem;align-items:flex-start}.attraction-icon-wrapper{flex-shrink:0;width:60px;height:60px;background:linear-gradient(135deg,#8fbc8f,#4a7c2d);border-radius:12px;display:flex;align-items:center;justify-content:center}.attraction-emoji{font-size:2rem;filter:drop-shadow(1px 2px 4px rgba(0,0,0,.2))}.attraction-info{flex:1}.attraction-name{font-size:1.3rem;color:#2d5016;margin:0 0 .5rem;font-weight:700}.attraction-description{color:#666;line-height:1.6;margin:0 0 1rem;font-size:.95rem}.attraction-distance{display:flex;align-items:center;gap:.5rem;color:#4a7c2d;font-weight:600;font-size:.9rem}.drive-time{color:#4a7c2d;font-weight:600;font-size:.9rem}.attraction-distance svg{color:#4a7c2d}@media(max-width:768px){.nearby-attractions{padding:4rem 1.5rem}.attractions-grid{grid-template-columns:1fr}.attraction-card-content{flex-direction:column;text-align:center;align-items:center}.map-container iframe{height:350px}.attraction-image-container{height:180px}}.contact{padding:6rem 2rem 2rem}.contact-container{max-width:1200px;margin:0 auto}.contact-content{max-width:800px;margin:0 auto 2rem}.contact-email{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:1.5rem;background:#fff;border-radius:15px;box-shadow:0 4px 15px #00000014;max-width:800px;margin-left:auto;margin-right:auto;flex-wrap:wrap}.email-icon{color:#4a7c2d;width:24px;height:24px}.contact-email span{color:#666;font-size:1rem}.contact-email a{color:#4a7c2d;font-weight:600;text-decoration:none;transition:color .3s ease}.contact-email a:hover{color:#2d5016;text-decoration:underline}.contact-info{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem}.contact-card{background:#fff;padding:2rem;border-radius:15px;box-shadow:0 4px 15px #00000014;text-align:center}.contact-icon{width:60px;height:60px;margin:0 auto 1rem;background:linear-gradient(135deg,#8fbc8f,#4a7c2d);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff}.contact-card h3{font-size:1.2rem;color:#2d5016;margin:0 0 1rem;font-weight:700}.contact-card p{color:#666;line-height:1.8;margin:0;font-size:.95rem}.contact-form{background:#fff;padding:2.5rem;border-radius:20px;box-shadow:0 4px 20px #00000014}.contact-form h3{font-size:1.8rem;color:#2d5016;margin:0 0 2rem;font-weight:700}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-group label{display:block;color:#2d5016;font-weight:600;margin-bottom:.5rem;font-size:.95rem}.form-group input,.form-group textarea{width:100%;padding:.9rem;border:2px solid #e0e0e0;border-radius:8px;font-size:1rem;font-family:inherit;transition:all .3s ease;box-sizing:border-box}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:#4a7c2d;box-shadow:0 0 0 3px #4a7c2d1a}.form-group textarea{resize:vertical;min-height:120px}.submit-button{width:100%;padding:1rem;background:#2d5016;color:#fff;border:none;border-radius:10px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.submit-button:hover{background:#4a7c2d;transform:translateY(-2px);box-shadow:0 4px 12px #2d50164d}@media(max-width:968px){.contact-content,.contact-info{grid-template-columns:1fr}}@media(max-width:768px){.contact{padding:4rem 1.5rem 0}.form-row{grid-template-columns:1fr}.contact-form{padding:2rem}}.modal-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:2000;padding:2rem;animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-content{background:#fff;border-radius:20px;max-width:700px;width:100%;max-height:90vh;overflow-y:auto;position:relative;animation:slideUp .3s ease}@keyframes slideUp{0%{transform:translateY(50px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-close:hover{background:#e0e0e0;color:#2d5016;transform:rotate(90deg)}.modal-header{padding:3rem 3rem 2rem;border-bottom:2px solid #f0f0f0}.modal-header h2{font-size:2rem;color:#2d5016;margin:0 0 .5rem;font-weight:800}.modal-header p{color:#666;margin:0;line-height:1.6}.booking-form{padding:2rem 3rem 3rem}.form-section{margin-bottom:2.5rem}.form-section h3{font-size:1.3rem;color:#2d5016;margin:0 0 1.5rem;font-weight:700;display:flex;align-items:center;gap:.5rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.form-group{margin-bottom:1.5rem}.form-group label{display:flex;align-items:center;gap:.5rem;color:#2d5016;font-weight:600;margin-bottom:.5rem;font-size:.95rem}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.9rem;border:2px solid #e0e0e0;border-radius:8px;font-size:1rem;font-family:inherit;transition:all .3s ease;box-sizing:border-box}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#4a7c2d;box-shadow:0 0 0 3px #4a7c2d1a}.form-group textarea{resize:vertical;min-height:100px}.checkbox-group{margin:1.5rem 0}.checkbox-label{display:flex!important;align-items:center;gap:.75rem;cursor:pointer;font-weight:600!important;color:#2d5016!important;padding:1rem;background:#f8f9fa;border-radius:8px;transition:all .3s ease}.checkbox-label:hover{background:#e8f5e9}.checkbox-label input[type=checkbox]{width:20px;height:20px;cursor:pointer;accent-color:#2d5016}.checkbox-label span{flex:1}.nested-form-section{margin-top:1.5rem;padding:1.5rem;background:#f8f9fa;border-radius:8px;border-left:4px solid #2d5016}.nested-form-section h4{font-size:1.1rem;color:#2d5016;margin:0 0 .5rem;font-weight:700}.event-fee-notice{color:#666;font-size:.9rem;margin:0 0 1.25rem;font-style:italic}.form-actions{display:flex;gap:1rem;margin-top:2rem;padding-top:2rem;border-top:2px solid #f0f0f0}.btn-primary,.btn-secondary{flex:1;padding:1rem;border:none;border-radius:10px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-primary{background:#2d5016;color:#fff}.btn-primary:hover{background:#4a7c2d;transform:translateY(-2px);box-shadow:0 4px 12px #2d50164d}.btn-secondary{background:#f0f0f0;color:#666}.btn-secondary:hover{background:#e0e0e0;color:#2d5016}.modal-content::-webkit-scrollbar{width:8px}.modal-content::-webkit-scrollbar-track{background:#f0f0f0;border-radius:10px}.modal-content::-webkit-scrollbar-thumb{background:#4a7c2d;border-radius:10px}.modal-content::-webkit-scrollbar-thumb:hover{background:#2d5016}@media(max-width:768px){.modal-overlay{padding:1rem}.modal-header{padding:2rem 1.5rem 1.5rem}.modal-header h2{font-size:1.5rem}.booking-form{padding:1.5rem}.form-row{grid-template-columns:1fr;gap:0}.form-actions{flex-direction:column}.modal-close{top:1rem;right:1rem}}.iframe-modal-overlay{flex:0 0 320px;width:320px;height:calc(100vh - 80px);position:sticky;top:80px;z-index:100;display:flex;flex-direction:column}.iframe-modal-header{display:none}.iframe-modal-panel{background:transparent;width:100%;height:100%;display:flex;flex-direction:column;position:relative}.iframe-modal-content{flex:1;overflow:hidden;position:relative;background:#fffffffa;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}@media(max-width:768px){.iframe-modal-overlay{width:100%;height:130vh;position:relative;top:0;overflow-y:visible;display:block}.iframe-modal-panel{display:block}.iframe-modal-content{height:100vh;width:320px;margin:auto;overflow:hidden;position:relative;background:#fffffffa;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:block}.iframe-modal-content iframe{width:100%;height:100vh;border:none;display:block}.iframe-modal-header{padding:1.5rem;display:block}.iframe-modal-close{top:.75rem;right:.75rem}}.about-farm-intro{display:flex;align-items:center;margin-bottom:2rem;gap:2rem}.about-farm-intro-img{width:180px;height:180px;object-fit:cover;border-radius:1rem;box-shadow:0 2px 8px #00000026;flex-shrink:0}.about-farm-intro-text{flex:1}.about-farm-intro-text p{font-size:1.1rem;line-height:1.7;margin:0}@media(max-width:768px){.about-farm-intro{flex-direction:column;align-items:flex-start;gap:1rem}.about-farm-intro-img{width:100%;max-width:320px;height:auto;margin-bottom:.5rem}.about-farm-intro-text{width:100%}.about-farm-intro-text p{font-size:1rem}}.about-farm{padding:6rem 2rem}.about-farm-container{max-width:1200px;margin:0 auto}.about-farm-header{text-align:center;margin-bottom:3rem}.about-farm-carousel{max-width:1100px;margin:2rem auto;border-radius:0;overflow:visible;box-shadow:none;padding:0 80px;position:relative}.about-farm-carousel .carousel .slide{background:transparent}.about-farm-carousel .carousel .slide img,.about-farm-carousel .carousel .slide video{width:100%;height:300px;object-fit:cover;border-radius:15px;padding:0 10px}.about-farm-carousel .carousel .control-arrow{background:#2d501680;opacity:.6;transition:opacity .3s ease}.about-farm-carousel .carousel .control-arrow:hover{opacity:.9;background:#2d5016b3}.about-farm .carousel-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:2;background:#2d5016;color:#fff;border:none;border-radius:50%;width:50px;height:50px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s ease;box-shadow:0 2px 10px #0003}.about-farm .carousel-arrow:hover{background:#3d6826;transform:translateY(-50%) scale(1.1);box-shadow:0 4px 15px #0000004d}.about-farm .carousel-arrow-prev{left:10px}.about-farm .carousel-arrow-next{right:10px}@media(max-width:768px){.about-farm{padding:4rem 1.5rem}.about-farm-carousel{max-width:100%;padding:0 60px}.about-farm-carousel .carousel .slide img,.about-farm-carousel .carousel .slide video{height:200px}.about-farm .carousel-arrow{width:40px;height:40px}.about-farm .carousel-arrow-prev{left:5px}.about-farm .carousel-arrow-next{right:5px}}.footer{background:#2d5016;padding:2rem}.footer-content{max-width:1200px;margin:0 auto;text-align:center;color:#fff}.footer-text{margin:0 0 1rem;font-size:.95rem;opacity:.9}.footer-links{display:flex;justify-content:center;gap:1rem;align-items:center;flex-wrap:wrap}.footer-links a{color:#fff;text-decoration:none;font-size:.9rem;opacity:.8;transition:opacity .3s ease}.footer-links a:hover{opacity:1}.footer-links span{opacity:.5}
