@import url(fontawesome-all.min.css);

@import url(https://fonts.googleapis.com/css2?family=Open+Sans:ital,wght@0,300..800;1,300..800);

@keyframes slidePartners {
    0%{transform: translateX(0)
}

to {
    transform: translateX(-50%)
}}

@keyframes slideRL {
    0%,to {
        transform: translateX(-20px)
    }

    50% {
        transform: translateX(20px)
    }
}

@keyframes pulse {
    0%,to {
        transform: scale(1);
        opacity: 1
    }

    50% {
        transform: scale(1.1);
        opacity: .8
    }
}

a,abbr,acronym,address,applet,article,aside,audio,b,big,body,canvas,caption,center,cite,dd,del,details,dfn,div,dt,em,embed,fieldset,figcaption,figure,footer,header,hgroup,html,i,iframe,img,ins,kbd,legend,li,mark,menu,nav,object,output,q,ruby,s,samp,section,small,span,strike,strong,sub,summary,sup,tbody,td,tfoot,th,thead,time,tr,tt,u,var,video {
    margin: 0;
    padding: 0;
    border: 0;
    font: inherit;
    vertical-align: baseline
}

dl,form,h1,h2,h3,h4,h5,h6,label,ol,p,pre,table,ul {
    padding: 0;
    border: 0;
    font: inherit;
    vertical-align: baseline
}

blockquote,code {
    border: 0;
    font: inherit;
    vertical-align: baseline
}

article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section {
    display: block
}

body {
    -webkit-text-size-adjust: none;
    background-color: var(--background-color);
    color: var(--text-color)
}

blockquote,q {
    quotes: none
}

blockquote:after,blockquote:before,q:after,q:before {
    content: none
}

table {
    border-collapse: collapse;
    border-spacing: 0;
    margin: 0 0 2em;
    width: 100%
}

mark {
    background-color: transparent;
    color: inherit
}

input::-moz-focus-inner {
    border: 0;
    padding: 0
}

input {
    -moz-appearance: none;
    -webkit-appearance: none;
    -ms-appearance: none;
    appearance: none
}

html {
    box-sizing: border-box
}

*,:after,:before {
    box-sizing: inherit
}

body.is-preload *,body.is-preload :after,body.is-preload :before {
    -moz-animation: none!important;
    -webkit-animation: none!important;
    -ms-animation: none!important;
    animation: none!important;
    -moz-transition: none!important;
    -webkit-transition: none!important;
    -ms-transition: none!important;
    transition: none!important
}

body,input {
    color: #666
}

body,input,select,textarea {
    font-family: "Open Sans",Helvetica,sans-serif;
    font-size: 16pt;
    font-weight: 300;
    line-height: 1.65em
}

a {
    -moz-transition: color .2s ease-in-out,border-color .2s ease-in-out;
    -webkit-transition: color .2s ease-in-out,border-color .2s ease-in-out;
    -ms-transition: color .2s ease-in-out,border-color .2s ease-in-out;
    transition: color .2s ease-in-out,border-color .2s ease-in-out;
    border-bottom: dotted 1px #666
}

a:hover {
    border-bottom-color: transparent!important;
    color: #6bd4c8
}

b,strong {
    color: #555;
    font-weight: 400
}

em,i {
    font-style: italic
}

blockquote,dl,form,p {
    margin: 0 0 2em
}

h1,h2,h3,h4,h5,h6 {
    color: #555;
    margin: 0 0 1em
}

a,h1 a,h2 a,h3 a,h4 a,h5 a,h6 a {
    color: inherit;
    text-decoration: none
}

h1,h2 {
    font-size: 2.25em;
    line-height: 1.35em
}

h2 {
    font-size: 2em
}

h3 {
    font-size: 1.35em
}

h4 {
    font-size: 1.25em
}

code,h5,pre {
    font-size: .9em
}

h3,h4,h5,h6 {
    line-height: 1.5em
}

h6 {
    font-size: .7em
}

sub,sup {
    font-size: .8em;
    position: relative;
    top: .5em
}

sup {
    top: -.5em
}

hr {
    border: 0;
    border-bottom: solid 1px rgba(144,144,144,.5);
    margin: 2em 0
}

hr.major {
    margin: 3em 0
}

blockquote {
    border-left: solid 4px rgba(144,144,144,.5);
    font-style: italic;
    padding: .5em 0 .5em 2em
}

code,pre {
    font-family: "Courier New",monospace
}

code {
    background: rgba(144,144,144,.075);
    border-radius: 4px;
    border: solid 1px rgba(144,144,144,.5);
    margin: 0 .25em;
    padding: .25em .65em
}

pre {
    -webkit-overflow-scrolling: touch;
    margin: 0 0 2em
}

pre code {
    display: block;
    line-height: 1.75em;
    padding: 1em 1.5em;
    overflow-x: auto
}

.align-left {
    text-align: left
}

.align-center,article.special,section.special {
    text-align: center
}

.align-right {
    text-align: right
}

#nav,.container {
    max-width: calc(100% - 4em)
}

#nav {
    -moz-transition: background-color .2s ease,border-top-left-radius .2s ease,border-top-right-radius .2s ease,padding .2s ease;
    -webkit-transition: background-color .2s ease,border-top-left-radius .2s ease,border-top-right-radius .2s ease,padding .2s ease;
    -ms-transition: background-color .2s ease,border-top-left-radius .2s ease,border-top-right-radius .2s ease,padding .2s ease;
    transition: background-color .2s ease,border-top-left-radius .2s ease,border-top-right-radius .2s ease,padding .2s ease;
    position: absolute;
    padding: 1em;
    background-color: #f7f7f7;
    border-top-left-radius: .25em;
    border-top-right-radius: .25em;
    cursor: default;
    text-align: center;
    width: 100%
}

#nav,#nav a:hover,#nav b,#nav h1,#nav h2,#nav h3,#nav h4,#nav h5,#nav h6,#nav input,#nav select,#nav strong,#nav textarea {
    color: #636363
}

#nav blockquote {
    border-left-color: #ddd
}

#nav code {
    background: rgba(222,222,222,.25);
    border-color: #ddd
}

#nav hr {
    border-bottom-color: #ddd
}

#nav+#main {
    padding-top: 4.25em
}

#nav ul {
    margin: 0;
    padding: 0;
    list-style: none
}

#nav ul li {
    -moz-transition: margin .2s ease;
    -webkit-transition: margin .2s ease;
    -ms-transition: margin .2s ease;
    transition: margin .2s ease;
    display: inline-block;
    margin: 0 .35em;
    padding: 0;
    vertical-align: middle
}

#nav ul li a {
    -moz-transition: font-size .2s ease;
    -webkit-transition: font-size .2s ease;
    -ms-transition: font-size .2s ease;
    transition: font-size .2s ease;
    display: inline-block;
    height: 2.25em;
    line-height: 2.25em;
    padding: 0 1.25em;
    border: 0;
    border-radius: 8px;
    box-shadow: inset 0 0 0 1px transparent
}

#nav ul li a:hover {
    background-color: rgba(222,222,222,.25)
}

#nav ul li a.active {
    background-color: #fff;
    box-shadow: none
}

#nav.alt {
    position: fixed;
    top: 0;
    padding: .5em 1em;
    background-color: rgba(247,247,247,.95);
    border-top-left-radius: 0;
    border-top-right-radius: 0;
    z-index: 10000
}

#nav.alt ul li {
    margin: 0 .175em
}

#nav.alt ul li a {
    font-size: .9em
}

@media screen and (max-width:580px) {
    #nav {
        display: none
    }

    #nav+#main {
        padding-top: 0
    }
}

#wrapper {
    width: calc(100% - 4em);
    margin: 0 auto
}

@media screen and (max-width:480px) {
    #wrapper {
        max-width: calc(100% - 2em)
    }
}

@media screen and (max-width:360px) {
    #wrapper {
        max-width: 100%
    }
}

.container {
    margin: 0 auto;
    width: 60em
}

.container.xsmall {
    width: 15em
}

.container.small {
    width: 30em
}

.container.medium {
    width: 45em
}

.container.large {
    width: 75em
}

.container.xlarge {
    width: 90em
}

.container.max {
    width: 100%
}

@media screen and (max-width:980px) {
    .container {
        max-width: 100%!important;
        width: 100%!important
    }
}

@media screen and (max-width:480px) {
    .container {
        max-width: calc(100% - 3em)
    }
}

.row {
    display: flex;
    flex-wrap: wrap;
    align-items: stretch
}

.row,.row>* {
    box-sizing: border-box
}

.row.gtr-uniform>*>:last-child {
    margin-bottom: 0
}

.row.aln-left {
    justify-content: flex-start
}

.row.aln-center {
    justify-content: center
}

.row.aln-right {
    justify-content: flex-end
}

.row.aln-top {
    align-items: flex-start
}

.row.aln-middle {
    align-items: center
}

.row.aln-bottom {
    align-items: flex-end
}

.row>.imp {
    order: -1
}

.row>.col-1 {
    width: 8.33333%
}

.row>.off-1 {
    margin-left: 8.33333%
}

.row>.col-2 {
    width: 16.66667%
}

.row>.off-2 {
    margin-left: 16.66667%
}

.row>.col-3 {
    width: 25%
}

.row>.off-3 {
    margin-left: 25%
}

.row>.col-4 {
    width: 33.33333%
}

.row>.off-4 {
    margin-left: 33.33333%
}

.row>.col-5 {
    width: 41.66667%
}

.row>.off-5 {
    margin-left: 41.66667%
}

.row>.col-6 {
    width: 50%
}

.row>.off-6 {
    margin-left: 50%
}

.row>.col-7 {
    width: 58.33333%
}

.row>.off-7 {
    margin-left: 58.33333%
}

.row>.col-8 {
    width: 66.66667%
}

.row>.off-8 {
    margin-left: 66.66667%
}

.row>.col-9 {
    width: 75%
}

.row>.off-9 {
    margin-left: 75%
}

.row>.col-10 {
    width: 83.33333%
}

.row>.off-10 {
    margin-left: 83.33333%
}

.row>.col-11 {
    width: 91.66667%
}

.row>.off-11 {
    margin-left: 91.66667%
}

.image.fit img,.image.left img,.image.right img,.row>.col-12,ul.actions.fit li>*,ul.actions.fit.stacked {
    width: 100%
}

.row>.off-12 {
    margin-left: 100%
}

.row.gtr-0 {
    margin-top: 0;
    margin-left: 0
}

.row.gtr-0>* {
    padding: 0
}

.row.gtr-0.gtr-uniform,.row.gtr-25 {
    margin-top: 0
}

.row.gtr-0.gtr-uniform>* {
    padding-top: 0
}

.row.gtr-25 {
    margin-left: -.5em
}

.row.gtr-25>* {
    padding: 0 0 0 .5em
}

.row.gtr-25.gtr-uniform {
    margin-top: -.5em
}

.row.gtr-25.gtr-uniform>* {
    padding-top: .5em
}

.row,.row.gtr-50 {
    margin-top: 0;
    margin-left: -1em
}

.row.gtr-50>* {
    padding: 0 0 0 1em
}

.row.gtr-50.gtr-uniform {
    margin-top: -1em
}

.row.gtr-50.gtr-uniform>* {
    padding-top: 1em
}

.row {
    margin-left: -2em
}

.row>* {
    padding: 0 0 0 2em
}

.row.gtr-uniform {
    margin-top: -2em
}

.row.gtr-uniform>* {
    padding-top: 2em
}

.row.gtr-150 {
    margin-top: 0;
    margin-left: -3em
}

.row.gtr-150>* {
    padding: 0 0 0 3em
}

.row.gtr-150.gtr-uniform {
    margin-top: -3em
}

.row.gtr-150.gtr-uniform>* {
    padding-top: 3em
}

.row.gtr-200 {
    margin-top: 0;
    margin-left: -4em
}

.row.gtr-200>* {
    padding: 0 0 0 4em
}

.row.gtr-200.gtr-uniform {
    margin-top: -4em
}

.row.gtr-200.gtr-uniform>* {
    padding-top: 4em
}

