:root{--primary-color: #0077b6;--secondary-color: #fb8500;--heading-color: #023047;--text-color: #576b77;--light-bg: #ffffff;--alt-bg: #f5f8fa;--dark-bg: #023047;--border-color: #e9ecef;--font-primary: "Poppins", sans-serif;--font-secondary: "Oswald", sans-serif;--shadow: 0 4px 12px rgba(0, 0, 0, .05);--shadow-hover: 0 6px 16px rgba(0, 0, 0, .08)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:16px}body{font-family:var(--font-primary);color:var(--text-color);background:linear-gradient(270deg,#fdfdff,#f8f9fa,#fff,#f8f9fa);background-size:800% 800%;animation:gradientAnimation 45s ease infinite;line-height:1.7;overflow-x:hidden}@keyframes gradientAnimation{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}h1,.h1{font-size:3rem}h2,.h2{font-size:2.2rem}h3,.h3{font-size:1.5rem}h1,h2,h3,h4,.logo,.btn,.tabs button{font-family:var(--font-secondary);font-weight:700;color:var(--heading-color)}.container{max-width:1200px;margin:0 auto;padding:0 1.5rem}.animate-on-scroll{opacity:0;transform:translateY(30px);transition:opacity .8s ease-out,transform .8s ease-out}.animate-on-scroll.visible{opacity:1;transform:translate(0)}.loader{position:fixed;top:0;left:0;width:100%;height:100%;background:var(--light-bg);color:var(--heading-color);display:flex;justify-content:center;align-items:center;z-index:10000;flex-direction:column}.loader-content{text-align:center}.loader .logo-text{font-size:2rem;font-weight:700;margin-bottom:1rem;font-family:var(--font-secondary);color:var(--primary-color)}.loader p{font-size:1rem;margin-top:1rem;letter-spacing:1px;color:var(--text-color)}.plane-animation{width:100px;height:3px;background:#0077b633;position:relative;overflow:hidden}.plane-animation svg{position:absolute;left:-30px;top:50%;transform:translateY(-50%);animation:fly 2.5s ease-in-out forwards;font-size:24px;color:var(--secondary-color)}@keyframes fly{0%{left:-30px}to{left:110px}}.app-container.loading{visibility:hidden}.navbar{position:fixed;top:0;left:0;width:100%;padding:1.5rem 0;z-index:1000;transition:background-color .3s ease,padding .3s ease,box-shadow .3s ease}.navbar.scrolled{background-color:var(--light-bg);box-shadow:var(--shadow);padding:.75rem 0}.navbar .container{display:flex;justify-content:space-between;align-items:center}.navbar .logo{font-size:1.7rem;font-weight:800;color:#fff;text-decoration:none;z-index:1001;transition:color .3s ease;display:flex;align-items:center;gap:.75rem;text-shadow:0 1px 3px rgba(0,0,0,.4)}.navbar.scrolled .logo{color:var(--heading-color);text-shadow:none}.navbar .logo-img{max-height:40px;transition:max-height .3s ease,filter .3s ease;filter:drop-shadow(0 1px 2px rgba(0,0,0,.5))}.navbar.scrolled .logo-img{filter:none;max-height:30px}.navbar nav ul{display:flex;list-style:none;align-items:center}.navbar nav ul li{margin-left:2rem}.navbar nav a{color:#fff;text-decoration:none;font-weight:600;position:relative;padding-bottom:.25rem;transition:color .3s ease,text-shadow .3s ease;text-shadow:0 1px 3px rgba(0,0,0,.3)}.navbar nav a.btn{text-shadow:none}.navbar.scrolled nav a{color:var(--text-color);text-shadow:none}.navbar.scrolled nav a:hover{color:var(--primary-color)}.navbar.scrolled nav a.btn{color:#fff}.navbar.scrolled nav a.btn:hover{color:#fff}.navbar nav a:after{content:"";position:absolute;bottom:0;left:0;width:0;height:2px;background-color:var(--secondary-color);transition:width .3s ease}.navbar nav a.btn:after{display:none}.navbar nav a:hover:after{width:100%}.nav-contact-btn{padding:.4rem 1.2rem!important;font-size:.9rem!important;letter-spacing:.5px!important;line-height:1.5!important}.menu-toggle{display:none}.navbar .menu-toggle .bar{background:#fff;transition:background-color .3s ease;filter:drop-shadow(0 1px 1px rgba(0,0,0,.3))}.navbar.scrolled .menu-toggle .bar{background:var(--heading-color);filter:none}.hero{height:100vh;position:relative;display:flex;align-items:center;justify-content:center;color:#fff;padding:0;perspective:1px;transform-style:preserve-3d;overflow:hidden}.hero:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(180deg,#0009,#0000004d,#0009);z-index:1}@keyframes scroll-left{0%{transform:translate(0)}to{transform:translate(-50%)}}.hero-background-wrapper{position:absolute;top:0;left:0;width:100%;height:100%;z-index:0;overflow:hidden}.hero-image-scroller{width:100%;height:100%;display:flex;flex-direction:column;gap:.1rem;transform:translateZ(-1px) scale(1.2)}.hero-scroller-track{display:flex;width:fit-content;animation:scroll-left 180s linear infinite;gap:.1rem;flex:1;min-height:0}.scroller-content{display:flex;gap:.1rem;flex-shrink:0}.hero-scroller-track.reverse{animation-direction:reverse;animation-duration:220s}.hero-scroller-track.fast{animation-duration:150s}.hero-scroller-track.slow{animation-duration:250s}.hero-scroller-img-wrapper{flex-shrink:0;overflow:hidden;box-shadow:0 10px 30px #0003;height:100%;border-radius:0}.hero-scroller-img-wrapper img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.25,.46,.45,.94)}.hero-scroller-img-wrapper:hover img{transform:scale(1.05)}.hero-scroller-img-wrapper.width-s{width:12vw}.hero-scroller-img-wrapper.width-m{width:25vw}.hero-scroller-img-wrapper.width-l{width:35vw}.hero-scroller-img-wrapper.width-sq{width:15vw}.hero-content-wrapper{z-index:2;width:100%;display:flex;flex-direction:column;align-items:center;padding:0 1.5rem}.hero-text{text-align:center}.hero .hero-logo{max-width:clamp(250px,25vw,350px);width:90%;height:auto;margin-bottom:1.5rem;filter:drop-shadow(0 4px 10px rgba(0,0,0,.6))}.hero .tagline{font-size:clamp(1.2rem,3vw,1.8rem);color:#fff;font-family:var(--font-secondary);font-weight:700;margin-bottom:1rem;text-shadow:0 2px 6px rgba(0,0,0,.5);letter-spacing:1px;text-transform:uppercase}.hero .hero-description{font-size:clamp(.9rem,2.5vw,1.1rem);max-width:600px;margin:0 auto 2rem;opacity:.95;line-height:1.8;font-weight:300;text-shadow:0 1px 4px rgba(0,0,0,.6)}.btn{padding:.8rem 1.8rem;border-radius:50px;text-decoration:none;font-weight:700;transition:all .3s ease;display:inline-block;border:2px solid transparent;cursor:pointer;text-transform:uppercase;font-size:.9rem;letter-spacing:.5px}.btn-primary{background:var(--secondary-color);color:#fff;border-color:var(--secondary-color)}.btn-primary:hover{background:#e67700;border-color:#e67700;transform:translateY(-3px);box-shadow:var(--shadow-hover)}.btn-secondary{background-color:var(--primary-color);color:#fff;border-color:var(--primary-color)}.btn-secondary:hover{background-color:#005f8d;border-color:#005f8d}.btn-outline-light{background-color:transparent;color:#fff;border-color:#fff}.btn-outline-light:hover{background-color:#fff;color:var(--heading-color)}.btn-outline-dark{background-color:transparent;color:var(--heading-color);border-color:var(--heading-color)}.btn-outline-dark:hover{background-color:var(--heading-color);color:#fff}.btn-light{background:#fff;color:var(--primary-color);border-color:#fff}.btn-light:hover{background:var(--alt-bg);border-color:var(--alt-bg);transform:translateY(-3px)}.cta-buttons{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}section{padding:6rem 0}section.why-choose-us,section.testimonials,.plans-list,.about-page{background-color:var(--alt-bg)}.section-title{text-align:center;font-weight:700;margin-bottom:3rem;position:relative}.section-title:after{content:"";position:absolute;bottom:-10px;left:50%;transform:translate(-50%);width:80px;height:4px;background:var(--secondary-color);border-radius:2px}.tours-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem}.tour-card{display:flex;flex-direction:column;background:var(--light-bg);border-radius:.75rem;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease;box-shadow:var(--shadow);border:1px solid var(--border-color)}.tour-card:hover{transform:translateY(-10px);box-shadow:var(--shadow-hover)}.tour-card-img{width:100%;height:220px;background-color:#eee;background-size:cover;background-position:center}.tour-card-content{padding:1.5rem;display:flex;flex-direction:column;flex-grow:1}.tour-card h3{margin-bottom:.5rem;font-weight:700;font-size:1.25rem}.tour-card p{flex-grow:1;margin-bottom:1rem;font-size:.95rem}.tour-card-footer{display:flex;justify-content:space-between;align-items:center;margin-top:auto}.tour-card .price{font-weight:700;color:var(--primary-color)}.btn-link{color:var(--primary-color);text-decoration:none;font-weight:700}.btn-link:hover{text-decoration:underline}.section-subtitle{text-align:center;max-width:800px;margin:-2rem auto 3rem;color:var(--text-color)}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem}.feature-card{text-align:center;padding:2rem}.feature-icon{color:var(--primary-color);margin-bottom:1rem}.feature-card h3{font-size:1.4rem;margin-bottom:1rem;font-weight:700}.tabs{text-align:center;margin-bottom:2rem}.tabs button{padding:.7rem 1.5rem;margin:0 .5rem;border:2px solid var(--primary-color);background:transparent;color:var(--primary-color);border-radius:50px;cursor:pointer;font-weight:700;transition:all .3s ease}.tabs button.active,.tabs button:hover{background:var(--primary-color);color:#fff}.cta-banner{background:var(--primary-color);color:#fff;text-align:center}.cta-banner h2{font-size:2.2rem;font-weight:800;color:#fff}.cta-banner p{margin:1rem 0 2rem;opacity:.9}.footer{background:#f2f4f6;color:var(--text-color);padding:4rem 0 2rem}.footer-content{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem;margin-bottom:2rem}.footer-brand{display:flex;align-items:flex-start;gap:1rem;margin-bottom:1rem;flex-direction:column}.footer-brand h3{margin-bottom:0;font-size:1.3rem}.footer-logo{max-height:120px;width:auto}.footer h3,.footer h4{color:var(--heading-color);margin-bottom:1rem;font-weight:800}.footer p,.footer address{margin-bottom:.5rem;font-style:normal}.footer ul{list-style:none}.footer a{color:var(--text-color);text-decoration:none;transition:color .3s ease}.footer a:hover{color:var(--secondary-color)}.footer-bottom{text-align:center;border-top:1px solid #e1e4e8;padding-top:2rem;font-size:.9rem}.floating-action-button{position:fixed;bottom:20px;right:20px;z-index:999}.fab-toggle{background:var(--primary-color);color:#fff;width:60px;height:60px;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px #00000040;border:none;cursor:pointer;transition:transform .2s ease,background-color .2s ease}.fab-toggle:hover{transform:scale(1.05);background-color:#005f8d}.fab-toggle svg{transition:transform .3s ease}.fab-menu{position:absolute;bottom:70px;right:5px;display:flex;flex-direction:column;gap:15px;align-items:center;list-style:none;padding:0;margin:0}.fab-item{transform:scale(0) translateY(20px);opacity:0;transition:transform .3s ease,opacity .3s ease}.fab-menu.open .fab-item{transform:scale(1) translateY(0);opacity:1}.fab-menu.open .fab-item:nth-child(1){transition-delay:.1s}.fab-menu.open .fab-item:nth-child(2){transition-delay:.15s}.fab-menu.open .fab-item:nth-child(3){transition-delay:.2s}.fab-item-link{background:var(--light-bg);color:#fff;width:50px;height:50px;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 10px #0003;text-decoration:none;transition:all .3s ease;position:relative}.fab-item-link:hover{transform:scale(1.1) translateY(-3px);box-shadow:0 6px 15px #00000040}.fab-item-link.whatsapp{background-color:#25d366}.fab-item-link.instagram{background:linear-gradient(45deg,#f09433,#e6683c,#dc2743,#cc2366,#bc1888)}.fab-item-link.call{background-color:var(--secondary-color)}.fab-item-link .tooltip-text{position:absolute;right:60px;background:var(--heading-color);color:#fff;padding:5px 10px;border-radius:5px;white-space:nowrap;opacity:0;visibility:hidden;transition:all .3s ease;transform:translate(10px);font-size:.9rem;font-family:var(--font-primary)}.fab-item-link:hover .tooltip-text{opacity:1;visibility:visible;transform:translate(0)}@keyframes scroll{0%{transform:translate(0)}to{transform:translate(-50%)}}.scroller{overflow:hidden;-webkit-mask:linear-gradient(90deg,transparent,white 10%,white 90%,transparent);mask:linear-gradient(90deg,transparent,white 10%,white 90%,transparent)}.scroller-track{display:flex;width:fit-content;animation:scroll 40s linear infinite}.scroller-track.reverse{animation-direction:reverse}.services .scroller{margin-bottom:.75rem}.services .service-card{flex-shrink:0;margin:0 .5rem;background:var(--light-bg);padding:1rem 1.5rem;border-radius:.75rem;text-align:center;transition:all .3s ease;font-weight:500;font-size:.9rem;border:1px solid var(--border-color);box-shadow:var(--shadow);color:var(--heading-color);width:auto}.services .service-card:hover{background:var(--primary-color);color:#fff}.testimonials-scroller-wrapper{position:relative}.testimonials-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;gap:2rem;padding-bottom:1.5rem;-ms-overflow-style:none;scrollbar-width:none}.testimonials-grid::-webkit-scrollbar{display:none}.testimonials-grid .testimonial-card{flex:0 0 350px;scroll-snap-align:center}.testimonial-card{background:var(--light-bg);border-radius:.75rem;border-left:5px solid var(--secondary-color);box-shadow:var(--shadow);display:flex;flex-direction:column;overflow:hidden}.testimonial-card-img{width:100%;height:200px;background-size:cover;background-position:center}.testimonial-card-content{padding:2rem}.testimonial-card h4{text-align:right;margin-top:1rem;color:var(--heading-color);font-weight:700}.testimonial-card.instagram-embed-wrapper{padding:0;display:flex;justify-content:center;align-items:center;border:none;min-height:400px;background:transparent;box-shadow:none}.instagram-media{margin:1px auto!important;border-radius:.75rem!important;min-width:300px!important;width:100%!important;box-shadow:var(--shadow)!important}@media(max-width:768px){h1,.h1{font-size:2rem}h2,.h2,.section-title{font-size:1.6rem}h3,.h3{font-size:1.2rem}section{padding:4rem 0}.hero .hero-logo{max-width:250px;margin-bottom:.5rem}.hero .tagline{font-size:1.1rem;font-weight:700;margin-bottom:.5rem}.hero .hero-description{font-size:.85rem;line-height:1.6;max-width:80%;margin:0 auto 1.5rem}.btn{padding:.6rem 1.4rem;font-size:.8rem}.cta-buttons{gap:.75rem}.hero-scroller-img-wrapper.width-s{width:30vw}.hero-scroller-img-wrapper.width-m{width:50vw}.hero-scroller-img-wrapper.width-l{width:70vw}.hero-scroller-img-wrapper.width-sq{width:35vw}.hero-scroller-track{animation-duration:80s!important}.hero-scroller-track.reverse{animation-duration:100s!important}.hero-scroller-track.fast{animation-duration:60s!important}.hero-scroller-track.slow{animation-duration:120s!important}.tours-grid{grid-template-columns:repeat(2,1fr);gap:1rem}.tour-card-img{height:120px}.tour-card-content{padding:1rem}.tour-card h3{font-size:1rem}.tour-card p{font-size:.8rem;line-height:1.5;margin-bottom:.75rem;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.tour-card .price,.tour-card .btn-link{font-size:.85rem}.features-grid{display:flex;justify-content:space-around;gap:.5rem}.feature-card{padding:1rem .5rem;flex:1}.feature-card h3{font-size:1rem}.feature-card p{display:none}.testimonials-scroller-wrapper{position:relative;padding:0 2.5rem;margin:0 -1.5rem}.testimonials-grid{gap:1rem}.testimonials-grid .testimonial-card{flex:0 0 95%}.scroll-btn{position:absolute;top:50%;transform:translateY(-50%);z-index:10;background:#ffffffe6;color:var(--primary-color);border:1px solid var(--border-color);width:40px;height:40px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:1.5rem;box-shadow:var(--shadow)}.scroll-btn.prev{left:10px}.scroll-btn.next{right:10px}.testimonial-card.instagram-embed-wrapper{overflow:visible;display:grid;place-items:center}.instagram-media{transform:scale(.9);transform-origin:center}.menu-toggle{display:flex;flex-direction:column;justify-content:space-around;width:30px;height:25px;background:transparent;border:none;cursor:pointer;padding:0;z-index:1001}.menu-toggle .bar{width:30px;height:3px;border-radius:10px;transition:all .3s linear;position:relative;transform-origin:1px}.navbar.menu-open .menu-toggle .bar:nth-child(1){transform:rotate(45deg)}.navbar.menu-open .menu-toggle .bar:nth-child(2){opacity:0;transform:translate(20px)}.navbar.menu-open .menu-toggle .bar:nth-child(3){transform:rotate(-45deg)}.navbar nav{position:fixed;top:0;left:0;width:100%;height:100vh;background:#fffffffa;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;flex-direction:column;justify-content:center;align-items:center;transform:translate(100%);transition:transform .3s ease-in-out}.navbar.menu-open nav{transform:translate(0)}.navbar nav ul{flex-direction:column;text-align:center}.navbar nav ul li{margin:1.2rem 0}.navbar nav a,.navbar.scrolled nav a{font-size:1.5rem;color:var(--heading-color);text-shadow:none}.nav-contact-btn{padding:.8rem 1.8rem!important}.navbar.scrolled .nav-contact-btn,.navbar.menu-open .nav-contact-btn{background:var(--secondary-color);color:#fff;border-color:var(--secondary-color)}}.page-header{padding:8rem 0 4rem;background-color:var(--dark-bg);color:#fff;text-align:center}.page-header h1{color:#fff;font-size:3rem}.page-header p{font-size:1.2rem;opacity:.9}.search-bar{margin-bottom:2rem}.search-bar input{width:100%;padding:1rem;font-size:1.1rem;border:1px solid var(--border-color);border-radius:.5rem}.plan-details-hero{padding:8rem 0;background-size:cover;background-position:center;text-align:center;color:#fff}.plan-details-hero h1{font-size:3.5rem;text-shadow:0 2px 8px rgba(0,0,0,.6);color:#fff}.plan-details-hero .price-tag{font-size:1.5rem;background:var(--secondary-color);padding:.5rem 1rem;border-radius:50px;display:inline-block;margin-top:1rem}.plan-details-content{padding:4rem 0}.plan-main-content h2{margin-bottom:1.5rem;margin-top:4rem}.plan-main-content h2:first-of-type{margin-top:0}.plan-main-content p{margin-bottom:1.5rem;line-height:1.8}.plan-actions{display:flex;flex-wrap:wrap;gap:1rem;margin:2rem 0}.reviews-section .testimonial-card{margin-bottom:1.5rem}.booking-form-container{margin-top:2rem;padding:2rem;border:1px solid var(--border-color);border-radius:.5rem;background:var(--alt-bg)}.booking-form-container.submitted{text-align:center}.booking-form-container h3{margin-bottom:1.5rem}.booking-form-container form{display:flex;flex-direction:column;gap:1rem}.booking-form-container input,.booking-form-container textarea{padding:.75rem;border:1px solid var(--border-color);border-radius:.25rem}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#0009;display:flex;justify-content:center;align-items:center;z-index:2000}.modal-content{background:#fff;padding:2rem;border-radius:.75rem;width:90%;max-width:500px;position:relative;max-height:90vh;overflow-y:auto}.modal-close{position:absolute;top:10px;right:15px;background:none;border:none;font-size:2rem;cursor:pointer;color:var(--text-color)}.modal-step{text-align:center}.modal-step h3{margin-bottom:1.5rem}.modal-step input,.modal-step select,.modal-step textarea{width:100%;padding:.75rem;margin-bottom:1rem;border:1px solid var(--border-color);border-radius:.375rem}.modal-step div{display:flex;justify-content:center;gap:1rem;margin-top:1rem}.progress-bar{width:100%;height:8px;background:var(--border-color);border-radius:4px;margin:1rem 0;overflow:hidden}.progress-bar div{height:100%;background:var(--primary-color);transition:width .3s ease}.modal-step.thank-you p{margin-bottom:1rem}.whatsapp-btn{display:inline-flex;align-items:center;gap:.5rem}.about-page .about-content{max-width:800px;margin:0 auto}.about-page .about-content h2{margin-bottom:1rem}.about-page .about-content p{margin-bottom:1.5rem;line-height:1.8}.about-page .founder-section{display:flex;flex-direction:column;align-items:center;text-align:center;gap:1.5rem;margin-top:3rem;background:#fff;padding:2rem;border-radius:.5rem;box-shadow:var(--shadow)}.founder-section img{width:150px;height:150px;border-radius:50%;object-fit:cover;border:5px solid var(--primary-color)}.founder-section h3{font-size:1.5rem}.founder-section p em{font-size:1rem;color:var(--primary-color)}.inclusions-list,.exclusions-list{list-style:none;padding:0;columns:2;column-gap:2rem}.inclusions-list li,.exclusions-list li{display:flex;align-items:center;margin-bottom:.5rem}.inclusions-list svg{color:var(--secondary-color);margin-right:.5rem;flex-shrink:0}.exclusions-list svg{color:#d00;margin-right:.5rem;flex-shrink:0}.custom-plan-section{margin-top:4rem}.pricing-options-table{width:100%;margin:2rem 0;border:1px solid var(--border-color);border-radius:.5rem;overflow:hidden}.pricing-options-table table{width:100%;border-collapse:collapse}.pricing-options-table th,.pricing-options-table td{padding:1rem;text-align:left;border-bottom:1px solid var(--border-color)}.pricing-options-table th{background-color:var(--alt-bg)}.pricing-options-table td:last-child{font-weight:700;color:var(--primary-color)}.itinerary-accordion .accordion-item{border:1px solid var(--border-color);border-radius:.5rem;margin-bottom:1rem;overflow:hidden}.itinerary-accordion .accordion-header{background:var(--alt-bg);padding:1rem 1.5rem;cursor:pointer;display:flex;justify-content:space-between;align-items:center}.itinerary-accordion .accordion-header h4{margin:0}.itinerary-accordion .accordion-header .icon{transition:transform .3s ease}.itinerary-accordion .accordion-item.active .accordion-header .icon{transform:rotate(180deg)}.itinerary-accordion .accordion-content{padding:1.5rem;border-top:1px solid var(--border-color);line-height:1.8}.itinerary-activities{list-style:none;padding-left:1.5rem;position:relative}.itinerary-activities:before{content:"";position:absolute;left:5px;top:10px;bottom:10px;width:2px;background-color:var(--border-color)}.itinerary-activities li{margin-bottom:1rem;position:relative}.itinerary-activities li:before{content:"";position:absolute;left:-1.25rem;top:9px;width:10px;height:10px;border-radius:50%;background-color:var(--secondary-color);border:2px solid #fff}.itinerary-activities li strong{color:var(--heading-color)}.modal-step label{display:block;text-align:left;width:100%;margin-top:.5rem;margin-bottom:.25rem;font-weight:500}.customize-modal-itinerary{background:var(--alt-bg);border-radius:.5rem;padding:1rem;margin:1.5rem 0;max-height:40vh;overflow-y:auto;text-align:left}.customize-modal-itinerary .itinerary-item{background:#fff;text-align:left;padding:1rem;border:1px solid var(--border-color);border-radius:.5rem;margin-bottom:1rem}.customize-modal-itinerary .itinerary-item:last-child{margin-bottom:0}.customize-modal-itinerary .itinerary-item h4{margin-bottom:.5rem}.customize-modal-itinerary .itinerary-item input,.customize-modal-itinerary .itinerary-item textarea{width:100%;padding:.5rem;border:1px solid var(--border-color);border-radius:.25rem;margin-bottom:.5rem}.customize-modal-itinerary h4{margin-bottom:.5rem}.customize-modal-itinerary p{font-size:.9rem}.admin-login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background-color:var(--alt-bg)}.login-box{background:#fff;padding:2rem;border-radius:.5rem;box-shadow:var(--shadow);text-align:center;width:90%;max-width:400px}.login-box h2{margin-bottom:1.5rem}.login-box form{display:flex;flex-direction:column;gap:1rem}.login-box input{padding:.75rem;border:1px solid var(--border-color);border-radius:.25rem}.error-message{color:#d00;font-size:.9rem;margin-top:-.5rem;margin-bottom:.5rem}.admin-layout{display:flex;min-height:100vh;background-color:var(--alt-bg)}.admin-sidebar{width:250px;background:var(--dark-bg);color:#fff;padding:1.5rem;flex-shrink:0;display:flex;flex-direction:column}.admin-content{flex-grow:1;padding:2.5rem;overflow-y:auto}.admin-sidebar h3{color:#fff;margin-bottom:2rem;font-family:var(--font-secondary);text-align:center;border-bottom:1px solid rgba(255,255,255,.1);padding-bottom:1.5rem;font-size:1.5rem}.admin-sidebar nav{display:flex;flex-direction:column;gap:.5rem}.admin-sidebar nav a{color:#adb5bd;text-decoration:none;padding:.75rem 1rem;transition:all .2s ease;border-radius:6px}.admin-sidebar nav a:hover{background:#ffffff1a;color:#fff}.admin-sidebar nav a.active{background:var(--primary-color);color:#fff;font-weight:600}.admin-sidebar .btn{width:100%;margin-top:auto}.admin-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding-bottom:1rem;border-bottom:1px solid var(--border-color)}.admin-content h1{font-family:var(--font-secondary);font-size:2rem;color:var(--heading-color)}.admin-form{background:#fff;padding:2.5rem;border-radius:.5rem;box-shadow:var(--shadow)}.admin-form label{display:block;margin-bottom:.5rem;font-weight:600;color:var(--heading-color)}.admin-form input[type=text],.admin-form input[type=number],.admin-form input[type=email],.admin-form input[type=tel],.admin-form textarea,.admin-form select{width:100%;padding:.75rem;border:1px solid var(--border-color);border-radius:.375rem;font-family:var(--font-primary);font-size:1rem;transition:border-color .2s ease,box-shadow .2s ease;margin-bottom:1rem}.admin-form input:focus,.admin-form textarea:focus,.admin-form select:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #0077b626}.admin-form textarea{min-height:120px;resize:vertical}.admin-form .form-field-description{font-size:.85rem;color:var(--text-color);margin:-.75rem 0 1rem;font-weight:400}.admin-form hr{border:0;border-top:1px solid var(--border-color);margin:2.5rem 0}.admin-form .form-section{margin-bottom:2.5rem;padding-bottom:2.5rem;border-bottom:1px solid #e9ecef}.admin-form .form-section:last-of-type{border-bottom:none;padding-bottom:0;margin-bottom:0}.admin-form .form-section h2{font-size:1.4rem;font-family:var(--font-secondary);margin-bottom:1.5rem;color:var(--primary-color);padding-bottom:.5rem;border-bottom:2px solid var(--secondary-color);display:inline-block}.admin-form .checkbox-group{display:flex;flex-wrap:wrap;gap:1.5rem;margin-bottom:1rem}.admin-form .checkbox-group label{display:flex;align-items:center;gap:.5rem;font-weight:400;color:var(--text-color)}.admin-form .list-item,.admin-form .itinerary-item,.admin-form .review-editor,.admin-form .list-item-editor,.admin-form .list-item-editor-column{background:var(--alt-bg);padding:1rem;border-radius:.5rem;margin-bottom:1rem;border:1px solid var(--border-color);transition:box-shadow .2s ease}.admin-form .list-item-editor-column>label{margin-bottom:-.25rem;margin-top:.5rem;font-weight:500;font-size:.9rem}.admin-form .list-item-editor-column>label:first-of-type{margin-top:0}.admin-form .list-item:hover,.admin-form .itinerary-item:hover,.admin-form .review-editor:hover,.admin-form .list-item-editor:hover,.admin-form .list-item-editor-column:hover{box-shadow:0 0 10px #0000000d;border-color:#dbe4eb}.admin-form .list-item{display:flex;align-items:center;gap:1rem}.admin-form .list-item input{flex-grow:1;margin-bottom:0}.admin-form .itinerary-item input,.admin-form .itinerary-item textarea{margin-bottom:.5rem}.admin-form .itinerary-item h4{margin-bottom:1rem}.admin-form .review-editor,.admin-form .list-item-editor-column{display:flex;flex-direction:column;gap:.5rem}.admin-form .review-editor .btn-link-delete,.admin-form .itinerary-item .btn-link-delete,.admin-form .list-item-editor-column .btn-link-delete{align-self:flex-end}.admin-form .list-item-editor{display:flex;align-items:flex-start;gap:1rem}.admin-form .list-item-editor>input[type=text]{flex-grow:1;margin-bottom:0}.admin-form .list-item-editor .image-picker-container{flex-shrink:0;margin-bottom:0;flex-basis:170px}.admin-form .list-item-editor .btn-link-delete{margin-left:auto;align-self:center}.admin-form .list-item-editor .list-item-inputs{flex-grow:1;display:flex;flex-direction:column;gap:.5rem}.admin-form .list-item-editor .list-item-inputs input{width:100%;margin-bottom:0}.btn-link-delete{background:none;border:none;color:#d00;cursor:pointer;text-decoration:none;font-family:var(--font-primary);font-size:.9rem;padding:.25rem}.btn-link-delete:hover{text-decoration:underline;color:#a00}.btn-save-all{margin-top:2rem;padding:1rem 2rem;font-size:1rem}.admin-form .itinerary-item .btn-link-delete,.admin-form .itinerary-item .btn-secondary{margin-top:.5rem}.admin-form .activity-editor{border-top:1px dashed var(--border-color);margin-top:1rem;padding-top:1rem}.admin-form .activity-item{display:flex;gap:1rem;margin-bottom:.75rem;align-items:flex-start}.admin-form .activity-item .time-input{flex:0 0 150px}.admin-form .activity-item .description-input{flex:1}.admin-form .activity-item textarea{min-height:60px;margin-bottom:0}.admin-form .activity-item .btn-link-delete{align-self:center}.admin-table-container{overflow-x:auto;background:#fff;border-radius:.5rem;box-shadow:var(--shadow);border:1px solid var(--border-color)}table{width:100%;border-collapse:collapse}th,td{padding:1rem;text-align:left;border-bottom:1px solid var(--border-color);vertical-align:middle}table thead th{background-color:var(--alt-bg);font-weight:600;color:var(--heading-color);font-size:.9rem;text-transform:uppercase;letter-spacing:.5px}table tbody tr:nth-child(2n){background-color:var(--alt-bg)}table tbody tr:hover{background-color:#e9f5ff}table .btn-link,table .btn-link-delete{font-size:.9rem}.dashboard-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.5rem;margin-top:2rem}.stat-card{background:#fff;padding:1.5rem;border-radius:.5rem;box-shadow:var(--shadow);border-left:4px solid var(--primary-color);transition:transform .2s ease,box-shadow .2s ease}.stat-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-hover)}.stat-card h4{font-size:1rem;color:var(--text-color);font-weight:500}.stat-card p{font-size:2.5rem;font-weight:700;color:var(--primary-color)}.image-picker-container{margin-bottom:1rem}.image-picker-preview{width:150px;height:100px;background-color:#eee;border:1px solid var(--border-color);border-radius:4px;overflow:hidden;margin-bottom:.75rem;position:relative}.image-picker-preview img{width:100%;height:100%;object-fit:cover}.image-picker-preview span{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:var(--text-color);font-size:.9rem}.image-picker-actions{display:flex;gap:.5rem}.image-picker-recommendation{font-size:.8rem;color:var(--text-color);margin-top:.5rem}.media-modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#0009;display:flex;justify-content:center;align-items:center;z-index:3000}.media-modal-content{background:#fff;padding:0;border-radius:.75rem;width:90%;max-width:900px;position:relative;max-height:90vh;display:flex;flex-direction:column}.media-modal-header{padding:1rem 1.5rem;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:center}.media-modal-header h3{margin:0}.media-modal-close{background:none;border:none;font-size:2rem;cursor:pointer;color:var(--text-color)}.media-modal-tabs{padding:.5rem 1.5rem;border-bottom:1px solid var(--border-color)}.media-modal-body{padding:1.5rem;overflow-y:auto;flex-grow:1}.media-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:1rem}.media-item{border:2px solid var(--border-color);border-radius:4px;overflow:hidden;position:relative;cursor:pointer;transition:border-color .2s ease,box-shadow .2s ease}.media-item.selected{border-color:var(--primary-color);box-shadow:0 0 0 3px var(--primary-color)}.media-item:hover{border-color:var(--secondary-color)}.media-item-thumbnail{width:100%;padding-bottom:75%;position:relative;background-color:#eee}.media-item-thumbnail img{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover}.media-item-info{padding:.5rem;background:#fff;font-size:.8rem}.media-item-filename{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}.media-item-details{color:var(--text-color)}.media-item-actions{position:absolute;top:5px;right:5px}.upload-area{border:2px dashed var(--border-color);border-radius:.5rem;padding:2rem;text-align:center}.upload-area p{margin:.5rem 0}.upload-area.is-loading .spinner{display:inline-block;width:20px;height:20px;border:3px solid rgba(0,0,0,.1);border-left-color:var(--primary-color);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}#infinite-grid-menu-canvas{cursor:grab;width:100%;height:100%;overflow:hidden;position:relative;outline:none;background:transparent}#infinite-grid-menu-canvas:active{cursor:grabbing}.menu-overlay-content{position:absolute;top:50%;left:50%;display:flex;flex-direction:column;align-items:center;text-align:center;width:90%;max-width:400px;transition:opacity .4s ease,transform .4s ease;-webkit-user-select:none;user-select:none;pointer-events:none}.menu-overlay-content.active{opacity:1;transform:translate(-50%,-50%);pointer-events:none}.menu-overlay-content.inactive{opacity:0;transform:translate(-50%,-45%);pointer-events:none}.face-title{font-family:var(--font-secondary);font-weight:700;font-size:clamp(2rem,5vw,2.8rem);color:#fff;margin:0 0 .25rem;text-shadow:0 2px 8px rgba(0,0,0,.6);line-height:1.2}.face-description{font-size:clamp(1rem,2.5vw,1.1rem);font-family:var(--font-primary);color:#fff;max-width:35ch;margin:0 0 1.5rem;text-shadow:0 1px 4px rgba(0,0,0,.6);line-height:1.6}.action-button{width:55px;height:55px;display:grid;place-items:center;background:var(--secondary-color);border:none;border-radius:50%;cursor:pointer;border:4px solid var(--alt-bg);box-shadow:var(--shadow);transition:transform .2s ease,box-shadow .2s ease;pointer-events:auto}.action-button:hover{transform:scale(1.05);box-shadow:var(--shadow-hover)}.action-button-icon{position:relative;color:#fff;top:1px;font-size:24px;font-weight:700}
