@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600&display=swap');
:root{--ink:#172832;--navy:#112135;--paper:#f4f2ed;--muted:#67716e;--line:#d6d8cf;--accent:#bdc9a9}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',Arial,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}img{max-width:100%;display:block}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #677e9e;outline-offset:6px}header{height:100px;padding:0 4.4%;display:flex;align-items:center;justify-content:space-between;background:var(--paper);position:relative;z-index:10}.brand{display:flex;align-items:center;gap:14px;font-weight:700;letter-spacing:2px;font-size:16px}.brand small{display:block;font-size:8px;letter-spacing:1.6px;margin-top:7px}.monogram{font-family:Arial,sans-serif;font-weight:900;font-style:italic;font-size:42px;letter-spacing:-6px;padding-right:10px}.monogram span{color:#71839a;font-size:37px;margin-left:6px}nav{display:flex;align-items:center;gap:30px;font-size:12px}nav>a{padding:12px 0}.nav-contact{border-bottom:1px solid var(--ink);margin-left:10px}.nav-contact span{margin-left:30px}.menu{display:none}.hero{display:grid;grid-template-columns:55% 45%;min-height:690px;background:var(--navy);color:var(--paper)}.hero-copy{padding:65px 8% 32px}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:600;line-height:1.6;margin:0 0 28px}.eyebrow i{display:inline-block;width:6px;height:6px;background:var(--accent);border-radius:50%;margin-right:10px}h1,h2,h3,p{margin-top:0}h1,h2{font-family:Manrope,Arial,sans-serif;font-weight:400;letter-spacing:-2.8px;line-height:1.11}h1{font-size:clamp(43px,4.4vw,76px);margin-bottom:27px}em{font-family:Georgia,serif;font-weight:400}h1 em{color:var(--accent)}.intro{line-height:1.8;font-size:14px;color:#c4cbd0;margin-bottom:30px}.button{display:inline-flex;gap:35px;align-items:center;justify-content:space-between;background:var(--ink);color:white;padding:19px 24px;font-size:12px;border:1px solid transparent;transition:.25s}.button:hover{background:#314b50;transform:translateY(-2px)}.button.light{color:var(--ink);background:var(--paper)}.button.light:hover{background:var(--accent)}.hero-foot{display:flex;align-items:center;justify-content:space-between;margin-top:58px;color:#bbc5cb;font-size:10px;line-height:1.7}.hero-foot a{border:1px solid #5c6973;border-radius:50%;width:40px;height:40px;text-align:center;font-size:22px}.hero-visual{position:relative;overflow:hidden}.hero-visual>img{height:100%;width:100%;object-fit:cover;object-position:52% 45%;filter:brightness(.73);animation:slow-reveal 1.4s ease-out}.hero-visual:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(9,18,22,.8),transparent 55%)}.visual-label{position:absolute;bottom:46px;left:9%;right:8%;z-index:2}.visual-label>span{font-size:8px;letter-spacing:2px}.visual-label p{font:italic 37px/1.15 Georgia,serif;margin:15px 0 26px}.frame-line{position:absolute;inset:28px;border:1px solid #ffffff40;z-index:1}.materials-strip{padding:27px 5%;display:flex;justify-content:space-between;align-items:center;font-size:11px;border-bottom:1px solid var(--line);gap:15px}.materials-strip b{font-size:19px;color:#71839a}.section{padding:100px 7%}.section-top{display:grid;grid-template-columns:1fr 2fr;gap:30px;margin-bottom:48px}.section-top>.eyebrow{padding-top:10px;color:var(--muted)}h2{font-size:clamp(36px,4vw,58px);margin-bottom:24px}h2 em{color:#71839a}.section-top>div>p{font-size:14px;line-height:1.8;color:var(--muted);max-width:480px}.expertise-list{margin-left:33.333%}details{border-top:1px solid var(--line)}details:last-child{border-bottom:1px solid var(--line)}summary{list-style:none;display:flex;align-items:center;padding:27px 0;cursor:pointer;gap:22px}summary::-webkit-details-marker{display:none}.number{font-size:10px;color:#71839a}h3{font-size:23px;font-weight:400;letter-spacing:-.7px;margin:0}.plus{margin-left:auto;font-size:23px;font-weight:400}details[open] .plus{transform:rotate(45deg)}.detail-content{padding:0 40px 30px;max-width:590px;line-height:1.8;font-size:13px;color:var(--muted)}.detail-content a{color:var(--ink);border-bottom:1px solid var(--line);padding-bottom:5px}.projects{background:#e9ece5}.filters{display:flex;gap:8px;margin-bottom:36px;flex-wrap:wrap}.filters button{border:1px solid #bcc4b7;background:none;border-radius:30px;padding:10px 20px;font-size:11px}.filters button.active{background:var(--ink);border-color:var(--ink);color:white}.filters sup{margin-left:7px;font-size:8px}.gallery{display:grid;grid-template-columns:1fr 1fr;gap:48px 30px}.project{display:block;text-align:left;border:0;padding:0;background:none}.project[hidden]{display:none}.project:nth-child(even){padding-top:65px}.photo{height:430px;position:relative;overflow:hidden;background:#d3d6cd}.photo img{height:100%;width:100%;object-fit:cover;transition:transform .65s}.project:hover img{transform:scale(1.035)}.project:first-child .photo img{object-position:50% 45%}.zoom{position:absolute;bottom:20px;right:20px;width:43px;height:43px;background:var(--paper);border-radius:50%;display:grid;place-items:center;font-size:22px}.project-caption{display:flex;justify-content:space-between;gap:20px;padding-top:22px;align-items:end}.project-caption h3{font-size:24px;line-height:1.2}.project-caption>span{font-size:8px;letter-spacing:1px;max-width:130px;line-height:1.6;text-align:right}.text-link{display:flex;justify-content:space-between;border-bottom:1px solid #b9c3d0;font-size:13px;padding:24px 0 15px;margin-top:40px}.text-link span{font-size:23px}.about{display:grid;grid-template-columns:1fr 1fr;gap:7%;align-items:center}.about h2{font-size:43px}.about p:not(.eyebrow){font-size:14px;line-height:1.9;color:var(--muted);max-width:470px}.about .button{margin-top:15px}.about figure{margin:0}.about img{width:100%;box-shadow:16px 16px 0 #e2e5e9}.about figcaption{font-size:8px;letter-spacing:1.5px;margin-top:34px;color:var(--muted)}.contact{background:var(--navy);color:var(--paper)}.contact>.eyebrow{color:var(--accent)}.contact-heading{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #43505b;padding-bottom:42px}.contact h2{font-size:clamp(54px,6.6vw,95px);margin-bottom:0}.contact h2 em{color:var(--accent)}.round-arrow{border:1px solid #768079;border-radius:50%;width:105px;height:105px;display:grid;place-items:center;font-size:50px;transition:.3s}.round-arrow:hover{background:var(--accent);color:var(--ink)}.contact-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:40px;padding-top:44px}.label{font-size:9px;letter-spacing:1.5px;color:#b6c0c7;display:block;margin-bottom:24px}.phone{font-size:30px;display:block;letter-spacing:-1px}.mail{display:inline-block;margin-top:14px;font-size:14px}.contact-grid p,.contact-grid address{font-style:normal;font-size:13px;line-height:1.8;color:#b6c0c7}.contact-grid p{margin-top:20px}.underlined{display:inline-block;border-bottom:1px solid #647078;font-size:12px;padding:8px 0;margin-top:12px}footer{padding:40px 4.4%;display:flex;align-items:center;justify-content:space-between;gap:30px}footer>div{display:flex;gap:25px;align-items:center;font-size:9px;color:var(--muted)}footer button{background:none;border:0;padding:0;font-size:9px}.skip{position:fixed;top:-100px;background:white;padding:15px;z-index:99}.skip:focus{top:0}dialog{border:0;padding:0;width:min(950px,92vw);max-height:90vh;background:var(--paper);color:var(--ink)}dialog::backdrop{background:#0a1825d9;backdrop-filter:blur(7px)}dialog>img{width:100%;height:50vh;object-fit:contain;background:#172832}.dialog-copy{padding:38px}.dialog-copy h2{font-size:34px}.dialog-copy p{font-size:13px;line-height:1.9}.dialog-copy a:not(.button){text-decoration:underline}.close{position:absolute;right:12px;top:12px;border:0;background:var(--paper);border-radius:50%;width:40px;height:40px;z-index:5}#legal-dialog{max-width:700px}.note{background:#e8ecf1;padding:15px}body.modal-open{overflow:hidden}@keyframes slow-reveal{from{transform:scale(1.05);opacity:.4}to{transform:scale(1);opacity:1}}@media(min-width:1600px){body{max-width:1920px;margin:auto}.hero-copy{padding-top:90px}.hero{min-height:800px}}@media(max-width:1000px){header{height:85px}.brand{font-size:13px}nav{gap:17px;font-size:11px}.nav-contact{margin:0}.nav-contact span{margin-left:10px}.hero-copy{padding:50px 7% 25px}.hero{min-height:640px}h1{font-size:48px}.hero-foot{margin-top:45px}.section{padding:75px 5%}.section-top{grid-template-columns:1fr 2.4fr}.expertise-list{margin-left:29.4%}.photo{height:340px}.project-caption{display:block}.project-caption>span{display:block;text-align:left;margin-top:10px;max-width:none}.about h2{font-size:35px}.contact-grid{gap:25px}.phone{font-size:24px}footer{align-items:start}footer>div{flex-wrap:wrap;max-width:310px}}@media(max-width:700px){header{padding:0 6%;height:80px}.brand{font-size:12px}.brand small{font-size:6px}.monogram{font-size:36px}.menu{display:flex;background:none;border:0;gap:13px;font-size:12px;align-items:center}.menu span{font-size:18px}nav{display:none;position:absolute;left:0;right:0;top:80px;background:var(--paper);padding:20px 6%;box-shadow:0 12px 20px #0002}nav.open{display:flex;flex-direction:column;align-items:stretch;gap:5px}nav a{padding:14px 0}.hero{grid-template-columns:1fr}.hero-copy{padding:45px 7% 30px}h1{font-size:clamp(42px,10.8vw,66px);letter-spacing:-2px}.eyebrow{font-size:8px}.intro{font-size:13px}.hero-foot{margin-top:36px}.hero-visual{height:440px}.hero-visual>img{object-position:50% 40%}.visual-label{bottom:35px}.visual-label p{font-size:32px}.materials-strip{padding:22px 7%;display:grid;grid-template-columns:1fr 1fr;font-size:10px;gap:17px}.materials-strip b{display:none}.section{padding:65px 7%}.section-top{display:block;margin-bottom:30px}.section-top>.eyebrow{margin-bottom:23px}h2{font-size:38px;letter-spacing:-1.7px}.expertise-list{margin-left:0}summary{gap:13px;padding:23px 0}summary h3{font-size:20px}.detail-content{padding-left:28px;padding-right:10px}.gallery{gap:35px;grid-template-columns:1fr}.project:nth-child(even){padding:0}.photo{height:380px}.project-caption{display:flex;align-items:start}.project-caption h3{font-size:23px}.project-caption>span{max-width:100px;text-align:right;font-size:7px;margin-top:3px}.about{grid-template-columns:1fr;gap:40px}.about h2{font-size:36px}.about img{box-shadow:10px 10px 0 #e2e5e9}.contact-heading{align-items:end;gap:10px}.contact h2{font-size:52px}.round-arrow{width:60px;height:60px;font-size:28px;flex-shrink:0}.contact-grid{grid-template-columns:1fr 1fr;gap:35px 20px}.contact-grid>div:first-child{grid-column:1/-1}.phone{font-size:33px}.label{font-size:8px;margin-bottom:18px}.underlined{font-size:11px}footer{flex-direction:column;padding:35px 7%}footer>div{max-width:none;font-size:8px;gap:20px}.dialog-copy{padding:27px}dialog>img{height:45vh}.dialog-copy h2{font-size:29px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
/* Direction — bleu de marque et matières naturelles */
:root{--ink:#111c36;--navy:#142552;--paper:#f8f7f4;--muted:#596477;--line:#dce1eb;--accent:#dce3ed}
::selection{background:#dce3ed;color:#111c36}
header{height:88px;position:sticky;top:0;background:#f8f7f4f2;backdrop-filter:blur(18px);border-bottom:1px solid #111c3610;transition:box-shadow .3s}header.scrolled{box-shadow:0 4px 30px #101c3610}.monogram span{color:#142552}.nav-contact{background:#142552;color:white;padding:14px 20px;border:0;border-radius:30px;transition:background .2s}.nav-contact:hover{background:#111c36}
h1,h2{font-weight:600}h1 em,h2 em{font-family:inherit;font-style:normal;font-weight:600}h2 em{color:#334e76}.hero{grid-template-columns:58% 42%;position:relative;isolation:isolate;background:linear-gradient(120deg,#142552,#21395f 72%);min-height:720px;overflow:hidden}.hero-copy{padding:62px 7% 30px;position:relative;z-index:2}.hero-copy:before{content:'';position:absolute;width:490px;height:490px;border:1px solid #ffffff15;transform:rotate(-25deg);left:-170px;top:150px;z-index:-1}.hero .eyebrow{letter-spacing:1.8px;color:#d9e1ec}.hero h1{font-size:clamp(52px,5.3vw,86px);line-height:1.02;letter-spacing:-4px;margin-bottom:30px}.hero h1 em{color:var(--accent);position:relative}.hero h1 em:after{content:'';position:absolute;bottom:-8px;height:3px;background:var(--accent);width:48px;left:4px}.intro{color:#d6dce5;font-size:15px}.button{border-radius:40px;gap:30px;font-weight:600}.button span{display:inline-grid;place-items:center;font-size:20px;width:25px}.button.light{background:var(--accent);color:#10213b}.button.light:hover{background:white}.hero-foot{color:#c7d0dd;margin-top:45px}.hero-foot a{border-color:#ffffff70;color:white;transition:background .3s,transform .3s}.hero-foot a:hover{background:#ffffff20;transform:translateY(4px)}.hero-visual{margin:22px 22px 22px 0;border-radius:130px 12px 12px 12px}.hero-visual>img{filter:brightness(.86);object-position:55% 45%;transition:transform 1s}.hero-visual:hover>img{transform:scale(1.04)}.frame-line{border-radius:105px 3px 3px 3px;inset:16px}.visual-label p{font:600 40px/1.08 Manrope,Arial,sans-serif;letter-spacing:-1.7px}.visual-label>span{letter-spacing:1.6px}.visual-label>span:first-child{background:var(--accent);color:#14233d;padding:9px 12px;display:inline-block;border-radius:20px;font-weight:700}.visual-label>span:last-child{font-size:7px}.materials-strip{background:var(--accent);color:#14233d;border:0;position:relative;font-weight:700;font-size:12px;padding:28px 5%;letter-spacing:.3px}.materials-strip b{color:#334e76;font-size:26px;display:inline-block;transition:transform .7s}.materials-strip:hover b{transform:rotate(180deg)}
.section-top>.eyebrow,.about>.eyebrow{color:#334e76}.expertise-list{margin-left:25%}summary{transition:padding .25s,background .25s}summary:hover{padding-left:14px;background:#f0f1f3}.number{color:#334e76;font-weight:700}.plus{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:#e8ecf1;color:#334e76}.expertise h3{font-weight:500}.detail-content a{color:#334e76}.projects{background:#eeefef}.filters button{border-color:#ccd2da;font-weight:600;transition:.25s}.filters button.active{background:#142552;border-color:#142552}.filters button:hover{border-color:#142552}.photo{border-radius:9px;background:#e0e3e7}.project:nth-child(even){padding-top:75px}.project-caption h3{font-weight:500}.zoom{background:var(--accent);transition:transform .3s,background .3s}.project:hover .zoom{background:#142552;color:white;transform:rotate(45deg)}.text-link{color:#334e76;font-weight:600;border-color:#b9c3d0}.about img{border-radius:12px;box-shadow:15px 15px 0 #dce3ed}.about .button{background:#142552}.contact{background:#142552;position:relative;overflow:hidden}.contact:before{content:'↗';position:absolute;right:2%;top:-100px;font-size:680px;line-height:1;color:#ffffff06;pointer-events:none}.contact>*{position:relative}.contact>.eyebrow{color:var(--accent)}.contact h2{font-weight:600;letter-spacing:-4px}.contact-heading{border-color:#ffffff40}.round-arrow{background:var(--accent);color:#17243a;border:0;transition:transform .35s}.round-arrow:hover{transform:rotate(45deg);background:white}.label,.contact-grid p,.contact-grid address{color:#d6dce5}.phone{font-weight:600}.underlined{border-color:#ffffff60}.contact-grid a:hover{color:var(--accent)}footer{background:#111c36;color:white}footer>div{color:#c7d0e0}footer .monogram span{color:var(--accent)}.progress{position:fixed;z-index:20;top:0;left:0;height:3px;width:100%;background:#dce3ed;transform:scaleX(0);transform-origin:left;pointer-events:none}.reveal{opacity:0;transform:translateY(28px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1)}.reveal.visible{opacity:1;transform:none}.gallery .project:nth-child(even){transition-delay:.1s}.hero-copy>*{animation:rise-in .8s both}.hero-copy h1{animation-delay:.1s}.hero-copy .intro{animation-delay:.2s}.hero-copy .button{animation-delay:.3s}.hero-copy .hero-foot{animation-delay:.4s}@keyframes rise-in{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}
@media(max-width:1000px){.hero h1{font-size:58px;letter-spacing:-3px}.hero-copy{padding-left:8%;padding-right:5%}.hero{min-height:690px}.visual-label p{font-size:33px}.expertise-list{margin-left:20%}.materials-strip{font-size:10px}}
@media(max-width:700px){header{height:80px}nav{top:80px}.nav-contact{padding:14px 20px;margin:10px 0}.hero{grid-template-columns:1fr}.hero-copy{padding:40px 7% 25px}.hero h1{font-size:clamp(46px,12vw,70px);letter-spacing:-2.8px}.hero .eyebrow{font-size:7px}.intro{font-size:13px}.hero-visual{height:390px;margin:0 18px 20px;border-radius:75px 9px 9px 9px}.frame-line{border-radius:60px 3px 3px 3px}.visual-label p{font-size:32px}.materials-strip{display:grid;grid-template-columns:1fr 1fr;font-size:10px;gap:16px;padding:24px 7%}.materials-strip b{display:none}.expertise-list{margin-left:0}.project:nth-child(even){padding-top:0}.contact h2{font-size:49px;letter-spacing:-2.5px}.contact:before{font-size:470px;top:5px;right:-40%}.contact-heading{gap:5px}.about h2{font-size:34px}.section-top h2{font-size:37px}.gallery .project:nth-child(even){transition-delay:0s}}
@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none}.hero-copy>*{animation:none}.progress{display:none}}

/* Identité JM conservée, traitement sobre et architectural. */
header{height:98px;background:#f8f7f4f5}.brand{gap:20px}.brand-logo{width:150px;height:78px;object-fit:contain}.brand-location{font-size:8px;font-weight:500;line-height:1.8;letter-spacing:1.5px;border-left:1px solid #ccd2da;padding-left:20px;color:#5c6b7e}.nav-contact{border-radius:3px;font-weight:500;padding:15px 22px}.nav-contact:hover{background:#30466b}.hero{background:#142552;grid-template-columns:55% 45%;min-height:685px}.hero-copy{padding-top:70px}.hero-copy:before{display:none}.hero h1{font-weight:500;font-size:clamp(52px,5.1vw,82px);letter-spacing:-3.5px;line-height:1.1}.hero h1 em{color:#cad5e5;font-weight:400}.hero h1 em:after{display:none}.hero .eyebrow{font-weight:500}.eyebrow i{background:#d0dae8}.hero-visual{margin:24px 24px 24px 0;border-radius:2px}.frame-line{border-radius:0;inset:15px;border-color:#ffffff25}.hero-visual>img{filter:brightness(.88)}.visual-label>span:first-child{background:transparent;color:white;border:1px solid #ffffff80;border-radius:0;font-weight:500;font-size:8px;letter-spacing:2px;padding:8px 11px}.visual-label p{font-weight:400}.button{border-radius:3px;font-weight:500;padding:18px 23px}.button.light{background:#f5f4f0;color:#142552}.button.light:hover{background:#dce3ed}.materials-strip{background:#f1f0ed;border-bottom:1px solid #d8dce1;font-weight:500;letter-spacing:.5px}.materials-strip b{font-size:15px;color:#8493a7}.materials-strip:hover b{transform:none}h2{font-weight:500}h2 em{font-weight:400;color:#64758c}.section-top>.eyebrow{color:#64758c}.photo{border-radius:2px}.zoom{background:#f8f7f4;color:#142552}.project:hover .zoom{transform:translate(2px,-2px);background:#142552}.about img{border-radius:2px;box-shadow:12px 12px 0 #e1e5eb}.contact{background:#142552}.contact:before{display:none}.contact h2{font-weight:400}.contact h2 em{color:#cad5e5}.round-arrow{background:transparent;color:white;border:1px solid #7c8da9}.round-arrow:hover{transform:translate(3px,-3px);background:#f8f7f4;color:#142552}.contact>.eyebrow{color:#c7d0dd}.progress{height:2px;background:#9eacc0}footer{background:#f8f7f4;color:#142552;border-top:1px solid #dce1e8}footer>div{color:#58687e}footer .brand-logo{width:135px;height:75px}.note{background:#e8ecf1}a:focus-visible,button:focus-visible,summary:focus-visible{outline-color:#8a9db8}
@media(max-width:1000px){.brand-location{display:none}.brand-logo{width:135px}.hero h1{font-size:56px}.hero-copy{padding-top:65px}.hero{min-height:650px}}
@media(max-width:700px){header{height:88px}.brand-logo{width:126px;height:72px}nav{top:88px}.hero{grid-template-columns:1fr}.hero-copy{padding:44px 7% 28px}.hero h1{font-size:clamp(44px,11.5vw,64px);letter-spacing:-2.5px}.hero-visual{height:390px;margin:0 20px 20px;border-radius:2px}.frame-line{border-radius:0}.hero-foot{margin-top:32px}.contact h2{font-size:48px;letter-spacing:-2px}.contact-heading{gap:10px}.brand-location{display:none}footer .brand-logo{width:135px}.nav-contact{margin:10px 0}.materials-strip{font-size:10px}}
/* Photographie d’abord : ivoire, pierre et accents de marque discrets. */
:root{--paper:#f7f6f2;--ink:#252c32;--muted:#666c70;--line:#d9d9d4}.section{padding-top:95px;padding-bottom:95px}header{height:90px;background:#f7f6f2f5}.brand-logo{height:74px}.brand-location{color:#6b7074}.nav-contact{background:#28384f}.nav-contact:hover{background:#142552}h2 em{color:#7e8384}.hero.cinematic{display:block;min-height:660px;height:calc(100svh - 90px);max-height:1000px;background:#4e514c;color:white;position:relative;overflow:hidden;isolation:isolate}.hero-slides,.hero-shade{position:absolute;inset:0;pointer-events:none}.hero-slides{z-index:-3}.hero-slide{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:55% 50%;opacity:0;transform:scale(1.035);transition:opacity 1.7s ease;will-change:opacity}.hero-slide.is-active{opacity:1;animation:cinema-zoom 16s ease-out both}.hero-shade{z-index:-1;background:linear-gradient(90deg,rgba(10,15,16,.57),rgba(10,15,16,.12) 65%,rgba(10,15,16,.06)),linear-gradient(0deg,rgba(10,15,16,.57),transparent 38%)}.cinematic .hero-copy{position:absolute;left:6%;top:50%;transform:translateY(-53%);padding:0;max-width:780px;z-index:2}.cinematic .hero-copy:before{display:none}.cinematic .eyebrow{color:#fff;font-size:10px;text-shadow:0 1px 6px #0005;margin-bottom:28px}.cinematic .eyebrow i{background:#e4e3da}.cinematic h1{font-size:clamp(60px,6.6vw,104px);font-weight:500;letter-spacing:-4.5px;line-height:1.05;text-shadow:0 2px 25px #0002;margin-bottom:30px}.cinematic h1 em{color:white;font-family:Georgia,serif;font-style:italic;font-weight:400;letter-spacing:-4px}.cinematic .intro{color:#fff;font-size:16px;line-height:1.8;margin-bottom:32px;text-shadow:0 1px 7px #0005}.hero-actions{display:flex;align-items:center;gap:30px;flex-wrap:wrap}.hero-secondary{color:white;font-size:12px;padding:12px 0;border-bottom:1px solid #ffffff70}.hero-secondary:hover{border-color:white}.cinematic .button.light{background:#f7f6f2;color:#252c32;box-shadow:0 5px 25px #0001}.cinematic .button.light:hover{background:white;transform:translateY(-3px)}.cinema-bottom{position:absolute;left:6%;right:5%;bottom:35px;display:flex;justify-content:space-between;gap:28px;align-items:end;z-index:2}.scroll-cue{display:flex;gap:12px;align-items:center;font-size:19px}.scroll-cue>span:first-child{font-size:8px;letter-spacing:2px}.scroll-line{height:1px;width:52px;background:#ffffff80;position:relative;overflow:hidden}.scroll-line:after{content:'';position:absolute;inset:0;background:white;animation:scroll-signal 2.4s ease-in-out infinite;transform-origin:left}.slide-caption{text-align:right;margin-left:auto;color:white}.slide-caption>span{font-size:12px;display:block;margin-bottom:10px}.slide-caption small{display:block;font-size:7px;letter-spacing:1.3px;color:#e3e2db}.slide-controls{display:flex;align-items:center;gap:12px}.slide-controls button{background:transparent;border:0;color:#fff9;min-width:36px;min-height:40px;padding:8px;font-size:12px}.slide-controls .selected{color:#fff;font-weight:700;border-bottom:1px solid white}.slide-controls button:hover{color:white;background:#ffffff15}.slide-divider{width:23px;height:1px;background:#ffffff60}#motion-toggle{border:1px solid #ffffff60;border-radius:50%;width:40px;height:40px;margin-left:5px;color:white}.motion-paused .hero-slide.is-active,.motion-paused .scroll-line:after{animation-play-state:paused}.materials-strip{background:#f7f6f2;padding:25px 6%;font-size:11px;color:#5d6369}.materials-strip b{color:#a3a8ac;font-size:11px}.inspiration{display:grid;grid-template-columns:1fr 1.6fr;align-items:center;gap:7%;padding:95px 6%}.inspiration-heading .eyebrow{color:#737a7f;font-size:8px;letter-spacing:1.7px}.inspiration h2{font-size:clamp(38px,4vw,62px);line-height:1.1;letter-spacing:-2.7px;margin-bottom:30px}.inspiration h2 em{font-family:Georgia,serif;font-style:italic;color:#777b76}.inspiration-heading>p:last-child{font-size:14px;line-height:1.9;color:#6a7072;max-width:340px}.inspiration-photo{margin:0;position:relative;overflow:hidden;min-height:470px;background:#ddd}.inspiration-photo>img{width:100%;height:470px;object-fit:cover;object-position:center;transition:transform 1.4s cubic-bezier(.2,.7,.2,1)}.inspiration-photo:hover>img{transform:scale(1.045)}.inspiration-photo:after{content:'';position:absolute;inset:50% 0 0;background:linear-gradient(transparent,#0007);pointer-events:none}.inspiration-photo figcaption{position:absolute;left:24px;top:20px;font-size:7px;color:white;letter-spacing:1px;text-shadow:0 1px 4px #0008;z-index:1}.image-link{position:absolute;bottom:22px;left:25px;right:25px;z-index:2;display:flex;align-items:center;justify-content:space-between;color:white;font-size:12px}.image-link span{width:42px;height:42px;border:1px solid #ffffffb0;border-radius:50%;display:grid;place-items:center;font-size:22px;transition:transform .3s}.image-link:hover span{transform:rotate(45deg)}.expertise{background:#eeefeb}.projects{background:#f7f6f2}.section-top>.eyebrow{color:#777d80}.plus{background:#e0e3e2;color:#3e4b5b}.number{color:#6f7a85}summary:hover{background:#e4e7e4}.photo{background:#e0e2dd}.about{background:#eeefeb}.about img{box-shadow:none}.contact{background:#e4e6e2;color:#252c32}.contact>.eyebrow{color:#657078}.contact h2{font-size:clamp(54px,6.5vw,94px)}.contact h2 em{color:#727b80}.contact-heading{border-color:#bfc7c9}.contact .label,.contact-grid p,.contact-grid address{color:#606a70}.contact .round-arrow{color:#28384f;border-color:#87939c}.contact .round-arrow:hover{background:#28384f;color:white}.contact .underlined{border-color:#9da6ac}.contact-grid a:hover{color:#142552}.contact-grid .phone{font-weight:500}.progress{background:#667582}.reveal{transform:translateY(38px);transition:opacity .95s ease,transform .95s cubic-bezier(.16,.7,.2,1)}.reveal.visible{transform:none}.inspiration-photo.reveal{transform:translateY(45px);transition-duration:1.1s}.inspiration-photo.reveal.visible{transform:none}.hero-copy>*{animation-duration:1.1s}.project .photo:after{content:'';position:absolute;inset:0;box-shadow:inset 0 0 0 0 #ffffff80;transition:box-shadow .5s;pointer-events:none}.project:hover .photo:after{box-shadow:inset 0 0 0 9px #ffffff40}@keyframes cinema-zoom{from{transform:scale(1.035)}to{transform:scale(1.105)}}@keyframes scroll-signal{0%,100%{transform:scaleX(.2);opacity:.4}50%{transform:scaleX(1);opacity:1}}
@media(max-width:1000px){.hero.cinematic{min-height:650px}.cinematic h1{font-size:72px}.hero-actions{gap:22px}.inspiration{gap:5%}.inspiration h2{font-size:44px}.inspiration-photo,.inspiration-photo>img{min-height:410px;height:410px}.slide-caption>span{font-size:10px}.slide-caption small{font-size:6px}.cinema-bottom{gap:14px}.inspiration-heading .eyebrow{font-size:7px}}
@media(max-width:700px){header{height:82px}.brand-logo{height:68px;width:120px}nav{top:82px}.hero.cinematic{height:calc(100svh - 82px);min-height:630px;max-height:950px}.hero-slide{object-position:62% 50%}.hero-shade{background:linear-gradient(90deg,#10161577,#10161520),linear-gradient(0deg,#101615aa,transparent 80%)}.cinematic .hero-copy{left:7%;right:6%;top:43%;max-width:none;transform:translateY(-44%)}.cinematic .eyebrow{font-size:7px;letter-spacing:1.1px;line-height:1.8;margin-bottom:23px}.cinematic h1{font-size:clamp(43px,11.8vw,70px);line-height:1.08;letter-spacing:-2.4px;margin-bottom:24px}.cinematic h1 em{letter-spacing:-2.4px}.cinematic .intro{font-size:13px;margin-bottom:26px}.hero-actions{display:flex;align-items:start;flex-direction:column;gap:13px}.cinematic .button.light{font-size:11px;padding:15px 18px}.hero-secondary{font-size:11px;padding:8px 0}.cinema-bottom{left:7%;right:7%;bottom:22px;display:grid;grid-template-columns:1fr auto;gap:20px 15px;align-items:center}.scroll-cue{display:none}.slide-caption{grid-column:1/-1;text-align:left;margin-left:0;order:2}.slide-caption>span{font-size:11px;margin-bottom:8px}.slide-caption small{font-size:6px;letter-spacing:1px}.slide-controls{justify-self:start;grid-column:1/-1;gap:12px}.slide-controls button{min-height:36px}#motion-toggle{height:36px;width:36px}.materials-strip{padding:23px 7%;font-size:9px}.section{padding:65px 7%}.inspiration{display:block;padding:60px 7%}.inspiration-heading{margin-bottom:30px}.inspiration h2{font-size:41px}.inspiration-heading>p:last-child{max-width:100%;font-size:13px}.inspiration-photo,.inspiration-photo>img{height:390px;min-height:390px}.inspiration-photo>img{object-position:55% 50%}.inspiration-photo figcaption{left:16px;font-size:6px}.image-link{left:16px;right:16px;font-size:11px}.contact h2{font-size:48px}.contact-grid .phone{font-size:31px}}
@media(prefers-reduced-motion:reduce){.hero-slide.is-active{animation:none;transform:scale(1.035)}.hero-slide{transition:none}.scroll-line:after{animation:none}.inspiration-photo.reveal{transform:none}.reveal{opacity:1;transform:none}.progress{display:none}}