@media screen and (max-width:1680px) {
    .row {
        display: flex;
        flex-wrap: wrap;
        align-items: stretch
    }

    .row,.row>* {
        box-sizing: border-box
    }

    .row.gtr-uniform>*>:last-child {
        margin-bottom: 0
    }

    .row.aln-left {
        justify-content: flex-start
    }

    .row.aln-center {
        justify-content: center
    }

    .row.aln-right {
        justify-content: flex-end
    }

    .row.aln-top {
        align-items: flex-start
    }

    .row.aln-middle {
        align-items: center
    }

    .row.aln-bottom {
        align-items: flex-end
    }

    .row>.imp-xlarge {
        order: -1
    }

    .row>.col-1-xlarge {
        width: 8.33333%
    }

    .row>.off-1-xlarge {
        margin-left: 8.33333%
    }

    .row>.col-2-xlarge {
        width: 16.66667%
    }

    .row>.off-2-xlarge {
        margin-left: 16.66667%
    }

    .row>.col-3-xlarge {
        width: 25%
    }

    .row>.off-3-xlarge {
        margin-left: 25%
    }

    .row>.col-4-xlarge {
        width: 33.33333%
    }

    .row>.off-4-xlarge {
        margin-left: 33.33333%
    }

    .row>.col-5-xlarge {
        width: 41.66667%
    }

    .row>.off-5-xlarge {
        margin-left: 41.66667%
    }

    .row>.col-6-xlarge {
        width: 50%
    }

    .row>.off-6-xlarge {
        margin-left: 50%
    }

    .row>.col-7-xlarge {
        width: 58.33333%
    }

    .row>.off-7-xlarge {
        margin-left: 58.33333%
    }

    .row>.col-8-xlarge {
        width: 66.66667%
    }

    .row>.off-8-xlarge {
        margin-left: 66.66667%
    }

    .row>.col-9-xlarge {
        width: 75%
    }

    .row>.off-9-xlarge {
        margin-left: 75%
    }

    .row>.col-10-xlarge {
        width: 83.33333%
    }

    .row>.off-10-xlarge {
        margin-left: 83.33333%
    }

    .row>.col-11-xlarge {
        width: 91.66667%
    }

    .row>.off-11-xlarge {
        margin-left: 91.66667%
    }

    .row>.col-12-xlarge {
        width: 100%
    }

    .row>.off-12-xlarge {
        margin-left: 100%
    }

    .row.gtr-0 {
        margin-top: 0;
        margin-left: 0
    }

    .row.gtr-0>* {
        padding: 0
    }

    .row.gtr-0.gtr-uniform,.row.gtr-25 {
        margin-top: 0
    }

    .row.gtr-0.gtr-uniform>* {
        padding-top: 0
    }

    .row.gtr-25 {
        margin-left: -.5em
    }

    .row.gtr-25>* {
        padding: 0 0 0 .5em
    }

    .row.gtr-25.gtr-uniform {
        margin-top: -.5em
    }

    .row.gtr-25.gtr-uniform>* {
        padding-top: .5em
    }

    .row,.row.gtr-50 {
        margin-top: 0;
        margin-left: -1em
    }

    .row.gtr-50>* {
        padding: 0 0 0 1em
    }

    .row.gtr-50.gtr-uniform {
        margin-top: -1em
    }

    .row.gtr-50.gtr-uniform>* {
        padding-top: 1em
    }

    .row {
        margin-left: -2em
    }

    .row>* {
        padding: 0 0 0 2em
    }

    .row.gtr-uniform {
        margin-top: -2em
    }

    .row.gtr-uniform>* {
        padding-top: 2em
    }

    .row.gtr-150 {
        margin-top: 0;
        margin-left: -3em
    }

    .row.gtr-150>* {
        padding: 0 0 0 3em
    }

    .row.gtr-150.gtr-uniform {
        margin-top: -3em
    }

    .row.gtr-150.gtr-uniform>* {
        padding-top: 3em
    }

    .row.gtr-200 {
        margin-top: 0;
        margin-left: -4em
    }

    .row.gtr-200>* {
        padding: 0 0 0 4em
    }

    .row.gtr-200.gtr-uniform {
        margin-top: -4em
    }

    .row.gtr-200.gtr-uniform>* {
        padding-top: 4em
    }
}

@media screen and (max-width:1140px) {
    .row {
        display: flex;
        flex-wrap: wrap;
        align-items: stretch
    }

    .row,.row>* {
        box-sizing: border-box
    }

    .row.gtr-uniform>*>:last-child {
        margin-bottom: 0
    }

    .row.aln-left {
        justify-content: flex-start
    }

    .row.aln-center {
        justify-content: center
    }

    .row.aln-right {
        justify-content: flex-end
    }

    .row.aln-top {
        align-items: flex-start
    }

    .row.aln-middle {
        align-items: center
    }

    .row.aln-bottom {
        align-items: flex-end
    }

    .row>.imp-large {
        order: -1
    }

    .row>.col-1-large {
        width: 8.33333%
    }

    .row>.off-1-large {
        margin-left: 8.33333%
    }

    .row>.col-2-large {
        width: 16.66667%
    }

    .row>.off-2-large {
        margin-left: 16.66667%
    }

    .row>.col-3-large {
        width: 25%
    }

    .row>.off-3-large {
        margin-left: 25%
    }

    .row>.col-4-large {
        width: 33.33333%
    }

    .row>.off-4-large {
        margin-left: 33.33333%
    }

    .row>.col-5-large {
        width: 41.66667%
    }

    .row>.off-5-large {
        margin-left: 41.66667%
    }

    .row>.col-6-large {
        width: 50%
    }

    .row>.off-6-large {
        margin-left: 50%
    }

    .row>.col-7-large {
        width: 58.33333%
    }

    .row>.off-7-large {
        margin-left: 58.33333%
    }

    .row>.col-8-large {
        width: 66.66667%
    }

    .row>.off-8-large {
        margin-left: 66.66667%
    }

    .row>.col-9-large {
        width: 75%
    }

    .row>.off-9-large {
        margin-left: 75%
    }

    .row>.col-10-large {
        width: 83.33333%
    }

    .row>.off-10-large {
        margin-left: 83.33333%
    }

    .row>.col-11-large {
        width: 91.66667%
    }

    .row>.off-11-large {
        margin-left: 91.66667%
    }

    .row>.col-12-large {
        width: 100%
    }

    .row>.off-12-large {
        margin-left: 100%
    }

    .row.gtr-0 {
        margin-top: 0;
        margin-left: 0
    }

    .row.gtr-0>* {
        padding: 0
    }

    .row.gtr-0.gtr-uniform,.row.gtr-25 {
        margin-top: 0
    }

    .row.gtr-0.gtr-uniform>* {
        padding-top: 0
    }

    .row.gtr-25 {
        margin-left: -.5em
    }

    .row.gtr-25>* {
        padding: 0 0 0 .5em
    }

    .row.gtr-25.gtr-uniform {
        margin-top: -.5em
    }

    .row.gtr-25.gtr-uniform>* {
        padding-top: .5em
    }

    .row,.row.gtr-50 {
        margin-top: 0;
        margin-left: -1em
    }

    .row.gtr-50>* {
        padding: 0 0 0 1em
    }

    .row.gtr-50.gtr-uniform {
        margin-top: -1em
    }

    .row.gtr-50.gtr-uniform>* {
        padding-top: 1em
    }

    .row {
        margin-left: -2em
    }

    .row>* {
        padding: 0 0 0 2em
    }

    .row.gtr-uniform {
        margin-top: -2em
    }

    .row.gtr-uniform>* {
        padding-top: 2em
    }

    .row.gtr-150 {
        margin-top: 0;
        margin-left: -3em
    }

    .row.gtr-150>* {
        padding: 0 0 0 3em
    }

    .row.gtr-150.gtr-uniform {
        margin-top: -3em
    }

    .row.gtr-150.gtr-uniform>* {
        padding-top: 3em
    }

    .row.gtr-200 {
        margin-top: 0;
        margin-left: -4em
    }

    .row.gtr-200>* {
        padding: 0 0 0 4em
    }

    .row.gtr-200.gtr-uniform {
        margin-top: -4em
    }

    .row.gtr-200.gtr-uniform>* {
        padding-top: 4em
    }
}

@media screen and (max-width:980px) {
    .row {
        display: flex;
        flex-wrap: wrap;
        align-items: stretch
    }

    .row,.row>* {
        box-sizing: border-box
    }

    .row.gtr-uniform>*>:last-child {
        margin-bottom: 0
    }

    .row.aln-left {
        justify-content: flex-start
    }

    .row.aln-center {
        justify-content: center
    }

    .row.aln-right {
        justify-content: flex-end
    }

    .row.aln-top {
        align-items: flex-start
    }

    .row.aln-middle {
        align-items: center
    }

    .row.aln-bottom {
        align-items: flex-end
    }

    .row>.imp-medium {
        order: -1
    }

    .row>.col-1-medium {
        width: 8.33333%
    }

    .row>.off-1-medium {
        margin-left: 8.33333%
    }

    .row>.col-2-medium {
        width: 16.66667%
    }

    .row>.off-2-medium {
        margin-left: 16.66667%
    }

    .row>.col-3-medium {
        width: 25%
    }

    .row>.off-3-medium {
        margin-left: 25%
    }

    .row>.col-4-medium {
        width: 33.33333%
    }

    .row>.off-4-medium {
        margin-left: 33.33333%
    }

    .row>.col-5-medium {
        width: 41.66667%
    }

    .row>.off-5-medium {
        margin-left: 41.66667%
    }

    .row>.col-6-medium {
        width: 50%
    }

    .row>.off-6-medium {
        margin-left: 50%
    }

    .row>.col-7-medium {
        width: 58.33333%
    }

    .row>.off-7-medium {
        margin-left: 58.33333%
    }

    .row>.col-8-medium {
        width: 66.66667%
    }

    .row>.off-8-medium {
        margin-left: 66.66667%
    }

    .row>.col-9-medium {
        width: 75%
    }

    .row>.off-9-medium {
        margin-left: 75%
    }

    .row>.col-10-medium {
        width: 83.33333%
    }

    .row>.off-10-medium {
        margin-left: 83.33333%
    }

    .row>.col-11-medium {
        width: 91.66667%
    }

    .row>.off-11-medium {
        margin-left: 91.66667%
    }

    .row>.col-12-medium {
        width: 100%
    }

    .row>.off-12-medium {
        margin-left: 100%
    }

    .row.gtr-0 {
        margin-top: 0;
        margin-left: 0
    }

    .row.gtr-0>* {
        padding: 0
    }

    .row.gtr-0.gtr-uniform,.row.gtr-25 {
        margin-top: 0
    }

    .row.gtr-0.gtr-uniform>* {
        padding-top: 0
    }

    .row.gtr-25 {
        margin-left: -.5em
    }

    .row.gtr-25>* {
        padding: 0 0 0 .5em
    }

    .row.gtr-25.gtr-uniform {
        margin-top: -.5em
    }

    .row.gtr-25.gtr-uniform>* {
        padding-top: .5em
    }

    .row,.row.gtr-50 {
        margin-top: 0;
        margin-left: -1em
    }

    .row.gtr-50>* {
        padding: 0 0 0 1em
    }

    .row.gtr-50.gtr-uniform {
        margin-top: -1em
    }

    .row.gtr-50.gtr-uniform>* {
        padding-top: 1em
    }

    .row {
        margin-left: -2em
    }

    .row>* {
        padding: 0 0 0 2em
    }

    .row.gtr-uniform {
        margin-top: -2em
    }

    .row.gtr-uniform>* {
        padding-top: 2em
    }

    .row.gtr-150 {
        margin-top: 0;
        margin-left: -3em
    }

    .row.gtr-150>* {
        padding: 0 0 0 3em
    }

    .row.gtr-150.gtr-uniform {
        margin-top: -3em
    }

    .row.gtr-150.gtr-uniform>* {
        padding-top: 3em
    }

    .row.gtr-200 {
        margin-top: 0;
        margin-left: -4em
    }

    .row.gtr-200>* {
        padding: 0 0 0 4em
    }

    .row.gtr-200.gtr-uniform {
        margin-top: -4em
    }

    .row.gtr-200.gtr-uniform>* {
        padding-top: 4em
    }
}

