/**
Theme Name: Redditch Skip Hire
Author: Carr Design Ltd.
Author URI: http://carrdesign.co.uk/
Description: Redditch Skip Hire is the fastest, fully customizable & beautiful theme suitable for blogs, portfolios and business websites. It is very lightweight and offers unparalleled speed. Built with SEO in mind, Redditch Skip Hire comes with schema.org code integrated so search engines will love your site. Redditch Skip Hire offers plenty of sidebar options and widget areas giving you a full control for customizations. Furthermore, we have included special features and templates so feel free to choose any of your favorite page builder plugin to create pages flexibly.
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: redditch-skip-hire
Template: astra
*/
/* Normal header */
.sticky-header {
    transition: all 0.3s ease;
}

/* Header after scrolling */
.sticky-header.elementor-sticky--effects {
    padding-top: 7px !important;
    padding-bottom: 7px !important;
    min-height: 70px !important;
	box-shadow: 0px 2px 5px rgba(0, 0, 0, 0.3) !important;
}

/* Shrink the logo */
.sticky-header.elementor-sticky--effects img {
    width: 170px !important;
    transition: width 0.3s ease;
}

/* Keep logo transition smooth */
.sticky-header img {
    transition: width 0.3s ease;
}

#skip_slider_form input[type="text"] {
	border-radius: 0px;
	height: 50px;
    margin-right: 30px;
}
#skip_slider_form .skip_slider_formnote {
    color: #FFF;
    line-height: 18px;
    font-size: 12px;
    margin-top: 10px;
}
.skip-boxes .elementor-image-box-wrapper {
    display: flex !important;
    flex-direction: column !important;
}
.skip-boxes .elementor-image-box-content {
    display: contents !important;
}
.skip-boxes .elementor-image-box-title {
    order: 1 !important;
	padding-top: 15px !important;
}
.skip-boxes .elementor-image-box-img {
    order: 2 !important;
}
.skip-boxes .elementor-image-box-description {
    order: 3 !important;
	text-align: left !important;
    padding: 15px 10px !important;
    font-size: 16px !important;
}
.why-choose-iconbox .elementor-widget-icon-box:hover .elementor-icon-box-description {
    color: #FFF;
}
.footer-menu li a {
    display: block !important;
}
.image-hover {
    overflow: hidden;
    border-radius: 8px;
}
.image-hover img {
    transition: transform 0.6s cubic-bezier(.2,.8,.2,1),
                filter 0.6s ease;
}
.image-hover:hover img {
    transform: scale(1.06);
}
.image-hover.bright:hover img {
    filter: brightness(0.85);
}
.stylish-list ul {
    list-style: none;
    padding: 0;
    margin: 0;
}
.stylish-list li {
    position: relative;
    padding-left: 34px;
    margin-bottom: 14px;
}
.stylish-list li::before {
    content: "\2713";
    position: absolute;
    left: 0;
    top: 3px;
    width: 22px;
    height: 22px;
    border: 2px solid #322453;
    border-radius: 50%;
    color: #b20f24;
    font-size: 13px;
    font-weight: 700;
    line-height: 18px;
    text-align: center;
}



/* =========================================================
   REDDITCH SKIP BOOKING
   Modern standalone form styles
   ========================================================= */

#skip-booking-app {
    --skip-navy: #322453;
    --skip-navy-dark: #322453;
    --skip-red: #b20f24;
    --skip-red-dark: #b20f24;
    --skip-text: #30343b;
    --skip-muted: #6b7280;
    --skip-border: #dfe3e8;
    --skip-bg: #f6f7f9;
    --skip-white: #ffffff;
    --skip-success: #198754;
    --skip-warning: #f59e0b;
    --skip-danger: #dc3545;

    color: var(--skip-text);
    font-size: 16px;
    line-height: 1.5;
}


/* =========================================================
   GENERAL
   ========================================================= */

#skip-booking-app *,
#skip-booking-app *::before,
#skip-booking-app *::after {
    box-sizing: border-box;
}

#skip-booking-app h2 {
    color: var(--skip-navy);
    font-weight: 700;
    line-height: 1.25;
}


