/*
/	Solution web ideveloppement
/	http://www.ideveloppement.fr
/
*/

@font-face {
    font-family: 'icomoon';
    src:
        url('../fonts/icomoon.ttf?xxkqpn') format('truetype'),
        url('../fonts/icomoon.woff?xxkqpn') format('woff'),
        url('../fonts/icomoon.svg?xxkqpn#icomoon') format('svg');
    font-weight: normal;
    font-style: normal;
    font-display: block;
}

[class^="icon-"], [class*=" icon-"] {
    /* use !important to prevent issues with browser extensions that change fonts */
    font-family: 'icomoon' !important;
    speak: never;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;

    /* Better Font Rendering =========== */
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.icon-virtual-visit:before {
    content: "\e90a";
}
.icon-linkedin:before {
    content: "\e909";
}
.icon-heart-empty:before {
    content: "\e907";
}
.icon-heart-full:before {
    content: "\e908";
}
.icon-heart:before {
    content: "\e905";
}
.icon-user:before {
    content: "\e906";
}
.icon-chevron-down:before {
    content: "\e904";
}
.icon-instagram:before {
    content: "\e903";
}
.icon-door:before {
    content: "\e900";
}
.icon-handshake:before {
    content: "\e800";
}
.icon-arrow-left:before {
    content: "\e801";
}
.icon-arrow-right:before {
    content: "\e802";
}
.icon-arrow-down:before {
  content: "\e901";
}
.icon-arrow-up:before {
  content: "\e902";
}
.icon-pig-bank:before {
    content: "\e803";
}
.icon-briefcase:before {
    content: "\e804";
}
.icon-bus:before {
    content: "\e805";
}
.icon-business-card:before {
    content: "\e806";
}
.icon-clock:before {
    content: "\e807";
}
.icon-double-arrow:before {
    content: "\e808";
}
.icon-money-in:before {
    content: "\e809";
}
.icon-estimer:before {
    content: "\e80a";
}
.icon-facebook:before {
    content: "\e80b";
}
.icon-star:before {
    content: "\e80c";
}
.icon-folder:before {
    content: "\e80d";
}
.icon-hands:before {
    content: "\e80e";
}
.icon-history:before {
    content: "\e80f";
}
.icon-check-doc:before {
    content: "\e810";
}
.icon-keys:before {
    content: "\e811";
}
.icon-light-bulb:before {
    content: "\e812";
}
.icon-marker:before {
    content: "\e813";
}
.icon-search:before {
    content: "\e814";
}
.icon-hangout:before {
    content: "\e815";
}
.icon-mathematical:before {
    content: "\e816";
}
.icon-men-talking:before {
    content: "\e817";
}
.icon-money-out:before {
    content: "\e818";
}
.icon-paint:before {
    content: "\e819";
}
.icon-pen:before {
    content: "\e81a";
}
.icon-printer:before {
    content: "\e81b";
}
.icon-send:before {
    content: "\e81c";
}
.icon-shop:before {
    content: "\e81d";
}
.icon-shovel:before {
    content: "\e81e";
}
.icon-stethoscope:before {
    content: "\e81f";
}
.icon-telephone:before {
    content: "\e820";
}
.icon-refresh:before {
    content: "\e822";
}
.icon-check-list:before {
    content: "\e823";
}

.icon-space-right {
    margin-right: 5px;
}

html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,menu,nav,output,ruby,section,summary,time,mark,audio,video{border:0;font-size:100%;font:inherit;vertical-align:baseline;margin:0;padding:0}article,aside,details,figcaption,figure,footer,header,menu,nav,section{display:block}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:none}table{border-collapse:collapse;border-spacing:0}

/*! Figtree font (subsetted and converted to woff and woff2)
Copyright 2022 The Figtree Project Authors (https://github.com/erikdkennedy/figtree)
Licensed under the SIL Open Font License, Version 1.1. (http://scripts.sil.org/OFL)
 */
