/* One continuous filmed experience and one synchronized product visualization. */
.journey{position:relative;isolation:isolate;aspect-ratio:16/10;background:#f4cbdc;overflow:hidden;border-radius:12px}.journey>video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:opacity .8s;z-index:0}.journey.mode-making>video{opacity:0}.journey .hw-root{position:absolute;inset:0;height:100%!important;min-height:0;background:transparent;z-index:2;pointer-events:none;--gut:3%;--milk:#fff4f7;--rose:#d69aae;--velvet:#92536b}.journey .hw-inner{height:100%}.journey .hw-root .stage{position:relative;top:0;height:100%;padding:0 4%;max-width:none;grid-template-columns:58% 42%;gap:0;overflow:visible}.journey .hw-root .art{height:100%;width:100%}.journey .hw-root .device{height:76%;bottom:12%;max-height:none}.journey .hw-root .copy{padding-right:6%;max-width:none}.journey .hw-root .cap h3{font-size:clamp(28px,3.5vw,52px)}.journey .hw-root .cap p{font-size:clamp(14px,1.3vw,18px)}.journey .hw-root .caps{min-height:250px}.journey.mode-live .hw-root .stage{display:block;padding:0}.journey.mode-live .hw-root .art{position:absolute;right:3%;top:5%;width:23%;height:77%}.journey.mode-live .hw-root .device{height:100%;bottom:0}.journey.mode-live .hw-root .copy{display:none}.journey.mode-live .hw-root .frame,.journey.mode-live .hw-root .popBra{visibility:hidden}.journey-caption{position:absolute;z-index:3;left:4%;bottom:7%;max-width:50%;color:#fff;text-shadow:0 2px 15px #271a28}.journey-caption p{font-size:13px;margin-bottom:15px}.journey-caption h3{font-size:clamp(32px,4.2vw,62px)}.journey.mode-live:after{content:"";position:absolute;inset:55% 0 0;background:linear-gradient(transparent,#241c2866);z-index:1;pointer-events:none}.journey.mode-making .journey-caption,.journey.mode-making .app-note{display:none}.app-note{position:absolute;right:3%;top:85%;width:23%;text-align:center;z-index:3;font-size:10px;padding:7px;background:#fff4f7e8;color:#30242c;border-radius:20px}.journey-controls{display:flex;gap:20px;align-items:center;padding:23px 0 15px}.journey-controls .button{min-width:190px}.journey-controls input{flex:1;min-width:50px;accent-color:#92536b}.journey-controls>span{font-size:12px;font-variant-numeric:tabular-nums;white-space:nowrap}.journey-controls>button:last-child{background:transparent;border:0;font-size:13px;padding:12px}.journey-chapters{display:flex;border-top:1px solid #87927d;gap:24px}.journey-chapters button{padding:17px 0;background:none;border:0;border-top:2px solid transparent;font-size:12px;color:#4b5346;flex:1;text-align:left;min-height:44px}.journey-chapters button[aria-pressed=true]{border-top-color:#30242c;color:#30242c;font-weight:600}.journey-disclosure{font-size:11px;padding:8px 0 27px;color:#52604a;max-width:none}.journey.mode-making .hw-root .frame{box-shadow:none}.journey .hw-root .ticket{display:none}.journey .hw-root .frame .tag span{display:none}.journey .hw-root .her{object-position:50% 50%!important}.journey .hw-root .copy .eyebrow{display:none}.journey .hw-root .rail{margin-bottom:30px}.privacy-detail{margin-top:22px;font-size:15px;color:#5b6555}.privacy-demo{display:grid;grid-template-columns:1fr .55fr 1.1fr;align-items:center;gap:14px}.private-phone{border:5px solid #30242c;border-radius:28px;padding:18px 12px 22px;background:#fff4f7;text-align:center;box-shadow:12px 20px 35px -20px #30242c66}.private-phone>span{font-family:Fraunces,serif;font-size:23px}.private-phone svg{width:100%;max-height:220px;fill:#e0b9c7}.private-measure{fill:none;stroke:#7a8d71;stroke-width:2;stroke-dasharray:5 3}.private-phone b,.private-phone small{display:block;font-size:12px}.private-phone small{font-size:10px;margin-top:7px}.privacy-transfer{text-align:center;font-size:11px;color:#52604a}.measure-dots{display:block;font-size:28px;letter-spacing:4px;animation:measure-travel 2.5s infinite}.private-vault{padding:20px 0}.vault-icon{font-size:40px;line-height:1}.private-vault h3{font-size:30px;margin:12px 0 22px}.private-vault>div{display:flex;justify-content:space-between;gap:14px;padding:9px 0;border-top:1px solid #b1c2a7;font-size:11px}.private-vault b{font-weight:500}.no-storage{grid-column:1/-1;display:grid;grid-template-columns:32px 1fr;column-gap:12px;align-items:center;padding-top:20px;border-top:1px solid #b1c2a7}.no-storage svg{width:32px;fill:none;stroke:#92536b;stroke-width:1.7;grid-row:1/3}.no-storage>span{font-size:15px}.no-storage small{font-size:11px;color:#52604a}@keyframes measure-travel{0%,100%{opacity:.4;transform:translateX(-5px)}60%{opacity:1;transform:translateX(5px)}}
@media(max-width:820px){.journey{aspect-ratio:auto;height:620px}.journey>video{height:340px;object-fit:contain;background:#f8e5ec}.journey.mode-live .hw-root .art{right:3%;top:356px;width:27%;height:240px}.journey-caption{color:#30242c;text-shadow:none;left:6%;bottom:12%;max-width:60%}.journey-caption h3{font-size:34px}.journey-caption p{font-size:11px}.app-note{top:auto;bottom:8px;right:3%;width:30%;font-size:8px;background:none}.journey.mode-live:after{display:none}.journey .hw-root .stage{display:grid;grid-template-columns:1fr;grid-template-rows:390px 230px;padding:0 6%;align-items:start}.journey .hw-root .art{height:390px;width:100%;order:0}.journey .hw-root .device{height:93%;bottom:0}.journey .hw-root .copy{padding:12px 0;order:1;max-width:100%}.journey .hw-root .caps{min-height:180px}.journey .hw-root .cap h3{font-size:30px}.journey .hw-root .cap p{font-size:14px;line-height:1.5;margin-top:12px}.journey .hw-root .rail{margin-bottom:18px}.journey-controls{flex-wrap:wrap;gap:12px}.journey-controls .button{min-width:170px;font-size:13px;padding:12px 17px}.journey-controls input{order:3;flex-basis:100%}.journey-controls>button:last-child{margin-left:auto}.journey-chapters{gap:10px;overflow:auto}.journey-chapters button{min-width:85px;font-size:11px}.privacy-demo{margin-top:40px;gap:10px}.private-vault h3{font-size:25px}.private-vault>div{font-size:10px;gap:6px}.private-phone{padding:14px 8px}.privacy-transfer{font-size:9px}.measure-dots{font-size:19px}.journey-disclosure{font-size:10px}}
@media(prefers-reduced-motion:reduce){.measure-dots{animation:none}.journey>video{transition:none}}
@media(min-width:821px){.journey .hw-root .stage{display:block}.journey .hw-root .art{position:absolute;left:3%;top:0;width:56%;height:100%;transform-origin:0 0}.journey .hw-root .copy{position:absolute;right:4%;top:28%;width:36%;padding:0;transition:opacity .6s;opacity:1}.journey.mode-live .hw-root .art{left:74%;right:auto;top:5%;width:23%;height:77%}.journey.mode-live .hw-root .copy{display:block;opacity:0;visibility:hidden}.journey.mode-portal .hw-root .art{left:35%;top:1%;width:30%;height:96%}.journey.mode-portal .journey-caption,.journey.mode-portal .app-note{opacity:0}.journey-caption,.app-note{transition:opacity .5s}.journey.mode-portal>video{opacity:.35}}
@media(prefers-reduced-motion:reduce){.journey .hw-root .art,.journey .hw-root .copy{transition:none}}
.measure-dots{white-space:nowrap}@media(max-width:820px){.measure-dots{letter-spacing:1px}.privacy{gap:12px}.privacy-demo{margin-top:20px}}
.journey .hw-root .her{object-position:51% 50%!important}
@media(max-width:820px){.journey.mode-live .hw-root .art{width:114px}.journey-caption{max-width:calc(100% - 145px)}.journey-caption h3{font-size:clamp(24px,7vw,34px)}}
@media(max-width:820px){.journey>video{height:230px}.journey.mode-live .hw-root .art{top:255px;height:300px;width:142px}.journey-caption{bottom:20%;max-width:calc(100% - 170px)}.app-note{bottom:38px;width:142px}.journey-caption h3{font-size:clamp(23px,6.8vw,31px)}}
@media(min-width:821px){.journey.mode-live:not(.mode-portal) .hw-root .art{left:79%;width:18%;height:60%}.journey.mode-live:not(.mode-portal) .app-note{width:18%;top:68%}}
.journey{margin-bottom:48px}.journey.mode-exit .hw-root,.journey.mode-exit .app-note{opacity:0;pointer-events:none}.journey .hw-root{transition:opacity .65s}.journey .hw-root .popBra{object-fit:fill;filter:none}

.journey.mode-live:not(.mode-portal) .hw-root,.journey.mode-live:not(.mode-portal) .app-note{opacity:var(--app-reveal,1)}.journey.mode-live:not(.mode-portal) .journey-caption{opacity:var(--caption-reveal,1)}
/* Anonymous contour scan: geometry and measurements, never a photograph. */
.private-phone .privacy-scan{fill:none}
.privacy-scan .scan-body{fill:#ead8df;stroke:#b18b9c;stroke-width:2}
.privacy-scan .scan-contours{fill:none;stroke:#947387;stroke-width:2;opacity:.75}
.privacy-scan .scan-band{animation:privacy-sweep 4s linear infinite}
.privacy-scan .scan-band path{fill:none;stroke:#53694f;stroke-width:6}
.privacy-scan .scan-landmarks circle{fill:#53694f;stroke:#fff4f7;stroke-width:3;animation:privacy-point 4s ease-in-out infinite;animation-delay:var(--delay)}
.privacy-scan .scan-measurements{fill:none;stroke:#53694f;stroke-width:3;stroke-dasharray:7 5}
@keyframes privacy-sweep{0%{transform:translateY(0);opacity:0}5%{opacity:1}85%{opacity:1}100%{transform:translateY(1030px);opacity:0}}
@keyframes privacy-point{0%,20%,100%{opacity:.25}35%,80%{opacity:1}}
@media(prefers-reduced-motion:reduce){.privacy-scan .scan-band{animation:none;transform:translateY(430px);opacity:.65}.privacy-scan .scan-landmarks circle{animation:none;opacity:1}}
.journey{border-radius:var(--radius-surface)}
.journey.mode-reduced .hw-root,.journey.mode-reduced .app-note,.journey.mode-reduced .journey-caption{opacity:1!important}
/* Three editorial beats: centered invitation, left-side story, centered sign-off. */
.journey-caption{left:5%;top:50%;bottom:auto;transform:translateY(-50%);max-width:45%;transition:left 1.1s cubic-bezier(.22,1,.36,1),transform 1.1s cubic-bezier(.22,1,.36,1),opacity .5s;pointer-events:none}
.journey-caption p{display:none}
.journey-caption h3{font-size:clamp(40px,5vw,76px);line-height:1.03;letter-spacing:-.035em;font-weight:400}
.journey.caption-center .journey-caption{left:50%;transform:translate(-50%,-50%);max-width:80%;width:max-content;text-align:center}
.journey.caption-center .journey-caption h3{font-size:clamp(44px,5.6vw,84px)}
.journey.mode-exit:not(.caption-outro) .journey-caption{opacity:0}
.journey.caption-outro .journey-caption{opacity:1!important}
@media(max-width:820px){.journey-caption{left:6%;top:70%;max-width:calc(100% - 170px)}.journey-caption h3{font-size:clamp(25px,7.2vw,34px)}.journey.caption-center .journey-caption{top:70%;max-width:88%}.journey.caption-center .journey-caption h3{font-size:clamp(36px,10vw,46px)}.journey.caption-center .hw-root{opacity:0!important}.journey .hw-root{transition:opacity .8s}}
@media(prefers-reduced-motion:reduce){.journey-caption{transition:none}}
.journey.caption-center .hw-root,.journey.caption-center .app-note{opacity:0!important}
/* The app takes over immediately; never leave a frozen actor behind the handoff. */
.journey.mode-portal>video{opacity:0;transition:opacity .65s}
.journey.mode-portal .journey-caption,.journey.mode-portal .app-note{opacity:0!important}
@media(max-width:820px){.journey.mode-portal .hw-root .art{left:calc(50% - 120px);right:auto;top:3%;width:240px;height:91%}}
/* Editorial title cards: appear in place, then clear the action. */
.journey .journey-caption{top:30%;transition:none!important;text-shadow:0 2px 14px rgba(39,26,28,.22)}
.journey .journey-caption h3{font-size:clamp(48px,6.1vw,92px);line-height:1.01;letter-spacing:-.04em;font-weight:400}
.journey.caption-center .journey-caption{top:50%}
.journey.caption-center .journey-caption h3{font-size:clamp(52px,6.5vw,100px)}
.journey.caption-hidden .journey-caption{opacity:0!important;visibility:hidden}
@media(max-width:820px){.journey .journey-caption{top:62%}.journey .journey-caption h3{font-size:clamp(28px,8vw,37px)}.journey.caption-center .journey-caption{top:70%}.journey.caption-center .journey-caption h3{font-size:clamp(38px,11vw,50px)}}
