/*! CSS Used from: https://green.gt/css/styles.css */
body {
    margin: 0;
    padding: 0
}

body::-webkit-scrollbar {
    width: 8px;
    height: 8px
}

body::-webkit-scrollbar-thumb {
    background: #48d58b;
    border-radius: 3px
}

body::-webkit-scrollbar-thumb:hover {
    background: #03c94f;
    box-shadow: 0 0 2px 1px rgba(0, 0, 0, .2)
}

body::-webkit-scrollbar-track {
    background: #100217
}

#preloader {
    position: fixed;
    left: 0;
    top: 0;
    z-index: 999999;
    width: 100%;
    height: 100%;
    overflow: visible;
    background: #fff;
    display: table;
    text-align: center
}

.loader {
    display: table-cell;
    vertical-align: middle;
    position: relative;
    width: 200px;
    height: 200px
}

.loader-icon {
    width: 80px;
    height: 80px;
    border: 5px solid #48d58b;
    border-right-color: #eee;
    border-radius: 50%;
    position: relative;
    animation: loader-rotate 1s linear infinite;
    margin: 0 auto
}

@keyframes loader-rotate {
    0% {
        transform: rotate(0)
    }

    100% {
        transform: rotate(360deg)
    }
}

a:active,
a:focus,
a:hover {
    color: #48d58b;
    text-decoration: none
}

