body:has(.duomi-home) .topbar{display:none}.main:has(.duomi-home){padding:0;max-width:none;background:#faf9f6}.duomi-home{overflow:hidden;color:#252521;background:#faf9f6}.home-hero{position:relative;display:grid;grid-template-columns:45% 55%;align-items:center;min-height:800px;padding:64px 4.5%;isolation:isolate}.home-copy{background:#f0efeb}.home-copy:before{content:"";position:absolute;inset:0;z-index:-1;background:url('/examples/gown-upload.png') center 55%/cover;opacity:.075;filter:blur(3px)}.home-message{position:relative;z-index:2;animation:home-arrive .8s ease both}.home-eyebrow{font-size:13px;letter-spacing:.16em;color:#77766e;margin:0 0 30px}.home-message h1,.home-message h2{font-size:clamp(38px,3.65vw,64px);font-weight:650;line-height:1.18;letter-spacing:-.055em;margin:0 0 28px}.home-subtitle{font-size:clamp(14px,1.18vw,20px);line-height:1.85;color:#78776f;margin:0 0 34px}.home-cta{display:inline-flex;gap:22px;align-items:center;background:#242622;color:#fff;text-decoration:none;border-radius:30px;padding:14px 24px;font-size:15px;transition:background .2s}.home-cta:hover{background:#51534b;color:white}.home-phones{position:relative;height:680px;min-width:0;animation:home-arrive .9s ease both}.home-phone{position:absolute;width:290px;height:615px;border:6px solid #777970;border-radius:48px;box-shadow:0 22px 40px #25282020,inset 0 0 0 2px #111;overflow:hidden;background:#fffdf8;color:#222;outline:1px solid #a9aaa3;animation:phone-arrive .9s ease both}.phone-copy{left:0;top:12px;transform:rotate(-7deg);z-index:1}.phone-video{right:0;top:68px;transform:rotate(7deg);z-index:2;background:#777}.phone-island{position:absolute;left:50%;top:12px;width:82px;height:23px;transform:translateX(-50%);border-radius:30px;background:#151515;z-index:3}.phone-status{position:absolute;top:15px;left:22px;right:22px;font:600 10px/20px sans-serif;display:flex;justify-content:space-between;z-index:2}.phone-document{padding:63px 23px 20px}.phone-brand{font-size:12px;margin:0 0 25px;font-weight:650}.phone-kicker{font-size:10px;color:#929087;letter-spacing:.1em}.phone-document h2{font-size:25px;line-height:1.35;letter-spacing:-1px;margin:12px 0 23px}.phone-rule{height:1px;background:#e4e0d8;margin:0 0 19px}.phone-document small{color:#9b9488;font-size:10px}.phone-document p:not(.phone-brand):not(.phone-kicker){font-size:13px;line-height:1.85;margin:13px 0}.phone-tags{font-size:10px;color:#8b8173;margin-top:20px}.phone-home{position:absolute;bottom:8px;left:33%;width:34%;height:4px;border-radius:4px;background:currentColor;z-index:3}.phone-video>img{width:100%;height:100%;object-fit:cover;object-position:50% 30%}.phone-video:after{content:"";position:absolute;inset:50% 0 0;background:linear-gradient(transparent,#0009);pointer-events:none}.phone-video{color:white}.video-top{position:absolute;top:56px;left:28px;right:28px;text-align:center;font-size:13px}.video-top span{border-bottom:2px solid white;padding-bottom:5px}.video-social{position:absolute;right:12px;bottom:130px;display:flex;flex-direction:column;gap:15px;z-index:2;text-align:center}.video-social>img{width:32px;height:32px;object-fit:cover;border-radius:50%;border:1px solid white}.video-social>span{font-size:28px;line-height:1}.video-social small{display:block;font-size:8px;margin-top:5px}.video-caption{position:absolute;bottom:35px;left:18px;right:36px;z-index:2}.video-caption strong{font-size:13px}.video-caption p{font-size:17px;line-height:1.5;margin:8px 0}.video-caption small{font-size:10px}.home-bridal{background:#fff;min-height:850px;padding-top:100px;padding-bottom:100px}.home-campaign{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,1fr);gap:18px;align-items:center}.home-campaign figure{margin:0;overflow:hidden}.campaign-main img{width:100%;height:625px;object-fit:cover;display:block}.campaign-main figcaption{font-size:11px;color:#8a857a;margin-top:15px;letter-spacing:.09em}.campaign-gallery{display:grid;gap:22px}.campaign-gallery img{height:165px;width:100%;object-fit:cover;display:block;transition:transform .5s}.campaign-gallery img:hover{transform:scale(1.015)}.campaign-gallery figcaption{font:9px/2 sans-serif;letter-spacing:.14em;display:flex;justify-content:space-between;padding-top:5px;color:#77746c}.campaign-main img{transition:transform .5s}.campaign-main img:hover{transform:scale(1.015)}@keyframes home-arrive{from{opacity:0;translate:0 20px}to{opacity:1;translate:0 0}}@keyframes phone-arrive{from{opacity:0;scale:.98}to{opacity:1;scale:1}}
@media(min-width:1700px){.home-break{display:none}.home-phone{width:320px;height:680px}.home-phones{height:740px}.home-hero{min-height:850px}.phone-document{padding-top:74px}.phone-document h2{font-size:28px}.phone-document p:not(.phone-brand):not(.phone-kicker){font-size:15px}.phone-copy{left:3%}.phone-video{right:3%}}
@media(min-width:768px) and (max-width:1200px){body:has(.duomi-home) .sidebar{width:180px;padding-left:16px;padding-right:16px}body:has(.duomi-home) .main{margin-left:180px}.home-hero{min-height:740px;padding-inline:4%;grid-template-columns:43% 57%}.home-message h1,.home-message h2{font-size:38px}.home-phones{height:570px;scale:.85;transform-origin:center right;width:118%}.home-phone{width:250px;height:540px}.phone-document{padding-inline:18px}.phone-document h2{font-size:22px}.phone-document p:not(.phone-brand):not(.phone-kicker){font-size:11px}.phone-copy{left:0}.phone-video{right:0}.home-subtitle{font-size:14px}.campaign-main img{height:530px}.campaign-gallery img{height:135px}}
@media(max-width:767px){body:has(.duomi-home) .topbar{display:flex} .main:has(.duomi-home){padding:0}.home-hero{display:flex;flex-direction:column;align-items:stretch;padding:50px 24px 25px;min-height:0}.home-message h1,.home-message h2{font-size:38px;line-height:1.2}.home-break{display:none}.home-eyebrow{margin-bottom:20px;font-size:11px}.home-subtitle{font-size:14px;margin-bottom:24px}.home-cta{font-size:14px;padding:12px 22px}.home-phones{height:560px;margin-top:40px;width:100%;max-width:430px;align-self:center}.home-phone{width:225px;height:490px;border-radius:38px;border-width:5px}.phone-copy{left:0;top:8px}.phone-video{right:0;top:50px}.phone-document{padding:52px 16px 12px}.phone-brand{margin-bottom:15px}.phone-document h2{font-size:21px;margin:10px 0 15px}.phone-document p:not(.phone-brand):not(.phone-kicker){font-size:10px;margin:9px 0}.phone-rule{margin-bottom:10px}.phone-tags{font-size:8px}.phone-status{font-size:8px;left:15px;right:15px}.phone-island{width:66px;height:20px}.video-caption p{font-size:14px}.video-social{gap:10px;bottom:115px}.video-social>span{font-size:23px}.home-bridal{padding-top:60px;padding-bottom:50px}.home-campaign{display:block;margin-top:36px}.campaign-main img{height:auto;max-height:620px;object-fit:cover}.campaign-gallery{display:flex;overflow-x:auto;gap:14px;margin-top:26px;scroll-snap-type:x mandatory}.campaign-gallery figure{flex:0 0 42%;scroll-snap-align:start}.campaign-gallery img{height:180px}.home-campaign .campaign-gallery{padding-bottom:10px}}
@media(prefers-reduced-motion:reduce){.home-message,.home-phones,.home-phone{animation:none}.home-campaign img,.home-cta{transition:none}}
@media(min-width:768px){.main:has(.duomi-home){margin-top:0;margin-left:var(--sidebar-width);width:calc(100% - var(--sidebar-width))}}
@media(min-width:768px) and (max-width:1200px){body:has(.duomi-home) .main{margin-left:180px;width:calc(100% - 180px)}}
@media(max-width:767px){.main:has(.duomi-home){width:100%;margin-left:0}}

/* Local-only second hero, matching the selected composition. */
.home-bridal{display:block;min-height:780px;height:800px;position:relative;overflow:hidden;background:#f6f4f1;padding:0}.home-bridal .home-message{position:absolute;left:4.5%;top:27%;z-index:2;max-width:42%}.home-bridal .home-message h2{font-size:clamp(36px,3.5vw,60px)}.home-bridal .home-subtitle{font-size:clamp(13px,1.1vw,18px)}.bridal-backdrop{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:0}.bridal-scenes{position:absolute;right:2%;top:15%;width:29%;display:flex;gap:16px;z-index:1}.bridal-scenes figure{margin:0;position:relative;flex:1;min-width:0;height:345px;border-radius:16px;overflow:hidden}.bridal-scenes figure:nth-child(2){margin-top:60px}.bridal-scenes img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.bridal-scenes figure:hover img{transform:scale(1.015)}.bridal-scenes figcaption{position:absolute;bottom:0;left:0;right:0;padding:34px 15px 18px;background:linear-gradient(transparent,#0009);color:white;font-size:16px}.bridal-scenes small{display:block;font-size:11px;letter-spacing:.08em;margin-top:6px}body:has(.duomi-home) .sidebar .nav button img{width:19px;height:19px;margin-right:12px}.demo-note{color:#929292;font-size:11px}body:has(.duomi-home) .sidebar .brand{white-space:nowrap}.phone-video .video-social{display:none}
@media(min-width:768px) and (max-width:1200px){body:has(.duomi-home) .sidebar{width:220px}.main:has(.duomi-home){margin-left:220px!important;width:calc(100% - 220px)!important}.home-bridal .home-message{max-width:46%}.bridal-scenes{width:27%;gap:8px}.bridal-scenes figure{height:280px}.bridal-scenes figcaption{font-size:12px;padding-inline:9px}}
@media(max-width:767px){.home-bridal{height:auto;min-height:0;display:flex;padding:48px 24px;gap:0}.home-bridal .home-message{position:relative;left:auto;top:auto;max-width:none}.home-bridal .home-message h2{font-size:36px}.home-bridal .home-subtitle{font-size:14px}.bridal-backdrop{position:relative;inset:auto;height:410px;object-fit:cover;object-position:57% center;margin-top:30px;width:calc(100% + 48px);max-width:none;margin-left:-24px}.bridal-scenes{position:relative;right:auto;top:auto;width:100%;overflow-x:auto;padding:24px 0 0;gap:14px}.bridal-scenes figure{flex:0 0 66%;height:320px}.bridal-scenes figure:nth-child(2){margin-top:0}body:has(.duomi-home) .sidebar{position:relative!important;height:auto!important}body:has(.duomi-home) .sidebar .eyebrow,body:has(.duomi-home) .sidebar .nav{display:none!important}body:has(.duomi-home) .sidebar .brand{padding:14px 0}.main:has(.duomi-home){margin-top:0}.home-phones{scale:.9;transform-origin:top center;margin-bottom:-55px}}
@media(max-width:767px){body:has(.duomi-home) .sidebar{display:block!important;width:100%;padding:0 24px;min-height:64px}body:has(.duomi-home) .sidebar .brand{display:flex!important;height:64px;margin:0}body:has(.duomi-home) .brand-name,body:has(.duomi-home) .brand-industry{display:inline-flex!important}.home-message h1,.home-message h2{font-size:34px}.home-break{display:block}.home-bridal .home-message h2{font-size:34px}}

/* Annotation refinement: readable copy and uncropped bridal campaign. */
.home-copy .home-subtitle{max-width:28em;margin-top:30px;margin-bottom:32px;line-height:1.8;font-size:clamp(15px,1.15vw,20px)}
.home-copy .home-subtitle span{display:block}
.home-bridal{height:auto;min-height:0;aspect-ratio:3/2}
.bridal-backdrop{object-fit:contain;object-position:center;width:100%;height:100%}
.home-bridal .home-message{top:50%;transform:translateY(-50%);max-width:43%}
@media(max-width:767px){.home-copy .home-subtitle{font-size:14px;line-height:1.85;margin-top:24px;margin-bottom:26px}.home-bridal{aspect-ratio:auto;height:auto;min-height:0}.home-bridal .home-message{top:auto;transform:none;max-width:none}.bridal-backdrop{height:auto;aspect-ratio:3/2;object-fit:contain;width:calc(100% + 48px)}}

/* Two-line local demo headlines. */
.home-message>h1>span,.home-message>h2>span{display:block;white-space:nowrap}
.home-message>h1,.home-message>h2{margin:0 0 28px}
.home-copy .home-subtitle,.home-bridal .home-subtitle{margin:0 0 32px;line-height:1.8}
@media(max-width:767px){.home-message>h1,.home-bridal .home-message>h2{font-size:clamp(28px,8.6vw,34px);margin-bottom:24px}.home-copy .home-subtitle,.home-bridal .home-subtitle{margin:0 0 26px;line-height:1.85}}

/* Dark first hero — local preview only. */
.home-copy{background:#191b1a;color:#f5f3ee}
.home-copy:before{opacity:.035;filter:grayscale(1) blur(4px)}
.home-copy .home-message h1{color:#f5f3ee}
.home-copy .home-subtitle{color:#b9bab5}
.home-copy .home-cta{background:#f4f2ed;color:#20221f}
.home-copy .home-cta:hover{background:#deddd6;color:#171916}
.home-copy .home-cta:focus-visible{outline:2px solid #fff;outline-offset:5px}
/* Laptop replaces the copy phone. */
.home-copy{grid-template-columns:36% 64%;padding-right:2.5%}
.home-copy .home-phones{width:100%;height:680px;scale:1;transform:none}
.home-laptop{position:absolute;width:94%;left:-3%;top:100px;aspect-ratio:3/2;z-index:1}
.laptop-hardware{display:block;width:100%;height:100%;object-fit:contain}
.laptop-display{position:absolute;left:7.85%;top:12%;width:84.3%;height:71.9%;overflow:hidden;background:#f5f5f7}
.laptop-display iframe{border:0;width:1000px;height:620px;transform:scale(var(--screen-scale,.6));transform-origin:top left;pointer-events:none}
.home-copy .phone-video{width:205px;height:440px;top:220px;right:-1%;border-radius:34px;border-width:5px;transform:rotate(5deg)}
.home-copy .phone-video .video-caption{left:14px;right:20px}.home-copy .phone-video .video-caption p{font-size:14px}.home-copy .phone-video .video-caption small{font-size:8px}.home-copy .phone-video .phone-island{width:60px;height:19px}.home-copy .phone-video .phone-status{font-size:8px;left:14px;right:14px}
@media(min-width:1700px){.home-laptop{top:105px}.home-copy .phone-video{width:230px;height:490px;top:200px}.home-copy .home-phones{height:700px}}
@media(min-width:768px) and (max-width:1200px){.home-copy{grid-template-columns:36% 64%}.home-copy .home-message h1{font-size:38px}.home-copy .home-subtitle{font-size:13px}.home-copy .home-phones{height:550px}.home-laptop{width:100%;top:100px;left:-5%}.home-copy .phone-video{width:145px;height:310px;top:200px;border-radius:27px}.home-copy .phone-video .video-caption p{font-size:11px}}
@media(max-width:767px){.home-copy{padding:48px 24px 20px}.home-copy .home-phones{height:320px;margin-top:25px;margin-bottom:0;max-width:500px}.home-laptop{width:108%;left:-7%;top:0}.home-copy .phone-video{width:105px;height:225px;top:95px;right:-8px;border-radius:19px;border-width:3px}.home-copy .phone-video .phone-status,.home-copy .phone-video .video-top{display:none}.home-copy .phone-video .phone-island{width:30px;height:9px;top:6px}.home-copy .phone-video .video-caption{left:7px;right:5px;bottom:16px}.home-copy .phone-video .video-caption strong{font-size:7px}.home-copy .phone-video .video-caption p{font-size:8px;margin:4px 0}.home-copy .phone-video .video-caption small{font-size:5px}}
.laptop-hardware{mask-image:linear-gradient(to right,transparent,#000 3%,#000 97%,transparent);-webkit-mask-image:linear-gradient(to right,transparent,#000 3%,#000 97%,transparent)}
.home-bridal .home-cta{background:var(--color-primary);color:#fff}
.home-bridal .home-cta:hover{background:var(--color-primary-hover);color:#fff}
.home-bridal .home-cta:active{background:var(--color-primary-pressed)}
.home-bridal .home-cta:focus-visible{outline:2px solid var(--color-primary);outline-offset:4px}

/* Transparent, code-drawn hardware: no rectangular image backdrop. */
.laptop-frame{position:absolute;left:5%;right:5%;top:4%;bottom:9%;background:#111314;border:2px solid #555957;border-radius:22px 22px 5px 5px;box-shadow:inset 0 0 0 3px #222625}
.laptop-base{position:absolute;left:0;right:0;bottom:5%;height:4.5%;border-radius:2px 2px 45% 45% / 2px 2px 85% 85%;background:linear-gradient(#737874,#353937 40%,#171a18);box-shadow:0 9px 12px #0003}
.laptop-base:after{content:"";position:absolute;left:40%;width:20%;height:35%;top:0;background:#272b28;border-radius:0 0 10px 10px}
.home-laptop .laptop-display{left:6.4%;top:7%;width:87.2%;height:80.5%;border-radius:10px 10px 0 0}
.laptop-display>img{display:block;width:100%;height:100%;object-fit:contain;object-position:center;background:#f5f5f7}
@media(max-width:767px){.laptop-frame{border-radius:10px 10px 3px 3px;border-width:1px}.home-laptop .laptop-display{border-radius:5px 5px 0 0}}

/* Balanced product composition with a clear, unobstructed laptop screen. */
.home-copy{grid-template-columns:34% 66%;padding-left:4.5%;padding-right:3.5%}
.home-copy .home-message{padding-right:22px}
.home-copy .home-phones{height:660px;display:flex;align-items:center}
.home-copy .home-laptop{width:85%;left:0;top:50%;transform:translateY(-50%);aspect-ratio:1.55}
.home-copy .phone-video{width:19%;height:auto;aspect-ratio:205/440;right:-1%;top:50%;transform:translateY(-35%) rotate(4deg);border-radius:30px;border-width:4px}
.home-copy .laptop-frame{left:3%;right:3%;top:3%;bottom:8%;border-radius:18px 18px 5px 5px}
.home-copy .laptop-display{left:4.2%;top:5%;width:91.6%;height:84%;border-radius:9px 9px 0 0;background:#f5f5f7}
.home-copy .laptop-base{bottom:4.5%;height:3.5%}
.home-copy .phone-video .video-caption p{font-size:12px}
.home-copy .phone-video .video-caption strong{font-size:10px}
@media(min-width:1700px){.home-copy .home-phones{height:710px}}
@media(min-width:768px) and (max-width:1200px){.home-copy{grid-template-columns:36% 64%;padding-right:3%}.home-copy .home-phones{height:530px}.home-copy .phone-video{border-radius:22px;border-width:3px}.home-copy .phone-video .video-caption p{font-size:9px}.home-copy .phone-video .video-caption strong{font-size:8px}}
@media(max-width:767px){.home-copy{padding:48px 24px 32px}.home-copy .home-message{padding-right:0}.home-copy .home-phones{height:auto;aspect-ratio:1.38;margin-top:36px;width:100%;max-width:500px}.home-copy .home-laptop{width:89%;left:-2%;top:45%}.home-copy .phone-video{width:23%;top:45%;right:-1%;border-radius:15px;border-width:2px;transform:translateY(-25%) rotate(4deg)}.home-copy .phone-video .video-caption p{font-size:7px}.home-copy .phone-video .video-caption strong{font-size:6px}.home-copy .laptop-frame{border-radius:9px 9px 3px 3px}.home-copy .laptop-display{border-radius:4px 4px 0 0}}

/* Supplied phone artwork, with its own frame and interface. */
.home-copy .home-laptop{width:78%;left:0;top:48%}
.home-profile-phone{position:absolute;right:0;top:50%;width:23%;aspect-ratio:700/1480;transform:translateY(-44%);z-index:2;pointer-events:none}
.home-profile-phone>img{position:absolute;display:block;width:146.3%;max-width:none;height:auto;left:-23.15%;top:-1.8%;filter:drop-shadow(0 16px 16px #0003)}
@media(max-width:767px){.home-copy .home-laptop{width:77%;left:-1%;top:43%}.home-profile-phone{right:0;width:24%;top:48%;transform:translateY(-42%)}.home-copy .home-phones{aspect-ratio:1.5}}

/* Layered devices: phone sits in front of the laptop's outer right edge. */
.home-copy .home-laptop{width:87%;left:-1%;top:47%}
.home-profile-phone{right:0;width:24%;top:53%;transform:translateY(-42%) rotate(3deg)}
@media(max-width:767px){.home-copy .home-laptop{width:88%;left:-2%;top:42%}.home-profile-phone{right:-1%;width:26%;top:51%;transform:translateY(-39%) rotate(3deg)}}

/* Soft spectrum moves through the headline without moving the type. */
@supports ((background-clip:text) or (-webkit-background-clip:text)){
 .home-copy .home-message h1{width:max-content;max-width:100%;background-image:linear-gradient(110deg,#8ad8ff 0%,#aeb4ff 22%,#edafff 42%,#ffb7c5 60%,#c5b5ff 80%,#8ad8ff 100%);background-size:250% 100%;background-position:0% 50%;background-clip:text;-webkit-background-clip:text;color:transparent;-webkit-text-fill-color:transparent;animation:headline-spectrum 9s ease-in-out infinite alternate}
}
@keyframes headline-spectrum{from{background-position:0% 50%}to{background-position:100% 50%}}
@media(prefers-reduced-motion:reduce){.home-copy .home-message h1{animation:none;background-position:45% 50%}}
@media(forced-colors:active){.home-copy .home-message h1{background:none;color:CanvasText;-webkit-text-fill-color:CanvasText;animation:none}}

#app>.topbar[hidden]{display:none!important}
.main[data-page="home"]{margin-top:0!important}
.home-bridal .home-message{animation:none}
.home-bridal.reveal-pending .home-message,.home-bridal.reveal-pending .bridal-backdrop{opacity:0;translate:0 20px}
.home-bridal.reveal-visible .home-message,.home-bridal.reveal-visible .bridal-backdrop{animation:home-arrive .8s ease both}
@media(prefers-reduced-motion:reduce){.home-bridal.reveal-pending .home-message,.home-bridal.reveal-pending .bridal-backdrop{opacity:1;translate:none;animation:none}}

/* Keep the light display hidden until its image has decoded. */
.home-copy .home-phones{animation:none}
.home-copy .home-laptop{opacity:0;transition:opacity .18s ease}
.home-copy .home-laptop.screen-ready{opacity:1}
.home-copy .laptop-display,.home-copy .laptop-display>img{background:#202321}
/* The image is visible independently of the text reveal, avoiding a large flashing layer. */
.home-bridal.reveal-pending .bridal-backdrop,.home-bridal.reveal-visible .bridal-backdrop{opacity:1;translate:none;animation:none}
@media(min-width:768px){
 .home-bridal{aspect-ratio:auto;padding-top:0;background:#f6f4f1}
 .home-bridal .bridal-backdrop{position:relative;inset:auto;display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:contain}
}
@media(max-width:767px){.home-bridal .bridal-backdrop{margin-top:40px}}
@media(prefers-reduced-motion:reduce){.home-copy .home-laptop{transition:none}}
