:root{--primary:#e8501a;--secondary:#2a9d8f;--accent:#f4c20d;--dark:#0b3d45;--white:#fff;--light-bg:#f0fbfa;--light-teal:#e8f7f5;--text-primary:#1a1a1a;--text-secondary:#555;--border:#e0e0e0;--shadow:#e8501a26;--nav-height:72px}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--white);color:var(--text-primary);font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;overflow-x:hidden}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button{cursor:pointer;font-family:inherit}.container{max-width:1200px;margin:0 auto;padding:0 24px}.section{padding:80px 0}.section-sm{padding:48px 0}.section-header{text-align:center;margin-bottom:48px}.section-header h2{color:var(--dark);margin-bottom:12px;font-size:clamp(28px,4vw,40px);font-weight:800}.section-header p{color:var(--text-secondary);max-width:560px;margin:0 auto;font-size:16px;line-height:1.7}.section-header .accent-line{background:var(--primary);border-radius:2px;width:60px;height:4px;margin:16px auto 0}.btn{cursor:pointer;border:none;border-radius:8px;align-items:center;gap:8px;padding:13px 28px;font-size:15px;font-weight:600;text-decoration:none;transition:all .25s;display:inline-flex}.btn-primary{background:var(--primary);color:var(--white)}.btn-primary:hover{background:#c9401a;transform:translateY(-1px)}.btn-secondary{color:var(--white);border:2px solid var(--white);background:0 0}.btn-secondary:hover{background:var(--white);color:var(--primary)}.btn-outline{color:var(--primary);border:2px solid var(--primary);background:0 0}.btn-outline:hover{background:var(--primary);color:var(--white)}.btn-teal{background:var(--secondary);color:var(--white)}.btn-teal:hover{background:#228b7e}.page-loading{min-height:60vh;color:var(--text-secondary);justify-content:center;align-items:center;font-size:16px;display:flex}.spinner{border:3px solid var(--border);border-top-color:var(--primary);border-radius:50%;width:40px;height:40px;margin:0 auto 16px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.hero{background:var(--dark);position:relative;overflow:hidden}.hero-bg{opacity:.45;background-position:50%;background-repeat:no-repeat;background-size:cover;position:absolute;inset:0}.hero-content{z-index:2;color:var(--white);position:relative}.card{background:var(--white);border-radius:16px;transition:transform .3s,box-shadow .3s;overflow:hidden;box-shadow:0 4px 20px #00000014}.card:hover{transform:translateY(-6px);box-shadow:0 12px 36px #00000024}.card-img{object-fit:cover;width:100%;height:220px}.card-img-placeholder{background:var(--light-bg);justify-content:center;align-items:center;width:100%;height:220px;font-size:48px;display:flex}.card-body{padding:20px}.card-title{color:var(--dark);margin-bottom:6px;font-size:17px;font-weight:700}.card-location{color:var(--text-secondary);align-items:center;gap:4px;margin-bottom:10px;font-size:13px;display:flex}.card-price{color:var(--primary);margin-bottom:4px;font-size:20px;font-weight:800}.card-price span{color:var(--text-secondary);font-size:13px;font-weight:400}.card-tags{flex-wrap:wrap;gap:6px;margin-bottom:14px;display:flex}.tag{background:var(--light-teal);color:var(--secondary);border-radius:20px;padding:3px 10px;font-size:11px;font-weight:600}.tag-star{color:#ca8a04;background:#fef9c3}.cards-grid{grid-template-columns:repeat(3,1fr);gap:28px;display:grid}.form-group{flex-direction:column;gap:6px;display:flex}.form-group label{color:var(--text-primary);font-size:13px;font-weight:600}.form-group input,.form-group select,.form-group textarea{border:1.5px solid var(--border);color:var(--text-primary);background:var(--white);border-radius:8px;width:100%;padding:12px 14px;font-family:inherit;font-size:14px;transition:border-color .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--primary);outline:none}.form-group textarea{resize:vertical;min-height:100px}.form-grid-2{grid-template-columns:1fr 1fr;gap:16px;display:grid}.badge{border-radius:20px;padding:4px 12px;font-size:12px;font-weight:600;display:inline-block}.badge-primary{background:var(--primary);color:#fff}.badge-teal{background:var(--secondary);color:#fff}.badge-accent{background:var(--accent);color:var(--dark)}.empty-state{text-align:center;color:var(--text-secondary);padding:80px 20px}.empty-state .icon{margin-bottom:16px;font-size:56px}.empty-state h3{margin-bottom:8px;font-size:20px;font-weight:700}.empty-state p{font-size:15px}.page-hero{background:var(--dark);text-align:center;height:420px;padding-top:var(--nav-height);justify-content:center;align-items:center;margin-top:0;display:flex;position:relative}.page-hero-bg{opacity:.4;background-position:50%;background-size:cover;position:absolute;inset:0}.page-hero-content{z-index:2;color:var(--white);position:relative}.page-hero-content h1{margin-bottom:12px;font-size:clamp(32px,5vw,52px);font-weight:900}.page-hero-content p{opacity:.85;font-size:17px}.whatsapp-float{z-index:999;background:#25d366;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;text-decoration:none;transition:transform .3s,box-shadow .3s;display:flex;position:fixed;bottom:28px;right:28px;box-shadow:0 4px 20px #25d36666}.whatsapp-float:hover{transform:scale(1.1);box-shadow:0 8px 30px #25d36680}.whatsapp-float svg{fill:#fff;width:30px;height:30px}.pagination{flex-wrap:wrap;justify-content:center;align-items:center;gap:6px;margin-top:40px;display:flex}.pagination button{border:1.5px solid var(--border);background:var(--white);color:var(--text-primary);cursor:pointer;border-radius:8px;padding:7px 14px;font-family:inherit;font-size:14px;font-weight:500;transition:all .2s}.pagination button:hover:not(:disabled){background:var(--primary);color:var(--white);border-color:var(--primary)}.pagination button.active{background:var(--primary);color:var(--white);border-color:var(--primary);font-weight:700}.pagination button:disabled{opacity:.35;cursor:not-allowed}@media (width<=1024px){.cards-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=768px){.section{padding:56px 0}.cards-grid,.form-grid-2{grid-template-columns:1fr}.container{padding:0 16px}.page-hero{height:260px}}.newsletter-section{background:linear-gradient(135deg, var(--dark) 0%, #0d4f5e 100%);padding:72px 0;position:relative;overflow:hidden}.newsletter-section:before{content:"";background:var(--primary);opacity:.08;border-radius:50%;width:300px;height:300px;position:absolute;top:-60px;right:-60px}.newsletter-section:after{content:"";background:var(--secondary);opacity:.08;border-radius:50%;width:250px;height:250px;position:absolute;bottom:-80px;left:-40px}.newsletter-inner{z-index:1;grid-template-columns:1fr 1fr;align-items:center;gap:48px;display:grid;position:relative}.newsletter-badge{color:var(--accent);background:#e8501a33;border:1px solid #f4c20d4d;border-radius:20px;margin-bottom:14px;padding:5px 14px;font-size:13px;font-weight:600;display:inline-block}.newsletter-text h2{color:var(--white);margin-bottom:12px;font-size:clamp(24px,3vw,36px);font-weight:800;line-height:1.2}.newsletter-text p{color:#ffffffbf;font-size:15px;line-height:1.7}.newsletter-input-wrap{gap:10px;margin-bottom:10px;display:flex}.newsletter-input-wrap input{color:var(--white);background:#ffffff14;border:1.5px solid #ffffff26;border-radius:8px;flex:1;padding:13px 16px;font-family:inherit;font-size:14px;transition:border-color .2s}.newsletter-input-wrap input::placeholder{color:#ffffff73}.newsletter-input-wrap input:focus{border-color:var(--primary);background:#ffffff1f;outline:none}.newsletter-input-wrap input:disabled{opacity:.6}.newsletter-note{color:#ffffff73;margin-top:6px;font-size:12px}.newsletter-error{color:#ff6b6b;margin-top:6px;font-size:13px}.newsletter-success{background:#2a9d8f26;border:1px solid #2a9d8f66;border-radius:10px;align-items:center;gap:12px;padding:20px;display:flex}.newsletter-success p{color:var(--white);font-size:15px;font-weight:500}.success-icon{font-size:24px}@media (width<=768px){.newsletter-inner{text-align:center;grid-template-columns:1fr;gap:28px}.newsletter-input-wrap{flex-direction:column}.newsletter-badge{display:inline-block}}.site-footer{background:var(--dark);color:#ffffffb3;padding:64px 0 28px}.footer-grid{grid-template-columns:2fr 1fr 1fr 1fr;gap:40px;margin-bottom:48px;display:grid}.footer-brand-row{align-items:center;gap:10px;margin-bottom:16px;display:flex}.footer-brand-icon{font-size:28px}.footer-brand-title{color:var(--primary);font-size:20px;font-weight:800;line-height:1}.footer-brand-sub{color:#fff6;letter-spacing:.1em;font-size:11px}.footer-brand-desc{max-width:280px;font-size:14px;line-height:1.7}.footer-social{gap:10px;margin-top:20px;display:flex}.footer-social-icon{cursor:pointer;background:#ffffff14;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;font-size:16px;transition:background .2s;display:flex}.footer-social-icon:hover{background:var(--primary)}.footer-col h4{color:var(--white);margin-bottom:16px;font-size:15px;font-weight:700}.footer-col ul{flex-direction:column;gap:10px;list-style:none;display:flex}.footer-col ul a{color:#fff9;font-size:14px;text-decoration:none;transition:color .2s}.footer-col ul a:hover{color:var(--primary)}.footer-contact-item{align-items:flex-start;gap:10px;display:flex}.footer-contact-icon{font-size:16px}.footer-contact-text{color:#fff9;font-size:14px;line-height:1.6}.footer-bottom{border-top:1px solid #ffffff1a;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding-top:24px;display:flex}.footer-bottom p{font-size:13px}.footer-bottom-links{gap:20px;display:flex}.footer-bottom-links span{cursor:pointer;color:#ffffff80;font-size:13px;transition:color .2s}.footer-bottom-links span:hover{color:var(--primary)}@media (width<=768px){.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}}@media (width<=480px){.footer-grid{grid-template-columns:1fr}}.footer-brand-icon{object-fit:contain;width:auto;height:36px}.footer-social-icon{color:#fffc;justify-content:center;align-items:center;display:flex}.footer-social-icon:hover{color:var(--white)}.navbar{height:var(--nav-height);z-index:1000;transition:all .3s;position:fixed;top:0;left:0;right:0}.logo-icon img,img.logo-icon{object-fit:contain;width:auto;height:40px}.navbar.transparent{background:0 0}.navbar.scrolled{background:var(--white);border-bottom:2px solid var(--secondary);box-shadow:0 2px 16px #00000014}.navbar-inner{justify-content:space-between;align-items:center;max-width:1280px;height:100%;margin:0 auto;padding:0 24px;display:flex}.navbar-logo{align-items:center;gap:10px;text-decoration:none;display:flex}.navbar-logo .logo-icon{font-size:28px}.navbar-logo .logo-text h2{color:var(--primary);font-size:20px;font-weight:800;line-height:1}.navbar-logo .logo-text p{color:#ffffffb3;letter-spacing:.1em;text-transform:uppercase;font-size:10px}.navbar-links{align-items:center;gap:4px;list-style:none;display:flex}.navbar-links a{color:#ffffffd9;white-space:nowrap;border-radius:6px;padding:8px 12px;font-size:15px;font-weight:800;text-decoration:none;transition:all .2s}.navbar.scrolled .navbar-links a{color:var(--dark)}.navbar-links a:hover,.navbar-links a.active{color:var(--primary);background:#ffffff14}.navbar.scrolled .navbar-links a:hover,.navbar.scrolled .navbar-links a.active{color:var(--primary);background:var(--light-teal)}.navbar-controls{align-items:center;gap:8px;display:flex}.nav-select{color:var(--white);cursor:pointer;background:#ffffff1a;border:1px solid #fff3;border-radius:6px;outline:none;padding:6px 10px;font-family:inherit;font-size:13px;transition:all .2s}.nav-select:hover{background:#ffffff2e}.nav-select option{background:var(--dark);color:var(--white)}.navbar.scrolled .nav-select{background:var(--light-teal);border-color:var(--secondary);color:var(--dark)}.navbar.scrolled .nav-select option{background:var(--white);color:var(--dark)}.navbar.scrolled .hamburger span{background:var(--dark)}.hamburger{cursor:pointer;background:0 0;border:none;flex-direction:column;gap:5px;padding:8px;display:none}.hamburger span{background:var(--white);border-radius:2px;width:24px;height:2px;transition:all .3s;display:block}.hamburger.open span:first-child{transform:rotate(45deg)translate(5px,5px)}.hamburger.open span:nth-child(2){opacity:0}.hamburger.open span:nth-child(3){transform:rotate(-45deg)translate(5px,-5px)}.mobile-menu{top:var(--nav-height);background:var(--dark);z-index:999;border-top:1px solid #ffffff1a;padding:16px 24px 24px;display:none;position:fixed;left:0;right:0}.mobile-menu.open{display:block}.mobile-menu ul{flex-direction:column;gap:4px;margin-bottom:16px;list-style:none;display:flex}.mobile-menu ul a{color:#ffffffd9;border-radius:8px;padding:12px 16px;font-size:15px;font-weight:500;text-decoration:none;transition:all .2s;display:block}.mobile-menu ul a:hover{color:var(--primary);background:#ffffff14}.mobile-controls{border-top:1px solid #ffffff1a;gap:10px;padding-top:16px;display:flex}.mobile-controls .nav-select{flex:1}@media (width<=1024px){.navbar-links{display:none}.hamburger{display:flex}}@media (width<=768px){.navbar-controls{display:none}}.home-hero{background:var(--dark);align-items:center;height:100vh;min-height:620px;display:flex;position:relative}.home-hero .hero-bg{opacity:.5}.home-hero .hero-content{max-width:1200px;padding:0 24px;padding-top:var(--nav-height);margin:0 auto}.home-hero h1{max-width:700px;margin-bottom:20px;font-size:clamp(36px,5.5vw,68px);font-weight:900;line-height:1.1}.home-hero h1 span{color:var(--primary)}.home-hero p{opacity:.88;max-width:540px;margin-bottom:36px;font-size:clamp(15px,2vw,18px);line-height:1.7}.hero-btns{flex-wrap:wrap;gap:14px;display:flex}.hero-scroll{color:#fff9;flex-direction:column;align-items:center;gap:8px;font-size:12px;animation:2s infinite bounce;display:flex;position:absolute;bottom:32px;left:50%;transform:translate(-50%)}.hero-scroll-arrow{border-bottom:2px solid #fff9;border-right:2px solid #fff9;width:20px;height:20px;transform:rotate(45deg)}@keyframes bounce{0%,to{transform:translate(-50%)translateY(0)}50%{transform:translate(-50%)translateY(8px)}}.destinations-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.destination-card{background-position:50%;background-repeat:no-repeat;background-size:cover;border-radius:16px;height:260px;text-decoration:none;transition:transform .3s,box-shadow .3s;display:block;position:relative;overflow:hidden}.destination-card:hover{transform:translateY(-4px);box-shadow:0 20px 40px #0000004d}.destination-overlay{background:linear-gradient(#0000 0%,#0000001a 40%,#000000bf 100%);align-items:flex-end;padding:24px;transition:background .3s;display:flex;position:absolute;inset:0}.destination-card:hover .destination-overlay{background:linear-gradient(#0000 0%,#0003 40%,#e8501acc 100%)}.destination-label h3{color:#fff;margin:0 0 4px;font-size:1.25rem;font-weight:700}.destination-label p{color:#ffffffd9;margin:0;font-size:.85rem}.dest-img-placeholder{display:none}.featured-section{background:var(--light-bg)}.featured-section.alt{background:var(--white)}.view-all-wrap{text-align:center;margin-top:40px}.why-grid{grid-template-columns:repeat(4,1fr);gap:28px;display:grid}.why-card{text-align:center;background:var(--white);box-shadow:0 4px 20px var(--shadow);border-radius:16px;padding:32px 20px;transition:transform .3s}.why-card:hover{transform:translateY(-4px)}.why-icon{margin-bottom:16px;font-size:40px}.why-card h3{color:var(--dark);margin-bottom:10px;font-size:16px;font-weight:700}.why-card p{color:var(--text-secondary);font-size:14px;line-height:1.6}.testimonials-section{position:relative;overflow:hidden}.testimonials-section:before{content:"";filter:blur(6px)brightness(.35);z-index:0;background-image:url(/assets/diani-B-ssnYDQ.webp);background-position:50%;background-size:cover;position:absolute;inset:0;transform:scale(1.05)}.testimonials-section .container{z-index:1;position:relative}.testimonials-section .section-header h2{color:var(--white)}.testimonials-section .section-header p{color:#fff9}.testimonials-section .accent-line{background:var(--primary)}.testimonials-grid{grid-template-columns:repeat(3,1fr);gap:24px;margin-bottom:48px;display:grid}.testimonial-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff14;border:1px solid #ffffff26;border-radius:16px;padding:28px}.testimonial-stars{color:var(--accent);margin-bottom:14px;font-size:16px}.testimonial-text{color:#ffffffe6;margin-bottom:20px;font-size:14px;font-style:italic;line-height:1.7}.testimonial-author{align-items:center;gap:12px;display:flex}.testimonial-avatar{background:var(--primary);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:42px;height:42px;font-size:16px;font-weight:700;display:flex}.testimonial-name{color:var(--white);font-size:14px;font-weight:700}.testimonial-location{color:#ffffff80;font-size:12px}.testimonial-form-wrap{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff14;border:1px solid #ffffff26;border-radius:20px;max-width:640px;margin:0 auto;padding:36px}.testimonial-form-wrap h3{color:var(--white);text-align:center;margin-bottom:24px;font-size:22px;font-weight:700}.testimonial-form-wrap .form-group label{color:#fffc}.testimonial-form-wrap .form-group input,.testimonial-form-wrap .form-group select,.testimonial-form-wrap .form-group textarea{color:var(--white);background:#ffffff14;border-color:#ffffff26}.testimonial-form-wrap .form-group input::placeholder,.testimonial-form-wrap .form-group textarea::placeholder{color:#ffffff59}.star-select{gap:8px;margin-bottom:4px;display:flex}.star-btn{cursor:pointer;opacity:.4;background:0 0;border:none;padding:0;font-size:24px;transition:opacity .2s,transform .2s}.star-btn.active{opacity:1}.star-btn:hover{transform:scale(1.2)}.success-msg{border:1px solid var(--secondary);color:var(--secondary);text-align:center;background:#2a9d8f33;border-radius:8px;margin-bottom:16px;padding:14px;font-size:14px}.gallery-section{background:var(--light-bg)}.gallery-grid{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.gallery-item{cursor:pointer;border-radius:10px;height:200px;position:relative;overflow:hidden}.gallery-item img{object-fit:cover;width:100%;height:100%;transition:transform .4s}.gallery-item:hover img{transform:scale(1.08)}.gallery-upload-btn{border:2px dashed var(--border);background:var(--white);height:200px;color:var(--text-secondary);cursor:pointer;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:8px;font-size:14px;transition:all .2s;display:flex}.gallery-upload-btn:hover{border-color:var(--primary);color:var(--primary)}@media (width<=1024px){.destinations-grid{grid-template-rows:auto;grid-template-columns:repeat(2,1fr)}}@media (width<=768px){.hero-btns{flex-direction:column;width:100%}.hero-btns .btn{justify-content:center;width:100%}}@media (width<=1024px){.why-grid,.testimonials-grid{grid-template-columns:repeat(2,1fr)}.gallery-grid{grid-template-columns:repeat(3,1fr)}}@media (width<=768px){.why-grid,.testimonials-grid{grid-template-columns:1fr}.gallery-grid{grid-template-columns:repeat(2,1fr)}.home-hero{height:auto;min-height:100svh}.destinations-grid{grid-template-columns:1fr}}.filter-section{background:var(--white);border-bottom:1px solid var(--border);top:var(--nav-height);z-index:100;padding:20px 0;position:sticky}.filter-inner{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.filter-inner select,.filter-inner input{border:1.5px solid var(--border);color:var(--text-primary);background:var(--white);border-radius:8px;min-width:180px;padding:10px 14px;font-family:inherit;font-size:14px;transition:border-color .2s}.filter-inner select:focus,.filter-inner input:focus{border-color:var(--primary);outline:none}.filter-label{color:var(--text-secondary);white-space:nowrap;font-size:14px;font-weight:600}.results-count{color:var(--text-secondary);margin-left:auto;font-size:14px}.hotel-card{background:var(--white);color:inherit;border-radius:16px;text-decoration:none;transition:transform .3s,box-shadow .3s;display:block;overflow:hidden;box-shadow:0 4px 20px #00000014}.hotel-card:hover{transform:translateY(-6px);box-shadow:0 12px 36px #00000024}.hotel-card-img{height:220px;position:relative;overflow:hidden}.hotel-card-img img{object-fit:cover;width:100%;height:100%;transition:transform .4s}.hotel-card:hover .hotel-card-img img{transform:scale(1.06)}.hotel-card-img-placeholder{background:linear-gradient(135deg,#fff8f5,#e8f7f5);justify-content:center;align-items:center;width:100%;height:100%;font-size:56px;display:flex}.hotel-badge{background:var(--primary);color:#fff;border-radius:20px;padding:4px 10px;font-size:11px;font-weight:700;position:absolute;top:12px;left:12px}.hotel-card-body{padding:18px}.hotel-stars{color:var(--accent);margin-bottom:6px;font-size:14px}.hotel-card-title{color:var(--dark);margin-bottom:6px;font-size:16px;font-weight:700;line-height:1.3}.hotel-card-location{color:var(--text-secondary);align-items:center;gap:4px;margin-bottom:10px;font-size:13px;display:flex}.hotel-card-amenities{flex-wrap:wrap;gap:5px;margin-bottom:14px;display:flex}.amenity-tag{background:var(--light-bg);color:var(--text-secondary);border-radius:4px;padding:3px 8px;font-size:11px}.hotel-card-footer{border-top:1px solid var(--border);justify-content:space-between;align-items:center;padding-top:12px;display:flex}.hotel-card-price{color:var(--primary);font-size:20px;font-weight:800}.hotel-card-price span{color:var(--text-secondary);font-size:12px;font-weight:400}.hotel-card-rooms{color:var(--text-secondary);font-size:12px}.hotels-page-hero{background-position:50%;background-repeat:no-repeat;background-size:cover}.detail-layout{grid-template-columns:1fr 380px;align-items:start;gap:40px;display:grid}.detail-images{border-radius:16px;margin-bottom:32px;overflow:hidden}.detail-main-img{object-fit:cover;width:100%;height:420px}.detail-thumbnails{gap:8px;margin-top:8px;display:flex;overflow-x:auto}.detail-thumb{object-fit:cover;cursor:pointer;border:2px solid #0000;border-radius:8px;flex-shrink:0;width:100px;height:70px;transition:border-color .2s}.detail-thumb.active{border-color:var(--primary)}.detail-info h1{margin-bottom:8px;font-size:clamp(24px,3vw,34px);font-weight:800}.detail-meta{flex-wrap:wrap;align-items:center;gap:16px;margin-bottom:20px;display:flex}.detail-meta-item{color:var(--text-secondary);align-items:center;gap:6px;font-size:14px;display:flex}.detail-description{color:var(--text-secondary);margin-bottom:28px;font-size:15px;line-height:1.8}.detail-amenities h3{margin-bottom:14px;font-size:18px;font-weight:700}.amenities-list{flex-wrap:wrap;gap:8px;margin-bottom:32px;display:flex}.amenity-pill{background:var(--light-teal);color:var(--secondary);border-radius:20px;padding:6px 14px;font-size:13px;font-weight:500}@media (width<=1200px){.detail-layout{grid-template-columns:1fr}}@media (width<=768px){.filter-section{padding:12px 0}.filter-inner{grid-template-columns:1fr 1fr;align-items:center;gap:8px;display:grid}.filter-inner select,.filter-inner input{min-width:unset;width:100%;padding:10px 12px;font-size:13px}.filter-label{display:none}.results-count{text-align:center;grid-column:span 2;font-size:13px}}:root{--PhoneInput-color--focus:#03b2cb;--PhoneInputInternationalIconPhone-opacity:.8;--PhoneInputInternationalIconGlobe-opacity:.65;--PhoneInputCountrySelect-marginRight:.35em;--PhoneInputCountrySelectArrow-width:.3em;--PhoneInputCountrySelectArrow-marginLeft:var(--PhoneInputCountrySelect-marginRight);--PhoneInputCountrySelectArrow-borderWidth:1px;--PhoneInputCountrySelectArrow-opacity:.45;--PhoneInputCountrySelectArrow-color:currentColor;--PhoneInputCountrySelectArrow-color--focus:var(--PhoneInput-color--focus);--PhoneInputCountrySelectArrow-transform:rotate(45deg);--PhoneInputCountryFlag-aspectRatio:1.5;--PhoneInputCountryFlag-height:1em;--PhoneInputCountryFlag-borderWidth:1px;--PhoneInputCountryFlag-borderColor:#00000080;--PhoneInputCountryFlag-borderColor--focus:var(--PhoneInput-color--focus);--PhoneInputCountryFlag-backgroundColor--loading:#0000001a}.PhoneInput{align-items:center;display:flex}.PhoneInputInput{flex:1;min-width:0}.PhoneInputCountryIcon{width:calc(var(--PhoneInputCountryFlag-height) * var(--PhoneInputCountryFlag-aspectRatio));height:var(--PhoneInputCountryFlag-height)}.PhoneInputCountryIcon--square{width:var(--PhoneInputCountryFlag-height)}.PhoneInputCountryIcon--border{background-color:var(--PhoneInputCountryFlag-backgroundColor--loading);box-shadow:0 0 0 var(--PhoneInputCountryFlag-borderWidth) var(--PhoneInputCountryFlag-borderColor), inset 0 0 0 var(--PhoneInputCountryFlag-borderWidth) var(--PhoneInputCountryFlag-borderColor)}.PhoneInputCountryIconImg{width:100%;height:100%;display:block}.PhoneInputInternationalIconPhone{opacity:var(--PhoneInputInternationalIconPhone-opacity)}.PhoneInputInternationalIconGlobe{opacity:var(--PhoneInputInternationalIconGlobe-opacity)}.PhoneInputCountry{margin-right:var(--PhoneInputCountrySelect-marginRight);align-self:stretch;align-items:center;display:flex;position:relative}.PhoneInputCountrySelect{z-index:1;opacity:0;cursor:pointer;border:0;width:100%;height:100%;position:absolute;top:0;left:0}.PhoneInputCountrySelect[disabled],.PhoneInputCountrySelect[readonly]{cursor:default}.PhoneInputCountrySelectArrow{content:"";width:var(--PhoneInputCountrySelectArrow-width);height:var(--PhoneInputCountrySelectArrow-width);margin-left:var(--PhoneInputCountrySelectArrow-marginLeft);border-style:solid;border-color:var(--PhoneInputCountrySelectArrow-color);border-top-width:0;border-bottom-width:var(--PhoneInputCountrySelectArrow-borderWidth);border-left-width:0;border-right-width:var(--PhoneInputCountrySelectArrow-borderWidth);transform:var(--PhoneInputCountrySelectArrow-transform);opacity:var(--PhoneInputCountrySelectArrow-opacity);display:block}.PhoneInputCountrySelect:focus+.PhoneInputCountryIcon+.PhoneInputCountrySelectArrow{opacity:1;color:var(--PhoneInputCountrySelectArrow-color--focus)}.PhoneInputCountrySelect:focus+.PhoneInputCountryIcon--border{box-shadow:0 0 0 var(--PhoneInputCountryFlag-borderWidth) var(--PhoneInputCountryFlag-borderColor--focus), inset 0 0 0 var(--PhoneInputCountryFlag-borderWidth) var(--PhoneInputCountryFlag-borderColor--focus)}.PhoneInputCountrySelect:focus+.PhoneInputCountryIcon .PhoneInputInternationalIconGlobe{opacity:1;color:var(--PhoneInputCountrySelectArrow-color--focus)}.reservation-card{background:var(--white);top:calc(var(--nav-height) + 24px);border-radius:20px;padding:32px;position:sticky;box-shadow:0 8px 32px #0000001a}.reservation-card h3{color:var(--dark);margin-bottom:6px;font-size:20px;font-weight:800}.reservation-price{color:var(--primary);margin-bottom:24px;font-size:26px;font-weight:900}.reservation-price span{color:var(--text-secondary);font-size:14px;font-weight:400}.reservation-form{flex-direction:column;gap:14px;display:flex}.reservation-form .form-group label{text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary);font-size:12px;font-weight:600}.flight-check{background:var(--light-bg);border:1.5px solid var(--border);border-radius:10px;align-items:flex-start;gap:10px;padding:14px;display:flex}.flight-check input[type=checkbox]{width:16px;height:16px;accent-color:var(--primary);flex-shrink:0;margin-top:2px}.flight-check label{color:var(--text-primary);cursor:pointer;font-size:13px;line-height:1.5}.reservation-submit{background:var(--primary);color:var(--white);cursor:pointer;border:none;border-radius:10px;width:100%;margin-top:4px;padding:15px;font-size:15px;font-weight:700;transition:all .2s}.reservation-submit:hover{background:#c9401a;transform:translateY(-1px)}.reservation-submit:disabled{opacity:.6;cursor:not-allowed;transform:none}.reservation-note{color:var(--text-secondary);text-align:center;margin-top:8px;font-size:12px}.reservation-success{color:#15803d;text-align:center;background:#dcfce7;border:1px solid #16a34a;border-radius:10px;margin-bottom:16px;padding:16px;font-size:14px;font-weight:600}.reservation-error{color:#dc2626;background:#fee2e2;border:1px solid #dc2626;border-radius:8px;margin-bottom:12px;padding:12px;font-size:13px}.date-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}@media (width<=768px){.date-grid{grid-template-columns:1fr}.reservation-card{border-radius:16px;margin-top:32px;padding:20px 16px;position:static}.reservation-price{font-size:22px}}.children-ages-grid{grid-template-columns:repeat(auto-fit,minmax(80px,1fr));gap:8px;display:grid}.children-ages-grid input{border:1.5px solid var(--border);border-radius:8px;padding:10px 12px;font-family:inherit;font-size:14px}.children-ages-grid input:focus{border-color:var(--primary);outline:none}.villa-card{background:var(--white);color:inherit;border-radius:16px;text-decoration:none;transition:transform .3s,box-shadow .3s;display:block;overflow:hidden;box-shadow:0 4px 20px #00000014}.villa-card:hover{transform:translateY(-6px);box-shadow:0 12px 36px #00000024}.villa-card-img{height:220px;position:relative;overflow:hidden}.villa-card-img img{object-fit:cover;width:100%;height:100%;transition:transform .4s}.villa-card:hover .villa-card-img img{transform:scale(1.06)}.villa-card-img-placeholder{background:linear-gradient(135deg,#e8f7f5,#fff8f5);justify-content:center;align-items:center;width:100%;height:100%;font-size:56px;display:flex}.villa-badge{background:var(--secondary);color:#fff;border-radius:20px;padding:4px 10px;font-size:11px;font-weight:700;position:absolute;top:12px;left:12px}.villa-card-body{padding:18px}.villa-card-title{color:var(--dark);margin-bottom:6px;font-size:16px;font-weight:700}.villa-card-location{color:var(--text-secondary);margin-bottom:12px;font-size:13px}.villa-specs{gap:14px;margin-bottom:14px;display:flex}.villa-spec{color:var(--text-secondary);align-items:center;gap:5px;font-size:13px;display:flex}.villa-card-footer{border-top:1px solid var(--border);justify-content:space-between;align-items:center;padding-top:12px;display:flex}.villa-card-price{color:var(--secondary);font-size:20px;font-weight:800}.villa-card-price span{color:var(--text-secondary);font-size:12px;font-weight:400}.villas-page-hero{background-position:50%;background-repeat:no-repeat;background-size:cover}@media (width<=768px){.villa-specs{flex-wrap:wrap;gap:8px}}.package-card{background:var(--white);color:inherit;border-radius:16px;text-decoration:none;transition:transform .3s,box-shadow .3s;display:block;overflow:hidden;box-shadow:0 4px 20px #00000014}.package-card:hover{transform:translateY(-6px);box-shadow:0 12px 36px #00000024}.package-card-img{height:220px;position:relative;overflow:hidden}.package-card-img img{object-fit:cover;width:100%;height:100%;transition:transform .4s}.package-card:hover .package-card-img img{transform:scale(1.06)}.package-card-img-placeholder{background:linear-gradient(135deg, var(--primary), var(--accent));justify-content:center;align-items:center;width:100%;height:100%;font-size:56px;display:flex}.package-category-badge{background:var(--accent);color:var(--dark);text-transform:capitalize;border-radius:20px;padding:4px 10px;font-size:11px;font-weight:700;position:absolute;top:12px;left:12px}.package-card-body{padding:18px}.package-card-title{margin-bottom:8px;font-size:16px;font-weight:700}.package-meta{gap:14px;margin-bottom:10px;display:flex}.package-meta-item{color:var(--text-secondary);align-items:center;gap:4px;font-size:13px;display:flex}.package-includes{color:var(--text-secondary);-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;margin-bottom:14px;font-size:13px;line-height:1.5;display:-webkit-box;overflow:hidden}.package-card-footer{border-top:1px solid var(--border);justify-content:space-between;align-items:center;padding-top:12px;display:flex}.package-price{color:var(--primary);font-size:20px;font-weight:800}.package-price span{color:var(--text-secondary);font-size:12px;font-weight:400}.packages-page-hero{background-position:50%;background-repeat:no-repeat;background-size:cover}.package-includes-list{flex-wrap:wrap;gap:8px;margin-bottom:28px;display:flex}.include-item{background:var(--light-bg);color:var(--text-primary);border-radius:8px;align-items:center;gap:6px;padding:8px 14px;font-size:14px;display:flex}.include-item:before{content:"✓";color:var(--secondary);font-weight:700}.detail-layout>div:first-child{min-width:0}.detail-info{overflow-wrap:break-word;word-break:break-word;min-width:0}.detail-description{overflow-wrap:break-word;word-break:break-word}@media (width<=768px){.package-meta{flex-wrap:wrap}}.about-content{grid-template-columns:1fr 1fr;align-items:center;gap:60px;display:grid}.about-text h2{margin-bottom:20px;font-size:clamp(28px,3.5vw,40px);font-weight:800;line-height:1.2}.about-text h2 span{color:var(--primary)}.about-text p{color:var(--text-secondary);margin-bottom:16px;font-size:15px;line-height:1.8}.about-img-wrap{border-radius:20px;height:480px;overflow:hidden}.about-img-wrap img{object-fit:cover;width:100%;height:100%}.about-img-placeholder{background:linear-gradient(135deg, var(--light-teal), var(--light-bg));justify-content:center;align-items:center;width:100%;height:100%;font-size:80px;display:flex}.mission-grid{grid-template-columns:repeat(3,1fr);gap:28px;margin-top:48px;display:grid}.mission-card{text-align:center;background:var(--white);box-shadow:0 4px 20px var(--shadow);border-radius:16px;padding:36px 24px}.mission-icon{margin-bottom:16px;font-size:44px}.mission-card h3{margin-bottom:10px;font-size:17px;font-weight:700}.mission-card p{color:var(--text-secondary);font-size:14px;line-height:1.6}@media (width<=768px){.about-content{grid-template-columns:1fr}.about-img-wrap{height:300px}.mission-grid{grid-template-columns:1fr}}.blog-grid{grid-template-columns:repeat(3,1fr);gap:28px;display:grid}.blog-card{background:var(--white);color:inherit;border-radius:16px;text-decoration:none;transition:transform .3s,box-shadow .3s;display:block;overflow:hidden;box-shadow:0 4px 20px #00000012}.blog-card:hover{transform:translateY(-6px);box-shadow:0 12px 36px #00000021}.blog-card-img{height:200px;overflow:hidden}.blog-card-img img{object-fit:cover;width:100%;height:100%;transition:transform .4s}.blog-card:hover .blog-card-img img{transform:scale(1.06)}.blog-card-img-placeholder{background:linear-gradient(135deg, var(--light-bg), var(--light-teal));justify-content:center;align-items:center;width:100%;height:100%;font-size:48px;display:flex}.blog-card-body{padding:20px}.blog-category{text-transform:uppercase;letter-spacing:.08em;color:var(--primary);margin-bottom:8px;font-size:11px;font-weight:700}.blog-card-title{margin-bottom:10px;font-size:17px;font-weight:700;line-height:1.4}.blog-card-excerpt{color:var(--text-secondary);-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;margin-bottom:16px;font-size:14px;line-height:1.6;display:-webkit-box;overflow:hidden}.blog-card-meta{color:var(--text-secondary);border-top:1px solid var(--border);justify-content:space-between;align-items:center;padding-top:12px;font-size:12px;display:flex}.blog-read-more{color:var(--primary);font-weight:600}.blog-post-layout{grid-template-columns:1fr 320px;align-items:start;gap:48px;display:grid}.blog-post-content h1{margin-bottom:16px;font-size:clamp(26px,3.5vw,40px);font-weight:900;line-height:1.2}.blog-post-meta{color:var(--text-secondary);flex-wrap:wrap;gap:16px;margin-bottom:24px;font-size:13px;display:flex}.blog-post-img{object-fit:cover;border-radius:16px;width:100%;height:420px;margin-bottom:32px}.blog-post-body{color:var(--text-secondary);font-size:16px;line-height:1.85}.blog-post-body h2{color:var(--dark);margin:32px 0 14px;font-size:22px;font-weight:700}.blog-post-body p{margin-bottom:18px}.blog-post-body ul{margin:0 0 18px 24px}.blog-post-body ul li{color:var(--text-secondary);margin-bottom:8px}.blog-sidebar{top:calc(var(--nav-height) + 24px);position:sticky}.blog-sidebar-card{background:var(--white);border-radius:16px;margin-bottom:24px;padding:24px;box-shadow:0 4px 20px #00000012}.blog-sidebar-card h3{border-bottom:2px solid var(--primary);margin-bottom:16px;padding-bottom:12px;font-size:16px;font-weight:700}.sidebar-post{color:inherit;gap:12px;margin-bottom:16px;text-decoration:none;display:flex}.sidebar-post-img{object-fit:cover;border-radius:8px;flex-shrink:0;width:64px;height:52px}.sidebar-post-title{color:var(--dark);font-size:13px;font-weight:600;line-height:1.4}.sidebar-post-date{color:var(--text-secondary);margin-top:4px;font-size:11px}.blog-tags{flex-wrap:wrap;gap:8px;display:flex}.blog-tag{background:var(--light-bg);color:var(--text-secondary);border-radius:20px;padding:5px 12px;font-size:12px;text-decoration:none;transition:all .2s}.blog-tag:hover{background:var(--primary);color:#fff}@media (width<=1024px){.blog-grid{grid-template-columns:repeat(2,1fr)}.blog-post-layout{grid-template-columns:1fr}.blog-sidebar{position:static}}@media (width<=768px){.blog-grid{grid-template-columns:1fr}.blog-post-img{height:260px}}.blog-post-hero-img{border-radius:16px;height:420px;margin-bottom:32px;overflow:hidden}.blog-post-hero-img img{object-fit:cover;width:100%;height:100%}.blog-page-hero{background-color:var(--dark);position:relative;overflow:hidden}.blog-page-hero:before{content:"";background-image:inherit;filter:blur(6px)brightness(.35);z-index:0;background-position:50%;background-size:cover;position:absolute;inset:0;transform:scale(1.05)}.blog-page-hero .page-hero-content{z-index:1;position:relative}.contact-layout{grid-template-columns:1fr 1.4fr;align-items:start;gap:60px;display:grid}.contact-info h2{margin-bottom:16px;font-size:28px;font-weight:800}.contact-info p{color:var(--text-secondary);margin-bottom:32px;font-size:15px;line-height:1.7}.contact-items{flex-direction:column;gap:20px;display:flex}.contact-item{align-items:flex-start;gap:16px;display:flex}.contact-item-icon{background:var(--light-bg);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;font-size:22px;display:flex}.contact-item-text h4{margin-bottom:4px;font-size:15px;font-weight:700}.contact-item-text p{color:var(--text-secondary);margin:0;font-size:14px}.contact-form-card{background:var(--white);border-radius:20px;padding:40px;box-shadow:0 8px 32px #00000014}.contact-form-card h3{margin-bottom:28px;font-size:22px;font-weight:800}.contact-form{flex-direction:column;gap:18px;display:flex}.flight-option{color:var(--text-primary);align-items:center;gap:10px;font-size:14px;display:flex}.flight-option input[type=checkbox]{width:16px;height:16px;accent-color:var(--primary)}.contact-submit{background:var(--primary);color:var(--white);cursor:pointer;border:none;border-radius:10px;width:100%;padding:14px;font-size:15px;font-weight:700;transition:opacity .2s}.contact-submit:hover{opacity:.88}.contact-submit:disabled{opacity:.6;cursor:not-allowed}@media (width<=768px){.contact-layout{grid-template-columns:1fr}.contact-form-card{padding:24px}}.phone-input{border:1.5px solid var(--border);background:var(--white);border-radius:8px;align-items:center;padding:0 14px;transition:border-color .2s;display:flex}.phone-input:focus-within{border-color:var(--primary)}.phone-input .PhoneInputInput{color:var(--text-primary);background:0 0;border:none;outline:none;flex:1;padding:12px 0;font-family:inherit;font-size:14px}.phone-input .PhoneInputCountry{margin-right:10px}.phone-input .PhoneInputCountrySelect{cursor:pointer}
