/* =========================================================
   CM GLOBAL POPUP
   Bootstrap 3.4.1 Compatible
========================================================= */


/* ---------------------------------------------------------
   MODAL
--------------------------------------------------------- */

.cm-global-popup {
    padding: 0 !important;
}

.cm-global-popup .modal-dialog {
    width: 1000px;
    max-width: calc(100% - 40px);
    margin: 30px auto;
}

.cm-global-popup .modal-content {
    position: relative;
    overflow: visible;
    border: 0;
    border-radius: 15px;
    background: #ffffff;
    box-shadow:
        0 20px 55px rgba(0, 0, 0, 0.25);
    -webkit-box-shadow:
        0 20px 55px rgba(0, 0, 0, 0.25);
}


/* Bootstrap modal background */

.cm-global-popup.in {
    background: rgba(7, 18, 35, 0.68);
}


/* Remove Bootstrap defaults */

.cm-global-popup .modal-header,
.cm-global-popup .modal-footer {
    display: none;
}

.cm-global-popup .modal-body {
    padding: 0;
}


/* ---------------------------------------------------------
   CLOSE BUTTON
--------------------------------------------------------- */

.cm-popup-close {
    position: absolute;

    top: -11px;
    right: -11px;

    z-index: 100;

    width: 38px;
    height: 38px;

    padding: 0;

    border: 0;
    border-radius: 50%;

    background: #ffffff;

    color: #111820;

    font-size: 28px;
    font-weight: 300;

    line-height: 36px;

    text-align: center;

    box-shadow:
        0 2px 10px rgba(0, 0, 0, 0.18);

    cursor: pointer;

    opacity: 1;

    transition:
        background .2s ease,
        transform .2s ease;
}

.cm-popup-close:hover {
    background: #f4f6f8;
    color: #000;

    transform: scale(1.05);
}

.cm-popup-close span {
    position: relative;
    top: -1px;
}


/* ---------------------------------------------------------
   MAIN LAYOUT
--------------------------------------------------------- */

.cm-popup-layout {

    display: table;

    width: 100%;

    min-height: 535px;

    background: #ffffff;

    font-family:
        Arial,
        Helvetica,
        sans-serif;

    color: #111827;

    box-sizing: border-box;
}


/* ---------------------------------------------------------
   LEFT COLUMN
--------------------------------------------------------- */

.cm-popup-left {

    display: table-cell;

    width: 48%;

    vertical-align: middle;

    position: relative;

    padding: 20px 40px 28px;

    background:
        linear-gradient(
            135deg,
            #ffffff 0%,
            #fafafa 100%
        );

    border-right: 1px solid #eeeeee;

    text-align: center;

    box-sizing: border-box;
}


/* ---------------------------------------------------------
   EU BADGE
--------------------------------------------------------- */

.cm-eu-badge {

    display: inline-flex;

    align-items: center;

    position: absolute;

    top: 20px;
    left: 22px;

    min-width: 260px;

    height: 48px;

    padding: 5px 12px 5px 8px;

    border: 1px solid #183f87;

    border-radius: 4px;

    background: #ffffff;

    text-align: left;

    box-sizing: border-box;
}


.cm-eu-circle {

    display: inline-block;

    width: 34px;
    height: 34px;

    margin-right: 9px;

    border-radius: 50%;

    background: #123d84;

    color: #ffd600;

    font-size: 16px;

    line-height: 34px;

    text-align: center;

    flex-shrink: 0;
}


.cm-eu-text {

    display: block;

    line-height: 1.15;
}


.cm-eu-text strong {

    display: block;

    color: #123d84;

    font-size: 12px;

    font-weight: 700;

    letter-spacing: .15px;
}


.cm-eu-text small {

    display: block;

    margin-top: 2px;

    color: #123d84;

    font-size: 10px;

    font-weight: 600;

    letter-spacing: .15px;
}


/* ---------------------------------------------------------
   PRODUCT IMAGE
--------------------------------------------------------- */

.cm-product-image {

    width: 100%;

    height: 390px;

    margin-top: 58px;

    display: table;

    text-align: center;

    box-sizing: border-box;
}


.cm-product-image img {

    display: table-cell;

    width: auto;

    max-width: 100%;

    height: 360px;

    max-height: 360px;

    margin: 0 auto;

    object-fit: contain;

    vertical-align: middle;

   /* filter:
        drop-shadow(
            0 13px 12px rgba(0,0,0,.12)
        );*/
}


