button,input{font:inherit}.main-nav a.active{color:var(--teal);font-weight:700}.header-actions{min-width:44px}.hero{padding-top:46px}.hero-visual{height:430px}.visual-kicker{position:absolute;top:28px;left:28px;color:#44768d;font-size:10px;font-weight:700;letter-spacing:.16em}.home-news{padding:30px 0 82px}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:23px}.section-heading .eyebrow{margin-bottom:9px}.section-heading h2,.library-intro h2{font-size:34px;color:var(--navy);margin:0;line-height:1.25}.section-heading>a{font-size:13px;color:var(--teal);text-decoration:none;font-weight:700}.category-links{display:flex;gap:10px;border-bottom:1px solid var(--line);padding-bottom:15px;margin-bottom:22px}.category-links a{padding:8px 16px;border-radius:20px;background:#fff;border:1px solid var(--line);color:var(--muted);font-size:12px;text-decoration:none}.category-links a:first-child,.category-links a:hover{color:#fff;background:var(--navy);border-color:var(--navy)}.news-lead-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:26px}.lead-story{min-height:410px;border-radius:15px;overflow:hidden;position:relative;padding:34px;background:linear-gradient(145deg,#092f5d 0%,#0c5a75 58%,#12888b 100%);color:#fff;text-decoration:none;display:flex;align-items:flex-end}.lead-story:before{content:"";position:absolute;inset:0;background:linear-gradient(transparent 25%,#042746df),repeating-linear-gradient(135deg,transparent 0 27px,#ffffff08 28px 29px)}.lead-story:after{content:"⌁";position:absolute;right:30px;top:25px;font-size:120px;color:#b6e3e533;transform:rotate(-10deg)}.lead-story>div,.lead-tag{position:relative;z-index:1}.lead-tag{position:absolute;top:26px;left:28px;border:1px solid #ffffff66;border-radius:20px;padding:7px 13px;font-size:11px}.lead-story .article-meta{color:#c7e3e7}.lead-story h3{font-size:30px;line-height:1.35;margin:14px 0}.lead-story p{font-size:14px;line-height:1.8;color:#d9eaee;max-width:640px}.lead-story b{display:block;margin-top:22px;font-size:13px}.headline-stack{background:#fff;border:1px solid var(--line);border-radius:15px;padding:4px 27px}.headline-stack article{padding:20px 0;border-bottom:1px solid var(--line)}.headline-stack article:last-child{border:0}.headline-stack h3{font-size:17px;line-height:1.45;margin:7px 0;color:var(--navy)}.headline-stack p{font-size:12px;line-height:1.65;color:var(--muted);margin:0}.article-meta{display:flex;gap:12px;align-items:center;color:#7890a3;font-size:11px}.article-meta span{color:var(--teal);font-weight:700}.home-libraries{background:#eaf3f8;padding:75px 0 82px;border-top:1px solid #d6e6ef}.library-intro{display:grid;grid-template-columns:1.2fr .8fr;gap:70px;align-items:end;margin-bottom:32px}.library-intro .eyebrow{margin-bottom:12px}.library-intro>p{color:var(--muted);line-height:1.9;font-size:14px;margin:0}.home-libraries .pillar-grid{grid-template-columns:repeat(3,1fr)}
.subpage .site-header{position:relative}.sub-hero{padding-top:62px;padding-bottom:52px}.library-toolbar{margin-top:28px}.library-intro--single{display:block}.search-field{height:44px;min-width:300px;display:flex;align-items:center;gap:8px;border:1px solid var(--line);background:#fff;border-radius:7px;padding:0 14px;color:#7890a3}.search-field input{border:0;outline:0;width:100%;background:transparent;color:var(--ink);font-size:13px}.filter{cursor:pointer}.project-card-body>small{display:block;color:#6f8296;line-height:1.5;margin:0 0 17px}.project-card-body>a,.company-card a{display:block;margin-top:16px}.preparing{display:block;color:#8b9aaa;font-size:12px;margin-top:16px}.company-card .preparing{margin-top:15px}.project-card:not(:has(a)),.company-card:not(:has(a)){box-shadow:none}.project-card:not(:has(a)):hover,.company-card:not(:has(a)):hover{transform:none}.news-wrap{width:min(1120px,calc(100% - 64px));margin:28px auto 80px}.news-toolbar{display:flex;justify-content:space-between;gap:24px;align-items:center;margin-bottom:23px}.news-toolbar .filter-row{justify-content:flex-start}.article-list{background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden}.article-row{display:grid;grid-template-columns:185px 1fr;gap:30px;padding:25px;border-bottom:1px solid var(--line)}.article-row:last-child{border-bottom:0}.article-index{min-height:130px;border-radius:9px;display:grid;place-items:center;background:linear-gradient(145deg,#0b345d,#11868b);color:#fff;position:relative;overflow:hidden}.article-index:after{content:"⌁";font-size:85px;position:absolute;color:#ffffff23}.article-index span{z-index:1;font-size:12px;border:1px solid #ffffff77;border-radius:20px;padding:6px 10px}.article-index.tone-1{background:linear-gradient(145deg,#193b68,#436c8d)}.article-index.tone-2{background:linear-gradient(145deg,#146970,#4b9ca0)}.article-copy h2{font-size:22px;color:var(--navy);margin:10px 0 8px}.article-copy p{font-size:13px;color:var(--muted);line-height:1.7;margin:0}.article-copy a{display:inline-block;color:var(--teal);font-size:12px;font-weight:700;text-decoration:none;margin-top:15px}.empty-state{text-align:center;padding:60px;color:var(--muted)}
.prose-page,.article-page{width:min(820px,calc(100% - 48px));margin:0 auto;padding:66px 0 90px}.prose-page h2,.article-page h2,.detail-main h2{font-size:25px;color:var(--navy);margin:37px 0 15px}.prose-page p,.article-page>p,.detail-main p{font-size:16px;line-height:2;color:#465a73}.topic-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.topic-grid span{padding:17px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--navy);font-size:13px}.article-page{width:min(860px,calc(100% - 48px))}.article-page>h1{font-size:44px;line-height:1.3;color:var(--navy);margin:18px 0}.article-deck{font-size:18px!important;color:#50667e!important}.article-hero-art{height:320px;border-radius:14px;margin:35px 0;background:linear-gradient(145deg,#082f59,#087d82);color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;overflow:hidden}.article-hero-art:before{content:"⌁";position:absolute;font-size:240px;color:#ffffff12}.article-hero-art span{font-size:43px;font-weight:800;letter-spacing:.06em;z-index:1}.article-hero-art b{font-size:11px;letter-spacing:.14em;margin-top:11px;z-index:1}.related-box{margin-top:40px;padding:22px;border:1px solid var(--line);background:#fff;border-radius:10px;display:flex;justify-content:space-between}.related-box a{color:var(--teal);text-decoration:none;font-size:13px}.detail-hero{background:#fff;border-bottom:1px solid var(--line);padding:64px max(32px,calc((100% - 1120px)/2));display:flex;justify-content:space-between;align-items:center}.detail-hero h1{font-size:52px;color:var(--navy);margin:0 0 12px}.detail-hero p:last-child{color:var(--muted);margin:0}.status-pill{padding:9px 15px;border-radius:20px;color:#076b72;background:#e4f3f3;font-size:12px}.detail-layout{width:min(1120px,calc(100% - 64px));margin:42px auto 80px;display:grid;grid-template-columns:1fr 320px;gap:55px}.detail-main section{padding-bottom:30px;border-bottom:1px solid var(--line)}.detail-main section:last-child{border:0}.facts-card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:25px;height:max-content;position:sticky;top:25px}.facts-card h3{margin:0 0 20px;color:var(--navy)}.facts-card dl{margin:0}.facts-card dt{font-size:11px;color:#8192a4;margin-top:14px}.facts-card dd{font-size:14px;color:var(--ink);margin:5px 0 0}.facts-card p{border-top:1px solid var(--line);padding-top:18px;margin-top:22px;font-size:11px;line-height:1.7;color:#7d8fa1}.timeline{list-style:none;padding:0;margin:22px 0}.timeline li{display:grid;grid-template-columns:100px 1fr;gap:20px;padding:0 0 24px;position:relative}.timeline time{font-size:12px;color:var(--teal);font-weight:700}.timeline b{color:var(--navy)}.timeline p{font-size:13px;margin:6px 0 0}.related-story{display:flex;align-items:center;gap:15px;padding:20px;background:#fff;border:1px solid var(--line);border-radius:9px;color:var(--navy);text-decoration:none}.related-story span{color:var(--teal);font-size:11px}.related-story i{font-style:normal;margin-left:auto}.company-detail-hero{justify-content:flex-start;gap:24px}.company-logo.large{width:86px;height:86px;font-size:24px}.english-headlines{display:grid;grid-template-columns:1fr 1fr;gap:0 30px}.english-headlines article:nth-last-child(-n+2){border-bottom:0}
@media(max-width:900px){.news-lead-grid,.library-intro,.detail-layout{grid-template-columns:1fr}.facts-card{position:relative;top:auto}.news-toolbar{align-items:flex-start;flex-direction:column}.home-libraries .pillar-grid{grid-template-columns:1fr}.article-row{grid-template-columns:150px 1fr}.main-nav{display:flex;gap:18px;margin-right:25px}.main-nav a{font-size:13px}.header-actions{gap:10px}}
@media(max-width:640px){.site-header{padding:0 18px}.main-nav{display:none}.hero{padding-top:30px}.hero-visual{height:275px}.home-news{padding:35px 0 55px}.section-heading h2,.library-intro h2{font-size:27px}.category-links{overflow:auto;padding-bottom:13px}.category-links a{white-space:nowrap}.news-lead-grid{gap:14px}.lead-story{min-height:330px;padding:24px}.lead-story h3{font-size:24px}.headline-stack{padding:2px 19px}.home-libraries{padding:54px 0}.article-row{grid-template-columns:1fr;gap:16px;padding:18px}.article-index{min-height:105px}.news-wrap,.detail-layout{width:calc(100% - 36px)}.news-toolbar .search-field,.library-toolbar .search-field{min-width:0;width:100%}.library-toolbar{display:flex;flex-direction:column;align-items:stretch}.library-toolbar .filter-row{margin-top:0}.article-page>h1{font-size:34px}.article-hero-art{height:240px}.article-hero-art span{font-size:30px}.topic-grid{grid-template-columns:1fr 1fr}.detail-hero{padding:44px 18px;align-items:flex-start;gap:20px}.detail-hero h1{font-size:38px}.detail-layout{margin-top:25px;gap:25px}.related-box{gap:15px;flex-direction:column}.english-headlines{grid-template-columns:1fr}footer>span{line-height:1.6}.project-card-body>small{font-size:11px}}

/* Homepage editorial hero: content-led, without decorative empty artwork. */
.hero--editorial{display:block;padding:54px 0 16px}
.hero--editorial .hero-copy{max-width:none;padding:0}
.hero--editorial h1{max-width:none;font-size:clamp(46px,4.55vw,68px);line-height:1.12;letter-spacing:-.06em;white-space:nowrap}
.hero--editorial .hero-description{max-width:760px;font-size:18px;line-height:1.85;margin:25px 0 0}
.hero-text-link{display:inline-flex;align-items:center;gap:15px;padding:14px 3px;color:var(--navy);font-size:14px;font-weight:700;text-decoration:none;border-bottom:1px solid #8ca8bb}
.hero-text-link span{font-size:19px;font-weight:400;color:var(--teal)}
.hero-focus{display:flex;align-items:center;gap:30px;margin-top:30px;padding:17px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.hero-focus-label{flex:none;color:#73899b;font-size:11px;font-weight:700;letter-spacing:.14em}
.hero-focus>div{display:flex;align-items:center;flex-wrap:wrap;gap:0}
.hero-focus a{color:var(--ink);font-size:13px;text-decoration:none;padding:0 22px;border-left:1px solid #cfdde7}
.hero-focus a:first-child{border-left:0;padding-left:0}
.hero-focus a:hover{color:var(--teal)}

@media(max-width:900px){.hero--editorial{padding-top:45px}.hero--editorial h1{font-size:52px;white-space:normal}.hero-focus{align-items:flex-start;margin-top:32px}.hero-focus>div{row-gap:14px}.hero-focus a{padding:0 15px}}
@media(max-width:560px){.hero--editorial{padding:34px 0 8px}.hero--editorial h1{font-size:40px;line-height:1.18;letter-spacing:-.045em}.hero--editorial .hero-description{font-size:15px;line-height:1.8;margin:20px 0 0}.hero-focus{display:block;margin-top:27px;padding:17px 0}.hero-focus-label{display:block;margin-bottom:13px}.hero-focus>div{gap:10px 0}.hero-focus a{padding:0 11px;font-size:12px}.hero-focus a:nth-child(4){border-left:0;padding-left:0}}

/* Editorial series are an additional layer, separate from article type. */
.article-meta em{font-style:normal;color:#657d91;padding-left:12px;border-left:1px solid var(--line)}
.series-feature{margin-top:28px;padding:23px 26px;display:grid;grid-template-columns:130px 1.05fr 1.35fr auto;gap:26px;align-items:center;background:#fff;border:1px solid var(--line);border-left:4px solid var(--teal);border-radius:12px}
.series-label .eyebrow{margin:0 0 7px;font-size:9px}.series-label strong{font-size:18px;color:var(--navy)}
.series-name{display:flex;flex-direction:column;gap:7px}.series-name span{font-size:20px;font-weight:800;color:var(--navy)}.series-name small{color:var(--muted);font-size:12px;line-height:1.55}
.series-story h3{font-size:16px;line-height:1.45;color:var(--navy);margin:7px 0 0}.series-feature>a{white-space:nowrap;color:var(--teal);font-size:12px;font-weight:700;text-decoration:none}
@media(max-width:900px){.series-feature{grid-template-columns:110px 1fr 1.2fr}.series-feature>a{grid-column:2/4}}
@media(max-width:640px){.series-feature{grid-template-columns:1fr;gap:17px;padding:20px}.series-feature>a{grid-column:auto}.article-meta{flex-wrap:wrap}.article-meta em{padding-left:0;border-left:0;width:100%}}

/* Complete knowledge articles */
.headline-stack h3 a{color:inherit;text-decoration:none}.headline-stack h3 a:hover{color:var(--teal)}
.article-series{color:var(--teal);font-size:12px;font-weight:700;margin:14px 0 0}
.article-chain{margin:34px 0 42px;display:grid;grid-template-columns:repeat(7,1fr);gap:8px}
.article-chain span{min-height:74px;padding:13px 8px;border:1px solid var(--line);border-radius:8px;background:#fff;display:flex;align-items:center;justify-content:center;text-align:center;color:var(--navy);font-size:12px;line-height:1.5;position:relative}
.article-chain span:not(:last-child):after{content:"→";position:absolute;right:-11px;z-index:1;color:var(--teal);font-weight:700;background:var(--pale);padding:1px}
.knowledge-section{margin:0;padding:0;border:0}
.knowledge-section p{font-size:16px;line-height:2;color:#465a73}
.article-page--en>h1{font-size:42px;line-height:1.22;letter-spacing:-.025em}
.article-page--en .article-deck{line-height:1.75!important}
.article-page--en .knowledge-section h2{font-size:24px;line-height:1.35;letter-spacing:-.01em}
@media(max-width:640px){.article-chain{display:flex;overflow-x:auto;padding-bottom:8px}.article-chain span{min-width:112px}}

/* News photography */
.lead-story--photo{background-position:center;background-size:cover}
.lead-story--photo:before{background:linear-gradient(180deg,rgba(4,24,47,.02) 20%,rgba(4,24,47,.84) 100%)}
.lead-story--photo:after{display:none}
.article-index--photo{display:block}
.article-index--photo:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 35%,rgba(4,24,47,.72))}
.article-index--photo img{width:100%;height:100%;min-height:130px;object-fit:cover;display:block}
.article-index--photo span{position:absolute;left:14px;bottom:13px;z-index:1;background:rgba(4,36,85,.62)}
.article-cover{margin:34px 0 36px}
.article-cover img{display:block;width:100%;max-height:500px;object-fit:cover;border-radius:13px;background:#dce8ef}
.article-cover figcaption{margin-top:9px;text-align:right;font-size:11px;line-height:1.5;color:#7b8ea0}
.article-cover figcaption a{color:inherit;text-decoration:none}
.article-cover figcaption a:hover{color:var(--teal)}
@media(max-width:640px){.article-index--photo img{min-height:175px}.article-cover{margin:26px 0 30px}.article-cover img{max-height:360px;border-radius:10px}}
.article-media{margin:34px 0}.article-media img{display:block;width:100%;height:auto;border-radius:13px;background:#dce8ef}.article-media figcaption{margin-top:9px;text-align:right;font-size:11px;line-height:1.5;color:#7b8ea0}
.about-contact{padding:0 0 90px}.about-contact-inner{width:min(1120px,calc(100% - 48px));margin:0 auto;padding:42px;display:grid;grid-template-columns:minmax(390px,1.05fr) minmax(360px,.95fr);gap:54px;background:#fff;border:1px solid var(--line);border-radius:16px}.about-contact-copy h2{margin:8px 0 20px;color:var(--navy);font-size:30px}.about-company-summary{margin:0 0 28px;color:#536b7d;font-size:14px;line-height:1.9}.about-contact-copy dl{margin:0;display:grid;grid-template-columns:max-content 1fr;gap:11px 20px}.about-contact-copy dt{color:#7b8ea0;font-size:12px}.about-contact-copy dd{margin:0;color:var(--navy);font-size:14px;overflow-wrap:anywhere}.about-contact-copy a{color:var(--teal);text-decoration:none}.about-contact-qrs{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-self:start}.about-qr-card{margin:0;text-align:center}.about-qr-card img{display:block;width:100%;aspect-ratio:1/1.15;object-fit:contain;background:#fff;border:1px solid var(--line);border-radius:11px}.about-qr-card figcaption{margin-top:12px;color:var(--navy);font-size:13px}.about-qr-card figcaption strong,.about-qr-card figcaption span{display:block}.about-qr-card figcaption span{margin-top:4px;color:var(--muted);font-size:12px}
.about-social-presence{grid-column:1/-1;padding-top:30px;border-top:1px solid var(--line)}.about-social-presence h3{position:relative;display:inline-block;margin:0 0 28px;padding-bottom:12px;color:var(--navy);font-size:22px;line-height:1.3}.about-social-presence h3::after{position:absolute;bottom:0;left:0;width:72%;height:3px;border-radius:3px;background:var(--teal);content:""}.about-social-presence-list{margin:0;padding:0;display:flex;flex-wrap:wrap;gap:24px 30px;list-style:none}.about-social-presence-list li{width:92px;display:flex;flex-direction:column;align-items:center;gap:9px;color:var(--navy);text-align:center}.about-social-presence-mark{width:58px;height:58px;flex:0 0 58px;display:grid;place-items:center;border-radius:50%;background:linear-gradient(145deg,var(--navy),var(--teal));color:#fff;font-size:21px;font-weight:800;letter-spacing:-.04em;box-shadow:0 7px 18px rgba(8,43,65,.12)}.about-social-presence-list li:nth-child(2) .about-social-presence-mark{font-size:12px;letter-spacing:.02em}.about-social-presence-list li:nth-child(5) .about-social-presence-mark{font-size:18px}.about-social-presence-name{font-size:13px;font-weight:700;white-space:nowrap}
@media(max-width:900px){.about-contact-inner{grid-template-columns:1fr}.about-contact-qrs{max-width:600px}}
@media(max-width:640px){.article-media{margin:26px 0}.article-media img{border-radius:10px}.about-contact{padding-bottom:60px}.about-contact-inner{width:calc(100% - 36px);padding:26px 20px;gap:34px}.about-contact-copy dl{grid-template-columns:1fr;gap:4px}.about-contact-copy dd{margin-bottom:12px}.about-contact-qrs{gap:12px}.about-qr-card figcaption{font-size:12px}.about-social-presence{padding-top:24px}.about-social-presence h3{font-size:20px}.about-social-presence-list{display:grid;grid-template-columns:repeat(3,1fr);gap:18px 8px}.about-social-presence-list li{width:auto;min-width:0}.about-social-presence-mark{width:48px;height:48px;flex-basis:48px;font-size:18px}.about-social-presence-name{font-size:12px}}
.news-toolbar{align-items:flex-start}
.news-filters{display:grid;gap:12px;min-width:0}
.filter-group{display:flex;align-items:flex-start;gap:12px}
.filter-group>span{flex:none;width:56px;padding-top:9px;color:#7890a3;font-size:11px}
@media(max-width:640px){.filter-group{display:block}.filter-group>span{display:block;width:auto;padding:0;margin:0 0 7px}.news-filters{width:100%}}

/* Structured project and company directories. */
.library-toolbar--directory{align-items:flex-start}
.library-filter-groups{display:grid;flex:1;gap:10px;min-width:0}
.library-filter-group{display:flex;align-items:flex-start;justify-content:flex-end;gap:12px;min-width:0}
.library-filter-label{flex:none;width:48px;padding-top:9px;color:#7890a3;font-size:11px}
.library-filter-group .filter-row{justify-content:flex-end;min-width:0}
.project-directory{width:min(1120px,calc(100% - 64px));margin:34px auto 80px}
.directory-region+.directory-region{margin-top:54px}
.directory-region-header{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding-bottom:15px;border-bottom:2px solid var(--navy)}
.directory-region-header p{margin:0 0 5px;color:var(--teal);font-size:9px;font-weight:800;letter-spacing:.16em}
.directory-region-header h2{margin:0;color:var(--navy);font-size:29px;line-height:1.2}
.directory-region-header>span{flex:none;padding:6px 11px;border-radius:18px;background:#e5f1f5;color:#657d91;font-size:11px}
.directory-region-header>span b{color:var(--navy)}
.directory-location{margin-top:27px}
.directory-location>h3{display:flex;align-items:center;gap:10px;margin:0 0 14px;color:var(--navy);font-size:17px;line-height:1.35}
.directory-location>h3:before{content:"";width:4px;height:18px;border-radius:3px;background:var(--teal)}
.directory-location>h3 span{display:inline-flex;align-items:center;justify-content:center;min-width:23px;height:20px;padding:0 6px;border-radius:10px;background:#edf4f7;color:#708697;font-size:10px}
.project-directory .project-grid{width:100%;margin:0}
.company-grid--alphabetical{align-items:stretch}
[data-v19-region-section][hidden],[data-v19-location-group][hidden]{display:none}
@media(max-width:900px){.library-toolbar--directory{display:block}.library-toolbar--directory .search-field{width:100%;min-width:0;margin-bottom:16px}.library-filter-group{justify-content:flex-start}.library-filter-group .filter-row{justify-content:flex-start}}
@media(max-width:640px){.library-filter-groups{width:100%}.library-filter-group{display:block}.library-filter-label{display:block;width:auto;padding:0;margin:0 0 7px}.library-filter-group .filter-row{display:flex;flex-wrap:nowrap;overflow-x:auto;padding-bottom:5px}.library-filter-group .filter{flex:none}.project-directory{width:calc(100% - 36px);margin-top:28px}.directory-region+.directory-region{margin-top:42px}.directory-region-header{align-items:center;gap:14px}.directory-region-header h2{font-size:25px}.directory-region-header>span{white-space:nowrap}.directory-location{margin-top:22px}.directory-location>h3{font-size:15px}}