@media screen and (max-width:736px) {
    .row {
        display: flex;
        flex-wrap: wrap;
        align-items: stretch
    }

    .row,.row>* {
        box-sizing: border-box
    }

    .row.gtr-uniform>*>:last-child {
        margin-bottom: 0
    }

    .row.aln-left {
        justify-content: flex-start
    }

    .row.aln-center {
        justify-content: center
    }

    .row.aln-right {
        justify-content: flex-end
    }

    .row.aln-top {
        align-items: flex-start
    }

    .row.aln-middle {
        align-items: center
    }

    .row.aln-bottom {
        align-items: flex-end
    }

    .row>.imp-small {
        order: -1
    }

    .row>.col-1-small {
        width: 8.33333%
    }

    .row>.off-1-small {
        margin-left: 8.33333%
    }

    .row>.col-2-small {
        width: 16.66667%
    }

    .row>.off-2-small {
        margin-left: 16.66667%
    }

    .row>.col-3-small {
        width: 25%
    }

    .row>.off-3-small {
        margin-left: 25%
    }

    .row>.col-4-small {
        width: 33.33333%
    }

    .row>.off-4-small {
        margin-left: 33.33333%
    }

    .row>.col-5-small {
        width: 41.66667%
    }

    .row>.off-5-small {
        margin-left: 41.66667%
    }

    .row>.col-6-small {
        width: 50%
    }

    .row>.off-6-small {
        margin-left: 50%
    }

    .row>.col-7-small {
        width: 58.33333%
    }

    .row>.off-7-small {
        margin-left: 58.33333%
    }

    .row>.col-8-small {
        width: 66.66667%
    }

    .row>.off-8-small {
        margin-left: 66.66667%
    }

    .row>.col-9-small {
        width: 75%
    }

    .row>.off-9-small {
        margin-left: 75%
    }

    .row>.col-10-small {
        width: 83.33333%
    }

    .row>.off-10-small {
        margin-left: 83.33333%
    }

    .row>.col-11-small {
        width: 91.66667%
    }

    .row>.off-11-small {
        margin-left: 91.66667%
    }

    .row>.col-12-small {
        width: 100%
    }

    .row>.off-12-small {
        margin-left: 100%
    }

    .row.gtr-0 {
        margin-top: 0;
        margin-left: 0
    }

    .row.gtr-0>* {
        padding: 0
    }

    .row.gtr-0.gtr-uniform,.row.gtr-25 {
        margin-top: 0
    }

    .row.gtr-0.gtr-uniform>* {
        padding-top: 0
    }

    .row.gtr-25 {
        margin-left: -.5em
    }

    .row.gtr-25>* {
        padding: 0 0 0 .5em
    }

    .row.gtr-25.gtr-uniform {
        margin-top: -.5em
    }

    .row.gtr-25.gtr-uniform>* {
        padding-top: .5em
    }

    .row,.row.gtr-50 {
        margin-top: 0;
        margin-left: -1em
    }

    .row.gtr-50>* {
        padding: 0 0 0 1em
    }

    .row.gtr-50.gtr-uniform {
        margin-top: -1em
    }

    .row.gtr-50.gtr-uniform>* {
        padding-top: 1em
    }

    .row {
        margin-left: -2em
    }

    .row>* {
        padding: 0 0 0 2em
    }

    .row.gtr-uniform {
        margin-top: -2em
    }

    .row.gtr-uniform>* {
        padding-top: 2em
    }

    .row.gtr-150 {
        margin-top: 0;
        margin-left: -3em
    }

    .row.gtr-150>* {
        padding: 0 0 0 3em
    }

    .row.gtr-150.gtr-uniform {
        margin-top: -3em
    }

    .row.gtr-150.gtr-uniform>* {
        padding-top: 3em
    }

    .row.gtr-200 {
        margin-top: 0;
        margin-left: -4em
    }

    .row.gtr-200>* {
        padding: 0 0 0 4em
    }

    .row.gtr-200.gtr-uniform {
        margin-top: -4em
    }

    .row.gtr-200.gtr-uniform>* {
        padding-top: 4em
    }
}

@media screen and (max-width:480px) {
    .row {
        display: flex;
        flex-wrap: wrap;
        align-items: stretch
    }

    .row,.row>* {
        box-sizing: border-box
    }

    .row.gtr-uniform>*>:last-child {
        margin-bottom: 0
    }

    .row.aln-left {
        justify-content: flex-start
    }

    .row.aln-center {
        justify-content: center
    }

    .row.aln-right {
        justify-content: flex-end
    }

    .row.aln-top {
        align-items: flex-start
    }

    .row.aln-middle {
        align-items: center
    }

    .row.aln-bottom {
        align-items: flex-end
    }

    .row>.imp-xsmall {
        order: -1
    }

    .row>.col-1-xsmall {
        width: 8.33333%
    }

    .row>.off-1-xsmall {
        margin-left: 8.33333%
    }

    .row>.col-2-xsmall {
        width: 16.66667%
    }

    .row>.off-2-xsmall {
        margin-left: 16.66667%
    }

    .row>.col-3-xsmall {
        width: 25%
    }

    .row>.off-3-xsmall {
        margin-left: 25%
    }

    .row>.col-4-xsmall {
        width: 33.33333%
    }

    .row>.off-4-xsmall {
        margin-left: 33.33333%
    }

    .row>.col-5-xsmall {
        width: 41.66667%
    }

    .row>.off-5-xsmall {
        margin-left: 41.66667%
    }

    .row>.col-6-xsmall {
        width: 50%
    }

    .row>.off-6-xsmall {
        margin-left: 50%
    }

    .row>.col-7-xsmall {
        width: 58.33333%
    }

    .row>.off-7-xsmall {
        margin-left: 58.33333%
    }

    .row>.col-8-xsmall {
        width: 66.66667%
    }

    .row>.off-8-xsmall {
        margin-left: 66.66667%
    }

    .row>.col-9-xsmall {
        width: 75%
    }

    .row>.off-9-xsmall {
        margin-left: 75%
    }

    .row>.col-10-xsmall {
        width: 83.33333%
    }

    .row>.off-10-xsmall {
        margin-left: 83.33333%
    }

    .row>.col-11-xsmall {
        width: 91.66667%
    }

    .row>.off-11-xsmall {
        margin-left: 91.66667%
    }

    .row>.col-12-xsmall {
        width: 100%
    }

    .row>.off-12-xsmall {
        margin-left: 100%
    }

    .row.gtr-0 {
        margin-top: 0;
        margin-left: 0
    }

    .row.gtr-0>* {
        padding: 0
    }

    .row.gtr-0.gtr-uniform,.row.gtr-25 {
        margin-top: 0
    }

    .row.gtr-0.gtr-uniform>* {
        padding-top: 0
    }

    .row.gtr-25 {
        margin-left: -.5em
    }

    .row.gtr-25>* {
        padding: 0 0 0 .5em
    }

    .row.gtr-25.gtr-uniform {
        margin-top: -.5em
    }

    .row.gtr-25.gtr-uniform>* {
        padding-top: .5em
    }

    .row,.row.gtr-50 {
        margin-top: 0;
        margin-left: -1em
    }

    .row.gtr-50>* {
        padding: 0 0 0 1em
    }

    .row.gtr-50.gtr-uniform {
        margin-top: -1em
    }

    .row.gtr-50.gtr-uniform>* {
        padding-top: 1em
    }

    .row {
        margin-left: -2em
    }

    .row>* {
        padding: 0 0 0 2em
    }

    .row.gtr-uniform {
        margin-top: -2em
    }

    .row.gtr-uniform>* {
        padding-top: 2em
    }

    .row.gtr-150 {
        margin-top: 0;
        margin-left: -3em
    }

    .row.gtr-150>* {
        padding: 0 0 0 3em
    }

    .row.gtr-150.gtr-uniform {
        margin-top: -3em
    }

    .row.gtr-150.gtr-uniform>* {
        padding-top: 3em
    }

    .row.gtr-200 {
        margin-top: 0;
        margin-left: -4em
    }

    .row.gtr-200>* {
        padding: 0 0 0 4em
    }

    .row.gtr-200.gtr-uniform {
        margin-top: -4em
    }

    .row.gtr-200.gtr-uniform>* {
        padding-top: 4em
    }
}

@media screen and (max-width:320px) {
    .row {
        display: flex;
        flex-wrap: wrap;
        align-items: stretch
    }

    .row,.row>* {
        box-sizing: border-box
    }

    .row.gtr-uniform>*>:last-child {
        margin-bottom: 0
    }

    .row.aln-left {
        justify-content: flex-start
    }

    .row.aln-center {
        justify-content: center
    }

    .row.aln-right {
        justify-content: flex-end
    }

    .row.aln-top {
        align-items: flex-start
    }

    .row.aln-middle {
        align-items: center
    }

    .row.aln-bottom {
        align-items: flex-end
    }

    .row>.imp-xxsmall {
        order: -1
    }

    .row>.col-1-xxsmall {
        width: 8.33333%
    }

    .row>.off-1-xxsmall {
        margin-left: 8.33333%
    }

    .row>.col-2-xxsmall {
        width: 16.66667%
    }

    .row>.off-2-xxsmall {
        margin-left: 16.66667%
    }

    .row>.col-3-xxsmall {
        width: 25%
    }

    .row>.off-3-xxsmall {
        margin-left: 25%
    }

    .row>.col-4-xxsmall {
        width: 33.33333%
    }

    .row>.off-4-xxsmall {
        margin-left: 33.33333%
    }

    .row>.col-5-xxsmall {
        width: 41.66667%
    }

    .row>.off-5-xxsmall {
        margin-left: 41.66667%
    }

    .row>.col-6-xxsmall {
        width: 50%
    }

    .row>.off-6-xxsmall {
        margin-left: 50%
    }

    .row>.col-7-xxsmall {
        width: 58.33333%
    }

    .row>.off-7-xxsmall {
        margin-left: 58.33333%
    }

    .row>.col-8-xxsmall {
        width: 66.66667%
    }

    .row>.off-8-xxsmall {
        margin-left: 66.66667%
    }

    .row>.col-9-xxsmall {
        width: 75%
    }

    .row>.off-9-xxsmall {
        margin-left: 75%
    }

    .row>.col-10-xxsmall {
        width: 83.33333%
    }

    .row>.off-10-xxsmall {
        margin-left: 83.33333%
    }

    .row>.col-11-xxsmall {
        width: 91.66667%
    }

    .row>.off-11-xxsmall {
        margin-left: 91.66667%
    }

    .row>.col-12-xxsmall {
        width: 100%
    }

    .row>.off-12-xxsmall {
        margin-left: 100%
    }

    .row.gtr-0 {
        margin-top: 0;
        margin-left: 0
    }

    .row.gtr-0>* {
        padding: 0
    }

    .row.gtr-0.gtr-uniform,.row.gtr-25 {
        margin-top: 0
    }

    .row.gtr-0.gtr-uniform>* {
        padding-top: 0
    }

    .row.gtr-25 {
        margin-left: -.5em
    }

    .row.gtr-25>* {
        padding: 0 0 0 .5em
    }

    .row.gtr-25.gtr-uniform {
        margin-top: -.5em
    }

    .row.gtr-25.gtr-uniform>* {
        padding-top: .5em
    }

    .row,.row.gtr-50 {
        margin-top: 0;
        margin-left: -1em
    }

    .row.gtr-50>* {
        padding: 0 0 0 1em
    }

    .row.gtr-50.gtr-uniform {
        margin-top: -1em
    }

    .row.gtr-50.gtr-uniform>* {
        padding-top: 1em
    }

    .row {
        margin-left: -2em
    }

    .row>* {
        padding: 0 0 0 2em
    }

    .row.gtr-uniform {
        margin-top: -2em
    }

    .row.gtr-uniform>* {
        padding-top: 2em
    }

    .row.gtr-150 {
        margin-top: 0;
        margin-left: -3em
    }

    .row.gtr-150>* {
        padding: 0 0 0 3em
    }

    .row.gtr-150.gtr-uniform {
        margin-top: -3em
    }

    .row.gtr-150.gtr-uniform>* {
        padding-top: 3em
    }

    .row.gtr-200 {
        margin-top: 0;
        margin-left: -4em
    }

    .row.gtr-200>* {
        padding: 0 0 0 4em
    }

    .row.gtr-200.gtr-uniform {
        margin-top: -4em
    }

    .row.gtr-200.gtr-uniform>* {
        padding-top: 4em
    }
}

header p {
    color: #999;
    margin: 0 0 1.5em;
    position: relative
}

header h2+p,header h3+p {
    font-size: 1.25em;
    line-height: 1.5em;
    margin-top: -1em
}

header h3+p {
    font-size: 1.1em;
    margin-top: -.8em
}

header h4+p,header h5+p,header h6+p {
    font-size: .9em;
    line-height: 1.5em;
    margin-top: -.6em
}

header.major,label {
    margin: 0 0 1em
}

header.major:after {
    background: rgba(144,144,144,.5);
    content: "";
    display: inline-block;
    height: 1px;
    margin-top: 1.5em;
    width: 6em
}

header.major h2,header.major h3,header.major h4,header.major h5,header.major h6 {
    margin: 0
}

header.major p {
    margin: .7em 0 0
}

header.special {
    text-align: center
}

label {
    color: #555;
    display: block;
    font-size: .9em;
    font-weight: 400
}

input[type=email],input[type=password],input[type=text],select {
    padding: 0 1em
}

input[type=email],input[type=password],input[type=text],select,textarea {
    -moz-appearance: none;
    -webkit-appearance: none;
    -ms-appearance: none;
    appearance: none;
    background: rgba(144,144,144,.075);
    border-radius: 4px;
    border: 0;
    border: solid 1px rgba(144,144,144,.5);
    color: inherit;
    display: block;
    outline: 0;
    text-decoration: none;
    width: 100%
}

input[type=email]:invalid,input[type=password]:invalid,input[type=text]:invalid,select:invalid,textarea:invalid {
    box-shadow: none
}

input[type=email]:focus,input[type=password]:focus,input[type=text]:focus,select:focus,textarea:focus {
    border-color: #6bd4c8
}

