/* Vintage by Gabriel — feuille de style principale
   Palette : vert profond #22301F · crème #F7F5F0 · anthracite #14160F · laiton #9A7B3F
   Typographie : Newsreader (titres) + Archivo (texte)
*/
:root{
    --paper:#F7F5F0;
    --paper-warm:#EFE9DC;
    --paper-card:#FFFDF9;
    --ink:#14160F;          /* titres — noir profond */
    --ink-body:#33372E;     /* texte courant — contraste fort */
    --ink-mute:#5A5F52;     /* texte secondaire, reste lisible */
    --green:#22301F;        /* vert profond — CTA, footer */
    --green-deep:#161F14;
    --green-mid:#3F5239;
    --brass:#9A7B3F;
    --rule:#CFC7B4;
    --rule-soft:#E2DBCA;
    --maxw:1240px;
    --gut:24px;
  }

  *{box-sizing:border-box;}
  html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;}
  body{
    margin:0;background:var(--paper);color:var(--ink-body);
    font-family:'Archivo',system-ui,sans-serif;
    font-size:17px;line-height:1.65;
    -webkit-font-smoothing:antialiased;overflow-x:hidden;
  }
  img{display:block;max-width:100%;}
  a{color:inherit;text-decoration:none;}
  h1,h2,h3{font-family:'Newsreader',Georgia,serif;font-weight:400;margin:0;line-height:1.06;letter-spacing:-.02em;color:var(--ink);}
  p{margin:0;}
  .wrap{max-width:var(--maxw);margin:0 auto;padding:0 var(--gut);}

  /* libellés : décoratifs, donc plus clairs — jamais porteurs d'info seule */
  .label{
    font-family:'Archivo',sans-serif;font-size:11.5px;font-weight:600;
    letter-spacing:.2em;text-transform:uppercase;color:var(--green-mid);
  }
  .rule-label{display:flex;align-items:center;gap:16px;margin-bottom:22px;}
  .rule-label::after{content:"";flex:1;height:1px;background:var(--rule);}

  /* apparition : ne masque QUE si le script tourne (aucune page blanche possible) */
  .js .rise{opacity:0;transform:translateY(14px);transition:opacity .55s ease,transform .55s ease;}
  .js .rise.in{opacity:1;transform:none;}
  @media (prefers-reduced-motion:reduce){
    html{scroll-behavior:auto;}
    .js .rise{opacity:1;transform:none;transition:none;}
  }
  @media print{
    .rise,.js .rise{opacity:1!important;transform:none!important;}
    .top,.dock,.wa{display:none!important;}
    .hero{min-height:0!important;}
  }

  /* ——— boutons ——— */
  .btn{
    display:inline-flex;align-items:center;justify-content:center;gap:10px;
    font-family:'Archivo',sans-serif;font-weight:600;font-size:16px;letter-spacing:.01em;
    padding:20px 36px;min-height:60px;border:2px solid transparent;
    transition:background .18s ease,color .18s ease,border-color .18s ease,transform .18s ease;
  }
  .btn-main{background:var(--green);color:#F7F5F0;box-shadow:0 6px 24px rgba(12,16,10,.34);}
  .btn-main:hover,.btn-main:focus-visible{background:var(--green-deep);transform:translateY(-1px);}
  .btn-ghost{border-color:var(--ink);color:var(--ink);background:transparent;font-weight:500;}
  .btn-ghost:hover,.btn-ghost:focus-visible{background:var(--ink);color:var(--paper);}
  .btn-ondark{border-color:rgba(247,245,240,.7);color:#F7F5F0;background:transparent;font-weight:500;}
  .btn-light{background:#FFFDF9;color:var(--green);border-color:#FFFDF9;box-shadow:0 4px 18px rgba(0,0,0,.18);}
  .btn-light:hover,.btn-light:focus-visible{background:#F0E9D8;border-color:#F0E9D8;transform:translateY(-1px);}
  .btn-ondark:hover,.btn-ondark:focus-visible{background:#F7F5F0;color:var(--green);}
  .btn-sm{padding:13px 24px;min-height:46px;font-size:14.5px;}
  :focus-visible{outline:3px solid var(--brass);outline-offset:3px;}

  /* ——— en-tête ——— */
  .top{
    position:fixed;top:0;left:0;right:0;z-index:60;
    transition:background .3s ease,border-color .3s ease;
    border-bottom:1px solid transparent;
  }
  .top .wrap{display:flex;align-items:center;justify-content:space-between;height:88px;gap:20px;}
  .mark{display:flex;flex-direction:column;gap:6px;line-height:1;}
  .mark .l1{
    font-family:'Newsreader',serif;font-weight:400;font-style:normal;
    font-size:27px;letter-spacing:.30em;text-transform:uppercase;
  }
  .mark .l2{
    display:flex;align-items:center;gap:9px;
    font-family:'Archivo',sans-serif;font-size:9.5px;font-weight:600;
    letter-spacing:.26em;text-transform:uppercase;
  }
  .mark .l2::before{content:"";width:16px;height:1px;background:currentColor;opacity:.6;flex:none;}
  /* état par-dessus la photo */
  /* sur le premier écran, la marque est portée par le hero : la barre reste sobre */
  .js .top .mark{opacity:0;pointer-events:none;transition:opacity .35s ease;}
  .js .top.stuck .mark,.js .top.open .mark{opacity:1;pointer-events:auto;}
  .top .mark .l1{color:#FFFDF9;}
  .top .mark .l2{color:#F0DCB0;}
  .top nav a{color:rgba(255,253,249,.88);}
  .top .btn-sm{background:transparent;color:#FFFDF9;border-color:rgba(255,253,249,.55);font-weight:600;}
  .top .btn-sm:hover,.top .btn-sm:focus-visible{background:#FFFDF9;color:var(--green);border-color:#FFFDF9;}
  /* état après défilement */
  .top.stuck{background:rgba(247,245,240,.97);backdrop-filter:blur(12px);border-bottom-color:var(--rule);}
  .top.stuck .mark .l1{color:var(--ink);}
  .top.stuck .mark .l2{color:var(--green-mid);}
  .top.stuck nav a{color:var(--ink-body);}
  .top.stuck .btn-sm{background:var(--green);color:#F7F5F0;border-color:var(--green);}
  .top.stuck .btn-sm:hover,.top.stuck .btn-sm:focus-visible{background:var(--green-deep);border-color:var(--green-deep);color:#F7F5F0;}
  .top nav{display:flex;align-items:center;gap:30px;}
  .top nav a{font-size:14.5px;font-weight:500;}
  .top nav .nav-tel{display:none;}
  .burger{
    display:none;cursor:pointer;
    width:48px;height:48px;padding:14px 12px;
    flex-direction:column;justify-content:space-between;
    background:rgba(12,16,10,.42);
    border:1px solid rgba(255,253,249,.5);
    backdrop-filter:blur(6px);
    transition:background .25s ease,border-color .25s ease;
  }
  .burger span{display:block;height:2px;width:100%;background:#FFFDF9;transition:transform .25s ease,opacity .2s ease,background .25s ease;}
  .top.stuck .burger,.top.open .burger{background:transparent;border-color:var(--rule);backdrop-filter:none;}
  .top.stuck .burger span,.top.open .burger span{background:var(--ink);}
  .top.open .burger span:nth-child(1){transform:translateY(9px) rotate(45deg);}
  .top.open .burger span:nth-child(2){opacity:0;}
  .top.open .burger span:nth-child(3){transform:translateY(-9px) rotate(-45deg);}

  @media (max-width:1100px){
    .top .wrap{height:74px;}
    .mark .l1{font-size:18px;letter-spacing:.22em;}
    .mark .l2{font-size:7.5px;letter-spacing:.2em;}
    .mark .l2::before{width:11px;}
    .top .btn-sm{display:none;}   /* la barre du bas prend le relais */
    .burger{display:flex;}

    /* panneau de navigation déroulant */
    .top nav{
      position:absolute;top:74px;left:0;right:0;
      flex-direction:column;align-items:stretch;gap:0;
      background:var(--paper);
      border-bottom:1px solid var(--rule);
      max-height:0;overflow:hidden;
      transition:max-height .3s ease;
    }
    .top.open nav{max-height:420px;}
    .top nav a,.top.stuck nav a{
      color:var(--ink)!important;
      font-family:'Newsreader',serif;font-size:20px;font-weight:400;
      padding:17px var(--gut);
      border-bottom:1px solid var(--rule-soft);
    }
    .top nav a:last-child{border-bottom:none;}
    .top nav .nav-tel{
      display:block;font-family:'Archivo',sans-serif;font-size:15px;font-weight:600;
      letter-spacing:.04em;color:var(--green)!important;background:var(--paper-warm);
    }
    /* fond opaque dès que le menu est ouvert, même sur la photo */
    .top.open{background:rgba(247,245,240,.98);backdrop-filter:blur(12px);}
    .top.open .mark .l1{color:var(--ink);}
    .top.open .mark .l2{color:var(--green-mid);}
  }

  /* ——— HÉRO PHOTOGRAPHIQUE ——— */
  .hero{position:relative;min-height:100svh;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;background:var(--green-deep);}
  .hero picture,.hero picture img{position:absolute;inset:0;width:100%;height:100%;}
  .hero picture img{object-fit:cover;object-position:center 42%;}
  .hero-veil{
    position:absolute;inset:0;
    background:
      /* voile concentré sur le bas, derrière les textes : la photo reste lisible au-dessus */
      linear-gradient(to top, rgba(12,16,10,.80) 0%, rgba(12,16,10,.58) 26%, rgba(12,16,10,.22) 50%, rgba(12,16,10,0) 70%, rgba(12,16,10,.14) 100%);
  }
  .hero-veil::after{
    content:"";position:absolute;inset:0;
    /* léger renfort à gauche, où commence chaque ligne de texte */
    background:linear-gradient(to right, rgba(12,16,10,.28) 0%, rgba(12,16,10,.08) 40%, transparent 64%);
  }
  .hero .wrap{position:relative;z-index:2;width:100%;padding-bottom:78px;}
  .hero .hero-top{padding-top:118px;padding-bottom:0;}
  .hero-brand{margin:0;}
  .hb-name{
    display:block;
    font-family:'Archivo',sans-serif;font-weight:700;
    font-size:clamp(26px,3.4vw,40px);
    letter-spacing:.17em;text-transform:uppercase;
    color:#FFFDF9;line-height:1.05;
    text-shadow:0 2px 26px rgba(0,0,0,.55);
  }
  .hb-sub{
    display:flex;align-items:center;gap:12px;margin-top:14px;
    font-family:'Archivo',sans-serif;font-size:12px;font-weight:600;
    letter-spacing:.22em;text-transform:uppercase;
    color:#F0DCB0;
    text-shadow:0 1px 12px rgba(0,0,0,.75);
  }
  .hb-sub::before{content:"";width:30px;height:1px;background:#F0DCB0;flex:none;opacity:.9;}
  .hero h1{
    color:#FFFDF9;font-size:clamp(37px,5.2vw,68px);max-width:14ch;
    line-height:1.02;letter-spacing:-.025em;
    text-shadow:0 2px 30px rgba(0,0,0,.5);
  }
  .hero h1 em{font-style:italic;color:#E6D3A6;}
  .hero .kinds{
    margin-top:30px;font-size:16.5px;font-weight:500;color:#F4F1E8;max-width:52ch;line-height:1.6;
    text-shadow:0 1px 14px rgba(0,0,0,.72);
  }
  .hero .where{
    display:inline-flex;align-items:center;gap:10px;margin-top:20px;
    font-size:13.5px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;
    color:#F0DCB0;text-shadow:0 1px 12px rgba(0,0,0,.75);
  }
  .hero .where::before{content:"";width:22px;height:1px;background:#F0DCB0;}
  .hero-cta{margin-top:44px;display:flex;flex-wrap:wrap;align-items:center;gap:22px;}
  .hero-cta .btn-main{padding:21px 40px;font-size:16.5px;letter-spacing:.02em;}
  .hero-cta .tel{font-size:15px;font-weight:500;color:#F4F1E8;border-bottom:1px solid rgba(244,241,232,.6);padding-bottom:3px;text-shadow:0 1px 12px rgba(0,0,0,.7);}
  .hero-cta .tel:hover{color:#fff;border-color:#fff;}
  .hero-note{
    margin-top:42px;padding-top:20px;border-top:1px solid rgba(239,235,225,.25);
    font-size:13px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;
    color:#E4DFD2;text-shadow:0 1px 12px rgba(0,0,0,.7);
  }
  @media (max-width:960px){
    .hero{min-height:92svh;}
    .hero .wrap{padding-bottom:46px;}
    .hero .hero-top{padding-top:92px;}
    .hero picture img{object-position:center 44%;}
    .hero-veil{background:linear-gradient(to top, rgba(12,16,10,.84) 0%, rgba(12,16,10,.62) 26%, rgba(12,16,10,.26) 52%, rgba(12,16,10,.02) 74%, rgba(12,16,10,.18) 100%);}
    .hero-veil::after{background:none;}
    .hero h1{font-size:clamp(31px,8vw,42px);max-width:14ch;}
    .hero .kinds{font-size:15px;margin-top:22px;}
    .hero-brand{margin:0;}
    .hb-name{font-size:clamp(24px,6.6vw,32px);letter-spacing:.15em;}
    .hb-sub{margin-top:11px;font-size:10.5px;letter-spacing:.18em;}
    .hb-sub::before{width:20px;}
    .hero-cta{margin-top:34px;gap:16px;flex-direction:column;align-items:stretch;}
    .hero-cta .btn-main{padding:19px 24px;font-size:16px;}
    .hero-cta .btn{width:100%;}
    .hero-cta .tel{display:none;} /* le téléphone reste dans la barre du bas */
    .hero-note{margin-top:30px;font-size:11px;line-height:1.7;}
  }

  /* ——— TROIS BLOCS DE CONFIANCE ——— */
  .trust{background:var(--paper-warm);border-bottom:1px solid var(--rule);}
  .trust .wrap{display:grid;grid-template-columns:repeat(3,1fr);gap:0;}
  .tcard{padding:52px 40px 54px 0;border-right:1px solid var(--rule);}
  .tcard:last-child{border-right:none;}
  .tcard:not(:first-child){padding-left:40px;}
  .tcard .n{
    display:flex;align-items:center;justify-content:center;
    width:56px;height:56px;border-radius:50%;
    border:1px solid var(--brass);
    font-family:'Newsreader',serif;font-weight:400;font-size:23px;
    letter-spacing:.02em;color:var(--brass);
    margin-bottom:26px;
  }
  .tcard h3{font-size:26px;margin-bottom:13px;letter-spacing:-.015em;}
  .tcard p{font-size:15px;color:var(--ink-mute);line-height:1.6;}
  @media (max-width:860px){
    .trust .wrap{grid-template-columns:1fr;}
    .tcard{border-right:none;border-bottom:1px solid var(--rule);padding:32px 0 34px!important;}
    .tcard:last-child{border-bottom:none;}
    .tcard .n{width:48px;height:48px;font-size:20px;margin-bottom:18px;}
    .tcard h3{font-size:22px;}
  }

  /* ——— sections ——— */
  section{padding:124px 0;}
  .head{max-width:60ch;margin-bottom:64px;}
  .head h2{font-size:clamp(34px,4.6vw,58px);}
  .head .sub{
    margin-top:22px;font-family:'Newsreader',serif;font-size:clamp(19px,2vw,24px);
    font-weight:300;line-height:1.45;color:var(--ink);max-width:44ch;
  }
  .head p.txt{margin-top:20px;color:var(--ink-mute);font-size:16.5px;max-width:60ch;}
  @media (max-width:760px){
    section{padding:78px 0;}
    .head{margin-bottom:42px;}
    .head h2{font-size:clamp(29px,8vw,38px);}
  }

  /* ——— ce que nous achetons ——— */
  .kinds-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:2px solid var(--ink);}
  .kind{padding:34px 34px 34px 0;border-bottom:1px solid var(--rule);}
  .kind .n{display:block;font-size:12px;font-weight:700;letter-spacing:.14em;color:var(--brass);margin-bottom:14px;}
  .kind h3{font-size:23px;margin-bottom:9px;}
  .kind p{font-size:15px;color:var(--ink-mute);line-height:1.6;}
  @media (max-width:900px){.kinds-grid{grid-template-columns:1fr 1fr;}}
  @media (max-width:620px){.kinds-grid{grid-template-columns:1fr;}.kind{padding:26px 0;}}

  /* ——— ce que nous recherchons moins : volontairement plus discret ——— */
  .aside-out{padding:0 0 118px;background:var(--paper-warm);}
  .ao-head{max-width:56ch;padding-top:46px;border-top:1px solid var(--rule);}
  .ao-head h2{
    font-family:'Archivo',sans-serif;font-size:17px;font-weight:600;
    letter-spacing:.03em;color:var(--ink);
  }
  .ao-head p{margin-top:12px;font-size:15px;color:var(--ink-mute);line-height:1.65;}
  .ao-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:0;margin-top:34px;}
  .ao{padding:0 24px 0 0;border-left:1px solid var(--rule);padding-left:20px;}
  .ao:first-child{border-left:none;padding-left:0;}
  .ao h3{
    font-family:'Archivo',sans-serif;font-size:13.5px;font-weight:600;
    line-height:1.4;letter-spacing:.01em;color:var(--ink);margin-bottom:8px;
  }
  .ao p{font-size:13.5px;color:var(--ink-mute);line-height:1.55;}
  .ao-cta{
    display:flex;align-items:center;justify-content:space-between;gap:34px;
    margin-top:40px;padding-top:28px;border-top:1px solid var(--rule);
  }
  .ao-cta p{font-size:15px;color:var(--ink-body);max-width:62ch;line-height:1.6;}
  .ao-cta .btn{flex:none;padding:15px 28px;min-height:50px;font-size:15px;}
  @media (max-width:1000px){
    .ao-grid{grid-template-columns:1fr 1fr 1fr;gap:26px 0;}
    .ao:nth-child(3n+1){border-left:none;padding-left:0;}
  }
  @media (max-width:700px){
    .aside-out{padding-bottom:78px;}
    .ao-grid{grid-template-columns:1fr;gap:0;margin-top:26px;}
    .ao,.ao:first-child{border-left:none;padding:18px 0;border-bottom:1px solid var(--rule);}
    .ao:last-child{border-bottom:none;}
    .ao-cta{flex-direction:column;align-items:stretch;gap:20px;margin-top:28px;}
    .ao-cta .btn{width:100%;}
  }

  /* ——— situations ——— */
  .cases{background:var(--paper-warm);}
  .cases-list{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:2px solid var(--ink);}
  .cs{padding:22px 30px 22px 0;border-bottom:1px solid var(--rule);}
  .cs b{font-family:'Newsreader',serif;font-weight:400;font-size:24px;color:var(--ink);letter-spacing:-.01em;}
  .cs span{font-size:14.5px;color:var(--ink-mute);}
  @media (max-width:820px){.cases-list{grid-template-columns:1fr 1fr;}.cs{padding:18px 16px 18px 0;}.cs b{font-size:19px;}}
  @media (max-width:520px){.cases-list{grid-template-columns:1fr;}}

  /* ——— méthode ——— */
  .steps{display:grid;grid-template-columns:repeat(4,1fr);gap:0;position:relative;}
  .step{padding:0 34px 0 0;position:relative;}
  .step .n{
    position:relative;z-index:2;
    display:flex;align-items:center;justify-content:center;
    width:66px;height:66px;border-radius:50%;
    background:var(--paper);border:1px solid var(--rule);
    font-family:'Newsreader',serif;font-weight:400;font-size:27px;
    color:var(--green);margin-bottom:26px;
  }
  /* filet reliant les étapes, interrompu par les pastilles */
  .step::before{
    content:"";position:absolute;z-index:1;
    top:33px;left:66px;right:0;height:1px;background:var(--rule);
  }
  .step:last-child::before{display:none;}
  .step .n::after{
    content:"";position:absolute;right:-13px;top:50%;transform:translateY(-50%);
    width:5px;height:5px;border-right:1px solid var(--brass);border-top:1px solid var(--brass);
    rotate:45deg;
  }
  .step:last-child .n::after{display:none;}
  .step h3{font-size:23px;margin-bottom:9px;}
  .step .quick{font-size:14px;font-weight:600;color:var(--ink);margin-bottom:8px;}
  .step p{font-size:14.5px;color:var(--ink-mute);line-height:1.6;}
  @media (max-width:900px){
    .steps{grid-template-columns:1fr 1fr;gap:40px 0;}
    .step{padding-right:24px;}
    .step:nth-child(2n)::before{display:none;}
  }
  @media (max-width:560px){
    .steps{grid-template-columns:1fr;gap:0;}
    /* continuité verticale : le filet descend d'une étape à l'autre */
    .step{padding:0 0 34px 78px;}
    .step .n{position:absolute;top:0;left:0;width:58px;height:58px;font-size:24px;margin:0;}
    .step .n::after{display:none;}
    .step::before{top:58px;left:29px;right:auto;bottom:-6px;width:1px;height:auto;}
    .step:last-child{padding-bottom:0;}
    .step:nth-child(2n)::before{display:block;}
    .step:last-child::before{display:none;}
  }

  /* ——— bandeau de catégories ——— */
  .cats{display:flex;flex-wrap:wrap;gap:10px;margin-top:30px;}
  .cats span{
    border:1px solid var(--rule);background:var(--paper-card);
    padding:9px 16px;font-size:12px;font-weight:600;
    letter-spacing:.13em;text-transform:uppercase;color:var(--ink);
  }
  @media (max-width:520px){.cats{gap:7px;}.cats span{padding:8px 12px;font-size:11px;letter-spacing:.1em;}}

  /* ——— sélection ——— */
  .selection{background:var(--paper-warm);padding-bottom:70px;}
  .sel-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:22px;}
  .piece{background:var(--paper-card);border:1px solid var(--rule-soft);margin:0;}
  .piece img{width:100%;height:auto;} /* proportions d'origine : aucun meuble coupé */
  .piece figcaption{padding:16px 18px;border-top:1px solid var(--rule-soft);}
  .piece figcaption b{display:block;font-family:'Newsreader',serif;font-weight:400;font-size:18px;color:var(--ink);}
  .piece figcaption span{display:block;margin-top:4px;font-size:11px;font-weight:600;letter-spacing:.13em;text-transform:uppercase;color:var(--green-mid);}
  .c3{grid-column:span 3;} .c6{grid-column:span 6;}
  @media (max-width:880px){
    .sel-grid{grid-template-columns:repeat(2,1fr);gap:14px;}
    .c3{grid-column:span 1;}
    .c6{grid-column:span 2;}
  }
  @media (max-width:520px){
    .sel-grid{grid-template-columns:1fr;}
    .c3,.c6{grid-column:span 1;}
  }

  /* ——— la maison ——— */
  .house{background:var(--paper);}
  .house-grid{display:grid;grid-template-columns:1fr 1fr;gap:76px;align-items:start;}
  /* tant qu'aucune photo n'est fournie, le texte occupe toute la largeur */
  .house-grid.solo{grid-template-columns:1fr;max-width:70ch;}
  .house h2{font-size:clamp(30px,3.8vw,46px);max-width:16ch;}
  .house .lead{
    margin-top:24px;font-family:'Newsreader',serif;font-size:21px;font-weight:300;
    line-height:1.5;color:var(--ink);max-width:44ch;
  }
  .house p.txt{margin-top:18px;color:var(--ink-mute);font-size:16px;max-width:50ch;}
  .proofs{margin-top:38px;border-top:2px solid var(--ink);}
  .proof{padding:22px 0;border-bottom:1px solid var(--rule);display:grid;grid-template-columns:38px 1fr;gap:20px;align-items:start;}
  .proof .n{font-size:12px;font-weight:700;letter-spacing:.1em;color:var(--brass);padding-top:4px;}
  .proof h3{font-size:19px;margin-bottom:5px;}
  .proof p{font-size:15px;color:var(--ink-mute);line-height:1.6;}
  .addr{
    display:flex;flex-direction:column;gap:7px;margin-top:14px;
    padding-top:14px;border-top:1px solid var(--rule-soft);
    font-style:normal;font-size:14px;color:var(--ink-body);line-height:1.5;
  }
  .addr b{
    display:inline-block;min-width:74px;
    font-family:'Archivo',sans-serif;font-size:10.5px;font-weight:700;
    letter-spacing:.13em;text-transform:uppercase;color:var(--brass);
  }
  @media (max-width:520px){.addr b{display:block;min-width:0;margin-bottom:2px;}}
  .sig{margin-top:32px;padding:24px 26px;background:var(--paper-warm);border-left:3px solid var(--green);}
  .sig b{display:block;font-family:'Newsreader',serif;font-weight:400;font-size:24px;color:var(--ink);}
  .sig span{display:block;margin-top:5px;font-size:11.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--green-mid);}
  .shot-wrap{position:sticky;top:120px;}
  .shot-img{width:100%;height:auto;border:1px solid var(--rule);}
  .shot{background:var(--paper-warm);border:1px dashed var(--rule);aspect-ratio:4/5;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;text-align:center;padding:34px;}
  .shot-cap{margin-top:14px;font-size:12px;font-weight:600;letter-spacing:.13em;text-transform:uppercase;color:var(--green-mid);}
  .shot p{font-size:14px;color:var(--ink-mute);max-width:26ch;line-height:1.55;}
  @media (max-width:960px){
    .house-grid{grid-template-columns:1fr;gap:40px;}
    .shot-wrap{position:static;}
    .shot{max-width:100%;aspect-ratio:4/3;}
  }

  /* ——— avis clients : styles conservés, section réactivable quand de vrais témoignages seront disponibles ——— */
  .voices{background:var(--green);}
  .voices h2,.voices .head .sub{color:#FFFDF9;}
  .voices .label{color:#D8C79C;}
  .voices .rule-label::after{background:rgba(247,245,240,.3);}
  .voice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;}
  .voice{border:1px solid rgba(247,245,240,.3);padding:30px 26px;display:flex;flex-direction:column;gap:18px;min-height:200px;}
  .voice blockquote{margin:0;font-family:'Newsreader',serif;font-size:19px;line-height:1.55;font-style:italic;font-weight:300;color:#F7F5F0;}
  .voice cite{margin-top:auto;font-style:normal;font-size:11.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:#D8C79C;}
  .voice.todo{border-style:dashed;align-items:center;justify-content:center;text-align:center;gap:10px;}
  .voice.todo p{font-size:14px;color:rgba(247,245,240,.75);max-width:24ch;line-height:1.55;}
  @media (max-width:860px){.voice-grid{grid-template-columns:1fr;}}

  /* ——— appel final ——— */
  .close{text-align:center;background:var(--green);}
  .close h2{font-size:clamp(34px,4.8vw,58px);max-width:17ch;margin:0 auto;color:#FFFDF9;}
  .close .sub{margin:24px auto 0;font-family:'Newsreader',serif;font-size:21px;font-weight:300;color:#EFEBE1;max-width:44ch;line-height:1.5;}
  .close .btn{margin-top:38px;}
  .close .direct{margin-top:24px;font-size:15px;color:#C2C0B5;}
  .close .direct a{color:#FFFDF9;font-weight:600;border-bottom:1px solid rgba(255,253,249,.4);}

  /* ——— questions ——— */
  .qa-list{border-top:2px solid var(--ink);max-width:880px;}
  .qa-item{border-bottom:1px solid var(--rule);}
  .qa-q{
    width:100%;background:none;border:none;cursor:pointer;
    display:flex;justify-content:space-between;align-items:center;gap:20px;
    padding:26px 0;text-align:left;
    font-family:'Newsreader',serif;font-size:21px;font-weight:400;color:var(--ink);
  }
  .qa-q i{font-style:normal;color:var(--brass);font-size:22px;flex:none;transition:transform .25s ease;}
  .qa-item.open .qa-q i{transform:rotate(45deg);}
  .qa-a{max-height:0;overflow:hidden;transition:max-height .3s ease;}
  .qa-a p{padding-bottom:26px;color:var(--ink-mute);font-size:16px;max-width:66ch;}
  .qa-item.open .qa-a{max-height:360px;}
  .qa-more{display:none;}
  .qa-list.expanded .qa-more{display:block;}
  .qa-toggle{
    margin-top:26px;background:none;border:none;cursor:pointer;padding:0;
    font-family:'Archivo',sans-serif;font-size:14px;font-weight:600;
    letter-spacing:.06em;color:var(--ink);
    border-bottom:1px solid var(--rule);
  }
  .qa-toggle:hover{border-color:var(--ink);}
  .qa-list.expanded + .qa-toggle{display:none;}

  /* ——— zones (SEO, volontairement secondaire) ——— */
  .zones{padding-top:0;}
  .zones-inner{border-top:1px solid var(--rule);padding-top:38px;}
  .zones h2{font-size:20px;font-family:'Archivo',sans-serif;font-weight:600;letter-spacing:.02em;color:var(--ink);}
  .zones p{margin-top:14px;font-size:14.5px;color:var(--ink-mute);max-width:90ch;line-height:1.75;}

  /* ——— pied de page vert profond ——— */
  footer{background:var(--green);color:#E4E0D5;padding:88px 0 36px;}
  .foot-mark b{font-family:'Archivo',sans-serif;font-weight:700;font-size:26px;letter-spacing:.24em;text-transform:uppercase;color:#FFFDF9;display:block;}
  .foot-mark span{display:block;margin-top:9px;font-size:10px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:#D8C79C;}
  .foot-top{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:52px;padding-bottom:52px;border-bottom:1px solid rgba(228,224,213,.25);}
  .foot-top p{font-size:14.5px;line-height:1.75;margin-top:20px;color:#C2C0B5;}
  .foot-top h4{font-size:11px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:#D8C79C;margin:0 0 18px;}
  .foot-top a{display:block;font-size:15px;line-height:2.1;color:#F0EDE4;}
  .foot-top a:hover{color:#fff;text-decoration:underline;}
  .foot-bottom{padding-top:28px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;font-size:12.5px;color:#9EA396;}
  @media (max-width:860px){
    .foot-top{grid-template-columns:1fr;gap:36px;padding-bottom:36px;}
    footer{padding:60px 0 30px;}
  }

  /* ——— bulle WhatsApp : ordinateur uniquement ——— */
  .wa{position:fixed;right:22px;bottom:22px;z-index:65;display:flex;align-items:center;gap:12px;}
  .wa-word{
    background:var(--paper-card);border:1px solid var(--rule);padding:12px 16px;
    font-size:13.5px;line-height:1.45;max-width:215px;position:relative;color:var(--ink-body);
    box-shadow:0 8px 26px rgba(20,22,15,.14);
    opacity:0;transform:translateY(6px);pointer-events:none;transition:opacity .3s ease,transform .3s ease;
  }
  .wa-word.show{opacity:1;transform:none;pointer-events:auto;}
  .wa-word button{position:absolute;top:3px;right:6px;background:none;border:none;cursor:pointer;color:var(--ink-mute);font-size:13px;padding:2px;}
  .wa-btn{
    width:52px;height:52px;border-radius:50%;flex:none;background:var(--green);
    display:flex;align-items:center;justify-content:center;box-shadow:0 8px 24px rgba(20,22,15,.28);
    transition:background .18s ease;
  }
  .wa-btn:hover,.wa-btn:focus-visible{background:var(--green-deep);transform:translateY(-1px);}
  .wa-btn{transition:background .18s ease,transform .18s ease;}
  .wa-btn svg{width:25px;height:25px;fill:#F7F5F0;}
  @media (max-width:960px){
    .wa{right:14px;bottom:94px;}        /* juste au-dessus de la barre d'action */
    .wa-btn{width:48px;height:48px;}
    .wa-btn svg{width:23px;height:23px;}
    .wa-word{max-width:176px;font-size:12.5px;padding:10px 13px;}
  }

  /* ——— barre d'action mobile ——— */
  .dock{
    position:fixed;left:0;right:0;bottom:0;z-index:70;display:none;gap:10px;
    padding:11px 14px calc(11px + env(safe-area-inset-bottom));
    background:rgba(247,245,240,.97);backdrop-filter:blur(12px);border-top:1px solid var(--rule);
  }
  .dock .btn{flex:1;padding:16px 12px;min-height:56px;font-size:15px;}
  .dock .btn-ghost{flex:0 0 auto;padding:16px 22px;}
  @media (max-width:960px){.dock{display:flex;} body{padding-bottom:84px;}}

  /* ================================================================
     PAGES INTÉRIEURES (antiquaire / brocanteur / succession)
     L'en-tête du site est prévu pour se poser sur la photo d'accueil.
     Sur ces pages il n'y a pas de photo : on le rend crème d'emblée.
     ================================================================ */
  .page-inner .top{background:rgba(247,245,240,.97);backdrop-filter:blur(12px);border-bottom:1px solid var(--rule);}
  .js .page-inner .top .mark{opacity:1;pointer-events:auto;}
  .page-inner .top .mark .l1{color:var(--ink);}
  .page-inner .top .mark .l2{color:var(--green-mid);}
  .page-inner .top nav a{color:var(--ink-body);}

  .page-head{background:var(--paper-warm);border-bottom:1px solid var(--rule);
             padding:150px 0 78px;}
  .page-head .fil{font-size:13.5px;letter-spacing:.04em;color:var(--ink-mute);margin-bottom:26px;}
  .page-head .fil a{color:var(--ink-mute);border-bottom:1px solid var(--rule);}
  .page-head .fil a:hover{color:var(--ink);}
  .page-head .fil span{margin:0 7px;color:var(--rule);}
  .page-head .fil strong{color:var(--ink-body);font-weight:600;}
  .page-head h1{font-size:clamp(35px,5.2vw,64px);letter-spacing:-.025em;max-width:19ch;line-height:1.06;}
  .page-head h1 em{font-style:italic;font-weight:300;color:var(--green-mid);}
  .page-head .chapo{margin-top:26px;max-width:60ch;font-size:17.5px;color:var(--ink-body);line-height:1.62;}
  .page-cta{margin-top:38px;display:flex;align-items:center;gap:26px;flex-wrap:wrap;}
  .page-cta .tel{font-size:15px;color:var(--ink-body);border-bottom:1px solid var(--rule);}
  .page-cta .tel:hover{color:var(--ink);}

  .prose-sec{padding:86px 0;}
  .prose-sec.alt{background:var(--paper-warm);border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);}
  .prose{max-width:74ch;}
  .prose h2{font-size:clamp(28px,3.6vw,42px);letter-spacing:-.02em;margin-bottom:26px;}
  .prose h3{font-size:21px;margin:38px 0 14px;letter-spacing:-.01em;}
  .prose p{color:var(--ink-body);font-size:16.5px;line-height:1.72;margin-bottom:19px;}
  .prose p:last-child{margin-bottom:0;}
  .prose a{color:var(--green-mid);border-bottom:1px solid var(--rule);font-weight:500;}
  .prose a:hover{color:var(--ink);border-bottom-color:var(--brass);}

  .liste{margin:0 0 19px;padding:0;list-style:none;}
  .liste li{position:relative;padding-left:23px;margin-bottom:11px;
            color:var(--ink-body);font-size:16.5px;line-height:1.62;}
  .liste li::before{content:"";position:absolute;left:0;top:11px;
                    width:7px;height:1px;background:var(--brass);}

  .defs{margin:0 0 19px;}
  .defs dt{font-family:'Newsreader',serif;font-size:22px;color:var(--ink);
           margin-top:28px;letter-spacing:-.01em;}
  .defs dt:first-child{margin-top:0;}
  .defs dd{margin:8px 0 0;padding-left:19px;border-left:1px solid var(--rule);
           color:var(--ink-body);font-size:16.5px;line-height:1.7;}

  @media (max-width:820px){
    .page-head{padding:118px 0 54px;}
    .page-head h1{font-size:clamp(30px,8vw,40px);max-width:none;}
    .page-head .chapo{font-size:16px;margin-top:20px;}
    .page-cta{gap:18px;}
    .prose-sec{padding:56px 0;}
    .prose h2{font-size:clamp(25px,7vw,32px);margin-bottom:20px;}
    .prose p,.liste li,.defs dd{font-size:16px;}
    .defs dt{font-size:20px;}
  }

  .zones-liens{margin-top:20px;font-size:15.5px;color:var(--ink-mute);line-height:1.75;}
  .zones-liens a{color:var(--green-mid);border-bottom:1px solid var(--rule);font-weight:500;}
  .zones-liens a:hover{color:var(--ink);border-bottom-color:var(--brass);}

  /* En-tête de page intérieure : texte + photo sur ordinateur */
  .ph-grid{display:grid;grid-template-columns:1.35fr .65fr;gap:56px;align-items:center;}
  .ph-txt{min-width:0;}
  .ph-img{margin:0;position:relative;}
  .ph-img::after{content:"";position:absolute;inset:0;
                 box-shadow:inset 0 0 0 1px rgba(20,22,15,.10);pointer-events:none;}
  .ph-img img{display:block;width:100%;height:auto;} /* proportions d'origine : aucun meuble coupé */

  /* Photo au fil du texte */
  .fig-inline{margin:38px 0 34px;max-width:520px;}
  .fig-inline img{display:block;width:100%;height:auto;
                  box-shadow:inset 0 0 0 1px rgba(20,22,15,.10);} /* proportions d'origine */
  .fig-inline figcaption{margin-top:12px;font-size:14px;color:var(--ink-mute);
                         letter-spacing:.01em;font-style:italic;}

  /* Respiration du texte sur grand écran */
  .prose-sec .prose h2{max-width:22ch;}

  @media (max-width:900px){
    .ph-grid{grid-template-columns:1fr;gap:32px;}
    .ph-img img{height:auto;}
    .fig-inline{margin:30px 0 26px;max-width:none;}
    .fig-inline img{height:auto;}
    .prose-sec .prose h2{max-width:none;}
  }

/* Bandeau de consentement cookies (Google Ads) */
.cookie-banner{
  display:none;position:fixed;left:0;right:0;bottom:0;z-index:9999;
  background:var(--green);color:#F7F5F0;
  padding:16px 20px;box-shadow:0 -6px 24px rgba(12,16,10,.34);
  font-size:.92rem;line-height:1.45;
}
.cookie-banner.show{display:flex;flex-wrap:wrap;gap:14px;align-items:center;justify-content:space-between;}
.cookie-banner p{margin:0;max-width:640px;color:#F7F5F0;}
.cookie-actions{display:flex;gap:10px;flex:0 0 auto;}
.cookie-banner .btn-ghost{border-color:#F7F5F0;color:#F7F5F0;}
.cookie-banner .btn-ghost:hover,.cookie-banner .btn-ghost:focus-visible{background:#F7F5F0;color:var(--green);}
@media (max-width:640px){
  .cookie-banner.show{flex-direction:column;align-items:stretch;}
  .cookie-actions{justify-content:flex-end;}
}
