/* Cuisika — Armoires sur mesure · feuille de style
   Identité reprise du matériel Vistaprint / PROMAX (oct. 2026)
   Marine #18212E · Crème #FAF7F1 · Noyer #B98A62 · Noyer foncé #8A5D3B · Ardoise #3A4350
   Polices : Barlow Condensed 600 (titres, libellés en capitales espacées) · Barlow (texte) */
:root{
  --marine:#18212E;
  --marine-2:#243042;
  --creme:#FAF7F1;
  --creme-2:#F1ECE2;
  --noyer:#B98A62;
  --noyer-fonce:#8A5D3B;
  --ardoise:#3A4350;
  --ligne:#E3DCCF;
  --blanc:#FFFFFF;
  --largeur:1120px;
  --cond:"Barlow Condensed","Arial Narrow",sans-serif;
  --sans:"Barlow","Segoe UI",sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--creme);color:var(--marine);font-family:var(--sans);font-size:17px;line-height:1.6}
img{max-width:100%;height:auto;display:block}
a{color:var(--noyer-fonce)}
a:hover{color:var(--marine)}
.conteneur{width:min(var(--largeur),100% - 40px);margin-inline:auto}

/* Libellés « capitales espacées » (signature du matériel imprimé) */
.surtitre,.nav,.bandeau,.creneaux,.album-entetes,.pied-coord dt,.etiquette{font-family:var(--cond);font-weight:600;text-transform:uppercase}

/* ---------- En-tête ---------- */
.entete{background:var(--creme);border-bottom:2px solid var(--noyer);position:sticky;top:0;z-index:10}
.entete-barre{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:8px 0}
.marque img{width:auto;height:112px}
.nav{display:flex;align-items:center;flex-wrap:wrap;gap:4px 30px;font-size:16px;letter-spacing:.18em}
.nav a{color:var(--marine);text-decoration:none;padding:10px 0;border-bottom:2px solid transparent}
.nav a:hover{color:var(--noyer-fonce)}
.nav a[aria-current="page"]{color:var(--noyer-fonce);border-bottom-color:var(--noyer)}
.nav .nav-tel{background:var(--marine);color:var(--creme);padding:10px 18px;border:0;letter-spacing:.08em;font-size:17px}
.nav .nav-tel:hover{background:var(--marine-2);color:var(--creme)}

/* ---------- Éléments communs ---------- */
.surtitre{margin:0 0 14px;font-size:15px;letter-spacing:.2em;color:var(--noyer-fonce)}
.creneaux{margin:18px 0 0;font-size:16px;letter-spacing:.14em;color:var(--marine)}
.creneaux span{color:var(--noyer);margin:0 .4em}
.bouton{display:inline-block;background:var(--marine);color:var(--creme);text-decoration:none;font-family:var(--cond);font-weight:600;font-size:18px;letter-spacing:.1em;text-transform:uppercase;padding:13px 26px;border:2px solid var(--marine)}
.bouton:hover{background:var(--marine-2);border-color:var(--marine-2);color:var(--creme)}
.bouton-contour{background:transparent;color:var(--marine)}
.bouton-contour:hover{background:var(--marine);color:var(--creme)}
.boutons{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}

.bandeau{background:var(--marine);color:var(--creme);display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:6px 22px;padding:16px 20px;font-size:clamp(16px,2vw,21px);letter-spacing:.2em;text-align:center}
.bandeau .losange{color:var(--noyer);font-size:.8em;letter-spacing:0}

/* ---------- Accueil ---------- */
.heros{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:48px;align-items:center;padding:56px 0 48px}
.heros h1{margin:0;font-family:var(--cond);font-weight:600;font-size:clamp(40px,5vw,62px);line-height:1.02;letter-spacing:.01em;color:var(--marine)}
.heros-sous{margin:20px 0 0;font-size:18px;color:var(--ardoise);max-width:470px}
.heros-photo{width:100%;aspect-ratio:4/3;object-fit:cover;border:6px solid var(--marine)}

.barre{margin:0;background:var(--marine);color:var(--creme);font-family:var(--cond);font-weight:600;text-transform:uppercase;letter-spacing:.14em;font-size:clamp(19px,2.2vw,26px);line-height:1.3;text-align:center;padding:18px 24px}
.conteneur>.barre{margin:8px 0 16px}
.bande-image{width:100%;height:340px;object-fit:cover}
.titre-section{margin:56px 0 24px;text-align:center;font-family:var(--cond);font-weight:600;text-transform:uppercase;letter-spacing:.16em;font-size:clamp(26px,3.2vw,36px);color:var(--marine)}
.titre-section::after{content:"◆";display:block;font-size:14px;color:var(--noyer);margin-top:6px;letter-spacing:0}