select {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='40' preserveAspectRatio='none' viewBox='0 0 40 40'%3E%3Cpath d='M9.4,12.3l10.4,10.4l10.4-10.4c0.2-0.2,0.5-0.4,0.9-0.4c0.3,0,0.6,0.1,0.9,0.4l3.3,3.3c0.2,0.2,0.4,0.5,0.4,0.9 c0,0.4-0.1,0.6-0.4,0.9L20.7,31.9c-0.2,0.2-0.5,0.4-0.9,0.4c-0.3,0-0.6-0.1-0.9-0.4L4.3,17.3c-0.2-0.2-0.4-0.5-0.4-0.9 c0-0.4,0.1-0.6,0.4-0.9l3.3-3.3c0.2-0.2,0.5-0.4,0.9-0.4S9.1,12.1,9.4,12.3z' fill='rgba(144, 144, 144, 0.5)' /%3E%3C/svg%3E");
    background-size: 1.25rem;
    background-repeat: no-repeat;
    background-position: calc(100% - 1rem) center;
    padding-right: 2.75em;
    text-overflow: ellipsis
}

select option {
    color: #555;
    background: #fff
}

select:focus::-ms-value {
    background-color: transparent
}

select::-ms-expand {
    display: none
}

input[type=email],input[type=password],input[type=text],select {
    height: 2.75em
}

textarea {
    padding: .75em 1em
}

input[type=checkbox],input[type=radio] {
    -moz-appearance: none;
    -webkit-appearance: none;
    -ms-appearance: none;
    appearance: none;
    display: block;
    float: left;
    margin-right: -2em;
    opacity: 0;
    width: 1em;
    z-index: -1
}

input[type=checkbox]+label,input[type=radio]+label {
    text-decoration: none;
    color: #666;
    cursor: pointer;
    display: inline-block;
    font-size: 1em;
    font-weight: 300;
    padding-left: 2.4em;
    padding-right: .75em;
    position: relative
}

input[type=checkbox]+label:before,input[type=radio]+label:before {
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    text-transform: none!important;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    background: rgba(144,144,144,.075);
    border: solid 1px rgba(144,144,144,.5);
    content: "";
    display: inline-block;
    font-size: .8em;
    height: 2.0625em;
    left: 0;
    line-height: 2.0625em;
    position: absolute;
    text-align: center;
    top: 0;
    width: 2.0625em
}

input[type=checkbox]:checked+label:before,input[type=radio]:checked+label:before {
    background: #666;
    border-color: #666;
    color: #fff;
    content: ""
}

input[type=checkbox]:focus+label:before,input[type=radio]:focus+label:before {
    border-color: #6bd4c8
}

input[type=checkbox]+label:before {
    border-radius: 4px
}

input[type=radio]+label:before {
    border-radius: 100%
}

::-webkit-input-placeholder {
    color: #999!important;
    opacity: 1
}

:-moz-placeholder {
    color: #999!important;
    opacity: 1
}

::-moz-placeholder {
    color: #999!important;
    opacity: 1
}

:-ms-input-placeholder {
    color: #999!important;
    opacity: 1
}

.box {
    border-radius: 4px;
    border: solid 1px rgba(144,144,144,.5);
    margin-bottom: 2em;
    padding: 1.5em
}

.box>:last-child,.box>:last-child>:last-child,.box>:last-child>:last-child>:last-child {
    margin-bottom: 0
}

.box.alt {
    border: 0;
    border-radius: 0;
    padding: 0
}

.icon {
    text-decoration: none;
    border-bottom: none;
    position: relative
}

.icon:before {
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    text-transform: none!important;
    font-family: "Font Awesome 5 Free";
    font-weight: 400;
    line-height: inherit
}

.icon>.label {
    display: none
}

.icon.solid:before {
    font-weight: 900!important
}

.icon.brands:before {
    font-family: "Font Awesome 5 Brands"
}

.icon.style1:before {
    color: var(--primary-blue)
}

.icon.style2:before {
    color: var(--secondary-blue)
}

#header a:hover,.icon.style3:before {
    color: var(--accent-blue)
}

.icon.major,.icon.major:before,.image {
    display: inline-block
}

.icon.major {
    text-decoration: none;
    color: #555;
    cursor: default;
    margin: 0 0 1.5em
}

.icon.major:before {
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    text-transform: none!important;
    font-family: "Font Awesome 5 Free";
    font-weight: 400;
    font-size: 4em;
    line-height: 1em
}

.image {
    border-radius: 4px;
    border: 0;
    position: relative
}

.image img {
    border-radius: 4px;
    display: block
}

.image.left {
    float: left;
    padding: 0 1.5em 1em 0;
    top: .25em
}

.image.right {
    float: right;
    padding: 0 0 1em 1.5em;
    top: .25em
}

.image.left,.image.right {
    max-width: 40%
}

.image.fit {
    display: block;
    margin: 0 0 2em;
    width: 100%
}

ol,ul {
    list-style: decimal;
    margin: 0 0 2em;
    padding-left: 1.25em
}

ol li {
    padding-left: .25em
}

ul {
    list-style: disc;
    padding-left: 1em
}

ul li {
    padding-left: .5em
}

ul.alt {
    list-style: none;
    padding-left: 0
}

ul.alt li {
    border-top: solid 1px rgba(144,144,144,.5);
    padding: .5em 0
}

ul.alt li:first-child {
    border-top: 0;
    padding-top: 0
}

ul.actions {
    display: -moz-flex;
    display: -webkit-flex;
    display: -ms-flex;
    display: flex;
    cursor: default;
    list-style: none;
    margin-left: -1em;
    padding-left: 0
}

ul.actions li {
    padding: 0 0 0 1em;
    vertical-align: middle
}

ul.actions.special {
    -moz-justify-content: center;
    -webkit-justify-content: center;
    -ms-justify-content: center;
    justify-content: center;
    width: 100%;
    margin-left: 0
}

#header .actions li:first-child,ul.actions.special li:first-child {
    padding-left: 0
}

ul.actions.stacked {
    -moz-flex-direction: column;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    margin-left: 0
}

ul.actions.stacked li {
    padding: 1.3em 0 0
}

ul.actions.stacked li:first-child {
    padding-top: 0
}

ul.actions.fit {
    width: calc(100% + 1em)
}

ul.actions.fit li {
    -moz-flex-grow: 1;
    -webkit-flex-grow: 1;
    -ms-flex-grow: 1;
    flex-grow: 1;
    -moz-flex-shrink: 1;
    -webkit-flex-shrink: 1;
    -ms-flex-shrink: 1;
    flex-shrink: 1;
    width: 100%
}

@media screen and (max-width:480px) {
    ul.actions:not(.fixed) {
        -moz-flex-direction: column;
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;
        margin-left: 0;
        width: 100%!important
    }

    ul.actions:not(.fixed) li {
        -moz-flex-grow: 1;
        -webkit-flex-grow: 1;
        -ms-flex-grow: 1;
        flex-grow: 1;
        -moz-flex-shrink: 1;
        -webkit-flex-shrink: 1;
        -ms-flex-shrink: 1;
        flex-shrink: 1;
        padding: 1em 0 0;
        text-align: center;
        width: 100%
    }

    ul.actions:not(.fixed) li .button,ul.actions:not(.fixed) li button,ul.actions:not(.fixed) li input[type=button],ul.actions:not(.fixed) li input[type=reset],ul.actions:not(.fixed) li input[type=submit],ul.actions:not(.fixed) li>* {
        width: 100%
    }

    ul.actions:not(.fixed) li:first-child {
        padding-top: 0
    }

    ul.actions:not(.fixed) li .button.icon:before,ul.actions:not(.fixed) li button.icon:before,ul.actions:not(.fixed) li input[type=button].icon:before,ul.actions:not(.fixed) li input[type=reset].icon:before,ul.actions:not(.fixed) li input[type=submit].icon:before {
        margin-left: -.5em
    }
}

ul.icons {
    cursor: default;
    list-style: none;
    padding-left: 0
}

ul.icons li {
    display: inline-block;
    padding: 0 1.25em 0 0
}

ul.icons li:last-child {
    padding-right: 0
}

ul.icons li .icon:before {
    font-size: 1.5em
}

ul.major-icons {
    list-style: none;
    padding-left: 0
}

ul.major-icons li {
    display: inline-block;
    padding: 2.5em;
    text-align: center
}

ul.major-icons li .icon {
    -moz-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    border-radius: 4px;
    border: solid 1px rgba(144,144,144,.5);
    display: inline-block;
    height: 8em;
    line-height: 8em;
    margin: 0;
    text-align: center;
    width: 8em
}

ul.major-icons li .icon:before {
    -moz-transform: rotate(-45deg);
    -webkit-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg);
    display: inline-block;
    line-height: inherit
}

.table-wrapper {
    -webkit-overflow-scrolling: touch;
    overflow-x: auto
}

table tbody tr {
    border-left: 0;
    border-right: 0
}

table tbody tr:nth-child(2n+1) {
    background-color: rgba(144,144,144,.075)
}

table td {
    padding: .75em
}

table th {
    color: #555;
    font-size: .9em;
    font-weight: 400;
    padding: 0 .75em .75em;
    text-align: left
}

table thead {
    border-bottom: solid 1px rgba(144,144,144,.5)
}

table tfoot {
    border-top: solid 1px rgba(144,144,144,.5)
}

table.alt {
    border-collapse: separate
}

table.alt tbody tr td {
    border: solid 1px rgba(144,144,144,.5);
    border-left-width: 0;
    border-top-width: 0
}

table.alt tbody tr td:first-child {
    border-left-width: 1px
}

table.alt tbody tr:first-child td {
    border-top-width: 1px
}

table.alt thead {
    border-bottom: 0
}

table.alt tfoot {
    border-top: 0
}

.button,button,input[type=button],input[type=reset],input[type=submit] {
    -moz-appearance: none;
    -webkit-appearance: none;
    -ms-appearance: none;
    appearance: none;
    -moz-transition: background-color .2s ease-in-out,color .2s ease-in-out;
    -webkit-transition: background-color .2s ease-in-out,color .2s ease-in-out;
    -ms-transition: background-color .2s ease-in-out,color .2s ease-in-out;
    transition: background-color .2s ease-in-out,color .2s ease-in-out;
    background-color: var(--secondary-blue);
    border-radius: 4px;
    border: 0;
    box-shadow: inset 0 0 0 1px rgba(144,144,144,.5);
    color: var(--light-blue)!important;
    cursor: pointer;
    display: inline-block;
    font-size: .9em;
    font-weight: 400;
    height: 2.75em;
    letter-spacing: .125em;
    line-height: 2.75em;
    padding: 0 2em;
    text-align: center;
    text-decoration: none;
    text-indent: .125em;
    text-transform: uppercase;
    white-space: nowrap
}

.button:hover,button:hover,input[type=button]:hover,input[type=reset]:hover,input[type=submit]:hover {
    background-color: var(--accent-blue)
}

.button:active,button:active,input[type=button]:active,input[type=reset]:active,input[type=submit]:active {
    background-color: rgba(144,144,144,.2)
}

.button.icon:before,button.icon:before,input[type=button].icon:before,input[type=reset].icon:before,input[type=submit].icon:before {
    margin-right: .5em
}

.button.fit,button.fit,input[type=button].fit,input[type=reset].fit,input[type=submit].fit {
    width: 100%
}

.button.small,button.small,input[type=button].small,input[type=reset].small,input[type=submit].small {
    font-size: .7em
}

.button.large,button.large,input[type=button].large,input[type=reset].large,input[type=submit].large {
    font-size: 1.25em
}

.button.wide,button.wide,input[type=button].wide,input[type=reset].wide,input[type=submit].wide {
    min-width: 12em
}

input[type=submit].primary {
    background-color: var(--primary-blue);
    box-shadow: none!important
}

.button.primary,button.primary,input[type=button].primary,input[type=reset].primary {
    background-color: var(--primary-blue);
    box-shadow: none!important;
    color: #fff!important
}

.button.primary:hover,button.primary:hover,input[type=button].primary:hover,input[type=reset].primary:hover,input[type=submit].primary:hover {
    background-color: #626262
}

.button.primary:active,button.primary:active,input[type=button].primary:active,input[type=reset].primary:active,input[type=submit].primary:active {
    background-color: #484848
}

.button.disabled,.button:disabled,button.disabled,button:disabled,input[type=button].disabled,input[type=button]:disabled,input[type=reset].disabled,input[type=reset]:disabled,input[type=submit].disabled,input[type=submit]:disabled {
    cursor: default;
    opacity: .25
}

.main {
    padding: 6em 0 4em
}

.main.style1 {
    background-color: var(--white)
}

.main.style2 {
    background-color: var(--light-blue)
}

#header a,.main.style2 a {
    border-bottom-color: rgba(255,255,255,.5)
}

.main.style2 a:hover,.main.style2 header p {
    color: #fff
}

