/* ApexRx formulation showroom. Real-time models share one graphics context. */
.formulary-page{background:#111d3b}.formulary-page .page-hero{background:radial-gradient(ellipse at 76% 36%,#44b6a127,transparent 50%),linear-gradient(145deg,#273471,#121d3c 72%)}
.formulary-page .page-hero h1{font-size:clamp(60px,6.5vw,98px);letter-spacing:-.065em}.formulary-page .page-hero h1 em{color:#91dfcc}.formulary-page .page-hero-copy>p{max-width:440px}.formulary-page .page-studio{height:640px}.formulary-page .hero-baseline{padding-bottom:24px}
.category-rail{background:#172648;border-top:1px solid #8eb4bf26;border-bottom:1px solid #8eb4bf26;position:relative;z-index:6}.category-rail>.wrap{display:flex;justify-content:space-between;gap:28px;overflow-x:auto;scrollbar-width:thin;scrollbar-color:#44b6a1 #172648;padding-block:25px}.category-rail a{white-space:nowrap;font-size:14px;color:#d9e9ec}.category-rail a span{color:#7acdbb;font-size:12px;margin-right:11px}.category-rail a:hover,.category-rail a[aria-current=true]{color:#8ee5cc}.formulary-showroom{padding-top:100px;padding-bottom:55px}.showroom-intro{display:flex;justify-content:space-between;align-items:end;gap:60px;margin-bottom:70px}.showroom-intro h2{font-size:clamp(40px,5vw,73px);letter-spacing:-.055em;font-weight:400;line-height:1.07;margin:20px 0 0}.showroom-intro h2 em{color:#93dece;font-weight:400}.showroom-intro>p{max-width:260px;font-size:17px;line-height:1.75;color:#adc6d6;margin-bottom:5px}
.formulary-gallery{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:start}.formulary-piece{min-width:0;border:1px solid #8badbe35;border-radius:22px;background:#1c2c50;overflow:hidden;scroll-margin-top:130px;position:relative;transition:opacity .7s,border-color .35s,box-shadow .35s}.formulary-piece:nth-child(even){margin-top:90px}.formulary-piece:hover,.formulary-piece:focus-within{border-color:#74d9c6;box-shadow:0 30px 80px #050c2929}.js .formulary-piece.reveal{transform:none;opacity:.35}.js .formulary-piece.reveal.shown{opacity:1}.piece-top{position:relative;z-index:5;display:flex;justify-content:space-between;gap:20px;padding:23px 26px;color:#aad3d4;font-size:11px;line-height:1.6;letter-spacing:.08em;background:#1c2c50}.piece-type{text-align:right;max-width:48%;color:#809eb9}.piece-stage{position:relative;height:420px;isolation:isolate;background:radial-gradient(ellipse at 38% 32%,#f0f8f0 0,#cce6df 45%,#99bebc 100%);overflow:hidden;touch-action:pan-y;cursor:grab}.piece-stage:active{cursor:grabbing}.formulary-piece:nth-child(2n) .piece-stage{background:radial-gradient(ellipse at 45% 36%,#e0e8ef,#b3c9d7 54%,#839fb7)}.formulary-piece:nth-child(3n) .piece-stage{background:radial-gradient(ellipse at 46% 26%,#d4eee5,#a6cfc6 62%,#71a9a4)}.piece-word{position:absolute;left:5%;right:5%;top:8%;color:#27347111;font-size:clamp(55px,7.8vw,120px);font-weight:500;line-height:1;letter-spacing:-.075em;white-space:nowrap;pointer-events:none}.piece-poster{position:absolute;inset:0;width:100%;height:calc(100% - 62px);object-fit:contain;pointer-events:none;opacity:1;transition:opacity .2s}.piece-stage[data-model-ready=true] .piece-poster{opacity:0}.piece-interactions{position:absolute;z-index:6;bottom:0;left:0;right:0;padding:13px 24px;display:flex;align-items:center;justify-content:space-between;gap:15px;background:#e7f2edb8;border-top:1px solid #2734711a;backdrop-filter:blur(10px);cursor:default}.piece-hint{color:#344c65;font-size:10px;letter-spacing:.1em}.piece-interactions>div{display:flex;gap:8px}.piece-interactions button{font:inherit;font-size:14px;min-width:42px;min-height:40px;padding:8px 12px;border:1px solid #27347133;border-radius:24px;background:transparent;color:#273471;cursor:pointer;transition:background .2s,color .2s}.piece-interactions button:hover,.piece-interactions button[aria-pressed=true]{background:#273471;color:#e4f5ef}.piece-interactions button[data-gallery-turn]{font-size:22px;line-height:1}.piece-copy{padding:30px 30px 32px;position:relative;z-index:5;background:#1c2c50}.piece-overline{font-size:10px;letter-spacing:.13em;color:#84cbbd}.piece-copy h3{font-size:clamp(30px,3vw,43px);line-height:1.12;letter-spacing:-.045em;font-weight:400;margin:15px 0}.piece-copy h3 a{color:#f0f7f7}.piece-copy h3 a:hover{color:#93e6d0}.piece-copy p{font-size:16px;line-height:1.7;color:#b4cadc;max-width:430px;margin:0 0 27px}.piece-link{font-size:14px;color:#a3e7d7;border-bottom:1px solid #69ad9d77;padding-bottom:7px;display:inline-block}.piece-link:hover{color:#fff;border-color:#a3e7d7}.formulary-page .availability-note{font-size:13px;line-height:1.7;max-width:660px;color:#97b1c5;margin-top:35px}.formulary-canvas{position:fixed!important;top:0;left:0;width:100%;height:100%;z-index:4;pointer-events:none!important}.gallery-static .piece-interactions button,.gallery-static .piece-hint{display:none}.gallery-static .piece-interactions{min-height:35px;background:transparent;border:0}
@media(min-width:1500px){.formulary-showroom{max-width:1390px}.piece-stage{height:470px}.piece-word{font-size:130px}.piece-copy{padding:35px 38px}}
@media(max-width:1050px){.formulary-page .page-hero h1{font-size:64px}.formulary-page .page-studio{height:560px}.showroom-intro{gap:30px}.piece-top{padding:19px 20px;gap:10px;font-size:10px}.piece-stage{height:360px}.piece-copy{padding:25px}.piece-copy h3{font-size:33px}.piece-interactions{padding:11px 16px}.piece-hint{font-size:9px}.piece-interactions button{padding:8px 10px;min-width:40px}.formulary-gallery{gap:24px}}
@media(max-width:800px){.formulary-page .page-hero h1{font-size:clamp(56px,10vw,78px)}.formulary-page .page-studio{height:510px}.formulary-page .page-hero-copy{padding-top:15px}.showroom-intro{display:block;margin-bottom:40px}.showroom-intro>p{max-width:430px;margin-top:25px}.formulary-showroom{padding-top:70px}.category-rail>.wrap{gap:28px;padding-block:22px}.formulary-piece:nth-child(even){margin-top:0}.formulary-gallery{grid-template-columns:1fr;gap:32px}.piece-top{font-size:11px;padding:20px 24px}.piece-stage{height:440px}.piece-word{font-size:110px}.piece-copy{padding:28px 30px}.piece-copy h3{font-size:40px}.piece-copy p{max-width:520px}.piece-interactions{padding:12px 24px}.piece-hint{font-size:10px}.piece-interactions button{min-height:44px;min-width:44px}.formulary-page .page-section{padding-bottom:35px}}
@media(max-width:480px){.formulary-page .page-hero h1{font-size:58px}.formulary-page .page-studio{height:420px}.showroom-intro h2{font-size:42px}.showroom-intro>p{font-size:16px}.piece-stage{height:350px}.piece-word{font-size:82px;top:14%}.piece-top{padding:17px 18px;font-size:9px;letter-spacing:.04em}.piece-copy{padding:26px 23px}.piece-copy h3{font-size:34px}.piece-copy p{font-size:15px}.piece-interactions{padding:10px 15px;gap:8px}.piece-hint{font-size:9px;letter-spacing:.04em}.piece-interactions>div{gap:6px}.piece-interactions button{padding:8px 10px;font-size:13px}.formulary-piece{border-radius:17px}.formulary-showroom{padding-top:58px}}
@media(prefers-reduced-motion:reduce){.formulary-piece,.piece-poster{transition:none}}

html:not(.js) .piece-interactions{display:none}
/* Readable labels and touch targets at every breakpoint. */
.piece-top,.piece-overline,.piece-hint{font-size:12px;letter-spacing:.045em}.piece-interactions button{min-width:44px;min-height:44px;font-size:14px}.piece-copy p{font-size:16px}.piece-top{min-height:74px}.piece-interactions{min-height:68px}
@media(max-width:480px){.piece-top{padding:16px 18px;gap:12px}.piece-type{font-size:12px}.piece-interactions{padding:10px 12px}.piece-hint{max-width:70px;line-height:1.4;font-size:12px}.piece-copy p{font-size:16px}}