@font-face {
    font-family: 'Figtree';
    src: url('../fonts/subset-Figtree-Regular.woff2') format('woff2'),
    url('../fonts/subset-Figtree-Regular.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Figtree';
    src: url('../fonts/subset-Figtree-SemiBold.woff2') format('woff2'),
    url('../fonts/subset-Figtree-SemiBold.woff') format('woff');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

/*! Playfair Display font (subsetted and converted to woff and woff2)
Copyright 2017 The Playfair Display Project Authors (https://github.com/clauseggers/Playfair-Display), with Reserved Font Name "Playfair Display"
Licensed under the SIL Open Font License, Version 1.1. (http://scripts.sil.org/OFL)
 */
@font-face {
    font-family: 'Playfair Display';
    src: url('../fonts/subset-PlayfairDisplay-Regular.woff2') format('woff2'),
    url('../fonts/subset-PlayfairDisplay-Regular.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Playfair Display';
    src: url('../fonts/subset-PlayfairDisplay-SemiBold.woff2') format('woff2'),
    url('../fonts/subset-PlayfairDisplay-SemiBold.woff') format('woff');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}


/* Basic HTML
------------------------------------------------------------------------*/
body {
    font: 12px/1.5 'Figtree', sans-serif;
    min-width: 320px;
    color: #171514;
}
p, h1, h2, h3, h4, h5, h6, ul, ol,
.h1, .h2, .h3, .h4 {
    margin: 0 0 20px;
}
h1, h2, h3, h4,
.h1, .h2, .h3, .highlight, .h4 {
    font-family: 'Figtree', sans-serif;
    font-weight: bold;
    text-transform: none;
    color: #171514;
    text-align: center;
}
h3, h4, .h3, .highlight, .h4 {
    text-align: left;
}
h1, .h1 {
    font-family: 'Playfair Display', serif;
    text-transform: uppercase;
    font-size: 27px;/*52px;*/
}
h2, .h2 {
    font-family: 'Playfair Display', serif;
    font-weight: normal;
    font-size: 25px;/*35px;*/
}
h3, .h3, .highlight {
    font-size: 20px;/*25px;*/
}
h4, .h4 {
    font-size: 15px;/*20px;*/
    margin-bottom: 10px;
}
.small-title {
    font-size: 14px;/*16px*/
    text-transform: uppercase;
    font-weight: bold;
    margin-bottom: 10px;
}

a {
    color: inherit;
    text-decoration: underline;
}
a:hover {
    text-decoration: none;
}

ol {
    list-style: decimal;
    padding: 0 0 0 35px;
}
ul {
    list-style: disc;
    padding: 0 0 0 35px;
}
strong {
    font-weight: bold;
}
em {
    font-style: italic;
}
sub,
sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
}
sub {
    bottom: -0.25em;
}
sup {
    top: -0.5em;
}
hr {
    border: 0 #ccc solid;
    border-top-width: 1px;
    clear: both;
    height: 0;
}
table {
    width: 100%;
}
input[type="text"],
input[type="password"],
input[type="datetime"],
input[type="datetime-local"],
input[type="date"],
input[type="month"],
input[type="time"],
input[type="week"],
input[type="number"],
input[type="email"],
input[type="url"],
input[type="search"],
input[type="tel"],
input[type="color"],
input[type="button"],
input[type="reset"],
input[type="submit"],
button,
textarea {
    -moz-border-radius: 0;
    -webkit-border-radius: 0;
    border-radius: 0;
    -webkit-appearance: none;

    box-shadow: none;
    outline: 0;
}
textarea {
    overflow: auto;
    resize: none;
    margin: 0;
}
input[type="button"],
input[type="reset"],
input[type="submit"],
button {
    cursor: pointer;
    border: 0;
    background: none;
    margin: 0;
    padding: 0;
}

html { box-sizing: border-box; }
*, *:before, *:after {
    box-sizing: inherit;
}

img {
    max-width: 100%;
    height: auto;
}

.nodisplay,
.hiddenField {
    display: none;
}

/* clearfix */
.cf { zoom: 1; }
.cf:before, .cf:after { content: ""; display: table; }
.cf:after { clear: both; }
.wrapper {
    padding: 0 10px;
    margin: 0 auto;
    max-width: 960px;
    overflow: hidden;
}

.img-left,
.img-right,
.img-block {
    display: block;
    max-width: 100%;
    margin: 0 auto 20px;
}

.rte {
    overflow: hidden;
}
.disposition {
    overflow: hidden;
    margin: 0 -10px;
    font-size: 0;
}
.disposition .col {
    display: inline-block;
    vertical-align: top;
    font-size: 14px;
    padding: 0 10px;
}
.disposition_1 .col {
    width: 100%;
}
.disposition_1-1 .col {
    width: 50%;
}
.disposition_1-1-1 .col {
    width: 33.33%;
}

.alert {
    color: inherit;
    padding: 15px 35px;
    position: relative;
    margin: 0 0 20px;
}
.alert * {
    margin: 0;
}
.alert a {
    color: inherit;
}
.alert.alert-success {
    background: #cee494;
}
.alert.alert-warning {
    background: #f2d58f;
}
.alert.alert-danger {
    background: #f2a8a4;
}

.three-images img {
    display: block;
    margin: 0 auto 20px;
}

.banner-exclusive {
    background: #FA9A8D;
}
.banner-being-signed {
    background: #B76156;
}
.banner-being-sold {
    background: #EAB28E;
}
.banner-sold {
    background: #D97467;
}

.text-large {
    font-size: 14px;/*16px*/
}
.text-caps {
    text-transform: uppercase;
}

/* Forms, buttons
------------------------------------------------------------------------*/
::-webkit-input-placeholder {
    color: #909090;
    opacity: 1;
}
:-moz-placeholder { /* Firefox 18- */
    color: #909090;
    opacity: 1;
}
::-moz-placeholder {  /* Firefox 19+ */
    color: #909090;
    opacity: 1;
}
:-ms-input-placeholder {
    color: #909090;
    opacity: 1;
}
/* Fix <= IE9 placeholder */
.placeholder,
.select-like span.default {
    color: #909090;
    opacity: 1;
}
.form-row,
.submit {
    margin: 0 0 20px;
}

.form-cols.form-cols-mobile {
    font-size: 0;
    margin: 0 -10px;
}
.form-cols.form-cols-mobile .form-row {
    display: inline-block;
    vertical-align: top;
    width: 50%;
    padding: 0 10px;
    font-size: 12px;
}

.form-row .controls {
    font-size: 0;
    position: relative;
}
.form-row .unit {
    position: absolute;
    top: 1px;
    right: 1px;
    min-width: 33px;
    padding: 0 5px;
    height: 33px;
    background: #F2F2F2;
    text-align: center;
    line-height: 33px;
    font-size: 12px;
    font-weight: bold;
    color: #171514;
}

.form-row input[type="text"],
.form-row input[type="password"],
.form-row input[type="datetime"],
.form-row input[type="datetime-local"],
.form-row input[type="date"],
.form-row input[type="month"],
.form-row input[type="time"],
.form-row input[type="week"],
.form-row input[type="number"],
.form-row input[type="email"],
.form-row input[type="url"],
.form-row input[type="search"],
.form-row input[type="tel"],
.form-row input[type="color"],
.form-row textarea {
    font: 12px/25px 'Figtree', sans-serif;
    padding: 4px 9px;
    border: 1px solid #D9D9D9;
    height: 35px;
    background: #fff;
    width: 100%;
    color: #171514;
    margin: 0;
}
.form-row textarea {
    height: 150px;
}
.dark-bg .form-row input[type="text"],
.dark-bg .form-row input[type="password"],
.dark-bg .form-row input[type="datetime"],
.dark-bg .form-row input[type="datetime-local"],
.dark-bg .form-row input[type="date"],
.dark-bg .form-row input[type="month"],
.dark-bg .form-row input[type="time"],
.dark-bg .form-row input[type="week"],
.dark-bg .form-row input[type="number"],
.dark-bg .form-row input[type="email"],
.dark-bg .form-row input[type="url"],
.dark-bg .form-row input[type="search"],
.dark-bg .form-row input[type="tel"],
.dark-bg .form-row input[type="color"],
.dark-bg .form-row textarea {
    border: 0;
    padding: 5px 10px;
}
.form-row .checkrad,
.form-row .checkbox,
.form-row .radio {
    font-size: 12px;
}

.select-like {
    position: relative;
    display: inline-block;
    width: 100%;
    cursor: pointer;
    background: #fff;
    color: #171514;
    font-size: 12px;
}
.select-like span {
    position: relative;
    display: block;
    height: 35px;
    padding: 4px 34px 4px 9px;
    border: 1px solid #D9D9D9;
    line-height: 25px;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}
.select-like:after {
    position: absolute;
    top: 11px;
    right: 9px;
    content: '\e808';

    font-family: 'icomoon';
    /*noinspection CssUnknownProperty*/
    speak: none;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;

    /* Better Font Rendering =========== */
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
.select-like select {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    min-height: 100%;
    opacity: 0;
    filter: alpha(opacity=0);
    cursor: pointer;
    z-index: 2;
}

.btn,
.submit button {
    font: 12px/25px 'Figtree', sans-serif;
    padding: 5px 15px;

    display: inline-block;
    vertical-align: middle;
    background: #FEDFCB;
    color: #171514;
    font-weight: bold;
    width: 100%;
    text-align: center;
    text-decoration: none;

    transition: background-color 0.2s;
}
.btn:hover,
.submit button:hover {
    text-decoration: none;
    background: #FFD1B3;
}
.btn.btn-large {
    font-size: 16px;
    line-height: 38px;
}
.link-btn {
    display: inline-block;
    text-align: inherit;
    text-decoration: none;
    font-weight: bold;
}
.link-btn::after {
    content: '';
    display: block;
    width: 30px;
    height: 4px;
    background: #FEDFCB;
    transition: width 0.3s;
}
.link-btn:focus::after,
.link-btn:hover::after {
    width: 100%;
}

.std-popup {
    position: relative;
    display: block;
    padding: 20px 20px 0;
    margin: 0 auto;
    width: 320px;
    max-width: 100%;
    overflow: hidden;
}
.std-popup .submit button {
    padding: 4px;
    width: 100%;
}

.favorite-container {
    --favorite-offset: 15px;
    --favorite-size: 40px;
    position: relative;
}
.favorite-container .favorite {
    position: absolute;
    top: var(--favorite-offset);
    right: var(--favorite-offset);
    z-index: 1;
    width: var(--favorite-size);
    height: var(--favorite-size);
    border-radius: 50%;
    background: #fff;
    color: #171514;
    padding: 0;
    margin: 0;
    border: 0;
    transition: 0.3s;
    transition-property: color, background-color;
}
.favorite-container .favorite::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 44px;
    height: 44px;
    border-radius: 50%;
    transform: translate(-50%, -50%);
}
.favorite-container .favorite.is-favorite {
    color: #FEDFCB;
}
.favorite-container .favorite:focus,
.favorite-container .favorite:hover {
    background: #F2F2F2;
}
.favorite-container .favorite .favorite-icon {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    transition: opacity 0.3s;
}
.favorite-container .favorite .favorite-icon-is-favorite,
.favorite-container .favorite.is-favorite .favorite-icon {
    opacity: 0;
    pointer-events: none;
}
.favorite-container .favorite.is-favorite .favorite-icon-is-favorite {
    opacity: 1;
    pointer-events: auto;
}
.favorite-container .favorite .favorite-icon [class^="icon-"],
.favorite-container .favorite .favorite-icon [class*=" icon-"] {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    width: calc(var(--favorite-size) / 2);
    height: calc(var(--favorite-size) / 2);
    font-size: calc(var(--favorite-size) / 2);
}

html .mfp-bg {
    background: #171514;
}
html .mfp-bg.mfp-product-photos {
    opacity: 1;
}
.mfp-wrap .mfp-close-btn-in .mfp-close {
    color: #171514;
}
.mfp-wrap .mfp-image-holder .mfp-close,
.mfp-wrap .mfp-iframe-holder .mfp-close {
    color: #FEDFCB;
}
.mfp-wrap .mfp-arrow-left::after {
    border-right-color: #FEDFCB;
}
.mfp-wrap .mfp-arrow-right::after {
    border-left-color: #FEDFCB;
}

/* Header
------------------------------------------------------------------------*/
.header {
    position: sticky;
    top: 0;
    z-index: 100;
    height: 100px;
    background: #fff;
    border-bottom: 1px solid #171514;
}
.header .logo {
    float: left;
    width: 64px;
    height: 90px;
    margin: 5px 0;
}
.header .logo a,
.header .logo picture,
.header .logo img {
    display: block;
}
.header .logo img {
    width: 100%;
}
.header .toggle-nav {
    float: right;
    width: 44px;
    height: 44px;
    background: #FEDFCB;
    color: #171514;
    text-indent: -9999em;
    margin: 28px 0 0 0;
    position: relative;
    transition: background-color 0.2s;
}
.header .toggle-nav:focus,
.header .toggle-nav:hover {
    background-color: #FFD1B3;
}
.header .toggle-nav span {
    display: block;
    margin: 4px auto 0;
    height: 2px;
    background: currentColor;
    width: 22px;

    transition: margin 0.15s;
}
.header .toggle-nav span:first-child,
.nav-open .header .toggle-nav span:first-child {
    margin-top: 0;
}
.nav-open .header .toggle-nav span {
    margin-top: 8px;
}

.header .main-nav {
    height: auto;
    max-height: 0;
    overflow: hidden;
    clear: both;
    background: #FEDFCB;
    margin: 0 -10px;
    position: relative;
    z-index: 20;

    transition: 0.3s;
    transition-property: max-height;

    /* This fixes a bug in Safari (iOS)
       where this transition just didn't work
       at all.
       Only on some pages.
       For no obvious reason. */
    transform: translateZ(1px);
}
.nav-open .header .main-nav {
    max-height: 600px;
}
.header .main-nav ul {
    list-style: none;
    padding: 5px 0;
    margin: 0;
}
.header .main-nav ul ul {
    padding-top: 0;
    padding-bottom: 0;
}
.header .main-nav a,
.header .main-nav button {
    font-family: inherit;
    display: block;
    width: 100%;
    text-align: center;
    font-size: 16px;
    line-height: 1.5;
    text-transform: uppercase;
    text-decoration: none;
    color: inherit;
    padding: 5px 0;
    font-weight: normal;
}
.header .main-nav a:focus,
.header .main-nav a:hover,
.header .main-nav button:focus,
.header .main-nav button:hover {
    text-decoration: underline;
}
.header .main-nav .active > a,
.header .main-nav .active > button {
    font-weight: bold;
}
.header .main-nav .main-nav-sub-toggler {
    display: none;
}
.header .main-nav-extra [class^="icon-"],
.header .main-nav-extra [class*=" icon-"] {
    display: none;
}

.header-side {
    position: absolute;
    top: 25px;
    right: 74px;
    display: flex;
    flex-direction: row-reverse;
}
.header-social-label,
.header-google-label {
    display: block;
    text-align: center;
}

.header-social {
    text-align: center;
}
.header-social ul {
    list-style: none;
    padding: 0;
    margin: 0 -5px;
    font-size: 0;
}
.header-social li {
    display: inline-block;
    vertical-align: middle;
    padding: 0 5px;
}
.header-social a {
    display: block;
    position: relative;
    width: 24px;
    height: 24px;
    background: #FEDFCB;
    text-decoration: none;
    border-radius: 50%;
    transition: background-color 0.2s;
}
.header-social a:focus,
.header-social a:hover {
    background-color: #FFD1B3;
}
.header-social [class^="icon-"],
.header-social [class*=" icon-"] {
    display: block;
    font-size: 12px;
    line-height: 24px;
    width: 24px;
    height: 24px;
    text-align: center;
    color: #fff;
}

.header-google:not(:first-child) {
    margin-right: 20px;
}
.header-google a {
    text-decoration: none;
    display: block;
}
.header-google a:focus,
.header-google a:hover {
    text-decoration: none;
}
.header-google .rating-value {
    display: block;
    font-weight: bold;
    font-size: 14px;
    padding-right: 5px;
    text-align: center;
}
.header-google .rating-bar {
    position: relative;
    display: block;
    height: 16px;
    width: 60px;
    margin-left: auto;
    margin-right: auto;
    background: url('../img/star-empty.png') repeat-x;
}
.header-google .rating-bar-inner {
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 100%;
    background: url('../img/star-full.png') repeat-x;
}

/* Tarteaucitron JS
------------------------------------------------------------------------*/
#tarteaucitronRoot #tarteaucitronAlertBig:before,
#tarteaucitronRoot #tarteaucitronServices #tarteaucitronMainLineOffset:before {
    content: '';
    display: block;
    margin: 0 auto 20px;
    width: 280px;
    height: 100px;
    background: url('../img/logo-lalanne-immobilier_280x100.png?2023') no-repeat 0 0 / 280px 100px;
}
@media
screen and (min-resolution: 1.5dppx),
screen and (-webkit-min-device-pixel-ratio: 1.5),
screen and (min-device-pixel-ratio: 1.5) {
    #tarteaucitronRoot #tarteaucitronAlertBig:before,
    #tarteaucitronRoot #tarteaucitronServices #tarteaucitronMainLineOffset:before {
        background-image: url('../img/logo-lalanne-immobilier_560x200.png?2023');
    }
}

