@charset "UTF-8";

html {
    font-family: sans-serif;
    line-height: 1.15;
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
}
article,
aside,
footer,
header,
nav,
section {
    display: block;
}
h1 {
    font-size: 2em;
    margin: 0.67em 0;
}
figcaption,
figure {
    display: block;
}
figure {
    margin: 1em 40px;
}
hr {
    box-sizing: content-box;
    overflow: visible;
}
main {
    display: block;
}
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;
    font-weight: bolder;
}
code,
kbd,
samp {
    font-family: monospace, monospace;
    font-size: 1em;
}
dfn {
    font-style: italic;
}
mark {
    background-color: #ff0;
    color: #000;
}
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 {
    overflow: visible;
}
button,
select {
    text-transform: none;
}
[type="reset"],
[type="submit"],
button,
html [type="button"] {
    -webkit-appearance: button;
}
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner,
button::-moz-focus-inner {
    border-style: none;
    padding: 0;
}
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring,
button:-moz-focusring {
    outline: 1px dotted ButtonText;
}
input {
    overflow: visible;
}
[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;
    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;
}
fieldset {
    border: 1px solid silver;
    margin: 0 2px;
    padding: 0.35em 0.625em 0.75em;
}
legend {
    box-sizing: border-box;
    display: table;
    max-width: 100%;
    padding: 0;
    color: inherit;
    white-space: normal;
}
progress {
    display: inline-block;
    vertical-align: baseline;
}
textarea {
    overflow: auto;
}
details {
    display: block;
}
summary {
    display: list-item;
}
menu {
    display: block;
}
canvas {
    display: inline-block;
}
[hidden],
template {
    display: none;
}
.foundation-mq {
    font-family: "small=0em&medium=40em&large=64.0625em&xlarge=80em&xxlarge=105em";
}
html {
    box-sizing: border-box;
    font-size: 100%;
}
*,
:after,
:before {
    box-sizing: inherit;
}
body {
    margin: 0;
    padding: 0;
    background: #fff;
    font-family: Helvetica Neue, Helvetica, Roboto, Arial, sans-serif;
    font-weight: 400;
    line-height: 1.5;
    color: #000;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
img {
    display: inline-block;
    vertical-align: middle;
    max-width: 100%;
    height: auto;
    -ms-interpolation-mode: bicubic;
}
textarea {
    height: auto;
    min-height: 50px;
    border-radius: 0;
}
select {
    box-sizing: border-box;
    width: 100%;
    border-radius: 0;
}
.map_canvas embed,
.map_canvas img,
.map_canvas object,
.mqa-display embed,
.mqa-display img,
.mqa-display object {
    max-width: none !important;
}
button {
    padding: 0;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: 0;
    border-radius: 0;
    background: transparent;
    line-height: 1;
    cursor: auto;
}
[data-whatinput="mouse"] button {
    outline: 0;
}
pre {
    overflow: auto;
}
button,
input,
optgroup,
select,
textarea {
    font-family: inherit;
}
.is-visible {
    display: block !important;
}
.is-hidden {
    display: none !important;
}
.grid-container {
    max-width: 75rem;
}
.grid-container,
.grid-container.fluid {
    padding-right: 0.9375rem;
    padding-left: 0.9375rem;
    margin: 0 auto;
}
.grid-container.fluid {
    max-width: 100%;
}
.grid-container.full {
    padding-right: 0;
    padding-left: 0;
    max-width: 100%;
    margin: 0 auto;
}
.grid-x {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
}
.cell {
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    min-height: 0;
    min-width: 0;
    width: 100%;
}
.cell.auto {
    -ms-flex: 1 1 0px;
    flex: 1 1 0px;
}
.cell.shrink {
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
}
.grid-x > .auto,
.grid-x > .shrink {
    width: auto;
}
.grid-x > .small-1,
.grid-x > .small-2,
.grid-x > .small-3,
.grid-x > .small-4,
.grid-x > .small-5,
.grid-x > .small-6,
.grid-x > .small-7,
.grid-x > .small-8,
.grid-x > .small-9,
.grid-x > .small-10,
.grid-x > .small-11,
.grid-x > .small-12,
.grid-x > .small-full,
.grid-x > .small-shrink {
    -ms-flex-preferred-size: auto;
    flex-basis: auto;
}
@media print, screen and (min-width: 40em) {
    .grid-x > .medium-1,
    .grid-x > .medium-2,
    .grid-x > .medium-3,
    .grid-x > .medium-4,
    .grid-x > .medium-5,
    .grid-x > .medium-6,
    .grid-x > .medium-7,
    .grid-x > .medium-8,
    .grid-x > .medium-9,
    .grid-x > .medium-10,
    .grid-x > .medium-11,
    .grid-x > .medium-12,
    .grid-x > .medium-full,
    .grid-x > .medium-shrink {
        -ms-flex-preferred-size: auto;
        flex-basis: auto;
    }
}
@media print, screen and (min-width: 64.0625em) {
    .grid-x > .large-1,
    .grid-x > .large-2,
    .grid-x > .large-3,
    .grid-x > .large-4,
    .grid-x > .large-5,
    .grid-x > .large-6,
    .grid-x > .large-7,
    .grid-x > .large-8,
    .grid-x > .large-9,
    .grid-x > .large-10,
    .grid-x > .large-11,
    .grid-x > .large-12,
    .grid-x > .large-full,
    .grid-x > .large-shrink {
        -ms-flex-preferred-size: auto;
        flex-basis: auto;
    }
}
@media screen and (min-width: 80em) {
    .grid-x > .xlarge-1,
    .grid-x > .xlarge-2,
    .grid-x > .xlarge-3,
    .grid-x > .xlarge-4,
    .grid-x > .xlarge-5,
    .grid-x > .xlarge-6,
    .grid-x > .xlarge-7,
    .grid-x > .xlarge-8,
    .grid-x > .xlarge-9,
    .grid-x > .xlarge-10,
    .grid-x > .xlarge-11,
    .grid-x > .xlarge-12,
    .grid-x > .xlarge-full,
    .grid-x > .xlarge-shrink {
        -ms-flex-preferred-size: auto;
        flex-basis: auto;
    }
}
@media screen and (min-width: 105em) {
    .grid-x > .xxlarge-1,
    .grid-x > .xxlarge-2,
    .grid-x > .xxlarge-3,
    .grid-x > .xxlarge-4,
    .grid-x > .xxlarge-5,
    .grid-x > .xxlarge-6,
    .grid-x > .xxlarge-7,
    .grid-x > .xxlarge-8,
    .grid-x > .xxlarge-9,
    .grid-x > .xxlarge-10,
    .grid-x > .xxlarge-11,
    .grid-x > .xxlarge-12,
    .grid-x > .xxlarge-full,
    .grid-x > .xxlarge-shrink {
        -ms-flex-preferred-size: auto;
        flex-basis: auto;
    }
}
.grid-x > .small-1 {
    width: 8.33333%;
}
.grid-x > .small-2 {
    width: 16.66667%;
}
.grid-x > .small-3 {
    width: 25%;
}
.grid-x > .small-4 {
    width: 33.33333%;
}
.grid-x > .small-5 {
    width: 41.66667%;
}
.grid-x > .small-6 {
    width: 50%;
}
.grid-x > .small-7 {
    width: 58.33333%;
}
.grid-x > .small-8 {
    width: 66.66667%;
}
.grid-x > .small-9 {
    width: 75%;
}
.grid-x > .small-10 {
    width: 83.33333%;
}
.grid-x > .small-11 {
    width: 91.66667%;
}
.grid-x > .small-12 {
    width: 100%;
}
@media print, screen and (min-width: 40em) {
    .grid-x > .medium-auto {
        -ms-flex: 1 1 0px;
        flex: 1 1 0px;
        width: auto;
    }
    .grid-x > .medium-shrink {
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: auto;
    }
    .grid-x > .medium-1 {
        width: 8.33333%;
    }
    .grid-x > .medium-2 {
        width: 16.66667%;
    }
    .grid-x > .medium-3 {
        width: 25%;
    }
    .grid-x > .medium-4 {
        width: 33.33333%;
    }
    .grid-x > .medium-5 {
        width: 41.66667%;
    }
    .grid-x > .medium-6 {
        width: 50%;
    }
    .grid-x > .medium-7 {
        width: 58.33333%;
    }
    .grid-x > .medium-8 {
        width: 66.66667%;
    }
    .grid-x > .medium-9 {
        width: 75%;
    }
    .grid-x > .medium-10 {
        width: 83.33333%;
    }
    .grid-x > .medium-11 {
        width: 91.66667%;
    }
    .grid-x > .medium-12 {
        width: 100%;
    }
}
@media print, screen and (min-width: 64.0625em) {
    .grid-x > .large-auto {
        -ms-flex: 1 1 0px;
        flex: 1 1 0px;
        width: auto;
    }
    .grid-x > .large-shrink {
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: auto;
    }
    .grid-x > .large-1 {
        width: 8.33333%;
    }
    .grid-x > .large-2 {
        width: 16.66667%;
    }
    .grid-x > .large-3 {
        width: 25%;
    }
    .grid-x > .large-4 {
        width: 33.33333%;
    }
    .grid-x > .large-5 {
        width: 41.66667%;
    }
    .grid-x > .large-6 {
        width: 50%;
    }
    .grid-x > .large-7 {
        width: 58.33333%;
    }
    .grid-x > .large-8 {
        width: 66.66667%;
    }
    .grid-x > .large-9 {
        width: 75%;
    }
    .grid-x > .large-10 {
        width: 83.33333%;
    }
    .grid-x > .large-11 {
        width: 91.66667%;
    }
    .grid-x > .large-12 {
        width: 100%;
    }
}
@media screen and (min-width: 80em) {
    .grid-x > .xlarge-auto {
        -ms-flex: 1 1 0px;
        flex: 1 1 0px;
        width: auto;
    }
    .grid-x > .xlarge-shrink {
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: auto;
    }
    .grid-x > .xlarge-1 {
        width: 8.33333%;
    }
    .grid-x > .xlarge-2 {
        width: 16.66667%;
    }
    .grid-x > .xlarge-3 {
        width: 25%;
    }
    .grid-x > .xlarge-4 {
        width: 33.33333%;
    }
    .grid-x > .xlarge-5 {
        width: 41.66667%;
    }
    .grid-x > .xlarge-6 {
        width: 50%;
    }
    .grid-x > .xlarge-7 {
        width: 58.33333%;
    }
    .grid-x > .xlarge-8 {
        width: 66.66667%;
    }
    .grid-x > .xlarge-9 {
        width: 75%;
    }
    .grid-x > .xlarge-10 {
        width: 83.33333%;
    }
    .grid-x > .xlarge-11 {
        width: 91.66667%;
    }
    .grid-x > .xlarge-12 {
        width: 100%;
    }
}
@media screen and (min-width: 105em) {
    .grid-x > .xxlarge-auto {
        -ms-flex: 1 1 0px;
        flex: 1 1 0px;
        width: auto;
    }
    .grid-x > .xxlarge-shrink {
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: auto;
    }
    .grid-x > .xxlarge-1 {
        width: 8.33333%;
    }
    .grid-x > .xxlarge-2 {
        width: 16.66667%;
    }
    .grid-x > .xxlarge-3 {
        width: 25%;
    }
    .grid-x > .xxlarge-4 {
        width: 33.33333%;
    }
    .grid-x > .xxlarge-5 {
        width: 41.66667%;
    }
    .grid-x > .xxlarge-6 {
        width: 50%;
    }
    .grid-x > .xxlarge-7 {
        width: 58.33333%;
    }
    .grid-x > .xxlarge-8 {
        width: 66.66667%;
    }
    .grid-x > .xxlarge-9 {
        width: 75%;
    }
    .grid-x > .xxlarge-10 {
        width: 83.33333%;
    }
    .grid-x > .xxlarge-11 {
        width: 91.66667%;
    }
    .grid-x > .xxlarge-12 {
        width: 100%;
    }
}
.grid-margin-x:not(.grid-x) > .cell {
    width: auto;
}
.grid-margin-y:not(.grid-y) > .cell {
    height: auto;
}
.grid-margin-x {
    margin-left: -0.625rem;
    margin-right: -0.625rem;
}
@media print, screen and (min-width: 40em) {
    .grid-margin-x {
        margin-left: -0.9375rem;
        margin-right: -0.9375rem;
    }
}
@media print, screen and (min-width: 64.0625em) {
    .grid-margin-x {
        margin-left: -1.25rem;
        margin-right: -1.25rem;
    }
}
.grid-margin-x > .cell {
    width: calc(100% - 1.25rem);
    margin-left: 0.625rem;
    margin-right: 0.625rem;
}
@media print, screen and (min-width: 40em) {
    .grid-margin-x > .cell {
        width: calc(100% - 1.875rem);
        margin-left: 0.9375rem;
        margin-right: 0.9375rem;
    }
}
@media print, screen and (min-width: 64.0625em) {
    .grid-margin-x > .cell {
        width: calc(100% - 2.5rem);
        margin-left: 1.25rem;
        margin-right: 1.25rem;
    }
}
.grid-margin-x > .auto,
.grid-margin-x > .shrink {
    width: auto;
}
.grid-margin-x > .small-1 {
    width: calc(8.33333% - 1.25rem);
}
.grid-margin-x > .small-2 {
    width: calc(16.66667% - 1.25rem);
}
.grid-margin-x > .small-3 {
    width: calc(25% - 1.25rem);
}
.grid-margin-x > .small-4 {
    width: calc(33.33333% - 1.25rem);
}
.grid-margin-x > .small-5 {
    width: calc(41.66667% - 1.25rem);
}
.grid-margin-x > .small-6 {
    width: calc(50% - 1.25rem);
}
.grid-margin-x > .small-7 {
    width: calc(58.33333% - 1.25rem);
}
.grid-margin-x > .small-8 {
    width: calc(66.66667% - 1.25rem);
}
.grid-margin-x > .small-9 {
    width: calc(75% - 1.25rem);
}
.grid-margin-x > .small-10 {
    width: calc(83.33333% - 1.25rem);
}
.grid-margin-x > .small-11 {
    width: calc(91.66667% - 1.25rem);
}
.grid-margin-x > .small-12 {
    width: calc(100% - 1.25rem);
}
@media print, screen and (min-width: 40em) {
    .grid-margin-x > .auto,
    .grid-margin-x > .shrink {
        width: auto;
    }
    .grid-margin-x > .small-1 {
        width: calc(8.33333% - 1.875rem);
    }
    .grid-margin-x > .small-2 {
        width: calc(16.66667% - 1.875rem);
    }
    .grid-margin-x > .small-3 {
        width: calc(25% - 1.875rem);
    }
    .grid-margin-x > .small-4 {
        width: calc(33.33333% - 1.875rem);
    }
    .grid-margin-x > .small-5 {
        width: calc(41.66667% - 1.875rem);
    }
    .grid-margin-x > .small-6 {
        width: calc(50% - 1.875rem);
    }
    .grid-margin-x > .small-7 {
        width: calc(58.33333% - 1.875rem);
    }
    .grid-margin-x > .small-8 {
        width: calc(66.66667% - 1.875rem);
    }
    .grid-margin-x > .small-9 {
        width: calc(75% - 1.875rem);
    }
    .grid-margin-x > .small-10 {
        width: calc(83.33333% - 1.875rem);
    }
    .grid-margin-x > .small-11 {
        width: calc(91.66667% - 1.875rem);
    }
    .grid-margin-x > .small-12 {
        width: calc(100% - 1.875rem);
    }
    .grid-margin-x > .medium-auto,
    .grid-margin-x > .medium-shrink {
        width: auto;
    }
    .grid-margin-x > .medium-1 {
        width: calc(8.33333% - 1.875rem);
    }
    .grid-margin-x > .medium-2 {
        width: calc(16.66667% - 1.875rem);
    }
    .grid-margin-x > .medium-3 {
        width: calc(25% - 1.875rem);
    }
    .grid-margin-x > .medium-4 {
        width: calc(33.33333% - 1.875rem);
    }
    .grid-margin-x > .medium-5 {
        width: calc(41.66667% - 1.875rem);
    }
    .grid-margin-x > .medium-6 {
        width: calc(50% - 1.875rem);
    }
    .grid-margin-x > .medium-7 {
        width: calc(58.33333% - 1.875rem);
    }
    .grid-margin-x > .medium-8 {
        width: calc(66.66667% - 1.875rem);
    }
    .grid-margin-x > .medium-9 {
        width: calc(75% - 1.875rem);
    }
    .grid-margin-x > .medium-10 {
        width: calc(83.33333% - 1.875rem);
    }
    .grid-margin-x > .medium-11 {
        width: calc(91.66667% - 1.875rem);
    }
    .grid-margin-x > .medium-12 {
        width: calc(100% - 1.875rem);
    }
}
@media print, screen and (min-width: 64.0625em) {
    .grid-margin-x > .auto,
    .grid-margin-x > .shrink {
        width: auto;
    }
    .grid-margin-x > .small-1 {
        width: calc(8.33333% - 2.5rem);
    }
    .grid-margin-x > .small-2 {
        width: calc(16.66667% - 2.5rem);
    }
    .grid-margin-x > .small-3 {
        width: calc(25% - 2.5rem);
    }
    .grid-margin-x > .small-4 {
        width: calc(33.33333% - 2.5rem);
    }
    .grid-margin-x > .small-5 {
        width: calc(41.66667% - 2.5rem);
    }
    .grid-margin-x > .small-6 {
        width: calc(50% - 2.5rem);
    }
    .grid-margin-x > .small-7 {
        width: calc(58.33333% - 2.5rem);
    }
    .grid-margin-x > .small-8 {
        width: calc(66.66667% - 2.5rem);
    }
    .grid-margin-x > .small-9 {
        width: calc(75% - 2.5rem);
    }
    .grid-margin-x > .small-10 {
        width: calc(83.33333% - 2.5rem);
    }
    .grid-margin-x > .small-11 {
        width: calc(91.66667% - 2.5rem);
    }
    .grid-margin-x > .small-12 {
        width: calc(100% - 2.5rem);
    }
    .grid-margin-x > .medium-auto,
    .grid-margin-x > .medium-shrink {
        width: auto;
    }
    .grid-margin-x > .medium-1 {
        width: calc(8.33333% - 2.5rem);
    }
    .grid-margin-x > .medium-2 {
        width: calc(16.66667% - 2.5rem);
    }
    .grid-margin-x > .medium-3 {
        width: calc(25% - 2.5rem);
    }
    .grid-margin-x > .medium-4 {
        width: calc(33.33333% - 2.5rem);
    }
    .grid-margin-x > .medium-5 {
        width: calc(41.66667% - 2.5rem);
    }
    .grid-margin-x > .medium-6 {
        width: calc(50% - 2.5rem);
    }
    .grid-margin-x > .medium-7 {
        width: calc(58.33333% - 2.5rem);
    }
    .grid-margin-x > .medium-8 {
        width: calc(66.66667% - 2.5rem);
    }
    .grid-margin-x > .medium-9 {
        width: calc(75% - 2.5rem);
    }
    .grid-margin-x > .medium-10 {
        width: calc(83.33333% - 2.5rem);
    }
    .grid-margin-x > .medium-11 {
        width: calc(91.66667% - 2.5rem);
    }
    .grid-margin-x > .medium-12 {
        width: calc(100% - 2.5rem);
    }
    .grid-margin-x > .large-auto,
    .grid-margin-x > .large-shrink {
        width: auto;
    }
    .grid-margin-x > .large-1 {
        width: calc(8.33333% - 2.5rem);
    }
    .grid-margin-x > .large-2 {
        width: calc(16.66667% - 2.5rem);
    }
    .grid-margin-x > .large-3 {
        width: calc(25% - 2.5rem);
    }
    .grid-margin-x > .large-4 {
        width: calc(33.33333% - 2.5rem);
    }
    .grid-margin-x > .large-5 {
        width: calc(41.66667% - 2.5rem);
    }
    .grid-margin-x > .large-6 {
        width: calc(50% - 2.5rem);
    }
    .grid-margin-x > .large-7 {
        width: calc(58.33333% - 2.5rem);
    }
    .grid-margin-x > .large-8 {
        width: calc(66.66667% - 2.5rem);
    }
    .grid-margin-x > .large-9 {
        width: calc(75% - 2.5rem);
    }
    .grid-margin-x > .large-10 {
        width: calc(83.33333% - 2.5rem);
    }
    .grid-margin-x > .large-11 {
        width: calc(91.66667% - 2.5rem);
    }
    .grid-margin-x > .large-12 {
        width: calc(100% - 2.5rem);
    }
}
@media screen and (min-width: 80em) {
    .grid-margin-x > .xlarge-auto,
    .grid-margin-x > .xlarge-shrink {
        width: auto;
    }
    .grid-margin-x > .xlarge-1 {
        width: calc(8.33333% - 2.5rem);
    }
    .grid-margin-x > .xlarge-2 {
        width: calc(16.66667% - 2.5rem);
    }
    .grid-margin-x > .xlarge-3 {
        width: calc(25% - 2.5rem);
    }
    .grid-margin-x > .xlarge-4 {
        width: calc(33.33333% - 2.5rem);
    }
    .grid-margin-x > .xlarge-5 {
        width: calc(41.66667% - 2.5rem);
    }
    .grid-margin-x > .xlarge-6 {
        width: calc(50% - 2.5rem);
    }
    .grid-margin-x > .xlarge-7 {
        width: calc(58.33333% - 2.5rem);
    }
    .grid-margin-x > .xlarge-8 {
        width: calc(66.66667% - 2.5rem);
    }
    .grid-margin-x > .xlarge-9 {
        width: calc(75% - 2.5rem);
    }
    .grid-margin-x > .xlarge-10 {
        width: calc(83.33333% - 2.5rem);
    }
    .grid-margin-x > .xlarge-11 {
        width: calc(91.66667% - 2.5rem);
    }
    .grid-margin-x > .xlarge-12 {
        width: calc(100% - 2.5rem);
    }
}
@media screen and (min-width: 105em) {
    .grid-margin-x > .xxlarge-auto,
    .grid-margin-x > .xxlarge-shrink {
        width: auto;
    }
    .grid-margin-x > .xxlarge-1 {
        width: calc(8.33333% - 2.5rem);
    }
    .grid-margin-x > .xxlarge-2 {
        width: calc(16.66667% - 2.5rem);
    }
    .grid-margin-x > .xxlarge-3 {
        width: calc(25% - 2.5rem);
    }
    .grid-margin-x > .xxlarge-4 {
        width: calc(33.33333% - 2.5rem);
    }
    .grid-margin-x > .xxlarge-5 {
        width: calc(41.66667% - 2.5rem);
    }
    .grid-margin-x > .xxlarge-6 {
        width: calc(50% - 2.5rem);
    }
    .grid-margin-x > .xxlarge-7 {
        width: calc(58.33333% - 2.5rem);
    }
    .grid-margin-x > .xxlarge-8 {
        width: calc(66.66667% - 2.5rem);
    }
    .grid-margin-x > .xxlarge-9 {
        width: calc(75% - 2.5rem);
    }
    .grid-margin-x > .xxlarge-10 {
        width: calc(83.33333% - 2.5rem);
    }
    .grid-margin-x > .xxlarge-11 {
        width: calc(91.66667% - 2.5rem);
    }
    .grid-margin-x > .xxlarge-12 {
        width: calc(100% - 2.5rem);
    }
}
.grid-padding-x .grid-padding-x {
    margin-right: -0.625rem;
    margin-left: -0.625rem;
}
@media print, screen and (min-width: 40em) {
    .grid-padding-x .grid-padding-x {
        margin-right: -0.9375rem;
        margin-left: -0.9375rem;
    }
}
@media print, screen and (min-width: 64.0625em) {
    .grid-padding-x .grid-padding-x {
        margin-right: -1.25rem;
        margin-left: -1.25rem;
    }
}
.grid-container:not(.full) > .grid-padding-x {
    margin-right: -0.625rem;
    margin-left: -0.625rem;
}
@media print, screen and (min-width: 40em) {
    .grid-container:not(.full) > .grid-padding-x {
        margin-right: -0.9375rem;
        margin-left: -0.9375rem;
    }
}
@media print, screen and (min-width: 64.0625em) {
    .grid-container:not(.full) > .grid-padding-x {
        margin-right: -1.25rem;
        margin-left: -1.25rem;
    }
}
.grid-padding-x > .cell {
    padding-right: 0.625rem;
    padding-left: 0.625rem;
}
@media print, screen and (min-width: 40em) {
    .grid-padding-x > .cell {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem;
    }
}
@media print, screen and (min-width: 64.0625em) {
    .grid-padding-x > .cell {
        padding-right: 1.25rem;
        padding-left: 1.25rem;
    }
}
.small-up-1 > .cell {
    width: 100%;
}
.small-up-2 > .cell {
    width: 50%;
}
.small-up-3 > .cell {
    width: 33.33333%;
}
.small-up-4 > .cell {
    width: 25%;
}
.small-up-5 > .cell {
    width: 20%;
}
.small-up-6 > .cell {
    width: 16.66667%;
}
.small-up-7 > .cell {
    width: 14.28571%;
}
.small-up-8 > .cell {
    width: 12.5%;
}
@media print, screen and (min-width: 40em) {
    .medium-up-1 > .cell {
        width: 100%;
    }
    .medium-up-2 > .cell {
        width: 50%;
    }
    .medium-up-3 > .cell {
        width: 33.33333%;
    }
    .medium-up-4 > .cell {
        width: 25%;
    }
    .medium-up-5 > .cell {
        width: 20%;
    }
    .medium-up-6 > .cell {
        width: 16.66667%;
    }
    .medium-up-7 > .cell {
        width: 14.28571%;
    }
    .medium-up-8 > .cell {
        width: 12.5%;
    }
}
@media print, screen and (min-width: 64.0625em) {
    .large-up-1 > .cell {
        width: 100%;
    }
    .large-up-2 > .cell {
        width: 50%;
    }
    .large-up-3 > .cell {
        width: 33.33333%;
    }
    .large-up-4 > .cell {
        width: 25%;
    }
    .large-up-5 > .cell {
        width: 20%;
    }
    .large-up-6 > .cell {
        width: 16.66667%;
    }
    .large-up-7 > .cell {
        width: 14.28571%;
    }
    .large-up-8 > .cell {
        width: 12.5%;
    }
}
@media screen and (min-width: 80em) {
    .xlarge-up-1 > .cell {
        width: 100%;
    }
    .xlarge-up-2 > .cell {
        width: 50%;
    }
    .xlarge-up-3 > .cell {
        width: 33.33333%;
    }
    .xlarge-up-4 > .cell {
        width: 25%;
    }
    .xlarge-up-5 > .cell {
        width: 20%;
    }
    .xlarge-up-6 > .cell {
        width: 16.66667%;
    }
    .xlarge-up-7 > .cell {
        width: 14.28571%;
    }
    .xlarge-up-8 > .cell {
        width: 12.5%;
    }
}
@media screen and (min-width: 105em) {
    .xxlarge-up-1 > .cell {
        width: 100%;
    }
    .xxlarge-up-2 > .cell {
        width: 50%;
    }
    .xxlarge-up-3 > .cell {
        width: 33.33333%;
    }
    .xxlarge-up-4 > .cell {
        width: 25%;
    }
    .xxlarge-up-5 > .cell {
        width: 20%;
    }
    .xxlarge-up-6 > .cell {
        width: 16.66667%;
    }
    .xxlarge-up-7 > .cell {
        width: 14.28571%;
    }
    .xxlarge-up-8 > .cell {
        width: 12.5%;
    }
}
.grid-margin-x.small-up-1 > .cell {
    width: calc(100% - 1.25rem);
}
.grid-margin-x.small-up-2 > .cell {
    width: calc(50% - 1.25rem);
}
.grid-margin-x.small-up-3 > .cell {
    width: calc(33.33333% - 1.25rem);
}
.grid-margin-x.small-up-4 > .cell {
    width: calc(25% - 1.25rem);
}
.grid-margin-x.small-up-5 > .cell {
    width: calc(20% - 1.25rem);
}
.grid-margin-x.small-up-6 > .cell {
    width: calc(16.66667% - 1.25rem);
}
.grid-margin-x.small-up-7 > .cell {
    width: calc(14.28571% - 1.25rem);
}
.grid-margin-x.small-up-8 > .cell {
    width: calc(12.5% - 1.25rem);
}
@media print, screen and (min-width: 40em) {
    .grid-margin-x.small-up-1 > .cell {
        width: calc(100% - 1.25rem);
    }
    .grid-margin-x.small-up-2 > .cell {
        width: calc(50% - 1.25rem);
    }
    .grid-margin-x.small-up-3 > .cell {
        width: calc(33.33333% - 1.25rem);
    }
    .grid-margin-x.small-up-4 > .cell {
        width: calc(25% - 1.25rem);
    }
    .grid-margin-x.small-up-5 > .cell {
        width: calc(20% - 1.25rem);
    }
    .grid-margin-x.small-up-6 > .cell {
        width: calc(16.66667% - 1.25rem);
    }
    .grid-margin-x.small-up-7 > .cell {
        width: calc(14.28571% - 1.25rem);
    }
    .grid-margin-x.small-up-8 > .cell {
        width: calc(12.5% - 1.25rem);
    }
    .grid-margin-x.medium-up-1 > .cell {
        width: calc(100% - 1.875rem);
    }
    .grid-margin-x.medium-up-2 > .cell {
        width: calc(50% - 1.875rem);
    }
    .grid-margin-x.medium-up-3 > .cell {
        width: calc(33.33333% - 1.875rem);
    }
    .grid-margin-x.medium-up-4 > .cell {
        width: calc(25% - 1.875rem);
    }
    .grid-margin-x.medium-up-5 > .cell {
        width: calc(20% - 1.875rem);
    }
    .grid-margin-x.medium-up-6 > .cell {
        width: calc(16.66667% - 1.875rem);
    }
    .grid-margin-x.medium-up-7 > .cell {
        width: calc(14.28571% - 1.875rem);
    }
    .grid-margin-x.medium-up-8 > .cell {
        width: calc(12.5% - 1.875rem);
    }
}
@media print, screen and (min-width: 64.0625em) {
    .grid-margin-x.small-up-1 > .cell {
        width: calc(100% - 1.25rem);
    }
    .grid-margin-x.medium-up-1 > .cell {
        width: calc(100% - 1.875rem);
    }
    .grid-margin-x.small-up-2 > .cell {
        width: calc(50% - 1.25rem);
    }
    .grid-margin-x.medium-up-2 > .cell {
        width: calc(50% - 1.875rem);
    }
    .grid-margin-x.small-up-3 > .cell {
        width: calc(33.33333% - 1.25rem);
    }
    .grid-margin-x.medium-up-3 > .cell {
        width: calc(33.33333% - 1.875rem);
    }
    .grid-margin-x.small-up-4 > .cell {
        width: calc(25% - 1.25rem);
    }
    .grid-margin-x.medium-up-4 > .cell {
        width: calc(25% - 1.875rem);
    }
    .grid-margin-x.small-up-5 > .cell {
        width: calc(20% - 1.25rem);
    }
    .grid-margin-x.medium-up-5 > .cell {
        width: calc(20% - 1.875rem);
    }
    .grid-margin-x.small-up-6 > .cell {
        width: calc(16.66667% - 1.25rem);
    }
    .grid-margin-x.medium-up-6 > .cell {
        width: calc(16.66667% - 1.875rem);
    }
    .grid-margin-x.small-up-7 > .cell {
        width: calc(14.28571% - 1.25rem);
    }
    .grid-margin-x.medium-up-7 > .cell {
        width: calc(14.28571% - 1.875rem);
    }
    .grid-margin-x.small-up-8 > .cell {
        width: calc(12.5% - 1.25rem);
    }
    .grid-margin-x.medium-up-8 > .cell {
        width: calc(12.5% - 1.875rem);
    }
    .grid-margin-x.large-up-1 > .cell {
        width: calc(100% - 2.5rem);
    }
    .grid-margin-x.large-up-2 > .cell {
        width: calc(50% - 2.5rem);
    }
    .grid-margin-x.large-up-3 > .cell {
        width: calc(33.33333% - 2.5rem);
    }
    .grid-margin-x.large-up-4 > .cell {
        width: calc(25% - 2.5rem);
    }
    .grid-margin-x.large-up-5 > .cell {
        width: calc(20% - 2.5rem);
    }
    .grid-margin-x.large-up-6 > .cell {
        width: calc(16.66667% - 2.5rem);
    }
    .grid-margin-x.large-up-7 > .cell {
        width: calc(14.28571% - 2.5rem);
    }
    .grid-margin-x.large-up-8 > .cell {
        width: calc(12.5% - 2.5rem);
    }
}
@media screen and (min-width: 80em) {
    .grid-margin-x.xlarge-up-1 > .cell {
        width: calc(100% - 2.5rem);
    }
    .grid-margin-x.xlarge-up-2 > .cell {
        width: calc(50% - 2.5rem);
    }
    .grid-margin-x.xlarge-up-3 > .cell {
        width: calc(33.33333% - 2.5rem);
    }
    .grid-margin-x.xlarge-up-4 > .cell {
        width: calc(25% - 2.5rem);
    }
    .grid-margin-x.xlarge-up-5 > .cell {
        width: calc(20% - 2.5rem);
    }
    .grid-margin-x.xlarge-up-6 > .cell {
        width: calc(16.66667% - 2.5rem);
    }
    .grid-margin-x.xlarge-up-7 > .cell {
        width: calc(14.28571% - 2.5rem);
    }
    .grid-margin-x.xlarge-up-8 > .cell {
        width: calc(12.5% - 2.5rem);
    }
}
@media screen and (min-width: 105em) {
    .grid-margin-x.xxlarge-up-1 > .cell {
        width: calc(100% - 2.5rem);
    }
    .grid-margin-x.xxlarge-up-2 > .cell {
        width: calc(50% - 2.5rem);
    }
    .grid-margin-x.xxlarge-up-3 > .cell {
        width: calc(33.33333% - 2.5rem);
    }
    .grid-margin-x.xxlarge-up-4 > .cell {
        width: calc(25% - 2.5rem);
    }
    .grid-margin-x.xxlarge-up-5 > .cell {
        width: calc(20% - 2.5rem);
    }
    .grid-margin-x.xxlarge-up-6 > .cell {
        width: calc(16.66667% - 2.5rem);
    }
    .grid-margin-x.xxlarge-up-7 > .cell {
        width: calc(14.28571% - 2.5rem);
    }
    .grid-margin-x.xxlarge-up-8 > .cell {
        width: calc(12.5% - 2.5rem);
    }
}
.small-margin-collapse,
.small-margin-collapse > .cell {
    margin-right: 0;
    margin-left: 0;
}
.small-margin-collapse > .small-1 {
    width: 8.33333%;
}
.small-margin-collapse > .small-2 {
    width: 16.66667%;
}
.small-margin-collapse > .small-3 {
    width: 25%;
}
.small-margin-collapse > .small-4 {
    width: 33.33333%;
}
.small-margin-collapse > .small-5 {
    width: 41.66667%;
}
.small-margin-collapse > .small-6 {
    width: 50%;
}
.small-margin-collapse > .small-7 {
    width: 58.33333%;
}
.small-margin-collapse > .small-8 {
    width: 66.66667%;
}
.small-margin-collapse > .small-9 {
    width: 75%;
}
.small-margin-collapse > .small-10 {
    width: 83.33333%;
}
.small-margin-collapse > .small-11 {
    width: 91.66667%;
}
.small-margin-collapse > .small-12 {
    width: 100%;
}
@media print, screen and (min-width: 40em) {
    .small-margin-collapse > .medium-1 {
        width: 8.33333%;
    }
    .small-margin-collapse > .medium-2 {
        width: 16.66667%;
    }
    .small-margin-collapse > .medium-3 {
        width: 25%;
    }
    .small-margin-collapse > .medium-4 {
        width: 33.33333%;
    }
    .small-margin-collapse > .medium-5 {
        width: 41.66667%;
    }
    .small-margin-collapse > .medium-6 {
        width: 50%;
    }
    .small-margin-collapse > .medium-7 {
        width: 58.33333%;
    }
    .small-margin-collapse > .medium-8 {
        width: 66.66667%;
    }
    .small-margin-collapse > .medium-9 {
        width: 75%;
    }
    .small-margin-collapse > .medium-10 {
        width: 83.33333%;
    }
    .small-margin-collapse > .medium-11 {
        width: 91.66667%;
    }
    .small-margin-collapse > .medium-12 {
        width: 100%;
    }
}
@media print, screen and (min-width: 64.0625em) {
    .small-margin-collapse > .large-1 {
        width: 8.33333%;
    }
    .small-margin-collapse > .large-2 {
        width: 16.66667%;
    }
    .small-margin-collapse > .large-3 {
        width: 25%;
    }
    .small-margin-collapse > .large-4 {
        width: 33.33333%;
    }
    .small-margin-collapse > .large-5 {
        width: 41.66667%;
    }
    .small-margin-collapse > .large-6 {
        width: 50%;
    }
    .small-margin-collapse > .large-7 {
        width: 58.33333%;
    }
    .small-margin-collapse > .large-8 {
        width: 66.66667%;
    }
    .small-margin-collapse > .large-9 {
        width: 75%;
    }
    .small-margin-collapse > .large-10 {
        width: 83.33333%;
    }
    .small-margin-collapse > .large-11 {
        width: 91.66667%;
    }
    .small-margin-collapse > .large-12 {
        width: 100%;
    }
}
@media screen and (min-width: 80em) {
    .small-margin-collapse > .xlarge-1 {
        width: 8.33333%;
    }
    .small-margin-collapse > .xlarge-2 {
        width: 16.66667%;
    }
    .small-margin-collapse > .xlarge-3 {
        width: 25%;
    }
    .small-margin-collapse > .xlarge-4 {
        width: 33.33333%;
    }
    .small-margin-collapse > .xlarge-5 {
        width: 41.66667%;
    }
    .small-margin-collapse > .xlarge-6 {
        width: 50%;
    }
    .small-margin-collapse > .xlarge-7 {
        width: 58.33333%;
    }
    .small-margin-collapse > .xlarge-8 {
        width: 66.66667%;
    }
    .small-margin-collapse > .xlarge-9 {
        width: 75%;
    }
    .small-margin-collapse > .xlarge-10 {
        width: 83.33333%;
    }
    .small-margin-collapse > .xlarge-11 {
        width: 91.66667%;
    }
    .small-margin-collapse > .xlarge-12 {
        width: 100%;
    }
}
@media screen and (min-width: 105em) {
    .small-margin-collapse > .xxlarge-1 {
        width: 8.33333%;
    }
    .small-margin-collapse > .xxlarge-2 {
        width: 16.66667%;
    }
    .small-margin-collapse > .xxlarge-3 {
        width: 25%;
    }
    .small-margin-collapse > .xxlarge-4 {
        width: 33.33333%;
    }
    .small-margin-collapse > .xxlarge-5 {
        width: 41.66667%;
    }
    .small-margin-collapse > .xxlarge-6 {
        width: 50%;
    }
    .small-margin-collapse > .xxlarge-7 {
        width: 58.33333%;
    }
    .small-margin-collapse > .xxlarge-8 {
        width: 66.66667%;
    }
    .small-margin-collapse > .xxlarge-9 {
        width: 75%;
    }
    .small-margin-collapse > .xxlarge-10 {
        width: 83.33333%;
    }
    .small-margin-collapse > .xxlarge-11 {
        width: 91.66667%;
    }
    .small-margin-collapse > .xxlarge-12 {
        width: 100%;
    }
}
.small-padding-collapse {
    margin-right: 0;
    margin-left: 0;
}
.small-padding-collapse > .cell {
    padding-right: 0;
    padding-left: 0;
}
@media print, screen and (min-width: 40em) {
    .medium-margin-collapse,
    .medium-margin-collapse > .cell {
        margin-right: 0;
        margin-left: 0;
    }
}
@media print, screen and (min-width: 40em) {
    .medium-margin-collapse > .small-1 {
        width: 8.33333%;
    }
    .medium-margin-collapse > .small-2 {
        width: 16.66667%;
    }
    .medium-margin-collapse > .small-3 {
        width: 25%;
    }
    .medium-margin-collapse > .small-4 {
        width: 33.33333%;
    }
    .medium-margin-collapse > .small-5 {
        width: 41.66667%;
    }
    .medium-margin-collapse > .small-6 {
        width: 50%;
    }
    .medium-margin-collapse > .small-7 {
        width: 58.33333%;
    }
    .medium-margin-collapse > .small-8 {
        width: 66.66667%;
    }
    .medium-margin-collapse > .small-9 {
        width: 75%;
    }
    .medium-margin-collapse > .small-10 {
        width: 83.33333%;
    }
    .medium-margin-collapse > .small-11 {
        width: 91.66667%;
    }
    .medium-margin-collapse > .small-12 {
        width: 100%;
    }
}
@media print, screen and (min-width: 40em) {
    .medium-margin-collapse > .medium-1 {
        width: 8.33333%;
    }
    .medium-margin-collapse > .medium-2 {
        width: 16.66667%;
    }
    .medium-margin-collapse > .medium-3 {
        width: 25%;
    }
    .medium-margin-collapse > .medium-4 {
        width: 33.33333%;
    }
    .medium-margin-collapse > .medium-5 {
        width: 41.66667%;
    }
    .medium-margin-collapse > .medium-6 {
        width: 50%;
    }
    .medium-margin-collapse > .medium-7 {
        width: 58.33333%;
    }
    .medium-margin-collapse > .medium-8 {
        width: 66.66667%;
    }
    .medium-margin-collapse > .medium-9 {
        width: 75%;
    }
    .medium-margin-collapse > .medium-10 {
        width: 83.33333%;
    }
    .medium-margin-collapse > .medium-11 {
        width: 91.66667%;
    }
    .medium-margin-collapse > .medium-12 {
        width: 100%;
    }
}
@media print, screen and (min-width: 64.0625em) {
    .medium-margin-collapse > .large-1 {
        width: 8.33333%;
    }
    .medium-margin-collapse > .large-2 {
        width: 16.66667%;
    }
    .medium-margin-collapse > .large-3 {
        width: 25%;
    }
    .medium-margin-collapse > .large-4 {
        width: 33.33333%;
    }
    .medium-margin-collapse > .large-5 {
        width: 41.66667%;
    }
    .medium-margin-collapse > .large-6 {
        width: 50%;
    }
    .medium-margin-collapse > .large-7 {
        width: 58.33333%;
    }
    .medium-margin-collapse > .large-8 {
        width: 66.66667%;
    }
    .medium-margin-collapse > .large-9 {
        width: 75%;
    }
    .medium-margin-collapse > .large-10 {
        width: 83.33333%;
    }
    .medium-margin-collapse > .large-11 {
        width: 91.66667%;
    }
    .medium-margin-collapse > .large-12 {
        width: 100%;
    }
}
@media screen and (min-width: 80em) {
    .medium-margin-collapse > .xlarge-1 {
        width: 8.33333%;
    }
    .medium-margin-collapse > .xlarge-2 {
        width: 16.66667%;
    }
    .medium-margin-collapse > .xlarge-3 {
        width: 25%;
    }
    .medium-margin-collapse > .xlarge-4 {
        width: 33.33333%;
    }
    .medium-margin-collapse > .xlarge-5 {
        width: 41.66667%;
    }
    .medium-margin-collapse > .xlarge-6 {
        width: 50%;
    }
    .medium-margin-collapse > .xlarge-7 {
        width: 58.33333%;
    }
    .medium-margin-collapse > .xlarge-8 {
        width: 66.66667%;
    }
    .medium-margin-collapse > .xlarge-9 {
        width: 75%;
    }
    .medium-margin-collapse > .xlarge-10 {
        width: 83.33333%;
    }
    .medium-margin-collapse > .xlarge-11 {
        width: 91.66667%;
    }
    .medium-margin-collapse > .xlarge-12 {
        width: 100%;
    }
}
@media screen and (min-width: 105em) {
    .medium-margin-collapse > .xxlarge-1 {
        width: 8.33333%;
    }
    .medium-margin-collapse > .xxlarge-2 {
        width: 16.66667%;
    }
    .medium-margin-collapse > .xxlarge-3 {
        width: 25%;
    }
    .medium-margin-collapse > .xxlarge-4 {
        width: 33.33333%;
    }
    .medium-margin-collapse > .xxlarge-5 {
        width: 41.66667%;
    }
    .medium-margin-collapse > .xxlarge-6 {
        width: 50%;
    }
    .medium-margin-collapse > .xxlarge-7 {
        width: 58.33333%;
    }
    .medium-margin-collapse > .xxlarge-8 {
        width: 66.66667%;
    }
    .medium-margin-collapse > .xxlarge-9 {
        width: 75%;
    }
    .medium-margin-collapse > .xxlarge-10 {
        width: 83.33333%;
    }
    .medium-margin-collapse > .xxlarge-11 {
        width: 91.66667%;
    }
    .medium-margin-collapse > .xxlarge-12 {
        width: 100%;
    }
}
@media print, screen and (min-width: 40em) {
    .medium-padding-collapse {
        margin-right: 0;
        margin-left: 0;
    }
    .medium-padding-collapse > .cell {
        padding-right: 0;
        padding-left: 0;
    }
}
@media print, screen and (min-width: 64.0625em) {
    .large-margin-collapse,
    .large-margin-collapse > .cell {
        margin-right: 0;
        margin-left: 0;
    }
}
@media print, screen and (min-width: 64.0625em) {
    .large-margin-collapse > .small-1 {
        width: 8.33333%;
    }
    .large-margin-collapse > .small-2 {
        width: 16.66667%;
    }
    .large-margin-collapse > .small-3 {
        width: 25%;
    }
    .large-margin-collapse > .small-4 {
        width: 33.33333%;
    }
    .large-margin-collapse > .small-5 {
        width: 41.66667%;
    }
    .large-margin-collapse > .small-6 {
        width: 50%;
    }
    .large-margin-collapse > .small-7 {
        width: 58.33333%;
    }
    .large-margin-collapse > .small-8 {
        width: 66.66667%;
    }
    .large-margin-collapse > .small-9 {
        width: 75%;
    }
    .large-margin-collapse > .small-10 {
        width: 83.33333%;
    }
    .large-margin-collapse > .small-11 {
        width: 91.66667%;
    }
    .large-margin-collapse > .small-12 {
        width: 100%;
    }
}
@media print, screen and (min-width: 64.0625em) {
    .large-margin-collapse > .medium-1 {
        width: 8.33333%;
    }
    .large-margin-collapse > .medium-2 {
        width: 16.66667%;
    }
    .large-margin-collapse > .medium-3 {
        width: 25%;
    }
    .large-margin-collapse > .medium-4 {
        width: 33.33333%;
    }
    .large-margin-collapse > .medium-5 {
        width: 41.66667%;
    }
    .large-margin-collapse > .medium-6 {
        width: 50%;
    }
    .large-margin-collapse > .medium-7 {
        width: 58.33333%;
    }
    .large-margin-collapse > .medium-8 {
        width: 66.66667%;
    }
    .large-margin-collapse > .medium-9 {
        width: 75%;
    }
    .large-margin-collapse > .medium-10 {
        width: 83.33333%;
    }
    .large-margin-collapse > .medium-11 {
        width: 91.66667%;
    }
    .large-margin-collapse > .medium-12 {
        width: 100%;
    }
}
@media print, screen and (min-width: 64.0625em) {
    .large-margin-collapse > .large-1 {
        width: 8.33333%;
    }
    .large-margin-collapse > .large-2 {
        width: 16.66667%;
    }
    .large-margin-collapse > .large-3 {
        width: 25%;
    }
    .large-margin-collapse > .large-4 {
        width: 33.33333%;
    }
    .large-margin-collapse > .large-5 {
        width: 41.66667%;
    }
    .large-margin-collapse > .large-6 {
        width: 50%;
    }
    .large-margin-collapse > .large-7 {
        width: 58.33333%;
    }
    .large-margin-collapse > .large-8 {
        width: 66.66667%;
    }
    .large-margin-collapse > .large-9 {
        width: 75%;
    }
    .large-margin-collapse > .large-10 {
        width: 83.33333%;
    }
    .large-margin-collapse > .large-11 {
        width: 91.66667%;
    }
    .large-margin-collapse > .large-12 {
        width: 100%;
    }
}
@media screen and (min-width: 80em) {
    .large-margin-collapse > .xlarge-1 {
        width: 8.33333%;
    }
    .large-margin-collapse > .xlarge-2 {
        width: 16.66667%;
    }
    .large-margin-collapse > .xlarge-3 {
        width: 25%;
    }
    .large-margin-collapse > .xlarge-4 {
        width: 33.33333%;
    }
    .large-margin-collapse > .xlarge-5 {
        width: 41.66667%;
    }
    .large-margin-collapse > .xlarge-6 {
        width: 50%;
    }
    .large-margin-collapse > .xlarge-7 {
        width: 58.33333%;
    }
    .large-margin-collapse > .xlarge-8 {
        width: 66.66667%;
    }
    .large-margin-collapse > .xlarge-9 {
        width: 75%;
    }
    .large-margin-collapse > .xlarge-10 {
        width: 83.33333%;
    }
    .large-margin-collapse > .xlarge-11 {
        width: 91.66667%;
    }
    .large-margin-collapse > .xlarge-12 {
        width: 100%;
    }
}
@media screen and (min-width: 105em) {
    .large-margin-collapse > .xxlarge-1 {
        width: 8.33333%;
    }
    .large-margin-collapse > .xxlarge-2 {
        width: 16.66667%;
    }
    .large-margin-collapse > .xxlarge-3 {
        width: 25%;
    }
    .large-margin-collapse > .xxlarge-4 {
        width: 33.33333%;
    }
    .large-margin-collapse > .xxlarge-5 {
        width: 41.66667%;
    }
    .large-margin-collapse > .xxlarge-6 {
        width: 50%;
    }
    .large-margin-collapse > .xxlarge-7 {
        width: 58.33333%;
    }
    .large-margin-collapse > .xxlarge-8 {
        width: 66.66667%;
    }
    .large-margin-collapse > .xxlarge-9 {
        width: 75%;
    }
    .large-margin-collapse > .xxlarge-10 {
        width: 83.33333%;
    }
    .large-margin-collapse > .xxlarge-11 {
        width: 91.66667%;
    }
    .large-margin-collapse > .xxlarge-12 {
        width: 100%;
    }
}
@media print, screen and (min-width: 64.0625em) {
    .large-padding-collapse {
        margin-right: 0;
        margin-left: 0;
    }
    .large-padding-collapse > .cell {
        padding-right: 0;
        padding-left: 0;
    }
}
@media screen and (min-width: 80em) {
    .xlarge-margin-collapse,
    .xlarge-margin-collapse > .cell {
        margin-right: 0;
        margin-left: 0;
    }
}
@media screen and (min-width: 80em) {
    .xlarge-margin-collapse > .small-1 {
        width: 8.33333%;
    }
    .xlarge-margin-collapse > .small-2 {
        width: 16.66667%;
    }
    .xlarge-margin-collapse > .small-3 {
        width: 25%;
    }
    .xlarge-margin-collapse > .small-4 {
        width: 33.33333%;
    }
    .xlarge-margin-collapse > .small-5 {
        width: 41.66667%;
    }
    .xlarge-margin-collapse > .small-6 {
        width: 50%;
    }
    .xlarge-margin-collapse > .small-7 {
        width: 58.33333%;
    }
    .xlarge-margin-collapse > .small-8 {
        width: 66.66667%;
    }
    .xlarge-margin-collapse > .small-9 {
        width: 75%;
    }
    .xlarge-margin-collapse > .small-10 {
        width: 83.33333%;
    }
    .xlarge-margin-collapse > .small-11 {
        width: 91.66667%;
    }
    .xlarge-margin-collapse > .small-12 {
        width: 100%;
    }
}
@media screen and (min-width: 80em) {
    .xlarge-margin-collapse > .medium-1 {
        width: 8.33333%;
    }
    .xlarge-margin-collapse > .medium-2 {
        width: 16.66667%;
    }
    .xlarge-margin-collapse > .medium-3 {
        width: 25%;
    }
    .xlarge-margin-collapse > .medium-4 {
        width: 33.33333%;
    }
    .xlarge-margin-collapse > .medium-5 {
        width: 41.66667%;
    }
    .xlarge-margin-collapse > .medium-6 {
        width: 50%;
    }
    .xlarge-margin-collapse > .medium-7 {
        width: 58.33333%;
    }
    .xlarge-margin-collapse > .medium-8 {
        width: 66.66667%;
    }
    .xlarge-margin-collapse > .medium-9 {
        width: 75%;
    }
    .xlarge-margin-collapse > .medium-10 {
        width: 83.33333%;
    }
    .xlarge-margin-collapse > .medium-11 {
        width: 91.66667%;
    }
    .xlarge-margin-collapse > .medium-12 {
        width: 100%;
    }
}
@media screen and (min-width: 80em) {
    .xlarge-margin-collapse > .large-1 {
        width: 8.33333%;
    }
    .xlarge-margin-collapse > .large-2 {
        width: 16.66667%;
    }
    .xlarge-margin-collapse > .large-3 {
        width: 25%;
    }
    .xlarge-margin-collapse > .large-4 {
        width: 33.33333%;
    }
    .xlarge-margin-collapse > .large-5 {
        width: 41.66667%;
    }
    .xlarge-margin-collapse > .large-6 {
        width: 50%;
    }
    .xlarge-margin-collapse > .large-7 {
        width: 58.33333%;
    }
    .xlarge-margin-collapse > .large-8 {
        width: 66.66667%;
    }
    .xlarge-margin-collapse > .large-9 {
        width: 75%;
    }
    .xlarge-margin-collapse > .large-10 {
        width: 83.33333%;
    }
    .xlarge-margin-collapse > .large-11 {
        width: 91.66667%;
    }
    .xlarge-margin-collapse > .large-12 {
        width: 100%;
    }
}
@media screen and (min-width: 80em) {
    .xlarge-margin-collapse > .xlarge-1 {
        width: 8.33333%;
    }
    .xlarge-margin-collapse > .xlarge-2 {
        width: 16.66667%;
    }
    .xlarge-margin-collapse > .xlarge-3 {
        width: 25%;
    }
    .xlarge-margin-collapse > .xlarge-4 {
        width: 33.33333%;
    }
    .xlarge-margin-collapse > .xlarge-5 {
        width: 41.66667%;
    }
    .xlarge-margin-collapse > .xlarge-6 {
        width: 50%;
    }
    .xlarge-margin-collapse > .xlarge-7 {
        width: 58.33333%;
    }
    .xlarge-margin-collapse > .xlarge-8 {
        width: 66.66667%;
    }
    .xlarge-margin-collapse > .xlarge-9 {
        width: 75%;
    }
    .xlarge-margin-collapse > .xlarge-10 {
        width: 83.33333%;
    }
    .xlarge-margin-collapse > .xlarge-11 {
        width: 91.66667%;
    }
    .xlarge-margin-collapse > .xlarge-12 {
        width: 100%;
    }
}
@media screen and (min-width: 105em) {
    .xlarge-margin-collapse > .xxlarge-1 {
        width: 8.33333%;
    }
    .xlarge-margin-collapse > .xxlarge-2 {
        width: 16.66667%;
    }
    .xlarge-margin-collapse > .xxlarge-3 {
        width: 25%;
    }
    .xlarge-margin-collapse > .xxlarge-4 {
        width: 33.33333%;
    }
    .xlarge-margin-collapse > .xxlarge-5 {
        width: 41.66667%;
    }
    .xlarge-margin-collapse > .xxlarge-6 {
        width: 50%;
    }
    .xlarge-margin-collapse > .xxlarge-7 {
        width: 58.33333%;
    }
    .xlarge-margin-collapse > .xxlarge-8 {
        width: 66.66667%;
    }
    .xlarge-margin-collapse > .xxlarge-9 {
        width: 75%;
    }
    .xlarge-margin-collapse > .xxlarge-10 {
        width: 83.33333%;
    }
    .xlarge-margin-collapse > .xxlarge-11 {
        width: 91.66667%;
    }
    .xlarge-margin-collapse > .xxlarge-12 {
        width: 100%;
    }
}
@media screen and (min-width: 80em) {
    .xlarge-padding-collapse {
        margin-right: 0;
        margin-left: 0;
    }
    .xlarge-padding-collapse > .cell {
        padding-right: 0;
        padding-left: 0;
    }
}
@media screen and (min-width: 105em) {
    .xxlarge-margin-collapse,
    .xxlarge-margin-collapse > .cell {
        margin-right: 0;
        margin-left: 0;
    }
}
@media screen and (min-width: 105em) {
    .xxlarge-margin-collapse > .small-1 {
        width: 8.33333%;
    }
    .xxlarge-margin-collapse > .small-2 {
        width: 16.66667%;
    }
    .xxlarge-margin-collapse > .small-3 {
        width: 25%;
    }
    .xxlarge-margin-collapse > .small-4 {
        width: 33.33333%;
    }
    .xxlarge-margin-collapse > .small-5 {
        width: 41.66667%;
    }
    .xxlarge-margin-collapse > .small-6 {
        width: 50%;
    }
    .xxlarge-margin-collapse > .small-7 {
        width: 58.33333%;
    }
    .xxlarge-margin-collapse > .small-8 {
        width: 66.66667%;
    }
    .xxlarge-margin-collapse > .small-9 {
        width: 75%;
    }
    .xxlarge-margin-collapse > .small-10 {
        width: 83.33333%;
    }
    .xxlarge-margin-collapse > .small-11 {
        width: 91.66667%;
    }
    .xxlarge-margin-collapse > .small-12 {
        width: 100%;
    }
}
@media screen and (min-width: 105em) {
    .xxlarge-margin-collapse > .medium-1 {
        width: 8.33333%;
    }
    .xxlarge-margin-collapse > .medium-2 {
        width: 16.66667%;
    }
    .xxlarge-margin-collapse > .medium-3 {
        width: 25%;
    }
    .xxlarge-margin-collapse > .medium-4 {
        width: 33.33333%;
    }
    .xxlarge-margin-collapse > .medium-5 {
        width: 41.66667%;
    }
    .xxlarge-margin-collapse > .medium-6 {
        width: 50%;
    }
    .xxlarge-margin-collapse > .medium-7 {
        width: 58.33333%;
    }
    .xxlarge-margin-collapse > .medium-8 {
        width: 66.66667%;
    }
    .xxlarge-margin-collapse > .medium-9 {
        width: 75%;
    }
    .xxlarge-margin-collapse > .medium-10 {
        width: 83.33333%;
    }
    .xxlarge-margin-collapse > .medium-11 {
        width: 91.66667%;
    }
    .xxlarge-margin-collapse > .medium-12 {
        width: 100%;
    }
}
@media screen and (min-width: 105em) {
    .xxlarge-margin-collapse > .large-1 {
        width: 8.33333%;
    }
    .xxlarge-margin-collapse > .large-2 {
        width: 16.66667%;
    }
    .xxlarge-margin-collapse > .large-3 {
        width: 25%;
    }
    .xxlarge-margin-collapse > .large-4 {
        width: 33.33333%;
    }
    .xxlarge-margin-collapse > .large-5 {
        width: 41.66667%;
    }
    .xxlarge-margin-collapse > .large-6 {
        width: 50%;
    }
    .xxlarge-margin-collapse > .large-7 {
        width: 58.33333%;
    }
    .xxlarge-margin-collapse > .large-8 {
        width: 66.66667%;
    }
    .xxlarge-margin-collapse > .large-9 {
        width: 75%;
    }
    .xxlarge-margin-collapse > .large-10 {
        width: 83.33333%;
    }
    .xxlarge-margin-collapse > .large-11 {
        width: 91.66667%;
    }
    .xxlarge-margin-collapse > .large-12 {
        width: 100%;
    }
}
@media screen and (min-width: 105em) {
    .xxlarge-margin-collapse > .xlarge-1 {
        width: 8.33333%;
    }
    .xxlarge-margin-collapse > .xlarge-2 {
        width: 16.66667%;
    }
    .xxlarge-margin-collapse > .xlarge-3 {
        width: 25%;
    }
    .xxlarge-margin-collapse > .xlarge-4 {
        width: 33.33333%;
    }
    .xxlarge-margin-collapse > .xlarge-5 {
        width: 41.66667%;
    }
    .xxlarge-margin-collapse > .xlarge-6 {
        width: 50%;
    }
    .xxlarge-margin-collapse > .xlarge-7 {
        width: 58.33333%;
    }
    .xxlarge-margin-collapse > .xlarge-8 {
        width: 66.66667%;
    }
    .xxlarge-margin-collapse > .xlarge-9 {
        width: 75%;
    }
    .xxlarge-margin-collapse > .xlarge-10 {
        width: 83.33333%;
    }
    .xxlarge-margin-collapse > .xlarge-11 {
        width: 91.66667%;
    }
    .xxlarge-margin-collapse > .xlarge-12 {
        width: 100%;
    }
}
@media screen and (min-width: 105em) {
    .xxlarge-margin-collapse > .xxlarge-1 {
        width: 8.33333%;
    }
    .xxlarge-margin-collapse > .xxlarge-2 {
        width: 16.66667%;
    }
    .xxlarge-margin-collapse > .xxlarge-3 {
        width: 25%;
    }
    .xxlarge-margin-collapse > .xxlarge-4 {
        width: 33.33333%;
    }
    .xxlarge-margin-collapse > .xxlarge-5 {
        width: 41.66667%;
    }
    .xxlarge-margin-collapse > .xxlarge-6 {
        width: 50%;
    }
    .xxlarge-margin-collapse > .xxlarge-7 {
        width: 58.33333%;
    }
    .xxlarge-margin-collapse > .xxlarge-8 {
        width: 66.66667%;
    }
    .xxlarge-margin-collapse > .xxlarge-9 {
        width: 75%;
    }
    .xxlarge-margin-collapse > .xxlarge-10 {
        width: 83.33333%;
    }
    .xxlarge-margin-collapse > .xxlarge-11 {
        width: 91.66667%;
    }
    .xxlarge-margin-collapse > .xxlarge-12 {
        width: 100%;
    }
}
@media screen and (min-width: 105em) {
    .xxlarge-padding-collapse {
        margin-right: 0;
        margin-left: 0;
    }
    .xxlarge-padding-collapse > .cell {
        padding-right: 0;
        padding-left: 0;
    }
}
.small-offset-0 {
    margin-left: 0;
}
.grid-margin-x > .small-offset-0 {
    margin-left: calc(0% + 0.625rem);
}
.small-offset-1 {
    margin-left: 8.33333%;
}
.grid-margin-x > .small-offset-1 {
    margin-left: calc(8.33333% + 0.625rem);
}
.small-offset-2 {
    margin-left: 16.66667%;
}
.grid-margin-x > .small-offset-2 {
    margin-left: calc(16.66667% + 0.625rem);
}
.small-offset-3 {
    margin-left: 25%;
}
.grid-margin-x > .small-offset-3 {
    margin-left: calc(25% + 0.625rem);
}
.small-offset-4 {
    margin-left: 33.33333%;
}
.grid-margin-x > .small-offset-4 {
    margin-left: calc(33.33333% + 0.625rem);
}
.small-offset-5 {
    margin-left: 41.66667%;
}
.grid-margin-x > .small-offset-5 {
    margin-left: calc(41.66667% + 0.625rem);
}
.small-offset-6 {
    margin-left: 50%;
}
.grid-margin-x > .small-offset-6 {
    margin-left: calc(50% + 0.625rem);
}
.small-offset-7 {
    margin-left: 58.33333%;
}
.grid-margin-x > .small-offset-7 {
    margin-left: calc(58.33333% + 0.625rem);
}
.small-offset-8 {
    margin-left: 66.66667%;
}
.grid-margin-x > .small-offset-8 {
    margin-left: calc(66.66667% + 0.625rem);
}
.small-offset-9 {
    margin-left: 75%;
}
.grid-margin-x > .small-offset-9 {
    margin-left: calc(75% + 0.625rem);
}
.small-offset-10 {
    margin-left: 83.33333%;
}
.grid-margin-x > .small-offset-10 {
    margin-left: calc(83.33333% + 0.625rem);
}
.small-offset-11 {
    margin-left: 91.66667%;
}
.grid-margin-x > .small-offset-11 {
    margin-left: calc(91.66667% + 0.625rem);
}
@media print, screen and (min-width: 40em) {
    .medium-offset-0 {
        margin-left: 0;
    }
    .grid-margin-x > .medium-offset-0 {
        margin-left: calc(0% + 0.9375rem);
    }
    .medium-offset-1 {
        margin-left: 8.33333%;
    }
    .grid-margin-x > .medium-offset-1 {
        margin-left: calc(8.33333% + 0.9375rem);
    }
    .medium-offset-2 {
        margin-left: 16.66667%;
    }
    .grid-margin-x > .medium-offset-2 {
        margin-left: calc(16.66667% + 0.9375rem);
    }
    .medium-offset-3 {
        margin-left: 25%;
    }
    .grid-margin-x > .medium-offset-3 {
        margin-left: calc(25% + 0.9375rem);
    }
    .medium-offset-4 {
        margin-left: 33.33333%;
    }
    .grid-margin-x > .medium-offset-4 {
        margin-left: calc(33.33333% + 0.9375rem);
    }
    .medium-offset-5 {
        margin-left: 41.66667%;
    }
    .grid-margin-x > .medium-offset-5 {
        margin-left: calc(41.66667% + 0.9375rem);
    }
    .medium-offset-6 {
        margin-left: 50%;
    }
    .grid-margin-x > .medium-offset-6 {
        margin-left: calc(50% + 0.9375rem);
    }
    .medium-offset-7 {
        margin-left: 58.33333%;
    }
    .grid-margin-x > .medium-offset-7 {
        margin-left: calc(58.33333% + 0.9375rem);
    }
    .medium-offset-8 {
        margin-left: 66.66667%;
    }
    .grid-margin-x > .medium-offset-8 {
        margin-left: calc(66.66667% + 0.9375rem);
    }
    .medium-offset-9 {
        margin-left: 75%;
    }
    .grid-margin-x > .medium-offset-9 {
        margin-left: calc(75% + 0.9375rem);
    }
    .medium-offset-10 {
        margin-left: 83.33333%;
    }
    .grid-margin-x > .medium-offset-10 {
        margin-left: calc(83.33333% + 0.9375rem);
    }
    .medium-offset-11 {
        margin-left: 91.66667%;
    }
    .grid-margin-x > .medium-offset-11 {
        margin-left: calc(91.66667% + 0.9375rem);
    }
}
@media print, screen and (min-width: 64.0625em) {
    .large-offset-0 {
        margin-left: 0;
    }
    .grid-margin-x > .large-offset-0 {
        margin-left: calc(0% + 1.25rem);
    }
    .large-offset-1 {
        margin-left: 8.33333%;
    }
    .grid-margin-x > .large-offset-1 {
        margin-left: calc(8.33333% + 1.25rem);
    }
    .large-offset-2 {
        margin-left: 16.66667%;
    }
    .grid-margin-x > .large-offset-2 {
        margin-left: calc(16.66667% + 1.25rem);
    }
    .large-offset-3 {
        margin-left: 25%;
    }
    .grid-margin-x > .large-offset-3 {
        margin-left: calc(25% + 1.25rem);
    }
    .large-offset-4 {
        margin-left: 33.33333%;
    }
    .grid-margin-x > .large-offset-4 {
        margin-left: calc(33.33333% + 1.25rem);
    }
    .large-offset-5 {
        margin-left: 41.66667%;
    }
    .grid-margin-x > .large-offset-5 {
        margin-left: calc(41.66667% + 1.25rem);
    }
    .large-offset-6 {
        margin-left: 50%;
    }
    .grid-margin-x > .large-offset-6 {
        margin-left: calc(50% + 1.25rem);
    }
    .large-offset-7 {
        margin-left: 58.33333%;
    }
    .grid-margin-x > .large-offset-7 {
        margin-left: calc(58.33333% + 1.25rem);
    }
    .large-offset-8 {
        margin-left: 66.66667%;
    }
    .grid-margin-x > .large-offset-8 {
        margin-left: calc(66.66667% + 1.25rem);
    }
    .large-offset-9 {
        margin-left: 75%;
    }
    .grid-margin-x > .large-offset-9 {
        margin-left: calc(75% + 1.25rem);
    }
    .large-offset-10 {
        margin-left: 83.33333%;
    }
    .grid-margin-x > .large-offset-10 {
        margin-left: calc(83.33333% + 1.25rem);
    }
    .large-offset-11 {
        margin-left: 91.66667%;
    }
    .grid-margin-x > .large-offset-11 {
        margin-left: calc(91.66667% + 1.25rem);
    }
}
@media screen and (min-width: 80em) {
    .xlarge-offset-0 {
        margin-left: 0;
    }
    .grid-margin-x > .xlarge-offset-0 {
        margin-left: calc(0% + 1.25rem);
    }
    .xlarge-offset-1 {
        margin-left: 8.33333%;
    }
    .grid-margin-x > .xlarge-offset-1 {
        margin-left: calc(8.33333% + 1.25rem);
    }
    .xlarge-offset-2 {
        margin-left: 16.66667%;
    }
    .grid-margin-x > .xlarge-offset-2 {
        margin-left: calc(16.66667% + 1.25rem);
    }
    .xlarge-offset-3 {
        margin-left: 25%;
    }
    .grid-margin-x > .xlarge-offset-3 {
        margin-left: calc(25% + 1.25rem);
    }
    .xlarge-offset-4 {
        margin-left: 33.33333%;
    }
    .grid-margin-x > .xlarge-offset-4 {
        margin-left: calc(33.33333% + 1.25rem);
    }
    .xlarge-offset-5 {
        margin-left: 41.66667%;
    }
    .grid-margin-x > .xlarge-offset-5 {
        margin-left: calc(41.66667% + 1.25rem);
    }
    .xlarge-offset-6 {
        margin-left: 50%;
    }
    .grid-margin-x > .xlarge-offset-6 {
        margin-left: calc(50% + 1.25rem);
    }
    .xlarge-offset-7 {
        margin-left: 58.33333%;
    }
    .grid-margin-x > .xlarge-offset-7 {
        margin-left: calc(58.33333% + 1.25rem);
    }
    .xlarge-offset-8 {
        margin-left: 66.66667%;
    }
    .grid-margin-x > .xlarge-offset-8 {
        margin-left: calc(66.66667% + 1.25rem);
    }
    .xlarge-offset-9 {
        margin-left: 75%;
    }
    .grid-margin-x > .xlarge-offset-9 {
        margin-left: calc(75% + 1.25rem);
    }
    .xlarge-offset-10 {
        margin-left: 83.33333%;
    }
    .grid-margin-x > .xlarge-offset-10 {
        margin-left: calc(83.33333% + 1.25rem);
    }
    .xlarge-offset-11 {
        margin-left: 91.66667%;
    }
    .grid-margin-x > .xlarge-offset-11 {
        margin-left: calc(91.66667% + 1.25rem);
    }
}
@media screen and (min-width: 105em) {
    .xxlarge-offset-0 {
        margin-left: 0;
    }
    .grid-margin-x > .xxlarge-offset-0 {
        margin-left: calc(0% + 1.25rem);
    }
    .xxlarge-offset-1 {
        margin-left: 8.33333%;
    }
    .grid-margin-x > .xxlarge-offset-1 {
        margin-left: calc(8.33333% + 1.25rem);
    }
    .xxlarge-offset-2 {
        margin-left: 16.66667%;
    }
    .grid-margin-x > .xxlarge-offset-2 {
        margin-left: calc(16.66667% + 1.25rem);
    }
    .xxlarge-offset-3 {
        margin-left: 25%;
    }
    .grid-margin-x > .xxlarge-offset-3 {
        margin-left: calc(25% + 1.25rem);
    }
    .xxlarge-offset-4 {
        margin-left: 33.33333%;
    }
    .grid-margin-x > .xxlarge-offset-4 {
        margin-left: calc(33.33333% + 1.25rem);
    }
    .xxlarge-offset-5 {
        margin-left: 41.66667%;
    }
    .grid-margin-x > .xxlarge-offset-5 {
        margin-left: calc(41.66667% + 1.25rem);
    }
    .xxlarge-offset-6 {
        margin-left: 50%;
    }
    .grid-margin-x > .xxlarge-offset-6 {
        margin-left: calc(50% + 1.25rem);
    }
    .xxlarge-offset-7 {
        margin-left: 58.33333%;
    }
    .grid-margin-x > .xxlarge-offset-7 {
        margin-left: calc(58.33333% + 1.25rem);
    }
    .xxlarge-offset-8 {
        margin-left: 66.66667%;
    }
    .grid-margin-x > .xxlarge-offset-8 {
        margin-left: calc(66.66667% + 1.25rem);
    }
    .xxlarge-offset-9 {
        margin-left: 75%;
    }
    .grid-margin-x > .xxlarge-offset-9 {
        margin-left: calc(75% + 1.25rem);
    }
    .xxlarge-offset-10 {
        margin-left: 83.33333%;
    }
    .grid-margin-x > .xxlarge-offset-10 {
        margin-left: calc(83.33333% + 1.25rem);
    }
    .xxlarge-offset-11 {
        margin-left: 91.66667%;
    }
    .grid-margin-x > .xxlarge-offset-11 {
        margin-left: calc(91.66667% + 1.25rem);
    }
}
.grid-y {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-flow: column nowrap;
    flex-flow: column nowrap;
}
.grid-y > .cell {
    width: auto;
}
.grid-y > .auto,
.grid-y > .shrink {
    height: auto;
}
.grid-y > .small-1,
.grid-y > .small-2,
.grid-y > .small-3,
.grid-y > .small-4,
.grid-y > .small-5,
.grid-y > .small-6,
.grid-y > .small-7,
.grid-y > .small-8,
.grid-y > .small-9,
.grid-y > .small-10,
.grid-y > .small-11,
.grid-y > .small-12,
.grid-y > .small-full,
.grid-y > .small-shrink {
    -ms-flex-preferred-size: auto;
    flex-basis: auto;
}
@media print, screen and (min-width: 40em) {
    .grid-y > .medium-1,
    .grid-y > .medium-2,
    .grid-y > .medium-3,
    .grid-y > .medium-4,
    .grid-y > .medium-5,
    .grid-y > .medium-6,
    .grid-y > .medium-7,
    .grid-y > .medium-8,
    .grid-y > .medium-9,
    .grid-y > .medium-10,
    .grid-y > .medium-11,
    .grid-y > .medium-12,
    .grid-y > .medium-full,
    .grid-y > .medium-shrink {
        -ms-flex-preferred-size: auto;
        flex-basis: auto;
    }
}
@media print, screen and (min-width: 64.0625em) {
    .grid-y > .large-1,
    .grid-y > .large-2,
    .grid-y > .large-3,
    .grid-y > .large-4,
    .grid-y > .large-5,
    .grid-y > .large-6,
    .grid-y > .large-7,
    .grid-y > .large-8,
    .grid-y > .large-9,
    .grid-y > .large-10,
    .grid-y > .large-11,
    .grid-y > .large-12,
    .grid-y > .large-full,
    .grid-y > .large-shrink {
        -ms-flex-preferred-size: auto;
        flex-basis: auto;
    }
}
@media screen and (min-width: 80em) {
    .grid-y > .xlarge-1,
    .grid-y > .xlarge-2,
    .grid-y > .xlarge-3,
    .grid-y > .xlarge-4,
    .grid-y > .xlarge-5,
    .grid-y > .xlarge-6,
    .grid-y > .xlarge-7,
    .grid-y > .xlarge-8,
    .grid-y > .xlarge-9,
    .grid-y > .xlarge-10,
    .grid-y > .xlarge-11,
    .grid-y > .xlarge-12,
    .grid-y > .xlarge-full,
    .grid-y > .xlarge-shrink {
        -ms-flex-preferred-size: auto;
        flex-basis: auto;
    }
}
@media screen and (min-width: 105em) {
    .grid-y > .xxlarge-1,
    .grid-y > .xxlarge-2,
    .grid-y > .xxlarge-3,
    .grid-y > .xxlarge-4,
    .grid-y > .xxlarge-5,
    .grid-y > .xxlarge-6,
    .grid-y > .xxlarge-7,
    .grid-y > .xxlarge-8,
    .grid-y > .xxlarge-9,
    .grid-y > .xxlarge-10,
    .grid-y > .xxlarge-11,
    .grid-y > .xxlarge-12,
    .grid-y > .xxlarge-full,
    .grid-y > .xxlarge-shrink {
        -ms-flex-preferred-size: auto;
        flex-basis: auto;
    }
}
.grid-y > .small-1 {
    height: 8.33333%;
}
.grid-y > .small-2 {
    height: 16.66667%;
}
.grid-y > .small-3 {
    height: 25%;
}
.grid-y > .small-4 {
    height: 33.33333%;
}
.grid-y > .small-5 {
    height: 41.66667%;
}
.grid-y > .small-6 {
    height: 50%;
}
.grid-y > .small-7 {
    height: 58.33333%;
}
.grid-y > .small-8 {
    height: 66.66667%;
}
.grid-y > .small-9 {
    height: 75%;
}
.grid-y > .small-10 {
    height: 83.33333%;
}
.grid-y > .small-11 {
    height: 91.66667%;
}
.grid-y > .small-12 {
    height: 100%;
}
@media print, screen and (min-width: 40em) {
    .grid-y > .medium-auto {
        -ms-flex: 1 1 0px;
        flex: 1 1 0px;
        height: auto;
    }
    .grid-y > .medium-shrink {
        height: auto;
    }
    .grid-y > .medium-1 {
        height: 8.33333%;
    }
    .grid-y > .medium-2 {
        height: 16.66667%;
    }
    .grid-y > .medium-3 {
        height: 25%;
    }
    .grid-y > .medium-4 {
        height: 33.33333%;
    }
    .grid-y > .medium-5 {
        height: 41.66667%;
    }
    .grid-y > .medium-6 {
        height: 50%;
    }
    .grid-y > .medium-7 {
        height: 58.33333%;
    }
    .grid-y > .medium-8 {
        height: 66.66667%;
    }
    .grid-y > .medium-9 {
        height: 75%;
    }
    .grid-y > .medium-10 {
        height: 83.33333%;
    }
    .grid-y > .medium-11 {
        height: 91.66667%;
    }
    .grid-y > .medium-12 {
        height: 100%;
    }
}
@media print, screen and (min-width: 64.0625em) {
    .grid-y > .large-auto {
        -ms-flex: 1 1 0px;
        flex: 1 1 0px;
        height: auto;
    }
    .grid-y > .large-shrink {
        height: auto;
    }
    .grid-y > .large-1 {
        height: 8.33333%;
    }
    .grid-y > .large-2 {
        height: 16.66667%;
    }
    .grid-y > .large-3 {
        height: 25%;
    }
    .grid-y > .large-4 {
        height: 33.33333%;
    }
    .grid-y > .large-5 {
        height: 41.66667%;
    }
    .grid-y > .large-6 {
        height: 50%;
    }
    .grid-y > .large-7 {
        height: 58.33333%;
    }
    .grid-y > .large-8 {
        height: 66.66667%;
    }
    .grid-y > .large-9 {
        height: 75%;
    }
    .grid-y > .large-10 {
        height: 83.33333%;
    }
    .grid-y > .large-11 {
        height: 91.66667%;
    }
    .grid-y > .large-12 {
        height: 100%;
    }
}
@media screen and (min-width: 80em) {
    .grid-y > .xlarge-auto {
        -ms-flex: 1 1 0px;
        flex: 1 1 0px;
        height: auto;
    }
    .grid-y > .xlarge-shrink {
        height: auto;
    }
    .grid-y > .xlarge-1 {
        height: 8.33333%;
    }
    .grid-y > .xlarge-2 {
        height: 16.66667%;
    }
    .grid-y > .xlarge-3 {
        height: 25%;
    }
    .grid-y > .xlarge-4 {
        height: 33.33333%;
    }
    .grid-y > .xlarge-5 {
        height: 41.66667%;
    }
    .grid-y > .xlarge-6 {
        height: 50%;
    }
    .grid-y > .xlarge-7 {
        height: 58.33333%;
    }
    .grid-y > .xlarge-8 {
        height: 66.66667%;
    }
    .grid-y > .xlarge-9 {
        height: 75%;
    }
    .grid-y > .xlarge-10 {
        height: 83.33333%;
    }
    .grid-y > .xlarge-11 {
        height: 91.66667%;
    }
    .grid-y > .xlarge-12 {
        height: 100%;
    }
}
@media screen and (min-width: 105em) {
    .grid-y > .xxlarge-auto {
        -ms-flex: 1 1 0px;
        flex: 1 1 0px;
        height: auto;
    }
    .grid-y > .xxlarge-shrink {
        height: auto;
    }
    .grid-y > .xxlarge-1 {
        height: 8.33333%;
    }
    .grid-y > .xxlarge-2 {
        height: 16.66667%;
    }
    .grid-y > .xxlarge-3 {
        height: 25%;
    }
    .grid-y > .xxlarge-4 {
        height: 33.33333%;
    }
    .grid-y > .xxlarge-5 {
        height: 41.66667%;
    }
    .grid-y > .xxlarge-6 {
        height: 50%;
    }
    .grid-y > .xxlarge-7 {
        height: 58.33333%;
    }
    .grid-y > .xxlarge-8 {
        height: 66.66667%;
    }
    .grid-y > .xxlarge-9 {
        height: 75%;
    }
    .grid-y > .xxlarge-10 {
        height: 83.33333%;
    }
    .grid-y > .xxlarge-11 {
        height: 91.66667%;
    }
    .grid-y > .xxlarge-12 {
        height: 100%;
    }
}
.grid-padding-y .grid-padding-y {
    margin-top: -0.625rem;
    margin-bottom: -0.625rem;
}
@media print, screen and (min-width: 40em) {
    .grid-padding-y .grid-padding-y {
        margin-top: -0.9375rem;
        margin-bottom: -0.9375rem;
    }
}
@media print, screen and (min-width: 64.0625em) {
    .grid-padding-y .grid-padding-y {
        margin-top: -1.25rem;
        margin-bottom: -1.25rem;
    }
}
.grid-padding-y > .cell {
    padding-top: 0.625rem;
    padding-bottom: 0.625rem;
}
@media print, screen and (min-width: 40em) {
    .grid-padding-y > .cell {
        padding-top: 0.9375rem;
        padding-bottom: 0.9375rem;
    }
}
@media print, screen and (min-width: 64.0625em) {
    .grid-padding-y > .cell {
        padding-top: 1.25rem;
        padding-bottom: 1.25rem;
    }
}
.grid-frame {
    overflow: hidden;
    position: relative;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -ms-flex-align: stretch;
    align-items: stretch;
    width: 100vw;
}
.cell .grid-frame {
    width: 100%;
}
.cell-block {
    overflow-x: auto;
    max-width: 100%;
}
.cell-block,
.cell-block-y {
    -webkit-overflow-scrolling: touch;
    -ms-overflow-stype: -ms-autohiding-scrollbar;
}
.cell-block-y {
    overflow-y: auto;
    max-height: 100%;
}
.cell-block-container {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;
    max-height: 100%;
}
.cell-block-container > .grid-x {
    max-height: 100%;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
}
@media print, screen and (min-width: 40em) {
    .medium-grid-frame {
        overflow: hidden;
        position: relative;
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
        -ms-flex-align: stretch;
        align-items: stretch;
        width: 100vw;
    }
    .cell .medium-grid-frame {
        width: 100%;
    }
    .medium-cell-block {
        overflow-x: auto;
        max-width: 100%;
        -webkit-overflow-scrolling: touch;
        -ms-overflow-stype: -ms-autohiding-scrollbar;
    }
    .medium-cell-block-container {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-direction: column;
        flex-direction: column;
        max-height: 100%;
    }
    .medium-cell-block-container > .grid-x {
        max-height: 100%;
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    }
    .medium-cell-block-y {
        overflow-y: auto;
        max-height: 100%;
        -webkit-overflow-scrolling: touch;
        -ms-overflow-stype: -ms-autohiding-scrollbar;
    }
}
@media print, screen and (min-width: 64.0625em) {
    .large-grid-frame {
        overflow: hidden;
        position: relative;
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
        -ms-flex-align: stretch;
        align-items: stretch;
        width: 100vw;
    }
    .cell .large-grid-frame {
        width: 100%;
    }
    .large-cell-block {
        overflow-x: auto;
        max-width: 100%;
        -webkit-overflow-scrolling: touch;
        -ms-overflow-stype: -ms-autohiding-scrollbar;
    }
    .large-cell-block-container {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-direction: column;
        flex-direction: column;
        max-height: 100%;
    }
    .large-cell-block-container > .grid-x {
        max-height: 100%;
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    }
    .large-cell-block-y {
        overflow-y: auto;
        max-height: 100%;
        -webkit-overflow-scrolling: touch;
        -ms-overflow-stype: -ms-autohiding-scrollbar;
    }
}
@media screen and (min-width: 80em) {
    .xlarge-grid-frame {
        overflow: hidden;
        position: relative;
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
        -ms-flex-align: stretch;
        align-items: stretch;
        width: 100vw;
    }
    .cell .xlarge-grid-frame {
        width: 100%;
    }
    .xlarge-cell-block {
        overflow-x: auto;
        max-width: 100%;
        -webkit-overflow-scrolling: touch;
        -ms-overflow-stype: -ms-autohiding-scrollbar;
    }
    .xlarge-cell-block-container {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-direction: column;
        flex-direction: column;
        max-height: 100%;
    }
    .xlarge-cell-block-container > .grid-x {
        max-height: 100%;
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    }
    .xlarge-cell-block-y {
        overflow-y: auto;
        max-height: 100%;
        -webkit-overflow-scrolling: touch;
        -ms-overflow-stype: -ms-autohiding-scrollbar;
    }
}
@media screen and (min-width: 105em) {
    .xxlarge-grid-frame {
        overflow: hidden;
        position: relative;
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
        -ms-flex-align: stretch;
        align-items: stretch;
        width: 100vw;
    }
    .cell .xxlarge-grid-frame {
        width: 100%;
    }
    .xxlarge-cell-block {
        overflow-x: auto;
        max-width: 100%;
        -webkit-overflow-scrolling: touch;
        -ms-overflow-stype: -ms-autohiding-scrollbar;
    }
    .xxlarge-cell-block-container {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-direction: column;
        flex-direction: column;
        max-height: 100%;
    }
    .xxlarge-cell-block-container > .grid-x {
        max-height: 100%;
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    }
    .xxlarge-cell-block-y {
        overflow-y: auto;
        max-height: 100%;
        -webkit-overflow-scrolling: touch;
        -ms-overflow-stype: -ms-autohiding-scrollbar;
    }
}
.grid-y.grid-frame {
    width: auto;
    overflow: hidden;
    position: relative;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -ms-flex-align: stretch;
    align-items: stretch;
    height: 100vh;
}
@media print, screen and (min-width: 40em) {
    .grid-y.medium-grid-frame {
        width: auto;
        overflow: hidden;
        position: relative;
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
        -ms-flex-align: stretch;
        align-items: stretch;
        height: 100vh;
    }
}
@media print, screen and (min-width: 64.0625em) {
    .grid-y.large-grid-frame {
        width: auto;
        overflow: hidden;
        position: relative;
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
        -ms-flex-align: stretch;
        align-items: stretch;
        height: 100vh;
    }
}
@media screen and (min-width: 80em) {
    .grid-y.xlarge-grid-frame {
        width: auto;
        overflow: hidden;
        position: relative;
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
        -ms-flex-align: stretch;
        align-items: stretch;
        height: 100vh;
    }
}
@media screen and (min-width: 105em) {
    .grid-y.xxlarge-grid-frame {
        width: auto;
        overflow: hidden;
        position: relative;
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
        -ms-flex-align: stretch;
        align-items: stretch;
        height: 100vh;
    }
}
.cell .grid-y.grid-frame {
    height: 100%;
}
@media print, screen and (min-width: 40em) {
    .cell .grid-y.medium-grid-frame {
        height: 100%;
    }
}
@media print, screen and (min-width: 64.0625em) {
    .cell .grid-y.large-grid-frame {
        height: 100%;
    }
}
@media screen and (min-width: 80em) {
    .cell .grid-y.xlarge-grid-frame {
        height: 100%;
    }
}
@media screen and (min-width: 105em) {
    .cell .grid-y.xxlarge-grid-frame {
        height: 100%;
    }
}
.grid-margin-y {
    margin-top: -0.625rem;
    margin-bottom: -0.625rem;
}
@media print, screen and (min-width: 40em) {
    .grid-margin-y {
        margin-top: -0.9375rem;
        margin-bottom: -0.9375rem;
    }
}
@media print, screen and (min-width: 64.0625em) {
    .grid-margin-y {
        margin-top: -1.25rem;
        margin-bottom: -1.25rem;
    }
}
.grid-margin-y > .cell {
    height: calc(100% - 1.25rem);
    margin-top: 0.625rem;
    margin-bottom: 0.625rem;
}
@media print, screen and (min-width: 40em) {
    .grid-margin-y > .cell {
        height: calc(100% - 1.875rem);
        margin-top: 0.9375rem;
        margin-bottom: 0.9375rem;
    }
}
@media print, screen and (min-width: 64.0625em) {
    .grid-margin-y > .cell {
        height: calc(100% - 2.5rem);
        margin-top: 1.25rem;
        margin-bottom: 1.25rem;
    }
}
.grid-margin-y > .auto,
.grid-margin-y > .shrink {
    height: auto;
}
.grid-margin-y > .small-1 {
    height: calc(8.33333% - 1.25rem);
}
.grid-margin-y > .small-2 {
    height: calc(16.66667% - 1.25rem);
}
.grid-margin-y > .small-3 {
    height: calc(25% - 1.25rem);
}
.grid-margin-y > .small-4 {
    height: calc(33.33333% - 1.25rem);
}
.grid-margin-y > .small-5 {
    height: calc(41.66667% - 1.25rem);
}
.grid-margin-y > .small-6 {
    height: calc(50% - 1.25rem);
}
.grid-margin-y > .small-7 {
    height: calc(58.33333% - 1.25rem);
}
.grid-margin-y > .small-8 {
    height: calc(66.66667% - 1.25rem);
}
.grid-margin-y > .small-9 {
    height: calc(75% - 1.25rem);
}
.grid-margin-y > .small-10 {
    height: calc(83.33333% - 1.25rem);
}
.grid-margin-y > .small-11 {
    height: calc(91.66667% - 1.25rem);
}
.grid-margin-y > .small-12 {
    height: calc(100% - 1.25rem);
}
@media print, screen and (min-width: 40em) {
    .grid-margin-y > .auto,
    .grid-margin-y > .shrink {
        height: auto;
    }
    .grid-margin-y > .small-1 {
        height: calc(8.33333% - 1.875rem);
    }
    .grid-margin-y > .small-2 {
        height: calc(16.66667% - 1.875rem);
    }
    .grid-margin-y > .small-3 {
        height: calc(25% - 1.875rem);
    }
    .grid-margin-y > .small-4 {
        height: calc(33.33333% - 1.875rem);
    }
    .grid-margin-y > .small-5 {
        height: calc(41.66667% - 1.875rem);
    }
    .grid-margin-y > .small-6 {
        height: calc(50% - 1.875rem);
    }
    .grid-margin-y > .small-7 {
        height: calc(58.33333% - 1.875rem);
    }
    .grid-margin-y > .small-8 {
        height: calc(66.66667% - 1.875rem);
    }
    .grid-margin-y > .small-9 {
        height: calc(75% - 1.875rem);
    }
    .grid-margin-y > .small-10 {
        height: calc(83.33333% - 1.875rem);
    }
    .grid-margin-y > .small-11 {
        height: calc(91.66667% - 1.875rem);
    }
    .grid-margin-y > .small-12 {
        height: calc(100% - 1.875rem);
    }
    .grid-margin-y > .medium-auto,
    .grid-margin-y > .medium-shrink {
        height: auto;
    }
    .grid-margin-y > .medium-1 {
        height: calc(8.33333% - 1.875rem);
    }
    .grid-margin-y > .medium-2 {
        height: calc(16.66667% - 1.875rem);
    }
    .grid-margin-y > .medium-3 {
        height: calc(25% - 1.875rem);
    }
    .grid-margin-y > .medium-4 {
        height: calc(33.33333% - 1.875rem);
    }
    .grid-margin-y > .medium-5 {
        height: calc(41.66667% - 1.875rem);
    }
    .grid-margin-y > .medium-6 {
        height: calc(50% - 1.875rem);
    }
    .grid-margin-y > .medium-7 {
        height: calc(58.33333% - 1.875rem);
    }
    .grid-margin-y > .medium-8 {
        height: calc(66.66667% - 1.875rem);
    }
    .grid-margin-y > .medium-9 {
        height: calc(75% - 1.875rem);
    }
    .grid-margin-y > .medium-10 {
        height: calc(83.33333% - 1.875rem);
    }
    .grid-margin-y > .medium-11 {
        height: calc(91.66667% - 1.875rem);
    }
    .grid-margin-y > .medium-12 {
        height: calc(100% - 1.875rem);
    }
}
@media print, screen and (min-width: 64.0625em) {
    .grid-margin-y > .auto,
    .grid-margin-y > .shrink {
        height: auto;
    }
    .grid-margin-y > .small-1 {
        height: calc(8.33333% - 2.5rem);
    }
    .grid-margin-y > .small-2 {
        height: calc(16.66667% - 2.5rem);
    }
    .grid-margin-y > .small-3 {
        height: calc(25% - 2.5rem);
    }
    .grid-margin-y > .small-4 {
        height: calc(33.33333% - 2.5rem);
    }
    .grid-margin-y > .small-5 {
        height: calc(41.66667% - 2.5rem);
    }
    .grid-margin-y > .small-6 {
        height: calc(50% - 2.5rem);
    }
    .grid-margin-y > .small-7 {
        height: calc(58.33333% - 2.5rem);
    }
    .grid-margin-y > .small-8 {
        height: calc(66.66667% - 2.5rem);
    }
    .grid-margin-y > .small-9 {
        height: calc(75% - 2.5rem);
    }
    .grid-margin-y > .small-10 {
        height: calc(83.33333% - 2.5rem);
    }
    .grid-margin-y > .small-11 {
        height: calc(91.66667% - 2.5rem);
    }
    .grid-margin-y > .small-12 {
        height: calc(100% - 2.5rem);
    }
    .grid-margin-y > .medium-auto,
    .grid-margin-y > .medium-shrink {
        height: auto;
    }
    .grid-margin-y > .medium-1 {
        height: calc(8.33333% - 2.5rem);
    }
    .grid-margin-y > .medium-2 {
        height: calc(16.66667% - 2.5rem);
    }
    .grid-margin-y > .medium-3 {
        height: calc(25% - 2.5rem);
    }
    .grid-margin-y > .medium-4 {
        height: calc(33.33333% - 2.5rem);
    }
    .grid-margin-y > .medium-5 {
        height: calc(41.66667% - 2.5rem);
    }
    .grid-margin-y > .medium-6 {
        height: calc(50% - 2.5rem);
    }
    .grid-margin-y > .medium-7 {
        height: calc(58.33333% - 2.5rem);
    }
    .grid-margin-y > .medium-8 {
        height: calc(66.66667% - 2.5rem);
    }
    .grid-margin-y > .medium-9 {
        height: calc(75% - 2.5rem);
    }
    .grid-margin-y > .medium-10 {
        height: calc(83.33333% - 2.5rem);
    }
    .grid-margin-y > .medium-11 {
        height: calc(91.66667% - 2.5rem);
    }
    .grid-margin-y > .medium-12 {
        height: calc(100% - 2.5rem);
    }
    .grid-margin-y > .large-auto,
    .grid-margin-y > .large-shrink {
        height: auto;
    }
    .grid-margin-y > .large-1 {
        height: calc(8.33333% - 2.5rem);
    }
    .grid-margin-y > .large-2 {
        height: calc(16.66667% - 2.5rem);
    }
    .grid-margin-y > .large-3 {
        height: calc(25% - 2.5rem);
    }
    .grid-margin-y > .large-4 {
        height: calc(33.33333% - 2.5rem);
    }
    .grid-margin-y > .large-5 {
        height: calc(41.66667% - 2.5rem);
    }
    .grid-margin-y > .large-6 {
        height: calc(50% - 2.5rem);
    }
    .grid-margin-y > .large-7 {
        height: calc(58.33333% - 2.5rem);
    }
    .grid-margin-y > .large-8 {
        height: calc(66.66667% - 2.5rem);
    }
    .grid-margin-y > .large-9 {
        height: calc(75% - 2.5rem);
    }
    .grid-margin-y > .large-10 {
        height: calc(83.33333% - 2.5rem);
    }
    .grid-margin-y > .large-11 {
        height: calc(91.66667% - 2.5rem);
    }
    .grid-margin-y > .large-12 {
        height: calc(100% - 2.5rem);
    }
}
@media screen and (min-width: 80em) {
    .grid-margin-y > .xlarge-auto,
    .grid-margin-y > .xlarge-shrink {
        height: auto;
    }
    .grid-margin-y > .xlarge-1 {
        height: calc(8.33333% - 2.5rem);
    }
    .grid-margin-y > .xlarge-2 {
        height: calc(16.66667% - 2.5rem);
    }
    .grid-margin-y > .xlarge-3 {
        height: calc(25% - 2.5rem);
    }
    .grid-margin-y > .xlarge-4 {
        height: calc(33.33333% - 2.5rem);
    }
    .grid-margin-y > .xlarge-5 {
        height: calc(41.66667% - 2.5rem);
    }
    .grid-margin-y > .xlarge-6 {
        height: calc(50% - 2.5rem);
    }
    .grid-margin-y > .xlarge-7 {
        height: calc(58.33333% - 2.5rem);
    }
    .grid-margin-y > .xlarge-8 {
        height: calc(66.66667% - 2.5rem);
    }
    .grid-margin-y > .xlarge-9 {
        height: calc(75% - 2.5rem);
    }
    .grid-margin-y > .xlarge-10 {
        height: calc(83.33333% - 2.5rem);
    }
    .grid-margin-y > .xlarge-11 {
        height: calc(91.66667% - 2.5rem);
    }
    .grid-margin-y > .xlarge-12 {
        height: calc(100% - 2.5rem);
    }
}
@media screen and (min-width: 105em) {
    .grid-margin-y > .xxlarge-auto,
    .grid-margin-y > .xxlarge-shrink {
        height: auto;
    }
    .grid-margin-y > .xxlarge-1 {
        height: calc(8.33333% - 2.5rem);
    }
    .grid-margin-y > .xxlarge-2 {
        height: calc(16.66667% - 2.5rem);
    }
    .grid-margin-y > .xxlarge-3 {
        height: calc(25% - 2.5rem);
    }
    .grid-margin-y > .xxlarge-4 {
        height: calc(33.33333% - 2.5rem);
    }
    .grid-margin-y > .xxlarge-5 {
        height: calc(41.66667% - 2.5rem);
    }
    .grid-margin-y > .xxlarge-6 {
        height: calc(50% - 2.5rem);
    }
    .grid-margin-y > .xxlarge-7 {
        height: calc(58.33333% - 2.5rem);
    }
    .grid-margin-y > .xxlarge-8 {
        height: calc(66.66667% - 2.5rem);
    }
    .grid-margin-y > .xxlarge-9 {
        height: calc(75% - 2.5rem);
    }
    .grid-margin-y > .xxlarge-10 {
        height: calc(83.33333% - 2.5rem);
    }
    .grid-margin-y > .xxlarge-11 {
        height: calc(91.66667% - 2.5rem);
    }
    .grid-margin-y > .xxlarge-12 {
        height: calc(100% - 2.5rem);
    }
}
.grid-frame.grid-margin-y {
    height: calc(100vh + 1.25rem);
}
@media print, screen and (min-width: 40em) {
    .grid-frame.grid-margin-y {
        height: calc(100vh + 1.875rem);
    }
}
@media print, screen and (min-width: 64.0625em) {
    .grid-frame.grid-margin-y {
        height: calc(100vh + 2.5rem);
    }
}
@media screen and (min-width: 80em) {
    .grid-frame.grid-margin-y {
        height: calc(100vh + 2.5rem);
    }
}
@media screen and (min-width: 105em) {
    .grid-frame.grid-margin-y {
        height: calc(100vh + 2.5rem);
    }
}
@media print, screen and (min-width: 40em) {
    .grid-margin-y.medium-grid-frame {
        height: calc(100vh + 1.875rem);
    }
}
@media print, screen and (min-width: 64.0625em) {
    .grid-margin-y.large-grid-frame {
        height: calc(100vh + 2.5rem);
    }
}
@media screen and (min-width: 80em) {
    .grid-margin-y.xlarge-grid-frame {
        height: calc(100vh + 2.5rem);
    }
}
@media screen and (min-width: 105em) {
    .grid-margin-y.xxlarge-grid-frame {
        height: calc(100vh + 2.5rem);
    }
}
.align-right {
    -ms-flex-pack: end;
    justify-content: flex-end;
}
.align-center {
    -ms-flex-pack: center;
    justify-content: center;
}
.align-justify {
    -ms-flex-pack: justify;
    justify-content: space-between;
}
.align-spaced {
    -ms-flex-pack: distribute;
    justify-content: space-around;
}
.align-right.vertical.menu > li > a {
    -ms-flex-pack: end;
    justify-content: flex-end;
}
.align-center.vertical.menu > li > a {
    -ms-flex-pack: center;
    justify-content: center;
}
.align-top {
    -ms-flex-align: start;
    align-items: flex-start;
}
.align-self-top {
    -ms-flex-item-align: start;
    align-self: flex-start;
}
.align-bottom {
    -ms-flex-align: end;
    align-items: flex-end;
}
.align-self-bottom {
    -ms-flex-item-align: end;
    align-self: flex-end;
}
.align-middle {
    -ms-flex-align: center;
    align-items: center;
}
.align-self-middle {
    -ms-flex-item-align: center;
    -ms-grid-row-align: center;
    align-self: center;
}
.align-stretch {
    -ms-flex-align: stretch;
    align-items: stretch;
}
.align-self-stretch {
    -ms-flex-item-align: stretch;
    -ms-grid-row-align: stretch;
    align-self: stretch;
}
.align-center-middle {
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-line-pack: center;
    align-content: center;
}
.small-order-1 {
    -ms-flex-order: 1;
    order: 1;
}
.small-order-2 {
    -ms-flex-order: 2;
    order: 2;
}
.small-order-3 {
    -ms-flex-order: 3;
    order: 3;
}
.small-order-4 {
    -ms-flex-order: 4;
    order: 4;
}
.small-order-5 {
    -ms-flex-order: 5;
    order: 5;
}
.small-order-6 {
    -ms-flex-order: 6;
    order: 6;
}
@media print, screen and (min-width: 40em) {
    .medium-order-1 {
        -ms-flex-order: 1;
        order: 1;
    }
    .medium-order-2 {
        -ms-flex-order: 2;
        order: 2;
    }
    .medium-order-3 {
        -ms-flex-order: 3;
        order: 3;
    }
    .medium-order-4 {
        -ms-flex-order: 4;
        order: 4;
    }
    .medium-order-5 {
        -ms-flex-order: 5;
        order: 5;
    }
    .medium-order-6 {
        -ms-flex-order: 6;
        order: 6;
    }
}
@media print, screen and (min-width: 64.0625em) {
    .large-order-1 {
        -ms-flex-order: 1;
        order: 1;
    }
    .large-order-2 {
        -ms-flex-order: 2;
        order: 2;
    }
    .large-order-3 {
        -ms-flex-order: 3;
        order: 3;
    }
    .large-order-4 {
        -ms-flex-order: 4;
        order: 4;
    }
    .large-order-5 {
        -ms-flex-order: 5;
        order: 5;
    }
    .large-order-6 {
        -ms-flex-order: 6;
        order: 6;
    }
}
@media screen and (min-width: 80em) {
    .xlarge-order-1 {
        -ms-flex-order: 1;
        order: 1;
    }
    .xlarge-order-2 {
        -ms-flex-order: 2;
        order: 2;
    }
    .xlarge-order-3 {
        -ms-flex-order: 3;
        order: 3;
    }
    .xlarge-order-4 {
        -ms-flex-order: 4;
        order: 4;
    }
    .xlarge-order-5 {
        -ms-flex-order: 5;
        order: 5;
    }
    .xlarge-order-6 {
        -ms-flex-order: 6;
        order: 6;
    }
}
@media screen and (min-width: 105em) {
    .xxlarge-order-1 {
        -ms-flex-order: 1;
        order: 1;
    }
    .xxlarge-order-2 {
        -ms-flex-order: 2;
        order: 2;
    }
    .xxlarge-order-3 {
        -ms-flex-order: 3;
        order: 3;
    }
    .xxlarge-order-4 {
        -ms-flex-order: 4;
        order: 4;
    }
    .xxlarge-order-5 {
        -ms-flex-order: 5;
        order: 5;
    }
    .xxlarge-order-6 {
        -ms-flex-order: 6;
        order: 6;
    }
}
.flex-container {
    display: -ms-flexbox;
    display: flex;
}
.flex-child-auto {
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
}
.flex-child-grow {
    -ms-flex: 1 0 auto;
    flex: 1 0 auto;
}
.flex-child-shrink {
    -ms-flex: 0 1 auto;
    flex: 0 1 auto;
}
.flex-dir-row {
    -ms-flex-direction: row;
    flex-direction: row;
}
.flex-dir-row-reverse {
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
}
.flex-dir-column {
    -ms-flex-direction: column;
    flex-direction: column;
}
.flex-dir-column-reverse {
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
}
@media print, screen and (min-width: 40em) {
    .medium-flex-container {
        display: -ms-flexbox;
        display: flex;
    }
    .medium-flex-child-auto {
        -ms-flex: 1 1 auto;
        flex: 1 1 auto;
    }
    .medium-flex-child-grow {
        -ms-flex: 1 0 auto;
        flex: 1 0 auto;
    }
    .medium-flex-child-shrink {
        -ms-flex: 0 1 auto;
        flex: 0 1 auto;
    }
    .medium-flex-dir-row {
        -ms-flex-direction: row;
        flex-direction: row;
    }
    .medium-flex-dir-row-reverse {
        -ms-flex-direction: row-reverse;
        flex-direction: row-reverse;
    }
    .medium-flex-dir-column {
        -ms-flex-direction: column;
        flex-direction: column;
    }
    .medium-flex-dir-column-reverse {
        -ms-flex-direction: column-reverse;
        flex-direction: column-reverse;
    }
}
@media print, screen and (min-width: 64.0625em) {
    .large-flex-container {
        display: -ms-flexbox;
        display: flex;
    }
    .large-flex-child-auto {
        -ms-flex: 1 1 auto;
        flex: 1 1 auto;
    }
    .large-flex-child-grow {
        -ms-flex: 1 0 auto;
        flex: 1 0 auto;
    }
    .large-flex-child-shrink {
        -ms-flex: 0 1 auto;
        flex: 0 1 auto;
    }
    .large-flex-dir-row {
        -ms-flex-direction: row;
        flex-direction: row;
    }
    .large-flex-dir-row-reverse {
        -ms-flex-direction: row-reverse;
        flex-direction: row-reverse;
    }
    .large-flex-dir-column {
        -ms-flex-direction: column;
        flex-direction: column;
    }
    .large-flex-dir-column-reverse {
        -ms-flex-direction: column-reverse;
        flex-direction: column-reverse;
    }
}
@media screen and (min-width: 80em) {
    .xlarge-flex-container {
        display: -ms-flexbox;
        display: flex;
    }
    .xlarge-flex-child-auto {
        -ms-flex: 1 1 auto;
        flex: 1 1 auto;
    }
    .xlarge-flex-child-grow {
        -ms-flex: 1 0 auto;
        flex: 1 0 auto;
    }
    .xlarge-flex-child-shrink {
        -ms-flex: 0 1 auto;
        flex: 0 1 auto;
    }
    .xlarge-flex-dir-row {
        -ms-flex-direction: row;
        flex-direction: row;
    }
    .xlarge-flex-dir-row-reverse {
        -ms-flex-direction: row-reverse;
        flex-direction: row-reverse;
    }
    .xlarge-flex-dir-column {
        -ms-flex-direction: column;
        flex-direction: column;
    }
    .xlarge-flex-dir-column-reverse {
        -ms-flex-direction: column-reverse;
        flex-direction: column-reverse;
    }
}
@media screen and (min-width: 105em) {
    .xxlarge-flex-container {
        display: -ms-flexbox;
        display: flex;
    }
    .xxlarge-flex-child-auto {
        -ms-flex: 1 1 auto;
        flex: 1 1 auto;
    }
    .xxlarge-flex-child-grow {
        -ms-flex: 1 0 auto;
        flex: 1 0 auto;
    }
    .xxlarge-flex-child-shrink {
        -ms-flex: 0 1 auto;
        flex: 0 1 auto;
    }
    .xxlarge-flex-dir-row {
        -ms-flex-direction: row;
        flex-direction: row;
    }
    .xxlarge-flex-dir-row-reverse {
        -ms-flex-direction: row-reverse;
        flex-direction: row-reverse;
    }
    .xxlarge-flex-dir-column {
        -ms-flex-direction: column;
        flex-direction: column;
    }
    .xxlarge-flex-dir-column-reverse {
        -ms-flex-direction: column-reverse;
        flex-direction: column-reverse;
    }
}
blockquote,
dd,
div,
dl,
dt,
form,
h1,
h2,
h3,
h4,
h5,
h6,
li,
ol,
p,
pre,
td,
th,
ul {
    margin: 0;
    padding: 0;
}
p {
    margin-bottom: 0;
    font-size: inherit;
    text-rendering: optimizeLegibility;
}
em,
i,
p {
    line-height: inherit;
}
em,
i {
    font-style: italic;
}
b,
strong {
    font-weight: 700;
}
b,
small,
strong {
    line-height: inherit;
}
small {
    font-size: 80%;
}
.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: Helvetica Neue, Helvetica, Roboto, Arial, sans-serif;
    font-style: normal;
    font-weight: 400;
    color: inherit;
    text-rendering: optimizeLegibility;
}
.h1 small,
.h2 small,
.h3 small,
.h4 small,
.h5 small,
.h6 small,
h1 small,
h2 small,
h3 small,
h4 small,
h5 small,
h6 small {
    line-height: 0;
    color: #cacaca;
}
.h1,
h1 {
    font-size: 1.5rem;
}
.h1,
.h2,
h1,
h2 {
    line-height: 1.4;
    margin-top: 0;
    margin-bottom: 0.5rem;
}
.h2,
h2 {
    font-size: 1.25rem;
}
.h3,
h3 {
    font-size: 1.1875rem;
}
.h3,
.h4,
h3,
h4 {
    line-height: 1.4;
    margin-top: 0;
    margin-bottom: 0.5rem;
}
.h4,
h4 {
    font-size: 1.125rem;
}
.h5,
h5 {
    font-size: 1.0625rem;
}
.h5,
.h6,
h5,
h6 {
    line-height: 1.4;
    margin-top: 0;
    margin-bottom: 0.5rem;
}
.h6,
h6 {
    font-size: 1rem;
}
@media print, screen and (min-width: 40em) {
    .h1,
    h1 {
        font-size: 3rem;
    }
    .h2,
    h2 {
        font-size: 2.5rem;
    }
    .h3,
    h3 {
        font-size: 1.9375rem;
    }
    .h4,
    h4 {
        font-size: 1.5625rem;
    }
    .h5,
    h5 {
        font-size: 1.25rem;
    }
    .h6,
    h6 {
        font-size: 1rem;
    }
}
a {
    line-height: inherit;
    text-decoration: none;
    cursor: pointer;
}
a,
a:focus,
a:hover {
    color: inherit;
}
a img {
    border: 0;
}
hr {
    clear: both;
    max-width: 75rem;
    height: 0;
    margin: 1.25rem auto;
    border-top: 0;
    border-right: 0;
    border-bottom: 1px solid #cacaca;
    border-left: 0;
}
dl,
ol,
ul {
    margin-bottom: 1rem;
    list-style-position: outside;
    line-height: 1.6;
}
li {
    font-size: inherit;
}
ul {
    list-style-type: disc;
}
ol,
ul {
    margin-left: 1.25rem;
}
ol ol,
ol ul,
ul ol,
ul ul {
    margin-left: 1.25rem;
    margin-bottom: 0;
}
dl {
    margin-bottom: 1rem;
}
dl dt {
    margin-bottom: 0.3rem;
    font-weight: 700;
}
blockquote {
    margin: 0;
    padding: 0.5625rem 1.25rem 0 1.1875rem;
    border-left: 1px solid #cacaca;
}
blockquote,
blockquote p {
    line-height: inherit;
    color: #8a8a8a;
}
cite {
    display: block;
    font-size: 0.8125rem;
    color: #8a8a8a;
}
cite:before {
    content: "— ";
}
abbr,
abbr[title] {
    border-bottom: 1px dotted #000;
    cursor: help;
    text-decoration: none;
}
figure {
    margin: 0;
}
code {
    padding: 0.125rem 0.3125rem 0.0625rem;
    border: 1px solid #cacaca;
    font-weight: 400;
}
code,
kbd {
    background-color: #e6e6e6;
    font-family: Consolas, Liberation Mono, Courier, monospace;
    color: #000;
}
kbd {
    margin: 0;
    padding: 0.125rem 0.25rem 0;
}
.subheader {
    margin-top: 0.2rem;
    margin-bottom: 0.5rem;
    font-weight: 400;
    line-height: 1.4;
    color: #8a8a8a;
}
.lead {
    font-size: 125%;
    line-height: 1.6;
}
.stat {
    font-size: 2.5rem;
    line-height: 1;
}
p + .stat {
    margin-top: -1rem;
}
ol.no-bullet,
ul.no-bullet {
    margin-left: 0;
    list-style: none;
}
.text-left {
    text-align: left;
}
.text-right {
    text-align: right;
}
.text-center {
    text-align: center;
}
.text-justify {
    text-align: justify;
}
@media print, screen and (min-width: 40em) {
    .medium-text-left {
        text-align: left;
    }
    .medium-text-right {
        text-align: right;
    }
    .medium-text-center {
        text-align: center;
    }
    .medium-text-justify {
        text-align: justify;
    }
}
@media print, screen and (min-width: 64.0625em) {
    .large-text-left {
        text-align: left;
    }
    .large-text-right {
        text-align: right;
    }
    .large-text-center {
        text-align: center;
    }
    .large-text-justify {
        text-align: justify;
    }
}
@media screen and (min-width: 80em) {
    .xlarge-text-left {
        text-align: left;
    }
    .xlarge-text-right {
        text-align: right;
    }
    .xlarge-text-center {
        text-align: center;
    }
    .xlarge-text-justify {
        text-align: justify;
    }
}
@media screen and (min-width: 105em) {
    .xxlarge-text-left {
        text-align: left;
    }
    .xxlarge-text-right {
        text-align: right;
    }
    .xxlarge-text-center {
        text-align: center;
    }
    .xxlarge-text-justify {
        text-align: justify;
    }
}
.show-for-print {
    display: none !important;
}
@media print {
    * {
        background: transparent !important;
        box-shadow: none !important;
        color: #000 !important;
        text-shadow: none !important;
    }
    .show-for-print {
        display: block !important;
    }
    .hide-for-print {
        display: none !important;
    }
    table.show-for-print {
        display: table !important;
    }
    thead.show-for-print {
        display: table-header-group !important;
    }
    tbody.show-for-print {
        display: table-row-group !important;
    }
    tr.show-for-print {
        display: table-row !important;
    }
    td.show-for-print,
    th.show-for-print {
        display: table-cell !important;
    }
    a,
    a:visited {
        text-decoration: underline;
    }
    a[href]:after {
        content: " (" attr(href) ")";
    }
    .ir a:after,
    a[href^="#"]:after,
    a[href^="javascript:"]:after {
        content: "";
    }
    abbr[title]:after {
        content: " (" attr(title) ")";
    }
    blockquote,
    pre {
        border: 1px solid #8a8a8a;
        page-break-inside: avoid;
    }
    thead {
        display: table-header-group;
    }
    img,
    tr {
        page-break-inside: avoid;
    }
    img {
        max-width: 100% !important;
    }
    @page {
        margin: 0.5cm;
    }
    h2,
    h3,
    p {
        orphans: 3;
        widows: 3;
    }
    h2,
    h3 {
        page-break-after: avoid;
    }
    .print-break-inside {
        page-break-inside: auto;
    }
}
.swiper-container {
    margin: 0 auto;
    position: relative;
    overflow: hidden;
    list-style: none;
    padding: 0;
    z-index: 1;
}
.swiper-container-no-flexbox .swiper-slide {
    float: left;
}
.swiper-container-vertical > .swiper-wrapper {
    -ms-flex-direction: column;
    flex-direction: column;
}
.swiper-wrapper {
    position: relative;
    width: 100%;
    height: 100%;
    z-index: 1;
    display: -ms-flexbox;
    display: flex;
    transition-property: transform;
    box-sizing: content-box;
}
.swiper-container-android .swiper-slide,
.swiper-wrapper {
    transform: translateZ(0);
}
.swiper-container-multirow > .swiper-wrapper {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.swiper-container-free-mode > .swiper-wrapper {
    transition-timing-function: ease-out;
    margin: 0 auto;
}
.swiper-slide {
    -ms-flex-negative: 0;
    flex-shrink: 0;
    width: 100%;
    height: 100%;
    position: relative;
    transition-property: transform;
}
.swiper-invisible-blank-slide {
    visibility: hidden;
}
.swiper-container-autoheight,
.swiper-container-autoheight .swiper-slide {
    height: auto;
}
.swiper-container-autoheight .swiper-wrapper {
    -ms-flex-align: start;
    align-items: flex-start;
    transition-property: transform, height;
}
.swiper-container-3d {
    perspective: 1200px;
}
.swiper-container-3d .swiper-cube-shadow,
.swiper-container-3d .swiper-slide,
.swiper-container-3d .swiper-slide-shadow-bottom,
.swiper-container-3d .swiper-slide-shadow-left,
.swiper-container-3d .swiper-slide-shadow-right,
.swiper-container-3d .swiper-slide-shadow-top,
.swiper-container-3d .swiper-wrapper {
    transform-style: preserve-3d;
}
.swiper-container-3d .swiper-slide-shadow-bottom,
.swiper-container-3d .swiper-slide-shadow-left,
.swiper-container-3d .swiper-slide-shadow-right,
.swiper-container-3d .swiper-slide-shadow-top {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 10;
}
.swiper-container-3d .swiper-slide-shadow-left {
    background-image: linear-gradient(270deg, rgba(0, 0, 0, 0.5), transparent);
}
.swiper-container-3d .swiper-slide-shadow-right {
    background-image: linear-gradient(90deg, rgba(0, 0, 0, 0.5), transparent);
}
.swiper-container-3d .swiper-slide-shadow-top {
    background-image: linear-gradient(0deg, rgba(0, 0, 0, 0.5), transparent);
}
.swiper-container-3d .swiper-slide-shadow-bottom {
    background-image: linear-gradient(180deg, rgba(0, 0, 0, 0.5), transparent);
}
.swiper-container-wp8-horizontal,
.swiper-container-wp8-horizontal > .swiper-wrapper {
    -ms-touch-action: pan-y;
    touch-action: pan-y;
}
.swiper-container-wp8-vertical,
.swiper-container-wp8-vertical > .swiper-wrapper {
    -ms-touch-action: pan-x;
    touch-action: pan-x;
}
.swiper-button-next,
.swiper-button-prev {
    position: absolute;
    top: 50%;
    width: 27px;
    height: 44px;
    margin-top: -22px;
    z-index: 10;
    cursor: pointer;
    background-size: 27px 44px;
    background-position: 50%;
    background-repeat: no-repeat;
}

.swiper-button-next.swiper-button-disabled,
.swiper-button-prev.swiper-button-disabled {
    opacity: 0.35;
    cursor: auto;
    pointer-events: none;
}
.swiper-button-prev,
.swiper-container-rtl .swiper-button-next {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M0 22L22 0l2.1 2.1L4.2 22l19.9 19.9L22 44 0 22z' fill='%233cd22d'/%3E%3C/svg%3E");
    left: 10px;
    right: auto;
}
.swiper-button-next,
.swiper-container-rtl .swiper-button-prev {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M27 22L5 44l-2.1-2.1L22.8 22 2.9 2.1 5 0l22 22z' fill='%233cd22d'/%3E%3C/svg%3E");
    right: 10px;
    left: auto;
}
.swiper-button-prev.swiper-button-white,
.swiper-container-rtl .swiper-button-next.swiper-button-white {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M0 22L22 0l2.1 2.1L4.2 22l19.9 19.9L22 44 0 22z' fill='%23fff'/%3E%3C/svg%3E");
}
.swiper-button-next.swiper-button-white,
.swiper-container-rtl .swiper-button-prev.swiper-button-white {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M27 22L5 44l-2.1-2.1L22.8 22 2.9 2.1 5 0l22 22z' fill='%23fff'/%3E%3C/svg%3E");
}
.swiper-button-prev.swiper-button-black,
.swiper-container-rtl .swiper-button-next.swiper-button-black {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M0 22L22 0l2.1 2.1L4.2 22l19.9 19.9L22 44 0 22z'/%3E%3C/svg%3E");
}
.swiper-button-next.swiper-button-black,
.swiper-container-rtl .swiper-button-prev.swiper-button-black {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M27 22L5 44l-2.1-2.1L22.8 22 2.9 2.1 5 0l22 22z'/%3E%3C/svg%3E");
}
.swiper-button-lock {
    display: none;
}
.swiper-pagination {
    position: absolute;
    text-align: center;
    transition: opacity 0.3s;
    transform: translateZ(0);
    z-index: 10;
}
.single-realisations .swiper-pagination {
    top: 10px;
    bottom: 0;
}

/* @changelog 2020-07-29 [FIX] Anne-Lyse/Medialibs - Modification des flèches de navigation des sliders */
.single-realisations .swiper-button-next,
.single-realisations .swiper-button-prev {

    background-color: #fff;
    background-size: 20px auto;
    background-position: center;
    border-radius: 50%;
    width: 50px;
    height: 50px;
}

.swiper-pagination.swiper-pagination-hidden {
    opacity: 0;
}
.swiper-container-horizontal > .swiper-pagination-bullets,
.swiper-pagination-custom,
.swiper-pagination-fraction {
    bottom: 10px;
    left: 0;
    width: 100%;
}
.swiper-pagination-bullets-dynamic {
    overflow: hidden;
    font-size: 0;
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    transform: scale(0.33);
    position: relative;
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active,
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
    transform: scale(1);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
    transform: scale(0.66);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
    transform: scale(0.33);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
    transform: scale(0.66);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
    transform: scale(0.33);
}
.swiper-pagination-bullet {
    width: 8px;
    height: 8px;
    display: inline-block;
    border-radius: 100%;
    background: #000;
    opacity: 0.2;
}
button.swiper-pagination-bullet {
    border: none;
    margin: 0;
    padding: 0;
    box-shadow: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}
.swiper-pagination-clickable .swiper-pagination-bullet {
    cursor: pointer;
}
.swiper-pagination-bullet-active {
    opacity: 1;
    background: #007aff;
}
.swiper-container-vertical > .swiper-pagination-bullets {
    right: 10px;
    top: 50%;
    transform: translate3d(0, -50%, 0);
}
.swiper-container-vertical > .swiper-pagination-bullets .swiper-pagination-bullet {
    margin: 6px 0;
    display: block;
}
.swiper-container-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
    top: 50%;
    transform: translateY(-50%);
    width: 8px;
}
.swiper-container-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    display: inline-block;
    transition: transform 0.2s, top 0.2s;
}
.swiper-container-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet {
    margin: 0 4px;
}
.swiper-container-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
    left: 50%;
    transform: translateX(-50%);
    white-space: nowrap;
}
.swiper-container-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    transition: transform 0.2s, left 0.2s;
}
.swiper-container-horizontal.swiper-container-rtl > .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    transition: transform 0.2s, right 0.2s;
}
.swiper-pagination-progressbar {
    background: rgba(0, 0, 0, 0.25);
    position: absolute;
}
.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
    background: #007aff;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    transform: scale(0);
    transform-origin: left top;
}
.swiper-container-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
    transform-origin: right top;
}
.swiper-container-horizontal > .swiper-pagination-progressbar,
.swiper-container-vertical > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
    width: 100%;
    height: 4px;
    left: 0;
    top: 0;
}
.swiper-container-horizontal > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,
.swiper-container-vertical > .swiper-pagination-progressbar {
    width: 4px;
    height: 100%;
    left: 0;
    top: 0;
}
.swiper-pagination-white .swiper-pagination-bullet-active {
    background: #fff;
}
.swiper-pagination-progressbar.swiper-pagination-white {
    background: hsla(0, 0%, 100%, 0.25);
}
.swiper-pagination-progressbar.swiper-pagination-white .swiper-pagination-progressbar-fill {
    background: #fff;
}
.swiper-pagination-black .swiper-pagination-bullet-active {
    background: #000;
}
.swiper-pagination-progressbar.swiper-pagination-black {
    background: rgba(0, 0, 0, 0.25);
}
.swiper-pagination-progressbar.swiper-pagination-black .swiper-pagination-progressbar-fill {
    background: #000;
}
.swiper-pagination-lock {
    display: none;
}
.swiper-scrollbar {
    border-radius: 10px;
    position: relative;
    -ms-touch-action: none;
    background: rgba(0, 0, 0, 0.1);
}
.swiper-container-horizontal > .swiper-scrollbar {
    position: absolute;
    left: 1%;
    bottom: 3px;
    z-index: 50;
    height: 5px;
    width: 98%;
}
.swiper-container-vertical > .swiper-scrollbar {
    position: absolute;
    right: 3px;
    top: 1%;
    z-index: 50;
    width: 5px;
    height: 98%;
}
.swiper-scrollbar-drag {
    height: 100%;
    width: 100%;
    position: relative;
    background: rgba(0, 0, 0, 0.5);
    border-radius: 10px;
    left: 0;
    top: 0;
}
.swiper-scrollbar-cursor-drag {
    cursor: move;
}
.swiper-scrollbar-lock {
    display: none;
}
.swiper-zoom-container {
    width: 100%;
    height: 100%;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    text-align: center;
}
.swiper-zoom-container > canvas,
.swiper-zoom-container > img,
.swiper-zoom-container > svg {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
}
.swiper-slide-zoomed {
    cursor: move;
}
.swiper-lazy-preloader {
    width: 42px;
    height: 42px;
    position: absolute;
    left: 50%;
    top: 50%;
    margin-left: -21px;
    margin-top: -21px;
    z-index: 10;
    transform-origin: 50%;
    animation: a 1s steps(12) infinite;
}
.swiper-lazy-preloader:after {
    display: block;
    content: "";
    width: 100%;
    height: 100%;
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 120 120' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdefs%3E%3Cpath id='a' stroke='%236c6c6c' stroke-width='11' stroke-linecap='round' d='M60 7v20'/%3E%3C/defs%3E%3Cuse xlink:href='%23a' opacity='.27'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(30 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(60 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(90 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(120 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(150 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.37' transform='rotate(180 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.46' transform='rotate(210 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.56' transform='rotate(240 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.66' transform='rotate(270 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.75' transform='rotate(300 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.85' transform='rotate(330 60 60)'/%3E%3C/svg%3E");
    background-position: 50%;
    background-size: 100%;
    background-repeat: no-repeat;
}
.swiper-lazy-preloader-white:after {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 120 120' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdefs%3E%3Cpath id='a' stroke='%23fff' stroke-width='11' stroke-linecap='round' d='M60 7v20'/%3E%3C/defs%3E%3Cuse xlink:href='%23a' opacity='.27'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(30 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(60 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(90 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(120 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(150 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.37' transform='rotate(180 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.46' transform='rotate(210 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.56' transform='rotate(240 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.66' transform='rotate(270 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.75' transform='rotate(300 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.85' transform='rotate(330 60 60)'/%3E%3C/svg%3E");
}
@keyframes a {
    to {
        transform: rotate(1turn);
    }
}
.swiper-container .swiper-notification {
    position: absolute;
    left: 0;
    top: 0;
    pointer-events: none;
    opacity: 0;
    z-index: -1000;
}
.swiper-container-fade.swiper-container-free-mode .swiper-slide {
    transition-timing-function: ease-out;
}
.swiper-container-fade .swiper-slide {
    pointer-events: none;
    transition-property: opacity;
}
.swiper-container-fade .swiper-slide .swiper-slide {
    pointer-events: none;
}
.swiper-container-fade .swiper-slide-active,
.swiper-container-fade .swiper-slide-active .swiper-slide-active {
    pointer-events: auto;
}
.swiper-container-cube {
    overflow: visible;
}
.swiper-container-cube .swiper-slide {
    pointer-events: none;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    z-index: 1;
    visibility: hidden;
    transform-origin: 0 0;
    width: 100%;
    height: 100%;
}
.swiper-container-cube .swiper-slide .swiper-slide {
    pointer-events: none;
}
.swiper-container-cube.swiper-container-rtl .swiper-slide {
    transform-origin: 100% 0;
}
.swiper-container-cube .swiper-slide-active,
.swiper-container-cube .swiper-slide-active .swiper-slide-active {
    pointer-events: auto;
}
.swiper-container-cube .swiper-slide-active,
.swiper-container-cube .swiper-slide-next,
.swiper-container-cube .swiper-slide-next + .swiper-slide,
.swiper-container-cube .swiper-slide-prev {
    pointer-events: auto;
    visibility: visible;
}
.swiper-container-cube .swiper-slide-shadow-bottom,
.swiper-container-cube .swiper-slide-shadow-left,
.swiper-container-cube .swiper-slide-shadow-right,
.swiper-container-cube .swiper-slide-shadow-top {
    z-index: 0;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}
