@font-face{font-family:Local;src:local('Avenir Next');font-display:swap}
:root{--paper:#faf9f6;--ink:#242624;--muted:#686d66;--line:#dddfd7;--green:#536342;--accent:#bfd581;--red:#bd5445;--pink:#a94983;--blue:#4d6f8b}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Local,'Helvetica Neue',Arial,sans-serif;font-size:16px;line-height:1.6}a{color:inherit}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}img{max-width:100%;display:block}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--green);outline-offset:5px}.skip{position:fixed;top:-70px;left:20px;z-index:99;background:white;padding:12px}.skip:focus{top:10px}.container{width:min(1320px,calc(100% - 96px));margin:auto}
.color-line{height:4px;background:linear-gradient(90deg,#c65646 0 20%,#90cbd0 20% 40%,#bace7c 40% 60%,#d6b65b 60% 80%,#a25891 80%)}.header{border-bottom:1px solid var(--line);background:var(--paper)}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:32px;min-height:104px}.brand{display:flex;align-items:center;width:210px;flex-shrink:0}.brand img{width:210px;mix-blend-mode:multiply}.nav{display:flex;align-items:center;gap:22px}.nav a{text-decoration:none;font-size:14px;font-weight:500;white-space:nowrap}.nav a:hover,.nav a[aria-current=page]{color:var(--green);text-decoration:underline;text-underline-offset:8px}.nav .pro-link{background:var(--green);border:1px solid var(--green);border-radius:2px;color:white;padding:10px 16px}.nav .pro-link:hover{background:var(--ink);border-color:var(--ink);color:white;text-decoration:none}.nav .contact-link{border:1px solid var(--ink);padding:10px 19px;border-radius:2px}.nav-toggle{display:none;background:none;border:1px solid var(--line);padding:8px 14px}.eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:.18em;font-weight:650;color:var(--muted);display:flex;align-items:center;gap:12px}.eyebrow:before{content:'';width:22px;height:1px;background:currentColor}h1,h2,h3,p{margin-top:0}h1,h2{font-weight:450;letter-spacing:-.045em;line-height:1.04}h1{font-size:clamp(45px,5.8vw,85px)}h2{font-size:clamp(32px,3.5vw,49px)}h3{font-size:21px;letter-spacing:-.02em;font-weight:500}p{color:var(--muted)}.intro{padding:62px 0 44px;display:grid;grid-template-columns:1.3fr 1fr;gap:70px;align-items:end}.intro h1{margin:21px 0 0}.intro h1 em{font-family:Georgia,serif;font-weight:normal;color:var(--green)}.intro-copy{max-width:370px;justify-self:end;padding-bottom:3px}.intro-copy p{font-size:17px;line-height:1.7;margin-bottom:20px}.text-link{display:inline-flex;gap:20px;align-items:center;text-underline-offset:5px;font-size:14px;font-weight:600}.text-link span{font-size:20px}.audience{font-size:12px;color:var(--muted);margin-top:20px}.section-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:23px;gap:22px}.section-heading p{font-size:12px;margin:0}.section-heading h2{font-size:12px;letter-spacing:.12em;text-transform:uppercase;margin:0;font-weight:650}.universes{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.universe{text-decoration:none;min-width:0;display:block}.universe .image-wrap{height:clamp(220px,25vw,350px);overflow:hidden;background:#e8e7e2;position:relative}.universe img{height:100%;width:100%;object-fit:cover;transition:transform .6s}.universe:hover img{transform:scale(1.035)}.universe:nth-child(2) img{object-position:50% 25%}.universe:nth-child(4) img{object-fit:contain;padding:24px;background:#eeeae2}.image-label{position:absolute;left:15px;top:15px;background:rgba(250,249,246,.93);padding:3px 9px;font-size:10px;letter-spacing:.08em;text-transform:uppercase}.universe-info{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding:18px 0 13px}.universe h3{margin:0}.universe small{color:var(--muted);font-size:12px;display:block;margin-top:3px}.universe .arrow{font-size:25px}.section{padding:78px 0}.intro-note{display:flex;gap:40px;align-items:center;justify-content:space-between;margin-top:34px;padding:23px 0;border-bottom:1px solid var(--line)}.intro-note p{margin:0;font-size:13px}.intro-note strong{color:var(--ink);font-weight:500}.about-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px}.about-grid h2{margin:23px 0}.about-grid .body{padding-top:30px}.about-grid .body p{font-size:17px;max-width:660px}.signature{color:var(--ink);font-size:14px!important}.signature span{display:block;color:var(--muted);font-size:12px}.services{background:#efefe9;padding:65px 0}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}.service-card{border-top:1px solid #bdc1b5;padding-top:25px}.service-card h3{margin:15px 0}.service-number{font-size:11px;color:var(--muted);letter-spacing:.12em}.service-card p{font-size:14px;max-width:320px}.cta{padding:72px 0}.cta-inner{display:flex;justify-content:space-between;gap:40px;align-items:center}.cta h2{margin:12px 0 0}.button{background:var(--ink);color:white;text-decoration:none;display:inline-flex;align-items:center;gap:30px;padding:15px 24px;font-size:14px;border:1px solid var(--ink);border-radius:2px}.button:hover{background:var(--green);border-color:var(--green)}.button.light{background:var(--paper);color:var(--ink);border-color:var(--line)}.footer{border-top:1px solid var(--line);padding:30px 0 24px}.footer-inner{display:flex;justify-content:space-between;align-items:center;gap:30px;font-size:12px}.footer-brand{font-size:19px;font-weight:600;letter-spacing:-.04em}.footer-links{display:flex;gap:24px;flex-wrap:wrap}.footer a{text-decoration:none}.footer a:hover{text-decoration:underline}.footer-bottom{font-size:10px;color:var(--muted);margin-top:24px}.page-top{padding:52px 0 46px}.breadcrumbs{font-size:12px;color:var(--muted);margin-bottom:33px}.breadcrumbs a{text-decoration:none}.page-top h1{margin:18px 0;font-size:clamp(45px,5.6vw,75px)}.page-top .lead{max-width:760px;font-size:19px;margin-bottom:24px}.page-tabs{display:flex;gap:24px;flex-wrap:wrap;margin-top:26px}.page-tabs a{font-size:13px;text-underline-offset:5px}.gallery{columns:3;column-gap:20px}.gallery-item{margin:0 0 20px;break-inside:avoid}.gallery-item button{padding:0;display:block;width:100%;border:0;background:#e9e8e3;cursor:zoom-in}.gallery-item img{width:100%;height:auto}.gallery-item figcaption{font-size:11px;color:var(--muted);padding-top:7px}.gallery-item button:hover img{opacity:.93}.gallery-heading{padding-top:15px}.subsection{padding:55px 0}.subsection h2{max-width:700px}.split{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:start}.split p{max-width:640px}.split figure{margin:0}.split figure img{width:100%}.list{padding:0;list-style:none}.list li{border-top:1px solid var(--line);padding:12px 0;font-size:14px}.virtual{background:#e9ece3;margin-top:50px;padding:52px}.virtual .eyebrow{color:var(--green)}.virtual h2{margin:20px 0}.tour-list{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:27px}.tour-link{background:var(--paper);padding:23px;text-decoration:none;border:1px solid #d5d9cd;display:flex;justify-content:space-between;align-items:center;gap:20px}.tour-link strong{display:block;font-weight:500}.tour-link small{display:block;color:var(--muted);font-size:11px;margin-top:4px}.tour-link:hover{border-color:var(--green)}.tour-link .arrow{font-size:23px}.contact-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:80px;padding-bottom:70px}.contact-card{padding:40px;background:#e9ece3}.contact-card a{display:block;font-size:clamp(20px,2.4vw,30px);letter-spacing:-.03em;text-decoration:none;margin:8px 0}.contact-card p{font-size:12px;margin-bottom:20px}.contact-card h2{font-size:25px;margin:0 0 24px}.contact-details{padding:15px 0}.contact-details p{font-size:15px}.video-list{display:grid;grid-template-columns:1fr 1fr;gap:18px}.video-link{padding:28px;border:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:20px;text-decoration:none}.video-link:hover{background:#eee}.play{display:flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:50%;width:48px;height:48px;font-size:16px;flex-shrink:0}.video-link small{display:block;color:var(--muted);font-size:12px}.article{max-width:840px;margin:auto}.article h2{font-size:28px;margin-top:40px}.article p,.article li{font-size:15px}.lightbox{border:0;background:#191b19;color:white;width:calc(100vw - 40px);max-width:1250px;max-height:95vh;padding:24px}.lightbox::backdrop{background:rgba(0,0,0,.85)}.lightbox img{max-height:78vh;max-width:100%;width:auto;margin:auto;object-fit:contain}.lightbox-bar{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:15px;font-size:13px}.lightbox button{background:none;border:1px solid #606460;color:white;padding:7px 13px;cursor:pointer}.lightbox-controls{display:flex;gap:10px}.lightbox-note{margin:12px 0 0;text-align:center;font-size:11px;color:#ccc}.empty-note{font-size:12px}.notice-legacy{border-left:3px solid var(--green);padding-left:20px}.training{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.training article{border-top:1px solid var(--line);padding-top:24px}.training h3{font-size:23px}.training p{font-size:14px}
.brand img{height:auto}
@media(min-width:1600px){.intro{padding-top:85px}.universe .image-wrap{height:370px}}
@media(max-width:1100px){.container{width:calc(100% - 48px)}.nav{gap:17px}.nav a{font-size:12px}.brand,.brand img{width:175px}.intro{gap:40px}.about-grid{gap:50px}.universe h3{font-size:19px}}
@media(max-width:800px){.header-inner{min-height:86px;flex-wrap:wrap;gap:0}.nav-toggle{display:block}.nav{display:none;width:100%;padding:15px 0 25px;align-items:flex-start;flex-direction:column;gap:17px}.nav.open{display:flex}.nav a{font-size:15px}.intro{grid-template-columns:1fr;gap:25px;padding:38px 0}.intro h1{font-size:65px}.intro-copy{justify-self:start;max-width:500px}.intro-copy p{font-size:16px;margin-bottom:14px}.audience{margin-top:15px}.universes{grid-template-columns:repeat(2,1fr);gap:26px 16px}.universe .image-wrap{height:340px}.section{padding:52px 0}.about-grid{grid-template-columns:1fr;gap:0}.about-grid .body{padding-top:0}.about-grid h2{max-width:450px}.service-grid{gap:25px}.service-card h3{font-size:19px}.footer-inner{align-items:flex-start}.footer-links{gap:10px 20px}.gallery{columns:2}.split{gap:35px}.contact-grid{gap:35px}.virtual{padding:32px}.contact-card{padding:28px}.training{gap:24px}}
@media(max-width:540px){.container{width:calc(100% - 36px)}.brand,.brand img{width:174px}.intro h1{font-size:55px}.intro{padding-top:33px}.intro-copy p{font-size:15px}.section-heading p{display:none}.section-heading{margin-bottom:17px}.universes{gap:24px 12px}.universe .image-wrap{height:228px}.universe h3{font-size:18px}.universe small{font-size:10px}.universe .arrow{font-size:20px}.universe:nth-child(4) img{padding:10px}.image-label{left:10px;top:10px;font-size:8px}.intro-note{flex-direction:column;align-items:flex-start;gap:14px;margin-top:22px}.intro-note p{font-size:12px}.intro-note .text-link{font-size:12px}.service-grid{grid-template-columns:1fr;gap:35px}.service-card p{max-width:none}.services{padding:45px 0}.cta{padding:48px 0}.cta-inner{flex-direction:column;align-items:flex-start;gap:28px}.cta h2{font-size:38px}.footer-inner{flex-direction:column;gap:20px}.footer-links{font-size:12px}.page-top{padding:35px 0 26px}.page-top h1{font-size:46px}.page-top .lead{font-size:17px}.breadcrumbs{margin-bottom:28px}.split,.contact-grid{grid-template-columns:1fr;gap:22px}.gallery{column-gap:12px}.gallery-item{margin-bottom:15px}.gallery-item figcaption{font-size:10px}.virtual{padding:26px 20px;margin-top:25px}.virtual h2{font-size:35px}.tour-list,.video-list,.training{grid-template-columns:1fr}.tour-link{padding:20px}.subsection{padding:37px 0}.lightbox{padding:12px;width:calc(100vw - 16px)}.lightbox-bar{flex-wrap:wrap}.lightbox-controls{width:100%;justify-content:space-between}.contact-grid{padding-bottom:40px}.page-tabs{gap:14px 20px}.section-heading h2{font-size:11px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

/* Lecture confortable sur ordinateur portable et téléphone. */
body{font-size:17px;line-height:1.65}
:root{--muted:#565c53}
.nav a{font-size:15px;padding-block:10px}
.eyebrow,.section-heading h2,.service-number,.image-label{font-size:14px;letter-spacing:.09em}
.audience,.section-heading p,.universe small,.signature span,.footer-bottom,.breadcrumbs,.tour-link small,.contact-card p,.empty-note,.lightbox-note{font-size:14px}
.text-link,.intro-note p,.gallery-item figcaption,.page-tabs a,.footer-inner,.footer-links,.lightbox-bar{font-size:15px}
.service-card p,.button,.list li,.training p,.article p,.article li,.contact-details p{font-size:17px}
.intro-copy p,.about-grid .body p{font-size:18px}
.signature{font-size:17px!important}
.text-link,.page-tabs a{min-height:44px;align-items:center}
.page-tabs a{display:inline-flex}
.footer-links a{display:inline-flex;align-items:center;min-height:44px}
.nav-toggle,.lightbox button{min-height:44px;min-width:44px}
.gallery-item figcaption{line-height:1.5;padding:10px 0 2px}
.image-label{font-size:12px;letter-spacing:.06em}
.universe-info{align-items:flex-start;gap:12px}
.universe-info>div{min-width:0}
.animal-intro{max-width:690px;font-size:18px}
.video-heading{align-items:baseline;flex-wrap:wrap}
.video-card{min-width:0}
.video-link{display:block;text-align:left;width:100%;padding:0;background:var(--paper);color:var(--ink);cursor:pointer;overflow:hidden;border-radius:4px}
.video-link:hover{background:#f1f2ec;border-color:var(--green)}
.video-thumbnail{display:block;position:relative;aspect-ratio:16/9;overflow:hidden;background:#282b27}
.video-thumbnail img{width:100%;height:100%;object-fit:cover;transition:transform .35s}
.video-link:hover .video-thumbnail img{transform:scale(1.025)}
.video-thumbnail .play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);background:rgba(20,24,19,.84);border-color:rgba(255,255,255,.8);color:white;width:64px;height:64px;font-size:23px;padding-left:4px}
.video-caption{display:block;padding:23px 25px}
.video-caption strong{font-size:21px;font-weight:550;line-height:1.3;display:block}
.video-caption small{font-size:15px;margin-top:8px}
.video-action{display:flex;justify-content:space-between;gap:20px;margin-top:22px;font-size:16px;color:var(--green)}
.video-dialog{border:0;background:var(--paper);color:var(--ink);width:min(1120px,calc(100vw - 32px));max-height:95dvh;padding:22px;border-radius:4px}
.video-dialog::backdrop{background:rgba(10,14,10,.88)}
.video-toolbar{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-bottom:18px}
.video-toolbar h2{font-size:23px;letter-spacing:-.02em;line-height:1.35;margin:0}
.video-toolbar button{background:var(--ink);color:white;border:0;padding:12px 18px;min-height:44px;white-space:nowrap;cursor:pointer;font-size:16px}
.video-screen{position:relative;aspect-ratio:16/9;background:#171917}
.video-screen iframe{position:absolute;inset:0;border:0;width:100%;height:100%}
.video-fallback{display:inline-flex;align-items:center;min-height:44px;margin-top:10px;font-size:15px;text-underline-offset:4px}
.tour-viewer{height:100dvh;display:flex;flex-direction:column;overflow:hidden}
.tour-toolbar{flex-shrink:0;display:flex;justify-content:space-between;align-items:center;gap:24px;padding:14px 24px;border-bottom:1px solid var(--line);background:var(--paper)}
.tour-toolbar strong{font-size:18px;display:block;font-weight:550}
.tour-toolbar span{display:block;font-size:14px;color:var(--muted)}
.tour-back{display:inline-flex;align-items:center;text-decoration:none;background:var(--ink);color:white;padding:12px 20px;min-height:46px;font-size:16px;white-space:nowrap}
.tour-home{font-size:23px;text-decoration:none;font-weight:550}
.tour-screen{flex:1;min-height:0;position:relative;background:#eee}
.tour-screen iframe{width:100%;height:100%;border:0;display:block}
@media(max-width:1050px){.header-inner{flex-wrap:wrap;gap:0;min-height:86px}.nav-toggle{display:block}.nav{display:none;width:100%;padding:15px 0 25px;align-items:flex-start;flex-direction:column;gap:8px}.nav.open{display:flex}.nav a{font-size:17px}.footer-inner{flex-wrap:wrap;gap:16px 26px}}
@media(max-width:1050px){.nav .pro-link,.nav .contact-link{width:100%;justify-content:center;text-align:center}}
@media(max-width:540px){.intro-copy p,.about-grid .body p,.animal-intro{font-size:17px}.universe small{font-size:14px;line-height:1.5}.intro-note .text-link{font-size:15px}.eyebrow,.section-heading h2,.service-number{font-size:14px}.image-label{font-size:12px;left:9px;top:10px;padding:3px 7px;letter-spacing:.02em}.gallery-item figcaption{font-size:15px}.section-heading p{display:block;font-size:14px}.section-heading{align-items:flex-start;flex-wrap:wrap;gap:12px}.section-heading>p{display:none}.video-heading .text-link{font-size:16px}.video-caption{padding:20px}.video-caption strong{font-size:20px}.video-dialog{padding:14px;width:calc(100vw - 16px)}.video-toolbar{align-items:flex-start;flex-direction:column;gap:12px}.video-toolbar h2{font-size:20px}.video-toolbar button{width:100%}.tour-toolbar{padding:10px 12px;gap:10px;flex-wrap:wrap}.tour-toolbar>div{order:3;width:100%}.tour-back{padding:10px 13px}.tour-home{font-size:21px}.tour-toolbar strong{font-size:17px}}

.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
