/* Hallmark · component: concierge and cart controls · genre: editorial · theme: Luxury Industrial
 * states: default · hover · focus · active · disabled · loading · error · success
 * contrast: pass (46–50) · pre-emit critique: P4 H5 E5 S5 R4 V4
 */
html,body{overflow-x:clip}
#qToggle.ti-cart-float{position:fixed!important;top:5.15rem!important;right:1.25rem!important;left:auto!important;bottom:auto!important;z-index:1200;display:inline-flex;align-items:center;gap:.55rem;min-height:46px;padding:.55rem .9rem!important;border:1px solid color-mix(in srgb,var(--white) 34%,transparent);border-radius:var(--r-full);background:var(--gray-900)!important;color:var(--white)!important;box-shadow:var(--shadow-lg);font-family:var(--font-d);font-size:.76rem;font-weight:700;letter-spacing:.03em;transform:translateZ(0);animation:ti-cart-arrive .55s var(--ease-out) both}
#qToggle.ti-cart-float:hover,#qToggle.ti-cart-float.is-hover{background:var(--blue)!important;transform:translateY(-3px)}
#qToggle.ti-cart-float:active,#qToggle.ti-cart-float.is-active{transform:translateY(0)}
#qToggle.ti-cart-float:focus-visible,.ti-chat-launcher:focus-visible,.ti-chat-option:focus-visible,.ti-chat-next:focus-visible,.ti-chat-send:focus-visible,.ti-chat-close:focus-visible{outline:3px solid var(--blue-light);outline-offset:3px}
#qToggle.ti-cart-float svg{width:18px;height:18px}
.wa-float{display:none!important}
.ti-chat{position:fixed;left:1.25rem;right:auto;bottom:1.25rem;z-index:1250;font-family:var(--font-d);color:var(--gray-800)}
.ti-chat-launcher{width:60px;height:60px;display:grid;place-items:center;border-radius:50%;border:1px solid color-mix(in srgb,var(--white) 38%,transparent);background:var(--blue);color:var(--white);box-shadow:var(--shadow-blue);transition:transform var(--dur-f) var(--ease-out),background var(--dur-f) var(--ease-out);animation:ti-chat-breathe 3.4s var(--ease-out) infinite}
.ti-chat-launcher:hover,.ti-chat-launcher.is-hover{background:var(--blue-dark);transform:translateY(-3px) scale(1.03)}
.ti-chat-launcher:active,.ti-chat-launcher.is-active{transform:translateY(0) scale(.98)}
.ti-chat-launcher svg{width:26px;height:26px;stroke:currentColor}
  .ti-chat-nudge{position:absolute;left:0;right:auto;bottom:76px;width:min(344px,calc(100vw - 2.5rem));padding:1rem 1.05rem;border:1px solid color-mix(in srgb,var(--blue-light) 54%,transparent);border-radius:18px;background:linear-gradient(135deg,rgba(8,22,44,.98),rgba(10,45,82,.97));color:var(--white);box-shadow:0 18px 46px rgba(0,18,43,.38),0 0 0 1px rgba(96,170,255,.13),inset 0 1px 0 rgba(255,255,255,.09);font-family:var(--font-d);line-height:1.45;text-align:left;overflow:hidden;opacity:0;pointer-events:none;transform:translate3d(-18px,12px,0) scale(.96);transition:opacity .42s var(--ease-out),transform .42s var(--ease-out)}
  .ti-chat-nudge::before{content:'';position:absolute;inset:0;background:linear-gradient(110deg,transparent 18%,rgba(96,170,255,.12) 47%,transparent 70%);transform:translateX(-115%);animation:ti-nudge-scan 4.5s ease-in-out 1.1s infinite;pointer-events:none}.ti-chat-nudge::after{content:'';position:absolute;inset:auto -20% 0;width:70%;height:2px;background:var(--blue-light);box-shadow:0 0 22px 5px rgba(96,170,255,.5);opacity:.8}.ti-chat-nudge.is-visible{opacity:1;pointer-events:auto;transform:translate3d(0,0,0) scale(1)}
  .ti-chat-nudge__signal,.ti-chat-nudge__copy,.ti-chat-nudge__cta,.ti-chat-nudge strong{position:relative;z-index:1;display:block}.ti-chat-nudge__signal{margin-bottom:.62rem;font-family:var(--font-m);font-size:.55rem;letter-spacing:.14em;text-transform:uppercase;color:#8dc3ff}.ti-chat-nudge__signal i{display:inline-block;width:7px;height:7px;margin-right:.38rem;border-radius:50%;background:#67e8a8;box-shadow:0 0 0 4px rgba(103,232,168,.14),0 0 12px rgba(103,232,168,.9);animation:ti-signal 1.7s ease-in-out infinite}.ti-chat-nudge strong{font-size:1.05rem;line-height:1.26;letter-spacing:-.02em}.ti-chat-nudge__copy{margin-top:.48rem;color:rgba(255,255,255,.7);font-size:.78rem;line-height:1.5}.ti-chat-nudge__cta{margin-top:.78rem;padding:0;border:0;background:none;color:#b9d9ff;text-align:left;font-family:inherit;font-size:.72rem;font-weight:800;letter-spacing:.02em;cursor:pointer}.ti-chat-nudge__cta b{display:inline-block;margin-left:.25rem;font-size:1rem;transition:transform var(--dur-f) var(--ease-out)}.ti-chat-nudge__cta:hover b{transform:translateX(4px)}.ti-chat-nudge__close{position:absolute;z-index:3;top:.55rem;right:.55rem;width:28px;height:28px;display:grid;place-items:center;border-radius:50%;color:rgba(255,255,255,.62);transition:background var(--dur-f),color var(--dur-f)}.ti-chat-nudge__close:hover{background:rgba(255,255,255,.12);color:var(--white)}.ti-chat-nudge__close svg{width:15px;height:15px}
.ti-chat-panel{position:absolute;left:0;right:auto;bottom:72px;width:min(410px,calc(100vw - 2.5rem));max-height:min(680px,calc(100dvh - 7rem));display:flex;flex-direction:column;border:1px solid color-mix(in srgb,var(--blue) 18%,var(--gray-200));border-radius:var(--r-lg);background:var(--white);box-shadow:var(--shadow-xl);overflow:hidden;opacity:0;pointer-events:none;transform:translateY(14px) scale(.98);transform-origin:bottom left;transition:opacity var(--dur-f) var(--ease-out),transform var(--dur-f) var(--ease-out)}
.ti-chat.is-open .ti-chat-panel{opacity:1;pointer-events:auto;transform:translateY(0) scale(1)}
.ti-chat-head{display:flex;align-items:center;gap:.75rem;padding:1rem 1.1rem;background:var(--gray-900);color:var(--white)}
.ti-chat-mark{width:32px;height:32px;display:grid;place-items:center;border-radius:50%;background:var(--blue)}
.ti-chat-mark svg{width:17px;height:17px;stroke:currentColor}.ti-chat-title{font-size:.87rem;font-weight:700;line-height:1.15}.ti-chat-status{font-family:var(--font-m);font-size:.55rem;letter-spacing:.12em;text-transform:uppercase;color:var(--blue-mid);margin-top:.15rem}.ti-chat-close{margin-left:auto;width:30px;height:30px;display:grid;place-items:center;border-radius:50%;color:var(--white);transition:background var(--dur-f) var(--ease-out)}.ti-chat-close:hover{background:color-mix(in srgb,var(--white) 14%,transparent)}.ti-chat-close svg{width:17px;height:17px}
.ti-chat-progress{height:3px;background:var(--gray-100)}.ti-chat-progress span{display:block;height:100%;width:0;background:var(--blue);transition:width var(--dur-f) var(--ease-out)}
.ti-chat-body{padding:1.1rem;overflow-y:auto}.ti-chat-kicker{font-family:var(--font-m);font-size:.57rem;letter-spacing:.14em;text-transform:uppercase;color:var(--blue);margin-bottom:.55rem}.ti-chat-question{font-size:1.15rem;line-height:1.24;letter-spacing:-.02em;margin-bottom:.45rem}.ti-chat-copy{font-size:.82rem;color:var(--gray-500);line-height:1.5;margin-bottom:1rem}.ti-chat-options{display:grid;gap:.55rem}.ti-chat-option{width:100%;display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.78rem .85rem;border:var(--border);border-radius:var(--r-sm);background:var(--white);color:var(--gray-700);text-align:left;font-size:.82rem;font-weight:600;transition:border-color var(--dur-f) var(--ease-out),background var(--dur-f) var(--ease-out),transform var(--dur-f) var(--ease-out)}.ti-chat-option:hover,.ti-chat-option.is-hover{border-color:var(--blue);background:var(--blue-pale);transform:translateX(3px)}.ti-chat-option.is-selected{border-color:var(--blue);background:var(--blue-pale);color:var(--blue)}.ti-chat-option.is-selected::after{content:'✓';font-weight:800}.ti-chat-option:disabled{opacity:.52;cursor:not-allowed}.ti-chat-actions{display:flex;gap:.65rem;margin-top:1rem}.ti-chat-back,.ti-chat-next,.ti-chat-send{min-height:42px;border-radius:var(--r-sm);font-size:.76rem;font-weight:700;transition:transform var(--dur-f) var(--ease-out),background var(--dur-f) var(--ease-out),opacity var(--dur-f) var(--ease-out)}.ti-chat-back{padding:0 .85rem;color:var(--gray-600);border:var(--border)}.ti-chat-next,.ti-chat-send{flex:1;padding:0 .9rem;background:var(--blue);color:var(--white)}.ti-chat-next:hover,.ti-chat-send:hover{background:var(--blue-dark);transform:translateY(-2px)}.ti-chat-next:disabled{opacity:.45;cursor:not-allowed;transform:none}.ti-chat-note{width:100%;min-height:86px;padding:.8rem;border:var(--border);border-radius:var(--r-sm);resize:vertical;color:var(--gray-800);font-size:.84rem;line-height:1.45}.ti-chat-note:focus{border-color:var(--blue);outline:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--blue) 14%,transparent)}.ti-chat-summary{display:grid;gap:.45rem;padding:.8rem;border-radius:var(--r-sm);background:var(--gray-50);font-size:.78rem;color:var(--gray-600)}.ti-chat-summary strong{color:var(--gray-800)}.ti-chat-success{display:grid;place-items:center;text-align:center;min-height:210px}.ti-chat-success-mark{width:52px;height:52px;display:grid;place-items:center;margin-bottom:.85rem;border-radius:50%;background:var(--blue-pale);color:var(--blue);font-size:1.35rem;font-weight:800}
  @keyframes ti-cart-arrive{from{opacity:0;transform:translate3d(0,-12px,0)}to{opacity:1;transform:translate3d(0,0,0)}}@keyframes ti-chat-breathe{0%,100%{box-shadow:var(--shadow-blue)}50%{box-shadow:0 10px 36px color-mix(in srgb,var(--blue) 45%,transparent)}}@keyframes ti-nudge-scan{0%,35%{transform:translateX(-115%)}62%,100%{transform:translateX(150%)}}@keyframes ti-signal{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.62;transform:scale(.8)}}
@media (max-width:600px){#qToggle.ti-cart-float{top:4.65rem!important;right:.85rem!important;min-height:42px;padding:.45rem .72rem!important;font-size:.7rem}.ti-chat{left:.85rem;right:auto;bottom:.85rem}.ti-chat-panel{width:calc(100vw - 1.7rem);bottom:68px}.ti-chat-nudge{left:0;right:auto;width:min(276px,calc(100vw - 1.7rem))}.ti-chat-body{padding:1rem}}
@media (prefers-reduced-motion:reduce){#qToggle.ti-cart-float,.ti-chat-launcher{animation:none}.ti-chat-panel,.ti-chat-nudge,.ti-chat-option,.ti-chat-next,.ti-chat-send{transition-duration:.15s}}
@media print{.ti-chat,#qToggle.ti-cart-float{display:none!important}}
