
/* Polices auto-hébergées (plus de dépendance Google, plus de saut au chargement) */
@font-face{font-family:'Cormorant Garamond';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/cormorant-garamond-latin-400-normal.woff2) format('woff2');}
@font-face{font-family:'Cormorant Garamond';font-style:italic;font-weight:400;font-display:swap;src:url(fonts/cormorant-garamond-latin-400-italic.woff2) format('woff2');}
@font-face{font-family:'Cormorant Garamond';font-style:normal;font-weight:500;font-display:swap;src:url(fonts/cormorant-garamond-latin-500-normal.woff2) format('woff2');}
@font-face{font-family:'Cormorant Garamond';font-style:normal;font-weight:600;font-display:swap;src:url(fonts/cormorant-garamond-latin-600-normal.woff2) format('woff2');}
@font-face{font-family:'Jost';font-style:normal;font-weight:300;font-display:swap;src:url(fonts/jost-latin-300-normal.woff2) format('woff2');}
@font-face{font-family:'Jost';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/jost-latin-400-normal.woff2) format('woff2');}
@font-face{font-family:'Jost';font-style:normal;font-weight:500;font-display:swap;src:url(fonts/jost-latin-500-normal.woff2) format('woff2');}
:root{
  /* Palette « Charbon & cuir vieilli » — brut, masculin, galerie d'art */
  --bg:#171717;        /* Noir charbon — fond de page */
  --bg2:#2b2522;       /* Brun fumé — sections, cartes, pied de page */
  --ink:#e7e1da;       /* Blanc cassé — texte */
  --muted:#b7a391;     /* Beige poussière — texte secondaire */
  --line:#39322b;      /* Filets discrets sur le charbon */
  --accent:#9c7250;    /* Cuir cognac (légèrement éclairci pour ressortir sur le noir) */
  --accent2:#b7a391;   /* Beige poussière — boutons */
  --maxw:1240px;
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{margin:0;background:var(--bg);color:var(--ink);font-family:'Jost',system-ui,sans-serif;font-weight:300;line-height:1.65;-webkit-font-smoothing:antialiased;}
h1,h2,h3{font-family:'Cormorant Garamond',Georgia,serif;font-weight:400;margin:0;line-height:1.05;}
a{color:inherit;text-decoration:none;}
img{display:block;max-width:100%;
  -webkit-user-drag:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 6vw;}

/* Header */
.site-head{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;
  padding:.9rem 6vw;background:rgba(43,37,34,.94);backdrop-filter:blur(8px);border-bottom:1px solid var(--line);}
.brand{display:flex;flex-direction:column;line-height:1.1;}
.brand-name{font-family:'Cormorant Garamond',serif;font-size:1.4rem;letter-spacing:.5px;}
.brand-sub{font-size:.62rem;letter-spacing:.28em;text-transform:uppercase;color:var(--muted);}
.main-nav{display:flex;gap:1.8rem;}
.main-nav a{font-size:.78rem;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);padding-bottom:2px;border-bottom:1px solid transparent;}
.main-nav a:hover,.main-nav a.on{color:var(--ink);border-color:var(--accent);}
.burger{display:none;background:none;border:0;font-size:1.4rem;color:var(--ink);cursor:pointer;}

