/* Styles exclusivement limités au template ESS. Bootstrap et IconsMind proviennent de Stack. */
.ess-page{--ess-navy:#06376a;--ess-teal:#008e9c;--ess-yellow:#ffc42a;color:#48576a;background:#fff;font-size:15px;line-height:1.45}
.ess-page *{box-sizing:border-box}.ess-page section{padding:64px 0}.ess-page p{margin:0 0 16px}.ess-page h1,.ess-page h2,.ess-page h3{color:var(--ess-navy)}
.ess-page h1,.ess-page .ess-heading,.ess-page .ess-subtitle{font-weight:700;letter-spacing:normal}
.ess-page h1{font-size:clamp(30px,3vw,43px);line-height:1.18;margin:0 0 18px}.ess-page h3{font-size:16px;font-weight:700;line-height:1.22;margin:0 0 10px}.ess-page .ess-heading{font-size:30px;line-height:1.3;margin:0 0 24px}.ess-page .ess-heading:after{content:'';display:block;width:36px;height:4px;background:var(--ess-yellow);border-radius:3px;margin-top:9px}.ess-page .ess-heading.text-center:after{margin-left:auto;margin-right:auto}
.ess-page .ess-hero{padding-top:48px;padding-bottom:48px;background:linear-gradient(110deg,#f3fbff,white 75%)}.ess-page .ess-eyebrow{text-transform:uppercase;letter-spacing:.07em;font-size:13px;font-weight:700;color:#006391;margin-bottom:12px}.ess-page .ess-subtitle{font-size:20px;line-height:1.25;margin-bottom:18px}.ess-page .ess-hero-copy{padding-bottom:25px;position:relative;z-index:2}.ess-page .ess-hero-copy>p:not([class]){font-size:14px;max-width:570px}
.ess-page .ess-btn{border:0;border-radius:17px;padding:13px 25px;margin:0;white-space:normal;max-width:100%;transition:background .2s,transform .2s}.ess-page .ess-btn .btn__text{font-size:14px;line-height:1.4;color:inherit;white-space:normal}.ess-page .ess-btn span[aria-hidden]{margin-left:12px}.ess-page .ess-btn-coral{background:#ff6147;color:white}.ess-page .ess-btn-coral:hover{background:#cf3e29}.ess-page .ess-btn-blue{background:var(--ess-navy);color:white}.ess-page .ess-btn-blue:hover{background:#005682}.ess-page .ess-btn-white{background:white;color:var(--ess-navy)}.ess-page a:focus-visible{outline:3px solid #007e9d;outline-offset:5px}.ess-page .ess-report a:focus-visible{outline-color:#ffc42a}
.ess-page .ess-hero-art{height:370px;position:relative;isolation:isolate}.ess-page .ess-landscape{height:100%;position:relative;overflow:hidden;border-radius:36% 0 45% 48%;background:linear-gradient(160deg,#bde8f9,#edfaff 50%,#60c7df)}.ess-page .ess-landscape>img{width:100%;height:100%;object-fit:cover;margin:0}.ess-page .ess-landscape:after{content:'';position:absolute;inset:35% 0 0;background:linear-gradient(transparent,rgba(0,57,87,.6))}.ess-page .ess-landscape-shape{position:absolute;inset:0;pointer-events:none}.ess-page .ess-mountain-back{background:#559d9a;clip-path:polygon(0 34%,19% 13%,34% 30%,47% 22%,72% 48%,100% 57%,100% 100%,0 100%)}.ess-page .ess-mountain-front{background:#147978;clip-path:polygon(0 48%,19% 38%,43% 60%,65% 56%,100% 76%,100% 100%,0 100%)}.ess-page .ess-sea{background:linear-gradient(125deg,#39c4d2,#0070ac);clip-path:ellipse(74% 34% at 89% 85%)}.ess-page .ess-art-caption{position:absolute;right:7%;bottom:9%;z-index:1;color:white;font-family:inherit;font-style:italic;font-size:25px;line-height:1.4;transform:rotate(-7deg);text-shadow:0 2px 8px #003b58}.ess-page .ess-petal{position:absolute;z-index:-1;left:-24px;width:120px;height:170px;border-radius:85% 10% 80% 25%;transform:rotate(18deg)}.ess-page .ess-petal-yellow{top:12px;background:#ffd56a}.ess-page .ess-petal-teal{top:112px;left:-8px;background:#39aeb5;transform:rotate(-60deg);opacity:.85}
.ess-page .ess-reperes{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;background:#edf7fb;margin:40px 0 0;padding:30px 12px;border-radius:23px}.ess-page .feature{margin-bottom:0}.ess-page .ess-repere{padding:0 22px;border-right:1px solid #d1e6ee}.ess-page .ess-repere:last-child{border:0}.ess-page .ess-repere-heading{display:flex;align-items:center;gap:14px;margin-bottom:14px}.ess-page .ess-repere h2{font-family:inherit;font-size:14px;font-weight:700;line-height:1.3;margin:0}.ess-page .ess-repere .icon{font-size:40px;color:var(--ess-teal);flex-shrink:0}.ess-page .ess-repere:last-child .icon{color:#348c39}.ess-page .ess-repere p{font-size:14px;line-height:1.4;margin:0}
.ess-page .ess-intro{font-size:17px;line-height:1.6;margin-bottom:32px}.ess-page .ess-grid-five{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.ess-page .ess-family{padding:14px 16px;background:linear-gradient(#fcfcfc,#f7f9fa);border-radius:14px;margin:0}.ess-page .ess-family p,.ess-page .ess-domain p{font-size:14px;line-height:1.4;margin:0}.ess-page .ess-icon-disc{display:flex;align-items:center;justify-content:center;width:110px;height:110px;border-radius:50%;margin:0 auto 12px;background:#fff0bf;color:#00949c}.ess-page .ess-icon-disc .icon{font-size:64px;line-height:1}.ess-page .ess-family:nth-child(even) .ess-icon-disc{background:#d4f4f4;color:#007d95}.ess-page .ess-family:nth-child(3) .ess-icon-disc{color:#efa900}.ess-page .ess-family:nth-child(5) .ess-icon-disc{color:#388e54}
.ess-page .ess-solutions{background:linear-gradient(#eef9fd,white);padding-top:64px;padding-bottom:40px}.ess-page .ess-solutions>.container>.ess-intro{font-size:15px;color:#627586}.ess-page .ess-domain{padding:0 12px 20px}.ess-page .ess-domain h3{margin-bottom:4px}.ess-page .ess-domain:nth-child(even) .ess-icon-disc{background:#baeaff}.ess-page .ess-domain:nth-child(3) .ess-icon-disc{background:#baf4e9}.ess-page .ess-domain:nth-child(5) .ess-icon-disc{background:#c4efff}.ess-page .ess-directory{display:grid;grid-template-columns:22% 1fr 25%;gap:20px;align-items:center;background:#fff8e8;border-radius:24px;padding:32px 24px;margin:44px 0 0}.ess-page .ess-directory .ess-heading{font-size:25px}.ess-page .ess-directory p{font-size:14px}.ess-page .ess-directory-art{min-height:150px;position:relative;display:flex;align-items:center;justify-content:center;background:#b9eaf5;border-radius:65% 35% 55% 25%;color:#00758d}.ess-page .ess-directory-art>.icon:first-child{font-size:115px}.ess-page .ess-directory-art>.icon:last-child{position:absolute;font-size:65px;bottom:0;right:8%;color:var(--ess-navy)}.ess-page .ess-directory-contact{border-left:1px solid #d9d3bd;padding-left:20px}.ess-page .ess-directory-contact>.icon{font-size:40px;color:#008daf}.ess-page .ess-directory-contact h3{font-size:14px;margin:8px 0 4px}.ess-page .ess-directory-contact a{color:#006a94;text-decoration:underline;font-size:13px;overflow-wrap:anywhere}
.ess-page .ess-strategy{padding-top:56px;padding-bottom:64px;scroll-margin-top:110px}.ess-page .ess-strategy-intro{font-size:14px;line-height:1.6;margin-bottom:32px}.ess-page .ess-pillar-column{display:flex}.ess-page .ess-pillar{width:100%;margin:0;background:#edf8fd;border-radius:16px;padding:20px}.ess-page .ess-pillar-2{background:#e2f7f6}.ess-page .ess-pillar-3{background:#fff6e3}.ess-page .ess-pillar-heading{display:flex;align-items:center;gap:12px;margin-bottom:12px}.ess-page .ess-pillar h3{font-size:14px;margin:0;flex:1}.ess-page .ess-number{width:40px;height:40px;border-radius:50%;display:flex;justify-content:center;align-items:center;color:white;background:#0076a2;font-size:20px;flex-shrink:0}.ess-page .ess-pillar-2 .ess-number{background:#009a9d}.ess-page .ess-pillar-3 .ess-number{background:#f5ab00}.ess-page .ess-pillar-heading>.icon{font-size:35px;color:#00a9c4}.ess-page .ess-pillar-3 .icon{color:#f3aa00}.ess-page .ess-pillar ul{list-style:disc;padding-left:24px;margin:0;font-size:13px;line-height:1.4}.ess-page .ess-pillar li{margin:0 0 5px}
.ess-page .ess-report{position:relative;background:linear-gradient(110deg,#05355e,#16798c);color:white;padding:36px 0;isolation:isolate}.ess-page .ess-report-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.22;z-index:-1;margin:0}.ess-page .ess-report-inner{display:flex;gap:20px;align-items:center}.ess-page .ess-report-inner>.icon{font-size:45px}.ess-page .ess-report h2{color:white;font-size:25px;margin-bottom:8px}.ess-page .ess-report p{font-size:14px;margin:0}.ess-page .ess-report .ess-btn{margin-left:auto;flex-shrink:0}
@media(min-width:1200px){.ess-page .container{max-width:1200px}}
@media(max-width:991px){.ess-page .ess-hero-art{height:300px;margin-bottom:20px}.ess-page .ess-reperes{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 0}.ess-page .ess-repere:nth-child(2){border:0}.ess-page .ess-grid-five{grid-template-columns:repeat(3,minmax(0,1fr))}.ess-page .ess-directory{grid-template-columns:1fr 1fr}.ess-page .ess-directory-art{display:none}.ess-page .ess-pillar-column{margin-bottom:14px}.ess-page .ess-report-inner{flex-wrap:wrap}.ess-page .ess-report .ess-btn{margin-left:65px}.ess-page .ess-petal{left:10px}}
@media(max-width:575px){.ess-page section{padding:40px 0}.ess-page .ess-hero{padding:32px 0 36px}.ess-page .ess-solutions{padding:40px 0 28px}.ess-page .ess-strategy{padding:36px 0 40px}.ess-page .ess-report{padding:28px 0}.ess-page .ess-directory{margin-top:28px}.ess-page .ess-intro,.ess-page .ess-strategy-intro{margin-bottom:24px}.ess-page .ess-heading{font-size:25px}.ess-page .ess-hero-art{height:250px}.ess-page .ess-art-caption{font-size:22px}.ess-page .ess-reperes{grid-template-columns:1fr;padding:24px}.ess-page .ess-repere{border:0;border-bottom:1px solid #d1e6ee;padding:0 0 20px}.ess-page .ess-repere:nth-child(2){border-bottom:1px solid #d1e6ee}.ess-page .ess-repere:last-child{padding-bottom:0}.ess-page .ess-grid-five{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.ess-page .ess-grid-five>article:last-child{grid-column:1/-1;max-width:260px;justify-self:center}.ess-page .ess-family{padding:14px 10px}.ess-page .ess-icon-disc{width:88px;height:88px}.ess-page .ess-icon-disc .icon{font-size:52px}.ess-page .ess-domain{padding:0 4px 15px}.ess-page .ess-directory{grid-template-columns:1fr;padding:24px}.ess-page .ess-directory-contact{border-left:0;border-top:1px solid #d9d3bd;padding:20px 0 0}.ess-page .ess-report-inner>.icon{display:none}.ess-page .ess-report .ess-btn{margin-left:0}.ess-page .ess-btn{padding:13px 18px}.ess-page .ess-intro{font-size:16px}}

/* Stack annule le padding supérieur entre sections successives (theme-tco2023.css).
   L'identifiant de la page donne priorité à ces espacements sans toucher au thème. */
#ess-page > section.ess-definition,
#ess-page > section.ess-solutions {
    padding-top: 64px;
}
#ess-page > section.ess-strategy {
    padding-top: 56px;
}
#ess-page > section.ess-report {
    padding-top: 36px;
}
@media (max-width: 575px) {
    #ess-page > section.ess-definition,
    #ess-page > section.ess-solutions {
        padding-top: 40px;
    }
    #ess-page > section.ess-strategy {
        padding-top: 36px;
    }
    #ess-page > section.ess-report {
        padding-top: 28px;
    }
}