/* ============================================================================
   hotel-legacy.css  --  legacy layout classes ported for the my-hz design
   ============================================================================

   WHY THIS FILE EXISTS
   --------------------
   The hotel-booking views (hotel-details, check-availability*, passenger-details,
   categories, category-hotels-list) still use layout classes that were only ever
   defined in the OLD theme sheet `assets/frontend/css/custom.css`.

   On re-skinned (my-hz) pages the header loads Bootstrap 5.3 + style.css +
   inner-pages.css + ci-overrides.css and deliberately does NOT load custom.css
   (see application/views/frontend-includes/header.php, the `$mhz_v2` gate).
   The markup therefore lost its geometry and the pages render broken -- most
   visibly the horizontal tab / step strips collapse into a vertical stack.

   WHAT THIS FILE IS
   -----------------
   A faithful PORT -- not a redesign -- of ONLY the classes that are used by those
   views, have a rule in the old custom.css, and have NO rule in any currently
   loaded my-hz sheet. Classes already provided by Bootstrap 5, Font Awesome or
   owl.carousel are intentionally NOT duplicated here.

   RULES OF THE PORT
   -----------------
   * Selectors are kept EXACTLY as they were, so they match the existing markup.
   * Geometry/layout declarations (display, flex, white-space, overflow, width,
     height, position, padding, margin) are preserved verbatim -- these are the
     declarations that actually fix the broken layout.
   * !important appears only where the original rule already had it.
   * Base rules keep their original custom.css order (several classes are declared
     twice and rely on source order); @media overrides are collected at the end.
   * Only obviously-legacy BRAND BLUE used as a button/accent BACKGROUND was
     rethemed to the my-hz orange #f97316. Greys, whites, borders, the legacy
     coral accent (#e86f56) and blue *text* colours are left untouched.

   DO NOT add new design here. New work belongs in the my-hz sheets.
   ============================================================================ */


/* ---------------------------------------------------------------------------
   Font sizes & text utilities
   Legacy font-size / text-colour helpers. Bootstrap 5 has no equivalent for these
      numeric `font-*` names, so the views lose all sizing without them.
   --------------------------------------------------------------------------- */

.theme_color {
    color:#0071cc;
}

.font-12 {
    font-size:12px;
}

.font-16 {
    font-size:16px!important;
}

.font-18 {
    font-size:18px;
}

.taxi6 {
    color: #fff;
}

.font-11 {
    font-size: 11px!important;
}

.font-12 {
    font-size: 12px!important;
}

.font-13 {
    font-size: 13px!important;
}

.font-20 {
    font-size: 20px!important;
}

.font-18 {
    font-size:18px !important;
}

.bestbus-127 {
    color: red important;
}

.layout44 {
    color:#757575;
}

.b1 {
    color:#0071cc;
}

.fs-15 {
    font-size:15px !important;
}

.tremsandconditions {
    font-size:20px;
}


/* ---------------------------------------------------------------------------
   Sticky, fixed & absolute positioning
   Sticky offsets under the fixed header, plus the fixed footer CTA bar.
   --------------------------------------------------------------------------- */

.sttop.sticky-top {
    top:155px;
}

.sttop.sticky-topab {
    top: 65px!important;
}

.getcashback {
    margin-top: 0px;
    position: absolute;
    margin-left: -3%;
}

.sticky-topmob {
    position: sticky;
    top: 59px;
    z-index: 1019;
}

.sttop.sticky-top {
    top:125px;
}

.spayment {
    margin-top:12px;
    position:absolute;
    padding-right:20px;
}

.footer-fixed-div {
    position: fixed;
    bottom: 15px;
    left: 0;
    width: 100%;
    text-align: center;
    z-index:999;
}


/* ---------------------------------------------------------------------------
   Hotel-details tab strip (nav-tabs / nav-pills)
   The horizontal tab strip. `.layout36{display:flex}` + `.layout35{white-space:nowrap}`
      are what keep the tabs on one row -- without them the strip stacks vertically.
   --------------------------------------------------------------------------- */

.layout32 .blink_me {
    animation: blinker 1s linear infinite;
}

