/* AG — fiche vente en ligne standard (gabarit pleine largeur, charte Allgraphik) */
body.agvm-page{background:#FAF8F4}
body.agvm-page #ag-callbar,body.agvm-page #ag-cro-bar,body.agvm-page #ag-cro-fab,body.agvm-page #ag-fb-messenger-fab{display:none!important}
.agvm{--ink:#1F2324;--mute:#5E6263;--ocre:#D2A344;--ocre-d:#B98B2F;--cream:#F4F2EC;--paper:#FAF8F4;--sand:#E8E2D7;--line:rgba(31,35,36,.12);--serif:"Cormorant Garamond","Times New Roman",serif;--sans:"Inter",system-ui,-apple-system,"Segoe UI",sans-serif;--ease:cubic-bezier(.2,.7,.1,1);--hh:var(--agda-hdr-h,68px);color:var(--ink);font-family:var(--sans);background:var(--paper);width:100%;max-width:none;margin:0}
.agvm *,.agvm *::before,.agvm *::after{box-sizing:border-box}
.agvm .eyebrow{font:500 11px/1.2 var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--ocre-d);margin:0 0 12px;display:flex;align-items:center;gap:12px}
.agvm .eyebrow::before{content:"";width:28px;height:1px;background:var(--ocre)}
/* héros */
.agvm .vm-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(400px,480px);gap:0;min-height:calc(100svh - var(--hh));background:var(--cream)}
.agvm .vm-stage{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:clamp(24px,4vw,64px);gap:22px;overflow:hidden}
.agvm .vm-visual{position:relative;margin:0;width:100%;max-width:880px;aspect-ratio:4/3;display:flex;align-items:center;justify-content:center}
.agvm .vm-photo{width:100%;height:100%;object-fit:contain;border-radius:18px;filter:drop-shadow(0 30px 40px rgba(31,35,36,.16));transition:opacity .6s var(--ease),transform .9s var(--ease)}
.agvm .vm-visual.proofing .vm-photo{opacity:0;transform:scale(.96)}
.agvm .vm-proof{position:absolute;inset:6%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;animation:vm-in .7s var(--ease) both}
.agvm .vm-proof[hidden]{display:none}
.agvm .vm-sheet{position:relative;width:70%;height:60%;background:#fff;border-radius:6px;box-shadow:0 30px 60px -20px rgba(31,35,36,.35),0 0 0 1px rgba(31,35,36,.06);overflow:hidden;display:flex;align-items:center;justify-content:center;transition:aspect-ratio .5s var(--ease)}
.agvm .vm-sheet img{width:100%;height:100%;object-fit:contain;display:block;padding:4%}
.agvm .vm-ext{font:600 28px/1 var(--sans);letter-spacing:.1em;color:var(--mute)}
.agvm .vm-dims{margin:0;font:500 12px/1 var(--sans);letter-spacing:.08em;color:var(--mute);background:rgba(255,255,255,.8);padding:7px 12px;border-radius:99px}
@keyframes vm-in{from{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:none}}
.agvm .vm-badges{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:8px}
.agvm .vm-badges li{font:400 13px/1.2 var(--sans);color:var(--mute);background:rgba(255,255,255,.7);border:1px solid var(--line);border-radius:99px;padding:8px 14px}
.agvm .vm-badges a{color:var(--ink);font-weight:600;text-decoration:none}
/* panneau */
.agvm .vm-panel{position:sticky;top:var(--hh);align-self:start;height:calc(100svh - var(--hh));display:flex;flex-direction:column;background:rgba(250,248,244,.94);border-left:1px solid var(--line)}
.agvm .vm-scroll{flex:1;overflow-y:auto;overscroll-behavior:contain;padding:28px 28px 18px;scrollbar-width:thin}
.agvm .vm-h1{font:400 clamp(34px,3vw,46px)/1.02 var(--serif);margin:0 0 10px;letter-spacing:-.01em;color:var(--ink)}
.agvm .vm-lede{font:400 15px/1.55 var(--sans);color:var(--mute);margin:0 0 18px}
.agvm .vm-file{margin:0 0 6px}
.agvm .vm-drop{display:flex;align-items:center;gap:14px;padding:14px 16px;border:1.5px dashed rgba(185,139,47,.6);border-radius:16px;background:#fff;cursor:pointer;transition:border-color .3s,background .3s,transform .3s var(--ease)}
.agvm .vm-drop:hover,.agvm.dragging .vm-drop{border-color:var(--ocre-d);background:#FFFCF5;transform:translateY(-1px)}
.agvm .vm-drop.has{border-style:solid;border-color:rgba(31,35,36,.14)}
.agvm .vm-drop-i{flex:0 0 42px;height:42px;border-radius:12px;background:var(--ocre);color:#1F2324;display:flex;align-items:center;justify-content:center}
.agvm .vm-drop.has .vm-drop-i{background:#E9F1E7;color:#3C6B3A}
.agvm .vm-drop-i svg{width:22px;height:22px}
.agvm .vm-drop-t{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}
.agvm .vm-drop-t b{font:600 15px/1.25 var(--sans);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.agvm .vm-drop-t small{font:400 12.5px/1.35 var(--sans);color:var(--mute)}
.agvm .vm-drop-c{font:500 13px/1 var(--sans);text-decoration:underline;text-underline-offset:3px}
.agvm .vm-input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
.agvm .vm-prog{height:3px;background:var(--sand);border-radius:3px;margin:8px 4px 0;overflow:hidden}
.agvm .vm-prog i{display:block;height:100%;width:0;background:var(--ocre-d);transition:width .3s}
.agvm .vm-later{background:none;border:0;padding:8px 2px 0;font:400 13px/1.3 var(--sans);color:var(--mute);text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.agvm .vm-step{margin:20px 0 0}
.agvm .vm-gl{font:600 12px/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;margin:0 0 10px;color:var(--ink)}
.agvm .vm-opts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.agvm .vm-opt{appearance:none;text-align:left;display:flex;flex-direction:column;gap:3px;padding:11px 13px;border-radius:12px;border:1px solid var(--line);background:#fff;color:var(--ink);cursor:pointer;transition:border-color .25s,box-shadow .25s,transform .25s var(--ease);min-height:48px;justify-content:center}
.agvm .vm-opt b{font:600 14px/1.25 var(--sans)}
.agvm .vm-opt small{font:400 12px/1.3 var(--sans);color:var(--mute)}
.agvm .vm-opt:hover{transform:translateY(-1px);border-color:rgba(31,35,36,.3)}
.agvm .vm-opt.is-on{border-color:var(--ink);box-shadow:0 0 0 1px var(--ink) inset}
.agvm .vm-opt:disabled{opacity:.38;cursor:not-allowed;transform:none}
.agvm .vm-tiers{display:flex;flex-direction:column;gap:6px}
.agvm .vm-tier{appearance:none;display:grid;grid-template-columns:72px 1fr 90px 82px 44px;align-items:center;gap:10px;padding:10px 12px;border-radius:12px;border:1px solid var(--line);background:#fff;cursor:pointer;font:400 14px/1 var(--sans);color:var(--ink);transition:border-color .25s,box-shadow .25s,background .25s}
.agvm .vm-tier .q{font-weight:600}
.agvm .vm-tier .u{font-size:12px;color:var(--mute);white-space:nowrap}
.agvm .vm-tier .bar{height:4px;background:var(--sand);border-radius:4px;overflow:hidden;order:0}
.agvm .vm-tier .bar i{display:block;height:100%;width:var(--w);background:linear-gradient(90deg,var(--ocre),var(--ocre-d));border-radius:4px;transform-origin:left;animation:vm-bar .8s var(--ease) both}
@keyframes vm-bar{from{transform:scaleX(0)}to{transform:scaleX(1)}}
.agvm .vm-tier .t{text-align:right;font-weight:600;white-space:nowrap}
.agvm .vm-tier em{font-style:normal;font-size:11px;font-weight:600;color:#3C6B3A;text-align:right}
.agvm .vm-tier.is-on{border-color:var(--ink);box-shadow:0 0 0 1px var(--ink) inset;background:#FFFDF8}
.agvm .vm-na,.agvm .vm-note{font:400 13px/1.45 var(--sans);color:var(--mute);margin:8px 0 0}
.agvm .vm-delays{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.agvm .vm-delay{appearance:none;text-align:left;display:flex;flex-direction:column;gap:4px;padding:12px 13px;border-radius:12px;border:1px solid var(--line);background:#fff;cursor:pointer;color:var(--ink)}
.agvm .vm-delay b{font:600 14px/1.2 var(--sans)}.agvm .vm-delay small{font:400 12.5px/1.3 var(--sans);color:var(--mute)}.agvm .vm-delay span{font:500 12.5px/1.2 var(--sans);color:var(--ocre-d)}
.agvm .vm-delay.is-on{border-color:var(--ink);box-shadow:0 0 0 1px var(--ink) inset}
.agvm .vm-delays .vm-note{grid-column:1/-1;margin:0}
.agvm .vm-foot{padding:14px 28px 16px;border-top:1px solid var(--line);background:rgba(255,255,255,.7);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.agvm .vm-tot{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px}
.agvm .vm-amt{font:400 34px/1 var(--serif);letter-spacing:-.01em;font-variant-numeric:tabular-nums}
.agvm .vm-amt.pulse{animation:vm-pulse .5s var(--ease)}
@keyframes vm-pulse{0%{color:var(--ocre-d)}100%{color:var(--ink)}}
.agvm .vm-ht{font:500 12px/1 var(--sans);color:var(--mute)}
.agvm .vm-tot small{flex-basis:100%;font:400 12.5px/1.35 var(--sans);color:var(--mute)}
.agvm .btn.vm-go{width:100%;height:54px;margin-top:12px;display:flex;align-items:center;justify-content:center;gap:10px;border:0;border-radius:99px;background:var(--ocre);color:#1F2324;font:600 16px/1 var(--sans);cursor:pointer;box-shadow:0 14px 30px -14px rgba(185,139,47,.8);transition:transform .25s var(--ease),background .25s}
.agvm .btn.vm-go:hover{background:#DDB257;transform:translateY(-1px)}
.agvm .btn.vm-go:disabled{opacity:.5;cursor:not-allowed}
.agvm .btn.vm-go.busy{opacity:.7}
.agvm .vm-msg{margin:6px 0 0;min-height:0;font:400 13px/1.3 var(--sans);color:#9B3B2E}
.agvm .vm-msg:empty{display:none}
.agvm .vm-devis{display:block;margin:10px 0 0;text-align:center;font:400 12.5px/1.3 var(--sans);color:var(--mute);text-decoration:none}
.agvm .vm-devis span{text-decoration:underline;text-underline-offset:3px;color:var(--ink)}
/* détails */
.agvm .vm-details{background:var(--paper);padding:clamp(56px,7vw,110px) 0}
.agvm .vm-wrap{width:100%;max-width:1680px;margin:0 auto;padding:0 clamp(20px,4vw,56px)}
.agvm .vm-h2{font:400 clamp(32px,3.4vw,52px)/1.05 var(--serif);margin:0 0 16px;max-width:900px}
.agvm .vm-h3{font:400 30px/1.1 var(--serif);margin:0 0 14px}
.agvm .vm-intro{font:400 16px/1.6 var(--sans);color:var(--mute);max-width:820px;margin:0 0 32px}
.agvm .vm-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:0 0 40px}
.agvm .vm-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:20px 22px}
.agvm .vm-card h3{font:600 16px/1.3 var(--sans);margin:0 0 6px}
.agvm .vm-card p{font:400 14.5px/1.5 var(--sans);color:var(--mute);margin:0}
.agvm .vm-card a{color:var(--ink);font-weight:600;text-decoration:none}
.agvm .vm-faq{max-width:980px;margin:0 0 30px}
.agvm .vm-faq details{border-top:1px solid var(--line);padding:16px 0}
.agvm .vm-faq details:last-child{border-bottom:1px solid var(--line)}
.agvm .vm-faq summary{font:500 16px/1.4 var(--sans);cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:20px}
.agvm .vm-faq summary::after{content:"+";font-weight:300;font-size:22px;line-height:1;transition:transform .3s}
.agvm .vm-faq details[open] summary::after{transform:rotate(45deg)}
.agvm .vm-faq p{font:400 15px/1.6 var(--sans);color:var(--mute);margin:10px 0 0}
.agvm .vm-formats{font:400 14.5px/1.6 var(--sans);color:var(--mute);max-width:980px;margin:0 0 26px}
.agvm .vm-links{display:flex;flex-wrap:wrap;gap:8px}
.agvm .vm-links a{font:500 13.5px/1 var(--sans);color:var(--ink);text-decoration:none;padding:10px 14px;border:1px solid var(--line);border-radius:99px;background:#fff}
.agvm .vm-links a:hover{border-color:var(--ink)}
@media (max-width:1180px){.agvm .vm-hero{grid-template-columns:minmax(0,1fr) 420px}.agvm .vm-tier{grid-template-columns:62px 1fr 76px 78px 40px;gap:8px}.agvm .vm-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:900px){
 .agvm .vm-hero{display:block;min-height:0}
 .agvm .vm-stage{padding:18px 16px 8px;gap:12px}
 .agvm .vm-visual{aspect-ratio:4/3;max-height:52svh}
 .agvm .vm-badges{display:none}
 .agvm .vm-panel{position:static;height:auto;border-left:0;background:var(--paper)}
 .agvm .vm-scroll{overflow:visible;padding:18px 16px 8px}
 .agvm .vm-h1{font-size:34px}
 .agvm .vm-tier{grid-template-columns:58px 1fr 74px 36px;gap:8px;padding:10px}
 .agvm .vm-tier .bar{display:none}
 .agvm .vm-foot{position:sticky;bottom:0;z-index:50;padding:10px 16px calc(10px + env(safe-area-inset-bottom));display:grid;grid-template-columns:1fr auto;align-items:center;column-gap:12px;box-shadow:0 -10px 30px -18px rgba(31,35,36,.35);background:rgba(250,248,244,.96)}
 .agvm .vm-amt{font-size:28px}
 .agvm .vm-tot small{font-size:11.5px}
 .agvm .btn.vm-go{width:auto;height:50px;margin:0;padding:0 22px;font-size:15px}
 .agvm .vm-msg,.agvm .vm-devis{grid-column:1/-1}
 .agvm .vm-devis{margin-top:6px}
 .agvm .vm-cards{grid-template-columns:1fr}
 .agvm .vm-details{padding:44px 0 60px}
}
@media (prefers-reduced-motion:reduce){.agvm *{animation:none!important;transition:none!important}}
/* neutralise les styles de boutons du thème */
.agvm button.vm-opt,.agvm button.vm-tier,.agvm button.vm-delay{background:#fff!important;color:var(--ink)!important;border:1px solid var(--line)!important;text-transform:none!important;letter-spacing:normal!important;font-family:var(--sans)!important;box-shadow:none;outline-offset:2px}
.agvm button.vm-opt:hover,.agvm button.vm-tier:hover,.agvm button.vm-delay:hover,.agvm button.vm-opt:focus,.agvm button.vm-tier:focus,.agvm button.vm-delay:focus{background:#fff!important;color:var(--ink)!important;border-color:rgba(31,35,36,.35)!important}
.agvm button.vm-opt.is-on,.agvm button.vm-tier.is-on,.agvm button.vm-delay.is-on{border-color:var(--ink)!important;box-shadow:0 0 0 1px var(--ink) inset!important;background:#FFFDF8!important}
.agvm button.vm-later{background:none!important;border:0!important;color:var(--mute)!important;box-shadow:none!important}
.agvm .btn.vm-go,.agvm .btn.vm-go:hover,.agvm .btn.vm-go:focus{color:#1F2324!important;border:0!important;text-transform:none!important;letter-spacing:normal!important}
.agvm .btn.vm-go{background:var(--ocre)!important}.agvm .btn.vm-go:hover{background:#DDB257!important}

.agvm button.vm-opt,.agvm button.vm-tier,.agvm button.vm-delay{white-space:normal!important;overflow-wrap:anywhere;min-width:0}
.agvm .vm-sheet{transition:width .5s var(--ease),height .5s var(--ease)}
/* 1.0.4 : barre de commande mobile fixe (aucun décalage de mise en page pendant le chargement) */
@media (max-width:900px){
 .agvm .vm-foot{position:fixed;left:0;right:0;bottom:0;min-height:118px;contain:layout}
 .agvm .vm-tot small{display:block;min-height:30px}
 .agvm .vm-details{padding-bottom:170px}
}
