/* Pages dédiées basées sur la V1 : flux naturel, aucun positionnement fixe. */
html[data-v1-tool] main>section{display:none!important}html[data-v1-tool="hub"] #choisir-configurateur,html[data-v1-tool="meuble"] #configurateur,html[data-v1-tool="ouvertures"] #configurateur-ouvertures{display:block!important}html[data-v1-tool="meuble"] .ticker,html[data-v1-tool="ouvertures"] .ticker,html[data-v1-tool="meuble"] footer,html[data-v1-tool="ouvertures"] footer,html[data-v1-tool="meuble"] .chat-launcher,html[data-v1-tool="ouvertures"] .chat-launcher,html[data-v1-tool="meuble"] .chat-panel,html[data-v1-tool="ouvertures"] .chat-panel{display:none!important}html[data-v1-tool="meuble"] main,html[data-v1-tool="ouvertures"] main{padding-top:0;background:var(--deep)}html[data-v1-tool="meuble"] #configurateur,html[data-v1-tool="ouvertures"] #configurateur-ouvertures{min-height:calc(100vh - 94px);padding-top:clamp(55px,7vh,95px);padding-bottom:clamp(55px,7vh,95px)}html[data-v1-tool] .config-heading{margin-bottom:38px}html[data-v1-tool] .config-app{min-height:720px}html[data-v1-tool] .config-controls{overflow:visible}html[data-v1-tool] .config-preview-column{position:sticky;top:105px;align-self:start;min-height:720px}html[data-v1-tool] .furniture-stage,html[data-v1-tool] .opening-stage{min-height:510px}
html[data-v1-tool="hub"] #choisir-configurateur{min-height:calc(100vh - 94px);padding:clamp(65px,8vh,110px) clamp(22px,6vw,100px);background:radial-gradient(circle at 15% 8%,#0d7fb247,transparent 30%),var(--deep);color:#fff}.hub-intro{display:grid;grid-template-columns:1.1fr .9fr;gap:20px 8vw;align-items:end;margin-bottom:42px}.hub-intro .eyebrow{grid-column:1/-1}.hub-intro h1{font:clamp(56px,6vw,96px)/.9 'Instrument Serif';margin:0}.hub-intro h1 em{color:#71d2f4}.hub-intro>p:last-child{color:#bed0d7;line-height:1.7}.hub-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.hub-card{position:relative;display:grid;grid-template-columns:.72fr 1.28fr;min-height:310px;background:#f7f5ef;color:var(--ink);text-decoration:none;overflow:hidden;transition:transform .25s}.hub-card:hover{transform:translateY(-5px)}.hub-number{position:absolute;z-index:2;top:14px;left:14px;padding:7px 9px;border-radius:20px;background:var(--deep);color:#fff;font-size:8px}.hub-visual{background:linear-gradient(145deg,#dbe7e7,#abbdbd)}.hub-content{padding:36px;align-self:center}.hub-content>p{font-size:8px;text-transform:uppercase;letter-spacing:.12em;color:var(--blue)}.hub-content h2{font:clamp(31px,3vw,48px)/1 'Instrument Serif';margin:8px 0 18px}.hub-content ul{list-style:none;padding:0;color:#65767c;font-size:10px;line-height:1.9}.hub-content li:before{content:'✓';color:var(--blue);margin-right:7px}.hub-content strong{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:15px;font-size:9px;text-transform:uppercase}.hub-reassurance{display:flex;justify-content:center;gap:30px;margin-top:25px;color:#bed0d7;font-size:8px;text-transform:uppercase}
@media(max-width:900px){html[data-v1-tool] .config-preview-column{position:relative;top:auto}html[data-v1-tool] .config-app{min-height:0}.hub-intro,.hub-grid{grid-template-columns:1fr}.hub-intro .eyebrow{grid-column:1}.hub-reassurance{flex-wrap:wrap}.hub-card{min-height:270px}}
@media(max-width:600px){html[data-v1-tool="meuble"] #configurateur,html[data-v1-tool="ouvertures"] #configurateur-ouvertures{padding-top:55px}.hub-card{grid-template-columns:1fr}.hub-visual{height:150px}.hub-content{padding:25px}.hub-reassurance{display:grid;justify-content:start}}

/* Pleine page stable : seul le panneau d'options défile, le visuel reste fixe. */
@media(min-width:901px){
html[data-v1-tool="meuble"],html[data-v1-tool="ouvertures"],html[data-v1-tool="meuble"] body,html[data-v1-tool="ouvertures"] body{height:100%;overflow:hidden}
html[data-v1-tool="meuble"] #configurateur,html[data-v1-tool="ouvertures"] #configurateur-ouvertures{height:calc(100vh - 94px);min-height:0;padding:24px clamp(18px,3vw,48px);overflow:hidden}
html[data-v1-tool] .config-heading{display:none}
html[data-v1-tool] .config-app{height:100%;min-height:0;overflow:hidden}
html[data-v1-tool] .config-controls{height:100%;min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable}
html[data-v1-tool] .config-preview-column{position:relative;top:auto;height:100%;min-height:0;overflow:hidden;overscroll-behavior:none}
html[data-v1-tool] .furniture-stage,html[data-v1-tool] .opening-stage{min-height:0;flex:1;overflow:hidden;touch-action:manipulation;cursor:default}
}

/* Vue frontale uniquement : aucune rotation, perspective, interaction ou canevas 3D. */
html[data-v1-tool] .real-3d-canvas,html[data-v1-tool] .viewer-toolbar,html[data-v1-tool] .viewer-help{display:none!important}
html[data-v1-tool] .furniture-cabinet,html[data-v1-tool] .opening-wall{transform:none!important;transform-style:flat!important;perspective:none!important;transition:background .25s,color .25s,border-color .25s!important}
html[data-v1-tool] .opening-stage{perspective:none!important}
html[data-v1-tool] .opening-wall:after{display:none!important}

/* Verrouillage définitif : la page ne bouge plus, seuls les réglages défilent. */
@media(min-width:901px){
html[data-v1-tool="meuble"],html[data-v1-tool="ouvertures"]{position:fixed;inset:0;width:100%;height:100%;overflow:hidden!important;scroll-behavior:auto!important}
html[data-v1-tool="meuble"] body,html[data-v1-tool="ouvertures"] body{position:fixed;inset:0;width:100%;height:100%;margin:0;overflow:hidden!important;overscroll-behavior:none}
html[data-v1-tool="meuble"] header,html[data-v1-tool="ouvertures"] header{position:absolute!important;top:0;left:0;right:0;z-index:100;height:94px}
html[data-v1-tool="meuble"] main,html[data-v1-tool="ouvertures"] main{position:absolute!important;inset:94px 0 0!important;width:auto!important;height:auto!important;min-height:0!important;padding:0!important;margin:0!important;overflow:hidden!important}
html[data-v1-tool="meuble"] #configurateur,html[data-v1-tool="ouvertures"] #configurateur-ouvertures{position:absolute!important;inset:0!important;width:auto!important;height:auto!important;min-height:0!important;margin:0!important;padding:18px clamp(18px,3vw,48px)!important;overflow:hidden!important;box-sizing:border-box}
html[data-v1-tool] .config-app{display:grid;height:100%!important;max-height:100%!important;min-height:0!important;margin:0!important;overflow:hidden!important;overflow-anchor:none;contain:layout paint}
html[data-v1-tool] .config-controls{position:relative;height:100%!important;min-height:0!important;max-height:100%!important;padding-bottom:86px;overflow-x:hidden!important;overflow-y:auto!important;overflow-anchor:none;overscroll-behavior:contain;scrollbar-gutter:stable both-edges}
html[data-v1-tool] .config-preview-column{position:relative!important;inset:auto!important;height:100%!important;min-height:0!important;max-height:100%!important;overflow:hidden!important;overflow-anchor:none;contain:layout paint}
html[data-v1-tool] .config-actions{position:sticky;z-index:20;bottom:-86px;margin-top:24px;background:#f8f6f1;box-shadow:0 -12px 24px #f8f6f1;padding-top:14px;padding-bottom:14px}
html[data-v1-tool] fieldset{overflow-anchor:none}
}

/* Hiérarchie plus claire et choix plus lisibles. */
html[data-v1-tool] .config-controls fieldset{border-bottom-color:#d4dee1}
html[data-v1-tool] .config-controls legend{color:#082f43}
html[data-v1-tool] .advanced-options{border-radius:8px;overflow:hidden}
html[data-v1-tool] .config-type-grid label span,html[data-v1-tool] .config-options label span{transition:border-color .18s,background-color .18s,color .18s,box-shadow .18s}
html[data-v1-tool] .config-type-grid input:checked+span,html[data-v1-tool] .config-options input:checked+span{box-shadow:0 0 0 2px #118dcc24}

@media(max-width:900px){
html[data-v1-tool="meuble"],html[data-v1-tool="ouvertures"],html[data-v1-tool="meuble"] body,html[data-v1-tool="ouvertures"] body{overflow-x:hidden;scroll-behavior:auto}
html[data-v1-tool] .config-preview-column,html[data-v1-tool] .config-controls{overflow-anchor:none}
}

/* Illustrations des deux accès au configurateur. */
.hub-visual{position:relative;isolation:isolate;overflow:hidden;background:#d7e4e5}
.hub-visual:before,.hub-visual:after,.hub-visual i{content:"";position:absolute;display:block}
.hub-furniture .hub-visual{background:linear-gradient(155deg,#eef3f0 0 57%,#cbb89f 57% 100%)}
.hub-furniture .hub-visual:before{z-index:1;left:10%;right:10%;bottom:12%;height:12%;border-radius:50%;background:#253b4430;filter:blur(9px)}
.hub-furniture .hub-visual:after{z-index:2;left:16%;right:16%;top:17%;bottom:18%;border:7px solid #8f613b;border-bottom-width:10px;background:linear-gradient(90deg,#c99560 0 49%,#b47f4f 49% 51%,#d2a774 51%);box-shadow:12px 16px 28px #17384635,inset 0 0 0 2px #e8c79c}
.hub-furniture .hub-visual i{z-index:3;background:#795033}
.hub-furniture .hub-visual i:nth-child(1){left:49%;top:19%;bottom:21%;width:5px}
.hub-furniture .hub-visual i:nth-child(2){left:18%;right:18%;top:49%;height:5px}
.hub-furniture .hub-visual i:nth-child(3){left:29%;right:29%;top:31%;height:3px;box-shadow:0 54px 0 #795033}
.hub-opening .hub-visual{background:linear-gradient(#9dd4e8 0 57%,#b9c98c 57% 72%,#cdbb9f 72%)}
.hub-opening .hub-visual:before{z-index:1;inset:12% 11% 14%;background:#f4f0e7;border:7px solid #fff;box-shadow:12px 16px 28px #17384638}
.hub-opening .hub-visual:after{z-index:3;left:50%;top:17%;bottom:19%;width:5px;background:#f7f4ed;box-shadow:-51px 0 0 -1px #f7f4ed,51px 0 0 -1px #f7f4ed}
.hub-opening .hub-visual i{z-index:2;top:17%;bottom:19%;width:31%;border:5px solid #ece9e2;background:linear-gradient(145deg,#aedbea,#e9f5f7 55%,#9bc7d7)}
.hub-opening .hub-visual i:first-child{left:17%}
.hub-opening .hub-visual i:last-child{right:17%}
.hub-card:hover .hub-visual:before,.hub-card:hover .hub-visual:after,.hub-card:hover .hub-visual i{transition:transform .35s ease}
.hub-card:hover .hub-visual:after{transform:translateY(-3px)}

@media(max-width:600px){
.hub-furniture .hub-visual:after{top:11%;bottom:13%}
.hub-opening .hub-visual:before{inset:8% 17% 9%}
.hub-opening .hub-visual i{top:13%;bottom:14%;width:25%}
.hub-opening .hub-visual i:first-child{left:23%}
.hub-opening .hub-visual i:last-child{right:23%}
}

/* Illustrations SVG externes, nettes sur tous les écrans. */
.hub-card .hub-visual:before,.hub-card .hub-visual:after,.hub-card .hub-visual i{display:none}
.hub-visual img{display:block;width:100%;height:100%;object-fit:cover;object-position:center;transition:transform .45s cubic-bezier(.2,.7,.2,1),filter .45s}
.hub-card:hover .hub-visual img{transform:scale(1.035);filter:saturate(1.06) contrast(1.02)}
@media(max-width:600px){.hub-visual img{object-position:center 57%}}
