@import"https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700&display=swap";:root{--primary-color: #2c3e50;--secondary-color: #3498db;--light-blue: #a8cff0;--text-color: #333;--light-text: #fff;--gray-text: #666;--border-radius: 8px;--box-shadow: 0 2px 10px rgba(0, 0, 0, .1);--transition: all .3s ease}.landing-page{max-width:100%;overflow-x:hidden}.section-title{font-size:2rem;color:var(--primary-color);margin-bottom:1rem;font-family:Poppins,sans-serif;font-weight:600}.section-description{max-width:800px;margin:0 auto 3rem;color:var(--gray-text);font-family:Poppins,sans-serif}.header{display:flex;justify-content:space-between;align-items:center;padding:.8rem 2rem;background-color:#fff;box-shadow:0 2px 8px #0000001a;position:sticky;top:0;z-index:100;width:100%}.logo-container{display:flex;align-items:center}.header-right{display:flex;align-items:center;gap:1.5rem}.main-nav{display:flex;align-items:center}.nav-list{display:flex;list-style:none;gap:1.5rem;margin:0;padding:0}.nav-item a{text-decoration:none;color:var(--text-color);font-weight:500;font-family:Poppins,sans-serif;font-size:.95rem;transition:var(--transition)}.nav-item a:hover{color:var(--secondary-color)}.sign-in-btn{background-color:#254379;color:#fff;border:none;padding:.5rem 1rem;border-radius:var(--border-radius);cursor:pointer;transition:var(--transition);font-family:Poppins,sans-serif}.mobile-menu-toggle{display:none;background:none;border:none;cursor:pointer;width:40px;height:40px;position:relative;padding:0;z-index:110}.mobile-menu{position:fixed;top:60px;left:0;right:0;background-color:#fff;padding:1rem;box-shadow:0 4px 8px #0000001a;z-index:99}.mobile-nav-item{margin-bottom:1rem}.mobile-nav-item a{text-decoration:none;color:var(--text-color);font-weight:500;font-size:1.1rem;display:block;padding:.8rem 0;border-bottom:1px solid #eee;font-family:Poppins,sans-serif;transition:var(--transition)}.booking-services-section{display:flex;flex-direction:column;align-items:center;justify-content:center;margin:2rem auto;padding:0 1rem;position:relative;z-index:102}.booking-services-nav-wrapper{display:flex;justify-content:center;width:100%}.booking-services-nav{display:inline-flex;position:relative;background-color:#f0f3f7;border-radius:50px;padding:6px;box-shadow:inset 0 2px 4px #0000000d;overflow-x:auto;-ms-overflow-style:none;scrollbar-width:none}.booking-services-nav::-webkit-scrollbar{display:none}.booking-service-btn{display:flex;align-items:center;gap:10px;padding:16px 24px;background:transparent;border:none;border-radius:50px;cursor:pointer;position:relative;z-index:2;transition:color .3s ease;white-space:nowrap}.service-icon:before{content:"";display:block;width:22px;height:22px;background-size:contain;background-position:center;background-repeat:no-repeat;filter:grayscale(100%) opacity(.6);transition:filter .4s ease}.booking-service-btn[data-service=hotels] .service-icon:before{background-image:url(/assets/icons/hotel.png)}.booking-service-btn[data-service=flights] .service-icon:before{background-image:url(/assets/icons/flights.png)}.booking-service-btn[data-service=holidays] .service-icon:before{background-image:url(/assets/icons/holiday.png)}.booking-service-btn[data-service=activities] .service-icon:before{background-image:url(/assets/icons/activities.png)}.service-text{font-family:Poppins,sans-serif;font-size:14px;font-weight:500;color:#555;transition:color .4s ease}.booking-service-btn:hover .service-text{color:#111}.booking-service-btn:hover .service-icon:before{filter:grayscale(80%) opacity(.8)}.booking-service-btn.active .service-text{color:var(--primary-color);font-weight:600}.booking-service-btn.active .service-icon:before{filter:grayscale(0%) opacity(1)}.active-indicator{position:absolute;top:6px;height:calc(100% - 12px);background-color:#fff;border-radius:50px;box-shadow:0 3px 10px #0000001a,0 1px 2px #0000000d;z-index:1;transition:left .4s cubic-bezier(.77,0,.175,1),width .4s cubic-bezier(.77,0,.175,1),opacity .3s ease}@keyframes slideDownFade{0%{opacity:0;transform:translateY(-15px)}to{opacity:1;transform:translateY(0)}}.landing-page-search-container{background:#fff;border-radius:50px;padding:8px;box-shadow:0 6px 20px #0000001a;margin:2rem auto;border:1px solid #ddd;position:relative;width:90%;max-width:1200px;transition:all .2s ease;overflow:visible!important;animation:slideDownFade .5s cubic-bezier(.25,.46,.45,.94) both}.landing-page-search-container:hover{box-shadow:0 10px 30px #00000026;transform:translateY(-1px)}.landing-page-search-form-row{display:flex;flex-wrap:wrap;align-items:stretch;position:relative;min-height:68px;background:#fff;border-radius:32px;overflow:visible}.landing-page-search-field{display:flex;flex-direction:column;justify-content:center;padding:1rem;flex:1;position:relative;border-right:1px solid #ebebeb;cursor:pointer;transition:all .2s ease;min-height:85px;box-sizing:border-box;min-width:150px;overflow:visible!important}.landing-page-search-field:first-child{border-radius:32px 0 0 32px}.landing-page-search-field:last-child{border-right:none}.landing-page-search-field.button-field{flex:0 1 auto;min-width:auto;padding:8px}.landing-page-search-field:hover:not(.button-field){background:linear-gradient(145deg,#fafafa,#f0f4ff);transform:translateY(-1px)}.landing-page-search-field:focus-within{background:linear-gradient(145deg,#fff,#f8f9ff);z-index:10;transform:scale(1.01);box-shadow:0 4px 20px #4f46e514}.landing-page-search-field label{font-size:12px;font-weight:600;color:#6b7280;margin-bottom:4px;text-transform:uppercase;letter-spacing:.5px}.landing-page-search-field input:not([type=date]),.landing-page-search-field input[type=text],.landing-page-search-field select{border:none;background:transparent;font-family:Poppins,sans-serif;font-size:14px;font-weight:400;color:#222;padding:0;margin:0;width:100%;outline:none}.landing-page-search-field select{-moz-appearance:none;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%23667eea' stroke-width='2.5'%3e%3cpath stroke-linecap='round' stroke-linejoin='round' d='M19 9l-7 7-7-7'/%3e%3c/svg%3e");background-position:right 0px center;background-repeat:no-repeat;background-size:16px 16px;font-weight:500;padding:.25rem}.landing-page-search-btn{display:flex;align-items:center;justify-content:center;gap:10px;width:max-content;height:max-content;margin-left:auto;padding:12px 24px;background:linear-gradient(145deg,#2e5191,#254379);color:#fff;border:none;border-radius:50px;font-family:Poppins,sans-serif;font-size:16px;font-weight:600;cursor:pointer;transition:all .25s ease;box-shadow:0 4px 12px #25437940}.landing-page-search-btn:hover{transform:translateY(-2px);box-shadow:0 6px 16px #2543794d;background:linear-gradient(145deg,#345aa1,#284a86)}.landing-page-search-btn:active{transform:translateY(0);box-shadow:0 3px 8px #25437933}.landing-page-search-btn:disabled{background:#ccc;box-shadow:none;transform:none;cursor:not-allowed}.search-btn-text{display:inline}.search-btn-icon{flex-shrink:0;width:20px;height:20px;background:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='white' stroke-width='3'%3e%3cpath stroke-linecap='round' stroke-linejoin='round' d='M21 21l-6-6m2-5a7 7 0 11-14 0 7 7 0 0114 0z' /%3e%3c/svg%3e") no-repeat center;background-size:contain}.btn-spinner{display:inline-block;width:20px;height:20px;border:3px solid rgba(255,255,255,.3);border-radius:50%;border-top-color:#fff;animation:spin 1s ease-in-out infinite}.hotel-destination-input-wrapper,.flight-airport-input-wrapper{position:relative}.airport-suggestions,.hotel-destination-suggestions{position:absolute;top:100%;left:0;right:0;background-color:#fff;border:1px solid #ddd;border-radius:var(--border-radius);box-shadow:var(--box-shadow);overflow-y:auto;z-index:999;margin-top:.5rem}.hotel-destination-suggestions{min-width:250px;max-width:350px}.airport-suggestion,.hotel-destination-suggestion{padding:.8rem 1rem;cursor:pointer;font-family:Poppins,sans-serif;font-size:.9rem;color:var(--text-color);transition:var(--transition)}.airport-suggestion:hover,.hotel-destination-suggestion:hover{background-color:#f5f8fb}.airport-suggestion strong,.hotel-destination-suggestion strong{font-weight:600;color:#213a69}.airport-suggestion .country,.hotel-destination-suggestion .country,.hotel-destination-suggestion .state{color:var(--gray-text);font-size:.85rem;margin-left:.25rem}.search-error-message{width:max-content;margin:auto;background:#fed7d7;border:1px solid #fc8181;border-radius:12px;padding:1rem 1.2rem;margin-top:1.5rem;color:#c53030;font-family:Poppins,sans-serif;font-weight:500;animation:shake .5s ease-in-out}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}.hero-section{margin:auto;width:90%;max-width:1400px;line-height:0}.hero-banner-image{width:100%;height:auto;display:block;border-radius:20px;object-fit:contain}.search-bar-container{max-width:760px;margin:-2.5rem auto 1.5rem;display:flex;position:relative;z-index:101;background-color:#fff;border-radius:50px;padding:.3rem .3rem .3rem 1.5rem;box-shadow:var(--box-shadow);transform:translateY(-50%)}.search-bar-container form{width:100%;display:flex;justify-content:space-between;align-items:center}.search-bar{flex:1;padding:.8rem 0 .8rem 1rem;border:none;border-radius:24px;font-size:1rem;font-family:Poppins,sans-serif;outline:none;color:#666}.search-bar::placeholder{color:#aaa}.search-btn{color:#fff;border:none;background-color:#254379;padding:.8rem 1.5rem;border-radius:24px;cursor:pointer;transition:var(--transition);font-family:Poppins,sans-serif;font-weight:500;display:flex;align-items:center;gap:.5rem}.search-icon{width:18px;height:18px}.search-btn:hover{background-color:#1a325a}.journey-section,.popular-section{padding:2rem;text-align:center}.destinations-container{max-width:1200px;margin:0 auto}.destinations-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}.content-card{background-color:#fff;border-radius:var(--border-radius);overflow:hidden;box-shadow:var(--box-shadow);transition:var(--transition);position:relative;text-align:left}.content-card:hover{transform:translateY(-10px);box-shadow:0 15px 30px #00000026}.content-card-image-wrapper{position:relative;height:200px}.content-card-image{width:100%;height:100%;object-fit:cover;display:block}.content-card-info{padding:1.5rem;display:flex;flex-direction:column;gap:1rem}.content-card-info h3{margin:0 0 .5rem;font-size:1.5rem;font-family:Poppins,sans-serif;font-weight:600}.content-card-description{font-size:.9rem;color:var(--gray-text);margin-bottom:1rem;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;font-family:Poppins,sans-serif;min-height:4.8em}.view-btn-landing{display:block;width:100%;padding:.6rem;background:none;border:1px solid grey;color:gray;border-radius:var(--border-radius);cursor:pointer;transition:var(--transition);font-weight:500;font-family:Poppins,sans-serif;margin-top:auto}.view-btn-landing:hover{background-color:#254379;color:#fff}.bookmark-btn{position:absolute;top:10px;right:10px;background:none;border:none;cursor:pointer;z-index:10}.bookmark-icon{display:flex;justify-content:center;align-items:center;width:36px;height:36px;background-color:#ffffffe6;border-radius:50%;box-shadow:0 2px 5px #0000001a;transition:var(--transition)}.bookmark-icon img{width:24px;height:24px;transition:filter .3s ease}.bookmark-btn.active .bookmark-icon{background-color:var(--secondary-color)}.bookmark-btn.active .bookmark-icon img{filter:brightness(0) invert(1)}.carousel-container{position:relative;max-width:1200px;margin:0 auto;padding:0 30px}.carousel-arrow{position:absolute;top:40%;transform:translateY(-50%);background:#fff;border:none;width:40px;height:40px;border-radius:50%;font-size:1.8rem;display:flex;justify-content:center;align-items:center;cursor:pointer;z-index:10;box-shadow:0 3px 10px #00000026;color:var(--gray-text)}.carousel-arrow.left{left:0}.carousel-arrow.right{right:0}.carousel-track{display:flex;gap:2rem;padding:1rem 0;overflow-x:auto;scroll-behavior:smooth;scroll-snap-type:x mandatory;scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch}.carousel-track::-webkit-scrollbar{display:none}.carousel-track .content-card{min-width:300px;max-width:300px;scroll-snap-align:start;flex:0 0 auto}.carousel-track .content-card-description{-webkit-line-clamp:2;min-height:3.2em}.features-section{padding:4rem 2rem;text-align:center;background-color:#f9f9f9}.features-container{display:flex;justify-content:space-around;gap:3rem;max-width:1200px;margin:0 auto}.feature-item{flex:1;text-align:center}.feature-icon{width:160px;height:160px;margin:0 auto 2rem;display:flex;justify-content:center;align-items:center;background-color:#f5f5f5;border-radius:50%;padding:1.5rem}.icon-image1{height:100%;width:100%;filter:brightness(0) saturate(100%) invert(18%) sepia(6%) saturate(1111%) hue-rotate(173deg) brightness(96%) contrast(89%)}.feature-item h3{margin-bottom:1rem;font-size:1.6rem;font-family:Poppins,sans-serif;font-weight:600;color:#2c3e50}.feature-item p{font-size:1.05rem;color:#4a4a4a;font-family:Poppins,sans-serif;max-width:300px;margin:0 auto}.footer{background-color:#f5f8fb;padding:3rem 2rem 2rem;border-top:1px solid #eee}.footer-content{display:flex;justify-content:flex-start;gap:5rem;max-width:1200px;margin:0 auto 2rem}.footer-section{flex:1;max-width:280px}.footer-heading{font-family:Poppins,sans-serif;font-size:1.1rem;font-weight:600;margin-bottom:1.5rem;color:#333}.footer-links li{margin-bottom:.8rem}.footer-links a{color:#666;text-decoration:none;font-family:Poppins,sans-serif;font-size:.95rem;transition:var(--transition)}.footer-links a:hover{color:var(--secondary-color)}.footer-bottom{display:flex;justify-content:space-between;align-items:center;max-width:1200px;margin:0 auto;padding-top:2rem;border-top:1px solid #ddd}.copyright{font-size:.9rem;color:var(--gray-text);font-family:Poppins,sans-serif}.social-links{display:flex;gap:1.2rem}.social-link{display:inline-flex;color:#666;transition:var(--transition)}.social-link:hover{color:var(--secondary-color)}@media (max-width: 1200px){.destinations-grid{grid-template-columns:repeat(2,1fr);padding:0 1rem}}@media (max-width: 992px){.features-container{flex-wrap:wrap}.feature-item{flex:0 0 45%;margin-bottom:3rem}.carousel-arrow{display:none}.landing-page-search-container{margin:1.5rem auto}.landing-page-search-field{flex:1 1 50%;min-width:200px;border-bottom:1px solid #ebebeb;border-radius:0!important}.landing-page-search-field:nth-child(odd){border-right:1px solid #ebebeb}.landing-page-search-field:nth-child(2n){border-right:none}.landing-page-search-field:first-child{border-radius:32px 0 0!important}.landing-page-search-field:nth-child(2){border-radius:0 32px 0 0!important}.landing-page-search-field:nth-last-child(2){border-bottom:none}.landing-page-search-field.button-field{flex:1 1 100%;min-height:64px;padding:12px;border-top:1px solid #ebebeb;border-radius:0 0 32px 32px}.landing-page-search-field:focus-within{z-index:20}.landing-page-search-field:hover:not(.button-field){transform:none}}@media (max-width: 768px){.header{padding:.8rem 1.2rem}.section-title{font-size:1.8rem}.destinations-grid{grid-template-columns:1fr}.footer-content{flex-direction:column;gap:2rem}.footer-bottom{flex-direction:column;gap:1.5rem}.social-links{order:-1}.main-nav{display:none}.mobile-menu-toggle{display:block}.landing-page-search-container{margin:2rem 1rem}.landing-page-search-form-row{flex-direction:column}.landing-page-search-field{flex:1 1 100%;min-width:100%;border-right:none!important;border-radius:0!important}.landing-page-search-field:first-child{border-radius:32px 32px 0 0!important}.landing-page-search-field.button-field{min-height:70px;border-radius:0 0 28px 28px!important}.booking-services-section{justify-content:flex-start}.booking-services-nav-wrapper{justify-content:center;max-width:100%}.booking-services-nav-wrapper::-webkit-scrollbar{display:none}.feature-item{flex:0 0 100%}.carousel-track .content-card{min-width:280px;max-width:280px}}@media (max-width: 576px){.header-right{gap:.8rem}.sign-in-btn{padding:.3rem .7rem;font-size:.85rem}.search-bar-container{width:90%;border-radius:var(--border-radius);flex-direction:row;padding:.5rem}.search-bar{font-size:.9rem}.search-btn{padding:.6rem 1rem}.search-icon{margin:0}}@media (max-width: 480px){.carousel-track .content-card{min-width:260px;max-width:260px}.carousel-container{padding:0 10px}.carousel-track{gap:.8rem}.booking-service-btn{gap:8px}.service-text{font-size:13px}.landing-page-search-container{margin:1rem}.landing-page-search-field label{font-size:11px}.landing-page-search-field input,.landing-page-search-field select{font-size:13px}}.mobile-search-results{position:absolute!important;top:100%!important;left:0!important;right:0!important;z-index:99999!important;box-shadow:0 6px 20px #0000004d!important;border:1px solid rgba(0,0,0,.15)!important;transform:translateZ(0)}.mobile-search-backdrop{will-change:opacity;transition:opacity .2s ease-in-out;display:none}.search-bar-container{z-index:9000!important;position:relative!important}@media screen and (max-width: 480px){body.search-results-visible .mobile-search-results{animation:slideDown .2s ease-out forwards;max-height:60vh!important}body.search-results-visible [style*="zIndex: 900"]{z-index:50!important}@keyframes slideDown{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.search-bar-container{isolation:isolate}}:root{--primary-color: #213a69;--primary-light: #3a5590;--primary-dark: #162848;--secondary-color: #3498db;--secondary-light: #f6d3d7;--secondary-dark: #e8a1a8;--accent-color: #a6cce3;--accent-light: #c0dbec;--accent-dark: #8cbad9;--text-color: #333;--light-text: #fff;--gray-text: #666;--border-radius: 8px;--box-shadow: 0 2px 10px rgba(0, 0, 0, .1);--transition: all .3s ease;--text-dark: #254379;--text-light: #254379;--background-light: #f9f9f9;--white: #fff;--border-light: #eee;--error-color: #e74c3c;--background-color: #f7f7f7;--light-gray: #e0e0e0;--dark-gray: #757575;--success-color: #00c853;--shadow: 0 2px 4px rgba(0, 0, 0, .1);font-family:Poppins,sans-serif}.search-bar-container{position:relative;max-width:600px;margin:0 auto;font-family:Poppins,sans-serif;background:#fff;border-radius:30px;box-shadow:0 2px 8px #00000026;padding:5px}.search-bar{width:100%;padding:12px 20px;font-size:16px;border:none;border-radius:30px;background-color:transparent;outline:none;font-family:Poppins,sans-serif}.search-btn{position:absolute;right:5px;top:50%;transform:translateY(-50%);background-color:var(--primary-color);color:#fff;border:none;border-radius:50px;padding:10px 20px;cursor:pointer;display:flex;align-items:center;font-family:Poppins,sans-serif}.search-icon{margin-right:4px}@media (min-width: 768px){.search-btn-text{display:inline}}.search-results-dropdown{position:absolute;top:100%;left:0;right:0;background-color:#fff;box-shadow:0 4px 6px #0000001a;border-radius:0 0 8px 8px;z-index:10;max-height:300px;overflow-y:auto;margin-top:2px;font-family:Poppins,sans-serif}.trip-planner-container{display:flex;flex-direction:column;width:100%;min-height:100vh;background-color:#f5f5f5;font-family:Poppins,sans-serif;overflow-x:hidden;position:relative;z-index:1}.trip-planner-content{width:100%;max-width:800px;margin:20px auto;padding:30px;background-color:#fff;border-radius:12px;box-shadow:var(--box-shadow);overflow-x:hidden}.trip-planner-header{margin-bottom:30px;position:relative}.trip-powered-by{font-size:.85rem;color:var(--gray-text);margin-bottom:5px}.trip-title{font-size:1.8rem;font-weight:600;color:var(--text-color);margin:0 0 15px;word-wrap:break-word;overflow-wrap:break-word}.progress-indicator{display:flex;align-items:center;justify-content:space-between;margin-top:15px;flex-wrap:wrap;gap:10px}.progress-bar{flex-grow:1;height:4px;background-color:#e0e0e0;border-radius:4px;overflow:hidden;margin:0 8px}.progress-completed{height:100%;background-color:var(--primary-color);border-radius:4px}.progress-text{font-size:.9rem;color:var(--gray-text);margin-right:15px}.close-btn{background:none;border:none;font-size:1.5rem;color:var(--gray-text);cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center;width:30px;height:30px}.trip-planner-section{margin-bottom:30px}.section-title{font-size:1.6rem;font-weight:600;color:var(--text-color);margin-bottom:10px;text-align:center;word-wrap:break-word}.section-subtitle{font-size:1rem;color:var(--gray-text);margin-bottom:25px;text-align:center;word-wrap:break-word}.trip-types-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-bottom:30px}.trip-type-option{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:20px;border:1px solid #e0e0e0;border-radius:var(--border-radius);background-color:#f7f7f7;transition:var(--transition);cursor:pointer;height:120px}.trip-type-option:hover{border-color:var(--primary-light);background-color:#f0f0f0}.trip-type-option.selected{border-color:var(--primary-color);background-color:var(--primary-color);color:var(--white)}.trip-type-option.selected .trip-type-icon,.trip-type-option.selected .trip-type-label{color:var(--white)}.trip-type-icon{font-size:1.8rem;margin-bottom:10px;color:var(--primary-color);transition:var(--transition)}.trip-type-label{font-size:1rem;font-weight:500;transition:var(--transition)}.datepicker-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#1e293b99;z-index:2000;animation:datepicker-fade-in .3s ease}.datepicker-modal{position:fixed;padding:.5rem;top:50%;left:50%;transform:translate(-50%,-50%);background-color:var(--white);border-radius:12px;box-shadow:0 10px 30px #0003;z-index:2001;width:auto;max-width:90vw;animation:datepicker-slide-up .35s cubic-bezier(.16,1,.3,1)}.datepicker-modal-header{padding:1rem;text-align:center;color:var(--primary-color);font-weight:600;font-size:1rem;border-bottom:1px solid var(--border-light);position:relative}.datepicker-close-btn{position:absolute;top:50%;right:1rem;transform:translateY(-50%);background:none;border:none;font-size:1.5rem;color:var(--gray-text);cursor:pointer;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s ease}.datepicker-close-btn:hover{color:var(--primary-dark);background-color:#f0f3f7}.datepicker-wrapper .date-display{cursor:pointer}.datepicker-wrapper .date-display-content{display:flex;flex-direction:column}.datepicker-wrapper .date-label{font-size:12px;font-weight:600;color:#6b7280;margin-bottom:4px;text-transform:uppercase;letter-spacing:.5px}.datepicker-wrapper .date-value{font-size:14px;font-weight:500;font-family:Poppins,sans-serif}@keyframes datepicker-fade-in{0%{opacity:0}to{opacity:1}}@keyframes datepicker-slide-up{0%{opacity:0;transform:translate(-50%,-48%)}to{opacity:1;transform:translate(-50%,-50%)}}@media (max-width: 768px){.datepicker-modal .calendar-container:last-child{display:none}.datepicker-modal .calendars-container{flex-direction:column;padding:.5rem}.datepicker-modal{width:95vw}}.pet-section{margin-top:35px}.pet-options{display:flex;justify-content:center;gap:20px;margin-top:15px}.pet-option{padding:10px 40px;border:1px solid #e0e0e0;border-radius:50px;background-color:#f7f7f7;transition:var(--transition);cursor:pointer;font-size:1rem}.pet-option:hover{border-color:var(--primary-light)}.pet-option.selected{border-color:var(--primary-color);background-color:var(--primary-color);color:var(--white)}.date-selection-container{margin-bottom:25px}.date-input-row{display:flex;justify-content:space-between;gap:20px;margin-bottom:20px}.date-input-container{flex:1}.date-label{display:block;font-size:.9rem;color:var(--gray-text);margin-bottom:8px}.date-input{display:flex;align-items:center;justify-content:space-between;padding:12px 15px;border:1px solid #e0e0e0;border-radius:var(--border-radius);background-color:#f7f7f7;cursor:pointer;transition:var(--transition)}.date-input:hover{border-color:var(--primary-light)}.date-input.active{border-color:var(--primary-color);background-color:#213a690d}.edit-icon{font-size:.9rem;color:var(--gray-text)}.calendars-container{display:flex;gap:20px;margin-top:20px}.calendar-container{flex:1;border:1px solid #e0e0e0;border-radius:var(--border-radius);padding:15px;background-color:#fff}.calendar-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.calendar-nav-btn{background:none;border:none;color:var(--gray-text);cursor:pointer;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:50%;padding:0;transition:var(--transition)}.calendar-nav-btn:hover{background-color:#f0f0f0;color:var(--primary-color)}.month-name{font-size:1rem;font-weight:500;text-align:center;width:100%}.weekdays-row{display:grid;grid-template-columns:repeat(7,1fr);gap:5px;margin-bottom:10px;text-align:center}.weekday{font-size:.85rem;color:var(--gray-text);padding:5px 0}.calendar-grid .days-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:5px}.calendar-grid .day-cell{display:flex;align-items:center;justify-content:center;height:36px;width:36px;border-radius:50%;cursor:pointer;transition:var(--transition);font-size:.85rem;margin:0 auto}.calendar-grid .day-cell:hover:not(.empty){background-color:#213a691a}.calendar-grid .day-cell.today{border:1px solid var(--primary-color)}.calendar-grid .day-cell.selected{background-color:var(--primary-color);color:var(--white)}.calendar-grid .day-cell.in-range{background-color:#a6cce359;color:var(--text-dark)}.calendar-grid .day-cell.in-range:hover{background-color:#a6cce380}.calendar-grid .day-cell.empty{cursor:default}.calendar-grid .day-cell.deselected{border:2px solid var(--primary-color);color:var(--primary-color);background-color:transparent}.calendar-grid .day-cell.disabled{color:#ccc;cursor:not-allowed}.calendar-grid .day-cell.disabled:hover{background-color:transparent}.unknown-dates-btn{display:block;margin:25px auto 0;padding:0;background:none;border:none;color:var(--primary-color);font-size:.95rem;cursor:pointer;text-decoration:underline;transition:var(--transition)}.unknown-dates-btn:hover{color:var(--primary-dark)}.interests-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:15px;margin-bottom:25px;width:100%;padding:0 5px}.interest-option{padding:12px 20px;border:1px solid #e0e0e0;border-radius:50px;background-color:#f7f7f7;transition:var(--transition);cursor:pointer;font-size:1rem;text-align:center;width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-height:45px;display:flex;align-items:center;justify-content:center;box-sizing:border-box;max-width:100%}.interest-option:hover{border-color:var(--primary-light)}.interest-option.selected{border-color:var(--primary-color);background-color:var(--primary-color);color:var(--white)}.add-interest-btn{display:flex;align-items:center;justify-content:center;gap:10px;margin:15px auto;padding:12px 25px;background:none;border:1px dashed #ccc;border-radius:50px;color:var(--primary-color);font-size:.95rem;cursor:pointer;transition:var(--transition)}.add-interest-btn:hover{border-color:var(--primary-color);background-color:#213a690d}.plus-icon{font-size:.8rem}.add-interest-container{display:flex;align-items:center;gap:15px;margin:25px auto;max-width:500px;width:100%}.add-interest-input{flex:1;padding:12px 15px;border:1px solid #e0e0e0;border-radius:var(--border-radius);font-size:1rem;transition:var(--transition)}.add-interest-input:focus{outline:none;border-color:var(--primary-color)}.add-btn{padding:12px 25px;background-color:var(--primary-color);color:#fff;border:none;border-radius:var(--border-radius);font-size:1rem;cursor:pointer;transition:var(--transition)}.add-btn:hover{background-color:var(--primary-dark)}.add-btn:disabled{background-color:#ccc;cursor:not-allowed}.subroutes-container{max-width:900px;margin:0 auto;padding:20px}.subroutes-heading{margin-bottom:20px;text-align:center}.subroutes-heading h3{font-size:1.5rem;font-weight:600;color:var(--text-dark);margin-bottom:8px}.subroutes-heading p{color:var(--gray-text);font-size:1rem}.subroutes-list{display:flex;flex-wrap:nowrap;overflow-x:auto;gap:20px;padding:10px 0;margin-bottom:30px;-webkit-overflow-scrolling:touch;scrollbar-width:thin}.subroute-item{background-color:var(--white);border-radius:12px;box-shadow:0 2px 8px #0000001a;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease;flex:0 0 300px;max-width:300px;display:flex;flex-direction:column}.subroute-item:hover{transform:translateY(-5px);box-shadow:0 5px 15px #00000026}.subroute-item.selected{border:2px solid var(--primary-color)}.subroute-image{width:100%;height:180px;position:relative;background-color:#f5f5f5;background-image:url(/assets/map-placeholders/map-placeholder.svg);background-size:cover;background-position:center;display:flex;align-items:center;justify-content:center;overflow:hidden}.subroute-image img{width:100%;height:100%;object-fit:cover}.subroute-content{padding:20px;display:flex;flex-direction:column;flex-grow:1}.subroute-title{font-size:1.5rem;font-weight:600;color:var(--text-dark);margin-bottom:12px}.subroute-description{color:var(--text-light);font-size:.95rem;line-height:1.5;margin-bottom:20px;flex-grow:1}.itinerary-details{background-color:#f9f9f9;border-radius:6px;padding:12px;margin-bottom:15px}.itinerary-location,.itinerary-duration,.itinerary-dates{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.itinerary-location:last-child,.itinerary-duration:last-child,.itinerary-dates:last-child{margin-bottom:0}.detail-label{font-weight:600;color:var(--text-dark);font-size:.9rem}.detail-value{font-size:.9rem;color:var(--text-dark)}.subroute-actions{margin-top:auto;display:flex;justify-content:center}.select-route-btn,.view-btn{width:100%;padding:12px 0;border:none;cursor:pointer;font-size:1rem;transition:background-color .3s ease;text-align:center}.select-route-btn{background-color:var(--primary-color);color:#fff;border-radius:4px}.select-route-btn:hover{background-color:var(--primary-dark)}.view-btn{background-color:var(--accent-color);color:var(--primary-color);border-radius:4px}.view-btn:hover{background-color:var(--accent-dark)}.selected-routes-actions{display:flex;justify-content:center;gap:20px;margin-top:30px;margin-bottom:30px}.back-button,.next-button{padding:12px 30px;border-radius:var(--border-radius);font-size:1rem;cursor:pointer;transition:var(--transition)}.back-button{background:none;border:1px solid #e0e0e0;color:var(--gray-text)}.next-button{background-color:var(--primary-color);color:#fff;border:none}.next-button:hover:not(:disabled){background-color:var(--primary-dark)}.next-button:disabled{background-color:#ccc;cursor:not-allowed}.trip-planner-actions{display:flex;justify-content:space-between;margin-top:30px}.back-btn,.next-btn{padding:12px 30px;border-radius:50px;font-size:1rem;cursor:pointer;transition:var(--transition);min-width:120px}.login-btn{background-color:#254379;color:#fff;border:none;padding:12px 30px;border-radius:10px}.back-btn{background:none;border:1px solid #e0e0e0;color:var(--gray-text)}.back-btn:hover{background-color:#f5f5f5}.next-btn{background-color:var(--primary-color);border:none;color:#fff}.next-btn.disabled{background-color:#ccc;cursor:not-allowed}.next-btn:not(.disabled):hover{background-color:var(--primary-dark)}.loading-container,.error-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px;text-align:center;padding:20px}.error-container p{color:#d32f2f;margin-bottom:20px}.retry-btn{background-color:var(--primary-color);color:#fff;border:none;padding:10px 20px;border-radius:8px;cursor:pointer}.retry-btn:hover{background-color:var(--primary-dark)}@media (max-width: 768px){.trip-planner-content{padding:20px;margin:10px auto;width:95%;max-width:95%;border-radius:8px}.trip-types-grid{grid-template-columns:1fr;gap:15px;margin:0 auto}.date-input-row{flex-direction:column;gap:15px}.interests-grid{grid-template-columns:repeat(2,1fr);gap:12px;width:100%;padding:0;margin:0 auto}.interest-option{padding:10px 15px;font-size:.9rem;min-height:40px;border-radius:40px;text-align:center}.subroutes-list{padding-bottom:10px}.subroute-item{flex:0 0 280px;max-width:280px;margin:0 auto}.selected-routes-actions{flex-direction:column;gap:10px;width:100%;margin:0 auto}.back-button,.next-button{width:100%}.section-title{font-size:1.4rem;padding:0;text-align:center;width:100%}.calendars-container{flex-direction:column;margin:0 auto}.location-display{flex-direction:column;align-items:center;justify-content:center;text-align:center;width:100%}.location-display h3{margin-bottom:10px;text-align:center}.progress-indicator{gap:8px;justify-content:center}.progress-bar{margin:0 10px}.trip-planner-actions{gap:15px;justify-content:center}.pet-options{margin:0 auto;justify-content:center}}@media (max-width: 480px){.trip-planner-content{padding:15px;margin:5px auto;width:95%;max-width:95%;border-radius:8px}.interests-grid{grid-template-columns:repeat(1,1fr);gap:10px;width:100%;margin:0 auto 15px}.interest-option{padding:10px 15px;font-size:.9rem;min-height:40px;width:100%;border-radius:30px;max-width:100%;text-align:center}.pet-options{flex-direction:column;gap:10px;align-items:center;width:100%}.pet-option{width:100%;max-width:250px;text-align:center}.add-interest-container{flex-direction:column;gap:10px;align-items:center;width:100%}.back-btn,.next-btn{padding:12px 20px;font-size:.9rem;width:100%;max-width:250px;margin:0 auto}.section-title{font-size:1.3rem;padding:0;margin-left:auto;margin-right:auto}.section-subtitle{font-size:.9rem;padding:0;margin-left:auto;margin-right:auto}.trip-planner-actions{margin-top:25px;flex-direction:column;gap:15px;align-items:center}.progress-indicator{flex-wrap:wrap;gap:10px;justify-content:center}.progress-bar{order:3;width:100%;margin:10px 0}.progress-text{order:4;width:100%;text-align:center;margin:0}.back-btn{order:1}.close-btn{order:2}.calendar-grid .day-cell{height:32px;width:32px;font-size:.8rem}.subroute-title{font-size:1.3rem;text-align:center}.subroute-item{flex:0 0 260px;max-width:260px;margin:0 auto}.add-interest-btn{width:100%;margin:15px auto;max-width:250px}.trip-title{font-size:1.5rem;text-align:center}.trip-planner-header{margin-bottom:20px;text-align:center}.trip-powered-by{text-align:center}}@media (max-width: 360px){.trip-planner-content{padding:12px;margin:5px auto;width:95%}.interests-grid{gap:8px}.interest-option{padding:8px 12px;font-size:.85rem;min-height:36px}.section-title{font-size:1.2rem}.section-subtitle{font-size:.85rem}.progress-bar{margin:0 8px}}.additional-stops{margin-top:8px;display:flex;flex-direction:column}.additional-stops .detail-value{display:flex;flex-wrap:wrap;gap:4px;font-size:.9rem}.additional-stop{color:var(--text-dark)}@media (max-width: 480px){.additional-stops{flex-direction:column;align-items:flex-start}.additional-stops .detail-value{margin-top:4px;width:100%}}.city-recommendations{margin-top:15px;padding:10px;background-color:#a6cce333;border-radius:8px}.city-recommendations p{margin:5px 0;font-size:.95rem;color:var(--text-dark)}.city-recommendations strong{font-weight:600;color:var(--primary-color)}@media (max-width: 768px){.city-recommendations{padding:8px}.city-recommendations p{font-size:.85rem}}.loading-message{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;gap:15px;text-align:center}.loading-spinner{width:40px;height:40px;border:3px solid rgba(33,58,105,.3);border-top:3px solid var(--primary-color);border-radius:50%;animation:spin 1s linear infinite}.error-message{color:var(--error-color);text-align:center;margin:20px 0}.location-display{display:flex;justify-content:space-between;align-items:center;padding:15px;background-color:var(--background-light);border-radius:var(--border-radius);margin-bottom:25px;flex-wrap:wrap;gap:10px}.location-display h3{font-size:1.1rem;font-weight:500;color:var(--text-dark);margin:0}.edit-location-btn{background:none;border:none;color:var(--primary-color);font-size:.9rem;cursor:pointer;text-decoration:underline;padding:5px 10px}.edit-location-btn:hover{color:var(--primary-dark)}.location-edit-container{margin-bottom:30px;padding:20px;border-radius:var(--border-radius);background-color:#f9f9f9;border:1px solid #e0e0e0}.location-suggestions{margin-top:15px}.suggestion-label{font-size:.9rem;color:var(--gray-text);margin-bottom:10px}.suggestion-tags{display:flex;flex-wrap:wrap;gap:10px}.suggestion-tag{padding:5px 12px;border-radius:20px;background-color:#e8f0fe;color:var(--primary-color);font-size:.85rem;border:none;cursor:pointer;transition:var(--transition)}.suggestion-tag:hover{background-color:var(--primary-color);color:#fff}@media (max-width: 768px){.location-display{flex-direction:column;align-items:flex-start}.suggestion-tags{gap:8px}}@media (max-width: 480px){.suggestion-tag{padding:4px 10px;font-size:.8rem}}.payment-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#000000b3;display:flex;justify-content:center;align-items:center;z-index:9999;animation:fadeIn .3s ease-in-out}.payment-overlay-content{position:relative;width:90%;max-width:600px;max-height:90vh;overflow-y:auto;background:#fff;border-radius:12px;padding:30px;animation:slideUp .3s ease-in-out;box-shadow:0 10px 25px #0003;border-top:5px solid #213a69}.payment-overlay-close{position:absolute;top:15px;right:15px;background:none;border:none;font-size:28px;color:#666;cursor:pointer;z-index:1001;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s ease}.payment-overlay-close:hover{color:#e74c3c;background-color:#0000000d}.payment-overlay-close:focus{outline:2px solid #4a90e2}body.payment-overlay-active{overflow:hidden}.payment-overlay .pay-button,.payment-overlay .back-button,.payment-overlay .alternate-button{font-family:Poppins,sans-serif}@media (max-width: 768px){.payment-overlay-content{width:90%;padding:25px}}@media (max-width: 480px){.payment-overlay-content{width:95%;padding:20px}.payment-success-message{padding:15px}.payment-success-icon{width:35px;height:35px;font-size:20px}}.payment-success-message{background-color:#e8f5e9;border-left:4px solid #4caf50;border-radius:8px;padding:20px;margin-bottom:25px;display:flex;flex-direction:column;align-items:center;text-align:center;animation:slideDown .5s ease-in-out}.payment-success-icon{background-color:#4caf50;color:#fff;width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:24px;margin-bottom:15px}.payment-success-message h3{color:#2e7d32;margin:0 0 10px;font-weight:600}.payment-success-message p{color:#1b5e20;margin:0}@keyframes slideDown{0%{transform:translateY(-20px);opacity:0}to{transform:translateY(0);opacity:1}}.landing-page-search-field .calendars-container .calendar-container{min-width:280px;flex:1}.landing-page-search-field .calendars-container .calendar-grid{width:100%}.landing-page-search-field .calendars-container .day-cell{width:36px;height:36px;margin:0 auto;font-size:.95rem;font-weight:500}.landing-page-search-field .calendars-container .day-cell.selected{background-color:#213a69;position:relative;z-index:2}.landing-page-search-field .calendars-container .day-cell.in-range{background-color:#213a6933;position:relative}.landing-page-search-field .calendars-container .day-cell.selected:after{content:"";position:absolute;top:-2px;right:-2px;bottom:-2px;left:-2px;border:2px solid #213a69;border-radius:50%;pointer-events:none}.landing-page-search-field .calendars-container .day-cell.in-range:hover{background-color:#213a694d}.landing-page-search-field .month-name{font-size:1rem;font-weight:600;color:#213a69}.landing-page-search-field .weekday{font-size:.85rem;font-weight:600;color:#666}.close-calendar-btn{padding:8px;border-radius:50%;transition:all .2s ease}.close-calendar-btn:hover{background-color:#0000000d}.landing-page-search-field .calendar-nav-btn{background-color:#f5f5f5;width:30px;height:30px}.landing-page-search-field .calendar-nav-btn:hover{background-color:#eaeaea}@media (max-width: 768px){.landing-page-search-field .calendars-container .calendar-container{min-width:100%}}.guest-selector{position:relative;width:100%}.guest-selector-display{display:flex;align-items:center;justify-content:space-between;background-color:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:10px 16px;cursor:pointer;transition:all .2s ease;min-height:56px}.guest-selector-display:hover{border-color:#a0a0a0;box-shadow:0 2px 4px #0000000d}.guest-selector-content{display:flex;flex-direction:column;overflow:hidden}.guest-selector-label{font-size:11px;font-weight:600;color:#666;margin-bottom:2px;letter-spacing:.5px}.guest-selector-value{font-size:14px;color:#333;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.guest-dropdown-container{position:fixed;top:0;left:0;right:0;bottom:0;z-index:1000;display:flex;justify-content:center;align-items:center;padding:0;overflow:auto}.guest-dropdown-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background-color:#00000080;z-index:-1}.guest-dropdown{background-color:#fff;border-radius:12px;box-shadow:0 4px 20px #00000026;width:100%;max-width:380px;padding:20px;z-index:1001;animation:fadeInDown .3s ease;max-height:90vh;overflow-y:auto}.guest-dropdown-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid #eee}.guest-dropdown-header h3{font-size:16px;font-weight:600;color:#213a69;margin:0}.guest-option{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid #f0f0f0}.guest-option-label{display:flex;flex-direction:column}.guest-option-label span{font-size:14px;font-weight:500;color:#333}.guest-option-label small{font-size:12px;color:#888;margin-top:2px}.guest-counter{display:flex;align-items:center;gap:12px}.child-ages-container{margin-top:16px;padding-top:12px;border-top:1px solid #f0f0f0}.child-ages-container h4{font-size:14px;font-weight:600;color:#213a69;margin:0 0 12px}.child-ages-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.child-age-selector{display:flex;flex-direction:column;gap:4px}.child-age-selector label{font-size:12px;color:#666}.child-age-selector select{padding:8px 10px;border:1px solid #ddd;border-radius:6px;font-size:14px;color:#333;background-color:#fff;width:100%;transition:border-color .2s}.child-age-selector select:focus{outline:none;border-color:#4a90e2}.guest-dropdown-footer{margin-top:20px;display:flex;justify-content:flex-end}@media (max-width: 480px){.guest-dropdown{max-width:95%;padding:16px}.child-ages-grid{grid-template-columns:1fr}.guest-option-label span{font-size:13px}.guest-option-label small{font-size:11px}.counter-btn{width:28px;height:28px;font-size:16px}.counter-value{font-size:14px}}.flight-passenger-selector{position:relative;width:100%}.passenger-selector-display{display:flex;align-items:center;justify-content:space-between;background-color:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:10px 16px;cursor:pointer;transition:all .2s ease;min-height:56px}.passenger-selector-display:hover{border-color:#a0a0a0;box-shadow:0 2px 4px #0000000d}.passenger-selector-content{display:flex;flex-direction:column;overflow:hidden}.passenger-selector-label{font-size:11px;font-weight:600;color:#666;margin-bottom:2px;letter-spacing:.5px}.passenger-selector-value{font-size:14px;color:#333;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.passenger-error-message{color:#d9534f;font-size:13px;text-align:center;margin-top:10px;font-weight:500}.dropdown-arrow{font-size:10px;color:#666;transition:transform .3s ease}.dropdown-arrow.open{transform:rotate(180deg)}.passenger-dropdown-container{position:fixed;top:0;left:0;right:0;bottom:0;z-index:1000;display:flex;justify-content:center;align-items:flex-start;padding-top:80px}.passenger-dropdown-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background-color:#00000080;z-index:-1}.passenger-dropdown{background-color:#fff;border-radius:12px;box-shadow:0 4px 20px #00000026;width:100%;max-width:380px;padding:20px;z-index:1001;animation:fadeInDown .3s ease}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.passenger-dropdown-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid #eee}.passenger-dropdown-header h3{font-size:16px;font-weight:600;color:#213a69;margin:0}.close-dropdown-btn{background:none;border:none;font-size:18px;color:#666;cursor:pointer;width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:background-color .2s}.close-dropdown-btn:hover{background-color:#f0f0f0}.passenger-options{margin-bottom:20px}.passenger-option{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid #f0f0f0}.passenger-option:last-child{border-bottom:none}.passenger-option-label{display:flex;flex-direction:column}.passenger-option-label span{font-size:14px;font-weight:500;color:#333}.passenger-option-label small{font-size:12px;color:#888;margin-top:2px}.passenger-counter{display:flex;align-items:center;gap:12px}.counter-btn{width:32px;height:32px;border-radius:50%;border:1px solid #ddd;background-color:#fff;color:#333;font-size:18px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s}.counter-btn:hover:not(:disabled){background-color:#f5f5f5;border-color:#ccc}.counter-btn:disabled{opacity:.5;cursor:not-allowed}.counter-value{font-size:16px;font-weight:500;min-width:24px;text-align:center}.cabin-class-section{margin-top:16px;padding-top:16px;border-top:1px solid #eee}.cabin-class-section h4{font-size:14px;font-weight:600;color:#213a69;margin:0 0 12px}.cabin-class-options{display:grid;grid-template-columns:1fr 1fr;gap:12px}.cabin-class-option{display:flex;align-items:center;gap:8px;cursor:pointer;padding:8px 0}.cabin-class-option input[type=radio]{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:18px;height:18px;border:2px solid #ddd;border-radius:50%;outline:none;transition:all .2s;position:relative;cursor:pointer}.cabin-class-option input[type=radio]:checked{border-color:#213a69}.cabin-class-option input[type=radio]:checked:before{content:"";position:absolute;width:10px;height:10px;background-color:#213a69;border-radius:50%;top:50%;left:50%;transform:translate(-50%,-50%)}.cabin-class-option span{font-size:14px;color:#333}.passenger-dropdown-footer{margin-top:20px;display:flex;justify-content:flex-end}.apply-btn{background-color:#213a69;color:#fff;border:none;border-radius:6px;padding:10px 20px;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .2s}.apply-btn:hover{background-color:#1a2e54}@media (max-width: 480px){.passenger-dropdown{max-width:95%;padding:16px}.cabin-class-options{grid-template-columns:1fr}.passenger-option-label span{font-size:13px}.passenger-option-label small{font-size:11px}.counter-btn{width:28px;height:28px;font-size:16px}.counter-value{font-size:14px}}.header{display:flex;justify-content:space-between;align-items:center;padding:.8rem 1.5rem;background-color:#fffffff2;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);box-shadow:0 2px 8px #0000001a;position:fixed;top:0;z-index:1000;width:100%;max-width:100%;box-sizing:border-box;transition:background-color .3s ease,backdrop-filter .3s ease;min-height:64px}.header.scrolled{background-color:#ffffff73;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}body{padding-top:65px}.logo-container{display:flex;align-items:center;flex-shrink:0;position:relative}.logo-container a{display:flex;align-items:center;text-decoration:none;gap:8px}.logo-container img{border-radius:0}.beta-badge{background-color:#254379;color:#fff;font-size:.7rem;font-weight:600;padding:2px 6px;border-radius:4px;text-transform:uppercase;letter-spacing:.5px;display:none}.logo{height:30px}.header-right{display:flex;align-items:center;gap:1rem;flex-shrink:0}.header-right p{font-size:.8rem;font-weight:500;color:#254379}.mobile-menu-toggle{display:none;background:none;border:none;cursor:pointer;width:40px;height:40px;position:relative;padding:0;z-index:110;flex-shrink:0}.menu-icon{display:block;position:relative;width:24px;height:2px;background-color:var(--primary-color);margin:0 auto;transition:background-color .3s}.menu-icon:before,.menu-icon:after{content:"";position:absolute;width:24px;height:2px;background-color:var(--primary-color);left:0;transition:transform .3s}.menu-icon:before{top:-8px}.menu-icon:after{bottom:-8px}.mobile-menu-toggle[aria-expanded=true] .menu-icon{background-color:transparent}.mobile-menu-toggle[aria-expanded=true] .menu-icon:before{transform:rotate(45deg) translate(5px,5px)}.mobile-menu-toggle[aria-expanded=true] .menu-icon:after{transform:rotate(-45deg) translate(5px,-5px)}.mobile-menu{position:fixed;top:60px;left:0;right:0;background-color:#fffffff2;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);padding:1rem;box-shadow:0 4px 8px #0000001a;z-index:999;max-height:calc(100vh - 60px);overflow-y:auto}.mobile-nav-list{list-style:none;padding:0;margin:0}.mobile-nav-item{margin-bottom:.5rem}.mobile-nav-item a{text-decoration:none;color:var(--text-color);font-weight:500;font-size:1rem;display:flex;align-items:center;padding:.8rem 0;border-bottom:1px solid #eee;font-family:Poppins,sans-serif;transition:var(--transition);gap:12px}.mobile-nav-item a:hover{color:var(--secondary-color)}.main-nav{display:flex;align-items:center;margin-right:1rem}.nav-list{display:flex;list-style:none;gap:1.2rem;margin:0;padding:0;align-items:center}.nav-item{display:flex;align-items:center}.nav-item a{text-decoration:none;color:var(--text-color);font-weight:500;font-family:Poppins,sans-serif;font-size:.9rem;transition:var(--transition);white-space:nowrap;display:flex;align-items:center;gap:8px;padding:.5rem .8rem;border-radius:4px}.nav-icon{width:20px;height:20px;object-fit:contain;vertical-align:middle;display:inline-block;flex-shrink:0}.nav-item a:hover{color:#193466}.bucketlist-item{position:relative}.bucketlist-item a{display:flex;align-items:center;padding:.6rem 1.2rem;background-color:transparent;color:var(--text-color);border:none;border-radius:4px;cursor:pointer;font-weight:500;font-size:.9rem;text-decoration:none;font-family:Poppins,sans-serif;transition:var(--transition);white-space:nowrap;gap:8px}.bucketlist-item a:hover{color:#4310cf}.bucketlist-item a:hover .nav-icon{opacity:.8}.sign-in-btn{padding:.6rem 1.2rem;background-color:#254379;color:#fff;border:none;border-radius:4px;cursor:pointer;font-weight:500;font-size:.9rem;text-decoration:none;font-family:Poppins,sans-serif;transition:var(--transition);white-space:nowrap;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;min-height:40px}.sign-in-btn:hover{background-color:#1a325a}.desktop-only-btn{display:inline-flex}.mobile-auth-btn{width:100%;padding:.8rem 1.2rem;background-color:#254379;color:#fff;border:none;border-radius:4px;cursor:pointer;font-family:Poppins,sans-serif;font-weight:500;margin-top:1rem}.mobile-auth-btn:hover{background-color:#1a325a}.logo-large{display:inline-block}.logo-small{display:none}@media (max-width: 992px){.header{padding:.8rem 1.2rem}.nav-list{gap:.8rem}.nav-item a,.itinerary-btn{font-size:.85rem;padding:.4rem .6rem}.sign-in-btn{padding:.5rem 1rem;font-size:.85rem}.nav-icon{width:18px;height:18px}}@media (max-width: 768px){.header{padding:.8rem 1rem;min-height:60px}.logo{height:24px}.header-right{gap:.5rem}.sign-in-btn{padding:.5rem .8rem;font-size:.8rem;min-height:36px}.desktop-only-btn{display:none!important}.nav-list{display:none}.mobile-menu-toggle,.mobile-menu{display:block}body{padding-top:60px}.nav-icon{width:18px;height:18px}}@media (max-width: 576px){.header{padding:.6rem .8rem;min-height:56px}.header-right{gap:.3rem}.sign-in-btn{padding:.4rem .6rem;font-size:.75rem;min-height:32px}.mobile-menu{top:56px}body{padding-top:56px}.nav-icon{width:16px;height:16px}}.itinerary-btn{background:none;border:none;color:var(--text-color, #333);cursor:pointer;font-size:.9rem;font-weight:500;padding:.5rem .8rem;transition:color .2s ease;text-decoration:none;font-family:Poppins,sans-serif;display:flex;align-items:center;gap:8px;border-radius:4px;white-space:nowrap}.itinerary-btn:hover{color:var(--primary-color, #273d7c)}.itinerary-btn:hover .nav-icon{opacity:.8}.mobile-itinerary-btn{background:none;border:none;color:var(--text-color, #333);cursor:pointer;display:flex;align-items:center;font-size:1rem;font-weight:500;margin:0;padding:.8rem 0;text-align:left;width:100%;font-family:Poppins,sans-serif;gap:12px;border-bottom:1px solid #eee}.mobile-itinerary-btn:hover{background-color:#273d7c1a}.mobile-nav-item a{display:flex;align-items:center;gap:8px}.profile-dropdown-container{position:relative}.profile-dropdown-btn{display:flex;align-items:center;gap:8px;background:none;border:none;cursor:pointer;padding:.4rem .6rem;border-radius:8px;transition:var(--transition);font-family:Poppins,sans-serif;color:var(--text-color);height:44px;min-width:60px}.profile-dropdown-btn:hover{background-color:#25437914;transform:translateY(-1px);box-shadow:0 2px 8px #25437926}.profile-dropdown-btn:active{transform:translateY(0)}.profile-avatar{width:34px!important;height:34px!important;border-radius:50%;background:linear-gradient(135deg,#2a4a8a,#4b6cb7);color:var(--light-text);display:flex;align-items:center;justify-content:center;font-weight:300;font-size:1.5rem;font-family:Poppins,sans-serif;flex-shrink:0;box-shadow:0 0 8px #25437966;transition:var(--transition)}.profile-dropdown-btn:hover .profile-avatar{transform:scale(1.08);box-shadow:0 0 12px #25437980}.profile-dropdown-arrow{transition:transform .2s ease;color:var(--gray-text);width:12px;height:12px;flex-shrink:0;opacity:.7}.profile-dropdown-arrow.open{transform:rotate(180deg)}.profile-dropdown-btn:hover .profile-dropdown-arrow{opacity:1;color:var(--primary-color)}.profile-dropdown-menu{position:absolute;top:100%;right:0;width:380px;min-width:300px;background-color:#fff;border-radius:12px;box-shadow:0 8px 24px #0000001f,0 4px 8px #00000014;border:1px solid rgba(0,0,0,.05);overflow:hidden;z-index:1000;margin-top:8px;animation:profileDropdownFadeIn .25s ease-out}@keyframes profileDropdownFadeIn{0%{opacity:0;transform:translateY(-12px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.profile-dropdown-menu:before{content:"";position:absolute;top:-8px;right:20px;width:16px;height:16px;background-color:#fff;transform:rotate(45deg);border-top:1px solid rgba(0,0,0,.05);border-left:1px solid rgba(0,0,0,.05);box-shadow:-2px -2px 4px #00000005}.profile-dropdown-header{padding:18px 28px;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-bottom:1px solid rgba(0,0,0,.05)}.profile-dropdown-user-info .profile-dropdown-name{font-size:16px;font-weight:600;color:var(--text-color);margin:0;font-family:Poppins,sans-serif;line-height:1.2}.profile-dropdown-user-info .profile-dropdown-email{font-size:14px;color:var(--gray-text);margin:4px 0 0;font-family:Poppins,sans-serif;opacity:.8}.profile-dropdown-divider{height:1px;background:linear-gradient(90deg,transparent,rgba(0,0,0,.1),transparent);margin:0}.profile-dropdown-items{padding:8px 0}.profile-dropdown-item{width:100%;display:flex;align-items:center;gap:16px;padding:14px 28px;border:none;background:none;cursor:pointer;font-family:Poppins,sans-serif;font-size:15px;font-weight:500;color:var(--text-color);transition:all .2s ease;text-align:left;position:relative;white-space:nowrap}.profile-dropdown-item:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background-color:var(--primary-color);transform:scaleY(0);transition:transform .2s ease}.profile-dropdown-item:hover{background-color:#2543790d;color:var(--primary-color);padding-left:32px}.profile-dropdown-item:hover:before{transform:scaleY(1)}.profile-dropdown-item.profile-dropdown-logout{color:#e74c3c;margin-top:4px}.profile-dropdown-item.profile-dropdown-logout:before{background-color:#e74c3c}.profile-dropdown-item.profile-dropdown-logout:hover{background-color:#e74c3c0d;color:#c0392b}.profile-dropdown-icon{width:22px;height:22px;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:18px;opacity:.8;transition:opacity .2s ease}.profile-dropdown-item:hover .profile-dropdown-icon{opacity:1}.profile-dropdown-icon img{width:22px;height:22px;object-fit:contain;filter:grayscale(20%);transition:filter .2s ease}.profile-dropdown-item:hover .profile-dropdown-icon img{filter:grayscale(0%)}.mobile-nav-btn{background:none;border:none;color:var(--text-color, #333);cursor:pointer;display:flex;align-items:center;font-size:1rem;font-weight:500;margin:0;padding:.8rem 0;text-align:left;width:100%;font-family:Poppins,sans-serif;gap:12px;border-bottom:1px solid #eee}.mobile-nav-btn:hover{background-color:#273d7c1a}.mobile-nav-icon{width:20px;height:20px;object-fit:contain;vertical-align:middle;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;font-size:18px}.mobile-nav-icon img{width:18px;height:18px;object-fit:contain}.logout-btn{background-color:#213a69!important;color:#fff!important;border-radius:4px;margin-top:10px}.logout-btn:hover{background-color:#c0392b!important}@media (max-width: 768px){.profile-dropdown-btn{padding:.3rem .5rem;height:40px;min-width:52px}.profile-avatar{width:30px;height:30px;font-size:.9rem;box-shadow:0 0 6px #2543794d}.profile-dropdown-arrow{width:10px;height:10px}.profile-dropdown-menu{width:calc(100vw - 32px);max-width:400px;min-width:300px;right:16px;left:auto;margin-top:6px}.profile-dropdown-menu:before{right:50%;transform:translate(50%) rotate(45deg)}.profile-dropdown-header{padding:14px 16px}.profile-dropdown-user-info .profile-dropdown-name{font-size:14px}.profile-dropdown-user-info .profile-dropdown-email{font-size:12px}.profile-dropdown-item{padding:10px 16px;font-size:13px}.profile-dropdown-item:hover{padding-left:20px}.profile-dropdown-icon{width:16px;height:16px;font-size:14px}.profile-dropdown-icon img{width:16px;height:16px}}@media (max-width: 576px){.profile-dropdown-btn{padding:.25rem .4rem;height:36px;min-width:48px}.profile-avatar{width:28px;height:28px;font-size:.85rem;box-shadow:0 0 5px #25437940}.profile-dropdown-arrow{width:8px;height:8px}.profile-dropdown-menu{width:calc(100vw - 24px);max-width:380px;min-width:280px;right:12px;left:auto;transform-origin:top right}.profile-dropdown-header{padding:12px 14px}.profile-dropdown-user-info .profile-dropdown-name{font-size:13px}.profile-dropdown-user-info .profile-dropdown-email{font-size:11px}.profile-dropdown-item{padding:8px 14px;font-size:12px}.profile-dropdown-item:hover{padding-left:18px}}.bucketlist-popup{position:absolute;top:100%;right:0;width:350px;background-color:#fff;border-radius:8px;box-shadow:0 4px 12px #00000026;overflow:hidden;z-index:1000;margin-top:8px;border:1px solid rgba(0,0,0,.08);opacity:1;transition:opacity .2s ease-in-out}.bucketlist-popup-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-bottom:1px solid #eaeaea}.bucketlist-popup-header h3{margin:0;font-size:16px;font-weight:600;color:#254379}.view-all-btn{background:none;border:none;color:#254379;font-size:13px;cursor:pointer;padding:4px 8px;border-radius:4px;transition:background-color .2s;display:flex;align-items:center;justify-content:center}.view-all-btn:hover{background-color:#2543791a}.view-all-btn:focus{outline:none;box-shadow:0 0 0 2px #2543794d}.bucketlist-popup-content{max-height:400px;overflow-y:auto}.bucketlist-popup-loading,.bucketlist-popup-error,.bucketlist-popup-empty{padding:20px;text-align:center;color:#666}.bucketlist-popup-empty p{margin-bottom:12px}.explore-btn{background-color:#254379;color:#fff;border:none;padding:8px 16px;border-radius:4px;cursor:pointer;font-weight:500;font-size:14px;transition:background-color .2s;display:flex;align-items:center;justify-content:center;margin:0 auto}.explore-btn:hover{background-color:#1a325a}.explore-btn:focus{outline:none;box-shadow:0 0 0 2px #2543794d}.bucketlist-popup-list{list-style:none;padding:0;margin:0}.bucketlist-popup-item{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-bottom:1px solid #f0f0f0;cursor:pointer;transition:background-color .2s}.bucketlist-popup-item:hover{background-color:#f9f9f9}.bucketlist-popup-item:active{background-color:#f0f0f0}.bucketlist-popup-item-info{flex:1}.bucketlist-popup-item h4{margin:0 0 4px;font-size:14px;font-weight:500;color:#333}.bucketlist-popup-item-details{display:flex;align-items:center;gap:6px;font-size:12px;color:#666;flex-wrap:wrap}.bucketlist-popup-remove-btn{background:none;border:none;color:#999;font-size:18px;cursor:pointer;padding:4px 8px;border-radius:50%;line-height:1;transition:all .2s;display:flex;align-items:center;justify-content:center;margin-left:8px;z-index:5}.bucketlist-popup-remove-btn:hover{background-color:#0000001a;color:#e74c3c}.bucketlist-popup-remove-btn:focus{outline:none;box-shadow:0 0 0 2px #e74c3c4d}.bucketlist-popup-more{padding:12px 16px;text-align:center}.view-more-btn{background:none;border:none;color:#254379;font-size:14px;cursor:pointer;padding:6px 12px;border-radius:4px;transition:background-color .2s;width:100%}.view-more-btn:hover{background-color:#2543791a}.view-more-btn:focus{outline:none;box-shadow:0 0 0 2px #2543794d}.bucketlist-popup:before{content:"";position:absolute;top:-8px;right:70px;width:16px;height:16px;background-color:#fff;transform:rotate(45deg);border-top:1px solid rgba(0,0,0,.08);border-left:1px solid rgba(0,0,0,.08)}@media (max-width: 576px){.bucketlist-popup{width:calc(100% - 32px);right:16px;left:16px}.bucketlist-popup:before{right:50%;transform:translate(50%) rotate(45deg)}}.footer{background-color:#f8f9fa;padding:3rem 2rem 1.5rem;margin-top:4rem}.footer-content{display:grid;grid-template-columns:repeat(4,1fr);gap:2rem;max-width:1200px;margin:0 auto}.footer-section{margin-bottom:1.5rem}.footer-heading{font-size:1.1rem;font-weight:600;margin-bottom:1.2rem;color:#333;font-family:Poppins,sans-serif}.footer-links{list-style:none;padding:0;margin:0}.footer-links li{margin-bottom:.7rem}.footer-links a{text-decoration:none;color:#666;font-size:.9rem;transition:color .3s;font-family:Poppins,sans-serif}.footer-links a:hover{color:#3498db}.footer-bottom{display:flex;justify-content:space-between;align-items:center;margin-top:2rem;padding-top:1.5rem;border-top:1px solid #e0e0e0;max-width:1200px;margin-left:auto;margin-right:auto}.copyright{color:#777;font-size:.85rem;font-family:Poppins,sans-serif}.social-links{display:flex;gap:1rem}.social-link{color:#777;transition:color .3s}.social-link:hover{color:#3498db}@media (max-width: 992px){.footer-content{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.footer{padding:2.5rem 1.5rem 1rem}.footer-content{gap:1.5rem}.footer-section{margin-bottom:1rem}.footer-bottom{flex-direction:column;gap:1rem;text-align:center}.social-links{justify-content:center}}@media (max-width: 576px){.footer{padding:2rem 1rem 1rem}.footer-content{grid-template-columns:1fr;gap:1.5rem}.footer-section{margin-bottom:.5rem}.footer-heading{margin-bottom:.8rem}}.login-success-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,#213a69eb,#a6cce3e0);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:9999;display:flex;align-items:center;justify-content:center;font-family:Poppins,sans-serif}.login-success-container{background:#fff;border-radius:20px;padding:2.5rem 2rem;max-width:450px;width:90%;max-height:90vh;overflow-y:auto;box-shadow:0 25px 70px #213a6940,0 10px 30px #0000001a;position:relative;transform:scale(.9) translateY(20px);opacity:0;transition:all .5s cubic-bezier(.25,.46,.45,.94)}.login-success-container.login-success-visible{transform:scale(1) translateY(0);opacity:1}.login-success-content{text-align:center;position:relative;z-index:2}.login-success-icon-container{position:relative;margin-bottom:1.75rem;display:flex;justify-content:center}.login-success-welcome-circle{width:70px;height:70px;background:linear-gradient(135deg,#213a69,#34599c);border-radius:50%;display:flex;align-items:center;justify-content:center;animation:login-success-welcome-pulse .7s ease-out .2s both;box-shadow:0 6px 20px #213a694d}.login-success-welcome-icon{width:35px;height:35px;color:#fff;animation:login-success-icon-fade .5s ease-out .6s both}.login-success-sparkles{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);pointer-events:none}.login-success-sparkle{position:absolute;font-size:1rem;animation:login-success-sparkle-dance 1.5s ease-out var(--delay, 0s) both;transform:rotate(var(--rotation, 0deg))}.login-success-message{margin-bottom:2rem}.login-success-title{font-size:1.8rem;font-weight:700;color:#213a69;margin:0 0 .5rem;animation:login-success-title-slide .6s ease-out .4s both}.login-success-subtitle{font-size:1rem;color:#666;margin:0 0 1.5rem;font-weight:400;animation:login-success-subtitle-slide .6s ease-out .6s both}.login-success-quick-actions{display:flex;flex-direction:column;gap:.75rem;margin:1rem 0}.login-success-action-item{display:flex;align-items:center;justify-content:center;gap:.75rem;padding:.625rem 1rem;background:#213a690d;border-radius:10px;border:1px solid rgba(33,58,105,.1);font-weight:500;color:#213a69;font-size:.9rem;animation:login-success-action-slide calc(.8s + var(--index, 0) * .1s) ease-out both}.login-success-action-item:nth-child(1){--index: 0}.login-success-action-item:nth-child(2){--index: 1}.login-success-action-item:nth-child(3){--index: 2}.login-success-action-icon{font-size:1.1rem;filter:grayscale(0)}.login-success-action{margin-top:1.5rem}.login-success-countdown{display:flex;align-items:center;justify-content:center;gap:.5rem;margin-bottom:1.25rem;font-size:.9rem;color:#666;animation:login-success-countdown-fade .6s ease-out 1s both}.login-success-countdown-text{font-weight:400}.login-success-countdown-number{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;background:#213a69;color:#fff;border-radius:50%;font-weight:600;font-size:.85rem;animation:login-success-countdown-beat 1s ease-in-out infinite}.login-success-continue-btn{background:linear-gradient(135deg,#213a69,#34599c);color:#fff;border:none;padding:.8rem 2rem;border-radius:10px;font-family:Poppins,sans-serif;font-weight:600;font-size:.95rem;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 12px #213a6940;animation:login-success-button-fade .6s ease-out 1.2s both;width:100%}.login-success-continue-btn:hover{transform:translateY(-2px);box-shadow:0 6px 18px #213a6959;background:linear-gradient(135deg,#1a2d54,#2a4a87)}.login-success-continue-btn:active{transform:translateY(0)}.login-success-decorative{position:absolute;top:0;left:0;right:0;bottom:0;pointer-events:none;overflow:hidden;border-radius:20px}.login-success-wave{position:absolute;background:linear-gradient(135deg,#a6cce314,#213a6908);border-radius:50%;animation:login-success-wave-flow 8s ease-in-out infinite}.login-success-wave-1{width:120px;height:120px;top:-60px;right:-60px;animation-delay:0s}.login-success-wave-2{width:80px;height:80px;bottom:-40px;left:-40px;animation-delay:2.5s}.login-success-wave-3{width:100px;height:100px;top:60%;right:-50px;animation-delay:5s}@keyframes login-success-welcome-pulse{0%{transform:scale(0) rotate(-90deg);opacity:0}60%{transform:scale(1.15) rotate(0)}to{transform:scale(1) rotate(0);opacity:1}}@keyframes login-success-icon-fade{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@keyframes login-success-sparkle-dance{0%{transform:translateY(0) rotate(var(--rotation, 0deg)) scale(0);opacity:1}25%{transform:translateY(-30px) rotate(calc(var(--rotation, 0deg) + 90deg)) scale(1);opacity:1}to{transform:translateY(-60px) rotate(calc(var(--rotation, 0deg) + 180deg)) scale(0);opacity:0}}@keyframes login-success-title-slide{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes login-success-subtitle-slide{0%{transform:translateY(15px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes login-success-action-slide{0%{transform:translate(-20px);opacity:0}to{transform:translate(0);opacity:1}}@keyframes login-success-countdown-fade{0%{opacity:0}to{opacity:1}}@keyframes login-success-countdown-beat{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}@keyframes login-success-button-fade{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes login-success-wave-flow{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-15px) rotate(180deg)}}@media (max-width: 768px){.login-success-container{padding:2rem 1.5rem;margin:1rem;max-width:none;width:calc(100% - 2rem)}.login-success-title{font-size:1.6rem}.login-success-subtitle{font-size:.95rem}.login-success-welcome-circle{width:60px;height:60px}.login-success-welcome-icon{width:30px;height:30px}.login-success-action-item{padding:.5rem .75rem;font-size:.85rem}}@media (max-width: 480px){.login-success-container{padding:1.75rem 1.25rem}.login-success-title{font-size:1.4rem}.login-success-subtitle{font-size:.9rem}.login-success-welcome-circle{width:55px;height:55px}.login-success-welcome-icon{width:28px;height:28px}.login-success-action-item{padding:.45rem .7rem;font-size:.8rem;gap:.5rem}.login-success-action-icon{font-size:1rem}.login-success-continue-btn{padding:.7rem 1.5rem;font-size:.9rem}}@media (prefers-reduced-motion: reduce){.login-success-container,.login-success-welcome-circle,.login-success-welcome-icon,.login-success-sparkle,.login-success-title,.login-success-subtitle,.login-success-action-item,.login-success-countdown,.login-success-continue-btn,.login-success-wave{animation:none}.login-success-container.login-success-visible{transform:none;opacity:1}}:root{--primary-color: #2c3e50;--secondary-color: #3498db;--accent-color: #e74c3c;--light-blue: #a8cff0;--text-color: #333;--light-text: #fff;--gray-text: #666;--border-radius: 8px;--box-shadow: 0 2px 10px rgba(0, 0, 0, .1);--transition: all .3s ease}.auth-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;min-height:calc(100vh - 60px);box-sizing:border-box;width:100%}.auth-modal{background-color:#fff;border-radius:12px;padding:2.5rem;width:100%;max-width:450px;box-shadow:0 4px 20px #00000026;text-align:center;position:relative;box-sizing:border-box;overflow:hidden}.auth-logo{width:80px;height:80px;margin-bottom:1.5rem;object-fit:contain}.auth-close{position:absolute;top:16px;right:16px;background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--gray-text);transition:var(--transition);width:24px;height:24px;display:flex;align-items:center;justify-content:center;line-height:1}.auth-close:hover{color:var(--accent-color)}.auth-title{font-size:1.8rem;font-weight:600;margin-bottom:1.5rem;color:var(--primary-color);font-family:Poppins,sans-serif}.auth-form{width:100%;position:relative;z-index:1}.auth-input-group{margin-bottom:1.2rem;position:relative}.auth-input-row{display:flex;gap:1rem;margin-bottom:1.2rem}.auth-input-row .auth-input-group{flex:1;margin-bottom:0}.auth-input{width:100%;padding:.8rem 1rem;border:1px solid #e0e0e0;border-radius:8px;font-size:1rem;transition:var(--transition);background-color:#f7f7f7;font-family:Poppins,sans-serif;box-sizing:border-box}.auth-input:focus{outline:none;border-color:var(--secondary-color);background-color:#fff}.auth-input::placeholder{color:#aaa}.eye-toggle{position:absolute;right:1rem;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;color:#aaa;display:flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;z-index:2}.eye-toggle:hover{color:var(--secondary-color)}.password-requirements{margin-bottom:1.2rem}.password-requirement{display:flex;align-items:center;gap:.5rem;margin:.4rem 0;color:var(--gray-text);font-size:.85rem;text-align:left;font-family:Poppins,sans-serif;transition:var(--transition)}.password-requirement.met{color:#2ecc71}.password-requirement.met:before{content:"✓";color:#2ecc71;font-weight:700}.auth-btn{width:100%;padding:.8rem;background-color:#283593;color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:500;cursor:pointer;transition:var(--transition);margin-top:1rem;font-family:Poppins,sans-serif;position:relative;z-index:1}.auth-btn:hover{background-color:#1a237e}.auth-link{display:block;margin-top:1.5rem;color:var(--gray-text);font-size:.9rem;font-family:Poppins,sans-serif}.auth-link a{color:#00f;text-decoration:none;font-weight:500;transition:var(--transition)}.auth-link a:hover{text-decoration:underline}@keyframes slideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.auth-form .auth-input-group,.auth-form .auth-btn,.auth-form .password-requirements,.auth-form .auth-link{animation:slideDown .3s ease forwards}.otp-verification{margin:0;opacity:0;height:0;overflow:hidden;transform:translateY(10px);transition:all .4s ease;display:none;visibility:hidden}.otp-verification.visible{opacity:1;height:auto;transform:translateY(0);overflow:visible;display:block;visibility:visible;margin:2rem 0;animation:fadeIn .4s ease forwards}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.otp-title{font-size:1.2rem;font-weight:600;margin-bottom:1rem;color:var(--primary-color);font-family:Poppins,sans-serif}.otp-description{margin-bottom:1.5rem;color:#555;font-size:.95rem;font-family:Poppins,sans-serif;text-align:center;font-weight:400}.otp-inputs{display:flex;gap:.5rem;justify-content:center;margin-bottom:1.5rem}.otp-input{width:50px;height:50px;text-align:center;font-size:1.2rem;border:1px solid #e0e0e0;border-radius:8px;background-color:#f7f7f7;padding:0;box-sizing:border-box;font-family:Poppins,sans-serif;transition:var(--transition)}.otp-input:focus{outline:none;border-color:var(--secondary-color);background-color:#fff;box-shadow:0 0 0 2px #3498db33}.otp-timer{margin-bottom:1rem;color:var(--gray-text);font-size:.9rem;font-family:Poppins,sans-serif}.resend-btn{background:none;border:none;color:var(--secondary-color);font-size:.9rem;cursor:pointer;text-decoration:underline;font-family:Poppins,sans-serif}.country-select{width:100%;padding:.8rem 1rem;border:1px solid #e0e0e0;border-radius:8px;font-size:1rem;transition:var(--transition);background-color:#f7f7f7;font-family:Poppins,sans-serif;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cpath fill='%23aaa' d='M7 10l5 5 5-5z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;box-sizing:border-box}.country-select:focus{outline:none;border-color:var(--secondary-color);background-color:#fff}.phone-input-container{display:flex;margin-bottom:1.2rem;width:100%;box-sizing:border-box;max-width:100%}.country-code-select{width:75px;min-width:75px;padding:.8rem .5rem;border:1px solid #e0e0e0;border-radius:8px 0 0 8px;font-size:1rem;background-color:#f7f7f7;border-right:none;display:flex;align-items:center;justify-content:center;gap:.3rem;flex-shrink:0;box-sizing:border-box}.country-flag{width:20px;height:14px;object-fit:cover;flex-shrink:0}.phone-input{flex:1;padding:.8rem 1rem;border:1px solid #e0e0e0;border-radius:0 8px 8px 0;font-size:1rem;transition:var(--transition);background-color:#f7f7f7;box-sizing:border-box;min-width:0}.where-next-icon{width:60px;height:60px;margin-bottom:1rem}.where-next-title{font-size:1.5rem;font-weight:600;margin-bottom:1rem;color:var(--primary-color);font-family:Poppins,sans-serif}.where-next-description{margin-bottom:2rem;color:var(--gray-text);font-size:.95rem;font-family:Poppins,sans-serif;max-width:340px;margin-left:auto;margin-right:auto}.otp-verification-title{font-size:1.2rem;font-weight:600;margin-bottom:1rem;color:var(--primary-color);font-family:Poppins,sans-serif}.otp-verification-description{margin-bottom:1.5rem;color:var(--gray-text);font-size:.9rem;font-family:Poppins,sans-serif}.otp-verification-inputs{display:flex;gap:.5rem;justify-content:center;margin-bottom:1.5rem}.otp-verification-input{width:45px;height:45px;text-align:center;font-size:1.1rem;border:1px solid #e0e0e0;border-radius:8px;background-color:#f7f7f7;padding:0;box-sizing:border-box;font-family:Poppins,sans-serif}.otp-verification-input:focus{outline:none;border-color:var(--secondary-color);background-color:#fff}@media (max-width: 576px){.auth-modal{padding:2rem 1.2rem;max-width:95%;margin:0;border-radius:12px}.auth-container{padding:1.5rem .5rem;min-height:calc(100vh - 60px)}.auth-title{font-size:1.6rem}.auth-input-row{flex-direction:column;gap:1rem}.otp-inputs{gap:.25rem}.otp-input{width:40px;height:40px;font-size:1rem}.country-code-select{width:60px;min-width:60px;padding:.8rem .2rem;font-size:.9rem}.country-flag{width:18px;height:12px}.phone-input{padding:.8rem .5rem;font-size:.9rem}.otp-verification-inputs{gap:.3rem}.otp-verification-input{width:35px;height:35px;font-size:1rem}.password-requirement{font-size:.8rem;gap:.3rem;margin:.3rem 0}.auth-input,.country-select{padding:.7rem .8rem;font-size:.9rem}.auth-input-group{margin-bottom:1rem}}.auth-error{padding:10px 15px;margin-bottom:20px;background-color:#f8d7da;border:1px solid #f5c6cb;border-radius:5px;color:#721c24;display:flex;align-items:center;font-size:14px}.auth-success{padding:10px 15px;margin-bottom:20px;background-color:#d4edda;border:1px solid #c3e6cb;border-radius:5px;color:#155724;display:flex;align-items:center;font-size:14px}.country-search-container{position:relative;z-index:3000;margin-bottom:1.2rem}.country-search-results{position:absolute;top:100%;left:0;right:0;max-height:200px;overflow-y:auto;background-color:#fff;border:1px solid #ddd;border-radius:4px;box-shadow:0 2px 4px #0000001a;z-index:3000}.country-result-item{display:flex;align-items:center;padding:8px 12px;cursor:pointer;transition:background-color .3s}.country-result-item:hover{background-color:#f8f9fa}.country-result-flag{width:24px;height:16px;margin-right:10px;object-fit:cover}.country-phone-code{margin-left:auto;color:#666;font-size:.85rem}.country-search-loading{position:absolute;top:100%;left:0;right:0;padding:10px;background-color:#fff;border:1px solid #ddd;text-align:center;color:#666;font-size:.9rem;z-index:3000}.google-auth-btn{display:flex;align-items:center;justify-content:center;width:100%;padding:.8rem;background-color:#fff;color:#555;border:1px solid #ddd;border-radius:8px;font-size:1rem;font-weight:500;cursor:pointer;transition:var(--transition);margin-top:1rem;font-family:Poppins,sans-serif;text-decoration:none;box-shadow:0 1px 3px #00000014}.google-auth-btn:hover{background-color:#f8f8f8;box-shadow:0 2px 5px #0000001f}.google-auth-btn svg{margin-right:10px}.auth-separator{display:flex;align-items:center;margin:1.5rem 0;color:#777;font-size:.85rem}.auth-separator:before,.auth-separator:after{content:"";flex:1;height:1px;background-color:#e0e0e0}.auth-separator span{padding:0 10px}.signup-success-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,#213a69f2,#a6cce3e6);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:9999;display:flex;align-items:center;justify-content:center;font-family:Poppins,sans-serif}.signup-success-container{background:#fff;border-radius:24px;padding:3rem 2.5rem;max-width:500px;width:90%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #213a694d,0 8px 25px #0000001a;position:relative;transform:scale(.8) translateY(30px);opacity:0;transition:all .6s cubic-bezier(.34,1.56,.64,1)}.signup-success-container.signup-success-visible{transform:scale(1) translateY(0);opacity:1}.signup-success-content{text-align:center;position:relative;z-index:2}.signup-success-icon-container{position:relative;margin-bottom:2rem;display:flex;justify-content:center}.signup-success-check-circle{width:80px;height:80px;background:linear-gradient(135deg,#28a745,#20c997);border-radius:50%;display:flex;align-items:center;justify-content:center;animation:signup-success-bounce .8s ease-out .3s both;box-shadow:0 8px 25px #28a7454d}.signup-success-check-icon{width:40px;height:40px;color:#fff;animation:signup-success-checkmark .6s ease-out .8s both}.signup-success-celebration{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);pointer-events:none}.signup-success-confetti{position:absolute;width:8px;height:8px;background:linear-gradient(45deg,#213a69,#a6cce3,#28a745,#ffc107);border-radius:2px;animation:signup-success-confetti-fall 2s ease-out var(--delay, 0s) both;transform:rotate(var(--rotation, 0deg))}.signup-success-message{margin-bottom:2.5rem}.signup-success-title{font-size:2rem;font-weight:700;color:#213a69;margin:0 0 .75rem;animation:signup-success-slide-up .6s ease-out .4s both}.signup-success-subtitle{font-size:1.1rem;color:#666;margin:0 0 2rem;font-weight:400;animation:signup-success-slide-up .6s ease-out .6s both}.signup-success-features{display:flex;flex-direction:column;gap:1rem;margin:1.5rem 0}.signup-success-feature{display:flex;align-items:center;justify-content:center;gap:.75rem;padding:.75rem 1rem;background:#a6cce31a;border-radius:12px;border:1px solid rgba(166,204,227,.3);font-weight:500;color:#213a69;animation:signup-success-feature-slide .6s ease-out calc(.8s + var(--index, 0) * .1s) both}.signup-success-feature:nth-child(1){--index: 0}.signup-success-feature:nth-child(2){--index: 1}.signup-success-feature:nth-child(3){--index: 2}.signup-success-feature-icon{font-size:1.25rem;filter:grayscale(0)}.signup-success-action{margin-top:2rem}.signup-success-countdown{display:flex;align-items:center;justify-content:center;gap:.5rem;margin-bottom:1.5rem;font-size:.95rem;color:#666;animation:signup-success-fade-in .6s ease-out 1.2s both}.signup-success-countdown-text{font-weight:400}.signup-success-countdown-number{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;background:#213a69;color:#fff;border-radius:50%;font-weight:600;font-size:.9rem;animation:signup-success-countdown-pulse 1s ease-in-out infinite}.signup-success-login-btn{background:linear-gradient(135deg,#213a69,#34599c);color:#fff;border:none;padding:.875rem 2rem;border-radius:12px;font-family:Poppins,sans-serif;font-weight:600;font-size:1rem;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #213a694d;animation:signup-success-fade-in .6s ease-out 1.4s both;width:100%}.signup-success-login-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #213a6966;background:linear-gradient(135deg,#1a2d54,#2a4a87)}.signup-success-login-btn:active{transform:translateY(0)}.signup-success-decorative{position:absolute;top:0;left:0;right:0;bottom:0;pointer-events:none;overflow:hidden;border-radius:24px}.signup-success-circle{position:absolute;border-radius:50%;background:linear-gradient(135deg,#a6cce31a,#213a690d);animation:signup-success-float 6s ease-in-out infinite}.signup-success-circle-1{width:100px;height:100px;top:-50px;right:-50px;animation-delay:0s}.signup-success-circle-2{width:60px;height:60px;bottom:-30px;left:-30px;animation-delay:2s}.signup-success-circle-3{width:80px;height:80px;top:50%;right:-40px;animation-delay:4s}@keyframes signup-success-bounce{0%{transform:scale(0) rotate(-180deg);opacity:0}50%{transform:scale(1.2) rotate(-90deg)}to{transform:scale(1) rotate(0);opacity:1}}@keyframes signup-success-checkmark{0%{stroke-dasharray:0 50;stroke-dashoffset:0}to{stroke-dasharray:50 0;stroke-dashoffset:0}}@keyframes signup-success-confetti-fall{0%{transform:translateY(-100px) rotate(0) scale(0);opacity:1}10%{transform:translateY(-80px) rotate(45deg) scale(1);opacity:1}to{transform:translateY(400px) rotate(180deg) scale(.5);opacity:0}}@keyframes signup-success-slide-up{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes signup-success-feature-slide{0%{transform:translate(-30px);opacity:0}to{transform:translate(0);opacity:1}}@keyframes signup-success-fade-in{0%{opacity:0}to{opacity:1}}@keyframes signup-success-countdown-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}@keyframes signup-success-float{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-20px) rotate(180deg)}}@media (max-width: 768px){.signup-success-container{padding:2.5rem 2rem;margin:1rem;max-width:none;width:calc(100% - 2rem)}.signup-success-title{font-size:1.75rem}.signup-success-subtitle{font-size:1rem}.signup-success-check-circle{width:70px;height:70px}.signup-success-check-icon{width:35px;height:35px}.signup-success-features{gap:.75rem}.signup-success-feature{padding:.625rem .875rem;font-size:.9rem}}@media (max-width: 480px){.signup-success-container{padding:2rem 1.5rem}.signup-success-title{font-size:1.5rem}.signup-success-subtitle{font-size:.95rem}.signup-success-check-circle{width:60px;height:60px}.signup-success-check-icon{width:30px;height:30px}.signup-success-feature{padding:.5rem .75rem;font-size:.85rem;gap:.5rem}.signup-success-feature-icon{font-size:1rem}.signup-success-login-btn{padding:.75rem 1.5rem;font-size:.95rem}}@media (prefers-reduced-motion: reduce){.signup-success-container,.signup-success-check-circle,.signup-success-check-icon,.signup-success-confetti,.signup-success-title,.signup-success-subtitle,.signup-success-feature,.signup-success-countdown,.signup-success-login-btn{animation:none}.signup-success-container.signup-success-visible{transform:none;opacity:1}}.payment-page{min-height:100vh;display:flex;flex-direction:column}.payment-container{display:flex;justify-content:center;align-items:center;flex-grow:1;padding:2rem;background-color:#f7f7f7}.payment-card{background-color:#fff;border-radius:8px;box-shadow:0 4px 12px #0000001a;max-width:600px;width:100%;overflow:hidden;border-left:4px solid #e74c3c}.payment-content-wrapper{width:100%;max-width:600px;margin:0 auto;background-color:#fff;border-radius:8px;box-shadow:0 4px 12px #0000001a;position:relative}.payment-header{display:flex;justify-content:space-between;align-items:center;padding:10px;border-bottom:1px solid #eee}.payment-title{text-align:center;color:#213a69;margin-top:0;padding:20px 0;font-size:1.8rem;border-bottom:1px solid #eee}.payment-content{padding:2rem;display:flex;flex-direction:column;align-items:center;text-align:center}.payment-icon{font-size:2rem}.payment-info{font-size:16px;line-height:1.6;color:#333;background-color:#f5f9ff;padding:15px;border-radius:6px;margin-bottom:20px;border-left:3px solid #213a69;text-align:left}.premium-benefits{display:flex;flex-direction:column;gap:12px;margin-bottom:25px;width:100%;max-width:400px}.benefit-item{display:flex;align-items:center;gap:10px;font-size:15px}.benefit-icon{color:#fff;background-color:#4caf50;width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px}.payment-error{font-size:14px;line-height:1.5;color:#721c24;background-color:#f8d7da;padding:12px;border-radius:6px;margin-bottom:20px;border-left:3px solid #721c24;animation:fadeIn .3s ease-in-out;width:100%;text-align:left}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.payment-actions{display:flex;flex-direction:column;gap:15px;align-items:center;margin-top:20px;width:100%}.pay-button{background-color:#213a69;color:#fff;padding:14px 30px;border-radius:5px;border:none;font-weight:700;font-size:16px;cursor:pointer;transition:background-color .3s ease,transform .2s ease;width:100%;text-align:center;box-shadow:0 2px 5px #213a6933}.pay-button:hover{background-color:#1a2e54;transform:translateY(-2px);box-shadow:0 4px 8px #213a694d}.pay-button:disabled{background-color:#7a8bad;cursor:not-allowed;transform:none;box-shadow:none}.back-button{background-color:transparent;color:#555;padding:10px 15px;border:none;border-radius:5px;font-weight:500;cursor:pointer;transition:background-color .3s ease;text-align:center}.back-button:hover{background-color:#f5f5f5}.back-button:disabled{color:#aaa;cursor:not-allowed}.alternate-button{background-color:transparent;color:#4a90e2;padding:12px 20px;border:1px dashed #4a90e2;border-radius:5px;font-weight:500;cursor:pointer;transition:all .3s ease;width:200px;text-align:center}.alternate-button:hover{background-color:#4a90e20d;border-style:solid}.alternate-button:disabled{color:#a0c8f0;border-color:#c1dcf9;cursor:not-allowed}.payment-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#000000b3;display:flex;justify-content:center;align-items:center;z-index:1000;animation:fadeIn .3s ease-in-out}.payment-overlay-content{position:relative;width:90%;max-width:600px;max-height:90vh;overflow-y:auto;background:#fff;border-radius:8px;padding:20px;animation:slideUp .3s ease-in-out}.payment-overlay-close{position:absolute;top:20px;right:20px;background:none;border:none;font-size:24px;color:#666;cursor:pointer;z-index:1001}.payment-overlay-close:hover{color:#e74c3c}@keyframes slideUp{0%{opacity:0;transform:translateY(50px)}to{opacity:1;transform:translateY(0)}}.payment-close-btn{background:none;border:none;font-size:24px;color:#666;cursor:pointer;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center}.payment-close-btn:hover{color:#e74c3c}@media (max-width: 640px){.payment-content{padding:1.5rem}.payment-info{font-size:14px}.payment-error{font-size:13px}.pay-button,.back-button{width:100%}.payment-title{font-size:1.5rem;padding:15px 0}.payment-icon{font-size:2.5rem}.benefit-item{font-size:14px}.payment-overlay-content{width:95%;padding:15px}}:root{--primary-color: #1b4571;--primary-color-light: #2a6cb3;--secondary-color: #f0f2f5;--text-color: #333;--text-light: #666;--text-lighter: #999;--white: #fff;--black: #000;--border-color: #e1e4e8;--shadow: 0 2px 10px rgba(0, 0, 0, .1);--radius: 8px;--font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica Neue", sans-serif}.itinerary-container{display:grid;grid-template-columns:1fr 1fr;gap:20px;padding:20px;max-width:1400px;margin:0 auto}.itinerary-details{background-color:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:20px;overflow-y:auto}.itinerary-map-container{display:flex;flex-direction:column;gap:20px}.itinerary-map{height:500px;background-color:#f0f0f0;border-radius:12px;box-shadow:0 2px 8px #0000001a;overflow:hidden}.itinerary-map iframe{width:100%;height:100%;border:0}.itinerary-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:15px}.itinerary-title{font-size:24px;font-weight:600;color:var(--primary-color);margin:0}.itinerary-actions{display:flex;gap:5px}.itinerary-action-btn{background:none;border:none;border-radius:50%;width:36px;height:36px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#555;transition:all .2s ease}.itinerary-action-btn:hover{background-color:#f0f0f5;color:#1a4b8e}.itinerary-date-location{display:flex;gap:20px;margin-bottom:20px;background-color:#f8f8f8;padding:15px;border-radius:10px}.itinerary-date,.location-list{display:flex;align-items:center;color:#555;font-size:14px;font-weight:500}.itinerary-days{display:flex;flex-direction:column;gap:30px;margin-bottom:30px}.day-schedule{margin-bottom:2rem;padding:1.5rem;background-color:#fff;border-radius:10px;box-shadow:0 2px 8px #00000014;transition:all .2s ease-in-out;cursor:pointer;border-left:3px solid transparent}.day-schedule:hover{box-shadow:0 4px 12px #0000001f;transform:translateY(-2px)}.day-schedule.day-active{border-left:3px solid #3498db;background-color:#f9fdff}.day-header{margin-bottom:15px;display:flex;align-items:center;flex-wrap:wrap;gap:10px}.day-title{font-size:18px;margin:0 0 5px;color:var(--primary-color)}.day-location{font-size:14px;color:var(--text-light)}.day-activities{display:flex;flex-direction:column;gap:15px}.activity-item{display:flex;gap:15px;padding:10px;background-color:var(--white);border-radius:var(--radius);box-shadow:0 1px 3px #0000001a;position:relative;align-items:center}.activity-time{font-weight:500;font-size:14px;color:var(--text-color);min-width:50px}.activity-details{flex:1}.activity-name{font-weight:500;margin-bottom:5px;color:var(--text-color)}.activity-description{font-size:14px;color:var(--text-light)}.what-next-section{background-color:var(--secondary-color);border-radius:var(--radius);padding:20px;margin-top:30px}.what-next-title{font-size:18px;margin:0 0 15px;color:var(--primary-color)}.what-next-options{display:flex;flex-wrap:wrap;gap:10px}.what-next-option{background-color:var(--white);border:1px solid var(--border-color);border-radius:var(--radius);padding:10px 15px;font-size:14px;cursor:pointer;transition:background-color .2s,color .2s}.what-next-option:hover{background-color:var(--primary-color);color:var(--white);border-color:var(--primary-color)}.loading-container,.error-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:calc(100vh - 80px);text-align:center;padding:20px}.back-btn{background-color:var(--primary-color);color:#fff;border:none;border-radius:var(--radius);padding:10px 20px;font-size:16px;cursor:pointer;margin-top:20px;transition:background-color .2s}.back-btn:hover{background-color:var(--primary-color-light)}.itinerary-list-container{max-width:1200px;margin:0 auto;padding:20px}.itinerary-list-header{text-align:center;margin-bottom:40px}.itinerary-list-header h1{color:var(--primary-color);font-size:32px;margin-bottom:10px}.itinerary-list-header p{color:var(--text-light);font-size:16px}.itinerary-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:30px}.itinerary-card-link{text-decoration:none;color:inherit;display:block;transition:transform .2s}.itinerary-card-link:hover{transform:translateY(-5px)}.itinerary-card{background-color:var(--white);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden;height:100%;display:flex;flex-direction:column}.itinerary-card-image{height:200px;background-size:cover;background-position:center;position:relative}.itinerary-card-date{position:absolute;bottom:10px;left:10px;background-color:#000000b3;color:var(--white);padding:5px 10px;border-radius:4px;font-size:12px}.itinerary-card-content{padding:20px;flex-grow:1}.itinerary-card-title{font-size:20px;margin:0 0 10px;color:var(--primary-color)}.itinerary-card-locations{font-size:14px;color:var(--text-light);margin-bottom:15px}.itinerary-card-description{font-size:14px;color:var(--text-color);margin:0;line-height:1.5}.itinerary-card-actions{padding:0 20px 20px}.view-details-btn{background-color:var(--primary-color);color:var(--white);border:none;border-radius:var(--radius);padding:10px 20px;font-size:14px;cursor:pointer;width:100%;transition:background-color .2s}.view-details-btn:hover{background-color:var(--primary-color-light)}.date-selection{display:flex;gap:10px;margin-bottom:15px;overflow-x:auto;background-color:#f5f5f5;padding:10px 15px;border-radius:8px;border:1px solid #eaeaea}.date-btn{padding:8px 15px;background-color:#f0f0f5;border:none;border-radius:20px;cursor:pointer;white-space:nowrap;font-size:14px;transition:all .2s ease}.date-btn.active{background-color:#1a4b8e;color:#fff;font-weight:500;box-shadow:0 2px 5px #1a4b8e4d}.edit-btn{padding:8px 15px;background-color:transparent;border:1px solid #1a4b8e;border-radius:20px;cursor:pointer;color:#1a4b8e;font-weight:500;transition:all .2s ease;display:block;margin:0 0 15px auto}.edit-btn:hover{background-color:#1a4b8e1a}.current-date{font-size:18px;font-weight:500;margin-bottom:20px;color:#333}.recommended-section{margin-bottom:20px}.section-content{display:flex;flex-direction:column;gap:10px;margin-top:10px}.section-header{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;background-color:#f8f8f8;border-radius:8px;cursor:pointer;margin-bottom:0;border-bottom:1px solid #eaeaea}.section-header h3{margin:0;font-size:15px;font-weight:400;color:#444}.chevron-icon{font-size:10px;color:#777;opacity:.8}.recommendation-card{display:flex;background-color:#fff;border-radius:8px;box-shadow:0 2px 6px #0000001a;padding:12px;margin-bottom:15px;position:relative;transition:transform .2s ease,box-shadow .2s ease;overflow:hidden;cursor:pointer}.recommendation-card:hover{transform:translateY(-3px);box-shadow:0 4px 12px #00000026}.recommendation-image{width:100px;height:100px;border-radius:6px;overflow:hidden;margin-right:15px;flex-shrink:0}.recommendation-image img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.recommendation-card:hover .recommendation-image img{transform:scale(1.05)}.recommendation-details{flex:1;display:flex;flex-direction:column;justify-content:center;overflow:hidden}.recommendation-details h4{margin:0 0 5px;font-size:16px;font-weight:600;color:#333;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.recommendation-rating{margin-bottom:5px;font-size:14px}.recommendation-type{font-size:13px;color:#666;margin-bottom:3px}.recommendation-status{font-size:12px;color:#1a73e8;font-weight:500}.add-btn{position:absolute;bottom:12px;right:12px;width:32px;height:32px;border-radius:50%;background-color:#1a4b8e;color:#fff;border:none;display:flex;align-items:center;justify-content:center;font-size:18px;cursor:pointer;box-shadow:0 2px 5px #0003;transition:background-color .2s ease,transform .2s ease;z-index:5;padding:0;line-height:0}.add-btn:hover{background-color:#0d3c7a;transform:scale(1.1)}.view-btn{position:absolute;bottom:52px;right:12px;width:32px;height:32px;border-radius:50%;background-color:#fff;color:#1a4b8e;display:flex;align-items:center;justify-content:center;font-size:18px;cursor:pointer;box-shadow:0 2px 5px #0000001a;transition:background-color .2s ease,transform .2s ease;z-index:5;padding:0;line-height:0}.view-btn:hover{background-color:#f0f5ff;transform:scale(1.1)}@media (max-width: 768px){.recommendation-image{width:80px;height:80px}.add-btn{width:32px;height:32px;font-size:18px}.view-btn{width:32px;height:32px;bottom:52px}}@media (max-width: 480px){.recommendation-card{padding:10px}.recommendation-image{width:70px;height:70px;margin-right:10px}.recommendation-details h4{font-size:15px}.add-btn{width:32px;height:32px;font-size:18px;bottom:10px;right:10px}.view-btn{width:32px;height:32px;bottom:50px;right:10px}}.flight-results .flight-card{display:flex;flex-direction:column;background-color:#fff;border-radius:12px;box-shadow:0 2px 10px #00000014;overflow:hidden;position:relative;margin-bottom:16px;transition:transform .3s ease,box-shadow .3s ease;border:1px solid #e0e0e0}.flight-results .flight-card:hover{transform:translateY(-3px);box-shadow:0 6px 15px #0000001f}.flight-airline-badge{background-color:#f5f5f5;padding:10px 15px;display:flex;justify-content:space-between;align-items:center;font-weight:600;color:#333;border-bottom:1px solid #e0e0e0}.flight-number{color:#666;font-size:.9em}.flight-main-content{padding:16px;display:flex;flex-direction:column;gap:20px}.flight-route{display:flex;justify-content:space-between;align-items:center}.flight-location{display:flex;flex-direction:column;align-items:center;width:80px}.flight-time{font-size:1.2em;font-weight:600;color:#333}.flight-code{font-size:1.1em;font-weight:600;color:#1a4b8e;margin:4px 0}.flight-city{font-size:.85em;color:#666}.flight-route-line{flex:1;display:flex;flex-direction:column;align-items:center;margin:0 15px}.line-with-plane{position:relative;width:100%;display:flex;align-items:center;justify-content:center}.line{height:2px;background-color:#ccc;width:100%;position:relative}.plane-icon{position:absolute;font-size:1.2em;color:#1a4b8e;transform:rotate(90deg)}.duration{font-size:.9em;font-weight:500;color:#333;margin-bottom:5px}.direct-text{font-size:.8em;color:#666;margin-top:5px}.flight-price-actions{display:flex;justify-content:space-between;align-items:center;margin-top:5px;padding-top:15px;border-top:1px solid #eee}.flight-price{display:flex;flex-direction:column}.price-amount{font-size:1.3em;font-weight:600;color:#333}.price-text{font-size:.8em;color:#666}.select-flight-btn,.flight-details-btn{padding:8px 16px;border-radius:6px;font-size:.9em;font-weight:500;cursor:pointer;transition:all .2s ease}.flight-details-btn:hover{background-color:#f0f5fc}.flight-results .flight-card:before,.flight-results .flight-card:after{display:none}.other-itineraries{margin-top:20px}.other-itineraries h3{font-size:18px;margin-bottom:15px;font-weight:500;color:#333}.other-itineraries-list{display:flex;flex-direction:column;gap:15px}.other-itinerary-card{display:flex;background-color:#fff;border-radius:10px;box-shadow:0 2px 8px #0000001a;overflow:hidden;position:relative;height:100px;transition:transform .3s ease,box-shadow .3s ease}.other-itinerary-card:hover{transform:translateY(-5px);box-shadow:0 8px 16px #00000026}.other-itinerary-image{width:100px;height:100%;overflow:hidden;flex-shrink:0;position:relative}.other-itinerary-image img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}.other-itinerary-content{flex:1;padding:10px 15px;display:flex;flex-direction:column;justify-content:space-between}.other-itinerary-info h4{margin:0 0 5px;font-size:15px;font-weight:500;color:#333}.other-itinerary-info p{margin:0;font-size:12px;color:#555;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-weight:400;line-height:1.4}.other-itinerary-rating{margin-top:8px;font-size:14px}.remove-btn{background:none;border:none;color:#777;cursor:pointer;width:36px;height:36px;display:flex;align-items:center;justify-content:center;position:absolute;right:5px;top:5px;border-radius:50%;transition:all .2s ease}.remove-btn:hover{background-color:#0000000d;color:#d32f2f}@media (max-width: 1024px){.itinerary-container{grid-template-columns:1fr;grid-template-rows:auto auto}.itinerary-content{grid-column:1;grid-row:1}.itinerary-map-container{grid-column:1;grid-row:2;position:relative;height:500px}.itinerary-map{height:400px}.itinerary-header{padding:15px}.itinerary-header h1{font-size:1.8rem}.itinerary-meta{flex-direction:column;align-items:flex-start}.itinerary-meta>div{margin-bottom:8px}}@media (max-width: 768px){.itinerary-container{padding:0}.itinerary-header{padding:10px}.itinerary-header h1{font-size:1.5rem}.itinerary-map-container{height:400px}.itinerary-map{height:350px}.tab-nav{overflow-x:auto;white-space:nowrap;padding-bottom:5px;margin-bottom:15px}.tab-button{padding:8px 12px;font-size:.85rem}.day-selection{overflow-x:auto;white-space:nowrap;padding-bottom:5px}.day-button{padding:8px 10px;font-size:.8rem;margin-right:5px}}@media (max-width: 480px){.add-btn{width:26px;height:26px;font-size:15px}}.itinerary-description{margin-bottom:20px;padding-bottom:15px;border-bottom:1px solid var(--border-color);line-height:1.6;color:var(--text-color);font-size:16px}.itinerary-map .leaflet-container{height:100%;width:100%;border-radius:12px;box-shadow:0 2px 6px #0000001a;z-index:1}.leaflet-popup-content{font-family:var(--font-primary);font-size:14px;padding:5px;text-align:center}@media (max-width: 768px){.itinerary-map{min-height:300px}}.itinerary-image-container{position:relative;margin:0 0 1.5rem;width:100%;height:300px;overflow:hidden;border-radius:12px;box-shadow:0 4px 12px #0000001a}.itinerary-image{width:100%;height:100%;object-fit:cover;display:block}.itinerary-image-overlay{position:absolute;bottom:0;left:0;width:100%;padding:20px;background:linear-gradient(to top,#000c,#0000);color:#fff}.overlay-title{font-size:28px;font-weight:600;margin:0 0 5px;color:#fff}.location-description{font-size:16px;opacity:.9}.loading-container{display:flex;justify-content:center;align-items:center;min-height:400px}.loading-message{display:flex;align-items:center;justify-content:center;margin:1.5rem 0;padding:1.5rem 2rem;background-color:#00000008;border-radius:8px;box-shadow:0 2px 8px #00000014}.loading-spinner{width:24px;height:24px;border:2px solid #f3f3f3;border-top:2px solid #3498db;border-radius:50%;animation:spin 1s linear infinite}.error-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;padding:2rem;text-align:center}.error-container p{display:flex;align-items:center;margin-bottom:1.5rem;padding:1rem 1.5rem;background-color:#ff000014;border-radius:4px;color:#d32f2f;font-size:1rem;border-left:4px solid #d32f2f;max-width:600px}.inline-loading{display:flex;align-items:center;padding:.5rem 1rem;background-color:#00000005;border-radius:4px;margin:.5rem 0;font-size:.9rem;color:#555}.loading-spinner-small{width:16px;height:16px;border:2px solid #f3f3f3;border-top:2px solid #3498db;border-radius:50%;animation:spin 1s linear infinite}.map-loading-container{display:flex;justify-content:center;align-items:center;width:100%;height:100%;background-color:#f9f9f9;border-radius:8px}.map-loading-container .inline-loading{padding:1rem 2rem;background-color:#fff;box-shadow:0 2px 8px #0000001a}.day-image-container{margin:15px 0;border-radius:8px;overflow:hidden;box-shadow:0 2px 6px #0000001a;max-height:220px}.day-image{width:100%;height:100%;object-fit:cover;max-height:220px;transition:transform .3s ease}.day-image:hover{transform:scale(1.02)}@media (max-width: 768px){.day-image-container,.day-image{max-height:180px}}@media (max-width: 480px){.day-image-container,.day-image{max-height:150px}}.itinerary-tabs{display:flex;border-bottom:1px solid #e0e0e0;margin-bottom:20px;overflow:hidden;overflow-x:scroll;-webkit-overflow-scrolling:touch;scrollbar-width:thin}.itinerary-tab{padding:12px 20px;background:none;border:none;cursor:pointer;font-weight:500;position:relative;color:#666;white-space:nowrap;flex-shrink:0;transition:color .2s ease}.itinerary-tab:hover{color:#1a4b8e}.itinerary-tab.active{color:#1a4b8e;font-weight:600}.itinerary-tab.active:after{content:"";position:absolute;bottom:-1px;left:0;width:100%;height:3px;background-color:#1a4b8e}.flight-image img,.recommendation-image img,.other-itinerary-image img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}.flight-results .flight-card:hover .flight-image img,.recommendation-card:hover .recommendation-image img,.other-itinerary-card:hover .other-itinerary-image img{transform:scale(1.05)}.flight-image:after,.recommendation-image:after,.other-itinerary-image:after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background-color:#0000;transition:background-color .3s ease}.flight-results .flight-card:hover .flight-image:after,.recommendation-card:hover .recommendation-image:after,.other-itinerary-card:hover .other-itinerary-image:after{background-color:#0000001a}.hotel-search-form-container{background-color:#fff;border-radius:12px;box-shadow:0 2px 10px #00000014;margin-bottom:20px;overflow:hidden}.hotel-search-form{padding:15px;display:flex;flex-direction:column;gap:12px}.hotel-search-row{display:flex;gap:10px;flex-wrap:wrap}.hotel-search-form-group{flex:1;min-width:200px;display:flex;flex-direction:column;margin-bottom:8px}.hotel-search-form-group label{font-size:12px;color:#333;margin-bottom:5px;font-weight:500}.hotel-search-input-icon{position:relative;display:flex;align-items:center}.hotel-search-input-icon svg{position:absolute;left:10px;width:16px;height:16px;color:#666}.hotel-search-input-icon input,.hotel-search-input-icon select{width:100%;padding:8px 8px 8px 35px;border:1px solid #ddd;border-radius:6px;font-size:14px;color:#333;background-color:#fff}.hotel-search-input-icon input:focus,.hotel-search-input-icon select:focus{border-color:#1a4b8e;outline:none}.hotel-search-button{display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 12px;background-color:#1a4b8e;color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .2s;margin-top:5px}.hotel-search-button:hover{background-color:#0d3c7a}@media (max-width: 768px){.hotel-search-row{flex-direction:column;gap:8px}.hotel-search-form-group{min-width:100%}.hotel-search-form{padding:12px}.hotel-search-button{margin-top:8px}}.hotel-results{margin-top:15px;display:flex;flex-direction:column;gap:12px}.error-message{background-color:#feeae9;color:#d32f2f;padding:12px 15px;border-radius:8px;margin:10px 0;font-size:14px;display:flex;align-items:center}.error-message svg{margin-right:8px;flex-shrink:0}.hotel-price-slider{display:flex;align-items:center;gap:10px;margin:15px 0}.hotel-price-slider input[type=range]{flex:1;height:5px;-webkit-appearance:none;background:#e0e0e0;border-radius:10px;outline:none}.hotel-price-slider input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:18px;height:18px;border-radius:50%;background:#1a4b8e;cursor:pointer;border:2px solid white;box-shadow:0 2px 4px #0003}.hotel-price-value{font-size:14px;color:#666;min-width:40px}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.modal-content{background-color:#fff;border-radius:8px;width:90%;max-width:600px;max-height:90vh;overflow-y:auto;display:flex;flex-direction:column;box-shadow:0 4px 20px #00000026}.modal-close-btn{border:none;background:none;font-size:24px;cursor:pointer;color:#666}.hotel-details-image{width:100%;height:200px;border-radius:8px;overflow:hidden;margin-bottom:20px}.hotel-details-image img{width:100%;height:100%;object-fit:cover}.hotel-info-section,.hotel-offer-section{margin-bottom:20px;padding-bottom:15px;border-bottom:1px solid #eee}.hotel-info-section:last-child,.hotel-offer-section:last-child{border-bottom:none}.hotel-info-section h4,.hotel-offer-section h4{margin-top:0;margin-bottom:10px;font-size:16px;color:#333}.hotel-info-section p,.hotel-offer-section p{margin:5px 0;font-size:14px;color:#666}.modal-footer{display:flex;justify-content:flex-end;padding:15px 20px;border-top:1px solid #eee;gap:10px}.modal-close-button,.book-now-button{padding:8px 16px;border-radius:4px;font-size:14px;cursor:pointer}.modal-close-button{background-color:#f0f0f0;border:1px solid #ddd;color:#333}.book-now-button{background-color:#4a89dc;border:none;color:#fff}.date-error{color:#d32f2f;font-size:12px;margin-top:5px;font-weight:500;background-color:#d32f2f1a;padding:5px 8px;border-radius:4px;position:absolute;z-index:10;width:90%}.checkbox-container{display:flex;align-items:center;margin:10px 0;cursor:pointer;-webkit-user-select:none;user-select:none}.checkbox-container input[type=checkbox]{margin-right:8px;cursor:pointer}.checkbox-text{font-size:14px;color:#333}.flight-segment{margin-bottom:20px;padding-bottom:10px}.segment-divider{height:1px;background-color:#eee;margin:15px 0}.segment-details{display:flex;margin-top:10px;align-items:flex-start}.segment-departure,.segment-arrival{flex:1}.segment-duration{display:flex;flex-direction:column;align-items:center;margin:0 15px;flex:2;position:relative}.segment-line{height:2px;background-color:#ddd;width:100%;margin:10px 0;position:relative}.segment-line:after{content:"✈";position:absolute;top:-10px;left:50%;transform:translate(-50%);color:#1a4b8e;font-size:14px}.segment-time{font-size:16px;font-weight:600;color:#333;margin:0 0 2px}.segment-date{font-size:13px;color:#666;margin:0 0 8px}.segment-airport{font-size:16px;font-weight:500;color:#1a4b8e;margin:0 0 2px}.segment-city{font-size:13px;color:#666;margin:0}.segment-duration>p{font-size:13px;color:#666;margin:5px 0 0;text-align:center}.flight-actions{display:flex;gap:10px}.flight-details-btn,.select-flight-btn{padding:8px 12px;border-radius:4px;font-size:13px;cursor:pointer;transition:all .2s ease;white-space:nowrap}.flight-details-btn{background-color:#fff;color:#1a4b8e;border:1px solid #1a4b8e}.flight-details-btn:hover{background-color:#f0f5ff}.select-flight-btn{background-color:#1a4b8e;color:#fff;border:none}.select-flight-btn:hover{background-color:#0d3c7a}@media (max-width: 768px){.flight-actions{flex-direction:column;gap:5px}.flight-details-btn,.select-flight-btn{width:100%;font-size:12px;padding:6px 10px}.segment-details{flex-direction:column;align-items:center}.segment-departure,.segment-arrival{width:100%;text-align:center;margin-bottom:10px}.segment-duration{width:100%;margin:5px 0 15px}}.modal-image{width:100%;max-height:250px;overflow:hidden;border-radius:8px;margin-bottom:15px}.modal-image img{width:100%;height:100%;object-fit:cover}.thing-to-do-info-section{margin-bottom:20px}.thing-to-do-info-section h4{font-size:18px;margin-bottom:8px;color:#333}.thing-to-do-info-section p{font-size:14px;line-height:1.5;color:#555}.saved-itineraries-container{display:flex;flex-direction:column;gap:30px;margin-bottom:30px}.saved-activities{display:flex;flex-direction:column;gap:15px}.activity-actions{display:flex;gap:5px;margin-left:auto;align-items:center}.edit-activity-btn,.remove-activity-btn{width:26px;height:26px;border-radius:50%;display:flex;align-items:center;justify-content:center;border:none;cursor:pointer;transition:all .2s ease}.edit-activity-btn{background-color:#e7f0ff;color:#2563eb}.remove-activity-btn{background-color:#fee;color:#e53e3e}.edit-activity-btn:hover{background-color:#d1e2ff;transform:scale(1.05)}.remove-activity-btn:hover{background-color:#ffdbdb;transform:scale(1.05)}.modal-header h3{margin:0;font-size:18px;font-weight:600;color:#333}.added-activities-header{margin:15px 0 10px;padding-top:15px;border-top:1px dashed #e0e0e0}.added-activities-header h4{font-size:16px;color:var(--text-color);margin:0;font-weight:500}.no-activities-message{padding:15px;background-color:#f9f9f9;border-radius:var(--radius);text-align:center;margin:10px 0}.no-activities-message p{color:var(--text-light);margin:0;font-size:14px}.activity-image{width:80px;height:80px;border-radius:8px;overflow:hidden;flex-shrink:0}.activity-image img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.add-activity-btn{width:26px;height:26px;border-radius:50%;display:flex;align-items:center;justify-content:center;border:none;cursor:pointer;transition:all .2s ease;background-color:#e7fff0;color:#22c55e}.add-activity-btn:hover{background-color:#d1ffdf;transform:scale(1.05)}.activity-location{font-size:12px;color:var(--dark-gray);margin-top:4px;font-style:italic}.recently-edited{animation:highlight-fade 3s ease-in-out;box-shadow:0 0 10px #00b46499}@keyframes highlight-fade{0%{background-color:#00b46433}70%{background-color:#00b46433;box-shadow:0 0 10px #00b46499}to{background-color:transparent;box-shadow:0 1px 3px #0000001a}}.edit-confirmation{font-size:12px;color:#05a146;margin-top:8px;font-weight:500;display:flex;align-items:center;animation:confirmation-fade 3s ease-in-out}@keyframes confirmation-fade{0%{opacity:0}to{opacity:1}}.notification-content{padding:15px 20px;border-radius:8px;box-shadow:0 4px 12px #00000026;display:flex;justify-content:space-between;align-items:center}.notification-success .notification-content{background-color:#e8f5e9;border-left:4px solid #4caf50;color:#2e7d32}.notification-error .notification-content{background-color:#ffebee;border-left:4px solid #d32f2f;color:#b71c1c}.notification-info .notification-content{background-color:#e3f2fd;border-left:4px solid #2196f3;color:#0d47a1}.notification-close{background:none;border:none;font-size:18px;cursor:pointer;opacity:.6;margin-left:10px;color:inherit}.remove-day-btn{background-color:#ffebeb;color:#d30000;border:none;border-radius:4px;padding:6px 10px;font-size:14px;cursor:pointer;margin-left:auto;transition:background-color .2s;display:flex;align-items:center}.remove-day-btn:hover{background-color:#fdd}.sub-activities{margin-top:10px;border-left:2px solid #e6f7ff;padding-left:15px;margin-left:5px}.sub-activities-header{font-size:14px;font-weight:500;color:#4a4a4a;margin-bottom:8px}.sub-activity-item{display:flex;padding:8px 0;border-bottom:1px dashed #e0e0e0}.sub-activity-time{min-width:70px;font-size:14px;color:#666;padding-right:10px}.sub-activity-name{font-weight:500;font-size:14px;margin-bottom:3px}.sub-activity-description{font-size:12px;color:#666}.form-note{margin-top:8px;color:#666;font-style:italic}.remove-sub-activity-btn{background-color:transparent;color:#d30000;border:none;width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0;margin-left:5px;opacity:.6;transition:background-color .2s,opacity .2s}.remove-sub-activity-btn:hover{background-color:#ffebeb;opacity:1}.added-place{background-color:#f5f9ff;border-left:3px solid #4a90e2;margin-bottom:20px;padding-left:15px}.place-name{font-weight:600;font-size:16px;color:#4a6fa1;margin-bottom:6px}.activity-name{font-weight:500;font-size:15px;color:#333;margin-bottom:5px}.sub-activities{margin-top:12px;border-left:2px solid #e6f7ff;padding-left:15px;margin-left:5px;background-color:#ffffffb3;border-radius:0 0 6px 6px;padding-top:8px;padding-bottom:8px}.sub-activities-header{font-size:14px;font-weight:500;color:#4a90e2;margin-bottom:10px}.add-to-bucketlist-container{display:flex;justify-content:center;margin-top:20px}.add-to-bucketlist-btn{background-color:#254379;color:#fff;border:none;border-radius:6px;padding:10px 20px;font-weight:500;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 4px #0000001a}.add-to-bucketlist-btn:hover{background-color:#254379;transform:translateY(-2px);box-shadow:0 4px 6px #00000026}.saved-content{padding:20px 0}.edit-form{padding:10px 0}.form-group label{display:block;margin-bottom:6px;font-weight:500;color:#444;font-size:14px}.form-control{width:100%;padding:10px;border:1px solid #ddd;border-radius:4px;font-size:14px;color:#333;background-color:#fff}.form-control:focus{border-color:#1a4b8e;outline:none;box-shadow:0 0 0 2px #1a4b8e1a}textarea.form-control{resize:vertical;min-height:80px}.image-preview{border:1px solid #eee;border-radius:4px;padding:8px;background-color:#f9f9f9;text-align:center}.activities-section-header{margin:20px 0 15px;padding-bottom:6px;border-bottom:1px solid #e0e0e0}.activities-section-header h4{font-weight:600;font-size:15px;color:#333;margin:0}.thing-to-do-website{margin-top:20px}.thing-to-do-website a{display:inline-flex;align-items:center;justify-content:center;gap:8px;background-color:#1a4b8e;color:#fff;text-decoration:none;font-weight:500;padding:10px 16px;border-radius:6px;transition:all .3s ease;box-shadow:0 2px 4px #0000001a;font-size:15px;width:100%;max-width:300px}.thing-to-do-website a:hover{background-color:#0d3c7a;transform:translateY(-2px);box-shadow:0 4px 8px #00000026}.thing-to-do-website a:active{transform:translateY(0);box-shadow:0 1px 2px #0000001a}.hotel-iframe-container{width:95%;margin:20px 0;padding:20px;background-color:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;min-height:400px;position:relative}.hotel-iframe-container iframe{width:100%;border:none;min-height:400px}.hotel-widget-container{width:100%;min-height:400px}.hotel-widget-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px;width:100%;padding:30px 20px}.hotel-widget-loading .loading-message{margin-top:20px;color:#666;font-size:14px;font-weight:500}.coming-soon{margin:20px 0;padding:30px;background-color:#f8f9fa;border-radius:8px;text-align:center;color:#666;font-size:15px}.city-selection{margin-bottom:20px;display:flex;flex-wrap:wrap;gap:10px;align-items:center}.city-btn{padding:.5rem 1rem;background-color:#f0f0f0;border:1px solid #ccc;border-radius:4px;font-size:.9rem;cursor:pointer;transition:all .3s ease}.city-btn.active{background-color:var(--primary-color);color:#fff;border-color:var(--primary-color)}.city-btn:hover{background-color:#e0e0e0}.city-btn.active:hover{background-color:var(--primary-color-dark, #005a9e)}.city-btn.active:active{transform:translateY(0);box-shadow:0 1px 2px #0000001a}@media (max-width: 768px){.city-selection{overflow-x:auto;padding-bottom:10px;-webkit-overflow-scrolling:touch;display:flex;flex-wrap:nowrap;width:100%}.city-btn{flex:0 0 auto}}.flight-iframe-container{width:100%;margin:20px 0;padding:20px;background-color:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;min-height:400px;position:relative}.flight-widget-container{width:100%;min-height:400px}.flight-widget-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px;width:100%;padding:30px 20px}.flight-widget-loading .loading-message{margin-top:20px;color:#666;font-size:14px;font-weight:500}@media (max-width: 768px){.thing-to-do-website a{padding:8px 14px;font-size:14px;max-width:250px}}@media (max-width: 480px){.thing-to-do-website{margin-top:16px;display:flex;justify-content:center}.thing-to-do-website a{padding:8px 12px;font-size:14px;width:100%}}.days-scrollable-container{border-radius:8px}.days-scrollable-container::-webkit-scrollbar{width:6px}.days-scrollable-container::-webkit-scrollbar-track{background:transparent}.days-scrollable-container::-webkit-scrollbar-thumb{background-color:var(--primary-color, #1a4b8e);border-radius:3px}.date-selection-sticky-container{background-color:#fffffffa;box-shadow:0 2px 4px #0000000d;border-radius:6px;margin-bottom:1rem}.date-selection{display:flex;flex-wrap:nowrap;overflow-x:auto;gap:8px;padding:.5rem 0;scrollbar-width:thin;scrollbar-color:var(--primary-color, #1a4b8e) transparent}.date-selection::-webkit-scrollbar{height:4px}.date-selection::-webkit-scrollbar-track{background:transparent}.date-selection::-webkit-scrollbar-thumb{background-color:var(--primary-color, #1a4b8e);border-radius:2px}.current-date{font-weight:600;color:var(--primary-color, #1a4b8e);padding:.5rem 0;text-align:center;border-top:1px solid rgba(0,0,0,.05)}.itinerary-schedule{display:flex;flex-direction:column;margin-bottom:2rem;width:100%;position:relative}.itinerary-schedule-header{margin-bottom:1.5rem;text-align:center}.itinerary-schedule-title{font-size:1.8rem;color:var(--primary-color);font-weight:600;margin-bottom:.5rem}.itinerary-date-tabs{display:flex;overflow-x:auto;gap:.5rem;padding-bottom:.5rem;margin-bottom:1.5rem;scrollbar-width:thin;scrollbar-color:#ddd transparent;-webkit-overflow-scrolling:touch}.itinerary-date-tabs::-webkit-scrollbar{height:4px}.itinerary-date-tabs::-webkit-scrollbar-track{background:transparent}.itinerary-date-tabs::-webkit-scrollbar-thumb{background-color:#ddd;border-radius:4px}.date-tab{padding:.75rem 1.25rem;background:#fff;border:1px solid #e0e0e0;border-radius:30px;font-size:.9rem;font-weight:500;color:#555;cursor:pointer;transition:all .3s ease;white-space:nowrap;box-shadow:0 1px 3px #00000014;flex-shrink:0}.date-tab:hover{box-shadow:0 3px 6px #0000001a;transform:translateY(-2px);border-color:#d0d0d0}.date-tab.active{background-color:var(--primary-color);color:#fff;border-color:var(--primary-color);box-shadow:0 3px 6px #1a4b8e33}.edit-btn-container{display:flex;justify-content:center;margin-top:1rem;margin-bottom:1.5rem}.edit-schedule-btn{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1.5rem;background-color:var(--primary-color);color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:1rem;font-weight:500;transition:all .3s ease;box-shadow:0 2px 5px #0000001a;width:auto;min-width:180px}.edit-schedule-btn:hover{background-color:#1a3f78;transform:translateY(-2px);box-shadow:0 4px 8px #00000026}.edit-schedule-btn:active{transform:translateY(0);box-shadow:0 2px 4px #0000001a}@media (max-width: 768px){.edit-schedule-btn{padding:.7rem 1.2rem;font-size:.9rem;min-width:160px}}@media (max-width: 480px){.edit-btn-container{margin-top:1.2rem}.edit-schedule-btn{padding:.7rem 1.2rem;font-size:.9rem;width:80%;max-width:250px}}.edit-actions{display:flex;gap:1rem;margin-top:1rem;justify-content:center;margin-bottom:1.5rem}.save-schedule-btn,.cancel-schedule-btn{padding:.75rem 1.5rem;border-radius:4px;font-size:.95rem;font-weight:500;cursor:pointer;transition:all .3s ease;border:none}.save-schedule-btn{background-color:#5cb85c;color:#fff}.save-schedule-btn:hover{background-color:#4cae4c;transform:translateY(-2px);box-shadow:0 4px 8px #0000001a}.save-schedule-btn:disabled{background-color:#a3d7a3;cursor:not-allowed;transform:none;box-shadow:none}.cancel-schedule-btn{background-color:#f0ad4e;color:#fff}.cancel-schedule-btn:hover{background-color:#eea236;transform:translateY(-2px);box-shadow:0 4px 8px #0000001a}.cancel-schedule-btn:disabled{background-color:#f7d5a1;cursor:not-allowed;transform:none;box-shadow:none}@media (max-width: 768px){.itinerary-schedule-title{font-size:1.5rem}.date-tab{padding:.6rem 1rem;font-size:.85rem}.edit-actions{flex-direction:column;gap:.75rem}.save-schedule-btn,.cancel-schedule-btn{width:100%;padding:.6rem 1rem;font-size:.9rem}}@media (max-width: 480px){.itinerary-schedule-title{font-size:1.3rem}.date-tab{padding:.5rem .9rem;font-size:.8rem}.itinerary-date-tabs{gap:.35rem;justify-content:flex-start;padding-bottom:.75rem}}.inline-edit-btn{margin-left:auto;margin-right:10px;height:36px;display:flex;align-items:center;padding:0 12px;white-space:nowrap;box-shadow:none}@media (max-width: 768px){.inline-edit-btn{margin-top:8px;margin-left:0}}.save-schedule-btn.inline-edit-btn{background-color:#5cb85c;color:#fff;margin-left:auto;margin-right:5px}.cancel-schedule-btn.inline-edit-btn{background-color:#f0ad4e;color:#fff;margin-right:10px}.itinerary-date-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px;align-items:center;width:100%;overflow-x:auto;padding-bottom:4px;scrollbar-width:thin}@media (max-width: 768px){.inline-edit-btn{margin-top:8px;margin-left:0}.save-schedule-btn.inline-edit-btn,.cancel-schedule-btn.inline-edit-btn{margin-left:0;margin-right:5px}}.inline-edit-actions{display:flex;gap:8px;margin-left:auto}.save-schedule-btn.inline-edit-btn{background-color:#5cb85c;color:#fff;margin-right:0}.save-schedule-btn.inline-edit-btn:hover{background-color:#4cae4c}.cancel-schedule-btn.inline-edit-btn{background-color:#f0ad4e;color:#fff}.cancel-schedule-btn.inline-edit-btn:hover{background-color:#eea236}@media (max-width: 768px){.inline-edit-btn{margin-top:8px;margin-left:0}.inline-edit-actions{width:100%;justify-content:flex-end}}.leaflet-pane,.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile-container,.leaflet-pane>svg,.leaflet-pane>canvas,.leaflet-zoom-box,.leaflet-image-layer,.leaflet-layer{position:absolute;left:0;top:0}.leaflet-container{overflow:hidden}.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow{-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none}.leaflet-tile::selection{background:transparent}.leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast}.leaflet-safari .leaflet-tile-container{width:1600px;height:1600px;-webkit-transform-origin:0 0}.leaflet-marker-icon,.leaflet-marker-shadow{display:block}.leaflet-container .leaflet-overlay-pane svg{max-width:none!important;max-height:none!important}.leaflet-container .leaflet-marker-pane img,.leaflet-container .leaflet-shadow-pane img,.leaflet-container .leaflet-tile-pane img,.leaflet-container img.leaflet-image-layer,.leaflet-container .leaflet-tile{max-width:none!important;max-height:none!important;width:auto;padding:0}.leaflet-container img.leaflet-tile{mix-blend-mode:plus-lighter}.leaflet-container.leaflet-touch-zoom{-ms-touch-action:pan-x pan-y;touch-action:pan-x pan-y}.leaflet-container.leaflet-touch-drag{-ms-touch-action:pinch-zoom;touch-action:none;touch-action:pinch-zoom}.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom{-ms-touch-action:none;touch-action:none}.leaflet-container{-webkit-tap-highlight-color:transparent}.leaflet-container a{-webkit-tap-highlight-color:rgba(51,181,229,.4)}.leaflet-tile{filter:inherit;visibility:hidden}.leaflet-tile-loaded{visibility:inherit}.leaflet-zoom-box{width:0;height:0;-moz-box-sizing:border-box;box-sizing:border-box;z-index:800}.leaflet-overlay-pane svg{-moz-user-select:none}.leaflet-pane{z-index:400}.leaflet-tile-pane{z-index:200}.leaflet-overlay-pane{z-index:400}.leaflet-shadow-pane{z-index:500}.leaflet-marker-pane{z-index:600}.leaflet-tooltip-pane{z-index:650}.leaflet-popup-pane{z-index:700}.leaflet-map-pane canvas{z-index:100}.leaflet-map-pane svg{z-index:200}.leaflet-vml-shape{width:1px;height:1px}.lvml{behavior:url(#default#VML);display:inline-block;position:absolute}.leaflet-control{position:relative;z-index:800;pointer-events:visiblePainted;pointer-events:auto}.leaflet-top,.leaflet-bottom{position:absolute;z-index:1000;pointer-events:none}.leaflet-top{top:0}.leaflet-right{right:0}.leaflet-bottom{bottom:0}.leaflet-left{left:0}.leaflet-control{float:left;clear:both}.leaflet-right .leaflet-control{float:right}.leaflet-top .leaflet-control{margin-top:10px}.leaflet-bottom .leaflet-control{margin-bottom:10px}.leaflet-left .leaflet-control{margin-left:10px}.leaflet-right .leaflet-control{margin-right:10px}.leaflet-fade-anim .leaflet-popup{opacity:0;-webkit-transition:opacity .2s linear;-moz-transition:opacity .2s linear;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.leaflet-zoom-animated{-webkit-transform-origin:0 0;-ms-transform-origin:0 0;transform-origin:0 0}svg.leaflet-zoom-animated{will-change:transform}.leaflet-zoom-anim .leaflet-zoom-animated{-webkit-transition:-webkit-transform .25s cubic-bezier(0,0,.25,1);-moz-transition:-moz-transform .25s cubic-bezier(0,0,.25,1);transition:transform .25s cubic-bezier(0,0,.25,1)}.leaflet-zoom-anim .leaflet-tile,.leaflet-pan-anim .leaflet-tile{-webkit-transition:none;-moz-transition:none;transition:none}.leaflet-zoom-anim .leaflet-zoom-hide{visibility:hidden}.leaflet-interactive{cursor:pointer}.leaflet-grab{cursor:-webkit-grab;cursor:-moz-grab;cursor:grab}.leaflet-crosshair,.leaflet-crosshair .leaflet-interactive{cursor:crosshair}.leaflet-popup-pane,.leaflet-control{cursor:auto}.leaflet-dragging .leaflet-grab,.leaflet-dragging .leaflet-grab .leaflet-interactive,.leaflet-dragging .leaflet-marker-draggable{cursor:move;cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-image-layer,.leaflet-pane>svg path,.leaflet-tile-container{pointer-events:none}.leaflet-marker-icon.leaflet-interactive,.leaflet-image-layer.leaflet-interactive,.leaflet-pane>svg path.leaflet-interactive,svg.leaflet-image-layer.leaflet-interactive path{pointer-events:visiblePainted;pointer-events:auto}.leaflet-container{background:#ddd;outline-offset:1px}.leaflet-container a{color:#0078a8}.leaflet-zoom-box{border:2px dotted #38f;background:#ffffff80}.leaflet-container{font-family:Helvetica Neue,Arial,Helvetica,sans-serif;font-size:12px;font-size:.75rem;line-height:1.5}.leaflet-bar{box-shadow:0 1px 5px #000000a6;border-radius:4px}.leaflet-bar a{background-color:#fff;border-bottom:1px solid #ccc;width:26px;height:26px;line-height:26px;display:block;text-align:center;text-decoration:none;color:#000}.leaflet-bar a,.leaflet-control-layers-toggle{background-position:50% 50%;background-repeat:no-repeat;display:block}.leaflet-bar a:hover,.leaflet-bar a:focus{background-color:#f4f4f4}.leaflet-bar a:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.leaflet-bar a:last-child{border-bottom-left-radius:4px;border-bottom-right-radius:4px;border-bottom:none}.leaflet-bar a.leaflet-disabled{cursor:default;background-color:#f4f4f4;color:#bbb}.leaflet-touch .leaflet-bar a{width:30px;height:30px;line-height:30px}.leaflet-touch .leaflet-bar a:first-child{border-top-left-radius:2px;border-top-right-radius:2px}.leaflet-touch .leaflet-bar a:last-child{border-bottom-left-radius:2px;border-bottom-right-radius:2px}.leaflet-control-zoom-in,.leaflet-control-zoom-out{font:700 18px Lucida Console,Monaco,monospace;text-indent:1px}.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out{font-size:22px}.leaflet-control-layers{box-shadow:0 1px 5px #0006;background:#fff;border-radius:5px}.leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABoAAAAaCAQAAAADQ4RFAAACf0lEQVR4AY1UM3gkARTePdvdoTxXKc+qTl3aU5U6b2Kbkz3Gtq3Zw6ziLGNPzrYx7946Tr6/ee/XeCQ4D3ykPtL5tHno4n0d/h3+xfuWHGLX81cn7r0iTNzjr7LrlxCqPtkbTQEHeqOrTy4Yyt3VCi/IOB0v7rVC7q45Q3Gr5K6jt+3Gl5nCoDD4MtO+j96Wu8atmhGqcNGHObuf8OM/x3AMx38+4Z2sPqzCxRFK2aF2e5Jol56XTLyggAMTL56XOMoS1W4pOyjUcGGQdZxU6qRh7B9Zp+PfpOFlqt0zyDZckPi1ttmIp03jX8gyJ8a/PG2yutpS/Vol7peZIbZcKBAEEheEIAgFbDkz5H6Zrkm2hVWGiXKiF4Ycw0RWKdtC16Q7qe3X4iOMxruonzegJzWaXFrU9utOSsLUmrc0YjeWYjCW4PDMADElpJSSQ0vQvA1Tm6/JlKnqFs1EGyZiFCqnRZTEJJJiKRYzVYzJck2Rm6P4iH+cmSY0YzimYa8l0EtTODFWhcMIMVqdsI2uiTvKmTisIDHJ3od5GILVhBCarCfVRmo4uTjkhrhzkiBV7SsaqS+TzrzM1qpGGUFt28pIySQHR6h7F6KSwGWm97ay+Z+ZqMcEjEWebE7wxCSQwpkhJqoZA5ivCdZDjJepuJ9IQjGGUmuXJdBFUygxVqVsxFsLMbDe8ZbDYVCGKxs+W080max1hFCarCfV+C1KATwcnvE9gRRuMP2prdbWGowm1KB1y+zwMMENkM755cJ2yPDtqhTI6ED1M/82yIDtC/4j4BijjeObflpO9I9MwXTCsSX8jWAFeHr05WoLTJ5G8IQVS/7vwR6ohirYM7f6HzYpogfS3R2OAAAAAElFTkSuQmCC);width:36px;height:36px}.leaflet-retina .leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAQAAABvcdNgAAAEsklEQVR4AWL4TydIhpZK1kpWOlg0w3ZXP6D2soBtG42jeI6ZmQTHzAxiTbSJsYLjO9HhP+WOmcuhciVnmHVQcJnp7DFvScowZorad/+V/fVzMdMT2g9Cv9guXGv/7pYOrXh2U+RRR3dSd9JRx6bIFc/ekqHI29JC6pJ5ZEh1yWkhkbcFeSjxgx3L2m1cb1C7bceyxA+CNjT/Ifff+/kDk2u/w/33/IeCMOSaWZ4glosqT3DNnNZQ7Cs58/3Ce5HL78iZH/vKVIaYlqzfdLu8Vi7dnvUbEza5Idt36tquZFldl6N5Z/POLof0XLK61mZCmJSWjVF9tEjUluu74IUXvgttuVIHE7YxSkaYhJZam7yiM9Pv82JYfl9nptxZaxMJE4YSPty+vF0+Y2up9d3wwijfjZbabqm/3bZ9ecKHsiGmRflnn1MW4pjHf9oLufyn2z3y1D6n8g8TZhxyzipLNPnAUpsOiuWimg52psrTZYnOWYNDTMuWBWa0tJb4rgq1UvmutpaYEbZlwU3CLJm/ayYjHW5/h7xWLn9Hh1vepDkyf7dE7MtT5LR4e7yYpHrkhOUpEfssBLq2pPhAqoSWKUkk7EDqkmK6RrCEzqDjhNDWNE+XSMvkJRDWlZTmCW0l0PHQGRZY5t1L83kT0Y3l2SItk5JAWHl2dCOBm+fPu3fo5/3v61RMCO9Jx2EEYYhb0rmNQMX/vm7gqOEJLcXTGw3CAuRNeyaPWwjR8PRqKQ1PDA/dpv+on9Shox52WFnx0KY8onHayrJzm87i5h9xGw/tfkev0jGsQizqezUKjk12hBMKJ4kbCqGPVNXudyyrShovGw5CgxsRICxF6aRmSjlBnHRzg7Gx8fKqEubI2rahQYdR1YgDIRQO7JvQyD52hoIQx0mxa0ODtW2Iozn1le2iIRdzwWewedyZzewidueOGqlsn1MvcnQpuVwLGG3/IR1hIKxCjelIDZ8ldqWz25jWAsnldEnK0Zxro19TGVb2ffIZEsIO89EIEDvKMPrzmBOQcKQ+rroye6NgRRxqR4U8EAkz0CL6uSGOm6KQCdWjvjRiSP1BPalCRS5iQYiEIvxuBMJEWgzSoHADcVMuN7IuqqTeyUPq22qFimFtxDyBBJEwNyt6TM88blFHao/6tWWhuuOM4SAK4EI4QmFHA+SEyWlp4EQoJ13cYGzMu7yszEIBOm2rVmHUNqwAIQabISNMRstmdhNWcFLsSm+0tjJH1MdRxO5Nx0WDMhCtgD6OKgZeljJqJKc9po8juskR9XN0Y1lZ3mWjLR9JCO1jRDMd0fpYC2VnvjBSEFg7wBENc0R9HFlb0xvF1+TBEpF68d+DHR6IOWVv2BECtxo46hOFUBd/APU57WIoEwJhIi2CdpyZX0m93BZicktMj1AS9dClteUFAUNUIEygRZCtik5zSxI9MubTBH1GOiHsiLJ3OCoSZkILa9PxiN0EbvhsAo8tdAf9Seepd36lGWHmtNANTv5Jd0z4QYyeo/UEJqxKRpg5LZx6btLPsOaEmdMyxYdlc8LMaJnikDlhclqmPiQnTEpLUIZEwkRagjYkEibQErwhkTAKCLQEbUgkzJQWc/0PstHHcfEdQ+UAAAAASUVORK5CYII=);background-size:26px 26px}.leaflet-touch .leaflet-control-layers-toggle{width:44px;height:44px}.leaflet-control-layers .leaflet-control-layers-list,.leaflet-control-layers-expanded .leaflet-control-layers-toggle{display:none}.leaflet-control-layers-expanded .leaflet-control-layers-list{display:block;position:relative}.leaflet-control-layers-expanded{padding:6px 10px 6px 6px;color:#333;background:#fff}.leaflet-control-layers-scrollbar{overflow-y:scroll;overflow-x:hidden;padding-right:5px}.leaflet-control-layers-selector{margin-top:2px;position:relative;top:1px}.leaflet-control-layers label{display:block;font-size:13px;font-size:1.08333em}.leaflet-control-layers-separator{height:0;border-top:1px solid #ddd;margin:5px -10px 5px -6px}.leaflet-default-icon-path{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAApCAYAAADAk4LOAAAFgUlEQVR4Aa1XA5BjWRTN2oW17d3YaZtr2962HUzbDNpjszW24mRt28p47v7zq/bXZtrp/lWnXr337j3nPCe85NcypgSFdugCpW5YoDAMRaIMqRi6aKq5E3YqDQO3qAwjVWrD8Ncq/RBpykd8oZUb/kaJutow8r1aP9II0WmLKLIsJyv1w/kqw9Ch2MYdB++12Onxee/QMwvf4/Dk/Lfp/i4nxTXtOoQ4pW5Aj7wpici1A9erdAN2OH64x8OSP9j3Ft3b7aWkTg/Fm91siTra0f9on5sQr9INejH6CUUUpavjFNq1B+Oadhxmnfa8RfEmN8VNAsQhPqF55xHkMzz3jSmChWU6f7/XZKNH+9+hBLOHYozuKQPxyMPUKkrX/K0uWnfFaJGS1QPRtZsOPtr3NsW0uyh6NNCOkU3Yz+bXbT3I8G3xE5EXLXtCXbbqwCO9zPQYPRTZ5vIDXD7U+w7rFDEoUUf7ibHIR4y6bLVPXrz8JVZEql13trxwue/uDivd3fkWRbS6/IA2bID4uk0UpF1N8qLlbBlXs4Ee7HLTfV1j54APvODnSfOWBqtKVvjgLKzF5YdEk5ewRkGlK0i33Eofffc7HT56jD7/6U+qH3Cx7SBLNntH5YIPvODnyfIXZYRVDPqgHtLs5ABHD3YzLuespb7t79FY34DjMwrVrcTuwlT55YMPvOBnRrJ4VXTdNnYug5ucHLBjEpt30701A3Ts+HEa73u6dT3FNWwflY86eMHPk+Yu+i6pzUpRrW7SNDg5JHR4KapmM5Wv2E8Tfcb1HoqqHMHU+uWDD7zg54mz5/2BSnizi9T1Dg4QQXLToGNCkb6tb1NU+QAlGr1++eADrzhn/u8Q2YZhQVlZ5+CAOtqfbhmaUCS1ezNFVm2imDbPmPng5wmz+gwh+oHDce0eUtQ6OGDIyR0uUhUsoO3vfDmmgOezH0mZN59x7MBi++WDL1g/eEiU3avlidO671bkLfwbw5XV2P8Pzo0ydy4t2/0eu33xYSOMOD8hTf4CrBtGMSoXfPLchX+J0ruSePw3LZeK0juPJbYzrhkH0io7B3k164hiGvawhOKMLkrQLyVpZg8rHFW7E2uHOL888IBPlNZ1FPzstSJM694fWr6RwpvcJK60+0HCILTBzZLFNdtAzJaohze60T8qBzyh5ZuOg5e7uwQppofEmf2++DYvmySqGBuKaicF1blQjhuHdvCIMvp8whTTfZzI7RldpwtSzL+F1+wkdZ2TBOW2gIF88PBTzD/gpeREAMEbxnJcaJHNHrpzji0gQCS6hdkEeYt9DF/2qPcEC8RM28Hwmr3sdNyht00byAut2k3gufWNtgtOEOFGUwcXWNDbdNbpgBGxEvKkOQsxivJx33iow0Vw5S6SVTrpVq11ysA2Rp7gTfPfktc6zhtXBBC+adRLshf6sG2RfHPZ5EAc4sVZ83yCN00Fk/4kggu40ZTvIEm5g24qtU4KjBrx/BTTH8ifVASAG7gKrnWxJDcU7x8X6Ecczhm3o6YicvsLXWfh3Ch1W0k8x0nXF+0fFxgt4phz8QvypiwCCFKMqXCnqXExjq10beH+UUA7+nG6mdG/Pu0f3LgFcGrl2s0kNNjpmoJ9o4B29CMO8dMT4Q5ox8uitF6fqsrJOr8qnwNbRzv6hSnG5wP+64C7h9lp30hKNtKdWjtdkbuPA19nJ7Tz3zR/ibgARbhb4AlhavcBebmTHcFl2fvYEnW0ox9xMxKBS8btJ+KiEbq9zA4RthQXDhPa0T9TEe69gWupwc6uBUphquXgf+/FrIjweHQS4/pduMe5ERUMHUd9xv8ZR98CxkS4F2n3EUrUZ10EYNw7BWm9x1GiPssi3GgiGRDKWRYZfXlON+dfNbM+GgIwYdwAAAAASUVORK5CYII=)}.leaflet-container .leaflet-control-attribution{background:#fff;background:#fffc;margin:0}.leaflet-control-attribution,.leaflet-control-scale-line{padding:0 5px;color:#333;line-height:1.4}.leaflet-control-attribution a{text-decoration:none}.leaflet-control-attribution a:hover,.leaflet-control-attribution a:focus{text-decoration:underline}.leaflet-attribution-flag{display:inline!important;vertical-align:baseline!important;width:1em;height:.6669em}.leaflet-left .leaflet-control-scale{margin-left:5px}.leaflet-bottom .leaflet-control-scale{margin-bottom:5px}.leaflet-control-scale-line{border:2px solid #777;border-top:none;line-height:1.1;padding:2px 5px 1px;white-space:nowrap;-moz-box-sizing:border-box;box-sizing:border-box;background:#fffc;text-shadow:1px 1px #fff}.leaflet-control-scale-line:not(:first-child){border-top:2px solid #777;border-bottom:none;margin-top:-2px}.leaflet-control-scale-line:not(:first-child):not(:last-child){border-bottom:2px solid #777}.leaflet-touch .leaflet-control-attribution,.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{box-shadow:none}.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{border:2px solid rgba(0,0,0,.2);background-clip:padding-box}.leaflet-popup{position:absolute;text-align:center;margin-bottom:20px}.leaflet-popup-content-wrapper{padding:1px;text-align:left;border-radius:12px}.leaflet-popup-content{margin:13px 24px 13px 20px;line-height:1.3;font-size:13px;font-size:1.08333em;min-height:1px}.leaflet-popup-content p{margin:1.3em 0}.leaflet-popup-tip-container{width:40px;height:20px;position:absolute;left:50%;margin-top:-1px;margin-left:-20px;overflow:hidden;pointer-events:none}.leaflet-popup-tip{width:17px;height:17px;padding:1px;margin:-10px auto 0;pointer-events:auto;-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg)}.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:#fff;color:#333;box-shadow:0 3px 14px #0006}.leaflet-container a.leaflet-popup-close-button{position:absolute;top:0;right:0;border:none;text-align:center;width:24px;height:24px;font:16px/24px Tahoma,Verdana,sans-serif;color:#757575;text-decoration:none;background:transparent}.leaflet-container a.leaflet-popup-close-button:hover,.leaflet-container a.leaflet-popup-close-button:focus{color:#585858}.leaflet-popup-scrolled{overflow:auto}.leaflet-oldie .leaflet-popup-content-wrapper{-ms-zoom:1}.leaflet-oldie .leaflet-popup-tip{width:24px;margin:0 auto;-ms-filter:"progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";filter:progid:DXImageTransform.Microsoft.Matrix(M11=.70710678,M12=.70710678,M21=-.70710678,M22=.70710678)}.leaflet-oldie .leaflet-control-zoom,.leaflet-oldie .leaflet-control-layers,.leaflet-oldie .leaflet-popup-content-wrapper,.leaflet-oldie .leaflet-popup-tip{border:1px solid #999}.leaflet-div-icon{background:#fff;border:1px solid #666}.leaflet-tooltip{position:absolute;padding:6px;background-color:#fff;border:1px solid #fff;border-radius:3px;color:#222;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;pointer-events:none;box-shadow:0 1px 3px #0006}.leaflet-tooltip.leaflet-interactive{cursor:pointer;pointer-events:auto}.leaflet-tooltip-top:before,.leaflet-tooltip-bottom:before,.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{position:absolute;pointer-events:none;border:6px solid transparent;background:transparent;content:""}.leaflet-tooltip-bottom{margin-top:6px}.leaflet-tooltip-top{margin-top:-6px}.leaflet-tooltip-bottom:before,.leaflet-tooltip-top:before{left:50%;margin-left:-6px}.leaflet-tooltip-top:before{bottom:0;margin-bottom:-12px;border-top-color:#fff}.leaflet-tooltip-bottom:before{top:0;margin-top:-12px;margin-left:-6px;border-bottom-color:#fff}.leaflet-tooltip-left{margin-left:-6px}.leaflet-tooltip-right{margin-left:6px}.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{top:50%;margin-top:-6px}.leaflet-tooltip-left:before{right:0;margin-right:-12px;border-left-color:#fff}.leaflet-tooltip-right:before{left:0;margin-left:-12px;border-right-color:#fff}@media print{.leaflet-control{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.saved-content{padding:20px}.saved-itineraries-container{display:flex;flex-direction:column;gap:30px}.day-schedule{background-color:#fff;border-radius:10px;box-shadow:0 2px 6px #0000001a;overflow:hidden;margin-bottom:20px}.day-header{display:flex;align-items:center;justify-content:space-between;border-radius:10px;padding:15px 20px;background-color:#f8f9fa;border-bottom:1px solid #eaeaea}.day-title{font-size:18px;font-weight:600;margin:0}.day-location{color:#666;font-size:14px}.day-location-container{display:flex;align-items:center;gap:8px}.day-location.no-location{color:#999;font-style:italic}.edit-location-btn{background:none;border:none;cursor:pointer;padding:4px;border-radius:3px;color:#666;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.edit-location-btn:hover{background-color:#f0f7ff;color:#1a73e8}.edit-location-btn svg{width:12px;height:12px}.day-image-container{width:100%;height:200px;overflow:hidden}.day-image{width:100%;height:100%;object-fit:cover}.activity-item{display:flex;align-items:flex-start;padding:12px 15px;border-bottom:1px solid #eaeaea;position:relative;transition:background-color .2s}.activity-item:last-child{border-bottom:none}.activity-item:hover{background-color:#fafafa}.activity-image{width:60px;height:60px;border-radius:8px;overflow:hidden;margin-right:12px;flex-shrink:0}.activity-image img{width:100%;height:100%;object-fit:cover;background-color:#f0f0f0}.activity-time{min-width:80px;color:#555;font-weight:500;margin-right:15px}.activity-name{font-weight:500;margin-bottom:5px;color:#333}.place-name{font-weight:600;font-size:16px;color:#1a4b8e;margin-bottom:6px;line-height:1.2}.activity-description{font-size:14px;color:#666;margin-bottom:6px}.activity-location{font-size:13px;color:#888;font-style:italic}.activity-actions{display:flex;gap:10px;align-items:center}.edit-activity-btn,.remove-activity-btn,.add-activity-btn,.edit-sub-activity-btn,.remove-sub-activity-btn{background:none;border:none;cursor:pointer;padding:5px;border-radius:4px;color:#666;display:flex;align-items:center;justify-content:center}.edit-activity-btn:hover,.edit-sub-activity-btn:hover{background-color:#f0f7ff;color:#1a73e8}.remove-activity-btn:hover,.remove-sub-activity-btn:hover{background-color:#fff0f0;color:#e53935}.add-activity-btn:hover{background-color:#f0fff0;color:#43a047}.no-activities-message{padding:20px;text-align:center;color:#888}.remove-day-btn{padding:5px 10px;background-color:#f8f9fa;color:#d32f2f;border:1px solid #d32f2f;border-radius:4px;cursor:pointer;font-size:12px}.remove-day-btn:hover{background-color:#ffebee}.add-to-bucketlist-container{margin-top:30px;display:flex;justify-content:center}.add-to-bucketlist-btn{padding:10px 20px;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:16px;font-weight:500}.add-to-bucketlist-btn:hover{background-color:#1565c0}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;z-index:1000;display:flex;align-items:center;justify-content:center}.modal-content{background-color:#fff;border-radius:8px;width:90%;max-width:500px;max-height:90vh;overflow-y:auto;box-shadow:0 4px 10px #0003}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:15px 20px;border-bottom:1px solid #eaeaea}.modal-close-btn{background:none;border:none;font-size:24px;cursor:pointer;color:#666}.modal-footer{padding:15px 20px;border-top:1px solid #eaeaea;display:flex;justify-content:flex-end;gap:10px}.edit-form{display:flex;flex-direction:column;gap:15px}.form-group{display:flex;flex-direction:column;gap:5px}.form-group label{font-size:14px;font-weight:500;color:#555}.form-control{padding:10px;border:1px solid #ddd;border-radius:4px;font-size:14px}.form-note{font-size:12px;color:#888;margin-top:5px}.image-preview{margin-bottom:15px;display:flex;justify-content:center}.modal-close-button{padding:8px 15px;border:1px solid #ddd;background-color:#fff;border-radius:4px;cursor:pointer;font-size:14px}.book-now-button{padding:8px 15px;background-color:#1a73e8;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:14px;font-weight:500}.book-now-button:hover{background-color:#1565c0}.added-place{border-left:3px solid #1a73e8;background-color:#f8fbff;position:relative;padding-right:50px;padding-top:12px;padding-bottom:12px}.added-place .activity-image{width:120px;height:90px;border-radius:6px;margin-right:15px;flex-shrink:0;object-fit:cover}.added-place .activity-image img{width:100%;height:100%;object-fit:cover;border-radius:6px}.added-place .activity-actions{position:absolute;top:10px;right:10px;display:flex;flex-direction:column;gap:6px}.custom-place-badge{position:absolute;top:10px;right:60px;background-color:#4caf50;color:#fff;padding:3px 8px;border-radius:12px;font-size:.7rem;font-weight:500;z-index:10}.custom-activity-badge{position:absolute;top:10px;right:60px;background-color:#2196f3;color:#fff;padding:3px 8px;border-radius:12px;font-size:.7rem;font-weight:500;z-index:10}.custom-activity{border-left:3px solid #2196f3!important;background-color:#2196f30d}.added-place .activity-description{font-size:14px;line-height:1.4;margin-bottom:6px;color:#555}.added-place .activity-location{font-size:13px;color:#777;font-style:italic}.activities-section-header,.added-activities-header{margin:15px 0 5px;padding:0 20px;border-top:1px solid #eaeaea}.activities-section-header h4,.added-activities-header h4{font-weight:600;font-size:15px;color:#333;margin:10px 0}.sub-activities{margin-top:10px;border-top:1px dashed #eaeaea;padding-top:10px}.sub-activities-header{font-size:14px;color:#777;margin-bottom:10px}.sub-activity-item{display:flex;padding:10px;background-color:#f8f9fa;border-radius:6px;margin-bottom:8px;position:relative}.sub-activity-time{min-width:70px;color:#666;font-size:13px;margin-right:10px}.sub-activity-name{font-size:14px;font-weight:500;color:#444;margin-bottom:3px}.sub-activity-description{font-size:13px;color:#777}.edit-sub-activity-btn,.remove-sub-activity-btn{padding:3px;font-size:12px}.recently-edited{animation:highlight-fade 3s ease-out;box-shadow:0 0 8px #4caf5080}@keyframes highlight-fade{0%{background-color:#4caf5033}to{background-color:transparent}}.edit-confirmation{font-size:13px;color:#43a047;margin-top:5px;animation:confirmation-fade 3s ease-out}@keyframes confirmation-fade{0%{opacity:0}20%{opacity:1}80%{opacity:1}to{opacity:0}}.add-day-activity-btn{background-color:#fff;color:#1a8e22;border:1px solid #1a8e22;cursor:pointer;transition:all .3s}.add-day-activity-btn:hover{background-color:#f0f5ff;transform:translateY(-2px)}.custom-place{border-left:3px solid #4caf50!important;background-color:#4caf500d}.custom-place-modal{max-width:500px;width:calc(100% - 40px)}.form-control{width:100%;padding:10px;margin-bottom:15px;border:1px solid #ddd;border-radius:4px;font-size:16px}.form-control:focus{border-color:#2196f3;outline:none;box-shadow:0 0 0 2px #2196f340}.day-header-buttons{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.day-header-buttons button{display:flex;align-items:center;justify-content:center;gap:5px;margin:0;white-space:nowrap;padding:6px 10px;font-size:13px;border-radius:4px;transition:all .2s ease;font-weight:500}.day-header-buttons button svg{flex-shrink:0}.activity-item{position:relative;display:flex;flex-wrap:wrap;border-left:3px solid #2196f3;margin-bottom:15px;padding:15px;background-color:#fff;border-radius:4px;box-shadow:0 2px 4px #0000001a}.added-place{border-left:3px solid #ff9800;background-color:#ff98000d}.activity-image{width:80px;height:80px;margin-right:15px;border-radius:4px;overflow:hidden;flex-shrink:0}.activity-details{flex:1;min-width:0}.activity-name,.place-name{font-weight:600;margin-bottom:5px;font-size:16px}.place-name{color:#ff9800}.activity-description{font-size:14px;color:#666;margin-bottom:5px;overflow-wrap:break-word;word-wrap:break-word}.activity-location{font-size:14px;color:#666;font-style:italic}.activity-time{font-weight:500;color:#2196f3;margin-right:15px;font-size:14px}.activity-actions{display:flex;gap:8px;align-items:flex-start;margin-left:auto}@media (max-width: 768px){.saved-content{padding:10px}.day-schedule{border-radius:8px;margin-left:-5px;margin-right:-5px;width:calc(100% + 10px)}.day-header{flex-direction:column;align-items:flex-start;padding:12px 15px}.day-location-container{margin-top:4px}.day-header-buttons{margin-top:10px;width:100%;justify-content:space-between}.activity-item{padding:10px;margin-bottom:10px;border-radius:6px}.activity-time{min-width:60px;font-size:13px}.activity-name,.place-name{font-size:15px;margin-bottom:3px}.activity-description{font-size:13px;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;max-height:38px}.activity-description.expanded{-webkit-line-clamp:initial;max-height:none}.activity-image{width:45px;height:45px}}@media (max-width: 480px){.saved-content{padding:5px}.day-schedule{margin-left:-5px;margin-right:-5px;width:calc(100% + 10px);padding:0}.day-header{padding:8px 10px}.day-location-container{margin-top:2px;gap:6px}.edit-location-btn{padding:2px}.edit-location-btn svg{width:10px;height:10px}.day-header-buttons{margin-top:6px;width:100%;gap:4px}.day-header-buttons button{padding:4px 6px;font-size:10px;min-width:calc(33% - 4px);border-radius:3px}.day-header-buttons button svg{width:10px;height:10px}.add-day-activity-btn,.add-custom-place-btn{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.time-suggestions-dropdown{max-height:150px;font-size:14px}.time-suggestion-item{padding:10px 12px;font-size:14px}.activity-item{flex-direction:row;padding:20px 8px 6px;margin-bottom:4px;border-radius:3px}.activity-image,.added-place .activity-image{width:32px;height:32px;margin-right:6px;border-radius:4px}.activity-time{min-width:40px;font-size:10px;margin-right:4px;color:#666}.activity-name,.place-name{font-size:12px;margin-bottom:1px;line-height:1.2}.activity-description{font-size:10px;line-height:1.2;max-height:24px}.activity-location{font-size:10px}.activity-actions{position:absolute;top:2px;right:2px;gap:1px}.edit-activity-btn,.remove-activity-btn,.add-activity-btn{width:18px;height:18px;padding:1px}.activities-section-header,.added-activities-header{margin:6px 0 2px;padding:0 6px}.activities-section-header h4,.added-activities-header h4{font-size:11px;margin:4px 0;font-weight:600}.sub-activities{margin-top:4px;padding-top:4px;padding-left:3px}.sub-activity-item{padding:3px 4px;margin-bottom:2px}.sub-activity-time{min-width:36px;font-size:9px}.sub-activity-name{font-size:10px}.sub-activity-description{font-size:9px}.added-activities-header h4,.activities-section-header h4{font-size:14px;margin:8px 0}.day-image-container{height:120px}}@media (max-width: 768px){.added-place{padding-right:40px}.added-place .activity-image{width:100px;height:75px;margin-right:12px}.custom-place-badge{right:50px;font-size:.65rem}.place-name{font-size:15px}.added-place .activity-description{font-size:13px}.added-place .activity-location{font-size:12px}}@media (max-width: 480px){.added-place{padding:30px 10px 10px;margin-bottom:8px;border-radius:6px}.added-place .activity-image{float:left;width:75px;height:60px;margin-right:8px;margin-bottom:5px}.added-place .activity-details{display:block;overflow:hidden;min-height:65px}.place-name{font-size:14px;margin-bottom:4px;font-weight:600}.added-place .activity-description{font-size:12px;line-height:1.3;margin-bottom:4px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;max-height:32px}.custom-place-badge{padding:2px 6px;font-size:.65rem;background-color:#4caf50;color:#fff;border-radius:10px;box-shadow:0 1px 3px #0000001a}}.form-control{transition:border-color .3s,box-shadow .3s}.form-control:focus{border-color:#1a4b8e;box-shadow:0 0 0 3px #1a4b8e26;outline:none}textarea.form-control{min-height:100px;resize:vertical}.form-group{margin-bottom:16px}.form-group label{display:block;margin-bottom:8px;font-weight:500;color:#333}.modal-footer button{transition:all .2s ease}.modal-close-button{background-color:#f2f2f2;color:#444}.book-now-button{background-color:#1a4b8e}.book-now-button:hover{background-color:#0d3c7a;transform:translateY(-1px)}.add-custom-place-btn{background-color:#1a4b8e;color:#fff;border:none;cursor:pointer;transition:all .3s}.add-custom-place-btn:hover{background-color:#0d3c7a;transform:translateY(-2px)}.recently-edited{animation:highlight-pulse 2s ease-in-out}@keyframes highlight-pulse{0%{box-shadow:0 0 #2196f366}70%{box-shadow:0 0 0 10px #2196f300}to{box-shadow:0 0 #2196f300}}.edit-confirmation{color:#4caf50;font-size:14px;margin-top:5px;font-weight:500}.sub-activities{margin-top:10px;border-top:1px dashed #ddd;padding-top:10px}.sub-activities-header{font-size:14px;font-weight:500;color:#666;margin-bottom:8px}.sub-activity-item{display:flex;align-items:flex-start;padding:8px;background-color:#f9f9f9;border-radius:4px;margin-bottom:8px;position:relative}.sub-activity-time{font-size:13px;color:#666;margin-right:10px;min-width:80px}.sub-activity-details{flex:1}.sub-activity-name{font-size:14px;font-weight:500}.sub-activity-description{font-size:13px;color:#666}.remove-sub-activity-btn,.edit-sub-activity-btn{background:none;border:none;color:#999;cursor:pointer;padding:5px;margin-left:5px}.remove-sub-activity-btn:hover,.edit-sub-activity-btn:hover{color:#d32f2f}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;overflow-y:auto;padding:20px}.modal-content{background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 4px 20px #00000026;width:100%;max-width:500px;max-height:calc(100vh - 40px);display:flex;flex-direction:column}.modal-header{padding:15px 20px;border-bottom:1px solid #eee;display:flex;justify-content:space-between;align-items:center}.modal-header h3{margin:0;font-size:18px}.modal-close-btn{background:none;border:none;font-size:22px;cursor:pointer;color:#666}.modal-body{padding:20px;overflow-y:auto}.modal-close-button{background-color:#f5f5f5;color:#333;border:none;border-radius:4px;padding:8px 16px;cursor:pointer}.book-now-button{background-color:#2196f3;color:#fff;border:none;border-radius:4px;padding:8px 16px;cursor:pointer}.book-now-button:hover{background-color:#0d8bf2}.form-group label{display:block;margin-bottom:5px;font-weight:500}.form-note{margin-top:10px;color:#666}@media (max-width: 768px){.activity-item{padding:10px;margin-bottom:10px;border-radius:6px}.activity-time{min-width:60px;font-size:13px}.activity-name,.place-name{font-size:15px;margin-bottom:3px}.activity-description{font-size:13px;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;max-height:38px}.activity-description.expanded{-webkit-line-clamp:initial;max-height:none}.activity-image{width:45px;height:45px}}@media (max-width: 480px){.activity-item{flex-direction:row;padding:30px 10px 10px;margin-bottom:8px}.activity-image{width:36px;height:36px;margin-right:10px;margin-bottom:0}.activity-details{flex:1;min-width:0;padding-right:5px}.activity-actions{position:absolute;top:5px;right:5px;margin-top:0;gap:5px}.edit-activity-btn,.remove-activity-btn,.add-activity-btn{width:24px;height:24px;padding:2px}.day-activities{padding:0 10px 10px}.sub-activities{margin-top:8px;padding-top:8px;padding-left:10px;margin-left:0}.sub-activity-item{padding:6px 8px;margin-bottom:5px}.sub-activity-time{min-width:60px;font-size:12px}.sub-activity-name{font-size:13px}.sub-activity-description{font-size:12px}}.modal-content{background-color:#fff;border-radius:12px;overflow:hidden;box-shadow:0 10px 25px #0003}.modal-header{background-color:#f8f9fa;border-bottom:1px solid #eaeaea;padding:16px 20px}.modal-header h3{color:#1a4b8e;font-size:18px;font-weight:600}.form-group label{color:#444;font-size:14px;font-weight:500;margin-bottom:6px}.form-control{border:1px solid #ddd;border-radius:6px;padding:12px;width:100%;font-size:15px;transition:all .2s ease}.form-control:focus{border-color:#1a4b8e;box-shadow:0 0 0 3px #1a4b8e26}textarea.form-control{min-height:100px}.form-note{color:#777;font-size:13px;margin-top:4px}.modal-footer{background-color:#f8f9fa;border-top:1px solid #eaeaea;padding:16px 20px;display:flex;justify-content:flex-end;gap:10px}.modal-close-button{background-color:#fff;border:1px solid #ddd;color:#555;font-weight:500;padding:10px 16px;border-radius:6px;cursor:pointer;transition:all .2s ease}.modal-close-button:hover{background-color:#f2f2f2}.book-now-button{background-color:#1a4b8e;border:none;color:#fff;font-weight:500;padding:10px 16px;border-radius:6px;cursor:pointer;transition:all .2s ease}.book-now-button:hover{background-color:#0d3c7a;transform:translateY(-2px)}@media (max-width: 480px){.modal-overlay{align-items:flex-end;padding:0}.modal-content{width:100%;max-width:100%;border-radius:12px 12px 0 0;max-height:90vh}.modal-header,.modal-body{padding:15px}.form-group{margin-bottom:12px}.form-control{padding:12px;font-size:16px}.modal-footer{padding:15px}.modal-footer button{flex:1;text-align:center;justify-content:center}}@media (max-width: 480px){.day-activities .activity-item{padding-top:30px;position:relative}.day-activities .activity-actions{position:absolute;top:5px;right:5px;margin-top:0;gap:5px;width:auto}.day-activities .activity-details{padding-right:5px;width:100%}}.empty-day-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:20px;background-color:#f9f9f9;border-radius:5px;margin:10px 0;min-height:120px}.empty-day-container p{margin-bottom:15px;color:#6c757d;font-style:italic}.empty-day-container .add-custom-place-btn{background-color:#213a69;color:#fff;border:none;padding:8px 15px;border-radius:5px;display:flex;align-items:center;gap:8px;cursor:pointer;transition:background-color .2s}.empty-day-container .add-custom-place-btn:hover{background-color:#152744}.day-cleared-indicator{background-color:#e6f7e6;color:#2e7d32;padding:5px 10px;border-radius:4px;font-size:.85rem;display:flex;align-items:center;margin-right:10px;animation:fadeOut 3s forwards;animation-delay:2s}@keyframes fadeOut{0%{opacity:1}to{opacity:0;visibility:hidden}}.notification-content{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-radius:8px}.notification-message{flex:1;margin-right:16px;font-size:14px;line-height:1.4}.notification-close{background:none;border:none;font-size:20px;cursor:pointer;color:inherit;opacity:.7;transition:opacity .2s}.notification-success{background-color:#d4edda;color:#155724;border:1px solid #c3e6cb}.notification-error{background-color:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.notification-info{background-color:#d1ecf1;color:#0c5460;border:1px solid #bee5eb}.confirm-button{background-color:#dc3545;color:#fff;border:none;border-radius:4px;padding:8px 16px;font-size:14px;cursor:pointer;transition:background-color .2s}.confirm-button:hover{background-color:#c82333}.modal-footer{display:flex;justify-content:flex-end;gap:10px;padding-top:15px}@media (max-width: 768px){.activity-item{padding:10px}.activity-image,.added-place .activity-image{width:45px;height:45px}.day-image-container{height:180px}}@media (max-width: 480px){.day-schedule{margin-bottom:15px}.day-title{font-size:16px}.day-location{font-size:13px}.day-header-buttons button{font-size:11px;padding:5px 8px}.activity-item{padding:8px;margin-bottom:5px}.activity-time{font-size:11px;min-width:50px}.activity-image{width:38px;height:38px;margin-right:8px}.added-place .activity-image{width:38px;height:38px}.day-image-container{height:130px}.activities-section-header h4,.added-activities-header h4{font-size:13px;margin:6px 0;padding-top:6px}.empty-day-container{min-height:80px;padding:15px}.empty-day-container p{font-size:13px;margin-bottom:10px}.activity-actions{top:2px;right:2px}}@media (max-width: 480px){.added-place .activity-actions{position:absolute;top:5px;right:5px;flex-direction:row;gap:3px}.custom-place-badge,.custom-activity-badge{top:5px;left:10px;right:auto;padding:2px 6px;font-size:.65rem;border-radius:10px;box-shadow:0 1px 3px #0000001a}.added-place .activity-location{font-size:11px;display:block;clear:both;color:#777;font-style:italic;margin-top:2px}}:root{--primary-color: #1b4571;--primary-color-light: #2a6cb3;--secondary-color: #f0f2f5;--accent-color: #d1cece;--text-color: #333;--text-light: #666;--text-lighter: #999;--white: #fff;--black: #000;--border-color: #e1e4e8;--shadow: 0 2px 10px rgba(0, 0, 0, .1);--radius: 8px;--font-family: "Poppins", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica Neue", sans-serif}.travel-container{font-family:var(--font-family);color:var(--text-color);background-color:#f9fafb;min-height:100vh;display:flex;flex-direction:column;overflow:visible!important}.travel-hero{background:linear-gradient(#00000080,#00000080),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='800' height='400' viewBox='0 0 800 400'%3E%3Cstyle%3E.st0%7Bfill:%23ffffff;%7D .st1%7Bfill:%23e1e9f4;%7D .st2%7Bfill:%23c5d4ea;%7D .st3%7Bfill:%23a4b7db;%7D .st4%7Bfill:%2384a1cc;%7D%3C/style%3E%3Crect width='800' height='400' fill='%23718DB5'/%3E%3Cpath class='st0' d='M70 130c-5.5 0-10 4.5-10 10s4.5 10 10 10 10-4.5 10-10-4.5-10-10-10zm0 15c-2.8 0-5-2.2-5-5s2.2-5 5-5 5 2.2 5 5-2.2 5-5 5z'/%3E%3Cpath class='st0' d='M160 220c-16.5 0-30 13.5-30 30s13.5 30 30 30 30-13.5 30-30-13.5-30-30-30zm0 45c-8.3 0-15-6.7-15-15s6.7-15 15-15 15 6.7 15 15-6.7 15-15 15z'/%3E%3Cpath class='st1' d='M300 110c-11 0-20 9-20 20s9 20 20 20 20-9 20-20-9-20-20-20zm0 30c-5.5 0-10-4.5-10-10s4.5-10 10-10 10 4.5 10 10-4.5 10-10 10z'/%3E%3Cpath class='st2' d='M390 270c-16.5 0-30 13.5-30 30s13.5 30 30 30 30-13.5 30-30-13.5-30-30-30zm0 45c-8.3 0-15-6.7-15-15s6.7-15 15-15 15 6.7 15 15-6.7 15-15 15z'/%3E%3Cpath class='st3' d='M590 120c-8.3 0-15 6.7-15 15s6.7 15 15 15 15-6.7 15-15-6.7-15-15-15zm0 25c-5.5 0-10-4.5-10-10s4.5-10 10-10 10 4.5 10 10-4.5 10-10 10z'/%3E%3Cpath class='st4' d='M700 280c-5.5 0-10 4.5-10 10s4.5 10 10 10 10-4.5 10-10-4.5-10-10-10zm0 15c-2.8 0-5-2.2-5-5s2.2-5 5-5 5 2.2 5 5-2.2 5-5 5z'/%3E%3Cpath class='st0' d='M100 80l10 30-25-18h30l-25 18zM190 300l15 45-37.5-27h45l-37.5 27zM300 170l10 30-25-18h30l-25 18zM490 120l20 60-50-36h60l-50 36zM630 220l12.5 37.5-31.25-22.5h37.5l-31.25 22.5zM680 80l15 45-37.5-27h45l-37.5 27z'/%3E%3Cpath class='st1' d='M130 210c-8.3 0-15 6.7-15 15s6.7 15 15 15 15-6.7 15-15-6.7-15-15-15zm0.5 22.5c-4.1 0-7.5-3.4-7.5-7.5s3.4-7.5 7.5-7.5 7.5 3.4 7.5 7.5-3.4 7.5-7.5 7.5z'/%3E%3Cpath class='st2' d='M230 150c-5.5 0-10 4.5-10 10s4.5 10 10 10 10-4.5 10-10-4.5-10-10-10zm0 15c-2.8 0-5-2.2-5-5s2.2-5 5-5 5 2.2 5 5-2.2 5-5 5z'/%3E%3Cpath class='st3' d='M430 80c-11 0-20 9-20 20s9 20 20 20 20-9 20-20-9-20-20-20zm0 30c-5.5 0-10-4.5-10-10s4.5-10 10-10 10 4.5 10 10-4.5 10-10 10z'/%3E%3Cpath class='st4' d='M520 200c-16.5 0-30 13.5-30 30s13.5 30 30 30 30-13.5 30-30-13.5-30-30-30zm0 45c-8.3 0-15-6.7-15-15s6.7-15 15-15 15 6.7 15 15-6.7 15-15 15z'/%3E%3Cpath class='st0' d='M120 300c-2.8 0-5-2.2-5-5s2.2-5 5-5 5 2.2 5 5-2.2 5-5 5zM260 100c-2.8 0-5-2.2-5-5s2.2-5 5-5 5 2.2 5 5-2.2 5-5 5zM350 250c-2.8 0-5-2.2-5-5s2.2-5 5-5 5 2.2 5 5-2.2 5-5 5zM450 150c-2.8 0-5-2.2-5-5s2.2-5 5-5 5 2.2 5 5-2.2 5-5 5zM550 300c-2.8 0-5-2.2-5-5s2.2-5 5-5 5 2.2 5 5-2.2 5-5 5zM650 180c-2.8 0-5-2.2-5-5s2.2-5 5-5 5 2.2 5 5-2.2 5-5 5z'/%3E%3Cpath class='st1' d='M240 270c0 4.1-3.4 7.5-7.5 7.5s-7.5-3.4-7.5-7.5 3.4-7.5 7.5-7.5 7.5 3.4 7.5 7.5zM400 200c0 4.1-3.4 7.5-7.5 7.5s-7.5-3.4-7.5-7.5 3.4-7.5 7.5-7.5 7.5 3.4 7.5 7.5zM600 250c0 4.1-3.4 7.5-7.5 7.5s-7.5-3.4-7.5-7.5 3.4-7.5 7.5-7.5 7.5 3.4 7.5 7.5zM720 150c0 4.1-3.4 7.5-7.5 7.5s-7.5-3.4-7.5-7.5 3.4-7.5 7.5-7.5 7.5 3.4 7.5 7.5z'/%3E%3Cpath class='st2' d='M520 100c0 5.5-4.5 10-10 10s-10-4.5-10-10 4.5-10 10-10 10 4.5 10 10zM180 180c0 5.5-4.5 10-10 10s-10-4.5-10-10 4.5-10 10-10 10 4.5 10 10z'/%3E%3Cpath class='st0' d='M220 210H180l40-40v40zM300 90h40l-40 40V90zM520 150h40l-40 40v-40zM80 180h-40l40-40v40zM650 280h-40l40-40v40z'/%3E%3Cpath class='st0' d='M690 180h30v30h-30zM80 250h20v20H80zM350 150h20v20h-20zM250 320h15v15h-15zM550 80h15v15h-15z'/%3E%3Cpath class='st1' d='M150 150h25v25h-25zM450 300h25v25h-25zM630 100h25v25h-25z'/%3E%3Cpath class='st0' d='M120 120l30 30M250 50l45 45M450 250l30 30M600 80l45 45M350 320l20 20'/%3E%3Cpath class='st1' d='M200 250l40 40M300 150l40 40M500 50l40 40M700 220l30 30'/%3E%3Cpath class='st2' d='M250 200c0 0-20 30-50 30-30 0-50-30-50-30s20-30 50-30C230 170 250 200 250 200z'/%3E%3Ccircle class='st4' cx='200' cy='200' r='10'/%3E%3Cpath class='st2' d='M550 280c0 0-15 22.5-37.5 22.5S475 280 475 280s15-22.5 37.5-22.5S550 280 550 280z'/%3E%3Ccircle class='st4' cx='512.5' cy='280' r='7.5'/%3E%3Cpath class='st2' d='M400 100c0 0-10 15-25 15s-25-15-25-15 10-15 25-15S400 100 400 100z'/%3E%3Ccircle class='st4' cx='375' cy='100' r='5'/%3E%3Cpath class='st2' d='M700 150c0 0-10 15-25 15s-25-15-25-15 10-15 25-15S700 150 700 150z'/%3E%3Ccircle class='st4' cx='675' cy='150' r='5'/%3E%3C/svg%3E");background-color:var(--primary-color);background-size:cover;background-position:center;color:#fff;padding:60px 20px;text-align:center}.travel-hero-content{max-width:800px;margin:0 auto}.travel-hero-title{font-size:2.5rem;font-weight:700;margin-bottom:16px;text-shadow:0 2px 4px rgba(0,0,0,.3)}.travel-hero-subtitle{font-size:1.25rem;opacity:.9;max-width:600px;margin:0 auto;text-shadow:0 1px 2px rgba(0,0,0,.3)}.travel-tabs{background-color:#fff;box-shadow:0 2px 4px #0000001a;position:sticky;top:60px;z-index:100}.travel-tabs-container{max-width:1200px;margin:0 auto;display:flex;overflow-x:auto}.travel-tab{padding:16px 24px;display:flex;align-items:center;gap:8px;color:var(--text-color);text-decoration:none;border-bottom:3px solid transparent;transition:all .2s ease;white-space:nowrap;flex-shrink:0}.travel-tab svg{width:20px;height:20px;flex-shrink:0}.travel-tab:hover{color:var(--primary-color);background-color:#00000005}.travel-tab.active{color:var(--primary-color);border-bottom-color:var(--primary-color);font-weight:500}.travel-content{flex:1;padding:20px;max-width:1200px;width:100%;margin:0 auto;box-sizing:border-box;overflow:visible!important;position:relative;z-index:10}@media (max-width: 768px){.travel-hero-title{font-size:2rem}.travel-hero-subtitle{font-size:1rem}.travel-tab{padding:12px 16px;font-size:.9rem}.travel-tab svg{width:18px;height:18px}.travel-content{padding:15px}}.flight-search-container{font-family:var(--font-family);color:var(--text-color);max-width:100%;box-sizing:border-box}.flight-search-header{margin-bottom:24px}.flight-search-title{font-size:28px;font-weight:600;margin-bottom:8px;color:var(--primary-color)}.flight-search-subtitle{font-size:16px;color:var(--text-light)}.flight-trip-type-selector{display:flex;background-color:#f5f6f7;border-radius:8px;margin-bottom:20px;overflow:hidden;width:100%;box-sizing:border-box}.flight-trip-type{flex:1;text-align:center;padding:12px;cursor:pointer;transition:all .2s;font-size:14px;font-weight:500;position:relative}.flight-trip-type input{position:absolute;opacity:0;cursor:pointer;height:0;width:0}.flight-trip-type.active{background-color:#fff;color:var(--primary-color);box-shadow:0 2px 4px #0000001a}.flight-search-form-container{background-color:#fff;border-radius:var(--radius);box-shadow:var(--shadow);padding:24px;margin-bottom:32px;width:100%;box-sizing:border-box}.flight-search-form{display:flex;flex-direction:column;gap:20px;width:100%;box-sizing:border-box}.flight-search-row{display:flex;gap:20px;width:100%;box-sizing:border-box}.flight-search-form-group{flex:1;display:flex;flex-direction:column;gap:8px;min-width:0}.flight-search-form-group label{font-size:14px;font-weight:500;color:var(--text-color)}.flight-search-input-icon{position:relative;width:100%;box-sizing:border-box}.flight-search-input-icon svg{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--text-lighter);z-index:1}.flight-search-input-icon input,.flight-search-input-icon select{width:100%;padding:12px 12px 12px 40px;border:1px solid var(--border-color);border-radius:var(--radius);font-family:var(--font-family);font-size:14px;transition:border-color .2s;box-sizing:border-box}.flight-search-input-icon input:focus,.flight-search-input-icon select:focus{outline:none;border-color:var(--primary-color)}.flight-search-button{padding:14px;background-color:var(--primary-color);color:#fff;border:none;border-radius:var(--radius);font-family:var(--font-family);font-size:16px;font-weight:500;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:background-color .2s}.flight-search-button:hover{background-color:var(--primary-color-light)}.flight-search-button:disabled{background-color:#ccc;cursor:not-allowed}.flight-airport-input{position:relative;z-index:100}.airport-suggestions{position:absolute;top:100%;left:0;width:100%;background-color:#fff;border:1px solid var(--border-color);border-top:none;border-radius:0 0 var(--radius) var(--radius);box-shadow:0 4px 12px #00000026;max-height:250px;overflow-y:auto!important;z-index:1000;min-width:300px;font-size:14px;scrollbar-width:thin;scrollbar-color:rgba(0,0,0,.2) transparent;display:block!important;pointer-events:auto!important;transition:none!important;transform:translateZ(0);backface-visibility:hidden}.flight-airport-input:hover .airport-suggestions,.airport-suggestions:hover{display:block!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important}.airport-suggestions::-webkit-scrollbar{width:6px;height:6px}.airport-suggestions::-webkit-scrollbar-track{background:transparent;border-radius:10px}.airport-suggestions::-webkit-scrollbar-thumb{background-color:#0003;border-radius:10px;border:2px solid transparent}.airport-suggestions::-webkit-scrollbar-thumb:hover{background-color:#0000004d}.airport-suggestion{padding:10px 16px;cursor:pointer;border-bottom:1px solid #f0f0f0;transition:background-color .2s;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block!important}.airport-suggestion:hover{background-color:#f8f9fa}.airport-suggestion:last-child{border-bottom:none}.airport-suggestion strong{color:var(--primary-color);font-weight:600}.airport-suggestion .country{color:var(--text-lighter);font-size:12px;margin-left:8px}@media (min-width: 769px){.airport-suggestions{max-height:250px!important;overflow-y:auto!important;overflow-x:hidden!important;display:block!important;height:auto!important;opacity:1!important;visibility:visible!important}.flight-search-form-container,.flight-search-form,.flight-search-row,.flight-search-form-group,.flight-airport-input,.travel-container,.travel-content,.travel-tab-content{overflow:visible!important}.flight-airport-input{position:relative!important}.airport-suggestions{transform:none!important;transition:none!important;animation:none!important;pointer-events:auto!important}.airport-suggestions{position:absolute!important;z-index:9999!important}}.search-error-message{background-color:#fee;border:1px solid #fcc;border-radius:var(--radius);padding:12px;margin-top:16px;color:#c33}.flight-search-sections{display:grid;grid-template-columns:300px 1fr;gap:24px;width:100%;box-sizing:border-box}.flight-search-section-title{font-size:20px;font-weight:600;margin-bottom:16px;color:var(--primary-color)}.flight-search-filters{background-color:#fff;border-radius:var(--radius);padding:20px;box-shadow:var(--shadow);align-self:start;box-sizing:border-box;width:100%}.flight-filter-group{margin-bottom:24px;width:100%;box-sizing:border-box}.flight-filter-group:last-child{margin-bottom:0}.flight-filter-title{font-size:16px;font-weight:500;margin-bottom:12px;color:var(--text-color)}.flight-price-slider{display:flex;align-items:center;gap:10px;width:100%;box-sizing:border-box}.flight-price-slider input{flex:1}.flight-price-value{font-size:14px;font-weight:500;white-space:nowrap}.flight-stops-options,.flight-time-options{display:flex;flex-direction:column;gap:8px}.flight-stop-option,.flight-time-option{display:flex;align-items:center;gap:8px;cursor:pointer}.flight-stop-option input,.flight-time-option input{margin:0}.flight-stop-option span,.flight-time-option span{font-size:14px}.flight-airline-options{display:flex;flex-direction:column;gap:8px}.flight-airline-option{display:flex;align-items:center;gap:8px;cursor:pointer}.flight-airline-option input{margin:0}.flight-airline-option span{font-size:14px}.flight-search-results{display:flex;flex-direction:column;gap:20px}.flight-results-message{background-color:#f8f9fa;padding:16px;border-radius:var(--radius);font-size:14px;color:var(--text-light);text-align:center}.flight-result-cards{display:flex;flex-direction:column;gap:16px}.flight-result-card{display:flex;background-color:#fff;border-radius:var(--radius);box-shadow:var(--shadow);padding:20px;transition:transform .2s,box-shadow .2s;align-items:center;justify-content:space-between}.flight-result-card:hover{transform:translateY(-4px);box-shadow:0 8px 16px #0000001a}.flight-result-airline{display:flex;gap:12px;align-items:center;width:120px}.flight-airline-logo{width:32px;height:32px;object-fit:contain}.flight-airline-info{display:flex;flex-direction:column}.flight-airline-name{font-size:14px;font-weight:500}.flight-number{font-size:12px;color:var(--text-light)}.flight-result-route{display:flex;align-items:center;gap:16px;flex:1}.flight-route-point{display:flex;flex-direction:column;align-items:center}.flight-time{font-size:18px;font-weight:600}.flight-airport{font-size:16px;font-weight:500;color:var(--primary-color)}.flight-city{font-size:12px;color:var(--text-light)}.flight-route-line{display:flex;flex-direction:column;align-items:center;flex:1;position:relative}.flight-duration{font-size:14px;font-weight:500;margin-bottom:4px}.flight-line{height:2px;background-color:#ddd;width:100%;position:relative}.flight-line:after{content:"✈";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:14px;color:var(--primary-color)}.flight-stops{font-size:12px;color:var(--text-light);margin-top:4px}.flight-result-details{display:flex;flex-direction:column;align-items:flex-start;gap:8px;width:120px}.flight-result-cabin{font-size:14px;font-weight:500}.flight-baggage-info{display:flex;align-items:center;gap:4px;font-size:12px;color:var(--text-light)}.flight-result-price{display:flex;flex-direction:column;align-items:flex-end;gap:8px;width:100px}.flight-price{font-size:20px;font-weight:600;color:var(--primary-color)}.flight-select-btn{background-color:var(--primary-color);color:#fff;border:none;padding:8px 16px;border-radius:var(--radius);font-family:var(--font-family);font-size:14px;font-weight:500;cursor:pointer;transition:background-color .2s}.flight-select-btn:hover{background-color:var(--primary-color-light)}@media (max-width: 1200px){.flight-result-card{flex-wrap:wrap}.flight-result-airline,.flight-result-route{width:100%;margin-bottom:12px}}@media (max-width: 992px){.flight-search-sections{grid-template-columns:1fr}.flight-search-filters{margin-bottom:20px}}@media (max-width: 768px){.flight-search-row{flex-direction:column;gap:16px}.flight-search-form-container{padding:16px}.flight-search-input-icon input,.flight-search-input-icon select{font-size:16px;padding:10px 10px 10px 36px}.flight-result-route{flex-direction:column;gap:20px}.flight-route-line{transform:rotate(90deg);width:100px;margin:16px 0}.flight-result-details,.flight-result-price{width:100%;align-items:center;justify-content:center;margin-top:12px}.flight-select-btn{width:100%}.airport-suggestions{position:absolute;width:100vw;max-width:none;left:0;right:auto;box-shadow:0 6px 16px #0003;transform:none;max-height:250px;-webkit-overflow-scrolling:touch}.flight-airport-input{position:static}.flight-search-form-group{position:relative}}@media (max-width: 480px){.flight-search-title{font-size:24px}.flight-search-subtitle{font-size:14px}.flight-trip-type{padding:10px 6px;font-size:12px}.flight-search-button{padding:12px;font-size:14px}.flight-price-slider{flex-direction:column;align-items:stretch;gap:8px}.flight-price-value{text-align:center}.airport-suggestions{width:calc(100% - 24px);left:12px;right:12px;max-height:200px;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.airport-suggestion{padding:10px 12px}}.flight-search-form-container,.flight-search-form,.flight-search-row,.flight-search-form-group,.flight-search-container,.travel-container{overflow:visible!important}@media (max-width: 480px){.airport-suggestions{width:calc(100% - 24px);left:12px;right:12px;max-height:200px;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.airport-suggestion{padding:10px 12px}}@supports (-webkit-touch-callout: none){.airport-suggestions{position:absolute;top:100%;left:0;right:0;width:100%}@media (max-width: 768px){.airport-suggestions{position:absolute;width:100%;left:0;right:0}}}.travel-tab-content,.travel-tabs{overflow:visible!important}.airport-suggestions{position:absolute!important;z-index:9999!important}.airport-suggestions:after{content:"";position:absolute;bottom:0;left:0;right:0;height:20px;background:linear-gradient(to top,#ffffffe6,#fff0);pointer-events:none;opacity:.7;border-radius:0 0 var(--radius) var(--radius)}@media (max-width: 768px){.flight-airport-input,.flight-search-form-group{position:relative!important;z-index:1000!important}.airport-suggestions{position:absolute!important;width:100%!important;max-width:none!important;left:0!important;right:0!important;top:100%!important;box-shadow:0 6px 16px #0003!important;transform:none!important;max-height:250px!important;-webkit-overflow-scrolling:touch!important;z-index:9999!important}}@media (max-width: 480px){.flight-airport-input{position:relative!important;z-index:1000!important}.airport-suggestions{width:100%!important;left:0!important;right:0!important;max-height:200px!important;-webkit-overflow-scrolling:touch!important;overscroll-behavior:contain!important;position:absolute!important;top:100%!important;z-index:9999!important}.airport-suggestion{padding:10px 12px!important}}body,html{overflow-x:hidden}.flight-search-form-container,.flight-search-form,.flight-search-row,.flight-search-form-group{overflow:visible!important}@media (max-width: 480px){.flight-search-form-container,.flight-search-form,.flight-search-row,.flight-search-form-group,.flight-airport-input{overflow:visible!important;position:relative!important}.airport-suggestions{transition:none!important;transform:none!important;animation:none!important}.airport-suggestions{position:fixed!important;top:auto!important;left:0!important;right:0!important;width:100%!important;max-width:100%!important;z-index:99999!important}}.flight-search-form-group .landing-flight-date-picker{width:100%}.flight-search-form-group .landing-flight-date-picker .date-display{border:1px solid #e2e8f0;border-radius:8px;background-color:#fff;width:100%;height:48px;display:flex;align-items:center;padding:0 12px;box-sizing:border-box;transition:all .2s}.flight-search-form-group .landing-flight-date-picker .date-display:hover{border-color:#cbd5e0;background-color:#f9fafb}.flight-search-form-group .landing-flight-date-picker .date-display:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #213a691a}@media (max-width: 768px){.flight-search-form-group .landing-flight-date-picker .date-display{height:44px;padding:0 10px}.flight-search-form-group .landing-flight-date-picker .date-label{font-size:.65rem}.flight-search-form-group .landing-flight-date-picker .date-value{font-size:.8rem}}:root{--color-surface: #fff;--color-border: #e0e0e0;--color-background: #f7f9fc;--color-text-primary: #1a202c;--color-text-secondary: #5a687e;--color-primary: #007bff;--color-accent: #28a745;--border-radius: 8px;--color-selected: #e7f3ff}.flight-card{box-sizing:border-box;background-color:var(--color-surface);border:2px solid var(--color-primary);border-radius:12px;box-shadow:0 2px 8px #0000000d;padding:12px;transition:box-shadow .2s ease,transform .2s ease,border-color .2s ease;width:100%;cursor:pointer;overflow:hidden;display:flex;flex-direction:column}.flight-card:hover{box-shadow:0 4px 12px #00000014;background-color:var(--color-selected)}.flight-card.selected{background-color:#94befd9d;border:1px solid var(--color-primary)}.total-fare{font-size:1.25rem;font-weight:600;color:var(--color-primary)}.flight-bond{border:1px dashed var(--color-primary);border-radius:8px;overflow:hidden}.flight-bond:not(:last-child){margin-bottom:8px;border:1px dashed var(--color-accent)}.bond-name{font-size:.9rem;align-self:flex-start;background-color:#b3d4f7;padding:2px 4px;border-radius:5px}.flight-leg{background-color:var(--color-background);border:1px solid var(--color-border);padding:10px}.flight-leg:not(:last-child){margin-bottom:6px}.leg-header{margin-bottom:8px}.airline-info{display:flex;align-items:center;gap:8px}.airline-logo-card{width:32px;height:32px;object-fit:contain;border-radius:10%;box-shadow:0 1px 2px #0000001a}.airline-details{display:flex;flex-direction:column;min-width:0}.card-airline-name{font-weight:600;font-size:.95rem;color:var(--color-text-primary);overflow-wrap:break-word;text-overflow:ellipsis;white-space:nowrap}.card-flight-number{font-size:.75rem;color:var(--color-text-secondary);overflow-wrap:break-word;text-overflow:ellipsis;white-space:nowrap}.leg-body{display:flex;justify-content:space-between;align-items:center;gap:6px;min-width:0;overflow-x:auto;-webkit-overflow-scrolling:touch}.departure-info,.arrival-info{display:flex;flex-direction:column;flex:1;min-width:0;gap:2px;max-width:30%;overflow-wrap:break-word}.departure-info{align-items:flex-start;text-align:left}.arrival-info{align-items:flex-end;text-align:right}.leg-time{font-size:1.1rem;font-weight:600;color:var(--color-text-primary);white-space:nowrap}.leg-airport{font-size:.9rem;font-weight:500;color:var(--color-text-secondary);text-overflow:ellipsis;white-space:nowrap}.leg-date{font-size:.7rem;color:var(--color-text-secondary);text-overflow:ellipsis;white-space:nowrap}.leg-route{flex:1;text-align:center;margin:0 6px;min-width:0}.leg-duration{font-size:.8rem;color:var(--color-text-primary);font-weight:500;display:block;white-space:nowrap;margin-bottom:0}.stops{font-size:.7rem;color:var(--color-text-secondary);display:block;white-space:nowrap;margin-bottom:0}.route-line{display:flex;align-items:center;width:100%;margin:.6rem 0}.line{height:2px;background-color:var(--color-primary);flex-grow:1;position:relative}.line:after{content:"✈";position:absolute;top:50%;left:50%;border-radius:50%;transform:translate(-50%,-50%);font-size:1rem;color:var(--color-primary);background-color:var(--color-background);padding:0 4px}.route-dot{display:none}.view-details{background-color:#007bff;border:none;border-radius:5px;color:#fff;cursor:pointer;font-size:.75rem;font-weight:500;margin:0 6px 0 auto;padding:3px 4px;display:block;text-align:center}.expanded-details{max-height:0;overflow:hidden;transition:max-height .5s ease-in-out,opacity .5s ease-in-out;opacity:0;margin-top:6px;border-top:1px solid var(--color-border);padding-top:0}.expanded-details.show{max-height:1000px;opacity:1;padding-top:6px}.expanded-details .flight-leg{background-color:#fdf8df}.expanded-details .flight-leg .line:after{background-color:#fdf8df}.layover-info{text-align:center;color:#fff;background-color:#254379;border-radius:50%;font-size:.75rem;margin:8px 0;font-weight:600}.card-footer{display:flex;justify-content:flex-end;gap:10px;align-items:center;padding-top:8px;border-top:1px solid var(--color-border)}.select-action{font-size:.9rem;font-weight:500;color:var(--color-primary);border:1px solid var(--color-primary);padding:5px 15px;border-radius:20px;transition:background-color .2s ease,color .2s ease;white-space:nowrap}.flight-card.selected .select-action{background-color:var(--color-primary);color:#fff;border-color:var(--color-primary)}@media (max-width: 992px){.flight-card{padding:10px}.leg-body{gap:5px;overflow-x:auto}.leg-time{font-size:1rem}.leg-airport{font-size:.85rem}.departure-info,.arrival-info{max-width:25%}}@media (max-width: 768px){.flight-card{padding:8px}.leg-body{gap:4px;overflow-x:auto}.leg-time{font-size:.95rem}.leg-airport{font-size:.8rem}.airline-logo-card{width:28px;height:28px}.card-airline-name{font-size:.9rem}.departure-info,.arrival-info{max-width:20%}.leg-route{margin:0 4px}.select-action{padding:4px 12px}}@media (max-width: 600px){.flight-card{padding:6px}.total-fare{font-size:1rem}.card-airline-name{font-size:.85rem}.card-flight-number{font-size:.7rem}.leg-time{font-size:.9rem}.leg-airport{font-size:.75rem}.leg-date{font-size:.65rem}.leg-duration{font-size:.75rem}.stops{font-size:.65rem}.departure-info,.arrival-info{max-width:18%}.leg-route{margin:0 3px}}@media (max-width: 480px){.flight-card{padding:5px;border:1px solid var(--color-primary)}.leg-body{gap:3px;overflow-x:auto;-webkit-overflow-scrolling:touch}.airline-logo-card{width:24px;height:24px}.card-airline-name{font-size:.8rem}.card-flight-number{font-size:.65rem}.leg-time{font-size:.85rem}.leg-airport{font-size:.7rem}.leg-date{font-size:.6rem}.leg-duration{font-size:.7rem}.stops{font-size:.6rem}.departure-info,.arrival-info{max-width:15%}.leg-route{margin:0 2px}.select-action{padding:3px 9px;font-size:.8rem}.layover-info{font-size:.6rem}}@media (max-width: 360px){.flight-card{padding:4px}.leg-body{gap:2px}.leg-time{font-size:.8rem}.leg-airport{font-size:.65rem}.leg-date{font-size:.55rem}.departure-info,.arrival-info{max-width:12%}}.sidebar{flex-shrink:0;flex-basis:250px;background-color:var(--color-surface);padding:var(--spacing-md);box-shadow:0 2px 8px #00000012;align-self:flex-start}.sidebar-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg);border-bottom:1px solid var(--color-border);padding-bottom:var(--spacing-md)}.sidebar-header h3{margin:0;font-size:1.2rem}.close-btn{display:none;background:none;border:none;font-size:2rem;cursor:pointer;color:var(--color-text-secondary)}.filter-group{margin-bottom:var(--spacing-lg)}.filter-group h4{margin:0 0 var(--spacing-md) 0;font-size:1rem;color:var(--color-text-primary)}.filter-group label{display:flex;align-items:center;margin-bottom:var(--spacing-sm);font-size:.9rem;color:var(--color-text-secondary);cursor:pointer}.filter-group input[type=checkbox]{margin-right:var(--spacing-sm);cursor:pointer}.price-slider{width:100%;cursor:pointer}.price-labels{display:flex;justify-content:space-between;font-size:.8rem;color:var(--color-text-secondary);margin-top:var(--spacing-xs)}@media (max-width: 992px){.sidebar{display:flex;flex-direction:column}.close-btn{display:block}}:root{--color-primary: #007bff;--color-primary-light: #b7daff;--color-danger: #e63946;--color-background: #f8f9fa;--color-surface: #ffffff;--color-text-primary: #212529;--color-text-secondary: #495057;--color-border: #dee2e6;--color-selected: #e7f3ff;--color-success: #2a9d8f;--color-muted: #6c757d;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 16px;--spacing-lg: 24px;--border-radius: 8px;--max-width: 1400px}body{background-color:var(--color-background);color:var(--color-text-primary);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol}.flight-main{max-width:var(--max-width);margin:0 auto;padding:0 var(--spacing-md)}.flight-header{background-color:var(--color-surface);box-shadow:0 2px 8px #00000012;border-radius:var(--border-radius);margin:var(--spacing-md) 0;padding:var(--spacing-md)}.header-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-sm)}.flight-header h1{margin:0;font-size:1.5rem}.filter-toggle-btn{display:none;background-color:#254379;color:#fff;border:none;padding:var(--spacing-xs) var(--spacing-sm);border-radius:5px;cursor:pointer;font-size:.85rem}.header-detail{display:flex;flex-wrap:wrap;gap:var(--spacing-xs) var(--spacing-sm)}.header-item{background-color:var(--color-primary-light);color:var(--color-text-primary);padding:var(--spacing-xs) var(--spacing-sm);border-radius:100px;font-size:.8rem;font-weight:500;overflow-wrap:break-word;text-overflow:ellipsis;white-space:nowrap}.flight-results-container{display:flex;gap:var(--spacing-md);align-items:flex-start;width:100%}.result-div{flex-grow:1;width:100%;overflow-x:hidden}.journeys-wrapper{display:flex;gap:10px;overflow-x:auto;-webkit-overflow-scrolling:touch;width:100%}.journey-column{flex:1 0 0;display:flex;flex-direction:column;gap:6px;border:1px solid black;box-sizing:border-box;border-radius:10px;padding:10px;background-color:var(--color-background);height:max-content;min-width:0;overflow:hidden}.journey-header{display:flex;justify-content:space-between;align-items:center;padding:4px 4px 6px;border-bottom:1px solid var(--color-border);margin-bottom:6px;flex-wrap:wrap;gap:6px}.journey-title{font-weight:500;margin:0;font-size:1rem;color:var(--color-text-primary)}.flight-count{font-size:.8rem;color:var(--color-text-secondary);white-space:nowrap}.flights-list{display:flex;flex-direction:column;gap:12px;overflow:hidden}.results-summary-bar{display:flex;justify-content:flex-end;align-items:center;margin-bottom:var(--spacing-sm);padding:var(--spacing-xs) 0}.sort-options{display:flex;align-items:center;gap:var(--spacing-xs)}.sort-options label{font-size:.85rem;color:var(--color-text-secondary)}.sort-options select{padding:var(--spacing-xs) var(--spacing-sm);border:1px solid var(--color-border);border-radius:4px;background-color:var(--color-surface)}.selected-flight-details{position:fixed;bottom:0;left:50%;transform:translate(-50%);width:100%;background:var(--color-surface);box-shadow:0 -2px 15px #00000026;padding:var(--spacing-sm);display:flex;justify-content:space-between;align-items:center;z-index:100;border-top:2px solid var(--color-primary);gap:var(--spacing-sm);flex-wrap:wrap}.additional-chg-info{font-size:.6rem;font-style:italic;font-weight:500}.book-btn-div{display:flex;flex-direction:column;gap:5px}.flight-info-wrapper{display:flex;flex-grow:1;align-items:center;justify-content:space-around;min-width:0;flex-wrap:wrap;gap:var(--spacing-xs)}.details-content{display:flex;flex-direction:column;gap:.2rem;flex:1;min-width:0;overflow-wrap:break-word}.details-content.placeholder{color:var(--color-muted);font-style:italic;text-align:center}.flight-title{font-weight:600;font-size:.85rem;color:var(--color-text-secondary);margin:0 0 3px}.route{display:flex;align-items:center;gap:.4rem;font-weight:500;flex-wrap:wrap;overflow-wrap:break-word}.route .time{color:var(--color-muted);font-size:.75rem}.route .arrow{color:var(--color-primary);font-weight:700}.price{font-weight:600;color:var(--color-primary)}.price.total{font-size:1rem}.-flight-price-section{display:flex;flex-direction:column;align-items:flex-end}.vertical-separator{width:1px;background-color:var(--color-border);align-self:stretch;margin:0 var(--spacing-sm)}.selected-flight-details .book-now-btn{background:var(--color-primary);color:#fff;border:none;padding:.5rem 1.2rem;font-size:.9rem;font-weight:600;border-radius:999px;cursor:pointer;transition:background .2s ease,transform .15s ease;flex-shrink:0}.book-now-btn:hover:not(:disabled){background:#0568aa;transform:translateY(-1px)}.book-now-btn:disabled{background-color:var(--color-muted);cursor:not-allowed;opacity:.7}.loading-container,.error-container{display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:50vh;text-align:center;color:var(--color-text-secondary)}.loading-spinner{width:40px;height:40px;border:4px solid #f3f3f3;border-top:4px solid var(--color-primary);border-radius:50%;animation:spin 1s linear infinite}.error-container h2{color:var(--color-danger)}@media (max-width: 992px){.sidebar{position:fixed;top:0;left:-300px;width:260px;height:100%;z-index:1001;transition:left .3s ease-in-out;box-shadow:4px 0 15px #0000001a}.sidebar.open{left:0}.sidebar-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#00000080;z-index:1000;opacity:0;visibility:hidden;transition:opacity .3s,visibility .3s}.sidebar-overlay.open{opacity:1;visibility:visible}.filter-toggle-btn{display:block}.selected-flight-details{width:100%;border-radius:0;padding:var(--spacing-xs)}.journeys-wrapper{gap:6px}.journey-column{padding:8px}}@media (max-width: 768px){.flight-header h1{font-size:1.3rem}.header-item{font-size:.75rem;padding:2px 5px}.selected-flight-details,.flight-info-wrapper{flex-direction:column;gap:var(--spacing-xs)}.vertical-separator{width:80%;height:1px;margin:var(--spacing-xs) auto}.details-content{align-items:center;text-align:center}.journeys-wrapper{gap:4px}.journey-column{padding:6px;gap:5px}.flights-list{gap:8px}}@media (max-width: 600px){.flight-main{padding:0 var(--spacing-sm) 60px}.flight-header{padding:var(--spacing-sm)}.header-item{font-size:.7rem}}@media (max-width: 480px){.flight-main{padding:0 var(--spacing-xs) 60px}.journeys-wrapper{gap:0;overflow-x:auto;-webkit-overflow-scrolling:touch}.journey-column{padding:4px}.journey-title{font-size:.9rem}.flight-count{font-size:.75rem}.selected-flight-details .book-now-btn{padding:.6rem .7rem}.details-content{font-size:.8rem}.route .time{font-size:.7rem}.price{font-size:.9rem}.price.total{font-size:.95rem}}@media (max-width: 360px){.flight-main{padding:0 4px 50px}.journey-column{padding:0}.journey-title{font-size:.85rem}.flight-count{font-size:.7rem}}.flight-detail-page{background-color:#f4f7f9;min-height:100vh}.flight-detail-container{max-width:1200px;margin:0 auto;padding:2rem 1.5rem}.flight-detail-header{margin-bottom:2rem;display:flex;flex-direction:column;align-items:center;gap:1.5rem}.flight-detail-header h1{font-size:2rem;font-weight:700;color:#002c85;margin:0}.back-button{background:none;border:none;color:#007bff;font-size:1rem;cursor:pointer;font-weight:500;padding:.5rem 0}.flight-detail-content{display:grid;grid-template-columns:2fr 1fr;gap:2rem;align-items:flex-start}.itinerary-section{display:flex;flex-direction:column;gap:2rem}.flight-itinerary-card{background:#fff;padding:5px;border-radius:12px;box-shadow:0 4px 12px #00000014;overflow:hidden}.itinerary-header{padding:1.5rem;background-color:#f8f9fa;border-radius:10px;border-bottom:1px solid #e9ecef}.itinerary-header h3{margin:0;font-size:1.25rem;color:#212529}.itinerary-header .route{font-size:1rem;color:#495057;font-weight:500}.leg-details{padding:1.5rem;border-radius:8px;border:1px solid rgb(190,190,190)}.leg-details .airline-info{display:flex;align-items:center;gap:1rem;margin-bottom:1rem}.airline-detail-logo{width:50px;height:50px;object-fit:contain;border:1px solid #e0e0e0;border-radius:8px}.airline-name{font-size:1.1rem;font-weight:600;color:#343a40;margin:0}.flight-number{font-size:.9rem;color:#6c757d;margin:0}.timing-info{display:flex;align-items:center;justify-content:space-between}.time-location{text-align:center}.time-location .time{font-size:1.5rem;font-weight:600;color:#1a202c;margin:0}.time-location .airport-code{font-size:1.2rem;font-weight:500;color:#4a5568;margin:.25rem 0}.time-location .date-terminal{font-size:.85rem;color:#718096;margin:0}.duration-path{flex-grow:1;text-align:center;padding:0 1.5rem}.duration-path .duration{font-size:.9rem;color:#495057;margin-bottom:.5rem}.path-line{height:2px;background-color:#ced4da;position:relative}.path-line:after{content:"✈";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:1.2rem;color:#007bff;background-color:#fff;padding:0 .5rem}.layover-information{text-align:center;border-radius:50%;background-color:#254379;margin:4px 0;color:#fff;font-size:.8rem;font-weight:500;border-top:1px solid #d1e7ff;border-bottom:1px solid #d1e7ff}.itinerary-footer{display:flex;border-radius:10px;justify-content:space-around;margin-top:5px;background-color:#f8f9fa;padding:1rem;border-top:1px solid #e9ecef;font-size:.85rem;color:#495057}.footer-item{text-align:center}.fare-summary-card{background:#fff;border-radius:12px;box-shadow:0 4px 12px #00000014;padding:1.5rem;position:sticky;top:2rem;height:fit-content}.fare-summary-card h2{font-size:1.5rem;margin:0 0 1.5rem;color:#1a202c;text-align:center}.fare-breakup-section:last-of-type{border-bottom:none}.fare-breakup-section h4{margin:0 0 1rem;font-size:1rem;font-weight:600;color:#495057}.fare-item,.subtotal-item{display:flex;justify-content:space-between;margin-bottom:.75rem;font-size:.95rem}.fare-item span:first-child{color:#6c757d}.fare-item span:last-child{color:#212529;font-weight:500}.subtotal-item{font-weight:600;color:#212529}.total-fare-section{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 0;border-top:2px solid #e9ecef;margin-top:1rem}.total-fare-section span:first-child{font-size:1.1rem;font-weight:700;color:#1a202c}.total-fare-section .total-amount{font-size:1.25rem;font-weight:700;color:#007bff}.action-button-container{display:flex;flex-direction:column;align-items:center;gap:.5rem;margin-top:1rem}.price-verified-text{color:#28a745;font-weight:600;font-size:.9rem;margin:0}.continue-button{align-self:center;gap:10px;padding:.8rem;background-color:#007bff;color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:background-color .3s ease;display:flex;align-items:center;justify-content:center;min-width:150px}.continue-button:hover{background-color:#0056b3}.continue-button:disabled{background-color:#a0cffa;cursor:not-allowed}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;height:60vh;gap:1rem}.loading-spinner{width:40px;height:40px;border:4px solid #f3f3f3;border-top:4px solid #007bff;border-radius:50%;animation:spin 1s linear infinite}.loading-spinner-small{width:24px;height:24px;border:3px solid rgba(255,255,255,.3);margin:0;border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}.right-column-container{display:flex;flex-direction:column;gap:20px}.gst-details-card{background:#fff;padding:1.5rem;border-radius:12px;box-shadow:0 4px 12px #00000014}.gst-details-card h3{margin:0 0 1.5rem;font-size:1.25rem;color:#212529}.gst-form{display:flex;flex-direction:column;gap:1rem}.gst-input-group{display:grid;grid-template-columns:1fr;gap:1rem}.gst-form input{width:100%;padding:.75rem;border:1px solid #ced4da;border-radius:6px;font-size:1rem}.gst-form input:focus{outline:none;border-color:#80bdff;box-shadow:0 0 0 .2rem #007bff40}.gst-save-btn{padding:.75rem;background-color:#28a745;color:#fff;align-self:center;border:none;border-radius:6px;cursor:pointer;font-size:1rem;font-weight:500;transition:background-color .3s ease}.gst-save-btn:hover{background-color:#218838}.gst-save-btn.saved{background-color:#1e7e34}.gst-error{color:#dc3545;font-size:.9rem;margin:0}.reprice-error-banner{background-color:#f8d7da;color:#721c24;padding:1rem;border:1px solid #f5c6cb;border-radius:8px;margin-bottom:1.5rem;text-align:center}.loading-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#fff9;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);display:flex;justify-content:center;align-items:center;flex-direction:column;gap:1.5rem;z-index:9999}.loading-overlay p{font-size:1.2rem;font-weight:500;color:#002c85}.loading-overlay .loading-spinner{width:50px;height:50px;border-width:5px}@media (max-width: 992px){.flight-detail-content{grid-template-columns:1fr}.fare-summary-card{position:static;margin-top:2rem}.right-column-container{gap:0}.gst-input-group{grid-template-columns:1fr 1fr}}@media (max-width: 576px){.flight-detail-container{padding:1.5rem 1rem}.flight-detail-header{flex-direction:column;align-items:flex-start;gap:.5rem}.flight-detail-header h1{font-size:1.75rem}.timing-info{flex-direction:column;gap:1rem}.duration-path{width:100%;padding:0}.itinerary-footer{flex-direction:column;gap:.75rem;align-items:center}.gst-input-group{grid-template-columns:1fr}}:root{--primary-color: #213a69;--secondary-color: #4a90e2;--accent-color: #ff6b6b;--success-color: #2ecc71;--warning-color: #f39c12;--error-color: #e74c3c;--text-color: #333333;--text-light: #717171;--border-color: #e0e0e0;--bg-color: #f8f9fa;--card-shadow: 0 4px 12px rgba(0, 0, 0, .08);--transition: all .3s ease}.flight-detail-page{display:flex;flex-direction:column;min-height:100vh}.flight-detail-container{flex-grow:1;max-width:1200px;margin:32px auto;padding:0 24px;width:100%}.flight-detail-header{text-align:center;margin-bottom:40px}.flight-detail-header h1{font-size:2.5rem;color:var(--primary-color);margin-bottom:12px;font-weight:700}.flight-detail-header p{font-size:1.1rem;color:var(--text-light)}.flight-detail-content{display:grid;grid-template-columns:2fr 1fr;gap:32px;align-items:start}.form-sections{display:flex;flex-direction:column;gap:24px}.passenger-form,.gst-details-form{background-color:#fff;border-radius:12px;box-shadow:var(--card-shadow);padding:32px;width:100%}.passenger-form h2,.gst-details-form h2{color:var(--primary-color);font-size:1.8rem;font-weight:600;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid var(--border-color)}.passenger-section{background-color:#f0f4f8;border-radius:10px;padding:10px;margin-bottom:24px}.passenger-section h3{color:var(--primary-color);font-size:1.3rem;font-weight:600;margin-bottom:18px;display:flex;align-items:center}.passenger-section h3:before{content:"👤";margin-right:10px;font-size:1.2rem}.form-instructions{background-color:#e6f7ff;border-left:4px solid var(--secondary-color);color:var(--primary-color);padding:15px 20px;border-radius:8px;margin-bottom:24px;font-size:.95rem;line-height:1.5}.form-row{display:flex;flex-wrap:wrap;gap:20px;margin-bottom:16px}.form-group{flex:1;min-width:220px}.form-group label{display:block;margin-bottom:8px;font-size:.9rem;font-weight:500;color:var(--text-color)}.form-group label[for$="*"]:after{content:""}.form-group label:not([for*=company-name]):not([for*=gst-number]):not([for*=gst-email]):not([for*=gst-phone]):not([for*=gst-address]):after{content:"*";color:var(--accent-color);margin-left:4px}.form-group input,.form-group select{width:100%;padding:8px 14px;border:1px solid var(--border-color);border-radius:8px;font-size:1rem;color:var(--text-color);background-color:#fff;transition:var(--transition)}.form-group input:focus,.form-group select:focus{outline:none;border-color:var(--secondary-color);box-shadow:0 0 0 3px #4a90e226}.form-group input:hover,.form-group select:hover{border-color:#b0b0b0}.form-actions{margin-top:32px;display:flex;justify-content:flex-end;gap:16px}.continue-booking-btn,.save-gst-btn{background:linear-gradient(135deg,var(--primary-color),#1a2f55);color:#fff;border:none;border-radius:8px;padding:12px 14px;font-size:1rem;font-weight:600;cursor:pointer;transition:var(--transition);display:flex;align-items:center;gap:8px}.continue-booking-btn:hover,.save-gst-btn:hover{transform:translateY(-2px);box-shadow:0 6px 15px #0003}.continue-booking-btn:active,.save-gst-btn:active{transform:translateY(0);box-shadow:0 2px 5px #0000001a}.continue-booking-btn:disabled,.save-gst-btn:disabled{background:#b0b0b0;cursor:not-allowed;transform:none;box-shadow:none}.continue-booking-btn:after{content:"→";font-size:1.2rem}.save-gst-btn{background:var(--secondary-color)}.save-gst-btn:hover{background:#3a7bd5}.error-message{background-color:#fdecea;border-left:4px solid var(--error-color);color:var(--error-color);padding:12px 16px;border-radius:8px;margin-bottom:24px;font-weight:500;text-align:center}.nationality-input-container{position:relative;width:100%}.suggestions-list{position:absolute;top:100%;left:0;right:0;background-color:#fff;border:1px solid var(--border-color);border-top:none;border-radius:0 0 8px 8px;box-shadow:0 8px 16px #0000001a;list-style-type:none;margin:0;padding:0;max-height:200px;overflow-y:auto;z-index:100}.suggestion-item{padding:10px 14px;cursor:pointer;font-size:.95rem;transition:background-color .2s ease}.suggestion-item:hover{background-color:#f0f4f8}.suggestion-item.loading,.suggestion-item.no-results{cursor:default;color:var(--text-light);font-style:italic}.suggestion-item.loading:hover,.suggestion-item.no-results:hover{background-color:transparent}.booking-summary{position:sticky;top:90px;align-self:start;width:100%;padding:0}.summary-card{background-color:#fff;border-radius:12px;box-shadow:var(--card-shadow);padding:24px;margin-bottom:24px}.summary-card h3{color:var(--primary-color);font-size:1.5rem;font-weight:600;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid var(--border-color)}.summary-flight{margin-bottom:20px;padding-bottom:15px;border-bottom:1px dashed #e9ecef}.summary-flight:last-of-type{border-bottom:none;margin-bottom:0;padding-bottom:0}.summary-flight h4{font-size:1.1rem;color:var(--secondary-color);margin-bottom:10px}.summary-route{display:flex;gap:10px;align-items:center;font-size:1.1rem;font-weight:600;color:var(--text-color);margin-bottom:8px}.summary-date{color:var(--text-light);font-size:.9rem;font-weight:700;margin-bottom:5px}.airline-info{font-weight:700;font-size:.95rem;color:var(--text-color)}.flight-summary-details{margin-top:20px;padding-top:15px;border-top:1px solid var(--border-color)}.detail-row{display:flex;justify-content:space-between;padding:8px 0;font-size:.95rem;font-weight:500;color:var(--text-color)}.detail-row.total{border-top:1px solid var(--border-color);margin-top:12px;padding-top:16px;font-weight:700;font-size:1.2rem;color:var(--primary-color)}.booking-note{margin-top:20px;padding:15px;background-color:#f0f7ff;border-radius:8px;font-size:.88rem;color:var(--primary-color);line-height:1.6}.booking-note p{margin:6px 0;display:flex;align-items:flex-start;gap:10px}.spinner{display:inline-block;width:18px;height:18px;border:2px solid rgba(255,255,255,.3);border-radius:50%;border-top-color:#fff;animation:spin .8s linear infinite;margin-right:10px}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:calc(100vh - 120px);font-size:1.1rem;color:var(--text-light)}.loading-spinner{border:4px solid rgba(74,144,226,.3);border-radius:50%;border-top:4px solid var(--secondary-color);width:40px;height:40px;animation:spin 1s linear infinite}@media (max-width: 992px){.flight-detail-content{grid-template-columns:1fr}.booking-summary{position:static;order:-1;margin-bottom:24px}.flight-detail-header h1{font-size:2rem}.passenger-form,.gst-details-form{padding:24px}}@media (max-width: 768px){.flight-detail-container{padding:0 16px;margin:24px auto}.flight-detail-header h1{font-size:1.8rem}.flight-detail-header p{font-size:1rem}.form-row{flex-direction:column;gap:16px}.form-group{min-width:100%}.passenger-section{padding:6px}.passenger-section h3{font-size:1.2rem}.continue-booking-btn,.save-gst-btn{width:100%;justify-content:center;padding:12px 20px}.form-actions{flex-direction:column}}@media (max-width: 480px){.passenger-form,.gst-details-form{padding:18px}.passenger-form h2,.gst-details-form h2{font-size:1.5rem;margin-bottom:18px}.passenger-section h3{font-size:1.1rem}.form-group label{font-size:.85rem}.form-group input,.form-group select{padding:10px 12px;font-size:.95rem}.summary-card{padding:18px}.summary-card h3{font-size:1.3rem}.summary-route{font-size:1rem}.detail-row.total{font-size:1.1rem}}.confirmation-wrapper{background-color:#f5f7fa;min-height:100vh;display:flex;flex-direction:column;width:100%}.confirmation-container{width:100%;max-width:1200px;margin:1rem auto;padding:0 1rem;box-sizing:border-box}.confirmation-header{text-align:center;padding:1.5rem 0;background-color:#fff;border-radius:12px 12px 0 0;box-shadow:0 2px 4px #0000000d}.success-icon{width:40px;height:40px;background-color:#22c55e;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:20px;margin:0 auto .75rem}.confirmation-header h1{font-size:1.75rem;color:#1f2937;margin-bottom:.5rem}.confirmation-header p{color:#6b7280;font-size:.9rem}.booking-id{margin-top:.75rem;font-weight:600;color:#1f2937;font-size:.9rem}.confirmation-main{background-color:#fff;border-radius:0 0 12px 12px;padding:1.5rem;box-shadow:0 2px 4px #0000000d;width:100%;box-sizing:border-box}.hotel-section{margin-bottom:1.5rem}.hotel-card{display:flex;flex-direction:column;gap:1rem;background-color:#f8fafc;border-radius:8px;padding:1rem}.hotel-image{width:100%;max-height:160px;object-fit:cover;border-radius:8px}.hotel-details h2{font-size:1.25rem;color:#1f2937;margin-bottom:.5rem}.location{color:#6b7280;margin-bottom:.5rem;font-size:.9rem}.rating{display:flex;gap:.5rem;align-items:center;font-size:.9rem}.rating-score{color:#eab308;font-weight:600}.details-grid{display:flex;flex-direction:column;gap:1rem;margin-bottom:1.5rem}.detail-card{background-color:#f8fafc;padding:1rem;border-radius:8px;width:100%}.detail-card h3{font-size:1.1rem;color:#1f2937;margin-bottom:.75rem}.detail-item{display:flex;justify-content:space-between;padding:.5rem 0;border-bottom:1px solid #e5e7eb;font-size:.9rem}.detail-item:last-child{border-bottom:none}.detail-item .label{color:#6b7280;font-weight:500}.detail-item .highlight,.status-confirmed{color:#22c55e;font-weight:600}.special-requests{background-color:#f8fafc;padding:1rem;border-radius:8px;margin-bottom:1.5rem}.special-requests h3{font-size:1.1rem;color:#1f2937;margin-bottom:.5rem}.special-requests p{color:#4b5563;font-size:.9rem}.action-section{margin-bottom:1.5rem}.action-grid{display:flex;flex-direction:column;gap:1rem;margin-bottom:1rem}.action-item{display:flex;gap:.75rem;padding:.75rem;background-color:#f8fafc;border-radius:8px}.action-icon{font-size:1.25rem}.action-item strong{color:#1f2937;font-size:.9rem}.action-item p{color:#6b7280;margin:0;font-size:.85rem}.action-buttons{display:flex;flex-direction:column;gap:.75rem}.support-section{background-color:#f8fafc;padding:1rem;border-radius:8px;margin-bottom:1.5rem}.support-section h3{font-size:1.1rem;color:#1f2937;margin-bottom:.5rem}.support-section p{font-size:.9rem;color:#6b7280}.contact-info{display:flex;flex-direction:column;gap:.5rem;margin-bottom:.75rem}.contact-item{display:flex;gap:.5rem;align-items:center;font-size:.9rem}.contact-icon{font-size:1.1rem}.policy-section{padding:1rem;background-color:#f8fafc;border-radius:8px}.policy-section h3{font-size:1.1rem;color:#1f2937;margin-bottom:.5rem}.policy-section p{font-size:.9rem;color:#4b5563}.btn{padding:.5rem 1rem;border-radius:6px;font-weight:600;cursor:pointer;transition:all .2s ease;border:none;font-size:.9rem;width:100%;text-align:center}.btn-primary{background-color:#2563eb;color:#fff;max-width:max-content;max-height:max-content}.btn-primary:hover{background-color:#1d4ed8}.btn-secondary{background-color:#e5e7eb;color:#1f2937}.btn-secondary:hover{background-color:#d1d5db}.btn-outline{background-color:transparent;border:1px solid #2563eb;color:#2563eb}.btn-outline:hover{background-color:#eff6ff}.loading-container{text-align:center;padding:3rem 0;width:100%}.spinner{width:32px;height:32px;border:3px solid #e5e7eb;border-top:3px solid #2563eb;border-radius:50%;animation:spin 1s linear infinite}@media (min-width: 768px){.confirmation-container{padding:0 1.5rem}.confirmation-header{padding:2rem 0}.success-icon{width:48px;height:48px;font-size:24px}.confirmation-header h1{font-size:2rem}.confirmation-header p,.booking-id{font-size:1rem}.hotel-card{flex-direction:row}.hotel-image{width:200px;max-height:120px}.hotel-details h2{font-size:1.5rem}.location,.rating{font-size:1rem}.details-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.5rem}.detail-card h3{font-size:1.25rem}.detail-item{font-size:1rem}.special-requests h3{font-size:1.25rem}.special-requests p{font-size:1rem}.action-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem}.action-item strong{font-size:1rem}.action-item p{font-size:.9rem}.action-buttons{flex-direction:row;gap:1rem}.btn{width:auto}.support-section h3{font-size:1.25rem}.support-section p,.contact-item{font-size:1rem}.contact-icon,.policy-section h3{font-size:1.25rem}.policy-section p{font-size:1rem}}@media (max-width: 480px){.confirmation-container{margin:.5rem auto;padding:0 .5rem}.confirmation-header h1{font-size:1.5rem}.confirmation-header p,.booking-id{font-size:.85rem}.confirmation-main{padding:1rem}.hotel-details h2{font-size:1.1rem}.location,.rating{font-size:.85rem}.detail-card h3,.special-requests h3,.action-section h3,.support-section h3,.policy-section h3{font-size:1rem}.detail-item,.special-requests p,.action-item strong{font-size:.85rem}.action-item p{font-size:.8rem}.support-section p,.contact-item,.policy-section p{font-size:.85rem}}.fc-flight-confirmation-page{min-height:100vh;background:linear-gradient(135deg,#f0f4ff,#e6e9f5);display:flex;flex-direction:column;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;color:#1a1a1a}.fc-confirmation-main{flex:1;padding:3rem 0}.fc-container{max-width:1000px;margin:0 auto;padding:0 1.5rem}.fc-loading-container,.fc-error-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:50vh;text-align:center;padding:2.5rem;background-color:#fff;border-radius:16px;box-shadow:0 8px 24px #00000014;margin:2rem 1rem}.fc-loading-spinner{width:48px;height:48px;border:5px solid rgba(0,0,0,.1);border-top-color:#3b82f6;border-radius:50%;animation:spin .8s ease-in-out infinite}.fc-error-container h2{color:#ef4444;font-size:1.75rem;margin-bottom:1rem}.fc-error-container p{color:#4b5563;font-size:1.1rem;margin-bottom:2rem}.fc-confirmation-header{text-align:center;background-color:#fff;padding:2.5rem;border-radius:16px;box-shadow:0 8px 24px #00000014;margin-bottom:2.5rem;position:relative;overflow:hidden}.fc-confirmation-header:before{content:"";position:absolute;top:0;left:0;width:100%;height:4px;background:linear-gradient(to right,#3b82f6,#10b981)}.fc-success-icon{width:72px;height:72px;margin:0 auto 1.5rem;background-color:#ecfdf5;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:transform .3s ease}.fc-success-icon:hover{transform:scale(1.1)}.fc-success-icon svg{fill:#10b981;width:36px;height:36px}.fc-confirmation-header h1{font-size:2.5rem;color:#111827;margin-bottom:1rem;font-weight:700}.fc-confirmation-message{font-size:1.1rem;color:#4b5563;max-width:600px;margin:0 auto;line-height:1.7}.fc-confirmation-details{display:grid;gap:2.5rem}.fc-confirmation-section{background-color:#fff;padding:2.5rem;border-radius:16px;box-shadow:0 8px 24px #00000014;transition:transform .3s ease}.fc-confirmation-section:hover{transform:translateY(-4px)}.fc-confirmation-section h2{font-size:1.75rem;color:#111827;margin-bottom:1.5rem;padding-bottom:.8rem;border-bottom:2px solid #e5e7eb;font-weight:600}.fc-reference-details,.fc-payment-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:2rem}.fc-reference-item,.fc-payment-item-detail{display:flex;flex-direction:column}.fc-reference-label,.fc-payment-label-detail{font-size:.95rem;color:#6b7280;margin-bottom:.5rem;font-weight:500}.fc-reference-value,.fc-payment-value-detail{font-size:1.05rem;color:#111827;font-weight:600}.fc-flight-summary-card{border:1px solid #e5e7eb;border-radius:16px;margin-bottom:2rem;overflow:hidden;transition:box-shadow .3s ease}.fc-flight-summary-card:hover{box-shadow:0 8px 24px #0000001a}.fc-flight-summary-card.fc-return-flight{border-color:#bfdbfe}.fc-flight-route{background:linear-gradient(to right,#eff6ff,#dbeafe);padding:1.5rem 2rem;display:flex;justify-content:space-between;align-items:center}.fc-flight-summary-card.fc-return-flight .fc-flight-route{background:linear-gradient(to right,#e0f2fe,#bfdbfe)}.fc-route-info h3{font-size:1.5rem;color:#111827;font-weight:600;margin-bottom:.4rem}.fc-route-info p{font-size:1rem;color:#4b5563}.fc-flight-details-grid{display:flex;align-items:center;padding:2rem;gap:2rem;flex-wrap:wrap}.fc-airline-section{display:flex;align-items:center;gap:1.2rem;min-width:200px}.fc-airline-logo{width:56px;height:56px;border-radius:50%;overflow:hidden;display:flex;align-items:center;justify-content:center}.fc-airline-logo img{width:100%;height:100%;object-fit:cover}.fc-airline-info h3{font-size:1.1rem;font-weight:600;color:#111827}.fc-airline-info p{font-size:.9rem;color:#4b5563}.fc-flight-times{flex:1;display:flex;justify-content:space-between;align-items:center;gap:1.5rem;min-width:320px}.fc-departure-time,.fc-arrival-time{display:flex;flex-direction:column;text-align:center}.fc-flight-times .fc-time{font-size:1.6rem;font-weight:700;color:#111827;margin-bottom:.3rem}.fc-flight-times .fc-airport{font-size:.95rem;color:#4b5563}.fc-flight-duration{display:flex;flex-direction:column;align-items:center;flex:1;position:relative}.fc-duration-line{width:100%;height:3px;background-color:#d1d5db;position:absolute;top:50%;transform:translateY(-50%);z-index:0}.fc-flight-duration span{background-color:#fff;padding:.3rem .8rem;border:1px solid #d1d5db;border-radius:9999px;font-size:.85rem;color:#4b5563;z-index:1;position:relative}.fc-passenger-list{display:grid;gap:1.2rem}.fc-passenger-item{display:flex;justify-content:space-between;align-items:center;padding:1.2rem 1.5rem;background-color:#f9fafb;border-radius:12px;border:1px solid #e5e7eb;transition:background-color .3s ease}.fc-passenger-item:hover{background-color:#f1f5f9}.fc-passenger-name{display:flex;align-items:center;gap:.6rem}.fc-passenger-title{font-size:.95rem;color:#6b7280;font-weight:500}.fc-passenger-fullname{font-size:1.05rem;font-weight:600;color:#111827}.fc-passenger-ticket,.fc-passenger-type{font-size:.95rem;color:#4b5563;display:flex;align-items:center;gap:.5rem}.fc-ticket-number{font-weight:500;color:#111827}.fc-confirmation-actions{display:flex;justify-content:center;gap:2rem;margin-top:3rem;padding-top:2.5rem;border-top:1px solid #e5e7eb}.fc-primary-button,.fc-secondary-button{padding:1rem 2rem;border-radius:10px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s ease;min-width:200px;text-align:center}.fc-primary-button{background:linear-gradient(to right,#3b82f6,#2563eb);color:#fff;border:none}.fc-primary-button:hover{background:linear-gradient(to right,#2563eb,#1d4ed8);box-shadow:0 6px 16px #2563eb4d}.fc-secondary-button{background-color:#fff;color:#3b82f6;border:2px solid #3b82f6}.fc-secondary-button:hover{background-color:#f0f4ff;box-shadow:0 6px 16px #2563eb26}@media (max-width: 768px){.fc-confirmation-header h1{font-size:2rem}.fc-confirmation-message{font-size:1rem}.fc-confirmation-section h2{font-size:1.5rem}.fc-reference-details,.fc-payment-info-grid{grid-template-columns:1fr}.fc-flight-details-grid{flex-direction:column;align-items:flex-start;gap:1.5rem;padding:1.5rem}.fc-airline-section{width:100%;justify-content:center}.fc-flight-times{flex-direction:column;align-items:center;width:100%;min-width:unset}.fc-duration-line{width:3px;height:80px;position:static;transform:none;margin:.8rem 0}.fc-flight-duration span{margin-top:-1.2rem}.fc-passenger-item{flex-direction:column;align-items:flex-start;gap:.8rem}.fc-confirmation-actions{flex-direction:column;gap:1.5rem}.fc-primary-button,.fc-secondary-button{width:100%;min-width:unset}}@media (max-width: 480px){.fc-confirmation-header{padding:2rem}.fc-confirmation-header h1{font-size:1.75rem}.fc-confirmation-message{font-size:.95rem}.fc-confirmation-section{padding:2rem}.fc-confirmation-section h2{font-size:1.4rem}.fc-flight-route{padding:1.2rem 1.5rem}.fc-route-info h3{font-size:1.3rem}.fc-flight-details-grid{padding:1.2rem}.fc-flight-times .fc-time{font-size:1.4rem}.fc-flight-times .fc-airport{font-size:.85rem}}.hotel-search-container{font-family:var(--font-family);color:var(--text-color);max-width:100%;box-sizing:border-box}.hotel-search-header{margin-bottom:24px}.hotel-search-title{font-size:28px;font-weight:600;margin-bottom:8px;color:var(--primary-color)}.hotel-search-subtitle{font-size:16px;color:var(--text-light)}.hotel-search-form-container{background-color:#fff;border-radius:var(--radius);box-shadow:var(--shadow);padding:24px;margin-bottom:32px;width:100%;box-sizing:border-box}.hotel-search-form{display:flex;flex-direction:column;gap:20px;width:100%;box-sizing:border-box}.hotel-search-row{display:flex;gap:20px;width:100%;box-sizing:border-box}.hotel-search-form-group{flex:1;display:flex;flex-direction:column;gap:8px;min-width:0}.hotel-search-form-group label{font-size:14px;font-weight:500;color:var(--text-color)}.hotel-search-input-icon{position:relative;width:100%;box-sizing:border-box}.hotel-search-input-icon svg{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--text-lighter);z-index:1}.hotel-search-input-icon input,.hotel-search-input-icon select{width:100%;padding:12px 12px 12px 40px;border:1px solid var(--border-color);border-radius:var(--radius);font-family:var(--font-family);font-size:14px;transition:border-color .2s;box-sizing:border-box}.hotel-search-input-icon input:focus,.hotel-search-input-icon select:focus{outline:none;border-color:var(--primary-color)}.hotel-search-button{padding:14px;background-color:var(--primary-color);color:#fff;border:none;border-radius:var(--radius);font-family:var(--font-family);font-size:16px;font-weight:500;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:background-color .2s}.hotel-search-button:hover{background-color:var(--primary-color-light)}.hotel-search-sections{display:grid;grid-template-columns:300px 1fr;gap:24px;width:100%;box-sizing:border-box}.hotel-search-section-title{font-size:20px;font-weight:600;margin-bottom:16px;color:var(--primary-color)}.hotel-search-filters{background-color:#fff;border-radius:var(--radius);padding:20px;box-shadow:var(--shadow);align-self:start;box-sizing:border-box;width:100%}.hotel-filter-group{margin-bottom:24px;width:100%;box-sizing:border-box}.hotel-filter-group:last-child{margin-bottom:0}.hotel-filter-title{font-size:16px;font-weight:500;margin-bottom:12px;color:var(--text-color)}.hotel-price-slider{display:flex;align-items:center;gap:10px;width:100%;box-sizing:border-box}.hotel-price-slider input{flex:1}.hotel-price-value{font-size:14px;font-weight:500;white-space:nowrap}.hotel-star-options{display:flex;flex-wrap:wrap;gap:8px}.hotel-star-option{display:flex;align-items:center;gap:4px;padding:6px 12px;border-radius:var(--radius);background-color:#f5f6f7;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.hotel-star-option.active{background-color:var(--primary-color-light);color:var(--primary-color)}.hotel-checkbox-list{display:flex;flex-direction:column;gap:10px}.hotel-checkbox-item{display:flex;align-items:center;gap:8px}.hotel-checkbox-item input{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:18px;height:18px;border:1px solid var(--border-color);border-radius:4px;position:relative;cursor:pointer}.hotel-checkbox-item input:checked{background-color:var(--primary-color);border-color:var(--primary-color)}.hotel-checkbox-item input:checked:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:10px;height:10px;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='white'><path d='M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z'/></svg>");background-size:contain;background-repeat:no-repeat}.hotel-checkbox-item label{font-size:14px;cursor:pointer}.hotel-popular-locations{display:flex;flex-wrap:wrap;gap:16px;margin-top:16px}.hotel-location-card{width:calc(33.333% - 16px);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);transition:transform .2s;cursor:pointer}.hotel-location-card:hover{transform:translateY(-4px)}.hotel-location-image{width:100%;height:160px;object-fit:cover}.hotel-location-details{padding:12px;background-color:#fff}.hotel-location-name{font-size:16px;font-weight:600;margin-bottom:4px}.hotel-location-hotels{font-size:14px;color:var(--text-light)}@media (max-width: 1200px){.hotel-location-card{width:calc(50% - 16px)}}@media (max-width: 992px){.hotel-search-sections{grid-template-columns:1fr}.hotel-search-filters{margin-bottom:20px}}@media (max-width: 768px){.hotel-search-row{flex-direction:column;gap:16px}.hotel-search-form-container{padding:16px}.hotel-search-input-icon input,.hotel-search-input-icon select{font-size:16px;padding:10px 10px 10px 36px}.hotel-location-card{width:100%}}@media (max-width: 480px){.hotel-search-title{font-size:24px}.hotel-search-subtitle{font-size:14px}.hotel-search-button{padding:12px;font-size:14px}.hotel-price-slider{flex-direction:column;align-items:stretch;gap:8px}.hotel-price-value{text-align:center}.hotel-star-options{justify-content:center}}.hotel-result-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:24px;margin-top:20px}.hotel-result-card{background-color:#fff;border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden;display:flex;flex-direction:column;transition:transform .3s ease,box-shadow .3s ease;height:100%}.hotel-result-card:hover{transform:translateY(-5px);box-shadow:0 10px 20px #00000026}.hotel-result-image{height:200px;background-size:cover;background-position:center;position:relative}.hotel-result-content{padding:20px;flex-grow:1;display:flex;flex-direction:column;gap:10px}.hotel-result-rating{display:flex;align-items:center}.star-filled{color:#ffc107;font-size:16px}.star-empty{color:#e0e0e0;font-size:16px}.hotel-rating-count{font-size:14px;color:var(--text-light);margin-left:8px}.hotel-result-name{font-size:20px;font-weight:600;color:var(--text-color);margin:0}.hotel-result-location{font-size:14px;color:var(--text-light);margin:0;display:flex;align-items:center;gap:6px}.hotel-result-location:before{content:"";display:inline-block;width:14px;height:14px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23666666' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 10c0 7-9 13-9 13s-9-6-9-13a9 9 0 0 1 18 0z'%3E%3C/path%3E%3Ccircle cx='12' cy='10' r='3'%3E%3C/circle%3E%3C/svg%3E");background-size:contain;background-repeat:no-repeat}.hotel-result-amenities{display:flex;flex-wrap:wrap;gap:8px;margin-top:5px}.hotel-amenity-tag{background-color:var(--secondary-color);color:var(--text-color);font-size:12px;padding:5px 10px;border-radius:15px;white-space:nowrap}.hotel-result-price{margin-top:auto;display:flex;flex-direction:column;align-items:flex-start}.hotel-price-amount{font-size:20px;font-weight:600;color:var(--primary-color)}.hotel-price-text{font-size:14px;color:var(--text-light)}.hotel-view-btn{width:100%;padding:12px;background-color:var(--primary-color);color:#fff;border:none;font-family:var(--font-family);font-size:16px;font-weight:500;cursor:pointer;transition:background-color .2s;border-top:1px solid var(--border-color)}.hotel-view-btn:hover{background-color:var(--primary-color-light)}.hotel-results-message{padding:16px;background-color:var(--secondary-color);border-radius:var(--radius);color:var(--text-color);font-size:16px;margin-bottom:20px}.guest-selector-container,.hotel-search-form-group .guest-selector{width:100%}.hotel-search-form-group .guest-selector-display{height:100%;min-height:56px}.hotel-search-form-group .landing-hotel-date-picker{width:100%}.hotel-search-form-group .landing-hotel-date-picker .date-display{height:100%;min-height:56px}body{font-family:Poppins,sans-serif;background-color:#f5f6f5;overflow-x:hidden;width:100%}.hotel-results-container{min-height:100vh;width:100%;max-width:100vw;overflow-x:hidden;display:flex;flex-direction:column}.hotel-results-content{width:100%;max-width:1200px;margin:auto;padding:1rem}.results-header{background:#fff;padding:1rem;border-radius:8px;box-shadow:0 2px 8px #0000001a;margin-bottom:1rem}.results-header h1{font-size:1.75rem;font-weight:600;color:#1a3c6d;margin-bottom:.5rem}.search-details{font-size:.9rem;color:#555;margin-bottom:.5rem}.results-count{font-size:.95rem;font-weight:500;color:#1a3c6d}.show-filters-button{background:#1a3c6d;color:#fff;border:none;padding:.5rem 1rem;border-radius:6px;font-size:.9rem;font-weight:500;cursor:pointer;transition:background .3s,transform .2s;margin-top:1rem;display:none}.show-filters-button:hover{background:#152f5a;transform:translateY(-2px)}.loading-container,.error-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;text-align:center;color:#1a3c6d}.loading-spinner{width:32px;height:32px;border:3px solid #e0e0e0;border-top:3px solid #1a3c6d;border-radius:50%;animation:spin 1s linear infinite}.error-container h2{font-size:1.5rem;margin-bottom:.5rem}.error-container p{font-size:.9rem;color:#555;margin-bottom:1rem}.retry-button{background:#1a3c6d;color:#fff;border:none;padding:.5rem 1rem;border-radius:6px;font-size:.9rem;font-weight:500;cursor:pointer;transition:background .3s,transform .2s}.retry-button:hover{background:#152f5a;transform:translateY(-2px)}.results-layout{display:flex;flex-direction:row;gap:1rem}.filters-sidebar{background:#fff;padding:1rem;border-radius:8px;box-shadow:0 2px 8px #0000001a;width:280px;flex-shrink:0}.filters-sidebar h3{font-size:1.25rem;font-weight:600;color:#1a3c6d}.close-filter-modal{background:none;border:none;font-size:1.5rem;color:#1a3c6d;cursor:pointer;display:none}.filter-group{margin-bottom:1.5rem}.filter-group h4{font-size:1rem;font-weight:500;color:#333;margin-bottom:.75rem}.price-range-slider input{width:100%;height:6px;border-radius:3px;background:#d1e0ee;outline:none;-webkit-appearance:none}.price-range-slider input::-webkit-slider-thumb{-webkit-appearance:none;width:16px;height:16px;border-radius:50%;background:#1a3c6d;cursor:pointer}.price-range-slider input::-moz-range-thumb{width:16px;height:16px;border-radius:50%;background:#1a3c6d;cursor:pointer;border:none}.price-range-labels{display:flex;justify-content:space-between;font-size:.85rem;color:#555;margin-top:.5rem}.star-rating-slider{display:flex;flex-direction:column;gap:.5rem}.slider-container label{font-size:.85rem;font-weight:500;color:#1a3c6d}.slider-container input[type=range]{width:100%;height:6px;border-radius:3px;background:#d1e0ee;outline:none;-webkit-appearance:none}.slider-container input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:16px;height:16px;border-radius:50%;background:#1a3c6d;cursor:pointer}.slider-container input[type=range]::-moz-range-thumb{width:16px;height:16px;border-radius:50%;background:#1a3c6d;cursor:pointer;border:none}.rating-display{font-size:.85rem;font-weight:500;color:#1a3c6d}.filter-checkbox{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem;font-size:.85rem}.filter-checkbox input{width:16px;height:16px}.star{color:#d1d1d1;font-size:.9rem}.star.filled{color:#f4b400}.hotel-result-list{display:flex;flex-direction:column;gap:1rem;width:100%;flex:1;min-width:0}.hotel-result-card{display:flex;flex-direction:row;background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;overflow:hidden;width:100%;height:max-content;transition:transform .2s,box-shadow .2s;cursor:pointer}.hotel-result-card:hover{transform:translateY(-4px);box-shadow:0 4px 12px #00000026}.hotel-result-image{width:220px;height:200px;position:relative;overflow:hidden;flex-shrink:0}.hotel-result-image img{width:100%;height:100%;object-fit:cover;transition:transform .3s}.hotel-result-card:hover .hotel-result-image img{transform:scale(1)}.hotel-result-image-count{position:absolute;bottom:.75rem;right:.75rem;background:#000000b3;color:#fff;padding:.25rem .5rem;border-radius:4px;font-size:.8rem;font-weight:500}.hotel-result-features{position:absolute;bottom:.75rem;left:.75rem;display:flex;flex-wrap:wrap;gap:.5rem;width:calc(100% - 1.5rem)}.hotel-result-feature-tag{padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:500;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hotel-result-feature-tag.breakfast{background:#2e7d32}.hotel-result-feature-tag.pay-hotel{background:#0288d1}.hotel-result-feature-tag.non-refundable{background:#d81b60}.hotel-result-content{flex:1;padding:.75rem;display:flex;flex-direction:column;justify-content:flex-start;gap:.75rem;min-width:0}.hotel-result-header{display:flex;justify-content:space-between;align-items:flex-start;gap:.5rem}.header-title-group{display:flex;flex-direction:column;gap:.25rem;flex:1;min-width:0}.hotel-result-name{font-size:1.25rem;font-weight:600;color:#1a3c6d;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.header-star-rating{display:flex;flex-direction:row;align-items:center}.header-star-rating .star{font-size:1rem}.hotel-result-rating{margin-left:.75rem;flex-shrink:0;gap:.25rem}.hotel-result-rating-score{font-size:.8rem;font-weight:600;color:#1a3c6d}.hotel-result-rating-text{font-size:.8rem;color:#555}.hotel-result-location{font-size:.9rem;color:#555;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hotel-result-address,.hotel-result-chain{display:none}.hotel-result-amenities{display:flex;flex-wrap:wrap;gap:.5rem}.hotel-result-amenity-tag{background:#e8f0fe;color:#1a3c6d;padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:150px}.hotel-result-amenity-more{font-size:.75rem;color:#555;padding:.25rem .5rem}.hotel-result-check-times{display:flex;justify-content:space-between;gap:.5rem;background:#f5f6f5;padding:.5rem;border-radius:4px}.hotel-result-check-in-time,.hotel-result-check-out-time{font-size:.8rem;color:#555;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:50%}.hotel-result-room-summary{background:#f5f6f5;padding:.5rem;border-radius:4px}.hotel-result-room-summary h4{font-size:.9rem;font-weight:500;color:#1a3c6d;margin-bottom:.5rem}.hotel-result-room-types{display:flex;flex-direction:column;gap:.5rem}.hotel-result-room-type-item{display:flex;flex-direction:column;gap:.25rem}.hotel-result-room-type-item>div{display:flex;justify-content:space-between;align-items:center}.hotel-result-room-type{font-size:.85rem;font-weight:500;color:#333;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:60%}.hotel-result-room-price{font-size:.85rem;font-weight:600;color:#1a3c6d}.hotel-result-room-type-more{font-size:.8rem;color:#555}.hotel-result-pricing{border-radius:8px;width:200px;padding:.75rem;display:flex;flex-direction:column;gap:.75rem;align-self:auto;align-items:flex-end;background:#f9fafb;flex-shrink:0;justify-content:center}.hotel-result-price-info{text-align:right}.hotel-result-price-range{display:flex;flex-direction:column;gap:.25rem}.hotel-result-price-from{font-size:1.1rem;font-weight:600;color:#1a3c6d}.hotel-result-price-to{font-size:.9rem;color:#555}.hotel-result-current-price{font-size:1.25rem;font-weight:700;color:#1a3c6d;margin-right:5px}.hotel-result-price-period{font-size:.8rem;color:#555}.hotel-result-availability-info{display:flex;flex-direction:column;align-items:flex-end;font-size:.8rem;color:#555}.hotel-result-room-count,.hotel-result-variant-count{font-weight:500}.hotel-result-select-btn{background:#1a3c6d;color:#fff;border:none;padding:.75rem;border-radius:6px;font-size:.9rem;font-weight:500;cursor:pointer;transition:background .3s,transform .2s;width:100%}.hotel-result-select-btn:hover{background:#152f5a;transform:translateY(-2px)}@media (max-width: 1200px){.hotel-results-content{padding:1rem}.filters-sidebar{width:250px}.hotel-result-name{font-size:1.15rem}}@media (max-width: 1100px){.hotel-result-card{flex-direction:column}.hotel-result-image{width:100%;height:200px}.hotel-result-content{width:100%;padding:.75rem}.hotel-result-pricing{width:100%;border-left:none;border-top:1px solid #e0e0e0;flex-direction:row;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:.5rem}.hotel-result-price-info{text-align:left}.hotel-result-availability-info{display:none}.hotel-result-select-btn{width:auto;padding:.6rem 1rem;font-size:.9rem}}@media (max-width: 992px){.show-filters-button{display:block}.results-layout{flex-direction:column}.results-layout .filters-sidebar{display:none;width:100%}.filters-sidebar.open{display:block;position:fixed;top:0;left:0;width:100%;max-width:320px;height:100%;background:#fff;z-index:1000;padding:1.5rem;overflow-y:auto;box-shadow:0 0 20px #0003}.close-filter-modal{display:block}.hotel-result-card{flex-direction:row}.hotel-result-image{width:220px;height:200px}.hotel-result-content{padding:.75rem;justify-content:flex-start}.hotel-result-pricing{width:200px;padding:.75rem;justify-content:center;align-self:auto}.hotel-result-name{font-size:1.1rem}}@media (min-width: 769px) and (max-width: 992px){.hotel-result-pricing{width:200px;border:none;flex-direction:column;align-items:flex-end;flex-wrap:nowrap;gap:.75rem;background:#f9fafb;flex-shrink:0;justify-content:center}.hotel-result-availability-info{display:flex;flex-direction:column;align-items:flex-end;font-size:.8rem;color:#555}.hotel-result-select-btn{width:100%;padding:.75rem;font-size:.9rem}.hotel-result-price-info{text-align:right}}@media (max-width: 768px){.hotel-results-content{padding:.5rem}.results-header h1{font-size:1.5rem}.hotel-result-card{flex-direction:column}.hotel-result-image{width:100%;height:200px}.hotel-result-content{width:100%;padding:.75rem}.hotel-result-pricing{width:100%;border-left:none;border-top:1px solid #e0e0e0;flex-direction:row;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:.5rem}.hotel-result-price-info{text-align:left;flex:1}.hotel-result-availability-info{display:none}.hotel-result-select-btn{width:auto;padding:.6rem 1rem;font-size:.9rem}}@media (max-width: 576px){.hotel-results-content{padding:.25rem}.results-header h1{font-size:1.25rem}.search-details{font-size:.85rem}.hotel-result-image{height:180px}.hotel-result-content,.hotel-result-pricing{padding:.5rem}.hotel-result-name{font-size:1rem}.hotel-result-feature-tag,.hotel-result-amenity-tag{font-size:.7rem;padding:.2rem .4rem}.hotel-result-room-type,.hotel-result-room-price{font-size:.8rem}.hotel-result-select-btn{width:100%;margin-top:.5rem}}*{margin:0;padding:0;box-sizing:border-box;font-family:Poppins,sans-serif}body{font-family:Segoe UI,sans-serif;color:#222;background:#f7f9fa;line-height:1.6}.hotel-container{max-width:1200px;margin:0 auto;padding:24px}.hotel-hero{margin-bottom:24px}.hotel-hero h1{font-size:32px;font-weight:700;margin-bottom:8px}.hotel-meta{display:flex;align-items:center;gap:8px;color:#555;font-size:14px}.hotel-rating .filled{color:gold}.star{color:#ddd;font-size:14px}.hotel-top-layout{display:grid;grid-template-columns:1fr 380px;gap:40px;margin-bottom:40px}@media (max-width: 1024px){.hotel-top-layout{grid-template-columns:1fr}}.image-gallery{min-width:0}.main-image-wrapper{position:relative;width:100%;height:450px;overflow:hidden;border-radius:12px;box-shadow:0 4px 12px #0000001a}.main-image{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.main-image:hover{transform:scale(1.03)}.thumbnail-strip{display:flex;gap:12px;margin-top:12px;padding:8px;overflow-x:auto;scrollbar-width:thin;scrollbar-color:#007bff #f0f0f0}.thumbnail-strip::-webkit-scrollbar{height:6px}.thumbnail-strip::-webkit-scrollbar-track{background:#f0f0f0}.thumbnail-strip::-webkit-scrollbar-thumb{background:#007bff;border-radius:3px}.thumbnail{min-width:120px;width:120px;height:90px;object-fit:cover;border-radius:8px;cursor:pointer;transition:all .2s ease;opacity:.7}.thumbnail:hover,.thumbnail.active{opacity:1;border-color:#007bff;transform:scale(1.02)}.thumbnail.active{box-shadow:0 0 0 2px #fff,0 0 0 4px #007bff}.nav-arrow{position:absolute;top:50%;transform:translateY(-50%);background:#00000080;color:#fff;border:none;border-radius:50%;width:40px;height:40px;font-size:24px;cursor:pointer;z-index:10;display:flex;align-items:center;justify-content:center;transition:background .3s}.nav-arrow:hover{background:#000c}.left-arrow{left:10px}.right-arrow{right:10px}.image-counter{position:absolute;bottom:10px;right:10px;background:#0009;color:#fff;padding:4px 10px;border-radius:20px;font-size:14px;font-weight:500}.hotel-content-layout{display:block}.hotel-left section{margin-bottom:40px;background:#fff;padding:24px;border-radius:12px;box-shadow:0 2px 8px #0000000d}.hotel-left h3{font-size:20px;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid #eee;color:#222}.hotel-host-info h2{font-size:22px;margin-bottom:8px}.amenities-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px}.amenity-item{display:flex;align-items:center;gap:8px;font-size:14px;color:#444}.room-card{border:none;border-radius:12px;margin-bottom:24px;background:transparent;padding:0}.room-header{display:flex;align-items:center;gap:16px;margin-bottom:16px}.room-img{width:120px;height:90px;object-fit:cover;border-radius:8px}.room-title{font-size:18px;color:#222;margin:0}.variants-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px}.variant{padding:16px;background:#fff;border:2px solid #e0e0e0;border-radius:12px;cursor:pointer;transition:all .2s ease-in-out}.variant:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000014;border-color:#007bff}.variant.selected{border-color:#007bff;background:#f0f8ff;box-shadow:0 0 0 2px #007bff}.variant-info .price{font-size:16px;font-weight:600;color:#333;margin-bottom:8px}.variant-info strong{font-size:18px;font-weight:700;color:#000}.features{display:flex;flex-direction:column;gap:6px;margin-top:12px}.tag{font-size:12px;padding:4px 8px;border-radius:4px;background:#f0f0f0;color:#555;display:inline-block}.tag.meal{background:#e3f2fd;color:#1976d2}.tag.pay{background:#fff3e0;color:#f57c00}.tag.cancel{background:#e8f5e8;color:#388e3c}.booking-sidebar{position:sticky;top:24px;height:fit-content}.booking-sidebar .booking-card{background:#fff;border:1px solid #e0e0e0;border-radius:12px;padding:24px;box-shadow:0 4px 16px #00000014}.price-header{margin-bottom:20px;text-align:left}.price-header .price{font-size:16px;font-weight:500;color:#555}.price-header .price strong{font-size:24px;font-weight:700;color:#222}.selected-variant-details{font-size:13px;color:#007bff;margin-top:4px;display:flex;flex-direction:column}.booking-form .form-group{margin-bottom:16px;padding:1rem}.form-group label{display:block;font-size:12px;color:#555;margin-bottom:4px;text-transform:uppercase}.form-group input{width:100%;padding:10px;border:1px solid #ddd;border-radius:6px;background:#f9f9f9;font-size:14px}.book-btn{background:#254379;color:#fff;border:none;padding:14px 20px;border-radius:8px;font-weight:600;cursor:pointer;transition:background .2s;width:100%;font-size:16px;margin:16px 0}.book-btn:hover{background:#0056b3}.note{text-align:center;color:#777;font-size:13px}@media (max-width: 600px){.hotel-container{padding:12px}.hotel-hero h1{font-size:24px}.main-image-wrapper{height:300px}.nav-arrow{width:30px;height:30px;font-size:20px}.image-counter{font-size:12px}}.loading,.error-state{text-align:center;padding:60px 20px}.guest-details-container{min-height:100vh;background-color:#f5f7fa;display:flex;flex-direction:column}.guest-details-content{max-width:1280px;margin:0 auto;padding:2rem 1rem;flex-grow:1}.page-header{text-align:center;margin-bottom:2.5rem}.page-header h1{font-size:2rem;font-weight:600;color:#1a202c;margin:0 0 .5rem}.page-header p{font-size:1rem;color:#6b7280;margin:0}.details-layout{display:grid;grid-template-columns:2fr 1fr;gap:2rem;margin-bottom:2rem}.form-section{background:#fff;border-radius:16px;padding:2rem;box-shadow:0 4px 24px #0000000d}.guest-form{display:flex;flex-direction:column;gap:1.5rem}.guest-form .form-group{background:#fafafa;padding:1.5rem;border-radius:12px;border:1px solid #e5e7eb}.guest-form .form-group h3{font-size:1.25rem;font-weight:600;color:#1a202c;margin:0 0 1rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem}.form-field.full-width{grid-column:span 2}.form-field label{font-size:.875rem;font-weight:500;color:#374151}.form-field input,.form-field select,.form-field textarea{padding:.75rem;border:1px solid #d1d5db;border-radius:8px;font-size:.95rem;background:#fff;transition:all .2s ease}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.form-field input.error{border-color:#ef4444}.form-field textarea{resize:vertical;min-height:120px}.error-message{color:#ef4444;font-size:.75rem;font-weight:500;margin-top:.25rem}.additional-guest{background:#fff;padding:1.25rem;border-radius:8px;border:1px solid #e5e7eb;margin-bottom:1rem}.additional-guest:last-child{margin-bottom:0}.checkbox-field{display:flex;flex-direction:column;align-items:flex-start;gap:.75rem;margin-top:1rem}.checkbox-field input[type=checkbox]{width:16px;height:16px;margin:2px 0 0;cursor:pointer;accent-color:#3b82f6}.checkbox-field label{font-size:.875rem;color:#374151;line-height:1.4}.checkbox-field label a{color:#3b82f6;text-decoration:none;font-weight:500}.checkbox-field label a:hover{text-decoration:underline}.proceed-btn{background:#3b82f6;color:#fff;border:none;padding:.875rem 2rem;border-radius:8px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s ease;align-self:center;margin-top:1rem}.proceed-btn:hover:not(:disabled){background:#2563eb;transform:translateY(-1px)}.proceed-btn:disabled{background:#9ca3af;cursor:not-allowed}.booking-summary{background:#fff;border-radius:16px;padding:2rem;box-shadow:0 4px 24px #0000000d;position:sticky;top:100px}.booking-summary h3{font-size:1.25rem;font-weight:600;color:#1a202c;margin:0 0 1.5rem}.summary-item{display:flex;gap:1rem;margin-bottom:1.5rem}.summary-image{width:96px;height:72px;border-radius:8px;object-fit:cover}.summary-details h4{font-size:1.125rem;font-weight:600;color:#1a202c;margin:0 0 .5rem}.summary-details p{color:#6b7280;font-size:.875rem;margin:.25rem 0}.rating{display:flex;align-items:center;gap:.5rem;margin-top:.5rem}.summary-details-list{margin-bottom:1.5rem}.summary-detail{display:flex;justify-content:space-between;padding:.5rem 0;font-size:.875rem;color:#6b7280}.summary-detail span:last-child{color:#1a202c;font-weight:500}.price-breakdown{background:#f5f7fa;padding:1rem;border-radius:8px}.price-item{display:flex;justify-content:space-between;padding:.5rem 0;font-size:.875rem}.price-item span:first-child{color:#6b7280}.price-item span:last-child{color:#1a202c;font-weight:500}.price-total{display:flex;justify-content:space-between;padding:1rem 0 0;margin-top:1rem;border-top:1px solid #e5e7eb;font-size:1rem;font-weight:600}.price-total span:first-child{color:#1a202c}.price-total span:last-child{color:#3b82f6}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem;color:#1a202c}.loading-spinner{width:32px;height:32px;border:3px solid #e5e7eb;border-top:3px solid #3b82f6;border-radius:50%;animation:spin .8s linear infinite}@media (max-width: 1024px){.details-layout{grid-template-columns:1fr}.booking-summary{position:static}}@media (max-width: 768px){.guest-details-content{padding:1.5rem 1rem}.form-row{grid-template-columns:1fr}.form-field.full-width{grid-column:span 1}.form-section,.booking-summary{padding:1.5rem}.guest-form .form-group{padding:1.25rem}.page-header h1{font-size:1.75rem}.summary-item{flex-direction:column;align-items:flex-start}}@media (max-width: 480px){.guest-details-content{padding:1rem .5rem}.page-header h1{font-size:1.5rem}.form-section,.booking-summary,.form-group{padding:1rem}.proceed-btn{width:100%;padding:.75rem}}.payment-page{min-height:100vh;background-color:#f9fafb;display:flex;flex-direction:column}.payment-main{flex:1;padding:2rem 0}.container{max-width:1200px;margin:0 auto;padding:0 1rem}.breadcrumb{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.back-button{background:none;border:none;color:#2563eb;font-size:.9rem;font-weight:500;cursor:pointer;padding:.5rem 1rem;border-radius:6px;transition:background-color .2s}.back-button:hover{background-color:#eff6ff}.booking-steps{display:flex;gap:.5rem}.step{font-size:.85rem;padding:.5rem 1rem;border-radius:6px;color:#6b7280}.step.completed{color:#2563eb;background-color:#eff6ff}.step.active{background-color:#2563eb;color:#fff}.error-message{background-color:#fee2e2;color:#dc2626;padding:1rem;border-radius:8px;margin-bottom:1.5rem;display:flex;align-items:center;gap:.5rem}.payment-layout{display:grid;grid-template-columns:2fr 1fr;gap:1.5rem}.payment-content{display:flex;flex-direction:column;gap:1.5rem}.booking-overview{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px #0000000d}.booking-overview h2{font-size:1.25rem;font-weight:600;color:#1f2937;margin-bottom:1rem}.hotel-card{display:flex;gap:1.5rem}.hotel-image{width:180px;height:120px;object-fit:cover;border-radius:8px}.hotel-details h3{font-size:1.25rem;font-weight:600;color:#1f2937;margin-bottom:.5rem}.hotel-location{color:#6b7280;font-size:.9rem;margin-bottom:1rem;display:flex;align-items:center;gap:.5rem}.booking-details{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem}.detail-item{font-size:.9rem;color:#6b7280}.detail-item span{font-weight:500;color:#1f2937;margin-right:.5rem}.payment-method{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px #0000000d}.payment-method h2{font-size:1.25rem;font-weight:600;color:#1f2937;margin-bottom:1rem}.payment-option{display:flex;align-items:center;gap:1rem;padding:1rem;border:1px solid #e5e7eb;border-radius:8px;background-color:#f9fafb}.payment-icon{width:40px;height:40px;background:#2563eb;color:#fff;display:flex;align-items:center;justify-content:center;border-radius:8px;font-weight:600}.payment-details h4{font-size:1rem;font-weight:500;color:#1f2937;margin-bottom:.25rem}.payment-details p{font-size:.85rem;color:#6b7280}.payment-sidebar{display:flex;flex-direction:column;gap:1.5rem;position:sticky;top:1rem}.price-summary{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px #0000000d}.price-summary h3{font-size:1.1rem;font-weight:600;color:#1f2937;margin-bottom:1rem}.price-item,.price-total{display:flex;justify-content:space-between;font-size:.9rem;margin-bottom:.5rem;color:#6b7280}.price-total{font-weight:600;color:#1f2937;padding-top:.75rem;border-top:1px solid #e5e7eb}.pay-button{background:#2563eb;width:max-content;align-self:center;color:#fff;border:none;padding:1rem;border-radius:8px;font-size:1rem;font-weight:500;cursor:pointer;transition:background-color .2s}.pay-button:hover{background:#1d4ed8}.pay-button:disabled{background:#9ca3af;cursor:not-allowed}.btn-spinner{width:20px;height:20px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin 1s linear infinite;margin-right:.5rem}.policies{font-size:.85rem;color:#6b7280;text-align:center}.policies a{color:#2563eb;text-decoration:none}.policies a:hover{text-decoration:underline}.loading-wrapper{display:flex;flex-direction:column;align-items:center;justify-content:center;height:50vh;gap:1rem}.loading-spinner{width:32px;height:32px;border:3px solid #e5e7eb;border-top-color:#2563eb;border-radius:50%;animation:spin 1s linear infinite}@media (max-width: 1024px){.payment-layout{grid-template-columns:1fr}.payment-sidebar{position:static}}@media (max-width: 768px){.booking-details{grid-template-columns:1fr}.hotel-card{flex-direction:column}.hotel-image{width:100%;height:160px}}@media (max-width: 480px){.breadcrumb{flex-direction:column;align-items:flex-start;gap:1rem}.booking-steps{flex-wrap:wrap;justify-content:flex-start}}:root{--primary-color: #007bff;--primary-hover: #0056b3;--secondary-color: #6c757d;--text-dark: #212529;--text-light: #6c757d;--background-light: #f8f9fa;--background-white: #ffffff;--border-color: #dee2e6;--danger-color: #dc3545;--success-color: #28a745;--warning-color: #ffc107;--box-shadow: 0 4px 12px rgba(0, 0, 0, .06);--border-radius: 12px}.holiday-search-page{background-color:var(--background-light);font-family:Poppins,sans-serif;color:var(--text-dark);overflow-x:hidden}.page-container{max-width:1400px;margin:0 auto;padding:2rem 1rem}.search-results-layout{display:grid;grid-template-columns:280px 1fr;gap:2rem;align-items:flex-start}.filters-sidebar{position:sticky;top:1.5rem;display:flex;flex-direction:column;gap:1.5rem;width:280px;height:max-content}.filters-sidebar-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.filters-sidebar-header h3{font-size:1.25rem;font-weight:600;color:var(--text-dark)}.close-filter-modal{background:none;border:none;font-size:1.5rem;color:var(--text-dark);cursor:pointer;display:none}.filter-card{background:var(--background-white);border-radius:var(--border-radius);padding:1rem;box-shadow:var(--box-shadow)}.modify-search-card.active,.filter-results-card.active{display:block}.modify-search-form .form-group{padding:.5rem;margin-bottom:1rem}.modify-search-form label{display:block;font-size:.8rem;font-weight:500;margin-bottom:.25rem}.modify-search-form input,.modify-search-form select{width:100%;padding:.5rem;border:1px solid var(--border-color);border-radius:8px;font-size:.8rem}.filter-section h4{font-size:1rem;font-weight:500;margin-bottom:.75rem}.price-display{display:flex;justify-content:space-between;font-size:.9rem;color:var(--text-light);margin-top:.5rem}input[type=range]{width:100%;accent-color:var(--primary-color)}.rating-filter{display:flex;gap:.5rem;flex-wrap:wrap}.rating-option{padding:.5rem .75rem;border:1px solid var(--border-color);border-radius:20px;cursor:pointer;transition:all .2s ease;font-size:.9rem}.rating-option input{display:none}.rating-option:hover{background:#e9ecef;border-color:var(--secondary-color)}.rating-option.active{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.results-main{min-width:0}.results-header{margin-bottom:1.5rem}.results-header h1{font-size:2rem;font-weight:700;margin-bottom:.25rem}.results-header p{color:var(--text-light);font-size:1rem}.show-modify-search-button,.show-filters-button{background:var(--primary-color);width:max-content;color:#fff;border:none;padding:.5rem 1rem;border-radius:6px;font-size:.9rem;font-weight:500;cursor:pointer;transition:background .3s,transform .2s;margin-top:.5rem;margin-right:.5rem;display:none}.show-modify-search-button:hover,.show-filters-button:hover{background:var(--primary-hover);transform:translateY(-2px)}.sort-bar{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background:var(--background-white);border-radius:var(--border-radius);margin-bottom:1.5rem;box-shadow:var(--box-shadow)}.results-count{font-weight:500;color:var(--text-dark)}.sort-control select{border:1px solid var(--border-color);border-radius:8px;padding:.5rem;font-size:.9rem}.sort-control label{margin-right:.5rem;font-size:.9rem}.packages-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.5rem}.package-card{background:var(--background-white);border-radius:var(--border-radius);box-shadow:var(--box-shadow);overflow:hidden;display:flex;flex-direction:column;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease;height:100%}.package-card:hover{transform:translateY(-5px);box-shadow:0 8px 20px #0000001a}.card-image{width:100%;height:230px;position:relative;overflow:hidden;background-color:#f4f4f4}.card-image img{width:100%;height:100%;object-fit:cover;object-position:center;display:block}.discount-badge{position:absolute;top:.75rem;left:.75rem;background:var(--danger-color);color:#fff;padding:.25rem .75rem;border-radius:15px;font-size:.75rem;font-weight:500}.card-content{padding:1rem;display:flex;flex-direction:column;flex-grow:1}.card-content .card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:.5rem;margin-bottom:.5rem}.card-title{font-size:1.15rem;font-weight:600;flex-grow:1;margin:0}.card-rating{flex-shrink:0;font-size:.9rem;color:var(--text-light)}.card-rating span{font-weight:600;color:var(--warning-color)}.card-meta{display:flex;flex-wrap:wrap;gap:.25rem 1rem;margin-bottom:.75rem;color:var(--text-light);font-size:.85rem}.card-highlights{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:.75rem;flex-grow:1}.highlight-tag{background-color:#e9ecef;padding:.25rem .5rem;align-self:self-start;border-radius:6px;font-size:.75rem;color:var(--secondary-color)}.card-content .card-footer{display:flex;justify-content:space-between;align-items:center;padding-top:.75rem;border-top:1px solid var(--border-color)}.price-info .current-price{font-size:1.25rem;font-weight:700;color:var(--primary-color)}.price-info .original-price{font-size:.85rem;color:var(--text-light);text-decoration:line-through;margin-left:.5rem}.holiday-pax-info{font-size:.8rem;font-style:italic}.btn-primary{background:var(--primary-color);color:#fff;padding:.75rem;width:100%;border-radius:8px;border:none;font-weight:500;font-family:Poppins,sans-serif;cursor:pointer;transition:background .2s ease}.btn-primary:hover{background:var(--primary-hover)}.btn-secondary{background:transparent;color:var(--primary-color);padding:.5rem 1rem;border:1px solid var(--primary-color);border-radius:8px;cursor:pointer;transition:all .2s ease}.btn-secondary:hover{background:var(--primary-color);color:#fff}.loading-state,.no-results-state{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:4rem 1rem;background:var(--background-white);border-radius:var(--border-radius)}.loading-state .spinner{width:50px;height:50px;border:5px solid var(--border-color);border-top-color:var(--primary-color);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}.error-message{background-color:var(--danger-color);color:#fff;padding:1rem;border-radius:var(--border-radius);margin-bottom:1.5rem}@media (max-width: 992px){.search-results-layout{grid-template-columns:1fr}.filters-sidebar{display:none}.filters-sidebar.modify-search,.filters-sidebar.filter-results{display:block;position:fixed;top:0;left:0;width:100%;max-width:320px;height:100%;background:var(--background-white);z-index:1000;padding:1rem;overflow-y:auto;box-shadow:0 0 20px #0003}.filters-sidebar.modify-search .filter-results-card,.filters-sidebar.filter-results .modify-search-card{display:none}.filters-sidebar.modify-search .modify-search-card,.filters-sidebar.filter-results .filter-results-card,.close-filter-modal{display:block}.show-modify-search-button,.show-filters-button{display:inline-block}.results-header{display:flex;flex-direction:column;gap:.5rem}}@media (max-width: 768px){.results-header h1{font-size:1.5rem}.results-header p{font-size:.9rem}.sort-bar{flex-direction:row;gap:.75rem;align-items:center}.packages-grid{grid-template-columns:1fr}}@media (max-width: 576px){.page-container{padding:1rem .75rem}.filter-card,.sort-bar{padding:.75rem}.card-content .card-header{flex-direction:column;align-items:flex-start}.card-content .card-footer{flex-direction:column;align-items:stretch;gap:.75rem}}:root{--primary-color: #1a73e8;--primary-hover-color: #1557b0;--secondary-color: #5f6368;--text-dark: #202124;--text-light: #5f6368;--background-light: #f8f9fa;--background-white: #ffffff;--border-color: #dadce0;--success-color: #2e7d32;--danger-color: #d32f2f;--box-shadow: 0 4px 12px rgba(0, 0, 0, .08);--border-radius: 12px;--transition: all .3s ease}*,*:before,*:after{box-sizing:border-box}.package-detail-page{background-color:var(--background-light);font-family:Poppins,sans-serif;color:var(--text-dark);line-height:1.6;overflow-x:hidden}.package-container{max-width:1400px;margin:0 auto;padding:2rem}.package-main-grid{display:grid;grid-template-columns:3fr 1.3fr;gap:2.5rem;align-items:start}.package-details-left{display:flex;flex-direction:column;gap:2.5rem;min-width:0}.package-booking-right{position:sticky;top:2rem;display:flex;flex-direction:column;gap:2rem}.mobile-booking-section{display:none}.mobile-only-section{display:none!important}.package-section{background:var(--background-white);padding:2rem;border-radius:var(--border-radius);box-shadow:var(--box-shadow)}.package-detail-page .section-title{font-size:1.6rem;font-weight:600;margin-bottom:1.5rem;padding-bottom:.75rem;border-bottom:2px solid var(--primary-color);color:var(--text-dark)}.sub-section-title{font-size:1.3rem;font-weight:600;margin-bottom:1rem;color:var(--text-dark)}.section-content{line-height:1.7;color:var(--text-light);font-size:1rem;word-break:break-word}.package-header{padding:0}.package-title{font-size:2.2rem;font-weight:700;margin-bottom:.75rem;line-height:1.2}.package-meta{display:flex;gap:1.5rem;font-size:1rem;color:var(--text-light);font-weight:500}.gallery-layout-container{background:var(--background-white);padding:1rem;border-radius:var(--border-radius);box-shadow:var(--box-shadow);display:flex;flex-direction:column;gap:1rem}.main-image-display{position:relative}.main-gallery-image{width:100%;height:500px;object-fit:cover;border-radius:var(--border-radius);transition:all .3s ease-in-out}.gallery-nav-arrow{position:absolute;top:50%;transform:translateY(-50%);background:#00000080;color:#fff;border:none;border-radius:50%;width:40px;height:40px;display:flex;justify-content:center;align-items:center;font-size:1.5rem;cursor:pointer;transition:background-color .3s ease,transform .3s ease;z-index:10}.gallery-nav-arrow:hover{background:#000000b3;transform:translateY(-50%) scale(1.1)}.gallery-nav-arrow.left{left:1.5rem}.gallery-nav-arrow.right{right:1.5rem}.thumbnail-navigation{display:flex;gap:.75rem;overflow-x:auto;padding:.5rem;scrollbar-width:thin;scrollbar-color:var(--primary-color) var(--background-light)}.thumbnail-navigation::-webkit-scrollbar{height:8px}.thumbnail-navigation::-webkit-scrollbar-track{background:#f1f1f1}.thumbnail-navigation::-webkit-scrollbar-thumb{background-color:var(--border-color);border-radius:4px}.thumbnail-navigation::-webkit-scrollbar-thumb:hover{background-color:var(--secondary-color)}.thumbnail-container{flex:0 0 100px;height:70px;cursor:pointer;border-radius:8px;border:3px solid transparent;overflow:hidden;position:relative;transition:transform .3s ease,border-color .3s ease}.thumbnail-img{width:100%;height:100%;object-fit:cover;display:block}.thumbnail-container:hover{transform:scale(1.1)}.thumbnail-container.active{border-color:var(--primary-color);border-radius:8px}.thumbnail-container:not(.active) .thumbnail-img{filter:brightness(.8);transition:filter .3s ease}.thumbnail-container:not(.active):hover .thumbnail-img{filter:brightness(1)}.date-section{margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--border-color)}.date-section h3{font-size:1.3rem;margin-bottom:1rem}.date-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:1rem}.month-dates h4{font-size:1rem;font-weight:600;color:var(--primary-color);margin-bottom:.5rem}.month-dates ul{list-style-type:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.5rem}.month-dates li{font-size:.9rem;background:#f8f9fa;padding:.4rem .6rem;border-radius:6px;border:1px solid var(--border-color);text-align:center}.itinerary{display:flex;flex-direction:column;gap:1.5rem;position:relative;padding-left:2rem;border-left:3px solid var(--primary-color)}.itinerary-day{position:relative;background:#fdfdff;border-radius:10px;padding:1.5rem 1.5rem 1.5rem 2rem;transition:var(--transition);border:1px solid var(--border-color)}.itinerary-day:hover{transform:translate(5px);box-shadow:0 4px 12px #0000000f}.itinerary-day-number{position:absolute;left:-25px;top:50%;transform:translateY(-50%);background:var(--primary-color);color:#fff;width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1rem;z-index:2;border:4px solid var(--background-white)}.itinerary-day-title{font-size:1.25rem;font-weight:600;margin-bottom:.5rem}.itinerary-day-description{color:var(--text-light);font-size:.95rem;word-break:break-word}.itinerary-items-list{list-style-type:none;padding-left:0;margin-top:1rem}.itinerary-item-description{font-size:.95rem;color:var(--text-light);line-height:1.6;position:relative;padding-left:1.5rem;margin-bottom:.5rem}.itinerary-item-description:before{content:"•";color:var(--primary-color);font-size:1.2rem;font-weight:700;position:absolute;left:0;top:0}.inclusions-exclusions{display:grid;grid-template-columns:1fr 1fr;gap:2.5rem}.list-styled{list-style-type:none;padding-left:0;display:flex;flex-direction:column;gap:1rem}.list-styled li{padding-left:2rem;position:relative;font-size:.95rem}.list-styled li:before{position:absolute;left:0;top:1px;font-size:1.2rem;font-weight:700}.list-styled.included li:before{content:"✔";color:var(--success-color)}.list-styled.excluded li:before{content:"✖";color:var(--danger-color)}.hotels-grid{display:flex;flex-direction:column;gap:2rem}.hotel-card{display:flex;flex-direction:column;gap:1rem;border:1px solid var(--border-color);border-radius:var(--border-radius);padding:1rem;background:var(--background-white);transition:var(--transition)}.hotel-card:hover{transform:translateY(-4px);box-shadow:var(--box-shadow)}.hotel-image{width:100%;height:200px;object-fit:cover;border-radius:8px}.hotel-info h3{font-size:1.2rem;margin:0 0 .25rem}.hotel-address{color:var(--text-light);font-size:.85rem;margin-bottom:.5rem}.hotel-star-rating{height:16px;margin-bottom:.75rem}.hotel-description{font-size:.9rem;color:var(--text-light)}.amenities-section h4{font-size:1rem;font-weight:600;margin-top:1rem;margin-bottom:.75rem}.amenities-list{list-style-type:disc;padding-left:1.25rem;columns:2;gap:.5rem 1.5rem;font-size:.85rem}.show-more-btn{background:transparent;border:none;color:var(--primary-color);cursor:pointer;font-weight:600;margin-top:.5rem;padding:.25rem 0;font-size:.9rem}.show-more-btn:hover{text-decoration:underline}.terms-conditions{font-size:.9rem;color:var(--text-light)}.term-item h3{font-weight:600;color:var(--text-dark);margin-bottom:.5rem;font-size:1.1rem}.term-item ul{padding-left:1.5rem}.booking-card{background:var(--background-white);padding:1.5rem;border-radius:var(--border-radius);box-shadow:var(--box-shadow);text-align:center}.booking-card .price-section{margin-bottom:1.5rem}.price-label{font-size:1rem;color:var(--text-light)}.price-section .price-value{font-size:2.5rem;font-weight:700;color:var(--primary-color);margin:.25rem 0}.price-per-person{font-size:.9rem;color:var(--text-light)}.contact-info{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--border-color)}.contact-info h4{font-weight:600;font-size:1.1rem;margin-bottom:.5rem}.contact-info p{font-size:.9rem;color:var(--text-light);margin-bottom:1rem}.contact-link{display:block;margin-bottom:.5rem;color:var(--primary-color);text-decoration:none;font-weight:500;transition:var(--transition);word-break:break-all}.contact-link:hover{color:var(--primary-hover-color)}.btn{padding:.8rem 1.5rem;border-radius:8px;border:none;font-size:1rem;font-weight:600;cursor:pointer;transition:var(--transition)}.btn-primary{background:linear-gradient(90deg,var(--primary-color),var(--primary-hover-color));color:var(--background-white)}.btn-primary:hover{background:var(--primary-hover-color);transform:translateY(-2px);box-shadow:0 4px 12px #1a73e866}.btn-secondary{background-color:var(--background-white);color:var(--primary-color);border:1px solid var(--primary-color)}.btn-secondary:hover{background-color:var(--primary-color);color:var(--background-white)}.btn-block{width:max-content;margin:auto}.loading-container,.error-container{display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:60vh;text-align:center}.fare-calculation-section{display:flex;flex-direction:column;gap:1rem;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--border-color)}.traveller-counter{display:flex;flex-direction:column;gap:1rem}.counter-item{display:flex;justify-content:space-between;align-items:center}.counter-item label{font-size:.95rem;color:var(--text-dark);font-weight:500}.counter-control{display:flex;align-items:center;gap:.5rem;background-color:var(--background-light);border:1px solid var(--border-color);border-radius:8px;padding:.25rem}.counter-control button{background-color:var(--background-white);border:1px solid var(--border-color);color:var(--primary-color);width:30px;height:30px;border-radius:6px;font-size:1.2rem;font-weight:600;cursor:pointer;transition:var(--transition)}.counter-control button:hover:not(:disabled){background-color:var(--primary-color);color:var(--background-white);border-color:var(--primary-color)}.counter-control button:disabled{color:var(--border-color);cursor:not-allowed;background-color:#fafafa}.counter-control span{font-size:1.1rem;font-weight:600;color:var(--text-dark);display:inline-block;min-width:25px;text-align:center}.final-fare-section{display:flex;flex-direction:column;gap:1rem;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border-color);text-align:center}.final-fare-section h3{font-size:1.2rem;color:var(--text-light);margin-bottom:-.5rem}.final-fare-section .price-value{font-size:2.5rem;font-weight:700;color:var(--success-color)}.error-message{color:var(--danger-color);font-size:.9rem;text-align:center;margin-top:.5rem}.loading-spinner{width:50px;height:50px;border:5px solid #f3f3f3;border-top:5px solid var(--primary-color);border-radius:50%;animation:spin 1s linear infinite}.error-container p{font-size:1.1rem;margin-bottom:1.5rem}@media (max-width: 1200px){.package-main-grid{grid-template-columns:1fr}.package-booking-right{display:none}.mobile-booking-section{display:block}.mobile-only-section{display:block!important;position:static}.package-booking-right .package-section{background:transparent;box-shadow:none;padding:0}}@media (max-width: 768px){.package-container{padding:1.5rem}.package-title{font-size:1.8rem}.main-gallery-image{height:350px}.package-section{padding:1.5rem}.inclusions-exclusions{grid-template-columns:1fr;gap:2rem}.itinerary{padding-left:1.5rem}.itinerary-day-number{left:-22px}}@media (max-width: 576px){.package-container{padding:1rem}.package-title{font-size:1.6rem}.package-meta{flex-direction:column;gap:.5rem;align-items:flex-start}.main-gallery-image{height:250px}.thumbnail-container{flex:0 0 80px;height:60px}.section-title{font-size:1.4rem}.amenities-list{columns:1}.date-grid{grid-template-columns:repeat(auto-fit,minmax(90px,1fr))}.gallery-nav-arrow.left{left:.8rem}.gallery-nav-arrow.right{right:.8rem}}:root{--background-light: #f4f7f9;--background-white: #ffffff;--primary-color: #1a73e8;--text-dark: #333333;--text-light: #666666;--border-color: #e0e0e0;--box-shadow: 0 4px 12px rgba(0, 0, 0, .05);--border-radius: 12px}.customer-details-page{font-family:Poppins,sans-serif;background-color:var(--background-light);min-height:100vh;display:flex;flex-direction:column}.customer-details-page .page-container{max-width:900px;margin:2rem auto;padding:0 1.5rem;flex-grow:1}.main-content-grid{display:grid;grid-template-columns:2fr 1fr;gap:2rem;align-items:flex-start}.customer-details-section,.fare-summary-card{background:var(--background-white);padding:2rem;border-radius:var(--border-radius);box-shadow:var(--box-shadow);border:1px solid var(--border-color)}.customer-details-page .section-title{font-size:1.5rem;font-weight:600;margin-bottom:1.5rem;color:var(--text-dark)}.customer-details-form{display:flex;flex-direction:column;gap:1.2rem}.form-group-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.2rem}.form-group{display:flex;flex-direction:column}.form-group.title-select{flex-grow:0}.form-group-grid .form-group label{font-size:.85rem;color:var(--text-light);margin-bottom:.5rem;font-weight:500}.form-group input,.form-group select{padding:.75rem 1rem;border:1px solid var(--border-color);border-radius:8px;font-size:.95rem;transition:all .3s ease;width:100%}.form-group input:focus,.form-group select:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #1a73e833}.btn-primary{background-color:var(--primary-color);color:#fff;padding:.9rem 1.2rem;border-radius:8px;border:none;font-size:.95rem;font-weight:600;cursor:pointer;transition:background-color .3s ease}.btn-primary:hover{background-color:#165ab7}.btn-primary:disabled{background-color:#ccc;cursor:not-allowed}.fare-summary-card{padding:2rem;background-color:#f8f9fa;border:1px solid var(--border-color);border-radius:var(--border-radius)}.holiday-summary-details{display:flex;flex-direction:column;gap:.8rem}.holiday-summary-item{display:flex;justify-content:space-between;font-size:.95rem;color:var(--text-light)}.summary-value{font-weight:700}.summary-total{display:flex;justify-content:space-between;font-size:1.1rem;font-weight:700;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border-color);color:var(--text-dark)}.summary-total .price-value{color:var(--primary-color);font-size:1.3rem}.error-message{color:#dc3545;font-size:.9rem;margin-top:.5rem}@media (max-width: 992px){.main-content-grid{grid-template-columns:1fr;gap:1.5rem}}@media (max-width: 768px){.customer-details-page .page-container{padding:0 1rem;margin:1rem}.customer-details-section,.fare-summary-card{padding:1.5rem}.form-group-grid{grid-template-columns:1fr;gap:1rem}}.confirmation-page{background-color:var(--background-light);font-family:Poppins,sans-serif;color:var(--text-dark);min-height:100vh;display:flex;flex-direction:column}.confirmation-page main{flex-grow:1;padding:2rem;display:flex;justify-content:center;align-items:center}.confirmation-container{max-width:800px;width:100%}.confirmation-card{background:var(--background-white);padding:3rem;border-radius:var(--border-radius);box-shadow:var(--box-shadow);text-align:center;border:2px solid var(--success-color)}.success-icon-container{color:var(--success-color);margin-bottom:1.5rem}.confirmation-title{font-size:2.2rem;font-weight:700;color:var(--success-color);margin-bottom:.5rem}.confirmation-message{font-size:1.1rem;color:var(--text-light);margin-bottom:2rem}.booking-details-summary,.customer-info-summary{text-align:left;margin-top:2rem}.booking-details-summary h2,.customer-info-summary h2{font-size:1.5rem;font-weight:600;color:var(--text-dark);margin-bottom:1rem;border-bottom:2px solid var(--border-color);padding-bottom:.5rem}.details-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem}.booking-details-summary .detail-item{display:flex;flex-direction:column;background-color:#f8f9fa;padding:1rem;border-radius:8px}.booking-details-summary .detail-item .label{font-size:.9rem;font-weight:500;color:var(--text-light);text-transform:uppercase}.booking-details-summary .detail-item .value{font-size:1rem;font-weight:600;color:var(--text-dark)}.actions{margin-top:2rem;display:flex;justify-content:center;gap:1rem;flex-wrap:wrap}.actions .btn{padding:.8rem 2rem}.car-search-container{font-family:var(--font-family);color:var(--text-color);max-width:100%;box-sizing:border-box}.car-search-header{margin-bottom:24px}.car-search-title{font-size:28px;font-weight:600;margin-bottom:8px;color:var(--primary-color)}.car-search-subtitle{font-size:16px;color:var(--text-light)}.car-search-form-container{background-color:#fff;border-radius:var(--radius);box-shadow:var(--shadow);padding:24px;margin-bottom:32px;width:100%;box-sizing:border-box}.car-search-form{display:flex;flex-direction:column;gap:20px;width:100%;box-sizing:border-box}.car-search-row{display:flex;gap:20px;width:100%;box-sizing:border-box}.car-search-form-group{flex:1;display:flex;flex-direction:column;gap:8px;min-width:0}.car-search-form-group label{font-size:14px;font-weight:500;color:var(--text-color)}.car-search-input-icon{position:relative;width:100%;box-sizing:border-box}.car-search-input-icon svg{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--text-lighter);z-index:1}.car-search-input-icon input,.car-search-input-icon select{width:100%;padding:12px 12px 12px 40px;border:1px solid var(--border-color);border-radius:var(--radius);font-family:var(--font-family);font-size:14px;transition:border-color .2s;box-sizing:border-box}.car-search-input-icon input:focus,.car-search-input-icon select:focus{outline:none;border-color:var(--primary-color)}.car-search-checkbox{display:flex;align-items:center;gap:8px;margin-top:8px}.car-search-checkbox input{margin:0;width:16px;height:16px}.car-search-checkbox label{font-size:13px;cursor:pointer;color:var(--text-light)}.car-search-button{padding:14px;background-color:var(--primary-color);color:#fff;border:none;border-radius:var(--radius);font-family:var(--font-family);font-size:16px;font-weight:500;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:background-color .2s}.car-search-button:hover{background-color:var(--primary-color-light)}.car-search-section{margin-bottom:40px}.car-search-section-title{font-size:24px;font-weight:600;margin-bottom:20px;color:var(--primary-color)}.car-cards-container{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:24px}.car-card{border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);background-color:#fff;transition:transform .3s}.car-card:hover{transform:translateY(-5px)}.car-card-image{height:180px;background-size:cover;background-position:center;position:relative}.car-card-price{position:absolute;top:15px;right:15px;background-color:var(--primary-color);color:#fff;padding:8px 12px;border-radius:var(--radius);display:flex;flex-direction:column;align-items:center}.car-price-amount{font-size:18px;font-weight:600}.car-price-text{font-size:12px;opacity:.9}.car-card-content{padding:20px}.car-card-title{font-size:20px;font-weight:600;margin:0 0 16px;color:var(--text-color)}.car-card-features{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:20px}.car-feature{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--text-color)}.car-feature svg{color:var(--primary-color);flex-shrink:0}.car-card-button{width:100%;padding:12px;background-color:var(--primary-color);color:#fff;border:none;border-radius:var(--radius);font-family:var(--font-family);font-size:14px;font-weight:500;cursor:pointer;transition:background-color .2s}.car-card-button:hover{background-color:var(--primary-color-light)}.car-partner-logos{display:flex;flex-wrap:wrap;gap:24px;justify-content:space-around;align-items:center;margin-top:16px;padding:20px;background-color:#fff;border-radius:var(--radius);box-shadow:var(--shadow)}.car-partner-logo{flex:0 0 auto;height:50px;display:flex;align-items:center;justify-content:center;padding:0 16px}.car-partner-logo img{max-height:40px;max-width:100px;object-fit:contain;opacity:.8;transition:opacity .2s}.car-partner-logo img:hover{opacity:1}@media (max-width: 1200px){.car-cards-container{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}}@media (max-width: 992px){.car-cards-container{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}}@media (max-width: 768px){.car-search-row{flex-direction:column;gap:16px}.car-search-form-container{padding:16px}.car-search-input-icon input,.car-search-input-icon select{font-size:16px;padding:10px 10px 10px 36px}.car-cards-container{grid-template-columns:1fr}.car-partner-logos{gap:16px;padding:16px}.car-partner-logo{height:40px;padding:0 12px}.car-partner-logo img{max-height:30px;max-width:80px}}@media (max-width: 480px){.car-search-title{font-size:24px}.car-search-subtitle{font-size:14px}.car-search-button{padding:12px;font-size:14px}.car-card-features{grid-template-columns:1fr;gap:8px}.car-partner-logos{flex-direction:column;gap:24px}.car-partner-logo{width:100%;height:auto;padding:0}.car-partner-logo img{max-width:120px}}.activities-search-page{font-family:Poppins,sans-serif}.activities-hero{background:linear-gradient(#00000080,#00000080),url(/assets/images/Thailand.jpg);background-size:cover;background-position:center;color:#fff;text-align:center;padding:6rem 2rem;position:relative;border-radius:0 0 20px 20px}.activities-hero-content{max-width:800px;margin:0 auto}.activities-hero h1{font-size:2.5rem;margin-bottom:1rem;text-shadow:0 2px 4px rgba(0,0,0,.3)}.activities-hero p{font-size:1.2rem;margin-bottom:2rem;text-shadow:0 1px 2px rgba(0,0,0,.3)}.activities-search-container{max-width:900px;margin:-3rem auto 2rem;padding:0 1rem;position:relative;z-index:10}.activity-search-form{background-color:#fff;border-radius:10px;box-shadow:0 5px 20px #0000001a;overflow:hidden;border:1px solid #e0e0e0}.search-form-header{background-color:#f5f5f5;color:#fff;padding:1rem 1.5rem}.activities-hero-content h1{color:#fff}.search-form-header h2{margin:0;font-size:1.2rem}.error-message{background-color:#ffebee;color:#c62828;padding:.75rem;margin:1rem;border-radius:5px;border-left:4px solid #c62828;font-size:.9rem}.search-form-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;padding:1.5rem}.search-field{display:flex;flex-direction:column}.search-field label{font-size:.85rem;font-weight:600;margin-bottom:.5rem;color:#555}.search-field input,.search-field select{padding:.75rem;border:1px solid #ddd;border-radius:5px;font-size:1rem;font-family:Poppins,sans-serif}.search-field input:focus,.search-field select:focus{border-color:#213a69;outline:none;box-shadow:0 0 0 2px #213a6933}.search-button{background-color:#213a69;color:#fff;border:none;border-radius:5px;padding:.75rem;font-size:1rem;font-weight:600;cursor:pointer;transition:background-color .2s;margin-top:1.5rem;grid-column:1 / -1}.search-button:hover{background-color:#1a2e55}.search-button:disabled{background-color:#9e9e9e;cursor:not-allowed}.popular-destinations-section{padding:3rem 1rem;max-width:1200px;margin:0 auto}.section-header{text-align:center;margin-bottom:2rem}.section-header h2{font-size:2rem;color:#333;margin-bottom:.5rem}.section-header p{color:#666;font-size:1rem}.popular-destinations-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem}.destination-card{border-radius:10px;overflow:hidden;box-shadow:0 3px 10px #0000001a;transition:transform .3s,box-shadow .3s;cursor:pointer;background-color:#fff}.destination-card:hover{transform:translateY(-5px);box-shadow:0 5px 15px #00000026}.destination-image-container{position:relative;height:200px;overflow:hidden}.destination-image{width:100%;height:100%;object-fit:cover;transition:transform .3s}.destination-card:hover .destination-image{transform:scale(1.05)}.destination-info{padding:1.25rem}.destination-info h3{margin:0 0 .5rem;font-size:1.2rem;color:#333}.activity-count{color:#213a69;font-weight:600;margin:.25rem 0 .5rem;font-size:.9rem}.destination-description{color:#666;font-size:.9rem;margin:0;line-height:1.4}.trending-activities-section{padding:3rem 1rem;background-color:#f9f9f9}.trending-activities-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1.5rem;max-width:1200px;margin:0 auto}.activity-card{border-radius:10px;overflow:hidden;box-shadow:0 3px 10px #0000001a;transition:transform .3s,box-shadow .3s;cursor:pointer;background-color:#fff;height:100%;display:flex;flex-direction:column}.activity-card:hover{transform:translateY(-5px);box-shadow:0 5px 15px #00000026}.activity-image-container{position:relative;height:180px;overflow:hidden}.activity-image{width:100%;height:100%;object-fit:cover;transition:transform .3s}.activity-card:hover{transform:scale(1.05)}.activity-price{position:absolute;bottom:0;left:0;background-color:#213a69;color:#fff;padding:.25rem .75rem;font-weight:600;border-radius:0 5px 0 0}.activity-info{padding:1.25rem;flex-grow:1;display:flex;flex-direction:column}.activity-location{color:#666;font-size:.85rem;margin-bottom:.25rem}.activity-info h3{margin:0 0 .75rem;font-size:1.1rem;color:#333;line-height:1.3;flex-grow:1}.stars{color:#ffc107;margin-right:.5rem;letter-spacing:1px;font-size:.9rem}.reviews-count{color:#666;font-size:.8rem}.activity-categories-section{padding:3rem 1rem;max-width:1200px;margin:0 auto}.categories-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:1.5rem}.category-card{background-color:#fff;border-radius:10px;padding:1.5rem;text-align:center;box-shadow:0 3px 10px #0000001a;transition:transform .3s,box-shadow .3s;cursor:pointer}.category-card:hover{transform:translateY(-5px);box-shadow:0 5px 15px #00000026;background-color:#213a69;color:#fff}.category-icon{font-size:2.5rem;margin-bottom:1rem}.category-card h3{margin:0 0 .5rem;font-size:1.1rem}.category-card p{margin:0;color:#666;font-size:.85rem}.category-card:hover p{color:#e0e0e0}.activities-benefits-section{padding:3rem 1rem;background-color:#f9f9f9}.benefits-container{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:2rem;max-width:1200px;margin:0 auto}.benefit-item{text-align:center;padding:1.5rem}.benefit-icon{font-size:2.5rem;margin-bottom:1rem;color:#213a69}.benefit-item h3{margin:0 0 .75rem;color:#333}.benefit-item p{color:#666;font-size:.9rem;margin:0;line-height:1.5}@media (max-width: 768px){.activities-hero{padding:4rem 1rem}.activities-hero h1{font-size:2rem}.activities-hero p{font-size:1rem}.search-form-fields,.popular-destinations-grid,.trending-activities-grid,.categories-grid,.benefits-container{grid-template-columns:1fr}.section-header h2{font-size:1.8rem}}@media (min-width: 769px) and (max-width: 1024px){.popular-destinations-grid,.trending-activities-grid{grid-template-columns:repeat(2,1fr)}.categories-grid{grid-template-columns:repeat(3,1fr)}}.activityResults-page{font-family:Poppins,sans-serif}.activityResults-header{background:#213a69;color:#fff;padding:2rem 1rem}.activityResults-header .container{max-width:1200px;margin:0 auto}.activityResults-header h1{margin:0 0 .5rem;font-size:1.8rem;font-weight:600}.activityResults-search-summary{font-size:.9rem;opacity:.9}.activityResults-search-date,.activityResults-search-participants{margin-right:.5rem}.activityResults-container{display:grid;grid-template-columns:280px 1fr;gap:2rem;max-width:1200px;margin:2rem auto;padding:0 1rem}.activityResults-filters-sidebar{background-color:#fff;border-radius:10px;box-shadow:0 2px 10px #00000014;padding:1.5rem;align-self:flex-start;position:sticky;top:2rem}.activityResults-filter-section{margin-bottom:2rem;border-bottom:1px solid #eee;padding-bottom:1.5rem}.activityResults-filter-section:last-child{margin-bottom:0;border-bottom:none;padding-bottom:0}.activityResults-filter-section h3{font-size:1.1rem;margin:0 0 1rem;color:#333}.activityResults-price-range-slider{width:100%}.activityResults-price-range-slider input{width:100%;margin:.5rem 0}.activityResults-price-labels{display:flex;justify-content:space-between;font-size:.85rem;color:#666}.activityResults-category-filters{display:flex;flex-direction:column;gap:.75rem}.activityResults-category-checkbox{display:flex;align-items:center;cursor:pointer;font-size:.9rem}.activityResults-category-checkbox input{margin-right:.5rem}.activityResults-rating-filters{display:flex;flex-direction:column;gap:.75rem}.activityResults-rating-radio{display:flex;align-items:center;cursor:pointer;font-size:.9rem}.activityResults-rating-radio input{margin-right:.5rem}.activityResults-content{width:100%}.activityResults-loading-container{text-align:center;padding:3rem 1rem}.activityResults-loading-spinner{display:inline-block;width:40px;height:40px;border:3px solid rgba(33,58,105,.3);border-radius:50%;border-top-color:#213a69;animation:activityResults-spin 1s ease-in-out infinite;margin-bottom:1rem}@keyframes activityResults-spin{to{transform:rotate(360deg)}}.activityResults-error-container{text-align:center;padding:3rem 1rem}.activityResults-error-message{color:#c62828;margin-bottom:1rem}.activityResults-retry-button{background-color:#213a69;color:#fff;border:none;padding:.75rem 2rem;border-radius:5px;font-weight:600;cursor:pointer}.activityResults-no-results{text-align:center;padding:3rem 1rem;color:#666}.activityResults-no-results h2{margin-bottom:.5rem;color:#333}.activityResults-list{display:flex;flex-direction:column;gap:1.5rem;width:100%}.activityResults-card{display:grid;grid-template-columns:280px 1fr 200px;gap:1.5rem;background-color:#fff;border-radius:10px;box-shadow:0 2px 10px #00000014;overflow:hidden;transition:transform .3s,box-shadow .3s;cursor:pointer;max-width:100%}.activityResults-card:hover{transform:translateY(-3px);box-shadow:0 5px 15px #0000001f}.activityResults-image-container{position:relative;height:100%;min-height:220px}.activityResults-image{width:100%;height:100%;object-fit:cover}.activityResults-discount-tag{position:absolute;top:10px;left:0;background-color:#e53935;color:#fff;padding:.25rem .75rem;font-size:.8rem;font-weight:600;border-radius:0 3px 3px 0;z-index:1}.activityResults-details{padding:1.5rem 0;display:flex;flex-direction:column;gap:.75rem}.activityResults-location{display:flex;align-items:center;color:#666;font-size:.9rem;margin-bottom:.25rem}.activityResults-location-icon{margin-right:.5rem}.activityResults-name{font-size:1.3rem;margin:0;color:#333;line-height:1.3}.activityResults-rating{display:flex;align-items:center;margin-bottom:.5rem}.activityResults-stars{color:#ffc107;margin-right:.5rem;letter-spacing:1px}.activityResults-reviews-count{color:#666;font-size:.85rem}.activityResults-duration{display:flex;align-items:center;gap:.5rem;color:#666;font-size:.9rem}.activityResults-duration-icon{font-size:1rem}.activityResults-description{font-size:.9rem;color:#666;line-height:1.5;margin:.5rem 0;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical}.activityResults-category-tag{display:inline-block;background-color:#e3f2fd;color:#1976d2;padding:.25rem .75rem;border-radius:20px;font-size:.8rem;font-weight:500;margin-top:.5rem;align-self:flex-start}.activityResults-pricing{border-left:1px dashed #ddd;padding:1.5rem;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center}.activityResults-original-price{text-decoration:line-through;color:#999;font-size:.9rem}.activityResults-current-price{color:#213a69;font-size:1.5rem;font-weight:700;margin:.5rem 0 1rem}.activityResults-book-now-btn{background-color:#213a69;color:#fff;border:none;border-radius:5px;padding:.75rem 1.5rem;font-size:.9rem;font-weight:600;cursor:pointer;transition:background-color .2s;width:100%}.activityResults-book-now-btn:hover{background-color:#162b4d}@media (max-width: 1100px){.activityResults-card{grid-template-columns:250px 1fr 180px}}@media (max-width: 960px){.activityResults-container{grid-template-columns:1fr}.activityResults-filters-sidebar{position:static;margin-bottom:2rem}.activityResults-card{grid-template-columns:220px 1fr 180px}}@media (max-width: 768px){.activityResults-card{grid-template-columns:1fr}.activityResults-image-container{height:200px;min-height:auto}.activityResults-pricing{border-left:none;border-top:1px dashed #ddd;padding:1rem 1.5rem 1.5rem}.activityResults-details{padding:1.5rem}}.activity-detail-page{font-family:Poppins,sans-serif}.loading-container,.error-container{text-align:center;padding:4rem 1rem;min-height:50vh;display:flex;flex-direction:column;align-items:center;justify-content:center}.loading-spinner{display:inline-block;width:40px;height:40px;border:3px solid rgba(33,58,105,.3);border-radius:50%;border-top-color:#213a69;animation:spin 1s ease-in-out infinite}@keyframes spin{to{transform:rotate(360deg)}}.error-message{color:#c62828;margin-bottom:1.5rem}.back-button{background-color:#213a69;color:#fff;border:none;padding:.75rem 2rem;border-radius:5px;font-weight:600;cursor:pointer}.activity-detail-container{max-width:1200px;margin:0 auto;padding:2rem 1rem}.breadcrumb{margin-bottom:1.5rem;font-size:.9rem;color:#666}.breadcrumb span{cursor:pointer;margin:0 .25rem}.breadcrumb span:hover{color:#213a69;text-decoration:underline}.breadcrumb .current-page{color:#333;font-weight:500;cursor:default}.breadcrumb .current-page:hover{text-decoration:none}.activity-header{margin-bottom:2rem}.activity-header h1{font-size:2rem;color:#333;margin:0 0 1rem}.activity-meta{display:flex;align-items:center;flex-wrap:wrap;gap:1.5rem}.activity-rating{display:flex;align-items:center}.stars{color:#ffc107;margin-right:.5rem;letter-spacing:1px}.rating-value{font-weight:600;margin-right:.25rem}.reviews-count{color:#666;font-size:.85rem}.activity-location{display:flex;align-items:center;color:#666;font-size:.95rem}.location-icon{margin-right:.5rem}.activity-main-content{display:grid;grid-template-columns:1fr 350px;gap:2rem;margin-bottom:3rem}.activity-gallery{width:100%}.main-image-container{position:relative;width:100%;height:400px;border-radius:10px;overflow:hidden;margin-bottom:1rem}.main-image{width:100%;height:100%;object-fit:cover}.discount-badge{position:absolute;top:10px;left:0;background-color:#e53935;color:#fff;padding:.25rem .75rem;font-size:.9rem;font-weight:600;border-radius:0 3px 3px 0}.thumbnail-images{display:flex;gap:.5rem;overflow-x:auto;padding:.5rem 0}.thumbnail-container{width:80px;height:60px;border-radius:5px;overflow:hidden;cursor:pointer;opacity:.7;transition:opacity .2s}.thumbnail-container:hover,.thumbnail-container.active{opacity:1}.thumbnail-container.active{border:2px solid #213a69}.thumbnail-image{width:100%;height:100%;object-fit:cover}.booking-sidebar{border-radius:10px;padding:1.5rem;position:sticky;top:2rem}.booking-sidebar .price-section{margin-bottom:1.5rem;padding-bottom:1.5rem;border-bottom:1px solid #eee}.original-price{text-decoration:line-through;color:#999;font-size:.9rem}.current-price{color:#213a69;font-size:2rem;font-weight:700;margin:.25rem 0}.per-person{color:#666;font-size:.85rem;margin-bottom:.5rem}.discount-info{color:#e53935;font-size:.9rem;font-weight:500}.booking-form{display:flex;flex-direction:column;gap:1.25rem}.form-field{display:flex;flex-direction:column;gap:.5rem}.form-field label{font-size:.9rem;font-weight:600;color:#555}.form-field input,.form-field select{padding:.75rem;border:1px solid #ddd;border-radius:5px;font-size:.95rem;font-family:Poppins,sans-serif}.form-field input:focus,.form-field select:focus{border-color:#213a69;outline:none;box-shadow:0 0 0 2px #213a691a}.options-section{margin-bottom:1rem}.options-section h3{font-size:1rem;color:#333;margin:0 0 .75rem}.option-card{display:flex;justify-content:space-between;border:1px solid #ddd;border-radius:5px;padding:1rem;margin-bottom:.75rem;cursor:pointer;transition:all .2s}.option-card:hover{border-color:#213a69;box-shadow:0 2px 8px #213a691a}.option-card.selected{border-color:#213a69;background-color:#213a690d}.option-details{flex:1}.option-name{font-weight:600;font-size:.95rem;margin-bottom:.25rem}.option-description{font-size:.85rem;color:#666}.option-price{text-align:right;min-width:80px}.option-current-price{font-weight:700;color:#213a69}.option-original-price{text-decoration:line-through;color:#999;font-size:.85rem}.total-section{display:flex;justify-content:space-between;padding:1rem 0;border-top:1px solid #eee;border-bottom:1px solid #eee;margin-bottom:1rem}.total-label{font-size:1.1rem;font-weight:600}.total-price{font-size:1.1rem;font-weight:700;color:#213a69}.activity-book-now-btn{background-color:#213a69;color:#fff;border:none;border-radius:5px;padding:.9rem 0;font-size:1rem;font-weight:600;cursor:pointer;transition:background-color .2s;width:100%;text-align:center}.activity-book-now-btn:hover{background-color:#162b4d}.booking-guarantee{display:flex;align-items:center;margin-top:1rem;padding:1rem;background-color:#f5f9ff;border-radius:5px}.guarantee-icon{background-color:#4caf50;color:#fff;width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin-right:1rem}.guarantee-title{font-weight:600;font-size:.9rem;margin-bottom:.25rem}.guarantee-desc{font-size:.8rem;color:#666}.activity-details-tabs{margin-top:2rem}.tabs-navigation{display:flex;border-bottom:1px solid #ddd;margin-bottom:1.5rem}.tab-button{padding:.75rem 1.5rem;background:none;border:none;border-bottom:3px solid transparent;font-size:1rem;font-weight:600;color:#666;cursor:pointer;transition:all .2s}.tab-button:hover{color:#213a69}.tab-button.active{color:#213a69;border-bottom-color:#213a69}.tab-panel{display:none}.tab-panel.active{display:block}.details-section h2{font-size:1.5rem;color:#333;margin:0 0 1rem}.activity-description{font-size:1rem;line-height:1.6;color:#555;margin-bottom:2rem}.activity-highlights{margin-bottom:2rem}.activity-highlights h3{font-size:1.2rem;color:#333;margin:0 0 1rem}.highlights-list{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:.75rem}.highlight-item{display:flex;align-items:flex-start}.highlight-icon{color:#4caf50;margin-right:.75rem;font-weight:700}.activity-info-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1.5rem;margin-bottom:2rem}.info-card{background-color:#f9f9f9;border-radius:5px;padding:1rem;text-align:center}.info-icon{font-size:1.5rem;margin-bottom:.5rem}.info-label{font-weight:600;font-size:.9rem;margin-bottom:.25rem}.info-value{font-size:.85rem;color:#555}.inclusions-exclusions{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:2rem;margin-bottom:2rem}.inclusions h3,.exclusions h3{font-size:1.1rem;margin:0 0 1rem;color:#333}.inclusions-list,.exclusions-list{list-style:none;padding:0}.inclusion-item,.exclusion-item{display:flex;align-items:flex-start;margin-bottom:.75rem}.inclusion-icon{color:#4caf50;margin-right:.75rem;font-weight:700}.exclusion-icon{color:#f44336;margin-right:.75rem;font-weight:700}.additional-info{margin-bottom:2rem}.additional-info h3{font-size:1.1rem;margin:0 0 1rem;color:#333}.info-list{list-style:none;padding:0}.info-item{display:flex;align-items:flex-start;margin-bottom:.75rem}.info-bullet{margin-right:.75rem;color:#666}@media (max-width: 960px){.activity-main-content{grid-template-columns:1fr}.booking-sidebar{position:static;margin-top:2rem}.main-image-container{height:300px}}@media (max-width: 768px){.activity-header h1{font-size:1.5rem}.activity-meta{flex-direction:column;align-items:flex-start;gap:.75rem}.highlights-list,.activity-info-grid,.inclusions-exclusions{grid-template-columns:1fr}}:root{--primary-color: #1a4b8e;--primary-color-light: #2a6cb3;--secondary-color: #f0f2f5;--text-color: #333;--text-light: #666;--text-lighter: #999;--white: #fff;--black: #000;--border-color: #e1e4e8;--shadow: 0 2px 10px rgba(0, 0, 0, .1);--radius: 8px;--font-family: "Poppins", sans-serif;--error-color: #d32f2f;--success-color: #4caf50}.bucket-list-container{max-width:1200px;margin:auto;padding:1rem;font-family:var(--font-family)}.bucket-list-header{position:relative;margin-bottom:2rem;padding-bottom:1rem;border-bottom:1px solid var(--border-color);display:flex;flex-direction:column;align-items:flex-start}.page-title{font-size:2.2rem;font-weight:600;margin:1rem 0;color:var(--primary-color);width:100%;text-align:center}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px}.error-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px;text-align:center}.error-message{color:#d32f2f;margin-bottom:1.5rem;font-size:1.1rem;background-color:#d32f2f1a;padding:1rem 1.5rem;border-radius:var(--radius);border-left:4px solid #d32f2f}.retry-button{background-color:var(--primary-color);color:#fff;border:none;padding:.75rem 2rem;border-radius:var(--radius);font-size:1rem;font-weight:500;cursor:pointer;transition:all .3s ease;box-shadow:0 2px 5px #0000001a}.retry-button:hover{background-color:var(--primary-color-light);transform:translateY(-2px);box-shadow:0 4px 8px #00000026}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px;text-align:center;background-color:var(--secondary-color);border-radius:var(--radius);padding:2.5rem;box-shadow:var(--shadow)}.empty-state h2{margin-bottom:1rem;color:var(--primary-color);font-weight:600}.empty-state p{margin-bottom:1.5rem;color:var(--text-light);font-size:1.1rem}.start-planning-button{background-color:var(--primary-color);color:#fff;border:none;padding:.8rem 2rem;border-radius:var(--radius);font-size:1rem;font-weight:500;cursor:pointer;transition:all .3s ease;box-shadow:0 2px 5px #0000001a}.start-planning-button:hover{background-color:var(--primary-color-light);transform:translateY(-2px);box-shadow:0 4px 8px #00000026}.bucket-list-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:2rem}.bucket-list-card{display:flex;flex-direction:column;background-color:#fff;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);transition:transform .3s ease,box-shadow .3s ease;height:100%}.bucket-list-card:hover{transform:translateY(-5px);box-shadow:0 8px 16px #0000001a}.card-image-container{height:200px;overflow:hidden;position:relative}.card-image-container .card-image{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.bucket-list-card:hover .card-image{transform:scale(1.05)}.card-content{padding:1.5rem;flex-grow:1;display:flex;flex-direction:column}.card-title{font-size:1.4rem;font-weight:600;margin-bottom:1rem;color:var(--primary-color);line-height:1.2}.card-details{margin-bottom:1rem;font-size:.9rem;color:var(--text-light)}.detail-label{font-weight:600;color:var(--text-color)}.card-location,.card-duration,.card-date{margin-bottom:.5rem}.card-description{flex-grow:1;margin-bottom:1.5rem;font-size:.95rem;line-height:1.6;color:var(--text-light)}.card-actions{margin-top:auto;display:flex;gap:10px}.view-details-button{flex:1;background-color:var(--primary-color);color:#fff;border:none;padding:.75rem 1rem;border-radius:var(--radius);font-size:.95rem;font-weight:500;cursor:pointer;transition:all .3s ease;box-shadow:0 2px 4px #0000001a}.view-details-button:hover{background-color:var(--primary-color-light);transform:translateY(-2px);box-shadow:0 4px 8px #00000026}.delete-button{background-color:#fff;color:#d32f2f;border:1px solid #d32f2f;padding:.75rem 1rem;border-radius:var(--radius);font-size:.95rem;font-weight:500;cursor:pointer;transition:all .3s ease}.delete-button:hover{background-color:#ffebeb;color:#b71c1c}.delete-button:disabled{background-color:#f5f5f5;color:#999;border-color:#ddd;cursor:not-allowed}@media (max-width: 768px){.bucket-list-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem}.page-title{font-size:1.8rem;margin:1rem 0}}@media (max-width: 480px){.bucket-list-grid{grid-template-columns:1fr}.page-title{font-size:1.5rem}.card-image-container{height:180px}}.unauthenticated-container{background-color:#f9f9f9;border-radius:12px;padding:2.5rem;text-align:center;max-width:600px;margin:2rem auto;box-shadow:0 2px 10px #0000000d}.unauthenticated-container h2{color:var(--primary-color);margin-bottom:1rem;font-size:1.8rem}.unauthenticated-container p{color:#666;margin-bottom:2rem;font-size:1.1rem;line-height:1.5}.auth-buttons{display:flex;justify-content:center;gap:1rem;margin-top:1.5rem}.login-button,.signup-button{padding:.75rem 1.5rem;border-radius:8px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s ease;min-width:120px}.login-button{background-color:var(--primary-color);color:#fff;border:none}.login-button:hover{background-color:#174284;transform:translateY(-2px);box-shadow:0 4px 8px #0000001a}.signup-button{background-color:#fff;color:var(--primary-color);border:1px solid var(--primary-color)}.signup-button:hover{background-color:#f0f5ff;transform:translateY(-2px);box-shadow:0 4px 8px #0000000d}@media (max-width: 600px){.unauthenticated-container{padding:2rem 1.5rem;margin:1.5rem auto}.auth-buttons{flex-direction:column;gap:.75rem}.login-button,.signup-button{width:100%}}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease-out}.modal-content{background-color:#fff;border-radius:var(--radius);width:90%;max-width:450px;box-shadow:0 4px 20px #00000026;animation:scaleIn .3s ease-out}@keyframes scaleIn{0%{transform:scale(.9);opacity:0}to{transform:scale(1);opacity:1}}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:15px 20px;border-bottom:1px solid var(--border-color)}.modal-header h3{margin:0;font-size:18px;color:var(--text-color)}.modal-close-btn{background:none;border:none;font-size:24px;cursor:pointer;color:var(--text-light);transition:color .2s}.modal-close-btn:hover{color:var(--text-color)}.modal-body p{margin:0;font-size:16px;line-height:1.5;color:var(--text-color)}.modal-footer{padding:15px 20px;border-top:1px solid var(--border-color);display:flex;justify-content:flex-end;gap:10px}.modal-cancel-button,.modal-delete-button{padding:8px 16px;border:none;border-radius:4px;cursor:pointer;font-weight:500;transition:all .2s}.modal-cancel-button{background-color:var(--secondary-color);color:var(--text-color)}.modal-cancel-button:hover{background-color:#e1e4e8}.modal-delete-button{background-color:var(--error-color);color:#fff}.modal-delete-button:hover{background-color:#b71c1c}.notification-overlay{position:fixed;top:20px;right:20px;z-index:1100;min-width:300px;max-width:400px;animation:slideIn .3s ease-out;transition:opacity .3s ease,transform .3s ease}.notification-overlay.hide{opacity:0;transform:translate(10px);pointer-events:none}.notification-content{padding:15px 20px;border-radius:var(--radius);box-shadow:0 4px 12px #00000026;display:flex;justify-content:space-between;align-items:center}.notification-success .notification-content{background-color:#e8f5e9;border-left:4px solid var(--success-color);color:#2e7d32}.notification-error .notification-content{background-color:#ffebee;border-left:4px solid var(--error-color);color:#b71c1c}.notification-message{flex-grow:1;font-size:14px;font-weight:500}:root{--primary-color: #1a4b8e;--primary-color-light: #2a6cb3;--secondary-color: #f0f2f5;--text-color: #333;--text-light: #666;--text-lighter: #999;--white: #fff;--black: #000;--border-color: #e1e4e8;--shadow: 0 2px 10px rgba(0, 0, 0, .1);--radius: 8px;--font-family: "Poppins", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica Neue", sans-serif}.bucket-list-detail-container{max-width:1200px;padding:2rem 1rem;margin:auto;font-family:var(--font-family)}.loading-container,.error-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;text-align:center}.loading-spinner{width:50px;height:50px;border:5px solid rgba(0,0,0,.1);border-radius:50%;border-top-color:var(--primary-color);animation:spin 1s linear infinite}.error-message{color:#d32f2f;margin-bottom:1.5rem;font-size:1.1rem;background-color:#d32f2f1a;padding:1rem 1.5rem;border-radius:var(--radius);border-left:4px solid #d32f2f;max-width:600px}.error-actions{display:flex;gap:1rem}.retry-button,.back-button{background-color:var(--primary-color);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:var(--radius);font-size:1rem;font-weight:500;cursor:pointer;transition:all .3s ease;box-shadow:0 2px 5px #0000001a}.retry-button:hover,.back-button:hover{background-color:var(--primary-color-light);transform:translateY(-2px);box-shadow:0 4px 8px #00000026}.detail-header{margin-bottom:2rem;position:relative;padding-bottom:1rem;border-bottom:1px solid var(--border-color);padding-top:40px}.detail-title{font-size:2rem;font-weight:600;color:var(--primary-color);margin:1rem 0 .5rem;text-align:center}.detail-saved-date{text-align:center;color:var(--text-light);font-style:italic;margin-bottom:1rem}.back-button{position:absolute;top:0;left:0;display:flex;align-items:center;gap:8px;padding:.7rem 1.2rem;background-color:var(--primary-color);color:#fff;border:none;border-radius:var(--radius);cursor:pointer;transition:all .3s ease;font-size:.95rem;font-weight:500;box-shadow:0 2px 5px #0000001a;z-index:5}.back-button:hover{background-color:var(--primary-color-light);transform:translateY(-2px);box-shadow:0 4px 8px #00000026}@media (min-width: 768px) and (max-width: 1024px){.detail-header{padding-top:50px;text-align:center}.back-button{top:0;left:0;width:auto;margin-bottom:1rem}.detail-title{margin-top:1.5rem;clear:both}}.detail-overview{display:flex;flex-direction:column;gap:2rem;margin-bottom:3rem;background-color:#fff;border-radius:var(--radius);padding:2rem;box-shadow:var(--shadow)}.detail-image-container{width:100%;max-height:400px;overflow:hidden;border-radius:var(--radius);box-shadow:0 2px 6px #0000001a}.detail-image{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.detail-image:hover{transform:scale(1.02)}.detail-info{flex:1}.detail-description h2{font-size:1.5rem;margin-bottom:1rem;color:var(--primary-color);font-weight:600}.detail-description p{line-height:1.6;color:var(--text-color);margin-bottom:1.5rem;font-size:1.05rem}.detail-meta{display:flex;flex-direction:column;gap:.75rem;background-color:#e0efff;padding:1.2rem;border-radius:var(--radius)}.meta-item{display:flex;flex-direction:column;gap:.25rem}.meta-label{font-weight:600;color:var(--primary-color)}.meta-value{color:var(--text-color)}.detail-days-container{margin-top:3rem}.days-grid-container{width:100%}.days-grid-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding-bottom:1rem;border-bottom:2px solid var(--border-color)}.days-grid-title{font-size:1.8rem;font-weight:600;color:var(--primary-color);margin:0}.days-grid-actions{display:flex;gap:1rem}.edit-mode-actions{display:flex;gap:.75rem}.days-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:2rem;margin-bottom:2rem}.day-card{background-color:#fff;border-radius:12px;box-shadow:0 4px 12px #0000001a;overflow:hidden;transition:all .3s ease;border:1px solid var(--border-color);display:flex;flex-direction:column;height:fit-content}.day-card:hover{transform:translateY(-4px);box-shadow:0 8px 20px #00000026}.day-card.edit-mode{border-color:var(--primary-color);box-shadow:0 4px 12px #1a4b8e33}.day-card-header{padding:1.5rem 1.5rem 1rem;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:flex-start;background:linear-gradient(135deg,#f8fbff,#f0f7ff)}.day-card-title-section{flex:1}.day-card-title{font-size:1.3rem;font-weight:600;color:var(--primary-color);margin:0 0 .5rem;line-height:1.2}.day-card-location{color:var(--text-light);font-size:1rem;margin:0;font-style:italic}.day-card-location-container{display:flex;align-items:center;gap:.5rem}.edit-location-btn,.add-location-btn{background-color:transparent;border:none;cursor:pointer;color:var(--text-light);padding:.25rem;display:flex;align-items:center;gap:.25rem;border-radius:4px;transition:all .2s ease;font-size:.8rem}.edit-location-btn:hover{background-color:#f0f7ff;color:var(--primary-color)}.add-location-btn{color:var(--primary-color);font-weight:500;margin-top:.25rem}.add-location-btn:hover{background-color:#f0f7ff;color:var(--primary-color-light)}.day-card-edit-actions{display:flex;gap:.5rem;margin-left:1rem}.day-card-edit-actions button{padding:.5rem;border:none;border-radius:6px;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.add-day-activity-btn{background-color:#e8f5e9;color:#4cae4c}.add-day-activity-btn:hover{background-color:#c8e6c9;transform:scale(1.05)}.remove-day-btn{background-color:#ffebee;color:#d9534f}.remove-day-btn:hover{background-color:#ffcdd2;transform:scale(1.05)}.day-card-image-container{height:200px;overflow:hidden;position:relative}.day-card-image{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.day-card:hover .day-card-image{transform:scale(1.05)}.day-card-content{padding:1.5rem;flex:1;display:flex;flex-direction:column;gap:1.5rem}.day-card-section-title{font-size:1.1rem;font-weight:600;color:var(--primary-color);margin:0 0 1rem;padding-bottom:.5rem;border-bottom:1px solid var(--border-color)}.day-card-activities-list,.day-card-places-list{display:flex;flex-direction:column;gap:.75rem}.day-card-activity-item{display:flex;align-items:flex-start;gap:.75rem;padding:.75rem;background-color:#f8fbff;border-radius:8px;border-left:3px solid var(--primary-color);transition:all .2s ease}.day-card-activity-item:hover{background-color:#f0f7ff;transform:translate(2px)}.activity-time-badge{background-color:var(--primary-color);color:#fff;padding:.25rem .5rem;border-radius:4px;font-size:.8rem;font-weight:500;white-space:nowrap;min-width:fit-content}.activity-content{flex:1;min-width:0}.activity-content .activity-name{font-weight:600;font-size:.95rem;color:var(--text-color);margin-bottom:.25rem;line-height:1.3}.activity-content .activity-description{font-size:.85rem;color:var(--text-light);line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.activity-thumbnail{width:50px;height:50px;border-radius:6px;overflow:hidden;flex-shrink:0}.activity-thumbnail img{width:100%;height:100%;object-fit:cover}.day-card-place-item{padding:1rem;background-color:#f9fff9;border-radius:8px;border-left:3px solid #4cae4c;transition:all .2s ease}.day-card-place-item:hover{background-color:#f0fff0;transform:translate(2px)}.day-card-place-item .place-header{margin-bottom:.5rem}.day-card-place-item .place-name{font-weight:600;font-size:1rem;color:#2e7d32;margin-bottom:.25rem}.day-card-place-item .place-location{font-size:.85rem;color:var(--text-light);font-style:italic}.day-card-place-item .place-description{font-size:.9rem;color:var(--text-color);line-height:1.4;margin-bottom:.75rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.place-thumbnail{width:100%;height:120px;border-radius:6px;overflow:hidden;margin-bottom:.75rem}.place-thumbnail img{width:100%;height:100%;object-fit:cover}.sub-activities-compact{margin-top:.75rem;padding-top:.75rem;border-top:1px dashed #c8e6c9}.sub-activities-compact .sub-activities-title{font-size:.85rem;font-weight:600;color:#2e7d32;margin-bottom:.5rem}.sub-activity-compact{display:flex;align-items:center;gap:.5rem;margin-bottom:.25rem;font-size:.8rem}.sub-activity-compact .sub-activity-time{background-color:#e8f5e9;color:#2e7d32;padding:.15rem .4rem;border-radius:3px;font-weight:500;white-space:nowrap}.sub-activity-compact .sub-activity-name{color:var(--text-color);flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.day-card-empty{text-align:center;padding:2rem 1rem;color:var(--text-light);background-color:var(--secondary-color);border-radius:8px;border:2px dashed var(--border-color)}.day-card-empty p{margin:0 0 1rem;font-style:italic}.add-first-activity-btn{background-color:var(--primary-color);color:#fff;border:none;padding:.5rem 1rem;border-radius:6px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s ease}.add-first-activity-btn:hover{background-color:var(--primary-color-light);transform:translateY(-1px)}.day-card.edit-mode .activity-item{margin-bottom:.75rem;border-radius:8px;padding:1rem;background-color:#fff;border:1px solid var(--border-color);position:relative}.day-card.edit-mode .activity-item.recently-edited{border-color:#5cb85c;background-color:#f9fff9}.day-card.edit-mode .activity-item.added-place{background-color:#f9fff9;border-left:3px solid #4cae4c}.day-card.edit-mode .activity-item.custom-place{background-color:#f0f7ff;border-left:3px solid #5bc0de}@media (max-width: 1200px){.days-grid{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:1.5rem}}@media (max-width: 768px){.days-grid{grid-template-columns:1fr;gap:1.5rem}.days-grid-header{flex-direction:column;align-items:flex-start;gap:1rem}.days-grid-title{font-size:1.5rem}.day-card-header{flex-direction:column;align-items:flex-start;gap:1rem}.day-card-edit-actions{margin-left:0;width:100%;justify-content:flex-end}.day-card-activity-item{flex-direction:column;align-items:flex-start;gap:.5rem}.activity-time-badge{align-self:flex-start}.activity-thumbnail{width:100%;height:100px}}@media (max-width: 480px){.days-grid{gap:1rem}.day-card-content,.day-card-header{padding:1rem}.days-grid-title{font-size:1.3rem}.edit-mode-actions{flex-direction:column;gap:.5rem;width:100%}.edit-mode-actions button{width:100%}}@media (min-width: 768px){.detail-overview{flex-direction:row}.detail-image-container{width:40%;max-height:none;height:auto}.detail-info{width:55%;padding-left:2rem}}@media (max-width: 767px){.detail-title{font-size:1.8rem;margin-top:3.5rem}.detail-header{position:relative;padding-top:2rem}.back-button{left:50%;transform:translate(-50%);top:-15px}.bucket-list-detail-container{padding:1rem}}@media (max-width: 480px){.detail-title{font-size:1.5rem}.detail-meta{padding:1rem}.meta-item{font-size:.9rem}}.edit-button,.save-button,.cancel-button{display:flex;align-items:center;justify-content:center;gap:6px;padding:8px 16px;border-radius:4px;font-size:14px;font-weight:500;cursor:pointer;transition:all .3s ease;border:none;color:#fff}.edit-button{background-color:#254379}.edit-button:hover{background-color:#3a7bc8}.save-button{background-color:#5cb85c;padding-left:0}.save-button:hover{background-color:#4cae4c}.save-button:disabled{background-color:#a3d7a3;cursor:not-allowed}.cancel-button{background-color:#f0ad4e;padding-left:0}.cancel-button:hover{background-color:#eea236}.cancel-button:disabled{background-color:#f7d5a1;cursor:not-allowed}.notification-overlay{position:fixed;top:20px;right:20px;z-index:1100;min-width:300px;max-width:400px}.notification-content{padding:15px 20px;border-radius:4px;box-shadow:0 4px 12px #00000026;display:flex;justify-content:space-between;align-items:center;animation:slideIn .3s ease-out}@keyframes slideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.notification-success .notification-content{background-color:#dff0d8;border-left:4px solid #5cb85c;color:#3c763d}.notification-error .notification-content{background-color:#f2dede;border-left:4px solid #d9534f;color:#a94442}.notification-info .notification-content{background-color:#d9edf7;border-left:4px solid #5bc0de;color:#31708f}.notification-message{flex-grow:1;font-size:14px}.notification-close{background:none;border:none;font-size:18px;cursor:pointer;opacity:.6;margin-left:10px}.notification-close:hover{opacity:1}.activity-item{position:relative;border:1px solid #e0e0e0;border-radius:8px;padding:15px;margin-bottom:15px;display:flex;background-color:#fff;transition:all .3s ease}.activity-item:hover{box-shadow:0 4px 8px #0000001a}.activity-item.recently-edited{border:2px solid #5cb85c;background-color:#f9fff9}.activity-image{width:80px;height:80px;border-radius:8px;overflow:hidden;margin-right:15px;flex-shrink:0}.activity-image img{width:100%;height:100%;object-fit:cover}.activity-time{background-color:#f0f7ff;padding:5px 10px;border-radius:4px;margin-right:15px;font-weight:500;font-size:14px;color:#3a7bc8;align-self:flex-start;flex-shrink:0}.activity-details{flex-grow:1}.activity-name,.place-name{font-weight:600;font-size:16px;margin-bottom:5px;color:#333}.activity-description,.place-description{font-size:14px;color:#666;margin-bottom:8px}.activity-location{font-size:14px;color:#888;font-style:italic}.activity-actions{display:flex;flex-direction:column;gap:8px;margin-left:10px}.edit-activity-btn,.add-activity-btn,.remove-activity-btn,.edit-sub-activity-btn,.remove-sub-activity-btn{background-color:transparent;border:none;cursor:pointer;color:#666;padding:5px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s ease}.edit-activity-btn:hover,.edit-sub-activity-btn:hover{background-color:#f0f7ff;color:#3a7bc8}.add-activity-btn:hover{background-color:#e8f5e9;color:#4cae4c}.remove-activity-btn:hover,.remove-sub-activity-btn:hover{background-color:#ffebee;color:#d9534f}.sub-activities{background-color:#f9f9f9;border-radius:6px;padding:10px;margin-top:10px}.sub-activities-header{font-weight:500;font-size:14px;color:#555;margin-bottom:8px}.sub-activity-item{display:flex;align-items:flex-start;padding:8px;border-bottom:1px solid #eee;position:relative}.sub-activity-item:last-child{border-bottom:none}.sub-activity-time{background-color:#f0f7ff;padding:3px 8px;border-radius:4px;margin-right:10px;font-size:12px;color:#3a7bc8;white-space:nowrap}.sub-activity-details{flex-grow:1}.sub-activity-name{font-weight:500;font-size:14px;color:#333}.sub-activity-description{font-size:13px;color:#666;margin-top:3px}.edit-confirmation{color:#4cae4c;font-size:13px;margin-top:5px;font-weight:500}.custom-place-badge{position:absolute;top:10px;right:10px;background-color:#5bc0de;color:#fff;padding:3px 8px;border-radius:4px;font-size:12px;font-weight:500}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background-color:#fff;border-radius:8px;width:90%;max-width:500px;max-height:90vh;overflow-y:auto;box-shadow:0 4px 20px #00000026}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:15px 20px;border-bottom:1px solid #eee}.modal-header h3{margin:0;font-size:18px;color:#333}.modal-close-btn{background:none;border:none;font-size:24px;cursor:pointer;color:#aaa}.modal-close-btn:hover{color:#333}.modal-body{padding:20px}.form-group{margin-bottom:15px}.form-group label{display:block;margin-bottom:5px;font-weight:500;color:#555}.form-control{width:100%;padding:10px;border:1px solid #ddd;border-radius:4px;font-size:14px}.form-control:focus{border-color:#4a90e2;outline:none}.form-note{margin-top:10px;color:#888}.modal-footer{padding:15px 20px;border-top:1px solid #eee;display:flex;justify-content:flex-end;gap:10px}.modal-close-button{padding:8px 16px;background-color:#f0f0f0;border:none;border-radius:4px;cursor:pointer;color:#555}.modal-close-button:hover{background-color:#e0e0e0}.confirm-button{padding:8px 16px;background-color:#d9534f;border:none;border-radius:4px;cursor:pointer;color:#fff}.confirm-button:hover{background-color:#c9302c}.book-now-button{padding:8px 16px;background-color:#5cb85c;border:none;border-radius:4px;cursor:pointer;color:#fff}.book-now-button:hover{background-color:#4cae4c}.time-input-container{position:relative}.time-input{width:100%}.time-suggestions-dropdown{position:absolute;top:100%;left:0;right:0;background:#fff;border:1px solid #ddd;border-top:none;border-radius:0 0 4px 4px;max-height:200px;overflow-y:auto;z-index:1000;box-shadow:0 2px 8px #0000001a}.time-suggestion-item{padding:8px 12px;cursor:pointer;border-bottom:1px solid #f0f0f0;transition:background-color .2s}.time-suggestion-item:hover{background-color:#f8f9fa}.time-suggestion-item:last-child{border-bottom:none}@media (max-width: 480px){.time-suggestions-dropdown{max-height:150px;font-size:14px}.time-suggestion-item{padding:10px 12px;font-size:14px}}.privacy-hero{background:linear-gradient(#1a4b8ed9,#1a4b8ee6),url(https://images.unsplash.com/photo-1557597774-9d273605dfa9?q=80&w=1074&auto=format&fit=crop) center/cover no-repeat;height:40vh;min-height:280px;display:flex;align-items:center;justify-content:center;color:#fff;text-align:center;position:relative;margin-top:0;padding-top:65px}.privacy-hero:after{content:"";position:absolute;bottom:0;left:0;right:0;height:70px;background:linear-gradient(to top,var(--bg-light),transparent)}.privacy-hero-content{max-width:800px;padding:0 2rem;z-index:2}.privacy-hero h1{font-size:3rem;margin-bottom:1rem;color:#fff;font-weight:700}.privacy-hero p{font-size:1.2rem;margin-bottom:0;font-weight:300;opacity:.9}.privacy-container{background-color:var(--bg-light);padding-bottom:4rem}.privacy-intro-section{background-color:#fff;padding:2.5rem 0;margin-bottom:2rem;box-shadow:0 4px 15px #0000000d}.intro-content{max-width:900px;margin:0 auto;padding:0 2rem;display:flex;align-items:center;gap:2rem}.privacy-icon{min-width:80px;height:80px;display:flex;align-items:center;justify-content:center;background-color:#1a4b8e1a;border-radius:50%;color:var(--primary-color);flex-shrink:0}.intro-content p{font-size:1.2rem;color:var(--text-light);margin-bottom:0;line-height:1.7}.privacy-content{max-width:900px;margin:0 auto;padding:0 2rem}.privacy-section{background-color:#fff;border-radius:var(--border-radius);padding:2.5rem;margin-bottom:2rem;box-shadow:var(--box-shadow)}.section-header{display:flex;align-items:center;gap:1.2rem;margin-bottom:1.5rem}.section-icon{min-width:60px;height:60px;display:flex;align-items:center;justify-content:center;background-color:#1a4b8e1a;border-radius:50%;color:var(--primary-color);flex-shrink:0}.section-header h2{font-size:1.8rem;margin:0;color:var(--primary-dark);font-weight:600}.section-content{padding-left:0rem}.section-content h3{font-size:1.3rem;color:var(--primary-dark);margin-top:1.5rem;margin-bottom:1rem}.section-content h3:first-child{margin-top:0}.section-content p{color:var(--text-light);margin-bottom:1rem;line-height:1.6}.section-content ul{margin-bottom:1.5rem;padding-left:1.5rem}.section-content li{color:var(--text-light);margin-bottom:.5rem;line-height:1.5}.feature-list{list-style:none;padding-left:0!important}.feature-list li{display:flex;align-items:flex-start;margin-bottom:1rem}.feature-bullet{font-size:1.2rem;margin-right:1rem;line-height:1.4}.privacy-grid-section{margin-bottom:2rem}.privacy-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:2rem}.privacy-card{background-color:#fff;border-radius:var(--border-radius);padding:2rem;box-shadow:var(--box-shadow);transition:var(--transition);position:relative;z-index:1;overflow:hidden}.privacy-card:before{content:"";position:absolute;top:0;left:0;width:4px;height:100%;background:linear-gradient(to bottom,var(--primary-light),var(--primary-color));opacity:.8;z-index:-1}.privacy-card:hover{transform:translateY(-5px);box-shadow:0 15px 30px #0000001a}.card-icon{width:60px;height:60px;margin-bottom:1.5rem;display:flex;align-items:center;justify-content:center;background-color:#1a4b8e1a;border-radius:50%;color:var(--primary-color)}.privacy-card h3{font-size:1.4rem;margin-bottom:1rem;color:var(--primary-dark)}.privacy-card p{color:var(--text-light);margin-bottom:1rem}.privacy-card ul{margin-bottom:1.5rem;padding-left:1.5rem}.privacy-card li{color:var(--text-light);margin-bottom:.5rem}.children-privacy{background-color:#ff98000d;border-left:4px solid #ff9800;padding:1.5rem;border-radius:0 8px 8px 0}.cookies-section{background:linear-gradient(135deg,#fff,#f9fbff)}.privacy-contact{background-color:#fff;border-radius:var(--border-radius);padding:2.5rem;text-align:center;box-shadow:var(--box-shadow)}.privacy-contact h2{font-size:2rem;margin-bottom:2rem;color:var(--primary-dark);position:relative;display:inline-block}.privacy-contact h2:after{content:"";position:absolute;width:60px;height:3px;background-color:var(--primary-color);bottom:-10px;left:50%;transform:translate(-50%);border-radius:2px}.contact-cards{display:flex;justify-content:center;gap:2rem;margin-top:3rem}.contact-card{background-color:#f8f9fa;border-radius:var(--border-radius);padding:2rem;width:250px;text-align:center;transition:var(--transition)}.contact-card:hover{transform:translateY(-8px);box-shadow:0 10px 20px #0000000d;background-color:#fff}.contact-icon{width:70px;height:70px;margin:0 auto 1.5rem;display:flex;align-items:center;justify-content:center;background-color:#1a4b8e1a;border-radius:50%;color:var(--primary-color)}.contact-card h3{font-size:1.3rem;margin-bottom:1rem;color:var(--primary-dark)}.contact-card p{color:var(--text-light);margin-bottom:0}.contact-card a{color:var(--primary-color);text-decoration:none;font-weight:500;transition:var(--transition)}.contact-card a:hover{color:var(--primary-light);text-decoration:underline}@media (max-width: 992px){.privacy-grid{grid-template-columns:1fr}.contact-cards{flex-wrap:wrap}.contact-card{width:calc(50% - 1rem)}}@media (max-width: 768px){.privacy-hero{min-height:220px}.privacy-hero h1{font-size:2.5rem}.intro-content{flex-direction:column;text-align:center;gap:1rem}.section-content{padding-left:0}.section-header{flex-direction:column;text-align:center}.privacy-section{padding:2rem 1.5rem}.contact-cards{gap:1rem}}@media (max-width: 576px){.privacy-hero h1{font-size:2rem}.privacy-hero p{font-size:1rem}.privacy-section{padding:1.5rem}.privacy-grid{gap:1.5rem}.contact-cards{flex-direction:column}.contact-card{width:100%}}.policy-container{max-width:900px;margin:80px auto 40px;padding:40px;background:#fff;border-radius:8px;box-shadow:0 2px 10px #0000000d}.policy-header{text-align:center;margin-bottom:30px;border-bottom:1px solid #eaeaea;padding-bottom:20px}.policy-title{font-size:2.2rem;color:#2c3e50;margin-bottom:10px}.policy-subtitle{font-size:1rem;color:#7f8c8d;font-style:italic}.policy-content{line-height:1.8;color:#333}.policy-content h2{font-size:1.8rem;color:#2c3e50;margin-top:30px;margin-bottom:15px;padding-bottom:8px;border-bottom:1px solid #eaeaea}.policy-content h3{font-size:1.4rem;color:#2c3e50;margin-top:25px;margin-bottom:12px}.policy-content h4{font-size:1.1rem;color:#2c3e50;margin-top:20px;margin-bottom:10px}.policy-content p{margin-bottom:15px}.policy-content ul,.policy-content ol{margin-bottom:15px;padding-left:25px}.policy-content li{margin-bottom:8px}.policy-content blockquote{border-left:4px solid #3498db;padding-left:15px;margin-left:0;margin-right:0;font-style:italic;color:#555}.policy-content hr{border:0;height:1px;background-color:#eaeaea;margin:25px 0}.policy-content a{color:#3498db;text-decoration:none;transition:color .3s}.policy-content a:hover{color:#2980b9;text-decoration:underline}.policy-content code{background-color:#f7f7f7;padding:2px 5px;border-radius:3px;font-family:monospace;font-size:.9em}.policy-contact{margin-top:30px;padding-top:20px;border-top:1px solid #eaeaea}.policy-effective-date{margin-top:20px;font-style:italic;color:#7f8c8d}@media (max-width: 768px){.policy-container{padding:20px;margin:60px auto 30px}.policy-title{font-size:1.8rem}.policy-content h2{font-size:1.5rem}.policy-content h3{font-size:1.3rem}}@media (max-width: 480px){.policy-container{padding:15px;margin-top:50px}.policy-title{font-size:1.6rem}.policy-content h2{font-size:1.4rem}.policy-content h3{font-size:1.2rem}}h1,h2,h3,h4{font-weight:600;color:var(--primary-dark)}p{font-size:1.05rem}.about-container{max-width:1200px;margin:0 auto;padding:0 1.5rem}img{max-width:100%;height:auto;border-radius:8px;transition:transform .5s ease}.about-image:hover{transform:scale(1.02)}.about-hero{background:linear-gradient(#1a4b8ecc,#1a4b8ecc),url(https://images.unsplash.com/photo-1488646953014-85cb44e25828?q=80&w=1035&auto=format&fit=crop) center/cover no-repeat;height:60vh;min-height:400px;display:flex;align-items:center;justify-content:center;color:#fff;text-align:center;margin-top:0;padding-top:65px}.about-hero-content{max-width:800px;padding:0 2rem}.about-hero h1{font-size:3.5rem;margin-bottom:1rem;color:#fff}.about-hero p{font-size:1.5rem;margin-bottom:0;font-weight:300}.about-section{padding:5rem 0}.about-section h2{font-size:2.5rem;text-align:center;margin-bottom:2.5rem;position:relative}.about-section h2:after{content:"";position:absolute;width:80px;height:4px;background-color:var(--primary-color);bottom:-15px;left:50%;transform:translate(-50%);border-radius:2px}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center}.about-text{padding:0 1rem}.about-text h2{text-align:left;margin-bottom:1.5rem}.about-text h2:after{left:0;transform:none}.about-image{position:relative;border-radius:var(--border-radius);overflow:hidden;box-shadow:var(--box-shadow)}.about-image img{display:block;width:100%;height:400px;object-fit:cover;box-shadow:none}.about-mission{background-color:var(--primary-color);color:#fff;padding:5rem 0}.about-mission h2,.about-mission h3{color:#fff}.about-mission h2:after{background-color:#fff}.mission-statement{font-size:1.8rem;text-align:center;max-width:800px;margin:0 auto 3rem;font-weight:300}.mission-values{display:grid;grid-template-columns:repeat(4,1fr);gap:2rem}.mission-value{background-color:#ffffff1a;border-radius:var(--border-radius);padding:2rem;text-align:center;transition:var(--transition)}.mission-value:hover{transform:translateY(-10px);background-color:#fff3}.value-icon{width:80px;height:80px;margin:0 auto 1.5rem;display:flex;align-items:center;justify-content:center;background-color:#fff3;border-radius:50%}.mission-value h3{font-size:1.4rem;margin-bottom:1rem}.mission-value p{font-size:1rem;margin-bottom:0}.about-features{background-color:var(--bg-light)}.features-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:2rem}.feature-card{background-color:var(--bg-white);border-radius:var(--border-radius);padding:2.5rem;box-shadow:var(--box-shadow);transition:var(--transition);position:relative;z-index:1;overflow:hidden}.feature-card:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,var(--primary-light) 0%,var(--primary-color) 100%);opacity:0;z-index:-1;transition:var(--transition)}.feature-card:hover{transform:translateY(-10px);color:#fff}.feature-card:hover:before{opacity:1}.feature-card:hover h3,.feature-card:hover p{color:#fff}.feature-card:hover .feature-icon{background-color:#fff3}.feature-card:hover svg{stroke:#fff}.feature-icon{width:70px;height:70px;background-color:#1a4b8e1a;border-radius:50%;display:flex;align-items:center;justify-content:center;margin-bottom:1.5rem;transition:var(--transition)}.feature-icon svg{stroke:var(--primary-color);transition:var(--transition)}.feature-card h3{font-size:1.4rem;margin-bottom:1rem;transition:var(--transition)}.feature-card p{margin-bottom:0;transition:var(--transition)}.about-team{background-color:var(--bg-white)}.team-intro{text-align:center;max-width:800px;margin:0 auto 3rem}.team-stats{display:flex;justify-content:center;gap:4rem;margin-top:3rem}.stat{text-align:center}.stat-number{display:block;font-size:4rem;font-weight:700;color:var(--primary-color);line-height:1;margin-bottom:.5rem}.stat-label{font-size:1.2rem;color:var(--text-light)}.about-future{background-color:var(--bg-light)}.about-future .about-grid{grid-template-columns:1fr 1fr}.about-future .about-image{order:1}.about-future .about-text{order:2}.about-connect{background-color:var(--bg-white);text-align:center;padding-bottom:7rem}.connect-intro{max-width:700px;margin:0 auto 3rem}.connect-cards{display:flex;justify-content:center;gap:2rem;margin-bottom:3rem}.connect-card{background-color:var(--bg-light);padding:2rem;border-radius:var(--border-radius);min-width:250px;box-shadow:var(--box-shadow);transition:var(--transition)}.connect-card:hover{transform:translateY(-10px)}.connect-icon{width:70px;height:70px;background-color:#1a4b8e1a;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 1.5rem}.connect-icon svg{stroke:var(--primary-color)}.connect-card h3{margin-bottom:.5rem}.connect-card p{margin-bottom:0}.connect-card a{color:var(--primary-color);text-decoration:none;font-weight:500;transition:var(--transition)}.connect-card a:hover{color:var(--primary-light)}.contact-cta{margin-top:3rem}.contact-button{display:inline-block;background-color:var(--primary-color);color:#fff;text-decoration:none;padding:1rem 2.5rem;border-radius:50px;font-weight:500;transition:var(--transition);box-shadow:var(--box-shadow)}.contact-button:hover{background-color:var(--primary-dark);transform:translateY(-5px);box-shadow:0 15px 30px #0000001a}@media (max-width: 1024px){.about-hero h1{font-size:3rem}.mission-values{grid-template-columns:repeat(2,1fr)}.features-grid{grid-template-columns:1fr}.team-stats{gap:2rem}}@media (max-width: 768px){.about-hero{height:50vh}.about-hero h1{font-size:2.5rem}.about-hero p{font-size:1.2rem}.about-section{padding:4rem 0}.about-section h2{font-size:2rem}.about-grid{grid-template-columns:1fr;gap:2rem}.about-image img{height:300px}.connect-cards{flex-direction:column;align-items:center}.connect-card{width:100%;max-width:350px}}@media (max-width: 576px){.about-hero h1{font-size:2rem}.about-section h2{font-size:1.8rem}.mission-values{grid-template-columns:1fr}.mission-statement{font-size:1.4rem}.feature-card{padding:2rem}.team-stats{flex-direction:column;gap:2rem}.about-text{padding:0}}:root{--primary-color: #1a4b8e;--primary-light: #2a6cb3;--primary-dark: #10325f;--accent-color: #ff6b6b;--accent-light: #ff8a8a;--text-dark: #333;--text-light: #666;--text-lighter: #999;--bg-light: #f8f9fa;--bg-white: #ffffff;--box-shadow: 0 10px 30px rgba(0, 0, 0, .05);--border-radius: 12px;--transition: all .3s ease}*{box-sizing:border-box;margin:0;padding:0}body{font-family:Poppins,sans-serif;color:var(--text-dark);line-height:1.6;background-color:var(--bg-light)}.contact-hero{background:linear-gradient(#1a4b8ecc,#1a4b8ecc),url(https://images.unsplash.com/photo-1423666639041-f56000c27a9a?q=80&w=1074&auto=format&fit=crop) center/cover no-repeat;height:60vh;min-height:400px;display:flex;align-items:center;justify-content:center;color:#fff;text-align:center;margin-top:0;padding-top:65px}.contact-hero-content{max-width:800px;padding:0 2rem}.contact-hero h1{font-size:3.5rem;font-weight:700;margin-bottom:1rem;color:#fff}.contact-hero p{font-size:1.5rem;margin-bottom:0;font-weight:300}.contact-section,.contact-social-section,.contact-hours-section{padding:5rem 0}.contact-container{max-width:1200px;margin:0 auto;padding:0 1.5rem}.contact-intro{text-align:center;margin-bottom:2.5rem}.contact-intro h2{font-size:2.5rem;color:var(--primary-dark);margin-bottom:1rem;font-weight:600;position:relative}.contact-intro h2:after{content:"";position:absolute;width:80px;height:4px;background-color:var(--primary-color);bottom:-15px;left:50%;transform:translate(-50%);border-radius:2px}.contact-intro p{font-size:1.05rem;color:var(--text-light);max-width:600px;margin:0 auto;line-height:1.7}.contact-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;margin-top:3rem}.contact-card{background:var(--bg-white);padding:2.5rem;border-radius:var(--border-radius);box-shadow:var(--box-shadow);text-align:center;transition:var(--transition);border:1px solid #f0f0f0;position:relative;z-index:1;overflow:hidden}.contact-card:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,var(--primary-light) 0%,var(--primary-color) 100%);opacity:0;z-index:-1;transition:var(--transition)}.contact-card:hover{transform:translateY(-10px);color:#fff}.contact-card:hover:before{opacity:1}.contact-card:hover h3,.contact-card:hover p{color:#fff}.contact-card:hover .contact-icon{background-color:#fff3}.contact-card:hover svg{stroke:#fff}.contact-card:hover .contact-link{color:#fff}.contact-icon{width:70px;height:70px;background-color:#1a4b8e1a;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 1.5rem;transition:var(--transition)}.contact-icon svg{stroke:var(--primary-color);transition:var(--transition)}.contact-card h3{font-size:1.4rem;color:var(--primary-dark);margin-bottom:1rem;font-weight:600;transition:var(--transition)}.contact-card p{color:var(--text-light);margin-bottom:1rem;line-height:1.6;transition:var(--transition)}.contact-link{color:var(--primary-color);text-decoration:none;font-weight:600;font-size:1.1rem;transition:var(--transition);word-break:break-all;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;display:inline-block;max-width:100%}.contact-link:hover{color:var(--primary-light);text-decoration:underline}.address p{margin-bottom:5px;color:var(--text-light);line-height:1.5;transition:var(--transition)}.contact-social-section{background:var(--bg-light)}.contact-social-section h2{text-align:center;font-size:2.5rem;color:var(--primary-dark);margin-bottom:1rem;font-weight:600;position:relative}.contact-social-section h2:after{content:"";position:absolute;width:80px;height:4px;background-color:var(--primary-color);bottom:-15px;left:50%;transform:translate(-50%);border-radius:2px}.contact-social-section>.contact-container>p{text-align:center;font-size:1.05rem;color:var(--text-light);margin-bottom:3rem}.social-cards{display:flex;justify-content:center;gap:2rem;max-width:600px;margin:0 auto}.social-card{background:var(--bg-white);padding:2rem;border-radius:var(--border-radius);box-shadow:var(--box-shadow);text-align:center;text-decoration:none;color:inherit;transition:var(--transition);border:1px solid #f0f0f0;min-width:250px}.social-card:hover{transform:translateY(-10px);text-decoration:none;color:inherit}.social-icon{width:70px;height:70px;background-color:#1a4b8e1a;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 1.5rem}.social-icon svg{stroke:var(--primary-color)}.social-card h3{font-size:1.2rem;color:var(--primary-dark);margin-bottom:.5rem;font-weight:600}.social-card p{color:var(--text-light);margin:0}.contact-hours-section{background-color:var(--bg-white)}.contact-hours-section h2{text-align:center;font-size:2.5rem;color:var(--primary-dark);margin-bottom:2.5rem;font-weight:600;position:relative}.contact-hours-section h2:after{content:"";position:absolute;width:80px;height:4px;background-color:var(--primary-color);bottom:-15px;left:50%;transform:translate(-50%);border-radius:2px}.hours-info{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;max-width:800px;margin:0 auto}.hours-card{background:var(--bg-light);padding:2rem;border-radius:var(--border-radius);box-shadow:var(--box-shadow);border:1px solid #f0f0f0;transition:var(--transition)}.hours-card:hover{transform:translateY(-10px)}.hours-card h3{font-size:1.3rem;color:var(--primary-dark);margin-bottom:1rem;font-weight:600}.hours-card p{color:var(--text-light);margin-bottom:8px;line-height:1.6}.emergency-email{color:var(--primary-color);text-decoration:none;font-weight:600;transition:var(--transition)}.emergency-email:hover{color:var(--primary-light);text-decoration:underline}@media (max-width: 1024px){.contact-hero h1{font-size:3rem}.social-cards{flex-direction:column;align-items:center}.social-card{width:100%;max-width:350px}}@media (max-width: 768px){.contact-hero{height:50vh}.contact-hero h1{font-size:2.5rem}.contact-hero p{font-size:1.2rem}.contact-section,.contact-social-section,.contact-hours-section{padding:4rem 0}.contact-intro h2,.contact-social-section h2,.contact-hours-section h2{font-size:2rem}.contact-cards{grid-template-columns:1fr;gap:1.5rem}.contact-card{padding:2rem}.social-cards{flex-direction:column;align-items:center;gap:1.5rem}.social-card{width:100%;max-width:350px}.hours-info{grid-template-columns:1fr;gap:1.5rem}}@media (max-width: 576px){.contact-hero h1{font-size:2rem}.contact-hero p{font-size:1rem}.contact-intro h2,.contact-social-section h2,.contact-hours-section h2{font-size:1.8rem}.contact-card{padding:1.5rem}.contact-icon,.social-icon{width:60px;height:60px}.contact-container{padding:0 1rem}}.blog-list-container{font-family:Poppins,sans-serif;margin-top:0;padding:0;min-height:calc(100vh - 80px)}.blog-list-content{max-width:1200px;margin:0 auto;padding:2rem 1rem}.blog-list-header{position:relative;width:100vw;margin-left:calc(-50vw + 50%);text-align:center;padding-top:15rem;padding-bottom:2rem;background-image:url(/assets/Blog-Page-TOP-Image-BI_x-DWI.jpg);background-size:cover;background-position:center;background-attachment:fixed;color:#fff;overflow:hidden}.blog-list-header-content{position:relative;z-index:2;max-width:1200px;margin:0 auto}.blog-list-title{font-size:2.5rem;font-weight:700;margin:0 0 1rem;color:#fff;text-shadow:0 2px 4px rgba(0,0,0,.1)}.blog-list-subtitle{font-size:1.1rem;font-weight:400;opacity:.9;max-width:600px;margin:0 auto}.blog-list-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;color:#213a69}.blog-list-spinner{width:40px;height:40px;border:4px solid #A6CCE3;border-top:4px solid #213A69;border-radius:50%;animation:blog-list-spin 1s linear infinite;margin-bottom:1rem}@keyframes blog-list-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.blog-list-error{text-align:center;padding:3rem 2rem;background-color:#f5f5f5;border-radius:12px;border:2px solid #dc3545;color:#333}.blog-list-error h3{color:#dc3545;margin-bottom:1rem;font-size:1.5rem}.blog-list-retry-btn{background-color:#213a69;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:8px;font-family:Poppins,sans-serif;font-weight:500;cursor:pointer;transition:all .3s ease;margin-top:1rem}.blog-list-retry-btn:hover{background-color:#1a2d54;transform:translateY(-2px)}.blog-list-empty{text-align:center;padding:4rem 2rem;color:#333}.blog-list-empty h3{color:#213a69;margin-bottom:1rem;font-size:1.5rem}.blog-list-grid{display:flex;flex-direction:column;gap:2rem;margin-bottom:3rem}.blog-list-card{background:#fff;border-radius:16px;box-shadow:0 4px 20px #213a691a;transition:all .3s ease;cursor:pointer;border:2px solid transparent;overflow:hidden;display:flex;flex-direction:row;height:220px;align-items:stretch}.blog-list-card:hover{transform:translateY(-4px);box-shadow:0 12px 40px #213a6933;border-color:#a6cce3}.blog-list-card-image{width:320px;min-width:320px;height:100%;overflow:hidden;position:relative;border-radius:16px 0 0 16px;background-color:#f5f5f5;display:flex;align-items:center;justify-content:center}.blog-list-card-image img{width:100%;height:100%;object-fit:cover;object-position:center;transition:transform .3s ease;display:block;min-height:100%;min-width:100%}.blog-list-card:hover .blog-list-card-image img{transform:scale(1.05)}.blog-list-card-content{padding:2rem;flex:1;display:flex;flex-direction:column;justify-content:space-between;min-height:0}.blog-list-card-title{font-size:1.4rem;font-weight:600;color:#213a69;margin:0 0 .75rem;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.blog-list-card-author{font-size:.9rem;color:#a6cce3;font-weight:500;margin:0 0 1rem}.blog-list-card-description{font-size:1rem;color:#555;line-height:1.5;margin:0 0 1.5rem;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;flex:1}.blog-list-card-footer{display:flex;justify-content:flex-end;align-items:center;margin-top:auto;flex-shrink:0}.blog-list-read-more{color:#fff;background:#213a69;border-radius:8px;padding:.75rem 1.5rem;font-weight:500;font-size:.9rem;transition:all .3s ease;border:none;cursor:pointer;box-shadow:0 2px 8px #213a6933}.blog-list-card:hover .blog-list-read-more{background:#34599c;transform:translateY(-1px);box-shadow:0 4px 12px #213a694d}.blog-list-pagination{display:flex;justify-content:center;align-items:center;gap:1rem;margin:2rem 0;flex-wrap:wrap}.blog-list-page-btn{background-color:#fff;color:#213a69;border:2px solid #A6CCE3;padding:.75rem 1.5rem;border-radius:8px;font-family:Poppins,sans-serif;font-weight:500;cursor:pointer;transition:all .3s ease}.blog-list-page-btn:hover:not(.disabled){background-color:#a6cce3;color:#fff}.blog-list-page-btn.disabled{opacity:.5;cursor:not-allowed;background-color:#f5f5f5;color:#999;border-color:#e0e0e0}.blog-list-page-numbers{display:flex;gap:.5rem;flex-wrap:wrap}.blog-list-page-number{background-color:#fff;color:#213a69;border:2px solid #A6CCE3;padding:.5rem .75rem;border-radius:6px;font-family:Poppins,sans-serif;font-weight:500;cursor:pointer;transition:all .3s ease;min-width:40px;text-align:center}.blog-list-page-number:hover{background-color:#a6cce3;color:#fff}.blog-list-page-number.active{background-color:#213a69;color:#fff;border-color:#213a69}.blog-list-info{text-align:center;color:#666;font-size:.9rem;margin-top:1rem}@media (max-width: 1024px){.blog-list-card-image{width:280px;min-width:280px}.blog-list-card-content{padding:1.5rem}.blog-list-card-title{font-size:1.3rem}.blog-list-card-description{font-size:.95rem}}@media (max-width: 768px){.blog-list-content{padding:1.5rem 1rem}.blog-list-header{padding:6rem 1rem 3rem;background-attachment:scroll}.blog-list-title{font-size:2rem}.blog-list-subtitle{font-size:1rem}.blog-list-actions{padding:0;margin-bottom:1.5rem}.blog-create-btn{padding:.4rem .8rem;font-size:.8rem}.blog-list-grid{gap:1.5rem}.blog-list-card{flex-direction:column;height:auto;min-height:400px;align-items:stretch}.blog-list-card-image{width:100%;min-width:100%;height:200px;border-radius:16px 16px 0 0;display:flex;align-items:center;justify-content:center;flex-shrink:0}.blog-list-card-content{padding:1.5rem;justify-content:flex-start;gap:.75rem;flex:1;display:flex;flex-direction:column}.blog-list-card-title{font-size:1.2rem;margin:0 0 .5rem;line-height:1.4;-webkit-line-clamp:3}.blog-list-card-author{margin:0 0 .5rem;font-size:.85rem}.blog-list-card-description{margin:0 0 1rem;flex:1;font-size:.9rem;line-height:1.4;-webkit-line-clamp:4}.blog-list-card-footer{margin-top:auto;flex-shrink:0}.blog-list-pagination{flex-direction:column;gap:1rem}.blog-list-page-btn{padding:.5rem 1rem;font-size:.9rem}.blog-list-page-number{padding:.5rem .7rem;font-size:.9rem}}@media (max-width: 480px){.blog-list-header{padding:5rem 1rem 2.5rem;margin-top:60px}.blog-list-title{font-size:1.8rem}.blog-create-btn{padding:.35rem .7rem;font-size:.75rem}.blog-list-card{min-height:380px}.blog-list-card-content{padding:1.25rem}.blog-list-card-image{height:180px;display:flex;align-items:center;justify-content:center}.blog-list-card-title{font-size:1.1rem;line-height:1.3}.blog-list-card-author{font-size:.8rem}.blog-list-card-description{font-size:.85rem;line-height:1.3}.blog-list-page-numbers{gap:.3rem}}.blog-list-actions{display:flex;justify-content:flex-end;margin-bottom:2rem;padding:0 1rem}.blog-create-btn{background-color:#213a69;color:#fff;border:none;padding:.5rem 1rem;border-radius:6px;font-family:Poppins,sans-serif;font-size:.85rem;font-weight:500;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:.3rem;box-shadow:0 2px 8px #213a6926}.blog-create-btn:hover{background-color:#1a2d54;transform:translateY(-2px);box-shadow:0 4px 12px #213a6940}.blog-create-btn:active{transform:translateY(0)}.blog-detail-container{font-family:Poppins,sans-serif;margin-top:0;padding:0;min-height:calc(100vh - 80px);background-color:#f8f9fa}.blog-detail-hero{position:relative;width:100vw;margin-left:calc(-50vw + 50%);height:50vh;background:url(/assets/Blog-Page-TOP-Image-BI_x-DWI.jpg);background-size:cover;background-position:bottom;display:flex;align-items:center;justify-content:center;text-align:center;color:#fff;overflow:hidden}.blog-detail-hero-content{position:relative;z-index:2;max-width:800px;padding:2rem}.blog-detail-hero h1{font-size:3rem;font-weight:700;margin:0;color:#fff;line-height:1.2}.blog-detail-hero-meta{margin-top:1.5rem;font-size:1.1rem;opacity:.9;display:flex;justify-content:center;align-items:center;gap:2rem;flex-wrap:wrap}.blog-detail-content{max-width:1200px;margin:0 auto;padding:0 1.5rem;position:relative;z-index:1}.blog-detail-header{margin:-3rem auto 2rem;max-width:100%;background:#fff;border-radius:20px;padding:2rem;box-shadow:0 15px 35px #0000001a;position:relative;z-index:3}.blog-detail-back-link{background:linear-gradient(135deg,#213a69,#1a2d54);border:none;color:#fff;font-family:Poppins,sans-serif;font-size:1rem;font-weight:500;cursor:pointer;padding:.75rem 1.5rem;border-radius:25px;transition:all .3s ease;display:inline-flex;align-items:center;gap:.5rem;box-shadow:0 4px 15px #213a694d}.blog-detail-back-link:hover{transform:translateY(-2px);box-shadow:0 6px 20px #213a6966}.blog-detail-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;color:#213a69;min-height:50vh}.blog-detail-spinner{width:50px;height:50px;border:4px solid #a6cce3;border-top:4px solid #213a69;border-radius:50%;animation:blog-detail-spin 1s linear infinite;margin-bottom:1rem}@keyframes blog-detail-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.blog-detail-error{text-align:center;padding:4rem 2rem;background:#fff;border-radius:20px;box-shadow:0 15px 35px #0000001a;margin:2rem auto;max-width:600px;border:2px solid #dc3545;color:#333}.blog-detail-error h3{color:#dc3545;margin-bottom:1rem;font-size:1.8rem;font-weight:600}.blog-detail-error-actions{display:flex;gap:1rem;justify-content:center;margin-top:2rem;flex-wrap:wrap}.blog-detail-retry-btn,.blog-detail-back-btn{background:linear-gradient(135deg,#213a69,#1a2d54);color:#fff;border:none;padding:.75rem 2rem;border-radius:25px;font-family:Poppins,sans-serif;font-weight:500;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #213a694d}.blog-detail-retry-btn:hover,.blog-detail-back-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #213a6966}.blog-detail-back-btn{background:linear-gradient(135deg,#a6cce3,#8bb5d9);color:#213a69}.blog-detail-back-btn:hover{box-shadow:0 6px 20px #a6cce366}.blog-detail-not-found{text-align:center;padding:4rem 2rem;background:#fff;border-radius:20px;box-shadow:0 15px 35px #0000001a;margin:2rem auto;max-width:600px;color:#333}.blog-detail-not-found h3{color:#213a69;margin-bottom:1rem;font-size:1.8rem;font-weight:600}.blog-detail-article{background:#fff;border-radius:20px;box-shadow:0 15px 35px #213a691a;overflow:hidden;margin-bottom:2rem}.blog-detail-article-header{background:linear-gradient(135deg,#213a69,#1a2d54);color:#fff;padding:4rem 3rem 3rem;text-align:center;position:relative}.blog-detail-title{font-size:2.8rem;font-weight:700;margin:0 0 2rem;line-height:1.2;color:#fff;text-shadow:0 2px 4px rgba(0,0,0,.3);position:relative;z-index:1}.blog-detail-meta{display:flex;justify-content:center;align-items:center;gap:2rem;flex-wrap:wrap;font-size:1.1rem;opacity:.9;position:relative;z-index:1}.blog-detail-author{font-weight:600;padding:.5rem 1rem;background:#ffffff1a;border-radius:20px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.blog-detail-date{font-weight:400;padding:.5rem 1rem;background:#ffffff1a;border-radius:20px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.blog-detail-image-container{width:100%;max-height:500px;overflow:hidden;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#f8f9fa,#e9ecef)}.blog-detail-image{width:100%;height:auto;max-height:500px;object-fit:cover;display:block;transition:transform .3s ease}.blog-detail-image:hover{transform:scale(1.02)}.blog-detail-content-section{padding:4rem 3rem;max-width:none}.blog-detail-sanitized-content{font-size:1.2rem;line-height:1.8;color:#333;max-width:800px;margin:0 auto}.blog-detail-sanitized-content h1,.blog-detail-sanitized-content h2,.blog-detail-sanitized-content h3,.blog-detail-sanitized-content h4,.blog-detail-sanitized-content h5,.blog-detail-sanitized-content h6{color:#213a69;margin:2rem 0 1rem;font-weight:600;line-height:1.3}.blog-detail-sanitized-content h1{font-size:2rem}.blog-detail-sanitized-content h2{font-size:1.7rem}.blog-detail-sanitized-content h3{font-size:1.4rem}.blog-detail-sanitized-content h4{font-size:1.2rem}.blog-detail-sanitized-content h5{font-size:1.1rem}.blog-detail-sanitized-content h6{font-size:1rem}.blog-detail-sanitized-content p{margin:1.5rem 0;line-height:1.8}.blog-detail-sanitized-content ul,.blog-detail-sanitized-content ol{margin:1.5rem 0;padding-left:2rem}.blog-detail-sanitized-content li{margin:.5rem 0;line-height:1.6}.blog-detail-sanitized-content blockquote{background-color:#f5f5f5;border-left:4px solid #a6cce3;padding:1rem 1.5rem;margin:2rem 0;font-style:italic;color:#666;border-radius:4px}.blog-detail-sanitized-content img{max-width:100%;height:auto;border-radius:8px;margin:1.5rem 0;box-shadow:0 4px 12px #0000001a;display:block}.blog-detail-sanitized-content a{color:#213a69;text-decoration:underline;transition:color .3s ease}.blog-detail-sanitized-content a:hover{color:#a6cce3}.blog-detail-sanitized-content strong,.blog-detail-sanitized-content b{font-weight:600;color:#213a69}.blog-detail-sanitized-content em,.blog-detail-sanitized-content i{font-style:italic}.blog-detail-sanitized-content code{background-color:#f5f5f5;padding:.2rem .4rem;border-radius:4px;font-size:.9rem;color:#d63384}.blog-detail-sanitized-content pre{background-color:#f5f5f5;padding:1rem;border-radius:8px;overflow-x:auto;margin:1.5rem 0;border:1px solid #e0e0e0}.blog-detail-sanitized-content pre code{background:none;padding:0;color:#333}.blog-detail-sanitized-content table{width:100%;border-collapse:collapse;margin:1.5rem 0;border:1px solid #e0e0e0;border-radius:8px;overflow:hidden}.blog-detail-sanitized-content th,.blog-detail-sanitized-content td{padding:.75rem;text-align:left;border-bottom:1px solid #e0e0e0}.blog-detail-sanitized-content th{background-color:#213a69;color:#fff;font-weight:600}.blog-detail-sanitized-content hr{border:none;height:2px;background-color:#e0e0e0;margin:2rem 0;border-radius:1px}.blog-detail-no-content{text-align:center;color:#666;font-style:italic;padding:2rem 0}.blog-detail-footer{background:linear-gradient(135deg,#f8f9fa,#e9ecef);padding:3rem;border-top:3px solid #a6cce3;margin-top:2rem}.blog-detail-actions{display:flex;justify-content:space-between;align-items:center;gap:1.5rem;flex-wrap:wrap}.blog-detail-share-btn,.blog-detail-back-to-top{background:linear-gradient(135deg,#213a69,#1a2d54);color:#fff;border:none;padding:1rem 2rem;border-radius:25px;font-family:Poppins,sans-serif;font-weight:500;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #213a694d;font-size:1rem}.blog-detail-share-btn:hover,.blog-detail-back-to-top:hover{transform:translateY(-2px);box-shadow:0 6px 20px #213a6966}.blog-detail-share-btn{background:linear-gradient(135deg,#a6cce3,#8bb5d9);color:#213a69}.blog-detail-share-btn:hover{box-shadow:0 6px 20px #a6cce366}@media (max-width: 1024px){.blog-detail-hero h1{font-size:2.5rem}.blog-detail-header{margin:-2rem auto 2rem;padding:1.5rem}.blog-detail-content-section{padding:3rem 2.5rem}.blog-detail-article-header{padding:3rem 2.5rem 2rem}.blog-detail-title{font-size:2.5rem}.blog-detail-footer{padding:2.5rem 2rem}}@media (max-width: 768px){.blog-detail-hero{height:40vh}.blog-detail-hero h1{font-size:2rem}.blog-detail-hero-meta{font-size:1rem;gap:1rem}.blog-detail-header{margin:-2rem auto 1.5rem;padding:1.5rem}.blog-detail-article-header{padding:2rem 2rem 1.5rem}.blog-detail-title{font-size:2.2rem}.blog-detail-meta{gap:1rem;font-size:1rem}.blog-detail-image-container,.blog-detail-image{max-height:300px}.blog-detail-content-section{padding:2.5rem 2rem}.blog-detail-sanitized-content{font-size:1.1rem}.blog-detail-sanitized-content h1{font-size:1.8rem}.blog-detail-sanitized-content h2{font-size:1.5rem}.blog-detail-sanitized-content h3{font-size:1.3rem}.blog-detail-sanitized-content h4{font-size:1.2rem}.blog-detail-sanitized-content h5{font-size:1.1rem}.blog-detail-sanitized-content h6{font-size:1rem}.blog-detail-footer{padding:2rem}.blog-detail-actions{gap:1rem;flex-direction:column}.blog-detail-error-actions{flex-direction:column;align-items:center}}@media (max-width: 480px){.blog-detail-hero{height:35vh}.blog-detail-hero h1{font-size:1.7rem}.blog-detail-hero-content{padding:1rem}.blog-detail-header{margin:-1.5rem auto 1rem;padding:1rem}.blog-detail-article-header{padding:1.5rem}.blog-detail-title{font-size:1.9rem}.blog-detail-image-container,.blog-detail-image{max-height:250px}.blog-detail-content-section{padding:2rem 1.5rem}.blog-detail-footer{padding:1.5rem}.blog-detail-meta{flex-direction:column;gap:.5rem}.blog-detail-share-btn,.blog-detail-back-to-top,.blog-detail-retry-btn,.blog-detail-back-btn{padding:.8rem 1.5rem;font-size:.9rem}}.blog-create-container{max-width:1200px;margin:0 auto;padding:20px;min-height:calc(100vh - 200px);background-color:#f8f9fa}.blog-create-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;padding:20px 0;border-bottom:2px solid #e9ecef}.blog-create-header h1{color:#2c3e50;font-size:2.5rem;font-weight:700;margin:0}.blog-create-back-btn{background:#6c757d;color:#fff;border:none;padding:10px 20px;border-radius:8px;cursor:pointer;font-size:1rem;font-weight:500;transition:all .3s ease}.blog-create-back-btn:hover{background:#5a6268;transform:translateY(-2px)}.blog-create-error{background:#f8d7da;color:#721c24;padding:15px;border-radius:8px;margin-bottom:20px;border:1px solid #f5c6cb;font-weight:500}.blog-create-success{background:#d4edda;color:#155724;padding:15px;border-radius:8px;margin-bottom:20px;border:1px solid #c3e6cb;font-weight:500}.blog-create-form{background:#fff;padding:30px;border-radius:12px;box-shadow:0 4px 6px #0000001a}.blog-create-field{margin-bottom:25px}.blog-create-field label{display:block;margin-bottom:8px;font-weight:600;color:#2c3e50;font-size:1.1rem}.blog-create-field input[type=text],.blog-create-field textarea{width:100%;padding:12px 16px;border:2px solid #e9ecef;border-radius:8px;font-size:1rem;transition:border-color .3s ease}.blog-create-field input[type=text]:focus,.blog-create-field textarea:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 3px #007bff1a}.blog-create-field textarea{resize:vertical;min-height:80px}.blog-create-thumbnail-section{display:flex;flex-direction:column;gap:15px}.blog-create-file-input{padding:10px;border:2px dashed #007bff;border-radius:8px;background:#f8f9ff;cursor:pointer;transition:all .3s ease}.blog-create-file-input:hover{background:#e6f3ff;border-color:#0056b3}.blog-create-thumbnail-preview{display:flex;justify-content:center;align-items:center;padding:10px;border:2px solid #e9ecef;border-radius:8px;background:#f8f9fa}.blog-create-thumbnail-preview img{max-width:300px;max-height:200px;object-fit:cover;border-radius:8px;box-shadow:0 2px 8px #0000001a}.blog-editor-wrapper{border:2px solid #e9ecef;border-radius:8px;overflow:hidden;background:#fff}.blog-editor-menubar{display:flex;flex-wrap:wrap;gap:5px;padding:15px;background:#f8f9fa;border-bottom:1px solid #e9ecef}.blog-editor-menu-group{display:flex;gap:3px;padding:0 10px;border-right:1px solid #dee2e6}.blog-editor-menu-group:last-child{border-right:none}.blog-editor-menubar button{background:#fff;border:1px solid #dee2e6;border-radius:4px;padding:8px 12px;cursor:pointer;font-size:.9rem;font-weight:500;transition:all .2s ease;min-width:36px;height:36px;display:flex;align-items:center;justify-content:center}.blog-editor-menubar button:hover{background:#e9ecef;border-color:#adb5bd}.blog-editor-menubar button.is-active{background:#007bff;color:#fff;border-color:#007bff}.blog-editor-menubar button:disabled{background:#f8f9fa;color:#6c757d;cursor:not-allowed;opacity:.6}.blog-editor-content{min-height:400px;padding:20px;font-size:1rem;line-height:1.6;color:#2c3e50;outline:none}.blog-editor-content p{margin-bottom:15px}.blog-editor-content h1,.blog-editor-content h2,.blog-editor-content h3{margin:25px 0 15px;font-weight:600;color:#2c3e50}.blog-editor-content h1{font-size:2rem}.blog-editor-content h2{font-size:1.5rem}.blog-editor-content h3{font-size:1.25rem}.blog-editor-content ul,.blog-editor-content ol{margin:15px 0;padding-left:30px}.blog-editor-content li{margin-bottom:8px}.blog-editor-content blockquote{border-left:4px solid #007bff;margin:20px 0;font-style:italic;color:#6c757d;background:#f8f9ff;padding:15px 20px;border-radius:0 8px 8px 0}.blog-editor-content a{color:#007bff;text-decoration:none}.blog-editor-content a:hover{text-decoration:underline}.blog-editor-content mark{background:#fff3cd;padding:2px 4px;border-radius:3px}.blog-editor-image{max-width:100%;height:auto;border-radius:8px;margin:15px 0;box-shadow:0 2px 8px #0000001a}.blog-editor-help{margin-top:10px;font-size:.9rem;color:#6c757d;font-style:italic}.blog-create-actions{display:flex;gap:15px;justify-content:flex-end;margin-top:30px;padding-top:20px;border-top:1px solid #e9ecef}.blog-create-cancel-btn{background:#6c757d;color:#fff;border:none;padding:12px 24px;border-radius:8px;cursor:pointer;font-size:1rem;font-weight:500;transition:all .3s ease}.blog-create-cancel-btn:hover:not(:disabled){background:#5a6268;transform:translateY(-2px)}.blog-create-submit-btn{background:#007bff;color:#fff;border:none;padding:12px 24px;border-radius:8px;cursor:pointer;font-size:1rem;font-weight:500;transition:all .3s ease}.blog-create-submit-btn:hover:not(:disabled){background:#0056b3;transform:translateY(-2px)}.blog-create-cancel-btn:disabled,.blog-create-submit-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}@media (max-width: 768px){.blog-create-container{padding:15px}.blog-create-header{flex-direction:column;gap:15px;text-align:center}.blog-create-header h1{font-size:2rem}.blog-create-form{padding:20px}.blog-editor-menubar{padding:10px}.blog-editor-menu-group{padding:0 5px}.blog-editor-menubar button{padding:6px 8px;font-size:.8rem;min-width:32px;height:32px}.blog-editor-content{padding:15px;min-height:300px}.blog-create-actions{flex-direction:column}.blog-create-thumbnail-preview img{max-width:100%;max-height:150px}}@media (max-width: 480px){.blog-create-header h1{font-size:1.5rem}.blog-editor-menubar{flex-direction:column;gap:10px}.blog-editor-menu-group{border-right:none;border-bottom:1px solid #dee2e6;padding-bottom:5px}.blog-editor-menu-group:last-child{border-bottom:none}}:root{--primary-color: #1e3a8a;--secondary-color: #60a5fa;--text-color: #1f2937;--muted-text: #6b7280;--gray-bg: #f9fafb;--border-radius: 16px;--box-shadow: 0 6px 16px rgba(0, 0, 0, .08)}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Inter,sans-serif;background-color:var(--gray-bg);color:var(--text-color)}.profile-wrapper{display:flex;flex-wrap:wrap;gap:2rem;max-width:1100px;margin:2rem auto;padding:0 1rem}.profile-sidebar{flex:1;max-width:280px;height:max-content;background:#fff;border-radius:var(--border-radius);box-shadow:var(--box-shadow);overflow:hidden;text-align:center;position:relative}.profile-banner{height:100px;background:linear-gradient(135deg,var(--primary-color),var(--secondary-color))}.profile-user-avatar{position:absolute;top:60px;left:50%;transform:translate(-50%)}.avatar-circle{width:80px;height:80px;border-radius:50%;backdrop-filter:blur(10px) saturate(150%);-webkit-backdrop-filter:blur(10px) saturate(150%);color:var(--primary-color);display:flex;align-items:center;justify-content:center;font-size:2.5rem;font-weight:600;border:2px solid rgba(255,255,255,.5);box-shadow:0 4px 12px #00000026}.profile-name{margin-top:50px;margin-bottom:20px;font-size:1.5rem;font-weight:600}.profile-email{font-size:.9rem;color:var(--muted-text);margin-bottom:1rem}.profile-stats{display:flex;justify-content:space-around;padding:1rem;border-top:1px solid #e5e7eb;background-color:#f9fafb}.stat span{display:block;font-size:1.2rem;font-weight:600}.stat small{font-size:.8rem;color:var(--muted-text)}.profile-main{flex:2;display:flex;flex-direction:column;gap:2rem}.profile-section{background:#fff;padding:1.5rem;border-radius:var(--border-radius);box-shadow:var(--box-shadow)}.profile-section h3{font-size:1.25rem;margin-bottom:1rem;font-weight:600;color:var(--primary-color)}.detail-item{display:flex;justify-content:space-between;padding:.75rem 0;border-bottom:1px solid #f1f5f9}.detail-item span:first-child{font-weight:500;color:var(--text-color)}.detail-item span:last-child{color:var(--muted-text)}.bookings-tabs{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.bookings-tabs .booking-card-tab{background:var(--gray-bg);padding:1rem;border-radius:12px;text-align:center;box-shadow:inset 0 1px 4px #0000000d;transition:transform .2s ease,box-shadow .2s ease;cursor:pointer}.bookings-tabs .booking-card-tab.active{background:var(--primary-color);color:#fff;box-shadow:0 4 -6px 10px #1e3a8a33}.bookings-tabs .booking-card-tab.active h4,.bookings-tabs .booking-card-tab.active p{color:#fff}.bookings-tabs .booking-card-tab:hover{transform:translateY(-4px);box-shadow:0 6px 14px #0000001a}.bookings-tabs .booking-card-tab h4{font-size:1.1rem;font-weight:600;color:var(--primary-color)}.bookings-tabs .booking-card-tab p{font-size:.9rem;color:var(--muted-text)}.booking-results{margin-top:1.5rem}.bookings-message{text-align:center;color:var(--muted-text);font-size:1rem;padding:1rem}.booking-list{display:flex;flex-direction:column;gap:1rem}.booking-list-card{background:#fff;padding:1.25rem;border-radius:12px;border:1px solid #3b82f6;box-shadow:0 4px 12px #0000000d;transition:all .3s ease;display:flex;flex-direction:column}.booking-list-card:hover{transform:translateY(-3px);box-shadow:0 6px 16px #0000001a}.booking-card-header{display:flex;justify-content:space-between;gap:5px;align-items:start;margin-bottom:.6rem;flex-wrap:wrap}.booking-card-title{display:flex;flex-direction:column;gap:5px;align-items:center;flex-wrap:wrap}.booking-card-title h4{font-size:1.1rem;font-weight:600;align-self:flex-start;color:var(--primary-color)}.booking-card-title span{font-size:.7rem;color:#fff;font-weight:500;padding:4px 8px;border-radius:20px;align-self:flex-start;background-color:#1e3a8a}.card-amount{font-size:1.1rem;font-weight:700;color:#22c55e}.card-summary{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap;padding-bottom:.75rem}.card-summary-item{display:flex;flex-direction:column;flex:1;min-width:100px}.card-summary-item small{color:var(--muted-text);font-size:.75rem;font-weight:500;margin-bottom:.25rem;display:flex;align-items:center;gap:5px}.card-summary-item span{font-size:.9rem;font-weight:600;word-wrap:break-word}.card-actions{display:flex;justify-content:flex-end;align-items:center;margin-top:1rem}.status-placeholder{font-size:.9rem;font-weight:600;color:#22c55e}.btn-cancel{background-color:#ef4444;color:#fff;border:none;padding:.5rem 1rem;border-radius:8px;font-size:.9rem;font-weight:600;align-self:self-start;cursor:pointer;transition:background-color .2s ease}.btn-cancel:disabled{background-color:#ccc;cursor:not-allowed}.btn-cancel:hover{background-color:#dc2626}.view-more-button{background-color:transparent;border:none;color:var(--primary-color);font-weight:600;cursor:pointer;transition:color .2s ease;align-self:flex-end}.view-more-button:hover{text-decoration:underline}.holiday-card-details{display:none;flex-direction:column;gap:1rem;padding-top:1rem;border-top:1px solid #e5e7eb}.holiday-card-details.expanded{display:flex}.detail-item-compact{display:flex;flex-direction:column;min-width:150px}.detail-item-compact small{font-size:.75rem;color:var(--muted-text);margin-bottom:.25rem}.detail-item-compact span{font-size:.9rem;font-weight:600;word-wrap:break-word}.booking-card-footer{margin-top:1rem;padding-top:1rem;border-top:1px solid #e5e7eb;display:flex;justify-content:flex-end}.btn-view-details{background-color:var(--primary-color);color:#fff;border:none;padding:4px 8px;border-radius:8px;font-weight:500;font-size:.8rem;cursor:pointer;transition:background-color .2s ease,transform .2s ease}.btn-view-details:hover{background-color:#1d4ed8;transform:translateY(-2px)}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#0009;display:flex;justify-content:center;align-items:center;z-index:1000;animation:fadeIn .3s ease}.modal-content{background:#fff;padding:2rem;border-radius:var(--border-radius);max-width:700px;width:90%;position:relative;max-height:90vh;overflow-y:auto;animation:slideIn .3s ease-out;-ms-overflow-style:none;scrollbar-width:none}.modal-close-button{position:absolute;top:1px;right:1px;background:transparent;border:none;font-size:1.5rem;color:var(--muted-text);cursor:pointer}.modal-title{font-size:1.5rem;font-weight:700;color:var(--primary-color);margin-bottom:1.5rem;text-align:center}.modal-loading-state,.modal-error-state{display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:200px}.modal-error-state p{color:#ef4444}.details-modal-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:1.5rem;padding-bottom:1.5rem;border-bottom:1px solid #e5e7eb}.details-modal-item{display:flex;flex-direction:column}.details-modal-item small{font-size:.8rem;font-weight:500;color:var(--muted-text);display:flex;align-items:center;gap:5px}.details-modal-item span{font-size:1rem;font-weight:600;word-wrap:break-word}.modal-section-title{font-size:1.2rem;font-weight:600;color:var(--primary-color);margin-bottom:1rem;padding-bottom:.5rem;border-bottom:1px solid #e5e7eb}.passenger-card{background-color:#f9fafb;border:1px solid #e5e7eb;padding:1rem;border-radius:8px;margin-bottom:1rem;display:flex;flex-direction:column}.passenger-header{display:flex;justify-content:space-between;align-items:center;gap:1rem}.passenger-info{display:flex;align-items:center;gap:.5rem}.passenger-name{font-size:1.1rem;font-weight:700;margin:0}.pax-type{font-size:.75rem;background:var(--primary-color);color:#fff;padding:2px 8px;border-radius:4px}.pax-status{color:#22c55e;font-weight:600}.flight-details-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.cancellation-section{display:flex;flex-direction:column;gap:1rem;padding-bottom:1rem;border-bottom:1px solid #e5e7eb;margin-bottom:1rem}.selected-pax-list{background-color:#e5e7eb;padding:1rem;border-radius:8px}.selected-pax-list h4{margin-top:0;font-size:1rem}.departure-pax,.return-pax{font-size:.9rem;color:var(--text-color);margin-top:.5rem}.departure-pax span,.return-pax span{font-weight:600}.confirm-discard-buttons{display:flex;justify-content:flex-end;gap:.5rem;margin-top:1rem}.btn-confirm-cancel,.btn-cancel-action{border:none;padding:.5rem 1rem;border-radius:8px;font-size:.9rem;font-weight:600;cursor:pointer;transition:background-color .2s ease}.btn-confirm-cancel{background-color:#22c55e;color:#fff}.btn-confirm-cancel:disabled{background-color:#ccc;cursor:not-allowed}.btn-confirm-cancel:hover{background-color:#16a34a}.btn-cancel-action{background-color:#6b7280;color:#fff}.btn-cancel-action:hover{background-color:#4b5563}.btn-cancel-passenger{background-color:#ef4444;color:#fff;border:none;padding:.5rem 1rem;border-radius:8px;font-size:.9rem;font-weight:600;cursor:pointer;transition:background-color .2s ease}.btn-cancel-passenger.selected{background-color:#6b7280}.btn-cancel-passenger.selected:hover{background-color:#4b5563}.btn-cancel-passenger:hover{background-color:#dc2626}.info-button-container{position:relative;display:inline-flex;align-items:center}.info-button{background-color:var(--muted-text);color:#fff;border-radius:50%;width:16px;height:16px;font-size:.7rem;font-weight:700;display:flex;justify-content:center;align-items:center;cursor:help;position:relative;z-index:2}.tooltip-text{visibility:hidden;width:200px;background-color:#333;color:#fff;text-align:center;border-radius:6px;padding:8px 10px;position:absolute;z-index:1;bottom:125%;left:50%;transform:translate(-50%);opacity:0;transition:opacity .3s,visibility .3s;font-size:.75rem;line-height:1.3;box-shadow:0 2px 8px #0003}.tooltip-text:after{content:"";position:absolute;top:100%;left:50%;margin-left:-5px;border-width:5px;border-style:solid;border-color:#333 transparent transparent transparent}.info-button-container:hover .tooltip-text{visibility:visible;opacity:1}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideIn{0%{transform:translateY(-20px);opacity:0}to{transform:translateY(0);opacity:1}}.profile-loading,.profile-error{text-align:center;padding:2rem;gap:10px;font-size:1rem;color:var(--muted-text);display:flex;justify-content:center;align-items:center}.profile-loading .loading-spinner{width:20px;height:20px;border:3px solid #f3f3f3;border-top:3px solid var(--primary-color);border-radius:50%;animation:spin 1s linear infinite}.loading-spinner.small{width:20px;height:20px;border-width:2px}.toast-notification{position:fixed;top:20px;right:20px;padding:1rem 1.5rem;border-radius:8px;box-shadow:0 4px 12px #00000026;color:#fff;z-index:2000;opacity:0;transform:translate(100%);transition:opacity .5s ease,transform .5s ease;font-size:.95rem;font-weight:500}.toast-notification.show{opacity:1;transform:translate(0)}.toast-notification.success{background-color:#22c55e}.toast-notification.error{background-color:#ef4444}.pax-status.status-confirmed{color:#22c55e}.pax-status.status-cancel-requested{color:#f97316}.pax-status.status-cancelled{color:#ef4444}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (max-width: 992px){.profile-wrapper{flex-direction:column}.profile-sidebar{max-width:100%}.profile-main{width:100%}}@media (max-width: 576px){.modal-content{padding:1rem}.details-modal-grid{grid-template-columns:1fr}.bookings-tabs .booking-card-tab h4{font-size:1rem}.bookings-tabs .booking-card-tab p{font-size:.8rem}.card-summary{flex-direction:column;align-items:stretch}.card-summary-item{text-align:left}.card-actions{justify-content:space-between}.passenger-header{flex-direction:column;align-items:flex-start}.cancel-buttons-container{margin-top:.5rem}.tooltip-text{width:180px;bottom:115%}}