/* Home
------------------------------------------------------------------------*/
.home-top {
    margin: -42px 0 40px;
    position: relative;
}
.home-slideshow {
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}
.home-slideshow .wrap ul {
    list-style: none;
    padding: 0;
    margin: 0;
}
.home-slideshow .wrap li {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    overflow: hidden;
    display: none;
}
.home-slideshow .wrap li:first-child {
    display: block;
}
.home-slideshow .wrap li:before,
.home-slideshow .wrap li:after {
    content: '';
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(23, 21, 20, 0.4);
}
.home-slideshow .wrap img {
    position: absolute;
    top: 0;
    left: 50%;
    max-width: none;
    min-width: 102%;
    min-height: 102%;
    width: auto;
    height: auto;
    transform: translate(-50%);
}
.home-top-content {
    position: relative;
    z-index: 2;
    padding: 30px 0 20px;
}
.home-top h1,
.home-top .h1 {
    line-height: 1;
}
.home-top h1 small,
.home-top .h1 small {
    margin-top: 8px;
    font-family: 'Figtree', sans-serif;
    font-size: 12px;
    font-weight: normal;
    text-transform: none;
    display: block;
}
.home-search .form-row,
.home-search .submit {
    margin-bottom: 10px;
}
.home-search .submit button {
    font-size: 20px;
    height: 35px;
}

.home-top-message .text,
.home-areas .text,
.home-agency-text .text,
.home-new-products .text,
.home-activities .text,
.home-estimate .text {
    text-align: center;
}

.home-map-wrapper {
    margin: 0 0 40px;
}
.home-map-areas {
    text-align: left;
}
.home-map-areas ul {
    list-style: none;
    padding: 0;
    margin: 0;
}
.home-map-areas li {
    display: none;
    width: 300px;
    margin: 0 auto;
    background: #fff;
}
.home-map-areas .img {
    opacity: 0.75;
}
.home-map-areas .img img {
    display: block;
}
.home-map-areas .text {
    text-align: inherit;
    padding: 20px 20px 0;
}
.home-map-areas h3 {
    margin-bottom: 0;
}
.home-map-areas .product-links:before {
    content: '';
    display: block;
    margin: 0 auto 20px;
    width: 55px;
    border-top: 1px solid currentColor;
}
.home-map-areas .product-links {
    overflow: hidden;
}
.home-map-areas .product-link {
    float: left;
    width: 50%;
    padding: 0 0 0 10px;
    text-align: left;
}
.home-map-areas .product-link:first-child {
    padding-left: 0;
    padding-right: 10px;
}
.home-map-areas .product-link .title {
    display: block;
    text-transform: uppercase;
    margin-bottom: 10px;
    font-size: 12px;
}
.home-map-areas .product-link .title strong {
    float: left;
    font-size: 38px;
    font-weight: bold;
    line-height: 1;
    margin: 0 5px 0 0;
}
.home-map-areas .product-link p {
    clear: both;
}

.home-map {
    height: 250px;
}
.labelled-map .area-label {
    position: absolute;
    color: #000;
    font-size: 12px;
    /* Tripled to make it more opaque */
    text-shadow: #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px;
}

.home-top-message {
    margin: -40px 0 40px;
}
.banner-message {
    padding: 30px 0 10px;
}
.banner-message .text {
    text-align: center;
    font-size: 14px;
}
.home-bottom-message .encoded_email:not(.decoded-email) {
    visibility: hidden;
}
.home-bottom-message.banner-message {
    padding-top: 50px;
    padding-bottom: 30px;
}
.home-agency-text {
    margin: 0 0 20px;
}
.home-estimate {
    padding: 20px 0 0;
    margin: 0 0 40px;
}

.list-activities ul {
    list-style: none;
    padding: 0;
    margin: 40px 0 0;
}
.list-activities li {
    text-align: center;
    margin: 0 0 40px;
}
.list-activities [class^="icon-"],
.list-activities [class*=" icon-"] {
    font-size: 56px;
    display: block;
    margin: 0 0 20px;
}
.list-activities h3,
.list-activities .h3 {
    text-align: center;
    margin: 0;
}
.home-list-activities a {
    display: block;
    text-decoration: none;
}
.home-list-activities [class^="icon-"],
.home-list-activities [class*=" icon-"] {
    text-decoration: none;
    transition: all 0.2s;
}
.home-list-activities a:hover {
    text-decoration: none;
}
.home-list-activities a:hover [class^="icon-"],
.home-list-activities a:hover [class*=" icon-"] {
    color: #FFD1B3;
}

.home-new-products {
    background: url('../img/bg-new-products_640.jpg?20230118') no-repeat 50%;
    background-size: cover;
    padding: 30px 0 10px;
    margin: 0 0 40px;
}
.home-new-products .see-more {
    text-align: center;
    margin-top: 20px;
}
.slider-new-products .wrap ul {
    list-style: none;
    padding: 0;
    margin: 0;
    font-size: 0;
    white-space: nowrap;
    overflow: auto;
    text-align: center;
}
.slider-new-products .wrap li {
    display: inline-block;
    vertical-align: top;
    width: 220px;
    max-width: 80%;
    margin: 0 0 20px 20px;
    font-size: 12px;
    text-align: left;
    white-space: normal;
}
.slider-new-products .wrap li:first-child {
    margin-left: 0;
}

.slider-new-products .wrap a {
    display: block;
    color: #171514;
    font-weight: normal;
    text-decoration: none;
}
.slider-new-products .wrap a:hover {
    text-decoration: none;
}
.slider-new-products .wrap .img {
    overflow: hidden;
    position: relative;
}
.slider-new-products .wrap .img img {
    display: block;
    transition: transform 0.2s;
}
.slider-new-products .wrap a:hover .img img {
    transform: scale(1.1);
}
.slider-new-products .wrap .img .banners {
    position: absolute;
    top: 20px;
    left: 0;
}
.slider-new-products .wrap .img .banner {
    display: table;
    color: #fff;
    padding: 8px 15px;
    font-size: 10px;
    font-weight: bold;
    text-transform: uppercase;
}
.slider-new-products .wrap .img .banner + .banner {
    margin-top: 10px;
}
.slider-new-products .wrap .type {
    background: #FEDFCB;
    font-size: 14px;
    line-height: 30px;
    height: 30px;
    font-weight: bold;
    text-align: center;
    text-transform: uppercase;
    width: 150px;
    margin: -12px auto 0;
    position: relative;

    transition: background-color 0.2s;
}
.slider-new-products .wrap a:hover .type {
    background: #FFD1B3;
}
.slider-new-products .wrap .desc {
    background: #fff;
    margin-top: -18px;
    padding: 35px 20px 10px;
}
.slider-new-products .wrap .title {
    display: block;
    height: 42px;
    overflow: hidden;
}
.slider-new-products .wrap .price {
    font-weight: bold;
}
.slider-new-products .favorite-container {
    --favorite-offset: 10px;
    --favorite-size: 30px;
}
.slider-new-products .nav {
    display: none;
}

.list-home-news {
    margin-top: 40px;
    padding-bottom: 20px;
}
.list-home-news ul {
    list-style: none;
    padding: 0;
    margin: 0;
}
.list-home-news li {
    text-align: left;
}
.list-home-news li a {
    display: block;
    overflow: hidden;
    text-decoration: none;
}
.list-home-news li a:hover {
    text-decoration: none;
}
.list-home-news .img {
    width: 140px;
    margin: 0 auto 20px;
    overflow: hidden;

    transition: transform 0.2s;
    transform: translateZ(1px);
}
.list-home-news a:hover .img {
    transform: scale(0.8) rotate(-15deg);
}
.list-home-news .img img {
    display: block;
    margin: 0 auto;

    transition: transform 0.2s;
    transform: translateZ(1px);
}
.list-home-news a:hover .img img {
    transform: scale(1.25) rotate(15deg);
}
.list-home-news h3,
.list-home-news .h3 {
    font-size: 15px;
    text-transform: uppercase;
    margin-bottom: 10px;
}
.list-home-news .text {
    font-weight: normal;
}

/* Content
------------------------------------------------------------------------*/
.main-content {
    padding-top: 40px;
}

.dark-bg {
    color: #fff;
}
.dark-bg h1,
.dark-bg h2,
.dark-bg h3,
.dark-bg h4,
.dark-bg .h1,
.dark-bg .h2,
.dark-bg .h3,
.dark-bg .h4 {
    color: #fff;
}

.black-bg {
    background: #171514;
}
.grey-bg {
    background: #F2F2F2;
}
.blurry-picture-bg {
    background: url('../img/bg-blurry-picture_640.jpg?20230118') no-repeat 50%;
    background-size: cover;
}

.tabs-nav ul {
    list-style: none;
    padding: 0;
    margin: 0 -10px;
    font-size: 0;
    text-align: center;
}
.tabs-nav li {
    display: inline-block;
    vertical-align: top;
    padding: 0 10px;
    font-size: 12px;
    margin: 0 0 20px;
}
.tabs-nav li:first-child {
    margin-left: 0;
}
.tabs-nav a {
    display: block;
    font-size: 16px;
    font-weight: normal;
    text-transform: uppercase;
    padding: 5px 9px;
    border: 1px solid #FEDFCB;
    color: #171514;
    text-decoration: none;

    transition: border-color 0.2s;
}
.tabs-nav a:hover {
    border-color: #FFD1B3;
}
.tabs-nav .active a {
    background: #FEDFCB;
    border-color: #FEDFCB;
}

.pagination {
    text-align: right;
    font-size: 0;
    margin: 0 0 20px;
}
.pagination > a,
.pagination > span {
    display: inline-block;
    vertical-align: top;
    text-decoration: none;
    width: 44px;
    height: 44px;
    line-height: 44px;
    font-size: 18px;
    text-align: center;
    margin: 0 0 0 10px;
}
.pagination > a {
    border: 1px solid #FEDFCB;
    font-weight: normal;
    transition: border-color 0.2s;
}
.pagination > a:hover {
    border-color: #FFD1B3;
}
.pagination > span {
    background: #FEDFCB;
    border-color: #FEDFCB;
}
.pagination .prev:hover {
    text-indent: -8px;
}
.pagination .next:hover {
    text-indent: 8px;
}

