:root {
  --ink: #182820;
  --muted: #647069;
  --paper: #f7f8f5;
  --white: #fff;
  --green: #294b3c;
  --lime: #d9ec88;
  --line: rgba(24, 40, 32, .15);
  --serif: Georgia, "Times New Roman", serif;
  --sans: "DM Sans", Arial, sans-serif;
  --display: "Manrope", "DM Sans", Arial, sans-serif;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 90px; }
body { margin: 0; color: var(--ink); background: var(--paper); font-family: var(--sans); -webkit-font-smoothing: antialiased; }
a { color: inherit; text-decoration: none; }
button { font: inherit; }
.site-header { height: 82px; padding: 0 7.1%; display: flex; align-items: center; justify-content: space-between; background: rgba(247,248,245,.95); position: sticky; top: 0; z-index: 20; border-bottom: 1px solid rgba(24,40,32,.07); backdrop-filter: blur(16px); }
.brand { display: inline-flex; align-items: center; gap: 9px; }
.brand-mark { display: grid; place-items: center; width: 36px; height: 36px; color: var(--green); }
.brand-mark svg { width: 100%; height: 100%; }
.brand-name { font: 800 22px/1 var(--display); letter-spacing: -1.3px; color: var(--green); }
.brand-name span { font-weight: 500; }
.main-nav { display: flex; align-items: center; gap: clamp(24px,3.5vw,52px); margin-left: 70px; }
.main-nav a, .footer-links a { color: #526158; font-size: 12px; font-weight: 600; transition: color .2s; }
.main-nav a:hover, .footer-links a:hover { color: #8a9b5e; }
.header-cta { border: 1px solid var(--line); border-radius: 99px; padding: 11px 19px; font-size: 12px; font-weight: 700; transition: background .2s,color .2s; }
.header-cta:hover { color: white; background: var(--green); }
.header-cta span { margin-left: 13px; font-size: 15px; }
.menu-toggle { display: none; }

.hero { min-height: 660px; height: min(760px, calc(100svh - 82px)); max-height: 830px; padding: 50px 12.1% 68px; display: grid; grid-template-columns: 1fr 1.02fr; position: relative; overflow: hidden; }
.hero-copy { z-index: 2; padding-top: 8px; }
.eyebrow { display: flex; align-items: center; gap: 9px; color: #768171; font-size: 9px; font-weight: 700; letter-spacing: 1.55px; }
.eyebrow-dot { width: 7px; height: 7px; border-radius: 50%; background: #9cbb55; display: inline-block; flex: 0 0 auto; }
.hero h1 { margin: 20px 0 18px; font: 600 clamp(48px,5.6vw,72px)/1.04 var(--display); letter-spacing: -.072em; }
h1 em,h2 em,.manifesto p em { font-family: var(--serif); font-weight: 400; letter-spacing: -.055em; }
.hero h1 em { color: #769057; }
.hero-intro { max-width: 520px; color: #6d7871; font-size: 15px; line-height: 1.75; }
.hero-actions { display: flex; gap: 25px; align-items: center; margin-top: 31px; }
.button { display: inline-flex; align-items: center; gap: 25px; min-height: 48px; padding: 0 20px; border-radius: 99px; font-size: 11px; font-weight: 700; transition: transform .2s, background .2s; }
.button:hover { transform: translateY(-2px); }
.button-primary { background: var(--green); color: white; }
.button-primary:hover,.button-dark:hover { background: #3b624e; }
.button span { font-size: 16px; }
.text-link,.underlined-link { font-size: 11px; font-weight: 700; }
.text-link span { color: #8a9b5e; margin-left: 8px; }
.hero-footnote { display: flex; align-items: center; gap: 13px; margin-top: 55px; color: #89928b; font-size: 10px; line-height: 1.55; }
.avatar-stack { display: flex; padding-left: 4px; }
.avatar-stack i { display: grid; place-items: center; width: 25px; height: 25px; margin-left: -4px; border: 2px solid var(--paper); border-radius: 50%; background: #d9e0cc; color: #526a4b; font-style: normal; font-size: 11px; }
.avatar-stack i:nth-child(2) { background: #e8d6c7; color: #a66a43; }
.avatar-stack i:nth-child(3) { background: #d9d8e7; color: #686483; }
.hero-art { position: relative; align-self: center; height: min(480px,75%); min-height: 537px; max-width: 610px; width: 100%; margin: 0 auto; border: 1px solid #dfe5d8; border-radius: 25px; background: radial-gradient(ellipse at 50% 48%,#f9fbf6 0%,#edf1e7 72%); overflow: hidden; box-shadow: 0 24px 60px rgba(44,64,47,.08); }
.hero-art::before { content: ""; position: absolute; inset: 0; opacity: .32; background-image: linear-gradient(rgba(97,120,86,.09) 1px,transparent 1px),linear-gradient(90deg,rgba(97,120,86,.09) 1px,transparent 1px); background-size: 32px 32px; mask-image: linear-gradient(135deg,transparent 5%,#000 50%,transparent 95%); }
.hero-art::after { content: ""; position: absolute; width: 180px; height: 180px; left: calc(50% - 90px); top: calc(50% - 90px); border: 1px solid rgba(112,136,95,.16); border-radius: 50%; box-shadow: 0 0 0 12px rgba(112,136,95,.035),0 0 0 26px rgba(112,136,95,.025); }
.journey-topline,.journey-footline { position: absolute; z-index: 3; left: 27px; right: 27px; display: flex; align-items: center; justify-content: space-between; color: #778575; font-size: 8px; font-weight: 700; letter-spacing: 1.05px; }
.journey-topline { top: 23px; }
.journey-topline > span:first-child { display: flex; align-items: center; gap: 7px; }
.journey-topline i { width: 6px; height: 6px; display: inline-block; border-radius: 50%; background: #91aa61; }
.journey-path { position: absolute; z-index: 1; inset: 0; width: 100%; height: 100%; overflow: visible; }
.journey-path path { fill: none; stroke: #aab99a; stroke-width: 1.35; stroke-dasharray: 4 5; }
.journey-path circle { fill: #829866; stroke: #f7f9f3; stroke-width: 3; }
.journey-node { position: absolute; z-index: 2; display: flex; align-items: center; gap: 11px; width: 41%; min-height: 80px; padding: 13px 14px; border: 1px solid rgba(218,225,212,.95); border-radius: 10px; background: rgba(255,255,255,.94); box-shadow: 0 9px 23px rgba(43,61,43,.065); }
.node-plant { left: 5%; top: 23%; }.node-clinical { right: 5%; top: 23%; }.node-writing { left: 5%; bottom: 18%; }.node-supply { right: 5%; bottom: 18%; }
.journey-icon { display: grid; place-items: center; width: 38px; height: 38px; flex: 0 0 auto; border-radius: 11px; }
.journey-icon svg { width: 28px; height: 28px; }
.icon-botanical { color: #64834f; background: #edf2e6; }.icon-medical { color: #527460; background: #eaf1eb; }.icon-manuscript { color: #a8714f; background: #f7eee7; }.icon-lab { color: #737293; background: #efeff6; }
.journey-copy { min-width: 0; display: flex; flex-direction: column; gap: 4px; }
.journey-copy small { color: #87957f; font-size: 8px; font-weight: 700; letter-spacing: .8px; }
.journey-copy b { color: #26382c; font: 700 13px/1.2 var(--display); white-space: nowrap; }
.journey-copy em { color: #89928a; font-size: 9px; font-style: normal; white-space: nowrap; }
.journey-hub { position: absolute; z-index: 4; top: 50%; left: 50%; width: 77px; height: 77px; transform: translate(-50%,-50%); display: grid; place-items: center; border: 4px solid #f2f5ed; border-radius: 50%; background: #294b3c; color: #f5f7ed; text-align: center; box-shadow: 0 0 0 1px #8da078,0 9px 20px rgba(35,58,41,.2); font: 700 9px/1.35 var(--display); letter-spacing: .7px; }
.journey-hub i { position: absolute; right: -4px; bottom: -4px; width: 22px; height: 22px; display: grid; place-items: center; border: 2px solid #f2f5ed; border-radius: 50%; background: #d9e8a4; color: #294b3c; font: normal 12px var(--sans); }
.journey-footline { bottom: 22px; color: #929c8d; font-size: 7px; letter-spacing: .85px; }
.hero-bottomline { position: absolute; bottom: 24px; left: 12.1%; right: 7.1%; display: flex; justify-content: space-between; color: #95a098; font-size: 8px; letter-spacing: 1.35px; font-weight: 700; }
.hero-bottomline a span { margin-left: 8px; color: #849662; }

.section-pad { padding-left: 10.4%; padding-right: 10.4%; }
.intro { padding-top: 120px; padding-bottom: 135px; background: #fff; }
.intro-kicker { font-size: 9px; font-weight: 700; letter-spacing: 1.65px; color: #84917f; }
.intro-content { display: grid; grid-template-columns: 1fr .72fr; align-items: end; gap: 10%; margin-top: 31px; }
.intro h2,.section-heading h2,.detail-intro h2,.research-copy h2,.approach h2 { font: 600 clamp(38px,4.7vw,62px)/1.12 var(--display); letter-spacing: -.06em; margin: 0; }
.intro h2 span { color: #84956d; font: 400 1.02em var(--serif); letter-spacing: -.055em; }
.intro-text { max-width: 450px; padding-bottom: 5px; }
.intro-text p { margin: 0 0 14px; color: #6f7c73; font-size: 12px; line-height: 1.9; }
.underlined-link { display: inline-block; margin-top: 14px; padding-bottom: 8px; border-bottom: 1px solid #b4beaa; }
.underlined-link span { margin-left: 17px; color: #879a61; font-size: 15px; }

.expertise { padding-top: 110px; padding-bottom: 120px; }
.section-heading { display: flex; justify-content: space-between; align-items: end; gap: 40px; margin-bottom: 42px; }
.section-heading h2 { margin-top: 20px; font-size: clamp(36px,4.2vw,55px); }
.section-heading h2 em { color: #84956d; }
.section-heading > p { max-width: 230px; margin: 0 0 5px; color: #748078; font-size: 11px; line-height: 1.8; }
.service-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 12px; }
.service-card { min-height: 322px; padding: 22px 20px 19px; border-radius: 4px; display: flex; flex-direction: column; transition: transform .25s, box-shadow .25s; }
.service-card:hover { transform: translateY(-5px); box-shadow: 0 14px 34px rgba(38,57,45,.09); }
.card-sage { background: #e7ecdf; }.card-peach { background: #f2e8df; }.card-lilac { background: #e8e7ed; }.card-yellow { background: #eff0d9; }
.card-top { display: flex; justify-content: space-between; color: #768278; font-size: 7px; font-weight: 700; letter-spacing: 1.1px; }
.card-arrow { font-size: 15px; color: #66786b; }
.card-icon { width: 52px; height: 52px; margin-top: 29px; display: grid; place-items: center; }
.card-icon svg { width: 48px; height: 48px; }
.icon-clinical { color: #557452; }.icon-writing { color: #a8795d; }.icon-chemicals { color: #73718e; }.icon-research { color: #808b4f; }
.service-card h3 { margin: 14px 0 9px; font: 600 19px/1.28 var(--display); letter-spacing: -.7px; }
.service-card p { margin: 0; color: #6d7870; font-size: 10px; line-height: 1.75; }
.card-foot { margin-top: auto; padding-top: 21px; font-size: 7px; letter-spacing: .8px; color: #8a948d; font-weight: 700; }

.manifesto { min-height: 345px; position: relative; display: flex; align-items: center; background: #253d31; color: #f5f5ec; overflow: hidden; }
.manifesto-inner { width: 100%; padding: 70px 15.2%; position: relative; z-index: 1; }
.eyebrow-light { color: #aeb9a5; }
.manifesto p { margin: 30px 0 0; font: 500 clamp(33px,4.8vw,60px)/1.13 var(--display); letter-spacing: -.055em; }
.manifesto p em { color: #d1df9a; }
.manifesto-note { position: absolute; right: 15%; bottom: 65px; color: #9cac9e; font-size: 8px; line-height: 1.8; letter-spacing: 1.3px; }
.manifesto-orb { position: absolute; width: 420px; height: 420px; border: 1px solid rgba(217,236,136,.13); border-radius: 50%; right: 14%; top: -40%; box-shadow: 0 0 0 32px rgba(217,236,136,.025),0 0 0 72px rgba(217,236,136,.02); }

.detail-section { padding-top: 128px; padding-bottom: 130px; display: grid; grid-template-columns: .8fr 1.2fr; gap: 12%; background: #fff; }
.detail-number { display: block; color: #9aaa77; font: 12px var(--display); margin-bottom: 25px; }
.detail-intro h2 { margin: 23px 0 20px; font-size: clamp(38px,4.3vw,56px); }
.detail-intro h2 em { color: #84956d; }
.detail-intro > p { max-width: 370px; color: #6f7c73; font-size: 11px; line-height: 1.9; }
.detail-list { padding-top: 20px; }
.detail-list article { display: grid; grid-template-columns: 57px 1fr; gap: 15px; padding: 20px 0; border-bottom: 1px solid var(--line); align-items: start; }
.detail-list article:first-child { border-top: 1px solid var(--line); }
.detail-list-number { color: #9aab82; font-size: 8px; font-weight: 700; letter-spacing: .7px; padding-top: 4px; }
.detail-list-content { min-width: 0; }
.detail-toggle { width: 100%; display: flex; align-items: flex-start; justify-content: space-between; gap: 15px; padding: 0; border: 0; background: transparent; color: inherit; text-align: left; cursor: pointer; }
.detail-toggle:focus-visible { outline: 2px solid var(--green); outline-offset: 4px; }
.detail-list h3 { margin: 0 0 7px; font: 600 15px var(--display); letter-spacing: -.3px; }
.detail-panel p { margin: 0; color: #778078; font-size: 10px; line-height: 1.75; }
.list-plus { flex: 0 0 auto; color: #ff8118; font-size: 18px; line-height: 1; }
.list-plus::before { content: "+"; }
.detail-toggle[aria-expanded="true"] .list-plus::before { content: "−"; }
.detail-panel[hidden] { display: none; }

.writing-section { padding-top: 115px; padding-bottom: 115px; }
.writing-section .section-heading { margin-bottom: 38px; }
.writing-layout { display: grid; grid-template-columns: .85fr 1.15fr; gap: 16px; }
.writing-feature { background: #e5ebe0; min-height: 370px; padding: 28px 32px; position: relative; overflow: hidden; }
.feature-index { color: #87917e; font-size: 8px; letter-spacing: 1px; font-weight: 700; }
.feature-mark { position: absolute; right: 27px; top: 23px; font: 90px/1 var(--serif); color: #c7d2bb; }
.writing-feature h3 { margin: 51px 0 13px; font: 600 27px/1.2 var(--display); letter-spacing: -1.2px; }
.writing-feature p { max-width: 300px; color: #6f7c73; font-size: 10px; line-height: 1.8; }
.feature-link { position: absolute; bottom: 29px; left: 32px; font-size: 10px; font-weight: 700; border-bottom: 1px solid #a8b6a0; padding-bottom: 7px; }
.feature-link span { margin-left: 19px; color: #7f925d; }
.feature-scribble { position: absolute; right: 32px; bottom: 25px; font-size: 34px; color: #a2b18b; }
.writing-services { padding: 0 25px; }
.writing-services article { display: grid; grid-template-columns: 37px 1fr; gap: 15px; padding: 20px 0; border-bottom: 1px solid var(--line); }
.writing-services article:first-child { padding-top: 10px; }
.writing-services article > span { font-size: 8px; color: #9aaa77; font-weight: 700; padding-top: 3px; }
.writing-services h3 { margin: 0 0 5px; font: 600 14px var(--display); }
.writing-services p { max-width: 400px; margin: 0; font-size: 10px; line-height: 1.7; color: #788179; }
.process-strip { margin-top: 16px; padding: 20px 24px; display: grid; grid-template-columns: 1.3fr repeat(5,1fr); gap: 12px; background: #eeefe8; align-items: center; }
.process-title { font-size: 8px; line-height: 1.6; font-weight: 700; letter-spacing: 1px; }.process-title em { color: #81915e; }
.process-strip > div:not(:first-child) { border-left: 1px solid #d5d9cd; padding-left: 13px; }
.process-strip span { color: #8c9c66; font-size: 8px; font-weight: 700; }
.process-strip p { margin: 6px 0 0; font-size: 8px; line-height: 1.5; color: #667169; }

.chemicals-section { padding-top: 120px; padding-bottom: 120px; display: grid; grid-template-columns: .92fr 1.08fr; gap: 10%; background: #e9ece4; }
.chem-copy h2 { margin: 25px 0 17px; font: 600 clamp(38px,4.3vw,55px)/1.1 var(--display); letter-spacing: -.06em; }
.chem-copy h2 em { color: #829362; }
.chem-copy > p { max-width: 390px; color: #6f7b72; font-size: 11px; line-height: 1.85; }
.button-dark { background: var(--green); color: white; margin-top: 15px; }
.supply-product { max-width: 410px; margin-top: 46px; padding-top: 23px; border-top: 1px solid #ccd2c7; display: flex; align-items: center; gap: 14px; }
.product-stamp { display: grid; place-items: center; width: 53px; height: 53px; flex: 0 0 auto; border: 1px solid #9aaa85; border-radius: 50%; color: #647451; font-size: 8px; font-weight: 700; line-height: 1.35; text-align: center; transform: rotate(-12deg); }
.product-label { color: #8c998c; font-size: 7px; font-weight: 700; letter-spacing: .9px; }
.supply-product h3 { margin: 5px 0; font: 600 13px var(--display); }
.supply-product p { margin: 0; color: #78827a; font-size: 8px; }
.product-arrow { margin-left: auto; font-size: 18px; color: #798d5b; }
.product-specs { max-width: 410px; margin: 12px 0 0 67px; color: #78827a; font-size: 8px; line-height: 1.7; }
.supply-grid { display: grid; grid-template-columns: 1fr 1fr; background: #f3f4ef; }
.supply-cell { padding: 23px; min-height: 177px; position: relative; border-right: 1px solid #e0e3da; border-bottom: 1px solid #e0e3da; }
.supply-cell:nth-child(2n) { border-right: 0; }.supply-cell:nth-child(n+3) { border-bottom: 0; }
.supply-cell > span { position: absolute; right: 20px; top: 20px; color: #a3ad9d; font-size: 8px; }
.mini-icon { margin: 6px 0 18px; color: #7d925e; font: 21px var(--display); }
.supply-cell h3 { margin: 0 0 7px; font: 600 13px var(--display); }
.supply-cell p { margin: 0; max-width: 200px; color: #778179; font-size: 9px; line-height: 1.75; }

.research-section { padding-top: 125px; padding-bottom: 125px; display: grid; grid-template-columns: 1fr .92fr; gap: 13%; align-items: center; background: #fff; }
.research-art { height: 390px; max-width: 420px; position: relative; display: grid; place-items: center; background: #e9ede3; overflow: hidden; }
.research-art::before { content: ""; position: absolute; width: 75%; height: 75%; border-radius: 50%; background: #dce4cf; }
.research-ring { position: absolute; width: 76%; height: 93%; border: 1px solid rgba(83,111,77,.25); border-radius: 50%; transform: rotate(29deg); z-index: 1; }
.research-plant { width: 2px; height: 53%; position: relative; background: #58765c; z-index: 2; transform: rotate(-7deg); }
.research-plant i { position: absolute; bottom: -6px; left: -23px; width: 48px; height: 15px; border-bottom: 2px solid #58765c; border-radius: 50%; }
.research-plant span { position: absolute; width: 82px; height: 32px; border: 1px solid #617c5f; background: rgba(148,174,128,.6); border-radius: 100% 0 100% 0; transform-origin: 0 100%; }
.research-plant span:nth-child(1) { top: 32%; left: 0; transform: rotate(-22deg); }
.research-plant span:nth-child(2) { top: 10%; left: 0; transform: scaleX(-1) rotate(-20deg); }
.research-plant span:nth-child(3) { top: 52%; left: 0; transform: scale(.8) rotate(-15deg); }
.research-plant span:nth-child(4) { top: 27%; left: 0; transform: scaleX(-.8) rotate(3deg); }
.research-caption { position: absolute; bottom: 20px; left: 20px; z-index: 2; color: #778473; font-size: 7px; line-height: 1.6; letter-spacing: 1px; font-weight: 700; }
.research-copy h2 { margin: 22px 0 18px; font-size: clamp(38px,4.1vw,53px); }
.research-copy h2 em { color: #81915e; }
.research-copy > p { color: #6f7b72; font-size: 11px; line-height: 1.9; }
.research-tags { display: flex; flex-wrap: wrap; gap: 6px; margin: 22px 0; }
.research-tags span { padding: 7px 9px; border: 1px solid #dce1d6; border-radius: 2px; color: #69766b; font-size: 7px; font-weight: 700; letter-spacing: .6px; }
.publication-types { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin: 0 0 12px; }
.publication-types > div { padding: 12px; background: #f5f6f2; }
.publication-types span { color: #7f8d6c; font-size: 7px; font-weight: 700; letter-spacing: .7px; }
.publication-types p { margin: 6px 0 0; color: #6e7a70; font-size: 8px; line-height: 1.6; }
.research-note { display: flex; gap: 13px; padding: 16px 17px; background: #f1f3ed; align-items: start; }
.note-spark { color: #91a368; font-size: 17px; }
.research-note p { margin: 0; color: #6e7a70; font-size: 9px; line-height: 1.75; }

.approach { padding-top: 108px; padding-bottom: 110px; display: grid; grid-template-columns: .8fr 1.2fr; gap: 12%; background: #f0f1eb; }
.approach-header h2 { margin-top: 23px; font-size: clamp(38px,4.3vw,56px); }
.approach-header h2 em { color: #829362; }
.approach-points article { padding: 0 0 19px 43px; margin-bottom: 19px; border-bottom: 1px solid #daddd4; position: relative; }
.approach-points article:last-child { margin-bottom: 0; border: 0; }
.approach-points article > span { position: absolute; left: 0; top: 2px; color: #92a36c; font-size: 8px; font-weight: 700; }
.approach-points h3 { margin: 0 0 7px; font: 600 14px var(--display); }
.approach-points p { max-width: 400px; margin: 0; color: #707b72; font-size: 10px; line-height: 1.8; }

.contact-section { min-height: 410px; padding: 82px 20px 68px; position: relative; text-align: center; background: #314b3b; color: white; overflow: hidden; }
.contact-section .eyebrow { justify-content: center; }
.contact-section h2 { margin: 23px 0 14px; font: 600 clamp(39px,5vw,62px)/1.1 var(--display); letter-spacing: -.065em; }
.contact-section h2 em { color: #d1df9a; }
.contact-section > p { color: #c0cbc0; font-size: 11px; }
.button-light { margin-top: 14px; color: #263d30; background: #e2edb7; }
.button-light:hover { background: white; }
.contact-note { display: block; margin-top: 39px; color: #a2b1a3; font-size: 7px; font-weight: 700; letter-spacing: 1.4px; }
.contact-deco { position: absolute; top: 25px; right: 12%; color: rgba(222,236,180,.13); font-size: 88px; }
.site-footer { min-height: 155px; padding: 33px 7.1% 23px; display: grid; grid-template-columns: 1.2fr 1fr 2fr; gap: 30px; align-items: start; background: #f7f8f5; }
.footer-brand { align-self: start; }.footer-brand .brand-mark { width: 30px; height: 30px; }
.site-footer > p { margin: 1px 0; color: #808b83; font: italic 12px/1.55 var(--serif); }
.footer-links { display: flex; justify-content: flex-end; gap: 25px; padding-top: 8px; }
.footer-links a { font-size: 9px; }
.copyright { grid-column: 1/-1; align-self: end; padding-top: 16px; border-top: 1px solid #e3e6df; color: #98a098; font-size: 7px; letter-spacing: 1px; }

@media (min-width: 1500px) {
  .site-header { padding-left: max(7.1%, calc((100% - 1280px)/2)); padding-right: max(7.1%, calc((100% - 1280px)/2)); }
  .section-pad { padding-left: max(10.4%, calc((100% - 1120px)/2)); padding-right: max(10.4%, calc((100% - 1120px)/2)); }
}
@media (max-width: 1000px) {
  .site-header { padding: 0 5%; }.main-nav { margin-left: 10px; gap: 23px; }
  .hero { padding-left: 6%; padding-right: 6%; }.hero-art { height: 390px; min-height: 330px; }
  .section-pad { padding-left: 7%; padding-right: 7%; }
  .service-grid { grid-template-columns: repeat(2,1fr); }
  .service-card { min-height: 300px; }
  .detail-section { gap: 7%; }.chemicals-section { gap: 6%; }
  .writing-services { padding-right: 0; }
}
@media (max-width: 700px) {
  html { scroll-padding-top: 68px; }
  .site-header { height: 68px; padding: 0 5%; }
  .brand-mark { width: 31px; height: 31px; }.brand-name { font-size: 20px; }
  .menu-toggle { display: flex; width: 38px; height: 38px; border: 1px solid var(--line); border-radius: 50%; background: transparent; align-items: center; justify-content: center; flex-direction: column; gap: 5px; cursor: pointer; margin-left: auto; }
  .menu-toggle span { width: 13px; height: 1px; background: var(--ink); transition: transform .2s; }
  .menu-toggle[aria-expanded="true"] span:first-child { transform: translateY(3px) rotate(45deg); }
  .menu-toggle[aria-expanded="true"] span:last-child { transform: translateY(-3px) rotate(-45deg); }
  .header-cta { padding: 9px 12px; font-size: 10px; margin-left: 10px; }.header-cta span { margin-left: 5px; }
  .main-nav { display: none; position: absolute; top: 67px; left: 0; right: 0; margin: 0; padding: 17px 5% 23px; background: var(--paper); flex-direction: column; align-items: stretch; gap: 0; border-bottom: 1px solid var(--line); box-shadow: 0 10px 18px rgba(23,41,31,.06); }
  .main-nav.is-open { display: flex; }.main-nav a { padding: 13px 0; border-bottom: 1px solid #e8eae4; font-size: 13px; }
  .hero { height: auto; min-height: unset; max-height: none; display: flex; flex-direction: column; padding: 67px 6% 64px; }
  .hero-copy { padding-top: 0; }.eyebrow { font-size: 8px; letter-spacing: 1.2px; }
  .hero h1 { margin-top: 23px; font-size: clamp(48px,12vw,72px); }
  .hero-intro { max-width: 360px; font-size: 13px; }
  .hero-actions { gap: 17px; flex-wrap: wrap; margin-top: 24px; }
  .button { min-height: 45px; padding: 0 16px; gap: 15px; font-size: 10px; }
  .text-link { font-size: 10px; }
  .hero-art { margin-top: 48px; width: min(100%,430px); height: auto; min-height: 0; aspect-ratio: 1.08; }
  .hero-footnote { margin-top: 35px; }.hero-bottomline { bottom: 20px; font-size: 6px; }
  .section-pad { padding-left: 6%; padding-right: 6%; }
  .intro { padding-top: 75px; padding-bottom: 82px; }
  .intro-content { grid-template-columns: 1fr; gap: 20px; margin-top: 22px; }
  .intro h2,.section-heading h2,.detail-intro h2,.research-copy h2,.approach h2 { font-size: clamp(37px,9vw,54px); }
  .intro-text p { font-size: 11px; }
  .expertise { padding-top: 77px; padding-bottom: 78px; }
  .section-heading { display: block; margin-bottom: 29px; }
  .section-heading h2 { margin-top: 16px; }
  .section-heading > p { margin-top: 13px; max-width: 360px; }
  .service-grid { gap: 9px; }
  .service-card { padding: 17px 14px; min-height: 270px; }
  .card-top { font-size: 6px; letter-spacing: .6px; }.card-icon { margin-top: 24px; width: 42px; height: 42px; }.card-icon svg { width: 42px; height: 42px; }
  .service-card h3 { font-size: 16px; }.service-card p { font-size: 9px; }.card-foot { font-size: 6px; letter-spacing: .5px; }
  .manifesto { min-height: 300px; }.manifesto-inner { padding: 65px 7%; }.manifesto p { font-size: clamp(34px,9vw,53px); }
  .manifesto-note { right: 7%; bottom: 30px; font-size: 7px; }.manifesto-orb { right: -12%; top: 0; width: 300px; height: 300px; }
  .detail-section { padding-top: 80px; padding-bottom: 82px; grid-template-columns: 1fr; gap: 30px; }
  .detail-number { margin-bottom: 17px; }.detail-intro h2 { margin: 17px 0; }
  .detail-list { padding-top: 0; }.detail-list article { grid-template-columns: 43px 1fr 16px; gap: 9px; padding: 17px 0; }
  .detail-list h3 { font-size: 13px; }.detail-list p { font-size: 9px; }
  .writing-section { padding-top: 78px; padding-bottom: 78px; }
  .writing-layout { grid-template-columns: 1fr; gap: 18px; }
  .writing-feature { min-height: 325px; padding: 24px; }.writing-feature h3 { margin-top: 45px; font-size: 24px; }
  .feature-link { left: 24px; bottom: 25px; }.writing-services { padding: 0 5px; }
  .writing-services article { grid-template-columns: 28px 1fr; gap: 10px; padding: 16px 0; }
  .process-strip { grid-template-columns: 1fr; gap: 10px; padding: 17px 12px; }
  .process-title { grid-column: 1/-1; margin-bottom: 8px; }.process-strip > div:not(:first-child) { padding-left: 7px; }
  .process-strip p { font-size: 7px; }
  .chemicals-section { padding-top: 78px; padding-bottom: 78px; grid-template-columns: 1fr; gap: 33px; }
  .chem-copy h2 { font-size: clamp(38px,9vw,54px); }
  .supply-grid { min-height: 340px; }.supply-cell { min-height: 165px; padding: 18px; }
  .research-section { padding-top: 78px; padding-bottom: 80px; grid-template-columns: 1fr; gap: 31px; }
  .research-art { height: auto; aspect-ratio: 1.08; max-width: 460px; width: 100%; }.research-copy h2 { margin-top: 17px; }
  .approach { padding-top: 76px; padding-bottom: 77px; grid-template-columns: 1fr; gap: 32px; }
  .approach-points article { padding-left: 35px; }.approach-points h3 { font-size: 13px; }
  .contact-section { min-height: 370px; padding-top: 70px; }.contact-section h2 { font-size: clamp(38px,9vw,55px); }.contact-section > p { max-width: 300px; margin: 0 auto; line-height: 1.7; }
  .contact-deco { right: 5%; top: 15px; font-size: 60px; }
  .site-footer { padding: 27px 6% 20px; grid-template-columns: 1fr 1fr; gap: 17px; }
  .site-footer > p { justify-self: end; font-size: 10px; }
  .footer-links { grid-column: 1/-1; grid-row: 2; justify-content: flex-start; flex-wrap: wrap; gap: 12px 20px; padding-top: 2px; }
  .copyright { grid-row: 3; font-size: 6px; }
}
@media (max-width: 370px) {
  .header-cta { display: none; }
  .hero h1 { font-size: 46px; }.service-card { min-height: 286px; padding: 14px 11px; }
  .service-grid { grid-template-columns: 1fr; }
  .card-top { font-size: 5.5px; }.card-foot { font-size: 5px; }
}
@media (prefers-reduced-motion: reduce) {
  *,*::before,*::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; }
}

/* Dedicated service pages */
.service-page { background: #fff; }
.service-page-hero { min-height: 570px; padding: 64px 10.4% 75px; display: grid; grid-template-columns: 1.04fr .96fr; align-items: center; gap: 4%; position: relative; overflow: hidden; background: #f3f5ef; }
.service-page-copy { position: relative; z-index: 2; padding-bottom: 12px; }
.page-back { display: inline-block; margin: 0 0 35px; color: #7b887c; font-size: 10px; font-weight: 600; }
.page-back:hover { color: var(--green); }
.service-page-copy h1 { margin: 25px 0 18px; font: 600 clamp(46px,5.7vw,75px)/1.04 var(--display); letter-spacing: -.075em; }
.service-page-copy h1 em { color: #829362; }
.service-page-copy > p { max-width: 475px; color: #6d7871; font-size: 13px; line-height: 1.85; }
.service-page-copy .hero-actions { margin-top: 26px; }
.page-tags { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 40px; }
.page-tags span { padding: 7px 9px; border: 1px solid #dce1d6; border-radius: 2px; color: #788477; font-size: 7px; font-weight: 700; letter-spacing: .8px; }
.page-hero-index { position: absolute; bottom: 24px; right: 7.1%; color: #98a392; font-size: 8px; font-weight: 700; letter-spacing: 1.3px; }
.service-page-art { width: 100%; max-width: 480px; aspect-ratio: 1.05; justify-self: center; position: relative; overflow: hidden; background: #e5ebdf; border-radius: 48% 52% 51% 49% / 52% 46% 54% 48%; }
.service-page-art::before,.service-page-art::after { content: ""; position: absolute; inset: 8%; border: 1px solid rgba(51,77,58,.14); border-radius: 50%; transform: rotate(-25deg); }
.service-page-art::after { inset: 2% 15%; transform: rotate(32deg); }
.clinical-art { background: #e5ebdf; }
.clinical-circle { position: absolute; z-index: 1; left: 25%; top: 20%; width: 50%; aspect-ratio: 1; border: 1px solid #78906c; border-radius: 50%; display: grid; place-items: center; }
.clinical-circle::before,.clinical-circle::after { content: ""; position: absolute; border: 1px solid rgba(95,124,89,.55); border-radius: 50%; }
.clinical-circle::before { inset: 14%; }.clinical-circle::after { inset: 32%; }
.clinical-circle span { width: 20%; aspect-ratio: 1; background: #9db36f; border-radius: 50%; box-shadow: 0 0 0 15px rgba(157,179,111,.2); }
.clinical-circle i,.clinical-circle b { position: absolute; z-index: 2; display: block; width: 2px; height: 80%; background: #557353; }
.clinical-circle i { transform: rotate(45deg); }.clinical-circle b { transform: rotate(-45deg); }
.clinical-cross { position: absolute; z-index: 2; right: 17%; top: 20%; color: #83965f; font: 38px var(--serif); }
.clinical-art-note { position: absolute; z-index: 2; bottom: 15%; left: 13%; color: #687864; font-size: 8px; font-weight: 700; line-height: 1.7; letter-spacing: 1.2px; }
.page-writing { --page-accent: #a8795d; }
.page-writing .service-page-hero { background: #f4ece5; }
.page-writing .service-page-art { background: #efe1d5; }
.page-writing .service-page-copy h1 em { color: #a8795d; }
.writing-paper { position: absolute; z-index: 1; width: 43%; height: 54%; top: 22%; left: 28%; transform: rotate(-7deg); padding: 14% 9%; background: #fbf9f4; box-shadow: 13px 18px 28px rgba(100,73,53,.12); }
.writing-paper > span { display: block; color: #9d806b; font-size: 7px; font-weight: 700; letter-spacing: 1.2px; }
.writing-paper i { display: block; height: 1px; margin-top: 15%; background: #d7c9bd; }
.writing-paper i:nth-of-type(2) { width: 80%; }.writing-paper i:nth-of-type(3) { width: 64%; }
.writing-paper b { position: absolute; right: 10%; bottom: 9%; color: #c8b093; font-size: 24px; font-weight: 400; }
.writing-orbit { position: absolute; left: 17%; top: 16%; width: 67%; height: 70%; border: 1px solid rgba(149,115,88,.28); border-radius: 50%; transform: rotate(30deg); }
.writing-side-note { position: absolute; z-index: 2; right: 11%; bottom: 15%; color: #8d7865; font-size: 7px; letter-spacing: 1.2px; line-height: 1.8; font-weight: 700; }
.page-chemicals { --page-accent: #777493; }
.page-chemicals .service-page-hero { background: #eeedf2; }
.page-chemicals .service-page-art { background: #e5e4eb; }
.page-chemicals .service-page-copy h1 em { color: #777493; }
.chem-vessel { position: absolute; z-index: 2; left: 36%; top: 22%; width: 30%; height: 52%; border: 2px solid #777493; border-top: 0; border-radius: 4px 4px 34px 34px; }
.chem-vessel::before { content: ""; position: absolute; left: 24%; top: -14%; width: 52%; height: 14%; border: 2px solid #777493; border-bottom: 0; }
.chem-vessel i { position: absolute; top: -20%; left: 31%; width: 38%; height: 8%; border: 2px solid #777493; border-radius: 3px; }
.chem-vessel b { position: absolute; left: 1px; right: 1px; bottom: 1px; height: 46%; border-radius: 0 0 30px 30px; background: rgba(164,159,196,.55); }
.chem-vessel span { position: absolute; left: 12%; right: 12%; bottom: 47%; z-index: 2; height: 1px; background: #777493; }
.chem-bubble { position: absolute; z-index: 3; width: 7px; height: 7px; border: 1px solid #777493; border-radius: 50%; }
.bubble-one { left: 48%; bottom: 37%; }.bubble-two { left: 56%; bottom: 44%; width: 5px; height: 5px; }
.chem-arc { position: absolute; left: 15%; top: 18%; width: 70%; height: 65%; border: 1px solid rgba(119,116,147,.3); border-radius: 50%; transform: rotate(25deg); }
.chem-art-note { position: absolute; z-index: 2; left: 12%; bottom: 14%; color: #777493; font-size: 7px; line-height: 1.8; letter-spacing: 1.1px; font-weight: 700; }
.page-research { --page-accent: #83915e; }
.page-research .service-page-hero { background: #eff1e4; }
.page-research .service-page-art { background: #e5e9d7; }
.page-research .service-page-copy h1 em { color: #82915e; }
.research-page-sun { position: absolute; width: 37%; aspect-ratio: 1; left: 33%; top: 18%; border-radius: 50%; background: #d4df9d; box-shadow: 0 0 0 17px rgba(212,223,157,.24); }
.research-page-stem { position: absolute; z-index: 1; left: 49%; top: 25%; height: 54%; width: 2px; background: #567255; transform: rotate(12deg); }
.rp-leaf { position: absolute; z-index: 2; width: 30%; height: 15%; border: 1px solid #617d5d; border-radius: 100% 0 100% 0; background: rgba(154,178,127,.65); }
.rp-one { top: 39%; left: 20%; transform: rotate(12deg); }.rp-two { top: 51%; left: 49%; transform: scaleX(-1) rotate(8deg); }.rp-three { top: 60%; left: 26%; transform: rotate(-16deg) scale(.85); }.rp-four { top: 29%; left: 51%; transform: scaleX(-1) rotate(16deg) scale(.8); }
.research-page-caption { position: absolute; z-index: 2; left: 13%; bottom: 13%; color: #6f7d64; font-size: 7px; letter-spacing: 1.1px; font-weight: 700; line-height: 1.7; }
.service-overview { padding-top: 80px; padding-bottom: 83px; }
.overview-grid { display: grid; grid-template-columns: .95fr 1.05fr; gap: 10%; align-items: end; margin-top: 24px; }
.overview-grid h2,.writing-page-intro h2,.catalog-heading h2,.portfolio-heading h2,.plant-support h2,.process-heading h2 { margin: 0; font: 600 clamp(37px,4.2vw,54px)/1.12 var(--display); letter-spacing: -.06em; }
.overview-grid h2 em,.writing-page-intro h2 em,.catalog-heading h2 em,.portfolio-heading h2 em,.plant-support h2 em,.process-heading h2 em { color: #84956d; }
.overview-grid > p,.writing-page-intro > p,.catalog-heading > p,.portfolio-heading > p { max-width: 470px; margin: 0 0 3px; color: #6f7c73; font-size: 11px; line-height: 1.9; }
.service-detail-grid { padding-top: 0; padding-bottom: 100px; display: grid; grid-template-columns: repeat(3,1fr); gap: 12px; }
.service-detail-card { min-height: 300px; padding: 23px 22px; background: #f3f5ef; position: relative; }
.service-detail-card > span:first-child,.supply-service-grid article > span,.research-topic-grid article > span { color: #93a274; font-size: 8px; font-weight: 700; letter-spacing: .7px; }
.detail-symbol { margin: 17px 0; color: #839563; font: 26px var(--display); }
.service-detail-card h3,.supply-service-grid h3,.research-topic-grid h3 { margin: 0 0 9px; font: 600 16px/1.35 var(--display); letter-spacing: -.4px; }
.service-detail-card > p,.service-detail-card li,.supply-service-grid p,.research-topic-grid p { color: #717c73; font-size: 9px; line-height: 1.75; }
.service-detail-card > p { margin: 0 0 12px; }
.service-detail-card ul { padding-left: 15px; margin: 0; }
.service-detail-card li { padding: 3px 0; }
.service-contact-card { min-height: 300px; padding: 26px; background: #294b3c; color: white; display: flex; flex-direction: column; align-items: flex-start; justify-content: center; }
.service-contact-card h3 { margin: 23px 0 8px; font: 600 23px/1.2 var(--display); letter-spacing: -.7px; }
.service-contact-card > p { color: #c2ccc2; font-size: 10px; line-height: 1.8; }
.service-contact-card .button { margin-top: 10px; }
.service-next { padding-top: 28px; padding-bottom: 28px; min-height: 125px; background: #f3f5ef; display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.service-next > div > span { color: #879477; font-size: 8px; font-weight: 700; letter-spacing: 1px; }
.service-next h2 { margin: 8px 0 0; font: 600 20px var(--display); letter-spacing: -.5px; }
.service-next .button { margin: 0; }
.writing-page { --page-accent: #a8795d; }
.writing-page .overview-grid h2 em,.writing-page .writing-page-intro h2 em,.writing-page .process-heading h2 em { color: #a8795d; }
.writing-page-content,.research-topics { padding-top: 75px; padding-bottom: 90px; background: #f7f8f5; }
.writing-page-intro,.catalog-heading,.portfolio-heading { display: flex; align-items: end; justify-content: space-between; gap: 35px; margin-bottom: 36px; }
.writing-page-intro h2,.catalog-heading h2,.portfolio-heading h2 { margin-top: 18px; }
.writing-page-grid { display: grid; grid-template-columns: repeat(2,1fr); gap: 10px; }
.writing-page-grid article,.supply-service-grid article,.research-topic-grid article { min-height: 170px; padding: 21px 22px; background: #fff; border: 1px solid #edf0e9; }
.writing-page-grid article > span,.process-steps article > span,.plant-support-list article > span { color: #9aaa77; font-size: 8px; font-weight: 700; }
.writing-page-grid h3 { margin: 16px 0 8px; font: 600 14px var(--display); }
.writing-page-grid p { max-width: 500px; margin: 0; color: #717c73; font-size: 9px; line-height: 1.8; }
.writing-process { padding-top: 82px; padding-bottom: 82px; }
.process-heading { display: flex; align-items: end; justify-content: space-between; gap: 30px; margin-bottom: 32px; }
.process-heading h2 { margin-top: 16px; }
.process-steps { display: grid; grid-template-columns: repeat(5,1fr); border-top: 1px solid #dfe4da; border-bottom: 1px solid #dfe4da; }
.process-steps article { padding: 20px 18px; border-right: 1px solid #dfe4da; }
.process-steps article:first-child { padding-left: 0; }.process-steps article:last-child { border: 0; }
.process-steps h3 { margin: 13px 0 7px; font: 600 12px var(--display); }
.process-steps p,.integrity-note { margin: 0; color: #737e75; font-size: 9px; line-height: 1.75; }
.integrity-note { margin-top: 20px; padding: 14px 17px; background: #f4eee8; }
.chemicals-page-content { padding-top: 75px; padding-bottom: 90px; background: #f7f8f5; }
.page-chemicals .overview-grid h2 em,.page-chemicals .writing-page-intro h2 em,.page-chemicals .catalog-heading h2 em { color: #777493; }
.supply-service-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 10px; }
.supply-service-grid article { min-height: 158px; }
.supply-service-grid h3 { margin-top: 20px; }
.supply-service-grid p { margin: 0; }
.product-catalog { padding-top: 80px; padding-bottom: 90px; }
.catalog-heading { margin-bottom: 32px; }
.catalog-heading h2,.portfolio-heading h2 { margin-top: 17px; }
.catalog-card { padding: 27px; display: grid; grid-template-columns: 65px 1fr auto; gap: 20px; align-items: center; background: #e9ece4; }
.catalog-badge { width: 55px; height: 55px; display: grid; place-content: center; text-align: center; border: 1px solid #96a67a; border-radius: 50%; color: #687a52; font-size: 8px; font-weight: 700; line-height: 1.4; transform: rotate(-8deg); }
.catalog-copy > span { color: #899586; font-size: 7px; font-weight: 700; letter-spacing: .9px; }
.catalog-copy h3 { margin: 8px 0; font: 600 17px var(--display); }
.catalog-copy p { max-width: 650px; margin: 0; color: #707b72; font-size: 9px; line-height: 1.8; }
.catalog-uses { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 14px; }
.catalog-uses span { padding: 6px 8px; border: 1px solid #cbd2c3; color: #6b786d; font-size: 6px; font-weight: 700; letter-spacing: .5px; }
.catalog-cta { padding: 12px 14px; border: 1px solid #b8c2af; border-radius: 99px; white-space: nowrap; font-size: 9px; font-weight: 700; }
.catalog-cta span { margin-left: 8px; color: #81915e; font-size: 14px; }
.catalog-specs { padding: 20px 0; border-bottom: 1px solid var(--line); }
.catalog-specs h3 { margin: 0 0 14px; font: 600 12px var(--display); }
.catalog-specs > div { display: flex; flex-wrap: wrap; gap: 8px; }
.catalog-specs > div span { padding: 7px 9px; background: #f1f3ed; color: #748073; font-size: 7px; font-weight: 700; letter-spacing: .5px; }
.catalog-specs > p,.portfolio-note { max-width: 740px; margin: 13px 0 0; color: #828c83; font-size: 8px; line-height: 1.7; }
.research-topics { background: #fff; }
.page-research .overview-grid h2 em,.page-research .writing-page-intro h2 em,.page-research .portfolio-heading h2 em,.page-research .plant-support h2 em { color: #82915e; }
.research-topic-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 10px; }
.research-topic-grid article { min-height: 155px; background: #f5f6f1; }
.research-topic-grid h3 { margin-top: 18px; }
.research-topic-grid p { margin: 0; }
.publication-portfolio { padding-top: 80px; padding-bottom: 85px; }
.portfolio-columns { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.portfolio-columns article { min-height: 230px; padding: 25px; background: #eef1e8; }
.portfolio-columns article:nth-child(2) { background: #f2ebe5; }
.portfolio-badge { display: inline-block; padding: 7px 9px; color: #65794f; background: #dfe7d3; font-size: 7px; font-weight: 700; letter-spacing: .7px; }
.portfolio-client { color: #986d52; background: #e9dace; }
.portfolio-columns h3 { margin: 24px 0 9px; font: 600 17px var(--display); }
.portfolio-columns p { max-width: 430px; margin: 0; color: #717c73; font-size: 9px; line-height: 1.8; }
.portfolio-columns a { display: inline-block; margin-top: 18px; padding-bottom: 6px; border-bottom: 1px solid #b7c1ad; font-size: 9px; font-weight: 700; }
.portfolio-columns a span { margin-left: 10px; color: #829362; }
.portfolio-note { padding: 12px 15px; background: #f5f6f2; }
.plant-support { padding-top: 80px; padding-bottom: 85px; display: grid; grid-template-columns: .9fr 1.1fr; gap: 10%; background: #e9ece4; }
.plant-support h2 { margin-top: 21px; }
.plant-support-copy > p { max-width: 400px; color: #707b72; font-size: 10px; line-height: 1.8; }
.plant-support-copy .button { margin-top: 12px; }
.plant-support-list article { display: grid; grid-template-columns: 30px 1fr; gap: 12px; padding: 13px 0; border-bottom: 1px solid #d2d8ce; }
.plant-support-list article:first-child { padding-top: 0; }
.plant-support-list article:last-child { border-bottom: 0; }
.plant-support-list p { margin: 0; color: #6e7a70; font-size: 9px; line-height: 1.8; }

@media (max-width: 1000px) {
  .service-page-hero { padding-left: 7%; padding-right: 7%; }
  .service-detail-grid { grid-template-columns: repeat(2,1fr); }
  .service-detail-card,.service-contact-card { min-height: 280px; }
}
@media (max-width: 700px) {
  .service-page-hero { min-height: 0; padding: 37px 6% 57px; display: flex; flex-direction: column; align-items: stretch; gap: 26px; }
  .page-back { margin-bottom: 27px; }
  .service-page-copy h1 { margin-top: 21px; font-size: clamp(43px,11vw,65px); }
  .service-page-copy > p { font-size: 11px; }
  .service-page-copy .hero-actions { gap: 15px; }
  .page-tags { margin-top: 25px; }
  .service-page-art { width: min(100%,430px); align-self: center; }
  .page-hero-index { right: 6%; bottom: 18px; }
  .service-overview { padding-top: 63px; padding-bottom: 63px; }
  .overview-grid { grid-template-columns: 1fr; gap: 17px; margin-top: 19px; }
  .overview-grid h2,.writing-page-intro h2,.catalog-heading h2,.portfolio-heading h2,.plant-support h2,.process-heading h2 { font-size: clamp(36px,9vw,50px); }
  .service-detail-grid { padding-bottom: 65px; grid-template-columns: 1fr; gap: 9px; }
  .service-detail-card { min-height: 0; padding: 19px; }
  .service-detail-card ul { padding-bottom: 3px; }
  .service-contact-card { min-height: 250px; }
  .service-next { min-height: 110px; padding-top: 20px; padding-bottom: 20px; }
  .service-next h2 { font-size: 16px; }.service-next .button { padding: 0 12px; gap: 8px; font-size: 8px; }
  .writing-page-content,.chemicals-page-content,.research-topics { padding-top: 60px; padding-bottom: 65px; }
  .writing-page-intro,.catalog-heading,.portfolio-heading,.process-heading { display: block; margin-bottom: 25px; }
  .writing-page-intro > p,.catalog-heading > p,.portfolio-heading > p { margin-top: 15px; }
  .writing-page-grid,.supply-service-grid,.research-topic-grid { grid-template-columns: 1fr; gap: 8px; }
  .writing-page-grid article,.supply-service-grid article,.research-topic-grid article { min-height: 0; padding: 18px; }
  .writing-page-grid h3,.supply-service-grid h3,.research-topic-grid h3 { margin-top: 12px; }
  .writing-process,.product-catalog,.publication-portfolio { padding-top: 62px; padding-bottom: 65px; }
  .process-heading { margin-bottom: 22px; }
  .process-steps { grid-template-columns: 1fr; border-bottom: 0; }
  .process-steps article,.process-steps article:first-child { display: grid; grid-template-columns: 28px 1fr; gap: 3px 9px; padding: 13px 0; border-right: 0; border-bottom: 1px solid #dfe4da; }
  .process-steps article > span { grid-row: 1 / 3; }.process-steps h3 { margin: 0; }
  .catalog-card { grid-template-columns: 47px 1fr; gap: 13px; padding: 18px; }
  .catalog-badge { width: 43px; height: 43px; font-size: 7px; }
  .catalog-copy > span { font-size: 6px; }
  .catalog-cta { grid-column: 2; justify-self: start; padding: 10px 12px; }
  .catalog-specs { padding-top: 17px; }
  .portfolio-columns { grid-template-columns: 1fr; gap: 9px; }
  .portfolio-columns article { min-height: 200px; padding: 20px; }
  .plant-support { padding-top: 62px; padding-bottom: 65px; grid-template-columns: 1fr; gap: 27px; }
}

/* Service pages each use a distinct visual language within the shared brand. */
.service-page-hero { min-height: 650px; padding-top: 72px; padding-bottom: 82px; }
.service-page-copy h1 { max-width: 700px; }
.service-page-art { border-radius: 2px; }

.page-clinical .service-page-hero { color: #f5f7ef; background: #203c31; }
.page-clinical .service-page-hero::after { content: ""; position: absolute; width: 54vw; height: 54vw; right: -17vw; top: -33vw; border: 1px solid rgba(222,236,180,.12); border-radius: 50%; box-shadow: 0 0 0 40px rgba(222,236,180,.025),0 0 0 95px rgba(222,236,180,.025); }
.page-clinical .eyebrow { color: #b7c2b3; }
.page-clinical .service-page-copy h1 { font-size: clamp(52px,6.4vw,84px); }
.page-clinical .service-page-copy h1 em { color: #d8e6a3; }
.page-clinical .service-page-copy > p { color: #c0cdc2; }
.page-clinical .button-primary { color: #203c31; background: #dce9af; }
.page-clinical .button-primary:hover { background: #f0f4db; }
.page-clinical .page-back { color: #b2c0b5; }
.page-clinical .text-link { color: #edf2e8; }
.page-clinical .text-link span { color: #d8e6a3; }
.page-clinical .page-tags span { color: #d0dacd; border-color: rgba(224,237,212,.25); }
.page-clinical .page-hero-index { color: #aebcad; }
.page-clinical .clinical-art { background: #e8eddd; }
.page-clinical .clinical-art-note { color: #4d674f; }
.page-clinical .service-detail-grid { background: #f1f3ed; }
.page-clinical .service-detail-card { background: white; border: 1px solid #e4e9df; box-shadow: 0 8px 24px rgba(35,53,42,.035); }
.page-clinical .service-detail-card:nth-child(2) { transform: translateY(20px); }
.page-clinical .service-detail-card:nth-child(4) { transform: translateY(20px); }
.page-clinical .service-contact-card { background: #8b9c6a; }
.page-clinical .service-contact-card .eyebrow { color: #f0f3e8; }
.page-clinical .service-next { background: #203c31; color: white; }
.page-clinical .service-next > div > span { color: #c3d197; }
.page-clinical .service-next .button-dark { color: #203c31; background: #dce9af; }

.page-writing .service-page-hero { background: #f2e9df; }
.page-writing .service-page-hero::after { content: "02"; position: absolute; right: 4%; top: 6%; color: rgba(158,116,83,.075); font: 800 min(48vw,620px)/1 var(--display); letter-spacing: -.12em; }
.page-writing .service-page-copy { max-width: 650px; }
.page-writing .service-page-copy h1 { font: 500 clamp(53px,6.4vw,82px)/.98 var(--serif); letter-spacing: -.065em; }
.page-writing .service-page-copy h1 em { color: #a66f4c; }
.page-writing .service-page-copy > p { max-width: 425px; }
.page-writing .service-page-art { background: #e9d7c5; overflow: visible; }
.page-writing .service-page-art::before { inset: 11%; border-color: rgba(153,104,72,.24); }
.page-writing .service-page-art::after { inset: -4% 23%; border-color: rgba(153,104,72,.18); }
.page-writing .writing-paper { width: 49%; height: 64%; left: 23%; top: 16%; padding: 16% 10%; transform: rotate(-5deg); box-shadow: 18px 23px 35px rgba(100,73,53,.19); }
.page-writing .writing-paper > span { font-size: 8px; letter-spacing: 1.5px; }
.page-writing .writing-paper i { margin-top: 18%; }
.page-writing .writing-side-note { right: 5%; bottom: 12%; }
.page-writing .writing-page-content { background: #faf8f4; }
.page-writing .writing-page-grid { gap: 0 34px; }
.page-writing .writing-page-grid article { min-height: 160px; padding: 22px 4px 20px; border: 0; border-top: 1px solid #ddcfc2; background: transparent; position: relative; }
.page-writing .writing-page-grid article::after { content: "↗"; position: absolute; top: 18px; right: 4px; color: #b37f5b; font-size: 13px; }
.page-writing .writing-page-grid article > span { color: #aa7855; }
.page-writing .writing-page-grid h3 { font: 600 17px var(--serif); }
.page-writing .writing-process { background: #ede1d5; }
.page-writing .process-steps { border-color: #d1bdab; }
.page-writing .process-steps article { border-color: #d1bdab; }
.page-writing .process-steps article > span { color: #a66f4c; }
.page-writing .integrity-note { background: rgba(255,255,255,.54); }
.page-writing .service-next { background: #46392f; color: white; }
.page-writing .service-next > div > span { color: #e0bd9a; }
.page-writing .service-next .button-dark { background: #e3c3a5; color: #3c3027; }

.page-chemicals .service-page-hero { color: #f7f6fc; background: #29283e; }
.page-chemicals .service-page-hero::before { content: ""; position: absolute; inset: 0; opacity: .17; background-image: linear-gradient(rgba(207,205,235,.28) 1px,transparent 1px),linear-gradient(90deg,rgba(207,205,235,.28) 1px,transparent 1px); background-size: 42px 42px; mask-image: linear-gradient(90deg,transparent 2%,#000 75%); }
.page-chemicals .service-page-copy h1 { font-size: clamp(50px,6vw,78px); }
.page-chemicals .service-page-copy h1 em { color: #c6c2e5; }
.page-chemicals .service-page-copy > p { color: #c7c6d6; }
.page-chemicals .page-back,.page-chemicals .page-hero-index { color: #c0bfd2; }
.page-chemicals .eyebrow { color: #c3c2d5; }
.page-chemicals .text-link { color: #f0eff6; }
.page-chemicals .text-link span { color: #c6c2e5; }
.page-chemicals .button-primary { color: #29283e; background: #d8d5ec; }
.page-chemicals .button-primary:hover { background: #f1eff9; }
.page-chemicals .page-tags span { color: #d2d0e1; border-color: rgba(226,225,241,.23); }
.page-chemicals .chemicals-art { background: #e8e7f0; box-shadow: 0 20px 55px rgba(8,7,23,.18); }
.page-chemicals .chemicals-art::before,.page-chemicals .chemicals-art::after { border-color: rgba(91,88,129,.2); }
.page-chemicals .chem-vessel { filter: drop-shadow(0 9px 8px rgba(72,68,110,.08)); }
.page-chemicals .chem-vessel b { background: linear-gradient(180deg,rgba(179,176,216,.55),rgba(131,128,176,.7)); }
.page-chemicals .chem-art-note { background: #e8e7f0; padding: 5px 8px; }
.page-chemicals .service-overview { background: #f8f7fb; }
.page-chemicals .chemicals-page-content { background: #eeedf4; }
.page-chemicals .supply-service-grid article { background: #f9f8fc; border-color: #dedce9; }
.page-chemicals .supply-service-grid article > span { color: #777493; }
.page-chemicals .catalog-card { background: #29283e; color: white; }
.page-chemicals .catalog-copy > span { color: #c4c2de; }
.page-chemicals .catalog-copy p { color: #d0cfdd; }
.page-chemicals .catalog-badge { color: #e0def5; border-color: #b1aed1; }
.page-chemicals .catalog-uses span { color: #e0def0; border-color: #696783; }
.page-chemicals .catalog-cta { color: #29283e; background: #d8d5ec; border: 0; }
.page-chemicals .catalog-cta span { color: #575577; }
.page-chemicals .catalog-specs > div span { background: #e9e8f0; }
.page-chemicals .service-next { background: #dcdbe8; }
.page-chemicals .service-next > div > span { color: #656382; }
.page-chemicals .service-next .button-dark { background: #29283e; }

.page-research .service-page-hero { color: #f4f4e8; background: #344835; }
.page-research .service-page-hero::after { content: ""; position: absolute; width: 48vw; height: 48vw; left: 36%; bottom: -48vw; border: 1px solid rgba(226,234,191,.18); border-radius: 50%; box-shadow: 0 0 0 33px rgba(226,234,191,.035),0 0 0 75px rgba(226,234,191,.03); }
.page-research .service-page-copy h1 { font: 500 clamp(49px,6vw,77px)/1.01 var(--serif); letter-spacing: -.06em; }
.page-research .service-page-copy h1 em { color: #dce6a9; }
.page-research .service-page-copy > p { color: #d1d8c8; }
.page-research .page-back,.page-research .page-hero-index { color: #bec9b4; }
.page-research .eyebrow { color: #c5d0ba; }
.page-research .text-link { color: #f2f3e8; }
.page-research .text-link span { color: #dce6a9; }
.page-research .button-primary { color: #344835; background: #dce6a9; }
.page-research .button-primary:hover { background: #f0f3d9; }
.page-research .page-tags span { color: #d9dfcf; border-color: rgba(229,238,209,.25); }
.page-research .research-page-art { background: #dfe7c9; border-radius: 50% 50% 3px 50%; transform: rotate(3deg); }
.page-research .research-page-art::before { inset: 12%; border-color: rgba(68,93,58,.22); }
.page-research .research-page-art::after { inset: 2% 20%; border-color: rgba(68,93,58,.19); }
.page-research .research-page-sun { background: #bdce83; box-shadow: 0 0 0 18px rgba(189,206,131,.24); }
.page-research .research-page-caption { padding: 7px 9px; background: #dfe7c9; }
.page-research .research-topics { background: #f1f3e9; }
.page-research .research-topic-grid { grid-template-columns: repeat(6,1fr); }
.page-research .research-topic-grid article { grid-column: span 2; min-height: 178px; background: #fff; border: 0; border-bottom: 2px solid #ced8b7; }
.page-research .research-topic-grid article:nth-child(4) { grid-column: 2 / span 2; }
.page-research .research-topic-grid article:nth-child(5) { grid-column: 4 / span 2; }
.page-research .research-topic-grid article > span { color: #809259; }
.page-research .portfolio-columns article { padding: 29px; border-radius: 2px 36px 2px 2px; }
.page-research .portfolio-columns article:nth-child(2) { border-radius: 36px 2px 2px 2px; }
.page-research .portfolio-columns article:first-child { background: #e8eddd; }
.page-research .portfolio-columns article:nth-child(2) { background: #f1e8dd; }
.page-research .plant-support { background: #344835; color: #f5f5eb; }
.page-research .plant-support-copy .eyebrow { color: #c5d0ba; }
.page-research .plant-support h2 em { color: #dce6a9; }
.page-research .plant-support-copy > p,.page-research .plant-support-list p { color: #d0d8c7; }
.page-research .plant-support-list article { border-color: rgba(235,241,224,.2); }
.page-research .plant-support-list article > span { color: #dce6a9; }
.page-research .service-next { background: #dfe7c9; }
.page-research .service-next > div > span { color: #71834f; }
.page-research .service-next .button-dark { background: #344835; }

@media (max-width: 700px) {
  .service-page-hero { min-height: 0; padding-top: 36px; padding-bottom: 54px; }
  .service-page-copy h1 { font-size: clamp(44px,11vw,65px); }
  .page-clinical .service-page-hero { padding-bottom: 54px; }
  .page-clinical .service-detail-card:nth-child(2),.page-clinical .service-detail-card:nth-child(4) { transform: none; }
  .page-writing .service-page-hero::after { right: -8%; top: 28%; font-size: 62vw; }
  .page-writing .service-page-copy h1 { font-size: clamp(45px,11vw,68px); }
  .page-writing .writing-page-grid { gap: 0; }
  .page-writing .writing-page-grid article { min-height: 0; padding: 18px 22px 18px 0; }
  .page-chemicals .service-page-hero::before { background-size: 28px 28px; }
  .page-chemicals .service-page-copy h1 { font-size: clamp(43px,10.5vw,65px); }
  .page-research .service-page-copy h1 { font-size: clamp(45px,10.5vw,67px); }
  .page-research .research-topic-grid { grid-template-columns: 1fr; }
  .page-research .research-topic-grid article,.page-research .research-topic-grid article:nth-child(4),.page-research .research-topic-grid article:nth-child(5) { grid-column: auto; min-height: 0; }
  .page-research .portfolio-columns article { padding: 21px; }
}

.contact-page { background: #f5f6f2; }
.contact-hero { min-height: 680px; display: grid; grid-template-columns: 1fr .95fr; background: #203c31; }
.contact-hero-copy { padding: 67px 9% 46px 14%; position: relative; overflow: hidden; color: #f4f6ed; }
.contact-hero-copy > *:not(.contact-hero-orbit) { position: relative; z-index: 1; }
.contact-hero-copy .page-back { margin: 0 0 49px; color: #b7c3b5; }
.contact-hero-copy h1 { margin: 26px 0 18px; font: 600 clamp(49px,6vw,76px)/1.03 var(--display); letter-spacing: -.07em; }
.contact-hero-copy h1 em { color: #dce6a9; font: 400 1.03em var(--serif); letter-spacing: -.06em; }
.contact-hero-copy > p { max-width: 370px; margin: 0; color: #c4d0c4; font-size: 12px; line-height: 1.9; }
.contact-email-block { display: flex; flex-direction: column; gap: 8px; margin-top: 46px; }
.contact-email-block > span,.contact-form-heading > span { color: #aab9a9; font-size: 7px; font-weight: 700; letter-spacing: 1.3px; }
.contact-email-block a { width: fit-content; padding-bottom: 7px; border-bottom: 1px solid rgba(221,235,204,.35); font: 500 18px var(--display); }
.contact-email-block .email-arrow { display: inline-flex; width: 18px; height: 18px; margin-left: 11px; color: #dce6a9; vertical-align: -4px; }
.contact-email-block .email-arrow svg { width: 100%; height: 100%; }
.contact-services { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 35px; max-width: 390px; }
.contact-services span { padding: 7px 8px; border: 1px solid rgba(220,233,217,.2); color: #c5d0c3; font-size: 6px; font-weight: 700; letter-spacing: .7px; }
.contact-hero-orbit { position: absolute; width: 320px; height: 320px; right: -130px; top: 28%; border: 1px solid rgba(220,233,169,.2); border-radius: 50%; box-shadow: 0 0 0 24px rgba(220,233,169,.035),0 0 0 58px rgba(220,233,169,.025); }
.contact-hero-orbit i,.contact-hero-orbit b,.contact-hero-orbit span { position: absolute; display: block; border: 1px solid rgba(220,233,169,.38); border-radius: 50%; }
.contact-hero-orbit i { inset: 22%; }.contact-hero-orbit b { inset: 42%; background: #dce6a9; box-shadow: 0 0 0 12px rgba(220,230,169,.16); }.contact-hero-orbit span { width: 7px; height: 7px; top: 17%; left: 24%; background: #dce6a9; }
.contact-form-wrap { align-self: center; margin: 34px 12% 34px 4%; padding: 34px clamp(23px,4vw,54px) 32px; position: relative; z-index: 2; background: #fff; box-shadow: 0 22px 60px rgba(11,27,20,.16); }
.contact-form-heading { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding-bottom: 16px; border-bottom: 1px solid #e8ebe4; }
.contact-form-heading > span { color: #7e8a7d; }
.contact-form-heading div { display: flex; align-items: center; gap: 7px; color: #96a080; font-size: 7px; font-weight: 700; }
.contact-form-heading i { width: 28px; height: 1px; background: #d7ddce; }
.contact-form-wrap h2 { margin: 23px 0 6px; font: 600 27px var(--display); letter-spacing: -1px; }
.form-intro { margin: 0 0 20px; color: #758078; font-size: 10px; }
.inquiry-form { display: flex; flex-direction: column; gap: 13px; }
.form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.inquiry-form label { display: flex; flex-direction: column; gap: 7px; color: #36463b; font-size: 9px; font-weight: 700; }
.inquiry-form label > span:not(.optional-label) { display: contents; color: #8ca065; }
.inquiry-form .optional-label { margin-left: 5px; color: #a3aaa3; font-size: 6px; letter-spacing: .7px; }
.inquiry-form input,.inquiry-form select,.inquiry-form textarea { width: 100%; min-height: 39px; border: 1px solid #dfe4db; border-radius: 0; background: #fbfcf9; padding: 10px 11px; color: #26382c; font: 400 10px var(--sans); outline: none; transition: border-color .2s,box-shadow .2s; }
.inquiry-form textarea { min-height: 90px; resize: vertical; line-height: 1.6; }
.inquiry-form input::placeholder,.inquiry-form textarea::placeholder { color: #a2aaa1; }
.inquiry-form input:focus,.inquiry-form select:focus,.inquiry-form textarea:focus { border-color: #839765; box-shadow: 0 0 0 3px rgba(131,151,101,.12); }
.inquiry-form select:invalid { color: #a2aaa1; }
.form-submit { width: 100%; justify-content: space-between; min-height: 45px; margin-top: 2px; border: 0; cursor: pointer; }
.form-note { margin: -5px 0 0; color: #909990; text-align: center; font-size: 8px; line-height: 1.6; }
.form-status { margin: 0; color: #436443; font-size: 9px; line-height: 1.6; }
.contact-footer-band { min-height: 125px; padding: 25px 10.5%; display: flex; align-items: center; justify-content: space-between; background: #e8ece2; }
.contact-footer-band > div > span { color: #81906d; font-size: 7px; font-weight: 700; letter-spacing: 1.1px; }
.contact-footer-band h2 { margin: 7px 0 0; font: 600 20px var(--display); letter-spacing: -.5px; }
.contact-footer-band > a { padding-bottom: 6px; border-bottom: 1px solid #b8c2ad; font-size: 9px; font-weight: 700; }
.contact-footer-band > a span { margin-left: 13px; color: #859764; font-size: 14px; }

@media (max-width: 900px) {
  .contact-hero-copy { padding-left: 8%; padding-right: 6%; }
  .contact-form-wrap { margin-right: 7%; padding-left: 25px; padding-right: 25px; }
  .contact-hero-copy h1 { font-size: clamp(45px,6vw,65px); }
}
@media (max-width: 700px) {
  .contact-hero { grid-template-columns: 1fr; }
  .contact-hero-copy { padding: 37px 6% 37px; }
  .contact-hero-copy .page-back { margin-bottom: 32px; }
  .contact-hero-copy h1 { font-size: clamp(46px,11vw,66px); }
  .contact-hero-copy > p { font-size: 11px; max-width: 340px; }
  .contact-email-block { margin-top: 30px; }
  .contact-services { margin-top: 24px; }
  .contact-hero-orbit { width: 210px; height: 210px; right: -120px; top: 24%; }
  .contact-form-wrap { margin: 0; padding: 26px 6% 27px; box-shadow: none; }
  .contact-form-wrap h2 { font-size: 24px; }
  .form-row { grid-template-columns: 1fr; gap: 13px; }
  .inquiry-form input,.inquiry-form select { min-height: 43px; }
  .contact-footer-band { padding: 22px 6%; gap: 12px; }
  .contact-footer-band h2 { font-size: 17px; }
  .contact-footer-band > a { white-space: nowrap; font-size: 8px; }
}

@media (max-width: 700px) {
  .hero-art {
    height: auto;
    min-height: 0;
    aspect-ratio: auto;
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding: 58px 16px 48px;
    border-radius: 20px;
  }
  .journey-topline { top: 21px; left: 18px; right: 18px; font-size: 8px; }
  .journey-path,.journey-hub { display: none; }
  .journey-node {
    position: relative;
    top: auto;
    right: auto;
    bottom: auto;
    left: auto;
    width: 100%;
    min-height: 58px;
    padding: 8px 10px;
    gap: 9px;
    border-radius: 8px;
  }
  .journey-icon { width: 35px; height: 35px; border-radius: 9px; }
  .journey-copy { gap: 3px; }
  .journey-copy small { font-size: 8px; }
  .journey-copy b { font-size: 12px; }
  .journey-copy em { font-size: 9px; }
  .journey-footline { left: 18px; right: 18px; bottom: 18px; font-size: 7px; letter-spacing: .55px; }
}

/* IndQuench logo palette: navy, royal blue, cyan, and a restrained orange accent. */
:root {
  --ink: #081531;
  --muted: #596982;
  --paper: #f6f8fc;
  --green: #134ea8;
  --lime: #ff8118;
  --line: rgba(8,21,49,.14);
}

.brand { gap: 0; }
.brand-mark {
  width: 260px;
  height: 68px;
  background: url("assets/indquench-logo.png") left center / contain no-repeat;
}
.brand-mark svg { display: none; }
.brand-name {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0,0,0,0);
  white-space: nowrap;
  border: 0;
}
.footer-brand .brand-mark { width: 200px; height: 40px; }
.site-header { background-color: rgba(246,248,252,.96); }
.header-cta:hover { background: #134ea8; }
.main-nav a:hover,.footer-links a:hover { color: #134ea8; }
.hero h1 em { color: #134ea8; }
.hero-footnote .avatar-stack i { border-color: #f6f8fc; }
.card-arrow { color: #134ea8; }
.card-foot { color: #667b9d; }
.underlined-link { border-bottom-color: #adc2e0; }
.intro-kicker { color: #647695; }
.section-heading > p,.detail-intro > p,.detail-list p,.writing-services p,.chem-copy > p,.supply-cell p,.research-copy > p,.approach-points p { color: #596982; }
.art-label,.art-index { color: #425d83; }
.hero-bottomline { color: #6e7d95; }
.avatar-stack i:first-child { background: #dce9f8; color: #134ea8; }
.avatar-stack i:nth-child(2) { background: #ffead8; color: #a94c05; }
.avatar-stack i:nth-child(3) { background: #e2e9f4; color: #45679b; }
.page-clinical .service-detail-card > span:first-child,.page-clinical .list-plus { color: #ff8118; }
.page-writing .service-page-copy h1 em { color: #134ea8; }
.page-writing .writing-page-grid h3 { color: #081531; }
.page-writing .writing-page-grid article > span { color: #3972c0; }
.page-writing .process-heading .eyebrow { color: #526783; }
.page-chemicals .service-page-copy h1 em { color: #ffb574; }
.page-research .research-topic-grid article > span { color: #3972c0; }
.page-research .research-tags span { border-color: #cbdaf0; }
.contact-form-heading > span { color: #526783; }
.contact-form-heading div { color: #134ea8; }
.inquiry-form label > span:not(.optional-label) { color: #ff8118; }
.button-primary,.button-dark { background: #134ea8; }
.button-primary:hover,.button-dark:hover { background: #0b347a; }
.text-link span,.underlined-link span,.hero-bottomline a span { color: #ff8118; }
.intro h2 span,.section-heading h2 em,.detail-intro h2 em,.research-copy h2 em,.approach-header h2 em { color: #134ea8; }
.eyebrow-dot { background: #ff8118; }
.hero-art {
  border-color: #d6e2f3;
  background: radial-gradient(ellipse at 50% 48%,#fff 0%,#eaf1fb 72%);
}
.hero-art::before {
  opacity: .36;
  background-image: linear-gradient(rgba(19,78,168,.1) 1px,transparent 1px),linear-gradient(90deg,rgba(19,78,168,.1) 1px,transparent 1px);
}
.journey-topline,.journey-footline { color: #647695; }
.journey-topline i,.journey-path circle { background: #ff8118; fill: #ff8118; }
.journey-path path { stroke: #8caedc; }
.journey-path circle { stroke: #f7f9fc; }
.journey-node { border-color: #dce6f4; }
.icon-botanical { color: #134ea8; background: #eaf1fb; }
.icon-medical { color: #134ea8; background: #eaf1fb; }
.icon-manuscript { color: #c15d0b; background: #fff1e5; }
.icon-lab { color: #134ea8; background: #eaf1fb; }
.journey-copy small { color: #5e78a0; }
.journey-hub { background: #081531; box-shadow: 0 0 0 1px #3972c0,0 9px 20px rgba(8,21,49,.2); }
.journey-hub i { background: #ff8118; color: #081531; }
.card-sage,.card-lilac,.card-yellow { background: #e9f0fa; }
.card-peach { background: #fff0e5; }
.icon-clinical,.icon-chemicals,.icon-research { color: #134ea8; }
.icon-writing { color: #c15d0b; }
.manifesto { background: #081531; }
.manifesto p em { color: #86b6f0; }
.manifesto-orb { border-color: rgba(134,182,240,.18); }
.detail-section,.writing-section,.research-section { background-color: #fff; }
.detail-list article > span:first-child,.writing-services article > span,.writing-page-grid article > span { color: #3972c0; }
.list-plus { color: #ff8118; }
.writing-feature,.process-strip { background: #eaf1fb; }
.feature-link span,.feature-scribble { color: #ff8118; }
.process-title em { color: #134ea8; }
.chemicals-section,.approach { background-color: #edf3fb; }
.chem-copy h2 em,.approach-header h2 em { color: #134ea8; }
.product-stamp,.product-arrow,.mini-icon { color: #134ea8; }
.product-stamp { border-color: #8baeda; }
.supply-grid { background: #f8faff; }
.research-art,.research-art::before { background-color: #e8f0fa; }
.research-art::before { background: #d9e7f8; }
.research-ring { border-color: rgba(19,78,168,.25); }
.research-plant,.research-plant span { border-color: #2860a6; }
.research-plant { background: #2860a6; }
.research-plant span { background: rgba(85,143,213,.32); }
.research-tags span { border-color: #d6e2f3; }
.research-note { background: #edf3fb; }
.note-spark { color: #ff8118; }
.approach { background: #f0f4fa; }
.approach-points article > span { color: #ff8118; }
.contact-section { background: #081531; }
.contact-section h2 em { color: #86b6f0; }
.contact-deco { color: rgba(255,129,24,.18); }
.button-light { color: #081531; background: #ffb574; }
.button-light:hover { background: #ffd4ad; }
.service-page-hero { background-color: #eef3fa; }
.service-page-copy h1 em { color: #134ea8; }
.page-tags span { border-color: #d7e2f2; color: #526783; }
.page-hero-index { color: #7183a0; }
.service-page-art { background-color: #e7effa; }
.service-overview { background-color: #fff; }
.overview-grid h2 em { color: #134ea8; }
.service-detail-grid,.writing-page-content,.chemicals-page-content,.research-topics { background-color: #f3f6fb; }
.service-detail-card,.writing-page-grid article,.supply-service-grid article { background-color: #fff; border-color: #e0e8f3; }
.service-detail-card > span:first-child,.supply-service-grid article > span,.research-topic-grid article > span { color: #3972c0; }
.detail-symbol { color: #134ea8; }
.service-contact-card { background: #134ea8; }
.service-next { background: #081531; color: #fff; }
.service-next > div > span { color: #ffb574; }
.service-next .button-dark { color: #081531; background: #ffb574; }
.service-next .button-dark:hover { background: #ffd4ad; }
.writing-page .writing-process { background: #eaf1fb; }
.writing-page .writing-page-grid article { border-top-color: #ccd9eb; background: transparent; }
.writing-page .writing-page-grid article::after { color: #ff8118; }
.writing-page .writing-page-grid article > span,.process-steps article > span { color: #3972c0; }
.writing-page .process-steps,.writing-page .process-steps article { border-color: #ccd9eb; }
.writing-page .integrity-note { background: #fff; }
.catalog-card,.page-chemicals .catalog-card { background: #081531; }
.catalog-badge { border-color: #7ea8dc; color: #dceaff; }
.catalog-cta { background: #ffb574; color: #081531; border-color: #ffb574; }
.catalog-cta span { color: #134ea8; }
.catalog-specs > div span { background: #eaf1fb; }
.page-research .research-topics { background: #eef4fb; }
.page-research .research-topic-grid article { border-bottom-color: #9db9df; background: #fff; }
.portfolio-columns article:first-child { background: #e9f1fb; }
.portfolio-columns article:nth-child(2) { background: #fff0e5; }
.portfolio-badge { color: #134ea8; background: #dbe8f8; }
.portfolio-client { color: #aa4f09; background: #ffe1c7; }
.portfolio-note { background: #f2f6fb; }
.page-research .plant-support { background: #081531; }
.page-research .plant-support h2 em { color: #86b6f0; }
.page-research .plant-support-list article > span { color: #ffb574; }
.page-research .plant-support-list article { border-color: rgba(229,238,250,.2); }
.page-research .service-next { background: #eaf1fb; color: #081531; }
.page-research .service-next > div > span { color: #134ea8; }
.page-research .service-next .button-dark { color: white; background: #134ea8; }
.page-clinical .service-page-hero,.page-research .service-page-hero { background: linear-gradient(120deg,#081531 0%,#134ea8 100%); }
.page-clinical .service-page-hero::after,.page-research .service-page-hero::after { border-color: rgba(219,234,252,.15); box-shadow: 0 0 0 40px rgba(219,234,252,.03),0 0 0 95px rgba(219,234,252,.02); }
.page-clinical .service-page-copy h1 em,.page-research .service-page-copy h1 em { color: #ffb574; }
.page-clinical .service-page-copy > p,.page-research .service-page-copy > p { color: #d4e1f2; }
.page-clinical .eyebrow,.page-research .eyebrow { color: #d4e1f2; }
.page-clinical .button-primary,.page-research .button-primary { color: #081531; background: #ffb574; }
.page-clinical .button-primary:hover,.page-research .button-primary:hover { background: #ffd4ad; }
.page-clinical .service-contact-card { background: #134ea8; }
.page-clinical .service-next { background: #081531; }
.page-clinical .service-next > div > span { color: #ffb574; }
.page-clinical .service-next .button-dark { color: #081531; background: #ffb574; }
.page-writing .service-page-hero { background: #eaf1fb; }
.page-writing .service-page-copy h1 em,.page-writing .writing-page-content .writing-page-intro h2 em,.page-writing .writing-process .process-heading h2 em { color: #134ea8; }
.page-writing .service-page-hero::after { color: rgba(19,78,168,.07); }
.page-writing .service-page-art { background: #dce8f7; }
.page-writing .writing-paper { background: #fff; }
.page-writing .writing-paper > span { color: #134ea8; }
.page-writing .writing-paper i { background: #c9d8ed; }
.page-writing .writing-paper b { color: #ff8118; }
.page-writing .writing-orbit { border-color: rgba(19,78,168,.22); }
.page-writing .writing-side-note { color: #134ea8; }
.page-writing .writing-process { background: #eaf1fb; }
.page-writing .service-next { background: #081531; }
.page-writing .service-next > div > span { color: #ffb574; }
.page-writing .service-next .button-dark { background: #ffb574; color: #081531; }
.page-chemicals .service-page-hero { background: linear-gradient(120deg,#081531,#134ea8); }
.page-chemicals .service-page-hero::before { opacity: .2; background-image: linear-gradient(rgba(220,234,252,.3) 1px,transparent 1px),linear-gradient(90deg,rgba(220,234,252,.3) 1px,transparent 1px); }
.page-chemicals .service-page-copy h1 em { color: #ffb574; }
.page-chemicals .service-page-copy > p { color: #d4e1f2; }
.page-chemicals .eyebrow { color: #d4e1f2; }
.page-chemicals .button-primary { color: #081531; background: #ffb574; }
.page-chemicals .button-primary:hover { background: #ffd4ad; }
.page-chemicals .chemicals-art { background: #eaf1fb; }
.page-chemicals .chem-vessel { border-color: #134ea8; }
.page-chemicals .chem-vessel i,.page-chemicals .chem-vessel::before { border-color: #134ea8; }
.page-chemicals .chem-vessel b { background: linear-gradient(180deg,rgba(71,136,207,.35),rgba(19,78,168,.55)); }
.page-chemicals .chem-vessel span,.page-chemicals .chem-bubble { background: #ff8118; border-color: #134ea8; }
.page-chemicals .chem-art-note { color: #134ea8; background: #eaf1fb; }
.page-chemicals .chemicals-page-content { background: #f2f6fc; }
.page-chemicals .supply-service-grid article { background: white; border-color: #dfe8f5; }
.page-chemicals .catalog-copy > span { color: #c6daf4; }
.page-chemicals .catalog-copy p { color: #d4e1f2; }
.page-chemicals .catalog-uses span { border-color: #496b9d; color: #e1ebf8; }
.page-chemicals .catalog-cta { color: #081531; background: #ffb574; }
.page-chemicals .service-next { background: #eaf1fb; }
.page-chemicals .service-next .button-dark { background: #134ea8; color: white; }
.page-research .research-page-art { background: #e8f0fa; }
.page-research .research-page-sun { background: #b9d2f0; box-shadow: 0 0 0 18px rgba(19,78,168,.1); }
.page-research .research-page-stem { background: #134ea8; }
.page-research .rp-leaf { border-color: #3972c0; background: rgba(93,151,217,.33); }
.page-research .research-page-caption { color: #134ea8; background: #e8f0fa; }
.contact-hero { background: linear-gradient(120deg,#081531 0%,#134ea8 100%); }
.contact-hero-copy h1 em { color: #ffb574; }
.contact-hero-orbit,.contact-hero-orbit i { border-color: rgba(255,181,116,.35); }
.contact-hero-orbit b { background: #ff8118; box-shadow: 0 0 0 12px rgba(255,129,24,.16); }
.contact-hero-orbit span { background: #ffb574; }
.contact-email-block a { border-color: rgba(255,221,188,.42); }
.contact-email-block .email-arrow { color: #ffb574; }
.contact-footer-band { background: #eaf1fb; }
.contact-footer-band > div > span { color: #134ea8; }
.contact-footer-band > a span { color: #ff8118; }

/* Keep page copy and controls comfortably readable across screen sizes. */
body { font-size: 16px; }
.main-nav a,.footer-links a,.header-cta,.button,.text-link,.underlined-link,
.feature-link,.catalog-cta,.portfolio-columns a,.contact-footer-band > a { font-size: 14px; }
.hero-intro,.intro-text p,.section-heading > p,.service-card p,.detail-intro > p,
.detail-list p,.writing-feature p,.writing-services p,.chem-copy > p,
.supply-product p,.supply-cell p,.research-copy > p,.publication-types p,
.research-note p,.approach-points p,.contact-section > p,.service-page-copy > p,
.overview-grid > p,.writing-page-intro > p,.catalog-heading > p,
.portfolio-heading > p,.service-detail-card > p,.service-detail-card li,
.supply-service-grid p,.research-topic-grid p,.service-contact-card > p,
.writing-page-grid p,.catalog-copy p,.portfolio-columns p,
.plant-support-copy > p,.plant-support-list p,.contact-hero-copy > p,
.infographic-heading > p,.clinical-pathway article small,.process-steps p,
.integrity-note,.catalog-specs > p,.portfolio-note,.product-specs,
.supply-route article > p { font-size: 15px; }
.process-strip p { font-size: 13px; }
.service-detail-card li { font-size: 14px; }
.contact-form-heading > span,.contact-form-heading div,.contact-email-block > span,
.inquiry-form label,.form-intro,.form-note,.form-status { font-size: 14px; }
.inquiry-form input,.inquiry-form select,.inquiry-form textarea { font-size: 16px; }
.service-next .button { font-size: 14px; }

@media (max-width: 700px) {
  .brand-mark { width: 196px; height: 39px; }
  .footer-brand .brand-mark { width: 176px; height: 35px; }
}

/* Content-led infographics for service pages */
.infographic-section { padding-top: 65px; padding-bottom: 72px; }
.infographic-heading { display: flex; justify-content: space-between; align-items: end; gap: 32px; margin-bottom: 33px; }
.infographic-section .eyebrow { color: #526783; }
.infographic-heading h2 { margin: 15px 0 0; font: 600 clamp(32px,4vw,47px)/1.12 var(--display); letter-spacing: -.06em; }
.infographic-heading h2 em { color: #134ea8; font-family: var(--serif); font-weight: 400; }
.infographic-heading > p { max-width: 340px; margin: 0 0 4px; color: #596982; font-size: 10px; line-height: 1.8; }

.clinical-infographic { background: #f3f6fb; }
.clinical-pathway { min-height: 189px; padding: 25px 18px 18px; position: relative; display: grid; grid-template-columns: repeat(5,1fr); align-items: center; gap: 8px; border: 1px solid #dce6f4; background: #fff; }
.pathway-connector { position: absolute; left: 6%; top: 41px; width: 88%; height: 44px; overflow: visible; }
.pathway-connector path { fill: none; stroke: #a1bbdf; stroke-width: 1.5; stroke-dasharray: 5 5; }
.clinical-pathway article { z-index: 1; min-width: 0; display: flex; flex-direction: column; align-items: center; text-align: center; }
.pathway-number { color: #6a83a7; font-size: 7px; font-weight: 700; letter-spacing: .8px; }
.pathway-icon { width: 42px; height: 42px; margin: 8px 0 10px; display: grid; place-items: center; border: 1px solid #cad9ed; border-radius: 50%; background: #fff; color: #134ea8; font-size: 18px; font-style: normal; box-shadow: 0 0 0 5px #f4f7fb; }
.clinical-pathway article:nth-of-type(4) .pathway-icon { background: #ffead8; border-color: #ffc892; color: #b84e00; }
.clinical-pathway article b { color: #081531; font: 700 11px var(--display); }
.clinical-pathway article small { margin-top: 5px; color: #596982; font-size: 8px; line-height: 1.5; }
.page-clinical .clinical-infographic { background: #edf3fb; }

.writing-infographic { background: #f8f6f2; }
.page-writing .writing-infographic { background: #f8f6f2; }
.writing-infographic .infographic-heading h2 em { color: #134ea8; }
.manuscript-map { min-height: 370px; padding: 28px 7%; position: relative; display: grid; place-items: center; overflow: hidden; background: #ede6dd; }
.manuscript-map::before,.manuscript-map::after { content: ""; position: absolute; width: 330px; height: 330px; border: 1px solid rgba(19,78,168,.15); border-radius: 50%; }
.manuscript-map::after { width: 430px; height: 430px; border-color: rgba(19,78,168,.09); }
.manuscript-sheet { width: min(300px,43%); min-height: 300px; padding: 20px 22px 13px; z-index: 1; background: #fff; box-shadow: 0 16px 36px rgba(44,42,39,.14); transform: rotate(-2deg); }
.sheet-head { display: flex; justify-content: space-between; color: #62769a; font-size: 6px; font-weight: 700; letter-spacing: 1px; }
.sheet-head i { color: #ff8118; font-size: 12px; font-style: normal; }
.sheet-title { height: 7px; width: 88%; margin-top: 16px; background: #22344d; }
.sheet-title.short { width: 62%; margin-top: 6px; }
.sheet-authors { width: 50%; height: 3px; margin-top: 9px; background: #a7b5c8; }
.sheet-block { margin-top: 17px; padding: 9px; background: #f0f4fa; }
.sheet-block b,.sheet-columns b { display: block; margin-bottom: 6px; color: #134ea8; font-size: 5px; letter-spacing: .7px; }
.sheet-block i,.sheet-columns i { display: block; height: 2px; margin: 4px 0; background: #d5dce6; }
.sheet-block i:nth-of-type(2) { width: 80%; }.sheet-block i:nth-of-type(3) { width: 91%; }
.sheet-columns { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-top: 11px; }
.sheet-columns > div > b:not(:first-child) { margin-top: 9px; }
.sheet-chart { height: 42px; padding: 4px 7px; display: flex; align-items: end; gap: 7px; border: 1px solid #d8e1ee; background: #f8fafd; }
.sheet-chart span { width: 8px; background: #86a9d6; }.sheet-chart span:nth-child(1) { height: 38%; }.sheet-chart span:nth-child(2) { height: 68%; }.sheet-chart span:nth-child(3) { height: 52%; }.sheet-chart span:nth-child(4) { height: 88%; background: #ffab67; }
.sheet-footer { margin-top: 13px; padding-top: 7px; border-top: 1px solid #e5e9ee; color: #7c8ba1; font-size: 5px; letter-spacing: .6px; }
.manuscript-callout { position: absolute; z-index: 2; min-width: 155px; padding: 11px 13px 11px 39px; border: 1px solid #e2d7cb; background: rgba(255,255,255,.95); box-shadow: 0 8px 18px rgba(65,50,39,.07); }
.manuscript-callout > span { position: absolute; left: 12px; top: 11px; color: #c0784f; font-size: 8px; font-weight: 700; }
.manuscript-callout b,.manuscript-callout small { display: block; }
.manuscript-callout b { color: #293a50; font: 700 10px var(--display); }
.manuscript-callout small { margin-top: 4px; color: #64738a; font-size: 7px; }
.callout-structure { top: 12%; left: 6%; }.callout-evidence { top: 17%; right: 6%; }.callout-journal { bottom: 15%; right: 7%; }
.map-legend { position: absolute; z-index: 2; left: 22px; bottom: 19px; display: flex; flex-wrap: wrap; gap: 12px; color: #6c7888; font-size: 6px; font-weight: 700; letter-spacing: .65px; }
.map-legend span { display: flex; align-items: center; gap: 5px; }.map-legend i { width: 5px; height: 5px; border-radius: 50%; background: #134ea8; }.map-legend span:nth-child(2) i { background: #ff8118; }.map-legend span:nth-child(3) i { background: #748baf; }

.supply-infographic { background: #eef3fa; }
.supply-route { min-height: 220px; padding: 26px 30px; display: grid; grid-template-columns: 1fr 30px 1fr 30px 1fr 30px 1fr; align-items: center; background: #081531; }
.supply-route article { min-height: 150px; padding: 17px 12px; position: relative; display: flex; flex-direction: column; align-items: center; text-align: center; border: 1px solid rgba(203,222,246,.2); background: rgba(255,255,255,.045); }
.route-index { position: absolute; right: 9px; top: 8px; color: #8faed5; font-size: 6px; font-weight: 700; }
.route-icon { width: 40px; height: 40px; margin: 4px 0 12px; display: grid; place-items: center; border: 1px solid #779ac6; border-radius: 50%; color: #c4daf5; }
.route-icon i { font: normal 16px var(--sans); }
.supply-route article:nth-of-type(2) .route-icon { color: #ffb574; border-color: #ffb574; }
.supply-route article > small { color: #b6cce8; font-size: 7px; font-weight: 700; letter-spacing: .9px; }
.supply-route article > b { margin-top: 6px; color: #fff; font: 700 10px var(--display); }
.supply-route article > p { margin: 6px 0 0; color: #c6d6e9; font-size: 7px; line-height: 1.6; }
.route-link { color: #ffb574; text-align: center; font-size: 17px; }

.phytochemical-infographic { background: #eff4ea; }
.phytochemical-infographic .infographic-heading h2 em { color: #3972c0; }
.phytochemical-map { min-height: 310px; padding: 28px 24px; position: relative; display: grid; grid-template-columns: .85fr 50px 1.1fr 1.15fr; gap: 13px; align-items: center; overflow: hidden; border: 1px solid #dbe5d1; background: linear-gradient(110deg,#f9fbf6,#e7f0e2); }
.plant-source { min-height: 140px; padding: 17px 10px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 8px; border: 1px solid #d3dfc9; background: rgba(255,255,255,.8); text-align: center; }
.source-icon { width: 45px; height: 45px; display: grid; place-items: center; border-radius: 50%; color: #134ea8; background: #eaf1fb; }
.source-icon svg { width: 34px; height: 34px; }
.plant-source b { color: #203923; font: 700 11px var(--display); }
.plant-source small { color: #596c52; font-size: 8px; }
.compound-branch { height: 170px; position: relative; }
.compound-branch::before { content: ""; position: absolute; top: 50%; left: 0; right: 0; height: 1px; background: #a8bd95; }
.compound-branch::after { content: ""; position: absolute; left: 45%; top: 15%; bottom: 15%; width: 1px; background: #a8bd95; }
.compound-branch span { position: absolute; left: 45%; width: 55%; height: 1px; background: #a8bd95; }
.compound-branch span:nth-child(1) { top: 15%; }.compound-branch span:nth-child(2) { top: 32%; }.compound-branch span:nth-child(3) { top: 50%; }.compound-branch span:nth-child(4) { top: 68%; }.compound-branch span:nth-child(5) { top: 85%; }
.compound-list { display: grid; gap: 6px; }
.compound-list article { min-height: 43px; padding: 6px 9px; display: flex; align-items: center; gap: 9px; background: #fff; border: 1px solid #e1e9da; }
.compound-list article > i { width: 27px; height: 27px; flex: 0 0 auto; display: grid; place-items: center; border-radius: 50%; background: #eaf1fb; color: #134ea8; font: 600 11px var(--serif); }
.compound-list article:nth-child(even) > i { color: #ba5d13; background: #fff0e5; }
.compound-list article span { min-width: 0; display: flex; flex-direction: column; gap: 3px; }
.compound-list article b { color: #253a2d; font: 700 9px var(--display); }
.compound-list article small { color: #62715f; font-size: 7px; }
.research-question { min-height: 178px; padding: 17px 15px; display: flex; flex-direction: column; align-items: flex-start; justify-content: center; gap: 9px; border-left: 2px solid #ff8118; background: #081531; }
.research-question > span { color: #ffb574; font-size: 7px; font-weight: 700; letter-spacing: .9px; }
.research-question > b { color: #fff; font: 700 9px var(--display); }
.research-question > i { width: 100%; height: 1px; background: rgba(224,235,249,.2); }
.research-question > small { margin-top: 3px; color: #d1deed; font-size: 7px; }

@media (max-width: 700px) {
  .infographic-section { padding-top: 52px; padding-bottom: 54px; }
  .infographic-heading { display: block; margin-bottom: 23px; }
  .infographic-heading h2 { font-size: clamp(31px,8vw,42px); }
  .infographic-heading > p { margin-top: 12px; }
  .clinical-pathway { grid-template-columns: 1fr; gap: 0; padding: 15px 15px; }
  .pathway-connector { display: none; }
  .clinical-pathway article { min-height: 67px; padding-left: 0; display: grid; grid-template-columns: 39px 1fr; grid-template-rows: 1fr 1fr; align-items: center; justify-items: start; column-gap: 10px; text-align: left; }
  .pathway-number { grid-row: 1 / 3; }
  .clinical-pathway article:not(:last-child) .pathway-number { position: relative; }
  .clinical-pathway article:not(:last-child) .pathway-number::after { content: ""; position: absolute; width: 1px; height: 24px; left: 50%; top: 25px; background: #9bb4d7; }
  .pathway-number { width: 26px; height: 26px; display: grid; place-items: center; border: 1px solid #bbcee7; border-radius: 50%; background: #f5f8fc; }
  .pathway-icon { display: none; }
  .clinical-pathway article b { align-self: end; font-size: 9px; }
  .clinical-pathway article small { align-self: start; margin-top: 3px; }
  .manuscript-map { min-height: 440px; padding: 26px 12px; }
  .manuscript-sheet { width: 62%; min-height: 277px; padding: 17px 17px 12px; }
  .manuscript-callout { min-width: 0; max-width: 128px; padding: 8px 8px 8px 28px; }
  .manuscript-callout > span { left: 8px; top: 8px; }
  .manuscript-callout b { font-size: 7px; }.manuscript-callout small { font-size: 5px; }
  .callout-structure { left: 8px; top: 12%; }.callout-evidence { right: 7px; top: 32%; }.callout-journal { right: 7px; bottom: 17%; }
  .map-legend { left: 11px; bottom: 10px; gap: 7px; font-size: 5px; }
  .supply-route { min-height: 0; padding: 15px; grid-template-columns: 1fr; gap: 7px; }
  .supply-route article { min-height: 75px; padding: 11px 12px 11px 62px; display: grid; grid-template-columns: 1fr; justify-items: start; align-content: center; text-align: left; }
  .route-index { left: 10px; top: 8px; }
  .route-icon { position: absolute; left: 13px; top: 18px; margin: 0; width: 37px; height: 37px; }
  .supply-route article > small { font-size: 6px; }.supply-route article > b { margin-top: 4px; font-size: 9px; }
  .supply-route article > p { margin-top: 3px; font-size: 6px; }
  .route-link { height: 12px; transform: rotate(90deg); font-size: 13px; }
  .phytochemical-map { grid-template-columns: 1fr; gap: 11px; padding: 16px; }
  .plant-source { min-height: 88px; flex-direction: row; justify-content: flex-start; padding: 10px 14px; text-align: left; }
  .plant-source span { flex: 0 0 auto; }
  .compound-branch { height: 15px; }
  .compound-branch::before { top: 50%; left: 50%; right: 0; }
  .compound-branch::after { display: none; }
  .compound-branch span { display: none; }
  .research-question { min-height: 140px; }
}

.page-clinical .infographic-section .eyebrow,.page-chemicals .infographic-section .eyebrow,.page-research .infographic-section .eyebrow { color: #526783; }
.page-writing .infographic-section .eyebrow { color: #526783; }

/* Increase reading sizes throughout content sections while keeping diagrams compact. */
body { font-size: 17px; }
.main-nav a,.footer-links a,.header-cta,.button,.text-link,.underlined-link,
.feature-link,.catalog-cta,.portfolio-columns a,.contact-footer-band > a { font-size: 16px; }
.hero-intro,.intro-text p,.section-heading > p,.service-card p,.detail-intro > p,
.detail-list p,.writing-feature p,.writing-services p,.chem-copy > p,
.supply-product p,.supply-cell p,.research-copy > p,.publication-types p,
.research-note p,.approach-points p,.contact-section > p,.service-page-copy > p,
.overview-grid > p,.writing-page-intro > p,.catalog-heading > p,
.portfolio-heading > p,.service-detail-card > p,.service-detail-card li,
.supply-service-grid p,.research-topic-grid p,.service-contact-card > p,
.writing-page-grid p,.catalog-copy p,.portfolio-columns p,
.plant-support-copy > p,.plant-support-list p,.contact-hero-copy > p,
.infographic-heading > p,.clinical-pathway article small,.process-steps p,
.integrity-note,.catalog-specs > p,.portfolio-note,.product-specs,
.supply-route article > p { font-size: 18px; }
.process-strip p { font-size: 16px; }
.service-card h3,.service-detail-card h3,.writing-services h3,
.writing-page-grid h3,.supply-service-grid h3,.research-topic-grid h3,
.portfolio-columns h3 { font-size: 20px; }
.clinical-pathway article b { font-size: 15px; }
.page-tags span,.research-tags span,.contact-services span,
.catalog-uses span,.portfolio-badge,.portfolio-client,
.contact-email-block > span,.contact-form-heading > span,
.contact-form-heading div,.inquiry-form label,.form-intro,.form-note,
.form-status,.contact-footer-band > div > span,.service-next > div > span,
.intro-kicker,.eyebrow,.card-top,.card-foot,.feature-index,
.writing-services article > span,.process-title,.process-strip span,
.product-label,.research-caption,.publication-types span,.page-back,
.hero-footnote,.hero-bottomline,.copyright { font-size: 13px; }
.service-next h2,.contact-footer-band h2 { font-size: 22px; }
.contact-email-block a { font-size: 18px; }
.contact-services span,.page-tags span,.research-tags span,
.catalog-uses span { padding: 8px 10px; }
.inquiry-form input,.inquiry-form select,.inquiry-form textarea { font-size: 17px; }
.service-next .button { font-size: 16px; }
.research-topic-grid article,.portfolio-columns article { min-height: 200px; }
.research-topic-grid article { padding: 24px; }
.portfolio-columns article { padding: 30px; }

@media (max-width: 700px) {
  .main-nav a,.footer-links a,.header-cta,.button,.text-link,.underlined-link,
  .feature-link,.catalog-cta,.portfolio-columns a,.contact-footer-band > a,
  .service-next .button { font-size: 15px; }
  .hero-intro,.intro-text p,.section-heading > p,.service-card p,.detail-intro > p,
  .detail-list p,.writing-feature p,.writing-services p,.chem-copy > p,
  .supply-product p,.supply-cell p,.research-copy > p,.publication-types p,
  .research-note p,.approach-points p,.contact-section > p,.service-page-copy > p,
  .overview-grid > p,.writing-page-intro > p,.catalog-heading > p,
  .portfolio-heading > p,.service-detail-card > p,.service-detail-card li,
  .supply-service-grid p,.research-topic-grid p,.service-contact-card > p,
  .writing-page-grid p,.catalog-copy p,.portfolio-columns p,
  .plant-support-copy > p,.plant-support-list p,.contact-hero-copy > p,
  .infographic-heading > p,.clinical-pathway article small,.process-steps p,
  .integrity-note,.catalog-specs > p,.portfolio-note,.product-specs,
  .supply-route article > p { font-size: 16px; }
  .process-strip p { font-size: 15px; }
  .service-card h3,.service-detail-card h3,.writing-services h3,
  .writing-page-grid h3,.supply-service-grid h3,.research-topic-grid h3,
  .portfolio-columns h3 { font-size: 19px; }
  .clinical-pathway article b { font-size: 16px; }
  .page-tags span,.research-tags span,.contact-services span,
  .catalog-uses span,.portfolio-badge,.portfolio-client,
  .contact-email-block > span,.contact-form-heading > span,
  .contact-form-heading div,.inquiry-form label,.form-intro,.form-note,
  .form-status,.contact-footer-band > div > span,.service-next > div > span,
  .intro-kicker,.eyebrow,.card-top,.card-foot,.feature-index,
  .writing-services article > span,.process-title,.process-strip span,
  .product-label,.research-caption,.publication-types span,.page-back,
  .hero-footnote,.hero-bottomline,.copyright { font-size: 12px; }
  .service-next h2,.contact-footer-band h2 { font-size: 20px; }
  .research-topic-grid article,.portfolio-columns article { min-height: 0; }
  .research-topic-grid article { padding: 20px; }
  .portfolio-columns article { padding: 22px; }
}