.swiper-container-cube .swiper-cube-shadow {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    background: #000;
    opacity: 0.6;
    filter: blur(50px);
    z-index: 0;
}
.swiper-container-flip {
    overflow: visible;
}
.swiper-container-flip .swiper-slide {
    pointer-events: none;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    z-index: 1;
}
.swiper-container-flip .swiper-slide .swiper-slide {
    pointer-events: none;
}
.swiper-container-flip .swiper-slide-active,
.swiper-container-flip .swiper-slide-active .swiper-slide-active {
    pointer-events: auto;
}
.swiper-container-flip .swiper-slide-shadow-bottom,
.swiper-container-flip .swiper-slide-shadow-left,
.swiper-container-flip .swiper-slide-shadow-right,
.swiper-container-flip .swiper-slide-shadow-top {
    z-index: 0;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}
.swiper-container-coverflow .swiper-wrapper {
    -ms-perspective: 1200px;
}
.grid-container {
    max-width: 105rem;
}
@media screen and (max-width: 64em) {
    body {
        -webkit-tap-highlight-color: transparent;
    }
    body[data-state="locked-for-header-primary"] {
        overflow: hidden;
        position: fixed;
        width: 100%;
    }
    body[data-state="locked-for-header-primary"]:before {
        opacity: 1;
        visibility: visible;
        z-index: 100;
    }
    body:before {
        background: rgba(0, 0, 0, 0.8);
        bottom: 0;
        content: "";
        left: 0;
        opacity: 0;
        position: fixed;
        right: 0;
        top: 0;
        transition: opacity 0.2s ease-out;
        width: 100%;
        visibility: hidden;
    }
}
* {
    font-family: Arial, Helvetica, sans-serif;
    font-size: 1rem;
    line-height: 1.25rem;
    font-weight: 400;
    color: #4c5155;
}
@media screen and (max-width: 39.9375em) {
    * {
        font-size: 0.8125rem;
        line-height: 1.0625rem;
    }
}
.clear {
    clear: both;
}
.breadcrumb {
    display: inline-block;
    z-index: 1;
}
h1,
h2,
h3,
h4,
h5,
h6 {
    font-size: inherit;
    font-family: inherit;
    line-height: inherit;
    font-weight: inherit;
    margin: 0;
    padding: 0;
}
.titre_bordure,
h1 {
    margin-bottom: 2.1875rem;
}
.titre_bordure > div,
h1 > div, h1 > div span {
    font-size: 26px;
    line-height: 1.5625rem;
    font-weight: 700;
    color: #1E1E1E;
    margin-bottom: 0.625rem;
}
.titre_bordure .h1__bordure,
h1 .h1__bordure {
    width: 62px;
    border: 1px solid #3cd22d;
    display: inline-block;
}
.titre_bordure {
    margin-bottom: 1.875rem;
}
.titre_bordure--centrer {
    text-align: center;
}
.titre_bordure > div {
    font-size: 2rem;
    line-height: 2.25rem;
}
@media screen and (min-width: 40em) and (max-width: 64em) {
    .titre_bordure > div,
    h1 > div {
        font-size: 1.875rem;
    }
}
@media screen and (max-width: 39.9375em) {
    .titre_bordure .h1__bordure,
    h1 .h1__bordure {
        margin: 10px auto 0;
        display: block;
    }
    .titre_bordure > div,
    h1 > div {
        text-align: center;
        font-size: 1.75rem;
        line-height: 1.9375rem;
    }
    .titre_bordure > div {
        font-size: 1.5rem;
        line-height: 1.6875rem;
    }
}
.button {
    color: #4c5155;
    background-color: #fff;
    display: inline-block;
    font-size: 0.875rem;
    line-height: 1rem;
    padding: 0.9375rem 1.25rem;
    text-decoration: none;
    border: 1px solid #4c5155;
}
.button:hover {
    color: #fff;
    background-color: #4c5155;
}
.button--center {
    text-align: center;
}
.button--formulaire {
    background-color: #3cd22d;
    border: 1px solid #3cd22d;
    color: #fff;
    width: 240px;
    margin-bottom: 1.25rem;
    cursor: pointer;
}
.button--formulaire:hover {
    background-color: #fff;
    color: #3cd22d;
}
.button--slider {
    border: 1px solid #fff;
    padding: 0.9375rem 2.1875rem;
    background-color: transparent;
    color: #fff;
}
.button--slider:hover {
    background-color: #fff;
    color: #4c5155;
}
@media screen and (max-width: 39.9375em) {
    .button {
        padding: 0.625rem 0.9375rem;
    }
}
.wysiwyg a {
    text-decoration: underline;
}
.wysiwyg a:hover {
    text-decoration: none;
}
.wysiwyg * {
    font-size: 0.875rem;
    line-height: 1.5rem;
}
.wysiwyg h2,
.wysiwyg h3,
.wysiwyg h4,
.wysiwyg h5 {
    text-transform: uppercase;
}
.wysiwyg h2 {
    font-size: 1.25rem;
}
.wysiwyg h3 {
    font-size: 1.125rem;
}
.wysiwyg h4 {
    font-size: 1rem;
}
.wysiwyg h5 {
    font-size: 0.875rem;
}
.wysiwyg p {
    margin: 1.25rem 0;
}
.wysiwyg ul {
    margin: 0;
    padding: 0;
    list-style: none;
    margin: 1.25rem 0;
}
.wysiwyg ul li:before {
    margin-right: 0.3125rem;
}
.swiper-container {
    width: 100%;
    height: 100%;
}
.swiper-slide {
    text-align: center;
    font-size: 18px;
    background: #fff;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
}
.swiper-container-horizontal > .swiper-pagination-bullets {
    bottom: 25px;
}
.home-slider .swiper-container-horizontal > .swiper-pagination-bullets {
    bottom: 101px;
}
.swiper-pagination-bullet {
    background-color: #fff;
    width: 13px;
    height: 13px;
    opacity: 0.9;
}
.swiper-pagination-bullet-active {
    background-color: #3cd22d;
}
.swiper__next,
.swiper__prev {
    top: 50%;
    transform: translateY(-50%);
    position: absolute;
    left: 0;
    width: 2.375rem;
    height: auto;
    cursor: pointer;
    margin: 0 1.25rem;
    transition: all 0.3s ease-out;
    z-index: 99;
}
.swiper__next svg,
.swiper__prev svg {
    color: #fff;
}
.swiper__next.swiper-button-disabled,
.swiper__prev.swiper-button-disabled {
    opacity: 0.3;
    cursor: default;
}
.swiper__next {
    left: auto;
    right: 0;
}
.modules-nos-realisations__slider .swiper-slide {
    background-color: transparent;
    text-align: left;
}
.modules-nos-realisations__slider .swiper__next,
.modules-nos-realisations__slider .swiper__prev {
    width: 1.375rem;
    height: 0.8125rem;
}
.modules-nos-realisations__slider .swiper__next svg,
.modules-nos-realisations__slider .swiper__prev svg {
    color: #3cd22d;
}
.header-primary {
    background-color: #4c5155;
    z-index: 100;
    position: relative;
    top: 68px;
    min-height: 55px;
    margin-top: -9px;
}
.header-primary * {
    color: #fff;
}
.header-primary__conteneur {
    min-height: 205px;
}
.header-primary__row {
    height: 3.75rem;
}
.header-primary__burger-column {
    line-height: 1em;
}
.header-primary__menu-burger:focus {
    outline: none;
}
.header-primary__menu-burger .icon-burger {
    position: relative;
    margin-top: 10px;
    margin-bottom: 10px;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    z-index: 99999;
}
.header-primary__menu-burger .icon-burger,
.header-primary__menu-burger .icon-burger:after,
.header-primary__menu-burger .icon-burger:before {
    display: block;
    width: 30px;
    height: 2px;
    background-color: #3cd22d;
    outline: 1px solid transparent;
    transition-property: background-color, transform;
    transition-duration: 0.3s;
}
.header-primary__menu-burger .icon-burger:after,
.header-primary__menu-burger .icon-burger:before {
    position: absolute;
    content: "";
}
.header-primary__menu-burger .icon-burger:before {
    top: -10px;
}
.header-primary__menu-burger .icon-burger:after {
    top: 10px;
}
.header-primary__menu-burger[data-state="open"] .icon-burger {
    background-color: transparent;
}
.header-primary__menu-burger[data-state="open"] .icon-burger:before {
    transform: translateY(10px) rotate(45deg);
}
.header-primary__menu-burger[data-state="open"] .icon-burger:after {
    transform: translateY(-10px) rotate(-45deg);
}
.header-primary__logo {
    width: 146px;
    height: 179px;
    display: inline-block;
    background-color: #fff;
    padding: 18px;
}
.header-primary__logoDark {
    display: none;
}
.header-primary__link {
    cursor: pointer;
    display: block;
}
.header-primary__navArrow svg {
    width: 10px;
    vertical-align: middle;
    margin-left: 5px;
}
.breadcrumb {
    position: relative;
    top: 92px;
    left: 0;
    z-index: 2;
    margin-left: 125px;
}
.breadcrumb * {
    font-size: 0.75rem;
    line-height: 0.875rem;
    font-weight: 400;
    color: #9b9b9b;
}
.breadcrumb span * {
    text-decoration: underline;
}
@media screen and (max-width: 64em) {
    .header-menu__submenu {
        display: none;
    }
    .header-primary__link {
        font-size: 1rem;
        line-height: 1.0625rem;
        font-weight: 400;
        padding: 0.9375rem;
    }
    .current-menu-ancestor > .header-primary__link,
    .current-menu-item > .header-primary__link {
        background-color: #3cd22d;
    }
    .header-primary__nav {
        position: relative;
        top: 40px;
    }
    .header-primary__nav-column {
        width: 90%;
        position: fixed;
        top: 0;
        left: 0;
        max-width: 21.875rem;
        display: none;
        z-index: 900;
        overflow: auto;
        bottom: 0;
        padding: 0;
        background-color: #4c5155;
    }
    .header-primary__nav-column[data-state="open"] {
        display: block;
    }
}
@media print, screen and (min-width: 64.0625em) {
    .header-primary__burger-column {
        display: none;
    }
    .header-primary__nav {
        display: block;
        position: relative;
        top: 1px;
    }
    .header-primary .header-menu__menu {
        cursor: pointer;
    }
    .header-primary .header-menu__menu--level2 {
        display: none;
        background-color: #4c5155;
        position: absolute;
        width: 100%;
    }
    .header-primary .header-menu__menu--level2 ul {
        margin: 0;
        padding: 0;
    }
    .header-primary .header-menu__menu--level2 li {
        list-style: none;
    }
    .header-primary .header-menu__menu--level2 li a {
        padding: 0.625rem 1.5625rem;
        width: 100%;
        display: inline-block;
    }
    .header-primary .header-menu__menu--level2 li a:hover {
        background-color: #3cd22d;
    }
    .header-primary__item {
        position: relative;
        display: inline-block;
        float: left;
    }
    .header-primary__item:hover .header-menu__menu--level2 {
        display: block;
    }
    .header-primary__link {
        padding: 0 12px;
        margin: -1px 0 0;
        font-size: 1rem;
        line-height: 3.75rem;
        font-weight: 400;
    }
    .current-menu-ancestor > .header-primary__link,
    .current-menu-item > .header-primary__link,
    .header-primary__item:hover > .header-primary__link {
        background-color: #3cd22d;
    }
    .header-primary__nav-column {
        height: 60px;
    }
}
@media screen and (max-width: 64em) {
    .header-primary {
        top: 0;
        margin-top: 0;
        background-color: #fff;
        padding: 10px 7px;
        position: relative;
    }
    .header-primary__menu-burger .icon-burger,
    .header-primary__menu-burger .icon-burger:after,
    .header-primary__menu-burger .icon-burger:before {
        background-color: #3cd22d;
        width: 22px;
        margin: 0 auto;
    }
    .header-primary__logo {
        position: absolute;
        top: 0;
        display: block;
        left: calc(50% - 73px);
    }
    .header-primary__logoDark {
        display: inline-block;
        position: relative;
        left: 50%;
        transform: translateX(-30%);
    }
    .header-primary__menu-burger .texte {
        display: inline-block;
        margin-top: 1.0625rem;
        color: #4c5155;
        text-transform: uppercase;
        font-size: 0.625rem;
        line-height: 0.6875rem;
        font-weight: 400;
    }
    .breadcrumb {
        display: none;
    }
}
.footer-primary {
    background-color: #4c5155;
    font-size: 0.875rem;
    padding: 0.625rem 0;
}
.footer-primary * {
    color: #fff;
}
.footer-primary__logoFooter {
    margin-top: 1.125rem;
    margin-bottom: 1.5625rem;
}
.footer-primary__Coordonnees p {
    margin-bottom: 1.875rem;
}
.footer-primary__Coordonnees * {
    font-size: 0.875rem;
    line-height: 1.125rem;
    font-weight: 400;
}
.footer-primary__lienContact,
.footer-primary__lienContact a {
    font-size: 0.875rem;
    line-height: 1.5rem;
    font-weight: 400;
}
.footer-primary__lienContact a {
    text-decoration: underline;
}
.footer-primary__menuFooter {
    margin-top: 3.4375rem;
}
.footer-primary__menuFooterTitre {
    font-size: 1rem;
    line-height: 1.0625rem;
    font-weight: 500;
    color: #3cd22d;
    text-transform: uppercase;
    margin-bottom: 1.375rem;
}
.footer-primary__menuFooterListe * {
    font-size: 0.875rem;
    line-height: 1.5rem;
    font-weight: 400;
}
.footer-primary__lienReseaux {
    font-size: 0.875rem;
    line-height: 1.5rem;
    font-weight: 700;
}
.footer-primary__lienReseaux img {
    margin-left: 2px;
    position: relative;
    top: -6px;
}
.footer-primary__mentions {
    margin: 0.625rem 0 1.875rem;
}
.footer-primary__mentions a {
    margin-right: 1.25rem;
}
.footer-primary__mentions,
.footer-primary__mentions * {
    color: white;
    font-size: 0.875rem;
    line-height: 1rem;
    font-weight: 400;
}
.footer-primary__amalgame svg {
    color: #929292;
    width: 16px;
    height: 19px;
    vertical-align: top;
    margin-left: 2px;
}
@media screen and (max-width: 39.9375em) {
    .footer-primary {
        font-size: 0.875rem;
        padding: 0.625rem 1.25rem;
    }
    .footer-primary__logoFooter {
        width: 128px;
        height: 55px;
        margin: 1.25rem auto 1.875rem;
    }
    .footer-primary__Coordonnees p {
        margin-bottom: 0.9375rem;
    }
    .footer-primary__menuFooter {
        margin-top: 1.875rem;
    }
    .footer-primary__mentions {
        margin: 1.25rem 1.25rem 1.875rem;
    }
    .footer-primary__mentions a {
        margin-right: 1.25rem;
    }
}
.footer-secondary {
    margin-top: 2.5rem;
    border-top: 2px solid #3cd22d;
    min-height: 142px;
}
.footer-secondary__logo {
    display: inline-block;
    vertical-align: middle;
    margin-top: 1.25rem;
}
.footer-secondary__logo--num4 {
    width: 190px;
    text-align: center;
    margin-top: 35px;
}
.footer-secondary__logo--num5 {
    margin-top: 30px;
}
.single .footer-secondary {
    margin-top: 0;
}
@media screen and (min-width: 40em) and (max-width: 64em) {
    .footer-secondary {
        margin-top: 2.5rem;
        margin-bottom: 1.25rem;
    }
    .footer-secondary__logo {
        margin-bottom: 1.875rem;
    }
}
@media screen and (max-width: 39.9375em) {
    .footer-secondary {
        margin-top: 2.5rem;
        margin-bottom: 1.25rem;
        border-top: 2px solid #3cd22d;
    }
    .footer-secondary__logo {
        margin-bottom: 1.875rem;
    }
}
.header-page__contenu {
    font-size: 1rem;
    line-height: 1.5rem;
    font-weight: 400;
    margin-bottom: 2.1875rem;
}
.header-page__contenu strong {
    font-size: 1rem;
    line-height: 1.5rem;
    font-weight: 700;
}
.module-2-colonnes {
    background-size: cover;
    background-position: 50%;
    background-repeat: no-repeat;
    padding: 5.3125rem 0;
    margin-bottom: 1.875rem;
}
.module-2-colonnes--right {
    float: right;
    width: 100%;
}
.module-2-colonnes--right .module-2-colonnes__conteneur {
    float: right;
}
.module-2-colonnes__conteneur {
    width: 100%;
    max-width: 570px;
    background-color: #fff;
    padding: 2.8125rem;
}
.module-2-colonnes__extrait {
    margin-bottom: 1.25rem;
}
.module-2-colonnes__clear {
    clear: both;
}
@media screen and (max-width: 64em) {
    .module-2-colonnes {
        padding: 10.3125rem 0 5.3125rem;
        margin-bottom: 1.875rem;
    }
    .module-2-colonnes,
    .module-2-colonnes--right {
        float: none;
    }
    .module-2-colonnes__conteneur {
        float: right;
        box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.3);
        width: 87%;
        margin: 0 20px 40px;
        padding: 1.875rem 1.25rem;
    }
    .module-2-colonnes__extrait {
        margin-bottom: 1.25rem;
    }
    .module-2-colonnes__lien {
        text-align: center;
    }
}
@media screen and (min-width: 40em) and (max-width: 64em) {
    .module-2-colonnes__conteneur {
        width: 95%;
        max-width: 100%;
    }
}
.modules-galerie-photos__photo {
    height: 0;
    margin-bottom: 1.875rem;
    margin-top: 0.625rem;
    padding-bottom: 70%;
    position: relative;
}
.modules-galerie-photos__photo img {
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    position: absolute;
    height: 100%;
    width: 100%;
    object-fit: cover;
}
.modules-nos-realisations {
    background-color: rgba(76, 81, 85, 0.05);
 
}
.modules-nos-realisations .rea-card__badges {
max-width: 400px;
}

