.booking .container {
    padding: 0 18px;
}

/* DETAILS */
    .booking section.form form .details,
    .booking-summary {
        border: 1px solid #CCCCCC;
        margin: 20px 0 15px;
    }
    .booking section.form form .details > .head,
    .booking-summary > .head {
        background: #242E49;
        font-size: 18px;
        color: #FFFFFF;
        line-height: 60px;
        text-align: center;
        font-weight: 600;
    }
    .booking section.form form .details > .body,
    .booking-summary > .body {
        padding: 15px 10px;
    }
    .booking section.form form .details > .body label,
    .booking-summary > .body label {
        font-size: 13px;
        line-height: 18px;
        font-weight: normal;
        margin-bottom: 8px;
    }
    .booking section.form form .details > .body input.text,
    .booking-summary > .body input.text {
        height: 50px;
        line-height: 50px;
        background: #FFFFFF;
        border: 1px solid #CCCCCC;
        padding: 15px 20px;
        font-size: 15px;
        width: 100%;
        margin-bottom: 15px;
        outline: none;
    }
    .booking section.form form .details > .body input.text[disabled],
    .booking-summary > .body input.text[disabled] {
        cursor: not-allowed;
        background: #F7F7F7;
    }

    .booking section.form form .details > .body .custom-select,
    .booking section.form form .details > .body .custom-datepicker,
    .booking-summary > .body .custom-datepicker {
        background: #fff;
        margin-bottom: 15px;
    }

    .booking section.form form .details > .body > table.total,
    .booking-summary > .body > table.total {
        font-size: 14px;
        line-height: 19px;
        margin-bottom: 20px;
    }
    .booking section.form form .details > .body > table.total td,
    .booking section.form form .details > .body > table.total th,
    .booking-summary > .body > table.total td,
    .booking-summary > .body > table.total th {
        border-top: none;
        border-bottom: 1px solid #ccc;
        padding: 15px 0 7px;
    }
    .booking section.form form .details > .body > table.total tr:last-of-type td,
    .booking section.form form .details > .body > table.total tr:last-of-type th,
    .booking-summary > .body > table.total tr:last-of-type td,
    .booking-summary > .body > table.total tr:last-of-type th {
        border: none;
        padding-bottom: 0;
    }
    .booking section.form form .details > .body > table.total tr.total > td > span,
    .booking-summary > .body > table.total tr.total > td > span {
        display: block;
        height: 47px;
        line-height: 47px;
        background: #F7F7F7;
        padding: 0 10px;
        font-size: 20px;
        font-weight: 700;
        text-transform: uppercase;
    }
    .booking section.form form .details > .body .promo-code-link,
    .booking-summary > .body .promo-code-link {
        font-size: 15px;
        font-weight: 700;
        line-height: 20px;
        color: #EE7521;
        text-transform: uppercase;
        text-align: center;
        display: block;
        margin-bottom: 5px;
    }
    .booking section.form form .details > .body .promo-code-link:hover,
    .booking-summary > .body .promo-code-link:hover {
        text-decoration: underline;
    }


/* INCLUSIONS */
    .booking section.form form .inclusions {
        padding: 15px 0;
        border-bottom: 1px solid #ccc;
    }
    .booking section.form form .inclusions > h2 {
        font-size: 18px;
        line-height: 24px;
        text-align: center;
        margin: 0 0 15px;
        font-weight: 700;
    }
    .booking section.form form .inclusions > ul {
        margin: 0;
        font-size: 18px;
        line-height: 24px;
        font-weight: lighter;
        padding-left: 31px;
        padding-right: 70px;
    }


