/* Selected by 南哥: graphite + champagne, 2026-10-12. Shared visitor website theme. */
html.site-theme-graphite {--palette-primary:#242522;--palette-accent:#D5BA86;--palette-highlight:#D5BA86;--palette-bg:#F4F1EB;--palette-surface:#FFFDFA;--palette-text:#282923;--palette-muted:#615F55;--palette-button-text:#242522;--palette-hover:#E4CDA4;--palette-rgb:36,37,34;--palette-nav:#1D1F1C;--palette-nav-text:#FFFFFF;--palette-logo:invert(1);--palette-stone:#E2DACE;--palette-label:#786034;}
html.site-theme-graphite { --black: var(--palette-text); --white: var(--palette-surface); --steel: var(--palette-primary); --steel-light: #373A34; --orange: var(--palette-label); --orange-dark: var(--palette-hover); --gray-100: var(--palette-bg); --gray-200:var(--palette-stone); --gray-300:#C5BDAF; --gray-400: var(--palette-muted); --gray-500:var(--palette-muted); --gray-600:var(--palette-text); --focus:var(--palette-primary); }
html.site-theme-graphite body { color:var(--palette-text); }
html.site-theme-graphite .site-nav { background:var(--palette-nav); border-bottom-color:var(--palette-stone); }
html.site-theme-graphite .site-nav .nav-links > li > a, html.site-theme-graphite .site-nav .nav-dropdown-toggle, html.site-theme-graphite .site-nav .lang-current { color:var(--palette-nav-text); }
html.site-theme-graphite .nav-logo__image { filter:var(--palette-logo); }
html.site-theme-graphite .nav-hamburger span { background:var(--palette-nav-text); }
html.site-theme-graphite .site-nav .lang-switcher { border-color:var(--palette-muted); }
html.site-theme-graphite .hero__overlay { background:linear-gradient(to right,rgba(var(--palette-rgb),.93) 0%,rgba(var(--palette-rgb),.87) 43%,rgba(var(--palette-rgb),.52) 100%); }
html.site-theme-graphite .hero__title, html.site-theme-graphite .hero__subtitle, html.site-theme-graphite .stat-block__num, html.site-theme-graphite .section-title--white { color:#fff; }
html.site-theme-graphite .hero__subtitle { color:#E8EEE9; }
html.site-theme-graphite .hero__label.a11y-accent-dark, html.site-theme-graphite .section--steel .a11y-accent-dark { color:var(--palette-highlight)!important; }
html.site-theme-graphite .btn--primary, html.site-theme-graphite .nav-cta, html.site-theme-graphite .nav-mega-cta-btn, html.site-theme-graphite .why-img-badge, html.site-theme-graphite .feature-row__icon { background:var(--palette-accent); color:var(--palette-button-text); }
html.site-theme-graphite .btn--primary:hover, html.site-theme-graphite .nav-cta:hover, html.site-theme-graphite .nav-mega-cta-btn:hover { background:var(--palette-hover); color:var(--palette-button-text); }
html.site-theme-graphite .feature-row__icon svg { stroke:var(--palette-button-text); }
html.site-theme-graphite .why-img-badge__num, html.site-theme-graphite .why-img-badge__label { color:var(--palette-button-text); }
html.site-theme-graphite .btn--dark { color:#fff; }
html.site-theme-graphite .hero .btn--outline { color:#fff; border-color:#fff; }
html.site-theme-graphite .hero .btn--outline:hover { color:var(--palette-primary); background:#fff; }
html.site-theme-graphite .section-label { color:var(--palette-label); }
html.site-theme-graphite .stat-block__label, html.site-theme-graphite .step-desc, html.site-theme-graphite .section--steel p[style], html.site-theme-graphite .footer-brand-text, html.site-theme-graphite .footer-col a, html.site-theme-graphite footer .footer-contact-details, html.site-theme-graphite footer .footer-contact-details a, html.site-theme-graphite footer .footer-bottom p, html.site-theme-graphite footer .footer-col h4 { color:#CCD7D1; }
html.site-theme-graphite .step-num { color:var(--palette-highlight); }
html.site-theme-graphite .site-footer, html.site-theme-graphite .mobile-menu, html.site-theme-graphite .nav-dropdown { background:var(--palette-primary); }
html.site-theme-graphite .nav-dropdown a, html.site-theme-graphite .mobile-menu a, html.site-theme-graphite .mobile-menu-parent { color:#fff; }
html.site-theme-graphite .nav-mega-item .d { color:#CCD7D1; }
html.site-theme-graphite .nav-mega-item .t { color:#fff; }
html.site-theme-graphite .nav-mega-cta { background:rgba(255,255,255,.05); }
html.site-theme-graphite .nav-mega-cta-t { color:#fff; }
html.site-theme-graphite .nav-mega-cta-d { color:#CCD7D1; }
html.site-theme-graphite .hero a:focus-visible, html.site-theme-graphite .section--steel a:focus-visible, html.site-theme-graphite footer a:focus-visible { outline-color:var(--palette-highlight); }
html.site-theme-graphite #site-nav :focus-visible { outline-color:var(--palette-nav-text); }
html.site-theme-graphite .site-nav a.nav-cta, html.site-theme-graphite .site-nav a.nav-mega-cta-btn { color:var(--palette-button-text)!important; }
/* Gold on pale surfaces needs a darker text variant. */
html.site-theme-graphite .blog-card__cat,
html.site-theme-graphite .section--white a[style*="var(--orange)"],
html.site-theme-graphite .section--gray a[style*="var(--orange)"],
html.site-theme-graphite .accordion__icon { color:#786034 !important; }
html.site-theme-graphite .sector-card__eyebrow.a11y-accent-dark { color:#D5BA86 !important; }
html.site-theme-graphite .hero__title em { color:#D5BA86; }
html.site-theme-graphite .social-icon { color:#FFFFFF; }

/* Semantic accents: gold for dark surfaces; deep gold for text on warm white. */
html.site-theme-graphite :is(.hero,.section--steel,.section--black,.site-footer,.mobile-menu,.nav-dropdown,.lang-dropdown,.sector-card,.proj-card,.faq-sidebar__box,.inquiry-section,.inquiry-form-side,.quote-modal__aside,.theme-dark-surface) {
  --orange:var(--palette-accent); --orange-dark:var(--palette-hover); --focus:var(--palette-highlight);
}
html.site-theme-graphite .a11y-accent-dark { color:var(--palette-highlight) !important; }
html.site-theme-graphite .hero__overlay--center { background:rgba(var(--palette-rgb),.78); }
html.site-theme-graphite :is(.contact-icon,.cert-icon,.feature-card__icon--orange,.factory-card__bar,.testimonial__bar,.testimonial-dot.active) { background:var(--palette-accent); }
html.site-theme-graphite :is(.contact-icon,.cert-icon,.feature-card__icon--orange) { color:var(--palette-button-text); }
html.site-theme-graphite :is(.contact-icon,.cert-icon,.feature-card__icon--orange) svg[stroke="white"] { stroke:var(--palette-button-text); }
html.site-theme-graphite :is(.contact-icon,.cert-icon,.feature-card__icon--orange) svg[fill="white"] { fill:var(--palette-button-text); }
html.site-theme-graphite :is(.factory-card__est,.cert-body,.process-tag,.step-card__num,.testimonial__quote-mark) { color:var(--palette-label); }
html.site-theme-graphite .cert-category-header { color:var(--palette-accent); }
html.site-theme-graphite .pagination .page-numbers.current,
html.site-theme-graphite ul.page-numbers>li>.current { background:var(--palette-accent); color:var(--palette-button-text); border-color:var(--palette-accent); }
html.site-theme-graphite .pagination .page-numbers:hover { color:var(--palette-label); }
html.site-theme-graphite .pagination .page-numbers.current:hover { color:var(--palette-button-text); }
html.site-theme-graphite .process-band__step:first-child .process-band__num { color:var(--palette-label); }
html.site-theme-graphite .lang-dropdown { background:var(--palette-primary); }
html.site-theme-graphite .nav-dropdown--mega :is(.nav-mega-link,.nav-mega-ind),
html.site-theme-graphite .nav-mega-h { color:#CCD7D1; }
html.site-theme-graphite .nav-dropdown--mega :is(.nav-mega-link,.nav-mega-ind):hover,
html.site-theme-graphite .nav-mega-item:hover .t { color:var(--palette-accent); }
html.site-theme-graphite :is(.faq-sidebar__desc,.advantage-item__desc,.recaptcha-notice,.recaptcha-notice a,.stat-label) { color:#CCD7D1; }
html.site-theme-graphite .form-label--section:not(.a11y-accent-dark) { color:var(--palette-label); }
html.site-theme-graphite .form-input--light option { background:var(--palette-surface); color:var(--palette-text); }
html.site-theme-graphite .social-icon:hover { color:var(--palette-button-text); background:var(--palette-accent); }
html.site-theme-graphite .section--white .social-icon { color:var(--palette-text); }
html.site-theme-graphite .section--white .social-icon:hover { color:var(--palette-button-text); }
html.site-theme-graphite :is(.theme-dark-surface,.inquiry-section) :is(.form-label:not(.form-label--dark),.inquiry-guidance,.local-form-notice) { color:#CCD7D1; }
html.site-theme-graphite :is(.theme-dark-surface,.section--steel,.section--black) [style*="color:rgba(255,255,255"] { color:#CCD7D1 !important; }
html.site-theme-graphite :is(.theme-dark-surface,.section--steel,.section--black,.inquiry-section) :is(a,button,input,textarea,select):focus-visible { outline-color:var(--palette-highlight); }
/* Utility panels remain warm and readable even inside dark inquiry sections. */
html.site-theme-graphite :is(.local-form-notice,.local-form-status,.cms-form-status) {
  background:var(--palette-bg); color:var(--palette-text) !important; border-color:var(--palette-stone);
}
html.site-theme-graphite .local-form-status { border-color:var(--palette-label); }
html.site-theme-graphite .content-state { background:#F3E9D6; color:#786034; border-left-color:var(--palette-accent); }
html.site-theme-graphite :is(.product-facts,.case-source-note,.project-empty-state,.inquiry-technical) { background:var(--palette-bg); }
html.site-theme-graphite :is(.product-facts dt,.project-empty-state h2,.inquiry-technical) { color:var(--palette-text); }
html.site-theme-graphite :is(.case-source-note,.project-results-status,.project-empty-state,.inquiry-guidance,.inquiry-technical p) { color:var(--palette-muted); }
html.site-theme-graphite .inquiry-technical { border-color:var(--palette-stone); }
html.site-theme-graphite :is(.content-actions,.project-empty-state)>a:not(.btn),
html.site-theme-graphite .project-clear-filters { color:var(--palette-label); }
html.site-theme-graphite .skip-link { color:var(--palette-text); background:var(--palette-surface); }
html.site-theme-graphite #local-external-dialog { color:var(--palette-text); background:var(--palette-surface); }
html.site-theme-graphite .sol-proj-card__overlay { background:linear-gradient(to top,rgba(36,37,34,.94) 0%,rgba(36,37,34,.12) 60%); }
html.site-theme-graphite .sol-proj-card__loc { color:#E8EEE9; }
/* apple-design review: readable labels and consistent control states. */
html.site-theme-graphite .form-label { font-size:12px; overflow-wrap:anywhere; }
html.site-theme-graphite :is(p,li,dt,dd,.form-label,.proj-card__loc,.sol-proj-card__loc) { overflow-wrap:anywhere; }
html.site-theme-graphite :is(.stat-label,.stat-block__label,.recaptcha-notice,.cr) { font-size:12px; }
html.site-theme-graphite :is(.btn,.nav-cta,.nav-mega-cta-btn,.inquiry-technical summary):focus-visible { outline-width:3px; outline-style:solid; outline-color:var(--focus); outline-offset:3px; }
html.site-theme-graphite .inquiry-technical summary:focus-visible { outline-color:var(--palette-label); }
html.site-theme-graphite :is(.btn--primary,.nav-cta,.nav-mega-cta-btn):not(:disabled):active { background:#C3A76E; color:var(--palette-button-text); }
html.site-theme-graphite .btn--dark:active { background:#414039; }
html.site-theme-graphite .btn--outline:active { background:var(--palette-stone); color:var(--palette-primary); }
html.site-theme-graphite button:disabled { cursor:not-allowed; }
html.site-theme-graphite .btn:disabled,
html.site-theme-graphite .btn:disabled:hover { background:var(--palette-stone); color:var(--palette-muted); opacity:1; cursor:not-allowed; }
html.site-theme-graphite form[aria-busy="true"] .btn:disabled { cursor:progress; }
html.site-theme-graphite .hero--home { max-height:none; }
@media (max-width:680px) {
  html.site-theme-graphite .form-input { font-size:16px; min-height:44px; }
  html.site-theme-graphite .form-label { font-size:13px; }
  html.site-theme-graphite :is(.stat-label,.stat-block__label,.recaptcha-notice,.cr) { font-size:12px; }
  html.site-theme-graphite .process-steps { grid-template-columns:repeat(auto-fit,minmax(min(100%,max(6em,calc((100% - 2rem)/2))),1fr)) !important; }
}
html.site-theme-graphite :is(h1,h2,h3,h4,.stat-block__label) { overflow-wrap:anywhere; }
/* Two-column photo categories keep their layout until larger text needs a row. */
html.site-theme-graphite div:has(>.sector-card) {
  grid-template-columns:repeat(auto-fit,minmax(min(100%,max(8em,calc((100% - 3px)/2))),1fr)) !important;
}
html.site-theme-graphite :is(.inquiry-inner>*,.inquiry-form-side form,.form-row>*,.form-input,.inquiry-aside-side) { min-width:0; }
html.site-theme-graphite .footer-col a { overflow-wrap:anywhere; }
/* Enlarged text may turn two photo columns into one; ordinary text stays two. */
html.site-theme-graphite .sector-card[style*="height:300px"] { min-height:15em; }
@media(max-width:680px) {
  html.site-theme-graphite :is(.proj-side,.proj-bottom) {
    grid-template-columns:repeat(auto-fit,minmax(min(100%,max(10em,calc((100% - 3px)/2))),1fr)) !important;
  }
  html.site-theme-graphite :is(.proj-card--short,.proj-card--half) { min-height:max(100px,6em); }
  html.site-theme-graphite .home-proj-grid {
    grid-template-columns:repeat(auto-fit,minmax(min(100%,max(9em,calc((100% - .6rem)/2))),1fr)) !important;
  }
  html.site-theme-graphite .sol-proj-grid {
    grid-template-columns:repeat(auto-fit,minmax(min(100%,max(8em,calc((100% - 3px)/2))),1fr)) !important;
  }
  html.site-theme-graphite .sol-proj-card { min-height:max(0px,calc(16em - 256px)); }
}
html.site-theme-graphite :is(.proj-side,.proj-bottom,.sol-proj-grid,.home-proj-grid)>* { min-width:0; }
html.site-theme-graphite .sol-proj-card { width:100%; }
html.site-theme-graphite .solutions-sector-card__label { overflow-wrap:anywhere; }
html.site-theme-graphite .hero .btn--outline:active { background:var(--palette-stone); color:var(--palette-primary); }
html.site-theme-graphite ul.page-numbers>li>a:hover { background:#F3E9D6; color:var(--palette-label); border-color:var(--palette-label); }
html.site-theme-graphite ul.page-numbers>li>a:active { background:var(--palette-accent); color:var(--palette-button-text); }
html.site-theme-graphite .project-country-filter:hover { border-color:var(--palette-label); }

/* Keep the entire case image visible, including while hovering. */
img[src^="/assets/cases-1920x1080/"] {
  object-fit:contain !important;
  object-position:center;
  aspect-ratio:auto !important;
  transform:none !important;
}
:is(.proj-card,.home-proj-card,.sol-proj-card):has(img[src^="/assets/cases-1920x1080/"]) {
  aspect-ratio:16/9;
  min-height:0 !important;
  align-self:start;
}
.proj-link__thumb:has(img[src^="/assets/cases-1920x1080/"]) {
  aspect-ratio:16/9;
}
/* Flatten the former tall/stacked mosaic into consecutive equal-ratio cards. */
html.site-theme-graphite .container-md:has(>.proj-featured img[src^="/assets/cases-1920x1080/"]) {
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(min(100%,max(16em,calc((100% - 3px)/2))),1fr));
  gap:3px;
}
html.site-theme-graphite .container-md:has(>.proj-featured img[src^="/assets/cases-1920x1080/"]) :is(.proj-featured,.proj-side,.proj-bottom) {
  display:contents;
}
html.site-theme-graphite .container-md:has(>.proj-featured img[src^="/assets/cases-1920x1080/"])>.text-center {
  grid-column:1/-1;
}
:is(.proj-card,.home-proj-card,.sol-proj-card,.proj-link__thumb) img[src^="/assets/cases-1920x1080/"] {
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
}
.wp-block-image img[src^="/assets/cases-1920x1080/"] {
  display:block;
  width:100%;
  height:auto !important;
}
/* Let the hero image establish its height instead of cropping to 460px. */
.single-project>div:has(>div>img[src^="/assets/cases-1920x1080/"]) {
  display:grid !important;
  min-height:0 !important;
}
.single-project>div>div:has(>img[src^="/assets/cases-1920x1080/"]) {
  position:relative !important;
  grid-area:1/1;
  min-width:0;
}
.single-project>div>div>img[src^="/assets/cases-1920x1080/"] {
  display:block;
  width:100%;
  height:auto !important;
}
.single-project>div:has(>div>img[src^="/assets/cases-1920x1080/"])>div:last-child {
  grid-area:1/1;
  align-self:end;
}
@media(max-width:680px) {
  .single-project>div:has(>div>img[src^="/assets/cases-1920x1080/"])>div:last-child {
    grid-area:2/1;
    padding:28px 4vw !important;
  }
  .single-project>div>div:has(>img[src^="/assets/cases-1920x1080/"])+div {
    display:none;
  }
  .single-project>div>div>img[src^="/assets/cases-1920x1080/"] {
    opacity:1 !important;
  }
}
html.site-theme-graphite :is(.faq-btn,.accordion__trigger):hover { background:#F4F1EB; }
html.site-theme-graphite :is(.faq-btn,.accordion__trigger):active { background:var(--palette-stone); }
html.site-theme-graphite .cms-form-status:focus-visible { outline:3px solid var(--palette-label); outline-offset:3px; }

/* Product and solution assets: full-image presentation. */
img[src^="/assets/products-1920x1080/"] {
  object-fit:contain !important;
  object-position:center;
  aspect-ratio:16/9 !important;
  transform:none !important;
}
:is(.sector-card,.solutions-sector-card):has(img[src^="/assets/products-1920x1080/"]) {
  aspect-ratio:16/9 !important;
  height:auto !important;
  min-height:0 !important;
  align-self:start;
}
.env3-card .im:has(img[src^="/assets/products-1920x1080/"]) {
  aspect-ratio:16/9;
  height:auto !important;
}
.env3-img[src^="/assets/products-1920x1080/"] {
  display:block;
  width:100%;
  height:auto !important;
}
.grid-2 img[src^="/assets/products-1920x1080/"] {
  width:100%;
  height:auto !important;
}
.hero__bg[style*="/assets/products-1920x1080/"] {
  background-size:contain !important;
  background-repeat:no-repeat;
  position:relative !important;
  grid-area:1/1;
  aspect-ratio:16/9;
  width:100%;
}
.hero:has(>.hero__bg[style*="/assets/products-1920x1080/"]) {
  display:grid !important;
  grid-template-columns:minmax(0,1fr);
  min-height:0 !important;
  height:auto !important;
  max-height:none !important;
  padding:var(--nav-h) 0 0;
}
.hero:has(>.hero__bg[style*="/assets/products-1920x1080/"])>.hero__content {
  grid-area:1/1;
  align-self:center;
  justify-self:center;
}
@media(max-width:680px) {
  html.site-theme-graphite div:has(>.sector-card img[src^="/assets/products-1920x1080/"]) {
    grid-template-columns:1fr !important;
  }
  .hero:has(>.hero__bg[style*="/assets/products-1920x1080/"])>.hero__content {
    grid-area:2/1;
    padding:32px 4vw;
  }
  .hero:has(>.hero__bg[style*="/assets/products-1920x1080/"])>.hero__overlay {
    display:none;
  }
  .solutions-sector-grid:has(img[src^="/assets/products-1920x1080/"]) {
    grid-template-columns:1fr !important;
  }
}

/* Factory and fabrication assets: full-image presentation. */
img[src^="/assets/factory-1920x1080/"] {
  display:block;
  width:100% !important;
  max-width:100%;
  height:auto !important;
  object-fit:contain !important;
  object-position:center;
  aspect-ratio:16/9 !important;
  transform:none !important;
}
:is(.why-img-wrap,.profile-photo,.cert-photo-wrap,.blog-card__thumb):has(img[src^="/assets/factory-1920x1080/"]) {
  height:auto !important;
  min-height:0 !important;
  aspect-ratio:16/9 !important;
  align-self:start;
}
.wp-block-image:has(img[src^="/assets/factory-1920x1080/"]) {
  width:100%;
  margin-left:0;
  margin-right:0;
}
.hero__bg[style*="/assets/factory-1920x1080/"] {
  background-size:contain !important;
  background-repeat:no-repeat;
  position:relative !important;
  grid-area:1/1;
  aspect-ratio:16/9;
  width:100%;
}
.hero:has(>.hero__bg[style*="/assets/factory-1920x1080/"]) {
  display:grid !important;
  grid-template-columns:minmax(0,1fr);
  min-height:0 !important;
  height:auto !important;
  max-height:none !important;
  padding:var(--nav-h) 0 0;
}
.hero:has(>.hero__bg[style*="/assets/factory-1920x1080/"])>.hero__content {
  grid-area:1/1;
  align-self:center;
  justify-self:center;
}
article>div:has(>div>img[src^="/assets/factory-1920x1080/"]) {
  display:grid;
  grid-template-columns:minmax(0,1fr);
  padding:0 !important;
}
article>div>div:has(>img[src^="/assets/factory-1920x1080/"]) {
  position:relative !important;
  inset:auto !important;
  grid-area:1/1;
  width:100%;
}
article>div:has(>div>img[src^="/assets/factory-1920x1080/"])>div:not(:has(img)) {
  grid-area:1/1;
  align-self:center;
  justify-self:center;
  padding:50px 4vw;
}
@media(max-width:680px) {
  .hero:has(>.hero__bg[style*="/assets/factory-1920x1080/"])>.hero__content {
    grid-area:2/1;
    padding:32px 4vw;
  }
  .hero:has(>.hero__bg[style*="/assets/factory-1920x1080/"])>.hero__overlay {
    display:none;
  }
  article>div:has(>div>img[src^="/assets/factory-1920x1080/"])>div:not(:has(img)) {
    grid-area:2/1;
    padding:32px 4vw;
  }
  article>div>div>img[src^="/assets/factory-1920x1080/"] {
    opacity:1 !important;
  }
}

/* Technical article assets: full-image presentation. */
img[src^="/assets/technical-1920x1080/"] {
  display:block;
  width:100% !important;
  max-width:100%;
  height:auto !important;
  object-fit:contain !important;
  object-position:center;
  aspect-ratio:16/9 !important;
  transform:none !important;
}
:is(.why-img-wrap,.profile-photo,.cert-photo-wrap,.blog-card__thumb):has(img[src^="/assets/technical-1920x1080/"]) {
  height:auto !important;
  min-height:0 !important;
  aspect-ratio:16/9 !important;
  align-self:start;
}
.wp-block-image:has(img[src^="/assets/technical-1920x1080/"]) {
  width:100%;
  margin-left:0;
  margin-right:0;
}
.hero__bg[style*="/assets/technical-1920x1080/"] {
  background-size:contain !important;
  background-repeat:no-repeat;
  position:relative !important;
  grid-area:1/1;
  aspect-ratio:16/9;
  width:100%;
}
.hero:has(>.hero__bg[style*="/assets/technical-1920x1080/"]) {
  display:grid !important;
  grid-template-columns:minmax(0,1fr);
  min-height:0 !important;
  height:auto !important;
  max-height:none !important;
  padding:var(--nav-h) 0 0;
}
.hero:has(>.hero__bg[style*="/assets/technical-1920x1080/"])>.hero__content {
  grid-area:1/1;
  align-self:center;
  justify-self:center;
}
article>div:has(>div>img[src^="/assets/technical-1920x1080/"]) {
  display:grid;
  grid-template-columns:minmax(0,1fr);
  padding:0 !important;
}
article>div>div:has(>img[src^="/assets/technical-1920x1080/"]) {
  position:relative !important;
  inset:auto !important;
  grid-area:1/1;
  width:100%;
}
article>div:has(>div>img[src^="/assets/technical-1920x1080/"])>div:not(:has(img)) {
  grid-area:1/1;
  align-self:center;
  justify-self:center;
  padding:50px 4vw;
}
@media(max-width:680px) {
  .hero:has(>.hero__bg[style*="/assets/technical-1920x1080/"])>.hero__content {
    grid-area:2/1;
    padding:32px 4vw;
  }
  .hero:has(>.hero__bg[style*="/assets/technical-1920x1080/"])>.hero__overlay {
    display:none;
  }
  article>div:has(>div>img[src^="/assets/technical-1920x1080/"])>div:not(:has(img)) {
    grid-area:2/1;
    padding:32px 4vw;
  }
  article>div>div>img[src^="/assets/technical-1920x1080/"] {
    opacity:1 !important;
  }
}
/* Local audit repairs: retain the approved palette and uncropped image sources. */
.reference-notice {font-size:14px;line-height:1.7;color:var(--gray-600);margin:0 0 1.5rem;max-width:75ch;}
.reference-introduction {max-width:1100px;margin:0 auto;padding:28px 4vw 0;}
.cross-sector-reference {grid-column:1 / -1;}
.logo-grid {margin-top:1rem;}
.solution-hero-cta {margin-top:1rem;}
html.site-theme-graphite :is(input,textarea,select) {font-family:inherit;}
html.site-theme-graphite .form-input {font-size:16px;min-height:44px;}
.whatsapp-float[hidden] {display:none!important;}
.home-reference-notice {font-size:16px;}
@media(max-width:680px) {
  .home-refined section.section {padding-block:44px;}
  .home-refined .home-reference-grid>.proj-link:nth-child(n+4),
  .home-refined .home-article-grid>article.blog-card:nth-child(n+2) {display:none;}
}
html.site-theme-graphite :is(.spec-row__label,.process-tag,.env3-pill,.blog-card__cat,.sector-card__eyebrow,.env3-geyb,.contact-label,.advantages__label,.faq-sidebar__tips>p) {font-size:12px!important;}
.site-article article>div:first-of-type {
  display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  align-items:center;gap:24px;padding:32px 4vw!important;
}
.site-article article>div:first-of-type>div:has(>img) {
  position:relative!important;inset:auto!important;grid-area:1/2;
  width:100%;aspect-ratio:16/9;
}
.site-article article>div:first-of-type>div:not(:has(img)):last-child {
  grid-area:1/1;align-self:center;justify-self:stretch;padding:0!important;
}
.site-article article>div:first-of-type img {object-fit:contain!important;width:100%;height:100%;}
.site-article article>div:first-of-type>div:nth-child(2):not(:has(img)) {display:none;}
.site-article article>div:first-of-type h1 {font-size:clamp(28px,3vw,44px)!important;}
html.site-theme-graphite .faq-layout--single {grid-template-columns:minmax(0,1fr)!important;max-width:900px;margin-inline:auto;}
@media(max-width:680px) {
  html.site-theme-graphite .form-row,
  html.site-theme-graphite .form-row--3 {grid-template-columns:minmax(0,1fr)!important;}
  .site-article article>div:first-of-type {grid-template-columns:minmax(0,1fr);padding:24px 4vw!important;}
  .site-article article>div:first-of-type>div:not(:has(img)):last-child {grid-area:1/1;}
  .site-article article>div:first-of-type>div:has(>img) {grid-area:2/1;}
}
