.add-to-cart{--speed: 1;--text-speed: .26;--base-delay: calc(var(--text-speed) * .25);--tick-speed: .12;--ring-speed: .2;--check-speed: .1;--burst-speed: .32;--step-delay: 4;--btn-bg: #111;--btn-color: #fff;--btn-hover: rgba(255, 255, 255, .08);--cart-bg: #1a6b3c;--cart-color: #fff;position:relative;display:inline-flex;align-items:center;justify-content:center;border:none;border-radius:.875rem;cursor:pointer;font-family:inherit;font-size:.75rem;font-weight:600;letter-spacing:.01em;line-height:1;min-height:38px;padding:.55rem 1.1rem;-webkit-user-select:none;-moz-user-select:none;user-select:none;overflow:hidden;transition:scale .1s ease-out,background-color .4s ease,color .4s ease;background:var(--btn-bg);color:var(--btn-color)}.add-to-cart.atc--full{width:100%;min-height:48px;padding:.75rem 1.75rem;font-size:.9rem;font-weight:500}.add-to-cart:active{scale:.97}.add-to-cart:after{content:"";border-radius:inherit;position:absolute;inset:0;opacity:0;background:var(--btn-hover);transition:opacity .2s ease-out;pointer-events:none}.add-to-cart:hover:after{opacity:1}.add-to-cart:disabled{opacity:.65;cursor:not-allowed}.add-to-cart:disabled:hover:after{opacity:0}.add-to-cart:focus-visible{outline:2px solid rgba(255,255,255,.45);outline-offset:2px}.add-to-cart[data-state=added]{background:var(--cart-bg);color:var(--cart-color)}.add-to-cart .atc-sizer{visibility:hidden;pointer-events:none}.add-to-cart .atc-sizer-row{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;white-space:nowrap}.add-to-cart .btn-label{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:.4rem;pointer-events:none;white-space:nowrap;will-change:transform,opacity,filter}.add-to-cart .label-add{transition:opacity .22s ease,translate .22s ease,filter .22s ease}.add-to-cart[data-state=adding] .label-add,.add-to-cart[data-state=added] .label-add{opacity:0;translate:0 -8px;filter:blur(3px)}.add-to-cart .label-check{opacity:0;transition:opacity .18s ease}.add-to-cart[data-state=adding] .label-check{opacity:1}.add-to-cart .label-cart{opacity:0;translate:0 10px;filter:blur(3px);transition:opacity .3s ease .05s,translate .3s ease .05s,filter .3s ease .05s}.add-to-cart[data-state=added] .label-cart{opacity:1;translate:0 0;filter:blur(0)}.add-to-cart .checkmark-burst{width:28px;height:28px;overflow:visible!important}.add-to-cart.atc--full .checkmark-burst{width:36px;height:36px}.add-to-cart .checkmark-burst .burst{rotate:20deg}.add-to-cart .checkmark-burst .check{opacity:.15;scale:.3;filter:blur(2px)}.add-to-cart .checkmark-burst :is(.ring,.wiggle,.line,.check,.burst,.tick){transform-box:fill-box;transform-origin:center}.add-to-cart .checkmark-burst :is(.wiggle,.line){stroke-dasharray:1.5 1.5;stroke-dashoffset:-1.5;translate:0 -180%}.add-to-cart .checkmark-burst .burst>g{transform-origin:center;rotate:calc(var(--index) * (360 / 8) * 1deg)}.add-to-cart[data-state=adding] .checkmark-burst .check{transition:opacity calc(var(--check-speed) * 1s * var(--speed)),scale calc(var(--check-speed) * 1s * var(--speed)),filter calc(var(--check-speed) * 1s * var(--speed));transition-timing-function:ease-in-out;transition-delay:calc(var(--base-delay) * 1s * var(--speed));opacity:1;scale:1;filter:blur(0)}.add-to-cart[data-state=adding] .checkmark-burst .tick{scale:1.5;transition:scale calc(var(--tick-speed) * 1s * var(--speed)) ease-out;transition-delay:calc((var(--base-delay) + (var(--check-speed) * (var(--step-delay) * 1.1))) * 1s * var(--speed))}.add-to-cart[data-state=adding] .checkmark-burst .ring{transition:opacity calc(var(--ring-speed) * 1s * var(--speed)),scale calc(var(--ring-speed) * 1s * var(--speed)),filter calc(var(--ring-speed) * 1s * var(--speed));transition-delay:calc((var(--base-delay) + (var(--check-speed) * var(--step-delay))) * 1s * var(--speed));transition-timing-function:ease-in-out;opacity:0;scale:1;filter:blur(1px)}.add-to-cart[data-state=adding] .checkmark-burst :is(.wiggle,.line){transition:stroke-dashoffset calc(var(--burst-speed) * 1s * var(--speed)) ease-out;transition-delay:calc((var(--base-delay) + (var(--check-speed) * var(--step-delay))) * 1s * var(--speed));stroke-dashoffset:1.5}.add-to-cart .icon-cart{width:18px;height:18px;flex-shrink:0}@media(max-width:639px){.add-to-cart{min-height:40px;padding:0 1rem;font-size:.78rem;border-radius:.625rem}.add-to-cart.atc--full{min-height:44px;font-size:.82rem}.add-to-cart .checkmark-burst{width:26px;height:26px}.add-to-cart .icon-cart{width:15px;height:15px}}.btn-full,.card-full .add-to-cart{width:100%;border-radius:0 0 .875rem .875rem;border-top-left-radius:0;border-top-right-radius:0}@media(max-width:639px){.btn-full,.card-full .add-to-cart{min-height:44px;font-size:.82rem;border-radius:0 0 .75rem .75rem}}.add-to-cart[data-compact=icon]{width:40px!important;height:40px!important;padding:0!important;border-radius:50%!important}.add-to-cart[data-compact=icon] .atc-sizer,.add-to-cart[data-compact=icon] .btn-text{display:none}.add-to-cart[data-compact=icon] .label-add,.add-to-cart[data-compact=icon] .label-cart{gap:0}.add-to-cart[data-compact=icon] .label-cart .cart-text{display:none}.add-to-cart[data-mode=booking]{--btn-bg: #111;--cart-bg: #1a6b3c;--text-speed: .26;font-size:.9rem;font-weight:600;min-height:48px;padding:.75rem 1.75rem}.add-to-cart[data-mode=booking] .atc-sizer-row,.add-to-cart[data-mode=booking] .btn-label{gap:.5rem}.add-to-cart[data-mode=booking] .atc-sizer .icon-cart,.add-to-cart[data-mode=booking] .label-add>svg,.add-to-cart[data-mode=booking] .label-cart .icon-cart{display:none}.add-to-cart[data-mode=booking] .label-add{opacity:1;transition:opacity calc(var(--text-speed) * 1s) ease,translate calc(var(--text-speed) * 1s) ease}.add-to-cart[data-mode=booking][data-state=adding] .label-add,.add-to-cart[data-mode=booking][data-state=added] .label-add{opacity:0;translate:0 -8px;filter:none}.add-to-cart[data-mode=booking] .label-check{opacity:0;translate:0 10px;transition:opacity calc(var(--text-speed) * 1s) ease,translate calc(var(--text-speed) * 1s) ease}.add-to-cart[data-mode=booking][data-state=adding] .label-check{opacity:1;translate:0 0}.add-to-cart[data-mode=booking] .label-cart{opacity:0;translate:0 10px;filter:none;transition:opacity calc(var(--text-speed) * 1s) ease,translate calc(var(--text-speed) * 1s) ease}.add-to-cart[data-mode=booking][data-state=added] .label-cart{opacity:1;translate:0 0;filter:none}.add-to-cart[data-mode=booking] .booking-checkmark-burst{width:28px;height:28px}.add-to-cart[data-mode=booking] .booking-check{stroke-dasharray:20;stroke-dashoffset:20;transition:stroke-dashoffset .3s ease .2s}.add-to-cart[data-mode=booking][data-state=adding] .booking-check{stroke-dashoffset:0}.add-to-cart[data-mode=booking] .booking-burst line{opacity:0;transform-box:fill-box;transform-origin:center}.add-to-cart[data-mode=booking][data-state=adding] .booking-burst line{animation:atc-book-burst-effect .5s forwards .3s}@keyframes atc-book-burst-effect{0%{opacity:1;scale:.5}to{opacity:0;scale:1.4}}@media(prefers-reduced-motion:reduce){.add-to-cart,.btn-label,.label-add,.label-check,.label-cart,.checkmark-burst *{transition-duration:.01ms!important;animation-duration:.01ms!important}}
