/*
Theme Name: Hopital st maixent
Theme URI: https://underscores.me/
Author: Cyberscope
Author URI: http://www.cyberscope.fr
Description: Un super thème optimisé par les meilleurs intés du monde.
Version: 4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: starter-theme
Tags:

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned with others.

Hopital st maixent is based on Underscores http://underscores.me/, (C) 2012-2015 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal http://necolas.github.com/normalize.css/
*/
main{overflow-x:clip;}
main>header{z-index:1000;}
:is(a,span).overlay{position:absolute;inset:0;z-index:2;cursor:pointer;}
iframe,img,video{position:relative;display:block;max-width:100%;object-fit:cover}
[class^=text]{width:100%;display:flex;row-gap:min(.9rem,1.5vw);flex-direction:column}[class^=text]>*{margin-block:0rem}
.text-center{text-align:center;align-items:center}.text-left{text-align:left;align-items:flex-start}.text-right{text-align:right;align-items:flex-end}section{position:relative}
[class^=text]>*{margin-block:0rem}
[class^=container]:not(:is([class*=leaflet],.container-max)){width:100%;margin-inline:auto;}
.container{max-width:min(975px,90vw)}
.container-xl{max-width:min(1170px,90vw)}
.container-xxl{max-width:min(1410px,90vw)}
.container-xxxl{max-width:min(1700px,90vw)}
.container-max{max-width:1920px;margin-inline:auto}
[style*="--w"]{width: var(--w);}
.flex,[class^=flex],[class^=row]{display:flex;flex-wrap:wrap}
.y{flex-direction:column;row-gap:min(3.5rem,8vw);flex-wrap:nowrap;}
[class*="-xcenter"]{justify-content:center}[class*="-ycenter"]{align-items:center}[class*="-xbetween"]{justify-content:space-between;}
[class*="-flexdirrow-rev"]{flex-direction: row-reverse;}
section :is([class^="row"],[class^="flex"])>:is(.left,.right){flex:1 1 350px;}
figure{margin:0;height:100%;overflow:hidden}figure>img{position:relative;height:100%;width:100%;transition:.2s;max-width:inherit}figure>img[src=""]{background-color:var(--cLEbonyTranslucent)}
.cliping{top:0;left:50%;bottom:0;transform:translateX(-50%);width:100vw;clip-path:polygon(0 0,100% 0,100% 100%,0% 100%)}
section:has( .cliping){color:var(--cLWhite);}
.py-1{padding-block:min(2rem,5vw);}.py-2{padding-block:min(2rem,5vw)}.py-3{padding-block:min(2rem,13vw)}.py-4{padding-block:min(2rem,13vw)}.py-5{padding-block:min(5rem,13vw)}.py-6{padding-block:min(6rem,13vw)}.py-7{padding-block:min(7rem,13vw)}.py-8{padding-block:min(8rem,13vw)}.py-9{padding-block:min(9rem,13vw)}.py-10{padding-block:min(10rem,13vw)}.py-11{padding-block:min(11rem,13vw)}.py-12{padding-block:min(12rem,13vw)}.py-13{padding-block:min(13rem,13vw)}.py-14{padding-block:min(14rem,13vw)}.py-15{padding-block:min(15rem,13vw)}
ul.rs{
    position:relative;
    display:flex;
    column-gap:1rem;
    & [style^="--icn"] {
        border-radius: 2rem;
        transition: all .3s;
        color: var(--cLSteelBlue);
        background-color: var(--cLLightSkyBlue);
        &::before {
            scale: .4;
        }
        &:hover {
            color: var(--cLSteelBlue);
            background-color: var(--cLPeach);
        }
    }
}
section:not(:is([class*=bg-],.sc1,.sc4,.sc6,.sc-bandeau))+section:not(:is([class*=bg-],.sc1,.sc6))>[class*=py-]:not(*~*) { padding-top: 0; }
.pagination{position:relative;display:flex;column-gap:1rem;align-items:center;justify-content:center}
.pagination .prev{order:1}
.pagination .slick-dots{order:2}
.pagination .next{order:3}
/* other code */
.pagination .slick-dots button{padding:0;height:4px;outline:0;font-size:0;display:block;cursor:pointer;transition:.3s;width:min(29px,6vw);background:0 0;border:1px solid var(--cLLightSkyBlue)}
.pagination .slick-dots li.slick-active button {background-color: var(--cLDeepTeal);border-color:var(--cLDeepTeal);}
html.lenis,html.lenis body{height:auto}.lenis.lenis-smooth [data-lenis-prevent]{overscroll-behavior:contain}.lenis.lenis-stopped{overflow:clip}.lenis.lenis-smooth iframe{pointer-events:none}
a.logo {position:relative;z-index:1;display:block;width:min(194px,39vw)}
a.logo img {display:block;width:100%;object-fit:contain}
.ct-slide article.slick-slide {margin-inline: 0 min(2rem,5vw);}
.slick-dots {bottom: 0 !important;display: flex !important}
.slick-dots li {
    margin: 0 !important;
    width: auto !important;
    height: auto !important;
}
.slick-dots li button:before {content: none !important;}
/* header */
body:has(header.nav-is-open) {
    position: fixed;
    inset: 0;
    height: 100vh;
    overflow: hidden;
}
header {
    position: sticky;
    left: 0;
    top: -3.5rem;
    z-index: 1999;
    overflow-x: clip;
    transition: all .2s;
    background-color: var(--cLWhite);
}
header.sticky {
    background-color: var(--cLWhite);
    filter: drop-shadow(6px 6px 14px var(--cLBlackTranslucent2));
}
header .top {
    position: relative;
    z-index: 1;
    padding-block: .7rem;
    background: linear-gradient(90deg, rgba(255,255,255,1) 0%, rgba(237,243,250,1) 8%, rgba(237,243,250,1) 100%);
}
header .top .ct-search {
    position: relative;
    display: flex;
}
header .head {
    position: relative;
    background-color: var(--cLWhite);
}
header .head [class^="row-"] {
    flex-wrap: nowrap;
    justify-content: space-between;
}
header .head .left {
    position: relative;
    display: flex;
    flex: 1 1 auto;
    align-items: center;
    transition: all .2s;
    column-gap: min(2rem,3vw);
    margin-top: calc(min(2rem,5vw) * -1);
    @media screen and (width>=1200px) {
        & {flex: 0 0 auto;}
    }
}
header.sticky .head .left {margin-top: -.5rem;}
header .head .left .logo {margin-top:calc(min(1.02rem,3vw) * -1);}
header .other-logo {
    position: relative;
    scale: 1.6;
    z-index: 2;
    display: block;
    margin-right: auto;
    flex: 0 0 auto;
    width: min(50px,9vw);
    transform-origin: left 40%;
    & img {
        width: 100%;
        height: 100%;
        display: block;
        object-fit: contain;
    }
}
/* header .head .left .logo + img {
    display: block;
    object-fit: contain;
    width: min(158px,35vw);
} */
header .ct-nav {
    position: fixed;
    top: 0;
    right: 0;
    z-index: 2;
    height: 100vh;
    visibility: hidden;
    pointer-events: none;
    width: min(500px,100vw);
}
header.nav-is-open .ct-nav {
    visibility: visible;
    pointer-events: visible;
}
header .ct-nav nav {
    position: relative;
    left: 100%;
    width: 100%;
    height: 100%;
    transition: .2s;
    text-align: left;
    box-sizing: border-box;
    font-size: min(20px,5vw);
    padding: 8rem 1.5rem 2rem;
    background-color: var(--cLWhite);
}
header.nav-is-open .ct-nav nav {transform: translateX(-100%);}
header .ct-nav nav .primary {
    position: relative;
    height: 100%;
    display: flex;
    row-gap: 1.5rem;
    overflow-y: scroll;
    overflow-x: hidden;
    flex-direction: column;
}
header .primary li ul {
    position: relative;
    height: 0;
    opacity: 0;
    display: flex;
    row-gap: 1rem;
    transition: all .3s;
    pointer-events: none;
    width: min(300px,70vw);
    flex-direction: column;
}
header .primary li {
    position: relative;
    transition: all .3s;
}
header .primary a:hover {color: inherit;}
header .primary li::after {
    position: absolute;
    width: 0;
    top: 115%;
    height: 4px;
    content: '';
    display: block;
    transition: all .3s;
    border-radius: .3rem;
    background-color: var(--cLLightSkyBlue);
}
header .primary li:is(.current-menu-parent,.current-menu-item)::after {width: 100%;}
header .primary > li > :is(a,span:not([class])) {
    font-weight: 600;
    font-family: "dunbar-text";
}
header .primary li ul > li:not(:first-child) {
    opacity: 0;
    margin-top: -1rem;
    visibility: hidden;
    transition: all .3s;
}
header .primary li > .up-down {
    position: absolute;
    right: 0;
    z-index: 2;
    top: .1rem;
    width: 2rem;
    display: flex;
    height: var(--h);
    align-items: center;
    justify-content: flex-end;
    color: var(--cLLightSkyBlue);
}
header .primary li > .up-down::before {
    position: relative;
    width: 0;
    height: 0;
    content: '';
    scale: .5;
    padding: 1rem;
    display: block;
    transition: all .2s;
    pointer-events: none;
    background-color: currentcolor;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: contain;
    mask-size: contain;
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-image: url(assets/images/arrow-down.svg);
    mask-image: url(assets/images/arrow-down.svg);
}
header .open-nav {
    position: relative;
    z-index: 2;
    height: 28px;
    display: flex;
    row-gap: 8px;
    cursor: pointer;
    width: max-content;
    transition: .2s;
    align-items: center;
    color: currentColor;
    flex-direction: column;
    justify-content: center;
}
header .open-nav > span {
    width: 1.8rem;
    height: 0.15rem;
    line-height: 0;
    transition: all .3s;
    border-radius: 1rem;
    pointer-events: none;
    background: currentColor;
    transform-origin: 55% center;
}
header.nav-is-open .open-nav {
    row-gap: 0;
    transform: rotate(45deg);
}
header.nav-is-open .open-nav>span:first-child {transform: translate(-.1rem,.2rem) rotate(90deg);}
header.nav-is-open .open-nav > span:nth-child(2) {display: none;}
.link-map:hover {fill:var(--cLJetBlack)}
/* footer */
footer .top [class^="row"] {
    position: relative;
    margin-inline: auto;
    color: var(--cLWhite);
    gap: 2rem min(3rem,5vw);
    font-size: min(14px,4vw);
    border-radius: min(2rem,3vw);
    background-color: var(--cLDeepTeal);
    padding: min(3rem,5vw) min(7rem,5vw);
    max-width: min(1600px,calc(100vw - 1rem));
}
footer .top [class^="row"] .left {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    flex: 1 1 672px;
    align-items: center;
    gap: 2rem min(2rem,3vw);
}
footer .top .left .text {width: min(236px,100%);}
footer .top :is(h1,h2,h3,h4,h5,h6,[class*="ttl-"]) {color:currentColor;}
footer .top .left .logo {
    flex: 0 0 auto;
    filter: brightness(0) invert(1);
}
footer .top .right {
    display: flex;
    flex-wrap: wrap;
    gap: min(1rem,5vw) 5%;
}
footer .top .left .other-logo {
    display: block;
    width: min(160px,40vw);
    & img {
        width: 100%;
        height: 100%;
        object-fit: contain;
    }
}
footer .top [class^="row"] .right {
    position: relative;
    flex: 1 1 35%;
    & > * {
        flex: 1 1 max(200px,40%);
    }
}
footer .top .nav {
    position: relative;
    gap: .5rem 5%;
    display: flex;
    flex-wrap: wrap;
    max-width: 334px;
    text-transform: uppercase;
}
footer .top .nav > li {flex: 1 1 47.5%;}
footer .foot {padding-block:1.3rem;}
footer .foot .nav {
    position: relative;
    line-height: 1;
    flex-wrap: wrap;
    gap: .5rem 1rem;
    align-items: center;
    display: inline-flex;
    justify-content: center;
    color: var(--cLJetBlack);
    font-size: min(12px,2.5vw);
}
footer .foot .nav > li {flex: 1 1 45%;}
footer .foot .nav > li:nth-child(2n) {
    position: relative;
    padding-left: 1rem;
    border-left: 1px solid currentColor;
}
@media (max-width:1199px) {
    .desk {display: none !important}
    header .primary li[style*="--h:"]::after {top:calc(var(--h) + .7rem);}
    header .primary li ul {
        width: 100%;
        font-size: min(16px,4vw);
    }
    header .primary li:has(>label>input:checked) > ul {
        opacity: 1;
        height: auto;
        margin-top: 1rem;
        visibility: visible;
        pointer-events: inherit;
    }
    header .primary li:has(>label>input:checked) > .up-down::before {rotate: -180deg;}
    header .primary li:has(>label>input:checked) > ul > li:not(:first-child) {
        opacity: 1;
        margin-top: 0;
        visibility: visible;
    }
}
@media (min-width:600px) {
}
@media (min-width:768px) {
    footer .foot .nav > li {flex:inherit;}
    footer .foot .nav > li:not(:first-child) {
        position: relative;
        padding-left: 1rem;
        border-left: 1px solid currentColor;
    }
}
@media (min-width:1024px) {  
    header .top {background: linear-gradient(90deg, rgba(255,255,255,1) 0%, rgba(255,255,255,1) calc(50% - min(700px,100vw)), rgba(237,243,250,1) 100%);}
}
@media (min-width:1200px) {
    .mob {display: none !important}
    a.logo {width: min(194px,13vw);}
    /* header .head .left .logo + img {width: min(158px,12vw);} */
    header {top: 0;}
    header.sticky .head .left {margin-top: calc(min(2rem,5vw) * -1);}
    header .ct-nav {
        position: relative;
        width: 100%;
        height: auto;
        visibility: visible;
        pointer-events: inherit;
    }
    header .ct-nav nav {
        left: 0;
        padding: 0;
        width: 100%;
        height: auto;
        font-size: inherit;
        background-color: initial;
    }
    header .ct-nav nav .primary {
        max-height: initial;
        overflow: visible;
        align-items: center;
        flex-direction: initial;
        column-gap: min(2.5rem,2vw);
        justify-content: space-between;
    }
    header .primary li:hover::after {width: 100%;}
    header .primary li ul {
        position: absolute;
        z-index: 1;
        padding: 1rem;
        color: var(--cLBlack);
        width: min(300px,70vw);
        top: calc(100% + 1rem);
        background-color: var(--cLWhite);
    }
    header .primary li ul::before {
        position: absolute;
        content: '';
        inset: -1rem 0 0;
    }
    header .primary li:has(> .up-down) {
        display: flex;
        column-gap: .5rem;
        align-items: center;
    }
    header .primary li > .up-down {
        position: relative;
        margin-right: -1rem;
    }
    header .primary ul ul {
        top: -15px;
        left: 100%;
    }
    header .primary li:hover > ul {
        height: auto;
        opacity: 1;
        pointer-events: inherit;
    }
    header .primary li:hover > ul > li:not(:first-child) {
        opacity: 1;
        margin-top: 0;
        visibility: visible;
    }
}
@media (min-width:1440px) {
    a.logo {width: min(194px,39vw); }
    /* header .head .left .logo + img {width: min(158px,35vw);} */
}
@media (min-width:1660px) {
   
}
@media (min-width:1920px) {
    
}

@media (min-width:2100px) {
    
}