/* DA correction: approved overview composition, real data and form integration. */
#container .content form._form[id],#container .content form._form[id] *{font-family:var(--ee-font)!important}
.top-banner{height:660px;min-height:0;padding:78px 0 0;background:#fff}
.top-banner .inner{max-width:1320px;position:relative;z-index:3;pointer-events:none}
.top-banner .inner a{pointer-events:auto}
.top-banner h1{font-size:clamp(52px,5.4vw,76px);max-width:700px;line-height:1.02;letter-spacing:-.05em}
.top-banner h2{max-width:500px;font-size:22px;margin:25px 0 28px}
.hero-monogram{width:510px;height:510px;right:max(24px,calc((100vw - 1300px)/2));top:25px;opacity:1;z-index:0;transform:none}
.hero-person{position:absolute;z-index:2;bottom:0;right:max(0px,calc((100vw - 1440px)/2));width:400px;height:460px;object-fit:contain;object-position:bottom;max-width:none}
.brand-actions{gap:14px}.brand-button{min-height:50px;font-size:16px;padding:14px 22px}
/* Two-way brand contrast: lime actions turn green, green actions turn lime. */
.top-banner .brand-button:is(:hover,:focus-visible){background:var(--ee-green);color:#fff;border-color:var(--ee-green);text-decoration:none}
.top-banner .brand-button-dark:is(:hover,:focus-visible){background:var(--ee-lime);color:var(--ee-green);border-color:var(--ee-lime)}
.top-banner .brand-button svg{transition:transform .18s ease}
.top-banner .brand-button:hover svg,.top-banner .brand-button:focus-visible svg{transform:translateX(4px)}
.top-banner .brand-button:focus-visible{outline:2px solid var(--ee-green);outline-offset:4px}
@media(prefers-reduced-motion:reduce){.top-banner .brand-button svg{transition:none}.top-banner .brand-button:hover svg,.top-banner .brand-button:focus-visible svg{transform:none}}
#concept{padding:68px 0 48px}
#concept .concept-grid{grid-template-columns:minmax(0,1.18fr) minmax(0,.82fr);gap:76px;align-items:center}
#concept .concept-copy h2{font-size:46px;margin:0 0 34px}
.concept-feature{display:grid;grid-template-columns:66px minmax(0,1fr);gap:22px;align-items:start;margin-bottom:27px}
.feature-icon{display:grid;place-items:center;width:66px;height:66px;border-radius:50%;background:var(--ee-lime)}
.feature-icon img{width:32px;height:32px}
#concept .concept-feature h3,#concept .concept-feature h3:first-of-type{font-size:25px;line-height:1.18;margin:0 0 9px;font-weight:650;letter-spacing:-.025em}
#concept .concept-feature p{font-size:17px;line-height:1.5;margin:0;max-width:470px}
#concept .concept-feature a{text-decoration-thickness:1px}
#concept .concept-media{min-height:0;padding:0;align-self:center}
#concept .conversation-photo{display:block;height:540px;min-height:0;max-height:none;object-fit:cover;object-position:center 38%;border-radius:20px}
#concept .concept-note{font-size:13px;line-height:1.5;color:#526b56;margin:30px auto 0;max-width:1320px}
#testimonies-ctn{padding:44px 0 35px}
.testimony-layout{display:grid;grid-template-columns:250px minmax(0,1fr);gap:8px 48px;align-items:start}
#testimonies-ctn h2{color:#fff;font-size:38px;margin:0;letter-spacing:-.04em}
/* Stack every quote in one grid cell: the tallest sets a responsive, stable height. */
#testimonies{display:grid}
#testimonies .item{display:block;grid-area:1/1;min-width:0;padding:0;visibility:hidden;pointer-events:none}
#testimonies .item.is-active{visibility:visible;pointer-events:auto}
#testimonies .detail-ctn{font-size:21px;line-height:1.45;padding:0;min-height:0;height:auto}
#testimonies .big-quote{margin-right:10px}
#testimonies-ctn .name{font-size:16px;margin:18px 0 0}
#testimonies-ctn .kind{font-size:14px;margin:0}
.testimony-controls{grid-column:2;display:flex;align-items:center;justify-content:flex-end;gap:12px;margin-top:5px}
.testimony-count{font-size:13px;color:#d0e0d2;letter-spacing:.05em;margin-right:10px}
.testimony-controls button{display:grid;place-items:center;width:43px;height:43px;border:0;border-radius:50%;background:var(--ee-lime);cursor:pointer;transition:background-color .18s ease}
.testimony-controls button:is(:hover,:focus-visible){background:#fff}
.testimony-controls button:focus-visible{outline:2px solid #fff;outline-offset:4px}
.testimony-controls img{width:21px;height:21px}.testimony-prev img{transform:rotate(180deg)}
#container #infolettre{padding:58px 0;background:#eaf3d9}
#container #infolettre>.inner{max-width:960px}
#container #infolettre .title{margin-bottom:14px!important}
.newsletter-lead{max-width:680px;font-size:21px;line-height:1.45;margin:0 0 26px}
#container #infolettre form._form{padding:30px 34px!important;border-radius:20px!important;box-shadow:0 8px 32px #14491e08!important}
/* These two known embed blocks repeat the heading and subscription note rendered outside the card. */
#container #infolettre ._x46962666,#container #infolettre ._x86782871{display:none!important}
#container .content form._form[id] ._form-content{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 22px!important;width:100%!important}
#container .content form._form[id] ._form_element,#container .content form._form[id] ._button-wrapper{grid-column:1/-1;width:100%!important;margin:0!important;float:none!important;min-width:0}
#container .content form._form[id] ._form_element:has(input[name="firstname"]),#container .content form._form[id] ._form_element:has(input[name="lastname"]){grid-column:auto}
#container .content form._form[id] ._form-label{display:block!important;font-weight:550!important;font-size:14px!important;line-height:1.4!important;margin:0 0 7px!important;letter-spacing:0}
#container .content form._form[id] ._form-fieldset:has(input[type="checkbox"]){display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 20px!important;margin:3px 0 0!important;padding:0!important}
#container .content form._form[id] ._form-fieldset>._row:first-child{grid-column:1/-1;margin:0!important}
#container .content form._form[id] ._form-fieldset>._error-inner,#container .content form._form[id] ._form-fieldset>._error{grid-column:1/-1}
#container .content form._form[id] ._checkbox-radio{display:flex!important;align-items:flex-start!important;gap:9px!important;margin:0!important;padding:0!important;min-width:0}
#container .content form._form[id] ._checkbox-radio input{flex:0 0 17px;width:17px!important;height:17px!important;margin:2px 0 0!important;accent-color:var(--ee-green)}
#container .content form._form[id] ._checkbox-radio span{display:block!important;min-width:0}
#container .content form._form[id] ._checkbox-radio label,#container #infolettre ._form ._checkbox-radio label{font-size:14px!important;line-height:1.45!important;margin:0!important;font-weight:400!important}
#container .content form._form[id] input:not([type=checkbox]):not([type=radio]):not([type=hidden]),#container .content form._form[id] select,#container .content form._form[id] textarea,#container #infolettre ._form input:not([type=checkbox]):not([type=hidden]){background:#fff!important;border:1px solid #ced9cf!important;border-radius:9px!important;min-height:46px!important;padding:10px 13px!important;font-size:15px!important;color:var(--ee-green)!important;box-shadow:none!important}
#container .content form._form[id] input:focus,#container .content form._form[id] select:focus,#container .content form._form[id] textarea:focus{border-color:var(--ee-green)!important;outline:2px solid #d9ef35!important;outline-offset:1px!important}
#container .content form._form[id] ._submit,#container #infolettre ._form ._submit{display:flex!important;align-items:center!important;justify-content:center!important;gap:18px!important;background:var(--ee-green)!important;color:#fff!important;width:100%!important;min-height:48px!important;border:0!important;border-radius:10px!important;padding:13px 24px!important;line-height:1.4!important}
#container .content form._form[id] ._submit:after{content:"";width:21px;height:21px;background:currentColor;mask:url("arrow.svg") center/contain no-repeat;-webkit-mask:url("arrow.svg") center/contain no-repeat}
#container .content form._form[id] ._submit:not(:disabled):not(.processing):is(:hover,:focus-visible),#container #infolettre ._form ._submit:not(:disabled):not(.processing):is(:hover,:focus-visible){background:var(--ee-lime)!important;color:var(--ee-green)!important}
#container .content form._form[id] ._clear-element{display:none!important}#container .content form._form[id] ._error{z-index:2}#container .content form._form[id] ._error-inner{font-size:13px!important}
.newsletter-note{font-size:13px;line-height:1.5;color:#526b56;margin:18px 0 0}
#container .content.tos form._form[id]{border-radius:20px!important;padding:32px!important;margin:32px auto!important}
.content.tos .brand-interior-photo{border-radius:18px;object-fit:cover;aspect-ratio:1.3;height:auto}
#nous-joindre{padding:60px 0 62px}
#nous-joindre .contact-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:70px;align-items:center;padding-right:48px;max-width:1180px}
#nous-joindre h2{font-size:44px;margin:0 0 20px}
#nous-joindre .contact-lead{font-size:20px;line-height:1.45;margin:0 0 24px;max-width:610px}
#nous-joindre .contact-person{font-size:15px;margin:0 0 18px}
.contact-details{display:grid;gap:13px;list-style:none;margin:0;padding:0}
.contact-details li{display:flex;gap:15px;align-items:center;font-size:18px;line-height:1.4;min-width:0}
.contact-details a{color:var(--ee-green);text-decoration:none;overflow-wrap:anywhere}.contact-details a:hover{text-decoration:underline}
.contact-icon{display:grid;place-items:center;width:41px;height:41px;flex:0 0 41px;border-radius:50%;background:var(--ee-green)}
.contact-icon img{width:20px;height:20px}.contact-illustration{width:300px;height:300px;justify-self:center}
/* Old yellow action variants, including server-rendered forms and cookies. */
html body #container .btn,html body #container .btn-yellow,html body #container .btn-primary,html body #container button[type="submit"],html body #container input[type="submit"],#btnAcceptCookie{background:var(--ee-green);border-color:var(--ee-green);color:#fff;border-radius:999px}
html body #container :is(.btn,.btn-yellow,.btn-primary,button[type="submit"],input[type="submit"]):not(:disabled):not(.processing):is(:hover,:focus-visible),#btnAcceptCookie:is(:hover,:focus-visible){background:var(--ee-lime);border-color:var(--ee-lime);color:var(--ee-green)}
html body #container :is(.btn,button[type="submit"],input[type="submit"]),#btnAcceptCookie{transition:background-color .18s ease,color .18s ease,border-color .18s ease}
@media(max-width:1199px){.top-banner{height:600px;padding-top:65px}.top-banner h1{font-size:62px;max-width:630px}.top-banner h2{max-width:430px;font-size:20px}.hero-monogram{width:430px;height:430px;right:-55px;top:28px}.hero-person{width:425px;height:495px;right:-35px}.top-banner .inner{padding-right:38%}#concept .concept-grid{gap:44px;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr)}#concept .conversation-photo{height:520px}.concept-feature{gap:17px;grid-template-columns:58px minmax(0,1fr)}.feature-icon{width:58px;height:58px}#concept .concept-feature h3,#concept .concept-feature h3:first-of-type{font-size:23px}.testimony-layout{grid-template-columns:220px minmax(0,1fr);gap:12px 30px}#testimonies-ctn h2{font-size:33px}}
@media(max-width:767px){.top-banner{height:auto;min-height:850px;padding:42px 0 405px}.top-banner .inner{padding:0 24px}.top-banner h1{font-size:clamp(38px,9vw,56px);max-width:100%;margin:0 0 20px}.top-banner h2{font-size:18px;max-width:100%;margin:0 0 22px}.brand-actions{gap:9px}.brand-button{font-size:14px;min-height:47px;padding:12px 16px;gap:12px}.hero-monogram{width:340px;height:340px;top:auto;bottom:70px;right:-12px;opacity:1;transform:none}.hero-person{width:335px;height:410px;bottom:0;right:0;max-width:100%}#concept{padding:44px 0 32px}#concept .concept-grid{display:flex;gap:24px}#concept .concept-copy h2{font-size:36px;margin-bottom:28px}.concept-feature{grid-template-columns:54px minmax(0,1fr);gap:16px;margin-bottom:25px}.feature-icon{width:54px;height:54px}.feature-icon img{width:28px;height:28px}#concept .concept-feature h3,#concept .concept-feature h3:first-of-type{font-size:22px;margin-bottom:7px}#concept .concept-feature p{font-size:16px;line-height:1.5}#concept .conversation-photo{height:400px;border-radius:16px;object-position:center 34%}#concept .concept-note{font-size:12px;margin-top:22px}#testimonies-ctn{padding:34px 0 28px}.testimony-layout{display:block}#testimonies-ctn h2{font-size:32px;margin-bottom:22px}#testimonies .detail-ctn{font-size:19px;line-height:1.5}.testimony-controls{margin-top:16px}#container #infolettre{padding:40px 0}#container #infolettre>.inner{padding:0 18px}.newsletter-lead{font-size:18px;margin-bottom:22px}#container #infolettre form._form,#container .content.tos form._form[id]{padding:24px 20px!important;border-radius:18px!important}#container .content form._form[id] ._form-content{gap:16px 14px!important}#container .content form._form[id] ._form_element:has(input[name="firstname"]),#container .content form._form[id] ._form_element:has(input[name="lastname"]){grid-column:1/-1}#container .content form._form[id] ._form-fieldset:has(input[type="checkbox"]){grid-template-columns:1fr;gap:9px!important}#nous-joindre{padding:42px 0}#nous-joindre .contact-layout{display:flex;flex-direction:column;gap:28px;padding:0 24px}#nous-joindre h2{font-size:36px}#nous-joindre .contact-lead{font-size:18px}.contact-details li{font-size:16px;gap:12px}.contact-illustration{width:210px;height:210px;align-self:flex-end}.contact-icon{width:38px;height:38px;flex-basis:38px}}
/* Keep the monogram legible behind the portrait at smaller breakpoints too. */
@media(min-width:768px) and (max-width:1199px){.hero-person{width:350px;height:420px;right:-15px}}
@media(max-width:767px){.hero-person{width:270px;height:330px;right:-8px}}
/* Photo first in the DOM and on mobile; photo left and copy right on desktop. */
@media(min-width:768px){
  #concept .concept-grid{grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr)}
  #concept .concept-media{grid-column:1;grid-row:1}
  #concept .concept-copy{grid-column:2;grid-row:1}
}
@media(min-width:768px) and (max-width:1199px){#concept .concept-grid{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}}

/* Shared interaction language: underlined text links and contrasting action states. */
html body{font-family:var(--ee-font);color:var(--ee-green)}
#container .content :is(p,li) a:not(.btn):not(.brand-button),#concept .concept-feature a,.contact-details a{
  color:var(--ee-green)!important;font-weight:600;text-decoration:underline!important;
  text-decoration-thickness:1.5px!important;text-underline-offset:4px;text-decoration-skip-ink:auto;
  border-radius:2px;transition:background-color .18s ease;
}
#container .content :is(p,li) a:not(.btn):not(.brand-button):hover,#concept .concept-feature a:hover,.contact-details a:hover{background-color:var(--ee-lime);color:var(--ee-green)!important}
html body #container a.btn,html body #container a.btn:visited{
  display:inline-flex;align-items:center;justify-content:center;gap:16px;position:relative;float:none;
  max-width:100%;min-height:50px;padding:14px 24px;line-height:1.4;white-space:normal;
  background:var(--ee-green)!important;border:1px solid var(--ee-green)!important;color:#fff!important;
  font-size:16px;font-weight:600;border-radius:999px;text-decoration:none!important;box-shadow:none;
}
html body #container a.btn:is(:hover,:focus-visible){background:var(--ee-lime)!important;border-color:var(--ee-lime)!important;color:var(--ee-green)!important}
html body #container a.btn::after{content:"";display:block;position:static;flex:0 0 21px;width:21px;height:21px;background:currentColor;mask:url("arrow.svg") center/contain no-repeat;-webkit-mask:url("arrow.svg") center/contain no-repeat;transition:transform .18s ease}
html body #container a.btn::before{content:none}
html body #container a.btn:hover::after,html body #container a.btn:focus-visible::after{transform:translateX(4px)}
#container .content form._form[id] ._submit::after{flex:0 0 21px;transition:transform .18s ease}
#container .content form._form[id] ._submit:not(:disabled):not(.processing):hover::after,#container .content form._form[id] ._submit:focus-visible::after{transform:translateX(4px)}
#container .content form._form[id] ._submit:focus-visible{outline:2px solid var(--ee-green)!important;outline-offset:4px}
#calendar .fc-button:not(:disabled):is(:hover,:focus-visible){background:var(--ee-lime);color:var(--ee-green);border-color:var(--ee-lime)}
#calendar .fc-button:disabled:hover{background:var(--ee-green);color:#fff;border-color:var(--ee-green)}
#calendar .fc-icon,.testimony-controls img{transition:transform .18s ease}
#calendar .fc-next-button:hover .fc-icon,.testimony-next:hover img{transform:translateX(4px)}
#calendar .fc-prev-button:hover .fc-icon{transform:translateX(-4px)}
.testimony-prev:hover img{transform:translateX(-4px) rotate(180deg)}
#calendar .fc-today-button:not(:disabled):hover{text-decoration:underline;text-underline-offset:3px}

/* Editorial rhythm overrides zero-margin and yellow rules embedded by the CMS. */
#container .content.tos :is(h2,h3,h4,h5,h6){color:var(--ee-green)!important;line-height:1.22}
#container .content.tos :is(h3,h4,h5,h6){margin:42px 0 18px;font-weight:600}
#container .content.tos h4{font-size:27px}
#container .content.tos :is(h5,h6){font-size:23px}
#container .content.tos .brand-interior-photo + h3{margin-top:0;margin-bottom:24px}
#container .content.tos :is(p,li){line-height:1.75}
#container .content.tos p{margin:0 0 24px}
#container .content.tos :is(ul,ol){padding-left:26px;margin:0 0 28px}
#container .content.tos li{padding-left:4px;margin-bottom:10px}
#container #je-cherche .blocks-ctn .block{border-radius:16px}
#container #je-cherche .blocks-ctn .block h4{margin:0 0 18px}
#container #je-cherche .blocks-ctn .block p{margin:0 auto}
.brand-editorial-action{display:block;clear:both;margin:22px 0 46px}
#container .brand-hiring .calendar-container{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin:24px 0 28px;clear:both}
#container .brand-hiring .calendar-item{box-sizing:border-box;flex:0 0 calc((100% - 36px)/4);min-width:0;min-height:164px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:18px 12px;background:#edf6ef;border:1px solid #ced9cf;border-radius:12px;color:var(--ee-green);line-height:1.5;overflow-wrap:anywhere}
#container .brand-hiring .brand-calendar-card time{display:flex;flex-direction:column;align-items:center}
.brand-calendar-readable{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.brand-calendar-day{font-size:50px;font-weight:750;line-height:1;letter-spacing:-.045em}
.brand-calendar-month{font-size:24px;line-height:1.2;letter-spacing:-.02em;margin-top:3px}
.brand-calendar-tag{display:inline-block;max-width:100%;margin-top:8px;padding:4px 13px;border-radius:999px;background:var(--ee-lime);font-size:15px;font-weight:650;line-height:1.25}
#container .content.tos.brand-hiring h2.brand-calendar-heading{font-size:clamp(30px,3.6vw,48px);font-weight:750;letter-spacing:-.045em;margin:42px 0 24px}
#container .brand-hiring .brand-calendar-note{text-align:center;font-size:18px;line-height:1.5;margin:24px 0 34px}
#container .content.tos.brand-hiring h2.brand-calendar-next{border-top:1px solid #ced9cf;padding-top:28px;margin-top:0;font-size:clamp(30px,3.6vw,48px);font-weight:750;letter-spacing:-.045em}

/* FAQ shares the editorial width, with inset question and answer padding. */
#container .brand-faq{clear:both;margin:64px auto 0;padding:36px;background:#edf6ef;border-radius:20px}
#container .content.tos .brand-faq>:is(h2,h3){margin:0 0 26px;font-size:32px}
#container .brand-faq .faq-container{width:100%;max-width:none;margin:0}
#container .brand-faq .faq-item{border:1px solid var(--ee-line)!important;border-radius:12px;margin:0 0 12px!important;overflow:hidden}
#container .brand-faq .faq-question{border:0;border-radius:11px;padding:22px 64px 22px 24px!important;line-height:1.5;background:#fff!important;transition:background-color .18s ease}
#container .brand-faq .faq-question[aria-expanded="true"]{border-radius:11px 11px 0 0}
#container .brand-faq .faq-question:hover,#container .brand-faq .faq-question[aria-expanded="true"]{background:#f5f9ed!important}
#container .brand-faq .faq-question:focus:not(:focus-visible){outline:none}
#container .brand-faq .faq-question:focus-visible{outline:2px solid var(--ee-green);outline-offset:-4px}
#container .brand-faq .faq-question .arrow{right:23px;top:24px}
#container .brand-faq .faq-answer{border:0;border-top:1px solid var(--ee-line);border-radius:0 0 11px 11px;padding:22px 24px 26px!important;background:#fff!important;font-size:17px;line-height:1.75}
#container .brand-faq .faq-answer p:last-child{margin-bottom:0}
#container .brand-faq .faq-question{display:flex;align-items:center;justify-content:space-between;width:100%;text-align:left;cursor:pointer;font-family:var(--ee-font)}
#container .brand-faq .faq-question .arrow{transition:transform .18s ease}
#container .brand-faq .faq-question .arrow.down{transform:rotate(90deg)}
#container .brand-faq [data-ee-accordion] .faq-answer[hidden]{display:none}
#container .brand-faq [data-ee-accordion] .faq-answer:not([hidden]){display:block}
#container .content.tos h1{font-size:clamp(30px,3vw,42px);margin:0 0 26px;line-height:1.16}
#container .content.tos h2:not(.title){font-size:27px;margin:42px 0 18px}
#container .content.tos .brand-form-heading{text-align:center;clear:both;margin-top:56px}
#container .content.tos .brand-faq>h2{font-size:32px;margin:0 0 26px}
#container .brand-event h1.date{font-size:clamp(30px,3vw,42px);line-height:1.2;margin:40px 0 32px;color:var(--ee-green)}
#container .brand-event h2.sub-title{font-size:30px;line-height:1.2;margin:38px 0 20px;color:var(--ee-green)}
#container .brand-event .brand-editorial :is(h3,h4){font-size:25px;line-height:1.25;margin:28px 0 16px;color:var(--ee-green)}
#container .brand-event .brand-editorial p{line-height:1.75;margin:0 0 24px}
#container .brand-event .event-location{margin:0 0 30px;line-height:1.6}
@media(max-width:767px){#container .brand-event h2.sub-title,#container .content.tos h2:not(.title){font-size:25px}#container .brand-event .brand-editorial :is(h3,h4){font-size:23px}}
@media(max-width:767px){
  #container .content.tos :is(h3,h4,h5,h6){margin-top:34px;margin-bottom:16px}
  #container .content.tos h4{font-size:24px}
  #container .content.tos :is(p,li){font-size:17px}
  #container .brand-hiring .calendar-container{gap:10px}
  #container .brand-hiring .calendar-item{flex-basis:calc((100% - 10px)/2);min-height:132px;padding:12px 8px}
  .brand-calendar-day{font-size:40px}
  .brand-calendar-month{font-size:18px}
  .brand-calendar-tag{font-size:12px;padding:3px 8px;margin-top:6px}
  #container .brand-hiring .brand-calendar-note{font-size:16px}
  #container .brand-faq{padding:24px 16px;margin-top:44px;border-radius:16px}
  #container .brand-faq>h3{margin-top:0}
  #container .brand-faq .faq-question{padding:18px 46px 18px 18px!important;font-size:17px}
  #container .brand-faq .faq-question .arrow{right:14px;top:22px;width:20px;height:20px}
  #container .brand-faq .faq-answer{padding:18px!important;font-size:16px}
}
/* Extended portrait: keep the complete arm inside the canvas and reveal the mark. */
.top-banner .hero-person--extended{width:480px;height:auto;aspect-ratio:1355/1161;right:max(16px,calc((100vw - 1440px)/2));max-width:none}
.top-banner:has(.hero-person--extended) .hero-monogram{right:max(64px,calc((100vw - 1220px)/2))}
@media(min-width:768px) and (max-width:1199px){
  .top-banner .hero-person--extended{width:min(390px,43vw);right:16px}
  .top-banner:has(.hero-person--extended) .hero-monogram{right:0}
}
@media(max-width:767px){
  .top-banner .hero-person--extended{width:min(330px,calc(100% - 32px));right:16px}
  .top-banner:has(.hero-person--extended) .hero-monogram{width:320px;height:320px;right:18px}
}
/* Keep the candidate photo attached to the cards, independently of title height. */
#je-cherche .brand-jobsearch-intro{display:grid;grid-template-columns:minmax(0,1fr) 36%;gap:55px;align-items:start;margin:30px 0 45px}
#je-cherche .brand-jobsearch-intro .blocks-ctn{margin:0;gap:20px;align-items:stretch}
#je-cherche .brand-jobsearch-intro .block{flex:1 1 0;min-width:0;width:auto;margin-bottom:0}
#container .brand-jobsearch-intro .brand-interior-photo{float:none;width:100%;margin:0;display:block}
@media(max-width:767px){
  #je-cherche .brand-jobsearch-intro{grid-template-columns:minmax(0,1fr);gap:28px}
  #container .brand-jobsearch-intro .brand-interior-photo{height:250px;object-fit:cover}
}
@media(max-width:575px){
  #je-cherche .brand-jobsearch-intro .block{flex-basis:100%}
}
@media(prefers-reduced-motion:reduce){
  html body #container a.btn::after,#container .content form._form[id] ._submit::after,#calendar .fc-icon,.testimony-controls img{transition:none}
  html body #container a.btn:hover::after,html body #container a.btn:focus-visible::after,#container .content form._form[id] ._submit:hover::after,#container .content form._form[id] ._submit:focus-visible::after,#calendar .fc-button:hover .fc-icon,.testimony-next:hover img{transform:none}
  .testimony-prev:hover img{transform:rotate(180deg)}
}

/* September review: clearer navigation and supporting copy. */
#main-menu .img-ctn{width:200px;max-width:200px;flex:0 0 200px}
#main-menu ul{gap:12px}
#main-menu ul li .nav{font-size:14px}
#main-menu ul #magic-line{top:auto;bottom:26px}
.brand-jobsearch #je-cherche .blocks-ctn .block-1{background-image:url("coup-de-foudre-green.svg")!important}
.brand-jobsearch #je-cherche .blocks-ctn .block-2{background-image:url("temps-green.svg")!important}
#main-menu li:has(>.phantom){display:none}
#concept .concept-copy>.concept-note{font-size:14px;line-height:1.5;margin:22px 0 0 88px;max-width:470px}
#container #infolettre .newsletter-note{font-size:14px;line-height:1.5}
#testimonies-ctn .big-quote.last{display:inline-block;vertical-align:baseline;margin:0 0 0 10px;padding:0}
#calendar .fc-today{background:#eaf3d9!important}
@media(min-width:1200px) and (max-width:1399px){
  #main-menu{padding:0 22px;gap:16px}
  #main-menu .img-ctn{width:160px;max-width:160px;flex-basis:160px}
  #main-menu ul{gap:10px}
}
/* Scope to the legacy plugin's actual activated state, including the 1200px edge. */
#main-menu.responsive-nav-activate .img-ctn{width:172px;max-width:172px;flex-basis:172px}
#main-menu.responsive-nav-activate .menu-ctn{padding:20px 24px 28px;background:#fff}
#main-menu.responsive-nav-activate .menu-ctn>ul{display:flex;flex-wrap:wrap;align-content:flex-start;align-items:center;gap:0 12px}
#main-menu.responsive-nav-activate .menu-ctn>ul>li{flex:0 0 100%;width:100%;margin:0;border:0}
#main-menu.responsive-nav-activate ul li .nav:not(.social){display:block;font-size:16px;line-height:1.3;padding:11px 0!important;min-height:44px}
#main-menu.responsive-nav-activate .menu-ctn>ul>.social-item{flex:0 0 auto;width:auto;margin:18px 0 0!important}
#main-menu.responsive-nav-activate ul li .nav.social{display:grid;width:40px;height:40px;margin:0!important;padding:0!important}
#main-menu.responsive-nav-activate ul li .nav.social i{position:static;font-size:16px;line-height:1}
#main-menu.responsive-nav-activate .menu-ctn>ul>.close-menu{display:flex;justify-content:flex-end;margin:0 0 16px;background:none}
#main-menu.responsive-nav-activate .close-menu a{position:relative;display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;min-height:44px;padding:0;border:1px solid var(--ee-line);border-radius:50%;background:#fff;color:var(--ee-green)}
#main-menu.responsive-nav-activate .close-menu a span{display:none}
#main-menu.responsive-nav-activate .close-menu a::before,#main-menu.responsive-nav-activate .close-menu a::after{content:"";position:absolute;inset:auto;width:19px;height:2px;border-radius:2px;background:currentColor;transform:rotate(45deg)}
#main-menu.responsive-nav-activate .close-menu a::after{transform:rotate(-45deg)}
#main-menu.responsive-nav-activate .close-menu a:is(:hover,:focus-visible){background:var(--ee-lime);border-color:var(--ee-lime)}
#main-menu.responsive-nav-activate #magic-line{display:none!important}
@media(min-width:768px) and (max-width:1199px){#concept .concept-copy>.concept-note{margin-left:75px}}
@media(max-width:767px){
  #concept .concept-media{order:0}
  #concept .concept-copy{order:1}
  #concept .concept-copy>.concept-note{margin-left:70px;margin-top:20px}
}
