.concept{--signature-navy:#0b0f2c;--signature-white:#f7f8ff;--signature-muted:#cbd1e7;--signature-hover:#1d254e;--signature-accent:#65d6d0;--booking-gold:#f0c34e}
.home-about-route{padding:48px var(--pad);display:grid;grid-template-columns:1.2fr 1fr;gap:48px;align-items:center;background:#eaf0f5;border-block:1px solid #cbd6df}
.home-about-route h2{font:500 clamp(28px,3vw,42px)/1.2 ConceptDisplay,sans-serif;letter-spacing:-.03em;margin:16px 0}
.home-about-route p:not(.section-no){font-size:17px;line-height:1.7;max-width:55ch;margin:0;color:#445a70}
.home-about-route nav{display:grid;gap:14px}
.home-about-route nav a{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 22px;border:1px solid #bccdd8;border-radius:6px;background:#fffefa;font-size:16px;text-decoration:none;min-height:60px}
.home-about-route nav a:hover{border-color:#237a7c;color:#155e64;background:#f5faf9}
.home-about-route nav a:focus-visible{outline:3px solid #237a7c;outline-offset:4px}
/* A bright travelling arrow makes clockwise progress visible without moving text. */
.about-cycle .orbit-track>circle:not(.orbit-pulse){stroke:#6c8fa8;stroke-width:1.8}
.about-cycle .orbit-track>path{stroke:#a5d8dc;stroke-width:2.2}
.about-cycle .orbit-track .orbit-pulse{stroke:#74e3d7;stroke-width:4;stroke-linecap:round;stroke-dasharray:100 937;animation-name:orbit-trail-travel;animation-duration:8s}
.about-cycle .orbit-runner{transform-origin:250px 250px;animation:orbit-travel 8s linear infinite}
.about-cycle .orbit-runner-halo{fill:#67dece;stroke:none;opacity:.2}
.about-cycle .orbit-track .orbit-runner-arrow{fill:#e0fffa;stroke:#70e5d9;stroke-width:1.2;stroke-linejoin:round}
.about-cycle.motion-stopped .orbit-runner,.about-cycle.orbit-outside .orbit-runner{animation-play-state:paused}
@keyframes orbit-trail-travel{from{transform:rotate(-125deg)}to{transform:rotate(235deg)}}
.subject-timeline-scroll{overflow-x:auto;overscroll-behavior-x:contain;scrollbar-color:#345d8c #e7edf3;scrollbar-width:thin;padding-bottom:4px}
.concept .film-paper .subject-timeline-plot{min-width:600px;overflow:visible}
.concept .film-paper .visit-axis,.concept .film-paper .visit-tick{stroke:#7e91a7;stroke-width:1.2;fill:none}
.concept .film-paper svg .visit-label{font-size:13px;fill:#344a65}
.concept .film-paper .timeline-axis-note{font-size:11px;line-height:1.6;color:#536078;margin:6px 0 12px}
.concept .film-paper .timeline-scroll-cue{display:none;font-size:12px;line-height:1.6;color:#345d8c;margin:10px 0}
.subject-timeline-scroll:focus-visible{outline:3px solid #237a7c;outline-offset:4px}
@media(max-width:900px){
 .concept .neutral-nav>a{padding:9px 12px}
 .home-about-route{grid-template-columns:1fr;gap:26px}
 .concept .film-paper .timeline-scroll-cue{display:block}
}
@media(max-width:540px){.home-about-route{padding:38px 24px}.home-about-route nav a{font-size:14px;padding:18px}.concept.space-home .neutral-nav{gap:5px}}
@media(prefers-reduced-motion:reduce){.about-cycle .orbit-runner,.about-cycle .orbit-track .orbit-pulse{animation:none!important}.concept .masthead :is(a,summary){transition:none}}

/* Navigation stays typographic. Color and underline identify location. */
.concept .masthead>.desktop-nav{gap:36px;padding-block:0}
.concept .masthead>.desktop-nav>a,.concept .desktop-nav>.nav-disclosure>summary,.concept .neutral-nav>a{background:transparent;border-radius:0;box-shadow:none;transition:color .16s;font-weight:500}
.concept .masthead>.desktop-nav>a[aria-current],.concept .desktop-nav>.nav-disclosure[data-current=true]>summary,.concept .neutral-nav>a[aria-current]{color:#775b07;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:8px}
.concept .desktop-nav>.nav-disclosure[open]>summary,.concept .desktop-nav>a:hover,.concept .neutral-nav>a:hover{color:#775b07}
.concept .masthead .mega-column>a[aria-current],.concept .masthead .mobile-menu nav a[aria-current],.concept .masthead .practice-switch nav a[aria-current]{color:#155e64;border-left:3px solid #237a7c;padding-left:15px;background:#edf2f6;text-decoration:none}
.concept .mobile-group[data-current=true]>summary{color:#155e64;text-decoration:underline;text-underline-offset:6px}
.concept .masthead :is(a,summary):focus-visible{outline:3px solid #237a7c;outline-offset:4px}
.concept .nav-disclosure[open]>.mega-panel{animation:menu-reveal .16s ease-out}
.concept .nav-disclosure.menu-closing>.mega-panel{animation:menu-dismiss .16s ease-in forwards}
@keyframes menu-reveal{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}
@keyframes menu-dismiss{to{opacity:0;transform:translateY(-4px)}}
/* Signature Band: navy explores, gold books, outlined Contact supports. */
.concept .header-actions{display:flex;align-items:center;gap:12px;grid-column:2;grid-row:1}
.concept .header-actions .header-proposal,.concept .header-actions .booking-button{display:inline-flex!important;align-items:center;justify-content:center;gap:12px;min-height:46px;padding:12px 19px;border:1px solid transparent;border-radius:6px;font:600 13px/1.4 ConceptSans,sans-serif;text-decoration:none;white-space:nowrap;box-shadow:none;transition:background .18s,box-shadow .18s}
.concept .header-actions .header-proposal{background:transparent;color:var(--signature-navy);border-color:var(--signature-navy)}
.concept .header-actions .header-proposal:hover{background:#edf0f7;color:var(--signature-navy);transform:none;box-shadow:none}
.concept .header-actions .header-proposal[aria-current]{outline:2px solid var(--signature-navy);outline-offset:3px}
.concept .button.booking-button,.concept .header-actions .booking-button{background:var(--booking-gold);color:var(--signature-navy);border:1px solid var(--booking-gold);font-weight:600;box-shadow:0 3px 0 #10234014;min-height:48px;gap:16px}
.concept .button.booking-button:hover{background:#ffda70;border-color:#ffda70;color:var(--signature-navy);transform:none;box-shadow:0 5px 16px #10234026}
.concept .button.booking-button:active{box-shadow:none;background:#e7b538}
.concept .booking-button:focus-visible{outline:3px solid #137b83;outline-offset:4px}
.concept .visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.concept .conversion-actions{display:flex;align-items:center;flex-wrap:wrap;gap:14px 24px;margin-top:26px}
.concept .conversion-actions>.button{margin:0}
.concept .conversion-actions>.text-link{margin:0;min-height:48px;display:inline-flex;align-items:center;line-height:1.5}
.concept .workflow-section>.workflow-intro{margin:20px 0 24px}
.concept .workflow-section>.workflow-help{margin:0 0 24px}
@media(max-width:700px){.concept .sf-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.concept .sf-controls label{min-width:0}.concept .sf-controls button{grid-column:1/-1;justify-self:start}}
.concept .conversation-outline{display:inline-flex;align-items:center;gap:12px;min-height:48px;font-size:14px;line-height:1.5;text-decoration:underline;text-underline-offset:5px}
.concept .buyer-conversation .conversation-outline{color:#dceef3}
.concept .buyer-conversation .buyer-lab-note{margin-top:18px}
.concept a.button:not(.booking-button),.concept .hero-actions>.button:not(.booking-button),.concept .content-section>.button:not(.booking-button),.concept .page-hero>.button:not(.booking-button){background:var(--signature-navy);color:var(--signature-white);border:1px solid var(--signature-navy);box-shadow:0 2px 4px #0b0f2c12}
.concept a.button:not(.booking-button):hover,.concept .hero-actions>.button:not(.booking-button):hover,.concept .content-section>.button:not(.booking-button):hover,.concept .page-hero>.button:not(.booking-button):hover{background:var(--signature-hover);border-color:var(--signature-hover);color:var(--signature-white);box-shadow:0 4px 12px #0b0f2c22;transform:none}
.concept a.button:not(.booking-button):active{background:#080b21;box-shadow:none}
.concept a.button:focus-visible,.concept .header-actions .header-proposal:focus-visible{outline:3px solid #246a94;outline-offset:4px}
.concept .booking-section{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:clamp(32px,6vw,88px);padding:72px var(--pad);background:#111d38;color:#fffefa;border-top:4px solid #f0c34e;align-items:center}
.concept .booking-intro .section-no{color:#f0c34e;margin-bottom:24px}
.concept .booking-intro h2{font-size:clamp(32px,3.7vw,53px);line-height:1.12;margin-bottom:24px}
.concept .booking-intro>p:not(.section-no){font-size:17px;line-height:1.75;color:#d1e0ec;max-width:49ch;margin-bottom:28px}
.concept .booking-intro>p.booking-note{font-size:12px;margin:16px 0 0}
.booking-practices{display:grid;gap:18px}
.concept .booking-practices article{background:#192d46;border:1px solid #496074;border-left:3px solid #68bfc1;padding:26px 28px;border-radius:6px}
.concept .booking-practices article:last-child{border-left-color:#c4ace1}
.concept .booking-practices .section-no{font-size:11px;color:#a6dfdf;letter-spacing:.06em;margin-bottom:14px}
.concept .booking-practices h3{font-size:24px;line-height:1.25;letter-spacing:-.025em;margin-bottom:14px}
.concept .booking-practices p:not(.section-no){font-size:15px;line-height:1.7;color:#c3d5e5;margin-bottom:14px}
.concept .booking-practices a{display:inline-flex;align-items:center;gap:18px;min-height:44px;font-size:14px;text-underline-offset:5px}
.concept .booking-section :is(a,button):focus-visible,.concept .buyer-conversation :is(a,button):focus-visible{outline-color:#f0c34e}
.concept .proposal-action>.conversion-actions{margin:22px 0 28px}
@media(min-width:901px){
 .concept.space-home .masthead{display:grid;grid-template-columns:1fr auto;gap:10px 24px;padding-bottom:0}
 .concept.space-home .masthead .neutral-nav{grid-column:1/-1;grid-row:2;justify-content:flex-start;margin:0;border-top:1px solid #e1e5ea;gap:36px}
 .concept.space-home .neutral-nav>a{min-height:54px;padding-block:14px}
}
@media(min-width:901px) and (max-width:1100px){.concept .masthead>.brand>span{display:none}.concept.practice-separated .masthead{column-gap:20px}}
@media(max-width:900px){
 .concept.practice-separated .masthead,.concept.space-home .masthead{display:grid!important;grid-template-columns:minmax(0,1fr) auto;gap:10px 16px!important;position:relative;top:auto}
 .concept .masthead>.brand{grid-row:1;grid-column:1}
 .concept .masthead>.practice-switch{grid-row:1;grid-column:2}
 .concept .masthead>.header-actions{grid-row:2;grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:12px}
 .concept .header-actions .header-proposal,.concept .header-actions .booking-button{width:100%;padding:12px 15px;min-height:46px;font-size:13px}
 .concept .masthead>.mobile-home{grid-row:3;grid-column:1}
 .concept .masthead>.mobile-menu{grid-row:3;grid-column:2}
 .concept.space-home .masthead>.neutral-nav{grid-row:3;grid-column:1/-1;display:flex;flex-wrap:wrap;gap:8px 22px;font-size:13px;padding-top:6px;border-top:1px solid #dce2e9}
 .concept .neutral-nav>a{padding:5px 0;min-height:40px}
 .concept .booking-section{grid-template-columns:1fr;gap:32px;padding-block:48px}
 .concept .booking-practices{grid-template-columns:1fr 1fr}
 .concept .booking-practices article{padding:24px}
}
@media(max-width:540px){
 .concept .conversion-actions{align-items:stretch;flex-direction:column;gap:12px}
 .concept .conversion-actions .button{width:100%;justify-content:space-between}
 .concept .conversation-outline{font-size:14px;width:fit-content}
 .concept .booking-practices{grid-template-columns:1fr}
 .concept .booking-section{padding:44px 24px}
 .concept .booking-intro>.button{width:100%;justify-content:space-between}
 .concept .booking-practices h3{font-size:23px}
 .concept .buyer-next-grid{gap:24px}
}
@media(prefers-reduced-motion:reduce){.concept .nav-disclosure>.mega-panel{animation:none!important}.concept .header-actions a,.concept .booking-button{transition:none}}

.concept .mobile-group .nav-chevron{width:14px;height:14px;flex:none;transition:transform .16s}.concept .mobile-group[open]>summary .nav-chevron{transform:rotate(180deg)}
@media(prefers-reduced-motion:reduce){.concept .mobile-group .nav-chevron{transition:none}}

/* Compact service navigation keeps the featured offering within reach. */
.concept .mega-panel.space-menu{grid-template-columns:.82fr 1fr 1.05fr;max-height:var(--menu-available,calc(100svh - 190px));overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#8995aa #f2f4f8}
.concept .mega-feature{padding:24px}
.concept .mega-column{padding:24px 22px 18px;min-width:0}
.concept .menu-kicker{margin-bottom:16px;font-size:11px;line-height:1.5}
.concept .mega-feature h2{font-size:clamp(24px,2.15vw,30px);line-height:1.18;max-width:17ch}
.concept .mega-feature>p:not(.menu-kicker){font-size:13px;line-height:1.65;margin:16px 0 20px;max-width:29ch}
.concept .mega-feature .mega-overview{font-size:13px;line-height:1.5;padding-top:12px;align-items:center}
.concept .mega-column>a{min-height:57px!important;padding:9px 0;margin-bottom:2px}
.concept .mega-column>a>span{font-size:14px;line-height:1.4}
.concept .mega-column>a>small{font-size:12px;line-height:1.5;margin-top:4px}
.concept .mega-bottom{padding:8px 24px;gap:16px}
.concept .mega-bottom a{line-height:1.5}
.concept .catalyst-menu-bar>span:nth-child(2){flex:1;min-width:0}
.concept .catalyst-menu-bar .catalyst-mark{color:var(--signature-accent);border-color:var(--signature-accent);flex-shrink:0}
.concept .catalyst-menu-bar .catalyst-menu-action{font-size:13px;white-space:nowrap;gap:18px;text-decoration:underline;text-underline-offset:6px;text-decoration-color:#9aa4c0}
.concept .catalyst-menu-bar[aria-current]{box-shadow:inset 4px 0 var(--signature-accent);text-decoration:none}
.concept .catalyst-menu-bar[aria-current] strong{text-decoration:underline;text-underline-offset:5px}
.concept .masthead .catalyst-menu-bar:focus-visible{outline-color:var(--signature-accent);outline-offset:-4px}
.concept .masthead .mobile-group a.mobile-catalyst{padding:16px!important;margin-top:12px;border-radius:5px;color:var(--signature-white);border-left:3px solid var(--signature-accent);gap:4px}
.concept .masthead .mobile-group a.mobile-catalyst>small{color:var(--signature-muted);line-height:1.6}
.concept .masthead .mobile-group a.mobile-catalyst[aria-current]{color:var(--signature-white);border-left-color:var(--signature-accent)}
.concept .masthead .mobile-group a.mobile-catalyst>span{display:flex;justify-content:space-between;align-items:center;gap:14px;width:100%}
.concept .masthead .mobile-group a.mobile-catalyst>span::after{content:'→';color:var(--signature-white)}
.concept .masthead .mobile-group a.mobile-catalyst:hover{background:var(--signature-hover)!important}
.concept .masthead .mobile-group a.mobile-catalyst:focus-visible{outline-color:var(--signature-accent);outline-offset:-4px}
.concept .masthead .mobile-menu .mobile-proposal{background:var(--signature-navy);color:var(--signature-white);font-size:14px;line-height:1.5}
.concept .masthead .mobile-menu .mobile-proposal:hover{background:var(--signature-hover);transform:none}
.concept .mobile-menu>nav,.concept .practice-switch>nav{max-height:var(--menu-available,calc(100svh - 210px));overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}
.concept .page-hero .hero-actions>.text-link{margin-top:0}
.concept .masthead>.mobile-home{align-items:center;gap:10px}
@media(min-width:901px) and (max-width:1100px){
 .concept .mega-feature,.concept .mega-column{padding:20px 16px}
 .concept .mega-column>a>span{font-size:13px}
 .concept .mega-column>a>small{font-size:12px}
 .concept .catalyst-menu-bar{padding:18px 20px;gap:14px}
 .concept .catalyst-menu-bar strong{font-size:18px}
 .concept .catalyst-menu-bar small{max-width:44ch}
}
@media(max-width:900px){
 .concept .mobile-menu>nav{padding-top:12px;padding-bottom:24px}
 .concept .mobile-group>div{padding-left:14px;margin-bottom:16px}
 .concept .mobile-group a{min-height:50px;line-height:1.5;padding-block:10px}
 .concept .mobile-group>summary{font-size:17px;gap:14px;min-height:54px}
 .concept .masthead .mobile-menu nav a[aria-current]{padding-left:12px}
}
@media(max-width:540px){
 .concept .hero-actions{gap:14px;align-items:stretch}
 .concept .hero-actions>.button{width:100%;justify-content:space-between}
 .concept .hero-actions>.text-link{width:fit-content;max-width:100%;font-size:15px;line-height:1.6;min-height:44px}
 .concept .catalyst-teaser .button{width:100%;justify-content:space-between;gap:16px;font-size:15px;padding-inline:18px}
 .concept .header-actions .header-proposal,.concept .header-actions .booking-button{padding-inline:12px}
}
@media(prefers-reduced-motion:reduce){.concept a.button,.concept .catalyst-menu-bar{transition:none}}

/* Clinical home: carry the menu's Signature Band into the featured offering. */
.concept .catalyst-teaser.content-section{
 display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;
 gap:32px 64px;padding-block:clamp(48px,5vw,72px);
 background:var(--signature-navy);color:var(--signature-white);
 border-top:2px solid var(--signature-accent);border-bottom:0;
 scroll-margin-top:240px
}
.concept .catalyst-teaser .section-no,
.concept .catalyst-teaser h2,
.concept .catalyst-teaser p{color:var(--signature-white)}
.concept .catalyst-teaser .section-no{margin:0 0 20px}
.concept .catalyst-teaser h2{margin:0 0 20px;line-height:1.14}
.concept .catalyst-teaser p:not(.section-no){margin:0;max-width:57ch;line-height:1.7}
.concept .catalyst-teaser a.button:not(.booking-button){
 background:transparent;color:var(--signature-white);border:1px solid var(--signature-white);
 box-shadow:none;margin:0;gap:24px;min-height:52px;white-space:normal
}
.concept .catalyst-teaser a.button:not(.booking-button):hover,
.concept .catalyst-teaser a.button:not(.booking-button):active{
 background:var(--signature-white);color:var(--signature-navy);
 border-color:var(--signature-white);box-shadow:none;transform:none
}
.concept .catalyst-teaser a.button:focus-visible{outline:3px solid var(--signature-accent);outline-offset:5px}
@media(max-width:900px){
 .concept .catalyst-teaser.content-section{grid-template-columns:1fr;gap:28px;scroll-margin-top:24px}
 .concept .catalyst-teaser a.button{justify-self:start}
}
@media(max-width:540px){
 .concept .catalyst-teaser.content-section{padding:44px 24px;gap:28px;scroll-margin-top:24px}
 .concept .catalyst-teaser .section-no{font-size:12px;line-height:1.6;margin-bottom:18px}
 .concept .catalyst-teaser p:not(.section-no){font-size:16px;line-height:1.75}
 .concept .catalyst-teaser a.button{justify-self:stretch;gap:16px}
}
