/* PepsForYou — obsidian, amethyst and champagne visual system. */
:root{
  --navy:#130d1d;--navy2:#241333;--blue:#b998ff;--sky:#f2bf72;
  --ink:#f6f0e8;--muted:#b7aabf;--line:#493856;--ice:#1b1424;--white:#191120;
  --champagne:#f2c879;--coral:#ff8568;--amethyst:#a87dff;--plum:#5b2b73;
  --shadow:0 28px 80px rgba(15,5,24,.34)
}
html{background:#100b17}
body{color:var(--ink);background:#100b17}
body:before{content:'';position:fixed;inset:0;pointer-events:none;z-index:-1;background:radial-gradient(circle at 8% 18%,rgba(133,76,180,.14),transparent 28%),radial-gradient(circle at 92% 40%,rgba(242,191,114,.08),transparent 24%)}
.service-bar{background:#0c0811;color:#cdbed2;border-bottom:1px solid #6e527122}
.service-bar span:before{color:var(--champagne)}
.header{background:rgba(17,11,24,.88);border-bottom:1px solid #69557455;box-shadow:0 12px 38px #08030d66}
.logo em,.inverse em{color:var(--champagne)}
.logo .brand-symbol svg{filter:drop-shadow(0 8px 18px rgba(242,200,121,.22))}
.brand-symbol .hex{stroke:var(--champagne)}
.brand-symbol .wave,.brand-symbol circle{stroke:var(--coral);fill:var(--coral)}
nav a{color:#d3c7d7}nav a:after{background:linear-gradient(90deg,var(--coral),var(--champagne))}
.account-trigger{border-color:#5d4967;background:#21172b;color:#eadff0}.account-trigger:hover{border-color:var(--champagne);color:var(--champagne)}
.cart-trigger{background:linear-gradient(135deg,#6e3c82,#3d2057);box-shadow:0 12px 30px #13081c88}.cart-trigger b{background:var(--coral)}

/* Two-stage entrance */
.welcome{background:radial-gradient(circle at 50% 46%,rgba(137,78,183,.32),transparent 29%),linear-gradient(138deg,#08060c,#1d1028 55%,#321941);transition:opacity .7s ease,visibility .7s ease}
.welcome:after{content:'';position:absolute;inset:0;background:radial-gradient(circle at 50% 50%,transparent 0 22%,rgba(255,255,255,.035) 22.2% 22.45%,transparent 22.7% 32%,rgba(242,200,121,.05) 32.2% 32.45%,transparent 32.7%);animation:introPulse 7s ease-in-out infinite}
.welcome:before{background:conic-gradient(from 180deg at 50% 50%,transparent,rgba(168,125,255,.12),transparent,rgba(242,200,121,.1),transparent)}
.welcome-grid:before{background-image:linear-gradient(rgba(242,200,121,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(168,125,255,.045) 1px,transparent 1px)}
.welcome-grid i{background:var(--champagne);box-shadow:0 0 25px rgba(242,200,121,.65)}
.welcome-grid span{background:linear-gradient(90deg,transparent,rgba(202,164,255,.7),transparent)}
.welcome-content{z-index:3;transition:opacity .28s ease,transform .28s ease}
.welcome-content.swapping{opacity:0!important;transform:translateY(-12px) scale(.985)!important;filter:blur(5px)!important;transition:opacity .32s ease,transform .32s ease,filter .32s ease!important}
.welcome-mark{border-color:#d6b5ff55;background:linear-gradient(145deg,#ffffff12,#8e52aa18);box-shadow:0 0 65px rgba(167,106,218,.35);color:var(--champagne)}
.welcome-mark svg{stroke:var(--champagne)}
.welcome-eyebrow{color:var(--champagne)}
.welcome h1{background:linear-gradient(105deg,#fff5e8 18%,#e7c3ff 58%,#f4c66f 92%);-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:none}
.welcome-content>p:not(.welcome-eyebrow){color:#cbbdd0}
.welcome-enter,.primary{background:linear-gradient(135deg,#a96ddd,#7544a8 55%,#cb735f);color:#fff;box-shadow:0 16px 40px rgba(107,49,138,.4)}
.welcome-enter{border-color:#e7c3ff55}.welcome-enter:hover{transform:translateY(-2px);box-shadow:0 20px 55px rgba(152,86,183,.5)}
.welcome-content small{color:#97849e}.age-confirm{border-color:#c49ae84d;background:#ffffff0c;color:#e7dce9}.age-confirm input{accent-color:var(--coral)}
.age-decline{border-color:#ffffff2e;color:#c8b7cc}.age-mark{font-size:19px;letter-spacing:.04em}
.welcome.stage-age{background:radial-gradient(circle at 50% 45%,rgba(242,191,114,.13),transparent 24%),linear-gradient(138deg,#09060d,#21122c 55%,#311b38)}
.welcome.age-transition .welcome-grid,.welcome.age-transition .welcome-aurora{opacity:.16;transition:opacity .36s ease}.welcome.stage-age .welcome-content{animation:none;transition:opacity .48s cubic-bezier(.2,.75,.25,1),transform .48s cubic-bezier(.2,.75,.25,1),filter .48s ease}.welcome.stage-age .welcome-grid{opacity:.24;transition:opacity .5s ease}
@keyframes introPulse{50%{transform:scale(1.08);opacity:.7}}

/* Homepage */
.hero{background:radial-gradient(circle at 20% 20%,rgba(126,69,163,.34),transparent 30%),linear-gradient(118deg,#100a17 0,#24122f 54%,#44204f 100%)}
.hero:before{background:radial-gradient(circle at 17% 20%,rgba(190,121,255,.2),transparent 27%),radial-gradient(circle at 48% 90%,rgba(255,133,104,.12),transparent 25%)}
.hero-copy:before{content:'PEPSFORYOU / RESEARCH CATALOG';border-color:#e8c7ff35;color:var(--champagne);background:#4b286040}
.hero h1 span{background:linear-gradient(90deg,#d4a8ff,#f4cb78,#ff8d72);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 0 18px rgba(232,173,255,.18))}
.hero .lede{color:#c5b6ca}.hero .primary{box-shadow:0 16px 45px #5c2b775e}.ghost{border-color:#dac8e440;color:#f3e9f4}
.science{background-image:linear-gradient(90deg,#1a0d20 0,transparent 25%),linear-gradient(0deg,#1c102055,transparent 35%),url('assets/hero-lab.png');filter:saturate(.82) hue-rotate(35deg)}
.science .spec{background:#1b1026c9;border-color:#e3c1ef55;box-shadow:0 18px 45px #0007,0 0 42px rgba(160,94,196,.18)}
.science .spec span{color:var(--champagne)}.trust span{color:#a997ae}

.categories{background:#21162be8;border-color:#765e7a88;box-shadow:0 30px 90px #09040d99}
.categories button{background:#21162b;color:#f2e9f3;border-color:#4a3854}
.categories button:hover{background:linear-gradient(145deg,#2d1b39,#3c2347)}
.categories button:after{background:linear-gradient(90deg,var(--amethyst),var(--coral),var(--champagne))}
.categories i{background:linear-gradient(145deg,#4a2c5d,#2b1c37);color:var(--champagne);box-shadow:inset 0 0 0 1px #856799}
.categories small{color:#a99caf}.categories em{color:var(--coral)}

.catalog{background:radial-gradient(circle at 91% 6%,rgba(112,55,137,.25),transparent 23%),linear-gradient(180deg,#15101c,#1d1425 48%,#120d18)}
.catalog:before{background-image:radial-gradient(rgba(242,200,121,.09) 1px,transparent 1px)}
.heading>p,.product-info p{color:var(--muted)}.kicker{color:var(--champagne)}
.catalog-offer{border-color:#71577b;background:linear-gradient(105deg,#2e1b39,#38213f 58%,#271923);box-shadow:0 15px 40px #08030d5e}
.catalog-offer b{color:var(--champagne)}.catalog-offer span{color:#b9a9be}
.controls{background:#1b1323e8;border-color:#4e3c59;box-shadow:0 15px 38px #08030d66}
.search{border-color:#4c3a56;color:#ae9cb4}.search input{color:#f4ebf5}.search input::placeholder{color:#88788e}
.filters button{color:#ae9eb5}.filters button.active{background:linear-gradient(135deg,#754490,#4b2a62);color:#fff}
.catalog-sort{color:#a99aaf}.catalog-sort select{border-color:#57435f;background:#25182e;color:#eee5f0}
.results{color:#93849a}
.product-card{background:#21162a;border-color:#4b3953;box-shadow:0 12px 35px #08030d70}
.product-card:hover{border-color:#bd8fd4;box-shadow:0 30px 70px #09030eb5,0 0 0 1px #c999d155}
.product-art.photo-art{background:#120b18}.photo-art:before{background:linear-gradient(180deg,transparent 37%,rgba(17,8,23,.94) 100%)}
.photo-art img{filter:hue-rotate(35deg) saturate(.88) contrast(1.05)}
.product-card:hover .photo-art img{filter:hue-rotate(35deg) saturate(1.04) contrast(1.08)}
.photo-art .pill{background:#201327;color:var(--champagne);box-shadow:0 8px 20px #0008}.photo-art .art-code{color:#d2b4da}.photo-label small{color:var(--champagne)}
.product-info{background:linear-gradient(#24182e,#1a121f)}.product-info>span{color:var(--champagne)}.product-info>div{border-color:#493551}.details{color:#c7b2cd}.add{background:linear-gradient(135deg,var(--coral),#b4527b);box-shadow:0 8px 20px #c353755c}
.size-choice{color:#b9a9bf}.size-choice select{border-color:#513e59;background:#19101f;color:#f3eaf4}

.quality{background:radial-gradient(circle at 16% 36%,rgba(185,123,220,.2),transparent 28%),linear-gradient(130deg,#100a17,#321740)}
.quality:after{border-color:#f2c8791c;box-shadow:0 0 0 80px #f2c87908,0 0 0 160px #a87dff08}
.quality-intro>a,.quality-list i{color:var(--champagne)}.quality-intro>p:not(.kicker),.quality-list p{color:#baaabf}
.faq{background:linear-gradient(145deg,#201629,#120d18)}.accordions details{border-color:#4c3955}.accordions details[open]{background:#281a31;border-color:#5b4565;box-shadow:0 14px 40px #07030a70}.accordions summary span{color:var(--coral)}.accordions p{color:#b6a7bb}
.contact{background:radial-gradient(circle at 90% 10%,rgba(242,200,121,.22),transparent 28%),linear-gradient(130deg,#5b2d72,#8a4f83 58%,#b76569);box-shadow:0 35px 85px #2c112d66}
.contact input,.contact textarea{border-color:#ffffff44;background:#160b1829}.light{background:#f5e9d9;color:#4c2259}
.product-guide{background:linear-gradient(180deg,#17101e,#211529)}.guide-heading>p:last-child{color:#b4a5ba}.guide-table-wrap{border-color:#4d3a55;background:#1b1222;box-shadow:0 20px 55px #07030a88}
.product-guide th{background:#2c1938;color:#f2dfca}.product-guide td{border-color:#44334c;color:#b9aabf}.product-guide td:first-child{color:#f4eaf4}.product-guide tbody tr:hover{background:#2b1b33}.guide-note{color:#a697ad}
.footer-top{background:radial-gradient(circle at 10% 0,#3a1e48,#120c19 38%)}.footer-bottom{background:#09060d;color:#806f87}.footer-top a:not(.logo),.footer-top button{color:#aa9ab0}
.footer-top .instagram-link{border-color:#9d6caa55;background:linear-gradient(120deg,#ffffff09,#7b3d8f22)}

/* The cart keeps all existing behavior while matching the new palette. */
.drawer{background:#18101f;color:#f4ebf4}.drawer-head,.cart-foot,.cart-items article{border-color:#493851}.drawer-head small,.cart-items article small{color:var(--champagne)}
.cart-thumb{background:#302039;color:var(--champagne)}.qty button,.keep-shopping{border-color:#57425f;background:#24172c;color:#f2e8f3}
.drawer form fieldset,.checkout-section,.research-confirm,.age-check,.billing-notice,.policy-accept{border-color:#57435f!important;background:#21162a!important;color:#d5c7d9!important}
.drawer form label,.checkout-section label{color:#ddd0e0}.drawer form input,.checkout-section input{border-color:#5c4764!important;background:#150e1b!important;color:#f3e9f4!important}
.shipping-progress{background:#2d1c36!important;color:var(--champagne)!important}.policy-accept button{color:#dcadff}.drawer #inquiryStatus{color:#ad9bb4}
dialog{background:#1d1425;color:#f4ebf4}.modal-meta,.notice{background:#2b1c34}.modal-meta b{color:#f4ebf4}.notice{border-color:var(--coral);color:#cbbdce!important}
.toast{background:#4b285d;color:#fff}

@media(max-width:760px){
  .header nav{background:#1a1121;box-shadow:0 18px 35px #07030aa8}
  .welcome h1{font-size:clamp(43px,13vw,62px)}
  .welcome-content{width:min(620px,calc(100% - 30px))}
  .hero h1{font-size:48px}.categories{background:#21162b}
}
@media(prefers-reduced-motion:reduce){.welcome:after{animation:none}}

/* Cinematic brand reveal */
.welcome{perspective:1200px}
.welcome-aurora{position:absolute;inset:-18%;z-index:0;overflow:hidden;filter:blur(70px);opacity:.62;pointer-events:none}
.welcome-aurora i{position:absolute;width:42vw;height:42vw;border-radius:50%;mix-blend-mode:screen;animation:auroraDrift 11s ease-in-out infinite alternate}
.welcome-aurora i:nth-child(1){left:2%;top:7%;background:#7f3ca5;animation-delay:-2s}
.welcome-aurora i:nth-child(2){right:0;top:12%;background:#d26574;animation-delay:-6s}
.welcome-aurora i:nth-child(3){left:35%;bottom:-15%;background:#e4ad58;opacity:.62;animation-delay:-9s}
.welcome-content{max-width:850px;animation:introArrive .95s cubic-bezier(.2,.75,.25,1) both}
.intro-orbit{position:relative;width:124px;height:124px;margin:0 auto 14px;display:grid;place-items:center;transform-style:preserve-3d}
.intro-orbit .welcome-mark{position:relative;z-index:3;width:76px;height:76px;margin:0;padding:14px;background:linear-gradient(145deg,#2f1a3cdd,#130b1bdd);box-shadow:0 0 30px #bc7cff55,0 0 90px #a35eca44;animation:coreBreathe 3.8s ease-in-out infinite}
.orbit{position:absolute;inset:7px;border:1px solid #e0b3ff55;border-radius:50%;transform-style:preserve-3d}
.orbit-one{animation:orbitOne 7s linear infinite}
.orbit-two{inset:16px;border-color:#f2c87966;animation:orbitTwo 5.5s linear infinite reverse}
.orbit-three{inset:-7px;border-color:#ff856833;animation:orbitThree 9s linear infinite}
.orbit:before,.orbit:after{content:'';position:absolute;width:7px;height:7px;border-radius:50%;background:var(--champagne);box-shadow:0 0 16px var(--champagne)}
.orbit:before{left:-3px;top:50%}.orbit:after{right:12%;top:8%;background:#ca91ff;box-shadow:0 0 16px #ca91ff}
.orbit-dot{position:absolute;z-index:4;width:5px;height:5px;border-radius:50%;background:#fff;box-shadow:0 0 18px #fff}
.dot-one{left:7px;bottom:19px;animation:dotPulse 1.8s ease-in-out infinite}.dot-two{right:1px;top:31px;animation:dotPulse 1.8s .9s ease-in-out infinite}
.welcome-eyebrow{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:4px}
.welcome-eyebrow span{width:38px;height:1px;background:linear-gradient(90deg,transparent,var(--champagne))}.welcome-eyebrow span:last-child{transform:rotate(180deg)}
.welcome h1{font-size:clamp(54px,7.5vw,96px);line-height:.84;letter-spacing:-.075em;text-transform:none;filter:drop-shadow(0 18px 38px #08030d88)}
.welcome h1 em{font-style:normal;font-weight:500;color:#f8e9da;-webkit-text-fill-color:#f8e9da}
.intro-points{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;margin:-2px auto 18px}
.intro-points span{padding:7px 10px;border:1px solid #d8b2e62b;border-radius:99px;background:#ffffff09;color:#bfaec4;font-size:8px;font-weight:700;letter-spacing:.075em;text-transform:uppercase;backdrop-filter:blur(12px)}
.welcome .welcome-enter{position:relative;min-width:225px;overflow:hidden}
.welcome .welcome-enter:before{content:'';position:absolute;top:-80%;bottom:-80%;left:-55%;width:32%;background:linear-gradient(90deg,transparent,#fff9,transparent);transform:skewX(-20deg);animation:buttonSweep 3.6s 1.2s ease-in-out infinite}
.welcome.stage-age .welcome-aurora{opacity:.25;transition:opacity .5s ease}.welcome.stage-age .intro-orbit,.welcome.stage-age .intro-points{display:none}
@keyframes introArrive{from{opacity:0;transform:translateY(28px) scale(.96)}to{opacity:1;transform:none}}
@keyframes auroraDrift{to{transform:translate3d(12%,8%,0) scale(1.12) rotate(12deg)}}
@keyframes orbitOne{to{transform:rotateX(66deg) rotateZ(360deg)}}
@keyframes orbitTwo{from{transform:rotateY(68deg) rotateZ(0)}to{transform:rotateY(68deg) rotateZ(360deg)}}
@keyframes orbitThree{from{transform:rotateX(76deg) rotateY(28deg) rotateZ(0)}to{transform:rotateX(76deg) rotateY(28deg) rotateZ(360deg)}}
@keyframes coreBreathe{50%{transform:scale(1.07);box-shadow:0 0 45px #bc7cff77,0 0 110px #d46e8150}}
@keyframes dotPulse{50%{transform:scale(2.1);opacity:.35}}
@keyframes buttonSweep{0%,55%{left:-55%}80%,100%{left:130%}}
@media(max-width:620px){.intro-orbit{width:102px;height:102px}.intro-orbit .welcome-mark{width:65px;height:65px}.welcome h1{font-size:clamp(48px,15vw,68px)}.welcome-content>p:not(.welcome-eyebrow){margin:19px auto;font-size:13px}.intro-points{max-width:330px}.intro-points span{font-size:7px}}
@media(prefers-reduced-motion:reduce){.welcome-aurora i,.welcome-content,.intro-orbit .welcome-mark,.orbit,.orbit-dot,.welcome .welcome-enter:before{animation:none!important}}

/* Opening impact sequence: approximately two seconds, then fully interactive. */
.intro-cinematic{position:absolute;inset:0;z-index:2;overflow:hidden;pointer-events:none;animation:cinematicExit .55s 2.05s ease forwards}
.intro-ignition{position:absolute;left:50%;top:50%;width:8px;height:8px;border-radius:50%;background:#fff;transform:translate(-50%,-50%);box-shadow:0 0 28px 8px #fff,0 0 90px 36px #c681ff,0 0 180px 80px #f09f70;animation:ignite 1.25s cubic-bezier(.18,.7,.2,1) forwards}
.intro-ring-burst{position:absolute;inset:0;display:grid;place-items:center}
.intro-ring-burst i{position:absolute;width:80px;height:80px;border:1px solid #f7d395;border-radius:50%;opacity:0;animation:ringBurst 1.45s .25s cubic-bezier(.08,.72,.22,1) forwards}
.intro-ring-burst i:nth-child(2){border-color:#cf94ff;animation-delay:.42s}.intro-ring-burst i:nth-child(3){border-color:#ff8a6e;animation-delay:.58s}
.intro-helix{position:absolute;left:50%;top:50%;width:min(620px,82vw);height:160px;transform:translate(-50%,-50%) rotate(-8deg);opacity:0;animation:helixReveal 1.3s .45s ease forwards}
.intro-helix i{position:absolute;left:calc(var(--n)*12.5%);top:50%;width:9px;height:9px;border-radius:50%;background:#f8d69c;box-shadow:0 0 18px #f2c879;animation:helixWave 1.15s calc(.45s + var(--n)*.06s) ease-in-out both}
.intro-helix i:after{content:'';position:absolute;left:4px;top:4px;width:80px;height:1px;transform-origin:left;background:linear-gradient(90deg,#dcadff99,transparent)}
.intro-helix i:nth-child(1){--n:0;--wave:-38}.intro-helix i:nth-child(2){--n:1;--wave:-18}.intro-helix i:nth-child(3){--n:2;--wave:20}.intro-helix i:nth-child(4){--n:3;--wave:40}.intro-helix i:nth-child(5){--n:4;--wave:25}.intro-helix i:nth-child(6){--n:5;--wave:-16}.intro-helix i:nth-child(7){--n:6;--wave:-40}.intro-helix i:nth-child(8){--n:7;--wave:-12}
.intro-streaks{position:absolute;inset:0;left:50%;top:50%}
.intro-streaks i{position:absolute;left:0;top:0;width:38vw;height:1px;transform-origin:left;background:linear-gradient(90deg,#fff,rgba(210,152,255,.6),transparent);opacity:0;animation:streak 1s calc(.2s + var(--s)*.08s) cubic-bezier(.15,.8,.2,1) forwards}
.intro-streaks i:nth-child(1){--s:0;transform:rotate(18deg)}.intro-streaks i:nth-child(2){--s:1;transform:rotate(72deg)}.intro-streaks i:nth-child(3){--s:2;transform:rotate(142deg)}.intro-streaks i:nth-child(4){--s:3;transform:rotate(205deg)}.intro-streaks i:nth-child(5){--s:4;transform:rotate(274deg)}.intro-streaks i:nth-child(6){--s:5;transform:rotate(328deg)}
.intro-flash{position:absolute;inset:0;background:#fdf7ff;opacity:0;animation:screenFlash .7s .9s ease-out forwards}
.welcome:not(.stage-age) .welcome-content{opacity:0;animation:contentImpact .9s 1.15s cubic-bezier(.16,.8,.22,1) forwards}
.welcome:not(.stage-age) .intro-orbit{animation:emblemImpact .95s 1.05s cubic-bezier(.12,.88,.18,1.18) both}
.welcome:not(.stage-age) .welcome-eyebrow{animation:revealUp .65s 1.34s ease both}
.welcome:not(.stage-age) h1{animation:titleImpact .9s 1.42s cubic-bezier(.15,.82,.2,1) both}
.welcome:not(.stage-age) .welcome-content>p:not(.welcome-eyebrow){animation:revealUp .7s 1.64s ease both}
.welcome:not(.stage-age) .intro-points{animation:revealUp .7s 1.78s ease both}
.welcome:not(.stage-age) .welcome-enter{animation:revealUp .7s 1.9s ease both}
.welcome:not(.stage-age) .welcome-content>small{animation:revealUp .7s 2.02s ease both}
.welcome.stage-age .intro-cinematic{display:none}
@keyframes ignite{0%{opacity:0;transform:translate(-50%,-50%) scale(.05)}24%{opacity:1}68%{transform:translate(-50%,-50%) scale(2.4)}100%{opacity:0;transform:translate(-50%,-50%) scale(9)}}
@keyframes ringBurst{0%{opacity:0;transform:scale(.15)}20%{opacity:.9}100%{opacity:0;transform:scale(14)}}
@keyframes helixReveal{0%{opacity:0;filter:blur(12px);transform:translate(-50%,-50%) rotate(-8deg) scale(.45)}35%{opacity:1}100%{opacity:0;filter:blur(0);transform:translate(-50%,-50%) rotate(4deg) scale(1.35)}}
@keyframes helixWave{0%{transform:translateY(0) scale(0)}45%{transform:translateY(calc(var(--wave)*1px)) scale(1.5)}100%{transform:translateY(0) scale(.4);opacity:0}}
@keyframes streak{0%{opacity:0;width:0}25%{opacity:.85}100%{opacity:0;width:58vw}}
@keyframes screenFlash{0%,100%{opacity:0}34%{opacity:.16}}
@keyframes cinematicExit{to{opacity:0;visibility:hidden}}
@keyframes contentImpact{from{opacity:0}to{opacity:1}}
@keyframes emblemImpact{0%{opacity:0;transform:scale(3.2) rotate(-28deg);filter:blur(18px)}58%{opacity:1;transform:scale(.9) rotate(3deg);filter:blur(0)}100%{opacity:1;transform:none}}
@keyframes titleImpact{from{opacity:0;transform:translateY(45px) scaleY(1.18);filter:blur(14px);letter-spacing:.02em}to{opacity:1;transform:none;filter:blur(0);letter-spacing:-.075em}}
@keyframes revealUp{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@media(max-width:620px){.intro-helix{height:110px}.intro-streaks i{width:55vw}.welcome:not(.stage-age) h1{animation-delay:1.32s}}
@media(prefers-reduced-motion:reduce){.intro-cinematic{display:none}.welcome:not(.stage-age) .welcome-content,.welcome:not(.stage-age) .intro-orbit,.welcome:not(.stage-age) .welcome-eyebrow,.welcome:not(.stage-age) h1,.welcome:not(.stage-age) .welcome-content>p,.welcome:not(.stage-age) .intro-points,.welcome:not(.stage-age) .welcome-enter,.welcome:not(.stage-age) .welcome-content>small{animation:none!important;opacity:1!important}}

/* Dedicated checkout page — presentation only. */
.checkout-page{min-height:100vh;color:#f4ebf4;background:radial-gradient(circle at 8% 10%,rgba(128,70,161,.22),transparent 30%),radial-gradient(circle at 94% 26%,rgba(242,191,114,.1),transparent 24%),linear-gradient(145deg,#0e0914,#18101f 55%,#100a17)}
.checkout-page:before{content:'';position:fixed;inset:0;pointer-events:none;background-image:radial-gradient(rgba(242,200,121,.08) 1px,transparent 1px);background-size:25px 25px;mask-image:linear-gradient(#000,transparent 58%)}
.checkout-header{position:relative;z-index:2;background:rgba(17,11,24,.9);border-bottom-color:#5b466455;box-shadow:0 12px 38px #06020866;backdrop-filter:blur(18px)}
.checkout-header .logo i{background:linear-gradient(145deg,#7a438e,#b86073);box-shadow:0 10px 24px #4b1b5b66}
.checkout-header>span{color:#bcaec2}.checkout-header .cart-trigger{background:linear-gradient(135deg,#6e3c82,#3d2057)}
.checkout-shell{position:relative;z-index:1}
.checkout-main,.order-summary{background:linear-gradient(150deg,rgba(38,25,47,.97),rgba(24,16,31,.98));border-color:#57425f;box-shadow:0 20px 65px #06020888}
.checkout-main h1,.order-summary h2{color:#fbf2f9}.back-link{color:var(--champagne)}
.checkout-main fieldset{border-color:#57435f;background:rgba(16,10,21,.26)}
.checkout-main legend{color:#f0e6f1}.checkout-main legend span{background:linear-gradient(135deg,#a96ddd,#c15c72);box-shadow:0 7px 18px #5b276b66}
.checkout-main fieldset>p{color:#a99bad}.checkout-main label{color:#dbcedf}.checkout-main label small{color:#998a9f}
.checkout-main input{border-color:#5f4a68;background:#140d1a;color:#f5ebf4;box-shadow:inset 0 1px 0 #ffffff08}
.checkout-main input::placeholder{color:#796c80}.checkout-main input:focus{outline:2px solid #b888d8;outline-offset:1px;border-color:#b888d8}
.check-row{border-color:#503d59;background:#1c1223;color:#d8cadb}.check-row input{accent-color:var(--coral)}.check-row button{color:#d8a8ff}
.promo-box{border-color:#57435f;background:linear-gradient(130deg,#23162b,#2c1a33)}.promo-box label{color:#d8cadb}.promo-box input{border-color:#624b6b;background:#140d1a;color:#fff}.promo-box button{background:linear-gradient(135deg,#8e57b3,#be5c73);box-shadow:0 8px 20px #4a1f5766}.promo-box p{color:#dfc375}
.checkout-page .billing-notice{border-color:#57435f!important;background:linear-gradient(130deg,#211529,#28182e)!important}.checkout-page .billing-notice strong,.checkout-page .billing-notice b{color:var(--champagne)}
.checkout-main #checkout{background:linear-gradient(135deg,#a96ddd,#7544a8 55%,#cb735f);box-shadow:0 16px 38px #471c586e}
.checkout-main #inquiryStatus{color:#ac9db2}
.payment-coming-soon{border-color:#57435f;background:#211529;color:#eee3ef}.payment-coming-soon span{color:#ad9eb3}
.manual-payment-button{border-color:#ffffff20;box-shadow:0 10px 25px #07030a66;transition:transform .2s ease,filter .2s ease}.manual-payment-button:hover{transform:translateY(-2px);filter:brightness(1.08)}
.zelle-button{background:linear-gradient(135deg,#7d42a4,#572a70)}.paypal-manual-button{background:linear-gradient(135deg,#6a3f88,#b15d75)}.venmo-manual-button{background:linear-gradient(135deg,#a75975,#cf7a64)}
.order-summary{position:sticky}.summary-item{border-color:#49374f}.summary-item span,.summary-item small,.summary-row{color:#ac9db2}.summary-row.total{border-color:#57435f;color:#f8eff7}.order-summary>small{color:#9c8da2}.empty-checkout{color:#ab9daf}
.checkout-page dialog{background:#1d1425;color:#f4ebf4;border:1px solid #57435f}.checkout-page dialog::backdrop{background:#07030bcc}
.checkout-success{background:linear-gradient(145deg,#2a1b33,#19101f);border-color:#57435f;box-shadow:0 22px 70px #06020899}.success-check{background:linear-gradient(135deg,#a96ddd,#f0b96e);box-shadow:0 13px 32px #6b347477}.checkout-success h1{color:#faf0f8}.checkout-success>p{color:#b1a2b6}.success-reference{border-color:#57435f;background:#1a111f}.success-reference span{color:#a999af}.success-reference strong{color:var(--champagne)}
@media(max-width:850px){.order-summary{position:static}}

/* Make the listed quantity easy to find in each catalog detail dialog. */
.vial-contents{display:grid;gap:8px;margin:20px 0 12px;padding:18px 20px;border:1px solid #b88bdf88;border-radius:12px;background:linear-gradient(125deg,#40204e,#25172f);box-shadow:inset 0 1px 0 #ffffff18}
.vial-contents span{color:#e4bdff;font-size:10px;font-weight:800;letter-spacing:.15em}
.vial-contents strong{color:#fff4fc;font:700 17px/1.4 Manrope,sans-serif}
