#search.search-style-2,
#search.search-style-2 .container,
#search.search-style-2 #search-content,
#search.search-style-2 .search-style-2-form{
    overflow:visible!important;
}
#search.search-style-2 #search-content{
    display:block!important;
    width:100%;
    margin-left:0!important;
    margin-right:0!important;
    padding-left:0!important;
    padding-right:0!important;
    text-align:left!important;
}
#search.search-style-2.search-frame-border-on #search-content{
    border:3px solid var(--homepage-search-frame-border)!important;
}
#search.search-style-2 .search-style-2-form{
    display:block!important;
    width:100%!important;
}
#search.search-style-2 > .container{
    padding-left:0!important;
    padding-right:0!important;
}
#search .homepage-filter-grid{
    display:grid!important;
    grid-template-columns:minmax(0,1.2fr) minmax(0,.9fr) minmax(0,.9fr) 58px;
    align-items:stretch;
    gap:.72rem;
    width:100%;
    padding-left:.55rem;
    padding-right:.55rem;
    box-sizing:border-box;
    position:relative;
    z-index:20;
}
#search .homepage-filter-dropdown{
    position:relative!important;
    min-width:0;
    text-align:left;
}
#search .homepage-filter-trigger{
    width:100%;
    min-height:3.45rem;
    height:100%;
    border:0!important;
    border-right:1px solid rgba(183,196,204,.46)!important;
    background:#fff!important;
    border-radius:0!important;
    color:#24444b;
    padding:.58rem 2.25rem .58rem .86rem;
    display:grid!important;
    grid-template-columns:2.1rem minmax(0,1fr);
    grid-template-rows:auto auto;
    column-gap:.68rem;
    align-content:center;
    align-items:center;
    line-height:1.12;
    text-align:left!important;
    cursor:pointer;
    position:relative;
    box-shadow:none!important;
}
#search .homepage-filter-trigger:after{
    content:"\f107";
    font-family:"Font Awesome 5 Free";
    font-weight:900;
    position:absolute;
    right:.9rem;
    top:50%;
    transform:translateY(-50%);
    color:#7b8b92;
    font-size:.88rem;
    pointer-events:none;
}
#search .homepage-filter-dropdown.is-open-parent .homepage-filter-trigger{
    border-right-color:rgba(183,196,204,.62)!important;
    box-shadow:none!important;
}
#search .homepage-filter-trigger:focus,
#search .homepage-filter-trigger:active,
#search .homepage-filter-trigger:focus-visible{
    outline:none!important;
}
#search .homepage-filter-trigger span{
    display:contents;
}
#search .homepage-filter-trigger span i{
    grid-column:1;
    grid-row:1 / span 2;
    align-self:center;
    justify-self:center;
    color:var(--homepage-search-accent, var(--templateColor, #1f3e45));
    font-size:1.8rem;
    line-height:1;
}
#search .homepage-filter-trigger span em{
    grid-column:2;
    grid-row:1;
    display:block;
    min-width:0;
    font-style:normal;
    font-size:.78rem;
    letter-spacing:.08em;
    text-transform:uppercase;
    color:#7b8b92;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
}
#search .homepage-filter-trigger strong{
    grid-column:2;
    grid-row:2;
    display:block;
    width:100%;
    min-width:0;
    margin-top:.28rem;
    font-size:.94rem;
    font-weight:500;
    color:#1f3e45;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
}
#search .homepage-filter-panel{
    position:absolute!important;
    top:calc(100% + .45rem)!important;
    left:0!important;
    right:auto!important;
    z-index:50050!important;
    width:100%!important;
    min-width:100%!important;
    max-width:100%!important;
    box-sizing:border-box;
    background:#fff!important;
    border:1px solid #d8e0e4!important;
    border-radius:9px!important;
    box-shadow:0 16px 34px rgba(16,74,85,.16)!important;
    padding:.82rem!important;
    display:none!important;
    text-align:left!important;
}
#search .homepage-filter-panel.is-open{
    display:block!important;
}
#search .homepage-filter-dropdown.is-open-parent{
    z-index:50040!important;
}
#search .homepage-filter-panel-departing,#search .homepage-filter-panel-duration,#search .homepage-filter-panel-type{min-width:100%!important;width:100%!important;max-width:100%!important;left:0!important;right:auto!important;box-sizing:border-box!important;padding:.74rem!important;}
#search .category-filter-search-wrap{
    margin-bottom:.62rem;
    width:100%;
}
#search .category-filter-search-wrap .form-control{
    display:block;
    width:100%!important;
    max-width:100%!important;
    min-width:100%!important;
    box-sizing:border-box!important;
    border:1px solid rgba(15,23,42,.14)!important;
    height:2.36rem;
    font-size:1rem;
    padding:.46rem .68rem;
    border-radius:6px;
    background:#fff;
    color:#1f3e45;
}
#search .category-filter-search-wrap .form-control::placeholder{
    font-size:1rem;
}
#search .category-filter-search-wrap .form-control:focus{
    border-color:var(--homepage-search-accent, var(--templateColor, #1f3e45))!important;
    box-shadow:0 0 0 3px rgba(31,62,69,.08)!important;
    outline:0;
}
#search .category-filter-panel-list{
    display:flex!important;
    flex-direction:column;
    gap:.36rem;
    max-height:270px;
    overflow:auto;
}
#search .category-filter-radio{
    display:flex!important;
    align-items:center;
    gap:.38rem;
    margin:0!important;
    font-size:.94rem;
    color:#355861;
    padding:.44rem .55rem;
    border-radius:.55rem;
    transition:background .15s ease,color .15s ease;
    cursor:pointer;
    text-align:left;
}
#search .category-filter-radio:hover{
    background:rgba(0,0,0,.03);
    color:#111;
}
#search .category-filter-radio input[type="checkbox"],
#search .category-filter-radio input[type="radio"]{
    position:static!important;
    opacity:1!important;
    visibility:visible!important;
    float:none!important;
    display:inline-block!important;
    width:18px!important;
    min-width:18px!important;
    height:18px!important;
    margin:0!important;
    padding:0!important;
    accent-color:var(--homepage-search-accent, var(--templateColor, #1f3e45));
    flex:0 0 18px!important;
}
#search .category-filter-radio span{
    display:block!important;
    flex:1 1 auto!important;
    min-width:0!important;
    white-space:normal!important;
    overflow:visible!important;
    text-overflow:clip!important;
    line-height:1.32;
}
#search .category-filter-radio input:checked ~ span{
    color:var(--homepage-search-accent, var(--templateColor, #1f3e45));
    font-weight:600;
}
#search .category-filter-panel-separator{
    height:1px;
    margin:.55rem 0 .45rem;
    background:rgba(23,122,139,.14);
}
#search .homepage-filter-group-title{
    padding:.28rem .55rem .08rem;
    font-size:.72rem;
    letter-spacing:.08em;
    text-transform:uppercase;
    color:#7b8b92;
    font-weight:700;
}
#search .homepage-filter-option-child{
    padding-left:calc(.55rem + 18px + .38rem)!important;
}
#search .homepage-filter-option-child span:before{
    content:none!important;
    display:none!important;
    width:0!important;
}
#search .homepage-filter-duration-group-title{
    font-weight:600;
}
#search .homepage-filter-option-group span{font-weight:600;}
#search .homepage-filter-option-pickup span{color:#52666d;}
#search .homepage-filter-no-results{
    padding:.55rem;
    color:#7b8b92;
    font-size:.9rem;
}
#search .homepage-filter-submit{
    min-width:58px!important;
    width:58px!important;
    min-height:3.45rem!important;
    height:100%!important;
    border-radius:7px!important;
    border:0!important;
    display:flex!important;
    align-items:center;
    justify-content:center;
}
@media(max-width:991.98px){
    #search .homepage-filter-grid{grid-template-columns:1fr!important;gap:.62rem;}
    #search .homepage-filter-panel,
    #search .homepage-filter-panel-type{left:0!important;right:auto!important;min-width:100%!important;width:100%!important;max-width:100%!important;}
    #search .homepage-filter-submit{width:100%!important;}
}