.main.style2 b,.main.style2 h1,.main.style2 h2,.main.style2 h3,.main.style2 h4,.main.style2 h5,.main.style2 h6,.main.style2 strong {
    color: #666
}

#header header.major:after,.main.style2 header.major:after {
    background: #fff
}

.main.style2 .button,.main.style2 button,.main.style2 input[type=button],.main.style2 input[type=reset],.main.style2 input[type=submit] {
    box-shadow: inset 0 0 0 1px #fff;
    color: #fff!important
}

#header .button:hover,#header button:hover,#header input[type=button]:hover,#header input[type=reset]:hover,#header input[type=submit]:hover,.main.style2 .button:hover,.main.style2 button:hover,.main.style2 input[type=button]:hover,.main.style2 input[type=reset]:hover,.main.style2 input[type=submit]:hover {
    background-color: rgba(255,255,255,.125)
}

#header .button:active,#header button:active,#header input[type=button]:active,#header input[type=reset]:active,#header input[type=submit]:active,.main.style2 .button:active,.main.style2 button:active,.main.style2 input[type=button]:active,.main.style2 input[type=reset]:active,.main.style2 input[type=submit]:active {
    background-color: rgba(255,255,255,.25)
}

.main.style2 .button.primary,.main.style2 button.primary,.main.style2 input[type=button].primary,.main.style2 input[type=reset].primary,.main.style2 input[type=submit].primary {
    background-color: #fff;
    box-shadow: inset 0 0 0 1px #fff!important;
    color: #333!important
}

#header .button.primary:hover,#header button.primary:hover,#header input[type=button].primary:hover,#header input[type=reset].primary:hover,#header input[type=submit].primary:hover,.main.style2 .button.primary:hover,.main.style2 button.primary:hover,.main.style2 input[type=button].primary:hover,.main.style2 input[type=reset].primary:hover,.main.style2 input[type=submit].primary:hover {
    background-color: rgba(255,255,255,.125)!important;
    color: #fff!important
}

#header .button.primary:active,#header button.primary:active,#header input[type=button].primary:active,#header input[type=reset].primary:active,#header input[type=submit].primary:active,.main.style2 .button.primary:active,.main.style2 button.primary:active,.main.style2 input[type=button].primary:active,.main.style2 input[type=reset].primary:active,.main.style2 input[type=submit].primary:active {
    background-color: rgba(255,255,255,.25)!important
}

#header ul.major-icons li .icon,.main.style2 ul.major-icons li .icon {
    border-color: #fff
}

.main.style2 .icon.major {
    color: #fff
}

#header {
    padding: 9em 0;
    background: linear-gradient(135deg,var(--primary-blue) 0%,var(--secondary-blue) 100%);
    color: var(--primary-blue);
    background-attachment: fixed,fixed,fixed;
    background-image: url(./../../images/background.png);
    background-position: top left,center center,center center;
    background-size: cover,cover,cover;
    background-repeat: no-repeat;
    overflow: hidden;
    position: relative;
    text-align: center
}

#header::before {
    content: "";
    background: rgba(0,0,0,.5);
    z-index: 1;
    pointer-events: none
}

#header .logoTitle,#header>* {
    position: relative;
    z-index: 2
}

#header .logoTitle {
    text-shadow: 2px 2px 4px rgba(0,0,0,.3)
}

#header a {
    color: var(--secondary-blue)
}

#footer,#header b,#header h1,#header h2,#header h3,#header h4,#header h5,#header h6,#header strong {
    color: var(--white)
}

#header header p {
    color: rgba(255,255,255,.9)
}

#header .button,#header button,#header input[type=button],#header input[type=reset],#header input[type=submit] {
    box-shadow: inset 0 0 0 1px #fff;
    color: #fff!important
}

#header .button.primary,#header button.primary,#header input[type=button].primary,#header input[type=reset].primary,#header input[type=submit].primary {
    background-color: #fff;
    box-shadow: inset 0 0 0 1px #fff!important;
    color: #4686a0!important
}

#header .icon.major {
    color: #fff
}

#header h1 {
    margin: 0
}

#header p {
    margin: 1em 0 0
}

#header .actions {
    -moz-justify-content: center;
    -webkit-justify-content: center;
    -ms-justify-content: center;
    justify-content: center;
    margin-top: 2.5em;
    margin-left: 0;
    position: relative
}

#header .actions:after {
    background: #fff;
    content: "";
    height: 100vh;
    left: 50%;
    position: absolute;
    top: 100%;
    width: 1px
}

#header .inner {
    -moz-transition: -moz-transform 1.5s ease,opacity 2s ease;
    -webkit-transition: -webkit-transform 1.5s ease,opacity 2s ease;
    -ms-transition: -ms-transform 1.5s ease,opacity 2s ease;
    transition: transform 1.5s ease,opacity 2s ease;
    -moz-transition-delay: .25s;
    -webkit-transition-delay: .25s;
    -ms-transition-delay: .25s;
    transition-delay: .25s;
    -moz-transform: scale(1);
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
    opacity: 1;
    position: relative;
    z-index: 1
}

#header .inner .actions {
    -moz-transition: -moz-transform 1.25s ease;
    -webkit-transition: -webkit-transform 1.25s ease;
    -ms-transition: -ms-transform 1.25s ease;
    transition: transform 1.25s ease;
    -moz-transition-delay: 1s;
    -webkit-transition-delay: 1s;
    -ms-transition-delay: 1s;
    transition-delay: 1s;
    -moz-transform: translateY(0);
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
    opacity: 1
}

#header::before,#header:after,.video-container iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

#header:after {
    -moz-transition: opacity 1s ease;
    -webkit-transition: opacity 1s ease;
    -ms-transition: opacity 1s ease;
    transition: opacity 1s ease;
    background-image: linear-gradient(45deg,#4fa49a,#4361c2);
    content: "";
    opacity: 0
}

body.is-preload #header .inner {
    -moz-transform: scale(1.05);
    -webkit-transform: scale(1.05);
    -ms-transform: scale(1.05);
    transform: scale(1.05);
    opacity: 0
}

body.is-preload #header .inner .actions {
    -moz-transform: translateY(30em);
    -webkit-transform: translateY(30em);
    -ms-transform: translateY(30em);
    transform: translateY(30em);
    opacity: 0
}

.scroll-video-container.visible video,body.is-preload #header:after {
    opacity: 1
}

#footer {
    display: -moz-flex;
    display: -webkit-flex;
    display: -ms-flex;
    display: flex;
    -moz-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding: 5em 5em 3em;
    width: calc(100% + 2em);
    margin: 0 0 3em -2em;
    background-color: var(--dark-blue)
}

#footer>* {
    width: calc(50% - 2em);
    margin-left: 2em
}

#footer .copyright {
    width: 100%;
    margin: 2.5em 0 2em;
    font-size: .8em;
    text-align: center
}

@media screen and (max-width:1280px) {
    #footer {
        padding: 4em 4em 2em
    }
}

@media screen and (max-width:980px) {
    #footer {
        padding: 4em 3em 2em;
        display: block;
        margin: 0 0 3em;
        width: 100%
    }

    #footer>* {
        width: 100%;
        margin-left: 0;
        margin-bottom: 3em
    }

    #footer .copyright {
        text-align: left
    }
}

@media screen and (max-width:736px) {
    #footer {
        padding: 3em 2em 1em
    }
}

@media screen and (max-width:480px) {
    #footer {
        padding: 2.5em 1em .5em
    }
}

@media screen and (max-width:1680px) {
    body,input,select,textarea {
        font-size: 14pt
    }

    #header {
        padding: 6em 0
    }
}

@media screen and (max-width:1140px) {
    body,input,select,textarea {
        font-size: 13pt
    }

    h1 br,h2 br,h3 br,h4 br,h5 br,h6 br {
        display: none
    }

    ul.major-icons li {
        padding: 2em
    }

    ul.major-icons li .icon {
        height: 8em;
        line-height: 8em;
        width: 8em
    }

    .main {
        padding: 4em 0 2em
    }

    #footer,#header,.main.style2 {
        background-attachment: scroll
    }

    #footer,#header {
        padding: 5em 0
    }

    #header br {
        display: inline
    }

    #footer {
        padding: 4em 0
    }
}

@media screen and (max-width:980px) {
    ul.major-icons li {
        padding: 2em
    }

    ul.major-icons li .icon {
        height: 7em;
        line-height: 7em;
        width: 7em
    }

    .main {
        padding: 5em 3em 3em
    }

    #header {
        padding: 8em 3em
    }

    #footer {
        padding: 5em 3em
    }

    #one,#two {
        text-align: center
    }
}

@media screen and (max-width:736px) {
    body,input,select,textarea {
        font-size: 12pt
    }

    h1 {
        font-size: 1.75em
    }

    h2 {
        font-size: 1.5em
    }

    h3 {
        font-size: 1.1em
    }

    h4 {
        font-size: 1em
    }

    ul.major-icons li {
        padding: 1.5em
    }

    ul.major-icons li .icon {
        height: 5em;
        line-height: 5em;
        width: 5em
    }

    ul.major-icons li .icon:before {
        font-size: 42px
    }

    .icon.major {
        margin: 0 0 1em
    }

    .button,button,input[type=button],input[type=reset],input[type=submit] {
        height: 3em;
        line-height: 3em
    }

    .main {
        padding: 3em 1.5em 1em
    }

    #header {
        padding: 4em 3em
    }

    #header .actions {
        margin: 2em 0 0
    }

    #footer {
        padding: 3em 1.5em
    }
}

@media screen and (max-width:480px) {
    .button,input[type=button],input[type=reset],input[type=submit] {
        padding: 0
    }

    .main {
        padding: 2em 1.5em .1em
    }

    #header {
        padding: 4em 2em
    }

    #header br {
        display: none
    }

    #footer {
        padding: 2em 1.5em
    }

    #footer .copyright {
        margin: 1.5em 0 0
    }

    #footer .copyright li {
        border: 0;
        display: block;
        margin: 1em 0 0;
        padding: 0
    }

    #footer .copyright li:first-child {
        margin-top: 0
    }
}

@media screen and (max-width:320px) {
    body,html {
        min-width: 320px
    }

    .main {
        padding: 2em 1em .1em
    }

    #header {
        padding: 3em 1em
    }

    #footer {
        padding: 2em 1em
    }
}

#header .image.fit,.video-container {
    position: relative;
    width: 100%;
    border-radius: 8px;
    overflow: hidden
}

#header .image.fit,#one .image.fit {
    height: 100%;
    padding: 10% 20%;
    background: linear-gradient(to right,rgba(255,255,255,0)0,rgba(255,255,255,.1) 20%,rgba(255,255,255,.1) 80%,rgba(255,255,255,0) 100%);
    display: block;
    box-shadow: none
}

#header .image.fit {
    margin: 0
}

#one .image.fit {
    width: 100%;
    position: relative
}

#header .image.fit img {
    transform: scale(1.1)
}

#header .image.fit img,#one .image.fit img {
    object-fit: cover;
    filter: brightness(1.1) contrast(1.1);
    transition: transform .3s ease;
    width: 100%;
    height: auto;
    display: block
}

#header .image.fit::before,#one .image.fit::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(45deg,rgba(255,255,255,.1)0,rgba(255,255,255,0) 20%,rgba(255,255,255,0) 80%,rgba(255,255,255,.1) 100%);
    z-index: 1;
    display: none
}

#header .image.fit:hover img,#one .image.fit:hover img {
    transform: scale(1.15);
    filter: brightness(1.2) contrast(1.2);
    transform: none
}

#header .image.fit:hover::before,#one .image.fit:hover::before {
    background: linear-gradient(45deg,rgba(255,255,255,.2)0,rgba(255,255,255,0) 20%,rgba(255,255,255,0) 80%,rgba(255,255,255,.2) 100%);
    transition: background .5s ease;
    display: none
}

.video-container {
    padding-top: 56.25%;
    margin: 2em 0;
    background: rgba(0,0,0,.1);
    box-shadow: 0 10px 30px rgba(0,0,0,.1)
}

.video-container iframe {
    border: 0;
    transition: transform .3s ease
}

.video-container:hover iframe {
    transform: scale(1.02)
}

#video-presentation {
    background: linear-gradient(135deg,var(--primary-blue) 0%,var(--secondary-blue) 100%);
    color: #fff;
    padding: 4em 0
}

#video-presentation header.major {
    margin-bottom: 3em
}

#video-presentation header.major h2 {
    color: #666;
    font-size: 2.5em;
    margin-bottom: .5em
}

#video-presentation header.major p {
    color: #666;
    font-size: 1.2em
}

@media screen and (max-width:736px) {
    .video-container {
        margin: 1em 0
    }

    #video-presentation header.major h2 {
        font-size: 2em
    }

    #video-presentation header.major p {
        font-size: 1em
    }
}