/* =========================================================
   POSTCODE SEARCH
   ========================================================= */

#skip-booking-app #postCodeSearchForm, 
#skip-booking-app #requireAPermitForm,
#booking_status_msg_section {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 20px;
    padding: 35px;
    margin: 0 auto 30px;
    background: var(--skip-white);
    border: 1px solid var(--skip-border);
    border-radius: 12px;
    box-shadow: 0 4px 18px rgb(0 0 0 / 10%);
    width: 70%;
}
#skip-booking-app #postCodeSearchForm > label,
#skip-booking-app #requireAPermitForm > label {
    margin: 0 4px 0 0;
    color: var(--skip-text);
    font-weight: 700 !important;
    white-space: nowrap;
	font-size: 16px;
}
#skip-booking-app #postCodeSearchForm .input-group {
    display: flex;
    flex: 1 1 360px;
    max-width: 500px;
    margin: 0;
}
#skip-booking-app #postCodeSearchForm .input-group-prepend {
    display: flex;
}
#skip-booking-app #postCodeSearchForm .input-group-text {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 52px;
    background: #eef0f4;
    border: 1px solid var(--skip-border);
    border-right: 0;
    border-radius: 8px 0 0 8px;
    color: #5d6570;
}
#skip-booking-app #postcode {
    height: 56px;
    padding: 0 18px;
    border: 1px solid var(--skip-border);
    border-radius: 0 8px 8px 0;
    background: #fff;
    color: var(--skip-text);
    font-size: 18px;
    box-shadow: none;
}

#skip-booking-app #postcode::placeholder {
    color: #8a929c;
}

#skip-booking-app #postcode:focus {
    outline: none;
    border-color: var(--skip-navy);
    box-shadow: 0 0 0 3px rgba(46, 48, 96, 0.12);
}


/* =========================================================
   BUTTONS
   ========================================================= */

#skip-booking-app .btn-redditch {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 48px;
    padding: 12px 26px;
    border: 0;
    border-radius: 8px;
    background: var(--skip-red);
    color: #fff;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.2;
    text-decoration: none;
    cursor: pointer;
    transition:
        background-color .2s ease,
        transform .2s ease,
        box-shadow .2s ease;
}

#skip-booking-app .btn-redditch:hover {
    background: var(--skip-navy);
    color: #fff;
    transform: translateY(-1px);
    box-shadow: 0 5px 14px rgba(50, 36, 83, .22);
}

#skip-booking-app .btn-redditch:disabled {
    opacity: .5;
    cursor: not-allowed;
    transform: none;
    box-shadow: none;
}


/* =========================================================
   PROGRESS BAR
   ========================================================= */

#skip-booking-app .order_grid_phases {
    margin: 35px 0;
}

#skip-booking-app .progressbar {
    display: flex;
    width: 100%;
    max-width: 850px;
    margin: 0 auto;
    padding: 0;
    list-style: none;
}

#skip-booking-app .progressbar li {
    position: relative;
    flex: 1;
    padding: 45px 10px 0;
    color: #9aa0a8;
    font-size: 15px;
    font-weight: 600;
    text-align: center;
}

#skip-booking-app .progressbar li::before {
    content: "";
    position: absolute;
    z-index: 2;
    top: 0;
    left: 50%;
    width: 32px;
    height: 32px;
    border: 3px solid #d9dde3;
    border-radius: 50%;
    background: #fff;
    transform: translateX(-50%);
}

#skip-booking-app .progressbar li::after {
    content: "";
    position: absolute;
    z-index: 1;
    top: 14px;
    left: 50%;
    width: 100%;
    height: 3px;
    background: #d9dde3;
}

#skip-booking-app .progressbar li:last-child::after {
    display: none;
}

#skip-booking-app .progressbar li.active {
    color: var(--skip-red);
}

#skip-booking-app .progressbar li.active::before {
    border-color: var(--skip-red);
    background: var(--skip-red);
    box-shadow: 0 0 0 5px rgba(214, 0, 0, .1);
}

#skip-booking-app .progressbar li.active::after {
    background: var(--skip-red);
}


