@font-face{font-family:Fallback;src:local('Arial')}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:#f4f2eb;color:#20231e;font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}button{border:0}a:focus-visible,button:focus-visible{outline:3px solid #a5792e;outline-offset:5px}img{display:block;max-width:100%}.skip{position:fixed;top:-100px;z-index:99;background:white;padding:16px}.skip:focus{top:12px}header{height:100px;padding:0 4.5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #d7d7ce;background:#f4f2eb;position:relative;z-index:10}.brand{display:flex;align-items:center;gap:12px;font-size:27px;letter-spacing:3px;font-weight:800}.brand img{width:54px;height:60px;object-fit:contain;background:#171916;border-radius:2px}.brand-small{display:block;font-size:8px;letter-spacing:3.8px;margin-top:4px}nav{display:flex;gap:35px;font-size:13px}nav a:hover{color:#926c2d}.header-cta{border-bottom:1px solid;padding:12px 0;font-size:13px}.header-cta span{margin-left:26px}.menu{display:none}.hero{display:grid;grid-template-columns:1.02fr 1fr;min-height:670px}.hero-copy{padding:64px 7% 28px 8.8%;display:flex;align-items:flex-start;flex-direction:column}.eyebrow{font-size:10px;letter-spacing:1.65px;font-weight:600;display:flex;align-items:center;gap:10px;margin:0 0 35px}.dot{height:6px;width:6px;background:#a88642;border-radius:50%;display:inline-block}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(52px,5.4vw,88px);font-weight:500;letter-spacing:-4px;line-height:1.03;margin-bottom:27px}em{font-family:Georgia,'Times New Roman',serif;font-weight:400;color:#94733c}h1 em{font-size:1.03em}.intro{font-size:20px;line-height:1.45;letter-spacing:-.4px;margin-bottom:17px}.hero-detail{color:#707369;font-size:13px;line-height:1.8}.button{padding:19px 23px;display:inline-flex;gap:34px;align-items:center;font-size:12px;margin-top:18px}.dark{background:#22261f;color:#fff}.button:hover{background:#3a4033}.hero-bottom{margin-top:auto;padding-top:36px;width:100%;display:flex;align-items:center;justify-content:space-between;font-size:8px;letter-spacing:1.5px;line-height:1.65;color:#6d7066}.hero-bottom a{height:35px;width:35px;display:grid;place-items:center;border:1px solid #cacdc2;border-radius:50%;font-size:16px}.hero-visual{position:relative;background:#171916;overflow:hidden;color:#fff;min-height:620px}.hero-visual>img{height:100%;width:100%;position:absolute;object-fit:cover;inset:0}.hero-visual:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#0005,transparent 25%,transparent 55%,#000c);pointer-events:none}.visual-top,.visual-bottom{position:absolute;z-index:1;left:35px;right:35px;display:flex;justify-content:space-between}.visual-top{top:28px;font-size:9px;letter-spacing:1.5px}.visual-bottom{bottom:32px;align-items:center;gap:12px}.visual-bottom span{font-size:9px;letter-spacing:1.4px;color:#dccaa3;text-transform:uppercase}.visual-bottom h2{font-size:20px;font-weight:400;margin:10px 0 0;letter-spacing:-.5px}.visual-bottom button{border:1px solid #fff8;color:white;background:transparent;border-radius:50%;font-size:25px;width:52px;height:52px;flex-shrink:0}.visual-bottom button:hover{background:#fff2}.ribbon{display:flex;justify-content:space-around;gap:24px;padding:28px 4.5%;border-bottom:1px solid #d7d7ce;font-size:11px;letter-spacing:2px;align-items:center}.ribbon i{font-style:normal;color:#9d814b;font-size:21px}.section{padding:85px 4.5% 90px}.section-top{display:flex;justify-content:space-between;align-items:flex-start;color:#72766b}.section-top>span{font-size:9px;letter-spacing:1.4px}.section h2{font-size:clamp(38px,4.1vw,64px);font-weight:400;letter-spacing:-2.2px;line-height:1.08;margin-bottom:28px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:24px}.section-heading>p{font-size:13px;line-height:1.8;color:#73766c;padding-bottom:6px}.gallery-bar{display:flex;align-items:center;justify-content:space-between;margin:28px 0 30px;border-bottom:1px solid #d5d6cc;padding-bottom:16px}.filters{display:flex;gap:8px}.filters button{border:1px solid transparent;border-radius:30px;padding:10px 16px;font-size:11px;background:transparent}.filters button span{font-size:8px;margin-left:10px;color:#797c72}.filters button[aria-pressed=true]{background:#242820;color:#fff}.filters button[aria-pressed=true] span{color:#ccc}.filters button:hover{border-color:#9c9f91}#result-count{font-size:10px;color:#74796c}.gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px 22px}.gallery article[hidden]{display:none}.project-image{width:100%;position:relative;background:#1a1c19;padding:0;overflow:hidden;aspect-ratio:1}.project-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.project-image:hover img{transform:scale(1.045)}.project-number{position:absolute;left:16px;top:16px;color:#fff;font-size:9px;letter-spacing:1px;background:#16191699;padding:7px}.zoom{position:absolute;right:14px;bottom:14px;width:32px;height:32px;border-radius:50%;background:#f4f2eb;color:#262a23;display:grid;place-items:center}.project-caption{padding-top:15px}.project-caption h3{font-size:13px;font-weight:500;margin-bottom:7px}.project-caption>span{font-size:10px;color:#73766b}.services{background:#22271f;color:#f1f0e8}.services .section-top{color:#c0c5b7}.services em{color:#c4ad78}.services-layout{display:grid;grid-template-columns:1fr 1fr;gap:80px}.services-layout>div>p{font-size:13px;line-height:1.8;color:#b4baac}.text-link{display:inline-flex;gap:45px;border-bottom:1px solid #727b64;padding:20px 0 13px;font-size:12px}.service-list>div{display:grid;grid-template-columns:25px 110px 1fr;align-items:center;gap:15px;border-bottom:1px solid #454c3d;padding:26px 0}.service-list>div:first-child{padding-top:7px}.service-no{color:#a9b09e;font-size:9px}.service-list h3{font-size:23px;letter-spacing:-.5px;font-weight:400;margin:0}.service-list p{font-size:11px;line-height:1.6;color:#b7bcad;margin:0}.process{border-bottom:1px solid #d5d6cc}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:42px;margin-top:55px}.steps article>span{display:flex;justify-content:space-between;font-size:12px;color:#8a7044;padding-bottom:22px;border-bottom:1px solid #cacdc1}.steps i{font-style:normal}.steps h3{font-weight:500;font-size:19px;letter-spacing:-.5px;margin-top:26px}.steps p{font-size:13px;color:#707568;line-height:1.8;max-width:330px}.contact{background:#e9e5d7}.contact>div{display:flex;align-items:center;justify-content:space-between}.contact h2{font-size:clamp(43px,5.2vw,78px)}.contact-arrow{width:100px;height:100px;border-radius:50%;background:#252b21;color:#eee;display:grid;place-items:center;font-size:55px;font-weight:300;flex-shrink:0}.contact>p:not(.eyebrow){font-size:13px;line-height:1.8;color:#6c7163}.contact-email{display:inline-flex;gap:40px;font-size:17px;border-bottom:1px solid #8c917f;padding:15px 0}footer{background:#171b16;color:#d8dcd0;padding:40px 4.5% 20px}.footer-top{display:flex;justify-content:space-between;align-items:center;gap:25px;padding-bottom:38px}.footer-top p{font-size:11px;color:#a4ac99;margin:0}.footer-top>a:last-child{font-size:10px}.footer-bottom{border-top:1px solid #383e31;padding-top:22px;display:flex;justify-content:space-between;font-size:9px;color:#a1aa96}.footer-bottom button{background:none;color:inherit;font-size:9px;margin-left:22px;padding:0}.modal-open{overflow:hidden}dialog{border:0;background:#f4f2eb;color:#20231e;max-width:90vw;max-height:90vh;padding:30px}dialog::backdrop{background:#10150ed9;backdrop-filter:blur(5px)}dialog .close{position:absolute;right:12px;top:12px;z-index:2;background:#f4f2eb;border:1px solid #babfac;border-radius:50%;width:35px;height:35px;font-size:24px}#lightbox{width:680px;text-align:center}#lightbox img{max-height:65vh;width:100%;object-fit:contain}#lightbox h2{font-size:20px;margin:22px 0 8px}#lightbox p{font-size:12px;margin:0}.legal{width:740px;padding:55px 40px}.legal h2{font-size:30px}.legal p{font-size:13px;line-height:1.8}.legal .eyebrow{font-size:9px}
@media(min-width:1600px){body{max-width:1800px;margin:auto}.hero{min-height:780px}}@media(max-width:1050px){header{height:85px}nav{gap:20px}.header-cta{font-size:11px}.hero-copy{padding-top:50px}h1{font-size:58px;letter-spacing:-3px}.hero{min-height:620px}.hero-visual{min-height:620px}.eyebrow{font-size:8px}.services-layout{gap:35px}.service-list>div{grid-template-columns:20px 90px 1fr;gap:9px}.service-list h3{font-size:20px}.ribbon{gap:15px;font-size:9px;letter-spacing:1px}}
@media(max-width:760px){html{scroll-padding-top:25px}header{height:80px;padding:0 6%}.brand{font-size:23px}.brand img{height:45px;width:41px}.brand-small{font-size:7px;letter-spacing:2.8px}.header-cta{display:none}.menu{display:flex;gap:20px;align-items:center;background:transparent;padding:12px 0;font-size:12px}.menu span{font-size:22px}nav{display:none;position:absolute;top:79px;left:0;right:0;background:#f4f2eb;border-bottom:1px solid #cecfbf;padding:24px 6%;flex-direction:column;gap:24px}nav.open{display:flex}.hero{grid-template-columns:1fr}.hero-copy{padding:42px 6% 28px}.eyebrow{font-size:8px;letter-spacing:1.3px;margin-bottom:29px}h1{font-size:clamp(46px,10vw,72px);letter-spacing:-2.7px;margin-bottom:23px}.intro{font-size:18px}.hero-detail{font-size:12px}.button{margin-top:12px}.hero-bottom{padding-top:30px}.hero-visual{min-height:0;aspect-ratio:1 / 1.06}.visual-top,.visual-bottom{left:24px;right:24px}.visual-top{top:23px}.visual-bottom{bottom:23px}.visual-bottom h2{font-size:18px}.ribbon{flex-wrap:wrap;gap:14px 22px;padding:23px 6%;font-size:9px}.ribbon i{font-size:14px}.ribbon i:nth-of-type(4){display:none}.section{padding:55px 6%}.section-top>span{display:none}.section h2{font-size:41px;letter-spacing:-1.8px}.section-heading{display:block}.section-heading>p{font-size:12px}.gallery-bar{margin:20px 0 24px;gap:12px}.filters{gap:2px}.filters button{padding:9px 10px;font-size:10px}.filters button span{margin-left:5px}#result-count{display:none}.gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:25px 12px}.project-number{top:9px;left:9px;padding:5px;font-size:8px}.zoom{right:9px;bottom:9px;width:27px;height:27px}.project-caption{padding-top:10px}.project-caption h3{font-size:11px;line-height:1.5;margin-bottom:4px}.project-caption>span{font-size:9px}.services-layout{grid-template-columns:1fr;gap:35px}.services-layout>div>p{font-size:12px}.service-list>div{grid-template-columns:20px 100px 1fr;padding:20px 0}.service-list p{font-size:10px}.steps{grid-template-columns:1fr;gap:22px;margin-top:35px}.steps article>span{padding-bottom:15px}.steps h3{margin-top:19px;font-size:20px}.steps p{max-width:none;font-size:12px;margin-bottom:5px}.contact>div{align-items:flex-end;gap:10px}.contact h2{font-size:38px;margin-bottom:20px}.contact-arrow{height:48px;width:48px;font-size:29px;margin-bottom:20px}.contact-email{font-size:15px;gap:22px}.contact>p:not(.eyebrow){font-size:12px}.footer-top{flex-wrap:wrap;gap:24px}.footer-top p{order:3;width:100%;font-size:10px}.footer-bottom{gap:20px;flex-direction:column}.footer-bottom button{margin:0 22px 0 0}.legal{padding:50px 24px}dialog{padding:20px;max-width:94vw}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Palette sombre Horus */
:root{color-scheme:dark;--surface:#10120f;--raised:#191d17;--ink:#f1f0e8;--muted:#b0b6a8;--line:#343b2e;--gold:#d6bc80}
body,header,nav{background:var(--surface);color:var(--ink)}
header,.ribbon,.gallery-bar,.process,.steps article>span{border-color:var(--line)}
em,.services em,.ribbon i,.steps article>span{color:var(--gold)}
.dot{background:var(--gold)}
nav a:hover,.text-link:hover,.contact-email:hover,.header-cta:hover{color:var(--gold)}
.hero-detail,.hero-bottom,.section-top,.section-heading>p,.project-caption>span,#result-count,.steps p,.contact>p:not(.eyebrow){color:var(--muted)}
.hero-bottom a{border-color:#59614f}
.dark,.filters button[aria-pressed=true],.contact-arrow{background:var(--gold);color:#151910}
.button:hover,.contact-arrow:hover{background:#e8ce91;color:#151910}
.filters button span{color:var(--muted)}
.filters button[aria-pressed=true] span{color:#3e452f}
.filters button:hover{border-color:#7e896e}
.zoom{background:var(--gold);color:#151910}
.services{background:var(--raised)}
.services .section-top,.services-layout>div>p,.service-list p,.service-no{color:var(--muted)}
.service-list>div,.text-link{border-color:#434d39}
.contact{background:#1c2119}
.contact-email{border-color:#727e61}
footer{background:#0a0d09}
.footer-top p,.footer-bottom{color:var(--muted)}
.footer-bottom{border-color:var(--line)}
dialog,.skip{background:var(--raised);color:var(--ink)}
dialog .close{background:#252d1f;border-color:#6f7b5e;color:var(--ink)}
dialog::backdrop{background:#050704df}
a:focus-visible,button:focus-visible{outline-color:#edcf88}
@media(max-width:760px){nav{background:var(--surface);border-color:var(--line)}}