/* List products and search
------------------------------------------------------------------------*/
.results-header {
    overflow: hidden;
}
.search-form {
    margin: 0 -10px 20px;
}
.search-form .search-sidebar {
    padding: 0;
}
.search-form .search-sidebar-header {
    padding: 20px 20px 0;
    overflow: hidden;
    cursor: pointer;
    position: relative;
}
.search-form .search-sidebar-header:after {
    position: absolute;
    top: 50%;
    right: 20px;
    font-size: 16px;
    width: 16px;
    height: 16px;
    margin-top: -8px;
    content: "\e802";

    font-family: 'icomoon';
    /*noinspection CssUnknownProperty*/
    speak: none;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;

    /* Better Font Rendering =========== */
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
.search-form .search-sidebar-body {
    height: 0;
    overflow: hidden;
}
.search-form .search-sidebar.open .search-sidebar-body {
    height: auto;
}
.search-form .search-sidebar.open .search-sidebar-header:after {
    content: "\e901";
}
.search-form .search-sidebar-body-inner {
    overflow: hidden;
    padding: 0 20px;
}
.search-form .search-sidebar-body-inner form {
    display: flex;
    flex-wrap: wrap;
    margin-left: -10px;
    margin-right: -10px;
}
.search-form .search-sidebar-body-inner form > .form-row,
.search-form .search-sidebar-body-inner form > .compositeField,
.search-form .search-sidebar-body-inner form > .reinit,
.search-form .search-sidebar-body-inner form > .submit {
    flex: none;
    width: 100%;
    padding-left: 10px;
    padding-right: 10px;
}
.search-form .search-sidebar-body-inner form > .form-row-small {
    width: 50%;
}
.search-form .search-sidebar:after {
    /* clearfix */
    content: '';
    display: table;
    clear: both;
}
.search-form .switch .field {
    display: inline-block;
    vertical-align: top;
    width: 50%;
    position: relative;
    overflow: hidden;
}
.search-form .switch .field input {
    position: absolute;
    left: -9999em;
}
.search-form .switch .field label {
    text-transform: uppercase;
    font-size: 14px;
    display: block;
    text-align: center;
    border: 1px solid #FEDFCB;
    height: 35px;
    line-height: 35px;
    cursor: pointer;
}
.search-form .switch .field input:focus + label,
.search-form .switch .field label:hover {
    border-color: #FFD1B3;
}
.search-form .switch .field input:checked + label {
    background: #FEDFCB;
    border-color: #FEDFCB;
    cursor: default;
}
.search-form .area-checkboxes .control-label,
.email-alert-popup .area-checkboxes .control-label {
    display: block;
    margin: 0 0 10px;
}
.search-form .area-checkboxes .controls,
.email-alert-popup .area-checkboxes .controls {
    margin: 0 -10px;
}
.search-form .area-checkboxes .controls .field,
.email-alert-popup .area-checkboxes .controls .field {
    display: inline-block;
    vertical-align: top;
    width: 50%;
    padding: 0 10px;
    margin: 0 0 10px;
}
.email-alert-search-fields > .compositeField > fieldset {
    display: flex;
    flex-wrap: wrap;
    margin-left: -10px;
    margin-right: -10px;
}
.email-alert-search-fields > .compositeField > fieldset > .form-row {
    flex: none;
    width: 100%;
    padding-left: 10px;
    padding-right: 10px;
}
.email-alert-search-fields > .compositeField > fieldset > .form-row-small {
    width: 50%;
}
.search-form .monthly_income {
    position: relative;
}
.search-form .monthly_income input[type="checkbox"] {
    position: absolute;
    left: -100px;
}
.search-form .monthly_income label {
    cursor: pointer;
}
.search-form .monthly_income label:hover {
    text-decoration: underline;
}
.search-form .form-row label,
.search-form .form-row .control-label {
    font-size: 12px;
}
.search-form .checkboxGroupField.inline .field {
    display: inline-block;
    margin-right: 15px;
}
.search-form .reinit {
    margin-top: -10px;
    font-size: 12px;
}
.search-form .submit button {
    padding: 4px 14px;
    width: 100%;
}

.search-form .search-map {
    display: none;
}

.search-results .results-top {
    overflow: hidden;
}
.search-results .results-sort span.default {
    color: #171514;
}

.list-products ul {
    list-style: none;
    padding: 0;
    margin: 0;
}
.list-products li {
    position: relative;
    margin: 0 0 20px;
}
.list-products li a {
    display: block;
    font-weight: normal;
}
.list-products .img {
    overflow: hidden;
    position: relative;
}
.list-products .img img {
    display: block;
    transform-origin: 50% 100%;

    transition: transform 0.2s;
}
.list-products a:hover .img img {
    transform: scale(1.1);
}
.list-products .img .banners {
    position: absolute;
    top: 20px;
    left: 0;
}
.list-products a:focus .img .banners,
.list-products a:hover .img .banners {
    z-index: 0;
}
.list-products .img .banner {
    display: table;
    color: #fff;
    padding: 8px 15px;
    font-size: 10px;
    font-weight: bold;
    text-transform: uppercase;
}
.list-products .img .banner + .banner {
    margin-top: 10px;
}
.list-products .text {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(23, 21, 20, 0.75);
    font-size: 17px;
    color: #fff;
    padding: 10px;

    transition: all 0.2s;
}
.list-products a:hover .text {
    padding: 20px 10px;
}
.list-products .text h2.name {
    font-family: 'Figtree', sans-serif;
    font-size: 17px;
    color: #fff;
    display: inline;
}
.list-products .text .name {
    text-transform: uppercase;
}
.list-products .text .surface {
    font-weight: bold;
}
.list-products .text .price {
    font-weight: bold;
    color: #FEDFCB;
}
.list-products .text .price small {
    font-size: 12px;
}

/* Product detail
------------------------------------------------------------------------*/
.product-detail header {
    font-size: 25px;
    margin: 0 0 20px;
}
.product-detail h2,
.product-detail .h2 {
    display: inline;
}
.product-detail header .price {
    font-weight: bold;
    font-size: 30px;
    display: inline-block;
    line-height: 1.2;
}
.product-detail header .price small {
    font-size: 17px;
    display: inline-block;
    text-transform: uppercase;
}
.product-detail header .price .smaller {
    font-size: 12px;
}
.product-detail header .price small .nocaps {
    text-transform: none;
}
.product-photos {
    position: relative;
    margin: 0 -10px 30px;
}
.product-photos .main {
    position: relative;
    z-index: 1;
    margin-bottom: 20px;
}
.product-photos .main ul {
    list-style: none;
    padding: 0;
    margin: 0;
}
.product-photos .main .banners {
    position: absolute;
    top: 20px;
    left: 0;
}
.product-photos .main .banner {
    display: table;
    color: #fff;
    padding: 10px 15px;
    font-size: 14px;
    font-weight: bold;
    text-transform: uppercase;
}
.product-photos .main .banner + .banner {
    margin-top: 10px;
}
.product-photos .main li {
    display: none;
}
.product-photos .main li:first-child {
    display: block;
}
.product-photos .main li img {
    display: block;
}
.product-photos .nav {
    position: relative;
    z-index: 2;
    overflow: hidden;
}
.product-photos .nav ul {
    list-style: none;
    padding: 0;
    margin: 0 -15px;
    white-space: nowrap;
    overflow: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    font-size: 0;
}
.product-photos .nav li {
    display: inline-block;
    vertical-align: top;
    padding: 0 10px;
    position: relative;
    overflow: hidden;
    cursor: pointer;
    width: 160px;
}
.product-photos .nav .virtual-visit a {
    position: relative;
    display: block;
    text-decoration: none;
}
.product-photos .nav .virtual-visit a::before {
    content: '';
    display: block;
    padding-top: calc(93 / 140 * 100%);
}
.product-photos .nav .virtual-visit img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.product-photos .nav .virtual-visit-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(254, 223, 203, 0.75);
    color: #171514;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    text-transform: uppercase;
    font-weight: normal;
}
.product-photos .nav .virtual-visit-text {
    font-size: 12px;
    font-weight: bold;
    text-transform: uppercase;
}
.product-photos .nav .virtual-visit-text [class^="icon-"],
.product-photos .nav .virtual-visit-text [class*=" icon-"] {
    display: block;
    text-align: center;
    font-size: 24px;
    width: 24px;
    height: 24px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 10px;
}
.product-photos .nav li img {
    display: block;
}
.product-photos .nav .prev,
.product-photos .nav .next {
    position: absolute;
    z-index: 2;
    top: 0;
    bottom: 0;
    width: 30px;
    background: rgba(254, 223, 203, 0.75);
    color: #171514;

    transition: background-color 0.2s;
}
.product-photos .nav .prev.disabled,
.product-photos .nav .next.disabled {
    display: none;
}
.product-photos .nav .prev:hover,
.product-photos .nav .next:hover {
    background-color: rgba(254, 223, 203, 1);
}
.product-photos .nav .prev [class^="icon-"],
.product-photos .nav .prev [class*=" icon-"],
.product-photos .nav .next [class^="icon-"],
.product-photos .nav .next [class*=" icon-"] {
    font-size: 15px;
    width: 15px;
    height: 15px;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
}
.product-photos .nav .prev {
    left: 0;
}
.product-photos .nav .next {
    right: 0;
}

.product-main-col {
    margin: 0 0 40px;
}
.product-desc-info {
    list-style: none;
    padding: 0;
}
.product-desc-info .label {
    font-weight: bold;
}

.product-info-col {
    margin: 0 0 40px;
}
.product-info-col .content {
    margin: 0 -10px;
    padding: 20px 10px 0;
    overflow: hidden;
}
.product-info {
    list-style: none;
    padding: 0;
}
.product-info li {
    font-weight: bold;
}
.product-info .label {
    font-weight: normal;
}