/* =========================================================
   FORM CONTROLS
   ========================================================= */

#skip-booking-app .form-control,
#skip-booking-app select.form-control,
#skip-booking-app textarea.form-control {
    display: block;
    width: 100%;
    min-height: 48px;
    padding: 11px 14px;
    border: 1px solid var(--skip-border);
    border-radius: 7px;
    background: #fff;
    color: var(--skip-text);
    font-family: inherit;
    font-size: 16px;
    line-height: 1.4;
    box-shadow: none;
    transition:
        border-color .2s ease,
        box-shadow .2s ease;
}

#skip-booking-app textarea.form-control {
    min-height: 130px;
    resize: vertical;
}

#skip-booking-app .form-control:focus {
    outline: none;
    border-color: var(--skip-navy);
    box-shadow: 0 0 0 3px rgba(46, 48, 96, .1);
}

#skip-booking-app .form-control::placeholder {
    color: #8a929c;
}

#skip-booking-app .form-control:disabled,
#skip-booking-app .form-control[readonly] {
    background: #f1f3f5;
}


/* =========================================================
   STEP 2
   ========================================================= */

#skip-booking-app .process_step_two {
    padding: 30px;
    border-radius: 12px;
    background: var(--skip-bg);
}

#skip-booking-app .process_step_two h2 {
    margin: 35px 0 20px;
}

#skip-booking-app .process_step_two h2:first-child {
    margin-top: 0;
}

#skip-booking-app .process_step_two .form-row {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -8px 16px;
    padding: 0;
    background: transparent;
}

#skip-booking-app .process_step_two .form-group {
    margin: 0 0 16px;
    padding: 0 8px;
}

#skip-booking-app .col-md-6 {
    width: 50%;
}

#skip-booking-app .col-md-12 {
    width: 100%;
}

#skip-booking-app .process_step_two .form-group label {
    display: block;
    margin: 0 0 7px;
    color: var(--skip-text);
    font-size: 15px;
    font-weight: 600;
}

#skip-booking-app span.required {
    color: var(--skip-red);
}


/* =========================================================
   SAME ADDRESS
   ========================================================= */

#skip-booking-app .sameAsBilling + .custom-control-label {
    cursor: pointer;
}

#skip-booking-app .custom-checkbox,
#skip-booking-app .custom-radio {
    margin-bottom: 12px;
}

#skip-booking-app .custom-control-label {
    color: var(--skip-text);
    cursor: pointer;
}

/* =========================================================
   DATE / SKIP TABLE
   ========================================================= */
#skip-booking-app .table-responsive {
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}
#skip-booking-app table {
    width: 100%;
    border-collapse: collapse;
}

#skip-booking-app .order_process_grid table {
    border-radius: 10px;
    overflow: hidden;
}

#skip-booking-app .order_process_grid .table-dark {
    /*color: #fff;*/
}

#skip-booking-app .table thead th {
    padding: 18px 12px;
    background: var(--skip-navy);
    color: #fff;
    border: 0;
    font-size: 15px;
    line-height: 1.3;
    text-align: center;
}

#skip-booking-app .table td {
    padding: 12px;
    border: 1px solid rgba(0,0,0,.08);
    vertical-align: middle;
}

#skip-booking-app .table-striped tbody tr:nth-child(odd) {
    background: #f8f9fb;
}

#skip-booking-app .sc_content_header td {
    padding: 14px;
    background: #e9ebf2;
    color: var(--skip-navy);
    font-weight: 700;
}

#skip-booking-app .tickBox {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 90px;
    text-decoration: none;
    transition: background .2s ease;
}

#skip-booking-app .tickBox i {
    color: var(--skip-navy);
    padding: 15px 0;
    font-weight: 800;
}

#skip-booking-app .tickBox:hover {
    background: rgba(46, 48, 96, .08);
}

#skip-booking-app .tickBox.active {
    background: #d9f2df;
}

#skip-booking-app .tickBox.active i {
    color: var(--skip-success);
}

#skip-booking-app td.price {
    font-size: 20px;
    text-align: center;
    white-space: nowrap;
	color: var(--skip-red);
}