.partners-slider {
    width: 100%;
    overflow: hidden;
    padding: 2em 0;
    background: var(--light-blue);
    position: relative
}

.partners-container {
    display: flex;
    animation: slidePartners 30s linear infinite;
    gap: 1em
}

.partner-item {
    flex: 0 0 250px;
    margin: 0;
    background: #fff;
    border-radius: 8px;
    box-shadow: 0 2px 4px rgba(0,0,0,.1);
    display: flex;
    align-items: center;
    justify-content: center;
    height: 120px;
    padding: 15px;
    transition: transform .3s ease,box-shadow .3s ease
}

.partner-item:hover {
    transform: translateY(-5px)
}

.partner-item img {
    transition: all .3s ease;
    max-width: 100%;
    max-height: 90px;
    width: auto;
    height: auto;
    object-fit: contain
}

#one .image.fit img,.partner-item:hover img {
    transform: scale(1.1)
}

.partners-container:hover {
    animation-play-state: paused
}

.logoTitle {
    font-size: 2.5em;
    font-weight: 700;
    color: rgb(255,255,255,10)!important
}

.logoSubtitle {
    font-size: 1.5em;
    color: rgb(255,255,255,100)!important
}

.section-scanner .row {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 2em
}

.section-scanner .col-content,.section-scanner .col-image {
    flex: 1;
    min-width: 300px
}

@media screen and (max-width:736px) {
    .section-scanner .row {
        flex-direction: column
    }

    .section-scanner .col-content {
        order: 1;
        width: 100%
    }

    .section-scanner .col-image {
        order: 2;
        width: 100%;
        margin-top: 2em
    }
}

#one .col-6.col-12-medium {
    display: flex;
    flex-direction: column;
    justify-content: center
}

#one .image.fit {
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 4px 8px rgba(0,0,0,.1);
    margin: 0
}

@media screen and (max-width:736px) {
    #one .row.gtr-150 {
        display: flex;
        flex-direction: column
    }

    #one .col-6.col-12-medium:first-child {
        order: 1
    }

    #one .col-6.col-12-medium.imp-medium {
        order: 2;
        margin-top: 2em
    }
}

#one .col-6.col-12-medium.imp-medium img,.scanner-image {
    width: 80%;
    height: auto;
    display: block;
    border-radius: 12px;
    box-shadow: 0 4px 12px rgba(0,0,0,.1)
}

@media screen and (max-width:736px) {
    #one .row.gtr-150 {
        display: flex;
        flex-direction: column
    }

    #one .col-6.col-12-medium:first-child {
        order: 1
    }

    #one .col-6.col-12-medium.imp-medium {
        order: 2;
        margin-top: 2em
    }
}

#one .col-6.col-12-medium.imp-medium img {
    width: 90%;
    box-shadow: 0 5px 15px rgba(0,0,0,.15);
    opacity: 0;
    transform: translateY(30px);
    transition: opacity .8s ease,transform .8s ease
}

@media screen and (max-width:736px) {
    #one .row.gtr-150 {
        display: flex;
        flex-direction: column
    }

    #one .col-6.col-12-medium:first-child {
        order: 1
    }

    #one .col-6.col-12-medium.imp-medium {
        order: 2;
        margin-top: 2em
    }
}

#one .col-6.col-12-medium.imp-medium {
    display: flex;
    justify-content: center;
    align-items: center
}

#one .stats-container,#one h2,#one p {
    opacity: 0;
    transform: translateY(30px);
    transition: opacity .6s ease,transform .6s ease
}

.fade-in {
    opacity: 1!important
}

#one h2.fade-in {
    transition-delay: .1s
}

#one p.fade-in {
    transition-delay: .3s
}

#one .stats-container.fade-in {
    transition-delay: .5s
}

#one img.fade-in {
    transition-delay: .8s
}

@media screen and (max-width:736px) {
    #one .row.gtr-150 {
        display: flex;
        flex-direction: column
    }

    #one .col-6.col-12-medium:first-child {
        order: 1
    }

    #one .col-6.col-12-medium.imp-medium {
        order: 2;
        margin-top: 2em
    }
}

.scroll-video-container {
    background: #f5f5f5
}

.scroll-video-container video {
    opacity: 1;
    will-change: currentTime
}

.scroll-video-progress {
    position: absolute;
    bottom: 0;
    left: 0;
    height: 4px;
    background: var(--primary-blue, #007BFF);
    width: 0%;
    transition: width .1s ease-out;
    z-index: 2
}

.scroll-indicator {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    color: #fff;
    font-size: 14px;
    background: rgba(0,0,0,.5);
    padding: 8px 16px;
    border-radius: 20px;
    opacity: .8;
    z-index: 3;
    pointer-events: none;
    transition: opacity .3s ease
}

.scroll-video-container:hover .scroll-indicator {
    opacity: 0
}

@media screen and (max-width:736px) {
    .scroll-video-container {
        margin-top: 2em;
        padding-bottom: 56.25%
    }
}

.scroll-video-container {
    background: 0 0;
    will-change: transform;
    transform: translateZ(0)
}

.video-fade-overlay {
    background: radial-gradient(ellipse at center,rgba(255,255,255,0) 70%,rgba(255,255,255,.8) 100%)
}

@media screen and (max-width:736px) {
    .workflow-step .col-6.col-12-medium:first-child {
        order: 2
    }

    .workflow-step .col-6.col-12-medium:last-child {
        order: 1;
        margin-bottom: 1.5em
    }
}

.design-video-container .video-fade-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(135deg,rgba(0,123,255,.1)0,rgba(202,233,255,.1) 100%);
    pointer-events: none
}

@media screen and (max-width:736px) {
    .workflow-step .col-6.col-12-medium:first-child {
        order: 2
    }

    .workflow-step .col-6.col-12-medium:last-child {
        order: 1;
        margin-bottom: 2em
    }

    .design-video-container {
        padding-bottom: 66.67%
    }
}

.design-video-container,.scroll-video-container {
    border-radius: 12px;
    box-shadow: 0 6px 20px rgba(0,0,0,.08);
    transform: translateY(10px);
    background: #fff
}

.design-video-container.visible,.scroll-video-container.visible {
    transform: translateY(0)
}

.design-video-container video,.scroll-video-container video {
    transition: opacity .6s ease
}

.video-fade-overlay {
    background: linear-gradient(to bottom,rgba(255,255,255,.6)0,rgba(255,255,255,0) 15%,rgba(255,255,255,0) 85%,rgba(255,255,255,.6) 100%)
}

.design-video-container::before,.scroll-video-container::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(to right,rgba(255,255,255,.9)0,rgba(255,255,255,0) 5%,rgba(255,255,255,0) 95%,rgba(255,255,255,.9) 100%);
    z-index: 1;
    border-radius: 12px
}

@media screen and (max-width:736px) {
    .workflow-step .col-6.col-12-medium:first-child {
        order: 2
    }

    .workflow-step .col-6.col-12-medium:last-child {
        order: 1;
        margin-bottom: 2em
    }

    .design-video-container,.scroll-video-container {
        padding-bottom: 66.67%
    }

    .design-video-container video {
        width: 130%;
        left: -15%
    }
}

.video-fade-overlay {
    background: radial-gradient(ellipse at center,rgba(255,255,255,0) 30%,rgba(255,255,255,.4) 70%,#fff 100%)
}

@media screen and (max-width:736px) {
    .workflow-step .col-6.col-12-medium:first-child {
        order: 2
    }

    .workflow-step .col-6.col-12-medium:last-child {
        order: 1;
        margin-bottom: 2em
    }

    .design-video-container video {
        width: 130%;
        left: -15%
    }
}

.design-video-container {
    max-height: 80vh
}

.video-fade-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    background: radial-gradient(ellipse at center,rgba(255,255,255,0) 50%,rgba(255,255,255,.7) 85%,#fff 100%);
    z-index: 2;
    border-radius: 0
}

@media screen and (max-width:736px) {
    .workflow-step .col-6.col-12-medium:first-child {
        order: 2
    }

    .workflow-step .col-6.col-12-medium:last-child {
        order: 1;
        margin-bottom: 2em
    }

    .design-video-container {
        width: 85%;
        padding-bottom: 150%
    }

    .design-video-container video {
        width: 200%;
        left: -50%
    }
}

.media-fade-overlay {
    background: linear-gradient(to right,rgba(255,255,255,.7)0,rgba(255,255,255,0) 20%,rgba(255,255,255,0) 80%,rgba(255,255,255,.7) 100%),linear-gradient(to bottom,rgba(255,255,255,.7)0,rgba(255,255,255,0) 20%,rgba(255,255,255,0) 80%,rgba(255,255,255,.7) 100%)
}

@media screen and (max-width:736px) {
    .workflow-step {
        flex-direction: column-reverse
    }

    .workflow-step .col-6.col-12-medium {
        width: 100%;
        margin-bottom: 2em
    }

    .workflow-media,.workflow-text {
        padding: 0
    }

    .design-video-container {
        width: 85%;
        padding-bottom: 150%
    }

    .design-video-container video {
        width: 200%;
        left: -50%
    }

    .scanner-image-container {
        width: 90%;
        margin: 0 auto 2em
    }
}

.scroll-video-container {
    margin: 0
}

.design-video-container,.scanner-image-container,.scroll-video-container {
    background-color: transparent;
    border: 0;
    box-shadow: none;
    padding: 0
}

.scanner-image-container {
    position: relative;
    opacity: 0;
    transition: opacity .8s ease;
    margin: 0;
    height: auto
}

.scanner-image-container.visible {
    opacity: 1
}

.design-video-container video,.scanner-image-container img,.scroll-video-container video {
    filter: brightness(1.05);
    border-radius: 0
}

.scanner-image-container img {
    top: 0;
    left: 0;
    width: 100%;
    position: relative;
    display: block
}

.media-fade-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 2;
    border-radius: 0;
    background: linear-gradient(to right,rgba(255,255,255,.7)0,rgba(255,255,255,0) 2%,rgba(255,255,255,0) 98%,rgba(255,255,255,.7) 100%),linear-gradient(to bottom,rgba(255,255,255,.7)0,rgba(255,255,255,0) 2%,rgba(255,255,255,0) 98%,rgba(255,255,255,.7) 100%);
    background-blend-mode: multiply
}

.workflow-step,.workflow-step h3 {
    display: flex;
    align-items: center;
    margin-bottom: 3em
}

.workflow-step .col-6 {
    display: flex;
    flex-direction: column;
    justify-content: center
}

.workflow-text {
    padding-right: 2em
}

.workflow-media {
    padding-left: 2em
}

@media screen and (max-width:736px) {
    .workflow-step {
        flex-direction: column-reverse
    }

    .workflow-step .col-6.col-12-medium {
        width: 100%;
        margin-bottom: 2em
    }

    .workflow-media,.workflow-text {
        padding: 0
    }

    .design-video-container {
        width: 85%;
        padding-bottom: 150%
    }

    .design-video-container video {
        width: 200%;
        left: -50%
    }

    .scanner-image-container {
        width: 90%;
        margin: 0 auto 2em
    }
}

.design-video-container,.scroll-video-container {
    position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 56.25%;
    overflow: hidden;
    opacity: 0;
    transition: opacity .8s ease
}

.scroll-video-container.visible {
    opacity: 1
}

