:root{
  --red:#ef2028;
  --red-dark:#d6151d;
  --navy:#11182f;
  --text:#20263a;
  --muted:#6e7687;
  --line:#e5e8ee;
  --soft:#f6f8fb;
  --container:1380px;
  --shadow:0 16px 38px rgba(23,30,48,.10);
  --header-h:86px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:"Roboto",Arial,sans-serif;color:var(--text);background:#fff;font-size:14px;line-height:1.45;-webkit-font-smoothing:antialiased}
body.drawer-open{overflow:hidden}
button,input,select{font:inherit}
button{cursor:pointer}
a{text-decoration:none;color:inherit}
img{display:block;width:100%}
.page-container{width:min(calc(100% - 40px),var(--container));margin:0 auto}

/* Header */
.site-header{position:absolute;left:0;right:0;top:0;z-index:80;color:#111827;transition:background .22s,box-shadow .22s,transform .22s}
.site-header.is-sticky{position:fixed;background:rgba(255,255,255,.97);box-shadow:0 8px 28px rgba(17,24,39,.10);backdrop-filter:blur(12px)}
.header-row{height:var(--header-h);display:flex;align-items:center;gap:18px}
.brand{display:inline-flex;align-items:center;gap:9px;min-width:230px;flex:0 0 auto}
.brand-logo-img{height:75px!important;max-height:75px!important;width:auto!important;max-width:280px!important;object-fit:contain!important;object-position:left center;flex:0 0 auto}
.brand-symbol{width:42px;height:42px;display:grid;place-items:center;color:var(--red);font-size:27px}
.brand-text{display:flex;flex-direction:column;line-height:1}
.brand-text strong{font-size:30px;letter-spacing:-1.5px;font-weight:900;color:var(--navy)}
.brand-text strong span{color:var(--red)}
.brand-text small{margin-top:5px;color:#5f6673;font-size:11px;font-weight:500}
.main-nav{margin-left:auto;display:flex;align-items:center;gap:10px;font-size:14px;font-weight:700}
.main-nav a,.currency-btn{display:flex;align-items:center;gap:7px;min-height:42px;padding:10px 15px;background:rgba(255,255,255,.94);border:1px solid rgba(225,229,236,.92);border-radius:22px;box-shadow:0 4px 14px rgba(31,38,57,.06);white-space:nowrap}
.main-nav a:hover,.currency-btn:hover{background:#fff;box-shadow:0 7px 18px rgba(31,38,57,.10)}
.main-nav i{font-size:9px}
.header-tools{display:flex;align-items:center;gap:10px}
.currency-btn,.login-btn{font-weight:700}
.currency-btn{color:#182035}
.currency-btn span{margin:0 3px;color:#8a8f9a}
.currency-btn i:first-child{margin-right:1px}
.currency-btn i:last-child{font-size:9px;margin-left:2px}
.login-btn{border:0;border-radius:10px;background:var(--red);color:#fff;padding:13px 20px;box-shadow:0 8px 20px rgba(239,32,40,.24);white-space:nowrap}
.login-btn:hover{background:var(--red-dark)}
.menu-toggle{display:none;margin-left:auto;width:44px;height:44px;border:1px solid #e4e7ed;background:#fff;border-radius:12px;padding:11px;box-shadow:0 8px 22px rgba(0,0,0,.10)}
.menu-toggle span{display:block;height:2px;background:#151c31;margin:5px 0;border-radius:99px;transition:.2s}

/* Mobile drawer */
.mobile-nav-backdrop{position:fixed;inset:0;background:rgba(12,18,33,.45);opacity:0;visibility:hidden;z-index:118;transition:.28s}
.mobile-nav-drawer{position:fixed;top:0;right:0;bottom:0;width:min(86vw,370px);background:#fff;z-index:119;transform:translateX(102%);transition:transform .32s cubic-bezier(.2,.8,.2,1);box-shadow:-18px 0 48px rgba(12,18,33,.18);display:flex;flex-direction:column;padding:env(safe-area-inset-top) 0 env(safe-area-inset-bottom)}
.mobile-nav-backdrop.open{opacity:1;visibility:visible}
.mobile-nav-drawer.open{transform:translateX(0)}
.mobile-nav-head{height:78px;display:flex;align-items:center;gap:10px;padding:0 18px;border-bottom:1px solid #edf0f4}
.mobile-drawer-brand{min-width:0;transform:scale(.92);transform-origin:left center}
.mobile-nav-close{margin-left:auto;width:40px;height:40px;border:0;border-radius:50%;background:#f2f4f7;color:#182035;font-size:18px}
.mobile-nav-links{display:flex;flex-direction:column;padding:12px 14px;overflow:auto}
.mobile-nav-links a{display:flex;align-items:center;gap:14px;min-height:58px;padding:0 12px;border-bottom:1px solid #eef1f4;font-size:16px;font-weight:700;color:#172036}
.mobile-nav-links a:last-child{border-bottom:0}
.mobile-nav-links i{width:24px;color:var(--red);text-align:center}
.mobile-nav-meta{margin-top:auto;padding:14px 16px 18px;border-top:1px solid #edf0f4;display:grid;gap:10px}
.mobile-currency{height:48px;border:1px solid #e3e7ed;border-radius:12px;background:#fff;display:flex;align-items:center;justify-content:center;gap:9px;color:#1a2236;font-weight:700}
.mobile-currency b{font-weight:400;color:#a2a8b3}.mobile-login{width:100%;height:48px}

/* Hero */
.hero-section{position:relative;z-index:5;min-height:600px;background:#eceff4;overflow:visible;isolation:isolate}
.hero-bg-slider{position:absolute;inset:0;z-index:0;overflow:hidden;background:#eceff4}
.hero-bg-slide{position:absolute;inset:-2%;z-index:0;background-size:cover;background-position:center 48%;opacity:0;transform:scale(1.035);transition:none!important;will-change:opacity,transform;pointer-events:none;backface-visibility:hidden;transform-origin:center center}
.hero-bg-slide.active{z-index:2;opacity:1;transform:scale(1)}
.hero-bg-slide.leaving{z-index:3}
.hero-overlay{position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(255,247,246,.62) 0%,rgba(255,255,255,.19) 44%,rgba(255,245,242,.14) 100%)}
.hero-content{z-index:3}
.hero-content{position:relative;min-height:600px;padding-top:117px}
.hero-copy{width:600px;padding-left:12px;color:#11182f;text-shadow:0 1px 0 rgba(255,255,255,.15)}
.hero-copy h1{font-size:48px;line-height:1.02;letter-spacing:-1.8px;margin:0 0 14px;font-weight:900;white-space:nowrap}
.hero-copy>p{font-size:19px;line-height:1.35;margin:0;color:#31364a;font-weight:500}
.hero-copy h1,.hero-copy>p{transition:none!important;will-change:opacity,transform;backface-visibility:hidden}
.hero-copy.is-changing h1,.hero-copy.is-changing>p{opacity:1;transform:none}
.hero-points{display:flex;gap:25px;align-items:center;margin-top:23px;flex-wrap:wrap;font-size:13px;font-weight:800}
.hero-points span{display:flex;align-items:center;gap:7px}
.hero-points i{color:#253152}
.hero-art-copy{position:absolute;right:18px;top:125px;display:flex;flex-direction:column;align-items:flex-start;transform:rotate(-7deg);font-family:cursive;color:#19203a;font-size:28px;line-height:1.05;font-style:italic;text-shadow:0 1px 0 #fff}
.hero-art-copy span:last-child{position:relative}.hero-art-copy span:last-child:after{content:"";position:absolute;left:5px;right:-16px;bottom:-10px;height:3px;background:var(--red);transform:rotate(-10deg);border-radius:10px}
.booking-card{position:absolute;z-index:20;left:0;right:0;bottom:26px;background:#fffffff0;border-radius:22px;box-shadow:0 22px 55px rgba(17,24,39,.17);overflow:visible}
.booking-tabs{display:flex;gap:10px;padding:16px 22px 0}
.booking-tab{border:1px solid #dcdfe7;background:#fff;border-radius:15px;padding:12px 22px;font-size:16px;font-weight:800;color:#2c3242;min-width:132px;display:flex;align-items:center;justify-content:center;gap:10px}
.booking-tab.active{background:var(--red);border-color:var(--red);color:#fff;box-shadow:0 6px 15px rgba(239,32,40,.18)}
.booking-panel{display:none;border-top:1px solid #f1f1f4;margin-top:12px;padding:13px 22px 20px}
.booking-panel.active{display:block}
.trip-type-row{display:flex;gap:25px;margin:0 0 13px;font-size:14px;color:#343a4b;font-weight:500}
.trip-type-row label{display:flex;gap:8px;align-items:center;cursor:pointer}.trip-type-row input{accent-color:var(--red);width:15px;height:15px;margin:0}
.search-grid{display:grid;align-items:stretch;gap:0}
.flight-search-grid{grid-template-columns:1.15fr 40px 1.15fr .92fr .92fr 1.15fr 1.05fr}
.hotel-search-grid{grid-template-columns:1.7fr .9fr .9fr 1.35fr 1.05fr;gap:10px}
.package-search-grid{grid-template-columns:minmax(0,1.7fr) minmax(230px,.9fr) minmax(180px,.65fr);gap:12px}
.search-field{min-width:0;border:1px solid #e2e4ea;border-radius:12px;padding:10px 14px;background:#fff;display:flex;flex-direction:column;justify-content:center;min-height:80px;text-align:left}
.flight-search-grid .search-field{border-radius:0;border-left:0}.flight-search-grid .search-field:nth-of-type(1){border-left:1px solid #e2e4ea;border-radius:12px 0 0 12px}.flight-search-grid .search-field:nth-of-type(2){border-left:1px solid #e2e4ea}
.search-field .field-label{font-size:11px;color:#707788;margin-bottom:4px;font-weight:500}
.search-field input,.search-field select{border:0;outline:0;background:transparent;padding:0;min-width:0;color:#141a2e;font-weight:800;font-size:19px;width:100%}
.search-field input[type=date]{font-size:16px}.search-field select{appearance:none}.search-field small{color:#667084;font-size:11px;margin-top:4px}
.selector-field{border:1px solid #e2e4ea}.selector-field strong{font-size:18px;color:#141a2e}.selector-field small i{font-size:8px;margin-left:5px}
.swap-cities{align-self:center;justify-self:center;width:34px;height:34px;border:1px solid #e0e4eb;border-radius:50%;background:#fff;color:var(--red);z-index:2;box-shadow:0 2px 7px rgba(0,0,0,.06)}
.primary-search-btn{border:0;background:var(--red);color:#fff;font-weight:800;border-radius:8px;margin-left:12px;min-height:58px;align-self:center;padding:0 20px;white-space:nowrap;box-shadow:0 7px 18px rgba(239,32,40,.18)}
.hotel-search-grid .primary-search-btn,.package-search-grid .primary-search-btn{margin-left:0}.primary-search-btn:hover{background:var(--red-dark)}.return-field.disabled{opacity:.45}

/* Promo slider */
.deal-strip-section{padding:24px 0 12px;background:#fff}
.deal-slider{position:relative;overflow:hidden;border-radius:14px;border:1px solid #e7ebf1;box-shadow:0 4px 14px rgba(23,30,48,.035)}
.deal-slider-track{display:flex;transition:transform .62s cubic-bezier(.2,.78,.2,1);will-change:transform}
.deal-slide{min-width:100%;min-height:118px;background:linear-gradient(95deg,#e7f5ff 0%,#fff8f4 66%,#e9f8ff 100%);display:grid;grid-template-columns:1.42fr .76fr .76fr .76fr .9fr 1.08fr;align-items:center;gap:12px;padding:8px 0 8px 25px}
.deal-strip-intro{display:flex;flex-direction:column}.deal-strip-intro>span{font-size:18px;font-weight:600}.deal-strip-intro>strong{font-size:27px;line-height:1.05}.deal-strip-intro em{color:var(--red);font-style:normal}.deal-strip-intro small{font-size:12px;margin-top:6px;color:#4c5565}
.deal-mini{display:flex;align-items:center;gap:10px}.deal-mini>i{width:50px;height:50px;border-radius:12px;background:#fff;display:grid;place-items:center;color:var(--red);font-size:21px;box-shadow:0 5px 15px rgba(0,0,0,.05)}.deal-mini span{display:flex;flex-direction:column;font-size:11px;color:#545d6e}.deal-mini strong{color:var(--red);font-size:12px;margin-top:2px}
.deal-view-btn{border:0;background:var(--red);color:#fff;border-radius:24px;padding:13px 18px;font-weight:800;white-space:nowrap}.deal-view-btn i{margin-left:7px;font-size:11px}
.deal-photo{height:102px;overflow:hidden;border-radius:12px 0 0 12px}.deal-photo img{height:100%;object-fit:cover}
.deal-slider-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:4;width:32px;height:32px;border:1px solid rgba(255,255,255,.8);border-radius:50%;background:rgba(255,255,255,.92);color:#596273;display:grid;place-items:center;box-shadow:0 5px 14px rgba(28,36,52,.10);opacity:.88}.deal-slider-arrow:hover{opacity:1}.deal-prev{left:7px}.deal-next{right:7px}.deal-slider-arrow i{font-size:10px}
.deal-dots{position:absolute;left:50%;bottom:5px;transform:translateX(-50%);display:flex;gap:5px;z-index:4}.deal-dots button{width:6px;height:6px;border:0;border-radius:99px;background:#b9c2d0;padding:0;transition:.25s}.deal-dots button.active{width:18px;background:var(--red)}

/* Generic sections */
.site-section{padding:26px 0 10px}
.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:15px}
.section-heading h2{font-size:30px;line-height:1.08;letter-spacing:-.55px;margin:0 0 4px;color:#1d2336;font-weight:800}.section-heading p{font-size:15px;color:#767d8d;margin:0}
.section-actions{display:flex;align-items:center;gap:9px}.link-button{border:0;background:transparent;color:#125ed3;font-weight:700;font-size:14px;padding:8px}.link-button i{font-size:10px;margin-left:4px}
.round-arrow{width:36px;height:36px;border-radius:50%;border:1px solid #dfe3ea;background:#fff;color:#606978;display:grid;place-items:center;transition:.18s}.round-arrow i{font-size:11px}.round-arrow:hover{background:#f5f7fa;color:var(--red)}
.horizontal-track{display:flex;overflow:hidden;gap:18px;scroll-behavior:smooth;scrollbar-width:none;overscroll-behavior-inline:contain}.horizontal-track::-webkit-scrollbar{display:none}

/* Offers: compact like reference */
.offers-grid{gap:18px}
.offer-card{flex:0 0 calc((100% - 36px)/3);height:172px;border:1px solid #e5e8ee;border-radius:14px;overflow:hidden;background:#fff;display:grid;grid-template-columns:44% 56%;box-shadow:0 6px 18px rgba(23,30,48,.04)}
.offer-card img{height:100%;object-fit:cover}.offer-body{padding:15px 18px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.offer-tag{text-transform:uppercase;font-size:9px;font-weight:800;border-radius:99px;padding:4px 8px;margin-bottom:7px}.flight-tag{background:#eaf4ff;color:#1774d4}.hotel-tag{background:#ffebeb;color:#eb4047}.package-tag{background:#e6f7ec;color:#108e46}.offer-body h3{font-size:20px;margin:0 0 3px;color:#1a2033;font-weight:700}.offer-body h3 b{color:var(--red)}.offer-body p{font-size:14px;color:#555e6f;margin:0 0 10px}.small-outline-btn{border:1px solid var(--red);background:#fff;color:var(--red);border-radius:20px;padding:6px 11px;font-size:12px;font-weight:700}.small-outline-btn i{font-size:9px;margin-left:5px}

/* Hotel carousel */
.hotel-grid{gap:18px}.hotel-card{flex:0 0 calc((100% - 54px)/4);border:1px solid #e5e8ee;border-radius:13px;background:#fff;overflow:hidden;box-shadow:0 5px 18px rgba(23,30,48,.04)}.hotel-image{position:relative;height:190px;overflow:hidden}.hotel-image img{height:100%;object-fit:cover;transition:.35s}.hotel-card:hover .hotel-image img{transform:scale(1.035)}.favourite{position:absolute;right:10px;top:10px;width:33px;height:33px;border:0;border-radius:50%;background:rgba(255,255,255,.94);color:#1170cb;font-size:17px;display:grid;place-items:center}.favourite.active{color:var(--red)}.hotel-info{padding:12px 13px 13px}.hotel-title-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.hotel-title-row h3{font-size:17px;margin:0;font-weight:700}.hotel-title-row span{font-size:12px;font-weight:700;color:#6d7381}.hotel-title-row i{color:#f9a716}.hotel-info p{margin:5px 0 0;color:#4676b7;font-size:13px}.hotel-info p i{margin-right:5px}.hotel-price{display:flex;align-items:flex-end;justify-content:flex-end;gap:9px;margin-top:2px}.hotel-price small{font-size:10px;color:#777f8d}.hotel-price strong{font-size:20px;color:#1c2234}

/* Destination carousel */
.destination-section{padding-top:25px}.destination-grid{gap:14px}.destination-card{flex:0 0 calc((100% - 70px)/6);border:1px solid #e6e9ee;border-radius:12px;overflow:hidden;background:#fff;box-shadow:0 5px 16px rgba(25,34,50,.035)}.destination-card img{height:165px;object-fit:cover}.destination-card>div{padding:10px 11px 12px}.destination-card h3{font-size:16px;margin:0 0 2px}.destination-card p{font-size:13px;color:#6d7483;margin:0}.destination-card strong{color:#1d2336;font-size:16px}.international-section{padding-top:18px}

/* Services */
.services-section{padding-top:34px}.services-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:12px}.service-card{border:1px solid #e5e8ed;background:#fff;border-radius:12px;min-height:126px;padding:17px 12px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:11px;color:#343a4b;box-shadow:0 4px 14px rgba(23,30,48,.035);transition:.18s}.service-card:hover{transform:translateY(-2px);box-shadow:0 9px 22px rgba(23,30,48,.08)}.service-icon{width:46px;height:46px;border-radius:13px;display:grid;place-items:center;font-size:22px}.service-card strong{font-size:15px;text-align:center}.service-icon.blue{background:#e7f2ff;color:#1672cf}.service-icon.violet{background:#efebff;color:#6958e8}.service-icon.teal{background:#e4fbfb;color:#12a0a7}.service-icon.sky{background:#e9f4ff;color:#207cc4}.service-icon.orange{background:#fff0e5;color:#ff7a14}.service-icon.red{background:#ffeaea;color:#e9272f}

/* Why choose */
.why-section{padding-top:38px;padding-bottom:26px}.why-grid{display:grid;grid-template-columns:1.08fr 1fr;gap:28px;align-items:start}.why-copy{padding-right:4px}.benefits-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.benefit{min-height:78px;border:1px solid #e6e9ee;border-radius:12px;padding:13px 14px;display:flex;gap:11px;align-items:flex-start;background:#fff}.benefit>i{font-size:19px;color:var(--red);margin-top:3px;width:24px;text-align:center}.benefit span{display:flex;flex-direction:column;gap:3px}.benefit strong{font-size:15px}.benefit small{font-size:12px;color:#757c8a;line-height:1.35}.why-image{height:292px;border-radius:14px;overflow:hidden}.why-image img{height:100%;object-fit:cover;object-position:center 54%}

/* Newsletter and footer */
.newsletter-section{padding:12px 0 30px}.newsletter-box{min-height:90px;border-radius:12px;background:linear-gradient(90deg,#fff0f0,#fff7f7);display:flex;align-items:center;justify-content:space-between;gap:22px;padding:17px 26px;border:1px solid #fee2e2}.newsletter-title{display:flex;align-items:center;gap:17px}.newsletter-title>i{font-size:36px;color:var(--red)}.newsletter-title h3{font-size:19px;margin:0 0 2px}.newsletter-title p{font-size:12px;color:#7a808d;margin:0}.newsletter-box form{display:flex;align-items:center;width:500px}.newsletter-box input{height:46px;flex:1;border:1px solid #e3e6eb;border-radius:8px 0 0 8px;padding:0 15px;outline:0}.newsletter-box button{height:46px;border:0;background:var(--red);color:#fff;font-weight:700;border-radius:0 8px 8px 0;padding:0 27px}
.site-footer{border-top:1px solid #edf0f3;background:#fff;padding:32px 0 18px}.footer-top{display:grid;grid-template-columns:1.45fr repeat(5,1fr);gap:27px;padding-bottom:27px}.footer-logo{min-width:0;margin-bottom:14px}.footer-brand p{max-width:265px;color:#737b89;font-size:12px;line-height:1.7}.social-links{display:flex;gap:9px;margin-top:15px}.social-links a{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#f1f3f7;color:#30394a;font-size:13px}.footer-column{display:flex;flex-direction:column;gap:8px}.footer-column h4{font-size:15px;margin:4px 0}.footer-column a{font-size:12px;color:#717887}.footer-column a:hover{color:var(--red)}.footer-bottom{border-top:1px solid #edf0f3;padding-top:17px;display:flex;align-items:center;justify-content:space-between;color:#8a909d;font-size:11px}.footer-bottom>div{display:flex;gap:18px}

/* Modal / toast */
.modal{position:fixed;inset:0;background:rgba(9,15,29,.48);display:none;align-items:center;justify-content:center;z-index:140}.modal.open{display:flex}.modal-card{width:min(420px,calc(100vw - 32px));background:#fff;border-radius:18px;padding:24px;box-shadow:0 28px 70px rgba(0,0,0,.24);position:relative}.modal-card h3{margin:0 0 22px;font-size:22px}.modal-close{position:absolute;right:14px;top:14px;border:0;background:#f4f5f7;border-radius:50%;width:34px;height:34px}.counter-row{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #eceef2;padding:16px 0}.counter-row>div{display:flex;align-items:center;gap:14px}.counter-row button{width:32px;height:32px;border:1px solid #dfe3e9;border-radius:8px;background:#fff}.modal-select{display:flex;flex-direction:column;gap:8px;margin:8px 0 20px;font-size:13px}.modal-select select{height:44px;border:1px solid #dde1e7;border-radius:8px;padding:0 10px}.modal-apply{width:100%;height:46px;border:0;border-radius:8px;background:var(--red);color:#fff;font-weight:800}.toast{position:fixed;right:22px;bottom:22px;background:#172139;color:#fff;padding:13px 16px;border-radius:9px;box-shadow:0 14px 35px rgba(0,0,0,.2);z-index:150;opacity:0;transform:translateY(24px);pointer-events:none;transition:.25s;max-width:min(400px,calc(100vw - 40px));font-size:13px}.toast.show{opacity:1;transform:none}

/* v5 hero rotation + mobile header polish */
@media(prefers-reduced-motion:reduce){.hero-bg-slide{transition:none!important}.hero-copy h1,.hero-copy>p{transition:none!important}}

/* Keep the package module inside the TripSutra red/navy design system */
.packages-section .section-kicker{color:var(--red)}
.packages-section .round-arrow:hover{border-color:var(--red);color:var(--red)}
.package-card{transition:transform .2s ease,border-color .2s ease;box-shadow:none}
.package-card:hover{transform:translateY(-2px);border-color:#ffd7da;box-shadow:none}
.package-price{background:var(--red)}
.package-duration i{color:var(--red)}
.package-inclusions span{background:#fff1f2;color:var(--red)}
.package-enquire:hover{background:#fff2f3}

@media(max-width:1280px){
  .brand{min-width:205px}.brand-text strong{font-size:27px}.main-nav a,.currency-btn{padding:9px 12px}.hero-copy h1{font-size:44px}.hero-art-copy{right:18px}.flight-search-grid{grid-template-columns:1fr 36px 1fr .9fr .9fr 1.05fr .95fr}.search-field input{font-size:17px}.deal-slide{grid-template-columns:1.35fr .78fr .78fr .78fr 1fr}.deal-photo{display:none}.hotel-image{height:180px}.destination-card img{height:150px}.footer-top{gap:18px}
}

@media(max-width:1024px){
  :root{--header-h:76px}.page-container{width:min(calc(100% - 28px),var(--container))}.main-nav{display:none}.currency-btn{display:none}.header-tools{margin-left:auto}.menu-toggle{display:block}.hero-section,.hero-content{min-height:650px}.hero-copy{width:560px;padding-top:5px}.hero-copy h1{font-size:42px}.booking-card{bottom:22px}.flight-search-grid{grid-template-columns:1fr 36px 1fr 1fr 1fr}.flight-search-grid .selector-field{grid-column:1/4;border-left:1px solid #e2e4ea;border-radius:12px;margin-top:10px}.flight-search-grid .primary-search-btn{grid-column:4/6;margin-top:10px}.hotel-search-grid{grid-template-columns:1.4fr 1fr 1fr}.hotel-search-grid .selector-field{grid-column:1/3}.hotel-search-grid .primary-search-btn{grid-column:3}.deal-slide{grid-template-columns:1.35fr 1fr 1fr 1fr auto;padding-right:14px}.offer-card{flex-basis:calc((100% - 18px)/2);height:170px}.hotel-card{flex-basis:calc((100% - 36px)/3)}.destination-card{flex-basis:calc((100% - 42px)/4)}.services-grid{grid-template-columns:repeat(3,1fr)}.footer-top{grid-template-columns:1.5fr repeat(3,1fr)}.footer-brand{grid-row:span 2}.why-image{height:280px}
}

@media(max-width:760px){
  body{font-size:14px;background:#f5f7fb}.page-container{width:calc(100% - 20px)}.site-header{position:absolute}.site-header.is-sticky{position:fixed}.header-row{height:70px;gap:8px}.brand{min-width:0}.brand-symbol{width:32px;height:32px;font-size:20px}.brand-text strong{font-size:23px;letter-spacing:-1px}.brand-text small{font-size:8px;margin-top:4px}.header-tools{display:none}.menu-toggle{margin-left:auto;width:42px;height:42px;border-radius:11px}.hero-section{min-height:auto;background-position:center top}.hero-overlay{background:linear-gradient(180deg,rgba(255,250,249,.60),rgba(255,255,255,.17) 42%,rgba(255,248,246,.20))}.hero-content{min-height:auto;padding-top:86px;padding-bottom:14px}.hero-copy{width:100%;padding:0 4px}.hero-copy h1{font-size:30px;line-height:1.05;white-space:normal;letter-spacing:-1px;margin-bottom:10px}.hero-copy>p{font-size:15px}.hero-copy>p br{display:none}.hero-points{gap:7px;margin-top:14px}.hero-points span{background:rgba(255,255,255,.88);padding:6px 8px;border-radius:99px;font-size:9px}.hero-points span:nth-child(3){display:none}.hero-art-copy{display:none}.booking-card{position:relative;left:auto;right:auto;bottom:auto;margin-top:20px;border-radius:18px;box-shadow:0 14px 35px rgba(17,24,39,.15)}.booking-tabs{padding:10px 9px 0;gap:5px}.booking-tab{min-width:0;flex:1;padding:10px 6px;border-radius:11px;font-size:12px;gap:6px}.booking-panel{padding:11px 10px 13px}.trip-type-row{gap:13px;overflow-x:auto;white-space:nowrap;font-size:12px;padding-bottom:2px}.search-grid,.flight-search-grid,.hotel-search-grid,.package-search-grid{display:flex;flex-direction:column;gap:8px}.search-field,.flight-search-grid .search-field:nth-of-type(1),.flight-search-grid .search-field:nth-of-type(2){border:1px solid #e2e4ea;border-radius:11px;min-height:66px}.search-field input{font-size:17px}.swap-cities{position:absolute;right:22px;margin-top:73px}.primary-search-btn,.flight-search-grid .primary-search-btn,.hotel-search-grid .primary-search-btn{margin:0;min-height:49px;grid-column:auto}.flight-search-grid .selector-field,.hotel-search-grid .selector-field{grid-column:auto;margin-top:0}.deal-strip-section{padding:12px 0 5px}.deal-slider{border-radius:16px}.deal-slide{display:grid;grid-template-columns:1fr auto;gap:10px;min-height:142px;padding:15px 44px 15px 15px}.deal-strip-intro{grid-column:1/2}.deal-strip-intro>span{font-size:15px}.deal-strip-intro>strong{font-size:22px}.deal-strip-intro small{font-size:10px}.deal-mini{display:none}.deal-view-btn{grid-column:1/2;justify-self:start;padding:10px 14px;font-size:12px}.deal-photo{display:block;grid-column:2;grid-row:1/3;width:104px;height:105px;border-radius:12px}.deal-dots{bottom:6px}.deal-slider-arrow{width:29px;height:29px}.deal-prev{left:5px}.deal-next{right:5px}.site-section{padding:12px 0 0}.site-section>.page-container{background:#fff;border-radius:17px;padding:15px 12px;box-shadow:0 6px 20px rgba(22,31,50,.045)}.section-heading{align-items:flex-start;margin-bottom:13px}.section-heading h2{font-size:24px}.section-heading p{font-size:13px}.section-actions{gap:6px}.section-actions .link-button{font-size:12px;padding:6px}.round-arrow{width:32px;height:32px}.horizontal-track{overflow-x:auto;gap:11px;scroll-snap-type:x proximity;padding-bottom:3px}.offer-card{flex:0 0 86%;height:158px;grid-template-columns:43% 57%;scroll-snap-align:start}.offer-body{padding:12px}.offer-body h3{font-size:18px}.offer-body p{font-size:12px}.hotel-card{flex:0 0 78%;scroll-snap-align:start}.hotel-image{height:172px}.destination-card{flex:0 0 47%;scroll-snap-align:start}.destination-card img{height:142px}.services-section{padding-top:12px}.services-grid{grid-template-columns:repeat(2,1fr);gap:9px}.service-card{min-height:110px}.service-card strong{font-size:13px}.why-section{padding-top:12px;padding-bottom:0}.why-grid{grid-template-columns:1fr;gap:14px}.why-copy{padding-right:0}.benefits-grid{grid-template-columns:1fr;gap:9px}.benefit{min-height:74px}.why-image{height:220px;order:2}.newsletter-section{padding:12px 0}.newsletter-box{flex-direction:column;align-items:stretch;padding:16px;border-radius:16px}.newsletter-title>i{font-size:30px}.newsletter-title h3{font-size:17px}.newsletter-box form{width:100%}.site-footer{margin-top:0;padding-top:26px}.footer-top{grid-template-columns:1fr 1fr;gap:20px}.footer-brand{grid-column:1/-1;grid-row:auto}.footer-bottom{flex-direction:column;align-items:flex-start;gap:11px}.footer-bottom>div{flex-wrap:wrap;gap:9px 14px}.toast{right:12px;bottom:12px}
}

@media(max-width:480px){
  .page-container{width:calc(100% - 16px)}.brand-text strong{font-size:21px}.brand-text small{font-size:7.5px}.menu-toggle{width:40px;height:40px;padding:0}.hero-copy h1{font-size:28px}.booking-tab{font-size:11px}.trip-type-row{gap:10px}.section-heading h2{font-size:22px}.section-heading p{font-size:12px}.section-actions .link-button{display:none}.round-arrow{width:31px;height:31px}.offer-card{flex-basis:91%;height:154px}.hotel-card{flex-basis:86%}.destination-card{flex-basis:58%}.services-grid{gap:8px}.service-card{padding:13px 8px}.benefit strong{font-size:14px}.newsletter-box form{display:grid;grid-template-columns:1fr}.newsletter-box input,.newsletter-box button{border-radius:8px}.newsletter-box button{margin-top:8px}.footer-top{grid-template-columns:1fr}.footer-brand{grid-column:auto}.footer-column{border-top:1px solid #f0f2f5;padding-top:14px}.mobile-nav-drawer{width:88vw}
}

@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

/* =========================================================
   v4 — booking UX, datepicker, login, package carousel
   Built on the accepted v3 state
   ========================================================= */

/* jQuery date fields */
.search-field{position:relative}
.search-field .jquery-date{padding-right:28px;cursor:pointer}
.date-field-icon{position:absolute;right:13px;top:50%;transform:translateY(-2px);font-size:15px;color:#121827;pointer-events:none}
.return-field.disabled .date-field-icon{opacity:.45}

/* Custom jQuery UI Datepicker */
.ui-datepicker{display:none;width:310px;padding:14px;background:#fff;border:1px solid #e5e9f0;border-radius:16px;box-shadow:0 22px 55px rgba(17,24,39,.18);font-family:"Roboto",Arial,sans-serif;z-index:220!important;color:#172036}
.ui-datepicker-header{position:relative;display:flex;align-items:center;justify-content:center;min-height:42px;margin-bottom:8px;background:#fff;border:0}
.ui-datepicker-title{font-size:15px;font-weight:800;color:#172036;line-height:42px}
.ui-datepicker-prev,.ui-datepicker-next{position:absolute;top:4px;width:34px;height:34px;border:1px solid #e3e7ed;border-radius:10px;background:#f8fafc;color:#263049;cursor:pointer;display:grid;place-items:center;transition:.18s}
.ui-datepicker-prev{left:0}.ui-datepicker-next{right:0}
.ui-datepicker-prev:hover,.ui-datepicker-next:hover{background:#fff1f2;border-color:#ffc8cb;color:var(--red)}
.ui-datepicker-prev .ui-icon,.ui-datepicker-next .ui-icon{display:grid;place-items:center;width:100%;height:100%;font-size:20px;line-height:1;text-indent:0;overflow:visible;background:none}
.ui-datepicker table{width:100%;border-collapse:separate;border-spacing:4px;margin:0}
.ui-datepicker th{padding:5px 0 6px;font-size:11px;font-weight:800;color:#9097a5;text-transform:uppercase}
.ui-datepicker td{padding:0;text-align:center}
.ui-datepicker td a,.ui-datepicker td span{width:34px;height:34px;margin:auto;border-radius:9px;display:grid;place-items:center;border:0;background:#fff;color:#30384b;font-size:13px;font-weight:600;text-decoration:none}
.ui-datepicker td a:hover{background:#fff0f1;color:var(--red)}
.ui-datepicker .ui-datepicker-today a{background:#fff4f4;color:var(--red);font-weight:800}
.ui-datepicker .ui-state-active{background:var(--red)!important;color:#fff!important;box-shadow:0 5px 12px rgba(239,32,40,.22)}
.ui-datepicker .ui-state-disabled span{color:#c9ced7;background:#fafbfc}
.ui-datepicker-buttonpane{display:none}

/* Slim product-support shortcuts replacing the v3 promo banner */
.quick-links-section{padding:20px 0 6px;background:#fff}
.quick-links-track{display:grid;grid-template-columns:repeat(5,1fr);border:1px solid #e6e9ef;border-radius:14px;overflow:hidden;background:#fff;box-shadow:0 5px 18px rgba(22,31,50,.04)}
.quick-link-card{min-width:0;min-height:76px;border:0;border-right:1px solid #e9ecf1;background:#fff;padding:11px 15px;display:flex;align-items:center;gap:12px;text-align:left;color:#20263a;transition:.18s}
.quick-link-card:last-child{border-right:0}
.quick-link-card:hover{background:#fff6f6}
.quick-link-icon{flex:0 0 40px;width:40px;height:40px;border-radius:11px;background:#f4f7fb;display:grid;place-items:center;color:var(--red);font-size:18px}
.quick-link-card>span:last-child{min-width:0;display:flex;flex-direction:column;gap:2px}
.quick-link-card strong{font-size:13px;line-height:1.2;color:#182035}
.quick-link-card small{font-size:10.5px;line-height:1.25;color:#747c8c}

/* Special Offers alignment repair */
.offer-card{height:164px}
.offer-body{padding:14px 17px;justify-content:flex-start;min-width:0}
.offer-tag{margin-bottom:6px;line-height:1}
.offer-body h3{font-size:19px;line-height:1.15;margin:0 0 4px;white-space:normal}
.offer-body p{font-size:13px;line-height:1.25;margin:0 0 8px}
.offer-body .small-outline-btn{margin-top:auto;flex:0 0 auto}

/* Most Popular Packages */
.packages-section{padding-top:32px}
.package-heading{align-items:flex-end}
.section-kicker{display:inline-block;margin-bottom:4px;color:var(--red);font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.8px}
.package-grid{gap:18px}
.package-card{flex:0 0 calc((100% - 54px)/4);border:1px solid #e5e8ee;border-radius:15px;background:#fff;overflow:hidden;box-shadow:none;scroll-snap-align:start}
.package-image{position:relative;height:190px;overflow:hidden;background:#f3f5f8}
.package-image img{height:100%;object-fit:cover;transition:transform .35s}
.package-card:hover .package-image img{transform:scale(1.035)}
.package-price{position:absolute;left:12px;bottom:12px;padding:7px 10px;border-radius:7px;background:var(--red);color:#fff;font-size:12px;font-weight:800;box-shadow:0 4px 12px rgba(0,0,0,.14)}
.package-body{min-height:232px;padding:15px 15px 14px;display:flex;flex-direction:column}
.package-body h3{font-size:18px;line-height:1.2;margin:0 0 8px;color:#161d32}
.package-duration{margin:0 0 12px;color:#687185;font-size:12px}.package-duration i{margin-right:6px;color:var(--red)}
.package-tags{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:12px}.package-tags span{padding:5px 9px;border:1px solid #ffd9dc;border-radius:99px;background:#fff7f8;color:#27324a;font-size:10px;font-weight:700}
.package-inclusions{display:flex;align-items:center;gap:8px;margin-bottom:14px}.package-inclusions span{width:29px;height:29px;border-radius:50%;display:grid;place-items:center;background:#fff1f2;color:var(--red);font-size:11px}
.package-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:auto}.package-actions :is(a,button){height:40px;border-radius:8px;font-size:12px;font-weight:800;line-height:1;border-width:1px;border-style:solid;box-sizing:border-box;transition:transform .18s ease,background .18s ease,color .18s ease}.package-details{border-color:var(--navy);background:var(--navy);color:#fff}.package-enquire{border-color:var(--red);background:#fff;color:var(--red)}.package-actions :is(a,button):hover{transform:translateY(-1px)}

/* Footer contact details */
.footer-contact{display:flex;flex-direction:column;gap:8px;margin:6px 0 14px}
.footer-contact a{display:flex;align-items:center;gap:9px;color:#5d6677;font-size:12px;font-weight:500}
.footer-contact i{width:17px;color:var(--red);text-align:center}
.footer-contact a:hover{color:var(--red)}

/* Traveller modal — Yatra-style number matrix */
.traveller-modal-card{width:min(500px,calc(100vw - 28px));padding:24px 24px 20px}
.traveller-modal-card h3{padding-right:42px;margin-bottom:14px}
.traveller-option-row{padding:11px 0 5px}
.traveller-label{display:flex;flex-direction:column;margin-bottom:9px}.traveller-label strong{font-size:14px;color:#22293b}.traveller-label small{font-size:11px;color:#9a9fab;margin-top:1px}
.traveller-number-group{display:flex;align-items:center;width:100%;border:1px solid #e1e5eb;border-radius:8px;overflow:hidden;background:#fff;box-shadow:0 2px 8px rgba(20,30,50,.05)}
.traveller-number-group button{flex:1;height:38px;min-width:0;border:0;border-right:1px solid #edf0f4;background:#fff;color:#2f3545;font-size:14px}
.traveller-number-group button:last-child{border-right:0}.traveller-number-group button:hover:not(:disabled){background:#fff2f2;color:var(--red)}
.traveller-number-group button.active{background:var(--red);color:#fff;font-weight:800}
.traveller-number-group button:disabled{color:#c5c9d1;background:#fbfbfc;cursor:not-allowed}
.travel-class-wrap{margin-top:22px}.travel-class-wrap>strong{display:block;font-size:13px;margin-bottom:10px}
.travel-class-options{display:flex;flex-wrap:wrap;gap:10px 22px}.travel-class-options label{display:flex;align-items:center;gap:7px;font-size:14px;cursor:pointer}.travel-class-options input{width:16px;height:16px;margin:0;accent-color:var(--red)}
.traveller-modal-footer{display:flex;justify-content:flex-end;margin-top:20px}.traveller-done{height:42px;min-width:82px;border:0;border-radius:8px;background:var(--red);color:#fff;font-weight:800;padding:0 18px}

/* Login / Signup modal */
.login-modal-card{position:relative;width:min(920px,calc(100vw - 34px));display:grid;grid-template-columns:42% 58%;background:#fff;border-radius:18px;overflow:hidden;box-shadow:0 30px 80px rgba(0,0,0,.28)}
.login-modal-close{z-index:3;right:16px;top:16px;width:38px;height:38px;font-size:18px}
.login-side-panel{background:#fff7f8;padding:28px 28px 26px;display:flex;flex-direction:column;justify-content:center;min-height:540px}
.login-side-image{width:230px;height:230px;margin:0 auto 24px;border-radius:50%;overflow:hidden;border:8px solid rgba(255,255,255,.9);box-shadow:0 12px 30px rgba(31,39,58,.10)}
.login-side-image img{height:100%;object-fit:cover}
.login-benefits{display:grid;gap:10px}.login-benefits>div{display:flex;align-items:center;gap:10px;border:1px solid #ffdadd;background:#fff;border-radius:10px;padding:10px 11px}.login-benefits i{width:22px;color:var(--red);text-align:center}.login-benefits span{display:flex;flex-direction:column}.login-benefits strong{font-size:12px}.login-benefits small{font-size:10px;color:#7d756d;margin-top:2px}
.login-form-panel{padding:54px 44px 40px;min-height:540px;display:flex;flex-direction:column;justify-content:center}
.account-type-tabs{display:grid;grid-template-columns:1fr 1fr;border:1px solid #e3e6eb;border-radius:26px;padding:3px;box-shadow:0 2px 8px rgba(20,30,50,.05);margin-bottom:28px}.account-type{height:40px;border:0;border-radius:22px;background:transparent;color:#555d6c;font-size:13px}.account-type.active{background:#fff0f1;color:var(--red);box-shadow:inset 0 0 0 1px #ff8f95;font-weight:700}
.login-head{margin-bottom:18px}.login-kicker{display:inline-flex;padding:5px 9px;border-radius:99px;background:#fff1f2;color:var(--red);font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.8px;margin-bottom:8px}.login-head h2{margin:0 0 5px;font-size:24px;line-height:1.15;color:#1a2033}.login-head p{margin:0;color:#758096;font-size:13px}
.login-mode-tabs{display:grid;grid-template-columns:1fr 1fr;background:#f2f5f9;border-radius:12px;padding:4px;margin-bottom:18px}.login-mode{height:44px;border:0;border-radius:9px;background:transparent;color:#59657a;font-weight:700;font-size:13px}.login-mode.active{background:var(--red);color:#fff;box-shadow:0 7px 16px rgba(239,32,40,.17)}
.login-pane{display:none}.login-pane.active{display:block}
.login-field-row{display:grid;grid-template-columns:110px 1fr;gap:10px}.login-field-row label,.login-field{display:flex;flex-direction:column;gap:6px;margin-bottom:13px}.login-field-row label>span,.login-field>span{font-size:11px;font-weight:700;color:#354058}.login-field-row input,.login-field input{width:100%;height:46px;border:1px solid #d9dee7;border-radius:10px;padding:0 13px;outline:0;color:#20263a;background:#fff}.login-field-row input:focus,.login-field input:focus{border-color:#ff8f95;box-shadow:0 0 0 3px rgba(239,32,40,.08)}
.login-primary{width:100%;height:48px;border:0;border-radius:9px;background:var(--red);color:#fff;font-weight:800;margin-top:2px;box-shadow:0 8px 18px rgba(239,32,40,.18)}
.login-terms{font-size:10.5px;line-height:1.45;color:#697286;margin:13px 0}.login-terms a{color:#245fc1;text-decoration:underline}
.login-divider{display:flex;align-items:center;gap:12px;color:#7b8290;font-size:12px;margin:15px 0}.login-divider:before,.login-divider:after{content:"";height:1px;background:#e5e8ed;flex:1}
.google-login{width:100%;height:44px;border:1px solid #e3e6eb;border-radius:9px;background:#f8f9fb;color:#646b79;font-weight:700}.google-mark{display:inline-grid;place-items:center;width:23px;height:23px;border-radius:50%;background:#fff;color:#4285f4;font-size:16px;font-weight:900;margin-right:7px;box-shadow:0 1px 4px rgba(0,0,0,.08)}

@media(max-width:1280px){
  .quick-link-card{padding:10px 11px}.quick-link-card strong{font-size:12px}.quick-link-card small{font-size:9.5px}
  .package-card{flex-basis:calc((100% - 36px)/3)}
}

@media(max-width:1024px){
  .header-tools{display:none}
  .menu-toggle{margin-left:auto;display:grid;place-content:center;gap:4px;width:42px;height:42px;padding:0;border:1px solid #dfe4eb;border-radius:11px;background:#fff;box-shadow:0 5px 14px rgba(18,27,46,.08)}
  .menu-toggle span{width:20px;height:2px;margin:0;background:#182035;border-radius:9px}
  .quick-links-track{display:flex;overflow-x:auto;scrollbar-width:none}.quick-links-track::-webkit-scrollbar{display:none}.quick-link-card{flex:0 0 240px;border-right:1px solid #e9ecf1}
  .package-card{flex-basis:calc((100% - 36px)/3)}
  .login-modal-card{grid-template-columns:40% 60%}.login-side-panel{padding:24px 18px}.login-side-image{width:190px;height:190px}.login-form-panel{padding:52px 30px 30px}
}

@media(max-width:760px){
  .ui-datepicker{width:min(318px,calc(100vw - 24px));padding:12px;border-radius:14px}.ui-datepicker td a,.ui-datepicker td span{width:32px;height:32px}
  .quick-links-section{padding:10px 0 0}.quick-links-section>.page-container{width:100%}.quick-links-track{border-radius:0;border-left:0;border-right:0;padding-left:10px}.quick-link-card{flex-basis:220px;min-height:70px;padding:10px 12px}.quick-link-card:last-child{border-right:1px solid #e9ecf1}.quick-link-icon{width:38px;height:38px;flex-basis:38px}
  .offer-card{height:164px}.offer-body{padding:12px 12px}.offer-body h3{font-size:17px}.offer-body p{font-size:11.5px}.small-outline-btn{padding:5px 9px;font-size:11px}
  .packages-section{padding-top:12px}.package-card{flex:0 0 84%}.package-image{height:185px}.package-body{min-height:224px}.package-heading .section-kicker{font-size:9px}
  #traveller-modal{align-items:flex-end}.traveller-modal-card{width:100%;max-width:none;border-radius:20px 20px 0 0;padding:20px 16px calc(18px + env(safe-area-inset-bottom));max-height:92vh;overflow-y:auto}.traveller-number-group button{height:36px;font-size:13px}.travel-class-options{gap:10px 16px}.traveller-modal-footer{position:sticky;bottom:0;background:#fff;padding-top:10px}.traveller-done{width:100%}
  .login-modal{align-items:flex-end}.login-modal-card{width:100%;max-width:none;grid-template-columns:1fr;border-radius:22px 22px 0 0;max-height:94vh;overflow-y:auto}.login-side-panel{display:none}.login-form-panel{padding:54px 18px calc(22px + env(safe-area-inset-bottom));min-height:0}.login-head h2{font-size:22px}.account-type-tabs{margin-bottom:20px}.login-field-row{grid-template-columns:98px 1fr}.login-modal-close{position:fixed;right:14px;top:auto;transform:none;margin-top:-40px}
  .footer-contact a{font-size:13px}
}

@media(max-width:480px){
  .offer-card{height:160px}.offer-body h3{font-size:16px}.offer-body p{font-size:11px}
  .package-card{flex-basis:90%}.package-image{height:175px}.package-body h3{font-size:17px}.package-actions button{font-size:11px}
  .traveller-modal-card h3{font-size:20px}.traveller-number-group button{height:35px;font-size:12px}.travel-class-options label{font-size:13px}
  .login-field-row{grid-template-columns:92px 1fr;gap:8px}.login-form-panel{padding-left:15px;padding-right:15px}.login-mode{font-size:12px}
}
@media(max-width:760px){
  .login-modal-close{position:absolute;right:14px;top:14px;margin:0;transform:none}
}

/* v6: desktop Services dropdown and internal content pages */
.nav-menu{position:relative;display:flex;align-items:center}
.nav-menu-trigger{display:flex;align-items:center;gap:7px;min-height:42px;padding:10px 15px;border:1px solid rgba(225,229,236,.92);border-radius:22px;background:rgba(255,255,255,.94);box-shadow:0 4px 14px rgba(31,38,57,.06);color:#111827;font-weight:700;white-space:nowrap}
.nav-menu-trigger i{font-size:9px;transition:transform .2s ease}
.nav-menu:hover .nav-menu-trigger,.nav-menu:focus-within .nav-menu-trigger,.nav-menu.open .nav-menu-trigger{background:#fff;box-shadow:0 7px 18px rgba(31,38,57,.10)}
.nav-menu.open .nav-menu-trigger i,.nav-menu:hover .nav-menu-trigger i{transform:rotate(180deg)}
.nav-dropdown-panel{position:absolute;top:calc(100% + 10px);right:0;width:310px;padding:8px;background:#fff;border:1px solid #e5e8ee;border-radius:16px;box-shadow:0 18px 44px rgba(18,27,46,.16);opacity:0;visibility:hidden;transform:translateY(-7px);transition:.2s ease;z-index:120}
.nav-menu:hover .nav-dropdown-panel,.nav-menu:focus-within .nav-dropdown-panel,.nav-menu.open .nav-dropdown-panel{opacity:1;visibility:visible;transform:translateY(0)}
.main-nav .nav-dropdown-panel a{min-height:0;padding:11px 12px;border:0;border-radius:11px;box-shadow:none;background:transparent;gap:12px;white-space:normal}
.main-nav .nav-dropdown-panel a:hover{background:#fff3f3;box-shadow:none}
.nav-dropdown-panel>a>i{width:28px;height:28px;border-radius:8px;display:grid;place-items:center;background:#fff1f1;color:var(--red);font-size:13px}
.nav-dropdown-panel a span{display:flex;flex-direction:column;line-height:1.25}
.nav-dropdown-panel a strong{font-size:13px;color:var(--navy)}
.nav-dropdown-panel a small{font-size:10px;color:#7b8391;font-weight:400;margin-top:2px}
.currency-btn{cursor:default}
.inner-login-link{display:inline-flex;align-items:center;justify-content:center}

.inner-page{background:#f7f8fb}
.inner-page .site-header{position:sticky;top:0;background:rgba(255,255,255,.98);box-shadow:0 6px 24px rgba(17,24,39,.07);backdrop-filter:blur(12px)}
.inner-page .site-header.is-sticky{position:sticky}
.inner-page main{min-height:55vh}
.inner-hero{padding:56px 0 62px;background:linear-gradient(135deg,#fff5f5 0%,#f8fbff 52%,#f3f7ff 100%);border-bottom:1px solid #e8ebf0}
.inner-hero-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:54px;align-items:center}
.inner-hero-copy{max-width:720px}
.eyebrow{display:inline-flex;align-items:center;color:var(--red);font-size:12px;font-weight:800;letter-spacing:.11em;text-transform:uppercase;margin-bottom:12px}
.inner-hero-copy h1,.legal-hero h1{font-size:48px;line-height:1.08;letter-spacing:-1.8px;color:var(--navy);margin:0 0 17px}
.inner-hero-copy p,.legal-hero p{max-width:700px;color:#626c7d;font-size:17px;line-height:1.7;margin:0}
.inner-hero-actions{display:flex;gap:11px;margin-top:27px}
.solid-cta,.outline-cta{min-height:48px;padding:0 20px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;gap:9px;font-weight:800}
.solid-cta{border:1px solid var(--red);background:var(--red);color:#fff;box-shadow:0 10px 24px rgba(239,32,40,.18)}
.solid-cta:hover{background:var(--red-dark);border-color:var(--red-dark)}
.outline-cta{border:1px solid #dce1e9;background:#fff;color:var(--navy)}
.inner-hero-visual{height:380px;border-radius:24px;overflow:hidden;box-shadow:0 24px 55px rgba(22,31,50,.15)}
.inner-hero-visual img{height:100%;object-fit:cover}
.inner-section{padding:58px 0}
.soft-section{background:#fff;border-top:1px solid #edf0f4;border-bottom:1px solid #edf0f4}
.center-heading{text-align:center;max-width:760px;margin:0 auto 30px}
.center-heading>span{color:var(--red);font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.09em}
.center-heading h2,.inner-section h2{font-size:32px;line-height:1.18;letter-spacing:-.8px;color:var(--navy);margin:7px 0 9px}
.center-heading p{color:#70798a;margin:0;font-size:15px}
.value-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.value-card{background:#fff;border:1px solid #e4e8ef;border-radius:18px;padding:27px;box-shadow:0 8px 24px rgba(18,27,46,.04)}
.value-card>i{width:48px;height:48px;display:grid;place-items:center;border-radius:13px;background:#fff0f1;color:var(--red);font-size:20px;margin-bottom:18px}
.value-card h3{font-size:19px;color:var(--navy);margin:0 0 8px}
.value-card p,.story-grid p{color:#6d7687;line-height:1.7;margin:0}
.story-grid{display:grid;grid-template-columns:1fr 1fr;gap:54px;align-items:center}
.story-grid>div:first-child p+p{margin-top:13px}
.stat-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.stat-grid>div{background:#f8fafc;border:1px solid #e5e9ef;border-radius:16px;padding:24px}
.stat-grid strong{display:block;color:var(--red);font-size:29px;margin-bottom:4px}
.stat-grid span{color:#687285;font-size:13px;font-weight:600}
.service-feature-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}
.service-feature-grid>a{display:flex;align-items:center;gap:14px;padding:20px;background:#fff;border:1px solid #e3e7ee;border-radius:15px}
.service-feature-grid>a>i{width:44px;height:44px;border-radius:12px;background:#fff0f1;color:var(--red);display:grid;place-items:center;font-size:17px}
.service-feature-grid span{display:flex;flex-direction:column}.service-feature-grid strong{color:var(--navy);font-size:15px}.service-feature-grid small{color:#758092;font-size:11px;margin-top:3px;line-height:1.4}
.inner-cta{padding:0 0 58px}
.inner-cta-box{background:linear-gradient(110deg,var(--navy),#253051);border-radius:21px;padding:30px 34px;display:flex;align-items:center;justify-content:space-between;gap:20px;color:#fff}
.inner-cta-box span{font-size:12px;color:#ffb5b8;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.inner-cta-box h2{margin:5px 0 0;font-size:27px}.inner-cta-box .solid-cta{flex:0 0 auto}

.compact-hero{padding:45px 0}.contact-quick-cards{display:grid;grid-template-columns:1fr 1fr;gap:14px}.contact-quick-cards>a{background:#fff;border:1px solid #e1e6ee;border-radius:16px;padding:20px;display:flex;gap:13px;align-items:center;box-shadow:0 10px 28px rgba(22,31,50,.05)}.contact-quick-cards i{width:42px;height:42px;border-radius:12px;background:#fff0f1;color:var(--red);display:grid;place-items:center}.contact-quick-cards span{display:flex;flex-direction:column}.contact-quick-cards strong{color:var(--navy)}.contact-quick-cards small{color:#6f7889;margin-top:3px}
.contact-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(300px,.5fr);gap:24px;align-items:start}.contact-card,.support-panel{background:#fff;border:1px solid #e2e6ed;border-radius:18px;padding:28px;box-shadow:0 8px 28px rgba(22,31,50,.04)}.contact-card h2{margin-top:0}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.contact-form label{display:flex;flex-direction:column;gap:7px}.contact-form label>span{font-size:12px;font-weight:700;color:#354055}.contact-form input,.contact-form select,.contact-form textarea{width:100%;border:1px solid #dbe1e9;border-radius:10px;background:#fff;padding:13px 14px;color:var(--navy);outline:none}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:#ff8c91;box-shadow:0 0 0 3px rgba(239,32,40,.07)}.full-field{margin-top:15px}.form-submit{margin-top:18px;border:0}.support-panel h3{margin:0 0 19px;color:var(--navy);font-size:20px}.support-line{display:flex;gap:12px;padding:14px 0;border-bottom:1px solid #edf0f4}.support-line>i{width:34px;height:34px;border-radius:10px;background:#fff0f1;color:var(--red);display:grid;place-items:center}.support-line span{display:flex;flex-direction:column}.support-line strong{font-size:13px;color:var(--navy)}.support-line small{color:#7a8392;font-size:11px;margin-top:3px;line-height:1.4}.support-note{display:flex;gap:10px;margin-top:18px;background:#f7f9fc;border-radius:12px;padding:13px;color:#687286;font-size:12px;line-height:1.5}.support-note i{color:var(--red);margin-top:2px}.support-note p{margin:0}.faq-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.faq-grid article{background:#fff;border:1px solid #e2e7ee;border-radius:15px;padding:21px}.faq-grid h3{color:var(--navy);font-size:16px;margin:0 0 8px}.faq-grid p{color:#6f7888;font-size:13px;line-height:1.65;margin:0}

.legal-hero{padding:48px 0;background:linear-gradient(135deg,#fff4f5,#f8fbff);border-bottom:1px solid #e8ebf1}.legal-hero h1{font-size:42px;margin-bottom:10px}.legal-hero p{font-size:15px}.legal-hero small{display:block;margin-top:14px;color:#9097a3}.legal-section{padding:42px 0 58px}.legal-layout{display:grid;grid-template-columns:240px minmax(0,840px);gap:42px;align-items:start;justify-content:center}.legal-toc{position:sticky;top:110px;display:flex;flex-direction:column;padding:15px;background:#fff;border:1px solid #e2e7ee;border-radius:14px;box-shadow:0 8px 24px rgba(18,27,46,.04)}.legal-toc strong{padding:7px 9px 10px;color:var(--navy);font-size:13px}.legal-toc a{padding:8px 9px;border-radius:8px;color:#697385;font-size:12px}.legal-toc a:hover{background:#fff1f1;color:var(--red)}.legal-content{background:#fff;border:1px solid #e2e7ee;border-radius:18px;padding:34px 38px}.legal-block{scroll-margin-top:110px;padding:0 0 27px;margin:0 0 27px;border-bottom:1px solid #edf0f4}.legal-block:last-child{border:0;margin:0;padding:0}.legal-block h2{margin:0 0 10px;color:var(--navy);font-size:21px}.legal-block p{margin:0;color:#657083;line-height:1.75;font-size:14px}
.sitemap-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.sitemap-card{background:#fff;border:1px solid #e2e7ee;border-radius:17px;padding:24px;display:flex;flex-direction:column;gap:9px}.sitemap-card>i{width:43px;height:43px;border-radius:12px;background:#fff0f1;color:var(--red);display:grid;place-items:center;margin-bottom:4px}.sitemap-card h2{font-size:19px;margin:0 0 3px}.sitemap-card a{color:#687285;font-size:13px;padding:4px 0}.sitemap-card a:hover{color:var(--red)}

@media(max-width:1024px){
  .nav-menu{display:none}
  .inner-hero-grid{grid-template-columns:1fr 1fr;gap:28px}.inner-hero-copy h1{font-size:39px}.service-feature-grid{grid-template-columns:1fr 1fr}.value-grid{grid-template-columns:repeat(3,1fr)}.contact-layout{grid-template-columns:1fr .45fr}.legal-layout{grid-template-columns:210px minmax(0,1fr);gap:22px}.sitemap-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:760px){
  .inner-page .header-row{height:70px}.inner-hero{padding:34px 0}.inner-hero-grid{grid-template-columns:1fr;gap:23px}.inner-hero-copy h1,.legal-hero h1{font-size:31px;letter-spacing:-1px}.inner-hero-copy p{font-size:15px}.inner-hero-visual{height:250px}.inner-hero-actions{flex-wrap:wrap}.inner-section{padding:34px 0}.center-heading h2,.inner-section h2{font-size:25px}.value-grid,.story-grid,.contact-layout,.faq-grid{grid-template-columns:1fr}.value-card{padding:21px}.stat-grid{gap:9px}.service-feature-grid{grid-template-columns:1fr}.inner-cta{padding-bottom:34px}.inner-cta-box{padding:24px 20px;align-items:flex-start;flex-direction:column}.inner-cta-box h2{font-size:23px}.contact-quick-cards{grid-template-columns:1fr}.contact-card,.support-panel{padding:20px}.form-grid{grid-template-columns:1fr}.legal-hero{padding:34px 0}.legal-layout{grid-template-columns:1fr}.legal-toc{position:static;display:none}.legal-content{padding:22px 18px}.legal-block{scroll-margin-top:82px}.sitemap-grid{grid-template-columns:1fr}
}


/* v7: stable Services dropdown hover bridge */
.services-menu{position:relative}
.nav-dropdown-panel{top:calc(100% + 3px)!important;left:0!important;right:auto!important;pointer-events:none}
.nav-dropdown-panel::before{content:"";position:absolute;left:0;right:0;top:-9px;height:10px;background:transparent}
.nav-menu:hover .nav-dropdown-panel,.nav-menu:focus-within .nav-dropdown-panel,.nav-menu.open .nav-dropdown-panel{pointer-events:auto}

/* v7: Offers */
.offers-hero-badges{display:grid;gap:12px}.offers-hero-badges>div{display:flex;align-items:center;gap:13px;background:#fff;border:1px solid #e2e7ee;border-radius:15px;padding:17px 19px;box-shadow:0 9px 25px rgba(22,31,50,.05)}.offers-hero-badges i{width:42px;height:42px;border-radius:12px;background:#fff0f1;color:var(--red);display:grid;place-items:center}.offers-hero-badges span{display:flex;flex-direction:column}.offers-hero-badges strong{color:var(--navy);font-size:15px}.offers-hero-badges small{color:#727c8d;font-size:11px;margin-top:3px}.offer-filter-row,.blog-filter-row,.faq-category-row{display:flex;gap:9px;flex-wrap:wrap;margin-bottom:24px}.offer-filter,.blog-filter,.faq-filter{border:1px solid #dfe4eb;background:#fff;color:#4b566a;border-radius:99px;padding:10px 17px;font-size:13px;font-weight:800}.offer-filter.active,.blog-filter.active,.faq-filter.active{background:var(--red);border-color:var(--red);color:#fff}.offers-page-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.offer-page-card{background:#fff;border:1px solid #e2e7ee;border-radius:18px;overflow:hidden;box-shadow:0 9px 26px rgba(22,31,50,.05)}.offer-page-card[hidden]{display:none}.offer-page-image{height:190px;position:relative;overflow:hidden}.offer-page-image img{height:100%;object-fit:cover}.offer-page-image>span{position:absolute;left:14px;bottom:14px;background:var(--red);color:#fff;padding:6px 10px;border-radius:7px;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.06em}.offer-page-body{padding:19px}.offer-page-body h2{font-size:18px;color:var(--navy);margin:0 0 5px}.offer-page-body>strong{display:block;color:var(--red);font-size:23px;margin-bottom:4px}.offer-page-body>p{color:#6f7889;margin:0 0 15px;font-size:13px}.offer-code{height:42px;background:#f8fafc;border:1px dashed #d9dfe8;border-radius:10px;display:flex;align-items:center;padding-left:12px;overflow:hidden}.offer-code span{font-size:10px;color:#8790a0;text-transform:uppercase;font-weight:800;margin-right:9px}.offer-code b{color:var(--navy);letter-spacing:.08em;font-size:13px}.copy-offer-code{margin-left:auto;height:100%;width:42px;border:0;border-left:1px dashed #d9dfe8;background:#fff;color:var(--red)}.offer-card-bottom{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:16px}.offer-card-bottom small{color:#808999;font-size:10px}.offer-card-bottom a{color:var(--red);font-size:12px;font-weight:900}.offer-note{margin-top:24px;border-radius:14px;background:#f7f9fc;border:1px solid #e5e9ef;padding:15px 17px;display:flex;gap:11px;color:#687285;font-size:12px}.offer-note i{color:var(--red);margin-top:2px}.offer-note p{margin:0}

/* v7: FAQ */
.faq-hero .center-heading{margin-bottom:20px}.faq-hero h1{font-size:42px;line-height:1.1;color:var(--navy);margin:7px 0 10px}.faq-search-wrap{max-width:720px;margin:0 auto;position:relative}.faq-search-wrap i{position:absolute;left:18px;top:50%;transform:translateY(-50%);color:#9199a7}.faq-search-wrap input{width:100%;height:54px;border:1px solid #dde3eb;border-radius:14px;background:#fff;padding:0 18px 0 47px;outline:none;box-shadow:0 9px 26px rgba(22,31,50,.05)}.faq-search-wrap input:focus{border-color:#f58c91;box-shadow:0 0 0 4px rgba(239,32,40,.07)}.faq-page-layout{max-width:980px}.faq-accordion{display:grid;gap:10px}.faq-item{background:#fff;border:1px solid #e2e7ee;border-radius:14px;overflow:hidden}.faq-item[hidden]{display:none}.faq-question{width:100%;border:0;background:#fff;padding:18px 20px;display:flex;align-items:center;justify-content:space-between;gap:18px;text-align:left;color:var(--navy);font-size:15px;font-weight:800}.faq-question span{display:flex;flex-direction:column;gap:4px}.faq-question small{font-size:9px;color:var(--red);text-transform:uppercase;letter-spacing:.08em}.faq-question>i{width:30px;height:30px;display:grid;place-items:center;border-radius:50%;background:#fff0f1;color:var(--red);transition:.2s}.faq-item.open .faq-question>i{transform:rotate(45deg)}.faq-answer{display:none;padding:0 20px 18px}.faq-item.open .faq-answer{display:block}.faq-answer p{margin:0;color:#667184;font-size:13px;line-height:1.75}.faq-help-box{margin-top:26px;background:linear-gradient(110deg,#fff2f2,#f7f9ff);border:1px solid #e7e9ef;border-radius:16px;padding:19px 21px;display:flex;align-items:center;justify-content:space-between;gap:18px}.faq-help-box>div{display:flex;gap:13px;align-items:center}.faq-help-box>div>i{width:42px;height:42px;border-radius:12px;background:#fff;color:var(--red);display:grid;place-items:center}.faq-help-box span{display:flex;flex-direction:column}.faq-help-box strong{color:var(--navy)}.faq-help-box small{color:#727c8e;margin-top:3px}

/* v7: blogs */
.featured-blog{display:grid;grid-template-columns:1.12fr .88fr;min-height:360px;background:#fff;border:1px solid #e1e6ed;border-radius:22px;overflow:hidden;box-shadow:0 16px 38px rgba(22,31,50,.08)}.featured-blog>img{height:100%;min-height:360px;object-fit:cover}.featured-blog>div{padding:38px;display:flex;flex-direction:column;justify-content:center}.featured-blog>div>span,.blog-card-body>span{color:var(--red);font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.featured-blog h2{font-size:30px;line-height:1.18;color:var(--navy);margin:8px 0 11px}.featured-blog p{color:#687285;line-height:1.7;margin:0 0 20px}.featured-blog .solid-cta{align-self:flex-start}.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:19px}.blog-card{border:1px solid #e2e7ee;border-radius:17px;background:#fff;overflow:hidden;box-shadow:0 8px 24px rgba(22,31,50,.045)}.blog-card[hidden]{display:none}.blog-card-image{display:block;height:210px;overflow:hidden}.blog-card-image img{height:100%;object-fit:cover;transition:transform .35s}.blog-card:hover .blog-card-image img{transform:scale(1.035)}.blog-card-body{padding:18px}.blog-card-body h2{font-size:18px;line-height:1.3;margin:7px 0 8px;color:var(--navy)}.blog-card-body p{font-size:13px;color:#707a8b;line-height:1.65;margin:0 0 16px}.blog-card-body>div{display:flex;justify-content:space-between;gap:10px;align-items:center}.blog-card-body>div small{font-size:10px;color:#9299a5}.blog-card-body>div a{color:var(--red);font-size:11px;font-weight:900}.blog-load-more{display:flex;justify-content:center;margin-top:28px}
.blog-detail-hero{padding:45px 0 30px;background:linear-gradient(135deg,#fff5f5,#f8fbff);border-bottom:1px solid #e6eaf0}.blog-detail-head{max-width:980px}.breadcrumb{display:flex;gap:8px;align-items:center;font-size:11px;color:#7b8494;margin-bottom:22px}.breadcrumb i{font-size:8px}.blog-detail-head h1{max-width:920px;font-size:48px;line-height:1.08;letter-spacing:-1.5px;color:var(--navy);margin:0 0 14px}.blog-detail-head>p{max-width:760px;color:#667184;font-size:17px;line-height:1.65}.blog-meta{display:flex;gap:20px;margin-top:18px;color:#7c8594;font-size:11px}.blog-meta i{color:var(--red);margin-right:5px}.blog-detail-section{padding:34px 0 58px}.blog-detail-cover{height:470px;border-radius:22px;overflow:hidden;box-shadow:0 16px 42px rgba(22,31,50,.10)}.blog-detail-cover img{height:100%;object-fit:cover}.blog-detail-layout{display:grid;grid-template-columns:190px minmax(0,760px) 48px;gap:32px;justify-content:center;align-items:start;margin-top:38px}.blog-toc{position:sticky;top:110px;display:flex;flex-direction:column;gap:4px;border-left:2px solid #edf0f4;padding-left:14px}.blog-toc strong{font-size:12px;color:var(--navy);margin-bottom:5px}.blog-toc a{font-size:11px;color:#778191;padding:4px 0}.blog-toc a:hover{color:var(--red)}.blog-article{color:#505b6e;font-size:15px;line-height:1.8}.blog-article .lead{font-size:18px;color:#313b50}.blog-article h2{scroll-margin-top:110px;color:var(--navy);font-size:27px;line-height:1.25;margin:34px 0 11px}.blog-article p{margin:0 0 15px}.blog-article ul{padding-left:20px}.article-callout{display:flex;gap:13px;background:#fff3f3;border:1px solid #ffd9db;border-radius:14px;padding:17px;margin:22px 0}.article-callout i{color:var(--red);margin-top:4px}.article-callout p{margin:0}.article-cta{margin-top:34px;border-radius:17px;background:var(--navy);color:#fff;padding:24px;display:flex;align-items:center;justify-content:space-between;gap:18px}.article-cta span{font-size:10px;color:#ffb8bb;text-transform:uppercase;font-weight:800}.article-cta h3{margin:4px 0 0;font-size:20px}.blog-share{position:sticky;top:110px;display:flex;flex-direction:column;align-items:center;gap:8px}.blog-share strong{font-size:9px;text-transform:uppercase;color:#8b93a1}.blog-share a{width:34px;height:34px;border-radius:50%;background:#fff;border:1px solid #e1e6ed;display:grid;place-items:center;color:#4e596d}.related-blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.related-blog-grid a{border:1px solid #e2e7ee;border-radius:15px;background:#fff;overflow:hidden;padding-bottom:14px}.related-blog-grid img{height:155px;object-fit:cover}.related-blog-grid span{display:block;color:var(--red);font-size:9px;font-weight:900;text-transform:uppercase;margin:12px 14px 4px}.related-blog-grid strong{display:block;color:var(--navy);font-size:15px;padding:0 14px}

/* v7: travel agents */
.agent-page{background:#fff}
/* Agent auth visibility fix — Login/Register stay visible even with an active session */
.agent-auth-session-strip,.agent-partner-session{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:11px;align-items:center;margin:0 0 18px;padding:12px 13px;border:1px solid #bde8cf;border-radius:12px;background:#f1fbf5}
.agent-auth-session-icon,.agent-partner-session>span{width:36px;height:36px;display:grid;place-items:center;border-radius:10px;background:#e0f7e8;color:#187445;flex:0 0 auto}
.agent-auth-session-copy,.agent-partner-session>div{min-width:0;display:flex;flex-direction:column;gap:2px}
.agent-auth-session-copy small,.agent-partner-session small{font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.05em;color:#2b7a50}
.agent-auth-session-copy strong,.agent-partner-session strong{font-size:13px;color:#173e2b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.agent-auth-session-copy em,.agent-partner-session em{font-style:normal;font-size:10px;line-height:1.4;color:#527062}
.agent-auth-session-strip>a,.agent-partner-session>a{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:35px;padding:0 11px;border:1px solid #a9d9bd;border-radius:9px;background:#fff;color:#187445;font-size:10px;font-weight:900;text-decoration:none;white-space:nowrap}
.agent-partner-session{margin:-2px 0 20px}
.agent-partner-entry-card .agent-partner-entry-actions{display:grid;gap:10px;margin-top:20px}
.agent-partner-entry-card .agent-partner-entry-actions .agent-primary{width:100%;height:49px;display:flex;align-items:center;justify-content:center;gap:8px;border-radius:10px;background:var(--red);color:#fff;text-decoration:none;font-weight:900;box-shadow:0 10px 23px rgba(239,32,40,.18)}
.agent-partner-entry-card .agent-partner-entry-actions .agent-auth-outline{min-height:47px;border:1px solid #d7dee8;border-radius:10px;background:#fff;color:var(--navy);font-size:12px;font-weight:900;display:flex;align-items:center;justify-content:center;text-decoration:none}
.agent-partner-entry-card .agent-partner-recovery{display:flex;align-items:flex-start;gap:9px;margin-top:18px;padding:11px 12px;border-radius:10px;background:#f7f9fc;color:#707b8d;font-size:11px;line-height:1.45}
.agent-partner-entry-card .agent-partner-recovery i{color:var(--red);margin-top:2px}.agent-partner-entry-card .agent-partner-recovery a{color:var(--red);font-weight:800;text-decoration:none}
@media(max-width:520px){.agent-auth-session-strip,.agent-partner-session{grid-template-columns:auto minmax(0,1fr)}.agent-auth-session-strip>a,.agent-partner-session>a{grid-column:1/-1;width:100%}.agent-auth-session-copy em{font-size:9px}}
.agent-portal-section{padding:54px 0 64px;background:radial-gradient(circle at 14% 25%,rgba(239,32,40,.055),transparent 32%),#fff}.agent-portal-grid{display:grid;grid-template-columns:1.05fr .78fr;gap:76px;max-width:1160px;align-items:center}.agent-info-panel{padding:20px 0}.agent-pill{display:inline-flex;align-items:center;gap:8px;border:1px solid #f5c8ca;background:#fff8f8;color:var(--red);padding:9px 13px;border-radius:99px;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.05em}.agent-info-panel h1{font-size:46px;line-height:1.08;letter-spacing:-1.6px;color:var(--navy);margin:20px 0 18px}.agent-info-panel>p{font-size:16px;color:#687285;line-height:1.75;max-width:610px}.agent-benefits{display:grid;gap:11px;margin-top:28px}.agent-benefits>div{display:flex;gap:13px;align-items:center;border:1px solid #e2e7ee;border-radius:14px;padding:14px 16px;background:#fff}.agent-benefits>div>i{width:36px;height:36px;border-radius:10px;background:#fff0f1;color:var(--red);display:grid;place-items:center}.agent-benefits span{display:flex;flex-direction:column}.agent-benefits strong{font-size:13px;color:var(--navy)}.agent-benefits small{font-size:11px;color:#6f798b;margin-top:3px}.agent-auth-card{background:#fff;border:1px solid #dfe4eb;border-radius:20px;padding:30px;box-shadow:0 20px 55px rgba(22,31,50,.09)}.agent-auth-view{display:none}.agent-auth-view.active{display:block}.agent-auth-icon{width:47px;height:47px;border-radius:13px;background:#fff0f1;color:var(--red);display:grid;place-items:center;font-size:18px}.agent-auth-card h2{font-size:27px;color:var(--navy);margin:17px 0 5px}.agent-auth-card>div>p{color:#687285;font-size:13px;line-height:1.6;margin:0 0 22px}.agent-form{display:grid;gap:15px}.agent-form label{display:flex;flex-direction:column;gap:7px}.agent-form label>span{font-size:11px;font-weight:800;color:#273147}.agent-form label>span small{font-size:9px;color:#87909f;background:#f0f3f7;padding:3px 6px;border-radius:99px;margin-left:5px}.agent-form input,.agent-form select,.agent-form textarea{width:100%;border:1px solid #d9e0e9;border-radius:10px;background:#fff;padding:13px 14px;color:var(--navy);outline:none}.agent-form input:focus,.agent-form select:focus,.agent-form textarea:focus{border-color:#f58c91;box-shadow:0 0 0 3px rgba(239,32,40,.07)}.agent-input{position:relative}.agent-input>i{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:#97a0ae}.agent-input input{padding-left:40px}.toggle-agent-password{position:absolute;right:8px;top:50%;transform:translateY(-50%);width:34px;height:34px;border:0;background:transparent;color:#7c8595}.agent-forgot{justify-self:end;color:var(--red);font-size:11px;font-weight:700;margin-top:-5px}.agent-primary{height:49px;border:0;border-radius:10px;background:var(--red);color:#fff;font-weight:900;box-shadow:0 10px 23px rgba(239,32,40,.18)}.agent-switch{text-align:center;color:#687285;font-size:11px;margin-top:18px}.agent-switch button{border:0;background:transparent;color:var(--red);font-weight:900;padding:0}.agent-register-form{grid-template-columns:1fr 1fr}.agent-register-form .full{grid-column:1/-1}

@media(max-width:1024px){.offers-page-grid,.blog-grid{grid-template-columns:1fr 1fr}.agent-portal-grid{grid-template-columns:1fr 1fr;gap:30px}.agent-info-panel h1{font-size:39px}.blog-detail-layout{grid-template-columns:1fr;max-width:800px;margin-left:auto;margin-right:auto}.blog-toc,.blog-share{position:static}.blog-toc{display:none}.blog-share{flex-direction:row;justify-content:flex-start}.blog-detail-cover{height:390px}}
@media(max-width:760px){.offers-page-grid,.blog-grid{grid-template-columns:1fr}.offer-page-image{height:175px}.faq-hero h1{font-size:31px}.faq-category-row,.offer-filter-row,.blog-filter-row{flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px}.faq-filter,.offer-filter,.blog-filter{white-space:nowrap}.faq-help-box{align-items:flex-start;flex-direction:column}.featured-blog{grid-template-columns:1fr}.featured-blog>img{min-height:220px;height:220px}.featured-blog>div{padding:23px}.featured-blog h2{font-size:24px}.blog-detail-head h1{font-size:34px}.blog-detail-cover{height:260px;border-radius:15px}.blog-detail-layout{margin-top:25px}.blog-article h2{font-size:23px}.article-cta{align-items:flex-start;flex-direction:column}.related-blog-grid{grid-template-columns:1fr}.agent-portal-section{padding:28px 0 38px}.agent-portal-grid{grid-template-columns:1fr;gap:24px}.agent-info-panel{padding:0}.agent-info-panel h1{font-size:34px}.agent-auth-card{padding:21px}.agent-register-form{grid-template-columns:1fr}.agent-register-form .full{grid-column:auto}.agent-benefits>div{align-items:flex-start}}

/* v8 package listing */
.package-listing-page{background:#f4f5f7;color:#11182f}.package-results-main{min-height:70vh}.package-search-summary{background:linear-gradient(108deg,#c51e33 0%,#9f203d 44%,#3e1d4d 100%);color:#fff}.package-summary-inner{min-height:92px;display:grid;grid-template-columns:58px minmax(240px,1.35fr) minmax(220px,.8fr) auto;gap:24px;align-items:center}.package-summary-icon{font-size:36px;display:flex;align-items:center;justify-content:center}.package-summary-field{appearance:none;background:none;border:0;border-bottom:1px solid rgba(255,255,255,.28);color:#fff;text-align:left;padding:9px 0 10px;cursor:pointer;min-width:0}.package-summary-field span{display:block;font-size:13px;opacity:.78;margin-bottom:4px}.package-summary-field strong{display:block;font-size:18px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.modify-search-btn{height:48px;padding:0 24px;border-radius:8px;border:1px solid rgba(255,255,255,.75);background:rgba(255,255,255,.07);color:#fff;font-weight:800;cursor:pointer}.modify-search-btn:hover{background:#fff;color:#b21d38}.package-modify-panel{display:none;grid-template-columns:minmax(0,1.4fr) minmax(220px,.8fr) auto;gap:14px;padding:18px 0 22px}.package-modify-panel.open{display:grid}.package-modify-panel label{display:flex;flex-direction:column;gap:7px}.package-modify-panel label span{font-size:12px;font-weight:700;color:rgba(255,255,255,.8)}.package-modify-panel input,.package-modify-panel select{height:46px;border:1px solid rgba(255,255,255,.34);background:rgba(255,255,255,.11);color:#fff;border-radius:8px;padding:0 12px;outline:none;font:inherit}.package-modify-panel select option{color:#11182f}.package-modify-actions{display:flex;align-items:flex-end;gap:8px}.package-modify-actions button{height:46px;white-space:nowrap}.primary-action,.secondary-action{border:0;border-radius:8px;padding:0 20px;font-weight:800;cursor:pointer}.primary-action{background:#ef2028;color:#fff}.secondary-action{background:#fff;color:#11182f}.package-filter-shell{background:#fff;box-shadow:0 4px 14px rgba(17,24,39,.07);position:relative;z-index:12}.package-filter-bar{min-height:72px;display:grid;grid-template-columns:110px repeat(5,1fr);align-items:center;gap:8px}.package-filter-trigger{height:44px;background:transparent;border:0;color:#1f2937;font-weight:700;font-size:14px;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:9px;border-radius:8px}.package-filter-trigger:hover,.package-filter-trigger.active{background:#fff0f1;color:#ef2028}.all-filter-trigger{justify-content:flex-start;padding-left:12px}.all-filter-trigger i{font-size:18px}.package-filter-panel{display:none;background:#fff;border-top:1px solid #eef0f3;box-shadow:0 14px 28px rgba(17,24,39,.08)}.package-filter-panel.open{display:block}.package-filter-panel-inner{padding:14px 0 22px}.filter-panel-head{display:grid;grid-template-columns:42px 1fr auto;align-items:center;margin-bottom:10px}.filter-panel-head strong{font-size:17px}.filter-panel-close{width:36px;height:36px;border:0;background:#f5f6f8;border-radius:50%;cursor:pointer}.clear-package-filters{border:0;background:transparent;color:#ef2028;font-weight:800;cursor:pointer}.package-filter-columns{display:grid;grid-template-columns:1.2fr 1fr 1fr 1.15fr 1.25fr;gap:30px;padding:6px 54px 10px}.filter-column{border:0;padding:0;margin:0;min-width:0}.filter-column legend{font-weight:800;font-size:14px;margin-bottom:13px}.filter-column label{display:flex;align-items:flex-start;gap:9px;margin:10px 0;font-size:14px;color:#414752;cursor:pointer}.filter-column input{width:18px;height:18px;accent-color:#ef2028;margin:0}.filter-column.focused{background:#fff7f7;border-radius:10px;box-shadow:0 0 0 8px #fff7f7}.filter-panel-footer{display:flex;align-items:center;justify-content:center;gap:22px;padding-top:8px}.filter-panel-footer span{color:#6b7280;font-size:13px}.filter-done-btn{height:46px;min-width:180px}.package-listing-section{padding:24px 0 42px}.package-listing-layout{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:24px;align-items:start}.package-listing-heading{background:#fff;padding:0 0 10px}.package-result-tabs{display:flex;gap:34px;border-bottom:1px solid #e3e6ea}.package-result-tab{border:0;background:none;padding:0 0 13px;font-size:18px;color:#626b78;cursor:pointer;position:relative}.package-result-tab:first-child{font-size:22px;color:#11182f}.package-result-tab.active{color:#11182f}.package-result-tab.active:after{content:"";height:3px;background:#ef2028;position:absolute;left:0;right:0;bottom:-1px}.active-filter-chips{display:flex;gap:7px;flex-wrap:wrap;padding-top:10px}.active-filter-chips:empty{display:none}.active-filter-chip{display:inline-flex;align-items:center;gap:5px;background:#fff0f1;color:#c91c26;border-radius:99px;padding:6px 9px;font-size:12px;font-weight:700}.active-filter-chip button{border:0;background:none;color:inherit;cursor:pointer;padding:0}.package-sort-bar{height:48px;background:#e9eaec;border-radius:5px;display:grid;grid-template-columns:1fr repeat(4,150px);align-items:center;padding:0 16px;margin-bottom:14px}.package-sort-bar strong{font-size:13px}.package-sort{height:100%;border:0;background:none;color:#8a9099;cursor:pointer;font-weight:500}.package-sort.active{color:#1682dc;font-weight:700}.package-list-results{display:flex;flex-direction:column;gap:14px}.package-list-card{display:grid;grid-template-columns:260px minmax(0,1fr) 220px;background:#fff;border:1px solid #e7e9ed;border-radius:7px;overflow:hidden;box-shadow:0 5px 14px rgba(17,24,39,.07);min-height:215px}.package-list-card[hidden]{display:none}.package-list-image{position:relative;min-height:215px;background:#eef1f5}.package-list-image img{width:100%;height:100%;object-fit:cover;display:block}.custom-badge{position:absolute;right:10px;top:10px;width:38px;height:38px;border-radius:50%;background:#16345d;color:#fff;border:2px solid #fff;display:grid;place-items:center}.package-list-content{padding:22px 24px}.package-list-content h2{font-size:20px;margin:0 0 10px;color:#11182f}.package-meta-row{display:flex;gap:18px;align-items:center;font-size:12px;margin-bottom:16px}.package-meta-row span:first-child{border:1px solid #dce0e6;border-radius:4px;padding:4px 7px}.package-meta-row span:last-child{color:#1682dc;font-weight:700}.package-route{font-weight:600;font-size:14px;line-height:1.55;margin:0 0 20px}.package-route i{font-size:10px;color:#9aa1ab;margin:0 4px}.package-list-inclusions{display:flex;gap:24px}.package-list-inclusions span{display:flex;flex-direction:column;align-items:center;gap:5px;color:#7d8794;min-width:46px}.package-list-inclusions i{font-size:21px}.package-list-inclusions small{font-size:11px}.package-list-price{border-left:1px solid #edf0f2;display:flex;flex-direction:column;align-items:flex-end;padding:22px 18px}.package-list-price strong{font-size:26px;color:#11182f}.package-list-price small{font-size:11px;color:#8b919b;margin:4px 0 14px}.package-view-details{border:0;background:#ef2028;color:#fff;height:42px;padding:0 22px;border-radius:4px;font-weight:800;cursor:pointer}.package-list-price em{font-style:normal;color:#ef2028;font-size:11px;margin-top:auto}.package-help-card{position:sticky;top:96px;background:linear-gradient(145deg,#fff,#fff7f7);border:1px solid #f1dfe1;border-radius:14px;padding:24px;box-shadow:0 8px 24px rgba(17,24,39,.07)}.package-help-card>i{width:44px;height:44px;border-radius:12px;background:#fff0f1;color:#ef2028;display:grid;place-items:center;font-size:20px}.package-help-card h3{font-size:19px;margin:15px 0 8px}.package-help-card p{font-size:13px;line-height:1.6;color:#667085}.package-help-card a{display:inline-flex;align-items:center;gap:7px;color:#ef2028;font-weight:800;margin-top:10px}.package-empty-state{text-align:center;background:#fff;border:1px dashed #d8dce2;border-radius:12px;padding:48px 20px}.package-empty-state>i{font-size:36px;color:#ef2028}.package-empty-state h3{font-size:22px;margin:12px 0 6px}.package-empty-state p{color:#6b7280}.package-empty-state button{height:44px;margin-top:15px}

@media(max-width:1100px){.package-summary-inner{grid-template-columns:46px repeat(3,1fr) auto;gap:14px}.package-listing-layout{grid-template-columns:1fr}.package-help-card{display:none}.package-list-card{grid-template-columns:220px minmax(0,1fr) 190px}.package-filter-columns{gap:18px;padding-left:36px;padding-right:36px}.package-sort-bar{grid-template-columns:1fr repeat(4,120px)}}
@media(max-width:820px){.package-summary-inner{grid-template-columns:1fr 1fr;padding:14px 0}.package-summary-icon{display:none}.package-summary-field{padding:8px 0}.package-summary-field:nth-of-type(3){grid-column:1/2}.modify-search-btn{grid-column:2/3}.package-modify-panel.open{grid-template-columns:1fr 1fr}.package-modify-actions{grid-column:1/-1}.package-filter-bar{display:flex;overflow-x:auto;gap:4px;padding:9px 0;scrollbar-width:none}.package-filter-bar::-webkit-scrollbar{display:none}.package-filter-trigger{flex:0 0 auto;padding:0 12px;border:1px solid #e4e7eb;height:40px}.all-filter-trigger{padding-left:12px}.package-filter-columns{grid-template-columns:1fr 1fr;padding:10px 12px}.package-sort-bar{display:flex;overflow-x:auto;padding:0 10px;gap:4px}.package-sort-bar strong{flex:0 0 auto;margin-right:10px}.package-sort{flex:0 0 auto;padding:0 14px}.package-list-card{grid-template-columns:190px minmax(0,1fr);min-height:205px}.package-list-image{min-height:205px}.package-list-price{grid-column:2;border-left:0;border-top:1px solid #edf0f2;display:grid;grid-template-columns:1fr auto;align-items:center;gap:3px 10px;padding:12px 18px}.package-list-price small{margin:0}.package-view-details{grid-column:2;grid-row:1/3}.package-list-price em{grid-column:1;margin:0}.package-list-content{padding:17px 18px}.package-list-inclusions{gap:14px}.package-list-price strong{font-size:22px}}
@media(max-width:600px){.package-search-summary{margin-top:0}.package-summary-inner{grid-template-columns:1fr 1fr;gap:10px 14px;padding:12px 10px}.package-summary-field span{font-size:11px}.package-summary-field strong{font-size:15px}.modify-search-btn{height:42px;padding:0 12px;font-size:12px}.package-modify-panel.open{grid-template-columns:1fr;padding:12px 10px 16px}.package-modify-actions{grid-column:auto}.package-modify-actions button{flex:1}.package-filter-panel{position:fixed;inset:0;z-index:150;overflow:auto}.package-filter-panel-inner{padding:14px 12px 24px}.package-filter-columns{grid-template-columns:1fr;gap:12px}.filter-column{padding:8px 4px;border-bottom:1px solid #eceff3}.filter-panel-footer{position:sticky;bottom:0;background:#fff;padding:12px 0 calc(12px + env(safe-area-inset-bottom));border-top:1px solid #eceff3}.package-listing-section{padding-top:13px}.package-listing-layout{width:calc(100% - 16px)}.package-result-tabs{gap:18px}.package-result-tab{font-size:15px}.package-result-tab:first-child{font-size:18px}.package-list-card{grid-template-columns:1fr;border-radius:12px}.package-list-image{height:190px;min-height:0}.package-list-content{padding:15px}.package-list-content h2{font-size:18px}.package-route{font-size:13px}.package-list-inclusions{justify-content:space-between}.package-list-price{grid-column:1;display:grid;grid-template-columns:1fr auto;border-top:1px solid #edf0f2;padding:13px 15px}.package-view-details{grid-column:2;grid-row:1/4}.package-list-price strong{font-size:21px}.package-sort-bar{margin-left:-2px;margin-right:-2px}.package-sort-bar strong{font-size:12px}}


/* v9 — Flight listing, fare modal and booking flow */
.flight-listing-page{background:#f5f6f8;color:#11182f}.flight-results-main{min-height:72vh}.flight-search-summary{background:linear-gradient(108deg,#c61f36 0%,#9b203e 45%,#351a48 100%);color:#fff}.flight-summary-inner{min-height:82px;display:grid;grid-template-columns:54px minmax(150px,1fr) 34px minmax(150px,1fr) minmax(190px,1fr) minmax(190px,1fr) auto;gap:16px;align-items:center}.flight-summary-icon{font-size:32px}.flight-summary-field{appearance:none;background:transparent;border:0;border-bottom:1px solid rgba(255,255,255,.28);color:#fff;text-align:left;padding:7px 0 9px;cursor:pointer;min-width:0}.flight-summary-field span{display:block;font-size:11px;opacity:.78;margin-bottom:3px}.flight-summary-field strong{display:block;font-size:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.flight-summary-field strong em{font-style:normal;color:rgba(255,255,255,.65)}.flight-swap-summary{width:34px;height:34px;border:0;background:transparent;color:rgba(255,255,255,.55);cursor:pointer}.flight-modify-panel{display:none;grid-template-columns:.8fr 1fr 1fr .9fr .9fr 1.1fr auto;gap:10px;padding:14px 0 18px}.flight-modify-panel.open{display:grid}.flight-modify-panel label{display:flex;flex-direction:column;gap:6px}.flight-modify-panel label span{font-size:11px;font-weight:700;color:rgba(255,255,255,.78)}.flight-modify-panel input,.flight-modify-panel select{height:44px;border:1px solid rgba(255,255,255,.35);border-radius:7px;background:rgba(255,255,255,.12);color:#fff;padding:0 10px;font:inherit;outline:none}.flight-modify-panel select option{color:#11182f}.flight-modify-actions{display:flex;align-items:flex-end;gap:7px}.flight-modify-actions button{height:44px;white-space:nowrap}.flight-filter-shell{background:#fff;box-shadow:0 4px 12px rgba(17,24,39,.08);position:relative;z-index:25}.flight-filter-bar{min-height:58px;display:grid;grid-template-columns:80px 160px repeat(5,1fr);align-items:center;gap:4px}.flight-filter-trigger{height:42px;border:0;background:transparent;border-radius:7px;font-weight:600;color:#1d2736;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:6px}.flight-filter-trigger:hover,.flight-filter-trigger.active{background:#fff0f1;color:#ef2028}.all-flight-filters{flex-direction:column;gap:0;font-size:11px}.all-flight-filters i{font-size:18px}.stops-quick{display:flex;align-items:center;gap:6px;font-size:13px}.stops-quick button{width:30px;height:30px;border:1px solid #dfe3e8;background:#fff;border-radius:4px;cursor:pointer}.stops-quick button.active{background:#ef2028;color:#fff;border-color:#ef2028}.flight-filter-panel{display:none;background:#fff;border-top:1px solid #eceff3;box-shadow:0 16px 30px rgba(17,24,39,.1)}.flight-filter-panel.open{display:block}.flight-filter-panel-inner{padding:10px 0 20px}.flight-filter-head{display:flex;justify-content:space-between;align-items:center;padding:0 0 10px;border-bottom:1px solid #eceff3}.flight-filter-head>div:last-child{display:flex;gap:10px}.flight-filter-cancel,.flight-filter-apply{height:40px;padding:0 22px;border-radius:5px;font-weight:800;cursor:pointer}.flight-filter-cancel{background:#fff;border:1px solid #59606b}.flight-filter-apply{background:#ef2028;color:#fff;border:0}.flight-filter-grid{display:grid;grid-template-columns:.85fr 1.15fr 1.35fr 1.1fr 1.2fr 1fr;gap:28px;padding:20px 8px 4px}.flight-filter-section{min-width:0;padding:8px;border-radius:8px;transition:.2s}.flight-filter-section.focused{background:#f3f6ff;box-shadow:0 0 0 5px #f3f6ff}.flight-filter-section h3{margin:0 0 12px;font-size:14px}.flight-filter-section p,.flight-filter-section small{font-size:12px;color:#697180}.filter-stop-buttons{display:flex;gap:6px}.filter-stop-buttons label input,.depart-time-grid label input{position:absolute;opacity:0;pointer-events:none}.filter-stop-buttons span{display:grid;place-items:center;width:34px;height:34px;border:1px solid #d9dde3;border-radius:4px;cursor:pointer}.filter-stop-buttons input:checked+span{background:#ef2028;border-color:#ef2028;color:#fff}.flight-filter-section input[type=range]{width:100%;accent-color:#ef2028}.range-labels{display:flex;justify-content:space-between;font-size:11px}.depart-time-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:4px;margin-top:8px}.depart-time-grid span{display:flex;flex-direction:column;align-items:center;gap:3px;border:1px solid #dce0e5;border-radius:5px;padding:8px 3px;font-size:11px;cursor:pointer}.depart-time-grid input:checked+span{border-color:#ef2028;background:#fff0f1;color:#c91d27}.filter-search{height:34px;border-bottom:1px solid #bfc4ca;display:flex;align-items:center;gap:7px;color:#a0a5ac}.filter-search input{border:0;outline:0;width:100%;font:inherit;font-size:12px}.filter-check-list{display:flex;flex-direction:column;gap:8px;margin-top:9px;max-height:210px;overflow:auto}.filter-check-list label{display:flex;gap:7px;align-items:center;font-size:12px;cursor:pointer}.filter-check-list input{width:16px;height:16px;accent-color:#ef2028}.clear-flight-filters{border:0;background:transparent;color:#ef2028;font-weight:800;padding:10px 0;cursor:pointer}.flight-results-content{padding:18px 0 46px}.nearby-airports{background:#ffe09a;border:1px solid #f0cb75;border-radius:9px;min-height:46px;padding:0 15px;display:flex;justify-content:space-between;align-items:center;font-size:12px;box-shadow:0 3px 9px rgba(17,24,39,.09)}.nearby-airports button{border:0;background:transparent;font-weight:700;cursor:pointer}.nearby-airports-panel{background:#fff7df;border:1px solid #efd995;border-top:0;border-radius:0 0 8px 8px;padding:11px 15px;display:flex;gap:28px;font-size:12px}.flight-date-strip,.airline-lowest-strip{display:flex;overflow:auto;scrollbar-width:none;margin:28px 0 18px;background:#fff;border:1px solid #dfe3e8;border-radius:5px;box-shadow:0 3px 8px rgba(17,24,39,.06)}.flight-date-strip::-webkit-scrollbar,.airline-lowest-strip::-webkit-scrollbar{display:none}.date-fare-item{flex:1 0 112px;min-height:62px;border:0;border-right:1px solid #e3e6ea;background:#fff;cursor:pointer;padding:7px}.date-fare-item span{font-size:11px;display:block}.date-fare-item strong{font-size:13px}.date-fare-item.active{border-top:3px solid #1682dc;background:#f8fbff}.date-fare-item.best strong{color:#078018}.airline-lowest-strip{margin-top:18px}.airline-lowest-item{flex:1 0 180px;padding:11px 16px;border-right:1px solid #e5e7eb;display:flex;align-items:center;gap:9px}.airline-badge{width:33px;height:33px;border-radius:7px;background:#f1f3f8;color:#182c68;display:grid;place-items:center;font-size:18px}.airline-lowest-item strong{display:block}.airline-lowest-item small{color:#6c7480}.flight-sort-bar{height:46px;background:#f0f1f3;border-radius:5px;display:grid;grid-template-columns:1fr repeat(5,1fr);align-items:center;margin-bottom:14px;padding:0 12px}.flight-sort-bar strong{font-size:12px}.flight-sort-bar button{border:0;background:transparent;font-size:10px;cursor:pointer}.flight-sort-bar button.active{color:#1682dc;font-weight:800}.flight-active-filters{display:flex;gap:7px;flex-wrap:wrap;margin:0 0 10px}.flight-filter-chip{background:#fff0f1;color:#c91e28;border-radius:99px;padding:6px 9px;font-size:11px;font-weight:700;display:flex;gap:5px;align-items:center}.flight-filter-chip button{border:0;background:transparent;color:inherit;cursor:pointer}.flight-list{display:flex;flex-direction:column;gap:14px}.flight-card{background:#fff;border:1px solid #dfe3e8;border-radius:9px;overflow:hidden;box-shadow:0 4px 12px rgba(17,24,39,.06)}.flight-card[hidden]{display:none}.flight-offer{background:#f2f8f5;color:#178143;font-size:11px;padding:7px 14px;font-weight:600}.flight-card-main{display:grid;grid-template-columns:210px 1fr 130px 1fr 160px;align-items:center;gap:12px;padding:17px 18px}.flight-airline{display:flex;align-items:center;gap:10px}.flight-airline-logo{width:38px;height:38px;border-radius:7px;display:grid;place-items:center;background:#ef2028;color:#fff;font-weight:900}.flight-airline-logo.indigo{background:#2f2b96}.flight-airline-logo.akasa{background:#f37021}.flight-airline-logo.airindia{background:#9b1745}.flight-airline strong{display:block}.flight-airline small{color:#667085}.flight-city strong{font-size:20px;display:block}.flight-city b{font-size:14px;display:block}.flight-city small{font-size:11px;color:#6c7480}.flight-duration{text-align:center;color:#666}.flight-duration .duration-line{height:1px;background:#aeb4bb;position:relative;margin:7px 0}.flight-duration .duration-line:after{content:"";width:7px;height:7px;border:1px solid #8d959e;border-radius:50%;background:#fff;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%)}.flight-duration small{font-size:11px}.flight-price{text-align:right}.flight-price strong{display:block;font-size:22px}.view-fares-btn{border:0;background:#ef2028;color:#fff;border-radius:6px;height:42px;padding:0 18px;font-weight:800;cursor:pointer;margin-top:6px}.flight-roundtrip-layout{display:grid;grid-template-columns:1fr 1fr;gap:12px}.round-column-title{display:flex;justify-content:space-between;background:#fff;padding:9px 12px;border-radius:6px 6px 0 0;border:1px solid #e2e5e9;border-bottom:0}.compact .flight-card-main{grid-template-columns:120px 1fr 95px 1fr 95px;padding:12px}.compact .flight-city strong{font-size:17px}.compact .view-fares-btn{display:none}.flight-card.selected{outline:3px solid #1682dc;outline-offset:-2px}.round-select-radio{width:20px;height:20px;border:2px solid #d4d8de;border-radius:50%;display:inline-block;position:relative;margin-top:7px}.flight-card.selected .round-select-radio{border-color:#ef2028}.flight-card.selected .round-select-radio:after{content:"";position:absolute;inset:4px;border-radius:50%;background:#ef2028}.flight-empty{text-align:center;background:#fff;border:1px dashed #ccd1d8;border-radius:10px;padding:44px}.roundtrip-sticky{position:fixed;left:0;right:0;bottom:0;z-index:90;background:#351a48;color:#fff;box-shadow:0 -6px 20px rgba(17,24,39,.2)}.roundtrip-sticky-inner{min-height:76px;display:grid;grid-template-columns:1fr 1fr 180px 140px;align-items:center;gap:18px}.roundtrip-sticky small{opacity:.75}.roundtrip-sticky strong{display:block;font-size:19px}.round-view-fares{height:44px;border:0;border-radius:5px;background:#ef2028;color:#fff;font-weight:800;cursor:pointer}.round-view-fares:disabled{opacity:.45;cursor:not-allowed}.fare-modal-card{width:min(1040px,calc(100% - 30px));padding:0;overflow:hidden}.fare-modal-head{padding:20px 30px 12px;border-bottom:1px solid #e5e7eb}.fare-modal-head h2{margin:0 0 10px}.fare-options-body{display:grid;grid-template-columns:170px 1fr;padding:24px 30px;gap:18px}.fare-services-labels{display:grid;grid-template-rows:55px repeat(6,1fr);gap:0}.fare-services-labels h3{margin:0}.fare-services-labels span{display:flex;gap:8px;align-items:center;font-size:12px}.fare-plan-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.fare-plan{border:1px solid #dfe3e8;border-radius:8px;overflow:hidden;cursor:pointer}.fare-plan.selected{border:2px solid #15803d}.fare-plan-head{padding:15px;border-bottom:1px solid #e5e7eb}.fare-plan-head strong{font-size:20px;color:#1565a9}.fare-plan-head span{display:block;font-size:12px}.fare-plan-rows{display:grid;grid-template-rows:repeat(6,1fr)}.fare-plan-rows div{padding:13px 15px;font-size:12px;min-height:50px}.fare-note{padding:0 30px 16px;font-size:12px}.fare-modal-footer{border-top:1px solid #e5e7eb;padding:14px 30px;display:flex;justify-content:flex-end;align-items:center;gap:22px}.fare-modal-footer strong{font-size:22px}.fare-modal-footer button{height:44px;border:0;border-radius:6px;background:#ef2028;color:#fff;padding:0 26px;font-weight:800;cursor:pointer}
.booking-flow-main{padding:34px 0 60px;background:#f5f6f8}.booking-flow-grid{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:24px;align-items:start}.flow-stepper{display:flex;gap:8px;margin-bottom:18px}.flow-stepper span{flex:1;background:#e7e9ed;color:#6b7280;padding:11px;border-radius:7px;text-align:center;font-size:12px;font-weight:700}.flow-stepper span.active{background:#11182f;color:#fff}.booking-flow-card{background:#fff;border:1px solid #e2e5e9;border-radius:12px;padding:22px;margin-bottom:18px;box-shadow:0 5px 15px rgba(17,24,39,.05)}.booking-flow-title{display:flex;align-items:center;gap:13px}.booking-flow-title>i{width:44px;height:44px;border-radius:12px;background:#fff0f1;color:#ef2028;display:grid;place-items:center}.booking-flow-title h1{font-size:23px;margin:0}.booking-flow-title p{margin:4px 0 0;color:#687282}.selected-flight-summary{margin-top:20px;background:#f8f9fb;border-radius:8px;padding:17px}.selected-flight-summary .summary-route{display:flex;justify-content:space-between;align-items:center;gap:15px}.selected-flight-summary strong{font-size:20px}.traveller-form h2,.fare-breakup h2,.review-traveller h2{margin-top:0}.traveller-form>p{color:#6b7280}.form-grid{display:grid;grid-template-columns:120px 1fr 1fr 180px;gap:12px}.form-grid.two{grid-template-columns:1fr 1fr}.form-grid label,.traveller-form>label{display:flex;flex-direction:column;gap:7px}.form-grid label span,.traveller-form>label span{font-size:12px;font-weight:700}.form-grid input,.form-grid select{height:46px;border:1px solid #cfd5dd;border-radius:7px;padding:0 12px;font:inherit}.traveller-form h3{margin-top:24px}.terms-check{flex-direction:row!important;align-items:flex-start;margin:20px 0}.primary-flow-btn{height:48px;background:#ef2028;color:#fff;border:0;border-radius:7px;padding:0 24px;font-weight:800;cursor:pointer}.fare-breakup>div{display:flex;justify-content:space-between;padding:10px 0}.fare-breakup .grand{font-size:20px}.fare-breakup small{color:#6b7280}.fare-breakup .primary-flow-btn{width:100%;margin-top:14px}.secure-note{display:flex;gap:12px;align-items:center}.secure-note>i{color:#15803d;font-size:22px}.secure-note span{display:block;color:#6b7280;font-size:12px;margin-top:4px}.review-traveller>div{display:flex;align-items:center;gap:12px}.review-traveller>div>i{width:38px;height:38px;border-radius:50%;background:#f1f3f6;display:grid;place-items:center}.review-traveller>div span{flex:1}.review-traveller small{display:block;color:#6b7280}.review-traveller button{border:0;background:transparent;color:#ef2028;font-weight:800;cursor:pointer}.review-rules{padding-left:18px;color:#596273;line-height:1.8}
@media(max-width:1100px){.flight-summary-inner{grid-template-columns:42px 1fr 30px 1fr 1.1fr 1.1fr auto;gap:10px}.flight-filter-grid{grid-template-columns:repeat(3,1fr)}.flight-card-main{grid-template-columns:160px 1fr 110px 1fr 130px}.compact .flight-card-main{grid-template-columns:100px 1fr 80px 1fr 85px}.booking-flow-grid{grid-template-columns:1fr 310px}.form-grid{grid-template-columns:100px 1fr 1fr}}
@media(max-width:820px){.flight-summary-inner{grid-template-columns:1fr 30px 1fr;padding:12px 0}.flight-summary-icon{display:none}.flight-summary-field:nth-of-type(3),.flight-summary-field:nth-of-type(4){grid-column:auto}.flight-summary-field:nth-of-type(4){grid-column:1/3}.modify-search-btn{grid-column:3;height:42px}.flight-modify-panel.open{grid-template-columns:1fr 1fr}.flight-modify-actions{grid-column:1/-1}.flight-filter-bar{display:flex;overflow:auto;padding:8px 0}.flight-filter-trigger,.stops-quick{flex:0 0 auto;padding:0 11px}.flight-filter-grid{grid-template-columns:1fr 1fr}.flight-card-main{grid-template-columns:130px 1fr 90px 1fr 110px}.flight-roundtrip-layout{grid-template-columns:1fr}.roundtrip-sticky-inner{grid-template-columns:1fr 1fr 130px 110px}.booking-flow-grid{grid-template-columns:1fr}.booking-flow-grid aside{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-grid{grid-template-columns:100px 1fr 1fr 160px}}
@media(max-width:600px){.flight-summary-inner{padding:10px;grid-template-columns:1fr 28px 1fr;gap:7px}.flight-summary-field span{font-size:10px}.flight-summary-field strong{font-size:13px}.flight-summary-field:nth-of-type(4){grid-column:1/3}.modify-search-btn{font-size:11px;padding:0 9px}.flight-modify-panel.open{grid-template-columns:1fr;padding:12px 10px}.flight-modify-actions{grid-column:auto}.flight-filter-panel{position:fixed;inset:0;z-index:170;overflow:auto}.flight-filter-panel-inner{padding:12px}.flight-filter-head{position:sticky;top:0;background:#fff;z-index:2;padding:8px 0}.flight-filter-grid{grid-template-columns:1fr;gap:10px}.flight-filter-section{padding:13px 6px;border-bottom:1px solid #eceff3}.nearby-airports{margin:0 6px;font-size:11px}.nearby-airports>div{max-width:70%}.flight-date-strip,.airline-lowest-strip{margin-left:6px;margin-right:6px}.flight-sort-bar{display:flex;overflow:auto;margin:0 6px 10px}.flight-sort-bar strong,.flight-sort-bar button{flex:0 0 auto;padding:0 11px}.flight-card{margin:0 6px;border-radius:11px}.flight-card-main{grid-template-columns:1fr 1fr;gap:14px;padding:14px}.flight-airline{grid-column:1/-1}.flight-duration{grid-column:1/-1;order:4}.flight-price{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;text-align:left;order:5;border-top:1px solid #eceff3;padding-top:10px}.flight-offer{font-size:10px}.flight-roundtrip-layout{padding:0 6px}.flight-roundtrip-layout .flight-card{margin:0}.compact .flight-card-main{grid-template-columns:1fr 1fr}.roundtrip-sticky-inner{grid-template-columns:1fr 1fr;gap:8px;padding:8px 10px}.roundtrip-sticky-inner>div{font-size:11px}.sticky-total{grid-column:1}.round-view-fares{grid-column:2}.fare-modal{align-items:flex-end}.fare-modal-card{width:100%;max-height:92vh;border-radius:18px 18px 0 0;overflow:auto}.fare-options-body{grid-template-columns:1fr;padding:16px}.fare-services-labels{display:none}.fare-plan-grid{grid-template-columns:1fr}.fare-plan-rows{display:none}.fare-plan.selected .fare-plan-rows{display:grid}.fare-note,.fare-modal-head,.fare-modal-footer{padding-left:16px;padding-right:16px}.booking-flow-main{padding-top:18px}.booking-flow-grid{width:calc(100% - 16px)}.flow-stepper{overflow:auto}.flow-stepper span{min-width:130px}.booking-flow-card{padding:16px}.form-grid,.form-grid.two{grid-template-columns:1fr}.booking-flow-grid aside{display:block}.selected-flight-summary .summary-route{align-items:flex-start}.site-footer{margin-bottom:0}}


/* v11 — compact header + package detail + hotel pages */
.header-tools .currency-btn,.mobile-currency{display:none!important}
.header-tools .login-btn{padding:10px 16px;font-size:13px;border-radius:9px;box-shadow:0 6px 16px rgba(239,32,40,.20)}
.package-listing-top-card{background:#fff;border:1px solid #eaedf1;border-radius:10px;padding:18px 18px 14px;margin-bottom:14px;box-shadow:0 5px 16px rgba(17,24,39,.05)}
.package-listing-top-card .package-listing-heading{padding:0 0 11px;background:transparent}
.package-listing-top-card .package-sort-bar{margin:0}
.detail-crumbs{background:#fff;border-top:1px solid #f0f1f4}.detail-crumbs>.page-container{display:flex;align-items:center;gap:8px;min-height:44px;font-size:12px;color:#70788a}.detail-crumbs a{color:#355fa8}.detail-crumbs i{font-size:8px;color:#a5abb5}
.detail-kicker{display:inline-flex;align-items:center;padding:6px 10px;border-radius:99px;background:#fff0f1;color:var(--red);font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.6px}
.detail-tabs{background:#fff;border-top:1px solid #eceef2;border-bottom:1px solid #eceef2;position:sticky;top:var(--header-h);z-index:35}.detail-tabs .page-container{display:flex;gap:28px;overflow:auto;scrollbar-width:none}.detail-tabs a,.detail-tabs button{appearance:none;border:0;background:transparent;padding:15px 0;font-size:14px;font-weight:700;color:#596273;white-space:nowrap;position:relative;cursor:pointer}.detail-tabs a.active,.detail-tabs a:hover,.detail-tabs button.active,.detail-tabs button:hover{color:var(--red)}.detail-tabs a.active:after,.detail-tabs button.active:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:3px;background:var(--red)}
.detail-card{background:#fff;border:1px solid #e8ebf0;border-radius:14px;padding:24px;margin-bottom:18px;box-shadow:0 7px 22px rgba(17,24,39,.045);scroll-margin-top:150px}.detail-card h2{font-size:23px;margin:0;color:var(--navy)}.detail-card-head{display:flex;gap:13px;align-items:flex-start;margin-bottom:20px}.detail-card-head p{margin:4px 0 0;color:#6f7787;font-size:13px}.icon-badge{width:42px;height:42px;border-radius:12px;background:#fff0f1;color:var(--red);display:grid;place-items:center;flex:0 0 auto}.check-list,.cross-list,.policy-list{list-style:none;padding:0;margin:0}.check-list li,.cross-list li,.policy-list li{position:relative;padding:7px 0 7px 26px;color:#4c5566}.check-list li:before{content:"\f00c";font-family:"Font Awesome 6 Free";font-weight:900;color:#18a15f;position:absolute;left:0}.cross-list li:before{content:"\f00d";font-family:"Font Awesome 6 Free";font-weight:900;color:var(--red);position:absolute;left:0}.policy-list li:before{content:"\f058";font-family:"Font Awesome 6 Free";font-weight:900;color:#18a15f;position:absolute;left:0}
.package-detail-hero{background:linear-gradient(110deg,#fff6f6,#fff 55%,#f6f8ff);padding:30px 0 22px}.package-detail-hero-grid{display:grid;grid-template-columns:1fr auto;gap:26px;align-items:end}.package-detail-copy h1{font-size:38px;letter-spacing:-1px;margin:10px 0 10px;color:var(--navy)}.detail-subline{display:flex;gap:18px;flex-wrap:wrap;color:#5f6878;font-size:13px}.detail-subline span{display:flex;align-items:center;gap:7px}.detail-subline i{color:var(--red)}.package-detail-pricebox{min-width:245px;background:#fff;border:1px solid #eceef2;border-radius:14px;padding:18px 20px;box-shadow:0 10px 30px rgba(17,24,39,.07);display:flex;flex-direction:column;align-items:flex-end}.package-detail-pricebox small,.package-detail-pricebox span{color:#7c8494;font-size:11px}.package-detail-pricebox strong{font-size:30px;color:var(--navy);margin:2px 0}.package-detail-pricebox .primary-action{height:42px;display:inline-flex;align-items:center;justify-content:center;margin-top:12px}.package-gallery-section{padding:18px 0;background:#f5f7fa}.package-gallery-grid{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(260px,.7fr);gap:12px}.package-main-photo{height:430px;border-radius:15px;overflow:hidden}.package-main-photo img{height:100%;object-fit:cover}.package-thumb-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.package-thumb{border:3px solid transparent;border-radius:12px;overflow:hidden;padding:0;background:#fff}.package-thumb.active{border-color:var(--red)}.package-thumb img{height:205px;object-fit:cover}.package-detail-content{background:#f5f7fa;padding:22px 0 42px}.detail-content-grid{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:22px;align-items:start}.query-sidebar{position:sticky;top:150px}.query-card{background:#fff;border:1px solid #eadfe1;border-radius:16px;padding:22px;box-shadow:0 10px 28px rgba(17,24,39,.07)}.query-card h2{font-size:24px;margin:8px 0 5px}.query-card>p{font-size:13px;color:#687184;margin:0 0 16px;line-height:1.55}.query-card form{display:grid;gap:11px}.query-card label{display:flex;flex-direction:column;gap:6px;font-size:11px;font-weight:700;color:#3d4759}.query-card input,.query-card select,.query-card textarea{width:100%;border:1px solid #dfe3ea;border-radius:9px;padding:11px;background:#fff;outline:0;color:#182035}.query-card textarea{resize:vertical}.query-submit{height:46px}.query-note{display:block;color:#7c8491;font-size:10px;line-height:1.5;margin-top:12px}.query-note i{color:#18a15f;margin-right:5px}.package-route-large{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin:2px 0 22px}.package-route-large span{background:#f7f8fa;border:1px solid #e5e8ee;border-radius:9px;padding:10px 13px;font-weight:700}.package-route-large b{color:var(--red)}.package-route-large i{color:#98a0ad}.detail-feature-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.detail-feature-grid>div{border:1px solid #eceef2;border-radius:12px;padding:14px;display:flex;flex-direction:column;gap:5px}.detail-feature-grid i{color:var(--red);font-size:19px}.detail-feature-grid strong{font-size:13px}.detail-feature-grid small{font-size:11px;color:#7b8391}.itinerary-list{display:grid;gap:12px}.itinerary-list article{display:grid;grid-template-columns:74px 1fr;gap:14px;border:1px solid #eceef2;border-radius:12px;padding:15px}.day-pill{height:32px;border-radius:8px;background:var(--red);color:#fff;display:grid;place-items:center;font-weight:800;font-size:12px}.itinerary-list h3{margin:0 0 5px;font-size:17px}.itinerary-list p{margin:0;color:#626b7b;font-size:13px;line-height:1.6}.itinerary-meta{display:flex;gap:15px;flex-wrap:wrap;margin-top:10px;color:#677181;font-size:11px}.itinerary-meta i{color:var(--red);margin-right:5px}.package-hotel-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.package-hotel-grid article{border:1px solid #eceef2;border-radius:12px;overflow:hidden}.package-hotel-grid img{height:145px;object-fit:cover}.package-hotel-grid article>div{padding:12px}.package-hotel-grid h3{font-size:15px;margin:0 0 3px}.package-hotel-grid p{font-size:11px;color:#6f7786;margin:0}.stars{color:#f6a300;letter-spacing:1px}.inclusion-columns{display:grid;grid-template-columns:1fr 1fr;gap:30px}.inclusion-columns h2{margin-bottom:10px}.about-place-grid{display:grid;grid-template-columns:260px 1fr;gap:18px;align-items:start}.about-place-grid img{height:180px;object-fit:cover;border-radius:12px}.about-place-grid p{margin:0;color:#5e6878;line-height:1.75}
.hotel-search-summary,.hotel-detail-search{background:linear-gradient(108deg,#c51e33 0%,#991f3b 46%,#3d1d4d 100%);color:#fff}.hotel-summary-grid{min-height:94px;display:grid;grid-template-columns:54px 1.45fr 1fr 1fr 1.2fr auto;gap:20px;align-items:center}.hotel-summary-icon{font-size:30px}.hotel-summary-grid>button:not(.modify-search-btn){border:0;border-bottom:1px solid rgba(255,255,255,.28);background:transparent;color:#fff;text-align:left;padding:8px 0}.hotel-summary-grid span,.hotel-detail-search-grid span{display:block;font-size:11px;opacity:.76;margin-bottom:3px}.hotel-summary-grid strong,.hotel-detail-search-grid strong{font-size:16px}.hotel-modify-panel{display:none;grid-template-columns:1.3fr 1fr 1fr 1.2fr auto;gap:12px;padding:16px 0 20px}.hotel-modify-panel.open{display:grid}.hotel-modify-panel label{display:flex;flex-direction:column;gap:6px;font-size:11px;font-weight:700;color:rgba(255,255,255,.85)}.hotel-modify-panel input{height:44px;border:1px solid rgba(255,255,255,.35);background:rgba(255,255,255,.12);border-radius:8px;color:#fff;padding:0 11px;outline:0}.hotel-modify-actions{display:flex;gap:7px;align-items:flex-end}.hotel-modify-actions button{height:44px;white-space:nowrap}.hotel-listing-area{background:#f5f7fa;padding:24px 0 42px}.hotel-listing-grid{display:grid;grid-template-columns:260px minmax(0,1fr);gap:22px;align-items:start}.hotel-filter-sidebar{background:#fff;border:1px solid #e5e8ee;border-radius:12px;padding:18px;position:sticky;top:105px;max-height:calc(100vh - 125px);overflow:auto}.hotel-filter-head{display:flex;align-items:center;justify-content:space-between}.hotel-filter-head h2{margin:0;font-size:21px}.hotel-filter-close{display:none;border:0;background:#f3f5f8;width:36px;height:36px;border-radius:50%}.hotel-search-filter{display:block;margin:18px 0}.hotel-search-filter>span,.hotel-filter-sidebar legend{font-size:13px;font-weight:800;color:#2c3446}.hotel-search-filter>div{position:relative;margin-top:8px}.hotel-search-filter input{width:100%;height:40px;border:1px solid #dde2e8;border-radius:8px;padding:0 34px 0 10px}.hotel-search-filter i{position:absolute;right:11px;top:13px;color:#9ba2ae}.hotel-filter-sidebar fieldset{border:0;border-top:1px solid #eef0f3;margin:0;padding:15px 0}.hotel-filter-sidebar label:not(.hotel-search-filter){display:flex;align-items:flex-start;gap:8px;font-size:12px;color:#545e6d;margin:9px 0}.hotel-filter-sidebar input[type=checkbox]{width:16px;height:16px;accent-color:var(--red)}.clear-hotel-filters{border:0;background:#fff0f1;color:var(--red);font-weight:800;border-radius:8px;padding:10px 12px;width:100%}.hotel-results-toolbar{background:#fff;border:1px solid #e5e8ee;border-radius:10px 10px 0 0;padding:12px 14px;display:flex;align-items:center;justify-content:space-between;gap:15px}.hotel-results-toolbar>div:first-child{display:flex;gap:12px;align-items:center}.hotel-mobile-filter{display:none;border:1px solid #e1e5eb;background:#fff;border-radius:8px;padding:9px 12px;font-weight:700}.hotel-sort-tabs{display:flex;gap:4px}.hotel-sort{border:0;background:transparent;color:#737b8b;padding:9px 12px;border-radius:7px}.hotel-sort.active{background:#fff0f1;color:var(--red);font-weight:800}.hotel-active-filters{display:flex;flex-wrap:wrap;gap:7px;padding:9px 0}.hotel-active-filters:empty{display:none}.hotel-active-filters>span{background:#fff0f1;color:#c91c26;border-radius:99px;padding:6px 8px;font-size:11px;font-weight:700}.hotel-active-filters button{border:0;background:transparent;color:inherit;padding:0}.hotel-results-list{display:grid;gap:13px}.hotel-result-card{display:grid;grid-template-columns:250px minmax(0,1fr) 190px;background:#fff;border:1px solid #e5e8ee;border-radius:10px;overflow:hidden;box-shadow:0 5px 16px rgba(17,24,39,.05)}.hotel-result-card[hidden]{display:none}.hotel-result-image{position:relative;min-height:205px}.hotel-result-image img{height:100%;object-fit:cover}.featured-badge{position:absolute;left:10px;top:10px;background:#172039;color:#fff;border-radius:5px;padding:5px 8px;font-size:10px;font-weight:800}.hotel-result-content{padding:16px}.hotel-title-line{display:flex;justify-content:space-between;gap:12px}.hotel-title-line h2{font-size:19px;margin:0 0 3px;color:var(--navy)}.hotel-stars{color:#f5aa00;font-size:13px}.hotel-stars span{color:#d8dce3}.hotel-title-line p{font-size:11px;color:#657083;margin:4px 0}.hotel-title-line p i{color:var(--red)}.hotel-rating-box{text-align:right;min-width:80px}.hotel-rating-box strong{display:inline-grid;place-items:center;width:38px;height:32px;border-radius:8px;background:#eaf9ef;color:#168448;font-size:14px}.hotel-rating-box span,.hotel-rating-box small{display:block;font-size:10px;color:#607064;margin-top:2px}.hotel-badges{display:flex;gap:7px;flex-wrap:wrap;margin:12px 0}.hotel-badges span{padding:5px 7px;border-radius:99px;background:#eef9f2;color:#18834b;font-size:10px;font-weight:700}.hotel-badges span:nth-child(n+2){background:#f4f1ff;color:#6348a6}.hotel-amenity-line{display:flex;gap:16px;flex-wrap:wrap;font-size:11px;color:#606a79}.hotel-amenity-line i{color:#18a15f}.hotel-result-price{border-left:1px solid #edf0f3;padding:16px;display:flex;flex-direction:column;align-items:flex-end;text-align:right}.rating-copy{font-size:10px;color:#1b8a4f}.hotel-result-price small{margin-top:auto;color:#8a9099}.hotel-result-price strong{font-size:25px;color:var(--navy)}.hotel-result-price em{font-size:10px;color:#687283;font-style:normal;line-height:1.45}.hotel-choose-room{margin-top:10px;background:var(--red);color:#fff;border-radius:7px;padding:10px 14px;font-size:12px;font-weight:800}.hotel-no-results{text-align:center;background:#fff;border:1px dashed #d7dce4;border-radius:12px;padding:50px}.hotel-no-results i{font-size:34px;color:var(--red)}
.hotel-detail-search-grid{min-height:82px;display:grid;grid-template-columns:1.5fr 1fr 1fr 1.2fr auto;gap:25px;align-items:center}.hotel-detail-search-grid>div{border-bottom:1px solid rgba(255,255,255,.25);padding:8px 0}.hotel-detail-search-grid .modify-search-btn{display:flex;align-items:center;justify-content:center}.hotel-detail-intro{background:#f7f8fa;padding:18px 0 22px}.hotel-detail-title-row{display:flex;justify-content:space-between;gap:20px;align-items:flex-end;margin-bottom:14px}.hotel-detail-title-row h1{font-size:34px;margin:7px 0 6px;color:var(--navy)}.hotel-detail-meta{display:flex;gap:14px;align-items:center;flex-wrap:wrap;font-size:12px;color:#687183}.hotel-detail-meta a{color:#1f68c9;font-weight:700}.hotel-detail-rating{text-align:right}.hotel-detail-rating strong{display:inline-grid;place-items:center;width:52px;height:46px;background:#e9f8ee;color:#15834a;border-radius:10px;font-size:20px}.hotel-detail-rating span,.hotel-detail-rating small{display:block;font-size:11px;color:#607064}.hotel-gallery{display:grid;grid-template-columns:1.7fr .8fr 270px;gap:10px;background:#fff;border:1px solid #e8ebf0;border-radius:14px;overflow:hidden;padding:10px}.hotel-gallery-main{height:390px}.hotel-gallery-main img{height:100%;object-fit:cover;border-radius:10px}.hotel-gallery-side{display:grid;grid-template-columns:1fr 1fr;gap:8px}.hotel-gallery-thumb{padding:0;border:2px solid transparent;border-radius:9px;overflow:hidden;background:#fff}.hotel-gallery-thumb.active{border-color:var(--red)}.hotel-gallery-thumb img{height:190px;object-fit:cover}.hotel-gallery-rate{padding:22px 18px;display:flex;flex-direction:column;align-items:flex-end;text-align:right}.hotel-gallery-rate span{font-weight:800;color:#344057}.hotel-gallery-rate small{margin-top:auto;color:#7d8492}.hotel-gallery-rate strong{font-size:30px}.hotel-gallery-rate em{font-style:normal;font-size:11px;color:#6d7685}.hotel-gallery-rate .primary-action{margin-top:14px;height:42px;display:flex;align-items:center}.hotel-detail-content{background:#f5f7fa;padding:22px 0 42px}.detail-lead{color:#596474;line-height:1.7}.hotel-highlight-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:18px}.hotel-highlight-grid>div{border:1px solid #eceef2;border-radius:12px;padding:14px;display:flex;flex-direction:column;gap:4px}.hotel-highlight-grid i{color:var(--red);font-size:18px}.hotel-highlight-grid strong{font-size:13px}.hotel-highlight-grid small{font-size:11px;color:#7b8493}.hotel-rooms-section{scroll-margin-top:150px;margin-bottom:18px}.section-title-row{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:12px}.section-title-row h2{font-size:26px;margin:0}.section-title-row p{margin:3px 0 0;color:#6d7686}.section-title-row>span{font-size:12px;color:#6f7886}.hotel-room-card{display:grid;grid-template-columns:250px minmax(0,1fr) 380px;background:#fff;border:1px solid #e5e8ee;border-radius:13px;overflow:hidden;margin-bottom:14px}.hotel-room-photo{position:relative;min-height:235px}.hotel-room-photo img{height:100%;object-fit:cover}.hotel-room-photo span{position:absolute;left:10px;bottom:10px;background:rgba(17,24,47,.85);color:#fff;padding:6px 9px;border-radius:6px;font-size:11px;font-weight:700}.hotel-room-info{padding:18px}.hotel-room-info h3{font-size:20px;margin:0 0 10px}.room-facts{display:flex;gap:12px;flex-wrap:wrap;color:#687282;font-size:11px;margin-bottom:10px}.room-facts i{color:var(--red);margin-right:4px}.hotel-room-options{display:grid;grid-template-columns:1fr 1fr;border-left:1px solid #edf0f3}.hotel-room-options>div{padding:17px;display:flex;flex-direction:column}.hotel-room-options>div+div{border-left:1px solid #edf0f3}.hotel-room-options h4{margin:0 0 8px;font-size:14px}.free-cancel{color:#15834a;background:#eaf8ef;border-radius:99px;padding:5px 7px;font-size:10px;align-self:flex-start}.hotel-room-options strong{font-size:22px;margin-top:auto}.hotel-room-options small{color:#7b8492;font-size:10px}.choose-room-demo{margin-top:9px;border:0;border-radius:7px;background:var(--red);color:#fff;padding:10px;font-weight:800;font-size:11px}.amenity-category-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.amenity-category-grid>div{border:1px solid #edf0f3;border-radius:11px;padding:15px}.amenity-category-grid h3{font-size:14px;margin:0 0 8px}.amenity-category-grid span{display:block;font-size:12px;color:#626c7b;padding:4px 0}.amenity-category-grid span:before{content:"✓";color:#18a15f;margin-right:6px}.hotel-map-visual{height:300px;border-radius:14px;position:relative;overflow:hidden;background:linear-gradient(150deg,#dff5e9,#e7f3ff);border:1px solid #dce8e3}.hotel-map-visual:before,.hotel-map-visual:after{content:"";position:absolute;background:#fff;border-radius:30px;box-shadow:0 0 0 2px #d8dde4}.hotel-map-visual:before{width:120%;height:18px;left:-10%;top:46%;transform:rotate(-14deg)}.hotel-map-visual:after{width:100%;height:14px;left:8%;top:25%;transform:rotate(23deg)}.map-road{position:absolute;background:#fff;border:2px solid #d9dee5;border-radius:30px}.road-a{width:70%;height:12px;left:15%;top:70%;transform:rotate(7deg)}.road-b{width:42%;height:10px;left:50%;top:10%;transform:rotate(70deg)}.map-pin{position:absolute;z-index:3;display:flex;align-items:center;gap:6px;background:#fff;padding:7px 9px;border-radius:8px;box-shadow:0 5px 15px rgba(17,24,39,.12);font-size:10px}.map-pin i{color:var(--red)}.hotel-pin{left:45%;top:44%}.beach-pin{left:18%;top:22%}.market-pin{right:14%;bottom:18%}.nearby-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin-top:10px}.nearby-grid span{background:#f7f8fa;border-radius:9px;padding:10px;font-size:11px;color:#697283}.policy-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:15px}.policy-grid>div{border:1px solid #eceef2;border-radius:10px;padding:12px}.policy-grid strong,.policy-grid span{display:block}.policy-grid span{font-size:11px;color:#6c7583;margin-top:3px}.review-summary{display:grid;grid-template-columns:220px 1fr;gap:25px;padding-bottom:18px;border-bottom:1px solid #eceef2}.review-summary>div:first-child strong{font-size:42px;color:#168348}.review-summary>div:first-child span,.review-summary>div:first-child small{display:block}.review-bars{display:grid;grid-template-columns:1fr 1fr;gap:10px}.review-bars span{background:#f7f8fa;border-radius:8px;padding:10px;font-size:12px}.review-bars b{float:right}.review-list article{padding:15px 0;border-bottom:1px solid #eef0f3}.review-list article:last-child{border-bottom:0}.review-list article>div{display:flex;justify-content:space-between}.review-list article>div span{color:#f5aa00}.review-list p{font-size:12px;color:#626c7b;line-height:1.6}.hotel-faq-list article{border:1px solid #e8ebf0;border-radius:10px;margin:8px 0;overflow:hidden}.hotel-faq-list button{width:100%;border:0;background:#fff;padding:14px 15px;text-align:left;font-weight:700;display:flex;justify-content:space-between}.hotel-faq-list article>div{display:none;padding:0 15px 14px;color:#647081;font-size:12px}.hotel-faq-list article.open>div{display:block}.hotel-faq-list article.open button i{transform:rotate(180deg)}
@media(max-width:1100px){.detail-content-grid{grid-template-columns:1fr}.query-sidebar{position:static}.package-gallery-grid{grid-template-columns:1.4fr .8fr}.hotel-listing-grid{grid-template-columns:230px 1fr}.hotel-result-card{grid-template-columns:220px 1fr 170px}.hotel-gallery{grid-template-columns:1.5fr .7fr 230px}.hotel-room-card{grid-template-columns:220px 1fr}.hotel-room-options{grid-column:1/-1;border-left:0;border-top:1px solid #edf0f3}.amenity-category-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:800px){.package-detail-hero-grid{grid-template-columns:1fr}.package-detail-pricebox{align-items:flex-start}.package-gallery-grid{grid-template-columns:1fr}.package-main-photo{height:320px}.package-thumb-grid{grid-template-columns:repeat(4,1fr)}.package-thumb img{height:90px}.detail-feature-grid{grid-template-columns:1fr 1fr}.package-hotel-grid{grid-template-columns:1fr}.inclusion-columns{grid-template-columns:1fr}.about-place-grid{grid-template-columns:1fr}.hotel-summary-grid{grid-template-columns:1fr 1fr;padding:12px 0}.hotel-summary-icon{display:none}.hotel-summary-grid .modify-search-btn{grid-column:1/-1}.hotel-modify-panel.open{grid-template-columns:1fr 1fr}.hotel-modify-actions{grid-column:1/-1}.hotel-listing-grid{grid-template-columns:1fr}.hotel-filter-sidebar{position:fixed;top:0;bottom:0;left:0;width:min(88vw,360px);max-height:none;z-index:160;border-radius:0;transform:translateX(-102%);transition:.28s;overflow:auto}.hotel-filter-sidebar.open{transform:translateX(0)}.hotel-filter-close{display:block}.hotel-mobile-filter{display:inline-flex;gap:7px}.hotel-sort-tabs{overflow:auto;max-width:56vw}.hotel-result-card{grid-template-columns:190px 1fr}.hotel-result-price{grid-column:1/-1;border-left:0;border-top:1px solid #edf0f3;display:grid;grid-template-columns:1fr auto;align-items:center;text-align:left}.hotel-result-price small,.hotel-result-price em,.rating-copy{display:none}.hotel-result-price strong{font-size:22px}.hotel-choose-room{grid-column:2;grid-row:1/3}.hotel-detail-search-grid{grid-template-columns:1fr 1fr;padding:12px 0}.hotel-detail-search-grid .modify-search-btn{grid-column:1/-1}.hotel-gallery{grid-template-columns:1fr}.hotel-gallery-main{height:320px}.hotel-gallery-side{grid-template-columns:repeat(4,1fr)}.hotel-gallery-thumb img{height:85px}.hotel-gallery-rate{align-items:flex-start;text-align:left}.hotel-highlight-grid{grid-template-columns:1fr 1fr}.hotel-room-card{grid-template-columns:1fr}.hotel-room-photo{height:220px}.hotel-room-options{grid-column:auto}.nearby-grid,.policy-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.package-listing-top-card{padding:13px 11px 10px;border-radius:12px}.package-detail-copy h1{font-size:29px}.package-gallery-section{padding-top:10px}.package-main-photo{height:250px}.package-thumb-grid{gap:6px}.package-thumb img{height:68px}.detail-card{padding:17px 14px;border-radius:12px}.detail-feature-grid{grid-template-columns:1fr 1fr}.itinerary-list article{grid-template-columns:1fr}.day-pill{width:68px}.hotel-results-toolbar{align-items:flex-start;flex-direction:column}.hotel-sort-tabs{max-width:100%;width:100%}.hotel-result-card{grid-template-columns:1fr}.hotel-result-image{height:190px}.hotel-result-price{grid-column:auto}.hotel-title-line{align-items:flex-start}.hotel-summary-grid,.hotel-modify-panel.open,.hotel-detail-search-grid{grid-template-columns:1fr}.hotel-detail-title-row{align-items:flex-start}.hotel-detail-title-row h1{font-size:28px}.hotel-gallery-main{height:250px}.hotel-gallery-side{grid-template-columns:1fr 1fr}.hotel-gallery-thumb img{height:105px}.hotel-highlight-grid,.amenity-category-grid,.review-bars,.policy-grid,.nearby-grid{grid-template-columns:1fr}.hotel-room-options{grid-template-columns:1fr}.hotel-room-options>div+div{border-left:0;border-top:1px solid #edf0f3}.review-summary{grid-template-columns:1fr}.detail-tabs{top:70px}}


/* v12 final listing cleanup + responsive QA */
.airline-lowest-strip{align-items:stretch;overflow-x:auto;overscroll-behavior-inline:contain}
.airline-lowest-item{appearance:none;-webkit-appearance:none;box-sizing:border-box;min-height:74px;flex:1 0 190px;margin:0;border:0;border-right:1px solid #dfe3e8;background:#fff;color:var(--navy);font:inherit;text-align:left;cursor:pointer;display:flex;align-items:center;gap:11px;padding:12px 18px;box-shadow:none}
.airline-lowest-item:last-child{border-right:0}
.airline-lowest-item:hover{background:#fafbfc}
.airline-lowest-item.active{background:#fff7f7;box-shadow:inset 0 3px 0 var(--red)}
.airline-lowest-all{justify-content:flex-start;font-size:14px}
.airline-lowest-copy{display:flex;min-width:0;flex-direction:column;line-height:1.18}
.airline-lowest-copy>span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:13px;color:#11182f}
.airline-lowest-copy strong{font-size:16px;margin-top:3px;color:#11182f}
.flight-card-main{grid-template-columns:190px minmax(150px,1fr) 150px minmax(150px,1fr) 150px;column-gap:16px}
.flight-city{min-width:0}
.flight-duration{justify-self:stretch;align-self:center;width:100%;max-width:150px;margin-inline:auto;text-align:center}
.flight-duration>span,.flight-duration>small{display:block;text-align:center}
.flight-offer{display:none!important}
.package-list-price{justify-content:center;gap:4px}
.package-list-price .package-view-details{margin-top:4px}
.package-list-price em{display:none!important}
.featured-badge{display:none!important}

/* Global responsive hardening discovered in final page audit */
img{max-width:100%}
body{overflow-x:hidden}
.page-container{max-width:var(--container)}
.header-row,.footer-top,.footer-bottom{min-width:0}
.main-nav,.header-tools,.footer-column,.footer-brand{min-width:0}
.detail-card,.booking-flow-card,.agent-auth-card,.featured-blog,.offer-page-card,.blog-card,.hotel-result-card,.package-list-card,.flight-card{max-width:100%}

@media(max-width:1100px){
  .flight-card-main{grid-template-columns:150px minmax(130px,1fr) 120px minmax(130px,1fr) 125px;gap:12px}
  .airline-lowest-item{flex-basis:170px;min-height:70px;padding:10px 14px}
}
@media(max-width:820px){
  .flight-card-main{grid-template-columns:125px minmax(120px,1fr) 105px minmax(120px,1fr) 105px}
  .flight-duration{max-width:105px}
}
@media(max-width:600px){
  .flight-card-main{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;padding:14px}
  .flight-airline{grid-column:1/-1}
  .flight-city-depart{grid-column:1;grid-row:2}
  .flight-city-arrive{grid-column:2;grid-row:2;text-align:right}
  .flight-duration{grid-column:1/-1;grid-row:3;order:initial;max-width:190px;width:52%;min-width:140px;margin:0 auto}
  .flight-price{grid-column:1/-1;grid-row:4;order:initial}
  .airline-lowest-strip{scroll-snap-type:x proximity}
  .airline-lowest-item{flex:0 0 72%;min-height:66px;padding:9px 12px;scroll-snap-align:start}
  .airline-lowest-all{flex-basis:42%}
  .airline-lowest-copy>span{font-size:12px}.airline-lowest-copy strong{font-size:15px}
}

/* v12 responsive QA: prevent closed off-canvas UI from widening the document */
html{overflow-x:clip}
@media(max-width:820px){
  .booking-flow-grid>section,.booking-flow-grid>aside{min-width:0}
  .form-grid,.form-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}
  .form-grid input,.form-grid select{min-width:0;width:100%}
}
@media(max-width:600px){
  .form-grid,.form-grid.two{grid-template-columns:1fr}
}
.package-results-column{min-width:0}



/* Keep live autocomplete results above the next homepage section. */
.quick-links-section{position:relative;z-index:1}
.hero-section .search-field,.hero-section .city-field{overflow:visible}
.hero-section .ts-autocomplete{z-index:2500}

/* Fresh PHP/API integration helpers — intentionally scoped to the accepted TripSutra UI. */
.search-field{position:relative}
.ts-autocomplete{position:absolute;z-index:1200;top:calc(100% + 6px);left:0;right:0;min-width:260px;max-height:300px;overflow:auto;background:#fff;border:1px solid #e3e8f0;border-radius:12px;box-shadow:0 16px 38px rgba(15,23,42,.15);padding:6px}
.ts-autocomplete-item{display:block;width:100%;border:0;background:#fff;text-align:left;padding:10px 12px;border-radius:8px;color:#11182f;font:inherit;cursor:pointer}
.ts-autocomplete-item:hover,.ts-autocomplete-item:focus{background:#fff1f2;color:#e31d24;outline:0}
.ts-autocomplete-empty{padding:10px 12px;color:#64748b;font-size:13px}
.login-auth-message{padding:10px 12px;border-radius:10px;margin:0 0 12px;font-size:13px;font-weight:600}
.login-auth-message.error{background:#fff1f2;color:#b91c1c;border:1px solid #fecdd3}
.login-auth-message.success{background:#ecfdf5;color:#047857;border:1px solid #a7f3d0}
.login-new-profile{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:10px 0}
.login-otp-verify{margin-top:14px}
.login-otp-label{display:block;font-size:13px;font-weight:700;margin-bottom:8px}
.login-otp-boxes{display:grid;grid-template-columns:repeat(6,1fr);gap:8px;margin-bottom:12px}
.login-otp-boxes input{width:100%;height:46px;border:1px solid #d7deea;border-radius:9px;text-align:center;font-size:18px;font-weight:700;outline:none}
.login-otp-boxes input:focus{border-color:#ef2028;box-shadow:0 0 0 3px rgba(239,32,40,.09)}
.login-secondary-text{display:block;margin:10px auto 0;border:0;background:none;color:#475569;font-weight:600;cursor:pointer}
.package-actions a.package-details,.package-actions a.package-enquire{display:flex;width:100%;align-items:center;justify-content:center;text-decoration:none}
.destination-card{text-decoration:none;color:inherit}
@media(max-width:600px){.ts-autocomplete{position:absolute;z-index:2600;left:0;right:0;top:calc(100% + 6px);min-width:0;max-height:42vh}.login-new-profile{grid-template-columns:1fr}.login-otp-boxes{gap:5px}.login-otp-boxes input{height:42px}}

/* Phase 1.2: package cards stay flat in normal and hover states. */
.package-card,.package-card:hover{box-shadow:none!important}

/* Phase 1.2: selected airport/country metadata */
.city-field small,#hotel-country-meta{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
@media(max-width:600px){.city-field small,#hotel-country-meta{white-space:normal;line-height:1.25}}

/* Phase 2 — live package data integration */
.package-view-details{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;line-height:1}
.package-list-content h2 a{color:inherit;text-decoration:none}
.package-list-content h2 a:hover{color:#ef2028}
.package-list-image{display:block}
.filter-empty-note{display:block;color:#8a9099;font-size:13px;line-height:1.5;padding:6px 0}
.package-overview-copy{color:#4b5563;line-height:1.75;margin:0 0 22px}
.package-overview-copy p:first-child{margin-top:0}.package-overview-copy p:last-child{margin-bottom:0}
.query-form-status{font-size:13px;line-height:1.45;margin-top:10px;min-height:18px}.query-form-status.success{color:#11844b}.query-form-status.error{color:#c91c26}.captcha-equation{font-weight:800;color:#11182f;margin-left:5px}
.query-submit:disabled{opacity:.65;cursor:not-allowed}
.package-detail-page .detail-feature-grid:empty{display:none}
@media(max-width:600px){.package-view-details{min-width:120px}.package-overview-copy{font-size:14px}.query-form-status{font-size:12px}}


/* Fresh Phase 2.1 — package search + detail usability polish */
.package-destination-field,.package-listing-destination-field,.package-listing-date-field{position:relative;overflow:visible}
.package-destination-autocomplete{min-width:100%;max-height:280px;padding:7px}
.package-destination-item{display:flex;align-items:center;gap:10px;font-size:14px}
.package-destination-item i{width:18px;color:var(--red)}
.package-destination-item.active{background:#fff1f2;color:var(--red)}
.package-date-field .date-field-icon,.package-listing-date-field .date-field-icon{pointer-events:auto;cursor:pointer}
.package-listing-date-field .date-field-icon{position:absolute;right:13px;bottom:14px;color:#fff;opacity:.9}
.package-modify-panel .ts-autocomplete{top:calc(100% + 4px);color:var(--navy);background:#fff;z-index:145}
.package-modify-panel .ts-autocomplete-item{color:var(--navy);background:#fff}
.package-modify-panel .ts-autocomplete-item:hover,.package-modify-panel .ts-autocomplete-item.active{background:#fff1f2;color:var(--red)}
.package-detail-priceplain{min-width:220px;display:flex;flex-direction:column;align-items:flex-end;justify-content:flex-end;padding:2px 0 4px;text-align:right}
.package-detail-priceplain small,.package-detail-priceplain span{color:#6f7787;font-size:14px}
.package-detail-priceplain strong{font-size:32px;line-height:1.1;color:var(--navy);margin:4px 0}
.package-gallery-wrap{display:grid;gap:12px}
.package-main-photo{appearance:none;border:0;padding:0;background:#eef1f5;width:100%;height:470px;border-radius:16px;overflow:hidden;position:relative;cursor:zoom-in}
.package-main-photo img{height:100%;object-fit:cover}
.package-photo-count{position:absolute;right:14px;bottom:14px;display:inline-flex;align-items:center;gap:7px;background:rgba(17,24,47,.84);color:#fff;border-radius:999px;padding:8px 12px;font-size:13px;font-weight:700;backdrop-filter:blur(6px)}
.package-thumb-rail-wrap{display:grid;grid-template-columns:42px minmax(0,1fr) 42px;gap:8px;align-items:center}
.package-thumb-rail{display:flex;gap:9px;overflow-x:auto;scroll-behavior:smooth;scrollbar-width:none;padding:2px;overscroll-behavior-inline:contain}
.package-thumb-rail::-webkit-scrollbar{display:none}
.package-thumb{appearance:none;flex:0 0 132px;height:86px;border:2px solid transparent;border-radius:10px;overflow:hidden;padding:0;background:#fff;cursor:pointer;opacity:.78;transition:border-color .18s,opacity .18s,transform .18s}
.package-thumb:hover{opacity:1;transform:translateY(-1px)}
.package-thumb.active{border-color:var(--red);opacity:1}
.package-thumb img{height:100%;object-fit:cover}
.package-gallery-arrow{width:40px;height:40px;border:1px solid #dfe3e9;border-radius:50%;background:#fff;color:var(--navy);display:grid;place-items:center;box-shadow:0 5px 14px rgba(17,24,39,.06)}
.package-gallery-arrow:hover{border-color:var(--red);color:var(--red)}
.package-lightbox{position:fixed;inset:0;z-index:300;background:rgba(7,12,25,.94);display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:.2s;padding:70px 74px}
.package-lightbox.open{opacity:1;visibility:visible}
body.package-lightbox-open{overflow:hidden}
.package-lightbox>img{width:auto;max-width:min(1200px,88vw);height:auto;max-height:82vh;object-fit:contain;border-radius:10px}
.package-lightbox-close{position:absolute;right:24px;top:22px;width:44px;height:44px;border:0;border-radius:50%;background:#fff;color:var(--navy);font-size:20px}
.package-lightbox-arrow{position:absolute;top:50%;transform:translateY(-50%);width:48px;height:48px;border:0;border-radius:50%;background:#fff;color:var(--navy);font-size:18px}
.package-lightbox-arrow.prev{left:22px}.package-lightbox-arrow.next{right:22px}
.package-lightbox-count{position:absolute;bottom:22px;left:50%;transform:translateX(-50%);background:rgba(255,255,255,.13);color:#fff;padding:7px 12px;border-radius:99px;font-size:13px}
.package-detail-content,.detail-card,.query-card,.package-overview-copy,.check-list,.cross-list,.policy-list{font-size:14px}
.detail-card-head p,.query-card>p,.query-card label,.query-card input,.query-card select,.query-card textarea,.package-hotel-grid p,.detail-feature-grid strong,.detail-feature-grid small{font-size:14px}
.query-note{font-size:12px}
.itinerary-list article{grid-template-columns:78px minmax(0,1fr);gap:16px;padding:17px}
.day-pill{height:34px;font-size:13px}
.itinerary-list h3{font-size:18px;margin:1px 0 7px}
.itinerary-description,.itinerary-description p{font-size:14px;line-height:1.68;color:#586273;margin:0}
.itinerary-services{display:flex;gap:9px;flex-wrap:wrap;margin-top:13px}
.itinerary-service-badge{display:inline-flex;align-items:center;gap:8px;min-height:38px;padding:8px 11px;border:1px solid #e4e8ee;border-radius:10px;background:#f8fafc;color:#3f495b;font-size:14px;font-weight:500}
.itinerary-service-badge>i{width:24px;height:24px;border-radius:7px;background:#fff0f1;color:var(--red);display:grid;place-items:center;flex:0 0 auto}
@media(max-width:800px){.package-detail-priceplain{align-items:flex-start;text-align:left;min-width:0}.package-main-photo{height:330px}.package-thumb{flex-basis:112px;height:74px}.package-thumb-rail-wrap{grid-template-columns:36px minmax(0,1fr) 36px}.package-gallery-arrow{width:34px;height:34px}.package-lightbox{padding:65px 48px}.package-lightbox-arrow{width:40px;height:40px}.package-lightbox-arrow.prev{left:8px}.package-lightbox-arrow.next{right:8px}}
@media(max-width:600px){.package-search-grid{grid-template-columns:1fr}.package-main-photo{height:250px;border-radius:12px}.package-photo-count{right:9px;bottom:9px;font-size:12px;padding:7px 9px}.package-thumb-rail-wrap{grid-template-columns:1fr}.package-thumb-rail-wrap>.package-gallery-arrow{display:none}.package-thumb{flex:0 0 94px;height:65px}.package-lightbox{padding:56px 8px 48px}.package-lightbox>img{max-width:96vw}.package-lightbox-close{right:10px;top:10px}.itinerary-list article{grid-template-columns:1fr;padding:14px}.day-pill{width:72px}.itinerary-services{display:grid;grid-template-columns:1fr;gap:7px}.itinerary-service-badge{width:100%}.package-summary-inner{grid-template-columns:1fr 1fr}.package-summary-icon{display:none}.package-summary-inner .modify-search-btn{grid-column:1/-1}.package-modify-panel.open{grid-template-columns:1fr}}

/* Phase 2.2 — package navigation, listing autocomplete and mosaic gallery polish */
.package-modify-panel .ts-autocomplete,
.package-modify-panel .package-destination-autocomplete{
  background:#fff!important;
  color:#11182f!important;
  border:1px solid #e2e7ef!important;
  box-shadow:0 18px 42px rgba(15,23,42,.18)!important;
}
.package-modify-panel .ts-autocomplete-item,
.package-modify-panel .ts-autocomplete-item span,
.package-modify-panel .package-destination-item,
.package-modify-panel .package-destination-item span{
  color:#11182f!important;
  opacity:1!important;
}
.package-modify-panel .ts-autocomplete-item i,
.package-modify-panel .package-destination-item i{color:var(--red)!important}
.package-modify-panel .ts-autocomplete-item:hover,
.package-modify-panel .ts-autocomplete-item.active,
.package-modify-panel .package-destination-item:hover,
.package-modify-panel .package-destination-item.active{background:#fff1f2!important;color:var(--red)!important}
.destination-card,.package-actions a,.package-list-image,.package-list-content h2 a,.package-view-details{cursor:pointer}

.package-gallery-section{padding:18px 0;background:#f5f7fa}
.package-gallery-mosaic{
  display:grid;
  grid-template-columns:minmax(0,1.9fr) minmax(340px,1fr) minmax(230px,.88fr);
  grid-template-rows:repeat(2,minmax(0,1fr));
  gap:10px;
  height:360px;
}
.package-gallery-mosaic.no-tall{grid-template-columns:minmax(0,1.85fr) minmax(360px,1.15fr)}
.package-gallery-tile{appearance:none;border:0;padding:0;background:#e9edf2;overflow:hidden;position:relative;cursor:zoom-in;border-radius:10px;min-width:0;min-height:0}
.package-gallery-tile img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s ease}
.package-gallery-tile:hover img{transform:scale(1.025)}
.package-gallery-main{grid-column:1;grid-row:1/3;border-radius:12px}
.package-gallery-support-grid{grid-column:2;grid-row:1/3;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:10px;min-width:0;min-height:0}
.package-gallery-support-grid.count-1{grid-template-columns:1fr;grid-template-rows:1fr}
.package-gallery-support-grid.count-2{grid-template-columns:1fr;grid-template-rows:1fr 1fr}
.package-gallery-support-grid.count-3{grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr}
.package-gallery-support-grid.count-3 .package-gallery-support:first-child{grid-row:1/3}
.package-gallery-tall{grid-column:3;grid-row:1/3;border-radius:12px}
.package-gallery-view,.package-gallery-more{position:absolute;z-index:2;display:inline-flex;align-items:center;gap:7px;background:rgba(10,15,29,.82);color:#fff;border-radius:999px;padding:9px 12px;font-size:13px;font-weight:800;line-height:1}
.package-gallery-view{left:14px;bottom:14px}
.package-gallery-more{right:12px;bottom:12px}
.package-gallery-tile:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 62%,rgba(5,10,20,.16));pointer-events:none}
.package-gallery-view,.package-gallery-more{pointer-events:none}

@media(max-width:1100px){
  .package-gallery-mosaic{grid-template-columns:minmax(0,1.65fr) minmax(300px,1fr);height:340px}
  .package-gallery-mosaic .package-gallery-tall{display:none}
  .package-gallery-support-grid{grid-column:2}
  .package-gallery-mosaic:not(.no-tall) .package-gallery-support-grid{grid-column:2}
}
@media(max-width:800px){
  .package-gallery-mosaic,.package-gallery-mosaic.no-tall{grid-template-columns:1fr;grid-template-rows:auto;height:auto;gap:8px}
  .package-gallery-main{grid-column:1;grid-row:auto;height:280px}
  .package-gallery-support-grid{grid-column:1;grid-row:auto;height:210px;grid-template-columns:1fr 1fr!important;grid-template-rows:1fr 1fr!important}
  .package-gallery-support-grid.count-1{height:150px;grid-template-columns:1fr!important;grid-template-rows:1fr!important}
  .package-gallery-support-grid.count-2{height:160px;grid-template-columns:1fr 1fr!important;grid-template-rows:1fr!important}
  .package-gallery-support-grid.count-3 .package-gallery-support:first-child{grid-row:auto}
  .package-gallery-tall{display:none!important}
}
@media(max-width:600px){
  .package-gallery-main{height:235px}
  .package-gallery-support-grid{height:180px}
  .package-gallery-view,.package-gallery-more{font-size:12px;padding:8px 10px}
  .package-gallery-view{left:10px;bottom:10px}
  .package-gallery-more{right:9px;bottom:9px}
}

/* ===== Phase 3: live Hotel API integration on TripSutra UI ===== */
.hotel-live-listing-page .hotel-search-summary{position:relative;z-index:30;overflow:visible}
.hotel-live-listing-page .hotel-modify-panel{position:relative;overflow:visible}
.hotel-live-city-field,.hotel-live-guest-field{position:relative;min-width:0}
.hotel-live-city-field .ts-autocomplete{top:calc(100% + 6px);left:0;right:0;z-index:220;background:#fff;border:1px solid #e3e7ed;border-radius:10px;box-shadow:0 16px 34px rgba(17,24,47,.16);max-height:280px;overflow:auto;color:var(--navy)}
.hotel-live-city-option{display:flex!important;align-items:center;gap:10px;text-align:left!important;width:100%;padding:11px 12px!important;background:#fff!important;color:var(--navy)!important;border:0!important;border-bottom:1px solid #eef1f4!important}
.hotel-live-city-option:last-child{border-bottom:0!important}.hotel-live-city-option:hover,.hotel-live-city-option.active{background:#fff2f3!important;color:var(--navy)!important}
.hotel-live-city-option>i{color:var(--red);width:18px;text-align:center}.hotel-live-city-option span{display:flex;flex-direction:column;gap:2px;min-width:0}.hotel-live-city-option strong{font-size:14px;color:var(--navy);white-space:normal}.hotel-live-city-option small{font-size:12px;color:#697386;white-space:normal}
.hotel-live-guest-field>span{display:block;font-size:11px;font-weight:700;color:rgba(255,255,255,.85);margin-bottom:6px}
.hotel-live-guests-btn{height:44px;width:100%;border:1px solid rgba(255,255,255,.35);background:rgba(255,255,255,.12);border-radius:8px;color:#fff;text-align:left;padding:0 12px;font-weight:600;display:flex;align-items:center;justify-content:space-between}
.hotel-rooms-editor{position:absolute;top:72px;right:0;width:min(620px,92vw);background:#fff;color:var(--navy);border:1px solid #e2e6ec;border-radius:14px;box-shadow:0 20px 45px rgba(17,24,47,.18);padding:14px;z-index:240}
.hotel-rooms-editor-head,.hotel-rooms-editor-actions{display:flex;align-items:center;justify-content:space-between;gap:10px}.hotel-rooms-editor-head{padding-bottom:10px;border-bottom:1px solid #edf0f4}.hotel-rooms-editor-head strong{font-size:17px}.hotel-rooms-editor-head button{border:0;background:#f4f6f9;border-radius:50%;width:34px;height:34px}.hotel-rooms-editor-actions{padding-top:12px;border-top:1px solid #edf0f4;margin-top:12px}.hotel-rooms-editor-actions>button:first-child{border:0;background:#fff0f1;color:var(--red);font-weight:800;border-radius:8px;padding:10px 12px}
.hotel-room-editor-row{position:relative;display:grid;grid-template-columns:90px 90px 90px minmax(0,1fr) 34px;gap:10px;align-items:end;padding:12px 0;border-bottom:1px solid #f0f2f5}.hotel-room-editor-row:last-child{border-bottom:0}.hotel-room-editor-row>strong{align-self:center}.hotel-room-editor-row label{color:#596476!important;font-size:11px!important}.hotel-room-editor-row select{height:38px;width:100%;border:1px solid #dfe4eb;border-radius:7px;background:#fff;color:var(--navy);padding:0 8px}.hotel-child-ages{display:flex;gap:7px;flex-wrap:wrap}.hotel-child-ages label{min-width:84px}.hotel-remove-room{width:34px;height:34px;border:0;border-radius:7px;background:#fff0f1;color:var(--red)}
.hotel-search-inline-message{grid-column:1/-1;background:#fff;color:#b4232b;border-radius:8px;padding:9px 11px;font-size:13px}.hotel-search-inline-message.success{color:#147b43}.hotel-filter-backdrop{display:none}
.hotel-live-status{background:#fff;border:1px dashed #d9dee6;border-radius:10px;padding:17px;color:#5f6979;margin:0 0 13px}.hotel-live-status[hidden]{display:none!important}.hotel-live-spinner{display:inline-block;width:18px;height:18px;border:2px solid #e6e8ed;border-top-color:var(--red);border-radius:50%;animation:hotelSpin .8s linear infinite;vertical-align:-4px;margin-right:8px}@keyframes hotelSpin{to{transform:rotate(360deg)}}
.hotel-filter-empty{padding:22px 6px;color:#7a8392;font-size:13px;text-align:center}.hotel-price-range{width:100%;accent-color:var(--red)}.hotel-range-values{display:flex;align-items:center;justify-content:space-between;font-size:11px;color:#727c8b;margin-top:6px}.hotel-range-values strong{color:var(--navy)}
#hotel-live-filters fieldset label small{margin-left:auto;color:#9aa2ad}.hotel-live-card .hotel-result-image img{width:100%;height:100%;object-fit:cover}.hotel-live-property-meta{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}.hotel-live-property-meta span{font-size:11px;background:#f5f7fa;color:#606a79;border-radius:99px;padding:5px 8px}
.hotel-live-card .hotel-result-price small{margin-top:auto}.hotel-live-card .hotel-result-price em{margin-top:4px}.hotel-live-card .hotel-choose-room{text-decoration:none;display:inline-flex;align-items:center;justify-content:center;min-width:112px}.hotel-live-card .hotel-stars i{font-size:11px;margin-right:2px}.hotel-live-card .hotel-stars .fa-regular{color:#d8dce3}.hotel-live-card .hotel-rating-box{align-self:flex-start}.hotel-live-card .hotel-rating-box span{font-weight:700}.hotel-live-card .hotel-amenity-line{margin-top:15px}.hotel-live-card .hotel-amenity-line span{display:inline-flex;align-items:center;gap:5px}

.hotel-live-detail .hotel-detail-loading,.hotel-live-detail .hotel-detail-error{min-height:320px;background:#fff;border:1px solid #e4e8ee;border-radius:14px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:12px;text-align:center;color:#5f6979}.hotel-live-detail .hotel-detail-error i{font-size:34px;color:var(--red)}.hotel-live-detail .hotel-detail-error h2{margin:0;color:var(--navy)}.hotel-live-detail .hotel-detail-error p{max-width:620px;margin:0 0 8px}.hotel-live-detail .hotel-detail-error[hidden],.hotel-live-detail #hotel-detail-shell[hidden],.hotel-live-detail #hotel-detail-content-shell[hidden]{display:none!important}
.hotel-live-detail .hotel-gallery-main img{cursor:zoom-in}.hotel-live-detail .hotel-gallery-side{align-content:stretch}.hotel-live-detail .hotel-gallery-thumb{cursor:pointer}.hotel-live-detail .hotel-gallery-rate .primary-action{text-decoration:none;justify-content:center;background:var(--red);color:#fff;border-radius:8px;padding:0 16px;font-weight:800}.hotel-live-detail .hotel-stars i{font-size:13px;margin-right:2px;color:#f5aa00}.hotel-live-detail .hotel-stars .fa-regular{color:#d6dbe3}.hotel-live-overview-block{margin-top:18px}.hotel-live-overview-block h3{font-size:17px;margin:0 0 8px;color:var(--navy)}.hotel-live-overview-block p,.hotel-live-overview-block li{font-size:14px;line-height:1.65;color:#5d6879}.hotel-live-room-card{grid-template-columns:minmax(0,1fr) 340px}.hotel-live-room-options{grid-column:auto!important;border-top:0!important;border-left:1px solid #edf0f3!important;grid-template-columns:1fr!important}.hotel-live-room-options>div{min-height:210px}.hotel-room-policy-label{align-self:flex-start;background:#eef8f2;color:#147b43;border-radius:99px;padding:5px 8px;font-size:11px;font-weight:700}.hotel-live-room-card .room-facts{display:grid;gap:8px;font-size:12px}.hotel-live-room-card .room-facts span{line-height:1.5}.hotel-live-room-card .check-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px 18px;margin-top:14px}.hotel-live-room-card .check-list li{font-size:13px}.hotel-room-empty-copy{color:#6a7483;font-size:13px}.hotel-live-room-options .choose-room-demo.selected{background:#168348}
.hotel-live-detail .amenity-category-grid span{display:flex;align-items:center;gap:7px}.hotel-live-detail .amenity-category-grid span:before{display:none}.hotel-live-detail .amenity-category-grid span i{color:var(--red);width:17px;text-align:center}.hotel-location-panel{border:1px solid #e6e9ee;background:linear-gradient(135deg,#f8fbff,#fff7f7);border-radius:14px;padding:22px}.hotel-live-address-card{display:flex;align-items:flex-start;gap:13px}.hotel-live-address-card>i{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:#fff0f1;color:var(--red);font-size:17px}.hotel-live-address-card div{display:flex;flex-direction:column;gap:4px}.hotel-live-address-card strong{font-size:16px}.hotel-live-address-card span{color:#667181;line-height:1.5}.hotel-live-review-summary{display:flex;align-items:center;gap:15px}.hotel-live-review-summary strong{font-size:36px;color:#168348}.hotel-live-review-summary span{font-weight:800}.hotel-live-review-summary small{color:#6c7685}
.hotel-image-lightbox{position:fixed;inset:0;z-index:500;background:rgba(7,12,25,.94);display:grid;place-items:center;padding:54px 80px}.hotel-image-lightbox[hidden]{display:none!important}.hotel-image-lightbox img{max-width:min(1200px,88vw);max-height:82vh;object-fit:contain;border-radius:10px}.hotel-image-lightbox>button{position:absolute;border:0;background:rgba(255,255,255,.14);color:#fff;width:46px;height:46px;border-radius:50%;font-size:18px}.hotel-image-lightbox-close{right:24px;top:22px}.hotel-image-lightbox-prev{left:25px;top:50%}.hotel-image-lightbox-next{right:25px;top:50%}.hotel-image-lightbox>span{position:absolute;bottom:18px;color:#fff;background:rgba(0,0,0,.35);border-radius:99px;padding:7px 12px}

@media(max-width:1100px){.hotel-room-editor-row{grid-template-columns:70px 80px 80px minmax(0,1fr) 34px}.hotel-live-room-card{grid-template-columns:minmax(0,1fr) 290px}}
@media(max-width:800px){.hotel-filter-backdrop{position:fixed;inset:0;background:rgba(17,24,47,.38);z-index:155}.hotel-filter-backdrop.open{display:block}.hotel-live-listing-page .hotel-filter-sidebar{z-index:170}.hotel-rooms-editor{position:fixed;left:4vw;right:4vw;top:12vh;width:92vw;max-height:76vh;overflow:auto}.hotel-room-editor-row{grid-template-columns:1fr 1fr 1fr}.hotel-room-editor-row>strong{grid-column:1/-1}.hotel-child-ages{grid-column:1/-1}.hotel-remove-room{position:absolute;right:0;top:10px}.hotel-live-room-card{grid-template-columns:1fr}.hotel-live-room-options{border-left:0!important;border-top:1px solid #edf0f3!important}.hotel-image-lightbox{padding:55px 48px}.hotel-live-detail .hotel-gallery-rate{padding:14px 8px}.hotel-live-detail .hotel-gallery-rate small{margin-top:2px}}
@media(max-width:600px){.hotel-live-listing-page .hotel-summary-grid{gap:4px}.hotel-live-listing-page .hotel-summary-grid>button:not(.modify-search-btn){padding:8px 2px}.hotel-live-listing-page .hotel-summary-grid strong{font-size:14px}.hotel-live-listing-page .hotel-modify-panel{padding-left:12px;padding-right:12px}.hotel-live-city-field .ts-autocomplete{position:absolute;max-height:240px}.hotel-room-editor-row{grid-template-columns:1fr 1fr}.hotel-room-editor-row>strong,.hotel-child-ages{grid-column:1/-1}.hotel-live-card .hotel-result-content{padding:14px}.hotel-live-card .hotel-title-line{display:block}.hotel-live-card .hotel-rating-box{text-align:left;margin-top:8px}.hotel-live-card .hotel-result-price{display:grid;grid-template-columns:1fr auto;gap:4px 12px;align-items:center}.hotel-live-card .hotel-result-price small,.hotel-live-card .hotel-result-price em{display:block;margin:0}.hotel-live-card .hotel-result-price strong{grid-row:1;grid-column:1}.hotel-live-card .hotel-choose-room{grid-row:1/4;grid-column:2}.hotel-live-room-card .check-list{grid-template-columns:1fr}.hotel-image-lightbox{padding:50px 18px}.hotel-image-lightbox-prev{left:8px}.hotel-image-lightbox-next{right:8px}.hotel-live-review-summary{align-items:flex-start;flex-direction:column;gap:4px}}

/* Phase 3.1 — hotel UX hardening */
.hotel-sort{display:inline-flex;align-items:center;gap:7px;font-weight:600;white-space:nowrap;cursor:pointer}.hotel-sort i{font-size:11px;color:#9aa3b2}.hotel-sort.active i{color:var(--red)}
.hotel-live-card .hotel-result-image{background:#f4f6f8;overflow:hidden}.hotel-live-card .hotel-result-image img.hotel-image-fallback{object-fit:contain;padding:24px;background:#f6f7f9}
.hotel-live-card .hotel-amenity-line{gap:8px 12px}.hotel-live-card .hotel-amenity-line span{max-width:220px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;background:#f8fafc;border:1px solid #edf0f4;border-radius:999px;padding:6px 9px}.hotel-live-card .hotel-amenity-line span i{flex:0 0 auto}
.hotel-detail-title-row{align-items:flex-start}.hotel-detail-title-main{min-width:0;flex:1}.hotel-detail-title-price{flex:0 0 250px;text-align:right;display:flex;flex-direction:column;align-items:flex-end;padding-top:5px}.hotel-detail-title-price>span{font-size:12px;color:#737d8d}.hotel-detail-title-price>strong{font-size:32px;line-height:1.05;color:var(--navy);margin-top:5px}.hotel-detail-title-price>small{font-size:12px;color:#6d7685;margin-top:5px}.hotel-detail-title-price>em{font-style:normal;font-size:11px;color:#7b8492;margin-top:4px}.hotel-inline-link{appearance:none;border:0;background:transparent;color:#1f68c9;font:inherit;font-weight:700;padding:0;cursor:pointer}
.hotel-live-detail .hotel-gallery{grid-template-columns:minmax(0,2fr) minmax(280px,.95fr);gap:9px;padding:9px;overflow:hidden}.hotel-live-detail .hotel-gallery.hotel-gallery-single{grid-template-columns:1fr}.hotel-live-detail .hotel-gallery-main{position:relative;height:390px;padding:0;border:0;background:#f4f6f8;border-radius:10px;overflow:hidden;cursor:zoom-in}.hotel-live-detail .hotel-gallery-main img{width:100%;height:100%;object-fit:cover;border-radius:0}.hotel-gallery-view-all{position:absolute;right:14px;bottom:14px;background:rgba(17,24,47,.88);color:#fff;border:1px solid rgba(255,255,255,.5);border-radius:999px;padding:9px 13px;font-size:12px;font-weight:800;display:inline-flex;gap:7px;align-items:center;box-shadow:0 4px 16px rgba(0,0,0,.16)}
.hotel-live-detail .hotel-gallery-side{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:9px;min-height:390px}.hotel-live-detail .hotel-gallery-single .hotel-gallery-side{display:none}.hotel-live-detail .hotel-gallery-thumb{position:relative;height:100%;min-height:0;border:0;border-radius:9px;overflow:hidden;padding:0;background:#f4f6f8;cursor:zoom-in}.hotel-live-detail .hotel-gallery-thumb img{width:100%;height:100%;object-fit:cover}.hotel-live-detail .hotel-gallery-thumb>span{position:absolute;inset:0;display:grid;place-items:center;background:rgba(17,24,47,.58);color:#fff;font-size:16px;font-weight:900}.hotel-live-detail .hotel-gallery img.hotel-image-fallback{object-fit:contain!important;padding:18px;background:#f6f7f9}
.hotel-cancellation-link{margin-top:4px;border:0;background:transparent;color:#1e64bd;font-size:13px;font-weight:800;padding:5px 0;display:inline-flex;align-items:center;gap:7px;cursor:pointer}.hotel-cancellation-link:hover{text-decoration:underline}.hotel-live-room-card .room-facts{font-size:13px}.hotel-live-room-card .room-facts span{display:flex;align-items:flex-start;gap:6px}.hotel-live-room-card .room-facts i{margin-top:2px}
.hotel-policy-modal{position:fixed;inset:0;z-index:560;display:grid;place-items:center;padding:20px}.hotel-policy-modal[hidden]{display:none!important}.hotel-policy-backdrop{position:absolute;inset:0;background:rgba(9,15,30,.58)}.hotel-policy-dialog{position:relative;z-index:1;width:min(660px,calc(100vw - 30px));max-height:min(76vh,650px);overflow:auto;background:#fff;border-radius:16px;box-shadow:0 28px 70px rgba(17,24,47,.28);padding:24px}.hotel-policy-dialog h2{margin:0 46px 4px 0;font-size:24px}.hotel-policy-room-name{margin:0 0 18px;color:#687282}.hotel-policy-close{position:absolute;right:16px;top:16px;width:38px;height:38px;border:0;border-radius:50%;background:#f4f6f8;color:var(--navy);cursor:pointer}.hotel-policy-table-wrap{overflow:auto;border:1px solid #e5e9ef;border-radius:11px}.hotel-policy-table-wrap table{width:100%;border-collapse:collapse;min-width:520px}.hotel-policy-table-wrap th,.hotel-policy-table-wrap td{padding:12px;text-align:left;border-bottom:1px solid #edf0f4;font-size:13px}.hotel-policy-table-wrap th{background:#f7f8fa;color:#4a5565}.hotel-policy-table-wrap tr:last-child td{border-bottom:0}.hotel-policy-empty{color:#6a7483}
.hotel-policy-list{display:grid;gap:9px}.hotel-policy-list>div{display:flex;gap:10px;align-items:flex-start;border:1px solid #edf0f4;border-radius:10px;padding:12px}.hotel-policy-list i{color:var(--red);margin-top:2px}.hotel-policy-list span{display:flex;flex-direction:column;gap:3px}.hotel-policy-list strong{font-size:13px}.hotel-policy-list small{font-size:12px;color:#6c7685}
.hotel-nearby-empty{grid-column:1/-1}.hotel-nearby-item{display:flex;gap:9px;align-items:flex-start;background:#f7f8fa;border:1px solid #edf0f4;border-radius:10px;padding:11px}.hotel-nearby-item>i{color:var(--red);margin-top:2px}.hotel-nearby-item>span{display:flex;flex-direction:column;gap:2px;min-width:0}.hotel-nearby-item strong{font-size:13px;color:var(--navy)}.hotel-nearby-item small{font-size:12px;color:#687282}.hotel-nearby-item em{font-size:11px;font-style:normal;color:#8a93a1}.nearby-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.hotel-image-lightbox{display:flex;align-items:center;justify-content:center}.hotel-image-lightbox-stage{display:flex;flex-direction:column;align-items:center;gap:12px;width:min(1200px,88vw);max-width:88vw;max-height:88vh;margin:auto}.hotel-image-lightbox-stage>img{display:block;margin-inline:auto}.hotel-image-lightbox-stage>img{max-width:min(1200px,88vw);max-height:70vh;object-fit:contain;border-radius:10px}.hotel-image-lightbox-stage>span{color:#fff;background:rgba(0,0,0,.42);border-radius:999px;padding:6px 11px;font-size:12px}.hotel-lightbox-thumbs{display:flex;gap:7px;max-width:min(1100px,82vw);overflow:auto;padding:4px;scrollbar-width:thin}.hotel-lightbox-thumbs button{flex:0 0 72px;height:52px;border:2px solid transparent;border-radius:7px;padding:0;overflow:hidden;background:#1b2233}.hotel-lightbox-thumbs button.active{border-color:var(--red)}.hotel-lightbox-thumbs img{width:100%;height:100%;object-fit:cover}.hotel-lightbox-thumbs img.hotel-image-fallback{object-fit:contain;background:#fff;padding:5px}
/* The old gallery selector positioned all lightbox buttons absolutely. Reset thumbnail buttons. */
.hotel-image-lightbox .hotel-lightbox-thumbs button{position:static;width:auto;font-size:inherit}

/* New TripSutra hotel booking handoff */
.hotel-booking-new{min-height:70vh}.hotel-booking-new .hotel-booking-empty{text-align:center}.hotel-booking-back{display:inline-flex;align-items:center;text-decoration:none;margin-top:14px}.hotel-booking-selected{display:grid;grid-template-columns:220px minmax(0,1fr);gap:18px;margin-top:22px;border-top:1px solid #edf0f4;padding-top:18px}.hotel-booking-selected>img{width:100%;height:170px;object-fit:cover;border-radius:11px;background:#f5f6f8}.hotel-booking-selected>img.hotel-image-fallback{object-fit:contain;padding:20px}.hotel-booking-selected h2{font-size:24px;margin:0 0 4px}.hotel-booking-selected p{color:#647081}.hotel-booking-facts{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:16px}.hotel-booking-facts span{border:1px solid #e7eaf0;border-radius:9px;padding:10px}.hotel-booking-facts small,.hotel-booking-facts strong{display:block}.hotel-booking-facts small{font-size:11px;color:#768090}.hotel-booking-facts strong{font-size:13px;margin-top:3px}.hotel-booking-room{margin-top:14px;border:1px solid #e6e9ef;border-radius:11px;padding:15px}.hotel-booking-room>span{font-size:11px;color:var(--red);font-weight:800;text-transform:uppercase}.hotel-booking-room h3{margin:5px 0 3px}.hotel-booking-room p{margin:0;color:#687282}.hotel-booking-guest-room{border:1px solid #e7eaf0;border-radius:11px;padding:15px;margin:12px 0}.hotel-booking-guest-room h3{margin:0 0 12px}.hotel-guest-row{grid-template-columns:110px 1fr 1fr;margin:10px 0}.hotel-booking-price-card{position:sticky;top:105px}.hotel-booking-price-card hr{border:0;border-top:1px solid #edf0f4}.hotel-booking-price-card>small{display:block;margin-top:10px;color:#758090}.input-error{border-color:var(--red)!important;background:#fff7f7!important}

@media(max-width:1100px){.hotel-detail-title-price{flex-basis:220px}.hotel-live-detail .hotel-gallery{grid-template-columns:1.55fr .85fr}.nearby-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hotel-booking-facts{grid-template-columns:1fr 1fr}}
@media(max-width:800px){.hotel-detail-title-row{gap:12px}.hotel-detail-title-price{flex-basis:190px}.hotel-live-detail .hotel-gallery{grid-template-columns:1fr}.hotel-live-detail .hotel-gallery-main{height:320px}.hotel-live-detail .hotel-gallery-side{min-height:180px;grid-template-columns:repeat(4,1fr);grid-template-rows:1fr}.hotel-gallery-view-all{right:10px;bottom:10px}.hotel-image-lightbox{padding:50px 40px}.hotel-image-lightbox-stage>img{max-height:68vh}.hotel-booking-new .booking-flow-grid{grid-template-columns:1fr}.hotel-booking-price-card{position:static}.hotel-booking-selected{grid-template-columns:180px 1fr}.hotel-guest-row{grid-template-columns:100px 1fr 1fr}}
@media(max-width:600px){.hotel-detail-title-row{display:grid;grid-template-columns:1fr}.hotel-detail-title-price{align-items:flex-start;text-align:left;flex-basis:auto}.hotel-detail-title-price>strong{font-size:28px}.hotel-live-detail .hotel-gallery-main{height:260px}.hotel-live-detail .hotel-gallery-side{grid-template-columns:1fr 1fr;grid-template-rows:repeat(2,105px);min-height:0}.nearby-grid{grid-template-columns:1fr}.hotel-policy-dialog{padding:20px 16px}.hotel-image-lightbox{padding:54px 14px}.hotel-lightbox-thumbs{max-width:88vw}.hotel-booking-selected{grid-template-columns:1fr}.hotel-booking-selected>img{height:210px}.hotel-booking-facts{grid-template-columns:1fr 1fr}.hotel-guest-row{grid-template-columns:1fr}.hotel-booking-stepper{overflow:auto}.hotel-booking-stepper span{min-width:130px}}

/* ===== Phase 4: live Flights — One Way / Round Trip / Multi City ===== */
.home-multicity-search{padding:14px 18px 18px;border-top:1px solid #eef0f4;background:rgba(255,255,255,.96)}
.home-multicity-search[hidden]{display:none!important}
.home-multicity-search .home-multicity-rows{display:flex;flex-direction:column;gap:10px}
.home-multi-row{display:grid;grid-template-columns:38px minmax(180px,1fr) minmax(180px,1fr) minmax(150px,.75fr) 38px;gap:10px;align-items:stretch}
.home-multi-number{display:grid;place-items:center;width:34px;height:34px;align-self:center;border-radius:50%;background:#fff0f1;color:var(--red);font-size:12px;font-weight:900;border:1px solid #ffd5d8}
.home-multi-row .search-field{min-width:0;position:relative;background:#fff;border:1px solid #dfe3e8;border-radius:8px;padding:9px 12px;min-height:72px}
.home-multi-row .search-field input{width:100%;border:0!important;outline:0;background:transparent!important;color:var(--navy)!important;font-size:15px;font-weight:800;padding:4px 0!important;height:auto!important}
.home-multi-row .search-field small{display:block;min-height:15px;color:#657084;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.home-multi-row .ts-autocomplete{top:calc(100% + 4px);left:0;right:0;z-index:310}
.home-remove-flight-segment{align-self:center;width:34px;height:34px;border:0;border-radius:50%;background:#fff0f1;color:var(--red);cursor:pointer}
.home-remove-flight-segment:disabled{opacity:.3;cursor:not-allowed}
.home-multicity-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px}
.home-multicity-actions>div{display:flex;align-items:center;gap:10px}
.home-multicity-actions .secondary-action,.home-multicity-actions .primary-action{min-height:44px}

.flight-results-main{position:relative;z-index:1}
.flight-modify-panel{position:relative;overflow:visible}
.flight-modify-panel.open{display:block}
.flight-modify-trip-row{display:grid;grid-template-columns:1.35fr repeat(4,minmax(90px,.65fr));gap:10px;margin-bottom:10px}
.flight-modify-trip-row label,.flight-modify-single label{min-width:0}
.flight-modify-single{display:grid;grid-template-columns:minmax(190px,1.25fr) minmax(190px,1.25fr) minmax(145px,.8fr) minmax(145px,.8fr);gap:10px}
.flight-modify-single[hidden]{display:none!important}
.flight-auto-field{position:relative;overflow:visible}
.flight-auto-field .ts-autocomplete{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:340;max-height:285px;overflow:auto;background:#fff;color:var(--navy);border:1px solid #dfe4eb;border-radius:10px;box-shadow:0 18px 38px rgba(17,24,47,.18)}
.flight-auto-field .ts-autocomplete-item{display:flex;align-items:flex-start;gap:10px;width:100%;border:0;border-bottom:1px solid #eef1f4;background:#fff;color:var(--navy);padding:10px 11px;text-align:left;cursor:pointer}
.flight-auto-field .ts-autocomplete-item:last-child{border-bottom:0}
.flight-auto-field .ts-autocomplete-item:hover,.flight-auto-field .ts-autocomplete-item.active{background:#fff2f3}
.flight-auto-field .ts-autocomplete-item i{color:var(--red);margin-top:2px}
.flight-auto-field .ts-autocomplete-item span{display:flex;flex-direction:column;gap:2px;color:var(--navy)!important;font-size:13px!important}
.flight-auto-field .ts-autocomplete-item strong{color:var(--navy);font-size:13px}
.flight-auto-field .ts-autocomplete-item small{color:#697386!important;font-size:11px}
.flight-auto-field>small{display:block;min-height:14px;color:rgba(255,255,255,.75);font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.flight-multicity-editor{margin-top:10px}
.flight-multicity-editor[hidden]{display:none!important}
#flight-multicity-rows{display:flex;flex-direction:column;gap:9px}
.flight-multi-editor-row{display:grid;grid-template-columns:34px minmax(170px,1fr) minmax(170px,1fr) minmax(145px,.7fr) 36px;gap:9px;align-items:stretch}
.flight-multi-editor-row .flight-auto-field,.flight-multi-editor-row>label{position:relative;display:flex;flex-direction:column;gap:5px;min-width:0}
.flight-multi-editor-row input{width:100%}
.flight-multi-editor-row .home-multi-number{align-self:center}
.flight-multi-editor-row button[data-fl-remove-segment]{align-self:center;width:34px;height:34px;border:0;border-radius:50%;background:rgba(255,255,255,.16);color:#fff;cursor:pointer}
.flight-multi-editor-row button[data-fl-remove-segment]:disabled{opacity:.3}
.flight-add-segment{margin-top:10px;border-color:rgba(255,255,255,.45)!important;color:#fff!important;background:rgba(255,255,255,.12)!important}
.flight-multicity-editor>small{display:inline-block;margin-left:10px;color:rgba(255,255,255,.72)}
.flight-modify-actions{justify-content:flex-end;margin-top:11px}

.flight-live-status,.flight-live-error{background:#fff;border:1px solid #e3e7ed;border-radius:10px;padding:18px 20px;margin-bottom:16px;box-shadow:0 3px 10px rgba(17,24,47,.04)}
.flight-live-status{display:grid;grid-template-columns:26px auto;column-gap:10px;align-items:center}
.flight-live-status strong{font-size:14px}.flight-live-status small{grid-column:2;color:#6c7584;font-size:12px;margin-top:2px}
.flight-live-spinner{display:inline-block;width:20px;height:20px;border:2px solid #e4e8ed;border-top-color:var(--red);border-radius:50%;animation:phase4FlightSpin .8s linear infinite}
@keyframes phase4FlightSpin{to{transform:rotate(360deg)}}
.flight-live-error{display:flex;align-items:center;gap:13px}.flight-live-error[hidden],.flight-live-status[hidden]{display:none!important}.flight-live-error>i{font-size:24px;color:var(--red)}.flight-live-error>div{flex:1}.flight-live-error h3,.flight-live-error p{margin:0}.flight-live-error p{color:#667085;margin-top:3px}
.flight-live-logo{width:38px;height:38px;border-radius:7px;object-fit:contain;background:#fff;border:1px solid #edf0f4;padding:3px;flex:0 0 auto}
.flight-card-meta{display:flex;gap:16px;flex-wrap:wrap;padding:8px 18px 10px;border-top:1px solid #f0f2f5;background:#fbfcfd;color:#667085;font-size:11px}
.flight-card-meta:empty{display:none}.flight-card-meta span{display:inline-flex;align-items:center;gap:5px}.flight-card-meta i{color:var(--red)}
.live-flight-card{cursor:default}.flight-roundtrip-layout .live-flight-card{cursor:pointer}
.live-flight-card.selected{box-shadow:0 0 0 2px #1682dc inset,0 5px 15px rgba(22,130,220,.10)}

/* Normalize the live airline lowest-fare row into real equal-height controls. */
.airline-lowest-strip{border:1px solid #dfe3e8!important;background:#fff!important;align-items:stretch!important;padding:0!important;gap:0!important}
.airline-lowest-item{appearance:none!important;-webkit-appearance:none!important;border:0!important;border-right:1px solid #dfe3e8!important;border-radius:0!important;background:#fff!important;color:var(--navy)!important;min-height:72px!important;flex:1 0 190px!important;padding:10px 16px!important;display:flex!important;align-items:center!important;gap:10px!important;text-align:left!important;cursor:pointer!important;box-shadow:none!important;font:inherit!important}
.airline-lowest-item:last-child{border-right:0!important}
.airline-lowest-item:hover{background:#f8fafc!important}
.airline-lowest-item.active{background:#fff5f6!important;box-shadow:inset 0 3px 0 var(--red)!important}
.airline-lowest-item.airline-lowest-all{justify-content:flex-start;font-weight:900}
.airline-lowest-copy{display:flex;flex-direction:column;gap:2px;min-width:0}.airline-lowest-copy>span{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.airline-lowest-copy strong{font-size:14px;color:var(--navy)}

.flight-date-item{appearance:none;font:inherit;color:var(--navy)}
.flight-date-item strong{margin-top:3px}
.flight-sort-bar button{display:flex;align-items:center;justify-content:center;gap:5px;color:#404b5a;font-weight:700}.flight-sort-bar button i{font-size:9px}
.flight-active-filters>span{display:inline-flex;align-items:center;background:#fff0f1;color:#b4232b;border:1px solid #ffdadd;border-radius:999px;padding:6px 9px;font-size:11px;font-weight:700}

/* Keep duration exactly centered between departure and arrival on live cards. */
.live-flight-card .flight-card-main{grid-template-columns:190px minmax(150px,1fr) 150px minmax(150px,1fr) 150px;column-gap:16px}
.live-flight-card .flight-duration{justify-self:stretch;text-align:center;align-self:center;min-width:0;padding:0 6px}
.live-flight-card .flight-duration>span{display:block;white-space:nowrap;font-size:12px}
.live-flight-card .flight-duration .duration-line{width:100%;margin:7px auto}
.live-flight-card .flight-city-arrive{text-align:left}
.live-flight-card .flight-price{justify-self:end;min-width:120px}

.flight-itinerary-card{overflow:hidden}
.flight-itinerary-head{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:15px 18px;background:#fbfcfd;border-bottom:1px solid #e7eaee}
.flight-itinerary-head>div{display:flex;align-items:center;gap:10px}.flight-itinerary-head>div:first-child span{display:flex;flex-direction:column;gap:2px}.flight-itinerary-head>div:first-child small{color:#687282;font-size:11px}.flight-itinerary-head>div:last-child{margin-left:auto}.flight-itinerary-head>div:last-child>strong{font-size:21px;white-space:nowrap}.flight-itinerary-head .view-fares-btn{margin:0 0 0 8px}
.flight-itinerary-leg{display:grid;grid-template-columns:90px minmax(150px,1fr) 140px minmax(150px,1fr) minmax(130px,.8fr);gap:14px;align-items:center;padding:15px 18px;border-bottom:1px solid #eef1f4}.flight-itinerary-leg:last-child{border-bottom:0}.flight-itinerary-label{display:inline-flex;align-items:center;justify-content:center;width:max-content;min-width:72px;border-radius:999px;background:#fff0f1;color:var(--red);font-size:11px;font-weight:900;padding:7px 9px}.flight-itinerary-leg>div:not(.flight-itinerary-label):not(.flight-duration):not(.flight-itinerary-airline){display:flex;flex-direction:column;gap:2px}.flight-itinerary-leg>div>strong{font-size:13px}.flight-itinerary-leg>div>b{font-size:20px}.flight-itinerary-leg>div>small{font-size:11px;color:#6b7482}.flight-itinerary-airline{display:flex;flex-direction:column;align-items:flex-end;text-align:right;font-weight:800}.flight-itinerary-airline small{font-size:11px;color:#697281;margin-top:3px}

.flight-live-fare-modal{max-height:90vh;overflow:auto}
.flight-live-fare-content{padding:18px 26px;display:flex;flex-direction:column;gap:14px}
.flight-fare-loading{display:flex;align-items:center;gap:9px;min-height:120px;justify-content:center;color:#667085}
.flight-rule-option{border:1px solid #e1e5ea;border-radius:12px;overflow:hidden;background:#fff}
.flight-rule-option-head{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 16px;border-bottom:1px solid #edf0f4;background:#fbfcfd}.flight-rule-option-head>div{display:flex;align-items:center;gap:10px}.flight-rule-option-head span{display:flex;flex-direction:column;gap:2px}.flight-rule-option-head small{font-size:11px;color:#6c7584}.flight-rule-option-head>strong{font-size:20px;white-space:nowrap}
.flight-live-fare-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:12px 16px}.flight-live-fare-facts span{display:flex;align-items:center;gap:8px;border:1px solid #edf0f4;border-radius:9px;padding:10px;color:#586274}.flight-live-fare-facts i{color:var(--red)}.flight-live-fare-facts b{font-size:12px;color:var(--navy)}
.flight-rule-tabs{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid #edf0f4}.flight-rule-tabs>div{padding:15px 16px;min-width:0}.flight-rule-tabs>div+div{border-left:1px solid #edf0f4}.flight-rule-tabs h4{margin:0 0 9px;font-size:13px}.flight-rule-tabs p{font-size:12px;color:#5e6878;margin:5px 0}.flight-rule-tabs table,.tb-flight-rule-table{width:100%;border-collapse:collapse;font-size:12px}.flight-rule-tabs th,.flight-rule-tabs td,.tb-flight-rule-table th,.tb-flight-rule-table td{padding:7px;border:1px solid #e6e9ee;text-align:left}.flight-rule-tabs th,.tb-flight-rule-table th{background:#f7f8fa}

.flight-booking-itinerary{border:1px solid #e3e7ed;border-radius:12px;overflow:hidden;margin-bottom:12px;background:#fff}.flight-booking-itinerary>h3{margin:0;padding:12px 15px;background:#f8fafc;border-bottom:1px solid #e8ebef;font-size:15px}.selected-flight-summary .flight-card{box-shadow:none;margin:0 0 12px}.flight-traveller-block{border:1px solid #e5e9ef;border-radius:11px;padding:15px;margin:12px 0}.flight-traveller-block h3{margin:0 0 12px;font-size:16px}

@media(max-width:1100px){
  .home-multi-row{grid-template-columns:34px 1fr 1fr 160px 34px}
  .flight-modify-trip-row{grid-template-columns:1.2fr repeat(4,.7fr)}
  .flight-modify-single{grid-template-columns:1fr 1fr .8fr .8fr}
  .flight-multi-editor-row{grid-template-columns:32px 1fr 1fr 150px 34px}
  .live-flight-card .flight-card-main{grid-template-columns:150px minmax(130px,1fr) 120px minmax(130px,1fr) 125px;gap:12px}
  .flight-itinerary-leg{grid-template-columns:78px 1fr 115px 1fr 110px;gap:10px}
}
@media(max-width:820px){
  .home-multi-row{grid-template-columns:34px 1fr 1fr;gap:8px}.home-multi-row .search-field:nth-of-type(3){grid-column:2/4}.home-remove-flight-segment{grid-column:1;grid-row:2;justify-self:center}.home-multicity-actions{align-items:stretch}.home-multicity-actions>div{flex:1;justify-content:flex-end}
  .flight-modify-trip-row{grid-template-columns:repeat(3,1fr)}.flight-modify-trip-row label:first-child{grid-column:1/2}.flight-modify-single{grid-template-columns:1fr 1fr}.flight-multi-editor-row{grid-template-columns:32px 1fr 1fr}.flight-multi-editor-row>label:nth-of-type(3){grid-column:2/4}.flight-multi-editor-row button[data-fl-remove-segment]{grid-column:1;grid-row:2}.flight-modify-actions{grid-column:auto}
  .flight-itinerary-head{align-items:flex-start}.flight-itinerary-head>div:last-child{flex-direction:column;align-items:flex-end}.flight-itinerary-head .view-fares-btn{margin:6px 0 0}.flight-itinerary-leg{grid-template-columns:70px 1fr 100px 1fr}.flight-itinerary-airline{grid-column:2/5;align-items:flex-start;text-align:left;border-top:1px dashed #e6e9ee;padding-top:8px}
  .flight-live-fare-facts{grid-template-columns:1fr 1fr 1fr}.flight-rule-tabs{grid-template-columns:1fr}.flight-rule-tabs>div+div{border-left:0;border-top:1px solid #edf0f4}
}
@media(max-width:600px){
  .home-multicity-search{padding:12px 10px 14px}.home-multi-row{grid-template-columns:28px 1fr}.home-multi-row .search-field,.home-multi-row .search-field:nth-of-type(3){grid-column:2}.home-remove-flight-segment{grid-column:1;grid-row:auto}.home-multicity-actions{flex-direction:column}.home-multicity-actions>div{display:grid;grid-template-columns:1fr 1fr;width:100%}.home-multicity-actions .primary-action{width:100%}
  .flight-modify-trip-row{grid-template-columns:1fr 1fr}.flight-modify-trip-row label:first-child{grid-column:1/-1}.flight-modify-single{grid-template-columns:1fr}.flight-multi-editor-row{grid-template-columns:28px 1fr}.flight-multi-editor-row>label,.flight-multi-editor-row>label:nth-of-type(3){grid-column:2}.flight-multi-editor-row button[data-fl-remove-segment]{grid-column:1;grid-row:auto}.flight-add-segment{width:100%;justify-content:center;margin-left:0}.flight-multicity-editor>small{margin:8px 0 0;display:block}
  .airline-lowest-item{flex-basis:170px!important;min-height:68px!important;padding:9px 12px!important}.flight-live-logo{width:34px;height:34px}.airline-lowest-copy>span{font-size:12px}.airline-lowest-copy strong{font-size:13px}
  .live-flight-card .flight-card-main{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;padding:14px}.live-flight-card .flight-airline{grid-column:1/-1}.live-flight-card .flight-city-depart{grid-column:1}.live-flight-card .flight-city-arrive{grid-column:2}.live-flight-card .flight-duration{grid-column:1/-1;grid-row:auto;order:4;width:72%;justify-self:center;padding:0}.live-flight-card .flight-price{grid-column:1/-1;min-width:0;width:100%;justify-self:stretch;order:5;display:flex;align-items:center;justify-content:space-between;text-align:left;border-top:1px solid #edf0f4;padding-top:10px}.flight-card-meta{padding:8px 14px 10px;gap:8px 12px}
  .flight-itinerary-head{display:grid;grid-template-columns:1fr}.flight-itinerary-head>div:last-child{margin:0;align-items:flex-start}.flight-itinerary-head .view-fares-btn{margin-left:0}.flight-itinerary-leg{grid-template-columns:58px 1fr 1fr;gap:8px;padding:12px}.flight-itinerary-label{grid-column:1/-1}.flight-itinerary-leg .flight-duration{grid-column:1/-1;grid-row:auto;padding:0 32px}.flight-itinerary-airline{grid-column:1/-1;align-items:flex-start}.flight-itinerary-leg>div>b{font-size:18px}
  .flight-live-fare-content{padding:14px}.flight-live-fare-facts{grid-template-columns:1fr}.flight-rule-option-head{align-items:flex-start}.flight-rule-option-head>strong{font-size:18px}.flight-rule-tabs>div{padding:13px}.flight-rule-tabs table,.tb-flight-rule-table{min-width:520px}.flight-rule-tabs>div{overflow:auto}
  .flight-live-error{align-items:flex-start;flex-wrap:wrap}.flight-live-error .primary-action{width:100%}
}

/* Phase 4 visibility + live date-fare strip corrections. */
#flight-oneway-layout[hidden],#flight-roundtrip-layout[hidden],#flight-combined-roundtrip[hidden],#flight-multicity-results[hidden],#roundtrip-sticky[hidden],#flight-date-strip[hidden],#airline-lowest-strip[hidden],#flight-sort-bar[hidden],#flight-empty[hidden]{display:none!important}
.flight-date-strip{display:flex;align-items:stretch;overflow-x:auto;background:#fff;border:1px solid #dfe3e8;border-radius:8px;margin:28px 0 16px;box-shadow:0 3px 9px rgba(17,24,47,.05);scrollbar-width:none}
.flight-date-strip::-webkit-scrollbar{display:none}
.flight-date-item{appearance:none;-webkit-appearance:none;flex:1 0 145px;min-height:66px;border:0;border-right:1px solid #e5e8ed;background:#fff;color:var(--navy);padding:9px 10px;text-align:center;cursor:pointer;font:inherit;display:flex;flex-direction:column;justify-content:center;gap:4px;box-shadow:none}
.flight-date-item:last-child{border-right:0}.flight-date-item:hover{background:#f8fafc}.flight-date-item.active{background:#fff5f6;box-shadow:inset 0 3px 0 var(--red)}.flight-date-item span{display:block;font-size:12px;color:#5d6776;white-space:nowrap}.flight-date-item strong{display:block;font-size:13px;color:var(--navy);white-space:nowrap}.flight-date-item.active strong{color:var(--red)}
@media(max-width:600px){.flight-date-item{flex-basis:122px;min-height:62px;padding:8px}.flight-date-item span{font-size:11px}.flight-date-item strong{font-size:12px}}

/* Phase 4.1 — Flight listing refinement + complete live booking UX */
.flight-city{min-width:0;text-align:left;overflow:hidden}
.flight-city b,.flight-city strong,.flight-city small{max-width:100%;overflow-wrap:anywhere}
.flight-city small{line-height:1.35}
.flight-card-meta{display:flex;align-items:center;justify-content:space-between;gap:12px}
.flight-card-meta-facts{display:flex;align-items:center;gap:8px 16px;flex-wrap:wrap;min-width:0}
.flight-details-link{appearance:none;border:0;background:transparent;color:#1457c7;font:inherit;font-size:12px;font-weight:800;display:inline-flex;align-items:center;gap:6px;cursor:pointer;padding:5px 0;white-space:nowrap;margin-left:auto}
.flight-details-link:hover{color:var(--red)}
.flight-book-now-btn,.flight-itinerary-head .flight-book-now-btn{border:0;background:var(--red);color:#fff;border-radius:8px;min-width:108px;height:40px;padding:0 17px;font:inherit;font-size:13px;font-weight:800;cursor:pointer;margin-left:8px;box-shadow:0 7px 18px rgba(239,32,40,.16)}
.flight-book-now-btn:hover,.flight-itinerary-head .flight-book-now-btn:hover{background:#d91921}
.flight-itinerary-meta{border-top:1px solid #edf0f4;background:#fbfcfd}
.flight-itinerary-head>div:last-child{flex-wrap:wrap;justify-content:flex-end}
.flight-itinerary-head .flight-book-now-btn{margin-top:0}

/* Round-trip columns must fit inside a 50/50 desktop layout without leaking horizontally. */
.flight-roundtrip-layout{min-width:0}
.flight-roundtrip-layout>div{min-width:0}
.flight-roundtrip-layout .compact .flight-card{min-width:0;overflow:hidden}
.flight-roundtrip-layout .compact .flight-card-main{grid-template-columns:minmax(92px,.9fr) minmax(100px,1fr) 78px minmax(100px,1fr) 84px!important;gap:7px!important;padding:13px 12px!important;min-width:0}
.flight-roundtrip-layout .compact .flight-airline{min-width:0;gap:7px}
.flight-roundtrip-layout .compact .flight-live-logo{width:34px;height:34px;flex:0 0 34px}
.flight-roundtrip-layout .compact .flight-airline strong{font-size:12px}
.flight-roundtrip-layout .compact .flight-airline small{font-size:10px;white-space:normal;overflow-wrap:anywhere}
.flight-roundtrip-layout .compact .flight-city b{font-size:12px}
.flight-roundtrip-layout .compact .flight-city strong{font-size:18px}
.flight-roundtrip-layout .compact .flight-city small{font-size:9px;white-space:normal;line-height:1.25}
.flight-roundtrip-layout .compact .flight-city-arrive{text-align:right!important}
.flight-roundtrip-layout .compact .flight-duration{width:100%;padding:0 3px}
.flight-roundtrip-layout .compact .flight-duration span,.flight-roundtrip-layout .compact .flight-duration small{font-size:10px}
.flight-roundtrip-layout .compact .flight-price{min-width:0!important;justify-self:end}
.flight-roundtrip-layout .compact .flight-price strong{font-size:17px}
.flight-roundtrip-layout .compact .flight-card-meta{padding:8px 12px 10px}
.flight-roundtrip-layout .compact .flight-details-link{font-size:11px}
.roundtrip-sticky .round-view-fares{min-width:128px}

/* Home Multi City expands the hero downwards rather than upward over the header/copy. */
@media(min-width:761px){
  .hero-section.home-multicity-active{min-height:0}
  .hero-section.home-multicity-active .hero-content{min-height:0;padding-bottom:30px}
  .hero-section.home-multicity-active .booking-card{position:relative;left:auto;right:auto;bottom:auto;margin-top:105px}
  .hero-section.home-multicity-active+.quick-links-section{position:relative}
}

/* Complete live flight checkout */
.flight-checkout-page{background:#f5f7fa}
.flight-checkout{padding:30px 0 54px;min-height:70vh}
.flight-checkout-expired{max-width:650px;margin:45px auto;background:#fff;border:1px solid #e4e8ee;border-radius:18px;text-align:center;padding:48px 28px}
.flight-checkout-expired>i{font-size:42px;color:var(--red);margin-bottom:14px}.flight-checkout-expired h1{font-size:28px;margin:0 0 7px}.flight-checkout-expired p{color:#657082;margin:0 0 20px}.flight-checkout-expired .primary-action{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 18px;border-radius:9px;background:var(--red);color:#fff;font-weight:800;text-decoration:none}
.flight-checkout-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:18px}.flight-checkout-steps button{appearance:none;border:0;background:#e8ebf0;color:#6a7280;border-radius:9px;min-height:44px;display:flex;align-items:center;justify-content:center;gap:8px;font:inherit;font-weight:800;cursor:pointer}.flight-checkout-steps button b{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:rgba(0,0,0,.06);font-size:11px}.flight-checkout-steps button.active,.flight-checkout-steps button:hover{background:var(--navy);color:#fff}
.flight-checkout-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:20px;align-items:start}.flight-checkout-main{min-width:0}.flight-checkout-sidebar{position:sticky;top:96px}
.checkout-panel,.checkout-price-card{background:#fff;border:1px solid #e1e5eb;border-radius:15px;box-shadow:0 5px 18px rgba(17,24,47,.035)}.checkout-panel{padding:22px;margin-bottom:16px;scroll-margin-top:100px}.checkout-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:17px}.checkout-panel-head span{display:block;color:var(--red);font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.55px}.checkout-panel-head h1,.checkout-panel-head h2{margin:4px 0 0;color:var(--navy);font-size:24px}.checkout-panel-head>small{color:#70798a;margin-top:7px}.checkout-verify-pill{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:8px 11px;font-size:11px;font-style:normal;font-weight:800}.checkout-verify-pill.is-loading{background:#eef4ff;color:#2367b1}.checkout-verify-pill.is-success{background:#eaf9f1;color:#12834c}.checkout-verify-pill.is-error{background:#fff0f1;color:var(--red)}
.checkout-verify-box{display:flex;align-items:center;gap:12px;border:1px solid #e4e9ef;background:#f8fafc;border-radius:11px;padding:13px 15px;margin-bottom:15px}.checkout-verify-box>i{font-size:22px;color:#138b51}.checkout-verify-box strong,.checkout-verify-box small{display:block}.checkout-verify-box small{color:#6a7382;margin-top:2px}
.checkout-flight-option{border:1px solid #e4e8ee;border-radius:12px;overflow:hidden;margin-bottom:12px}.checkout-flight-option-head{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 14px;background:#fafbfc;border-bottom:1px solid #edf0f3}.checkout-flight-option-head>div{display:flex;align-items:center;gap:9px}.checkout-flight-option-head span{display:flex;flex-direction:column;gap:2px}.checkout-flight-option-head small{color:#6d7684;font-size:11px}.checkout-flight-option-head>strong{font-size:19px}.checkout-airline-logo,.checkout-airline-fallback{width:34px;height:34px;object-fit:contain;border-radius:8px;background:#fff;border:1px solid #edf0f3;padding:4px}.checkout-airline-fallback{place-items:center;color:var(--navy)}
.checkout-flight-leg{display:grid;grid-template-columns:minmax(0,1fr) 130px minmax(0,1fr);gap:14px;align-items:center;padding:14px}.checkout-flight-leg>div:not(.checkout-flight-duration){display:flex;flex-direction:column;gap:3px}.checkout-flight-leg .arrive{text-align:right}.checkout-flight-leg b{font-size:13px}.checkout-flight-leg strong{font-size:21px}.checkout-flight-leg small{font-size:11px;color:#6d7685}.checkout-flight-duration{text-align:center}.checkout-flight-duration span,.checkout-flight-duration small{font-size:11px;color:#687180}.checkout-flight-duration i{display:block;height:1px;background:#b7bec8;position:relative;margin:6px 0}.checkout-flight-duration i:after{content:"";position:absolute;width:7px;height:7px;border:1px solid #9ba4b1;background:#fff;border-radius:50%;left:50%;top:50%;transform:translate(-50%,-50%)}
.checkout-policy-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.checkout-policy-button{appearance:none;border:1px solid #e5e8ed;background:#fff;border-radius:10px;padding:11px 12px;display:grid;grid-template-columns:32px 1fr auto;gap:9px;align-items:center;text-align:left;cursor:pointer;color:var(--navy)}.checkout-policy-button>i:first-child{width:32px;height:32px;border-radius:8px;background:#fff0f1;color:var(--red);display:grid;place-items:center}.checkout-policy-button span{display:flex;flex-direction:column;gap:2px}.checkout-policy-button small{font-size:10px;color:#6c7584}.checkout-policy-button:hover{border-color:#f5b6ba}
.checkout-info-note{display:flex;align-items:flex-start;gap:8px;background:#f2f7ff;color:#3e5572;border-radius:9px;padding:10px 12px;font-size:12px;margin-bottom:12px}.checkout-info-note i{color:#2868b2;margin-top:2px}
.checkout-traveller-card{border:1px solid #e4e8ee;border-radius:12px;padding:15px;margin-top:11px}.checkout-traveller-title{display:flex;align-items:center;gap:9px;margin-bottom:13px}.checkout-person-icon{width:34px;height:34px;border-radius:9px;background:#fff0f1;color:var(--red);display:grid;place-items:center}.checkout-traveller-title>div{display:flex;flex-direction:column}.checkout-traveller-title small{font-size:10px;color:#747d8b;margin-top:2px}.checkout-form-grid{display:grid;gap:11px}.checkout-form-grid.traveller{grid-template-columns:90px 1fr 1fr 120px 150px}.checkout-form-grid.two{grid-template-columns:1fr 1fr}.checkout-form-grid label{display:flex;flex-direction:column;gap:6px;font-size:11px;font-weight:800;color:#3f495a}.checkout-form-grid input,.checkout-form-grid select{height:43px;border:1px solid #d9dfe7;border-radius:8px;padding:0 10px;background:#fff;color:#162039;font:inherit;outline:0}.checkout-form-grid input:focus,.checkout-form-grid select:focus{border-color:#7f94b4;box-shadow:0 0 0 3px rgba(28,80,152,.07)}.checkout-form-grid .input-error,.checkout-form-grid input.input-error{border-color:var(--red);box-shadow:0 0 0 3px rgba(239,32,40,.06)}.checkout-contact{margin-top:18px}.checkout-contact h3{font-size:16px;margin:0 0 10px}
.checkout-ssr-leg{border:1px solid #e3e7ed;border-radius:12px;overflow:hidden;margin-top:13px}.checkout-ssr-head{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:13px 15px;background:#f8fafc;border-bottom:1px solid #e6eaf0}.checkout-ssr-head>div{display:flex;flex-direction:column;gap:2px}.checkout-ssr-head span{font-size:10px;color:var(--red);font-weight:900;text-transform:uppercase}.checkout-ssr-head small{color:#6d7684;font-size:11px}.checkout-ssr-block{padding:15px;border-bottom:1px solid #edf0f4}.checkout-ssr-block h3{display:flex;align-items:center;gap:8px;margin:0 0 12px;font-size:15px}.checkout-ssr-block h3 i{color:var(--red)}.checkout-ssr-block h3 small{font-size:10px;color:#78808d;font-weight:500}.checkout-seat-map{overflow:auto;padding-bottom:3px}.checkout-seat-row{display:flex;align-items:center;gap:10px;margin:6px 0;min-width:max-content}.checkout-seat-row>b{width:28px;font-size:11px;color:#6b7381}.checkout-seat-row>div{display:flex;gap:5px}.checkout-seat{appearance:none;border:1px solid #d9dee5;background:#fff;border-radius:7px;width:48px;height:44px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;cursor:pointer;color:#313b4c;font:inherit}.checkout-seat span{font-size:11px;font-weight:800}.checkout-seat small{font-size:8px;color:#6d7582}.checkout-seat.selected{background:var(--red);border-color:var(--red);color:#fff}.checkout-seat.selected small{color:#fff}.checkout-seat.blocked{background:#e9ecf0;color:#a1a7b0;cursor:not-allowed}.checkout-seat-selection-copy{font-size:11px;color:#647080;margin-top:9px}.checkout-ssr-empty{display:flex;align-items:center;gap:9px;border:1px dashed #dfe3e9;background:#fafbfc;border-radius:9px;padding:12px;color:#687382}.checkout-ssr-empty>i{font-size:20px;color:#a1a8b3}.checkout-ssr-empty span{display:flex;flex-direction:column}.checkout-ssr-empty small{font-size:10px;margin-top:2px}
.checkout-meal-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.checkout-meal-card{display:grid;grid-template-columns:36px 1fr auto;gap:9px;align-items:center;border:1px solid #e4e8ed;border-radius:9px;padding:9px}.checkout-meal-icon{width:36px;height:36px;border-radius:9px;background:#fff2eb;color:#e56c27;display:grid;place-items:center}.checkout-meal-card>div:nth-child(2){display:flex;flex-direction:column;gap:2px}.checkout-meal-card small{font-size:10px;color:#747d8a}.checkout-qty{display:flex;align-items:center;gap:7px}.checkout-qty button{width:27px;height:27px;border:1px solid #dde2e8;border-radius:7px;background:#fff;font-weight:900;cursor:pointer}.checkout-qty b{min-width:15px;text-align:center}.checkout-baggage-info{padding:14px 15px;background:#fbfcfd}.checkout-baggage-info h4{margin:0 0 9px;font-size:14px}.checkout-baggage-info h4 i{color:var(--red);margin-right:6px}.checkout-baggage-info>div{display:flex;flex-wrap:wrap;gap:7px}.checkout-baggage-info>div span{display:flex;gap:6px;border:1px solid #e3e7ed;border-radius:999px;padding:6px 9px;background:#fff}.checkout-baggage-info small{font-size:10px;color:#747d8b}.checkout-baggage-info>small{display:block;margin-top:8px;line-height:1.4}
.checkout-terms{display:flex;align-items:flex-start;gap:9px;font-size:12px;color:#4b5667}.checkout-terms input{width:17px;height:17px;margin-top:1px;accent-color:var(--red)}.checkout-terms a{color:#174f9f;font-weight:700}.checkout-final-message{display:flex;align-items:flex-start;gap:8px;border-radius:9px;padding:11px 12px;margin-top:12px;font-size:12px}.checkout-final-message.success{background:#eaf9f1;color:#187a4b}.checkout-final-message.error{background:#fff0f1;color:#b51e27}
.checkout-price-card{padding:20px}.checkout-price-card h2{font-size:20px;margin:0 0 16px}.checkout-price-card [data-checkout-price-lines]{display:grid;gap:10px}.checkout-price-card [data-checkout-price-lines]>div{display:flex;justify-content:space-between;gap:12px;color:#5d6878;font-size:12px}.checkout-price-card [data-checkout-price-lines]>div strong{color:#202a3c}.checkout-total{display:flex;justify-content:space-between;align-items:flex-end;border-top:1px solid #e9edf2;margin-top:15px;padding-top:15px}.checkout-total span{font-size:12px;color:#596576}.checkout-total strong{font-size:27px;color:var(--navy)}.checkout-price-note{display:block;color:#77808f;font-size:10px;line-height:1.45;margin:8px 0 14px}.checkout-pay-btn{width:100%;height:46px;border:0;border-radius:9px;background:var(--red);color:#fff;font:inherit;font-weight:900;cursor:pointer}.checkout-pay-btn:disabled{opacity:.55;cursor:not-allowed}.checkout-security{display:flex;gap:9px;align-items:center;background:#f5f8f6;border-radius:9px;padding:10px;margin-top:12px}.checkout-security>i{color:#0b9852;font-size:20px}.checkout-security span{display:flex;flex-direction:column}.checkout-security small{font-size:9px;color:#6f7886}
.checkout-policy-modal[hidden]{display:none!important}.checkout-policy-modal{position:fixed;inset:0;z-index:5000;display:grid;place-items:center;padding:18px}.checkout-policy-backdrop{position:absolute;inset:0;background:rgba(8,14,28,.62)}.checkout-policy-card{position:relative;width:min(900px,100%);max-height:86vh;overflow:auto;background:#fff;border-radius:16px;padding:24px;box-shadow:0 30px 90px rgba(0,0,0,.26)}.checkout-policy-close{position:absolute;right:14px;top:14px;width:36px;height:36px;border:0;border-radius:50%;background:#f1f3f6;cursor:pointer}.checkout-policy-card h2{margin:0 45px 18px 0}.checkout-policy-columns{display:grid;grid-template-columns:1fr 1fr;gap:16px}.checkout-policy-columns section{min-width:0;border:1px solid #e5e9ef;border-radius:10px;padding:14px;overflow:auto}.checkout-policy-columns h3{margin:0 0 10px;font-size:15px}.checkout-policy-columns table,.checkout-policy-columns .tb-flight-rule-table{width:100%;border-collapse:collapse;font-size:11px;min-width:440px}.checkout-policy-columns th,.checkout-policy-columns td,.checkout-policy-columns .tb-flight-rule-table>div{border:1px solid #e4e8ee;padding:7px}

@media(max-width:1180px){
  .flight-roundtrip-layout .compact .flight-card-main{grid-template-columns:85px minmax(90px,1fr) 70px minmax(90px,1fr) 76px!important;gap:6px!important}.flight-roundtrip-layout .compact .flight-live-logo{width:30px;height:30px;flex-basis:30px}.flight-roundtrip-layout .compact .flight-airline strong{font-size:11px}.flight-roundtrip-layout .compact .flight-city b{font-size:11px}.flight-roundtrip-layout .compact .flight-city strong{font-size:16px}.flight-roundtrip-layout .compact .flight-price strong{font-size:15px}
  .flight-checkout-grid{grid-template-columns:minmax(0,1fr) 290px}.checkout-form-grid.traveller{grid-template-columns:80px 1fr 1fr 110px}.checkout-form-grid.traveller label:nth-child(n+6){grid-column:auto}
}
@media(max-width:960px){
  .flight-roundtrip-layout{grid-template-columns:1fr!important}.flight-roundtrip-layout .compact .flight-card-main{grid-template-columns:150px minmax(130px,1fr) 115px minmax(130px,1fr) 120px!important;gap:10px!important}.flight-roundtrip-layout .compact .flight-city-arrive{text-align:right!important}.flight-roundtrip-layout .compact .flight-city b{font-size:12px}.flight-roundtrip-layout .compact .flight-city strong{font-size:18px}.flight-roundtrip-layout .compact .flight-city small{font-size:10px}
  .flight-checkout-grid{grid-template-columns:1fr}.flight-checkout-sidebar{position:relative;top:auto}.checkout-price-card{display:grid;grid-template-columns:1fr auto;column-gap:18px;align-items:end}.checkout-price-card h2,.checkout-price-card [data-checkout-price-lines],.checkout-total,.checkout-price-note,.checkout-security{grid-column:1}.checkout-pay-btn{grid-column:2;grid-row:2/6;width:190px;align-self:center}.checkout-form-grid.traveller{grid-template-columns:90px 1fr 1fr 120px}.checkout-meal-list{grid-template-columns:1fr 1fr}
}
@media(max-width:700px){
  .flight-card-meta{align-items:flex-start}.flight-card-meta-facts{gap:7px 11px}.flight-details-link{font-size:11px}
  .flight-roundtrip-layout .compact .flight-card-main{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:11px!important}.flight-roundtrip-layout .compact .flight-airline{grid-column:1/-1}.flight-roundtrip-layout .compact .flight-city-depart{grid-column:1}.flight-roundtrip-layout .compact .flight-city-arrive{grid-column:2;text-align:right!important}.flight-roundtrip-layout .compact .flight-duration{grid-column:1/-1;width:72%;justify-self:center}.flight-roundtrip-layout .compact .flight-price{grid-column:1/-1;width:100%;display:flex;justify-content:space-between;border-top:1px solid #edf0f4;padding-top:9px}.flight-roundtrip-layout .compact .flight-price strong{font-size:18px}
  .flight-checkout{padding:18px 0 36px}.flight-checkout-steps{display:flex;overflow-x:auto;gap:6px}.flight-checkout-steps button{flex:0 0 auto;min-width:142px;padding:0 12px}.checkout-panel{padding:15px;border-radius:12px}.checkout-panel-head{flex-direction:column}.checkout-panel-head h1,.checkout-panel-head h2{font-size:21px}.checkout-flight-leg{grid-template-columns:1fr 1fr;gap:10px}.checkout-flight-duration{grid-column:1/-1;grid-row:2;width:70%;justify-self:center}.checkout-flight-leg .arrive{text-align:right}.checkout-policy-summary{grid-template-columns:1fr}.checkout-form-grid.traveller,.checkout-form-grid.two{grid-template-columns:1fr 1fr}.checkout-form-grid.traveller label:nth-child(2),.checkout-form-grid.traveller label:nth-child(3){grid-column:auto}.checkout-meal-list{grid-template-columns:1fr}.checkout-price-card{display:block;padding:16px}.checkout-pay-btn{width:100%;margin-top:12px}.checkout-policy-columns{grid-template-columns:1fr}.checkout-policy-card{padding:18px 14px}.checkout-policy-columns section{overflow:auto}
}
@media(max-width:480px){
  .checkout-form-grid.traveller,.checkout-form-grid.two{grid-template-columns:1fr}.checkout-flight-option-head{align-items:flex-start}.checkout-flight-option-head>strong{font-size:17px}.checkout-flight-leg b{font-size:12px}.checkout-flight-leg strong{font-size:19px}.checkout-traveller-card{padding:12px}.checkout-seat-row{gap:6px}.checkout-seat{width:44px}.checkout-meal-card{grid-template-columns:34px 1fr auto}.checkout-policy-button{grid-template-columns:30px 1fr auto}.flight-itinerary-head .flight-book-now-btn{margin-left:0}
}

/* Phase 4.2 — final flight booking/refinement QA fixes. */
.flight-search-grid[hidden],#flight-modify-single[hidden],#flight-multicity-editor[hidden]{display:none!important}
.live-flight-card .flight-card-main>*{min-width:0}
.live-flight-card .flight-airline>span{min-width:0}
.live-flight-card .flight-airline strong,.live-flight-card .flight-airline small{white-space:normal;overflow-wrap:anywhere}
.live-flight-card .flight-city-arrive{text-align:right!important}
.flight-roundtrip-layout .compact .flight-card,.flight-roundtrip-layout .compact .flight-card-main{width:100%;max-width:100%;box-sizing:border-box}
.flight-roundtrip-layout .compact .flight-price strong{overflow-wrap:anywhere}
.flight-rule-detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:12px 16px}
.flight-rule-detail-grid>div{border:1px solid #e8ecf1;border-radius:10px;padding:11px 12px;min-width:0;background:#fbfcfd}
.flight-rule-detail-grid h4{display:flex;align-items:center;gap:7px;margin:0 0 8px;font-size:12px;color:#5d6878}
.flight-rule-detail-grid h4 i{color:var(--red)}
.flight-rule-detail-grid strong,.flight-rule-detail-grid small{display:block;overflow-wrap:anywhere}
.flight-rule-detail-grid strong{font-size:14px;color:var(--navy)}
.flight-rule-detail-grid small{margin-top:3px;font-size:10px;color:#748091}
.flight-pair-needed{display:flex;align-items:flex-start;gap:9px;margin:0 16px 16px;border:1px solid #f0d8a0;background:#fff8e8;border-radius:10px;padding:11px 12px;color:#6a5522}
.flight-pair-needed i{margin-top:2px}.flight-pair-needed span{display:flex;flex-direction:column;gap:2px}.flight-pair-needed small{font-size:10px}
#fare-book-now:disabled{opacity:.55;cursor:not-allowed}
.checkout-baggage-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.checkout-baggage-card{display:grid;grid-template-columns:36px 1fr auto;gap:9px;align-items:center;border:1px solid #e4e8ed;border-radius:9px;padding:9px;background:#fff}
.checkout-baggage-icon{width:36px;height:36px;border-radius:9px;background:#f1f5ff;color:#174f9f;display:grid;place-items:center}
.checkout-baggage-card>div:nth-child(2){display:flex;flex-direction:column;gap:2px;min-width:0}.checkout-baggage-card strong{font-size:12px;overflow-wrap:anywhere}.checkout-baggage-card small,.checkout-addon-note{font-size:10px;color:#747d8a}.checkout-addon-note{display:block;margin-top:8px}
@media(max-width:960px){.flight-roundtrip-layout .compact .flight-city-arrive{text-align:right!important}}
@media(max-width:700px){.flight-rule-detail-grid{grid-template-columns:1fr;padding:10px 14px}.checkout-baggage-list{grid-template-columns:1fr}.flight-card-meta{flex-wrap:wrap}.flight-details-link{margin-left:auto}}

/* Phase 5: flight final-booking, fare-change, payment and confirmation UI */
.checkout-payment-methods{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0 0 18px}.checkout-payment-methods label{display:block;cursor:pointer}.checkout-payment-methods input{position:absolute;opacity:0;pointer-events:none}.checkout-payment-methods label>span{display:grid;grid-template-columns:36px 1fr;grid-template-rows:auto auto;gap:2px 10px;align-items:center;padding:14px;border:1px solid #e4e7ec;border-radius:14px;background:#fff;transition:.2s}.checkout-payment-methods i{grid-row:1/3;width:36px;height:36px;border-radius:10px;background:#fff1f1;color:#ef2028;display:grid;place-items:center}.checkout-payment-methods b{font-size:14px;color:#111827}.checkout-payment-methods small{font-size:12px;color:#667085}.checkout-payment-methods input:checked+span{border-color:#ef2028;box-shadow:0 0 0 3px rgba(239,32,40,.08);background:#fffafa}
.fare-change-modal[hidden]{display:none!important}.fare-change-modal{position:fixed;inset:0;z-index:9999;display:grid;place-items:center;padding:20px}.fare-change-modal .checkout-policy-backdrop{position:absolute;inset:0;background:rgba(15,23,42,.62);backdrop-filter:blur(4px)}.fare-change-card{position:relative;width:min(520px,100%);background:#fff;border-radius:22px;padding:28px;box-shadow:0 24px 80px rgba(15,23,42,.3);text-align:center}.fare-change-icon{width:58px;height:58px;border-radius:18px;display:grid;place-items:center;margin:0 auto 14px;background:#fff3e8;color:#f97316;font-size:24px}.fare-change-card h2{margin:0 0 8px;font-size:24px;color:#101828}.fare-change-card p{margin:0 auto 20px;color:#667085;line-height:1.55;max-width:430px}.fare-change-prices{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;padding:16px;border:1px solid #eaecf0;border-radius:16px;background:#f9fafb;margin-bottom:20px}.fare-change-prices div{display:flex;flex-direction:column;gap:4px}.fare-change-prices span{font-size:12px;color:#667085}.fare-change-prices del{font-size:17px;color:#98a2b3;font-weight:700}.fare-change-prices strong{font-size:20px;color:#ef2028}.fare-change-prices>i{color:#98a2b3}.fare-change-actions{display:flex;gap:10px}.fare-change-actions>*{flex:1;justify-content:center}
.payment-transition-page{background:#f6f7fb;min-height:100vh}.payment-transition{min-height:100vh;display:grid;place-items:center;padding:24px}.payment-transition-card{width:min(520px,100%);padding:34px;background:#fff;border:1px solid #eaecf0;border-radius:24px;box-shadow:0 18px 60px rgba(15,23,42,.1);text-align:center}.payment-transition-icon{width:64px;height:64px;margin:0 auto 16px;border-radius:20px;background:#ecfdf3;color:#039855;display:grid;place-items:center;font-size:28px}.payment-transition-icon.error{background:#fef3f2;color:#d92d20}.payment-transition-card h1{font-size:26px;margin:0 0 10px;color:#101828}.payment-transition-card p{color:#667085;line-height:1.55;margin:0 0 18px}.payment-transition-card form{margin:18px 0}.payment-transition-card small{display:block;color:#98a2b3}.payment-loader{display:flex;justify-content:center;gap:7px;margin:14px 0}.payment-loader i{width:8px;height:8px;border-radius:50%;background:#ef2028;animation:tsPayPulse 1s infinite ease-in-out}.payment-loader i:nth-child(2){animation-delay:.14s}.payment-loader i:nth-child(3){animation-delay:.28s}@keyframes tsPayPulse{0%,80%,100%{transform:scale(.65);opacity:.45}40%{transform:scale(1);opacity:1}}
.booking-confirmation-page,.my-bookings-page{background:#f6f7fb}.booking-confirmation,.my-bookings{padding:36px 0 64px}.confirmation-hero{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:18px;align-items:center;padding:24px 26px;border-radius:22px;background:#fff;border:1px solid #eaecf0;box-shadow:0 10px 32px rgba(15,23,42,.06);margin-bottom:22px}.confirmation-hero.success{border-color:#abefc6;background:linear-gradient(135deg,#fff 0%,#f0fdf4 100%)}.confirmation-hero.pending,.confirmation-hero.warning{border-color:#fedf89;background:linear-gradient(135deg,#fff 0%,#fffaeb 100%)}.confirmation-hero.error{border-color:#fecdca;background:linear-gradient(135deg,#fff 0%,#fef3f2 100%)}.confirmation-status-icon{width:62px;height:62px;border-radius:20px;display:grid;place-items:center;font-size:29px;background:#ecfdf3;color:#079455}.confirmation-hero.pending .confirmation-status-icon,.confirmation-hero.warning .confirmation-status-icon{background:#fffaeb;color:#dc6803}.confirmation-hero.error .confirmation-status-icon{background:#fef3f2;color:#d92d20}.confirmation-kicker,.confirmation-card-head>div>span,.my-bookings-head>div>span{display:block;font-size:12px;letter-spacing:.08em;text-transform:uppercase;font-weight:800;color:#ef2028;margin-bottom:5px}.confirmation-hero h1{margin:0 0 5px;color:#101828;font-size:27px}.confirmation-hero p{margin:0;color:#667085;line-height:1.45}.confirmation-ref{text-align:right;display:flex;flex-direction:column;gap:3px}.confirmation-ref span{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:#98a2b3}.confirmation-ref strong{font-size:17px;color:#101828}.confirmation-ref small{color:#667085}.confirmation-grid{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:22px;align-items:start}.confirmation-main{display:grid;gap:18px}.confirmation-card{background:#fff;border:1px solid #eaecf0;border-radius:20px;padding:22px;box-shadow:0 8px 28px rgba(15,23,42,.05)}.confirmation-card-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:18px}.confirmation-card-head h2{margin:0;color:#101828;font-size:20px}.confirmation-card-head>strong{font-size:20px;color:#101828}.confirmation-card-head>small{color:#667085}.confirmation-leg{display:grid;grid-template-columns:minmax(0,1fr) 180px minmax(0,1fr);gap:18px;align-items:center;padding:16px 0;border-top:1px solid #f2f4f7}.confirmation-leg:first-of-type{border-top:0}.confirmation-leg>div:not(.confirmation-leg-line){display:flex;flex-direction:column;gap:4px}.confirmation-leg .arrive{text-align:right;align-items:flex-end}.confirmation-leg span{font-size:13px;color:#667085}.confirmation-leg strong{font-size:18px;color:#101828}.confirmation-leg small{font-size:12px;color:#98a2b3}.confirmation-leg-line{text-align:center;display:flex;flex-direction:column;gap:6px}.confirmation-leg-line i{height:1px;background:#d0d5dd;position:relative}.confirmation-leg-line i:after{content:"";position:absolute;right:-1px;top:-3px;border-left:6px solid #d0d5dd;border-top:3px solid transparent;border-bottom:3px solid transparent}.confirmation-travellers{display:grid;gap:10px}.confirmation-travellers>div{display:flex;align-items:center;gap:11px;padding:11px;border:1px solid #f2f4f7;border-radius:13px}.confirmation-avatar{width:38px;height:38px;border-radius:12px;background:#fff1f1;color:#ef2028;display:grid;place-items:center}.confirmation-travellers>div>span:last-child{display:flex;flex-direction:column;gap:2px}.confirmation-travellers strong{font-size:14px;color:#101828}.confirmation-travellers small{color:#667085}.confirmation-rules{display:grid;gap:14px}.confirmation-rules>section{border:1px solid #eaecf0;border-radius:14px;padding:15px}.confirmation-rules h3{margin:0 0 12px;font-size:15px;color:#101828}.confirmation-rules>section>div{padding:10px 0;border-top:1px solid #f2f4f7}.confirmation-rules h4{margin:0 0 5px;font-size:13px;color:#344054}.confirmation-rules p{margin:0;color:#667085;line-height:1.5;font-size:13px}.confirmation-side{position:sticky;top:90px;display:grid;gap:14px}.confirmation-summary-card h2{margin:0 0 12px;font-size:18px}.confirmation-summary-card>div{display:flex;justify-content:space-between;gap:16px;padding:11px 0;border-top:1px solid #f2f4f7}.confirmation-summary-card>div span{color:#667085;font-size:13px}.confirmation-summary-card>div strong{color:#101828;font-size:13px;text-align:right;word-break:break-word}.status-text.success{color:#067647!important}.status-text.pending,.status-text.warning{color:#b54708!important}.status-text.error{color:#b42318!important}.confirmation-actions{display:flex;gap:10px;flex-wrap:wrap}.confirmation-actions.vertical{display:grid}.confirmation-actions a{display:flex;align-items:center;gap:8px;justify-content:center}.confirmation-empty{color:#667085}
.my-bookings-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-end;margin-bottom:22px}.my-bookings-head h1{font-size:30px;margin:0 0 6px;color:#101828}.my-bookings-head p{margin:0;color:#667085}.bookings-empty{background:#fff;border:1px solid #eaecf0;border-radius:22px;padding:48px 24px;text-align:center}.bookings-empty>i{font-size:34px;color:#ef2028;margin-bottom:12px}.bookings-empty h2{margin:0 0 8px;color:#101828}.bookings-empty p{margin:0 auto 18px;max-width:520px;color:#667085}.bookings-notice{display:flex;gap:9px;align-items:flex-start;background:#fffaeb;border:1px solid #fedf89;color:#93370d;border-radius:12px;padding:12px 14px;margin-bottom:14px}.booking-list{display:grid;gap:14px}.booking-list-card{background:#fff;border:1px solid #eaecf0;border-radius:18px;padding:18px 20px;box-shadow:0 7px 24px rgba(15,23,42,.04)}.booking-list-top{display:flex;justify-content:space-between;gap:18px;align-items:center}.booking-list-top>div{display:flex;align-items:center;gap:12px}.booking-list-icon{width:44px;height:44px;border-radius:13px;background:#fff1f1;color:#ef2028;display:grid;place-items:center}.booking-list-top>div>span:last-child{display:flex;flex-direction:column;gap:3px}.booking-list-top strong{color:#101828}.booking-list-top small{color:#667085}.booking-status{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:7px 10px;font-size:12px;font-weight:700}.booking-status.success{background:#ecfdf3;color:#067647}.booking-status.pending,.booking-status.warning{background:#fffaeb;color:#b54708}.booking-status.error{background:#fef3f2;color:#b42318}.booking-list-meta{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;padding:16px 0;margin-top:14px;border-top:1px solid #f2f4f7;border-bottom:1px solid #f2f4f7}.booking-list-meta>div{display:flex;flex-direction:column;gap:4px}.booking-list-meta span{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:#98a2b3}.booking-list-meta strong{font-size:13px;color:#344054;word-break:break-word}.booking-list-actions{padding-top:13px;display:flex;justify-content:flex-end}.booking-list-actions a{color:#ef2028;font-weight:700;text-decoration:none}.booking-list-actions span{color:#98a2b3;font-size:12px}
.ticket-voucher-page{background:#eef1f5}.ticket-voucher{max-width:920px;margin:0 auto;padding:24px}.ticket-toolbar{display:flex;justify-content:space-between;margin-bottom:12px}.ticket-toolbar a,.ticket-toolbar button{border:0;background:#fff;color:#344054;border-radius:10px;padding:10px 14px;text-decoration:none;font:inherit;font-weight:700;cursor:pointer;box-shadow:0 4px 14px rgba(15,23,42,.08)}.ticket-sheet{background:#fff;border-radius:18px;padding:30px;box-shadow:0 12px 40px rgba(15,23,42,.1)}.ticket-sheet>header{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;padding-bottom:20px;border-bottom:2px solid #101828}.ticket-sheet>header>div:last-child{display:flex;flex-direction:column;text-align:right;gap:3px}.ticket-sheet>header>div:last-child span,.ticket-sheet>header>div:last-child small{color:#667085}.ticket-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;padding:18px 0}.ticket-meta>div{background:#f9fafb;border-radius:12px;padding:12px;display:flex;flex-direction:column;gap:4px}.ticket-meta span{font-size:11px;color:#667085;text-transform:uppercase}.ticket-sheet h2{font-size:17px;margin:18px 0 10px}.ticket-leg{display:grid;grid-template-columns:1fr 180px 1fr;gap:16px;align-items:center;padding:14px;border:1px solid #eaecf0;border-radius:12px;margin-bottom:10px}.ticket-leg>div{display:flex;flex-direction:column;gap:3px}.ticket-leg>div:nth-child(2){text-align:center}.ticket-leg>div:last-child{text-align:right}.ticket-leg i{height:1px;background:#d0d5dd}.ticket-sheet table{width:100%;border-collapse:collapse}.ticket-sheet th,.ticket-sheet td{text-align:left;padding:10px;border-bottom:1px solid #eaecf0}.ticket-sheet th{font-size:12px;color:#667085;background:#f9fafb}.ticket-note{font-size:12px;color:#667085;line-height:1.5;margin-top:18px}
@media(max-width:1024px){.confirmation-grid{grid-template-columns:minmax(0,1fr) 290px}.confirmation-leg{grid-template-columns:minmax(0,1fr) 140px minmax(0,1fr)}.booking-list-meta{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:768px){.checkout-payment-methods{grid-template-columns:1fr}.fare-change-card{padding:22px}.fare-change-actions{flex-direction:column}.confirmation-hero{grid-template-columns:auto 1fr}.confirmation-ref{grid-column:1/-1;text-align:left;padding-top:12px;border-top:1px solid rgba(0,0,0,.06)}.confirmation-grid{grid-template-columns:1fr}.confirmation-side{position:static}.confirmation-leg{grid-template-columns:1fr 110px 1fr;gap:10px}.my-bookings-head{align-items:flex-start;flex-direction:column}.booking-list-top{align-items:flex-start;flex-direction:column}.booking-status{align-self:flex-start}.ticket-leg{grid-template-columns:1fr 100px 1fr}.ticket-sheet{padding:20px}.ticket-meta{grid-template-columns:1fr}}
@media(max-width:480px){.booking-confirmation,.my-bookings{padding:20px 0 44px}.confirmation-hero{grid-template-columns:1fr;text-align:center;padding:20px}.confirmation-status-icon{margin:auto}.confirmation-ref{text-align:center}.confirmation-card{padding:16px}.confirmation-card-head{flex-direction:column;gap:7px}.confirmation-leg{grid-template-columns:1fr;gap:8px;text-align:center;padding:14px 0}.confirmation-leg .arrive{align-items:center;text-align:center}.confirmation-leg-line{padding:5px 22px}.booking-list-card{padding:15px}.booking-list-meta{grid-template-columns:1fr 1fr;gap:12px}.fare-change-prices{grid-template-columns:1fr}.fare-change-prices>i{transform:rotate(90deg)}.ticket-voucher{padding:10px}.ticket-sheet{padding:16px;border-radius:12px}.ticket-sheet>header{flex-direction:column}.ticket-sheet>header>div:last-child{text-align:left}.ticket-leg{grid-template-columns:1fr;text-align:center}.ticket-leg>div:last-child{text-align:center}.ticket-toolbar{gap:8px}.ticket-toolbar a,.ticket-toolbar button{font-size:12px;padding:9px 10px}}
@media print{.ticket-voucher-page{background:#fff}.ticket-voucher{max-width:none;padding:0}.ticket-toolbar{display:none}.ticket-sheet{box-shadow:none;border-radius:0;padding:0}}

/* Phase 5.1: production booking status / reconciliation */
.booking-status-check{margin:14px 0 0;padding:14px 16px;border:1px solid #eadde0;border-radius:14px;background:#fff8f9;display:grid;gap:7px}.booking-status-check>span{display:flex;align-items:center;gap:9px;color:#321b20;font-size:14px}.booking-status-check>span i{color:#ef2028}.booking-status-check small{display:block;color:#705d62;line-height:1.45}.booking-status-check button{justify-self:start;border:0;background:transparent;color:#d71920;font:700 13px/1.2 Roboto,sans-serif;padding:3px 0;cursor:pointer}.booking-status-check button:disabled{opacity:.55;cursor:wait}.booking-status-check.is-checking>span i{animation:ts-booking-spin .85s linear infinite}@keyframes ts-booking-spin{to{transform:rotate(360deg)}}
@media(max-width:768px){.booking-status-check{padding:13px 14px;border-radius:12px}.booking-status-check>span{font-size:13px}.booking-status-check small{font-size:12px}}
/* Phase 5.2: explicit pre-live safety lock. */
.prelive-safety-banner{display:flex;align-items:flex-start;gap:12px;margin:0 0 18px;padding:14px 16px;border:1px solid #f0d9a8;border-radius:14px;background:#fffaf0;color:#60420d;box-shadow:0 7px 24px rgba(58,43,11,.05)}
.prelive-safety-banner>i{flex:0 0 auto;width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:#fff0c7;color:#9a6700;font-size:15px}
.prelive-safety-banner>div{min-width:0;display:grid;gap:3px}.prelive-safety-banner strong{font-size:14px;color:#4a3309}.prelive-safety-banner span{font-size:12px;line-height:1.5;color:#755715}
.checkout-prelive-payment{display:flex;align-items:flex-start;gap:11px;margin:0 0 18px;padding:14px;border:1px dashed #e0bd69;border-radius:14px;background:#fffdf7}
.checkout-prelive-payment>i{width:34px;height:34px;flex:0 0 34px;border-radius:10px;display:grid;place-items:center;background:#fff4d6;color:#9a6700}.checkout-prelive-payment>span{display:grid;gap:3px}.checkout-prelive-payment b{font-size:14px;color:#2f2a1f}.checkout-prelive-payment small{font-size:12px;line-height:1.45;color:#75684a}
.booking-status-check.prelive{background:#fffaf0;border-color:#f0d9a8}.booking-status-check.prelive>span i{color:#9a6700}.booking-status-check.prelive small{color:#755715}
.confirmation-prelive-banner{margin-bottom:20px}
@media(max-width:768px){.prelive-safety-banner{padding:13px 14px;border-radius:12px}.prelive-safety-banner span{font-size:11.5px}.checkout-prelive-payment{padding:13px;border-radius:12px}}

/* Phase 6.1 — live Hotel Search + Listing refinement. */
.hotel-home-room-modal{width:min(620px,calc(100vw - 28px));max-height:min(82vh,760px);overflow:auto}.hotel-home-room-help{margin:-10px 42px 18px 0;color:#6b7280;font-size:13px;line-height:1.5}.home-hotel-room-list{display:grid;gap:12px}.home-hotel-room-row{border:1px solid #e6e9ee;border-radius:12px;padding:14px;background:#fbfcfe}.home-hotel-room-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.home-hotel-room-title strong{font-size:14px;color:var(--navy)}.home-hotel-room-title button{border:0;background:#fff0f1;color:var(--red);width:32px;height:32px;border-radius:8px;cursor:pointer}.home-hotel-room-controls{display:grid;grid-template-columns:1fr 1fr;gap:12px}.home-hotel-room-controls label,.home-hotel-child-ages label{display:flex;flex-direction:column;gap:5px;font-size:12px;font-weight:700;color:#374151}.home-hotel-room-controls select,.home-hotel-child-ages select{height:40px;border:1px solid #dce1e7;border-radius:8px;background:#fff;padding:0 10px;font:inherit}.home-hotel-room-controls small{font-size:10px;font-weight:500;color:#8a93a1}.home-hotel-child-ages{margin-top:12px;padding-top:11px;border-top:1px dashed #dde2e8}.home-hotel-child-ages>span{display:block;font-size:11px;font-weight:800;color:#5d6675;margin-bottom:8px}.home-hotel-child-ages>div{display:flex;flex-wrap:wrap;gap:10px}.home-hotel-child-ages label{min-width:110px}.home-hotel-room-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;position:sticky;bottom:-24px;background:#fff;padding:14px 0 0;margin-top:14px;border-top:1px solid #eef0f3}.home-hotel-room-actions .modal-apply{width:auto;min-width:150px;padding:0 24px}.home-hotel-room-actions .secondary-action{height:46px}.home-hotel-room-actions button:disabled{opacity:.45;cursor:not-allowed}
.hotel-live-error-copy{display:flex;align-items:center;justify-content:center;gap:9px}.hotel-live-error-copy i{color:var(--red)}.hotel-live-retry{margin-left:12px;height:36px;border:0;border-radius:8px;background:var(--red);color:#fff;padding:0 16px;font-weight:800;cursor:pointer}.hotel-per-night{display:block;font-size:12px;font-weight:700;color:#667085;margin-top:2px}.hotel-live-property-meta span i{margin-right:4px}.hotel-filter-sidebar fieldset label small{margin-left:auto;color:#9aa2af;font-size:10px}.hotel-live-status{line-height:1.5}.hotel-live-status:has(.hotel-live-retry){display:flex;align-items:center;justify-content:center;gap:4px;flex-wrap:wrap}
@media(max-width:600px){#room-modal{align-items:flex-end}.hotel-home-room-modal{width:100%;max-width:none;border-radius:20px 20px 0 0;max-height:92vh;padding:20px 16px calc(18px + env(safe-area-inset-bottom))}.hotel-home-room-controls{grid-template-columns:1fr 1fr}.home-hotel-room-actions{bottom:calc(-18px - env(safe-area-inset-bottom));padding-bottom:calc(18px + env(safe-area-inset-bottom))}.hotel-live-status:has(.hotel-live-retry){padding:14px 10px}.hotel-live-retry{width:100%;margin:6px 0 0}.hotel-per-night{font-size:11px}}

/* Phase 6.1: keep the closed fixed mobile drawer out of hotel full-page capture/layout bounds without changing its open animation. */
.hotel-live-listing-page .mobile-nav-drawer:not(.open){visibility:hidden;pointer-events:none}
.hotel-live-listing-page .mobile-nav-drawer.open{visibility:visible;pointer-events:auto}

/* Phase 6.2 — live hotel room categories, rate plans and supplier policies */
.hotel-room-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 12px;padding:12px 14px;border:1px solid #e8ebf0;border-radius:12px;background:#fff}.hotel-room-filter-group{display:flex;gap:8px;flex-wrap:wrap}.hotel-room-filter-group button{height:38px;border:1px solid #dfe4eb;border-radius:9px;background:#fff;color:#4b5563;padding:0 14px;font:inherit;font-size:12px;font-weight:800;cursor:pointer}.hotel-room-filter-group button.active{background:var(--navy);border-color:var(--navy);color:#fff}.hotel-room-sort{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:800;color:#5f6875}.hotel-room-sort select{height:38px;border:1px solid #dfe4eb;border-radius:9px;background:#fff;padding:0 34px 0 11px;font:inherit;font-size:12px;color:#243047}.hotel-room-live-note{display:flex;align-items:flex-start;gap:8px;margin:-2px 0 14px;color:#667085;font-size:12px}.hotel-room-live-note i{color:#1f68c9;margin-top:1px}.hotel-rate-group{display:grid;grid-template-columns:minmax(250px,.9fr) minmax(0,1.55fr);gap:0;overflow:hidden}.hotel-rate-group>.hotel-room-info{padding:22px;border-right:1px solid #edf0f4;background:#fbfcfe}.hotel-room-title-line{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.hotel-room-title-line h3{margin:0 0 7px}.hotel-room-occupancy{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:#667085}.hotel-rate-count{flex:0 0 auto;border-radius:999px;background:#eef4ff;color:#2459a8;padding:5px 8px;font-size:10px;font-weight:900}.hotel-rate-plan-list{display:grid}.hotel-rate-plan-row{display:grid;grid-template-columns:minmax(0,1fr) 190px;gap:18px;padding:19px 20px;border-bottom:1px solid #edf0f4}.hotel-rate-plan-row:last-child{border-bottom:0}.hotel-rate-plan-copy{min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:8px}.hotel-rate-badges{display:flex;flex-wrap:wrap;gap:7px}.hotel-rate-badge{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:6px 9px;font-size:11px;font-weight:800}.hotel-rate-badge.meal{background:#f4f6f8;color:#3d4755}.hotel-rate-badge.refundable{background:#ecf8f1;color:#137a45}.hotel-rate-badge.nonrefundable{background:#fff1f1;color:#b33b3b}.hotel-rate-policy{font-size:13px;color:#243047;line-height:1.45}.hotel-room-promo{display:inline-flex;align-items:center;gap:6px;color:#166534;background:#f0fdf4;border:1px dashed #b7e4c7;border-radius:8px;padding:6px 8px;font-size:11px;font-weight:800}.hotel-rate-condition{display:block;color:#6b7280;line-height:1.45;max-width:620px}.hotel-rate-price{display:flex;flex-direction:column;align-items:flex-end;text-align:right}.hotel-rate-price>span{font-size:11px;color:#7b8492}.hotel-rate-price>strong{font-size:24px;color:var(--navy);margin-top:3px}.hotel-rate-price>small{font-size:10px;color:#7b8492;line-height:1.4;margin:4px 0 10px}.hotel-rate-price .choose-room-demo{width:100%;max-width:160px}.hotel-room-filter-empty{margin-top:0}.hotel-policy-status{display:flex;gap:11px;align-items:flex-start;border-radius:11px;padding:13px;margin-bottom:14px}.hotel-policy-status>i{margin-top:2px}.hotel-policy-status>div{display:flex;flex-direction:column;gap:3px}.hotel-policy-status strong{font-size:14px}.hotel-policy-status span{font-size:12px;line-height:1.45}.hotel-policy-status.is-refundable{background:#ecf8f1;color:#176c43}.hotel-policy-status.is-nonrefundable{background:#fff1f1;color:#9e3838}.hotel-policy-deadline{display:flex;gap:10px;align-items:center;border:1px solid #e7ebf0;border-radius:10px;padding:11px 12px;margin-bottom:14px}.hotel-policy-deadline i{color:#1f68c9}.hotel-policy-deadline span{display:flex;flex-direction:column;gap:2px}.hotel-policy-deadline strong{font-size:12px}.hotel-policy-deadline small{color:#6f7885}.hotel-policy-extra{margin-top:16px;border-top:1px solid #edf0f4;padding-top:14px}.hotel-policy-extra h3{display:flex;gap:7px;align-items:center;font-size:14px;margin:0 0 8px;color:#253046}.hotel-policy-extra h3 i{color:#1f68c9}.hotel-policy-extra ul{margin:0;padding-left:19px;display:grid;gap:6px;color:#596273;font-size:12px;line-height:1.5}.hotel-room-count.is-empty{color:#b33b3b}
@media(max-width:900px){.hotel-rate-group{grid-template-columns:1fr}.hotel-rate-group>.hotel-room-info{border-right:0;border-bottom:1px solid #edf0f4}.hotel-rate-plan-row{grid-template-columns:minmax(0,1fr) 170px}.hotel-room-toolbar{align-items:flex-start;flex-direction:column}.hotel-room-sort{width:100%;justify-content:space-between}.hotel-room-sort select{flex:1;max-width:260px}}
@media(max-width:600px){.hotel-room-toolbar{padding:10px}.hotel-room-filter-group{display:grid;grid-template-columns:1fr 1fr;width:100%}.hotel-room-filter-group button:first-child{grid-column:1/-1}.hotel-room-sort{display:grid;grid-template-columns:auto 1fr}.hotel-room-sort select{max-width:none;width:100%}.hotel-rate-group>.hotel-room-info{padding:16px}.hotel-room-title-line{flex-direction:column}.hotel-rate-plan-row{grid-template-columns:1fr;padding:16px;gap:12px}.hotel-rate-price{align-items:flex-start;text-align:left;border-top:1px dashed #e3e7ed;padding-top:12px}.hotel-rate-price .choose-room-demo{max-width:none;width:100%}.hotel-policy-dialog{max-height:84vh}.hotel-policy-table-wrap table{min-width:470px}}

/* Phase 6.3 — Hotel guest details, live room recheck and secure booking draft */
.hotel-draft-mode-banner{display:flex;align-items:flex-start;gap:13px;margin:0 0 18px;padding:14px 16px;border:1px solid #bdd9f6;border-radius:13px;background:#f3f8ff;color:#294b70}.hotel-draft-mode-banner>i{width:36px;height:36px;flex:0 0 36px;border-radius:10px;display:grid;place-items:center;background:#e2efff;color:#1d63ad}.hotel-draft-mode-banner>div{display:grid;gap:3px}.hotel-draft-mode-banner strong{font-size:14px;color:#173b63}.hotel-draft-mode-banner span{font-size:12px;line-height:1.5;color:#55708c}
.hotel-booking-stepper span.done{background:#eaf8f0;color:#177345}.hotel-booking-stepper span.done i{margin-right:5px}
.hotel-live-recheck{display:flex;align-items:center;gap:12px;margin-top:16px;padding:13px 14px;border:1px solid #dce5ef;border-radius:11px;background:#f8fbff;color:#3a516c}.hotel-live-recheck>div{display:grid;gap:2px}.hotel-live-recheck strong{font-size:13px}.hotel-live-recheck small{font-size:11px;color:#718094;line-height:1.45}.hotel-live-spinner{width:19px;height:19px;flex:0 0 19px;border:2px solid #bed0e2;border-top-color:#1e64bd;border-radius:50%;animation:hotelLiveSpin .85s linear infinite}.hotel-live-recheck.is-success{border-color:#bee5cd;background:#f1fbf5;color:#176d42}.hotel-live-recheck.is-success .hotel-live-spinner{animation:none;border:0;border-radius:50%;background:#1b9b59;position:relative}.hotel-live-recheck.is-success .hotel-live-spinner:after{content:"\f00c";font-family:"Font Awesome 6 Free";font-weight:900;color:#fff;position:absolute;inset:0;display:grid;place-items:center;font-size:10px}.hotel-live-recheck.is-warning{border-color:#efd49a;background:#fffaf0;color:#795516}.hotel-live-recheck.is-warning .hotel-live-spinner{animation:none;border:0;background:#e4a528;position:relative}.hotel-live-recheck.is-warning .hotel-live-spinner:after{content:"!";position:absolute;inset:0;display:grid;place-items:center;color:#fff;font-weight:900;font-size:12px}.hotel-live-recheck.is-error{border-color:#f2bec1;background:#fff5f5;color:#9c3439}.hotel-live-recheck.is-error .hotel-live-spinner{animation:none;border:0;background:#d84c54;position:relative}.hotel-live-recheck.is-error .hotel-live-spinner:after{content:"\f00d";font-family:"Font Awesome 6 Free";font-weight:900;color:#fff;position:absolute;inset:0;display:grid;place-items:center;font-size:10px}@keyframes hotelLiveSpin{to{transform:rotate(360deg)}}
.hotel-booking-room{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.hotel-booking-room>div:first-child{min-width:0}.hotel-booking-room-actions{display:flex;flex-direction:column;align-items:flex-end;gap:7px;flex:0 0 auto}.hotel-booking-room-actions .hotel-cancellation-link{margin:0}.hotel-booking-room-actions .hotel-rate-badge{white-space:nowrap}
.hotel-section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:14px}.hotel-section-heading>div>span{display:block;color:var(--red);font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.55px}.hotel-section-heading h2{font-size:23px;margin:4px 0 4px}.hotel-section-heading p{margin:0;color:#6d7786;font-size:12px;line-height:1.5}.hotel-section-heading>small{background:#f4f6f8;border-radius:999px;padding:7px 10px;color:#596273;font-weight:800;white-space:nowrap}
.hotel-guest-room-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}.hotel-guest-room-head h3{margin:0!important;font-size:16px}.hotel-guest-room-head>span{font-size:11px;color:#687282;background:#f4f6f8;border-radius:999px;padding:5px 8px;font-weight:800}.hotel-guest-row label span{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.hotel-guest-row label span em{font-style:normal;color:#697384;font-size:10px;font-weight:600}.lead-guest-badge{display:inline-flex;align-items:center;border-radius:999px;background:#fff0f1;color:var(--red);padding:3px 6px;font-size:8px;text-transform:uppercase;letter-spacing:.3px}
.hotel-contact-grid textarea{width:100%;min-height:92px;border:1px solid #cfd5dd;border-radius:7px;padding:11px 12px;resize:vertical;font:inherit;color:#1f2937;outline:0}.hotel-contact-grid textarea:focus{border-color:#8499b8;box-shadow:0 0 0 3px rgba(28,80,152,.07)}.hotel-contact-grid label>small{font-size:10px;font-weight:500;color:#7b8492}.hotel-contact-grid label span em{font-style:normal;font-weight:500;color:#8a93a1}
.hotel-secure-note{align-items:flex-start}.hotel-secure-note>i{width:40px;height:40px;flex:0 0 40px;border-radius:11px;display:grid;place-items:center;background:#eaf8f0}.hotel-secure-note strong{display:block;color:#263448}.hotel-secure-note span{line-height:1.5}
.hotel-price-card-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:6px}.hotel-price-card-head h2{margin:0}.hotel-price-card-head>span{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:6px 8px;font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.25px}.hotel-price-card-head>span.is-checking{background:#eef4ff;color:#275ca3}.hotel-price-card-head>span.is-verified{background:#eaf8f0;color:#177345}.hotel-price-card-head>span.is-changed{background:#fff4dc;color:#8a5d00}.hotel-price-card-head>span.is-error{background:#fff0f1;color:#ad3d43}.hotel-policy-accept{display:flex!important;flex-direction:row!important;align-items:flex-start!important;gap:8px;margin:12px 0 4px;padding:11px;border:1px solid #e4e8ee;border-radius:10px;background:#fafbfc;cursor:pointer}.hotel-policy-accept input{width:16px;height:16px;margin:2px 0 0;accent-color:var(--red);flex:0 0 16px}.hotel-policy-accept span{font-size:11px!important;line-height:1.45;color:#596273;font-weight:600!important}.hotel-booking-inline-message{margin-top:10px;border-radius:9px;padding:10px 11px;font-size:11px;font-weight:700;line-height:1.45}.hotel-booking-inline-message.is-error{background:#fff1f1;color:#a23b40}.hotel-booking-inline-message.is-success{background:#eaf8f0;color:#176d42}.hotel-booking-inline-message.is-info{background:#eef5ff;color:#315f97}.hotel-booking-price-card .primary-flow-btn:disabled{opacity:.5;cursor:not-allowed;filter:saturate(.5)}
.hotel-rate-change-modal{position:fixed;inset:0;z-index:590;display:grid;place-items:center;padding:20px}.hotel-rate-change-modal[hidden]{display:none!important}.hotel-rate-change-card{position:relative;z-index:1;width:min(520px,calc(100vw - 30px));background:#fff;border-radius:18px;padding:28px;box-shadow:0 28px 75px rgba(11,19,39,.3);text-align:center}.hotel-rate-change-icon{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:#fff3dd;color:#a76d00;margin:0 auto 12px;font-size:20px}.hotel-rate-change-card h2{font-size:25px;margin:0 0 7px;color:var(--navy)}.hotel-rate-change-card>p{margin:0 auto 18px;max-width:410px;color:#687282;font-size:13px;line-height:1.55}.hotel-rate-change-prices{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;background:#f8f9fb;border:1px solid #e7ebf0;border-radius:12px;padding:15px}.hotel-rate-change-prices>div{display:grid;gap:4px}.hotel-rate-change-prices span{font-size:10px;text-transform:uppercase;color:#7b8492;font-weight:800}.hotel-rate-change-prices del{font-size:19px;color:#8a93a1;font-weight:800}.hotel-rate-change-prices strong{font-size:22px;color:var(--red)}.hotel-rate-change-prices>i{color:#9aa3af}.hotel-rate-change-actions{display:flex;justify-content:center;gap:10px;margin-top:18px}.hotel-rate-change-actions .secondary-action,.hotel-rate-change-actions .primary-action{min-height:44px;display:inline-flex;align-items:center;justify-content:center;border-radius:8px;padding:0 16px;text-decoration:none;font-weight:800}.hotel-rate-change-actions .secondary-action{border:1px solid #dce1e7;color:#384354;background:#fff}.hotel-rate-change-actions .primary-action{border:0;background:var(--red);color:#fff;cursor:pointer}
@media(max-width:900px){.hotel-booking-room{align-items:flex-start}.hotel-section-heading{margin-bottom:12px}.hotel-contact-grid.form-grid.two{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.hotel-draft-mode-banner{padding:12px 13px;border-radius:11px}.hotel-draft-mode-banner span{font-size:11px}.hotel-booking-room{flex-direction:column}.hotel-booking-room-actions{width:100%;align-items:flex-start;padding-top:9px;border-top:1px dashed #e3e7ed}.hotel-section-heading{flex-direction:column;gap:9px}.hotel-section-heading>small{align-self:flex-start}.hotel-guest-room-head{align-items:flex-start;flex-direction:column}.hotel-contact-grid.form-grid.two{grid-template-columns:1fr}.hotel-rate-change-modal{align-items:flex-end;padding:0}.hotel-rate-change-card{width:100%;max-width:none;border-radius:20px 20px 0 0;padding:24px 17px calc(20px + env(safe-area-inset-bottom))}.hotel-rate-change-prices{grid-template-columns:1fr 24px 1fr;padding:12px 8px;gap:6px}.hotel-rate-change-prices strong{font-size:19px}.hotel-rate-change-prices del{font-size:17px}.hotel-rate-change-actions{display:grid;grid-template-columns:1fr}.hotel-live-recheck{align-items:flex-start}}
/* Phase 6.3 runtime-state aliases used by hotel booking JS */
.hotel-price-card-head>span.is-success{background:#eaf8f0;color:#177345}.hotel-price-card-head>span.is-warning{background:#fff4dc;color:#8a5d00}.hotel-booking-inline-message.error{background:#fff1f1;color:#a23b40}.hotel-booking-inline-message.success{background:#eaf8f0;color:#176d42}.hotel-booking-inline-message.info{background:#eef5ff;color:#315f97}

/* Phase 6.4 — Hotel final booking framework / confirmation / voucher / My Hotel Bookings */
.bookings-page{background:#f6f7fb}.bookings-shell{padding:36px 0 64px}.bookings-title{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:22px}.booking-page-kicker{display:block;font-size:12px;letter-spacing:.08em;text-transform:uppercase;font-weight:800;color:#ef2028;margin-bottom:5px}.bookings-title h1{margin:0 0 6px;font-size:30px;color:#101828}.bookings-title p{margin:0;color:#667085}.booking-tab-links{display:flex;gap:8px;padding:5px;background:#fff;border:1px solid #eaecf0;border-radius:12px}.booking-tab-links a{padding:9px 14px;border-radius:9px;text-decoration:none;color:#475467;font-weight:700;font-size:13px}.booking-tab-links a.active{background:#ef2028;color:#fff}.booking-empty-state{background:#fff;border:1px solid #eaecf0;border-radius:22px;padding:48px 24px;text-align:center}.booking-empty-state>span{width:58px;height:58px;border-radius:18px;display:grid;place-items:center;background:#fff1f1;color:#ef2028;font-size:24px;margin:0 auto 12px}.booking-empty-state h2{margin:0 0 7px;color:#101828}.booking-empty-state p{margin:0 auto 18px;max-width:540px;color:#667085}.hotel-booking-list-card .booking-list-icon{background:#eef7ff;color:#2268ad}.hotel-booking-list-card .booking-list-top>div>span:last-child{min-width:0}.hotel-booking-list-card .booking-list-top strong{white-space:normal}
.hotel-confirmation-address{display:flex;align-items:flex-start;gap:7px;color:#667085;margin:-4px 0 16px}.hotel-confirmation-address i{color:#ef2028;margin-top:2px}.hotel-confirmation-dates{display:grid;grid-template-columns:1fr 34px 1fr 1fr;gap:12px;align-items:center;border-top:1px solid #f2f4f7;border-bottom:1px solid #f2f4f7;padding:15px 0}.hotel-confirmation-dates>div{display:flex;flex-direction:column;gap:4px}.hotel-confirmation-dates>div span{font-size:11px;text-transform:uppercase;color:#98a2b3;letter-spacing:.04em}.hotel-confirmation-dates>div strong{font-size:14px;color:#101828}.hotel-confirmation-dates>i{text-align:center;color:#98a2b3}.hotel-confirmation-room{display:flex;justify-content:space-between;gap:14px;align-items:center;margin-top:15px;padding:14px;background:#f9fafb;border-radius:13px}.hotel-confirmation-room>span:first-child{display:flex;flex-direction:column;gap:3px}.hotel-confirmation-room small{color:#98a2b3;text-transform:uppercase;font-size:10px;letter-spacing:.05em}.hotel-confirmation-room strong{color:#101828}.hotel-confirmation-room em{font-style:normal;color:#667085;font-size:12px}.hotel-confirmation-contact{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px}.hotel-confirmation-contact>div{border:1px solid #f2f4f7;border-radius:12px;padding:11px;display:flex;flex-direction:column;gap:3px}.hotel-confirmation-contact span{font-size:11px;color:#98a2b3;text-transform:uppercase}.hotel-confirmation-contact strong{font-size:13px;color:#344054;word-break:break-word}
.hotel-voucher-stay,.hotel-voucher-room,.hotel-voucher-policy{border:1px solid #eaecf0;border-radius:12px;padding:14px}.hotel-voucher-stay h3{margin:0 0 5px;color:#101828}.hotel-voucher-stay>p{margin:0 0 13px;color:#667085}.hotel-voucher-stay>div{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.hotel-voucher-stay span{display:flex;flex-direction:column;gap:3px}.hotel-voucher-stay small{color:#98a2b3;text-transform:uppercase;font-size:10px}.hotel-voucher-room{display:flex;flex-direction:column;gap:4px}.hotel-voucher-room>span,.hotel-voucher-room>small{color:#667085}.hotel-voucher-policy p{margin:0;color:#667085;line-height:1.55}.hotel-voucher-policy p+p{margin-top:8px}
@media(max-width:768px){.bookings-title{align-items:flex-start;flex-direction:column}.booking-tab-links{width:100%}.booking-tab-links a{flex:1;text-align:center}.hotel-confirmation-dates{grid-template-columns:1fr 24px 1fr}.hotel-confirmation-dates>div:last-child{grid-column:1/-1;border-top:1px solid #f2f4f7;padding-top:10px}.hotel-confirmation-contact{grid-template-columns:1fr}.hotel-voucher-stay>div{grid-template-columns:1fr 1fr}.hotel-voucher-stay>div span:last-child{grid-column:1/-1}}
@media(max-width:480px){.bookings-shell{padding:20px 0 44px}.bookings-title h1{font-size:26px}.hotel-confirmation-dates{grid-template-columns:1fr}.hotel-confirmation-dates>i{transform:rotate(90deg)}.hotel-confirmation-dates>div:last-child{grid-column:auto}.hotel-confirmation-room{align-items:flex-start;flex-direction:column}.hotel-voucher-stay>div{grid-template-columns:1fr}.hotel-voucher-stay>div span:last-child{grid-column:auto}}
@media print{.hotel-voucher-page .hotel-voucher-stay,.hotel-voucher-page .hotel-voucher-room,.hotel-voucher-page .hotel-voucher-policy{break-inside:avoid}}

/* Phase 7.1 — live package search/listing states. */
.package-live-status{min-height:92px;display:flex;align-items:center;gap:14px;background:#fff;border:1px solid #e7e9ed;border-radius:10px;padding:20px;margin-bottom:14px;color:#11182f;box-shadow:0 5px 14px rgba(17,24,39,.05)}
.package-live-status[hidden]{display:none!important}.package-live-status strong{display:block;font-size:15px;margin-bottom:4px}.package-live-status small{display:block;color:#737b88;font-size:12px;line-height:1.5}.package-live-status.error{border-color:#f3c5c8;background:#fff8f8}.package-live-status.error strong{color:#c91c26}.package-live-spinner{width:26px;height:26px;border:3px solid #f1d6d8;border-top-color:#ef2028;border-radius:50%;flex:0 0 auto;animation:packageLiveSpin .8s linear infinite}.package-live-retry{margin-left:auto;height:38px;border:0;border-radius:7px;background:#ef2028;color:#fff;font-weight:800;padding:0 16px;cursor:pointer;white-space:nowrap}@keyframes packageLiveSpin{to{transform:rotate(360deg)}}
.package-live-offer-badge{position:absolute;left:10px;top:10px;z-index:2;background:#ef2028;color:#fff;border-radius:999px;padding:7px 10px;font-size:11px;font-weight:900;box-shadow:0 4px 12px rgba(239,32,40,.24)}
.package-destination-item span{display:flex;min-width:0;flex:1;align-items:center;justify-content:space-between;gap:12px}.package-destination-item small{font-size:10px;color:#89919d;font-weight:600;white-space:nowrap}.package-destination-item.active small,.package-destination-item:hover small{color:inherit}
@media(max-width:600px){.package-live-status{min-height:84px;padding:15px 13px;margin-bottom:10px}.package-live-status strong{font-size:14px}.package-live-retry{margin-left:0;align-self:stretch}.package-live-status.error{align-items:flex-start;flex-wrap:wrap}.package-live-status.error>div{flex:1;min-width:180px}.package-live-status.error .package-live-retry{width:100%}.package-live-offer-badge{left:9px;top:9px}}

/* Phase 7.2 — live package detail normalization and responsive polish */
.package-detail-theme-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.package-detail-theme-row span{display:inline-flex;align-items:center;min-height:28px;padding:0 10px;border-radius:999px;background:#fff;border:1px solid #eadfe1;color:#5c2430;font-size:11px;font-weight:800}.package-hero-cta{margin-top:12px;min-width:180px;justify-content:center;text-decoration:none}.package-service-strip{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px;padding-top:16px;border-top:1px solid #edf0f4}.package-service-strip span{display:inline-flex;align-items:center;gap:7px;background:#f8f9fb;border:1px solid #e8ebef;border-radius:9px;padding:8px 10px;color:#3d4758;font-size:11px;font-weight:700}.package-service-strip i{color:var(--red)}
.package-itinerary-live .itinerary-day-copy{min-width:0}.itinerary-description{color:#626b7b;font-size:13px;line-height:1.65}.itinerary-description :first-child{margin-top:0}.itinerary-description :last-child{margin-bottom:0}.itinerary-service-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:13px}.itinerary-service-list>div{display:grid;grid-template-columns:30px minmax(0,1fr);gap:9px;align-items:start;padding:10px;border:1px solid #e7eaef;border-radius:10px;background:#fbfcfd}.itinerary-service-list>div>i{width:30px;height:30px;border-radius:8px;background:#fff0f1;color:var(--red);display:grid;place-items:center}.itinerary-service-list span{display:flex;flex-direction:column;gap:3px;min-width:0}.itinerary-service-list strong{font-size:12px;color:#20293a}.itinerary-service-list small{font-size:10px;color:#778191;line-height:1.45;overflow-wrap:anywhere}
.detail-empty-state{display:flex;gap:12px;align-items:flex-start;padding:16px;border:1px dashed #d9dee6;border-radius:12px;background:#fafbfc}.detail-empty-state>i{width:38px;height:38px;border-radius:10px;background:#fff0f1;color:var(--red);display:grid;place-items:center;flex:0 0 auto}.detail-empty-state strong{display:block;font-size:14px;color:#263044;margin-bottom:4px}.detail-empty-state p{margin:0;color:#6f7887;font-size:12px;line-height:1.55}
.package-hotel-live-grid article>div{display:flex;flex-direction:column;gap:5px}.package-hotel-live-grid article>div>small{display:block;color:#727c8c;font-size:10px;line-height:1.45}.package-hotel-live-grid p i{color:var(--red);margin-right:4px}.package-hotel-stars{color:#f6a300;font-size:12px;letter-spacing:1px;line-height:1}
.package-experience-columns{display:grid;grid-template-columns:1fr 1fr;gap:18px}.package-experience-columns>div>h3{display:flex;align-items:center;gap:8px;font-size:16px;margin:0 0 11px;color:#20293a}.package-experience-columns>div>h3 i{color:var(--red)}.package-service-detail-list{display:grid;gap:9px}.package-service-detail-list article{display:grid;grid-template-columns:34px minmax(0,1fr);gap:10px;padding:12px;border:1px solid #e8ebef;border-radius:11px;background:#fbfcfd}.service-detail-icon{width:34px;height:34px;border-radius:9px;background:#fff0f1;color:var(--red);display:grid;place-items:center}.package-service-detail-list article>div{display:flex;flex-direction:column;gap:4px;min-width:0}.package-service-detail-list strong{font-size:12px;color:#263044}.package-service-detail-list small{font-size:10px;color:#778191;overflow-wrap:anywhere}.package-service-detail-list p{font-size:11px;line-height:1.5;color:#636d7d;margin:2px 0 0}.package-subsection-title{font-size:14px;margin:20px 0 8px;color:#263044}.check-list.compact{gap:6px}.check-list.compact li{font-size:12px}
.package-policy-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.package-policy-grid article{border:1px solid #e7eaef;border-radius:12px;padding:14px;background:#fbfcfd;min-width:0}.package-policy-grid h3{display:flex;gap:8px;align-items:center;margin:0 0 9px;font-size:14px;color:#243047}.package-policy-grid h3 i{color:var(--red)}.package-policy-grid p{margin:0;color:#606b7c;font-size:12px;line-height:1.55}.package-policy-grid ul{margin:0;padding-left:18px;color:#606b7c;font-size:11px;line-height:1.6}.package-policy-grid li+li{margin-top:5px}.query-package-mini{display:flex;flex-direction:column;gap:3px;padding:11px 12px;border:1px solid #e9ebef;background:#fafbfc;border-radius:10px;margin:0 0 13px}.query-package-mini strong{font-size:12px;color:#263044;line-height:1.35}.query-package-mini span{font-size:10px;color:#778191}.query-traveller-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.package-mobile-cta{display:none}.package-query-date{cursor:pointer}
@media(max-width:1000px){.detail-content-grid{grid-template-columns:minmax(0,1fr) 300px}.package-experience-columns{grid-template-columns:1fr}.package-policy-grid{grid-template-columns:1fr 1fr}}
@media(max-width:800px){.detail-content-grid{grid-template-columns:1fr}.query-sidebar{position:static;top:auto}.package-detail-page{padding-bottom:78px}.package-mobile-cta{position:fixed;left:0;right:0;bottom:0;z-index:220;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px max(14px,env(safe-area-inset-left)) calc(10px + env(safe-area-inset-bottom)) max(14px,env(safe-area-inset-right));background:#fff;border-top:1px solid #e6e8ec;box-shadow:0 -10px 28px rgba(17,24,39,.1)}.package-mobile-cta>div{display:flex;flex-direction:column;min-width:0}.package-mobile-cta small{font-size:9px;color:#7b8492}.package-mobile-cta strong{font-size:16px;color:var(--navy);white-space:nowrap}.package-mobile-cta .primary-action{min-height:42px;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;padding:0 18px}.itinerary-service-list{grid-template-columns:1fr}.package-experience-columns,.package-policy-grid{grid-template-columns:1fr}.query-sidebar{scroll-margin-top:100px}.detail-tabs.package-detail-tabs .page-container{overflow:auto;justify-content:flex-start;scrollbar-width:none}.detail-tabs.package-detail-tabs .page-container::-webkit-scrollbar{display:none}.detail-tabs.package-detail-tabs button{flex:0 0 auto;white-space:nowrap}}
@media(max-width:600px){.package-detail-hero{padding:22px 0 16px}.package-detail-copy h1{font-size:28px;line-height:1.15}.detail-subline{gap:9px 13px}.detail-subline span{font-size:11px}.package-detail-theme-row{margin-top:10px}.package-detail-priceplain strong{font-size:27px}.package-hero-cta{display:none}.detail-feature-grid{grid-template-columns:1fr 1fr}.detail-feature-grid>div{padding:12px}.package-service-strip{gap:6px}.package-service-strip span{font-size:10px;padding:7px 8px}.package-policy-grid{grid-template-columns:1fr}.package-experience-columns{gap:14px}.query-traveller-grid{grid-template-columns:1fr 1fr 1fr;gap:6px}.query-traveller-grid label{font-size:10px}.query-traveller-grid select{padding-left:8px;padding-right:8px}.package-mobile-cta strong{font-size:15px}.package-mobile-cta .primary-action{padding:0 15px}.package-gallery-mosaic{min-height:0}}
@media(max-width:380px){.detail-feature-grid{grid-template-columns:1fr}.query-traveller-grid{grid-template-columns:1fr}.package-mobile-cta small{display:none}}

/* Phase 7.3 — package query/enquiry only */
.package-query-card{scrollbar-width:thin;scrollbar-color:#cfd5df transparent}
.package-query-pair{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.package-query-travellers{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}
.package-query-card .optional-label{font-size:10px;font-weight:500;color:#8992a1;margin-left:3px}
.package-query-money{display:grid;grid-template-columns:34px 1fr;border:1px solid #dfe3ea;border-radius:9px;overflow:hidden;background:#fff}
.package-query-money>span{display:grid;place-items:center;background:#f5f7fa;color:#667085;font-weight:800;border-right:1px solid #e2e6ec}
.package-query-money input{border:0!important;border-radius:0!important;min-width:0}
.package-query-addons{margin:0;border:1px solid #e4e7ec;border-radius:11px;padding:11px;display:grid;gap:8px}
.package-query-addons legend{padding:0 5px;font-size:11px;font-weight:800;color:#3d4759}
.package-query-addons legend span{font-size:10px;font-weight:500;color:#8992a1}
.package-query-addons label{display:grid;grid-template-columns:17px 1fr;align-items:start;gap:8px;font-weight:500;line-height:1.35;color:#5f6979}
.package-query-addons input{width:16px!important;height:16px;margin:1px 0 0;padding:0!important;accent-color:var(--red)}
.package-query-whatsapp{display:grid!important;grid-template-columns:18px 1fr;align-items:start;gap:9px!important;border:1px solid #dceee5;background:#f5fbf8;border-radius:10px;padding:10px!important}
.package-query-whatsapp input{width:16px!important;height:16px;margin:2px 0 0;padding:0!important;accent-color:#16a05d}
.package-query-whatsapp span{display:flex;flex-direction:column;gap:2px}.package-query-whatsapp strong{font-size:11px;color:#263244}.package-query-whatsapp small{font-size:10px;font-weight:400;color:#788392;line-height:1.4}
.query-card input.query-field-error,.query-card select.query-field-error,.query-card textarea.query-field-error{border-color:#d92d20!important;box-shadow:0 0 0 2px rgba(217,45,32,.08)}
.package-query-confirmation{border:1px solid #cfe9db;background:linear-gradient(180deg,#f7fcf9,#fff);border-radius:14px;padding:20px 16px;text-align:center}
.package-query-success-icon{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;margin:0 auto 10px;background:#e7f8ee;color:#129654;font-size:25px}
.package-query-confirmation>small{font-size:10px;text-transform:uppercase;letter-spacing:.08em;font-weight:800;color:#129654}
.package-query-confirmation h3{font-size:19px;line-height:1.25;margin:6px 0;color:#1c2737}
.package-query-confirmation>p{font-size:12px!important;line-height:1.55;color:#647083!important;margin:0 0 13px!important}
.package-query-reference{display:flex;flex-direction:column;gap:3px;padding:11px;border:1px dashed #b9c8bf;border-radius:10px;background:#fff;margin-bottom:13px}
.package-query-reference span{font-size:9px;text-transform:uppercase;letter-spacing:.08em;color:#7e8997}.package-query-reference strong{font-size:17px;letter-spacing:.04em;color:#162238}
.package-query-confirmation ul{text-align:left;margin:0 0 14px;padding-left:18px;color:#657182;font-size:11px;line-height:1.6}
.package-query-confirmation .secondary-action{width:100%;min-height:42px}
@media(min-width:1101px){.package-query-card{max-height:calc(100vh - 175px);overflow:auto;padding-right:17px}}
@media(max-width:600px){.package-query-pair{grid-template-columns:1fr}.package-query-travellers{grid-template-columns:repeat(2,minmax(0,1fr))}.package-query-confirmation{padding:18px 14px}}

/* Phase 7.4 — package query tracking / My Queries */
.booking-status.info{background:#eff8ff;color:#175cd3}.booking-status.muted{background:#f2f4f7;color:#475467}
.inner-account-link{display:inline-flex;align-items:center;gap:7px;color:#344054;text-decoration:none;font-weight:700;font-size:13px}.inner-account-link i{color:var(--red)}
.compact-action{min-height:38px;padding:0 13px;display:inline-flex;align-items:center;justify-content:center;text-decoration:none}
.package-query-list{display:grid;gap:14px}.package-query-list-card{background:#fff;border:1px solid #eaecf0;border-radius:18px;padding:18px 20px;box-shadow:0 7px 24px rgba(15,23,42,.04)}.package-query-list-top{display:flex;justify-content:space-between;gap:18px;align-items:center}.package-query-list-title{display:flex;align-items:center;gap:12px;min-width:0}.package-query-list-title>span:last-child{display:flex;flex-direction:column;gap:3px;min-width:0}.package-query-list-title strong{color:#101828;line-height:1.35}.package-query-list-title small{color:#667085;line-height:1.4}.package-query-meta{margin-top:14px}.package-query-assigned{display:flex;align-items:center;gap:10px;margin-top:12px;padding:10px 12px;border-radius:12px;background:#f8fafc;border:1px solid #eef2f6}.package-query-assigned>i{color:#ef2028}.package-query-assigned span{display:flex;flex-direction:column;gap:2px}.package-query-assigned small{color:#98a2b3;font-size:10px;text-transform:uppercase;letter-spacing:.04em}.package-query-assigned strong{font-size:13px;color:#344054}
.package-query-hero .confirmation-status-icon{background:#fff1f1;color:#ef2028}.package-query-hero.success .confirmation-status-icon{background:#ecfdf3;color:#079455}.package-query-hero.info .confirmation-status-icon{background:#eff8ff;color:#175cd3}.package-query-hero.warning .confirmation-status-icon,.package-query-hero.pending .confirmation-status-icon{background:#fffaeb;color:#dc6803}.package-query-hero.muted .confirmation-status-icon{background:#f2f4f7;color:#475467}
.package-query-detail-summary,.package-query-contact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.package-query-detail-summary>div,.package-query-contact-grid>div{border:1px solid #f0f2f5;border-radius:12px;padding:13px;display:flex;flex-direction:column;gap:4px}.package-query-detail-summary span,.package-query-contact-grid span{font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:#98a2b3}.package-query-detail-summary strong,.package-query-contact-grid strong{font-size:13px;color:#344054;word-break:break-word}
.package-query-preference-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.package-query-preference-grid>div{display:flex;align-items:flex-start;gap:10px;border:1px solid #f0f2f5;border-radius:12px;padding:12px}.package-query-preference-grid i{width:32px;height:32px;border-radius:9px;background:#fff1f1;color:#ef2028;display:grid;place-items:center;flex:0 0 auto}.package-query-preference-grid span{display:flex;flex-direction:column;gap:2px;min-width:0}.package-query-preference-grid small{font-size:10px;color:#98a2b3}.package-query-preference-grid strong{font-size:12px;color:#344054;line-height:1.4}.package-query-detail-addons,.package-query-notes{margin-top:14px;padding-top:14px;border-top:1px solid #f2f4f7}.package-query-detail-addons>strong,.package-query-notes>strong{font-size:12px;color:#344054}.package-query-detail-addons>div{display:flex;gap:7px;flex-wrap:wrap;margin-top:8px}.package-query-detail-addons span{padding:6px 9px;border-radius:999px;background:#fff5f5;color:#c91c26;font-size:11px;font-weight:700}.package-query-notes p{margin:7px 0 0;color:#667085;font-size:13px;line-height:1.55}
.package-query-status-card .secondary-action{width:100%;margin-top:13px;display:flex;align-items:center;justify-content:center;gap:7px}.package-query-current-status{display:flex;flex-direction:column;gap:9px;align-items:flex-start}.package-query-current-status small{color:#98a2b3;font-size:11px;line-height:1.4}.package-query-agent{display:flex;gap:11px;align-items:center;padding:11px;border-radius:12px;background:#f8fafc;border:1px solid #eef2f6}.package-query-agent>span{width:38px;height:38px;border-radius:12px;background:#fff1f1;color:#ef2028;display:grid;place-items:center}.package-query-agent>div{display:flex;flex-direction:column;gap:2px}.package-query-agent strong{font-size:13px;color:#344054}.package-query-agent small{font-size:10px;color:#98a2b3}.package-query-contact-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}.package-query-contact-actions a{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:40px;text-decoration:none}.package-query-contact-actions .full{grid-column:1/-1}.package-query-safety{display:flex!important;gap:11px;align-items:flex-start}.package-query-safety>i{color:#079455;font-size:18px;margin-top:2px}.package-query-safety strong{font-size:13px;color:#344054}.package-query-safety p{margin:3px 0 0;color:#667085;font-size:11px;line-height:1.5}.package-query-not-found{margin-top:10px}
.package-query-success-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:8px}.package-query-success-actions a{min-height:42px;display:flex;align-items:center;justify-content:center;text-decoration:none}.text-action{border:0;background:transparent;color:#ef2028;font-weight:700;cursor:pointer;padding:7px 0;width:100%}
@media(max-width:768px){.package-query-list-top{align-items:flex-start;flex-direction:column}.package-query-detail-summary,.package-query-contact-grid,.package-query-preference-grid{grid-template-columns:1fr}.package-query-success-actions{grid-template-columns:1fr}.package-query-detail-grid{grid-template-columns:1fr}.package-query-list-card{padding:15px}.package-query-meta{grid-template-columns:1fr 1fr}.inner-account-link{display:none}}
@media(max-width:480px){.package-query-meta{grid-template-columns:1fr}.package-query-contact-actions{grid-template-columns:1fr}.package-query-contact-actions .full{grid-column:auto}}

/* Phase 8 — unified client My Account / My Trips & Queries */
.account-dashboard-page{background:#f6f7fb;color:#101828}.account-shell{padding:34px 0 64px}.account-login-required{max-width:720px;margin:55px auto;background:#fff;border:1px solid #eaecf0;border-radius:24px;padding:54px 28px;text-align:center;box-shadow:0 12px 36px rgba(15,23,42,.06)}.account-login-required>span{width:64px;height:64px;margin:0 auto 14px;border-radius:20px;display:grid;place-items:center;background:#fff1f1;color:#ef2028;font-size:27px}.account-login-required h1{margin:0 0 8px;font-size:30px}.account-login-required p{margin:0 auto 20px;max-width:520px;color:#667085;line-height:1.55}.account-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:22px}.account-heading h1{margin:0 0 6px;font-size:32px}.account-heading p{margin:0;color:#667085}.account-layout{display:grid;grid-template-columns:248px minmax(0,1fr);gap:22px;align-items:start}.account-sidebar{position:sticky;top:92px;background:#fff;border:1px solid #eaecf0;border-radius:20px;padding:14px;box-shadow:0 8px 28px rgba(15,23,42,.045)}.account-profile-mini{display:flex;align-items:center;gap:11px;padding:8px 7px 16px;border-bottom:1px solid #f2f4f7}.account-avatar{flex:0 0 auto;width:44px;height:44px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(135deg,#ef2028,#8f1b53);color:#fff;font-size:18px;font-weight:800}.account-profile-mini>div{display:flex;min-width:0;flex-direction:column;gap:3px}.account-profile-mini strong{font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.account-profile-mini small{font-size:11px;color:#667085;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.account-nav{display:grid;gap:4px;padding:12px 0}.account-nav button{width:100%;display:grid;grid-template-columns:22px minmax(0,1fr) auto;align-items:center;gap:8px;border:0;background:transparent;border-radius:11px;padding:11px 10px;text-align:left;color:#475467;font-weight:700;cursor:pointer}.account-nav button i{color:#98a2b3}.account-nav button b{min-width:22px;height:22px;padding:0 6px;border-radius:999px;display:grid;place-items:center;background:#f2f4f7;color:#667085;font-size:10px}.account-nav button:hover,.account-nav button.active{background:#fff1f1;color:#d71920}.account-nav button.active i{color:#ef2028}.account-nav button.active b{background:#fff;color:#ef2028}.account-sidebar-links{display:grid;gap:2px;padding:10px 0;border-top:1px solid #f2f4f7}.account-sidebar-links a{display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:9px;text-decoration:none;color:#667085;font-size:12px;font-weight:600}.account-sidebar-links a:hover{background:#f8fafc;color:#101828}.account-sidebar-links i{width:16px;color:#98a2b3}.account-logout{width:100%;display:flex;align-items:center;gap:8px;border:0;border-top:1px solid #f2f4f7;background:transparent;color:#b42318;padding:13px 10px 3px;margin-top:3px;font-weight:700;cursor:pointer}.account-content{min-width:0}.account-panel{min-width:0}.account-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:20px}.account-stat-grid article{display:flex;align-items:center;gap:13px;min-width:0;background:#fff;border:1px solid #eaecf0;border-radius:17px;padding:17px;box-shadow:0 7px 22px rgba(15,23,42,.035)}.account-stat-icon{width:46px;height:46px;flex:0 0 auto;border-radius:14px;display:grid;place-items:center;font-size:18px}.account-stat-icon.flight{background:#fff1f1;color:#ef2028}.account-stat-icon.hotel{background:#eef7ff;color:#2268ad}.account-stat-icon.query{background:#f4f0ff;color:#6941c6}.account-stat-icon.confirmed{background:#ecfdf3;color:#079455}.account-stat-grid article>div{display:flex;min-width:0;flex-direction:column;gap:2px}.account-stat-grid small{font-size:11px;color:#667085}.account-stat-grid strong{font-size:25px;line-height:1.15}.account-stat-grid a,.account-stat-grid article>div>span{font-size:11px;color:#667085;text-decoration:none}.account-stat-grid a{color:#ef2028;font-weight:700}.account-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin:26px 0 12px}.account-section-head.major{margin-top:0}.account-section-head h2{margin:0 0 4px;font-size:21px}.account-section-head p{margin:0;color:#667085;font-size:13px}.account-section-head .text-action{border:0;background:transparent;color:#ef2028;font-weight:700;cursor:pointer}.account-activity-list,.account-query-preview{display:grid;gap:10px}.account-activity-row{display:grid;grid-template-columns:48px minmax(0,1fr) 110px auto 16px;align-items:center;gap:12px;background:#fff;border:1px solid #eaecf0;border-radius:15px;padding:13px 15px;text-decoration:none;color:inherit}.account-activity-row:hover{border-color:#f8b4b7;box-shadow:0 8px 24px rgba(15,23,42,.045)}.account-activity-icon{width:42px;height:42px;border-radius:13px;display:grid;place-items:center}.account-activity-icon.flight{background:#fff1f1;color:#ef2028}.account-activity-icon.hotel{background:#eef7ff;color:#2268ad}.account-activity-main{display:flex;min-width:0;flex-direction:column;gap:3px}.account-activity-main strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.account-activity-main small{color:#667085;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.account-activity-date{display:flex;flex-direction:column;gap:3px}.account-activity-date small{font-size:10px;text-transform:uppercase;color:#98a2b3}.account-activity-date strong{font-size:12px}.account-activity-row>i{color:#98a2b3}.account-query-preview a{display:flex;align-items:center;justify-content:space-between;gap:14px;background:#fff;border:1px solid #eaecf0;border-radius:14px;padding:13px 15px;text-decoration:none;color:inherit}.account-query-preview a>span:first-child{display:flex;min-width:0;flex-direction:column;gap:3px}.account-query-preview strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.account-query-preview small{color:#667085}.account-empty-inline{display:flex;align-items:center;gap:14px;background:#fff;border:1px dashed #d0d5dd;border-radius:15px;padding:18px}.account-empty-inline>i{font-size:22px;color:#ef2028}.account-empty-inline>div:nth-child(2){display:flex;min-width:0;flex:1;flex-direction:column;gap:3px}.account-empty-inline span{font-size:12px;color:#667085}.account-empty-inline>div:last-child{display:flex;gap:8px}.account-empty-inline a{color:#ef2028;text-decoration:none;font-weight:700;font-size:12px}.account-quick-actions{display:flex;gap:8px}.account-quick-actions a{padding:9px 12px;border:1px solid #d0d5dd;border-radius:10px;text-decoration:none;color:#344054;background:#fff;font-weight:700;font-size:12px}.account-trip-filter{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:14px}.account-trip-filter button{border:1px solid #d0d5dd;background:#fff;color:#475467;border-radius:999px;padding:8px 11px;font-weight:700;cursor:pointer}.account-trip-filter button b{font-size:10px;color:#98a2b3}.account-trip-filter button.active{background:#ef2028;border-color:#ef2028;color:#fff}.account-trip-filter button.active b{color:#fff}.account-trip-list{display:grid;gap:13px}.account-trip-card{background:#fff;border:1px solid #eaecf0;border-radius:18px;padding:17px 18px;box-shadow:0 7px 24px rgba(15,23,42,.035)}.account-trip-card[hidden]{display:none!important}.account-trip-card-head{display:flex;align-items:center;justify-content:space-between;gap:16px}.account-trip-card-head>div{display:flex;align-items:center;gap:11px;min-width:0}.account-trip-card-head>div>span:last-child{display:flex;min-width:0;flex-direction:column;gap:3px}.account-trip-card-head strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.account-trip-card-head small{color:#667085}.account-trip-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:14px 0;padding:14px 0;border-top:1px solid #f2f4f7;border-bottom:1px solid #f2f4f7}.account-trip-meta>div{display:flex;flex-direction:column;gap:3px}.account-trip-meta span{font-size:10px;text-transform:uppercase;letter-spacing:.04em;color:#98a2b3}.account-trip-meta strong{font-size:13px;word-break:break-word}.account-trip-actions{display:flex;justify-content:flex-end;gap:14px}.account-trip-actions a{display:inline-flex;align-items:center;gap:6px;color:#ef2028;text-decoration:none;font-weight:700;font-size:12px}.account-trip-actions a:last-child{color:#667085}.account-filter-empty{padding:30px;text-align:center;color:#667085}.account-query-status-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:14px}.account-query-status-grid>div{background:#fff;border:1px solid #eaecf0;border-radius:14px;padding:14px;display:flex;align-items:center;justify-content:space-between}.account-query-status-grid span{color:#667085;font-size:12px}.account-query-status-grid strong{font-size:21px}.account-profile-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,.8fr);gap:18px}.account-profile-card{background:#fff;border:1px solid #eaecf0;border-radius:19px;padding:20px;box-shadow:0 7px 24px rgba(15,23,42,.035)}.account-card-title{display:flex;align-items:center;gap:11px;margin-bottom:18px}.account-card-title>span{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:#fff1f1;color:#ef2028}.account-card-title h3{margin:0 0 3px;font-size:17px}.account-card-title p{margin:0;color:#667085;font-size:12px}.account-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin-bottom:14px}.account-form-grid label{display:flex;flex-direction:column;gap:6px}.account-form-grid label>span{font-size:11px;font-weight:700;color:#475467}.account-form-grid input{height:44px;border:1px solid #d0d5dd;border-radius:11px;padding:0 12px;font:inherit;color:#101828;background:#fff}.account-form-grid input:focus{outline:0;border-color:#f97074;box-shadow:0 0 0 3px rgba(239,32,40,.08)}.account-phone-field{grid-column:1/-1}.account-phone-field>div{display:grid;grid-template-columns:88px minmax(0,1fr);gap:8px}.account-form-message{margin-bottom:12px;border-radius:10px;padding:10px 12px;font-size:12px}.account-form-message.success{background:#ecfdf3;color:#067647}.account-form-message.error{background:#fef3f2;color:#b42318}.account-traveller-list{display:grid;gap:8px}.account-traveller-list>div{display:flex;align-items:center;gap:10px;padding:10px;border:1px solid #f2f4f7;border-radius:12px}.account-traveller-avatar{width:36px;height:36px;flex:0 0 auto;border-radius:11px;background:#f8fafc;color:#667085;display:grid;place-items:center}.account-traveller-list>div>span:last-child{display:flex;min-width:0;flex-direction:column;gap:2px}.account-traveller-list strong{font-size:13px}.account-traveller-list small{font-size:11px;color:#667085;white-space:normal}.account-profile-empty{padding:26px 14px;text-align:center;color:#667085;background:#f8fafc;border-radius:12px}.account-privacy-note{display:flex;gap:8px;align-items:flex-start;margin-top:13px;padding:10px 11px;border-radius:11px;background:#f8fafc;color:#667085;font-size:11px;line-height:1.45}.account-privacy-note i{margin-top:1px;color:#475467}.account-query-list{margin-top:12px}
@media(max-width:1100px){.account-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.account-profile-grid{grid-template-columns:1fr}.account-activity-row{grid-template-columns:48px minmax(0,1fr) 100px auto}.account-activity-row>i{display:none}}
@media(max-width:900px){.account-layout{grid-template-columns:1fr}.account-sidebar{position:static;padding:12px}.account-profile-mini,.account-sidebar-links,.account-logout{display:none}.account-nav{display:flex;overflow-x:auto;padding:0;gap:7px;scrollbar-width:none}.account-nav::-webkit-scrollbar{display:none}.account-nav button{flex:0 0 auto;width:auto;grid-template-columns:18px auto auto;border:1px solid #eaecf0;padding:9px 11px}.account-heading{align-items:flex-start}.account-activity-row{grid-template-columns:46px minmax(0,1fr) auto}.account-activity-date{display:none}}
@media(max-width:768px){.account-shell{padding:24px 0 48px}.account-heading{flex-direction:column}.account-heading h1{font-size:28px}.account-stat-grid{grid-template-columns:1fr 1fr}.account-section-head.major{align-items:flex-start;flex-direction:column}.account-trip-card-head{align-items:flex-start;flex-direction:column}.account-trip-meta{grid-template-columns:1fr 1fr}.account-query-status-grid{grid-template-columns:1fr 1fr 1fr}.account-form-grid{grid-template-columns:1fr}.account-phone-field{grid-column:auto}}
@media(max-width:480px){.account-shell{padding:18px 0 40px}.account-heading h1{font-size:25px}.account-heading .secondary-action{width:100%;justify-content:center}.account-sidebar{margin:0 -2px}.account-nav button{padding:8px 10px}.account-nav button span{font-size:12px}.account-stat-grid{gap:9px}.account-stat-grid article{align-items:flex-start;padding:13px;gap:10px}.account-stat-icon{width:38px;height:38px;border-radius:11px}.account-stat-grid strong{font-size:21px}.account-section-head{align-items:flex-start}.account-activity-row{grid-template-columns:42px minmax(0,1fr);padding:12px}.account-activity-row .booking-status{grid-column:2;justify-self:start}.account-activity-icon{width:38px;height:38px}.account-query-preview a{align-items:flex-start;flex-direction:column}.account-empty-inline{align-items:flex-start;flex-wrap:wrap}.account-empty-inline>div:last-child{width:100%;padding-left:36px}.account-trip-meta{grid-template-columns:1fr}.account-trip-actions{justify-content:space-between}.account-query-status-grid{grid-template-columns:1fr}.account-profile-card{padding:16px}.account-phone-field>div{grid-template-columns:78px minmax(0,1fr)}.account-login-required{margin:28px auto;padding:36px 18px}.account-login-required h1{font-size:25px}}
.account-header-link{text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:7px}.ts-auth-status[href]{text-decoration:none;cursor:pointer}
@media(max-width:900px){.account-layout{grid-template-columns:minmax(0,1fr);min-width:0}.account-sidebar,.account-content,.account-nav{min-width:0;max-width:100%}.account-sidebar{width:auto}.account-nav{width:100%}}

/* Phase 9.1 — unified B2B Agent Dashboard */
.agent-dashboard-page{background:#f7f8fb}.agent-dashboard-shell{padding:30px 0 58px;min-height:70vh}.agent-dashboard-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:18px}.agent-dashboard-kicker{display:inline-block;color:#ef2028;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.08em;margin-bottom:7px}.agent-dashboard-heading h1{margin:0 0 5px;font-size:34px;letter-spacing:-.8px;color:#111827}.agent-dashboard-heading p{margin:0;color:#667085;font-size:13px}.agent-heading-actions{display:flex;gap:8px;flex-wrap:wrap}.agent-heading-actions .secondary-action{display:inline-flex;align-items:center;gap:7px;border:1px solid #d0d5dd;background:#fff;color:#344054;border-radius:10px;padding:10px 13px;text-decoration:none;font-weight:800;font-size:12px;cursor:pointer}.agent-header-account{display:inline-flex;align-items:center;gap:7px;text-decoration:none;color:#344054;font-weight:700;font-size:12px}.agent-prelive-banner{display:flex;align-items:flex-start;gap:12px;margin-bottom:18px;padding:13px 15px;border:1px solid #fedf89;border-radius:14px;background:#fffaeb;color:#7a2e0e}.agent-prelive-banner>i{margin-top:2px}.agent-prelive-banner>div{display:flex;flex-direction:column;gap:3px}.agent-prelive-banner strong{font-size:13px}.agent-prelive-banner span{font-size:11px;line-height:1.5}.agent-dashboard-layout{display:grid;grid-template-columns:225px minmax(0,1fr);gap:18px;align-items:start}.agent-dashboard-sidebar{position:sticky;top:88px;min-width:0}.agent-company-card{display:flex;flex-direction:column;align-items:flex-start;background:#fff;border:1px solid #e7eaf0;border-radius:18px;padding:18px;margin-bottom:11px;box-shadow:0 7px 25px rgba(15,23,42,.035)}.agent-company-avatar{width:44px;height:44px;border-radius:13px;background:#fff0f1;color:#ef2028;display:grid;place-items:center;margin-bottom:11px}.agent-company-card strong{font-size:14px;line-height:1.3}.agent-company-card span{font-size:10px;color:#98a2b3;margin-top:4px}.agent-dashboard-nav{display:grid;gap:5px;background:#fff;border:1px solid #e7eaf0;border-radius:18px;padding:8px;box-shadow:0 7px 25px rgba(15,23,42,.035)}.agent-dashboard-nav a{display:grid;grid-template-columns:22px minmax(0,1fr) auto;align-items:center;gap:8px;padding:10px 11px;border-radius:11px;color:#475467;text-decoration:none;font-size:12px;font-weight:700}.agent-dashboard-nav a i{color:#98a2b3}.agent-dashboard-nav a b{min-width:22px;height:22px;border-radius:999px;background:#f2f4f7;display:grid;place-items:center;font-size:9px;color:#667085}.agent-dashboard-nav a:hover,.agent-dashboard-nav a.active{background:#fff1f1;color:#c9151c}.agent-dashboard-nav a.active i{color:#ef2028}.agent-dashboard-content{min-width:0}.agent-dashboard-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}.agent-dashboard-stat-grid article{display:flex;align-items:center;gap:12px;min-width:0;background:#fff;border:1px solid #e7eaf0;border-radius:17px;padding:16px;box-shadow:0 7px 25px rgba(15,23,42,.035)}.agent-stat-icon{width:44px;height:44px;flex:0 0 auto;border-radius:13px;display:grid;place-items:center;font-size:17px}.agent-stat-icon.wallet{background:#ecfdf3;color:#079455}.agent-stat-icon.flight{background:#fff1f1;color:#ef2028}.agent-stat-icon.hotel{background:#eef7ff;color:#2268ad}.agent-stat-icon.query{background:#f4f0ff;color:#6941c6}.agent-dashboard-stat-grid article>div{display:flex;min-width:0;flex-direction:column;gap:2px}.agent-dashboard-stat-grid small{font-size:10px;color:#667085}.agent-dashboard-stat-grid strong{font-size:22px;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.agent-dashboard-stat-grid a,.agent-wallet-refresh{border:0;background:transparent;padding:0;color:#ef2028;text-decoration:none;font-size:10px;font-weight:800;text-align:left;cursor:pointer}.agent-wallet-refresh i{font-size:9px}.agent-wallet-refresh.loading i{animation:spin .8s linear infinite}.agent-dashboard-grid-two{display:grid;grid-template-columns:1.15fr .85fr;gap:14px;margin-bottom:14px}.agent-dashboard-card{background:#fff;border:1px solid #e7eaf0;border-radius:18px;padding:18px;box-shadow:0 7px 25px rgba(15,23,42,.035);min-width:0}.agent-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:14px}.agent-card-head>div:first-child{min-width:0}.agent-card-head span{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:#98a2b3;font-weight:800}.agent-card-head h2{margin:4px 0 0;font-size:18px;color:#101828}.agent-card-head p{margin:4px 0 0;color:#667085;font-size:11px}.agent-attention-count{min-width:36px;height:36px;border-radius:11px;background:#fff1f1;color:#ef2028;display:grid;place-items:center;font-size:17px}.agent-attention-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.agent-attention-grid a{display:flex;min-width:0;flex-direction:column;gap:4px;text-decoration:none;color:#101828;background:#f8fafc;border:1px solid #f2f4f7;border-radius:13px;padding:12px}.agent-attention-grid a>span{color:#475467;font-size:11px;font-weight:800}.agent-attention-grid a>span i{width:16px;color:#ef2028}.agent-attention-grid strong{font-size:21px}.agent-attention-grid small{font-size:9px;color:#98a2b3;line-height:1.35}.agent-commercial-list{display:grid;gap:0}.agent-commercial-list>div{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:10px 0;border-bottom:1px solid #f2f4f7}.agent-commercial-list>div:last-child{border-bottom:0}.agent-commercial-list span{font-size:11px;color:#667085}.agent-commercial-list strong{font-size:12px;color:#101828}.agent-card-actions{display:flex;gap:7px;flex-wrap:wrap}.agent-card-actions a{border:1px solid #e4e7ec;border-radius:9px;padding:7px 9px;text-decoration:none;color:#475467;font-size:10px;font-weight:800}.agent-data-notice{display:flex;gap:9px;align-items:flex-start;padding:10px 12px;margin-bottom:11px;border-radius:11px;background:#fffaeb;color:#7a2e0e;font-size:10px;line-height:1.45}.agent-dashboard-empty{display:flex;flex-direction:column;align-items:center;padding:34px 15px;text-align:center;color:#667085}.agent-dashboard-empty i{font-size:26px;color:#ef2028;margin-bottom:9px}.agent-dashboard-empty strong{color:#101828;font-size:14px}.agent-dashboard-empty span{font-size:11px;margin-top:4px}.agent-activity-list{display:grid;gap:8px}.agent-activity-row{display:grid;grid-template-columns:42px minmax(0,1fr) 92px auto 14px;align-items:center;gap:10px;border:1px solid #edf0f4;border-radius:13px;padding:11px 12px;text-decoration:none;color:inherit}.agent-activity-row:hover{border-color:#f8b4b7;background:#fffafa}.agent-activity-icon{width:38px;height:38px;border-radius:12px;display:grid;place-items:center}.agent-activity-icon.flight{background:#fff1f1;color:#ef2028}.agent-activity-icon.hotel{background:#eef7ff;color:#2268ad}.agent-activity-icon.query{background:#f4f0ff;color:#6941c6}.agent-activity-main{display:flex;min-width:0;flex-direction:column;gap:3px}.agent-activity-main strong,.agent-activity-main small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.agent-activity-main strong{font-size:12px}.agent-activity-main small{font-size:10px;color:#667085}.agent-activity-date{font-size:10px;color:#667085}.agent-activity-row>i{font-size:10px;color:#98a2b3}.agent-dashboard-login-required{max-width:620px;margin:55px auto;background:#fff;border:1px solid #e7eaf0;border-radius:22px;padding:45px 30px;text-align:center;box-shadow:0 14px 42px rgba(15,23,42,.055)}.agent-dashboard-login-required>span{width:54px;height:54px;border-radius:16px;background:#fff1f1;color:#ef2028;display:grid;place-items:center;margin:0 auto 14px;font-size:20px}.agent-dashboard-login-required h1{font-size:28px;margin:0 0 8px}.agent-dashboard-login-required p{color:#667085;margin:0 auto 19px;max-width:440px;line-height:1.6}.agent-dashboard-login-required .primary-action{display:inline-flex;text-decoration:none}
@media(max-width:1024px){.agent-dashboard-layout{grid-template-columns:1fr}.agent-dashboard-sidebar{position:static;display:grid;grid-template-columns:230px minmax(0,1fr);gap:10px}.agent-company-card{margin:0}.agent-dashboard-nav{display:flex;align-items:center;overflow:auto;min-width:0}.agent-dashboard-nav a{flex:0 0 auto}.agent-dashboard-stat-grid{grid-template-columns:1fr 1fr}}
@media(max-width:768px){.agent-dashboard-shell{padding:22px 0 46px}.agent-dashboard-heading{align-items:flex-start;flex-direction:column}.agent-dashboard-heading h1{font-size:28px}.agent-heading-actions{width:100%}.agent-dashboard-sidebar{grid-template-columns:1fr}.agent-company-card{display:grid;grid-template-columns:44px minmax(0,1fr);column-gap:11px;align-items:center}.agent-company-card .agent-company-avatar{grid-row:1/3;margin:0}.agent-company-card strong,.agent-company-card span{grid-column:2}.agent-dashboard-grid-two{grid-template-columns:1fr}.agent-activity-row{grid-template-columns:38px minmax(0,1fr) auto}.agent-activity-date{display:none}.agent-activity-row .booking-status{grid-column:2;justify-self:start}.agent-activity-row>i{grid-column:3;grid-row:1/3}.agent-card-head{flex-direction:column}.agent-card-actions{width:100%}}
@media(max-width:480px){.agent-dashboard-shell{padding:16px 0 38px}.agent-dashboard-heading h1{font-size:25px}.agent-heading-actions .secondary-action{flex:1;justify-content:center}.agent-prelive-banner{padding:11px 12px}.agent-dashboard-stat-grid{grid-template-columns:1fr 1fr;gap:9px}.agent-dashboard-stat-grid article{align-items:flex-start;padding:13px;gap:9px}.agent-stat-icon{width:38px;height:38px;border-radius:11px}.agent-dashboard-stat-grid strong{font-size:19px}.agent-attention-grid{grid-template-columns:1fr}.agent-dashboard-card{padding:14px}.agent-activity-row{padding:10px}.agent-dashboard-nav{margin:0 -2px}.agent-dashboard-nav a{padding:8px 10px}.agent-dashboard-login-required{margin:30px auto;padding:34px 18px}.agent-header-account span{display:none}}
.agent-dashboard-open{display:flex;align-items:center;justify-content:center;gap:8px;text-decoration:none}.agent-auth-card .agent-primary.loading,.agent-auth-card .agent-primary:disabled{opacity:.65;cursor:wait}

/* Phase 9.1 completion — unified Agent booking/query management */
.agent-dashboard-stat-grid small em{display:inline-flex;margin-left:4px;padding:2px 5px;border-radius:999px;background:#f2f4f7;color:#667085;font-size:8px;font-style:normal;font-weight:800;vertical-align:1px}
.agent-management-strip{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);gap:14px;margin:-4px 0 18px;padding:14px;background:#fff;border:1px solid #e7eaf0;border-radius:18px;box-shadow:0 7px 24px rgba(15,23,42,.035)}
.agent-management-counts{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;min-width:0}
.agent-management-counts>span{display:flex;flex-direction:column;gap:3px;min-width:0;padding:11px 10px;border:1px solid #eef1f5;border-radius:12px;background:#f8fafc}
.agent-management-counts small{color:#98a2b3;font-size:9px;text-transform:uppercase;letter-spacing:.05em;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.agent-management-counts strong{font-size:19px;line-height:1;color:#101828}
.agent-management-tools{display:grid;grid-template-columns:1fr;gap:8px;align-content:center;min-width:0}
.agent-management-tools>label{display:grid;grid-template-columns:18px minmax(0,1fr);align-items:center;gap:7px;height:40px;padding:0 11px;border:1px solid #dfe3ea;border-radius:11px;background:#fff;color:#98a2b3}
.agent-management-tools input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:#344054;font:inherit;font-size:12px}
.agent-management-tools input::placeholder{color:#98a2b3}
.agent-management-tools>small{color:#98a2b3;font-size:9px;text-align:right}
.agent-status-filters{display:flex;gap:6px;overflow:auto;scrollbar-width:none;padding-bottom:1px}.agent-status-filters::-webkit-scrollbar{display:none}
.agent-status-filters button{flex:0 0 auto;border:1px solid #e4e7ec;border-radius:999px;background:#fff;color:#667085;padding:6px 9px;font-size:9px;font-weight:800;cursor:pointer;white-space:nowrap}
.agent-status-filters button:hover,.agent-status-filters button.active{border-color:#ef2028;background:#fff1f1;color:#c9151c}
.agent-record-card{transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}.agent-record-card:hover{border-color:#f5c2c4;box-shadow:0 10px 28px rgba(15,23,42,.055);transform:translateY(-1px)}
.agent-record-contact{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 0;border-bottom:1px solid #f2f4f7}
.agent-record-contact>div:first-child{display:flex;align-items:center;gap:10px;min-width:0}.agent-record-contact>div:first-child>span:last-child{display:flex;min-width:0;flex-direction:column;gap:2px}.agent-record-contact small{font-size:9px;color:#98a2b3;text-transform:uppercase;letter-spacing:.05em;font-weight:800}.agent-record-contact strong{font-size:12px;color:#344054;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.agent-contact-avatar{width:34px;height:34px;flex:0 0 auto;border-radius:10px;background:#fff1f1;color:#ef2028;display:grid;place-items:center}.agent-contact-avatar.hotel{background:#eef7ff;color:#2268ad}.agent-contact-avatar.query{background:#f4f0ff;color:#6941c6}
.agent-contact-points{display:flex;justify-content:flex-end;gap:7px;flex-wrap:wrap;min-width:0}.agent-contact-points a,.agent-contact-points>span{display:inline-flex;align-items:center;gap:6px;max-width:100%;padding:7px 9px;border:1px solid #e4e7ec;border-radius:9px;background:#fff;color:#475467;text-decoration:none;font-size:10px;font-weight:700;overflow-wrap:anywhere}.agent-contact-points a:hover{border-color:#ef2028;color:#ef2028}
.agent-filter-empty{display:none;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:36px 18px;margin-top:12px;border:1px dashed #d9dee7;border-radius:16px;background:#fff;color:#667085;text-align:center}.agent-filter-empty i{font-size:24px;color:#ef2028;margin-bottom:4px}.agent-filter-empty strong{font-size:13px;color:#344054}.agent-filter-empty span{font-size:10px}
.agent-query-brief{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-top:11px;padding-top:11px;border-top:1px solid #f2f4f7}.agent-query-brief>span{display:inline-flex;align-items:center;gap:5px;padding:6px 8px;border-radius:999px;background:#f8fafc;color:#475467;font-size:9px;font-weight:700}.agent-query-brief>span i{color:#ef2028}.agent-query-brief p{flex:1 1 100%;margin:2px 0 0;color:#667085;font-size:10px;line-height:1.5}
.agent-package-queries-page .package-query-meta{grid-template-columns:repeat(4,minmax(0,1fr))}
.agent-workspace-tabs{max-width:100%}
.booking-empty-state>i{width:58px;height:58px;border-radius:18px;display:grid;place-items:center;background:#fff1f1;color:#ef2028;font-size:24px;margin:0 auto 12px}

@media(max-width:1100px){.agent-management-strip{grid-template-columns:1fr}.agent-management-tools{grid-template-columns:minmax(0,1fr) auto;align-items:center}.agent-management-tools>label{grid-column:1}.agent-status-filters{grid-column:1}.agent-management-tools>small{grid-column:2;grid-row:1/3;align-self:end;padding-bottom:5px}}
@media(max-width:1024px){.agent-workspace-tabs{overflow:auto;justify-content:flex-start;scrollbar-width:none}.agent-workspace-tabs::-webkit-scrollbar{display:none}.agent-workspace-tabs a{flex:0 0 auto!important;white-space:nowrap}.agent-package-queries-page .package-query-meta{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:768px){.agent-management-strip{padding:11px}.agent-management-counts{overflow:auto;scrollbar-width:none;grid-template-columns:repeat(5,minmax(92px,1fr));padding-bottom:1px}.agent-management-counts::-webkit-scrollbar{display:none}.agent-management-tools{grid-template-columns:1fr}.agent-management-tools>label,.agent-status-filters,.agent-management-tools>small{grid-column:1;grid-row:auto}.agent-management-tools>small{text-align:left;padding:0}.agent-record-contact{align-items:flex-start;flex-direction:column}.agent-contact-points{justify-content:flex-start;width:100%}.agent-package-queries-page .package-query-meta{grid-template-columns:1fr 1fr}.agent-workspace-tabs{width:calc(100vw - 32px)!important;max-width:none}.agent-dashboard-sidebar .agent-dashboard-nav{scroll-snap-type:x proximity}.agent-dashboard-sidebar .agent-dashboard-nav a{scroll-snap-align:start}}
@media(max-width:480px){.agent-management-strip{margin-bottom:14px;border-radius:14px}.agent-management-counts>span{padding:9px}.agent-management-counts strong{font-size:17px}.agent-management-tools>label{height:42px}.agent-contact-points{display:grid;grid-template-columns:1fr;width:100%}.agent-contact-points a,.agent-contact-points>span{justify-content:flex-start}.agent-package-queries-page .package-query-meta{grid-template-columns:1fr}.agent-record-contact{padding:10px 0}.agent-query-brief{align-items:flex-start}.agent-dashboard-stat-grid article{min-width:0}.agent-dashboard-stat-grid article>div{width:calc(100% - 47px)}.agent-dashboard-stat-grid strong{max-width:100%}.agent-dashboard-nav{padding:7px}.agent-dashboard-nav a{font-size:11px}.agent-company-card{padding:14px}.agent-workspace-tabs{width:calc(100vw - 28px)!important;padding:4px}.agent-workspace-tabs a{padding:8px 10px;font-size:11px}}
@media(max-width:380px){.agent-dashboard-stat-grid{grid-template-columns:1fr}.agent-dashboard-stat-grid article{align-items:center}.agent-dashboard-stat-grid article>div{width:auto;flex:1}.agent-management-counts{grid-template-columns:repeat(5,86px)}.agent-workspace-tabs{width:calc(100vw - 24px)!important}.agent-record-card .booking-list-meta{grid-template-columns:1fr}.agent-package-queries-page .package-query-meta{grid-template-columns:1fr}}

/* Phase 9.2 — Agent Wallet/Credit + read-only Commercials */
.agent-commercial-cta{display:inline-flex;align-items:center;gap:7px;margin-top:14px;color:#c9151c;text-decoration:none;font-size:11px;font-weight:800}.agent-commercial-cta:hover{color:#a50f15}
.agent-wallet-safety{margin:0 0 18px}
.agent-wallet-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0 0 18px}.agent-wallet-summary-grid article{display:flex;align-items:flex-start;gap:12px;padding:17px;border:1px solid #e7eaf0;border-radius:16px;background:#fff;box-shadow:0 7px 24px rgba(15,23,42,.035);min-width:0}.agent-wallet-summary-grid article>div{display:flex;flex-direction:column;gap:4px;min-width:0}.agent-wallet-summary-grid small{color:#667085;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.agent-wallet-summary-grid small em{font-style:normal;color:#98a2b3}.agent-wallet-summary-grid strong{font-size:21px;color:#101828;line-height:1.15;overflow-wrap:anywhere}.agent-wallet-summary-grid article>div>span{font-size:10px;color:#98a2b3}.agent-stat-icon.credit{background:#eef7ff;color:#2268ad}.agent-stat-icon.limit{background:#f3f0ff;color:#6941c6}.agent-stat-icon.shield{background:#ecfdf3;color:#027a48}
.agent-commercial-page-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr);gap:14px;margin-bottom:14px}.agent-commercial-profile-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.agent-commercial-profile-grid>div{display:flex;flex-direction:column;gap:5px;padding:13px;border:1px solid #eef1f5;border-radius:12px;background:#f8fafc;min-width:0}.agent-commercial-profile-grid span{display:flex;align-items:center;gap:7px;color:#667085;font-size:10px;font-weight:800}.agent-commercial-profile-grid span i{color:#ef2028}.agent-commercial-profile-grid strong{font-size:14px;color:#101828;overflow-wrap:anywhere}.agent-commercial-profile-grid small{font-size:9px;color:#98a2b3;overflow-wrap:anywhere}
.agent-credit-meter{display:flex;flex-direction:column;gap:10px}.agent-credit-meter>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:12px}.agent-credit-meter span{font-size:10px;color:#667085;font-weight:700}.agent-credit-meter>div:first-child strong{font-size:18px;color:#101828}.agent-credit-track{height:9px;border-radius:999px;background:#eef1f5;overflow:hidden}.agent-credit-track i{display:block;height:100%;border-radius:999px;background:#ef2028;max-width:100%}.agent-credit-meter>small{font-size:9px;color:#98a2b3}.agent-credit-values{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.agent-credit-values>span{display:flex;flex-direction:column;gap:3px;padding:9px;border:1px solid #eef1f5;border-radius:10px;background:#f8fafc}.agent-credit-values small{font-size:8px;text-transform:uppercase;letter-spacing:.04em;color:#98a2b3}.agent-credit-values strong{font-size:11px;color:#344054;overflow-wrap:anywhere}
.agent-commercial-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;padding:28px 18px;border:1px dashed #d9dee7;border-radius:14px;background:#fbfcfd;text-align:center;color:#667085}.agent-commercial-empty i{font-size:22px;color:#ef2028}.agent-commercial-empty strong{font-size:12px;color:#344054}.agent-commercial-empty span{font-size:10px;line-height:1.5}.agent-commercial-empty.compact{padding:17px 14px;align-items:flex-start;text-align:left}.agent-commercial-empty.compact i{font-size:18px}
.agent-pricing-rules-section{margin-bottom:14px}.agent-service-rule-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.agent-service-rule-card{padding:15px;border:1px solid #e7eaf0;border-radius:14px;background:#fff;min-width:0}.agent-service-rule-card.package{background:#fffdf8}.agent-service-rule-head{display:flex;align-items:center;gap:10px;margin-bottom:13px}.agent-service-rule-head>div{display:flex;flex-direction:column;gap:2px}.agent-service-rule-head strong{font-size:15px;color:#101828}.agent-service-rule-head small{font-size:9px;color:#98a2b3}.agent-rule-lines{display:flex;flex-direction:column;gap:7px}.agent-rule-lines>div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:7px;border-bottom:1px solid #f0f2f5}.agent-rule-lines span{font-size:10px;color:#667085}.agent-rule-lines strong{font-size:11px;color:#344054;text-align:right}.agent-rule-example{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:12px;padding-top:12px;border-top:1px solid #eef1f5}.agent-rule-example>span{grid-column:1/-1;font-size:9px;color:#98a2b3;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.agent-rule-example>div{display:flex;flex-direction:column;gap:3px;padding:9px;border-radius:10px;background:#f8fafc}.agent-rule-example small{font-size:8px;color:#98a2b3}.agent-rule-example strong{font-size:12px;color:#101828}.agent-rule-example em{font-size:8px;color:#667085;font-style:normal;line-height:1.4}
.agent-wallet-statement{margin-bottom:18px}.agent-wallet-table-wrap{overflow:auto;border:1px solid #e7eaf0;border-radius:12px}.agent-wallet-table{width:100%;border-collapse:collapse;min-width:820px}.agent-wallet-table th,.agent-wallet-table td{padding:11px 12px;border-bottom:1px solid #eef1f5;text-align:left;font-size:10px;color:#475467}.agent-wallet-table th{background:#f8fafc;color:#667085;font-size:9px;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}.agent-wallet-table tbody tr:last-child td{border-bottom:0}.agent-wallet-table td strong{color:#344054}.agent-tx-kind{display:inline-flex;padding:5px 8px;border-radius:999px;font-size:8px;font-weight:800;text-transform:uppercase}.agent-tx-kind.credit{background:#ecfdf3;color:#027a48}.agent-tx-kind.debit{background:#fff1f1;color:#c9151c}.agent-tx-amount{font-weight:800;white-space:nowrap}.agent-tx-amount.credit{color:#027a48}.agent-tx-amount.debit{color:#c9151c}
.agent-record-commercial{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;padding:10px 0;border-bottom:1px solid #f2f4f7}.agent-record-commercial>span{display:flex;flex-direction:column;gap:3px;padding:8px 9px;border-radius:10px;background:#f8fafc;min-width:0}.agent-record-commercial small{font-size:8px;color:#98a2b3;text-transform:uppercase;letter-spacing:.04em;font-weight:800}.agent-record-commercial strong{font-size:10px;color:#344054;overflow-wrap:anywhere}.agent-query-commercial-note{display:flex;align-items:flex-start;gap:9px;margin-top:10px;padding:10px 11px;border-radius:10px;background:#fff9eb;border:1px solid #fde7b2;color:#7a5a12}.agent-query-commercial-note>i{margin-top:2px}.agent-query-commercial-note>div{display:flex;flex-direction:column;gap:2px}.agent-query-commercial-note strong{font-size:10px}.agent-query-commercial-note span{font-size:9px;line-height:1.45}
@media(max-width:1100px){.agent-wallet-summary-grid{grid-template-columns:1fr 1fr}.agent-service-rule-grid{grid-template-columns:1fr 1fr}.agent-service-rule-card.package{grid-column:1/-1}.agent-commercial-page-grid{grid-template-columns:1fr}}
@media(max-width:768px){.agent-wallet-summary-grid{grid-template-columns:1fr 1fr}.agent-service-rule-grid{grid-template-columns:1fr}.agent-service-rule-card.package{grid-column:auto}.agent-record-commercial{grid-template-columns:1fr 1fr}.agent-commercial-profile-grid{grid-template-columns:1fr 1fr}.agent-wallet-table{min-width:0}.agent-wallet-table thead{display:none}.agent-wallet-table,.agent-wallet-table tbody,.agent-wallet-table tr,.agent-wallet-table td{display:block;width:100%}.agent-wallet-table tr{padding:9px 0;border-bottom:1px solid #eef1f5}.agent-wallet-table tbody tr:last-child{border-bottom:0}.agent-wallet-table td{display:grid;grid-template-columns:105px minmax(0,1fr);gap:10px;padding:5px 11px;border:0}.agent-wallet-table td:before{content:attr(data-label);font-size:8px;color:#98a2b3;text-transform:uppercase;letter-spacing:.04em;font-weight:800}.agent-wallet-table td strong{min-width:0;overflow-wrap:anywhere}}
@media(max-width:480px){.agent-wallet-summary-grid{grid-template-columns:1fr}.agent-wallet-summary-grid article{padding:14px}.agent-commercial-profile-grid{grid-template-columns:1fr}.agent-credit-values{grid-template-columns:1fr 1fr}.agent-credit-values>span:last-child{grid-column:1/-1}.agent-record-commercial{grid-template-columns:1fr 1fr}.agent-rule-example{grid-template-columns:1fr}.agent-rule-example>span{grid-column:auto}.agent-wallet-table td{grid-template-columns:92px minmax(0,1fr)}}
@media(max-width:380px){.agent-record-commercial{grid-template-columns:1fr}.agent-credit-values{grid-template-columns:1fr}.agent-credit-values>span:last-child{grid-column:auto}}
@media(max-width:480px){
  .agent-workspace-tabs{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;overflow:visible!important;width:100%!important;max-width:100%!important}
  .agent-workspace-tabs a{width:100%;min-width:0;text-align:center;justify-content:center;white-space:normal;line-height:1.25}
  .agent-workspace-tabs a:last-child{grid-column:1/-1}
}

/* Phase 9.3 — Agent Reports, Statements & management reporting */
.agent-reports-shell{padding-top:30px}.agent-report-title{align-items:flex-start}.agent-report-safety{margin:0 0 16px}.agent-report-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:14px}.agent-report-summary-grid article{display:flex;align-items:center;gap:12px;min-width:0;padding:16px;border:1px solid #e7eaf0;border-radius:16px;background:#fff;box-shadow:0 7px 24px rgba(15,23,42,.035)}.agent-report-summary-grid article>div{display:flex;flex-direction:column;gap:3px;min-width:0}.agent-report-summary-grid small{font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.045em;color:#667085}.agent-report-summary-grid strong{font-size:22px;line-height:1.1;color:#101828}.agent-report-summary-grid article>div>span{font-size:9px;color:#98a2b3}.agent-stat-icon.attention{background:#fff9eb;color:#b54708}.agent-report-source-notice{margin:0 0 14px}.agent-report-source-notice span{line-height:1.45}
.agent-report-filter-card,.agent-operation-report,.agent-report-wallet-ledger{margin-bottom:14px}.agent-report-actions{display:flex;gap:7px;flex-wrap:wrap}.agent-report-actions .secondary-action{display:inline-flex;align-items:center;justify-content:center;gap:6px;border:1px solid #d0d5dd;border-radius:9px;background:#fff;color:#344054;padding:8px 10px;text-decoration:none;font-size:10px;font-weight:800;cursor:pointer}.agent-report-filters{display:grid;grid-template-columns:minmax(220px,1.55fr) minmax(140px,.72fr) minmax(150px,.78fr) minmax(135px,.65fr) minmax(135px,.65fr) auto;gap:10px;align-items:end}.agent-report-filters label{display:flex;flex-direction:column;gap:6px;min-width:0}.agent-report-filters label>span{font-size:9px;color:#667085;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.agent-report-filters input,.agent-report-filters select{width:100%;height:42px;border:1px solid #d9dee7;border-radius:10px;background:#fff;color:#344054;padding:0 11px;font:inherit;font-size:11px;outline:none}.agent-report-filters input:focus,.agent-report-filters select:focus{border-color:#f58c91;box-shadow:0 0 0 3px rgba(239,32,40,.07)}.agent-report-search>div,.agent-report-date-field{position:relative}.agent-report-search>div>i,.agent-report-date-field>i{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:#98a2b3;font-size:11px;pointer-events:none}.agent-report-search input,.agent-report-date-field input{padding-left:34px}.agent-report-filter-buttons{display:flex;gap:7px}.agent-report-filter-buttons .primary-action,.agent-report-filter-buttons .secondary-action{height:42px;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:0 13px;border-radius:10px;font-size:10px;font-weight:800;white-space:nowrap}.agent-report-filter-buttons .primary-action{border:0;background:#ef2028;color:#fff;cursor:pointer}.agent-report-filter-buttons .secondary-action{border:1px solid #d0d5dd;background:#fff;color:#344054;text-decoration:none}.agent-report-result-line{margin-top:11px;padding-top:10px;border-top:1px solid #f0f2f5;color:#667085;font-size:10px}.agent-report-result-line strong{color:#101828}
.agent-report-volume{display:flex;flex-direction:column;align-items:flex-end;gap:3px}.agent-report-volume small{font-size:8px!important}.agent-report-volume strong{font-size:17px;color:#101828;white-space:nowrap}.agent-report-table-wrap{overflow:auto;border:1px solid #e7eaf0;border-radius:12px}.agent-report-table{width:100%;min-width:1080px;border-collapse:collapse}.agent-report-table th,.agent-report-table td{padding:11px 10px;border-bottom:1px solid #eef1f5;text-align:left;vertical-align:middle;color:#475467;font-size:10px}.agent-report-table th{background:#f8fafc;color:#667085;font-size:8px;text-transform:uppercase;letter-spacing:.045em;white-space:nowrap}.agent-report-table tbody tr:last-child td{border-bottom:0}.agent-report-table td>strong{display:block;color:#344054;font-size:10px;overflow-wrap:anywhere}.agent-report-table td>small{display:block;margin-top:3px;color:#98a2b3;font-size:8px;line-height:1.35;overflow-wrap:anywhere}.agent-report-table .number{text-align:right}.agent-report-type{display:inline-flex;align-items:center;gap:5px;padding:5px 7px;border-radius:999px;font-size:8px;font-weight:800;white-space:nowrap}.agent-report-type.flight{background:#fff1f1;color:#c9151c}.agent-report-type.hotel{background:#eef7ff;color:#2268ad}.agent-report-type.package{background:#f4f0ff;color:#6941c6}.agent-report-status{display:inline-flex;align-items:center;padding:5px 7px;border-radius:999px;font-size:8px;font-weight:800;white-space:nowrap}.agent-report-status.success{background:#ecfdf3;color:#027a48}.agent-report-status.error{background:#fff1f1;color:#c9151c}.agent-report-status.warning{background:#fffaeb;color:#b54708}.agent-report-status.info{background:#eef7ff;color:#175cd3}.agent-report-detail-cell{text-align:right!important;width:72px}.agent-report-toggle{display:inline-flex;align-items:center;gap:5px;border:1px solid #e4e7ec;background:#fff;color:#475467;border-radius:8px;padding:7px 8px;font-size:9px;font-weight:800;cursor:pointer}.agent-report-toggle i{font-size:8px;transition:transform .18s}.agent-report-toggle.open i{transform:rotate(180deg)}.agent-report-detail-row td{padding:0!important;background:#fbfcfd}.agent-report-detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:14px}.agent-report-detail-grid section{min-width:0;padding:12px;border:1px solid #e9edf2;border-radius:11px;background:#fff}.agent-report-detail-grid h3{margin:0 0 8px;color:#101828;font-size:11px}.agent-report-detail-grid section>div{display:grid;grid-template-columns:105px minmax(0,1fr);gap:9px;padding:6px 0;border-bottom:1px solid #f2f4f7}.agent-report-detail-grid section>div:last-child{border-bottom:0}.agent-report-detail-grid span{font-size:8px;color:#98a2b3;text-transform:uppercase;letter-spacing:.035em;font-weight:800}.agent-report-detail-grid strong,.agent-report-detail-grid a{min-width:0;color:#344054;font-size:9px;font-weight:700;text-decoration:none;overflow-wrap:anywhere}.agent-report-detail-grid a{color:#c9151c}
.agent-report-finance-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px}.agent-report-credit-main,.agent-report-wallet-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.agent-report-credit-main>div,.agent-report-wallet-kpis>div{display:flex;flex-direction:column;gap:4px;min-width:0;padding:12px;border:1px solid #edf0f4;border-radius:11px;background:#f8fafc}.agent-report-credit-main small,.agent-report-wallet-kpis small{font-size:8px;color:#98a2b3;text-transform:uppercase;letter-spacing:.04em;font-weight:800}.agent-report-credit-main strong,.agent-report-wallet-kpis strong{font-size:13px;color:#101828;overflow-wrap:anywhere}.agent-report-credit-track{margin-top:12px}.agent-report-credit-caption{display:block;margin-top:6px;color:#98a2b3;font-size:9px}.agent-report-wallet-summary .agent-query-commercial-note{margin-top:12px}.agent-report-wallet-table{min-width:760px}
@media(max-width:1180px){.agent-report-filters{grid-template-columns:repeat(4,minmax(0,1fr))}.agent-report-search{grid-column:span 2}.agent-report-filter-buttons{grid-column:span 2;justify-content:flex-end}.agent-report-detail-grid{grid-template-columns:1fr 1fr}.agent-report-detail-grid section:last-child{grid-column:1/-1}}
@media(max-width:1024px){.agent-report-summary-grid{grid-template-columns:1fr 1fr}.agent-report-filters{grid-template-columns:repeat(3,minmax(0,1fr))}.agent-report-search{grid-column:span 2}.agent-report-filter-buttons{grid-column:auto}.agent-report-finance-grid{grid-template-columns:1fr}}
@media(max-width:768px){.agent-reports-shell{padding-top:20px}.agent-report-filters{grid-template-columns:1fr 1fr}.agent-report-search{grid-column:1/-1}.agent-report-filter-buttons{grid-column:1/-1;justify-content:flex-start}.agent-report-actions{width:100%}.agent-report-actions .secondary-action{flex:1}.agent-report-volume{align-items:flex-start}.agent-report-table-wrap{overflow:visible;border:0}.agent-report-table{min-width:0}.agent-report-table thead{display:none}.agent-report-table,.agent-report-table tbody{display:block;width:100%}.agent-report-row{display:grid!important;grid-template-columns:1fr 1fr;gap:0;margin-bottom:10px;border:1px solid #e7eaf0;border-radius:13px;overflow:hidden;background:#fff}.agent-report-row td{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:9px 11px!important;border-bottom:1px solid #f0f2f5}.agent-report-row td:before{content:attr(data-label);font-size:7px;color:#98a2b3;text-transform:uppercase;letter-spacing:.04em;font-weight:800;margin-bottom:2px}.agent-report-row td.number{text-align:left}.agent-report-row .agent-report-detail-cell{grid-column:1/-1;width:auto;text-align:left!important;border-bottom:0}.agent-report-row .agent-report-detail-cell:before{display:none}.agent-report-toggle{width:100%;justify-content:center}.agent-report-detail-row{display:block;width:100%;margin:-10px 0 10px}.agent-report-detail-row[hidden]{display:none!important}.agent-report-detail-row td{display:block;width:100%;border:1px solid #e7eaf0;border-top:0;border-radius:0 0 13px 13px;background:#fbfcfd}.agent-report-detail-grid{grid-template-columns:1fr;padding:10px}.agent-report-detail-grid section:last-child{grid-column:auto}.agent-report-wallet-table{min-width:0}}
@media(max-width:480px){.agent-report-summary-grid{grid-template-columns:1fr 1fr;gap:9px}.agent-report-summary-grid article{align-items:flex-start;padding:13px;gap:9px}.agent-report-summary-grid strong{font-size:19px}.agent-report-filters{grid-template-columns:1fr}.agent-report-search,.agent-report-filter-buttons{grid-column:auto}.agent-report-filter-buttons{display:grid;grid-template-columns:1fr 1fr}.agent-report-filter-buttons .primary-action,.agent-report-filter-buttons .secondary-action{width:100%}.agent-report-credit-main,.agent-report-wallet-kpis{grid-template-columns:1fr}.agent-report-row{grid-template-columns:1fr}.agent-report-row .agent-report-detail-cell{grid-column:auto}.agent-report-detail-grid section>div{grid-template-columns:90px minmax(0,1fr)}.agent-report-title .agent-workspace-tabs a:last-child{grid-column:1/-1}}
@media(max-width:380px){.agent-report-summary-grid{grid-template-columns:1fr}.agent-report-actions{display:grid;grid-template-columns:1fr 1fr}.agent-report-detail-grid section>div{grid-template-columns:1fr;gap:3px}}
@media print{.agent-reports-page{background:#fff}.agent-reports-page .site-header,.agent-reports-page .site-footer,.agent-reports-page .agent-workspace-tabs,.agent-reports-page .agent-report-actions,.agent-reports-page .agent-report-filter-buttons,.agent-reports-page .agent-prelive-banner,.agent-reports-page .bookings-notice{display:none!important}.agent-reports-shell{padding:0}.agent-reports-page .page-container{max-width:none;width:100%;padding:0 12px}.agent-report-filter-card{display:none}.agent-dashboard-card,.agent-report-summary-grid article{box-shadow:none;break-inside:avoid}.agent-report-table-wrap,.agent-wallet-table-wrap{overflow:visible}.agent-report-table,.agent-wallet-table{min-width:0}.agent-report-table th,.agent-report-table td,.agent-wallet-table th,.agent-wallet-table td{font-size:8px;padding:6px}.agent-report-detail-row{display:none!important}.agent-report-finance-grid{grid-template-columns:1fr 1fr}.agent-report-wallet-table thead{display:table-header-group}.agent-report-wallet-table,.agent-report-wallet-table tbody,.agent-report-wallet-table tr,.agent-report-wallet-table td{display:table-row-group}.agent-report-wallet-table tr{display:table-row}.agent-report-wallet-table td{display:table-cell}.agent-report-wallet-table td:before{display:none}}

/* Phase 9 auth foundation — dedicated B2B Agent Login / Register / Recovery */
.agent-auth-page{background:#f6f8fb;color:var(--navy)}
.agent-auth-page .site-header{background:#fff}
.agent-auth-header-link{min-height:38px;padding:0 14px;display:inline-flex;align-items:center;gap:7px;text-decoration:none;white-space:nowrap}
.agent-auth-shell{min-height:calc(100vh - 155px);padding:54px 0 68px;background:radial-gradient(circle at 12% 18%,rgba(239,32,40,.07),transparent 30%),radial-gradient(circle at 92% 78%,rgba(19,49,91,.055),transparent 26%),#f6f8fb}
.agent-auth-layout{max-width:1160px;display:grid;grid-template-columns:minmax(0,1.02fr) minmax(420px,.78fr);gap:76px;align-items:center}
.agent-auth-intro{padding:14px 0}
.agent-auth-back{display:inline-flex;align-items:center;gap:8px;color:#697487;font-size:12px;font-weight:800;text-decoration:none;margin-bottom:22px}
.agent-auth-back:hover{color:var(--red)}
.agent-auth-intro h1{max-width:610px;margin:18px 0 15px;color:var(--navy);font-size:45px;line-height:1.08;letter-spacing:-1.55px}
.agent-auth-intro>p{max-width:620px;margin:0;color:#687285;font-size:15px;line-height:1.75}
.agent-auth-trust{display:grid;gap:11px;margin-top:28px;max-width:610px}
.agent-auth-trust>div{display:flex;align-items:center;gap:13px;background:rgba(255,255,255,.86);border:1px solid #e1e6ee;border-radius:14px;padding:13px 15px}
.agent-auth-trust>div>i{width:36px;height:36px;display:grid;place-items:center;border-radius:10px;background:#fff0f1;color:var(--red);flex:0 0 auto}
.agent-auth-trust span{display:flex;flex-direction:column;min-width:0}
.agent-auth-trust strong{font-size:13px;color:var(--navy)}
.agent-auth-trust small{font-size:11px;color:#737d8f;line-height:1.45;margin-top:2px}
.agent-auth-dedicated-card{width:100%;padding:31px;border-radius:22px;box-shadow:0 22px 60px rgba(21,31,49,.11)}
.agent-auth-dedicated-card .agent-auth-kicker{display:block;margin-top:16px;color:var(--red);font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.07em}
.agent-auth-dedicated-card h2{margin-top:5px}
.agent-auth-dedicated-card>p{margin:0 0 22px;color:#687285;font-size:13px;line-height:1.6}
.agent-auth-dedicated-card .agent-form{gap:14px}
.agent-auth-dedicated-card .agent-form input,.agent-auth-dedicated-card .agent-form select,.agent-auth-dedicated-card .agent-form textarea{min-height:46px;font-size:13px}
.agent-auth-dedicated-card .agent-form textarea{min-height:82px;resize:vertical}
.agent-auth-row{display:flex;justify-content:flex-end;margin-top:-2px}
.agent-auth-row .agent-forgot{margin:0}
.agent-auth-dedicated-card .agent-primary{width:100%;display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none;cursor:pointer}
.agent-auth-button-link{margin-top:15px}
.agent-auth-outline{min-height:47px;border:1px solid #d7dee8;border-radius:10px;background:#fff;color:var(--navy);font-size:12px;font-weight:900;display:flex;align-items:center;justify-content:center;text-decoration:none;transition:.2s}
.agent-auth-outline:hover{border-color:#ef2028;color:var(--red);background:#fffafa}
.agent-auth-divider{display:flex;align-items:center;gap:12px;margin:20px 0 15px;color:#939baa;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}
.agent-auth-divider:before,.agent-auth-divider:after{content:"";height:1px;flex:1;background:#e6eaf0}
.agent-auth-feedback{display:flex;align-items:flex-start;gap:10px;margin:0 0 18px;padding:12px 13px;border:1px solid #dce4ee;border-radius:11px;background:#f8fafc;color:#41506a}
.agent-auth-feedback[hidden]{display:none!important}
.agent-auth-feedback>i{margin-top:1px}
.agent-auth-feedback>div{display:flex;flex-direction:column;gap:2px}
.agent-auth-feedback strong{font-size:12px;color:inherit}
.agent-auth-feedback span{font-size:11px;line-height:1.45;color:inherit}
.agent-auth-feedback.success{border-color:#bde8cf;background:#f1fbf5;color:#187445}
.agent-auth-feedback.error{border-color:#f3c1c4;background:#fff5f5;color:#aa2229}
.agent-auth-feedback.info{border-color:#cfe0f4;background:#f5f9ff;color:#315c91}
.agent-auth-feedback.static{margin-top:17px}
.agent-auth-consent{display:grid!important;grid-template-columns:18px 1fr;align-items:flex-start;gap:10px!important;background:#f8fafc;border:1px solid #e2e7ee;border-radius:10px;padding:11px 12px}
.agent-auth-consent input{width:16px!important;height:16px!important;min-height:0!important;margin:1px 0 0;accent-color:var(--red)}
.agent-auth-consent>span{font-size:10px!important;line-height:1.5;font-weight:600!important;color:#667185!important}
.agent-auth-consent a{color:var(--red);font-weight:800}
.agent-password-rules{display:flex;align-items:flex-start;gap:8px;border-radius:9px;background:#f7f9fc;padding:10px 11px;color:#6c7687;font-size:10px;line-height:1.45}
.agent-password-rules i{color:#8091a8;margin-top:1px}
.agent-auth-dedicated-card .agent-switch{line-height:1.5}
.agent-auth-dedicated-card .agent-switch a{color:var(--red);font-weight:900;text-decoration:none}
.agent-auth-footer{background:#fff}
.agent-partner-entry-actions{display:grid;gap:10px;margin-top:20px}
.agent-partner-recovery{display:flex;align-items:flex-start;gap:9px;margin-top:18px;padding:11px 12px;border-radius:10px;background:#f7f9fc;color:#707b8d;font-size:11px;line-height:1.45}
.agent-partner-recovery i{color:var(--red);margin-top:2px}
.agent-partner-recovery a{color:var(--red);font-weight:800;text-decoration:none}

@media(max-width:1024px){
  .agent-auth-shell{padding:42px 0 54px}
  .agent-auth-layout{grid-template-columns:minmax(0,1fr) minmax(390px,.82fr);gap:42px}
  .agent-auth-intro h1{font-size:39px}
}
@media(max-width:820px){
  .agent-auth-header-link{display:none}
  .agent-auth-layout{grid-template-columns:1fr;gap:25px;max-width:650px}
  .agent-auth-intro{padding:0}
  .agent-auth-intro h1{font-size:36px;max-width:none}
  .agent-auth-intro>p{max-width:none}
  .agent-auth-trust{grid-template-columns:1fr 1fr;max-width:none}
  .agent-auth-trust>div:last-child{grid-column:1/-1}
}
@media(max-width:600px){
  .agent-auth-shell{padding:25px 0 38px}
  .agent-auth-layout{gap:20px}
  .agent-auth-back{margin-bottom:15px}
  .agent-auth-intro h1{font-size:30px;letter-spacing:-.8px;margin:15px 0 11px}
  .agent-auth-intro>p{font-size:13px;line-height:1.65}
  .agent-auth-trust{grid-template-columns:1fr;gap:8px;margin-top:20px}
  .agent-auth-trust>div:last-child{grid-column:auto}
  .agent-auth-trust>div{padding:11px 12px}
  .agent-auth-dedicated-card{padding:22px 18px;border-radius:17px}
  .agent-auth-dedicated-card h2{font-size:24px}
  .agent-auth-dedicated-card .agent-register-form{grid-template-columns:1fr}
  .agent-auth-dedicated-card .agent-register-form .full{grid-column:auto}
  .agent-auth-footer .footer-bottom{align-items:flex-start;gap:10px;flex-direction:column}
}
@media(max-width:380px){
  .agent-auth-shell{padding-top:20px}
  .agent-auth-intro h1{font-size:27px}
  .agent-auth-dedicated-card{padding:20px 15px}
}
.agent-register-success[hidden]{display:none!important}.agent-register-success{text-align:center;padding:8px 0 2px}.agent-register-success>span{width:60px;height:60px;margin:0 auto 13px;border-radius:18px;background:#fffaeb;color:#b54708;display:grid;place-items:center;font-size:22px}.agent-register-success h3{margin:0 0 7px;color:var(--navy);font-size:22px}.agent-register-success p{margin:0 auto 18px;max-width:360px;color:#687285;font-size:12px;line-height:1.6}.agent-register-success>div{display:grid;gap:9px}.agent-register-success .agent-auth-button-link{margin-top:0}

/* Agent auth live-integration / approval-flow polish */
.agent-approval-flow{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;align-items:center;gap:8px;margin:0 0 18px;padding:11px;border:1px solid #e2e7ee;border-radius:12px;background:#f8fafc}.agent-approval-flow>div{display:flex;align-items:center;gap:8px;min-width:0}.agent-approval-flow>div>b{width:26px;height:26px;border-radius:8px;background:#e9edf3;color:#667185;display:grid;place-items:center;font-size:11px;flex:0 0 auto}.agent-approval-flow>div.active>b{background:#fff0f1;color:var(--red)}.agent-approval-flow span{display:flex;min-width:0;flex-direction:column}.agent-approval-flow strong{font-size:10px;color:var(--navy)}.agent-approval-flow small{font-size:9px;color:#7d8798;white-space:nowrap}.agent-approval-flow>i{font-size:9px;color:#b3bbc7}
.agent-form .agent-field-invalid{border-color:#e4555c!important;box-shadow:0 0 0 3px rgba(239,32,40,.07)!important}.agent-field-error{display:block;margin-top:1px;color:#b4232b;font-size:9px;font-weight:700;line-height:1.35}.agent-auth-consent .agent-field-error{grid-column:2}
.agent-register-success>em{display:inline-flex;margin:0 auto 8px;padding:5px 9px;border-radius:99px;background:#fff6dc;color:#9b5c00;font-style:normal;font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.04em}.agent-register-success[data-registration-state="active"]>span{background:#eefaf3;color:#187445}.agent-register-success[data-registration-state="active"]>em{background:#eefaf3;color:#187445}.agent-register-success[data-registration-state="rejected"]>span,.agent-register-success[data-registration-state="inactive"]>span{background:#fff1f1;color:#aa2229}.agent-register-success[data-registration-state="rejected"]>em,.agent-register-success[data-registration-state="inactive"]>em{background:#fff1f1;color:#aa2229}
.agent-reset-link-state[hidden]{display:none!important}.agent-reset-link-state{text-align:center;padding:8px 0 2px}.agent-reset-link-state>span{width:58px;height:58px;margin:0 auto 13px;border-radius:17px;background:#fff1f1;color:#aa2229;display:grid;place-items:center;font-size:21px}.agent-reset-link-state h3{margin:0 0 7px;color:var(--navy);font-size:21px}.agent-reset-link-state p{margin:0 auto 16px;max-width:360px;color:#687285;font-size:12px;line-height:1.6}
@media(max-width:520px){.agent-approval-flow{grid-template-columns:1fr;gap:7px}.agent-approval-flow>i{display:none}.agent-approval-flow>div{padding:3px 1px}.agent-approval-flow small{white-space:normal}}

/* Public content/SEO/footer consolidation */
.footer-about{max-width:290px;margin:14px 0 16px;color:rgba(255,255,255,.68);font-size:13px;line-height:1.7}
.ts-unified-footer{grid-template-columns:minmax(250px,1.25fr) repeat(4,minmax(130px,1fr));gap:34px}
.contact-captcha-field{max-width:280px}
.contact-form-message{margin-top:14px;padding:12px 14px;border-radius:10px;font-size:13px;font-weight:600}
.contact-form-message.success{display:block;background:#eaf9f0;color:#147a42;border:1px solid #bfe8cf}
.contact-form-message.error{display:block;background:#fff0f1;color:#b4232b;border:1px solid #ffd0d4}
.contact-form .form-submit.is-loading{opacity:.72;pointer-events:none}
@media(max-width:1024px){.ts-unified-footer{grid-template-columns:repeat(2,minmax(0,1fr))}.ts-unified-footer .footer-brand{grid-column:1/-1}}
@media(max-width:640px){.ts-unified-footer{grid-template-columns:1fr;gap:24px}.ts-unified-footer .footer-brand{grid-column:auto}.contact-captcha-field{max-width:none}}

/* CRM-backed public content pages */
.cms-content-body{max-width:980px;margin:0 auto;color:#4f596b;font-size:15px;line-height:1.8}
.cms-content-body>*:first-child{margin-top:0}.cms-content-body>*:last-child{margin-bottom:0}
.cms-content-body h2,.cms-content-body h3,.cms-content-body h4{color:var(--navy);line-height:1.25;margin:28px 0 10px}
.cms-content-body h2{font-size:28px}.cms-content-body h3{font-size:22px}.cms-content-body p{margin:0 0 15px}
.cms-content-body ul,.cms-content-body ol{padding-left:22px;margin:0 0 18px}.cms-content-body li{margin:5px 0}
.cms-content-body img{max-width:100%;height:auto;border-radius:16px}.cms-content-body a{color:var(--red);text-decoration:underline;text-underline-offset:2px}
.cms-content-body table{width:100%;border-collapse:collapse;margin:18px 0}.cms-content-body th,.cms-content-body td{border:1px solid #e1e6ed;padding:10px;text-align:left;vertical-align:top}
.cms-content-body blockquote{margin:20px 0;padding:16px 18px;border-left:4px solid var(--red);background:#fff6f6;border-radius:0 12px 12px 0}
.services-page-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.service-page-card{border:1px solid #e2e7ee;border-radius:18px;overflow:hidden;background:#fff;box-shadow:0 10px 30px rgba(22,31,50,.06)}
.service-page-image{display:block;height:190px;overflow:hidden}.service-page-image img{width:100%;height:100%;object-fit:cover}.service-page-body{padding:20px}.service-page-icon{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:#fff0f1;color:var(--red);margin-top:-42px;position:relative;border:4px solid #fff}
.service-page-body h2{font-size:20px;margin:13px 0 8px}.service-page-body h2 a{color:var(--navy)}.service-page-body p{color:#6b7485;font-size:13px;line-height:1.7;min-height:44px}
.service-card{cursor:pointer;text-decoration:none}.service-card:hover{transform:translateY(-2px)}
.contact-map{margin-top:18px;border-radius:14px;overflow:hidden;min-height:220px;background:#eef1f5}.contact-map iframe{display:block;width:100%;height:240px;border:0}
.contact-cms-intro{padding-bottom:0}.agent-cms-copy{font-size:13px;line-height:1.65;margin:18px 0;max-width:none}.agent-cms-copy h2,.agent-cms-copy h3{font-size:18px;margin:16px 0 7px}
.cms-dynamic-page.blog-detail-page .blog-detail-hero .page-container{max-width:980px}.blog-back-link{display:inline-flex;gap:8px;align-items:center;color:#6d7788;font-size:12px;margin-bottom:18px}.cms-dynamic-page .blog-detail-layout{grid-template-columns:minmax(0,780px) minmax(220px,300px);max-width:1120px}.cms-dynamic-page .blog-detail-image{width:100%;max-height:480px;object-fit:cover;border-radius:20px;margin-bottom:26px}.blog-related{display:flex;flex-direction:column;gap:10px;position:sticky;top:110px}.blog-related h3{color:var(--navy);margin:0 0 5px}.blog-related a{display:flex;flex-direction:column;gap:5px;padding:13px;border:1px solid #e2e7ee;border-radius:12px;background:#fff}.blog-related a strong{color:var(--navy);font-size:13px}.blog-related a span{color:#788293;font-size:11px;line-height:1.5}
@media(max-width:1024px){.services-page-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cms-dynamic-page .blog-detail-layout{grid-template-columns:1fr}.blog-related{position:static}}
@media(max-width:640px){.services-page-grid{grid-template-columns:1fr}.service-page-image{height:180px}.cms-content-body{font-size:14px}.cms-content-body h2{font-size:23px}.cms-content-body h3{font-size:19px}}

/* CRM content empty state: shown only when no active row is currently published. */
.cms-empty-state{grid-column:1/-1;min-height:220px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:10px;padding:36px 24px;border:1px dashed #d9dce3;border-radius:18px;background:#fff;color:#5e6472}.cms-empty-state i{font-size:30px;color:#ef2028}.cms-empty-state h2{margin:0;color:#20242d;font-size:22px}.cms-empty-state p{max-width:560px;margin:0;line-height:1.6}

/* Phase: full live segment + layover breakdown on flight booking/review */
.booking-detailed-itinerary{overflow:hidden;background:#fff;border-color:#dfe5ec}
.booking-detailed-head{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 18px;background:#f8fafc;border-bottom:1px solid #e7ebf0}
.booking-detailed-head>div:first-child>span{display:block;color:var(--red);font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px}
.booking-detailed-head h3{margin:0!important;padding:0!important;background:none!important;border:0!important;font-size:16px!important}
.booking-detailed-head h3 i{font-size:12px;color:#9aa4b2;margin:0 6px}
.booking-detailed-head>div:last-child{text-align:right;display:flex;flex-direction:column;gap:2px;white-space:nowrap}
.booking-detailed-head>div:last-child strong{font-size:12px;color:#11182f}
.booking-detailed-head>div:last-child small{font-size:10px;color:#6b7482}
.booking-segment-card{padding:16px 18px;background:#fff}
.booking-segment-head{display:flex;align-items:center;gap:11px;margin-bottom:15px}
.booking-segment-number{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:#fff0f1;color:var(--red);font-size:10px;font-weight:900;padding:6px 9px;white-space:nowrap}
.booking-segment-head>div{display:flex;flex-direction:column;gap:2px}
.booking-segment-head strong{font-size:13px;color:#11182f}.booking-segment-head small{font-size:10px;color:#697281}
.booking-segment-route{display:grid;grid-template-columns:minmax(0,1fr) 150px minmax(0,1fr);gap:18px;align-items:start}
.booking-segment-point{display:flex;flex-direction:column;gap:3px;min-width:0}.booking-segment-point.arrive{text-align:right;align-items:flex-end}
.booking-segment-point>span{font-size:12px;font-weight:800;color:#11182f}.booking-segment-point>strong{font-size:22px;line-height:1.05;color:#07142f}.booking-segment-point>small{font-size:10px;color:#667085}.booking-segment-point>em{font-size:10px;color:#7d8795;font-style:normal;margin-top:2px;max-width:100%}
.booking-segment-duration{text-align:center;padding-top:3px}.booking-segment-duration span{font-size:10px;color:#5f6978}.booking-segment-duration i{display:block;height:1px;background:#aeb8c5;position:relative;margin:9px 0}.booking-segment-duration i:after{content:"";position:absolute;width:7px;height:7px;border:1px solid #9ba7b5;background:#fff;border-radius:50%;left:50%;top:50%;transform:translate(-50%,-50%)}.booking-segment-duration small{font-size:9px;color:#8a94a2}
.booking-segment-meta{display:flex;gap:8px;flex-wrap:wrap;margin-top:13px;padding-top:11px;border-top:1px dashed #e4e8ee}.booking-segment-meta span{font-size:10px;color:#596273;background:#f7f9fb;border-radius:6px;padding:6px 8px}.booking-segment-meta i{color:#ef2028;margin-right:4px}
.booking-layover{display:flex;align-items:center;gap:11px;margin:0 18px;padding:11px 14px;border-top:1px solid #d8e5f5;border-bottom:1px solid #d8e5f5;background:#f3f8ff;color:#174d8f}.booking-layover>i{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#fff;border:1px solid #cbdcf1}.booking-layover>div{display:flex;flex-direction:column;gap:2px}.booking-layover strong{font-size:11px}.booking-layover small{font-size:9px;color:#56769b}
.booking-multi-wrapper>.booking-detailed-itinerary{margin-bottom:12px}
@media(max-width:700px){.booking-detailed-head{align-items:flex-start;padding:13px 14px}.booking-detailed-head>div:last-child{white-space:normal}.booking-detailed-head h3{font-size:14px!important}.booking-segment-card{padding:14px}.booking-segment-route{grid-template-columns:1fr 82px 1fr;gap:8px}.booking-segment-point>strong{font-size:19px}.booking-segment-point>em{font-size:9px}.booking-segment-duration{padding-top:2px}.booking-layover{margin:0 14px;padding:10px}.booking-segment-meta{gap:5px}}
@media(max-width:420px){.booking-detailed-head{display:block}.booking-detailed-head>div:last-child{text-align:left;margin-top:7px}.booking-segment-head{align-items:flex-start}.booking-segment-head>div{min-width:0}.booking-segment-route{grid-template-columns:1fr 60px 1fr}.booking-segment-point>span{font-size:10px}.booking-segment-point>strong{font-size:18px}.booking-segment-point>small,.booking-segment-duration span{font-size:9px}.booking-segment-duration small{display:none}.booking-segment-point>em{line-height:1.35}.booking-layover strong{font-size:10px}}
/* Flight itinerary details inside listing fare-rules modal. */
.flight-rule-option>.flight-booking-itinerary,.flight-rule-option>.booking-multi-wrapper{margin:14px 16px 16px}
.flight-rule-option>.booking-multi-wrapper .flight-booking-itinerary{margin-bottom:12px}
.flight-rule-option>.booking-multi-wrapper .flight-booking-itinerary:last-child{margin-bottom:0}
@media(max-width:600px){.flight-rule-option>.flight-booking-itinerary,.flight-rule-option>.booking-multi-wrapper{margin:12px}.flight-live-fare-modal .booking-segment-route{grid-template-columns:1fr 64px 1fr}.flight-live-fare-modal .booking-segment-card{padding:13px 12px}}

/* Regression-safe merged fare rules UI: preserves multistop itinerary styles above. */
/* Flight fare-rule modal: keep large airline rule tables readable behind tabs. */
.flight-rule-tabs{display:block;border-top:1px solid #edf0f4;background:#fff}
.flight-rule-tab-buttons{display:flex;gap:8px;padding:12px 16px;border-bottom:1px solid #e7eaf0;background:#f8fafc;position:sticky;top:0;z-index:2}
.flight-rule-tab-buttons button{min-height:40px;border:1px solid #dce2ea;border-radius:9px;background:#fff;color:#4d596b;padding:0 16px;font:inherit;font-size:12px;font-weight:800;display:inline-flex;align-items:center;justify-content:center;gap:7px;cursor:pointer;transition:.18s ease}
.flight-rule-tab-buttons button:hover{border-color:#f0a4a8;color:#d8202a;background:#fff7f7}
.flight-rule-tab-buttons button.active{border-color:#ef2028;background:#ef2028;color:#fff;box-shadow:0 7px 16px rgba(239,32,40,.16)}
.flight-rule-tab-panel{padding:16px;min-width:0}
.flight-rule-tab-panel[hidden]{display:none!important}
.flight-rule-panel-scroll{max-width:100%;overflow-x:auto;overflow-y:visible;-webkit-overflow-scrolling:touch;scrollbar-width:thin}
.flight-rule-tab-panel h4{margin:0 0 9px;font-size:13px}
.flight-rule-tab-panel p{font-size:12px;color:#5e6878;margin:5px 0;line-height:1.5}
.flight-rule-tab-panel table,.flight-rule-tab-panel .tb-flight-rule-table{width:max-content;min-width:100%;border-collapse:collapse;font-size:12px}
.flight-rule-tab-panel th,.flight-rule-tab-panel td,.flight-rule-tab-panel .tb-flight-rule-table th,.flight-rule-tab-panel .tb-flight-rule-table td{padding:8px;border:1px solid #e6e9ee;text-align:left;vertical-align:top;white-space:normal}
.flight-rule-tab-panel th,.flight-rule-tab-panel .tb-flight-rule-table th{background:#f7f8fa}
@media(max-width:600px){.flight-rule-tab-buttons{padding:10px;gap:6px}.flight-rule-tab-buttons button{flex:1;min-width:0;padding:0 10px;font-size:11px}.flight-rule-tab-panel{padding:10px}.flight-rule-tab-panel table,.flight-rule-tab-panel .tb-flight-rule-table{min-width:680px}}


/* TBO fare-rule HTML normalizer: keep arbitrary airline tables readable inside the modal. */
.flight-rule-panel-scroll{overflow:visible}
.flight-rule-tab-panel{overflow:hidden}
.flight-rule-table-wrap{width:100%;max-width:100%;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:thin;border:1px solid #e3e8ef;border-radius:10px;background:#fff;margin:8px 0 14px}
.flight-rule-table-wrap::-webkit-scrollbar{height:9px}.flight-rule-table-wrap::-webkit-scrollbar-thumb{background:#c5ccd6;border-radius:99px}.flight-rule-table-wrap::-webkit-scrollbar-track{background:#f4f6f8;border-radius:99px}
.flight-rule-normalized-table{margin:0!important;border:0!important;width:100%!important;min-width:100%;max-width:none!important;background:#fff;color:#101828;font-size:12px;line-height:1.4}
.flight-rule-table-wrap.is-wide .flight-rule-normalized-table{width:max-content!important;min-width:920px}
.flight-rule-normalized-table th,.flight-rule-normalized-table td{box-sizing:border-box;min-width:72px;max-width:320px;padding:9px 10px!important;border:1px solid #e4e8ee!important;vertical-align:top!important;white-space:normal!important;overflow-wrap:anywhere;word-break:normal}
.flight-rule-normalized-table th{background:#f5f7fa!important;font-weight:800;color:#182230}
.flight-rule-normalized-table tr:nth-child(even) td{background:#fbfcfd}
.flight-rule-normalized-table.is-meta{width:auto!important;min-width:0!important;border:0!important;background:transparent}
.flight-rule-normalized-table.is-meta td,.flight-rule-normalized-table.is-meta th{background:#f8fafc!important;min-width:0;max-width:100%;font-weight:700;border-color:#e7ebf0!important}
.flight-rule-scroll-hint{display:flex;align-items:center;gap:7px;margin:9px 0 6px;padding:8px 10px;border-radius:8px;background:#f1f6ff;color:#335d96;font-size:11px;font-weight:700}
.flight-rule-scroll-hint i{color:#2970d6}
.flight-rule-table-wrap.is-wide .flight-rule-sticky-cell{position:sticky;left:0;z-index:1;background:#fff!important;box-shadow:1px 0 0 #e1e6ec}
.flight-rule-table-wrap.is-wide tr:nth-child(even) .flight-rule-sticky-cell{background:#fbfcfd!important}
.flight-rule-table-wrap.is-wide th.flight-rule-sticky-cell{z-index:2;background:#f5f7fa!important}
.flight-rule-plain,.flight-rule-empty{margin:0;padding:12px;border:1px solid #e6eaf0;border-radius:8px;background:#fafbfc;color:#566173;white-space:pre-wrap;overflow-wrap:anywhere}
@media(max-width:600px){.flight-rule-table-wrap.is-wide .flight-rule-normalized-table{min-width:760px}.flight-rule-normalized-table th,.flight-rule-normalized-table td{padding:8px!important;font-size:11px;min-width:66px}.flight-rule-scroll-hint{font-size:10px}}

/* Flight booking fare policy: lightweight trigger + listing-sized tabbed modal */
.checkout-policy-summary{display:block;margin-top:10px}
.checkout-policy-links{display:flex;justify-content:flex-end;align-items:center;gap:14px;flex-wrap:wrap}
.checkout-policy-link{appearance:none;border:0;background:transparent;color:#667085;padding:4px 0;font:inherit;font-size:12px;font-weight:700;cursor:pointer;display:inline-flex;align-items:center;gap:7px;transition:.18s ease}
.checkout-policy-link:hover{color:var(--red)}
.checkout-policy-link i{font-size:10px}
.checkout-policy-card{width:min(1040px,calc(100% - 30px));max-height:90vh;padding:0;overflow:auto;border-radius:16px}
.checkout-policy-card>h2{margin:0;padding:20px 30px 14px;border-bottom:1px solid #e5e7eb;font-size:22px}
.checkout-policy-card>[data-policy-body]{padding:0 0 18px}
.checkout-policy-context{padding:10px 30px 0;color:#657083;font-size:12px;font-weight:700}
.checkout-fare-rule-tabs{margin-top:10px}
.checkout-fare-rule-tabs .flight-rule-tab-buttons{padding-left:30px;padding-right:30px}
.checkout-fare-rule-tabs .flight-rule-tab-panel{padding:18px 30px 8px}
.checkout-policy-close{z-index:5}
@media(max-width:600px){
  .checkout-policy-links{justify-content:flex-end}
  .checkout-policy-card{width:100%;max-height:92vh;border-radius:18px 18px 0 0}
  .checkout-policy-modal{align-items:end;padding:0}
  .checkout-policy-card>h2{padding:18px 48px 12px 16px;font-size:19px}
  .checkout-policy-context{padding:8px 16px 0}
  .checkout-fare-rule-tabs .flight-rule-tab-buttons{padding:10px}
  .checkout-fare-rule-tabs .flight-rule-tab-panel{padding:10px}
}

/* Phase: clean customer-facing airline fare policy. Raw TBO tables stay optional. */
.fare-policy-clean{display:grid;gap:14px;min-width:0;color:#111827}
.fare-policy-meta{display:flex;flex-wrap:wrap;gap:7px}.fare-policy-meta span{display:inline-flex;align-items:center;gap:4px;min-height:28px;padding:5px 9px;border:1px solid #e4e9f0;border-radius:999px;background:#f8fafc;color:#5a6575;font-size:11px}.fare-policy-meta strong,.fare-policy-meta b{color:#111827}
.fare-policy-clean-head{display:flex;align-items:center;gap:11px;padding:13px 14px;border:1px solid #dfe6ef;border-radius:12px;background:#f8fafc}.fare-policy-clean-head>span{width:36px;height:36px;border-radius:10px;background:#fff0f1;color:#ef2028;display:grid;place-items:center;flex:0 0 36px}.fare-policy-clean-head>div{display:grid;gap:2px}.fare-policy-clean-head strong{font-size:14px;color:#111827}.fare-policy-clean-head small{font-size:11px;line-height:1.45;color:#667085}
.fare-policy-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.fare-policy-card{min-width:0;border:1px solid #e1e6ed;border-radius:12px;padding:13px;background:#fff;display:grid;gap:5px}.fare-policy-card small{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.02em;color:#667085}.fare-policy-card strong{font-size:12px;line-height:1.4;color:#263247}.fare-policy-card b{font-size:20px;line-height:1.2;color:#0e1830}.fare-policy-card span{font-size:10px;color:#7b8492}
.fare-policy-info-section{border:1px solid #e1e6ed;border-radius:12px;background:#fff;overflow:hidden}.fare-policy-info-section h5{margin:0;padding:11px 13px;background:#f8fafc;border-bottom:1px solid #e8ecf1;font-size:12px;display:flex;align-items:center;gap:7px}.fare-policy-info-section h5 i{color:#ef2028}.fare-policy-info-list{display:grid}.fare-policy-info-list>div{display:grid;grid-template-columns:minmax(150px,.8fr) minmax(0,1.4fr);gap:14px;padding:10px 13px;border-top:1px solid #edf0f4}.fare-policy-info-list>div:first-child{border-top:0}.fare-policy-info-list strong{font-size:11px;color:#293346}.fare-policy-info-list span{font-size:11px;line-height:1.5;color:#5f6978;overflow-wrap:anywhere}
.fare-policy-details{border:1px solid #e1e6ed;border-radius:12px;background:#fff;overflow:hidden}.fare-policy-details summary{list-style:none;cursor:pointer;padding:11px 13px;font-size:11px;font-weight:800;color:#263247;display:flex;align-items:center;justify-content:space-between;gap:10px;background:#fbfcfd}.fare-policy-details summary::-webkit-details-marker{display:none}.fare-policy-details summary:after{content:'+';font-size:17px;line-height:1;color:#7a8492}.fare-policy-details[open] summary:after{content:'−'}.fare-policy-details summary span{min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:#eef2f6;display:inline-flex;align-items:center;justify-content:center;font-size:10px;margin-left:auto}
.fare-policy-currency-list{display:grid;border-top:1px solid #edf0f4}.fare-policy-currency-row{display:grid;grid-template-columns:58px 1fr;gap:12px;padding:10px 13px;border-top:1px solid #edf0f4}.fare-policy-currency-row:first-child{border-top:0}.fare-policy-currency-row>strong{font-size:12px;color:#111827}.fare-policy-currency-row>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.fare-policy-currency-row span{display:grid;gap:2px}.fare-policy-currency-row small{font-size:9px;line-height:1.35;color:#788291}.fare-policy-currency-row b{font-size:12px;color:#263247}
.fare-policy-raw-details{background:#fafbfc}.fare-policy-raw-wrap{padding:10px 12px 2px;border-top:1px solid #edf0f4}.fare-policy-raw-wrap .flight-rule-table-wrap{margin-top:0}.fare-policy-clean-fallback>.flight-rule-table-wrap{margin-top:0}
.flight-rule-tab-panel>.flight-rule-panel-scroll>.fare-policy-clean{max-width:100%}.checkout-fare-rule-tabs .fare-policy-clean{padding-bottom:8px}
@media(max-width:700px){.fare-policy-card-grid{grid-template-columns:1fr}.fare-policy-info-list>div{grid-template-columns:1fr;gap:3px}.fare-policy-currency-row{grid-template-columns:48px 1fr}.fare-policy-currency-row>div{grid-template-columns:1fr}.fare-policy-clean-head{align-items:flex-start}.fare-policy-card b{font-size:18px}}

/* Aircraft-style seat map: preserve live TBO seat data while presenting a real cabin layout. */
.checkout-aircraft-seatmap{max-width:100%;min-width:0}.checkout-aircraft-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:0 0 12px;padding:10px 12px;border:1px solid #e5e9ef;border-radius:10px;background:#f8fafc}.checkout-aircraft-toolbar>small{color:#6d7684;font-size:10px;white-space:nowrap}.checkout-aircraft-legend{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.checkout-aircraft-legend>span{display:inline-flex;align-items:center;gap:6px;color:#596579;font-size:10px;font-weight:700}.seat-legend-dot{width:13px;height:13px;border-radius:4px;border:1px solid #d8dee8;background:#fff;display:inline-block}.seat-legend-dot.paid{border-color:#f3b5b8;background:#fff5f5}.seat-legend-dot.selected{border-color:var(--red);background:var(--red)}.seat-legend-dot.occupied{border-color:#d9dee5;background:#e9edf2}
.checkout-aircraft-shell{position:relative;width:max-content;min-width:min(100%,540px);max-width:none;margin:0 auto;border:1px solid #dfe5ec;border-radius:70px 70px 28px 28px;background:linear-gradient(180deg,#fbfcfe 0,#fff 12%,#fff 92%,#f7f9fc 100%);box-shadow:inset 0 0 0 7px #f7f9fb;padding:58px 34px 34px;overflow:hidden}.checkout-aircraft-shell:before,.checkout-aircraft-shell:after{content:'';position:absolute;top:105px;width:42px;height:85px;border:1px solid #e1e6ed;background:#f8fafc;z-index:0}.checkout-aircraft-shell:before{left:-32px;border-radius:40px 0 0 40px}.checkout-aircraft-shell:after{right:-32px;border-radius:0 40px 40px 0}.checkout-aircraft-nose{position:absolute;top:9px;left:50%;transform:translateX(-50%);display:grid;place-items:center;gap:1px;color:#697386;z-index:1}.checkout-aircraft-nose>span{display:block;width:44px;height:18px;border-radius:50% 50% 7px 7px;border:1px solid #dce2ea;background:#f4f7fa}.checkout-aircraft-nose i{font-size:15px;transform:rotate(90deg);color:#ef2028;margin-top:-9px}.checkout-aircraft-nose small{text-transform:uppercase;letter-spacing:.07em;font-size:8px;font-weight:800}.checkout-aircraft-cabin{position:relative;z-index:1;display:grid;gap:7px}.checkout-aircraft-row{display:grid;grid-template-columns:24px auto;align-items:center;gap:8px}.checkout-aircraft-rowno{font-size:10px;color:#8a93a1;text-align:right;font-variant-numeric:tabular-nums}.checkout-aircraft-groups{display:flex;align-items:center;gap:0}.checkout-aircraft-group{display:grid;grid-auto-flow:column;grid-auto-columns:46px;gap:5px}.checkout-aircraft-aisle{width:30px;display:flex;align-items:center;justify-content:center;align-self:stretch;position:relative}.checkout-aircraft-aisle:before{content:'';position:absolute;top:0;bottom:0;left:50%;border-left:1px dashed #e4e8ee}.checkout-aircraft-aisle span{position:relative;background:#fff;padding:2px 3px;color:#b0b7c1;font-size:7px;border-radius:4px;z-index:1}.checkout-seat-spacer{width:46px;height:44px;display:block}.checkout-aircraft-seatmap .checkout-seat{position:relative;width:46px;height:44px;border-radius:9px;border:1px solid #d8dee7;background:#fff;box-shadow:0 1px 0 rgba(16,24,40,.02);transition:transform .12s ease,border-color .12s ease,box-shadow .12s ease,background .12s ease}.checkout-aircraft-seatmap .checkout-seat:before,.checkout-aircraft-seatmap .checkout-seat:after{content:'';position:absolute;bottom:5px;width:4px;height:15px;border:1px solid currentColor;opacity:.18}.checkout-aircraft-seatmap .checkout-seat:before{left:-4px;border-radius:4px 0 0 4px;border-right:0}.checkout-aircraft-seatmap .checkout-seat:after{right:-4px;border-radius:0 4px 4px 0;border-left:0}.checkout-aircraft-seatmap .checkout-seat:hover:not(:disabled){transform:translateY(-1px);border-color:#ef9fa3;box-shadow:0 5px 14px rgba(16,24,40,.07)}.checkout-aircraft-seatmap .checkout-seat span{font-size:12px;line-height:1;font-weight:900}.checkout-aircraft-seatmap .checkout-seat small{font-size:8px;line-height:1.15;max-width:42px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.checkout-aircraft-seatmap .checkout-seat.paid{background:#fff9f9;border-color:#f1c7c9}.checkout-aircraft-seatmap .checkout-seat.free{background:#fff;border-color:#cfd8e4}.checkout-aircraft-seatmap .checkout-seat.blocked{background:#edf0f4;border-color:#e0e4ea;color:#a8afb9;box-shadow:none}.checkout-aircraft-seatmap .checkout-seat.selected{background:var(--red);border-color:var(--red);color:#fff;box-shadow:0 5px 14px rgba(239,32,40,.2)}.checkout-aircraft-tail{width:72px;height:18px;margin:18px auto -24px;border-radius:6px 6px 40px 40px;border:1px solid #dfe5ec;background:#f6f8fb}.checkout-aircraft-seatmap .checkout-seat-selection-copy{margin:10px auto 0;max-width:640px;text-align:center}
@media(max-width:760px){.checkout-aircraft-toolbar{align-items:flex-start;flex-direction:column}.checkout-aircraft-toolbar>small{white-space:normal}.checkout-aircraft-seatmap{overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:4px}.checkout-aircraft-shell{margin-left:0;min-width:510px;padding-left:25px;padding-right:25px}.checkout-aircraft-group{grid-auto-columns:42px;gap:4px}.checkout-seat-spacer,.checkout-aircraft-seatmap .checkout-seat{width:42px}.checkout-aircraft-aisle{width:24px}.checkout-aircraft-row{grid-template-columns:20px auto;gap:6px}}
/* CRM-only content: show a neutral shell only when a real CRM package lacks an image. */
.package-image.package-image-empty{min-height:180px;background:#f6f7f9;position:relative}