.product-eco {
    margin: 0 0 20px;
}
.product-eco-graph {
    position: relative;
    overflow: hidden;
}
.product-eco-graph-inner {
    overflow: hidden;
}
.product-eco-graph .in-progress {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 20px;
    margin-top: 0;
    margin-bottom: 0;
    background: rgba(244, 242, 241, 0.7);
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: bold;
    text-transform: uppercase;
}
.product-eco-graph-part {
    max-width: 300px;
    margin: 0 auto 20px;
}
.product-eco-graph .dpe,
.product-eco-graph .ges {
    position: relative;
    height: 280px;
}
.product-eco-graph-old .dpe {
    background: url('../img/graph-dpe.png') no-repeat 0 0;
}
.product-eco-graph-old .ges {
    background: url('../img/graph-ges.png') no-repeat 0 0;
}
.product-eco-graph-old .value {
    position: absolute;
    right: 0;
    width: 114px;
    height: 31px;
    background-repeat: no-repeat;
    font-size: 12px;
    text-align: right;
    padding-right: 10px;
    line-height: 32px;
    color: #171514;
}
.product-eco-graph-old .dpe .value {
    background-image: url('../img/graph-dpe-s.png');
}
.product-eco-graph-old .ges .value {
    background-image: url('../img/graph-ges-s.png');
}
.product-eco-graph-old .value-a {
    top: 16px;
    background-position: 0 0;
}
.product-eco-graph-old .value-b {
    top: 50px;
    background-position: 0 -34px;
}
.product-eco-graph-old .value-c {
    top: 84px;
    background-position: 0 -68px;
}
.product-eco-graph-old .value-d {
    top: 118px;
    background-position: 0 -102px;
}
.product-eco-graph-old .value-e {
    top: 152px;
    background-position: 0 -136px;
}
.product-eco-graph-old .value-f {
    top: 186px;
    background-position: 0 -170px;
}
.product-eco-graph-old .value-g {
    top: 220px;
    background-position: 0 -204px;
    color: #fff;
}
.product-eco-graph-new .dpe {
    background: url('../img/graph-dpe-2.png') no-repeat 0 0;
}
.product-eco-graph-new .ges {
    background: url('../img/graph-ges-2.png') no-repeat 0 0;
}
.product-eco-graph-new .value {
    position: absolute;
    right: 0;
    width: 124px;
    font-size: 12px;
    padding: 10px;
    border: 1px solid;
    color: #171514;
}
.product-eco-graph-new .value::before {
    content: '';
    position: absolute;
    right: 100%;
    border-top: 1px solid;
    border-color: inherit;
}
.product-eco-graph-new .value-letter {
    font-size: 18px;
    display: block;
    font-weight: bold;
}
.product-eco-graph-new .value-title {
    display: block;
    font-weight: bold;
}
.product-eco-graph-new .value-a {
    top: 20px;
}
.product-eco-graph-new .value-a::before {
    left: -83px;
}
.product-eco-graph-new .value-b {
    top: 54px;
}
.product-eco-graph-new .value-b::before {
    left: -73px;
}
.product-eco-graph-new .value-c {
    top: 88px;
}
.product-eco-graph-new .value-c::before {
    left: -63px;
}
.product-eco-graph-new .value-a::before,
.product-eco-graph-new .value-b::before,
.product-eco-graph-new .value-c::before {
    top: 14px;
}
.product-eco-graph-new .value-d {
    top: 137px;
    transform: translateY(-50%);
}
.product-eco-graph-new .value-d::before {
    top: 50%;
    left: -53px;
}
.product-eco-graph-new .value-e {
    top: 186px;
    transform: translateY(-100%);
}
.product-eco-graph-new .value-e::before {
    left: -43px;
}
.product-eco-graph-new .value-f {
    top: 220px;
    transform: translateY(-100%);
}
.product-eco-graph-new .value-f::before {
    left: -33px;
}
.product-eco-graph-new .value-g {
    top: 254px;
    transform: translateY(-100%);
}
.product-eco-graph-new .value-g::before {
    left: -23px;
}
.product-eco-graph-new .value-e::before,
.product-eco-graph-new .value-f::before,
.product-eco-graph-new .value-g::before {
    bottom: 13px;
}
.product-eco-graph-new .dpe .value-a {
    border-color: #00a650;
}
.product-eco-graph-new .dpe .value-b {
    border-color: #4cb948;
}
.product-eco-graph-new .dpe .value-c {
    border-color: #c1d72e;
}
.product-eco-graph-new .dpe .value-d {
    border-color: #fef300;
}
.product-eco-graph-new .dpe .value-e {
    border-color: #fdb912;
}
.product-eco-graph-new .dpe .value-f {
    border-color: #f46e20;
}
.product-eco-graph-new .dpe .value-g {
    border-color: #ec1d23;
}
.product-eco-graph-new .ges .value-a {
    border-color: #a3dbfc;
}
.product-eco-graph-new .ges .value-b {
    border-color: #8ab5d2;
}
.product-eco-graph-new .ges .value-c {
    border-color: #5e708d;
}
.product-eco-graph-new .ges .value-d {
    border-color: #61708e;
}
.product-eco-graph-new .ges .value-e {
    border-color: #4d5272;
}
.product-eco-graph-new .ges .value-f {
    border-color: #393550;
}
.product-eco-graph-new .ges .value-g {
    border-color: #291b35;
}
.product-eco-graph-note {
    clear: left;
}
.product-geo {
    margin: 0 0 40px;
}

.product-sharing {
    margin: 0 0 20px;
}
.product-sharing .addthis_sharing_toolbox {
    display: inline-block;
}

.product-around {
    margin: 0 0 70px;
    clear: both;
}
.product-around-map-wrap {
    margin: 0 -10px;
}
.product-around-map {
    height: 250px;
}
.product-around-legend {
    overflow: hidden;
    padding: 20px 10px 0;
    text-align: center;
}
.product-around-legend ul {
    list-style: none;
    padding: 0;
    margin: 0;
    font-size: 0;
}
.product-around-legend li {
    display: inline-block;
    vertical-align: top;
    width: 50%;
    padding: 20px 10px;
    font-size: 12px;
}
.product-around-legend li:before {
    content: '';
    width: 29px;
    height: 45px;
    background: no-repeat 0 0;
    display: block;
    margin: 0 auto 5px;
}
.product-around-legend .shop:before {
    background-image: url('../img/icn-marker-shop.png');
}
.product-around-legend .useful:before {
    background-image: url('../img/icn-marker-useful.png');
}
.product-around-legend .health:before {
    background-image: url('../img/icn-marker-health.png');
}
.product-around-legend .transport:before {
    background-image: url('../img/icn-marker-transport.png');
}
.product-around-legend .education:before {
    background-image: url('../img/icn-marker-education.png');
}
.product-around-legend .hangout:before {
    background-image: url('../img/icn-marker-hangout.png');
}

.product-similar-products {
    padding: 40px 0 30px;
}

.compute-popup .form-row .control-label {
    display: block;
    margin: 0 0 10px;
}
.compute-popup .form-row.error input[type="text"] {
    color: red;
}
.compute-popup .total {
    text-align: center;
}
.compute-popup .total .value {
    font-weight: bold;
}
.compute-popup .total small {
    display: block;
    font-size: 10px;
}
.product-main-col .contact-form {
    padding: 30px;
    margin-top: 30px;
}
.product-main-col .contact-form .submit {
    text-align: center;
}
/* Activity detail
------------------------------------------------------------------------*/
.activity-header {
    margin-top: -40px;
}
.activity-header .img {
    display: none;
}
.activity-header .text {
    padding: 40px 20px 20px;
    max-width: 600px;
}
.activity-header h2,
.activity-header .h2 {
    text-align: left;
}
/* This is not used on production. An image is used instead. */
.activity-header .graphic {
    background: url('../img/ex_activity_icn.png?20230118') no-repeat 50% 20px;
    list-style: none;
    padding: 0;
    position: relative;
    height: 160px;
    width: 280px;
    margin: 0 auto 20px;
}
.activity-header .graphic li {
    font-weight: bold;
    font-size: 16px;
    position: absolute;
}
.activity-header .graphic .entity-1 {
    top: 0;
    left: 0;
}
.activity-header .graphic .entity-2 {
    top: 0;
    right: 0;
}
.activity-header .graphic .entity-3 {
    left: 0;
    right: 0;
    bottom: 0;
    text-align: center;
}


.activity-list-options ul {
    position: relative;
    list-style: none;
    padding: 0;
    margin: 60px 0;
}
.activity-list-options ul:before {
    content: '';
    position: absolute;
    top: 0;
    left: 19px;
    height: 100%;
    width: 2px;
    background: #171514;
}
.activity-list-options li {
    position: relative;
    height: 40px;
    line-height: 40px;
    margin: 0 0 40px;
    opacity: 0;
    transform: translateY(100px);
    transition: 0.4s;
    transition-property: transform, opacity;
}
.activity-list-options .appeared {
    opacity: 1;
    transform: translateY(0);
}
.activity-list-options .icon {
    position: absolute;
    left: 0;
    top: 50%;
    margin-top: -20px;
    color: #171514;
    font-size: 25px;
    text-align: center;
    line-height: 40px;
    width: 40px;
    height: 40px;
    background: #FEDFCB;
    padding-top: 3px;

    transform: rotate(-15deg);
}
.activity-list-options [class^="icon-"]:before,
.activity-list-options [class*=" icon-"]:before {
    display: inline-block;
    transform: rotate(15deg);
}
.activity-list-options .text {
    text-transform: uppercase;
    color: #171514;
    margin-left: 60px;
    display: inline-block;
    vertical-align: middle;
    line-height: 1.2;
}
.activity-list-options .text strong {
    font-size: 25px;
}

.activity-plus {
    padding: 40px 0 40px;
    margin-bottom: -20px;
}
.activity-plus ul {
    padding-left: 20px;
}
.activity-plus li {
    margin: 0 0 10px;
}
.activity-plus .actions {
    text-align: center;
}

/* Agency
------------------------------------------------------------------------*/
.agency-header {
    margin-top: -40px;
    margin-bottom: 40px;
}
.agency-header .img {
    display: none;
}
.agency-header .text {
    padding: 40px 20px 20px;
    max-width: 600px;
}
.agency-header h2,
.agency-header .h2 {
    text-align: left;
}
.agency-header .actions {
    text-align: center;
    padding-top: 20px;
}
.agency-header .actions .btn {
    padding: 4px 29px;
}

.agency-timeline ul {
    position: relative;
    list-style: none;
    padding: 0;
    margin: 40px 0;
}
.agency-timeline ul:before {
    content: '';
    position: absolute;
    top: 0;
    left: 6px;
    height: 100%;
    width: 2px;
    background: #171514;
}
.agency-timeline li {
    position: relative;
    margin: 0 0 40px;
    opacity: 0;
    transform: translateY(100px);
    transition: 0.4s;
    transition-property: transform, opacity;
}
.agency-timeline .appeared {
    opacity: 1;
    transform: translateY(0);
}
.agency-timeline .icon {
    position: absolute;
    left: 0;
    top: 0;
    margin-top: 10px;
    width: 14px;
    height: 14px;
    background: #FEDFCB;

    transform: rotate(-15deg);
}
.agency-timeline .text {
    text-transform: uppercase;
    margin-left: 25px;
    display: inline-block;
    vertical-align: middle;
    line-height: 1.2;
}
.agency-timeline .text strong {
    font-size: 25px;
    display: block;
}

