/* Michael James Mealy Pharma Consulting — local static concept. System fonts only. */
:root{--ink:#102c38;--muted:#52636a;--paper:#f8f7f3;--sand:#efede5;--line:#d8dcd7;--teal:#1d625e;--amber:#c89242;--white:#fff;--serif:Georgia,'Times New Roman',serif;--sans:-apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}a{color:inherit;text-underline-offset:4px}a:hover{text-decoration-thickness:2px}a,button,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,summary:focus-visible,button:focus-visible{outline:3px solid #a55e12;outline-offset:5px}img{display:block;max-width:100%;height:auto}figure{margin:0}p{margin:0 0 1.2rem}h1,h2,h3{line-height:1.13;margin:0;font-weight:400}h1,h2{font-family:var(--serif);letter-spacing:-.045em}h1{font-size:clamp(3.25rem,5.3vw,5.6rem)}h2{font-size:clamp(2.25rem,3.45vw,3.65rem)}h3{font-size:1.28rem;font-weight:600;letter-spacing:-.02em}em{font-weight:400;color:var(--teal)}.container{width:min(1280px,calc(100% - 112px));margin-inline:auto}.section{padding-block:110px}.lead{font-size:1.3rem;line-height:1.6}.eyebrow{font-size:.7rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;line-height:1.6;margin-bottom:24px;color:var(--teal)}.eyebrow.light{color:#a3d1c5}.skip{position:absolute;left:16px;top:-100px;background:var(--white);z-index:10;padding:12px 20px;font-weight:600}.skip:focus{top:12px}.draft-bar{text-align:center;font-size:.7rem;letter-spacing:.06em;padding:7px 16px;background:var(--sand);color:#526068}.draft-bar span{padding:0 7px}.site-header{border-bottom:1px solid var(--line)}.header-inner{display:flex;justify-content:space-between;align-items:center;min-height:110px;gap:32px}.brand{display:inline-flex;flex-direction:column;align-items:flex-start;text-decoration:none;gap:5px;line-height:1.15;flex-shrink:0;max-width:100%}.brand-name{font-family:var(--serif);font-size:clamp(1.35rem,2vw,1.75rem);letter-spacing:-.035em;font-weight:400;line-height:1.2}.brand-descriptor{font-size:.63rem;letter-spacing:.19em;font-weight:600;line-height:1.5;text-transform:uppercase}.site-header nav{display:flex;align-items:center;gap:32px}.site-header nav a{font-size:.84rem;text-decoration:none;padding:10px 0}.site-header nav a[aria-current]{color:var(--teal);box-shadow:0 2px 0 var(--teal)}.site-header nav .nav-contact{border-bottom:1px solid var(--ink);margin-left:14px}.nav-contact span{margin-left:18px}.hero{display:grid;grid-template-columns:1.05fr .95fr;gap:64px;padding-block:68px 58px;align-items:stretch}.hero-copy{padding-block:25px 10px}.hero h1{margin-bottom:28px}.hero-intro{font-size:1.2rem;max-width:490px;line-height:1.6}.hero-detail{font-size:.94rem;color:var(--muted);max-width:470px}.status-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--teal);margin-right:8px;vertical-align:1px}.hero-actions{display:flex;align-items:center;gap:28px;flex-wrap:wrap;margin-top:32px}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:30px;background:var(--ink);color:var(--white);text-decoration:none;font-size:.83rem;font-weight:600;padding:16px 23px;border:1px solid var(--ink);min-height:52px;transition:background .18s}.button:hover{background:var(--teal);border-color:var(--teal)}.button span{font-size:1.1rem}.text-link{font-size:.88rem;font-weight:600;text-decoration:none;border-bottom:1px solid #899f9e;padding-bottom:5px;display:inline-block}.text-link span{margin-left:12px}.hero-note{display:flex;gap:24px;flex-wrap:wrap;font-size:.57rem;letter-spacing:.14em;font-weight:600;margin-top:48px;color:var(--muted)}.hero-visual{position:relative;min-height:550px;overflow:hidden;background:var(--ink);display:flex;flex-direction:column;justify-content:flex-end}.hero-visual>img{position:absolute;width:100%;height:100%;object-fit:cover;object-position:59% 50%;filter:saturate(.36);opacity:.83}.hero-visual:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,22,27,.04) 35%,rgba(5,22,27,.9) 100%);pointer-events:none}.visual-label{position:relative;z-index:1;color:var(--white);font-family:var(--serif);font-size:2.1rem;line-height:1.2;letter-spacing:-.03em;padding:36px 36px 18px}.visual-label span{display:block;font-family:var(--sans);color:#e2c391;font-size:.64rem;letter-spacing:.16em;margin-bottom:18px}.hero-visual figcaption{position:relative;z-index:1;font-size:.62rem;color:#e1e4df;padding:0 36px 26px;line-height:1.55;max-width:420px}.discipline-strip{border-block:1px solid var(--line);padding-block:22px}.discipline-strip .container{display:flex;justify-content:space-between;gap:24px;font-size:.75rem;color:var(--muted)}.discipline-strip span{display:flex;align-items:center;gap:12px}.discipline-strip span:before{content:'+';font-size:1rem;color:var(--teal)}.split-intro{display:grid;grid-template-columns:1fr 1fr;gap:95px}.intro-text p:not(.lead){font-size:.94rem;color:var(--muted)}.intro-text .text-link{margin-top:10px}.tinted{background:var(--sand)}.section-heading{display:grid;grid-template-columns:1.3fr .7fr;align-items:end;gap:80px;margin-bottom:58px}.section-heading>p{color:var(--muted);font-size:.95rem;margin-bottom:5px;max-width:320px}.steps{display:grid;grid-template-columns:repeat(3,1fr);padding:0;margin:0;list-style:none;gap:44px}.steps li{border-top:1px solid #bbc8c1;padding-top:20px}.step-number{display:block;font-family:var(--serif);font-size:1.8rem;color:var(--teal);margin-bottom:22px}.steps h3{margin-bottom:14px}.steps p{font-size:.9rem;color:var(--muted);margin-bottom:0}.section-note{font-size:.76rem;color:var(--muted);border-top:1px solid var(--line);padding-top:20px;margin:46px 0 0}.experience-grid{display:grid;grid-template-columns:.78fr 1.22fr;gap:100px;align-items:center}.lab-figure img{width:100%;height:480px;object-fit:cover;object-position:50% 48%;filter:saturate(.45)}figcaption{font-size:.68rem;color:var(--muted);line-height:1.6;margin-top:12px}.hero-visual figcaption{margin:0}.experience-copy h2{margin-bottom:28px}.experience-copy p:not(.eyebrow){color:var(--muted);font-size:.94rem}.experience-copy p.lead{font-size:1.15rem;color:var(--ink)}.experience-footnote{font-size:.72rem;border-left:2px solid var(--teal);padding-left:18px;margin-top:26px;color:var(--muted)}.decision-note{border-top:1px solid var(--line);padding-block:65px 90px;text-align:center}.decision-note h2{margin-bottom:22px}.decision-note>p:not(.eyebrow){font-size:.94rem;color:var(--muted)}.contact-section{background:var(--ink);color:var(--white);padding-block:90px}.contact-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:110px;align-items:center}.contact-grid h2{font-size:clamp(2.1rem,3vw,3.1rem);margin-bottom:24px}.contact-grid>div>p:not(.eyebrow){color:#cad7d9;max-width:480px;font-size:.94rem}.contact-card{border-left:1px solid #537077;padding-left:44px}.contact-card h3{font-size:1.1rem;margin-bottom:16px}.contact-card>p{font-size:.87rem;color:#cad7d9}.light-button{background:#f2ece0;color:var(--ink);border-color:#f2ece0;margin:8px 0 16px}.light-button:hover{background:var(--white);color:var(--ink);border-color:var(--white)}.contact-card .contact-address{font-size:.86rem;overflow-wrap:anywhere;margin-bottom:14px}.contact-card p.small{font-size:.7rem;line-height:1.65;color:#b8cacc;max-width:340px}.footer{background:#0b232d;color:#d6e0df;padding-block:46px 22px}.footer-top{display:flex;align-items:center;justify-content:space-between;padding-bottom:36px}.footer-top p{font-family:var(--serif);font-size:1.3rem;line-height:1.3;margin:0}.footer-bottom{border-top:1px solid #2f4950;padding-top:22px;display:flex;justify-content:space-between;gap:24px;font-size:.64rem;color:#b4c5c7}.footer-bottom>div{display:flex;flex-wrap:wrap;gap:12px 24px}.footer-bottom a{text-decoration:none}.service-hero{display:grid;grid-template-columns:1.1fr .9fr;gap:110px;padding-block:85px 90px;align-items:center}.service-hero h1{margin-bottom:28px}.service-hero .button{margin-top:18px}.service-summary{background:var(--ink);color:var(--white);padding:44px}.service-summary>.eyebrow{display:block;color:#a3d1c5;font-size:.62rem}.service-summary h2{font-size:2.65rem;margin-bottom:24px}.service-summary p{color:#d1dedf;font-size:.92rem}.service-summary dl{margin:32px 0 0}.service-summary dl>div{border-top:1px solid #456168;padding-top:14px;margin-top:14px;display:grid;grid-template-columns:55px 1fr;gap:18px;font-size:.72rem}.service-summary dt{color:#9dbcb9}.service-summary dd{margin:0}.scope-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:44px 40px}.scope-grid article{border-top:1px solid #b4c4bc;padding-top:20px}.scope-index{font-size:.62rem;letter-spacing:.12em;color:var(--teal);font-weight:700}.scope-grid h3{margin-block:23px 16px;max-width:270px}.scope-grid p{font-size:.88rem;color:var(--muted)}.scope-grid .review-question{font-family:var(--serif);font-size:1.06rem;font-style:italic;color:var(--teal);margin:22px 0 0}.deliverables-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px}.deliverables-grid h2{margin-bottom:26px}.deliverables-grid>div>p:not(.eyebrow){color:var(--muted);max-width:470px;font-size:.95rem}.deliverables{list-style:none;padding:0;margin:0}.deliverables li{display:flex;gap:24px;border-top:1px solid var(--line);padding-block:24px}.deliverables li>span{font-family:var(--serif);color:var(--teal);font-size:1.3rem}.deliverables h3{font-size:1.1rem;margin-bottom:12px}.deliverables p{font-size:.88rem;color:var(--muted);margin:0}.clean-team{background:#224841;color:var(--white)}.clean-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px}.clean-grid>div>p:not(.eyebrow){font-size:.94rem;color:#dae6df}.clean-grid>div>p.lead{font-size:1.25rem;color:var(--white)}.faq-section{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px}.faq-section h2{font-size:2.6rem}.faq-list details{border-top:1px solid var(--line)}.faq-list details:last-child{border-bottom:1px solid var(--line)}summary{cursor:pointer;padding:23px 22px 23px 0;font-size:.96rem;font-weight:600}details p{font-size:.9rem;color:var(--muted);padding:0 24px 12px 0}.legal-page{max-width:960px;padding-block:75px 100px}.legal-page h1{margin-bottom:32px}.legal-page h2{font-size:2rem;margin:40px 0 20px}.legal-page>p{max-width:760px}.notice{background:var(--sand);border-left:3px solid var(--teal);padding:20px;font-size:.88rem;margin-top:30px}.credit-item{display:grid;grid-template-columns:200px 1fr;gap:35px;border-top:1px solid var(--line);padding-top:36px;margin-top:40px}.credit-item img{height:210px;width:200px;object-fit:cover}.credit-item h2{margin:0 0 16px}.credit-item p{font-size:.88rem}.staging-banner{background:#ecd9ae;color:#4d370d;padding:16px 30px;text-align:center;font-size:.8rem}.staging-banner strong{letter-spacing:.08em;margin-right:20px}.staging-banner span{display:inline-block}.chemical-hero{display:grid;grid-template-columns:1.1fr .9fr;gap:100px;padding-block:75px 90px;align-items:center}.chemical-hero h1{margin-bottom:28px}.chemical-hero>div>p:not(.eyebrow){color:var(--muted);font-size:.96rem}.chemical-hero>div>p.hero-intro{font-size:1.2rem;color:var(--ink)}.chemical-image img{height:540px;width:100%;object-fit:cover;filter:saturate(.5)}.availability{border-left:3px solid #a16e25;background:#ede6d5;padding:20px 24px;margin-top:30px}.availability strong{font-size:.9rem}.availability p{font-size:.85rem;margin:7px 0 0;color:#5e5135}.experience-bands{display:grid;grid-template-columns:repeat(3,1fr);gap:48px;margin-top:55px}.experience-bands article{border-top:1px solid #b4c4bc;padding-top:22px}.experience-bands span{color:var(--teal);font-size:.62rem;letter-spacing:.12em}.experience-bands h3{font-family:var(--serif);font-size:2rem;font-weight:400;margin:20px 0}.experience-bands p{font-size:.9rem;color:var(--muted)}.material-note{display:grid;grid-template-columns:1fr 2fr;gap:40px;border-top:1px solid var(--line);padding-top:30px;margin-top:40px}.material-note p{font-size:.9rem;color:var(--muted);margin:0}.future-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}.future-grid article{border-left:2px solid #a6bdb2;padding-left:24px}.future-grid h3{margin-bottom:18px}.future-grid p{font-size:.9rem;color:var(--muted)}.staged-close{padding-block:65px 80px;border-top:1px solid var(--line);text-align:center}.staged-close h2{margin-bottom:25px}.staged-close p:not(.eyebrow){color:var(--muted);margin-bottom:30px}.review-hub{padding-block:70px;max-width:1080px}.review-hub h1{margin-bottom:26px}.review-links{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin:42px 0}.review-card{display:block;background:var(--sand);padding:35px;text-decoration:none;border:1px solid var(--line)}.review-card:hover{border-color:var(--teal)}.review-card>span{font-size:.65rem;letter-spacing:.1em;color:var(--teal);font-weight:700}.review-card h2{font-size:2rem;margin:22px 0 18px}.review-card p{color:var(--muted);font-size:.9rem;margin:0}
@media(min-width:1600px){.hero{gap:90px}.hero-visual{min-height:610px}}
@media(max-width:1100px){.container{width:calc(100% - 64px)}.hero{gap:35px}.hero h1{font-size:4.1rem}.hero-visual{min-height:570px}.hero-intro{font-size:1.1rem}.hero-note{gap:12px;margin-top:32px}.header-inner{min-height:95px}.site-header nav{gap:24px}.site-header nav .nav-contact{margin-left:0}.section{padding-block:80px}.split-intro,.experience-grid,.contact-grid,.service-hero,.deliverables-grid,.clean-grid,.chemical-hero{gap:50px}.section-heading{gap:50px}.scope-grid{gap:35px 28px}.service-summary{padding:30px}.service-hero h1,.chemical-hero h1{font-size:4rem}.contact-card{padding-left:28px}}
@media(max-width:800px){.container{width:calc(100% - 48px)}.header-inner{gap:20px;flex-wrap:wrap;padding-block:22px}.site-header nav{gap:22px;justify-content:flex-start;flex-wrap:wrap}.site-header nav a{font-size:.78rem}.site-header nav .nav-contact{padding-block:7px}.hero{padding-top:40px;grid-template-columns:1fr;gap:35px}.hero-copy{padding:0}.hero h1{font-size:clamp(3.5rem,8vw,4.8rem)}.hero-intro,.hero-detail{max-width:610px}.hero-visual{min-height:440px}.hero-visual>img{object-position:50% 52%}.hero-note{margin-top:30px}.discipline-strip .container{display:grid;grid-template-columns:1fr 1fr;gap:12px 20px}.split-intro,.experience-grid,.contact-grid,.service-hero,.deliverables-grid,.clean-grid,.chemical-hero,.faq-section{grid-template-columns:1fr;gap:38px}.section-heading{grid-template-columns:1fr;gap:25px}.section-heading>p{max-width:550px}.steps{gap:24px}.steps h3{font-size:1.1rem}.steps p{font-size:.85rem}.experience-grid{grid-template-columns:.7fr 1fr;gap:35px}.experience-copy h2{font-size:2.4rem}.lab-figure img{height:530px}.scope-grid{grid-template-columns:1fr 1fr}.contact-card{border-left:0;border-top:1px solid #537077;padding:30px 0 0}.contact-card p.small{max-width:520px}.service-hero{padding-block:55px 65px}.service-summary{padding:36px}.service-summary dl{display:grid;grid-template-columns:1fr 1fr 1fr;gap:24px}.service-summary dl>div{display:block}.service-summary dt{margin-bottom:8px}.faq-section{gap:34px}.chemical-hero{padding-block:50px 65px}.chemical-image img{height:420px;object-position:50% 47%}.experience-bands{gap:25px}.material-note{grid-template-columns:1fr;gap:20px}.future-grid{gap:24px}.staging-banner strong{display:block;margin:0 0 7px}.review-links{gap:20px}.review-card{padding:25px}}
@media(max-width:540px){.container{width:calc(100% - 40px)}.draft-bar{font-size:.62rem}.header-inner{padding-block:18px;gap:18px}.brand-name{font-size:1.45rem}.brand-descriptor{font-size:.6rem}.site-header nav{width:100%;gap:0;justify-content:space-between}.site-header nav a{font-size:.7rem}.nav-contact span{margin-left:4px}.hero{padding-block:35px 32px}.hero .eyebrow{font-size:.6rem;letter-spacing:.1em}.hero h1{font-size:3.55rem;margin-bottom:24px}.hero-intro{font-size:1.09rem}.hero-detail{font-size:.89rem}.hero-actions{gap:22px}.button{padding:15px 19px;font-size:.79rem;gap:25px}.hero-note{font-size:.52rem;gap:16px}.hero-visual{min-height:380px}.visual-label{font-size:1.85rem;padding:25px 25px 15px}.hero-visual figcaption{padding:0 25px 22px;max-width:310px}.discipline-strip{padding-block:18px}.discipline-strip .container{font-size:.62rem;gap:14px 12px}.discipline-strip span{gap:7px}.section{padding-block:60px}h2{font-size:2.4rem}.eyebrow{font-size:.62rem;margin-bottom:18px}.lead{font-size:1.15rem}.split-intro{gap:28px}.section-heading{margin-bottom:38px;gap:25px}.steps{grid-template-columns:1fr;gap:26px}.steps li{display:grid;grid-template-columns:44px 1fr;gap:0 18px;padding-top:21px}.step-number{grid-row:1/3;margin:0;font-size:1.7rem}.steps h3{margin-bottom:12px;font-size:1.15rem}.steps p{font-size:.9rem}.section-note{margin-top:32px}.experience-grid{grid-template-columns:1fr;gap:35px}.lab-figure img{height:350px;object-position:50% 40%}.experience-copy h2{font-size:2.35rem}.decision-note{padding-block:45px 60px}.decision-note h2{font-size:2.1rem}.contact-section{padding-block:60px 40px}.contact-grid{gap:28px}.contact-grid h2{font-size:2.3rem}.footer{padding-top:35px}.footer-top{align-items:start;gap:20px}.footer-top p{font-size:1.05rem}.footer-bottom{font-size:.6rem;flex-direction:column;gap:16px}.service-hero h1,.chemical-hero h1{font-size:3.5rem}.service-summary h2{font-size:2.3rem}.service-summary{padding:28px}.service-summary dl{grid-template-columns:1fr;gap:0}.service-summary dl>div{display:grid;grid-template-columns:55px 1fr}.service-summary dt{margin:0}.scope-grid{grid-template-columns:1fr;gap:30px}.scope-grid h3{margin-top:16px;max-width:none}.scope-grid p{font-size:.92rem}.scope-grid .review-question{margin-top:17px}.deliverables-grid{gap:28px}.clean-grid{gap:25px}.faq-section h2{font-size:2.25rem}summary{font-size:.91rem}.legal-page{padding-block:50px 60px}.legal-page h1{font-size:3.3rem}.credit-item{grid-template-columns:1fr;gap:25px}.credit-item img{height:240px;width:100%}.experience-bands,.future-grid{grid-template-columns:1fr;gap:25px}.experience-bands h3{margin-block:14px}.experience-bands{margin-top:35px}.material-note{margin-top:25px}.staging-banner{font-size:.67rem;padding:14px 20px}.staged-page nav{justify-content:flex-start}.chemical-image img{height:390px}.review-hub{padding-block:45px}.review-hub h1{font-size:3.5rem}.review-links{grid-template-columns:1fr}.review-card h2{font-size:1.85rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
@media print{.draft-bar,nav,.hero-actions,.contact-section,.footer,.staging-banner{display:none}.container{width:100%}.section{padding-block:25px}.hero-visual{min-height:300px}body{background:#fff;color:#000}.hero{gap:25px}.scope-grid{grid-template-columns:1fr 1fr}a{color:inherit}.clean-team{background:#fff;color:#000}.clean-grid>div>p:not(.eyebrow){color:#000}details{break-inside:avoid}details:not([open])>p{display:block}}
/* Keep the principal message and enquiry route visible on small screens. */
@media(max-width:540px){.hero h1{font-size:clamp(2.2rem,11vw,2.9rem)}.chemical-hero h1{font-size:clamp(2.2rem,10.6vw,2.9rem)}.service-hero h1{font-size:clamp(2.6rem,12vw,3.3rem)}}
@media(max-width:540px){.footer-top{flex-direction:column;gap:26px}.footer-top p{font-size:1.2rem}}
@media(min-width:801px){.chemical-hero h1{font-size:clamp(3rem,4.1vw,4rem)}}
/* Revised photographic treatment and full manufacturing experience. */
.hero-visual>img{filter:saturate(.8);opacity:.98;object-position:44% 57%}
.hero-visual figcaption a{color:inherit}
.profile-link{margin:25px 0}.profile-link .text-link{font-size:.86rem}
.diligence-photo{margin-top:30px}.diligence-photo img{height:280px;width:100%;object-fit:cover;object-position:58% 50%;filter:saturate(.6)}
.experience-bands{grid-template-columns:repeat(4,1fr);gap:32px}
.experience-bands h3{font-size:1.75rem}
.chemical-image img{object-position:44% 50%}
@media(max-width:1100px){.experience-bands{grid-template-columns:1fr 1fr;gap:30px}}
@media(max-width:540px){.experience-bands{grid-template-columns:1fr}.diligence-photo img{height:230px}.profile-link .text-link{font-size:.79rem}}
/* Frame the selected process vessels in the portrait hero. */
.hero-visual>img{object-position:78% 50%;filter:saturate(.7);opacity:.97}

/* Historical batch-to-continuous experience, kept on the unpublished page. */
.process-feature{display:grid;grid-template-columns:1.05fr .95fr;gap:52px;align-items:center;margin-top:52px;border-top:1px solid #b4c4bc;padding-top:46px}
.process-feature figure{min-width:0}.process-feature img{width:100%;height:auto;filter:saturate(.65)}
.process-feature-copy h3{font-family:var(--serif);font-size:clamp(2.5rem,4vw,3.8rem);font-weight:400;letter-spacing:-.04em;line-height:1.08;margin-bottom:24px}
.process-feature-copy>p:not(.eyebrow){color:var(--muted);font-size:.94rem}.process-feature-copy>p.lead{color:var(--ink);font-size:1.16rem}
.process-feature-copy>p.feature-footnote{font-size:.72rem;border-left:2px solid var(--teal);padding-left:16px;margin-top:26px}
@media(max-width:800px){.process-feature{grid-template-columns:1fr;gap:28px}.process-feature img{max-height:440px;object-fit:contain;object-position:left}}
@media(max-width:540px){.process-feature{margin-top:35px;padding-top:30px}.process-feature-copy h3{font-size:2.7rem}}
