.dfs-search-wrapper{

    background:#fff;

    max-width: 100%;

    border-radius:18px;

    padding:28px;

    box-shadow:

        0 15px 45px rgba(0,0,0,.08);

}

.dfs-field-from-to-container,
.dfs-field-dep-ret-container{
    display: flex;
    gap: 5px;
    width: 100%;
}

.dfs-field-from-to-container{
    align-items: end;
}

.dfs-trip-types{

    display:flex;
    gap:15px;
    margin-bottom:20px;

}

.dfs-trip-types label{

    cursor:pointer;

}

.dfs-trip-types input{

    display:none;

}

.dfs-trip-types span{

    padding:10px 18px;
    border-radius:30px;
    background:#f3f4f6;

}

.dfs-trip-types input:checked+span{

    background:#0066ff;
    color:#fff;

}

/* .dfs-grid{

    display:grid;
    grid-template-columns:
    1fr
    60px
    1fr
    180px
    180px;

    gap:15px;

    align-items:end;

} */

.dfs-standard-grid{
    display: flex;
    gap: 5px;
}

.dfs-field{

    display:flex;
    flex-direction:column;
    width: 50%;

}

.dfs-field label{

    font-size:16px;
    margin-bottom:6px;
    font-weight: 600;

}

.dfs-remove{
    padding: 0 18px;
    height: 52px;
    background: #eef5ff;
    border: none;
    border-radius: 8px;
}

.dfs-counter-container{
    display: flex;
    gap: 5px;
    align-items: center;
}

.dfs-journey{
    margin-top: 0px;
    margin-bottom: 20px;
}

.dfs-field input{

    height:52px !important;

    border:1px solid #d6dce5 !important;

    border-radius:12px !important;

    padding:0 18px !important;

    font-size:15px !important;

    transition:.25s !important;

}

.dfs-field input:focus{

    border-color:#2563eb !important;

    box-shadow:0 0 0 4px rgba(37,99,235,.12) !important;

    outline:none !important;

}

.dfs-swap{

    width:50px;
    height:50px;
    border-radius:50% !important;
    border:none !important;
    background:#0066ff !important;
    color:#fff !important;
    cursor:pointer !important;
    /* margin-top: 7px; */

}

.dfs-bottom{

    display:flex;
    justify-content:space-between;
    margin-top:25px;

}

.dfs-travellers{

    border:1px solid #ddd !important;
    background-color:#fff !important;
    padding:14px 20px !important;
    border-radius:10px !important;
    cursor:pointer !important;

}

.dfs-search-btn{

    background:#0066ff !important;
    color:#fff !important;
    border:none !important;
    padding:16px 35px !important;
    border-radius:10px !important;
    cursor:pointer !important;

}

.dfs-add-flight{

    margin-top:10px !important;
    border:none !important;
    background:#eef5ff !important;
    color:#0066ff !important;
    padding:12px 20px !important;
    border-radius:8px !important;
    cursor:pointer !important;

}

.dfs-popup-overlay{

    display:none;

    position:fixed;

    left:0;

    top:0;

    width:100%;

    height:100%;

    background:rgba(0,0,0,.45);

    z-index:9998;

}

.dfs-traveller-popup{

    display:none;

    position:fixed;

    left:50%;

    top:50%;

    transform:translate(-50%,-50%);

    width:360px;

    background:#fff;

    padding:25px;

    border-radius:12px;

    z-index:9999;

    box-shadow:0 20px 40px rgba(0,0,0,.2);

}

.dfs-traveller-popup h3{

    margin:0 0 20px;

}

.dfs-counter{

    display:flex;

    justify-content:space-between;

    align-items:center;

    margin-bottom:20px;

}

.dfs-counter button{

    width:34px;

    height:34px;

    border:none;

    background:#0066ff;

    color:#fff;

    cursor:pointer;

    border-radius:50%;

}

.dfs-counter span{

    margin:0 10px;

}

#dfs-cabin-select{

    width:100%;

    height:45px;

    margin-top:10px;

    margin-bottom:20px;

    border-radius: 8px;

    border: 1px solid #eef5ff;

}

#dfs-popup-done{

    width:100%;

    height:45px;

    margin-top: 15px;

    border:none;

    background:#0066ff;

    color:#fff;

    border-radius:8px;

    cursor:pointer;

}

.dfs-traveller-popup .dfs-field{
    width: 100%;
}

.dfs-trip-type-dropdown{

    position:relative;

    display:inline-block;

    margin-bottom:20px;

}

.dfs-trip-type-btn{

    display:flex !important;

    align-items:center !important;

    justify-content:space-between !important;

    gap:12px !important;

    min-width:170px !important;

    height:46px !important;

    padding:0 16px !important;

    background:#fff !important;

    border:1px solid #d6dce5 !important;

    border-radius:12px !important;

    cursor:pointer !important;

    font-size:15px !important;

    font-weight:600 !important;

}

.dfs-trip-type-btn svg{

    width:18px;

    height:18px;

    fill:#555;

    transition:.25s;

}