/* ---------------------------------------------------------
   PRODUCT NAME
--------------------------------------------------------- */

.cm-product-name {

    position: relative;

    display: flex;

    align-items: center;

    justify-content: center;

    gap: 10px;

    margin-top: 2px;

    padding-top: 18px;

    border-top: 1px solid #e8e8e8;

    color: #143b79;

    font-size: 15px;

    text-align: center;
}


.cm-product-name:before,
.cm-product-name:after {

    content: "";

    display: block;

    width: 38px;

    height: 1px;

    background: #e1e5e9;
}
.cm-product-logo {
    width: 34px !important;
    height: 38px !important;
    flex: 0 0 34px !important;
    font-size: 11px !important;
}

.cm-product-logo {
    position: relative !important;

    display: flex !important;

    align-items: center !important;
    justify-content: center !important;

    width: 30px !important;
    height: 34px !important;

    flex: 0 0 30px !important;

    margin: 0 !important;
    padding: 0 !important;

    box-sizing: border-box !important;

    background: #143b79 !important;

    color: #fff !important;

    font-family: Arial, Helvetica, sans-serif !important;

    font-size: 10px !important;
    font-weight: 700 !important;

    line-height: 1 !important;

    text-align: center !important;

    clip-path: polygon(
        50% 0,
        100% 17%,
        100% 83%,
        50% 100%,
        0 83%,
        0 17%
    );

    -webkit-clip-path: polygon(
        50% 0,
        100% 17%,
        100% 83%,
        50% 100%,
        0 83%,
        0 17%
    );

    border-radius: 0 !important;

    transform: none !important;
}


/* White top mark */

.cm-product-logo::before {

    content: "";

    position: absolute;

    top: 3px;

    left: 50%;

    transform: translateX(-50%);

    width: 0;
    height: 0;

    border-left: 3px solid transparent;
    border-right: 3px solid transparent;
    border-bottom: 4px solid #fff;
}


/* White bottom mark */

.cm-product-logo::after {

    content: "";

    position: absolute;

    bottom: 3px;

    left: 50%;

    transform: translateX(-50%);

    width: 0;
    height: 0;

    border-left: 3px solid transparent;
    border-right: 3px solid transparent;
    border-top: 4px solid #fff;
}

.cm-product-logo::first-line {
    transform: rotate(45deg);
}


/* ---------------------------------------------------------
   RIGHT COLUMN
--------------------------------------------------------- */

.cm-popup-right {

    display: table-cell;

    width: 52%;

    vertical-align: middle;

    padding: 20px 60px 10px 44px;

    box-sizing: border-box;

    background: #ffffff;
}


/* ---------------------------------------------------------
   HEADINGS
--------------------------------------------------------- */

.cm-popup-right h2 {

    margin: 0 0 8px;

    color: #101820;

    font-size: 31px;

    line-height: 1.18;

    font-weight: 700;

    letter-spacing: -.7px;
}


.cm-popup-right h3 {

    margin: 0 0 18px;

    color: #143b79;

    font-size: 19px;

    line-height: 1.35;

    font-weight: 700;
}


/* ---------------------------------------------------------
   DESCRIPTION
--------------------------------------------------------- */

.cm-description {

    max-width: 500px;

    margin: 0 0 15px;

    color: #333c47;

    font-size: 14px;

    line-height: 1.55;

    font-weight: 400;
}


/* ---------------------------------------------------------
   FEATURES
--------------------------------------------------------- */

.cm-features {

    margin: 0;

    padding: 0;

    list-style: none;
}


.cm-features li {

	display: flex;
	align-items: center;
	min-height: 36px;
	margin: 0;
	padding: 3px 0;
	color: #111820;
	font-size: 15px;
	line-height: 1.35;
}


.cm-check {

    display: inline-block;

    width: 20px;
    height: 20px;

    margin-right: 12px;

    border-radius: 50%;

    background: #143b79;

    color: #ffffff;

    font-size: 12px;

    font-weight: 700;

    line-height: 20px;

    text-align: center;

    flex-shrink: 0;
}


.cm-features strong {

    font-weight: 600;
}


/* ---------------------------------------------------------
   DIVIDER
--------------------------------------------------------- */