/* Hero */
.hero{display:flex;flex-direction:column;}
.hero-marquee{overflow:hidden;height:62vh;background:var(--bg2);}
.marquee-track{display:flex;height:100%;width:max-content;animation:scrollx 80s linear infinite;}
.marquee-track img{height:100%;width:auto;display:block;object-fit:cover;margin-right:6px;filter:saturate(1.03);}
.hero-marquee:hover .marquee-track{animation-play-state:paused;}
@keyframes scrollx{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media(prefers-reduced-motion:reduce){.marquee-track{animation:none;}}
/* Repères de cadrage photo aux quatre coins du bandeau */
.hero-frame{position:relative;}
.crop{position:absolute;width:26px;height:26px;z-index:3;pointer-events:none;border:0 solid var(--accent);
  filter:drop-shadow(0 0 1.5px rgba(0,0,0,.6));}
.crop.tl{top:14px;left:14px;border-left-width:2px;border-top-width:2px;}
.crop.tr{top:14px;right:14px;border-right-width:2px;border-top-width:2px;}
.crop.bl{bottom:14px;left:14px;border-left-width:2px;border-bottom-width:2px;}
.crop.br{bottom:14px;right:14px;border-right-width:2px;border-bottom-width:2px;}
.hero-foot{text-align:center;padding:6vh 8vw 2vh;max-width:760px;margin:0 auto;}
.hero-foot h1{font-size:clamp(2.6rem,6vw,4.8rem);}
.tagline{letter-spacing:.32em;text-transform:uppercase;font-size:clamp(.66rem,1.1vw,.82rem);color:var(--muted);margin:1.1rem 0;}
.lead{color:var(--muted);font-size:1.12rem;max-width:60ch;margin:1.2rem auto;}

/* Bouton */
.btn{display:inline-block;margin-top:1.4rem;padding:.85rem 2rem;border:1px solid var(--accent2);color:var(--accent2);
  background:transparent;font-family:inherit;cursor:pointer;
  letter-spacing:.18em;text-transform:uppercase;font-size:.74rem;transition:.25s;}
.btn:hover{background:var(--accent2);color:var(--bg);}

/* Section title */
.section-title{text-align:center;font-size:clamp(2rem,4.5vw,3rem);margin:9vh 0 4vh;}

/* Cartes séries */
.series-grid{padding-top:2vh;padding-bottom:4vh;}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;}
.card{position:relative;overflow:hidden;background:var(--bg2);aspect-ratio:4/5;}
.card-img{position:absolute;inset:0;}
.card-img img{width:100%;height:100%;object-fit:cover;transition:transform 1s ease;}
.card:hover .card-img img{transform:scale(1.05);}
.card-cap{position:absolute;left:0;right:0;bottom:0;padding:1.6rem 1.3rem;color:#f6f0e6;
  background:linear-gradient(to top,rgba(20,15,10,.72),transparent);display:flex;flex-direction:column;}
.card-kicker{font-size:.66rem;letter-spacing:.28em;text-transform:uppercase;opacity:.85;}
.card-title{font-family:'Cormorant Garamond',serif;font-size:1.7rem;}

