:root{--primary:#2C5F8D;--secondary:#1D7A6E;--secondary-light:#2A9D8F;--text:#1a1a1a;--text-light:#666;--bg:#FFFFFF;--bg-light:#f8f9fa;--border:#e0e0e0;--shadow:rgba(0,0,0,0.1);--transition:all 0.4s cubic-bezier(0.4,0,0.2,1)}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:'Inter',sans-serif;color:var(--text);background:var(--bg);line-height:1.6;overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:'Playfair Display',serif;font-weight:600;line-height:1.3}img{max-width:100%;height:auto;display:block}a{text-decoration:none;color:inherit;transition:var(--transition)}ul{list-style:none}button{border:none;cursor:pointer;font-family:inherit;transition:var(--transition)}.container{max-width:1400px;margin:0 auto;padding:0 2rem}.skip-link{position:absolute;top:-40px;left:0;background:var(--primary);color:white;padding:8px;z-index:10000}.skip-link:focus{top:0}.navbar{position:fixed;top:0;left:0;right:0;z-index:1000;background:rgba(255,255,255,0.95);backdrop-filter:blur(10px);box-shadow:0 2px 20px var(--shadow);transition:var(--transition)}.navbar.scrolled{padding:0.5rem 0}.nav-content{display:flex;justify-content:space-between;align-items:center;padding:1rem 0}.logo-text{font-family:'Playfair Display',serif;font-size:1.5rem;font-weight:600;color:var(--primary)}.nav-menu{display:flex;gap:2rem;align-items:center}.nav-menu a{font-weight:500;position:relative;padding:0.5rem 0}.nav-menu a::after{content:'';position:absolute;bottom:0;left:0;width:0;height:2px;background:var(--secondary);transition:width 0.3s ease}.nav-menu a:hover::after,.nav-menu a.active::after{width:100%}.cart-link{background:var(--primary);color:white !important;padding:0.5rem 1.5rem !important;border-radius:25px}.cart-link::after{display:none !important}.cart-link:hover{background:var(--secondary);transform:translateY(-2px)}.menu-toggle{display:none;flex-direction:column;gap:5px;background:transparent;padding:0.5rem}.menu-toggle span{width:25px;height:2px;background:var(--text);transition:var(--transition)}.hero{position:relative;height:100vh;display:flex;align-items:center;justify-content:center;overflow:hidden}.hero-carousel{position:absolute;inset:0;z-index:-2}.hero-slide{position:absolute;inset:0;opacity:0;transition:opacity 1.2s ease,transform 6s linear;transform:scale(1)}.hero-slide.active{opacity:1;transform:scale(1.08)}.hero-slide-bg{width:100%;height:100%;background-size:cover;background-position:center;background-repeat:no-repeat}.hero-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(to bottom,rgba(0,0,0,0.25) 0%,rgba(0,0,0,0.15) 40%,rgba(0,0,0,0.4) 80%,rgba(0,0,0,0.6) 100%);z-index:-1}.hero-carousel-info{position:absolute;bottom:5rem;left:50%;transform:translateX(-50%);z-index:10;display:flex;gap:0.5rem}.hero-carousel-item{display:flex;flex-direction:column;align-items:center;gap:0.25rem;padding:0.75rem 1.5rem;border-radius:12px;background:rgba(255,255,255,0.08);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,0.12);color:rgba(255,255,255,0.6);cursor:pointer;transition:all 0.4s ease;text-decoration:none;min-width:130px}.hero-carousel-item:hover{background:rgba(255,255,255,0.14);color:white}.hero-carousel-item.active{background:rgba(255,255,255,0.15);border-color:rgba(212,180,131,0.5);color:white}.hero-carousel-name{font-family:'Playfair Display',serif;font-weight:600;font-size:0.9rem;letter-spacing:0.5px}.hero-carousel-price{font-size:0.75rem;opacity:0.7;font-family:'Inter',sans-serif}.hero-carousel-bar{width:100%;height:2px;background:rgba(255,255,255,0.15);border-radius:2px;margin-top:0.25rem;overflow:hidden}.hero-carousel-bar-fill{display:block;height:100%;width:0%;background:var(--secondary);border-radius:2px}.hero-carousel-item.active .hero-carousel-bar-fill{animation:heroProgressBar 6s linear forwards}@keyframes heroProgressBar{from{width:0%}to{width:100%}}.hero-content{text-align:center;color:white;z-index:2;max-width:800px;padding:0 2rem}.hero-title{font-size:clamp(3rem,8vw,5rem);margin-bottom:1.5rem;font-weight:700;text-shadow:0 2px 20px rgba(0,0,0,0.3)}.hero-subtitle{font-size:clamp(1.2rem,3vw,1.5rem);margin-bottom:2.5rem;font-family:'Inter',sans-serif;font-weight:300;text-shadow:0 1px 10px rgba(0,0,0,0.3)}.btn-primary{display:inline-block;background:rgba(29,122,110,0.55);color:white;padding:1rem 3rem;border-radius:50px;font-weight:600;font-size:1.1rem;transition:var(--transition);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.btn-primary:hover{background:white;color:var(--primary);transform:translateY(-3px);box-shadow:0 10px 30px rgba(0,0,0,0.2)}.scroll-indicator{position:absolute;bottom:3rem;left:50%;transform:translateX(-50%);width:30px;height:50px;border:2px solid white;border-radius:25px;opacity:0.7}.scroll-indicator span{position:absolute;top:10px;left:50%;transform:translateX(-50%);width:6px;height:10px;background:white;border-radius:3px;animation:scroll 2s infinite}@keyframes scroll{0%{transform:translateX(-50%) translateY(0);opacity:1}100%{transform:translateX(-50%) translateY(20px);opacity:0}}.search-bar{background:white;padding:2rem 0;box-shadow:0 5px 30px var(--shadow);position:relative;z-index:10;margin-top:-5rem}.search-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;align-items:end}.search-group{display:flex;flex-direction:column;gap:0.5rem}.search-group label{font-size:0.9rem;font-weight:500;color:var(--text-light)}.search-group input,.search-group select{padding:0.8rem 1rem;border:1px solid var(--border);border-radius:8px;font-size:1rem;transition:var(--transition)}.search-group input:focus,.search-group select:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px rgba(44,95,141,0.1)}.btn-search{background:var(--primary);color:white;padding:0.8rem 2rem;border-radius:8px;font-weight:600;font-size:1rem}.btn-search:hover{background:var(--secondary);transform:translateY(-2px)}.destinations-section,.why-us{padding:6rem 0}.section-header{text-align:center;margin-bottom:4rem}.section-title{font-size:clamp(2rem,5vw,3rem);margin-bottom:1rem;color:var(--primary)}.section-subtitle{font-size:1.1rem;color:var(--text-light)}.destinations-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:2.5rem}.destination-card{background:white;border-radius:16px;overflow:hidden;box-shadow:0 5px 20px var(--shadow);transition:var(--transition)}.destination-card:hover{transform:translateY(-10px);box-shadow:0 15px 40px rgba(0,0,0,0.15)}.destination-image{position:relative;height:300px;overflow:hidden}.destination-image img{width:100%;height:100%;object-fit:cover;transition:transform 0.6s cubic-bezier(0.4,0,0.2,1)}.destination-card:hover .destination-image img{transform:scale(1.1)}.destination-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(to bottom,transparent,rgba(0,0,0,0.7));display:flex;align-items:flex-end;justify-content:center;opacity:0;transition:var(--transition);padding:2rem}.destination-card:hover .destination-overlay{opacity:1}.btn-overlay{display:inline-block;background:rgba(29,122,110,0.55);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);color:white;padding:0.8rem 2rem;border-radius:25px;font-weight:600;transform:translateY(20px);transition:var(--transition)}.destination-card:hover .btn-overlay{transform:translateY(0)}.destination-content{padding:1.5rem}.destination-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.destination-header h3{font-size:1.5rem;color:var(--primary)}.destination-price{font-weight:600;color:var(--secondary);font-size:1.05rem}.destination-description{color:var(--text-light);margin-bottom:1.5rem;line-height:1.7}.destination-footer{display:flex;justify-content:space-between;align-items:center}.destination-duration{color:var(--text-light);font-size:0.9rem}.btn-secondary{display:inline-block;background:rgba(44,95,141,0.08);color:var(--primary);padding:0.6rem 1.5rem;border:2px solid rgba(44,95,141,0.4);border-radius:25px;font-weight:600;font-size:0.9rem}.btn-secondary:hover{background:rgba(44,95,141,0.85);color:white;border-color:transparent}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2.5rem}.feature-card{text-align:center;padding:2rem;border-radius:16px;transition:var(--transition)}.feature-card:hover{background:var(--bg-light);transform:translateY(-5px)}.feature-icon{width:80px;height:80px;background:linear-gradient(135deg,var(--primary),var(--secondary));color:white;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:2rem;font-weight:700;margin:0 auto 1.5rem;font-family:'Playfair Display',serif}.feature-card h3{font-size:1.3rem;margin-bottom:1rem;color:var(--primary)}.feature-card p{color:var(--text-light);line-height:1.7}.about-section{padding:6rem 0;background:var(--bg-light)}.about-content{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center}.about-text .section-title{text-align:left;margin-bottom:1.5rem}.about-lead{font-size:1.25rem;color:var(--primary);font-weight:500;margin-bottom:1.5rem}.about-text p{color:var(--text-light);line-height:1.8;margin-bottom:1rem}.about-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem;margin-top:2.5rem;padding-top:2rem;border-top:1px solid var(--border)}.stat-item{text-align:center}.stat-number{display:block;font-size:2rem;font-weight:700;color:var(--primary);font-family:'Playfair Display',serif}.stat-label{display:block;font-size:0.85rem;color:var(--text-light);margin-top:0.5rem}.about-image{position:relative;border-radius:16px;overflow:hidden;box-shadow:0 20px 60px rgba(0,0,0,0.15)}.about-image img{width:100%;height:500px;object-fit:cover}.about-image::before{content:'';position:absolute;top:-20px;right:-20px;width:100%;height:100%;border:3px solid var(--secondary);border-radius:16px;z-index:-1}.contact-section{padding:6rem 0;background:white}.contact-content{display:grid;grid-template-columns:1fr 1.5fr;gap:4rem;margin-top:3rem}.contact-info{display:flex;flex-direction:column;gap:2rem}.contact-item{display:flex;gap:1.5rem;align-items:flex-start}.contact-icon{width:50px;height:50px;min-width:50px;background:linear-gradient(135deg,var(--primary),var(--secondary));color:white;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.2rem;font-weight:700;font-family:'Playfair Display',serif}.contact-details h3{font-size:1.1rem;color:var(--primary);margin-bottom:0.5rem}.contact-details p{color:var(--text-light);line-height:1.6}.social-links{display:flex;gap:1rem}.social-link{padding:0.4rem 1rem;background:var(--bg-light);border-radius:20px;font-size:0.9rem;color:var(--text);transition:var(--transition)}.social-link:hover{background:var(--primary);color:white}.contact-form{background:var(--bg-light);padding:2.5rem;border-radius:16px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.form-group{margin-bottom:1.5rem}.form-group label{display:block;font-weight:500;margin-bottom:0.5rem;color:var(--text)}.form-group input,.form-group select,.form-group textarea{width:100%;padding:1rem 1.25rem;border:1px solid var(--border);border-radius:10px;font-size:1rem;font-family:inherit;transition:var(--transition);background:white}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px rgba(44,95,141,0.1)}.form-group textarea{resize:vertical;min-height:120px}.form-message{margin-top:1rem;padding:1rem 1.25rem;border-radius:10px;font-size:0.95rem;line-height:1.5;text-align:center}.form-message.success{background:#e8f5e9;color:#2e7d32;border:1px solid #a5d6a7}.form-message.info{background:#e3f2fd;color:#1565c0;border:1px solid #90caf9}.form-message.error{background:#fbe9e7;color:#c62828;border:1px solid #ef9a9a}.btn-full{width:100%;padding:1.2rem;font-size:1.1rem;background:linear-gradient(135deg,var(--primary),var(--secondary));backdrop-filter:none}.newsletter{background:linear-gradient(135deg,var(--primary),#44A8F2);padding:5rem 0;color:white}.newsletter-content{text-align:center;max-width:700px;margin:0 auto}.newsletter h2{font-size:2.5rem;margin-bottom:1rem}.newsletter p{font-size:1.1rem;margin-bottom:2rem;opacity:0.9}.newsletter-form{display:flex;gap:1rem;max-width:500px;margin:0 auto}.newsletter-form input{flex:1;padding:1rem 1.5rem;border:none;border-radius:50px;font-size:1rem}.newsletter-form input:focus{outline:none;box-shadow:0 0 0 3px rgba(255,255,255,0.3)}.btn-newsletter{background:linear-gradient(135deg,var(--primary),var(--secondary));color:white;padding:1rem 2.5rem;border-radius:50px;font-weight:600;white-space:nowrap}.btn-newsletter:hover{background:white;color:var(--primary)}.footer{background:var(--text);color:white;padding:4rem 0 2rem}.footer-content{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:3rem;margin-bottom:3rem}.footer-section h3{color:var(--secondary-light);margin-bottom:1rem}.footer-section p{line-height:1.8;opacity:0.8}.footer-section ul{display:flex;flex-direction:column;gap:0.8rem}.footer-section a:hover{color:var(--secondary)}.footer-bottom{text-align:center;padding-top:2rem;border-top:1px solid rgba(255,255,255,0.1);opacity:0.6}.page-hero{height:40vh;background:linear-gradient(135deg,#2C5F8D 0%,#44A8F2 100%);display:flex;align-items:center;justify-content:center;color:white;text-align:center;margin-top:70px}.page-hero h1{font-size:3rem;margin-bottom:1rem}.filters-section{background:white;padding:2rem 0;box-shadow:0 2px 10px rgba(0,0,0,0.05);position:sticky;top:70px;z-index:100}.filters{display:flex;gap:1rem;flex-wrap:wrap;align-items:center}.filter-group{display:flex;flex-direction:column;gap:0.5rem}.filter-group label{font-size:0.9rem;font-weight:500;color:var(--text-light)}.filter-group select,.filter-group input{padding:0.6rem 1rem;border:1px solid var(--border);border-radius:8px;font-size:0.95rem}.results-count{margin:2rem 0 1rem;font-size:1.1rem;color:var(--text-light)}.detail-hero{height:60vh;background-size:cover;background-position:center;display:flex;align-items:flex-end;position:relative;margin-top:70px}.detail-hero::before{content:'';position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,0.8) 0%,rgba(0,0,0,0.2) 50%,transparent 100%)}.detail-hero-content{position:relative;z-index:1;padding:3rem 0;color:white;width:100%}.detail-hero-content h1{font-size:clamp(2.5rem,6vw,4rem);margin-bottom:1rem}.detail-meta{display:flex;gap:2rem;flex-wrap:wrap;font-size:1.1rem}.detail-meta span{display:flex;align-items:center;gap:0.5rem}.detail-content{padding:4rem 0}.detail-grid{display:grid;grid-template-columns:1fr 400px;gap:3rem;align-items:start}.detail-main h2{font-size:2rem;color:var(--primary);margin-bottom:1.5rem}.detail-main p{font-size:1.1rem;line-height:1.8;color:var(--text-light);margin-bottom:1.5rem}.highlights{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin:2rem 0}.highlight-item{background:var(--bg-light);padding:1.5rem;border-radius:12px;text-align:center}.highlight-icon{margin-bottom:0.75rem}.highlight-icon img{width:64px;height:64px;border-radius:50%;object-fit:cover}.highlight-item h4{font-size:1.1rem;margin-bottom:0.3rem;color:var(--primary)}.highlight-item p{font-size:0.9rem;color:var(--text-light);margin:0}.itinerary{margin:3rem 0}.itinerary-day{display:flex;gap:1.5rem;padding:1.5rem 0;border-bottom:1px solid var(--border)}.day-number{width:60px;height:60px;background:var(--primary);color:white;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.2rem;flex-shrink:0}.day-content h4{font-size:1.2rem;margin-bottom:0.5rem;color:var(--text)}.day-content p{margin:0;font-size:1rem}.booking-card{background:white;border-radius:16px;padding:2rem;box-shadow:0 10px 40px rgba(0,0,0,0.1);position:sticky;top:100px}.booking-price{font-size:2.5rem;font-weight:700;color:var(--primary);margin-bottom:0.5rem}.booking-price span{font-size:1rem;font-weight:400;color:var(--text-light)}.booking-form{margin-top:1.5rem}.booking-total{display:flex;justify-content:space-between;padding:1rem 0;border-top:1px solid var(--border);margin-top:1rem;font-size:1.2rem;font-weight:600}.btn-book{width:100%;background:var(--secondary);color:white;padding:1rem;border-radius:8px;font-weight:600;font-size:1.1rem;margin-top:1rem;transition:var(--transition)}.btn-book:hover{background:var(--primary);transform:translateY(-2px)}.included-list{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--border)}.included-list h4{font-size:1rem;margin-bottom:1rem;color:var(--text)}.included-list ul{list-style:none}.included-list li{padding:0.4rem 0;font-size:0.9rem;color:var(--text-light)}.included-list li::before{content:'\2713';color:#27ae60;margin-right:0.5rem;font-weight:700}.gallery-section{background:var(--bg-light);padding:4rem 0}.gallery-section h2{text-align:center;font-size:2rem;margin-bottom:2rem;color:var(--primary)}.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.gallery-grid img{width:100%;height:200px;object-fit:cover;border-radius:12px;cursor:pointer;transition:var(--transition)}.gallery-grid img:hover{transform:scale(1.05)}.cart-page{min-height:70vh;padding:8rem 0 4rem}.cart-header{text-align:center;margin-bottom:3rem}.cart-header h1{font-size:2.5rem;color:var(--primary);margin-bottom:0.5rem}.cart-content{display:grid;grid-template-columns:1fr 400px;gap:2rem;align-items:start}.cart-items{background:white;border-radius:16px;padding:2rem;box-shadow:0 5px 20px var(--shadow)}.cart-item{display:grid;grid-template-columns:120px 1fr auto;gap:1.5rem;padding:1.5rem 0;border-bottom:1px solid var(--border)}.cart-item:last-child{border-bottom:none}.cart-item-image{width:120px;height:80px;border-radius:8px;overflow:hidden}.cart-item-image img{width:100%;height:100%;object-fit:cover}.cart-item-details{min-width:0}.cart-item-details h3{font-size:1.3rem;margin-bottom:0.5rem;color:var(--primary);word-wrap:break-word}.cart-item-price{font-size:1.2rem;font-weight:600;color:var(--secondary)}.cart-item-actions{display:flex;flex-direction:column;gap:0.5rem;align-items:flex-end}.quantity-control{display:flex;align-items:center;gap:0.5rem}.quantity-btn{width:30px;height:30px;border:1px solid var(--border);background:white;border-radius:4px;font-size:1.2rem;display:flex;align-items:center;justify-content:center;transition:var(--transition)}.quantity-btn:hover{background:var(--primary);color:white;border-color:var(--primary)}.quantity{min-width:40px;text-align:center;font-weight:600}.remove-btn{background:transparent;color:#e74c3c;font-size:0.9rem;padding:0.5rem;transition:var(--transition)}.remove-btn:hover{color:#c0392b;text-decoration:underline}.cart-summary{background:white;border-radius:16px;padding:2rem;box-shadow:0 5px 20px var(--shadow);position:sticky;top:100px}.cart-summary h2{font-size:1.5rem;margin-bottom:1.5rem;color:var(--primary)}.summary-line{display:flex;justify-content:space-between;padding:0.8rem 0;border-bottom:1px solid var(--border)}.summary-line:last-child{border-bottom:none;padding-top:1.5rem;font-size:1.3rem;font-weight:700;color:var(--primary)}.checkout-btn{width:100%;background:var(--primary);color:white;padding:1rem;border-radius:8px;font-weight:600;font-size:1.1rem;margin-top:1.5rem}.checkout-btn:hover{background:var(--secondary);transform:translateY(-2px)}.empty-cart{text-align:center;padding:4rem 2rem}.empty-cart h2{font-size:2rem;color:var(--text-light);margin-bottom:1rem}.empty-cart p{color:var(--text-light);margin-bottom:2rem}.checkout-success{text-align:center;padding:4rem 2rem;max-width:560px;margin:0 auto;animation:checkoutFadeIn 0.6s ease}@keyframes checkoutFadeIn{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.checkout-success-icon{display:inline-flex;align-items:center;justify-content:center;width:100px;height:100px;border-radius:50%;background:linear-gradient(135deg,rgba(44,95,141,0.1),rgba(212,180,131,0.1));color:var(--primary);margin-bottom:1.5rem;animation:checkoutPulse 0.8s ease 0.3s}@keyframes checkoutPulse{0%,100%{transform:scale(1)}50%{transform:scale(1.1)}}.checkout-success-icon svg{animation:checkoutCheck 0.5s ease 0.4s both}@keyframes checkoutCheck{from{stroke-dashoffset:60;opacity:0}to{stroke-dashoffset:0;opacity:1}}.checkout-success h2{font-size:1.8rem;color:var(--text);margin-bottom:0.5rem}.checkout-success-subtitle{font-size:1.05rem;color:var(--text-light);margin-bottom:2rem}.checkout-success-notice{display:inline-flex;align-items:center;gap:0.75rem;background:linear-gradient(135deg,#f0f7ff,#fdf8f0);border:1px solid #e2e8f0;border-left:4px solid var(--secondary);border-radius:10px;padding:1rem 1.5rem;margin-bottom:2.5rem;text-align:left;font-size:0.92rem;color:#555;line-height:1.5}.checkout-success-notice svg{flex-shrink:0;color:var(--secondary)}.checkout-success-actions{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.checkout-success-actions .btn-primary{display:inline-block;background:var(--primary);color:white;padding:0.85rem 2rem;border-radius:8px;font-weight:600;font-size:0.95rem;transition:all 0.3s ease}.checkout-success-actions .btn-primary:hover{background:var(--secondary);transform:translateY(-2px);box-shadow:0 4px 15px rgba(212,180,131,0.3)}.checkout-success-actions .btn-secondary{display:inline-block;background:transparent;color:var(--text-light);padding:0.85rem 2rem;border-radius:8px;font-weight:500;font-size:0.95rem;border:1px solid var(--border);transition:all 0.3s ease}.checkout-success-actions .btn-secondary:hover{border-color:var(--primary);color:var(--primary)}.error-page{min-height:80vh;display:flex;align-items:center;justify-content:center;text-align:center;padding:2rem}.error-code{display:block;font-size:8rem;font-weight:700;color:var(--primary);font-family:'Playfair Display',serif;line-height:1;margin-bottom:1rem}.error-title{font-size:2rem;margin-bottom:1rem}.error-text{color:var(--text-light);margin-bottom:2rem;font-size:1.1rem}.error-actions{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.legal-content{padding:4rem 0;max-width:800px;margin:0 auto}.legal-content h2{font-size:1.5rem;color:var(--primary);margin:2rem 0 1rem}.legal-content p{color:var(--text-light);line-height:1.8;margin-bottom:1rem}.legal-content ul{margin:1rem 0;padding-left:1.5rem;list-style:disc}.legal-content li{color:var(--text-light);line-height:1.8;margin-bottom:0.5rem}.demo-banner{position:fixed;bottom:0;left:0;right:0;z-index:9999;background:linear-gradient(135deg,var(--primary) 0%,#1a3d5c 100%);padding:0.75rem 1rem;box-shadow:0 -4px 20px rgba(0,0,0,0.2)}.demo-banner-content{max-width:1400px;margin:0 auto;display:flex;align-items:center;justify-content:center;gap:1rem;flex-wrap:wrap}.demo-banner-badge{background:var(--secondary);color:white;font-size:0.7rem;font-weight:700;padding:0.2rem 0.6rem;border-radius:4px;letter-spacing:2px}.demo-banner p{color:rgba(255,255,255,0.8);font-size:0.85rem;margin:0}.demo-banner a{color:white;text-decoration:underline}.demo-banner-btn{display:inline-flex;align-items:center;gap:0.4rem;background:rgba(255,255,255,0.1);color:white;padding:0.4rem 1rem;border-radius:6px;font-size:0.8rem;font-weight:500;transition:background 0.2s;text-decoration:none}.demo-banner-btn:hover{background:rgba(255,255,255,0.2);color:white}.fade-in{opacity:0}.fade-in.active{animation:fadeIn 0.8s ease forwards}.fade-in-up{opacity:0;transform:translateY(30px)}.fade-in-up.active{animation:fadeInUp 0.8s ease forwards}.fade-in-up[data-delay="100"]{animation-delay:0.1s}.fade-in-up[data-delay="200"]{animation-delay:0.2s}.fade-in-up[data-delay="300"]{animation-delay:0.3s}.fade-in-up[data-delay="400"]{animation-delay:0.4s}.fade-in-up[data-delay="500"]{animation-delay:0.5s}.delay-1{animation-delay:0.3s}.delay-2{animation-delay:0.6s}@keyframes fadeIn{from{opacity:0}to{opacity:1}}@keyframes fadeInUp{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.cart-modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,0.5);backdrop-filter:blur(4px);z-index:9999;display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:opacity 0.3s ease,visibility 0.3s ease}.cart-modal-overlay.active{opacity:1;visibility:visible}.cart-modal{background:#fff;border-radius:16px;width:90%;max-width:420px;box-shadow:0 20px 60px rgba(0,0,0,0.2);transform:translateY(20px) scale(0.95);transition:transform 0.3s cubic-bezier(0.4,0,0.2,1);overflow:hidden}.cart-modal-overlay.active .cart-modal{transform:translateY(0) scale(1)}.cart-modal-header{display:flex;align-items:center;gap:0.75rem;padding:1.5rem 1.5rem 0}.cart-modal-header h3{font-size:1.2rem;color:var(--text);font-weight:600}.cart-modal-body{padding:1.25rem 1.5rem}.cart-modal-item{display:flex;align-items:center;gap:1rem;padding:1rem;background:var(--bg-light);border-radius:12px}.cart-modal-img{width:64px;height:64px;border-radius:10px;object-fit:cover;flex-shrink:0}.cart-modal-info{display:flex;flex-direction:column;gap:0.2rem}.cart-modal-dest{font-weight:600;font-size:1rem;color:var(--text)}.cart-modal-detail{font-size:0.85rem;color:var(--text-light)}.cart-modal-total{display:flex;justify-content:space-between;align-items:center;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border)}.cart-modal-total span:first-child{font-size:0.9rem;color:var(--text-light)}.cart-modal-total span:last-child{font-size:1.25rem;font-weight:700;color:var(--primary)}.cart-modal-actions{display:flex;gap:0.75rem;padding:0 1.5rem 1.5rem}.cart-modal-btn-secondary,.cart-modal-btn-primary{flex:1;padding:0.8rem 1rem;border-radius:10px;font-size:0.95rem;font-weight:600;cursor:pointer;text-align:center;text-decoration:none;transition:all 0.2s ease}.cart-modal-btn-secondary{background:var(--bg-light);color:var(--text);border:1px solid var(--border)}.cart-modal-btn-secondary:hover{background:var(--border)}.cart-modal-btn-primary{background:var(--primary);color:#fff;border:1px solid var(--primary)}.cart-modal-btn-primary:hover{background:#245179}@media (max-width:1024px){.destinations-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:2rem}.detail-grid{grid-template-columns:1fr}.booking-card{position:static}.cart-content{grid-template-columns:1fr}.cart-summary{position:static}}@media (max-width:768px){.hero-carousel-info{bottom:4rem;gap:0.35rem;width:calc(100% - 2rem);justify-content:center;flex-wrap:wrap}.hero-carousel-item{padding:0.5rem 0.75rem;min-width:0;flex:1 1 calc(33.33% - 0.35rem)}.hero-carousel-name{font-size:0.75rem}.hero-carousel-price{font-size:0.65rem}.destination-header{flex-direction:column;align-items:flex-start;gap:0.25rem}.destination-header h3{font-size:1.25rem}.destination-price{font-size:1rem}.destination-image{height:220px}.destination-content{padding:1.25rem}.destination-description{font-size:0.9rem;margin-bottom:1rem}.destination-footer{flex-direction:column;align-items:flex-start;gap:0.75rem}.nav-menu{position:fixed;top:70px;left:0;right:0;background:white;flex-direction:column;padding:2rem;box-shadow:0 5px 20px var(--shadow);transform:translateY(-100%);opacity:0;transition:var(--transition)}.nav-menu.active{transform:translateY(0);opacity:1}.menu-toggle{display:flex}.search-form{grid-template-columns:1fr}.destinations-grid{grid-template-columns:1fr}.about-content{grid-template-columns:1fr;gap:2.5rem}.about-stats{grid-template-columns:repeat(2,1fr)}.about-image{order:-1}.about-image::before{display:none}.about-image img{height:350px}.contact-content{grid-template-columns:1fr;gap:2.5rem}.form-row{grid-template-columns:1fr}.newsletter-form{flex-direction:column}.footer-content{grid-template-columns:1fr;gap:2rem}.gallery-grid{grid-template-columns:repeat(2,1fr)}.detail-hero{height:50vh}.cart-item{grid-template-columns:80px 1fr;gap:1rem}.cart-item-image{width:80px;height:60px}.cart-item-details h3{font-size:1.05rem}.cart-item-price{font-size:1rem}.cart-item-actions{grid-column:1 / -1;flex-direction:row;justify-content:space-between;align-items:center}.page-hero h1{font-size:2rem}}@media (max-width:480px){.container{padding:0 1rem}.hero-title{font-size:2rem}.hero-subtitle{font-size:1rem}.section-title{font-size:1.75rem}.hero-carousel-info{bottom:3rem;gap:0.25rem}.hero-carousel-item{flex:1 1 calc(50% - 0.25rem);padding:0.4rem 0.5rem}.hero-carousel-name{font-size:0.65rem}.hero-carousel-price{font-size:0.6rem}.hero-carousel-bar{display:none}.destination-image{height:180px}.destination-header h3{font-size:1.1rem}.feature-card{padding:1.5rem}.about-stats{grid-template-columns:repeat(2,1fr);gap:1rem}.contact-form{padding:1.5rem}.gallery-grid{grid-template-columns:1fr}.cart-item{grid-template-columns:1fr;gap:0.75rem}.cart-item-image{width:100%;height:160px}.cart-item-details h3{font-size:1rem}.cart-item-price{font-size:0.95rem}}@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:0.01ms !important;animation-iteration-count:1 !important;transition-duration:0.01ms !important}.fade-in,.fade-in-up{opacity:1;transform:none}.destination-card:hover,.destination-card:hover .card-image img{transform:none}}