:root{color:#241630;background:#fcf9ff}
.announcement{background:linear-gradient(100deg,#62218e 0%,#b91d9c 58%,#ec2878 100%);color:#fff;font-weight:800;letter-spacing:.12em;padding:12px 18px}
.header{border-bottom-color:#f0e4f1;box-shadow:0 5px 25px rgba(71,20,93,.04)}
.brand{color:#46145d;letter-spacing:.09em}.brand-mark{background:linear-gradient(135deg,#6731a5,#d51496);color:#fff;border-radius:9px;box-shadow:0 4px 11px rgba(161,35,159,.24)}
nav{color:#473950}nav a:hover,nav a.active{color:#b71489}.outline-button{border-color:#d8b2dd;color:#72278e;border-radius:999px}.outline-button:hover{background:#fceafa}
.hero{background:radial-gradient(circle at 70% 14%,#b72ca9 0%,transparent 31%),linear-gradient(120deg,#491075 0%,#77239b 53%,#c128a6 100%)}
.hero:after{border-color:rgba(255,255,255,.22);box-shadow:0 0 0 85px rgba(255,255,255,.035),0 0 0 180px rgba(255,255,255,.025)}.hero-inner{min-height:570px;grid-template-columns:.96fr 1.04fr}
.hero .eyebrow{color:#ffe495}.eyebrow,.smallcaps{color:#9e2d9b}.hero h1{font-size:clamp(2.8rem,5vw,5.1rem)}.hero p{color:#f6dbf5}
.button{background:#fcce55;border-color:#fcce55;color:#381344;border-radius:999px;box-shadow:0 9px 22px rgba(53,14,77,.12)}.button:hover{background:#ffe28a;transform:translateY(-3px)}.button.secondary{border-color:#e8b8e8;color:#fff;border-radius:999px}.button.secondary:hover{background:#ffffff20}
.spec-visual{height:400px;border:0;background:#a413a6;border-radius:28px;transform:rotate(2deg);box-shadow:22px 24px 0 rgba(43,7,69,.22);overflow:hidden}.spec-visual:before,.spec-visual:after{display:none}.spec-visual img{width:100%;height:100%;object-fit:cover;display:block}.spec-visual small{bottom:16px;left:18px;color:#421354;background:#fff9;padding:8px 12px;border-radius:999px;backdrop-filter:blur(6px)}
.section h2,.content h1{color:#321942}.section-intro{color:#66546e}.section-link,.inline-link{color:#a51a91}
.product-card{border-color:#ebdced;border-radius:22px;overflow:hidden;box-shadow:0 18px 44px rgba(91,28,118,.09)}.card-art{background:linear-gradient(135deg,#5c148c,#e12ca2)}.card-art img{width:100%;height:100%;max-height:360px;object-fit:cover;transition:transform .35s}.card-art:hover img{transform:scale(1.055)}.card-art .accent-line{display:none}.card-content h3{color:#321942}.card-content p{color:#655769}.pill{border:0;background:#fae2f4;color:#a0148c;border-radius:999px;padding:8px 12px}.inline-link{border-color:#e82b9c}
.info-card{border-color:#ecddeb;border-radius:18px;box-shadow:0 8px 25px rgba(91,28,118,.04)}.info-card:nth-child(1){border-top:5px solid #ec3aa9}.info-card:nth-child(2){border-top:5px solid #8643c9}.info-card:nth-child(3){border-top:5px solid #ffbf45}.info-card .number{color:#af269c}.info-card h3{color:#341943}.info-card p{color:#66576b}
.dark-band,.simple-hero{background:linear-gradient(110deg,#4a166e 0%,#751c9c 60%,#a625a5 100%)}.dark-band p,.simple-hero p{color:#efdbef}.footer{background:#251330;color:#e1cede}.footer-bottom{border-color:#593662}.footer a:hover{color:#ffd477}
.breadcrumb{color:#805e88}.product-layout{gap:54px}.product-art{background:#9117a1;border:0;border-radius:24px;box-shadow:0 20px 35px rgba(104,28,126,.14);min-height:550px}.product-art:before{display:none}.product-art img{width:100%;height:100%;min-height:550px;object-fit:cover;position:absolute;inset:0}.product-art .art-label{z-index:1;background:#fff;color:#7e278e;border-radius:999px;letter-spacing:.07em;font-size:.75rem;box-shadow:0 4px 16px #2a093b33}
.product-summary h1{color:#2b1639}.product-summary .lead{color:#625369}.status{background:#faf0ff;border-left-color:#b64ac6;color:#5d2b6b;border-radius:0 12px 12px 0}.facts{border-color:#ecddec}.facts dt,.facts dd{border-color:#ecddec}.facts dt{color:#816f87}.facts dd{color:#35233d}.variant{border-color:#dfd0e2;border-radius:999px}.variant:hover{border-color:#b525a6;background:#fff5fd}.variant[aria-pressed=true]{border-color:#a41a9b;background:#fcedf9;color:#83107d;border-radius:999px}.disabled-cta{border-radius:999px;background:#e9dfea;color:#6d5a70}.purchase-note,.under-note{color:#6f6074}
.tabs-section{border-color:#eddfeb}.tabs{border-color:#ead9e7}.tab{color:#85718b}.tab[aria-selected=true]{color:#8b168d;border-color:#dd259c}.tab-panel{color:#54465b}.tab-panel h2{color:#321942}.tab-panel a{color:#95198d}.content p,.content li{color:#615368}.content h2{color:#361b46}.content .notice,.empty-coa{background:#f9eaf8;border-color:#d944b5;color:#5e3268;border-radius:0 12px 12px 0}.empty-coa{border:1px solid #edcde7;border-left:4px solid #d944b5;border-radius:12px}.faq-list details{border-color:#ead8e7}.faq-list summary:after{color:#bb238e}
@media(max-width:900px){.hero-inner{min-height:auto}.spec-visual{height:320px;max-width:560px;width:100%;margin:auto}.product-art,.product-art img{min-height:430px}}
@media(max-width:690px){.hero h1{font-size:2.8rem}.spec-visual{height:300px;transform:rotate(0);box-shadow:10px 12px 0 rgba(43,7,69,.2)}.card-art{height:300px}.card-art img{max-height:none}.product-art,.product-art img{min-height:350px}.product-layout{gap:30px}.mobile-nav.open{border-color:#ebd5ea}.product-summary h1{font-size:2.7rem}}
.photo-section{padding:78px 0 82px;background:#fff}.photo-heading{display:flex;align-items:end;justify-content:space-between;gap:25px;margin-bottom:28px}.photo-heading h2{font:800 clamp(2rem,3.4vw,3.4rem)/1.12 Manrope,sans-serif;letter-spacing:-.055em;color:#2d173b;margin:10px 0}.photo-heading p{max-width:670px;color:#66566c;line-height:1.65;margin:0}.photo-index{font-weight:800;letter-spacing:.16em;color:#a2269a;font-size:.8rem;white-space:nowrap}.photo-grid{display:grid;grid-template-columns:1.2fr 1fr .9fr;gap:16px}.photo-tile{margin:0;position:relative;min-width:0;border-radius:19px;overflow:hidden;background:#e9dfe9;aspect-ratio:4/3;box-shadow:0 10px 24px rgba(69,19,78,.09)}.photo-tile img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s}.photo-tile:hover img{transform:scale(1.045)}.photo-tile figcaption{position:absolute;left:15px;bottom:15px;background:rgba(255,255,255,.92);color:#4c285a;border-radius:999px;padding:8px 12px;font-size:.78rem;font-weight:800;backdrop-filter:blur(8px)}
@media(max-width:900px){.photo-grid{grid-template-columns:1fr 1fr}.photo-tile:last-child{display:none}}
@media(max-width:690px){.photo-section{padding:54px 0}.photo-heading{align-items:start;flex-direction:column}.photo-grid{grid-template-columns:1fr 1fr;gap:9px}.photo-tile{aspect-ratio:3/4;border-radius:13px}.photo-tile figcaption{font-size:.7rem;left:8px;bottom:8px;padding:7px 9px}}
.catalog-home-link{margin-top:25px;text-align:center}
.card-content .featured-price{font-weight:800;color:#a31e92;margin:0 0 12px}

/* Keep homepage sections aligned at phone and tablet widths. */
@media(max-width:900px){
  .hero-inner{grid-template-columns:minmax(0,1fr);gap:34px}
  .hero-inner>div{min-width:0}
  .spec-visual{transform:none;max-width:620px;justify-self:center}
}
@media(max-width:690px){
  .announcement{font-size:.7rem;letter-spacing:.06em;line-height:1.4}
  .header-inner{gap:12px}
  .hero-inner{padding:44px 0 48px;gap:34px}
  .hero h1{font-size:clamp(2.35rem,10vw,2.8rem);overflow-wrap:normal}
  .hero p{font-size:1rem}
  .hero-actions{display:grid;grid-template-columns:1fr;gap:10px}
  .hero-actions .button{width:100%;text-align:center}
  .spec-visual{height:auto;aspect-ratio:4/3;width:100%;border-radius:18px;box-shadow:8px 10px 0 rgba(43,7,69,.2)}
  .spec-visual small{max-width:calc(100% - 28px);font-size:.65rem;left:14px;bottom:14px}
  .photo-heading{gap:12px}
  .photo-grid{grid-template-columns:minmax(0,1fr);gap:14px}
  .photo-tile{aspect-ratio:4/3}
  .photo-tile:last-child{display:block}
  .photo-tile figcaption{left:12px;bottom:12px;font-size:.75rem}
  .card-art{height:auto;aspect-ratio:4/3;min-height:0}
  .card-art img{max-height:none;height:100%}
  .card-content{padding:27px 24px}
  .card-content h3{font-size:1.75rem}
  .catalog-home-link .button{width:100%}
  .dark-band .button{width:100%}
}
@media(max-width:360px){.brand{font-size:.86rem;letter-spacing:.05em}.brand-mark{flex:none}.footer-grid{gap:18px}}

/* Homepage campaign banner */
.kovo-banner{background:radial-gradient(circle at 82% 14%,#e648b5 0,transparent 28%),linear-gradient(115deg,#35104f 0%,#68188d 52%,#9b239d 100%)}
.kovo-banner:after{right:-260px;top:-220px}
.banner-inner{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);align-items:center;gap:clamp(24px,4vw,64px);padding:64px 0 28px;min-height:550px;position:relative;z-index:1}
.banner-copy{min-width:0}.banner-copy h1{font:800 clamp(2.8rem,5.3vw,5.8rem)/1.02 Manrope,sans-serif;letter-spacing:-.06em;margin:20px 0 22px;max-width:800px}.banner-copy h1 em{font-style:normal;color:#ffd374}.banner-copy p{color:#f5ddf1;font-size:1.1rem;line-height:1.65;max-width:600px}
.banner-image{position:relative;min-width:0;aspect-ratio:1.22;border-radius:26px;overflow:hidden;box-shadow:22px 23px 0 #2807385c,0 28px 50px #21062855;transform:rotate(2deg)}.banner-image img{display:block;width:100%;height:100%;object-fit:cover}.banner-image span{position:absolute;left:17px;bottom:17px;background:#fff;color:#5b1b73;border-radius:999px;padding:9px 13px;font-size:.75rem;font-weight:800;box-shadow:0 5px 18px #25053533}
.banner-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border-top:1px solid #ffffff52;position:relative;z-index:1;padding:24px 0 28px}.banner-facts>div{display:flex;flex-direction:column;gap:5px;padding:0 22px;border-left:1px solid #ffffff52}.banner-facts>div:first-child{padding-left:0;border-left:0}.banner-facts strong{font:800 1.35rem Manrope,sans-serif;color:#ffd374}.banner-facts span{font-size:.85rem;color:#f1d8ef;line-height:1.4}
@media(max-width:900px){.banner-inner{grid-template-columns:minmax(0,1fr);min-height:0;padding:60px 0 36px}.banner-image{transform:none;max-width:620px;width:100%;justify-self:center}}
@media(max-width:690px){.banner-inner{padding:48px 0 32px;gap:32px}.banner-copy h1{font-size:clamp(2.35rem,10vw,3.2rem)}.banner-copy h1 br{display:none}.banner-copy p{font-size:1rem}.banner-image{aspect-ratio:4/3;border-radius:18px;box-shadow:8px 10px 0 #28073855}.banner-image span{left:10px;bottom:10px;font-size:.66rem;max-width:calc(100% - 20px)}.banner-facts{gap:12px;padding:20px 0 26px}.banner-facts>div{padding:0 0 0 12px}.banner-facts strong{font-size:.9rem}.banner-facts span{font-size:.7rem}.content a{color:#a51a91;text-decoration:underline}}
@media(max-width:360px){.banner-facts{grid-template-columns:1fr}.banner-facts>div{border-left:0;padding:0}}

/* Shipping promotion and research-use notice */
.promo-banner{background:linear-gradient(108deg,#742997 0%,#ba218f 62%,#ed2687 100%);color:#fff;text-align:center}.promo-inner{padding:12px 0 13px}.promo-inner p{font:500 clamp(.95rem,1.75vw,1.3rem)/1.4 Manrope,sans-serif;margin:0}.promo-inner strong{font-weight:800}.promo-divider{opacity:.7;padding:0 10px}.promo-dismiss{display:block;margin:6px auto 0;border:0;background:none;color:#fff;text-decoration:underline;text-underline-offset:3px;font-size:.84rem;padding:4px 12px}.promo-dismiss:hover,.promo-dismiss:focus-visible{color:#ffeaa6}.research-notice{background:#1c0d2b;color:#e9ddea;text-align:center;font-size:.86rem;line-height:1.45;padding:10px 0}.research-notice strong{color:#fff}
@media(max-width:690px){.promo-inner{padding:12px 0 10px}.promo-inner p{font-size:.94rem;line-height:1.5}.promo-divider{display:none}.promo-inner p span[aria-hidden="true"]:last-of-type{margin-left:8px}.promo-dismiss{font-size:.79rem;margin-top:2px}.research-notice{font-size:.76rem;padding:9px 0}}

/* Homepage count-up metrics */
.banner-facts strong{font-size:clamp(2.25rem,4vw,3.5rem);line-height:1.05;letter-spacing:-.05em;font-variant-numeric:tabular-nums}.banner-facts span{font-size:.95rem}.banner-facts{padding:30px 0 35px}
@media(max-width:690px){.banner-facts{grid-template-columns:minmax(0,1fr);gap:0;padding:24px 0 35px}.banner-facts>div,.banner-facts>div:first-child{border-left:0;padding:14px 0}.banner-facts strong{font-size:2.35rem}.banner-facts span{font-size:.9rem}.banner-facts>div+div{border-top:1px solid #ffffff34}}

/* Product vial artwork */
.catalog-art{overflow:hidden}.catalog-art img{display:block;width:100%;height:100%;aspect-ratio:1;object-fit:cover}.catalog-art small{z-index:1}.detail-art{overflow:hidden}.detail-art img{display:block;width:100%;height:100%;position:absolute;inset:0;object-fit:cover}.detail-art span{z-index:1;box-shadow:0 5px 18px #22062e44}

/* A compact selection of the catalog on the homepage. */
.home-products{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:26px}
.home-product{display:flex;flex-direction:column;min-width:0;overflow:hidden;background:#fff;border:1px solid #ebdcea;border-radius:20px;box-shadow:0 12px 32px #4c155b12;transition:transform .2s,box-shadow .2s}
.home-product:hover{transform:translateY(-4px);box-shadow:0 18px 36px #4c155b22}
.home-product:focus-visible{outline:3px solid #d627a7;outline-offset:3px}
.home-product-image{aspect-ratio:1.4;overflow:hidden;background:linear-gradient(135deg,#62238f,#ca3aa8)}
.home-product-image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .25s}
.home-product:hover img{transform:scale(1.045)}
.home-product-copy{display:flex;flex-direction:column;flex:1;padding:21px}
.home-product-copy>span{color:#a32495;text-transform:uppercase;font-size:.76rem;font-weight:800;letter-spacing:.06em}
.home-product-copy h3{font:800 1.23rem/1.3 Manrope,sans-serif;color:#30193f;margin:9px 0 7px}
.home-product-copy p{color:#51435b;font-size:1rem;font-weight:700;margin:0 0 19px}
.home-product-copy strong{margin-top:auto;color:#902187;font-size:.88rem}
@media(max-width:850px){.home-products{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:540px){.home-products{gap:11px}.home-product{border-radius:14px}.home-product-image{aspect-ratio:1}.home-product-copy{padding:13px}.home-product-copy>span{font-size:.69rem;line-height:1.35}.home-product-copy h3{font-size:1rem;overflow-wrap:anywhere}.home-product-copy p{font-size:.86rem;margin-bottom:14px}.home-product-copy strong{font-size:.78rem;line-height:1.4}}
.supplier-reports{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,310px),1fr));gap:18px;margin:34px 0 48px}.supplier-report{padding:24px;border:1px solid #d6e0e7;border-radius:18px;background:#fff;box-shadow:0 8px 28px rgba(16,27,41,.05)}.supplier-report-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:18px}.supplier-report-head span{font-size:1.25rem;font-weight:800;color:#162536}.supplier-report-head strong{font-size:.85rem;color:#842ec2;text-align:right}.supplier-report dl{display:grid;grid-template-columns:110px 1fr;gap:9px 12px;margin:0;font-size:.9rem;line-height:1.45}.supplier-report dt{color:#5d6978}.supplier-report dd{margin:0;overflow-wrap:anywhere;color:#182535;font-weight:600}.report-links{display:flex;flex-wrap:wrap;gap:12px;margin:22px 0 12px}.report-links a{font-size:.9rem;font-weight:700;color:#8c22ae;text-decoration:underline}.supplier-report small{display:block;font-size:.8rem;overflow-wrap:anywhere;color:#5d6978}@media(max-width:420px){.supplier-report{padding:18px}.supplier-report dl{grid-template-columns:95px 1fr}}
.report-image{margin-top:20px;border-top:1px solid #e5e9ee;padding-top:16px}.report-image summary{cursor:pointer;color:#842ec2;font-weight:800;list-style:disclosure-closed}.report-image[open] summary{list-style:disclosure-open}.report-image img{display:block;width:100%;height:auto;margin:16px 0;border:1px solid #e5e9ee;border-radius:8px}.report-image>a{font-weight:700;color:#842ec2;text-decoration:underline}
.banner-image img{object-fit:contain;background:#101b29}
