@font-face{font-family:"Bodoni Moda";src:url(fonts/bodoni-moda.woff2) format("woff2");font-weight:400 900;font-display:swap}
@font-face{font-family:"Bodoni Moda";font-style:italic;src:url(fonts/bodoni-moda-italic.woff2) format("woff2");font-weight:400 900;font-display:swap}
@font-face{font-family:"Jost";src:url(fonts/jost.woff2) format("woff2");font-weight:100 900;font-display:swap}

/* Espace Maison Anquetil : identité noire de la Maison, thème unique. */
:root{
  --bg:#0B0B0A; --panel:#121211; --raise:#191917; --ink:#EFEBE4; --soft:rgba(239,235,228,.72); --faint:rgba(239,235,228,.46); --line:rgba(239,235,228,.12);
  --accent:#D9C7A3; --ok:#8FBF9A; --warn:#E0B26B; --crit:#E08A7A;
  --display:"Bodoni Moda","Didot","Bodoni 72",Georgia,serif; --body:"Jost","Futura","Century Gothic",system-ui,sans-serif;
  color-scheme:dark;
}
*,*::before,*::after{box-sizing:border-box}
[hidden]{display:none!important}
html,body{background:var(--bg);color:var(--ink)}
body{font-family:var(--body);font-weight:300;font-size:15px;line-height:1.55;-webkit-font-smoothing:antialiased}
button,input,select,textarea{font:inherit;color:inherit}
a{color:inherit}
h1,h2,h3{font-family:var(--display);font-weight:400;margin:0;text-wrap:balance;letter-spacing:-.005em}
.eyebrow{font-size:.7rem;letter-spacing:.2em;text-transform:uppercase;color:var(--faint);font-weight:500;margin:0}
:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;height:2.6rem;padding-inline:1.2rem;border-radius:999px;border:1px solid var(--ink);background:var(--ink);color:var(--bg);font-size:.86rem;font-weight:500;cursor:pointer;white-space:nowrap}
.btn.line{background:transparent;color:var(--ink);border-color:var(--line)}
.btn.line:hover{border-color:var(--soft)}
.btn.sm{height:2.1rem;padding-inline:.9rem;font-size:.8rem}
.tag{display:inline-flex;align-items:center;gap:.4rem;font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;padding:.25rem .6rem;border-radius:999px;border:1px solid var(--line);color:var(--soft);white-space:nowrap}
.tag::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}
.tag.ok{color:var(--ok);border-color:color-mix(in srgb,var(--ok) 40%,transparent)}
.tag.warn{color:var(--warn);border-color:color-mix(in srgb,var(--warn) 40%,transparent)}
.tag.crit{color:var(--crit);border-color:color-mix(in srgb,var(--crit) 40%,transparent)}
.bar{height:3px;background:var(--line);border-radius:2px;overflow:hidden}
.bar i{display:block;height:100%;background:var(--accent)}
.num{font-variant-numeric:tabular-nums}

/* Connexion */
.login{min-height:100vh;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr)}
@media (max-width:860px){.login{grid-template-columns:1fr}}
.login .side{padding:clamp(2rem,6vw,5rem);display:flex;flex-direction:column;justify-content:space-between;gap:3rem;border-right:1px solid var(--line);background:radial-gradient(ellipse at 20% 0%,rgba(217,199,163,.08),transparent 60%)}
.login .side h1{font-size:clamp(2.4rem,5vw,4.2rem);line-height:1.02;margin-top:1rem}
.login .side h1 em{color:var(--accent)}
.login .side p{color:var(--soft);max-width:30rem}
.brand{display:flex;align-items:center;gap:.7rem;font-family:var(--display);font-size:1.2rem}
.brand svg{width:22px;height:24px}
.login form{padding:clamp(2rem,6vw,5rem);display:flex;flex-direction:column;justify-content:center;gap:1.2rem;max-width:32rem;width:100%;margin-inline:auto}
.field{display:grid;gap:.35rem}
.field>span{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--faint)}
.field small{color:var(--faint);font-size:.78rem}
input[type=text],input[type=search],input[type=password],input[type=date],input[type=number],input[type=url],input[type=tel],input[type=email],select,textarea{width:100%;background:transparent;border:0;border-bottom:1px solid var(--line);padding:.55rem 0;border-radius:0;transition:border-color .2s}
input:focus,select:focus,textarea:focus{outline:none;border-bottom-color:var(--accent)}
input:disabled,textarea:disabled,select:disabled{color:var(--soft);border-bottom-style:dotted}
textarea{min-height:4.5rem;resize:vertical}
select{background:var(--bg)}
.demo{border-top:1px solid var(--line);padding-top:1.2rem;display:grid;gap:.5rem}
.demo button{display:grid;grid-template-columns:7rem 1fr auto;gap:1rem;align-items:baseline;text-align:left;background:transparent;border:0;border-bottom:1px solid var(--line);padding:.6rem 0;cursor:pointer;color:var(--soft)}
.demo button:hover{color:var(--ink)}
.demo b{font-weight:500;color:var(--ink)}
.demo code{font-size:.78rem;color:var(--faint)}
.err{color:var(--crit);font-size:.85rem;min-height:1.2em;margin:0}

