:root{--paper:#f5f3ee;--ink:#252922;--muted:#77786e;--line:#d9d9cf;--accent:#b2a78d;--serif:Georgia,'Times New Roman',serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.75 Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}img{display:block;width:100%;object-fit:cover}button{color:inherit}::selection{background:#c9c1ae}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-weight:400}h1,h2{font-family:var(--serif);letter-spacing:-.045em;line-height:1.1}h2{font-size:clamp(38px,4.5vw,68px)}p{color:#666b60}header{height:108px;padding:0 5.5%;display:flex;align-items:center;justify-content:space-between;position:absolute;top:0;width:100%;z-index:20;color:white;border-bottom:1px solid #ffffff30}header.inner{position:relative;color:var(--ink);border-color:var(--line)}.brand{display:inline-flex;flex-direction:column;line-height:1}.brand>span{font-size:27px;letter-spacing:.12em;font-weight:500}.brand-dot{color:#c6baa0}.brand small{font-size:9px;letter-spacing:.43em;padding-top:10px}.brand small,.eyebrow{font-weight:500}#navigation{display:flex;gap:30px;align-items:center}#navigation a{font-size:12px;position:relative}#navigation a:after{content:'';position:absolute;bottom:-8px;height:1px;background:currentColor;left:0;width:0;transition:width .3s}#navigation a:hover:after,#navigation a.active:after{width:100%}#navigation a:last-child{border:1px solid #a5a99b80;padding:10px 20px}#menu-toggle{display:none}.hero{height:100svh;min-height:680px;max-height:1150px;position:relative;display:grid;place-items:center;color:white;overflow:hidden}.hero>img{position:absolute;height:100%;object-position:50% 55%;animation:hero-in 1.5s ease both}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#0c1b2044,#0b211c24 40%,#10261f75)}.hero-content{position:relative;z-index:1;text-align:center;padding:120px 24px 100px;animation:fade-in 1.1s .2s both}.eyebrow{font-size:10px;letter-spacing:.23em;text-transform:uppercase;display:block;margin-bottom:24px}.hero .eyebrow{color:#efeee7;font-size:10px}.hero h1{font-size:clamp(58px,7.4vw,112px);margin:24px 0;letter-spacing:-.055em}.hero h1 span{display:block;font-size:.62em;font-style:italic;margin-top:2px;font-weight:normal}.hero .slogan{font:italic 23px var(--serif);color:#f5f2ea;margin:30px 0 40px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:44px;padding:14px 0;border:0;border-bottom:1px solid currentColor;font-size:11px;letter-spacing:.1em;background:transparent;text-transform:uppercase;transition:gap .3s}.button:hover{gap:58px}.hero .button{border:1px solid #ffffff90;padding:16px 24px;text-transform:none;letter-spacing:.03em;backdrop-filter:blur(4px)}.hero-bottom{position:absolute;bottom:34px;left:5.5%;right:5.5%;z-index:1;display:flex;justify-content:space-between;font-size:9px;letter-spacing:.17em;text-transform:uppercase}.scroll-mark{display:flex;gap:18px;align-items:center}.scroll-mark:before{content:'';width:1px;height:36px;background:#ffffff80}.section{padding:110px 8%}.intro{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center}.intro-copy{max-width:520px}.intro h2 em{font-weight:400}.intro p{font-size:14px;margin-bottom:20px}.intro .button{margin-top:10px}.portrait{height:570px;position:relative;background:#dddcd1;display:flex;align-items:flex-end;overflow:hidden}.portrait img{height:100%;filter:brightness(.8)}.portrait-label{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;background:#29372d66;color:white;text-align:center}.portrait-label svg{width:70px;height:70px;stroke:#f6f3ea80;fill:none;stroke-width:.7;margin-bottom:25px}.portrait-label span{font:italic 30px var(--serif)}.portrait-label small{font-size:10px;letter-spacing:.1em;margin-top:15px}.photo-strip{overflow:hidden;padding-bottom:80px}.strip-heading{display:flex;justify-content:space-between;padding:0 8% 24px;align-items:center;font-size:10px;letter-spacing:.17em;text-transform:uppercase}.strip-heading span:last-child{color:var(--muted);font-size:9px}.strip-track{display:flex;gap:0;width:max-content;animation:marquee 90s linear infinite}.strip-track:hover,.photo-strip.paused .strip-track,.strip-track:focus-within{animation-play-state:paused}.strip-track button{margin-right:22px;position:relative;padding:0;border:0;width:330px;height:235px;overflow:hidden;background:#ccc}.strip-track img{height:100%;transition:transform .6s}.strip-track button:hover img{transform:scale(1.04)}.strip-toggle{border:0;background:none;font-size:10px;letter-spacing:.1em}.universes{padding-top:40px;padding-bottom:110px;text-align:center}.universes h2{font-size:48px;margin-bottom:50px}.universe-grid{display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.universe{padding:40px 15px;display:flex;align-items:center;flex-direction:column;gap:24px;transition:background .3s}.universe+.universe{border-left:1px solid var(--line)}.universe:hover{background:#eae7dd}.universe svg{height:37px;width:42px;fill:none;stroke:var(--ink);stroke-width:1.2}.universe span{font-size:12px}.universe b{font-size:17px;font-weight:400;color:var(--muted)}footer{background:#242a24;color:#efeee7;padding:65px 8% 18px}.footer-top{display:grid;grid-template-columns:1fr 1fr 1fr;gap:7%;padding-bottom:65px;align-items:start}.footer-top p{font:30px/1.4 var(--serif);color:#e9e6dc}.footer-top .eyebrow{font-size:9px;color:#b8bcae;margin-bottom:15px}.footer-contact{font:25px var(--serif);display:block;margin-bottom:18px}.footer-top small{display:block;color:#b8bcae;font-size:10px}.footer-bottom{border-top:1px solid #ffffff20;padding-top:24px;display:flex;justify-content:space-between;font-size:9px;color:#b8bcae}.footer-bottom>div{display:flex;gap:23px}.text-button{border:0;background:none;padding:0;color:inherit;font-size:inherit}.demo-note{font-size:9px;color:#a3aa9a;margin-top:24px}.page-top{padding:80px 8% 60px;max-width:1000px}.page-top h1{font-size:clamp(52px,7vw,92px);margin:0 0 25px}.page-top p{max-width:580px}.page-top .eyebrow{color:var(--muted)}.gallery-covers{padding:0 8% 110px;display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.gallery-cover{position:relative;height:510px;overflow:hidden;color:white;display:flex;align-items:end;padding:30px}.gallery-cover img{position:absolute;inset:0;height:100%;transition:transform .7s}.gallery-cover:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 40%,#142019b0)}.gallery-cover:hover img{transform:scale(1.04)}.gallery-cover div{z-index:1;position:relative;width:100%}.gallery-cover small{font-size:10px;letter-spacing:.15em}.gallery-cover h2{font-size:35px;letter-spacing:-.03em;margin:15px 0 0}.gallery-cover .arrow{float:right;font:26px Arial}.gallery-tools{padding:0 8% 30px;display:flex;flex-wrap:wrap;gap:25px;font-size:11px}.gallery-tools .active{border-bottom:1px solid}.masonry{columns:3;column-gap:24px;padding:0 8% 100px}.photo-item{display:block;margin-bottom:24px;border:0;padding:0;background:transparent;width:100%;overflow:hidden;position:relative}.photo-item img{height:auto;transition:transform .7s}.photo-item:hover img{transform:scale(1.03)}.photo-item span{position:absolute;right:15px;bottom:12px;color:white;font-size:22px}.service{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center;padding:25px 8% 90px;scroll-margin-top:30px}.service:nth-child(odd) .service-image{order:2}.service-image{height:430px;overflow:hidden}.service-image img{height:100%}.service h2{font-size:43px}.service p{font-size:14px}.service .eyebrow{margin-bottom:20px;color:var(--muted)}.coming{min-height:630px;display:grid;grid-template-columns:1.1fr 1fr;margin:40px 8% 100px;background:#eae7de}.coming>img{height:630px}.coming>div{align-self:center;padding:60px}.coming h1{font:60px var(--serif);letter-spacing:-.04em}.coming p{font-size:16px}.about-layout{display:grid;grid-template-columns:1fr 1fr;gap:10%;padding:0 8% 100px;align-items:center}.about-layout p{font-size:14px}.contact-layout{display:grid;grid-template-columns:1fr 1.6fr;gap:10%;padding:0 8% 100px}.contact-layout h2{font-size:35px}.contact-details{border-top:1px solid var(--line);padding:30px 0;margin-top:25px}.pending{font-size:12px;color:var(--muted)}.contact-form{border-top:1px solid var(--line);padding-top:28px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:25px}.field{display:flex;flex-direction:column;margin-bottom:25px}.field label{font-size:11px;margin-bottom:8px}.field input,.field select,.field textarea{width:100%;border:0;border-bottom:1px solid #bfbfb2;background:transparent;border-radius:0;padding:12px 0;color:var(--ink);outline-offset:5px}.field textarea{resize:vertical}.consent{display:flex;gap:12px;align-items:start;font-size:11px;color:var(--muted);margin:20px 0}.consent input{margin-top:5px}.consent a{text-decoration:underline}.form-notice{background:#e8e5d9;padding:14px 18px;font-size:12px;line-height:1.6}.legal{padding:0 8% 100px;max-width:960px}.legal h2{font:30px var(--serif);margin-top:35px}.legal p,.legal li{font-size:14px}.legal .form-notice{margin-bottom:30px}dialog{border:0}dialog::backdrop{background:#111b15eF}#lightbox{background:transparent;color:white;max-width:none;width:100vw;height:100svh;padding:50px 70px;margin:0;overflow:hidden}#lightbox[open]{display:grid;grid-template-columns:45px 1fr 45px;align-items:center}#lightbox figure{margin:0;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:0}#lightbox img{object-fit:contain;width:100%;height:calc(100% - 40px)}#lightbox figcaption{font-size:11px;margin-top:15px}#lightbox button{border:0;background:transparent;color:white;font-size:26px;padding:10px}.light-close{position:absolute;top:12px;right:25px}#demo-dialog{max-width:580px;padding:50px;background:var(--paper);color:var(--ink)}#demo-dialog h2{font-size:38px}#demo-dialog p{font-size:14px}.dialog-close{position:absolute;top:12px;right:15px;background:none;border:0}.skip{position:fixed;left:20px;top:-100px;background:var(--paper);padding:12px;z-index:100}.skip:focus{top:10px}:focus-visible{outline:2px solid #9e8a58;outline-offset:6px}body.modal-open{overflow:hidden}.reveal{animation:fade-in .8s both}@keyframes marquee{to{transform:translateX(-50%)}}@keyframes fade-in{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes hero-in{from{transform:scale(1.04);opacity:.5}to{transform:scale(1);opacity:1}}@media(min-width:1600px){.section,.page-top,.gallery-covers,.service,.about-layout,.contact-layout{padding-left:max(8%,calc((100vw - 1400px)/2));padding-right:max(8%,calc((100vw - 1400px)/2))}}@media(max-width:1000px){#navigation{gap:16px}.intro{gap:6%}.portrait{height:480px}.gallery-cover{height:420px;padding:20px}.gallery-cover h2{font-size:29px}.universe{padding:30px 8px}.universe span{font-size:10px}.coming>div{padding:35px}.coming h1{font-size:48px}}@media(max-width:760px){header{height:88px;padding:0 6%}.brand>span{font-size:22px}.brand small{font-size:8px}#menu-toggle{display:block;border:0;background:none;color:inherit;font-size:11px;letter-spacing:.08em}#menu-toggle span{margin-left:10px;font-size:19px}#navigation{display:none;position:absolute;top:88px;left:0;right:0;padding:25px 6%;background:var(--paper);color:var(--ink);box-shadow:0 10px 20px #0001}#navigation.open{display:flex;flex-direction:column;align-items:stretch;gap:8px}#navigation a{font-size:15px;padding:12px}#navigation a:after{display:none}#navigation a:last-child{padding:12px}.hero{min-height:650px;max-height:950px}.hero h1{font-size:65px}.hero .slogan{font-size:20px}.hero .eyebrow{font-size:8px;letter-spacing:.18em}.hero-bottom{font-size:8px;bottom:25px;align-items:center}.hero-bottom>span{max-width:140px}.section{padding:70px 6%}.intro{grid-template-columns:1fr;gap:40px}.intro-copy{max-width:none}.portrait{height:430px}.intro .portrait{order:2}.intro h2{font-size:46px}.strip-heading{padding:0 6% 25px}.strip-heading>span:last-child{display:none}.strip-track button{width:270px;height:200px}.photo-strip{padding-bottom:25px}.universes{padding-top:35px}.universes h2{font-size:38px}.universe-grid{grid-template-columns:repeat(2,1fr)}.universe{border-bottom:1px solid var(--line);padding:30px 10px;gap:17px}.universe+.universe{border-left:0}.universe:nth-child(even){border-left:1px solid var(--line)}.universe:last-child{grid-column:1/-1;border-bottom:0}.universe span{font-size:12px}.universe b{display:none}footer{padding:50px 6% 20px}.footer-top{grid-template-columns:1fr;gap:35px;padding-bottom:35px}.footer-top p{margin:0}.footer-bottom{flex-direction:column;gap:20px}.footer-bottom>div{gap:18px;flex-wrap:wrap}.page-top{padding:55px 6% 40px}.page-top h1{font-size:54px}.gallery-covers{grid-template-columns:1fr;padding:0 6% 65px;gap:20px}.gallery-cover{height:410px}.gallery-cover h2{font-size:36px}.gallery-tools{padding:0 6% 25px;gap:15px;font-size:10px}.masonry{padding:0 6% 65px;columns:2;column-gap:12px}.photo-item{margin-bottom:12px}.service{grid-template-columns:1fr;padding:0 6% 65px;gap:30px}.service:nth-child(odd) .service-image{order:0}.service h2{font-size:38px}.service-image{height:350px}.coming{margin:25px 6% 60px;grid-template-columns:1fr;min-height:0}.coming>img{height:350px}.coming>div{padding:40px 25px}.coming h1{font-size:48px}.about-layout{grid-template-columns:1fr;padding:0 6% 65px;gap:35px}.contact-layout{grid-template-columns:1fr;padding:0 6% 65px;gap:35px}.form-row{grid-template-columns:1fr;gap:0}.legal{padding:0 6% 70px}#lightbox{padding:60px 5px;grid-template-columns:35px 1fr 35px}#lightbox[open]{grid-template-columns:35px 1fr 35px}#demo-dialog{padding:40px 25px;width:90%}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

header{position:fixed;transition:background .3s}header.scrolled{background:#242a24f5}header.inner{position:sticky;top:0;background:var(--paper)}.footer-nav{display:flex;flex-wrap:wrap;gap:12px 25px;padding-bottom:30px;font-size:11px;color:#c6c9bc}

/* Ajustements de la maquette validable — novembre 2026 */
body{font-size:16px}
#navigation a{font-size:13px}
.intro p,.service p,.about-layout p,.legal p,.legal li{font-size:15px}
.button{font-size:12px;gap:0;transition:opacity .3s,border-color .3s}
.button:hover{gap:0;opacity:.72}
.eyebrow{font-size:11px}
.field label,.consent{font-size:12px}
.form-notice{font-size:13px}
.universe-grid{border:0;gap:12px}
.universe,.universe+.universe{border:0;background:transparent}
.universe{gap:24px;transition:color .3s}
.universe:hover{background:transparent;color:#857657}
.universe svg{width:52px;height:48px;stroke:currentColor;stroke-width:1.25;stroke-linecap:round;stroke-linejoin:round;transition:transform .35s}
.universe:hover svg{transform:translateY(-5px)}
.universe span{font-size:13px}
.footer-top{display:flex;flex-direction:column;align-items:center;gap:22px;text-align:center;padding-bottom:45px}
.footer-name{font:clamp(29px,3.5vw,40px)/1.25 var(--serif);letter-spacing:-.025em}
.footer-logo-slot{width:140px;min-height:66px;display:grid;place-items:center;color:#b8bcae}
.footer-logo-slot span{font-size:10px;letter-spacing:.13em;text-transform:uppercase;opacity:.65}
.footer-coordinates{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 30px;font-size:14px}
.footer-coordinates a,.contact-lines a{transition:opacity .3s}
.footer-coordinates a:hover,.contact-lines a:hover{opacity:.7;text-decoration:underline;text-underline-offset:5px}
.social-links{display:flex;align-items:center;gap:20px}
.social-links a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:44px;transition:opacity .3s,transform .3s}
.social-links a:hover{opacity:.65;transform:translateY(-2px)}
.social-links svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}
.social-links .social-dot{fill:currentColor;stroke:none}
.footer-bottom{font-size:10px}
.footer-bottom small{font-size:inherit}
.contact-name{font:24px/1.3 var(--serif);color:var(--ink)}
.contact-lines{display:flex;flex-direction:column;gap:8px;margin-bottom:30px;overflow-wrap:anywhere}
@media(max-width:1000px){.universe span{font-size:12px}}
@media(max-width:760px){#navigation a{font-size:16px}.universe,.universe+.universe,.universe:nth-child(even),.universe:last-child{border:0}.universe span{font-size:13px}.footer-coordinates{flex-direction:column;gap:10px}.footer-bottom{align-items:center;text-align:center}.footer-bottom>div{justify-content:center}.hero .eyebrow{font-size:9px}.field label,.consent{font-size:12px}}
/* WordPress : proportions, état mobile et contenus administrables. */
.photo-placeholder{width:100%;height:100%;min-height:240px;background:#dcded3}
.hero>.photo-placeholder{position:absolute;inset:0}
.portrait-label{background:#29372d66}
.footer-logo-slot img{object-fit:contain;width:140px;max-height:80px;height:auto}
.footer-logo-slot:empty{min-height:40px}
.photo-strip .strip-track>a{flex:0 0 330px;margin:0 22px 0 0;display:block;position:relative;padding:0;width:330px;height:235px;overflow:hidden}
.photo-strip .strip-track>a img{height:100%;width:100%;object-fit:cover;transition:transform .6s}
.photo-strip .strip-track>a:hover img{transform:scale(1.04)}
.masonry .photo-item img{width:100%;height:auto;object-fit:contain}
.gallery-cover>.photo-placeholder{position:absolute;inset:0}
.tb-trap{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}
.form-error{border-left:3px solid #9d473c}.form-success{border-left:3px solid #4e6b45}
.service{scroll-margin-top:140px}
body.admin-bar header{top:32px}
#presentation{scroll-margin-top:130px}
.contact-form button:disabled{opacity:.5;cursor:default}
.legal img{max-width:100%;height:auto}.legal a{text-decoration:underline}
#lightbox figcaption{text-align:center;max-width:800px;line-height:1.5}
@media(max-width:1000px) and (min-width:761px){#navigation{gap:13px}#navigation a{font-size:12px}header{padding:0 4%}}
@media(max-width:782px){body.admin-bar header{top:46px}}
@media(max-width:760px){.photo-strip .strip-track>a{flex-basis:270px;width:270px;height:200px}.service{scroll-margin-top:110px}.footer-name{font-size:31px}.contact-lines{font-size:15px}body.admin-bar header{top:0}#wpadminbar{position:absolute}.hero-content{padding-top:130px}.hero h1{font-size:clamp(46px,16vw,65px)}.hero .eyebrow{max-width:310px;margin-left:auto;margin-right:auto;line-height:1.7}.gallery-covers{grid-template-columns:1fr}.universe-grid{gap:8px}.universe span{line-height:1.5}.page-top h1{font-size:clamp(38px,13vw,54px)}}
