:root{
  --wine:#8f113b;
  --teal:#0d7180;
  --gold:#c99328;
  --ink:#211f1e;
  --muted:#756f6b;
  --line:#ece8e2;
  --paper:#fff;
  --cream:#fbfaf7;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:"Montserrat",Arial,sans-serif;font-weight:300}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
.site-header{height:88px;display:grid;grid-template-columns:120px 1fr 120px;align-items:center;padding:0 5vw;border-bottom:1px solid #eee;background:rgba(255,255,255,.97);position:sticky;top:0;z-index:20}
.mark{width:74px;height:74px;display:flex;align-items:center;justify-content:center;overflow:hidden}
.mark img{width:92px;max-width:none}
.nav{display:flex;align-items:center;justify-content:center;gap:42px;font-family:"Cormorant Garamond",serif;font-size:18px;font-weight:500}
.nav a{position:relative;padding:32px 0 29px}
.nav a::after{content:"";position:absolute;left:50%;right:50%;bottom:20px;height:2px;background:var(--wine);transition:.25s}
.nav a:hover::after,.nav a.active::after{left:16%;right:16%}
.nav a.active{color:var(--wine)}
.socials{display:flex;justify-content:flex-end;gap:14px}
.socials a{width:32px;height:32px;border:1px solid #3c3937;border-radius:50%;display:grid;place-items:center;font-family:Arial,sans-serif;font-weight:500}
.menu-toggle{display:none;background:none;border:0;font-size:28px}
.hero{width:100%;background:#fff;overflow:hidden;display:flex;justify-content:center;align-items:center}
.hero-image{display:block;width:min(100%,1920px);height:auto;object-fit:contain;object-position:center;margin:0 auto;user-select:none;-webkit-user-drag:none}
.welcome{text-align:center;padding:22px 20px 12px}
.welcome h1{margin:0;font:500 28px/1.25 "Cormorant Garamond",serif;letter-spacing:.1px}
.welcome h1 em{font-weight:500}.welcome h1 span{color:var(--teal);font-style:italic}
.welcome p{font:400 18px "Cormorant Garamond",serif;margin:10px 0 12px}
.gold-line{width:72px;height:2px;background:var(--gold);margin:auto}
.section{max-width:1140px;margin:0 auto;padding:36px 32px 56px}
.section-title{text-align:center;border-top:1px solid var(--line);padding-top:20px;margin-bottom:22px}
.section-title h2{font:500 38px/1 "Cormorant Garamond",serif;margin:0}
.section-title p{margin:6px 0 0;color:var(--gold);font-family:"Cormorant Garamond",serif;font-size:18px}
.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:26px}
.work-card h3{font:500 20px "Cormorant Garamond",serif;margin:10px 0 2px}
.work-card p{margin:0;font:400 14px "Cormorant Garamond",serif;color:#4a4643}
.work-image-button{padding:0;border:0;background:none;width:100%;cursor:zoom-in}
.work-image{width:100%;aspect-ratio:1/1;object-fit:cover;object-position:center;transition:transform .35s ease,box-shadow .35s ease}
.work-image-button:hover .work-image{transform:translateY(-3px);box-shadow:0 12px 30px rgba(0,0,0,.10)}
.placeholder{aspect-ratio:1/1;background:#f5f3ef;display:grid;place-items:center;color:#c8c1b8;font-size:42px;border:1px solid #f0ede8}
.center{text-align:center;margin-top:32px}
.outline-button{display:inline-block;border:1px solid var(--wine);padding:10px 26px;color:var(--wine);font:500 16px "Cormorant Garamond",serif;transition:.2s}
.outline-button:hover{background:var(--wine);color:#fff}
.split{display:grid;grid-template-columns:340px 1fr;gap:64px;align-items:center;border-top:1px solid var(--line)}
.split-visual img{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:50%}
.kicker{text-transform:uppercase;letter-spacing:.18em;font-size:12px;color:var(--gold);font-weight:500}
.split h2,.statement h2,.contact h2{font:500 42px/1.08 "Cormorant Garamond",serif;margin:4px 0 20px}
.split-copy>p:not(.kicker),.statement>p:not(.kicker),.contact p{font:300 16px/1.8 "Montserrat",sans-serif;color:#57524f}
.statement{text-align:center;max-width:900px;border-top:1px solid var(--line)}
.statement h2{max-width:750px;margin:6px auto 18px}
.news{border-top:1px solid var(--line)}
.news-card{display:grid;grid-template-columns:1fr 1fr;gap:50px;background:var(--cream);padding:34px 40px}
.news-card h3{font:500 26px/1.2 "Cormorant Garamond",serif;margin:4px 0}.news-card>p{line-height:1.7;color:var(--muted)}
.contact{display:grid;grid-template-columns:180px 1fr;gap:50px;align-items:center;border-top:1px solid var(--line)}
.contact-logo{width:160px}.contact a{color:var(--wine);font-weight:500;word-break:break-word}
.site-footer{background:var(--cream);border-top:1px solid var(--line);padding:22px 6vw;display:grid;grid-template-columns:80px 1.3fr 1.2fr auto;gap:24px;align-items:center;font:400 14px/1.55 "Cormorant Garamond",serif}
.footer-logo{width:58px}.site-footer p{margin:0}.footer-contact{display:flex;flex-direction:column;gap:5px}
.footer-socials{justify-content:flex-start}
.lightbox{width:min(92vw,900px);max-height:92vh;border:0;padding:16px;background:#fff;box-shadow:0 24px 80px rgba(0,0,0,.25)}
.lightbox::backdrop{background:rgba(0,0,0,.75)}
.lightbox img{max-height:74vh;margin:auto;object-fit:contain}
.close{position:absolute;right:18px;top:12px;width:38px;height:38px;border-radius:50%;border:0;background:rgba(255,255,255,.92);font-size:28px;cursor:pointer}
.lightbox-caption{text-align:center;padding:8px 10px 0}.lightbox-caption h3{font:500 24px "Cormorant Garamond",serif;margin:4px}.lightbox-caption p{margin:0;color:var(--muted);font-size:13px}
@media(max-width:1050px){.site-header{grid-template-columns:90px 1fr 90px;padding:0 3vw}.nav{gap:24px;font-size:16px}.gallery-grid{gap:18px}}
@media(max-width:820px){.site-header{height:72px;grid-template-columns:70px 1fr 50px}.mark{width:60px;height:60px}.mark img{width:75px}.socials{display:none}.menu-toggle{display:block;justify-self:end}.nav{display:none;position:absolute;top:72px;left:0;right:0;background:#fff;flex-direction:column;gap:0;border-bottom:1px solid var(--line);padding:12px 0 20px}.nav.open{display:flex}.nav a{padding:12px 20px}.nav a::after{display:none}.gallery-grid{grid-template-columns:repeat(2,1fr)}.split{grid-template-columns:1fr;gap:28px}.split-visual{max-width:280px;margin:auto}.contact{grid-template-columns:110px 1fr}.contact-logo{width:100px}.site-footer{grid-template-columns:60px 1fr}.footer-contact{grid-column:2}.footer-socials{display:flex;grid-column:2}.hero-image{min-height:250px;object-fit:cover}.welcome h1{font-size:25px}}
@media(max-width:520px){.section{padding:32px 18px 44px}.gallery-grid{grid-template-columns:1fr 1fr;gap:16px}.work-card h3{font-size:18px}.split h2,.statement h2,.contact h2{font-size:34px}.news-card{grid-template-columns:1fr;padding:26px 24px;gap:14px}.contact{grid-template-columns:1fr;text-align:center}.contact-logo{margin:auto}.site-footer{grid-template-columns:1fr;text-align:center}.footer-logo{margin:auto}.footer-contact,.footer-socials{grid-column:auto;justify-content:center}.hero-image{min-height:215px}.welcome{padding-top:18px}.welcome h1{font-size:22px}}

/* Protection visuelle des œuvres : dissuasion du téléchargement direct */
.work-image,.hero-image{user-select:none;-webkit-user-select:none;-webkit-user-drag:none;pointer-events:none}
.work-image-button{position:relative;overflow:hidden}
.work-image-button::after{content:"© NS";position:absolute;right:10px;bottom:10px;color:rgba(255,255,255,.72);font:500 12px Montserrat,Arial,sans-serif;text-shadow:0 1px 3px rgba(0,0,0,.55);pointer-events:none}