.agency-specialty {
    padding: 40px 0;
}
.agency-specialty .youtube_player iframe {
    display: block;
    max-width: 100%;
    margin: 0 auto 20px;
}
.agency-team {
    text-align: center;
    padding: 40px 0;
    background: url('../img/bg-team_640.jpg') no-repeat 50%;
    background-size: cover;
    margin-bottom: -20px;
}
.agency-team .intro {
    max-width: 90%;
    margin-left: auto;
    margin-right: auto;
}
.agency-team .team-list ul {
    list-style: none;
    padding: 0;
    margin: 0 -10px;
    font-size: 0;
}
.agency-team .team-list li {
    margin: 0 0 40px;
    display: inline-block;
    vertical-align: top;
    padding: 0 10px;
    width: 240px;
}
.agency-team .team-list .img {
    position: relative;
    overflow: hidden;
    width: 140px;
    height: 140px;
    margin: 0 auto -60px;

    transform: rotate(-15deg);
}
.agency-team .team-list .img img {
    position: absolute;
    max-width: none;
    top: 50%;
    left: 50%;

    transform: translate(-50%, -50%) rotate(15deg);
}
.agency-team .team-list .text {
    background: #fff;
    color: #171514;
    font-size: 12px;
    padding: 90px 10px 10px;
}
.agency-team .team-list .text strong {
    display: block;
    font-size: 14px;
}

/* Area
------------------------------------------------------------------------*/
.area-header {
    margin-top: -40px;
}
.area-header .img {
    display: none;
}
.area-header .text {
    padding: 40px 20px 20px;
    max-width: 600px;
}
.area-info {
    padding: 40px 0 0;
}
.area-info ul {
    list-style: none;
    padding: 0;
    margin: 0;
    text-align: center;
}
.area-info li {
    margin: 0 0 40px;
    text-align: center;
}
.area-info [class^="icon-"],
.area-info [class*=" icon-"] {
    display: block;
    text-align: center;
    font-size: 70px;
    margin: 0 0 30px;
}
.area-info .label {
    display: block;
    margin: 0 0 20px;
    font-family: 'Playfair Display', serif;
    text-transform: uppercase;
    font-size: 25px;
}
.area-info .value {
    font-weight: bold;
}
.area-info .value.number {
    font-size: 45px;
    line-height: 1;
}
.area-detail-generic-text-zone {
    padding-top: 40px;
    padding-bottom: 20px;
}
.all-properties-from-area p {
    float: right;
    margin: 0;
}
/* News
------------------------------------------------------------------------*/
.news-detail h2,
.news-detail .h2 {
    text-align: left;
}
.list-news {
    margin-top: -20px;
    padding-bottom: 40px;
}
.list-news ul {
    list-style: none;
    padding: 0;
    margin: 0 -10px;
    font-size: 0;
}
.list-news li {
    display: inline-block;
    vertical-align: top;
    padding: 0 10px;
    font-size: 12px;
    margin: 60px 0 20px;
    width: 100%;
}
.list-news .news-item {
    background: #F2F2F2;
    padding: 20px 20px 10px;

    transition: background-color 0.3s;
}
.list-news .news-item:hover {
    background-color: #FEDFCB;
}
.list-news .img {
    width: 140px;
    height: 140px;
    position: relative;
    overflow: hidden;
    margin: -50px auto 30px;

    transition: transform 0.2s;
    transform: rotate(-15deg);
}
.list-news .img img {
    position: absolute;
    max-width: none;
    top: 50%;
    left: 50%;

    transition: transform 0.2s;
    transform: translate(-50%, -50%) rotate(15deg);
}
.list-news .news-item:hover .img {
    transform: rotate(15deg);
}
.list-news .news-item:hover .img img {
    transform: translate(-50%, -50%) rotate(-15deg);
}
.list-news h3,
.list-news .h3 {
    margin-bottom: 10px;
}
.list-news h3 a,
.list-news .h3 a {
    font-weight: normal;
    text-decoration: none;
}
.list-news .news-item:hover h3 a,
.list-news .news-item:hover .h3 a {
    text-decoration: underline;
}

/* Contact
------------------------------------------------------------------------*/
.contact-map {
    position: relative;
    margin-top: -40px;
    overflow: hidden;
}
#contact-map {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}
.contact-map > .wrapper {
    position: relative;
}
.contact-map-info {
    position: relative;
    width: 100%;
    max-width: 380px;
    padding: 52px 0 10px;
    float: right;
}
.contact-map-info-agency {
    padding: 20px;
    background: #fff;
    margin: 0 0 20px;
}
.contact-map-info .name {
    font-size: 20px;
    text-transform: uppercase;
    background: #FEDFCB;
    margin: -20px -20px 20px;
    padding: 10px 20px;
}
.contact-map-info h2,
.contact-map-info .h2 {
    text-align: left;
}
.contact-map-info ul {
    list-style: none;
    padding: 0;
    margin: 0;
}
.contact-map-info li {
    margin: 0 0 10px;
    position: relative;
    padding-left: 40px;
}
.contact-map-info [class^="icon-"],
.contact-map-info [class*=" icon-"] {
    position: absolute;
    top: 4px;
    left: 0;
}
.contact-map-info .address [class^="icon-"],
.contact-map-info .address [class*=" icon-"] {
    font-size: 22px;
}
.contact-map-info address .name {
    text-transform: uppercase;
}
.contact-map-info .label {
    font-weight: bold;
}
.contact-form-wrap {
    padding-top: 40px;
    padding-bottom: 30px;
    margin-bottom: -20px;
}
.contact-form {
    max-width: 620px;
    margin: 0 auto;
}
.contact-map .tac_activate .tac_float {
    vertical-align: top;
}

.contact-map .tac_activate .tarteaucitronAllow {
    position: relative;
    z-index: 2;
}
/* Footer
------------------------------------------------------------------------*/
.product-footer-info {
    padding: 40px 0 30px;
    text-align: center;
    margin-bottom: -20px;
}
.product-footer-info .actions .btn {
    margin-top: 10px;
    padding: 4px 29px;
}
.product-footer-info .actions .btn:first-child {
    margin-top: 0;
}
.product-footer-info.blurry-picture-bg .wrapper {
    max-width: 1200px;
}
.product-footer-info.blurry-picture-bg h2 {
    color: #fff;
}
.product-footer-info.blurry-picture-bg .actions .btn.active {
    background-color: #FFD1B3;
}

.footer {
    position: relative;
    background: #171514;
    margin: 20px 0 0;
    padding: 30px 0 10px;
    text-align: center;
}
.footer::before {
    content: '';
    position: absolute;
    top: 0;
    left: 10px;
    right: 10px;
    width: auto;
    border-top: 1px solid rgba(255, 255, 255, 0.5);
}
.footer .copy button {
    font: inherit;
    background: none;
    padding: 0;
    margin: 0;
    border: 0;
}
.footer .copy button:focus,
.footer .copy button:hover {
    text-decoration: underline;
}
.footer .copy a,
.footer .copy button {
    text-decoration: none;
    color: #fff;
    font-weight: normal;
}
.footer .copy a:focus,
.footer .copy a:hover,
.footer .copy button:focus,
.footer .copy button:hover {
    text-decoration: underline;
}
.footer .copy img {
    vertical-align: middle;
}
.footer-logo {
    display: block;
    margin: 0 auto 10px;
}

.footer .js-manage-cookies {
    background: none;
    padding: 0;
    border: 0;
    margin: 0;
    font-weight: normal;
    font-size: inherit;
    font-family: inherit;
    letter-spacing: 0;
    color: inherit;
}
.footer .js-manage-cookies:focus,
.footer .js-manage-cookies:hover {
    text-decoration: underline;
}