.mosaique{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:16px;align-items:stretch}
.mosaique img{width:100%;height:100%;min-height:260px;object-fit:cover}
.mosaique .barre{display:grid;place-items:center;margin:0}
.mosaique .barre:nth-of-type(even){background:var(--creme-2);color:var(--marine);border:2px solid var(--marine)}
.m1{grid-column:1/7}
.m2{grid-column:7/13}
.degrade{padding:16px 0 64px}

/* ---------- Pages intérieures ---------- */
.page{padding:48px 0 64px}
.page h1{margin:0 0 24px;font-family:var(--cond);font-weight:600;text-transform:uppercase;letter-spacing:.12em;font-size:clamp(32px,4vw,44px);color:var(--marine)}
.page h2{margin:48px 0 16px;font-family:var(--cond);font-weight:600;text-transform:uppercase;letter-spacing:.14em;font-size:28px;color:var(--marine)}
.deux-col{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:28px;align-items:start}
.col-7{grid-column:span 7}
.col-5{grid-column:span 5}
.col-6{grid-column:span 6}
.texte p{margin:0 0 16px;color:var(--ardoise)}
.cadre{background:var(--blanc);padding:6px;border:1px solid var(--ligne)}

/* ---------- Album ---------- */
.album-entetes,.album-ligne{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.album-entetes{text-align:center;font-size:17px;letter-spacing:.2em;color:var(--creme);background:var(--marine);padding:12px 0;margin:8px 0 16px}
.album-ligne{margin-bottom:12px}
.album-ligne button{padding:0;border:0;background:var(--creme-2);cursor:zoom-in;aspect-ratio:4/3;overflow:hidden}
.album-ligne img{width:100%;height:100%;object-fit:cover;transition:transform .3s}
.album-ligne button:hover img,.album-ligne button:focus-visible img{transform:scale(1.04)}
.album-ligne button:focus-visible{outline:3px solid var(--noyer);outline-offset:2px}
.album-ligne .vide{aspect-ratio:4/3;display:grid;place-items:center;color:var(--ardoise);background:var(--creme-2);font-size:15px}
.etiquette{display:none}

.visionneuse{border:0;padding:0;background:transparent;max-width:95vw;max-height:95vh}
.visionneuse::backdrop{background:rgba(24,33,46,.92)}
.visionneuse img{max-width:95vw;max-height:88vh;margin:auto}
.visionneuse button{position:fixed;top:12px;right:16px;width:48px;height:48px;border:0;border-radius:50%;background:var(--creme);color:var(--marine);font-size:28px;cursor:pointer;line-height:1}

/* ---------- Nous joindre ---------- */
.contact h1{text-transform:none;letter-spacing:.04em}
.contact .bouton{font-size:28px;padding:12px 28px;letter-spacing:.06em}
.coordonnees{font-size:20px;line-height:1.5;margin:28px 0;color:var(--ardoise)}
.courriel{font-size:20px}
.carte{width:100%;height:340px;border:6px solid var(--marine);background:var(--creme-2)}

/* ---------- Pied de page ---------- */
.pied{background:var(--creme);padding:36px 0;font-size:15px;color:var(--ardoise)}
.pied-grille{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:32px;align-items:center}
.pied-logo{height:120px;width:auto}
.pied-nom{margin:0;font-weight:600;color:var(--marine);font-size:17px}
.pied-devise{margin:6px 0 0;font-family:var(--cond);font-weight:600;text-transform:uppercase;letter-spacing:.14em;font-size:15px;color:var(--noyer-fonce)}
.pied-coord{margin:0;display:grid;grid-template-columns:auto auto;column-gap:14px;row-gap:4px}
.pied-coord dt{font-size:13px;letter-spacing:.18em;color:var(--noyer-fonce);padding-top:2px}
.pied-coord dd{margin:0}
.pied a{color:var(--marine);text-decoration:none}
.pied a:hover{color:var(--noyer-fonce);text-decoration:underline}

/* ---------- Mobile ---------- */
@media (max-width:820px){
  .entete{position:static}
  .entete-barre{flex-direction:column;gap:6px}
  .marque img{height:96px}
  .nav{justify-content:center;gap:2px 18px;font-size:15px}
  .heros{grid-template-columns:1fr;gap:28px;padding:32px 0}
  .heros-photo{order:-1}
  .bande-image{height:220px}
  .mosaique{grid-template-columns:1fr}
  .mosaique>*{grid-column:1/-1!important}
  .mosaique img{min-height:0}
  .deux-col{grid-template-columns:1fr}
  .deux-col>*{grid-column:1/-1}
  .album-entetes{display:none}
  .album-ligne{grid-template-columns:1fr;margin-bottom:28px}
  .etiquette{display:block;font-size:15px;letter-spacing:.18em;color:var(--noyer-fonce);margin-top:-4px}
  .pied-grille{grid-template-columns:1fr;text-align:center;justify-items:center}
  .pied-coord{text-align:left}
}
