/* Charte Manufacture du châtaignier : vert #b6c649, aubergine #382633, Fira Sans */
:root{--c1:#b6c649;--c1-fonce:#899537;--c1-pale:#edf1d2;--c2:#382633;--c2-profond:#1c131a;--c2-gris:#6a5c66;--c2-clair:#cdc9cc;--bg:#eeeff5;--fg:#382633;--carte:#fff;--filet:#dcdde6}
@media (prefers-color-scheme:dark){:root{--bg:#1c131a;--fg:#eeeff5;--carte:#2a1d26;--filet:#4a3a45;--c1-fonce:#b6c649;--c2-gris:#cdc9cc}}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--fg);font:400 16px/1.55 "Fira Sans",system-ui,sans-serif;min-height:100vh;display:flex;flex-direction:column}
.nav{background:var(--c1);border-top:6px solid var(--c2);padding:14px 32px;display:flex;align-items:center;gap:24px}
.nav a{color:#fff;text-decoration:none;font-weight:700}
.nav .logo{font-size:1.3rem}
.nav .lien{margin-left:auto;font-size:.78rem;text-transform:uppercase;letter-spacing:.06em;border:2px solid #fff;padding:7px 14px}
body>header{background:var(--c2);color:#fff;padding:56px 32px 48px;position:relative;overflow:hidden}
body>header::after{content:"";position:absolute;right:-60px;top:-60px;width:320px;height:320px;border-radius:50%;background:var(--c1);opacity:.12}
.in{max-width:1040px;margin:0 auto;position:relative;z-index:1}
body>header small{color:var(--c1);font-weight:700;text-transform:uppercase;letter-spacing:.14em;font-size:.78rem}
h1{font-weight:700;font-size:clamp(2rem,5vw,3rem);line-height:1.1;margin:10px 0 0}
h1 em{font-style:normal;color:var(--c1)}
body>header hr{width:120px;border:0;border-top:4px solid var(--c1);margin:22px 0 16px;margin-left:0}
body>header p{font-weight:200;font-size:1.2rem;max-width:640px;margin:0;color:var(--c2-clair)}
main{flex:1;width:100%;max-width:1104px;margin:0 auto;padding:36px 32px 48px}
main h2{font-weight:700;font-size:1.5rem;margin:0 0 18px;display:flex;align-items:center;gap:12px}
main h2::before{content:"";width:8px;height:28px;background:var(--c1)}
table{width:100%;border-collapse:separate;border-spacing:0 14px}
th{text-transform:uppercase;letter-spacing:.08em;font-size:.72rem;color:var(--c2-gris);font-weight:700;text-align:left;padding:0 12px}
td{padding:14px 12px;background:var(--carte);vertical-align:middle;box-shadow:0 1px 3px rgba(56,38,51,.12)}
td:first-child{border-left:6px solid var(--c1)}
tbody tr:hover td:first-child{border-left-color:var(--c2)}
td img{width:200px;max-width:100%;display:block;background:var(--c2-clair);cursor:zoom-in}
td:nth-child(2){color:var(--c1-fonce);font-weight:700}
td.n{font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}
button{font:700 .9rem "Fira Sans",sans-serif;padding:9px 16px;border:2px solid var(--c1);background:var(--carte);color:var(--c1-fonce);border-radius:3px;cursor:pointer;margin:2px 6px 2px 0}
button:hover,#envoyer{background:var(--c1);color:#fff}
.bouton{display:inline-block;font:700 .9rem "Fira Sans",sans-serif;padding:9px 16px;border:2px solid var(--c1);background:var(--carte);color:var(--c1-fonce);border-radius:3px;margin:2px 6px 2px 0;text-decoration:none}
.bouton:hover{background:var(--c1);color:#fff}
tr.groupe td{background:none;box-shadow:none;border-left:0;padding:22px 0 0;font-size:1.15rem;font-weight:700;color:var(--c1-fonce)}
tbody tr.groupe:hover td:first-child{border-left:0}
dialog{border:0;border-top:6px solid var(--c1);border-radius:0;background:var(--carte);color:var(--fg);max-width:440px;width:calc(100% - 32px);box-shadow:0 8px 24px rgba(28,19,26,.35)}
dialog::backdrop{background:rgba(28,19,26,.65)}
dialog h2{margin:0 0 6px;font-size:1.25rem}
label{display:block;margin:10px 0;font-size:.9rem}
input[type=email]{display:block;width:100%;padding:10px;margin-top:4px;font:inherit;border:1px solid var(--c2-clair);background:transparent;color:var(--fg)}
.rgpd{font-size:.78rem;color:var(--c2-gris)}
.btns{display:flex;justify-content:flex-end;gap:8px}
#msg{min-height:1.4em}
#vue{max-width:960px;width:calc(100% - 24px);padding:12px}
.vh{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}
#cv{height:min(60vh,520px);background:var(--c2-clair);overflow:hidden}
.aide{font-size:.8rem;color:var(--c2-gris);margin:6px 0 0}
footer{background:var(--c2-profond);color:var(--c2-clair);font-size:.8rem;padding:22px 32px;border-top:6px solid var(--c1);display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}
@media (max-width:700px){
  .nav,body>header,main,footer{padding-left:16px;padding-right:16px}
  thead{display:none}
  table{border-spacing:0}
  tr{display:block;background:var(--carte);border-left:6px solid var(--c1);margin-bottom:14px;padding:8px 0}
  td{display:block;box-shadow:none;border:0!important;padding:2px 12px}
  tr.groupe{background:none;border:0;padding:0}
}