/* Application */
.app{display:grid;grid-template-columns:16rem minmax(0,1fr);min-height:100vh}
@media (max-width:960px){.app{grid-template-columns:1fr}}
.nav{border-right:1px solid var(--line);padding:1.4rem 1.1rem;display:flex;flex-direction:column;gap:1.4rem;position:sticky;top:0;height:100vh;overflow:auto;background:var(--bg)}
@media (max-width:960px){.nav{position:static;height:auto;border-right:0;border-bottom:1px solid var(--line);padding:1rem 16px}}
.who{display:grid;gap:.15rem;padding-bottom:1.2rem;border-bottom:1px solid var(--line)}
.who b{font-weight:500}
.who span{font-size:.8rem;color:var(--faint)}
.menu{display:grid;gap:.1rem}
@media (max-width:960px){.menu{display:flex;overflow-x:auto;gap:.3rem;padding-bottom:.3rem}}
.menu button{display:grid;grid-template-columns:1.8rem 1fr auto;gap:.4rem;align-items:center;text-align:left;background:transparent;border:0;border-radius:8px;padding:.5rem .6rem;cursor:pointer;color:var(--soft);font-size:.88rem}
@media (max-width:960px){.menu button{grid-template-columns:auto auto;white-space:nowrap;border:1px solid var(--line);border-radius:999px;padding:.35rem .8rem}.menu button i{display:none}}
.menu button:hover{background:var(--panel);color:var(--ink)}
.menu button[aria-current="true"]{background:var(--raise);color:var(--ink)}
.menu i{font-style:normal;font-size:.72rem;color:var(--faint)}
.dot{width:7px;height:7px;border-radius:50%;background:var(--line)}
.dot.full{background:var(--ok)}.dot.part{background:var(--warn)}
.nav .foot{margin-top:auto;display:grid;gap:.5rem}
@media (max-width:960px){.nav .foot{display:flex;flex-wrap:wrap}}
.main{padding:clamp(1.4rem,4vw,3rem) clamp(16px,4vw,3.5rem) 5rem;min-width:0}
.head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:1.5rem;padding-bottom:1.6rem;border-bottom:1px solid var(--line);margin-bottom:2rem}
.head h1{font-size:clamp(1.9rem,3.6vw,2.9rem);line-height:1.05;margin-top:.5rem}
.head .meta{display:flex;flex-wrap:wrap;gap:1.6rem;color:var(--soft);font-size:.88rem}
.head .meta b{display:block;font-family:var(--display);font-weight:400;font-size:1.6rem;color:var(--ink);line-height:1.1}
.kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line);border-radius:12px;overflow:hidden;margin-bottom:2rem}
@media (max-width:700px){.kpis{grid-template-columns:1fr 1fr}}
.kpis div{background:var(--bg);padding:1rem 1.1rem}
.kpis b{display:block;font-family:var(--display);font-weight:400;font-size:1.8rem;line-height:1.1}
.kpis span{font-size:.78rem;color:var(--faint)}

/* Dossier */
.sec{max-width:52rem}
.sec-top{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:1rem;margin-bottom:.6rem}
.sec-top h2{font-size:clamp(1.6rem,3vw,2.2rem)}
.sec-top h2 small{font-family:var(--body);font-size:.8rem;color:var(--faint);margin-right:.8rem;letter-spacing:.1em}
.owner{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--accent)}
.intro{color:var(--soft);margin:0 0 2rem;max-width:42rem}
.group{margin-top:2.2rem}
.group>h3{font-size:1.2rem;margin-bottom:1rem}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem 2rem}
@media (max-width:640px){.grid2{grid-template-columns:1fr}}
.grid2 .wide{grid-column:1 / -1}
.checks{display:flex;flex-wrap:wrap;gap:.5rem}
.checks label{display:inline-flex;align-items:center;gap:.5rem;border:1px solid var(--line);border-radius:999px;padding:.4rem .85rem;font-size:.85rem;cursor:pointer;color:var(--soft)}
.checks label:has(input:checked){border-color:var(--accent);color:var(--ink);background:rgba(217,199,163,.08)}
.checks input{accent-color:var(--accent)}
.checks label:has(input:disabled){cursor:default}
.tbl{overflow-x:auto;border:1px solid var(--line);border-radius:10px}
table{border-collapse:collapse;width:100%;min-width:34rem;font-size:.88rem}
th{text-align:left;font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;color:var(--faint);font-weight:500;padding:.7rem .8rem;border-bottom:1px solid var(--line);background:var(--panel)}
td{padding:.15rem .8rem;border-bottom:1px solid var(--line);vertical-align:top}
tr:last-child td{border-bottom:0}
td input,td textarea{border-bottom-color:transparent!important}
td input:focus,td textarea:focus{border-bottom-color:var(--accent)!important}
td.k{color:var(--soft);padding-top:.6rem;white-space:nowrap}
.add{margin-top:.7rem}
.saved{font-size:.78rem;color:var(--faint)}
.note{border-left:2px solid var(--accent);padding:.2rem 0 .2rem 1rem;color:var(--soft);margin:1.4rem 0}
.split{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1rem}
@media (max-width:640px){.split{grid-template-columns:repeat(3,minmax(0,1fr))}}
.valid{display:grid;gap:.6rem}
.valid div{display:grid;grid-template-columns:7rem 1fr auto;gap:1rem;align-items:center;border-bottom:1px solid var(--line);padding:.6rem 0}
.pager{display:flex;justify-content:space-between;gap:1rem;margin-top:3rem;padding-top:1.4rem;border-top:1px solid var(--line)}

/* Planning */
.month{margin-top:2.2rem}
.month h3{font-size:1.1rem;color:var(--soft);margin-bottom:.8rem}
.ev{display:grid;grid-template-columns:4.2rem minmax(0,1fr) auto;gap:1.2rem;align-items:center;width:100%;text-align:left;background:transparent;border:0;border-top:1px solid var(--line);padding:1.1rem 0;cursor:pointer}
.ev:hover .t b{color:var(--accent)}
.ev .d{display:grid;justify-items:center;border:1px solid var(--line);border-radius:10px;padding:.4rem 0}
.ev .d b{font-family:var(--display);font-weight:400;font-size:1.6rem;line-height:1}
.ev .d span{font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;color:var(--faint)}
.ev .t{display:grid;gap:.2rem;min-width:0}
.ev .t b{font-family:var(--display);font-weight:400;font-size:1.25rem;transition:color .2s}
.ev .t span{color:var(--faint);font-size:.84rem}
.ev .r{display:grid;justify-items:end;gap:.45rem;min-width:7rem}
@media (max-width:560px){.ev{grid-template-columns:3.6rem minmax(0,1fr)}.ev .r{grid-column:2;justify-items:start}}

