.pharm-intro{position:fixed;inset:0;width:100%;max-width:none;height:100dvh;max-height:none;margin:0;padding:0;border:0;overflow:hidden;background:#031e19;color:#fff9e9;isolation:isolate;outline:none}
.pharm-intro::backdrop{background:#031e19}.pharm-intro:not([open]){display:none}
.pharm-intro[open]{display:grid;place-items:center;animation:intro-arrive .5s ease both}
.intro-running{overflow:hidden}.pharm-intro.leaving{animation:intro-depart .65s ease both;pointer-events:none}
.intro-sky{position:absolute;inset:-15%;z-index:-2;background:radial-gradient(ellipse at 50% 45%,#166b4d88,transparent 43%),radial-gradient(ellipse at 20% 10%,#237b5a66,transparent 40%),radial-gradient(ellipse at 90% 90%,#86733d33,transparent 42%),#031e19;animation:intro-sky 6s ease both}
.intro-aurora{position:absolute;width:120%;height:70%;left:-10%;top:15%;border-radius:50%;border-top:1px solid #c4f7db55;box-shadow:0 -30px 80px #32d59716,inset 0 30px 90px #4dd9a815;transform:rotate(-28deg);filter:blur(1px);animation:intro-aurora 5.8s ease both;z-index:-1}
.intro-aurora.second{transform:rotate(28deg);animation-direction:reverse;top:25%;border-color:#ecd39c35}
.intro-particles{position:absolute;inset:0;width:100%;height:100%;z-index:-1;pointer-events:none}
.intro-stage{position:relative;width:min(660px,92vw);display:flex;flex-direction:column;align-items:center;text-align:center;padding:30px;pointer-events:none}
.intro-orbit{width:clamp(210px,35vw,340px);height:clamp(210px,35vw,340px);position:relative;display:grid;place-items:center;perspective:650px;margin-bottom:10px}
.intro-halo{position:absolute;inset:0;border-radius:50%;background:radial-gradient(circle,#94ffca22,transparent 64%);box-shadow:0 0 100px #30d78b16;animation:intro-halo 5.6s ease both}
.intro-ring{position:absolute;inset:5%;border:1px solid #f6dfa175;border-radius:50%;box-shadow:0 0 20px #8ef5b719,inset 0 0 15px #9afbcf19;transform:rotateX(65deg) rotateZ(-30deg);animation:intro-ring 5.5s cubic-bezier(.16,.7,.23,1) both}
.intro-ring::after{content:"";position:absolute;top:14%;left:14%;width:5px;height:5px;border-radius:50%;background:#fff1c4;box-shadow:0 0 16px 4px #e6d09b66}
.intro-ring.r2{inset:0;border-color:#8bffc05c;transform:rotateY(65deg) rotateZ(35deg);animation-name:intro-ring-two}.intro-ring.r3{inset:17%;border-color:#dbedb538;transform:rotateX(20deg) rotateY(-35deg);animation-name:intro-ring-three}
.intro-capsule{width:clamp(140px,24vw,220px);height:auto;filter:drop-shadow(0 0 28px #62f7b04f) drop-shadow(0 18px 30px #0005);animation:intro-capsule 5.6s cubic-bezier(.16,.7,.23,1) both}
.intro-brand{font:clamp(46px,8vw,78px)/1.2 Georgia,serif;letter-spacing:-.04em;color:#fff8e9;direction:ltr;animation:intro-wordmark 5.6s ease both;text-shadow:0 0 30px #ddfbe020}
.intro-brand b{display:inline-block;font:500 .3em/1.1 Arial,sans-serif;letter-spacing:.09em;vertical-align:middle;padding:.35em .48em;margin-inline-start:.3em;border:1px solid #d6c18f;border-radius:30px;color:#f6dfac;background:linear-gradient(120deg,#d8b87518,#ddfbe009);box-shadow:inset 0 1px 1px #ffefb533,0 0 25px #c8a56515}
.pharm-intro .intro-caption{margin-top:24px;max-width:530px;font-size:clamp(13px,2vw,17px);line-height:1.7;letter-spacing:.04em;color:#d5eedd;opacity:1;animation:intro-caption 5.6s ease both}
.intro-rule{width:85px;height:1px;margin-top:25px;background:linear-gradient(90deg,transparent,#e9d2a0,transparent);animation:intro-caption 5.6s ease both}
.intro-skip{position:absolute;inset-inline-end:clamp(18px,4vw,50px);top:max(22px,env(safe-area-inset-top));padding:12px 20px;min-height:44px;border:1px solid #cfdfce70;border-radius:30px;background:#103c30;color:#f8efdb;font-size:14px;z-index:4;cursor:pointer}
.intro-skip:hover{background:#1c513e;border-color:#edd19a}.intro-skip:focus-visible{outline:3px solid #f7d899;outline-offset:4px}
.intro-progress{position:absolute;bottom:max(30px,env(safe-area-inset-bottom));width:100px;height:2px;background:#c4dfcc22;left:calc(50% - 50px);overflow:hidden;border-radius:5px}.intro-progress::after{content:"";display:block;height:100%;background:#e7d09a;transform-origin:left;animation:intro-progress 5.6s linear both}
.intro-replay{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--gold-edge);border-radius:30px;padding:9px 15px;margin-top:20px;min-height:44px;color:var(--gold-ink);background:var(--warm-paper);font-size:13px}.intro-replay svg{width:17px;height:17px}
@keyframes intro-arrive{from{opacity:0}to{opacity:1}}@keyframes intro-depart{to{opacity:0;filter:blur(7px)}}
@keyframes intro-sky{from{transform:scale(1.2) rotate(-5deg)}to{transform:scale(1) rotate(3deg)}}
@keyframes intro-aurora{from{opacity:0;scale:.7}25%{opacity:1}to{opacity:.5;scale:1.12}}
@keyframes intro-halo{0%{opacity:0;scale:.2}35%{opacity:1;scale:1.1}100%{opacity:.7;scale:1}}
@keyframes intro-capsule{0%{opacity:0;transform:translateY(45px) scale(.45) rotate(-60deg);filter:blur(12px)}30%{opacity:1;filter:drop-shadow(0 0 35px #62f7b077)}60%{transform:translateY(-5px) scale(1.02) rotate(4deg)}100%{opacity:1;transform:translateY(0) scale(1) rotate(0)}}
@keyframes intro-ring{0%{opacity:0;transform:rotateX(85deg) rotateZ(-140deg) scale(.4)}35%{opacity:1}100%{transform:rotateX(65deg) rotateZ(40deg)}}
@keyframes intro-ring-two{0%{opacity:0;transform:rotateY(85deg) rotateZ(-80deg) scale(.4)}35%{opacity:.8}100%{transform:rotateY(65deg) rotateZ(70deg)}}
@keyframes intro-ring-three{0%{opacity:0;scale:.3}45%{opacity:1}100%{transform:rotateX(20deg) rotateY(-35deg) rotateZ(120deg)}}
@keyframes intro-wordmark{0%,18%{opacity:0;transform:translateY(20px);filter:blur(10px)}43%,100%{opacity:1;transform:translateY(0);filter:blur(0)}}
@keyframes intro-caption{0%,35%{opacity:0;transform:translateY(10px)}60%,100%{opacity:1;transform:translateY(0)}}
@keyframes intro-progress{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@media(max-height:600px){.intro-orbit{width:180px;height:180px}.intro-capsule{width:125px}.intro-caption{margin-top:12px}.intro-rule{margin-top:12px}.intro-stage{padding:15px}.intro-brand{font-size:45px}}
@media(prefers-reduced-motion:reduce){.pharm-intro,.pharm-intro *{animation:none!important;transition:none!important}.intro-particles,.intro-progress{display:none}.pharm-intro.leaving{opacity:0;filter:none}}
