/* Motion and material pass, informed by the observed Oxlyn scene and UI. */
.exo-redesign{scrollbar-color:#663290 #151318}
.exo-redesign ::selection{background:#8c35c5;color:#fff}
.exo-redesign a,.exo-redesign button{-webkit-tap-highlight-color:#9d4eff26}
.exo-promotion{position:relative;isolation:isolate;overflow:hidden;background:#17111e;border-bottom:1px solid #a34cf53d}
.exo-promotion::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(105deg,transparent 20%,#a65cf11c 48%,transparent 75%);transform:translateX(-100%);animation:exo-promo-light 12s ease-in-out infinite;pointer-events:none}
.exo-promotion .exo-promo-offer{display:flex;align-items:center;justify-content:center;gap:18px;min-height:100%;height:100%;width:100%;padding:8px 20px;border:0;border-radius:0;background:none;color:#ede7f4;font-size:13px;line-height:1.3;text-decoration:none}
.exo-promo-label{padding:4px 7px;border-radius:4px;background:#9033ed;color:white;font-size:9px;font-weight:800;letter-spacing:.1em}
.exo-promo-offer strong{font-weight:700;white-space:nowrap}.exo-promo-price{font-variant-numeric:tabular-nums;font-weight:800;color:white;white-space:nowrap}.exo-promo-saving{color:#cba6ec;padding-left:16px;border-left:1px solid #5c386e;white-space:nowrap}.exo-promo-action{display:flex;align-items:center;gap:8px;font-size:11px;margin-left:8px;color:#fff;white-space:nowrap}.exo-promo-action .icon{width:14px;height:14px;transition:transform .3s}.exo-promo-offer:hover .icon{transform:translateX(4px)}
.exo-hero-grid{isolation:isolate}
.exo-hero-visual::after{content:"";position:absolute;inset:20% -4% 0 -8%;z-index:-1;background:radial-gradient(ellipse at 52% 82%,#8e27ec38,transparent 52%),radial-gradient(ellipse at 70% 48%,#7022b719,transparent 62%);filter:blur(14px);pointer-events:none;animation:exo-light-breathe 9s ease-in-out infinite}
.exo-home .exo-hero-visual::after{-webkit-mask-image:radial-gradient(ellipse at 50% 50%,#000 38%,transparent 74%);mask-image:radial-gradient(ellipse at 50% 50%,#000 38%,transparent 74%)}
.exo-hero .exo-accent{text-shadow:0 4px 24px #a442f342,0 1px 4px #a442f31c}
.exo-button-purple,.exo-redesign .button.primary{position:relative;isolation:isolate;overflow:hidden;box-shadow:0 8px 28px -8px #9a27f374,inset 0 1px 0 #ffffff38!important;transition:background .25s,box-shadow .25s,transform .25s}
.exo-button-purple::after,.exo-redesign .button.primary::after{content:"";position:absolute;top:-70%;bottom:-70%;left:-80%;width:45%;transform:rotate(24deg);background:linear-gradient(90deg,transparent,#fff3,transparent);pointer-events:none;animation:exo-button-sheen 8s cubic-bezier(.16,1,.3,1) infinite}
.exo-button-purple:hover,.exo-redesign .button.primary:hover{box-shadow:0 11px 34px -8px #a440fb9c,inset 0 1px 0 #ffffff59!important;transform:translateY(-2px)}
.exo-button-silver{background:linear-gradient(170deg,#fff 2%,#fafafd 47%,#d8d8e2 100%);box-shadow:inset 0 1px 0 #fff,0 5px 18px #0004}
.exo-product-card{transition:border-color .3s,box-shadow .3s,transform .3s}.exo-product-card:hover{border-color:#8d4cbb;box-shadow:0 14px 34px -16px #000b,0 7px 22px -16px #ae48ff70}
.exo-loader{display:none;position:fixed;inset:0;z-index:10000;background:#0c0b0e;color:#fff;place-items:center;pointer-events:none;opacity:0;visibility:hidden;transition:opacity .65s cubic-bezier(.16,1,.3,1),visibility .65s}
.exo-loading .exo-loader{display:grid;opacity:1;visibility:visible;animation:exo-loader-escape 0s 5.8s forwards}
.exo-intro-complete .exo-loader{display:grid;opacity:0;visibility:hidden}
.exo-loader-core{width:min(310px,70vw);text-align:center}.exo-loader-core>img{display:block;width:130px;height:130px;object-fit:contain;margin:0 auto 26px;filter:drop-shadow(0 16px 28px #9239e747);animation:exo-loader-float 2.5s ease-in-out infinite}
.exo-loader-core>strong{display:block;font:900 30px/.95 Inter,Arial,sans-serif;letter-spacing:-.04em}.exo-loader-core>strong>span{display:block;margin-top:10px;font-size:7px;letter-spacing:.65em;padding-left:.65em;color:#b7a9c2}.exo-loader-core>p{font:400 12px/1.5 Inter,Arial,sans-serif;color:#a89bb4;margin:26px 0 22px}.exo-loader-track{height:2px;background:#322638;overflow:hidden}.exo-loader-track>span{display:block;height:100%;background:#b15dff;transform:scaleX(0);transform-origin:left;transition:transform .5s cubic-bezier(.16,1,.3,1);box-shadow:0 2px 12px #a640ff}.exo-loader-core>small{display:block;margin-top:10px;font:500 10px/1.5 Inter,Arial,sans-serif;color:#a993bb;font-variant-numeric:tabular-nums}
@keyframes exo-promo-light{0%,55%{transform:translateX(-100%)}85%,100%{transform:translateX(100%)}}
@keyframes exo-button-sheen{0%,60%{left:-80%}85%,100%{left:150%}}
@keyframes exo-light-breathe{0%,100%{opacity:.65;transform:scale(.98)}50%{opacity:1;transform:scale(1.025)}}
@keyframes exo-loader-float{0%,100%{transform:translateY(3px) rotate(-3deg)}50%{transform:translateY(-5px) rotate(2deg)}}
@keyframes exo-loader-escape{to{opacity:0;visibility:hidden;pointer-events:none}}
@media(min-width:1101px){.exo-promotion .exo-promo-offer{font-size:calc(10 * var(--ref-unit,1.3px));gap:calc(14 * var(--ref-unit,1.3px))}.exo-promo-label{font-size:calc(7 * var(--ref-unit,1.3px))}.exo-promo-action{font-size:calc(9 * var(--ref-unit,1.3px))}.exo-process-grid>li:nth-child(-n+2) .exo-step-content p{max-width:calc(150 * var(--ref-unit))}.exo-pack-copy>p{font-size:calc(12 * var(--ref-unit));max-width:calc(285 * var(--ref-unit))}}
@media(max-width:600px){.exo-promotion .exo-promo-offer{gap:9px;padding:9px 12px;font-size:10px}.exo-promo-label{font-size:7px;padding:3px 4px}.exo-promo-saving{font-size:9px;padding-left:8px}.exo-promo-action{display:none}.exo-promotion{min-height:38px;height:auto}.exo-promo-offer strong{max-width:105px}.exo-hero-visual::after{inset:12% -8% 1% -8%}}
@media(min-width:601px) and (max-width:850px){
  .exo-hero-grid{display:flex;flex-direction:column;min-height:0}
  .exo-hero-copy{position:relative;padding:54px 0 0;max-width:100%}
  .exo-hero h1{font-size:clamp(40px,6vw,52px);line-height:1.03}
  .exo-hero-description{max-width:560px;font-size:16px}
  .exo-hero-visual{height:450px;min-height:450px;width:100%;margin:0;position:relative;flex:none}
  .exo-x-stage{inset:0 25px;height:450px}
  .exo-outline-brand{top:40px;left:0;font-size:17vw}
  .exo-scene-controls{opacity:1;bottom:10px}
}
@media(min-width:851px) and (max-width:1100px){.exo-hero h1{font-size:4.4vw}.exo-x-stage{top:55px;bottom:auto;left:-12px;right:-12px;height:460px}}
@media(prefers-reduced-motion:reduce){.exo-redesign *::after,.exo-loader-core>img,.exo-hero-visual::after{animation:none!important}.exo-loader{transition:opacity .1s,visibility .1s}.exo-button-purple:hover,.exo-redesign .button.primary:hover{transform:none}.exo-loader-track>span{transition:none}}