.layout-x1 {
    background-color: #f97316;
    margin-top: 207px;
    border: 2px solid #fff;
    border-left: none;
}

.bestbus101 {
    color: #18538e !important;
    font-weight: bold;
    background-color: transparent!important;
    /*border-radius: 20px !important;*/
    margin-bottom: 4px !important;
    /* margin-right: 2px; */
    padding: 8px 15px !important;
    /*height: 65px;*/
    height: 55px;
    margin-left:3px;
}

.layout26 {
    border-right: none!important;
}

.layout27 {
    border-right: 1px solid rgba(0, 0, 0, 0.1)!important;
}

.layout28 {
    padding: 0px 0px 0px 0px;
    background: #f0f0f0;
    box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.15), 0 1px 0 rgba(0, 0, 0, 0.1);
}

.layout29 {
    font-size:25px!important;
}

.layout30 {
    font-size:14px;
}

.nav-tabs .nav-item .nav-link.active .layout30 {
    color: #e86f56 !important;
}

.nav-tabs .nav-item .nav-link.active .layout29 {
    color: #e86f56 !important;
}

.layout31 {
    margin-top: 3px;
    margin-left:-60%;
}

.layout322 {
    background-color:#b5adac;
}

.layout32 {
    background-color:#f97316;
}

.layout33 {
    color: #18538e !important;
    font-weight: bold;
    background-color: transparent !important;
    margin-bottom: 4px !important;
    margin-right: 2px;
    padding: 8px 7px !important;
    height: 65px;
    margin-left: 3px;
}

.nav-tabs .nav-item .nav-link .layout35 {
    font-size: 1rem;
    color: #fff !important;
    white-space: nowrap !important;
}

.layout36 {
    display: flex;
    /*overflow: auto; */
}

.ccdate .nav-pills {
    padding-bottom: 15px !important;
    border-bottom: 1px solid hsla(0,0%,61%,.5) !important;
}

.ccdate .nav-pills .nav-item {
    text-align: left !important;
}

.ccdate .nav-pills .nav-item:first-child {
    border-right: 1px solid #404040 !important;
}

.ccdate .nav-pills .nav-link {
    color: #404040 !important;
    background-color: #fff !important;
    border: none !important;
    padding:0px !important;
}

.ccdate .nav-pills .nav-link.active {
    color: #dc3545 !important;
    background-color: #fff !important;
}

.bdetails1 .nav-tabs .nav-item .nav-link.active:after {
    content: '';
    width: 100%;
    height: 4px;
    background: #e86f56;
    position: absolute;
    left: 0;
    bottom: -7px;
    box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);
}


/* ---------------------------------------------------------------------------
   Booking step wizard (horizontal progress)
   `.stepwizard-row{display:table-row}` + `.stepwizard-step{display:table-cell}` lay the
      3 steps out side-by-side; the :before rule draws the connector line between them.
   --------------------------------------------------------------------------- */

.stepwizard-step p {
    margin-top: 1px;
}

.stepwizard-row {
    display: table-row;
}

.stepwizard-step button[disabled] {
    opacity: 1 !important;
    filter: alpha(opacity=100) !important;
}

.stepwizard-step {
    width:33.33%;
}

.stepwizard-step:not(:first-child):before {
    content: " ";
    top: 18px;
    left: -50%;
    position: absolute;
    width: 100%;
    height: 2px;
    background-color: #ccc;
}

.stepwizard-step.active:not(:first-child):before {
    background-color: #f97316 !important;
}

.stepwizard-step {
    display: table-cell;
    text-align: center;
    position: relative;
}


/* ---------------------------------------------------------------------------
   Cards, images, room blocks & radii
   Fixed image geometry and card borders/radii used by the hotel + category lists.
   --------------------------------------------------------------------------- */

.padingrow {
    padding:20px;
}

.curveleft {
    border-top-left-radius: 15px !important;
    border-left: 0px solid #fff !important;
    border-top: 0px solid #fff !important;
}

.onimg {
    height:240px;
}

.bdrtour-1 {
    border: 1px solid #ccc !important;
}

.bestbus-121 {
    border: 3px solid #aaa;
    /*  box-shadow: 5px 0 5px -2px #888 !important; */
    box-shadow: 0px 0 5px 3px #888 !important;
}

