/* Desktop layout and scroll effects. Content remains visible without JavaScript. */
body::before{content:'';position:fixed;left:0;top:0;height:3px;width:var(--page-progress,0%);background:var(--pink);z-index:20;pointer-events:none}
.reveal{opacity:1;translate:none;transition:none}
.reveal.visible{animation:reveal-in .85s cubic-bezier(.2,.65,.3,1) both;animation-delay:var(--reveal-delay,0ms)}
.motion-enabled .reveal.visible{animation:reveal-in .85s cubic-bezier(.2,.65,.3,1) both!important;animation-delay:var(--reveal-delay,0ms)!important}
html:not(.motion-enabled) .reveal.visible{animation:none!important}
.motion-enabled .ribbon .ribbon-star{animation:ribbon-turn 16s linear infinite!important}
.motion-toggle{border:1px solid #765361;border-radius:20px;background:none;color:var(--pink);font-size:10px;padding:7px 10px;cursor:pointer;white-space:nowrap}
nav{align-items:center;gap:25px}
@keyframes reveal-in{from{opacity:.15;translate:0 48px}to{opacity:1;translate:0 0}}
.ribbon{padding:0;overflow:visible}
.ribbon>.ribbon-inner{min-width:0;max-width:1250px;margin:0 auto;padding:22px 32px;display:flex;align-items:center;justify-content:space-between;gap:24px;white-space:normal;transform:none;will-change:auto}
.ribbon .ribbon-phrase{margin:0;font-size:12px;line-height:1.6;letter-spacing:2px;word-spacing:normal;font-weight:700;text-align:center;color:#25171c;white-space:nowrap}
.ribbon .ribbon-star{margin:0;font-size:23px;line-height:1;flex-shrink:0;color:#25171c}
@keyframes ribbon-turn{to{rotate:360deg}}
@media(max-width:750px){.ribbon>.ribbon-inner{padding:18px 20px;gap:12px;flex-wrap:wrap;justify-content:center}.ribbon .ribbon-phrase{font-size:9px;letter-spacing:1px}.ribbon .ribbon-star{font-size:16px}}
@media(max-width:420px){.ribbon>.ribbon-inner{display:grid;grid-template-columns:1fr auto;padding:18px 24px;gap:12px 20px}.ribbon .ribbon-phrase{text-align:left}}
.hero{min-height:660px;padding-top:58px;padding-bottom:78px;align-items:center}
.hero-art{height:510px}
.hero-copy{padding-bottom:10px}
.orbit{width:min(33vw,420px);height:min(33vw,420px)}
.price{right:0;top:85px}
.handnote{bottom:5px;right:0}
.scroll{left:6%;bottom:25px}
.cards{grid-template-columns:repeat(6,minmax(0,1fr))}
.card{grid-column:span 2}
.card:nth-child(4){grid-column:2 / span 2;left:auto}
.card:nth-child(5){grid-column:4 / span 2;left:auto}
@media(min-width:1500px){.hero,header,.section,footer{max-width:1440px}.hero{padding-top:45px;padding-bottom:65px}h1{font-size:88px}.hero-art{height:500px}}
@media(max-width:999px){.hero{min-height:610px}.hero-art{height:450px}.orbit{width:300px;height:300px}.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.card,.card:nth-child(4),.card:nth-child(5){grid-column:auto;left:auto}.price{top:70px}.handnote{font-size:18px}}
@media(max-width:650px){.hero{padding-top:36px;padding-bottom:65px}.hero-art{height:420px}.hero-copy{padding-bottom:0}.cards{grid-template-columns:minmax(0,1fr)}.price{top:40px}.handnote{font-size:19px}.motion-enabled .reveal.visible{animation-delay:0ms!important}nav{gap:12px}.motion-toggle{font-size:8px;padding:6px}}
@media(prefers-reduced-motion:reduce){.reveal.visible{animation:none}.ribbon>div{transform:none}}
