/* Home-page motion stays light so the interface remains usable and calm. */
#home.active .hero>div:first-child{animation:homeReveal .65s both}.hero-art .bin{animation:floatBin 4.2s ease-in-out infinite}.hero-art .circle-one{animation:driftOne 7s ease-in-out infinite}.hero-art .circle-two{animation:driftTwo 8s ease-in-out infinite}.hero-art .float-card{animation:cardFloat 4s ease-in-out infinite}.hero-art .pickups{animation-delay:-1.7s}.booking-card .status-dot{animation:statusPulse 1.7s ease-in-out infinite}.booking-card .progress i{animation:progressShimmer 2.4s ease-in-out infinite}.service-card.featured{animation:homeReveal .5s both}.service-card.featured:nth-child(2){animation-delay:.07s}.service-card.featured:nth-child(3){animation-delay:.14s}.service-card.featured:nth-child(4){animation-delay:.21s}.rewards-card{animation:homeReveal .6s .18s both}.tips-card{animation:homeReveal .6s .26s both}@keyframes homeReveal{from{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}@keyframes floatBin{0%,100%{transform:rotate(4deg) translateY(0)}50%{transform:rotate(1deg) translateY(-11px)}}@keyframes driftOne{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(-13px,9px) scale(1.04)}}@keyframes driftTwo{0%,100%{transform:translate(0,0)}50%{transform:translate(-11px,-8px)}}@keyframes cardFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}@keyframes statusPulse{0%,100%{box-shadow:0 0 0 0 #39c66b55}50%{box-shadow:0 0 0 6px #39c66b00}}@keyframes progressShimmer{0%,100%{filter:brightness(1)}50%{filter:brightness(1.25)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important}}@media(max-width:750px){.logo-only,.logo-only img{width:50px;height:50px}.topbar{height:68px}}

