/* Homepage hero v2. Two coherent groups: service and selected bag. */
.hero-v2{padding:36px var(--m) 28px;--plate-h:440px}
.hero-v2 .hero-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(32px,5vw,80px);align-items:center;margin:0;padding:0}
.hero-v2 .hero-copy,.hero-v2 .hero-obj{grid-column:auto;padding:0;min-width:0;order:initial}
.hero-v2 .hero-eyebrow{font-size:12px;font-weight:700;letter-spacing:.16em;margin-bottom:20px}
.hero-v2 .hero-copy h1{font-size:clamp(40px,4.1vw,64px)!important;line-height:1.06!important;font-weight:800!important;letter-spacing:-.045em!important;max-width:20ch!important;text-wrap:pretty}
.zh .hero-v2 .hero-copy h1{font-size:clamp(36px,3.5vw,54px)!important;line-height:1.25!important;letter-spacing:-.035em!important;max-width:13em!important;text-wrap:balance}
.hero-v2 .hero-intro{font-size:14px;line-height:1.6;color:var(--quiet);max-width:42ch;margin-top:20px}
.hero-v2 .hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:16px 24px;margin-top:24px}
.hero-v2 .hero-copy .act{margin:0;font-size:15px;padding:14px 24px}
.hero-v2 .hero-help{font-size:15px;font-weight:600;min-height:48px;display:inline-flex;align-items:center;gap:6px;text-decoration:underline;text-underline-offset:5px;text-decoration-thickness:1px}
.hero-carousel{position:relative;min-width:0;overflow:visible}
.hero-carousel .hero-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain}
.hero-carousel .hero-track::-webkit-scrollbar{display:none}
.hero-carousel .hero-slide{flex:0 0 100%;min-width:0;scroll-snap-align:center;margin:0;position:relative}
.hero-carousel .hero-slide>a{position:relative;display:flex;align-items:center;justify-content:center;height:var(--plate-h);background:var(--ground);cursor:pointer}
.hero-carousel .hero-slide>a:focus-visible{outline-offset:-3px}
.hero-carousel .hero-slide img{width:100%;height:100%;max-width:520px;aspect-ratio:1;object-fit:contain;mix-blend-mode:multiply}
.hero-v2 .hero-caption{position:static;text-align:left;margin:12px 0 0;display:flex;flex-direction:column;align-items:flex-start;gap:4px;min-height:118px}
.hero-brand{font-size:13px;line-height:1.4;letter-spacing:.06em;font-weight:750}
.hero-model{font-size:13px;line-height:1.4;color:var(--quiet)}
.hero-reason{font-size:14px;line-height:1.5;font-weight:550;margin-top:4px}
.hero-bag-link{display:inline-flex;align-items:center;gap:6px;font-size:13px;line-height:1.5;font-weight:650;text-decoration:underline;text-underline-offset:4px;padding:6px 0;min-height:36px}
.hero-foot{display:flex;justify-content:flex-end;margin-top:8px;border-top:1px solid #dedede}
.hero-ctl{display:flex;align-items:center;gap:12px;margin:0;width:100%;font-size:12px}
.hero-ctl .num{margin-right:auto;font-variant-numeric:tabular-nums;letter-spacing:.08em;color:var(--quiet)}
.hero-ctl button{font:inherit;font-size:24px;background:none;border:0;min-width:44px;min-height:44px;cursor:pointer;color:var(--ink)}
.hero-ctl button[aria-disabled=true]{color:#aaa;cursor:default}
.hero-ctl button:hover:not([aria-disabled=true]){background:#f2f2f2}
.hero-ctl button:focus:not(:focus-visible),.hero-track:focus:not(:focus-visible){outline:none}
.hero-ctl button:focus-visible,.hero-track:focus-visible{outline:2px solid #111;outline-offset:-2px}
@media(min-width:1600px){.hero-v2{--plate-h:500px;padding-top:48px}}
@media(max-width:960px){
 .hero-v2{padding:24px var(--m) 16px;--plate-h:320px}
 .hero-v2 .hero-row{grid-template-columns:1fr;gap:24px}
 .hero-v2 .hero-copy h1{font-size:clamp(30px,5vw,46px)!important;max-width:25ch!important}
 .zh .hero-v2 .hero-copy h1{font-size:clamp(28px,4.5vw,42px)!important;max-width:19em!important}
 .hero-v2 .hero-eyebrow{font-size:10px;margin-bottom:12px}
 .hero-v2 .hero-intro{font-size:12px;line-height:1.5;max-width:46ch;margin-top:12px}
 .hero-v2 .hero-actions{margin-top:16px;gap:12px 20px}
 .hero-v2 .hero-copy .act{font-size:13px;padding:12px 20px;min-height:44px}
 .hero-v2 .hero-help{font-size:13px;min-height:44px}
 .hero-v2 .hero-caption{margin-top:8px;min-height:108px}
 .hero-brand,.hero-model{font-size:12px}
 .hero-reason{font-size:13px}
}
@media(max-width:480px){
 .hero-v2{padding-top:18px;--plate-h:252px}
 .hero-v2 .hero-row{gap:18px}
 .hero-v2 .hero-copy h1{font-size:30px!important;line-height:1.08!important;letter-spacing:-.035em!important}
 .zh .hero-v2 .hero-copy h1{font-size:29px!important;line-height:1.24!important;letter-spacing:-.025em!important}
}
/* Preserve the locked Chinese sentence, with natural phrase boundaries. */
.zh .hero-v2 .hero-line{display:block;text-wrap:pretty}
.zh .hero-v2 .hero-phrase{display:inline-block;white-space:nowrap}

/* Existing scene section, unchanged. */
.scene-sh{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:16px 24px;margin-bottom:24px}
.scene-kicker{font-size:11px;font-weight:700;letter-spacing:.12em;color:var(--quiet);margin:0 0 6px;text-transform:uppercase}
.scene-nav{display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px}
.scene-tabs{display:flex;flex-wrap:wrap;gap:8px}
.scene-tab{font:inherit;font-size:13px;font-weight:580;padding:7px 15px;border:1px solid #d4d4cf;border-radius:999px;background:#fff;color:#444;cursor:pointer;transition:all .16s ease}
.scene-tab:hover{border-color:#111;color:#111}
.scene-tab.is-active{background:#111;color:#fff;border-color:#111;font-weight:680}
.scene-more{font-size:13px;font-weight:600;white-space:nowrap}

.scene-scheme-bar{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:10px}
.scene-scheme-bar .scheme-lbl{font-size:11.5px;color:var(--quiet);font-weight:600}
.scene-scheme-bar .scheme-pill{font:inherit;font-size:11.5px;padding:3px 10px;border:1px solid #d8d8d2;border-radius:999px;background:#fafaf8;color:#555;cursor:pointer}
.scene-scheme-bar .scheme-pill.is-on{background:#111;color:#fff;border-color:#111;font-weight:600}

/* Round 2: business line is the sole hero headline. */
.hero-v2 .hero-copy h1{font-size:clamp(40px,4.45vw,68px)!important;font-weight:850!important;line-height:1.05!important;max-width:none!important;text-wrap:balance}
.zh .hero-v2 .hero-copy h1{font-size:clamp(30px,3.35vw,52px)!important;line-height:1.3!important;letter-spacing:-.035em!important;max-width:none!important}
.hero-v2 .hero-tagline{font-size:14px;font-weight:600;letter-spacing:.01em;margin-top:20px;color:var(--quiet)}
.hero-v2 .hero-intro{margin-top:10px}
@media(max-width:960px){
 .hero-v2 .hero-copy h1{font-size:clamp(34px,6vw,54px)!important}
 .zh .hero-v2 .hero-copy h1{font-size:clamp(28px,3.85vw,42px)!important}
 .hero-v2 .hero-tagline{font-size:12px;margin-top:12px}
 .hero-v2 .hero-intro{margin-top:8px}
}
@media(max-width:480px){
 .hero-v2 .hero-copy h1{font-size:clamp(29px,8.6vw,39px)!important;line-height:1.06!important}
 .zh .hero-v2 .hero-copy h1{font-size:clamp(21px,7.0vw,33px)!important;line-height:1.3!important;letter-spacing:-.04em!important}
}

/* Hero v3: viewport-sized specimen, compact caption, shared desktop baseline.
   Scoped to home so the catalogue and product pages retain their layout. */
.home > .bar{z-index:100;background:#fff;opacity:1;isolation:isolate}
.home > .bar nav,.home > .bar nav>a,.home > .bar nav>button,.home > .bar .ca-ccy{opacity:1;mix-blend-mode:normal}
.home > .bar nav>a,.home > .bar nav>button{color:#333}
.home .hero-v2{
 --plate-h:75svh;
 min-height:max(640px,calc(100svh - 60px));
 padding:12px var(--m) max(32px,calc(25svh - 162px));
 position:relative;isolation:isolate;z-index:0;background:#fff;
}
.home .hero-v2 .hero-row{align-items:end}
.home .hero-carousel{background:#fff;min-width:0}
.home .hero-carousel .hero-slide>a{height:var(--plate-h);background:#fff;border:0;box-shadow:none}
.home .hero-carousel .hero-slide img{
 width:100%;height:100%;max-width:none;max-height:none;aspect-ratio:auto;
 object-fit:contain;object-position:center;mix-blend-mode:normal;
 background:#fff;border:0;box-shadow:none;
}
.home .hero-v2 .hero-caption{
 display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:20px 20px 44px;
 gap:0;min-height:0;height:84px;margin:6px 0 0;align-items:center;
}
.home .hero-name{display:flex;align-items:baseline;gap:8px;min-width:0;white-space:nowrap;overflow:hidden;line-height:20px}
.home .hero-name .hero-brand{flex:0 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;letter-spacing:.025em}
.home .hero-name .hero-model{flex:1 1 0;min-width:0;overflow:hidden;text-overflow:ellipsis}
.home .hero-reason{min-width:0;max-width:100%;margin:0;line-height:20px;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.home .hero-bag-link{justify-self:start;align-self:stretch;min-height:44px;max-width:calc(100% - 168px);padding:0;white-space:nowrap}
.home .hero-foot{position:absolute;right:0;bottom:0;height:44px;margin:0;border:0}
.home .hero-ctl{width:auto;gap:8px;height:44px}
.home .hero-ctl .num{margin:0 4px 0 0;color:#5c5c5c;white-space:nowrap}
.home .hero-ctl button{width:44px;height:44px}
@media(max-width:960px){
 .home .hero-v2{--plate-h:55svh;min-height:calc(100svh - 60px);padding:18px var(--m) 24px}
 .home .hero-v2 .hero-row{align-items:start}
}

/* Exclude measured source-image white margins at display time. Originals remain intact. */
.home .hero-image-viewport{display:block;position:relative;width:100%;height:100%;overflow:hidden}
.home .hero-carousel .hero-slide img{object-view-box:inset(var(--hero-inset))}
.home .hero-slide[data-i="1"]{--hero-inset:17.0625% 16.1200% 17.0625% 16.2137%;--crop-aspect:0.685009;--source-width:147.783934%;--source-height:151.802657%;--source-left:-23.961219%;--source-top:-25.901328%;}
.home .hero-slide[data-i="2"]{--hero-inset:17.6875% 22.5000% 17.2500% 21.7500%;--crop-aspect:0.642651;--source-width:179.372197%;--source-height:153.698367%;--source-left:-39.013453%;--source-top:-27.185399%;}
.home .hero-slide[data-i="3"]{--hero-inset:30.7273% 3.0909% 19.6364% 3.5455%;--crop-aspect:1.880952;--source-width:107.108082%;--source-height:201.465201%;--source-left:-3.797468%;--source-top:-61.904762%;}
.home .hero-slide[data-i="4"]{--hero-inset:8.2407% 14.6067% 5.2778% 14.3820%;--crop-aspect:0.676660;--source-width:140.822785%;--source-height:115.631692%;--source-left:-20.253165%;--source-top:-9.528908%;}
.home .hero-slide[data-i="5"]{--hero-inset:34.0667% 27.4667% 7.1333% 25.5333%;--crop-aspect:0.799320;--source-width:212.765957%;--source-height:170.068027%;--source-left:-54.326241%;--source-top:-57.936508%;}
.home .hero-slide[data-i="6"]{--hero-inset:25.0926% 4.5370% 24.5370% 4.4444%;--crop-aspect:1.806985;--source-width:109.867752%;--source-height:198.529412%;--source-left:-4.883011%;--source-top:-49.816176%;}
.home .hero-slide[data-i="7"]{--hero-inset:46.1538% 9.7902% 10.1898% 11.5884%;--crop-aspect:1.800915;--source-width:127.191868%;--source-height:229.061785%;--source-left:-14.739517%;--source-top:-105.720824%;}
.home .hero-slide[data-i="8"]{--hero-inset:24.9375% 14.8750% 7.3750% 16.7500%;--crop-aspect:1.010157;--source-width:146.252285%;--source-height:147.737765%;--source-left:-24.497258%;--source-top:-36.842105%;}
.home .hero-slide[data-i="9"]{--hero-inset:19.1684% 17.8704% 24.7465% 19.8148%;--crop-aspect:1.216998;--source-width:160.475483%;--source-height:178.300181%;--source-left:-31.797920%;--source-top:-34.177215%;}
.home .hero-slide[data-i="10"]{--hero-inset:5.0000% 16.6667% 4.8611% 16.5741%;--crop-aspect:1.110940;--source-width:149.791956%;--source-height:110.939908%;--source-left:-24.826630%;--source-top:-5.546995%;}
/* Equivalent crop for browsers without object-view-box. */
@supports not (object-view-box:inset(1%)){
 .home .hero-image-viewport{width:min(100%,calc(var(--plate-h) * var(--crop-aspect)));height:auto;aspect-ratio:var(--crop-aspect)}
 .home .hero-carousel .hero-slide img{position:absolute;width:var(--source-width);height:var(--source-height);left:var(--source-left);top:var(--source-top)}
}

/* Review 2 / small phones: keep the original copy intact; reclaim only outer
   hero spacing and caption leading, and use a closer source-white crop.
   The complete image + action row fits a 390x844 first viewport. */
@media(max-width:480px){
 .home .hero-v2{--plate-h:55.2svh;padding:0 var(--m)}
 .home .hero-v2 .hero-row{gap:0}
 .home .hero-v2 .hero-caption{grid-template-rows:16px 16px 44px;height:76px;margin-top:0}
 .home .hero-name,.home .hero-name .hero-brand,.home .hero-name .hero-model,.home .hero-reason{line-height:16px}
.home .hero-slide[data-i="1"]{--hero-inset:18.8750% 17.9007% 18.9375% 17.9944%;--crop-aspect:0.687437;--source-width:155.994152%;--source-height:160.804020%;--source-left:-28.070175%;--source-top:-30.351759%;}
.home .hero-slide[data-i="2"]{--hero-inset:19.5625% 24.3333% 19.1250% 23.5833%;--crop-aspect:0.637105;--source-width:192.000000%;--source-height:163.098879%;--source-left:-45.280000%;--source-top:-31.906218%;}
.home .hero-slide[data-i="3"]{--hero-inset:32.5455% 4.7273% 21.2727% 5.1818%;--crop-aspect:1.950787;--source-width:110.998991%;--source-height:216.535433%;--source-left:-5.751766%;--source-top:-70.472441%;}
.home .hero-slide[data-i="4"]{--hero-inset:10.0926% 16.4045% 6.8519% 16.0674%;--crop-aspect:0.670011;--source-width:148.086522%;--source-height:120.401338%;--source-left:-23.793677%;--source-top:-12.151616%;}
.home .hero-slide[data-i="5"]{--hero-inset:35.9333% 29.3333% 7.0000% 27.4000%;--crop-aspect:0.758178;--source-width:231.124807%;--source-height:175.233645%;--source-left:-63.328197%;--source-top:-62.967290%;}
.home .hero-slide[data-i="6"]{--hero-inset:26.9444% 6.3889% 26.3889% 6.2963%;--crop-aspect:1.871032;--source-width:114.528102%;--source-height:214.285714%;--source-left:-7.211029%;--source-top:-57.738095%;}
.home .hero-slide[data-i="7"]{--hero-inset:47.9520% 11.4885% 11.2887% 13.2867%;--crop-aspect:1.845588;--source-width:132.934927%;--source-height:245.343137%;--source-left:-17.662683%;--source-top:-117.647059%;}
.home .hero-slide[data-i="8"]{--hero-inset:26.7500% 16.6250% 7.8125% 18.6250%;--crop-aspect:0.989494;--source-width:154.440154%;--source-height:152.817574%;--source-left:-28.764479%;--source-top:-40.878701%;}
.home .hero-slide[data-i="9"]{--hero-inset:20.8925% 19.4444% 26.4706% 21.6667%;--crop-aspect:1.225434;--source-width:169.811321%;--source-height:189.980732%;--source-left:-36.792453%;--source-top:-39.691715%;}
.home .hero-slide[data-i="10"]{--hero-inset:6.5278% 17.9630% 6.3889% 18.0556%;--crop-aspect:1.102073;--source-width:156.295224%;--source-height:114.832536%;--source-left:-28.219971%;--source-top:-7.496013%;}
}

/* Hero v4: center only the service column within the full desktop hero.
   Compensate for v3's unequal outer padding; the bag panel stays in place. */
@media(min-width:961px){
 .home .hero-v2 .hero-copy{
  align-self:center;
  transform:translateY(calc((max(32px,calc(25svh - 162px)) - 12px) / 2));
 }
}
@media(max-width:960px){
 .home .hero-v2 .hero-guidance{white-space:nowrap}
}
@media(max-width:480px){
 .home .hero-v2{padding-top:32px}
}
