.subhero{display:grid;grid-template-columns:1fr 1.04fr;min-height:620px;background:#f5f5f2}.subhero-copy{align-self:center;padding:80px max(6%,calc((100vw - 1440px)/2)) 85px 9%;max-width:730px}.subhero-label{font-size:11px;letter-spacing:.12em;margin-bottom:30px;color:#575752}.subhero h1{font-size:clamp(48px,5.3vw,86px);line-height:1.07;letter-spacing:-.04em;text-wrap:balance}.subhero-copy>p:last-child{font-size:16px;line-height:1.75;max-width:560px;margin-top:34px;color:#50504b}.subhero-image{min-height:620px;overflow:hidden}.subhero-image img{width:100%;height:100%;object-fit:cover}.subpage-sections{padding:0 6%}.practice-row{display:grid;grid-template-columns:1.1fr .9fr;gap:10%;align-items:center;padding:110px 0;border-top:1px solid #dcdcd7}.practice-row.reverse{grid-template-columns:.9fr 1.1fr}.practice-row.reverse .practice-photo{order:2}.practice-row.reverse .practice-copy{order:1}.practice-photo{height:520px;overflow:hidden}.practice-photo img{height:100%;width:100%;object-fit:cover}.practice-copy{max-width:540px}.practice-label{font-size:12px;letter-spacing:.08em;color:#555651;margin-bottom:22px}.practice-copy h2{font-size:clamp(34px,3.4vw,54px);letter-spacing:-.035em;line-height:1.13;text-wrap:balance}.practice-copy>p{font-size:15px;line-height:1.75;color:#4e4f49;margin-top:25px;max-width:65ch}.practice-copy ul{list-style:none;margin:30px 0;padding:25px 0 0;border-top:1px solid #dcdcd7}.practice-copy li{font-size:13px;margin:12px 0;line-height:1.5}.practice-copy li:before{content:'+';margin-right:14px;color:#666}.subpage-chapters{display:grid;grid-template-columns:.7fr 1.3fr;gap:10%;padding:110px 6%;background:#fff}.chapter-title h2,.subpage-process h2,.news-heading h2,.contact-details h2{font-size:clamp(38px,4vw,62px);letter-spacing:-.04em;line-height:1.12}.chapter-list article{border-top:1px solid #dcdcd7;padding:25px 0 30px}.chapter-list h3{font-size:24px;margin-bottom:14px}.chapter-list p{font-size:15px;line-height:1.75;color:#4e4f49;max-width:65ch}.subpage-facts{padding:60px 6%;display:grid;grid-template-columns:repeat(3,1fr);gap:36px;background:#171717;color:white}.subpage-facts strong{display:block;font-size:clamp(38px,4vw,64px);font-weight:400;letter-spacing:-.04em}.subpage-facts span{display:block;font-size:13px;line-height:1.5;margin-top:10px;color:#d0d0ca}.subpage-process{padding:110px 6%}.subpage-process>div{margin-top:45px;display:grid;grid-template-columns:repeat(2,1fr);gap:0 55px}.subpage-process article{border-top:1px solid #b6b6af;padding:27px 0 42px;display:grid;grid-template-columns:65px 1fr;column-gap:18px}.subpage-process article>span{font-size:11px;color:#686861}.subpage-process h3{font-size:25px;letter-spacing:-.02em}.subpage-process p{grid-column:2;font-size:14px;color:#50504b;max-width:52ch;margin-top:13px}.subpage-news{padding:100px 6%;background:#fff}.news-heading{display:flex;justify-content:space-between;gap:30px;align-items:end}.news-heading p{font-size:13px;color:#555;max-width:380px}.news-list{margin-top:45px}.news-list article{border-top:1px solid #c9c9c2;padding:25px 0;display:grid;grid-template-columns:130px 160px 1fr;gap:20px;align-items:start}.news-list time,.news-list article>span{font-size:12px;color:#666}.news-list a{display:flex;justify-content:space-between;gap:20px}.news-list a:hover{text-decoration:underline}.news-list h3{font-size:clamp(21px,2vw,30px);line-height:1.3;max-width:700px}.subpage-contact{display:grid;grid-template-columns:1fr 1fr;gap:10%;background:#e7e7e1;padding:100px 6%}.contact-details dl{display:grid;grid-template-columns:135px 1fr;gap:18px;margin-top:40px;font-size:14px}.contact-details dt{color:#666}.contact-details dd{margin:0;line-height:1.7}.subpage-contact form h2{font-size:28px;margin-bottom:25px}.subpage-contact form>p{font-size:12px;color:#555;margin:15px 0 25px}.subpage-closing{padding:90px 6%;background:#e7e7e1;display:flex;align-items:center;justify-content:space-between;gap:50px}.subpage-closing p{font-size:clamp(22px,2.2vw,34px);line-height:1.35;max-width:920px}.subpage-closing .text-link{flex:none}.subpage-contact form label{font-size:12px}.subpage-contact form input,.subpage-contact form select,.subpage-contact form textarea{font-size:15px}.subpage-contact #form-status{min-height:24px}nav [aria-current=page]{border-bottom:1px solid #111}
@media(max-width:1000px){.subhero{grid-template-columns:1fr 1fr}.subhero-copy{padding:65px 7%}.practice-row,.practice-row.reverse{gap:6%}.practice-photo{height:450px}.subpage-chapters{gap:6%}.news-list article{grid-template-columns:115px 110px 1fr}.subpage-contact{gap:6%}}
@media(max-width:800px){.subhero{display:flex;flex-direction:column;min-height:0}.subhero-copy{order:2;padding:60px 6% 70px}.subhero-image{order:1;min-height:0;height:380px}.subhero h1{font-size:clamp(42px,8vw,62px)}.subhero-copy>p:last-child{font-size:14px;margin-top:24px}.subpage-sections{padding:0 6%}.practice-row,.practice-row.reverse{display:flex;flex-direction:column;gap:35px;padding:70px 0}.practice-row.reverse .practice-photo,.practice-row.reverse .practice-copy{order:initial}.practice-photo{height:360px;width:100%}.practice-copy{max-width:100%}.practice-copy h2{font-size:38px}.practice-copy>p{font-size:14px}.subpage-chapters{display:block;padding:75px 6%}.chapter-list{margin-top:40px}.subpage-facts{grid-template-columns:1fr 1fr;padding:60px 6%}.subpage-process{padding:75px 6%}.subpage-process>div{grid-template-columns:1fr}.news-heading{display:block}.news-heading p{margin-top:20px}.news-list article{grid-template-columns:1fr 1fr;gap:10px}.news-list a{grid-column:1/-1;margin-top:8px}.subpage-news{padding:75px 6%}.subpage-contact{grid-template-columns:1fr;gap:60px;padding:75px 6%}.subpage-closing{display:block;padding:75px 6%}.subpage-closing .text-link{margin-top:30px}nav [aria-current=page]{border-bottom:none;text-decoration:underline}}
@media(max-width:480px){.subhero-image{height:290px}.subhero h1{font-size:40px}.practice-photo{height:300px}.practice-copy h2{font-size:34px}.subpage-facts{grid-template-columns:1fr}.subpage-process article{grid-template-columns:44px 1fr;gap:10px}.contact-details dl{grid-template-columns:100px 1fr}.subpage-closing p{font-size:26px}}

/* Keep the corporate site's full-bleed, image-led rhythm on every inner page. */
.subhero{display:block;position:relative;isolation:isolate;min-height:min(76svh,760px);background:#171717;color:#fff;overflow:hidden}
.subhero-image{position:absolute;inset:0;min-height:0;height:100%;z-index:-2}
.subhero-image img{width:100%;height:100%;object-fit:cover}
.subhero:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(9,14,14,.72) 0%,rgba(9,14,14,.48) 46%,rgba(9,14,14,.12) 100%),linear-gradient(0deg,rgba(9,14,14,.38),transparent 32%)}
.subhero-copy{position:relative;z-index:1;max-width:920px;padding:clamp(105px,16svh,185px) 6% 110px}
.subhero-label{color:#f4f4ef;font-size:11px;letter-spacing:.12em;margin-bottom:26px}
.subhero h1{font-size:clamp(47px,6.1vw,88px);line-height:1.08;letter-spacing:-.04em;text-wrap:balance}
.subhero-copy>p:last-child{color:#f0f0e9;font-size:16px;line-height:1.7;max-width:61ch;margin-top:30px}
.subhero-privacy{min-height:430px}.subhero-privacy .subhero-copy{padding-top:100px;padding-bottom:100px}
.subhero-contact{min-height:530px}
.subpage-sections{background:#fff}
.practice-row{padding:100px 0;gap:8%}
.practice-row.reverse{margin:0 -6.82%;padding:100px 6.82%;background:#171717;color:#fff}
.practice-row.reverse .practice-label,.practice-row.reverse .practice-copy>p{color:#d4d4ce}
.practice-row.reverse .practice-copy ul{border-color:#4a4c48}
.practice-row.reverse .practice-copy li:before{color:#c6c7c0}
.practice-copy h2,.subpage-chapters h2,.subpage-process h2,.news-heading h2,.contact-details h2{text-wrap:balance}
.practice-photo{height:560px}
.subpage-chapters{background:#f5f5f2}
.subpage-process{background:#fff}
.subpage-contact{background:#e7e7e1}
@media(max-width:1000px){.subhero-copy{padding-left:6%;padding-right:6%}.practice-row.reverse{margin-left:-5.57%;margin-right:-5.57%;padding-left:5.57%;padding-right:5.57%}}
@media(max-width:800px){.subhero{display:block;min-height:610px}.subhero-image{position:absolute;inset:0;height:100%;min-height:0}.subhero-copy{padding:155px 6% 95px}.subhero h1{font-size:clamp(40px,7vw,62px)}.subhero-copy>p:last-child{font-size:14px;line-height:1.65}.subhero-privacy{min-height:490px}.subhero-privacy .subhero-copy{padding:115px 6% 90px}.practice-row,.practice-row.reverse{padding:70px 0;gap:34px}.practice-row.reverse{margin-left:-6.82%;margin-right:-6.82%;padding-left:6.82%;padding-right:6.82%}.practice-photo{height:390px}}
@media(max-width:480px){.subhero{min-height:560px}.subhero-copy{padding:145px 6% 78px}.subhero h1{font-size:clamp(38px,10.2vw,46px)}.subhero-label{font-size:10px;margin-bottom:20px}.subhero-copy>p:last-child{margin-top:25px}.subhero-privacy{min-height:460px}.practice-photo{height:310px}}

/* Readable detail without adding more card layers. */
.subpage-overview{display:grid;grid-template-columns:.85fr 1.15fr;gap:10%;padding:100px 6%;background:#f5f5f2}
.subpage-overview h2,.subpage-information>h2,.subpage-faq>h2,.subpage-matrix h2{font-size:clamp(34px,3.5vw,54px);line-height:1.14;letter-spacing:-.035em;text-wrap:balance}
.subpage-overview p,.subpage-information p{font-size:15px;color:#4e4f49;line-height:1.8;max-width:65ch}
.subpage-overview p+p,.subpage-information p+p,.chapter-list p+p{margin-top:20px}
.practice-copy>p+p{margin-top:18px}
.subpage-information{padding:100px 6%;background:#fff}
.subpage-information>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;margin-top:45px}
.subpage-information article{padding-top:28px;border-top:1px solid #c9c9c2}
.subpage-information h3{font-size:25px;line-height:1.25;letter-spacing:-.025em;margin-bottom:20px;text-wrap:balance}
.subpage-matrix{padding:100px 6%;background:#f5f5f2}
.matrix-scroll{margin-top:40px;overflow-x:auto}
.matrix-scroll table{width:100%;border-collapse:collapse;min-width:700px;text-align:left}
.matrix-scroll th,.matrix-scroll td{padding:21px 20px;border-bottom:1px solid #c9c9c2;vertical-align:top;font-size:14px;line-height:1.7}
.matrix-scroll thead th{font-size:12px;background:#171717;color:#fff;font-weight:400}
.matrix-scroll tbody th{font-weight:400;width:22%;color:#111}
.matrix-scroll tbody td{color:#4e4f49}
.subpage-faq{padding:100px 6%;display:grid;grid-template-columns:.7fr 1.3fr;gap:10%;background:#f5f5f2}
.subpage-faq details{border-top:1px solid #b6b6af}
.subpage-faq details:last-child{border-bottom:1px solid #b6b6af}
.subpage-faq summary{font-size:18px;line-height:1.5;gap:25px;padding:23px 0;justify-content:space-between}
.subpage-faq summary:after{content:'+';flex:none;color:#575850;font-size:22px}
.subpage-faq details[open] summary:after{content:'−'}
.subpage-faq summary:focus-visible,.matrix-scroll:focus-visible{outline:2px solid #111;outline-offset:5px}
.subpage-faq p{font-size:14px;line-height:1.8;color:#4e4f49;padding:0 35px 24px 0;max-width:65ch}
.subpage-references{padding:55px 6%;display:flex;flex-wrap:wrap;gap:20px 34px;background:#fff}
.subpage-references>p{width:100%;font-size:12px;color:#575850}
@media(max-width:1000px){.subpage-information>div{grid-template-columns:1fr;gap:30px}.subpage-information p{max-width:75ch}}
@media(max-width:800px){.subpage-overview,.subpage-faq{grid-template-columns:1fr;gap:35px;padding:70px 6%}.subpage-overview p,.subpage-information p{font-size:14px}.subpage-information,.subpage-matrix{padding:70px 6%}.subpage-information>div{margin-top:35px}.subpage-faq summary{font-size:17px}.subpage-references{padding:40px 6%;gap:15px 25px}.matrix-scroll th,.matrix-scroll td{padding:17px 14px;font-size:13px}}
@media(max-width:600px){.matrix-scroll{overflow:visible}.matrix-scroll table{min-width:0;display:block}.matrix-scroll thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.matrix-scroll tbody,.matrix-scroll tr{display:block}.matrix-scroll tr{border-top:1px solid #b6b6af;padding:20px 0}.matrix-scroll th,.matrix-scroll td{display:block;width:100%;border:0;padding:9px 0}.matrix-scroll tbody th{width:100%;font-size:19px;margin-bottom:10px}.matrix-scroll td:before{content:attr(data-label);display:block;font-size:11px;color:#575850;margin-bottom:6px}}

/* Company portal: retain the image-led identity, with diagrams and editorial rows. */
.company-portal .subpage-facts{display:block;padding:65px 6%}
.facts-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:36px}
.company-portal .subpage-facts strong{font-size:clamp(32px,3.2vw,52px);line-height:1.2;font-variant-numeric:tabular-nums}
.facts-grid>div{min-width:0}
.facts-note{font-size:12px;line-height:1.7;color:#d0d0ca;margin-top:35px;max-width:90ch}
.company-architecture,.company-timeline,.company-manufacturing,.company-portfolio,.company-documentation{padding:105px 6%}
.company-architecture h2,.company-timeline h2,.company-manufacturing h2,.company-portfolio h2,.company-documentation h2{font-size:clamp(34px,3.5vw,54px);line-height:1.14;letter-spacing:-.035em;text-wrap:balance;max-width:22ch}
.company-architecture>p,.company-timeline>div>p,.manufacturing-copy>p,.portfolio-heading>p,.company-documentation>div>p{font-size:15px;line-height:1.8;color:#4e4f49;max-width:65ch;margin-top:24px}
.company-architecture{background:#e7e7e1}
.architecture-parent{display:flex;align-items:center;justify-content:center;gap:14px;margin:55px auto 50px;max-width:410px;padding:24px;background:#171717;color:#fff;position:relative}
.architecture-parent img{width:39px;height:39px;object-fit:contain}
.architecture-parent strong{font-size:32px;font-weight:500;letter-spacing:-.035em}
.architecture-parent>span{font-size:10px;letter-spacing:.1em}
.architecture-parent:after{content:'';width:1px;height:26px;background:#8c8c83;position:absolute;bottom:-26px;left:50%}
.architecture-branches{--branch-gap:50px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--branch-gap);margin:0;padding:0;list-style:none;position:relative}
.architecture-branches:before{content:'';height:1px;background:#8c8c83;position:absolute;left:calc((100% - var(--branch-gap)*2)/6);right:calc((100% - var(--branch-gap)*2)/6);top:-25px}
.architecture-branches li{position:relative;text-align:center;min-width:0}
.architecture-branches li:before{content:'';width:1px;height:25px;background:#8c8c83;position:absolute;top:-25px;left:50%}
.architecture-branches a{display:block;padding:30px 12px 20px;border-top:1px solid #8c8c83}
.architecture-branches a:hover h3{text-decoration:underline;text-underline-offset:6px}
.architecture-branches h3{font-size:27px;line-height:1.25;letter-spacing:-.025em}
.architecture-branches p{font-size:14px;color:#4e4f49;margin-top:16px}
.architecture-branches a>span{display:block;font-size:12px;color:#4e4f49;margin-top:18px;overflow-wrap:anywhere}
.company-timeline{display:grid;grid-template-columns:.8fr 1.2fr;gap:10%;background:#fff}
.company-timeline>div>p{font-size:13px}
.company-timeline ol{list-style:none;margin:0;padding:0}
.company-timeline li{display:grid;grid-template-columns:90px 1fr;gap:24px;padding:28px 0 34px;border-top:1px solid #c9c9c2}
.company-timeline .timeline-year{font-size:29px;letter-spacing:-.025em;font-variant-numeric:tabular-nums;line-height:1.2}
.company-timeline h3{font-size:25px;line-height:1.3;margin-bottom:15px;letter-spacing:-.025em}
.company-timeline li p,.manufacturing-disciplines p,.portfolio-copy p,.company-documentation dd p{font-size:15px;line-height:1.8;color:#4e4f49;max-width:65ch}
.company-manufacturing{background:#f5f5f2}
.manufacturing-copy{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:start}
.manufacturing-copy>p{margin-top:0}
.company-manufacturing figure{margin:45px 0 0}
.company-manufacturing figure img{width:100%;height:460px;object-fit:cover}
.company-manufacturing figcaption{font-size:11px;color:#575850;margin-top:12px}
.manufacturing-disciplines{display:grid;grid-template-columns:1fr 1fr;gap:0 55px;margin-top:40px}
.manufacturing-disciplines article{border-top:1px solid #c9c9c2;padding:27px 0 35px}
.manufacturing-disciplines h3{font-size:25px;line-height:1.3;letter-spacing:-.025em;margin-bottom:16px}
.company-documentation{display:grid;grid-template-columns:.8fr 1.2fr;gap:10%;background:#e7e7e1}
.company-documentation>div>p{font-size:14px}
.company-documentation dl{margin:0}
.company-documentation dl>div{display:grid;grid-template-columns:110px 1fr;gap:25px;border-top:1px solid #b6b6af;padding:25px 0 32px}
.company-documentation dt{font-size:21px;line-height:1.4}
.company-documentation dd{margin:0}
.company-documentation h3{font-size:23px;line-height:1.3;margin-bottom:16px;letter-spacing:-.025em}
.company-documentation dd .text-link{margin-top:20px;font-size:12px}
.company-portfolio{background:#fff}
.portfolio-heading{display:grid;grid-template-columns:1fr 1fr;gap:10%}
.portfolio-heading>p{margin-top:0;font-size:14px}
.portfolio-list{margin-top:45px}
.portfolio-list article{display:grid;grid-template-columns:.6fr 1.4fr auto;gap:6%;padding:35px 0 40px;border-top:1px solid #c9c9c2;align-items:start}
.portfolio-category{font-size:13px;line-height:1.6;color:#4e4f49}
.portfolio-category span{display:block;margin-top:12px}
.portfolio-copy h3{font-size:clamp(24px,2.4vw,34px);line-height:1.25;margin-bottom:18px;letter-spacing:-.025em;text-wrap:balance}
.portfolio-list .text-link{font-size:12px;white-space:nowrap}
.company-portal .subpage-information>div{display:block;margin-top:40px}
.company-portal .subpage-information article{display:grid;grid-template-columns:.65fr 1.35fr;gap:10%;padding:28px 0 34px}
.company-portal .subpage-information h3{margin:0}
.company-portal .subpage-information p{margin:0}
.company-portal .subpage-information p+p{grid-column:2;margin-top:16px}
.company-portal :focus-visible{outline:2px solid #46865e;outline-offset:5px}
.company-portal ::selection{background:#b4d4bc;color:#171717}
.company-portal input,.company-portal textarea{caret-color:#46865e}
@media(max-width:1000px){.facts-grid{gap:24px}.company-timeline,.company-documentation{gap:6%}.architecture-branches{--branch-gap:24px}.architecture-branches h3{font-size:23px}.portfolio-list article{grid-template-columns:.65fr 1.35fr;gap:24px}.portfolio-list .text-link{grid-column:2}}
@media(max-width:800px){
 .company-architecture,.company-timeline,.company-manufacturing,.company-portfolio,.company-documentation{padding:70px 6%}
 .facts-grid{grid-template-columns:1fr 1fr;gap:35px 22px}.company-portal .subpage-facts{padding:50px 6%}.company-portal .subpage-facts strong{font-size:32px}.facts-note{margin-top:30px;font-size:11px}
 .company-timeline,.company-documentation{grid-template-columns:1fr;gap:40px}.company-timeline li{grid-template-columns:68px 1fr;gap:22px}.company-timeline h3{font-size:22px}.company-timeline .timeline-year{font-size:26px}
 .architecture-parent{margin-top:35px;margin-bottom:30px}.architecture-parent:after,.architecture-branches:before,.architecture-branches li:before{display:none}.architecture-branches{grid-template-columns:1fr;gap:0}.architecture-branches li{text-align:left}.architecture-branches a{padding:25px 0}.architecture-branches a>span{margin-top:12px}.architecture-branches p{margin-top:12px}
 .manufacturing-copy,.portfolio-heading{grid-template-columns:1fr;gap:25px}.company-manufacturing figure{margin-top:35px}.company-manufacturing figure img{height:310px}.manufacturing-disciplines{grid-template-columns:1fr;margin-top:30px}
 .company-timeline li p,.manufacturing-disciplines p,.portfolio-copy p,.company-documentation dd p{font-size:14px}
 .company-documentation dl>div{grid-template-columns:1fr;gap:16px}.company-documentation dt{font-size:24px}
 .portfolio-list article{grid-template-columns:1fr;gap:20px}.portfolio-category span{display:inline;margin:0 0 0 15px}.portfolio-list .text-link{grid-column:1}.portfolio-copy h3{font-size:27px}
 .company-portal .subpage-information article{grid-template-columns:1fr;gap:20px}.company-portal .subpage-information p+p{grid-column:1}
}
@media(max-width:390px){.company-portal .subpage-facts strong{font-size:29px}.facts-grid{gap:30px 15px}}
