:root{--navy:#0B1638;--gold:#C9A961;--gold2:#E6CF97;--sky:#5BB4E5;--serif:'Cormorant Garamond',Georgia,serif;--sans:'Jost',system-ui,sans-serif;--ease:cubic-bezier(.22,1,.36,1)}
*{box-sizing:border-box;margin:0}
body{font:300 17px/1.65 var(--sans);color:#fff;background:radial-gradient(120% 60% at 80% 0%,#1E3A8A55,transparent 60%),linear-gradient(180deg,#0E1B47 0%,var(--navy) 45%,#081130 100%);min-height:100vh;overflow-x:hidden}
body:before{content:"";position:fixed;inset:0;pointer-events:none;background:repeating-linear-gradient(90deg,#ffffff05 0 1px,transparent 1px 72px);mask:linear-gradient(#000,transparent 70%)}
a{color:inherit}.wrap{width:100%;max-width:640px;margin:0 auto;padding:0 22px}
header{display:flex;justify-content:center;padding:36px 0 26px}header img{height:30px;width:auto}
footer{text-align:center;padding:64px 0 50px;color:#ffffff90;font-size:13px;letter-spacing:.18em}footer img{height:34px;width:auto;display:block;margin:0 auto 12px}
.bg{position:fixed;inset:0;z-index:-1;pointer-events:none;overflow:hidden}
.bg i{position:absolute;border-radius:50%;filter:blur(60px);opacity:.5}
.bg i:nth-child(1){width:60vmax;height:60vmax;left:-20vmax;top:-15vmax;background:radial-gradient(circle,#2B4FB077,transparent 65%);animation:d1 38s ease-in-out infinite alternate}
.bg i:nth-child(2){width:46vmax;height:46vmax;right:-18vmax;top:30vh;background:radial-gradient(circle,#C9A96130,transparent 65%);animation:d2 46s ease-in-out infinite alternate}
.bg i:nth-child(3){width:50vmax;height:50vmax;left:10vw;bottom:-25vmax;background:radial-gradient(circle,#5BB4E52a,transparent 65%);animation:d3 52s ease-in-out infinite alternate}
@keyframes d1{to{transform:translate3d(14vw,10vh,0) scale(1.1)}}@keyframes d2{to{transform:translate3d(-16vw,-12vh,0) scale(.92)}}@keyframes d3{to{transform:translate3d(12vw,-14vh,0) scale(1.08)}}
main{animation:fu 1s var(--ease) both}@keyframes fu{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
.eyebrow{text-align:center;color:var(--gold);font-size:12.5px;letter-spacing:.32em;text-transform:uppercase}
h1{font:500 40px/1.15 var(--serif);text-align:center;letter-spacing:.02em;margin:10px 0 6px}
h1 em{font-style:italic;color:var(--gold2)}
.sub{text-align:center;color:#ffffffb0;margin:0 auto 26px;max-width:460px}
.deal{display:flex;align-items:center;gap:18px;justify-content:space-between;border:1px solid #C9A96166;background:linear-gradient(135deg,#C9A9611a,#ffffff06);padding:20px 22px;margin-bottom:22px}
.deal .big{font:600 52px/1 var(--serif);color:var(--gold2);letter-spacing:.02em;white-space:nowrap}
.deal .txt b{display:block;font:500 20px/1.25 var(--serif);color:#fff}.deal .txt span{font-size:14px;color:#ffffffb0}
.deal .price{text-align:right;white-space:nowrap}.deal .price b{display:block;font:500 26px/1.1 var(--serif);color:#fff}.deal .price span{font-size:12px;letter-spacing:.14em;color:#ffffff90}
.notice{text-align:center;border:1px solid #C9A96166;background:#ffffff0a;padding:34px 22px;margin-bottom:22px}
.notice h2{font:500 28px/1.25 var(--serif);color:var(--gold2);margin-bottom:8px}.notice p{color:#ffffffc0}
form{background:#ffffff0a;border:1px solid #ffffff1c;padding:28px 22px;backdrop-filter:blur(6px)}
form[aria-disabled=true]{opacity:.45;pointer-events:none;filter:grayscale(.3)}
.f{margin-bottom:18px}label{display:block;font-size:15px;letter-spacing:.06em;margin-bottom:7px;color:#ffffffd0}.req{color:var(--gold)}
input,textarea{width:100%;min-height:50px;padding:12px 14px;background:#0A1434;border:1px solid #ffffff2a;color:#fff;font:400 16px var(--sans);border-radius:2px}
textarea{min-height:96px;resize:vertical;line-height:1.5}
input:focus,textarea:focus{outline:2px solid var(--gold);outline-offset:1px;border-color:transparent}
[aria-invalid=true]{border-color:#FFB4A8}
.qty{display:flex;align-items:center;gap:0;width:max-content;border:1px solid #ffffff2a}
.qty button{width:50px;height:50px;background:#0A1434;border:0;color:var(--gold2);font:400 24px var(--sans);cursor:pointer}
.qty button:disabled{opacity:.35;cursor:default}
.qty output{min-width:60px;text-align:center;font:500 20px var(--sans)}
.total{display:flex;justify-content:space-between;align-items:baseline;border-top:1px solid #ffffff1a;padding-top:16px;margin:6px 0 14px}
.total span{letter-spacing:.14em;font-size:13px;color:#ffffffa0}.total b{font:500 30px var(--serif);color:var(--gold2)}
.err{color:#FFB4A8;font-size:14px;margin-top:6px}.err:empty{display:none}
.check{display:flex;gap:12px;align-items:flex-start;font-size:13.5px;line-height:1.55;color:#ffffffb8;margin:4px 0 16px;cursor:pointer;letter-spacing:normal}
.check input{width:22px;height:22px;min-height:0;flex:none;margin-top:1px;accent-color:var(--gold)}
.check a{color:var(--gold2)}
.hp{position:absolute!important;left:-10000px!important;width:1px;height:1px;overflow:hidden}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:54px;padding:0 22px;border:1px solid #C9A96199;color:var(--gold2);text-decoration:none;font:500 15px var(--sans);letter-spacing:.2em;background:none;cursor:pointer;transition:.25s}
.btn.solid{width:100%;background:linear-gradient(135deg,var(--gold2),var(--gold));color:var(--navy);border:0}
.btn.solid:hover{filter:brightness(1.07)}.btn:disabled{opacity:.6;cursor:wait}
.formerr{margin-top:12px;text-align:center}
.trust{list-style:none;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:8px 10px;margin:18px 0 0}
.trust li{display:inline-flex;align-items:center;gap:7px;padding:7px 12px;border:1px solid #C9A96155;border-radius:999px;font:400 12px/1.2 var(--sans);letter-spacing:.08em;color:#ffffffd0;background:#0A143499}
.trust svg{width:15px;height:15px;color:var(--gold);flex:none}
.small{font-size:13px;color:#ffffff90;text-align:center;margin-top:14px}
.legal{max-width:560px;margin:34px auto 0;text-align:left;letter-spacing:normal;font-size:13px;line-height:1.75;color:#ffffff99}
.legal details{border-top:1px solid #ffffff1a;border-bottom:1px solid #ffffff1a;padding:12px 0}
.legal summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;color:var(--gold2);font-size:13px;letter-spacing:.16em}
.legal summary::-webkit-details-marker{display:none}.legal summary:after{content:"+";font-size:18px;line-height:1;color:var(--gold)}.legal details[open] summary:after{content:"\2212"}
.legal details p{margin-top:10px}.legal h4{margin-top:18px;color:var(--gold2);font:500 13px var(--sans);letter-spacing:.16em}.legal h4+p{margin-top:8px}
.legal .copy{margin-top:22px;text-align:center;font-size:11.5px;letter-spacing:.08em;color:#ffffff70}
.status{text-align:center;padding:46px 22px;border:1px solid #C9A96166;background:#ffffff0a}
.status svg{width:58px;height:58px;color:var(--gold);margin-bottom:12px}
.status h2{font:500 32px/1.25 var(--serif);color:var(--gold2);margin-bottom:8px}.status p{color:#ffffffc0}
.status .ref{display:inline-block;margin-top:16px;padding:8px 14px;border:1px dashed #C9A96188;font:500 15px var(--sans);letter-spacing:.12em;color:#fff}
.spin{width:42px;height:42px;border:3px solid #ffffff22;border-top-color:var(--gold);border-radius:50%;margin:0 auto 16px;animation:sp 1s linear infinite}@keyframes sp{to{transform:rotate(360deg)}}
.tag{display:inline-block;margin:0 auto 16px;padding:4px 10px;border:1px solid #5BB4E5;color:var(--sky);font-size:11px;letter-spacing:.2em}
.hide{display:none!important}
@media(min-width:700px){h1{font-size:50px}form{padding:36px}.deal{padding:24px 28px}}
@media(max-width:380px){.deal{flex-wrap:wrap}.deal .price{text-align:left}}
@media(prefers-reduced-motion:reduce){.bg i,main,.spin{animation:none!important}}
.deal .big small{font-size:.6em;margin:0 .06em;color:var(--gold)}
h1 em{white-space:nowrap}
/* motion: same technique, colours and timing as event.sdaibioage.com */
.bg i{will-change:transform}
#dust{position:fixed;inset:0;width:100%;height:100%;z-index:-1;pointer-events:none}
body.order main{animation:none}
body.order main>*{animation:fu 1s var(--ease) both}
body.order main>:nth-child(1){animation-delay:.1s}body.order main>:nth-child(2){animation-delay:.28s}body.order main>:nth-child(3){animation-delay:.5s}body.order main>:nth-child(n+5){animation-delay:.72s}
body.order main>.deal{animation:tilt 1.4s .5s var(--ease) both;transform-origin:50% 0}
@keyframes tilt{from{opacity:0;transform:perspective(1200px) translateY(46px) rotateX(-8deg) scale(.97)}to{opacity:1;transform:perspective(1200px) translateY(0) rotateX(0) scale(1)}}
h1 em{background:linear-gradient(100deg,var(--gold2) 0%,var(--gold2) 40%,#FFF6DD 50%,var(--gold2) 60%,var(--gold2) 100%);background-size:250% 100%;background-position:100% 0;-webkit-background-clip:text;background-clip:text;color:transparent;animation:shimmer 7s 1.6s ease-in-out infinite;padding-right:.08em}
@keyframes shimmer{0%,60%{background-position:100% 0}90%,100%{background-position:-50% 0}}
.btn.solid{position:relative;isolation:isolate}
.btn.solid:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(110deg,transparent 30%,#ffffff8c 50%,transparent 70%);background-size:250% 100%;background-position:150% 0;transition:background-position .9s var(--ease);mix-blend-mode:soft-light}
.btn.solid:hover:before,.btn.solid:focus-visible:before{background-position:-50% 0}
.btn.solid:after{content:"";position:absolute;inset:-1px;z-index:-2;border-radius:inherit;box-shadow:0 0 26px 4px #C9A96199;opacity:0;animation:glow 3.2s ease-in-out infinite}
@keyframes glow{0%,100%{opacity:0;transform:scale(.98)}50%{opacity:.75;transform:scale(1.02)}}
.btn.solid:disabled:after,form[aria-disabled=true] .btn.solid:after{animation:none}
/* countdown */
.cd{position:relative;text-align:center;border:1px solid #C9A96166;background:radial-gradient(90% 120% at 50% 0%,#C9A9611f,transparent 70%),linear-gradient(180deg,#ffffff0c,#ffffff04);padding:28px 16px 26px;margin-bottom:22px}
.cd:before,.cd:after{content:"";position:absolute;width:14px;height:14px;border:1px solid var(--gold);pointer-events:none}
.cd:before{top:6px;left:6px;border-right:0;border-bottom:0}.cd:after{bottom:6px;right:6px;border-left:0;border-top:0}
.cd-l{color:var(--gold);font-size:12.5px;letter-spacing:.32em;text-transform:uppercase;margin-bottom:16px}
.cd-t{display:flex;justify-content:center;align-items:flex-start;gap:6px}
.cd-t div{position:relative;flex:0 1 78px;min-width:0;padding:12px 2px 10px;border:1px solid #C9A96147;background:linear-gradient(180deg,#13245Acc,#0A1434e6);box-shadow:inset 0 1px 0 #ffffff14,0 10px 24px #00000040;perspective:300px}
.cd-t b{display:block;font:600 44px/1 var(--serif);font-variant-numeric:lining-nums tabular-nums;letter-spacing:.02em;background:linear-gradient(180deg,#FFF6DD 0%,var(--gold2) 45%,var(--gold) 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.cd-t b.flip{animation:flip .6s var(--ease)}
@keyframes flip{0%{transform:translateY(-40%) rotateX(70deg);opacity:0}100%{transform:none;opacity:1}}
.cd-t span{display:block;margin-top:8px;font:400 10.5px/1 var(--sans);letter-spacing:.24em;text-transform:uppercase;color:#ffffffa8}
.cd-t i{font:500 30px/1 var(--serif);font-style:normal;color:#C9A96199;padding-top:14px}
.cd-rule{display:block;width:120px;height:1px;margin:20px auto 14px;background:linear-gradient(90deg,transparent,var(--gold),transparent);transform:scaleX(0);animation:rule 1.6s 1s var(--ease) forwards}
@keyframes rule{to{transform:scaleX(1)}}
.cd-c{color:#ffffffc0;font-size:15px;max-width:420px;margin:0 auto}
.cd.live .cd-l{color:var(--gold2)}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
@media(min-width:700px){.cd{padding:34px 28px 30px}.cd-t{gap:10px}.cd-t div{flex-basis:104px;padding:16px 4px 12px}.cd-t b{font-size:58px}.cd-t i{font-size:38px;padding-top:18px}.cd-t span{font-size:11px}}
@media(max-width:360px){.cd-t b{font-size:36px}.cd-t i{display:none}}
@media(prefers-reduced-motion:reduce){h1 em,.btn.solid:after,body.order main>*,.cd-t b.flip{animation:none!important}.cd-rule{animation:none;transform:none}#dust{display:none}}
/* thank-you page */
body.ty main{animation:none}
body.ty main>*{animation:fu 1s var(--ease) both}body.ty main>:nth-child(2){animation-delay:.35s}
.ty-card{position:relative;text-align:center;border:1px solid #C9A96166;background:radial-gradient(90% 70% at 50% 0%,#C9A9611f,transparent 70%),linear-gradient(180deg,#ffffff0d,#ffffff04);padding:40px 22px 30px;backdrop-filter:blur(6px);box-shadow:0 30px 60px #00000030}
.ty-corner{position:absolute;width:16px;height:16px;border:1px solid var(--gold);pointer-events:none}.ty-corner.tl{top:7px;left:7px;border-right:0;border-bottom:0}.ty-corner.br{bottom:7px;right:7px;border-left:0;border-top:0}
.ty-card>*{animation:fu .9s var(--ease) both}.ty-card>:nth-child(4){animation-delay:.12s}.ty-card>:nth-child(5){animation-delay:.2s}.ty-card>:nth-child(6){animation-delay:.28s}.ty-card>:nth-child(n+7){animation-delay:.38s}
.ty-seal{width:86px;height:86px;margin:0 auto 18px}.ty-seal svg{width:100%;height:100%;overflow:visible}
.ty-seal .ring-bg{stroke:#ffffff1f;stroke-width:1.5}
.ty-seal .ring{stroke:var(--gold);stroke-width:1.8;stroke-linecap:round;stroke-dasharray:226;stroke-dashoffset:170;transform-origin:40px 40px;animation:sp 1.4s linear infinite}
.ty-seal .ico{stroke:var(--gold2);stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;opacity:0}
[data-state=paid] .ty-seal .ring{animation:draw 1.1s var(--ease) forwards;stroke-dashoffset:226;transform:rotate(-90deg)}
[data-state=paid] .ty-seal .ico-paid{opacity:1;stroke-dasharray:44;stroke-dashoffset:44;animation:draw .7s .75s var(--ease) forwards}
[data-state=paid] .ty-seal{filter:drop-shadow(0 0 18px #C9A96166)}
[data-state=calm] .ty-seal .ring{animation:none;stroke-dashoffset:0;stroke:#C9A96199}[data-state=calm] .ty-seal .ico-wait{opacity:1}
[data-state=pending] .ty-seal .ico-wait{opacity:.55}
[data-state=failed] .ty-seal .ring{animation:none;stroke-dashoffset:0;stroke:#E8A79C88}[data-state=failed] .ty-seal .ico-fail{opacity:1;stroke:#F2C2B8}
@keyframes draw{to{stroke-dashoffset:0}}
.ty-card h1{font-size:38px;margin:8px 0 10px}
.ty-lead{color:#ffffffc8;max-width:440px;margin:0 auto}
.ty-chip{display:inline-flex;align-items:center;gap:8px;margin:18px auto 4px;padding:6px 14px;border:1px solid #C9A96166;border-radius:999px;font:400 12px/1.2 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--gold2);background:#0A143499}
.ty-chip i{width:7px;height:7px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 0 #C9A96199}
[data-state=pending] .ty-chip i,[data-state=loading] .ty-chip i{animation:pulse 1.6s ease-out infinite}
[data-state=paid] .ty-chip{border-color:#9BD3B0aa;color:#CDEFD9}[data-state=paid] .ty-chip i{background:#7FD3A0}
[data-state=failed] .ty-chip{border-color:#E8A79C88;color:#F6D2CB}[data-state=failed] .ty-chip i{background:#E8A79C}
@keyframes pulse{0%{box-shadow:0 0 0 0 #C9A96199}100%{box-shadow:0 0 0 10px #C9A96100}}
.ty-prog{height:2px;max-width:260px;margin:18px auto 0;background:#ffffff14;overflow:hidden}.ty-prog span{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--gold),var(--gold2));transition:width 2.8s linear}
.ty-sum{margin:26px 0 0;border-top:1px solid #ffffff1a;text-align:left}
.ty-sum div{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:13px 2px;border-bottom:1px solid #ffffff12}
.ty-sum dt{font-size:12.5px;letter-spacing:.16em;text-transform:uppercase;color:#ffffff99}
.ty-sum dd{margin:0;text-align:right;color:#fff;font-size:16px}
.ty-sum #sRef{font-weight:500;letter-spacing:.08em}
.ty-sum .ty-tot{border-bottom:0;padding-top:16px}.ty-sum .ty-tot dd{font:500 32px/1 var(--serif);color:var(--gold2)}
.ty-actions{margin-top:24px}.ty-actions .btn{max-width:320px}
.ty-next{margin-top:22px;border:1px solid #ffffff1c;background:#ffffff08;padding:26px 22px}
.ty-next h2{font:500 24px/1.2 var(--serif);color:var(--gold2);text-align:center;margin-bottom:14px}
.ty-next ol{list-style:none;padding:0;counter-reset:s}
.ty-next li{counter-increment:s;position:relative;padding:12px 0 12px 46px;border-top:1px solid #ffffff12}.ty-next li:first-child{border-top:0}
.ty-next li:before{content:counter(s);position:absolute;left:0;top:12px;width:30px;height:30px;border:1px solid #C9A96188;border-radius:50%;display:grid;place-items:center;font:500 15px/1 var(--serif);color:var(--gold2)}
.ty-next b{display:block;font-weight:500;color:#fff;font-size:15.5px}.ty-next span{display:block;color:#ffffffb0;font-size:14.5px}
.ty-keep{margin-top:12px;text-align:center;font-size:13px;color:#ffffff90}
.pdpa-line{max-width:520px;margin:14px auto 0;line-height:1.55}.pdpa-line a{color:var(--gold2)}
@media(min-width:700px){.ty-card{padding:52px 44px 38px}.ty-card h1{font-size:46px}.ty-next{padding:30px 36px}}
@media(prefers-reduced-motion:reduce){body.ty main>*,.ty-card>*,.ty-seal .ring,.ty-seal .ico,.ty-chip i{animation:none!important}.ty-seal .ring{stroke-dashoffset:0}.ty-seal .ico-paid{stroke-dashoffset:0}}
/* Men / Women segmented selector (native radios, keyboard: Tab into group, arrow keys to choose) */
.seg{display:grid;grid-template-columns:1fr 1fr;gap:10px;border-radius:2px}
.seg-o{position:relative;margin:0;cursor:pointer}
.seg-o input{position:absolute;opacity:0;width:1px;height:1px;min-height:0;margin:0;pointer-events:none}
.seg-o span{display:flex;align-items:center;justify-content:center;min-height:50px;padding:0 16px;background:#0A1434;border:1px solid #ffffff2a;border-radius:999px;font:400 15px/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:#ffffffc8;transition:border-color .2s,background .2s,color .2s,box-shadow .2s}
.seg-o:hover span{border-color:#C9A96199;color:#fff}
.seg-o input:checked+span{background:linear-gradient(180deg,#C9A96126,#C9A96110);border-color:var(--gold);color:var(--gold2);box-shadow:inset 0 0 0 1px #C9A96155,0 0 18px #C9A96122}
.seg-o input:focus-visible+span{outline:2px solid var(--gold);outline-offset:2px}
.seg-o input:disabled+span{opacity:.55;cursor:not-allowed}
/* Men / Women split steppers (shown when Bundles > 1) */
.split{display:grid;gap:10px}
.split-r{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 8px 8px 18px;background:#0A1434;border:1px solid #ffffff2a;border-radius:999px}
.split-l{font:400 15px/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:#ffffffc8}
.qty.sm{border:0}.qty.sm button{width:42px;height:42px;font-size:22px;background:transparent}.qty.sm output{min-width:44px;font-size:18px}
.qty.sm button:disabled{opacity:.35}
.hint{color:var(--gold2);font-size:14px;margin-top:8px;letter-spacing:.02em}.hint.ok{color:#9FD9B0}
.gsel[data-invalid=true] .split-r,.gsel[data-invalid=true] .seg-o span{border-color:#FFB4A8aa}
/* Numerals: lining figures everywhere (!important because the font shorthand resets these) so the serif 1 reads as 1, not i (Cormorant defaults to old-style). */
html,body,body *{font-variant-numeric:lining-nums!important;font-feature-settings:'lnum' 1!important}
.deal .big,.deal .price b,.total b,.qty output,.qty input,.cd-t b,.ty-sum dd,.ty-next li:before,#unitPrice,#total,#qv{font-variant-numeric:lining-nums tabular-nums!important;font-feature-settings:'lnum' 1,'tnum' 1!important}
