/* Three separate portfolios, with compact, searchable source catalogues. */
.portfolio-menu{width:min(860px,calc(100vw - 64px));grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.portfolio-menu strong{letter-spacing:0;text-transform:none;color:var(--navy)}
.portfolio-menu strong a{font-size:16px;font-weight:700;line-height:1.5}
.portfolio-menu a{font-size:14px;line-height:1.55}
.division-section{padding-block:58px 70px}
.division-section>h2{font-size:40px;margin-bottom:32px;line-height:1.1}
.division-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.division-card{border:1px solid var(--line);border-radius:10px;overflow:hidden;background:#fff;display:flex;flex-direction:column;transition:box-shadow .25s,transform .25s}
.division-card:hover{transform:translateY(-4px);box-shadow:0 18px 35px #03243a12}
.division-image{aspect-ratio:16/9;overflow:hidden;background:var(--navy)}
.division-image .product-visual{height:100%}
.division-copy{padding:27px 25px;display:flex;flex-direction:column;flex:1}
.division-copy .eyebrow{font-size:11px;color:#935210;letter-spacing:.06em;line-height:1.6;margin-bottom:14px}
.division-copy h3{font-size:27px;line-height:1.2;margin:0 0 15px;letter-spacing:-.035em}
.division-copy p{font-size:15px;line-height:1.7;margin-bottom:24px}
.division-copy .text-link{margin-top:auto;font-size:14px}
.home-divisions{padding-bottom:10px}.home-divisions .section-intro{margin-bottom:30px}
.division-tabs{display:flex;gap:32px;border-bottom:1px solid var(--line);flex-wrap:wrap;margin-bottom:30px}
.division-tabs a{padding:0 0 16px;border-bottom:3px solid transparent;font-size:16px;font-weight:600;line-height:1.5;color:var(--muted)}
.division-tabs a[aria-current=page]{color:var(--navy);border-color:var(--orange)}
.portfolio-intro{padding-top:36px}
.portfolio-use{display:flex;align-items:center;flex-wrap:wrap;gap:8px 20px;padding:18px 23px;border-radius:6px;background:#edf4f7;border-left:3px solid #466d82;font-size:14px;line-height:1.6;margin-bottom:30px}
.ruo-use{background:#fff6e9;border-left-color:var(--orange);color:#57381c}.portfolio-use strong{font-size:15px}
.portfolio-intro-copy h2{font-size:32px;line-height:1.2;margin-bottom:14px}.portfolio-intro-copy p{font-size:15px;margin-bottom:25px}
.segment-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:15px}
.segment-grid>a{display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:18px;border:1px solid var(--line);border-radius:7px;font-size:14px;line-height:1.5;font-weight:600;background:#fff;transition:background .2s,border-color .2s}
.segment-grid>a:hover{background:#f5f9fb;border-color:#9eb5c3}
.segment-code{color:#895015;font-size:11px;font-weight:700;letter-spacing:.12em}
.segment-grid small{font-size:12px;font-weight:400;color:var(--muted);display:flex;width:100%;align-items:center;justify-content:space-between;gap:8px;margin-top:auto;padding-top:5px}
.segment-grid svg{width:17px;height:17px;color:#a65a0a}
.assay-results{border-top:1px solid var(--line)}
.assay-row{display:flex;align-items:center;gap:20px;padding:21px 0;border-bottom:1px solid var(--line);min-width:0}
.assay-row:hover h3{color:#a2500e}.assay-thumb{width:96px;flex:none;border-radius:6px;overflow:hidden;background:var(--navy)}
.assay-thumb .product-visual{height:72px;aspect-ratio:auto}
.assay-row-copy{min-width:0;flex:1}.assay-row .product-ref{font-size:12px;margin-bottom:7px;line-height:1.5;letter-spacing:.025em}
.assay-row h3{font-size:19px;line-height:1.45;letter-spacing:-.018em;margin:0 0 7px;overflow-wrap:anywhere;transition:color .2s}
.assay-group{font-size:13px;line-height:1.6;color:var(--muted)}
.assay-row-end{display:flex;flex-direction:column;align-items:flex-end;gap:16px;flex:none}
.assay-row .text-link{font-size:13px;gap:6px;white-space:nowrap}.use-tag{font-size:10px;letter-spacing:.06em;text-transform:uppercase;font-weight:600;background:#edf4f7;color:#466477;border-radius:4px;padding:5px 8px}
.result-pages{display:flex;align-items:center;justify-content:space-between;gap:14px;padding-top:27px}
.result-pages button{background:var(--navy);color:#fff;font-size:13px;border:0;border-radius:5px;padding:12px 16px;min-height:44px}
.result-pages button:disabled{background:#e9eff3;color:#788c99;cursor:default}.result-pages span{font-size:13px;color:var(--muted);text-align:center}
.portfolio-ordering{background:var(--ice);padding:50px 0}.portfolio-ordering>.container{display:flex;align-items:center;gap:65px;justify-content:space-between}
.portfolio-ordering .eyebrow{font-size:12px;color:#92531b;letter-spacing:.07em;margin-bottom:16px}.portfolio-ordering h2{font-size:32px;margin-bottom:18px}
.portfolio-ordering p{font-size:15px;line-height:1.9;max-width:770px;margin:0}.portfolio-ordering .button{white-space:nowrap}
.shared-extraction{border-top:1px solid var(--line);padding-block:42px 65px;display:flex;align-items:center;justify-content:space-between;gap:35px}
.shared-extraction h2{font-size:31px;line-height:1.2;margin:15px 0}.shared-extraction p{font-size:15px;margin:0}.shared-extraction .eyebrow{font-size:12px}
.extraction-intro{font-size:17px;line-height:1.8;max-width:800px;margin-bottom:35px}
.research-contact{padding-bottom:50px}.research-contact h2{font-size:29px}.research-contact p{font-size:16px;line-height:1.8}.research-contact a{color:#995009;text-decoration:underline}
.catalogue-availability h3{font-size:19px;margin:0 0 12px}.research-layout>section{min-width:0}
@media(max-width:1050px){.division-grid{gap:16px}.division-copy{padding:23px 20px}.division-copy h3{font-size:24px}.segment-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.assay-row{gap:15px}.assay-thumb{width:75px}.assay-thumb .product-visual{height:66px}.portfolio-ordering>.container{gap:30px;align-items:flex-start;flex-direction:column}}
@media(max-width:760px){
 .portfolio-menu{width:100%;display:block;padding:10px 10px 20px}.portfolio-menu strong a{font-size:16px}.portfolio-menu>div{margin-bottom:22px}
 .division-grid{grid-template-columns:1fr}.division-section{padding-block:40px}.division-section>h2{font-size:33px}.division-copy{padding:25px}.division-copy h3{font-size:28px}.division-copy p{font-size:16px}.home-divisions{padding-bottom:0}
 .division-tabs{gap:18px;margin-bottom:24px}.division-tabs a{font-size:14px;padding-bottom:12px}.portfolio-intro{padding-top:27px}
 .portfolio-use{padding:16px 18px;gap:5px;margin-bottom:26px;display:grid}.portfolio-intro-copy h2{font-size:29px}.portfolio-intro-copy p{font-size:14px}
 .segment-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.segment-grid>a{font-size:13px;padding:15px;min-width:0;overflow-wrap:break-word}
 .assay-row{gap:13px;align-items:flex-start;padding:20px 0;flex-wrap:wrap}.assay-thumb{width:68px;margin-top:3px}.assay-thumb .product-visual{height:64px}
 .assay-row h3{font-size:17px;line-height:1.55}.assay-row .product-ref{font-size:11px}.assay-group{font-size:12px}.assay-row-end{flex-direction:row;align-items:center;margin-left:81px;gap:16px}
 .assay-row>.text-link{margin-left:81px}.result-pages{gap:10px}.result-pages button{padding:11px;font-size:12px}.result-pages span{font-size:11px}
 .shared-extraction{flex-direction:column;align-items:flex-start;padding-block:34px 45px;gap:22px}.shared-extraction h2,.portfolio-ordering h2{font-size:29px}
 .portfolio-ordering{padding:35px 0}.portfolio-ordering p{font-size:15px}.research-contact h2{font-size:27px}
}
@media(prefers-reduced-motion:reduce){.division-card:hover{transform:none}}

/* Product headers keep a clear identity while bringing the details into view. */
.product-hero.inner-hero{padding:1.25rem 0 2.125rem}
.product-hero .breadcrumbs{margin-bottom:1.125rem;line-height:1.6}
.product-hero .inner-hero-grid{grid-template-columns:minmax(0,1fr) minmax(15rem,18.75rem);gap:clamp(2rem,4vw,3.5rem);min-height:13rem}
.product-hero .inner-hero-copy{padding:.375rem 0}
.product-hero .eyebrow{font-size:.875rem;letter-spacing:.08em;margin-bottom:.875rem}
.product-hero h1{font-size:clamp(2.125rem,3.2vw,2.875rem);line-height:1.14;letter-spacing:-.035em;margin-bottom:1rem;max-width:49rem}
.product-hero h1.long-title{font-size:clamp(1.875rem,2.6vw,2.5rem);line-height:1.2;letter-spacing:-.025em}
.product-hero .inner-hero-copy>p{font-size:1rem;line-height:1.65;max-width:40rem;margin-bottom:0}
.product-hero .hero-rule{width:3rem;height:3px;margin-top:1.25rem}
.product-hero .page-hero-media{width:100%;max-width:18.75rem;margin:0;border-radius:18px 18px 18px 5px;box-shadow:0 16px 40px #00172724}
.product-hero .page-hero-media::before{inset:-6px 6px 6px -6px;border-radius:20px 20px 20px 7px}
.product-hero .hero-media-caption{font-size:.75rem;right:9px;bottom:8px;padding:3px 7px}
.product-hero+.product-layout{padding-top:2.25rem}
.product-hero+.portfolio-intro{padding-top:1.625rem}
.portfolio-intro+.catalogue-layout{padding-top:2rem}
@media(max-width:1050px){
 .product-hero .inner-hero-grid{grid-template-columns:minmax(0,1fr) minmax(13rem,16rem);gap:2rem;min-height:12rem}
 .product-hero h1{font-size:2.25rem}.product-hero h1.long-title{font-size:2rem}
}
@media(max-width:760px){
 .product-hero.inner-hero{padding:1rem 0 1.5rem}
 .product-hero .inner-hero-grid{grid-template-columns:minmax(0,1fr);gap:1.375rem;min-height:0}
 .product-hero .breadcrumbs{margin-bottom:.875rem}
 .product-hero .inner-hero-copy{padding:0}
 .product-hero h1,.product-hero h1.long-title{font-size:clamp(1.75rem,6.8vw,2.125rem);line-height:1.2;margin-bottom:.75rem}
 .product-hero .eyebrow{font-size:.8125rem;letter-spacing:.055em;margin-bottom:.75rem}
 .product-hero .hero-rule{margin-top:1rem;width:2.75rem}
 .product-hero .page-hero-media{max-width:23rem;margin:0 auto}
 .product-hero .page-hero-media>.product-visual{height:9.5rem;aspect-ratio:auto;background:#03243a}
 .product-hero .page-hero-media>.product-visual>img{object-fit:contain}
 .product-hero+.product-layout{padding-top:1.75rem}
 .product-hero+.portfolio-intro{padding-top:1.5rem}
 .portfolio-intro+.catalogue-layout{padding-top:1.5rem}
}
@media print{.product-hero.inner-hero{padding:12px 0}.product-hero .inner-hero-grid{display:block;min-height:0}.product-hero h1,.product-hero h1.long-title{font-size:25pt}}
