.time-range-slider{padding:.5rem 0}.time-range-label{font-size:.8125rem;font-weight:500;color:#6b7280;margin-bottom:.75rem}.time-range-values{display:flex;align-items:center;justify-content:center;gap:.5rem;margin-bottom:1rem}.time-value{font-size:.9375rem;font-weight:500;color:#111}.time-separator{color:#9ca3af;font-size:.875rem}.time-range-track-container{padding:.75rem 0;cursor:pointer}.time-range-track{position:relative;height:4px;background:#e5e7eb;border-radius:2px}.time-range-fill{position:absolute;height:100%;background:#007aff;border-radius:2px;pointer-events:none}.time-range-thumb{position:absolute;top:50%;transform:translate(-50%,-50%);width:18px;height:18px;background:#fff;border:2px solid #007AFF;border-radius:50%;cursor:grab;box-shadow:0 1px 3px #0000001a;-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:0}.time-range-thumb:hover{box-shadow:0 2px 8px #007aff4d}.time-range-thumb.dragging,.time-range-thumb:active{cursor:grabbing;box-shadow:0 3px 12px #007aff66}.time-range-thumb:focus{outline:none;box-shadow:0 0 0 4px #007aff26}@media (max-width: 480px){.time-range-values{font-size:.875rem}.time-range-thumb{width:20px;height:20px}}.loading-screen-overlay{width:100%;background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:4rem 2rem;margin-top:2rem;display:flex;align-items:center;justify-content:center;animation:fadeIn .3s ease-out;box-shadow:0 1px 3px #0000001a}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.loading-screen-content{max-width:600px;width:100%;text-align:center;display:flex;flex-direction:column;align-items:center;gap:2rem}.loading-animation{position:relative;width:100%;height:120px;display:flex;align-items:center;justify-content:center}.plane-container{position:relative;animation:fly 3s ease-in-out infinite}@keyframes fly{0%,to{transform:translateY(0) rotate(0)}25%{transform:translateY(-15px) rotate(-5deg)}50%{transform:translateY(0) rotate(0)}75%{transform:translateY(15px) rotate(5deg)}}.plane-icon{width:60px;height:60px;object-fit:contain;filter:drop-shadow(0 2px 12px rgba(0,0,0,.15));animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.contrail{position:absolute;left:70px;top:50%;width:150px;height:3px;background:linear-gradient(to right,rgba(0,122,255,.4),transparent);border-radius:50%;animation:contrail 1.5s ease-out infinite;transform:translateY(-50%)}.contrail-delay-1{animation-delay:.5s;opacity:.6;top:45%}.contrail-delay-2{animation-delay:1s;opacity:.3;top:55%}@keyframes contrail{0%{width:0px;opacity:.8}to{width:150px;opacity:0}}.loading-title{font-size:1.75rem;font-weight:600;color:#111;margin:0;letter-spacing:-.02em}.fact-container{max-width:520px;padding:0 1rem;animation:slideUp .5s ease-out .3s both}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.fact-text{font-size:.9375rem;line-height:1.7;color:#6b7280;margin:0;font-weight:400;letter-spacing:.01em}.loading-dots{display:flex;gap:.375rem;align-items:center;justify-content:center}.dot{width:4px;height:4px;background:#d1d5db;border-radius:50%;animation:bounce 1.4s ease-in-out infinite}.dot:nth-child(1){animation-delay:0s}.dot:nth-child(2){animation-delay:.2s}.dot:nth-child(3){animation-delay:.4s}@keyframes bounce{0%,80%,to{transform:scale(1);opacity:.4}40%{transform:scale(1.3);opacity:1}}@media (max-width: 768px){.loading-screen-overlay{padding:3rem 1.5rem}.loading-screen-content{padding:0;gap:1.5rem}.loading-title{font-size:1.5rem}.fact-container{padding:0 1rem}.fact-text{font-size:.875rem}.plane-icon{width:50px;height:50px}.loading-animation{height:100px}}@media (max-width: 480px){.loading-screen-overlay{padding:2rem 1rem;margin-top:1.5rem}.loading-screen-content{padding:0;gap:1.25rem}.loading-title{font-size:1.25rem}.fact-container{padding:0 .75rem}.fact-text{font-size:.8125rem}.plane-icon{width:45px;height:45px}.contrail{width:100px;left:55px}}.tutorial-container{max-width:1100px;margin:0 auto;padding:2rem 1.5rem 4rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;color:#111}.tutorial-container.integrated{padding-top:0;margin-top:4rem}.tutorial-header{text-align:center;margin-bottom:5rem}.tutorial-title{font-size:3.5rem;font-weight:700;letter-spacing:-.04em;margin-bottom:1.5rem;background:linear-gradient(135deg,#111,#444);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.tutorial-subtitle{font-size:1.25rem;color:#666;max-width:600px;margin:0 auto;line-height:1.6}.tutorial-grid{display:flex;flex-direction:column;gap:4rem}.tutorial-section{display:flex;align-items:center;gap:2rem}.tutorial-section.reverse{flex-direction:row-reverse}.section-content{flex:1}.section-visual{flex:1;display:flex;justify-content:center}.section-badge{display:inline-block;padding:.25rem .75rem;border-radius:99px;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.75rem}.section-badge.free{background:#f0f9ff;color:#0369a1;border:1px solid #bae6fd}.section-badge.pro{background:#fdf2f8;color:#9d174d;border:1px solid #fbcfe8}.section-heading{font-size:2.25rem;font-weight:700;letter-spacing:-.02em;margin-bottom:1rem}.section-text{font-size:1.125rem;line-height:1.6;color:#444}.visual-mock-card{background:#fff;border:1px solid #eaeaea;border-radius:20px;padding:1rem;width:100%;max-width:440px;box-shadow:0 20px 40px #0000000a;transition:transform .3s ease}.visual-mock-card:hover{transform:translateY(-5px)}.mock-toggle-row{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem;font-size:.875rem;font-weight:500;color:#444}.mock-toggle{width:32px;height:18px;background:#e5e7eb;border-radius:99px;padding:2px;position:relative;transition:background .2s ease}.mock-toggle.active{background:#111}.mock-toggle.active.max-mode{background:#db2777}.mock-toggle-thumb{width:14px;height:14px;background:#fff;border-radius:50%;position:absolute;left:2px;transition:transform .2s ease}.mock-toggle.active .mock-toggle-thumb{transform:translate(14px)}.mock-result-row{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:#f9fafb;border-radius:12px;border:1px solid #eaeaea}.mock-flight-info{display:flex;gap:1rem;align-items:center}.mock-airline-logo{width:32px;height:32px;border-radius:4px}.mock-times{font-weight:700;font-size:.9375rem}.mock-route{font-size:.8125rem;color:#666;margin-top:.25rem}.mock-price-info.award{text-align:right}.mock-points{font-weight:800;color:#111;font-size:1.125rem}.mock-miles-label{font-size:.75rem;font-weight:400;color:#666}.mock-tax{font-size:.75rem;color:#16a34a;font-weight:600;margin-top:.125rem}.aircraft-visual{padding:.5rem}.mock-seatmap-scroll{width:100%;max-height:400px;overflow-y:auto;overflow-x:hidden;border-radius:8px;background:#fff;border:1px solid #eee;scrollbar-width:thin;scrollbar-color:#ddd transparent}.mock-seatmap-scroll::-webkit-scrollbar{width:6px}.mock-seatmap-scroll::-webkit-scrollbar-track{background:transparent}.mock-seatmap-scroll::-webkit-scrollbar-thumb{background-color:#ddd;border-radius:20px}.mock-seatmap-image{width:100%;height:auto;display:block}.mock-seatmap-credit{font-size:.65rem;color:#999;text-align:center;margin-top:.75rem}.mock-seatmap-credit a{color:#666;text-decoration:underline}.mock-disclaimer{font-size:.8125rem;color:#999;margin-top:.5rem;font-style:italic}.shared-page-mock{padding:1.5rem;background:#fff;position:relative;overflow:hidden;display:flex;flex-direction:column;gap:1.25rem}.mock-header-row{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.5rem}.mock-title-main{font-size:1.5rem;font-weight:800;margin:0 0 .25rem;color:#111}.mock-airline-tag{display:flex;align-items:center;gap:6px;font-size:.75rem;font-weight:600;color:#4b5563}.mock-logo-circle{width:12px;height:12px;background:#111;border-radius:50%}.mock-author-tag{text-align:right;font-size:.7rem;display:flex;flex-direction:column;gap:2px}.mock-itin-preview{background:#f9fafb;border:1px solid #f3f4f6;border-radius:12px;padding:1rem}.mock-itin-leg{display:flex;align-items:center;justify-content:space-between}.mock-leg-left,.mock-leg-right{display:flex;flex-direction:column;gap:2px}.mock-leg-left .time,.mock-leg-right .time{font-weight:700;font-size:.85rem}.mock-leg-left .code,.mock-leg-right .code{font-size:.7rem;color:#6b7280;font-weight:600}.mock-leg-mid{flex:1;display:flex;flex-direction:column;align-items:center;padding:0 1rem}.mock-leg-mid .duration{font-size:.65rem;color:#9ca3af;margin-bottom:4px}.mock-leg-mid .line{width:100%;height:1px;background:#e5e7eb;position:relative}.mock-leg-mid .line:after{content:"✈";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:#f9fafb;padding:0 4px;font-size:10px;color:#d1d5db}.mock-cabin-row{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.mock-mini-card{border:1px solid #f0f0f0;border-radius:10px;padding:.75rem;display:flex;flex-direction:column;gap:4px}.mock-mini-card.highlighted{border-color:#111;background:#fafafa}.mock-mini-card .cabin{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.025em;color:#6b7280}.mock-mini-card.highlighted .cabin{color:#111}.mock-mini-card .price{font-size:1.125rem;font-weight:800;color:#111}.mock-share-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#fff6;-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);display:flex;align-items:center;justify-content:center;z-index:5;pointer-events:none}.mock-share-bubble{background:#111;color:#fff;padding:.6rem 1.25rem;border-radius:99px;font-size:.85rem;font-weight:700;display:flex;align-items:center;gap:8px;box-shadow:0 10px 30px #0000004d;animation:mockPop .5s cubic-bezier(.175,.885,.32,1.275) forwards}@keyframes mockPop{0%{transform:scale(.5);opacity:0}to{transform:scale(1);opacity:1}}.mock-fare-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.5rem;margin-bottom:1.5rem}.mock-fare-badge{display:flex;flex-direction:column;align-items:center;padding:.25rem .5rem;border-radius:4px;color:#fff;font-weight:700;min-width:36px;text-align:center}.mock-fare-badge.business{background:#3b82f6;border:1px solid #3b82f6}.mock-fare-badge.premium-economy{background:#8b5cf6;border:1px solid #8b5cf6}.mock-fare-badge.economy{background:#10b981;border:1px solid #10b981}.mock-fare-code{font-weight:800;font-size:.7rem}.mock-fare-count{font-size:.6rem;font-weight:500;margin-top:.05rem;opacity:.9}.mock-caption{font-size:.75rem;color:#999;text-align:center;margin:0}.mock-calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:.5rem;margin-bottom:1.5rem}.mock-cal-day{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:.75rem .25rem;border-radius:4px}.mock-cal-day.selected{background:#007aff;color:#fff}.day-num{font-size:.8125rem;font-weight:500}.day-price{font-size:11px;font-weight:600;margin-top:-2px;color:#16a34a}.mock-cal-day.selected .day-price{color:#fff;opacity:.9}.mock-cal-footer{display:flex;justify-content:center}.mock-pill{font-size:.75rem;padding:.25rem .75rem;border-radius:99px;background:#f3f4f6;color:#666}.mock-pill.selected{background:#007aff;color:#fff}.mock-chips{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem}.mock-chip{padding:.25rem .75rem;border-radius:99px;background:#f3f4f6;border:1px solid #e5e7eb;font-size:.8125rem;color:#374151;font-weight:500}.mock-chip.selected{background:#111;color:#fff;border-color:#111}.mock-multi-cabin-results{display:flex;flex-direction:column;gap:.5rem}.mock-mini-row{padding:.75rem;background:#f9fafb;border-radius:8px;font-size:.875rem;font-weight:600}.max-mode-status{display:flex;align-items:center;gap:.75rem;padding:1rem;background:#fff5f7;border-radius:12px;font-size:.875rem;color:#be185d;font-weight:500}.status-dot{width:8px;height:8px;background:#db2777;border-radius:50%}.status-dot.pulsing{animation:pulse 1.5s infinite}@keyframes pulse{0%{transform:scale(1);opacity:1}50%{transform:scale(1.5);opacity:.5}to{transform:scale(1);opacity:1}}.tutorial-footer{text-align:center;margin-top:5rem;padding:5rem 2rem;background:#f9fafb;border-radius:40px}.footer-title{font-size:2.5rem;font-weight:800;letter-spacing:-.03em;margin-bottom:2.5rem}.footer-actions{display:flex;justify-content:center;gap:1rem;flex-wrap:wrap}.cta-button{padding:1rem 2.5rem;border-radius:12px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease;border:none}.cta-button.primary{background:#111;color:#fff}.cta-button.primary:hover{background:#333;transform:translateY(-2px)}.cta-button.secondary{background:#fff;color:#111;border:1px solid #eaeaea}.cta-button.secondary:hover{background:#fafafa;border-color:#ddd;transform:translateY(-2px)}@media (max-width: 900px){.tutorial-section,.tutorial-section.reverse{flex-direction:column;text-align:center;gap:3rem}.tutorial-title{font-size:2.5rem}.section-heading,.footer-title{font-size:1.75rem}}.admin-section{display:flex;justify-content:center;align-items:flex-start;min-height:100vh;padding:2rem 1rem;background:#fafafa}.admin-dashboard{width:100%;max-width:1400px;background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a,0 1px 2px #0000000f;overflow:hidden}.admin-header{display:flex;justify-content:space-between;align-items:flex-start;padding:2rem;border-bottom:1px solid #e5e7eb;background:#fff;border-bottom:3px solid #007AFF}.admin-header h1,.admin-header p{color:#111827}.admin-title{font-size:1.875rem;font-weight:600;margin:0 0 .5rem;letter-spacing:-.5px;color:#000}.admin-subtitle{margin:0;font-size:.875rem;color:#666}.admin-back-button{padding:.625rem 1rem;font-size:.9375rem;color:#111827;background:#f3f4f6;border:1px solid #e5e7eb;border-radius:8px;cursor:pointer;transition:all .2s ease;font-weight:500}.admin-back-button:hover{background:#e5e7eb;border-color:#d1d5db;transform:translate(-2px)}.admin-error{margin:1.5rem;padding:1rem;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#991b1b;font-size:.9375rem}.admin-loading{display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:400px;gap:1rem;color:#6b7280}.spinner{width:40px;height:40px;border:4px solid #e5e7eb;border-top:4px solid #007AFF;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.admin-controls{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 2rem;background:#f9fafb;border-bottom:1px solid #e5e7eb;flex-wrap:wrap;gap:1rem}.period-selector{display:flex;gap:.75rem}.period-btn{padding:.5rem 1rem;font-size:.875rem;font-weight:500;color:#6b7280;background:#fff;border:1px solid #d1d5db;border-radius:6px;cursor:pointer;transition:all .2s ease}.period-btn:hover{border-color:#007aff;background:#f3f4f6;color:#007aff}.period-btn.active{color:#fff;background:#007aff;border-color:#007aff}.admin-timestamp{margin:0;font-size:.8125rem;color:#9ca3af}.metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;padding:2rem;background:#fff}.metric-card{padding:1.5rem;background:#fff;border:1px solid #e5e7eb;border-radius:8px;transition:all .3s ease;box-shadow:0 1px 2px #0000000d}.metric-card:hover{border-color:#007aff;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;transform:translateY(-2px)}.metric-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.metric-label{font-size:.8125rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.5px}.metric-icon{font-size:1.5rem}.metric-value{font-size:2rem;font-weight:700;color:#111827;margin-bottom:.75rem;letter-spacing:-1px}.metric-detail{font-size:.8125rem;color:#9ca3af;display:flex;gap:.5rem;flex-wrap:wrap}.activity-section{padding:2rem;border-top:1px solid #e5e7eb;background:#fff}.activity-title{margin:0 0 1.5rem;font-size:1.125rem;font-weight:600;color:#111827;letter-spacing:-.3px}.activity-list{display:flex;flex-direction:column;gap:1rem}.activity-item{display:flex;gap:1rem;padding:1rem;background:#f9fafb;border-left:3px solid #e5e7eb;border-radius:6px;transition:all .2s ease}.activity-item:hover{background:#f3f4f6;border-left-color:#007aff}.activity-search{border-left-color:#007aff}.activity-alert_created{border-left-color:#10b981}.activity-alert_triggered{border-left-color:#f59e0b}.activity-timestamp{min-width:140px;font-size:.8125rem;font-weight:500;color:#9ca3af;text-align:right}.activity-content{flex:1}.activity-type{font-size:.875rem;font-weight:600;color:#111827;margin-bottom:.25rem}.activity-description{font-size:.875rem;color:#6b7280;margin-bottom:.25rem;word-break:break-word}.activity-meta{font-size:.75rem;color:#9ca3af}@media (max-width: 1024px){.metrics-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem;padding:1.5rem}.metric-card{padding:1rem}.metric-value{font-size:1.5rem}}@media (max-width: 768px){.admin-section{padding:1rem}.admin-header{flex-direction:column;gap:1rem;padding:1.5rem}.admin-title{font-size:1.5rem}.admin-back-button{width:100%}.admin-controls{flex-direction:column;align-items:flex-start;padding:1rem}.period-selector{width:100%;justify-content:flex-start}.metrics-grid{grid-template-columns:1fr;gap:1rem;padding:1rem}.activity-item{flex-direction:column;gap:.5rem}.activity-timestamp{text-align:left}.admin-timestamp{width:100%;text-align:left}}@media (max-width: 480px){.admin-title,.metric-value{font-size:1.25rem}.metric-label{font-size:.75rem}.metric-icon{font-size:1.25rem}.period-btn{padding:.4rem .75rem;font-size:.8125rem}}.container{min-height:100vh;padding:2rem}@media (max-width: 768px){.container{padding:1rem}}@media (max-width: 640px){.container{padding:.75rem}}.main{width:100%;max-width:1200px;margin:0 auto;padding-top:1.25rem;padding-bottom:4rem}.content{text-align:center;animation:fadeIn .8s ease-in;max-width:600px;margin:0 auto}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.title{font-size:clamp(2.5rem,8vw,4rem);font-weight:300;letter-spacing:-.02em;line-height:1.1;margin-bottom:1.5rem;color:#000}.subtitle{font-size:clamp(1rem,3vw,1.125rem);font-weight:400;line-height:1.6;color:#666;margin-bottom:3rem;max-width:500px;margin-left:auto;margin-right:auto}.form{margin-bottom:3rem}.input-group{display:flex;gap:.75rem;margin-bottom:.5rem;flex-direction:column}@media (min-width: 640px){.input-group{flex-direction:row}}.phone-input{flex:1;padding:1rem 1.25rem;font-size:1rem;border:1px solid #e0e0e0;border-radius:8px;background:#fff;transition:all .2s ease;outline:none}.phone-input:focus{border-color:#000;box-shadow:0 0 0 3px #0000000d}.phone-input.error{border-color:#dc2626}.phone-input::placeholder{color:#999}.submit-button{padding:1rem 2rem;font-size:1rem;font-weight:500;color:#fff;background:#000;border:none;border-radius:8px;cursor:pointer;transition:all .2s ease;white-space:nowrap}.submit-button:hover:not(:disabled){background:#333;transform:translateY(-1px);box-shadow:0 4px 12px #00000026}.submit-button:active:not(:disabled){transform:translateY(0)}.submit-button:disabled{background:#4ade80;cursor:default}.error-message{color:#dc2626;font-size:.875rem;margin-top:.5rem;animation:shake .3s ease}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}.success-message{color:#16a34a;font-size:.875rem;margin-top:.5rem;animation:fadeIn .3s ease}.value-proposition{margin-top:4rem;padding:2.5rem 2rem;background:#fafafa;border-radius:12px;border:1px solid #f0f0f0}.value-divider{width:40px;height:2px;background:#000;margin:0 auto 1.5rem}.value-title{font-size:1.5rem;font-weight:400;text-align:center;margin-bottom:1rem;color:#000;letter-spacing:-.01em}.value-description{font-size:1rem;line-height:1.7;color:#555;text-align:center;max-width:550px;margin:0 auto}.imessage-examples{margin-top:4rem;display:flex;flex-direction:row;gap:1.5rem;width:100%;padding:0 1rem}.imessage-container{flex:1;min-width:0;padding:2.5rem 2rem;background:#fff;border-radius:20px;box-shadow:0 2px 8px #00000014;display:flex;flex-direction:column;gap:.5rem}.imessage-bubble{max-width:70%;padding:.65rem .95rem;border-radius:18px;position:relative;animation:fadeIn .3s ease;display:inline-block;word-wrap:break-word}.imessage-bubble p{margin:0;font-size:1rem;line-height:1.4}.imessage-bubble.client{align-self:flex-end;background:#007aff;color:#fff;border-bottom-right-radius:4px;margin-left:auto}.imessage-bubble.advisor{align-self:flex-start;background:#e9e9eb;color:#000;border-bottom-left-radius:4px;margin-right:auto}.imessage-time{display:block;font-size:.6875rem;color:#8e8e93;padding:.15rem .5rem;align-self:center;opacity:.8}.imessage-bubble.client+.imessage-bubble.client .imessage-time,.imessage-bubble.advisor+.imessage-bubble.advisor .imessage-time{display:none}@media (max-width: 1024px){.imessage-examples{flex-direction:column;padding:0 2rem;gap:2rem}}@media (max-width: 640px){.imessage-examples{padding:0 1rem}.imessage-container{padding:1.5rem 1rem}.imessage-bubble{max-width:80%}.imessage-bubble p{font-size:.9375rem}}.partners{padding-top:3rem;margin-top:3rem;position:relative}.partners:before{content:"";position:absolute;top:0;left:50%;transform:translate(-50%);width:80px;height:1px;background:#e0e0e0}.partners-text{font-size:.875rem;color:#999;line-height:1.6;font-weight:400}.section{margin-top:4rem;padding:3rem 2rem;max-width:900px;margin-left:auto;margin-right:auto;position:relative}.section-divider{width:60px;height:1px;background:#000;margin:0 auto 2rem}.section-title{font-size:clamp(1.75rem,4vw,2.5rem);font-weight:300;letter-spacing:-.02em;text-align:center;margin-bottom:2rem;color:#000}.benefits-intro{text-align:center;font-size:1.0625rem;color:#666;margin-bottom:2rem;font-weight:400}.benefits-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;margin-top:2rem}.benefit-card{text-align:center;padding:2.5rem 2rem;background:#fff;border-radius:12px;border:1px solid #f0f0f0;transition:all .2s ease}.benefit-card:hover{border-color:#e0e0e0;transform:translateY(-2px);box-shadow:0 4px 12px #0000000f}.benefit-title{font-size:1.125rem;font-weight:500;margin-bottom:.75rem;color:#000}.benefit-description{font-size:.9375rem;line-height:1.6;color:#666}.benefits-disclaimer{text-align:center;font-size:.8125rem;color:#999;margin-top:2rem;font-style:italic}.about-section{padding:3rem 2rem}.about-content{max-width:700px;margin:0 auto;padding:2.5rem 2rem;background:#fff;border-radius:12px;border:1px solid #f0f0f0;position:relative;display:flex;flex-direction:column;align-items:center;gap:2rem}.about-content:before{content:"";position:absolute;top:0;left:50%;transform:translate(-50%);width:40px;height:2px;background:#000}.about-image{width:150px;height:150px;border-radius:50%;object-fit:cover;object-position:25% center;border:2px solid #f0f0f0}.about-text{font-size:1.0625rem;line-height:1.8;color:#444;text-align:center}.video-showcase{margin-top:3rem;width:100vw;position:relative;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw}.video-showcase-title{font-size:1.5rem;font-weight:400;text-align:center;margin-bottom:2rem;color:#000;letter-spacing:-.01em}.videos-grid{display:flex;gap:1.5rem;overflow-x:auto;overflow-y:hidden;scroll-behavior:smooth;padding:1rem 2rem 2rem;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:#e0e0e0 transparent}.videos-grid::-webkit-scrollbar{height:6px}.videos-grid::-webkit-scrollbar-track{background:transparent}.videos-grid::-webkit-scrollbar-thumb{background:#e0e0e0;border-radius:3px}.videos-grid::-webkit-scrollbar-thumb:hover{background:#ccc}.video-container{flex:0 0 450px;position:relative;padding-bottom:253px;height:0;overflow:hidden;background:#000;border-radius:8px;border:1px solid #f0f0f0}.video-container iframe{position:absolute;top:0;left:0;width:100%;height:100%;border-radius:8px}@media (max-width: 640px){.video-container{flex:0 0 320px;padding-bottom:180px}}.photos-showcase{margin-top:3rem;width:100vw;position:relative;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw}.photos-grid{display:flex;gap:1.5rem;overflow-x:auto;overflow-y:hidden;scroll-behavior:smooth;padding:1rem 2rem 2rem;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:#e0e0e0 transparent}.photos-grid::-webkit-scrollbar{height:6px}.photos-grid::-webkit-scrollbar-track{background:transparent}.photos-grid::-webkit-scrollbar-thumb{background:#e0e0e0;border-radius:3px}.photos-grid::-webkit-scrollbar-thumb:hover{background:#ccc}.photo-card{flex:0 0 350px;display:flex;flex-direction:column;background:#fff;border-radius:8px;overflow:hidden;border:1px solid #f0f0f0}.photo-image{width:100%;height:250px;object-fit:cover;display:block}.photo-caption{padding:1rem 1.25rem;font-size:.9375rem;color:#444;text-align:center;margin:0;font-weight:400}@media (max-width: 640px){.photo-card{flex:0 0 280px}.photo-image{height:200px}}.testimonials-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;margin-top:2rem}.testimonial-card{background:#fff;border-radius:12px;padding:2rem;border:1px solid #f0f0f0;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease;position:relative}.testimonial-card:hover{transform:translateY(-2px);border-color:#e0e0e0;box-shadow:0 4px 12px #0000000f}.testimonial-image-card{padding:0;overflow:hidden;display:flex;flex-direction:column}.testimonial-image{width:100%;flex:1;object-fit:cover;display:block;border-radius:12px 12px 0 0}.testimonial-caption{padding:1.25rem 1.5rem;background:#fff;border-radius:0 0 12px 12px}.testimonial-caption p{font-size:.875rem;color:#666;text-align:center;margin:0;line-height:1.5}.testimonial-bar{width:30px;height:2px;background:#000;margin-bottom:1.5rem}.testimonial-quote{font-size:.9375rem;line-height:1.7;color:#444;margin-bottom:1rem;font-style:italic}.testimonial-author{font-size:.875rem;color:#999;font-weight:500}@media (max-width: 640px){.container{padding:1.5rem}.main{padding-top:2rem;padding-bottom:2rem}.title{margin-bottom:1rem}.subtitle,.form{margin-bottom:2rem}.value-proposition{margin-top:3rem;padding:2rem 1.5rem}.value-title{font-size:1.25rem}.value-description{font-size:.9375rem}.section{margin-top:3rem;padding:2rem 1rem}.section-title{margin-bottom:1.5rem}.benefits-grid,.testimonials-grid{gap:1.5rem}}.topbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.5rem .75rem;flex-wrap:wrap;min-height:56px}.topbar-left{display:flex;align-items:center;gap:12px}.topbar-right{display:inline-flex;align-items:center;gap:12px;position:relative;flex-wrap:wrap}.user-summary{display:inline-flex;align-items:center;gap:6px;color:#333;font-size:.92rem;max-width:240px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-fullname{overflow:hidden;text-overflow:ellipsis}.currency-select{display:inline-flex;align-items:center;height:36px}.currency-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid #eaeaea;background:#fff;color:#333;border-radius:9999px;padding:0 12px;height:36px;display:inline-flex;align-items:center;gap:6px;cursor:pointer;font-size:.9rem;transition:background .15s ease,border-color .15s ease,box-shadow .15s ease}.currency-btn:hover{background:#fafafa;border-color:#e0e0e0}.currency-btn.open{box-shadow:0 0 0 4px #0000000a}.currency-caret{font-size:.8rem;opacity:.7}.currency-menu{position:absolute;top:calc(100% + 8px);min-width:140px;background:#fff;border:1px solid #eaeaea;border-radius:10px;box-shadow:0 12px 30px #0000001a;padding:6px;z-index:200}.currency-item{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:transparent;width:100%;text-align:left;color:#111;border-radius:8px;padding:8px 10px;cursor:pointer;font-size:.95rem}.currency-item:hover{background:#f7f7f7}.currency-item.active{font-weight:600}.user-menu{position:relative;display:inline-flex;align-items:center}.avatar-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid #eaeaea;background:#fff;color:#333;width:36px;height:36px;border-radius:9999px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background .15s ease,border-color .15s ease,box-shadow .15s ease}.avatar-button:hover{background:#fafafa;border-color:#e0e0e0}.avatar-button.open{box-shadow:0 0 0 4px #0000000a}.menu{position:absolute;right:0;top:calc(100% + 8px);min-width:180px;background:#fff;border:1px solid #eaeaea;border-radius:10px;box-shadow:0 12px 30px #0000001a;padding:6px;z-index:100}.menu-item{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:transparent;width:100%;text-align:left;font-size:.92rem;color:#333;border-radius:8px;padding:8px 10px;cursor:pointer;display:flex;align-items:center;gap:8px;text-decoration:none}.menu-item:hover{background:#f7f7f7}.menu-item.danger{color:#b91c1c}.menu-separator{height:1px;background:#f0f0f0;margin:4px 6px}.menu-logo-badge{width:16px;height:16px;border-radius:4px;object-fit:cover}.account-pro-cta{display:inline-flex;align-items:center;justify-content:center;gap:8px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#fff;color:#111;text-decoration:none;border:1.5px solid #dfe3ea;border-radius:14px;padding:12px 16px;font-size:.95rem;font-weight:500;letter-spacing:-.01em;width:min(420px,100%);transition:background .14s ease,border-color .14s ease,box-shadow .14s ease}.account-pro-cta:hover{background:#fafafa;border-color:#cfd6e0}.account-pro-cta:active{background:#f5f7fa}.account-pro-cta:focus-visible{outline:none;box-shadow:0 0 0 4px #007aff14}.account-pro-cta .menu-logo-badge{width:24px;height:24px}.account-pro-block{display:flex;flex-direction:column;align-items:center;gap:12px;margin-top:18px}.account-section-divider{height:1px;width:100%;max-width:462px;background:#f0f0f0}.account-status{color:#374151;font-size:.95rem}.brand{display:flex;align-items:center;gap:.5rem;cursor:pointer}.brand-mark{width:42px;height:42px;border-radius:6px;object-fit:cover}.brand-name{font-size:1rem;font-weight:600;letter-spacing:-.01em}.tabs{display:inline-flex;background:#f5f5f5;border:1px solid #ececec;border-radius:9999px;padding:0;gap:4px}.tab-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:transparent;padding:.4375rem .9rem;border-radius:9999px;font-size:.9375rem;color:#666;cursor:pointer;transition:all .2s ease;border:1px solid transparent}.tab-button:hover{color:#111}.tab-button.active{background:#fff;color:#111;box-shadow:0 1px 2px #0000000a;border:1px solid #eaeaea}.login-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid #eaeaea;background:#fff;color:#111;padding:.5rem .9rem;border-radius:9999px;font-size:.9375rem;cursor:pointer;transition:all .2s ease}.login-button:hover{background:#fafafa;border-color:#e0e0e0}.login-button:focus{outline:none;box-shadow:0 0 0 4px #0000000a}.hamburger-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid #eaeaea;background:#fff;color:#111;width:36px;height:36px;border-radius:9999px;display:none;align-items:center;justify-content:center;cursor:pointer;transition:background .15s ease,border-color .15s ease,box-shadow .15s ease;padding:0}.hamburger-button:hover{background:#fafafa;border-color:#e0e0e0}.hamburger-button.open{box-shadow:0 0 0 4px #0000000a}.hamburger-icon{position:relative;width:18px;height:2px;background:currentColor;border-radius:2px}.hamburger-icon:before,.hamburger-icon:after{content:"";position:absolute;left:0;width:18px;height:2px;background:currentColor;border-radius:2px}.hamburger-icon:before{top:-6px}.hamburger-icon:after{top:6px}.mobile-menu{min-width:220px}.mobile-tabs{display:inline-flex;gap:6px;background:#f5f5f5;border:1px solid #ececec;border-radius:9999px;padding:4px}@media (max-width: 640px){.tabs,.login-button,.user-menu{display:none!important}.hamburger-button{display:inline-flex}.topbar{padding:.5rem .75rem;gap:.5rem}.brand-name{display:none}.brand-mark{width:36px;height:36px}.topbar-right{gap:8px}.currency-select{height:32px}.currency-btn{height:32px;padding:0 8px;font-size:.85rem}.user-summary{max-width:120px;font-size:.8rem}}.seats-connect{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid #eaeaea;background:#fff;color:#111;text-decoration:none;padding:.6rem 1rem;border-radius:12px;font-size:.9375rem;cursor:pointer;transition:all .2s ease;display:inline-flex;align-items:center;gap:8px;box-shadow:0 1px 2px #0000000a}.seats-connect:hover{background:#fafafa;border-color:#e0e0e0}.seats-logo{width:18px;height:18px;border-radius:4px;object-fit:contain;display:inline-block}.auth-section{display:flex;align-items:center;justify-content:center;width:100%;padding:2rem 1rem 3rem}.price-alerts-section{align-items:flex-start;padding:3rem 1.5rem 4rem;background:#fff}.price-alerts-wrapper{width:100%;max-width:1240px;margin:0 auto;display:flex;flex-direction:column;gap:1.5rem}.price-alerts-header{text-align:left;padding:0 .25rem}.price-alerts-header .auth-title,.price-alerts-section .error-message{text-align:left;margin-bottom:.5rem}.price-alerts-subtitle{margin:0;max-width:640px}.price-alerts-grid{display:grid;grid-template-columns:1fr;gap:1.5rem}@media (min-width: 1024px){.price-alerts-grid{grid-template-columns:minmax(360px,.95fr) minmax(420px,1.05fr)}}.price-alerts-card{background:#fff;border:1px solid #f0f0f0;border-radius:16px;padding:1.5rem;box-shadow:0 8px 30px #0000000a}.price-alerts-form-card{align-self:flex-start}@media (min-width: 1280px){.price-alerts-form-card{position:sticky;top:1rem}}.price-alerts-list-card{min-height:100%;display:flex;flex-direction:column}.price-alerts-card .account-section-divider{max-width:100%}.price-alerts-lists{display:flex;flex-direction:column;gap:1.25rem}.price-alerts-list-header{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem;margin-bottom:.35rem}.price-alerts-list-header h2{margin:0;font-size:1.1rem;font-weight:600}.price-alerts-count{font-size:.9rem;color:#111;font-weight:600}@media (max-width: 640px){.price-alerts-section{padding:2.5rem 1rem 3rem}.price-alerts-card{padding:1.25rem}}.auth-card{width:100%;max-width:420px;background:#fff;border:1px solid #f0f0f0;border-radius:14px;padding:1.25rem}.account-card{width:100%;max-width:462px;background:#fff;border:1px solid #f0f0f0;border-radius:14px;padding:1.25rem 1.25rem 6rem;position:relative}.auth-title{font-size:1.5rem;font-weight:400;color:#000;letter-spacing:-.01em;margin-bottom:1rem;text-align:center}.auth-form{display:flex;flex-direction:column;gap:.75rem;margin-top:.25rem}.input-wrap{position:relative}.toggle-visibility{position:absolute;right:10px;top:50%;transform:translateY(-50%);-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid #efefef;background:#fafafa;color:#666;border-radius:8px;width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background .15s ease,border-color .15s ease}.toggle-visibility:hover{background:#fff;border-color:#e4e4e4}.match-hint{margin-top:6px;font-size:.85rem}.match-hint.valid{color:#16a34a}.match-hint.invalid{color:#b91c1c}.rule-hint{margin-top:6px;font-size:.85rem}.rule-hint.valid{color:#16a34a}.rule-hint.invalid{color:#b91c1c}.auth-submit{padding:.9rem 1.2rem;font-size:.95rem;font-weight:600;color:#fff;background:#000;border:1px solid #000000;border-radius:12px;cursor:pointer;transition:all .2s ease;width:100%;margin-top:.25rem}.auth-submit:hover{background:#222;border-color:#222;transform:translateY(-1px);box-shadow:0 6px 18px #0000001f}.auth-alt{display:flex;justify-content:center;align-items:center;gap:8px;margin-top:.75rem}.muted{color:#666;font-size:.9rem}.flights-section{margin-top:0}.flights-hero{display:flex;flex-direction:column;align-items:center}.flights-card{width:100%;max-width:1200px;background:#fff;border:1px solid #f0f0f0;border-radius:16px;padding:1.25rem;box-shadow:0 8px 30px #0000000a;position:relative;container-type:inline-size}.reset-btn{position:absolute;top:12px;right:12px;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:transparent;display:inline-flex;align-items:center;gap:6px;padding:6px 8px;border-radius:6px;color:#6b7280;cursor:pointer;font-size:.875rem}.reset-btn:hover{background:#f5f5f5;color:#374151}.reset-btn:focus-visible{outline:2px solid #d1d5db;outline-offset:2px}.reset-btn svg{width:16px;height:16px}@media (max-width: 640px){.reset-btn{display:none}}.flights-hero-copy{text-align:center;margin-bottom:.75rem}.flights-title{font-size:clamp(1.75rem,5vw,2.5rem);font-weight:300;letter-spacing:-.02em;line-height:1.15;text-align:center;margin-bottom:.75rem;color:#000}.flights-subtitle{font-size:clamp(.95rem,2.4vw,1.05rem);line-height:1.5;color:#666;text-align:center}.trip-row{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;margin-bottom:1rem}.trip-toggle{display:inline-flex;background:#fafafa;border:1px solid #efefef;border-radius:9999px;padding:4px;gap:4px;margin-bottom:0}.segment{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:transparent;padding:.5rem .9rem;border-radius:9999px;font-size:.9rem;color:#666;cursor:pointer;transition:all .2s ease}.segment.active{background:#fff;color:#111;box-shadow:0 1px 2px #0000000a;border:1px solid #eaeaea}.segment:disabled{opacity:.5;cursor:not-allowed;border:1px dashed #e5e5e5}.soon-badge{margin-left:.4rem;font-size:.7rem;background:#f1f1f1;color:#666;padding:2px 6px;border-radius:9999px;border:1px solid #e9e9e9}@media (max-width: 640px){.trip-toggle{padding:2px;gap:3px;margin-bottom:0}.segment{padding:.4rem .7rem;font-size:.85rem}.soon-badge{font-size:.62rem;padding:1px 5px}}.flight-form{display:flex;flex-direction:column;gap:1rem}.inputs-grid{display:grid;grid-template-columns:minmax(320px,1.35fr) minmax(320px,1.35fr) minmax(200px,.8fr) minmax(280px,1.2fr);gap:.75rem}@media (max-width: 1300px){.inputs-grid .cabins{grid-column:1 / -1}}@media (max-width: 1200px){.inputs-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.inputs-grid .cabins{grid-column:1 / -1}}@media (max-width: 900px){.inputs-grid{grid-template-columns:1fr 1fr}.inputs-grid .cabins{grid-column:1 / -1}}@container (max-width: 1156px){.inputs-grid{grid-template-columns:1fr 1fr 1fr}.inputs-grid .cabins{grid-column:1 / -1}}@container (max-width: 760px){.inputs-grid{grid-template-columns:1fr}.inputs-grid .cabins{grid-column:1 / -1}}@media (min-width: 780px) and (max-width: 1100px){.flights-title{font-size:clamp(1.75rem,4.3vw,2.3rem)}}@media (max-width: 640px){.inputs-grid{grid-template-columns:1fr}}.field{display:flex;flex-direction:column;gap:.4rem;min-width:0}.date-field{position:relative}.label{font-size:.8rem;color:#777}.passenger-selector{position:relative}.passenger-trigger{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid #e5e7eb;background:#fff;border-radius:9999px;padding:.45rem .9rem;display:inline-flex;align-items:center;gap:.35rem;font-size:.95rem;font-weight:600;color:#111;cursor:pointer;transition:border-color .2s ease,box-shadow .2s ease}.passenger-trigger:hover{border-color:#111}.passenger-trigger.open{border-color:#111;box-shadow:0 0 0 4px #0000000d}.passenger-icon{display:inline-flex;align-items:center;justify-content:center}.passenger-icon svg{display:block}.passenger-count{min-width:1.25rem;text-align:center}.passenger-dropdown{position:absolute;top:calc(100% + 10px);right:0;z-index:30;width:min(360px,90vw);background:#fff;border:1px solid #e5e7eb;border-radius:10px;box-shadow:0 12px 30px #0000001f;padding:12px}.pro-filters-inline{display:flex;flex-direction:column;gap:.4rem;width:100%}.pro-filters-toggles{display:flex;flex-wrap:wrap;gap:.75rem;align-items:stretch}.pro-filters-inline .flex-check{margin:0}.input{width:100%;padding:.9rem 1rem;font-size:.95rem;border:1px solid #eaeaea;border-radius:12px;outline:none;background:#fff;transition:border-color .2s ease,box-shadow .2s ease}.input:focus{border-color:#111;box-shadow:0 0 0 4px #0000000a}.hint{font-size:.75rem;color:#9a9a9a}.date-trigger{display:flex;align-items:center;justify-content:space-between;cursor:pointer}.date-popover{position:absolute;top:100%;left:0;z-index:50;background:#fff;border:1px solid #eaeaea;border-radius:14px;box-shadow:0 12px 30px #0000001f;padding:.5rem;min-width:320px}.date-popover .MuiDateCalendar-root{height:330px;width:320px;overflow:hidden}.date-popover .MuiDayCalendar-monthContainer{overflow:visible}.date-popover .MuiPickersCalendarHeader-root{margin-top:0;padding-top:0;padding-bottom:0;margin-bottom:0;min-height:28px}.date-popover .MuiDayCalendar-header{padding-top:0;padding-bottom:0;margin-top:0;margin-bottom:-4px}.date-popover .MuiDayCalendar-weekContainer{margin-top:0;margin-bottom:0}.date-popover .MuiDayCalendar-weekContainer:first-of-type{margin-top:-4px}.date-popover .MuiPickersDay-root{margin-top:0;margin-bottom:0;position:relative}.date-popover .MuiPickersDay-root.MuiPickersDay-today,.date-popover .MuiPickersDay-root.MuiPickersDay-today.Mui-selected{border:none}.date-popover .MuiPickersDay-root.Mui-selected{background-color:transparent;color:#111}.date-popover .MuiPickersDay-root.Mui-selected:hover,.date-popover .MuiPickersDay-root.Mui-selected.Mui-focusVisible{background-color:transparent}.date-popover .MuiPickersDay-root.Mui-selected:after{content:"";position:absolute;top:4px;right:4px;width:0;height:0;border-top:7px solid #007AFF;border-left:7px solid transparent;pointer-events:none}.date-footer{display:flex;justify-content:space-between;align-items:center;padding:2px 6px}.date-footer .left-group{display:inline-flex;align-items:center;gap:10px}.phone-selector-container{display:flex;gap:8px;width:100%}.country-select-wrapper{position:relative;width:120px;flex-shrink:0}.country-btn{width:100%;height:42px;padding:0 12px;background:#fff;border:1px solid #eaeaea;border-radius:8px;font-size:.9375rem;color:#111;display:flex;align-items:center;justify-content:space-between;cursor:pointer;transition:all .2s ease}.country-btn:hover{background:#fafafa;border-color:#d1d1d1}.country-btn.open{border-color:#007aff;box-shadow:0 0 0 2px #007aff1a}.country-btn-label{display:flex;align-items:center;gap:6px}.country-menu{position:absolute;top:calc(100% + 6px);left:0;width:280px;max-height:320px;background:#fff;border:1px solid #eaeaea;border-radius:12px;box-shadow:0 12px 40px #0000001f;z-index:1000;display:flex;flex-direction:column;overflow:hidden;animation:slideInDown .2s ease-out}@keyframes slideInDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.country-menu-search{padding:10px;border-bottom:1px solid #f0f0f0;background:#fafafa}.country-search-input{width:100%;height:34px;padding:0 10px;border:1px solid #eaeaea;border-radius:6px;font-size:.875rem;outline:none}.country-search-input:focus{border-color:#007aff}.country-menu-list{flex:1;overflow-y:auto;padding:6px}.country-item{width:100%;padding:10px;border:none;background:transparent;display:flex;align-items:center;gap:10px;cursor:pointer;border-radius:6px;text-align:left;transition:background .15s ease}.country-item:hover{background:#f5f5f5}.country-item.active{background:#f0f7ff;color:#007aff}.country-item-flag{font-size:1.25rem;width:24px}.country-item-name{flex:1;font-size:.9375rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.country-item-code{font-size:.875rem;color:#666;font-variant-numeric:tabular-nums}.country-item.active .country-item-code{color:#007aff}.country-no-results{padding:20px;text-align:center;color:#999;font-size:.875rem}.phone-body-input{flex:1;height:42px;padding:0 12px;background:#fff;border:1px solid #eaeaea;border-radius:8px;font-size:.9375rem;color:#111;transition:all .2s ease}.phone-body-input:focus{outline:none;border-color:#007aff;box-shadow:0 0 0 2px #007aff1a}.flex-check{display:inline-flex;align-items:center;gap:6px;color:#555;font-size:.85rem}.flex-check input[type=checkbox]{width:14px;height:14px}.nonstop-toggle,.points-toggle{cursor:pointer;-webkit-user-select:none;user-select:none}.flex-check.disabled{cursor:default}.flex-check.disabled input[type=checkbox]{cursor:not-allowed}.points-toggle .hint-bubble{white-space:normal;min-width:280px;max-width:320px;padding:.75rem;text-align:left}.actions-left{display:flex;gap:16px;align-items:center}.nonstop-toggle input[type=checkbox],.points-toggle input[type=checkbox]{width:18px;height:18px;accent-color:#000000;cursor:pointer}.nonstop-toggle span{cursor:pointer}.flex-icon{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:9999px;border:1px solid #ddd;color:#666;font-size:.68rem;cursor:default;user-select:none;-webkit-user-select:none}.done-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid #e0e0e0;background:#fafafa;color:#333;border-radius:8px;padding:4px 10px;cursor:pointer;font-size:.85rem}.done-button:hover{background:#fff}.reset-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid #e0e0e0;background:#fff;color:#666;border-radius:8px;padding:4px 10px;cursor:pointer;font-size:.82rem}.reset-button:hover{background:#fafafa}.rdp{--rdp-accent-color: #111111;--rdp-accent-color-dark: #111111;--rdp-outline: 2px solid rgba(0,0,0,.1);margin:0}.chips{display:flex;flex-wrap:wrap;gap:.5rem;min-width:0;max-width:100%}.chip{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid #eaeaea;background:#fff;color:#444;border-radius:8px;padding:.5rem .8rem;font-size:.85rem;cursor:pointer;transition:all .2s ease}.cabins .chip{border-radius:9999px}.chip:hover{border-color:#dcdcdc}.chip.selected{background:#111;color:#fff;border-color:#111}.actions{display:flex;justify-content:space-between;align-items:center}.actions-left{display:inline-flex;align-items:center;gap:12px}.search-button{padding:.9rem 1.2rem;font-size:.95rem;font-weight:600;color:#fff;background:#000;border:1px solid #000000;border-radius:12px;cursor:pointer;transition:all .2s ease}.search-button:hover{background:#222;border-color:#222;transform:translateY(-1px);box-shadow:0 6px 18px #0000001f}.search-button:disabled{background:#d1d5db;border-color:#d1d5db;color:#fff;cursor:not-allowed;transform:none;box-shadow:none}.typewriter-cursor{display:inline-block;margin-left:2px;animation:blink .7s infinite;font-weight:400;color:#007aff}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}@media (max-width: 900px){.actions{flex-direction:column;gap:1.25rem;align-items:stretch}.actions-left{width:100%;flex-direction:column;align-items:flex-start;gap:10px}.search-button{width:100%}}@media (max-width: 640px){.search-button{padding:.65rem .9rem;font-size:.875rem;font-weight:500;border-radius:10px}}.results-section{margin-top:1.25rem;width:100%;align-self:stretch}.results-toolbar{display:flex;justify-content:flex-end;align-items:center;gap:16px;margin:1.25rem 0 .75rem;padding-right:8px;overflow-x:auto;-webkit-overflow-scrolling:touch}@media (max-width: 768px){.results-toolbar{flex-wrap:wrap;justify-content:flex-start;padding:0 8px 12px;gap:12px;margin:.75rem 0 .5rem}}@media (max-width: 640px){.results-toolbar{padding:0 8px 8px;gap:8px}}.mobile-cabin-toggle{display:flex;align-items:center;gap:8px;padding:0 12px 12px;flex-wrap:wrap}.mobile-cabin-toggle-label{text-transform:uppercase;font-size:.78rem;letter-spacing:.05em;color:#6b7280;font-weight:600}.mobile-cabin-toggle-buttons{display:flex;gap:6px;flex-wrap:wrap}.mobile-cabin-tab{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid #e5e7eb;background:#fff;color:#4b5563;border-radius:9999px;padding:5px 12px;font-size:.85rem;font-weight:500;cursor:pointer;transition:all .2s ease}.mobile-cabin-tab.active{background:#111;border-color:#111;color:#fff}.sort-mode-toggle{display:flex;align-items:center;gap:8px;margin-right:auto;padding-left:16px}.sort-mode-label{font-size:.8125rem;font-weight:500;color:#666}.sort-mode-buttons{display:inline-flex;background:#f5f5f5;border:1px solid #ececec;border-radius:9999px;padding:3px;gap:3px}.sort-mode-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:transparent;padding:.375rem .75rem;border-radius:9999px;font-size:.8125rem;color:#666;cursor:pointer;transition:all .2s ease}.sort-mode-btn:hover{color:#111}.sort-mode-btn.active{background:#fff;color:#111;box-shadow:0 1px 2px #0000000a;border:1px solid #eaeaea}.sort-mode-btn.active:hover{background:#fff;color:#111}.filters-header{display:flex;justify-content:space-between;align-items:center;padding:16px 12px 0}.filters-toggle{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid #eaeaea;background:#fafafa;color:#333;border-radius:10px;padding:6px 10px;cursor:pointer;font-size:.9rem;display:inline-flex;align-items:center;gap:8px}.filters-toggle.open{background:#fff}.filters-toggle .arrow{font-size:.8rem;line-height:1}.filters-panel{display:flex;gap:12px;padding:12px;flex-wrap:wrap}.price-trends-panel{padding:1rem;border-bottom:1px solid #f0f0f0;animation:slideDown .3s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.filter-box{background:#fff;border:1px solid #f0f0f0;border-radius:12px;padding:12px;width:240px;flex-shrink:0;position:relative}.filter-box-times{width:280px}.dropdown-header{width:100%;display:flex;align-items:center;justify-content:space-between;gap:8px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#fafafa;border:1px solid #eaeaea;border-radius:10px;padding:8px 10px;cursor:pointer;font-size:.9rem}.dropdown-header.open{background:#fff}.dropdown-content{position:absolute;top:100%;left:0;right:0;margin-top:4px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:12px;box-shadow:0 4px 12px #0000001a;z-index:100}.dropdown-content .scroll{max-height:264px;overflow-y:auto;overflow-x:hidden;padding-right:4px}.filter-title{font-weight:600;margin-bottom:8px;font-size:.95rem}.airline-mode{display:inline-flex;gap:6px;margin-bottom:8px}.pill{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid #eaeaea;background:#fafafa;color:#666;border-radius:9999px;padding:5px 12px;cursor:pointer;font-size:.82rem;font-weight:500;transition:all .2s ease}.pill:hover{border-color:#d0d0d0;background:#f0f0f0}.pill.active{background:#111;border-color:#111;color:#fff;font-weight:600}.airline-chips{display:grid;grid-template-columns:1fr;gap:6px}.stops-chips,.aircraft-chips{display:flex;flex-direction:column;gap:4px}.airline-chip,.stops-chips .chip,.aircraft-chips .chip{display:flex;align-items:center;gap:6px;width:100%;justify-content:flex-start;text-align:left}.airline-chip .airline-logo{width:18px;height:18px;border-radius:4px;border:1px solid #f0f0f0;background:#fff}.time-range-group{display:flex;flex-direction:column;gap:10px}.time-row{display:flex;flex-direction:column;gap:6px}.time-label{font-size:.85rem;color:#666}.range-wrap input[type=range]{width:100%}.range-wrap.overlay{position:relative;height:26px}.range-wrap.overlay input[type=range]{position:absolute;left:0;right:0;top:0;background:transparent}.range-wrap.overlay input[type=range]:first-child{z-index:2}.range-labels{display:flex;justify-content:space-between;font-size:.85rem;color:#444;margin-top:4px}.routes-hint{text-align:center;font-size:.9rem;color:#666;margin-top:.5rem}.routes-hint.error{color:#b91c1c}.filter-label{font-size:.9rem;color:#666}.filter-input{width:260px;max-width:100%;padding:.6rem .85rem;font-size:.95rem;border:1px solid #eaeaea;border-radius:12px;outline:none;background:#fff;transition:border-color .2s ease,box-shadow .2s ease}.filter-input:focus{border-color:#111;box-shadow:0 0 0 4px #0000000a}.m-badge{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;font-size:.68rem;font-weight:700;color:#fff;background:#0a84ff;border-radius:4px;margin-left:4px}.results-card{width:100%;background:#fff;border:1px solid #f0f0f0;border-radius:16px;box-shadow:0 8px 30px #0000000a;overflow:visible;position:relative;box-sizing:border-box}@media (max-width: 768px){.results-card{border-radius:14px;overflow:visible;min-width:0;width:100%}}.results-scroll{overflow-x:visible;overflow-y:visible;position:relative;width:100%;box-sizing:border-box;padding-right:0}@media (max-width: 768px){.results-card.compact{border-radius:14px}.results-card.compact .filters-header{flex-direction:column;align-items:stretch;gap:8px}.results-card.compact .filters-header>div{width:100%;justify-content:flex-start}.results-card.compact .results-table th.route-col,.results-card.compact .results-table td.route-col,.results-card.compact .results-table th.stops-col,.results-card.compact .results-table td.stops-col{display:none}.results-toolbar{flex-wrap:wrap;justify-content:flex-start;padding:0 12px 12px;gap:12px}.results-table thead th{font-size:.72rem;padding:8px 6px}.results-table tbody td{padding:10px 6px}.results-table thead th.flight-col,.results-table tbody td.flight-col{min-width:160px;padding-right:18px}.results-table thead th.route-col,.results-table tbody td.route-col{width:120px;min-width:110px;padding-left:16px;padding-right:16px}.results-table thead th.stops-col,.results-table tbody td.stops-col{padding-left:16px;padding-right:4px}.airline-names{white-space:normal}.price-cell{align-items:flex-start}.price-chip{font-size:.8rem;padding:5px 9px}.time-range{font-size:.95rem}.expand-cell{width:36px}.mobile-flight-meta{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px;font-size:.78rem;color:#4b5563}.mobile-flight-meta .mobile-duration,.mobile-flight-meta .mobile-stops{padding-left:10px;position:relative}.mobile-flight-meta .mobile-duration:before,.mobile-flight-meta .mobile-stops:before{content:"•";position:absolute;left:2px;color:#9ca3af}}.results-table{width:100%;border-collapse:collapse;border-spacing:0;overflow:visible;box-sizing:border-box;table-layout:auto}.results-table thead,.results-table tbody,.results-table tr,.results-table td{overflow:visible}.results-table thead th{font-weight:500;font-size:.75rem;color:#666;text-align:center;padding:8px 4px;border-bottom:1px solid #f0f0f0;white-space:nowrap}.results-table tbody td{padding:8px 4px;text-align:center;border-bottom:1px solid #f7f7f7;vertical-align:middle}.results-table tbody tr.row-alt td{background:#fcfcfc}.results-table tbody tr:hover td{background:#fafafa}.align-left{text-align:left!important}.align-right{text-align:right!important}.sortable-th{cursor:pointer;-webkit-user-select:none;user-select:none}.sortable-label{display:inline-flex;align-items:center;gap:6px}.sort-indicator{font-size:.8rem;color:#666}.sort-indicator.neutral{display:inline-flex;flex-direction:column;align-items:center;gap:1px;color:#8a8a8a;opacity:.8;font-size:.7rem;line-height:.8;transform:translateY(1px)}.sortable-th:hover .sort-indicator.neutral{color:#666;opacity:.95}.sort-indicator.neutral .tri{display:block;line-height:.8}.airline-logo{width:28px;height:28px;border-radius:6px;object-fit:contain;background:#fff;border:1px solid #f0f0f0}.airline-logo.small{width:22px;height:22px}.route-cell{display:flex;align-items:center;justify-content:flex-start;gap:0}.route-code{font-weight:400;letter-spacing:.1px;font-size:.8rem}.route-dash{margin:0 1px}.results-table thead th.route-col,.results-table tbody td.route-col{width:15%;min-width:auto;text-align:left;padding-left:6px;padding-right:6px}@media (max-width: 768px){.results-table thead th.route-col,.results-table tbody td.route-col{width:15%;padding-left:4px;padding-right:4px}}@media (max-width: 640px){.results-table thead th.route-col,.results-table tbody td.route-col{display:none}}.route-meta{display:flex;flex-direction:column;line-height:1.2;align-items:flex-start}.route-duration{font-weight:600;font-size:1.06rem;margin-bottom:2px}.stops-label{white-space:nowrap}.results-table thead th.stops-col,.results-table tbody td.stops-col{text-align:left;padding-left:6px;padding-right:6px;width:12%;min-width:auto}@media (max-width: 768px){.results-table thead th.stops-col,.results-table tbody td.stops-col{width:12%;padding-left:4px;padding-right:4px}}@media (max-width: 640px){.results-table thead th.stops-col,.results-table tbody td.stops-col{display:none}}.time-range{font-weight:700;font-size:.9rem;white-space:nowrap}@media (max-width: 768px){.time-range{font-size:.8rem}}@media (max-width: 640px){.time-range{font-size:.75rem}}.time-range .dash{display:inline-block;margin:0 2px}.time-range .ampm{margin-left:1px;letter-spacing:-.2px}.time-range sup.day-delta{font-size:.7em;font-weight:600;margin-left:2px}.flight-meta{display:flex;flex-direction:column;line-height:1.2}.airline-names{font-size:.75rem;color:#666;white-space:nowrap;margin-top:2px;overflow:hidden;text-overflow:ellipsis}@media (max-width: 768px){.airline-names{font-size:.7rem;white-space:normal}}@media (max-width: 640px){.airline-names{font-size:.65rem}}.airline-line{display:inline-flex;align-items:baseline;gap:2px;line-height:1}.meta-sep{color:#999;margin:0 2px}.flight-date{font-size:.78rem;color:#666;white-space:nowrap;vertical-align:baseline}.airline-line .airline-names{margin-top:0}.flight-cell{display:flex;align-items:center;gap:10px}.results-table thead th.flight-col,.results-table tbody td.flight-col{width:20%;min-width:180px;padding-right:8px}.flight-time-header{display:flex;flex-direction:row;align-items:center;gap:8px;white-space:nowrap}.time-sort-triggers{display:flex;gap:4px;font-size:.7rem;font-weight:400}.time-sort-trigger{cursor:pointer;padding:2px 6px;border-radius:4px;background:#f3f4f6;color:#4b5563;display:flex;align-items:center;justify-content:center;gap:2px;transition:all .2s ease;min-height:20px;height:20px;min-width:44px;box-sizing:border-box}.time-sort-trigger:hover{background:#e5e7eb}.time-sort-trigger.active{background:#111;color:#fff}.time-sort-trigger .sortable-label{display:flex;align-items:center;line-height:1}.time-sort-trigger .sort-indicator{margin-left:2px;display:inline-flex;align-items:center;justify-content:center;width:10px;height:12px}.time-sort-trigger .sort-indicator.neutral{opacity:.3;display:inline-flex;flex-direction:column;justify-content:center;line-height:.4;font-size:.5rem}@media (max-width: 768px){.results-table thead th.flight-col,.results-table tbody td.flight-col{width:20%;padding-right:6px}}@media (max-width: 640px){.results-table thead th.flight-col,.results-table tbody td.flight-col{width:20%;padding-right:4px}}.airline-logo.placeholder{display:inline-block;width:28px;height:28px;border-radius:6px;background:#f5f5f5;border:1px solid #f0f0f0}.overnight-badge{display:inline-block;font-size:.72rem;padding:2px 6px;border-radius:9999px;background:#fff7f7;border:1px solid #f3dada;color:#b91c1c;margin-left:8px}.results-table thead th.time-col,.results-table tbody td.time-col{width:18%;min-width:auto;padding-left:6px;padding-right:6px}@media (max-width: 768px){.results-table thead th.time-col,.results-table tbody td.time-col{width:18%;padding:8px 4px}}@media (max-width: 640px){.results-table thead th.time-col,.results-table tbody td.time-col{width:18%;padding:8px 3px}}.price-cell{display:flex;flex-direction:column;align-items:flex-end;gap:3px;width:100%}@media (max-width: 768px){.price-cell{gap:2px;align-items:flex-end}}@media (max-width: 640px){.price-cell{align-items:flex-end}}.price-chip{display:inline-block;padding:6px 10px;border-radius:9px;background:#111;color:#fff;font-weight:600;font-size:.92rem;border:1px solid #111111;white-space:nowrap}@media (max-width: 768px){.price-chip{padding:6px 10px;font-size:.98rem}}@media (max-width: 640px){.price-chip{padding:5px 9px;font-size:.9rem}}.price-chip.cash.nonstop{background:#16a34a;border-color:#16a34a}.price-chip.cash.stops{background:#007aff;border-color:#007aff}.price-chip.points.nonstop{background:#7c3aed;border-color:#7c3aed}.price-chip.points.stops{background:#9333ea;border-color:#9333ea}.expand-cell{width:8%;padding:8px 4px;min-width:auto}@media (max-width: 768px){.expand-cell{width:8%;min-width:auto;padding:8px 3px}}@media (max-width: 640px){.expand-cell{width:8%;min-width:auto;padding:8px 2px}}.chevron{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:26px;height:26px;border-radius:6px;border:1px solid #eaeaea;background:#fff;cursor:pointer;position:relative;transition:background .2s ease,transform .2s ease}.chevron:after{content:"";position:absolute;top:50%;left:50%;width:8px;height:8px;border-right:2px solid #111111;border-bottom:2px solid #111111;transform:translate(-50%,-60%) rotate(45deg);transition:transform .2s ease}.chevron.open:after{transform:translate(-50%,-40%) rotate(-135deg)}.details-row td{padding:0!important;background:#fff;overflow:hidden}@media (max-width: 768px){.details-row td{width:100%;max-width:100%;box-sizing:border-box}}.details-card{padding:14px 16px;border-top:1px solid #f0f0f0;text-align:left;position:relative;max-width:100%;min-width:0;width:100%;box-sizing:border-box;overflow:hidden}@media (max-width: 768px){.details-card{overflow:hidden;padding:12px;width:100%;max-width:100%;box-sizing:border-box}}@media (max-width: 640px){.details-card{padding:10px 8px}}.details-meta-actions{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-bottom:16px}@media (max-width: 768px){.details-meta-actions{gap:.5rem;margin-bottom:12px}}.details-meta-info{display:flex;flex-direction:column;gap:2px}.details-meta-route{font-weight:600;font-size:.95rem;color:#111827}@media (max-width: 768px){.details-meta-route{font-size:.85rem}}.details-meta-stops{margin-left:.35rem;font-size:.85rem;color:#6b7280;font-weight:500}.details-meta-date{font-size:.85rem;color:#6b7280}@media (max-width: 768px){.details-meta-date{font-size:.75rem}}.details-alert-btn{font-size:.85rem;padding:.45rem .9rem;background:#fff;color:#111827;border:1px solid #000000;border-radius:6px;cursor:pointer;font-weight:500;transition:background .2s ease,border-color .2s ease,color .2s ease;white-space:nowrap;flex-shrink:0}@media (max-width: 768px){.details-alert-btn{font-size:.7rem;padding:.3rem .6rem;white-space:nowrap;flex-shrink:0}}.details-alert-btn:hover{background:#f3f4f6;border-color:#374151}.cabin-toggle{display:inline-flex;gap:6px;border:1px solid #eaeaea;background:#fafafa;padding:4px;border-radius:9999px;margin-bottom:10px}.cabin-pill{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid transparent;background:transparent;color:#444;font-size:.8rem;padding:6px 10px;border-radius:9999px;cursor:pointer}.cabin-pill.active{background:#fff;border-color:#eaeaea;color:#111}.leg-detail{display:flex;flex-direction:column;gap:5px;padding:6px 0}.meta-row{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:6px}.points-metadata{margin-top:12px;padding:12px;background:#f9fafb;border-radius:8px;border:1px solid #e5e7eb}.points-header{font-weight:600;font-size:.875rem;color:#374151;margin-bottom:8px;text-transform:uppercase;letter-spacing:.025em}.points-option{padding:8px 0;border-bottom:1px solid #e5e7eb}.points-option:last-child{border-bottom:none;padding-bottom:0}.points-line{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:.9rem;color:#374151}.seats-badge{display:inline-block;padding:2px 8px;background:#dbeafe;color:#1e40af;border-radius:6px;font-size:.75rem;font-weight:500;margin-left:4px}.booking-links{display:flex;gap:8px;margin-top:6px}.booking-link{display:inline-block;padding:4px 12px;background:#007aff;color:#fff;border-radius:6px;font-size:.8rem;font-weight:500;text-decoration:none;transition:background .2s ease}.booking-link:hover{background:#0066e6}.booking-link.small{padding:3px 10px;font-size:.75rem}.leg-detail.shared{margin-bottom:12px;padding-bottom:9px;border-bottom:1px solid #e5e7eb}.leg-detail.shared:last-of-type{margin-bottom:18px}.shared-itin-map-row{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:18px;align-items:start}.shared-actions-menu{position:relative;display:inline-flex;align-items:center;justify-content:flex-end}.shared-actions-menu-button{width:38px;height:38px;padding:0;display:inline-flex;align-items:center;justify-content:center;border-radius:10px;border:1px solid #d1d5db;background:#fff;color:#111827;cursor:pointer;transition:background .15s ease,border-color .15s ease}.shared-actions-menu-button:hover{background:#f9fafb;border-color:#c7cdd6}.shared-actions-menu-button:active{background:#f3f4f6}.shared-actions-menu-dropdown{position:absolute;right:0;top:calc(100% + 8px);min-width:190px;background:#fff;border:1px solid rgba(17,17,17,.1);border-radius:12px;box-shadow:0 14px 38px #0000002e;overflow:hidden;z-index:60}.shared-actions-menu-item{width:100%;padding:10px 12px;display:flex;align-items:center;gap:10px;border:0;background:transparent;text-align:left;font-size:.9rem;font-weight:600;color:#111827;cursor:pointer}.shared-actions-menu-item:hover{background:#f9fafb}.shared-actions-menu-item:active{background:#f3f4f6}.shared-actions-menu-item:disabled{color:#9ca3af;cursor:not-allowed}.shared-actions-menu-item:disabled:hover{background:transparent}.shared-actions-spinner{width:14px;height:14px;border:2px solid currentColor;border-top-color:transparent;border-radius:50%;animation:spin 1s linear infinite}.shared-itin-map-left{min-width:0}.shared-itin-map-right{justify-self:end}.route-mini-map{width:340px;max-width:100%;position:relative;border-radius:16px;overflow:hidden;background:#fff;box-shadow:0 10px 30px #0000000d}.route-mini-map svg{display:block;width:100%;height:auto}.route-mini-map--maplibre{border:none}.route-mini-map__map{width:100%;height:300px}.route-mini-map__placeholder{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;color:#86868b;background:#f5f5f7}.route-mini-map--maplibre .maplibregl-canvas{filter:saturate(.7) contrast(1.02) brightness(1.04)}.route-mini-map--maplibre .maplibregl-ctrl-bottom-right,.route-mini-map--maplibre .maplibregl-ctrl-bottom-left{opacity:.55}.route-mini-map--maplibre .maplibregl-ctrl-attrib{background:#ffffffc7;border:1px solid rgba(17,17,17,.1);margin:0 8px 8px 0;font-size:9px;line-height:1.2;color:#6b7280}.route-mini-map--maplibre .maplibregl-ctrl-attrib a{color:inherit;text-decoration:none;border-bottom:1px dotted #c7c7c7}.route-mini-map--maplibre .maplibregl-ctrl-attrib a:hover{color:#111;border-bottom-color:#9ca3af}.route-mini-map--maplibre .maplibregl-ctrl-attrib.maplibregl-compact{border-radius:9999px;padding-top:2px;padding-bottom:2px}.route-mini-map--maplibre .maplibregl-ctrl-attrib-button{opacity:.9}.route-mini-popup .maplibregl-popup-content{padding:6px 8px;border-radius:10px;border:1px solid rgba(17,17,17,.12);box-shadow:0 12px 30px #00000014;background:#fffffffa}.route-mini-popup .maplibregl-popup-tip{display:none}.route-mini-popup-inner{font-size:12px;font-weight:800;letter-spacing:.02em;color:#111}@media (max-width: 900px){.shared-itin-map-row{grid-template-columns:1fr}.shared-itin-map-right{justify-self:stretch;width:100%}.route-mini-map{width:100%}.route-mini-map__map{height:340px}.shared-header-right{flex-grow:1;width:100%}}.leg-line{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;min-width:0}@media (max-width: 768px){.leg-line{flex-direction:column;align-items:flex-start;gap:8px}}@media (max-width: 640px){.leg-line{gap:6px}}.leg-info{display:flex;align-items:center;gap:8px;flex:1;min-width:0}@media (max-width: 768px){.leg-info{width:100%;flex-wrap:wrap}}.leg-primary{font-weight:500}.leg-times{color:#333;font-size:.92rem}.leg-times.left{text-align:left}.cabin-cards-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,370px));gap:14px;margin-top:12px;margin-bottom:16px;justify-content:start}.cabin-cards-grid.cabin-cards-scroll{display:flex;flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;gap:14px;padding-bottom:8px;-webkit-overflow-scrolling:touch;scrollbar-width:thin}.cabin-cards-grid.cabin-cards-scroll .cabin-card{flex:0 0 auto;width:330px}@media (max-width: 768px){.cabin-cards-grid{grid-template-columns:1fr}.cabin-cards-grid.cabin-cards-scroll{display:grid;grid-template-columns:1fr;overflow-x:visible;overflow-y:visible;padding-bottom:0}.cabin-cards-grid.cabin-cards-scroll .cabin-card{width:auto}}.cabin-card{background:#fff;border:1px solid #e5e7eb;border-radius:10px;padding:12px;box-shadow:0 1px 3px #0000000d;position:relative}.cabin-card.has-buttons{padding-bottom:68px}.cabin-card-header{font-weight:600;font-size:1rem;color:#111827;margin-bottom:8px;padding-bottom:6px;border-bottom:2px solid #007AFF}.cabin-section{margin-bottom:10px}.cabin-section:last-child{margin-bottom:0}.cabin-pricing-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}@media (max-width: 640px){.cabin-pricing-grid{grid-template-columns:1fr}}.cabin-cash-price{font-size:1.25rem;font-weight:700;color:#16a34a}.cabin-section-label{font-weight:600;font-size:.8rem;color:#6b7280;text-transform:uppercase;letter-spacing:.025em;margin-bottom:6px}.cabin-features-list{display:flex;flex-direction:column;gap:5px}.cabin-features-secondary-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:2px}.segment-amenity-label{font-size:.75rem;color:#666;font-weight:500;margin-bottom:6px;padding-bottom:4px;border-bottom:1px solid #e8e8e8}.segment-amenity-divider{height:1px;background:#e8e8e8;margin:10px 0}.cabin-feature{display:flex;align-items:center;gap:8px;font-size:.875rem;color:#374151}.cabin-feature.cabin-feature-primary{font-size:.875rem;color:#374151}.legroom-above-average{color:#16a34a!important;font-weight:500}.legroom-below-average{color:#e36464!important;font-weight:500}.cabin-feature.cabin-feature-secondary{font-size:.75rem;color:#6b7280;opacity:.8;gap:4px}.cabin-feature.cabin-feature-secondary .icon{opacity:.7;width:14px;height:14px}.cabin-features-secondary-row .cabin-feature{white-space:nowrap}.cabin-feature .icon{flex-shrink:0;color:#6b7280}.cabin-award-option{padding:6px 0;border-bottom:1px solid #f3f4f6}.cabin-award-option:last-child{border-bottom:none;padding-bottom:0}.cabin-award-line{font-size:.875rem;color:#374151;margin-bottom:3px}.cabin-award-seats{font-size:.75rem;color:#1e40af;background:#dbeafe;display:inline-block;padding:2px 8px;border-radius:6px;margin-bottom:3px}.cabin-booking-links{display:flex;gap:6px;margin-top:6px}.cabin-card-actions{position:absolute;bottom:0;left:0;right:0;display:flex;gap:8px;padding:10px 14px;background:#f9fafb;border-top:1px solid #e5e7eb;border-radius:0 0 10px 10px}.cabin-action-btn{flex:1;min-width:0;max-width:calc(50% - 4px);padding:8px 14px;font-size:.875rem;font-weight:600;border:1px solid;border-radius:8px;cursor:pointer;transition:all .2s ease}.cabin-action-btn.cash-btn{background:#fff;color:#16a34a;border-color:#16a34a}.cabin-action-btn.cash-btn:hover:not(:disabled){background:#16a34a;color:#fff}.cabin-action-btn.miles-btn{background:#7c3aed;color:#fff;border-color:#7c3aed}.cabin-action-btn.miles-btn:hover:not(:disabled){background:#6d28d9;border-color:#6d28d9}.cabin-action-btn:disabled{opacity:.4;cursor:not-allowed}.award-modal{max-width:640px;max-height:80vh}.award-modal .modal-body{padding:12px 16px 16px}.cash-booking-modal{width:min(1100px,92vw)!important;max-width:92vw}.cash-booking-modal .modal-body{padding:12px 16px 16px;overflow:hidden}.award-modal-subtitle{font-size:1.125rem;color:#111827;margin-bottom:10px;text-align:center;font-weight:600}.award-options-list{display:flex;flex-direction:column;gap:6px;max-height:55vh;overflow-y:auto;padding-right:8px;scrollbar-width:thin;scrollbar-color:#d1d5db #f9fafb}.award-options-list::-webkit-scrollbar{width:10px}.award-options-list::-webkit-scrollbar-track{background:#f9fafb;border-radius:5px}.award-options-list::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:5px;border:2px solid #f9fafb}.award-options-list::-webkit-scrollbar-thumb:hover{background:#9ca3af}.booking-options-horizontal-scroll{display:flex;flex-direction:row;gap:12px;overflow-x:auto;overflow-y:visible;padding-bottom:12px;scrollbar-width:thin;scrollbar-color:#d1d5db #f9fafb}.booking-options-horizontal-scroll::-webkit-scrollbar{height:10px}.booking-options-horizontal-scroll::-webkit-scrollbar-track{background:#f9fafb;border-radius:5px}.booking-options-horizontal-scroll::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:5px;border:2px solid #f9fafb}.booking-options-horizontal-scroll::-webkit-scrollbar-thumb:hover{background:#9ca3af}.booking-options-horizontal-scroll .award-option-card{min-width:320px;max-width:320px;flex-shrink:0;display:flex;flex-direction:column;height:auto}@media (max-width: 768px){.booking-options-horizontal-scroll{width:100%;overflow-x:auto;overflow-y:visible}.booking-options-horizontal-scroll .award-option-card{min-width:280px;max-width:280px}}.award-option-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:10px 12px}.award-option-header{margin-bottom:3px}.award-option-miles{font-size:1rem;color:#111827;margin-bottom:2px}.award-option-program{font-size:.8125rem;color:#6b7280}.award-option-seats{font-size:.7rem;color:#1e40af;background:#dbeafe;display:inline-block;padding:2px 7px;border-radius:4px;margin-bottom:6px}.award-option-links{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.award-booking-button{display:inline-block;padding:6px 12px;background:#007aff;color:#fff;border-radius:6px;font-size:.8125rem;font-weight:500;text-decoration:none;transition:background .2s ease}.award-booking-button:hover{background:#0066e6}.award-option-no-link{font-size:.75rem;color:#6b7280;font-style:italic;padding:5px 10px;background:#f9fafb;border-radius:4px;margin-top:4px}.seatmaps-btn.below-cards{margin-top:20px}.badge{display:inline-block;padding:3px 8px;border-radius:9999px;background:#f5f5f5;border:1px solid #eaeaea;color:#444;font-size:.75rem;margin-right:6px}.badge.light{background:#fafafa;color:#666}.badge.pro{background:#eaf2ff;border-color:#cfe0ff;color:#007aff}.feature-row{display:flex;flex-direction:column;align-items:flex-start;gap:6px;margin-top:4px}.feature{display:inline-flex;align-items:center;gap:8px;padding:0;border-radius:0;border:none;background:transparent;color:#333;font-size:.86rem}.feature.light{background:transparent;color:#666}.icon{color:#111}.warn-icon-only .icon{color:#b91c1c}.feature.warn{background:#fff7f7;border-color:#f3dada;color:#b91c1c}.hint{position:relative;user-select:none;-webkit-user-select:none;cursor:default}.hint-bubble{position:absolute;left:50%;bottom:135%;transform:translate(-50%) translateY(0);background:#1f2937;color:#fff;border-radius:8px;padding:6px 8px;font-size:.75rem;white-space:nowrap;box-shadow:0 8px 24px #0000004d;opacity:0;pointer-events:none;transition:opacity .12s ease,transform .12s ease;z-index:9999;user-select:none;-webkit-user-select:none}.hint:hover .hint-bubble,.hint-bubble.visible{opacity:1;transform:translate(-50%) translateY(-2px);pointer-events:auto}.hint-bubble:hover{opacity:1;pointer-events:auto}.hint-bubble:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border-width:6px;border-style:solid;border-color:#1f2937 transparent transparent transparent}.hint-portal{position:fixed;transform:translate(-50%,-10px) translateY(-100%);z-index:2147483647;pointer-events:none}.hint-portal .bubble{background:#111;color:#fff;border-radius:8px;padding:6px 8px;font-size:.75rem;white-space:nowrap;box-shadow:0 6px 20px #0000002e}.hint-portal .arrow{width:0;height:0;margin:4px auto 0;border-left:6px solid transparent;border-right:6px solid transparent;border-top:6px solid #111111}.layover{display:flex;align-items:center;gap:10px;color:#666;margin:6px 0 2px}.divider{flex:1;height:1px;background:#f0f0f0}.layover-text{white-space:nowrap;font-size:.8rem}.configs-section{margin-top:8px;max-width:100%;overflow:hidden;contain:inline-size}.configs-header{font-weight:600;font-size:.9rem;margin-bottom:6px;color:#222}.config-scroll{display:flex;gap:10px;width:100%;max-width:100%;min-width:0;overflow-x:auto;overflow-y:hidden;padding-bottom:4px;-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity}.config-scroll::-webkit-scrollbar{height:6px}.config-scroll::-webkit-scrollbar-thumb{background:#e6e6e6;border-radius:3px}.config-card{flex:0 0 300px;background:#fff;border:1px solid #f0f0f0;border-radius:10px;padding:8px;scroll-snap-align:start}.config-title{font-weight:600;font-size:.9rem;margin:2px 2px 6px;color:#333}.seatmap-strip{display:flex;gap:6px;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity}.seatmap-strip::-webkit-scrollbar{height:6px}.seatmap-strip::-webkit-scrollbar-thumb{background:#e6e6e6;border-radius:3px}.seatmap-img{display:block;width:100%;height:auto;border:1px solid #f0f0f0;border-radius:8px;background:#fafafa;cursor:zoom-in}.linklike{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:transparent;padding:0;margin:0;color:#0a84ff;cursor:pointer;font:inherit}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-panel{background:#fff;color:#111;width:min(960px,92vw);max-height:90vh;border-radius:10px;box-shadow:0 10px 30px #0003;display:flex;flex-direction:column}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-bottom:1px solid rgba(0,0,0,.08)}.modal-title{font-weight:600;font-size:14px}.modal-close{background:transparent;border:none;font-size:20px;line-height:1;cursor:pointer;color:#333}.modal-note{font-size:11.5px;line-height:1;color:#666;margin:0;text-align:right}.modal-note a{color:inherit;text-decoration:none;border-bottom:1px dotted transparent;padding-bottom:1px;transition:border-color .12s ease}.modal-note a:hover{border-bottom-color:#00000073}.modal-body{padding:10px}.modal-topbar{display:flex;align-items:flex-end;justify-content:space-between;gap:10px;margin-bottom:6px}.carousel{display:grid;grid-template-columns:44px 1fr 44px;align-items:center;gap:8px}.carousel-nav{background:#f5f5f5;border:1px solid rgba(0,0,0,.08);width:44px;height:44px;border-radius:8px;cursor:pointer;color:#333}.carousel-stage{position:relative;display:flex;align-items:center;justify-content:center;background:#fafafa;border:1px solid rgba(0,0,0,.06);border-radius:10px;padding:8px;min-height:360px;max-height:70vh;overflow:hidden}.carousel-img{max-width:100%;max-height:64vh;object-fit:contain;border-radius:6px;box-shadow:0 1px 8px #0000000f}.carousel-caption{position:absolute;left:8px;right:8px;bottom:8px;display:flex;justify-content:space-between;font-size:12px;background:#ffffffd9;padding:6px 8px;border-radius:6px}.cap-title{font-weight:500}.cap-count{opacity:.75}.configs-cta{margin-top:8px}.seatmaps-btn{font-size:12px;padding:8px 10px;background:#111;color:#fff;border:none;border-radius:8px;cursor:pointer}.seatmaps-btn[disabled]{background:#eaeaea;color:#9a9a9a;cursor:default}.seatmaps-btn.inline-segment{font-size:11px;padding:5px 12px;white-space:nowrap;flex-shrink:0;background:transparent;color:#666;border:1px solid #d0d0d0;font-weight:400;transition:all .15s ease}@media (max-width: 768px){.seatmaps-btn.inline-segment{font-size:10px;padding:4px 10px;white-space:normal;flex-shrink:1;align-self:flex-end;margin-top:4px;margin-left:auto;background:#f8f9fa;border-color:#e2e8f0}}.seatmaps-btn.inline-segment:hover{background:#f8f8f8;color:#333;border-color:#999}.zoom-controls{display:inline-flex;align-items:center;gap:8px;margin-bottom:0}.zoom-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid #e0e0e0;background:#fafafa;color:#333;border-radius:8px;padding:4px 10px;cursor:pointer;font-size:.9rem}.zoom-btn.reset{padding:4px 8px}.zoom-level{font-size:.85rem;color:#666;min-width:48px;text-align:center}.zoom-view{position:relative;overflow:auto;max-height:70vh;border:1px solid rgba(0,0,0,.06);border-radius:10px;background:#fafafa;padding:6px}.zoom-inner{display:flex;align-items:flex-start;gap:6px;padding:0;width:max-content;margin:0;transform-origin:0 0}.zoom-tile{display:inline-flex;flex-direction:column;gap:4px;background:#fff;border:1px solid #ededed;border-radius:8px;padding:2px}.zoom-img{display:block;max-height:64vh;width:auto;object-fit:contain;border-radius:6px;cursor:zoom-in}.zoom-subtitle{font-size:12px;color:#555;text-align:center;padding:2px 4px 0}.booking-recommendation{display:inline-block;font-size:11px;padding:2px 8px;border-radius:12px;font-weight:500;margin-top:4px;white-space:nowrap}.booking-recommendation.miles{background-color:#e8f5e9;color:#2e7d32;border:1px solid #c8e6c9}.booking-recommendation.cash{background-color:#e3f2fd;color:#1565c0;border:1px solid #bbdefb}.cabin-recommendation-banner{margin-bottom:12px;padding:8px 12px;background-color:#f5f9ff;border-left:3px solid #4a90e2;border-radius:4px}.cabin-recommendation-badge{display:inline-flex;align-items:center;font-size:11px;font-weight:500;color:#1a4a7d;line-height:1.4}.cabin-recommendation-badge.miles{color:#2e7d32}.cabin-recommendation-badge.cash{color:#1565c0}.cpp-tooltip-portal{position:fixed;z-index:99999;pointer-events:none;transform:translate(-50%,calc(-100% - 12px))}.cpp-tooltip-portal.below{transform:translate(-50%,12px)}.cpp-tooltip-portal .arrow{width:0;height:0;margin:4px auto 0;border-left:6px solid transparent;border-right:6px solid transparent;border-top:6px solid white;filter:drop-shadow(0 -1px 1px rgba(0,0,0,.1))}.cpp-tooltip-portal .arrow.arrow-up{margin:0 auto 4px;border-top:none;border-bottom:6px solid white;filter:drop-shadow(0 1px 1px rgba(0,0,0,.1))}.cpp-tooltip-bubble{background:#fff;border:1px solid #e0e0e0;border-radius:8px;box-shadow:0 4px 12px #00000026;padding:12px 16px;font-size:13px;line-height:1.5;min-width:280px;max-width:320px}.cpp-comparison{margin-bottom:12px;padding-bottom:12px;border-bottom:1px solid #e8e8e8}.cpp-option{margin-bottom:6px;color:#333}.cpp-option-note{margin-top:-2px;margin-bottom:6px;font-size:11px;color:#888;font-style:italic}.cpp-value{margin-top:8px;font-weight:600;font-size:14px}.cpp-legend{margin-top:8px}.cpp-legend-title{font-weight:600;margin-bottom:8px;color:#555;font-size:12px;text-transform:uppercase;letter-spacing:.5px}.cpp-legend-item{display:flex;align-items:center;margin-bottom:4px;font-size:12px}.cpp-legend-dot{width:8px;height:8px;border-radius:50%;margin-right:8px;flex-shrink:0}.cpp-legend-range{min-width:60px;color:#666;font-family:monospace}.cpp-legend-label{color:#333;margin-left:8px}.cpp-disclaimer{margin-top:12px;padding-top:12px;border-top:1px solid #e8e8e8;font-size:11px;line-height:1.4;color:#666}.cpp-disclaimer strong{color:#555;font-weight:600}.award-note{font-size:.75rem;color:#777}.award-note a{color:#555;text-decoration:none;border-bottom:1px dotted #bbbbbb}.award-note a:hover{color:#111;border-bottom-color:#888}.site-footer{width:100%;margin-top:20rem;padding:2.5rem 2rem 2rem;border-top:1px solid #f0f0f0}.footer-content{max-width:1200px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;gap:2rem;flex-wrap:wrap}.footer-copyright{font-size:.875rem;color:#666;font-weight:400}.footer-links{display:flex;align-items:center;gap:1rem}.footer-link{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:transparent;padding:0;font-size:.875rem;color:#666;cursor:pointer;transition:color .2s ease;text-decoration:none}.footer-link:hover{color:#111}.footer-separator{color:#d0d0d0;font-size:.875rem}@media (max-width: 640px){.site-footer{margin-top:14rem;padding:2rem 1.5rem}.footer-content{flex-direction:column;align-items:center;text-align:center;gap:1rem}}.legal-section{display:flex;justify-content:center;width:100%;padding:2rem 1rem 4rem}.legal-card{width:100%;max-width:800px;background:#fff;border:1px solid #f0f0f0;border-radius:14px;padding:2.5rem;position:relative}.legal-title{font-size:2.5rem;font-weight:300;color:#000;letter-spacing:-.02em;margin-bottom:.5rem;text-align:center}.legal-date{text-align:center;font-size:.875rem;color:#999;margin-bottom:2.5rem;font-weight:400}.legal-content{display:flex;flex-direction:column;gap:2rem;line-height:1.7;color:#333;margin-bottom:3rem}.legal-block h2{font-size:1.25rem;font-weight:500;color:#000;margin-bottom:.75rem;letter-spacing:-.01em}.legal-block p{font-size:.9375rem;margin-bottom:.75rem}.legal-block p:last-child{margin-bottom:0}.legal-block ul{margin:.75rem 0;padding-left:1.5rem}.legal-block li{font-size:.9375rem;margin-bottom:.5rem;line-height:1.6}.legal-block li:last-child{margin-bottom:0}.legal-block strong{font-weight:600;color:#111}.contact-info{padding:1rem 1.25rem;background:#fafafa;border:1px solid #f0f0f0;border-radius:8px;font-size:.9375rem;color:#333;margin-top:.5rem}.legal-back-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid #eaeaea;background:#fff;color:#111;padding:.5rem .9rem;border-radius:8px;cursor:pointer;transition:all .2s ease;font-size:.9375rem;position:absolute;bottom:2.5rem;left:2.5rem}.legal-back-button:hover{background:#fafafa;border-color:#e0e0e0}@media (max-width: 768px){.legal-card{padding:2rem 1.5rem 4rem}.legal-title{font-size:2rem}.legal-block h2{font-size:1.125rem}.legal-back-button{left:1.5rem;bottom:2rem}}@media (max-width: 640px){.legal-card{padding:1.5rem 1rem 4rem}.legal-title{font-size:1.75rem}.legal-content{gap:1.5rem}.legal-back-button{left:1rem;bottom:1.5rem}}.pro-section{display:flex;align-items:center;justify-content:center;min-height:auto;padding:1.5rem 1.25rem;position:relative}.pro-back{position:absolute;top:1.5rem;left:1.5rem;color:#666;text-decoration:none;font-size:.9375rem;border:1px solid #eaeaea;background:#fff;padding:.4rem .7rem;border-radius:8px;transition:all .2s ease}.pro-back:hover{background:#fafafa;color:#111;border-color:#e0e0e0}.pro-wrap{width:100%;max-width:700px;text-align:center}.pro-panel{background:#fff;border:1px solid #f0f0f0;border-radius:16px;padding:1.5rem;box-shadow:0 8px 30px #0000000a}.pro-title{font-size:clamp(2rem,6vw,3rem);font-weight:300;letter-spacing:-.02em;line-height:1.1;color:#000;margin-bottom:.25rem;display:inline-flex;align-items:center;gap:10px}.pro-title-logo{width:68px;height:68px;border-radius:6px;object-fit:cover;filter:drop-shadow(0 2px 6px rgba(10,132,255,.2))}.pro-subtitle{font-size:clamp(.95rem,2vw,1.05rem);color:#666;margin-bottom:1rem}.pro-divider{width:60px;height:2px;background:linear-gradient(90deg,#111,#999);margin:0 auto 1rem;border-radius:9999px;opacity:.25}.pro-price{display:inline-flex;align-items:baseline;gap:8px;margin-bottom:1.25rem}.pro-price .amount{font-size:clamp(1.75rem,5vw,2.5rem);font-weight:600;letter-spacing:-.01em}.pro-price .per,.pro-price .currency{font-size:.9rem;color:#777}.pro-benefits{list-style:none;display:flex;flex-direction:column;gap:.75rem;align-items:stretch;margin:0 auto 2rem;padding:0;max-width:640px;text-align:left}.pro-benefits li{display:flex;align-items:flex-start;gap:10px;font-size:1rem;color:#333;line-height:1.6}.pro-check{width:18px;height:18px;display:inline-flex;align-items:center;justify-content:center;margin-top:2px;flex-shrink:0}.pro-feature-icon{width:18px;height:18px;display:inline-flex;align-items:center;justify-content:center;margin-top:2px;flex-shrink:0;opacity:.9}.pro-cta-row{display:flex;flex-direction:column;gap:10px;align-items:center}.pro-cta{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1.5px solid #d4d7dd;background:#fff;color:#111;border-radius:12px;padding:.8rem 1.3rem;font-size:.95rem;font-weight:500;cursor:pointer;transition:background .12s ease,border-color .12s ease;display:inline-flex;align-items:center;justify-content:center;width:min(320px,100%);letter-spacing:-.01em;text-decoration:none}.pro-cta:hover{background:#fafafa;border-color:#c9cdd4}.pro-cta:active{background:#f5f5f5}.pro-cta:focus-visible{outline:none}.pro-note{font-size:.875rem;color:#777}.compare-wrap{margin:0 auto 1.5rem;max-width:760px;text-align:left}.compare-title{font-size:1.125rem;font-weight:500;letter-spacing:-.01em;color:#000;text-align:center;margin-bottom:.25rem}.compare-subtitle{font-size:.9rem;color:#666;text-align:center;margin-bottom:.75rem}.compare-table-wrap{overflow-x:auto}.compare-table{width:100%;border-collapse:separate;border-spacing:0;background:#fff;border:1px solid #f0f0f0;border-radius:12px;font-size:.95rem}.compare-table thead th{background:#fafafa;font-weight:600;color:#444;padding:10px 12px;text-align:center;border-bottom:1px solid #f0f0f0}.compare-table thead th:first-child{text-align:left}.compare-table tbody td,.compare-table tbody th{padding:8px 12px;border-bottom:1px solid #f7f7f7;vertical-align:middle}.compare-table tbody tr:last-child td,.compare-table tbody tr:last-child th{border-bottom:none}.feature-col{text-align:left;color:#111;font-weight:500}.plan-col{text-align:center}.compare-badge{display:inline-block;padding:4px 10px;border-radius:9999px;font-size:.8rem;font-weight:600;letter-spacing:.02em;border:1px solid}.compare-badge.free{background:#f8fafc;color:#374151;border-color:#e5e7eb}.compare-badge.pro{background:#eaf2ff;color:#007aff;border-color:#cfe0ff}.t-icon{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:9999px;background:#f9fafb;border:1px solid #eef2f7}.t-icon.t-check{background:#f0fdf4;border-color:#dcfce7}.t-icon.t-x{background:#fff7f7;border-color:#f3dada}.input[type=select],select.input{appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right .75rem center;background-size:1.25rem;padding-right:2.5rem}@media (max-width: 640px){.pro-section{padding:1.5rem 1rem}.pro-back{top:1rem;left:1rem}.pro-benefits li{font-size:.95rem}.compare-table{font-size:.9rem}}.date-popover .MuiPickersDay-root.Mui-selected,.date-popover .MuiPickersDay-root.Mui-selected:hover,.date-popover .MuiPickersDay-root.Mui-selected.Mui-focusVisible,.date-popover .MuiPickersDay-root.Mui-selected:active{background-color:transparent!important;box-shadow:none!important;outline:none!important}.date-popover .MuiPickersDay-root .MuiTouchRipple-root{display:none!important}.alerts-page-wrapper{width:100%}.alerts-tabs{display:flex;gap:0;border-bottom:1px solid #eaeaea;margin-bottom:2rem}.alerts-tab{flex:1;padding:1rem 1.5rem;background:transparent;border:none;border-bottom:3px solid transparent;color:#666;font-size:1rem;font-weight:500;cursor:pointer;transition:all .3s ease;text-align:center;position:relative}.alerts-tab:hover{color:#333;background:#f9f9f9}.alerts-tab.active{color:#111;border-bottom-color:#111}.alerts-tab .badge{margin-left:.5rem;font-size:.75rem}@media (max-width: 768px){.alerts-tab{padding:.75rem 1rem;font-size:.95rem}}select.input{background-color:#fff;background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23111111' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right .75rem center;background-size:1.25rem;padding-right:2.5rem;appearance:none;-webkit-appearance:none;-moz-appearance:none}.custom-select-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid #eaeaea;background:#fff;color:#111;border-radius:12px;padding:8px 14px;height:52px;width:100%;display:flex;align-items:center;justify-content:space-between;cursor:pointer;font-size:1rem;transition:background .15s ease,border-color .15s ease,box-shadow .15s ease}.custom-select-btn:hover{background:#fafafa;border-color:#dcdcdc}.custom-select-btn:focus{outline:none;border-color:#111;box-shadow:0 0 0 4px #0000000a}.custom-select-label{flex:1;text-align:left}.custom-select-caret{font-size:.9rem;opacity:.7;margin-left:8px}.custom-select-menu{position:absolute;top:calc(100% + 8px);left:0;right:0;background:#fff;border:1px solid #eaeaea;border-radius:12px;box-shadow:0 12px 30px #0000001a;padding:6px;z-index:1100;max-height:300px;overflow-y:auto}.custom-select-item{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:transparent;width:100%;text-align:left;color:#111;border-radius:8px;padding:10px 12px;cursor:pointer;font-size:1rem;transition:background .15s ease}.custom-select-item:hover{background:#f7f7f8}.custom-select-item.active{background:#111;color:#fff;font-weight:500}.date-navigation-bar{display:flex;align-items:center;justify-content:center;gap:1rem;margin:1rem auto;padding:0 1rem;width:fit-content;max-width:90%}.date-nav-arrow{flex-shrink:0;width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:#fff;border:1px solid #e5e7eb;border-radius:8px;color:#6b7280;cursor:pointer;transition:all .3s cubic-bezier(.25,.46,.45,.94),opacity .3s ease,visibility .3s ease;padding:0;font-size:0;opacity:1;visibility:visible;transform:translateZ(0);-webkit-transform:translateZ(0);backface-visibility:hidden;-webkit-backface-visibility:hidden}.date-nav-arrow.hidden{opacity:0;visibility:hidden}.date-nav-arrow:hover:not(:disabled){background:#f9fafb;border-color:#d1d5db;color:#374151}.date-nav-arrow:active:not(:disabled){background:#f3f4f6}.date-nav-arrow:disabled{opacity:.4;cursor:not-allowed}.date-nav-carousel{flex:1;overflow-x:hidden;overflow-y:visible;min-height:110px;display:flex;align-items:center;justify-content:center;padding:.5rem 0;transform:translateZ(0);-webkit-transform:translateZ(0);backface-visibility:hidden;-webkit-backface-visibility:hidden}.date-nav-tiles{display:flex;gap:.75rem;flex-wrap:nowrap;opacity:1;transition:opacity .2s ease-in-out}.date-nav-tiles.transitioning{opacity:0;pointer-events:none}@keyframes dateSlideIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes dateSlideOut{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.95)}}.date-nav-tile:nth-child(1){animation-delay:0ms}.date-nav-tile:nth-child(2){animation-delay:0ms}.date-nav-tile:nth-child(3){animation-delay:0ms}.date-nav-tile:nth-child(4){animation-delay:0ms}.date-nav-tile:nth-child(5){animation-delay:0ms}.date-nav-tile{flex:0 0 calc(20% - .6rem);min-width:80px;max-width:80px;aspect-ratio:1 / 1;padding:.5rem .35rem;background:#fff;border:2px solid #e5e7eb;border-radius:10px;cursor:pointer;transition:all .2s ease-out;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.25rem;text-align:center;font-size:.875rem;transform:scale(1) translateZ(0);will-change:border-color,background-color,box-shadow;-webkit-transform:scale(1) translateZ(0);backface-visibility:hidden;-webkit-backface-visibility:hidden}.date-nav-tiles.transitioning .date-nav-tile{animation:none}.date-nav-tile:disabled{cursor:not-allowed;opacity:.7}.date-nav-tile.selected{background:#000;color:#fff;border-color:#000;box-shadow:0 4px 12px #0003;transform:scale(1.02)}.date-nav-tile.selected .date-nav-day-of-week,.date-nav-tile.selected .date-nav-date-num,.date-nav-tile.selected .date-nav-month{color:#fff}.date-nav-tile.selected .date-nav-price{font-weight:700}.date-nav-tile:hover:not(.selected):not(:disabled){border-color:#a1a1a1;background:#f9fafb;box-shadow:0 2px 8px #00000014;transform:scale(1.01)}.date-nav-tile:active:not(.selected){background:#f3f4f6}.date-nav-tile-header{display:flex;flex-direction:column;gap:.2rem;align-items:center}.date-nav-day-of-week{font-size:.75rem;color:#9ca3af;font-weight:500;text-transform:uppercase;letter-spacing:.05em}.date-nav-date-num{font-size:1.25rem;font-weight:600;color:#111827;line-height:1}.date-nav-month{font-size:.75rem;color:#6b7280;font-weight:500}.date-nav-price-container{width:100%;display:flex;flex-direction:column;align-items:center;gap:.2rem;margin-top:.25rem;border-top:1px solid #f0f0f0;padding-top:.3rem}.date-nav-price{font-size:.97rem;font-weight:600;color:#1f2937;transition:color .3s cubic-bezier(.25,.46,.45,.94)}.date-nav-price.lowest{color:#16a34a;font-weight:700}.date-nav-price.no-price{color:#d1d5db;font-size:.75rem}.date-nav-price-skeleton{width:50px;height:14px;background:linear-gradient(90deg,#e5e7eb,#f3f4f6,#e5e7eb);background-size:200% 100%;border-radius:4px;animation:shimmer 1.5s infinite}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (max-width: 768px){.date-navigation-bar{gap:.75rem;padding:0 .5rem;width:100%;max-width:100%;margin:1rem auto;justify-content:center}.date-nav-carousel{flex:1;min-width:0;overflow:hidden}.date-nav-arrow{width:36px;height:36px;flex-shrink:0}.date-nav-tile{flex:0 0 calc(20% - .6rem);min-width:65px;max-width:75px;padding:.5rem .3rem;font-size:.75rem}.date-nav-date-num{font-size:1.1rem}.date-nav-price{font-size:.75rem}}@media (max-width: 640px){.date-navigation-bar{gap:.4rem;margin:.75rem 0;width:100%;padding:0}.date-nav-carousel{flex:1;min-width:0;max-width:100%;overflow:hidden;padding:0}.date-nav-arrow{width:32px;height:32px;flex-shrink:0}.date-nav-tile{min-width:60px;max-width:70px;min-height:85px;aspect-ratio:auto;padding:.5rem .25rem;font-size:.7rem}.date-nav-date-num{font-size:1rem}.date-nav-month{font-size:.6rem}.date-nav-price{font-size:.65rem}}@media (max-width: 768px){.results-table thead th.align-right,.results-table tbody td.align-right{padding-right:14px}.details-meta-actions{flex-direction:column;align-items:flex-start}.details-alert-btn{width:auto;align-self:center}.results-table thead th.sortable-th{text-align:right!important}}.spinner-small{width:14px;height:14px;border:2px solid #64748b;border-top-color:transparent;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.share-icon-btn:hover{color:#0f172a!important}.details-alert-btn.share-btn{background:#f1f5f9;color:#0f172a;border:1px solid #e2e8f0}.details-alert-btn.share-btn:hover{background:#e2e8f0}.shared-flights-section{display:flex;justify-content:center;padding:40px 20px;background:#fff;min-height:80vh}.shared-flights-card{width:100%;max-width:680px;background:#fff}.shared-flights-header{margin-bottom:48px}.header-top{margin-bottom:24px}.minimal-back-button{display:inline-flex;align-items:center;gap:8px;background:transparent;border:none;padding:0;color:#86868b;font-size:.95rem;cursor:pointer;transition:color .2s ease}.minimal-back-button:hover{color:#1d1d1f}.apple-title{font-size:2.5rem;font-weight:700;color:#1d1d1f;letter-spacing:-.015em;margin:0 0 8px}.apple-subtitle{font-size:1.15rem;color:#86868b;margin:0;font-weight:400}.apple-flights-list{display:flex;flex-direction:column;gap:1px;background:#f5f5f7;border-radius:20px;overflow:hidden;border:1px solid #f5f5f7}.apple-flight-row{display:flex;justify-content:space-between;align-items:center;padding:18px 32px;background:#fff;text-decoration:none;transition:background .2s ease;position:relative}.apple-flight-row:hover{background:#fafafa}.flight-info-main{display:flex;flex-direction:column;gap:2px}.route-preview{display:flex;align-items:center;gap:12px}.airport-code{font-size:1.25rem;font-weight:600;color:#1d1d1f}.route-arrow{color:#86868b;opacity:.6}.flight-details-sub{display:flex;align-items:center;gap:8px;color:#86868b;font-size:.9rem}.side-content{display:flex;flex-direction:column;align-items:flex-end}.sharer-name-subtle{font-size:.7rem;color:#86868b;font-weight:400;position:absolute;bottom:8px;right:12px;opacity:.8}.detail-dot{opacity:.5}.flight-info-side{display:flex;align-items:center;gap:24px}.price-tag{display:flex;align-items:baseline;color:#1d1d1f}.price-tag .currency{font-size:.9rem;font-weight:500;margin-right:1px}.price-tag .amount{font-size:1.4rem;font-weight:600}.chevron-right{color:#c7c7cc;transition:transform .2s ease}.apple-flight-row:hover .chevron-right{transform:translate(3px);color:#86868b}.apple-loading,.apple-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 0;color:#86868b}.empty-icon{margin-bottom:20px;color:#d2d2d7}.apple-button-primary{margin-top:24px;background:#0071e3;color:#fff;border:none;padding:12px 24px;border-radius:980px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s ease}.apple-button-primary:hover{background:#0077ed;transform:scale(1.02)}.spinner{width:24px;height:24px;border:2px solid #f5f5f7;border-top-color:#86868b;border-radius:50%;animation:apple-spin .8s linear infinite;margin-bottom:12px}@keyframes apple-spin{to{transform:rotate(360deg)}}@media (max-width: 600px){.apple-title{font-size:2rem}.apple-flight-row{padding:16px 20px}.sharer-name-subtle{right:10px}.airport-code{font-size:1.1rem}.price-tag .amount{font-size:1.2rem}}.apple-flight-row:first-child{border-top-left-radius:20px;border-top-right-radius:20px}.apple-flight-row:last-child{border-bottom-left-radius:20px;border-bottom-right-radius:20px}.flight-info-left{display:flex;align-items:center;gap:20px}.apple-airline-logo{width:44px;height:44px;border-radius:10px;object-fit:contain;background:#fff;border:1px solid #f0f0f2;padding:4px}.apple-airline-logo-placeholder{width:44px;height:44px;border-radius:10px;background:#f5f5f7;display:flex;align-items:center;justify-content:center;font-weight:600;color:#86868b;font-size:1.2rem}.flight-time-sub{display:flex;align-items:center;gap:8px;color:#86868b;font-size:.85rem;margin-top:0}@media (max-width: 600px){.flight-info-left{gap:12px}.apple-airline-logo,.apple-airline-logo-placeholder{width:36px;height:36px;font-size:1rem}.flight-time-sub{font-size:.8rem}}html,body{scroll-behavior:auto!important}.route-mini-map-skeleton{width:100%;height:300px;background:#f5f5f7;border-radius:14px;position:relative;overflow:hidden}.route-mini-map-skeleton:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;transform:translate(-100%);background:linear-gradient(90deg,#fff0 0,#fff6,#fff0);animation:apple-shimmer 2s infinite}@keyframes apple-shimmer{to{transform:translate(100%)}}.route-mini-map-skeleton{width:100%;height:300px;background:#f5f5f7;border-radius:14px;border:1px solid #eaeaea}.seats-connected-badge{display:flex;align-items:center;gap:8px;padding:.6rem 1rem;background:#f0fdf4;border:1px solid #86efac;border-radius:12px}.seats-connected-text{font-size:.9375rem;color:#166534}@media (max-width: 640px){.seats-connected-badge{padding:.5rem .75rem;gap:6px;border-radius:10px;width:100%;justify-content:center}.seats-connected-text{font-size:.8125rem}}.tool-switcher{position:relative}.tool-switcher-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;gap:8px;height:38px;padding:0 16px;background:#ffffffb3;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(0,0,0,.06);border-radius:999px;color:#111;font-size:.875rem;font-weight:500;letter-spacing:-.01em;cursor:pointer;box-shadow:0 2px 8px #0000000a;transition:all .3s cubic-bezier(.16,1,.3,1)}.tool-switcher-btn:hover{background:#ffffffe6;border-color:#0000001a;transform:translateY(-1px);box-shadow:0 4px 12px #00000014}.tool-switcher-btn.open{background:#fff;border-color:#0000001a;box-shadow:0 4px 16px #0000001a}.switcher-caret{font-size:.75rem;opacity:.5;transition:transform .3s ease}.tool-switcher-btn.open .switcher-caret{transform:rotate(180deg)}.tool-switcher-menu{position:absolute;top:calc(100% + 8px);left:0;min-width:180px;background:#ffffffd9;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(0,0,0,.06);border-radius:16px;box-shadow:0 12px 40px #0000001f;padding:6px;z-index:1000;animation:menuAppear .3s cubic-bezier(.16,1,.3,1)}@keyframes menuAppear{0%{opacity:0;transform:translateY(-8px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.tool-menu-item{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:transparent;width:100%;text-align:left;font-size:.9rem;color:#444;border-radius:10px;padding:10px 12px;cursor:pointer;display:flex;align-items:center;gap:8px;transition:all .2s ease;font-weight:500}.tool-menu-item:hover{background:#0000000a;color:#000}.tool-menu-item.active{background:#111;color:#fff}@media (max-width: 640px){.topbar-left{width:auto;gap:8px}.tool-switcher{margin-left:0}.tool-switcher-btn{height:32px;padding:0 10px;font-size:.85rem}}.glidr-score-container{display:flex;justify-content:center;align-items:center}.glidr-score-badge{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:8px;font-weight:700;font-size:.9rem;color:#fff;transition:transform .2s ease}.glidr-score-badge:hover{transform:scale(1.1)}.glidr-score-badge.high{background:linear-gradient(135deg,#22c55e,#16a34a);box-shadow:0 2px 8px #22c55e4d}.glidr-score-badge.med{background:linear-gradient(135deg,#eab308,#ca8a04);box-shadow:0 2px 8px #eab3084d}.glidr-score-badge.low{background:linear-gradient(135deg,#94a3b8,#64748b);box-shadow:0 2px 8px #94a3b84d}.glidr-tooltip{min-width:180px;text-align:left}.glidr-tooltip-header{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#94a3b8;margin-bottom:10px;border-bottom:1px solid #374151;padding-bottom:6px}.glidr-tooltip-item{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.glidr-tooltip-cabin{font-size:.875rem;font-weight:500}.glidr-tooltip-score{font-size:.875rem;font-weight:700;padding:2px 6px;border-radius:4px}.glidr-tooltip-score.high{color:#4ade80}.glidr-tooltip-score.med{color:#fde047}.glidr-tooltip-score.low{color:#cbd5e1}.glidr-tooltip-footer{margin-top:10px;font-size:.7rem;color:#64748b;font-style:italic;text-align:center}.score-col{width:70px;text-align:center}.score-col.sortable-th{cursor:pointer}.score-label{font-size:.75rem;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.025em}.mobile-score{color:#16a34a;font-weight:600}@media (max-width: 640px){.score-col{display:none}}.glidr-tooltip-breakdown{margin-top:8px;padding-top:8px;border-top:1px solid #374151;display:flex;flex-direction:column;gap:4px}.glidr-tooltip-factor{font-size:.7rem;color:#9ca3af;padding-left:8px;position:relative}.glidr-tooltip-factor:before{content:"•";position:absolute;left:0;color:#4b5563}.glidr-tooltip-section{margin-bottom:12px}.glidr-tooltip-section:last-of-type{margin-bottom:0}*{margin:0;padding:0;box-sizing:border-box}html{overflow-y:auto;scrollbar-gutter:stable both-edges}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:linear-gradient(to bottom,#fff,#fafafa);background-attachment:fixed;min-height:100vh;color:#000}
