/* Reuses AMVIA's established warm charcoal, type family and creation spectrum. */
:root{color-scheme:dark;--platform-bg:#343234;--platform-text:#f5f3ef;--platform-muted:#bcb5b9;--platform-surface:#403c3f;--platform-line:#686267;--amvia-interaction-hover:#ffff66;--amvia-creation-spectrum:linear-gradient(105deg,#ff70bb,#ffc95c,#86efac,#64dfff,#af91ff,#ff8b69,#ff70bb);font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Helvetica Neue",Arial,sans-serif;font-size:16px;font-weight:400;background:var(--platform-bg);color:var(--platform-text);font-synthesis:none}
*{box-sizing:border-box}
body{margin:0;min-height:100svh;display:flex;flex-direction:column;padding:0 4vw}
a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer;border:0;background:none;padding:0}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:1px solid var(--platform-muted);outline-offset:6px}a:hover,button:hover{color:var(--amvia-interaction-hover)}
.masthead{padding:32px 0;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{display:inline-flex;flex-direction:column;align-items:flex-start;gap:8px}.brand-flow{font-size:32px;letter-spacing:.25em;line-height:1;font-weight:500}.tagline{font-size:12px;line-height:1.5;color:var(--platform-text);letter-spacing:.015em}
nav{display:flex;align-items:center;gap:36px;font-size:14px}nav a,nav button{display:inline-flex;align-items:center;min-height:44px;gap:10px}nav button{font-size:12px;letter-spacing:.06em}
main{flex:1;display:flex;align-items:center;padding:52px 0 72px}
.introduction{width:100%;display:grid;grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);gap:6vw;align-items:center}
.intro-copy{padding-bottom:45px}.eyebrow{font-size:13px;letter-spacing:.14em;color:var(--platform-muted);margin:0 0 30px}
h1{font-size:clamp(30px,3.15vw,48px);line-height:1.55;font-weight:400;letter-spacing:.035em;margin:0 0 26px}h1 span{display:block}
.description{font-size:15px;line-height:1.95;color:var(--platform-muted);margin:0;max-width:28em;text-wrap:pretty}
.start{margin-top:38px;padding:10px 0;display:inline-flex;align-items:center;justify-content:space-between;gap:64px;min-width:190px;min-height:48px;border-bottom:1px solid #aaa0a8;font-size:19px;line-height:1.5;letter-spacing:.04em}.start-arrow{font-size:24px;font-weight:300;line-height:1;transition:transform .2s}.start:hover .start-arrow{transform:translate(2px,-2px)}
.next-note{font-size:12px;line-height:1.8;color:var(--platform-muted);margin:18px 0 0;letter-spacing:.02em}
.brand-flow,.flow{background-image:var(--amvia-creation-spectrum);background-size:300% 100%;background-repeat:no-repeat;background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;animation:amvia-spectrum-flow 9s ease-in-out infinite}
.start:hover .flow{-webkit-text-fill-color:var(--amvia-interaction-hover);background:none}
@keyframes amvia-spectrum-flow{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}
.visual{margin:0;min-width:0}.room{position:relative;width:100%;overflow:hidden;line-height:0}.room>img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:contain}.wall-art{position:absolute;left:33.17435082%;top:18.30427892%;width:34.23423423%;aspect-ratio:3/2;opacity:1;transition:opacity .45s ease}.wall-art svg{display:block;width:100%;height:100%}.room[data-original] .wall-art{opacity:0}.image-label{position:absolute;left:18px;bottom:17px;background:#343234bb;color:#fff;padding:9px 12px;font-size:11px;line-height:1.4;letter-spacing:.08em;backdrop-filter:blur(8px)}
figcaption{display:flex;align-items:baseline;justify-content:space-between;gap:20px;padding-top:17px;font-size:12px;line-height:1.7;color:var(--platform-muted)}figcaption button{display:inline-flex;gap:8px;min-height:44px;align-items:center;color:var(--platform-text);flex-shrink:0}
footer{border-top:1px solid var(--platform-line);padding:22px 0 26px;display:flex;justify-content:space-between;align-items:center;gap:24px;font-size:12px;line-height:1.8;color:var(--platform-muted)}footer a{min-height:44px;display:inline-flex;align-items:center;gap:8px}
html[lang=en] h1{font-size:clamp(30px,3.15vw,47px);letter-spacing:-.025em;line-height:1.2}html[lang=en] .description{max-width:29em}html[lang=en] .eyebrow{letter-spacing:.12em}
@media(min-width:1600px){body{padding-inline:max(4vw,calc((100vw - 1536px)/2))}}
@media(max-width:900px){.introduction{gap:4vw;grid-template-columns:.9fr 1.1fr}h1{font-size:32px}.description{font-size:14px}.intro-copy{padding-bottom:30px}.start{margin-top:28px}figcaption{flex-wrap:wrap;gap:0}main{padding:40px 0 56px}}
@media(max-width:680px){body{padding-inline:20px}.masthead{padding:22px 0}.brand-flow{font-size:27px}.tagline{font-size:10px}nav{gap:22px;font-size:12px}main{padding:32px 0 40px}.introduction{grid-template-columns:1fr;gap:36px}.intro-copy{padding:0}.eyebrow{margin-bottom:20px;font-size:12px}h1{font-size:34px;line-height:1.45;margin-bottom:21px}.description{font-size:14px;line-height:1.9}.start{margin-top:25px;font-size:18px;min-width:178px}.next-note{margin-top:14px}.image-label{left:12px;bottom:12px;font-size:10px;padding:7px 9px}figcaption{padding-top:9px;justify-content:space-between;font-size:11px;gap:8px}footer{font-size:11px;padding:16px 0}html[lang=en] h1{font-size:35px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}.brand-flow,.flow{background-size:100% 100%}}
@media(forced-colors:active){.brand-flow,.flow{-webkit-text-fill-color:CanvasText;background:none}.image-label{background:Canvas;color:CanvasText}}

/* Owner-selected image-first introduction, on desktop and mobile. */
main{display:block;padding:22px 0 64px}
.introduction{display:flex;flex-direction:column;gap:36px;align-items:stretch}
.visual{order:-1;width:100%}
.room{max-height:none}
.room>img{width:100%;height:auto;aspect-ratio:3/2}
.intro-copy{padding:8px 0 0;text-align:center;max-width:840px;margin:0 auto}
.eyebrow{margin-bottom:18px}
h1{font-size:clamp(30px,3.15vw,46px);line-height:1.5;margin-bottom:18px}
h1 span{display:inline}
.description{margin-inline:auto;max-width:36em}
.start{margin-top:26px;text-align:left}
.next-note{margin-top:16px}
footer{margin-top:0}
@media(min-width:901px){.visual{max-width:1180px;margin-inline:auto}.room{max-height:none}.intro-copy{padding-top:0}}
@media(max-width:680px){main{padding:12px 0 36px}.introduction{gap:27px}.intro-copy{padding:0}h1{font-size:30px;line-height:1.55;margin-bottom:16px}h1 span{display:block}.eyebrow{font-size:11px;margin-bottom:14px}.description{font-size:14px}.start{margin-top:23px}.visual figcaption{padding-top:8px}html[lang=en] h1{font-size:31px}}

/* A clear primary button, using the existing AMVIA spectrum. */
.start{position:relative;isolation:isolate;justify-content:center;gap:24px;min-width:260px;min-height:58px;padding:14px 30px;border:1px solid transparent;border-radius:999px;background:linear-gradient(var(--platform-surface),var(--platform-surface)) padding-box,var(--amvia-creation-spectrum) border-box;background-size:100% 100%,300% 100%;box-shadow:0 4px 24px #ffc95c0d;animation:amvia-button-flow 9s ease-in-out infinite;color:var(--platform-text);transition:transform .18s ease,box-shadow .18s ease}
.start .flow{background:none;-webkit-text-fill-color:currentColor;animation:none;font-weight:500}
.start:hover{color:var(--amvia-interaction-hover);background:linear-gradient(color-mix(in srgb,var(--platform-surface) 90%,var(--platform-text)),color-mix(in srgb,var(--platform-surface) 90%,var(--platform-text))) padding-box,var(--amvia-creation-spectrum) border-box;background-size:100% 100%,300% 100%;transform:translateY(-2px);box-shadow:0 5px 25px #ffc95c18}
.start:hover .flow{-webkit-text-fill-color:currentColor}
.start:active{transform:translateY(0);box-shadow:none}
.start:focus-visible{outline:1px solid var(--amvia-interaction-hover);outline-offset:5px}
@keyframes amvia-button-flow{0%,100%{background-position:0% 0%,0% 50%}50%{background-position:0% 0%,100% 50%}}
@media(max-width:680px){.start{width:100%;min-width:0;min-height:58px;margin-top:25px;font-size:19px}}
@media(forced-colors:active){.start{border:1px solid ButtonText;background:ButtonFace;color:ButtonText}}

/* Use the site's existing theme and language preferences without full navigation. */
html[data-madice-theme="charcoal"]{--platform-bg:#343234;--platform-surface:#403c3f;--platform-text:#f5f3ef;--platform-muted:#bcb5b9;--platform-line:#686267}
html[data-madice-theme]:not([data-madice-theme="charcoal"]){color-scheme:light;--amvia-spectrum-tone:.62}
.flow,.brand-flow{filter:brightness(var(--amvia-spectrum-tone,1))}
.start .flow{filter:none}
@layer amvia-layout{
 body.onboarding>.masthead{display:flex!important;align-items:center!important;justify-content:space-between!important;padding:32px 0!important;gap:24px!important;min-height:0!important;border:0!important}
 body.onboarding>.masthead>nav{display:flex!important;align-items:center!important;gap:36px!important;width:auto!important;overflow:visible!important;min-height:44px!important;margin:0!important;padding:0!important}
 body.onboarding>.masthead .brand{display:inline-flex!important;flex-direction:column!important;align-items:flex-start!important;gap:8px!important;font-family:inherit!important;white-space:normal!important;letter-spacing:normal!important;line-height:1!important;font-weight:400!important}
 body.onboarding>.masthead nav :is(a,button):hover{color:var(--amvia-interaction-hover)!important}
 body.onboarding>.masthead nav :is(a,button):focus-visible{outline:1px solid var(--platform-muted)!important}
 body.onboarding>footer{background:transparent!important;min-height:0!important;padding:22px 0 26px!important;gap:24px!important;font:inherit!important;font-size:12px!important}
 body.onboarding.registration>footer{border:0!important;padding:0 0 20px!important;font-size:11px!important}
 @media(max-width:680px){body.onboarding>.masthead{padding:22px 0!important}body.onboarding>.masthead>nav{gap:22px!important}body.onboarding>footer{font-size:11px!important;padding:16px 0!important}body.onboarding.registration>footer{font-size:10px!important}}
}

@layer amvia-layout{
 body.onboarding>.masthead{background:transparent!important;position:static!important;top:auto!important;height:auto!important;backdrop-filter:none!important;box-shadow:none!important}
 body.onboarding h1{font-weight:400!important;font-family:inherit!important}
}
@media(min-width:681px){.intro-copy h1 span+span{margin-inline-start:.2em}}
