/* Final 4.0 foundation and layout decisions. */
#mp-eco-way { background: #1C2A3A !important; color: #FFFFFF !important; padding: 120px 0 !important; display: block; min-height: 0; scroll-margin-top: 100px; }
#mp-eco-way > .eyebrow,#mp-eco-way > div { width: calc(100% - 48px); max-width: 1200px; margin-left: auto; margin-right: auto; box-sizing: border-box; }
#mp-eco-way > .eyebrow { color: #F8F5EE !important; opacity: .7; font-size: 12px; margin-bottom: 24px; }
#mp-eco-way h2 { color: #FFFFFF !important; margin-top: 0; margin-bottom: 24px; }
#mp-eco-way > div > p { color: #F8F5EE !important; opacity: .9; font-size: 1.1rem; line-height: 1.8 !important; max-width: 900px !important; margin-bottom: 0 !important; }
#mp-eco-way > div > p span { color: inherit !important; }
#mp-eco-way .button { background: #0047BB !important; color: #FFFFFF !important; border: 0 !important; border-radius: 4px !important; padding: 16px 32px !important; display: inline-flex; align-items: center; gap: 12px; font-weight: 600; transition: transform .3s ease,background-color .3s ease; }
#mp-eco-way .button:is(:hover,:focus-visible) { background: #003C9F !important; transform: translateY(-2px); }
#mp-eco-way .button > span { background: none !important; box-shadow: none !important; color: #FFFFFF !important; font-size: inherit; }
#mp-eco-way .button { margin-top: 40px !important; }
@media(max-width:768px) { #mp-eco-way { padding: 64px 0 !important; } #mp-eco-way h2 { font-size: 2.5rem !important; } #mp-eco-way .button { margin-top: 24px !important; } }
.proof-grid > article + article { border-left: 1px solid rgba(0,0,0,.08) !important; }
body #main .cta-band .button { background: #0056B3 !important; color: #FFFFFF !important; border: none !important; border-radius: 4px; padding: 16px 32px; display: inline-flex; align-items: center; gap: 12px; font-weight: 600; transition: background-color .3s ease,transform .3s ease; }
body #main .cta-band .button:is(:hover,:focus-visible) { background: #004494 !important; transform: translateY(-2px); }
@media(prefers-reduced-motion:reduce) { body #main .cta-band .button { transition: none; } body #main .cta-band .button:is(:hover,:focus-visible) { transform: none; } }
.cta-band .button > span,.cta-band .button svg { color: #FFFFFF !important; background: none !important; box-shadow: none !important; }
@media(max-width:768px) { .proof-grid > article + article { border-left: 0 !important; } }
@media(prefers-reduced-motion:reduce) { #mp-eco-way .button { transition: none; } #mp-eco-way .button:hover { transform: none; } }
#what-we-make .solution-card { box-sizing: border-box; background: #FCFAF6 !important; color: #0F1E36 !important; border: 1px solid rgba(28,42,58,.05) !important; border-radius: 8px; display: flex; flex-direction: column; justify-content: flex-start; padding: 24px !important; height: 480px !important; min-height: 480px !important; max-height: 520px !important; position: relative; overflow: hidden; box-shadow: 0 2px 8px rgba(0,0,0,.02); transition: transform .3s ease,box-shadow .3s ease; }
#what-we-make .solution-card::before,#what-we-make .solution-card::after { content: none !important; }
html { -webkit-tap-highlight-color: transparent; }
@media(hover:hover) and (pointer:fine) { #what-we-make .solution-card:hover { transform: translateY(-4px); box-shadow: 0 12px 24px rgba(0,0,0,.06) !important; } #what-we-make .solution-card:hover .card-image-container img { opacity: 1; transform: scale(1.05); } }
#what-we-make .card-text-top { position: static; background: none; padding: 0; }
#what-we-make .card-number { position: static; color: #6B7280; font-size: 12px; }
#what-we-make .solution-card h3 { margin: 8px 0 12px !important; font-size: 2rem; color: #0F1E36 !important; }
#what-we-make .solution-card p { margin: 0 0 16px !important; font-size: 1rem; line-height: 1.6; color: rgba(28,42,58,.8) !important; }
#what-we-make .card-image-container { box-sizing: border-box; width: 100%; height: 180px !important; flex: 0 0 180px; display: flex; justify-content: center; align-items: center; margin-top: auto !important; margin-bottom: 24px !important; padding: 8px 8px 16px; overflow: hidden; }
#what-we-make .card-image-container { background: #FCFAF6 !important; overflow: hidden; }
#what-we-make .card-image-container img { display: block; width: 100% !important; height: 100% !important; max-width: 95% !important; max-height: 95% !important; object-fit: contain !important; opacity: .35; filter: brightness(1.05) contrast(1.05) !important; transform: scale(1); transition: opacity .4s cubic-bezier(.2,.8,.2,1),transform .4s cubic-bezier(.2,.8,.2,1); mix-blend-mode: multiply !important; background: transparent !important; }
#what-we-make .solution-card:focus-visible .card-image-container img { opacity: 1; transform: scale(1.05); }
@media(hover:none),(pointer:coarse) { #what-we-make .solution-card { transform: none !important; } #what-we-make .solution-card .card-image-container img { opacity: 1 !important; transform: none !important; transition: none; } #what-we-make .solution-card:active { opacity: .8; } }
#what-we-make .card-discover { position: static !important; inset: auto !important; display: inline-flex; align-items: center; gap: 8px; margin-top: 0; color: #0F1E36 !important; font-family: 'Inter',sans-serif !important; font-size: 12px; font-weight: 600; text-transform: uppercase; }
#what-we-make .solution-card { box-shadow: 0 2px 8px rgba(0,0,0,.02) !important; }
#what-we-make .section-head > .text-link { display: inline-flex; align-items: center; gap: 8px; border-bottom: 1px solid currentColor; color: #0F1E36; padding-bottom: 4px; text-decoration: none; }
#what-we-make .text-link svg,#what-we-make .card-discover svg { background: none; box-shadow: none; flex-shrink: 0; }
@media(prefers-reduced-motion:reduce) { #what-we-make .solution-card,#what-we-make .card-image-container img { transition: none; } #what-we-make .solution-card:hover,#what-we-make .solution-card:is(:hover,:focus-visible,.is-revealed) .card-image-container img { transform: none; } }
:root { --ink: #0F1E36; --paper: #F4F1EA; --blue: #0047BB; --accent-orange: #D97736; }
body { background: #F4F1EA !important; color: #0F1E36; }
html.lenis, html.lenis body { height: auto; }
html.lenis { scroll-behavior: auto !important; }
body[data-page] #main > :is(.hero,.page-hero,#all-work-section) {
  min-height: calc(85vh - var(--header-offset,84px)) !important;
  min-height: calc(85svh - var(--header-offset,84px)) !important;
  height: auto !important;
  padding-bottom: 40px !important;
}
body[data-page="about"] #main > .page-hero,
body[data-page="contact"] #main > .page-hero {
  min-height: calc(75vh - var(--header-offset,84px)) !important;
  min-height: calc(75svh - var(--header-offset,84px)) !important;
}
/* A contact inquiry should show fields immediately, not another full-screen hero. */
body[data-page="contact"] #main > .contact-hero { min-height: 0 !important; padding-top: 48px !important; padding-bottom: 24px !important; }
body[data-page="contact"] .contact-hero h1 { font-size: clamp(2rem,3vw,3rem); margin-bottom: 16px; }
body[data-page="contact"] .contact-hero .lead { margin: 0; max-width: 650px; }
#quote { scroll-margin-top: 120px !important; }
.quote-section .field-error, .quote-section .form-status-error { color: #B42318; }
.quote-section .form-status-success { color: #28613C; }
body[data-page="contact"] .quote-section { padding-top: 32px !important; min-height: 0 !important; }
body[data-page="contact"] .quote-intro h2 { font-size: clamp(2rem,3vw,3rem); margin-bottom: 20px; }
body[data-page="contact"] .quote-intro > p:not(.eyebrow):not(.form-note) { margin-bottom: 16px; }
.hero-scroll, .scroll-cue, .scroll-mask { display: none !important; }
@keyframes scrollHintBounce { 0%,100% { transform: translate(-50%,0); } 50% { transform: translate(-50%,8px); } }
body[data-page="home"] #main { row-gap: 0 !important; }
body[data-page="home"] .hero--typographic,
body[data-page="home"] .statement--approach {
  background: #F4F1EA !important;
  border: none !important;
  box-shadow: none !important;
}
body[data-page="home"] .hero--typographic { margin-bottom: 0 !important; }
body[data-page="home"] .statement--approach { margin-top: 0 !important; }
body[data-page="home"] .hero-services a:hover,
body[data-page="home"] .hero-services a:focus-visible { color: #0047BB !important; }
.hero-text-actions { color: #0F1E36; }
.hero-text-actions .hero-secondary { color: #0F1E36 !important; }
.approach-pillars--columns .approach-pillar-bottom { margin-top: auto !important; padding-top: 24px; }
.approach-pillars--columns .approach-pillar .approach-metric {
  background: #F4F6F8;
  border: 1px solid #E5E5E5;
  border-radius: 0;
  padding: 8px 12px;
  max-width: 100%;
  white-space: normal;
}
.portfolio-page :is(.portfolio-card,.project-card) { background: #FFFFFF !important; border-radius: 0 !important; height: 100%; }
.portfolio-page :is(.image-wrapper,figure) { box-sizing: border-box; height: 240px !important; min-height: 240px; aspect-ratio: auto !important; flex: 0 0 240px !important; padding: 24px !important; margin: 0; background: #FFFFFF !important; display: flex; align-items: center; justify-content: center; }
.portfolio-page :is(.image-wrapper,figure) img { max-width: 100% !important; max-height: 100% !important; width: auto !important; height: auto !important; object-fit: contain !important; mix-blend-mode: multiply !important; aspect-ratio: auto !important; }
.portfolio-page :is(.text-wrapper,.project-card > div:not(.image-wrapper)) { min-height: 78px; }
.portfolio-page :is(#grid-books,#grid-packaging,#grid-beyond) { align-items: stretch; }
body[data-page="portfolio"] #main > #all-work-section.portfolio-hero {
  min-height: auto !important;
  height: auto !important;
  padding-top: 60px !important;
  padding-bottom: 40px !important;
  justify-content: flex-start;
}
#work-grid { scroll-margin-top: 100px !important; }
.portfolio-tab-enter { animation: finalPanelReveal .4s ease both; }
@keyframes finalPanelReveal { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }
.reveal.is-pending { opacity: 0; transform: translateY(18px); }
.reveal { transition: opacity .6s ease, transform .6s cubic-bezier(.16,1,.3,1); }
/* Contact offices: a single compact desktop row, then two and one columns. */
.regional-contact-section { padding-top: 80px !important; padding-bottom: 60px !important; min-height: 0 !important; height: auto !important; }
.regional-contact-head { margin-bottom: 0 !important; }
.regional-contact-head .eyebrow { margin-bottom: 12px !important; }
.regional-contact-head h2 { font-size: clamp(2rem,3.6vw,3.2rem) !important; margin-bottom: 48px !important; }
.regional-contact-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 24px; margin-top: 0 !important; align-items: stretch; grid-auto-rows: 1fr; }
.regional-contact-card { padding: 24px 20px !important; min-height: 0 !important; height: auto !important; }
.regional-contact-card .location { margin: 0 0 8px !important; }
.regional-contact-card h3 { margin: 0 0 16px !important; font-size: clamp(1rem,1.35vw,1.3rem); min-height: 40px; white-space: nowrap; }
.regional-contact-card a { display: block; padding: 0 !important; margin: 0 0 8px !important; border: 0 !important; font-size: 14px; overflow-wrap: anywhere; }
.regional-contact-card a { color: #0F1E36; text-decoration-line: underline; text-decoration-thickness: 1px; text-underline-offset: 4px; text-decoration-color: rgba(15,30,54,.3); }
.regional-contact-card a:hover, .regional-contact-card a:focus-visible { color: #0F1E36; text-decoration-color: #0F1E36; }
@media (min-width: 1024px) and (max-width: 1199px) {
  .regional-contact-card h3 { font-size: 14px; }
}
.minimal-cta-link {
  display: inline-block;
  font-family: 'Inter', sans-serif !important;
  font-size: 16px;
  font-weight: 600;
  color: #0F1E36;
  text-decoration: none;
  letter-spacing: 1px;
  text-transform: uppercase;
  background: transparent;
  border: 0;
  box-shadow: none;
  padding: 12px 0;
  margin-top: 16px;
  text-underline-offset: 6px;
}
.minimal-cta-link:hover { color: #0F1E36; text-decoration: underline; }
.minimal-cta-link:focus-visible { outline: 2px solid #0F1E36; outline-offset: 6px; }
.approach-branch--supply { padding-top: 80px !important; padding-bottom: 60px !important; min-height: 0 !important; justify-content: flex-start; }
.approach-branch--supply .approach-branch-intro { grid-template-columns: minmax(0,1fr); gap: 0; }
.approach-branch--supply .approach-branch-intro .eyebrow { margin-bottom: 16px; }
.approach-branch--supply .approach-branch-intro h2 { grid-column: 1 / -1; max-width: none; font-size: clamp(2rem,4.3vw,3.8rem); line-height: 1.05 !important; margin: 0 0 48px !important; }
.approach-branch--supply > .approach-detail-grid { margin-top: 0 !important; }
.approach-detail-grid--timeline .qa-card { display: flex; flex-direction: column; height: 100%; justify-content: flex-start; }
.qa-card h3 { min-height: 2.4em !important; display: flex; align-items: flex-end; line-height: 1.2 !important; margin-bottom: 24px !important; }
.qa-card .qa-points { list-style: none; padding-left: 0; margin: 0 0 24px; }
.qa-card .qa-points li { position: relative; padding-left: 20px; margin-bottom: 16px; font: 400 15px/1.6 'DM Sans',sans-serif !important; color: #4B5563; }
.qa-card .qa-points li:last-child { margin-bottom: 0; }
.qa-card .qa-points li strong { font-family: inherit !important; font-weight: 600 !important; }
#quality-assurance .qa-card { padding: 40px 32px !important; background: #FCFAF6 !important; border: 1px solid rgba(28,42,58,.06) !important; border-radius: 8px !important; box-shadow: 0 4px 24px rgba(0,0,0,.02) !important; box-sizing: border-box; min-width: 0; }
#quality-assurance .qa-card .qa-points { margin-top: 32px !important; margin-bottom: 32px !important; }
#quality-assurance .qa-card .qa-points li { position: relative; padding-left: 20px !important; margin-bottom: 16px !important; line-height: 1.6 !important; }
#quality-assurance .qa-card .qa-points li:last-child { margin-bottom: 0 !important; }
#quality-assurance .qa-card .qc-pill { margin-bottom: 20px !important; }
#quality-assurance .qa-card h3 { margin-top: 0 !important; margin-bottom: 24px !important; }
#quality-assurance .qa-card { display: flex !important; flex-direction: column !important; height: 100% !important; padding: 32px !important; border-color: rgba(28,42,58,.08) !important; }
#quality-assurance .qa-card .qa-points { margin-bottom: 24px !important; }
#quality-assurance .qc-card-image-wrapper { width: 100% !important; height: 240px !important; flex: 0 0 240px; margin-top: 0 !important; margin-bottom: 24px !important; border-radius: 4px !important; overflow: hidden !important; }
#quality-assurance .qc-card-image-wrapper > img,#quality-assurance .qc-card-image-wrapper > .dark-block { width: 100% !important; height: 100% !important; min-height: 0 !important; max-height: none !important; object-fit: cover !important; display: block !important; margin: 0 !important; box-sizing: border-box; }
#quality-assurance .qc-card-image-wrapper .dark-block { display: flex !important; flex-direction: column !important; justify-content: center !important; align-items: center; gap: 20px; padding: 32px !important; border-radius: 4px; }
#quality-assurance .qc-card-image-wrapper .dark-block > div { display: flex; align-items: center; gap: 12px; width: 100%; max-width: 250px; margin: 0; }
#quality-assurance .qc-card-image-wrapper .dark-block svg { flex: 0 0 20px; }
#quality-assurance .qa-card .qa-points { margin-top: 16px !important; margin-bottom: 24px !important; }
#quality-assurance .qa-card .qa-points li { margin-bottom: 12px !important; }
#quality-assurance .qa-card .qc-explore-link { margin-top: auto; padding-top: 24px; min-height: 44px; display: inline-flex; align-items: center; gap: 8px; align-self: flex-start; font-family: 'Inter',sans-serif !important; font-size: 13px; font-weight: 600; color: var(--color-text-main,#0F1E36); text-decoration: none; transition: color .3s ease; }
.qc-explore-link svg { width: 16px !important; height: 16px !important; flex: 0 0 16px; fill: none !important; stroke: currentColor; }
.qc-explore-link:is(:hover,:focus-visible) { color: #0047BB !important; }
#quality-assurance .qa-card .qc-card-cta { margin-top: auto !important; padding-top: 16px !important; border-top: 1px solid rgba(28,42,58,.08) !important; width: 100%; align-self: stretch; }
#quality-assurance .qa-card .qc-summary { min-height: 3.2em !important; margin: 0 0 32px !important; font: 400 15px/1.6 'DM Sans',sans-serif !important; color: #4B5563; }
#quality-assurance .qa-card h3 { min-height: 2.4em !important; display: flex; align-items: flex-end; margin-top: 24px !important; margin-bottom: 16px !important; line-height: 1.2 !important; }
#full-chain-supply { margin-bottom: 0 !important; }
body[data-page="approach"] #main > #quality-assurance { margin-top: 0 !important; padding-top: 60px !important; background-color: #F8F5EE !important; scroll-margin-top: 84px !important; }
#quality-assurance .approach-branch-intro { margin-bottom: 40px !important; }
#quality-assurance .approach-branch-intro .eyebrow { margin-top: 0 !important; margin-bottom: 16px !important; }
#quality-assurance::before,#quality-assurance::after { display: none !important; }
body[data-page="approach"] #main > #quality-assurance { margin-bottom: -5px !important; position: relative; z-index: 10; opacity: 1 !important; transform: none !important; transition: none !important; }
body[data-page="approach"] #main > #project-conversation { margin-top: 0 !important; opacity: 1 !important; transform: none !important; transition: none !important; }
body[data-page="approach"] #main > #case-study[hidden] { display: none !important; }
.qc-detail-page { padding: 60px 5% 80px; }
.qc-detail-container { max-width: 1000px; margin: 0 auto; }
.qc-detail-page h1 { font-size: clamp(2.3rem,5vw,4rem); line-height: 1.15 !important; margin: 0 0 24px; }
.qc-detail-page .lead { max-width: 780px; }
.qc-back-link { display: inline-flex; align-items: center; min-height: 44px; color: #0F1E36; font-size: 14px; }
.qc-detail-list { margin: 32px 0; }
.qc-detail-list article { padding: 24px 0; border-top: 1px solid rgba(28,42,58,.1); }
.qc-detail-list h2 { font-size: 1.7rem; margin: 0 0 12px; }
.qc-detail-list p { margin: 0; max-width: 760px; line-height: 1.7; color: #4B5563; }
@media(max-width:768px) { .qc-detail-page { padding: 40px 24px 64px; } }
#quality-assurance .qa-card .qa-points .metric-highlight { display: inline; position: static; font-family: inherit !important; font-size: inherit !important; font-weight: 700 !important; color: var(--color-text-main,#0F1E36) !important; }
#quality-assurance .qa-card .qa-points li::before { content: '' !important; position: absolute; left: 0; top: 10px; width: 5px; height: 5px; border-radius: 50%; background: #8A9BAB !important; }
.esg-social-grid .esg-people-card { padding: 32px 16px !important; min-height: 0; display: flex; flex-direction: column; align-items: center; text-align: center; gap: 0; }
.esg-social-grid .esg-people-card svg { width: 32px !important; height: 32px !important; flex: 0 0 32px; margin: 0 0 16px; stroke: #0F1E36; fill: none; }
.esg-social-grid .esg-people-card span { min-height: 0; }
.esg-water-intro .esg-reduction { color: #2E7D32 !important; }
.qa-card .qa-points li::before { content: '•'; position: absolute; left: 0; top: 0; color: rgba(28,42,58,.4); font-size: 1.2em; line-height: 1.2; }
.qa-card :is(.qc-image-wrapper,.qc-data-block) { margin-top: auto !important; }
.approach-detail-grid--timeline .qa-card { display: flex; flex-direction: column; height: 100%; justify-content: flex-start; }
.qa-card > .bottom-wrapper { margin-top: auto; flex: 0 0 180px; width: 100%; height: 180px; min-height: 180px; max-height: 180px; border-radius: 4px; overflow: hidden; }
.qa-card .bottom-wrapper > :is(.qc-data-block,.qc-image-wrapper) { height: 180px !important; min-height: 180px; max-height: 180px; border-radius: 4px !important; margin-top: 0 !important; width: 100%; box-sizing: border-box; }
.qa-card .bottom-wrapper .qc-img { display: block; width: 100% !important; height: 180px !important; border-radius: 4px !important; object-fit: cover !important; }
.global-map-section {
  padding-top: 80px !important;
  padding-bottom: 80px !important;
  min-height: 100vh !important;
  min-height: 100svh !important;
  display: flex !important;
  align-items: center;
  box-sizing: border-box;
  height: auto !important;
  overflow: visible !important;
}
.global-network-grid { align-items: center; gap: 48px; }
.global-network-grid .global-map-head { justify-content: flex-start; align-self: center; will-change: transform; transform: translateZ(0); backface-visibility: hidden; }
.global-network-grid .global-map-head h2 { font-size: clamp(2.1rem,3.1vw,3.5rem); line-height: 1.1 !important; }
.global-network-grid .global-map-head > p:not(.eyebrow):not(.global-network-quote) { margin-bottom: 24px; }
.global-network-grid .global-map-head .global-network-quote { margin-bottom: 32px; }
.global-network-grid .global-city-list { margin-top: 0; padding-top: 16px; gap: 16px; }
.global-network-grid .global-city-list button { padding-bottom: 8px; font-size: 14px; }
.global-network-grid .global-network-stage {
  padding: 32px;
  height: auto;
  max-height: none;
  box-shadow: none;
  will-change: transform;
  transform: translate3d(0,0,0);
  backface-visibility: hidden;
}
.global-network-stage .network-world .inset { transform: translate(-24px,-24px); }
.global-network-stage, .global-network-stage * { filter: none !important; box-shadow: none !important; }
.global-network-stage { box-shadow: none !important; }
/* Animated SVG dash offsets repaint the entire world map on every frame. */
.global-network-stage :is(.route-global,.route-local,.route-inset) {
  stroke: #D97736 !important; stroke-width: 2px; stroke-dasharray: 3 6;
  stroke-linecap: round; opacity: 1;
  animation: hub-route-flow 24s linear infinite !important;
  animation-play-state: paused !important;
}
.global-map-section.map-flow-active .global-network-stage :is(.route-global,.route-local,.route-inset) { animation-play-state: running !important; }
@keyframes hub-route-flow { to { stroke-dashoffset: -180; } }
@media (prefers-reduced-motion: reduce) {
  .global-network-stage :is(.route-global,.route-local,.route-inset) { animation: none !important; }
}
@media (max-width: 768px) {
  .global-network-grid { gap: 32px; padding-inline: 20px; }
  .global-network-grid .global-network-stage { padding: 24px; }
}
body[data-page="contact"] #main > :is(#quote,.regional-contact-section,.global-map-section) { padding-top: 80px !important; padding-bottom: 80px !important; }
body[data-page="contact"] .quote-intro h1 { font-size: clamp(2rem,3vw,3rem); margin: 0 0 20px; }
@media (max-width: 1024px) {
  .global-map-section { min-height: 0 !important; display: block !important; }
}
/* Desktop map panel fits the usable viewport below the persistent header. */
@media (min-width: 1025px) {
  body[data-page="contact"] #main > .global-map-section {
    min-height: calc(100vh - var(--header-offset,84px)) !important;
    min-height: calc(100svh - var(--header-offset,84px)) !important;
    height: calc(100svh - var(--header-offset,84px)) !important;
    max-height: calc(100svh - var(--header-offset,84px)) !important;
    padding-top: 40px !important;
    padding-bottom: 40px !important;
    display: flex !important;
    align-items: center;
  }
  .global-network-grid { align-items: center; height: 100%; max-height: 100%; min-height: 0; }
  .global-network-grid .global-map-head { align-self: center; }
  .global-network-grid .global-map-head .global-network-quote { margin-bottom: 24px; }
  .global-network-grid .global-city-list { gap: 12px; }
  .global-network-grid .global-network-stage { width: 100%; max-height: 100%; aspect-ratio: 16 / 9; align-self: center; box-sizing: border-box; }
  .global-network-grid .network-world { width: 100%; height: 100%; max-height: 100%; object-fit: contain; }
}
.global-map-section { scroll-margin-top: var(--header-offset,84px) !important; }
@media (min-width: 1025px) and (max-height: 700px) {
  body[data-page="contact"] #main > .global-map-section { padding-block: 24px !important; }
  .global-network-grid .global-map-head h2 { font-size: 2rem; }
  .global-network-grid .global-map-head .eyebrow { margin-bottom: 8px; }
  .global-network-grid .global-map-head > p:not(.eyebrow) { font-size: .85rem; line-height: 1.45; margin-bottom: 16px; }
  .global-network-grid .global-city-list button { font-size: 12px; padding-bottom: 6px; }
  .global-network-grid .global-network-stage { padding: 24px; }
}
@media (max-width: 1023px) { .regional-contact-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media (max-width: 768px) { .regional-contact-grid { grid-template-columns: minmax(0,1fr); } }
@keyframes cueDotTravel { 0%,100% { transform: translateY(0); } 50% { transform: translateY(36px); } }
@media (max-width: 768px) {
  .quote-section { gap: 24px; }
  .quote-section .quote-intro { margin-bottom: 0; }
  .quote-section .quote-intro h2 { font-size: 2rem; }
  .quote-section .quote-intro .eyebrow { margin-bottom: 12px; }
}
@media (prefers-reduced-motion: reduce) {
  .reveal, .reveal.is-pending { opacity: 1; transform: none; transition: none; }
  .portfolio-tab-enter { animation: none; }
}
/* Seamless Global Hubs: 40:60 usable space, without a white map card. */
body[data-page="contact"] #main > .global-map-section {
  background: #F4F1EA !important;
  height: auto !important; max-height: none !important;
  min-height: calc(100svh - var(--header-offset,84px)) !important;
  padding-block: 120px !important; display: flex !important; align-items: center;
}
.global-map-section .global-network-grid {
  width: 100%; height: auto; max-height: none;
  grid-template-columns: minmax(0,2fr) minmax(0,3fr); gap: 64px;
}
.global-map-section .global-network-stage {
  background: transparent !important; border: 0 !important; border-radius: 0 !important;
  box-shadow: none !important; padding: 0 5% !important; aspect-ratio: auto;
}
.global-map-section .global-network-stage .network-world {
  background: transparent !important; width: 100%; height: auto; max-height: 65vh; object-fit: contain;
}
.global-network-stage .network-world > rect { fill: transparent !important; }
.global-network-stage .ocean { fill: transparent !important; stroke: #9CA3AF; stroke-width: 1px; opacity: .8; }
.global-network-stage .countries { fill: rgba(255,255,255,.3); stroke: #9CA3AF; stroke-width: 1px; opacity: 1; }
.global-network-stage .graticule { stroke: #E5E5E5; stroke-width: .5px; opacity: .15; }
.global-network-stage :is(.ocean,.countries,.graticule,.inset-grid) { vector-effect: non-scaling-stroke; }
.global-network-stage .leader { stroke: #9CA3AF; opacity: .7; }
.global-network-stage :is(.city-name,.city-code,.map-key text,.inset-kicker,.inset-city text) { fill: #0F1E36 !important; }
.global-network-stage .inset > rect { fill: rgba(255,255,255,.05); stroke: rgba(255,255,255,.2); }
.global-network-stage .inset-grid { stroke: #9CA3AF; stroke-width: 1px; opacity: 1; }
.global-network-stage .inset-glass { pointer-events: none; }
.global-network-stage .inset-glass { overflow: visible; }
.global-network-stage .inset-glass .gba-inset-surface {
  width: 100%; height: 100%; box-sizing: border-box;
  background: rgba(244,241,234,.85); border: 1px solid rgba(15,30,54,.08);
  border-radius: 12px; backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px);
  box-shadow: 0 6px 18px rgba(15,30,54,.06) !important;
}
.global-network-stage .gba-focus-ring { fill: none; stroke: #D97736; stroke-width: 1px; opacity: .5; pointer-events: none; }
.global-network-stage .inset .inset-city text { font-size: 23px !important; letter-spacing: .5px; }
.global-network-stage .city-name { font-family: 'Inter',sans-serif !important; font-size: 28px !important; font-weight: 600 !important; letter-spacing: .5px; text-shadow: 0 1px 2px rgba(255,255,255,.8); }
.global-network-stage .city-code { font-size: 15px !important; font-weight: 600 !important; fill: #FFFFFF !important; }
.global-network-stage .map-key text { font-size: 28px !important; font-weight: 600; fill: #FFFFFF !important; opacity: 1; }
.global-network-stage .map-key .map-meta { font-size: 26px !important; }
.global-network-stage .node { r: 11px; stroke: #FFFFFF; stroke-width: 1px; vector-effect: non-scaling-stroke; }
.global-network-stage .node-halo { r: 18px; fill: #D97736; opacity: .18; transform-box: fill-box; transform-origin: center; pointer-events: none; animation: hub-beacon 3s ease-out infinite; animation-play-state: paused; }
.global-map-section.map-flow-active .node-halo { animation-play-state: running; }
.global-network-stage [data-city].is-active .node-halo { fill: #0047BB; }
@keyframes hub-beacon { 0% { transform: scale(.65); opacity: .25; } 100% { transform: scale(1.8); opacity: 0; } }
.global-network-stage :is(.route-global,.route-local,.route-inset) { filter: drop-shadow(0 0 4px rgba(217,119,54,.4)) !important; }
@media (prefers-reduced-motion: reduce) { .global-network-stage .node-halo { animation: none; opacity: .12; } }
.global-network-stage .inset-city .map-node { r: 10px; stroke: #FFFFFF; stroke-width: 1px; vector-effect: non-scaling-stroke; }
.global-network-stage .inset-city text { font-size: 26px !important; font-weight: 700; fill: #FFFFFF !important; }
.global-network-stage .inset-kicker { font-size: 16px !important; font-weight: 600; letter-spacing: 2px; fill: #6B7280 !important; }
.global-network-stage .network-world .inset { transform: translate(-176px,-110px) scale(1.1); transform-origin: 0 0; }
.global-network-stage .network-mobile-inset .inset { transform: none; }
.global-network-stage .gba-satellite :is(.node,.node-halo) { opacity: 0; }
.global-network-stage .hub-inset-connector { fill: none; stroke: #9CA3AF; stroke-width: 1px; opacity: .4; stroke-dasharray: 2 5; vector-effect: non-scaling-stroke; pointer-events: none; }
@media (max-width:768px) { .global-network-stage .hub-inset-connector { display: none; } }
.global-map-section .global-map-head :is(h2,p,strong,button) { color: #0F1E36; }
.global-map-section .global-city-list { border-top-color: #D1D5DB; }
.global-map-section .global-city-list button:is(:hover,:focus-visible,.is-active) { color: #D97736; }
.global-network-stage :is(.city-name,.city-code,.map-key text,.inset-kicker,.inset-city text) { fill: #0F1E36 !important; }
.global-network-stage .inset .inset-kicker { fill: #6B7280 !important; }
.global-network-stage :is(.node,.inset-city circle,.map-key circle) { fill: #D97736 !important; }
.global-network-stage .map-node {
  cursor: pointer; transform-box: fill-box; transform-origin: center;
  transition: fill .3s ease, transform .3s ease, filter .3s ease;
}
.global-network-stage [data-city].is-active .map-node,
.global-network-stage .map-node.active {
  fill: #0047BB !important; transform: scale(1.5);
  filter: drop-shadow(0 0 6px rgba(0,71,187,.4)) !important;
}
.global-network-stage [data-city].is-active :is(.city-name,.city-code,text) { fill: #0047BB !important; }
.global-map-section .global-city-list .city-list-item:is(.active,:hover,:focus-visible) { color: #D97736 !important; font-weight: 500; }
.global-map-section .global-map-head .global-city-list {
  border: none; gap: 24px 40px; padding-top: 0;
}
.global-map-section .global-map-head .global-city-list .city-list-item {
  display: flex; align-items: center; gap: 12px;
  border: none; padding: 0; text-decoration: none; color: #0F1E36;
  font-weight: 500; min-height: 32px; transition: color .3s ease;
}
.global-map-section .global-city-list .city-list-item::before {
  content: ''; width: 6px; height: 6px; flex: 0 0 6px;
  border-radius: 50%; background: #D97736;
}
@media (max-width:480px) {
  .global-map-section .global-map-head .global-city-list { gap: 20px 24px; }
  .global-map-section .global-map-head .global-city-list .city-list-item { gap: 8px; }
}
@media (prefers-reduced-motion: reduce) {
  .global-network-stage .map-node { transition: none; }
  .global-network-stage [data-city].is-active .map-node { transform: none; }
}
.global-network-stage .route { stroke: rgba(255,255,255,.5); }
.global-map-section .global-map-head h2 { font-size: clamp(2rem,3.1vw,3.5rem); line-height: 1.1 !important; }
.global-map-section .global-map-head .global-network-quote { line-height: 1.6; margin-bottom: 32px; }
@media (max-width:1024px) {
  .global-map-section .global-network-grid { grid-template-columns: minmax(0,1fr); gap: 40px; }
  body[data-page="contact"] #main > .global-map-section { padding-block: 72px !important; min-height: 0 !important; }
}
/* Footer: functional address, stronger brand statement, shared desktop baseline. */
.site-footer .footer-main { display: grid; grid-template-columns: 2fr 1fr 1fr; gap: 64px; align-items: start; max-width: 1200px; margin-left: auto; margin-right: auto; }
.site-footer .footer-brand { height: 56px; margin: 0 0 24px; display: flex; align-items: center; }
.site-footer .footer-brand .footer-logo { max-height: 56px; width: auto; object-fit: contain; }
body[data-page] footer.site-footer .footer-address,body[data-page] footer.site-footer .footer-address a { font-size: 1rem !important; line-height: 1.6; font-style: normal; font-weight: 400 !important; color: var(--color-text-main,#0F1E36) !important; opacity: 1 !important; text-decoration: none; }
.site-footer .footer-address { margin: 0 0 24px !important; }
.site-footer .footer-main > div:first-child > p { font-size: 15px; line-height: 1.5; font-weight: 600; color: var(--color-text-main,#0F1E36); max-width: 450px; margin: 0; }
.site-footer .footer-main > div:not(:first-child) { padding-top: 0; }
.site-footer .footer-main h3 { font-size: 13px !important; color: #0F1E36; font-weight: 600 !important; letter-spacing: 1.5px !important; margin: 0 0 24px !important; }
.site-footer .footer-main a { font-size: 15px !important; color: #4B5563; text-decoration: none; line-height: 2.2 !important; }
.site-footer .footer-main a:is(:hover,:focus-visible) { color: #0047BB !important; }
.site-footer .footer-main .footer-whatsapp-link { display: inline-flex; align-items: center; gap: 8px; margin-top: 24px; font-size: 14px !important; font-weight: 600 !important; color: #0F1E36; line-height: 1.6 !important; transition: color .3s; }
.footer-whatsapp-link svg { flex-shrink: 0; }
@media (min-width:769px) and (max-width:1024px) { .site-footer .footer-main { gap: 32px; } }
@media (max-width:768px) { .site-footer .footer-main { grid-template-columns: minmax(0,1fr); gap: 40px; } }
/* International Presence: bordered list and lightweight on-map details. */
.global-map-section .global-map-head .global-city-list {
  display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr);
  gap: 16px 24px; border-top: 1px solid #E5E7EB; border-bottom: 1px solid #E5E7EB;
  padding: 16px 0;
}
.global-map-section .global-map-head .global-city-list .city-list-item {
  display: block; border-bottom: 1px solid #E5E7EB; padding: 12px 0;
  font-family: 'Inter',sans-serif !important; font-weight: 500; color: #1F2937;
}
.global-map-section .global-map-head .global-city-list li:nth-last-child(-n+2) .city-list-item { border-bottom: none; }
.global-map-section .global-city-list .city-list-item::before { content: none; display: none; }
.global-network-stage .network-world { max-width: 800px; margin-inline: auto; user-select: none; pointer-events: none; }
.global-network-stage .network-world .city { pointer-events: auto; }
.global-network-stage .gba-satellite .node { opacity: 1; r: 5px; }
.global-network-stage .gba-focus-ring { transform-box: fill-box; transform-origin: center; animation: hub-beacon 3s ease-out infinite; animation-play-state: paused; }
.global-map-section.map-flow-active .gba-focus-ring { animation-play-state: running; }
.global-network-stage .global-network-tooltip { max-width: min(220px,calc(100% - 24px)) !important; padding: 10px 14px !important; font-size: 12px; }
.global-network-stage .global-network-tooltip[hidden] { display: none !important; }
@media (prefers-reduced-motion: reduce) { .global-network-stage .gba-focus-ring { animation: none; } }
/* GBA information is available on demand, never as a static inset. */
.global-map-section .global-network-stage {
  overflow: visible !important; padding-top: 40px !important; padding-bottom: 24px !important;
  display: flex; flex-direction: column; justify-content: flex-start; align-items: center;
}
.global-map-section .global-network-grid { align-items: start; overflow: visible; }
.global-map-section .global-network-grid .global-map-head,
.global-map-section .global-network-grid .global-network-stage { align-self: start; }
.global-map-section .global-network-stage .network-world { overflow: visible; }
.global-map-section .global-map-head .global-city-list { gap: 12px 24px; padding-block: 12px; }
.global-map-section .global-map-head .global-city-list .city-list-item { padding-block: 10px; line-height: 1.5; }
.global-map-section .global-network-stage .gba-detail-leader {
  position: absolute; inset: 0; width: 100%; height: 100%; overflow: visible;
  pointer-events: none; opacity: 0; z-index: 9; background: none; transition: opacity .3s;
}
.gba-detail-leader path { fill: none; stroke: #9CA3AF; stroke-width: 1; stroke-dasharray: 2 4; }
.global-map-section .global-network-stage .gba-detail-leader.is-visible { opacity: 1; }
.gba-detail-tooltip {
  position: absolute; z-index: 10; width: 250px; max-width: calc(100% - 16px);
  padding: 16px 18px; box-sizing: border-box; background: #FDFCFA;
  border: 1px solid #E5E7EB; color: #0F1E36; opacity: 0;
  pointer-events: none; transition: opacity .3s ease;
}
.gba-detail-tooltip.is-visible { opacity: 1; }
.gba-detail-tooltip > strong { display: block; font: 600 10px/1.5 'Inter',sans-serif; letter-spacing: 1px; margin-bottom: 10px; }
.gba-detail-tooltip ul { list-style: none; margin: 0; padding: 0; }
.gba-detail-tooltip li + li { margin-top: 8px; }
.gba-detail-tooltip b { display: block; font-size: 11px; font-weight: 600; }
.gba-detail-tooltip span { display: block; font-size: 11px; line-height: 1.4; color: #4B5563; }
.global-network-stage .gba-node .gba-pulse { opacity: .2; animation: gba-orange-pulse 2s ease-out infinite; }
.global-network-stage .gba-satellite .gba-pulse { opacity: .2; }
@keyframes gba-orange-pulse { from { transform: scale(.6); opacity: .3; } to { transform: scale(1.8); opacity: 0; } }
@media (prefers-reduced-motion: reduce) {
  .gba-detail-tooltip { transition: none; }
  .global-network-stage .gba-node .gba-pulse { animation: none; opacity: .15; }
}
/* Compact GBA map inset, with one small on-demand tooltip per city. */
.global-map-section .map-container { position: relative; width: 100%; overflow: visible !important; padding-top: 20px !important; padding-bottom: 180px !important; }
.gba-mini-inset { position: absolute; right: 20px; bottom: 12px; width: 260px; height: 160px; max-width: calc(100% - 40px); box-sizing: border-box; background: #FFFFFF; border: 1px solid #E5E5E5; border-radius: 0; box-shadow: none !important; }
.gba-mini-inset .gba-mini-heading { position: absolute; top: 12px; left: 14px; margin: 0; font: 600 9px/1.4 'Inter',sans-serif !important; letter-spacing: 1px !important; color: #6B7280; }
.gba-mini-inset > svg { width: 100%; height: 100%; pointer-events: none; background: transparent; }
.gba-mini-inset > svg path { fill: none; stroke: #D97736; stroke-width: 1; stroke-dasharray: 4; }
.gba-mini-node { position: absolute; padding: 0; width: 16px; height: 16px; border: 0; background: transparent; cursor: pointer; transform: translate(-50%,-50%); }
.gba-mini-dongguan { left: 18.46%; top: 40%; }
.gba-mini-shenzhen { left: 63.85%; top: 62.5%; }
.gba-mini-hong-kong { left: 83.08%; top: 82.5%; }
.gba-mini-node > .map-node { display: block; width: 8px; height: 8px; margin: 4px; border-radius: 50%; background: #D97736; border: 1px solid #FFFFFF; box-sizing: border-box; transition: background .3s; }
.gba-mini-node.is-active > .map-node { background: #E86E2A; }
.gba-mini-label { position: absolute; white-space: nowrap; font: 600 10px/1.3 'Inter',sans-serif; color: #0F1E36; }
.gba-mini-dongguan .gba-mini-label { left: 19px; top: 1px; }
.gba-mini-shenzhen .gba-mini-label, .gba-mini-hong-kong .gba-mini-label { right: 19px; top: 1px; }
.map-container .gba-city-tooltip { position: absolute; z-index: 100; width: max-content; max-width: 250px; padding: 10px 12px; box-sizing: border-box; background: #FFFFFF; border: 1px solid #E5E5E5; box-shadow: 0 4px 12px rgba(15,30,54,.08) !important; font: 400 12px/1.5 'Inter',sans-serif; color: #4B5563; opacity: 0; visibility: hidden; pointer-events: none; transition: opacity .3s ease,visibility .3s ease; }
.gba-city-tooltip.is-visible { opacity: 1; visibility: visible; }
.gba-city-tooltip strong { display: block; font-size: 11px; color: #0F1E36; font-weight: 600; margin-bottom: 4px; }
.gba-city-tooltip span { display: block; }
.gba-city-tooltip::after { content: ''; position: absolute; left: var(--arrow-x,50%); bottom: -5px; width: 8px; height: 8px; background: #FFFFFF; border-right: 1px solid #E5E5E5; border-bottom: 1px solid #E5E5E5; transform: translateX(-50%) rotate(45deg); }
.gba-city-tooltip[data-placement="left"]::after { left: auto; right: -5px; bottom: auto; top: 50%; transform: translateY(-50%) rotate(-45deg); }
.map-container .global-network-tooltip { z-index: 100; background: #FFFFFF; border: 1px solid #E5E5E5; border-radius: 0; box-shadow: 0 4px 12px rgba(15,30,54,.08) !important; pointer-events: none; font-size: 12px; }
.map-container .global-network-tooltip strong { color: #0F1E36; font-size: 14px; }
.map-container .global-network-tooltip span { color: #4B5563; }
.map-container .global-network-tooltip::before { background: #FFFFFF; border-color: #E5E5E5; }
.map-container .global-network-tooltip[data-placement="top"]::before { top: auto; bottom: -5px; transform: translateX(-50%) rotate(225deg); }
.map-container .global-network-tooltip[data-placement="bottom"]::before { top: -5px; bottom: auto; transform: translateX(-50%) rotate(45deg); }
.global-map-section .global-city-list .city-list-item:is(.active,:hover,:focus-visible) { color: #E86E2A !important; }
.global-network-stage [data-city].is-active .map-node { fill: #E86E2A !important; }
.global-network-stage [data-city].is-active :is(.city-name,.city-code,text) { fill: #E86E2A !important; }
.gba-mini-node.is-active .gba-mini-label { color: #E86E2A; }
@media (max-width:768px) { .global-map-section .map-container { padding-bottom: 280px !important; } }
@media (prefers-reduced-motion: reduce) { .map-container .gba-city-tooltip { transition: none; } }
/* Compact 2x2 project-management grid; mobile remains naturally scrollable. */
html { scroll-behavior: smooth; scroll-padding-top: 100px; }
html.lenis { scroll-behavior: auto !important; }
body[data-page="home"] #main > .hero--typographic:is(.hero,#home-hero) {
  position: relative; padding-bottom: calc(80px + env(safe-area-inset-bottom,0px)) !important; min-height: auto !important; height: auto !important; margin-bottom: 0 !important;
}
body[data-page="home"] #main > .statement--approach {
  padding-top: 60px !important; min-height: auto !important; height: auto !important; margin-top: 0 !important;
}
@media(min-width:769px) {
  body[data-page="home"] #main > .hero--typographic:is(.hero,#home-hero) { padding-bottom: 60px !important; }
  body[data-page="home"] .hero--typographic .hero-copy { margin-bottom: 20px; }
  body[data-page="home"] #main > .statement--approach { padding-top: 40px !important; }
}
body .site-header { background: #FFFFFF !important; z-index: 1000; border: none !important; box-shadow: none !important; }
.reveal-on-scroll { transition: opacity 1.2s cubic-bezier(.16,1,.3,1),transform 1.2s cubic-bezier(.16,1,.3,1); }
.reveal-on-scroll.is-pending { opacity: 0; transform: translateY(60px); will-change: opacity,transform; }
.reveal-on-scroll.is-visible { opacity: 1; transform: none; }
@media(prefers-reduced-motion:reduce) {
  html { scroll-behavior: auto !important; }
  .reveal-on-scroll,.reveal-on-scroll.is-pending { opacity: 1; transform: none; transition: none; will-change: auto; }
}
/* Uniform certification gallery, native horizontal swipe on mobile. */
body[data-page="home"] #main > .statement--approach { padding-bottom: 0 !important; }
body[data-page="home"] .landing-trust { border-top: 1px solid rgba(28,42,58,.1) !important; min-height: 0 !important; height: auto !important; display: block; padding-top: 60px !important; margin-top: 40px !important; }
body[data-page="home"] .landing-trust .landing-trust-head { margin: 0 auto 32px; }
body[data-page="home"] .landing-trust::before { content: none !important; display: none !important; }
body[data-page="home"] .landing-trust .cert-carousel { display: flex !important; justify-content: space-between; align-items: center; gap: 16px; padding: 0 0 20px; margin: 0 auto; }
.cert-carousel .cert-item { display: flex; justify-content: center; align-items: center; width: 140px; height: 100px; flex: 0 1 140px; min-width: 0; background: #FFFFFF; border-radius: 8px; padding: 16px; border: 1px solid rgba(0,0,0,.05); box-shadow: 0 2px 8px rgba(0,0,0,.02); box-sizing: border-box; }
.cert-carousel .cert-item { background-color: rgba(255,255,255,.4) !important; border: 1px solid rgba(28,42,58,.08) !important; box-shadow: 0 4px 12px rgba(0,0,0,.02) !important; transition: transform .3s cubic-bezier(.2,.8,.2,1),box-shadow .3s ease,background-color .3s ease; }
@media(min-width:769px) and (hover:hover) and (pointer:fine) { .cert-carousel .cert-item:hover { transform: translateY(-6px); background-color: #FFFFFF !important; box-shadow: 0 8px 24px rgba(0,0,0,.06) !important; } }
.cert-carousel .cert-item img { display: block; width: auto; height: auto; max-width: 80%; max-height: 80%; object-fit: contain; filter: none; transition: none; }
body[data-page="home"] .landing-trust { padding-bottom: 24px !important; }
body[data-page="home"] #what-we-make { padding-top: 40px !important; padding-bottom: 40px !important; margin-top: 0 !important; min-height: 0 !important; height: auto !important; justify-content: flex-start; scroll-margin-top: 100px; }
#what-we-make .section-head { margin-bottom: 40px !important; padding-bottom: 0 !important; overflow: visible !important; height: auto !important; min-height: min-content !important; max-height: none !important; gap: 0 !important; }
#what-we-make .section-head > .eyebrow { margin-bottom: 16px !important; }
#what-we-make .section-head > h2 { margin-bottom: 24px !important; flex: 0 0 auto; }
#what-we-make .section-head > .text-link { flex: 0 0 auto; min-height: 44px; max-height: none; overflow: visible !important; margin-top: 0 !important; line-height: 1.5; }
body[data-page="home"] #what-we-make { overflow: visible !important; }
#what-we-make .section-head h2 { font-size: clamp(2rem,3.5vw,3.5rem); line-height: 1.15 !important; padding-bottom: 8px; overflow: visible !important; height: auto !important; max-height: none !important; }
@media(min-width:1025px) and (max-height:800px) {
  #what-we-make .solution-card { height: 440px !important; min-height: 440px !important; }
  #what-we-make .section-head h2 { font-size: 2.5rem; }
}
#what-we-make .solution-grid { gap: 32px !important; padding-top: 0 !important; margin-top: 0 !important; }
@media(max-width:768px) { #what-we-make .section-head { margin-bottom: 24px !important; } }
#what-we-make .section-head h2 { scroll-margin-top: 100px; }
@media(max-width:768px) {
  body[data-page="home"] .landing-trust .cert-carousel { display: flex !important; flex-wrap: nowrap !important; justify-content: flex-start; overflow-x: auto !important; scroll-snap-type: x mandatory; -webkit-overflow-scrolling: touch; gap: 16px; padding: 0 24px 24px; touch-action: pan-x pan-y; scrollbar-width: none; -ms-overflow-style: none; }
  .cert-carousel::-webkit-scrollbar { display: none; }
  .cert-carousel .cert-item { flex: 0 0 auto !important; width: 120px !important; min-width: 120px; scroll-snap-align: start; }
}
@media(prefers-reduced-motion:reduce) { .cert-carousel .cert-item { transition: none; } .cert-carousel .cert-item:hover { transform: none; } }
body[data-page="home"] .statement--approach .approach-metric {
  background: none !important; border: 0 !important; padding: 0 !important; border-radius: 0;
  white-space: normal; box-shadow: none !important; color: #0F1E36;
}
body[data-page="home"] .statement--approach .approach-metric::before { content: '—'; color: #6B7280; margin-right: 8px; }
body[data-page="home"] .statement--approach .explore-link {
  color: #0F1E36 !important; display: inline-flex; align-items: center; gap: 8px;
  text-decoration: none; font-style: normal; font-weight: 600; text-transform: uppercase; min-height: 44px;
}
body[data-page="home"] .statement--approach .explore-link svg {
  display: block; width: 16px; height: 16px; stroke: currentColor; fill: none; stroke-width: 2;
  background: none !important; box-shadow: none !important; border: 0; padding: 0; margin: 0;
}
body[data-page="home"] .statement--approach .approach-bridge > span { color: #0F1E36 !important; }
body[data-page="home"] .statement--approach article.approach-pillar { cursor: default; }
body[data-page="home"] .statement--approach .capabilities-grid { align-items: stretch; }
body[data-page="home"] .statement--approach .capability-card { display: flex; flex-direction: column; height: 100%; min-width: 0; cursor: default !important; pointer-events: none; }
body[data-page="home"] .statement--approach .capability-card .card-number { margin: 0 0 12px !important; font-size: .9rem; color: #7A8A9E; }
body[data-page="home"] .statement--approach .capability-card h3 { cursor: default !important; min-height: 0 !important; margin: 0 0 16px !important; line-height: 1.2 !important; font-size: clamp(1.5rem,2.1vw,2rem); text-wrap: balance; }
body[data-page="home"] .statement--approach .capability-card .subtitle { min-height: 3.2em !important; margin: 0 0 24px !important; font-family: var(--font-body-family,'Inter',sans-serif) !important; font-weight: 400 !important; font-size: 1rem !important; line-height: 1.6 !important; letter-spacing: normal !important; color: #0F1E36; max-width: 90%; text-wrap: balance; text-wrap: pretty; }
body[data-page="home"] .statement--approach .capability-card .card-bottom { margin-top: auto; display: flex; flex-direction: column; align-items: flex-start; gap: 24px; }
body[data-page="home"] .statement--approach .card-list { list-style: none; padding: 0; margin: 0; color: #0F1E36; font-size: 12px; font-weight: 600; line-height: 1.6; }
body[data-page="home"] .statement--approach .card-list li { display: flex; align-items: baseline; gap: 8px; font-family: var(--font-body-family,'Inter',sans-serif) !important; font-weight: 400 !important; font-size: .95rem !important; line-height: 1.5 !important; color: #0F1E36; }
body[data-page="home"] .statement--approach .card-list li::before { content: '—'; color: #6B7280; flex: 0 0 auto; }
body[data-page="home"] .statement--approach .capability-card .explore-btn { pointer-events: auto; cursor: pointer; display: inline-flex !important; flex-direction: row !important; align-items: center !important; gap: 8px !important; width: auto !important; max-width: 100%; min-height: 44px; color: #0F1E36 !important; text-decoration: none; font-family: 'Inter',sans-serif !important; font-size: 12px; font-weight: 600; text-transform: uppercase; }
body[data-page="home"] .statement--approach .capability-card .explore-btn svg { display: block; width: 16px !important; height: 16px !important; min-width: 16px; max-width: 16px; max-height: 16px; flex: 0 0 16px; stroke: currentColor !important; stroke-width: 1.5; fill: none !important; }
body[data-page="home"] .statement--approach .capability-card .explore-btn svg path { fill: none !important; stroke: currentColor !important; }
body[data-page="home"] .statement--approach .capability-card .card-bottom { width: 100%; min-width: 0; }
body[data-page="home"] .statement--approach .capability-card ul { display: block !important; width: 100%; min-width: 0; }
body[data-page="home"] .statement--approach .capability-card li { display: flex !important; align-items: flex-start; gap: 12px; white-space: normal !important; overflow-wrap: break-word; }
@media(max-width:1024px) { body[data-page="home"] .statement--approach .capability-card { height: auto; } }
body[data-page="home"] .statement--approach a.explore-link { position: relative; padding-bottom: 4px; }
body[data-page="home"] .statement--approach a.explore-link::after { content: ''; position: absolute; left: 0; bottom: 0; width: 100%; height: 2px; background: var(--color-accent-blue,#0047BB); transform: scaleX(0); transform-origin: right; transition: transform .3s ease; }
body[data-page="home"] .statement--approach a.explore-link:is(:hover,:focus-visible)::after { transform: scaleX(1); transform-origin: left; }
body[data-page="home"] .statement--approach .approach-pillar a:focus-visible { outline: 2px solid #0F1E36; outline-offset: 4px; }
@media(prefers-reduced-motion:reduce) { body[data-page="home"] .statement--approach a.explore-link::after { transition: none; } }
@media(max-width:768px) {
  body[data-page="home"] #approach-title.provider-heading { font-size: clamp(1.65rem,6.7vw,2.4rem) !important; line-height: 1.2 !important; text-wrap: balance; }
  body[data-page="home"] #approach-title.provider-heading .emphasis-text { color: #E25D1C !important; font-weight: normal !important; font-size: clamp(1.5rem,6vw,2.5rem); white-space: nowrap; }
  body[data-page="home"] #main > .statement--approach { padding-top: 60px !important; margin-top: 0 !important; }
  body[data-page="home"] .statement--approach > h2 + p { text-align: left !important; margin-bottom: 32px !important; }
  body[data-page="home"] .statement--approach .approach-bridge { margin-top: 0 !important; padding-top: 32px !important; }
  body[data-page="home"] .statement--approach .approach-number { margin: 0 0 8px !important; }
  body[data-page="home"] .statement--approach .approach-pillar small { line-height: 1.5; margin-bottom: 16px !important; }
  body[data-page="home"] .statement--approach .approach-pillar-bottom { padding-top: 8px !important; }
}
#approach-title { overflow: visible !important; }
#approach-title.provider-heading { color: var(--color-text-main,#0F1E36); font-weight: 400 !important; }
#approach-title.provider-heading .emphasis-text {
  color: #E25D1C !important; font-family: inherit !important; font-weight: normal !important;
  font-style: normal; text-decoration: none !important; background: none !important;
  opacity: 1 !important; padding: 0; border: 0; animation: none !important;
}
body[data-page="portfolio"] #work-grid :is(.image-wrapper,figure) {
  height: 220px !important; min-height: 0 !important; max-height: 220px !important;
  flex: 0 0 220px !important; padding: 16px !important; aspect-ratio: auto !important;
}
body[data-page="portfolio"] #work-grid :is(.image-wrapper,figure) img {
  width: 100% !important; height: 100% !important; max-height: 100% !important; object-fit: contain !important; margin: 0 !important;
}
.hero-text-actions .cta-btn { vertical-align: middle; line-height: 1.5; }
.hero-text-actions .cta-btn svg { display: block; align-self: center; margin: 0 !important; padding: 0 !important; border: 0 !important; }
.hero-text-actions .cta-btn { display: inline-flex !important; align-items: center; gap: 8px; }
.hero-text-actions .cta-btn svg { flex: 0 0 18px; background: transparent !important; box-shadow: none !important; }
@media(max-width:768px) {
  body[data-page="home"] h1.hero-services { font-size: clamp(2rem,8vw,3rem) !important; }
  body[data-page="home"] h1.hero-services a,
  body[data-page="home"] h1.hero-services a:is(:hover,:focus,:active,:focus-visible) {
    white-space: nowrap; background: transparent !important; background-image: none !important;
    box-shadow: none !important; color: var(--color-text-main,#0F1E36) !important;
    outline: none !important; -webkit-tap-highlight-color: transparent; opacity: 1 !important;
  }
  body[data-page="home"] h1.hero-services a:focus-visible { outline: 2px solid #0F1E36 !important; outline-offset: 4px; }
  body[data-page="home"] h1.hero-services a::after { display: none; }
  body[data-page="home"] .hero--typographic .hero-copy .lead { text-align: left !important; padding: 0 24px !important; box-sizing: border-box; }
  body[data-page="home"] .hero--typographic .hero-text-actions {
    display: flex; flex-direction: column; align-items: flex-start; justify-content: flex-start;
    gap: 16px; padding: 0 24px; margin-top: 32px; width: 100%; box-sizing: border-box;
  }
  body[data-page="home"] .hero-text-actions .cta-btn,
  body[data-page="home"] .hero-text-actions .cta-btn:is(:hover,:focus,:active) {
    min-height: 44px; margin: 0; padding: 0; font-weight: 600;
    color: var(--color-text-main,#0F1E36) !important; text-decoration: none;
    background: transparent !important; box-shadow: none !important;
  }
}
:root { --color-bg-base: #F4F1EA; --color-text-main: #0F1E36; --color-accent-blue: #0047BB; }
body[data-page="solutions"] .solutions-panels,
body[data-page="solutions"] .solutions-panels .solution-detail { background: var(--color-bg-base) !important; color: var(--color-text-main) !important; }
body[data-page="solutions"] .solutions-panels :is(h1,h2,h3,p,li,.eyebrow,.view-portfolio-link) { color: var(--color-text-main) !important; }
body[data-page="solutions"] #content-beyond .solution-detail,
body[data-page="solutions"] #content-beyond .solution-detail :is(h2,p,li,.eyebrow,.view-portfolio-link) { color: var(--color-text-main) !important; }
body[data-page="solutions"] .solutions-panels { position: relative; min-height: 450px; display: flex; flex-direction: column; overflow-anchor: none; }
body[data-page="solutions"] .solutions-tabs { position: sticky !important; top: var(--header-offset,84px) !important; z-index: 90; background: var(--color-bg-base) !important; }
body[data-page="solutions"] .solutions-tabs button { color: #6B7280 !important; border-bottom: 2px solid transparent !important; }
body[data-page="solutions"] .solutions-tabs button.active { color: var(--color-text-main) !important; border-bottom-color: var(--color-accent-blue) !important; padding-bottom: 8px; }
@keyframes solutionOpacityIn { from { opacity: 0; } to { opacity: 1; } }
body[data-page="solutions"] .solutions-panels > .tab-content { animation: solutionOpacityIn .4s ease both; }
body[data-page="home"] .hero-services a,
body[data-page="home"] .hero-services a:is(:hover,:focus-visible) { color: var(--color-text-main) !important; transition: opacity .3s ease !important; text-decoration: none !important; }
body[data-page="home"] .hero-services a:is(:hover,:focus-visible) { opacity: 1; }
body[data-page="home"] h1.hero-services,
body[data-page="home"] h1.hero-services .title-line { line-height: 1.2 !important; }
body[data-page="home"] h1.hero-services a { position: relative; display: inline-block; opacity: 1; }
body[data-page="home"] h1.hero-services a::after {
  content: ''; position: absolute; left: 0; bottom: -8px; width: 100%; height: 2px;
  background: var(--color-accent-blue,#0047BB); transform: scaleX(0);
  transform-origin: bottom right; pointer-events: none;
  transition: transform .4s cubic-bezier(.86,0,.07,1);
}
body[data-page="home"] h1.hero-services a:is(:hover,:focus-visible)::after { transform: scaleX(1); transform-origin: bottom left; }
body[data-page="home"] .hero--typographic .hero-slogan em { color: var(--color-text-main,#0F1E36) !important; text-decoration: none !important; border-bottom: none !important; }
@media(prefers-reduced-motion:reduce) { body[data-page="home"] h1.hero-services a::after { transition: none; } }
@media(max-width:768px) { body[data-page="solutions"] .solutions-panels { min-height: auto !important; } }
@media(prefers-reduced-motion:reduce) { body[data-page="solutions"] .solutions-panels > .tab-content { animation: none; } body[data-page="home"] .hero-services a { transition: none !important; } }
.map-container :is(.global-network-tooltip,.gba-city-tooltip) { min-width: min(220px,calc(100% - 24px)); max-width: min(250px,calc(100% - 24px)) !important; white-space: normal; overflow-wrap: anywhere; pointer-events: none !important; z-index: 100; }
/* Warm International Presence surface and safely inset GBA detail. */
body[data-page="contact"] #main > .global-map-section { background: #F8F6F0 !important; padding-top: 90px !important; padding-bottom: 40px !important; min-height: 0 !important; height: auto !important; }
.global-map-section .global-map-head :is(h2,p,strong,button) { color: #0F1E36; }
.global-map-section .network-world :is(.countries,.ocean,.graticule) { stroke: #D1D5DB !important; }
.global-map-section .global-map-head .global-city-list .city-list-item { padding: 12px 0; }
.global-map-section .gba-mini-inset { bottom: 40px; right: 40px; padding: 24px; height: auto; aspect-ratio: 260 / 180; overflow: visible; background: #FFFFFF; border: 1px solid #E5E5E5; box-shadow: 0 6px 18px rgba(15,30,54,.06) !important; }
.global-map-section .gba-mini-inset > svg { position: absolute; inset: 24px; width: calc(100% - 48px); height: calc(100% - 48px); }
.global-map-section .gba-mini-dongguan { left: 24.3%; top: 42.7%; }
.global-map-section .gba-mini-shenzhen { left: 61.3%; top: 59.2%; }
.global-map-section .gba-mini-hong-kong { left: 76.9%; top: 73.8%; }
.global-map-section :is(.global-network-tooltip,.gba-city-tooltip) { pointer-events: none !important; z-index: 100; background: #FFFFFF; color: #0F1E36; }
.map-container .global-network-tooltip[data-placement="left"]::before { left: auto; right: -5px; top: 50%; bottom: auto; transform: translateY(-50%) rotate(135deg); }
.map-container .gba-city-tooltip[data-placement="bottom"]::after { top: -5px; bottom: auto; transform: translateX(-50%) rotate(225deg); }
.global-map-section .gba-mini-label { font-size: 12px; }
@media (max-width:768px) {
  body[data-page="contact"] #main > .global-map-section { padding-top: 64px !important; padding-bottom: 40px !important; }
  .global-map-section .gba-mini-inset { right: 20px; }
}
body[data-page="approach"] #project-management {
  min-height: 0 !important; height: auto !important; max-height: none !important;
  padding-top: 90px !important; padding-bottom: 20px !important;
  justify-content: flex-start; scroll-margin-top: 0 !important;
}
#project-management .approach-branch-intro { grid-template-columns: minmax(0,1fr); gap: 0; }
#project-management .approach-branch-intro .eyebrow { margin: 0 0 8px !important; }
#project-management .approach-branch-intro h2 { margin: 0 0 32px !important; }
#project-management .approach-branch-intro h2 { grid-column: 1 / -1; max-width: 100%; font-size: clamp(2rem,4.7vw,4rem); line-height: 1.1 !important; }
#project-management .approach-branch-intro > p:last-child { font-size: 14px; line-height: 1.5; }
#project-management > .approach-detail-grid--four { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 0; margin-top: 0; height: auto; min-height: 0; }
#project-management .approach-detail-grid--four article { position: relative; min-height: 0 !important; height: auto; padding: 28px 24px; }
#project-management .approach-detail-grid--four article > span { position: absolute; right: 24px; top: 24px; }
#project-management .approach-line-icon { width: 28px; height: 28px; margin: 0 0 12px; }
#project-management .approach-detail-grid--four h3 { margin: 0 0 8px; min-height: 0; font-size: 1.35rem; }
#project-management .approach-detail-grid--four p { margin: 0; font-size: 14px; line-height: 1.5; }
@media (max-width:768px) {
  #project-management > .approach-detail-grid--four { grid-template-columns: minmax(0,1fr); }
  #project-management .approach-branch-intro { grid-template-columns: minmax(0,1fr); }
}



/* Native scrolling: hide scrollbar chrome without disabling scroll. */
body[data-page] header,body[data-page] #main section { border: none !important; box-shadow: none !important; outline: none !important; }
body[data-page] header::before,body[data-page] header::after { display: none !important; content: none !important; }
body[data-page] #site-header,body[data-page] #site-header .site-header { border: none !important; box-shadow: none !important; background-color: #FFFFFF !important; }
body[data-page] #site-header::before,body[data-page] #site-header::after { content: none !important; display: none !important; }
body[data-page] #main > section { margin-top: 0 !important; margin-bottom: 0 !important; }
/* Keep adjacent homepage backgrounds stationary and flush during reveals. */
body[data-page="home"] #main { gap: 0 !important; }
body[data-page="home"] #main > :is(.proof,.cta-band) { width: 100vw !important; max-width: 100% !important; box-sizing: border-box !important; margin: 0 !important; padding-left: max(5%,calc((100% - 1400px)/2)) !important; padding-right: max(5%,calc((100% - 1400px)/2)) !important; border: none !important; box-shadow: none !important; transform: none !important; opacity: 1 !important; transition: none !important; will-change: auto; }
body[data-page="home"] #main > :is(.proof,.cta-band)::before,body[data-page="home"] #main > :is(.proof,.cta-band)::after { content: none !important; }
body[data-page="home"] #main > :is(.proof,.cta-band) > * { margin-top: 0 !important; margin-bottom: 0 !important; }
body[data-page="home"] #main > .proof { display: block !important; padding-bottom: 100px !important; background-color: #F8F5EE !important; }
body[data-page="home"] #main > .proof > :is(.proof-head,.proof-grid) { max-width: none !important; width: 100%; margin-left: 0 !important; margin-right: 0 !important; }
body[data-page="home"] #main > .proof > .proof-head { padding-bottom: 40px; }
body[data-page="home"] #main > .proof + .cta-band { display: block !important; background-color: #A9B5A8 !important; margin-top: -1px !important; position: relative; z-index: 10; padding-top: 80px !important; padding-bottom: 80px !important; }
body[data-page="home"] #main { background-color: #F8F5EE; padding-bottom: 0; }
@media(max-width:768px) { body[data-page="home"] #main > :is(.proof,.cta-band) { padding-left: 24px !important; padding-right: 24px !important; } }
body[data-page="home"] #main > .cta-band > :is(.eyebrow,h2) { padding-bottom: 24px; }
body[data-page="home"] #site-footer,body[data-page="home"] .site-footer { margin-top: 0 !important; border: none !important; box-shadow: none !important; }
body[data-page="home"] #site-footer { position: relative; margin-top: -1px !important; }
.cert-carousel .cert-item { padding: 12px !important; }
.cert-carousel .cert-item img { max-width: 88% !important; max-height: 88% !important; object-fit: contain; }
@media(max-width:768px) {
  html,body { -webkit-tap-highlight-color: transparent !important; }
  body[data-page="home"] .landing-trust .cert-carousel .cert-item { width: 130px !important; height: 90px !important; min-width: 130px !important; max-width: 130px; flex: 0 0 auto !important; scroll-snap-align: start; display: flex !important; justify-content: center !important; align-items: center !important; background-color: #FFFFFF !important; }
  .cert-carousel .cert-item,.cert-carousel .cert-item * { transform: none !important; box-shadow: 0 2px 8px rgba(0,0,0,.03) !important; filter: none !important; transition: none !important; animation: none !important; }
  .cert-carousel .cert-item:is(:hover,:active,:focus) { transform: none !important; outline: none !important; background-color: #FFFFFF !important; }
  .cert-carousel .cert-item img { max-width: 80% !important; max-height: 80% !important; object-fit: contain !important; }
}
html { scrollbar-width: none; }
@media(max-width:768px) {
  html,body { overflow-x: hidden !important; width: 100%; position: relative; }
  html { scroll-padding-top: 80px; }
  body[data-page="home"] #main > .hero--typographic:is(.hero,#home-hero) { padding-bottom: 40px !important; min-height: auto !important; height: auto !important; }
  body[data-page="home"] .hero--typographic .hero-copy { margin-bottom: 0 !important; padding-bottom: 0 !important; }
  body[data-page="home"] #main > .statement--approach { padding-top: 40px !important; margin-top: 0 !important; }
  body[data-page="home"] .landing-trust .cert-carousel { display: flex !important; flex-wrap: nowrap !important; overflow-x: auto !important; width: 100vw; max-width: 100%; min-width: 0; box-sizing: border-box; padding: 0 24px 24px !important; gap: 16px; scroll-snap-type: x mandatory; -webkit-overflow-scrolling: touch; overscroll-behavior-x: contain; }
  body[data-page="home"] .landing-trust { min-width: 0; max-width: 100%; }
}
::-webkit-scrollbar { display: none; }
/* Homepage seam structure: padding belongs to content, not boundary boxes. */
body[data-page="home"],body[data-page="home"] #main { display: flex !important; flex-direction: column !important; gap: 0 !important; margin: 0 !important; padding: 0 !important; }
body[data-page="home"] #site-header { position: sticky !important; top: 0; flex-shrink: 0; z-index: 1000; }
body[data-page="home"] #site-header .site-header { position: relative !important; }
body[data-page="home"] #main > :is(.why-choose-us-section,.brief-section) { width: 100% !important; max-width: 100% !important; margin: 0 !important; padding: 0 !important; border: none !important; outline: none !important; display: block !important; min-height: 0 !important; }
body[data-page="home"] #main > .why-choose-us-section { background: #F8F5EE !important; box-shadow: none !important; position: relative !important; z-index: 10 !important; overflow: visible !important; margin-bottom: 0 !important; padding-bottom: 100px !important; }
body[data-page="home"] #main > .brief-section { background: #A9B5A8 !important; box-shadow: none !important; position: relative !important; top: -2px !important; z-index: 11; }
body[data-page="home"] #main > .proof + .cta-band { padding: 0 !important; margin: 0 !important; }
body[data-page="home"] #main > :is(.why-choose-us-section,.brief-section)::before,body[data-page="home"] #main > :is(.why-choose-us-section,.brief-section)::after { display: none !important; content: none !important; }
body[data-page="home"] #main > :is(.why-choose-us-section,.brief-section) { clip-path: none !important; }
html:has(body[data-page="home"]),body[data-page="home"],body[data-page="home"] #main { background-color: #F8F5EE !important; }
body[data-page="home"] #main > :is(.hero--typographic,.statement--approach,.landing-trust,.solutions-preview) { background-color: #F4F1EA !important; }
body[data-page="home"] #main { display: flex !important; flex-direction: column !important; gap: 0 !important; row-gap: 0 !important; margin: 0 !important; padding: 0 !important; }
body[data-page="home"] section > img,body[data-page="home"] section > svg { display: block !important; vertical-align: bottom !important; }
body[data-page="home"] #main > :is(.why-choose-us-section,.brief-section) > .section-inner { width: 100%; max-width: 1400px; margin: 0 auto !important; box-sizing: border-box; padding: 80px 0 100px !important; background: transparent !important; border: none !important; box-shadow: none !important; }
body[data-page="home"] #main > .brief-section > .section-inner { padding-top: 100px !important; }
body[data-page="home"] .why-choose-us-section .proof-head { margin: 0 0 40px; }
body[data-page="home"] .why-choose-us-section .proof-grid { max-width: none; margin: 0; }
body[data-page="home"] .why-choose-us-section .proof-grid { margin-bottom: 0 !important; border-bottom: none !important; }
body[data-page="home"] #main > .why-choose-us-section > .section-inner { padding-bottom: 0 !important; }
body[data-page="home"] .brief-section .section-inner > .eyebrow { margin: 0 0 24px; }
body[data-page="home"] .brief-section .section-inner > h2 { margin: 0 0 24px !important; }
body[data-page="home"] #site-footer { margin-top: -2px !important; }
@media(min-width:769px) { body[data-page="home"] #main > :is(.why-choose-us-section,.brief-section) > .section-inner { width: 90%; } }
@media(max-width:768px) { body[data-page="home"] #main > :is(.why-choose-us-section,.brief-section) > .section-inner { padding-left: 24px !important; padding-right: 24px !important; } }
body { overscroll-behavior-y: none; }
#full-chain-supply h3 .accent-plus { position: static; display: inline; font-family: var(--font-body-family,'Inter',sans-serif) !important; font-size: inherit !important; line-height: inherit; font-weight: 300 !important; letter-spacing: normal; margin: 0 4px; color: rgba(255,255,255,.8) !important; }
#full-chain-supply .supply-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 24px; align-items: stretch; width: 100%; }
#full-chain-supply .supply-card { display: flex; flex-direction: column; height: 100%; padding: 40px 32px 32px !important; min-width: 0; box-sizing: border-box; background: rgba(255,255,255,.02); border: 1px solid rgba(255,255,255,.1) !important; border-radius: 8px; }
#full-chain-supply .supply-card::before,#full-chain-supply .supply-card::after { content: none !important; display: none !important; }
#full-chain-supply .supply-card-header { display: flex; justify-content: space-between; align-items: flex-start; width: 100%; }
#full-chain-supply .supply-card-header svg { width: 32px !important; height: 32px !important; flex: 0 0 32px; fill: none; stroke: #FFFFFF; stroke-width: 1.5; }
#full-chain-supply .supply-number { position: static; margin: 0; color: rgba(255,255,255,.6); font: 600 14px/32px 'Inter',sans-serif !important; }
#full-chain-supply .supply-card h3 { min-height: 2.4em !important; line-height: 1.2 !important; margin: 16px 0 24px !important; font-size: 1.8rem !important; color: #FFFFFF; }
#full-chain-supply .supply-card > p { color: rgba(255,255,255,.85) !important; font-size: 1rem !important; line-height: 1.6 !important; margin: 0 0 24px !important; }
#full-chain-supply .supply-metric { margin-top: auto; font: 700 1.5rem/1.3 'Inter',sans-serif !important; color: #FFFFFF; border-top: 1px solid rgba(255,255,255,.1); padding-top: 16px; }
#full-chain-supply .supply-metric > span { position: static; display: block; color: rgba(255,255,255,.6); font: 400 .9rem/1.5 'Inter',sans-serif !important; margin-top: 8px; }
#full-chain-supply h3 .plus-sign { font-family: var(--font-body-family,'Inter',sans-serif) !important; font-weight: 300 !important; color: rgba(255,255,255,.5) !important; margin: 0 4px; }
#full-chain-supply .supply-card > a { margin-top: auto; }
#full-chain-supply .supply-visual { position: relative; width: 100%; max-width: 100%; box-sizing: border-box; height: 300px; margin: 32px 0 0; border-radius: 8px; overflow: hidden; isolation: isolate; }
#full-chain-supply .supply-visual img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center 55%; transform: scale(1.02); }
#full-chain-supply .supply-visual::after { content: ''; position: absolute; inset: 0; background: linear-gradient(to top right,rgba(28,42,58,.95) 0%,rgba(28,42,58,.72) 35%,rgba(28,42,58,.3) 65%,rgba(28,42,58,0) 100%); z-index: 1; pointer-events: none; }
#full-chain-supply .supply-visual figcaption { position: absolute; z-index: 2; left: 40px; bottom: 40px; right: 40px; color: #FFFFFF; }
#full-chain-supply .supply-visual figcaption span { font: 600 11px/1.5 'Inter',sans-serif; letter-spacing: 1.5px; }
#full-chain-supply .supply-visual figcaption p { font: 500 clamp(1.3rem,2.3vw,2rem)/1.3 'Inter',sans-serif; margin: 12px 0 0; color: #FFFFFF; }
@media(max-width:1024px) { #full-chain-supply .supply-grid { grid-template-columns: minmax(0,1fr); } #full-chain-supply .supply-card h3 { min-height: 0 !important; } }
@media(max-width:768px) { #full-chain-supply .supply-card { padding: 24px !important; } #full-chain-supply .supply-visual { height: 240px; } #full-chain-supply .supply-visual figcaption { left: 24px; right: 24px; bottom: 24px; } }
body[data-page="approach"] #project-management.structured-section { scroll-margin-top: 100px !important; padding: 60px 0 80px !important; width: 100%; max-width: 100%; min-height: 0 !important; }
#project-management .structured-container { width: 100%; max-width: 1100px !important; margin: 0 auto !important; padding-left: 24px !important; padding-right: 24px !important; box-sizing: border-box !important; min-width: 0; }
#project-management.structured-section h2 { font-size: clamp(2.5rem,4vw,3.5rem) !important; line-height: 1.2 !important; margin-bottom: 40px !important; }
#project-management .structured-grid { display: grid !important; grid-template-columns: repeat(2,minmax(0,1fr)) !important; width: 100% !important; max-width: 1100px !important; box-sizing: border-box !important; gap: 0 !important; margin: 0 auto !important; min-width: 0; border: 1px solid rgba(28,42,58,.08) !important; }
#project-management .structured-grid > article { padding: 32px !important; border: .5px solid rgba(28,42,58,.08) !important; box-sizing: border-box !important; min-width: 0; }
#project-management .structured-card-header { display: flex !important; justify-content: space-between !important; align-items: center !important; width: 100%; margin-bottom: 24px !important; }
#project-management .structured-card-header .approach-line-icon { margin: 0; flex: 0 0 32px; width: 32px !important; height: 32px !important; stroke-width: 1.5; }
#project-management .structured-card-header .card-number { position: static !important; inset: auto !important; margin: 0; font-size: 1.2rem !important; line-height: 32px; font-weight: 700 !important; color: var(--color-accent-blue,#0047BB) !important; }
#project-management .structured-grid h3 { margin-top: 0 !important; margin-bottom: 16px !important; font-size: 1.6rem !important; }
#project-management .structured-grid p { max-width: 90% !important; margin-bottom: 0 !important; line-height: 1.6 !important; font-size: 1rem !important; color: rgba(28,42,58,.75) !important; }
body[data-page="approach"] .inner-tab-nav { position: relative; top: auto; display: flex; justify-content: center; gap: 40px; padding: 24px; background: transparent !important; border: none !important; box-shadow: none !important; }
body[data-page="approach"] .inner-tab-nav a { display: inline-flex; align-items: center; min-height: 44px; flex: 0 0 auto; padding-bottom: 4px; border-bottom: 2px solid transparent; font-family: var(--font-body-family,'Inter',sans-serif) !important; font-size: .9rem; font-weight: 600; color: rgba(28,42,58,.5) !important; text-decoration: none; transition: color .3s ease; }
body[data-page="approach"] .inner-tab-nav a.active { color: #0F1E36 !important; border-bottom-color: #0047BB; }
body[data-page="approach"] .inner-tab-nav a:hover { color: #0F1E36 !important; }
@media(max-width:768px) { body[data-page="approach"] .inner-tab-nav { justify-content: flex-start; gap: 24px; overflow-x: auto; max-width: 100%; box-sizing: border-box; } }
@media(max-width:768px) { #project-management .structured-grid { grid-template-columns: minmax(0,1fr) !important; } #project-management .structured-grid > article { padding: 24px !important; } }

/* About: compact, consistently contained editorial layout. */
body[data-page="contact"] #main > .global-map-section:has(.hubs-grid-layout) { display: flex; flex-direction: column; justify-content: center; padding: 40px 24px !important; min-height: calc(100vh - 84px) !important; }
.global-map-section .global-network-grid.hubs-grid-layout { width: 100%; max-width: 1400px; display: grid !important; grid-template-columns: minmax(0,1fr) !important; grid-template-rows: auto auto; gap: 32px !important; }
.global-map-section .hubs-grid-layout .global-network-stage { width: 100% !important; padding: 0 !important; display: flex; align-items: center; justify-content: center; min-height: 0; }
.global-map-section .hubs-map-container .network-world { width: 100% !important; height: clamp(220px,calc((100vh - 196px)*.6),520px) !important; max-height: 55vh; object-fit: contain; }
.hubs-bottom-row { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 48px; align-items: start; }
.hubs-text-content { display: grid; padding-top: 20px; min-width: 0; }
.hubs-text-content > div { grid-area: 1 / 1; }
.hubs-text-content > div[hidden] { display: block !important; visibility: hidden; opacity: 0; pointer-events: none; }
.hubs-text-content > div:not([hidden]) { animation: hubs-copy-in .25s ease both; }
.global-map-section .hubs-text-content .eyebrow { margin: 0 0 12px; }
.global-map-section .hubs-text-content :is(h2,h3) { font-size: clamp(1.8rem,2.7vw,2.5rem) !important; line-height: 1.15; margin: 0 0 16px; color: #1C2A3A; }
.global-map-section .hubs-text-content :is(.description,.global-map-head > p:last-child) { max-width: 600px; margin: 0; font: 400 .95rem/1.6 'Inter',sans-serif; color: rgba(28,42,58,.8); }
.global-map-section .hubs-bottom-row .gba-detail-box { position: static !important; width: 100% !important; height: auto !important; aspect-ratio: auto !important; margin: 0 !important; padding: 24px 32px !important; display: flex; flex-direction: column; background: transparent !important; border: 1px dashed rgba(226,93,28,.5) !important; border-radius: 8px; box-shadow: none !important; box-sizing: border-box; }
.gba-detail-box h4 { margin: 0 0 20px; font: 500 .85rem/1.4 'Inter',sans-serif; letter-spacing: .05em; color: rgba(28,42,58,.6); }
.gba-node-list { display: flex; flex-direction: column; gap: 16px; }
.gba-detail-node { position: relative; display: grid; grid-template-columns: 100px minmax(0,1fr); gap: 12px; align-items: baseline; padding: 0 0 0 16px; background: transparent; border: 0; color: #1C2A3A; text-align: left; cursor: pointer; }
.gba-detail-node::before { content: ''; position: absolute; left: 0; top: 7px; width: 6px; height: 6px; border-radius: 50%; background: #D97736; }
.gba-detail-node strong { font: 600 .8rem/1.5 'Inter',sans-serif; text-transform: uppercase; }
.gba-detail-node > span { font: 400 .8rem/1.5 'Inter',sans-serif; color: rgba(28,42,58,.75); }
.gba-detail-node:is(:hover,.active) strong { color: #D97736; }
.gba-detail-node:focus-visible { outline: 2px solid #0047BB; outline-offset: 5px; }
@keyframes hubs-copy-in { from { opacity: 0; transform: translateY(5px); } to { opacity: 1; transform: none; } }
@media(max-width:767px) { .hubs-bottom-row { grid-template-columns: minmax(0,1fr); gap: 24px; } .hubs-text-content { padding-top: 0; } .global-map-section .hubs-map-container .network-world { height: auto !important; max-height: none; } .global-map-section .hubs-bottom-row .gba-detail-box { padding: 24px !important; } .gba-detail-node { grid-template-columns: minmax(0,1fr); gap: 4px; } }
@media(prefers-reduced-motion:reduce) { .hubs-text-content > div:not([hidden]) { animation: none; } }
.global-map-section .global-network-grid { gap: 60px !important; grid-template-columns: minmax(0,35fr) minmax(0,65fr) !important; }
.global-map-section .global-map-head > p:last-child { font: 400 1rem/1.7 'Inter',sans-serif; color: rgba(28,42,58,.8); max-width: 420px; margin-bottom: 0; }
.global-map-section .global-city-list,.global-map-section .map-info-panel { display: none !important; }
.global-map-section .global-network-grid .global-network-stage { padding-bottom: 180px !important; }
.global-map-section .network-world { max-height: 75vh; }
.global-map-section .network-world .city-name { font-size: 24px !important; text-shadow: 0 1px 2px rgba(255,255,255,.9); }
.global-map-section .network-world .city-code { font-size: 14px !important; }
.global-map-section .network-world .leader { stroke: #8FA0A9 !important; stroke-width: .7px !important; opacity: .75; fill: none; }
.global-map-section .gba-mini-inset { background: rgba(248,245,238,.95) !important; border-color: rgba(226,93,28,.4) !important; border-radius: 4px; box-shadow: 0 4px 12px rgba(0,0,0,.03) !important; }
.global-map-section .city-tooltip { position: absolute; box-sizing: border-box; width: max-content; max-width: min(250px,calc(100% - 16px)); background: rgba(255,255,255,.85); backdrop-filter: blur(8px); border: 1px solid rgba(28,42,58,.1); padding: 12px 16px; border-radius: 6px; box-shadow: 0 8px 24px rgba(0,0,0,.08); pointer-events: none !important; opacity: 0; visibility: hidden; transform: translateY(10px); transition: opacity .3s ease,transform .3s ease,visibility .3s ease; z-index: 100; }
.global-map-section .city-tooltip.visible { opacity: 1; visibility: visible; transform: translateY(0); }
.global-map-section .city-tooltip h4 { margin: 0 0 4px; font: 600 1rem/1.3 'Inter',sans-serif; color: #1C2A3A; }
.global-map-section .city-tooltip p { margin: 0; font: 400 .85rem/1.5 'Inter',sans-serif; color: rgba(28,42,58,.8); }
@media(max-width:1023px) { .global-map-section .global-network-grid { grid-template-columns: minmax(0,1fr) !important; gap: 32px !important; } }
@media(max-width:600px) { .global-map-section .global-network-grid .global-network-stage { padding-bottom: 0 !important; } }
@media(prefers-reduced-motion:reduce) { .global-map-section .city-tooltip { transition: none; transform: none; } }
body[data-page="contact"] #main > .global-map-section { background: #F8F5EE !important; color: #1C2A3A !important; padding: 80px 24px !important; min-height: calc(100vh - 84px) !important; display: flex; align-items: center; }
.global-map-section .global-network-grid { display: grid !important; grid-template-columns: minmax(0,35fr) minmax(0,65fr) !important; gap: 48px !important; width: 100%; max-width: 1400px; margin: 0 auto; align-items: center !important; }
.global-map-section .global-network-grid .global-map-head { align-self: center; min-width: 0; }
.global-map-section .global-network-grid .global-network-stage { position: relative; width: 100% !important; max-width: none !important; min-width: 0; height: auto !important; aspect-ratio: auto !important; padding: 0 0 220px !important; align-self: center; }
.global-map-section .network-world { display: block; width: 100% !important; max-width: none !important; height: auto !important; max-height: 70vh; }
.global-map-section .map-info-panel { position: absolute; bottom: 20px; right: 20px; width: 280px; min-height: 160px; box-sizing: border-box; background: rgba(255,255,255,.75) !important; backdrop-filter: blur(12px); border: 1px solid rgba(28,42,58,.1); border-radius: 8px; padding: 24px; box-shadow: 0 12px 32px rgba(0,0,0,.06); z-index: 10; }
.global-map-section .map-info-panel h4 { font: 600 1.2rem/1.3 'Inter',sans-serif; color: #1C2A3A; margin: 0 0 8px; }
.global-map-section .map-info-panel p { font: 400 .95rem/1.5 'Inter',sans-serif; color: rgba(28,42,58,.8); margin: 0; }
.global-map-section .gba-mini-inset { bottom: 20px !important; left: 20px !important; right: auto !important; width: 200px !important; height: 160px !important; padding: 16px !important; background: transparent !important; border: 1px dashed rgba(226,93,28,.5) !important; border-radius: 8px; box-shadow: none !important; box-sizing: border-box; transition: background-color .3s,border-color .3s; }
.global-map-section .gba-mini-inset.is-highlighted { background: rgba(226,93,28,.07) !important; border-color: #E25D1C !important; }
.global-map-section .gba-mini-heading { font-size: 9px; letter-spacing: .5px; }
.global-map-section .gba-mini-label { font-size: 9px; }
.global-map-section .gba-detail-leader { display: none !important; }
@media(max-width:1100px) { .global-map-section .global-network-grid { grid-template-columns: minmax(0,1fr) !important; gap: 32px !important; } .global-map-section .global-map-head h2 { font-size: clamp(2.5rem,5vw,4rem); } }
@media(max-width:600px) { .global-map-section .global-network-grid .global-network-stage { padding-bottom: 0 !important; } .global-map-section .gba-mini-inset { position: relative !important; left: auto !important; bottom: auto !important; margin: 24px 0; } .global-map-section .map-info-panel { position: relative; right: auto; bottom: auto; width: 100%; min-height: 140px; } }
#full-chain-supply .supply-card-bottom-tag { font: 600 .85rem/1.4 'Inter',sans-serif !important; color: rgba(255,255,255,.9) !important; background: rgba(255,255,255,.1) !important; padding: 6px 12px !important; border-radius: 20px !important; display: inline-block !important; border: 1px solid rgba(255,255,255,.15) !important; }
#full-chain-supply .supply-card { padding: 32px !important; background-color: rgba(255,255,255,.02) !important; }
#full-chain-supply .supply-card h3 { margin: 16px 0 !important; font-size: 1.4rem !important; }
#full-chain-supply .supply-card > p { font-size: .95rem !important; line-height: 1.6 !important; color: rgba(255,255,255,.75) !important; margin-bottom: 24px !important; padding-bottom: 0 !important; }
#full-chain-supply .supply-metric { margin-top: auto; border-top: 0; padding-top: 0; }
body[data-page="about"] .manufacturing-grid { display: grid !important; grid-template-columns: repeat(2,minmax(0,1fr)) !important; gap: 48px !important; }
body[data-page="about"] .manufacturing-grid .capability-card { display: flex !important; flex-direction: column !important; height: 100%; grid-column: auto; gap: 0; }
body[data-page="about"] .manufacturing-grid .image-wrapper { display: block; padding: 0; width: 100% !important; height: 320px !important; flex: 0 0 320px; overflow: hidden; border-radius: 4px; margin-bottom: 24px !important; border: 1px solid rgba(28,42,58,.05) !important; box-sizing: border-box; }
body[data-page="about"] .manufacturing-grid .image-wrapper img { width: 100%; height: 100% !important; object-fit: cover; border-radius: 0; }
body[data-page="about"] .manufacturing-grid .capability-card > div:not(.image-wrapper) { padding: 0; }
body[data-page="about"] .manufacturing-grid .card-number,body[data-page="about"] .reason-grid article > span { color: var(--color-accent-blue,#0047BB) !important; font-weight: 700 !important; font-size: 1.2rem !important; padding-top: 0; }
body[data-page="about"] .manufacturing-grid .capability-card p { color: rgba(28,42,58,.7) !important; line-height: 1.6 !important; }
body[data-page="about"] .esg-chart-section { scroll-margin-top: 84px; }
@media(min-width:1024px) {
  body[data-page="about"] .esg-chart-section { min-height: calc(100vh - 84px) !important; display: flex; flex-direction: column; justify-content: center; padding: 60px 0 !important; gap: 32px; box-sizing: border-box; }
  body[data-page="about"] .esg-chart-section .esg-water-intro { width: 100%; display: grid; grid-template-columns: 1fr 1fr; column-gap: 40px; align-items: start; }
  body[data-page="about"] .esg-chart-section .esg-water-intro .eyebrow { grid-column: 1 / -1; margin-bottom: 12px; }
  body[data-page="about"] .esg-chart-section h3 { grid-column: 1; grid-row: 2 / 4; font-size: clamp(2rem,3vw,2.75rem); margin: 0; }
  body[data-page="about"] .esg-chart-section .esg-reduction { margin-bottom: 12px; }
  body[data-page="about"] .esg-chart-section .esg-water-note { margin: 0; }
  body[data-page="about"] .esg-chart-section .chart-container { width: 100%; max-height: 500px !important; padding-left: 56px; box-sizing: border-box; }
  body[data-page="about"] .esg-chart-section .esg-chart-plot { height: clamp(180px,27vh,290px); }
}
@media(max-width:768px) { body[data-page="about"] .manufacturing-grid { grid-template-columns: minmax(0,1fr) !important; gap: 32px !important; } }
@media(min-width:1024px) {
  body[data-page="approach"] #full-chain-supply { min-height: calc(100vh - 84px) !important; display: flex !important; flex-direction: column !important; justify-content: center !important; padding-top: 40px !important; padding-bottom: 40px !important; box-sizing: border-box; scroll-margin-top: 84px !important; }
  #full-chain-supply .approach-branch-intro { display: block; margin: 0; }
  #full-chain-supply .approach-branch-intro .eyebrow { margin-bottom: 12px; }
  #full-chain-supply .approach-branch-intro h2 { font-size: clamp(2.5rem,4vw,3.5rem) !important; line-height: 1.1 !important; margin-bottom: 40px !important; }
  #full-chain-supply .supply-grid { grid-template-columns: repeat(3,minmax(0,1fr)); max-width: 1200px !important; margin: 0 auto !important; gap: 24px !important; width: 100% !important; }
  #full-chain-supply .supply-card { padding: 32px !important; }
  #full-chain-supply .supply-card h3 { margin: 16px 0 !important; font-size: 1.4rem !important; min-height: 2.4em !important; }
  #full-chain-supply .supply-card > p { font-size: .95rem !important; line-height: 1.6 !important; margin-bottom: 24px !important; }
  #full-chain-supply .supply-metric { margin-top: auto; font-size: 1.2rem !important; padding-top: 0; }
  #full-chain-supply .supply-card > p { padding-bottom: 20px; }
  #full-chain-supply .supply-visual { height: clamp(80px,14vh,160px); flex-shrink: 0; margin-top: 24px; }
  #full-chain-supply .supply-visual figcaption { left: 24px; right: 24px; bottom: 20px; }
  #full-chain-supply .supply-visual figcaption p { font-size: 1.3rem; margin-top: 8px; }
}
@media(min-width:1024px) and (max-width:1200px) { body[data-page="approach"] #full-chain-supply { padding-block: 32px !important; } #full-chain-supply .approach-branch-intro h2 { margin-bottom: 24px !important; } #full-chain-supply .supply-visual { height: 80px; } #full-chain-supply .supply-visual figcaption { bottom: 12px; } }
body[data-page="about"] #main > section { padding-block: clamp(60px,8vh,100px) !important; padding-inline: max(24px,calc((100% - 1200px)/2 + 24px)) !important; margin-block: 0 !important; min-height: 0 !important; box-sizing: border-box; }
body[data-page="about"] :is(.about-foundation,.about-promise) { grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 48px; align-items: center; }
body[data-page="about"] :is(.about-foundation-copy,.about-promise > div:last-child) { align-self: center; }
body[data-page="about"] :is(.capabilities-head,.capability-grid,.reason-grid,.esg-container) { width: 100%; max-width: 1200px !important; margin-inline: auto !important; min-width: 0; }
body[data-page="about"] .esg-container { padding-inline: 0 !important; }
body[data-page="about"] .capabilities-head { margin-bottom: 32px; gap: 40px; }
body[data-page="about"] .capability-grid { gap: 32px; }
body[data-page="about"] .capability-card { min-width: 0; height: auto; }
body[data-page="about"] .capability-card img { height: 240px; max-height: 500px !important; width: 100%; object-fit: cover; border-radius: 8px; }
body[data-page="about"] .capability-card--lead { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 48px; align-items: center; }
body[data-page="about"] .capability-card--lead img { height: clamp(280px,32vw,420px); }
body[data-page="about"] .capability-card > div { padding-block: 16px 0; gap: 8px 12px; }
body[data-page="about"] .capability-card h3 { margin: 0 0 8px; min-height: 0; }
body[data-page="about"] .reason-grid { gap: 24px 40px !important; margin-top: 32px; }
body[data-page="about"] .reason-grid article:nth-child(n) { padding: 24px 0 0; min-width: 0; }
body[data-page="about"] .reason-grid h3 { margin: 8px 0 16px !important; }
body[data-page="about"] .reason-grid p { line-height: 1.6 !important; color: var(--color-text-muted,#596269) !important; margin-bottom: 0; }
body[data-page="about"] .esg-pillar { padding: 24px 20px 40px; }
body[data-page="about"] .esg-pillar h3 { margin-top: 8px; margin-bottom: 16px; }
body[data-page="about"] .esg-pillar > p { line-height: 1.6; margin-bottom: 24px; }
body[data-page="about"] .esg-performance { padding-block: 48px; gap: 40px; }
body[data-page="about"] .esg-social-grid .esg-people-card { padding: 24px 16px !important; }
body[data-page="about"] .esg-social-head h3 { margin-bottom: 24px; }
@media(max-width:768px) {
  body[data-page="about"] :is(.about-foundation,.about-promise,.capability-card--lead) { grid-template-columns: minmax(0,1fr); gap: 24px; }
  body[data-page="about"] .capability-card--lead img { height: 260px; }
  body[data-page="about"] .capability-grid { grid-template-columns: minmax(0,1fr); }
  body[data-page="about"] .esg-performance { gap: 32px; }
}

/* Final three-zone hubs layout: replace all former inset reservations. */
body[data-page="contact"] #main > #global-hubs.global-map-section[data-network-ready] { padding: 40px 24px !important; gap: 0 !important; }
body[data-page="contact"] .global-map-section .global-network-grid.hubs-grid-layout { padding: 0 !important; max-width: 1400px !important; width: 100% !important; gap: 32px !important; }
body[data-page="contact"] .global-map-section .hubs-grid-layout .global-network-stage.hubs-map-container { padding: 0 !important; margin: 0 !important; min-height: 0 !important; height: auto !important; }
.global-map-section .hubs-text-content #dynamic-city-copy .headline { font-size: clamp(1.3rem,1.9vw,1.65rem) !important; line-height: 1.2; }
.global-map-section .hubs-text-content .global-map-head h2 { font-size: clamp(1.7rem,2.5vw,2.2rem) !important; }
.global-map-section .hubs-bottom-row .gba-detail-box h4 { font-family: 'Inter',sans-serif !important; }

/* Map-led balance with compact editorial annotations. */
body[data-page="contact"] #main > #global-hubs.global-map-section[data-network-ready] { padding: 20px 24px !important; }
body[data-page="contact"] .global-map-section .global-network-grid.hubs-grid-layout { gap: 20px !important; }
.global-map-section .hubs-text-content { padding-top: 0; }
.global-map-section .hubs-text-content #dynamic-city-copy #city-name { font-family: var(--font-serif,var(--serif,'Playfair Display',Georgia,serif)) !important; font-size: 1.8rem !important; font-weight: 400 !important; line-height: 1.2 !important; margin: 0 0 8px !important; text-transform: none; letter-spacing: -.02em; color: #1C2A3A; }
.global-map-section .hubs-text-content #dynamic-city-copy #city-role { font-family: var(--font-body-family,'Inter',sans-serif) !important; font-size: 1.1rem !important; font-weight: 600 !important; margin: 0 0 12px !important; line-height: 1.35; }
.global-map-section .hubs-text-content #dynamic-city-copy .description { font-size: .95rem !important; line-height: 1.6 !important; color: rgba(28,42,58,.75) !important; }
.global-map-section .hubs-text-content .global-map-head h2 { font-size: 1.8rem !important; margin-bottom: 12px; }
.global-map-section .hubs-text-content .global-map-head > p:last-child { font-size: .9rem; }
.global-map-section .hubs-bottom-row .gba-detail-box { padding: 24px !important; max-width: 450px !important; justify-self: end; }
.global-map-section .hubs-bottom-row .gba-detail-box h4 { font-size: .8rem !important; margin-bottom: 16px !important; }
.global-map-section .gba-node-list { gap: 12px; }
.global-map-section .gba-detail-node { grid-template-columns: 90px minmax(0,1fr); gap: 10px; }
.global-map-section .gba-detail-node > span { font-size: .75rem; line-height: 1.4; }
@media(min-width:1024px) {
  body[data-page="contact"] .global-map-section .global-network-grid.hubs-grid-layout { height: calc(100vh - 124px); min-height: 570px; grid-template-rows: minmax(0,1fr) auto; align-items: stretch !important; }
  body[data-page="contact"] .global-map-section .hubs-grid-layout .global-network-stage.hubs-map-container { height: 100% !important; align-self: stretch; }
  .global-map-section .hubs-map-container .network-world { height: 100% !important; max-height: 60vh !important; }
  .global-map-section .hubs-bottom-row { align-self: end; padding-top: 0; }
}
@media(max-width:767px) { .global-map-section .hubs-bottom-row .gba-detail-box { max-width: none !important; } .global-map-section .gba-detail-node { grid-template-columns: minmax(0,1fr); gap: 4px; } }

/* Tight map-to-copy flow: the lower row never absorbs free height. */
.global-map-section .hubs-text-content { text-align: left !important; }
.global-map-section .hubs-text-content #dynamic-city-copy #city-name { font-size: clamp(2rem,3vw,2.5rem) !important; margin-bottom: 16px !important; }
.global-map-section .hubs-bottom-row .gba-detail-box { width: 100% !important; max-width: 550px !important; margin-left: auto !important; padding: 32px !important; border: 1px dashed rgba(226,93,28,.6) !important; border-radius: 8px !important; background: rgba(255,255,255,.4) !important; }
@media(min-width:1024px) {
  body[data-page="contact"] #main > #global-hubs.global-map-section[data-network-ready] { height: calc(100vh - 84px) !important; min-height: 0 !important; padding: 20px 24px 40px !important; box-sizing: border-box; }
  body[data-page="contact"] .global-map-section .global-network-grid.hubs-grid-layout { display: flex !important; flex-direction: column !important; height: 100%; min-height: 0; gap: 0 !important; }
  body[data-page="contact"] .global-map-section .hubs-grid-layout .global-network-stage.hubs-map-container { flex: 1 1 0 !important; height: auto !important; min-height: 0; padding-bottom: 20px !important; align-items: flex-end; }
  .global-map-section .hubs-map-container .network-world { width: 100% !important; max-width: 1200px !important; height: 100% !important; max-height: 65vh !important; }
  .global-map-section .hubs-bottom-row { flex: 0 0 auto !important; width: 100%; display: grid !important; grid-template-columns: minmax(0,1fr) minmax(0,1fr) !important; gap: 64px !important; align-items: start !important; padding-top: 24px !important; border-top: 1px solid rgba(28,42,58,.08); }
}
@media(max-width:767px) { .global-map-section .hubs-bottom-row .gba-detail-box { max-width: none !important; padding: 24px !important; } }
