@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--black:#0a0a0a;--dark:#111112;--white:#fff;--paper:#f2f1ee;--muted:#a9a9aa;--red:#c51d28;--line:#d5d3ce}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--black);color:var(--white);font-family:'DM Sans',Arial,sans-serif;-webkit-font-smoothing:antialiased}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{font:inherit}.container{max-width:1360px;padding:0 44px;margin:0 auto}.skip-link{position:absolute;left:16px;top:-100px;background:#fff;color:#111;padding:12px;z-index:100}.skip-link:focus{top:14px}a:focus-visible,button:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--red);outline-offset:4px}.site-header{position:absolute;top:0;left:0;right:0;z-index:10;background:rgba(7,7,7,.94);border-bottom:1px solid rgba(255,255,255,.12)}.nav-wrap{max-width:1450px;margin:auto;padding:0 44px;height:94px;display:flex;align-items:center;gap:46px}.brand{display:inline-flex;align-items:center;flex-shrink:0}.brand img{width:178px;height:auto}.desktop-nav{display:flex;align-items:center;gap:34px;margin-left:auto}.desktop-nav a,.header-contact{font-size:12px;font-weight:700;letter-spacing:.11em;text-transform:uppercase;white-space:nowrap}.desktop-nav a{color:#e4e4e4;transition:color .2s}.desktop-nav a:hover{color:#fff}.header-contact{padding:15px 17px;border:1px solid rgba(255,255,255,.38);display:flex;align-items:center;gap:18px;transition:background .2s,border-color .2s}.header-contact:hover{background:#fff;color:#111;border-color:#fff}.header-contact span{font-size:18px;font-weight:400}.menu-toggle,.mobile-nav{display:none}.hero{height:min(880px,100svh);min-height:660px;position:relative;isolation:isolate;overflow:hidden}.hero-photo,.hero-shade{position:absolute;inset:0}.hero-photo{background-image:url('../images/hero-4.jpg');background-position:center 43%;background-size:cover;transform:scale(1.015)}.hero-shade{background:linear-gradient(90deg,rgba(3,3,3,.88) 0%,rgba(3,3,3,.68) 32%,rgba(3,3,3,.14) 72%),linear-gradient(0deg,rgba(0,0,0,.66),transparent 25%,transparent 68%,rgba(0,0,0,.2))}.hero-inner{position:relative;height:100%;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding-top:88px;padding-bottom:50px}.eyebrow{display:flex;align-items:center;gap:13px;font-size:12px;font-weight:700;letter-spacing:.22em;text-transform:uppercase}.red-line{display:inline-block;width:29px;height:2px;background:var(--red);flex-shrink:0}.hero-eyebrow{margin:0 0 24px}.hero h1,.contact h2{font-family:Manrope,Arial,sans-serif;font-weight:700;letter-spacing:-.065em;line-height:1.05}.hero h1{font-size:clamp(64px,7.5vw,112px);margin:0;max-width:960px}.hero h1 em,.contact h2 em{font-style:normal;color:#ed2635}.hero-intro{font-size:18px;line-height:1.7;color:#e0e0e0;max-width:485px;margin:28px 0 34px}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:34px;min-height:58px;padding:0 24px;font-size:12px;font-weight:700;letter-spacing:.115em;text-transform:uppercase;transition:background .2s,transform .2s}.button:hover{transform:translateY(-2px)}.button span{font-size:21px;font-weight:400}.button-primary{background:var(--red);color:#fff}.button-primary:hover{background:#a6131e}.hero-index{position:absolute;bottom:41px;left:max(44px,calc((100vw - 1272px)/2));display:flex;align-items:center;gap:11px;color:#fff;font-size:11px;font-weight:700;letter-spacing:.1em}.hero-index span:first-child{color:#ed2635}.index-rule{height:1px;width:74px;background:rgba(255,255,255,.5)}.hero-scroll{position:absolute;bottom:38px;right:max(44px,calc((100vw - 1272px)/2));font-size:11px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;display:flex;gap:24px;align-items:center}.hero-scroll span{font-size:19px;letter-spacing:0}.services{background:var(--paper);color:#111;padding:110px 0 90px;scroll-margin-top:0}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:60px;margin-bottom:58px}.dark-eyebrow{color:#4d4d4d;margin:0 0 20px}.section-heading h2{font-family:Manrope,Arial,sans-serif;font-size:clamp(38px,4.1vw,64px);font-weight:700;letter-spacing:-.055em;line-height:1.16;margin:0}.section-heading h2 span{color:#85847f}.section-heading>p{width:330px;flex:none;color:#666;line-height:1.7;margin:0 0 7px}.service-layout{display:grid;grid-template-columns:minmax(280px,.82fr) minmax(0,1.52fr);gap:30px;align-items:stretch}.service-tabs{border-top:1px solid var(--line)}.service-tab{cursor:pointer;text-align:left;width:100%;border:0;border-bottom:1px solid var(--line);background:transparent;color:#252525;display:grid;grid-template-columns:35px 1fr 24px;align-items:center;gap:12px;min-height:121px;padding:18px 6px;transition:color .2s,padding .2s}.service-tab:hover,.service-tab.is-active{color:var(--red);padding-left:16px}.service-tab>span:nth-child(2){font-family:Manrope,Arial,sans-serif;font-size:25px;font-weight:700;letter-spacing:-.045em;line-height:1.17}.service-tab small{font:inherit;color:#888}.service-tab.is-active small{color:#a8464d}.tab-number{align-self:start;margin-top:6px;font-size:11px;font-weight:700;letter-spacing:.1em}.tab-arrow{font-size:23px;align-self:center;opacity:0;transition:opacity .2s}.service-tab.is-active .tab-arrow,.service-tab:hover .tab-arrow{opacity:1}.service-panel{background:#fff;min-width:0;box-shadow:0 18px 55px rgba(0,0,0,.06)}.service-image-wrap{height:330px;overflow:hidden;position:relative;background:#242424}.service-image-wrap img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 52%;transition:opacity .18s}.service-image-wrap img[src$="gardiennage.jpg"]{object-fit:cover;object-position:center 25%}.image-label{position:absolute;bottom:17px;left:20px;background:#111;color:#fff;padding:9px 11px;font-size:10px;letter-spacing:.15em;font-weight:700}.service-copy{padding:33px 35px 31px;display:flex;justify-content:space-between;align-items:end;gap:35px}.service-kicker{color:var(--red);font-size:10px;letter-spacing:.18em;font-weight:700;margin:0 0 10px}.service-copy h3{font-family:Manrope,Arial,sans-serif;font-size:30px;line-height:1.12;letter-spacing:-.045em;margin:0 0 12px}.service-copy p#service-description{font-size:14px;line-height:1.7;color:#656565;margin:0;max-width:510px}.service-copy a{font-size:11px;letter-spacing:.09em;text-transform:uppercase;font-weight:700;border-bottom:1px solid #202020;padding-bottom:7px;white-space:nowrap;transition:color .2s}.service-copy a:hover{color:var(--red);border-color:var(--red)}.service-copy a span{font-size:16px;margin-left:9px}.service-note{display:flex;justify-content:space-between;color:#898883;font-size:11px;letter-spacing:.1em;margin-top:27px}.service-note span:first-child{font-weight:700}.contact{background:#131313;color:#fff;padding:105px 0 110px;scroll-margin-top:0}.contact-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:100px}.contact .eyebrow{color:#c4c4c4;margin:0 0 27px}.contact h2{font-size:clamp(42px,4.8vw,70px);margin:0}.contact-intro{max-width:495px;color:#aeaeae;font-size:16px;line-height:1.7;margin:24px 0 31px}.contact-details{align-self:end;border-top:1px solid #444}.contact-details>div{border-bottom:1px solid #444;padding:20px 0 23px}.detail-label{display:block;color:#888;font-size:10px;letter-spacing:.18em;font-weight:700;margin-bottom:13px}.contact-details a,.contact-details p{font-family:Manrope,Arial,sans-serif;font-size:clamp(18px,2vw,26px);font-weight:600;letter-spacing:-.035em;margin:0;overflow-wrap:anywhere}.contact-details a{display:flex;justify-content:space-between;gap:10px;transition:color .2s}.contact-details a:hover{color:#ed2635}.contact-details a span{font-size:17px;color:var(--red)}.site-footer{background:#090909;border-top:1px solid #292929}.footer-content{min-height:106px;display:flex;align-items:center;justify-content:space-between;gap:20px;color:#777;font-size:11px;letter-spacing:.03em}.footer-content img{width:122px;height:auto;display:block}
@media(max-width:1000px){.nav-wrap{gap:25px}.brand img{width:145px}.desktop-nav{gap:17px}.header-contact{font-size:10px}.container{padding:0 30px}.service-layout{grid-template-columns:280px minmax(0,1fr);gap:18px}.service-copy{display:block}.service-copy a{display:inline-block;margin-top:20px}.hero-index{left:30px}.hero-scroll{right:30px}.contact-grid{gap:45px}}
@media(max-width:760px){.site-header{position:absolute}.nav-wrap{height:74px;padding:0 22px;justify-content:space-between}.brand img{width:147px}.desktop-nav,.header-contact{display:none}.menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:6px;width:44px;height:44px;border:0;background:transparent;color:#fff;cursor:pointer}.menu-toggle span{display:block;height:2px;width:25px;background:currentColor;transition:transform .2s}.menu-toggle[aria-expanded="true"] span:first-child{transform:translateY(4px) rotate(45deg)}.menu-toggle[aria-expanded="true"] span:last-child{transform:translateY(-4px) rotate(-45deg)}.mobile-nav:not([hidden]){display:flex;flex-direction:column;background:#101010;padding:8px 22px 20px;border-top:1px solid #333}.mobile-nav a{padding:16px 4px;border-bottom:1px solid #303030;font-size:14px;font-weight:700}.container{padding:0 22px}.hero{height:760px;min-height:680px;max-height:900px}.hero-photo{background-position:58% center}.hero-shade{background:linear-gradient(90deg,rgba(0,0,0,.82),rgba(0,0,0,.18)),linear-gradient(0deg,rgba(0,0,0,.73),transparent 32%)}.hero-inner{padding-top:78px;padding-bottom:95px;justify-content:end}.hero h1{font-size:clamp(55px,11vw,82px)}.hero-intro{font-size:15px;line-height:1.65;max-width:380px;margin:20px 0 26px}.hero-index{left:22px;bottom:25px}.hero-scroll{right:22px;bottom:22px}.services{padding:76px 0 70px}.section-heading{display:block;margin-bottom:35px}.section-heading h2{font-size:clamp(35px,8vw,52px)}.section-heading>p{width:auto;max-width:460px;margin-top:18px;font-size:14px}.service-layout{display:block}.service-tabs{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:0;border-top:0;border-bottom:1px solid var(--line);margin:0 -22px 22px;padding:0 22px;scrollbar-width:thin}.service-tab{display:block;min-height:0;min-width:155px;width:auto;flex:0 0 auto;scroll-snap-align:start;padding:12px 10px 15px!important;border-bottom:3px solid transparent;line-height:1.1}.service-tab.is-active{border-bottom-color:var(--red)}.service-tab .tab-number{display:block;font-size:10px;margin:0 0 7px}.service-tab>span:nth-child(2){font-size:18px}.service-tab small{font-size:16px}.service-tab .tab-arrow{display:none}.service-image-wrap{height:290px}.service-copy{padding:26px 24px}.service-copy h3{font-size:27px}.service-note{gap:20px}.service-note span:last-child{text-align:right}.contact{padding:76px 0}.contact-grid{display:block}.contact h2{font-size:clamp(42px,9vw,64px)}.contact-details{margin-top:55px}.footer-content{min-height:95px}.footer-content span:nth-child(2){display:none}}
@media(max-width:420px){.hero{height:720px;min-height:640px}.hero h1{font-size:54px}.hero-intro{font-size:14px}.button{padding:0 18px;min-height:54px;gap:14px;font-size:11px}.service-image-wrap{height:230px}.service-tab{min-width:137px}.service-tab>span:nth-child(2){font-size:17px}.service-tab small{font-size:15px}.service-note{font-size:9px}.contact-details a,.contact-details p{font-size:20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}
