:root, [data-bs-theme=light] {
    --bs-body-font-size:1.09rem!important;
}

body {
    margin: 0;
    padding: 0;
    /*background: #C9F0F9;*/
    background: #fafaf5;
    overflow-x: hidden;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.page-container {
    overflow: hidden;
}

a,
button {
    transition: background .3s ease-in-out;
    outline: none !important;
}

a:hover {
    text-decoration: none;
    cursor: pointer;
}

li.active {
    background-color:#ccf !important;
    border-radius:.25rem;
    color:rgba(0,0,0,.23);
}

li.active a {
    color:rgba(0,0,0,.65)!important;
}

li.active a:hover {
    color:rgba(0,0,0,.95)!important;
    font-weigth:400;
}


.scroll-fx-lock-init {
    position: fixed !important;
    top: 0;
    bottom: 0;
    left: :0;
    right: 0;
    z-index: 99999;
}

.blocs-grid-container {
    display: grid !important;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: auto auto;
    column-gap: 1.5rem;
    row-gap: 1.5rem;
}

nav .dropdown-menu .nav-link {
    color: rgba(0, 0, 0, 0.6) !important;
}

[data-bs-theme="dark"] nav .dropdown-menu .nav-link {
    color: var(--bs-dropdown-link-color) !important;
}

.page-preloader {
    position: fixed;
    top: 0;
    bottom: 0;
    width: 100%;
    z-index: 100000;
    background: #FFFFFF url("img/pageload-spinner.gif") no-repeat center center;
    animation-name: preloader-fade;
    animation-delay: 2s;
    animation-duration: 0.5s;
    animation-fill-mode: both;
}

.preloader-complete {
    animation-delay: 0.1s;
}

@keyframes preloader-fade {
    0% {
        opacity: 1;
        visibility: visible;
    }
    100% {
        opacity: 0;
        visibility: hidden;
    }
}

.bloc {
    width: 100%;
    clear: both;
    background: 50% 50% no-repeat;
    padding: 0 20px;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    position: relative;
    display: flex;
}

.bloc .container {
    padding-left: 0;
    padding-right: 0;
    position: relative;
}

.bloc-lg {
    padding: 100px 20px;
}

.bloc-sm {
    padding: 20px;
}

.bg-center,
.bg-l-edge,
.bg-r-edge,
.bg-t-edge,
.bg-b-edge,
.bg-tl-edge,
.bg-bl-edge,
.bg-tr-edge,
.bg-br-edge,
.bg-repeat {
    -webkit-background-size: auto !important;
    -moz-background-size: auto !important;
    -o-background-size: auto !important;
    background-size: auto !important;
}

.bg-center {
    -webkit-background-size: auto;
}

.d-bloc {
    color: rgba(255, 255, 255, .7);
}

.d-bloc button:hover {
    color: rgba(255, 255, 255, .9);
}

.d-bloc .icon-round,
.d-bloc .icon-square,
.d-bloc .icon-rounded,
.d-bloc .icon-semi-rounded-a,
.d-bloc .icon-semi-rounded-b {
    border-color: rgba(255, 255, 255, .9);
}

.d-bloc .divider-h span {
    border-color: rgba(255, 255, 255, .2);
}

.d-bloc .a-btn,
.d-bloc .navbar a,
.d-bloc a .icon-sm,
.d-bloc a .icon-md,
.d-bloc a .icon-lg,
.d-bloc a .icon-xl,
.d-bloc h1 a,
.d-bloc h2 a,
.d-bloc h3 a,
.d-bloc h4 a,
.d-bloc h5 a,
.d-bloc h6 a,
.d-bloc p a {
    color: rgba(255, 255, 255, .6);
}

.d-bloc .a-btn:hover,
.d-bloc .navbar a:hover,
.d-bloc a:hover .icon-sm,
.d-bloc a:hover .icon-md,
.d-bloc a:hover .icon-lg,
.d-bloc a:hover .icon-xl,
.d-bloc h1 a:hover,
.d-bloc h2 a:hover,
.d-bloc h3 a:hover,
.d-bloc h4 a:hover,
.d-bloc h5 a:hover,
.d-bloc h6 a:hover,
.d-bloc p a:hover {
    color: rgba(255, 255, 255, 1);
}

.d-bloc .navbar-toggle .icon-bar {
    background: rgba(255, 255, 255, 1);
}

.d-bloc .btn-wire,
.d-bloc .btn-wire:hover {
    color: rgba(255, 255, 255, 1);
    border-color: rgba(255, 255, 255, 1);
}

.d-bloc .card {
    color: rgba(0, 0, 0, .6);
}

.d-bloc .card button:hover {
    color: rgba(0, 0, 0, .7);
}

.d-bloc .card icon {
    border-color: rgba(0, 0, 0, .7);
}

.d-bloc .card .divider-h span {
    border-color: rgba(0, 0, 0, .1);
}

.d-bloc .card .a-btn {
    color: rgba(0, 0, 0, .6);
}

.d-bloc .card .a-btn:hover {
    color: rgba(0, 0, 0, 1);
}

.d-bloc .card .btn-wire,
.d-bloc .card .btn-wire:hover {
    color: rgba(0, 0, 0, .7);
    border-color: rgba(0, 0, 0, .3);
}

.d-bloc .card,
.l-bloc {
    color: rgba(0, 0, 0, .7);
}

.d-bloc .card button:hover,
.l-bloc button:hover {
    color: rgba(0, 0, 0, .7);
}

.l-bloc .icon-round,
.l-bloc .icon-square,
.l-bloc .icon-rounded,
.l-bloc .icon-semi-rounded-a,
.l-bloc .icon-semi-rounded-b {
    border-color: rgba(0, 0, 0, .7);
}

.d-bloc .card .divider-h span,
.l-bloc .divider-h span {
    border-color: rgba(0, 0, 0, .1);
}

.d-bloc .card .a-btn,
.l-bloc .a-btn,
.l-bloc .navbar a,
.l-bloc a .icon-sm,
.l-bloc a .icon-md,
.l-bloc a .icon-lg,
.l-bloc a .icon-xl,
.l-bloc h1 a,
.l-bloc h2 a,
.l-bloc h3 a,
.l-bloc h4 a,
.l-bloc h5 a,
.l-bloc h6 a,
.l-bloc p a {
    color: rgba(0, 0, 0, .6);
}

.d-bloc .card .a-btn:hover,
.l-bloc .a-btn:hover,
.l-bloc .navbar a:hover,
.l-bloc a:hover .icon-sm,
.l-bloc a:hover .icon-md,
.l-bloc a:hover .icon-lg,
.l-bloc a:hover .icon-xl,
.l-bloc h1 a:hover,
.l-bloc h2 a:hover,
.l-bloc h3 a:hover,
.l-bloc h4 a:hover,
.l-bloc h5 a:hover,
.l-bloc h6 a:hover,
.l-bloc p a:hover {
    color: rgba(0, 0, 0, 1);
}

.l-bloc .navbar-toggle .icon-bar {
    color: rgba(0, 0, 0, .6);
}

.d-bloc .card .btn-wire,
.d-bloc .card .btn-wire:hover,
.l-bloc .btn-wire,
.l-bloc .btn-wire:hover {
    color: rgba(0, 0, 0, .7);
    border-color: rgba(0, 0, 0, .3);
}

.voffset {
    margin-top: 30px;
}

.svg-menu-icon {
    fill: none;
    stroke: rgba(0, 0, 0, 0.5);
    stroke-width: 2px;
    fill-rule: evenodd;
}

.navbar-dark .svg-menu-icon {
    stroke: rgba(255, 255, 255, 0.5);
}

.menu-icon-thin-bars {
    stroke-width: 1px;
}

.menu-icon-thick-bars {
    stroke-width: 5px;
}

.menu-icon-rounded-bars {
    stroke-width: 3px;
    stroke-linecap: round;
}

.menu-icon-filled {
    fill: rgba(0, 0, 0, 0.5);
    stroke-width: 0px;
}

.navbar-dark .menu-icon-filled {
    fill: rgba(255, 255, 255, 0.5);
}

.navbar-toggler {
    background-color:rgba(256,256,256,.75)!important;
}

.navbar-toggler-icon {
    background: none !important;
    pointer-events: none;
    width: 33px;
    height: 33px;
}

.dropdown-menu .dropdown-menu {
    border: none
}

@media (min-width:576px) {
    .navbar-expand-sm .dropdown-menu .dropdown-menu {
        border: 1px solid rgba(0, 0, 0, .15);
        position: absolute;
        left: 100%;
        top: -7px
    }
    .navbar-expand-sm .dropdown-menu .submenu-left {
        right: 100%;
        left: auto
    }
}

@media (min-width:768px) {
    .navbar-expand-md .dropdown-menu .dropdown-menu {
        border: 1px solid rgba(0, 0, 0, .15);
        border: 1px solid rgba(0, 0, 0, .15);
        position: absolute;
        left: 100%;
        top: -7px
    }
    .navbar-expand-md .dropdown-menu .submenu-left {
        right: 100%;
        left: auto
    }
}

@media (min-width:992px) {
    .navbar-expand-lg .dropdown-menu .dropdown-menu {
        border: 1px solid rgba(0, 0, 0, .15);
        position: absolute;
        left: 100%;
        top: -7px
    }
    .navbar-expand-lg .dropdown-menu .submenu-left {
        right: 100%;
        left: auto
    }
}

.mg-md {
    margin-top: 10px;
    margin-bottom: 20px;
}

.btn-d,
.btn-d:hover,
.btn-d:focus {
    color: #FFF;
    background: rgba(0, 0, 0, .3);
}

button {
    outline: none !important;
}

.btn-glossy {
    border: 1px solid rgba(0, 0, 0, .09);
    border-bottom-color: rgba(0, 0, 0, .2);
    text-shadow: 0 1px 0 rgba(0, 0, 1, .2);
    box-shadow: 0 1px 3px rgba(0, 0, 1, .35), inset 0 1px 0 0 rgba(255, 255, 255, .4), inset 0 1px 0 2px rgba(255, 255, 255, .08);
    background-image: -moz-linear-gradient(bottom, rgba(0, 0, 0, .07) 0%, rgba(255, 255, 255, .07) 100%);
    background-image: -o-linear-gradient(bottom, rgba(0, 0, 0, .07) 0%, rgba(255, 255, 255, .07) 100%);
    background-image: -webkit-linear-gradient(bottom, rgba(0, 0, 0, .07) 0%, rgba(255, 255, 255, .07) 100%);
    background-image: linear-gradient(bottom, rgba(0, 0, 0, .07) 0%, rgba(255, 255, 255, .07) 100%);
}

.img-protected {
   /* -webkit-touch-callout: none;*/
}

.img-fluid-up {
    min-width: 100%;
    height: auto;
}

.sm-shadow {
    text-shadow: 0 1px 2px rgba(0, 0, 0, .3);
}

.blockquote {
    padding: 0 20px;
    border-left: 2px solid;
}

.blockquote.text-end {
    border-left: 0;
    border-right: 2px solid;
}

.text-w-80 {
    max-width: 80%;
}

.text-center.text-w-sm,
.text-center.text-w-md,
.text-center.text-w-lg,
.text-center.text-w-90,
.text-center.text-w-80,
.text-center.text-w-70,
.text-center.text-w-60,
.text-center.text-w-50 {
    margin-left: auto;
    margin-right: auto;
}

.card-sq,
.card-sq .card-header,
.card-sq .card-footer {
    border-radius: 0;
}

.card-rd {
    border-radius: 30px;
}

.card-rd .card-header {
    border-radius: 29px 29px 0 0;
}

.card-rd .card-footer {
    border-radius: 0 0 29px 29px;
}

.card-columns .card {
    margin-bottom: 0.75rem;
}

@media (min-width: 576px) {
    .card-columns {
        -webkit-column-count: 3;
        -moz-column-count: 3;
        column-count: 3;
        -webkit-column-gap: 1.25rem;
        -moz-column-gap: 1.25rem;
        column-gap: 1.25rem;
        orphans: 1;
        widows: 1;
    }
    .card-columns .card {
        display: inline-block;
        width: 100%;
    }
}

.divider-h {
    min-height: 1px;
    background-color: rgba(0, 0, 0, .2);
    margin: 20px 0;
}

.divider-half {
    width: 50%;
}

.dropdown-menu .divider-h {
    margin: 0;
}

.form-control {
    border-color: rgba(0, 0, 0, .1);
    box-shadow: none;
}

.scrollToTop {
    width: 36px;
    height: 36px;
    padding: 5px;
    position: fixed;
    bottom: 20px;
    right: 20px;
    opacity: 0;
    z-index: 999;
    transition: all .3s ease-in-out;
    pointer-events: none;
}

.showScrollTop {
    opacity: 1;
    pointer-events: all;
}

.scroll-to-top-btn-icon {
    fill: none;
    stroke: #fff;
    stroke-width: 2px;
    fill-rule: evenodd;
    stroke-linecap: round;
}

a[data-lightbox] {
    position: relative;
    display: block;
    text-align: center;
}

a[data-lightbox]:hover::before {
    content: "+";
    font-family: "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", Helvetica, Arial;
    font-size: 32px;
    line-height: 42px;
    width: 50px;
    height: 50px;
    margin-left: -25px;
    border-radius: 50%;
    background: rgba(0, 0, 0, .5);
    color: #FFF;
    font-weight: 100;
    z-index: 1;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
}

a[data-lightbox]:hover img {
    opacity: 0.6;
    -webkit-animation-fill-mode: none;
    animation-fill-mode: none;
}

.lightbox-caption {
    padding: 20px;
    color: #FFF;
    background: rgba(0, 0, 0, .5);
    position: absolute;
    left: 16px;
    right: 16px;
    bottom: 0px;
}

.close-lightbox:hover,
.next-lightbox:hover,
.prev-lightbox:hover {
    background: rgba(0, 0, 0, .5);
}

.next-lightbox,
.prev-lightbox,
.close-lightbox {
    position: absolute;
    padding: 6px;
    background: rgba(0, 0, 0, .3);
    line-height: 0;
    transition: background .2s ease-in-out;
    border-radius: .25rem;
    border: none;
    z-index: 20;
}

.next-lightbox,
.prev-lightbox {
    top: 45%;
}

.close-lightbox {
    top: 20px;
    right: 20px;
}

.next-lightbox {
    right: 25px;
}

.prev-lightbox {
    left: 25px;
}

.lightbox-prev-icon,
.lightbox-next-icon,
.lightbox-close-icon {
    fill: none;
    stroke: #fff;
    stroke-width: 3px;
    fill-rule: evenodd;
    stroke-linecap: round;
}

.lightbox-close-svg {
    pointer-events: none;
}

.frameless-lb {
    border-radius: 0;
    border: none;
}

.frameless-lb .modal-body {
    padding: 0;
}

.frameless-lb .lightbox-caption {
    left: 0;
    right: 0;
    bottom: -16px;
}

h1,
h2,
h3,
h4,
h5,
h6,
p,
label,
.btn,
a {
    /*font-family: "Helvetica";*/
}

.container {
    max-width: 1140px;
}

.navbar-logo {
    text-transform: none;
    text-decoration: none;
    font-size: 20px;
}

.h4-style {
    width: 100%;
}

.divider-style {
    width: %;
    background-color: #FFFFFF;
}

.divider-background-color {
    background-color: #FFFFFF;
}

.img-style {
    border-radius: 0px 0px 0px 0px;
    width: 332px;
}

.p-style {
    font-size: 20px;
    line-height: 30px;
}

.img-sdc-lo-style {
    border-radius: 0px 0px 0px 0px;
}

.btn-style {
    width: 75%;
    font-weight: bold;
}

.btn-button-style {
    width: 75%;
    font-weight: bold;
}

.btn-6-style {
    width: 21.75%;
}

.btn-bloc-17-style {
    width: 75%;
    font-weight: bold;
}

.btn-learn-more-style {
    font-weight: bold;
}

.btn-2-style {
    font-weight: bold;
}

.btn-3-style {
    font-weight: bold;
}

.p-bloc-13-style {
    font-size: 16px;
}

.btn-8-style {
    width: 100%;
}

a {
    color: #4483C8 !important;
}

.img-bloc-6-style {
    border-radius: 0px 0px 0px 0px;
}

.btn-2-learn-more-style {
    font-weight: bold;
}

.btn-9-style {
    font-weight: bold;
}

.btn-submit-style {
    font-weight: bold;
}

.img-peop-style {
    width: 125px;
    height: 125px;
}

.img-bloc-14-style {
    width: 125px;
    height: 125px;
}

.img-spee-style {
    width: 125px;
    height: 125px;
}

.img-bloc-13-style {
    width: 535px;
    height: 499px;
}

:root {
    --swatch-var-6933: #789395;
    --swatch-var-813: #94B49F;
    --swatch-var-5401: #B4CFB0;
    --swatch-var-3950: #DAEB8F;
    --swatch-var-7833: #93BFCF;
    --swatch-var-3108: #BDCDD6;
    --swatch-var-6733: #EEE9DA;
    --swatch-var-5886: #008DBC;
    --swatch-var-1197: rgba(255, 255, 255, 1.0);
    --swatch-var-1774: #3900E0;
    --swatch-var-5588: #1763A7;
    --swatch-var-5: #BFECF6;
}

.bgc-5588 {
    background-color: var(--swatch-var-5588);
}

.bgc-5 {
    background-color: var(--swatch-var-5);
}

.tc-1774 {
    color: var(--swatch-var-1774) !important;
}

.tc-5886 {
    color: var(--swatch-var-5886) !important;
}

.tc-1197 {
    color: var(--swatch-var-1197) !important;
}

.btn-c-3950 {
    background: var(--swatch-var-3950);
    color: rgba(0, 0, 0, .5) !important;
}

.btn-c-3950:hover {
    background: #A7B85C !important;
    color: rgba(0, 0, 0, .5) !important;
}

.ltc-1197 {
    color: var(--swatch-var-1197) !important;
}

.social-link-bric a svg {
    transition: all 0.3s ease-in-out;
}

.social-hover-fade a:hover svg {
    opacity: 0.5;
}

.social-hover-grow a:hover svg {
    transform: scale(1.2);
}

.social-hover-shrink a:hover svg {
    transform: scale(0.9);
}

.social-hover-shadow a:hover svg {
    filter: drop-shadow(0px 6px 2px rgba(0, 0, 0, 0.3));
    overflow: visible;
}

@media (min-width: 576px) {
    .bloc-xxl-sm {
        padding: 200px 20px;
    }
    .bloc-xl-sm {
        padding: 150px 20px;
    }
    .bloc-lg-sm {
        padding: 100px 20px;
    }
    .bloc-md-sm {
        padding: 50px 20px;
    }
    .bloc-sm-sm {
        padding: 20px;
    }
    .bloc-no-padding-sm {
        padding: 0 20px;
    }
}

@media (min-width: 768px) {
    .bloc-xxl-md {
        padding: 200px 20px;
    }
    .bloc-xl-md {
        padding: 150px 20px;
    }
    .bloc-lg-md {
        padding: 100px 20px;
    }
    .bloc-md-md {
        padding: 50px 20px;
    }
    .bloc-sm-md {
        padding: 20px 20px;
    }
    .bloc-no-padding-md {
        padding: 0 20px;
    }
}

@media (min-width: 992px) {
    .bloc-xxl-lg {
        padding: 200px 20px;
    }
    .bloc-xl-lg {
        padding: 150px 20px;
    }
    .bloc-lg-lg {
        padding: 100px 20px;
    }
    .bloc-md-lg {
        padding: 50px 20px;
    }
    .bloc-sm-lg {
        padding: 20px;
    }
    .bloc-no-padding-lg {
        padding: 0 20px;
    }
}

@media (max-width: 1024px) {
    .bloc.full-width-bloc,
    .bloc-tile-2.full-width-bloc .container,
    .bloc-tile-3.full-width-bloc .container,
    .bloc-tile-4.full-width-bloc .container {
        padding-left: 0;
        padding-right: 0;
    }
}

@media (max-width: 991px) {
    .container {
        width: 100%;
    }
    .bloc {
        padding-left: constant(safe-area-inset-left);
        padding-right: constant(safe-area-inset-right);
    }
    .bloc-group,
    .bloc-group .bloc {
        display: block;
        width: 100%;
    }
}

@media (max-width: 767px) {
    .bloc-tile-2 .container,
    .bloc-tile-3 .container,
    .bloc-tile-4 .container {
        padding-left: 0;
        padding-right: 0;
    }
    .btn-dwn {
        display: none;
    }
    .voffset {
        margin-top: 5px;
    }
    .voffset-md {
        margin-top: 20px;
    }
    .voffset-lg {
        margin-top: 30px;
    }
    form {
        padding: 5px;
    }
    .close-lightbox {
        display: inline-block;
    }
    .blocsapp-device-iphone5 {
        background-size: 216px 425px;
        padding-top: 60px;
        width: 216px;
        height: 425px;
    }
    .blocsapp-device-iphone5 img {
        width: 180px;
        height: 320px;
    }
}

@media (max-width: 991px) {
    .p-bloc-6-style {
        font-size: 12px;
    }
    .p-9-style {
        font-size: 12px;
    }
    .p-10-style {
        font-size: 12px;
    }
    .p-style {
        width: 100%;
    }
    .mt-md-0 {}
    .mt-md-4 {}
}

@media (max-width: 767px) {
    .p-style {
        font-size: 14px;
        line-height: 21px;
    }
    .p-bloc-12-style {
        font-size: 14px;
    }
    .p-74-style {
        font-size: 14px;
    }
    .p-bloc-13-style {
        font-size: 14px;
    }
    .p-76-style {
        line-height: 21px;
        font-size: 14px;
    }
    .p-77-style {
        font-size: 14px;
        line-height: 21px;
    }
    
    .borderBottom {
        border-bottom: solid 1px rgba(0,0,0,0.25)!important;
    }
}

@media (max-width: 575px) {
    .navbar-logo {
        font-size: 18px;
    }
    .img-style {
        width: 400px;
        height: 266px;
    }
    .mt-1 {}
}

.border-round-subtle {
    border:1px solid rgba(0,0,0,0.25);
    border-radius:0.25rem;
}



.ltc-1197:hover {
	text-shadow:#ffffff 0px 0px 1px;
}

/* * * * * * * * * * * * * * * * * * * * * * */
/			GALLERY TWEAKS					  /
/* * * * * * * * * * * * * * * * * * * * * * */

div.min-h {min-height:200px !important;}

#gallery-row div {
    margin-bottom:1rem;
}

#gallery-dark {
    background-color:#232323;
}

#gallery-dark h1, #gallery-dark p {
    color:#fff!important;
}

#gallery-row div img {
    border:solid 1px #777;
    border-radius:.25rem;
}

#gallery .frameless-lb, #gallery-light .frameless-lb, #gallery-dark .frameless-lb {
	background: transparent;
}

#gallery div.modal-body, #gallery-light div.modal-body {
    background:rgb(0 0 0 / 75%);!important;
    box-shadow: 0px 0px 10px rgba(0,0,0, 0.7);
}

#gallery-dark div.modal-body {
    background:rgb(0 0 0 / 85%);!important;
    /*box-shadow: 0px 0px 15px rgba(183,107,86, 0.7);*/
    box-shadow: 0px 0px 10px rgba(0,0,0, 0.7);
}

#houseLights {
    max-height:2rem;
}