@media (min-width: 640px) {

    body {
        font-size: 14px;
    }

    h1, .h1 {
        font-size: 52px;
    }
    h2, .h2 {
        font-size: 35px;
    }
    h3, .h3, .highlight {
        font-size: 25px;
    }
    h4, .h4 {
        font-size: 16px;
    }
    .small-title {
        font-size: 16px;
    }

    input[type="text"],
    input[type="password"],
    input[type="datetime"],
    input[type="datetime-local"],
    input[type="date"],
    input[type="month"],
    input[type="time"],
    input[type="week"],
    input[type="number"],
    input[type="email"],
    input[type="url"],
    input[type="search"],
    input[type="tel"],
    input[type="color"],
    input[type="button"],
    input[type="reset"],
    input[type="submit"],
    button,
    textarea {
        font-size: 14px;
    }

    .img-left {
        float: left;
        margin: 0 20px 20px 0;
    }
    .img-right {
        float: right;
        margin: 0 0 20px 20px;
    }

    .three-images {
        font-size: 0;
    }
    .three-images img {
        display: inline-block;
        vertical-align: middle;
        width: 32%;
        margin: 0 0 0 2%;
    }
    .three-images img:first-child {
        margin-left: 0;
    }

    .cols {
        font-size: 0;
        margin: 0 -10px;
    }
    .cols .col {
        display: inline-block;
        vertical-align: top;
        width: 50%;
        padding: 0 10px;
        font-size: 14px;
    }
    .cols-valign .col {
        vertical-align: middle;
    }

    .text-large {
        font-size: 16px;
    }

    /* Forms, buttons
    ------------------------------------------------------------------------*/
    .form-cols {
        font-size: 0;
        margin: 0 -10px;
    }
    .form-cols .form-row,
    .form-cols.form-cols-mobile .form-row {
        display: inline-block;
        vertical-align: top;
        width: 50%;
        padding: 0 10px;
        font-size: 14px;
    }
    .form-row .unit {
        font-size: 14px;
    }
    .form-row input[type="text"],
    .form-row input[type="password"],
    .form-row input[type="datetime"],
    .form-row input[type="datetime-local"],
    .form-row input[type="date"],
    .form-row input[type="month"],
    .form-row input[type="time"],
    .form-row input[type="week"],
    .form-row input[type="number"],
    .form-row input[type="email"],
    .form-row input[type="url"],
    .form-row input[type="search"],
    .form-row input[type="tel"],
    .form-row input[type="color"],
    .form-row textarea,
    .select-like,
    .btn,
    .submit button {
        font-size: 14px;
    }

    .form-row .checkrad,
    .form-row .checkbox,
    .form-row .radio {
        font-size: 14px;
    }

    .btn,
    .submit button {
        width: auto;
    }
    .btn.btn-large {
        padding-left: 30px;
        padding-right: 30px;
    }

    /* Header
    ------------------------------------------------------------------------*/
    .header {
        position: relative;
        height: 124px;
    }
    .header .logo {
        width: 71px;
        height: 100px;
        margin-top: 10px;
        margin-bottom: 14px;
    }
    .header-side {
        top: 37px;
        right: 100px;
    }
    .header .toggle-nav {
        margin-top: 40px;
        margin-right: 25px;
    }
    .sticky-header .header {
        position: sticky;
        top: -15px;
    }
    .sticky-header .header .logo {
        margin-top: 20px;
    }
    .sticky-header .header-side {
        top: 45px;
    }
    .sticky-header .header .toggle-nav {
        margin-top: 48px;
    }

    /* Home
    ------------------------------------------------------------------------*/
    .home-slideshow .wrap li:before {
        content: none;
    }
    .home-top {
        padding-top: 70px;
        padding-bottom: 0;
    }
    .home-top h1,
    .home-top .h1 {
        line-height: 1.2;
        margin-bottom: 60px;
    }
    .home-top h1 small,
    .home-top .h1 small {
        font-size: 23px;
    }
    .home-top h2,
    .home-top .h2 {
        margin-top: -40px;
        margin-bottom: 60px;
    }
    .home-search {
        background: rgba(23, 21, 20, 0.89);

        overflow: hidden;
        margin-left: -10px;
        margin-right: -10px;
        padding-top: 20px;
        padding-bottom: 5px;
    }
    .home-search form {
        display: flex;
        align-items: flex-start;
        flex-wrap: wrap;
    }
    .home-search .form-row {
        flex: none;
        padding: 0 10px;
        width: 25%;
        font-size: 14px;
        margin-bottom: 15px;
    }
    .home-search .hiddenField {
        display: none;
    }
    .home-search .submit {
        flex: none;
        padding: 0 10px;
        width: auto;
        margin-left: auto;
        margin-right: auto;
        text-align: center;
    }

    .home-map-wrapper {
        position: relative;
    }
    .home-map-areas li {
        position: absolute;
        top: 40px;
        right: 10px;
        z-index: 99;
    }
    .home-map {
        height: 380px;
    }

    .banner-message {
        background-image: url('../img/bg-message.png');
        background-repeat: no-repeat;
        background-position: 0 -20px;
    }
    .banner-message .text {
        font-size: 19px;
    }

    .home-estimate {
        background-image: url('../img/bg-estimate.png');
        background-repeat: no-repeat;
        background-position: 0 50%;

        padding-top: 40px;
        padding-bottom: 20px;
    }

    .list-activities {
        text-align: center;
    }
    .list-activities li {
        position: relative;
        padding-left: 160px;
        text-align: left;
    }
    .list-activities [class^="icon-"],
    .list-activities [class*=" icon-"] {
        position: absolute;
        top: 50%;
        margin-top: -40px;
        left: 0;
        width: 160px;
        height: 100%;
        text-align: center;
    }
    .list-activities h3,
    .list-activities .h3 {
        text-align: left;
    }

    .home-new-products {
        background-image: url('../img/bg-new-products_960.jpg?20230118');
        padding-bottom: 20px;
    }

    .slider-new-products .wrap li {
        margin-left: 60px;
        font-size: 14px;
    }

    .list-home-news li {
        overflow: hidden;
    }
    .list-home-news .img {
        float: left;
    }
    .list-home-news .text {
        margin-left: 160px;
    }
    .list-home-news h3,
    .list-home-news .h3 {
        font-size: 20px;
    }
    .list-home-news .see-more {
        text-align: center;
    }

    /* List products and search
    ------------------------------------------------------------------------*/
    .email-alert-popup {
        width: 360px;
    }
    .results-header h2,
    .results-header .h2 {
        float: left;
    }
    .results-header .results-header-actions {
        float: right;
    }
    .search-form {
        position: relative;
        margin-left: 0;
        margin-right: 0;
    }
    .search-form .search-sidebar {
        width: 300px;
    }
    .search-form .search-sidebar-header {
        cursor: default;
    }
    .search-form .search-sidebar-header:after,
    .search-form .search-sidebar.open .search-sidebar-header:after {
        content: none;
    }
    .search-form .search-sidebar-body {
        height: auto;
    }
    .search-form .switch .field label {
        font-size: 16px;
    }

    .search-form .area-checkboxes {
        display: none;
    }

    .search-form .search-map {
        display: block;
        position: absolute !important;
        top: 0;
        left: 300px;
        right: 0;
        bottom: 0;
        height: auto;
    }
    .search-results .results-total {
        float: left;
        line-height: 35px;
    }
    .search-results .results-sort {
        float: right;
    }

    .list-products ul {
        margin: 0 -10px;
        font-size: 0;
    }
    .list-products li {
        display: inline-block;
        vertical-align: top;
        width: 50%;
        padding: 0 10px;
        font-size: 14px;
    }
    .list-products .text {
        left: 10px;
        right: 10px;
    }
    .list-products .text .price small {
        font-size: 14px;
    }
    .list-products .favorite-container .favorite {
        margin-right: 10px;
    }

    /* Product detail
    ------------------------------------------------------------------------*/
    .product-detail header {
        font-size: 35px;
    }
    .product-detail header .price {
        font-size: 40px;
    }
    .product-detail header .price small {
        font-size: 22px;
    }
    .product-detail header .price .smaller {
        font-size: 14px;
    }
    .product-photos {
        margin-left: 10px;
        margin-right: 10px;
    }
    .product-photos .main {
        margin-right: 160px;
        margin-bottom: 0;
    }
    .product-photos .nav {
        position: absolute;
        top: 0;
        right: 0;
        width: 140px;
        bottom: 0;
        overflow: hidden;
    }
    .product-photos .nav ul {
        white-space: normal;
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        overflow: auto;
        overflow-x: hidden;
        -webkit-overflow-scrolling: touch;
        margin: -10px 0;
    }
    .product-photos .nav li {
        padding: 10px 0;
        width: 100%;
    }
    .product-photos .nav .prev,
    .product-photos .nav .next {
        top: auto;
        bottom: auto;
        width: 100%;
        left: 0;
        right: 0;
        height: 30px;
    }
    .product-photos .nav .prev {
        top: 0;
    }
    .product-photos .nav .next {
        bottom: 0;
    }
    .product-photos .nav .prev:before,
    .product-photos .nav .next:before {
        width: 15px;
        height: 9px;
    }
    .product-photos .nav .prev [class^="icon-"],
    .product-photos .nav .prev [class*=" icon-"],
    .product-photos .nav .next [class^="icon-"],
    .product-photos .nav .next [class*=" icon-"] {
        transform: rotate(90deg);
    }

    .product-main-col .actions {
        text-align: center;
    }
    .product-info-col .btn {
        padding-left: 0;
        padding-right: 0;
        width: 100%;
    }
    .product-info-col .content {
        margin: 0;
    }
    .product-eco {
        clear: both;
        width: 620px;
    }
    .product-eco-graph .product-eco-graph-part {
        float: left;
        width: 300px;
        margin-left: 20px;
    }
    .product-eco-graph .product-eco-graph-part:first-child {
        margin-left: 0;
    }

    .product-around-legend li {
        width: 16.66%;
    }

    /* Activity detail
    ------------------------------------------------------------------------*/
    .activity-header {
        position: relative;
    }
    .activity-header .img {
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        width: 33.33%;
        height: 100%;
        overflow: hidden;
    }
    .activity-header .img img {
        max-width: none;
        position: absolute;
        top: 50%;
        left: 50%;
        min-height: 102%;
        min-width: 102%;
        width: auto;
        height: auto;

        transform: translate(-50%, -50%);
    }
    .activity-header .text {
        margin-left: 33.33%;
    }

    .activity-list-options ul:before {
        left: 29px;
    }
    .activity-list-options li {
        margin-bottom: 60px;
        height: 60px;
        line-height: 60px;
    }
    .activity-list-options .icon {
        margin-top: -30px;
        font-size: 35px;
        line-height: 60px;
        width: 60px;
        height: 60px;
    }

    .activity-list-options .text {
        margin-left: 80px;
    }
    .activity-list-options .text strong {
        font-size: 35px;
    }

    /* Agency
    ------------------------------------------------------------------------*/
    .agency-header {
        position: relative;
    }
    .agency-header .img {
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        width: 33.33%;
        height: 100%;
        overflow: hidden;
    }
    .agency-header .img img {
        max-width: none;
        position: absolute;
        top: 50%;
        left: 0;
        min-height: 102%;
        width: auto;
        height: auto;

        transform: translateY(-50%);
    }
    .agency-header .text {
        margin-left: 33.33%;
    }
    .agency-timeline .icon {
        margin-top: 38px;
    }
    .agency-timeline .text strong {
        font-size: 35px;
    }

    .agency-team {
        background-image: url('../img/bg-team_960.jpg');
    }

    /* Area
    ------------------------------------------------------------------------*/
    .area-header {
        position: relative;
    }
    .area-header .img {
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        width: 33.33%;
        height: 100%;
        overflow: hidden;
    }
    .area-header .img img {
        max-width: none;
        position: absolute;
        top: 50%;
        left: 0;
        min-height: 102%;
        width: auto;
        height: auto;

        transform: translateY(-50%);
    }
    .area-header .text {
        margin-left: 33.33%;
    }

    .area-info ul {
        margin-left: -10px;
        margin-right: -10px;
        font-size: 0;
    }
    .area-info li {
        display: inline-block;
        vertical-align: top;
        width: 50%;
        padding: 0 10px;
        font-size: 14px;
    }

    .all-properties-from-area {
        width: 100%;
        margin: 0 auto;
    }

    .blurry-picture-bg {
        background-image: url('../img/bg-blurry-picture_960.jpg?20230118');
    }
    /* News
    ------------------------------------------------------------------------*/
    .list-news li {
        font-size: 14px;
        width: 50%;
    }

    /* Contact
    ------------------------------------------------------------------------*/
    .contact-map .tac_activate {
        padding-right: 410px;
    }
    .contact-map .tac_activate .tac_float {
        vertical-align: middle;
    }
    .contact-map-info {
        padding-top: 30px;
    }

    /* Footer
    ------------------------------------------------------------------------*/
    .product-footer-info .actions .btn {
        margin-top: 0;
        margin-left: 20px;
    }
    .product-footer-info .actions .btn:first-child {
        margin-left: 0;
    }
    .product-footer-info.blurry-picture-bg .actions .btn {
        margin-bottom: 20px;
    }

    .footer {
        font-size: 12px;
    }

}
@media (min-width: 780px) {
    .all-properties-from-area {
        width: 780px;
    }
}
@media (min-width: 800px) {
    .product-photos .main {
        margin-right: 320px;
    }
    .product-photos .nav {
        width: 300px;
    }
    .product-photos .nav ul {
        margin: -10px;
        font-size: 0;
    }
    .product-photos .nav li {
        display: inline-block;
        padding: 10px;
        width: 50%;
    }
}