.cm-divider {

    width: 100%;

    height: 1px;

    margin: 16px 0 10px;

    background: #e4e6e8;
}


/* ---------------------------------------------------------
   QUOTE TEXT
--------------------------------------------------------- */

.cm-quote-text {

    margin: 0 0 10px;

    color: #29323d;

    font-size: 12px;

    line-height: 1.4;
}


/* ---------------------------------------------------------
   GET QUOTE BUTTON
--------------------------------------------------------- */

.cm-quote-button {

    display: flex;

    align-items: center;

    justify-content: center;

    width: 100%;

    height: 47px;

    margin-bottom: 12px;

    border: 1px solid #0e3571;

    border-radius: 5px;

    background: #073574;

    color: #ffffff !important;

    text-decoration: none !important;

    font-size: 16px;

    line-height: 47px;

    text-align: center;

    cursor: pointer;

    box-sizing: border-box;

    transition:
        background .2s ease,
        box-shadow .2s ease;
}


.cm-quote-button:hover {

    background: #0b438d;

    color: #ffffff !important;

    box-shadow:
        0 4px 12px rgba(7, 53, 116, .18);
}


.cm-document-icon {

    display: inline-block;

    margin-right: 10px;

    font-size: 18px;

    line-height: 1;
}


.cm-quote-button strong {

    font-weight: 600;
}


/* ---------------------------------------------------------
   PRODUCT DETAILS BUTTON
--------------------------------------------------------- */

.cm-details-button {

    display: flex;

    align-items: center;

    justify-content: center;

    position: relative;

    width: 100%;

    height: 46px;

    border: 1px solid #163d7a;

    border-radius: 5px;

    background: #ffffff;

    color: #143b79 !important;

    text-decoration: none !important;

    font-size: 14px;

    font-weight: 600;

    box-sizing: border-box;

    transition:
        background .2s ease,
        color .2s ease;
}


.cm-details-button:hover {

    background: #f4f7fb;

    color: #0a2d60 !important;
}


.cm-arrow {

    position: absolute;

    right: 20px;

    font-size: 13px;
}


/* ---------------------------------------------------------
   BOTTOM CHECKBOX
--------------------------------------------------------- */

.cm-popup-bottom {

    height: 45px;

    padding: 0 24px;

    border-top: 1px solid #e5e5e5;

    background: #fafafa;

    box-sizing: border-box;
}


.cm-dont-show {

    display: flex;

    align-items: center;

    height: 45px;

    margin: 0;

    color: #3d4650;

    font-size: 11px;

    font-weight: 400;

    cursor: pointer;
}


.cm-dont-show input {

    width: 15px;
    height: 15px;

    margin: 0 13px 0 0;

    cursor: pointer;
}


/* ---------------------------------------------------------
   MOBILE
--------------------------------------------------------- */

@media (max-width: 767px) {

    .cm-global-popup .modal-dialog {

        width: auto;

        max-width: none;

        margin: 15px;

    }


    .cm-global-popup .modal-content {

        border-radius: 12px;

        max-height: calc(100vh - 30px);

        overflow-y: auto;

    }


    .cm-popup-layout {

        display: block;

        min-height: 0;

    }


    .cm-popup-left,
    .cm-popup-right {

        display: block;

        width: 100%;

    }


    .cm-popup-left {

        min-height: 390px;

        padding: 15px 20px 20px;

        border-right: 0;

        border-bottom: 1px solid #eeeeee;

    }


    .cm-eu-badge {

        position: relative;

        top: auto;
        left: auto;

        display: flex;

        width: max-content;

        max-width: 100%;

        min-width: 0;

        margin: 0 auto;

    }


    .cm-product-image {

        height: 260px;

        margin-top: 20px;

    }


    .cm-product-image img {

        height: 245px;

        max-height: 245px;

    }


    .cm-product-name {

        padding-top: 12px;

        font-size: 13px;

    }


    .cm-popup-right {

        padding: 28px 24px 25px;

    }


    .cm-popup-right h2 {

        font-size: 24px;

        letter-spacing: -.3px;

    }


    .cm-popup-right h3 {

        font-size: 17px;

    }


    .cm-description {

        font-size: 13px;

    }


    .cm-features li {

        font-size: 13px;

    }


    .cm-popup-close {

        top: 8px;

        right: 8px;

    }

}


/* ---------------------------------------------------------
   SMALL MOBILE
--------------------------------------------------------- */

