@charset "UTF-8";
/*
Theme Name: krea3-normandie-web
Theme URI: https://www.krea3.fr/
Description: Theme agence krea3 2026
Version: 3.4
Author: Krea3
Author URI: http://www.krea3.fr
Text Domain: krea3
Domain Path: /languages
*/

/*rgb(204, 20, 127) cc147f
vert foncé : #086868
bleu foncé : #0f2b41
bleu footer : #0d212d

 * domine
================================================================================ */
@font-face { font-family: "domine-regular"; src: url("assets/fonts/domine/domine-regular-webfont.woff2") format("woff2"), url("assets/fonts/domine/domine-regular-webfont.woff") format("woff"); font-style: normal; font-weight: normal; }
@font-face { font-family: "domine-bold"; src: url("assets/fonts/domine/domine-bold-webfont.woff2") format("woff2"), url("assets/fonts/domine/domine-bold-webfont.woff") format("woff"); font-style: normal; font-weight: normal; }

/* Webfont: Surgena-Light */
@font-face {
    font-family: 'SurgenaLight';
    src: url('assets/fonts/Surgena-Light.woff2') format('woff2'), /* Modern Browsers */
         url('assets/fonts/Surgena-Light.otf') format('opentype'); /* Safari, Android, iOS */
    font-style: normal;
    font-weight: normal;
    text-rendering: optimizeLegibility;
}

/*
 * metropolis
================================================================================ */
@font-face { font-family: "metropolis-black"; src: url("assets/fonts/metropolis/metropolis-black-webfont.woff2") format("woff2"), url("assets/fonts/metropolis/metropolis-black-webfont.woff") format("woff"); font-style: normal; font-weight: normal; font-display: swap; }
@font-face { font-family: "metropolis-black-italic"; src: url("assets/fonts/metropolis/metropolis-blackitalic-webfont.woff2") format("woff2"), url("assets/fonts/metropolis/metropolis-blackitalic-webfont.woff") format("woff"); font-style: normal; font-weight: normal; font-display: swap; }
@font-face { font-family: "metropolis-extrabold"; src: url("assets/fonts/metropolis/metropolis-extrabold-webfont.woff2") format("woff2"), url("assets/fonts/metropolis/metropolis-extrabold-webfont.woff") format("woff"); font-style: normal; font-weight: normal; font-display: swap; }
@font-face { font-family: "metropolis-extrabold-italic"; src: url("assets/fonts/metropolis/metropolis-extrabolditalic-webfont.woff2") format("woff2"), url("assets/fonts/metropolis/metropolis-extrabolditalic-webfont.woff") format("woff"); font-style: normal; font-weight: normal; font-display: swap; }
@font-face { font-family: "metropolis-bold"; src: url("assets/fonts/metropolis/metropolis-bold-webfont.woff2") format("woff2"), url("assets/fonts/metropolis/metropolis-bold-webfont.woff") format("woff"); font-style: normal; font-weight: normal; font-display: swap; }
@font-face { font-family: "metropolis-bold-italic"; src: url("assets/fonts/metropolis/metropolis-bolditalic-webfont.woff2") format("woff2"), url("assets/fonts/metropolis/metropolis-bolditalic-webfont.woff") format("woff"); font-style: normal; font-weight: normal; font-display: swap; }
@font-face { font-family: "metropolis-semibold"; src: url("assets/fonts/metropolis/metropolis-semibold-webfont.woff2") format("woff2"), url("assets/fonts/metropolis/metropolis-semibold-webfont.woff") format("woff"); font-style: normal; font-weight: normal; font-display: swap; }
@font-face { font-family: "metropolis-semibold-italic"; src: url("assets/fonts/metropolis/metropolis-semibolditalic-webfont.woff2") format("woff2"), url("assets/fonts/metropolis/metropolis-semibolditalic-webfont.woff") format("woff"); font-style: normal; font-weight: normal; font-display: swap; }
@font-face { font-family: "metropolis-medium"; src: url("assets/fonts/metropolis/metropolis-medium-webfont.woff2") format("woff2"), url("assets/fonts/metropolis/metropolis-medium-webfont.woff") format("woff"); font-style: normal; font-weight: normal; font-display: swap; }
@font-face { font-family: "metropolis-medium-italic"; src: url("assets/fonts/metropolis/metropolis-mediumitalic-webfont.woff2") format("woff2"), url("assets/fonts/metropolis/metropolis-mediumitalic-webfont.woff") format("woff"); font-style: normal; font-weight: normal; font-display: swap; }
@font-face { font-family: "metropolis-regular"; src: url("assets/fonts/metropolis/metropolis-regular-webfont.woff2") format("woff2"), url("assets/fonts/metropolis/metropolis-regular-webfont.woff") format("woff"); font-style: normal; font-weight: normal; font-display: swap; }
@font-face { font-family: "metropolis-italic"; src: url("assets/fonts/metropolis/metropolis-regularitalic-webfont.woff2") format("woff2"), url("assets/fonts/metropolis/metropolis-regularitalic-webfont.woff") format("woff"); font-style: normal; font-weight: normal; font-display: swap; }
@font-face { font-family: "metropolis-light"; src: url("assets/fonts/metropolis/metropolis-light-webfont.woff2") format("woff2"), url("assets/fonts/metropolis/metropolis-light-webfont.woff") format("woff"); font-style: normal; font-weight: normal; font-display: swap; }
@font-face { font-family: "metropolis-light-italic"; src: url("assets/fonts/metropolis/metropolis-lightitalic-webfont.woff2") format("woff2"), url("assets/fonts/metropolis/metropolis-lightitalic-webfont.woff") format("woff"); font-style: normal; font-weight: normal; font-display: swap; }
@font-face { font-family: "metropolis-extralight"; src: url("assets/fonts/metropolis/metropolis-extralight-webfont.woff2") format("woff2"), url("assets/fonts/metropolis/metropolis-extralight-webfont.woff") format("woff"); font-style: normal; font-weight: normal; font-display: swap; }
@font-face { font-family: "metropolis-extralight-italic"; src: url("assets/fonts/metropolis/metropolis-extralightitalic-webfont.woff2") format("woff2"), url("assets/fonts/metropolis/metropolis-extralightitalic-webfont.woff") format("woff"); font-style: normal; font-weight: normal; font-display: swap; }
@font-face { font-family: "metropolis-thin"; src: url("assets/fonts/metropolis/metropolis-thin-webfont.woff2") format("woff2"), url("assets/fonts/metropolis/metropolis-thin-webfont.woff") format("woff"); font-style: normal; font-weight: normal; font-display: swap; }
@font-face { font-family: "metropolis-thin-italic"; src: url("assets/fonts/metropolis/metropolis-thinitalic-webfont.woff2") format("woff2"), url("assets/fonts/metropolis/metropolis-thinitalic-webfont.woff") format("woff"); font-style: normal; font-weight: normal; font-display: swap; }

/* Accessibilité : amélioration des zones tactiles pour la barre admin WordPress */
#wpadminbar .ab-item {padding: 10px 12px !important; /* Taille suffisante pour zone tactile (min. 44x44px) */font-size: 14px !important;line-height: 1.4;}
#wpadminbar li {margin-right: 8px; /* Espacement horizontal entre éléments */}
/* Adaptations spécifiques pour les petits écrans */
@media (max-width: 782px) {
  #wpadminbar .ab-item {padding: 12px 14px !important;font-size: 16px !important;}
  #wpadminbar li {margin-right: 12px;}
  /* Optionnel : réduction du contenu de la barre admin sur mobile */
  #wpadminbar #wp-admin-bar-krea-logo,#wpadminbar #wp-admin-bar-comments,#wpadminbar #wp-admin-bar-updates {display: none !important;}
}
/* masquer un élément quand js activé */
.listing-hidden{display:none; visibility:hidden;}
/* afficher un élément quand js désactivé */
.listing-visible{display:block; visibility:visible;}
.visually-hidden {position: absolute;width: 1px;height: 1px;padding: 0;margin: -1px;overflow: hidden;clip: rect(0, 0, 0, 0);white-space: nowrap;border: 0;}
.s-home {background-size: cover;background-position: top;background-repeat: no-repeat;}
 .btn-krea {padding: 0.75em 1.5em;border-radius: 8px;text-decoration: none;font-weight: bold;display: flex;align-items: center;gap: 0.5em;transition: background-color 0.3s ease, color 0.3s ease;}
