/* Shared company publishing layout: directory, article, supporting documents. */
.company-page{--company-ink:#202c37;--company-muted:#5c6872;--company-line:#dfe5e9;--company-blue:#225b7c;--company-surface:#f3f6f8;background:#fff;color:var(--company-ink);padding-bottom:0;overflow-wrap:break-word}
.company-banner{background:#162e40;color:#fff;overflow:hidden}
.company-banner-inner{max-width:1440px;margin:auto;min-height:264px;position:relative;display:grid;grid-template-columns:1fr 1fr}
.company-banner-copy{position:relative;z-index:1;align-self:center;padding:48px max(40px,calc((100vw - 1280px)/2));padding-right:24px;white-space:normal}
.company-banner .taili-eyebrow{font-size:.875rem;line-height:1.6;letter-spacing:.12em;color:#c3d5e1;margin:0 0 14px}
.company-banner h1{font-size:clamp(2rem,3.5vw,3.25rem);font-weight:600;line-height:1.3;letter-spacing:-.025em;margin:0}
.company-banner-brand{margin:22px 0 0;color:#c3d5e1;font-size:.8125rem;letter-spacing:.13em}
.company-banner :is(img,.company-banner-art){height:100%;min-height:264px;max-height:320px;width:100%;object-fit:cover;object-position:center 52%;opacity:.72;mask-image:linear-gradient(to right,transparent,#000 24%)}
.company-layout{display:grid;grid-template-columns:248px minmax(0,1fr);gap:64px;max-width:1360px;padding:56px 40px 88px;margin:auto;align-items:start}
.company-sidebar{position:sticky;top:100px;min-width:0}
.company-directory{background:var(--company-surface);border:1px solid var(--company-line)}
.company-directory-label{font-size:1.125rem;font-weight:600;margin:0;padding:25px 24px 18px}
.company-directory-pages a{display:flex;align-items:center;min-height:54px;padding:14px 24px;font-size:1rem;line-height:1.55;color:var(--company-muted);border-top:1px solid var(--company-line);transition:background .15s,color .15s}
.company-directory-pages a:hover{background:#e6eef3;color:var(--company-blue)}
.company-directory-pages a[aria-current=page]{background:var(--company-blue);color:#fff;border-color:var(--company-blue)}
.company-directory-sections{margin:22px 24px 24px;padding-top:20px;border-top:1px solid var(--company-line)}
.company-directory-sections p{font-size:.875rem;color:var(--company-muted);margin:0 0 10px}
.company-directory-sections a{font-size:.9375rem;color:var(--company-ink);display:flex;align-items:center;line-height:1.5;min-height:44px;padding:9px 0}
.company-directory-sections a:hover{color:var(--company-blue);text-decoration:underline;text-underline-offset:5px}
.company-directory-toggle{display:none}
.company-content{min-width:0;max-width:100%;font-size:1.0625rem;line-height:1.85}
.company-content [id]{scroll-margin-top:112px}
.company-breadcrumb{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:center;font-size:.875rem;color:var(--company-muted);line-height:1.7;margin:0 0 30px}
.company-breadcrumb a{display:flex;align-items:center;min-height:28px}
.company-breadcrumb a:hover{text-decoration:underline;text-underline-offset:4px}
.company-content .company-article-heading{padding:0 0 28px;margin:0 0 32px;border-bottom:1px solid var(--company-line);max-width:none;text-align:left}
.company-article-heading h2{font-size:clamp(1.875rem,2.8vw,2.5rem);line-height:1.35;margin:0 0 16px;letter-spacing:-.025em}
.company-article-heading>p{font-size:1.0625rem;line-height:1.8;color:var(--company-muted);margin:0;max-width:760px}
.company-content :is(p,li,dd){overflow-wrap:anywhere}
.company-content :is(.story-block,.story-reading){padding:0;max-width:none;margin:0 0 48px}
.company-content .story-block + .story-block{padding-top:42px;border-top:1px solid var(--company-line)}
.company-content .story-block>h2,.company-content .statement-section>h2{font-size:1.625rem;line-height:1.45;font-weight:600;margin:0 0 24px}
.company-content .story-block>.taili-eyebrow{font-size:.8125rem;letter-spacing:.11em;margin:0 0 12px;color:var(--company-blue)}
.company-content .story-reading p,.company-content .statement-copy p{font-size:1.0625rem;line-height:1.95;margin:0 0 22px;color:var(--company-ink)}
.company-content .story-photo{margin:0 0 32px;max-width:none}
.company-content .story-photo img{height:auto;max-height:430px;aspect-ratio:1.9;object-fit:cover;border-radius:0}
.company-content .story-photo figcaption{font-size:.8125rem;color:var(--company-muted);margin-top:10px;line-height:1.7}
.company-content .leadership-grid{gap:28px}
.company-content .leadership-grid article{background:var(--company-surface);border-top:3px solid var(--company-blue);border-radius:0;padding:28px}
.company-content .leadership-grid h3{font-size:1.75rem;line-height:1.35;margin:10px 0 20px}
.company-content .leadership-grid p{font-size:1rem;line-height:1.9;color:var(--company-muted)}
.company-content .leadership-grid .person-role{color:var(--company-blue);font-size:.875rem}
.company-content .kun-note{padding:30px 34px;background:var(--company-surface);border-left:3px solid var(--company-blue);color:var(--company-ink);margin:48px 0}
.company-content .kun-note .taili-eyebrow{color:var(--company-blue)}
.company-content .kun-note blockquote{font-size:1.375rem;line-height:1.85;margin:18px 0 24px}
.company-content .quote-author>span:last-child{color:var(--company-muted)}
.company-content .company-entry-grid{gap:20px}
.company-content .company-entry{border:1px solid var(--company-line);border-radius:0;background:#fff;transition:none}
.company-content .company-entry:hover{transform:none;border-color:var(--company-blue)}
.company-content .company-entry :is(img,.company-entry-art){height:140px}
.company-content .company-entry>div{padding:20px}
.company-content .company-entry h3{font-size:1.125rem;line-height:1.55;margin-bottom:12px}
.company-content .company-entry .taili-eyebrow{font-size:.75rem;line-height:1.6;letter-spacing:.04em}
.company-content .company-entry p:last-child{font-size:.9375rem;line-height:1.8}
.company-content .story-cta{padding:28px 0 0;margin:40px 0 0;border-top:1px solid var(--company-line);text-align:left;max-width:none}
.company-content .story-cta h2{font-size:1.5rem;line-height:1.55;margin:0 0 16px}
.company-content .taili-text-link{font-size:1rem;min-height:44px;line-height:1.65;color:var(--company-blue);gap:8px}
.company-content .team-work{gap:28px;grid-template-columns:1.1fr 1fr;align-items:center}
.company-content .team-work>img{border-radius:0;height:260px}
.company-content .team-work h3{font-size:1.5rem;line-height:1.55}
.company-content .team-work p{font-size:1rem;line-height:1.8}
.company-content .team-roles{grid-template-columns:1fr 1fr;gap:0 30px;margin-top:30px}
.company-content .team-roles article{background:transparent;border-radius:0;padding:22px 0;border-top:1px solid var(--company-line)}
.company-content .team-roles h3{font-size:1.1875rem;margin:0 0 14px}
.company-content .team-roles p{font-size:1rem;line-height:1.9}
.company-content .document-grid{display:grid;grid-template-columns:1fr;gap:0;border-top:1px solid var(--company-line)}
.company-content .document-card{display:grid;grid-template-columns:132px minmax(0,1fr);gap:24px;padding:24px 0;border-radius:0;border-bottom:1px solid var(--company-line);background:#fff}
.company-content .document-cover{height:180px;padding:12px;background:var(--company-surface);align-self:start}
.company-content .document-content{padding:0;gap:8px;min-width:0}
.company-content .document-card h3{font-size:1.1875rem;line-height:1.5}
.company-content .document-card p{font-size:.9375rem;line-height:1.8;color:var(--company-muted)}
.company-content .document-card :is(.document-kind,.document-number){font-size:.8125rem}
.company-content .document-card .document-kind{color:var(--company-blue)}
.company-content .document-content .taili-text-link{margin-top:2px}
.company-content .document-note{font-size:.9375rem;line-height:1.85;color:var(--company-muted)}
.company-content .patent-list{margin:24px 0;border-color:var(--company-line)}
.company-content .patent-list li{padding:22px 0;border-color:var(--company-line)}
.company-content .patent-list strong{font-size:1.0625rem;font-weight:600}
.company-content .patent-list p{font-size:.875rem}
.company-content .patent-details summary{font-size:1rem;border-bottom:1px solid var(--company-line)}
.company-content .equipment-grid{gap:30px 28px}
.company-content .equipment-card{border-radius:0;background:#fff;border-bottom:1px solid var(--company-line)}
.company-content .equipment-card img{height:240px;object-fit:cover;background:var(--company-surface)}
.company-content .equipment-card.vendor img{object-fit:contain;padding:22px;background:#f8f9fa}
.company-content .equipment-card>div{padding:22px 0 26px}
.company-content .equipment-card h2{font-size:1.3125rem;line-height:1.5;margin:0 0 12px}
.company-content .equipment-card p{font-size:1rem;line-height:1.85;margin:0}
.company-content .equipment-source{font-size:.8125rem;line-height:1.75;margin-top:14px}
.statement-facts{display:grid;grid-template-columns:1.4fr 1fr 1fr;border-top:1px solid var(--company-line);border-bottom:1px solid var(--company-line);margin:28px 0 32px}
.statement-facts>div{padding:18px 20px 18px 0;min-width:0}
.statement-facts dt{font-size:.8125rem;color:var(--company-muted);margin-bottom:7px}
.statement-facts dd{margin:0;font-size:1rem;font-weight:500;line-height:1.65}
.statement-section{margin-top:44px;padding-top:36px;border-top:1px solid var(--company-line)}
.statement-clause{margin:28px 0}
.statement-clause h3{font-size:1.125rem;line-height:1.6;margin:0 0 10px}
.statement-clause p{margin:0;font-size:1.0625rem;line-height:1.95}
.statement-scope{padding:20px 24px;margin:28px 0;background:var(--company-surface);border-left:3px solid var(--company-blue);font-size:1rem;line-height:1.9}
.material-records{margin:0;border-top:1px solid var(--company-line)}
.material-records>div{display:grid;grid-template-columns:140px minmax(0,1fr);gap:24px;padding:22px 0;border-bottom:1px solid var(--company-line)}
.material-records dt{font-size:1.0625rem;font-weight:600;line-height:1.8}
.material-records dd{margin:0;font-size:1rem;line-height:1.9;color:var(--company-muted)}
.report-download{display:grid;grid-template-columns:48px minmax(0,1fr);align-items:start;gap:20px;background:var(--company-surface);padding:24px}
.report-file-icon{display:grid;place-items:center;width:46px;height:58px;border:1px solid #9baebd;color:var(--company-blue);font-size:.75rem;font-weight:600;letter-spacing:.03em}
.report-download h3{font-size:1.125rem;line-height:1.6;margin:0 0 8px}
.report-download p{font-size:.875rem;color:var(--company-muted);margin:0 0 12px;line-height:1.8}
.report-download-actions{display:flex;gap:12px 24px;flex-wrap:wrap}
.company-content .green-statement{display:grid;grid-template-columns:minmax(0,1fr) 190px;gap:28px;align-items:center}
.green-statement p{margin:0 0 16px;font-size:1.0625rem;line-height:1.9}
.green-statement img{width:100%;height:180px;object-fit:cover;border-radius:0}
body:is([data-page=about],[data-page=people],[data-page=responsibility],[data-page=equipment],[data-page=patents],[data-page=processes],[data-page=standards]) .portal-header{background:#fafafbf5;color:#202c37;border-color:#dfe5e9}
body:is([data-page=about],[data-page=people],[data-page=responsibility],[data-page=equipment],[data-page=patents],[data-page=processes],[data-page=standards]) :is(.portal-nav-item>a,.language-picker,.portal-mobile-toggle,.portal-disclosure){color:#424245}
body:is([data-page=about],[data-page=people],[data-page=responsibility],[data-page=equipment],[data-page=patents],[data-page=processes],[data-page=standards]) .portal-brand b{color:#6e6e73}
body:is([data-page=about],[data-page=people],[data-page=responsibility],[data-page=equipment],[data-page=patents],[data-page=processes],[data-page=standards]) .portal-brand-logo{filter:none;mix-blend-mode:multiply}
body:is([data-page=about],[data-page=people],[data-page=responsibility],[data-page=equipment],[data-page=patents],[data-page=processes],[data-page=standards]) .portal-quote{color:#225b7c;border-color:#9eb4c2}
body:is([data-page=about],[data-page=people],[data-page=responsibility],[data-page=equipment],[data-page=patents],[data-page=processes],[data-page=standards]) :is(.portal-mega,.portal-main-nav.is-open){background:#fafafa;color:#202c37}
body:is([data-page=about],[data-page=people],[data-page=responsibility],[data-page=equipment],[data-page=patents],[data-page=processes],[data-page=standards]) .mega-links a{color:#424245}
body:is([data-page=about],[data-page=people],[data-page=responsibility],[data-page=equipment],[data-page=patents],[data-page=processes],[data-page=standards]) .mega-aside{color:#6e6e73;border-color:#ddd}
@media(min-width:1440px){.company-banner-copy{padding-left:80px}}
@media(max-width:1100px){.company-layout{grid-template-columns:216px minmax(0,1fr);gap:36px;padding:40px 28px 64px}.company-banner-copy{padding-left:28px}.company-content .company-entry-grid{grid-template-columns:1fr}.company-content .company-entry{display:grid;grid-template-columns:150px minmax(0,1fr)}.company-content .company-entry :is(img,.company-entry-art){width:150px;height:100%;min-height:156px}.company-content .team-work{grid-template-columns:1fr}.company-content .equipment-card img{height:210px}.company-content .leadership-grid{grid-template-columns:1fr}.company-directory-pages a{padding-left:20px;padding-right:20px}}
@media(max-width:760px){.company-banner-inner{min-height:205px;grid-template-columns:1fr}.company-banner-copy{padding:32px 24px;max-width:85%}.company-banner :is(img,.company-banner-art){position:absolute;right:0;top:0;width:62%;min-height:205px;height:100%;max-height:none;opacity:.25;mask-image:linear-gradient(to right,transparent,#000 45%)}.company-banner h1{font-size:2rem;line-height:1.35}.company-banner .taili-eyebrow{font-size:.75rem;letter-spacing:.08em}.company-banner-brand{font-size:.75rem;margin-top:16px;letter-spacing:.08em}.company-layout{grid-template-columns:1fr;gap:30px;padding:24px 20px 52px}.company-sidebar{position:static}.company-directory-toggle{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:15px 18px;width:100%;min-height:52px;font-size:1rem;line-height:1.5;text-align:left;background:var(--company-blue);color:#fff;border:0;border-radius:0}.directory-toggle-icon{font-size:1.375rem;line-height:1}.company-directory[data-expanded=false] #company-directory-links{display:none}.company-directory-label{padding:20px 18px 14px}.company-directory-pages a{padding:13px 18px;min-height:50px}.company-directory-sections{margin:18px}.company-breadcrumb{margin-bottom:24px}.company-content .company-article-heading{margin-bottom:26px;padding-bottom:24px}.company-article-heading h2{font-size:1.8125rem;line-height:1.4}.company-content :is(.story-block,.story-reading){margin-bottom:36px}.company-content .story-block+.story-block{padding-top:32px}.company-content .story-block>h2,.company-content .statement-section>h2{font-size:1.5rem}.company-content .story-photo{margin:0 0 26px}.company-content .story-photo img{aspect-ratio:1.4;max-height:350px}.company-content .leadership-grid article{padding:24px}.company-content .kun-note{padding:24px;margin:36px 0}.company-content .kun-note blockquote{font-size:1.1875rem}.company-content .team-roles{grid-template-columns:1fr;gap:0}.company-content .document-card{grid-template-columns:76px minmax(0,1fr);gap:18px;padding:24px 0}.company-content .document-cover{height:106px;padding:7px}.company-content .document-card h3{font-size:1.125rem}.company-content .document-content{padding:0}.company-content .patent-list li{grid-template-columns:1fr;gap:8px}.company-content .equipment-grid{grid-template-columns:1fr;gap:28px}.company-content .equipment-card img{height:auto;aspect-ratio:4/3;object-fit:cover}.company-content .equipment-card.vendor img{aspect-ratio:4/3;object-fit:contain;padding:22px}.company-content .equipment-card>div{padding:20px 0 24px}.company-content .company-entry{grid-template-columns:100px minmax(0,1fr)}.company-content .company-entry :is(img,.company-entry-art){width:100px;min-height:158px}.company-content .company-entry>div{padding:18px}.company-content .company-entry h3{font-size:1.125rem}.statement-facts{grid-template-columns:1fr;margin:24px 0}.statement-facts>div{display:grid;grid-template-columns:96px minmax(0,1fr);gap:16px;padding:14px 0}.statement-facts>div+div{border-top:1px solid var(--company-line)}.statement-facts dt{margin:2px 0 0;font-size:.875rem}.statement-section{padding-top:30px;margin-top:34px}.statement-scope{padding:18px 20px}.material-records>div{grid-template-columns:1fr;gap:8px;padding:20px 0}.report-download{padding:20px;gap:16px;grid-template-columns:40px minmax(0,1fr)}.report-file-icon{width:38px;height:50px}.report-download-actions{gap:4px 20px}.company-content .green-statement{grid-template-columns:1fr}.green-statement img{height:210px;object-fit:contain;background:#f3f6f8}.company-content [id]{scroll-margin-top:90px}}
@media(prefers-reduced-motion:reduce){.company-directory-pages a{transition:none}}

/* Supplied leadership portraits and team photograph. */
.company-content .leadership-portrait{display:block;width:min(100%,220px);height:auto;aspect-ratio:1122/1402;object-fit:contain;margin:0 auto 24px;background:#fff}
.company-banner img[src$="team-qualifications.png"]{object-position:72% center}
.company-content .team-work>.team-supplied-photo{height:auto;aspect-ratio:1672/941;object-fit:contain}
.company-content .green-statement>.green-power-illustration{height:260px}
@media(max-width:760px){.company-content .green-statement>.green-power-illustration{height:230px}}

/* Each company banner uses artwork selected for that page. */
.company-banner-art{display:block;min-width:0;overflow:hidden}
.company-content .story-team-photo img{aspect-ratio:1672/941;object-fit:contain;max-height:none}

/* Company entry illustrations share the approved homepage assets. */
.company-entry-art,.equipment-illustration{display:block;min-width:0;width:100%;overflow:hidden}
.company-content .company-entry img.company-card-equipment{object-fit:contain;background:#eaf0f4}
.company-content .equipment-illustration{height:260px}
@media(max-width:1100px){.company-content .equipment-illustration{height:210px}}
@media(max-width:760px){.company-content .equipment-illustration{height:auto;aspect-ratio:4/3}}

/* Compact knowledge pages and complete document library. */
.library-jump{display:flex;flex-wrap:wrap;gap:6px 20px;margin:24px 0 36px;padding:16px 0;border-block:1px solid var(--company-line)}
.library-jump a{font-size:.9rem;color:var(--company-blue);padding:6px 0}
.process-row{display:grid;grid-template-columns:minmax(200px,.9fr) minmax(0,1.3fr);gap:28px;padding:32px 0;border-bottom:1px solid var(--company-line);align-items:start}
.process-row figure{margin:0}.process-row figure>img,.process-row figure>svg{display:block;width:100%;height:auto;aspect-ratio:1.55;object-fit:cover;background:#f3f6f8}.process-row figcaption{font-size:.75rem;color:var(--company-muted);margin-top:8px;line-height:1.7}
.process-row h2{font-size:1.45rem;line-height:1.5;margin:0 0 12px}.process-row p{font-size:.98rem;line-height:1.85;margin:0 0 12px}.process-row .taili-eyebrow{font-size:.75rem;color:var(--company-blue)}.process-row .process-focus{color:var(--company-muted);font-size:.875rem}
.patent-library{display:grid;grid-template-columns:1fr 1fr;gap:0 24px}.company-content .patent-library .document-card{grid-template-columns:78px minmax(0,1fr);gap:16px}.company-content .patent-library .document-cover{height:110px;padding:5px}.company-content .patent-library h3{font-size:1rem}
.knowledge-list{margin:0}.knowledge-list>div{padding:22px 0;border-bottom:1px solid var(--company-line)}.knowledge-list dt{font-size:1.125rem;font-weight:600;margin-bottom:8px}.knowledge-list dd{margin:0;font-size:1rem;color:var(--company-muted);line-height:1.9}.knowledge-source{font-size:.8rem!important;color:var(--company-muted)}
.company-content #documents>h3{margin:38px 0 20px;font-size:1.4rem}
@media(max-width:700px){.process-row{grid-template-columns:1fr;gap:18px}.process-row figure>img,.process-row figure>svg{max-height:230px}.patent-library{grid-template-columns:1fr}.company-content .patent-library .document-card{grid-template-columns:82px minmax(0,1fr)}.library-jump{gap:4px 16px}}