@media (max-width: 480px) {

    .cm-global-popup .modal-dialog {

        margin: 8px;

    }


    .cm-popup-left {

        min-height: 350px;

    }


    .cm-product-image {

        height: 230px;

    }


    .cm-product-image img {

        height: 215px;

        max-height: 215px;

    }


    .cm-popup-right {

        padding: 24px 18px 20px;

    }


    .cm-popup-right h2 {

        font-size: 21px;

    }


    .cm-popup-right h3 {

        font-size: 16px;

    }


    .cm-quote-button,
    .cm-details-button {

        height: 44px;

    }

}


/* =========================================================
   CM POPUP - MODAL CONTAINER
========================================================= */

.cm-global-popup .modal-dialog {
    position: relative;

    width: 1000px;
    max-width: calc(100% - 40px);

    margin: 30px auto;
}


.cm-global-popup .modal-content {
    position: relative;

    width: 100%;

    overflow: visible !important;

    border: 0 !important;
    border-radius: 15px !important;

    background: #fff;

    box-shadow:
        0 20px 55px rgba(0, 0, 0, 0.25);

    -webkit-box-shadow:
        0 20px 55px rgba(0, 0, 0, 0.25);
}


/* =========================================================
   CLIP THE ACTUAL POPUP CONTENT
   This keeps rounded corners while allowing the
   close button to sit outside the modal.
========================================================= */

.cm-global-popup .cm-popup-body {
    overflow: hidden;

    border-radius: 15px 15px 15px 15px;

    background: #fff;
}


/* =========================================================
   MAIN POPUP
========================================================= */

.cm-global-popup .cm-popup-layout {
    width: 100%;

    overflow: hidden;

    border-radius: 15px 15px 0 0;

    background: #fff;
}


/* =========================================================
   CLOSE BUTTON
========================================================= */

.cm-global-popup .cm-popup-close {
    position: absolute;

    top: -12px;
    right: -12px;

    z-index: 9999;

    display: flex;

    align-items: center;
    justify-content: center;

    width: 38px;
    height: 38px;

    margin: 0;
    padding: 0;

    border: 1px solid #d9d9d9 !important;

    border-radius: 50% !important;

    background: #fff !important;

    color: #111820 !important;

    font-family: Arial, Helvetica, sans-serif;

    font-size: 27px;
    font-weight: 300;

    line-height: 36px;

    text-align: center;

    opacity: 1 !important;

    outline: none;

    cursor: pointer;

    box-shadow:
        0 2px 8px rgba(0, 0, 0, 0.16);

    -webkit-box-shadow:
        0 2px 8px rgba(0, 0, 0, 0.16);

    transition:
        background .2s ease,
        color .2s ease,
        box-shadow .2s ease,
        transform .2s ease;
}


/* X itself */

.cm-global-popup .cm-popup-close span {
    display: block;

    position: relative;

    top: -1px;

    color: #111820 !important;

    font-size: 27px;

    font-weight: 300;

    line-height: 1;
	padding:10px 8px 8px 11px;
}




/* Hover */

.cm-global-popup .cm-popup-close:hover {

    background: #f7f7f7 !important;

    color: #000 !important;

    box-shadow:
        0 4px 12px rgba(0, 0, 0, 0.20);

    transform: scale(1.03);
}


/* =========================================================
   BOTTOM FOOTER
========================================================= */

.cm-global-popup .cm-popup-bottom {

    border-radius: 0 0 15px 15px;

    background: #fafafa;
}


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

@media (max-width: 767px) {

    .cm-global-popup .modal-dialog {

        width: auto;

        max-width: none;

        margin: 20px 15px;
    }


    .cm-global-popup .modal-content {

        border-radius: 12px !important;
    }


    .cm-global-popup .cm-popup-body,
    .cm-global-popup .cm-popup-layout {

        border-radius: 12px 12px 0 0;
    }
	

	.cm-popup-layout  {
		height: 500px;
        overflow-y: auto;
	
	}

    .cm-global-popup .cm-popup-close {

        top: -8px;
        right: -8px;

        width: 34px;
        height: 34px;

        font-size: 24px;
    }


    .cm-global-popup .cm-popup-close span {

        font-size: 24px;
    }

}

.modal-open .modal {
    overflow-x: hidden;
    overflow-y: hidden;
}