/* Editorial sections stay square. Rounded corners identify devices and controls. */
.app-overture{position:relative;padding:110px 0 55px;overflow:clip;background:#f0f0f1a8;border-block:1px solid #ffffffa8}.overture-heading{text-align:center}.overture-heading .eyebrow{color:var(--brown);margin-bottom:22px}.overture-heading h2{font-size:clamp(42px,5.8vw,80px);line-height:1.3}.overture-heading h2 span{color:var(--purple)}.overture-heading>p:last-child{margin:28px auto 0;max-width:660px;font-size:16px;line-height:2}.screen-fan{height:740px;position:relative;max-width:1100px;margin:60px auto 10px}.fan-phone{position:absolute;width:280px;padding:7px;border-radius:40px;background:#fcfcfc;box-shadow:0 25px 65px #27212f29}.fan-phone>img{width:100%;height:auto;border-radius:33px}.fan-left{left:8%;top:65px;transform:rotate(-7deg)}.fan-center{left:calc(50% - 140px);z-index:2}.fan-right{right:8%;top:65px;transform:rotate(7deg)}.fan-phone figcaption{position:absolute;top:calc(100% + 20px);left:-10px;right:-10px;text-align:center;font-size:13px;font-weight:700;white-space:nowrap}.fan-phone figcaption small{display:block;font-size:10px;font-weight:400;color:var(--muted)}.overture-footer{display:flex;justify-content:space-between;align-items:center;gap:30px;max-width:1250px;margin:auto}.overture-footer>p{font-size:11px;line-height:1.8;color:var(--muted);max-width:620px}
.app-lab{padding-block:100px;background:#f4f4f5a8}.lab-heading{display:flex;align-items:end;justify-content:space-between;gap:35px;margin-bottom:45px}.lab-heading h2,.native-intro h2,.share-story h2,.shared-preview-copy h2{font-size:clamp(34px,4.5vw,62px);line-height:1.4}.lab-heading .eyebrow,.native-intro .eyebrow,.share-story .eyebrow{color:var(--brown);margin-bottom:20px}.lab-heading>p{font-size:15px;line-height:1.9;color:var(--muted)}.screen-panel{grid-template-columns:1fr 1fr;gap:8vw;align-items:center;display:grid;padding:76px 3vw;scroll-margin-top:100px}.screen-count{display:block;font-size:75px;color:#967b65;line-height:1;margin-bottom:35px;font-weight:400}.screen-count small{font-size:13px}.screen-editorial>.eyebrow{color:var(--purple);margin-bottom:15px}.screen-editorial h3{font-size:clamp(28px,3.2vw,43px);line-height:1.5}.screen-editorial>p:not(.eyebrow){font-size:16px;line-height:1.95;margin-top:25px}.screen-editorial .demo-provenance{font-size:11px!important;color:var(--muted)}.screen-device{width:min(100%,300px);margin:auto}.device-rim{padding:7px;border-radius:39px;background:#fff;box-shadow:0 25px 65px #31283d24}.device-rim>img{border-radius:32px;width:100%;height:auto}.screen-device figcaption{font-size:11px;text-align:center;margin-top:20px;line-height:1.8}.screen-device figcaption small{display:block;font-size:10px;color:var(--muted)}.screens-caption{font-size:11px;line-height:1.8;color:var(--muted);margin-top:25px}
.native-gallery{padding-block:95px;background:#e7e8e9d1}.native-intro>p:last-child{font-size:15px;margin:25px 0 40px;line-height:1.9}.native-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:25px}.native-grid figure a{display:block;background:#fff;padding:5px;border-radius:29px;box-shadow:0 15px 35px #27212f18}.native-grid img{width:100%;height:auto;border-radius:24px}.native-grid figcaption{display:flex;gap:12px;font-size:12px;line-height:1.7;padding:20px 0;border-bottom:1px solid #b9b0a9}.native-grid figcaption span{color:var(--brown)}.share-story{display:grid;grid-template-columns:1.3fr 1fr;gap:10vw;align-items:center;padding-block:100px;background:#25232bed;color:#f4f1ed}.share-story .eyebrow{color:#c5aa90}.share-story>div>p:last-child{font-size:16px;line-height:2;max-width:530px;margin-top:30px}.share-native{width:min(100%,250px);justify-self:center;border:6px solid #eee9e5;border-radius:35px;overflow:hidden}.share-native img{width:100%;height:auto}
.shared-app-preview{padding-block:85px;display:grid;grid-template-columns:1.2fr 1fr;gap:35px 7vw;align-items:center}.shared-preview-copy .eyebrow{color:var(--brown);margin-bottom:20px}.shared-preview-copy>p:not(.eyebrow){font-size:15px;line-height:1.95;margin:25px 0}.shared-screen-pair{display:flex;gap:16px;align-items:start}.shared-screen-pair figure{width:calc(50% - 8px);padding:5px;border-radius:25px;background:#fcfaff;box-shadow:0 18px 35px #4938601c}.shared-screen-pair figure+figure{margin-top:45px}.shared-screen-pair img{width:100%;border-radius:20px;height:auto}.shared-screen-pair figcaption{font-size:10px;text-align:center;margin:14px 0 6px}.shared-app-preview>.screens-caption{grid-column:1/-1;margin:0}
@media(prefers-reduced-motion:no-preference){.motion-ready .fan-left{transform:translateX(calc((1 - var(--fan-progress,0))*75px)) translateY(calc((1 - var(--fan-progress,0))*50px)) rotate(calc(-2deg - var(--fan-progress,0)*5deg))}.motion-ready .fan-right{transform:translateX(calc((1 - var(--fan-progress,0))*-75px)) translateY(calc((1 - var(--fan-progress,0))*50px)) rotate(calc(2deg + var(--fan-progress,0)*5deg))}@keyframes screen-arrive{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}}
@media(max-width:760px){.app-overture{padding:65px 0 35px}.overture-heading h2{font-size:clamp(30px,9vw,45px)}.overture-heading>p:last-child{font-size:14px;line-height:1.9;margin-top:23px}.overture-heading>p:last-child br{display:none}.screen-fan{height:440px;margin:35px auto 15px;max-width:440px}.fan-phone{width:165px;padding:4px;border-radius:25px}.fan-phone>img,.fan-phone .demo-phone{border-radius:21px}.fan-center{left:calc(50% - 82.5px)}.fan-left{left:calc(50% - 207px);top:35px}.fan-right{right:auto;left:calc(50% + 42px);top:35px}.fan-phone figcaption{font-size:9px;top:calc(100% + 15px)}.fan-phone figcaption small{font-size:8px}.fan-phone .demo-drawer{padding:6px;border-radius:13px 13px 0 0}.fan-phone .demo-drawer>strong{font-size:11px}.fan-phone .demo-small{font-size:7px}.fan-phone .demo-tag{font-size:7px;padding:4px}.fan-phone .demo-drawer .demo-tag{margin:6px -6px 0}.fan-phone .demo-disclaimer{font-size:6px!important;margin:4px 0}.fan-phone .demo-items{gap:5px;margin-top:5px}.fan-phone .demo-item>p{font-size:7px;padding:4px}.fan-phone .demo-item>small{display:none}.fan-phone .demo-handle{height:2px;margin-bottom:5px}.overture-footer{flex-direction:column-reverse;align-items:start;gap:25px}.overture-footer>p{font-size:10px}.app-lab{padding-block:60px}.lab-heading{display:block;margin-bottom:25px}.lab-heading h2,.native-intro h2,.share-story h2,.shared-preview-copy h2{font-size:clamp(28px,8vw,39px)}.lab-heading>p{font-size:14px;margin-top:20px}.screen-panel{grid-template-columns:1fr;gap:25px}.screen-device{grid-row:2;width:min(100%,275px)}.screen-editorial{grid-row:1;position:relative}.screen-count{position:absolute;right:0;top:0;font-size:33px;margin:0}.screen-count small{font-size:10px}.screen-editorial>.eyebrow{font-size:10px;min-height:32px;margin-bottom:10px}.screen-editorial h3{font-size:26px;line-height:1.45}.screen-editorial>p:not(.eyebrow){font-size:14px;line-height:1.9;margin-top:16px}.screen-editorial .demo-provenance{font-size:10px!important}.device-rim{border-radius:35px;padding:6px}.device-rim>img,.device-rim>.demo-phone{border-radius:29px}.screen-device figcaption{font-size:10px;margin-top:16px}.screen-device figcaption small{font-size:9px}.native-gallery{padding-block:60px}.native-intro>p:last-child{font-size:14px}.native-grid{grid-template-columns:1fr 1fr;gap:25px 14px}.native-grid figure a{border-radius:22px;padding:4px}.native-grid img{border-radius:18px}.native-grid figcaption{font-size:11px;gap:7px;padding:14px 0}.screens-caption{font-size:10px}.share-story{grid-template-columns:1fr;gap:35px;padding-block:60px}.share-story>div>p:last-child{font-size:14px}.share-native{width:220px}.shared-app-preview{display:block;padding-block:60px}.shared-preview-copy>p:not(.eyebrow){font-size:14px}.shared-screen-pair{margin-top:35px;gap:12px}.shared-screen-pair figure{width:calc(50% - 6px);border-radius:22px;padding:4px}.shared-screen-pair img{border-radius:18px}.shared-app-preview>.screens-caption{margin-top:25px}}
@media(max-width:360px){.fan-phone{width:145px}.fan-center{left:calc(50% - 72.5px)}.fan-left{left:calc(50% - 182px)}.fan-right{left:calc(50% + 37px)}.screen-fan{height:395px}.screen-editorial h3{font-size:23px}.demo-phone{font-size:11px}}
@media(max-width:760px){.screen-panel{gap:16px;padding-top:22px}.screen-editorial{display:contents}.screen-count{display:none}.screen-editorial>.eyebrow{grid-row:1;grid-column:1;margin:0;min-height:0}.screen-editorial h3{grid-row:2;grid-column:1}.screen-device{grid-row:3;width:min(100%,250px);margin-top:10px}.screen-editorial>p:not(.eyebrow):not(.demo-provenance){grid-row:4;grid-column:1;margin-top:10px}.screen-editorial .demo-provenance{grid-row:6;grid-column:1;margin-top:0}.screen-editorial .text-link{grid-row:7;grid-column:1}}
@media(max-width:760px){.screen-panel{}}
.app-overture{background:#f4f4f645}.overture-heading h2{font-size:clamp(32px,4.5vw,62px)}.app-lab{background:#f4f4f59c}.native-gallery{background:#ececed;position:relative;isolation:isolate;overflow:clip}.gallery-material{position:absolute;inset:0;z-index:-1;overflow:hidden;pointer-events:none}.gallery-material img{width:100%;max-width:1024px;height:auto;margin-left:auto}.native-intro,.native-grid,.screens-caption{position:relative}.native-grid figure a{background:#ffffffb5;border:1px solid #fff;backdrop-filter:blur(20px)}.capture-credit{font-size:11px;color:var(--muted);line-height:1.8;margin-top:24px;max-width:800px}.capture-credit summary{min-height:44px;font-size:11px}.capture-credit details{border-top:1px solid #bfb4c1;margin-top:8px}.capture-credit details p{font-size:11px;padding-bottom:12px}.capture-credit ul{padding-left:18px}.capture-credit li a{display:inline-block;padding-block:9px;text-decoration:underline;text-underline-offset:3px}.capture-credit .ui-icon{width:14px;height:14px}.capture-credit .rakuten-credit{display:inline-flex;align-items:center;min-height:44px;font-size:11px;text-decoration:underline}.screen-editorial .capture-credit{margin-top:18px}.device-rim,.fan-phone{background:#ffffffbf;border:1px solid #fff;backdrop-filter:blur(15px)}.share-story{background:#25212bed}.share-story h2{font-size:clamp(28px,3.8vw,52px)}
@media(max-width:760px){.app-overture{padding-top:60px}.overture-heading h2{font-size:clamp(26px,7.7vw,30px)}.overture-heading>p:last-child{font-size:13px}.screen-panel>.screen-editorial>.capture-credit{grid-row:5;grid-column:1}.screen-editorial h3{font-size:25px}.capture-credit{font-size:10px}.capture-credit details p{font-size:11px}.native-grid{gap:25px 18px}}

/* Price-only masks leave native product names, photos and details visible. */
.screen-treatment{position:relative;display:block;overflow:hidden;border-radius:inherit}.screen-treatment>img{display:block;width:100%;height:auto;border-radius:inherit}.screen-device{position:relative;isolation:isolate}.fan-phone .screen-treatment{border-radius:33px}

@media(max-width:760px){.fan-phone .screen-treatment{border-radius:21px}}

.device-rim>.screen-treatment{border-radius:32px}.screen-treatment>img{pointer-events:none;user-select:none;-webkit-touch-callout:none}

.screen-sequence{min-width:0}.screen-panel+.screen-panel{border-top:1px solid #bcb5b36b}.step-index{display:inline-block;margin-right:14px;color:var(--brown);font-variant-numeric:tabular-nums}.screen-panel:nth-child(even) .screen-device{grid-column:1;grid-row:1}.screen-panel:nth-child(even) .screen-editorial{grid-column:2;grid-row:1}
@media(max-width:760px){.app-lab{padding-bottom:25px}.screen-panel{padding:38px 0 46px;gap:16px;scroll-margin-top:90px}.screen-panel:nth-child(even) .screen-device{grid-column:1;grid-row:3}.screen-panel:nth-child(even) .screen-editorial{grid-column:1;grid-row:auto}.screen-panel .screen-editorial{display:contents}.screen-panel+.screen-panel{padding-top:44px}.screen-editorial>.eyebrow{line-height:1.6}.screen-device{width:min(100%,270px)}}

.screen-price{position:absolute;pointer-events:none;background:#f8f9fa;left:6.2%;width:22%;height:2.8%;border-radius:2px}.screen-price-secondary{left:44.7%}.screen-treatment-sheet .screen-price{left:3%;top:83.7%;width:25.2%;height:3%}.screen-treatment-product .screen-price{left:8%;top:54.2%;width:23%;height:3%}
.screen-price-tertiary{left:83.2%;width:16.8%}
/* Keep the yen sign inside the full blur, beyond its feathered left edge. */
.screen-treatment-sheet .screen-price-secondary{left:41.5%}.screen-treatment-sheet .screen-price-tertiary{left:80%;width:20%}
.screen-treatment-area .screen-price{left:24.7%;top:98.5%;width:15%;height:1.5%}
.screen-treatment-area .screen-price-secondary{left:86%;width:14%}
/* Blend the blur into the original card instead of painting a pale rectangle. */
@supports(backdrop-filter:blur(1px)){.screen-price{background:#f8f9fa80;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}:is(.screen-treatment-sheet,.screen-treatment-product) .screen-price{background:transparent}}
@supports (backdrop-filter:blur(1px)) and (mask-composite:intersect){:is(.screen-treatment-sheet,.screen-treatment-product) .screen-price{mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent),linear-gradient(transparent,#000 20%,#000 80%,transparent);mask-composite:intersect}.screen-treatment-sheet .screen-price-tertiary{mask-image:linear-gradient(90deg,transparent,#000 12%),linear-gradient(transparent,#000 20%,#000 80%,transparent)}}

/* Screens are the controls; auxiliary enlargement links are unnecessary. */
.screen-preview{display:block;width:100%;padding:0;border:0;border-radius:inherit;background:transparent;color:inherit;text-align:inherit;cursor:zoom-in;touch-action:manipulation}.screen-preview:disabled{opacity:1;cursor:default}.screen-preview>img{display:block;width:100%;height:auto;border-radius:inherit}.hero-native-rim>.screen-preview{border-radius:34px}.device-rim>.screen-preview{border-radius:32px}.fan-phone>.screen-preview{border-radius:33px}.native-grid .screen-preview{padding:5px;border:1px solid #fff;border-radius:29px;background:#ffffffb5;box-shadow:0 15px 35px #27212f18}.screen-preview:focus-visible{outline:3px solid var(--purple);outline-offset:5px}
.native-preview-open{overflow:hidden}.native-preview-dialog{padding:0;width:640px;max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px);border:1px solid #fff;border-radius:24px;background:#f3f2f6;color:var(--ink);box-shadow:0 24px 90px #25202d55}.native-preview-dialog::backdrop{background:#25202d99;backdrop-filter:blur(12px)}.native-preview-bar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:12px 16px}.native-preview-bar h2{font-size:16px;letter-spacing:0}.native-preview-bar h2:focus{outline:none}.native-preview-close{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;padding:0;border:1px solid #ded9e3;border-radius:50%;background:#fff;color:var(--ink)}.native-preview-close:active{background:#e9e4ed}.native-preview-viewport{max-height:calc(100dvh - 110px);overflow:auto;overscroll-behavior:contain;padding:0 12px 12px}.native-preview-stage{width:100%}.native-preview-stage>img,.native-preview-stage .screen-treatment{display:block;width:100%;height:auto;border-radius:14px}.native-preview-stage img{display:block;width:100%;height:auto;pointer-events:none}.native-preview-viewport:focus-visible{outline:2px solid var(--purple);outline-offset:-3px}
@media(max-width:760px){.fan-phone>.screen-preview{border-radius:21px}.device-rim>.screen-preview{border-radius:29px}.native-grid .screen-preview{padding:4px;border-radius:22px}}

.screen-preview-unavailable{margin:0;min-height:5rem;display:grid;place-items:center;padding:.75rem;text-align:center;font-size:.8rem}
