/*----------------------------------------------------------------------
    Template Name: Printco - Printing Company and Service Html Template
    Template URI: https://webtend.net/demo/html/printco/
    Author: WebTend
    Author URI:  https://webtend.net/
    Version: 1.0

    Note: This is Main Style CSS File. */
/*----------------------------------------------------------------------
	CSS INDEX
	----------------------

    01. Default Style
    02. Common Classes
    03. Repeat Style
    04. Padding Margin
    05. Custom Animation
    06. Main Header
    07. PopUp Search
    08. Hero Area
    09. Banner Area
    10. About Area
    11. What We Provide
    12. Services Area
    13. Counter Area
    14. Project Area
    15. CTA Area
    16. Testimonials
    17. Pricing Area
    18. Blog Area
    19. Shop Area
    20. All Widgets
    21. Category Area
    22. Offers Area
    23. Work Step
    24. FAQ Area
    25. Team Member
    26. Skills Area
    27. Contact Area
    28. 404 Error
    29. Main Footer */
/* -------------------------------------------------------------- */
@import url("https://fonts.googleapis.com/css2?family=Outfit:wght@400;500;600&display=swap");
/*******************************************************/
/******************* 01. Default Style *****************/
/*******************************************************/
* {
    margin: 0;
    padding: 0;
    border: none;
    outline: none;
    -webkit-box-shadow: none;
    box-shadow: none;
}

body {
    color: #7e7e7e;
    background: white;
    font-weight: 400;
    line-height: 32px;
    font-size: 18px;
    font-family: "Outfit", sans-serif;
}

a {
    color: #7e7e7e;
    cursor: pointer;
    outline: none;
    -webkit-transition: 0.5s;
    -o-transition: 0.5s;
    transition: 0.5s;
    text-decoration: none;
}

a:hover, a:focus, a:visited {
    text-decoration: none;
    outline: none;
}

a:hover {
    color: #0A2D24;
}

h1, h2, h3, h4, h5, h6 {
    margin-bottom: 12px;
}

h1 a, h2 a, h3 a, h4 a, h5 a, h6 a {
    color: #000000;
}

h1 {
    line-height: 1.18;
    font-size: 60px;
}

h2 {
    font-size: 42px;
}

h3 {
    line-height: 1.5;
    font-size: 27px;
}

h4 {
    line-height: 1.35;
    font-size: 24px;
}

h5 {
    font-size: 20px;
}

h6 {
    line-height: 1.4;
    font-size: 18px;
}

ul, li {
    list-style: none;
    padding: 0;
    margin: 0;
}

img {
    max-width: 100%;
    display: inline-block;
}

mark {
    background: transparent;
    text-decoration: underline;
}

header:after, section:after, footer:after {
    display: block;
    clear: both;
    content: "";
}

/*======= Scroll behavior with navbar sticky =======*/
:root { --header-offset: 80px; } /* fallback avant calcul */

html { scroll-behavior: smooth; }

/* Toutes les cibles d’ancre (#id) tiennent compte de la navbar */
[id] { scroll-margin-top: var(--header-offset); }

/* Utile aussi si tu utilises scrollIntoView() en JS */
html { scroll-padding-top: var(--header-offset); }

/*======= Input Styles =======*/
input,
select,
textarea,
.nice-select,
.form-control {
    width: 100%;
    height: auto;
    font-size: 18px;
    line-height: 1.5;
    border-radius: 5px;
    padding: 15px 25px;
    border: 1px solid rgba(0, 0, 0, 0.1);
}

textarea {
    display: inherit;
}

label {
    cursor: pointer;
    font-weight: 500;
    margin-bottom: 5px;
    color: #7e7e7e;
}

.form-group {
    position: relative;
    margin-bottom: 30px;
}

.nice-select:after {
    width: 8px;
    height: 8px;
    right: 22px;
}

input:focus,
button:focus,
.nice-select:focus,
.form-control:focus {
    outline: none;
    -webkit-box-shadow: none;
    box-shadow: none;
    border-color: #57EBAD;
}

input::-webkit-input-placeholder,
select::-webkit-input-placeholder,
.nice-select .current,
textarea::-webkit-input-placeholder,
.form-control::-webkit-input-placeholder {
    font-weight: 500;
    color: #000000;
}

input:-ms-input-placeholder,
select:-ms-input-placeholder,
.nice-select .current,
textarea:-ms-input-placeholder,
.form-control:-ms-input-placeholder {
    font-weight: 500;
    color: #000000;
}

input::-ms-input-placeholder,
select::-ms-input-placeholder,
.nice-select .current,
textarea::-ms-input-placeholder,
.form-control::-ms-input-placeholder {
    font-weight: 500;
    color: #000000;
}

input::placeholder,
select:not(.nice-select)::placeholder,
/*.nice-select .current,*/
textarea::placeholder,
.form-control::placeholder {
    font-weight: 500;
    color: #ffffff;
}

input[type=search]::-ms-clear {
    display: none;
    width: 0;
    height: 0;
}

input[type=search]::-ms-reveal {
    display: none;
    width: 0;
    height: 0;
}

input[type=search]::-webkit-search-decoration,
input[type=search]::-webkit-search-cancel-button,
input[type=search]::-webkit-search-results-button,
input[type=search]::-webkit-search-results-decoration {
    display: none;
}

input[type=checkbox], input[type=radio] {
    height: auto;
    width: auto;
}

/*******************************************************/
/*****************  02. Common Classes *****************/
/*******************************************************/
.page-wrapper {
    position: relative;
    z-index: 9;
    width: 100%;
    margin: 0 auto;
    overflow: hidden;
    min-width: 300px;
    background: #FFFFFF;
}

@media only screen and (min-width: 1200px) {
    .container {
        max-width: 1200px;
        padding-left: 15px;
        padding-right: 15px;
    }
}

@media only screen and (min-width: 1200px) {
    .container-1570 {
        max-width: 1600px;
    }
}

@media only screen and (min-width: 1200px) {
    .container-1350 {
        max-width: 1380px;
    }
}

.row {
    --bs-gutter-x: 30px;
}

.no-gap {
    margin-left: 0;
    margin-right: 0;
}

.no-gap > div {
    padding-left: 0;
    padding-right: 0;
}

.small-gap {
    margin-left: -10px;
    margin-right: -10px;
}

.small-gap > div {
    padding-left: 10px;
    padding-right: 10px;
}

@media only screen and (min-width: 1400px) {
    .large-gap {
        margin-left: -40px;
        margin-right: -40px;
    }

    .large-gap > div {
        padding-left: 40px;
        padding-right: 40px;
    }
}

@media only screen and (max-width: 375px) {
    .col-small {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%;
    }
}

/** Section Title style **/
.sub-title {
    font-size: 20px;
    font-weight: 600;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    color: #57EBAD;
    text-transform: capitalize;
}

@media only screen and (max-width: 575px) {
    .sub-title {
        font-size: 18px;
    }
}

.dark-sub-title {
    font-size: 20px;
    font-weight: bolder;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    color: #0A2D24;
    text-transform: capitalize;
}

@media only screen and (max-width: 575px) {
    .dark-sub-title {
        font-size: 18px;
    }
}

.section-title h2 {
    text-transform: capitalize;
}

@media only screen and (max-width: 767px) {
    .section-title h2 {
        font-size: 35px;
    }
}

@media only screen and (max-width: 575px) {
    .section-title h2 {
        font-size: 30px;
    }
}

@media only screen and (max-width: 375px) {
    .section-title h2 {
        font-size: 20px;
    }
}

/* Text White */
.text-white * {
    color: white;
}

.text-white * p, .text-white * a, .text-white * a i {
    color: #b8b8b8;
}

.text-white * h1, .text-white * h2, .text-white * h3, .text-white * h4, .text-white * h5, .text-white * h6,
.text-white * h1 a, .text-white * h2 a, .text-white * h3 a, .text-white * h4 a, .text-white * h5 a, .text-white * h6 a {
    color: white;
}

/** Button style **/
.theme-btn,
a.theme-btn {
    color: white;
    font-size: 16px;
    cursor: pointer;
    -webkit-transition: 0.5s;
    -o-transition: 0.5s;
    transition: 0.5s;
    font-weight: 500;
    border-radius: 5px;
    text-align: center;
    padding: 9px 30px;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    text-transform: capitalize;
    background: #57EBAD;
}

.theme-btn i,
a.theme-btn i {
    -webkit-transition: 0.5s;
    -o-transition: 0.5s;
    transition: 0.5s;
    margin-left: 10px;
}

.theme-btn:hover,
a.theme-btn:hover {
    background: black;
}

.theme-btn:hover i,
a.theme-btn:hover i {
    margin-left: 13px;
    margin-right: -3px;
}

.theme-btn.hover-two:hover,
a.theme-btn.hover-two:hover {
    background: white;
    color: #57EBAD;
}

.theme-btn.style-two,
a.theme-btn.style-two {
    background: #0A2D24;
}

.theme-btn.style-two:hover,
a.theme-btn.style-two:hover {
    background: #57EBAD;
    color: #000000;
}

.theme-btn.style-three,
a.theme-btn.style-three {
    line-height: 32px;
    padding: 8px 29px;
    color: #000000;
    background: #57EBAD;
    border-color: #57EBAD;
    border: 1px solid rgba(0, 0, 0, 0.1);
}

.theme-btn.style-three:hover,
a.theme-btn.style-three:hover {
    color: white;
    background: #000000;
    border-color: #000000;
}
.theme-btn.style-three:disabled,
a.theme-btn.style-three:disabled {
    color: white;
    background: var(--bs-gray);
    border-color: var(--bs-gray);
    cursor: not-allowed;
}

@media only screen and (max-width: 575px) {
    .theme-btn.style-three,
    a.theme-btn.style-three {
        padding: 6px 24px;
    }
}

@media only screen and (max-width: 575px) {
    .theme-btn,
    a.theme-btn {
        padding: 7px 25px;
    }
}

/* Read More */
.read-more {
    font-size: 16px;
    font-weight: 500;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    text-transform: capitalize;
    text-decoration: underline;
}

.read-more i {
    float: right;
    font-size: 12px;
    margin-top: 4px;
    margin-left: 7px;
    -webkit-transition: 0.5s;
    -o-transition: 0.5s;
    transition: 0.5s;
}

.read-more:hover {
    color: #57EBAD;
    text-decoration: underline;
}

.read-more:hover i {
    margin-left: 10px;
    color: #57EBAD;
}

/* List style One */
.list-style-one li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.list-style-one li:not(:last-child) {
    margin-bottom: 6px;
}

.list-style-one li:before {
    -webkit-box-flex: 0;
    -ms-flex: none;
    flex: none;
    color: #43c1ab;
    content: '\f00c';
    margin-right: 15px;
    font-family: 'Font Awesome 5 Pro';
}

/* product-tab */
ol li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}
ol li:not(:last-child) {
    margin-bottom: 6px;
}
ol li:before {
    -webkit-box-flex: 0;
    -ms-flex: none;
    flex: none;
    color: #43c1ab;
    content: '\f00c';
    margin-right: 15px;
    font-family: 'Font Awesome 5 Pro';
}

/* List style two */
.list-style-two li {
    color: black;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    font-weight: 500;
}

.list-style-two li:not(:last-child) {
    margin-bottom: 6px;
}

.list-style-two li:before {
    -webkit-box-flex: 0;
    -ms-flex: none;
    flex: none;
    content: '\f058';
    margin-right: 13px;
    color: #57EBAD;
    font-family: 'Font Awesome 5 Pro';
}

/** Social Link One **/
.social-style-one {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    /*display: -webkit-inline-box;*/
    /*display: -ms-inline-flexbox;*/
    /*display: block !important;*/
}

.social-style-one a:not(:last-child) {
    margin-right: 28px;
}

/** Social Link two **/
.social-style-two {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
}

.social-style-two a {
    width: 40px;
    height: 40px;
    background: white;
    line-height: 40px;
    border-radius: 50%;
    text-align: center;
    -webkit-box-shadow: 10px 0 60px rgba(132, 132, 132, 0.5);
    box-shadow: 10px 0 60px rgba(132, 132, 132, 0.5);
}

.social-style-two a:not(:last-child) {
    margin-right: 10px;
}

.social-style-two a:hover {
    color: white;
    background: #57EBAD;
}

/*** Preloader style ** */
.preloader {
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 9999999;
    background-color: #FFFFFF;
    background-repeat: no-repeat;
    background-position: center center;
    background-image: url(../img/preloader.gif);
}

/* Pagination */
.pagination {
    margin-left: -5px;
    margin-right: -5px;
}

.pagination li {
    margin: 10px 5px 0;
}

.pagination li a,
.pagination li .page-link {
    padding: 0;
    width: 50px;
    height: 50px;
    -webkit-box-shadow: none;
    box-shadow: none;
    font-weight: 700;
    line-height: 48px;
    border-radius: 50%;
    text-align: center;
    color: #000000;
    border: 1px solid rgba(0, 0, 0, 0.1);
}

@media only screen and (max-width: 375px) {
    .pagination li a,
    .pagination li .page-link {
        width: 42px;
        height: 42px;
        font-size: 16px;
        line-height: 40px;
    }
}

.pagination li.active .page-link, .pagination li:hover:not(.disabled) .page-link {
    color: white;
    background: #57EBAD;
    border-color: #57EBAD;
}

.pagination li:last-child .page-link, .pagination li:first-child .page-link {
    border-radius: 50%;
}

/* Rating */
.ratting {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
}

.ratting i {
    color: #57EBAD;
}

.ratting i:not(:last-child) {
    margin-right: 10px;
}

/*** Slick Dots ***/
.slick-arrow {
    font-size: 30px;
    -webkit-transition: 0.5s;
    -o-transition: 0.5s;
    transition: 0.5s;
    color: #000000;
    background: transparent;
}

.slick-arrow:focus, .slick-arrow:hover {
    color: #57EBAD;
}

