@font-face{font-family:Manrope;src:url("fonts/manrope.ttf") format("truetype");font-weight:200 800;font-style:normal;font-display:swap}
/* BIOPEPTIDE LABS — visual system */
:root{--ink:#0b172e;--navy:#0b172e;--teal:#00acc5;--teal-dark:#08768b;--teal-soft:#eaf8fa;--muted:#74828c;--line:#dbe5e8;--paper:#fff;--soft:#f5f9fa}
html,body{background:#f2f6f7;color:var(--ink)}
body{font-family:Manrope,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;line-height:1.6;-webkit-font-smoothing:antialiased}
.app{width:min(100%,1040px);box-shadow:0 0 80px #14384708}
.announcement{position:relative;display:flex;align-items:center;justify-content:center;gap:11px;min-height:54px;padding:11px 58px 11px 22px;background:linear-gradient(110deg,#08778b,#00aec6);color:#fff;text-align:center;font-size:14px;line-height:1.45;font-weight:700;letter-spacing:.01em}.dhl-badge{display:inline-flex;align-items:center;justify-content:center;flex:none;width:62px;height:30px;border-radius:4px;overflow:hidden;box-shadow:0 3px 9px #063c491f}.dhl-badge img{display:block;width:100%;height:100%;object-fit:contain}.announcement button{position:absolute;right:12px;top:50%;transform:translateY(-50%);width:38px;height:38px;border:0;border-radius:50%;background:transparent;color:#e5fbfe;font-size:27px;font-weight:300;line-height:1}.announcement button:hover{background:#ffffff1c}.announcement[hidden]{display:none!important}
header{height:132px;padding:28px 38px;background:linear-gradient(115deg,#08697f,#00b4cc);justify-content:flex-start;overflow:hidden}
.brand-lockup{display:flex;align-items:center;gap:15px;color:white;line-height:1.15;position:relative;z-index:2}
.brand-symbol{width:49px;height:55px;flex:none}
.brand-lockup strong{font-size:26px;letter-spacing:-1px;font-weight:800;display:block}
.brand-lockup small{display:block;font-size:10px;letter-spacing:4.5px;margin-top:8px;color:#e1f7fb;font-weight:650}
.header-vial{width:85px;height:114px;right:27px;top:10px;opacity:.9}
.install{left:auto;right:126px;bottom:18px;background:#ffffff18;border-color:#ffffff70;font-weight:600;padding:6px 10px}
nav{padding:12px 34px;gap:10px;background:#ffffffef;box-shadow:none;border-bottom:1px solid #e6edef}
.tab{font-size:13px;font-weight:650;min-height:55px;flex-direction:row;gap:10px;border-radius:12px;color:#6b7883}
.tab.active{background:#eaf8fa;color:#08778b}.tab.active::after{display:none}.tab.active .nav-icon{color:#08778b}
.nav-icon{display:flex}.nav-icon svg{width:21px;height:21px;stroke:currentColor;stroke-width:1.7;fill:none;stroke-linecap:round;stroke-linejoin:round}
main{padding:42px 38px 64px;background:#fff;min-height:65vh}
#calculator{position:relative}.home-vial{position:absolute;right:8px;top:-10px;width:118px;height:142px;margin:0;display:grid;place-items:center;isolation:isolate}.home-vial-glow{position:absolute;inset:14px 0 0;border-radius:50%;background:radial-gradient(circle,#b9eef3 0,#e9f9fb 48%,transparent 72%);z-index:-1}.home-vial img{width:102px;height:126px;object-fit:contain;filter:drop-shadow(0 12px 14px #0b536326)}#calculator>h1,#calculator>.intro,#calculator>.eyebrow{padding-right:130px}
h1{font-size:clamp(30px,5vw,44px);line-height:1.13;letter-spacing:-1.4px;font-weight:800}
.eyebrow{font-size:11px;letter-spacing:1.8px;color:#08768b;margin-bottom:13px;font-weight:750}
.intro{font-size:16px;line-height:1.75;color:#74828c;margin:16px 0 30px;max-width:60ch}
.card{border:1px solid #dce6e9;border-radius:20px;padding:28px;box-shadow:none;margin-bottom:22px}
.card h2{font-size:18px;letter-spacing:-.4px;margin-bottom:23px}.grid{gap:23px 20px}
label{font-size:14px;font-weight:700}.field{gap:10px}.control{min-height:60px;border:1px solid #cad7dc;background:white;border-radius:13px}
.control:focus-within{border-color:#00a9c2;box-shadow:0 0 0 3px #00acc512}
.control input,.control select,.control textarea{font-size:17px;padding:16px;color:#0b172e;font-weight:550}
.control select{background-position:calc(100% - 20px) 27px,calc(100% - 15px) 27px}.suffix{color:#7c8a93;font-size:14px}
.text-action{color:#08768b;text-decoration:none;font-size:12px;font-weight:600;text-align:left;padding-top:3px}
.result{background:#eff9fb;border:1px solid #bfdee5;color:#0b172e;padding:30px;box-shadow:none}
.result::after{display:none}.result .eyebrow{color:#08768b!important}.big{font-size:64px;line-height:1.1;letter-spacing:-3px}.big small{color:#657f89;font-size:14px;font-weight:500;letter-spacing:0}.result-meta{color:#657f89;font-size:13px}.result-top>div>strong{font-size:22px}
.bar{height:16px;border:1px solid #97c8d3;background:repeating-linear-gradient(90deg,#b4d3da 0 1px,transparent 1px 10%);border-radius:4px}.fill{background:linear-gradient(90deg,#08768b,#06b7ce)}.ticks{color:#52717d;font-size:11px}.warning{color:#9f341f}
.primary,#ageConfirm{min-height:58px;background:linear-gradient(110deg,#08738a,#00b5cc);border-radius:14px;box-shadow:none;font-weight:750;font-size:16px;padding:17px 20px}.primary:hover{box-shadow:0 7px 18px #07889c18}.fineprint{font-size:12px;line-height:1.8;color:#7b8993}
.transfer-hint{margin:10px 3px 0;color:#6b7b84;font-size:11px;line-height:1.55}
.ghost{background:#fff;border:1px solid #cddbe0;border-radius:13px;color:#425765;min-height:44px}
.category-head{padding:8px 0}.category-head h2{font-size:17px;letter-spacing:-.3px}.category-count{background:#eaf5f7;color:#08768b;padding:3px 10px;border-radius:20px;font-size:11px}.library-list{gap:30px}.category-group{gap:12px}
.portfolio-total{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0 0 18px;padding:18px 20px;border:1px solid #cfe4e9;border-radius:16px;background:linear-gradient(120deg,#f2fafb,#e8f7f9);color:#0b172e}.portfolio-total span:first-child{display:grid;gap:2px}.portfolio-total small{color:#61747e;font-size:11px;font-weight:650;letter-spacing:.04em;text-transform:uppercase}.portfolio-total strong{font-size:19px;letter-spacing:-.025em}.portfolio-total-count{flex:none;background:#fff;color:#08768b;border:1px solid #d7eaee;border-radius:999px;padding:7px 13px;font-size:12px;font-weight:750}
.profile-open{background:#fff;border:1px solid #d8e3e7;box-shadow:none;border-radius:15px;padding:20px}.profile-open strong{font-size:17px;letter-spacing:-.3px}.profile-open span{font-size:12px}.profile-open::after{background:#eaf7fa;color:#08768b;border-radius:10px}.profile-open:hover{border-color:#00acc5;box-shadow:none}
.search{margin:0 0 25px;background:#f8fbfc}.search input{font-weight:400}.profile-hero{background:linear-gradient(115deg,#08697f,#00abc4);padding:28px}.profile-hero .category,.profile-hero p{color:#def5f9}.profile-hero h2{font-size:30px;letter-spacing:-.8px}.profile-content{padding:26px}.quick{background:#f0f8fa;border-color:#dcebee;border-radius:14px}.detail-block{padding:24px 0 6px}.detail-block p,.detail-block ul{color:#536570;line-height:1.8}.timeline-card{background:#f8fbfc;border-color:#dce7ea;border-radius:13px}.timeline-card strong{color:#0b172e}
.weekhead{margin-bottom:20px}.weekhead h2{font-size:18px}.weeknav button{background:#fff;border-color:#cedde2;color:#08768b;border-radius:11px;width:42px;height:42px}.summary{gap:12px;margin:20px 0}.stat{background:#f2f9fb;border:1px solid #d7e9ee;border-radius:15px;padding:18px}.stat strong{font-size:23px;letter-spacing:-.6px;margin-top:6px}.stat span{font-size:12px}
.period-switch{display:grid;grid-template-columns:1fr 1fr;gap:5px;margin:20px 0 4px;padding:5px;background:#edf5f7;border-radius:14px}.period-switch button{min-height:44px;border:0;border-radius:10px;background:transparent;color:#637681;font-weight:700}.period-switch button.active{background:#fff;color:#08768b;box-shadow:0 3px 12px #173d4a12}
.entry{border-color:#dce5e8;border-radius:15px;box-shadow:none;padding:17px}.day{background:#e9f7fa;color:#08768b;border-radius:12px;box-shadow:none}.day small{color:#54838e}.entry h3{font-size:15px}.entry p{font-size:12px;overflow-wrap:anywhere}.empty{background:#fafcfd;border:1px dashed #cbdde3;border-radius:16px;padding:48px 22px;font-size:14px}.delete{min-width:44px;min-height:44px}
.dialog{background:#0b172e80;backdrop-filter:blur(5px)}.sheet{background:#fff;border-radius:24px 24px 0 0;padding:28px;box-shadow:0 20px 80px #0b172e20}.profile-sheet{padding:0}.sheet-title h2::before{display:none}.close{background:#edf5f7;color:#44606c}.toast{background:#0b172e;font-size:14px;font-weight:550}
body.age-locked{background:#eef5f7}#ageGate{width:min(100%,620px);background:white;padding:44px 32px;min-height:100dvh}.age-brand{background:linear-gradient(115deg,#08697f,#00b4cc);border-radius:0;margin:-44px -32px 38px;padding:32px}.age-brand .brand-lockup{justify-content:center}.age-brand .brand-lockup strong{font-size:24px}#ageGate h1{font-size:36px;letter-spacing:-1px;line-height:1.15}.age-intro{font-size:16px;line-height:1.8}.age-notice{font-size:15px;color:#516773;line-height:1.85;background:#f0f8fa;border:1px solid #cfe4ea;border-radius:18px;padding:24px;margin:28px 0}.age-notice strong{color:#0b172e}#ageDecline{font-size:14px;border-color:#d5e1e6;color:#6f7c86}#ageDenied{font-size:14px}
button:focus-visible{outline:3px solid #08768b;outline-offset:3px}
@media(min-width:800px){#calculator{display:grid;grid-template-columns:1.25fr 1fr;gap:0 26px}#calculator>.eyebrow,#calculator>h1,#calculator>.intro{grid-column:1/-1}#calculator>.card:not(.result){grid-column:1;grid-row:4/8}#calculator>.result{grid-column:2;align-self:start}#calculator>#toLog,#calculator>.transfer-hint,#calculator>.fineprint{grid-column:2}#calculator>.fineprint{margin-bottom:0}.library-list{grid-template-columns:1fr 1fr;align-items:start}}
@media(max-width:600px){header{height:108px;padding:22px}.brand-lockup{gap:10px}.brand-symbol{width:35px;height:43px}.brand-lockup strong{font-size:21px;letter-spacing:-.8px}.brand-lockup small{font-size:8px;letter-spacing:3.4px}.header-vial{right:9px;width:53px;height:88px;top:10px}.install{right:14px;bottom:3px;font-size:9px;padding:1px 6px}main{padding:30px 21px 125px}h1{font-size:34px}.intro{font-size:14px;margin:14px 0 27px}.home-vial{right:-4px;top:-4px;width:92px;height:116px}.home-vial img{width:78px;height:100px}#calculator>h1,#calculator>.intro,#calculator>.eyebrow{padding-right:94px}.card{padding:21px;border-radius:17px}.grid{grid-template-columns:1fr 1fr;gap:20px 14px}.field.full{grid-column:1/-1}label{font-size:12px}.control{min-height:56px}.control input,.control select{font-size:16px;padding:14px 12px}.control select{padding-right:28px}.suffix{font-size:12px;padding:0 10px}.result{padding:23px}.big{font-size:54px}.big small{font-size:12px}.result-top{gap:12px}.result-top>div>strong{font-size:19px}.primary{font-size:14px}.summary{gap:8px}.stat{padding:13px 10px}.stat strong{font-size:19px}.stat span{font-size:10px}.sheet{padding:22px 18px}.profile-sheet{padding:0}.profile-content{padding:20px}.quick-grid{grid-template-columns:1fr}.profile-hero{padding:25px 20px}nav{position:fixed;top:auto;bottom:0;left:50%;transform:translateX(-50%);width:min(100%,1040px);border-top:1px solid #dce8ec;padding:10px 14px max(10px,env(safe-area-inset-bottom));gap:7px}.tab{flex-direction:column;gap:5px;font-size:11px;min-height:54px;border-radius:12px}#ageGate{padding:32px 24px}.age-brand{margin:-32px -24px 34px;padding:30px 18px}#ageGate h1{font-size:32px}.age-notice{padding:21px}.age-brand .brand-lockup strong{font-size:23px}}
@media(max-width:600px){.announcement{min-height:52px;gap:8px;padding:8px 45px 8px 10px;font-size:12px}.dhl-badge{width:54px;height:27px}.announcement button{right:5px;width:36px;height:36px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;scroll-behavior:auto!important}}
@media(max-width:380px){header .brand-lockup strong{font-size:18px}header .brand-lockup small{font-size:7px;letter-spacing:2.5px}header .brand-symbol{width:29px}.header-vial{width:43px;right:6px}header{padding:20px 16px}.big{font-size:46px}.big small{display:block}main{padding-left:17px;padding-right:17px}}
@media(max-width:380px){.portfolio-total{padding:15px 14px;gap:10px}.portfolio-total strong{font-size:17px}.portfolio-total-count{padding:6px 10px;font-size:11px}}

/* Original identity: unchanged logo artwork and a prominent, uncropped vial. */
header{height:204px;padding:18px 160px 24px 24px;background:#0b0b0d;position:relative}
header .brand-logo{display:block;width:min(100%,440px);height:162px;object-fit:contain;filter:invert(1);mix-blend-mode:screen}
header .header-vial{display:block;width:140px;height:180px;right:18px;top:10px;opacity:1;object-fit:contain}
header .install{right:22px;bottom:5px;font-size:10px;padding:2px 8px}
.age-brand{background:#0b0b0d}
.age-brand .brand-logo{width:min(100%,360px);height:auto;max-height:180px;object-fit:contain;filter:invert(1);mix-blend-mode:screen}
@media(max-width:600px){header{height:172px;padding:14px 105px 20px 8px}header .brand-logo{width:100%;height:138px}header .header-vial{width:100px;height:146px;right:4px;top:6px}header .install{right:8px;bottom:5px;font-size:9px}.age-brand .brand-logo{height:auto;max-height:150px}}
@media(max-width:600px){#ageGate{padding:18px 20px max(24px,env(safe-area-inset-bottom))}.age-brand{margin:-18px -20px 20px;padding:14px 18px}.age-brand .brand-logo{height:82px;max-height:82px}#ageGate h1{font-size:27px;margin-bottom:10px}.age-intro{font-size:14px;line-height:1.55;margin:0 0 16px}#ageGate button{padding:14px;min-height:52px;border-radius:14px}#ageDecline{margin-top:8px}.age-notice{font-size:12px;line-height:1.55;padding:15px;margin:18px 0 0;border-radius:14px}}

/* Contact navigation and source links */
nav{grid-template-columns:repeat(4,minmax(0,1fr))}.tab{min-width:0}.contact-links{display:grid;gap:16px;margin:28px 0}.contact-card{display:flex;align-items:center;gap:18px;padding:24px;border:1px solid #dae6eb;border-radius:20px;background:white;text-decoration:none;color:#0d1b2a;box-shadow:0 8px 26px #0d1b2a08}.contact-card>svg{width:42px;height:42px;flex-shrink:0}.contact-card.whatsapp>svg{color:#20b968}.contact-card.telegram>svg{color:#229ed9}.contact-card>span:nth-child(2){flex:1}.contact-card strong,.contact-card small{display:block}.contact-card strong{font-size:21px}.contact-card small{margin-top:6px;color:#62727c}.contact-card:hover{border-color:#0aa5ba;box-shadow:0 8px 28px #0a9aac18}.contact-card:focus-visible{outline:3px solid #0aa5ba;outline-offset:3px}.research-sources a{color:#087c91;overflow-wrap:anywhere}.research-sources li{margin-bottom:12px}@media(max-width:380px){nav{padding-left:5px;padding-right:5px;gap:2px}.tab{font-size:10px;padding-left:2px;padding-right:2px}}

/* Refined typography */
h1,.profile-hero h2{font-weight:750;letter-spacing:-.035em}h2,h3{letter-spacing:-.025em}button,input,select,textarea{font-family:inherit}.big,.stat strong{font-variant-numeric:tabular-nums}

/* Product catalog details */
.profile-open{display:flex;align-items:center;justify-content:space-between;gap:14px;text-align:left}.profile-open>span:first-child{min-width:0}.profile-open strong{display:block}.profile-open strong+span{display:block;margin-top:5px;color:#667780;font-size:12px;line-height:1.45}.profile-arrow{color:#078196;font-size:28px;font-weight:400;line-height:1;flex:none}

/* Reusable vial image for every catalog entry */
.catalog-vial{width:72px;height:82px;object-fit:contain;flex:none;border-radius:10px;background:#fff}.catalog-copy{min-width:0;flex:1}.profile-hero{display:grid;grid-template-columns:112px minmax(0,1fr);gap:22px;align-items:center;transition:padding .22s ease,grid-template-columns .22s ease,gap .22s ease}.profile-hero .close{position:absolute;right:18px;top:18px;transition:width .22s ease,height .22s ease,top .22s ease,right .22s ease}.profile-vial{width:112px;height:132px;object-fit:contain;border-radius:14px;background:#fff;transition:width .22s ease,height .22s ease}.profile-hero-copy{min-width:0}.profile-hero-copy h2{transition:font-size .22s ease,margin .22s ease}.profile-hero-copy p{margin-bottom:0;max-height:240px;overflow:hidden;opacity:1;transition:max-height .18s ease,opacity .14s ease,margin .18s ease}.profile-hero.is-compact{grid-template-columns:54px minmax(0,1fr);gap:12px;padding:11px 58px 11px 14px}.profile-hero.is-compact .profile-vial{width:54px;height:62px;border-radius:9px}.profile-hero.is-compact .profile-hero-copy h2{font-size:21px;margin:1px 0 0}.profile-hero.is-compact .profile-hero-copy p{max-height:0;opacity:0;margin:0}.profile-hero.is-compact .category{font-size:10px}.profile-hero.is-compact .close{right:12px;top:15px;width:34px;height:34px}@media(max-width:600px){.catalog-vial{width:62px;height:72px}.profile-open{gap:11px}.profile-hero{grid-template-columns:86px minmax(0,1fr);gap:16px}.profile-vial{width:86px;height:104px}.profile-hero-copy h2{font-size:27px}.profile-hero.is-compact{grid-template-columns:48px minmax(0,1fr);gap:11px;padding:9px 52px 9px 12px}.profile-hero.is-compact .profile-vial{width:48px;height:56px}.profile-hero.is-compact .profile-hero-copy h2{font-size:19px}.profile-hero.is-compact .close{right:10px;top:12px}}

/* Visible research-use notice across all sections */
.research-notice{background:#eaf8fa;border:1px solid #c5e4ea;border-left:4px solid #08768b;border-radius:12px;padding:16px 18px;margin:0 0 28px;color:#23454f;line-height:1.65}.research-notice strong{display:block;color:#086579;font-size:14px;font-weight:750}.research-notice p{font-size:13px;margin:7px 0 0}.profile-purpose{padding:24px 28px 0}.profile-purpose .research-notice{margin-bottom:12px}.profile-purpose>.fineprint{color:#536671;font-size:12px;line-height:1.65}@media(max-width:600px){.profile-purpose{padding:20px 20px 0}.research-notice{padding:14px 15px;margin-bottom:24px}}

/* Lighter turquoise header pair, official contact marks and motion */
.announcement{background:linear-gradient(110deg,#159aae,#25c5d3);overflow:hidden}.announcement::before{content:"";position:absolute;inset:-80% auto -80% -25%;width:18%;background:#ffffff26;transform:rotate(18deg);animation:announcementShine 6s ease-in-out infinite}header{background:linear-gradient(115deg,#0d91a7,#20c5d4)}
.contact-card{width:100%;text-align:left;transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease}.contact-logo{width:46px;height:46px;object-fit:contain;flex-shrink:0}.contact-card:hover{transform:translateY(-4px)}.contact-sheet{position:relative;text-align:center;max-width:440px;border-radius:24px;padding:34px}.contact-sheet>.close{position:absolute;right:16px;top:16px}.contact-sheet>img{display:block;width:76px;height:76px;margin:6px auto 20px;object-fit:contain;animation:contactPop .5s cubic-bezier(.2,.8,.2,1)}.contact-sheet h2{font-size:28px}.contact-sheet p:not(.eyebrow){color:#667780;margin:10px 0 24px}.contact-open{display:block;text-decoration:none;color:#fff}
main>section:not([hidden]){animation:sectionIn .42s ease both}.home-vial img{animation:vialFloat 4s ease-in-out infinite}.profile-open,.card,.stat{transition:transform .22s ease,box-shadow .22s ease}.profile-open:hover,.card:hover,.stat:hover{transform:translateY(-3px);box-shadow:0 12px 30px #0b53630d}
.trust-showcase{grid-column:1/-1;margin:42px -38px -22px;padding:36px 0 28px;background:linear-gradient(180deg,#f7fbfc,#eef7f9);overflow:hidden}.trust-showcase>.eyebrow,.trust-showcase>h2{margin-left:38px;margin-right:38px}.trust-showcase h2{font-size:28px;margin-bottom:23px}.trust-marquee{overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent)}.trust-track{display:flex;width:max-content;gap:15px;animation:trustMove 34s linear infinite}.trust-track:hover{animation-play-state:paused}.trust-track article{width:270px;min-height:154px;padding:22px;border:1px solid #d7e5e9;border-radius:18px;background:#fff;box-shadow:0 10px 28px #1238480b}.trust-track article>span{display:grid;place-items:center;width:34px;height:34px;margin-bottom:14px;border-radius:50%;background:#e6f7f9;color:#078093;font-size:11px;font-weight:800}.trust-track strong{font-size:17px}.trust-track p{margin:8px 0 0;color:#667780;font-size:13px;line-height:1.6}
@keyframes trustMove{to{transform:translateX(calc(-50% - 7.5px))}}@keyframes vialFloat{50%{transform:translateY(-7px) rotate(1deg)}}@keyframes sectionIn{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@keyframes contactPop{from{opacity:0;transform:scale(.65) rotate(-8deg)}to{opacity:1;transform:none}}@keyframes announcementShine{0%,65%{left:-25%}100%{left:125%}}
@media(max-width:600px){.trust-showcase{margin:34px -21px -20px;padding:30px 0 24px}.trust-showcase>.eyebrow,.trust-showcase>h2{margin-left:21px;margin-right:21px}.trust-showcase h2{font-size:24px}.trust-track article{width:235px;min-height:145px;padding:19px}}
@media(prefers-reduced-motion:reduce){.announcement::before,.home-vial img,.trust-track,main>section:not([hidden]),.contact-sheet>img{animation:none!important}}

/* Full-page motion system */
header{background:#090a0c;isolation:isolate}header::before{content:"";position:absolute;z-index:-1;width:260px;height:260px;right:-90px;top:-120px;border-radius:50%;background:radial-gradient(circle,#20d4e744,transparent 68%);animation:headerGlow 7s ease-in-out infinite}header::after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(105deg,transparent 30%,#ffffff0d 48%,transparent 64%);background-size:240% 100%;animation:headerSweep 8s ease-in-out infinite}header .brand-logo{animation:brandReveal .75s cubic-bezier(.2,.8,.2,1) both}header .header-vial{animation:headerVial 4.5s ease-in-out infinite;filter:drop-shadow(0 16px 18px #00bed52c)}
.research-notice{animation:noticeEnter .62s .08s cubic-bezier(.2,.8,.2,1) both}.research-notice strong::before{content:"";display:inline-block;width:7px;height:7px;margin:0 9px 2px 0;border-radius:50%;background:#0eb2c5;box-shadow:0 0 0 0 #0eb2c555;animation:noticePulse 2.4s ease-out infinite}
main>section:not([hidden])>h1{animation:titleReveal .58s .05s both}main>section:not([hidden])>.eyebrow{animation:titleReveal .5s both}.intro{animation:titleReveal .58s .12s both}.home-vial-glow{animation:glowBreathe 3.4s ease-in-out infinite}
.field{animation:fieldRise .5s both}.field:nth-child(1){animation-delay:.08s}.field:nth-child(2){animation-delay:.13s}.field:nth-child(3){animation-delay:.18s}.field:nth-child(4){animation-delay:.23s}.field:nth-child(5){animation-delay:.28s}.control{transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}.control:focus-within{transform:translateY(-2px)}
.result{position:relative;overflow:hidden;animation:resultEnter .68s .18s both}.result::before{content:"";position:absolute;inset:-70% -25%;pointer-events:none;background:linear-gradient(105deg,transparent 42%,#ffffff8c 50%,transparent 58%);transform:translateX(-55%);animation:resultShine 7s ease-in-out infinite}.fill{background-size:220% 100%;animation:fillFlow 2.8s linear infinite}.primary{position:relative;overflow:hidden;transition:transform .18s ease,box-shadow .18s ease}.primary:hover{transform:translateY(-3px)}.primary:active{transform:scale(.98)}
.tab{transition:transform .2s ease,background .2s ease,color .2s ease}.tab:active{transform:scale(.94)}.tab.active .nav-icon{animation:navPop .42s cubic-bezier(.2,.9,.2,1)}
.category-group,.entry{animation:cardRise .5s both}.category-group:nth-child(2n),.entry:nth-child(2n){animation-delay:.06s}.profile-open{overflow:hidden;position:relative}.profile-open::before{content:"";position:absolute;inset:0;background:linear-gradient(105deg,transparent 35%,#14b6c60c 50%,transparent 65%);transform:translateX(-110%);transition:transform .55s ease}.profile-open:hover::before{transform:translateX(110%)}.catalog-vial{transition:transform .25s ease}.profile-open:hover .catalog-vial{transform:translateY(-4px) scale(1.06)}
.dialog.open .sheet{animation:sheetUp .4s cubic-bezier(.2,.85,.2,1) both}.profile-hero{background-size:180% 180%;animation:heroGradient 7s ease infinite}.summary .stat:nth-child(1){animation:statPop .45s .05s both}.summary .stat:nth-child(2){animation:statPop .45s .12s both}.summary .stat:nth-child(3){animation:statPop .45s .19s both}
@supports(animation-timeline:view()){.category-group,.entry{animation:scrollReveal linear both;animation-timeline:view();animation-range:entry 4% cover 24%}}
@keyframes brandReveal{from{opacity:0;transform:translateX(-28px) scale(.96)}to{opacity:1;transform:none}}@keyframes headerVial{50%{transform:translateY(-8px) rotate(1.5deg)}}@keyframes headerGlow{50%{transform:translate(-35px,28px) scale(1.16);opacity:.75}}@keyframes headerSweep{0%,60%{background-position:220% 0}100%{background-position:-30% 0}}@keyframes noticeEnter{from{opacity:0;transform:translateX(-22px)}to{opacity:1;transform:none}}@keyframes noticePulse{70%{box-shadow:0 0 0 9px #0eb2c500}}@keyframes titleReveal{from{opacity:0;transform:translateY(16px);letter-spacing:.02em}to{opacity:1;transform:none}}@keyframes fieldRise{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes resultEnter{from{opacity:0;transform:scale(.96) translateY(15px)}to{opacity:1;transform:none}}@keyframes resultShine{0%,70%{transform:translateX(-55%)}100%{transform:translateX(55%)}}@keyframes fillFlow{to{background-position:-220% 0}}@keyframes navPop{0%{transform:scale(.7)}65%{transform:scale(1.18)}100%{transform:none}}@keyframes cardRise{from{opacity:0;transform:translateY(15px)}to{opacity:1;transform:none}}@keyframes sheetUp{from{opacity:0;transform:translateY(45px) scale(.985)}to{opacity:1;transform:none}}@keyframes heroGradient{50%{background-position:100% 50%}}@keyframes statPop{from{opacity:0;transform:scale(.88)}to{opacity:1;transform:none}}@keyframes glowBreathe{50%{transform:scale(1.12);opacity:.78}}@keyframes scrollReveal{from{opacity:.15;transform:translateY(28px) scale(.98)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){header::before,header::after,header .brand-logo,header .header-vial,.research-notice,.research-notice strong::before,main>section:not([hidden])>h1,main>section:not([hidden])>.eyebrow,.intro,.home-vial-glow,.field,.result,.result::before,.fill,.tab.active .nav-icon,.category-group,.entry,.dialog.open .sheet,.profile-hero,.summary .stat{animation:none!important}.control,.primary,.tab,.profile-open,.catalog-vial{transition:none!important}}

/* Immediate contact buttons and tactile interface motion */
.floating-contact{position:fixed;right:max(16px,calc((100vw - 1040px)/2 + 16px));bottom:max(92px,calc(76px + env(safe-area-inset-bottom)));z-index:42;display:flex;flex-direction:column;gap:11px}.floating-contact-button{width:54px;height:54px;padding:11px;border:0;border-radius:18px;background:#fff;box-shadow:0 12px 34px #061f2b30;display:grid;place-items:center;overflow:hidden;animation:contactFloat 3.4s ease-in-out infinite;transition:transform .22s cubic-bezier(.2,.9,.2,1),box-shadow .22s ease}.floating-contact-button.telegram{animation-delay:-1.1s}.floating-contact-button img{width:100%;height:100%;object-fit:contain;transition:transform .25s cubic-bezier(.2,.9,.2,1)}.floating-contact-button:hover,.floating-contact-button:focus-visible{transform:translateY(-5px) scale(1.08);box-shadow:0 17px 42px #061f2b42}.floating-contact-button:hover img{transform:rotate(-7deg) scale(1.1)}
button,.primary,.profile-open,.contact-card{position:relative;overflow:hidden;-webkit-tap-highlight-color:transparent}.tap-ripple{position:absolute;z-index:20;width:18px;height:18px;margin:-9px 0 0 -9px;border-radius:50%;background:#fff8;pointer-events:none;animation:tapRipple .55s ease-out forwards}.profile-open .tap-ripple,.contact-card .tap-ripple,.ghost .tap-ripple,.weeknav .tap-ripple,.period-switch .tap-ripple{background:#00acc52b}button:active,.primary:active,.profile-open:active,.contact-card:active{transform:scale(.965)}
.dialog.open{animation:backdropIn .28s ease both}.dialog.open .sheet{transform-origin:center bottom}.dialog.closing{display:flex;animation:backdropOut .3s ease forwards;pointer-events:none}.dialog.closing .sheet{animation:sheetDown .3s cubic-bezier(.4,0,1,1) forwards!important}.dialog.contact-dialog.open .contact-sheet{animation:modalPop .4s cubic-bezier(.18,.9,.25,1.12) both}.dialog.contact-dialog.closing .contact-sheet{animation:modalClose .28s cubic-bezier(.4,0,1,1) forwards!important}.close{transition:transform .25s ease,background .25s ease}.close:hover{transform:rotate(90deg) scale(1.08)}
@keyframes contactFloat{50%{transform:translateY(-6px)}}@keyframes tapRipple{to{transform:scale(9);opacity:0}}@keyframes backdropIn{from{opacity:0}to{opacity:1}}@keyframes backdropOut{from{opacity:1}to{opacity:0}}@keyframes sheetDown{to{opacity:0;transform:translateY(55px) scale(.97)}}@keyframes modalPop{from{opacity:0;transform:translateY(24px) scale(.78)}70%{transform:translateY(-3px) scale(1.025)}to{opacity:1;transform:none}}@keyframes modalClose{to{opacity:0;transform:translateY(20px) scale(.82)}}
@media(max-width:600px){.floating-contact{right:12px;bottom:max(91px,calc(78px + env(safe-area-inset-bottom)));gap:8px}.floating-contact-button{width:48px;height:48px;padding:9px;border-radius:16px}}
@media(prefers-reduced-motion:reduce){.floating-contact-button,.dialog.open,.dialog.open .sheet,.dialog.closing,.dialog.closing .sheet,.tap-ripple{animation:none!important}.floating-contact-button,button,.primary,.profile-open,.contact-card,.close{transition:none!important}}

/* Compact research notice on the main view */
.homepage-notice{padding:12px 16px;margin-bottom:22px;line-height:1.45}.homepage-notice strong{font-size:13px}.homepage-notice p{margin-top:4px;font-size:12px;line-height:1.5}
@media(max-width:600px){.homepage-notice{padding:11px 13px;margin-bottom:20px;border-radius:11px}.homepage-notice strong{font-size:12px}.homepage-notice p{font-size:11px;line-height:1.45}}

/* Frameless horizontal quick contact and animated FAQ */
.floating-contact{flex-direction:row;align-items:center;gap:10px}.floating-contact-button{width:44px;height:44px;padding:0;border-radius:0;background:transparent;box-shadow:none;overflow:visible}.floating-contact-button:hover,.floating-contact-button:focus-visible{box-shadow:none}.floating-contact-button:focus-visible{outline:3px solid #00acc5;outline-offset:4px;border-radius:50%}.floating-contact-button.signal{animation-delay:-.55s}
.faq{margin-top:42px}.faq>h2{font-size:28px;margin:0 0 20px}.faq details{border-bottom:1px solid #dce7ea;background:#fff;transition:background .22s ease}.faq summary{position:relative;padding:18px 42px 18px 0;cursor:pointer;list-style:none;font-size:15px;font-weight:750;color:#0b172e}.faq summary::-webkit-details-marker{display:none}.faq summary::after{content:'+';position:absolute;right:5px;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#eaf8fa;color:#08768b;font-size:20px;transition:transform .28s ease,background .22s ease}.faq details[open] summary::after{transform:translateY(-50%) rotate(45deg);background:#00acc5;color:#fff}.faq details p{margin:0;padding:0 36px 18px 0;color:#647680;font-size:13px;line-height:1.65;animation:faqOpen .32s ease both}@keyframes faqOpen{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}
@media(max-width:600px){.floating-contact{right:15px;gap:9px}.floating-contact-button{width:40px;height:40px}.faq{margin-top:34px}.faq>h2{font-size:24px}.faq summary{font-size:14px;padding-top:16px;padding-bottom:16px}}
.faq-contact{margin-top:28px}.faq:not([hidden]){margin-top:0}.faq:not([hidden])>h1{margin-bottom:12px}
.faq-category{margin:34px 0 10px;padding:10px 13px;border-left:4px solid #00acc5;border-radius:0 10px 10px 0;background:#eaf8fa;color:#0b5261;font-size:15px;letter-spacing:.02em}.faq-category:first-of-type{margin-top:8px}.faq details{border-radius:12px;padding:0 14px;margin-bottom:7px;background:#f6fafb;border:1px solid #e0eaed}.faq details[open]{background:#eef9fb;border-color:#bfe2e8}.faq details summary{padding-right:38px}

/* Delayed DHL shipping pop-up */
.announcement{position:fixed;z-index:85;left:50%;top:50%;width:min(calc(100% - 28px),560px);min-height:64px;border-radius:17px;box-shadow:0 18px 55px #04192352;transform:translate(-50%,-50%) scale(.78);opacity:0;pointer-events:none;transition:transform .46s cubic-bezier(.18,.9,.25,1.14),opacity .28s ease}.announcement.is-visible{transform:translate(-50%,-50%) scale(1);opacity:1;pointer-events:auto}.announcement.is-closing{transform:translate(-50%,-50%) scale(.82);opacity:0;pointer-events:none}.announcement[hidden]{display:none!important}.announcement .dhl-badge{width:72px;height:34px}.announcement>span:nth-child(2){flex:1}.announcement button:active{transform:translateY(-50%) scale(.9)}
@media(max-width:600px){.announcement{width:calc(100% - 28px);min-height:58px;padding:9px 46px 9px 12px;border-radius:15px;font-size:12px}.announcement .dhl-badge{width:60px;height:29px}}

/* DHL delivery card */
.announcement{top:38%;justify-content:flex-start;gap:15px;min-height:92px;padding:16px 52px 16px 18px;background:linear-gradient(145deg,#fff,#fff9df);color:#181818;text-align:left;border:1px solid #f3d86b;box-shadow:0 20px 58px #15100035}.announcement::before{display:none}.announcement button{color:#a11720;background:#fff4c6}.announcement button:hover{background:#ffe88b}.shipping-copy{display:flex!important;flex-direction:column;gap:3px;min-width:0}.shipping-copy strong{font-size:18px;color:#171717;letter-spacing:-.2px}.shipping-copy small{font-size:12px;color:#615c4b;line-height:1.4}.dhl-van{position:relative;display:block;flex:0 0 108px;width:108px;height:58px;animation:vanArrival .7s cubic-bezier(.2,.9,.2,1) both}.dhl-van-box{position:absolute;left:0;top:5px;width:72px;height:38px;border-radius:7px 4px 3px 5px;background:#ffcc00;display:grid;place-items:center;border:1px solid #e6af00}.dhl-van-box img{width:62px;height:auto}.dhl-van-cab{position:absolute;left:69px;top:15px;width:35px;height:28px;border-radius:4px 9px 4px 2px;background:#ffcc00;border:1px solid #e6af00}.dhl-van-cab::before{content:'';position:absolute;right:4px;top:4px;width:15px;height:10px;border-radius:2px 6px 1px 1px;background:#bfe7ef}.dhl-van-cab::after{content:'';position:absolute;left:-70px;bottom:7px;width:94px;height:3px;background:#d40511;box-shadow:0 6px 0 #d40511}.dhl-van .wheel{position:absolute;z-index:2;bottom:4px;width:15px;height:15px;border:4px solid #252525;border-radius:50%;background:#c9c9c9}.wheel-one{left:16px}.wheel-two{right:9px}@keyframes vanArrival{from{opacity:0;transform:translateX(-45px)}70%{transform:translateX(4px)}to{opacity:1;transform:none}}
@media(max-width:600px){.announcement{top:36%;width:calc(100% - 24px);min-height:82px;padding:13px 42px 13px 13px;gap:10px}.dhl-van{flex-basis:91px;width:91px;transform:scale(.88);transform-origin:left center}.shipping-copy strong{font-size:15px}.shipping-copy small{font-size:10px}}

/* Modern DHL delivery card and compact messenger launcher */
.announcement{top:22%;gap:16px;min-height:88px;max-width:520px;padding:15px 54px 15px 17px;background:rgba(255,255,255,.97);color:#111827;border:1px solid rgba(17,24,39,.08);border-radius:22px;box-shadow:0 22px 60px rgba(15,23,42,.22),0 3px 12px rgba(15,23,42,.08);backdrop-filter:blur(14px);overflow:hidden}.announcement::before{content:'';display:block;position:absolute;inset:0 auto 0 0;width:5px;background:linear-gradient(180deg,#ffcc00 0 58%,#d40511 58% 100%)}.announcement button{color:#334155;background:#f1f5f9;border:1px solid #e2e8f0;box-shadow:none}.announcement button:hover{background:#e2e8f0}.shipping-copy{gap:4px}.shipping-copy strong{color:#111827;font-weight:800;letter-spacing:-.35px}.shipping-copy small{color:#64748b;font-weight:600}.dhl-van{filter:drop-shadow(0 8px 8px rgba(15,23,42,.18));animation:vanArrivalModern .72s cubic-bezier(.18,.88,.25,1.15) both}.dhl-van-box,.dhl-van-cab{border:0;background:linear-gradient(145deg,#ffdc32,#ffcc00)}.dhl-van-cab::before{background:linear-gradient(145deg,#dff6fb,#91c9d7)}.dhl-van .wheel{border-color:#1e293b;background:#cbd5e1;box-shadow:inset 0 0 0 2px #fff}@keyframes vanArrivalModern{from{opacity:0;transform:translateX(-55px) scale(.92)}70%{transform:translateX(5px) scale(1.02)}to{opacity:1;transform:none}}
.floating-contact{display:flex;flex-direction:row;align-items:center;gap:10px}.floating-contact-menu{display:flex;align-items:center;gap:9px;opacity:0;visibility:hidden;pointer-events:none;transform:translateX(18px) scale(.8);transform-origin:right center;transition:opacity .24s ease,transform .34s cubic-bezier(.18,.9,.25,1.15),visibility .24s}.floating-contact.is-open .floating-contact-menu{opacity:1;visibility:visible;pointer-events:auto;transform:none}.floating-contact-menu .floating-contact-button{opacity:0;transform:translateX(12px) scale(.72)}.floating-contact.is-open .floating-contact-button{opacity:1;transform:none}.floating-contact.is-open .floating-contact-button:nth-child(1){transition-delay:.12s}.floating-contact.is-open .floating-contact-button:nth-child(2){transition-delay:.07s}.floating-contact.is-open .floating-contact-button:nth-child(3){transition-delay:.02s}.floating-contact-toggle{width:54px;height:54px;border:0;border-radius:19px;background:linear-gradient(145deg,#0f9bad,#08778b);box-shadow:0 13px 34px rgba(6,62,73,.32);display:flex;align-items:center;justify-content:center;gap:4px;transition:transform .3s cubic-bezier(.2,.9,.2,1),border-radius .3s ease,background .3s ease}.floating-contact-toggle span{width:5px;height:5px;border-radius:50%;background:#fff;transition:transform .3s ease,opacity .2s ease}.floating-contact.is-open .floating-contact-toggle{transform:rotate(90deg);border-radius:50%;background:#172635}.floating-contact.is-open .floating-contact-toggle span:first-child{transform:translateX(9px)}.floating-contact.is-open .floating-contact-toggle span:last-child{transform:translateX(-9px)}
@media(max-width:600px){.announcement{top:17%;width:calc(100% - 24px);min-height:80px;padding:12px 42px 12px 14px;border-radius:19px}.floating-contact{right:14px;gap:8px}.floating-contact-menu{gap:8px}.floating-contact-toggle{width:50px;height:50px;border-radius:17px}.floating-contact-menu .floating-contact-button{width:39px;height:39px}}

/* Clear messenger call-to-action */
.floating-contact-toggle{width:auto;height:52px;padding:0 17px 0 14px;border-radius:18px;gap:9px;color:#fff}.floating-contact-toggle svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;flex:none}.floating-contact-toggle strong{font:800 14px/1 Inter,system-ui,sans-serif;white-space:nowrap;letter-spacing:-.1px}.floating-contact.is-open .floating-contact-toggle{transform:none;border-radius:18px}.floating-contact.is-open .floating-contact-toggle svg{transform:rotate(-8deg) scale(1.08)}
@media(max-width:600px){.floating-contact-toggle{width:auto;height:48px;padding:0 14px 0 12px;gap:7px;border-radius:16px}.floating-contact-toggle svg{width:22px;height:22px}.floating-contact-toggle strong{font-size:13px}.floating-contact.is-open .floating-contact-toggle{border-radius:16px}}

/* Animated brand stage */
header{overflow:hidden;perspective:900px}header .brand-logo{transform-origin:42% 52%;will-change:transform,opacity;animation:brandZoomEntrance .9s cubic-bezier(.16,.82,.25,1.12) both,brandBreathing 4.8s .95s ease-in-out infinite!important}header .header-vial{transform-origin:50% 72%;will-change:transform;animation:vialEntrance .85s .18s cubic-bezier(.16,.82,.25,1.1) both,vialShowcase 4.2s 1.05s ease-in-out infinite!important}header::after{animation:headerSweep 6s ease-in-out infinite}.age-brand .brand-logo{animation:brandZoomEntrance .8s cubic-bezier(.16,.82,.25,1.12) both,brandBreathing 5s .85s ease-in-out infinite!important}
@keyframes brandZoomEntrance{0%{opacity:0;transform:scale(.7) translateY(8px);filter:blur(7px) invert(1)}68%{opacity:1;transform:scale(1.055);filter:blur(0) invert(1)}100%{opacity:1;transform:scale(1);filter:blur(0) invert(1)}}@keyframes brandBreathing{0%,100%{transform:scale(1)}50%{transform:scale(1.045)}}@keyframes vialEntrance{from{opacity:0;transform:translateX(45px) scale(.78) rotate(6deg)}to{opacity:1;transform:none}}@keyframes vialShowcase{0%,100%{transform:translateY(0) rotate(0) scale(1)}50%{transform:translateY(-8px) rotate(1.5deg) scale(1.025)}}
@media(prefers-reduced-motion:reduce){header .brand-logo,header .header-vial,.age-brand .brand-logo{animation:none!important}}

/* Refined logo motion, static vial */
header .brand-logo{animation:brandSmoothEntrance 1.15s cubic-bezier(.22,.72,.24,1) both,brandSmoothZoom 6.5s 1.2s cubic-bezier(.45,0,.55,1) infinite!important}header .header-vial{animation:none!important;transform:none!important}.age-brand .brand-logo{animation:brandSmoothEntrance 1.05s cubic-bezier(.22,.72,.24,1) both,brandSmoothZoom 7s 1.1s cubic-bezier(.45,0,.55,1) infinite!important}@keyframes brandSmoothEntrance{0%{opacity:0;transform:scale(.88);filter:blur(3px) invert(1)}100%{opacity:1;transform:scale(1);filter:blur(0) invert(1)}}@keyframes brandSmoothZoom{0%,100%{transform:scale(1)}50%{transform:scale(1.022)}}

/* FAQ messenger chooser */
.faq-contact{display:grid;grid-template-columns:30px 1fr;grid-template-rows:auto auto;column-gap:11px;align-items:center;text-align:left}.faq-contact svg{grid-row:1/3;width:27px;height:27px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.faq-contact span{font-weight:800}.faq-contact small{font-size:10px;line-height:1.25;opacity:.82;font-weight:650;letter-spacing:.02em}