.modules-nos-realisations__item {
    padding-bottom: 2.8125rem;
}
.modules-nos-realisations__itemImage {
    height: 0;
    margin-bottom: 1.5625rem;
    padding-bottom: 70%;
    position: relative;
}
.modules-nos-realisations__itemImage img {
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    position: absolute;
    height: 100%;
    width: 100%;
    object-fit: cover;
}
.modules-nos-realisations__itemTitre {
    margin-bottom: 0.625rem;
}
.modules-nos-realisations__itemTitre > div {
    font-size: 1rem;
    line-height: 1.0625rem;
    font-weight: 700;
    color: #4c5155;
}
.modules-nos-realisations__itemTitre .bordure {
    width: 51px;
    border: 1px solid #3cd22d;
    display: inline-block;
}
.modules-nos-realisations__itemExtrait {
    font-size: 0.875rem;
    line-height: 1.25rem;
    font-weight: 400;
}
.modules-nos-realisations__lienBas {
    text-align: center;
}
.modules-nos-realisations__lienBas a {
    margin: 0 auto 50px;
}
@media screen and (max-width: 39.9375em) {
    .modules-nos-realisations__slider {
        margin-bottom: 3.125rem;
    }
    .modules-nos-realisations__item {
        padding-bottom: 1.25rem;
    }
    .modules-nos-realisations__itemImage {
        height: 0;
        margin-bottom: 1.5625rem;
        padding-bottom: 70%;
        position: relative;
    }
    .modules-nos-realisations__itemImage img {
        left: 50%;
        top: 50%;
        transform: translate(-50%, -50%);
        position: absolute;
        height: 100%;
        width: 100%;
        object-fit: cover;
    }
    .modules-nos-realisations__itemTitre > div {
        line-height: 1.5625rem;
    }
    .modules-nos-realisations__itemExtrait {
        display: none;
    }
}
.modules-contact {
    padding: 2.8125rem 0;
}
.modules-contact__item {
    text-align: center;
}
.modules-contact__item--right {
    float: right;
    margin-right: 1.875rem;
}
.modules-contact__item--left {
    float: left;
    margin-left: 1.875rem;
}
.modules-contact__itemImage,
.modules-contact__itemImage img {
    width: 48px;
    height: 48px;
    margin: 0 auto 28px;
}
.modules-contact__itemTitre {
    font-size: 1rem;
    line-height: 1.0625rem;
    font-weight: 700;
    text-transform: uppercase;
    margin-bottom: 0.625rem;
}
.modules-contact__itemTexte {
    font-size: 0.875rem;
    line-height: 1rem;
    font-weight: 400;
}
@media screen and (max-width: 39.9375em) {
    .modules-contact__item--right {
        margin-right: 0.9375rem;
    }
    .modules-contact__item--left {
        margin-left: 0.9375rem;
    }
}
.modules-equipe {
    padding-bottom: 1.875rem;
}
.modules-equipe__titre {
   font-size: 1.5rem;
    line-height: 1.6875rem;
    font-weight: 700;
    color: #4c5155;
    text-align: center;
    margin-bottom: 1.875rem;  
}
.modules-equipe__membre {
    text-align: center;
}
.modules-equipe__membrePhoto {
    text-align: center;
    margin: 0 auto;
    width: 70%;
    height: 0;
    padding-bottom: 70%;
    margin-bottom: 1.25rem;
    position: relative;
}