.bdr {
    border-radius:10px;
}

.bdrtl {
    border-top-left-radius:10px !important;
    border-top-right-radius:10px !important;
}

.layout37 {
    height:250px;
    overflow:hidden
}

.layout40 {
    border-radius:3%;
    box-shadow: -0px 3px 10px 5px rgba(18, 25, 33, 0.4);
    border-bottom: 5px solid !important;
    color: #01a23c;
    fill: #01a23c;
}

.layout41 {
    border-top-left-radius: 3%;
    border-top-right-radius: 3%;
}

.imh {
    border-radius:10px;
}

.toimga {
    height:160px;
    width:260px;
}

.hotel_room_div {
    background-color: #f5f5f5 !important;
    border: 1px solid #ccc;
    border-radius:10px;
    margin:10px;
}

.table th.custom_padding {
    padding:2px !important;
}


/* ---------------------------------------------------------------------------
   Buttons, badges & form controls
   Legacy button/badge blocks and small form-control geometry.
   --------------------------------------------------------------------------- */

.bestb8 {
    background-color:#ccc;
}

.payimg {
    max-width: 90%;
    max-height: 29px;
    margin-top: 7px !important;
    margin-left:20px;
}

.v2bus {
    width: 100% !important;
    height: 40px;
    margin-top: -11px !important;
    margin-left: 5px !important;
}

.bus-4a {
    width: 100% !important;
    height: 40px;
    margin-top: -32px !important;
    margin-left: 5px !important;
}

.adult-child {
    padding: 3px 10px;
    background-color: #ccc !important;
    color: #fff !important;
    /* width: 90px; */
    text-align: center;
    margin-top: 2px;
    margin-bottom: 5px !important;
    border-radius: 5px;
    font-size: 12px !important;
}

.bbus1 {
    padding:20px;
    background-color:#f97316;
    border-radius:6px;
    color:#fff;
}

.bbus1 {
    padding:12px;
    background-color:#f97316;
    border-radius:6px;
    color:#fff;
}

.bus-type_option {
    background-color: #0faa14;
    color: #fff;
    font-size: 12px;
    padding: 2px 10px;
    margin-right: 5px;
    vertical-align: text-top;
    border-top-left-radius: 0;
    border-top-right-radius: 20px;
    border-bottom-right-radius: 20px;
    border-bottom-left-radius: 0;
    box-shadow: 0 2px 2px 0 rgba(0,0,0,0.26);
    position:absolute;
}

.bestbus-124 .form-control {
    padding-left:6px !important;
}

.tbutton {
    margin-top:-78px;
}

.bestbus-135 {
    width: 34px;
    height: 38px;
    padding: 0.376rem 0.75rem;
    border-radius: 0.28rem;
}

.faiconabc1 {
    width:16px !important;
    height:20px!important;
    margin-top:3px;
}

.fheight {
    height:38px !important;
}

.main_vtab_radio .small-radio {
    display: block;
}

.label.small-radio span {
    position: relative;
    top: -1px;
    width: 15px;
    height: 15px;
    line-height: 15px;
    border: 2px solid #7f7f7f;
    border-radius: 50%;
    display: inline-block;
    -webkit-transition: 100ms;
    -moz-transition: 100ms;
    -ms-transition: 100ms;
    -o-transition: 100ms;
    transition: 100ms;
    vertical-align: middle;
    background: #fff;
    margin-right: 4px;
}

.payimg {
    max-width: 90%;
    max-height: 29px;
    margin-top: 4px;
    margin-left:20px;
}

.time_count {
    background-color:#fff;
    font-size:18px;
    color:red;
    padding: 6px 10px;
    border-radius:10px;
}


/* ---------------------------------------------------------------------------
   Spacing / offset utilities
   Negative-margin nudges the old theme relied on. Faithfully preserved: several are
      ugly, but the markup is built around them.
   --------------------------------------------------------------------------- */

.mrg-top {
    margin-top:-44px;
}

.mrgt-p {
    margin-top:-10px;
}

.tm-5 {
    margin-top:5px;
    margin-bottom:5px;
}

.mob-anyq {
    margin-top:0px;
}