/* Fast, polished interaction motion and responsive brand sizing. */
.topbar .brand.logo-only{display:flex;align-items:center;justify-content:flex-start;width:auto;height:50px;flex:0 0 auto;overflow:hidden}
.topbar .brand.logo-only img{display:block;width:auto!important;height:46px!important;max-width:160px;object-fit:contain;object-position:left center}
input,textarea,select,.input-wrap,.choice,.category-price-line,.photo-upload span{transition:border-color .14s ease,box-shadow .14s ease,background-color .14s ease,color .14s ease,transform .12s ease}
input:hover,textarea:hover,select:hover,.input-wrap:hover{border-color:#a9b49d}
input:focus,textarea:focus,select:focus{border-color:#586246;outline:0;box-shadow:0 0 0 3px #5862461f;transform:translateY(-1px)}
.input-wrap:focus-within{border-color:#586246;box-shadow:0 0 0 3px #5862461f;transform:translateY(-1px)}
.input-wrap input:focus{box-shadow:none;transform:none}
button,.button,[role="button"]{transition:transform .12s ease,box-shadow .16s ease,background-color .14s ease,border-color .14s ease,color .14s ease}
button:hover,.button:hover,[role="button"]:hover{transition-duration:.12s}
button:active,.button:active,[role="button"]:active{transform:translateY(1px) scale(.985)!important;box-shadow:none!important}
button:focus-visible,.button:focus-visible,[role="button"]:focus-visible{outline:2px solid #586246;outline-offset:3px}
.choice.selected,.category-price-line.selected{animation:quickSelect .18s ease-out both}
@keyframes quickSelect{from{transform:scale(.985)}to{transform:scale(1)}}
@media(max-width:750px){
  .topbar .brand.logo-only{height:44px;max-width:132px}
  .topbar .brand.logo-only img{height:40px!important;max-width:132px}
}
@media(prefers-reduced-motion:reduce){
  input,textarea,select,.input-wrap,.choice,.category-price-line,.photo-upload span,button,.button,[role="button"]{transition:none!important}
  .choice.selected,.category-price-line.selected{animation:none!important}
}
/* Premium fly-to-cart interaction */
.floating-cart{position:fixed;left:50%;bottom:84px;z-index:19;width:min(370px,calc(100vw - 32px));min-height:68px;transform:translateX(-50%);display:flex;align-items:center;gap:13px;padding:9px 13px 9px 10px;border:1px solid #ffffff4d;border-radius:22px;background:linear-gradient(135deg,#34761f,#4fae35);color:#fff;box-shadow:0 18px 45px #214d2580,0 2px 0 #ffffff2b inset;cursor:pointer;text-align:left;will-change:transform,filter;transition:opacity .2s ease,visibility .2s ease}
.floating-cart[hidden]{display:none}.floating-cart-preview{display:grid;place-items:center;flex:0 0 49px;height:49px;border-radius:15px;background:#fff;color:#337521;font-size:20px;letter-spacing:-7px;padding-right:7px;box-shadow:0 7px 15px #173e2133}.floating-cart-copy{display:block;flex:1;min-width:0}.floating-cart-copy strong,.floating-cart-copy small{display:block}.floating-cart-copy strong{font:800 15px Manrope}.floating-cart-copy small{margin-top:3px;color:#e9f9e5;font-size:12px}.floating-cart-arrow{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:#ffffff20;font-size:28px;line-height:1}.floating-cart-badge{position:absolute;top:-8px;right:-6px;display:grid;place-items:center;min-width:25px;height:25px;padding:0 6px;border:3px solid #fff;border-radius:99px;background:#172f12;color:#fff;font:800 11px Manrope;will-change:transform}.floating-cart.arrive{animation:cart-receive .48s cubic-bezier(.22,1.55,.36,1)}.floating-cart.arrive .floating-cart-badge{animation:badge-pop .48s cubic-bezier(.22,1.55,.36,1)}
.fly-cart-clone{position:fixed;z-index:9999;display:grid;place-items:center;margin:0;border:0;border-radius:18px;background:linear-gradient(145deg,#eaf8e7,#fff);box-shadow:0 14px 28px #172f1238;color:#347a24;font:800 28px Manrope;pointer-events:none;will-change:transform,opacity;transform-origin:center}.add-ripple{position:absolute;left:var(--ripple-x,50%);top:var(--ripple-y,50%);width:14px;height:14px;border-radius:50%;background:#fff6;pointer-events:none;transform:translate(-50%,-50%) scale(0);animation:add-ripple .55s ease-out forwards}.button.add-pressed{position:relative;overflow:hidden;animation:add-press .35s cubic-bezier(.2,.8,.2,1)}
@keyframes cart-receive{0%{transform:translateX(-50%) scale(1);filter:drop-shadow(0 0 0 #76d85800)}45%{transform:translateX(-50%) translateY(-9px) scale(1.035);filter:drop-shadow(0 0 12px #8cef6e)}100%{transform:translateX(-50%) scale(1);filter:drop-shadow(0 0 0 #76d85800)}}@keyframes badge-pop{0%,100%{transform:scale(1)}50%{transform:scale(1.3)}}@keyframes add-press{0%,100%{transform:scale(1)}35%{transform:scale(.95)}}@keyframes add-ripple{to{transform:translate(-50%,-50%) scale(18);opacity:0}}
@media(min-width:751px){.floating-cart{bottom:28px;left:auto;right:30px;transform:none}.floating-cart.arrive{animation-name:cart-receive-desktop}@keyframes cart-receive-desktop{0%{transform:scale(1);filter:drop-shadow(0 0 0 #76d85800)}45%{transform:translateY(-9px) scale(1.035);filter:drop-shadow(0 0 12px #8cef6e)}100%{transform:scale(1);filter:drop-shadow(0 0 0 #76d85800)}}}
@media(prefers-reduced-motion:reduce){.fly-cart-clone,.add-ripple{display:none!important}.button.add-pressed{animation:none}.floating-cart.arrive,.floating-cart.arrive .floating-cart-badge{animation-duration:.18s;animation-iteration-count:1}}