.scroll-video-container .video-fade-overlay,.scroll-video-container video,.service-item::before {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.scroll-video-container video {
    object-fit: cover
}

.scroll-video-container .video-fade-overlay {
    pointer-events: none;
    background: radial-gradient(ellipse at center,rgba(255,255,255,0) 70%,rgba(255,255,255,.7) 90%,#fff 100%);
    z-index: 2
}

.design-video-container {
    width: 75%;
    padding-bottom: 133.33%;
    margin: 0 auto
}

.design-video-container.visible,.service-item:hover::before {
    opacity: 1
}

.design-video-container video {
    position: absolute;
    top: 0;
    width: 180%;
    height: 100%;
    left: -40%;
    object-position: center;
    object-fit: cover
}

.brace-slider-container img {
    width: 20%;
    height: 100%;
    object-fit: cover
}

.step-number {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 70px;
    height: 70px;
    border-radius: 50%;
    background-color: #007bff;
    color: #fff;
    font-size: 2.5em;
    font-weight: 700;
    margin-right: 15px;
    margin-bottom: 15px;
    box-shadow: 0 4px 10px rgba(0,123,255,.3);
    transition: transform .3s ease,box-shadow .3s ease
}

.workflow-step h3 {
    margin-bottom: 1em
}

.step-title {
    font-size: 1.5em;
    font-weight: 600
}

.workflow-step:hover .step-number {
    transform: scale(1.05);
    box-shadow: 0 6px 15px rgba(0,123,255,.4)
}

.brace-slider {
    position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 66.67%;
    overflow: hidden;
    margin: 0 auto;
    box-shadow: 0 5px 15px rgba(0,0,0,.1);
    border-radius: 4px
}

.brace-slider-container {
    position: absolute;
    top: 0;
    left: 0;
    width: 500%;
    height: 100%;
    display: flex;
    transition: transform .5s ease
}

.brace-slider-nav {
    display: flex;
    justify-content: center;
    margin-top: 1em
}

.brace-slider-dot {
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background-color: #ddd;
    margin: 0 5px;
    cursor: pointer;
    transition: all .3s ease
}

.brace-slider-dot.active {
    background-color: #007bff;
    transform: scale(1.2)
}

.brace-slider-next,.brace-slider-prev {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 40px;
    height: 40px;
    background-color: rgba(255,255,255,.7);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    z-index: 10;
    transition: background-color .3s ease;
    font-weight: 700
}

.brace-slider-prev {
    left: 10px
}

.brace-slider-next {
    right: 10px
}

.brace-slider-next:hover,.brace-slider-prev:hover {
    background-color: rgba(255,255,255,.9)
}

.slider-progress {
    position: absolute;
    bottom: 0;
    left: 0;
    height: 3px;
    width: 0;
    background-color: #007bff;
    transition: width 5s linear
}

.slider-progress.active {
    width: 100%
}

.service-item {
    position: relative;
    transition: transform .3s ease,box-shadow .3s ease;
    padding: 2em;
    border-radius: 8px;
    overflow: hidden;
    z-index: 1
}

.service-item::before {
    content: "";
    background: linear-gradient(135deg,rgba(0,123,255,.05)0,rgba(202,233,255,.15) 100%);
    z-index: -1;
    opacity: 0;
    transition: opacity .3s ease
}

.service-item:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 25px rgba(0,123,255,.15)
}

.service-item:hover .icon.major {
    transform: scale(1.1) rotate(5deg);
    color: #007bff
}

.service-item .icon.major {
    transition: transform .3s ease,color .3s ease;
    margin-bottom: 1.5em
}

.service-image img {
    width: 100%;
    transition: transform .5s ease;
    display: block
}

.service-image:hover img {
    transform: scale(1.05)
}

.service-caption {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    background: linear-gradient(to top,rgba(0,0,0,.7)0,transparent 100%);
    padding: 1em;
    color: #fff;
    transform: translateY(100%);
    transition: transform .3s ease
}

.service-image:hover .service-caption {
    transform: translateY(0)
}

.testimonial-bubble {
    background-color: rgba(202,233,255,.3);
    border-radius: 15px;
    padding: 1.5em;
    position: relative;
    margin-bottom: 2em
}

.testimonial-bubble::after {
    content: "";
    position: absolute;
    bottom: -15px;
    left: 30px;
    border-width: 15px 15px 0;
    border-style: solid;
    border-color: rgba(202,233,255,.3) transparent
}

.service-badge {
    background-color: #007bff;
    text-transform: uppercase;
    letter-spacing: 1px
}

.service-title {
    display: flex;
    align-items: center;
    margin-bottom: 1em
}

.service-title h3 {
    margin: 0
}

.service-item.fade-in {
    opacity: 1!important;
    transform: translateY(0)!important
}

.icon.style4:before,.icon.style5:before,.icon.style6:before {
    color: #007bff
}

.service-box {
    padding: 1.5em;
    margin-bottom: 2em;
    text-align: center;
    transition: transform .3s ease,box-shadow .3s ease;
    border-radius: 8px
}

.service-box:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 20px rgba(0,123,255,.15)
}

.service-box .icon.major {
    margin: 0 auto 1.5em;
    width: 4em;
    height: 4em;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: rgba(0,123,255,.1)
}

.service-box h3 {
    margin-top: .5em;
    margin-bottom: .7em
}

.service-box p {
    margin-bottom: 1.5em
}

.service-image {
    overflow: hidden;
    border-radius: 8px;
    margin-top: 1em;
    box-shadow: 0 5px 15px rgba(0,0,0,.1);
    position: relative
}

.service-badge {
    display: inline-block;
    background-color: rgba(0,123,255,.1);
    color: #007bff;
    font-size: .8em;
    padding: .3em 1em;
    border-radius: 30px;
    margin-bottom: 1em;
    font-weight: 600
}

.testimonial {
    background-color: rgba(0,123,255,.05);
    border-left: 3px solid #007bff;
    padding: 1em 1.5em;
    margin-top: 1em;
    font-style: italic;
    border-radius: 0 8px 8px 0
}

.service-box:hover .icon.major {
    transform: scale(1.1);
    background-color: #007bff;
    color: #fff;
    box-shadow: 0 5px 15px rgba(0,123,255,.3)
}

.service-box:nth-child(1) .service-badge {
    background-color: rgba(0,123,255,.1);
    color: #007bff
}

.service-box:nth-child(2) .service-badge {
    background-color: rgba(41,182,246,.1);
    color: #29b6f6
}

.service-box:nth-child(3) .service-badge {
    background-color: rgba(76,175,80,.1);
    color: #4caf50
}

.service-box:nth-child(4) .service-badge {
    background-color: rgba(156,39,176,.1);
    color: #9c27b0
}

.service-box:nth-child(5) .service-badge {
    background-color: rgba(255,152,0,.1);
    color: #ff9800
}

.service-box:nth-child(6) .service-badge {
    background-color: rgba(233,30,99,.1);
    color: #e91e63
}

.service-box .icon.major {
    background-color: #f5f5f5;
    color: #888;
    border-radius: 50%;
    transition: all .3s ease
}

.service-box .icon.style1 {
    background-color: #2962ff
}

.service-box .icon.style2,.service-box:hover .icon.style2 {
    background-color: #2980b9
}

.service-box .icon.style3,.service-box:hover .icon.style3 {
    background-color: #1abc9c
}

.service-box .icon.style4,.service-box:hover .icon.style4 {
    background-color: #26a69a
}

.service-box .icon.style5,.service-box:hover .icon.style5 {
    background-color: #ff6d00
}

.service-box .icon.style6,.service-box:hover .icon.style6 {
    background-color: #d81b60
}

.service-box:hover .icon.style1 {
    background-color: #2962ff
}

.service-box .icon.major:before {
    color: #fff;
    transition: color .3s ease
}

.service-box .icon.style4:before,.service-box:hover .icon.style4:before {
    font-size: 1.8em;
    transform: scale(1.8)
}

.service-box .icon.style5:before,.service-box:hover .icon.style5:before {
    font-size: 1.9em;
    transform: scale(1.9)
}

@media screen and (max-width:880px) {
    .workflow-step {
        flex-direction: column
    }

    #textContentContainer2 {
        order: -1
    }

    #designVideoContainer2 {
        order: 2
    }

    .workflow-step .col-6.col-12-medium {
        width: 100%;
        margin-bottom: 2em
    }

    .workflow-media,.workflow-text {
        padding: 0
    }

    .design-video-container {
        width: 85%;
        padding-bottom: 150%
    }

    .design-video-container video {
        width: 200%;
        left: -50%
    }

    .scanner-image-container {
        width: 90%;
        margin: 0 auto 2em
    }
}

@media screen and (max-width:980px) {
    .workflow-step {
        display: flex;
        flex-direction: column
    }

    .workflow-step .workflow-text {
        order: 1
    }

    .workflow-step .workflow-media {
        order: 2
    }

    .workflow-step .col-6.col-12-medium {
        width: 100%;
        margin-bottom: 2em
    }

    .workflow-media,.workflow-text {
        padding: 0
    }
}

@media screen and (max-width:880px) {
    .workflow-step {
        display: flex;
        flex-direction: column
    }

    .workflow-step .workflow-text {
        order: 1
    }

    .workflow-step .workflow-media {
        order: 2
    }

    .workflow-step .col-6.col-12-medium {
        width: 100%;
        margin-bottom: 2em
    }

    .workflow-media,.workflow-text {
        padding: 0
    }
}

.scanner-image-container img {
    max-width: 100%;
    height: auto;
    object-fit: contain
}

@media screen and (max-width:736px) {
    .workflow-step .col-6.col-12-medium:first-child,.workflow-step .col-6.col-12-medium:last-child {
        order: initial
    }
}

@media screen and (max-width:880px) {
    .workflow-step {
        display: flex;
        flex-direction: column
    }

    .workflow-step .workflow-text {
        order: 1
    }

    .workflow-step .workflow-media {
        order: 2
    }

    .workflow-step .col-6.col-12-medium {
        width: 100%;
        margin-bottom: 2em
    }

    .workflow-media,.workflow-text {
        padding: 0
    }
}

.scanner-image-container {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    overflow: hidden
}

@media screen and (max-width:736px) {
    .workflow-step .col-6.col-12-medium:first-child,.workflow-step .col-6.col-12-medium:last-child {
        order: initial
    }
}

input[type=submit].primary {
    background-color: #4985d4;
    color: #fff!important;
    font-weight: 700;
    box-shadow: 0 3px 10px rgba(73,133,212,.3)
}

img-comparison-slider {
    max-width: 600px;
    box-shadow: 0 8px 20px rgba(0,0,0,.15);
    --default-handle-opacity: 1;
    --default-handle-color: white;
    --default-split-position: 50%;
    overflow: hidden!important
}

img-comparison-slider::part(first),img-comparison-slider::part(second) {
    overflow: hidden;
    object-fit: cover;
    object-position: center center!important;
    position: absolute!important;
    top: 0!important;
    left: 0!important;
    width: 100%!important
}

img-comparison-slider::part(divider) {
    left: 50%!important
}

img-comparison-slider:focus {
    outline: 0;
    border: 0
}

img-comparison-slider video {
    pointer-events: none!important;
    border-radius: 10px;
    transform: scale(1.01)!important;
    background-color: #000
}

img-comparison-slider [slot=first],img-comparison-slider [slot=second] {
    display: block
}

.comparison-labels {
    max-width: 600px
}

.comparison-label {
    box-shadow: 0 2px 5px rgba(0,0,0,.1)
}

.comparison-label.before {
    background: #4985d4
}

.comparison-instructions {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0,0,0,.6);
    color: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    border-radius: 10px;
    opacity: 1;
    transition: opacity .5s;
    z-index: 10;
    pointer-events: none
}

.comparison-instructions.hidden {
    opacity: 0
}

.comparison-instructions p {
    margin: 0;
    padding: 15px;
    font-size: 1.1em;
    font-weight: 700
}

.slide-indicator {
    animation: slideRL 2s infinite;
    margin-top: 10px;
    display: inline-block
}

@media screen and (max-width:736px) {
    img-comparison-slider {
        height: 300px;
        width: 100%
    }

    .comparison-container {
        padding: .5em
    }

    .comparison-labels {
        width: 100%
    }
}

.comparison-header {
    text-align: center;
    margin-bottom: 10px;
    width: 100%
}

.comparison-header h4 {
    margin: 0;
    font-size: 1.2em;
    color: #4985d4
}

.comparison-container {
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    position: relative;
    margin-bottom: 1em
}

.comparison-container.visible img-comparison-slider::part(handle),img-comparison-slider::part(handle) {
    animation: pulse 2s infinite
}

img-comparison-slider:hover::part(handle) {
    animation: none
}

.video-element,.video-fix {
    width: 100%!important;
    height: 100%!important
}

.video-fix {
    position: relative;
    overflow: hidden!important
}

.video-element {
    position: absolute!important;
    top: 0!important;
    left: 0!important;
    object-fit: cover!important;
    object-position: center center!important
}

img-comparison-slider::part(first),img-comparison-slider::part(second) {
    height: 100%!important
}

img-comparison-slider {
    transform: scale(1.01);
    display: block;
    margin: 0 auto;
    --divider-color: #4985d4
}

.comparison-label.after {
    background: #4fa1d8
}

@media screen and (max-width:736px) {
    img-comparison-slider,img-comparison-slider video {
        height: 300px
    }
}

img-comparison-slider {
    width: 100%;
    height: 350px;
    border-radius: 8px;
    --default-handle-color: #4985d4;
    --divider-width: 2px;
    --divider-color: white
}

img-comparison-slider video {
    display: block!important;
    max-width: none!important;
    max-height: none!important
}

.comparison-container {
    padding: 15px;
    background: rgba(0,0,0,.05);
    border-radius: 10px;
    text-align: center
}

.comparison-labels {
    display: flex;
    justify-content: space-between;
    width: 100%;
    margin-top: 10px
}

.comparison-label {
    background: #4985d4;
    color: #fff;
    padding: 5px 15px;
    border-radius: 20px;
    font-weight: 700;
    font-size: .85em
}

img-comparison-slider [slot=first],img-comparison-slider [slot=second],img-comparison-slider video {
    min-height: 350px!important;
    min-width: 100%!important;
    width: 100%!important;
    height: 100%!important;
    object-fit: cover!important;
    object-position: center!important;
    margin: 0!important;
    padding: 0!important;
    position: absolute!important;
    top: 0!important;
    left: 0!important
}