@media(max-width:991.98px){
    #search.search-style-2 > .container{
        padding-left:0!important;
        padding-right:0!important;
    }
    #search.search-style-2 #search-content{
        margin-left:0!important;
        margin-right:0!important;
        padding:.5rem 0!important;
    }
    #search .homepage-filter-grid{
        padding-left:.55rem!important;
        padding-right:.55rem!important;
        gap:.52rem!important;
    }
    #search .homepage-filter-trigger{
        border-right:0!important;
        border-bottom:1px solid rgba(183,196,204,.34)!important;
        min-height:3.2rem!important;
        padding-top:.52rem!important;
        padding-bottom:.52rem!important;
    }
    #search .homepage-filter-dropdown:last-of-type .homepage-filter-trigger{
        border-bottom:0!important;
    }
    #search .homepage-filter-submit{
        width:100%!important;
        min-width:100%!important;
        min-height:3.05rem!important;
        height:auto!important;
        gap:.48rem!important;
        border:1px solid rgba(15,23,42,.08)!important;
        background:rgba(15,23,42,.055)!important;
        color:#263840!important;
        font-size:1rem!important;
        font-weight:500!important;
        line-height:1.2!important;
    }
    #search .homepage-filter-submit:after{
        content:"Search";
        display:inline-block;
    }
    #search .homepage-filter-submit i{
        font-size:.96rem!important;
        color:inherit!important;
    }
}
@media(max-width:575.98px){
    #search.search-style-2.search-has-banner{
        margin-left:0!important;
        margin-right:0!important;
    }
    #search.search-style-2 #search-content{
        padding:.45rem 0 .5rem!important;
    }
    #search .homepage-filter-grid{
        gap:.48rem!important;
    }
}

/* homepage-search-mobile-align-v6: mobile filter block aligns with the homepage container edge. */
@media(max-width:991.98px){
    #search.search-style-2 > .container{
        width:100%!important;
        max-width:100%!important;
        padding-left:0!important;
        padding-right:0!important;
    }
    #search.search-style-2 #search-content{
        width:calc(100vw - 30px)!important;
        max-width:calc(100vw - 30px)!important;
        margin-left:calc(50% - 50vw + 15px)!important;
        margin-right:calc(50% - 50vw + 15px)!important;
        padding:.5rem 8px .55rem!important;
        box-sizing:border-box!important;
    }
    #search.search-style-2 .search-style-2-form,
    #search.search-style-2 .homepage-filter-grid{
        width:100%!important;
        max-width:none!important;
    }
    #search.search-style-2 .homepage-filter-grid{
        padding-left:0!important;
        padding-right:0!important;
    }
    #search.search-style-2 .homepage-filter-submit{
        margin-top:.06rem!important;
    }
    #search.search-style-2 .homepage-filter-submit:after{
        content:"Search"!important;
    }
}
@media(max-width:575.98px){
    #search.search-style-2 #search-content{
        padding:.45rem 8px .5rem!important;
    }
}