.oosy-limo {
    max-width: 780px;
    border: 0;
    border-radius: 32px;
    box-shadow: 0 30px 80px rgba(4,20,38,.18)
}

.ol-header {
    position: relative;
    isolation: isolate;
    min-height: 330px;
    padding: 1.4rem 2rem 4.5rem;
    background-image: linear-gradient(90deg,rgba(2,17,33,.98),rgba(4,22,40,.74),rgba(4,22,40,.35)),var(--ol-hero,linear-gradient(135deg,#061629,#173652));
    background-position: center;
    background-size: cover
}

.ol-header:after {
    content: "";
    position: absolute;
    z-index: -1;
    inset: auto 0 0;
    height: 120px;
    background: linear-gradient(transparent,#07192d)
}

.ol-appbar {
    display: grid;
    grid-template-columns: 42px 1fr 42px;
    align-items: center;
    margin-bottom: 3rem;
    color: #fff
}

.ol-appbar>span,
.ol-appbar>a {
    display: grid;
    place-items: center;
    width: 42px;
    height: 42px;
    color: #fff;
    background: rgba(255,255,255,.08);
    border-radius: 50%;
    text-decoration: none;
    font-size: 1.35rem
}

.ol-appbar strong {
    text-align: center;
    font-size: 1.05rem
}

.ol-header .ol-eyebrow {
    color: #4d91ff
}

.ol-header h2 {
    max-width: 480px;
    font-size: clamp(2.55rem,7vw,4.3rem)
}

.ol-header p {
    max-width: 430px
}

.ol-form {
    position: relative;
    margin-top: -38px;
    padding: 2.2rem;
    border-radius: 30px 30px 0 0
}

.ol-section {
    padding: 2rem 0
}

.ol-section h3 {
    align-items: flex-start
}

.ol-section h3>.ol-section-icon {
    display: block;
    flex: 0 0 38px;
    width: 38px;
    height: 38px;
    background-color: #1769ff;
    border-radius: 50%
}

.ol-section h3>.ol-heading-copy {
    display: flex;
    align-items: flex-start;
    flex-direction: column;
    width: auto;
    height: auto;
    color: #0a1c30;
    background: transparent;
    border-radius: 0
}

.ol-heading-copy b {
    font-size: 1.05rem
}

.ol-heading-copy small {
    margin-top: .2rem;
    color: #7a8795;
    font-size: .78rem;
    font-weight: 400
}

.ol-input-wrap {
    position: relative;
    display: block
}

.ol-input-wrap .ol-icon {
    position: absolute;
    z-index: 2;
    top: 50%;
    left: 15px;
    transform: translateY(-50%)
}

.ol-input-wrap input {
    padding-left: 46px!important
}

.ol-icon {
    display: inline-block;
    width: 20px;
    height: 20px;
    background: #007cba;
    mask: center/contain no-repeat;
    -webkit-mask: center/contain no-repeat
}

.ol-icon-pin,
.ol-icon-route {
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 22s7-6.2 7-13A7 7 0 1 0 5 9c0 6.8 7 13 7 13Zm0-10a3 3 0 1 1 0-6 3 3 0 0 1 0 6Z'/%3E%3C/svg%3E");
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 22s7-6.2 7-13A7 7 0 1 0 5 9c0 6.8 7 13 7 13Zm0-10a3 3 0 1 1 0-6 3 3 0 0 1 0 6Z'/%3E%3C/svg%3E")
}

.ol-icon-calendar {
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M7 2h2v3h6V2h2v3h3v17H4V5h3V2Zm11 8H6v10h12V10Z'/%3E%3C/svg%3E");
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M7 2h2v3h6V2h2v3h3v17H4V5h3V2Zm11 8H6v10h12V10Z'/%3E%3C/svg%3E")
}

.ol-icon-clock {
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20Zm1 5v4.6l3.2 3.2-1.4 1.4L11 12.4V7h2Z'/%3E%3C/svg%3E");
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20Zm1 5v4.6l3.2 3.2-1.4 1.4L11 12.4V7h2Z'/%3E%3C/svg%3E")
}

.ol-icon-user {
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 12a5 5 0 1 0 0-10 5 5 0 0 0 0 10Zm9 10H3c0-5 4-8 9-8s9 3 9 8Z'/%3E%3C/svg%3E");
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 12a5 5 0 1 0 0-10 5 5 0 0 0 0 10Zm9 10H3c0-5 4-8 9-8s9 3 9 8Z'/%3E%3C/svg%3E")
}

.ol-icon-note {
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 2h14v20H5V2Zm3 5h8V5H8v2Zm0 4h8V9H8v2Zm0 4h6v-2H8v2Z'/%3E%3C/svg%3E");
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 2h14v20H5V2Zm3 5h8V5H8v2Zm0 4h8V9H8v2Zm0 4h6v-2H8v2Z'/%3E%3C/svg%3E")
}

.ol-section-icon {
    mask: unset!important;
    -webkit-mask: unset!important
}

.ol-section-icon:after {
    content: "";
    display: block;
    width: 19px;
    height: 19px;
    margin: 9px;
    background: #fff;
    mask: inherit;
    -webkit-mask: inherit
}

.ol-section-icon.ol-icon-route:after {
    mask-image: inherit;
    -webkit-mask-image: inherit
}

.ol-section-icon.ol-icon-user:after {
    mask-image: inherit;
    -webkit-mask-image: inherit
}

.ol-section-icon.ol-icon-note:after {
    mask-image: inherit;
    -webkit-mask-image: inherit
}

.ol-field input,
.ol-field textarea {
    border-color: #d5dde5;
    background: #fff;
    border-radius: 11px
}

.ol-submit {
    background: linear-gradient(135deg,#06182b,#0b2845);
    border-radius: 12px;
    box-shadow: 0 10px 25px rgba(5,27,48,.2)
}

@media(max-width:680px) {
    .oosy-limo {
        margin: 0;
        border-radius: 0
    }

    .ol-header {
        min-height: 300px;
        padding: 1rem 1.25rem 4rem
    }

    .ol-appbar {
        margin-bottom: 2rem
    }

    .ol-form {
        margin-top: -32px;
        padding: 1.2rem
    }

    .ol-map {
        height: 220px
    }

    .ol-section {
        padding: 1.5rem 0
    }
}
