.base-page { overflow-wrap: anywhere; }
.base-page h1,.base-page h2,.base-page h3 { font-family: "Songti SC", "SimSun", serif; font-weight: 500; }
.base-page h1 { font-size: clamp(40px, 4.6vw, 68px); line-height: 1.3; margin: 22px 0; }
.base-page h2 { font-size: clamp(30px, 3.3vw, 46px); line-height: 1.4; margin: 0 0 24px; }
.base-page h3 { font-size: 26px; line-height: 1.5; margin: 14px 0; }
.base-page p { line-height: 1.9; }
.base-page p + p { margin-top: 12px; }
.base-lead { max-width: 650px; font-size: 19px; }
.base-intro { display: grid; grid-template-columns: 46% 54%; background: #10281f; color: #fffdf6; }
.base-intro-copy { padding: 68px 11% 60px 13%; align-self: center; }
.base-intro-text-only { grid-template-columns: 1fr; }
.base-intro-text-only .base-intro-copy { padding: 60px 6%; }
.base-intro .home-eyebrow,.quality-intro .home-eyebrow { color: #efd495; }
.base-intro-image { min-width: 0; display: grid; }
.base-figure { margin: 0; position: relative; }
.base-figure img { width: 100%; height: 100%; object-fit: contain; background: #e9eee5; display: block; }
.base-figure figcaption { font-size: 12px; line-height: 1.7; padding: 10px 14px; background: #10281fed; color: #fffdf6; }
.base-intro-image .base-figure { min-height: 470px; }
.base-intro-image .base-figure img { position: absolute; inset: 0; }
.base-intro-image figcaption { position: absolute; bottom: 0; right: 0; max-width: 100%; }
.base-local-nav { display: flex; flex-wrap: wrap; gap: 12px 24px; margin-top: 32px; }
.base-local-nav a { padding: 8px 0; color: inherit; text-decoration: none; border-bottom: 1px solid #b7c0b6; }
.base-company { padding: 70px 6%; display: grid; grid-template-columns: 1fr 2fr; gap: 7%; }
.base-company .base-figure { max-width: 620px; margin-top: 30px; }
.base-company .base-figure img { aspect-ratio: 1.5; height: auto; }
.base-environment { background: #e9eee5; padding: 68px 6% 76px; }
.base-section-heading { margin-bottom: 34px; }
.base-cards { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 24px; }
.base-card { background: #fffdf6; scroll-margin-top: 115px; }
.base-card-media .base-figure img { aspect-ratio: 1.5; height: auto; }
.base-card-media .base-figure figcaption { min-height: 61px; }
.base-card-copy { padding: 26px 24px 32px; }
.base-card-copy h3 { font-size: 25px; }
.base-card-copy .home-eyebrow { font-size: 11px; }
.base-media-empty { aspect-ratio: 1.2; background: #dce4d7; padding: 20px 26px; display: flex; flex-direction: column; justify-content: center; border-bottom: 1px solid #d2ddcb; }
.base-media-empty span { font: 64px Georgia,serif; color: #73806c; }
.base-media-empty p { margin: 0; font-size: 13px; }
.base-facts { list-style: none; padding: 0; margin-top: 24px; }
.base-facts li { border-top: 1px solid #d7dfd2; padding: 18px 0 0; }
.base-fact-context { font-size: 12px; color: #52634e; }
.base-text-link { display: inline-block; padding: 12px 0; color: #23392e; border-bottom: 1px solid; text-decoration: none; }
.base-location { padding: 72px 6%; display: grid; grid-template-columns: 1fr 1fr; gap: 8%; }
.base-location-panel { background: #e9eee5; padding: 34px; border: 1px solid #c6d1bd; }
.base-location-badge { display: inline-block; color: #344d37; border: 1px solid #829976; border-radius: 30px; padding: 6px 14px; font-size: 13px; }
.base-location-panel .home-button,.base-proof-links .home-button { background: #233f2f; color: #fffdf6; margin-top: 14px; }
.base-address { font-weight: 600; }
.base-source { border-top: 1px solid #cbd0c2; padding: 22px 6%; font-size: 12px; display: flex; justify-content: space-between; align-items: center; gap: 20px; }
.base-source a { white-space: nowrap; color: inherit; }
.base-extra { padding: 48px 6%; }
.quality-intro { background: #12382d; color: #fbf6e9; padding: 72px 6%; }
.quality-proofs { background: #e9eee5; padding: 64px 6% 80px; }
.quality-proof-empty { margin-top: 34px; padding: 36px; background: #fffdf6; border: 1px solid #cbd5c4; }
.quality-proof-empty > span { color: #8c9c84; font-size: 48px; }
.quality-proof { margin-top: 28px; padding: 32px; background: #fffdf6; }
.base-proof-links { display: flex; flex-wrap: wrap; gap: 15px; }
.base-page section { scroll-margin-top: 115px; }
.home-nav a[aria-current="page"] { text-decoration: underline; text-underline-offset: 7px; }
@media(max-width:1100px) { .base-cards { gap: 16px; } .base-card-copy { padding: 24px 18px; } }
@media(max-width:900px) {
  .base-intro { grid-template-columns: 1fr; }.base-intro-copy { padding: 48px 6%; }
  .base-intro-image .base-figure { min-height: 340px; }.base-cards { grid-template-columns: 1fr; }
  .base-card { display: grid; grid-template-columns: 42% 58%; }.base-card-media { align-self: start; }
  .base-company,.base-location { grid-template-columns: 1fr; gap: 25px; padding: 48px 6%; }
  .base-media-empty { box-sizing: border-box; aspect-ratio: 1; border-bottom-width: 1px; }
}
@media(max-width:600px) {
  .base-page h1 { font-size: 40px; }.base-lead { font-size: 16px; }
  .base-intro-image .base-figure { min-height: 300px; }.base-card { display: block; }
  .base-environment,.quality-proofs,.quality-intro { padding: 44px 6%; }.base-card-copy { padding: 24px; }
  .base-media-empty { aspect-ratio: 1.5; }.base-location-panel,.quality-proof-empty,.quality-proof { padding: 24px; }
  .base-location-panel .home-button { width: 100%; justify-content: space-between; }
  .base-source { align-items: start; }.base-local-nav { gap: 8px 22px; }
}
