:root{--primary-color:#335755;--primary-dark:#1f3938;--primary-light:#4a7270;--secondary-color:#2c5282;--secondary-dark:#1a365d;--accent-color:#f26e3f;--text-dark:#1a202c;--text-light:#718096;--bg-light:#f7fafc;--bg-white:#fff;--border-color:#e2e8f0;--cream-bg:#e8dcc4;--spacing-xs:.5rem;--spacing-sm:1rem;--spacing-md:2rem;--spacing-lg:3rem;--spacing-xl:4rem;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;font-weight:400;line-height:1.6}*{box-sizing:border-box;margin:0;padding:0}body{min-height:100vh;color:var(--text-dark);background-color:var(--bg-white);margin:0}html{scroll-behavior:smooth}a{color:var(--primary-color);text-decoration:none;transition:color .3s}a:hover{color:var(--primary-light)}img{max-width:100%;height:auto;display:block}.container{max-width:1200px;padding:0 var(--spacing-md);margin:0 auto}.btn{text-align:center;cursor:pointer;text-transform:uppercase;letter-spacing:.5px;border:none;border-radius:8px;padding:.75rem 2rem;font-size:1rem;font-weight:600;transition:all .3s;display:inline-block}.btn-primary{background-color:var(--primary-color);color:#fff}.btn-primary:hover{background-color:var(--primary-dark);transform:translateY(-2px);box-shadow:0 10px 20px #0003}.btn-secondary{color:#fff;background-color:#0000;border:2px solid #fff}.btn-secondary:hover{color:var(--primary-color);background-color:#fff}.btn:disabled{opacity:.6;cursor:not-allowed}section{padding:var(--spacing-xl) 0}.section-title{color:var(--text-dark);margin-bottom:var(--spacing-sm);text-align:center;font-size:2.5rem}.section-subtitle{color:var(--text-light);text-align:center;margin-bottom:var(--spacing-lg);max-width:600px;margin-left:auto;margin-right:auto;font-size:1.1rem}@media (width<=768px){.section-title{font-size:2rem}.section-subtitle{font-size:1rem}.container{padding:0 var(--spacing-sm)}}@media (width<=480px){.section-title{font-size:1.75rem}}.header{z-index:1000;background-color:#fffffffa;padding:1rem 0;position:fixed;top:0;left:0;right:0;box-shadow:0 2px 10px #0000001a}.header-content{justify-content:space-between;align-items:center;display:flex}.logo{cursor:pointer;align-items:center;gap:1rem;display:flex}.logo-image{border-radius:8px;width:auto;height:50px;transition:transform .3s;box-shadow:0 2px 8px #0000001a}.logo:hover .logo-image{transform:scale(1.05)}.logo-text{color:var(--primary-color);margin:0;font-size:1.5rem;font-weight:700}.nav-list{gap:2rem;margin:0;list-style:none;display:flex}.nav-link{color:var(--text-dark);font-weight:500;transition:color .3s}.nav-link:hover{color:var(--primary-color)}.header-actions{align-items:center;gap:1rem;display:flex}.mobile-menu-toggle{color:var(--primary-color);cursor:pointer;background:0 0;border:none;font-size:1.5rem;display:none}.language-switcher{align-items:center;gap:.5rem;display:flex}.language-icon{color:var(--primary-color);font-size:1.2rem}.language-select{border:2px solid var(--border-color);color:var(--text-dark);cursor:pointer;background-color:#fff;border-radius:5px;padding:.5rem;font-size:.9rem;transition:border-color .3s}.language-select:hover{border-color:var(--primary-color)}.language-select:focus{border-color:var(--primary-color);outline:none}@media (width<=768px){.nav{background-color:#fff;max-height:0;transition:max-height .3s;position:absolute;top:100%;left:0;right:0;overflow:hidden;box-shadow:0 4px 10px #0000001a}.nav-open{max-height:400px}.nav-list{flex-direction:column;gap:0;padding:1rem 0}.nav-item{border-bottom:1px solid var(--border-color)}.nav-link{padding:1rem 2rem;display:block}.mobile-menu-toggle{display:block}.logo-image{height:40px}.logo-text{font-size:1.2rem}}.hero{text-align:center;background:url(/hero-bg.jpg) 50%/cover fixed;justify-content:center;align-items:center;height:100vh;display:flex;position:relative}@media (width<=768px){.hero{background-image:url(/hero-bg-mobile.jpg);background-attachment:scroll;height:80vh}}@supports (background-image:url('/hero-bg.webp')){.hero{background-image:url(/hero-bg.webp)}@media (width<=768px){.hero{background-image:url(/hero-bg-mobile.webp)}}}.hero-overlay{background-color:#0006;position:absolute;inset:0}.hero-content{z-index:1;color:#fff;max-width:800px;padding:0 2rem;position:relative}.hero-welcome{text-transform:uppercase;letter-spacing:2px;margin-bottom:.5rem;font-size:1.5rem;font-weight:400}.hero-title{text-shadow:2px 2px 4px #00000080;margin-bottom:1rem;font-size:4rem;font-weight:700}.hero-tagline{opacity:.95;margin-bottom:2rem;font-size:1.3rem}.hero-buttons{flex-wrap:wrap;justify-content:center;gap:1rem;display:flex}@media (width<=768px){.hero-title{font-size:2.5rem}.hero-welcome{font-size:1.2rem}.hero-tagline{font-size:1.1rem}}.services{background-color:var(--bg-light)}.services-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;margin-top:3rem;display:grid}.service-card{text-align:center;background-color:#fff;border-radius:12px;padding:2.5rem;transition:transform .3s,box-shadow .3s;box-shadow:0 4px 6px #0000001a}.service-card:hover{transform:translateY(-10px);box-shadow:0 15px 30px #0003}.service-icon{color:var(--primary-color);margin-bottom:1.5rem;font-size:3.5rem}.service-title{color:var(--text-dark);margin-bottom:1rem;font-size:1.5rem}.service-description{color:var(--text-light);line-height:1.7}.activities{background-color:#fff}.activities-section{margin-bottom:4rem}.activities-section:last-child{margin-bottom:0}.activities-subtitle{color:var(--text-dark);text-align:center;margin-bottom:2rem;font-size:2rem}.activities-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem;margin-top:2rem;display:grid}.activity-card{background-color:var(--bg-light);text-align:center;border-radius:10px;padding:2rem;transition:all .3s}.activity-card:hover{background-color:var(--primary-color);color:#fff;transform:scale(1.05)}.activity-icon{color:var(--primary-color);margin-bottom:1rem;font-size:3rem;transition:color .3s}.activity-card:hover .activity-icon{color:#fff}.activity-title{margin-bottom:.75rem;font-size:1.2rem}.activity-description{opacity:.9;font-size:.95rem}.summer-section{background-color:var(--bg-light);border-radius:12px;padding:3rem}.coming-soon{text-align:center;padding:2rem}.coming-soon-badge{background-color:var(--accent-color);color:#fff;text-transform:uppercase;letter-spacing:1px;border-radius:25px;margin-bottom:1rem;padding:.5rem 1.5rem;font-weight:600;display:inline-block}.coming-soon-text{color:var(--text-light);font-size:1.1rem}.gallery{background-color:var(--bg-light)}.gallery-slider{margin-top:3rem}.gallery-slide{padding:0 10px}.gallery-image-wrapper{cursor:pointer;border-radius:12px;position:relative;overflow:hidden}.gallery-image{object-fit:cover;border-radius:12px;width:100%;height:300px;transition:transform .3s;display:block;box-shadow:0 4px 10px #0003}.gallery-image-wrapper:hover .gallery-image{transform:scale(1.05)}.gallery-watermark{opacity:.7;pointer-events:none;z-index:2;width:60px;height:60px;position:absolute;bottom:10px;right:10px}.gallery-watermark img{object-fit:contain;filter:drop-shadow(0 2px 4px #0000004d);width:100%;height:100%}.image-lightbox{z-index:2000;background-color:#000000f2;justify-content:center;align-items:center;padding:2rem;animation:.3s fadeIn;display:flex;position:fixed;inset:0}.image-lightbox-content{flex-direction:column;justify-content:center;align-items:center;max-width:90vw;max-height:90vh;display:flex;position:relative}.image-preview-wrapper{justify-content:center;align-items:center;max-width:100%;max-height:80vh;display:flex;position:relative}.preview-image{object-fit:contain;border-radius:8px;max-width:100%;max-height:80vh;box-shadow:0 8px 30px #00000080}.preview-watermark{opacity:.6;pointer-events:none;z-index:2;width:100px;height:100px;position:absolute;bottom:20px;right:20px}.preview-watermark img{object-fit:contain;filter:drop-shadow(0 4px 8px #00000080);width:100%;height:100%}.image-caption{color:#fff;text-align:center;text-shadow:0 2px 4px #00000080;margin-top:1.5rem;font-size:1.1rem}.nav-button{color:#fff;cursor:pointer;z-index:10;background-color:#ffffff1a;border:none;border-radius:50%;justify-content:center;align-items:center;width:60px;height:60px;font-size:2rem;transition:all .3s;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.nav-button:hover{background-color:var(--primary-color);transform:translateY(-50%)scale(1.1)}.nav-button-left{left:-80px}.nav-button-right{right:-80px}@media (width<=768px){.nav-button{width:45px;height:45px;font-size:1.5rem}.nav-button-left{left:10px}.nav-button-right{right:10px}.gallery-watermark{width:40px;height:40px;bottom:5px;right:5px}.preview-watermark{width:60px;height:60px;bottom:10px;right:10px}}.slick-dots li button:before{color:var(--primary-color)}.slick-prev,.slick-next{z-index:1}.slick-prev:before,.slick-next:before{color:var(--primary-color);font-size:30px}.video-gallery{background-color:#fff}.video-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;margin-top:3rem;display:grid}.video-card{background-color:var(--bg-light);cursor:pointer;border-radius:12px;transition:transform .3s,box-shadow .3s;overflow:hidden;box-shadow:0 4px 6px #0000001a}.video-card:hover{transform:translateY(-10px);box-shadow:0 15px 30px #0003}.video-thumbnail{width:100%;height:250px;position:relative;overflow:hidden}.video-thumbnail img{object-fit:cover;width:100%;height:100%;transition:transform .3s}.video-card:hover .video-thumbnail img{transform:scale(1.1)}.play-overlay{background-color:#0006;justify-content:center;align-items:center;transition:background-color .3s;display:flex;position:absolute;inset:0}.video-card:hover .play-overlay{background-color:#0009}.play-icon{color:#fff;opacity:.9;font-size:4rem;transition:all .3s}.video-card:hover .play-icon{opacity:1;transform:scale(1.2)}.video-info{padding:1.5rem}.video-info h3{color:var(--text-dark);margin-bottom:.5rem;font-size:1.2rem}.video-info p{color:var(--text-light);font-size:.95rem;line-height:1.6}.video-lightbox{z-index:2000;background-color:#000000f2;justify-content:center;align-items:center;padding:2rem;animation:.3s fadeIn;display:flex;position:fixed;inset:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.lightbox-content{background-color:#1a202ce6;border-radius:12px;width:100%;max-width:1200px;padding:2rem;animation:.3s slideUp;position:relative}.lightbox-content:fullscreen{background-color:#000000fa;border-radius:0;flex-direction:column;justify-content:center;align-items:center;max-width:100%;height:100vh;padding:1rem;display:flex}.lightbox-content:fullscreen .lightbox-video{width:auto;max-width:100%;max-height:85vh;margin-bottom:1rem}@keyframes slideUp{0%{opacity:0;transform:translateY(50px)}to{opacity:1;transform:translateY(0)}}.close-button{color:#fff;cursor:pointer;z-index:10;background-color:#ffffff1a;border:none;border-radius:50%;justify-content:center;align-items:center;width:45px;height:45px;font-size:1.5rem;transition:all .3s;display:flex;position:absolute;top:1rem;right:1rem}.close-button:hover{background-color:var(--primary-color);transform:rotate(90deg)}.lightbox-video{aspect-ratio:16/9;border-radius:8px;width:100%;max-height:70vh;margin-bottom:1.5rem}.video-details{color:#fff;text-align:center}.video-details h3{color:#fff;margin-bottom:.5rem;font-size:1.5rem}.video-details p{color:#fffc;font-size:1rem}@media (width<=768px){.video-grid{grid-template-columns:1fr}.video-lightbox,.lightbox-content{padding:1rem}.lightbox-video{max-height:50vh}}.contact{background-color:var(--bg-light)}.contact-grid{grid-template-columns:1fr 1fr;gap:3rem;margin-top:3rem;display:grid}.contact-form{flex-direction:column;gap:1.5rem;display:flex}.form-group{flex-direction:column;display:flex}.form-input{border:2px solid var(--border-color);border-radius:8px;padding:1rem;font-family:inherit;font-size:1rem;transition:border-color .3s}.form-input:focus{border-color:var(--primary-color);outline:none}.form-textarea{resize:vertical;min-height:120px}.form-message{text-align:center;border-radius:8px;padding:1rem;font-weight:500}.form-message.success{color:#22543d;background-color:#c6f6d5}.form-message.error{color:#742a2a;background-color:#fed7d7}.contact-info{background-color:var(--bg-light);border-radius:12px;padding:2rem}.contact-info h3{color:var(--text-dark);margin-bottom:2rem;font-size:1.8rem}.contact-info-item{align-items:flex-start;gap:1rem;margin-bottom:2rem;display:flex}.contact-icon{color:var(--primary-color);margin-top:.25rem;font-size:1.5rem}.contact-info-item h4{color:var(--text-light);margin-bottom:.25rem;font-size:1rem}.contact-info-item p{color:var(--text-dark);font-weight:500}@media (width<=768px){.contact-grid{grid-template-columns:1fr;gap:2rem}}.map-section{background-color:var(--bg-light)}.map-container{border-radius:12px;margin-top:2rem;overflow:hidden;box-shadow:0 4px 15px #0003}.leaflet-container{width:100%;height:400px}.footer{background-color:var(--text-dark);color:#fff;padding:3rem 0 1.5rem}.footer-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem;margin-bottom:2rem;display:grid}.footer-title{color:#fff;margin-bottom:1rem;font-size:1.3rem}.footer-text{color:#fffc;line-height:1.7}.footer-links{list-style:none}.footer-links li{margin-bottom:.75rem}.footer-link{color:#fffc;transition:color .3s}.footer-link:hover{color:#fff}.social-links{gap:1rem;display:flex}.social-link{color:#fff;background-color:#ffffff1a;border-radius:50%;justify-content:center;align-items:center;width:45px;height:45px;font-size:1.3rem;transition:all .3s;display:flex}.social-link:hover{background-color:var(--primary-color);transform:translateY(-3px)}.footer-bottom{text-align:center;color:#ffffffb3;border-top:1px solid #ffffff1a;padding-top:2rem}.booking{background:linear-gradient(135deg,#003580 0%,#0057b8 50%,#0071e3 100%);padding:100px 0;position:relative;overflow:hidden}.booking:before{content:"";pointer-events:none;background:radial-gradient(circle at 20%,#ffffff1a 0%,#0000 50%),radial-gradient(circle at 80% 80%,#ffffff1a 0%,#0000 50%);position:absolute;inset:0}.booking .container{z-index:1;position:relative}.booking .section-title{color:#fff;text-shadow:0 2px 10px #0003;font-size:3rem}.booking .section-subtitle{color:#fffffff2;font-size:1.3rem}.booking-cta-card{background:#fff;border-radius:20px;max-width:900px;margin:50px auto;padding:50px;transition:transform .3s,box-shadow .3s;transform:translateY(0);box-shadow:0 20px 60px #0000004d}.booking-cta-card:hover{transform:translateY(-5px);box-shadow:0 25px 70px #0006}.booking-cta-content{text-align:center}.booking-cta-title{color:#003580;margin-bottom:20px;font-size:2.5rem;font-weight:700}.booking-cta-description{color:#666;margin-bottom:40px;font-size:1.2rem;line-height:1.8}.booking-button-large{cursor:pointer;text-transform:uppercase;letter-spacing:1px;border:none;border-radius:50px;justify-content:center;align-items:center;gap:15px;padding:25px 60px;font-size:1.4rem;font-weight:700;text-decoration:none;transition:all .3s;display:inline-flex}.booking-button-large .button-icon{font-size:1.6rem}.booking-button-large.primary{color:#fff;background:linear-gradient(135deg,#003580 0%,#0057b8 100%);box-shadow:0 10px 30px #00358066}.booking-button-large.primary:hover{background:linear-gradient(135deg,#0057b8 0%,#0071e3 100%);transform:scale(1.05);box-shadow:0 15px 40px #00358099}.booking-button-large.secondary{color:#003580;background:#fff;border:3px solid #003580;box-shadow:0 5px 20px #00358033}.booking-button-large.secondary:hover{color:#fff;background:#003580}.booking-contact-buttons{flex-wrap:wrap;justify-content:center;gap:20px;display:flex}.booking-features-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:30px;margin:60px 0;display:grid}.booking-feature{text-align:center;background:#fffffff2;border:2px solid #ffffff4d;border-radius:16px;padding:40px;transition:transform .3s,box-shadow .3s;box-shadow:0 8px 30px #0003}.booking-feature:hover{border-color:#fffc;transform:translateY(-10px);box-shadow:0 15px 40px #0000004d}.feature-icon{color:#fff;background:linear-gradient(135deg,#ff6b6b 0%,#ee5a24 100%);border-radius:50%;justify-content:center;align-items:center;width:80px;height:80px;margin:0 auto 25px;font-size:32px;display:flex;box-shadow:0 8px 20px #ff6b6b66}.booking-feature h3{color:#003580;margin-bottom:15px;font-size:1.6rem;font-weight:700}.booking-feature p{color:#555;margin:0;font-size:1.05rem;line-height:1.8}.booking-info-section{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:30px;margin-top:60px;padding:0 20px;display:grid}.booking-info-card{text-align:center;background:#fffffffa;border:3px solid #ff6b6b4d;border-radius:16px;padding:35px;transition:all .3s;box-shadow:0 10px 40px #00000040}.booking-info-card:hover{border-color:#ff6b6b;transform:translateY(-8px);box-shadow:0 15px 50px #00000059}.booking-info-card h3{color:#003580;margin-bottom:15px;font-size:1.5rem;font-weight:700}.booking-info-card p{color:#555;margin:0;font-size:1.05rem;line-height:1.7}@media (width<=968px){.booking{padding:80px 0}.booking .section-title{font-size:2.5rem}.booking-cta-card{padding:40px 30px}.booking-cta-title{font-size:2rem}.booking-features-grid{grid-template-columns:1fr;gap:20px}}@media (width<=768px){.booking{padding:60px 0}.booking .section-title{font-size:2rem}.booking .section-subtitle{font-size:1.1rem}.booking-cta-card{margin:30px auto;padding:30px 20px}.booking-cta-title{font-size:1.8rem}.booking-cta-description{margin-bottom:30px;font-size:1rem}.booking-button-large{width:100%;padding:20px 40px;font-size:1.2rem}.booking-contact-buttons{flex-direction:column}.booking-feature{padding:30px 20px}.feature-icon{width:70px;height:70px;font-size:28px}.booking-feature h3{font-size:1.4rem}}@media (width<=480px){.booking-cta-title{font-size:1.5rem}.booking-button-large{padding:18px 30px;font-size:1.1rem}.feature-icon{width:60px;height:60px;font-size:24px}.booking-feature h3{font-size:1.3rem}.booking-feature p{font-size:1rem}.booking-info-section{grid-template-columns:1fr;padding:0 10px}.booking-info-card{padding:25px 20px}.booking-info-card h3{font-size:1.3rem}}
