/* Full-width film, fluid navigation, and progressive motion for the homepage. */
.ulp-home{--header-size:clamp(72px,6vw,88px)}
.ulp-home #topbar .nav{max-width:1600px;height:var(--header-size);padding-inline:clamp(20px,3vw,56px);gap:clamp(16px,2vw,32px)}
.ulp-home #topbar .logo img{width:clamp(145px,13vw,190px)!important}
.ulp-home #intro{margin-top:var(--header-size);width:100%}
.ulp-home #intro .logo-stage{width:100%;height:auto;min-height:0;aspect-ratio:16/9}
.ulp-home #intro video{width:100%;height:100%;object-fit:cover}
.ulp-home #topbar{background:rgba(255,255,255,.96);backdrop-filter:blur(16px)}
.ulp-home .nav ul{gap:clamp(12px,1.6vw,28px)}
.ulp-home .nav ul a{font-size:clamp(.8rem,.95vw,.95rem)}
.ulp-home .nav .cta{padding:10px clamp(14px,1.5vw,24px)}
.ulp-home .nav ul a:not(.cta){position:relative}
.ulp-home .nav ul a:not(.cta)::after{content:'';position:absolute;left:0;right:0;bottom:-7px;height:2px;background:linear-gradient(90deg,#174e78,#0799a3);transform:scaleX(0);transform-origin:left;transition:transform .25s ease}
.ulp-home .nav ul a[aria-current='location']::after,.ulp-home .nav ul a:not(.cta):hover::after{transform:scaleX(1)}
.ulp-home .reading-progress{position:absolute;bottom:0;left:0;width:100%;height:2px;transform:scaleX(0);transform-origin:left;background:linear-gradient(90deg,#174e78,#09acb1);pointer-events:none}
.ulp-home .edge-reveal{transition:translate .8s cubic-bezier(.22,1,.36,1);transition-delay:var(--edge-delay,0ms)}
.ulp-home .edge-reveal.edge-wait{translate:0 26px}
.ulp-home .edge-reveal:focus-within{translate:none}
.ulp-home .shop-card>img,.ulp-home .hero-cover img{transition:transform .55s cubic-bezier(.22,1,.36,1),filter .55s ease}
.ulp-home .shop-card,.ulp-home .explore-card{border-color:#d5e6eb}
.ulp-home .hero-actions{background:linear-gradient(110deg,#fff,#edf8f9,#fff);background-size:200% 100%;animation:ulp-welcome 3s ease-out 1}
@keyframes ulp-welcome{from{background-position:100% 0}to{background-position:0 0}}
@media(min-width:1041px){.ulp-home #menuBtn{display:none}.ulp-home .nav ul,.ulp-home .nav ul.open{display:flex;position:static;flex-direction:row;gap:clamp(12px,1.6vw,28px);padding:0;background:transparent;border:0;box-shadow:none;max-height:none;overflow:visible}.ulp-home .nav ul li{width:auto;text-align:initial}.ulp-home .nav ul a{display:inline;padding:0;font-size:clamp(.8rem,.95vw,.95rem)}.ulp-home .nav ul .cta{display:inline-block;margin:0;padding:10px clamp(14px,1.5vw,24px)}}
@media(max-width:1040px){.ulp-home .nav ul{top:var(--header-size);max-height:calc(100dvh - var(--header-size));gap:0}.ulp-home .nav ul a{font-size:1rem}.ulp-home .nav ul a::after{display:none}.ulp-home .nav ul.open{animation:ulp-menu .2s ease-out}.ulp-home .video-toggle{font-size:.7rem}}
@keyframes ulp-menu{from{opacity:.7;translate:0 -8px}to{opacity:1;translate:0 0}}
@media(hover:hover) and (pointer:fine){.ulp-home .shop-card:hover>img{transform:translateY(-7px) rotate(-1deg);filter:drop-shadow(12px 18px 12px #16374630)}.ulp-home .hero-cover:hover img{transform:translateY(-7px) rotate(-.7deg)}.ulp-home .explore-card:hover{transform:translateY(-7px)}}
@media(prefers-reduced-motion:reduce){.ulp-home .edge-reveal.edge-wait{translate:none}.ulp-home .hero-actions,.ulp-home .nav ul.open{animation:none}.ulp-home .shop-card:hover>img,.ulp-home .hero-cover:hover img,.ulp-home .explore-card:hover{transform:none}.ulp-home .reading-progress{display:none}}
@media print{.ulp-home .edge-reveal.edge-wait{translate:none}.ulp-home .reading-progress{display:none}}
