/* Chitrali Saughat: pointer and scroll polish. Content stays usable without JS. */
html{scroll-padding-top:110px}
.valley-cursor{position:fixed;inset:0;z-index:1000;pointer-events:none;visibility:hidden;opacity:0;transition:opacity 160ms ease;contain:layout style}
.valley-cursor.visible{visibility:visible;opacity:1}
.cursor-dot,.cursor-ring{position:absolute;left:0;top:0;display:grid;place-items:center;will-change:transform}
.cursor-dot:before{content:'';width:6px;height:6px;border-radius:50%;background:var(--pine);box-shadow:0 0 0 1px #fff9;transition:background 180ms ease,scale 180ms ease}
.cursor-ring:before{content:'';position:absolute;inset:-18px;border:1px solid #c58d23;border-radius:50%;background:#df9e1008;transition:inset 220ms cubic-bezier(.22,1,.36,1),background 180ms ease,border-color 180ms ease,scale 180ms ease}
.cursor-label{position:absolute;color:var(--deep);font-size:8px;font-weight:800;letter-spacing:.08em;opacity:0;transition:opacity 140ms ease;white-space:nowrap}
.valley-cursor.over-link .cursor-ring:before{inset:-24px;background:#df9e101c;border-color:var(--gold)}
.valley-cursor.over-card .cursor-ring:before{inset:-31px;background:#e7b449ef;border-color:#e7b449;box-shadow:0 4px 15px #022c2214}
.valley-cursor.over-card .cursor-label{opacity:1}
.valley-cursor.over-card .cursor-dot:before{scale:0}
.valley-cursor.on-dark .cursor-dot:before{background:#f0c765;box-shadow:none}
.valley-cursor.on-dark .cursor-ring:before{border-color:#ecc96e}
.valley-cursor.pressed .cursor-ring:before{scale:.83}
.valley-cursor.pressed .cursor-dot:before{scale:.7}
.valley-cursor.over-card.pressed .cursor-dot:before{scale:0}
@media(hover:hover) and (pointer:fine){
  html.motion-enabled.cursor-enhanced,html.motion-enabled.cursor-enhanced a,html.motion-enabled.cursor-enhanced button,html.motion-enabled.cursor-enhanced summary,html.motion-enabled.cursor-enhanced .hero-track{cursor:none}
  html.motion-enabled.cursor-enhanced input,html.motion-enabled.cursor-enhanced textarea,[contenteditable=true]{cursor:text}
  html.motion-enabled.cursor-enhanced select,html.motion-enabled.cursor-enhanced option{cursor:auto}
}
.scroll-progress{position:fixed;z-index:50;left:0;right:0;top:0;height:2px;background:linear-gradient(90deg,var(--gold),#f2d48b,var(--pine));transform-origin:left;transform:scaleX(0);pointer-events:none}
@keyframes valley-progress{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes valley-reveal{from{opacity:0;translate:0 28px}to{opacity:1;translate:0 0}}
@keyframes valley-parallax{from{translate:0 0}to{translate:0 58px}}
@media all{
  .product-card{transition:box-shadow 260ms ease,border-color 260ms ease}
  .product-card:hover{border-color:#b7c8bb;box-shadow:0 7px 20px #064e3b0b}
  .campaign>img{transition:scale 650ms cubic-bezier(.22,1,.36,1)}
  .campaign:hover>img{scale:1.035}
  .btn{transition:background 180ms ease,translate 240ms cubic-bezier(.22,1,.36,1)}
  .btn:hover{translate:0 -2px}.btn:active{translate:0 0}
  .motion-fallback{opacity:0;translate:0 24px;transition:opacity 650ms ease,translate 750ms cubic-bezier(.22,1,.36,1);transition-delay:var(--reveal-delay,0ms)}
  .motion-fallback.is-revealed{opacity:1;translate:0 0}
  .motion-fallback:focus-within{opacity:1!important}
  @supports(animation-timeline:scroll()){
    .scroll-progress{animation:valley-progress auto linear both;animation-timeline:scroll(root block)}
  }
  @supports((animation-timeline:view()) and (animation-range:entry)){
    .motion-reveal{animation:valley-reveal auto cubic-bezier(.16,1,.3,1) both;animation-timeline:view(block);animation-range:entry var(--reveal-start,0%) entry var(--reveal-end,80%)}
    .motion-reveal:focus-within{opacity:1!important}
    .hero{view-timeline:--valley-hero block}
    .hero-art{animation:valley-parallax auto linear both;animation-timeline:--valley-hero;animation-range:exit 0% exit 100%}
  }
}
@media(max-width:640px){html{scroll-padding-top:120px}.valley-cursor{display:none}}
html.motion-enabled .hero-slide{transition:opacity .5s ease}
html.motion-enabled .hero-track{scroll-behavior:smooth}
