/* Elegam — editorial room explorer and shared product-offer presentation. */
.home-explorer{background:#f6f4ef;padding:clamp(3rem,6vw,6rem) 0;}
.explorer-intro{display:flex;align-items:flex-end;gap:clamp(2rem,5vw,5rem);justify-content:space-between;margin-bottom:2rem;}
.explorer-intro>div{max-width:600px;}.explorer-intro h2{font-size:clamp(2rem,3.7vw,3.2rem);line-height:1.12;margin:.75rem 0 0;letter-spacing:-.045em;}
.explorer-intro>p{max-width:40ch;color:var(--ink-soft);line-height:1.75;margin:0;}
.explorer-stage{position:relative;}.explorer-plan{position:relative;overflow:hidden;border-radius:30px;background:#f8f7f3;border:1px solid rgba(70,60,45,.09);}
.explorer-plan>img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:contain;}
.room-hotspot{position:absolute;left:var(--room-x);top:var(--room-y);transform:translate(-50%,-50%);display:flex;align-items:center;gap:9px;padding:7px 13px 7px 7px;border-radius:999px;background:rgba(255,253,248,.93);border:1px solid rgba(255,255,255,.95);color:var(--ink);box-shadow:0 6px 28px rgba(37,29,18,.19);font-size:.9rem;font-weight:600;text-decoration:none;transition:background .2s,box-shadow .2s;white-space:nowrap;}
.room-dot{width:31px;height:31px;display:grid;place-items:center;border-radius:50%;background:var(--terracotta);color:#fff;font-size:.77rem;}
.room-hotspot:hover,.room-hotspot:focus-visible{background:#fff;box-shadow:0 8px 30px rgba(80,40,18,.32);outline:3px solid var(--terracotta);outline-offset:4px;}
.explorer-caption{display:flex;gap:1rem;justify-content:space-between;align-items:center;padding:1rem .25rem;color:var(--ink-soft);font-size:.74rem;}
.explorer-caption>span:first-child{font-weight:600;color:var(--ink);font-size:.85rem;}
.explorer-room-nav{display:flex;flex-wrap:wrap;gap:.6rem;padding-top:.35rem;}
.explorer-room-nav a{display:flex;align-items:center;gap:.7rem;flex:1 1 auto;padding:.85rem 1rem;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.5);font-size:.88rem;font-weight:600;text-decoration:none;transition:background .18s,color .18s;}
.explorer-room-nav a>span:first-child{font-size:.72rem;color:var(--terracotta);}.explorer-room-nav a>span:last-child{margin-left:auto;}
.explorer-room-nav a:hover,.explorer-room-nav a:focus-visible{background:var(--ink);color:#fff;outline:2px solid var(--terracotta);outline-offset:3px;}
.offer-dialog{position:fixed;inset:4vh auto auto 50%;transform:translateX(-50%);margin:0;width:min(1100px,calc(100% - 2.5rem));max-width:none;max-height:92vh;max-height:92dvh;padding:0;border:1px solid rgba(255,255,255,.85);border-radius:25px;background:rgba(250,248,244,.97);color:var(--ink);backdrop-filter:blur(25px);box-shadow:0 30px 100px rgba(28,20,12,.32);overscroll-behavior:contain;}
.offer-dialog[open]{animation:offer-appear .2s ease-out;}.offer-dialog::backdrop{background:rgba(30,27,22,.34);backdrop-filter:blur(5px);}
.offer-dialog-toolbar{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.85rem 1.4rem;background:rgba(250,248,244,.94);backdrop-filter:blur(18px);border-bottom:1px solid rgba(65,50,32,.1);}
.offer-dialog-close,.offer-dialog-x{border:0;background:transparent;font:inherit;color:var(--ink);cursor:pointer;padding:.45rem;font-size:.85rem;font-weight:600;}
.offer-dialog-close span{margin-right:.45rem;}.offer-dialog-x{font-size:1.7rem;line-height:1;padding:.35rem .65rem;border-radius:50%;}.offer-dialog-brand{font-size:.72rem;letter-spacing:.05em;color:var(--ink-soft);}
.offer-dialog button:focus-visible,.offer-view a:focus-visible,.offer-view summary:focus-visible{outline:3px solid var(--terracotta);outline-offset:4px;}
.offer-view{padding:clamp(1.5rem,4vw,3.5rem);}.offer-view--full{max-width:1320px;margin:0 auto;padding-top:clamp(2rem,5vw,4rem);}
.offer-hero{display:grid;grid-template-columns:1fr 1fr;gap:clamp(1.5rem,4vw,3.5rem);align-items:center;}
.offer-hero h1,.offer-hero h2{font-size:clamp(2rem,3.5vw,3.2rem);line-height:1.1;letter-spacing:-.04em;margin:.85rem 0 1.2rem;}
.offer-intro{font-size:1rem;line-height:1.8;color:var(--ink-soft);margin:0 0 1.5rem;}
.offer-actions{display:flex;gap:1rem 1.4rem;flex-wrap:wrap;align-items:center;}.offer-subtle-link{font-size:.85rem;color:var(--terracotta-dark);text-decoration:underline;text-underline-offset:4px;}
.offer-visual{margin:0;}.offer-visual img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:20px;}.offer-visual--bureau-sur-mesure img{aspect-ratio:4/4.2;max-height:590px;}
.offer-visual figcaption{font-size:.66rem;color:var(--ink-soft);margin-top:.65rem;line-height:1.5;}
.offer-highlights{display:flex;flex-wrap:wrap;gap:1rem 2rem;list-style:none;margin:2rem 0 0;padding:1.5rem 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);}
.offer-highlights li{flex:1 1 200px;display:flex;gap:.65rem;font-size:.85rem;font-weight:600;line-height:1.6;}.offer-highlights li>span{color:var(--terracotta);}
.offer-chapters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem;margin:3rem 0;}
.offer-chapter h2,.offer-chapter h3{font-size:1.25rem;line-height:1.35;margin:0 0 .85rem;letter-spacing:-.025em;}.offer-chapter p{font-size:.91rem;line-height:1.8;color:var(--ink-soft);}.offer-chapter ul{padding-left:1.1rem;margin-top:1rem;font-size:.84rem;line-height:1.7;}.offer-chapter li{margin:.45rem 0;}.offer-chapter li::marker{color:var(--terracotta);}
.offer-models{display:flex;gap:2rem;align-items:center;justify-content:space-between;border-radius:20px;background:#ece8df;padding:1.7rem;}.offer-models>div{max-width:55ch;}.offer-models h2,.offer-models h3{font-size:1.45rem;line-height:1.3;margin:.7rem 0;}.offer-models p{font-size:.9rem;line-height:1.7;margin:0;color:var(--ink-soft);}.offer-models .btn{flex-shrink:0;white-space:normal;}
.offer-faq{margin:2.5rem 0;max-width:850px;}.offer-faq>h2,.offer-faq>h3{font-size:1.5rem;margin-bottom:1rem;}.offer-faq details{border-top:1px solid var(--line);padding:.95rem 0;}.offer-faq details:last-child{border-bottom:1px solid var(--line);}.offer-faq summary{cursor:pointer;font-size:.92rem;font-weight:600;line-height:1.5;}.offer-faq details p{font-size:.9rem;line-height:1.8;margin:.75rem 0 0;color:var(--ink-soft);}
.offer-cta{display:flex;justify-content:space-between;align-items:center;gap:2rem;padding:2rem;background:var(--ink);color:var(--paper);border-radius:20px;}.offer-cta>div{max-width:56ch;}.offer-cta h2,.offer-cta h3{font-size:1.6rem;margin:0 0 .65rem;line-height:1.3;}.offer-cta p{font-size:.9rem;line-height:1.7;margin:0;opacity:.8;}.offer-cta .btn{flex-shrink:0;}.offer-full-page{margin:1.3rem 0 0;text-align:right;font-size:.78rem;}.offer-full-page a{color:var(--terracotta-dark);text-decoration:underline;text-underline-offset:3px;}
.offer-related{padding:0 clamp(1.5rem,4vw,3.5rem) 3rem;max-width:1320px;margin:0 auto;}.offer-related nav{display:flex;flex-wrap:wrap;gap:1rem;}.offer-related a{color:var(--terracotta-dark);font-size:.9rem;text-decoration:underline;text-underline-offset:4px;}
.offer-cta p{color:#e8e1d5;opacity:1;}.offer-cta .btn{background:var(--paper);color:var(--ink);border-color:var(--paper);}
@media(min-width:1101px){.home-explorer>.container{display:grid;grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);gap:3rem;align-items:center;}.explorer-intro{display:block;margin-bottom:0;}.explorer-intro h2{font-size:clamp(2.25rem,3.25vw,3.1rem);}.explorer-intro>p{margin-top:1.6rem;max-width:33ch;}.explorer-caption>span:last-child{max-width:28ch;text-align:right;font-size:.65rem;}.explorer-room-nav a{font-size:.8rem;flex-basis:calc(50% - .6rem);}.room-hotspot{font-size:.77rem;gap:6px;padding-right:10px;}}
@keyframes offer-appear{from{opacity:0;translate:0 14px;}to{opacity:1;translate:0 0;}}
@media(max-width:900px){.explorer-intro{align-items:flex-start;gap:1.5rem;}.explorer-intro>p{max-width:33ch;}.room-label{font-size:.76rem;}.offer-chapters{grid-template-columns:1fr;gap:1.6rem;}.offer-chapter{padding-bottom:1.2rem;border-bottom:1px solid var(--line);}.offer-models{flex-direction:column;align-items:flex-start;}}
@media(max-width:640px){.explorer-intro{display:block;margin-bottom:1.4rem;}.explorer-intro>p{max-width:none;margin-top:1rem;font-size:.92rem;}.explorer-plan{border-radius:18px;}.room-hotspot{padding:0;background:none;border:0;box-shadow:none;}.room-dot{width:38px;height:38px;border:2px solid #fff;box-shadow:0 3px 10px #0003;}.room-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}.explorer-caption{align-items:flex-start;gap:.5rem;}.explorer-caption>span:last-child{max-width:26ch;font-size:.62rem;text-align:right;}.explorer-room-nav{gap:.5rem;}.explorer-room-nav a{flex:1 1 calc(50% - .5rem);font-size:.78rem;padding:.8rem .7rem;gap:.5rem;}.offer-dialog{inset:2vh auto auto 50%;width:calc(100% - 1rem);max-height:96vh;max-height:96dvh;border-radius:18px;}.offer-dialog-toolbar{padding:.7rem .7rem;}.offer-dialog-brand{display:none;}.offer-hero{grid-template-columns:1fr;gap:1.5rem;}.offer-view{padding:1.2rem;}.offer-hero h1,.offer-hero h2{font-size:2rem;}.offer-intro{font-size:.92rem;}.offer-visual img{aspect-ratio:4/3;}.offer-visual--bureau-sur-mesure img{aspect-ratio:4/4.2;}.offer-highlights{margin-top:1.5rem;gap:.8rem;padding:1rem 0;}.offer-highlights li{flex-basis:100%;}.offer-chapters{margin:2rem 0;}.offer-models{padding:1.25rem;}.offer-cta{padding:1.4rem;flex-direction:column;align-items:flex-start;gap:1.2rem;}.offer-full-page{text-align:left;}.offer-related{padding:0 1.2rem 2rem;}}
@media(prefers-reduced-motion:reduce){.offer-dialog[open]{animation:none;}.room-hotspot,.explorer-room-nav a{transition:none;}}
