/* AirlyGo V11.1.70 — mobile conversion layer.
   Mobile/tablet only unless a rule explicitly declares a desktop-safe default. */
:root{
  --ag170-navy:#0b2342;
  --ag170-navy-deep:#06172d;
  --ag170-orange:#ff7200;
  --ag170-orange-hover:#e86600;
  --ag170-ink:#12233a;
  --ag170-muted:#66778d;
  --ag170-line:#d7e0eb;
  --ag170-surface:#fff;
  --ag170-soft:#f4f7fb;
  --ag170-ui:"Work Sans","Segoe UI",Arial,sans-serif;
  --ag170-heading:"Baloo 2","Work Sans","Segoe UI",Arial,sans-serif;
  --ag170-si:"Noto Sans Sinhala","Iskoola Pota","Segoe UI",sans-serif;
  --ag170-ta:"Noto Sans Tamil","Nirmala UI","Latha","Segoe UI",sans-serif;
}
.ag170-search-summary,
.ag170-search-sheet-head,
.ag170-footer-mobile,
.ag170-sort-head,
.ag170-search-backdrop,
.ag170-sort-backdrop{display:none}
.ag170-search-backdrop[hidden],.ag170-sort-backdrop[hidden]{display:none!important}

@media(max-width:900px){
  html,body,button,input,select,textarea{font-family:var(--ag170-ui)!important}
  h1,h2,h3,h4,h5,h6,.hotel-title,.price-nightly{font-family:var(--ag170-heading)!important}
  html[lang="si"] body,html[lang="si"] button,html[lang="si"] input{font-family:var(--ag170-si)!important}
  html[lang="ta"] body,html[lang="ta"] button,html[lang="ta"] input{font-family:var(--ag170-ta)!important}

  /* A phone has one primary bottom action at a time. */
  body .back-to-top,body #backToTop{display:none!important}

  /* Keep all three hamburger strokes visible across old header layers. */
  body .nav-toggle{
    width:46px!important;height:46px!important;min-width:46px!important;padding:10px!important;
    display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;
    gap:5px!important;border:0!important;background:transparent!important;
  }
  body .nav-toggle span{
    display:block!important;width:25px!important;height:2.5px!important;min-height:2.5px!important;
    margin:0!important;border-radius:999px!important;background:var(--ag170-navy)!important;opacity:1!important;
  }

  /* Home remains a visible manual field flow. */
  body #v6StayForm.ag-v117-ready{grid-template-columns:minmax(0,1fr)!important;gap:10px!important}
  body #v6StayForm .v6-destination-field,
  body #v6StayForm .ag-v117-date-field,
  body #v6StayForm .v6-travellers{height:62px!important;min-height:62px!important;border-radius:12px!important}
  body #v6StayForm>.v6-search-button{
    width:100%!important;min-width:0!important;max-width:none!important;height:52px!important;min-height:52px!important;
    border:0!important;border-radius:12px!important;clip-path:none!important;background:var(--ag170-orange)!important;
    display:flex!important;align-items:center!important;justify-content:center!important;gap:9px!important;
    color:#fff!important;box-shadow:0 8px 18px rgba(255,114,0,.2)!important;
  }
  body #v6StayForm>.v6-search-button span{display:inline!important}

  /* Compact results/details search summary. */
  body.ag170-search-ready .ag170-search-summary{
    width:100%;min-height:74px;margin:0;border:1px solid var(--ag170-line);border-radius:14px;background:#fff;
    display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:11px;padding:10px 12px;
    color:var(--ag170-ink);text-align:left;box-shadow:0 5px 18px rgba(7,27,52,.07);cursor:pointer;
  }
  .hotel-search-page .search-dock>.wrap>.ag170-search-summary{margin:10px 0}
  .hotel-details-page .ag-details-search>.ag170-search-summary{
    width:min(680px,calc(100% - 24px));margin:10px auto;
  }
  .ag170-search-summary-icon{
    width:38px;height:38px;border-radius:11px;background:#edf5ff;color:#1769c2;display:grid;place-items:center;
  }
  .ag170-search-summary-icon svg,.ag170-search-summary-edit svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
  .ag170-search-summary-copy{display:block;min-width:0}
  .ag170-search-summary-copy small{
    display:block;margin:0 0 2px;color:var(--ag170-muted);font-size:9px;font-weight:750;letter-spacing:.08em;text-transform:uppercase;
  }
  .ag170-search-summary-copy strong{
    display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ag170-ink);font:700 15px/1.18 var(--ag170-ui)!important;
  }
  .ag170-search-summary-copy>span{
    display:block;margin-top:3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ag170-muted);font-size:11.5px;line-height:1.25;
  }
  .ag170-search-summary-edit{
    min-height:40px;display:flex;align-items:center;justify-content:center;gap:5px;padding:0 4px 0 8px;color:#145f9f;font-size:12px;
  }
  .ag170-search-summary-edit b{font-weight:750}
  body.ag170-search-ready:not(.ag170-search-editing) #hotelResultsForm,
  body.ag170-search-ready:not(.ag170-search-editing) #agDetailsSearchForm{display:none!important}

  body.ag170-search-editing{overflow:hidden!important}
  body.ag170-search-editing .ag170-search-backdrop{
    position:fixed;inset:0;z-index:3000;display:block;background:rgba(5,19,38,.58);backdrop-filter:blur(2px);
  }
  body.ag170-search-editing #hotelResultsForm,
  body.ag170-search-editing #agDetailsSearchForm{
    position:fixed!important;left:50%!important;right:auto!important;bottom:10px!important;top:auto!important;
    z-index:3100!important;width:min(680px,calc(100% - 20px))!important;max-width:680px!important;max-height:calc(100dvh - 20px)!important;
    margin:0!important;padding:0 14px calc(14px + env(safe-area-inset-bottom))!important;transform:translateX(-50%)!important;
    overflow:auto!important;overscroll-behavior:contain;background:#fff!important;border:1px solid rgba(255,255,255,.55)!important;
    border-radius:22px!important;box-shadow:0 28px 80px rgba(4,20,40,.3)!important;
    display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:10px!important;align-items:stretch!important;
  }
  .ag170-search-sheet-head{
    position:sticky;top:0;z-index:4;grid-column:1/-1;min-height:77px;margin:0 -14px 2px;padding:15px 14px 12px;
    display:flex;align-items:flex-start;justify-content:space-between;gap:12px;background:#fff;border-bottom:1px solid #e7edf4;
  }
  .ag170-search-sheet-head>div{min-width:0;display:block}
  .ag170-search-sheet-head small{display:block;color:#1769c2;font-size:9px;font-weight:800;letter-spacing:.1em}
  .ag170-search-sheet-head strong{display:block;margin-top:2px;color:var(--ag170-ink);font:750 22px/1.05 var(--ag170-heading)!important}
  .ag170-search-sheet-head span{display:block;margin-top:3px;color:var(--ag170-muted);font-size:11px}
  .ag170-search-sheet-head button{
    width:42px;height:42px;min-width:42px;border:1px solid #dbe4ee;border-radius:50%;background:#fff;color:var(--ag170-ink);
    display:grid;place-items:center;padding:0;font-size:27px;font-weight:400;line-height:1;cursor:pointer;
  }
  body.ag170-search-editing #hotelResultsForm .search-field,
  body.ag170-search-editing #hotelResultsForm .ag-trip-dates,
  body.ag170-search-editing #hotelResultsForm .guests-button,
  body.ag170-search-editing #agDetailsSearchForm .ag-ds-field{
    width:100%!important;height:62px!important;min-height:62px!important;border:1px solid #b8c7d8!important;border-radius:12px!important;
    background:#fff!important;box-shadow:none!important;
  }
  body.hotel-search-page.ag170-search-editing section.search-dock form#hotelResultsForm>button.search-submit,
  body.hotel-details-page.ag170-search-editing section.ag-details-search form#agDetailsSearchForm>button.ag-ds-submit{
    width:100%!important;min-width:0!important;max-width:none!important;height:52px!important;min-height:52px!important;max-height:none!important;
    padding:0 18px!important;border:0!important;border-radius:12px!important;background:var(--ag170-orange)!important;color:#fff!important;
    display:flex!important;align-items:center!important;justify-content:center!important;justify-self:stretch!important;gap:9px!important;
    box-shadow:0 8px 18px rgba(255,114,0,.2)!important;clip-path:none!important;
  }
  body.ag170-search-editing #hotelResultsForm>button.search-submit>span,
  body.ag170-search-editing #agDetailsSearchForm>button.ag-ds-submit>span{display:inline!important;color:#fff!important;font-weight:750!important}
  body.ag170-search-editing #hotelResultsForm>button.search-submit>svg,
  body.ag170-search-editing #agDetailsSearchForm>button.ag-ds-submit>svg{display:block!important;width:20px!important;height:20px!important;stroke:#fff!important}
  body.ag170-search-editing #hotelResultsForm .search-status,
  body.ag170-search-editing #agDetailsSearchForm .ag68-status{grid-column:1/-1!important;margin:0!important;min-height:0!important}

  /* Search-sheet child popovers must remain above the sheet. */
  body.ag170-search-editing #hotelGuestsPopover,
  body.ag170-search-editing #agDsGuestPop{z-index:3350!important}
  body.ag170-search-editing #agDateBackdrop,
  body.ag170-search-editing #ag140DateBackdrop{z-index:3380!important}
  body.ag170-search-editing #agDatePopover,
  body.ag170-search-editing #ag140DatePopover{z-index:3390!important}
  body.ag170-search-editing #hotelSuggestions,
  body.ag170-search-editing #agDsSuggestions{z-index:3370!important}

  /* Professional sort bottom sheet with explicit context and dismissal. */
  body.ag170-sort-open{overflow:hidden!important}
  body .ag170-sort-backdrop:not([hidden]){
    position:fixed;inset:0;z-index:3200;display:block!important;background:rgba(5,19,38,.54);backdrop-filter:blur(2px);
  }
  body.hotel-search-page .ag-sort-menu{
    position:fixed!important;left:50%!important;right:auto!important;bottom:0!important;top:auto!important;z-index:3300!important;
    width:min(680px,100%)!important;max-width:680px!important;max-height:min(78dvh,620px)!important;margin:0!important;
    padding:0 12px calc(12px + env(safe-area-inset-bottom))!important;transform:translateX(-50%)!important;
    overflow:auto!important;border:0!important;border-radius:22px 22px 0 0!important;background:#fff!important;
    box-shadow:0 -20px 60px rgba(5,19,38,.26)!important;
  }
  .ag170-sort-head{
    position:sticky;top:0;z-index:2;min-height:78px;margin:0 -12px 5px;padding:22px 16px 11px;
    display:flex;align-items:center;justify-content:space-between;gap:12px;background:#fff;border-bottom:1px solid #e8edf3;
  }
  .ag170-sheet-handle{position:absolute;top:8px;left:50%;width:38px;height:4px;transform:translateX(-50%);border-radius:99px;background:#c8d2de}
  .ag170-sort-head>div{display:block;min-width:0}
  .ag170-sort-head small{display:block;color:#1769c2;font-size:9px;font-weight:800;letter-spacing:.1em}
  .ag170-sort-head strong{display:block;margin-top:1px;color:var(--ag170-ink);font:750 22px/1.05 var(--ag170-heading)!important}
  body.hotel-search-page .ag-sort-menu .ag170-sort-head>button{
    width:40px!important;height:40px!important;min-height:40px!important;min-width:40px!important;padding:0!important;
    border:1px solid #dbe4ee!important;border-radius:50%!important;background:#fff!important;color:var(--ag170-ink)!important;
    display:grid!important;place-items:center!important;font-size:25px!important;font-weight:400!important;line-height:1!important;
  }
  body.hotel-search-page .ag-sort-menu>button[data-sort]{
    min-height:52px!important;padding:10px 42px 10px 13px!important;border-radius:11px!important;color:var(--ag170-ink)!important;
    font:650 14px/1.25 var(--ag170-ui)!important;
  }
  body.hotel-search-page .ag-sort-menu>button[data-sort].active{background:#eef6ff!important;color:#0e5da6!important}

  /* Compact results card layout: stack at standard phone widths. */
  .hotel-search-page .results-main{padding-top:16px!important}
  .hotel-search-page .results-toolbar{margin-bottom:10px!important}
  .hotel-search-page .ag63-filter-chips{padding-bottom:4px!important}
  .hotel-search-page .hotel-card{box-shadow:0 8px 24px rgba(7,27,52,.075)!important}
  .hotel-search-page .availability-button{border-radius:10px!important;background:var(--ag170-orange)!important}

  /* Compact unified footer — original desktop footer stays in the DOM. */
  footer.footer-new.ag170-footer-ready{padding:0!important;background:var(--ag170-navy-deep)!important;color:#fff!important}
  footer.footer-new.ag170-footer-ready>.footer-new-grid,
  footer.footer-new.ag170-footer-ready>.fn-bottom{display:none!important}
  .ag170-footer-mobile{
    width:min(680px,100%);margin:0 auto;padding:22px 16px calc(20px + env(safe-area-inset-bottom));
    display:block!important;background:var(--ag170-navy-deep);color:#fff;font-family:var(--ag170-ui)!important;
  }
  .ag170-footer-brand{
    position:relative;padding:0 0 14px;border-bottom:1px solid rgba(255,255,255,.11);
    display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px 12px;
  }
  .ag170-footer-logo{
    display:inline-flex;width:122px;height:52px;align-items:center;justify-content:center;padding:4px 7px;
    border-radius:10px;background:#fff;text-decoration:none;
  }
  .ag170-footer-logo img{display:block;width:108px;height:auto;object-fit:contain}
  .ag170-footer-desc{grid-column:1/-1;max-width:560px;margin:0!important;color:#b9c7d8!important;font:400 13px/1.45 var(--ag170-ui)!important}
  .ag170-footer-social{display:flex!important;align-items:center!important;gap:7px!important;margin:0!important}
  .ag170-footer-social .fn-social-link{
    width:38px!important;height:38px!important;display:grid!important;place-items:center!important;margin:0!important;
    border:1px solid rgba(255,255,255,.15)!important;border-radius:10px!important;background:rgba(255,255,255,.07)!important;color:#fff!important;
  }
  .ag170-footer-social .fn-social-link svg{width:17px!important;height:17px!important;fill:currentColor!important;stroke:none!important}
  .ag170-footer-support{
    margin:16px 0;padding:14px;border:1px solid rgba(255,255,255,.14);border-radius:15px;background:#0d294c;
  }
  .ag170-footer-support-copy small{display:block;color:#66d3c5;font-size:9px;font-weight:800;letter-spacing:.1em}
  .ag170-footer-support-copy strong{display:block;margin-top:3px;color:#fff;font:750 18px/1.1 var(--ag170-heading)!important}
  .ag170-footer-support-copy span{display:block;margin-top:3px;color:#aebfd2;font-size:11px}
  .ag170-footer-support-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-top:12px}
  .ag170-footer-support-actions a{
    min-height:46px;display:flex;align-items:center;justify-content:center;gap:6px;padding:8px 5px;border:1px solid rgba(255,255,255,.15);
    border-radius:10px;background:rgba(255,255,255,.06);color:#fff;text-decoration:none;font-size:11px;font-weight:700;
  }
  .ag170-footer-support-actions a:first-child{border-color:#218b72;background:#0c684f}
  .ag170-footer-support-actions svg,.ag170-footer-trust svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:none}
  .ag170-footer-nav{display:block;border-top:1px solid rgba(255,255,255,.1)}
  .ag170-footer-accordion{margin:0!important;padding:0!important;border-bottom:1px solid rgba(255,255,255,.1)}
  .ag170-footer-accordion-button{
    width:100%;min-height:52px;padding:0 2px;border:0;background:transparent;color:#fff;
    display:flex;align-items:center;justify-content:space-between;text-align:left;font:700 14px/1.2 var(--ag170-ui)!important;cursor:pointer;
  }
  .ag170-footer-accordion-button i{position:relative;width:16px;height:16px;flex:none}
  .ag170-footer-accordion-button i::before,.ag170-footer-accordion-button i::after{
    content:"";position:absolute;left:2px;top:7px;width:12px;height:1.5px;border-radius:2px;background:#91a7bf;transition:transform .18s ease;
  }
  .ag170-footer-accordion-button i::after{transform:rotate(90deg)}
  .ag170-footer-accordion-button[aria-expanded="true"] i::after{transform:rotate(0)}
  .ag170-footer-accordion-panel{padding:0 0 10px}
  .ag170-footer-accordion-panel[hidden]{display:none!important}
  .ag170-footer-link{
    min-height:39px;display:flex!important;align-items:center;padding:5px 4px;color:#b9c8d9!important;
    text-decoration:none!important;font:500 13px/1.35 var(--ag170-ui)!important;
  }
  .ag170-footer-trust{
    display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-top:16px;padding:12px 0;
    border-top:1px solid rgba(255,255,255,.1);border-bottom:1px solid rgba(255,255,255,.1);
  }
  .ag170-footer-trust span{min-width:0;display:flex;flex-direction:column;align-items:center;gap:6px;color:#9fb2c8;text-align:center}
  .ag170-footer-trust svg{color:#56c9bb}
  .ag170-footer-trust b{font-size:9.5px;font-weight:650;line-height:1.25}
  .ag170-footer-bottom{padding-top:14px;text-align:center;color:#8296ae;font:400 10.5px/1.45 var(--ag170-ui)!important}
  .ag170-inline-top{
    width:100%;min-height:44px;margin:0 0 12px;padding:0 14px;border:1px solid rgba(255,255,255,.14);border-radius:10px;
    display:flex;align-items:center;justify-content:space-between;background:rgba(255,255,255,.05);color:#fff;font:700 12px/1 var(--ag170-ui)!important;
  }
  .ag170-inline-top span{font-size:18px;color:var(--ag170-orange)}
  .ag170-footer-bottom p{margin:0 0 3px!important;color:#93a6bc!important;font:400 10.5px/1.45 var(--ag170-ui)!important}
  .ag170-footer-bottom>span{display:block;margin-bottom:6px;text-transform:none;letter-spacing:.02em}
  .ag170-footer-bottom>div{display:flex;align-items:center;justify-content:center;gap:8px}
  .ag170-footer-bottom a{color:#aebfd2;text-decoration:none}
  .ag170-footer-bottom i{font-style:normal;color:#506982}

  /* The details conversion bar leaves the screen before footer navigation. */
  .hotel-details-page .details-main{padding-bottom:82px!important}
  .hotel-details-page .ag60-mobile-booking-bar{transition:transform .22s ease,opacity .22s ease!important}
  .hotel-details-page.ag170-footer-visible .ag60-mobile-booking-bar{
    transform:translateY(120%)!important;opacity:0!important;pointer-events:none!important;
  }
}

@media(max-width:520px){
  .hotel-search-page .hotel-card{display:block!important}
  .hotel-search-page .hotel-photo,
  .hotel-search-page .hotel-photo>img{width:100%!important;height:196px!important;min-height:196px!important;border-radius:0!important}
  .hotel-search-page .hotel-content{padding:13px 13px 8px!important}
  .hotel-search-page .hotel-price-panel{padding:10px 13px 13px!important;border-left:0!important;border-top:1px solid #edf1f5!important}
  .hotel-search-page .price-block{text-align:right!important}
  .hotel-search-page .price-nightly{font-size:21px!important;white-space:normal!important}
  .hotel-search-page .hotel-title{font-size:18px!important}
}

@media(max-width:380px){
  .ag170-search-summary{grid-template-columns:34px minmax(0,1fr) auto!important;padding-inline:9px!important;gap:8px!important}
  .ag170-search-summary-icon{width:34px;height:34px}
  .ag170-search-summary-edit b{display:none}
  .ag170-footer-mobile{padding-inline:13px}
  .ag170-footer-social{gap:5px!important}
  .ag170-footer-social .fn-social-link{width:34px!important;height:34px!important}
  .ag170-footer-support{padding:12px}
  .ag170-footer-support-actions a{font-size:10px}
}

@media(min-width:901px){
  .ag170-search-summary,.ag170-search-sheet-head,.ag170-footer-mobile,.ag170-sort-head,.ag170-search-backdrop,.ag170-sort-backdrop{display:none!important}
}

@media(prefers-reduced-motion:reduce){
  .ag170-footer-accordion-button i::after,.ag60-mobile-booking-bar{transition:none!important}
}