.modules-equipe__membrePhoto img {
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    position: absolute;
    height: 100%;
    width: 100%;
    object-fit: cover;
    border-radius: 50%;
}
.modules-equipe__membreNom {
    font-size: 1.125rem;
    line-height: 1.25rem;
    font-weight: 700;
    margin-bottom: 0.9375rem;
}
.modules-equipe__membreFonction {
    font-size: 1rem;
    line-height: 1.25rem;
    font-weight: 400;
    margin-bottom: 1.5rem;
}
.modules-equipe__membreDescription {
    text-align: left;
    font-size: 0.875rem;
    line-height: 1.25rem;
    font-weight: 400;
    margin-bottom: 0.9375rem;
}
.modules-equipe__membreLogo {
    text-align: left;
    margin-bottom: 0.9375rem;
    max-width: 50%;
}
.modules-equipe__membreLien {
    text-align: left;
    margin-bottom: 1.5625rem;
}
.modules-equipe__membreLien a {
    text-align: left;
    color: #3cd22d;
    font-size: 0.875rem;
    line-height: 1.25rem;
    font-weight: 400;
}
.header-realisations__filtre {
    text-align: right;
}
.header-realisations__filtreTitre {
    display: inline-block;
    vertical-align: middle;
    font-size: 1rem;
    line-height: 1.0625rem;
    font-weight: 700;
}
.header-realisations__filtreChamp {
    display: inline-block;
    vertical-align: middle;
    padding-left: 10px;
}
.header-realisations__filtreChamp select {
    width: 270px;
    height: 40px;
}
.header-realisations__filtreChamp select option {
    padding: 1.25rem;
    font-size: 1rem;
    line-height: 1.0625rem;
    font-weight: 400;
}
@media screen and (min-width: 40em) and (max-width: 64em) {
    .header-realisations__filtreTitre {
        font-size: 0.8125rem;
        line-height: 0.9375rem;
        margin-bottom: 0.9375rem;
    }
    .header-realisations__filtreChamp select {
        margin-bottom: 2.1875rem;
    }
}
@media screen and (max-width: 39.9375em) {
    .header-realisations__filtre {
        text-align: center;
    }
    .header-realisations__filtreTitre {
        font-size: 0.8125rem;
        line-height: 0.9375rem;
        margin-bottom: 0.9375rem;
    }
    .header-realisations__filtreChamp select {
        margin-bottom: 2.1875rem;
    }
}
.gm-control-active,
.gmnoprint,
.location-map__datas,
a[rel="noopener"] {
    display: none;
}
.location-map__content {
    min-height: 40.9375rem;
}
@media screen and (min-width: 80em) {
    .location-map__content {
        min-height: 40.9375rem;
    }
}
.contact-coordonnees {
    position: relative;
}
.contact-coordonnees__conteneur {
    position: absolute;
    top: 0;
    left: 0;
}
.contact-coordonnees__conteneurInterne {
    padding: 2.1875rem 1.875rem 0;
    background-color: #4c5155;
    color: #fff;
    width: 100%;
    max-width: 540px;
    min-height: 620px;
}
.contact-coordonnees__titre {
    margin-bottom: 1.875rem;
    width: 420px;
}
.contact-coordonnees__titre > div {
    color: #fff;
    font-size: 1.3125rem;
    line-height: 1.4375rem;
    font-weight: 700;
}
.contact-coordonnees__adresseTexte,
.contact-coordonnees__horairesOuverture *,
.contact-coordonnees__telephone {
    color: #fff;
    font-size: 1rem;
    line-height: 1.25rem;
    font-weight: 400;
}
.contact-coordonnees__adresseTexte b,
.contact-coordonnees__horairesOuverture * b,
.contact-coordonnees__telephone b {
    font-weight: 700;
}
.contact-coordonnees__adresse {
    margin-bottom: 1.5625rem;
}
.contact-coordonnees__adresse .picto svg {
    fill: #3cd22d;
    width: 11px;
    height: 15px;
}
.contact-coordonnees__telephone {
    margin-bottom: 1.25rem;
}
.contact-coordonnees__horairesOuverture {
    margin-bottom: 2.8125rem;
}
.contact-coordonnees__item {
    height: 0;
    margin-bottom: 1.25rem;
    padding-bottom: 70%;
    position: relative;
}
.contact-coordonnees__item img {
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    position: absolute;
    height: 100%;
    width: 100%;
    object-fit: cover;
}
.contact-coordonnees__clear {
    clear: both;
}
@media screen and (max-width: 39.9375em) {
    .contact-coordonnees__conteneur {
        position: relative;
    }
    .contact-coordonnees__conteneurInterne {
        width: 100%;
    }
    .contact-coordonnees__titre {
        margin-bottom: 1.875rem;
        width: 100%;
    }
    .contact-coordonnees__titre > div {
        font-size: 1.3125rem;
        line-height: 1.4375rem;
    }
    .contact-coordonnees__adresseTexte,
    .contact-coordonnees__horairesOuverture *,
    .contact-coordonnees__telephone {
        font-size: 1rem;
        line-height: 1.25rem;
    }
    .contact-coordonnees__adresse {
        margin-bottom: 1.5625rem;
    }
    .contact-coordonnees__telephone {
        margin-bottom: 1.25rem;
    }
    .contact-coordonnees__horairesOuverture {
        margin-bottom: 2.8125rem;
    }
}
@media screen and (min-width: 64.0625em) {
    .header-primary__logo {
        position: relative !important;
        top: -59px !important;
    }
}
@media screen and (max-width: 64em) {
    .header-primary__menu-burger {
        top: 20px;
        position: relative;
    }
}
.contact-formulaire {
    padding-top: 3.125rem;
}
.contact-formulaire__titre {
    margin-bottom: 1.875rem;
}
.contact-formulaire__titre > div {
    font-size: 1.5rem;
    line-height: 1.6875rem;
    font-weight: 700;
}
.contact-formulaire__formulaire .wpcf7-list-item-label,
.contact-formulaire__formulaire label {
    color: #1E1E1E;
    font-size: 0.875rem;
    line-height: 1.1875rem;
    font-weight: 400;
    margin-bottom: 0.625rem;
    display: block;
}
.contact-formulaire__formulaire .wpcf7-list-item-label {
    display: inline-block;
    margin-left: 10px;
}
.contact-formulaire__formulaire .wpcf7-list-item {
    margin: 0;
}
.contact-formulaire__formulaire input[type="email"],
.contact-formulaire__formulaire input[type="tel"],
.contact-formulaire__formulaire input[type="text"],
.contact-formulaire__formulaire textarea {
    border: 1px solid #cacaca;
    width: 100%;
    max-width: 350px;
    height: 40px;
    margin-bottom: 0.3375rem;
    font-size: 0.875rem;
    line-height: 1.1875rem;
    font-weight: 400;
    padding-left: 5px;
}
.contact-formulaire__formulaire textarea {
    height: 362px;
    max-width: 850px;
}
.contact-formulaire__formulaire .contact-formulaire__labelRadio {
    display: inline-block;
    margin-bottom: 50px;
}
.single-contenu__texte {
    padding: 0 1.25rem;
    margin-bottom: 2.5rem;
}
.single-contenu__texte * {
    font-size: 1rem;
    line-height: 1.25rem;
    font-weight: 400;
    margin-bottom: 1.5625rem;
}
.single-contenu__texte strong {
    font-weight: 700;
    margin-bottom: 1.5625rem;
}
.single-contenu__ficheTechnique {
    background-color: #f2f2f2;
    padding: 1.875rem 1.25rem;
}
.single-contenu__ficheTechnique strong {
    font-size: 1.3125rem;
    line-height: 1.4375rem;
    font-weight: 700;
    margin-bottom: 1.5625rem;
}
.single-contenu__ficheTechnique * {
    font-size: 1rem;
    line-height: 1.25rem;
    font-weight: 400;
}
.single-contenu__ficheTechnique p {
    margin: 0;
}
@media screen and (max-width: 39.9375em) {
    .single-contenu__texte {
        margin-top: 1.625rem;
        padding: 0 0.625rem;
    }
    .single-contenu__texte * {
        font-size: 1rem;
        line-height: 1.25rem;
        font-weight: 400;
    }
    .single-contenu__ficheTechnique {
        padding: 0.625rem;
    }
}
.single-contact {
    padding: 2.1875rem 0 1.875rem;
    position: relative;
}
.single-contact__conteneur--right,
.single-contact__conteneur--right .single-contact__conteneurInterne {
    float: right;
}
.single-contact__titre {
    font-size: 1.3125rem;
    line-height: 1.4375rem;
    font-weight: 700;
    margin: 0 20px;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
}
.single-contact__picto {
    width: 39px;
    height: 39px;
    display: inline-block;
    float: left;
    margin-right: 20px;
}
.single-contact__conteneurInterne--number1 {
    border-right: 1px solid #dbdbdb;
}
.single-contact__titreItem {
    font-size: 1rem;
    line-height: 1.0625rem;
    font-weight: 700;
    text-transform: uppercase;
    margin-bottom: 0.625rem;
}
.single-contact__texteItem {
    font-size: 0.875rem;
    line-height: 1rem;
    font-weight: 400;
}
@media screen and (min-width: 40em) and (max-width: 64em) {
    .single-contact__titre {
        position: relative;
        padding: 0;
        text-align: center;
        top: 0;
        margin-top: 25px;
    }
    .single-contact__picto {
        display: inline-block;
        float: none;
        margin-bottom: 0.9375rem;
        margin-left: 0;
        margin-right: 0;
    }
    .single-contact__conteneurInterne--number1 {
        border-right: none;
        text-align: center;
    }
    .single-contact__titreItem {
        font-size: 1rem;
        line-height: 1.0625rem;
        font-weight: 700;
        text-transform: uppercase;
        margin-bottom: 0.625rem;
    }
    .single-contact__texteItem {
        font-size: 0.875rem;
        line-height: 1rem;
        font-weight: 400;
    }
}
@media screen and (max-width: 39.9375em) {
    .single-contact__titre {
        margin-top: 45px;
        position: relative;
        padding: 0;
        text-align: center;
        top: 0;
        margin-top: 25px;
    }
}
@media screen and (max-width: 39.9375em) {
    .single-contact__picto {
        display: inline-block;
        float: none;
        margin-bottom: 0.9375rem;
        margin-left: 0;
        margin-right: 0;
    }
    .single-contact__conteneurInterne--number1 {
        border-right: none;
        text-align: center;
    }
    .single-contact__titreItem {
        font-size: 1rem;
        line-height: 1.0625rem;
        font-weight: 700;
        text-transform: uppercase;
        margin-bottom: 0.625rem;
    }
    .single-contact__texteItem {
        font-size: 0.875rem;
        line-height: 1rem;
        font-weight: 400;
    }
}
.home-entreprise {
    padding: 2.8125rem 0 0;
}
.home-entreprise__titre {
    margin-bottom: 3.75rem;
}
.home-entreprise__lienBas {
    text-align: center;
}
.home-entreprise__lienBas a {
    margin: 0 auto 15px;
}
.home-entreprise__item {
    text-align: center;
}
.home-entreprise__itemChiffre {
    color: #3cd22d;
    margin-bottom: 1.25rem;
    font-size: 3rem;
    line-height: 3.3125rem;
    font-weight: 700;
}
.home-entreprise__itemLibelle {
    margin-bottom: 3.75rem;
    text-transform: uppercase;
    font-size: 1rem;
    line-height: 1.0625rem;
    font-weight: 400;
}
@media screen and (max-width: 39.9375em) {
    .home-entreprise {
        padding: 1.875rem 0 0;
    }
    .home-entreprise__titre {
        margin-bottom: 1.25rem;
    }
    .home-entreprise__itemChiffre {
        margin-bottom: 0.3125rem;
        font-size: 2.25rem;
        line-height: 2.5625rem;
    }
    .home-entreprise__itemLibelle {
        margin-bottom: 1.875rem;
        font-size: 0.875rem;
        line-height: 1rem;
    }
}
.home-slider {
    position: relative;
    z-index: 1;
}
.home-slider__item {
    background-repeat: no-repeat;
    background-size: cover;
    background-position: 50%;
}
.home-slider__titre1 {
    color: #fff;
    margin-top: 16.625rem;
    font-size: 3.75rem;
    line-height: 4.1875rem;
    font-weight: 700;
    margin-bottom: 0.625rem;
}
.home-slider__titre2 {
    color: #3cd22d;
    font-size: 3.125rem;
    line-height: 3.5rem;
    font-weight: 700;
    margin-bottom: 1.5625rem;
}
.home-slider__bordure {
    border: 1px solid #3cd22d;
    width: 195px;
    margin: 0 auto 15px;
}
.home-slider__description {
    color: #fff;
    font-size: 1rem;
    line-height: 1.0625rem;
    font-weight: 400;
    max-width: 540px;
    margin: 0 auto 35px;
}
.home-slider__lien {
    margin-bottom: 10.625rem;
}
@media screen and (min-width: 40em) and (max-width: 64em) {
    .home-slider {
        margin-top: -61px;
    }
    .home-slider__titre1 {
        max-width: 65%;
        margin: 90px auto 10px;
        font-size: 1.75rem;
        line-height: 1.9375rem;
    }
    .home-slider__titre2 {
        max-width: 65%;
        margin: 0 auto 25px;
        font-size: 1.125rem;
        line-height: 1.25rem;
    }
    .home-slider__description {
        font-size: 0.6875rem;
        max-width: 65%;
        margin: 0 auto 35px;
    }
}
@media screen and (max-width: 39.9375em) {
    .home-slider {
        margin-top: -61px;
    }
    .home-slider__titre1 {
        max-width: 65%;
        margin: 90px auto 10px;
        font-size: 1.75rem;
        line-height: 1.9375rem;
    }
    .home-slider__titre2 {
        max-width: 65%;
        margin: 0 auto 25px;
        font-size: 1.125rem;
        line-height: 1.25rem;
    }
    .home-slider__description {
        font-size: 0.6875rem;
        max-width: 65%;
        margin: 0 auto 35px;
    }
}