.bg-theme-90 {
    background: #4e3ca7;
    background: -webkit-linear-gradient(90deg, #4e3ca7, #5532bd);
    background: -moz-linear-gradient(90deg, #4e3ca7, #5532bd);
    background: -o-linear-gradient(90deg, #4e3ca7, #5532bd);
    background: linear-gradient(90deg, #4e3ca7, #8f20b6)
}

.line-height-normal {
    line-height: normal
}

.small-title {
    font-size: 16px;
    line-height: 25px
}

.bg-theme-solid {
    background: #48d58b
}

.bg-purple {
    background: rgba(41, 45, 194, .2)
}

.bg-yellow {
    background: rgba(255, 204, 111, .2)
}

.bg-green {
    background: rgba(6, 223, 158, .1)
}

.hover-style3 {
    transition: all .3s ease-in-out
}

.hover-style3:hover {
    transform: translate(0, -10px)
}

.sm-avatar {
    width: 2.75rem;
    height: 2.75rem
}

.text-primary {
    color: #48d58b !important
}

.title-box {
    position: relative;
    padding: 20px 0;
    font-size: 60px;
    line-height: 1;
    width: 100px;
    text-align: right
}

@media screen and (min-width:1400px) {
    .container.lg-container {
        max-width: 80%
    }
}

@media screen and (max-width:991px) {
    .title-box {
        font-size: 54px;
        width: 95px
    }
}

@media screen and (max-width:767px) {
    .small-title {
        font-size: 16px;
        line-height: 30px
    }
}

@media screen and (max-width:575px) {
    .title-box {
        font-size: 48px;
        width: 85px
    }
}

.accordion-style01 {
    background: #fff;
    box-shadow: 0 1px 18px 10px rgba(0, 0, 0, .02);
    border-radius: 4px
}

.accordion-style01 .card .counts {
    display: inline-block;
    width: 30px;
    height: 30px;
    font-weight: 600;
    vertical-align: middle;
    line-height: 30px;
    -webkit-border-radius: 100px;
    -moz-border-radius: 100px;
    -o-border-radius: 100px;
    border-radius: 100px;
    text-align: center;
    background: #48d58b;
    background: -webkit-linear-gradient(-45deg, #48d58b, #2fc96b);
    background: -moz-linear-gradient(-45deg, #48d58b, #2fc96b);
    background: -o-linear-gradient(-45deg, #48d58b, #2fc96b);
    background: linear-gradient(-45deg, #48d58b, #2fc96b);
    color: #fff;
    font-size: 12px;
    margin-right: 10px
}

.accordion-style01 .card .item-title {
    display: inline-block;
    vertical-align: middle;
    width: 88%
}

.accordion-style01 .card-header:hover {
    background-color: #f3f8ff
}

.accordion-style01 .card {
    background: #fff;
    box-shadow: none;
    margin-top: 0 !important;
    border: none !important
}

.accordion-style01 .card:last-child {
    border: none
}

.accordion-style01 .card-header {
    border: 0;
    padding: 0;
    transition: all .3s ease 0s;
    background: #fff
}

.accordion-style01 .btn-link {
    text-align: left;
    font-weight: 500;
    font-size: 15px;
    letter-spacing: 1px;
    color: #5a5d80;
    display: block;
    text-decoration: none !important;
    margin: 0;
    cursor: pointer;
    padding: 15px 20px;
    border-bottom: 1px dashed #cee1f8;
    white-space: normal
}

.accordion-style01 .card:last-child .btn-link.collapsed {
    border-bottom: transparent
}

.accordion-style01 .btn-link {
    background: #48d58b;
    background: -webkit-linear-gradient(-45deg, #48d58b, #2fc96b);
    background: -moz-linear-gradient(-45deg, #48d58b, #2fc96b);
    background: -o-linear-gradient(-45deg, #48d58b, #2fc96b);
    background: linear-gradient(-45deg, #48d58b, #2fc96b);
    color: #fff;
    border-bottom: transparent;
    border-left: none !important
}

.accordion-style01 .btn-link.collapsed {
    box-shadow: none;
    background: 0 0;
    color: #5a5d80;
    border-bottom: 1px dashed #cee1f8
}

.accordion-style01 .btn-link.collapsed .counts {
    background: 0 0;
    border: 1px solid #cee1f8;
    color: #48d58b
}

.accordion-style01 .btn-link .counts {
    background: #fff;
    border: 1px solid #cee1f8;
    color: #48d58b
}

.accordion-style01 .card:last-child {
    border-bottom: 1px dashed #cee1f8
}

.accordion-style01 .card-body {
    line-height: 26px;
    font-size: 15px;
    padding: 20px;
    border-bottom: 1px dashed #cee1f8;
    text-align: left
}

.card-header:first-child {
    border-radius: calc(.25rem - 1px) calc(.25rem - 1px) 0 0
}

@media screen and (max-width:991px) {
    .accordion-style01 .btn-link {
        font-size: 14px;
        padding: 12px 18px
    }

    .accordion-style01 .card .counts {
        margin-right: 8px
    }
}

@media screen and (max-width:767px) {
    .accordion-style01 .card .item-title {
        width: 80%
    }

    .accordion-style01 .btn-link {
        font-size: 14px;
        padding: 12px 15px
    }
}

.list-style6 {
    list-style: none
}

.list-style6 li {
    font-size: 16px;
    line-height: 34px;
    padding-left: 30px;
    position: relative
}

.list-style6 li:last-child {
    margin-bottom: 0
}

.list-style6 li:before {
    content: "\e64c";
    font-family: themify;
    font-size: 15px;
    position: absolute;
    top: 0;
    left: 0;
    line-height: 35px;
    color: #06df9e
}

@media screen and (max-width:767px) {
    .list-style6 li {
        font-size: 15px;
        line-height: 32px
    }
}

.list-style7 {
    list-style: none;
    margin: 20px;
    padding: 0
}

.list-style7 li {
    position: relative;
    padding: 0 0 8px 40px;
    margin: 0 0 8px 0;
    font-size: 16px
}

.list-style7 li:last-child {
    border-bottom: none;
    padding-bottom: 0;
    margin-bottom: 0
}

.list-style7 li:before {
    content: ""
}

.list-style7 li i {
    color: #2fc96b;
    font-size: 12px;
    background: rgba(0, 132, 233, .1);
    margin-right: 12px;
    border-radius: 30px;
    padding: 6px;
    position: absolute;
    left: 0;
    top: 2px;
    line-height: 12px
}

@media screen and (max-width:767px) {
    .list-style7 li {
        font-size: 15px
    }
}

.butn {
    background: #48d58b;
    background: -webkit-linear-gradient(-45deg, #48d58b, #2fc96b);
    background: -moz-linear-gradient(-45deg, #48d58b, #2fc96b);
    background: -o-linear-gradient(-45deg, #48d58b, #2fc96b);
    background: linear-gradient(-45deg, #48d58b, #2fc96b);
    cursor: pointer;
    font-weight: 600;
    color: #fff;
    letter-spacing: 1px;
    font-size: 14px;
    line-height: 20px;
    padding: 14px 28px;
    border-radius: 30px;
    text-transform: uppercase;
    display: inline-block;
    vertical-align: middle;
    -webkit-transform: perspective(1px) translateZ(0);
    -moz-transform: perspective(1px) translateZ(0);
    -o-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    position: relative;
    -webkit-transition: all linear .4s;
    -moz-transition: all linear .4s;
    -o-transition: all linear .4s;
    transition: all linear .4s;
    text-align: center;
    border: none
}

.butn:hover {
    color: #fff
}

a.butn:active,
a.butn:focus,
a.butn:hover {
    color: #fff
}

.butn:before {
    background: #48d58b;
    content: "";
    position: absolute;
    z-index: -1;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    display: inline-block;
    -webkit-transform: scaleX(0);
    -ms-transform: scaleX(0);
    -o-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transform-origin: 51%;
    -ms-transform-origin: 51%;
    -o-transform-origin: 51%;
    transform-origin: 51%;
    -webkit-transition-property: -webkit-transform;
    -moz-transition-property: -moz-transform;
    -o-transition-property: -o-transform;
    transition-property: transform;
    -webkit-transition-duration: .3s;
    -moz-transition-duration: .3s;
    -o-transition-duration: .3s;
    transition-duration: .3s;
    border-radius: 22px;
    border: none
}

.butn:active:before,
.butn:focus:before,
.butn:hover:before {
    transform: scaleX(1);
    -webkit-transform: scaleX(1);
    -moz-transform: scaleX(1);
    -o-transform: scaleX(1)
}

@media screen and (max-width:767px) {
    .butn {
        padding: 12px 24px;
        font-size: 13px
    }
}

.butn.style-two {
    background: 0 0;
    border: 1px solid #fff;
    border-radius: 4px;
    display: inline-block;
    padding: 11px 32px;
    font-size: 15px;
    line-height: 28px;
    font-weight: 500;
    text-transform: inherit
}

.butn.style-two:before {
    content: none
}

.butn.style-two:active,
.butn.style-two:focus,
.butn.style-two:hover {
    background: #fff;
    border-radius: 4px;
    color: #1d184a
}

.butn.style-two.reverse {
    background: 0 0;
    color: #1d184a;
    border: 1px solid #5a5d80;
    border-radius: 4px;
    display: inline-block;
    padding: 11px 32px;
    font-size: 15px;
    line-height: 28px;
    font-weight: 500;
    text-transform: inherit
}

.butn.style-two:before {
    content: none
}

.butn.style-two.reverse:active,
.butn.style-two.reverse:focus,
.butn.style-two.reverse:hover {
    background: #1d184a;
    border-radius: 4px;
    color: #fff
}

@media screen and (max-width:767px) {
    .butn.style-two {
        padding: 8px 24px
    }
}

.butn.style-three {
    color: #fff;
    display: inline-block;
    padding: 11px 28px;
    border-radius: 4px;
    line-height: 28px;
    font-weight: 500;
    text-transform: inherit
}

.butn.style-three:before {
    content: none
}

.butn.style-three:active,
.butn.style-three:focus,
.butn.style-three:hover {
    box-shadow: 0 15px 25px 0 rgba(0, 0, 30, .15)
}

a {
    color: #2b2d42;
    font-weight: 500;
    transition: .2s color;
    -webkit-transition: .2s color
}

a:focus,
a:hover {
    color: #2fc96b;
    text-decoration: none;
    outline: 0
}

.navbar-nav li a {
    font-weight: 500;
    color: #585858
}

.navbar-nav li a:after {
    color: #2fc96b;
    content: "";
    display: block;
    width: 0%;
    height: 2px;
    background-color: #2fc96b;
    -webkit-transition: .2s all;
    transition: .2s all
}

.navbar-nav li a:focus:after,
.navbar-nav li a:hover:after {
    width: 100%
}

.navbar-nav li.active a {
    color: #2fc96b
}

.navbar-nav li a:focus:after,
.navbar-nav li a:hover:after,
.navbar-nav li.active a:after {
    width: 100%
}

@media screen and (min-width:992px) {
    .transparent-header .navbar-nav>li.active>a {
        color: #fff
    }

    .transparent-header.scrollHeader .navbar-nav>li.active>a {
        color: #48d58b
    }
}

@media screen and (max-width:991px) {
    .navbar-toggler:after {
        border-top: 2px solid #00c55c;
        border-bottom: 2px solid #00c55c
    }

    .navbar-toggler:before {
        background: #00c55c
    }

    .navbar-toggler.menu-opened:after {
        -webkit-transition: all .3s ease;
        -ms-transition: all .3s ease;
        transition: all .3s ease;
        top: 23px;
        border: 0;
        height: 2px;
        width: 19px;
        background: #00c55c;
        -webkit-transform: rotate(45deg);
        -moz-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
        -o-transform: rotate(45deg);
        transform: rotate(45deg)
    }

    .navbar-toggler.menu-opened:before {
        background: #00c55c;
        top: 23px;
        background: #00c55c;
        width: 19px;
        -webkit-transform: rotate(-45deg);
        -moz-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
        -o-transform: rotate(-45deg);
        transform: rotate(-45deg)
    }

    .sm-bg-theme-90 {
        background: #c52525;
        background: -webkit-linear-gradient(90deg, #48d58b, #2fc96b);
        background: -moz-linear-gradient(90deg, #48d58b, #2fc96b);
        background: -o-linear-gradient(90deg, #48d58b, #2fc96b);
        background: linear-gradient(90deg, #4e3ca7, #8f20b6)
    }
}

.main-banner-style03 {
    padding: 15% 0 17% 0
}

.main-banner-style03 .creative-banner-img {
    position: absolute;
    left: 10px;
    top: -15%
}

.main-banner-style03 .wave-area {
    height: 5%;
    width: 100%;
    position: absolute;
    bottom: 0;
    left: 0;
    background: #fff;
    z-index: 1
}

.main-banner-style03 .wave {
    background: url(https://green.gt/img/banner/wave.svg) repeat-x;
    position: absolute;
    top: -100px;
    width: 6400px;
    height: 100px;
    animation: wave 35s cubic-bezier(.36, .45, .63, .53) infinite;
    transform: translate3d(0, 0, 0)
}

.main-banner-style03 .wave:nth-of-type(2) {
    top: -56px;
    animation: wave 20s cubic-bezier(.36, .45, .63, .53) -125ms infinite, swell 7s ease -1.25s infinite;
    opacity: 1
}

@media screen and (max-width:1399px) {
    .main-banner-style03 {
        padding: 18% 0 22% 0
    }
}

@media screen and (max-width:1199px) {
    .main-banner-style03 .creative-banner-img {
        top: -28%
    }
}

@media screen and (max-width:991px) {
    .main-banner-style03 {
        padding: 120px 0 50px 0
    }

    .main-banner-style03 .creative-banner-img {
        position: relative;
        width: auto;
        float: none !important;
        left: 0;
        top: 0;
        text-align: center
    }

    .main-banner-style03 .creative-banner-img img {
        float: none !important
    }
}

@media screen and (max-width:767px) {
    .main-banner-style03 {
        padding: 90px 0 50px 0
    }

    .main-banner-style03 h1 {
        font-size: 2rem
    }
}

@media screen and (max-width:575px) {
    .main-banner-style03 h1 {
        font-size: 1.8rem
    }
}

.card-style04 {
    border: none;
    text-align: center;
    padding: 40px 20px;
    transition: all .3s ease-out
}

.card-style04:hover {
    background-color: #fff;
    box-shadow: 0 0 30px 0 rgba(0, 0, 0, .18);
    transform: translate(0, -10px);
    -moz-box-shadow: 0 0 30px 0 rgba(0, 0, 0, .18);
    -webkit-box-shadow: 0 0 30px 0 rgba(0, 0, 0, .18);
    -webkit-transform: translate(0, -10px);
    -moz-transform: translate(0, -10px)
}

.card-style04 .card-body {
    padding: 0
}

.card-style04 p {
    font-size: 16px;
    line-height: 25px
}

.card-style04 .icon-box5 {
    font-size: 26px;
    display: flex;
    align-content: center;
    align-items: center;
    justify-content: center;
    height: 80px;
    margin: auto;
    border-radius: 30% 70% 70% 30%/30% 30% 70% 70%;
    box-shadow: 15px 15px 50px rgba(0, 0, 0, .2);
    animation: one-animated 8s infinite;
    margin-bottom: 40px
}

@media screen and (max-width:991px) {
    .card-style04 {
        padding: 30px 10px
    }

    .card-style04 .icon-box5 {
        height: 70px;
        margin-bottom: 25px
    }
}

@media screen and (max-width:767px) {
    .card-style04 p {
        font-size: 15px;
        line-height: 28px
    }
}

.price .item {
    padding: 0 0 50px 0;
    transition: all .3s;
    background: #fff
}

.price .item:hover {
    box-shadow: 0 5px 40px 0 rgba(148, 146, 245, .2)
}

.price.price-style1 .item {
    box-shadow: 0 5px 10px rgba(0, 9, 128, .035), 0 7px 18px rgba(0, 9, 128, .05)
}

.price .type {
    padding-top: 45px;
    position: relative
}

.price .type h4 {
    color: #1d184a;
    font-weight: 700;
    text-transform: uppercase
}

.price .value {
    position: relative
}

.price .value h3 {
    display: inline-block;
    font-size: 25px;
    font-weight: 700;
    position: relative;
    margin-bottom: 0;
    color: #5a5d80
}

.price .value h3 span {
    font-size: 18px;
    position: absolute;
    top: -2px;
    left: -12px;
    color: #5a5d80
}

.price .value .per {
    font-size: 13px;
    color: #5a5d80
}

.price .features ul {
    list-style: none
}

.price .features li {
    padding: 20px 0;
    font-weight: 600;
    font-size: 15px;
    border-bottom: 1px dashed rgba(0, 0, 0, .2)
}

.price .order {
    padding-top: 15px;
    position: relative
}

.price .item.active {
    background: #48d58b;
    background: -webkit-linear-gradient(-45deg, #48d58b, #2fc96b);
    background: -moz-linear-gradient(-45deg, #48d58b, #2fc96b);
    background: -o-linear-gradient(-45deg, #48d58b, #2fc96b);
    background: linear-gradient(-45deg, #48d58b, #2fc96b)
}

.price .item.active h3,
.price .item.active h4 {
    color: #fff
}

.price .item.active .value .per,
.price .item.active .value h3 span {
    color: #fff
}

.price .item.active .features li {
    border-bottom: 1px dashed rgba(255, 255, 255, .2);
    color: #fff
}

.price .item.active.bg-theme-90 {
    background: #48d58b;
    background: -webkit-linear-gradient(90deg, #48d58b, #2fc96b);
    background: -moz-linear-gradient(90deg, #48d58b, #2fc96b);
    background: -o-linear-gradient(90deg, #48d58b, #2fc96b);
    background: linear-gradient(90deg, #48d58b, #2fc96b)
}

@media screen and (max-width:1199px) {
    .price .value h3 {
        font-size: 36px
    }
}

@media screen and (max-width:991px) {
    .price .item {
        padding-bottom: 40px
    }

    .price .type {
        padding-top: 35px
    }

    .price .features li {
        padding: 15px 0;
        font-size: 14px
    }
}

@media screen and (max-width:767px) {
    .price .item {
        padding-bottom: 30px
    }

    .price .value h3 {
        font-size: 32px
    }

    .price .value h3 span {
        font-size: 13px;
        top: 0;
        left: -10px
    }

    .price .value .per {
        font-size: 12px
    }
}

.page-title-section {
    padding: 200px 0 125px;
    text-align: center
}

.page-title-section h1 {
    font-size: 40px;
    font-weight: 600;
    letter-spacing: 1px;
    line-height: 1;
    color: #fff;
    margin-bottom: 0
}

.page-title-section ul {
    margin-bottom: 0;
    margin-top: 15px;
    text-align: center
}

.page-title-section ul li {
    display: inline-block
}

.page-title-section ul li:last-child a {
    color: #fff;
    font-weight: 500;
    opacity: .65
}

.page-title-section ul li:after {
    content: "\f105";
    font-weight: 700;
    vertical-align: middle;
    color: #fff;
    font-family: Font Awesome\ 5 Free;
    padding: 0 5px 0 10px
}

.page-title-section ul li:last-child:after {
    content: none
}

.page-title-section ul li a {
    color: #fff;
    font-size: 14px;
    font-weight: 500
}

@media screen and (max-width:1199px) {
    .page-title-section {
        padding: 165px 0 100px 0
    }

    .page-title-section h1 {
        font-size: 36px;
        line-height: 42px
    }
}

@media screen and (max-width:991px) {
    .page-title-section {
        padding: 140px 0 90px 0;
        margin-top: -71px
    }

    .page-title-section h1 {
        font-size: 32px;
        line-height: 40px
    }

    .page-title-section ul {
        margin-top: 5px
    }

    .page-title-section ul li a {
        font-size: 13px
    }
}

@media screen and (max-width:767px) {
    .page-title-section {
        padding: 140px 0 75px 0
    }
}

.card-style07 {
    background: #fff;
    border-radius: .25rem;
    border: none;
    text-align: center;
    height: 100%;
    transition: all .2s ease-in-out;
    -webkit-transition: all .2s ease-in-out;
    -moz-transition: all .2s ease-in-out;
    -o-transition: all .2s ease-in-out;
    -ms-transition: all .2s ease-in-out
}

.card-style07 .card-body {
    padding: 25px
}

.card-style07 i {
    color: #48d58b
}

.card-style07:hover {
    box-shadow: -1px 9px 18px 0 rgba(75, 81, 91, .1);
    background: #fff
}

.card-style07:hover i {
    animation-name: elementor-animation-wobble-to-top-right;
    animation-duration: 1s;
    animation-timing-function: ease-in-out;
    animation-iteration-count: 1
}

.card-style07:active,
.card-style07:focus,
.card-style07:hover {
    animation-name: elementor-animation-wobble-to-bottom-right;
    animation-duration: 1s;
    animation-timing-function: ease-in-out;
    animation-iteration-count: 1
}

.card-style07 .title-box {
    position: relative;
    padding: 20px 0;
    font-size: 60px;
    line-height: 1;
    width: 2em;
    margin-left: auto;
    margin-right: auto
}

.card-style07 .box-circle-large,
.card-style07 .box-circle-small {
    position: absolute;
    border-radius: 50%;
    transition: all .3s ease-in-out;
    -webkit-transition: all .3s ease-in-out;
    -moz-transition: all .3s ease-in-out;
    -o-transition: all .3s ease-in-out;
    -ms-transition: all .3s ease-in-out
}

.card-style07 .box-circle-large {
    left: 0;
    bottom: 0;
    width: 1.37em;
    height: 1.37em;
    background: rgba(78, 74, 200, .1)
}

.card-style07 .box-circle-small {
    top: 0;
    right: 0;
    width: .59em;
    height: .59em;
    background: rgba(128, 137, 255, .1)
}

.card-style07:hover {
    background: #48d58b;
    background: -webkit-linear-gradient(-45deg, #48d58b, #2fc96b);
    background: -moz-linear-gradient(-45deg, #48d58b, #2fc96b);
    background: -o-linear-gradient(-45deg, #48d58b, #2fc96b);
    background: linear-gradient(-45deg, #48d58b, #2fc96b)
}

.card-style07:hover .box-circle-large {
    transform: scale(1.2)
}

.card-style07:hover .box-circle-small {
    transform: translate3d(0, -35%, 0) rotate(0)
}

.card-style07:hover a,
.card-style07:hover h3,
.card-style07:hover i,
.card-style07:hover p {
    color: #fff
}

.card-style07:hover .box-circle-large {
    background: rgba(255, 255, 255, .1)
}

.card-style07:hover .box-circle-small {
    background: rgba(255, 255, 255, .2)
}

@media screen and (max-width:991px) {
    .card-style07 .title-box {
        font-size: 50px
    }
}

@media screen and (max-width:767px) {
    .card-style07 .title-box {
        font-size: 42px
    }
}

.clients-style2 img {
    opacity: .6;
    transition-duration: .3s;
    -webkit-transition-duration: .3s;
    -moz-transition-duration: .3s;
    -o-transition-duration: .3s
}

.clients-style2 img:hover {
    opacity: 1
}

.counter-box02 {
    position: relative
}

.counter-box02 .right-shape {
    position: absolute;
    right: 0;
    bottom: -7px;
    width: 300px
}

.counter-box02 .left-shape {
    position: absolute;
    background: url(https://green.gt/img/bg/bg-03.png) no-repeat center top;
    width: 100%;
    top: 0;
    left: 0;
    height: 100%;
    background-size: cover;
    opacity: .2
}

@media screen and (max-width:1399px) {
    .counter-box02 .right-shape {
        right: -100px;
        bottom: -34px
    }
}

.card-style10 {
    border: none;
    box-shadow: -1px 9px 18px 0 rgba(75, 81, 91, .1);
    margin: 30px;
    padding: 60px 40px 60px 40px
}

.card-style10 .card-body {
    padding: 0
}

.card-style10 h4 {
    margin-bottom: 20px
}

.card-style10 h4 a {
    color: #1d184a;
    font-size: 18px
}

.card-style10 h4 a:hover {
    color: #48d58b
}

.card-style10 p {
    line-height: 30px
}

.card-style10 .card-img {
    height: 120px;
    width: 120px;
    line-height: 120px;
    border-radius: 50%;
    background-color: #e6ecff;
    padding: 0 15px;
    margin: 0 auto 30px auto
}

.card-style10 .card-img img {
    border-radius: 25%;
    vertical-align: middle
}

.card-style10 a span {
    font-size: 24px;
    display: inline-block;
    vertical-align: middle;
    margin-top: -2px
}

@media screen and (max-width:1199px) {
    .card-style10 {
        padding: 50px 30px 50px 30px
    }
}

@media screen and (max-width:767px) {
    .card-style10 {
        padding: 35px 25px 35px 25px;
        margin: 30px 25px
    }
}

.fullscreen-bg {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    overflow: hidden;
    z-index: -100
}

.fullscreen-bg__video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

@media (min-aspect-ratio:16 / 9) {
    .fullscreen-bg__video {
        height: 300%;
        top: -100%
    }
}

@media (max-aspect-ratio:16 / 9) {
    .fullscreen-bg__video {
        width: 300%;
        left: -100%
    }
}

.testmonial-style08 {
    background-image: linear-gradient(to bottom, #48d58b 0, #48d58b 50%, #48d58b 50%, #fff 50%, #fff 100%)
}

.widget-block {
    border: 1px solid #f5f5f5;
    -webkit-box-shadow: 0 2px 4px 0 rgba(12, 0, 46, .04);
    box-shadow: 0 2px 4px 0 rgba(12, 0, 46, .04);
    padding: 40px;
    margin-bottom: 50px;
    word-break: break-word
}

.widget-block.last,
.widget-block:last-child {
    margin-bottom: 0
}

.widget-block h4 {
    font-size: 22px;
    color: #48d58b;
    border-bottom: 1px solid #e4e4e4;
    padding-bottom: 1.5rem;
    margin-bottom: 3rem
}

.widget-block .list-style-icon {
    list-style: none;
    margin-bottom: 0;
    padding-bottom: 0
}

.widget-block .list-style-icon li {
    border-bottom: 1px solid #e4e4e4;
    color: #596982;
    padding-left: 35px;
    position: relative;
    margin-bottom: 30px;
    padding-bottom: 15px
}

.widget-block .list-style-icon li:last-child {
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: none
}

.widget-block .list-style-icon li i {
    position: absolute;
    left: 0;
    top: 4px;
    color: #48d58b;
    font-size: 20px
}

.widget-block .list-style-icon li h6 {
    font-size: 16px;
    margin-bottom: 5px;
    color: #243f67
}

.widget-block .list-style-icon li p {
    margin-bottom: 0;
    color: #596982
}

@media screen and (max-width:1199px) {
    .widget-block {
        margin-bottom: 40px;
        padding: 35px
    }
}

@media screen and (max-width:767px) {
    .widget-block h4 {
        font-size: 20px;
        margin-bottom: 30px
    }

    .widget-block .list-style-icon li {
        margin-bottom: 25px;
        padding-bottom: 13px
    }
}

.custom-dot {
    display: inline-block;
    z-index: 1;
    margin-top: 20px
}

.custom-dot span {
    width: 12px;
    height: 12px;
    margin: 5px 5px 0 5px;
    background: 0 0;
    cursor: pointer;
    display: block;
    border: 1px solid #6e6e6f;
    border-radius: 30px;
    transition-duration: .3s;
    -webkit-backface-visibility: visible;
    -moz-backface-visibility: visible;
    -o-backface-visibility: visible;
    -webkit-transition-duration: .3s;
    -moz-transition-duration: .3s;
    -o-transition-duration: .3s
}

.custom-dot span:hover {
    background: #aaa;
    border-radius: 30px;
    -webkit-backface-visibility: visible;
    -moz-backface-visibility: visible;
    -o-backface-visibility: visible
}

.custom-dot.active span {
    width: 12px;
    height: 12px;
    background: #48d58b;
    border-color: #48d58b;
    -webkit-transition-duration: .3s;
    -moz-transition-duration: .3s;
    -o-transition-duration: .3s;
    transition-duration: .3s
}

@media screen and (max-width:767px) {
    .custom-dot {
        margin-top: 15px
    }
}

.owl-nav .owl-next {
    color: #48d58b;
    font-size: 43px;
    text-align: center;
    width: 40px;
    height: 40px;
    background: #fff !important
}

.owl-nav .owl-prev {
    color: #48d58b;
    font-size: 43px;
    text-align: center;
    width: 40px;
    height: 40px;
    background: #fff !important;
    left: 0;
    -webkit-transition: all .4s ease 0s;
    -moz-transition: all .4s ease 0s;
    -o-transition: all .4s ease 0s;
    transition: all .4s ease 0s;
    -webkit-box-shadow: 0 5px 28px 0 rgba(50, 50, 50, .1);
    -moz-box-shadow: 0 5px 28px 0 rgba(50, 50, 50, .1);
    -o-box-shadow: 0 5px 28px 0 rgba(50, 50, 50, .1);
    box-shadow: 0 5px 28px 0 rgba(50, 50, 50, .1)
}

.owl-nav .owl-next {
    -webkit-transition: all .4s ease 0s;
    -moz-transition: all .4s ease 0s;
    -o-transition: all .4s ease 0s;
    transition: all .4s ease 0s;
    -webkit-box-shadow: 0 5px 28px 0 rgba(50, 50, 50, .1);
    -moz-box-shadow: 0 5px 28px 0 rgba(50, 50, 50, .1);
    -o-box-shadow: 0 5px 28px 0 rgba(50, 50, 50, .1);
    box-shadow: 0 5px 28px 0 rgba(50, 50, 50, .1)
}

.media-style1 {
    transition: all .5s ease-in-out 0s;
    box-shadow: 0 5px 24px 6px rgba(0, 0, 0, .06);
    border: none;
    padding: 2.5rem;
    height: 100%;
    border-radius: .25rem;
    background: #fff;
    position: relative
}

.media-style1:after {
    background: #48d58b;
    background: -webkit-linear-gradient(-45deg, #48d58b, #2fc96b);
    background: -moz-linear-gradient(-45deg, #48d58b, #2fc96b);
    background: -o-linear-gradient(-45deg, #48d58b, #2fc96b);
    background: linear-gradient(-45deg, #48d58b, #2fc96b);
    border-radius: .25rem;
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
    width: 100%;
    content: "";
    opacity: 0;
    transition: all .5s ease-in-out 0s;
    z-index: 1
}

.media-style1:hover:after {
    opacity: 1
}

.media-style1 h3,
.media-style1 i,
.media-style1 p {
    position: relative;
    z-index: 9
}

.media-style1 i {
    color: #48d58b
}

.media-style1:hover h3,
.media-style1:hover i,
.media-style1:hover p {
    color: #fff
}

@media screen and (max-width:767px) {
    .media-style1 {
        padding: 1.8rem
    }
}

.team-style02 {
    box-shadow: 0 0 16px 0 rgba(187, 187, 187, .48);
    background: #fff;
    overflow: hidden;
    transition: all .3s ease;
    z-index: 1;
    position: relative;
    border-radius: 4px
}

.team-style02 .team-img {
    overflow: hidden;
    position: relative
}

.team-style02 .team-img img {
    transition: all .7s ease-in-out
}

.team-style02 .team-icons {
    position: absolute;
    bottom: 35%;
    left: 0;
    right: 0;
    text-align: center;
    transition: opacity .3s, bottom .3s;
    display: block;
    opacity: 0
}

.team-style02 .team-icons i {
    background: #fff;
    height: 40px;
    width: 40px;
    line-height: 40px;
    border-radius: 50px;
    margin-left: 10px
}

.team-style02:hover .team-icons {
    opacity: 1
}

@media screen and (max-width:767px) {
    .team-style02 .team-img img {
        width: 100%
    }

    .team-style02 .team-icons {
        bottom: 120px
    }
}

footer {
    padding: 50px 0 0;
    background: #1f1f1f;
    color: #939393
}

footer p {
    margin-bottom: 0
}

footer h3 {
    font-size: 18px;
    font-weight: 500;
    margin-bottom: 30px;
    line-height: 1;
    position: relative
}

footer h3:after {
    content: "";
    display: block;
    width: 70px;
    height: 2px;
    background: #48d58b;
    margin: 12px auto 0 auto
}

.footer-style3 {
    color: #939393;
    padding-top: 40px;
    z-index: 0
}

.footer-style3 .footer-icon ul li {
    display: inline-block;
    margin-right: 20px
}

.footer-style3 ul {
    list-style: none
}

.footer-style3 ul li {
    margin: 10px 0;
    font-size: 14px
}

.footer-style3 ul li:last-child {
    margin-bottom: 0;
    padding-bottom: 0
}

.footer-style3 h3:after {
    content: "";
    background: unset;
    margin: 0
}

.footer-style3-bottom {
    border-top: 1px solid rgb(1 191 92 / 25%);
    text-align: center;
    padding: 10px 0;
    margin-top: 20px
}

.footer-style3 h3 {
    color: #cfcfcf;
    font-size: 18px;
    font-weight: 500;
    margin-bottom: 20px
}

.footer-style3 a {
    color: #939393
}

.footer-style3 a:hover {
    color: #cfcfcf
}

@media screen and (max-width:1199px) {
    .footer-style3 {
        padding-top: 100px;
        margin-top: 0
    }

    .footer-style3-bottom {
        margin-top: 70px
    }
}

@media screen and (max-width:991px) {
    .footer-style3 {
        padding-top: 100px;
        margin-top: 0
    }

    .footer-style3-bottom {
        margin-top: 50px
    }
}

@media screen and (max-width:767px) {
    .footer-style3 ul li {
        font-size: 16px;
        padding: 4px 0 4px 0
    }
}

.list-style8 {
    list-style: none;
    margin-bottom: 0
}

.list-style8 li {
    font-size: 15px;
    line-height: 30px;
    padding-left: 30px;
    position: relative;
    margin-bottom: 10px
}

.list-style8 li:last-child {
    margin-bottom: 0
}

.list-style8 li:before {
    content: "\e64c";
    font-family: themify;
    font-size: 15px;
    position: absolute;
    top: 0;
    left: 0;
    line-height: 34px;
    color: #06df9e
}

@media screen and (max-width:767px) {
    .list-style8 li {
        font-size: 14px;
        line-height: 30px
    }
}

/*! CSS Used from: https://api.tiles.mapbox.com/mapbox-gl-js/v2.9.2/mapbox-gl.css */
.mapboxgl-map {
    font: 12px/20px Helvetica Neue, Arial, Helvetica, sans-serif;
    overflow: hidden;
    position: relative;
    -webkit-tap-highlight-color: rgb(0 0 0/0)
}

.mapboxgl-canvas {
    position: absolute;
    left: 0;
    top: 0
}

.mapboxgl-map:-webkit-full-screen {
    width: 100%;
    height: 100%
}

.mapboxgl-canary {
    background-color: salmon
}

.mapboxgl-canvas-container.mapboxgl-interactive {
    cursor: grab;
    -webkit-user-select: none;
    user-select: none
}

.mapboxgl-canvas-container.mapboxgl-interactive:active {
    cursor: grabbing
}

.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate,
.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate .mapboxgl-canvas {
    touch-action: pan-x pan-y
}

.mapboxgl-canvas-container.mapboxgl-touch-drag-pan,
.mapboxgl-canvas-container.mapboxgl-touch-drag-pan .mapboxgl-canvas {
    touch-action: pinch-zoom
}

.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate.mapboxgl-touch-drag-pan,
.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate.mapboxgl-touch-drag-pan .mapboxgl-canvas {
    touch-action: none
}

.mapboxgl-ctrl-bottom-left,
.mapboxgl-ctrl-bottom-right,
.mapboxgl-ctrl-top-left,
.mapboxgl-ctrl-top-right {
    position: absolute;
    pointer-events: none;
    z-index: 2
}

.mapboxgl-ctrl-top-left {
    top: 0;
    left: 0
}

.mapboxgl-ctrl-top-right {
    top: 0;
    right: 0
}

.mapboxgl-ctrl-bottom-left {
    bottom: 0;
    left: 0
}

.mapboxgl-ctrl-bottom-right {
    right: 0;
    bottom: 0
}

.mapboxgl-ctrl {
    clear: both;
    pointer-events: auto;
    transform: translate(0)
}

.mapboxgl-ctrl-bottom-left .mapboxgl-ctrl {
    margin: 0 0 10px 10px;
    float: left
}

.mapboxgl-ctrl-bottom-right .mapboxgl-ctrl {
    margin: 0 10px 10px 0;
    float: right
}

.mapboxgl-ctrl button .mapboxgl-ctrl-icon {
    display: block;
    width: 100%;
    height: 100%;
    background-repeat: no-repeat;
    background-position: 50%
}

@media (-ms-high-contrast:active) {
    .mapboxgl-ctrl-icon {
        background-color: transparent
    }
}

.mapboxgl-ctrl-attrib-button:focus {
    box-shadow: 0 0 2px 2px rgb(0 150 255/100%)
}

.mapboxgl-ctrl button:disabled {
    cursor: not-allowed
}

.mapboxgl-ctrl button:disabled .mapboxgl-ctrl-icon {
    opacity: .25
}

a.mapboxgl-ctrl-logo {
    width: 88px;
    height: 23px;
    margin: 0 0 -4px -4px;
    display: block;
    background-repeat: no-repeat;
    cursor: pointer;
    overflow: hidden;
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg width='88' height='23' viewBox='0 0 88 23' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' fill-rule='evenodd'%3E %3Cdefs%3E %3Cpath id='logo' d='M11.5 2.25c5.105 0 9.25 4.145 9.25 9.25s-4.145 9.25-9.25 9.25-9.25-4.145-9.25-9.25 4.145-9.25 9.25-9.25zM6.997 15.983c-.051-.338-.828-5.802 2.233-8.873a4.395 4.395 0 013.13-1.28c1.27 0 2.49.51 3.39 1.42.91.9 1.42 2.12 1.42 3.39 0 1.18-.449 2.301-1.28 3.13C12.72 16.93 7 16 7 16l-.003-.017zM15.3 10.5l-2 .8-.8 2-.8-2-2-.8 2-.8.8-2 .8 2 2 .8z'/%3E %3Cpath id='text' d='M50.63 8c.13 0 .23.1.23.23V9c.7-.76 1.7-1.18 2.73-1.18 2.17 0 3.95 1.85 3.95 4.17s-1.77 4.19-3.94 4.19c-1.04 0-2.03-.43-2.74-1.18v3.77c0 .13-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V8.23c0-.12.1-.23.23-.23h1.4zm-3.86.01c.01 0 .01 0 .01-.01.13 0 .22.1.22.22v7.55c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V15c-.7.76-1.69 1.19-2.73 1.19-2.17 0-3.94-1.87-3.94-4.19 0-2.32 1.77-4.19 3.94-4.19 1.03 0 2.02.43 2.73 1.18v-.75c0-.12.1-.23.23-.23h1.4zm26.375-.19a4.24 4.24 0 00-4.16 3.29c-.13.59-.13 1.19 0 1.77a4.233 4.233 0 004.17 3.3c2.35 0 4.26-1.87 4.26-4.19 0-2.32-1.9-4.17-4.27-4.17zM60.63 5c.13 0 .23.1.23.23v3.76c.7-.76 1.7-1.18 2.73-1.18 1.88 0 3.45 1.4 3.84 3.28.13.59.13 1.2 0 1.8-.39 1.88-1.96 3.29-3.84 3.29-1.03 0-2.02-.43-2.73-1.18v.77c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V5.23c0-.12.1-.23.23-.23h1.4zm-34 11h-1.4c-.13 0-.23-.11-.23-.23V8.22c.01-.13.1-.22.23-.22h1.4c.13 0 .22.11.23.22v.68c.5-.68 1.3-1.09 2.16-1.1h.03c1.09 0 2.09.6 2.6 1.55.45-.95 1.4-1.55 2.44-1.56 1.62 0 2.93 1.25 2.9 2.78l.03 5.2c0 .13-.1.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.8 0-1.46.7-1.59 1.62l.01 4.68c0 .13-.11.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.85 0-1.54.79-1.6 1.8v4.5c0 .13-.1.23-.23.23zm53.615 0h-1.61c-.04 0-.08-.01-.12-.03-.09-.06-.13-.19-.06-.28l2.43-3.71-2.39-3.65a.213.213 0 01-.03-.12c0-.12.09-.21.21-.21h1.61c.13 0 .24.06.3.17l1.41 2.37 1.4-2.37a.34.34 0 01.3-.17h1.6c.04 0 .08.01.12.03.09.06.13.19.06.28l-2.37 3.65 2.43 3.7c0 .05.01.09.01.13 0 .12-.09.21-.21.21h-1.61c-.13 0-.24-.06-.3-.17l-1.44-2.42-1.44 2.42a.34.34 0 01-.3.17zm-7.12-1.49c-1.33 0-2.42-1.12-2.42-2.51 0-1.39 1.08-2.52 2.42-2.52 1.33 0 2.42 1.12 2.42 2.51 0 1.39-1.08 2.51-2.42 2.52zm-19.865 0c-1.32 0-2.39-1.11-2.42-2.48v-.07c.02-1.38 1.09-2.49 2.4-2.49 1.32 0 2.41 1.12 2.41 2.51 0 1.39-1.07 2.52-2.39 2.53zm-8.11-2.48c-.01 1.37-1.09 2.47-2.41 2.47s-2.42-1.12-2.42-2.51c0-1.39 1.08-2.52 2.4-2.52 1.33 0 2.39 1.11 2.41 2.48l.02.08zm18.12 2.47c-1.32 0-2.39-1.11-2.41-2.48v-.06c.02-1.38 1.09-2.48 2.41-2.48s2.42 1.12 2.42 2.51c0 1.39-1.09 2.51-2.42 2.51z'/%3E %3C/defs%3E %3Cmask id='clip'%3E %3Crect x='0' y='0' width='100%25' height='100%25' fill='white'/%3E %3Cuse xlink:href='%23logo'/%3E %3Cuse xlink:href='%23text'/%3E %3C/mask%3E %3Cg id='outline' opacity='0.3' stroke='%23000' stroke-width='3'%3E %3Ccircle mask='url(%23clip)' cx='11.5' cy='11.5' r='9.25'/%3E %3Cuse xlink:href='%23text' mask='url(%23clip)'/%3E %3C/g%3E %3Cg id='fill' opacity='0.9' fill='%23fff'%3E %3Cuse xlink:href='%23logo'/%3E %3Cuse xlink:href='%23text'/%3E %3C/g%3E %3C/svg%3E")
}

@media (-ms-high-contrast:active) {
    a.mapboxgl-ctrl-logo {
        background-color: transparent;
        background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg width='88' height='23' viewBox='0 0 88 23' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' fill-rule='evenodd'%3E %3Cdefs%3E %3Cpath id='logo' d='M11.5 2.25c5.105 0 9.25 4.145 9.25 9.25s-4.145 9.25-9.25 9.25-9.25-4.145-9.25-9.25 4.145-9.25 9.25-9.25zM6.997 15.983c-.051-.338-.828-5.802 2.233-8.873a4.395 4.395 0 013.13-1.28c1.27 0 2.49.51 3.39 1.42.91.9 1.42 2.12 1.42 3.39 0 1.18-.449 2.301-1.28 3.13C12.72 16.93 7 16 7 16l-.003-.017zM15.3 10.5l-2 .8-.8 2-.8-2-2-.8 2-.8.8-2 .8 2 2 .8z'/%3E %3Cpath id='text' d='M50.63 8c.13 0 .23.1.23.23V9c.7-.76 1.7-1.18 2.73-1.18 2.17 0 3.95 1.85 3.95 4.17s-1.77 4.19-3.94 4.19c-1.04 0-2.03-.43-2.74-1.18v3.77c0 .13-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V8.23c0-.12.1-.23.23-.23h1.4zm-3.86.01c.01 0 .01 0 .01-.01.13 0 .22.1.22.22v7.55c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V15c-.7.76-1.69 1.19-2.73 1.19-2.17 0-3.94-1.87-3.94-4.19 0-2.32 1.77-4.19 3.94-4.19 1.03 0 2.02.43 2.73 1.18v-.75c0-.12.1-.23.23-.23h1.4zm26.375-.19a4.24 4.24 0 00-4.16 3.29c-.13.59-.13 1.19 0 1.77a4.233 4.233 0 004.17 3.3c2.35 0 4.26-1.87 4.26-4.19 0-2.32-1.9-4.17-4.27-4.17zM60.63 5c.13 0 .23.1.23.23v3.76c.7-.76 1.7-1.18 2.73-1.18 1.88 0 3.45 1.4 3.84 3.28.13.59.13 1.2 0 1.8-.39 1.88-1.96 3.29-3.84 3.29-1.03 0-2.02-.43-2.73-1.18v.77c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V5.23c0-.12.1-.23.23-.23h1.4zm-34 11h-1.4c-.13 0-.23-.11-.23-.23V8.22c.01-.13.1-.22.23-.22h1.4c.13 0 .22.11.23.22v.68c.5-.68 1.3-1.09 2.16-1.1h.03c1.09 0 2.09.6 2.6 1.55.45-.95 1.4-1.55 2.44-1.56 1.62 0 2.93 1.25 2.9 2.78l.03 5.2c0 .13-.1.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.8 0-1.46.7-1.59 1.62l.01 4.68c0 .13-.11.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.85 0-1.54.79-1.6 1.8v4.5c0 .13-.1.23-.23.23zm53.615 0h-1.61c-.04 0-.08-.01-.12-.03-.09-.06-.13-.19-.06-.28l2.43-3.71-2.39-3.65a.213.213 0 01-.03-.12c0-.12.09-.21.21-.21h1.61c.13 0 .24.06.3.17l1.41 2.37 1.4-2.37a.34.34 0 01.3-.17h1.6c.04 0 .08.01.12.03.09.06.13.19.06.28l-2.37 3.65 2.43 3.7c0 .05.01.09.01.13 0 .12-.09.21-.21.21h-1.61c-.13 0-.24-.06-.3-.17l-1.44-2.42-1.44 2.42a.34.34 0 01-.3.17zm-7.12-1.49c-1.33 0-2.42-1.12-2.42-2.51 0-1.39 1.08-2.52 2.42-2.52 1.33 0 2.42 1.12 2.42 2.51 0 1.39-1.08 2.51-2.42 2.52zm-19.865 0c-1.32 0-2.39-1.11-2.42-2.48v-.07c.02-1.38 1.09-2.49 2.4-2.49 1.32 0 2.41 1.12 2.41 2.51 0 1.39-1.07 2.52-2.39 2.53zm-8.11-2.48c-.01 1.37-1.09 2.47-2.41 2.47s-2.42-1.12-2.42-2.51c0-1.39 1.08-2.52 2.4-2.52 1.33 0 2.39 1.11 2.41 2.48l.02.08zm18.12 2.47c-1.32 0-2.39-1.11-2.41-2.48v-.06c.02-1.38 1.09-2.48 2.41-2.48s2.42 1.12 2.42 2.51c0 1.39-1.09 2.51-2.42 2.51z'/%3E %3C/defs%3E %3Cmask id='clip'%3E %3Crect x='0' y='0' width='100%25' height='100%25' fill='white'/%3E %3Cuse xlink:href='%23logo'/%3E %3Cuse xlink:href='%23text'/%3E %3C/mask%3E %3Cg id='outline' opacity='1' stroke='%23000' stroke-width='3'%3E %3Ccircle mask='url(%23clip)' cx='11.5' cy='11.5' r='9.25'/%3E %3Cuse xlink:href='%23text' mask='url(%23clip)'/%3E %3C/g%3E %3Cg id='fill' opacity='1' fill='%23fff'%3E %3Cuse xlink:href='%23logo'/%3E %3Cuse xlink:href='%23text'/%3E %3C/g%3E %3C/svg%3E")
    }
}

@media (-ms-high-contrast:black-on-white) {
    a.mapboxgl-ctrl-logo {
        background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg width='88' height='23' viewBox='0 0 88 23' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' fill-rule='evenodd'%3E %3Cdefs%3E %3Cpath id='logo' d='M11.5 2.25c5.105 0 9.25 4.145 9.25 9.25s-4.145 9.25-9.25 9.25-9.25-4.145-9.25-9.25 4.145-9.25 9.25-9.25zM6.997 15.983c-.051-.338-.828-5.802 2.233-8.873a4.395 4.395 0 013.13-1.28c1.27 0 2.49.51 3.39 1.42.91.9 1.42 2.12 1.42 3.39 0 1.18-.449 2.301-1.28 3.13C12.72 16.93 7 16 7 16l-.003-.017zM15.3 10.5l-2 .8-.8 2-.8-2-2-.8 2-.8.8-2 .8 2 2 .8z'/%3E %3Cpath id='text' d='M50.63 8c.13 0 .23.1.23.23V9c.7-.76 1.7-1.18 2.73-1.18 2.17 0 3.95 1.85 3.95 4.17s-1.77 4.19-3.94 4.19c-1.04 0-2.03-.43-2.74-1.18v3.77c0 .13-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V8.23c0-.12.1-.23.23-.23h1.4zm-3.86.01c.01 0 .01 0 .01-.01.13 0 .22.1.22.22v7.55c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V15c-.7.76-1.69 1.19-2.73 1.19-2.17 0-3.94-1.87-3.94-4.19 0-2.32 1.77-4.19 3.94-4.19 1.03 0 2.02.43 2.73 1.18v-.75c0-.12.1-.23.23-.23h1.4zm26.375-.19a4.24 4.24 0 00-4.16 3.29c-.13.59-.13 1.19 0 1.77a4.233 4.233 0 004.17 3.3c2.35 0 4.26-1.87 4.26-4.19 0-2.32-1.9-4.17-4.27-4.17zM60.63 5c.13 0 .23.1.23.23v3.76c.7-.76 1.7-1.18 2.73-1.18 1.88 0 3.45 1.4 3.84 3.28.13.59.13 1.2 0 1.8-.39 1.88-1.96 3.29-3.84 3.29-1.03 0-2.02-.43-2.73-1.18v.77c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V5.23c0-.12.1-.23.23-.23h1.4zm-34 11h-1.4c-.13 0-.23-.11-.23-.23V8.22c.01-.13.1-.22.23-.22h1.4c.13 0 .22.11.23.22v.68c.5-.68 1.3-1.09 2.16-1.1h.03c1.09 0 2.09.6 2.6 1.55.45-.95 1.4-1.55 2.44-1.56 1.62 0 2.93 1.25 2.9 2.78l.03 5.2c0 .13-.1.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.8 0-1.46.7-1.59 1.62l.01 4.68c0 .13-.11.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.85 0-1.54.79-1.6 1.8v4.5c0 .13-.1.23-.23.23zm53.615 0h-1.61c-.04 0-.08-.01-.12-.03-.09-.06-.13-.19-.06-.28l2.43-3.71-2.39-3.65a.213.213 0 01-.03-.12c0-.12.09-.21.21-.21h1.61c.13 0 .24.06.3.17l1.41 2.37 1.4-2.37a.34.34 0 01.3-.17h1.6c.04 0 .08.01.12.03.09.06.13.19.06.28l-2.37 3.65 2.43 3.7c0 .05.01.09.01.13 0 .12-.09.21-.21.21h-1.61c-.13 0-.24-.06-.3-.17l-1.44-2.42-1.44 2.42a.34.34 0 01-.3.17zm-7.12-1.49c-1.33 0-2.42-1.12-2.42-2.51 0-1.39 1.08-2.52 2.42-2.52 1.33 0 2.42 1.12 2.42 2.51 0 1.39-1.08 2.51-2.42 2.52zm-19.865 0c-1.32 0-2.39-1.11-2.42-2.48v-.07c.02-1.38 1.09-2.49 2.4-2.49 1.32 0 2.41 1.12 2.41 2.51 0 1.39-1.07 2.52-2.39 2.53zm-8.11-2.48c-.01 1.37-1.09 2.47-2.41 2.47s-2.42-1.12-2.42-2.51c0-1.39 1.08-2.52 2.4-2.52 1.33 0 2.39 1.11 2.41 2.48l.02.08zm18.12 2.47c-1.32 0-2.39-1.11-2.41-2.48v-.06c.02-1.38 1.09-2.48 2.41-2.48s2.42 1.12 2.42 2.51c0 1.39-1.09 2.51-2.42 2.51z'/%3E %3C/defs%3E %3Cmask id='clip'%3E %3Crect x='0' y='0' width='100%25' height='100%25' fill='white'/%3E %3Cuse xlink:href='%23logo'/%3E %3Cuse xlink:href='%23text'/%3E %3C/mask%3E %3Cg id='outline' opacity='1' stroke='%23fff' stroke-width='3' fill='%23fff'%3E %3Ccircle mask='url(%23clip)' cx='11.5' cy='11.5' r='9.25'/%3E %3Cuse xlink:href='%23text' mask='url(%23clip)'/%3E %3C/g%3E %3Cg id='fill' opacity='1' fill='%23000'%3E %3Cuse xlink:href='%23logo'/%3E %3Cuse xlink:href='%23text'/%3E %3C/g%3E %3C/svg%3E")
    }
}

.mapboxgl-ctrl.mapboxgl-ctrl-attrib {
    padding: 0 5px;
    background-color: rgb(255 255 255/50%);
    margin: 0
}

@media screen {
    .mapboxgl-ctrl-attrib-button {
        display: none;
        cursor: pointer;
        position: absolute;
        background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg width='24' height='24' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd'%3E %3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E %3C/svg%3E");
        background-color: rgb(255 255 255/50%);
        width: 24px;
        height: 24px;
        box-sizing: border-box;
        border-radius: 12px;
        outline: 0;
        top: 0;
        right: 0;
        border: 0
    }
}

.mapboxgl-ctrl-attrib a {
    color: rgb(0 0 0/75%);
    text-decoration: none
}

.mapboxgl-ctrl-attrib a:hover {
    color: inherit;
    text-decoration: underline
}

.mapboxgl-ctrl-attrib .mapbox-improve-map {
    font-weight: 700;
    margin-left: 2px
}

@media print {
    .mapbox-improve-map {
        display: none
    }
}

/* Ajuste para que el contenido no quede detrás del banner */
.main-wrapper {
    position: relative;
    z-index: 1;
}

/* Mejorar legibilidad de secciones sobre el fondo */
section {
    position: relative;
    z-index: 2;
}


/* Ajustar secciones con fondo claro */
.bg-light {
    background: rgba(248, 249, 250, 0.95) !important;
    backdrop-filter: blur(5px);
}

/* Responsive: Reducir en móviles */
@media (max-width: 767px) {
    .spiderweb { font-size: 50px; }
    .halloween-banner h3 { font-size: 13px; padding: 0 10px; }
    .halloween-banner { top: 56px; padding: 6px 0; }
}

@media (max-width: 991px) {
    .halloween-banner { 
        top: 0; 
        position: relative;
        padding: 8px 0;
    }
    .halloween-banner h3 { 
        font-size: 14px; 
    }
}

/* ============================================
    🎥 SECCIÓN DE CÁMARAS - FONDO MODERNO
    ============================================ */

.cameras-section-bg {
    background: linear-gradient(135deg, 
        #0a1628 0%, 
        #1a2744 20%,
        #2d1b4e 40%,
        #1f1648 60%,
        #1a2744 80%,
        #0a1628 100%
    );
    position: relative;
}

/* Fondo animado con gradiente */
.cameras-animated-bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(45deg,
        rgb(72, 213, 140) 0%,
        rgb(78, 60, 167) 25%,
        rgb(142, 32, 182) 50%,
        rgb(30, 59, 114) 75%,
        rgb(72, 213, 140) 100%
    );
    background-size: 400% 400%;
    animation: camerasGradientMove 15s ease infinite;
    z-index: 0;
}

/* Patrón de puntos tecnológicos */
.cameras-pattern {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: 
        radial-gradient(circle at 20% 30%, rgba(72, 213, 139, 0.25) 0%, transparent 40%),
        radial-gradient(circle at 80% 70%, rgba(126, 34, 206, 0.25) 0%, transparent 40%),
        radial-gradient(circle at 40% 80%, rgba(42, 82, 152, 0.2) 0%, transparent 40%);
    z-index: 0;
    animation: patternFloat 20s ease-in-out infinite;
}

/* Contenedor del ícono de cámara */
.camera-icon-container {
    position: relative;
    width: 300px;
    height: 300px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* Anillos animados alrededor del ícono */
.camera-ring {
    position: absolute;
    border: 3px solid rgba(72, 213, 139, 0.5);
    border-radius: 50%;
    animation: cameraRingPulse 3s ease-out infinite;
    box-shadow: 0 0 20px rgba(72, 213, 139, 0.3);
}

.camera-ring-1 {
    width: 150px;
    height: 150px;
    animation-delay: 0s;
}

.camera-ring-2 {
    width: 200px;
    height: 200px;
    animation-delay: 1s;
    border-color: rgba(143, 32, 182, 0.5);
    box-shadow: 0 0 20px rgba(143, 32, 182, 0.3);
}

.camera-ring-3 {
    width: 250px;
    height: 250px;
    animation-delay: 2s;
    border-color: rgba(78, 60, 167, 0.5);
    box-shadow: 0 0 20px rgba(78, 60, 167, 0.3);
}

/* Ícono principal de cámara */
.camera-main-icon {
    font-size: 120px;
    color: #48d58b;
    z-index: 10;
    filter: drop-shadow(0 0 40px rgba(72, 213, 139, 0.8))
            drop-shadow(0 0 60px rgba(72, 213, 139, 0.5));
    animation: cameraIconFloat 4s ease-in-out infinite;
}

/* Animaciones */
@keyframes camerasGradientMove {
    0%, 100% {
        background-position: 0% 50%;
    }
    50% {
        background-position: 100% 50%;
    }
}

@keyframes patternFloat {
    0%, 100% {
        transform: translate(0, 0) scale(1);
        opacity: 1;
    }
    50% {
        transform: translate(30px, -30px) scale(1.1);
        opacity: 0.8;
    }
}

@keyframes cameraRingPulse {
    0% {
        transform: scale(0.8);
        opacity: 0;
    }
    40% {
        opacity: 0.8;
    }
    60% {
        opacity: 0.8;
    }
    100% {
        transform: scale(1.4);
        opacity: 0;
    }
}

@keyframes cameraIconFloat {
    0%, 100% {
        transform: translateY(0) scale(1);
    }
    50% {
        transform: translateY(-20px) scale(1.1);
    }
}

/* Responsive */
@media (max-width: 767px) {
    .camera-icon-container {
        width: 200px;
        height: 200px;
    }
    .camera-main-icon {
        font-size: 80px;
    }
    .camera-ring-1 { width: 100px; height: 100px; }
    .camera-ring-2 { width: 140px; height: 140px; }
    .camera-ring-3 { width: 180px; height: 180px; }
}

/*! CSS Used from: Embedded */
#map {
    position: relative;
    width: 100%;
    height: 500px
}

/*! CSS Used keyframes */
@-webkit-keyframes fadeInDown {
    from {
        opacity: 0;
        -webkit-transform: translate3d(0, -100%, 0);
        transform: translate3d(0, -100%, 0)
    }

    to {
        opacity: 1;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0)
    }
}

@keyframes fadeInDown {
    from {
        opacity: 0;
        -webkit-transform: translate3d(0, -100%, 0);
        transform: translate3d(0, -100%, 0)
    }

    to {
        opacity: 1;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0)
    }
}

@-webkit-keyframes fadeInLeft {
    from {
        opacity: 0;
        -webkit-transform: translate3d(-100%, 0, 0);
        transform: translate3d(-100%, 0, 0)
    }

    to {
        opacity: 1;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0)
    }
}

@keyframes fadeInLeft {
    from {
        opacity: 0;
        -webkit-transform: translate3d(-100%, 0, 0);
        transform: translate3d(-100%, 0, 0)
    }

    to {
        opacity: 1;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0)
    }
}

@-webkit-keyframes fadeInRight {
    from {
        opacity: 0;
        -webkit-transform: translate3d(100%, 0, 0);
        transform: translate3d(100%, 0, 0)
    }

    to {
        opacity: 1;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0)
    }
}

@keyframes fadeInRight {
    from {
        opacity: 0;
        -webkit-transform: translate3d(100%, 0, 0);
        transform: translate3d(100%, 0, 0)
    }

    to {
        opacity: 1;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0)
    }
}

@-webkit-keyframes fadeInUp {
    from {
        opacity: 0;
        -webkit-transform: translate3d(0, 100%, 0);
        transform: translate3d(0, 100%, 0)
    }

    to {
        opacity: 1;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0)
    }
}

@keyframes fadeInUp {
    from {
        opacity: 0;
        -webkit-transform: translate3d(0, 100%, 0);
        transform: translate3d(0, 100%, 0)
    }

    to {
        opacity: 1;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0)
    }
}

@keyframes wave {
    0% {
        margin-left: 0
    }

    100% {
        margin-left: -1600px
    }
}

@keyframes swell {

    0%,
    100% {
        transform: translate3d(0, -45px, 0)
    }

    50% {
        transform: translate3d(0, 5px, 0)
    }
}

@keyframes one-animated {
    0% {
        border-radius: 30% 70% 70% 30%/30% 30% 70% 70%;
        box-shadow: 15px 15px 50px rgba(0, 0, 0, .2)
    }

    25% {
        border-radius: 58% 42% 75% 25%/76% 46% 54% 24%
    }

    50% {
        border-radius: 50% 50% 33% 67%/55% 27% 73% 45%;
        box-shadow: -10px -5px 50px rgba(0, 0, 0, .2)
    }

    75% {
        border-radius: 33% 67% 58% 42%/63% 68% 32% 37%
    }
}

@keyframes elementor-animation-wobble-to-top-right {
    16.65% {
        transform: translate(8px, -8px)
    }

    33.3% {
        transform: translate(-6px, 6px)
    }

    49.95% {
        transform: translate(4px, -4px)
    }

    66.6% {
        transform: translate(-2px, 2px)
    }

    83.25% {
        transform: translate(1px, -1px)
    }

    100% {
        transform: translate(0, 0)
    }
}