/* Fiche DJ */
.sheet{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:2.5rem}
@media (max-width:1100px){.sheet{grid-template-columns:1fr}}
.blk{border-top:1px solid var(--line);padding-top:1.1rem;margin-bottom:2rem}
.blk h3{font-size:1.15rem;margin-bottom:.8rem}
dl.kv{display:grid;grid-template-columns:11rem minmax(0,1fr);gap:.55rem 1rem;margin:0;font-size:.9rem}
@media (max-width:560px){dl.kv{grid-template-columns:1fr}}
dl.kv dt{color:var(--faint)}
dl.kv dd{margin:0;white-space:pre-wrap}
.empty{color:var(--faint);font-style:italic}
ol.tracks{margin:0;padding-left:1.3rem;display:grid;gap:.35rem}
ol.tracks span{color:var(--faint)}

/* Maison */
.list{border:1px solid var(--line);border-radius:12px;overflow-x:auto}
.list table{min-width:46rem}
.list td{padding:.8rem;vertical-align:middle}
.list td .bar{width:7rem}
.rowbtn{background:transparent;border:0;cursor:pointer;text-align:left;padding:0;font-family:var(--display);font-size:1.05rem}
.rowbtn:hover{color:var(--accent)}
.newbox{border:1px solid var(--line);border-radius:12px;padding:1.4rem;margin-top:2rem;background:var(--panel)}
.cred{margin-top:1rem;border:1px dashed var(--accent);border-radius:10px;padding:1rem;display:grid;gap:.3rem;font-size:.9rem}
.cred code{font-size:.95rem;color:var(--accent)}
.toast{position:fixed;left:50%;bottom:calc(1.4rem + env(safe-area-inset-bottom,0px));transform:translateX(-50%);background:var(--ink);color:var(--bg);padding:.6rem 1.1rem;border-radius:999px;font-size:.85rem;opacity:0;transition:opacity .3s;pointer-events:none;z-index:50}
.toast.on{opacity:1}
.banner{font-size:.78rem;color:var(--faint);border:1px solid var(--line);border-radius:999px;padding:.35rem .9rem;display:inline-block}
@media (prefers-reduced-motion:reduce){*{transition:none!important}}

