@media (max-width: 820px) {
  html, body { overflow-x: clip; }

  html body .ir-packages-page[data-ir-listing] .ir-mobile-actions {
    position: sticky !important; top: 0 !important; right: auto !important; bottom: auto !important; left: auto !important;
    z-index: 2147482000 !important; display: grid !important; grid-template-columns: repeat(3,minmax(0,1fr)) !important;
    width: 100% !important; max-width: 100% !important; height: auto !important; margin: 0 0 12px !important;
    padding: 10px 12px !important; gap: 8px !important; background: #f5f6f8 !important;
    box-shadow: 0 8px 20px rgba(7,24,47,.12) !important; isolation: isolate !important; opacity: 1 !important;
  }
  html body .ir-packages-page[data-ir-listing] .ir-mobile-actions button {
    min-width: 0 !important; height: 44px !important; padding: 0 8px !important; border: 1px solid #d9dde3 !important;
    border-radius: 999px !important; background: #fff !important; color: #07182f !important;
    font: 600 14px/1 Arial,sans-serif !important; box-shadow: 0 3px 9px rgba(7,24,47,.1) !important;
  }
  html body .ir-packages-page[data-ir-listing] .ir-list-categories {
    position: sticky !important; top: 64px !important; z-index: 2147481900 !important; background: #fff !important;
    isolation: isolate !important; opacity: 1 !important; box-shadow: 0 5px 15px rgba(7,24,47,.1) !important;
  }
  html body .ir-packages-page[data-ir-listing] .ir-cat-track { background: #fff !important; }
  html body .ir-packages-page[data-ir-listing] .ir-list-grid,
  html body .ir-packages-page[data-ir-listing] .ir-list-card { position: relative !important; z-index: 1 !important; }
  html body .ir-packages-page[data-ir-listing] .ir-trip-footer { grid-template-columns: 34px minmax(0,1fr) 38px !important; }
  html body .ir-packages-page[data-ir-listing] .ir-trip-footer > a:last-child {
    width: 38px !important; min-width: 38px !important; padding: 0 !important; justify-content: center !important; overflow: hidden !important;
  }
  html body .ir-packages-page[data-ir-listing] .ir-trip-footer .ir-trip-label { display: none !important; }

  html body .ir-tour.ir-sotc .ir-compact-ticket {
    display: grid !important; grid-template-columns: minmax(0,1fr) !important; width: calc(100% - 24px) !important;
    max-width: none !important; height: auto !important; min-height: 0 !important; margin: 12px auto 32px !important;
    border-radius: 20px !important; overflow: hidden !important;
  }
  html body .ir-tour.ir-sotc .ir-compact-copy { order: 1 !important; min-width: 0 !important; padding: 16px !important; }
  html body .ir-tour.ir-sotc .ir-compact-image { order: 2 !important; width: 100% !important; height: 190px !important; min-height: 190px !important; }
  html body .ir-tour.ir-sotc .ir-compact-image img { width: 100% !important; height: 100% !important; object-fit: cover !important; }
  html body .ir-tour.ir-sotc .ir-compact-action { order: 3 !important; width: 100% !important; min-height: 0 !important; padding: 16px !important; }
  html body .ir-tour.ir-sotc .ir-badge-row,
  html body .ir-tour.ir-sotc .ir-stat-row,
  html body .ir-tour.ir-sotc .ir-service-row { display: flex !important; max-width: 100% !important; overflow-x: auto !important; gap: 8px !important; scrollbar-width: none !important; }
  html body .ir-tour.ir-sotc .ir-service-row > * { flex: 0 0 86px !important; min-width: 86px !important; }
  html body .ir-tour.ir-sotc .ir-compact-copy h2 { font-size: 32px !important; line-height: 1.05 !important; }

  html body .ir-tour.ir-sotc .ir-tabs,
  html body .ir-tour.ir-sotc .ir-subtabs { position: sticky !important; left: auto !important; right: auto !important; width: 100% !important; max-width: 100% !important; overflow-x: auto !important; transform: none !important; }
  html body .ir-tour.ir-sotc .ir-tabs { top: 0 !important; z-index: 2147481800 !important; }
  html body .ir-tour.ir-sotc .ir-subtabs { top: 58px !important; z-index: 2147481700 !important; }
  html body .ir-tour.ir-sotc .ir-tabs.is-fixed,
  html body .ir-tour.ir-sotc .ir-subtabs.is-fixed { position: sticky !important; left: auto !important; width: 100% !important; }
  html body .ir-tour.ir-sotc .ir-tabs-spacer,
  html body .ir-tour.ir-sotc .ir-subtabs-spacer { display: none !important; height: 0 !important; }
}

/* v1.12.5: tighter mobile boarding pass price/action row. */
@media (max-width: 767px) {
  html body .ir-tour.ir-sotc .ir-compact-ticket,
  html body .ir-tour.ir-sotc section.ir-compact-ticket,
  body .ir-tour.ir-sotc .ir-compact-ticket,
  body .ir-tour.ir-sotc section.ir-compact-ticket {
    width: calc(100% - 8px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  html body .ir-tour.ir-sotc .ir-compact-copy,
  html body .ir-tour.ir-sotc section.ir-compact-ticket .ir-compact-copy,
  body .ir-tour.ir-sotc .ir-compact-copy,
  body .ir-tour.ir-sotc section.ir-compact-ticket .ir-compact-copy {
    padding-left: 12px !important;
    padding-right: 12px !important;
  }

  html body .ir-tour.ir-sotc .ir-compact-action,
  html body .ir-tour.ir-sotc section.ir-compact-ticket .ir-compact-action,
  body .ir-tour.ir-sotc .ir-compact-action,
  body .ir-tour.ir-sotc section.ir-compact-ticket .ir-compact-action {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(150px, 47%) !important;
    grid-template-rows: auto auto auto !important;
    align-items: center !important;
    column-gap: 8px !important;
    row-gap: 2px !important;
    width: 100% !important;
    padding: 10px 12px 12px !important;
  }

  html body .ir-tour.ir-sotc .ir-compact-action .ir-deal,
  body .ir-tour.ir-sotc .ir-compact-action .ir-deal {
    grid-column: 1 / -1 !important;
    grid-row: 1 !important;
    width: max-content !important;
    max-width: 100% !important;
    margin: 0 0 4px !important;
  }

  html body .ir-tour.ir-sotc .ir-compact-action small,
  body .ir-tour.ir-sotc .ir-compact-action small {
    grid-column: 1 !important;
    grid-row: 2 !important;
    margin: 0 !important;
    text-align: left !important;
  }

  html body .ir-tour.ir-sotc .ir-compact-action strong,
  body .ir-tour.ir-sotc .ir-compact-action strong {
    grid-column: 1 !important;
    grid-row: 3 !important;
    margin: 0 !important;
    text-align: left !important;
    white-space: nowrap !important;
  }

  html body .ir-tour.ir-sotc .ir-compact-action del,
  body .ir-tour.ir-sotc .ir-compact-action del {
    grid-column: 1 !important;
    grid-row: 4 !important;
    margin: 0 !important;
    text-align: left !important;
  }

  html body .ir-tour.ir-sotc .ir-compact-action button,
  html body .ir-tour.ir-sotc section.ir-compact-ticket .ir-compact-action button,
  body .ir-tour.ir-sotc .ir-compact-action button,
  body .ir-tour.ir-sotc section.ir-compact-ticket .ir-compact-action button {
    grid-column: 2 !important;
    grid-row: 2 / 5 !important;
    align-self: center !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 44px !important;
    margin: 0 !important;
    padding: 0 14px !important;
    color: #f2bf00 !important;
    border-radius: 10px !important;
    font-family: Inter, "Segoe UI", Roboto, Arial, sans-serif !important;
    font-size: 18px !important;
    font-weight: 650 !important;
    letter-spacing: 0 !important;
    white-space: nowrap !important;
  }

  html body .ir-tour.ir-sotc .ir-compact-action button:after,
  html body .ir-tour.ir-sotc section.ir-compact-ticket .ir-compact-action button:after,
  body .ir-tour.ir-sotc .ir-compact-action button:after,
  body .ir-tour.ir-sotc section.ir-compact-ticket .ir-compact-action button:after {
    color: #f2bf00 !important;
  }

  html body .ir-tour.ir-sotc .ir-compact-action p,
  body .ir-tour.ir-sotc .ir-compact-action p {
    grid-column: 1 / -1 !important;
    grid-row: 5 !important;
    margin: 8px 0 0 !important;
  }
}

/* v1.12.7: align price and CTA with lighter premium type. */
@media (max-width: 767px) {
  html body .ir-tour.ir-sotc .ir-compact-action,
  html body .ir-tour.ir-sotc section.ir-compact-ticket .ir-compact-action,
  body .ir-tour.ir-sotc .ir-compact-action,
  body .ir-tour.ir-sotc section.ir-compact-ticket .ir-compact-action {
    align-items: center !important;
    row-gap: 0 !important;
    padding-top: 10px !important;
  }

  html body .ir-tour.ir-sotc .ir-compact-action small,
  body .ir-tour.ir-sotc .ir-compact-action small {
    align-self: end !important;
    color: #4b5563 !important;
    font-family: Inter, "Segoe UI", Roboto, Arial, sans-serif !important;
    font-size: 14px !important;
    font-weight: 450 !important;
    line-height: 18px !important;
  }

  html body .ir-tour.ir-sotc .ir-compact-action strong,
  body .ir-tour.ir-sotc .ir-compact-action strong {
    align-self: center !important;
    font-family: Inter, "Segoe UI", Roboto, Arial, sans-serif !important;
    font-size: 30px !important;
    font-weight: 620 !important;
    line-height: 34px !important;
    letter-spacing: 0 !important;
  }

  html body .ir-tour.ir-sotc .ir-compact-action del,
  body .ir-tour.ir-sotc .ir-compact-action del {
    align-self: start !important;
    font-family: Inter, "Segoe UI", Roboto, Arial, sans-serif !important;
    font-size: 18px !important;
    font-weight: 450 !important;
    line-height: 20px !important;
  }

  html body .ir-tour.ir-sotc .ir-compact-action button,
  html body .ir-tour.ir-sotc section.ir-compact-ticket .ir-compact-action button,
  body .ir-tour.ir-sotc .ir-compact-action button,
  body .ir-tour.ir-sotc section.ir-compact-ticket .ir-compact-action button {
    align-self: center !important;
    transform: translateY(-1px) !important;
    font-size: 17px !important;
    font-weight: 560 !important;
    line-height: 1 !important;
  }
}

/* v1.12.6 final lock: wider and lighter premium Book Now CTA. */
@media (max-width: 767px) {
  html body .ir-tour.ir-sotc .ir-compact-action,
  html body .ir-tour.ir-sotc section.ir-compact-ticket .ir-compact-action,
  body .ir-tour.ir-sotc .ir-compact-action,
  body .ir-tour.ir-sotc section.ir-compact-ticket .ir-compact-action {
    grid-template-columns: minmax(0, 1fr) minmax(150px, 47%) !important;
    column-gap: 8px !important;
  }

  html body .ir-tour.ir-sotc .ir-compact-action button,
  html body .ir-tour.ir-sotc section.ir-compact-ticket .ir-compact-action button,
  body .ir-tour.ir-sotc .ir-compact-action button,
  body .ir-tour.ir-sotc section.ir-compact-ticket .ir-compact-action button {
    min-height: 44px !important;
    padding: 0 14px !important;
    border-radius: 10px !important;
    font-family: Inter, "Segoe UI", Roboto, Arial, sans-serif !important;
    font-size: 18px !important;
    font-weight: 650 !important;
    letter-spacing: 0 !important;
  }

  html body .ir-tour.ir-sotc .ir-compact-action button:after,
  html body .ir-tour.ir-sotc section.ir-compact-ticket .ir-compact-action button:after,
  body .ir-tour.ir-sotc .ir-compact-action button:after,
  body .ir-tour.ir-sotc section.ir-compact-ticket .ir-compact-action button:after {
    width: 28px !important;
    height: 28px !important;
    margin-left: 8px !important;
    font-size: 18px !important;
    line-height: 28px !important;
  }
}

@media (max-width: 767px) {
  html body .ir-tour.ir-sotc .ir-compact-action button:after,
  html body .ir-tour.ir-sotc section.ir-compact-ticket .ir-compact-action button:after,
  body .ir-tour.ir-sotc .ir-compact-action button:after,
  body .ir-tour.ir-sotc section.ir-compact-ticket .ir-compact-action button:after {
    color: #f2bf00 !important;
  }
}

/* v1.12.6: premium mobile Book Now CTA proportions. */
@media (max-width: 767px) {
  html body .ir-tour.ir-sotc .ir-compact-action,
  html body .ir-tour.ir-sotc section.ir-compact-ticket .ir-compact-action,
  body .ir-tour.ir-sotc .ir-compact-action,
  body .ir-tour.ir-sotc section.ir-compact-ticket .ir-compact-action {
    grid-template-columns: minmax(0, 1fr) minmax(150px, 47%) !important;
    column-gap: 8px !important;
  }

  html body .ir-tour.ir-sotc .ir-compact-action button,
  html body .ir-tour.ir-sotc section.ir-compact-ticket .ir-compact-action button,
  body .ir-tour.ir-sotc .ir-compact-action button,
  body .ir-tour.ir-sotc section.ir-compact-ticket .ir-compact-action button {
    min-height: 44px !important;
    padding: 0 14px !important;
    border-radius: 10px !important;
    font-family: Inter, "Segoe UI", Roboto, Arial, sans-serif !important;
    font-size: 18px !important;
    font-weight: 650 !important;
    letter-spacing: 0 !important;
  }

  html body .ir-tour.ir-sotc .ir-compact-action button:after,
  html body .ir-tour.ir-sotc section.ir-compact-ticket .ir-compact-action button:after,
  body .ir-tour.ir-sotc .ir-compact-action button:after,
  body .ir-tour.ir-sotc section.ir-compact-ticket .ir-compact-action button:after {
    width: 28px !important;
    height: 28px !important;
    margin-left: 8px !important;
    font-size: 18px !important;
    line-height: 28px !important;
  }
}

@media (max-width: 767px) {
    html body .ir-packages-page[data-ir-listing] {
        display: flex !important;
        flex-direction: column !important;
    }

    html body .ir-packages-page[data-ir-listing] .ir-list-categories {
        order: 1;
        position: sticky;
        top: 0;
        z-index: 1002;
        background: #fff;
    }

    html body .ir-packages-page[data-ir-listing] .ir-list-mobile-head {
        order: 2;
        position: sticky;
        top: 74px;
        z-index: 1001;
        background: #fff;
    }

    html body .ir-packages-page[data-ir-listing] .ir-list-shell {
        order: 3;
    }

    html body .ir-packages-page[data-ir-listing] .ir-mobile-filter-nav {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    html body .ir-packages-page[data-ir-listing] .ir-list-filter {
        position: fixed !important;
        inset: max(72px, env(safe-area-inset-top)) 0 0 !important;
        z-index: 100000;
        width: 100% !important;
        max-width: none !important;
        height: auto !important;
        padding-bottom: 90px !important;
        overflow-y: auto !important;
        border-radius: 22px 22px 0 0;
        background: #fff;
        opacity: 0;
        visibility: hidden;
        transform: translateY(105%);
        transition: transform .25s ease, opacity .25s ease, visibility .25s ease;
    }

    html body .ir-packages-page[data-ir-listing].is-filter-open .ir-list-filter {
        opacity: 1;
        visibility: visible;
        transform: none;
    }

    .ir-filter-mobile-footer {
        position: sticky;
        bottom: 0;
        z-index: 5;
        display: grid;
        grid-template-columns: 1fr 2fr;
        gap: 10px;
        padding: 12px 16px calc(12px + env(safe-area-inset-bottom));
        background: #fff;
        box-shadow: 0 -8px 24px rgba(7, 24, 47, .14);
    }

    .ir-filter-apply,
    .ir-filter-reset-mobile {
        min-height: 48px;
        border-radius: 12px;
        font-weight: 700;
    }

    .ir-filter-apply {
        border: 1px solid #c99a34;
        background: #07182f;
        color: #f2bf00;
    }

    .ir-filter-reset-mobile {
        border: 1px solid #d9dfe7;
        background: #fff;
        color: #07182f;
    }
}

@media (min-width: 768px) {
    .ir-filter-mobile-footer {
        display: none !important;
    }
}

/* v1.12.0: compact mobile package filters and boarding pass */
@media (max-width: 820px) {
  html body .ir-packages-page[data-ir-listing] .ir-list-mobile-head {
    display: block !important;
    position: sticky !important;
    top: 0 !important;
    z-index: 2147483000 !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 8px 10px !important;
    background: #fff !important;
    box-shadow: 0 6px 18px rgba(7, 24, 47, .13) !important;
  }
  html body .ir-packages-page[data-ir-listing] .ir-list-appbar,
  html body .ir-packages-page[data-ir-listing] .ir-list-intro { display: none !important; }
  html body .ir-packages-page[data-ir-listing] .ir-mobile-filter-nav {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px !important;
    width: 100% !important;
  }
  html body .ir-packages-page[data-ir-listing] .ir-mobile-filter-nav button {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 7px !important;
    height: 44px !important;
    padding: 0 8px !important;
    border: 1px solid #d7c184 !important;
    border-radius: 10px !important;
    background: #fff !important;
    color: #07182f !important;
    font: 600 12px/1.2 Inter, "Segoe UI", Arial, sans-serif !important;
  }
  html body .ir-packages-page[data-ir-listing] .ir-mobile-filter-nav svg {
    width: 17px !important;
    height: 17px !important;
    flex: 0 0 17px !important;
    fill: none !important;
    stroke: #c99a3e !important;
    stroke-width: 1.8 !important;
    stroke-linecap: round !important;
    stroke-linejoin: round !important;
  }
  html body .ir-packages-page[data-ir-listing] .ir-list-categories {
    top: 60px !important;
    z-index: 2147482999 !important;
  }
  html body .ir-packages-page[data-ir-listing] .ir-mobile-actions { display: none !important; }

  html body .ir-tour.ir-sotc .ir-compact-ticket {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    width: calc(100% - 24px) !important;
    max-width: none !important;
    margin: 12px auto 40px !important;
    border: 1px solid #eadfc5 !important;
    border-radius: 18px !important;
    overflow: hidden !important;
  }
  html body .ir-tour.ir-sotc .ir-compact-copy {
    order: 1 !important;
    min-width: 0 !important;
    padding: 14px !important;
  }
  html body .ir-tour.ir-sotc .ir-compact-copy h2 {
    margin: 8px 0 10px !important;
    font-size: 27px !important;
    line-height: 1.08 !important;
    font-weight: 500 !important;
  }
  html body .ir-tour.ir-sotc .ir-badge-row {
    display: flex !important;
    gap: 6px !important;
    max-width: 100% !important;
    overflow-x: auto !important;
    white-space: nowrap !important;
    scrollbar-width: none !important;
  }
  html body .ir-tour.ir-sotc .ir-stat-row {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 6px !important;
    max-width: 100% !important;
    overflow: visible !important;
  }
  html body .ir-tour.ir-sotc .ir-service-row {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 6px !important;
    max-width: 100% !important;
    overflow: visible !important;
  }
  html body .ir-tour.ir-sotc .ir-service-row > * {
    width: auto !important;
    min-width: 0 !important;
    min-height: 58px !important;
    padding: 7px 3px !important;
    font-size: 10px !important;
  }
  html body .ir-tour.ir-sotc .ir-ticket-place {
    font-size: 13px !important;
    line-height: 1.4 !important;
    overflow-wrap: anywhere !important;
  }
  html body .ir-tour.ir-sotc .ir-compact-image {
    order: 2 !important;
    width: 100% !important;
    height: 165px !important;
    min-height: 165px !important;
  }
  html body .ir-tour.ir-sotc .ir-compact-image img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
  }
  html body .ir-tour.ir-sotc .ir-compact-action {
    order: 3 !important;
    width: 100% !important;
    min-height: 0 !important;
    padding: 14px !important;
  }
  html body .ir-tour.ir-sotc .ir-compact-action .ir-book-btn { min-height: 44px !important; }
}

/* v1.12.1: fresh mobile fixes, preserving the original card and single-page structure. */
@media (max-width: 767px) {
  html body .ir-packages-page[data-ir-listing] {
    --ir-navy-mobile: #07182f;
    --ir-gold-mobile: #f2bf00;
    --ir-gold-border: #c99a34;
    overflow-x: clip !important;
  }

  html body .ir-packages-page[data-ir-listing] .ir-list-mobile-head {
    position: sticky !important;
    top: 0 !important;
    z-index: 120 !important;
    order: 1 !important;
    padding: 14px 14px 12px !important;
    background: #fff !important;
    box-shadow: 0 8px 20px rgba(7, 24, 47, .08) !important;
  }

  html body .ir-packages-page[data-ir-listing] .ir-mobile-filter-nav {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 12px !important;
  }

  html body .ir-packages-page[data-ir-listing] .ir-mobile-filter-nav [data-ir-filter-target="theme"] {
    display: none !important;
  }

  html body .ir-packages-page[data-ir-listing] .ir-mobile-filter-nav button {
    height: 52px !important;
    border: 1px solid rgba(201, 154, 52, .7) !important;
    border-radius: 8px !important;
    background: #fff !important;
    color: var(--ir-navy-mobile) !important;
    font: 800 15px/1 Inter, "Segoe UI", Arial, sans-serif !important;
    box-shadow: 0 6px 16px rgba(7, 24, 47, .08) !important;
  }

  html body .ir-packages-page[data-ir-listing] .ir-mobile-filter-nav svg {
    stroke: var(--ir-gold-border) !important;
  }

  html body .ir-packages-page[data-ir-listing] .ir-list-categories {
    order: 2 !important;
    position: sticky !important;
    top: 78px !important;
    z-index: 110 !important;
    margin: 0 -8px 14px !important;
    background: #fff !important;
  }

  html body .ir-packages-page[data-ir-listing] .ir-list-shell {
    order: 3 !important;
  }

  html body .ir-packages-page[data-ir-listing] .ir-package-list {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px !important;
    align-items: start !important;
    padding-bottom: 110px !important;
  }

  html body .ir-packages-page[data-ir-listing] .ir-list-package.ir-trip-card {
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    height: auto !important;
    min-height: 438px !important;
    max-height: none !important;
    padding: 0 !important;
    overflow: hidden !important;
  }

  html body .ir-packages-page[data-ir-listing] .ir-trip-media {
    flex: 0 0 145px !important;
    height: 145px !important;
    min-height: 145px !important;
  }

  html body .ir-packages-page[data-ir-listing] .ir-trip-content {
    flex: 0 0 auto !important;
    height: auto !important;
    min-height: 128px !important;
    max-height: none !important;
    padding: 8px !important;
    overflow: visible !important;
  }

  html body .ir-packages-page[data-ir-listing] .ir-trip-theme {
    font-size: 9px !important;
    line-height: 1.25 !important;
  }

  html body .ir-packages-page[data-ir-listing] .ir-trip-content h2 {
    margin-bottom: 3px !important;
    font-size: 14px !important;
    line-height: 1.18 !important;
  }

  html body .ir-packages-page[data-ir-listing] .ir-trip-meta {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    height: auto !important;
    min-height: 35px !important;
    gap: 3px !important;
    font-size: 8.5px !important;
    overflow: visible !important;
  }

  html body .ir-packages-page[data-ir-listing] .ir-trip-includes {
    display: grid !important;
    grid-template-columns: 74px minmax(0, 1fr) !important;
    height: auto !important;
    min-height: 32px !important;
    margin-top: 2px !important;
    overflow: visible !important;
  }

  html body .ir-packages-page[data-ir-listing] .ir-trip-includes > strong {
    font-size: 9px !important;
  }

  html body .ir-packages-page[data-ir-listing] .ir-trip-icons {
    display: flex !important;
    align-items: center !important;
    gap: 4px !important;
    overflow: hidden !important;
  }

  html body .ir-packages-page[data-ir-listing] .ir-trip-icons svg,
  html body .ir-packages-page[data-ir-listing] .ir-trip-icons .dashicons {
    width: 12px !important;
    min-width: 12px !important;
    height: 12px !important;
    font-size: 12px !important;
    line-height: 12px !important;
  }

  html body .ir-packages-page[data-ir-listing] .ir-trip-price {
    display: grid !important;
    grid-template-columns: 1fr !important;
    grid-template-rows: auto auto auto auto !important;
    flex: 0 0 auto !important;
    height: auto !important;
    min-height: 105px !important;
    max-height: none !important;
    padding: 7px 8px !important;
    overflow: visible !important;
  }

  html body .ir-packages-page[data-ir-listing] .ir-trip-price > strong {
    font-size: 19px !important;
    line-height: 1.15 !important;
  }

  html body .ir-packages-page[data-ir-listing] .ir-trip-actions {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    grid-template-rows: 31px !important;
    width: 100% !important;
    gap: 4px !important;
    margin-top: 5px !important;
  }

  html body .ir-packages-page[data-ir-listing] .ir-trip-actions a {
    min-height: 31px !important;
    padding: 0 3px !important;
    font-size: 9px !important;
  }

  html body .ir-packages-page[data-ir-listing] .ir-trip-footer {
    display: grid !important;
    grid-template-columns: 28px minmax(0, 1fr) 28px !important;
    gap: 4px !important;
    min-height: 58px !important;
    padding: 7px 8px !important;
    overflow: hidden !important;
  }

  html body .ir-packages-page[data-ir-listing] .ir-trip-wa {
    width: 28px !important;
    height: 28px !important;
    min-width: 28px !important;
    padding: 0 !important;
  }

  html body .ir-packages-page[data-ir-listing] .ir-trip-footer > a:not(.ir-trip-wa) {
    justify-content: flex-start !important;
    font-size: 8.5px !important;
    white-space: nowrap !important;
  }

  html body .ir-packages-page[data-ir-listing] .ir-trip-footer .ir-trip-label {
    display: none !important;
  }

  html body .ir-packages-page[data-ir-listing] .ir-list-filter {
    position: fixed !important;
    inset: 0 !important;
    z-index: 2147483000 !important;
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    height: 100dvh !important;
    padding: 0 0 92px !important;
    overflow-y: auto !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: #f7f8fb !important;
    opacity: 0 !important;
    visibility: hidden !important;
    transform: translateY(100%) !important;
    transition: transform .28s cubic-bezier(.22, .8, .22, 1), opacity .2s ease, visibility .2s ease !important;
  }

  html body .ir-packages-page[data-ir-listing].is-filter-open .ir-list-filter {
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
  }

  html body .ir-packages-page[data-ir-listing] .ir-filter-title {
    position: sticky !important;
    top: 0 !important;
    z-index: 3 !important;
    min-height: 64px !important;
    padding: 16px 18px !important;
    background: #fff !important;
    border-bottom: 1px solid #e7eaf0 !important;
  }

  html body .ir-packages-page[data-ir-listing] .ir-filter-title strong {
    color: var(--ir-navy-mobile) !important;
    font-size: 24px !important;
    font-weight: 700 !important;
  }

  html body .ir-packages-page[data-ir-listing] .ir-filter-title button {
    color: var(--ir-gold-border) !important;
  }

  html body .ir-packages-page[data-ir-listing] .ir-filter-search,
  html body .ir-packages-page[data-ir-listing] .ir-filter-group {
    margin: 12px 16px !important;
    padding: 15px 16px !important;
    border: 1px solid rgba(7, 24, 47, .08) !important;
    border-radius: 10px !important;
    background: #fff !important;
    box-shadow: 0 8px 20px rgba(7, 24, 47, .04) !important;
  }

  html body .ir-packages-page[data-ir-listing] .ir-filter-group h3 {
    margin-bottom: 12px !important;
    color: var(--ir-navy-mobile) !important;
    font-size: 18px !important;
  }

  html body .ir-packages-page[data-ir-listing] .ir-filter-group label {
    min-height: 36px !important;
    font-size: 14px !important;
    text-transform: none !important;
  }

  html body .ir-packages-page[data-ir-listing] .ir-filter-mobile-footer {
    position: fixed !important;
    right: 0 !important;
    bottom: 0 !important;
    left: 0 !important;
    z-index: 4 !important;
    display: block !important;
    padding: 12px 16px calc(12px + env(safe-area-inset-bottom)) !important;
    background: #fff !important;
    border-top: 1px solid #e7eaf0 !important;
  }

  html body .ir-packages-page[data-ir-listing] .ir-filter-reset-mobile {
    display: none !important;
  }

  html body .ir-packages-page[data-ir-listing] .ir-filter-apply {
    width: 100% !important;
    min-height: 54px !important;
    border: 1px solid rgba(242, 191, 0, .65) !important;
    border-radius: 10px !important;
    background: var(--ir-navy-mobile) !important;
    color: var(--ir-gold-mobile) !important;
    font-size: 19px !important;
    font-weight: 800 !important;
  }

  html body .ir-tour.ir-sotc .ir-gallery {
    display: flex !important;
    gap: 10px !important;
    width: 100% !important;
    padding: 0 10px 12px !important;
    overflow-x: auto !important;
    scroll-snap-type: x mandatory !important;
    scrollbar-width: none !important;
    -webkit-overflow-scrolling: touch;
  }

  html body .ir-tour.ir-sotc .ir-gallery::-webkit-scrollbar {
    display: none !important;
  }

  html body .ir-tour.ir-sotc .ir-gallery > button,
  html body .ir-tour.ir-sotc .ir-gallery > button.is-main {
    flex: 0 0 84% !important;
    width: 84% !important;
    min-width: 84% !important;
    aspect-ratio: 4 / 3 !important;
    height: auto !important;
    border-radius: 12px !important;
    scroll-snap-align: center !important;
    overflow: hidden !important;
  }

  html body .ir-tour.ir-sotc .ir-compact-copy h2 {
    font-size: 28px !important;
    line-height: 1.08 !important;
    font-weight: 700 !important;
  }

  html body .ir-tour.ir-sotc .ir-service-row {
    display: flex !important;
    gap: 8px !important;
    overflow-x: auto !important;
    scrollbar-width: none !important;
  }

  html body .ir-tour.ir-sotc .ir-service-row > * {
    flex: 0 0 104px !important;
    min-width: 104px !important;
    min-height: 62px !important;
    font-size: 12px !important;
    white-space: normal !important;
  }

  html body .ir-tour.ir-sotc .ir-accordion article:not(.is-open) > div {
    display: none !important;
  }

  html body .ir-tour.ir-sotc .ir-panel[data-ir-panel="itinerary"] > h2 {
    font-size: 22px !important;
    line-height: 1.2 !important;
  }

  html body .ir-tour.ir-sotc .ir-accordion article > button {
    grid-template-columns: 64px minmax(0, 1fr) 30px !important;
    gap: 8px !important;
    min-height: 56px !important;
    padding: 8px 10px !important;
  }

  html body .ir-tour.ir-sotc .ir-accordion article > button span {
    min-height: 28px !important;
    padding: 0 11px !important;
    font-size: 12px !important;
  }

  html body .ir-tour.ir-sotc .ir-accordion article > button strong {
    font-size: 14px !important;
    line-height: 1.25 !important;
  }

  html body .ir-tour.ir-sotc .ir-accordion article > div {
    grid-template-columns: 1fr !important;
    gap: 12px !important;
    padding: 12px !important;
  }

  html body .ir-tour.ir-sotc .ir-accordion p,
  html body .ir-tour.ir-sotc .ir-day-points li {
    color: #182334 !important;
    font-size: 14px !important;
    line-height: 1.58 !important;
    font-weight: 400 !important;
  }
}

/* v1.12.2: restore original mobile sticky tab stack and hide boarding-pass image only on mobile. */
@media (max-width: 767px) {
  html body .ir-tour.ir-sotc .ir-compact-image,
  html body .ir-tour.ir-sotc section.ir-compact-ticket .ir-compact-image {
    display: none !important;
    width: 0 !important;
    height: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
  }

  html body .ir-tour.ir-sotc .ir-compact-ticket,
  html body .ir-tour.ir-sotc section.ir-compact-ticket {
    grid-template-columns: minmax(0, 1fr) !important;
    width: calc(100% - 22px) !important;
    margin: 10px auto 18px !important;
    border-radius: 18px !important;
  }

  html body .ir-tour.ir-sotc .ir-compact-copy {
    padding: 14px 14px 10px !important;
  }

  html body .ir-tour.ir-sotc .ir-compact-copy h2 {
    margin: 8px 0 10px !important;
    font-size: 27px !important;
    line-height: 1.08 !important;
  }

  html body .ir-tour.ir-sotc .ir-service-row {
    display: flex !important;
    gap: 8px !important;
    overflow-x: auto !important;
    padding-bottom: 3px !important;
    scrollbar-width: none !important;
  }

  html body .ir-tour.ir-sotc .ir-service-row > * {
    flex: 0 0 96px !important;
    min-width: 96px !important;
    min-height: 58px !important;
    font-size: 11px !important;
  }

  html body .ir-tour.ir-sotc .ir-compact-action {
    padding: 12px 14px 14px !important;
  }

  html body .ir-tour.ir-sotc .ir-tabs {
    position: sticky !important;
    top: 0 !important;
    z-index: 2147481200 !important;
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    width: calc(100% - 22px) !important;
    max-width: calc(100% - 22px) !important;
    min-height: 58px !important;
    margin: 10px auto 0 !important;
    padding: 8px 10px !important;
    overflow-x: auto !important;
    border: 1px solid #eadfc5 !important;
    border-radius: 14px !important;
    background: #fff !important;
    box-shadow: 0 8px 18px rgba(7, 24, 47, .05) !important;
    scrollbar-width: none !important;
  }

  html body .ir-tour.ir-sotc .ir-tabs.is-fixed {
    position: fixed !important;
    top: 0 !important;
    left: 11px !important;
    right: 11px !important;
    width: calc(100% - 22px) !important;
  }

  html body .ir-tour.ir-sotc .ir-tabs button {
    flex: 0 0 auto !important;
    min-height: 40px !important;
    padding: 0 18px !important;
    border: 0 !important;
    border-radius: 999px !important;
    background: transparent !important;
    color: #07182f !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    white-space: nowrap !important;
    box-shadow: none !important;
  }

  html body .ir-tour.ir-sotc .ir-tabs button.is-active {
    border: 1px solid #d8bf7d !important;
    background: #fff8df !important;
    color: #07182f !important;
  }

  html body .ir-tour.ir-sotc .ir-panel[data-ir-panel="details"] {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 0 12px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible !important;
  }

  html body .ir-tour.ir-sotc .ir-subtabs,
  body .ir-tour.ir-sotc .ir-subtabs {
    position: sticky !important;
    top: 58px !important;
    z-index: 2147481100 !important;
    display: flex !important;
    align-items: center !important;
    gap: 0 !important;
    width: calc(100% - 22px) !important;
    max-width: calc(100% - 22px) !important;
    min-height: 58px !important;
    margin: 0 auto 14px !important;
    padding: 10px 14px !important;
    overflow-x: auto !important;
    border: 0 !important;
    border-radius: 0 0 18px 18px !important;
    background: #07182f !important;
    box-shadow: 0 10px 22px rgba(7, 24, 47, .12) !important;
    scrollbar-width: none !important;
  }

  html body .ir-tour.ir-sotc .ir-subtabs.is-sub-fixed,
  body .ir-tour.ir-sotc .ir-subtabs.is-sub-fixed {
    position: fixed !important;
    top: 58px !important;
    left: 11px !important;
    right: 11px !important;
    width: calc(100% - 22px) !important;
    margin: 0 !important;
  }

  html body .ir-tour.ir-sotc .ir-subtabs::-webkit-scrollbar,
  html body .ir-tour.ir-sotc .ir-tabs::-webkit-scrollbar {
    display: none !important;
  }

  html body .ir-tour.ir-sotc .ir-subtabs button,
  html body .ir-tour.ir-sotc .ir-subtabs button:hover,
  html body .ir-tour.ir-sotc .ir-subtabs button:focus,
  html body .ir-tour.ir-sotc .ir-subtabs button.is-active,
  body .ir-tour.ir-sotc .ir-subtabs button,
  body .ir-tour.ir-sotc .ir-subtabs button:hover,
  body .ir-tour.ir-sotc .ir-subtabs button:focus,
  body .ir-tour.ir-sotc .ir-subtabs button.is-active {
    flex: 0 0 auto !important;
    min-height: 38px !important;
    padding: 0 16px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: #f2bf00 !important;
    font-size: 12px !important;
    font-weight: 800 !important;
    white-space: nowrap !important;
    box-shadow: none !important;
  }

  html body .ir-tour.ir-sotc .ir-subtabs button.is-active,
  body .ir-tour.ir-sotc .ir-subtabs button.is-active {
    background: #f2bf00 !important;
    color: #07182f !important;
  }

  html body .ir-tour.ir-sotc .ir-subtabs button:before,
  html body .ir-tour.ir-sotc .ir-subtabs button:after,
  body .ir-tour.ir-sotc .ir-subtabs button:before,
  body .ir-tour.ir-sotc .ir-subtabs button:after {
    display: none !important;
    content: none !important;
  }

  html body .ir-tour.ir-sotc .ir-panel[data-ir-panel="details"] .ir-subpanel {
    width: calc(100% - 22px) !important;
    margin: 0 auto 14px !important;
    padding: 20px 18px !important;
    border: 1px solid #eadfc5 !important;
    border-radius: 14px !important;
    background: #fff !important;
    box-shadow: 0 8px 20px rgba(7, 24, 47, .04) !important;
  }
}

/* v1.12.3: mobile tabs stay in flow until they naturally reach the top. */
@media (max-width: 767px) {
  html body .ir-tour.ir-sotc .ir-tabs-spacer,
  html body .ir-tour.ir-sotc .ir-subtabs-spacer,
  body .ir-tour.ir-sotc .ir-tabs-spacer,
  body .ir-tour.ir-sotc .ir-subtabs-spacer {
    display: none !important;
    height: 0 !important;
  }

  html body .ir-tour.ir-sotc .ir-tabs,
  html body .ir-tour.ir-sotc .ir-tabs.is-fixed,
  body .ir-tour.ir-sotc .ir-tabs,
  body .ir-tour.ir-sotc .ir-tabs.is-fixed {
    position: sticky !important;
    top: 0 !important;
    left: auto !important;
    right: auto !important;
    z-index: 2147481200 !important;
    width: calc(100% - 22px) !important;
    max-width: calc(100% - 22px) !important;
    margin: 10px auto 0 !important;
    transform: none !important;
  }

  html body .ir-tour.ir-sotc .ir-tabs button,
  body .ir-tour.ir-sotc .ir-tabs button {
    flex: 0 0 auto !important;
  }

  html body .ir-tour.ir-sotc .ir-panel[data-ir-panel="details"] {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 0 14px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible !important;
  }

  html body .ir-tour.ir-sotc .ir-subtabs,
  html body .ir-tour.ir-sotc .ir-subtabs.is-sub-fixed,
  body .ir-tour.ir-sotc .ir-subtabs,
  body .ir-tour.ir-sotc .ir-subtabs.is-sub-fixed {
    position: sticky !important;
    top: 58px !important;
    left: auto !important;
    right: auto !important;
    z-index: 2147481100 !important;
    display: flex !important;
    align-items: center !important;
    gap: 0 !important;
    width: calc(100% - 22px) !important;
    max-width: calc(100% - 22px) !important;
    min-height: 58px !important;
    margin: 0 auto 14px !important;
    padding: 10px 14px !important;
    overflow-x: auto !important;
    border: 0 !important;
    border-radius: 0 0 18px 18px !important;
    background: #07182f !important;
    box-shadow: 0 10px 22px rgba(7, 24, 47, .12) !important;
    transform: none !important;
  }

  html body .ir-tour.ir-sotc .ir-subtabs button,
  html body .ir-tour.ir-sotc .ir-subtabs button:hover,
  html body .ir-tour.ir-sotc .ir-subtabs button:focus,
  html body .ir-tour.ir-sotc .ir-subtabs button.is-active,
  body .ir-tour.ir-sotc .ir-subtabs button,
  body .ir-tour.ir-sotc .ir-subtabs button:hover,
  body .ir-tour.ir-sotc .ir-subtabs button:focus,
  body .ir-tour.ir-sotc .ir-subtabs button.is-active {
    flex: 0 0 auto !important;
    min-height: 38px !important;
    padding: 0 16px !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
  }

  html body .ir-tour.ir-sotc .ir-subtabs button.is-active,
  body .ir-tour.ir-sotc .ir-subtabs button.is-active {
    background: #f2bf00 !important;
    color: #07182f !important;
  }

  html body .ir-tour.ir-sotc .ir-panel[data-ir-panel="details"] .ir-subpanel {
    width: calc(100% - 22px) !important;
    margin: 0 auto 14px !important;
  }
}

/* v1.12.4: reduce tab side gutters and hide mobile icon rows from the single page. */
@media (max-width: 767px) {
  html body .ir-tour.ir-sotc .ir-service-row,
  html body .ir-tour.ir-sotc .ir-benefits {
    display: none !important;
    height: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
  }

  html body .ir-tour.ir-sotc .ir-compact-copy {
    padding-bottom: 8px !important;
  }

  html body .ir-tour.ir-sotc .ir-tabs,
  html body .ir-tour.ir-sotc .ir-tabs.is-fixed,
  body .ir-tour.ir-sotc .ir-tabs,
  body .ir-tour.ir-sotc .ir-tabs.is-fixed {
    width: calc(100% - 4px) !important;
    max-width: calc(100% - 4px) !important;
    margin: 8px auto 0 !important;
    padding: 6px 6px !important;
  }

  html body .ir-tour.ir-sotc .ir-tabs button,
  body .ir-tour.ir-sotc .ir-tabs button {
    min-height: 38px !important;
    padding: 0 13px !important;
    font-size: 12px !important;
  }

  html body .ir-tour.ir-sotc .ir-subtabs,
  html body .ir-tour.ir-sotc .ir-subtabs.is-sub-fixed,
  body .ir-tour.ir-sotc .ir-subtabs,
  body .ir-tour.ir-sotc .ir-subtabs.is-sub-fixed {
    width: calc(100% - 4px) !important;
    max-width: calc(100% - 4px) !important;
    min-height: 54px !important;
    margin: 0 auto 12px !important;
    padding: 8px 8px !important;
    border-radius: 0 0 16px 16px !important;
  }

  html body .ir-tour.ir-sotc .ir-subtabs button,
  html body .ir-tour.ir-sotc .ir-subtabs button:hover,
  html body .ir-tour.ir-sotc .ir-subtabs button:focus,
  html body .ir-tour.ir-sotc .ir-subtabs button.is-active,
  body .ir-tour.ir-sotc .ir-subtabs button,
  body .ir-tour.ir-sotc .ir-subtabs button:hover,
  body .ir-tour.ir-sotc .ir-subtabs button:focus,
  body .ir-tour.ir-sotc .ir-subtabs button.is-active {
    min-height: 38px !important;
    padding: 0 13px !important;
    font-size: 12px !important;
  }

  html body .ir-tour.ir-sotc .ir-panel[data-ir-panel="details"] .ir-subpanel,
  body .ir-tour.ir-sotc .ir-panel[data-ir-panel="details"] .ir-subpanel {
    width: calc(100% - 8px) !important;
  }
}

/* v1.12.5 final lock: tighter mobile boarding pass price/action row. */
@media (max-width: 767px) {
  html body .ir-tour.ir-sotc .ir-compact-ticket,
  html body .ir-tour.ir-sotc section.ir-compact-ticket,
  body .ir-tour.ir-sotc .ir-compact-ticket,
  body .ir-tour.ir-sotc section.ir-compact-ticket {
    width: calc(100% - 8px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  html body .ir-tour.ir-sotc .ir-compact-copy,
  html body .ir-tour.ir-sotc section.ir-compact-ticket .ir-compact-copy,
  body .ir-tour.ir-sotc .ir-compact-copy,
  body .ir-tour.ir-sotc section.ir-compact-ticket .ir-compact-copy {
    padding-left: 12px !important;
    padding-right: 12px !important;
  }

  html body .ir-tour.ir-sotc .ir-compact-action,
  html body .ir-tour.ir-sotc section.ir-compact-ticket .ir-compact-action,
  body .ir-tour.ir-sotc .ir-compact-action,
  body .ir-tour.ir-sotc section.ir-compact-ticket .ir-compact-action {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(150px, 47%) !important;
    grid-template-rows: auto auto auto auto auto !important;
    align-items: center !important;
    column-gap: 8px !important;
    row-gap: 0 !important;
    width: 100% !important;
    padding: 10px 12px 12px !important;
  }

  html body .ir-tour.ir-sotc .ir-compact-action .ir-deal,
  body .ir-tour.ir-sotc .ir-compact-action .ir-deal {
    grid-column: 1 / -1 !important;
    grid-row: 1 !important;
    width: max-content !important;
    max-width: 100% !important;
    margin: 0 0 4px !important;
  }

  html body .ir-tour.ir-sotc .ir-compact-action small,
  body .ir-tour.ir-sotc .ir-compact-action small {
    grid-column: 1 !important;
    grid-row: 2 !important;
    align-self: end !important;
    margin: 0 !important;
    color: #4b5563 !important;
    font-family: Inter, "Segoe UI", Roboto, Arial, sans-serif !important;
    font-size: 14px !important;
    font-weight: 450 !important;
    line-height: 18px !important;
    text-align: left !important;
  }

  html body .ir-tour.ir-sotc .ir-compact-action strong,
  body .ir-tour.ir-sotc .ir-compact-action strong {
    grid-column: 1 !important;
    grid-row: 3 !important;
    align-self: center !important;
    margin: 0 !important;
    font-family: Inter, "Segoe UI", Roboto, Arial, sans-serif !important;
    font-size: 30px !important;
    font-weight: 620 !important;
    line-height: 34px !important;
    letter-spacing: 0 !important;
    text-align: left !important;
    white-space: nowrap !important;
  }

  html body .ir-tour.ir-sotc .ir-compact-action del,
  body .ir-tour.ir-sotc .ir-compact-action del {
    grid-column: 1 !important;
    grid-row: 4 !important;
    align-self: start !important;
    margin: 0 !important;
    font-family: Inter, "Segoe UI", Roboto, Arial, sans-serif !important;
    font-size: 18px !important;
    font-weight: 450 !important;
    line-height: 20px !important;
    text-align: left !important;
  }

  html body .ir-tour.ir-sotc .ir-compact-action button,
  html body .ir-tour.ir-sotc section.ir-compact-ticket .ir-compact-action button,
  body .ir-tour.ir-sotc .ir-compact-action button,
  body .ir-tour.ir-sotc section.ir-compact-ticket .ir-compact-action button {
    grid-column: 2 !important;
    grid-row: 2 / 5 !important;
    align-self: center !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 44px !important;
    margin: 0 !important;
    padding: 0 14px !important;
    color: #f2bf00 !important;
    border-radius: 10px !important;
    font-family: "Manrope", Inter, "Helvetica Neue", "Segoe UI", Roboto, Arial, sans-serif !important;
    font-size: 16px !important;
    font-weight: 540 !important;
    line-height: 1 !important;
    letter-spacing: 0 !important;
    white-space: nowrap !important;
    transform: translateY(-1px) !important;
  }

  html body .ir-tour.ir-sotc .ir-compact-action p,
  body .ir-tour.ir-sotc .ir-compact-action p {
    grid-column: 1 / -1 !important;
    grid-row: 5 !important;
    margin: 8px 0 0 !important;
  }
}

/* v1.12.9 clean filter-only fix. Do not alter the category carousel. */
@media (max-width: 767px) {
  html body .ir-packages-page[data-ir-listing] .ir-list-mobile-head,
  body .ir-packages-page[data-ir-listing] .ir-list-mobile-head {
    padding: 8px 10px 6px !important;
    margin: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  html body .ir-packages-page[data-ir-listing] .ir-mobile-filter-nav,
  body .ir-packages-page[data-ir-listing] .ir-mobile-filter-nav {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 0 !important;
    width: 100% !important;
    padding: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  html body .ir-packages-page[data-ir-listing] .ir-mobile-filter-nav [data-ir-filter-target],
  html body .ir-packages-page[data-ir-listing] .ir-mobile-filter-nav [data-ir-filter-target="duration"],
  body .ir-packages-page[data-ir-listing] .ir-mobile-filter-nav [data-ir-filter-target],
  body .ir-packages-page[data-ir-listing] .ir-mobile-filter-nav [data-ir-filter-target="duration"] {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 5px !important;
    min-width: 0 !important;
    width: 100% !important;
    min-height: 34px !important;
    padding: 0 3px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    color: #07182f !important;
    font-family: Inter, "Segoe UI", Roboto, Arial, sans-serif !important;
    font-size: 12px !important;
    font-weight: 650 !important;
    line-height: 1 !important;
    white-space: nowrap !important;
  }

  html body .ir-packages-page[data-ir-listing] .ir-mobile-filter-nav [data-ir-filter-target] + [data-ir-filter-target],
  body .ir-packages-page[data-ir-listing] .ir-mobile-filter-nav [data-ir-filter-target] + [data-ir-filter-target] {
    border-left: 1px solid rgba(197, 164, 74, .3) !important;
  }

  html body .ir-packages-page[data-ir-listing] .ir-mobile-filter-nav svg,
  body .ir-packages-page[data-ir-listing] .ir-mobile-filter-nav svg {
    width: 15px !important;
    height: 15px !important;
    color: #c5a44a !important;
    stroke-width: 1.8 !important;
  }

  html body .ir-packages-page[data-ir-listing] .ir-filter-title,
  body .ir-packages-page[data-ir-listing] .ir-filter-title {
    position: sticky !important;
    top: 0 !important;
    z-index: 8 !important;
    display: grid !important;
    grid-template-columns: 42px 1fr auto !important;
    align-items: center !important;
    min-height: 58px !important;
    margin: 0 -14px 12px !important;
    padding: max(8px, env(safe-area-inset-top)) 14px 8px !important;
    border-bottom: 1px solid #e8dfc9 !important;
    background: rgba(255, 255, 255, .98) !important;
  }

  html body .ir-packages-page[data-ir-listing] .ir-filter-close,
  body .ir-packages-page[data-ir-listing] .ir-filter-close {
    display: grid !important;
    place-items: center !important;
    width: 36px !important;
    height: 36px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 999px !important;
    background: #07182f !important;
    color: #f2bf00 !important;
    font-size: 26px !important;
    font-weight: 300 !important;
    line-height: 1 !important;
    box-shadow: 0 8px 18px rgba(7, 24, 47, .14) !important;
  }

  html body .ir-packages-page[data-ir-listing] .ir-filter-title strong,
  body .ir-packages-page[data-ir-listing] .ir-filter-title strong {
    color: #07182f !important;
    font-family: Inter, "Segoe UI", Roboto, Arial, sans-serif !important;
    font-size: 22px !important;
    font-weight: 700 !important;
    text-align: center !important;
  }

  html body .ir-packages-page[data-ir-listing] .ir-filter-title [data-ir-reset],
  body .ir-packages-page[data-ir-listing] .ir-filter-title [data-ir-reset] {
    width: auto !important;
    height: 34px !important;
    padding: 0 10px !important;
    border: 1px solid rgba(197, 164, 74, .5) !important;
    border-radius: 999px !important;
    background: #fff !important;
    color: #07182f !important;
    font-size: 12px !important;
    font-weight: 650 !important;
  }

  html body .ir-packages-page[data-ir-listing] .ir-filter-mobile-footer,
  body .ir-packages-page[data-ir-listing] .ir-filter-mobile-footer {
    position: fixed !important;
    right: 0 !important;
    bottom: 0 !important;
    left: 0 !important;
    z-index: 20 !important;
    display: grid !important;
    grid-template-columns: 104px minmax(0, 1fr) !important;
    gap: 10px !important;
    padding: 10px 14px max(12px, env(safe-area-inset-bottom)) !important;
    border-top: 1px solid #e8dfc9 !important;
    background: rgba(255, 255, 255, .98) !important;
    transform: none !important;
  }

  html body .ir-packages-page[data-ir-listing] .ir-filter-reset-mobile,
  html body .ir-packages-page[data-ir-listing] .ir-filter-apply,
  body .ir-packages-page[data-ir-listing] .ir-filter-reset-mobile,
  body .ir-packages-page[data-ir-listing] .ir-filter-apply {
    position: static !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 44px !important;
    margin: 0 !important;
    padding: 0 12px !important;
    transform: none !important;
    border-radius: 12px !important;
    white-space: nowrap !important;
    font-family: Inter, "Segoe UI", Roboto, Arial, sans-serif !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
  }

  html body .ir-packages-page[data-ir-listing] .ir-filter-apply,
  body .ir-packages-page[data-ir-listing] .ir-filter-apply {
    background: #07182f !important;
    color: #f2bf00 !important;
  }
}

@media (min-width: 768px) {
  html body .ir-packages-page[data-ir-listing] .ir-filter-close,
  body .ir-packages-page[data-ir-listing] .ir-filter-close {
    display: none !important;
  }
}