/*** Slick Dots ***/
.slick-dots {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.slick-dots li {
    position: relative;
    cursor: pointer;
    margin: 8px;
    width: 7px;
    height: 7px;
    -webkit-transition: 0.5s;
    -o-transition: 0.5s;
    transition: 0.5s;
    border-radius: 50%;
    background: #57EBAD;
}

.slick-dots li button {
    opacity: 0;
    height: 0;
}

.slick-dots li:before {
    content: '';
    width: 0;
    height: 0;
    left: 50%;
    top: 50%;
    -webkit-transition: 0.5s;
    -o-transition: 0.5s;
    transition: 0.5s;
    border-radius: 50%;
    position: absolute;
    border: 1px solid #57EBAD;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

.slick-dots li.slick-active:before {
    width: 21px;
    height: 21px;
}

/*** Scroll Top style ***/
.back-to-top {
    position: absolute;
    left: 50%;
    top: 0;
    z-index: 99;
    color: white;
    display: none;
    cursor: pointer;
    font-size: 20px;
    width: 50px;
    height: 50px;
    background: -webkit-gradient(linear, left top, right top, from(#57EBAD), to(#a1e6c9));
    background: -webkit-linear-gradient(left, #57EBAD, #a1e6c9);
    background: -o-linear-gradient(left, #57EBAD, #a1e6c9);
    background: linear-gradient(90deg, #57EBAD, #a1e6c9);
    line-height: 50px;
    border-radius: 50%;
    text-align: center;
    -webkit-animation: pulse 2s infinite;
    animation: pulse 2s infinite;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

@media only screen and (max-width: 991px) {
    .back-to-top {
        width: 40px;
        height: 40px;
        line-height: 40px;
    }
}

/* Video Play Btn */
.video-play {
    color: white;
    font-size: 12px;
    display: inline-block;
    width: 60px;
    height: 60px;
    background: -webkit-gradient(linear, left top, right top, from(#57EBAD), to(#a1e6c9));
    background: -webkit-linear-gradient(left, #57EBAD, #a1e6c9);
    background: -o-linear-gradient(left, #57EBAD, #a1e6c9);
    background: linear-gradient(90deg, #57EBAD, #a1e6c9);
    line-height: 60px;
    border-radius: 50%;
    text-align: center;
}

.video-play:hover {
    color: white;
}

/* Tab Btn style one */
.tab-btns-one .nav-link {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    border-radius: 0;
    text-align: left;
    padding: 0 0 25px;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-bottom: 30px;
    background: transparent;
    border-bottom: 1px solid #57EBAD;
}

@media only screen and (max-width: 575px) {
    .tab-btns-one .nav-link {
        padding-bottom: 10px;
        margin-bottom: 15px;
    }
}

.tab-btns-one .nav-link i {
    font-size: 45px;
    margin-right: 20px;
    color: #57EBAD;
}

@media only screen and (max-width: 575px) {
    .tab-btns-one .nav-link i {
        font-size: 35px;
    }
}

.tab-btns-one .nav-link .title {
    font-size: 27px;
    margin-bottom: 0;
    -webkit-transition: 0.5s;
    -o-transition: 0.5s;
    transition: 0.5s;
}

@media only screen and (max-width: 575px) {
    .tab-btns-one .nav-link .title {
        font-size: 22px;
    }
}

.tab-btns-one .nav-link.active {
    background: transparent;
    border-bottom-color: black;
}

.tab-btns-one .nav-link.active .title {
    color: #57EBAD;
}

.tab-btns-one li {
    margin-bottom: 10px;
}

.tab-btns-one li:not(:last-child) {
    margin-right: 12px;
}

.tab-btns-one li button {
    font-size: 18px;
    padding: 10px 18px;
    color: #7e7e7e;
    border-radius: 3px;
    background: #f8f3ff;
    z-index: 1;
    position: relative;
}

.tab-btns-one li button::before {
    position: absolute;
    content: "";
    width: 100%;
    height: 100%;
    z-index: -1;
    top: 0;
    left: 0;
    opacity: 0;
    background: -webkit-gradient(linear, right top, left top, from(#57EBAD), color-stop(117.45%, #a1e6c9));
    background: -webkit-linear-gradient(right, #57EBAD 0%, #a1e6c9 117.45%);
    background: -o-linear-gradient(right, #57EBAD 0%, #a1e6c9 117.45%);
    background: linear-gradient(270deg, #57EBAD 0%, #a1e6c9 117.45%);
}

@media only screen and (max-width: 575px) {
    .tab-btns-one li button {
        font-size: 16px;
        padding: 8px 15px;
    }
}

.tab-btns-one li button:before {
    -webkit-transition: 0.5s;
    -o-transition: 0.5s;
    transition: 0.5s;
    border-radius: 3px;
}

.tab-btns-one li button:hover {
    color: #7e7e7e;
}

.tab-btns-one li button.active {
    color: white;
}

.tab-btns-one li button.active:before {
    opacity: 1;
}

/* Position */
.rel {
    position: relative;
}

.z-0 {
    z-index: 0;
}

.z-1 {
    z-index: 1;
}

.z-2 {
    z-index: 2;
}

.z-3 {
    z-index: 3;
}

.z-4 {
    z-index: 4;
}

.z-5 {
    z-index: 5;
}

.overlay {
    z-index: 1;
    position: relative;
}

.overlay::before {
    position: absolute;
    content: "";
    width: 100%;
    height: 100%;
    z-index: -1;
    top: 0;
    left: 0;
    opacity: 0.75;
    background: #000000;
}

.shape {
    z-index: -1;
    position: absolute;
}

/* Backgruond Size */
.bgs-cover {
    background-size: cover;
    background-position: center;
}

/* Color + Background */
.bgc-black {
    background-color: #000000;
}

.bgc-lighter {
    background-color: #f8f3ff;
}

.bgc-primary {
    background-color: #57EBAD;
}

.bgc-gradient {
    background: -webkit-gradient(linear, left top, right top, from(#0A2D24), to(#1b7961));
    background: -webkit-linear-gradient(left, #0A2D24, #1b7961);
    background: -o-linear-gradient(left, #0A2D24, #1b7961);
    background: linear-gradient(90deg, #0A2D24, #1b7961);
}

.color-primary {
    color: #57EBAD;
}

/* Border Radius */
.br-5 {
    border-radius: 5px;
}

.br-10 {
    border-radius: 10px;
}

.br-15 {
    border-radius: 15px;
}

.br-20 {
    border-radius: 20px;
}

.br-25 {
    border-radius: 25px;
}

.br-30 {
    border-radius: 30px;
}

/*******************************************************/
/******************* 03. Repeat Style ******************/
/*******************************************************/
h1, h2, h3, h4, h5, h6, .tab-btns-one .nav-link .title {
    font-weight: 600;
    color: #000000;
    font-family: "Outfit", sans-serif;
}

/*******************************************************/
/************** 04. Padding Margin Spacing *************/
/*******************************************************/
/* Padding Around */
.p-5 {
    padding: 5px !important;
}

.p-10 {
    padding: 10px;
}

.p-15 {
    padding: 15px;
}

.p-20 {
    padding: 20px;
}

.p-25 {
    padding: 25px;
}

.p-30 {
    padding: 30px;
}

.p-35 {
    padding: 35px;
}

.p-40 {
    padding: 40px;
}

.p-45 {
    padding: 45px;
}

.p-50 {
    padding: 50px;
}

.p-55 {
    padding: 55px;
}

.p-60 {
    padding: 60px;
}

.p-65 {
    padding: 65px;
}

.p-70 {
    padding: 70px;
}

.p-75 {
    padding: 75px;
}

.p-80 {
    padding: 80px;
}

.p-85 {
    padding: 85px;
}

.p-90 {
    padding: 90px;
}

.p-95 {
    padding: 95px;
}

.p-100 {
    padding: 100px;
}

.p-105 {
    padding: 105px;
}

.p-110 {
    padding: 110px;
}

.p-115 {
    padding: 115px;
}

.p-120 {
    padding: 120px;
}

.p-125 {
    padding: 125px;
}

.p-130 {
    padding: 130px;
}

.p-135 {
    padding: 135px;
}

.p-140 {
    padding: 140px;
}

.p-145 {
    padding: 145px;
}

.p-150 {
    padding: 150px;
}

.p-155 {
    padding: 155px;
}

.p-160 {
    padding: 160px;
}

.p-165 {
    padding: 165px;
}

.p-170 {
    padding: 170px;
}

.p-175 {
    padding: 175px;
}

.p-180 {
    padding: 180px;
}

.p-185 {
    padding: 185px;
}

.p-190 {
    padding: 190px;
}

.p-195 {
    padding: 195px;
}

.p-200 {
    padding: 200px;
}

.p-205 {
    padding: 205px;
}

.p-210 {
    padding: 210px;
}

.p-215 {
    padding: 215px;
}

.p-220 {
    padding: 220px;
}

.p-225 {
    padding: 225px;
}

.p-230 {
    padding: 230px;
}

.p-235 {
    padding: 235px;
}

.p-240 {
    padding: 240px;
}

.p-245 {
    padding: 245px;
}

.p-250 {
    padding: 250px;
}

/* Padding Top */
.pt-5,
.py-5 {
    padding-top: 5px !important;
}

.pt-10,
.py-10 {
    padding-top: 10px;
}

.pt-15,
.py-15 {
    padding-top: 15px;
}

.pt-20,
.py-20 {
    padding-top: 20px;
}

.pt-25,
.py-25 {
    padding-top: 25px;
}

.pt-30,
.py-30 {
    padding-top: 30px;
}

.pt-35,
.py-35 {
    padding-top: 35px;
}

.pt-40,
.py-40 {
    padding-top: 40px;
}

.pt-45,
.py-45 {
    padding-top: 45px;
}

.pt-50,
.py-50 {
    padding-top: 50px;
}

.pt-55,
.py-55 {
    padding-top: 55px;
}

.pt-60,
.py-60 {
    padding-top: 60px;
}

.pt-65,
.py-65 {
    padding-top: 65px;
}

.pt-70,
.py-70 {
    padding-top: 70px;
}

.pt-75,
.py-75 {
    padding-top: 75px;
}

.pt-80,
.py-80 {
    padding-top: 80px;
}

.pt-85,
.py-85 {
    padding-top: 85px;
}

.pt-90,
.py-90 {
    padding-top: 90px;
}

.pt-95,
.py-95 {
    padding-top: 95px;
}

.pt-100,
.py-100 {
    padding-top: 100px;
}

.pt-105,
.py-105 {
    padding-top: 105px;
}

.pt-110,
.py-110 {
    padding-top: 110px;
}

.pt-115,
.py-115 {
    padding-top: 115px;
}

.pt-120,
.py-120 {
    padding-top: 120px;
}

.pt-125,
.py-125 {
    padding-top: 125px;
}

.pt-130,
.py-130 {
    padding-top: 130px;
}

.pt-135,
.py-135 {
    padding-top: 135px;
}

.pt-140,
.py-140 {
    padding-top: 140px;
}

.pt-145,
.py-145 {
    padding-top: 145px;
}

.pt-150,
.py-150 {
    padding-top: 150px;
}

.pt-155,
.py-155 {
    padding-top: 155px;
}

.pt-160,
.py-160 {
    padding-top: 160px;
}

.pt-165,
.py-165 {
    padding-top: 165px;
}

.pt-170,
.py-170 {
    padding-top: 170px;
}

.pt-175,
.py-175 {
    padding-top: 175px;
}

.pt-180,
.py-180 {
    padding-top: 180px;
}

.pt-185,
.py-185 {
    padding-top: 185px;
}

.pt-190,
.py-190 {
    padding-top: 190px;
}

.pt-195,
.py-195 {
    padding-top: 195px;
}

.pt-200,
.py-200 {
    padding-top: 200px;
}

.pt-205,
.py-205 {
    padding-top: 205px;
}

.pt-210,
.py-210 {
    padding-top: 210px;
}

.pt-215,
.py-215 {
    padding-top: 215px;
}

.pt-220,
.py-220 {
    padding-top: 220px;
}

.pt-225,
.py-225 {
    padding-top: 225px;
}

.pt-230,
.py-230 {
    padding-top: 230px;
}

.pt-235,
.py-235 {
    padding-top: 235px;
}

.pt-240,
.py-240 {
    padding-top: 240px;
}

.pt-245,
.py-245 {
    padding-top: 245px;
}

.pt-250,
.py-250 {
    padding-top: 250px;
}

/* Padding Bottom */
.pb-5,
.py-5 {
    padding-bottom: 5px !important;
}

.pb-10,
.py-10 {
    padding-bottom: 10px;
}

.pb-15,
.py-15 {
    padding-bottom: 15px;
}

.pb-20,
.py-20 {
    padding-bottom: 20px;
}

.pb-25,
.py-25 {
    padding-bottom: 25px;
}

.pb-30,
.py-30 {
    padding-bottom: 30px;
}

.pb-35,
.py-35 {
    padding-bottom: 35px;
}

.pb-40,
.py-40 {
    padding-bottom: 40px;
}

.pb-45,
.py-45 {
    padding-bottom: 45px;
}

.pb-50,
.py-50 {
    padding-bottom: 50px;
}

.pb-55,
.py-55 {
    padding-bottom: 55px;
}

.pb-60,
.py-60 {
    padding-bottom: 60px;
}

.pb-65,
.py-65 {
    padding-bottom: 65px;
}

.pb-70,
.py-70 {
    padding-bottom: 70px;
}

.pb-75,
.py-75 {
    padding-bottom: 75px;
}

.pb-80,
.py-80 {
    padding-bottom: 80px;
}

.pb-85,
.py-85 {
    padding-bottom: 85px;
}

.pb-90,
.py-90 {
    padding-bottom: 90px;
}

.pb-95,
.py-95 {
    padding-bottom: 95px;
}

.pb-100,
.py-100 {
    padding-bottom: 100px;
}

.pb-105,
.py-105 {
    padding-bottom: 105px;
}

.pb-110,
.py-110 {
    padding-bottom: 110px;
}

.pb-115,
.py-115 {
    padding-bottom: 115px;
}

.pb-120,
.py-120 {
    padding-bottom: 120px;
}

.pb-125,
.py-125 {
    padding-bottom: 125px;
}

.pb-130,
.py-130 {
    padding-bottom: 130px;
}

.pb-135,
.py-135 {
    padding-bottom: 135px;
}

.pb-140,
.py-140 {
    padding-bottom: 140px;
}

.pb-145,
.py-145 {
    padding-bottom: 145px;
}

.pb-150,
.py-150 {
    padding-bottom: 150px;
}

.pb-155,
.py-155 {
    padding-bottom: 155px;
}

.pb-160,
.py-160 {
    padding-bottom: 160px;
}

.pb-165,
.py-165 {
    padding-bottom: 165px;
}

.pb-170,
.py-170 {
    padding-bottom: 170px;
}

.pb-175,
.py-175 {
    padding-bottom: 175px;
}

.pb-180,
.py-180 {
    padding-bottom: 180px;
}

.pb-185,
.py-185 {
    padding-bottom: 185px;
}

.pb-190,
.py-190 {
    padding-bottom: 190px;
}

.pb-195,
.py-195 {
    padding-bottom: 195px;
}

.pb-200,
.py-200 {
    padding-bottom: 200px;
}

.pb-205,
.py-205 {
    padding-bottom: 205px;
}

.pb-210,
.py-210 {
    padding-bottom: 210px;
}

.pb-215,
.py-215 {
    padding-bottom: 215px;
}

.pb-220,
.py-220 {
    padding-bottom: 220px;
}

.pb-225,
.py-225 {
    padding-bottom: 225px;
}

.pb-230,
.py-230 {
    padding-bottom: 230px;
}

.pb-235,
.py-235 {
    padding-bottom: 235px;
}

.pb-240,
.py-240 {
    padding-bottom: 240px;
}

.pb-245,
.py-245 {
    padding-bottom: 245px;
}

.pb-250,
.py-250 {
    padding-bottom: 250px;
}

/* Margin Around */
.m-5 {
    margin: 5px !important;
}

.m-10 {
    margin: 10px;
}

.m-15 {
    margin: 15px;
}

.m-20 {
    margin: 20px;
}

.m-25 {
    margin: 25px;
}

.m-30 {
    margin: 30px;
}

.m-35 {
    margin: 35px;
}

.m-40 {
    margin: 40px;
}

.m-45 {
    margin: 45px;
}

.m-50 {
    margin: 50px;
}

.m-55 {
    margin: 55px;
}

.m-60 {
    margin: 60px;
}

.m-65 {
    margin: 65px;
}

.m-70 {
    margin: 70px;
}

.m-75 {
    margin: 75px;
}

.m-80 {
    margin: 80px;
}

.m-85 {
    margin: 85px;
}

.m-90 {
    margin: 90px;
}

.m-95 {
    margin: 95px;
}

.m-100 {
    margin: 100px;
}

.m-105 {
    margin: 105px;
}

.m-110 {
    margin: 110px;
}

.m-115 {
    margin: 115px;
}

.m-120 {
    margin: 120px;
}

.m-125 {
    margin: 125px;
}

.m-130 {
    margin: 130px;
}

.m-135 {
    margin: 135px;
}

.m-140 {
    margin: 140px;
}

.m-145 {
    margin: 145px;
}

.m-150 {
    margin: 150px;
}

.m-155 {
    margin: 155px;
}

.m-160 {
    margin: 160px;
}

.m-165 {
    margin: 165px;
}

.m-170 {
    margin: 170px;
}

.m-175 {
    margin: 175px;
}

.m-180 {
    margin: 180px;
}

.m-185 {
    margin: 185px;
}

.m-190 {
    margin: 190px;
}

.m-195 {
    margin: 195px;
}

.m-200 {
    margin: 200px;
}

.m-205 {
    margin: 205px;
}

.m-210 {
    margin: 210px;
}

.m-215 {
    margin: 215px;
}

.m-220 {
    margin: 220px;
}

.m-225 {
    margin: 225px;
}

.m-230 {
    margin: 230px;
}

.m-235 {
    margin: 235px;
}

.m-240 {
    margin: 240px;
}

.m-245 {
    margin: 245px;
}

.m-250 {
    margin: 250px;
}

/* Margin Top */
.mt-5,
.my-5 {
    margin-top: 5px !important;
}

.mt-10,
.my-10 {
    margin-top: 10px;
}

.mt-15,
.my-15 {
    margin-top: 15px;
}

.mt-20,
.my-20 {
    margin-top: 20px;
}

.mt-25,
.my-25 {
    margin-top: 25px;
}

.mt-30,
.my-30 {
    margin-top: 30px;
}

.mt-35,
.my-35 {
    margin-top: 35px;
}

.mt-40,
.my-40 {
    margin-top: 40px;
}

.mt-45,
.my-45 {
    margin-top: 45px;
}

.mt-50,
.my-50 {
    margin-top: 50px;
}

.mt-55,
.my-55 {
    margin-top: 55px;
}

.mt-60,
.my-60 {
    margin-top: 60px;
}

.mt-65,
.my-65 {
    margin-top: 65px;
}

.mt-70,
.my-70 {
    margin-top: 70px;
}

.mt-75,
.my-75 {
    margin-top: 75px;
}

.mt-80,
.my-80 {
    margin-top: 80px;
}

.mt-85,
.my-85 {
    margin-top: 85px;
}

.mt-90,
.my-90 {
    margin-top: 90px;
}

.mt-95,
.my-95 {
    margin-top: 95px;
}

.mt-100,
.my-100 {
    margin-top: 100px;
}

.mt-105,
.my-105 {
    margin-top: 105px;
}

.mt-110,
.my-110 {
    margin-top: 110px;
}

.mt-115,
.my-115 {
    margin-top: 115px;
}

.mt-120,
.my-120 {
    margin-top: 120px;
}

.mt-125,
.my-125 {
    margin-top: 125px;
}

.mt-130,
.my-130 {
    margin-top: 130px;
}

.mt-135,
.my-135 {
    margin-top: 135px;
}

.mt-140,
.my-140 {
    margin-top: 140px;
}

.mt-145,
.my-145 {
    margin-top: 145px;
}

.mt-150,
.my-150 {
    margin-top: 150px;
}

.mt-155,
.my-155 {
    margin-top: 155px;
}

.mt-160,
.my-160 {
    margin-top: 160px;
}

.mt-165,
.my-165 {
    margin-top: 165px;
}

.mt-170,
.my-170 {
    margin-top: 170px;
}

.mt-175,
.my-175 {
    margin-top: 175px;
}

.mt-180,
.my-180 {
    margin-top: 180px;
}

.mt-185,
.my-185 {
    margin-top: 185px;
}

.mt-190,
.my-190 {
    margin-top: 190px;
}

.mt-195,
.my-195 {
    margin-top: 195px;
}

.mt-200,
.my-200 {
    margin-top: 200px;
}

.mt-205,
.my-205 {
    margin-top: 205px;
}

.mt-210,
.my-210 {
    margin-top: 210px;
}

.mt-215,
.my-215 {
    margin-top: 215px;
}

.mt-220,
.my-220 {
    margin-top: 220px;
}

.mt-225,
.my-225 {
    margin-top: 225px;
}

.mt-230,
.my-230 {
    margin-top: 230px;
}

.mt-235,
.my-235 {
    margin-top: 235px;
}

.mt-240,
.my-240 {
    margin-top: 240px;
}

.mt-245,
.my-245 {
    margin-top: 245px;
}

.mt-250,
.my-250 {
    margin-top: 250px;
}

/* Margin Bottom */
.mb-5,
.my-5 {
    margin-bottom: 5px !important;
}

.mb-10,
.my-10 {
    margin-bottom: 10px;
}

.mb-15,
.my-15 {
    margin-bottom: 15px;
}

.mb-20,
.my-20 {
    margin-bottom: 20px;
}

.mb-25,
.my-25 {
    margin-bottom: 25px;
}

.mb-30,
.my-30 {
    margin-bottom: 30px;
}

.mb-35,
.my-35 {
    margin-bottom: 35px;
}

.mb-40,
.my-40 {
    margin-bottom: 40px;
}

.mb-45,
.my-45 {
    margin-bottom: 45px;
}

.mb-50,
.my-50 {
    margin-bottom: 50px;
}

.mb-55,
.my-55 {
    margin-bottom: 55px;
}

.mb-60,
.my-60 {
    margin-bottom: 60px;
}

.mb-65,
.my-65 {
    margin-bottom: 65px;
}

.mb-70,
.my-70 {
    margin-bottom: 70px;
}

.mb-75,
.my-75 {
    margin-bottom: 75px;
}

.mb-80,
.my-80 {
    margin-bottom: 80px;
}

.mb-85,
.my-85 {
    margin-bottom: 85px;
}

.mb-90,
.my-90 {
    margin-bottom: 90px;
}

.mb-95,
.my-95 {
    margin-bottom: 95px;
}

.mb-100,
.my-100 {
    margin-bottom: 100px;
}

.mb-105,
.my-105 {
    margin-bottom: 105px;
}

.mb-110,
.my-110 {
    margin-bottom: 110px;
}

.mb-115,
.my-115 {
    margin-bottom: 115px;
}

.mb-120,
.my-120 {
    margin-bottom: 120px;
}

.mb-125,
.my-125 {
    margin-bottom: 125px;
}

.mb-130,
.my-130 {
    margin-bottom: 130px;
}

.mb-135,
.my-135 {
    margin-bottom: 135px;
}

.mb-140,
.my-140 {
    margin-bottom: 140px;
}

.mb-145,
.my-145 {
    margin-bottom: 145px;
}

.mb-150,
.my-150 {
    margin-bottom: 150px;
}

.mb-155,
.my-155 {
    margin-bottom: 155px;
}

.mb-160,
.my-160 {
    margin-bottom: 160px;
}

.mb-165,
.my-165 {
    margin-bottom: 165px;
}

.mb-170,
.my-170 {
    margin-bottom: 170px;
}

.mb-175,
.my-175 {
    margin-bottom: 175px;
}

.mb-180,
.my-180 {
    margin-bottom: 180px;
}

.mb-185,
.my-185 {
    margin-bottom: 185px;
}

.mb-190,
.my-190 {
    margin-bottom: 190px;
}

.mb-195,
.my-195 {
    margin-bottom: 195px;
}

.mb-200,
.my-200 {
    margin-bottom: 200px;
}

.mb-205,
.my-205 {
    margin-bottom: 205px;
}

.mb-210,
.my-210 {
    margin-bottom: 210px;
}

.mb-215,
.my-215 {
    margin-bottom: 215px;
}

.mb-220,
.my-220 {
    margin-bottom: 220px;
}

.mb-225,
.my-225 {
    margin-bottom: 225px;
}

.mb-230,
.my-230 {
    margin-bottom: 230px;
}

.mb-235,
.my-235 {
    margin-bottom: 235px;
}

.mb-240,
.my-240 {
    margin-bottom: 240px;
}

.mb-245,
.my-245 {
    margin-bottom: 245px;
}

.mb-250,
.my-250 {
    margin-bottom: 250px;
}

/* Responsive Padding Margin */
@media only screen and (max-width: 991px) {
    /* Padding Around */
    .rp-0 {
        padding: 0px !important;
    }

    .rp-5 {
        padding: 5px !important;
    }

    .rp-10 {
        padding: 10px;
    }

    .rp-15 {
        padding: 15px;
    }

    .rp-20 {
        padding: 20px;
    }

    .rp-25 {
        padding: 25px;
    }

    .rp-30 {
        padding: 30px;
    }

    .rp-35 {
        padding: 35px;
    }

    .rp-40 {
        padding: 40px;
    }

    .rp-45 {
        padding: 45px;
    }

    .rp-50 {
        padding: 50px;
    }

    .rp-55 {
        padding: 55px;
    }

    .rp-60 {
        padding: 60px;
    }

    .rp-65 {
        padding: 65px;
    }

    .rp-70 {
        padding: 70px;
    }

    .rp-75 {
        padding: 75px;
    }

    .rp-80 {
        padding: 80px;
    }

    .rp-85 {
        padding: 85px;
    }

    .rp-90 {
        padding: 90px;
    }

    .rp-95 {
        padding: 95px;
    }

    .rp-100 {
        padding: 100px;
    }

    .rp-105 {
        padding: 105px;
    }

    .rp-110 {
        padding: 110px;
    }

    .rp-115 {
        padding: 115px;
    }

    .rp-120 {
        padding: 120px;
    }

    .rp-125 {
        padding: 125px;
    }

    .rp-130 {
        padding: 130px;
    }

    .rp-135 {
        padding: 135px;
    }

    .rp-140 {
        padding: 140px;
    }

    .rp-145 {
        padding: 145px;
    }

    .rp-150 {
        padding: 150px;
    }

    /* Padding Top */
    .rpt-0,
    .rpy-0 {
        padding-top: 0px !important;
    }

    .rpt-5,
    .rpy-5 {
        padding-top: 5px !important;
    }

    .rpt-10,
    .rpy-10 {
        padding-top: 10px;
    }

    .rpt-15,
    .rpy-15 {
        padding-top: 15px;
    }

    .rpt-20,
    .rpy-20 {
        padding-top: 20px;
    }

    .rpt-25,
    .rpy-25 {
        padding-top: 25px;
    }

    .rpt-30,
    .rpy-30 {
        padding-top: 30px;
    }

    .rpt-35,
    .rpy-35 {
        padding-top: 35px;
    }

    .rpt-40,
    .rpy-40 {
        padding-top: 40px;
    }

    .rpt-45,
    .rpy-45 {
        padding-top: 45px;
    }

    .rpt-50,
    .rpy-50 {
        padding-top: 50px;
    }

    .rpt-55,
    .rpy-55 {
        padding-top: 55px;
    }

    .rpt-60,
    .rpy-60 {
        padding-top: 60px;
    }

    .rpt-65,
    .rpy-65 {
        padding-top: 65px;
    }

    .rpt-70,
    .rpy-70 {
        padding-top: 70px;
    }

    .rpt-75,
    .rpy-75 {
        padding-top: 75px;
    }

    .rpt-80,
    .rpy-80 {
        padding-top: 80px;
    }

    .rpt-85,
    .rpy-85 {
        padding-top: 85px;
    }

    .rpt-90,
    .rpy-90 {
        padding-top: 90px;
    }

    .rpt-95,
    .rpy-95 {
        padding-top: 95px;
    }

    .rpt-100,
    .rpy-100 {
        padding-top: 100px;
    }

    .rpt-105,
    .rpy-105 {
        padding-top: 105px;
    }

    .rpt-110,
    .rpy-110 {
        padding-top: 110px;
    }

    .rpt-115,
    .rpy-115 {
        padding-top: 115px;
    }

    .rpt-120,
    .rpy-120 {
        padding-top: 120px;
    }

    .rpt-125,
    .rpy-125 {
        padding-top: 125px;
    }

    .rpt-130,
    .rpy-130 {
        padding-top: 130px;
    }

    .rpt-135,
    .rpy-135 {
        padding-top: 135px;
    }

    .rpt-140,
    .rpy-140 {
        padding-top: 140px;
    }

    .rpt-145,
    .rpy-145 {
        padding-top: 145px;
    }

    .rpt-150,
    .rpy-150 {
        padding-top: 150px;
    }

    /* Padding Bottom */
    .rpb-0,
    .rpy-0 {
        padding-bottom: 0px !important;
    }

    .rpb-5,
    .rpy-5 {
        padding-bottom: 5px !important;
    }

    .rpb-10,
    .rpy-10 {
        padding-bottom: 10px;
    }

    .rpb-15,
    .rpy-15 {
        padding-bottom: 15px;
    }

    .rpb-20,
    .rpy-20 {
        padding-bottom: 20px;
    }

    .rpb-25,
    .rpy-25 {
        padding-bottom: 25px;
    }

    .rpb-30,
    .rpy-30 {
        padding-bottom: 30px;
    }

    .rpb-35,
    .rpy-35 {
        padding-bottom: 35px;
    }

    .rpb-40,
    .rpy-40 {
        padding-bottom: 40px;
    }

    .rpb-45,
    .rpy-45 {
        padding-bottom: 45px;
    }

    .rpb-50,
    .rpy-50 {
        padding-bottom: 50px;
    }

    .rpb-55,
    .rpy-55 {
        padding-bottom: 55px;
    }

    .rpb-60,
    .rpy-60 {
        padding-bottom: 60px;
    }

    .rpb-65,
    .rpy-65 {
        padding-bottom: 65px;
    }

    .rpb-70,
    .rpy-70 {
        padding-bottom: 70px;
    }

    .rpb-75,
    .rpy-75 {
        padding-bottom: 75px;
    }

    .rpb-80,
    .rpy-80 {
        padding-bottom: 80px;
    }

    .rpb-85,
    .rpy-85 {
        padding-bottom: 85px;
    }

    .rpb-90,
    .rpy-90 {
        padding-bottom: 90px;
    }

    .rpb-95,
    .rpy-95 {
        padding-bottom: 95px;
    }

    .rpb-100,
    .rpy-100 {
        padding-bottom: 100px;
    }

    .rpb-105,
    .rpy-105 {
        padding-bottom: 105px;
    }

    .rpb-110,
    .rpy-110 {
        padding-bottom: 110px;
    }

    .rpb-115,
    .rpy-115 {
        padding-bottom: 115px;
    }

    .rpb-120,
    .rpy-120 {
        padding-bottom: 120px;
    }

    .rpb-125,
    .rpy-125 {
        padding-bottom: 125px;
    }

    .rpb-130,
    .rpy-130 {
        padding-bottom: 130px;
    }

    .rpb-135,
    .rpy-135 {
        padding-bottom: 135px;
    }

    .rpb-140,
    .rpy-140 {
        padding-bottom: 140px;
    }

    .rpb-145,
    .rpy-145 {
        padding-bottom: 145px;
    }

    .rpb-150,
    .rpy-150 {
        padding-bottom: 150px;
    }

    /* Margin Around */
    .rm-0 {
        margin: 0px !important;
    }

    .rm-5 {
        margin: 5px !important;
    }

    .rm-10 {
        margin: 10px;
    }

    .rm-15 {
        margin: 15px;
    }

    .rm-20 {
        margin: 20px;
    }

    .rm-25 {
        margin: 25px;
    }

    .rm-30 {
        margin: 30px;
    }

    .rm-35 {
        margin: 35px;
    }

    .rm-40 {
        margin: 40px;
    }

    .rm-45 {
        margin: 45px;
    }

    .rm-50 {
        margin: 50px;
    }

    .rm-55 {
        margin: 55px;
    }

    .rm-60 {
        margin: 60px;
    }

    .rm-65 {
        margin: 65px;
    }

    .rm-70 {
        margin: 70px;
    }

    .rm-75 {
        margin: 75px;
    }

    .rm-80 {
        margin: 80px;
    }

    .rm-85 {
        margin: 85px;
    }

    .rm-90 {
        margin: 90px;
    }

    .rm-95 {
        margin: 95px;
    }

    .rm-100 {
        margin: 100px;
    }

    .rm-105 {
        margin: 105px;
    }

    .rm-110 {
        margin: 110px;
    }

    .rm-115 {
        margin: 115px;
    }

    .rm-120 {
        margin: 120px;
    }

    .rm-125 {
        margin: 125px;
    }

    .rm-130 {
        margin: 130px;
    }

    .rm-135 {
        margin: 135px;
    }

    .rm-140 {
        margin: 140px;
    }

    .rm-145 {
        margin: 145px;
    }

    .rm-150 {
        margin: 150px;
    }

    /* Margin Top */
    .rmt-0,
    .rmy-0 {
        margin-top: 0px !important;
    }

    .rmt-5,
    .rmy-5 {
        margin-top: 5px !important;
    }

    .rmt-10,
    .rmy-10 {
        margin-top: 10px;
    }

    .rmt-15,
    .rmy-15 {
        margin-top: 15px;
    }

    .rmt-20,
    .rmy-20 {
        margin-top: 20px;
    }

    .rmt-25,
    .rmy-25 {
        margin-top: 25px;
    }

    .rmt-30,
    .rmy-30 {
        margin-top: 30px;
    }

    .rmt-35,
    .rmy-35 {
        margin-top: 35px;
    }

    .rmt-40,
    .rmy-40 {
        margin-top: 40px;
    }

    .rmt-45,
    .rmy-45 {
        margin-top: 45px;
    }

    .rmt-50,
    .rmy-50 {
        margin-top: 50px;
    }

    .rmt-55,
    .rmy-55 {
        margin-top: 55px;
    }

    .rmt-60,
    .rmy-60 {
        margin-top: 60px;
    }

    .rmt-65,
    .rmy-65 {
        margin-top: 65px;
    }

    .rmt-70,
    .rmy-70 {
        margin-top: 70px;
    }

    .rmt-75,
    .rmy-75 {
        margin-top: 75px;
    }

    .rmt-80,
    .rmy-80 {
        margin-top: 80px;
    }

    .rmt-85,
    .rmy-85 {
        margin-top: 85px;
    }

    .rmt-90,
    .rmy-90 {
        margin-top: 90px;
    }

    .rmt-95,
    .rmy-95 {
        margin-top: 95px;
    }

    .rmt-100,
    .rmy-100 {
        margin-top: 100px;
    }

    .rmt-105,
    .rmy-105 {
        margin-top: 105px;
    }

    .rmt-110,
    .rmy-110 {
        margin-top: 110px;
    }

    .rmt-115,
    .rmy-115 {
        margin-top: 115px;
    }

    .rmt-120,
    .rmy-120 {
        margin-top: 120px;
    }

    .rmt-125,
    .rmy-125 {
        margin-top: 125px;
    }

    .rmt-130,
    .rmy-130 {
        margin-top: 130px;
    }

    .rmt-135,
    .rmy-135 {
        margin-top: 135px;
    }

    .rmt-140,
    .rmy-140 {
        margin-top: 140px;
    }

    .rmt-145,
    .rmy-145 {
        margin-top: 145px;
    }

    .rmt-150,
    .rmy-150 {
        margin-top: 150px;
    }

    /* Margin Bottom */
    .rmb-0,
    .rmy-0 {
        margin-bottom: 0px !important;
    }

    .rmb-5,
    .rmy-5 {
        margin-bottom: 5px !important;
    }

    .rmb-10,
    .rmy-10 {
        margin-bottom: 10px;
    }

    .rmb-15,
    .rmy-15 {
        margin-bottom: 15px;
    }

    .rmb-20,
    .rmy-20 {
        margin-bottom: 20px;
    }

    .rmb-25,
    .rmy-25 {
        margin-bottom: 25px;
    }

    .rmb-30,
    .rmy-30 {
        margin-bottom: 30px;
    }

    .rmb-35,
    .rmy-35 {
        margin-bottom: 35px;
    }

    .rmb-40,
    .rmy-40 {
        margin-bottom: 40px;
    }

    .rmb-45,
    .rmy-45 {
        margin-bottom: 45px;
    }

    .rmb-50,
    .rmy-50 {
        margin-bottom: 50px;
    }

    .rmb-55,
    .rmy-55 {
        margin-bottom: 55px;
    }

    .rmb-60,
    .rmy-60 {
        margin-bottom: 60px;
    }

    .rmb-65,
    .rmy-65 {
        margin-bottom: 65px;
    }

    .rmb-70,
    .rmy-70 {
        margin-bottom: 70px;
    }

    .rmb-75,
    .rmy-75 {
        margin-bottom: 75px;
    }

    .rmb-80,
    .rmy-80 {
        margin-bottom: 80px;
    }

    .rmb-85,
    .rmy-85 {
        margin-bottom: 85px;
    }

    .rmb-90,
    .rmy-90 {
        margin-bottom: 90px;
    }

    .rmb-95,
    .rmy-95 {
        margin-bottom: 95px;
    }

    .rmb-100,
    .rmy-100 {
        margin-bottom: 100px;
    }

    .rmb-105,
    .rmy-105 {
        margin-bottom: 105px;
    }

    .rmb-110,
    .rmy-110 {
        margin-bottom: 110px;
    }

    .rmb-115,
    .rmy-115 {
        margin-bottom: 115px;
    }

    .rmb-120,
    .rmy-120 {
        margin-bottom: 120px;
    }

    .rmb-125,
    .rmy-125 {
        margin-bottom: 125px;
    }

    .rmb-130,
    .rmy-130 {
        margin-bottom: 130px;
    }

    .rmb-135,
    .rmy-135 {
        margin-bottom: 135px;
    }

    .rmb-140,
    .rmy-140 {
        margin-bottom: 140px;
    }

    .rmb-145,
    .rmy-145 {
        margin-bottom: 145px;
    }

    .rmb-150,
    .rmy-150 {
        margin-bottom: 150px;
    }
}

/*******************************************************/
/***************** 05. Custom Animation ****************/
/*******************************************************/
/* Animation Delay */
.delay-1-0s {
    -webkit-animation-delay: 1s;
    animation-delay: 1s;
}

.delay-2-0s {
    -webkit-animation-delay: 2s;
    animation-delay: 2s;
}

.delay-0-1s {
    -webkit-animation-delay: 0.1s;
    animation-delay: 0.1s;
}

.delay-0-2s {
    -webkit-animation-delay: 0.2s;
    animation-delay: 0.2s;
}

.delay-0-3s {
    -webkit-animation-delay: 0.3s;
    animation-delay: 0.3s;
}

.delay-0-4s {
    -webkit-animation-delay: 0.4s;
    animation-delay: 0.4s;
}

.delay-0-5s {
    -webkit-animation-delay: 0.5s;
    animation-delay: 0.5s;
}

.delay-0-6s {
    -webkit-animation-delay: 0.6s;
    animation-delay: 0.6s;
}

.delay-0-7s {
    -webkit-animation-delay: 0.7s;
    animation-delay: 0.7s;
}

.delay-0-8s {
    -webkit-animation-delay: 0.8s;
    animation-delay: 0.8s;
}

.delay-0-9s {
    -webkit-animation-delay: 0.9s;
    animation-delay: 0.9s;
}

.delay-1-1s {
    -webkit-animation-delay: 1.1s;
    animation-delay: 1.1s;
}

.delay-1-2s {
    -webkit-animation-delay: 1.2s;
    animation-delay: 1.2s;
}

.delay-1-3s {
    -webkit-animation-delay: 1.3s;
    animation-delay: 1.3s;
}

.delay-1-4s {
    -webkit-animation-delay: 1.4s;
    animation-delay: 1.4s;
}

.delay-1-5s {
    -webkit-animation-delay: 1.5s;
    animation-delay: 1.5s;
}

.delay-1-6s {
    -webkit-animation-delay: 1.6s;
    animation-delay: 1.6s;
}

.delay-1-7s {
    -webkit-animation-delay: 1.7s;
    animation-delay: 1.7s;
}

.delay-1-8s {
    -webkit-animation-delay: 1.8s;
    animation-delay: 1.8s;
}

.delay-1-9s {
    -webkit-animation-delay: 1.9s;
    animation-delay: 1.9s;
}

/* Menu Sticky */
@-webkit-keyframes sticky {
    0% {
        top: -100px;
    }
    100% {
        top: 0;
    }
}

@keyframes sticky {
    0% {
        top: -100px;
    }
    100% {
        top: 0;
    }
}

/*******************************************************/
/******************  06. Main Header *******************/
/*******************************************************/
.navbar-top {
    font-size: 16px;
    padding-top: 6px;
    padding-bottom: 6px;
}

@media only screen and (max-width: 479px) {
    .navbar-top .topbar-left {
        display: none;
    }
}

.navbar-top .topbar-left .off {
    line-height: 1;
    font-size: 14px;
    font-weight: 600;
    padding: 5px 12px;
    margin-right: 10px;
    border-radius: 5px;
    display: inline-block;
}

.navbar-top .topbar-right {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.navbar-top .topbar-right li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

@media only screen and (max-width: 479px) {
    .navbar-top .topbar-right li:last-child {
        display: none;
    }
    .navbar-top .topbar-right li:not(:last-child):after {
        display: none;
    }
}

@media only screen and (min-width: 480px) {
    .navbar-top .topbar-right li:not(:last-child):after {
        content: '';
        width: 5px;
        height: 5px;
        border-radius: 50%;
        background: #C6C3CC;
        margin-left: 30px;
        margin-right: 30px;
    }
}

.navbar-top .topbar-right li > i {
    margin-right: 5px;
}

.navbar-top .topbar-right li b {
    font-weight: 600;
}

.navbar-top.text-white {
    z-index: 1;
    position: relative;
}

.navbar-top.text-white::before {
    position: absolute;
    content: "";
    width: 100%;
    height: 100%;
    z-index: -1;
    top: 0;
    left: 0;
    opacity: 0.95;
    background: -webkit-gradient(linear, left top, right top, from(#0A2D24), to(#0A2D24));
    background: -webkit-linear-gradient(left, #0A2D24, #0A2D24);
    background: -o-linear-gradient(left, #0A2D24, #0A2D24);
    background: linear-gradient(90deg, #0A2D24, #0A2D24);
}

.navbar-top.text-white .topbar-left .off {
    background: white;
    color: #57EBAD;
}

.navbar-top.text-white .topbar-right li:not(:last-child):after {
    background: white;
}

.navbar-top.text-white .topbar-right li a, .navbar-top.text-white .topbar-right li a i {
    color: white;
}

.navbar-area {
    width: 100%;
    z-index: 99;
}

.navbar-area .logo {
    max-width: 170px;
}

@media only screen and (max-width: 1199px) {
    .navbar-area .logo {
        max-width: 130px;
    }
}

.navbar-area .logo a {
    font-weight: 700;
    font-size: 24px;
    color: #fff;
}

.navbar-area .btn-transparent {
    font-size: 13px;
    font-weight: 700;
}

.navbar-area .navbar-collapse .navbar-nav {
    width: 100%;
}

.navbar-area .navbar-collapse .navbar-nav li {
    display: inline-block;
    font-weight: 500;
    line-height: 60px;
    text-transform: capitalize;
}

.navbar-area .navbar-collapse .navbar-nav li a {
    color: #000000;
}

.navbar-area .navbar-collapse .navbar-nav li:hover > a {
    color: #57EBAD;
}

.navbar-area .navbar-collapse .navbar-nav li + li {
    margin-left: 17px;
}

.navbar-area .navbar-collapse .navbar-nav li.menu-item-has-children {
    z-index: 1;
    position: relative;
}

.navbar-area .navbar-collapse .navbar-nav li.menu-item-has-children > a {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

@media only screen and (max-width: 991px) {
    .navbar-area .navbar-collapse .navbar-nav li.menu-item-has-children > a {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }
    .navbar-area .navbar-collapse.sopen {
        display: block !important;
    }
}

.navbar-area .navbar-collapse .navbar-nav li.menu-item-has-children > a:after {
    font-size: 15px;
    content: "\f107";
    margin-left: 5px;
    margin-top: 3px;
    color: #000000;
    font-family: "Font Awesome 5 Pro";
}

.navbar-area .navbar-collapse .navbar-nav li.menu-item-has-children:hover > .sub-menu {
    visibility: visible;
    opacity: 1;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
}

.navbar-area .navbar-collapse .navbar-nav li.menu-item-has-children .sub-menu {
    position: absolute;
    text-align: left;
    min-width: 250px;
    margin: 0;
    padding: 0;
    list-style: none;
    left: 0;
    top: 100%;
    -webkit-box-shadow: 0 0 15px 0 rgba(0, 0, 0, 0.05);
    box-shadow: 0 0 15px 0 rgba(0, 0, 0, 0.05);
    background-color: white;
    z-index: 9;
    visibility: hidden;
    opacity: 0;
    -webkit-transition: 0.35s;
    -o-transition: 0.35s;
    transition: 0.35s;
    border-radius: 0;
}

@media only screen and (min-width: 992px) {
    .navbar-area .navbar-collapse .navbar-nav li.menu-item-has-children .sub-menu {
        -webkit-transform: translateY(10px);
        -ms-transform: translateY(10px);
        transform: translateY(10px);
    }
}

.navbar-area .navbar-collapse .navbar-nav li.menu-item-has-children .sub-menu.border-bt0 {
    border-bottom: 0px !important;
}

.navbar-area .navbar-collapse .navbar-nav li.menu-item-has-children .sub-menu li {
    display: block;
    margin-left: 0;
    line-height: 22px;
    font-size: 15px;
    border-top: 1px solid #f5f5f5;
}

.navbar-area .navbar-collapse .navbar-nav li.menu-item-has-children .sub-menu li a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: 10px 15px;
    white-space: nowrap;
    -webkit-transition: all .3s;
    -o-transition: all .3s;
    transition: all .3s;
    font-size: 15px;
    font-weight: 500;
    position: relative;
}

.navbar-area .navbar-collapse .navbar-nav li.menu-item-has-children .sub-menu li:hover {
    background: #000000;
}

@media only screen and (min-width: 992px) {
    .navbar-area .navbar-collapse .navbar-nav li.menu-item-has-children .sub-menu li:hover > a {
        color: #fff;
        padding-left: 20px;
    }

    .navbar-area .navbar-collapse .navbar-nav li.menu-item-has-children .sub-menu li:hover > a:after {
        color: white;
    }
}

.navbar-area .navbar-collapse .navbar-nav li.menu-item-has-children .sub-menu .menu-item-has-children {
    position: relative;
    z-index: 0;
    padding-right: 0px;
}

.navbar-area .navbar-collapse .navbar-nav li.menu-item-has-children .sub-menu .menu-item-has-children:before {
    position: absolute;
    top: 20px;
    content: '';
}

.navbar-area .navbar-collapse .navbar-nav li.menu-item-has-children .sub-menu .menu-item-has-children > .sub-menu {
    left: 100%;
    top: 0;
}

.navbar-area .navbar-collapse .navbar-nav li.menu-item-has-children .sub-menu .menu-item-has-children > .sub-menu .sub-menu .sub-menu {
    left: auto;
    right: 100%;
}

.navbar-area .navbar-collapse .navbar-nav li.menu-item-has-children .sub-menu .menu-item-has-children:hover > .sub-menu {
    visibility: visible;
    opacity: 1;
}

.navbar-area .navbar-collapse .navbar-nav li.menu-item-has-children .sub-menu .menu-item-has-children:hover > .sub-menu li:hover:before {
    color: white;
}

.navbar-area .navbar-collapse .navbar-nav > li {
    margin-right: 15px;
}

.navbar-area.rel {
    position: relative;
}

.navbar-nav {
    opacity: 0;
    margin-right: -30px;
    visibility: hidden;
    -webkit-transition: all 0.4s ease 0s;
    -o-transition: all 0.4s ease 0s;
    transition: all 0.4s ease 0s;
}

.sticky-active {
    -webkit-animation: 300ms ease-in-out 0s normal none 1 running fadeInDown;
    animation: 300ms ease-in-out 0s normal none 1 running fadeInDown;
    left: 0;
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 999;
    -webkit-box-shadow: 0 10px 20px 0 rgba(46, 56, 220, 0.05);
    box-shadow: 0 10px 20px 0 rgba(46, 56, 220, 0.05);
    border-bottom: 0;
    background: #fff;
    padding-top: 10px;
    padding-bottom: 10px;
}

#navbar-sticky-placeholder.active {
    padding-top: 137px;
}

.sticky-active.rel {
    position: fixed;
}

.menu-open {
    opacity: 1;
    margin-right: 0;
    visibility: visible;
}

.responsive-mobile-menu button:focus {
    outline: none;
    border: none;
}

/**************** nav-right-part *************/
.nav-right-part {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.nav-right-part > button {
    font-size: 20px;
    margin-left: 12px;
    margin-right: 12px;
    color: #000000;
    background: transparent;
}

.nav-right-part .theme-btn {
    margin-left: 30px;
}

@media only screen and (max-width: 1199px) {
    .nav-right-part .theme-btn {
        /*display: none;*/
    }
}

.nav-right-part .search-bar:hover {
    background: #57EBAD;
    border: 1px solid #57EBAD;
}

.nav-right-part-mobile {
    display: none;
}

/* Menu Sidebar */
.menu-sidebar {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.menu-sidebar button {
    cursor: pointer;
    font-size: 28px;
    margin-left: 30px;
    color: #57EBAD;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    background: transparent;
}

.menu-sidebar button i {
    margin: -9px 0;
}

.form-back-drop {
    position: fixed;
    right: 0px;
    top: 0px;
    width: 100%;
    height: 100%;
    opacity: 0;
    background: rgba(0, 0, 0, 0.7);
    visibility: hidden;
    z-index: 9990;
    -webkit-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;
}

.side-content-visible .form-back-drop {
    opacity: 1;
    visibility: visible;
}

/* Header One */
.navbar.style-one .nav-right-part-desktop {
    margin-left: auto;
}

.navbar.style-one .navbar-collapse {
    -webkit-box-flex: unset;
    -ms-flex-positive: unset;
    flex-grow: unset;
    margin-left: auto;
    margin-right: auto;
}

.navbar.style-one .navbar-collapse .navbar-nav {
    display: block;
}

/* Header Two */
.navbar-top.style-two .topbar-left {
    color: black;
}

.navbar-top.style-two .topbar-left .off {
    color: white;
    background: -webkit-gradient(linear, left top, right top, from(#57EBAD), to(#a1e6c9));
    background: -webkit-linear-gradient(left, #57EBAD, #a1e6c9);
    background: -o-linear-gradient(left, #57EBAD, #a1e6c9);
    background: linear-gradient(90deg, #57EBAD, #a1e6c9);
}

.navbar-top.style-two .topbar-right li > i {
    color: #57EBAD;
}

@media only screen and (max-width: 991px) {
    .navbar-area {
        background: #fff;
    }

    .nav-right-part {
        margin-right: 60px;
    }

    .nav-right-part .btn .right {
        padding-left: 5px;
        font-size: 13px;
    }

    .navbar-area .navbar-collapse .navbar-nav > li {
        margin-right: 0;
        padding-right: 0;
    }

    .navbar-area .navbar-toggler {
        padding: 0px;
    }

    .navbar-area .navbar-collapse {
        margin-top: 13px;
    }

    .navbar-area .navbar-collapse .navbar-nav {
        display: block;
        margin-top: 20px;
    }

    .navbar-area .navbar-collapse .navbar-nav li {
        display: block;
        text-align: left;
        line-height: 30px;
        padding: 6px 0;
        border-bottom: 1px solid rgba(0, 0, 0, 0.1);
    }

    .navbar-area .navbar-collapse .navbar-nav li a {
        display: block;
    }

    .navbar-area .navbar-collapse .navbar-nav li:last-child {
        border-bottom: none;
    }

    .navbar-area .navbar-collapse .navbar-nav li + li {
        margin-left: 0;
    }

    .navbar-area .navbar-collapse .navbar-nav li.menu-item-has-children .sub-menu {
        position: initial;
        display: block;
        width: 100%;
        border-top: none;
        -webkit-box-shadow: none;
        box-shadow: none;
        margin-left: 0;
        padding-bottom: 0;
        height: auto;
        max-height: auto;
        background-color: transparent;
        border-radius: 10px;
        padding: 0px;
        border-bottom: none;
        display: none;
        -webkit-transition: none;
        -o-transition: none;
        transition: none;
        visibility: visible;
        opacity: 1;
    }

    .navbar-area .navbar-collapse .navbar-nav li.menu-item-has-children .sub-menu .sub-menu .menu-item-has-children:before {
        content: "\f107";
    }

    .navbar-area .navbar-collapse .navbar-nav li.menu-item-has-children .sub-menu li {
        padding: 0;
    }

    .navbar-area .navbar-collapse .navbar-nav li.menu-item-has-children .sub-menu li + li {
        border-top: none;
    }
}

.toggle-btn {
    left: auto;
    right: 0;
    position: absolute;
    width: 30px;
    height: 30px;
    -webkit-transition-duration: 0.5s;
    -o-transition-duration: 0.5s;
    transition-duration: 0.5s;
    border: 0;
    background: transparent;
}

.toggle-btn .icon-left {
    -webkit-transition-duration: 0.5s;
    -o-transition-duration: 0.5s;
    transition-duration: 0.5s;
    position: absolute;
    height: 2px;
    width: 11px;
    top: 18px;
    background-color: #000000;
    left: 7px;
}

.toggle-btn .icon-left:before {
    -webkit-transition-duration: 0.5s;
    -o-transition-duration: 0.5s;
    transition-duration: 0.5s;
    position: absolute;
    width: 11px;
    height: 2px;
    background-color: #000000;
    content: "";
    top: -7px;
    left: 0;
}

.toggle-btn .icon-left:after {
    -webkit-transition-duration: 0.5s;
    -o-transition-duration: 0.5s;
    transition-duration: 0.5s;
    position: absolute;
    width: 11px;
    height: 2px;
    background-color: #000000;
    content: "";
    top: 7px;
    left: 0;
}

.toggle-btn .icon-left:hover {
    cursor: pointer;
}

.toggle-btn .icon-right {
    -webkit-transition-duration: 0.5s;
    -o-transition-duration: 0.5s;
    transition-duration: 0.5s;
    position: absolute;
    height: 2px;
    width: 11px;
    top: 18px;
    background-color: #000000;
    left: 18px;
}

.toggle-btn .icon-right:before {
    -webkit-transition-duration: 0.5s;
    -o-transition-duration: 0.5s;
    transition-duration: 0.5s;
    position: absolute;
    width: 11px;
    height: 2px;
    background-color: #000000;
    content: "";
    top: -7px;
    left: 0;
}

.toggle-btn .icon-right:after {
    -webkit-transition-duration: 0.5s;
    -o-transition-duration: 0.5s;
    transition-duration: 0.5s;
    position: absolute;
    width: 11px;
    height: 2px;
    background-color: #000000;
    content: "";
    top: 7px;
    left: 0;
}

.toggle-btn .icon-right:hover {
    cursor: pointer;
}

.toggle-btn.open .icon-left {
    -webkit-transition-duration: 0.5s;
    -o-transition-duration: 0.5s;
    transition-duration: 0.5s;
    background: transparent;
}

.toggle-btn.open .icon-left:before {
    -webkit-transform: rotateZ(45deg) scaleX(1.4) translate(2px, 1px);
    -ms-transform: rotate(45deg) scaleX(1.4) translate(2px, 1px);
    transform: rotateZ(45deg) scaleX(1.4) translate(2px, 1px);
}

.toggle-btn.open .icon-left:after {
    -webkit-transform: rotateZ(-45deg) scaleX(1.4) translate(2px, -1px);
    -ms-transform: rotate(-45deg) scaleX(1.4) translate(2px, -1px);
    transform: rotateZ(-45deg) scaleX(1.4) translate(2px, -1px);
}

.toggle-btn.open .icon-right {
    -webkit-transition-duration: 0.5s;
    -o-transition-duration: 0.5s;
    transition-duration: 0.5s;
    background: transparent;
}

.toggle-btn.open .icon-right:before {
    -webkit-transform: rotateZ(-45deg) scaleX(1.4) translate(-2px, 1px);
    -ms-transform: rotate(-45deg) scaleX(1.4) translate(-2px, 1px);
    transform: rotateZ(-45deg) scaleX(1.4) translate(-2px, 1px);
}

.toggle-btn.open .icon-right:after {
    -webkit-transform: rotateZ(45deg) scaleX(1.4) translate(-2px, -1px);
    -ms-transform: rotate(45deg) scaleX(1.4) translate(-2px, -1px);
    transform: rotateZ(45deg) scaleX(1.4) translate(-2px, -1px);
}

.toggle-btn:hover {
    cursor: pointer;
}

@media only screen and (min-width: 992px) and (max-width: 1399px) {
    .navbar-area .navbar-collapse .navbar-nav li {
        font-size: 16px;
    }

    .navbar-area .navbar-collapse .navbar-nav li + li {
        margin-left: 5px;
    }
}

@media only screen and (min-width: 992px) {
    .nav-item.nav-item-account .dropdown-menu {
        top: 110% !important;
    }
    .nav-item.nav-item-cart .dropdown-menu {
        top: 110% !important;
        min-width: 500px;
    }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .responsive-mobile-menu {
        display: block;
        width: 100%;
        position: relative;
    }
}

@media only screen and (max-width: 991px) {
    .navbar-collapse {
        background: white;
        margin-top: 0px;
        width: 100%;
    }

    .navbar-area .navbar-collapse .navbar-nav {
        margin-bottom: 20px;
    }

    .navbar-expand-lg .navbar-collapse {
        margin-top: 0px;
    }

    .contact-widget .contact_info_list li.single-info-item .details {
        padding-left: 25px;
    }

    .navbar-area .navbar-collapse .navbar-nav li.menu-item-has-children .sub-menu {
        padding: 0 0 0 20px;
    }

    .navbar-area .navbar-collapse .navbar-nav li.menu-item-has-children .sub-menu li a {
        padding: 8px 0;
    }

    .navbar-area .navbar-collapse .navbar-nav li.menu-item-has-children .sub-menu li a:hover i {
        opacity: 0;
        margin-right: -18px;
    }

    .nav-right-part-mobile {
        display: block;
        margin-bottom: -6px;
    }

    .nav-right-part-desktop {
        display: none;
    }

    .navbar-area .navbar-collapse .navbar-nav li.menu-item-has-children .sub-menu li:hover {
        background: none;
        color: #57EBAD;
    }

    .navbar-area .navbar-collapse .navbar-nav li a {
        color: #333333;
    }
}

/* Tablet Layout wide: 767px. */
@media only screen and (max-width: 767px) {
    .responsive-mobile-menu {
        display: block;
        width: 100%;
        position: relative;
    }

    .responsive-mobile-menu .navbar-toggler {
        position: absolute;
        left: calc(100% - 130px);
        top: 10px;
    }

    .table-responsive {
        display: block !important;
    }

    .navbar-area .logo {
        padding-top: 0px !important;
    }
}

/* medium tablet layout 599px */
@media only screen and (max-width: 575px) {
    .navbar-area .logo {
        padding-top: 10px;
    }
}

@media only screen and (max-width: 320px) {
    .responsive-mobile-menu .navbar-toggler {
        left: calc(100% - 95px);
    }
}

/*******************************************************/
/******************  07. PopUp Search ******************/
/*******************************************************/
.body-overlay {
    position: fixed;
    width: 100%;
    height: 100%;
    display: block;
    background: rgba(0, 0, 0, 0.95);
    z-index: 999;
    content: "";
    left: 0;
    top: 0;
    visibility: hidden;
    opacity: 0;
    -webkit-transition: all 0.4s ease;
    -o-transition: all 0.4s ease;
    transition: all 0.4s ease;
    cursor: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABUAAAAVBAMAAABbObilAAAAMFBMVEVMaXH////////////////////////////////////////////////////////////6w4mEAAAAD3RSTlMAlAX+BKLcA5+b6hJ7foD4ZP1OAAAAkUlEQVR4XkWPoQ3CUBQAL4SktoKAbCUjgAKLJZ2ABYosngTJCHSD6joUI6BZgqSoB/+Shqde7sS9x3OGk81fdO+texMtRVTia+TsQtHEUJLdohJfgNNPJHyEJPZTsWLoxShqsWITazEwqePAn69Sw2TUxk1+euPis3EwaXy8RMHSZBIlRcKKnC5hRctjMf57/wJbBlAIs9k1BAAAAABJRU5ErkJggg==), progress;
}

.body-overlay.active {
    visibility: visible;
    opacity: 0.97;
}


/*******************************************************/
/*******************  08. Hero Area ********************/
/*******************************************************/
.hero-content h1 {
    font-size: 65px;
    margin-bottom: 30px;
}

@media only screen and (max-width: 1199px) {
    .hero-content h1 {
        font-size: 50px;
    }
}

@media only screen and (max-width: 991px) {
    .hero-content h1 {
        font-size: 45px;
        line-height: 1.4;
    }
}

@media only screen and (max-width: 767px) {
    .hero-content h1 {
        font-size: 40px;
    }
}

@media only screen and (max-width: 575px) {
    .hero-content h1 {
        font-size: 35px;
    }
}

@media only screen and (max-width: 479px) {
    .hero-content h1 {
        font-size: 30px;
    }
}

.hero-content p {
    font-size: 20px;
}

@media only screen and (max-width: 479px) {
    .hero-content p {
        font-size: 16px;
    }
}

@media only screen and (max-width: 375px) {
    .hero-content p {
        font-size: 15px;
    }
}

.hero-btns {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-left: -10px;
    margin-right: -10px;
}

.hero-btns .theme-btn {
    /*margin: 15px 10px 0;*/
}

.hero-images {
    position: relative;
    z-index: 1;
    padding: 18% 20% 10%;
    margin-right: -20%;
}

@media only screen and (max-width: 1399px) {
    .hero-images {
        margin-right: -10%;
    }
}

@media only screen and (max-width: 991px) {
    .hero-images {
        margin-right: 0;
    }
}

.hero-images .image-one {
    position: absolute;
    left: -7%;
    top: -3%;
    width: 48.5%;
}

.hero-images .image-two {
    position: absolute;
    bottom: -7%;
    right: -6%;
    width: 41%;
}

.circle-shapes:after, .circle-shapes:before {
    content: '';
    width: 100%;
    height: 100%;
    position: absolute;
    border-radius: 50%;
    border: 1px solid rgba(0, 0, 0, 0.1);
}

.circle-shapes:before {
    left: 0;
    top: 3%;
    -webkit-animation: 50s moveLeftRight infinite;
    animation: 50s moveLeftRight infinite;
}

.circle-shapes:after {
    left: 10%;
    top: -3%;
    -webkit-animation: 50s slideUpDown infinite;
    animation: 50s slideUpDown infinite;
}

.circle-shapes .dot-one,
.circle-shapes .dot-two,
.circle-shapes .dot-three,
.circle-shapes .dot-four,
.circle-shapes .dot-five {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    position: absolute;
    -webkit-animation: 3s zoomInOut infinite;
    animation: 3s zoomInOut infinite;
}

.circle-shapes .dot-one {
    background: #1d46dd;
    left: 30%;
    top: -5%;
}

.circle-shapes .dot-two {
    background: #01d6e3;
    left: 102%;
    top: 15%;
    -webkit-animation-delay: 1s;
    animation-delay: 1s;
}

.circle-shapes .dot-three {
    background: #a1e6c9;
    left: 91%;
    top: 37%;
    -webkit-animation-delay: 1.5s;
    animation-delay: 1.5s;
}

.circle-shapes .dot-four {
    background: #57EBAD;
    left: 55%;
    bottom: -5%;
    -webkit-animation-delay: 2s;
    animation-delay: 2s;
}

.circle-shapes .dot-five {
    background: #01d6e3;
    left: 0;
    bottom: 25%;
    -webkit-animation-delay: 2.5s;
    animation-delay: 2.5s;
}

.circle-shapes .shape-inner {
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    position: absolute;
    -webkit-animation: 50s rotated_circle infinite;
    animation: 50s rotated_circle infinite;
}


@media only screen and (max-width: 1199px) {
    .hero-two-content {
        margin-top: 70px;
        margin-bottom: 100px;
    }
}

.hero-two-content .sub-title {
    color: #57EBAD;
}

.hero-two-content h1 {
    margin-bottom: 25px;
}

@media only screen and (max-width: 1599px) {
    .hero-two-content h1 {
        font-size: 50px;
    }
}

@media only screen and (max-width: 1399px) {
    .hero-two-content h1 {
        font-size: 42px;
        line-height: 1.25;
    }
}

@media only screen and (max-width: 479px) {
    .hero-two-content h1 {
        font-size: 35px;
    }
}

@media only screen and (min-width: 376px) {
    .hero-two-content p {
        font-size: 20px;
    }
}

/*******************************************************/
/*******************  10. About Area *******************/
/*******************************************************/
.about-images {
    z-index: 1;
    position: relative;
}

.about-images .image {
    margin-bottom: 30px;
}

.about-images img {
    width: 100%;
}

.about-images .circle-shapes {
    width: 100%;
    padding-top: 100%;
    -webkit-transform: translate(-55%, -44%);
    -ms-transform: translate(-55%, -44%);
    transform: translate(-55%, -44%);
}

.about-video {
    z-index: 1;
    position: relative;
}

.about-video::before {
    position: absolute;
    content: "";
    width: 100%;
    height: 100%;
    z-index: -1;
    top: 0;
    left: 0;
    opacity: 0.2;
    background: black;
}

.about-video:before {
    z-index: 1;
}

.about-video .video-play {
    z-index: 2;
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

.about-content {
    max-width: 500px;
}

@media only screen and (min-width: 992px) {
    .about-content {
        margin-left: auto;
    }
}

.experience-year {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: end;
    position: relative;
}

@media only screen and (max-width: 479px) {
    .experience-year {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }
}

.experience-year:before {
    position: absolute;
    content: '';
    height: 1px;
    width: 70px;
    left: 0;
    top: 30px;
}

@media only screen and (max-width: 479px) {
    .experience-year:before {
        top: 15px;
    }
}

.experience-year h6 {
    margin: 10px 0;
}

.experience-year h6:first-child {
    padding-top: 20px;
}

.experience-year .number {
    line-height: 1;
    font-weight: 600;
    font-size: 120px;
    margin-left: 6%;
    margin-right: 6%;
    color: #57EBAD;
}

@media only screen and (max-width: 479px) {
    .experience-year .number {
        font-size: 85px;
    }
}

.about-btns {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.about-btns .theme-btn:not(:last-child) {
    margin-right: 25px;
}

/* About Page */
.mission-vision-item {
    -webkit-transition: 0.5s;
    -o-transition: 0.5s;
    transition: 0.5s;
    border-radius: 5px;
    padding: 30px 50px;
    border: 1px solid white;
    -webkit-box-shadow: 10px 0 60px rgba(132, 132, 132, 0.1);
    box-shadow: 10px 0 60px rgba(132, 132, 132, 0.1);
}

@media only screen and (min-width: 480px) {
    .mission-vision-item {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }
}

@media only screen and (max-width: 575px) {
    .mission-vision-item {
        padding-left: 25px;
        padding-right: 25px;
    }
}

.mission-vision-item .progress-content {
    line-height: 0;
    margin-right: 35px;
    position: relative;
}

@media only screen and (max-width: 479px) {
    .mission-vision-item .progress-content {
        width: -webkit-max-content;
        width: -moz-max-content;
        width: max-content;
        margin-bottom: 15px;
    }
}

.mission-vision-item .progress-content i {
    position: absolute;
    left: 50%;
    top: 50%;
    font-size: 50px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    border-radius: 50%;
    text-align: center;
    width: calc(100% - 26px);
    height: calc(100% - 26px);
    border: 1px solid rgba(0, 0, 0, 0.1);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    background: -webkit-gradient(linear, left top, right top, from(#57EBAD), to(#a1e6c9));
    background: -webkit-linear-gradient(left, #57EBAD, #a1e6c9);
    background: -o-linear-gradient(left, #57EBAD, #a1e6c9);
    background: linear-gradient(90deg, #57EBAD, #a1e6c9);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.mission-vision-item .content p {
    margin-bottom: 0;
}

.mission-vision-item:not(:last-child) {
    margin-bottom: 30px;
}

.mission-vision-item:hover {
    border-color: #57EBAD;
}

.video-fact-counter {
    z-index: 1;
    position: relative;
    background-repeat: no-repeat;
    background-position: 100% 100%;
}

.video-fact-counter .circle-shapes {
    top: 55%;
    left: 16%;
    width: 27%;
    padding-top: 27%;
}

.about-page-video {
    margin-top: 290px;
    margin-bottom: -290px;
    -webkit-transform: translateY(-290px);
    -ms-transform: translateY(-290px);
    transform: translateY(-290px);
}

@media only screen and (max-width: 991px) {
    .about-page-video {
        margin-top: 100px;
        margin-bottom: -100px;
        -webkit-transform: translateY(-100px);
        -ms-transform: translateY(-100px);
        transform: translateY(-100px);
    }
}

.about-page-video:before {
    opacity: 0.1;
}

.about-page-video .video-play {
    background: white;
    color: #57EBAD;
}

@media only screen and (min-width: 576px) {
    .about-page-video .video-play {
        width: 120px;
        height: 120px;
        font-size: 20px;
        line-height: 120px;
    }
}

/*******************************************************/
/*****************  11. What We Provide ****************/
/*******************************************************/
/* ========== HOME : section "Les produits" ========== */
.what-we-provide {
    background-repeat: no-repeat;
    background-position: left bottom;
}

.what-we-provide-active {
    margin-left: -15px;
    margin-right: -15px;
}

.what-we-provide-active .what-we-provide-item {
    margin-left: 15px;
    margin-right: 15px;
    margin-top: 30px;
}

.what-we-provide-active .slick-dots {
    padding-top: 20px;
}

.what-we-provide-item {
    padding: 30px;
    -webkit-transition: 0.5s;
    -o-transition: 0.5s;
    transition: 0.5s;
    background: white;
    text-align: center;
    border-radius: 5px;
    margin-bottom: 30px;
    z-index: 1;
    position: relative;
}

.what-we-provide-item::before {
    position: absolute;
    content: "";
    width: 100%;
    height: 100%;
    z-index: -1;
    top: 0;
    left: 0;
    opacity: 0;
    background: -webkit-gradient(linear, left top, right top, from(#57EBAD), to(#a1e6c9));
    background: -webkit-linear-gradient(left, #57EBAD, #a1e6c9);
    background: -o-linear-gradient(left, #57EBAD, #a1e6c9);
    background: linear-gradient(90deg, #57EBAD, #a1e6c9);
}

.what-we-provide-item:before {
    -webkit-transition: 0.5s;
    -o-transition: 0.5s;
    transition: 0.5s;
    border-radius: 5px;
}

.what-we-provide-item i {
    line-height: 1;
    font-size: 75px;
    -webkit-transition: 0.5s;
    -o-transition: 0.5s;
    transition: 0.5s;
    margin-bottom: 10px;
    display: inline-block;
    background: -webkit-gradient(linear, left top, right top, from(#57EBAD), to(#a1e6c9));
    background: -webkit-linear-gradient(left, #57EBAD, #a1e6c9);
    background: -o-linear-gradient(left, #57EBAD, #a1e6c9);
    background: linear-gradient(90deg, #57EBAD, #a1e6c9);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.what-we-provide-item h6 {
    -webkit-transition: 0.5s;
    -o-transition: 0.5s;
    transition: 0.5s;
    margin-bottom: 0;
    text-align: center;
}

.what-we-provide-item h6 a {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    text-align: center;
    height: 100%;
}

/* Logo dans la carte (PNG ou SVG) */
.what-we-provide-item h6 a > svg,
.what-we-provide-item h6 a > img {
    display: block;
    max-width: 100%;
    height: 90px;             /* hauteur fixe pour toutes les icônes */
    width: auto !important;   /* écrase w-100, style="width: 80px", etc. */
    padding: 0 !important;    /* écrase pb-2, pb-3, ... */
    margin: 0 auto 12px;      /* centre le logo + espace avant le texte */
}

@media (max-width: 575.98px) {
    .what-we-provide-item h6 a > svg,
    .what-we-provide-item h6 a > img {
        height: 80px;         /* un peu plus compact sur mobile */
    }
}

.what-we-provide-item:hover {
    -webkit-transform: translateY(-15px);
    -ms-transform: translateY(-15px);
    transform: translateY(-15px);
}

.what-we-provide-item:hover i, .what-we-provide-item:hover h6, .what-we-provide-item:hover h6 a {
    color: white;
}

.what-we-provide-item:hover i {
    -webkit-text-fill-color: white;
}

.what-we-provide-item:hover:before {
    opacity: 1;
}

.what-we-provide-item.hover-two:hover {
    margin-top: 15px;
}

/*******************************************************/
/******************  12. Services Area *****************/
/*******************************************************/
@media only screen and (min-width: 1600px) {
    .services-area {
        padding-left: 55px;
        padding-right: 55px;
    }
}

@media only screen and (max-width: 1599px) {
    .service-content {
        padding-right: 0;
        padding-left: 50px;
    }
}

@media only screen and (max-width: 991px) {
    .service-content {
        padding-right: 50px;
    }
}

@media only screen and (max-width: 479px) {
    .service-content {
        padding-left: 25px;
        padding-right: 25px;
    }
}

.service-content .sub-title {
    color: #43c1ab;
}

.service-content .circle-shapes:after, .service-content .circle-shapes:before {
    display: none;
}

.circle-shapes.no-animation .shape-inner {
    -webkit-animation: none;
    animation: none;
}

.service-item {
    z-index: 1;
    margin: -1px;
    position: relative;
    padding: 80px 100px;
    border: 1px solid #57EBAD
}

@media only screen and (max-width: 1599px) {
    .service-item {
        padding: 50px;
        height: 100%;
    }
}

@media only screen and (max-width: 479px) {
    .service-item {
        padding-left: 25px;
        padding-right: 25px;
    }
}

.service-item .bg-image {
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    opacity: 0;
    -webkit-transition: 0.5s;
    -o-transition: 0.5s;
    transition: 0.5s;
    background-size: cover;
    z-index: 1;
    position: relative;
    position: absolute;
    z-index: -1;
}

.service-item .bg-image::before {
    position: absolute;
    content: "";
    width: 100%;
    height: 100%;
    z-index: -1;
    top: 0;
    left: 0;
    opacity: 0.95;
    background: -webkit-gradient(linear, left top, right top, from(#57EBAD), to(#a1e6c9));
    background: -webkit-linear-gradient(left, #57EBAD, #a1e6c9);
    background: -o-linear-gradient(left, #57EBAD, #a1e6c9);
    background: linear-gradient(90deg, #57EBAD, #a1e6c9);
}

.service-item .icon {
    line-height: 1;
    font-size: 65px;
    margin-bottom: 25px;
    background: -webkit-gradient(linear, left top, right top, from(#57EBAD), to(#a1e6c9));
    background: -webkit-linear-gradient(left, #57EBAD, #a1e6c9);
    background: -o-linear-gradient(left, #57EBAD, #a1e6c9);
    background: linear-gradient(90deg, #57EBAD, #a1e6c9);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

@media only screen and (max-width: 375px) {
    .service-item .icon {
        font-size: 55px;
    }
}

.service-item h3 {
    -webkit-transition: 0.5s;
    -o-transition: 0.5s;
    transition: 0.5s;
    margin-bottom: 20px;
}

.service-item h3 a:hover {
    text-decoration: underline;
}

.service-item p {
    -webkit-transition: 0.5s;
    -o-transition: 0.5s;
    transition: 0.5s;
    margin-top: 15px;
}

.service-item:hover .bg-image {
    opacity: 1;
}

.service-item:hover p,
.service-item:hover h3,
.service-item:hover h3 a,
.service-item:hover .read-more,
.service-item:hover .read-more i {
    color: black;
}

.service-item:hover .icon {
    -webkit-text-fill-color: white;
}

.service-item.style-two {
    padding: 35px 30px;
    margin-bottom: 30px;
}

@media only screen and (max-width: 375px) {
    .service-item.style-two {
        padding-left: 15px;
        padding-right: 15px;
    }
}

.service-item.style-two .icon {
    font-size: 50px;
    margin-bottom: 12px;
}

.service-item.style-two h4 {
    font-size: 22px;
    margin-bottom: 0;
}

.service-item.style-two p {
    margin-bottom: 0;
}

.service-item.style-two:hover .icon {
    -webkit-text-fill-color: transparent;
}

.service-item.style-two:hover p {
    color: #b8b8b8;
}

.service-item.style-three {
    overflow: hidden;
    border-radius: 5px;
    padding: 40px 35px;
    margin-bottom: 30px;
}

.service-item.style-three .icon {
    font-size: 50px;
    margin-bottom: 15px;
}

.service-item.style-three h5 {
    font-size: 22px;
}

.service-item.style-three p {
    margin-bottom: 0;
}

/* Services Two */
.services-tab-area .tab-btns-one .nav-link {
    padding-top: 22px;
    padding-bottom: 22px;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    border-top: 1px solid #57EBAD;
}

.services-tab-area .tab-btns-one .nav-link.active {
    border-bottom-color: #000000;
}

@media only screen and (min-width: 1200px) {
    .service-two-image {
        margin-right: -30px;
    }
}

@media only screen and (min-width: 1200px) {
    .service-two-content {
        max-width: 390px;
        margin-left: auto;
    }
}

.service-two-content h3 {
    line-height: 1.43;
    margin-bottom: 20px;
}

@media only screen and (min-width: 480px) {
    .service-two-content h3 {
        font-size: 35px;
    }
}

/* Services Two */
.service-item-two {
    -webkit-transition: 0.5s;
    -o-transition: 0.5s;
    transition: 0.5s;
    border-radius: 5px;
    margin-bottom: 30px;
    padding: 30px 50px 35px;
    border: 1px solid rgba(0, 0, 0, 0.1);
}

@media only screen and (min-width: 480px) {
    .service-item-two {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .service-item-two {
        padding-left: 35px;
        padding-right: 35px;
    }
}

@media only screen and (max-width: 575px) {
    .service-item-two {
        padding-left: 35px;
        padding-right: 35px;
    }
}

@media only screen and (max-width: 375px) {
    .service-item-two {
        padding-left: 25px;
        padding-right: 25px;
    }
}

.service-item-two .icon {
    -webkit-box-flex: 0;
    -ms-flex: none;
    flex: none;
    font-size: 66px;
    margin: 8px 30px 15px 0;
    background: -webkit-gradient(linear, left top, right top, from(#57EBAD), to(#a1e6c9));
    background: -webkit-linear-gradient(left, #57EBAD, #a1e6c9);
    background: -o-linear-gradient(left, #57EBAD, #a1e6c9);
    background: linear-gradient(90deg, #57EBAD, #a1e6c9);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

@media only screen and (max-width: 375px) {
    .service-item-two .icon {
        font-size: 50px;
    }
}

@media only screen and (max-width: 375px) {
    .service-item-two h3 {
        font-size: 22px;
    }
}

.service-item-two:hover, .service-item-two.style-two {
    border-color: white;
    -webkit-box-shadow: 10px 0 60px rgba(132, 132, 132, 0.1);
    box-shadow: 10px 0 60px rgba(132, 132, 132, 0.1);
}

.service-item-two.style-two .content h4 {
    margin-bottom: 5px;
}

.service-item-two.style-two .content p {
    margin-bottom: 0;
}

/*******************************************************/
/******************  13. Counter Area ******************/
/*******************************************************/
.counter-item {
    -webkit-transition: 0.5s;
    -o-transition: 0.5s;
    transition: 0.5s;
    background: white;
    padding: 10px 20px;
    border-radius: 7px;
    margin-bottom: 30px;
    border: 1px solid white;
    -webkit-box-shadow: 10px 0 60px rgba(132, 132, 132, 0.1);
    box-shadow: 10px 0 60px rgba(132, 132, 132, 0.1);
}

.counter-item .icon {
    line-height: 1;
    margin-bottom: 15px;
    color: #57EBAD;
}

.counter-item p {
    font-size: 20px;
    margin-bottom: 25px;
}

.counter-item .count-text {
    line-height: 1;
    font-size: 48px;
    font-weight: 500;
    display: inline-block;
    padding-bottom: 38px;
    position: relative;
    color: #000000;
}

.counter-item .count-text.k-plus:after {
    content: 'k+';
}

.counter-item .count-text.plus:after {
    content: '+';
}

.counter-item .count-text:before {
    position: absolute;
    content: '';
    left: 0;
    bottom: 0;
    -webkit-transition: 0.5s;
    -o-transition: 0.5s;
    transition: 0.5s;
    width: 70px;
    height: 2px;
    background: #e7e7e7;
}

.counter-item:hover {
    border-color: #57EBAD;
}

.counter-item:hover .count-text:before {
    background: #43c1ab;
}

.counter-item.style-two {
    overflow: hidden;
    background: transparent;
    border-color: rgba(255, 255, 255, 0.1);
    z-index: 1;
    position: relative;
}

.counter-item.style-two::before {
    position: absolute;
    content: "";
    width: 100%;
    height: 100%;
    z-index: -1;
    top: 0;
    left: 0;
    opacity: 0;
    background: -webkit-gradient(linear, left top, right top, from(#57EBAD), to(#a1e6c9));
    background: -webkit-linear-gradient(left, #57EBAD, #a1e6c9);
    background: -o-linear-gradient(left, #57EBAD, #a1e6c9);
    background: linear-gradient(90deg, #57EBAD, #a1e6c9);
}

.counter-item.style-two:before {
    -webkit-transition: 0.5s;
    -o-transition: 0.5s;
    transition: 0.5s;
}

.counter-item.style-two:after {
    content: '';
    width: 70%;
    opacity: 0;
    z-index: -1;
    right: 30px;
    bottom: 25px;
    -webkit-transition: 0.5s;
    -o-transition: 0.5s;
    transition: 0.5s;
    padding-top: 70%;
    position: absolute;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.12);
}

.counter-item.style-two .icon,
.counter-item.style-two .count-text {
    -webkit-transition: 0.5s;
    -o-transition: 0.5s;
    transition: 0.5s;
    background: -webkit-gradient(linear, left top, right top, from(#57EBAD), to(#a1e6c9));
    background: -webkit-linear-gradient(left, #57EBAD, #a1e6c9);
    background: -o-linear-gradient(left, #57EBAD, #a1e6c9);
    background: linear-gradient(90deg, #57EBAD, #a1e6c9);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.counter-item.style-two .count-text:before {
    background: -webkit-gradient(linear, left top, right top, from(#57EBAD), to(#a1e6c9));
    background: -webkit-linear-gradient(left, #57EBAD, #a1e6c9);
    background: -o-linear-gradient(left, #57EBAD, #a1e6c9);
    background: linear-gradient(90deg, #57EBAD, #a1e6c9);
}

.counter-item.style-two p {
    color: white;
}

.counter-item.style-two:hover:after, .counter-item.style-two:hover:before {
    opacity: 1;
}

.counter-item.style-two:hover .icon,
.counter-item.style-two:hover .count-text {
    -webkit-text-fill-color: white;
}

.counter-item.style-two:hover .count-text:before {
    background: white;
}

/*******************************************************/
/******************  14. Project Area ******************/
/*******************************************************/
.project-active {
    padding-right: 100px;
}

@media only screen and (max-width: 479px) {
    .project-active {
        padding-right: 0;
    }
}

.project-active .project-item .content {
    opacity: 0;
    -webkit-transition: 0.5s;
    -o-transition: 0.5s;
    transition: 0.5s;
    -webkit-transition-delay: 0.5s;
    -o-transition-delay: 0.5s;
    transition-delay: 0.5s;
    -webkit-transform: translateY(-25px);
    -ms-transform: translateY(-25px);
    transform: translateY(-25px);
}

.project-active .project-item.slick-active .content {
    opacity: 1;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
}

.project-active .slick-arrow {
    right: -65px;
    font-size: 18px;
    overflow: hidden;
    width: 65px;
    height: 65px;
    background: white;
    line-height: 65px;
    border-radius: 50%;
    text-align: center;
    border: 1px solid rgba(0, 0, 0, 0.1);
    z-index: 1;
    position: relative;
    position: absolute;
}

.project-active .slick-arrow::before {
    position: absolute;
    content: "";
    width: 100%;
    height: 100%;
    z-index: -1;
    top: 0;
    left: 0;
    opacity: 0;
    background: -webkit-gradient(linear, left top, right top, from(#57EBAD), to(#a1e6c9));
    background: -webkit-linear-gradient(left, #57EBAD, #a1e6c9);
    background: -o-linear-gradient(left, #57EBAD, #a1e6c9);
    background: linear-gradient(90deg, #57EBAD, #a1e6c9);
}

@media only screen and (max-width: 1399px) {
    .project-active .slick-arrow {
        right: 0;
    }
}

@media only screen and (max-width: 479px) {
    .project-active .slick-arrow {
        width: 45px;
        height: 45px;
        line-height: 45px;
    }
}

.project-active .slick-arrow:before {
    -webkit-transition: 0.5s;
    -o-transition: 0.5s;
    transition: 0.5s;
}

.project-active .slick-arrow:hover, .project-active .slick-arrow:focus {
    color: white;
}

.project-active .slick-arrow:hover:before, .project-active .slick-arrow:focus:before {
    opacity: 1;
}

.project-active .slick-arrow.project-prev {
    top: calc(50% + 8px);
}

@media only screen and (max-width: 479px) {
    .project-active .slick-arrow.project-prev {
        top: 15px;
        right: 70px;
    }
}

.project-active .slick-arrow.project-next {
    bottom: calc(50% + 8px);
}

@media only screen and (max-width: 479px) {
    .project-active .slick-arrow.project-next {
        top: 15px;
        right: 15px;
    }
}

.project-item {
    position: relative;
}

.project-item img {
    width: 100%;
}

.project-item .content {
    position: absolute;
    width: 80%;
    left: 10%;
    bottom: 40px;
    background: white;
    padding: 20px 35px;
    border-radius: 5px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

@media only screen and (max-width: 479px) {
    .project-item .content {
        left: 5%;
        width: 90%;
        bottom: 20px;
    }
}

@media only screen and (max-width: 375px) {
    .project-item .content {
        padding-left: 20px;
        padding-right: 20px;
    }
}

.project-item .content .text h4 {
    margin-bottom: 0;
}

@media only screen and (max-width: 575px) {
    .project-item .content .text h4 {
        font-size: 20px;
    }
}

.project-item .content .text span {
    font-size: 16px;
}

.project-item .content .plus {
    color: white;
    width: 45px;
    height: 45px;
    background: #57EBAD;
    line-height: 45px;
    border-radius: 50%;
    text-align: center;
}

.project-tab-content .circle-shapes {
    left: 40%;
}

/* Project Style Two */
@media only screen and (min-width: 1400px) {
    .project-page-area {
        padding-left: 55px;
        padding-right: 55px;
    }
}

.project-item-two {
    padding: 20px;
    margin-bottom: 30px;
    -webkit-box-shadow: 10px 0 60px rgba(0, 0, 0, 0.07);
    box-shadow: 10px 0 60px rgba(0, 0, 0, 0.07);
}

@media only screen and (max-width: 375px) {
    .project-item-two {
        padding: 10px;
    }
}

.project-item-two img {
    width: 100%;
    margin-bottom: 25px;
}

.project-item-two .project-content {
    margin-bottom: 5px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.project-item-two .project-content h5 {
    margin-bottom: 0;
}

@media only screen and (min-width: 768px) {
    .project-item-two .project-content h5 {
        font-size: 22px;
    }
}

.project-item-two .project-content span {
    font-size: 16px;
}

.project-item-two .project-content .plus {
    -webkit-box-flex: 0;
    -ms-flex: none;
    flex: none;
    width: 45px;
    height: 45px;
    line-height: 44px;
    text-align: center;
    border-radius: 50%;
    background-color: #57EBAD;
    border: 1px solid rgba(0, 0, 0, 0.1);
}

.project-item-two .project-content .plus:focus, .project-item-two .project-content .plus:hover {
    color: white;
    background: #57EBAD;
    border-color: #57EBAD;
}

.related-project-active {
    margin-left: -15px;
    margin-right: -15px;
}

.related-project-active .project-item-two {
    margin-top: 30px;
    margin-left: 15px;
    margin-right: 15px;
    -webkit-box-shadow: 5px 5px 15px rgba(0, 0, 0, 0.1);
    box-shadow: 5px 5px 15px rgba(0, 0, 0, 0.1);
}

.related-project-active .slick-dots {
    margin-top: 30px;
}

/* Project Filter */
.project-filter {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-left: -5px;
    margin-right: -5px;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.project-filter li {
    cursor: pointer;
    font-weight: 600;
    -webkit-transition: 0.5s;
    -o-transition: 0.5s;
    transition: 0.5s;
    padding: 5px 30px;
    margin: 0 5px 10px;
    border-radius: 5px;
    color: #000000;
    border: 1px solid rgba(0, 0, 0, 0.1);
}

@media only screen and (max-width: 479px) {
    .project-filter li {
        font-size: 16px;
    }
}

@media only screen and (max-width: 479px) {
    .project-filter li {
        padding: 2px 20px;
    }
}

.project-filter li:hover, .project-filter li.current {
    color: white;
    background: #57EBAD;
    border-color: #57EBAD;
}

/* Project Details */
.project-details-area .image img {
    width: 100%;
}

@media only screen and (min-width: 480px) {
    .project-details-area .content {
        padding-left: 40px;
        padding-right: 40px;
    }
}

.project-description {
    z-index: 2;
    position: relative;
    border-radius: 7px;
    padding: 60px 70px;
    margin-bottom: -90px;
    background: #57EBAD;
}

@media only screen and (max-width: 991px) {
    .project-description {
        margin-bottom: 80px;
    }
}

@media only screen and (max-width: 479px) {
    .project-description {
        padding-left: 25px;
        padding-right: 25px;
    }
}

.project-description ul li:not(:last-child) {
    margin-bottom: 25px;
    padding-bottom: 25px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.25);
}

.project-description ul li span {
    color: white;
}

.project-description ul li h3 {
    color: white;
    margin-bottom: 0;
}

@media only screen and (max-width: 375px) {
    .project-description ul li h3 {
        font-size: 24px;
    }
}

/* Footer top projects */
.footer-top-projects {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-left: -15px;
    margin-right: -15px;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

@media only screen and (max-width: 479px) {
    .footer-top-projects {
        margin-left: -5px;
        margin-right: -5px;
    }
}

.footer-top-projects .footer-project-item {
    margin-top: 30px;
    position: relative;
    margin-left: 15px;
    margin-right: 15px;
    width: calc(20% - 30px);
}

@media only screen and (max-width: 1199px) {
    .footer-top-projects .footer-project-item {
        width: calc(25% - 30px);
    }
}

@media only screen and (max-width: 991px) {
    .footer-top-projects .footer-project-item {
        width: calc(33.3333% - 30px);
    }
}

@media only screen and (max-width: 767px) {
    .footer-top-projects .footer-project-item {
        width: calc(50% - 30px);
    }
}

@media only screen and (max-width: 479px) {
    .footer-top-projects .footer-project-item {
        margin: 10px 5px 0;
        width: calc(50% - 10px);
    }
}

.footer-top-projects .footer-project-item img {
    width: 100%;
}

.footer-top-projects .footer-project-item .content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: 30px;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    opacity: 0;
    -webkit-transition: 0.5s;
    -o-transition: 0.5s;
    transition: 0.5s;
    position: absolute;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    background: rgba(0, 0, 0, 0.3);
}

@media only screen and (max-width: 479px) {
    .footer-top-projects .footer-project-item .content {
        padding: 15px;
        text-align: center;
    }
}

.footer-top-projects .footer-project-item .content h6 {
    color: white;
    margin-bottom: 0;
    padding: 5px 15px;
    border-radius: 5px;
    background: -webkit-gradient(linear, left top, right top, from(#57EBAD), to(#a1e6c9));
    background: -webkit-linear-gradient(left, #57EBAD, #a1e6c9);
    background: -o-linear-gradient(left, #57EBAD, #a1e6c9);
    background: linear-gradient(90deg, #57EBAD, #a1e6c9);
}

@media only screen and (max-width: 479px) {
    .footer-top-projects .footer-project-item .content h6 {
        font-size: 16px;
    }
}

.footer-top-projects .footer-project-item .content h6 a {
    color: white;
}

.footer-top-projects .footer-project-item:hover .content {
    opacity: 1;
}

/*******************************************************/
/********************  15. CTA Area ********************/
/*******************************************************/
.cta-area {
    overflow: hidden;
}

.cta-content {
    max-width: 400px;
    margin-left: auto;
}

@media only screen and (min-width: 1600px) {
    .cta-content {
        margin-right: 65px;
    }
}

@media only screen and (max-width: 1199px) {
    .cta-content {
        margin-left: auto;
        margin-right: auto;
    }
}

@media only screen and (max-width: 479px) {
    .cta-content {
        margin-left: 35px;
        margin-right: 35px;
    }
}

@media only screen and (max-width: 375px) {
    .cta-content {
        margin-left: 25px;
        margin-right: 25px;
    }
}

.cta-left-image {
    max-width: 100%;
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content;
}

.cta-left-image .circle-shapes {
    left: 55%;
    top: 80%;
}

.cta-right-image {
    max-width: 100%;
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content;
}

@media only screen and (max-width: 1199px) {
    .cta-right-image {
        margin-left: auto;
    }
}

.cta-right-image .circle-shapes {
    left: 35%;
    top: 65%;
}

.circle-shapes.white-shape:after, .circle-shapes.white-shape:before {
    border-color: rgba(255, 255, 255, 0.3);
}

.circle-shapes.white-shape .shape-inner span {
    background: white;
}

/* CTA Two */
.cta-two-area {
    overflow: hidden;
}

.cta-two-area .circle-shapes:after, .cta-two-area .circle-shapes:before {
    border-color: rgba(255, 255, 255, 0.15);
}

.cta-two-content .sub-title {
    color: #a1e6c9;
}

.cta-two-content .list-style-one li:before {
    color: #a1e6c9;
    font-size: 22px;
}

.cta-two-content .circle-shapes {
    top: 100%;
    left: 15%;
}

@media only screen and (min-width: 992px) {
    .cta-two-image {
        margin-right: -210px;
    }
}

.cta-two-image .circle-shapes {
    top: 75%;
}

/*******************************************************/
/*******************  19. Shop Area ********************/
/*******************************************************/
.product-item {
    margin-bottom: 30px;
}

.product-item .image {
    position: relative;
}

.product-item .image img {
    width: 100%;
}

.product-item .image .badge {
    position: absolute;
    right: 0;
    bottom: 70px;
    font-weight: 600;
    border-radius: 5px;
    background: #43c1ab;
}

.product-item .image .badge.red {
    background: #57EBAD;
}

.product-item .image .badge.pink {
    background: #ea00ff;
}

.product-item .content {
    z-index: 1;
    -webkit-transition: 0.5s;
    -o-transition: 0.5s;
    transition: 0.5s;
    background: white;
    position: relative;
    padding: 16px 25px 20px;
    -webkit-box-shadow: 10px 0 60px rgba(132, 132, 132, 0.1);
    box-shadow: 10px 0 60px rgba(132, 132, 132, 0.1);
}

.product-item .content .title-price {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.product-item .content .title-price h5 {
    margin-bottom: 0;
}

.product-item .content .title-price .price {
    font-weight: 600;
    color: #57EBAD;
}

.product-item .content .title-price .price:before {
    content: '$';
}

.product-item .content .social-style-two {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    opacity: 0;
    left: 0;
    z-index: -1;
    bottom: 20px;
    -webkit-transition: 0.5s;
    -o-transition: 0.5s;
    transition: 0.5s;
    position: absolute;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.product-item .content .social-style-two a {
    -webkit-box-shadow: none;
    box-shadow: none;
    border: 1px solid rgba(0, 0, 0, 0.1);
}

.product-item:hover .content {
    margin-top: -55px;
    padding-bottom: 75px;
}

.product-item:hover .content .social-style-two {
    opacity: 1;
}

.product-item.style-two {
    max-width: 830px;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

@media only screen and (min-width: 768px) {
    .product-item.style-two {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }
}

.product-item.style-two .image {
    -webkit-box-flex: 0;
    -ms-flex: none;
    flex: none;
}

@media only screen and (min-width: 768px) {
    .product-item.style-two .image {
        max-width: 40%;
        margin-right: 50px;
    }
}

@media only screen and (max-width: 767px) {
    .product-item.style-two .image {
        margin-bottom: 20px;
    }
}

.product-item.style-two .product-content h3 {
    margin-bottom: 0;
}

.product-item.style-two .product-content .price {
    font-weight: 600;
    margin-bottom: 15px;
    color: #57EBAD;
}

.product-item.style-two .product-content .price:before {
    content: '$';
}

.product-item.style-two .product-content .social-style-two {
    margin-bottom: -10px;
}

.product-item.style-two .product-content .social-style-two a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    overflow: hidden;
    -webkit-box-shadow: none;
    box-shadow: none;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding-left: 9px;
    padding-right: 9px;
    margin-bottom: 10px;
    border: 1px solid rgba(0, 0, 0, 0.1);
}

.product-item.style-two .product-content .social-style-two a span {
    color: white;
    display: none;
    padding-left: 15px;
    padding-right: 15px;
}

.product-item.style-two .product-content .social-style-two a:hover {
    width: auto;
    border-radius: 5px;
    border-color: #57EBAD;
}

.product-item.style-two .product-content .social-style-two a:hover span {
    display: block;
}

.product-item.style-two .product-content .social-style-two a:hover span ~ i {
    display: none;
}

/* Shop Advertisement */
.shop-advertisement {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    height: calc(100% - 30px);
}

@media only screen and (max-width: 1199px) {
    .shop-advertisement {
        height: auto;
        margin-bottom: 30px;
    }
}

.shop-advertisement .content {
    padding: 35px;
}

.shop-advertisement .content h3 {
    font-size: 35px;
}

.shop-advertisement .image {
    z-index: 1;
    -ms-flex-item-align: end;
    -ms-grid-row-align: end;
    align-self: end;
    margin-top: auto;
    position: relative;
}

.shop-advertisement .image:after {
    content: '';
    width: 120%;
    opacity: 0.15;
    padding-top: 120%;
    border-radius: 50%;
    background: white;
    z-index: -1;
    left: 0;
    bottom: 15%;
    position: absolute;
}

.shop-advertisement .circle-shapes {
    top: 20%;
    width: 130%;
    padding-top: 130%;
}

/* Priduct Style Two */
.product-two-slider {
    margin-left: -15px;
    margin-right: -15px;
}

.product-two-slider .product-item-two {
    margin-left: 15px;
    margin-right: 15px;
}

.product-two-slider .slick-dots {
    margin-top: 15px;
}

.product-item-two {
    padding: 10px;
    margin-bottom: 30px;
    background: #f8f3ff;
}

.product-item-two .image {
    margin-bottom: 18px;
}

.product-item-two .image img {
    width: 100%;
    border-radius: 5px;
}

.product-item-two .content {
    padding: 0 8px 10px;
}

.product-item-two .content .title-price {
    position: relative;
    padding-right: 35px;
    padding-bottom: 10px;
}

.product-item-two .content .title-price .category {
    font-size: 14px;
}

.product-item-two .content .title-price .price {
    position: absolute;
    right: 0;
    top: 2px;
    font-weight: 600;
    color: #57EBAD;
}

.product-item-two .content .title-price .price:before {
    content: '$';
}

.product-item-two .content .theme-btn {
    width: 100%;
    line-height: 1.75;
}

.product-item-two .content .theme-btn:not(:hover) {
    background: white;
}

/* Shop Shorter */
.default-search-form {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: 12px 20px;
    border-radius: 5px;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    border: 1px solid rgba(0, 0, 0, 0.1);
}

.default-search-form input {
    padding: 0;
    border: none;
    font-size: 16px;
}

.default-search-form input::-webkit-input-placeholder {
    font-weight: 400;
    color: #7e7e7e;
}

.default-search-form input:-ms-input-placeholder {
    font-weight: 400;
    color: #7e7e7e;
}

.default-search-form input::-ms-input-placeholder {
    font-weight: 400;
    color: #7e7e7e;
}

.default-search-form input::placeholder {
    font-weight: 400;
    color: #7e7e7e;
}

.default-search-form button {
    font-size: 16px;
    background: transparent;
}

.shop-shorter {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.shop-shorter .default-search-form {
    margin-right: 30px;
    margin-bottom: 15px;
}

.shop-shorter .sort-text {
    margin-right: auto;
    margin-bottom: 15px;
}

.shop-shorter .products-dropdown {
    margin-right: 25px;
    margin-bottom: 15px;
}

.shop-shorter .products-dropdown .nice-select {
    font-size: 16px;
    font-weight: 600;
    padding: 12px 55px 12px 25px;
}

.shop-shorter .products-dropdown .nice-select .current {
    color: #000000;
}

.shop-shorter .products-dropdown .nice-select:after {
    width: 7px;
    height: 7px;
    right: 20px;
    border-color: #000000;
}

.shop-shorter .grid-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-bottom: 15px;
}

.shop-shorter .grid-list li:not(:last-child) {
    margin-right: 20px;
}

.shop-shorter .grid-list li a {
    font-size: 30px;
    color: #000000;
}

/* Product Details */
.preview-item img {
    width: 100%;
}

.thumb-images .thumb-item {
    margin-bottom: 30px;
}

.thumb-images .thumb-item img {
    width: 100%;
}

.thumb-images.style-two {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-around;
}

.thumb-images.style-two .thumb-item {
    width: calc(33.333% - 20px);
}

@media only screen and (min-width: 1200px) {
    .product-details-content {
        margin-left: 30px;
    }
}

@media only screen and (min-width: 768px) {
    .product-details-content h2 {
        font-size: 38px;
    }
}

.ratting-price {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.ratting-price .ratting {
    padding-right: 10px;
}

.ratting-price .ratting i {
    font-size: 13px;
    margin-right: 6px;
}

.ratting-price .price {
    font-size: 24px;
    font-weight: 600;
    color: #000000;
}

.ratting-price .price:before {
    content: '$';
}

.category-tags li:not(:last-child) {
    margin-bottom: 5px;
}

.category-tags li b {
    width: 90px;
    color: #000000;
    display: inline-block;
}

@media only screen and (max-width: 375px) {
    .category-tags li b {
        width: auto;
        margin-right: 6px;
    }
}

.category-tags li b + span {
    margin-right: 15px;
}

@media only screen and (max-width: 375px) {
    .category-tags li b + span {
        margin-right: 6px;
    }
}

.category-tags li a {
    font-size: 16px;
}

.category-tags li a:not(:last-child) {
    margin-right: 2px;
}

.category-tags li a:not(:last-child):after {
    content: ',';
}

.add-to-cart {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.add-to-cart input {
    width: 95px;
    padding: 10px 22px;
    margin-right: 10px;
    margin-top: 10px;
}

.add-to-cart .theme-btn {
    margin-top: 10px;
    margin-right: 10px;
}

.add-to-cart .wishlist {
    margin-top: 10px;
    width: 60px;
    height: 50px;
    border-radius: 5px;
    background: transparent;
    border: 1px solid rgba(0, 0, 0, 0.1);
}

.product-information-tab {
    border-top: 1px solid rgba(0, 0, 0, 0.1);
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}

.product-information-tab li a {
    font-size: 24px;
    font-weight: 600;
    padding: 18px 35px;
    margin-bottom: -1px;
    color: #000000;
    display: inline-block;
    border-bottom: 1px solid transparent;
}

@media only screen and (max-width: 991px) {
    .product-information-tab li a {
        font-size: 20px;
        padding: 12px 25px;
    }
}

@media only screen and (max-width: 375px) {
    .product-information-tab li a {
        font-size: 16px;
        padding: 8px 22px;
    }
}

.product-information-tab li a.active {
    color: #57EBAD;
    border-color: #57EBAD;
}

@media only screen and (min-width: 768px) {
    .review-form-area h3 {
        font-size: 30px;
    }
}

.review-form-area .ratting {
    margin-bottom: 10px;
}

.review-form-area .ratting h5 {
    margin: 0 15px 0 0;
}

.review-form-area .nice-select:not(:focus),
.review-form-area .form-control:not(:focus) {
    background: #f8f3ff;
    border-color: #f8f3ff;
}

.review-form-area .nice-select .current,
.review-form-area .form-control::-webkit-input-placeholder {
    font-weight: 400;
    color: #7e7e7e;
}

.review-form-area .nice-select .current,
.review-form-area .form-control:-ms-input-placeholder {
    font-weight: 400;
    color: #7e7e7e;
}

.review-form-area .nice-select .current,
.review-form-area .form-control::-ms-input-placeholder {
    font-weight: 400;
    color: #7e7e7e;
}

.review-form-area .nice-select .current,
.review-form-area .form-control::placeholder {
    font-weight: 400;
    color: #7e7e7e;
}

/* Product Details Two */
.product-info-accordion .product-accordion-item:not(:last-child) {
    margin-bottom: 25px;
}

.product-info-accordion .accordion-header {
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}

.product-info-accordion .accordion-header button {
    font-weight: 600;
    -webkit-transition: 0.5s;
    -o-transition: 0.5s;
    transition: 0.5s;
    color: #57EBAD;
    padding: 0 70px 25px 0;
    background: transparent;
    border-bottom: 1px solid #57EBAD;
}

.product-info-accordion .accordion-header button.collapsed {
    border-color: transparent;
    color: #000000;
}

.product-info-accordion .accordion-content {
    padding-top: 22px;
}

@media only screen and (max-width: 575px) {
    .product-info-accordion .accordion-content {
        font-size: 16px;
    }
}

/* Related Product */
.realated-product-slider {
    margin-left: -15px;
    margin-right: -15px;
}

.realated-product-slider .product-item {
    margin-left: 15px;
    margin-right: 15px;
}

.realated-product-slider .slick-dots {
    margin-top: 15px;
}

/*******************************************************/
/********************  24. FAQ Area ********************/
/*******************************************************/

.accordion-item {
    border: none;
    border-radius: 5px;
    -webkit-box-shadow: 10px 0 60px rgba(132, 132, 132, 0.1);
    box-shadow: 10px 0 60px rgba(132, 132, 132, 0.1);
}

.accordion-item:not(:last-child) {
    margin-bottom: 15px;
}

.accordion-item .accordion-button {
    font-weight: 600;
    color: #000000;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

@media only screen and (min-width: 376px) {
    .accordion-item .accordion-button {
        font-size: 18px;
    }
}

.accordion-item .accordion-button:after {
    content: '\f107';
    transform: rotate(-90deg);
    font-weight: 400;
    margin-left: 5px;
    background-image: none;
    font-family: 'Font Awesome 5 Pro';
}

.accordion-item .accordion-button:focus {
    border: none;
    -webkit-box-shadow: none;
    box-shadow: none;
    background: transparent;
}

.accordion-item .accordion-button:not(.collapsed) {
    -webkit-box-shadow: none;
    box-shadow: none;
    color: #57EBAD;
    text-decoration: underline;
    background-color: transparent;
}

.accordion-item .accordion-button:not(.collapsed):after {
    float: right;
    transform: rotate(0deg);
    content: '\f107';
    color: #57EBAD;
}

.accordion-item .accordion-body {
    padding-top: 0;
    padding-bottom: 5px;
}

.accordion-item.style-two {
    -webkit-box-shadow: none;
    box-shadow: none;
}

.accordion-item.style-two .accordion-button {
    border-radius: 5px;
    align-items: unset;
    padding-top: 18px;
    padding-bottom: 18px;
    border: 1px solid rgba(0, 0, 0, 0.1);
}

.accordion-item.style-two .accordion-button:not(.collapsed) {
    border-color: white;
    -webkit-box-shadow: 10px 0 60px rgba(25, 28, 40, 0.08);
    box-shadow: 10px 0 60px rgba(25, 28, 40, 0.08);
}

.accordion-item.style-two .accordion-body {
    padding-top: 15px;
}

/* FAQ Counter */
.faq-counter {
    margin-bottom: -220px;
    padding: 80px 90px 50px;
    -webkit-transform: translateY(-220px);
    -ms-transform: translateY(-220px);
    transform: translateY(-220px);
}

@media only screen and (max-width: 479px) {
    .faq-counter {
        padding-left: 25px;
        padding-right: 25px;
    }
}

/*******************************************************/
/******************  27. Contact Area ******************/
/*******************************************************/
.faq-contact-form {
    padding: 60px 70px;
    border-radius: 7px;
    -webkit-box-shadow: 10px 0 60px rgba(132, 132, 132, 0.1);
    box-shadow: 10px 0 60px rgba(132, 132, 132, 0.1);
}

@media only screen and (max-width: 575px) {
    .faq-contact-form {
        padding-left: 25px;
        padding-right: 25px;
    }
}

.contact-info-wrap,
.contact-info-content {
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    border: 1px solid #57EBAD;
}

.contact-info-content {
    padding: 75px 80px;
}

@media only screen and (min-width: 992px) {
    .contact-info-content {
        border-right: none;
    }
}

@media only screen and (max-width: 991px) {
    .contact-info-content {
        border-bottom: none;
    }
}

@media only screen and (max-width: 575px) {
    .contact-info-content {
        padding-left: 35px;
        padding-right: 35px;
    }
}

@media only screen and (max-width: 375px) {
    .contact-info-content {
        padding-left: 25px;
        padding-right: 25px;
    }
}

.contact-info-content p {
    margin-bottom: 0;
}

.contact-info-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: 40px 80px;
}

@media only screen and (max-width: 575px) {
    .contact-info-item {
        padding-left: 35px;
        padding-right: 35px;
    }
}

@media only screen and (max-width: 375px) {
    .contact-info-item {
        padding-left: 25px;
        padding-right: 25px;
    }
}

.contact-info-item:not(:last-child) {
    border-bottom: 1px solid #57EBAD;
}

.contact-info-item .icon {
    -webkit-box-flex: 0;
    -ms-flex: none;
    flex: none;
    color: #57EBAD;
    margin-top: 5px;
    font-size: 25px;
    margin-right: 25px;
    width: 60px;
    height: 60px;
    background: #0A2D24;
    line-height: 60px;
    border-radius: 50%;
    text-align: center;
}

@media only screen and (max-width: 375px) {
    .contact-info-item .icon {
        width: 44px;
        height: 44px;
        font-size: 16px;
        line-height: 44px;
        margin-right: 15px;
    }
}

@media only screen and (min-width: 480px) {
    .contact-info-item .content {
        font-size: 20px;
    }
}

@media only screen and (max-width: 375px) {
    .contact-info-item .content {
        font-size: 16px;
        line-height: 1.5;
    }
}

.contact-info-item .content h4 {
    margin-bottom: 5px;
}

@media only screen and (max-width: 375px) {
    .contact-info-item .content h4 {
        font-size: 20px;
    }
}

.contact-info-item .content p {
    margin-bottom: 0;
}

.contact-info-item .content a {
    word-break: break-all;
}

.our-location iframe {
    height: 685px;
}

@media only screen and (max-width: 1399px) {
    .our-location iframe {
        height: 500px;
    }
}

@media only screen and (max-width: 767px) {
    .our-location iframe {
        height: 400px;
    }
}

#inscriptionForm .form-group label {
    position: absolute;
    z-index: 1;
    top: 13px;
    left: 10px;
}

.login-form .form-group label {
    position: absolute;
    z-index: 1;
    top: 13px;
    left: 10px;
}
.login-form .form-group label {
    position: absolute;
    z-index: 1;
    top: 13px;
    left: 10px;
}

.login-form .form-group .nice-select,
.login-form .form-group .form-control {
    border: none;
    margin-right: 0;
    border-radius: 0;
    padding-left: 40px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}

.login-form .form-group .nice-select .list,
.login-form .form-group .form-control .list {
    width: 100%;
}

.login-form .form-group .nice-select .current, .login-form .form-group .nice-select::-webkit-input-placeholder,
.login-form .form-group .form-control .current,
.login-form .form-group .form-control::-webkit-input-placeholder {
    font-weight: 400;
    color: #7e7e7e;
}

.login-form .form-group .nice-select .current, .login-form .form-group .nice-select:-ms-input-placeholder,
.login-form .form-group .form-control .current,
.login-form .form-group .form-control:-ms-input-placeholder {
    font-weight: 400;
    color: #7e7e7e;
}

.login-form .form-group .nice-select .current, .login-form .form-group .nice-select::-ms-input-placeholder,
.login-form .form-group .form-control .current,
.login-form .form-group .form-control::-ms-input-placeholder {
    font-weight: 400;
    color: #7e7e7e;
}

.login-form .form-group .nice-select .current, .login-form .form-group .nice-select::placeholder,
.login-form .form-group .form-control .current,
.login-form .form-group .form-control::placeholder {
    font-weight: 400;
    color: #7e7e7e;
}

.login-form .form-group .nice-select:focus,
.login-form .form-group .form-control:focus {
    border-bottom-color: #000000;
}

.login-form .tac-wrap input {
    margin-right: 10px;
}

.login-form .tac-wrap label {
    font-weight: 400;
    display: inline;
}

.has-error .help-block.with-errors {
    color: #57EBAD;
}

#msgSubmit {
    margin-top: 10px;
    margin-bottom: 0;
}

#msgSubmit.hidden {
    display: none;
}

/*******************************************************/
/*******************  28. 404 Error ********************/
/*******************************************************/
@media only screen and (min-width: 992px) {
    .error-page-content h2 {
        font-size: 45px;
    }
}

.error-page-content h2 span {
    font-size: 145%;
}

/*******************************************************/
/******************  29. Main Footer *******************/
/*******************************************************/

.footer-area {
    background-image: url("../img/footer-bg.png");
    background-repeat: no-repeat;
    background-size: cover;
}

.footer-area .widget-title {
    font-size: 22px;
    margin-bottom: 30px;
}

.footer-area .widget {
    margin-bottom: 50px;
}

.footer-area .widget_nav_menu ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.footer-area .widget_nav_menu ul li {
    width: 50%;
    font-size: 16px;
}

@media only screen and (max-width: 375px) {
    .footer-area .widget_nav_menu ul li {
        width: 100%;
    }
}

.footer-area .widget_nav_menu ul li:not(:last-child) {
    margin-bottom: 8px;
}

.footer-area .widget_nav_menu ul li a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.footer-area .widget_nav_menu ul li a:before {
    /* content: '\f105'; */
    margin-right: 10px;
    font-family: 'Font Awesome 5 Pro';
}

.footer-area .widget_contact_info li {
    color: #000000;
}

.footer-area .widget_contact_info li:not(:last-child) {
    margin-bottom: 8px;
}

.footer-area .widget_contact_info li i {
    color: #57EBAD;
    margin-right: 10px;
}

.footer-area .widget_contact_info li a:not(:hover) {
    color: #000000;
}

.footer-bottom {
    position: relative;
    border-top: 1px solid #57EBAD;
}

.footer-bottom .copyright-text a {
    color: #57EBAD;
}


.text_impr {
    background: -webkit-linear-gradient(0.91turn, #34EEFA, #66B4FB, #977BFC, #C842FF, #FF01FE, #FF48B6, #FF7787, #FFA35C, #FFF20F);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

/* .img_trio_bg{
  background-image: url("/assets/images/background/trio_bg.png");
} */

.green_bg_light {
    background-color: rgb(213, 250, 234);
}

.green_bg_dark_card {
    background-color: rgb(10, 45, 36);
}

.a_white {
    color: white !important;
}

.bg-footer {
    background-color: #000a07;
    color: white;
}

.footer-size {
    font-size: 14px;
}

.footer-link {
    font-size: 16px !important;
    color: #dedede !important;
}

.project-filter-container {
    display: flex;
    justify-content: center;
}

.size-img {
    width: 400px;
}

.sizecard {
    width: 270px !important;
}

.contact-card {
    background-color: #0A2D24;
    padding: 70px;
    border-radius: 1%;
    box-shadow: 3px 3px 20px grey;
    z-index: 2;
    margin-top: 75px;
    margin-bottom: 75px;
}

.bgd-card {
    background-color: #57EBAD;
    width: 55%;
    height: 100%;
    z-index: 1;
    position: absolute;
    border-radius: 0% 8% 8% 0%;

}

.image-position {
    z-index: 2;
    display: flex;
    align-items: center;
}

input:-webkit-autofill,
input:-webkit-autofill:focus {
    transition: background-color 0s 600000s, color 0s 600000s !important;
}

.form-control2 {
    width: 100%;
    height: auto;
    font-size: 18px;
    line-height: 1.5;
    border-radius: 5px;
    padding: 15px 35px;
    border-bottom: 1px solid rgb(255, 255, 255);
    color: white;
    background-color: #0A2D24;
}

.button-shop {
    display: flex;
    justify-content: space-evenly;
    align-items: baseline;
}

.shp-btn {
    display: flex;
    justify-content: space-between;
}

.bg-projects-clr {
    background-color: #0A2D24;
    color: #adadad;
}

.title-clr {
    color: #ffffff;
}

.samll-text {
    font-size: small;
}

@media only screen and (max-width: 300px) {
    .sub-menu-2 {
        max-height: 625px;
    }
}


.t-a-center {
    text-align: center;
}


.m-icon {
    margin-left: 10px;
    margin-right: 10px;
    color: #7e7e7e !important;
}


.inner-scroll {
    overflow: auto;
    height: 400px;
    overflow-X: hidden;
}

/* .scroll-size {
  height: 120rem;
} */

.round {
    display: flex;
    justify-content: center;
}

.round input {
    height: 21px;
    width: 21px;
}

.check {
    border-radius: 50%;
}

.txt-card {
    font-size: 13px !important;
    display: flex;
    justify-content: center;
    margin-top: 25px;
    margin-bottom: 0 !important;
}

.nb-button {
    background-color: white;
    margin-left: 20px;
}

.separateur {
    color: #57EBAD;
}


/* Tables */
table,
td {
    border: 1px solid #333;
    height: 50px;
}

thead,
tfoot {
    background-color: #a1e6c9;
    color: black;
    height: 50px;
}


.m-icon2 {
    margin-right: 5px;
}

.btn-impr {
    /*background-color: white;*/
    border: none !important;
    padding-bottom: 0%;
}


.btn-ajout {
    height: 400px;
    color: #000000 !important;
    background-color: #fff;
    border: 1px solid rgba(255, 255, 255, 0);
}

.btn-ajout:hover {
    background: white !important;
    border-color: #57EBAD !important;
}


/* The container */
.container2 {
    display: flex;
    position: relative;
    /* padding-left: 35px;
  margin-bottom: 12px; */
    cursor: pointer;
    font-size: 12px;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

/* Hide the browser's default checkbox */
.container2 input {
    position: absolute;
    opacity: 0;
    cursor: pointer;
    height: 0;
    width: 0;
}

/* Create a custom checkbox */
.checkmark {
    position: absolute;
    top: 0;
    right: -13px;
    height: 25px;
    width: 25px;
    background-color: #eee;
    border: 1px solid #57EBAD;
    border-radius: 50%;
}

/* On mouse-over, add a grey background color */
.container2:hover input ~ .checkmark {
    background-color: #ccc;
}

/* When the checkbox is checked, add a blue background */
.container2 input:checked ~ .checkmark {
    background-color: #57EBAD;
}

/* Create the checkmark/indicator (hidden when not checked) */
.checkmark:after {
    content: "";
    position: absolute;
    display: none;
}

/* Show the checkmark when checked */
.container2 input:checked ~ .checkmark:after {
    display: block;
}

/* Style the checkmark/indicator
.container2 .checkmark:after {
  left: 9px;
  top: 5px;
  width: 5px;
  height: 10px;
  border: solid white;
  border-width: 0 3px 3px 0;
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  transform: rotate(90deg);
} */

.container2 .checkmark:after {
    background: #fff;
    border-radius: 50%;
    width: 10px;
    height: 10px;
    left: 7px;
    top: 7px;
}

.icon2 {
    display: flex !important;
    justify-content: center !important;
}

@media only screen and (max-width: 300px) {
    .sub-menu-2 {
        column-width: 100px;
    }
}

@media only screen and (max-width: 400px) {
    .samll-text {
        display: none;
    }
}

.mobile-icons {
    margin-left: 10px;
}

@media only screen and (max-width: 450px) {
    .button-shop2 {
        display: inline;
    }
}


@media only screen and (max-width: 768px) {
    .mobile-img {
        display: flex !important;
        flex-direction: column !important;
    }
}


@media only screen and (max-width: 450px) {
    .tit-mobile {
        font-size: 34px !important;
    }
}

/* @media only screen and (max-width: 450px) {
  .tab-mobile {
    font-size: 34px !important;
  }
} */

.table-scroll {
    overflow: auto;
    height: 200px;
    overflow-y: scroll;
    overflow-x: scroll;
}

.number2 {
    color: #0A2D24 !important;
}

.line_h {
    line-height: 45px !important;
}

.btn-blc {
    background-color: #fff !important;
    border: 1px solid var(--Vibrant-Green, #57EBAD) !important;
}

.text-dark {
    color: #000000 !important;
}

.card-size {
    height: 220px;
}

.capital-titles {
    text-transform: none !important;
}

.footer-links {
    flex-direction: column;
    line-height: 30px;
}

.bg-services {
    background-color: #f9f9f9;
}

.rounded-img {
    border-radius: 5px;
}

.one-project {
    background-color: #0A2D24;
    border-radius: 50%;
    padding: 30px;
    margin-right: 50px;
}

.b-n {
    border: none !important;
    background-color: #000a07 !important;
    box-shadow: none;
}


.nos-services {
    align-items: center;
    border-color: #57EB9D;
}

.card-size2 {
    height: 130px;
}

.dark-green {
    background-color: #0A2D24 !important;
}

.light-green {
    background-color: #57EBAD !important;
    position: relative;
    z-index: 1;
    bottom: auto;
    margin-top: -180px;
}

.img-position {
    position: relative;
    z-index: 2;
}

.img2-position {
    position: relative;
    z-index: 1;
    bottom: auto;
    margin-top: -60px;
    padding-bottom: 50px;
}

.btn-s-achat {
    border-radius: 50%;
}

#zoom-preview {
    background-color: #fff !important;
    z-index: 50;
    width: 100%;
}

/* ==== Product gallery sizing (override) ==== */

/* taille des vignettes (modifiable) */
.thumb-images { --thumb-size: 96px; }

.thumb-images .thumb-item {
    width: var(--thumb-size);
    height: var(--thumb-size);
    border-radius: 3px;
    overflow: hidden;
    background: #f8f9fa;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(0,0,0,.08);
    /* optionnel: petit effet au focus/actif */
}
.thumb-images .thumb-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;  /* clé : toutes les vignettes ont la même fenêtre */
    display: block;
}

/* cadre de l’image principale (les panes .preview-item) */
.preview-images .preview-item {
    aspect-ratio: 1 / 1;    /* carré; mets 4/3 ou 16/9 si tu préfères */
    width: 100%;
    border-radius: 12px;
    overflow: hidden;
    background: #f8f9fa;
    /*display: flex;*/
    align-items: center;
    justify-content: center;
}
.preview-images .preview-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;       /* cover : rempli le cadre; pour tout voir => contain */
    display: block;
}

/* petites adaptations responsive si besoin */
@media (max-width: 575.98px) {
    .thumb-images { --thumb-size: 72px; }
}


/* --- Radios en boutons avec "rond" interne (brand green) --- */
.scale-options {
    --cell: 75px;
    --brand-green: #57EBAD;
    --brand-green-rgb: 87,235,173; /* #57EBAD */
}

/* == Brand == */
.radio-row {
    --cell: 75px;                   /* taille des petits boutons carrés */
    --brand-green: #57EBAD;
    --brand-green-rgb: 87,235,173;
}

/* Boutons radio sous forme de "cartes" (btn-check) */
.scale-btn {
    width: var(--cell);
    height: var(--cell);
    padding: .25rem .5rem;
    border-radius: .75rem;
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: .35rem;
    color: var(--bs-body-color);    /* texte lisible (ne devient pas vert) */
    transition: border-color .15s ease, background-color .15s ease, box-shadow .15s ease;
}

/* Ligne unique pour un groupe (avec scroll horizontal si trop d'options) */
.radio-row-container {
    overflow: auto;                 /* scroll horizontal si besoin */
}
.radio-row {
    display: flex;
    flex-wrap: nowrap;              /* une seule ligne */
    gap: .5rem;
}

/* Focus clavier */
.btn-check:focus + .scale-btn {
    box-shadow: 0 0 0 .25rem rgba(var(--brand-green-rgb), .25);
}

/* État sélectionné = bord + dot verts, fond léger */
.btn-check:checked + .scale-btn {
    border-color: var(--brand-green);
    background-color: rgba(var(--brand-green-rgb), .08);
    color: var(--bs-body-color);            /* texte reste neutre */
}
.btn-check:checked + .scale-btn .radio-dot {
    border-color: var(--brand-green);
}
.btn-check:checked + .scale-btn .radio-dot::after {
    opacity: 1; transform: scale(1);
}

/* Hover */
.scale-btn:hover { background-color: rgba(0,0,0,.03); }
.btn-check:checked + .scale-btn:hover { background-color: rgba(var(--brand-green-rgb), .12); }

/* Désactivé */
.btn-check:disabled + .scale-btn,
.btn-check[disabled] + .scale-btn { opacity: .6; pointer-events: none; }



/* === Checkout: permettre sticky sans casser le reste === */
.is-checkout .page-wrapper {           /* annule le overflow global juste pour Checkout */
    overflow-x: hidden !important;
    overflow-y: visible !important;
}
.is-checkout .container,
.is-checkout .container .row {         /* quelques thèmes coupent aussi ici */
    overflow: visible !important;
}
