/* Vytlar editorial navigation and motion layer. Real product imagery, no stock. */
html{scroll-padding-top:108px}
body{overflow-x:clip}
.site-header{position:sticky;top:0;height:94px;min-height:94px;display:flex;align-items:center;gap:26px;padding:0 var(--gutter);background:#11191c;border-bottom:2px solid #425057;z-index:20;}
.site-header .brand{display:flex;align-items:center;gap:14px;font-size:clamp(25px,2.4vw,33px);color:#f1f3ef;text-decoration:none;flex-shrink:0;letter-spacing:-.025em;transition:opacity .25s ease}
.site-header .brand:hover{opacity:.7}
.mobile-menu{display:none}
.brand-divider{width:1px;height:30px;background:#6e7b7c;display:inline-block}
.site-header .brand-label{font:500 13px/1.25 var(--font-technical);letter-spacing:.08em;max-width:125px;color:#aebcb8}
.site-header nav{margin-left:auto;display:flex;align-items:center;gap:clamp(15px,2vw,36px)}
.site-header nav a{color:#d4dbd7;font-size:13px;font-weight:600;letter-spacing:.01em;text-decoration:none;position:relative;padding:17px 0;transition:color .25s ease}
.site-header nav a:after{content:"";position:absolute;bottom:9px;left:0;right:100%;height:2px;background:#e4e6e3;transition:right .3s ease}
.site-header nav a:hover{color:#fff}.site-header nav a:hover:after,.site-header nav a[aria-current=page]:after{right:0}
.scroll-progress{position:absolute;left:0;bottom:-1px;height:2px;transform:scaleX(0);transform-origin:left;width:100%;background:#c7d0d0;pointer-events:none;z-index:3}
.home-page .opening{min-height:calc(100svh - 94px)}
.home-page .opening h1{animation:home-title 1.3s cubic-bezier(.16,1,.3,1) both}
.home-page .opening-bottom{animation:home-bottom 1.1s .35s both}
.home-page .opening .button,.section-cta{position:relative;overflow:hidden;transition:transform .32s ease,background .32s ease,color .32s ease}
.section-cta:hover{opacity:.85;transform:translateY(-2px)}
.home-page .opening .button:hover{transform:translateY(-4px)}

.hero-scroll{position:absolute;right:var(--gutter);top:49%;display:flex;align-items:center;gap:13px;color:#c0c9c5;font:13px var(--font-technical);letter-spacing:.1em;writing-mode:vertical-rl;opacity:.8}
.hero-scroll span{height:74px;width:1px;background:#b6c3be;display:block}
.section-cta{display:inline-flex;align-items:center;gap:0;justify-content:space-between;min-height:48px;margin-top:26px;padding:9px 0;border-bottom:2px solid currentColor;font-size:16px;font-weight:600;max-width:max-content;color:inherit;text-decoration:none}


.section-path{display:grid;grid-template-columns:1fr;gap:25px;align-items:end;color:var(--ink);background:#182427;text-decoration:none;border-top:2px solid #586767;margin-top:48px;padding:clamp(28px,4vw,58px);min-height:220px;transition:background .3s,transform .35s}
.section-path:hover{background:#313538;transform:translateY(-5px)}

.section-path strong{font:600 clamp(33px,4vw,57px)/1.04 var(--font-display);letter-spacing:-.05em}

.product .section-heading{margin-bottom:45px}
.photo-link{display:block;position:relative;overflow:hidden;text-decoration:none;outline-offset:6px}
.photo-link img{transition:transform .8s cubic-bezier(.16,1,.3,1),filter .55s ease;will-change:transform}
.photo-link:hover img{transform:scale(1.055);filter:contrast(1.05)}
.photo-link__label{position:absolute;bottom:20px;left:20px;padding:15px 20px;background:#10191b;color:#eef2ef;font-size:15px;font-weight:600;z-index:1;transition:transform .35s}
.photo-link:hover .photo-link__label{transform:translateY(-4px)}
.patient-showcase__bottom{grid-template-columns:1fr auto auto;align-items:center;gap:30px}
.patient-showcase__bottom .section-cta{margin:0}
.patient-showcase__bottom .patient-gallery__open{min-width:260px}
.linked-panel{text-decoration:none;color:inherit;cursor:pointer;transition:transform .35s ease}
.linked-panel:hover{transform:translateY(-5px)}
.linked-panel img{transition:transform .7s ease}.linked-panel:hover img{transform:scale(1.04)}
.journey-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:#bac2be;margin-top:40px}
.journey-card{position:relative;display:block;min-height:325px;padding:38px;background:#f4f4f2;text-decoration:none;color:#0b1515;overflow:hidden;transition:background .32s ease,transform .35s ease}
.journey-card:hover{background:#e4e4e2;transform:translateY(-5px)}
.journey-card small,.system-card>span:first-child,.development-card small{display:block;font:13px var(--font-technical);color:#50605d}
.journey-card h3{font:600 clamp(48px,5vw,82px)/.96 var(--font-display);letter-spacing:-.06em;margin:45px 0 18px;color:#10191b}
.journey-card p{font:400 18px/1.4 var(--font-body);color:#34423f}


.encounter .section-cta{color:#152320}
.encounter .section-heading{margin-bottom:65px}
.medication-intro .section-cta{color:#dde9e2}
.system-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:#536465;margin-top:30px}
.system-card{display:block;position:relative;background:#111b1d;min-height:315px;padding:28px 23px 55px;color:#f2f3f0;text-decoration:none;transition:background .35s ease,transform .32s ease}
.system-card:hover{background:#313538;transform:translateY(-5px)}
.system-card>span:first-child{color:#b5c7c3}
.system-card h3{font-size:clamp(27px,2.7vw,44px);letter-spacing:-.05em;margin:55px 0 15px}
.system-card p{font-size:16px;color:#b3c4bf}
.development-grid{position:relative;z-index:2;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:80px}
.development-card{position:relative;display:block;background:rgba(12,22,23,.79);min-height:310px;padding:35px 32px 75px;text-decoration:none;color:#f3f5f3;border-top:2px solid #70817d;transition:background .35s ease,transform .32s ease}
.development-card:hover{transform:translateY(-6px);background:#313538}
.development-card small{color:#b8c6c2}
.development-card h3{font-size:clamp(33px,3.6vw,58px);margin:38px 0 16px;letter-spacing:-.055em}
.development-card p{color:#c6d1cd;font-size:17px;line-height:1.5}
.development .section-heading{position:relative;z-index:2}
.development .section-cta{color:#f4f5f1}
.mission .mission-statement{font-size:clamp(50px,7vw,108px);margin-bottom:32px}
.mission .section-cta{color:#f1f3f0}
.contact .section-cta{color:#10191b}
.contact .section-heading{margin-bottom:80px}
.contact-address{margin-top:48px}
.site-footer{display:flex;align-items:center;gap:25px;flex-wrap:wrap;justify-content:space-between;padding:35px var(--gutter);min-height:120px;background:#0b1012;color:#c2cec7;font-size:14px}
.site-footer .brand{color:#edf1ed;text-decoration:none}
.site-footer nav{display:flex;gap:25px}.site-footer nav a{color:#c6d2ce;font-size:14px}
.reveal{opacity:1;transform:none}
@media(prefers-reduced-motion:no-preference){
.reveal:not(.is-visible){opacity:0;transform:translate3d(0,54px,0) scale(.985);filter:blur(4px)}
.reveal{transition:opacity .9s ease,transform 1s cubic-bezier(.16,1,.3,1),filter .8s ease;transition-delay:var(--delay,0ms)}
.reveal.is-visible{opacity:1;transform:none;filter:blur(0)}
}
@keyframes home-title{from{opacity:0;transform:translateY(72px) scale(.98)}to{opacity:1;transform:none}}
@keyframes home-bottom{from{opacity:0;transform:translateY(45px)}to{opacity:1;transform:none}}
/* Dedicated page layout */
.detail-page{background:#0b1113;color:#edf1ed}
.detail-hero{min-height:clamp(500px,68vh,790px);display:flex;flex-direction:column;justify-content:center;background:#111b1d;position:relative;overflow:hidden}
.detail-hero:after{content:"";position:absolute;width:min(65vw,900px);height:min(65vw,900px);right:-21%;bottom:-80%;border:2px solid #445454;border-radius:50%;pointer-events:none;opacity:.65}
.breadcrumbs{position:relative;z-index:1;display:flex;gap:14px;font:13px var(--font-technical);color:#a3b4ad;margin-bottom:70px}
.breadcrumbs a{color:#e0e6e1}.detail-eyebrow{display:block;color:#adbdb8;font:13px var(--font-technical);letter-spacing:.12em;margin-bottom:30px}
.detail-hero h1{font:700 clamp(70px,12vw,188px)/.86 var(--font-display);letter-spacing:-.08em;margin:0 0 37px;max-width:13ch;z-index:1}
.detail-intro{font:400 clamp(19px,2.1vw,32px)/1.35 var(--font-body);max-width:29ch;color:#bccac4;margin:0;position:relative;z-index:1}
.detail-split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(40px,8vw,140px);align-items:start}
.detail-split h2,.detail-gallery h2,.detail-media h2{font-size:clamp(52px,7vw,112px);margin:0;letter-spacing:-.065em;max-width:11ch}
.detail-split>div>p,.detail-split>p{font-size:clamp(18px,1.7vw,25px);color:#b5c4bf;line-height:1.48;margin:0 0 28px}
.detail-wide-photo{display:block;margin:0;position:relative;overflow:hidden;background:#1a2628;text-decoration:none;color:#f5f5ef}
.detail-wide-photo img{display:block;width:100%;max-height:750px;aspect-ratio:16/8.5;object-fit:cover;transition:transform .8s ease}
a.detail-wide-photo:hover img{transform:scale(1.035)}
.detail-wide-photo>span{position:absolute;bottom:25px;left:var(--gutter);background:#11191b;color:#eef0ed;padding:14px 18px;font-size:15px;font-weight:600}
.detail-wide-photo figcaption{color:#d2ded7;padding:20px var(--gutter);font:13px var(--font-technical)}
.detail-tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;background:#111b1d}
.detail-tiles>a{min-height:360px;padding:35px;background:#192629;color:#e8f0e9;text-decoration:none;position:relative;transition:background .35s,transform .35s}
.detail-tiles>a:hover{background:#313538;transform:translateY(-4px)}
.detail-tiles small{font:13px var(--font-technical);color:#a9bdb8}.detail-tiles h3{font-size:clamp(36px,4vw,63px);margin:75px 0 18px}.detail-tiles a>span:last-child{position:absolute;bottom:30px;left:35px;font-size:15px}
.detail-steps,.detail-status{background:#f4f4f2;color:#0d191b}
.detail-step,.detail-status__item{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr);column-gap:clamp(45px,5.5vw,110px);row-gap:22px;align-items:start;border-top:2px solid #a9b4b0;padding:55px 0 78px;scroll-margin-top:130px}
.detail-step>span,.detail-status__item>span{font:14px var(--font-technical);color:#53635e}
.detail-step h2,.detail-status__item h2{font:600 clamp(43px,5.3vw,78px)/1.04 var(--font-display);letter-spacing:-.06em;margin:0;grid-column:1;min-width:0;max-width:100%;overflow-wrap:break-word}
.detail-step p,.detail-status__item p{font-size:clamp(18px,1.6vw,24px);line-height:1.5;color:#404647;margin:0;max-width:37ch;grid-column:2;min-width:0}
.detail-page .detail-steps .reveal:not(.is-visible),.detail-page .detail-status .reveal:not(.is-visible){transition-delay:0ms}
.detail-photo-link{display:block;margin-top:18px;position:relative;overflow:hidden}.detail-photo-link img{width:100%;display:block;transition:transform .65s}.detail-photo-link:hover img{transform:scale(1.035)}.detail-photo-link span{position:absolute;bottom:20px;left:20px;padding:12px 18px;background:#10191b;color:#fff}
.detail-gallery h2{margin-bottom:45px}.detail-gallery__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}
.detail-gallery__grid a{display:block;color:#f0f2f0;text-decoration:none;position:relative;overflow:hidden;background:#172327}
.detail-gallery__grid img{width:100%;height:360px;object-fit:cover;display:block;transition:transform .6s}.detail-gallery__grid a:hover img{transform:scale(1.06)}
.detail-gallery__grid span{position:absolute;bottom:0;left:0;right:0;background:#10191b;padding:15px;font-size:15px}
.detail-media{background:#141e20}.detail-media p{font-size:21px;color:#b9c5c0}.detail-media video{display:block;width:100%;max-width:1100px;max-height:650px;margin-top:40px;background:#0d171a}
.detail-contact{background:#f4f4f2;color:#102021}.detail-email{font:600 clamp(45px,8.5vw,135px)/1.1 var(--font-display);letter-spacing:-.055em;overflow-wrap:anywhere;display:block;color:#0d1c1e;text-decoration:none}.detail-contact>p{font-size:20px;color:#445551;max-width:50ch;margin:60px 0}.detail-topics{display:flex;gap:12px;flex-wrap:wrap}.detail-topics a{border:2px solid #767a7c;color:#202528;text-decoration:none;padding:17px 22px;font-size:16px;transition:background .25s}.detail-topics a:hover{background:#e3e3e1}
.detail-more{background:#111b1d}.detail-more__links{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:35px}.detail-more__links a{color:#e8f0eb;font:600 clamp(24px,3vw,44px) var(--font-display);letter-spacing:-.04em;border-top:2px solid #7b8d86;padding:25px 0;text-decoration:none;transition:padding-left .25s}.detail-more__links a:hover{padding-left:8px}
@media(max-width:1100px){.site-header .brand-label{display:none}.site-header .brand-divider{display:none}.site-header nav{gap:18px}.patient-showcase__bottom{grid-template-columns:1fr 1fr}.patient-showcase__bottom p{grid-column:1/-1}.system-grid{grid-template-columns:repeat(2,1fr)}.development-grid{grid-template-columns:1fr 1fr}.detail-tiles{grid-template-columns:1fr 1fr}}
@media(max-width:1100px){.detail-step,.detail-status__item{grid-template-columns:minmax(0,1fr);row-gap:24px}.detail-step h2,.detail-status__item h2,.detail-step p,.detail-status__item p{grid-column:1}.detail-step h2,.detail-status__item h2{font-size:clamp(44px,7vw,70px)}}
@media(max-width:700px){
.site-header > nav{display:none}
.mobile-menu{display:block;margin-left:auto;position:static;color:#f1f3ef}
.mobile-menu summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:11px;padding:14px 0;font:600 15px var(--font-body)}
.mobile-menu summary::-webkit-details-marker{display:none}
.mobile-menu summary span{font-size:20px}
.mobile-menu[open] nav{position:absolute;top:100%;left:0;right:0;display:grid;grid-template-columns:1fr;background:#172326;border-bottom:2px solid #7d8c89;padding:12px 20px 20px;z-index:30;gap:0}
.mobile-menu nav a{display:block;color:#f1f3ef;font-size:17px;padding:12px 8px;border-bottom:2px solid #3d5151;text-decoration:none}
.mobile-menu nav a:hover{color:#fff;background:#313538}

.site-header{height:74px;min-height:74px;gap:10px;justify-content:space-between;padding:0 var(--gutter)}
.site-header .brand{font-size:24px}
.site-header nav{margin-left:auto;gap:13px;justify-content:flex-end;overflow-x:auto;scrollbar-width:none}
.site-header nav a{font-size:12px;white-space:nowrap;padding:22px 0}
.site-header > nav a:nth-child(2),.site-header > nav a:nth-child(3){display:none}
.home-page .opening{min-height:0}
.hero-scroll{display:none}
.section-path{display:flex;flex-direction:column;align-items:start;min-height:0;gap:25px;padding:30px}
.photo-link__label{left:12px;bottom:12px;padding:11px 13px;font-size:13px}
.patient-showcase__bottom{display:flex;flex-direction:column;align-items:stretch}.patient-showcase__bottom p{grid-column:auto}.patient-showcase__bottom .section-cta{align-self:start}
.journey-grid,.system-grid,.development-grid{grid-template-columns:1fr}
.journey-card{min-height:250px;padding:26px}.journey-card h3{font-size:55px;margin:26px 0 12px}
.system-card{min-height:210px;padding:28px}.system-card h3{margin:25px 0 8px}
.development-card{min-height:260px}
.site-footer{gap:20px}.site-footer .brand{width:100%}
.detail-hero{min-height:470px}
.detail-hero h1{font-size:clamp(55px,14vw,88px)}
.breadcrumbs{margin-bottom:48px}.detail-intro{font-size:21px}
.detail-split{display:block}.detail-split>div{margin-top:30px}
.detail-tiles{grid-template-columns:1fr}.detail-tiles>a{min-height:270px}
.detail-step,.detail-status__item{grid-template-columns:1fr;gap:15px;padding:40px 0}
.detail-step h2,.detail-status__item h2{font-size:55px}
.detail-gallery__grid{grid-template-columns:1fr}
.detail-gallery__grid img{height:auto}
.detail-more__links{grid-template-columns:1fr}
.detail-email{font-size:clamp(37px,10vw,66px)}
}
@media(prefers-reduced-motion:reduce){
.reveal,.reveal:not(.is-visible){opacity:1!important;transform:none!important;filter:none!important;transition:none!important}
.home-page .opening h1,.home-page .opening-bottom{animation:none!important}
.photo-link img,.linked-panel,.system-card,.journey-card,.development-card,.site-header nav a:after{transition:none!important}
}

/* Current in-game bedside instrument selector. */
.tools-showcase{display:grid;grid-template-columns:minmax(0,.84fr) minmax(0,1.16fr);align-items:center;gap:clamp(35px,6vw,105px);background:#121b1e;color:#f0f2ee}
.tools-showcase__copy h2{font:700 clamp(56px,6vw,105px)/.97 var(--font-display);letter-spacing:-.063em;max-width:11ch;margin:0 0 32px}
.tools-showcase__copy p{font-size:clamp(19px,1.65vw,25px);color:#c6cfcc;line-height:1.48;max-width:28ch}
.tools-showcase__copy .section-cta{color:#f3f5f2}
.tools-showcase__visual{position:relative;display:block;overflow:hidden;background:#293136;color:#eff0ed;text-decoration:none}
.tools-showcase__visual img{display:block;width:100%;height:auto;aspect-ratio:1305/1074;object-fit:cover;transition:transform .8s cubic-bezier(.16,1,.3,1)}
.tools-showcase__visual:hover img{transform:scale(1.045)}
.tools-showcase__visual>span{position:absolute;bottom:0;left:0;right:0;padding:14px 19px;background:#101719;color:#eff1ed;font:500 14px var(--font-body)}
.detail-policy{background:#f4f4f2;color:#121a1c;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:28px clamp(35px,7vw,105px)}
.detail-policy h2{font:650 clamp(32px,4.8vw,65px)/1.07 var(--font-display);letter-spacing:-.05em;margin:0}
.detail-policy p{font-size:clamp(18px,1.5vw,23px);line-height:1.55;color:#384246;margin:0 0 35px}
.detail-policy p a{color:#1d2629}
@media(max-width:1000px){.tools-showcase{grid-template-columns:1fr}.tools-showcase__copy h2{max-width:15ch}.detail-policy{grid-template-columns:1fr;gap:10px}.detail-policy p{margin:0 0 32px}}
@media(prefers-reduced-motion:reduce){.tools-showcase__visual img{transition:none}}


/* Accessible custom not-found page without CSP-blocked inline styles. */
.detail-hero--not-found{min-height:100svh}
