/* Local working site: Gill Sans, balanced grids and a shared anthracite footer. */
:root {
  --default-font:"Gill Sans","Gill Sans MT",Calibri,sans-serif;
  --heading-font:"Gill Sans","Gill Sans MT",Calibri,sans-serif;
  --nav-font:"Gill Sans","Gill Sans MT",Calibri,sans-serif;
}
body { font-family:var(--default-font); font-weight:400; font-synthesis:none; }
button,input,select,textarea { font-family:var(--default-font); }
b,strong { font-weight:600; }
.site-unified :is(.iub__us-widget__link,.iubenda-tp-btn,.iubenda-embed) { font-family:var(--default-font)!important; font-weight:500!important; }
body.site-unified #myContactForm .iubenda-embed { font-family:var(--default-font)!important; font-weight:500!important; }
body.site-unified :is(h1,h2,h3,h4,h5,h6) { font-family:var(--heading-font); font-weight:400; }
body.site-unified .header-refined .logo h1,body.site-unified .footer-brand-link span { font-weight:600; }
.site-unified .header-refined .navmenu a { font-family:var(--nav-font); font-weight:400; letter-spacing:.025em; }
.site-unified .header-refined .catalog-link,.site-unified a[href*="gmtecnoled.com"] { text-transform:none!important; }
.site-unified .gil-button,.site-unified .hero-action,.site-unified .career-button { font-weight:500; }
/* The same safe gutters at the header, page edges, section grids and footer. */
.site-unified #header>.container,
.site-unified main>section>.container,
.site-unified main>.container,
.site-unified .page-title>.container,
.site-unified .footer-refined>.container {
  width:100%; max-width:1280px; margin-inline:auto; padding-inline:32px;
}
.site-unified .blog-details>.container { width:100%; max-width:none; padding-inline:0; }
.site-unified main :is(article,figure,.case-metric,.gil-section-heading)>* { min-width:0; }
.site-unified .case-project-card { grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr); gap:48px; padding:32px 0; background:transparent; }
.site-unified .case-card-intro,.site-unified .case-card-numbers,.site-unified .case-preview-grid>* { min-width:0; }
.site-unified .case-card-intro h3 { font-size:clamp(29px,2.7vw,36px); line-height:1.22; font-weight:400; margin:19px 0 23px; }
.site-unified .case-card-intro>p:not(.gil-eyebrow):not(.case-sector) { max-width:54ch; font-size:16px; line-height:1.75; margin-bottom:23px; overflow-wrap:break-word; }
.site-unified .case-card-intro .gil-eyebrow { margin-bottom:12px; }
.site-unified .case-sector { font-size:11px; line-height:1.65; letter-spacing:.045em; margin:0; }
.site-unified .case-card-numbers { gap:30px 24px; padding:16px 0 16px 32px; align-items:start; }
.site-unified .case-card-numbers .case-metric span { font-size:12px; }
.site-unified .case-card-numbers .case-metric strong { font-size:clamp(25px,2.2vw,31px); font-weight:400; }
.site-unified .case-card-numbers .case-metric small { font-size:12px; }
.site-unified .case-home-section>.container>.gil-text-link { margin-top:20px; }
.site-unified .case-preview-grid { grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr); }
/* About: a real two-column composition, with no absolute image or overlapping panel. */
.site-unified .about-refined { background:#fff; border-top:1px solid #e5eae2; }
.about-refined .about-top { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.1fr); gap:64px; align-items:center; }
.about-refined .about-intro { min-width:0; }
.about-refined .about-eyebrow { color:var(--brand-green); font-size:11px; font-weight:500; letter-spacing:.09em; margin:0 0 18px; }
.site-unified .about-refined h2 { font-size:clamp(34px,3.2vw,44px); font-weight:400; line-height:1.2; margin:0 0 26px; letter-spacing:-.025em; }
.about-refined .about-intro>p:not(.about-eyebrow) { font-size:17px; line-height:1.75; color:#536459; margin:0 0 20px; max-width:53ch; }
.about-refined .about-intro strong { color:#293c30; font-weight:600; }
.about-refined .about-media { margin:0; min-width:0; }
.about-refined .about-media img { position:static; display:block; width:100%; height:auto; max-width:100%; border-radius:2px; }
.about-refined .about-contact { display:inline-flex; align-items:center; gap:20px; min-height:46px; color:var(--brand-green); font-size:15px; font-weight:500; margin-top:4px; }
.about-refined .about-details { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(0,1.2fr) minmax(0,.7fr); gap:42px; margin-top:48px; padding-top:29px; border-top:1px solid #dfe6db; }
.about-refined .about-detail { min-width:0; }
.site-unified .about-refined .about-detail h3 { font-size:21px; font-weight:400; color:#293c30; margin:0 0 16px; letter-spacing:-.01em; }
.about-refined .about-detail p { font-size:15px; line-height:1.8; color:#627065; margin:0; }
.about-refined .about-values ul { display:grid; gap:11px; margin:0; padding:0; list-style:none; }
.about-refined .about-values li { display:flex; align-items:center; gap:11px; font-size:16px; line-height:1.7; padding:0; color:#415b46; }
.about-refined .about-values li::before { content:""; display:block; width:15px; height:1px; background:#319645; }
.about-refined a:focus-visible { outline:2px solid var(--brand-green); outline-offset:5px; }
/* Anthracite footer with green accents and the original transparent banner. */
body.site-unified .footer-refined {
  --footer-bg:#252729; --footer-copy:#d9dfdb; --footer-title:#a6e479;
  --footer-rule:#454b47; --footer-link:#f0f5ef;
  background:var(--footer-bg); color:var(--footer-copy); border-top:2px solid #75c64e;
}
.site-unified .footer-refined-grid { grid-template-columns:1.15fr 1fr .8fr 1.15fr; gap:36px; padding-block:56px 38px; }
.site-unified .footer-refined h2 { color:var(--footer-title); font-size:12px; font-weight:500; letter-spacing:.08em; margin:12px 0 22px; }
.site-unified .footer-refined .footer-brand-link { gap:11px; margin-bottom:18px; }
.site-unified .footer-refined .footer-brand-link span { color:#fff; font-size:17px; letter-spacing:0; }
.site-unified .footer-refined .footer-company>p,
.site-unified .footer-refined address,
.site-unified .footer-refined .footer-email,
.site-unified .footer-refined .footer-navigation a,
.site-unified .footer-refined .footer-partner>p,
.site-unified .footer-refined .footer-linkedin { color:var(--footer-copy); font-size:14px; line-height:1.8; }
.site-unified .footer-refined address strong { color:var(--footer-link); font-weight:500; }
.site-unified .footer-refined .footer-phone { font-size:25px; color:#fff; font-weight:400; }
.site-unified .footer-refined .footer-navigation a { min-height:35px; }
.site-unified .footer-refined .footer-partner-banner { display:block; min-height:0; padding:8px 0; background:transparent; border:0; border-radius:0; box-shadow:none; }
.site-unified .footer-refined .footer-catalog { color:var(--footer-title); font-size:14px; font-weight:500; min-height:44px; }
.site-unified .footer-refined a:hover { color:#fff; text-decoration:underline; text-underline-offset:4px; }
.site-unified .footer-refined a:focus-visible { outline-color:var(--footer-title); }
.site-unified .footer-refined .footer-legal { border-color:var(--footer-rule); padding-block:22px 12px; }
.site-unified .footer-refined .footer-legal p,
.site-unified .footer-refined .footer-legal a { color:var(--footer-copy); font-size:12px; }
.site-unified .footer-refined .footer-credits { color:var(--footer-copy); font-size:11px; opacity:.8; }
.site-unified .footer-refined .footer-credits a { color:var(--footer-link); }
@media(max-width:1199px) {
  .site-unified .footer-refined-grid { grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:36px 52px; }
  .about-refined .about-top { gap:38px; }
  .about-refined .about-details { gap:28px; }
  .site-unified .case-project-card { gap:32px; }
}
@media(max-width:991px) {
  .site-unified .case-project-card,.site-unified .case-preview-grid { grid-template-columns:minmax(0,1fr); }
  .site-unified .case-card-numbers { grid-template-columns:repeat(2,minmax(0,1fr)); border-left:0; border-top:1px solid var(--case-line); padding:27px 0 0; }
  .about-refined .about-top { grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:32px; align-items:start; }
  .about-refined .about-intro>p:not(.about-eyebrow) { font-size:16px; }
  .about-refined .about-details { grid-template-columns:minmax(0,1fr) minmax(0,1fr); }
  .about-refined .about-values { grid-column:1/-1; }
  .about-refined .about-values ul { display:flex; gap:30px; flex-wrap:wrap; }
}
@media(max-width:767px) {
  .site-unified #header>.container { padding-inline:16px; }
  .site-unified main>section>.container,.site-unified main>.container,
  .site-unified .page-title>.container,.site-unified .footer-refined>.container { padding-inline:22px; }
  .site-unified .case-card-intro h3 { font-size:30px; }
  .site-unified .case-card-intro>p:not(.gil-eyebrow):not(.case-sector) { font-size:16px; }
  .site-unified .case-project-card { gap:28px; padding-block:27px; }
  .site-unified .case-card-numbers { gap:26px 18px; }
  .site-unified .case-card-numbers .case-metric strong { font-size:25px; }
  .about-refined .about-top { grid-template-columns:minmax(0,1fr); gap:30px; }
  .about-refined .about-media { max-width:600px; }
  .site-unified .about-refined h2 { font-size:36px; margin-bottom:22px; }
  .about-refined .about-details { grid-template-columns:minmax(0,1fr); gap:27px; margin-top:32px; padding-top:26px; }
  .about-refined .about-values { grid-column:auto; }
  .about-refined .about-values ul { gap:12px 24px; }
  .site-unified .footer-refined-grid { gap:30px 25px; padding-block:40px 32px; }
  .site-unified .footer-refined h2 { margin-top:0; }
  .site-unified .footer-refined .footer-navigation a { min-height:42px; }
  .site-unified .footer-refined .footer-legal>div { gap:22px; }
}
@media(max-width:359px) {
  .site-unified #header>.container { padding-inline:12px; }
  .site-unified main>section>.container,.site-unified main>.container,
  .site-unified .page-title>.container,.site-unified .footer-refined>.container { padding-inline:18px; }
  .site-unified .case-card-intro h3 { font-size:28px; }
  .site-unified .footer-refined-grid { grid-template-columns:minmax(0,1fr); }
}