.dfs-trip-type-btn.active svg{

    transform:rotate(180deg);

}

.dfs-trip-type-list{

    position:absolute;

    top:46px;

    left:0;

    width:100%;

    padding-left: 0;

    background:#fff;

    border:1px solid #d6dce5;

    border-radius:12px;

    box-shadow:0 10px 25px rgba(0,0,0,.12);

    display:none;

    overflow:hidden;

    z-index:999;

}

.dfs-trip-type-list li{

    list-style:none;

    padding:12px 16px;

    font-size: 16px;

    cursor:pointer;

    transition:.2s;

}

.dfs-trip-type-list li:hover{

    background:#f5f8ff;

}

.dfs-trip-type-list li.active{

    background:#2563eb;

    color:#fff;

}

.custom-wid-100{
    width: 100%;
}

.dfs-cabin-dropdown{

    position:relative;

    width:100%;

}

.dfs-cabin-btn{

    display:flex !important;

    justify-content:space-between !important;

    align-items:center !important;

    width:100% !important;

    height:46px !important;

    padding:0 16px !important;

    border:1px solid #d6dce5 !important;

    border-radius:12px !important;

    background:#fff !important;

    cursor:pointer !important;

    font-size:15px !important;

    font-weight:600 !important;

}

.dfs-cabin-btn svg{

    width:18px;

    height:18px;

    fill:#555;

    transition:.25s;

}

.dfs-cabin-btn.active svg{

    transform:rotate(180deg);

}

.dfs-cabin-list{

    display:none;

    position:absolute;

    left:0;

    top:46px;

    width:100%;

    padding-left: 0px;

    background:#fff;

    border:1px solid #d6dce5;

    border-radius:12px;

    overflow:hidden;

    box-shadow:0 10px 25px rgba(0,0,0,.12);

    z-index:999;

}

.dfs-cabin-list li{

    list-style:none;

    padding:12px 16px;

    cursor:pointer;

    transition:.2s;

}

.dfs-cabin-list li:hover{

    background:#f5f8ff;

}

.dfs-cabin-list li.active{

    background:#2563eb;

    color:#fff;

}

.dfs-field{

    position:relative;

}

.dfs-place-results{

    position:absolute;

    top:100%;

    left:0;

    right:0;

    background:#fff;

    border:1px solid #d6dce5;

    border-radius:12px;

    box-shadow:0 10px 25px rgba(0,0,0,.12);

    display:none;

    margin-top:5px;

    z-index:9999;

    max-height:320px;

    overflow-y:auto;

}

.dfs-place-loading{

    padding:15px;

    text-align:center;

    color:#666;

}

.dfs-place-item{

    display:flex;

    justify-content:space-between;

    align-items:center;

    padding:14px 16px;

    cursor:pointer;

    transition:.25s;

    border-bottom:1px solid #edf0f3;

}

.dfs-place-item:last-child{

    border-bottom:none;

}

.dfs-place-item:hover{

    background:#f5f8ff;

}

.dfs-place-left{

    display:flex;

    flex-direction:column;

}

.dfs-place-name{

    font-size:15px;

    font-weight:600;

    color:#222;

}

.dfs-place-subtitle{

    margin-top:4px;

    font-size:13px;

    color:#7a7a7a;

}

.dfs-place-right{

    text-align:right;

}

.dfs-place-type{

    font-size:12px;

    color:#2563eb;

    font-weight:600;

}

.dfs-place-code{

    margin-top:4px;

    font-size:13px;

    color:#555;

}

.dfs-error{

    border-color:#e53935 !important;

}

.dfs-error-message{
    font-size:13px;
    color:#e53935;
    font-weight:500;
    position: absolute;
    bottom: 2px;
    left: 20px;
}

#dfs-loader {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(255, 255, 255, 0.7);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 999999;
}

#dfs-loader img {
    width: 200px;
    height: 200px;
    object-fit: contain;
}

@media(max-width:1140px){
    .dfs-standard-grid{
        flex-direction: column;
        gap: 15px;
    }
}

@media(max-width:650px){
    .dfs-field-from-to-container .dfs-field{
        width: 100%;
    }
    .dfs-field-from-to-container .dfs-field label{
        display: none;
    }
    .dfs-field-from-to-container{
        flex-direction: column;
        align-items: center;
        position: relative;
    }
    .dfs-field-from-to-container .dfs-swap{
        transform: rotate(270deg);
        position: absolute;
        right: 0;
        top: 40px;
        z-index: 99;
        width: 30px;
        height: 30px;
    }
    .dfs-bottom{
        flex-direction:column;
        gap:15px;
    }
    .dfs-search-wrapper{
        padding: 28px 15px;
    }
    .dfs-traveller-popup{
        width: 300px;
    }
    .dfs-standard-grid{
        gap: 10px;
    }
}

@media(max-width:470px){
    .dfs-trip-types{
        flex-wrap: wrap;
    }
    .dfs-trip-types label{
        flex-wrap: wrap;
        margin-bottom: 20px;
    }
}