/* ===== Compléments plateforme ===== */
.mk{display:inline-block;width:30px;height:24px;background:currentColor;-webkit-mask:url(img/monogramme.svg) center/contain no-repeat;mask:url(img/monogramme.svg) center/contain no-repeat}
.brand{gap:.8rem}
.brand b{font-family:var(--display);font-weight:400;font-size:.78rem;letter-spacing:.42em;text-transform:uppercase}
.login .side .mk{width:64px;height:50px;color:var(--ink)}
.login .hint{color:var(--faint);font-size:.85rem}
.link{background:none;border:0;padding:0;color:var(--soft);text-decoration:underline;text-underline-offset:3px;cursor:pointer;font-size:.86rem}
.link:hover{color:var(--ink)}
.btn:disabled{opacity:.5;cursor:default}
.btn.danger{background:transparent;color:var(--crit);border-color:color-mix(in srgb,var(--crit) 45%,transparent)}
.btn.ok{background:var(--ok);border-color:var(--ok);color:#0B0B0A}
.row{display:flex;flex-wrap:wrap;gap:.6rem;align-items:center}
.spacer{flex:1}
.muted{color:var(--faint)}
.small{font-size:.82rem}
.tabs{display:flex;gap:.3rem;flex-wrap:wrap;border-bottom:1px solid var(--line);margin:-.6rem 0 2rem}
.tabs button{background:none;border:0;border-bottom:2px solid transparent;padding:.7rem .9rem;color:var(--soft);cursor:pointer;font-size:.9rem;margin-bottom:-1px}
.tabs button[aria-selected="true"]{color:var(--ink);border-bottom-color:var(--accent)}
.tabs button:hover{color:var(--ink)}
.tabs .count{font-size:.72rem;color:var(--faint);margin-left:.35rem}
.form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem 2rem;max-width:52rem}
.form .wide{grid-column:1 / -1}
@media (max-width:640px){.form{grid-template-columns:1fr}}
.form .actions{grid-column:1 / -1;display:flex;flex-wrap:wrap;gap:.6rem;margin-top:.6rem}
.chips{display:flex;flex-wrap:wrap;gap:.4rem}
.chip{display:inline-flex;align-items:center;gap:.4rem;border:1px solid var(--line);border-radius:999px;padding:.25rem .3rem .25rem .75rem;font-size:.84rem}
.chip button{background:none;border:0;color:var(--faint);cursor:pointer;width:1.6rem;height:1.6rem;border-radius:50%}
.chip button:hover{color:var(--crit);background:var(--raise)}
/* fil de messages */
.thread{display:grid;gap:.9rem;max-width:46rem;margin-bottom:1.4rem}
.msg{border:1px solid var(--line);border-radius:14px;padding:.8rem 1rem;background:var(--panel);max-width:40rem}
.msg.me{justify-self:end;background:var(--raise);border-color:rgba(217,199,163,.25)}
.msg header{display:flex;gap:.8rem;justify-content:space-between;font-size:.76rem;color:var(--faint);margin-bottom:.35rem}
.msg header b{color:var(--soft);font-weight:500}
.msg p{margin:0;white-space:pre-wrap}
.msg .files{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.6rem}
.compose{display:grid;gap:.7rem;max-width:46rem;border-top:1px solid var(--line);padding-top:1.2rem}
.compose textarea{min-height:5.5rem;border:1px solid var(--line);border-radius:12px;padding:.8rem 1rem}
.canaux{display:flex;gap:.4rem;flex-wrap:wrap;margin-bottom:1.4rem}
.canaux button{border:1px solid var(--line);background:none;border-radius:999px;padding:.4rem .9rem;color:var(--soft);cursor:pointer;font-size:.84rem}
.canaux button[aria-pressed="true"]{border-color:var(--accent);color:var(--ink)}
/* documents */
.docs{display:grid;gap:.1rem;max-width:52rem}
.doc{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1rem;align-items:center;border-top:1px solid var(--line);padding:.9rem 0}
.doc b{font-weight:500}
.doc .muted{font-size:.8rem}
/* équipe */
.team{display:grid;grid-template-columns:repeat(auto-fill,minmax(12rem,1fr));gap:1px;background:var(--line);border:1px solid var(--line);border-radius:12px;overflow:hidden;max-width:52rem}
.team div{background:var(--bg);padding:1rem 1.1rem;display:grid;gap:.2rem}
.team b{font-family:var(--display);font-weight:400;font-size:1.25rem}
/* modale */
.modal{position:fixed;inset:0;z-index:60;background:rgba(0,0,0,.6);display:grid;place-items:center;padding:16px}
.modal>div{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:1.6rem;width:min(36rem,100%);max-height:90vh;overflow:auto}
.modal h2{font-size:1.6rem;margin-bottom:1.2rem}
/* calendrier */
.cal{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line);border-radius:12px;overflow:hidden}
.cal .dow{background:var(--panel);font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;color:var(--faint);padding:.5rem .6rem}
.cal .day{background:var(--bg);min-height:6.5rem;padding:.4rem;display:flex;flex-direction:column;gap:.25rem}
.cal .day.out{background:#0E0E0D}
.cal .day.out .n{color:rgba(239,235,228,.2)}
.cal .day.today .n{color:var(--accent)}
.cal .n{font-size:.75rem;color:var(--faint)}
.cal .e{display:block;width:100%;text-align:left;background:var(--raise);border:0;border-left:2px solid var(--accent);border-radius:4px;padding:.2rem .35rem;font-size:.74rem;color:var(--ink);cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cal .e.Option{border-left-color:var(--warn)}
.cal .e.Annulé{opacity:.45;text-decoration:line-through}
@media (max-width:760px){.cal .day{min-height:4.2rem}.cal .e{font-size:0;height:6px;padding:0}}
.warnbox{border:1px solid color-mix(in srgb,var(--warn) 45%,transparent);color:var(--warn);border-radius:10px;padding:.6rem .9rem;font-size:.86rem}
.okbox{border:1px solid color-mix(in srgb,var(--ok) 45%,transparent);color:var(--ok);border-radius:10px;padding:.6rem .9rem;font-size:.86rem}
.loading{color:var(--faint);padding:3rem 0}
.sections{display:grid;gap:.1rem;margin-bottom:2rem}
.dossier{display:grid;grid-template-columns:15rem minmax(0,1fr);gap:2.5rem}
@media (max-width:1100px){.dossier{grid-template-columns:1fr}.dossier .menu{display:flex;overflow-x:auto;gap:.3rem;padding-bottom:.3rem}.dossier .menu button{grid-template-columns:auto auto;white-space:nowrap;border:1px solid var(--line);border-radius:999px;padding:.35rem .8rem}.dossier .menu button i{display:none}}
.dossier .menu{position:sticky;top:1rem;align-self:start}
@media print{
  .nav,.tabs,.compose,.btn,.canaux,.noprint{display:none!important}
  .app{display:block}
  body,html{background:#fff;color:#111}
  :root{--ink:#111;--soft:#333;--faint:#666;--line:#ccc;--bg:#fff;--panel:#fff;--raise:#fff}
  .main{padding:0}
}
.nav .brand{text-decoration:none;white-space:nowrap}
.nav .brand b{letter-spacing:.3em;font-size:.72rem}

/* ===== Matériel ===== */
.cat-h{font-size:1.2rem;margin:2.2rem 0 .8rem;display:flex;align-items:baseline;gap:.8rem}
#mi-list>.cat-h:first-child,#md-list>.cat-h:first-child,#tab>.cat-h:first-of-type{margin-top:.4rem}
.list table.mat{min-width:40rem}
.list th.r,.list td.r{text-align:right}
.list th.c,.list td.c{text-align:center}
.list td .big,.list td.big{font-family:var(--display);font-size:1.25rem}
.list tr.arch td{opacity:.55}
.list td input[type=text]{min-width:9rem}
input.qty{width:4.4rem;text-align:right;font-variant-numeric:tabular-nums}
.list input[type=checkbox],.row input[type=checkbox],.form input[type=checkbox]{accent-color:var(--accent);width:1.05rem;height:1.05rem;vertical-align:-.15rem}
.list td.c input[type=checkbox]{width:1.3rem;height:1.3rem;cursor:pointer}
.kitline{display:grid;grid-template-columns:minmax(0,1fr) 4.6rem 2.6rem;gap:.7rem;align-items:end;margin-bottom:.45rem}
.kitline.head span{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--faint)}
.kitline .btn{padding:0;width:2.1rem}
.evchip{cursor:pointer;background:none;color:var(--soft);padding:.35rem .85rem}
.evchip:hover{color:var(--ink);border-color:var(--soft)}
.warnbox b{font-weight:500}

/* ===== Bon de chargement (document A4) ===== */
html:has(body.bon-doc){background:#E7E4DE}
body.bon-doc{margin:0;--bg:#E7E4DE;--ink:#151513;--soft:#3a3935;--faint:#6d6a63;--line:#d3cec5;--panel:#fff;--raise:#f3f1ec;color-scheme:light;background:#E7E4DE;color:#151513}
.bon-bar{max-width:210mm;margin:1.2rem auto 0;padding:0 16px;display:flex;flex-wrap:wrap;gap:.6rem;align-items:center}
.bon{background:#fff;color:#151513;max-width:210mm;margin:1rem auto 3rem;padding:13mm 12mm 11mm;box-shadow:0 12px 40px rgba(0,0,0,.14);font-size:9.6pt;line-height:1.45;-webkit-print-color-adjust:exact;print-color-adjust:exact}
@media (max-width:820px){.bon{padding:20px 16px;margin:.8rem 0 2rem}}
.bon-h{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;border-bottom:1.5px solid #151513;padding-bottom:4mm}
.bon-brand{display:flex;align-items:center;gap:3mm}
.bon-brand .mk{width:34px;height:27px;color:#151513}
.bon-brand b{font-family:var(--display);font-weight:400;font-size:8pt;letter-spacing:.42em;text-transform:uppercase}
.bon-ref{display:grid;justify-items:end;gap:.5mm;font-size:8pt;color:#55534d;text-align:right}
.bon-ref b{font-family:var(--display);font-weight:400;font-size:14pt;color:#151513;letter-spacing:0}
.bon-t{margin:6mm 0 5mm}
.bon-t p{margin:0;font-size:7.6pt;letter-spacing:.2em;text-transform:uppercase;color:#6d6a63}
.bon-t h1{font-family:var(--display);font-weight:400;font-size:24pt;line-height:1.08;margin:1.5mm 0 1.5mm}
.bon-t .bon-d{font-size:10pt;letter-spacing:0;text-transform:none;color:#151513}
.bon section{margin-top:5mm}
.bon h2{font-family:var(--body);font-weight:500;font-size:7.6pt;letter-spacing:.2em;text-transform:uppercase;color:#151513;border-bottom:1px solid #d3cec5;padding-bottom:1.4mm;margin:0 0 2.4mm}
.bon-g{display:grid;grid-template-columns:1fr 1fr;gap:0 8mm}
@media (max-width:640px){.bon-g{grid-template-columns:1fr}}
.bon-g section{margin-top:0}
.bon dl{display:grid;grid-template-columns:34mm minmax(0,1fr);gap:1.2mm 3mm;margin:0}
.bon dt{color:#6d6a63}
.bon dd{margin:0;white-space:pre-wrap}
.bon .vide{color:#8a867e;font-style:italic;margin:0}
.bon .bt{overflow-x:auto}
.bon table{width:100%;min-width:0;border-collapse:collapse;font-size:9pt}
@media (max-width:820px){.bon table{min-width:150mm}}
.bon th{background:none;color:#6d6a63;font-size:7pt;letter-spacing:.14em;padding:1.4mm 2mm;border-bottom:1px solid #151513}
.bon td{padding:1.6mm 2mm;border-bottom:1px solid #e3dfd8;vertical-align:top}
.bon td b{font-weight:500}
.bon td i{color:#6d6a63}
.bon .r{text-align:right}.bon .c{text-align:center}.bon .nw{white-space:nowrap}
.bon td.q{font-family:var(--display);font-size:12pt;line-height:1.1;font-variant-numeric:tabular-nums}
.bon tr.cat td{background:#f3f1ec;font-family:var(--display);font-size:10.5pt;padding:1.8mm 2mm;border-bottom:1px solid #d3cec5}
.bon tr.cat span{font-family:var(--body);font-size:7.6pt;color:#6d6a63;margin-left:3mm;letter-spacing:.04em}
.bon .box{display:inline-grid;place-items:center;width:4.2mm;height:4.2mm;border:1.2px solid #151513;border-radius:.6mm;font-size:8pt;line-height:1}
.bon .tot{margin:2mm 0 0;text-align:right;font-size:8.6pt;color:#3a3935}
.bon-obs .lines{display:grid;gap:7mm;padding-top:5mm}
.bon-obs .lines i{display:block;border-bottom:1px solid #d3cec5}
.bon-sign{display:grid;grid-template-columns:1fr 1fr;gap:6mm;margin-top:6mm}
.bon-sign div{border:1px solid #d3cec5;border-radius:1.5mm;padding:3mm 3.5mm;display:grid;gap:5.5mm}
.bon-sign b{font-weight:500;font-size:8.4pt;letter-spacing:.06em}
.bon-sign span{font-size:7.6pt;color:#6d6a63;border-bottom:1px dotted #bdb8ae;padding-bottom:1mm}
.bon-sign span:last-child{padding-bottom:9mm}
.bon-f{display:flex;justify-content:space-between;gap:1rem;margin-top:7mm;padding-top:2mm;border-top:1px solid #d3cec5;font-size:7.4pt;color:#8a867e}
@media print{
  @page{size:A4;margin:11mm 11mm 12mm}
  html:has(body.bon-doc),body.bon-doc{background:#fff;margin:0}
  .toast{display:none!important}
  .bon{box-shadow:none;margin:0;padding:0;max-width:none;font-size:9.4pt}
  .bon table{min-width:0}
  .bon tr{break-inside:avoid}
  .bon h2,.bon tr.cat{break-after:avoid}
  .bon-sign,.bon-obs,.bon:not(.recap) .bon-g section{break-inside:avoid}
}
.list table.mat{table-layout:fixed}
.mat.m-ev th:nth-child(1){width:5.4rem}.mat.m-ev th:nth-child(3){width:8.5rem}.mat.m-ev th:nth-child(4){width:7rem}.mat.m-ev th:nth-child(5){width:11rem}.mat.m-ev th:nth-child(6),.mat.m-ev th:nth-child(7){width:4.6rem}.mat.m-ev th:nth-child(8){width:6.4rem}
.mat.m-eq th:nth-child(1){width:4.4rem}.mat.m-eq th:nth-child(3){width:10rem}.mat.m-eq th:nth-child(4){width:12rem}.mat.m-eq th:nth-child(5),.mat.m-eq th:nth-child(6){width:5rem}
.mat.m-inv th:nth-child(2){width:5.4rem}.mat.m-inv th:nth-child(3){width:7.4rem}.mat.m-inv th:nth-child(4){width:11rem}.mat.m-inv th:nth-child(5){width:15rem}.mat.m-inv th:nth-child(6){width:7.4rem}
.mat.m-dsp th:nth-child(2){width:7rem}.mat.m-dsp th:nth-child(3){width:20rem}.mat.m-dsp th:nth-child(4){width:8rem}
.list input.qty{border:1px solid var(--line)!important;border-radius:6px;padding:.3rem .5rem}
.list input.qty:focus{border-color:var(--accent)!important}
.list td input[type=text]{min-width:0}
.list table.mat.m-ev{min-width:60rem}.list table.mat.m-eq{min-width:50rem}.list table.mat.m-inv{min-width:60rem}.list table.mat.m-dsp{min-width:50rem}
a.btn{text-decoration:none}

/* ===== Récapitulatif mariés et fiche DJ ===== */
.dossier .menu .dlinks{display:grid;gap:.4rem;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--line)}
@media (max-width:1100px){.dossier .menu .dlinks{display:flex;gap:.3rem;margin:0;padding:0;border:0}}
.bon-bar .sw{display:flex;gap:.3rem}
.bon-bar .sw [aria-pressed="true"]{border-color:var(--ink);background:#fff}
.recap td{white-space:pre-wrap}
.recap td.k{color:#151513;font-weight:500;white-space:normal}
.recap .nr{color:#b3aea5}
.recap .sub{margin:2.4mm 0 0;font-size:8.6pt;color:#3a3935}
.recap dd a,.recap td a{color:inherit;text-decoration:underline;text-underline-offset:2px;word-break:break-all}
.recap section.alerte{border-left:2px solid #151513;padding-left:4mm}
.recap .vals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:3mm}
@media (max-width:560px){.recap .vals{grid-template-columns:1fr}}
.recap .vals div{border:1px solid #d3cec5;border-radius:1.5mm;padding:2.5mm 3mm;display:grid;gap:.8mm}
.recap .vals b{font-weight:500}
.recap .vals span{font-size:8pt;color:#6d6a63}
.recap .vals .ok{border-color:#151513}
.recap .vals .ok span{color:#151513}
.recap .note-fin{font-size:8pt;color:#6d6a63;margin:6mm 0 0}
.recap .bon-g section{margin-top:5mm}
.recap .bon-t+.bon-g>section{margin-top:0}
@media print{.recap section.kvs{break-inside:avoid}}
@media (max-width:640px){.recap .bon-t+.bon-g>section+section{margin-top:5mm}}

/* ===== Annexes ===== */
.annexe{border:1px solid var(--line);border-radius:12px;padding:1rem 1.1rem;margin-bottom:1rem;display:grid;gap:.9rem;background:var(--panel)}
.annexe textarea{min-height:13rem;border:1px solid var(--line);border-radius:8px;padding:.75rem .9rem;line-height:1.6}
.annexe textarea:focus{border-color:var(--accent)}
.axadd{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center;margin-top:.8rem}
.axadd .muted{margin-right:.3rem}
.recap .ax-inv{margin:0;padding:0;list-style:none;display:grid;gap:1.6mm}
.recap .ax-inv li{display:grid;grid-template-columns:22mm minmax(0,1fr) auto;gap:3mm;align-items:baseline;border-bottom:1px solid #e3dfd8;padding-bottom:1.4mm}
.recap .ax-inv b{font-weight:500}
.recap .ax-inv i{font-style:normal;color:#6d6a63;font-size:8pt;text-align:right}
@media (max-width:560px){.recap .ax-inv li{grid-template-columns:1fr}.recap .ax-inv i{text-align:left}}
.recap .ax-page{margin-top:12mm;padding-top:7mm;border-top:1.5px solid #151513}
.recap .ax-k{margin:0;font-size:7.6pt;letter-spacing:.2em;text-transform:uppercase;color:#6d6a63}
.recap h2.ax-t{font-family:var(--display);font-weight:400;font-size:19pt;letter-spacing:0;text-transform:none;border:0;padding:0;margin:2mm 0 7mm;color:#151513}
.recap .ax-txt{white-space:pre-wrap;font-size:11.5pt;line-height:1.7;max-width:165mm}
.recap .ax-img{display:block;max-width:100%;max-height:230mm;margin:0 auto;object-fit:contain}
@media print{.recap .ax-page{break-before:page;border-top:0;margin-top:0;padding-top:0}}

/* ===== Lieux ===== */
.lieux{display:grid;grid-template-columns:repeat(auto-fill,minmax(16rem,1fr));gap:1.2rem}
.lieu{display:grid;grid-template-rows:auto 1fr;text-align:left;background:var(--panel);border:1px solid var(--line);border-radius:14px;overflow:hidden;padding:0;cursor:pointer;color:var(--ink);transition:border-color .2s}
.lieu:hover{border-color:var(--soft)}
.lieu.arch{opacity:.55}
.lieu .ph{display:grid;place-items:center;aspect-ratio:16/10;background:var(--raise);overflow:hidden}
.lieu .ph img{width:100%;height:100%;object-fit:cover;display:block}
.lieu .ph .mk{width:44px;height:36px;color:var(--faint)}
.lieu .tx{display:grid;gap:.2rem;padding:.9rem 1rem 1rem}
.lieu .tx b{font-family:var(--display);font-weight:400;font-size:1.25rem;line-height:1.2}
.lieu .tx span{color:var(--soft);font-size:.86rem}
.gal{display:grid;grid-template-columns:2fr 1fr 1fr;grid-auto-rows:9rem;gap:.6rem;margin-bottom:2rem}
.gal a{display:block;border-radius:10px;overflow:hidden;background:var(--raise)}
.gal a.big{grid-row:span 2}
.gal img{width:100%;height:100%;object-fit:cover;display:block}
@media (max-width:700px){.gal{grid-template-columns:1fr 1fr;grid-auto-rows:7rem}.gal a.big{grid-column:1 / -1;grid-row:span 2}}
.form h3.fh{font-size:1.2rem;margin-top:1.4rem;padding-top:1.2rem;border-top:1px solid var(--line)}
.form h3.fh:first-child{margin-top:0;padding-top:0;border-top:0}
.pics{display:grid;grid-template-columns:repeat(auto-fill,minmax(9rem,1fr));gap:.8rem}
.pic{display:grid;gap:.35rem;font-size:.8rem;color:var(--soft);cursor:pointer}
.pic img{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:8px;display:block}
.lieu-card{display:grid;grid-template-columns:auto minmax(0,1fr);gap:1.1rem;align-items:center;border:1px solid var(--line);border-radius:12px;padding:.8rem;margin-bottom:1.8rem;max-width:52rem;background:var(--panel)}
.lieu-card img{width:9.5rem;aspect-ratio:16/10;object-fit:cover;border-radius:8px;display:block}
.lieu-card>div{display:grid;gap:.25rem;justify-items:start}
.lieu-card b{font-family:var(--display);font-weight:400;font-size:1.3rem}
.lieu-card .btn{margin-top:.4rem}
.lieu-card a,.kv a{color:inherit}
@media (max-width:520px){.lieu-card{grid-template-columns:1fr}.lieu-card img{width:100%}}
.blk .lieu-card{margin:0 0 1rem;background:none;border:0;padding:0}
.lieux-f{display:flex;flex-wrap:wrap;gap:.8rem 1.2rem;align-items:center;margin-bottom:.6rem}
.lieux-f input[type=search]{max-width:22rem;flex:1 1 14rem}
.lieux-f select{width:auto;max-width:100%}
#li-n{margin:0 0 1rem;min-height:1.2em}
.lieu .ph{position:relative}
.lieu .ph img{position:absolute;inset:0}
.lieu .ph .illu{display:none}
.lieu .ph img+.illu{display:block;position:absolute;left:.6rem;bottom:.5rem;font-style:normal;font-size:.62rem;letter-spacing:.14em;text-transform:uppercase;background:rgba(11,11,10,.72);color:var(--soft);padding:.2rem .5rem;border-radius:999px}
.lieu .tx .ft{margin-top:.35rem;font-size:.66rem;letter-spacing:.12em;text-transform:uppercase;color:var(--warn)}
.lieu .tx .ft.ok{color:var(--ok)}
.lieu-hero{margin:0 0 1.6rem;max-width:52rem}
.lieu-hero img{display:block;width:100%;aspect-ratio:16/8;object-fit:cover;border-radius:12px;background:var(--raise)}
.lieu-hero figcaption{font-size:.74rem;color:var(--faint);margin-top:.45rem}
.lieu-desc{max-width:46rem;color:var(--soft);font-size:1.02rem;line-height:1.65;margin:0 0 2rem}
.lpick{position:relative}
.lpick .lsel{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem 1rem;border:1px solid var(--line);border-radius:10px;padding:.7rem .9rem;background:var(--panel)}
.lpick .lsel>div{display:grid;gap:.1rem;flex:1 1 14rem;min-width:0}
.lpick .lsel b{font-family:var(--display);font-weight:400;font-size:1.2rem}
.lpick .lsearch{position:relative}
.lsug{position:absolute;z-index:20;left:0;right:0;top:calc(100% + .3rem);list-style:none;margin:0;padding:.3rem;background:var(--raise);border:1px solid var(--line);border-radius:10px;max-height:22rem;overflow:auto;box-shadow:0 18px 40px rgba(0,0,0,.45)}
.lsug li{display:grid;gap:.1rem;padding:.55rem .7rem;border-radius:7px;cursor:pointer}
.lsug li b{font-weight:500}
.lsug li span{font-size:.8rem;color:var(--faint)}
.lsug li.on,.lsug li:hover{background:var(--panel)}
.lsug li.new{border-top:1px solid var(--line);margin-top:.2rem;padding-top:.65rem}
.lsug li.new b{color:var(--accent)}
.lnew{border:1px solid var(--line);border-radius:12px;padding:1rem 1.1rem;display:grid;gap:.8rem;background:var(--panel)}
.lnew-g{display:grid;grid-template-columns:repeat(auto-fill,minmax(12rem,1fr));gap:.8rem 1.2rem}
.lnew-g label{display:grid;gap:.25rem}
.lnew-g label span{font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;color:var(--faint)}
.lnew-g label:first-child{grid-column:1 / -1}
.lnew select{background:var(--panel)}
.bon-ph{display:block;width:100%;max-height:42mm;object-fit:cover;border-radius:1.2mm;margin:0 0 3mm}
.gal.n1{grid-template-columns:minmax(0,1fr);grid-auto-rows:clamp(12rem,32vw,22rem)}
.gal.n1 a.big{grid-row:auto}
.gal.n2,.gal.n3{grid-template-columns:2fr 1fr}
.gal.n2 a:not(.big){grid-row:span 2}
@media (max-width:700px){.gal.n2,.gal.n3{grid-template-columns:1fr 1fr}.gal.n2 a:not(.big){grid-row:auto;grid-column:1 / -1}}
.recap section.alerte{border-left:0;padding-left:0}
.recap section.alerte>*{border-left:2px solid #151513;padding-left:4mm;margin-bottom:0}
.recap section.alerte>h2{padding-top:.5mm}

/* ===== Fiches pratiques ===== */
.fiches{display:grid;grid-template-columns:repeat(auto-fill,minmax(17rem,1fr));gap:1rem}
.fiche-c{display:grid;grid-template-columns:auto minmax(0,1fr);gap:.9rem;align-items:start;text-align:left;background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:.8rem;cursor:pointer;color:var(--ink)}
.fiche-c:hover{border-color:var(--soft)}
.fiche-c.arch{opacity:.55}
.fiche-c img{width:5.6rem;aspect-ratio:1;object-fit:cover;border-radius:8px;display:block}
.fiche-c>span{display:grid;gap:.25rem;min-width:0}
.fiche-c b{font-family:var(--display);font-weight:400;font-size:1.15rem;line-height:1.2}
.fiche-c>span>span{color:var(--soft);font-size:.84rem}
.fsec p{margin:0;white-space:pre-wrap;line-height:1.65}
.fsec.vig{border-top-color:color-mix(in srgb,var(--warn) 55%,transparent)}
.fsec.vig h3{color:var(--warn)}
.flist{list-style:none;margin:0;padding:0;display:grid;gap:.6rem}
.flist li{display:grid;gap:.1rem;border-bottom:1px solid var(--line);padding-bottom:.55rem}
.flist b{font-weight:500}
.fmat{display:grid;grid-template-columns:repeat(auto-fill,minmax(15rem,1fr));gap:.9rem 1.4rem;max-height:22rem;overflow:auto;border:1px solid var(--line);border-radius:10px;padding:.9rem 1rem}
.fmat-g{display:grid;gap:.3rem;align-content:start}
.fmat-g b{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--faint);font-weight:500;margin-bottom:.2rem}
.fmat label{font-size:.88rem;color:var(--soft);cursor:pointer}
.fmat input{accent-color:var(--accent)}
.fiche-l{display:inline-block;margin-top:.25rem;font-size:.78rem;color:var(--accent);text-underline-offset:3px}
/* fiches dans les documents imprimés */
.bon .fp{margin-top:12mm;padding-top:7mm;border-top:1.5px solid #151513}
.bon .fp .ax-k{margin:0;font-size:7.6pt;letter-spacing:.2em;text-transform:uppercase;color:#6d6a63}
.bon h2.fp-t{font-family:var(--display);font-weight:400;font-size:19pt;letter-spacing:0;text-transform:none;border:0;padding:0;margin:2mm 0 2mm;color:#151513}
.bon .fp-r{margin:0 0 2mm;font-size:10.5pt;color:#3a3935}
.bon .fp-m{margin:0 0 5mm;font-size:8.4pt;color:#6d6a63;display:flex;justify-content:space-between;gap:4mm;border-bottom:1px solid #d3cec5;padding-bottom:2mm}
.bon .fp-ph{display:grid;grid-template-columns:1fr 1fr;gap:3mm;margin-bottom:4mm}
.bon .fp-ph img{width:100%;height:46mm;object-fit:cover;border-radius:1.2mm}
.bon .fp-s{margin:0 0 4mm;break-inside:avoid}
.bon .fp-s h3{font-family:var(--body);font-weight:500;font-size:7.8pt;letter-spacing:.18em;text-transform:uppercase;margin:0 0 1.5mm}
.bon .fp-s p{margin:0;white-space:pre-wrap;font-size:10pt;line-height:1.6}
.bon .fp-s.vig{border-left:2px solid #151513;padding-left:4mm}
.bon .fp-v{font-size:8.4pt;color:#3a3935;word-break:break-all}
.bon.fiche-doc .fp{margin-top:6mm;padding-top:0;border-top:0}
.bon.sans-fiches .fp,.bon.sans-fiches .fref{display:none}
.bon .fref{color:#6d6a63;font-size:7.6pt;font-style:normal;white-space:nowrap}
@media print{.bon:not(.fiche-doc) .fp{break-before:page;border-top:0;margin-top:0;padding-top:0}}

/* ===== Vœux d'anniversaire ===== */
.vx{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:2rem;align-items:start;max-width:72rem}
@media (max-width:980px){.vx{grid-template-columns:1fr}}
.vx-mail{background:#fbfaf7;color:#151513;border-radius:12px;padding:1.4rem 1.6rem;font-family:Georgia,serif;line-height:1.6}
.vx-mail .eyebrow{color:#8a867e;font-family:var(--body)}
.vx-mail p{margin:0 0 .9rem}
.vx-mail .vx-obj{font-family:var(--body);font-weight:500;border-bottom:1px solid #e3dfd8;padding-bottom:.6rem}
.vx-mail .vx-pied{color:#8a867e;font-size:.78rem;border-top:1px solid #e3dfd8;padding-top:.6rem;margin-top:1.4rem}
.head .row .btn{white-space:nowrap}

/* ===== Rendez-vous ===== */
.rdvs{display:grid;gap:1rem;max-width:56rem}
.rdv{border:1px solid var(--line);border-radius:12px;padding:1rem 1.1rem;background:var(--panel)}
.rdv.annule{opacity:.55}
.rdv header{display:flex;flex-wrap:wrap;justify-content:space-between;gap:1rem;align-items:flex-start}
.rdv header>div:first-child{display:grid;gap:.25rem;min-width:0}
.rdv h3{font-size:1.3rem}
.rdv .cr{display:grid;gap:.8rem;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--line);justify-items:start}
.rdv .cr div{display:grid;gap:.2rem}
.rdv .cr b{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--faint);font-weight:500}
.rdv .cr p{margin:0;white-space:pre-wrap}
.rdv-act{margin-top:.9rem}
.rdv-evt{margin:.6rem 0 -.4rem}
.warn-t{color:var(--warn)}
.rdv-banner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem;border:1px solid color-mix(in srgb,var(--accent) 45%,transparent);border-radius:12px;padding:.9rem 1.1rem;margin:-.6rem 0 1.8rem;background:rgba(217,199,163,.06)}
.rdv-banner>div{display:grid;gap:.15rem}
.rdv-banner b{font-family:var(--display);font-weight:400;font-size:1.3rem}
.gcard{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem;border:1px solid var(--line);border-radius:12px;padding:1rem 1.2rem;margin-bottom:1rem;background:var(--panel);max-width:56rem}
.gcard>div{display:grid;gap:.25rem;max-width:40rem}
.gcard b{font-weight:500}
.cal .e.rdv{border-left:2px dashed var(--soft);background:transparent;color:var(--soft)}

/* ===== Remise du dossier aux clients ===== */
.remise{border:1px solid var(--line);border-radius:14px;padding:1.3rem 1.4rem;margin:0 0 2rem;max-width:52rem;background:var(--panel);display:grid;gap:1.1rem}
.remise-h{display:flex;flex-wrap:wrap;gap:1rem 1.6rem;align-items:flex-start;justify-content:space-between}
.remise-h>div{display:grid;gap:.3rem;flex:1 1 22rem;min-width:0}
.remise-h h2{font-family:var(--display);font-weight:400;font-size:1.5rem;margin:0}
.remise-h p{margin:0;max-width:40rem}
.remise-l{display:grid;border-top:1px solid var(--line)}
.remise-c{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem 1rem;padding:.75rem 0;border-bottom:1px solid var(--line)}
.remise-c>div{display:grid;gap:.1rem;flex:1 1 16rem;min-width:0}
.remise-c .muted{overflow-wrap:anywhere}
.remise-new{display:grid;gap:.9rem}
.remise-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.6rem 1.2rem;align-items:end}
.remise-row .eyebrow{grid-column:1 / -1}
.remise-row label{display:grid;gap:.25rem}
.remise-row label span{font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;color:var(--faint)}
@media (max-width:640px){.remise-row{grid-template-columns:1fr}}
.remise .lien{justify-self:start}
.remise-plus{display:grid;gap:1.1rem}
.remise #rm-err:empty{display:none}
.lien{background:none;border:0;padding:0;color:var(--soft);text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.lien:hover{color:var(--ink)}
.remise .row .muted{flex:1 1 18rem}
.remise-banner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.8rem 1.4rem;border:1px solid color-mix(in srgb,var(--warn) 45%,transparent);border-radius:12px;padding:.8rem 1rem;margin:0 0 1.6rem}
.remise-banner>div{display:grid;gap:.15rem;flex:1 1 20rem}
.remise-banner b{font-weight:500;color:var(--warn)}
.remise-banner span{font-size:.86rem;color:var(--soft)}
