/* Motion is progressive enhancement. Without JS, this is ordinary document flow. */
.hero-scene{position:relative;background:var(--banner)}
.hero-motion-desktop .hero-scene{height:calc(max(620px,calc(100svh - 86px)) + 55svh)}
.hero-motion-desktop .hero-scene .hero-banner{position:sticky;top:86px;height:calc(100svh - 86px);max-height:none;min-height:620px}
.hero-banner .hero-visual{transform:none;transform-origin:70% 48%}
.hero-banner .hero-visual img{transform-origin:62% 48%}
.hero-banner h1 span{transform-origin:left center}
.hero-banner .banner-footer{border-top:0;bottom:6px}
.hero-seam{height:84px;margin-top:-1px;background:var(--banner);overflow:hidden;position:relative;z-index:2;pointer-events:none}
.hero-seam svg{display:block;width:100%;height:100%}.seam-fill{fill:var(--paper)}.seam-thread{fill:none;stroke:#fffaf2;stroke-opacity:.65;stroke-width:1;vector-effect:non-scaling-stroke}
.collection-intro{border:0;padding-top:27px;padding-bottom:55px;position:relative;display:grid;grid-template-columns:1fr auto;gap:20px}
.collection-intro:after{content:'';position:absolute;bottom:5px;left:6%;right:6%;height:1px;background:linear-gradient(to right,transparent,#bd929c 26%,#bd929c 74%,transparent)}
.collection-intro p{font-size:24px;line-height:1.9;text-wrap:balance}.collection-intro>span{align-self:center}
.sizes-section{position:relative;margin-top:18px}
.sizes-section:before{content:'';position:absolute;left:0;right:0;top:-17px;height:18px;background:radial-gradient(circle at 16px 19px,var(--cream) 18px,transparent 18.7px) 0 0/32px 22px repeat-x;pointer-events:none}
.sizes-section:after{content:'';position:absolute;left:0;right:0;bottom:-17px;height:18px;background:radial-gradient(circle at 16px -1px,var(--cream) 18px,transparent 18.7px) 0 0/32px 22px repeat-x;pointer-events:none}
.ribbon-divider{display:flex;align-items:center;justify-content:center;gap:23px;padding:67px 6% 0;background:var(--paper)}
.ribbon-divider svg{width:74px;height:54px;flex:none;fill:none;stroke:var(--pink);stroke-width:1.2;stroke-linecap:round;stroke-linejoin:round}
.ribbon-rule{height:1px;width:min(34vw,440px);background:linear-gradient(90deg,transparent,#bd929c);transform-origin:right center}.ribbon-rule:last-child{background:linear-gradient(90deg,#bd929c,transparent);transform-origin:left center}
.policy-section{padding-top:65px}
.inquiry-section{position:relative;margin-top:40px}
.inquiry-section:before{content:'';position:absolute;top:-38px;left:0;width:100%;height:39px;pointer-events:none;background:var(--rose);clip-path:ellipse(65% 100% at 50% 100%)}
.inquiry-section:after{content:'';position:absolute;top:-29px;left:6%;right:6%;height:25px;border-top:1px solid #bf8795;border-radius:50% 50% 0 0/100% 100% 0 0;pointer-events:none;opacity:.6}
@media(max-width:1050px){.hero-motion-desktop .hero-scene .hero-banner{top:80px}}
@media(max-width:700px){
 .hero-seam{height:49px;background:#c6c8c5}.hero-banner .banner-footer{bottom:4px}
 .hero-banner .hero-visual img{transform-origin:50% 53%}
 .collection-intro{display:block;padding:21px 7% 35px}.collection-intro p{font-size:17px;line-height:1.9}.collection-intro:after{left:7%;right:7%}
 .sizes-section:before{height:13px;top:-12px;background-size:24px 18px;background-image:radial-gradient(circle at 12px 15px,var(--cream) 14px,transparent 14.7px)}
 .sizes-section:after{height:13px;bottom:-12px;background-size:24px 18px;background-image:radial-gradient(circle at 12px -1px,var(--cream) 14px,transparent 14.7px)}
 .ribbon-divider{padding-top:44px;gap:17px}.ribbon-divider svg{width:58px;height:43px}.policy-section{padding-top:39px}
 .inquiry-section{margin-top:28px}.inquiry-section:before{top:-26px;height:27px;clip-path:ellipse(75% 100% at 50% 100%)}.inquiry-section:after{top:-19px;height:18px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}.hero-scene{height:auto!important}.hero-scene .hero-banner{position:relative!important;top:0!important}.hero-banner h1 span,.hero-banner .hero-visual,.hero-banner .hero-visual img,.hero-banner .hero-english,.hero-banner .hero-description,.hero-banner .eyebrow,.hero-banner .hero-actions{transform:none!important;opacity:1!important;visibility:visible!important}}
@media print{.hero-scene{height:auto!important}.hero-scene .hero-banner{position:relative!important;top:0!important}.hero-seam,.ribbon-divider{display:none}}
