.mx{--pink:#f50091;--ink:#121116;--paper:#f5f2ec;--line:#ffffff25;font:16px/1.5 Arial,Helvetica,sans-serif;color:var(--ink);text-align:left}.mx *{box-sizing:border-box}.mx a{color:inherit;text-decoration:none}.mx button,.mx input,.mx select{font:inherit}.mx button{cursor:pointer}.mx button:focus-visible,.mx a:focus-visible,.mx input:focus-visible{outline:3px solid #ff9bd8;outline-offset:4px}.mx [hidden]{display:none!important}.mx h1,.mx h2,.mx h3,.mx p{margin:0}.mx h1,.mx h2,.mx h3{font-weight:800;line-height:1.02;letter-spacing:-.045em}.mx em{font-style:normal;color:var(--pink)}.mx-hero{min-height:720px;height:calc(100svh - 70px);max-height:1000px;position:relative;display:flex;align-items:center;color:white;isolation:isolate;overflow:hidden;background:#252329}.mx-scene,.mx-shade,.mx-story-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}.mx-shade{background:linear-gradient(90deg,#100e16ed 0%,#100e16b5 38%,#100e1640 72%),linear-gradient(0deg,#100e16b0,transparent 45%);z-index:-1}.mx-hero-copy{padding:65px clamp(24px,6vw,110px);width:100%;position:relative}.mx-kicker{font-size:11px;letter-spacing:.17em;font-weight:700;display:flex;align-items:center;gap:10px}.mx-dot{display:inline-block;border-radius:100%;width:7px;height:7px;flex:none;background:var(--pink);box-shadow:0 0 14px #f5009188}.mx h1{font-size:clamp(48px,5.9vw,88px);max-width:850px;margin:27px 0}.mx-hero-copy>p:not(.mx-kicker):not(.mx-micro){font-size:17px;line-height:1.6;color:#eee9ef}.mx-actions{display:flex;gap:13px;flex-wrap:wrap;align-items:center;margin:30px 0 15px}.mx-primary,.mx-ghost{display:inline-flex;gap:30px;justify-content:space-between;align-items:center;border-radius:5px;padding:17px 22px;font-weight:700;border:0}.mx-primary{background:var(--pink);color:white}.mx-primary:hover{background:#d1007a}.mx-ghost{background:#ffffff0d;color:white;border:1px solid #ffffff50}.mx-ghost:hover{background:#ffffff20}.mx-micro{font-size:11px;color:#d0c9d1}.mx-welcome{position:absolute;bottom:36px;right:40px;border:1px solid #ffffff45;border-radius:7px;padding:16px 22px;display:flex;align-items:center;gap:14px;backdrop-filter:blur(12px);background:#12111690;font-size:12px}.mx-welcome b{font-size:14px}.mx-scene-note{position:absolute;bottom:10px;right:16px;color:#ffffffbb;font-size:9px}.mx-paths{background:var(--paper);padding:65px clamp(24px,5vw,90px);display:grid;grid-template-columns:1fr 1fr 1fr;gap:18px}.mx-paths>div:first-child{grid-column:1/-1;margin-bottom:22px}.mx-paths h2{font-size:clamp(33px,4vw,54px);margin-top:12px}.mx-path{display:flex;flex-direction:column;align-items:flex-start;text-align:left;border:1px solid #d8d4cf;background:#fff;border-radius:7px;padding:28px;position:relative;overflow:hidden;color:var(--ink);min-height:260px}.mx-path:hover{border-color:var(--pink);transform:translateY(-3px)}.mx-number{font-size:10px;letter-spacing:.07em;font-weight:700;color:#656068}.mx-path h3{font-size:27px;margin:30px 0 15px}.mx-path p{font-size:14px;color:#625c65;max-width:270px;margin-bottom:25px}.mx-path strong{font-size:13px;margin-top:auto}.mx-bernard-card{padding-right:110px;background:#17131b;color:white}.mx-bernard-card .mx-number,.mx-bernard-card p{color:#c7bdcb}.mx-bernard-card img{position:absolute;width:165px;right:-37px;bottom:12px;pointer-events:none}.mx-quick{display:flex;flex-wrap:wrap;justify-content:center;gap:18px 25px;padding:25px;background:#19151d;color:white;font-size:12px}.mx-quick>span{font-size:10px;color:#bcaebe;letter-spacing:.06em;align-self:center}.mx-quick a:hover{color:#ff8bd0}.home #ml>.nav,.home #ml>:not(#demande){display:none!important}.home #ml #demande{display:block}.mx-story-lock{overflow:hidden!important}.mx #mx-story{padding:0;margin:0;width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;border:0;color:#fff;background:#100e14;position:fixed;inset:0;z-index:999999;isolation:isolate}.mx #mx-story::backdrop{background:#100e14}.mx-story-bg{background:linear-gradient(100deg,#100e14fa,#100e14db),var(--warehouse) center/cover}.mx-story-shell{display:flex;flex-direction:column;min-height:100%;position:relative}.mx-story-top{display:flex;justify-content:space-between;align-items:center;padding:22px 4vw;gap:16px}.mx-brand{font-size:15px;letter-spacing:.08em;font-weight:800}.mx-brand b{color:var(--pink)}.mx-story-top>span{font-size:10px;letter-spacing:.2em;color:#baadbf}.mx-exit,.mx-back,.mx-link{color:white;border:1px solid #ffffff35;border-radius:5px;background:transparent;padding:9px 15px;font-size:12px}.mx-progress{height:2px;background:#ffffff12;margin:0 4vw}.mx-progress i{display:block;width:0;background:var(--pink);height:100%;transition:width .25s}.mx-story-body{flex:1;display:grid;grid-template-columns:230px minmax(0,1fr);gap:60px;padding:55px max(5vw,24px);align-items:center;max-width:1400px;width:100%;margin:auto}.mx-guide{border-right:1px solid var(--line);padding-right:40px}.mx-vivian{width:95px;height:115px;display:grid;place-items:center;background:linear-gradient(145deg,#342337,#120f17);border:1px solid #f5009160;border-radius:6px;font-size:59px;font-weight:900;color:var(--pink);margin-bottom:25px;background-size:cover;background-position:center}.mx-guide h2{font-size:29px;margin:10px 0}.mx-guide p:not(.mx-kicker){font-size:13px;color:#c6bacb;line-height:1.6}.mx-guide .mx-guide-note{font-size:10px!important;margin-top:38px}.mx-stage h2{font-size:clamp(34px,4.8vw,67px);max-width:900px;margin:18px 0 22px}.mx-stage>p{max-width:720px;color:#c6bacb;font-size:15px}.mx-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;margin:30px 0;max-width:800px}.mx-option{padding:19px 20px;min-height:70px;text-align:left;color:#fff;background:#ffffff06;border:1px solid #ffffff30;border-radius:6px;font-size:16px}.mx-option:hover,.mx-option[aria-pressed=true]{border-color:var(--pink);background:#f5009117}.mx-option span{display:block;font-size:11px;color:#baadbf;margin-top:4px}.mx-next{margin-top:15px}.mx-story-bottom{padding:15px 4vw 25px;display:flex;justify-content:space-between;align-items:center;gap:15px;color:#b6a9bc;font-size:11px}.mx-story-bottom .mx-link{border:0;color:#b6a9bc}.mx-date-grid{display:grid;grid-template-columns:1fr 1fr;max-width:650px;gap:15px;margin:25px 0}.mx-date-grid label{font-size:12px;color:#d3c7d8;display:block}.mx-date-grid input{display:block;color:#fff;background:#211b27;border:1px solid #ffffff35;border-radius:5px;padding:16px;width:100%;margin-top:8px;color-scheme:dark}.mx-error{color:#ffb4d9!important;font-size:13px!important;margin:12px 0!important}.mx-tags{display:flex;gap:7px;flex-wrap:wrap;margin:15px 0}.mx-tags span{background:#ffffff0b;border:1px solid #ffffff25;border-radius:20px;padding:5px 10px;font-size:11px;color:#ded4e3}.mx-products{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:22px 0}.mx-product{background:#ffffff08;border:1px solid #ffffff25;padding:19px;border-radius:6px;display:flex;flex-direction:column;gap:10px}.mx-product img{width:100%;height:125px;object-fit:contain;background:white;border-radius:4px}.mx-product h3{font-size:19px;letter-spacing:-.02em;line-height:1.2}.mx-product p{font-size:12px;color:#c9bfce}.mx-product a{font-size:12px;text-decoration:underline;text-underline-offset:3px}.mx-product button{border:1px solid #ffffff45;padding:10px;background:transparent;color:white;border-radius:4px;font-size:12px;margin-top:auto}.mx-product button[aria-pressed=true]{border-color:var(--pink);background:#f5009125}.mx-summary{margin:24px 0;padding:20px;border-left:3px solid var(--pink);background:#ffffff08;font-size:13px}.mx-summary p{margin:7px 0}.mx-recommend-tabs{display:flex;gap:7px;flex-wrap:wrap;margin-top:22px}.mx-recommend-tabs button{color:white;border:1px solid #ffffff35;background:transparent;border-radius:20px;padding:7px 13px;font-size:12px}.mx-recommend-tabs button[aria-pressed=true]{background:var(--pink);border-color:var(--pink)}.mx-chat-launch{position:fixed;bottom:22px;right:22px;z-index:99980;border:1px solid #ffffff35;border-radius:50px;background:#17131b;color:white;display:flex;align-items:center;gap:12px;padding:9px 17px 9px 8px;box-shadow:0 8px 30px #0004;text-align:left}.mx-chat-launch img{width:49px;height:49px;object-fit:contain}.mx-chat-launch b{font-size:14px}.mx-chat-launch small{display:block;font-size:10px;color:#dfc8e0}.mx-chat-launch>span:last-child{color:var(--pink);margin-left:10px}.mx #mx-chat{position:fixed;right:22px;bottom:95px;width:min(390px,calc(100vw - 24px));max-height:calc(100dvh - 115px);z-index:99990;background:#fff;border:1px solid #ded7e1;border-radius:14px;box-shadow:0 20px 60px #0005;overflow:hidden;display:flex;flex-direction:column}.mx #mx-chat>header{display:flex;align-items:center;gap:12px;background:#17131b;color:white;padding:13px 17px}.mx #mx-chat>header img{width:45px;height:45px;object-fit:contain}.mx #mx-chat>header small{font-size:10px;display:block;color:#d9c5de}.mx #mx-chat>header button{margin-left:auto;font-size:25px;color:white;background:none;border:0}.mx-chat-log{overflow:auto;min-height:180px;max-height:340px;padding:17px;display:flex;flex-direction:column;gap:13px;overscroll-behavior:contain}.mx-message{border-radius:9px;background:#f3eef5;padding:12px 14px;font-size:13px;white-space:pre-wrap;line-height:1.55;align-self:flex-start;max-width:95%;overflow-wrap:anywhere}.mx-message.mx-user{align-self:flex-end;background:#18131d;color:white}.mx-message a{display:block;color:#a80066;text-decoration:underline;margin-top:7px}.mx-chat-quick{display:flex;flex-wrap:wrap;gap:6px;padding:6px 15px 12px}.mx-chat-quick button{border:1px solid #e0d8e3;background:white;border-radius:20px;padding:6px 11px;font-size:11px;color:#3c3044}.mx-chat-form{display:flex;border-top:1px solid #e5dee7;padding:11px;gap:8px}.mx-chat-form input{width:100%;min-width:0;border:1px solid #d9d0de;border-radius:6px;padding:10px;font-size:12px;background:white;color:#17131b}.mx-chat-form button{background:var(--pink);color:white;border:0;border-radius:6px;width:40px;flex:none}.mx-chat-notice{text-align:center;font-size:9px;color:#7d7183;padding:0 10px 10px}.mx-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
@media(max-width:900px){.mx-paths{grid-template-columns:1fr}.mx-path{min-height:210px}.mx-path h3{margin-top:20px}.mx-path p{max-width:70%}.mx-story-body{grid-template-columns:160px 1fr;gap:25px}.mx-guide{padding-right:20px}.mx-welcome{right:24px;bottom:30px}.mx-products{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.mx-hero{min-height:690px;height:calc(100svh - 60px);align-items:flex-start}.mx-hero-copy{padding:55px 24px}.mx h1{font-size:49px;margin:24px 0}.mx-scene{object-position:67% center}.mx-shade{background:linear-gradient(90deg,#100e16dd,#100e1670),linear-gradient(0deg,#100e16c9,transparent)}.mx-hero-copy>p:not(.mx-kicker):not(.mx-micro){font-size:14px;max-width:300px}.mx-actions{display:grid;max-width:330px;gap:10px}.mx-primary,.mx-ghost{padding:15px 18px;font-size:13px}.mx-welcome{left:24px;right:24px;bottom:27px;padding:13px}.mx-welcome b{font-size:12px}.mx-welcome span{font-size:10px}.mx-micro{font-size:9px}.mx-paths{padding:40px 20px}.mx-path{padding:23px}.mx-quick{justify-content:flex-start;padding:24px;gap:17px}.mx-quick>span{width:100%}.mx-story-top{padding:17px 20px}.mx-story-top>span{display:none}.mx-story-body{display:flex;flex-direction:column;align-items:stretch;padding:23px 22px;gap:22px}.mx-guide{border:0;border-bottom:1px solid var(--line);padding:0 0 15px;display:grid;grid-template-columns:45px 1fr;column-gap:12px;align-items:center}.mx-vivian{width:45px;height:45px;font-size:30px;margin:0;grid-row:1/3}.mx-guide .mx-kicker{font-size:9px}.mx-guide h2{font-size:21px;margin:2px 0}.mx-guide>p:not(.mx-kicker){display:none}.mx-stage h2{font-size:38px}.mx-stage>p{font-size:13px}.mx-options{gap:9px;margin:22px 0}.mx-option{padding:15px 12px;min-height:67px;font-size:14px}.mx-option span{font-size:10px}.mx-story-bottom{padding:14px 20px}.mx-date-grid{grid-template-columns:1fr}.mx-products{grid-template-columns:1fr}.mx-chat-launch{right:12px;bottom:12px;padding:5px 13px 5px 5px;gap:7px}.mx-chat-launch img{width:40px;height:40px}.mx-chat-launch small{font-size:9px}.mx #mx-chat{right:12px;bottom:77px;max-height:calc(100dvh - 90px)}.mx-chat-log{max-height:300px}.mx-brand{font-size:12px}}
.mx h1,.mx h2,.mx h3{color:inherit;padding-bottom:0}.home:has(#mloc-experience) #main-content>.container{width:100%;max-width:none;padding-top:0}.home:has(#mloc-experience) #left-area{width:100%;padding:0;float:none}.home:has(#mloc-experience) #sidebar,.home:has(#mloc-experience) #main-content>.container:before{display:none}
@media(prefers-reduced-motion:reduce){.mx *{transition:none!important;animation:none!important;scroll-behavior:auto!important}}

.mx-vivian{object-fit:cover;object-position:50% 30%;width:150px;height:180px}.mx-guide-video{margin-top:20px;font-size:12px;color:#e6d9eb}.mx-guide-video summary{cursor:pointer;color:#ffa1da;text-decoration:underline;text-underline-offset:4px}.mx-guide-video video{display:block;width:100%;max-height:280px;margin:12px 0;background:#17131b;border-radius:6px}.mx-guide-video small{display:block;font-size:10px;line-height:1.4;color:#c6bacb}@media(max-width:600px){.mx-vivian{width:45px;height:45px}.mx-guide-video{grid-column:1/-1;margin:12px 0 0}.mx-guide-video video{width:190px;max-height:250px}}

.mx-vivian{width:100%;height:300px;object-fit:contain;object-position:50% 50%;background:radial-gradient(ellipse at bottom,#f5009125,transparent 70%);border:0;border-radius:0}.mx-guide{padding-right:25px}@media(max-width:600px){.mx-guide{grid-template-columns:65px 1fr}.mx-vivian{width:65px;height:90px;grid-row:1/3;margin:0}.mx-guide h2{align-self:start}}

.mx-guide-visual{position:relative}.mx-guide-motion{display:block;width:100%;height:350px;object-fit:cover;object-position:87% center;border-radius:8px;background:#231b28}.mx-motion-toggle{width:100%;border:1px solid #ffffff30;background:#ffffff08;color:#e9ddeb;font:10px Arial;padding:8px;border-radius:4px;margin:8px 0 20px}.mx-guide-motion[hidden],.mx-motion-toggle[hidden]{display:none!important}@media(max-width:600px){.mx-guide-visual{grid-row:1/3;width:85px}.mx-guide{grid-template-columns:85px 1fr}.mx-guide-motion{height:125px;width:85px;object-position:87% center}.mx-motion-toggle{font-size:9px;margin:5px 0 0;padding:5px}.mx-guide .mx-vivian{width:85px;height:125px}}

@media(min-width:901px){.mx-story-body{grid-template-columns:minmax(0,720px) minmax(150px,1fr);gap:55px;padding-right:5vw}.mx-stage{grid-column:1;grid-row:1}.mx-guide{grid-column:2;grid-row:1;align-self:end;border:0;padding:0 0 20px 25px}.mx-guide-visual{position:static}.mx-guide-motion{position:fixed;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;object-position:center;border-radius:0}.mx #mx-story:has(.mx-guide-motion:not([hidden])):after{content:'';position:fixed;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,#100e14ed 0%,#100e14dc 38%,#100e1455 65%,#100e1420 100%)}.mx-motion-toggle{position:fixed;right:25px;bottom:25px;width:auto;z-index:10;background:#17131bd9;padding:10px 13px;margin:0}.mx-guide:has(.mx-guide-motion:not([hidden])) .mx-guide-note{display:none}.mx-guide:has(.mx-guide-motion:not([hidden]))>p:not(.mx-kicker){text-shadow:0 2px 8px #000}.mx-guide h2{text-shadow:0 2px 10px #000}}
.mx-motion-toggle,.mx-exit,.mx-back,.mx-link{min-height:44px}@media(max-width:600px){.mx-chat-quick button{min-height:40px}.mx-chat-form button{min-width:44px;min-height:44px}.mx #mx-chat>header button{min-width:44px;min-height:44px}}

/* Mobile layout: preserve the scene and keep navigation reachable. */
@media(max-width:900px){
 .mx #mx-story{width:100%;max-width:100%;height:100vh;height:100dvh;max-height:100dvh;overflow:hidden}
 .mx-story-shell{height:100%;min-height:0;overflow:hidden}
 .mx-story-top{flex:none;padding:calc(12px + env(safe-area-inset-top,0px)) 18px 12px;gap:12px}
 .mx-progress{flex:none}
 .mx-story-body{display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;gap:20px;padding:20px 18px;margin:0;max-width:none}
 .mx-story-body>*{min-width:0;max-width:100%}
 .mx-guide{display:grid;grid-template-columns:144px minmax(0,1fr);grid-template-rows:auto auto;align-items:center;align-content:center;column-gap:16px;row-gap:0;border:0;border-bottom:1px solid var(--line);padding:0 0 16px;flex:none}
 .mx-guide-visual{grid-column:1;grid-row:1/3;width:144px;display:flex;flex-direction:column}
 .mx-guide-motion,.mx-guide .mx-vivian{width:144px;height:81px;object-fit:contain;object-position:center;background:#211b27;border-radius:6px;margin:0}
 .mx .mx-motion-toggle{font-size:11px;line-height:1.25;padding:6px;margin:5px 0 0;min-height:36px;width:100%;white-space:normal}
 .mx-guide>.mx-kicker{grid-column:2;grid-row:1;align-self:end;font-size:9px}
 .mx-guide h2{grid-column:2;grid-row:2;align-self:start;font-size:24px;margin:5px 0 0}
 .mx-guide>p:not(.mx-kicker){display:none}
 .mx-stage{flex:none;min-width:0;overflow-wrap:anywhere}
 .mx-stage h2{font-size:clamp(28px,6.7vw,42px);line-height:1.1;margin:12px 0 16px}
 .mx-stage>p{font-size:14px;line-height:1.55}
 .mx-story-bottom{flex:none;padding:10px 16px calc(10px + env(safe-area-inset-bottom,0px));gap:8px;background:#17131b;border-top:1px solid var(--line)}
 .mx-story-bottom button{min-width:0;font-size:11px;padding:8px 10px}
 .mx-date-grid input{min-width:0;max-width:100%;font-size:16px}
 .mx .mx-chat-form input{font-size:16px}
 .mx #mx-chat{max-height:calc(100dvh - 100px - env(safe-area-inset-top,0px));bottom:calc(76px + env(safe-area-inset-bottom,0px))}
 .mx-chat-log{min-height:0;flex:1;overflow-y:auto}
 .mx-chat-launch{bottom:calc(12px + env(safe-area-inset-bottom,0px))}
}
@media(max-width:600px){
 .mx-hero{display:flex;flex-direction:column;align-items:stretch;min-height:0;height:auto;max-height:none;overflow:visible;background:#17131b}
 .mx-scene{position:relative;inset:auto;display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:contain;object-position:center;z-index:0}
 .mx-shade{display:none}
 .mx-hero-copy{padding:26px 20px 24px;order:1}
 .mx h1{font-size:clamp(34px,9.2vw,49px);line-height:1.05;margin:18px 0;overflow-wrap:normal}
 .mx-hero-copy>p:not(.mx-kicker):not(.mx-micro){max-width:none;font-size:14px}
 .mx-actions{display:grid;grid-template-columns:minmax(0,1fr);max-width:none;width:100%;margin:22px 0 14px}
 .mx-actions>*{width:100%;min-width:0;min-height:48px}
 .mx-micro{font-size:10px;line-height:1.5}
 .mx-welcome{position:static;order:2;margin:0 20px 14px;padding:12px;backdrop-filter:none}
 .mx-scene-note{position:static;order:3;text-align:right;padding:0 20px 18px}
 .mx-paths{gap:14px;padding:32px 20px}
 .mx-paths h2{font-size:32px;line-height:1.1}
 .mx-path{min-width:0}
 .mx-path p{max-width:none}
 .mx-bernard-card p{max-width:calc(100% - 55px)}
 .mx-options{grid-template-columns:minmax(0,1fr);margin:20px 0;gap:9px}
 .mx .mx-option{min-height:48px;padding:14px;font-size:14px;line-height:1.4}
 .mx-options .mx-option span{font-size:11px}
 .mx-date-grid,.mx-products{grid-template-columns:minmax(0,1fr)}
 .mx-product,.mx-summary{overflow-wrap:anywhere}
 .mx-story-top>span{display:none}
 .mx .mx-exit{min-height:44px;font-size:12px;padding:9px 12px}
 .mx-brand{font-size:12px}
 .mx-chat-launch small{display:none}
 .mx-chat-launch img{width:34px;height:34px}
 .mx #mx-chat{right:12px;width:calc(100% - 24px)}
 .mloc-services-nav{display:flex!important;flex-wrap:wrap!important;justify-content:center!important;gap:10px 16px!important;padding:12px 16px!important;max-width:100%;box-sizing:border-box}
 .mloc-services-nav>a{min-width:0;font-size:12px!important;white-space:normal}
 .mloc-services-nav>a:first-child{flex-basis:100%;text-align:center;font-size:14px!important}
}
@media(max-width:360px){.mx-guide{grid-template-columns:120px minmax(0,1fr);gap:10px}.mx-guide-visual,.mx-guide-motion,.mx-guide .mx-vivian{width:120px}.mx-guide-motion,.mx-guide .mx-vivian{height:68px}.mx-story-bottom{padding-left:10px;padding-right:10px}.mx-stage h2{font-size:28px}}
@media(max-width:900px) and (max-height:500px){.mx-guide{display:none}.mx-story-body{padding-top:14px}.mx-story-top{padding-top:8px;padding-bottom:8px}}

/* The animated guide is the central scene, on every screen. */
.mx #mx-story .mx-story-shell{height:100%;min-height:0;overflow:hidden}
.mx #mx-story .mx-story-body{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;flex:1;min-height:0;gap:0;padding:0;margin:0;max-width:none;width:100%;overflow:hidden}
.mx #mx-story .mx-guide{display:flex;flex-direction:column;align-items:center;flex:none;align-self:center;min-width:0;width:100%;max-width:960px;padding:12px 24px 0;margin:0;border:0;grid-column:auto;grid-row:auto}
.mx #mx-story .mx-guide-visual{display:block;position:relative;width:100%;height:clamp(150px,35dvh,380px);grid-column:auto;grid-row:auto;overflow:hidden;background:#100e14;border-radius:10px;border:1px solid #ffffff25}
.mx #mx-story .mx-guide-motion,.mx #mx-story .mx-guide .mx-vivian{position:static;inset:auto;z-index:auto;display:block;width:100%;height:100%;margin:0;object-fit:contain;object-position:center;border:0;border-radius:0;background:#100e14;grid-row:auto}
.mx #mx-story:has(.mx-guide-motion:not([hidden])):after{display:none}
.mx #mx-story .mx-motion-toggle{position:absolute;inset:auto 10px 10px auto;width:auto;max-width:calc(100% - 20px);min-height:36px;margin:0;padding:8px 12px;z-index:2;font-size:11px;line-height:1.25;background:#17131be8;border:1px solid #ffffff50;border-radius:6px}
.mx #mx-story .mx-guide-caption{width:100%;display:flex;align-items:baseline;justify-content:center;gap:12px;padding:11px 4px 9px;color:#f1e7f4;font-size:13px;line-height:1.4;min-height:39px}
.mx-guide-caption strong{color:#ff8bd0;flex:none}
.mx-guide-reply{overflow-wrap:anywhere}
.mx #mx-story .mx-stage{flex:1;min-height:0;min-width:0;width:100%;max-width:960px;margin:0 auto;padding:14px 24px 24px;overflow:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;grid-row:auto;grid-column:auto;align-self:center;scroll-padding:16px}
.mx #mx-story .mx-stage h2{font-size:clamp(28px,3vw,42px);line-height:1.1;margin:10px 0 12px;max-width:none}
.mx #mx-story .mx-stage>.mx-kicker{font-size:10px}
.mx #mx-story .mx-stage>p:not(.mx-kicker){font-size:14px;line-height:1.5;max-width:none}
.mx #mx-story .mx-options{max-width:none;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:20px 0}
.mx #mx-story .mx-option{min-height:52px;padding:15px 18px;font-size:15px;line-height:1.4}
.mx #mx-story .mx-story-top{flex:none;padding:14px 4vw}
.mx #mx-story .mx-progress{flex:none}
.mx #mx-story .mx-story-bottom{flex:none;padding:10px 4vw calc(10px + env(safe-area-inset-bottom,0px));border-top:1px solid #ffffff20;background:#17131b}
@media(max-width:600px){
 .mx #mx-story .mx-guide{padding:10px 12px 0}
 .mx #mx-story .mx-guide-visual{height:clamp(150px,31dvh,280px);border-radius:8px}
 .mx #mx-story .mx-guide-caption{font-size:12px;gap:8px;padding:9px 4px;min-height:37px}
 .mx #mx-story .mx-motion-toggle{min-height:32px;padding:6px 9px;font-size:10px;right:6px;bottom:6px}
 .mx #mx-story .mx-stage{padding:12px 18px 24px}
 .mx #mx-story .mx-stage h2{font-size:29px}
 .mx #mx-story .mx-stage>p:not(.mx-kicker){font-size:13px}
 .mx #mx-story .mx-options{grid-template-columns:minmax(0,1fr);margin:16px 0}
 .mx #mx-story .mx-option{min-height:48px;padding:13px 14px;font-size:14px}
 .mx #mx-story .mx-story-top{padding:calc(9px + env(safe-area-inset-top,0px)) 16px 9px}
 .mx #mx-story .mx-story-bottom{padding-left:14px;padding-right:14px}
}
@media(max-height:500px){
 .mx #mx-story .mx-guide{display:flex;padding-top:6px}
 .mx #mx-story .mx-guide-visual{height:28dvh;min-height:66px}
 .mx #mx-story .mx-guide-caption{font-size:11px;padding:5px 2px;min-height:26px}
 .mx #mx-story .mx-motion-toggle{min-height:26px;padding:4px 7px;font-size:9px;bottom:4px;right:4px}
 .mx #mx-story .mx-story-top{padding-top:5px;padding-bottom:5px}
 .mx #mx-story .mx-stage{padding-top:10px}
 .mx #mx-story .mx-story-bottom{padding-top:5px;padding-bottom:5px}
}
.mx #mx-story .mx-story-bg{background:radial-gradient(ellipse at 50% 12%,#352039 0%,#18121d 48%,#100e14 100%)}
.mx #mx-story .mx-guide-visual{height:clamp(150px,40dvh,420px)}
.mx #mx-story .mx-guide-reply{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
@media(max-width:600px){.mx #mx-story .mx-guide-visual{height:clamp(150px,31dvh,280px)}}
@media(max-height:500px){.mx #mx-story .mx-guide-visual{height:28dvh;min-height:66px}}

/* Contextual illustrations live in the scene Vivian is presenting. */
.mx #mx-story .mx-guide-visual{width:min(100%,calc(40dvh * 16 / 9));max-width:747px;height:auto;aspect-ratio:16/9}
.mx-choice-scene{position:absolute;left:0;bottom:3%;width:60%;height:92%;pointer-events:none;isolation:isolate}
.mx-choice-scene svg{width:100%;height:100%;overflow:visible;filter:drop-shadow(0 6px 5px #0005)}
.mx-scene-enter .ms-object{transform-origin:50% 85%;animation:ms-appear .6s cubic-bezier(.2,.8,.2,1) both}
.ms-float{animation:ms-float 3s ease-in-out infinite;transform-origin:center}
.ms-sway{animation:ms-sway 3.2s ease-in-out infinite;transform-origin:50% 20%}
.ms-glimmer{animation:ms-glimmer 2.5s ease-in-out infinite}
.ms-pulse{animation:ms-pulse 1.1s ease-in-out infinite;transform-origin:center}
.ms-level{animation:ms-glimmer .7s ease-in-out infinite alternate}
.ms-beams{animation:ms-beam 4s ease-in-out infinite alternate;transform-origin:50% 25%}
.ms-draw{stroke-dasharray:500;stroke-dashoffset:500;animation:ms-draw 1.2s .2s ease-out forwards}
.ms-photo{animation:ms-photo 3s ease-in-out infinite;transform-origin:center}
.ms-flash{opacity:0;animation:ms-flash 4s ease-in-out infinite}
.ms-person,.ms-arrive{animation:ms-appear .55s both;transform-origin:center bottom}
.mx .mx-option{position:relative}
.mx #mx-story .mx-option:has(.mx-option-image){padding-left:88px;min-height:78px}
.mx-option-image{position:absolute;left:8px;top:50%;width:68px;height:60px;transform:translateY(-50%);pointer-events:none;background:radial-gradient(ellipse,#f5009114,transparent 70%)}
.mx-option-image svg{display:block;width:100%;height:100%}
.mx-option-image *{animation:none!important;stroke-dashoffset:0!important}
.mx-option-image .ms-flash{display:none}
@keyframes ms-appear{from{opacity:0;transform:translateY(15px) scale(.92)}to{opacity:1;transform:none}}
@keyframes ms-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
@keyframes ms-sway{0%,100%{transform:rotate(-2deg)}50%{transform:rotate(2deg)}}
@keyframes ms-glimmer{0%,100%{opacity:.65}50%{opacity:1}}
@keyframes ms-pulse{0%,100%{opacity:.3;transform:scale(.95)}50%{opacity:1;transform:scale(1.04)}}
@keyframes ms-beam{from{transform:skewX(-8deg);opacity:.25}to{transform:skewX(8deg);opacity:.5}}
@keyframes ms-draw{to{stroke-dashoffset:0}}
@keyframes ms-photo{0%,100%{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-6px) rotate(2deg)}}
@keyframes ms-flash{0%,8%,100%{opacity:0}4%{opacity:.9}}
@media(max-width:600px){.mx #mx-story .mx-guide-visual{width:min(100%,calc(31dvh * 16 / 9));height:auto;max-width:none}.mx #mx-story .mx-option:has(.mx-option-image){padding-left:78px;min-height:72px}.mx-option-image{width:59px;height:55px}.mx #mx-story .mx-guide-caption{font-size:11px}}
@media(max-height:500px){.mx #mx-story .mx-guide-visual{width:min(100%,calc(28dvh * 16 / 9));height:auto;min-height:0}.mx #mx-story .mx-guide-caption{font-size:10px}}
@media(prefers-reduced-motion:reduce){.mx .mx-choice-scene *,.mx .mx-option-image *{animation:none!important;transition:none!important;stroke-dashoffset:0}.mx .ms-flash{display:none}.mx .ms-glimmer,.mx .ms-beams{opacity:.8}}
.mx #mx-story[data-motion-paused=true] .mx-choice-scene *,.mx #mx-story[data-motion-hidden=true] .mx-choice-scene *{animation-play-state:paused!important}
.mx #mx-story .mx-context-image{animation:mx-scene-camera 12s ease-in-out infinite alternate;transform-origin:65% 50%}
.mx #mx-story[data-motion-paused=true] .mx-context-image,.mx #mx-story[data-motion-hidden=true] .mx-context-image{animation-play-state:paused}
@keyframes mx-scene-camera{from{transform:scale(1)}to{transform:scale(1.025)}}
.mx-chat-tools{display:flex;align-items:center;gap:9px;padding:9px 12px;border-bottom:1px solid #eee5f0;background:#faf7fb;flex:none}
.mx .mx-voice-toggle{font-size:11px;line-height:1.3;color:#783658;background:white;border:1px solid #d6b8cc;border-radius:7px;padding:7px 9px;min-height:36px;flex:none}
.mx .mx-voice-toggle[aria-pressed=true]{background:#fce4f2;border-color:#d3007d}
.mx-chat-mode{font-size:9px;color:#7d7183;line-height:1.3}
.mx .mx-chat-form .mx-dictate{background:#f2e8f3;color:#573462;min-width:40px;font-size:16px}
@media(prefers-reduced-motion:reduce){.mx #mx-story .mx-context-image{animation:none!important}}
.mx-option-image img{display:block;width:100%;height:100%;object-fit:cover;border-radius:5px}

/* Reservation summary, narrow screens included. */
.mx-cart-row{display:grid;gap:8px;padding:14px 0;border-bottom:1px solid #ffffff25}.mx-cart-row label{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:13px}.mx-cart-row input{width:78px;min-height:42px;padding:8px;border:1px solid #aaa;border-radius:8px;background:#fff;color:#16252b}.mx-summary .mx-date-grid{margin:18px 0}.mx-summary>.mx-primary{margin:12px 0;display:inline-flex;white-space:normal}.mx-summary>a:last-child{display:block;margin-top:12px}.mx-cart-success{color:#96edbd;font-weight:700}.mx-cart-status{min-height:1.5em}.mx-summary button:disabled{opacity:.6;cursor:wait}

/* 2026-11-07 — Desktop is one continuous scene; phone layout stays in its existing rules. */
@media (min-width:901px) {
 .mx .mx-welcome{display:none}
 .mx .mx-scene-note{right:auto;left:clamp(24px,5vw,110px);bottom:18px}
 .mx #mx-story{overflow:hidden;background:#151119}
 .mx #mx-story .mx-story-shell{height:100%;min-height:0;overflow:hidden;isolation:isolate}
 .mx #mx-story .mx-story-bg{background:#151119}
 .mx #mx-story .mx-story-top{position:absolute;inset:0 0 auto;z-index:5;min-height:72px;padding:16px 4vw;background:linear-gradient(#100e14c9,#100e1400)}
 .mx #mx-story .mx-story-top>span{color:#fff9;letter-spacing:.24em}
 .mx #mx-story .mx-progress{position:absolute;z-index:5;top:74px;left:4vw;right:4vw;margin:0;height:2px;background:#ffffff2b}
 .mx #mx-story .mx-story-body{position:absolute;inset:0;display:block;width:100%;height:100%;max-width:none;margin:0;padding:0;overflow:hidden}
 .mx #mx-story .mx-story-body:after{content:'';position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,#100e14e8 0%,#100e14c9 27%,#100e1491 43%,#100e141a 66%,#100e1400 83%),linear-gradient(0deg,#100e14b3,transparent 24%,transparent 77%,#100e1466)}
 .mx #mx-story .mx-guide{position:absolute;inset:0;display:block;width:100%;height:100%;max-width:none;margin:0;padding:0;border:0;pointer-events:none}
 .mx #mx-story .mx-guide-visual{position:absolute;inset:0;display:block;width:100%;height:100%;max-width:none;min-height:0;aspect-ratio:auto;border:0;border-radius:0;background:#151119;overflow:hidden;z-index:0}
 .mx #mx-story .mx-guide-motion,.mx #mx-story .mx-guide .mx-vivian{position:absolute;inset:0;z-index:0;width:100%;height:100%;max-width:none;max-height:none;object-fit:cover;object-position:center;border:0;border-radius:0;background:transparent;margin:0}
 .mx #mx-story .mx-guide .mx-vivian:not(.mx-context-image){object-fit:contain;object-position:85% center}
 .mx #mx-story .mx-guide-caption{position:absolute;right:4vw;bottom:124px;z-index:3;width:min(350px,28vw);min-height:0;display:block;padding:14px 18px;border:1px solid #ffffff20;border-radius:14px;background:#151119b3;backdrop-filter:blur(16px);box-shadow:0 6px 28px #0002;text-align:left;font-size:12px;line-height:1.55}
 .mx #mx-story .mx-guide-caption strong{display:block;margin-bottom:3px;font-size:12px;color:#ff9bd8}
 .mx #mx-story .mx-guide-reply{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
 .mx #mx-story .mx-motion-toggle{position:fixed;right:4vw;bottom:76px;z-index:4;inset:auto 4vw 76px auto;width:auto;max-width:30vw;margin:0;min-height:34px;padding:7px 11px;pointer-events:auto;background:#151119b3;backdrop-filter:blur(12px);border:1px solid #ffffff30;border-radius:7px;font-size:10px}
 .mx #mx-story .mx-stage{position:absolute;left:5vw;top:50%;transform:translateY(-50%);z-index:2;display:block;flex:none;align-self:auto;width:min(740px,44vw);max-width:none;max-height:calc(100dvh - 200px);min-height:0;margin:0;padding:12px 10px 18px 0;overflow-x:hidden;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#ffffff55 transparent;scroll-padding:16px;overscroll-behavior:contain;text-shadow:0 2px 20px #0008}
 .mx #mx-story .mx-stage h2{font-size:clamp(34px,3.5vw,62px);line-height:1.04;letter-spacing:-.045em;margin:14px 0 18px;max-width:700px;text-wrap:balance}
 .mx #mx-story .mx-stage>.mx-kicker{font-size:10px;color:#ffabd9;letter-spacing:.2em}
 .mx #mx-story .mx-stage>p:not(.mx-kicker){max-width:610px;font-size:14px;line-height:1.6;color:#f0e8f1}
 .mx #mx-story .mx-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;max-width:680px;margin:25px 0 8px}
 .mx #mx-story .mx-option{min-height:66px;padding:14px 17px;background:linear-gradient(120deg,#24202bd9,#1c1821bd);backdrop-filter:blur(14px);border:1px solid #ffffff38;border-radius:11px;box-shadow:0 6px 18px #0001;font-size:14px;line-height:1.35;transition:background .18s,border-color .18s,transform .18s;text-shadow:none}
 .mx #mx-story .mx-option:hover{transform:translateY(-2px);background:#652344d9;border-color:#ff8bd0}
 .mx #mx-story .mx-option[aria-pressed=true]{background:#69184bd9;border-color:#ff77c4}
 .mx #mx-story .mx-option:has(.mx-option-image){padding-left:74px;min-height:70px}
 .mx #mx-story .mx-option-image{left:8px;width:54px;height:52px}
 .mx #mx-story .mx-option span:not(.mx-option-image){font-size:10px;line-height:1.35}
 .mx #mx-story .mx-story-bottom{position:absolute;inset:auto 0 0;z-index:5;min-height:62px;padding:9px 4vw 12px;background:linear-gradient(0deg,#100e14bf,#100e1400);border:0}
 .mx #mx-story .mx-back,.mx #mx-story .mx-exit{background:#15111973;backdrop-filter:blur(10px);border-color:#ffffff38;border-radius:8px}
 .mx #mx-story .mx-stage:has(.mx-products){width:min(960px,63vw);max-height:calc(100dvh - 200px);padding:22px;border-radius:18px;background:#151119bc;backdrop-filter:blur(20px);border:1px solid #ffffff22}
 .mx #mx-story .mx-stage:has(.mx-products) h2{font-size:clamp(32px,2.6vw,46px)}
 .mx #mx-story .mx-product{background:#ffffff09;border-color:#ffffff20;border-radius:10px;text-shadow:none}
 .mx #mx-story .mx-date-grid input{background:#17131cbd;backdrop-filter:blur(12px)}
 .mx-story-lock .mx-chat-launch{visibility:hidden;pointer-events:none}
}
@media (min-width:901px) and (max-height:760px) {
 .mx #mx-story .mx-stage{max-height:calc(100dvh - 170px);padding-top:6px;padding-bottom:6px}
 .mx #mx-story .mx-stage h2{font-size:clamp(30px,3vw,44px);margin:10px 0 12px}
 .mx #mx-story .mx-options{margin-top:18px;gap:8px}
 .mx #mx-story .mx-option,.mx #mx-story .mx-option:has(.mx-option-image){min-height:58px;padding-top:10px;padding-bottom:10px}
 .mx #mx-story .mx-option-image{height:42px;width:48px}
 .mx #mx-story .mx-stage:has(.mx-products){max-height:calc(100dvh - 170px)}
 .mx #mx-story .mx-guide-caption{bottom:114px;font-size:11px;padding:10px 13px}
}
