/* UPF / SSA: electric performance, dimensional product displays. */
:root{color-scheme:dark;--ink:#f4f6ff;--paper:#080c19;--lime:#70edff;--muted:#acb6d1;--line:#29334d;--violet:#b292ff}
body{background:radial-gradient(ellipse at 95% 8%,#41217555,transparent 34%),radial-gradient(ellipse at 0% 45%,#06385955,transparent 40%),var(--paper);font-family:'Segoe UI',Arial,sans-serif}
button,a,input,select{outline-color:var(--lime)}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--lime);outline-offset:5px}
.header{height:100px;background:#080c19e8;border-bottom:1px solid #b4bdff20;position:relative;z-index:5}
.upf-wordmark{font-size:43px;letter-spacing:-3px}.upf-wordmark>span{color:var(--lime)}
.logo.upf-logo small{letter-spacing:3px;color:#c1c9e2;font-size:10px}
.header nav{gap:35px}.header nav a{color:#c3cbe0}.header nav a:hover{color:var(--lime)}
.bag-button{background:#151d31;border-color:#3a486b;color:var(--ink);border-radius:12px}
.bag-button span{background:var(--lime);color:#08121f;font-weight:700}
.hero{border:1px solid #6975a444;border-radius:24px;min-height:570px;background:#10182a;box-shadow:0 35px 80px #0005;isolation:isolate}
.hero-copy{background:linear-gradient(120deg,#101827,#13162d);padding:56px 48px 28px}
.eyebrow{color:var(--lime);font-size:12px;letter-spacing:.18em}
.hero h1{font-weight:850;letter-spacing:-5px;font-size:clamp(58px,6.4vw,96px);line-height:1.03}
.hero h1 span{background:linear-gradient(100deg,#73efff 5%,#b292ff 85%);color:transparent;background-clip:text;-webkit-background-clip:text}
.hero-description{color:#c1c9e0;max-width:390px;font-size:17px}
.primary{background:linear-gradient(105deg,#70edff,#a9b2ff);color:#081320;border-radius:10px;padding:17px 26px;box-shadow:0 5px 0 #335572,0 12px 30px #61dfff1c;transition:transform .2s,box-shadow .2s}
.primary:hover{background:linear-gradient(105deg,#a1f5ff,#c9baff);transform:translateY(-3px);box-shadow:0 8px 0 #335572,0 16px 35px #61dfff25}
.hero-bottom{font-size:12px;letter-spacing:.06em;line-height:1.5;color:#9caaca;border-color:#a9b2ff25}
.hero-visual{background:radial-gradient(ellipse at 50% 40%,#597ca37a,transparent 60%),linear-gradient(145deg,#213155,#251944 65%,#0b172b);perspective:1000px;overflow:hidden;padding-bottom:65px}
.hero-visual:before{width:380px;height:380px;inset:35px auto auto 50%;transform:translateX(-50%) rotateX(55deg) rotateZ(-25deg);border:1px solid #73edff88;box-shadow:0 0 45px #70edff18,inset 0 0 45px #70edff18}
.hero-visual:after{width:310px;height:95px;left:50%;bottom:105px;transform:translateX(-50%);background:#080d2088;border:1px solid #9fbcf766;box-shadow:0 15px 0 #121729,0 16px 0 #8c85c855,0 28px 30px #0006}
.hero-product{mix-blend-mode:normal;width:205px;transform:rotate(-12deg) translateY(-12px);filter:drop-shadow(18px 24px 12px #05091b77);animation:hero-float 6s ease-in-out infinite}
.hero-product .crop{border-radius:15px;border:1px solid #ffffffaa;box-shadow:0 0 45px #96bcff3b}
.vertical-label{color:#c7d8ff;font-size:12px;left:26px;top:34px}
.hero-caption{left:32px;bottom:26px}.hero-caption>span{color:var(--lime);font-size:12px}.hero-caption strong{font-size:20px}.hero-caption p{color:#c7d2ef;font-size:14px}
.hero-visual .hero-number{font-size:110px;color:#bbbdff30;opacity:1;right:28px;bottom:34px;letter-spacing:-7px}
.category-strip{margin-top:24px;gap:12px;border:0}
.category-strip a{background:linear-gradient(110deg,#121c30,#141629);border:1px solid var(--line)!important;border-radius:14px;padding:24px!important;font-size:19px;transition:border-color .2s,transform .2s}
.category-strip a:hover{border-color:#70edff99!important;transform:translateY(-4px)}
.category-strip span{color:var(--lime);font-family:monospace;font-size:13px}.category-strip small{font-size:13px}
.catalogue{padding-top:76px;padding-bottom:85px}.section-heading{margin-bottom:28px}.section-heading .eyebrow{color:var(--lime)}
h2{letter-spacing:-1.3px;font-weight:750}.packaging-note{font-size:14px;max-width:780px;color:#a5b0ca;line-height:1.7}
.toolbar{padding:14px;background:#11182be0;border:1px solid var(--line);border-radius:16px;margin:30px 0 36px}
.filters button{border-radius:9px;border-color:transparent;color:#bfcae0;padding:12px 16px}
.filters button:hover{background:#24314b}.filters button[aria-pressed=true]{background:var(--lime);border-color:var(--lime);color:#061524;font-weight:700;box-shadow:0 3px 16px #70edff25}
.search input,.sort select{background:#0a1120;border-color:#35405b;border-radius:9px;color:var(--ink);font-size:14px}
.search input::placeholder{color:#a7b2c9}.sort select option{background:#10182a;color:white}
.product-grid{gap:26px;perspective:1400px;align-items:stretch}
.product-card{--accent:#70edff;--tilt-x:0deg;--tilt-y:0deg;background:linear-gradient(150deg,#1c2942,#11182b 65%);border:1px solid #52628466;border-radius:19px;padding:19px;box-shadow:0 7px 0 #070b16,0 8px 0 #34415c,0 20px 30px #0004;transform-style:preserve-3d;transform:perspective(950px) rotateX(var(--tilt-x)) rotateY(var(--tilt-y));transition:transform .25s ease,box-shadow .25s,border-color .25s;isolation:isolate}
.product-card:nth-child(3n+2){--accent:#b99bff}.product-card:nth-child(3n){--accent:#8df0dc}
.product-card:before{content:'';position:absolute;top:-1px;left:22px;right:22px;height:2px;background:linear-gradient(90deg,transparent,var(--accent),transparent);border-radius:100%;opacity:.7}
.card-tag{align-self:start;padding:6px 9px;border:1px solid #64799a55;border-radius:6px;background:#0c1425;color:var(--accent);font-size:12px;letter-spacing:.09em;transform:translateZ(12px)}
.photo-button{background:linear-gradient(145deg,#fff,#e8effa);border:1px solid #dae7ff;border-radius:14px;margin-top:18px;height:232px;--photo-height:195px;padding:16px 10px;box-shadow:0 8px 0 #a4b9d326,0 15px 22px #0003;transform:translateZ(28px);transition:transform .3s,box-shadow .3s}
.photo-button .crop{transition:transform .35s;mix-blend-mode:multiply;background:#fff;max-width:205px}
.product-info{margin-top:24px;transform:translateZ(16px)}
.brand{color:#94aac7;font-size:12px;letter-spacing:.06em;text-transform:uppercase}
.product-title{font-size:18px;line-height:1.35;font-weight:650;color:#f3f6ff}.product-title:hover{color:var(--accent);text-decoration:none}
.variant{font-size:14px;color:#a8b8d2;line-height:1.5}
.price-row{border-top:1px solid #9bb4e322;padding-top:18px;margin-top:24px;transform:translateZ(20px)}
.price{font-size:23px;font-weight:700;letter-spacing:-.6px}.price small{font-size:12px;letter-spacing:0}
.add{background:var(--accent);color:#081223;border-radius:12px;width:44px;height:44px;box-shadow:0 4px 0 #4d647a;font-size:29px;transition:transform .2s,box-shadow .2s}
.add:hover{background:#fff;transform:translateY(-2px);box-shadow:0 6px 0 #4d647a}.add:active{transform:translateY(3px);box-shadow:0 1px 0 #4d647a}
.closing{background:radial-gradient(ellipse at 95% 20%,#7060f266,transparent 50%),linear-gradient(115deg,#112a43,#201a42);border-block:1px solid #657aa344;padding:64px 6%}
.closing h2{color:#f2f7ff}.closing p:not(.eyebrow){color:#b9c7df}.closing .primary{background:var(--lime);color:#091826}.closing:after{border-color:#78dcff55;box-shadow:0 0 90px #70deff12}
.closing.has-ssa-emblem{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,420px);align-items:center;gap:48px}
.closing.has-ssa-emblem:after{display:none}
.ssa-emblem{position:relative;display:grid;place-items:center;isolation:isolate;width:min(100%,380px);aspect-ratio:1;margin:0 auto}
.ssa-emblem:before{content:'';position:absolute;inset:0;border:1px solid #83dfff66;border-radius:50%;background:radial-gradient(circle,#9690ff16,transparent 70%);box-shadow:0 0 55px #70deff0c,inset 0 0 45px #a899ff0a;z-index:-1}
.ssa-emblem img{display:block;width:96%;height:auto;filter:drop-shadow(0 14px 18px #060b2266)}
@media(max-width:700px){.closing.has-ssa-emblem{grid-template-columns:1fr;gap:30px}.ssa-emblem{width:min(85%,300px)}}
footer{background:#080c18;padding-top:48px}footer>p{font-size:14px}.footer-note{font-size:13px}
dialog{background:linear-gradient(145deg,#17233b,#0c1222);border:1px solid #7085b45c;box-shadow:0 30px 100px #000a;color:var(--ink)}
dialog::backdrop{background:#020510c9;backdrop-filter:blur(10px)}
.close{background:#293550;color:#fff}.detail-image{background:#fff;padding:20px;border-radius:18px;box-shadow:0 10px 0 #879bb433,0 25px 45px #0005;transform:rotate(-3deg)}
.detail-copy .eyebrow{color:var(--lime)}.detail-note{font-size:14px;color:#b1bed5}.detail-copy .primary{margin-top:8px}
.bag-dialog{border-radius:20px 0 0 20px}.bag-item .crop{border-radius:8px}.bag-item h3{font-weight:650}
.product-description{font-size:16px;line-height:1.65;color:#d1dbee;margin:20px 0 14px}
.product-highlights{padding-left:19px;margin:0 0 24px;color:#b7c9e3;font-size:14px;line-height:1.6}
.product-highlights li+li{margin-top:8px}.product-highlights li::marker{color:var(--lime)}
.detail-layout{align-items:start}.detail-image{align-self:center}
.quantity button{background:#24334e;color:white;border-color:#425473}.quantity .remove{background:transparent}
.stripe-panel{background:#26203f;border-color:#635a91}.stripe-panel strong{color:#b9adff}.stripe-panel span{color:#d1c7ef}
.stripe-checkout:disabled{background:#29324a;color:#a7b2cc;border:1px solid #44516e}.payment-status{color:#b3bfd7}
.toast{background:#70edff;color:#071629;box-shadow:0 12px 35px #0008;border-radius:12px;font-weight:600;z-index:10}
.skip{background:#70edff;color:#081223}
@media(hover:hover) and (pointer:fine){
  .product-card:hover,.product-card:focus-within{z-index:3;border-color:var(--accent);transform:perspective(950px) translateY(-10px) rotateX(var(--tilt-x)) rotateY(var(--tilt-y));box-shadow:0 12px 0 #070b16,0 13px 0 #5f7596,0 30px 45px #0008,0 0 30px #70edff0d}
  .product-card:hover .photo-button,.product-card:focus-within .photo-button{transform:translateZ(55px) translateY(-5px);box-shadow:0 12px 0 #a4b9d326,0 25px 30px #0005}
  .product-card:hover .photo-button .crop,.product-card:focus-within .photo-button .crop{transform:scale(1.065) rotate(-3deg)}
}
@keyframes hero-float{0%,100%{transform:rotate(-12deg) translateY(-12px)}50%{transform:rotate(-8deg) translateY(-25px)}}
@media(max-width:1100px){.toolbar{flex-wrap:wrap}.filters{flex-basis:100%}.hero-copy{padding:42px 30px 28px}.hero h1{letter-spacing:-3px}.category-strip a{padding:21px 15px!important}.product-grid{gap:22px}.product-card{padding:16px}.photo-button{height:215px;--photo-height:175px}.header nav{gap:20px}}
@media(max-width:700px){
  .header{height:84px}.hero{border-radius:18px;margin-top:18px}.hero-copy{padding:34px 27px 28px}.hero .hero-copy h1{font-size:clamp(48px,14vw,72px);letter-spacing:-3px}.hero-description{font-size:16px}.hero-bottom{font-size:12px;flex-wrap:wrap}
  .hero-visual{min-height:355px;padding-bottom:65px}.hero-product{width:145px}.hero-visual:after{width:240px;height:70px;bottom:87px}.hero-visual:before{width:300px;height:300px;top:-4px}.hero-visual .hero-number{font-size:80px}.hero-caption{left:25px;bottom:22px}.hero-caption strong{font-size:17px}
  .category-strip{gap:7px;margin-top:16px}.category-strip a{padding:16px 9px!important;font-size:14px;display:block}.category-strip span{display:block;margin-bottom:6px;font-size:12px}
  .catalogue{padding-top:45px}.section-heading{gap:12px}h2{font-size:30px}.section-heading .eyebrow{font-size:12px}.section-heading>p{font-size:13px}.packaging-note{font-size:13px}
  .toolbar{padding:10px;margin-bottom:26px;gap:8px}.filters{gap:3px}.filters button{font-size:13px;padding:11px 12px}.search input,.sort select{font-size:14px}.sort select{width:136px}
  .product-grid{gap:22px 12px}.product-card{padding:11px;border-radius:14px}.card-tag{font-size:10px;padding:5px 6px}.photo-button{height:168px;--photo-height:137px;padding:10px 6px;border-radius:10px;margin-top:14px}.product-info{margin-top:20px}.brand{font-size:10px;letter-spacing:.02em}.product-title{font-size:16px}.variant{font-size:13px}.price-row{padding-top:13px;margin-top:18px;gap:4px}.price{font-size:20px}.price small{font-size:12px}.add{width:39px;height:39px;font-size:26px;border-radius:10px}
  .closing{padding:43px 6%}.bag-dialog{border-radius:0}.detail-image{max-width:200px;width:100%;padding:14px}.detail-copy{margin-top:10px}
}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.product-card,.product-card:hover,.product-card:focus-within{transform:none!important}.product-card .photo-button,.product-card .photo-button .crop{transform:none!important}}