/* ================== NOS MÉTIERS (nouveau) ================== */

/* En-tête */
.metiers__wrap{ max-width: 1120px; margin: 50px auto; padding: 22px 20px 6px; }
.metiers__heading{ position: relative; text-align: center; margin: 10px 0 18px; }
.metiers__heading span{
  display:inline-block; padding: 0 14px; background:#fff;
  font-size: 1.2rem; letter-spacing:.08em; font-weight:700; text-transform:uppercase; color:#1E1E1E;
}
.metiers__heading::before,
.metiers__heading::after{
  content:""; position:absolute; top:50%; transform:translateY(-50%);
  width: 41%; height:3px; background:#3CD22D;
}
.metiers__heading::before{ left:0; }
.metiers__heading::after{ right:0; }

.metiers__lead{
  text-align:center; max-width: 1100px; margin: 0 auto 6px;
  font-size: 1.05rem; line-height: 1.6; color:#1E1E1E;
}
.metiers__lead strong {
color:#1E1E1E;
}

/* Rangée pleine largeur (sans gouttières) */
.metiers__row{
  display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:0;
  width:100%; margin: 10px 0 0 0;
}

/* Tuile */
.metiers__tile{ position:relative; height:560px; overflow:hidden; }
.metiers__link{ display:block; position:relative; height:100%; color:inherit; text-decoration:none; }

