/* Apsley Studio — Product Discovery 1.1 */
.asd-widget, .asd-widget * {box-sizing:border-box}
.asd-widget {width:100%;max-width:740px;margin:0 auto;color:#1e1e1e;font-family:inherit}
.asd-widget .asd-shell {border:1px solid #e4e4e4;background:#fff;border-radius:10px;text-align:center;position:relative;overflow:hidden;padding:36px 28px 32px}
.asd-widget .asd-screen[hidden] {display:none!important}
.asd-widget .asd-eyebrow {font-size:11px;font-weight:650;letter-spacing:3px;color:#737373;margin-bottom:12px}
.asd-widget h2 {font-size:clamp(24px,4.5vw,32px);line-height:1.2;font-weight:650;letter-spacing:-.45px;margin:0!important;color:#1e1e1e}
.asd-widget .asd-subtitle {font-size:14px;line-height:1.5;color:#787878;margin:11px 0 28px}
.asd-widget .asd-filters {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;text-align:left}
.asd-widget .asd-filter label {font-size:12px;font-weight:650;color:#242424;display:block;margin-bottom:8px}
.asd-widget .asd-filter select {appearance:auto;width:100%;max-width:100%;min-height:44px;padding:10px 9px;background:#fff;border:1px solid #d8d8d8;border-radius:5px;font:inherit;font-size:13px;color:#222;box-shadow:none}
.asd-widget .asd-filter select:focus-visible,.asd-widget .asd-button:focus-visible,.asd-widget .asd-product-link:focus-visible {outline:3px solid #6a89bd;outline-offset:3px}
.asd-widget .asd-home-stage {min-height:250px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:0}
.asd-widget .asd-wordmark {font-size:clamp(23px,5.1vw,36px);line-height:1.15;font-weight:700;letter-spacing:3px;white-space:nowrap;color:#171717}
.asd-widget .asd-rule {width:83px;height:1px;background:#aaa;margin:25px 0 13px}
.asd-widget .asd-stage-caption {font-size:11px;letter-spacing:1.25px;color:#7a7a7a}
.asd-widget .asd-button {display:block;width:100%;max-width:360px;min-height:49px;margin:0 auto;border-radius:5px;border:1px solid #111;background:#111;color:#fff;padding:13px 20px;font:inherit;font-size:13px;font-weight:650;text-decoration:none;cursor:pointer;transition:background .2s}
.asd-widget .asd-button:hover:not(:disabled) {background:#333;color:#fff}
.asd-widget .asd-button:disabled {opacity:.55;cursor:wait}
.asd-widget .asd-status {margin:14px auto 0;min-height:20px;color:#777;line-height:1.5;font-size:12px;max-width:480px}
.asd-widget .asd-status.asd-error {color:#a13030}
.asd-widget .asd-loading {min-height:420px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:0}
.asd-widget .asd-letters {display:flex;justify-content:center;align-items:center;white-space:nowrap;gap:clamp(1px,.5vw,5px);max-width:100%}
.asd-widget .asd-letters .asd-char {display:inline-block;font-size:clamp(20px,5.2vw,40px);line-height:1.15;font-weight:700;letter-spacing:.4px;opacity:.2;color:#999;animation:asd-letter-wave 1.5s ease-in-out infinite;animation-delay:calc(var(--index) * 95ms)}
.asd-widget .asd-letters .asd-space {width:clamp(8px,2.5vw,25px)}
@keyframes asd-letter-wave {0%,63%,100% {opacity:.18;transform:translateY(0);color:#858585}30% {opacity:1;transform:translateY(-9px);color:#171717}}
.asd-widget .asd-letters.asd-finished .asd-char {animation:none;opacity:1;color:#171717;transform:none}
.asd-widget .asd-loading-caption {font-size:13px;color:#777;margin:29px 0 16px}
.asd-widget .asd-progress-track {height:3px;width:190px;max-width:80%;background:#e7e7e7;border-radius:100px;overflow:hidden}
.asd-widget .asd-progress {height:100%;width:0;background:#222;transition:width 2s linear}
.asd-widget .asd-result {position:relative;animation:asd-result-in .5s ease both}
.asd-widget .asd-result-content {position:relative;z-index:1}
@keyframes asd-result-in {from {opacity:0;transform:translateY(14px)}to {opacity:1;transform:translateY(0)}}
.asd-widget .asd-image-frame {width:min(100%,330px);height:260px;display:flex;align-items:center;justify-content:center;background:#f9f8f6;border-radius:7px;margin:25px auto 21px;padding:19px}
.asd-widget .asd-image-frame img {width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain;box-shadow:none!important}
.asd-widget .asd-result h3 {max-width:480px;margin:0 auto 9px!important;font-size:20px;line-height:1.35;color:#171717;font-weight:650}
.asd-widget .asd-price {font-size:16px;font-weight:600;margin:0 auto 20px;color:#363636}
.asd-widget .asd-price del {opacity:.65;margin-right:8px;font-size:.9em}
.asd-widget .asd-price ins {background:transparent;text-decoration:none}
.asd-widget .asd-product-link {display:inline-block;padding:11px 28px;margin:0 auto 24px;border:1px solid #222;border-radius:5px;color:#222!important;background:#fff;text-decoration:none!important;font-size:13px;font-weight:600;transition:background .2s}
.asd-widget .asd-product-link:hover {background:#f3f3f3}
.asd-widget .asd-result-footer {color:#777;font-size:12px;margin:14px 0 0}
.asd-widget .asd-fireworks {position:absolute;inset:0;width:100%;height:100%;z-index:2;pointer-events:none}
@media(max-width:550px){.asd-widget .asd-shell{padding:28px 16px 24px}.asd-widget .asd-filters{grid-template-columns:1fr;gap:12px}.asd-widget .asd-home-stage{min-height:190px}.asd-widget .asd-wordmark{font-size:clamp(17px,6vw,25px);letter-spacing:1.7px}.asd-widget .asd-loading{min-height:290px}.asd-widget .asd-letters .asd-char{font-size:clamp(16px,5.1vw,25px)}.asd-widget .asd-image-frame{height:225px}}
@media(prefers-reduced-motion:reduce){.asd-widget .asd-letters .asd-char{animation:none;opacity:1;color:#171717;transform:none}.asd-widget .asd-progress{transition:none}.asd-widget .asd-result{animation:none}}
