/* Store-aligned Nordic artwork and real app screens. */
.store-refresh { --ink:#102d49; --blue:#0865d7; --muted:#536c82; }
.store-refresh .wrap { max-width:1200px; width:calc(100% - 64px); }
.store-refresh .hero-surface { background:#edf6fb; overflow:hidden; }
.store-refresh .site-header { position:relative; z-index:3; gap:22px; }
.store-refresh .site-header nav { gap:18px; }
.store-refresh .header-store { font-size:13px; padding:12px 16px; }
.store-refresh .hero { min-height:660px; height:auto; display:grid; grid-template-columns:1fr 1fr; align-items:center; }
.store-refresh .hero-copy { width:auto; padding:45px 0 70px; z-index:2; }
.store-refresh .hero h1 { font-size:clamp(32px,4.2vw,54px); line-height:1.22; letter-spacing:-.03em; margin-bottom:22px; }
.store-refresh .category-label { font-size:13px; margin:0 0 14px; color:#436882; }
.store-refresh .hero-description { font-size:19px; font-weight:500; line-height:1.95; max-width:520px; }
.store-refresh .hero-store { font-size:19px; padding:16px 25px; margin-top:28px; }
.store-refresh .hero-note { font-family:inherit; font-size:13px; font-style:normal; transform:none; letter-spacing:0; border:0; padding:0; color:#486981; max-width:400px; }
.store-refresh .hero-visual { position:relative; min-width:0; height:660px; }
.store-refresh .hero-scene { position:absolute; width:1050px; height:660px; max-width:none; object-fit:cover; object-position:70% center; right:-180px; bottom:0; mask-image:linear-gradient(90deg,transparent,#000 22%); }
.store-refresh .hero-app { position:absolute; width:205px; left:2%; bottom:20px; z-index:1; transform:rotate(-5deg); }
.store-refresh .hero-app img { border:6px solid #fff; border-radius:28px; box-shadow:0 20px 45px #16395730; }
.store-refresh .hero-app figcaption { background:#fff; border-radius:20px; padding:5px 12px; margin:10px auto 0; width:max-content; font-size:11px; }
.store-refresh .meet-ai { display:flex; align-items:center; gap:24px; padding:30px 0; }
.store-refresh .meet-ai>img { border-radius:50%; width:72px; height:72px; }
.store-refresh .ai-intro { position:static; width:auto; flex:1; }
.store-refresh .ai-intro h2 { font-size:19px; border-radius:0; padding:0; background:none; margin:0 0 5px; display:block; }
.store-refresh .ai-intro p { font-size:14px; line-height:1.8; font-weight:400; padding:0; background:none; border-radius:0; max-width:650px; }
.store-refresh .meet-ai>a { font-size:13px; }
.store-refresh .screens-section { background:#f6f8fc; padding:80px 0; }
.store-refresh .section-heading { display:flex; align-items:end; justify-content:space-between; gap:35px; margin-bottom:42px; }
.store-refresh .section-heading h2 { max-width:640px; font-size:clamp(27px,3vw,38px); line-height:1.5; }
.store-refresh .section-heading>p { font-size:14px; line-height:1.9; color:var(--muted); }
.store-refresh .screen-gallery { display:flex; overflow-x:auto; gap:24px; padding:12px 8px 24px; scroll-snap-type:x proximity; }
.store-refresh .screen-gallery:focus-visible { outline:3px solid var(--blue); outline-offset:7px; }
.store-refresh .screen-gallery figure { flex:0 0 225px; scroll-snap-align:start; }
.store-refresh .screen-gallery img { border:5px solid #dce6f1; border-radius:27px; background:#e9f1fa; }
.store-refresh .screen-gallery figcaption { padding-top:20px; }
.store-refresh .screen-gallery h3 { font-size:17px; font-weight:700; }
.store-refresh .screen-gallery p { margin-top:6px; font-size:13px; line-height:1.8; color:var(--muted); }
.store-refresh .everyday-section,.store-refresh .city-layout { display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:110px; padding-top:90px; padding-bottom:90px; }
.store-refresh .feature-copy h2 { font-size:clamp(29px,3.4vw,43px); line-height:1.5; letter-spacing:-.015em; margin:12px 0 25px; }
.store-refresh .feature-copy>p:not(.section-eyebrow) { font-size:17px; line-height:2; }
.store-refresh .feature-copy .feature-detail { font-size:13px!important; color:var(--muted); margin-top:24px; }
.store-refresh .feature-screen { width:300px; border:7px solid #dce6f1; border-radius:32px; justify-self:center; box-shadow:0 15px 45px #2f50771a; }
.store-refresh .city-section { background:#eaf4f7; }
.store-refresh .steps-section { padding:75px 0; }
.store-refresh .settings-section { padding:65px 0; }
.store-refresh .moods-section h2 { font-size:clamp(27px,3vw,38px); }
.store-refresh .moods-section .section-lead { font-size:16px; }
.store-refresh .testimonials-section { padding:42px 0; }
.store-refresh .testimonials-section h2 { font-size:26px; }
.store-refresh .testimonials-grid blockquote { font-size:21px; }
.store-refresh .product-facts { padding-top:50px; padding-bottom:50px; }
.store-refresh .section-eyebrow { font-size:12px; font-weight:700; letter-spacing:.08em; }
html[lang=en] .store-refresh .hero h1 { font-size:clamp(43px,4.6vw,64px); }
html[lang=en] .store-refresh .hero-copy { padding:45px 0 70px; }
html[lang=en] .store-refresh .hero-description { font-size:18px; }
@media(max-width:1050px) {
 .store-refresh .site-header nav { font-size:13px; gap:12px; }
 .store-refresh .header-store { display:none; }
 .store-refresh .hero-scene { right:-235px; }
 .store-refresh .hero-app { left:0; width:185px; }
 .store-refresh .everyday-section,.store-refresh .city-layout { gap:60px; }
 .store-refresh .section-heading { display:block; }
 .store-refresh .section-heading>p { margin-top:18px; }
}
@media(max-width:700px) {
 .store-refresh .wrap { width:calc(100% - 40px); }
 .store-refresh .site-header { gap:12px; padding-top:20px; padding-bottom:18px; }
 .store-refresh .hero { display:block; min-height:0; }
 .store-refresh .hero-copy,html[lang=en] .store-refresh .hero-copy { padding:25px 0 0; width:100%; }
 .store-refresh .hero h1,html[lang=en] .store-refresh .hero h1 { font-size:42px; max-width:100%; }
 .store-refresh .hero-description,html[lang=en] .store-refresh .hero-description { font-size:15px; line-height:1.9; }
 .store-refresh .hero-store { font-size:17px; margin-top:22px; padding:14px 21px; }
 .store-refresh .hero-note { margin-top:12px; font-size:11px; }
 .store-refresh .hero-visual { height:420px; margin-top:12px; }
 .store-refresh .hero-scene { right:-80px; width:620px; height:420px; object-position:70% center; mask-image:linear-gradient(180deg,transparent,#000 12%); }
 .store-refresh .hero-app { width:153px; left:0; bottom:13px; }
 .store-refresh .hero-app img { border-width:4px; border-radius:21px; }
 .store-refresh .meet-ai { flex-wrap:wrap; gap:16px; padding:25px 0; }
 .store-refresh .meet-ai>img { width:54px; height:54px; }
 .store-refresh .ai-intro { flex:1; min-width:210px; }
 .store-refresh .ai-intro p { font-size:12px; }
 .store-refresh .meet-ai>a { display:none; }
 .store-refresh .screens-section { padding:45px 0 30px; }
 .store-refresh .section-heading { margin-bottom:24px; }
 .store-refresh .screen-gallery { gap:18px; margin-right:-20px; padding-right:20px; }
 .store-refresh .screen-gallery figure { flex-basis:205px; }
 .store-refresh .everyday-section,.store-refresh .city-layout { grid-template-columns:1fr; gap:34px; padding-top:50px; padding-bottom:50px; }
 .store-refresh .feature-copy h2 { font-size:30px; margin-bottom:18px; }
 .store-refresh .feature-copy>p:not(.section-eyebrow) { font-size:15px; }
 .store-refresh .feature-screen { width:260px; }
 .store-refresh .city-layout .feature-screen { grid-row:2; }
 .store-refresh .steps-section,.store-refresh .settings-section { padding:45px 0; }
 .store-refresh .product-facts { width:calc(100% - 40px); }
}
@media(prefers-reduced-motion:reduce) { .store-refresh { scroll-behavior:auto; } html:has(.store-refresh) { scroll-behavior:auto; } }
.store-refresh .hero-app img,.store-refresh .screen-gallery img,.store-refresh .feature-screen { height:auto; }

@media(max-width:700px) { html[lang=ja] .store-refresh .hero h1 { font-size:clamp(28px,9vw,36px); } }