/* CTA band — Rose Quartz, texte clair (accent affirmé, peu "blush") */
.cta-band{text-align:center;background:var(--accent);padding:3.4vh 8vw;margin-top:7vh;}
.cta-band p{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:1.6rem;max-width:none;margin:0 auto;color:#fbf5ec;}
.cta-band .btn{border-color:#fbf5ec;color:#fbf5ec;}
.cta-band .btn:hover{background:#fbf5ec;color:#1c1714;}

/* Vidéos */
.videos-grid{max-width:var(--maxw);margin:0 auto;padding:2vh 6vw;display:grid;grid-template-columns:repeat(2,1fr);gap:26px;}
.videos-grid.grid-flat{padding:0;}
.vid{margin:0;background:#000;}
.vid video{width:100%;height:auto;display:block;background:#000;}
.vid figcaption{padding:.8rem .2rem 0;color:var(--muted);font-size:.9rem;letter-spacing:.02em;}
.see-all{text-align:center;margin-top:3vh;}
.see-all a{letter-spacing:.18em;text-transform:uppercase;font-size:.76rem;color:var(--accent);border-bottom:1px solid var(--accent);padding-bottom:3px;}

/* Série */
.serie-chips{display:flex;flex-wrap:wrap;gap:.6rem;justify-content:center;padding-top:4vh;}
.serie-chips a{font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);
  border:1px solid var(--line);padding:.45rem .9rem;border-radius:40px;transition:.2s;}
.serie-chips a:hover,.serie-chips a.on{color:#fff;background:var(--accent);border-color:var(--accent);}
.serie-head{text-align:center;padding:7vh 6vw 4vh;}
.serie-head .kicker{letter-spacing:.32em;text-transform:uppercase;font-size:.72rem;color:var(--accent);}
.serie-head h1{font-size:clamp(2.6rem,6vw,4.4rem);margin:.5rem 0;}
.serie-quote{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:1.45rem;color:var(--muted);max-width:none;margin:1rem auto 0;}
@media(min-width:1100px){.serie-quote{white-space:nowrap;}}

/* Galerie masonry (jamais de recadrage) */
.gallery{max-width:var(--maxw);margin:0 auto;padding:4vh 4vw 2vh;column-count:3;column-gap:22px;}
.gallery .ph{break-inside:avoid;margin:0 0 22px;position:relative;overflow:hidden;cursor:zoom-in;background:var(--bg2);}
.gallery .ph img{width:100%;height:auto;transition:transform .9s ease;}
.gallery .ph:hover img{transform:scale(1.04);}
.gallery figcaption{position:absolute;left:0;right:0;bottom:0;padding:1.4rem 1rem .9rem;color:#f6f0e6;font-size:.8rem;
  letter-spacing:.02em;opacity:0;transition:.3s;background:linear-gradient(to top,rgba(20,15,10,.7),transparent);}
.gallery .ph:hover figcaption{opacity:1;}

.serie-np{display:flex;justify-content:space-between;padding:4vh 6vw 0;}
.serie-np .np{font-family:'Cormorant Garamond',serif;font-size:1.3rem;color:var(--muted);}
.serie-np .np:hover{color:var(--accent);}
.serie-np .next{margin-left:auto;}

/* Lightbox */
.lightbox{position:fixed;inset:0;z-index:100;background:rgba(20,15,10,.92);display:none;align-items:center;justify-content:center;flex-direction:column;cursor:zoom-out;padding:4vh;}
.lightbox.open{display:flex;}
.lightbox img{max-width:92vw;max-height:84vh;width:auto;height:auto;}
.lb-cap{color:#f6f0e6;margin-top:1rem;font-size:.85rem;letter-spacing:.04em;}

/* Prose (approche / prestations / contact) */
.prose{max-width:880px;margin:0 auto;padding:9vh 6vw;}
.prose .kicker,.prose h1,.prose .lead{text-align:center;}
.prose .kicker{letter-spacing:.32em;text-transform:uppercase;font-size:.72rem;color:var(--accent);}
.prose h1{font-size:clamp(2.4rem,5vw,3.6rem);margin:.8rem 0 1.3rem;}
.prose .lead{max-width:62ch;margin-left:auto;margin-right:auto;}
.points{list-style:none;padding:0;margin:3rem 0;display:grid;gap:1.6rem;}
.points li{display:grid;gap:.3rem;border-top:1px solid var(--line);padding-top:1.3rem;}
.pt-t{font-family:'Cormorant Garamond',serif;font-size:1.5rem;}
.pt-d{color:var(--muted);}
/* Approche — encarts en collage (désordre maîtrisé) */
.prose.prose-tight{padding-bottom:2vh;}
.approche-scatter{max-width:1080px;margin:0 auto;padding:1vh 6vw 4vh;display:flex;flex-direction:column;gap:2.4rem;}
.encart{position:relative;background:var(--bg2);border:1px solid var(--line);padding:2.2rem 2.4rem;width:min(540px,86%);
  transition:transform .35s ease,box-shadow .35s ease;}
.encart::before{content:"";position:absolute;top:0;left:2.4rem;width:46px;height:3px;background:var(--accent);}
.encart h3{font-size:1.7rem;margin:.4rem 0 .6rem;}
.encart p{color:var(--muted);margin:0;font-size:1.04rem;}
.encart:nth-child(1){align-self:flex-start;}
.encart:nth-child(2){align-self:flex-end;}
.encart:nth-child(3){align-self:flex-start;}
.encart:hover{transform:translateY(-5px);box-shadow:0 20px 44px rgba(0,0,0,.4);z-index:2;}
@media(max-width:640px){
  .approche-scatter{gap:1.4rem;}
  .encart{width:100%;align-self:stretch;transform:none;margin:0;}
  .encart:hover{transform:translateY(-3px);}
}
.formules{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin:3rem 0;}
.formule{border:1px solid var(--line);padding:2rem 1.5rem;background:var(--bg2);}
.formule h3{font-size:1.6rem;margin-bottom:.6rem;color:var(--accent);}
.formule p{color:var(--muted);font-size:.96rem;margin:0;}
.appel{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:1.4rem;}
.prestations-foot{text-align:center;margin-top:2.5rem;}

/* Contact */
.contact-direct{display:flex;flex-wrap:wrap;gap:1rem;margin:2rem 0;justify-content:center;}
.cbtn{display:inline-flex;align-items:center;gap:.55rem;border:1px solid var(--line);padding:.8rem 1.3rem;font-size:.85rem;letter-spacing:.04em;transition:.2s;}
.cbtn .ico{flex:0 0 auto;color:var(--accent);}
.cbtn:hover{border-color:var(--accent);color:var(--accent);}
.contact-form{display:grid;gap:1.1rem;margin:2.5rem auto 0;max-width:560px;}
.contact-form label{display:grid;gap:.4rem;font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);}
.contact-form input,.contact-form textarea{font-family:inherit;font-size:1rem;padding:.8rem;border:1px solid var(--line);background:var(--bg2);color:var(--ink);}
.contact-form input:focus,.contact-form textarea:focus{outline:none;border-color:var(--accent);}
.form-note{font-size:.8rem;color:var(--accent);}

/* Footer */
.site-foot{background:var(--bg2);color:var(--ink);margin-top:0;padding:7vh 6vw 3vh;}
.foot-cols{display:flex;justify-content:space-between;align-items:flex-start;gap:2.5rem;max-width:var(--maxw);margin:0 auto;}
.foot-contact{text-align:right;}
.foot-name{font-family:'Cormorant Garamond',serif;font-size:1.5rem;}
.foot-line{color:#b3a999;font-size:.9rem;}
.foot-h{font-size:.7rem;letter-spacing:.24em;text-transform:uppercase;color:#b3a999;margin-bottom:.8rem;}
.foot-cols a{display:block;color:#e9e1d4;font-size:.92rem;padding:.18rem 0;}
.foot-cols a:hover{color:#fff;}
.foot-bottom{text-align:center;color:#8c8273;font-size:.78rem;margin-top:4vh;border-top:1px solid #3a342d;padding-top:2vh;}

/* Responsive */
@media(max-width:900px){
  .cards,.formules{grid-template-columns:repeat(2,1fr);}
  .gallery{column-count:2;}
  .videos-grid{grid-template-columns:1fr;}
  .main-nav{position:fixed;inset:0 0 0 auto;width:70%;max-width:320px;flex-direction:column;gap:0;
    background:var(--bg);padding:6rem 2rem;transform:translateX(100%);transition:.3s;box-shadow:-10px 0 40px rgba(0,0,0,.1);}
  body.nav-open .main-nav{transform:translateX(0);}
  .main-nav a{padding:1rem 0;border-bottom:1px solid var(--line);font-size:.9rem;}
  .burger{display:block;}
  .hero-marquee{height:42vh;}
}
@media(max-width:560px){
  .cards,.formules{grid-template-columns:1fr;}
  .gallery{column-count:1;}
  .foot-cols{flex-direction:column;}
  .foot-contact{text-align:left;}
  .hero-marquee{height:38vh;}
}