#skip-booking-app td.price small {
    display: block;
    color: #777;
    font-size: 11px;
    font-weight: 400;
}


/* =========================================================
   ALERTS
   ========================================================= */

#skip-booking-app .alert {
    position: relative;
    margin: 0 0 16px;
    padding: 15px 45px 15px 18px;
    border: 1px solid transparent;
    border-radius: 8px;
	font-size: 18px;
}

#skip-booking-app .alert p {
    margin: 0;
}

#skip-booking-app .alert-success {
    border-color: #b7dfc1;
    background: #eaf7ed;
    color: #155724;
}

#skip-booking-app .alert-danger {
    border-color: #f1b8bd;
    background: #fcebed;
    color: #842029;
}

#skip-booking-app .alert-warning {
    border-color: #ffe08a;
    background: #fff8df;
    color: #664d03;
}

#skip-booking-app .alert-info {
    border-color: #b6dce8;
    background: #e8f6fa;
    color: #055160;
}


/* =========================================================
   STEP 3
   ========================================================= */

#skip-booking-app .process_step_three {
    padding: 30px;
    border: 1px solid var(--skip-border);
    border-radius: 12px;
    background: #fff;
    box-shadow: 0 5px 20px rgba(0,0,0,.05);
}

#skip-booking-app .step3_table {
    overflow: hidden;
    border-radius: 10px;
}

#skip-booking-app .step3_table td:first-child {
    width: 35%;
    font-weight: 700;
}

#skip-booking-app .finalPlaceOrderBtn {
    float: right;
}

#skip-booking-app .finalCancelBtn {
    background: #6b7280;
}

#skip-booking-app .finalCancelBtn:hover {
    background: #4b5563;
}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 767px) {

    #skip-booking-app #postCodeSearchForm {
        display: block;
        padding: 20px;
		width: calc(100% - 40px);
    }

    #skip-booking-app #postCodeSearchForm > label {
        display: block;
        margin-bottom: 8px;
    }

    #skip-booking-app #postCodeSearchForm .input-group {
        width: 100%;
        max-width: none;
        margin-bottom: 12px;
    }

    #skip-booking-app #postCodeSearchForm .btn-redditch {
        width: 100%;
    }

    #skip-booking-app .progressbar li {
        padding-top: 40px;
        font-size: 12px;
    }

    #skip-booking-app .progressbar li::before {
        width: 27px;
        height: 27px;
    }

    #skip-booking-app .progressbar li::after {
        top: 12px;
    }

    #skip-booking-app .process_step_two,
    #skip-booking-app .process_step_three {
        padding: 20px 15px;
    }

    #skip-booking-app .process_step_two .col-md-6 {
        width: 100%;
    }

    #skip-booking-app .process_step_two .form-row {
        margin-bottom: 0;
    }

    #skip-booking-app .process_step_two .form-group {
        width: 100%;
    }

    #skip-booking-app .continueToStep2,
    #skip-booking-app .continueToStep3 {
        width: 100%;
    }

    #skip-booking-app .finalPlaceOrderBtn,
    #skip-booking-app .finalCancelBtn {
        float: none;
        width: 100%;
        margin: 5px 0;
    }

    #skip-booking-app .step3_table td:first-child {
        width: 40%;
    }
	#skip-booking-app .alert {
		width: 100% !important;
	}
}

/* Booking page spacing */
.order_process_grid {
    width: calc(100% - 30px);
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 15px;
}

.order_grid_content {
    width: 100%;
}

/* Keep the postcode/search form away from screen edges */
#postCodeSearchForm,
#requireAPermitForm {
    margin-left: 15px;
    margin-right: 15px;
}

/* Mobile spacing */
@media (max-width: 767px) {
    .order_process_grid {
        width: calc(100% - 20px);
        padding: 0 10px;
    }

    #postCodeSearchForm,
    #requireAPermitForm {
        margin-left: 10px;
        margin-right: 10px;
    }
}

/* Keep booking alerts away from screen edges */
#skip-booking-app .alert {
    margin-left: auto;
    margin-right: auto;
	width: 70%;
}
#skip-booking-app h3.text-center {
    padding-bottom: 20px;
}