/* Image */
.metiers__img{
  position:absolute; inset:0; background-size:cover; background-position:center;
  transform:scale(1.02); transition:transform .6s ease;
}
.metiers__tile:hover .metiers__img{ transform:scale(1.06); }

/* Voile sombre */
.metiers__scrim{
  position:absolute; inset:0;
  background:linear-gradient(180deg, rgba(0,0,0,.15) 0%, rgba(0,0,0,.55) 58%, rgba(0,0,0,.72) 100%);
  pointer-events:none;
}

/* Contenu overlay */
.metiers__content{
  position:relative; z-index:1; height:100%;
  display:flex; flex-direction:column; align-items:flex-start;
  padding: 100px 50px; color:#fff; text-align:left;
}

/* Icône / Titre / Texte */
.metiers__icon{ 
    display: block;
    margin-left: auto !important;
    margin-right: auto !important;
 }


.metiers__icon--couverture {
width:69px;
}
.metiers__icon--etancheite {
width:110px;
}
.metiers__icon--bardage {
width:63px;
}
.metiers__icon--menuiserie-alu {
width:70px;
}
.metiers__title{
margin-left: auto;
    margin-right: auto;
    margin-top: 20px;
    margin-bottom: 25px;

   font-size: 1.5rem; line-height:1.25;
  font-weight:500; text-transform:uppercase; letter-spacing:.06em;
}
.metiers__text{ min-height:165px; margin:0 0 22px 0; max-width: 420px; font-size: 1rem; line-height:1.6; color:#f3f5f6; }

/* CTA vert */
.metiers__btn{
  display:inline-block; background:#37BE2A; color:#fff; font-weight:bold;
  padding:10px 21px; border-radius:3px; transition:filter .15s ease, transform .02s ease;
margin-left: auto;
    margin-right: auto;
}
.metiers__btn:hover{ filter:brightness(1.06); }
.metiers__btn:active{ transform:translateY(1px); }

/* Responsive */
@media (max-width: 1279.98px){
  .metiers__row{ grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width: 767.98px){
  .metiers__row{ grid-template-columns:1fr; }
  .metiers__tile{ height:420px; }
  .metiers__heading::before, .metiers__heading::after{ width:24%; }
}


.home-metiers {
    background-color: #fff;
    position: initial;
    z-index: 3;
    /* margin: -65px auto 0; */
    max-width: 1465px;
    width: 95%;
    padding-top: 2.1875rem;
}
.home-metiers__itemImage {
    height: 0;
    padding-bottom: 70%;
    position: relative;
}
.home-metiers__itemImage img {
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    position: absolute;
    height: 100%;
    width: 100%;
    object-fit: cover;
}
.home-metiers__itemTitre {
    background-color: #2cc51d;
    color: #fff;
    font-size: 1.1rem;
    line-height: 1.625rem;
    font-weight: 700;
    padding: 1.25rem 0.9375rem;
    vertical-align: middle;
}
.home-metiers__itemTitre svg {
    width: 18px;
    height: 26px;
    vertical-align: middle;
    position: relative;
    float: right;
}
@media screen and (min-width: 40em) and (max-width: 64em) {
    .home-metiers {
        margin: -65px auto 0;
        width: 100%;
    }
    .home-metiers__itemTitre {
        font-size: 1.125rem;
        line-height: 1.25rem;
        margin-bottom: 0.9375rem;
    }
}
@media screen and (max-width: 39.9375em) {
    .home-metiers {
        margin: -65px auto 0;
        width: 100%;
    }
    .home-metiers__itemImage {
        display: none;
    }
    .home-metiers__itemTitre {
        font-size: 1.125rem;
        line-height: 1.25rem;
        margin-bottom: 0.9375rem;
    }
}
.home-vous-etes {
    margin-top: 4.375rem;
    margin-bottom: 3.125rem;
}
.home-vous-etes__titre {
    font-size: 1.5rem;
    line-height: 1.6875rem;
    font-weight: 700;
    color: #4c5155;
    text-align: center;
    margin-bottom: 3.4375rem;
}
.home-vous-etes__item {
    text-align: center;
}
.home-vous-etes__itemImage {
    margin-bottom: 0.9375rem;
    height: 73px;
}
.home-vous-etes__itemTitre {
    color: #505559;
    font-size: 1rem;
    line-height: 1.0625rem;
    font-weight: 700;
    margin-bottom: 1.875rem;
    text-transform: uppercase;
}
.home-vous-etes__itemDescription {
    color: #505559;
    font-size: 0.875rem;
    line-height: 1.25rem;
    font-weight: 400;
    margin-bottom: 1.875rem;
}
@media screen and (min-width: 40em) and (max-width: 64em) {
    .home-vous-etes {
        margin-top: 1.125rem;
        margin-bottom: 0.625rem;
    }
    .home-vous-etes__item {
        margin-bottom: 2.5rem;
    }
}
@media screen and (max-width: 39.9375em) {
    .home-vous-etes {
        margin-top: 1.125rem;
        margin-bottom: 0.625rem;
    }
   .home-vous-etes__titre {
        font-size: 1.125rem;
        line-height: 1.25rem;
        margin-bottom: 0.9375rem;
    }
    .home-vous-etes__itemTitre {
        font-size: 0.875rem;
        line-height: 1rem;
        margin-bottom: 2.1875rem;
        text-transform: uppercase;
    }
    .home-vous-etes__itemDescription,
    .home-vous-etes__itemLien {
        display: none;
    }
}


/* ======= NOS CLIENTS (home-vous-etes) ======= */
.clients{
  padding: 56px 0 64px;
  text-align: center;
}

.clients__head{ margin-bottom: 28px; }

.clients__title{
  position: relative;
  display: inline-block;
  margin: 0 0 14px 0;
  padding: 0 22px;
  font-size: 1.2rem;
  line-height: 1.2;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .04em;
  color: #1E1E1E;
}
.clients__title::before,
.clients__title::after{
  content:"";
  position: absolute;
  top: 50%;
  width: 450px;
  height: 3px;
  background: #3CD22D;   /* vert */
  transform: translateY(-50%);
}
.clients__title::before{ right: 100%; }
.clients__title::after { left: 100%;  }

.clients__intro{
  max-width: 900px;
  margin: 0 auto;
  font-size: 16px;
  line-height: 1.6;
  color: #2a2f36;
}

/* Grille 4 colonnes desktop, 2 en tablette, 1 en mobile */
.clients__grid{
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  max-width: 1365px;
  margin: 34px auto 0;
  padding: 0 16px;
}

/* Colonne + séparateur vertical */
.clients__col{
  position: relative;
  padding: 6px 15px 2px;
}
@media (min-width: 1024px){
  .clients__col + .clients__col::before{
    content:"";
    position: absolute;
    left: 0;
    top: 12%;
    height:100%;
    bottom: 12%;
    width: 1px;
    background: rgba(0,0,0,.15);
  }
}

/* Icône verte (96px) */
.clients__icon{
  display: grid;
  place-items: center;
  height: 120px;           /* même hauteur visuelle entre les 4 items */
  margin-bottom: 10px;
}
.clients__icon img{
  width: 80px;
  height: auto;
  display: block;
}
.clients__iconImg--architectes-bureaux-detude {
width:55px !important;
}


/* Titres & textes */
.clients__h3{
  margin: 0 0 10px 0;
  font-size: 18px;
  font-weight: 700;
  letter-spacing: .02em;
  color: #222831;
}
.clients__text{
  margin: 0 auto 12px auto;
  min-height:105px;
  max-width: 260px;
  font-size: 15px;
  line-height: 1.6;
  color: #2e343c;
}

/* Lien "En savoir plus |↦" */
.clients__link{
  display: inline-block;
  margin-top: 4px;
  font-size: 15px;
  font-weight: 700;
  color: #111;               /* noir comme sur la maquette */
  text-decoration: none;
}
.clients__link:hover{ color: #32c24a; }
.clients__arrow:hover {
 color: #32c24a;
}
.tpl-modulaire {
margin-top:60px;
}
.clients__arrow{
  margin-left: 6px;
  font-weight: 700;
}

/* CTA final centré */
.clients__cta{ margin-top: 28px; }
.clients__ctaBtn{
margin-top:50px;
  display:inline-block; background:#37BE2A; color:#fff; font-weight:bold;
  padding:13px 43px; border-radius:3px; transition:filter .15s ease, transform .02s ease;
margin-left: auto;
    margin-right: auto;
}
.clients__ctaBtn:hover{ filter:brightness(1.06); color:white; }
.clients__ctaBtn:active{ transform:translateY(1px); }

/* Responsives */
@media (max-width: 1199.98px){
  .clients__grid{ grid-template-columns: repeat(2, 1fr); }

}
@media (max-width: 719.98px){
  .clients__grid{ grid-template-columns: 1fr; gap: 28px; }

  .clients__intro{ padding: 0 16px; }
}


/* ===== KPIs (DETAM EN CHIFFRES) ===== */
.kpis{
  position: relative;
  overflow: hidden;
  color: #fff;
  padding: 100px 0 56px;
  background: #0b0f14;
  isolation: isolate;
}
.kpis__bg{
  position: absolute;
  inset: 0;
  background-image: var(--kpis-bg);
  background-size: cover;
  background-position: center;
  z-index: -2;
}
.kpis__veil{
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,.55);
  z-index: -1;
}

.kpis__container{
  max-width: 1140px;
  margin: 0 auto;
  padding: 0 16px;
  text-align: center;
}

/* Titre + filets verts */
.kpis__heading{
  margin: 0 0 28px 0;
    font-size: 1.2rem;
    line-height: 1.2;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .04em;
  color: #ffffff;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 24px;
}
.kpis__heading::before,
.kpis__heading::after{
  content:"";
  display:block;
  height: 3px;
  width: 38%;
  background: #3CD22D;
  border-radius: 2px;
}
.kpis__heading > span{ display:inline-block; }

/* Liste / items */
.kpis__list{
  list-style: none;
  margin: 0;
  padding: 8px 0 24px;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0;
}
.kpis__item{
  padding: 12px 18px 22px;
  position: relative;
}


/* Valeur (préfixe + chiffre + suffixe) */
.kpis__value{
  display: inline-flex;
  align-items: baseline;
  gap: 6px;
  margin-bottom: 10px;
}
.kpis__prefix,
.kpis__suffix{
  font-size: 28px;
  font-weight: 700;
  color: #37be2a;
}
.kpis__number{
  font-size: 72px;
  line-height: .95;
  font-weight: 800;
  letter-spacing: .01em;
  color: #ffffff;
}

/* Libellé */
.kpis__label{
margin: 0;
    font-weight: 600;
    font-size: 16px;
    margin-top: 15px;
    line-height: 1.35;
    text-transform: uppercase;
    letter-spacing: .06em;
    color: #ffffff;
}

/* CTA */
.kpis__cta{ margin-top: 8px; }
.kpis__btn{
  display: inline-block;
  min-width: 180px;
  height: 44px;
  padding: 0 18px;
  line-height: 44px;
  background: #37be2a;
  color: #fff;
  border-radius: 6px;
  text-decoration: none;
  font-weight: 700;
  transition: filter .15s ease, transform .02s ease;
}
.kpis__btn:hover{ filter: brightness(1.06); }
.kpis__btn:active{ transform: translateY(1px); }

/* Responsive */
@media (max-width: 1023.98px){
  .kpis{ padding: 48px 0; }
  .kpis__list{ grid-template-columns: repeat(2, 1fr); row-gap: 14px; }
  .kpis__number{ font-size: 56px; }
  .kpis__heading::before, .kpis__heading::after{ width: 120px; }
}
@media (max-width: 599.98px){
  .kpis__list{ grid-template-columns: 1fr; }
  .kpis__item{ border-top: 1px solid rgba(255,255,255,.18); }
  .kpis__heading::before, .kpis__heading::after{ width: 72px; }
}



/* ====== NOS RÉALISATIONS – MOSAÏQUE ====== */

.home-reas__title, .home-reas__title span {
    position: relative;
    display: inline-block;
    padding: 0 22px;
    font-size: 1.2rem;
    line-height: 1.2;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .04em;
    color: #1E1E1E;
}

.home-reas {
    padding: 56px 0 64px;
}
.home-reas__head {
text-align:center;
padding-bottom:40px;
}
.home-reas__title::before {
    right: 100%;
}
.home-reas__title::after {
    left: 100%;
}

.home-reas__title::before, .home-reas__title::after {
    content: "";
    position: absolute;
    top: 50%;
    width: 420px;
    height: 3px;
    background: #3CD22D;
    transform: translateY(-50%);
}

.home-reas__grid{
  display:grid; gap:22px;
  grid-template-columns: repeat(12, 1fr);
max-width: 1365px;
padding: 0 16px;
margin-left:auto;
margin-right:auto;
}

/* Cartes et tailles */
.rea-card{ position:relative; overflow:hidden; }
.rea-card--lg{ grid-column: span 6; min-height: 500px; }
.rea-card--sm{ grid-column: span 4; min-height: 400px; }
/* Ta règle : 1er, 2e, avant-dernier, dernier */
.home-reas__grid > .rea-card:nth-child(1){ grid-column:span 5; }
.home-reas__grid > .rea-card:nth-child(2){ grid-column:span 7; }
.home-reas__grid > .rea-card:nth-last-child(2){ grid-column:span 7; }
.home-reas__grid > .rea-card:last-child{ grid-column:span 5; }

.rea-card__link{ display:block; height:100%; color:inherit; text-decoration:none; }
.rea-card__media{ position:relative; height:100%; }
.rea-card__img{
  position:absolute; inset:0; width:100%; height:100%; object-fit:cover;
  transition: transform .4s ease-out;
}
.rea-card__link:hover .rea-card__img{ transform: scale(1.02); }

/* Badges (types de réalisations) */
.rea-card__badges{
  position:absolute; left:12px; right:12px; bottom:10px;
  display:flex; flex-wrap:wrap; gap:5px; z-index:2;
}
.rea-badge{
  display:inline-flex; align-items:center; gap:6px;
  padding:4px 8px;  color:#fff;
  font-size:12px; line-height:1; border-radius:4px; backdrop-filter: blur(2px);
}
.rea-badge span{
color:white;
    text-decoration: underline;
font-size:0.90rem;
}

.rea-card__media::after {
content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 42%;
    pointer-events: none;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, .45) 55%, rgba(0, 0, 0, .75) 100%);
    z-index: 1;
}

.rea-badge__icon{ width:30px; height:20px; display:inline-block; }