/* EXTRAS */
    .booking section.form form .extras {
        padding: 15px 0;
    }
    .booking section.form form .extras > h2 {
        font-size: 18px;
        line-height: 24px;
        text-align: center;
        margin: 0;
        font-weight: 700;
    }
    .booking section.form form .extras > .item {
        padding: 15px 0 10px;
        display: flex;
        flex-direction: column;
        border-bottom: 1px solid #CCCCCC;
    }
    .booking section.form form .extras > .item:last-of-type {
        border-bottom: none;
    }
    .booking section.form form .extras > .item > .info {
        margin-bottom: 10px;
    }
    .booking section.form form .extras > .item b.label {
        font-size: 13px;
        line-height: 18px;
        color: #333333;
        display: block;
        margin-bottom: 2px;
        overflow: hidden;
        white-space: nowrap;
        text-overflow: ellipsis;
        height: 18px;
        font-weight: 700;
        padding: 0;
        text-align: left;
    }
    .booking section.form form .extras > .item > .info > .description {
        font-size: 13px;
        line-height: 18px;
        margin-bottom: 2px;
        text-align: justify;
        display: none;
    }
    .booking section.form form .extras > .item > .info > .toggle-description {
        font-size: 13px;
        line-height: 18px;
        color: #008DA6;
        display: inline-block;
    }
    .booking section.form form .extras > .item > .info > .toggle-description:hover {
        text-decoration: underline;
    }
    .booking section.form form .extras > .item > .info > .toggle-description > .less {
        display: none;
    }
    .booking section.form form .extras > .item > .info > .toggle-description > i.icon {
        font-size: 18px;
        float: right;
        margin: 0px 0 0 5px;
        height: 18px;
        transition: transform .3s .2s;
        transition-delay: ;
    }
    .booking section.form form .extras > .item > .info.show-description > .toggle-description > .less {
        display: unset;
    }
    .booking section.form form .extras > .item > .info.show-description > .toggle-description > .more {
        display: none;
    }
    .booking section.form form .extras > .item > .info.show-description > .toggle-description > i.icon {
        transform: rotate(180deg);
    }
    .booking section.form form .extras > .item > .input {
        display: flex;
    }
    .booking section.form form .extras > .item > .input > .label {
        flex: 1;
        font-size: 15px;
        line-height: 20px;
        color: #333;
        padding: 0;
        font-weight: normal;
        text-align: left;
    }
    .booking section.form form .extras > .item > .input > .label > .rate {
        font-size: 17px;
        line-height: 20px;
        font-weight: 700;
    }
    .booking section.form form .extras > .item > .input > .value > .input-group {
        width: 117px;
        height: 35px;
    }
    .booking section.form form .extras > .item > .input > .value > .input-group > .input-group-addon {
        width: 39px;
        color: #2C79A5;
        font-size: 26px;
        padding: 10px 0;
        line-height: 13px;
        font-weight: lighter;
        background: #fff;
    }
    .booking section.form form .extras > .item > .input > .value > .input-group > input {
        height: 35px;
        padding: 6px;
        text-align: center;
        outline: none;
        box-shadow: none;
        border-color: #ccc !important;
        background: #F7F7F7;
    }
    .booking section.form form .extras > .item.special-request > b.label {
        font-size: 17px;
        line-height: 23px;
        margin-bottom: 10px;
        height: unset;
        text-align: center;
    }
    .booking section.form form .extras > .item.special-request > .input {
        flex-direction: column-reverse;
    }
    .booking section.form form .extras > .item.special-request > .input > textarea {
        background: #F7F7F7;
        border: 1px solid #CCCCCC;
        padding: 15px 20px;
        font-size: 15px;
        line-height: 20px;
        font-weight: lighter;
        outline: none;
    }
    .booking section.form form .extras > .item.special-request > .input > textarea::placeholder {
        color: #B2B2B2;
    }
    .booking section.form form .extras > .item.special-request > .input > p {
        font-size: 15px;
        line-height: 20px;
        font-style: italic;
        margin-bottom: 15px;
        text-align: center;
    }
    .booking section.form form button[type="submit"] {
        background: #2C79A5;
        color: #fff;
        width: 100%;
        font-size: 20px;
        line-height: 20px;
        padding: 0 15px;
        text-transform: uppercase;
        font-weight: 600;
        border: none;
        height: 70px;
        margin-bottom: 30px;
    }
    .booking section.form form button[type="submit"] > span {
        display: block;
        font-size: 13px;
        line-height: 15px;
        font-weight: 300;
        text-transform: none;
    }


/* RELATED ACCOMMODATIONS */
    .booking .related-accommodation {
        margin: 0 -18px;
    }