@media (min-width: 960px) {

    /* Header
    ------------------------------------------------------------------------*/
    .header .wrapper {
        overflow: visible;
    }
    .header .toggle-nav {
        display: none;
    }
    .header .main-nav {
        position: static;
        max-height: none;
        overflow: visible;
        background: none;
        clear: none;
        float: right;
        margin: 58px 0 0;
        transform: none;
    }
    .sticky-header .header .main-nav {
        margin-top: 58px;
    }
    .nav-open .header .main-nav {
        max-height: none;
    }
    .header .main-nav-main {
        position: relative;
        z-index: 20;
    }
    .header .main-nav ul {
        padding: 0;
    }
    .header .main-nav li {
        position: relative;
        float: left;
        margin-left: 28px;
    }
    .header .main-nav li:first-child {
        margin-left: 0;
    }
    .header .main-nav button,
    .header .main-nav a {
        font-size: 15px;
    }
    .header .main-nav .main-nav-sub-toggler {
        display: block;
    }
    .header .main-nav .main-nav-sub-toggler [class^="icon-"],
    .header .main-nav .main-nav-sub-toggler [class*=" icon-"] {
        display: inline-block;
        font-size: 12px;
        margin-left: 5px;
    }
    .header .main-nav-sub {
        position: absolute;
        top: 100%;
        margin-top: 10px;
        left: 50%;
        background: #fff;
        border-radius: 8px;
        box-shadow: 3px 3px 10px rgba(23, 21, 20, 0.15);
        padding: 15px 20px;
        width: max-content;
        max-width: 300px;
        transform: translateX(-50%);
        display: none;
    }
    .header .main-nav-sub-open {
        display: block;
    }
    .header .main-nav-sub li {
        float: none;
        margin-left: 0;
    }
    .header .main-nav-sub li + li {
        margin-top: 10px;
    }
    .header .main-nav-extra {
        position: absolute;
        top: 0;
        right: 50%;
        margin-right: -470px;
    }
    .sticky-header .header .main-nav-extra {
        top: 15px;
    }
    .header .main-nav-extra button,
    .header .main-nav-extra a {
        font-size: 13px;
        background: #F2F2F2;
        border-radius: 0 0 4px 4px;
        padding-left: 12px;
        padding-right: 12px;
    }
    .header .main-nav-extra [class^="icon-"],
    .header .main-nav-extra [class*=" icon-"] {
        display: inline-block;
        margin-right: 10px;
        color: #FEDFCB;
    }

    .header-side,
    .sticky-header .header-side {
        position: fixed;
        z-index: 30;
        top: 190px;
        right: 0;
        flex-direction: column;
    }
    .header-social,
    .header-google {
        background: #F2F2F2;
        padding: 10px;
        border-radius: 2px 0 0 2px;
        box-shadow: 3px 3px 7px rgba(23, 21, 20, 0.15);
    }
    .header-google:not(:first-child) {
        margin-right: 0;
        margin-top: 30px;
    }

    /* Home
    ------------------------------------------------------------------------*/
    .home-top h1,
    .home-top .h1,
    .home-top h2,
    .home-top .h2 {
        width: 820px;
        margin-left: auto;
        margin-right: auto;
        text-align: right;
    }
    .home-search {
        margin-left: 0;
        margin-right: 0;
        margin-bottom: 30px;
        padding: 20px 10px 0;
    }
    .home-search form {
        flex-wrap: nowrap;
        justify-content: space-between;
    }
    .home-search .form-row {
        width: 190px;
        margin-left: 10px;
        margin-right: 10px;
        margin-bottom: 20px;
        padding: 0;
    }
    .home-search .submit {
        width: 60px;
        margin-left: 10px;
        margin-right: 10px;
        margin-bottom: 20px;
        padding: 0;
    }

    .home-top-message .text,
    .home-areas .text,
    .home-agency-text .text,
    .home-new-products .text,
    .home-activities .text,
    .home-estimate .text {
        width: 780px;
        margin: 0 auto 20px;
    }
    .home-activities .text {
        margin-bottom: 0;
    }

    .home-map-areas li {
        right: auto;
        left: 50%;
        margin-left: 160px;
    }
    .home-map-areas .text {
        width: auto;
        text-align: left;
    }
    .home-map {
        height: 400px;
    }

    .banner-message {
        background-position: 70px 0;
    }

    .list-activities ul {
        margin-left: -10px;
        margin-right: -10px;
        font-size: 0;
    }
    .list-activities li {
        font-size: 14px;
        padding: 0 10px;
        display: inline-block;
        vertical-align: top;
        width: 33.33%;
        text-align: center;
    }
    .list-activities h3,
    .list-activities .h3 {
        text-align: center;
    }
    .list-activities [class^="icon-"],
    .list-activities [class*=" icon-"] {
        position: static;
        margin: 0 0 20px;
        width: auto;
        height: auto;
    }

    .home-new-products {
        background-image: url('../img/bg-new-products_1200.jpg?20230118');
    }
    .slider-new-products {
        position: relative;
    }
    .slider-new-products .wrap {
        width: 780px;
        margin: 0 auto;
        overflow: hidden;
    }
    .slider-new-products .wrap ul {
        margin-left: -30px;
        margin-right: -30px;
        overflow: hidden;
    }
    .slider-new-products .wrap li {
        margin-left: 0;
        padding: 0 30px;
        width: 280px;
    }
    .slider-new-products .favorite-container .favorite {
        margin-right: 30px;
    }
    .slider-new-products .nav {
        display: block;
    }
    .slider-new-products .prev,
    .slider-new-products .next {
        position: absolute;
        top: 50%;
        left: 10px;
        width: 44px;
        height: 44px;
        margin-top: -22px;
        background: #171514;
        line-height: 0;
        color: #fff;

        transition: text-indent 0.2s;
    }
    .slider-new-products .next {
        left: auto;
        right: 10px;
    }
    .slider-new-products .prev.disabled,
    .slider-new-products .next.disabled {
        display: none;
    }
    .slider-new-products .prev:hover {
        text-indent: -8px;
    }
    .slider-new-products .next:hover {
        text-indent: 8px;
    }

    .list-home-news ul {
        margin: 0 -10px;
        font-size: 0;
    }
    .list-home-news li {
        font-size: 14px;
        padding: 0 10px;
        display: inline-block;
        vertical-align: top;
        width: 50%;
        margin-bottom: 20px;
    }

    /* List products and search
    ------------------------------------------------------------------------*/
    .list-products .img .banner {
        font-size: 12px;
        padding-top: 10px;
        padding-bottom: 10px;
    }
    .list-products .text,
    .list-products .text h2.name {
        font-size: 22px;
    }

    /* Product detail
    ------------------------------------------------------------------------*/
    .product-photos {
        margin-left: 0;
        margin-right: 0;
    }
    .product-photos .main .banner {
        font-size: 18px;
        padding-top: 14px;
        padding-bottom: 14px;
    }
    .product-photos .main .banner + .banner {
        margin-top: 20px;
    }

    .product-main-col {
        float: left;
        width: 620px;
        padding: 0;
    }
    .product-info-col {
        float: right;
        width: 300px;
        padding: 0;
        margin: 0;
    }
    .product-info-col .content {
        padding: 20px 20px 0;
    }

    .product-around-map-wrap {
        margin-left: 0;
        margin-right: 0;
    }
    .product-around-map {
        height: 300px;
    }

    /* Activity detail
    ------------------------------------------------------------------------*/
    .activity-header .img {
        width: 50%;
    }
    .activity-header .text {
        margin-left: 50%;
    }
    .activity-header .graphic li {
        font-size: 18px;
    }
    .activity-list-options ul:before {
        left: 50%;
        margin-left: -1px;
    }
    .activity-list-options ul:after {
        /* clearfix */
        content: '';
        display: table;
        clear: both;
    }
    .activity-list-options li {
        float: right;
        width: 50%;
        clear: both;
        margin-right: 30px;
        margin-bottom: 0;
        margin-top: 60px;
    }
    .activity-list-options li:first-child {
        margin-top: 0;
    }
    .activity-list-options li:nth-child(2n) {
        float: left;
        margin-right: 0;
        margin-left: 30px;
        text-align: right;
    }
    .activity-list-options li:nth-child(2n) .icon {
        left: auto;
        right: 0;
    }
    .activity-list-options li:nth-child(2n) .text {
        margin-left: 0;
        margin-right: 80px;
        text-align: right;
    }

    /* Agency
    ------------------------------------------------------------------------*/
    .agency-header .img {
        width: 50%;
    }
    .agency-header .text {
        margin-left: 50%;
    }

    .agency-timeline ul:before {
        left: 50%;
        margin-left: -1px;
    }
    .agency-timeline ul:after {
        /* clearfix */
        content: '';
        display: table;
        clear: both;
    }
    .agency-timeline li {
        float: right;
        width: 50%;
        clear: both;
        margin-right: 7px;
    }
    .agency-timeline li:nth-child(2n+1) {
        float: left;
        margin-right: 0;
        margin-left: 7px;
        text-align: right;
    }
    .agency-timeline li:nth-child(2n+1) .icon {
        left: auto;
        right: 0;
    }
    .agency-timeline li:nth-child(2n+1) .text {
        margin-left: 0;
        margin-right: 25px;
        text-align: right;
    }

    .agency-team {
        background-image: url('../img/bg-team_1200.jpg');
    }

    /* Area
    ------------------------------------------------------------------------*/
    .area-header .img {
        width: 50%;
    }
    .area-header .text {
        margin-left: 50%;
    }

    .area-info li,
    .area-info li:first-child {
        width: 33.33%;
    }

    .blurry-picture-bg {
        background-image: url('../img/bg-blurry-picture_1200.jpg?20230118');
    }
    /* News
    ------------------------------------------------------------------------*/
    .list-news li {
        width: 33.33%;
    }

    /* Footer
    ------------------------------------------------------------------------*/
    .product-footer-info-inner {
        margin-left: -10px;
        margin-right: -10px;
        display: flex;
    }
    .product-footer-info-text {
        flex: 0 0 auto;
        padding-left: 10px;
        padding-right: 10px;
        width: 66.6666666666%;
        margin: 0 auto;
    }
    .footer {
        padding-bottom: 30px;
    }
    .footer::before {
        max-width: 940px;
        width: 100%;
        left: 0;
        right: 0;
        margin: auto;
    }
    .footer .copy {
        margin-bottom: 0;
    }
    .footer-logo {
        display: inline;
        margin-right: 10px;
        margin-bottom: 0;
    }
}