/* Titre sous l’image */
.rea-card__meta{ padding:10px 2px 0; }
.rea-card__title{ display:block; font-size:15px; color:#1E1E1E; }

/* CTA */
.home-reas__cta{ text-align:center; margin-top:24px; }
.home-reas__btn{
    
    margin-top: 30px;
    display: inline-block;
    background: #37BE2A;
    color: #fff;
    font-weight: bold;
    padding: 13px 43px;
    border-radius: 3px;
    transition: filter .15s 
ease, transform .02s 
ease;
    margin-left: auto;
    margin-right: auto;
}

.home-reas__btn:hover {
    filter: brightness(1.06);
    color: white;
}

/* Responsive */
@media (max-width:1024px){
  .home-reas__grid{ grid-template-columns:repeat(6,1fr); }
  .home-reas__grid > .rea-card{ grid-column:span 6; } /* 2 colonnes */
}
@media (max-width:640px){
  .home-reas__grid{ grid-template-columns:1fr; }
  .home-reas__grid > .rea-card{ grid-column:1 / -1; } /* 1 colonne */
}

.home-reas .rea-card__link { 
  display: flex; 
  flex-direction: column; 
}

.home-reas .rea-card__media {
  height: auto;            /* ← remplace le height:100% */
  flex: 1 0 auto;          /* l'image prend la place dispo, le titre reste dessous */
}

/* Remettre le margin par défaut de <figure> à 0 si ton thème n’a pas de reset */
.home-reas figure.rea-card__media { 
margin: 0;

 }
.rea-card--lg .rea-card__media {
min-height: 500px !important;
    max-height: 500px !important;
}
.rea-card--sm .rea-card__media {
min-height: 400px !important;
    max-height: 400px !important;
}

/* Hauteur pilotée par le wrapper via un ratio */
.rea-card__media{
  position: relative;
  overflow: hidden;
  min-height: 0 !important; /* neutralise d’anciens tests éventuels */
}

.page-template-tpl-homepage  .cta__btn {
font-weight:bold;

}
/* Un ratio par taille pour uniformiser la hauteur des images */
.rea-card--lg .rea-card__media { aspect-ratio: 16 / 9; }  /* grands visuels */
.rea-card--sm .rea-card__media { aspect-ratio: 4 / 3; }   /* visuels “petits” */

/* L’image remplit le wrapper, jamais de min-height sur l’img */
.rea-card__img{
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  min-height: 0 !important;  /* important pour annuler tout min-height */
}

/* Fallback si aspect-ratio non supporté (vieux Safari/Edge) */
@supports not (aspect-ratio: 1 / 1){
  .rea-card--lg .rea-card__media { height: 420px; }
  .rea-card--sm .rea-card__media { height: 300px; }
}


.rea-card__media { min-height: 0 !important; }
.rea-card__img   { min-height: 0 !important; }

/* ===== CTA contact (Home) ===== */
.cta{
  background: #f5f6f7;          /* fond gris très clair */
  padding: 130px 0;
}

.cta__inner{
  /* si tu as déjà un conteneur global, tu peux retirer ces deux lignes */
  max-width: 1200px;
  margin: 0 auto;

  padding: 0 20px;
  display: grid;
  grid-template-columns: 1.1fr  2fr 0.7fr;
  gap: 25px;
  align-items: center;
}

.home .footer-secondary {
margin-top:0;
}

.cta__left{ text-transform: uppercase; text-align:right;}

.cta__eyebrow{
  margin: 0 0 2px 0;
  font-size: 22px;
  font-weight: 700;
line-height: 1.50rem;
  letter-spacing: .12em;
 text-align:right;
  color: #1f2937;               /* texte foncé */
}

.cta__title{
  margin: 0 0 10px 0;
  font-size: 28px;
  font-weight: 800;
  letter-spacing: .12em;
  color: #1f2937;
}

.cta__phone{
 text-align:right;
  display: inline-block;
  text-transform: none;
  margin-top: 6px;
  font-size: 25px;
  font-weight: 700;
  text-decoration: none;
  color: #2ecc40;               /* vert */
}

.cta__text, .cta__text p, .cta__text strong {
  color: #1E1E1E;
  font-size: 17px;
  line-height: 1.6;
}

.cta__text p{ margin: 0 10px 10px; }

.cta__btn{
text-transform: math-auto;
   font-size:1rem;
    display: inline-block;
    background: #37BE2A;
    color: #fff;
    font-weight: 500;
    padding: 13px 43px;
    border-radius: 3px;
    transition: filter .15s 
ease, transform .02s 
ease;
    margin-left: auto;
    margin-right: auto;
}

.cta__btn:hover{
  transform: translateY(-1px);
  opacity: .95;
}

/* Responsive */
@media (max-width: 1024px){
  .cta__inner{
    grid-template-columns: 1fr;
    gap: 20px;
    text-align: center;
  }
  .cta__phone{ font-size: 24px; }
}



/*# REALISATIONS TEMPLATES */
.header-realisations {
  padding:75px 50px;
  background: #F4F4F4;
}

.header-realisations h1 {
  margin-bottom:2rem;
}

.header-realisations__titre h1 div {
line-height: 1rem;
    letter-spacing: 1px;
    font-size: 24px;
    font-weight: 700;
    text-transform: uppercase;
    COLOR: #1E1E1E;
}
.header-realisations__titre h1 span {
    width: 270px;
    border: 0.125rem solid #3cd22d;
}
.header-realisations__titre h1 span {
  width: 270px;
}
.header-realisations__titre p, .header-realisations__titre strong {
color:#1E1E1E;
}


/*# sourceMappingURL=styles.css.map */

/* @changelog 2020-07-22 [EVOL] (Mirary) Ajustements graphique - DETAM - Mediapilote Flandres (2020-2897) */
.img-map img {
    width: 100%;
}




/* @Changelog 2020-07-27 [EVOL] (Anne-Lyse) Ajustements graphique - DETAM - Mediapilote Flandres (2020-2897) */
    body.home .modules-equipe__membrePhoto{
        width: 60%;
        padding-bottom: 60%;
    }




/* @Changelog 2020-08-27 [EVOL] (Anne-Lyse) Ajustements graphique - DETAM - Mediapilote Flandres (2020-2897) */


/* ===== Bloc NOS FORCES (home_pourquoi) ===== */
.home_pourquoi .wrap { max-width: 1140px; margin: 0 auto; padding: 40px 20px; }
.home_pourquoi .grid { display: grid; grid-template-columns: 1fr 1fr; gap: 40px; align-items: center; }
.home_pourquoi .col--left p, .home_pourquoi .col--left div, .home_pourquoi .col--left strong { color:#1E1E1E !important; }
.home_pourquoi .col--right p, .home_pourquoi .col--right div, .home_pourquoi .col--right strong, .home_pourquoi .col--right li { color:#1E1E1E !important; }
.home_pourquoi .forces-list { margin:0; padding:0; list-style:none; }
.home_pourquoi .forces-list li { position:relative; margin:10px 0 12px 0; padding-left:28px; }
.home_pourquoi .forces-list li::before {
  content:"•"; position:absolute; left:0; top:0; line-height:1; font-size:28px; color:#3CD22D;
}
.home_pourquoi .col--left * { text-align: right !important; }
.home_pourquoi__titre div {
    font-size: 19px !important;
    font-weight: bold;
    line-height: 30px;
}
.home_pourquoi__titre span {
      font-size: 19px !important;
       line-height: 30px;
}
.home_pourquoi__text {
    margin-left: 15%;
}
.home_pourquoi__text p, .home_pourquoi__text strong {
    line-height: 25px !important;
}

/* Responsive */
@media (max-width: 1024px){
  .home_pourquoi .grid { grid-template-columns: 1fr; }
}

/* ===== Bandeau RSE ===== */
.home-rse { background:#ADE59E; padding: 70px 0; }
.home-rse .wrap { max-width: 1140px; margin: 0 auto; padding: 0 20px; text-align:center; }
.home-rse__text { color:#1E1E1E; font-size: 21px; line-height: 1.7; margin: 0 0 18px; }
.home-rse__text strong {  color:#1E1E1E; font-size: 21px; font-weight:bold; }
.home-rse__cta .btn { 
    display: inline-block;
    background: white;
    color: #1E1E1E;
    font-size: 15px;
    font-weight: bold;
    border-radius: 5px;
    padding: 14px 22px;
    text-decoration: none;

}
.home-rse__cta .btn:hover { filter: brightness(1.08); }



/* ===========================
   DETAM – Header maquette v2
   =========================== */

/* Ouverture au survol / focus */
.detam-nav__item:hover > .detam-subnav,
.has-children:hover > .detam-subnav,
.menu-item-has-children:hover > .detam-subnav,
.detam-nav__item:focus-within > .detam-subnav {
  display: block !important;
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateX(-50%) translateY(12%);
}


/* S’assurer que rien ne coupe verticalement */
.detam-header__bar{ overflow: visible; }

/* LI parent */
.detam-nav__item{ position: relative; white-space: nowrap; }

/* Petit chevron indicatif */
.detam-nav__caret{
  display:inline-block; margin-left:8px;
  border:5px solid transparent; border-top-color:#f3f4f6;
  transform: translateY(-1px);
  transition: transform .15s ease, border-color .15s ease;
}
.detam-nav__item:hover > .detam-nav__link .detam-nav__caret,
.detam-nav__item:focus-within > .detam-nav__link .detam-nav__caret{
  transform: rotate(180deg) translateY(1px);
  border-top-color:#fff;
}

/* Sous-menu : masqué par défaut */
.detam-subnav{
  position: absolute;
  left: 50%;
  top: 86%;                                      /* <-- collé sous l’item */
  transform: translateX(-50%) translateY(24px);    /* état caché (on animera) */
  min-width: 290px;
  background: #5b6166;
  border-radius: 2px;
  box-shadow: 0 10px 28px rgba(0,0,0,.28);
  z-index: 10010;

  display: none;
  opacity: 0; visibility: hidden; pointer-events: none;
}

/* Ouverture au survol / focus clavier */
.detam-nav__item:hover > .detam-subnav,
.detam-nav__item:focus-within > .detam-subnav{
  display: block !important;
  opacity: 1; visibility: visible; pointer-events: auto;
  transform: translateX(-50%) translateY(24px);    /* plus aucun espace */
}

/* Items du panneau */
.detam-subnav__item{ display:block; }
.detam-subnav__link{
text-align:center;
  display:block; padding:11px 18px; font-size:15px;
  color:#fff; text-decoration:none; background:#5b6166;
  border-top:1px solid rgba(255,255,255,.12);
}
.detam-subnav__item:first-child .detam-subnav__link{ border-top:0; }
.detam-subnav__link:hover, .detam-subnav__link:focus{
  background:#3A3E41; color:#fff;
}

/* Mobile : on gèrera à clic plus tard, on laisse le hover desktop intact */
@media (max-width:1023.98px){
  .detam-subnav{ position:static; transform:none; box-shadow:none; }
}


:root{
  /* Hauteur du bandeau (desktop) */
  --detam-header-h: 72px;
  /* Couleurs */
  --detam-gray-900: #4a4f54;   /* gris foncé de la barre */
  --detam-white:    #ffffff;
  --detam-text:     #f3f4f6;   /* blanc/gris clair pour le texte nav */
  --detam-text-hov: #ffffff;   /* état survol/actif, léger gain */
}



/* Accessibilité (texte masqué visuellement) */
.sr-only {
  position:absolute!important;
  width:1px;height:1px;
  padding:0;margin:-1px;overflow:hidden;
  clip:rect(0,0,0,0);white-space:nowrap;border:0;
}

/* Conteneur général */
.detam-header{
  position: relative;
  z-index: 10000; 
  width: 100%;
  background: var(--detam-white); /* utile si la page déborde sous le logo */
}

/* Grille 2 colonnes : logo (blanc) + barre (gris) */
.detam-header__inner{
  display: grid;
  grid-template-columns: 22% 1fr; /* largeur visuelle du bloc logo */
  min-height: var(--detam-header-h);
}

/* Colonne logo */
.detam-header__logo{
  background: var(--detam-white);
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 20px 0px;              /* espace autour du logo */
  margin-left: auto;
  margin-right: auto;
}
.detam-header__logoLink{
  display: inline-flex;
  align-items: center;
}
.detam-header__logoImg{
  display: block;
  height: 75px;                 /* ajustez si besoin pour matcher la maquette */
  width: auto;
}

/* Burger (optionnel – seulement visible < 1024px) */
.detam-header__burger{
  margin-left: auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 44px; height: 44px;
  border: 0; border-radius: 6px;
  background: transparent;
  cursor: pointer;
}
.detam-header__burgerIcon{
  position: relative;
  width: 22px; height: 2px;
  background: #111;
  display: inline-block;
}
.detam-header__burgerIcon::before,
.detam-header__burgerIcon::after{
  content:""; position: absolute; left:0; right:0;
  height: 2px; background:#111;
}
.detam-header__burgerIcon::before{ top: -7px; }
.detam-header__burgerIcon::after { top:  7px; }

.footer-primary p, .footer-primary span, .footer-primary a {
    font-size: 15px;
}
.footer-primary__infoDevisTel span {
font-size:1.2rem;
}
.footer-primary__Coordonnees p, .footer-primary__Coordonnees span, .footer-primary__Coordonnees a {
    line-height: 21px;
}

/* Barre de navigation (colonne de droite) */
.detam-header__bar{
  position: relative;          /* nouveau */
  z-index: 10000;              /* nouveau : au-dessus du hero */
  background: var(--detam-gray-900);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 120px;
  min-height: var(--detam-header-h);
  overflow: visible;           /* important : ne rien couper */
}


/* Navigation principale */
.detam-nav{
  width: 100%;
  max-width: 1140px;         /* limite esthétique, optionnelle */
}
.detam-nav__list{
  list-style: none;
  margin: 0; padding: 0;

  display: flex;
  align-items: center;
  justify-content: space-between; /* répartition régulière */
  gap: 56px;                      /* réglage fin des inter-espaces */
}

/* Un item par lien, sans pavé ni soulignement */
.detam-nav__item{
  position: relative;
  white-space: nowrap;
}

/* Style des liens de premier niveau (identiques à la capture) */
.detam-nav__link{
  display: block;
  text-decoration: none;
  color: var(--detam-text);
  font-size: 17px;
  line-height: var(--detam-header-h);
  font-weight: 400;
  padding: 0;                 /* aucun fond, aucun padding latéral visible */
  transition: color .15s ease;
}
.detam-nav__link:hover,
.detam-nav__link:focus,
.detam-nav__item.current-menu-item > .detam-nav__link,
.detam-nav__item.current-menu-ancestor > .detam-nav__link{
  color: var(--detam-text-hov); /* léger éclaircissement au survol/actif */
}

/* Masque l’item WordPress "Accueil" s’il existe (classe par défaut) */
.detam-nav__item.menu-item-home{ display:none; }


@media (min-width:1024px){
  .detam-nav__item.has-children{ position:relative; }
  .detam-nav__item.has-children::after{
    content:"";
    position:absolute;
    left:0; right:0;
    top:100%;
    height:14px;              /* même écart */
    background:transparent;   /* zone cliquable/invisible */
    display:block;
  }
}
.detam-nav__item.is-open > .detam-subnav{ 
  display:block !important; opacity:1; visibility:visible; pointer-events:auto;
}


/* ------------------------------
   Responsive : mobile / tablette
   ------------------------------ */
@media (max-width: 1023.98px){
  :root{ --detam-header-h: 64px; }

  .detam-header__inner{
    grid-template-columns: 1fr;    /* logo au-dessus, barre en dessous */
  }

  .detam-header__logo{
    padding-right: 12px;
  }
  .detam-header__burger{ display: inline-flex; } /* visible sur mobile */

  .detam-header__bar{
    justify-content: flex-start;
    padding: 0 18px;
  }

  /* La nav devient un bloc déroulant sous la barre si vous changez data-state */
  .detam-nav{
    width: 100%;
  }
  .detam-nav__list{
    justify-content: flex-start;
    gap: 28px;
    overflow-x: auto;         /* scroll horizontal si trop d’items */
  }

  /* Hooks si vous branchez un script de toggle */
  .detam-nav[data-state="closed"]{ display: block; }
  .detam-header__burger[aria-expanded="true"] + .detam-header__bar .detam-nav,
  .detam-nav[data-state="open"]{ display: block; }
}

/* Imprimé (optionnel) */
@media print{
  .detam-header__burger{ display:none !important; }
}

/* ===== Burger ===== */
.detam-burger{ display:none; margin-left:auto; width:44px;height:44px; border:0; background:transparent; cursor:pointer; }
.detam-burger__icon,
.detam-burger__icon::before,
.detam-burger__icon::after{ position:relative; display:block; width:22px; height:2px; background:#121212; content:""; }
.detam-burger__icon::before{ position:absolute; top:-7px; left:0; right:0; }
.detam-burger__icon::after { position:absolute; top: 7px; left:0; right:0; }

/* ===== Drawer (overlay + panneau) ===== */
.detam-drawer{ position:fixed; inset:0; z-index:11000; pointer-events:none; visibility:hidden; }
.detam-drawer.is-open{ pointer-events:auto; visibility:visible; }
.detam-drawer__overlay{
  position:absolute; inset:0; background:rgba(0,0,0,.4);
  opacity:0; transition:opacity .2s ease;
}
.detam-drawer.is-open .detam-drawer__overlay{ opacity:1; }

.detam-drawer__panel{
  position:absolute; left:0; top:0; height:100%;
  width:84vw; max-width:360px;
  background:#4a4f54; color:#fff;
  transform:translateX(-100%); transition:transform .22s ease;
  display:flex; flex-direction:column;
  box-shadow: 0 12px 28px rgba(0,0,0,.35);
}
.detam-drawer.is-open .detam-drawer__panel{ transform:none; }

.detam-drawer__head{
  display:flex; align-items:center; justify-content:space-between;
  padding:14px 16px; border-bottom:1px solid rgba(255,255,255,.1);
}
.detam-drawer__brand img{ display:block; height:36px; width:auto; }

.detam-drawer__close {
  position: relative;
  width: 32px;
  height: 32px;
  background: transparent;
  border: none;
  cursor: pointer;
  padding: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: transform 0.2s ease;
}

.detam-drawer__close:hover {
  transform: rotate(90deg);
}

.detam-drawer__close span {
  position: relative;
  display: block;
  width: 20px;
  height: 20px;
}

.detam-drawer__close span::before,
.detam-drawer__close span::after {
  content: '';
  position: absolute;
  left: 50%;
  top: 50%;
  width: 100%;
  height: 3px;
  background-color: white; /* Couleur de la croix */
  transform-origin: center;
}

.tpl-corner {
margin-top:45px;
}

.detam-drawer__close span::before {
  transform: translate(-50%, -50%) rotate(45deg);
}

.detam-drawer__close span::after {
  transform: translate(-50%, -50%) rotate(-45deg);
}

/* Option : effet au survol */
.detam-drawer__close:hover span::before,
.detam-drawer__close:hover span::after {
  background-color: #000; /* Couleur plus foncée au survol */
}

/* Option : pour un style plus moderne avec bordure arrondie */
.detam-drawer__close span::before,
.detam-drawer__close span::after {
  border-radius: 1px;
}

.detam-drawer__nav{ overflow:auto; padding:10px 0 24px; }
.detam-drawer__list{ list-style:none; margin:0; padding:0; }
.detam-drawer__item{ border-bottom:1px solid rgba(255,255,255,.08); }

.detam-acc{ display:flex; align-items:center; gap:8px; }
.detam-acc__link{
  flex:1 1 auto; display:block; padding:14px 16px; color:#fff; text-decoration:none; font-size:16px;
}
.detam-acc__btn{
  flex:0 0 auto; margin-right:10px; width:36px;height:36px; border:0;background:transparent; color:#fff; cursor:pointer;
}
.detam-acc__chev{ display:inline-block; width:8px; height:8px; border-right:2px solid #fff; border-bottom:2px solid #fff; transform:rotate(-45deg); transition:transform .18s ease; }
.detam-acc__btn[aria-expanded="true"] .detam-acc__chev{ transform:rotate(45deg); }

.detam-acc__panel{ list-style:none; margin:0; padding:0 0 8px 0; }
.detam-acc__subitem{ }
.detam-acc__sublink{ display:block; padding:10px 28px; color:#f1f3f5; text-decoration:none; font-size:15px; }
.detam-acc__sublink:hover{ background:rgba(255,255,255,.06); color:#fff; }

/* ===== Responsive ===== */
@media (max-width: 991px){
  .detam-burger{ display:inline-flex; align-items:center; justify-content:center; }
  .detam-header__bar{ display:none; } /* on masque la nav horizontale */
}
/* Empêche le scroll de la page quand le tiroir est ouvert */
body.detam-no-scroll{ overflow:hidden; }



/* ================= DETAM – HERO (maquette) ================= */

.detam-hero{
  position: relative;
  width: 100%;
  overflow: hidden;
  height: 580px;                   /* hauteur desktop */
  background: #3f444a;             /* sous-couche si l’image charge lentement */
}

/* Ajouter à votre CSS existant */
.swiper-pagination-bullet.is-complete::after {
  width: 100% !important;
  animation: none !important;
  transition: width 0.3s ease;
}

.swiper-pagination-bullet.is-animating::after {
  animation: fillProgress var(--detam-autoplay, 5000ms) linear forwards;
}

@keyframes fillProgress {
  from { width: 0; }
  to { width: 100%; }
}

/* Grille stricte : panneau (fixe) | slider (avec séparateur via border-left) */
/* ⬇️ CHANGEMENT: .detam-hero__inner -> .detam-hero__grid et 2 colonnes */
.detam-hero__grid{
  position: relative;
  display: grid;
      grid-template-columns: 372px 1fr;
  grid-template-rows: 100%;
  width: 100%;
  height: 100%;
}

/* ---------- Panneau blanc à gauche (collé, sans arrondis) ---------- */
.detam-hero__panel{
 text-align:center;
  grid-column: 1/2;
  grid-row: 1/2;
  background: #F4F4F4;
  border-radius: 0;
  box-shadow: none;
  z-index: 999;
  padding: 36px 34px 28px 34px;    /* tes valeurs affinées */

  display: flex;
  flex-direction: column;
  gap: 18px;
}

/* Titre / styles conservés */
.detam-hero__title{
  margin: 0;
  font-size: 26px;
  line-height: 1.20;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .6px;
  color: #131722;
  text-align:left;
padding: 0 0 0 40px;
}
.is-accent{ color: #3cd22d; }
.detam-hero__title .is-accent{
  margin: 0;
  font-size: 26px;
  line-height: 1.20;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .6px;

}

/* Sous-texte */
.detam-hero__subline{
  margin: -13px 0 6px 0;
  font-size: 20px;
  color: #131722;
  text-align:left;
padding: 0 0 0 40px;
}

/* Liste avec coches */
.detam-hero__desc ul {
    margin: 10px 0 0 0;
    padding: 0 0 0 57px; /* ajouter du padding à gauche pour les puces */
    list-style: disc;    /* remplace "none" → affiche les bullet points */
    text-align: left;    /* ferrer à gauche */
}
.detam-hero__desc li{
  position: relative;
  margin: 22px 0;
  font-size: 18px;
  letter-spacing: .4px;
  color: #131722;
  text-align: left;
}


/* CTA */
.margin-cta-slider{ margin-top: auto; }  /* au cas où tu l’utilises encore */
.detam-hero__ctaWrap{ margin-top: auto; }
.detam-hero__cta{
font-weight:bold;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 46px;
  padding: 0 24px;
  background: #37be2a;
  color: white;
  font-size: 17px;
  border-radius: 5px;
  text-decoration: none;
  transition: filter .15s ease, transform .02s ease;
}
.detam-hero__cta:hover{ filter: brightness(1.06); }
.detam-hero__cta:active{ transform: translateY(1px); }

/* ---------- Colonne slider (droite) ---------- */
/* ⬇️ NOUVEAU: on cible ta div .detam-hero__sliderCol */
.detam-hero__sliderCol{
  grid-column: 2/3;
  grid-row: 1/2;
  position: relative;
  height: 100%;                 /* indispensable pour que Swiper prenne la hauteur */
  overflow: hidden;             /* sécurité */
}

/* Conteneur Swiper */
.detam-hero__swiper{
  position: absolute;           /* occupe toute la colonne droite */
  inset: 0;
  height: 100%;
  width: 100%;
  overflow: hidden;
}

/* Chaque slide occupe toute la colonne droite, image en cover */
.detam-hero__slide{
  position: relative;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
}

/* Légende centrée dans la colonne slider */
.detam-hero__legend{
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: 54px; /* espace pour la pagination */
  margin: 0;
  padding: 0 24px;
  color: #ffffff;
  font-size: 18px;
  line-height: 1.5;
  text-align: center;
  text-shadow: 0 2px 18px rgba(0,0,0,.45);
  max-width: min(1000px, 92%);
}

/* Pagination barrettes */
.detam-hero__pagination{
  position: absolute;
  left: 0;                     /* ⬅️ au lieu de left:50% */
  right: 0;                    /* ⬅️ pour contraindre à la colonne slider */
  bottom: 24px;
  display: flex;
  justify-content: center;     /* ⬅️ centrage dans la colonne */
  align-items: center;
  gap: 14px;
  width: auto;
  z-index: 2;                  /* au-dessus du dégradé */
}

.detam-hero__pagination .swiper-pagination-bullet{
  position: relative;
  width: 64px;
  height: 4px;
  margin: 0 !important;
  border-radius: 3px;
  background: rgb(255 255 255 / 81%);
  opacity: 1;
  cursor: pointer;
  overflow: hidden;                    /* ⬅️ pour masquer le remplissage */
}

/* Ligne fine SOUS la piste (ce que tu avais avant sur ::after) */
.detam-hero__pagination .swiper-pagination-bullet::before{
  content:"";
  position:absolute;
  left:0; right:0; bottom:-6px;
  height:2px;
  background: rgb(255 255 255 / 81%);
  border-radius: 2px;
}


/* Classe ajoutée en JS sur la bullet active pour lancer l'animation */
.detam-hero__pagination .swiper-pagination-bullet.is-animating::after{
  animation: detamProgress var(--detam-autoplay, 5000ms) linear forwards;
}

/* Animation du remplissage */
@keyframes detamProgress{
  from { width:0%; }
  to   { width:100%; }
}

/* Mobile : barres plus courtes (tu avais déjà cette logique) */
@media (max-width:1023.98px){
  .detam-hero__pagination .swiper-pagination-bullet{ width:48px; }
}

/* Remplissage animé (le “timer”) */
.detam-hero__pagination .swiper-pagination-bullet::after{
  content:"";
  position:absolute;
  left:0; top:0; bottom:0;
  width:0%;
  background:#3cd22d;                /* couleur du remplissage */
  border-radius: 3px;
  transform-origin:left center;
}
.detam-hero__pagination .swiper-pagination-bullet-active{
  background: rgb(255 255 255 / 81%);
}

/* Pastille “Nous contacter” (inchangé) */
.detam-hero__contact{
position: absolute;
    right: 0px;
    top: 205px;
    width: 64px;
    height: 64px;
    background: #3cd22d;
    border-top-left-radius: 10px;
    border-bottom-left-radius: 10px;
    display: grid;
    place-items: center;
    text-decoration: none;
    color: #fff;
    box-shadow: 0 8px 18px rgba(0, 0, 0, .18);
  z-index: 4;
}
.detam-hero__contactIcon{
  width: 24px; height: 24px; display: block;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M22 2L11 13'></path><path d='M22 2L15 22L11 13L2 9L22 2Z'></path></svg>");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 24px 24px;
  margin-top: -4px;
}
.detam-hero__contactLabel{
  position: absolute;
  bottom: 8px; left: 50%;
  transform: translateX(-50%);
  font-size: 10px; line-height: 1.1; text-align: center; color: #fff;
}

/* =================== Responsive =================== */

/* Large tablette */
@media (max-width: 1279.98px){
  .detam-hero{ height: 520px; }
  .detam-hero__grid{ grid-template-columns: minmax(340px, 22%) 1fr; }
}

/* Tablette / Mobile */
@media (max-width: 1023.98px){
  .detam-hero{ height: 480px; }
  .detam-hero__grid{ grid-template-columns: 1fr; }

  .detam-hero__panel{
text-align:center;
pointer-events: none;
    position: absolute;
    left: 12px; right: 12px; top: 12px;
    width: auto; height: auto;
    padding: 22px;
    background: #ffffff;
    z-index: 3;
  }

  .detam-hero__sliderCol{
    grid-column: 1/2;          /* le slider passe pleine largeur */
    border-left: 0;            /* pas de séparateur en mobile */
  }

  .detam-hero__legend{
    font-size: 16px;
    bottom: 40px;
    max-width: 92%;
  }
  .detam-hero__pagination .swiper-pagination-bullet{ width: 48px; }
  .detam-hero__contact{
    right: 12px; top: 12px;
    width: 56px; height: 56px;
  }
  .detam-hero__contactLabel{ font-size: 9px; }
}

/* Petits mobiles */
@media (max-width: 599.98px){
  .detam-hero__desc li{ margin: 10px 0; }
}

/* Assombrit le bas de l’image pour renforcer la lisibilité du texte */
.detam-hero__slide::after{
  content: "";
  position: absolute;
  left: 0; right: 0; bottom: 0;
  height: 42%;                     /* hauteur de la zone assombrie */
  pointer-events: none;            /* ne bloque pas le swipe/clics */
  background: linear-gradient(
    180deg,
    rgba(0,0,0,0) 0%,
    rgba(0,0,0,.45) 55%,
    rgba(0,0,0,.75) 100%
  );
  z-index: 1;                      /* sous le texte, au-dessus de l’image */
}

/* S’assure que le texte et la pagination passent bien au-dessus du dégradé */
.detam-hero__legend,
.detam-hero__pagination{
  position: absolute;              /* déjà le cas chez toi, on réaffirme */
  z-index: 2;
}
/* =============================
   Réalisations (page liste) .rl
   ============================= */

.rl{ padding:24px 0 48px; }

/* Grille */
.rl-grid{
  display:grid;
  grid-template-columns:repeat(12, 1fr);
  gap:22px;
  max-width:1365px;
  padding:0 16px;
  margin:0 auto;
}

/* Carte — base demi-largeur */
.rl-grid > .rl-card{ position:relative; overflow:hidden; grid-column:span 6; }
.rl-card__link{ display:block; color:inherit; text-decoration:none; }

.rl-card__media{
  position:relative;
  aspect-ratio:4 / 3;
  overflow:hidden;
  margin:0;
  min-height:450px;
  max-height:600px;
  width:100%;
}
.rl-card__img{
  position:absolute; inset:0;
  width:100%; height:100%;
  object-fit:cover;
  transition:transform .35s ease;
}
.rl-card__link:hover .rl-card__img{ transform:scale(1.02); }
.rl-card__meta{ padding:10px 2px 0; }
.rl-card__title{ display:block; font-size:15px; color:#1E1E1E; }

/* Dégradé */
.rl-card__media::after{
  content:"";
  position:absolute; left:0; right:0; bottom:0;
  height:42%;
  background:linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,.45) 55%, rgba(0,0,0,.75) 100%);
  pointer-events:none; z-index:1;
}

/* === PATTERN cycle de 8 — se répète à l'infini ==================
   1 → span 5   | 2 → span 7
   3 → span 12  (full)
   4, 5 → span 6
   6, 7 → span 6
   8 → span 12  (full)
   9 → span 5   | 10 → span 7  … etc.
   ================================================================ */
.rl-grid > .rl-card:nth-child(8n+1){ grid-column:span 5; }
.rl-grid > .rl-card:nth-child(8n+2){ grid-column:span 7; }
.rl-grid > .rl-card:nth-child(8n+3){ grid-column:span 12; }
.rl-grid > .rl-card:nth-child(8n+0){ grid-column:span 12; }

/* Ratio cinéma pour les cartes larges */
.rl-grid > .rl-card:nth-child(8n+1) .rl-card__media,
.rl-grid > .rl-card:nth-child(8n+2) .rl-card__media,
.rl-grid > .rl-card:nth-child(8n+3) .rl-card__media,
.rl-grid > .rl-card:nth-child(8n+0) .rl-card__media{ aspect-ratio:16 / 9; }

/* Responsive tablette */
@media (max-width:1024px){
  .rl-grid{ grid-template-columns:repeat(6, 1fr); }
  .rl-grid > .rl-card,
  .rl-grid > .rl-card:nth-child(8n+1),
  .rl-grid > .rl-card:nth-child(8n+2){ grid-column:span 3; }
  .rl-grid > .rl-card:nth-child(8n+3),
  .rl-grid > .rl-card:nth-child(8n+0){ grid-column:span 6; }
  .rl-grid > .rl-card .rl-card__media{ aspect-ratio:16 / 9; }
}

/* Responsive mobile */
@media (max-width:640px){
  .rl-grid{ grid-template-columns:1fr; }
  .rl-grid > .rl-card,
  .rl-grid > .rl-card:nth-child(8n+1),
  .rl-grid > .rl-card:nth-child(8n+2),
  .rl-grid > .rl-card:nth-child(8n+3),
  .rl-grid > .rl-card:nth-child(8n+0){ grid-column:1 / -1; }
  .rl-grid > .rl-card .rl-card__media{ aspect-ratio:16 / 9; }
}

/* ========== Badges ========== */
.rl-badges{
  position:absolute; left:12px; right:12px; bottom:10px;
  display:flex; flex-wrap:wrap; gap:5px; z-index:2;
}
.rea-badge__icon{ width:30px; height:20px; display:inline-block; }
.rea-badge__txt{ color:#fff; text-decoration:underline; font-size:.90rem; }

/* ========== Bouton Charger plus ========== */
.rl-loadmore{
  display:flex; justify-content:center;
  margin:40px auto 0;
  padding:0 16px;
  max-width:1365px;
}
.rl-loadmore__btn{
  display:inline-flex; align-items:center; gap:8px;
  height:48px; padding:0 36px;
  border-radius:9999px; border:2px solid #3BD22D;
  background:#fff; color:#1E1E1E;
  font:600 15px/1 system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  cursor:pointer;
  transition:background .2s, color .2s;
}
.rl-loadmore__btn:hover{
  background:#3BD22D; color:#fff;
}
.rl-loadmore__btn:disabled{
  opacity:.5; cursor:wait;
}

/* ========== Filtres / Chips ========== */
.header-realisations .grid-container{ max-width:1365px; }

.rl-filter{
  max-width:1365px;
  margin:8px auto 18px;
  padding:0 16px;
}
.rl-filter__head{ margin-bottom:12px; font-weight:600; }
.rl-chips{ display:flex; flex-wrap:wrap; gap:14px; }

.rl-chip{
  display:inline-flex; align-items:center; gap:10px;
  height:36px; padding:0 16px;
  border-radius:9999px; border:1px solid #E6E7EA;
  background:#fff; color:#2B2F33;
  font:600 14px/1 system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  text-decoration:none;
  transition:background-color .15s, border-color .15s, color .15s, filter .15s;
}
.rl-chip:hover{ background:#FAFAFA; border-color:#CFD3D8; }

.rl-chip.is-active,
.rl-chip[aria-pressed="true"]{
  background:#3F444A; border-color:#3F444A; color:#fff;
}
.rl-chip.is-active:hover{ filter:brightness(1.03); }
.rl-chip.is-active span,
.rl-chip[aria-pressed="true"] span{ color:#fff; }

.rl-chip__icon{
  flex:0 0 16px; width:16px; height:16px;
  display:inline-grid; place-items:center;
  font-weight:700; font-size:14px; line-height:1;
}
.rl-chip[aria-pressed="false"] .rl-chip__icon::before{ content:'+'; color:#111; }
.rl-chip[aria-pressed="true"]  .rl-chip__icon::before{ content:'×'; color:#fff; }

.rl-chip:focus-visible{ outline:2px solid #3CD22D; outline-offset:2px; }
.rl-chip, .rl-chip *{ user-select:none; }

/* ========== Message vide ========== */
.rl-empty{
  grid-column:1 / -1;
  text-align:center;
  padding:48px 0;
  color:#757575;
  font-size:16px;
}

/* ===========================
   Header Single Réalisation
   Scope .hs-*
   =========================== */

.hs { padding: 55px 0 55px; background: #f7f8f8; }
.hs__title { margin-bottom: 22px; }

/* Titre */
.hs__h1 {
  margin: 0 0 6px 0;
  font-size: clamp(22px, 2.4vw, 30px);
  line-height: 0;
  font-weight: 800;
  letter-spacing: .02em;
  text-transform: uppercase;
}
body > main > section.hs > div > div > div > div.hs__title > h1 > div {
margin-bottom:0;
}

.hs__title {

}

/* Bloc "Une info, un devis ?" du footer */
.footer-primary__infoDevis {
  /* on garde la typographie de .footer-primary__menuFooter */
}

.footer-primary__infoDevisContent {
  margin-top: 0.75rem;
  font-size: 0.875rem;
  line-height: 1.5;
}

.footer-primary__infoDevisHoraires {
  margin: 0 0 0.5rem;
}

.footer-primary__infoDevisTel {
  margin: 0 0 1rem;
}

.footer-primary__infoDevisTel span {
  font-weight: 700;           /* Numéro de téléphone en gras */
}

.footer-primary__infoDevisButton a {
  display: inline-block;
  padding: 0.65rem 1.8rem;
  background-color: #ffffff;  /* Bouton blanc, comme sur la maquette */
  color: #333333;
  font-size: 0.875rem;
  font-weight: 600;
  text-decoration: none;
  border-radius: 2px;
}

.footer-primary__infoDevisButton a:hover {
  background-color: #f2f2f2;  /* très léger hover */
}


.single-realisations ul {
    list-style: unset;
}


.single-realisations .hs-badge__icon {
    width: 35px;
    height: 35px;
filter: invert(1);
}

.hs-badge__txt {
color:#1E1E1E !important;
font-size: 18px;
}


/* La bordure verte d’underline est déjà stylée via .h1__bordure chez toi. 
   Si besoin de renfort, dé-commente :
   .hs .h1__bordure { display:block; height:4px; width:80px; background:#2CC84D; margin-top:8px; }
*/

/* Badges (ligne sous le titre) */
.hs__badges{
  display:flex;
  align-items:center;
  gap: 22px;
  margin: 14px 0 12px;
  flex-wrap: wrap;
}

.hs-badge{
  display:inline-flex;
  align-items:center;
  gap: 10px;
  color:#1f2328;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .08em;
  line-height: 1;
}

.hs-badge__icon{
  display:inline-block;
  width: 22px;
  height: 22px;
  object-fit: contain;
  vertical-align: middle;
  /* l'icône est monochrome ? laisser tel quel ; sinon pas de filter */
}

.hs-badge__txt{
  display:inline-block;
}

/* Intro (paragraphe) */
.hs__intro{
  margin-top: 8px;
  margin-bottom: 10px;
  color:#1f1f1f;
  font-size: 14.5px;
  line-height: 1.6;
}
.hs__intro p, .hs__intro li, .hs__intro strong {
color:#1f1f1f;
}
.hs__fiche p, .hs__fiche li, .hs__fiche strong {
color:#1f1f1f;
}

/* Fiche d’identité (liste à puces) */
.hs__fiche{
  margin-top: 30px;
  padding-top: 2px;
}

.hs__fiche ul{
  margin: 8px 0 0;
  padding-left: 18px;
}
.hs__intro ul{
  margin: 8px 0 0;
  padding-left: 18px;
}

.hs__intro.wysiwyg p, .hs__intro.wysiwyg strong, .hs__intro.wysiwyg li {
    font-size: 17px;
}
.hs__fiche.wysiwyg p, .hs__fiche.wysiwyg strong, .hs__fiche.wysiwyg li {
    font-size: 16px;
}

.hs__fiche li{
  color:#1f1f1f;
  font-size: 14.5px;
  line-height: 1.5;
}

/* renfort gras pour les libellés en début de ligne */
.hs__fiche li strong{
  font-weight: 700;
}

/* Confort responsif léger */
@media (max-width: 640px){
  .hs__badges { gap: 16px; }
  .hs-badge__txt { font-size: 14px; }
}

.single-realisations .h1__bordure {
    width: 75rem;
border:2px solid #3cd22d;
}

.rea-card__city{
  color: #3CD22D;          /* vert */
  text-transform: uppercase;/* majuscules */
  font-weight: 700;         /* optionnel : mise en valeur */
}
/* H1 : tiret en vert */
.hs__h1 .hs__dash{
  color: #3CD22D;
}

/* H1 : ville en gris + maj */
.hs__h1 .hs__city{
  color: #929292;
  text-transform: uppercase;
  font-weight: 700;
}


/* ===== Galerie (section sg) ===== */
.sg { margin: 24px auto 40px; }
.sg-empty { opacity: .7; }

/* Masonry simple via colonnes */
.sg-grid{
  column-count: 3;
  column-gap: 18px;
}
@media (max-width: 1100px){ .sg-grid{ column-count: 2; } }
@media (max-width: 640px) { .sg-grid{ column-count: 1; } }

/* Éléments */
.sg-item{
  display: inline-block;
  width: 100%;
  margin: 0 0 18px;
  break-inside: avoid;
}
.sg-link{ display:block; position:relative;  overflow:hidden; }
.sg-img{
  display:block; width:100%; height:auto; 
  transform: translateZ(0);
  transition: transform .2s ease, filter .2s ease;
    max-height: 355px;
min-height: 355px;
    object-fit: cover;
}
.sg-link::after{
  content:""; position:absolute; inset:0;
  background:linear-gradient(to bottom, rgba(0,0,0,0) 30%, rgba(0,0,0,.0) 100%);
  opacity:0; transition:opacity .2s ease;
}
.sg-link:hover .sg-img{ transform: scale(1.01); }
.sg-link:hover::after{ opacity:.06; }

/* ===== Lightbox ===== */
.sg-lightbox{
  position: fixed; inset:0; z-index: 9999;
  display: grid; grid-template-columns: auto 1fr auto;
  grid-template-rows: auto 1fr auto;
  align-items: center; justify-items: center;
  background: rgba(0,0,0,.78);
  opacity: 0; pointer-events: none; transition: opacity .18s ease;
}
.sg-lightbox.is-open{ opacity:1; pointer-events:auto; }

.sg-lightbox__frame{
  grid-column: 2; grid-row: 2;
  margin:0; max-width: min(92vw, 1600px); max-height: 88vh;
  display:flex; align-items:center; justify-content:center;
}
#sgLightboxImg{
  max-width: 100%; max-height: 88vh; width: auto; height: auto;
  box-shadow: 0 12px 30px rgba(0,0,0,.45);
  border-radius: 6px;
  background: #111;
}

/* Boutons */
.sg-btn{
  appearance:none; border:0; cursor:pointer;
  width: 44px; height: 44px; border-radius: 9999px;
  background: rgba(255,255,255,.12); color:#fff;
  font-size: 28px; line-height: 44px; text-align: center;
  transition: background .15s ease, transform .15s ease;
  user-select: none;
}
.sg-btn:hover{ background: rgba(255,255,255,.22); transform: scale(1.05); }

.sg-close{ grid-column: 3; grid-row: 1; margin: 18px; font-size: 30px; }
.sg-prev { grid-column: 1; grid-row: 2; margin: 0 16px; font-size: 34px; }
.sg-next { grid-column: 3; grid-row: 2; margin: 0 16px; font-size: 34px; }

@media (max-width: 640px){
  .sg-prev, .sg-next{ width:40px; height:40px; font-size:28px; }
  .sg-close{ width:40px; height:40px; font-size:26px; }
}

.single-realisations .hs .grid-container {
max-width: 1365px !important;
}
#galerie-photos {
max-width: 1365px !important;
padding-right: 2rem;
    padding-left: 2rem;
padding-top: 50px;
    padding-bottom: 50px;
     margin: 0 auto;
}

.modules-nos-realisations .swiper__prev, .modules-nos-realisations .swiper__next {
background: #ffffffd6;
    height: 70px;
    width: 70px;
    border-radius: 5px;
}

.modules-nos-realisations .swiper__prev svg g, .modules-nos-realisations .swiper__next svg g {
color:#000000 !important;
fill:#000000 !important;
}

/* ===== Entête "Ces réalisations peuvent vous intéresser" ===== */
.rel-head{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:24px;                 /* espace entre lignes et titre */
  margin:12px 0 28px;       /* ajustez si nécessaire */
}

.rel-head__title{
  margin:0;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
  text-align:center;
  color:#111;
  line-height:1.25;
  font-size:20px;
}
@media (min-width: 768px){
  .rel-head__title{ font-size:22px; }
}
@media (min-width: 1024px){
  .rel-head__title{ font-size:24px; }
}

.rel-head__line{
  height:4px;               /* épaisseur du trait */
  background:#51C26A;       /* vert de votre charte */
  flex:1;                   /* s’étire pour créer une longue ligne */
  max-width:260px;          /* limite pour garder des bords équilibrés */
  border-radius:2px;
}

/* Optionnel : si un ancien style d’underline subsiste, on le neutralise localement */
.modules-nos-realisations__titre .h1__bordure{ display:none !important; }

.modules-nos-realisations .grid-container {
max-width:1365px;
padding-right: 2rem;
    padding-left: 2rem;
    padding-top: 50px;
    padding-bottom: 50px;
    margin: 0 auto;
}

.modules-nos-realisations .rea-card--lg .rea-card__media {
    min-height: 400px !important;
    max-height: 400px !important;
}

.modules-nos-realisations .swiper__next,  .modules-nos-realisations .swiper__prev {
top:42% !important;
}

.cta-realisations-details {
background:white !important;
}



/* Contact Formulaire Section */
.contact-formulaire {
  padding: 60px 20px;
}

.contact-formulaire__container {
  max-width: 1400px;
  margin: 0 auto;
}

.contact-formulaire__grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 60px;
}

@media (max-width: 768px) {
  .contact-formulaire__grid {
    grid-template-columns: 1fr;
    gap: 40px;
  }
}

/* Colonne gauche */
.contact-formulaire__left {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

/* Contact Info */
.contact-formulaire__contact-info {
  margin-bottom: 20px;
}

.contact-formulaire__title-small {
  font-size: 24px;
  font-weight: 700;
  margin-bottom: 10px;
  padding-bottom: 15px;
  border-bottom: 3px solid #3CD22D;
  display: inline-block;
  text-transform: uppercase;
  color: #1E1E1E;
}

.contact-formulaire__phone {
  color: #1E1E1E;
  font-size: 24px;
  font-weight: 700;
  margin-bottom: 7px;
  line-height: 1.2;
}

.contact-formulaire__hours {
  font-size: 15px;
  line-height: 1.6;
  color: #1E1E1E;
  font-weight: bold;
}

/* Form Section */
.contact-formulaire__form-section {
  padding-top: 30px;
  border-top: 1px solid #e0e0e0;
}

.contact-formulaire__title-main {
  font-size: 24px;
  font-weight: 700;
  margin-bottom: 20px;
  padding-bottom: 15px;
  border-bottom: 3px solid #3CD22D;
  display: inline-block;
  text-transform: uppercase;
  color: #1E1E1E;
}

.contact-formulaire__description {
  font-size: 15px;
  margin-bottom: 30px;
  line-height: 1.6;
  color: #1E1E1E;
}

/* Colonne droite */
.contact-formulaire__right {
  display: flex;
  flex-direction: column;
}

.contact-formulaire__map-container {
  border-radius: 8px;
  position: sticky;
  top: 20px;
}

.contact-formulaire__title-map {
  font-size: 24px;
  font-weight: 700;
  margin-bottom: 20px;
  padding-bottom: 15px;
  border-bottom: 3px solid #3CD22D;
  display: inline-block;
  text-transform: uppercase;
  color: #1E1E1E;
}

/* ===== Formulaire CF7 ===== */
.contact-formulaire__formulaire {
  margin-top: 20px;
}

.contact-form-wrapper {
  display: flex;
  flex-direction: column;
  gap: 5px;
}

/* Rangées */
.form-row {
  display: flex;
  gap: 20px;
}

.form-row--two-cols {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
}

.form-row--full {
  display: flex;
  flex-direction: column;
}

.form-row--submit {
  margin-top: 10px;
}

/* Groupes */
.form-group {
  display: flex;
  flex-direction: column;
  width: 100%;
}

.form-group label {
  display: block;
  font-size: 14px;
  font-weight: 400;
  margin-bottom: 6px;
  color: #1E1E1E;
  line-height: 1.4;
}

/* Tous les inputs pleine largeur */
.contact-form-wrapper input[type="text"],
.contact-form-wrapper input[type="email"],
.contact-form-wrapper input[type="tel"],
.contact-form-wrapper textarea {
  width: 100%;
  box-sizing: border-box;
  padding: 10px 12px;
  border: 1px solid #ccc;
  border-radius: 3px;
  font-size: 14px;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", sans-serif;
  background-color: #fff;
  color: #333;
  transition: border-color 0.2s ease;
}

.contact-form-wrapper input[type="text"]:focus,
.contact-form-wrapper input[type="email"]:focus,
.contact-form-wrapper input[type="tel"]:focus,
.contact-form-wrapper textarea:focus {
  outline: none;
  border-color: #999;
  box-shadow: none;
}

.contact-form-wrapper textarea {
  resize: vertical;
  min-height: 80px;
  height:150px;
  line-height: 1.5;
}

/* Checkbox */
.form-group--checkbox {
  flex-direction: row;
  align-items: flex-start;
  gap: 10px;
}

.form-group--checkbox label {
  margin-bottom: 0;
  margin-top: 2px;
  font-weight: 500;
}

.form-group--checkbox-large label {
  font-weight: 400;
  font-size: 13px;
  line-height: 1.6;
}

.contact-form-wrapper input[type="checkbox"] {
  width: 20px;
  height: 20px;
  min-width: 20px;
  margin-top: 2px;
  cursor: pointer;
  accent-color: #37BE2A;
}

/* Bouton submit */
.btn-submit {
  display: block;
  background: #37BE2A;
  color: #fff;
  font-weight: 500;
  padding: 13px 43px;
  border-radius: 3px;
  transition: filter .15s ease, transform .02s ease;
  margin-left: auto;
  border: 0;
  cursor: pointer;
}

.btn-submit:hover {
  filter: brightness(1.06);
  color: white;
}

.logo-popup__contact {
  width: 60px;
}

/* CF7 wrappers cleanup */
.contact-form-wrapper .wpcf7-form-control-wrap {
  display: block;
  width: 100%;
}

.contact-form-wrapper .wpcf7-list-item {
  display: contents;
}

.contact-form-wrapper .wpcf7-spinner {
  display: none;
}

/* Validation */
.contact-form-wrapper .wpcf7-not-valid,
.contact-form-wrapper input.wpcf7-not-valid,
.contact-form-wrapper textarea.wpcf7-not-valid {
  border-color: #dc2626 !important;
}

/* Messages de réponse */
.contact-form-wrapper .wpcf7-response-output {
  margin: 20px 0;
  padding: 15px;
  border-radius: 4px;
}

.contact-form-wrapper .wpcf7-mail-sent-ok {
  background-color: #dcfce7;
  color: #166534;
  border: 1px solid #86efac;
}

.contact-form-wrapper .wpcf7-mail-sent-ng {
  background-color: #fee2e2;
  color: #991b1b;
  border: 1px solid #fca5a5;
}

.page-template-tpl-contact .detam-hero__contact {
  display: none;
}

/* Responsive */
@media (max-width: 768px) {
  .form-row--two-cols {
    grid-template-columns: 1fr;
  }

  .form-row {
    gap: 15px;
  }
}

/* CF7 — forcer tous les wrappers générés à 100% */
.contact-form-wrapper p {
  margin: 0;
  width: 100%;
}

.contact-form-wrapper .wpcf7-form-control-wrap {
  display: block;
  width: 100%;
}

.contact-form-wrapper .wpcf7-form-control {
  width: 100% !important;
    max-width: unset !important;
  box-sizing: border-box !important;
}

.contact-formulaire__map-image {
  width: 100%;
  aspect-ratio: 1;
  border-radius: 8px;
  overflow: hidden;
  margin-bottom: 30px;
}

.contact-formulaire__map-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.contact-formulaire__address-info {
  display: flex;
  gap: 15px;
  align-items: flex-start;
}

.contact-formulaire__address-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 50px;
  height: 50px;
  background-color: #22c55e;
  color: white;
  font-weight: 700;
  font-size: 24px;
  border-radius: 6px;
  flex-shrink: 0;
}

.contact-formulaire__address-title {
  font-weight: 700;
  font-size: 16px;
  margin-bottom: 5px;
  color: #333;
}

.contact-formulaire__address-text {
  font-size: 14px;
  color: #1E1E1E;
  line-height: 1.6;
}

@media (max-width: 768px) {
  .contact-formulaire__map-container {
    position: relative;
    top: 0;
  }
}

/* Leaflet Map */
.contact-formulaire__map-wrapper {
  width: 100%;
  height: 77vh;
  overflow: hidden;
  margin-bottom: 30px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

.contact-formulaire__map-wrapper .leaflet-container {
  font-family: inherit;
}

/* Custom Markers */
.custom-marker {
  background: none !important;
  border: none !important;
  padding: 0 !important;
}

.marker-content {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  background-color: #22c55e;
  color: white;
  font-weight: 700;
  font-size: 18px;
  border-radius: 50%;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
  border: 3px solid white;
}

/* Popup styling */
.marker-popup {
  display: flex;
  gap: 12px;
  padding: 8px 0;
    align-items: center;
}

.marker-popup__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  background-color: #22c55e;
  color: white;
  font-weight: 700;
  border-radius: 4px;
  flex-shrink: 0;
}

.marker-popup__content {
  flex: 1;
}

.marker-popup__title {
  font-weight: 700;
  font-size: 14px;
  margin: 0 0 4px 0;
  color: #333;
}

.marker-popup__address {
  font-size: 12px;
  color: #666;
  margin: 0;
  line-height: 1.4;
margin-top:0 !important;
margin-bottom:0 !important;

}

.leaflet-popup-content-wrapper {
  border-radius: 6px !important;
}

/* Locations List */
.contact-formulaire__locations {
  display: flex;
  flex-direction: column;
  gap: 15px;
}

.contact-formulaire__location-item {
  display: flex;
  gap: 12px;
  align-items: flex-start;
  padding: 12px 0;
  border-top: 1px solid #e5e7eb;
}

.contact-formulaire__location-item:first-child {
  border-top: none;
}

.contact-formulaire__location-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  background-color: #22c55e;
  color: white;
  font-weight: 700;
  font-size: 18px;
  border-radius: 4px;
  flex-shrink: 0;
}

.contact-formulaire__address-title {
  font-weight: 700;
  font-size: 15px;
  margin: 0 0 4px 0;
  color: #333;
}

.contact-formulaire__address-text {
  font-size: 13px;
  color: #666;
  margin: 0;
  line-height: 1.5;
}
#wpcf7-f5-o1 > form > div.contact-form-wrapper > div:nth-child(6) > div > p > span > span > span > input[type=checkbox] {
width:30px;
height:30px;
}
#wpcf7-f5-o1 > form > div.contact-form-wrapper > div:nth-child(7) > div > p > span > span {
display:flex;
}
#wpcf7-f5-o1 > form > div.contact-form-wrapper > div:nth-child(6) > div > p > span > span > span {
display:flex;
align-items: center !important;
}
#wpcf7-f5-o1 > form > div.contact-form-wrapper > div:nth-child(6) > div > p > span > span > span > span {
font-weight:700;
font-size:0.99rem;
margin-bottom:0;
}

.tpl-contact {
background:#F4F4F4;
}

/* Mobile : jusqu'à 575.98px
-------------------------------------------------- */
@media (max-width: 575.98px) {
  .home_pourquoi .forces-list li::before {
   top:-5px;
  }
  .home_pourquoi .forces-list li {
   position: relative;
    margin: 10px 0 12px 0;
    padding-left: 20px !important;
  }
.header-realisations {
    padding: 50px 10px;
    background: #F4F4F4;
}
.header-realisations__titre h1 div {
font-size:1.5rem;
}
.detam-hero__ctaWrap {
pointer-events:all;
}
.contact-formulaire__map-wrapper {
height:500px;
}
.contact-formulaire__left {
gap:20px;
}
h2::before,h2::after {
display:none !important;
}

.clients__title {
padding 0 25px;
}
.clients__title::before, .clients__title::after {
        width: 77px !important;
    }
.titre_bordure > div, h1 > div, .titre_bordure > div, h1 > div span {
text-align:left;
}
.single-realisations .h1__bordure {
width:100%;
}
    .rl-grid {
        display:block;
    }
.rl-grid article {
margin-bottom:30px;
}
.rl-card__media {
min-height: 300px;
    max-height: 300px;
}
.header-realisations__titre  h1  div {
line-height: 2rem;
}
.header-realisations__titre h1 span {
width:100%;
}
#detamDrawerTitle > img {
filter: brightness(0) invert(1) saturate(100%);
}

.header-realisations__titre p, .header-realisations__titre span, .header-realisations__titre strong {
font-size:1rem;
}
.clients__ctaBtn, .home-reas__btn {
font-size:1rem;
}
  .rea-card--lg .rea-card__media, .rea-card--sm .rea-card__media {
    min-height: UNSET !important;
    max-height: UNSET !important;
}
  .rea-card--lg, .rea-card--sm {

    min-height: 300px;
  }
  .home-reas__title, .home-reas__title span {
   padding: 0 12px; 
  }
 .home_pourquoi .forces-list li {
   padding-left:0;
  }
.metiers__lead strong, .home_pourquoi__text strong, .home_pourquoi__text p, .home_pourquoi__text span, .home_pourquoi__text div, .home_pourquoi__text a, .forces-list li  {
      font-size: 1.05rem;
  }
  .detam-hero__title, .detam-hero__subline {
   color:white; 
	text-align:center;
padding:0;
  
  }
  .kpis__item {
        border-top: unset;
    }
    .kpis__list {
        grid-template-columns: repeat(1, 1fr);
    }
  .detam-hero__panel {
    position: unset;
            background: UNSET;
        margin-left: auto;
        margin-right: auto;
    width: 100%;
        text-align: center;
    padding-top: 50px;
  }
  .detam-hero__ctaWrap {
   margin-top:unset; 
  }
  .detam-hero__desc {
   display:none; 
  }
    .detam-header__inner {
        grid-template-columns: 1fr;
  }
    .home_pourquoi .grid {
        grid-template-columns: 1fr;
    }
    .clients__title::before, .clients__title::after {
        width: 270px;
    }
    .metiers__heading::before, .metiers__heading::after {
        width: 20%;
    }
  .kpis__heading::before, .kpis__heading::after {
        width: 230px;
    }
    .home-reas__title::before, .home-reas__title::after {
        width: 45px;
    }
  .detam-hero__legend {
   width:300px; 
  }
      .home-reas__grid {
        grid-template-columns: repeat(1, 1fr);
        gap:0px;
    }
        .home-reas__grid article {
        margin-bottom:25px;
    }
  .cta__inner p, .cta__inner a, .cta__inner strong {
        text-align: center;
    display:block;
    }
  .cta__btn {
   max-width: 265px;
  }

  .cta {
   padding:80px 0; 
  }
  .home_pourquoi .grid p, .home_pourquoi .grid a, .home_pourquoi .grid span, .home_pourquoi .grid strong, .home_pourquoi .grid li, .home_pourquoi .grid div {
    text-align:left !important;
  }
  .home_pourquoi__text {
   margin-left:0; 
  }

.contact-formulaire__grid {
display:block;
}
.contact-formulaire__right {
margin-top:50px;
}
.contact-form-wrapper input {
width:unset !important;
max-width:100% !important;
}
#wpcf7-f5-o1 > form > div.contact-form-wrapper > div:nth-child(6) > div > p > span > span > span > input[type=checkbox], #wpcf7-f5-o1 > form > div.contact-form-wrapper > div:nth-child(7) > div > p > span > span > span > input[type=checkbox] {
width:unset !important;
max-width:unset !important;
}
.clients__text {
min-height:unset;
}
}


/* Mobile large / petites tablettes : 576px à 767.98px
-------------------------------------------------- */
@media (min-width: 576px) and (max-width: 767.98px) {
  .home_pourquoi .forces-list li::before {
   top:-5px;
  }
  .home_pourquoi .forces-list li {
   position: relative;
    margin: 10px 0 12px 0;
    padding-left: 20px !important;
  }
.detam-hero__ctaWrap {
pointer-events:all;
}
.contact-formulaire__map-wrapper {
height:500px;
}
.contact-formulaire__left {
gap:20px;
}
.contact-formulaire__grid {
display:block;
}
.contact-formulaire__right {
margin-top:50px;
}
.contact-form-wrapper input {
width:unset !important;
max-width:100% !important;
}
#wpcf7-f5-o1 > form > div.contact-form-wrapper > div:nth-child(6) > div > p > span > span > span > input[type=checkbox], #wpcf7-f5-o1 > form > div.contact-form-wrapper > div:nth-child(7) > div > p > span > span > span > input[type=checkbox] {
width:unset !important;
max-width:unset !important;
}
.contact-form-wrapper input {
width:unset !important;
max-width:100% !important;
}
h2::before,h2::after {
display:none !important;
}
.single-realisations .h1__bordure {
width:100%;
}
    .rl-grid {
        grid-template-columns: repeat(12, 1fr) !important;
    }

#detamDrawerTitle > img {
filter: brightness(0) invert(1) saturate(100%);
}
    .metiers__lead strong, .home_pourquoi__text strong, .home_pourquoi__text p, .home_pourquoi__text span, .home_pourquoi__text div, .home_pourquoi__text a, .forces-list li {
        font-size: 1.05rem;
    }
.clients__ctaBtn, .home-reas__btn {
font-size:1rem;
}
  .detam-hero__title, .detam-hero__subline {
   color:white; 
	text-align:center;
padding:0;
  }
      .kpis__list {
        grid-template-columns: repeat(3, 1fr);
    }
  .detam-hero__panel {
pointer-events: none;
    position: unset;
            background: UNSET;
        margin-left: auto;
        margin-right: auto;
    width: 100%;
        text-align: center;
    padding-top: 50px;
  }
  .detam-hero__ctaWrap {
   margin-top:unset; 
  }
  .detam-hero__desc {
   display:none; 
  }
    .detam-header__inner {
        grid-template-columns: 1fr;
  }
    .home_pourquoi .grid {
        grid-template-columns: 1fr;
    }
    .clients__title::before, .clients__title::after {
        width: 270px;
    }
  .metiers__heading::before, .metiers__heading::after {
   width:37%; 
  }
  .kpis__heading::before, .kpis__heading::after {
        width: 230px;
    }
    .home-reas__title::before, .home-reas__title::after {
       width: 125px;
    }
      .home-reas__grid {
        grid-template-columns: repeat(1, 1fr);
        gap:0px;
    }
        .home-reas__grid article {
        margin-bottom:25px;
    }
  .cta__inner p, .cta__inner a, .cta__inner strong {
        text-align: center;
    display:block;
    }
  .cta__btn {
   max-width: 265px;
  }
  .cta {
   padding:80px 0; 
  }
  .home_pourquoi .grid p, .home_pourquoi .grid a, .home_pourquoi .grid span, .home_pourquoi .grid strong, .home_pourquoi .grid li, .home_pourquoi .grid div {
    text-align:center !important;
  }
  .home_pourquoi__text {
   margin-left:0; 
  }
.clients__text {
min-height:unset;
}

}


/* Tablettes : 768px à 991.98px
-------------------------------------------------- */
@media (min-width: 768px) and (max-width: 991.98px) {
.detam-hero__ctaWrap {
pointer-events:all;
}
.contact-formulaire__left {
gap:20px;
}
.contact-formulaire__grid {
display:block;
}
.contact-formulaire__right {
margin-top:50px;
}
.contact-form-wrapper input {
width:100% !important;
max-width:100% !important;
}
.contact-form-wrapper input {
width:unset !important;
max-width:100% !important;
}
#wpcf7-f5-o1 > form > div.contact-form-wrapper > div:nth-child(6) > div > p > span > span > span > input[type=checkbox], #wpcf7-f5-o1 > form > div.contact-form-wrapper > div:nth-child(7) > div > p > span > span > span > input[type=checkbox] {
width:unset !important;
max-width:unset !important;
}

h2::before,h2::after {
display:none !important;
}
.single-realisations .h1__bordure {
width:100%;
}
    .rl-grid {
        grid-template-columns: repeat(12, 1fr) !important;
    }
  .detam-hero__title, .detam-hero__subline {
   color:white; 
	text-align:center;
padding:0;
  }
      .kpis__list {
        grid-template-columns: repeat(3, 1fr);
    }
  .detam-hero__panel {
pointer-events: none;
    position: unset;
            background: UNSET;
        margin-left: auto;
        margin-right: auto;
    width: 100%;
        text-align: center;
    padding-top: 50px;
  }
  .detam-hero__ctaWrap {
   margin-top:unset; 
  }
  .detam-hero__desc {
   display:none; 
  }
    .detam-header__inner {
        grid-template-columns: 1fr;
  }
    .home_pourquoi .grid {
        grid-template-columns: 1fr;
    }
    .clients__title::before, .clients__title::after {
        width: 149%;
    }
  .metiers__heading::before, .metiers__heading::after {
   width:37%; 
  }
  .kpis__heading::before, .kpis__heading::after {
        width: 230px;
    }
    .home-reas__title::before, .home-reas__title::after {
        width: 220px;
    }
      .home-reas__grid {
        grid-template-columns: repeat(1, 1fr);
        gap:0px;
    }
        .home-reas__grid article {
        margin-bottom:25px;
    }
  .cta__inner p, .cta__inner a, .cta__inner strong {
        text-align: center;
    display:block;
    }
  .cta__btn {
   max-width: 265px;
  }
  .cta {
   padding:80px 0; 
  }
  .home_pourquoi .grid p, .home_pourquoi .grid a, .home_pourquoi .grid span, .home_pourquoi .grid strong, .home_pourquoi .grid li, .home_pourquoi .grid div {
    text-align:center !important;
  }
  .home_pourquoi__text {
   margin-left:0; 
  }
  .home_pourquoi .forces-list li::before {
   top:-5px;
  }
  .home_pourquoi .forces-list li {
   position: relative;
    margin: 10px 0 12px 0;
    padding-left: 20px !important;
  }
.clients__text {
min-height:unset;
}
}


/* Laptops : 992px à 1199.98px
-------------------------------------------------- */
@media (min-width: 992px) and (max-width: 1023px) {
.detam-hero__ctaWrap {
pointer-events:all;
}
    .detam-hero__title, .detam-hero__subline {
        color: white;
    }
.detam-nav__list {
justify-content:center;
}
h2::before,h2::after {
display:none !important;
}
.single-realisations .h1__bordure {
width:100%;
}
    .rl-grid {
        grid-template-columns: repeat(12, 1fr) !important;
    }
  .detam-hero__titlen, .detam-hero__subline {
   color:white; 
  }
      .kpis__list {
        grid-template-columns: repeat(3, 1fr);
    }
  .detam-hero__panel {
pointer-events: none;
    position: unset;
            background: UNSET;
        margin-left: auto;
        margin-right: auto;
    width: 100%;
        text-align: center;
    padding-top: 50px;
  }
  .detam-hero__ctaWrap {
   margin-top:unset; 
  }
  .detam-hero__desc {
   display:none; 
  }
    .detam-header__inner {
        grid-template-columns: 1fr;
  }
      .home_pourquoi .grid {
        grid-template-columns: 1fr 1fr;
    }
      .clients__title::before, .clients__title::after {
        width: 400px;
    }
  .home-reas__title::before, .home-reas__title::after {
  width:350px;
  }
      .home-reas__grid {
        grid-template-columns: repeat(1, 1fr);
        gap:0px;
    }
        .home-reas__grid article {
        margin-bottom:25px;
    }
  .cta__inner p, .cta__inner a, .cta__inner strong {
        text-align: center;
    display:block;
    }
  .cta__btn {
   max-width: 265px;
  }
  .cta {
   padding:80px 0; 
  }
}

@media (min-width: 1024px) and (max-width: 1199.98px) {
h2::before,h2::after {
display:none !important;
}
.single-realisations .h1__bordure {
width:100%;
}
    .detam-header__inner {
        grid-template-columns: 1fr;
  }
      .home_pourquoi .grid {
        grid-template-columns: 1fr 1fr;
    }
      .clients__title::before, .clients__title::after {
        width: 400px;
    }
  .home-reas__title::before, .home-reas__title::after {
  width:350px;
  }
      .home-reas__grid {
        grid-template-columns: repeat(1, 1fr);
        gap:0px;
    }
        .home-reas__grid article {
        margin-bottom:25px;
    }
  .cta__inner p, .cta__inner a, .cta__inner strong {
        text-align: center;
    display:block;
    }
  .cta__btn {
   max-width: 265px;
  }
  .cta {
   padding:80px 0; 
  }
}


/* Desktops : 1200px à 1399.98px
-------------------------------------------------- */
@media (min-width: 1200px) and (max-width: 1279px) {
h2::before,h2::after {
display:none !important;
}
.detam-header__bar {
padding:0 85px;
}
.detam-nav {
 max-width: 1100px;
  }
    .detam-header__inner {
        grid-template-columns: 340px 1fr;
      
    }
.detam-header__bar {
        padding: 0px 57px;
    }
  
}

@media (min-width: 1280px) and (max-width: 1399px) {
    .detam-header__inner {
        grid-template-columns: 372px 1fr;
    }
  .detam-header__bar {
padding:0 85px;
}
.detam-nav {
 max-width: 1100px;
  }
    .detam-header__inner {
        grid-template-columns: 372px 1fr;
      
    }
.detam-header__bar {
        padding: 0px 57px;
    }
}

/* Très grands écrans : 1400px et plus
-------------------------------------------------- */
@media (min-width: 1400px) {

.detam-nav {
 max-width: 1100px;
  }
 .detam-header__inner {
    grid-template-columns: 372px 1fr;
}
}