:root{--ink:#111111;--dark:#080808;--accent:#111111;--muted:#6a6a6a;--line:#e2e2e2;--pale:#f5f5f5;--inverse:#ffffff;--display:"Manrope",Arial,sans-serif;--body:"DM Sans",Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;color:var(--ink);background:#fff;font:16px/1.75 var(--body);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}button,a,summary{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #555555;outline-offset:5px}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--display);font-weight:500;line-height:1.15;letter-spacing:-.045em}h2{font-size:clamp(2.2rem,3.8vw,3.6rem)}h3{font-size:1.45rem;letter-spacing:-.025em}p{color:var(--muted)}p+p{margin-top:20px}p+h2,p+h3{margin-top:30px}h2+p,h3+p{margin-top:24px}button{border:0}ul,ol{padding:0;margin:0;list-style:none}.wrap{max-width:1240px;margin:0 auto;padding-inline:48px}.section{padding-top:104px;padding-bottom:104px}.section-index{color:#787878;letter-spacing:.12em;font-size:.75rem;font-weight:600;margin-bottom:46px;border-top:1px solid var(--line);padding-top:17px}.eyebrow{font-size:.75rem;line-height:1.65;font-weight:650;letter-spacing:.12em;text-transform:uppercase;margin-bottom:24px}.button{display:inline-flex;align-items:center;justify-content:center;gap:26px;background:var(--ink);color:white;padding:15px 24px;border:1px solid var(--ink);border-radius:7px;font-size:.875rem;font-weight:500;line-height:1.5;transition:background .2s,transform .2s,box-shadow .2s}.button span{font-size:1.15rem}.button:hover{background:#333333;box-shadow:0 4px 16px #08080820;transform:translateY(-2px)}.button.secondary{background:white;color:var(--ink);border-color:#d7d7d7}.button.secondary:hover{background:#f2f2f2}.reading .button{margin-top:30px}.skip{position:fixed;left:15px;top:-100px;background:white;padding:10px;z-index:100}.skip:focus{top:10px}header{position:sticky;top:0;z-index:20;background:#ffffffed;backdrop-filter:blur(18px);border-bottom:1px solid #ececec}.nav-wrap{max-width:1392px;margin:auto;height:88px;padding:0 48px;display:flex;align-items:center;justify-content:space-between;gap:25px}.brand{display:flex;align-items:center;gap:11px;font-family:var(--display);font-size:1.5rem;font-weight:700;letter-spacing:-.06em;line-height:1.2}.brand-mark{position:relative;font-size:1.25rem;letter-spacing:-.08em;display:flex;align-items:center;justify-content:center;width:43px;height:43px;background:var(--ink);color:white;border-radius:10px}.brand-mark>span{color:var(--inverse);font-size:1.7rem}.brand-small{display:block;font:600 .75rem/1.8 var(--body);letter-spacing:.14em;margin-top:5px}.nav-wrap nav{display:flex;gap:33px;margin-left:55px}.nav-wrap nav a,.nav-cta{font-size:.875rem;font-weight:500}.nav-wrap nav a:hover{color:var(--accent)}.nav-cta{border:1px solid #d8d8d8;border-radius:6px;padding:10px 18px;display:flex;gap:28px;align-items:center}.menu-toggle{display:none;background:none;padding:12px}.menu-toggle span{display:block;width:23px;height:2px;background:var(--ink);margin:6px 0}#mobile-nav{padding:12px 24px 24px}#mobile-nav a{display:block;padding:10px 0}.hero{overflow:hidden;position:relative;background:radial-gradient(ellipse at 50% 60%,#fff 20%,#f0f0f0 100%);padding:82px 48px 0}.hero-grid{position:absolute;inset:0;background-image:linear-gradient(#9292920b 1px,transparent 1px),linear-gradient(90deg,#9292920b 1px,transparent 1px);background-size:70px 70px;mask-image:linear-gradient(#000,transparent 70%)}.hero-inner{position:relative;text-align:center;max-width:1120px;margin:auto}.hero .eyebrow{font-size:.75rem;letter-spacing:.12em;margin-bottom:26px;display:flex;align-items:center;justify-content:center;gap:10px}.tiny-cross{font-size:1.15rem;color:var(--accent)}.hero h1{font-size:clamp(3rem,5.8vw,5.5rem);font-weight:500;letter-spacing:-.06em;line-height:1.09}.hero h1>span{color:var(--accent)}.hero-lead{font-size:1rem;line-height:1.8;margin-top:29px}.hero h2{font-size:1.15rem;letter-spacing:-.025em;line-height:1.5;margin-top:10px;font-weight:550}.hero-actions{display:flex;justify-content:center;gap:12px;margin-top:30px}.hero-base{position:relative;max-width:1296px;border-top:1px solid #dfdfdf;margin:67px auto 0;display:flex;justify-content:space-between;align-items:center;padding:19px 0;color:#686868;font-size:.75rem}.hero-caption{letter-spacing:.1em;font-size:.75rem}.hero-base a span{margin-left:14px}.intro-strip{background:var(--dark);color:white}.intro-layout{display:grid;grid-template-columns:190px 1fr;gap:50px;align-items:center;padding-block:41px}.intro-symbol{font:500 4.8rem/1 var(--display);letter-spacing:-.07em;border-right:1px solid #ffffff27;position:relative}.intro-symbol>span{font-size:1.2rem;vertical-align:top;margin-left:5px;line-height:2}.intro-strip p{color:#e7e7e7;max-width:790px;font-size:1rem}.intro-strip p+p{color:#bdbdbd;margin-top:9px}.split{display:grid;grid-template-columns:1fr 1fr;gap:85px}.sticky-heading{align-self:start}.accent-line{color:var(--accent);font-size:1.4rem;line-height:1.5;margin-top:22px;letter-spacing:-.03em}.focus-mark{margin-top:62px;font-family:var(--display);font-size:2.8rem;line-height:1.05;letter-spacing:-.055em;font-weight:600;color:#d9d9d9}.focus-mark span{color:var(--accent)}.reading{font-size:1rem}.reading h3{margin-top:28px}.reading p:first-child{margin-top:0}.approach-section{background:var(--pale);padding:85px 0 90px}.approach-intro{display:grid;grid-template-columns:1fr 1fr;gap:85px;align-items:start;margin-bottom:50px}.approach-intro h2{font-size:4.4rem;line-height:1.08}.approach-intro h2 span{color:#8c8c8c}.approach-intro>div:nth-child(2){padding-top:45px}.mini-disciplines{display:flex;gap:24px;margin-top:28px}.mini-disciplines a{display:flex;gap:12px;align-items:center;flex:1}.mini-disciplines b{font:500 1.9rem var(--display);height:45px;width:45px;display:grid;place-items:center;border:1px solid #d6d6d6;border-radius:6px}.mini-disciplines span{font-size:.75rem;letter-spacing:.11em;font-weight:600}.mini-disciplines small{display:block;font-size:.75rem;font-weight:400;letter-spacing:0;color:var(--muted);margin-top:3px}.discipline-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.discipline{scroll-margin-top:110px;padding:34px;background:white;border:1px solid #e3e3e3;border-radius:12px;display:flex;flex-direction:column}.discipline-top{display:flex;align-items:center;gap:17px;margin-bottom:26px}.discipline-top .eyebrow{margin:0}.discipline-letter{width:58px;height:58px;background:#f1f1f1;color:var(--accent);border-radius:9px;display:grid;place-items:center;font:500 2.2rem var(--display)}#manage .discipline-letter{background:#eeeeee;color:#222222}.discipline h2{font-size:2rem;letter-spacing:-.04em}.discipline p{font-size:.9375rem}.process{display:flex;flex-wrap:wrap;gap:7px;margin:27px 0;font-size:.75rem;color:var(--ink)}.process li{background:#f4f4f4;border:1px solid #e9e9e9;padding:6px 9px;border-radius:4px}.process li:not(:last-child):after{content:' →';margin-left:9px;color:#767676}.capabilities{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:auto}.capabilities summary{cursor:pointer;font-size:.875rem;font-weight:500;padding:17px 0;list-style:none;display:flex;align-items:center;gap:8px}.capabilities summary:after{content:'+';font-size:1.3rem;margin-left:auto}.capabilities[open] summary:after{content:'−'}.capabilities summary::-webkit-details-marker{display:none}.capabilities summary>span{color:var(--muted);font-size:.75rem;font-weight:400}.content-list li{position:relative;padding:11px 0 11px 23px;border-bottom:1px solid var(--line);line-height:1.6}.content-list li:before{content:'+';position:absolute;left:0;color:var(--accent)}.content-list li:last-child{border-bottom:0}.capabilities .content-list{padding-bottom:18px;font-size:.875rem}.capabilities .content-list li{padding-block:7px}blockquote{margin:24px 0 0;padding-left:16px;border-left:2px solid var(--accent);font-size:.875rem;line-height:1.65;letter-spacing:-.01em}.signature{background:#101010;color:#fff;padding:72px 0}.signature .eyebrow{color:#c2c2c2;margin-bottom:23px}.signature h2{font-size:clamp(2.5rem,4.7vw,4.2rem)}.signature h2 span{color:var(--inverse)}.signature-foot{display:flex;gap:30px;align-items:center;font-size:.75rem;color:#d0d0d0;margin-top:40px}.signature-rule{height:1px;background:#ffffff3b;flex:1}.before .reading h2{font-size:2rem}.clearance-panel{margin-top:84px;padding:42px;background:var(--pale);border:1px solid var(--line);border-radius:10px;display:grid;grid-template-columns:1fr 1fr;gap:30px 60px}.clearance-panel h2{font-size:2.1rem}.clearance-panel p{font-size:.9375rem}.clearance-bottom{grid-column:1/-1;border-top:1px solid #d8d8d8;padding-top:28px;display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.clearance-bottom h2{font-size:1.5rem}.clearance-bottom p{margin:0}.questions .content-list li{padding:15px 0 15px 30px;font-size:.9375rem}.questions .content-list li:before{content:'↗';font-size:1.1rem}.portfolio-section{background:var(--dark);padding:84px 0;color:white}.portfolio-section .section-index{border-color:#ffffff25;color:#b0b0b0}.portfolio-section .eyebrow{color:#bbbbbb}.portfolio-section h2{font-size:3.25rem}.portfolio-section .muted{color:#989898}.portfolio-section p{color:#cbcbcb}.portfolio-section .content-list{margin-top:18px}.portfolio-section .content-list li{border-color:#ffffff20;color:#f2f2f2}.portfolio-section .content-list li:before{color:var(--inverse)}.portfolio-section .button{background:var(--inverse);color:var(--ink);border-color:var(--inverse)}.portfolio-section .button:hover{background:#e6e6e6}.portfolio-graphic{margin-top:38px;max-width:440px}.portfolio-grid{display:grid;grid-template-columns:repeat(10,1fr);gap:6px}.portfolio-grid>span{aspect-ratio:1;border:1px solid #5d5d5d;border-radius:4px;color:var(--inverse);display:grid;place-items:center;font-size:1.3rem;background:#ffffff02}.portfolio-grid .selected{border-color:#aaaaaa;background:#ffffff10}.portfolio-caption{display:flex;justify-content:space-between;gap:12px;font-size:.75rem;letter-spacing:.1em;margin-top:12px;color:#bebebe}.ownership-heading{max-width:880px;margin-bottom:55px}.ownership-heading h2{max-width:580px;font-size:1.5rem;line-height:1.4;letter-spacing:-.025em;color:var(--muted);margin-bottom:22px}.ownership-heading>p{font:500 clamp(2.5rem,4.7vw,4.4rem)/1.12 var(--display);letter-spacing:-.055em;color:var(--ink);margin:0}.ownership-heading>p>span{color:var(--accent)}.ownership-body{display:grid;grid-template-columns:.85fr 1.15fr;gap:85px;align-items:start}.ownership-diagram{padding:32px;background:#f2f2f2;border:1px solid #e5e5e5;border-radius:9px}.ownership-diagram>span{font-size:.75rem;font-weight:600;letter-spacing:.1em;color:#6d6d6d;display:block;margin:14px 0 8px}.ownership-diagram>span:first-child{margin-top:0}.ownership-diagram>div{font-size:.9375rem;background:white;border:1px solid #e2e2e2;padding:13px 16px;border-radius:5px}.ownership-diagram .owner-question{background:var(--accent);color:white;border-color:var(--accent);display:flex;gap:14px;justify-content:space-between}.ownership .reading h2{font-size:1.8rem}.ecosystem-section{padding:80px 0;background:#f6f6f6}.ecosystem-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:42px}.ecosystem-heading h2{font-size:3rem}.ecosystem-heading h2 span{color:#818181}.ecosystem-monogram{font:500 4rem var(--display);letter-spacing:-.07em;color:#aeaeae}.ecosystem-monogram>span{font-size:2rem;vertical-align:top;color:var(--accent)}.ecosystem-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 48px}.ecosystem-grid li{display:flex;align-items:center;gap:18px;border-top:1px solid #dbdbdb;padding:21px 0;font-size:.9375rem}.row-index{font-size:.75rem;color:#898989;font-variant-numeric:tabular-nums}.why .questions .content-list li:first-child{padding-top:0}.asset-statement{margin-top:65px;padding-top:45px;border-top:1px solid var(--line);max-width:920px}.asset-statement h2{font-size:2.05rem;line-height:1.4;letter-spacing:-.035em}.contact-section{text-align:center;background:#e9e9e9;padding:80px 24px 84px;position:relative;overflow:hidden}.contact-section .wrap{max-width:880px}.contact-section .eyebrow{color:#606060}.contact-section h2{font-size:clamp(3.1rem,5.5vw,5.3rem)}.contact-section h2>span{color:var(--accent)}.contact-section p{max-width:590px;margin:24px auto 0;font-size:1rem;color:#595959}.contact-section p+p{margin-top:18px}.contact-section .button{margin-top:30px}footer{background:#fff}.footer-top{padding-block:48px;display:flex;align-items:center;justify-content:space-between;gap:35px}.footer-top p{font-size:.875rem;line-height:1.7}.footer-top>a:last-child{font-size:.75rem}.footer-bottom{border-top:1px solid var(--line);padding-block:18px;display:flex;justify-content:space-between;font-size:.75rem;color:#787878}.footer-bottom>span:last-child{letter-spacing:.07em;font-size:.75rem}dialog{border:1px solid var(--line);border-radius:16px;padding:42px;max-width:490px;width:calc(100% - 32px);color:var(--ink);box-shadow:0 20px 120px #0003}dialog::backdrop{background:#08080899;backdrop-filter:blur(5px)}dialog h2{font-size:2.2rem}dialog p{margin-top:23px}dialog .button{margin-top:25px}.dialog-close{position:absolute;right:17px;top:12px;background:transparent;font-size:1.7rem;color:var(--muted);padding:3px 9px}body:has(dialog[open]){overflow:hidden}

/* Editorial monochrome direction */
:root{--ink:#171717;--dark:#090909;--accent:#171717;--muted:#606060;--line:#dcdcdc;--pale:#f5f5f5;--inverse:#fff;--serif:Georgia,"Times New Roman",serif}
header{background:#0b0b0b;color:#fff;border-bottom:1px solid #ffffff18;backdrop-filter:none}
.nav-wrap{max-width:1500px;height:96px;gap:28px;padding-inline:48px}
.brand{display:flex;flex-direction:column;align-items:flex-start;gap:0;flex-shrink:0;letter-spacing:0}
.wordmark{font:700 2rem/1.1 var(--serif);letter-spacing:-.04em;white-space:nowrap}
.wordmark>span{color:#c7c7c7}
.brand-small{font:600 .75rem/1.6 var(--body);letter-spacing:.19em;margin-top:5px}
.nav-wrap nav{gap:30px;margin:0}
.nav-wrap nav a{position:relative;font-size:.8125rem;font-weight:550;color:#bbb;white-space:nowrap;padding:15px 0}
.nav-wrap nav a:hover,.nav-wrap nav a.active{color:#fff}
.nav-wrap nav a.active:after{content:"";position:absolute;bottom:3px;left:0;width:25px;height:1px;background:#fff}
.nav-cta{background:#fff;color:#0a0a0a;border:1px solid #fff;border-radius:2px;padding:15px 21px;gap:19px;font-size:.8125rem;white-space:nowrap;transition:background .2s}
.nav-cta:hover{background:#ddd}
.menu-toggle span{background:white}
#mobile-nav{border-top:1px solid #ffffff25;background:#0b0b0b}
#mobile-nav a{font-size:.9375rem}
.wrap{max-width:1312px;padding-inline:56px}
h2{font-size:clamp(2.35rem,3.7vw,3.55rem);letter-spacing:-.052em;line-height:1.14}
.section{padding-block:110px}
.section-index{display:flex;align-items:center;gap:15px;font-size:.75rem;letter-spacing:.13em;border:0;padding:0;margin-bottom:48px;color:#777}
.section-index:after{content:"";height:1px;background:var(--line);flex:1}
.eyebrow{letter-spacing:.13em;font-size:.75rem}
.button{border-radius:2px;padding:16px 22px;font-size:.875rem}
.button.secondary{background:transparent;border-color:#bbb}
.button:hover{background:#333}
.button.secondary:hover{background:#ededed}
.hero{padding:70px 56px 0;background:#fafafa}
.hero-grid{background-size:92px 92px;opacity:.6;mask-image:linear-gradient(90deg,transparent 30%,#000)}
.hero-inner{max-width:1200px;display:grid;grid-template-columns:1.4fr 1fr;gap:65px;text-align:left;align-items:center}
.hero .eyebrow{justify-content:flex-start;letter-spacing:.1em;font-size:.75rem;gap:10px;margin-bottom:28px;max-width:520px}
.hero h1{font-size:clamp(3rem,4.55vw,4.5rem);line-height:1.08;letter-spacing:-.06em}
.hero h1>span{font-family:var(--serif);font-style:italic;font-weight:400;letter-spacing:-.05em}
.hero h1 br{display:block}
.hero-lead{font-size:1rem;line-height:1.75;margin-top:29px;max-width:480px}
.hero-lead .desktop-break{display:none}
.hero h2{font-family:var(--body);font-size:1rem;font-weight:550;line-height:1.6;max-width:470px;margin:14px 0 0;letter-spacing:0}
.hero-actions{justify-content:flex-start;gap:12px;margin-top:29px}
.hero-actions .button{font-size:.8125rem;padding:15px 19px;gap:16px}
.hero-base{max-width:1200px;margin:59px auto 0;padding:19px 0;font-size:.75rem}
.hero-caption{font-size:.75rem;letter-spacing:.12em}
.brand-lifecycle{background:#fff;border:1px solid #ddd;border-radius:3px;box-shadow:12px 14px 0 #f0f0f0,0 18px 50px #00000005;padding:25px 29px 0;position:relative}
.lifecycle-topline{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #e0e0e0;padding-bottom:13px;font-size:.75rem;letter-spacing:.16em;color:#6b6b6b}
.lifecycle-topline>span:last-child{font:400 1.5rem var(--serif);color:#111}
.lifecycle-title{font:400 2.35rem/1.13 var(--serif);letter-spacing:-.04em;padding:25px 0 23px}
.lifecycle-title em{color:#777}
.lifecycle-track{position:relative}
.lifecycle-stage{display:flex;align-items:center;gap:15px;padding:14px;background:#f4f4f4;border:1px solid #e8e8e8;transition:background .2s}
.lifecycle-stage:hover{background:#e9e9e9}
.stage-letter{font:400 2.1rem/1 var(--serif);width:33px;border-right:1px solid #ccc;padding-right:12px}
.lifecycle-stage b{display:block;font-size:.75rem;letter-spacing:.13em}
.lifecycle-stage small{display:block;font-size:.75rem;color:#666;margin-top:2px}
.stage-arrow{margin-left:auto;font-size:1.1rem}
.lifecycle-steps{display:flex;flex-wrap:wrap;gap:4px 13px;font-size:.75rem;color:#6a6a6a;line-height:1.6;padding:13px 0 22px 15px}
.lifecycle-steps li:not(:last-child):after{content:"·";margin-left:13px}
.lifecycle-bottom{margin:0 -29px;padding:15px 29px;background:#111;color:#d0d0d0;font-size:.75rem;letter-spacing:.015em}
.intro-strip{background:#111}
.intro-layout{padding-block:36px;grid-template-columns:160px 1fr;gap:40px}
.intro-symbol{font-family:var(--serif);font-size:4.2rem;font-weight:400}
.intro-strip p{font-size:1rem;color:#efefef}
.intro-strip p+p{color:#b0b0b0;font-size:.9375rem}
.split{gap:100px}
.industry .sticky-heading>h2{font-family:var(--serif);font-size:3.6rem;letter-spacing:-.045em}
.industry .accent-line{font-size:1.2rem;color:#666}
.industry .reading>p:first-child{font-weight:600;font-size:1.1rem;color:#171717}
.industry .reading h3{border-top:1px solid #ddd;padding-top:25px;font-family:var(--serif);font-size:1.85rem}
.industry-journey{margin-top:42px;max-width:410px;display:grid;grid-template-columns:1fr 1fr;border:1px solid #ddd}
.industry-journey>span{font-size:.8125rem;padding:13px 17px;display:flex;justify-content:space-between;background:#fafafa}
.industry-journey>span:after{content:"↗";color:#777}
.industry-journey>span:nth-child(odd){border-right:1px solid #ddd}
.industry-journey>span:nth-child(-n+2){border-bottom:1px solid #ddd}
.approach-section{background:#f2f2f2;padding-block:95px}
.approach-intro h2{font-family:var(--serif);font-size:4.7rem;line-height:1.02;letter-spacing:-.055em}
.approach-intro h2 span{font-style:italic;color:#737373}
.approach-intro>div:nth-child(2){padding-top:12px}
.mini-disciplines a{padding-top:17px;border-top:1px solid #ccc}
.mini-disciplines b{border-radius:0;background:white}
.discipline-grid{gap:24px}
.discipline{position:relative;border-radius:3px;border:1px solid #d6d6d6;padding:35px 35px 30px;box-shadow:0 5px 0 #00000003}
.discipline-top{justify-content:space-between;border-bottom:1px solid #ddd;padding-bottom:26px}
.discipline-letter{font:400 3.25rem var(--serif);border-radius:0;background:transparent;width:auto;height:auto;color:#111}
.discipline-top .eyebrow{font-size:.75rem;color:#777}
.discipline h2{font-size:2rem}
.discipline .process{gap:0;border-block:1px solid #ddd;padding:12px 0;margin-block:25px}
.process li{border:0;background:transparent;padding:6px 8px;border-radius:0;font-size:.75rem}
.capabilities summary{padding:19px 0;font-size:.875rem}
.capabilities summary>span{font-size:.75rem}
.discipline blockquote{font-family:var(--serif);font-size:1.2rem;line-height:1.5;border-width:1px}
#manage{background:#171717;color:#fff;border-color:#171717}
#manage .discipline-letter{background:transparent;color:#fff}
#manage p{color:#bcbcbc}
#manage .discipline-top{border-color:#444}
#manage .discipline-top .eyebrow{color:#aaa}
#manage .process{border-color:#444}
#manage .process li,#manage .process li:after{color:#ccc}
#manage .capabilities{border-color:#444}
#manage .capabilities summary>span{color:#aaa}
#manage .content-list li{border-color:#444;color:#ddd}
#manage .content-list li:before{color:#fff}
#manage blockquote{border-color:#aaa}
.signature{background:white;color:#171717;padding:95px 0;border-bottom:1px solid #ddd}
.signature .eyebrow{color:#777}
.signature h2{font-family:var(--serif);font-size:clamp(2.8rem,5.2vw,4.8rem);letter-spacing:-.05em}
.signature h2 span{color:#7b7b7b;font-style:italic}
.signature-foot{color:#666;gap:25px;margin-top:38px}
.signature-rule{background:#d0d0d0}
.before .sticky-heading>h2{font-family:var(--serif);font-size:3.4rem}
.before .sticky-heading>.accent-line{font:italic 1.7rem/1.35 var(--serif);max-width:410px;color:#666}
.clearance-panel{border-radius:2px;padding:45px;background:#f6f6f6;border:0;border-top:3px solid #111;gap:35px 65px}
.clearance-panel h2{font-family:var(--serif);font-size:2.5rem}
.questions .content-list{counter-reset:question}
.questions .content-list li{counter-increment:question;padding-left:37px}
.questions .content-list li:before{content:counter(question,decimal-leading-zero);font:400 .75rem var(--body);top:20px;color:#777}
.questions .content-list li:first-child:before{top:20px}
.why .questions .content-list li:first-child:before{top:4px}
.clearance-bottom h2{font-family:var(--display);font-size:1.5rem}
.portfolio-section{background:#0d0d0d;padding-block:95px}
.portfolio-section .section-index:after{background:#333}
.portfolio-section h2{font-size:3.4rem}
.portfolio-section .muted{color:#999}
.portfolio-section .reading{border-left:1px solid #333;padding-left:42px}
.portfolio-grid>span{border-radius:0;border-color:#3f3f3f;background:#171717}
.portfolio-grid .selected{background:#fff;color:#111;border-color:#fff}
.portfolio-caption{font-size:.75rem}
.portfolio-section .button{border-radius:2px}
.ownership-heading{max-width:none;display:grid;grid-template-columns:.8fr 1.2fr;gap:85px;align-items:start}
.ownership-heading h2{font-size:1.4rem;line-height:1.6;max-width:360px;margin-top:10px}
.ownership-heading>p{font:400 3.8rem/1.1 var(--serif);letter-spacing:-.045em}
.ownership-heading>p>span{font-style:italic;color:#777}
.ownership-body{grid-template-columns:.8fr 1.2fr}
.ownership-diagram{border-radius:0;background:#f6f6f6;border:1px solid #ddd;padding:32px}
.ownership-diagram>div{border-radius:0}
.ownership .reading h2{font-family:var(--serif);font-size:2.1rem}
.ecosystem-section{padding-block:90px;background:#f5f5f5}
.ecosystem-heading h2{font-family:var(--serif);font-size:3.7rem}
.ecosystem-heading h2 span{font-style:italic;color:#777}
.ecosystem-monogram{font-family:var(--serif);color:#c7c7c7;font-size:5rem}
.ecosystem-grid{gap:0 55px}
.ecosystem-grid li{padding:24px 0}
.ecosystem-grid li:after{content:"↗";margin-left:auto;color:#777}
.why .split>div:first-child>h2{font-family:var(--serif);font-size:3.4rem}
.asset-statement{max-width:none;background:#f5f5f5;padding:34px 42px 34px 70px;border:0;position:relative}
.asset-statement:before{content:"“";position:absolute;top:20px;left:25px;font:4rem var(--serif);color:#aaa}
.asset-statement h2{font-family:var(--serif);font-size:2.1rem;line-height:1.45}
.contact-section{padding:90px 0;background:white;border-top:1px solid #ddd}
.contact-section h2{font-size:4.8rem}
.contact-section h2>span{font-family:var(--serif);font-style:italic;font-weight:400;color:#666}
.contact-section .eyebrow{color:#777}
.contact-section p{color:#606060}
footer{position:relative;overflow:hidden;background:#0a0a0a;color:#fff}
.footer-watermark{position:absolute;top:12px;right:40px;font:700 5rem var(--serif);color:#ffffff04;pointer-events:none}
.footer-columns{display:grid;grid-template-columns:1.6fr 1.2fr .85fr 1.1fr;gap:0;padding-block:55px 40px;position:relative}
.footer-columns>div{padding-inline:30px;border-left:1px solid #ffffff20}
.footer-columns>div:first-child{padding-left:0;border:0}
.footer-columns>div:last-child{padding-right:0}
footer .wordmark{font-size:2rem}
footer .brand-small{font-size:.5rem;letter-spacing:.16em}
.footer-sector{font-size:.5rem;color:#aaa;letter-spacing:.15em;margin-top:4px}
.footer-about>p:last-child{font-size:.9375rem;color:#aaa;line-height:1.75;max-width:310px;margin-top:22px}
.footer-columns h3{font:600 .875rem/1.5 var(--body);letter-spacing:0;margin-bottom:19px}
.footer-philosophy>a{font:400 1.7rem/1.3 var(--serif);white-space:nowrap;letter-spacing:-.02em}
.footer-philosophy em{color:#aaa}
.footer-discipline>a,.footer-explore nav a{display:block;color:#aaa;font-size:.875rem;padding-bottom:9px}
.footer-columns a:hover{color:#fff}
.footer-explore nav a.active{color:#fff}
.footer-bottom{padding:19px 0;max-width:1200px;border-top:1px solid #ffffff25;color:#aaa;display:flex;justify-content:space-between;font-size:.75rem}
.footer-bottom>a{font-size:.75rem}
.footer-bottom>a span{margin-left:14px}





/* Our Focus: editorial hierarchy and a complete pharmaceutical name journey */
.focus-redesign{padding-block:90px 100px}
.focus-redesign .section-index{margin-bottom:42px}
.focus-opening{display:grid;grid-template-columns:1.15fr 1fr;gap:100px;align-items:center;margin-bottom:48px}
.focus-heading .eyebrow{font-size:.75rem;color:#666;margin-bottom:23px}
.focus-redesign .focus-heading h2{font-family:var(--display);font-size:clamp(2.8rem,4.1vw,3.8rem);line-height:1.08;letter-spacing:-.055em;font-weight:500}
.focus-heading h2 em{font-family:var(--serif);font-weight:400;color:#666;letter-spacing:-.04em}
.focus-intent{display:flex;align-items:center;gap:13px;font-size:1rem;color:#555;margin-top:24px}
.focus-intent:before{content:none;display:none}
.focus-context{padding:6px 0 6px 30px;border-left:1px solid #d5d5d5}
.focus-context p:first-child{font:500 1.65rem/1.35 var(--display);letter-spacing:-.035em;color:#161616;max-width:350px}
.focus-context p+p{font-size:1rem;line-height:1.85;margin-top:20px;color:#606060}
.focus-journey-panel{background:#f5f5f5;border:1px solid #e5e5e5;padding:28px 32px}
.focus-journey-intro{display:flex;justify-content:space-between;align-items:center;gap:20px}
.focus-journey-intro .eyebrow{font-size:.6875rem;margin:0;letter-spacing:.12em}
.journey-caption{font-family:var(--serif);font-style:italic;font-size:1rem;color:#666}
.focus-route{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));margin:27px 0 25px;gap:0}
.focus-route li{position:relative;display:flex;flex-direction:column;gap:12px;padding-right:15px}
.route-number{width:32px;height:32px;background:white;border:1px solid #c9c9c9;border-radius:50%;display:grid;place-items:center;font-size:.6875rem;color:#666;z-index:1}
.focus-route li:first-child .route-number,.focus-route li:last-child .route-number{background:#151515;border-color:#151515;color:white}
.focus-route li:not(:last-child):after{content:"";position:absolute;height:1px;background:#ccc;top:16px;left:32px;width:calc(100% - 32px)}
.route-name{font-weight:500;font-size:.875rem;line-height:1.5;max-width:130px}
.focus-journey-panel>p{border-top:1px solid #ddd;padding-top:21px;font-size:.9375rem;line-height:1.85;max-width:none;color:#636363}
.focus-insight{margin-top:26px;display:grid;grid-template-columns:1fr 1.15fr;gap:0;border:1px solid #ddd}
.focus-insight blockquote{position:relative;background:#141414;color:#fff;margin:0;border:0;padding:39px 34px 32px;font:400 1.65rem/1.48 var(--serif);letter-spacing:-.018em}
.focus-quote-mark{font:400 3.8rem/.7 var(--serif);display:block;color:#999;margin-bottom:14px}
.focus-resolution{padding:29px 34px}
.focus-resolution>p:first-child{font-size:.875rem;line-height:1.7;color:#666;margin:0}
.focus-resolution h3{font:500 1.6rem/1.3 var(--display);letter-spacing:-.04em;margin-top:20px;color:#171717;max-width:400px}
.focus-resolution h3+p{font-size:.9375rem;line-height:1.8;margin-top:15px}




/* TM Approach: a concise, balanced service comparison */
#approach.approach-refined{background:#f6f6f6;padding-block:80px}
.approach-refined .section-index{margin-bottom:36px}
.simple-approach-heading{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:start;margin-bottom:37px}
.simple-approach-heading h2{font:500 clamp(2.4rem,4vw,3.7rem)/1.12 var(--display);letter-spacing:-.055em}
.simple-approach-heading h2 em{font-family:var(--serif);font-weight:400;color:#737373}
.simple-approach-heading p{font-size:1rem;line-height:1.75}
.simple-approach-heading p+p{margin-top:12px}
.approach-refined .discipline-grid{gap:24px;align-items:start}
#approach .simple-discipline,#approach #manage{background:white;color:#171717;padding:30px;border:1px solid #dedede;border-radius:8px;box-shadow:none;display:flex;flex-direction:column}
.simple-card-label{display:flex;align-items:center;gap:11px;margin-bottom:26px;font-size:.75rem;font-weight:600;letter-spacing:.1em}
.simple-letter{display:grid;place-items:center;border:1px solid #d7d7d7;border-radius:4px;width:35px;height:35px;font:500 1.2rem var(--display);background:#f8f8f8}
.simple-index{margin-left:auto;color:#999;font-size:.75rem;font-weight:400;letter-spacing:0}
#approach .simple-discipline h3{font:500 1.85rem/1.25 var(--display);letter-spacing:-.04em;margin:0}
#approach .simple-summary{color:#626262;font-size:1rem;line-height:1.7;margin-top:15px;min-height:3.4em}
#approach .simple-discipline .process{display:flex;flex-wrap:wrap;gap:7px;border:0;margin:24px 0 27px;padding:0}
#approach .simple-discipline .process li{font-size:.8125rem;color:#444;background:#f5f5f5;border:1px solid #ececec;border-radius:4px;padding:7px 10px;line-height:1.5}
#approach .simple-discipline .process li:after{content:none}
#approach .simple-discipline .capabilities{margin-top:0;border-block:1px solid #e1e1e1}
#approach .simple-discipline .capabilities summary{font-size:.875rem;padding:17px 0;gap:12px;min-height:58px}
#approach .simple-discipline .capabilities summary>span{font-size:.75rem;color:#777;font-weight:400;letter-spacing:0}
#approach .simple-discipline .capabilities summary:after{color:#555;font-weight:400}
.service-details{padding:0 0 20px}
#approach .service-details p{font-size:1rem;color:#626262;line-height:1.75}
#approach .service-details h4{font:600 .875rem var(--body);margin:24px 0 8px;color:#222}
#approach .service-details .content-list{padding-bottom:0}
#approach .service-details .content-list li{color:#555;border-color:#eee;font-size:.9375rem;padding-block:9px}
#approach .service-details .content-list li:before{color:#777}
.simple-question{padding-top:23px}
.simple-question>span{display:block;font-size:.6875rem;letter-spacing:.12em;color:#888;margin-bottom:9px}
#approach .simple-question p{font-size:1rem;line-height:1.65;color:#444;margin:0}




/* TM Approach: two full-width editorial rows */
#approach.approach-rows{background:#fff;padding-block:85px}
.approach-rows .simple-approach-heading{grid-template-columns:1fr 1fr;gap:80px;margin-bottom:44px}
.approach-rows .simple-approach-heading h2{font-size:clamp(2.5rem,4.3vw,4rem)}
.approach-rows .discipline-grid{display:flex;flex-direction:column;gap:0;border-top:1px solid #222}
#approach.approach-rows .discipline-row,#approach.approach-rows #manage{display:grid;grid-template-columns:1fr 1.15fr;gap:65px;width:100%;border:0;border-bottom:1px solid #d5d5d5;border-radius:0;padding:36px 0;background:white;box-shadow:none}
.discipline-row-heading{position:relative;padding-left:76px}
.approach-rows .simple-card-label{margin-bottom:17px;min-height:27px;gap:12px}
.approach-rows .simple-letter{position:absolute;left:0;top:0;width:51px;height:58px;font:400 2.6rem var(--serif);border:0;border-radius:0;background:#f2f2f2;color:#333}
.approach-rows .simple-index{margin-left:0;padding-left:13px;border-left:1px solid #ccc;color:#888}
#approach.approach-rows .simple-discipline h3{font-size:1.85rem;line-height:1.25;max-width:320px}
#approach.approach-rows .simple-summary{min-height:0;max-width:340px;margin-top:16px;font-size:1rem}
.discipline-row-content{min-width:0}
#approach.approach-rows .simple-discipline .process{margin:0 0 25px;gap:0;display:flex;flex-wrap:wrap}
#approach.approach-rows .simple-discipline .process li{background:none;border:0;border-radius:0;padding:5px 0;font-size:.875rem;color:#333;display:flex;align-items:center}
#approach.approach-rows .simple-discipline .process li:not(:last-child):after{content:"→";display:inline-block;margin:0 13px;color:#aaa;font-size:.875rem}
#approach.approach-rows .simple-discipline .capabilities{border-top:0;border-bottom:1px solid #ddd}
#approach.approach-rows .simple-discipline .capabilities summary{padding:0 0 16px;min-height:40px}
.approach-rows .simple-question{margin-top:20px;padding:18px 20px;background:#f6f6f6;border-left:2px solid #aaa}
.approach-rows .simple-question>span{font-size:.6875rem;margin-bottom:8px;letter-spacing:.1em}
#approach.approach-rows .simple-question p{font-size:.9375rem;line-height:1.7;color:#555}




/* Pharmaceutical photography, with a quiet surface behind the hero copy. */
.hero{isolation:isolate;background:#f5f5f5}
.hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 65%;z-index:-2;filter:grayscale(1);pointer-events:none}
.hero:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(255,255,255,.96) 0%,rgba(255,255,255,.9) 34%,rgba(255,255,255,.56) 61%,rgba(255,255,255,.1) 100%);pointer-events:none}
.hero .hero-grid{display:none}
.hero .brand-lifecycle{background:#fffffff5;box-shadow:0 15px 45px #0000000d;border-color:#d2d2d2}
.hero .hero-base{border-color:#00000020}



/* Keep the pharmaceutical image unobstructed beside the hero copy. */
.hero:before{background:linear-gradient(90deg,rgba(255,255,255,.96) 0%,rgba(255,255,255,.9) 34%,rgba(255,255,255,.35) 61%,rgba(255,255,255,0) 100%)}



/* Compact pharmaceutical brand-review visual, kept clear of the headline. */
.hero{background:#fff}
.hero:before{display:none}
.hero-photo{inset:auto;right:4%;top:50%;transform:translateY(-50%);width:42%;max-width:570px;height:78%;max-height:460px;object-fit:contain;object-position:center;z-index:-1;filter:grayscale(1);mix-blend-mode:multiply}




/* Edge-to-edge pharmaceutical hero background. */
#home.hero{background:#f1f1f1;isolation:isolate}
#home .hero-photo{position:absolute;inset:0;width:100%;height:100%;max-width:none;max-height:none;margin:0;transform:none;object-fit:cover;object-position:right center;z-index:-2;filter:grayscale(1);opacity:.85;mix-blend-mode:multiply;pointer-events:none}
#home.hero:before{content:"";display:block;position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,#fff 0%,rgba(255,255,255,.98) 30%,rgba(255,255,255,.88) 44%,rgba(255,255,255,.32) 64%,rgba(255,255,255,.08) 100%)}
#home .hero-base{margin-top:59px;border-color:#00000020}



/* Pharmaceutical brand image gallery. */
.brand-gallery{background:#101010;color:#fff;padding:78px 0}
.gallery-heading{display:grid;grid-template-columns:1.2fr 1fr;gap:80px;align-items:end;margin-bottom:36px}
.gallery-heading .eyebrow{color:#aaa;font-size:.75rem;margin-bottom:20px}
.gallery-heading h2{font-size:clamp(2.2rem,3.6vw,3.4rem);line-height:1.15}
.gallery-heading h2 em{font-family:var(--serif);font-weight:400;color:#bcbcbc}
.gallery-heading>p{font-size:1rem;line-height:1.8;color:#bbb;max-width:430px}
.gallery-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;border:1px solid #333;background:#fff;overscroll-behavior-x:contain}
.gallery-track::-webkit-scrollbar{display:none}
.gallery-slide{display:grid;grid-template-columns:1.15fr 1fr;flex:0 0 100%;min-width:0;scroll-snap-align:start;margin:0;background:#fff;color:#171717}
.gallery-image{height:390px;min-width:0;background:#f6f6f6;overflow:hidden}
.gallery-image img{width:100%;height:100%;object-fit:contain;filter:grayscale(1);mix-blend-mode:multiply}
.gallery-slide figcaption{padding:35px 40px;align-self:center;min-width:0}
.gallery-slide-number{display:block;font:400 2.8rem/1 var(--serif);color:#c3c3c3;margin-bottom:25px}
.gallery-slide .eyebrow{font-size:.75rem;letter-spacing:.1em;color:#777;margin-bottom:15px}
.gallery-slide h3{font-size:2rem;line-height:1.2;letter-spacing:-.035em}
.gallery-slide p{font-size:1rem;line-height:1.75;margin-top:19px;color:#626262}
.gallery-controls{display:flex;align-items:center;justify-content:space-between;margin-top:20px}
.gallery-dots{display:flex;gap:4px}
.gallery-dots button{width:36px;height:36px;padding:0;background:transparent;position:relative}
.gallery-dots button:after{content:"";position:absolute;height:3px;left:5px;right:5px;top:16px;background:#555}
.gallery-dots button[aria-current="true"]:after{background:#fff}
.gallery-navigation{display:flex;gap:10px;align-items:center}
.gallery-position{font-size:.75rem;color:#bbb;margin-right:12px;font-variant-numeric:tabular-nums}
.gallery-navigation button{width:43px;height:43px;border:1px solid #555;color:white;background:transparent;font-size:1.15rem}
.gallery-navigation button:hover:not(:disabled){color:#111;background:#fff}
.gallery-navigation button:disabled{opacity:.3;cursor:default}
.brand-gallery button:focus-visible,.gallery-track:focus-visible{outline:2px solid #999;outline-offset:4px}



#approach .discipline-description{margin-bottom:24px}#approach .discipline-description p{font-size:1rem;line-height:1.75;color:#626262}#approach .discipline-description p+p{margin-top:17px}

/* Static alternating image and content rows. */
.gallery-rows{display:grid;gap:26px}
.gallery-story{margin:0;display:grid;grid-template-columns:1fr 1fr;background:#fff;color:#171717;min-width:0}
.gallery-story .gallery-image{height:410px}
.gallery-story figcaption{padding:40px;align-self:center;min-width:0}
.gallery-story:nth-child(even) .gallery-image{grid-column:2;grid-row:1}
.gallery-story:nth-child(even) figcaption{grid-column:1;grid-row:1}
.gallery-story .eyebrow{font-size:.75rem;letter-spacing:.1em;color:#777;margin-bottom:15px}
.gallery-story h3{font-size:2rem;line-height:1.25;letter-spacing:-.035em}
.gallery-story p{font-size:1rem;line-height:1.8;color:#626262;margin-top:19px}




/* Display the exact photo areas from the supplied composite reference. */
.gallery-story .reference-photo{position:relative;aspect-ratio:724 / 540;height:auto;min-height:0;align-self:center;overflow:hidden;background:white}
.gallery-story .reference-photo img{position:absolute;width:200%;height:201.1112%;max-width:none;object-fit:fill;filter:grayscale(1);mix-blend-mode:normal;margin:0}
.gallery-story:first-child .reference-photo img{left:0;top:0}
.gallery-story:nth-child(2) .reference-photo img{right:0;bottom:0}



/* Exact box and capsules from the user reference, without its page text. */
#home.hero{background:#fff}
#home.hero:before{display:none}
.hero-reference-photo{position:absolute;right:0;top:50%;transform:translateY(-50%);width:48%;aspect-ratio:550 / 420;overflow:hidden;z-index:-1;pointer-events:none;mask-image:linear-gradient(90deg,transparent 0%,#000 15%);filter:grayscale(1)}
.hero-reference-photo img{position:absolute;right:0;top:0;width:215.8182%;height:111.1905%;max-width:none;object-fit:fill}



/* Join the two image-content rows without a separating gap. */
#brand-gallery .gallery-rows{gap:0}


/* Journey cards with inline SVG icons. */
.focus-journey-panel{
  padding:34px;
  border:1px solid #d8d8d8;
  background:linear-gradient(180deg,#f7f7f7 0%,#f2f2f2 100%);
}
.focus-card-route{
  position:relative;
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:14px;
  margin:30px 0 26px;
}
.focus-card-route:before{
  content:"";
  position:absolute;
  left:7%;
  right:7%;
  top:42px;
  height:1px;
  background:#c8c8c8;
}
.focus-card-route .route-card{
  position:relative;
  z-index:1;
  display:grid;
  min-height:150px;
  padding:18px 14px 16px;
  border:1px solid #d7d7d7;
  background:#fff;
  box-shadow:0 10px 24px rgba(0,0,0,.04);
}
.route-icon{
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border:1px solid #202020;
  background:#111;
  color:#fff;
  margin-bottom:20px;
}
.route-icon svg{
  width:22px;
  height:22px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.6;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.focus-card-route .route-number{
  width:auto;
  height:auto;
  border:0;
  background:transparent;
  color:#858585;
  place-items:start;
  font-size:.75rem;
  letter-spacing:.12em;
  margin-bottom:8px;
}
.focus-card-route .route-name{
  max-width:none;
  font-size:.9375rem;
  line-height:1.35;
  font-weight:600;
}
.focus-card-route .route-card:first-child,
.focus-card-route .route-card:last-child{
  background:#111;
  color:#fff;
  border-color:#111;
}
.focus-card-route .route-card:first-child .route-icon,
.focus-card-route .route-card:last-child .route-icon{
  background:#fff;
  color:#111;
  border-color:#fff;
}
.focus-card-route .route-card:first-child .route-number,
.focus-card-route .route-card:last-child .route-number{
  color:#b8b8b8;
}
.focus-journey-panel>p{
  background:#fff;
  border:1px solid #ddd;
  padding:22px 24px;
}




/* Refined professional journey section. */
.focus-journey-panel{
  position:relative;
  overflow:hidden;
  padding:38px;
  border:1px solid #e0e0e0;
  background:#f7f7f7;
}
.focus-journey-panel:before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(135deg,rgba(255,255,255,.9),rgba(255,255,255,0) 45%);
}
.focus-journey-panel>*{position:relative}
.focus-journey-intro{
  padding-bottom:22px;
  border-bottom:1px solid #d8d8d8;
}
.focus-card-route{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:12px;
  margin:28px 0 26px;
}
.focus-card-route:before{display:none}
.focus-card-route .route-card{
  min-height:156px;
  padding:16px;
  border:1px solid #d9d9d9;
  background:#fff;
  box-shadow:none;
  transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease;
}
.focus-card-route .route-card:hover{
  transform:translateY(-3px);
  border-color:#111;
  box-shadow:0 16px 34px rgba(0,0,0,.08);
}
.route-icon{
  width:40px;
  height:40px;
  margin:0 0 22px;
  border:1px solid #d5d5d5;
  background:#f5f5f5;
  color:#111;
}
.route-icon svg{
  width:21px;
  height:21px;
  stroke-width:1.55;
}
.focus-card-route .route-number{
  color:#8c8c8c;
  font-size:.75rem;
  letter-spacing:.14em;
  margin-bottom:9px;
}
.focus-card-route .route-name{
  font-size:.95rem;
  line-height:1.35;
  font-weight:650;
  color:#111;
}
.focus-card-route .route-card:first-child,
.focus-card-route .route-card:last-child{
  background:#111;
  color:#fff;
  border-color:#111;
}
.focus-card-route .route-card:first-child .route-icon,
.focus-card-route .route-card:last-child .route-icon{
  background:#fff;
  color:#111;
  border-color:#fff;
}
.focus-card-route .route-card:first-child .route-name,
.focus-card-route .route-card:last-child .route-name{color:#fff}
.focus-card-route .route-card:first-child .route-number,
.focus-card-route .route-card:last-child .route-number{color:#c7c7c7}
.focus-journey-panel>p{
  margin:0;
  padding:24px 28px;
  border:1px solid #dedede;
  background:#fff;
  color:#555;
  font-size:1rem;
  line-height:1.8;
}




/* Reference-style pharmaceutical journey section, adapted to the site's monochrome brand. */
.focus-redesign .focus-journey-panel{
  margin-top:42px;
  padding:42px 46px 44px;
  border:1px solid #d9d9d9;
  background:#fbfbfb;
  box-shadow:0 24px 70px rgba(0,0,0,.05);
}
.focus-redesign .focus-journey-intro{
  display:grid;
  grid-template-columns:1fr auto;
  gap:32px;
  align-items:end;
  padding-bottom:34px;
  border-bottom:0;
}
.focus-redesign .focus-journey-intro .eyebrow{
  max-width:620px;
  margin:0;
  font-family:var(--display);
  font-size:clamp(2.1rem,4vw,4.2rem);
  line-height:1.02;
  font-weight:750;
  letter-spacing:0;
  text-transform:none;
  color:#111;
}
.focus-redesign .focus-journey-intro .eyebrow:before{
  content:"The Journey of a";
  display:block;
  margin-bottom:5px;
  font-size:1rem;
  line-height:1.2;
  font-weight:700;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:#777;
}
.focus-redesign .focus-journey-intro .eyebrow{
  font-size:0;
}
.focus-redesign .focus-journey-intro .eyebrow:after{
  content:"Pharmaceutical Name";
  display:block;
  font-size:clamp(2.7rem,5.2vw,4.8rem);
  line-height:1;
  letter-spacing:0;
  color:#111;
}
.focus-redesign .journey-caption{
  max-width:340px;
  font-family:var(--display);
  font-size:1.25rem;
  line-height:1.45;
  font-style:normal;
  color:#666;
  text-align:right;
}
.focus-redesign .journey-caption:before{
  content:"From development to delivery.";
  display:block;
}
.focus-redesign .focus-card-route{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:28px;
  margin:4px 0 40px;
}
.focus-redesign .focus-card-route .route-card{
  position:relative;
  min-height:252px;
  padding:14px 14px 20px;
  border:1px solid #d7d7d7;
  border-radius:8px;
  background:#fff;
  box-shadow:0 20px 42px rgba(0,0,0,.06);
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
}
.focus-redesign .focus-card-route .route-card:before{
  content:"";
  position:absolute;
  left:14px;
  right:14px;
  top:14px;
  height:112px;
  border-radius:6px;
  border:1px solid #e1e1e1;
  background:linear-gradient(135deg,#fefefe 0%,#e9e9e9 100%);
}
.focus-redesign .focus-card-route .route-card:after{
  content:"→";
  position:absolute;
  right:-25px;
  top:82px;
  color:#111;
  font-size:1.65rem;
  line-height:1;
}
.focus-redesign .focus-card-route .route-card:last-child:after{display:none}
.focus-redesign .route-icon{
  position:absolute;
  left:26px;
  top:96px;
  z-index:2;
  width:54px;
  height:54px;
  margin:0;
  border:4px solid #fff;
  border-radius:50%;
  background:#111;
  color:#fff;
  box-shadow:0 8px 20px rgba(0,0,0,.12);
}
.focus-redesign .route-icon svg{
  width:25px;
  height:25px;
  stroke-width:1.7;
}
.focus-redesign .focus-card-route .route-number{
  margin:0 0 4px;
  color:#8b8b8b;
  font-size:1.2rem;
  line-height:1;
  font-weight:800;
  letter-spacing:0;
}
.focus-redesign .focus-card-route .route-name{
  color:#111;
  font-size:1.08rem;
  line-height:1.2;
  font-weight:800;
}
.focus-redesign .focus-card-route .route-name:after{
  content:"";
  display:block;
  width:34px;
  height:3px;
  margin-top:16px;
  background:#111;
  border-radius:20px;
}
.focus-redesign .focus-card-route .route-card:first-child,
.focus-redesign .focus-card-route .route-card:last-child{
  background:#fff;
  color:#111;
  border-color:#d7d7d7;
}
.focus-redesign .focus-card-route .route-card:first-child .route-name,
.focus-redesign .focus-card-route .route-card:last-child .route-name{color:#111}
.focus-redesign .focus-card-route .route-card:first-child .route-number,
.focus-redesign .focus-card-route .route-card:last-child .route-number{color:#8b8b8b}
.focus-redesign .focus-card-route .route-card:first-child .route-icon,
.focus-redesign .focus-card-route .route-card:last-child .route-icon{
  background:#111;
  color:#fff;
  border-color:#fff;
}
.focus-redesign .focus-card-route .route-card:nth-child(1):before{background:linear-gradient(135deg,#fafafa,#dedede)}
.focus-redesign .focus-card-route .route-card:nth-child(2):before{background:linear-gradient(135deg,#fff,#e8e8e8)}
.focus-redesign .focus-card-route .route-card:nth-child(3):before{background:radial-gradient(circle at 70% 25%,#fff 0,#fff 22%,#e1e1e1 23%,#f8f8f8 100%)}
.focus-redesign .focus-card-route .route-card:nth-child(4):before{background:linear-gradient(90deg,#ececec 0 18%,#fafafa 18% 38%,#dedede 38% 42%,#fbfbfb 42%)}
.focus-redesign .focus-card-route .route-card:nth-child(5):before{background:linear-gradient(135deg,#f8f8f8,#dfdfdf)}
.focus-redesign .focus-card-route .route-card:nth-child(6):before{background:radial-gradient(circle at 55% 34%,#fff 0,#fff 18%,#dedede 19%,#f8f8f8 100%)}
.focus-redesign .focus-journey-panel>p{
  position:relative;
  margin:0;
  padding:24px 30px 24px 52px;
  border:0;
  border-radius:8px;
  background:#f1f1f1;
  color:#555;
  font-size:1.05rem;
  line-height:1.75;
  box-shadow:inset 4px 0 0 #111;
}





/* Closer reference-match journey design: image cards, round badges, arrows. */
.focus-redesign .focus-journey-panel{
  margin-top:44px;
  padding:46px 42px 44px;
  border:1px solid #e2e2e2;
  background:linear-gradient(180deg,#fff 0%,#f5f5f5 100%);
  box-shadow:0 26px 80px rgba(0,0,0,.06);
}
.focus-redesign .focus-journey-intro{
  grid-template-columns:auto minmax(180px,1fr) auto;
  gap:34px;
  align-items:center;
  padding-bottom:42px;
  border-bottom:0;
}
.focus-redesign .focus-journey-intro:after{
  content:"";
  height:1px;
  background:#cfcfcf;
  grid-column:2;
  grid-row:1;
}
.focus-redesign .focus-journey-intro .eyebrow{
  font-size:0;
  margin:0;
  white-space:nowrap;
}
.focus-redesign .focus-journey-intro .eyebrow:before{
  content:"THE JOURNEY OF A";
  display:block;
  margin-bottom:6px;
  font-family:var(--display);
  font-size:1rem;
  line-height:1.1;
  font-weight:750;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:#777;
}
.focus-redesign .focus-journey-intro .eyebrow:after{
  content:"Pharmaceutical Name";
  display:block;
  font-family:var(--display);
  font-size:clamp(3rem,5vw,4.9rem);
  line-height:.95;
  font-weight:800;
  letter-spacing:0;
  color:#111;
}
.focus-redesign .journey-caption{
  grid-column:3;
  max-width:360px;
  font-family:var(--display);
  font-size:1.22rem;
  line-height:1.35;
  font-style:normal;
  text-align:right;
  color:#6b6b6b;
}
.focus-redesign .journey-caption:before{
  content:"From development to delivery.";
  display:block;
}
.focus-redesign .focus-card-route{
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:30px;
  margin:0 0 38px;
}
.focus-redesign .focus-card-route .route-card{
  position:relative;
  min-height:276px;
  padding:168px 18px 22px;
  border:1px solid #d7d7d7;
  border-radius:8px;
  background:#fff;
  color:#111;
  box-shadow:0 18px 42px rgba(0,0,0,.07);
  display:block;
  overflow:visible;
}
.focus-redesign .focus-card-route .route-card:hover{
  transform:translateY(-4px);
  border-color:#111;
  box-shadow:0 24px 55px rgba(0,0,0,.1);
}
.focus-redesign .focus-card-route .route-card:before{
  content:"";
  position:absolute;
  left:14px;
  right:14px;
  top:14px;
  height:128px;
  border:0;
  border-radius:8px;
  background:#ececec;
  overflow:hidden;
}
.focus-redesign .focus-card-route .route-card:after{
  content:"→";
  position:absolute;
  right:-27px;
  top:124px;
  color:#111;
  font-size:1.9rem;
  line-height:1;
  font-weight:300;
}
.focus-redesign .focus-card-route .route-card:last-child:after{display:none}
.focus-redesign .route-icon{
  position:absolute;
  left:24px;
  top:112px;
  z-index:3;
  width:58px;
  height:58px;
  margin:0;
  border:5px solid #fff;
  border-radius:50%;
  background:#111;
  color:#fff;
  box-shadow:0 10px 24px rgba(0,0,0,.16);
}
.focus-redesign .route-icon svg{
  width:26px;
  height:26px;
  stroke-width:1.7;
}
.focus-redesign .focus-card-route .route-number{
  display:block;
  margin:0 0 8px;
  color:#777;
  font-family:var(--display);
  font-size:1.45rem;
  line-height:1;
  font-weight:800;
  letter-spacing:0;
}
.focus-redesign .focus-card-route .route-name{
  display:block;
  color:#111;
  font-family:var(--display);
  font-size:1.18rem;
  line-height:1.15;
  font-weight:800;
  letter-spacing:0;
}
.focus-redesign .focus-card-route .route-name:after{
  content:"";
  display:block;
  width:34px;
  height:3px;
  margin-top:18px;
  background:#111;
  border-radius:20px;
}
.focus-redesign .focus-card-route .route-card:first-child,
.focus-redesign .focus-card-route .route-card:last-child{
  background:#fff;
  color:#111;
  border-color:#d7d7d7;
}
.focus-redesign .focus-card-route .route-card:first-child .route-name,
.focus-redesign .focus-card-route .route-card:last-child .route-name{color:#111}
.focus-redesign .focus-card-route .route-card:first-child .route-number,
.focus-redesign .focus-card-route .route-card:last-child .route-number{color:#777}
.focus-redesign .focus-card-route .route-card:first-child .route-icon,
.focus-redesign .focus-card-route .route-card:last-child .route-icon{
  background:#111;
  color:#fff;
  border-color:#fff;
}
.focus-redesign .focus-card-route .route-card:nth-child(1):before{background:linear-gradient(135deg,#f7f7f7 0%,#dadada 100%)}
.focus-redesign .focus-card-route .route-card:nth-child(1):before{box-shadow:inset 0 -34px 0 rgba(255,255,255,.28)}
.focus-redesign .focus-card-route .route-card:nth-child(2):before{background:linear-gradient(135deg,#fff 0%,#e8e8e8 52%,#dcdcdc 100%)}
.focus-redesign .focus-card-route .route-card:nth-child(3):before{background:radial-gradient(circle at 70% 28%,#fff 0 18%,#d8d8d8 19% 28%,#f0f0f0 29% 100%)}
.focus-redesign .focus-card-route .route-card:nth-child(4):before{background:linear-gradient(90deg,#e2e2e2 0 20%,#f7f7f7 20% 45%,#d4d4d4 45% 49%,#f2f2f2 49% 100%)}
.focus-redesign .focus-card-route .route-card:nth-child(5):before{background:linear-gradient(135deg,#f9f9f9 0%,#e2e2e2 55%,#d5d5d5 100%)}
.focus-redesign .focus-card-route .route-card:nth-child(6):before{background:radial-gradient(circle at 68% 28%,#fff 0 14%,#d9d9d9 15% 24%,#f0f0f0 25% 100%)}
.focus-redesign .focus-journey-panel>p{
  margin:0;
  padding:28px 34px 28px 58px;
  border:0;
  border-radius:8px;
  background:linear-gradient(90deg,#f0f0f0 0%,#fafafa 100%);
  color:#555;
  font-size:1.08rem;
  line-height:1.65;
  box-shadow:inset 5px 0 0 #111;
}





/* Final reference-matched journey cards with real images. */
.focus-redesign .focus-journey-panel{
  padding:46px 40px 44px;
  background:linear-gradient(180deg,#fff 0%,#f6f6f6 100%);
  border:1px solid #e4e4e4;
}
.focus-redesign .focus-card-route{
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:30px;
  margin:0 0 38px;
}
.focus-redesign .focus-card-route .route-card{
  min-height:300px;
  padding:184px 18px 22px;
  border-radius:8px;
  background:#fff;
  box-shadow:0 18px 45px rgba(0,0,0,.08);
  overflow:visible;
}
.focus-redesign .focus-card-route .route-card:before{display:none}
.route-photo{
  position:absolute;
  left:14px;
  right:14px;
  top:14px;
  height:142px;
  overflow:hidden;
  border-radius:8px;
  background:#f3f3f3;
}
.route-photo img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  filter:grayscale(1);
}
.focus-redesign .route-icon{
  left:24px;
  top:124px;
  width:60px;
  height:60px;
  border:5px solid #fff;
  border-radius:50%;
  background:#111;
  color:#fff;
}
.focus-redesign .focus-card-route .route-number{
  margin-top:4px;
  margin-bottom:9px;
  font-size:1.45rem;
  color:#777;
}
.focus-redesign .focus-card-route .route-name{
  font-size:1.16rem;
  line-height:1.13;
  font-weight:800;
}
.focus-redesign .focus-card-route .route-card:after{
  top:136px;
  right:-27px;
  font-size:1.9rem;
}
.focus-redesign .focus-journey-panel>p{
  padding:30px 34px 30px 58px;
  background:#f1f1f1;
  border-radius:8px;
  box-shadow:inset 5px 0 0 #111;
}





/* Remove extra icon badges and clean card image composition. */
.focus-redesign .route-icon{display:none!important}
.focus-redesign .focus-card-route .route-card{
  min-height:252px;
  padding:164px 18px 22px;
}
.focus-redesign .route-photo{
  left:14px;
  right:14px;
  top:14px;
  height:132px;
  border-radius:8px;
}
.focus-redesign .route-photo img{
  object-fit:cover;
  object-position:center center;
}
.focus-redesign .focus-card-route .route-card:after{
  top:82px;
}
.focus-redesign .focus-card-route .route-number{
  margin-top:0;
}


/* Journey cards: reference-style badges, no crossing lines or arrows. */
.focus-redesign .focus-card-route:before,
.focus-redesign .focus-card-route .route-card:after{
  display:none!important;
  content:none!important;
}
.focus-redesign .route-photo{
  height:136px;
  border-radius:8px;
  border:0;
  overflow:hidden;
}
.focus-redesign .route-photo:before,
.focus-redesign .route-photo:after{
  display:none!important;
  content:none!important;
}
.focus-redesign .route-photo img{
  object-fit:cover;
  object-position:center center;
  filter:grayscale(1);
}
.focus-redesign .route-icon{
  display:grid!important;
  position:absolute;
  left:24px;
  top:122px;
  z-index:4;
  width:50px;
  height:50px;
  margin:0;
  place-items:center;
  border:4px solid #fff;
  border-radius:50%;
  background:#111;
  color:#fff;
  box-shadow:0 10px 22px rgba(0,0,0,.16);
}
.focus-redesign .route-icon svg{
  width:22px;
  height:22px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.7;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.focus-redesign .focus-card-route .route-card{
  padding-top:172px;
}
.focus-redesign .focus-card-route .route-name:after{
  width:34px;
  height:3px;
  border-radius:20px;
  background:#111;
}


/* Remove leftover black oval behind the first and last card numbers. */
.focus-redesign .focus-card-route .route-card:first-child .route-number,
.focus-redesign .focus-card-route .route-card:last-child .route-number{
  position:relative;
  z-index:5;
  display:inline-block;
  width:max-content;
  padding:0 6px 0 0;
  background:#fff!important;
  box-shadow:0 0 0 6px #fff;
}
.focus-redesign .focus-card-route .route-card:first-child .route-number:before,
.focus-redesign .focus-card-route .route-card:first-child .route-number:after,
.focus-redesign .focus-card-route .route-card:last-child .route-number:before,
.focus-redesign .focus-card-route .route-card:last-child .route-number:after{
  display:none!important;
  content:none!important;
}
.focus-redesign .focus-card-route .route-card:first-child,
.focus-redesign .focus-card-route .route-card:last-child{
  background:#fff!important;
}

/* Keep hero and journey headline sizes visually consistent. */
#home.hero h1,
.focus-redesign .focus-journey-intro .eyebrow:after{
  font-size:clamp(3.2rem,5.2vw,4.8rem)!important;
  line-height:1.02!important;
  letter-spacing:0!important;
}
#home.hero h1 span{
  font-size:1em!important;
  line-height:inherit!important;
}


/* Slightly smaller matched headline scale. */
#home.hero h1,
.focus-redesign .focus-journey-intro .eyebrow:after{
  font-size:clamp(2.85rem,4.55vw,4.25rem)!important;
  line-height:1.04!important;
}


/* Journey cards arranged as a professional 3 + 3 grid. */
.focus-redesign .focus-card-route{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:26px!important;
  max-width:980px;
  margin:0 auto 38px!important;
}
.focus-redesign .focus-card-route .route-card{
  min-height:286px;
}
.focus-redesign .focus-card-route .route-card:after{
  display:none!important;
  content:none!important;
}
.focus-redesign .route-photo{
  height:150px;
}
.focus-redesign .route-icon{
  top:134px;
}



/* Clean alignment for 3 + 3 journey cards. */
.focus-redesign .focus-card-route .route-card{
  min-height:292px!important;
  padding:178px 20px 24px!important;
}
.focus-redesign .route-photo{
  left:16px!important;
  right:16px!important;
  top:16px!important;
  height:124px!important;
  border-radius:7px!important;
}
.focus-redesign .route-photo img{
  object-fit:cover!important;
  object-position:center center!important;
}
.focus-redesign .route-icon{
  left:28px!important;
  top:116px!important;
  width:48px!important;
  height:48px!important;
  border-width:4px!important;
}
.focus-redesign .route-icon svg{
  width:20px!important;
  height:20px!important;
}
.focus-redesign .focus-card-route .route-number{
  display:block!important;
  margin:0 0 8px!important;
  padding:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:#777!important;
  font-size:1.35rem!important;
  line-height:1!important;
  font-weight:800!important;
  letter-spacing:0!important;
}
.focus-redesign .focus-card-route .route-name{
  display:block!important;
  min-height:2.4em;
  color:#111!important;
  font-size:1.12rem!important;
  line-height:1.2!important;
  font-weight:800!important;
}
.focus-redesign .focus-card-route .route-name:after{
  margin-top:16px!important;
}


/* Prevent journey card photos from cutting important faces/objects. */
.focus-redesign .focus-card-route .route-card{
  min-height:318px!important;
  padding-top:196px!important;
}
.focus-redesign .route-photo{
  height:152px!important;
  background:#f3f3f3!important;
}
.focus-redesign .route-photo img{
  object-fit:contain!important;
  object-position:center center!important;
  background:#f3f3f3!important;
}
.focus-redesign .route-icon{
  top:142px!important;
}


/* Fill image boxes cleanly without side gaps. */
.focus-redesign .route-photo{
  height:150px!important;
  background:#f3f3f3!important;
}
.focus-redesign .route-photo img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center center!important;
  background:transparent!important;
}
.focus-redesign .focus-card-route .route-card{min-height:316px!important;padding-top:194px!important}
.focus-redesign .route-icon{top:140px!important}


/* Let the journey section blend with the page instead of sitting in a separate bordered box. */
.focus-redesign .focus-journey-panel{
  border:0!important;
  box-shadow:none!important;
  background:transparent!important;
  padding-left:0!important;
  padding-right:0!important;
}

/* Reference-inspired monochrome Trademark / Manage cards. */
#approach.approach-rows .discipline-grid{gap:22px;border:0}
#approach.approach-rows .tm-card,#approach.approach-rows #manage.tm-card{display:grid;grid-template-columns:40% minmax(0,1fr);gap:38px;padding:36px;border:1px solid #e2e2e2;border-radius:20px;background:#fff;color:#151515;box-shadow:0 8px 32px #00000003;scroll-margin-top:110px}
#approach .tm-card-heading{display:flex;flex-direction:column;padding-right:30px;border-right:1px solid #e5e5e5;min-width:0}
#approach .tm-card-label{display:flex;align-items:center;gap:18px;font:600 11px/1.5 var(--body);letter-spacing:.2em}
#approach .tm-letter{flex:none;display:grid;place-items:center;width:64px;height:68px;border:1px solid #dedede;border-radius:10px;background:#f7f7f7;font:400 44px/1 Georgia,serif;letter-spacing:0}
#approach .tm-card-label i{height:1px;background:#999;flex:1;min-width:16px}
#approach .tm-index{color:#777;font-weight:400;letter-spacing:.1em}
#approach .tm-card h3{font:400 clamp(2.6rem,4.2vw,3.7rem)/1.03 Georgia,'Times New Roman',serif;letter-spacing:-.045em;margin:24px 0 20px;color:#111}
#approach .tm-card .tm-summary{font:400 22px/1.45 Georgia,'Times New Roman',serif;color:#595959;margin:0;max-width:360px}
#approach .tm-card .tm-motto{display:flex;align-items:center;gap:18px;margin: auto 0 0;padding-top:65px;font:500 9px/1.8 var(--body);letter-spacing:.18em;text-transform:uppercase;color:#666}
#approach .tm-motto:before{content:'';height:1px;width:32px;flex:none;background:#999}
#approach .tm-card-content{min-width:0}
#approach .tm-description p{font:400 18px/1.45 Georgia,'Times New Roman',serif;color:#555}
#approach .tm-description p+p{margin-top:16px}
#approach .tm-steps{display:flex;justify-content:space-between;gap:16px;margin:24px 0;list-style:none;padding:0}
#approach .tm-steps li{position:relative;display:flex;flex:1;min-width:0;flex-direction:column;align-items:center;gap:7px;text-align:center;color:#171717;font:400 17px/1.3 Georgia,serif}
#approach .tm-steps li:not(:last-child):after{content:'→';position:absolute;right:-16px;top:17px;font:400 23px/1 Georgia,serif;color:#888}
#approach .tm-step-icon{width:52px;height:52px;display:grid;place-items:center;border:1px solid #dcdcdc;border-radius:50%;background:#fff;color:#444}
#approach .tm-step-icon svg{width:26px;height:26px}
#approach .tm-services summary{display:flex;align-items:center;gap:18px;cursor:pointer;list-style:none;width:fit-content;border-radius:7px}
#approach .tm-services summary::-webkit-details-marker{display:none}
#approach .tm-explore{display:inline-flex;align-items:center;gap:22px;padding:13px 20px;border-radius:7px;background:#111;color:white;font:400 14px/1.5 Georgia,serif;letter-spacing:.04em;transition:background .2s}
#approach .tm-services summary:hover .tm-explore{background:#333}
#approach .tm-toggle{font-size:22px;line-height:1;transition:transform .2s}
#approach .tm-services[open] .tm-toggle{transform:rotate(90deg)}
#approach .tm-count{font:400 12px/1.4 var(--body);color:#737373;white-space:nowrap}
#approach .tm-service-list{padding:20px 0 4px}
#approach .tm-service-list h4{margin:0 0 8px;font:600 14px/1.5 var(--body)}
#approach .tm-service-list .content-list li{font-size:14px;border-color:#e2e2e2;color:#555}
#approach .tm-service-list .content-list li:before{color:#555}
#approach .tm-question{padding:18px 22px;background:#f5f5f5;border-radius:9px;margin-top:20px}
#approach .tm-question>span{display:flex;align-items:center;gap:14px;color:#666;font:500 10px/1.5 var(--body);letter-spacing:.17em}
#approach .tm-question>span:after{content:'';width:30px;height:1px;background:#999}
#approach .tm-question p{margin:10px 0 0;color:#222;font:400 20px/1.4 Georgia,serif}



/* Keep the focus panel and TM Approach together without stacked section spacing. */
#industry.focus-redesign{padding-bottom:0}
#approach.approach-rows{padding-top:40px}


/* Portfolio audit: reference layout in the site's monochrome palette. */
#portfolio.portfolio-reference{position:relative;overflow:hidden;background:linear-gradient(120deg,#f7f7f7 0%,#fff 65%);color:#111;padding:48px 0 0}
#portfolio .section-index{color:#555;border:0;padding:0;margin-bottom:42px;justify-content:flex-start;gap:24px}
#portfolio .section-index:after{display:none}
#portfolio .portfolio-layout{display:grid;grid-template-columns:1.15fr 1fr;gap:72px}
#portfolio .portfolio-visual,#portfolio .portfolio-copy{min-width:0}
#portfolio .portfolio-visual{display:flex;flex-direction:column}
#portfolio .eyebrow{color:#555;font-size:12px;letter-spacing:.18em;margin-bottom:20px}
#portfolio h2{font:700 clamp(38px,4.2vw,60px)/1.06 var(--display);letter-spacing:-.055em;color:#111;margin:0}
#portfolio .portfolio-emphasis{color:#737373}
#portfolio .portfolio-highlights{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin:32px 0 28px}
#portfolio .portfolio-highlights>div{position:relative;display:flex;flex-direction:column;gap:12px;font:550 11px/1.65 var(--body);letter-spacing:.13em;color:#333}
#portfolio .portfolio-highlights>div+div{padding-left:24px;border-left:1px solid #ddd}
#portfolio .portfolio-highlight-icon{width:48px;height:48px;border-radius:12px;background:#eaeaea;display:grid;place-items:center;color:#333}
#portfolio .portfolio-highlight-icon svg{width:25px;height:25px}
#portfolio .portfolio-photo{position:relative;margin:8px -10px 0 -90px;min-height:235px;flex:1;border-radius:55% 65% 0 0;overflow:hidden;border-top:1px solid #ddd}
#portfolio .portfolio-photo img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:75% 72%;filter:grayscale(1)}
#portfolio .portfolio-copy{padding:0 0 48px}
#portfolio .portfolio-audit-label{font:650 11px/1.65 var(--body);letter-spacing:.15em;text-transform:uppercase;color:#555;margin:-2px 0 20px}
#portfolio .portfolio-copy p{font-size:16px;line-height:1.65;color:#444;margin:0}
#portfolio .portfolio-copy p+p{margin-top:18px}
#portfolio .content-list{margin:28px 0 30px;display:grid;gap:9px}
#portfolio .content-list li{display:flex;align-items:center;min-height:54px;padding:11px 16px 11px 62px;border:1px solid #e0e0e0;border-radius:12px;color:#333;font-size:15px;line-height:1.45;background:#ffffffbd}
#portfolio .content-list li:before{content:'+';display:grid;place-items:center;left:16px;top:50%;transform:translateY(-50%);height:30px;width:30px;border-radius:50%;background:#eee;color:#333;font:400 22px/1 var(--body)}
#portfolio .button{padding:16px 24px;border-radius:8px;background:#111;color:#fff;border:1px solid #111;font-size:14px;gap:26px;margin:0}
#portfolio .button:hover{background:#333}



/* Match the supplied dark portfolio palette while retaining the new layout. */
#portfolio.portfolio-reference{background:#0d0d0d;color:#fff}
#portfolio .section-index,#portfolio .eyebrow,#portfolio .portfolio-audit-label{color:#bdbdbd}
#portfolio h2{color:#999}
#portfolio .portfolio-emphasis{color:#fff}
#portfolio .portfolio-highlights>div{color:#ddd}
#portfolio .portfolio-highlights>div+div{border-color:#333}
#portfolio .portfolio-highlight-icon{background:#202020;color:#fff}
#portfolio .portfolio-photo{border-color:#333}
#portfolio .portfolio-copy p{color:#cbcbcb}
#portfolio .content-list li{background:#151515;border-color:#333;color:#f2f2f2}
#portfolio .content-list li:before{background:#292929;color:#fff}
#portfolio .button{background:#fff;color:#111;border-color:#fff}
#portfolio .button:hover{background:#e6e6e6;border-color:#e6e6e6}

/* Compact spacing around the brand lifecycle statement. */
#approach.approach-rows{padding-bottom:0}
.signature{padding-block:40px}
.signature + #clearance{padding-top:40px}


/* Connected pharmaceutical name journey, in monochrome. */
.name-journey{position:relative;overflow:hidden;margin:44px 0 36px;padding:0 0 28px;background:radial-gradient(ellipse at 70% 10%,#eee 0%,#fafafa 45%,#fff 80%);border-radius:18px}
.name-journey-hero{position:relative;min-height:380px;display:flex;align-items:center;padding:42px 30px}
.name-journey-copy{position:relative;z-index:1;width:72%}
.name-journey-kicker{display:flex;align-items:center;gap:20px;font:500 12px/1.5 var(--body);letter-spacing:.3em;color:#555;margin-bottom:24px}
#industry .name-journey h3{font:750 clamp(40px,5.1vw,72px)/1.03 var(--display);letter-spacing:-.055em;margin:0 0 22px;color:#111}
#industry .name-journey h3 span{color:#777}
.name-journey-copy p{font:400 17px/1.6 var(--body);color:#666;max-width:620px;margin:0}
.name-journey-copy p+p{margin-top:3px}
.name-journey-photo{position:absolute;right:-6%;top:0;bottom:0;width:48%;overflow:hidden;border-radius:45% 0 42% 55%;opacity:.85}
.name-journey-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#f7f7f7 0%,transparent 40%)}
.name-journey-photo img{width:100%;height:100%;object-fit:cover;object-position:90% center;filter:grayscale(1)}
.name-journey-steps{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:22px;padding:24px 24px 20px;margin:0;list-style:none}
.name-journey-steps li{position:relative;text-align:center;min-width:0}
.name-journey-icon{position:relative;z-index:1;width:82px;height:82px;border-radius:50%;display:grid;place-items:center;background:#e9e9e9;margin:0 auto 18px;color:#222;border:6px solid #fafafa}
.name-journey-icon svg{width:35px;height:35px}
.name-journey-steps li:not(:last-child):before{content:'';position:absolute;top:41px;left:50%;width:calc(100% + 22px);height:1px;background:#bdbdbd}
.name-journey-steps li:not(:last-child):after{content:'›';position:absolute;z-index:2;top:29px;right:-23px;width:24px;height:24px;border:1px solid #ddd;border-radius:50%;background:#fff;font:400 23px/20px Arial;color:#555}
.name-journey-steps h4{font:700 16px/1.25 var(--display);letter-spacing:-.025em;color:#111;margin:0 0 12px;min-height:40px}
.name-journey-steps p{font:400 13px/1.6 var(--body);color:#666;margin:0}
.name-journey-note{max-width:850px;margin:28px auto 0;padding:24px 30px 0;border-top:1px solid #e5e5e5;text-align:center;font:400 13px/1.7 var(--body);color:#777}



/* Refined search and clearance panel. */
#clearance .clearance-panel{padding:36px;gap:30px 40px;grid-template-columns:.9fr 1.1fr;background:#f7f7f7;border:1px solid #e2e2e2;border-radius:20px;box-shadow:0 12px 40px #00000004}
#clearance .clearance-panel>div:first-child{padding:10px 8px 0 0}
#clearance .clearance-panel .eyebrow{display:flex;align-items:center;gap:14px;margin-bottom:24px;color:#555;font-size:11px;letter-spacing:.17em}
#clearance .clearance-panel .eyebrow:before{content:none;display:none}
#clearance .clearance-panel h2{font:400 clamp(30px,3.2vw,44px)/1.14 var(--serif);letter-spacing:-.04em;color:#111;margin:0 0 22px}
#clearance .clearance-panel>div:first-child p{font-size:15px;line-height:1.8;color:#666;max-width:390px}
#clearance .clearance-panel>div:first-child p:last-child{margin-top:24px;padding-top:20px;border-top:1px solid #ddd;color:#222;font-weight:500}
#clearance .clearance-panel .content-list{display:grid;gap:9px}
#clearance .clearance-panel .content-list li{display:flex;align-items:center;min-height:58px;padding:15px 18px 15px 66px;border:1px solid #e5e5e5;border-radius:10px;background:#fff;font-size:14px;line-height:1.55;color:#333}
#clearance .clearance-panel .content-list li:before{position:absolute;left:16px;top:50%;transform:translateY(-50%);width:32px;height:32px;display:grid;place-items:center;background:#f1f1f1;border-radius:50%;font:500 11px/1 var(--body);color:#555}
#clearance .clearance-bottom{padding:26px 28px;border:0;border-radius:12px;background:#151515;gap:32px;align-items:center}
#clearance .clearance-bottom h2{font:400 25px/1.25 var(--serif);letter-spacing:-.025em;margin:0;color:#fff}
#clearance .clearance-bottom p{font-size:14px;line-height:1.7;color:#ccc;margin:0}

/* Readable card captions without decorative rules. */
#approach .tm-motto:before,#approach .tm-question>span:after{content:none;display:none}
#approach .tm-card .tm-motto{font-size:12px;line-height:1.7;letter-spacing:.1em;color:#555;gap:0}
#approach .tm-question>span{font-size:12px;line-height:1.6;letter-spacing:.12em;color:#555;gap:0}
/* Balanced portfolio image and readable audit questions. */
#portfolio.portfolio-reference{padding-bottom:44px}
#portfolio .portfolio-layout{gap:64px;align-items:start}
#portfolio .portfolio-copy{padding-bottom:0}
#portfolio .portfolio-photo{margin:4px 0 0;min-height:0;flex:none;aspect-ratio:1.85;border:1px solid #333;border-radius:16px;background:#e8e8e8}
#portfolio .portfolio-photo img{object-position:85% 70%}
#portfolio .content-list{gap:10px;margin:26px 0 26px}
#portfolio .content-list li{min-height:62px;padding:16px 20px 16px 64px;font-size:16px;font-weight:500;line-height:1.5;border-color:#373737;background:#181818;border-radius:10px}
#portfolio .content-list li:before{left:18px;width:28px;height:28px;font-size:19px;background:#303030;color:#eee}
#portfolio .portfolio-highlights{margin-bottom:24px}


/* Clean, text-only portfolio audit questions. */
#portfolio .content-list li:before{content:none;display:none}
#portfolio .content-list li{padding:17px 22px;min-height:60px;font-weight:500;border-color:#303030;border-radius:8px;background:#161616}

/* Portfolio reference: generous type, a central divider and balanced columns. */
#portfolio.portfolio-reference{padding:52px 0 60px;background:radial-gradient(ellipse at 12% 5%,#1b1c1d 0%,#101112 36%,#0b0c0d 78%)}
#portfolio>.wrap{max-width:1440px;padding-inline:64px}
#portfolio .section-index{margin-bottom:46px;font-size:12px;letter-spacing:.22em;gap:24px;color:#b9bdc3}
#portfolio .portfolio-layout{grid-template-columns:1.08fr 1fr;gap:38px;align-items:stretch}
#portfolio .portfolio-visual{padding-right:0}
#portfolio .eyebrow{font-size:12px;letter-spacing:.22em;color:#d4d6da;margin-bottom:24px}
#portfolio h2{font-size:clamp(40px,4.5vw,64px);line-height:1.06;font-weight:750;letter-spacing:-.055em;color:#e0e1e4}
#portfolio .portfolio-emphasis{color:#fff}
#portfolio .portfolio-highlights{margin:36px 0 26px;gap:26px}
#portfolio .portfolio-highlights>div{font-size:12px;line-height:1.8;letter-spacing:.2em;gap:12px;color:#e5e6e8}
#portfolio .portfolio-highlights>div+div{padding-left:34px;border-color:#343638}
#portfolio .portfolio-highlight-icon{width:60px;height:60px;border:1px solid #303234;border-radius:17px;background:linear-gradient(145deg,#1d1f20,#111213);color:#f4f4f4}
#portfolio .portfolio-highlight-icon svg{width:30px;height:30px}
#portfolio .portfolio-photo{margin:0;aspect-ratio:1.62;border-radius:18px;border:1px solid #454545;flex:none;min-height:0}
#portfolio .portfolio-photo img{object-fit:cover;object-position:85% 65%}
#portfolio .portfolio-copy{display:flex;flex-direction:column;align-items:stretch;border-left:1px solid #292b2d;padding:0 0 0 38px}
#portfolio .portfolio-audit-label{font-size:11px;letter-spacing:.16em;line-height:1.8;color:#d4d6da;margin:0 0 28px}
#portfolio .portfolio-copy p{font-size:17px;line-height:1.65;color:#d0d2d6}
#portfolio .portfolio-copy p+p{margin-top:18px}
#portfolio .content-list{margin:32px 0 36px;gap:12px}
#portfolio .content-list li{padding:20px 24px;min-height:70px;background:linear-gradient(130deg,#17191b,#111214);border:1px solid #373a3d;border-radius:11px;font-size:19px;line-height:1.4;font-weight:450;color:#f1f2f4;box-shadow:inset 0 1px 0 #ffffff03}
#portfolio .content-list li:before{display:none;content:none}
#portfolio .button{align-self:flex-start;margin-top:auto;min-height:68px;padding:18px 28px;border-radius:10px;font-size:17px;font-weight:500;gap:34px;background:linear-gradient(#fff,#f0f0f0);box-shadow:0 8px 24px #0002;color:#111}


/* Consistent CTA shape with clean, shadow-free hover states. */
.button,.nav-cta,#approach .tm-explore{border-radius:10px}
.button,.button:hover,.button:focus-visible,.nav-cta,.nav-cta:hover,.nav-cta:focus-visible,#approach .tm-explore,#approach .tm-services summary:hover .tm-explore{box-shadow:none!important}

/* Unified paragraph scale */
body p:not(.ownership-heading > p){font-size:17px!important}


/* Ecosystem reference redesign */
.ecosystem-reference{position:relative;overflow:hidden;padding:88px 0 76px;background:linear-gradient(135deg,#fff 0%,#f7f7f7 58%,#ededed 100%)}
.ecosystem-reference:before{content:"";position:absolute;width:610px;height:610px;border:58px solid #11111108;border-radius:50%;right:-255px;top:-355px;pointer-events:none}
.ecosystem-reference .wrap{position:relative;z-index:1}
.ecosystem-reference .section-index{max-width:350px;border-top:0;padding-top:0;margin-bottom:38px;color:#555}
.ecosystem-reference .ecosystem-heading{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(260px,.65fr) 220px;gap:38px;align-items:end;margin-bottom:48px}
.ecosystem-reference .ecosystem-heading h2{font-family:var(--serif);font-size:clamp(3.4rem,5vw,5.3rem);line-height:1.02;letter-spacing:-.055em}
.ecosystem-reference .ecosystem-heading h2 span{display:block;font-style:italic;font-weight:400;color:#555}
.ecosystem-reference .ecosystem-intro{border-left:1px solid #bbb;padding:8px 0 8px 34px;color:#555;line-height:1.6;margin:0}
.ecosystem-reference .ecosystem-monogram{justify-self:end;text-align:center;font-family:var(--serif);font-size:5.4rem;line-height:.8;color:#c5c5c5;letter-spacing:-.08em}
.ecosystem-reference .ecosystem-monogram>span{font:400 2.2rem/1 var(--body);vertical-align:top;color:#111}
.ecosystem-reference .ecosystem-monogram small{display:block;margin-top:25px;font:600 9px/1.4 var(--body);letter-spacing:.23em;color:#777;white-space:nowrap}
.ecosystem-reference .ecosystem-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px 16px}
.ecosystem-reference .ecosystem-grid li{min-height:86px;display:flex;align-items:center;gap:22px;padding:14px 22px;background:#ffffffd9;border:1px solid #d5d5d5;border-radius:11px;font-size:1.05rem;color:#222;transition:border-color .2s,background .2s}
.ecosystem-reference .ecosystem-grid li:after{content:none}
.ecosystem-reference .ecosystem-grid li:hover{border-color:#888;background:#fff}
.ecosystem-reference .ecosystem-icon{width:56px;height:56px;flex:0 0 56px;display:grid;place-items:center;border-radius:50%;background:#ececec;color:#222}
.ecosystem-reference .ecosystem-icon svg{width:28px;height:28px}
.ecosystem-reference .ecosystem-name{padding-left:22px;border-left:1px solid #c4c4c4;line-height:1.4}
.ecosystem-reference .ecosystem-signoff{grid-column:1/-1;margin-top:23px;padding-top:20px;border-top:1px solid #ccc;font-size:.72rem;font-weight:600;letter-spacing:.17em;text-transform:uppercase;color:#666}


/* Professional motion system */
.motion-ready .motion-reveal{opacity:0;transform:translate3d(0,26px,0);transition:opacity .72s cubic-bezier(.22,1,.36,1),transform .72s cubic-bezier(.22,1,.36,1);transition-delay:var(--motion-delay,0ms);will-change:opacity,transform}
.motion-ready .motion-reveal[data-motion="left"]{transform:translate3d(-30px,0,0)}
.motion-ready .motion-reveal[data-motion="right"]{transform:translate3d(30px,0,0)}
.motion-ready .motion-reveal.is-visible{opacity:1;transform:translate3d(0,0,0)}
.motion-ready .motion-image{overflow:hidden}
.motion-ready .motion-image img{transform:scale(1.045);transition:transform 1.15s cubic-bezier(.22,1,.36,1)}
.motion-ready .motion-image.is-visible img{transform:scale(1)}
header{transition:background-color .3s ease,border-color .3s ease}
header.is-scrolled{background:#0b0b0bf7;border-bottom-color:#ffffff24}
.nav-wrap nav a{position:relative}
.nav-wrap nav a:after{content:"";position:absolute;left:0;right:100%;bottom:-7px;height:1px;background:currentColor;transition:right .3s cubic-bezier(.22,1,.36,1)}
.nav-wrap nav a:hover:after,.nav-wrap nav a.active:after{right:0}
.button>span,.nav-cta>span,#approach .tm-toggle{transition:transform .25s cubic-bezier(.22,1,.36,1)}
.button:hover>span,.nav-cta:hover>span{transform:translate3d(4px,-4px,0)}
.button,.nav-cta,#approach .tm-explore{box-shadow:none!important}
.gallery-story,.tm-card,.ecosystem-reference .ecosystem-grid li,.ownership-diagram{transition:transform .3s cubic-bezier(.22,1,.36,1),border-color .3s ease,background-color .3s ease}
.gallery-story:hover,.tm-card:hover,.ecosystem-reference .ecosystem-grid li:hover,.ownership-diagram:hover{transform:translateY(-4px)}
.gallery-story:hover .gallery-image img,.portfolio-photo:hover img,.name-journey-photo:hover img{transform:scale(1.025)}
.ecosystem-reference .ecosystem-icon,.name-journey-icon,.portfolio-highlight-icon{transition:transform .3s cubic-bezier(.22,1,.36,1),background-color .3s ease}
.ecosystem-reference .ecosystem-grid li:hover .ecosystem-icon,.name-journey-steps li:hover .name-journey-icon,.portfolio-highlights>div:hover .portfolio-highlight-icon{transform:translateY(-3px) rotate(-2deg);background:#e3e3e3}
.content-list li{transition:padding-left .25s ease,color .25s ease}
.questions .content-list li:hover{padding-left:36px;color:#111}
dialog[open]{animation:dialog-enter .3s cubic-bezier(.22,1,.36,1)}
dialog[open]::backdrop{animation:backdrop-enter .25s ease}
@keyframes dialog-enter{from{opacity:0;transform:translateY(18px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes backdrop-enter{from{opacity:0}to{opacity:1}}

/* Motion hover priority */
.motion-ready .gallery-story.motion-reveal.is-visible:hover,.motion-ready .tm-card.motion-reveal.is-visible:hover,.motion-ready .ecosystem-reference .ecosystem-grid li.motion-reveal.is-visible:hover,.motion-ready .ownership-diagram.motion-reveal.is-visible:hover{transform:translateY(-4px)}

/* Editorial reveal for the alternating brand decision stories. */
.motion-ready #brand-gallery.gallery-motion-ready .gallery-story.motion-reveal{
  opacity:1;
  transform:none;
  transition:box-shadow .45s ease,background-color .45s ease;
}
.motion-ready #brand-gallery.gallery-motion-ready .gallery-story.motion-reveal:hover{
  transform:none;
  box-shadow:0 20px 55px rgba(0,0,0,.18);
  z-index:2;
}
#brand-gallery.gallery-motion-ready .gallery-story{
  --gallery-x:0px;
  --gallery-y:0px;
  position:relative;
  isolation:isolate;
  overflow:hidden;
}
#brand-gallery.gallery-motion-ready .gallery-story .gallery-image{
  clip-path:inset(0 100% 0 0);
  transition:clip-path 1.05s cubic-bezier(.22,1,.36,1);
  transition-delay:var(--story-delay,0ms);
}
#brand-gallery.gallery-motion-ready .gallery-story:nth-child(even) .gallery-image{
  clip-path:inset(0 0 0 100%);
}
#brand-gallery.gallery-motion-ready .gallery-story.story-visible .gallery-image{
  clip-path:inset(0);
}
.motion-ready #brand-gallery.gallery-motion-ready .gallery-story .gallery-image img{
  transform:translate3d(var(--gallery-x),var(--gallery-y),0) scale(1.075);
  transition:transform 1.25s cubic-bezier(.22,1,.36,1),filter .45s ease;
  transition-delay:var(--story-delay,0ms);
  will-change:transform;
}
.motion-ready #brand-gallery.gallery-motion-ready .gallery-story.story-visible .gallery-image img{
  transform:translate3d(var(--gallery-x),var(--gallery-y),0) scale(1);
}
.motion-ready #brand-gallery.gallery-motion-ready .gallery-story.story-visible:hover .gallery-image img{
  transform:translate3d(var(--gallery-x),var(--gallery-y),0) scale(1.025);
}
#brand-gallery.gallery-motion-ready .gallery-story figcaption>*{
  opacity:0;
  transform:translate3d(0,18px,0);
  transition:opacity .68s cubic-bezier(.22,1,.36,1),transform .68s cubic-bezier(.22,1,.36,1);
}
#brand-gallery.gallery-motion-ready .gallery-story.story-visible figcaption>*{
  opacity:1;
  transform:translate3d(0,0,0);
}
#brand-gallery.gallery-motion-ready .gallery-story.story-visible figcaption>*:nth-child(1){transition-delay:calc(var(--story-delay,0ms) + 180ms)}
#brand-gallery.gallery-motion-ready .gallery-story.story-visible figcaption>*:nth-child(2){transition-delay:calc(var(--story-delay,0ms) + 250ms)}
#brand-gallery.gallery-motion-ready .gallery-story.story-visible figcaption>*:nth-child(3){transition-delay:calc(var(--story-delay,0ms) + 320ms)}
#brand-gallery.gallery-motion-ready .gallery-story.story-visible figcaption>*:nth-child(4){transition-delay:calc(var(--story-delay,0ms) + 390ms)}
#brand-gallery.gallery-motion-ready .gallery-slide-number{
  position:relative;
  width:max-content;
}

/* Coordinated reveal and interaction for the search and clearance panel. */
.motion-ready #clearance .clearance-panel.clearance-motion-ready>.motion-reveal{
  opacity:1;
  transform:none;
  transition:none;
}
#clearance .clearance-panel.clearance-motion-ready{
  position:relative;
  overflow:hidden;
}
#clearance .clearance-panel.clearance-motion-ready:after{
  content:"";
  position:absolute;
  inset:0 auto auto 0;
  width:100%;
  height:2px;
  background:#171717;
  transform:scaleX(0);
  transform-origin:left center;
  transition:transform .95s cubic-bezier(.22,1,.36,1);
  pointer-events:none;
}
#clearance .clearance-panel.clearance-motion-ready.clearance-visible:after{transform:scaleX(1)}
#clearance .clearance-panel.clearance-motion-ready>div:first-child>*{
  opacity:0;
  transform:translate3d(-20px,0,0);
  transition:opacity .7s cubic-bezier(.22,1,.36,1),transform .7s cubic-bezier(.22,1,.36,1);
}
#clearance .clearance-panel.clearance-motion-ready.clearance-visible>div:first-child>*{
  opacity:1;
  transform:translate3d(0,0,0);
}
#clearance .clearance-panel.clearance-motion-ready.clearance-visible>div:first-child>*:nth-child(1){transition-delay:80ms}
#clearance .clearance-panel.clearance-motion-ready.clearance-visible>div:first-child>*:nth-child(2){transition-delay:145ms}
#clearance .clearance-panel.clearance-motion-ready.clearance-visible>div:first-child>*:nth-child(3){transition-delay:210ms}
#clearance .clearance-panel.clearance-motion-ready.clearance-visible>div:first-child>*:nth-child(4){transition-delay:275ms}
#clearance .clearance-panel.clearance-motion-ready .questions .content-list li{
  opacity:0;
  transform:translate3d(24px,0,0);
  transition:opacity .62s cubic-bezier(.22,1,.36,1),transform .62s cubic-bezier(.22,1,.36,1),border-color .28s ease,box-shadow .28s ease,background-color .28s ease;
}
#clearance .clearance-panel.clearance-motion-ready.clearance-visible .questions .content-list li{
  opacity:1;
  transform:translate3d(0,0,0);
  transition-delay:var(--question-delay,260ms),var(--question-delay,260ms),0ms,0ms,0ms;
}
#clearance .clearance-panel.clearance-motion-ready .questions .content-list li:before{
  transition:transform .32s cubic-bezier(.22,1,.36,1),background-color .32s ease,color .32s ease;
}
#clearance .clearance-panel.clearance-motion-ready .questions .content-list li:hover{
  transform:translate3d(5px,0,0);
  border-color:#c9c9c9;
  background:#fdfdfd;
  box-shadow:0 9px 24px rgba(0,0,0,.055);
  transition-delay:0ms;
}
#clearance .clearance-panel.clearance-motion-ready .questions .content-list li:hover:before{
  transform:translateY(-50%) scale(1.08);
  background:#171717;
  color:#fff;
}
#clearance .clearance-panel.clearance-motion-ready .clearance-bottom{
  opacity:0;
  clip-path:inset(100% 0 0);
  transform:translate3d(0,18px,0);
  transition:opacity .72s cubic-bezier(.22,1,.36,1),transform .72s cubic-bezier(.22,1,.36,1),clip-path .82s cubic-bezier(.22,1,.36,1);
}
#clearance .clearance-panel.clearance-motion-ready.clearance-visible .clearance-bottom{
  opacity:1;
  clip-path:inset(0);
  transform:translate3d(0,0,0);
  transition-delay:830ms;
}
#clearance .clearance-panel.clearance-motion-ready .clearance-bottom h2,
#clearance .clearance-panel.clearance-motion-ready .clearance-bottom p{
  transition:transform .35s cubic-bezier(.22,1,.36,1);
}
#clearance .clearance-panel.clearance-motion-ready .clearance-bottom:hover h2{transform:translate3d(4px,0,0)}
#clearance .clearance-panel.clearance-motion-ready .clearance-bottom:hover p{transform:translate3d(-4px,0,0)}

/* One typography system for every actionable CTA. */
.button,
.nav-cta,
#approach .tm-explore{
  font-family:var(--body)!important;
  font-size:14px!important;
  font-weight:500!important;
  font-style:normal;
  line-height:1.5;
  letter-spacing:0;
}

/* Consistent site-wide typeface; retain the registered brand wordmark artwork. */
body *:not(.wordmark):not(.wordmark *):not(.footer-watermark){
  font-family:var(--body)!important;
}

/* Uniform footer typography for all informational and navigation text. */
footer .footer-columns h3,
footer .footer-philosophy>a,
footer .footer-discipline>a,
footer .footer-explore nav a,
footer .footer-about>p,
footer .footer-sector,
footer .brand-small,
footer .footer-bottom,
footer .footer-bottom>a,
footer .footer-bottom>span{
  font-family:var(--body)!important;
  font-size:14px!important;
  line-height:1.6;
}

footer .footer-philosophy h3,
footer .footer-philosophy>a{
  font-size:18px!important;
}

/* Tighter transition into the closing contact section. */
.why{padding-bottom:clamp(44px,5vw,64px)!important}
.contact-section{padding-top:clamp(48px,5vw,64px)!important}
/* Pharmaceutical navy + medical teal color system. */
:root{
  --ink:#102a43;
  --dark:#071b2b;
  --accent:#087e8b;
  --muted:#5d6f7d;
  --line:#d5e3e1;
  --pale:#f0f7f5;
  --inverse:#ffffff;
  --teal-soft:#dff3f0;
  --teal-bright:#24a69a;
  --warm-white:#fbfdfc;
}
body{background:var(--warm-white);color:var(--ink)}
button:focus-visible,a:focus-visible,summary:focus-visible{outline-color:#2aa89d}
header{background:#071b2b;color:#fff;border-bottom-color:#ffffff1f}
header.is-scrolled{background:#071b2bf5;border-bottom-color:#78c9c22b}
.wordmark>span{color:#83c9c3}
.nav-wrap nav a{color:#b9cbc9}
.nav-wrap nav a:hover,.nav-wrap nav a.active{color:#fff}
.nav-wrap nav a:after{background:#41b9ae}
.nav-cta{background:#0d8b83;color:#fff;border-color:#0d8b83}
.nav-cta:hover{background:#0a716c}
#mobile-nav{background:#071b2b;border-top-color:#ffffff1f}
#home.hero{background:radial-gradient(circle at 74% 48%,#e2f3f0 0,#f6fbfa 34%,#fbfdfc 69%)}
.hero-grid{background-image:linear-gradient(#087e8b12 1px,transparent 1px),linear-gradient(90deg,#087e8b12 1px,transparent 1px)}
.hero h1>span,.tiny-cross{color:var(--accent)}
.hero-base{border-top-color:#cfe0dd;color:#60737f}
.button{background:#0b3948;color:#fff;border-color:#0b3948}
.button:hover{background:#087e8b;border-color:#087e8b}
.button.secondary{background:#fff;color:#0b3948;border-color:#bed5d1}
.button.secondary:hover{background:#e7f4f2}
.intro-strip{background:#0b3948}
.intro-strip p{color:#edf8f6}
.intro-strip p+p{color:#b8d1ce}
.intro-symbol{border-right-color:#ffffff2b}
.brand-gallery{background:#092535;color:#fff}
.gallery-heading h2 em{color:#76c1ba}
.gallery-heading>p{color:#bfd1cf}
.gallery-story{background:#fff;color:var(--ink)}
.gallery-story .eyebrow{color:#47716f}
.gallery-story p{color:#5d6f7d}
.gallery-slide-number{color:#78aaa5}
.motion-ready #brand-gallery.gallery-motion-ready .gallery-story.motion-reveal:hover{box-shadow:0 20px 60px #03131e80}
.section-index{color:#52716f;border-top-color:#d5e3e1}
.section-index:after{background:#d5e3e1}
.eyebrow{color:#326a67}
.focus-intent,.focus-redesign .focus-heading h2 em{color:#087e8b}
.focus-context{border-left-color:#b9d8d4}
.name-journey{border-color:#cfe0dd;background:#f7fbfa}
.name-journey-kicker{color:#3f6d69}
.name-journey-icon{background:#e1f2ef;color:#087e8b;border-color:#b9d8d4}
.name-journey-steps li:before{background:#a8cfca}
.name-journey-note{border-top-color:#cee0dd;color:#58706f}
.focus-insight blockquote{background:#0b3948;color:#fff}
.focus-resolution{background:#e6f3f1}
.approach-section{background:#edf6f4}
#approach .tm-card{background:#fff;border-color:#cfe0dd}
#approach .tm-letter{background:#087e8b;color:#fff}
#approach .tm-card-label i{background:#c8dedb}
#approach .tm-step-icon{background:#e3f3f0;color:#087e8b}
#approach .tm-explore{background:#0b3948;color:#fff}
#approach .tm-services summary:hover .tm-explore{background:#087e8b}
#approach .tm-question{background:#edf6f4;border-color:#c9dfdc}
.signature{background:#0b3948;color:#fff;border-bottom:0}
.signature .eyebrow{color:#8fd0ca}
.signature h2 span{color:#65c6bd}
.signature-rule{background:#ffffff38}
.signature-foot{color:#c1d7d4}
#clearance .clearance-panel{background:#f0f7f5;border-color:#d0e1de}
#clearance .clearance-panel .eyebrow{color:#326a67}
#clearance .clearance-panel .content-list li{border-color:#d2e2df;background:#fff}
#clearance .clearance-panel .content-list li:before{background:#dff1ee;color:#087e8b}
#clearance .clearance-bottom{background:#0b3948}
#clearance .clearance-panel.clearance-motion-ready:after{background:#24a69a}
#clearance .clearance-panel.clearance-motion-ready .questions .content-list li:hover{border-color:#82bdb7;background:#fafffe}
#clearance .clearance-panel.clearance-motion-ready .questions .content-list li:hover:before{background:#087e8b;color:#fff}
.portfolio-section,#portfolio.portfolio-reference{background:#071b2b}
.portfolio-section .section-index{color:#8fb8b4;border-color:#ffffff24}
#portfolio .section-index:after{background:#31505b}
#portfolio .eyebrow{color:#7bc6bf}
#portfolio .portfolio-emphasis{color:#63c4bb}
#portfolio .portfolio-copy{border-left-color:#294451}
#portfolio .portfolio-audit-label{color:#77bdb7}
#portfolio .content-list li{background:#0c2a3b;border-color:#31505b}
#portfolio .portfolio-highlight-icon{background:#103647;color:#70cbc2}
#portfolio .button{background:#fff;color:#0b3948;border-color:#fff}
.ownership-diagram{background:#edf6f4;border-color:#d1e2df}
.ownership-diagram>div{border-color:#d1e2df}
.ownership-diagram .owner-question{background:#087e8b;border-color:#087e8b}
.asset-statement{background:#edf6f4}
.asset-statement:before{color:#6ab6af}
.ecosystem-section,.ecosystem-reference{background:#eef7f5}
.ecosystem-reference:before{border-color:#cfe6e2}
.ecosystem-reference .ecosystem-grid li{border-color:#c7dcda}
.ecosystem-reference .ecosystem-icon{background:#dcefeb;color:#087e8b}
.ecosystem-reference .ecosystem-monogram{color:#8bbeb9}
.ecosystem-reference .ecosystem-monogram>span{color:#087e8b}
.contact-section{background:#e2f2ef;border-top-color:#c6ded9}
.contact-section .eyebrow{color:#326a67}
.contact-section h2>span{color:#087e8b}
.contact-section p{color:#536b78}
footer{background:#061925;color:#fff}
.footer-columns>div{border-left-color:#ffffff1f}
.footer-about>p:last-child,.footer-sector,.footer-discipline>a,.footer-explore nav a,.footer-bottom{color:#a9c0be}
.footer-philosophy em{color:#68c4bb}
.footer-bottom{border-top-color:#ffffff24}
.footer-columns a:hover,.footer-explore nav a.active{color:#fff}
.footer-watermark{color:#4aaea40d}
/* Muted teal + beige final palette. */
:root{
  --ink:#29443f;
  --dark:#203b37;
  --accent:#688f88;
  --muted:#6f756e;
  --line:#d9d0c1;
  --pale:#efe8dc;
  --inverse:#fbf8f1;
  --teal-soft:#dde8e3;
  --teal-bright:#86aaa3;
  --warm-white:#f8f3e9;
}
body{background:var(--warm-white);color:var(--ink)}
button:focus-visible,a:focus-visible,summary:focus-visible{outline-color:#789f98}
header{background:#203b37;color:#fbf8f1;border-bottom-color:#f4ead523}
header.is-scrolled{background:#203b37f5;border-bottom-color:#d9cdb530}
.wordmark>span{color:#b8cec8}
.nav-wrap nav a{color:#c5d2ce}
.nav-wrap nav a:hover,.nav-wrap nav a.active{color:#fbf8f1}
.nav-wrap nav a:after{background:#a9c4bd}
.nav-cta{background:#e9deca;color:#29443f;border-color:#e9deca}
.nav-cta:hover{background:#d9cbb4;color:#203b37}
#mobile-nav{background:#203b37;border-top-color:#ffffff1f}
#home.hero{background:radial-gradient(circle at 74% 48%,#dce8e3 0,#f0eadf 38%,#f8f3e9 72%)}
.hero-grid{background-image:linear-gradient(#688f8815 1px,transparent 1px),linear-gradient(90deg,#688f8815 1px,transparent 1px)}
.hero h1>span,.tiny-cross{color:#688f88}
.hero-base{border-top-color:#d9d0c1;color:#68746d}
.button{background:#315650;color:#fbf8f1;border-color:#315650}
.button:hover{background:#688f88;border-color:#688f88}
.button.secondary{background:#f8f3e9;color:#315650;border-color:#cfc4b1}
.button.secondary:hover{background:#e9dfcf}
.intro-strip{background:#315650}
.intro-strip p{color:#f8f3e9}
.intro-strip p+p{color:#c9d6d1}
.intro-symbol{border-right-color:#f4ead52e}
.brand-gallery{background:#263f3b;color:#fbf8f1}
.gallery-heading h2 em{color:#adc7c0}
.gallery-heading>p{color:#c7d5d1}
.gallery-story{background:#fbf8f1;color:#29443f}
.gallery-story .eyebrow{color:#607f79}
.gallery-story p{color:#6f756e}
.gallery-slide-number{color:#94ada7}
.motion-ready #brand-gallery.gallery-motion-ready .gallery-story.motion-reveal:hover{box-shadow:0 20px 60px #16252280}
.section-index{color:#607f79;border-top-color:#d9d0c1}
.section-index:after{background:#d9d0c1}
.eyebrow{color:#567b74}
.focus-intent,.focus-redesign .focus-heading h2 em{color:#688f88}
.focus-context{border-left-color:#c8d4ce}
.name-journey{border-color:#d9d0c1;background:#f4eee4}
.name-journey-kicker{color:#567b74}
.name-journey-icon{background:#dde8e3;color:#567b74;border-color:#c5d6d1}
.name-journey-steps li:before{background:#b8cbc5}
.name-journey-note{border-top-color:#d9d0c1;color:#68746d}
.focus-insight blockquote{background:#315650;color:#fbf8f1}
.focus-resolution{background:#e8dfd1}
.approach-section{background:#ebe4d8}
#approach .tm-card{background:#fbf8f1;border-color:#d7cebf}
#approach .tm-letter{background:#688f88;color:#fbf8f1}
#approach .tm-card-label i{background:#cabfad}
#approach .tm-step-icon{background:#dde8e3;color:#567b74}
#approach .tm-explore{background:#315650;color:#fbf8f1}
#approach .tm-services summary:hover .tm-explore{background:#688f88}
#approach .tm-question{background:#eee6d9;border-color:#d6cbbb}
.signature{background:#315650;color:#fbf8f1;border-bottom:0}
.signature .eyebrow{color:#b9d0ca}
.signature h2 span{color:#adcac3}
.signature-rule{background:#f4ead53d}
.signature-foot{color:#d5dfdc}
#clearance .clearance-panel{background:#eee7dc;border-color:#d8cebe}
#clearance .clearance-panel .eyebrow{color:#567b74}
#clearance .clearance-panel .content-list li{border-color:#d9d0c1;background:#fbf8f1}
#clearance .clearance-panel .content-list li:before{background:#dde8e3;color:#567b74}
#clearance .clearance-bottom{background:#315650}
#clearance .clearance-panel.clearance-motion-ready:after{background:#86aaa3}
#clearance .clearance-panel.clearance-motion-ready .questions .content-list li:hover{border-color:#9db8b1;background:#fffdf8}
#clearance .clearance-panel.clearance-motion-ready .questions .content-list li:hover:before{background:#688f88;color:#fff}
.portfolio-section,#portfolio.portfolio-reference{background:#203b37}
.portfolio-section .section-index{color:#abc5bf;border-color:#f4ead526}
#portfolio .section-index:after{background:#4f6c67}
#portfolio .eyebrow{color:#adcac3}
#portfolio .portfolio-emphasis{color:#b9d0ca}
#portfolio .portfolio-copy{border-left-color:#4b6661}
#portfolio .portfolio-audit-label{color:#adcac3}
#portfolio .content-list li{background:#294742;border-color:#526e68}
#portfolio .portfolio-highlight-icon{background:#2f514b;color:#bdd4ce}
#portfolio .button{background:#e9deca;color:#29443f;border-color:#e9deca}
.ownership-diagram{background:#eee7dc;border-color:#d9d0c1}
.ownership-diagram>div{border-color:#d9d0c1;background:#fbf8f1}
.ownership-diagram .owner-question{background:#688f88;border-color:#688f88;color:#fff}
.asset-statement{background:#eee7dc}
.asset-statement:before{color:#86aaa3}
.ecosystem-section,.ecosystem-reference{background:#e9e2d6}
.ecosystem-reference:before{border-color:#d9d0c1}
.ecosystem-reference .ecosystem-grid li{border-color:#d2c8b8}
.ecosystem-reference .ecosystem-icon{background:#dbe6e1;color:#567b74}
.ecosystem-reference .ecosystem-monogram{color:#91aaa4}
.ecosystem-reference .ecosystem-monogram>span{color:#688f88}
.contact-section{background:#e8dfd1;border-top-color:#d1c6b5}
.contact-section .eyebrow{color:#567b74}
.contact-section h2>span{color:#688f88}
.contact-section p{color:#66736c}
footer{background:#1c3430;color:#fbf8f1}
.footer-columns>div{border-left-color:#f4ead523}
.footer-about>p:last-child,.footer-sector,.footer-discipline>a,.footer-explore nav a,.footer-bottom{color:#bdcbc7}
.footer-philosophy em{color:#adcac3}
.footer-bottom{border-top-color:#f4ead529}
.footer-columns a:hover,.footer-explore nav a.active{color:#fffdf8}
.footer-watermark{color:#dce8e30d}

/* Palette-matched duotone treatment for the brand decision photography. */
#brand-gallery .gallery-story .reference-photo{background:#dce5df}
#brand-gallery .gallery-story:nth-child(even) .reference-photo{background:#e6ded0}
#brand-gallery .gallery-story .reference-photo img{
  filter:grayscale(1) contrast(.94) brightness(1.04);
  mix-blend-mode:multiply;
  opacity:.9;
}
#brand-gallery .gallery-story .reference-photo:after{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  background:linear-gradient(135deg,rgba(41,68,63,.2),rgba(239,232,220,.08) 55%,rgba(104,143,136,.18));
  mix-blend-mode:color;
  opacity:.72;
  transition:opacity .45s ease;
}
#brand-gallery .gallery-story:hover .reference-photo:after{opacity:.5}
