/* Motion study: retain the identity and give the product more room. */
.hero-title-line{display:block;overflow:hidden;padding-bottom:.08em;margin-bottom:-.08em}
.hero-title-line>span{display:block}
.hero-visual{height:460px;isolation:isolate}
.hero-visual>img{object-position:50% 48%}
.hero-visual .motion-outgoing{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:1}
.hero-visual .zoom-button,.hero-visual figcaption{z-index:2}
.hero-types{position:relative}
.type-indicator{display:none;position:absolute;bottom:-1px;left:0;height:2px;background:var(--brand);pointer-events:none}
.motion-ready .type-indicator{display:block}
.motion-ready .hero-types button[aria-pressed=true]{border-color:transparent}
#hero-price{display:inline-block}
.hero-price-wrap{overflow:hidden}
.hero-visual:has(#hero-zoom[aria-pressed=true]){cursor:zoom-out}
.motion-cart-chip{position:fixed;width:60px;height:60px;object-fit:cover;border-radius:50%;pointer-events:none;z-index:20;border:2px solid var(--paper)}
dialog.cart-dialog{position:fixed;inset:0 0 0 auto;margin:0;height:100dvh;max-height:100dvh;width:min(480px,calc(100% - 12px));border-radius:0;border-top:0;border-right:0;border-bottom:0;padding:30px 26px}
.cart-dialog .dialog-header{position:sticky;top:-30px;padding-top:16px;padding-bottom:16px;margin-top:-16px;background:var(--paper);z-index:1;border-bottom:1px solid var(--line)}
.mobile-purchase{display:none}
@media(max-width:600px){body:has(.mobile-purchase:not([hidden])) .toast{bottom:calc(94px + env(safe-area-inset-bottom))}}
@media(max-width:1100px){.hero-visual{height:420px}}
@media(max-width:800px){.hero-visual{height:385px}}
@media(max-width:600px){.hero-visual{height:340px}.hero-copy{padding-bottom:20px}.hero-purchase{padding-top:20px}dialog.cart-dialog{padding:24px 20px}.cart-dialog .dialog-header{top:-24px}.mobile-purchase{position:fixed;z-index:6;inset:auto 0 0;display:flex;align-items:center;justify-content:space-between;gap:12px;background:var(--paper);border-top:1px solid var(--line);padding:10px 16px calc(10px + env(safe-area-inset-bottom))}.mobile-purchase>div{display:grid;gap:1px}.mobile-purchase span{font-size:11px;color:var(--muted)}.mobile-purchase strong{font-size:18px;font-weight:600;font-variant-numeric:tabular-nums}.mobile-purchase .button{font-size:12px;padding:10px 15px;min-height:44px}body:has(dialog[open]) .mobile-purchase{display:none}}
@media(max-width:360px){.hero-visual{height:295px}}
@media(prefers-reduced-motion:reduce){.motion-cart-chip,.motion-outgoing{display:none!important}}