.daysleft-20 {
    margin-left:12% !important;
}

.daysleft-1 {
    margin-left:-20% !important;
}

.online-bust {
    margin-bottom:15px;
}

.bestbus102 {
    margin-top:7px;
}

.bestbus-115 {
    margin-bottom:1px!important;
}

.bestbus-118 {
    margin-left:10%;
}

.layout42 {
    margin-left:19%;
}

.vmtp {
    margin-top:-15px;
}

.bus17 {
    margin-top:-8px;
}

.ic1 {
    margin-left:5% !important;
}

.layout68 {
    height:72px;
    margin-top:-10px;
}

.layout69 {
    margin-top:-5px;
}

.mmtop-10 {
    margin-top:-10px !important;
}


/* ---------------------------------------------------------------------------
   Misc page bits
   --------------------------------------------------------------------------- */

.seat13 {
    padding-left:0px!important;
}

.page-header.page-header-text-light h2 {
    color: #fff;
}


/* ---------------------------------------------------------------------------
   Responsive overrides
   Collected after the base rules so the cascade matches the original sheet.
   --------------------------------------------------------------------------- */

@media (min-width: 320px) and (max-width: 480px) {
    .vee-mob {
        margin-bottom:30px !important;
    }

    .getcashback {
        position: absolute;
        margin-left: -104% !important;
        font-size: 13px;
        margin-top: 25px;
    }

    .mob-anyq {
        margin-top:-19px !important;
    }

    .mobsc {
        margin-top:-5px !important;
    }

    .bus-4a {
        width: 100% !important;
        height: 40px;
        margin-top: -32px !important;
        margin-left: 5px !important;
    }

    .sttop.sticky-topab {
        top: 65px !important;
    }

    .padingrow {
        padding:0px !important;
    }

    .fsm-12p {
        font-size:12px;
    }

    .sttop.sticky-top {
        top:127px !important;
    }

    .sttop.sticky-top {
        top:126px !important;
    }

    .mpaddingspace {
        padding:3px !important;
    }

    .tremsandconditions {
        font-size:19px!important;
    }

    .ramoji2 {
        margin-top:20px;
    }

    .mgtop-35 {
        margin-top:-35px !important;
    }

    .mgtop-15 {
        margin-top:-15px !important;
    }

    .bus17 {
        margin-top:-8px;
    }

    .toimga {
        height:160px;
        width:304px !important;
    }

    .layout68 {
        height:42px !important;
        margin-top:-10px;
    }

    .sfull {
        width:110%;
        margin-left:-5%;
        height: 42px !important;
        margin-top:-10px;
    }

    .layout69 {
        margin-top:-7px !important;
    }

    .font-12 {
        font-size:12px;
    }

    .bamt {
        font-size:22px !important;
    }

    .s1 {
        font-size:11px !important;
    }

    .tour-search10 {
        margin-top:-10px;
    }

    .tour-search21 {
        margin-top:-5px;
    }

    .bestbus-134 {
        line-height: 15px;
        font-size: 14px;
    }

    .layout42 {
        margin-left:12% !important;
    }

    .bestbus-124 .form-control {
        padding-left:6px !important;
        color:#000 !important;
    }

    .bestbus-118 {
        font-size:14px;
        margin-left:0px !important;
    }

    .bdetails1 .nav-tabs .nav-item .nav-link.active:after {
        content: '';
        width: 100%;
        height: 4px;
        background: #e86f56;
        position: absolute;
        left: 0;
        bottom: 9px;
        box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);
    }
}

@media only screen and (min-width:768px) and (max-width:1024px) {
    .toimga {
        height:160px;
        width:207px !important;
    }

    .ramoji2 {
        margin-top: 20px;
    }
}

@media only screen and (max-width: 400px) {
    .layout23 {
        bottom: 0px!important;
        height: auto!important;
        top: auto!important;
    }

    .layout24 {
        margin: 0px!important;
    }

    .brnone {
        border: none !important;
    }

    .br8 {
        border-radius: 8px 8px 0px 0px !important;
    }
}

@media only screen and  (min-width: 320px) and (max-width:480px) {
    .seat14 {
        text-align:center;
    }
}