.btn-contact {background-color: #086868;color: #fff;text-decoration: none !important;}
.btn-contact:hover {background-color: #0c202d;color: #fff;}
.btn-rappel {background-color: #0c202d;color: #fff; text-decoration: none !important;}
.btn-rappel:hover {background-color: #086868;color: #fff;}

/* ===================================================================
 * # normalize
 * normalize.css v5.0.0 | MIT License | 
 * github.com/necolas/normalize.css
 *
 * ------------------------------------------------------------------- */
html {font-family: sans-serif;line-height: 1.15;-ms-text-size-adjust: 100%;-webkit-text-size-adjust: 100%;}
body {margin: 0;}
article,aside,footer,header,nav,section {display: block;}
h1 {font-size: 2em;margin: 0.67em 0;}
figcaption,figure,main {display: block;}
figure {margin: 1em 40px;}
hr {box-sizing: content-box;height: 0;overflow: visible;}
pre {font-family: monospace, monospace;font-size: 1em;}
a {background-color: transparent;-webkit-text-decoration-skip: objects;}
a:active,a:hover {outline-width: 0;}
abbr[title] {border-bottom: none;text-decoration: underline;text-decoration: underline dotted;}
b,strong {font-weight: inherit;}
b,strong {font-weight: bolder;}
code,kbd,samp {font-family: monospace, monospace;font-size: 1em;}
dfn {font-style: italic;}
mark {background-color: #ff0;color: #000;}
small {font-size: 80%;}
sub,sup {font-size: 75%;line-height: 0;position: relative;vertical-align: baseline;}
sub {bottom: -0.25em;}
sup {top: -0.5em;}
audio,video {display: inline-block;}
audio:not([controls]) {display: none;height: 0;}
img {border-style: none;}
svg:not(:root) {overflow: hidden;}
button,input,optgroup,select,textarea {font-family: sans-serif;font-size: 100%;line-height: 1.15;margin: 0;}
button,input {overflow: visible;}
button,select {text-transform: none;}
button,html [type="button"],[type="reset"],[type="submit"] {-webkit-appearance: button;appearance: button;}
button::-moz-focus-inner,[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner {border-style: none;padding: 0;}
button:-moz-focusring,[type="button"]:-moz-focusring,[type="reset"]:-moz-focusring,[type="submit"]:-moz-focusring {outline: 1px dotted ButtonText;}
fieldset {border: 1px solid #c0c0c0;margin: 0 2px;padding: 0.35em 0.625em 0.75em;}
legend {box-sizing: border-box;color: inherit;display: table;max-width: 100%;padding: 0;white-space: normal;}
progress {display: inline-block;vertical-align: baseline;}
textarea {overflow: auto;}
[type="checkbox"],[type="radio"] {box-sizing: border-box;padding: 0;}
[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button {height: auto;}
[type="search"] {-webkit-appearance: textfield;appearance: textfield;outline-offset: -2px;}
[type="search"]::-webkit-search-cancel-button,[type="search"]::-webkit-search-decoration {-webkit-appearance: none;}
::-webkit-file-upload-button {-webkit-appearance: button;font: inherit;}
details,menu {display: block;}
summary {display: list-item;}
canvas {display: inline-block;}
template {display: none;}
[hidden] {display: none;}
/* ===================================================================
 * # basic/base setup styles
 *
 * ------------------------------------------------------------------- */
html {font-size: 62.5%;box-sizing: border-box;}
*,*::before,*::after {box-sizing: inherit;}
body {font-weight: normal;line-height: 1;word-wrap: break-word;text-rendering: optimizeLegibility;-webkit-overflow-scrolling: touch;-webkit-text-size-adjust: none;}
body,input,button {-moz-osx-font-smoothing: grayscale;-webkit-font-smoothing: antialiased;}
.alignright {float: right;}
.alignleft {float: left;}
/* ------------------------------------------------------------------- 
 * ## Media
 * ------------------------------------------------------------------- */
img,video {max-width: 100%;height: auto;}


/* ------------------------------------------------------------------- 
 * ## Typography resets 
 * ------------------------------------------------------------------- */
div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, p, blockquote, th, td { margin: 0; padding: 0; }
h1, h2, h3, h4, h5, h6 { -webkit-font-smoothing: auto; -webkit-font-smoothing: antialiased; -webkit-font-variant-ligatures: common-ligatures; -moz-font-variant-ligatures: common-ligatures; font-variant-ligatures: common-ligatures; text-rendering: optimizeLegibility; }
em, i { font-style: italic; line-height: inherit; }
strong, b { font-weight: bold; line-height: inherit; }
small { font-size: 60%; line-height: inherit; }
ol, ul { list-style: none; }
li { display: block; }
/* ------------------------------------------------------------------- 
 * ## links
 * ------------------------------------------------------------------- */
a {text-decoration: none;line-height: inherit;}
a img {border: none;}

/* ------------------------------------------------------------------- 
 * ## inputs
 * ------------------------------------------------------------------- */
fieldset { margin: 0; padding: 0; }
input[type="email"], input[type="number"], input[type="search"], input[type="text"], input[type="tel"], input[type="url"], input[type="password"], textarea { -webkit-appearance: none; -moz-appearance: none; -ms-appearance: none; -o-appearance: none; appearance: none; }

/* ===================================================================
 * # grid
 *
 * ------------------------------------------------------------------- */
.row { width: 89%; max-width: 1200px; margin: 0 auto; }
.row:after { content: ""; display: table; clear: both; }
.row .row { width: auto; max-width: none; margin-left: -20px; margin-right: -20px; }
[class*="col-"] { float: left; padding: 0 20px; }
[class*="col-"]+[class*="col-"].end { float: right; }
.col-one { width: 8.33333%; }
.col-two, .col-1-6 { width: 16.66667%; }
.col-three, .col-1-4 { width: 25%; }
.col-four, .col-1-3 { width: 33.33333%; }
.col-five { width: 41.66667%; }
.col-six, .col-1-2 { width: 50%; }
.col-seven { width: 58.33333%; }
.col-eight, .col-2-3 { width: 66.66667%; }
.col-nine, .col-3-4 { width: 75%; }
.col-ten, .col-5-6 { width: 83.33333%; }
.col-eleven { width: 91.66667%; }
.col-twelve, .col-full { width: 100%; }
@media only screen and (max-width: 1200px) { .row .row { margin-left: -15px; margin-right: -15px; } [class*="col-"] { padding: 0 15px; } .md-two, .md-1-6 { width: 16.66667%; } .md-one { width: 8.33333%; } .md-three, .md-1-4 { width: 25%; } .md-four, .md-1-3 { width: 33.33333%; } .md-five { width: 41.66667%; } .md-six, .md-1-2 { width: 50%; } .md-seven { width: 58.33333%; } .md-eight, .md-2-3 { width: 66.66667%; } .md-nine, .md-3-4 { width: 75%; } .md-ten, .md-5-6 { width: 83.33333%; } .md-eleven { width: 91.66667%; } .md-twelve, .md-full { width: 100%; } }
/* ------------------------------------------------------------------- 
 * ## tablets
 * ------------------------------------------------------------------- */
@media only screen and (max-width: 800px) { .row { width: 90%; } .tab-1-4 { width: 25%; } .tab-1-3 { width: 33.33333%; } .tab-1-2 { width: 50%; } .tab-2-3 { width: 66.66667%; } .tab-3-4 { width: 75%; } .tab-full { width: 100%; } .hide-on-tablet { display: none; } }
/* ------------------------------------------------------------------- 
 * ## mobile devices
 * ------------------------------------------------------------------- */
@media only screen and (max-width: 600px) { .row { width: auto; padding-left: 25px; padding-right: 25px; } .row .row { margin-left: -10px; margin-right: -10px; padding-left: 0; padding-right: 0; } [class*="col-"] { padding: 0 10px; } .mob-1-4 { width: 25%; } .mob-1-3 { width: 33.33333%; } .mob-1-2 { width: 50%; } .mob-2-3 { width: 66.66667%; } .mob-3-4 { width: 75%; } .mob-full { width: 100%; } .hide-on-mobile { display: none; } }
/* ------------------------------------------------------------------- 
 * ## small mobile devices
 * ------------------------------------------------------------------- */
/* stack columns on small mobile devices
 * ------------------------------------------------------------------- */
@media only screen and (max-width: 400px) { .row .row { margin-left: 0; margin-right: 0; } [class*="col-"] { width: 100% !important; float: none !important; clear: both !important; margin-left: 0; margin-right: 0; padding: 0; } [class*="col-"]+[class*="col-"].end { float: none; } }


/* ===================================================================
 * # block grids
 * ------------------------------------------------------------------- */

/*   Equally-sized columns define at row level
 * ------------------------------------------------------------------- */
[class*="block-"]:after { content: ""; display: table; clear: both; }
.block-1-6 .col-block { width: 16.66667%; }
.block-1-5 .col-block { width: 20%; }
.block-1-4 .col-block { width: 25%; }
.block-1-3 .col-block { width: 33.33333%; }
.block-1-2 .col-block { width: 50%; }

/**
 * Clearing for block grid columns. Allow columns with 
 * different heights to align properly.
 */
.block-1-6 .col-block:nth-child(6n+1), .block-1-5 .col-block:nth-child(5n+1), .block-1-4 .col-block:nth-child(4n+1), .block-1-3 .col-block:nth-child(3n+1), .block-1-2 .col-block:nth-child(2n+1) { clear: both; }

/* ------------------------------------------------------------------- 
 * ## medium size devices
 * ------------------------------------------------------------------- */
@media only screen and (max-width: 1200px) { .block-m-1-6 .col-block { width: 16.66667%; } .block-m-1-5 .col-block { width: 20%; } .block-m-1-4 .col-block { width: 25%; } .block-m-1-3 .col-block { width: 33.33333%; } .block-m-1-2 .col-block { width: 50%; } .block-m-full .col-block { width: 100%; clear: both; } [class*="block-m-"] .col-block:nth-child(n) { clear: none; } .block-m-1-6 .col-block:nth-child(6n+1), .block-m-1-5 .col-block:nth-child(5n+1), .block-m-1-4 .col-block:nth-child(4n+1), .block-m-1-3 .col-block:nth-child(3n+1), .block-m-1-2 .col-block:nth-child(2n+1) { clear: both; } }

/* ------------------------------------------------------------------- 
 * ## tablets
 * ------------------------------------------------------------------- */
@media only screen and (max-width: 800px) { .block-tab-1-6 .col-block { width: 16.66667%; } .block-tab-1-5 .col-block { width: 20%; } .block-tab-1-4 .col-block { width: 25%; } .block-tab-1-3 .col-block { width: 33.33333%; } .block-tab-1-2 .col-block { width: 50%; } .block-tab-full .col-block { width: 100%; clear: both; } [class*="block-tab-"] .col-block:nth-child(n) { clear: none; } .block-tab-1-6 .col-block:nth-child(6n+1), .block-tab-1-6 .col-block:nth-child(5n+1), .block-tab-1-4 .col-block:nth-child(4n+1), .block-tab-1-3 .col-block:nth-child(3n+1), .block-tab-1-2 .col-block:nth-child(2n+1) { clear: both; } }

/* ------------------------------------------------------------------- 
 * ## mobile devices
 * ------------------------------------------------------------------- */
@media only screen and (max-width: 600px) { .block-mob-1-6 .col-block { width: 16.66667%; } .block-mob-1-5 .col-block { width: 20%; } .block-mob-1-4 .col-block { width: 25%; } .block-mob-1-3 .col-block { width: 33.33333%; } .block-mob-1-2 .col-block { width: 50%; } .block-mob-full .col-block { width: 100%; clear: both; } [class*="block-mob-"] .col-block:nth-child(n) { clear: none; } .block-mob-1-6 .col-block:nth-child(6n+1), .block-mob-1-5 .col-block:nth-child(5n+1), .block-mob-1-4 .col-block:nth-child(4n+1), .block-mob-1-3 .col-block:nth-child(3n+1), .block-mob-1-2 .col-block:nth-child(2n+1) { clear: both; } }

/* ------------------------------------------------------------------- 
 * ## small mobile devices
 * ------------------------------------------------------------------- */

/* stack columns on small mobile devices
 * ------------------------------------------------------------------- */
@media only screen and (max-width: 400px) { .stack .col-block { width: 100% !important; float: none !important; clear: both !important; margin-left: 0; margin-right: 0; } }

/* ===================================================================
 * # MISC
 *
 * ------------------------------------------------------------------- */
.group:after {content: "";display: table;clear: both;}

/* Misc Helper Styles
 * -------------------------------------- */
.is-hidden { display: none; }
.is-invisible { visibility: hidden; }
.antialiased { -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
.overflow-hidden { overflow: hidden; }
.remove-bottom { margin-bottom: 0; }
.half-bottom { margin-bottom: 1.5rem !important; }
.add-bottom { margin-bottom: 3rem !important; }
.no-border { border: none; }
.full-width { width: 100%; }
.text-center { text-align: center; }
.text-left { text-align: left; }
.text-right { text-align: right; }
.pull-left { float: left; }
.pull-right { float: right; }
.align-center { margin-left: auto; margin-right: auto; text-align: center; }

/* ===================================================================
 * # animate on scroll 
 * https://michalsnik.github.io/aos/
 * ------------------------------------------------------------------- */
[data-aos][data-aos][data-aos-duration="50"], body[data-aos-duration="50"] [data-aos] { transition-duration: 50ms; }
[data-aos][data-aos][data-aos-delay="50"], body[data-aos-delay="50"] [data-aos] { transition-delay: 0; }
[data-aos][data-aos][data-aos-delay="50"].aos-animate, body[data-aos-delay="50"] [data-aos].aos-animate { transition-delay: 50ms; }
[data-aos][data-aos][data-aos-duration="100"], body[data-aos-duration="100"] [data-aos] { transition-duration: 0.1s; }
[data-aos][data-aos][data-aos-delay="100"], body[data-aos-delay="100"] [data-aos] { transition-delay: 0; }
[data-aos][data-aos][data-aos-delay="100"].aos-animate, body[data-aos-delay="100"] [data-aos].aos-animate { transition-delay: 0.1s; }
[data-aos][data-aos][data-aos-duration="150"], body[data-aos-duration="150"] [data-aos] { transition-duration: 0.15s; }
[data-aos][data-aos][data-aos-delay="150"], body[data-aos-delay="150"] [data-aos] { transition-delay: 0; }
[data-aos][data-aos][data-aos-delay="150"].aos-animate, body[data-aos-delay="150"] [data-aos].aos-animate { transition-delay: 0.15s; }
[data-aos][data-aos][data-aos-duration="200"], body[data-aos-duration="200"] [data-aos] { transition-duration: 0.2s; }
[data-aos][data-aos][data-aos-delay="200"], body[data-aos-delay="200"] [data-aos] { transition-delay: 0; }
[data-aos][data-aos][data-aos-delay="200"].aos-animate, body[data-aos-delay="200"] [data-aos].aos-animate { transition-delay: 0.2s; }
[data-aos][data-aos][data-aos-duration="250"], body[data-aos-duration="250"] [data-aos] { transition-duration: 0.25s; }
[data-aos][data-aos][data-aos-delay="250"], body[data-aos-delay="250"] [data-aos] { transition-delay: 0; }
[data-aos][data-aos][data-aos-delay="250"].aos-animate, body[data-aos-delay="250"] [data-aos].aos-animate { transition-delay: 0.25s; }
[data-aos][data-aos][data-aos-duration="300"], body[data-aos-duration="300"] [data-aos] { transition-duration: 0.3s; }
[data-aos][data-aos][data-aos-delay="300"], body[data-aos-delay="300"] [data-aos] { transition-delay: 0; }
[data-aos][data-aos][data-aos-delay="300"].aos-animate, body[data-aos-delay="300"] [data-aos].aos-animate { transition-delay: 0.3s; }
[data-aos][data-aos][data-aos-duration="350"], body[data-aos-duration="350"] [data-aos] { transition-duration: 0.35s; }
[data-aos][data-aos][data-aos-delay="350"], body[data-aos-delay="350"] [data-aos] { transition-delay: 0; }
[data-aos][data-aos][data-aos-delay="350"].aos-animate, body[data-aos-delay="350"] [data-aos].aos-animate { transition-delay: 0.35s; }
[data-aos][data-aos][data-aos-duration="400"], body[data-aos-duration="400"] [data-aos] { transition-duration: 0.4s; }
[data-aos][data-aos][data-aos-delay="400"], body[data-aos-delay="400"] [data-aos] { transition-delay: 0; }
[data-aos][data-aos][data-aos-delay="400"].aos-animate, body[data-aos-delay="400"] [data-aos].aos-animate { transition-delay: 0.4s; }
[data-aos][data-aos][data-aos-duration="450"], body[data-aos-duration="450"] [data-aos] { transition-duration: 0.45s; }
[data-aos][data-aos][data-aos-delay="450"], body[data-aos-delay="450"] [data-aos] { transition-delay: 0; }
[data-aos][data-aos][data-aos-delay="450"].aos-animate, body[data-aos-delay="450"] [data-aos].aos-animate { transition-delay: 0.45s; }
[data-aos][data-aos][data-aos-duration="500"], body[data-aos-duration="500"] [data-aos] { transition-duration: 0.5s; }
[data-aos][data-aos][data-aos-delay="500"], body[data-aos-delay="500"] [data-aos] { transition-delay: 0; }
[data-aos][data-aos][data-aos-delay="500"].aos-animate, body[data-aos-delay="500"] [data-aos].aos-animate { transition-delay: 0.5s; }
[data-aos][data-aos][data-aos-duration="550"], body[data-aos-duration="550"] [data-aos] { transition-duration: 0.55s; }
[data-aos][data-aos][data-aos-delay="550"], body[data-aos-delay="550"] [data-aos] { transition-delay: 0; }
[data-aos][data-aos][data-aos-delay="550"].aos-animate, body[data-aos-delay="550"] [data-aos].aos-animate { transition-delay: 0.55s; }
[data-aos][data-aos][data-aos-duration="600"], body[data-aos-duration="600"] [data-aos] { transition-duration: 0.6s; }
[data-aos][data-aos][data-aos-delay="600"], body[data-aos-delay="600"] [data-aos] { transition-delay: 0; }
[data-aos][data-aos][data-aos-delay="600"].aos-animate, body[data-aos-delay="600"] [data-aos].aos-animate { transition-delay: 0.6s; }
[data-aos][data-aos][data-aos-duration="650"], body[data-aos-duration="650"] [data-aos] { transition-duration: 0.65s; }
[data-aos][data-aos][data-aos-delay="650"], body[data-aos-delay="650"] [data-aos] { transition-delay: 0; }
[data-aos][data-aos][data-aos-delay="650"].aos-animate, body[data-aos-delay="650"] [data-aos].aos-animate { transition-delay: 0.65s; }
[data-aos][data-aos][data-aos-duration="700"], body[data-aos-duration="700"] [data-aos] { transition-duration: 0.7s; }
[data-aos][data-aos][data-aos-delay="700"], body[data-aos-delay="700"] [data-aos] { transition-delay: 0; }
[data-aos][data-aos][data-aos-delay="700"].aos-animate, body[data-aos-delay="700"] [data-aos].aos-animate { transition-delay: 0.7s; }
[data-aos][data-aos][data-aos-duration="750"], body[data-aos-duration="750"] [data-aos] { transition-duration: 0.75s; }
[data-aos][data-aos][data-aos-delay="750"], body[data-aos-delay="750"] [data-aos] { transition-delay: 0; }
[data-aos][data-aos][data-aos-delay="750"].aos-animate, body[data-aos-delay="750"] [data-aos].aos-animate { transition-delay: 0.75s; }
[data-aos][data-aos][data-aos-duration="800"], body[data-aos-duration="800"] [data-aos] { transition-duration: 0.8s; }
[data-aos][data-aos][data-aos-delay="800"], body[data-aos-delay="800"] [data-aos] { transition-delay: 0; }
[data-aos][data-aos][data-aos-delay="800"].aos-animate, body[data-aos-delay="800"] [data-aos].aos-animate { transition-delay: 0.8s; }
[data-aos][data-aos][data-aos-duration="850"], body[data-aos-duration="850"] [data-aos] { transition-duration: 0.85s; }
[data-aos][data-aos][data-aos-delay="850"], body[data-aos-delay="850"] [data-aos] { transition-delay: 0; }
[data-aos][data-aos][data-aos-delay="850"].aos-animate, body[data-aos-delay="850"] [data-aos].aos-animate { transition-delay: 0.85s; }
[data-aos][data-aos][data-aos-duration="900"], body[data-aos-duration="900"] [data-aos] { transition-duration: 0.9s; }
[data-aos][data-aos][data-aos-delay="900"], body[data-aos-delay="900"] [data-aos] { transition-delay: 0; }
[data-aos][data-aos][data-aos-delay="900"].aos-animate, body[data-aos-delay="900"] [data-aos].aos-animate { transition-delay: 0.9s; }
[data-aos][data-aos][data-aos-duration="950"], body[data-aos-duration="950"] [data-aos] { transition-duration: 0.95s; }
[data-aos][data-aos][data-aos-delay="950"], body[data-aos-delay="950"] [data-aos] { transition-delay: 0; }
[data-aos][data-aos][data-aos-delay="950"].aos-animate, body[data-aos-delay="950"] [data-aos].aos-animate { transition-delay: 0.95s; }
[data-aos][data-aos][data-aos-duration="1000"], body[data-aos-duration="1000"] [data-aos] { transition-duration: 1s; }
[data-aos][data-aos][data-aos-delay="1000"], body[data-aos-delay="1000"] [data-aos] { transition-delay: 0; }
[data-aos][data-aos][data-aos-delay="1000"].aos-animate, body[data-aos-delay="1000"] [data-aos].aos-animate { transition-delay: 1s; }
[data-aos][data-aos][data-aos-duration="1050"], body[data-aos-duration="1050"] [data-aos] { transition-duration: 1.05s; }
[data-aos][data-aos][data-aos-delay="1050"], body[data-aos-delay="1050"] [data-aos] { transition-delay: 0; }
[data-aos][data-aos][data-aos-delay="1050"].aos-animate, body[data-aos-delay="1050"] [data-aos].aos-animate { transition-delay: 1.05s; }
[data-aos][data-aos][data-aos-duration="1100"], body[data-aos-duration="1100"] [data-aos] { transition-duration: 1.1s; }
[data-aos][data-aos][data-aos-delay="1100"], body[data-aos-delay="1100"] [data-aos] { transition-delay: 0; }
[data-aos][data-aos][data-aos-delay="1100"].aos-animate, body[data-aos-delay="1100"] [data-aos].aos-animate { transition-delay: 1.1s; }
[data-aos][data-aos][data-aos-duration="1150"], body[data-aos-duration="1150"] [data-aos] { transition-duration: 1.15s; }
[data-aos][data-aos][data-aos-delay="1150"], body[data-aos-delay="1150"] [data-aos] { transition-delay: 0; }
[data-aos][data-aos][data-aos-delay="1150"].aos-animate, body[data-aos-delay="1150"] [data-aos].aos-animate { transition-delay: 1.15s; }
[data-aos][data-aos][data-aos-duration="1200"], body[data-aos-duration="1200"] [data-aos] { transition-duration: 1.2s; }
[data-aos][data-aos][data-aos-delay="1200"], body[data-aos-delay="1200"] [data-aos] { transition-delay: 0; }
[data-aos][data-aos][data-aos-delay="1200"].aos-animate, body[data-aos-delay="1200"] [data-aos].aos-animate { transition-delay: 1.2s; }
[data-aos][data-aos][data-aos-duration="1250"], body[data-aos-duration="1250"] [data-aos] { transition-duration: 1.25s; }
[data-aos][data-aos][data-aos-delay="1250"], body[data-aos-delay="1250"] [data-aos] { transition-delay: 0; }
[data-aos][data-aos][data-aos-delay="1250"].aos-animate, body[data-aos-delay="1250"] [data-aos].aos-animate { transition-delay: 1.25s; }
[data-aos][data-aos][data-aos-duration="1300"], body[data-aos-duration="1300"] [data-aos] { transition-duration: 1.3s; }
[data-aos][data-aos][data-aos-delay="1300"], body[data-aos-delay="1300"] [data-aos] { transition-delay: 0; }
[data-aos][data-aos][data-aos-delay="1300"].aos-animate, body[data-aos-delay="1300"] [data-aos].aos-animate { transition-delay: 1.3s; }
[data-aos][data-aos][data-aos-duration="1350"], body[data-aos-duration="1350"] [data-aos] { transition-duration: 1.35s; }
[data-aos][data-aos][data-aos-delay="1350"], body[data-aos-delay="1350"] [data-aos] { transition-delay: 0; }
[data-aos][data-aos][data-aos-delay="1350"].aos-animate, body[data-aos-delay="1350"] [data-aos].aos-animate { transition-delay: 1.35s; }
[data-aos][data-aos][data-aos-duration="1400"], body[data-aos-duration="1400"] [data-aos] { transition-duration: 1.4s; }
[data-aos][data-aos][data-aos-delay="1400"], body[data-aos-delay="1400"] [data-aos] { transition-delay: 0; }
[data-aos][data-aos][data-aos-delay="1400"].aos-animate, body[data-aos-delay="1400"] [data-aos].aos-animate { transition-delay: 1.4s; }
[data-aos][data-aos][data-aos-duration="1450"], body[data-aos-duration="1450"] [data-aos] { transition-duration: 1.45s; }
[data-aos][data-aos][data-aos-delay="1450"], body[data-aos-delay="1450"] [data-aos] { transition-delay: 0; }
[data-aos][data-aos][data-aos-delay="1450"].aos-animate, body[data-aos-delay="1450"] [data-aos].aos-animate { transition-delay: 1.45s; }
[data-aos][data-aos][data-aos-duration="1500"], body[data-aos-duration="1500"] [data-aos] { transition-duration: 1.5s; }
[data-aos][data-aos][data-aos-delay="1500"], body[data-aos-delay="1500"] [data-aos] { transition-delay: 0; }
[data-aos][data-aos][data-aos-delay="1500"].aos-animate, body[data-aos-delay="1500"] [data-aos].aos-animate { transition-delay: 1.5s; }
[data-aos][data-aos][data-aos-duration="1550"], body[data-aos-duration="1550"] [data-aos] { transition-duration: 1.55s; }
[data-aos][data-aos][data-aos-delay="1550"], body[data-aos-delay="1550"] [data-aos] { transition-delay: 0; }
[data-aos][data-aos][data-aos-delay="1550"].aos-animate, body[data-aos-delay="1550"] [data-aos].aos-animate { transition-delay: 1.55s; }
[data-aos][data-aos][data-aos-duration="1600"], body[data-aos-duration="1600"] [data-aos] { transition-duration: 1.6s; }
[data-aos][data-aos][data-aos-delay="1600"], body[data-aos-delay="1600"] [data-aos] { transition-delay: 0; }
[data-aos][data-aos][data-aos-delay="1600"].aos-animate, body[data-aos-delay="1600"] [data-aos].aos-animate { transition-delay: 1.6s; }
[data-aos][data-aos][data-aos-duration="1650"], body[data-aos-duration="1650"] [data-aos] { transition-duration: 1.65s; }
[data-aos][data-aos][data-aos-delay="1650"], body[data-aos-delay="1650"] [data-aos] { transition-delay: 0; }
[data-aos][data-aos][data-aos-delay="1650"].aos-animate, body[data-aos-delay="1650"] [data-aos].aos-animate { transition-delay: 1.65s; }
[data-aos][data-aos][data-aos-duration="1700"], body[data-aos-duration="1700"] [data-aos] { transition-duration: 1.7s; }
[data-aos][data-aos][data-aos-delay="1700"], body[data-aos-delay="1700"] [data-aos] { transition-delay: 0; }
[data-aos][data-aos][data-aos-delay="1700"].aos-animate, body[data-aos-delay="1700"] [data-aos].aos-animate { transition-delay: 1.7s; }
[data-aos][data-aos][data-aos-duration="1750"], body[data-aos-duration="1750"] [data-aos] { transition-duration: 1.75s; }
[data-aos][data-aos][data-aos-delay="1750"], body[data-aos-delay="1750"] [data-aos] { transition-delay: 0; }
[data-aos][data-aos][data-aos-delay="1750"].aos-animate, body[data-aos-delay="1750"] [data-aos].aos-animate { transition-delay: 1.75s; }
[data-aos][data-aos][data-aos-duration="1800"], body[data-aos-duration="1800"] [data-aos] { transition-duration: 1.8s; }
[data-aos][data-aos][data-aos-delay="1800"], body[data-aos-delay="1800"] [data-aos] { transition-delay: 0; }
[data-aos][data-aos][data-aos-delay="1800"].aos-animate, body[data-aos-delay="1800"] [data-aos].aos-animate { transition-delay: 1.8s; }
[data-aos][data-aos][data-aos-duration="1850"], body[data-aos-duration="1850"] [data-aos] { transition-duration: 1.85s; }
[data-aos][data-aos][data-aos-delay="1850"], body[data-aos-delay="1850"] [data-aos] { transition-delay: 0; }
[data-aos][data-aos][data-aos-delay="1850"].aos-animate, body[data-aos-delay="1850"] [data-aos].aos-animate { transition-delay: 1.85s; }
[data-aos][data-aos][data-aos-duration="1900"], body[data-aos-duration="1900"] [data-aos] { transition-duration: 1.9s; }
[data-aos][data-aos][data-aos-delay="1900"], body[data-aos-delay="1900"] [data-aos] { transition-delay: 0; }
[data-aos][data-aos][data-aos-delay="1900"].aos-animate, body[data-aos-delay="1900"] [data-aos].aos-animate { transition-delay: 1.9s; }
[data-aos][data-aos][data-aos-duration="1950"], body[data-aos-duration="1950"] [data-aos] { transition-duration: 1.95s; }
[data-aos][data-aos][data-aos-delay="1950"], body[data-aos-delay="1950"] [data-aos] { transition-delay: 0; }
[data-aos][data-aos][data-aos-delay="1950"].aos-animate, body[data-aos-delay="1950"] [data-aos].aos-animate { transition-delay: 1.95s; }
[data-aos][data-aos][data-aos-duration="2000"], body[data-aos-duration="2000"] [data-aos] { transition-duration: 2s; }
[data-aos][data-aos][data-aos-delay="2000"], body[data-aos-delay="2000"] [data-aos] { transition-delay: 0; }
[data-aos][data-aos][data-aos-delay="2000"].aos-animate, body[data-aos-delay="2000"] [data-aos].aos-animate { transition-delay: 2s; }
[data-aos][data-aos][data-aos-duration="2050"], body[data-aos-duration="2050"] [data-aos] { transition-duration: 2.05s; }
[data-aos][data-aos][data-aos-delay="2050"], body[data-aos-delay="2050"] [data-aos] { transition-delay: 0; }
[data-aos][data-aos][data-aos-delay="2050"].aos-animate, body[data-aos-delay="2050"] [data-aos].aos-animate { transition-delay: 2.05s; }
[data-aos][data-aos][data-aos-duration="2100"], body[data-aos-duration="2100"] [data-aos] { transition-duration: 2.1s; }
[data-aos][data-aos][data-aos-delay="2100"], body[data-aos-delay="2100"] [data-aos] { transition-delay: 0; }
[data-aos][data-aos][data-aos-delay="2100"].aos-animate, body[data-aos-delay="2100"] [data-aos].aos-animate { transition-delay: 2.1s; }
[data-aos][data-aos][data-aos-duration="2150"], body[data-aos-duration="2150"] [data-aos] { transition-duration: 2.15s; }
[data-aos][data-aos][data-aos-delay="2150"], body[data-aos-delay="2150"] [data-aos] { transition-delay: 0; }
[data-aos][data-aos][data-aos-delay="2150"].aos-animate, body[data-aos-delay="2150"] [data-aos].aos-animate { transition-delay: 2.15s; }
[data-aos][data-aos][data-aos-duration="2200"], body[data-aos-duration="2200"] [data-aos] { transition-duration: 2.2s; }
[data-aos][data-aos][data-aos-delay="2200"], body[data-aos-delay="2200"] [data-aos] { transition-delay: 0; }
[data-aos][data-aos][data-aos-delay="2200"].aos-animate, body[data-aos-delay="2200"] [data-aos].aos-animate { transition-delay: 2.2s; }
[data-aos][data-aos][data-aos-duration="2250"], body[data-aos-duration="2250"] [data-aos] { transition-duration: 2.25s; }
[data-aos][data-aos][data-aos-delay="2250"], body[data-aos-delay="2250"] [data-aos] { transition-delay: 0; }
[data-aos][data-aos][data-aos-delay="2250"].aos-animate, body[data-aos-delay="2250"] [data-aos].aos-animate { transition-delay: 2.25s; }
[data-aos][data-aos][data-aos-duration="2300"], body[data-aos-duration="2300"] [data-aos] { transition-duration: 2.3s; }
[data-aos][data-aos][data-aos-delay="2300"], body[data-aos-delay="2300"] [data-aos] { transition-delay: 0; }
[data-aos][data-aos][data-aos-delay="2300"].aos-animate, body[data-aos-delay="2300"] [data-aos].aos-animate { transition-delay: 2.3s; }
[data-aos][data-aos][data-aos-duration="2350"], body[data-aos-duration="2350"] [data-aos] { transition-duration: 2.35s; }
[data-aos][data-aos][data-aos-delay="2350"], body[data-aos-delay="2350"] [data-aos] { transition-delay: 0; }
[data-aos][data-aos][data-aos-delay="2350"].aos-animate, body[data-aos-delay="2350"] [data-aos].aos-animate { transition-delay: 2.35s; }
[data-aos][data-aos][data-aos-duration="2400"], body[data-aos-duration="2400"] [data-aos] { transition-duration: 2.4s; }
[data-aos][data-aos][data-aos-delay="2400"], body[data-aos-delay="2400"] [data-aos] { transition-delay: 0; }
[data-aos][data-aos][data-aos-delay="2400"].aos-animate, body[data-aos-delay="2400"] [data-aos].aos-animate { transition-delay: 2.4s; }
[data-aos][data-aos][data-aos-duration="2450"], body[data-aos-duration="2450"] [data-aos] { transition-duration: 2.45s; }
[data-aos][data-aos][data-aos-delay="2450"], body[data-aos-delay="2450"] [data-aos] { transition-delay: 0; }
[data-aos][data-aos][data-aos-delay="2450"].aos-animate, body[data-aos-delay="2450"] [data-aos].aos-animate { transition-delay: 2.45s; }
[data-aos][data-aos][data-aos-duration="2500"], body[data-aos-duration="2500"] [data-aos] { transition-duration: 2.5s; }
[data-aos][data-aos][data-aos-delay="2500"], body[data-aos-delay="2500"] [data-aos] { transition-delay: 0; }
[data-aos][data-aos][data-aos-delay="2500"].aos-animate, body[data-aos-delay="2500"] [data-aos].aos-animate { transition-delay: 2.5s; }
[data-aos][data-aos][data-aos-duration="2550"], body[data-aos-duration="2550"] [data-aos] { transition-duration: 2.55s; }
[data-aos][data-aos][data-aos-delay="2550"], body[data-aos-delay="2550"] [data-aos] { transition-delay: 0; }
[data-aos][data-aos][data-aos-delay="2550"].aos-animate, body[data-aos-delay="2550"] [data-aos].aos-animate { transition-delay: 2.55s; }
[data-aos][data-aos][data-aos-duration="2600"], body[data-aos-duration="2600"] [data-aos] { transition-duration: 2.6s; }
[data-aos][data-aos][data-aos-delay="2600"], body[data-aos-delay="2600"] [data-aos] { transition-delay: 0; }
[data-aos][data-aos][data-aos-delay="2600"].aos-animate, body[data-aos-delay="2600"] [data-aos].aos-animate { transition-delay: 2.6s; }
[data-aos][data-aos][data-aos-duration="2650"], body[data-aos-duration="2650"] [data-aos] { transition-duration: 2.65s; }
[data-aos][data-aos][data-aos-delay="2650"], body[data-aos-delay="2650"] [data-aos] { transition-delay: 0; }
[data-aos][data-aos][data-aos-delay="2650"].aos-animate, body[data-aos-delay="2650"] [data-aos].aos-animate { transition-delay: 2.65s; }
[data-aos][data-aos][data-aos-duration="2700"], body[data-aos-duration="2700"] [data-aos] { transition-duration: 2.7s; }
[data-aos][data-aos][data-aos-delay="2700"], body[data-aos-delay="2700"] [data-aos] { transition-delay: 0; }
[data-aos][data-aos][data-aos-delay="2700"].aos-animate, body[data-aos-delay="2700"] [data-aos].aos-animate { transition-delay: 2.7s; }
[data-aos][data-aos][data-aos-duration="2750"], body[data-aos-duration="2750"] [data-aos] { transition-duration: 2.75s; }
[data-aos][data-aos][data-aos-delay="2750"], body[data-aos-delay="2750"] [data-aos] { transition-delay: 0; }
[data-aos][data-aos][data-aos-delay="2750"].aos-animate, body[data-aos-delay="2750"] [data-aos].aos-animate { transition-delay: 2.75s; }
[data-aos][data-aos][data-aos-duration="2800"], body[data-aos-duration="2800"] [data-aos] { transition-duration: 2.8s; }
[data-aos][data-aos][data-aos-delay="2800"], body[data-aos-delay="2800"] [data-aos] { transition-delay: 0; }
[data-aos][data-aos][data-aos-delay="2800"].aos-animate, body[data-aos-delay="2800"] [data-aos].aos-animate { transition-delay: 2.8s; }
[data-aos][data-aos][data-aos-duration="2850"], body[data-aos-duration="2850"] [data-aos] { transition-duration: 2.85s; }
[data-aos][data-aos][data-aos-delay="2850"], body[data-aos-delay="2850"] [data-aos] { transition-delay: 0; }
[data-aos][data-aos][data-aos-delay="2850"].aos-animate, body[data-aos-delay="2850"] [data-aos].aos-animate { transition-delay: 2.85s; }
[data-aos][data-aos][data-aos-duration="2900"], body[data-aos-duration="2900"] [data-aos] { transition-duration: 2.9s; }
[data-aos][data-aos][data-aos-delay="2900"], body[data-aos-delay="2900"] [data-aos] { transition-delay: 0; }
[data-aos][data-aos][data-aos-delay="2900"].aos-animate, body[data-aos-delay="2900"] [data-aos].aos-animate { transition-delay: 2.9s; }
[data-aos][data-aos][data-aos-duration="2950"], body[data-aos-duration="2950"] [data-aos] { transition-duration: 2.95s; }
[data-aos][data-aos][data-aos-delay="2950"], body[data-aos-delay="2950"] [data-aos] { transition-delay: 0; }
[data-aos][data-aos][data-aos-delay="2950"].aos-animate, body[data-aos-delay="2950"] [data-aos].aos-animate { transition-delay: 2.95s; }
[data-aos][data-aos][data-aos-duration="3000"], body[data-aos-duration="3000"] [data-aos] { transition-duration: 3s; }
[data-aos][data-aos][data-aos-delay="3000"], body[data-aos-delay="3000"] [data-aos] { transition-delay: 0; }
[data-aos][data-aos][data-aos-delay="3000"].aos-animate, body[data-aos-delay="3000"] [data-aos].aos-animate { transition-delay: 3s; }

[data-aos][data-aos][data-aos-easing="linear"], body[data-aos-easing="linear"] [data-aos] { transition-timing-function: cubic-bezier(0.25, 0.25, 0.75, 0.75); }
[data-aos][data-aos][data-aos-easing="ease"], body[data-aos-easing="ease"] [data-aos] { transition-timing-function: ease; }
[data-aos][data-aos][data-aos-easing="ease-in"], body[data-aos-easing="ease-in"] [data-aos] { transition-timing-function: ease-in; }
[data-aos][data-aos][data-aos-easing="ease-out"], body[data-aos-easing="ease-out"] [data-aos] { transition-timing-function: ease-out; }
[data-aos][data-aos][data-aos-easing="ease-in-out"], body[data-aos-easing="ease-in-out"] [data-aos] { transition-timing-function: ease-in-out; }
[data-aos][data-aos][data-aos-easing="ease-in-back"], body[data-aos-easing="ease-in-back"] [data-aos] { transition-timing-function: cubic-bezier(0.6, -0.28, 0.735, 0.045); }
[data-aos][data-aos][data-aos-easing="ease-out-back"], body[data-aos-easing="ease-out-back"] [data-aos] { transition-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.275); }
[data-aos][data-aos][data-aos-easing="ease-in-out-back"], body[data-aos-easing="ease-in-out-back"] [data-aos] { transition-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55); }
[data-aos][data-aos][data-aos-easing="ease-in-sine"], body[data-aos-easing="ease-in-sine"] [data-aos] { transition-timing-function: cubic-bezier(0.47, 0, 0.745, 0.715); }
[data-aos][data-aos][data-aos-easing="ease-out-sine"], body[data-aos-easing="ease-out-sine"] [data-aos] { transition-timing-function: cubic-bezier(0.39, 0.575, 0.565, 1); }
[data-aos][data-aos][data-aos-easing="ease-in-out-sine"], body[data-aos-easing="ease-in-out-sine"] [data-aos] { transition-timing-function: cubic-bezier(0.445, 0.05, 0.55, 0.95); }
[data-aos][data-aos][data-aos-easing="ease-in-quad"], body[data-aos-easing="ease-in-quad"] [data-aos] { transition-timing-function: cubic-bezier(0.55, 0.085, 0.68, 0.53); }
[data-aos][data-aos][data-aos-easing="ease-out-quad"], body[data-aos-easing="ease-out-quad"] [data-aos] { transition-timing-function: cubic-bezier(0.25, 0.46, 0.45, 0.94); }
[data-aos][data-aos][data-aos-easing="ease-in-out-quad"], body[data-aos-easing="ease-in-out-quad"] [data-aos] { transition-timing-function: cubic-bezier(0.455, 0.03, 0.515, 0.955); }
[data-aos][data-aos][data-aos-easing="ease-in-cubic"], body[data-aos-easing="ease-in-cubic"] [data-aos] { transition-timing-function: cubic-bezier(0.55, 0.085, 0.68, 0.53); }
[data-aos][data-aos][data-aos-easing="ease-out-cubic"], body[data-aos-easing="ease-out-cubic"] [data-aos] { transition-timing-function: cubic-bezier(0.25, 0.46, 0.45, 0.94); }
[data-aos][data-aos][data-aos-easing="ease-in-out-cubic"], body[data-aos-easing="ease-in-out-cubic"] [data-aos] { transition-timing-function: cubic-bezier(0.455, 0.03, 0.515, 0.955); }
[data-aos][data-aos][data-aos-easing="ease-in-quart"], body[data-aos-easing="ease-in-quart"] [data-aos] { transition-timing-function: cubic-bezier(0.55, 0.085, 0.68, 0.53); }
[data-aos][data-aos][data-aos-easing="ease-out-quart"], body[data-aos-easing="ease-out-quart"] [data-aos] { transition-timing-function: cubic-bezier(0.25, 0.46, 0.45, 0.94); }
[data-aos][data-aos][data-aos-easing="ease-in-out-quart"], body[data-aos-easing="ease-in-out-quart"] [data-aos] { transition-timing-function: cubic-bezier(0.455, 0.03, 0.515, 0.955); }
[data-aos^="fade"][data-aos^="fade"] { opacity: 0; transition-property: opacity, transform; }
[data-aos^="fade"][data-aos^="fade"].aos-animate { opacity: 1; transform: translate(0); }
[data-aos="fade-up"] { transform: translateY(100px); }
[data-aos="fade-down"] { transform: translateY(-100px); }
[data-aos="fade-right"] { transform: translate(-100px); }
[data-aos="fade-left"] { transform: translate(100px); }
[data-aos="fade-up-right"] { transform: translate(-100px, 100px); }
[data-aos="fade-up-left"] { transform: translate(100px, 100px); }
[data-aos="fade-down-right"] { transform: translate(-100px, -100px); }
[data-aos="fade-down-left"] { transform: translate(100px, -100px); }
[data-aos^="zoom"][data-aos^="zoom"] { opacity: 0; transition-property: opacity, transform; }
[data-aos^="zoom"][data-aos^="zoom"].aos-animate { opacity: 1; transform: translate(0) scale(1); }
[data-aos="zoom-in"] { transform: scale(0.6); }
[data-aos="zoom-in-up"] { transform: translateY(100px) scale(0.6); }
[data-aos="zoom-in-down"] { transform: translateY(-100px) scale(0.6); }
[data-aos="zoom-in-right"] { transform: translate(-100px) scale(0.6); }
[data-aos="zoom-in-left"] { transform: translate(100px) scale(0.6); }
[data-aos="zoom-out"] { transform: scale(1.2); }
[data-aos="zoom-out-up"] { transform: translateY(100px) scale(1.2); }
[data-aos="zoom-out-down"] { transform: translateY(-100px) scale(1.2); }
[data-aos="zoom-out-right"] { transform: translate(-100px) scale(1.2); }
[data-aos="zoom-out-left"] { transform: translate(100px) scale(1.2); }
[data-aos^="slide"][data-aos^="slide"] { transition-property: transform; }
[data-aos^="slide"][data-aos^="slide"].aos-animate { transform: translate(0); }
[data-aos="slide-up"] { transform: translateY(100%); }
[data-aos="slide-down"] { transform: translateY(-100%); }
[data-aos="slide-right"] { transform: translateX(-100%); }
[data-aos="slide-left"] { transform: translateX(100%); }
[data-aos^="flip"][data-aos^="flip"] { backface-visibility: hidden; transition-property: transform; }
[data-aos="flip-left"] { transform: perspective(2500px) rotateY(-100deg); }
[data-aos="flip-left"].aos-animate { transform: perspective(2500px) rotateY(0); }
[data-aos="flip-right"] { transform: perspective(2500px) rotateY(100deg); }
[data-aos="flip-right"].aos-animate { transform: perspective(2500px) rotateY(0); }
[data-aos="flip-up"] { transform: perspective(2500px) rotateX(-100deg); }
[data-aos="flip-up"].aos-animate { transform: perspective(2500px) rotateX(0); }
[data-aos="flip-down"] { transform: perspective(2500px) rotateX(100deg); }
[data-aos="flip-down"].aos-animate { transform: perspective(2500px) rotateX(0); }


/* ===================================================================
 * # slick slider
 * http://kenwheeler.github.io/slick/
 * ------------------------------------------------------------------- */
.slick-slider { position: relative; display: block; box-sizing: border-box; -webkit-touch-callout: none; -webkit-user-select: none; -khtml-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; -ms-touch-action: pan-y; touch-action: pan-y; -webkit-tap-highlight-color: transparent; }
.slick-list { position: relative; overflow: hidden; display: block; margin: 0; padding: 0; }
.slick-list:focus { outline: none; }
.slick-list.dragging { cursor: pointer; cursor: hand; }
.slick-slider .slick-track, .slick-slider .slick-list { -webkit-transform: translate3d(0, 0, 0); -moz-transform: translate3d(0, 0, 0); -ms-transform: translate3d(0, 0, 0); -o-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); }
.slick-track { position: relative; left: 0; top: 0; display: block; }
.slick-track:before, .slick-track:after { content: ""; display: table; }
.slick-track:after { clear: both; }
.slick-loading .slick-track { visibility: hidden; }
.slick-slide { float: left; height: 100%; min-height: 1px; display: none; }
[dir="rtl"] .slick-slide { float: right; }
.slick-slide img { display: block; }
.slick-slide.slick-loading img { display: none; }
.slick-slide.dragging img { pointer-events: none; }
.slick-initialized .slick-slide { display: block; }
.slick-loading .slick-slide { visibility: hidden; }
.slick-vertical .slick-slide { display: block; height: auto; border: 1px solid transparent; }
.slick-arrow.slick-hidden { display: none; }

/* ===================================================================
 * # PhotoSwipe main CSS by Dmitry Semenov
 *   photoswipe.com | MIT license 
 * ------------------------------------------------------------------- */
/*
    Styles for basic PhotoSwipe functionality (sliding area, open/close transitions)
*/
/* pswp = photoswipe */
.pswp { display: none; position: absolute; width: 100%; height: 100%; left: 0; top: 0; overflow: hidden; -ms-touch-action: none; touch-action: none; z-index: 1500; -webkit-text-size-adjust: 100%; -webkit-backface-visibility: hidden; backface-visibility: hidden; outline: none; }
.pswp * { -webkit-box-sizing: border-box; box-sizing: border-box; }
.pswp img { max-width: none; }
.pswp--animate_opacity { opacity: 0.001; will-change: opacity; -webkit-transition: opacity 333ms cubic-bezier(0.4, 0, 0.22, 1); transition: opacity 333ms cubic-bezier(0.4, 0, 0.22, 1); }
.pswp--open { display: block; }
.pswp--zoom-allowed .pswp__img { cursor: -webkit-zoom-in; cursor: -moz-zoom-in; cursor: zoom-in; }
.pswp--zoomed-in .pswp__img { cursor: -webkit-grab; cursor: -moz-grab; cursor: grab; }
.pswp--dragging .pswp__img { cursor: -webkit-grabbing; cursor: -moz-grabbing; cursor: grabbing; }
.pswp__bg { position: absolute; left: 0; top: 0; width: 100%; height: 100%; background: #000; opacity: 0; -webkit-transform: translateZ(0); transform: translateZ(0); -webkit-backface-visibility: hidden; backface-visibility: hidden; will-change: opacity; -webkit-transition: opacity 333ms cubic-bezier(0.4, 0, 0.22, 1); transition: opacity 333ms cubic-bezier(0.4, 0, 0.22, 1); }
.pswp__scroll-wrap { position: absolute; left: 0; top: 0; width: 100%; height: 100%; overflow: hidden; }
.pswp__container, .pswp__zoom-wrap { -ms-touch-action: none; touch-action: none; position: absolute; left: 0; right: 0; top: 0; bottom: 0; -webkit-backface-visibility: hidden; backface-visibility: hidden; }
.pswp__container, .pswp__img { -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; -webkit-tap-highlight-color: transparent; -webkit-touch-callout: none; }
.pswp__zoom-wrap { position: absolute; width: 100%; -webkit-transform-origin: left top; -ms-transform-origin: left top; transform-origin: left top; -webkit-transition: -webkit-transform 333ms cubic-bezier(0.4, 0, 0.22, 1); transition: transform 333ms cubic-bezier(0.4, 0, 0.22, 1); }
.pswp--animated-in .pswp__bg, .pswp--animated-in .pswp__zoom-wrap { -webkit-transition: none; transition: none; }
.pswp__item { position: absolute; left: 0; right: 0; top: 0; bottom: 0; overflow: hidden; }
.pswp__img { position: absolute; width: auto; height: auto; top: 0; left: 0; }
.pswp__img--placeholder { -webkit-backface-visibility: hidden; backface-visibility: hidden; }
.pswp__img--placeholder--blank { background: #222; }
.pswp--ie .pswp__img { width: 100% !important; height: auto !important; left: 0; top: 0; }
.pswp__error-msg { position: absolute; left: 0; top: 50%; width: 100%; text-align: center; font-size: 14px; line-height: 16px; margin-top: -8px; color: #ccc; }
.pswp__error-msg a { color: #ccc; text-decoration: underline; }

/* ===================================================================
 * # PhotoSwipe Skin
 *
 * ------------------------------------------------------------------- */
/*
    Contents:

    1. Buttons
    2. Share modal and links
    3. Index indicator ("1 of X" counter)
    4. Caption
    5. Loading indicator
    6. Additional styles (root element, top bar, idle state, hidden state, etc.)
*/
/* -------------------------------------------------------------------
 * ## 1. buttons
 * ------------------------------------------------------------------- */
/* <button> css reset */
.pswp__button { width: 44px; height: 44px; line-height: 1; position: relative; background: none; cursor: pointer; overflow: visible; -webkit-appearance: none; appearance: none; display: block; border: 0; padding: 0; margin: 0; float: right; opacity: 0.6; -webkit-transition: opacity 0.2s; transition: opacity 0.2s; -webkit-box-shadow: none; box-shadow: none; }
.pswp__button:focus, .pswp__button:hover { opacity: 1; background-color: transparent; }
.pswp__button:active { outline: none; opacity: 0.9; }
.pswp__button::-moz-focus-inner { padding: 0; border: 0; }
.pswp__ui--over-close .pswp__button--close { opacity: 1; }
.pswp__button, .pswp__button--arrow--left:before, .pswp__button--arrow--right:before { background: url(../images/photoswipe/default-skin.png) 0 0 no-repeat; background-size: 264px 88px; width: 44px; height: 44px; }
@media (-webkit-min-device-pixel-ratio: 1.1), (-webkit-min-device-pixel-ratio: 1.09375), (min-resolution: 105dpi), (min-resolution: 1.1dppx) {
  .pswp--svg .pswp__button, .pswp--svg .pswp__button--arrow--left:before, .pswp--svg .pswp__button--arrow--right:before { background-image: url(images/photoswipe/default-skin.svg); }
  .pswp--svg .pswp__button--arrow--left, .pswp--svg .pswp__button--arrow--right { background: none; }
}
.pswp__button--close { background-position: 0 -44px; }
.pswp__button--share { background-position: -44px -44px; }
.pswp__button--fs { display: none; }
.pswp--supports-fs .pswp__button--fs { display: block; }
.pswp--fs .pswp__button--fs { background-position: -44px 0; }
.pswp__button--zoom { display: none; background-position: -88px 0; }
.pswp--zoom-allowed .pswp__button--zoom { display: block; }
.pswp--zoomed-in .pswp__button--zoom { background-position: -132px 0; }
.pswp--touch .pswp__button--arrow--left, .pswp--touch .pswp__button--arrow--right { visibility: hidden; }
.pswp__button--arrow--left, .pswp__button--arrow--right { background: none; top: 50%; margin-top: -22px; width: 30px; height: 32px; position: absolute; }
.pswp__button--arrow--left { left: 12px; }
.pswp__button--arrow--right { right: 12px; }
.pswp__button--arrow--left:before, .pswp__button--arrow--right:before { content: ""; top: 0; background-color: rgba(0, 0, 0, 0.3); height: 30px; width: 32px; position: absolute; border-radius: 3px; }
.pswp__button--arrow--left:before { left: 6px; background-position: -138px -44px; }
.pswp__button--arrow--right:before { right: 6px; background-position: -94px -44px; }
/* -------------------------------------------------------------------
 * ## 2. Share modal/popup and links
 * ------------------------------------------------------------------- */
.pswp__counter, .pswp__share-modal { -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; }
.pswp__share-modal { display: block; background: rgba(0, 0, 0, 0.5); width: 100%; height: 100%; top: 0; left: 0; padding: 10px; position: absolute; z-index: 1600; opacity: 0; -webkit-transition: opacity 0.25s ease-out; transition: opacity 0.25s ease-out; -webkit-backface-visibility: hidden; backface-visibility: hidden; will-change: opacity; }
.pswp__share-modal--hidden { display: none; }
.pswp__share-tooltip { z-index: 1620; position: absolute; background: #fff; top: 56px; border-radius: 3px; display: block; width: auto; right: 44px; -webkit-box-shadow: 0 2px 5px rgba(0, 0, 0, 0.25); box-shadow: 0 2px 5px rgba(0, 0, 0, 0.25); -webkit-transform: translateY(6px); -ms-transform: translateY(6px); transform: translateY(6px); -webkit-transition: -webkit-transform 0.25s; transition: transform 0.25s; -webkit-backface-visibility: hidden; backface-visibility: hidden; will-change: transform; }
.pswp__share-tooltip a { display: block; padding: 9px 15px; color: #000; text-decoration: none; font-size: 13px; line-height: 18px; }
.pswp__share-tooltip a:hover { text-decoration: none; color: #000; }
.pswp__share-tooltip a:first-child { border-radius: 3px 3px 0 0; }
.pswp__share-tooltip a:last-child { border-radius: 0 0 3px 3px; }
.pswp__share-modal--fade-in { opacity: 1; }
.pswp__share-modal--fade-in .pswp__share-tooltip { -webkit-transform: translateY(0); -ms-transform: translateY(0); transform: translateY(0); }
.pswp--touch .pswp__share-tooltip a { padding: 16px 12px; }
a.pswp__share--facebook:before { content: ""; display: block; width: 0; height: 0; position: absolute; top: -12px; right: 15px; border: 6px solid transparent; border-bottom-color: #fff; -webkit-pointer-events: none; -moz-pointer-events: none; pointer-events: none; }
a.pswp__share--facebook:hover { background: #3e5c9a; color: #fff; }
a.pswp__share--facebook:hover:before { border-bottom-color: #3e5c9a; }
a.pswp__share--twitter:hover { background: #55acee; color: #fff; }
a.pswp__share--pinterest:hover { background: #ccc; color: #ce272d; }
a.pswp__share--download:hover { background: #ddd; }
/* -------------------------------------------------------------------
 * ## 3. Index indicator ("1 of X" counter)
 * ------------------------------------------------------------------- */
.pswp__counter {position: absolute;left: 6px;top: 0;height: 44px;font-size: 13px;line-height: 44px;color: #fff;opacity: 0.75;padding: 0 10px;}
/* -------------------------------------------------------------------
 * ## 4. Caption
 * ------------------------------------------------------------------- */
.pswp__caption { position: absolute; left: 0; bottom: 0; width: 100%; min-height: 45px; }
.pswp__caption h4 { font-size: 1.8rem; line-height: 1.333; margin: 0 0 0.6rem; color: #ffffff; }
.pswp__caption small { font-size: 11px; color: rgba(255, 255, 255, 0.5); }
.pswp__caption__center { text-align: center; max-width: 900px; margin: 0 auto; font-size: 13px; padding: 10px; line-height: 20px; color: rgba(255, 255, 255, 0.5); }
.pswp__caption--empty { display: none; }
.pswp__caption--fake { visibility: hidden; }
/* -------------------------------------------------------------------
 * ## 5. Loading indicator (preloader)
 * You can play with it here - http://codepen.io/dimsemenov/pen/yyBWoR
 * ------------------------------------------------------------------- */
.pswp__preloader { width: 44px; height: 44px; position: absolute; top: 0; left: 50%; margin-left: -22px; opacity: 0; -webkit-transition: opacity 0.25s ease-out; transition: opacity 0.25s ease-out; will-change: opacity; direction: ltr; }
.pswp__preloader__icn { width: 20px; height: 20px; margin: 12px; }
.pswp__preloader--active { opacity: 1; }
.pswp__preloader--active .pswp__preloader__icn { background: url(..images/photoswipe/preloader.gif) 0 0 no-repeat; }
.pswp--css_animation .pswp__preloader--active { opacity: 1; }
.pswp--css_animation .pswp__preloader--active .pswp__preloader__icn { -webkit-animation: clockwise 500ms linear infinite; animation: clockwise 500ms linear infinite; }
.pswp--css_animation .pswp__preloader--active .pswp__preloader__donut { -webkit-animation: donut-rotate 1000ms cubic-bezier(0.4, 0, 0.22, 1) infinite; animation: donut-rotate 1000ms cubic-bezier(0.4, 0, 0.22, 1) infinite; }
.pswp--css_animation .pswp__preloader__icn { background: none; opacity: 0.75; width: 14px; height: 14px; position: absolute; left: 15px; top: 15px; margin: 0; }
.pswp--css_animation .pswp__preloader__cut { position: relative; width: 7px; height: 14px; overflow: hidden; }
.pswp--css_animation .pswp__preloader__donut { -webkit-box-sizing: border-box; box-sizing: border-box; width: 14px; height: 14px; border: 2px solid #fff; border-radius: 50%; border-left-color: transparent; border-bottom-color: transparent; position: absolute; top: 0; left: 0; background: none; margin: 0; }
@media screen and (max-width: 1024px) { .pswp__preloader { position: relative; left: auto; top: auto; margin: 0; float: right; } }
@-webkit-keyframes clockwise { 0% { -webkit-transform: rotate(0deg); transform: rotate(0deg); } 100% { -webkit-transform: rotate(360deg); transform: rotate(360deg); } }
@keyframes clockwise { 0% { -webkit-transform: rotate(0deg); transform: rotate(0deg); } 100% { -webkit-transform: rotate(360deg); transform: rotate(360deg); } }
@-webkit-keyframes donut-rotate { 0% { -webkit-transform: rotate(0); transform: rotate(0); } 50% { -webkit-transform: rotate(-140deg); transform: rotate(-140deg); } 100% { -webkit-transform: rotate(0); transform: rotate(0); } }
@keyframes donut-rotate { 0% { -webkit-transform: rotate(0); transform: rotate(0); } 50% { -webkit-transform: rotate(-140deg); transform: rotate(-140deg); } 100% { -webkit-transform: rotate(0); transform: rotate(0); } }

/* -------------------------------------------------------------------
 * ## 6. additional styles
 * ------------------------------------------------------------------- */
/* root element of UI */
.pswp { font-family: "metropolis-regular", sans-serif; }
.pswp__ui { -webkit-font-smoothing: auto; visibility: visible; opacity: 1; z-index: 1550; }
.pswp__top-bar { position: absolute; left: 0; top: 0; height: 44px; width: 100%; padding: 0 6px; }
.pswp__caption, .pswp__top-bar, .pswp--has_mouse .pswp__button--arrow--left, .pswp--has_mouse .pswp__button--arrow--right { -webkit-backface-visibility: hidden; backface-visibility: hidden; will-change: opacity; -webkit-transition: opacity 333ms cubic-bezier(0.4, 0, 0.22, 1); transition: opacity 333ms cubic-bezier(0.4, 0, 0.22, 1); }
.pswp--has_mouse .pswp__button--arrow--left, .pswp--has_mouse .pswp__button--arrow--right { visibility: visible; }
.pswp__top-bar, .pswp__caption { background-color: rgba(0, 0, 0, 0.5); }
.pswp__ui--fit .pswp__top-bar, .pswp__ui--fit .pswp__caption { background-color: rgba(0, 0, 0, 0.3); }
.pswp__ui--idle .pswp__top-bar { opacity: 0; }
.pswp__ui--idle .pswp__button--arrow--left, .pswp__ui--idle .pswp__button--arrow--right { opacity: 0; }
.pswp__ui--hidden .pswp__top-bar, .pswp__ui--hidden .pswp__caption, .pswp__ui--hidden .pswp__button--arrow--left, .pswp__ui--hidden .pswp__button--arrow--right { opacity: 0.001; }
.pswp__ui--one-slide .pswp__button--arrow--left, .pswp__ui--one-slide .pswp__button--arrow--right, .pswp__ui--one-slide .pswp__counter { display: none; }
.pswp__element--disabled { display: none !important; }
.pswp--minimal--dark .pswp__top-bar { background: none; }

/* ===================================================================
 * # base style overrides
 *
 * ------------------------------------------------------------------- */
html { font-size: 10px; }
@media only screen and (max-width: 400px) { html { font-size: 9.411764705882353px; } }
html, body { height: 100%; }
body { background: #111111; font-family: "metropolis-regular", sans-serif; font-size: 1.7rem; font-style: normal; font-weight: normal; line-height: 1.765; color: #555555; margin: 0; padding: 0; }
/* ------------------------------------------------------------------- 
 * ## links
 * ------------------------------------------------------------------- */
a { color: #222; font-weight: 600; -webkit-transition: all 0.3s ease-in-out; transition: all 0.3s ease-in-out; }
a:not(.smoothscroll) { text-decoration: underline; }
.home-social a { text-decoration: none; }
a:hover, a:focus, a:active { color: #086868; }
a:hover, a:active { outline: 0; }
/* ===================================================================
 * # typography & general theme styles
 * 
 * ------------------------------------------------------------------- */
h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 { font-family: "metropolis-semibold", sans-serif; color: #000000; font-style: normal; font-weight: normal; text-rendering: optimizeLegibility; }
h1, .h1, h2, .h2, h3, .h3, h4, .h4 { margin-top: 6rem; margin-bottom: 1.8rem; }
@media only screen and (max-width:600px) { h1, .h1, h2, .h2, h3, .h3, h4, .h4 { margin-top: 5.1rem; } }
h5, .h5, h6, .h6 { margin-top: 4.2rem; margin-bottom: 1.5rem; }
@media only screen and (max-width:600px) { h5, .h5, h6, .h6 { margin-top: 3.6rem; margin-bottom: 0.9rem; } }
h1, .h1 { font-size: 3.6rem; line-height: 1.25; letter-spacing: -0.1rem; }
@media only screen and (max-width:600px) { h1, .h1 { font-size: 3.3rem; letter-spacing: -0.07rem; } }
h2, .h2 { font-size: 3rem; line-height: 1.3; }
h3, .h3 { font-size: 2.4rem; line-height: 1.25; }
h4, .h4 { font-size: 2.1rem; line-height: 1.286; }
h5, .h5 { font-size: 1.7rem; line-height: 1.235; }
h6, .h6 { font-size: 1.4rem; line-height: 1.286; text-transform: uppercase; letter-spacing: 0.16rem; }
p img { margin: 0; }
p.lead, .page p:not(.footer-description,.header-nav__content_p), div.lead p { font-family: "metropolis-regular", sans-serif; font-size: 2.4rem; line-height: 1.75; margin-bottom: 3.6rem; color: rgba(85, 85, 85, 0.95); text-align: left !important; }
@media only screen and (max-width: 1200px) { .page p:not(.footer-description,.header-nav__content_p), p.lead, div.lead p { font-size: 2.2rem; } }
@media only screen and (max-width: 1000px) { .page p:not(.footer-description,.header-nav__content_p), p.lead, div.lead p { font-size: 2.1rem; } }
@media only screen and (max-width: 800px) { .page p:not(.footer-description,.header-nav__content_p), p.lead, div.lead p { font-size: 1.9rem; } }
em, i, strong, b { font-size: inherit; line-height: inherit; font-style: normal; font-weight: normal; }
em, i { font-family: "metropolis-italic", sans-serif; }
strong, b { font-family: "metropolis-semibold", sans-serif; font-weight: normal; }
small { font-size: 1.2rem; line-height: inherit; }
/*blockquote { margin: 3.9rem 0; padding-left: 4.5rem; position: relative; }
blockquote:before { content: "\201C"; font-size: 10rem; line-height: 0px; margin: 0; color: rgba(0, 0, 0, 0.25); font-family: arial, sans-serif; position: absolute; top: 3.6rem; left: 0; }
blockquote p { font-family: "metropolis-regular", sans-serif; padding: 0; font-size: 2.1rem; line-height: 1.857; color: #111111; }
blockquote cite { display: block; font-family: "domine-regular", sans-serif; font-size: 1.4rem; font-style: normal; line-height: 1.5; }
blockquote cite:before { content: "\2014 \0020"; }
blockquote cite a, blockquote cite a:visited { color: #626262; border: none; }
*/abbr { font-family: "metropolis-bold", sans-serif; font-variant: small-caps; text-transform: lowercase; letter-spacing: 0.05rem; color: #626262; }
var, kbd, samp, code, pre { font-family: Consolas, "Andale Mono", Courier, "Courier New", monospace; }
pre { padding: 2.4rem 3rem 3rem; background: #f1f1f1; overflow-x: auto; }
code { font-size: 1.4rem; margin: 0 0.2rem; padding: 0.3rem 0.6rem; white-space: nowrap; background: #f1f1f1; border: 1px solid #e1e1e1; border-radius: 3px; }
pre > code { display: block; white-space: pre; line-height: 2; padding: 0; margin: 0; }
pre.prettyprint > code { border: none; }
del { text-decoration: line-through; }
abbr[title], dfn[title] { border-bottom: 1px dotted; cursor: help; text-decoration: none; }
mark { background: #ffd900; color: #000000; }
hr { border: solid rgba(0, 0, 0, 0.1); border-width: 1px 0 0; clear: both; margin: 2.4rem 0 1.5rem; height: 0; }

/* ------------------------------------------------------------------- 
 * ## Lists
 * ------------------------------------------------------------------- */
ol { list-style: decimal; }
ul { list-style: disc; }
li { display: list-item; }
ol, ul { margin-left: 1.7rem; }
ul li { padding-left: 0.4rem; }
ul ul, ul ol, ol ol, ol ul { margin: 0.6rem 0 0.6rem 1.7rem; }
ul.disc li { display: list-item; list-style: none; padding: 0 0 0 0.8rem; position: relative; }
ul.disc li::before { content: ""; display: inline-block; width: 8px; height: 8px; border-radius: 50%; background: #086868; position: absolute; left: -17px; top: 11px; vertical-align: middle; }
dt { margin: 0; color: #086868; }
dd { margin: 0 0 0 2rem; }

/* ------------------------------------------------------------------- 
 * ## responsive video container
 * ------------------------------------------------------------------- */
.video-container { position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden; }
.video-container iframe,
.video-container object,
.video-container embed,
.video-container video { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }

/* ------------------------------------------------------------------- 
 * ## floated image
 * ------------------------------------------------------------------- */
img.pull-right {margin: 1.5rem 0 0 3rem;}
img.pull-left {margin: 1.5rem 3rem 0 0;}

/* ------------------------------------------------------------------- 
 * ## tables
 * ------------------------------------------------------------------- */
table { border-width: 0; width: 100%; max-width: 100%; font-family: "metropolis-regular", sans-serif; }
th, td { padding: 1.5rem 3rem; text-align: left; border-bottom: 1px solid #e8e8e8; }
th { color: #000000; font-family: "metropolis-semibold", sans-serif; font-weight: normal; }
td { line-height: 1.5; }
th:first-child, td:first-child { padding-left: 0; }
th:last-child, td:last-child { padding-right: 0; }
.table-responsive { overflow-x: auto; -webkit-overflow-scrolling: touch; }

/* ------------------------------------------------------------------- 
 * ## Spacing 
 * ------------------------------------------------------------------- */
button, .btn { margin-bottom: 1.2rem; }
fieldset { margin-bottom: 1.5rem; }
input, textarea, select, pre, blockquote, figure, table, p, ul, ol, dl, form, .video-container, .cl-custom-select { margin-bottom: 3rem; }

/* ------------------------------------------------------------------- 
 * ## pace.js styles - minimal
 * ------------------------------------------------------------------- */
.pace { -webkit-pointer-events: none;pointer-events: none; }
.pace { pointer-events: none; }
.pace { -webkit-user-select: none;user-select: none; }
.pace { -moz-user-select: none;user-select: none; }
.pace { user-select: none; }

.pace-inactive { display: none; }

.pace .pace-progress { background: #ec762c; }
.pace .pace-progress { position: fixed; }
.pace .pace-progress { z-index: 900; }
.pace .pace-progress { top: 0; }
.pace .pace-progress { right: 100%; }
.pace .pace-progress { width: 100%; }
.pace .pace-progress { height: 4px; }

.oldie .pace { display: none; }

/* ===================================================================
 * # preloader
 *
 * ------------------------------------------------------------------- */
#preloader { position: fixed; }
#preloader { top: 0; }
#preloader { left: 0; }
#preloader { right: 0; }
#preloader { bottom: 0; }
#preloader { background: #050505; }
#preloader { z-index: 800; }
#preloader { height: 100%; }
#preloader { width: 100%; }

.no-js #preloader { display: none; }
.oldie #preloader { display: none; }

#loader { position: absolute; }
#loader { left: 50%; }
#loader { top: 50%; }
#loader { width: 60px; }
#loader { height: 60px; }
#loader { margin: -30px 0 0 -30px; }
#loader { padding: 0; }

#loader:before { content: ""; }
#loader:before { border-top: 6px solid rgba(255, 255, 255, 0.1); }
#loader:before { border-right: 6px solid rgba(255, 255, 255, 0.1); }
#loader:before { border-bottom: 6px solid rgba(255, 255, 255, 0.1); }
#loader:before { border-left: 6px solid #ec762c; }
#loader:before { -webkit-animation: load 1.1s infinite linear;animation: load 1.1s infinite linear; }
#loader:before { animation: load 1.1s infinite linear; }
#loader:before { display: block; }
#loader:before { border-radius: 50%; }
#loader:before { width: 60px; }
#loader:before { height: 60px; }

@-webkit-keyframes load {
  0% { -webkit-transform: rotate(0deg); }
  0% { transform: rotate(0deg); }
  100% { -webkit-transform: rotate(360deg); }
  100% { transform: rotate(360deg); }
}

@keyframes load {
  0% { -webkit-transform: rotate(0deg); }
  0% { transform: rotate(0deg); }
  100% { -webkit-transform: rotate(360deg); }
  100% { transform: rotate(360deg); }
}

#normandie.parallax-hero{
	width: 100%;
    height: 500px;
    min-height: 480px;
    background-color: transparent;
    position: relative;
  width:100%;
  min-height:480px;
  position:relative;
  display:flex;                 /* centrage */
  align-items:center;           /* centrage vertical */
  justify-content:center;       /* centrage horizontal */
  background-color:transparent;
  overflow:hidden;              /* coupe l’overlay si besoin */
}

/* Overlay gradient */
#normandie.parallax-hero::before{
  content:"";
  position:absolute;
  inset:0;
  background: linear-gradient(135deg, #086B6C 0%, #5EBBBE 100%);
  opacity: .35;                 /* ajuste l’intensité */
  pointer-events:none;
  z-index:0;                    /* sous le contenu */
  /* Optionnel : pour fond photo très contrasté
     mix-blend-mode: multiply; */
}

/* S’assure que le <picture> passe au-dessus de l’overlay */
#normandie.parallax-hero > *{
  position:relative;
  z-index:1;
}

#normandie .hero-logo{
  display:block;
  text-align:center;
}

#normandie .hero-logo img{
  width:30vw;                  /* comme ton HTML */
  height:auto;
  max-width:90vw;               /* sécurité responsive */
}

/* ===================================================================
 * # forms
 *
 * ------------------------------------------------------------------- */
fieldset { border: none; }
input[type="email"], input[type="number"], input[type="search"], input[type="text"], input[type="tel"], input[type="url"], input[type="password"], textarea, select { display: block; height: 6rem; padding: 1.5rem 2.4rem; border: 0; outline: none; color: #151515; font-family: "metropolis-regular", sans-serif; font-size: 1.5rem; line-height: 3rem; max-width: 100%; background: rgba(0, 0, 0, 0.12); -webkit-transition: all 0.3s ease-in-out; transition: all 0.3s ease-in-out; }
.cl-custom-select { position: relative; padding: 0; }
.cl-custom-select select { -webkit-appearance: none; -moz-appearance: none; -ms-appearance: none; -o-appearance: none; appearance: none; text-indent: 0.01px; text-overflow: ""; margin: 0; line-height: 3rem; vertical-align: middle; }
.cl-custom-select select option { padding-left: 2rem; padding-right: 2rem; }
.cl-custom-select select::-ms-expand { display: none; }
.cl-custom-select::after { border-bottom: 2px solid rgba(0, 0, 0, 0.5); border-right: 2px solid rgba(0, 0, 0, 0.5); content: ""; display: block; height: 8px; width: 8px; margin-top: -7px; pointer-events: none; position: absolute; right: 2.4rem; top: 50%; -webkit-transform-origin: 66% 66%; -ms-transform-origin: 66% 66%; transform-origin: 66% 66%; -webkit-transform: rotate(45deg); -ms-transform: rotate(45deg); transform: rotate(45deg); -webkit-transition: all 0.15s ease-in-out; transition: all 0.15s ease-in-out; }
/* IE9 and below */
.oldie .cl-custom-select::after { display: none; }
textarea { min-height: 25rem; }
input[type="email"]:focus, input[type="number"]:focus, input[type="search"]:focus, input[type="text"]:focus, input[type="tel"]:focus, input[type="url"]:focus, input[type="password"]:focus, textarea:focus, select:focus { color: #000000; }
label, legend { font-family: "metropolis-semibold", sans-serif; font-size: 1.4rem; font-weight: normal; margin-bottom: 0.9rem; line-height: 1.714; color: #000000; display: block; }
input[type="checkbox"], input[type="radio"] { display: inline; }
label > .label-text { display: inline-block; margin-left: 1rem; font-family: "metropolis-regular", sans-serif; font-weight: normal; line-height: inherit; }
label > input[type="checkbox"], label > input[type="radio"] { margin: 0; position: relative; top: 0.15rem; }

/* ------------------------------------------------------------------- 
 * ## Style Placeholder Text
 * ------------------------------------------------------------------- */
::-webkit-input-placeholder { color: #626262; }
:-moz-placeholder { color: #626262; /* Firefox 18- */ }
::-moz-placeholder { color: #626262; /* Firefox 19+ */ }
:-ms-input-placeholder { color: #626262; }
.placeholder { color: #626262 !important; }

/* ------------------------------------------------------------------- 
 * ## Change Autocomplete styles in Chrome
 * ------------------------------------------------------------------- */
input:-webkit-autofill, input:-webkit-autofill:hover, input:-webkit-autofill:focus, textarea:-webkit-autofill, textarea:-webkit-autofill:hover, textarea:-webkit-autofill:focus, select:-webkit-autofill, select:-webkit-autofill:hover, select:-webkit-autofill:focus { -webkit-text-fill-color: #000; transition: background-color 5000s ease-in-out 0s; }
/* ===================================================================
 * # buttons
 *
 * ------------------------------------------------------------------- */
.btn, button, input[type="submit"], input[type="reset"], input[type="button"] { display: inline-block; font-family: "metropolis-semibold", sans-serif; font-size: 1.2rem; text-transform: uppercase; letter-spacing: 0.3rem; height: 5.4rem; line-height: 5rem; padding: 0 3rem; margin: 0 0.3rem 1.2rem 0; color: #000000; text-decoration: none; text-align: center; white-space: nowrap; cursor: pointer; -webkit-transition: all 0.3s ease-in-out; transition: all 0.3s ease-in-out; background-color: #c5c5c5; border: 0.2rem solid #c5c5c5; }
.btn:hover, button:hover, input[type="submit"]:hover, input[type="reset"]:hover, input[type="button"]:hover, .btn:focus, button:focus, input[type="submit"]:focus, input[type="reset"]:focus, input[type="button"]:focus { background-color: #b8b8b8; border-color: #b8b8b8; color: #000000; outline: 0; }

/* button primary
 * ------------------------------------------------- */
.btn.btn--primary, button.btn--primary, input[type="submit"].btn--primary, input[type="reset"].btn--primary, input[type="button"].btn--primary { background: #ec762c; border-color: #ec762c; color: #ffffff; }
.btn.btn--primary:hover, button.btn--primary:hover, input[type="submit"].btn--primary:hover, input[type="reset"].btn--primary:hover, input[type="button"].btn--primary:hover, .btn.btn--primary:focus, button.btn--primary:focus, input[type="submit"].btn--primary:focus, input[type="reset"].btn--primary:focus, input[type="button"].btn--primary:focus { background: #b51271; border-color: #b51271; }
/* button modifiers
 * ------------------------------------------------- */
.btn.full-width, button.full-width { width: 100%; margin-right: 0; }
.btn--medium, button.btn--medium { height: 5.7rem !important; line-height: 5.3rem !important; }
.btn--large, button.btn--large { height: 6rem !important; line-height: 5.6rem !important; }
.btn--stroke, button.btn--stroke { background: transparent !important; border: 0.2rem solid #000000; color: #000000; }
.btn--stroke:hover, button.btn--stroke:hover { background: #000000 !important; border: 0.2rem solid #000000; color: #ffffff; }
.btn--pill, button.btn--pill { padding-left: 3rem !important; padding-right: 3rem !important; border-radius: 1000px !important; }
button::-moz-focus-inner, input::-moz-focus-inner { border: 0; padding: 0; }

/* =================================================================== 
 * # additional components
 *
 * ------------------------------------------------------------------- */

/* ------------------------------------------------------------------- 
 * ## alert box
 * ------------------------------------------------------------------- */
.alert-box { padding: 2.1rem 4rem 2.1rem 3rem; position: relative; margin-bottom: 3rem; border-radius: 3px; font-family: "metropolis-semibold", sans-serif; font-size: 1.5rem; line-height: 1.6; }
.alert-box__close { position: absolute; right: 1.8rem; top: 1.8rem; cursor: pointer; }
.alert-box__close.fa { font-size: 12px; }
.alert-box--error { background-color: #ffd1d2; color: #e65153; }
.alert-box--success { background-color: #c8e675; color: #758c36; }
.alert-box--info { background-color: #d7ecfb; color: #4a95cc; }
.alert-box--notice { background-color: #fff099; color: #bba31b; }
/* ------------------------------------------------------------------- 
 * ## additional typo styles
 * ------------------------------------------------------------------- */
/* drop cap 
 * ----------------------------------------------- */
.drop-cap:first-letter { float: left; margin: 0; padding: 1.5rem 0.6rem 0 0; font-size: 8.4rem; font-family: "metropolis-bold", sans-serif; font-weight: normal; line-height: 6rem; text-indent: 0; background: transparent; color: #000000; }
/* line definition style 
 * ----------------------------------------------- */
.lining dt, .lining dd { display: inline; margin: 0; }
.lining dt + dt:before, .lining dd + dt:before { content: "\A"; white-space: pre; }
.lining dd + dd:before { content: ", "; }
.lining dd + dd:before { content: ", "; }
.lining dd:before { content: ": "; margin-left: -0.2em; }
/* dictionary definition style 
 * ----------------------------------------------- */
.dictionary-style dt { display: inline; counter-reset: definitions; }
.dictionary-style dt + dt:before { content: ", "; margin-left: -0.2em; }
.dictionary-style dd { display: block; counter-increment: definitions; }
.dictionary-style dd:before { content: counter(definitions, decimal) ". "; }
/** 
 * Pull Quotes
 * -----------
 * markup:
 *
 * <aside class="pull-quote">
 *		<blockquote>
 *			<p></p>
 *		</blockquote>
 *	</aside>
 *
 * --------------------------------------------------------------------- */
.pull-quote { position: relative; padding: 2.1rem 3rem 2.1rem 0px; }
.pull-quote:before, .pull-quote:after { height: 1em; position: absolute; font-size: 10rem; font-family: Arial, Sans-Serif; color: rgba(0, 0, 0, 0.25); }
.pull-quote:before { content: "\201C"; top: -3.6rem; left: 0; }
.pull-quote:after { content: "\201D"; bottom: 3.6rem; right: 0; }
.pull-quote blockquote { margin: 0; }
.pull-quote blockquote:before { content: none; }
/** 
 * Stats Tab
 * ---------
 * markup:
 *
 * <ul class="stats-tabs">
 *		<li><a href="#">[value]<em>[name]</em></a></li>
 *	</ul>
 *
 * Extend this object into your markup.
 *
 * --------------------------------------------------------------------- */
.stats-tabs { padding: 0; margin: 3rem 0; }
.stats-tabs li { display: inline-block; margin: 0 1.5rem 3rem 0; padding: 0 1.5rem 0 0; border-right: 1px solid rgba(0, 0, 0, 0.2); }
.stats-tabs li:last-child { margin: 0; padding: 0; border: none; }
.stats-tabs li a { display: inline-block; font-size: 2.5rem; font-family: "metropolis-bold", sans-serif; font-weight: normal; border: none; color: #000000; }
.stats-tabs li a:hover { color: #ec762c; }
.stats-tabs li a em { display: block; margin: 0.6rem 0 0 0; font-size: 1.4rem; font-family: "metropolis-regular", sans-serif; color: #626262; }
/* ------------------------------------------------------------------- 
 * ## skillbars 
 * ------------------------------------------------------------------- */
.skill-bars { list-style: none; margin: 6rem 0 3rem; }
.skill-bars li { height: 0.6rem; background: #c9c9c9; width: 100%; margin-bottom: 6.9rem; padding: 0; position: relative; }
.skill-bars li strong { position: absolute; left: 0; top: -3rem; font-family: "metropolis-semibold", sans-serif; color: #000000; text-transform: uppercase; letter-spacing: 0.2rem; font-size: 1.4rem; line-height: 2.4rem; }
.skill-bars li .progress { background: #000000; position: relative; height: 100%; }
.skill-bars li .progress span { position: absolute; right: 0; top: -3.6rem; display: block; font-family: "metropolis-regular", sans-serif; color: #ffffff; font-size: 1.1rem; line-height: 1; background: #000000; padding: 0.6rem 0.6rem; border-radius: 3px; }
.skill-bars li .progress span::after { position: absolute; left: 50%; bottom: -5px; margin-left: -5px; border-right: 5px solid transparent; border-left: 5px solid transparent; border-top: 5px solid #000000; content: ""; }
.skill-bars li .percent5 { width: 5%; }
.skill-bars li .percent10 { width: 10%; }
.skill-bars li .percent15 { width: 15%; }
.skill-bars li .percent20 { width: 20%; }
.skill-bars li .percent25 { width: 25%; }
.skill-bars li .percent30 { width: 30%; }
.skill-bars li .percent35 { width: 35%; }
.skill-bars li .percent40 { width: 40%; }
.skill-bars li .percent45 { width: 45%; }
.skill-bars li .percent50 { width: 50%; }
.skill-bars li .percent55 { width: 55%; }
.skill-bars li .percent60 { width: 60%; }
.skill-bars li .percent65 { width: 65%; }
.skill-bars li .percent70 { width: 70%; }
.skill-bars li .percent75 { width: 75%; }
.skill-bars li .percent80 { width: 80%; }
.skill-bars li .percent85 { width: 85%; }
.skill-bars li .percent90 { width: 90%; }
.skill-bars li .percent95 { width: 95%; }
.skill-bars li .percent100 { width: 100%; }
/* ===================================================================
 * # reusable and common theme styles
 *
 * ------------------------------------------------------------------- */
.wide { max-width: 1400px; }
.narrow { max-width: 800px; }
.light-gray { background-color: #f1f1f1; }



/* ------------------------------------------------------------------- 
 * ## display headings
 * ------------------------------------------------------------------- */
.display-1 { font-family: 'metropolis-semibold', sans-serif; font-size: 4.5rem; line-height: 1.3; letter-spacing: 0; color: #0f2b41 !important; letter-spacing: -0.03rem; margin-top: 0; margin-bottom: 2.8rem; }
.display-1--light { color: #ffffff; }
.subhead { font-family: "metropolis-semibold", sans-serif; font-size: 1.6rem; line-height: 1.3125; text-transform: uppercase; letter-spacing: 0.25rem; color: #222; margin-top: 0; margin-bottom: 2.1rem; }
.subhead::before { content: "/ "; color: #0f2b41; }
#clients .subhead::before, #realisations .subhead::before { content: "/ "; color: #fff; }
/* ------------------------------------------------------------------- 
 * responsive:
 * display headings
 * ------------------------------------------------------------------- */
@media only screen and (max-width: 1400px) { .display-1 { font-size: 5.6rem; } }
@media only screen and (max-width: 1200px) { .display-1 { font-size: 5.2rem; } }
@media only screen and (max-width: 950px) { .display-1 { font-size: 4.6rem; } }
@media only screen and (max-width: 800px) { .display-1 { font-size: 4.2rem; margin-bottom: 4.2rem; } .subhead { font-size: 1.5rem; } }
@media only screen and (max-width: 700px) { .display-1 { font-size: 4rem; } }
@media only screen and (max-width: 600px) { .display-1 { font-size: 3.6rem; } }
@media only screen and (max-width: 500px) { .display-1 { font-size: 3.3rem; } .subhead { font-size: 1.4rem; } }
@media only screen and (max-width: 400px) { .display-1 { font-size: 3rem; } }
/* ===================================================================
 * # header styles
 *
 * ------------------------------------------------------------------- */
.s-header { z-index: 500; width: 100%; height: 96px; background-color: transparent; position: absolute; top: 24px; }
/* -------------------------------------------------------------------
 * ## header logo
 * ------------------------------------------------------------------- */
.header-logo { z-index: 501; display: inline-block; margin: 0; padding: 0; position: absolute; left: 110px; top: 50%; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); }
.header-logo a { display: block; padding: 0; outline: 0; border: none; -webkit-transition: all 0.3s ease-in-out; transition: all 0.3s ease-in-out; }
.header-logo img { height: 80px; width: 187px; }
@media screen and (max-width:800px) { .header-logo img { height: 40px; width: 94px; } }
/* ------------------------------------------------------------------- 
 * ## main navigation 
 * ------------------------------------------------------------------- */
.header-nav { z-index: 2000; font-family: "metropolis-regular", sans-serif; font-size: 1.3rem; line-height: 1.846; padding: 3.6rem 3rem 3.6rem 3.6rem; height: 100%; width: 290px; background: #0c202d; color: rgba(255, 255, 255, 0.85); overflow-y: auto; overflow-x: hidden; position: fixed; right: 0; top: 0; -webkit-transition: all 0.5s ease; transition: all 0.5s ease; -webkit-transform: translateZ(0); -webkit-backface-visibility: hidden; backface-visibility: hidden; -webkit-transform: translateX(100%); -ms-transform: translateX(100%); transform: translateX(100%); visibility: hidden; }
.header-nav a, .header-nav a:visited { color: rgba(255, 255, 255, 0.5); }
.header-nav a:hover, .header-nav a:focus, .header-nav a:active { color: white; }
.header-nav h3 { font-family: "metropolis-semibold", sans-serif; font-size: 11px; line-height: 1.363; text-transform: uppercase; letter-spacing: 0.25rem; margin-bottom: 4.8rem; margin-top: 0.9rem; color: #fff; }
.header-nav p { margin-bottom: 2.7rem; }
.header-nav__content { background: #0c202d; position: relative; left: 50px; opacity: 0; visibility: hidden; }
.header-nav__list { font-family: "metropolis-regular", sans-serif; font-size: 1.6rem; margin: 3.6rem 0 3rem 0; padding: 0 0 1.8rem 0; list-style: none; counter-reset: ctr; }
.header-nav__list li { border-top: 1px solid rgba(255, 255, 255, 0.04); line-height: 4.8rem; position: relative; }
.header-nav__list li:last-child { border-bottom: 1px solid rgba(255, 255, 255, 0.04); }
.header-nav__list a { display: block; color: #ffffff; position: relative; padding-left: 3.5rem; text-decoration: none !important; }
.header-nav__list a::before { content: counter(ctr, decimal-leading-zero) "."; counter-increment: ctr; font-family: "metropolis-regular", sans-serif; font-size: 11px; color: rgba(255, 255, 255, 0.25); -webkit-transition: all 0.5s ease-in-out; transition: all 0.5s ease-in-out; position: absolute; left: 3px; top: 0; }
.header-nav__list a:hover::before { color: #086868; }
.header-nav__social { list-style: none; display: inline-block; font-size: 1.8rem; margin: 0; }
.header-nav__social li { display: inline-block; margin-right: 12px; padding-left: 0; }
.header-nav__social li a { color: #fff; }
.header-nav__social li a:hover, .header-nav__social li a:focus { color: #086868; }
.header-nav__social li:last-child { margin: 0; }
.header-nav__close { z-index: 800; display: block; background-color: rgba(0, 0, 0, 0.3); background-color: transparent; height: 30px; width: 30px; border-radius: 3px; position: absolute; top: 36px; right: 30px; font: 0/0 a; text-shadow: none; color: transparent; }
.header-nav__close span::before, .header-nav__close span::after { content: ""; display: block; height: 2px; width: 12px; background-color: #ffffff; position: absolute; top: 50%; left: 9px; margin-top: -1px; }
.header-nav__close span::before { -webkit-transform: rotate(-45deg); -ms-transform: rotate(-45deg); transform: rotate(-45deg); }
.header-nav__close span::after { -webkit-transform: rotate(45deg); -ms-transform: rotate(45deg); transform: rotate(45deg); }


/* menu is open
 * ----------------------------------------------- */
.menu-is-open .header-nav { -webkit-transform: translateX(0); -ms-transform: translateX(0); transform: translateX(0); visibility: visible; -webkit-overflow-scrolling: touch; }
.menu-is-open .header-nav .header-nav__content { opacity: 1; visibility: visible; -webkit-transition-property: all; transition-property: all; -webkit-transition-duration: 0.5s; transition-duration: 0.5s; -webkit-transition-timing-function: ease-in-out; transition-timing-function: ease-in-out; -webkit-transition-delay: 0.3s; transition-delay: 0.3s; left: 0; }
body.page section { padding-top:40px; }
/* ------------------------------------------------------------------- 
 * ## mobile menu toggle 
 * ------------------------------------------------------------------- */
.header-menu-toggle { position: fixed; right: 110px; top: 42px; width: 48px; height: 45px; line-height: 45px; font-family: "metropolis-regular", sans-serif; font-size: 1.4rem; text-transform: uppercase; letter-spacing: 0.4rem; color: #ffffff; -webkit-transition: all 0.5s ease-in-out; transition: all 0.5s ease-in-out; }
.header-menu-toggle::before { display: inline-block; content: "Menu"; height: 45px; left: auto; text-align: right; padding-left: 15px; padding-right: 10px; position: absolute; top: 0; right: 100%; }
body.page:not(.rubrique-id-42, .page-id-4038, .page-id-3986) .header-menu-toggle, 
body.postid-3732 .header-menu-toggle, 
body.postid-3789 .header-menu-toggle, 
body.postid-3744 .header-menu-toggle,
body.post-type-archive-fonctionnalite .header-menu-toggle,
body.single-fonctionnalite .header-menu-toggle,
body.single-offre_entreprise .header-menu-toggle { color: #075455; }
.header-menu-toggle.opaque { background-color:#0c202d; }
.header-menu-toggle.opaque::before { display: none; }
.header-menu-toggle:hover, 
.header-menu-toggle:focus, 
.header-menu-toggle:active { color: #086868; }
.header-menu-icon { display: block; width: 26px; height: 2px; margin-top: -1px; right: auto; bottom: auto; background-color: white; position: absolute; left: 11px; top: 50%; }
body.page:not(.rubrique-id-42, .page-id-4038, .page-id-3986) .header-menu-toggle:not(.opaque) .header-menu-icon, 
body.postid-3732  .header-menu-toggle:not(.opaque) .header-menu-icon, 
body.postid-3789  .header-menu-toggle:not(.opaque) .header-menu-icon, 
body.postid-3744  .header-menu-toggle:not(.opaque) .header-menu-icon,
body.post-type-archive-fonctionnalite .header-menu-toggle:not(.opaque) .header-menu-icon,
body.single-fonctionnalite .header-menu-toggle:not(.opaque) .header-menu-icon,
body.single-offre_entreprise .header-menu-toggle:not(.opaque) .header-menu-icon{ background-color: #075455; }
.header-menu-icon::before, .header-menu-icon::after { content: ""; width: 100%; height: 100%; background-color: inherit; position: absolute; left: 0; }
.header-menu-icon::before { top: -9px; }
.header-menu-icon::after { bottom: -9px; }
/* ------------------------------------------------------------------- 
 * responsive:
 * header
 * ------------------------------------------------------------------- */
@media only screen and (max-width: 1600px) { .header-logo { left: 60px; } .header-menu-toggle { right: 60px; } }
@media only screen and (max-width: 800px) { .header-logo { left: 40px; } .header-menu-toggle { right: 40px; } }
@media only screen and (max-width: 600px) { .s-header { height: 90px; top: 12px; } .header-logo { left: 30px; } .header-logo img { height: 40px; width: 94px; } .header-menu-toggle { right: 25px; top: 30px; } .header-nav { width: 100%; } }
@media only screen and (max-width: 500px) { .header-menu-toggle::before { display: none; } }
@media only screen and (max-width: 400px) { .s-header { top: 6px; } .header-logo { left: 25px; } .header-logo img img { width: 141px; height: 27px; } .header-menu-toggle { top: 24px; right: 20px; } }

/* ===================================================================
 * # home
 *
 * ------------------------------------------------------------------- */
.s-home { width: 100%; height: 100%; min-height: 786px; background-color: transparent; position: relative; display: table; }
.s-home .shadow-overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; opacity: 0.4; background: linear-gradient(to right, black 0%, black 20%, transparent 100%); background: linear-gradient(to right, transparent 0%, #086868 20%, transparent 100%); }
.s-home::before { display: block; content: ""; position: absolute; top: 0; left: 0; width: 100%; height: 100%; opacity: 0.35; background-color: #000; opacity: 0.9; background-color: rgba(7, 104, 104, 0.8); }
body.page .s-home::before { opacity: 0.15;}
body.page.rubrique-id-42 .s-home::before { background-color: #000; opacity: 0.35; }
.no-js .s-home { background: #000000; }
/* ------------------------------------------------------------------- 
 * ## home content
 * ------------------------------------------------------------------- */
.home-content { display: table-cell; width: 100%; height: 100%; vertical-align: middle; padding-bottom: 15.6rem; overflow: hidden; position: relative; padding-left: 35rem;}
.home-content h1 { font-family: 'metropolis-semibold', sans-serif; font-size: 6.8rem; line-height: 1.1; margin-top: 0; color: #ffffff; word-break: break-word; }
.home-content h1 span { font-size: 5rem; }
.home-content h1 + p, .home-content h1 + h2 { font-family: "metropolis-light", sans-serif; font-size: 3.8rem; line-height: 1.421; color: rgba(255, 255, 255, 0.8); margin-top: 2.4rem; padding-left: 10rem; position: relative; word-break: break-word; }
.home-content h1 + p::before, .home-content h1 + h2::before { content: ""; display: block; width: 6.5rem; height: 1px; background-color: #086868; position: absolute; left: 6px; top: 2.7rem; }
.home-content__main { padding-top: 15rem; padding-right: 20rem; position: relative; }
/* ------------------------------------------------------------------- 
 * ## home sidelinks
 * ------------------------------------------------------------------- */
.home-sidelinks { list-style: none; font-family: "metropolis-regular", sans-serif; font-size: 1.4rem; line-height: 1.714; text-transform: uppercase; letter-spacing: 0.3rem; margin: 0; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); position: absolute; top: 50%; right: 0; }
.home-sidelinks li { display: block; padding: 0; text-align: left; background-color: rgba(0, 0, 0, 0.5); border-top: 1px solid rgba(255, 255, 255, 0.05); -webkit-transition: all 0.5s ease-in-out; transition: all 0.5s ease-in-out; position: relative; }
.home-sidelinks li:last-child { border-bottom: 1px solid rgba(255, 255, 255, 0.05); }
.home-sidelinks li::before { content: ""; display: block; height: 6px; width: 6px; background-color: #086868; border-radius: 50%; position: absolute; top: 3rem; left: 2rem; }
.home-sidelinks a { display: block; padding: 2.1rem 15rem 2.1rem 4rem; color: #ffffff; }
.home-sidelinks span { display: block; font-family: "metropolis-regular", sans-serif; font-size: 1.5rem; line-height: 1.6rem; color: rgba(255, 255, 255, 0.5); text-transform: none; letter-spacing: 0; }
.home-sidelinks li:hover { background-color: rgba(7, 104, 104, 0.8); border-top: 1px solid rgba(0, 0, 0, 0.1); }
.home-sidelinks li:hover::before { background-color:#fff; }
/* ------------------------------------------------------------------- 
 * ## home scroll
 * ------------------------------------------------------------------- */
.home-scroll { height: 4.8rem; position: absolute; right: 110px; bottom: 6.6rem; }
.home-scroll__text { display: inline-block; font-family: "metropolis-semibold", sans-serif; font-size: 11px; line-height: 4.8rem; text-transform: uppercase; letter-spacing: 0.3rem; color: #ffffff; border-bottom: 1px solid transparent; -webkit-transition: all 0.3s ease-in-out; transition: all 0.3s ease-in-out; position: relative; right: 7.5rem; }
.home-scroll__icon { display: block; height: 4.8rem; width: 4.8rem; background-color: #0c202d; background-image: url(assets/images/icons/icon-arrow-right.svg); background-position: center center; background-repeat: no-repeat; background-size: 10px 15px; border-radius: 50%; -webkit-transition: all 0.3s ease-in-out; transition: all 0.3s ease-in-out; position: absolute; top: 0; right: 0; }
.home-scroll:hover .home-scroll__text { border-bottom: 1px solid #ffffff; }
.no-svg .home-scroll__icon { background-image: url(assets/images/icons/png/icon-arrow-down.png); }
/* ------------------------------------------------------------------- 
 * ## home scroll
 * ------------------------------------------------------------------- */
.home-social { list-style: none; font-size: 14px; line-height: 4.8rem; margin: 0; color: #ffffff; position: absolute; bottom: 6.6rem; left: 110px; }
.home-social a { color: #ffffff; border-bottom: 1px solid transparent; -webkit-transition: all 0.5s ease-in-out; transition: all 0.5s ease-in-out; }
.home-social a:hover { border-bottom: 1px solid #ffffff; }
.home-social i { display: none; }
.home-social .home-social-title { font-family: "metropolis-semibold", sans-serif; padding-right: 4rem; margin-right: 0.8rem; position: relative; }
.home-social .home-social-title::after { display: block; content: ""; width: 2.4rem; height: 1px; background-color: rgba(255, 255, 255, 0.1); position: absolute; right: 0; top: 50%; }
.home-social li { display: inline-block; position: relative; margin-right: 0.6rem; }
.home-social li a { display: block; }
.home-social li:last-child { margin-right: 0; }
/* animate .home-content__main
 * ------------------------------------------------------------------- */
html.cl-preload .home-content__main { opacity: 0; }
html.cl-loaded .home-content__main { animation-duration: 2s; -webkit-animation-name: fadeIn; animation-name: fadeIn; }
html.no-csstransitions .home-content__main { opacity: 1; }

/* ------------------------------------------------------------------- 
 * ## home animations
 * ------------------------------------------------------------------- */
/* fade in */
@-webkit-keyframes fadeIn {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 150%, 0);
    -ms-transform: translate3d(0, 150%, 0);
    transform: translate3d(0, 150%, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    -ms-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes fadeIn {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 150%, 0);
    -ms-transform: translate3d(0, 150%, 0);
    transform: translate3d(0, 150%, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    -ms-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
/* fade out */
@-webkit-keyframes fadeOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -150%, 0);
    -ms-transform: translate3d(0, -150%, 0);
    transform: translate3d(0, -150%, 0);
  }
}
@keyframes fadeOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -150%, 0);
    -ms-transform: translate3d(0, -150%, 0);
    transform: translate3d(0, -150%, 0);
  }
}

/* ------------------------------------------------------------------- 
 * responsive:
 * home
 * ------------------------------------------------------------------- */
@media only screen and (max-width: 1600px) { .home-content h1 { font-size: 8.8rem; } .home-content h1 + p { font-size: 3.6rem; } .home-content__main { padding-top: 18rem; } .home-sidelinks { font-size: 1.3rem; } .home-scroll { right: 60px; } .home-social { left: 60px; } }
@media only screen and (max-width: 1500px) { .home-content h1 { font-size: 8.6rem; } .home-content__main { max-width: 1100px; } }
@media only screen and (max-width: 1400px) { .home-content h1 { font-size: 7.8rem; } .home-content h1 + p { font-size: 3rem; } .home-content h1 + p::before { top: 2.4rem; } .home-content__main { max-width: 1000px; } .home-sidelinks a { padding: 2.1rem 12rem 2.1rem 4rem; } }
@media only screen and (max-width: 1200px) { .home-content h1 { font-size: 7.2rem; } .home-content h1 + p { font-size: 2.4rem; padding-right: 2rem; padding-left: 8rem; } .home-content h1 + p::before { width: 5.5rem; top: 1.8rem; } .home-content br { display: none; } .home-content__main { max-width: 850px; } .home-sidelinks a { padding: 1.8rem 6rem 1.8rem 4rem; } }
@media only screen and (max-width: 1000px) { .home-content__main { max-width: 800px; padding-right: 0; } .home-sidelinks { display: none; } }
@media only screen and (max-width: 900px) { .home-content h1 { font-size: 7rem; } }
@media only screen and (max-width: 800px) { .home-content h1 { font-size: 6.5rem; } .home-content__main { max-width: 580px; } .home-scroll { right: 40px; } /*.home-scroll__text { display: none; }*/ .home-social { left: 40px; } }
@media only screen and (max-width: 700px) { .home-content h1 { font-size: 5.5rem; } .home-content h1 + p { font-size: 2.2rem; padding-right: 0; } .home-content h1 + p::before { top: 1.6rem; } .home-content__main { max-width: 480px; } }
@media only screen and (max-width: 600px) { .home-content h1 { font-size: 5.4rem; } .home-content h1 + p { padding-top: 3rem; padding-left: 0; } .home-content h1 + p::before { left: 0; top: 0; } .home-content__main { width: auto; padding-left: 35px; padding-right: 35px; } .home-social { left: 30px; bottom: 6rem; bottom: 6rem; } .home-social i { display: inline; } .home-social .home-social-text { display: none; } .home-scroll { right: 30px; bottom: 6rem; } .home-scroll__icon { height: 4.2rem; width: 4.2rem; } }
@media only screen and (max-width: 500px) { .home-content h1 { font-size: 5rem; } .home-content h1 + p { padding-top: 2.8rem; } .s-home { min-height: 642px; } }
@media only screen and (max-width: 450px) { .home-content h1 { font-size: 4.6rem; } .home-content h1 + p { padding-top: 2.4rem; } }
@media only screen and (max-width: 400px) { .s-home { min-height: 630px; } .home-content h1 { font-size: 4.2rem; } .home-content h1 + p { padding-top: 2.1rem; } .home-content__main { padding-left: 25px; padding-right: 25px; } .home-social { font-size: 13px; left: 25px; } .home-social .home-social-title { padding-right: 0.6rem; } .home-social .home-social-title::after { display: none; } .home-scroll { right: 25px; } }

/* ===================================================================
 * # about
 *
 * ------------------------------------------------------------------- */
.s-about { padding-top: 18rem; padding-bottom: 18rem; background-color: #ffffff; position: relative; }
/* ------------------------------------------------------------------- 
 * ## about process
 * ------------------------------------------------------------------- */
.process { margin-top: 4.2rem; position: relative; }
.process__vline-left, .process__vline-right { display: block; width: 1px; height: 100%; background-color: rgba(0, 0, 0, 0.15); position: absolute; }
.process__vline-left { top: 0; left: calc(20px + 24px); }
.process__vline-right { top: 0; left: calc(50% + 20px + 24px); }
.process h3, .process h4 { font-size: 2.8rem; line-height: 1.5; margin-top: 0; position: relative; }
.process__col { position: relative; min-height: 24.6rem; }
/*
.process__col::before { content: attr(data-item); display: block; font-family: "metropolis-semibold", sans-serif; font-size: 2.1rem; text-align: center; color: #ffffff; background-color: #086868; height: 48px; width: 48px; line-height: 48px; border-radius: 50%; box-shadow: 0 0 0 18px #ffffff; position: absolute; left: 20px; top: 0; }
*/
.process__text { margin-left: 7.5rem; padding-right: 30px; margin-left: 30px; }
/* ------------------------------------------------------------------- 
 * responsive:
 * about
 * ------------------------------------------------------------------- */
@media only screen and (max-width: 1200px) { .s-about { padding-top: 15rem; padding-bottom: 15rem; } .process__vline-left { left: calc(15px + 22px); } .process__vline-right { left: calc(50% + 15px + 22px); } .process h4 { font-size: 2.6rem; } .process__col::before { height: 45px; width: 45px; line-height: 45px; font-size: 1.8rem; left: 15px; } .process__text { margin-left: 6.8rem; padding-right: 0; } }
@media only screen and (max-width: 800px) { .s-about { padding-top: 12rem; padding-bottom: 12rem; } .process { margin-top: 3rem; } .process__vline-right { display: none; } .process__col { min-height: 0; } .process__col::before { top: -3px; } }
@media only screen and (max-width: 600px) { .process__vline-left { left: calc(10px + 22px); } .process__col::before { top: -3px; left: 10px; } .process h4 { font-size: 2.4rem; } }
@media only screen and (max-width: 400px) { .s-about { padding-top: 9.6rem; } .process h4 { font-size: 2.2rem; padding-left: 5.4rem; margin-bottom: 1.8rem; } .process__vline-left { display: none; } .process__col { margin-bottom: 4.2rem; } .process__col::before { height: 36px; width: 36px; line-height: 36px; font-size: 1.6rem; top: -3px; left: 0; } .process__text { margin-left: 0; } }
/* ===================================================================
 * # services
 *
 * ------------------------------------------------------------------- */
.s-services { padding-top: 18rem; padding-bottom: 18rem; color: #555555; position: relative; }
/* ------------------------------------------------------------------- 
 * ## infos-intro-ville
 * ------------------------------------------------------------------- */
.services-list { margin-top: 6rem;counter-reset: ctr; /* remet à 0 => le 1er item affichera 01 */ }
.services-list .service-item { margin-bottom: 1.5rem; counter-increment: ctr;}
.services-list .service-item h3 { margin-top: 0; margin-bottom: 1.8rem; }
.services-list .service-icon { color: #ec762c; font-size: 4.8rem; }
.services-list .service-item::before {
    display: block;
    content: counter(ctr, decimal-leading-zero) ".";
    margin-bottom: 1.8rem;
    font-family: "SurgenaLight", serif;
    font-weight: 700;
    font-size: 3.6rem;
    line-height: 1;
    color: #fff;
}
/* ------------------------------------------------------------------- 
 * responsive:
 * services
 * ------------------------------------------------------------------- */
@media only screen and (max-width: 1200px) { .s-services { padding-top: 15rem; padding-bottom: 15rem; } .services-list [class*="col-"]:nth-child(2n + 1) { padding-right: 30px; } .services-list [class*="col-"]:nth-child(2n + 2) { padding-left: 30px; } }
@media only screen and (max-width: 800px) { .s-services { padding-top: 12rem; padding-bottom: 12rem; } .services-list { margin-top: 3rem; } .services-list .service-icon { font-size: 4.5rem; } .services-list [class*="col-"]:nth-child(n) { padding: 0 15px; } }
@media only screen and (max-width: 600px) { .services-list [class*="col-"]:nth-child(n) { padding: 0 10px; } }
@media only screen and (max-width: 400px) { .s-services { padding-top: 9.6rem; } .services-list [class*="col-"]:nth-child(n) { padding: 0; } }
/* ===================================================================
 * # works
 *
 * ------------------------------------------------------------------- */
.s-works { background: #ffffff; padding: 18rem 0 24rem; position: relative; }
/* ------------------------------------------------------------------- 
 * ## bricks/masonry
 * ------------------------------------------------------------------- */
.masonry-wrap { margin-top: 6rem; max-width: none; width: 1380px; }
.masonry:after { content: ""; display: table; clear: both; }
.masonry .grid-sizer, .masonry__brick { width: 460px; }
.masonry__brick { float: left; padding: 0; padding:10px; }
.item-folio { position: relative; overflow: hidden; }
.item-folio__thumb img { vertical-align: top; -webkit-transition: all 0.5s ease-in-out; transition: all 0.5s ease-in-out; width: 600px; height: auto; }
.item-folio__thumb a { display: block; }
.item-folio__thumb a::before { z-index: 1; display: block; background-color: rgba(255, 255, 255, 0.7); content: ""; opacity: 0; visibility: hidden; position: absolute; top: 0; left: 0; width: 100%; height: 100%; -webkit-transition: all 0.5s ease-in-out; transition: all 0.5s ease-in-out; }
.item-folio__thumb a::after { z-index: 1; content: "..."; font-family: georgia, serif; font-size: 3rem; color: #000000; display: block; height: 30px; width: 30px; line-height: 30px; margin-left: -15px; margin-top: -15px; position: absolute; left: 50%; top: 50%; text-align: center; opacity: 0; visibility: hidden; -webkit-transition: all 0.5s ease-in-out; transition: all 0.5s ease-in-out; -webkit-transform: scale(0.5); -ms-transform: scale(0.5); transform: scale(0.5); }
.item-folio__text { z-index: 2; position: absolute; left: 0; bottom: 3.6rem; padding: 0 3rem; -webkit-transform: translate3d(0, -100%, 0); -ms-transform: translate3d(0, -100%, 0); transform: translate3d(0, -100%, 0); opacity: 0; visibility: hidden; -webkit-transition: all 0.5s ease-in-out; transition: all 0.5s ease-in-out; }
.item-folio__title { color: #000000; font-size: 1.8rem; margin: 0; }
.item-folio__cat { color: black; font-family: "metropolis-regular", sans-serif; font-size: 1.5rem; margin-bottom: 0; }
.item-folio__caption { display: none; }
.item-folio__project-link { z-index: 500; display: block; font-family: "metropolis-semibold", sans-serif; font-size: 1.3rem; color: #ffffff; background-color: #0c202d; padding: 0.6rem 1.2rem; position: absolute; top: 3rem; left: 3rem; opacity: 0; visibility: hidden; -webkit-transform: translate3d(-100%, 0, 0); -ms-transform: translate3d(-100%, 0, 0); transform: translate3d(-100%, 0, 0); text-decoration: none !important; opacity: 1; visibility: visible; -webkit-transform: translate3d(0, 0, 0); -ms-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); }
.item-folio__project-link::before { display: block; content: ""; height: 1px; width: 3rem; background-color: white; position: absolute; top: 50%; left: -3rem; }
.item-folio__project-link:hover, .item-folio__project-link:focus, .item-folio__project-link:active { background-color: #086868; color: #ffffff; }
/* on hover */
.item-folio:hover .item-folio__thumb a::before { opacity: 1; visibility: visible; }
.item-folio:hover .item-folio__thumb a::after { opacity: 1; visibility: visible; -webkit-transform: scale(1); -ms-transform: scale(1); transform: scale(1); }
.item-folio:hover .item-folio__thumb img { -webkit-transform: scale(1.05); -ms-transform: scale(1.05); transform: scale(1.05); }
.item-folio:hover .item-folio__project-link { opacity: 1; visibility: visible; -webkit-transform: translate3d(0, 0, 0); -ms-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); }
.item-folio:hover .item-folio__text { opacity: 1; visibility: visible; -webkit-transform: translate3d(0, 0, 0); -ms-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); }

/* ------------------------------------------------------------------- 
 * responsive:
 * works
 * ------------------------------------------------------------------- */
@media only screen and (max-width: 1500px) { .masonry-wrap { width: 1200px; } .masonry .grid-sizer, .masonry__brick { width: 400px; } }
@media only screen and (max-width: 1350px) { .masonry-wrap { width: 1158px; } .masonry .grid-sizer, .masonry__brick { width: 386px; } }
@media only screen and (max-width: 1300px) { .masonry-wrap { width: 990px; } .masonry .grid-sizer, .masonry__brick { width: 330px; } }
@media only screen and (max-width: 1200px) { .s-works { padding: 15rem 0 22.2rem; } }
@media only screen and (max-width: 1100px) { .masonry-wrap { width: 90%; max-width: 800px; } .masonry .grid-sizer, .masonry__brick { width: 50%; } }
@media only screen and (max-width: 800px) { .s-works { padding: 12rem 0 21rem; } .masonry-wrap { margin-top: 3rem; } }
@media only screen and (max-width: 600px) { .masonry .grid-sizer, .masonry__brick { width: 100%; } }
@media only screen and (max-width: 400px) { .s-works { padding: 9.6rem 0 21rem; } .masonry-wrap { width: auto; } }

/* ===================================================================
 * # testimonials
 *
 * ------------------------------------------------------------------- */
.testimonials-header { text-align: center; margin-top: 7.2rem; }
.testimonials { font-size: 1.8rem; line-height: 2; margin-top: 4.2rem; border-top: 1px solid rgba(0, 0, 0, 0.15); position: relative; }
.testimonials__slider { position: relative; }
.testimonials__slider .slick-slide { outline: none; }
.testimonials__slider .slick-dots { display: block; list-style: none; width: 100%; padding: 0; margin: 3rem 0 0 0; text-align: center; position: absolute; top: 100%; left: 0; }
.testimonials__slider .slick-dots li { display: inline-block; width: 27px; height: 27px; margin: 0; padding: 9px; cursor: pointer; }
.testimonials__slider .slick-dots li button { display: block; width: 10px; height: 10px; line-height: 10px; border-radius: 50%; background: rgba(0, 0, 0, 0.4); border: none; padding: 0; margin: 0; cursor: pointer; font: 0/0 a; text-shadow: none; color: transparent; }
.testimonials__slider .slick-dots li button:hover, .testimonials__slider .slick-dots li button:focus { outline: none; }
.testimonials__slider .slick-dots li.slick-active button, .testimonials__slider .slick-dots li:hover button { background: #000000; }
.testimonials__slide { position: relative; padding-top: 4.5rem; padding-left: 12rem; padding-right: 3rem; }
.testimonials__slide::before { content: ""; display: block; width: 1px; height: 3.9rem; position: absolute; left: calc(7.8rem / 2); top: 0; background-color: rgba(0, 0, 0, 0.2); }
.testimonials__avatar { width: 7.8rem; height: 7.8rem; border-radius: 100%; position: absolute; left: 0; top: 4.8rem; outline: none; }
.testimonials__author { margin-top: 0rem; font-family: "metropolis-bold", sans-serif; font-size: 1.8rem; line-height: 1.5; color: #000000; }
.testimonials__author span { display: block; font-family: "metropolis-regular", sans-serif; font-size: 1.4rem; line-height: 1.5; color: rgba(85, 85, 85, 0.7); text-transform: none; letter-spacing: 0; }
/* ------------------------------------------------------------------- 
 * responsive:
 * testimonials
 * ------------------------------------------------------------------- */
@media only screen and (max-width: 1100px) { .testimonials { font-size: 1.7rem; } .testimonials__slide { padding-left: 9.5rem; } .testimonials__slide::before { left: calc(6.6rem / 2); } .testimonials__avatar { width: 6.6rem; height: 6.6rem; } }
@media only screen and (max-width: 600px) { .testimonials-header h1 { font-size: 2.7rem; } .testimonials { margin-top: 3rem; } .testimonials__slide { padding: 13.2rem 0 0; text-align: center; } .testimonials__slide::before { left: 50%; } .testimonials__avatar { left: 50%; margin-left: -3.3rem; } }
/* ===================================================================
 * # stats 
 *
 * ------------------------------------------------------------------- */
.s-stats { padding-top: 4.2rem; padding-bottom: 4.2rem; background-color: #050505; background-image: url(../images/stats-bg.jpg); background-repeat: no-repeat; background-position: center center; background-size: cover; overflow: hidden; position: relative; }
.s-stats::before { display: block; content: ""; background-color: #050505; position: absolute; top: 0; left: 0; width: 100%; height: 100%; opacity: 0.8; }
.stats { text-align: center; }
.stats__col { margin: 5.4rem 0; padding: 0 2rem; position: relative; overflow: hidden; white-space: nowrap; }
.stats__count { font-family: "metropolis-light", sans-serif; font-size: 9.2rem; line-height: 1; color: #ffffff; padding-bottom: 1.8rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; position: relative; }
.stats__count::after { display: block; content: ""; height: 1px; width: 100px; background-color: rgba(255, 255, 255, 0.1); position: absolute; bottom: 0; left: 50%; margin-left: -50px; }
.stats h5 { font-family: "metropolis-regular", sans-serif; font-size: 1.8rem; line-height: 1.333; color: rgba(255, 255, 255, 0.5); margin-top: 1.8rem; position: relative; }
/* ------------------------------------------------------------------- 
 * responsive:
 * stats
 * ------------------------------------------------------------------- */
@media only screen and (max-width: 1200px) { .stats { max-width: 900px; } .stats__col { margin: 3rem 0; } .stats__count { font-size: 9rem; } }
@media only screen and (max-width: 600px) { .stats__count { font-size: 8.4rem; } }
@media only screen and (max-width: 400px) { .s-stats { padding-top: 4.5rem; padding-bottom: 4.5rem; } .stats__count { font-size: 8.2rem; } }

/* ===================================================================
 * # contact 
 *
 * ------------------------------------------------------------------- */
.s-contact { padding-top: 21rem; padding-bottom: 10.2rem; background-color: #111111; color: rgba(255, 255, 255, 0.3); position: relative; }
.s-contact a { color: #ffffff; border-bottom: 1px solid transparent; display: inline-block; }
.s-contact a:hover, .s-contact a:focus { border-bottom: 1px solid rgba(255, 255, 255, 0.1); }
.contact-main { margin-top: 14.4rem; margin-bottom: 4.8rem; }
.contact-email { display: inline-block; font-family: "metropolis-light", sans-serif; font-size: 5.4rem; line-height: 1.222; color: #ffffff; padding-top: 3.6rem; position: relative; }
.contact-email::before { content: ""; display: block; height: 1px; width: 60px; background-color: #ec762c; position: absolute; top: 0; left: 0; }
.contact-number { font-family: "metropolis-light", sans-serif; font-size: 3rem; line-height: 1.7; display: block; }
.contact-address { font-family: "metropolis-regular", sans-serif; font-size: 2.8rem; line-height: 1.607; margin-top: 2.4rem; }
/* ------------------------------------------------------------------- 
 * ## contact social
 * ------------------------------------------------------------------- */
.contact-social { list-style: none; display: inline-block; margin: 0 0 0 0.3rem; font-size: 3rem; }
.contact-social li { margin-right: 15px; padding-left: 0; display: inline-block; }
.contact-social li a { color: rgba(255, 255, 255, 0.3); border: none !important; }
.contact-social li a:hover, .contact-social li a:focus { color: #ffffff; }
.contact-social li:last-child { margin: 0; }
/* ------------------------------------------------------------------- 
 * ## subscribe
 * ------------------------------------------------------------------- */
.contact-subscribe { margin: 0; padding: 0; position: relative; }
.mc-form { margin-top: 2.1rem; width: 100%; }
.mc-form input[type="email"] { background-color: rgba(0, 0, 0, 0.2); color: rgba(255, 255, 255, 0.5); width: 100%; height: 5.4rem; padding: 1.2rem 150px 1.2rem 20px; margin-bottom: 1.8rem; border: none; }
.mc-form input[type="email"]:focus { color: #ffffff; }
.mc-form input[type="email"]::-webkit-input-placeholder { color: rgba(255, 255, 255, 0.2); }
.mc-form input[type="email"]:-moz-placeholder { color: rgba(255, 255, 255, 0.2); /* Firefox 18- */ }
.mc-form input[type="email"]::-moz-placeholder { color: rgba(255, 255, 255, 0.2); /* Firefox 19+ */ }
.mc-form input[type="email"]:-ms-input-placeholder { color: rgba(255, 255, 255, 0.2); }
.mc-form input[type="email"].placeholder { color: rgba(255, 255, 255, 0.2) !important; }
.mc-form input[type="submit"] { color: #ffffff; background: #ec762c; border-color: #ec762c; padding: 0 15px; position: absolute; top: 0; right: 0; }
.mc-form label { color: #ffffff; font-family: "metropolis-semibold", sans-serif; font-size: 1.3rem; padding: 0 2rem; }
.mc-form label i { padding-right: 6px; }
/* ------------------------------------------------------------------- 
 * ## copyright
 * ------------------------------------------------------------------- */
.cl-copyright { margin-top: 2.1rem; }
.cl-copyright span { font-size: 15px; display: inline-block; }
.cl-copyright span::after { content: "|"; display: inline-block; padding: 0 1rem 0 1.2rem; color: rgba(255, 255, 255, 0.1); }
.cl-copyright span:last-child::after { display: none; }
/* ------------------------------------------------------------------- 
 * ## go to top
 * ------------------------------------------------------------------- */
.cl-go-top { z-index: 600; position: absolute; bottom: 10.8rem; right: 105px; display: none; }
.cl-go-top a { text-decoration: none; border: 0 none; display: block; height: 60px; width: 60px; line-height: 60px; text-align: center; background: black; color: white; text-align: center; text-transform: uppercase; border-radius: 50%; -webkit-transition: all 0.3s ease-in-out; transition: all 0.3s ease-in-out; }
.cl-go-top a i { font-size: 21px; line-height: inherit; }
.cl-go-top a:hover, .cl-go-top a:focus { background-color: #ffffff; color: #000000; }
.menu-is-open .cl-go-top {display: none;}

/* ------------------------------------------------------------------- 
 * responsive:
 * contact
 * ------------------------------------------------------------------- */
@media only screen and (max-width: 1600px) { .cl-go-top { right: 55px; } }
@media only screen and (max-width: 1200px) { .s-contact { padding-top: 15rem; } .contact-main { margin-top: 13.2rem; } .contact-email { font-size: 5rem; } .contact-number { font-size: 2.6rem; } .contact-address { font-size: 2.4rem; } .contact-social { font-size: 2.8rem; } .cl-copyright { margin-top: 3rem; } }
@media only screen and (max-width: 1000px) { .contact-email { font-size: 4.2rem; } .contact-number { font-size: 2.4rem; } .contact-address { font-size: 2.1rem; } .contact-social { font-size: 2.4rem; } }
@media only screen and (max-width: 800px) { .s-contact { padding-top: 12rem; padding-bottom: 9rem; } .contact-secondary, .cl-copyright { padding-right: 7.8rem; } .contact-secondary { margin-bottom: 1.5rem; } .contact-email { font-size: 3.6rem; } .contact-number { font-size: 2rem; } .contact-address { font-size: 2rem; } .cl-go-top { right: 35px; bottom: 9rem; height: 48px; width: 48px; } .cl-go-top a { height: 48px; width: 48px; line-height: 48px; } .cl-go-top a i { font-size: 18px; } .cl-go-top::after { font-size: 1.1rem; left: calc(24px + 15px); } }
@media only screen and (max-width: 600px) { .s-contact { padding-bottom: 6rem; } .contact-main { margin-top: 12rem; } .contact-email { font-size: 3rem; } .contact-number { font-size: 1.8rem; } .contact-address { font-size: 1.8rem; } .contact-social { font-size: 2rem; } .cl-go-top { right: 25px; bottom: 7.2rem; } }
@media only screen and (max-width: 480px) { .contact-subscribe { margin-top: 3rem; } .mc-form input[type="email"], .mc-form label { text-align: center; } .mc-form input[type="email"] { padding: 1.2rem 20px 1.2rem; } .mc-form input[type="submit"] { position: static; width: 100%; margin-bottom: 1.8rem; } .cl-copyright { margin-top: 0; } }
@media only screen and (max-width: 400px) { .s-contact { padding-top: 9.6rem; padding-bottom: 3rem; } .contact-main { margin-top: 9.6rem; } .contact-secondary { padding: 0; } .contact-email { font-size: 2.4rem; } .contact-number { font-size: 1.6rem; } .cl-copyright { margin-top: 9rem; padding: 0; text-align: center; } .cl-copyright span { font-size: 14px; } .cl-copyright span::after { display: none; } .cl-go-top { bottom: 12rem; right: 50%; margin-right: -24px; } .cl-go-top::before, .cl-go-top::after { display: none; } }
.mobile-hero-image { display: none; }
@media (max-width: 768px) { .mobile-hero-image { display: block; position: absolute; z-index: -1; width: 100%; height: 100%; overflow: hidden; } .mobile-hero-image picture, .mobile-hero-image img { width: 100%; height: 100%; object-fit: cover; object-position: center; display: block; } .s-home { background: none !important; } }
.parallax-mirror { z-index: 0 !important; }
.hero-content, .hero-image { position: relative; z-index: 1; }
@media screen and (max-width: 768px) { .s-home { background-size: cover; background-position: top; background-repeat: no-repeat; } }
@media screen and (min-width: 769px) { .s-home { background-image: none !important; } }
/* Mobile : fond image fixe via background-image */
@media screen and (max-width: 768px) { #home:not(.page) { background-image: url("assets/images/home/blue_k_mobile_landscape.webp"); background-size: cover; background-position: center; background-repeat: no-repeat; position: relative; z-index: 0; } .parallax-mirror { display: none !important; } }
@media screen and (max-width: 768px) and (orientation: portrait) { #home:not(.page) { background-image: url("assets/images/home/logo_krea3_mobile.webp"); } }
/* Masquer l'image mobile sur desktop */
@media screen and (min-width: 769px) { .mobile-hero-image { display: none !important; } }
.parallax-mirror { z-index: 0 !important; }
.s-home { position: relative; z-index: 1; }
@media screen and (max-width: 768px) { .s-home:not(.page) { background-image: url('assets/images/home/blue_k_mobile_landscape.webp'); } }
/* Correction visibilité Parallax */
.parallax-mirror { z-index: 0 !important; display: block !important; pointer-events: none; }
.s-home { position: relative; z-index: 1; }
.s-about.light-background { background-color: #fafafa; background: #fafafa; }
.s-works { background: #0f2b41 !important; }
.s-works .display-1 { color: #fff; }
.s-works p.lead { color: #fff; }
.skip-link.screen-reader-text { position: absolute; left: -9999px; top: auto; width: 1px; height: 1px; overflow: hidden; }
.skip-link.screen-reader-text:focus { position: static; width: auto; height: auto; margin: 1em; padding: 1em; background: #fff; color: #000; z-index: 100000; display: inline-block; }

.btn-animatedbg { position: relative; background: transparent !important; border-color: #fff !important; color: #0c202d !important; height: 6.6rem; line-height: 6.2rem; padding: 0 4rem 0 4rem; overflow: hidden; z-index: 1; width: auto; text-align: center; }
.btn-animatedbg::before { content: ""; height: 100%; width: 0; 
background-color: #0c202d; 
background-color: rgb(94, 187, 190);
-webkit-transition: all 0.2s ease-in-out; transition: all 0.2s ease-in-out; position: absolute; top: 0; left: 0; z-index: -1; }
.btn-animatedbg:hover::before { width: 100%; }
.btn-animatedbg:hover::after { right: 3rem; }
#realisations .subhead, #realisations .btn-animatedbg { color:#fff !important; }
/*****************Coordonnees***********************/
#top-footer { padding: 0 0 40px 0; display: flex; width: auto; font-size: 1em; margin: 0 auto; max-width: 1500px; }
#gauche-footer, #droite-footer { padding: 0 40px; }
#gauche-footer { border-right: 1px solid rgba(255, 255, 255, 0.5); text-align: right; }
.coordonnees { display: block; margin: 0; font-size: 0.9em; }
#top-footer h3 { color: #fff !important; margin: 0 0 15px 0; font-weight:600; font-size:1.5rem; }
footer h2 { text-align: center; font-weight: 600; padding: 60px 0 40px 0; color: #fff; width: 100%; display: block; margin: 0 auto; font-size: 3em; }
footer h2::before { display: none; }
footer h2 span { color: #f7b032; }
.adresse-postale { padding: 0; margin: 0 0 30px 0; font-weight: 300; }
.adresse-postale h3 span { font-weight: 700; }
.adresse-postale div { padding: 0; font-size: 1.1rem; }
#gauche-footer ul { margin: 0; padding: 0; font-size: 1.4rem; list-style-type: none; }
#gauche-footer li { display: inline-block; border: 1px solid #fff; border-radius: 50px; width: 50px; height: 50px; line-height: 1.5em; text-align: center; padding-top: 4px; }
#gauche-footer li:hover { background: #fff; color: #ec7931; }
#gauche-footer ul a { color: #fff; }
#gauche-footer li:hover a { color: #ec7931; }
#droite-footer p { position: relative; padding: 50px 0 0 0; font-weight: 500; font-style: italic; color: #fff; }
#droite-footer ul { margin: 0; padding: 0; font-size: 1.4rem; list-style-type: none; }
#droite-footer li { display: inline-block; border: 1px solid #fff; border-radius: 50px; width: 50px; height: 50px; line-height: 1.5em; text-align: center; padding-top: 4px; }
#droite-footer li:hover { background: #fff; color: #ec7931; }
#droite-footer ul a { color: #fff; }
#droite-footer li:hover a { color: #ec7931; }
ul#liens-coordonnees { display: table-cell; vertical-align: middle; margin: 0; padding: 0 40px 0 0; }
#liens-coordonnees1 svg { font-size: 1.4em; }
#liens-coordonnees2 svg { font-size: 2em; }
ul#liens-coordonnees li { display: inline-block; margin: 0; padding: 5px 0 5px 0; vertical-align: top; vertical-align: middle; }
ul#liens-coordonnees li a { text-decoration: none; color: #FFF; font-weight: 300; padding: 5px 10px 5px 10px; display: table; width: 100%; text-transform: uppercase; font-size: 0.7em; -webkit-transition: all .4s ease; -moz-transition: all .4s ease; -ms-transition: all .4s ease; -o-transition: all .4s ease; transition: all .4s ease; border-radius: 50px; }
ul#liens-coordonnees li a#liens-coordonnees1 { font-size: 1em; }
ul#liens-coordonnees li a#liens-coordonnees1, ul#liens-coordonnees li a#liens-coordonnees3 { border: 2px solid rgba(255, 255, 255, 0.1); }
ul#liens-coordonnees li a#liens-coordonnees1:hover, ul#liens-coordonnees li a#liens-coordonnees3:hover { background-color: rgba(255, 255, 255, 0.5); }
ul#liens-coordonnees li a#liens-coordonnees2 { border: 2px solid #FFF; background-color: #FFF; color: #ec7931; color:#333; font-weight: 400; }
ul#liens-coordonnees li a#liens-coordonnees2:hover { background-color: rgba(255, 255, 255, 0.8); }
span.icon-liens-coordonnees, span.intitule-liens-coordonnees { display: table-cell; vertical-align: middle; }
span.icon-liens-coordonnees { width: 30px; height: 30px; }
a#liens-coordonnees1 span.icon-liens-coordonnees { background-position: 0 -1045px; }
a#liens-coordonnees2 span.icon-liens-coordonnees { background-position: 0 -1075px; }
a#liens-coordonnees3 span.icon-liens-coordonnees { background-position: 0 -1105px; }
span.intitule-liens-coordonnees { padding-left: 10px; }
/*************Fin Coordonnees***********************/
#bottom-footer { text-align: center; }
ul#menu_footer { display: table; font-family: "metropolis-regular", sans-serif; padding: 10px; margin: 0 auto 0 auto; font-size: 0.9em; }
ul#menu_footer li:last-child { border-right: 1px solid rgba(255, 255, 255, 0.1); padding-right: 10px; }
ul#menu_footer li { display: table-cell; vertical-align: middle; margin: 0; padding: 0 10px 0 10px; border-left: 1px solid rgba(255, 255, 255, 0.1); }
ul#menu_footer li a { display: inline-block; color: #fff; text-transform: uppercase; text-decoration: none; padding: 0; font-weight: 400; border: none; }
ul#menu_footer li a img, ul#menu_footer li a span { display: inline-block; vertical-align: middle; }
ul#menu_footer li a:hover { text-decoration: underline; }
#fond-bas-footer { background-color: #FFF; }
ul#partenaires-footer { width: 100%; margin: 0; text-align: center; padding: 30px 10px 30px 10px; list-style-type: none; }
ul#partenaires-footer li { display: inline-block; padding: 0 40px 0 40px; height: 80px; }
ul#partenaires-footer li img { display: block; height: 100%; width: auto; }
.krea3-footer { background-color: #0c202d; color: #f0f0f0; padding: 40px 20px 20px; font-size: 15px; }
.krea3-footer .footer-content { display: flex; flex-wrap: wrap; justify-content: space-between; max-width: 1200px; margin: 0 auto; gap: 20px; }
.krea3-footer .footer-col { flex: 1 1 300px; }
.krea3-footer .footer-logo { max-width: 160px; margin-bottom: 15px; width: 115px; height: 49px; }
.krea3-footer .footer-description { line-height: 1.6; margin: 0; }
.krea3-footer .footer-nav ul { list-style: none; padding: 0; margin: 0; }
.krea3-footer .footer-nav li { margin-bottom: 10px; }
.krea3-footer .footer-nav a { color: #f0f0f0; text-decoration: none; transition: color 0.2s; }
.krea3-footer .footer-nav a:hover { text-decoration: underline; }
.krea3-footer .footer-bottom { text-align: center; margin-top: 30px; border-top: 1px solid #086868; padding-top: 20px; font-size: 14px; color: #ccc; }
.cl-go-top { position: fixed; bottom: 30px; right: 30px; width: 48px !important; height: 48px !important; background-color: transparent; border-radius: 50%; font-size: 24px; line-height: 48px; text-align: center; cursor: pointer; display: none; z-index: 999; transition: all 0.3s ease; opacity: 0.9; width: 60px; height: 60px; line-height: 60px; }
.cl-go-top:hover { color: #fff; transform: translateY(-4px); opacity: 1; }
.cl-go-top:focus { outline: none; }
/****************************************** * Align box ******************************************/
img.centered, .aligncenter, div.aligncenter { display: block; margin-left: auto; margin-right: auto; }
img.alignright { padding: 4px; margin: 0 0 2px 7px; display: inline; }
img.alignleft { padding: 4px; margin: 0 7px 2px 0; display: inline; }
/** * css pour les légendes */
.wp-caption { border:1px solid #eee; padding:10px; max-width:100%; background-color:#FFF; }
.alignleft { margin-right:10px; }
.alignright { margin-left:10px; }
.wp-caption img { margin:0; padding:0; border:0 none; max-width:100%; }
.wp-caption p,.wp-caption-text { font-family:sans-serif; text-align:center; font-size:1em; line-height:1.4em; font-weight:bold; color:#333; padding:10px 0 0 0; margin:0; font-weight:400; }
.wp-caption { -moz-border-radius:0px; -khtml-border-radius:0px; -webkit-border-radius:0px; border-radius:0px }
.wp-caption { -moz-box-shadow:none; -webkit-box-shadow:none; box-shadow:none; }
.resize { width: 160px; height : auto; }
.resize { width: auto; height : 120px; }
.nav-previous a, .nav-next a { padding:10px 20px; }
.grecaptcha-badge { display: none !important; }
.visual-form-builder input[type="email"], .visual-form-builder input[type="number"], .visual-form-builder input[type="search"], .visual-form-builder input[type="text"], .visual-form-builder input[type="tel"], .visual-form-builder input[type="url"], .visual-form-builder input[type="password"], .visual-form-builder textarea, .visual-form-builder select { display: block; height: 6rem; padding: 1.5rem 2.4rem; border: 0; outline: none; color: #151515; font-family: "metropolis-regular", sans-serif; font-size: 1.5rem; line-height: 3rem; max-width: 100%; background: #FFF; -webkit-transition: all 0.3s ease-in-out; transition: all 0.3s ease-in-out; }
.contact-bottom a { text-decoration:none; }


/* ===================================================================
 * # solutions-numeriques
 *
 * ------------------------------------------------------------------- */
.s-solutions-numeriques { padding-top: 18rem; padding-bottom: 18rem; background-color: #075455 !important; position: relative; }
.s-solutions-numeriques a, .s-solutions-numeriques .subhead, .s-solutions-numeriques .display-1, .s-solutions-numeriques .subhead::before { color: #fff !important; }
.s-solutions-numeriques a:hover, .s-solutions-numeriques a:focus, .s-solutions-numeriques a:active { color: #FFFFFF; }
.solutions-numeriques-list { margin-top: 7.2rem; }
.item-solutions-numeriques { border-color: rgba(255, 255, 255, 0.5); border-width: 1px; border-style: none solid solid none; text-align: center; padding: 2.4rem 0; }
.item-solutions-numeriques a { display: block; text-decoration: none; }
.item-solutions-numeriques a span { display: block; font-size: 2rem; }
.item-solutions-numeriques img { -webkit-transform: scale(0.65); -ms-transform: scale(0.65); transform: scale(0.65); -webkit-transition: all 0.3s ease-in-out; transition: all 0.3s ease-in-out; }
.item-solutions-numeriques:nth-child(4n) { border-style: none none solid none; }
.item-solutions-numeriques:nth-last-child(-n+4) { border-bottom-style: none; }
.item-solutions-numeriques a:hover img { -webkit-transform: scale(0.8); -ms-transform: scale(0.8); transform: scale(0.8); opacity: 1; }
/* -------------------------------------------------------------------  * responsive: * solutions-numeriques * ------------------------------------------------------------------- */
#realisations { padding: 10rem 0 30rem 0; background:#0f2b41 !important; }
#fil_ariane { margin-bottom: 6rem; }
@media screen and (max-width: 980px){ h2.accueil { display: none; } }
/****************************Plan du site********************************************************************/
/****************************Plan du site********************************************************************/
#krea3_plan_site { margin:0; padding:0; }
#krea3_plan_site ul { margin:0 0 0 0; padding:0 5px 10px 0; }
/*niveau 1*/
/*niveau 1*/
#krea3_plan_site li { list-style-type:none; margin:10px 0 10px 0; padding:0 4% 0 4%; font-size:1.3em; font-weight:700; font-family:'metropolis-regular', sans-serif; }
#krea3_plan_site li.has_no_children { margin: 0 30px; padding: 0; }
#krea3_plan_site > li { padding:0 4%; }
#krea3_plan_site li a { text-decoration:none; text-transform:uppercase; color:#222222; font-weight:700; display:block; padding:10px 0 20px 0; margin:0; background:#fff; display:inline-block; }
#krea3_plan_site li a:hover { text-decoration:underline; color:#333; }
/*niveau 2*/
#krea3_plan_site ul li { border-bottom:1px solid rgba(0,0,0,0.1); padding:5px 30px; margin:2px 10px 2px 0; font-size:0.9em; text-transform: none; background-position: left top; background-size: 18px auto; }
#krea3_plan_site ul li a { font-weight:normal; color:#333; text-transform:none; padding:0; border-bottom:none; margin:0; }
#krea3_plan_site ul li a:hover { color:#192535; }
/*niveau 3*/
#krea3_plan_site ul li ul li { border:none; font-size:0.9em; margin-left:20px; padding:0 0 0 0; background:#fff; }
#krea3_plan_site ul li ul li a { color:#333; }
/*niveau 4*/
#krea3_plan_site ul li ul li ul li { padding:0 10px 0 10px; }
#krea3_plan_site ul { margin:0 0 0 0; padding:0 5px 10px 0; }
/*niveau 1*/
#krea3_plan_site li { list-style-type:none; margin:10px 0 40px 0; padding:0 4% 0 4%; }
#krea3_plan_site > li { padding:30px 4% 30px 30px; }
#krea3_plan_site li a { text-decoration:none; display:block; position:relative; }
div.sb-wall { width:100% !important; }
/* .content-modal (ancienne version) */ /* .content-modal { display: none; position: fixed; width: 100%; height: 100%; left: 0; top: 0; background: #ffffff; z-index: 99999; overflow-y: scroll; } */
.content-modal { position: fixed; top: 0; right: 0; width: 100%; max-width: 700px; height: 100%; background: rgba(255,255,255,1); z-index: 9999; transform: translateX(100%); transition: transform 0.4s ease-in-out, opacity 0.4s ease-in-out; opacity: 0; display: block; /* nécessaire pour .fadeIn() jQuery */ }
.content-modal.active, .content-modal.show { transform: translateX(0%); opacity: 1; }
/* Conteneur principal de la modale */
.content-modal { position: fixed; top: 0; right: 0; width: 100%; max-width: 700px; height: 100vh; background: #fff; z-index: 9999; transform: translateX(100%); transition: transform 0.4s ease-in-out, opacity 0.4s ease-in-out; opacity: 0; overflow-y: auto; padding: 2rem; box-shadow: -4px 0 15px rgba(0,0,0,0.15); }
/* Affichage actif de la modale */
.content-modal { background: #075455 !important; color: #fff !important; }
.content-modal.show { transform: translateX(0); opacity: 1; background: #075455 !important; color: #fff !important; }
/* Fermeture */
.content-modal-close-switch { position: absolute; top: 1rem; right: 1rem; font-size: 2rem; font-weight: bold; color: #000; cursor: pointer; z-index: 10001; }
/* Animation fade-in sur le contenu interne */
.content-modal .fade-content { opacity: 0; transform: translateY(20px); transition: opacity 0.6s ease, transform 0.6s ease; transition-delay: 0.2s; }
/* Ajout automatique lors de l’ouverture */
.content-modal.show .fade-content { opacity: 1; transform: translateY(0); }
body.modal-open { overflow: hidden; position: fixed; width: 100%; /*filter: blur(2px);*/ }
.zoom-on-click { transform: scale(1.05); transition: transform 0.4s ease; z-index: 999; position: relative; }
.content-modal-form { padding: 0 15px; }
.content-modal-form input { width: 500px; font-size: 40px; border: none; border-bottom: 2px solid #dddddd; background: 0 0; color: #999; }
.content-modal-close-switch { position: fixed; width: 50px; height: 50px; background: #333; color: #fff; text-align: center; border-radius: 50%; font-size: 28px; line-height: 28px; top: 30px; cursor: pointer; -webkit-transform: rotate(45deg); -ms-transform: rotate(45deg); transform: rotate(45deg); display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; right: 30px; }
#temoignages { color:#fff; padding: 10rem 0 30rem 0; background: #0f2b41 !important; }
#temoignages #fil_ariane a { color:#fff; }
#realisations { color:#fff; padding: 10rem 0 30rem 0; background: #0f2b41 !important; }
#realisations #fil_ariane a { color:#fff; }
div.lead ul li { padding-left: 0.4rem; font-family: "metropolis-regular", sans-serif; font-size: 2.4rem; line-height: 1.75; margin-bottom: 0; color: rgba(85, 85, 85, 0.95); text-align: left !important; }
.home #offres .btn-animatedbg, 
.home #solutions .btn-animatedbg { position: relative; background: #fff !important; border-color: #0c202d !important; color: #0c202d !important; height: 6.6rem; line-height: 6.2rem; padding: 0 6rem 0 6rem; overflow: hidden; z-index: 1; width: auto; text-align: center; }
.home #offres .btn-animatedbg::after, 
.home #solutions .btn-animatedbg::after { display: none; content: ""; width: 0; height: 0; background-image: none; }
.home #offres .btn-animatedbg:hover, 
.home #solutions .btn-animatedbg:hover { color: #fff !important; }

/* rubrique offres  */ 
#icommune{background:#0c202d !important;color:#fff!important;}
#icommune a{color:#fff!important;}
#icommune .subhead{color:#fff!important;}
#icommune .subhead::before {color: #fff!important;}
#icommune .display-1{color:#fff !important;}
#icommune p.lead{color:#fff;}
#icommune .services-list .service-item h3{color:#fff!important;}
#icommune .services-list .service-item h3 a{color:#fff!important;}
#icommune .services-list .service-item p{color:#fff!important;}
#icommune th{color:#fff!important;}
#icommune .pricing-table{color:#fff!important;}
#icommune .pricing-table h2{color:#fff!important;}
#icommune .pricing-table p{color:#fff!important;}
#icommune .pricing-table a{color:#fff!important;}
#icommune .btn-animatedbg {position: relative;background: #0c202d !important;border-color: #fff !important;color: #fff !important;height: 6.6rem;line-height: 6.2rem;padding: 0 6rem 0 6rem;overflow: hidden;z-index: 1;width: auto;text-align: center;}
#icommune .btn-animatedbg::after {display: none;content: "";width: 0;height: 0;background-image: none;}
#icommune .btn-animatedbg:hover {color: #fff !important;background: #fff !important;background-color: #fff !important;}

#entreprises {background:#0c202d ;color:#fff!important;border-bottom: 4px solid #fff;background:#075455;}
#entreprises a{color:#fff !important;}
#entreprises .subhead{color:#fff!important;}
#entreprises .subhead::before {color: #fff!important;}
#entreprises .display-1{color:#fff!important;}
#entreprises p.lead{color:#fff!important;}
#entreprises .services-list .service-item h3{color:#fff!important;}
#entreprises .services-list .service-item h3 a{color:#fff!important;}
#entreprises .services-list .service-item p{color:#fff!important;}
#entreprises th{color:#fff!important;}
#entreprises .pricing-table{color:#fff!important;}
#entreprises .pricing-table h2{color:#fff!important;}
#entreprises .pricing-table p{color:#fff!important;}
#entreprises .pricing-table a{color:#fff!important;}
#entreprises .btn-animatedbg {position: relative;background: #0c202d !important;border-color: #fff !important;color: #fff !important;height: 6.6rem;line-height: 6.2rem;padding: 0 6rem 0 6rem;overflow: hidden;z-index: 1;width: auto;text-align: center;}
#entreprises .btn-animatedbg::after {display: none;content: "";width: 0;height: 0;background-image: none;}
#entreprises .btn-animatedbg:hover {color: #fff !important;background: #fff !important;background-color: #fff !important;}

/* =Table responsive pour les prix et les périodes
--------------------------------------------------------------------------------------- */
.footable {border-bottom: 1px solid #ccc;border-right: none;border: none !important;border-spacing: 0;color: #000;font-family: 'metropolis-semibold', sans-serif;width: 100%;}
.footable.breakpoint > tbody > tr > td.expand {background: url('assets/images/footable/plus.png') no-repeat 5px center;padding-left: 40px;}
.footable.breakpoint > tbody > tr.footable-detail-show > td.expand {background: url('assets/images/footable/minus.png') no-repeat 5px center;}
.footable.breakpoint > tbody > tr.footable-row-detail {background: #0c202d none repeat scroll 0 0;color: #ffffff;}
.footable > tbody > tr:hover {background: #fff;color: #000;}
.footable > tbody > tr:hover a{color:#fff;}
.footable.breakpoint > tbody > tr:hover:not(.footable-row-detail) {cursor: pointer;}
.footable > tbody > tr > td, .footable > thead > tr > th {border-left: 1px solid #ccc;border-top: 1px solid #ccc;padding: 10px;text-align: left;border: none;
    border-bottom: 1px solid #eee;}
.footable > thead > tr > th, .footable > thead > tr > td {background-color: #0c202d;color: #fff;border-top: none;text-shadow: 0 1px 0 rgba(255,255,255,.5);position: relative;}
.footable > tbody img {vertical-align:middle;}

/* page icommune */
/*.page-id-4114 section{background:#fff !important;}*/
.page-id-4114 .s-about,
.single-offre_commune .s-about{ padding-bottom: 6rem; padding-top: 6rem; }
.page-id-4114 .btn-animatedbg, .postid-3732 .btn-animatedbg, .postid-3789 .btn-animatedbg, .postid-3744 .btn-animatedbg { position: relative; background: #fff !important; border-color: #0c202d !important; color: #0c202d !important; height: 6.6rem; line-height: 6.2rem; padding: 0 6rem 0 6rem; overflow: hidden; z-index: 1; width: auto; text-align: center; }
.page-id-4114 .btn-animatedbg::after, .postid-3732 .btn-animatedbg::after, .postid-3789 .btn-animatedbg::after, .postid-3744 .btn-animatedbg::after { display: none; content: ""; width: 0; height: 0; background-image: none; }
.page-id-4114 .btn-animatedbg:hover, .postid-3732 .btn-animatedbg:hover, .postid-3789 .btn-animatedbg:hover, .postid-3744 .btn-animatedbg:hover { color: #fff !important; background: #fff !important; background-color: #fff !important; }

#site-sur-mesure .btn-animatedbg{ position: relative; background: #fff !important; border-color: #0c202d !important; color: #0c202d !important; height: 6.6rem; line-height: 6.2rem; padding: 0 6rem 0 6rem; overflow: hidden; z-index: 1; width: auto; text-align: center; }
#site-sur-mesure .btn-animatedbg::after{ display: none; content: ""; width: 0; height: 0; background-image: none; }
#site-sur-mesure .btn-animatedbg:hover { color: #fff !important; background: #fff !important; background-color: #fff !important; }

#realisations.s-works .display-1 { color:#fff !important; }
/* Vidéo de fond pour desktop */
.home-video { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; z-index: -2; display: none; }
/* Affichage de la vidéo uniquement sur desktop */
@media screen and (min-width: 768px) { .home-video { display: block; } }
/* Conteneur principal en deux colonnes */
.krea3-accordion-content, .krea3-accordion-item .content { display: flex !important; flex-wrap: wrap; gap: 1.5rem; align-items: flex-start; }
/* Colonne image */
.krea3-accordion-content img, .krea3-accordion-item .content img { flex: 0 0 auto; max-width: 300px; width: 100%; height: auto; border-radius: 6px; }
/* Texte à droite */
.krea3-accordion-content > div:not(:first-child), .krea3-accordion-item .content > div:not(:first-child), .krea3-accordion-content p, .krea3-accordion-item .content p { flex: 1; min-width: 0; }
/* Responsive small screen */
@media (max-width: 768px) { .krea3-accordion-content, .krea3-accordion-item .content { flex-direction: column; } .krea3-accordion-content img, .krea3-accordion-item .content img { max-width: 100%; } }
.one_half { width: 48%; float: left; }
.one_half.last { margin-left: auto; float: left; }
@media screen and (max-width: 768px) { .row { flex-direction: column; } .one_half, .one_half.last { width: 100%; margin-left: 0; } }
body.tax-theme_offre .display-1 a { color:#fff; font-weight:400; text-decoration:none; }
.accordion-header { background-color: #0c202d; color: white; font-family: "metropolis-regular", sans-serif; font-size: 1.2rem; font-weight: normal; padding: 1rem 1.5rem; border: none; border-radius: 0.5rem; cursor: pointer; display: flex; align-items: center; gap: 0.5rem; transition: background-color 0.3s ease; }
.accordion-header:hover, .accordion-header:focus { background-color: #123040; /* teinte légèrement plus claire */ }
.accordion-header .ui-accordion-header-icon { color: white; font-size: 1rem; display: flex; align-items: center; }
.ui-accordion-content p.lead { font-size:2rem !important; }
.fas, .far { font-size: 8rem; }
#resultat.row.fade-content { padding-top: 8rem; }
#resultat.row.fade-content #the_content_page.lead p, #resultat.row.fade-content #the_content_page.lead ul li, #resultat.row.fade-content #the_content_page.lead a { font-size:1.4rem !important; color:#fff; }
/*#resultat.row.fade-content #the_content_page.lead img { max-width: 320px; float: left; padding: 20px; }*/


#content-temoignages{
	background: #fff;
    padding-top: 10rem;
}

div.lead ul li, div.lead ol li, #agence ul li , #agence ol li {font-size: 2.4rem;}
    
    
    .footable > tbody > tr:hover {
    background: #075455;
    color: #fff;
}

.footable.breakpoint > tbody > tr.footable-row-detail {
    background: #075455 none repeat scroll 0 0;
    color: #ffffff;
}



.home-content__main {
    padding-top: 15rem;
    padding-right: 0rem;
    position: relative;
    text-align: center;
    padding-left: 40rem;
}

.home-content h1 + h2::before {
    content: none;
    display: none;
    width: 0;
    height: 1px;
    background-color: #fff;
    position: absolute;
    left: 6px;
    top: 2.7rem;
}

.home-content h1 + p, .home-content h1 + h2{padding-left:0;}

.home-content h2.accueil{padding-left: 30%;padding-top: 10rem;}
    
@media screen and (max-width: 1366px){
	.home-content h2.accueil{padding-top: 30rem;padding-left: 10rem;}
} 
@media screen and (max-width: 1024px){
	.row.home-content__main{padding-left: 2rem;}
} 
@media screen and (max-width: 915px) and (orientation: portrait){
	.home-content{padding-left: 0rem;}
	.home-content h2.accueil{display: block;padding-left: 0rem;}
} 
@media screen and (max-width: 915px) and (orientation: landscape){
	.row.home-content__main{padding-top: 0rem;}
	.home-content h2.accueil{display: block;padding: 0rem;}
}
@media screen and (max-width: 900px){
	.home-content{padding-left: 5rem;}
	.home-content h2.accueil{display: block;padding-top: 40rem;padding-left: 14rem;}
} 
@media screen and (max-width: 800px){
	.home-content__main{padding-left:20rem;}
}
@media screen and (max-width: 430px) and (orientation: portrait){
.home-content{padding:0;}
.home-content h2.accueil{padding:0;}
}
@media screen and (max-width: 412px) and (orientation: portrait){
	.home-content h2.accueil{padding:0;}
}

.home #solutions.s-about{padding-top: 8rem;padding-bottom: 8rem;} 

.header-menu-toggle {font-size: 2rem;}

 #infos-intro-ville{background: #075455;
    color: #fff;}
.services-list { margin-top: 6rem;counter-reset: ctr; /* remet à 0 => le 1er item affichera 01 */ }
.services-list .service-item { margin-bottom: 1.5rem; counter-increment: ctr;color:#fff;}
.services-list .service-item h3 { margin-top: 0; margin-bottom: 1.8rem; }
.services-list .service-icon { color: #ec762c; font-size: 4.8rem; }
.services-list .service-item::before {
    display: block;
    content: counter(ctr, decimal-leading-zero) ".";
    margin-bottom: 1.8rem;
    font-family: "SurgenaLight", serif;
    font-weight: 700;
    font-size: 3.6rem;
    line-height: 1;
    color: #fff;
}
.services-list .service-item .service-text,
.services-list .service-item .service-text p,
.services-list .service-item .service-text a{
	color:#fff;
}

.services-list.sur-mesure .service-item h3,
.services-list.sur-mesure .service-item .service-text,
.services-list.sur-mesure .service-item .service-text p,
.services-list.sur-mesure .service-item .service-text a{
	color:rgba(85, 85, 85, 0.95);
}

.services-list.sur-mesure .service-item::before {color:rgb(94, 187, 190);}
.services-list.sur-mesure .service-item ul{margin-left:0;}
.services-list.sur-mesure .service-item ul li {
    list-style-type: none;padding-left:0;
}

.services-list.sur-mesure .service-item ul li i.fa.fa-check{margin-right:0.8rem;color:rgb(94, 187, 190);}

.page-id-4114 #realisations .bg-bleu.btn-animatedbg, .postid-3732 #realisations .bg-bleu.btn-animatedbg, .postid-3789 #realisations .bg-bleu.btn-animatedbg, .postid-3744 #realisations .bg-bleu.btn-animatedbg { position: relative; background: #fff !important; border-color: #0c202d !important; color: #0c202d !important; height: 6.6rem; line-height: 6.2rem; padding: 0 6rem 0 6rem; overflow: hidden; z-index: 1; width: auto; text-align: center; }
.page-id-4114 #realisations .btn-animatedbg::after, .postid-3732 #realisations .bg-bleu.btn-animatedbg::after, .postid-3789 #realisations .bg-bleu.btn-animatedbg::after, .postid-3744 #realisations .bg-bleu.btn-animatedbg::after { display: none; content: ""; width: 0; height: 0; background-image: none; }
.page-id-4114 #realisations .btn-animatedbg:hover, .postid-3732 #realisations .bg-bleu.btn-animatedbg:hover, .postid-3789 #realisations .bg-bleu.btn-animatedbg:hover, .postid-3744 #realisations .bg-bleu.btn-animatedbg:hover { color: #fff !important; background: #fff !important; background-color: #fff !important; }


.content-modal.show {
    background: #0c202d !important;
}

.content-modal-close-switch {background: #fff;color: #075455;}

main#site-sur-mesure.s-about{padding-bottom:2rem;}

blockquote {
	padding: 30px 50px 30px 30px;
	background: #075455;
	border-left: 2px solid #0c202d;
	overflow-wrap: break-word;
	color:#fff;
}
blockquote p, blockquote a { font-family: "metropolis-regular", sans-serif; padding: 0; font-size: 2.1rem; line-height: 1.857; color: #fff !important; text-align:center !important; }
blockquote cite { display: block; font-family: "domine-regular", sans-serif; font-size: 1.4rem; font-style: normal; line-height: 1.5; }
blockquote cite:before { content: "\2014 \0020"; }
blockquote cite a, blockquote cite a:visited { color: #626262; border: none; }

.micro-intro{margin:.75rem 0 0;font-size:1.05rem}
.micro-nav{margin:.35rem 0 1rem;color:#334155;font-size:.95rem}
.micro-nav a{text-decoration:underline}

a.tel-footer-krea3{color:#fff !important;}

.visual-form-builder .legend h3, .visual-form-builder label, label.desc{text-align:left;}


.home-social.footer {
    list-style: none;
    font-size: 14px;
    line-height: 4.8rem;
    margin:8rem 0 2rem 20px;
    color: #ffffff;
    position: relative;
    /* bottom: 6.6rem; */
    left: 0;
}

body.page-id-4240 .s-about{padding-bottom:8rem;}

/* Section services (page 4240) : fond #075455 et texte blanc */
body.page-id-4240 #services {
  background-color: #075455 !important;
  color: #fff;
}

/* Titres, paragraphes, listes, sous-titres, accroches */
body.page-id-4240 #services h1,
body.page-id-4240 #services h2,
body.page-id-4240 #services h3,
body.page-id-4240 #services h4,
body.page-id-4240 #services h5,
body.page-id-4240 #services h6,
body.page-id-4240 #services .display-1,
body.page-id-4240 #services .subhead,
body.page-id-4240 #services .lead,
body.page-id-4240 #services p,
body.page-id-4240 #services li {
  color: #fff !important;
}

/* Liens : blanc + souligné pour lisibilité */
body.page-id-4240 #services a {
  color: #fff !important;
  text-decoration: underline;
}

body.page-id-4240 #services .subhead::before{color:#fff;}
body.page-id-4240 #services a:hover,
body.page-id-4240 #services a:focus {
  opacity: 0.85;
}

/* Icônes (police & SVG) */
body.page-id-4240 #services .service-icon,
body.page-id-4240 #services .service-icon i {
  color: #fff !important;
}
body.page-id-4240 #services svg {
  fill: #fff;
  stroke: #fff;
}

/* Bordures éventuelles */
body.page-id-4240 #services .service-item,
body.page-id-4240 #services .section-header,
body.page-id-4240 #services hr {
  border-color: rgba(255, 255, 255, 0.25) !important;
}

/* Neutraliser fonds clairs par défaut */
body.page-id-4240 #services .service-text,
body.page-id-4240 #services .service-item {
  background: transparent;
}

body.page-id-4240 .s-solutions-numeriques{    background-color: #0c202d !important;padding-bottom:2rem;}

/* Textes blancs dans la section "solutions-numeriques" (page 4240) */
body.page-id-4240 #solutions-numeriques,
body.page-id-4240 #solutions-numeriques h1,
body.page-id-4240 #solutions-numeriques h2,
body.page-id-4240 #solutions-numeriques h3,
body.page-id-4240 #solutions-numeriques h4,
body.page-id-4240 #solutions-numeriques h5,
body.page-id-4240 #solutions-numeriques h6,
body.page-id-4240 #solutions-numeriques .display-1,
body.page-id-4240 #solutions-numeriques .subhead,
body.page-id-4240 #solutions-numeriques p,
body.page-id-4240 #solutions-numeriques .feature-desc {
  color: #fff !important;
}

body.page-id-4240 #solutions-numeriques a {
  color: #fff !important;
  text-decoration: underline;
}
body.page-id-4240 #solutions-numeriques a:hover,
body.page-id-4240 #solutions-numeriques a:focus {
  opacity: 0.85;
}

/* Inversion des tailles H4 / P dans #solutions-numeriques (page 4240) */
body.page-id-4240 #solutions-numeriques .solution-text h4,
body.page-id-4240 #solutions-numeriques .solution-text h4.h5 {
  font-size: 2rem !important;      /* taille “paragraphe” */
  line-height: 1.6;                 /* confortable pour un titre plus petit */
  font-weight: 700;                 /* on garde un poids de titre */
}

body.page-id-4240 #solutions-numeriques .solution-text p,
body.page-id-4240 #solutions-numeriques .solution-text .feature-desc {
  font-size: 1.5rem !important;
    line-height: 1.5;
    text-align: center !important;
    padding: 10px;
}

.parent-pageid-42 .home-content{padding-left:0;}
.parent-pageid-42 .home-content__main{padding-left:0;}
.parent-pageid-42 h2.accueil{padding-left:0;padding-top:0;}



.item-folio__project-link{z-index:0;}

.ti-profile-img{display:none !important;}


body.page-id-4114 .col-block.item-solutions-numeriques:hover{background: #0c202d !important;}
  
#form_success{
	background-color: #0c202d;
    padding: 20px 20px 10px 20px;
}
#form_success p{
	    color: #fff !important;
    text-align: center !important;
    font-size: 3rem;
    margin-bottom: 10px;
}



/* styles pour catalogue maquettes */

.content-modal-catalogue {position: fixed;top: 0;right: 0;width: 100%;/* max-width: 700px; */height: 100%;background: rgba(255,255,255,1);z-index: 9999;transform: translateX(100%);transition: transform 0.4s ease-in-out, opacity 0.4s ease-in-out;opacity: 0;display: block; /* nécessaire pour .fadeIn() jQuery */}
.content-modal-catalogue.active, .content-modal-catalogue.show { transform: translateX(0%); opacity: 1; }
/* Conteneur principal de la modale */
.content-modal-catalogue {position: fixed;top: 0;right: 0;/* width: 100% !important; *//* left: 0; */height: 100vh;background: #fff;z-index: 9999;transform: translateX(100%);transition: transform 0.4s ease-in-out, opacity 0.4s ease-in-out;opacity: 0;overflow-y: auto;padding: 2rem;box-shadow: -4px 0 15px rgba(0,0,0,0.15);}
/* Affichage actif de la modale */
.content-modal-catalogue { background: #075455 !important; color: #fff !important;padding: 10px; }
.content-modal-catalogue.show { transform: translateX(0); opacity: 1; background: #0c202d !important; color: #fff !important; }
/* Fermeture */
.content-modal-catalogue-close-switch { position: absolute; top: 1rem; right: 1rem; font-size: 2rem; font-weight: bold; color: #000; cursor: pointer; z-index: 10001; }
/* Animation fade-in sur le contenu interne */
.content-modal-catalogue .fade-content { opacity: 0; transform: translateY(20px); transition: opacity 0.6s ease, transform 0.6s ease; transition-delay: 0.2s; }
/* Ajout automatique lors de l’ouverture */
.content-modal-catalogue.show .fade-content { opacity: 1; transform: translateY(0); }
body.modal-open { overflow: hidden; position: fixed; width: 100%; /*filter: blur(2px);*/ }
.zoom-on-click { transform: scale(1.05); transition: transform 0.4s ease; z-index: 999; position: relative; }
.content-modal-catalogue-close-switch { position: fixed; width: 50px; height: 50px; background: #333; color: #fff; text-align: center; border-radius: 50%; font-size: 28px; line-height: 28px; top: 30px; cursor: pointer; -webkit-transform: rotate(45deg); -ms-transform: rotate(45deg); transform: rotate(45deg); display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; right: 30px; }

/* Slider */
.slick-slider
{
    position: relative;

    display: block;
    box-sizing: border-box;

    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;

    -webkit-touch-callout: none;
    -khtml-user-select: none;
    -ms-touch-action: pan-y;
        touch-action: pan-y;
    -webkit-tap-highlight-color: transparent;
}

.slick-list
{
    position: relative;

    display: block;
    overflow: hidden;

    margin: 0;
    padding: 0;
}
.slick-list:focus
{
    outline: none;
}
.slick-list.dragging
{
    cursor: pointer;
    cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list
{
    -webkit-transform: translate3d(0, 0, 0);
       -moz-transform: translate3d(0, 0, 0);
        -ms-transform: translate3d(0, 0, 0);
         -o-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
}

.slick-track
{
    position: relative;
    top: 0;
    left: 0;

    display: block;
    margin-left: auto;
    margin-right: auto;
}
.slick-track:before,
.slick-track:after
{
    display: table;

    content: '';
}
.slick-track:after
{
    clear: both;
}
.slick-loading .slick-track
{
    visibility: hidden;
}

.slick-slide
{
    display: none;
    float: left;

    height: 100%;
    min-height: 1px;
}
[dir='rtl'] .slick-slide
{
    float: right;
}
.slick-slide img
{
    display: block;
}
.slick-slide.slick-loading img
{
    display: none;
}
.slick-slide.dragging img
{
    pointer-events: none;
}
.slick-initialized .slick-slide
{
    display: block;
}
.slick-loading .slick-slide
{
    visibility: hidden;
}
.slick-vertical .slick-slide
{
    display: block;

    height: auto;

    border: 1px solid transparent;
}
.slick-arrow.slick-hidden {
    display: none;
}









.clients-testimonial {
    background: #fff;
}

.clients-testimonial .clients-speech-active .slick-list {
    overflow: visible
}

.clients-testimonial .clients-speech-active .single-clients-speech.slick-slide.slick-current.slick-active {
    transform: scale(1);
    -webkit-transition: all .4s ease-out 0s;
    -moz-transition: all .4s ease-out 0s;
    -ms-transition: all .4s ease-out 0s;
    -o-transition: all .4s ease-out 0s;
    transition: all .4s ease-out 0s
}

.clients-testimonial .clients-speech-active .single-clients-speech.slick-slide {
    transform: scale(0.8);
    -webkit-transition: all .4s ease-out 0s;
    -moz-transition: all .4s ease-out 0s;
    -ms-transition: all .4s ease-out 0s;
    -o-transition: all .4s ease-out 0s;
    transition: all .4s ease-out 0s
}

.clients-testimonial .clients-speech-active .single-clients-speech.slick-slide {
    transform: scale(0.8);
    -webkit-transition: all .4s ease-out 0s;
    -moz-transition: all .4s ease-out 0s;
    -ms-transition: all .4s ease-out 0s;
    -o-transition: all .4s ease-out 0s;
    transition: all .4s ease-out 0s
}

.clients-testimonial .clients-speech-active button.slick-arrow {
    position: absolute;
    top: 50%;
    left: 0px;
    transform: translateY(-50%);
    background: none;
    border: 0;
    padding: 0;
    z-index: 2;
    cursor: pointer;
    background: none;
    width: 116px;
    height: 68px;
    background: #fff;
    -webkit-transition: all .4s ease-out 0s;
    -moz-transition: all .4s ease-out 0s;
    -ms-transition: all .4s ease-out 0s;
    -o-transition: all .4s ease-out 0s;
    transition: all .4s ease-out 0s
}


@media screen and (min-width: 1024px){
    .clients-testimonial .clients-speech-active .slick-list {
        overflow: visible;
        width: 600px;
    }
}







@media only screen and (min-width: 768px) and (max-width: 991px) {
    .clients-testimonial .clients-speech-active button.slick-arrow {
        width:70px;
        height: 50px
    }
}

@media only screen and (min-width: 576px) and (max-width: 767px) {
    .clients-testimonial .clients-speech-active button.slick-arrow {
        width:80px;
        height: 50px
    }
}

@media (max-width: 575px) {
    .clients-testimonial .clients-speech-active button.slick-arrow {
        width:60px;
        height: 40px
    }
}

.clients-testimonial .clients-speech-active button.slick-arrow i {
    font-size: 30px;
    color: #c6a16e
}

@media (max-width: 575px) {
    .clients-testimonial .clients-speech-active button.slick-arrow i {
        font-size:19px
    }
}

@media only screen and (min-width: 576px) and (max-width: 767px) {
    .clients-testimonial .clients-speech-active button.slick-arrow i {
        font-size:19px
    }
}

.clients-testimonial .clients-speech-active button.slick-arrow:hover {
    background: #075455;
}

.clients-testimonial .clients-speech-active button.slick-next {
    left: auto;
    right: 0px
}

.clients-testimonial .clients-speech-active.dot-style .slick-dots {
    position: absolute;
    right: 0;
    bottom: -60px
}

.clients-testimonial .clients-speech-active.dot-style .slick-dots li {
    display: inline-block;
    margin: 0 8px
}

.clients-testimonial .clients-speech-active.dot-style .slick-dots button {
    text-indent: -100000px;
    height: 14px;
    width: 14px;
    line-height: 14px;
    border: 0;
    padding: 0;
    cursor: pointer;
    border-radius: 50%;
    background: rgba(233,227,217,0.2)
}

.clients-testimonial .clients-speech-active.dot-style .slick-dots .slick-active button {
    background: #fff !important
}

.clients-testimonial .clients-speech-active .single-clients-speech img {
    width: 100%
}