#language-selector {
    position: fixed;
    top: 20px;
    right: 20px;
    z-index: 9999999;
    font-family: "Segoe UI",Tahoma,Geneva,Verdana,sans-serif;
    transition: opacity .3s ease,transform .3s ease;
    pointer-events: auto!important
}

#language-selector.scrolled {
    opacity: .5;
    transform: scale(.9)
}

#language-selector.hidden {
    opacity: 0;
    transform: scale(.8) translateY(-10px)
}

#language-selector:hover {
    opacity: 1;
    transform: scale(1)
}

.lang-current {
    display: flex;
    align-items: center;
    background: rgba(255,255,255,.9);
    border: 0;
    border-radius: 25px;
    padding: 8px 15px;
    cursor: pointer;
    box-shadow: 0 2px 5px rgba(0,0,0,.1);
    transition: all .2s ease
}

.lang-current:hover,.lang-dropdown {
    background: #fff;
    box-shadow: 0 3px 8px rgba(0,0,0,.15)
}

.lang-current img,.lang-option img {
    width: 20px;
    height: 20px;
    margin-right: 8px;
    border-radius: 50%
}

.lang-dropdown {
    position: absolute;
    top: calc(100% + 5px);
    right: 0;
    border-radius: 20px;
    box-shadow: 0 4px 12px rgba(0,0,0,.15);
    width: 160px;
    max-height: 0;
    overflow: hidden;
    opacity: 0;
    transition: all .3s ease;
    transform-origin: top right;
    transform: translateY(-10px) scale(.9);
    visibility: hidden
}

#language-selector.active .lang-dropdown {
    max-height: 300px;
    opacity: 1;
    transform: translateY(0) scale(1);
    visibility: visible
}

.lang-option {
    display: flex;
    align-items: center;
    padding: 10px 15px;
    color: #333;
    text-decoration: none;
    transition: background .2s
}

.lang-option:hover {
    background: #f5f5f5
}

.lang-option.active {
    background: #f0f0f0;
    font-weight: 700
}

.lang-option img {
    margin-right: 10px
}

@media screen and (max-width:768px) {
    #language-selector {
        top: 15px;
        right: 15px
    }

    .lang-current {
        padding: 6px 10px;
        border-radius: 20px
    }

    .lang-current span {
        display: none
    }

    .lang-current img {
        margin-right: 0
    }
}

:root {
    --card-width: 80%;
    --carousel-spacing: 60px
}

.mobile-only {
    padding: 20px 0;
    box-sizing: border-box;
    overflow: visible
}

.services-swiper-1,.services-swiper-2 {
    width: 100%;
    margin: 0 auto;
    overflow: visible
}

.services-swiper-1 {
    margin-bottom: var(--carousel-spacing)
}

.services-swiper-2 {
    margin-top: var(--carousel-spacing)
}

.services-swiper-1 .swiper-slide,.services-swiper-2 .swiper-slide {
    width: var(--card-width)!important;
    display: flex;
    justify-content: center;
    align-items: center;
    box-sizing: border-box
}

.services-swiper-1 .service-box,.services-swiper-2 .service-box {
    width: 100%;
    height: 100%;
    padding: 2em;
    margin: 0 auto;
    background: #fff;
    border-radius: 8px;
    box-shadow: 0 5px 15px rgba(0,0,0,.1);
    text-align: center;
    overflow: visible
}

.services-swiper-1 .swiper-pagination,.services-swiper-2 .swiper-pagination {
    bottom: -10px
}

@media screen and (min-width:737px) {
    .mobile-only {
        display: none
    }

    .desktop-only {
        display: flex
    }
}

@media screen and (max-width:736px) {
    .mobile-only {
        display: block
    }

    .desktop-only {
        display: none
    }

    .services-swiper-1 .swiper-button-next,.services-swiper-1 .swiper-button-prev,.services-swiper-2 .swiper-button-next,.services-swiper-2 .swiper-button-prev {
        display: none!important
    }

    .services-swiper-1 .swiper-wrapper,.services-swiper-2 .swiper-wrapper {
        justify-content: center;
        display: flex;
        margin-left: 0!important
    }

    .services-swiper-1 .swiper-slide,.services-swiper-2 .swiper-slide {
        width: 80vw!important;
        max-width: 80vw;
        min-width: 80vw;
        margin: 0 auto;
        display: flex;
        justify-content: center;
        align-items: center;
        box-sizing: border-box;
        scroll-snap-align: center
    }

    .services-swiper-1 .service-box,.services-swiper-2 .service-box {
        width: 100%;
        margin: 0 auto
    }

    .services-swiper-1,.services-swiper-2 {
        padding-left: 10vw;
        padding-right: 10vw;
        box-sizing: border-box
    }
}

/* Styles de base pour les carrousels mobiles */
.mobile-only {
    display: none; /* Par défaut caché sur desktop */
    width: 100%;
    padding: 0;
    margin: 2em 0;
}

/* Conteneur principal des carrousels */
.services-swiper-1,
.services-swiper-2 {
    width: 100%;
    position: relative;
    overflow: hidden;
    padding: 1em 0;
    margin-bottom: 3em; /* Espacement entre les carrousels */
}

/* Style des slides */
.services-swiper-1 .swiper-slide,
.services-swiper-2 .swiper-slide {
    width: 80% !important; /* Largeur fixe de 80% */
    display: flex;
    justify-content: center;
    align-items: center;
    transition: transform 0.3s ease;
}

/* Style des cartes de service */
.services-swiper-1 .service-box,
.services-swiper-2 .service-box {
    width: 100%;
    background: #ffffff;
    border-radius: 12px;
    padding: 2em;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
    text-align: center;
    transition: transform 0.3s ease;
}

/* Style de la pagination */
.services-swiper-1 .swiper-pagination,
.services-swiper-2 .swiper-pagination {
    position: relative;
    bottom: -10px;
    width: 100%;
    display: flex;
    justify-content: center;
    gap: 8px;
    margin-top: 1.5em;
}

.swiper-pagination-bullet {
    width: 8px;
    height: 8px;
    background: rgba(0, 0, 0, 0.2);
    border-radius: 50%;
    transition: all 0.3s ease;
    cursor: pointer;
}

.swiper-pagination-bullet-active {
    background: #007bff;
    transform: scale(1.2);
}

/* Media queries pour le responsive */
@media screen and (max-width: 736px) {
    .mobile-only {
        display: block; /* Afficher sur mobile */
    }
    
    .desktop-only {
        display: none; /* Cacher sur mobile */
    }

    /* Ajustements pour mobile */
    .services-swiper-1,
    .services-swiper-2 {
        padding: 0 10vw; /* Padding pour centrer les slides */
        box-sizing: border-box;
        margin-bottom: 2em;
    }

    .services-swiper-1 .swiper-slide,
    .services-swiper-2 .swiper-slide {
        width: 80vw !important;
        margin: 0 auto;
    }

    /* Masquer les flèches de navigation sur mobile */
    .services-swiper-1 .swiper-button-next,
    .services-swiper-1 .swiper-button-prev,
    .services-swiper-2 .swiper-button-next,
    .services-swiper-2 .swiper-button-prev {
        display: none !important;
    }

    /* Ajustements des cartes pour mobile */
    .services-swiper-1 .service-box,
    .services-swiper-2 .service-box {
        padding: 1.5em;
    }
}

/* Styles spécifiques pour les icônes et badges dans les cartes */
.service-box .icon.major {
    margin-bottom: 1.5em;
    color: #007bff;
}

.service-badge {
    display: inline-block;
    padding: 0.3em 1em;
    border-radius: 20px;
    font-size: 0.8em;
    font-weight: 600;
    margin-bottom: 1em;
    background: rgba(0, 123, 255, 0.1);
    color: #007bff;
}

/* Styles robustes pour Swiper */
@media screen and (max-width: 980px) {
    .mobile-only {
        display: block;
        width: 100%;
    }

    .desktop-only {
        display: none;
    }

    /* Conteneurs des carrousels */
    .services-swiper-1,
    .services-swiper-2 {
        width: 100%;
        margin: 0 auto 40px;
        overflow: hidden; /* Important pour la boucle */
        position: relative;
        z-index: 1;
    }

    /* Slides individuels */
    .swiper-slide {
        width: 80%; /* Largeur fixe de 80% */
        display: flex;
        justify-content: center;
        align-items: center;
        box-sizing: border-box;
        overflow: visible; /* Permet à la carte de dépasser si nécessaire */
    }

    /* Les cartes dans les slides */
    .service-box {
        width: 100%;
        background: #fff;
        border-radius: 12px;
        padding: 1.5em;
        box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
        text-align: center;
    }

    /* Styles pour les boutons de navigation */
    .swiper-button-next,
    .swiper-button-prev {
        position: absolute;
        top: 50%;
        width: 40px;
        height: 40px;
        margin-top: -20px;
        z-index: 10;
        cursor: pointer;
        background-color: rgba(255, 255, 255, 0.8);
        color: #007bff;
        border-radius: 50%;
        display: flex !important;
        align-items: center;
        justify-content: center;
        box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
        visibility: visible !important;
        opacity: 1 !important;
    }

    .swiper-button-next:after,
    .swiper-button-prev:after {
        font-size: 18px;
        font-weight: bold;
    }

    .swiper-button-next {
        right: 10px;
    }

    .swiper-button-prev {
        left: 10px;
    }

    /* Éléments dupliqués (pour la boucle) */
    .swiper-slide-duplicate {
        visibility: visible !important;
    }
}

/* CUSTOM CAROUSEL STYLES */
@media screen and (max-width: 980px) {
    .mobile-only {
        display: block;
        width: 100%;
    }

    .desktop-only {
        display: none;
    }

    /* Conteneur principal du carrousel */
    .custom-carousel {
        position: relative;
        width: 100%;
        margin-bottom: 40px;
        padding: 10px 0;
        overflow: hidden;
    }

    /* Conteneur qui limite la vue */
    .carousel-container {
        width: 100%;
        overflow: hidden;
        position: relative;
    }

    /* Track qui contient tous les slides */
    .carousel-track {
        display: flex;
        transition: transform 0.4s ease;
        width: 100%;
    }

    /* Slides individuels */
    .carousel-slide {
        min-width: 80%;
        width: 80%;
        flex: 0 0 auto;
        padding: 0 10px;
        box-sizing: border-box;
        transition: opacity 0.3s ease;
    }

    /* Carte de service */
    .service-box {
        width: 100%;
        background: #fff;
        border-radius: 12px;
        padding: 1.5em;
        box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
        text-align: center;
        height: 100%;
    }

    /* Boutons de navigation */
    .carousel-nav {
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        width: 40px;
        height: 40px;
        background-color: rgba(255, 255, 255, 0.8);
        border: none;
        border-radius: 50%;
        font-size: 18px;
        display: flex;
        align-items: center;
        justify-content: center;
        cursor: pointer;
        z-index: 10;
        color: #007bff;
        box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
        opacity: 0.8;
        transition: opacity 0.3s ease, background-color 0.3s ease;
    }

    .carousel-nav:hover {
        opacity: 1;
        background-color: #fff;
    }

    .carousel-prev {
        left: 10px;
    }

    .carousel-next {
        right: 10px;
    }

    /* Points indicateurs */
    .carousel-dots {
        display: flex;
        justify-content: center;
        margin-top: 15px;
        gap: 8px;
    }

    .carousel-dot {
        width: 10px;
        height: 10px;
        border-radius: 50%;
        background-color: rgba(0, 0, 0, 0.2);
        display: inline-block;
        cursor: pointer;
        transition: background-color 0.3s ease, transform 0.3s ease;
    }

    .carousel-dot.active {
        background-color: #007bff;
        transform: scale(1.2);
    }

    /* Styles spécifiques pour iPhone SE et petits écrans */
    @media screen and (max-width: 375px) {
        .carousel-slide {
            min-width: 85%;
            width: 85%;
        }

        .service-box {
            padding: 1.2em;
        }

        .carousel-nav {
            width: 35px;
            height: 35px;
            font-size: 16px;
        }
    }
}

/* Ajustement pour le carrousel */
@media screen and (max-width: 980px) {
    /* Slides individuels - important d'avoir un padding cohérent avec le JS */
    .carousel-slide {
        min-width: 80%;
        width: 80%;
        flex: 0 0 auto;
        padding: 0 10px; /* 10px de chaque côté = 20px au total, comme dans le JS */
        box-sizing: border-box;
        transition: opacity 0.3s ease;
    }

    /* Correction pour assurer un centrage parfait */
    .carousel-container {
        width: 100%;
        overflow: hidden;
        position: relative;
        margin: 0 auto;
    }

    .carousel-track {
        display: flex;
        transition: transform 0.4s ease;
        width: 100%;
        margin: 0;
        padding: 0;
    }
}