/* Scoped enterprise and editorial layouts; CMS bodies remain editable HTML. */
.company-page,.editorial-page{background:#fff;color:#243e53}
.company-banner,.editorial-banner{background:linear-gradient(115deg,#082b48,#125777);color:#fff;position:relative;overflow:hidden}
.company-banner:after,.editorial-banner:after{content:"";position:absolute;right:4%;top:-120px;width:560px;height:560px;border:1px solid #ffffff16;border-radius:50%;box-shadow:0 0 0 70px #ffffff06,0 0 0 140px #ffffff04;pointer-events:none}
.company-banner .container,.editorial-banner .container{position:relative;z-index:1;padding-top:42px;padding-bottom:46px}
.company-banner p,.editorial-banner>.container>p{font-size:12px;letter-spacing:3px;color:#accedf;margin:0 0 10px}
.company-banner h1,.editorial-banner h1{font-size:44px;line-height:1.3;color:#fff;margin:0}
.editorial-banner .container>div{font-size:16px;line-height:1.9;max-width:760px;margin-top:18px;color:#d4e8f1}
.company-root-nav{padding-top:28px}.company-root-nav .company-nav{display:flex;flex-wrap:wrap;gap:8px}
.company-nav a{display:block;color:#40596c;font-size:14px;padding:10px 14px;border:1px solid #dfE7ed;background:#fff;border-radius:3px;line-height:1.5}
.company-nav a:hover,.company-nav .is-current,.company-nav [aria-current="page"]{background:#125d8b;color:#fff;border-color:#125d8b}
.company-root-body{padding-top:48px;padding-bottom:24px}
.company-content{font-size:16px;line-height:1.95;min-width:0;overflow-wrap:anywhere}
.company-content h2{color:#0e3755;font-size:28px;line-height:1.5;margin:0 0 20px;font-weight:700}
.company-content h3{color:#143d59;font-size:20px;line-height:1.5}
.company-content p{margin:0 0 18px;color:#4f6272}
.company-content a{color:#12608f}
.company-content .company-section{margin:0 0 52px}
.company-intro{display:grid;grid-template-columns:1.1fr 1fr;gap:56px;align-items:center;margin-bottom:60px}
.company-content .company-kicker{font-size:12px;letter-spacing:2px;color:#1c6d96;margin-bottom:14px}
.company-intro h2{font-size:34px;line-height:1.5;margin:0 0 22px}
.company-content .company-lead{font-size:18px;color:#334f64;line-height:1.95}
.company-content figure{margin:0;min-width:0;background:#f0f5f8;border-radius:4px;overflow:hidden}
.company-content figure img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover}
.company-intro figure img{aspect-ratio:4/3}
.company-content figcaption{font-size:12px;color:#607687;line-height:1.6;padding:12px 16px}
.company-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.company-content .company-card{display:flex;flex-direction:column;padding:28px 26px;border:1px solid #dce6ed;background:#f8fbfd;color:#143d59;border-radius:4px;text-decoration:none}
.company-card>span{font-size:12px;letter-spacing:1px;color:#367d9e}
.company-card h3{margin:12px 0 16px}.company-card p{font-size:15px;line-height:1.85;flex:1}.company-card b{font-size:14px;color:#12608f;font-weight:500;margin-top:8px}
.company-card[href]:hover{border-color:#72a5bf;background:#eef7fc}
.company-photo-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:0 0 24px}
.company-links{display:flex;flex-wrap:wrap;gap:12px 26px;margin:24px 0}
.company-links a{font-size:15px;font-weight:600;text-decoration:none;border-bottom:1px solid #aec9d9;padding:3px 0}
.company-layout{display:grid;grid-template-columns:220px minmax(0,1fr);gap:56px;align-items:start}
.company-layout>article{min-width:0}.company-aside{border:1px solid #dce6ed;border-top:3px solid #175d85;background:#f6fafc;padding:24px 18px}
.company-aside-title{font-size:19px;font-weight:700;margin:0 0 18px;color:#173f5b}
.company-aside .company-nav{display:grid;gap:5px}.company-aside .company-nav a{border:0;background:transparent;padding:9px 12px}
.company-aside .company-nav .is-current,.company-aside .company-nav [aria-current="page"]{background:#125d8b;color:white}
.company-aside .company-nav a:hover{color:#12608f;background:#e7f1f8}
.company-aside-contact{display:block;border-top:1px solid #d5e2eb;padding:20px 10px 0;margin-top:18px;color:#12608f;font-size:15px}
.company-layout .company-cards{gap:16px}.company-layout .company-card{padding:22px 20px}
.company-content .table-scroll{overflow-x:auto;max-width:100%;margin:24px 0}
.company-content table{width:100%;min-width:560px;border-collapse:collapse;font-size:14px;line-height:1.85;text-align:left}
.company-content th{background:#edf4f8;color:#173f5b;font-weight:600}.company-content th,.company-content td{padding:16px;border:1px solid #dce6ed;vertical-align:top}
.company-source{border-top:1px solid #dce6ed;padding-top:18px;font-size:12px;color:#627686;margin-top:28px}
.company-source summary{cursor:pointer}.company-source p{padding-top:12px;margin-bottom:0;font-size:12px}
.company-enquiry{margin-top:30px;margin-bottom:64px}.company-enquiry>details{border:1px solid #d8e6f0;border-radius:4px;background:#f7fafc}
.company-enquiry>details>summary{padding:24px;font-size:17px;color:#173f5b;font-weight:600;cursor:pointer}
.company-enquiry .contact-panel{padding:24px}.company-enquiry .quote-layout{display:block}.company-enquiry .quote-main{max-width:840px;margin:auto}
.company-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;list-style:none;padding:0!important;margin:24px 0}
.company-steps li{background:#f0f6fa;border-top:3px solid #3d85aa;padding:22px 18px}.company-steps b{font-size:17px}.company-steps p{font-size:14px;margin-top:14px;margin-bottom:0}
.company-faq details{border:1px solid #dce6ed;border-radius:4px;margin:0 0 12px;padding:20px 24px}.company-faq summary{font-size:17px;color:#143d59;font-weight:600;cursor:pointer}.company-faq p{margin:18px 0 10px}.company-faq a{font-size:14px}
.company-timeline{list-style:none;margin:36px 0!important;padding:0!important}.company-timeline li{display:grid;grid-template-columns:110px 1fr;gap:30px;margin:0;padding:0 0 34px}.company-timeline time{font-size:24px;font-weight:700;color:#12608f;line-height:1.5}.company-timeline li>div{padding:0 0 10px 28px;border-left:2px solid #cce0ed}.company-timeline h2{font-size:23px;margin-bottom:12px}.company-timeline p{margin-bottom:0}
.company-note{font-size:14px;padding:18px 22px;background:#f4f8fb;border-left:3px solid #6e9fba}
.company-equipment{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.company-equipment figure img{aspect-ratio:4/3;object-fit:contain;padding:20px;background:#f7fafc}.company-equipment figcaption{padding:12px}
.company-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-bottom:48px}.company-gallery figure:first-child{grid-column:1/-1}.company-gallery figure:first-child img{aspect-ratio:960/252}
/* Lists surface articles first, then the editable category guide. */
.editorial-list-section{padding-top:32px}.news-family-nav{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 36px}
.news-family-nav a{font-size:14px;color:#425d73;background:#f2f6f9;border:1px solid #e0e8ef;padding:10px 18px;line-height:1.5;border-radius:3px}
.news-family-nav a:hover,.news-family-nav .is-current,.news-family-nav [aria-current="page"]{background:#125d8b;color:#fff;border-color:#125d8b}
.editorial-list-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;gap:20px}.editorial-list-heading h2{font-size:26px;color:#133e5b;margin:0}.editorial-list-heading p{font-size:13px;color:#6f8291;margin:0}
.editorial-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.editorial-card{display:flex;flex-direction:column;min-width:0;border:1px solid #dfe7ed;border-radius:4px;overflow:hidden;background:#fff}
.editorial-card-image{display:block;background:#f1f5f8;overflow:hidden}.editorial-card-image img{display:block;width:100%;aspect-ratio:3/2;object-fit:contain;transition:transform .25s}
.editorial-card:hover .editorial-card-image img{transform:scale(1.025)}
.editorial-card-body{padding:24px;display:flex;flex-direction:column;flex:1;min-width:0}
.editorial-card-meta{display:flex;justify-content:space-between;gap:8px;color:#678194;font-size:12px;line-height:1.5}.editorial-card-meta>span{color:#19688f}
.editorial-card h2{font-size:20px;line-height:1.6;margin:14px 0 12px}.editorial-card h2 a{color:#183c57}.editorial-card h2 a:hover{color:#126ba2}
.editorial-card-body>p{font-size:14px;line-height:1.9;color:#607485;margin:0 0 22px;flex:1}
.editorial-card-link{padding-top:16px;border-top:1px solid #e3ebf1;font-size:14px;color:#12608f;display:flex;justify-content:space-between;align-items:center}
.editorial-image-note{font-size:12px;color:#718392;margin:12px 0 30px}
.editorial-guide{border-top:1px solid #dfe7ed;padding-top:32px}.news-guide{background:#f4f8fb;padding:30px 34px;border-left:3px solid #3a81a9}.news-guide h2{font-size:24px;color:#173f5b;margin:0 0 14px}.news-guide p{font-size:15px;color:#536c7e;line-height:1.9;margin:0}.news-guide .company-links{margin-bottom:0}
/* Article title and summary precede a restrained cover; body is not nested in a card. */
.editorial-article-layout{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:56px;align-items:start}
.editorial-article{min-width:0}.editorial-detail .section{padding-top:48px}
.editorial-topic{display:inline-block;color:#14668e;background:#ecf5fa;padding:6px 12px;font-size:13px;border-radius:3px}
.editorial-article-header h1{font-size:34px;line-height:1.55;color:#123955;margin:18px 0 18px;font-weight:700;overflow-wrap:anywhere}
.editorial-article-meta{color:#6d8292;font-size:13px;margin-bottom:22px}
.editorial-summary{font-size:17px;line-height:1.95;color:#476277;margin:0 0 28px;padding-left:20px;border-left:3px solid #81b3ce}
.editorial-cover{margin:0 0 36px;background:#f5f8fa;border-radius:4px;overflow:hidden}
.editorial-cover img{width:100%;max-height:340px;object-fit:contain;display:block}.editorial-cover figcaption{font-size:12px;color:#718391;padding:12px 18px}
.editorial-article-body{font-size:16px;line-height:1.95;min-width:0;overflow-wrap:anywhere}.editorial-article-body .engineering-content>h2:first-child{margin-top:0}
.editorial-article-body h2{scroll-margin-top:24px}.editorial-article-body svg{width:100%;height:auto;max-width:100%}
.editorial-back{display:inline-block;color:#12608f;border-top:1px solid #d9e5ee;width:100%;padding-top:26px;margin-top:34px;font-size:15px}
.editorial-sidebar>section{border-top:3px solid #286e98;padding:24px 0;margin:0 0 26px}.editorial-sidebar h2{font-size:19px;color:#183f5a;margin:0 0 20px}
.editorial-sidebar .news-family-nav{display:grid;gap:7px;margin:0}.editorial-sidebar .news-family-nav a{padding:9px 12px;font-size:14px}
.editorial-related{display:block;padding:16px 0;border-bottom:1px solid #e0e8ef}.editorial-related>span{font-size:12px;color:#618499}.editorial-related h3{color:#284c66;font-size:15px;line-height:1.7;margin:6px 0 0}
.editorial-sidebar .editorial-project-card{background:#f0f6fa;border:1px solid #d5e6f1;padding:24px}.editorial-project-card p{font-size:14px;line-height:1.9;color:#527086}.editorial-project-card a{color:#12608f;font-size:14px;display:block;margin-top:20px}
.company-page a:focus-visible,.editorial-page a:focus-visible,.company-page summary:focus-visible{outline:3px solid #57a5d4;outline-offset:4px}
@media(max-width:1100px){.editorial-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.company-intro{gap:32px}.company-intro h2{font-size:29px}.company-layout{gap:32px;grid-template-columns:190px minmax(0,1fr)}.company-layout .company-cards{grid-template-columns:1fr}.editorial-article-layout{gap:32px;grid-template-columns:minmax(0,1fr) 220px}}
@media(max-width:800px){.company-intro{grid-template-columns:1fr}.company-layout{grid-template-columns:1fr;gap:32px}.company-aside{padding:18px}.company-aside .company-nav{display:flex;flex-wrap:wrap;gap:6px}.company-aside .company-nav a{background:#fff;border:1px solid #e1eaf1;font-size:13px}.company-aside-title{margin-bottom:14px}.company-aside-contact{display:none}.company-cards{grid-template-columns:1fr}.company-steps{grid-template-columns:repeat(2,minmax(0,1fr))}.editorial-article-layout{grid-template-columns:1fr}.editorial-sidebar{display:grid;grid-template-columns:1fr 1fr;gap:24px}.editorial-sidebar .editorial-project-card{grid-column:1/-1}.editorial-article-header h1{font-size:30px}}
@media(max-width:600px){.company-banner .container,.editorial-banner .container{padding-top:30px;padding-bottom:32px}.company-banner h1,.editorial-banner h1{font-size:30px}.editorial-banner .container>div{font-size:14px}.company-root-nav{padding-top:20px}.company-nav a{font-size:12px;padding:8px 10px}.company-root-body{padding-top:32px}.company-content{font-size:15px}.company-content h2{font-size:23px}.company-intro h2{font-size:27px}.company-content .company-lead{font-size:16px}.company-content .company-section{margin-bottom:34px}.company-intro{margin-bottom:38px}.company-photo-grid,.company-gallery{grid-template-columns:1fr;gap:18px}.company-equipment{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.company-equipment figure img{padding:10px}.company-equipment figcaption{font-size:11px}.company-steps{grid-template-columns:1fr}.company-steps li{padding:18px}.company-timeline li{grid-template-columns:1fr;gap:12px}.company-timeline li>div{padding-left:20px}.company-timeline time{font-size:26px}.company-faq details{padding:18px}.company-faq summary{font-size:15px}.company-enquiry>details>summary{padding:18px;font-size:15px}.company-enquiry .contact-panel{padding:18px}.company-links{gap:12px 20px}.company-links a{font-size:14px}.news-family-nav{gap:7px;margin-bottom:26px}.news-family-nav a{font-size:12px;padding:8px 11px}.editorial-list-heading{display:block}.editorial-list-heading h2{font-size:23px;margin-bottom:8px}.editorial-cards{grid-template-columns:1fr;gap:22px}.editorial-card-body{padding:22px}.editorial-card h2{font-size:19px}.news-guide{padding:24px 20px}.news-guide h2{font-size:21px}.editorial-detail .section{padding-top:30px}.editorial-article-header h1{font-size:26px}.editorial-summary{font-size:15px;padding-left:14px}.editorial-cover img{max-height:260px}.editorial-article-body{font-size:15px}.editorial-sidebar{display:block}}
@media(prefers-reduced-motion:reduce){.editorial-card-image img{transition:none}}
/* Keep reading columns clear of the existing contact rail. */
.company-page main .container,.editorial-page main .container{max-width:1280px}
@media(max-width:1100px){.company-page .side-contact,.editorial-page .side-contact{display:none}}
@media(max-width:600px){.company-page .back-top,.editorial-page .back-top{display:none}}
.company-root-nav .company-nav{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}
.company-root-nav .company-nav a{text-align:center}
@media(max-width:1100px){.company-root-nav .company-nav{grid-template-columns:repeat(5,minmax(0,1fr))}}
@media(max-width:600px){.company-root-nav .company-nav{display:flex}.company-root-nav .company-nav a{text-align:left}}

/* Launch review: concise scene captions, natural image proportions and contact flow. */
.company-content figure img{aspect-ratio:auto;height:auto;object-fit:contain}
.company-gallery figure:first-child img{aspect-ratio:auto}
.company-content .company-photo-grid{margin-top:28px}
.company-section>.company-photo-grid{margin-top:0}
.company-content .company-card{min-width:0}
.contact-invitation-section{padding:38px 0 0;background:#fff}
.contact-invitation{max-width:820px;margin:0 auto;text-align:center}
.contact-invitation h2{font-size:30px;color:#123955;margin:0 0 16px;line-height:1.5}
.contact-invitation p{font-size:16px;color:#526b7e;line-height:1.9;margin:0}
.enterprise-contact-page main>.section{padding-top:36px}
.enterprise-contact-page .contact-layout{align-items:start;gap:48px;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}
.enterprise-contact-page .contact-info,.enterprise-contact-page .contact-panel{min-width:0}
.enterprise-contact-page .contact-panel{padding:30px;border:1px solid #dce6ed;background:#fff;border-radius:4px}
.enterprise-contact-page .contact-map-section{padding:12px 0 56px}
.enterprise-contact-page .contact-map-frame iframe{width:100%;border:0;min-height:380px}
.company-page main .container,.editorial-page main .container,.enterprise-contact-page main .container{max-width:min(1180px,calc(100% - 72px))}
@media(max-width:1100px){.enterprise-contact-page .side-contact{display:none}.company-page main .container,.editorial-page main .container,.enterprise-contact-page main .container{max-width:calc(100% - 40px)}}
@media(max-width:800px){.enterprise-contact-page .contact-layout{grid-template-columns:1fr;gap:28px}.enterprise-contact-page .contact-panel{padding:24px}}
@media(max-width:600px){.company-page main .container,.editorial-page main .container,.enterprise-contact-page main .container{max-width:calc(100% - 32px)}.contact-invitation h2{font-size:24px}.contact-invitation p{font-size:15px}.enterprise-contact-page .contact-panel{padding:20px}.enterprise-contact-page .back-top{display:none}}

/* Topic diagrams preserve their labels; reuse the native editorial cards. */
.editorial-card-image{aspect-ratio:8/5;background:#f5f9fd}.editorial-card-image img{width:100%;height:100%;object-fit:contain}.engineering-decision{margin:32px 0;padding:24px;background:#f5f9fd;border-left:3px solid #2467ac;border-radius:4px}.engineering-decision h2{margin-top:0}.engineering-decision li{padding:6px 0}.engineering-next{display:flex;flex-wrap:wrap;gap:12px 24px;margin:24px 0}.engineering-next a{padding:8px 0}.engineering-next a:focus-visible{outline:2px solid #2467ac;outline-offset:4px}.engineering-decision,.engineering-next{animation:engineering-arrive .28s ease both}@keyframes engineering-arrive{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media(max-width:600px){.engineering-decision{padding:18px}.engineering-decision ol{padding-left:22px}}@media(prefers-reduced-motion:reduce){.engineering-decision,.engineering-next{animation:none}}
