@charset "UTF-8";
:root{--ink:#171a20;--muted:#62656c;--red:#b9202b;--bright:#e33c46;--line:#dcdde0;--paper:#f2f3f4;--max:1320px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;color:var(--ink);background:white;font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button{font:inherit}a:focus-visible,button:focus-visible{outline:3px solid #2477be;outline-offset:5px}img{display:block;max-width:100%}p,h1,h2,h3,figure{margin:0}h1,h2,h3{font-weight:600;line-height:1.1;letter-spacing:-.045em}p{color:var(--muted)}.skip{position:fixed;z-index:10;top:-80px;left:10px;padding:10px;background:white}.skip:focus{top:10px}.header{position:sticky;top:0;background:#fff;z-index:5;min-height:96px;padding:15px max(4vw,calc((100vw - var(--max))/2));display:flex;align-items:center;justify-content:space-between;gap:30px;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:9px;line-height:1}.brand>img{width:53px;height:55px;object-fit:contain}.brand>span{display:flex;flex-direction:column;gap:6px}.brand strong{font-size:29px;letter-spacing:.09em}.brand span span{font-size:12px;letter-spacing:.15em;color:var(--red)}nav{display:flex;align-items:center;gap:32px;font-size:14px}nav>a{padding:8px 0}nav>a:hover{color:var(--red)}.nav-contact{border-bottom:1px solid var(--red);display:flex;gap:22px}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:1fr 1fr;min-height:650px;background:var(--ink);color:white}.hero-content{padding:65px 7% 28px max(4vw,calc((100vw - var(--max))/2));display:flex;flex-direction:column;align-items:flex-start}.eyebrow{text-transform:uppercase;letter-spacing:.13em;font-size:12px;font-weight:600;line-height:1.6}.hero .eyebrow{color:#c9cbd0;margin-bottom:32px}.hero h1{font-size:clamp(40px,4.2vw,66px);line-height:1.06}.hero h1>span{color:#c9cbd0}.intro{max-width:510px;color:#c6c8cd;margin:30px 0;font-size:17px;line-height:1.75}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:30px;min-height:54px;padding:15px 23px;background:var(--red);color:white;font-size:14px;transition:background .2s}.button:hover{background:#941821}.hero-bottom{display:flex;gap:30px;margin-top:45px;padding-top:20px;width:100%;border-top:1px solid #ffffff25;font-size:13px;letter-spacing:.12em;color:#c6c8cd}.hero-visual{position:relative;min-width:0;overflow:hidden}.heritage-image{background-image:url('assets/notre-dame.jpeg');background-size:230% auto;background-position:2.3% 2.7%;background-repeat:no-repeat}.hero-visual>.heritage-image{position:absolute;inset:0;background-size:auto 207%;background-position:2.5% 2.6%}.hero-visual:after{content:"";position:absolute;inset:40% 0 0;background:linear-gradient(transparent,#0b111dd9)}.hero-visual figcaption{position:absolute;z-index:1;bottom:35px;left:35px;right:25px;display:flex;flex-direction:column;gap:7px}.hero-visual figcaption span:first-child{text-transform:uppercase;letter-spacing:.15em;font-size:12px;color:#fff}.hero-visual figcaption strong{font-size:22px;font-weight:500;line-height:1.3}.hero-visual figcaption span:last-child{font-size:14px;color:#d5d8de}.vertical-caption{position:absolute;right:20px;top:28px;writing-mode:vertical-rl;color:#fff;font-size:12px;letter-spacing:.16em;text-shadow:0 1px 4px #000}.territory-strip{display:flex;align-items:center;gap:45px;padding:28px max(4vw,calc((100vw - var(--max))/2));border-bottom:1px solid var(--line);font-size:14px}.territory-strip>p:first-child{margin-right:auto;font-size:13px}.territory-strip strong{font-weight:400;color:var(--ink)}.territory-strip>p:not(:first-child){color:var(--ink)}.strip-divider{width:1px;height:35px;background:var(--line)}.section{padding:95px max(4vw,calc((100vw - var(--max))/2))}.section-heading{display:grid;grid-template-columns:1fr 2fr;gap:40px;margin-bottom:48px}.red{color:var(--red)}h2{font-size:clamp(34px,3.2vw,48px)}.section-heading>div{display:flex;align-items:flex-start;gap:45px}.section-heading h2{flex:1}.section-heading>div>p{max-width:285px;font-size:15px;line-height:1.7;padding-top:5px}.mission-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}.mission{padding:32px 28px 0;border-right:1px solid var(--line)}.mission:first-child{padding-left:0}.mission:last-child{border:0;padding-right:0}.mission-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:34px}.mission-number{color:#888c93;font-size:13px}.mission-top strong{font-weight:400;color:var(--red);font-size:42px;letter-spacing:-.05em}.mission h3{font-size:27px;line-height:1.16}.mission-name{font-size:13px;color:var(--red);margin:18px 0 16px;min-height:42px}.mission>p:not(.mission-name){font-size:16px;line-height:1.7}.mission ul{list-style:none;margin:22px 0 0;padding:18px 0 0;border-top:1px solid var(--line);font-size:14px}.mission li{padding:7px 0 7px 15px;position:relative}.mission li:before{content:"—";position:absolute;left:0;color:var(--red);font-size:12px}.references{background:var(--paper)}.reference-feature{display:grid;grid-template-columns:1.1fr 1fr;background:white}.reference-photo{min-height:360px;overflow:hidden}.reference-copy{padding:45px}.reference-copy h3{font-size:38px;margin:20px 0}.reference-copy>p:not(.eyebrow){font-size:16px}.reference-copy dl,.reference-card dl{font-size:14px;margin:25px 0}.reference-copy dl div,.reference-card dl div{display:grid;grid-template-columns:130px 1fr;gap:18px;border-top:1px solid var(--line);padding:10px 0}.reference-copy dt,.reference-card dt{color:var(--muted)}dd{margin:0}.text-link{display:inline-flex;gap:22px;align-items:center;font-size:14px;border-bottom:1px solid var(--red);padding-bottom:6px}.text-link:hover{color:var(--red)}.reference-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:28px}.reference-card{background:#fff}.reference-card .reference-photo{min-height:0;height:auto;aspect-ratio:1.8}.nerondes-image{background:url('assets/nerondes.jpeg') 3% 7%/222% auto no-repeat}.polyclinique-image{background:url('assets/polyclinique.jpeg') 96% 7%/162% auto no-repeat}.reference-card-copy{padding:35px}.reference-card h3{font-size:30px;margin:15px 0 18px}.reference-card p:not(.eyebrow){font-size:16px}.method{display:grid;grid-template-columns:1fr 1.05fr;gap:90px;background:var(--ink);color:white}.method-intro>.eyebrow{color:#d1d3d8;margin-bottom:30px}.method h2{font-size:clamp(40px,4.3vw,64px);line-height:1.06}.method h2 span{color:#e15058}.method-intro>p:not(.eyebrow){margin-top:28px;max-width:470px;color:#bfc3ca}.signature{display:flex;flex-direction:column;border-left:2px solid var(--bright);padding-left:20px;margin-top:36px;font-size:18px}.signature span{color:#bfc3ca;font-size:13px;margin-top:5px}.method-steps{list-style:none;margin:0;padding:0}.method-steps li{display:flex;gap:28px;padding:29px 0;border-top:1px solid #ffffff30}.method-steps li:first-child{padding-top:0;border-top:0}.method-steps li>span{color:#e15058;font-size:14px;padding-top:3px}.method-steps h3{font-size:24px;letter-spacing:-.03em;line-height:1.2}.method-steps p{color:#bfc3ca;font-size:15px;line-height:1.75;margin-top:12px}.coverage{display:grid;grid-template-columns:1fr 2fr;gap:40px}.coverage>div>p{max-width:690px;margin:24px 0}.coverage-zones{display:flex;gap:14px;flex-wrap:wrap}.coverage-zones span{border:1px solid var(--line);padding:10px 16px;font-size:14px}.contact{background:var(--red);color:#fff;display:grid;grid-template-columns:1fr 1fr;gap:80px}.contact .eyebrow{color:#fff;margin-bottom:30px}.contact h2{font-size:clamp(40px,4.3vw,64px);line-height:1.05}.contact p:not(.eyebrow){color:#fff;max-width:470px;margin-top:25px;opacity:.9}.contact-details{display:flex;flex-direction:column;align-items:flex-start;padding-top:35px}.contact-phone{font-size:clamp(28px,3vw,42px);letter-spacing:-.035em;line-height:1.2;display:flex;justify-content:space-between;width:100%;padding-bottom:24px;border-bottom:1px solid #ffffff55}.contact-email{display:flex;justify-content:space-between;gap:20px;width:100%;font-size:clamp(16px,1.55vw,23px);padding:23px 0;border-bottom:1px solid #ffffff55;overflow-wrap:anywhere}.contact-email span{flex-shrink:0}.contact-address{display:flex;flex-direction:column;margin:28px 0}.contact-address>span{font-size:14px;opacity:.9}address{font-style:normal;margin-top:10px;font-size:14px;opacity:.9}.button-light{background:white;color:var(--red)}.button-light:hover{background:#eee}footer{padding:35px max(4vw,calc((100vw - var(--max))/2));display:flex;align-items:center;gap:30px;font-size:12px}footer>p{margin:auto;font-size:13px}footer>span{color:var(--muted)}.footer-brand{transform-origin:left center;transform:scale(.8);margin-right:-30px}
@media(min-width:1550px){.hero-content{padding-right:65px}.hero{min-height:700px}.hero-visual>.heritage-image{background-size:225% auto}}
@media(max-width:1100px){nav{gap:20px}.section-heading{grid-template-columns:1fr 3fr}.section-heading>div{display:block}.section-heading>div>p{max-width:600px;margin-top:22px}.hero-content{padding-top:50px}.hero{min-height:620px}.hero h1{font-size:46px}.mission{padding-left:20px;padding-right:20px}.mission h3{font-size:24px}.method{gap:50px}.reference-copy{padding:30px}.reference-copy h3{font-size:32px}.territory-strip{gap:22px}.coverage{grid-template-columns:1fr 2fr}.contact{gap:45px}footer{flex-wrap:wrap}footer>p{margin:0 auto}}
@media(max-width:760px){html{scroll-padding-top:82px}.header{min-height:80px;padding:12px 6%}.brand>img{width:43px;height:45px}.brand strong{font-size:25px}.brand span span{font-size:10px}.menu-toggle{display:flex;gap:12px;align-items:center;border:0;background:none;color:var(--ink);padding:10px;font-size:14px}nav{display:none;position:absolute;left:0;right:0;top:100%;padding:20px 6% 28px;background:white;box-shadow:0 8px 12px #0001;flex-direction:column;align-items:stretch;gap:10px}nav.open{display:flex}nav a{padding:12px 0}.nav-contact{justify-content:space-between}.hero{grid-template-columns:1fr}.hero-content{padding:42px 6% 26px}.hero h1{font-size:clamp(39px,8.8vw,62px)}.hero .eyebrow{font-size:11px;margin-bottom:24px}.intro{font-size:16px;max-width:550px;margin-top:25px}.hero-bottom{margin-top:30px;padding-top:16px}.hero-visual{height:410px}.hero-visual>.heritage-image{background-size:225% auto;background-position:2.5% 2.7%}.hero-visual figcaption{left:6%;bottom:25px}.hero-visual figcaption strong{font-size:20px}.vertical-caption{display:none}.territory-strip{padding:24px 6%;flex-wrap:wrap;gap:12px 28px}.territory-strip>p:first-child{width:100%}.territory-strip>p:not(:first-child){font-size:13px}.strip-divider{display:none}.section{padding:60px 6%}.section-heading{display:block;margin-bottom:35px}.section-heading>.eyebrow{margin-bottom:24px}.section-heading>div>p{font-size:16px;margin-top:22px}.mission-grid{grid-template-columns:1fr}.mission,.mission:first-child,.mission:last-child{padding:25px 0 35px;border-right:0;border-bottom:1px solid var(--line)}.mission:last-child{padding-bottom:0;border-bottom:0}.mission-top{margin-bottom:20px}.mission-top strong{font-size:40px}.mission h3{font-size:30px}.mission-name{min-height:0;margin:18px 0;font-size:14px}.mission ul{margin-top:18px}.reference-feature{grid-template-columns:1fr}.reference-photo{min-height:340px}.reference-copy{padding:28px}.reference-copy h3{font-size:34px}.reference-copy dl div,.reference-card dl div{grid-template-columns:115px 1fr;gap:12px}.reference-grid{grid-template-columns:1fr;gap:25px;margin-top:25px}.reference-card-copy{padding:28px}.reference-card h3{font-size:29px}.method{grid-template-columns:1fr;gap:45px}.method h2{font-size:52px}.method-steps li{gap:20px}.method-steps h3{font-size:25px}.method-steps p{font-size:16px}.coverage{display:block}.coverage>.eyebrow{margin-bottom:24px}.coverage-zones{gap:10px}.contact{grid-template-columns:1fr;gap:10px}.contact h2{font-size:49px}.contact-details{padding-top:30px}.contact-phone{font-size:34px}.contact-email{font-size:18px}.button{font-size:14px;gap:24px}footer{padding:30px 6%;display:block}footer>p{margin:15px 0;max-width:280px}.footer-brand{transform:none;margin:0}}
@media(max-width:380px){.hero-visual{height:330px}.reference-photo{min-height:270px}.contact-email{font-size:16px}.contact-phone{font-size:30px}.reference-copy,.reference-card-copy{padding:22px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.legal-link{font-size:14px;text-decoration:underline;text-underline-offset:4px;white-space:nowrap}.legal-link:hover{color:var(--red)}@media(max-width:760px){footer>.legal-link{display:block;margin-top:15px}}
