@charset "UTF-8";
/* ============================================================
   Grapcharger — Delta-Q XV-series skin + cloned product page
   ------------------------------------------------------------
   Design tokens sampled from delta-q.com/our-products/xv-series/
   (theme css: main-style.css, Strukture theme):
     brand blue   #255ba9   (eyebrow, icons, link accents)
     brand yellow #fdba31   (every CTA, bullet squares, underline)
     ink          #212121   (headings)
     body copy    #3f4450
     band         #f0f0f0   (alternating section ground)
     card shadow  0 12px 30px 0 rgba(0,42,103,.08)
     buttons      220x60, radius 12px, shadow 0 12px 24px rgba(0,0,0,.12)
   Type: DIN-2014 on the original; Barlow (SIL OFL, self-hosted) is the
   closest metrically-compatible open substitute.

   Loaded last (after grap-theme / grap-pdp2), so it wins without
   needing to touch the older stylesheets.
   Version: 20261017a
   ============================================================ */

@font-face{font-family:'Barlow';font-style:normal;font-weight:400;font-display:swap;
  src:url('/wp-content/uploads/grap-assets/fonts/barlow-latin-400.woff2') format('woff2');}
@font-face{font-family:'Barlow';font-style:normal;font-weight:500;font-display:swap;
  src:url('/wp-content/uploads/grap-assets/fonts/barlow-latin-500.woff2') format('woff2');}
@font-face{font-family:'Barlow';font-style:normal;font-weight:600;font-display:swap;
  src:url('/wp-content/uploads/grap-assets/fonts/barlow-latin-600.woff2') format('woff2');}

:root{
  --dq-blue:#255ba9;
  --dq-blue-d:#1d4784;
  --dq-yellow:#fdba31;
  --dq-yellow-d:#e9a619;
  --dq-ink:#212121;
  --dq-body:#3f4450;
  --dq-mute:#6b7280;
  --dq-band:#f0f0f0;
  --dq-line:rgba(67,65,67,.18);
  --dq-line-2:rgba(67,65,67,.30);
  --dq-w:1200px;
  --dq-font:'Barlow',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'Helvetica Neue',Arial,sans-serif;
}

/* ============================================================
   1. Global re-skin  (header / topbar / footer / headings)
   ============================================================ */
body,
h1,h2,h3,h4,h5,h6,
.entry-content,
.site-header,
.grap-wrap{
  font-family:var(--dq-font);
}
body{color:var(--dq-body);background:#fff;-webkit-font-smoothing:antialiased;}
h1,h2,h3,h4,h5,h6,.grap-h2,.grap-h1{
  font-family:var(--dq-font) !important;
  color:var(--dq-ink);
  font-weight:500;
  letter-spacing:-.005em;
}
a{color:var(--dq-blue);}

/* ---- top utility bar ---- */
.grap-topbar{
  background:#f5f6f7 !important;
  border-bottom:1px solid rgba(0,0,0,.07) !important;
  color:#4a515c !important;
}
.grap-topbar a,
.grap-topbar span,
.grap-topbar .grap-tb-left,
.grap-topbar .grap-tb-right{color:#4a515c !important;font-size:12.5px !important;}
.grap-topbar a:hover{color:var(--dq-blue) !important;}
.grap-topbar .grap-dot{background:var(--dq-blue) !important;}
.grap-topbar .grap-lang{border-color:rgba(0,0,0,.18) !important;color:#4a515c !important;}

/* ---- main header ---- */
.site-header,
.site-header-wrap,
.site-header-inner-wrap,
.site-header-upper-wrap,
.site-header-upper-inner-wrap,
.site-main-header-wrap,
.site-header-row-container,
.site-header-row-container-inner,
.site-header-row,
.site-header-section,
.site-mobile-header-wrap{
  background:#ffffff !important;
  border-color:rgba(0,0,0,.07) !important;
}
.site-header{box-shadow:0 1px 0 rgba(0,0,0,.07);border-top:none !important;}
.site-header .site-container{padding-top:12px;padding-bottom:12px;}
.grap-logo-name{color:var(--dq-ink) !important;font-weight:600 !important;letter-spacing:.01em !important;font-size:18px !important;}
.grap-logo-sub{color:var(--dq-blue) !important;font-weight:500 !important;letter-spacing:.14em !important;}

/* grap-theme keys the nav off #masthead (ID specificity), so the light-nav
   overrides have to use the same ID or they lose the cascade. */
#masthead .main-navigation ul li a,
#masthead .main-navigation ul li.current-menu-item > a,
#masthead .main-navigation ul li.current_page_item > a,
.primary-menu-container > ul > li > a,
.site-header .menu > li > a,
.site-header .menu > li.current-menu-item > a,
.site-header .menu > li > a:hover{
  color:var(--dq-ink) !important;
  font-family:var(--dq-font) !important;
  font-weight:500 !important;
  font-size:15px !important;
  letter-spacing:0 !important;
  text-transform:none !important;
}
#masthead .main-navigation ul li a:hover,
#masthead .main-navigation ul li.current-menu-item > a,
.site-header .menu > li > a:hover,
.site-header .menu > li.current-menu-item > a{color:var(--dq-blue) !important;}

/* Contact becomes the outlined pill, as on delta-q.com */
#masthead .main-navigation ul > li > a[href*="/contact"],
.primary-menu-container > ul > li > a[href*="/contact"],
.site-header .menu > li > a[href*="/contact"]{
  border:1px solid var(--dq-blue) !important;
  border-radius:8px !important;
  padding:10px 22px !important;
  line-height:1 !important;
  color:var(--dq-ink) !important;
  margin-left:10px;
}
#masthead .main-navigation ul > li > a[href*="/contact"]:hover,
.primary-menu-container > ul > li > a[href*="/contact"]:hover,
.site-header .menu > li > a[href*="/contact"]:hover{
  background:var(--dq-blue) !important;color:#fff !important;
}
#masthead .sub-menu,
#masthead .main-navigation ul ul,
.site-header ul.sub-menu{
  background:#fff !important;border:1px solid rgba(0,0,0,.08) !important;
  box-shadow:0 18px 40px rgba(0,0,0,.12) !important;border-radius:8px !important;
}
#masthead .sub-menu a,
.site-header ul.sub-menu a{color:var(--dq-ink) !important;}
#masthead .sub-menu a:hover,
.site-header ul.sub-menu a:hover{color:var(--dq-blue) !important;background:#f6f7f9 !important;}

/* mobile chrome */
#masthead .menu-toggle,
#masthead button.menu-toggle,
#masthead .mobile-toggle-open-container,
#masthead .mobile-toggle-open-container button,
#masthead .mobile-navigation-toggle{color:var(--dq-ink) !important;}
#mobile-drawer,.mobile-drawer,#kt-mobile-drawer,.kb-drawer{background-color:#fff !important;}
#mobile-drawer a,.mobile-drawer a{color:var(--dq-ink) !important;}

/* ---- footer: white, four columns, dark newsletter strip stays ---- */
.grap-footer{
  background:#fff !important;
  color:var(--dq-body) !important;
  border-top:1px solid rgba(0,0,0,.08) !important;
  padding-top:64px !important;
}
.grap-footer h4{
  color:var(--dq-ink) !important;font-family:var(--dq-font) !important;
  font-size:15px !important;font-weight:600 !important;letter-spacing:0 !important;
  text-transform:none !important;
}
.grap-footer .grap-f-brand{color:var(--dq-ink) !important;font-weight:600 !important;letter-spacing:.01em;}
.grap-footer a{color:var(--dq-body) !important;font-size:13.5px !important;}
.grap-footer a:hover{color:var(--dq-blue) !important;}
.grap-footer .grap-f-desc,
.grap-footer .grap-f-contact{color:var(--dq-mute) !important;}
.grap-footer-bottom{border-top:1px solid rgba(0,0,0,.08) !important;color:var(--dq-mute) !important;}
.grap-footer-bottom a{color:var(--dq-mute) !important;}

/* ---- page head (breadcrumb + H1 band) used by non-product pages ---- */
.grap-pagehead{
  background:#fff !important;
  background-image:none !important;
  border-top:none !important;
  border-bottom:1px solid rgba(0,0,0,.08);
  color:var(--dq-body) !important;
  padding:34px 0 30px !important;
}
.grap-pagehead h1{color:var(--dq-ink) !important;font-weight:500 !important;letter-spacing:-.01em !important;}
/* used to be an <h1>; demoted to <div> so each page keeps exactly one H1
   (Kadence entry-title). These rules restore the old h1 visual weight. */
.grap-dq-h1{
  display:block;color:var(--dq-ink) !important;font-weight:500 !important;
  letter-spacing:-.01em !important;font-family:var(--dq-font) !important;
  font-size:clamp(30px,3.3vw,46px) !important;line-height:1.12 !important;
  margin:0 0 14px !important;
}
.grap-pagehead p{color:var(--dq-body) !important;}
.grap-crumb{color:var(--dq-mute) !important;font-family:var(--dq-font) !important;font-size:12.5px !important;}
.grap-crumb a{color:var(--dq-mute) !important;}
.grap-crumb a:hover{color:var(--dq-blue) !important;}

/* ---- home hero: same treatment, light instead of black ---- */
.grap-hero{
  background:#fff !important;
  background-image:none !important;
  border-top:none !important;
  border-bottom:1px solid rgba(0,0,0,.08);
  color:var(--dq-body) !important;
}
.grap-hero h1,.grap-hero h2,.grap-hero h3{color:var(--dq-ink) !important;}
.grap-hero p{color:var(--dq-body) !important;}
.grap-pagehead .grap-eyebrow,
.grap-hero .grap-eyebrow,
.grap-eyebrow{
  color:var(--dq-blue) !important;
  font-family:var(--dq-font) !important;
  font-size:18px !important;font-weight:500 !important;
  letter-spacing:0 !important;text-transform:none !important;
  margin-bottom:14px !important;
}

/* ---- buttons ---- */
.grap-btn, a.grap-btn, .entry-content a.grap-btn, .grap-btns a{
  background:var(--dq-yellow) !important;
  color:#1a1a1a !important;
  border:1px solid var(--dq-yellow) !important;
  border-radius:12px !important;
  box-shadow:0 12px 24px 0 rgba(0,0,0,.12) !important;
  font-family:var(--dq-font) !important;
  font-weight:500 !important;
  font-size:15px !important;
  padding:16px 26px !important;
  min-height:56px;
  display:inline-flex;align-items:center;justify-content:center;
  text-decoration:none !important;
  transition:background .2s,color .2s,transform .2s;
}
.grap-btn:hover, a.grap-btn:hover{
  background:var(--dq-yellow-d) !important;
  border-color:var(--dq-yellow-d) !important;
  color:#1a1a1a !important;
  transform:translateY(-1px);
}
.grap-btn--ghost, .grap-btn--outline, .grap-btn--secondary{
  background:#fff !important;
  color:var(--dq-ink) !important;
  border:1px solid var(--dq-line-2) !important;
  box-shadow:none !important;
}
.grap-btn--ghost:hover,.grap-btn--outline:hover{
  border-color:var(--dq-blue) !important;color:var(--dq-blue) !important;background:#fff !important;
}

/* ============================================================
   2. Product page blocks — .grap-dq
   Full-bleed wrapper: the grey bands have to reach both edges of
   the viewport while the copy stays inside a 1200px column.
   ============================================================ */
.grap-dq{
  width:auto;
  margin-left:calc(50% - 50vw);
  margin-right:calc(50% - 50vw);
  background:#fff;
  color:var(--dq-body);
  font-family:var(--dq-font);
  font-size:16px;
  line-height:1.62;
  overflow-x:clip;
}
.grap-dq *{box-sizing:border-box;}
.grap-dq p{margin:0 0 18px;}
.grap-dq .dq-wrap{max-width:var(--dq-w);margin:0 auto;padding:0 24px;}
.grap-dq .dq-wrap--narrow{max-width:900px;}
.grap-dq .dq-wrap--wide{max-width:var(--dq-w);}

/* ---------- 2.1 split banner ---------- */
.dq-banner{background:#fff;padding:66px 0 92px;}
.dq-split{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center;}
.dq-eyebrow{
  margin:0 0 14px !important;
  color:var(--dq-blue);
  font-size:19px;font-weight:500;letter-spacing:0;
}
.dq-h1{
  margin:0 0 22px !important;
  font-size:clamp(28px,3vw,42px);
  line-height:1.2;
  font-weight:500;color:var(--dq-ink);
  letter-spacing:-.012em;
}
.dq-lead{font-size:17px;line-height:1.68;color:var(--dq-body);margin:0 0 22px !important;}
.dq-facts{list-style:none;margin:0 0 26px;padding:0;}
.dq-facts li{
  position:relative;padding-left:19px;margin:0 0 11px;
  font-size:15.5px;line-height:1.55;color:var(--dq-body);
}
.dq-facts li::before{
  content:"";position:absolute;left:0;top:.62em;
  width:6px;height:6px;background:var(--dq-yellow);
}
.dq-facts--rule li::before{background:var(--dq-blue);}
.dq-chips{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 30px;}
.dq-chips span{
  display:inline-block;
  border:1px solid rgba(37,91,169,.55);
  border-radius:5px;
  padding:11px 18px;
  color:var(--dq-blue);
  font-size:12.5px;font-weight:500;letter-spacing:.09em;text-transform:uppercase;
  line-height:1;
}
.dq-btns{display:flex;flex-wrap:wrap;gap:14px;align-items:center;}
.dq-btns--center{justify-content:center;}

.dq-btn, a.dq-btn, .grap-dq a.dq-btn{
  display:inline-flex;align-items:center;justify-content:center;
  min-width:200px;min-height:58px;padding:16px 28px;
  background:var(--dq-yellow);color:#1a1a1a !important;
  border:1px solid var(--dq-yellow);border-radius:12px;
  font-family:var(--dq-font);font-size:15.5px;font-weight:500;
  text-decoration:none !important;box-shadow:0 12px 24px 0 rgba(0,0,0,.12);
  transition:background .2s,color .2s,border-color .2s,transform .2s;
}
.dq-btn:hover{background:var(--dq-yellow-d);border-color:var(--dq-yellow-d);transform:translateY(-1px);}
.dq-btn--ghost, .grap-dq a.dq-btn--ghost{
  background:#fff;color:var(--dq-ink) !important;
  border:1px solid var(--dq-line-2);box-shadow:none;
}
.dq-btn--ghost:hover{border-color:var(--dq-blue);color:var(--dq-blue) !important;background:#fff;}

/* --- hero gallery: yellow offset block + CSS-only slide switching --- */
.dq-media{position:relative;}
.dq-media::after{
  content:"";position:absolute;right:-30px;bottom:-30px;
  width:50%;height:62%;background:var(--dq-yellow);border-radius:8px;z-index:0;
}
/* with a thumbnail row the block has to stop at the bottom of the big shot,
   otherwise it paints behind the last thumbnail and reads as a mistake */
.dq-media--thumbs::after{bottom:88px;}
.dq-gal{position:relative;z-index:1;}
.dq-gal-in{display:none;}
.dq-shot{
  position:relative;background:#eef1f5;border-radius:8px;overflow:hidden;
  aspect-ratio:4/3;
  box-shadow:0 24px 60px -20px rgba(0,42,103,.28);
}
.dq-slide{display:none;margin:0;width:100%;height:100%;}
.dq-slide img{width:100%;height:100%;object-fit:contain;display:block;padding:5%;
  /* the source JPEGs are shot on white; multiply lets the white fall away so the
     photo sits on the plate instead of looking like a picture of a picture */
  mix-blend-mode:multiply;}
.dq-gal:has(.dq-r:nth-of-type(1):checked) .dq-shot > .dq-slide:nth-of-type(1),
.dq-gal:has(.dq-r:nth-of-type(2):checked) .dq-shot > .dq-slide:nth-of-type(2),
.dq-gal:has(.dq-r:nth-of-type(3):checked) .dq-shot > .dq-slide:nth-of-type(3),
.dq-gal:has(.dq-r:nth-of-type(4):checked) .dq-shot > .dq-slide:nth-of-type(4){display:block;}
@supports not selector(:has(*)){
  .dq-shot > .dq-slide:first-of-type{display:block;}
}
.dq-thumbs{
  display:grid;grid-template-columns:repeat(4,1fr);gap:10px;
  margin-top:12px;position:relative;z-index:2;
}
.dq-th{
  display:block;background:#fff;border:1px solid var(--dq-line);border-radius:6px;
  padding:6px;cursor:pointer;transition:border-color .2s,box-shadow .2s;
}
.dq-th img{width:100%;height:62px;object-fit:contain;display:block;}
.dq-th:hover{border-color:rgba(37,91,169,.5);}
.dq-gal:has(.dq-r:nth-of-type(1):checked) .dq-th:nth-of-type(1),
.dq-gal:has(.dq-r:nth-of-type(2):checked) .dq-th:nth-of-type(2),
.dq-gal:has(.dq-r:nth-of-type(3):checked) .dq-th:nth-of-type(3),
.dq-gal:has(.dq-r:nth-of-type(4):checked) .dq-th:nth-of-type(4){
  border-color:var(--dq-blue);box-shadow:0 0 0 1px var(--dq-blue) inset;
}
@supports not selector(:has(*)){.dq-th:first-of-type{border-color:var(--dq-blue);}}

/* ---------- 2.2 grey band, picture left / copy right ---------- */
.dq-band{background:var(--dq-band);padding:88px 0;}
.dq-band .dq-media::after{display:none;}
.dq-media--plain img{
  width:100%;height:auto;display:block;border-radius:8px;
  box-shadow:0 24px 60px -24px rgba(0,42,103,.30);
}
.dq-band .dq-h2{margin-top:0 !important;}
.dq-band-lead{font-size:16.5px;line-height:1.68;}

/* ---------- 2.3 sections ---------- */
.dq-sec{padding:92px 0;background:#fff;}
.dq-sec--grey{background:var(--dq-band);}
.dq-h2{
  margin:0 0 16px !important;
  font-size:clamp(26px,2.7vw,38px);
  line-height:1.22;font-weight:500;color:var(--dq-ink);
  letter-spacing:-.01em;
}
.dq-sub{
  font-size:16px;line-height:1.66;color:var(--dq-body);
  max-width:720px;margin:0 0 46px !important;
}
.dq-center{text-align:center;}
.dq-sub.dq-center{margin-left:auto !important;margin-right:auto !important;}
.dq-sec-head{
  display:flex;align-items:flex-end;justify-content:space-between;gap:30px;
  margin-bottom:38px;
}
.dq-sec-head .dq-sub{margin-bottom:0 !important;}

/* ---------- 2.4 three-up card rows ---------- */
.dq-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;}
.dq-card{
  background:#fff;border-radius:4px;
  padding:46px 30px 42px;text-align:center;
  box-shadow:0 12px 30px 0 rgba(0,42,103,.08);
}
.dq-sec--grey .dq-card{box-shadow:0 12px 30px 0 rgba(0,42,103,.10);}
.dq-card .dq-ic{
  display:inline-flex;align-items:center;justify-content:center;
  width:46px;height:46px;margin-bottom:20px;
}
.dq-ic svg{
  width:44px;height:44px;fill:none;stroke:var(--dq-blue);
  stroke-width:1.25;stroke-linecap:round;stroke-linejoin:round;
}
.dq-ic svg .ic-fill{fill:var(--dq-blue);stroke:var(--dq-blue);stroke-width:1.2;}
.dq-card h3{
  margin:0 0 12px !important;font-size:20px;line-height:1.3;
  font-weight:500;color:var(--dq-ink);
}
.dq-card p{margin:0 !important;font-size:14.5px;line-height:1.62;color:var(--dq-body);}

/* ---------- 2.5 specification accordion ---------- */
.dq-acc{
  border-top:1px solid var(--dq-line-2);
  margin-top:8px;
}
.dq-acc-head{
  display:flex;align-items:center;justify-content:space-between;gap:20px;
  padding:24px 54px 24px 20px;position:relative;cursor:pointer;
  border-bottom:2px solid var(--dq-line-2);list-style:none;
}
.dq-acc-head::-webkit-details-marker{display:none;}
.dq-acc-head h3{margin:0 !important;font-size:21px;font-weight:500;color:var(--dq-ink);}
.dq-acc-head .dq-more{font-size:13.5px;font-weight:500;color:var(--dq-blue);white-space:nowrap;}
.dq-acc-head::after{
  content:"";position:absolute;right:14px;top:50%;width:18px;height:18px;
  transform:translateY(-50%);
  background:
    linear-gradient(var(--dq-blue),var(--dq-blue)) center/18px 2px no-repeat,
    linear-gradient(var(--dq-blue),var(--dq-blue)) center/2px 18px no-repeat;
}
.dq-acc[open] > .dq-acc-head::after{
  background:linear-gradient(var(--dq-blue),var(--dq-blue)) center/18px 2px no-repeat;
}
.dq-acc-body{padding:40px 0 0;border-bottom:1px solid var(--dq-line);}
.dq-acc-top{
  display:grid;grid-template-columns:1.1fr 1fr;gap:40px;align-items:center;
  margin-bottom:10px;
}
.dq-acc-top img{width:100%;height:auto;display:block;border-radius:6px;background:#f6f7f9;}
.dq-acc-dl{text-align:center;}
.dq-acc-dl p{font-size:17px;font-weight:500;color:var(--dq-ink);}

.dq-tab-in{display:none;}
.dq-tablist{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;margin:44px 0 0;}
.dq-tablist label{
  padding:12px 30px 10px;cursor:pointer;
  font-size:15.5px;color:var(--dq-body);
  border-bottom:2px solid transparent;transition:color .2s,border-color .2s;
}
.dq-tablist label:hover{color:var(--dq-blue);}
.dq-panel{display:none;padding:34px 0 46px;}
.dq-tabs:has(.dq-tr:nth-of-type(1):checked) .dq-tablist label:nth-of-type(1),
.dq-tabs:has(.dq-tr:nth-of-type(2):checked) .dq-tablist label:nth-of-type(2),
.dq-tabs:has(.dq-tr:nth-of-type(3):checked) .dq-tablist label:nth-of-type(3){
  font-weight:600;color:var(--dq-ink);border-bottom-color:var(--dq-yellow);
}
.dq-tabs:has(.dq-tr:nth-of-type(1):checked) .dq-panels > .dq-panel:nth-child(1),
.dq-tabs:has(.dq-tr:nth-of-type(2):checked) .dq-panels > .dq-panel:nth-child(2),
.dq-tabs:has(.dq-tr:nth-of-type(3):checked) .dq-panels > .dq-panel:nth-child(3){display:block;}
@supports not selector(:has(*)){
  .dq-panel:first-child{display:block;}
  .dq-tablist label:first-of-type{border-bottom-color:var(--dq-yellow);font-weight:600;}
}
.dq-tcap{
  font-size:13px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;
  color:var(--dq-mute);margin:0 0 10px !important;
}
.dq-table{
  background:#fff;padding:18px;margin:0 0 26px;
  box-shadow:0 17px 49px -13px rgba(0,0,0,.22);
  border-radius:4px;overflow-x:auto;
}
.dq-table table{width:100%;border-collapse:collapse;font-size:14.5px;}
.dq-table thead th{
  text-align:left;padding:14px 18px;font-weight:600;color:var(--dq-ink);
  border-bottom:1px solid var(--dq-line-2);white-space:nowrap;
}
.dq-table tbody th{
  text-align:left;font-weight:500;color:var(--dq-body);
  padding:16px 18px;width:38%;vertical-align:top;
}
.dq-table tbody td{padding:16px 18px;color:var(--dq-ink);vertical-align:top;}
.dq-table tbody tr:nth-child(2n){background:#f6f6f6;}
.dq-note{font-size:14.5px;color:var(--dq-body);background:#fff;padding:22px;border-radius:4px;}

/* ---------- 2.6 related applications ---------- */
.dq-apps{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;}
.dq-apps--4{grid-template-columns:repeat(4,1fr);gap:22px;}
.dq-card-link{margin:18px 0 0 !important;}
.dq-app{
  background:#fff;border:1px solid rgba(151,151,151,.28);border-radius:4px;
  padding:34px 28px 30px;display:flex;flex-direction:column;
  transition:transform .25s,box-shadow .25s;
}
.dq-app:hover{transform:translateY(-6px);box-shadow:0 18px 40px -14px rgba(0,42,103,.22);}
.dq-app .dq-ic{
  display:flex;align-items:flex-start;justify-content:flex-start;
  height:auto;margin-bottom:18px;background:none;
}
.dq-app .dq-ic svg{width:40px;height:40px;}
.dq-app h3{margin:0 0 10px !important;font-size:19px;font-weight:500;color:var(--dq-ink);line-height:1.32;}
.dq-app p{margin:0 0 18px !important;font-size:14.5px;line-height:1.6;color:var(--dq-body);flex:1;}
.dq-link{
  display:inline-block;align-self:flex-start;
  font-size:14px;font-weight:500;color:var(--dq-ink) !important;
  text-decoration:none !important;border-bottom:2px solid var(--dq-yellow);
  padding-bottom:3px;
}
.dq-link:hover{color:var(--dq-blue) !important;border-bottom-color:var(--dq-blue);}

/* ---------- 2.7 related resources ---------- */
.dq-res3{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;}
.dq-res{
  display:block;background:#fff;border:1px solid rgba(151,151,151,.28);
  border-radius:4px;padding:32px 28px;text-decoration:none !important;
  transition:transform .25s,box-shadow .25s;
}
.dq-res:hover{transform:translateY(-6px);box-shadow:0 18px 40px -14px rgba(0,42,103,.22);}
.dq-res b{display:block;font-size:18px;font-weight:500;line-height:1.4;color:var(--dq-ink);margin-bottom:18px;}
.dq-res .dq-link{margin-top:auto;}

/* ---------- 2.8 contact ---------- */
.dq-contact{padding-bottom:100px;}
.dq-contact .dq-sub{max-width:640px;}

/* ============================================================
   3. Responsive
   ============================================================ */
@media (max-width:1024px){
  .dq-apps--4{grid-template-columns:repeat(2,1fr);}
  .dq-split{gap:44px;}
  .dq-cards,.dq-apps,.dq-res3{grid-template-columns:repeat(2,1fr);}
  .dq-banner{padding:48px 0 72px;}
  .dq-sec,.dq-band{padding:72px 0;}
}
@media (max-width:820px){
  .dq-split{grid-template-columns:1fr;gap:40px;}
  .dq-split--rev .dq-media{order:-1;}
  .dq-media::after{right:-14px;bottom:-14px;width:38%;height:42%;}
  .dq-banner{padding:36px 0 64px;}
  .dq-h1{font-size:28px;}
  .dq-sec,.dq-band{padding:60px 0;}
  .dq-cards,.dq-apps,.dq-res3,.dq-apps--4{grid-template-columns:1fr;gap:18px;}
  .dq-card{padding:36px 24px 32px;}
  .dq-sec-head{flex-direction:column;align-items:flex-start;gap:16px;}
  .dq-acc-top{grid-template-columns:1fr;gap:24px;}
  .dq-acc-head{padding:18px 46px 18px 14px;}
  .dq-acc-head h3{font-size:18px;}
  .dq-acc-head .dq-more{display:none;}
  .dq-table{padding:12px;}
  .dq-table thead th,.dq-table tbody th,.dq-table tbody td{padding:11px 12px;font-size:13.5px;}
  .dq-table tbody th{width:44%;}
  .dq-btn{min-width:0;width:100%;}
  .dq-btns{flex-direction:column;align-items:stretch;}
  .primary-menu-container > ul > li:last-child > a{margin-left:0;}
}

/* ============================================================
   4. Legacy page families
      cooperation / faq / contact / technology / insights were built
      before this skin and still carry .gcp-* .gfq-* .grap-postcard
      markup from grap-coop.css and grap-faq.css. Their content is
      fine — only the accents and the two black blocks fight the new
      design. Remapped here rather than rewritten in the database.
   ============================================================ */

/* the old orange accent points at the Delta-Q palette now */
:root{
  --grap-accent:#255ba9;
  --grap-accent-d:#1d4784;
  --grap-accent-l:#fdba31;
}

/* eyebrow: plain blue text, never a tinted pill */
.grap-eyebrow,
.grap-pagehead .grap-eyebrow,
.grap-hero .grap-eyebrow{
  background:none !important;
  border:0 !important;
  border-radius:0 !important;
  padding:0 !important;
  box-shadow:none !important;
  display:block !important;
}

/* section headings on the legacy pages: same scale as .dq-h2 */
.entry-content .grap-h2,
.entry-content .gcp-h2,
.entry-content .gfq-sec > h2,
.entry-content .gfq-sec .grap-h2{
  font-size:clamp(24px,2.5vw,32px) !important;
  line-height:1.2 !important;
  font-weight:500 !important;
  color:var(--dq-ink) !important;
  letter-spacing:-.01em !important;
  margin:60px 0 18px !important;
}
.entry-content .grap-h2:first-child,
.entry-content .gcp-h2:first-child{margin-top:0 !important;}

/* cooperation — cards become .dq-card clones */
.gcp-card,
.gcp-ccard{
  background:#fff !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:0 12px 30px 0 rgba(0,42,103,.08) !important;
}
.gcp-num{color:var(--dq-blue) !important;}
.gcp-card h3,
.gcp-ccard h3{font-weight:500 !important;color:var(--dq-ink) !important;}
.gcp-big a,.gcp-ccard a{color:var(--dq-blue) !important;}
.gcp-tbc{color:var(--dq-mute) !important;}

/* "what you get" strip — flat grey band instead of a bordered box */
.gcp-get{
  background:var(--dq-band) !important;
  border:0 !important;
  border-radius:0 !important;
  padding:30px 34px !important;
}
.gcp-get-list li::before{
  background:var(--dq-yellow) !important;
  color:#1a1a1a !important;
}

/* the two black blocks — grey band + ink text */
.gcp-form-top{
  background:var(--dq-band) !important;
  border-bottom:1px solid rgba(0,0,0,.06) !important;
  padding:26px 34px !important;
}
.gcp-form-top h2{
  color:var(--dq-ink) !important;
  font-size:clamp(22px,2.2vw,28px) !important;
  font-weight:500 !important;
  letter-spacing:-.01em !important;
}
.gcp-form-top p{color:var(--dq-body) !important;}
.gcp-cta{
  background:var(--dq-band) !important;
  border-radius:0 !important;
  padding:48px 30px !important;
}
.gcp-cta h2{color:var(--dq-ink) !important;font-weight:500 !important;letter-spacing:-.01em !important;}
.gcp-cta p{color:var(--dq-body) !important;}

/* every CTA on these pages: the same yellow pill as the product pages */
.gcp-btn,
.gcp-submit button,
.gcp-submit input[type="submit"],
.gfq-cta .grap-btn,
.grap-faqlink a{
  background:var(--dq-yellow) !important;
  color:#1a1a1a !important;
  border:1px solid var(--dq-yellow) !important;
  border-radius:12px !important;
  box-shadow:0 12px 24px 0 rgba(0,0,0,.12) !important;
  font-family:var(--dq-font) !important;
  font-weight:500 !important;
}
.gcp-btn:hover,
.gcp-submit button:hover,
.gcp-submit input[type="submit"]:hover{
  background:var(--dq-yellow-d) !important;
  border-color:var(--dq-yellow-d) !important;
  color:#1a1a1a !important;
}

/* form fields */
.gcp-f input[type="text"],
.gcp-f input[type="email"],
.gcp-f input[type="tel"],
.gcp-f select,
.gcp-f textarea{
  border:1px solid #d7dbe2 !important;
  border-radius:8px !important;
  font-family:var(--dq-font) !important;
}
.gcp-f input:focus,
.gcp-f select:focus,
.gcp-f textarea:focus{
  border-color:var(--dq-blue) !important;
  box-shadow:0 0 0 3px rgba(37,91,169,.12) !important;
  outline:0 !important;
}
.gcp-f label,.gcp-consent{font-family:var(--dq-font) !important;}

/* FAQ — category headings get air, pills lose the orange hover */
.gfq-sec h2,
.gfq-sec .grap-h2{margin:72px 0 4px !important;}
.gfq-sec:first-of-type h2{margin-top:26px !important;}
.gfq-pill:hover{
  background:#fff !important;
  border-color:var(--dq-blue) !important;
  color:var(--dq-blue) !important;
}
.gfq-cta{
  background:var(--dq-band) !important;
  border:0 !important;
  border-left:0 !important;
  border-radius:0 !important;
  padding:26px 30px !important;
}

/* insights — the near-black thumbnails read as holes on a light page */
.grap-pc-thumb{background:#eef2f8 !important;}
.grap-pc-thumb::after{
  background:linear-gradient(135deg,rgba(37,91,169,.16) 0%,rgba(37,91,169,0) 62%) !important;
}
.grap-pc-more{color:var(--dq-blue) !important;}

/* contact snapshot box — its own text is white, so it stays dark.
   Delta-Q keeps one dark strip too (the footer newsletter). */
.gcp-quick{
  background:var(--dq-ink) !important;
  border:0 !important;
  border-radius:0 !important;
  color:#fff !important;
}
.gcp-quick .gcp-h,
.gcp-quick h3{color:var(--dq-yellow) !important;font-weight:500 !important;}
.gcp-quick-list li a:hover{color:var(--dq-yellow) !important;}
.gcp-quick .gcp-tbc{color:var(--dq-yellow) !important;}
.gcp-quick a.gcp-btn{
  background:transparent !important;
  border:1px solid rgba(255,255,255,.34) !important;
  color:#fff !important;
  box-shadow:none !important;
}
.gcp-quick a.gcp-btn:hover{
  background:rgba(255,255,255,.10) !important;
  border-color:var(--dq-yellow) !important;
  color:#fff !important;
}
.gcp-dotpulse{background:var(--dq-yellow) !important;}
.gcp-rt{
  color:var(--dq-body) !important;
  border:0 !important;
  border-left:3px solid var(--dq-yellow) !important;
  border-radius:0 !important;
  background:var(--dq-band) !important;
  box-shadow:none !important;
}

/* ============================================================
   5. Delta-Q header — utility strip + three blue mega panels
   ------------------------------------------------------------
   Geometry lifted from delta-q.com (theme main-style.css):
     .site-utility   #EBEBEB, 15px padding, right aligned, 60px to the search
     .site-header    #fff, logo column 25px padding
     .mega-menu      #255ba9, radius 12px, opens at top:70px
     .mega-menu-loop 40/40/60 padding, 25% columns, 20px gutters
     .read-more      16px/600 white on a 2px #fdba31 underline
     .contact-btn    220x60, radius 12, 1px #212121 border, yellow hover
   The Kadence masthead is switched off rather than restyled: its DOM cannot
   produce a panel wider than the nav item, which is exactly what the panels
   need.
   ============================================================ */

#masthead,
.site-mobile-header-wrap,
.site-main-header-wrap{display:none !important;}

body.gq-lock{overflow:hidden;}

.gq-wrap{max-width:1400px;margin:0 auto;padding:0 25px;}

/* ---- utility strip ---- */
.gq-utility{background:#EBEBEB;font-family:var(--dq-font);}
.gq-util-in{display:flex;align-items:center;justify-content:flex-end;padding:15px 0;}
.gq-util-menu{display:flex;align-items:center;gap:38px;list-style:none;margin:0;padding:0;}
.gq-util-menu > li{position:relative;}
.gq-util-menu a{
  display:inline-flex;align-items:center;gap:8px;
  font:400 16px/1 var(--dq-font);color:#212121;text-decoration:none;
}
.gq-util-menu a:hover{color:var(--dq-blue);}
.gq-util-sub{
  position:absolute;top:100%;left:50%;transform:translate(-50%,6px);
  background:#fff;border-radius:10px;box-shadow:0 18px 44px rgba(0,42,103,.14);
  list-style:none;margin:0;padding:12px 0;min-width:230px;
  opacity:0;visibility:hidden;transition:opacity .18s,transform .18s,visibility .18s;z-index:20;
}
.gq-util-has:hover .gq-util-sub,
.gq-util-has:focus-within .gq-util-sub{opacity:1;visibility:visible;transform:translate(-50%,10px);}
.gq-util-sub li a{display:block;padding:10px 22px;font-size:15px;white-space:nowrap;}
.gq-util-sub li a:hover{background:#f4f6fa;color:var(--dq-blue);}

.gq-search{margin-left:60px;position:relative;}
.gq-search input{
  appearance:none;border:0;border-bottom:1px solid #979797;background:transparent;
  font:400 14px/1.4 var(--dq-font);color:#212121;padding:4px 26px 6px 0;width:200px;
  border-radius:0;box-shadow:none;
}
.gq-search input::placeholder{font-size:13px;color:#6b7280;}
.gq-search input:focus{outline:0;border-bottom-color:var(--dq-blue);}
.gq-search button{
  position:absolute;right:0;top:50%;transform:translateY(-50%);
  background:none;border:0;padding:0;cursor:pointer;line-height:0;
}
.gq-search svg{width:18px;height:18px;fill:none;stroke:#212121;stroke-width:1.6;}

/* ---- main bar ---- */
.gq-head{background:#fff;position:relative;z-index:900;font-family:var(--dq-font);}
.gq-head-in{display:flex;align-items:center;justify-content:space-between;padding:25px;gap:30px;}
.gq-logo{display:inline-flex;align-items:center;gap:11px;text-decoration:none;}
.gq-logo svg{display:block;}
.gq-logo-txt{display:flex;flex-direction:column;line-height:1;}
.gq-logo-name{font:600 20px/1 var(--dq-font);color:var(--dq-ink);letter-spacing:.01em;}
.gq-logo-sub{font:500 9px/1 var(--dq-font);color:var(--dq-blue);letter-spacing:.14em;margin-top:6px;}

.gq-nav{margin-left:auto;}
.gq-nav > ul{display:flex;align-items:center;gap:34px;list-style:none;margin:0;padding:0;}
.gq-item{position:relative;}
.gq-top{
  display:inline-flex;align-items:center;gap:9px;
  font:500 18px/1 var(--dq-font);color:var(--dq-ink);text-decoration:none;
  padding:14px 0;transition:color .2s;
}
.gq-item:hover > .gq-top,
.gq-item:focus-within > .gq-top,
.gq-item.is-open > .gq-top{color:var(--dq-blue);}

/* the plus marker: two 1.5px bars that rotate into a cross, the same move
   delta-q makes with its fa-plus inside .mega-menu-all-wrapped:hover */
.gq-pm{position:relative;width:10px;height:10px;display:inline-block;transition:transform .18s;}
.gq-pm::before,.gq-pm::after{content:"";position:absolute;background:currentColor;border-radius:1px;}
.gq-pm::before{left:0;top:4.25px;width:10px;height:1.5px;}
.gq-pm::after{left:4.25px;top:0;width:1.5px;height:10px;}
.gq-item:hover .gq-pm,
.gq-item:focus-within .gq-pm,
.gq-item.is-open .gq-pm{transform:rotate(45deg);}

/* ---- the panel ---- */
.gq-mega{
  position:absolute;top:calc(100% + 6px);left:50%;
  transform:translate(-50%,10px);
  background:var(--dq-blue);border-radius:12px;
  box-shadow:0 26px 70px rgba(0,42,103,.22);
  opacity:0;visibility:hidden;pointer-events:none;z-index:990;
  transition:opacity .22s ease,transform .22s ease,visibility .22s;
}
.gq-item:hover > .gq-mega,
.gq-item:focus-within > .gq-mega,
.gq-item.is-open > .gq-mega{
  opacity:1;visibility:visible;pointer-events:auto;transform:translate(-50%,0);
}
.gq-mega--3{width:760px;}
.gq-mega--4{width:940px;}
.gq-mega--5{width:1120px;}
.gq-mega-in{display:grid;gap:0;padding:30px 30px 44px;}
.gq-mega--3 .gq-mega-in{grid-template-columns:repeat(3,minmax(0,1fr));}
.gq-mega--4 .gq-mega-in{grid-template-columns:repeat(4,minmax(0,1fr));}
.gq-mega--5 .gq-mega-in{grid-template-columns:repeat(5,minmax(0,1fr));}

.gq-cell{display:block;padding:16px 18px 4px;text-decoration:none;border-radius:8px;transition:background .18s;}
.gq-cell:hover{background:rgba(255,255,255,.07);}
.gq-cell h5{
  font:500 19px/1.25 var(--dq-font);color:#fff;margin:0 0 9px;padding:0;letter-spacing:-.005em;
}
.gq-cell p{
  font:400 14.5px/1.45 var(--dq-font);color:rgba(255,255,255,.88);margin:0 0 14px;padding:0;
}
.gq-more{
  display:inline-block;position:relative;padding-bottom:4px;
  font:600 15px/1 var(--dq-font);color:#fff;transition:color .2s;
}
.gq-more::after{
  content:"";position:absolute;left:0;bottom:0;width:100%;height:2px;
  background:var(--dq-yellow);transition:width .2s,background .2s;
}
.gq-cell:hover .gq-more{color:var(--dq-yellow);}
.gq-cell:hover .gq-more::after{width:0;}

.gq-ic{display:block;margin-bottom:16px;height:46px;}
.gq-ic svg{width:46px;height:46px;fill:none;stroke:#fff;stroke-width:1.1;stroke-linecap:round;stroke-linejoin:round;}
.gq-ic svg .ic-fill{fill:#fff;stroke:none;}

/* product cells: a white plate keeps the studio shots from floating on blue */
.gq-plate{
  display:flex;align-items:center;justify-content:center;
  background:#fff;border-radius:8px;height:96px;margin-bottom:14px;
  padding:8px 10px;overflow:hidden;
}
.gq-plate img{width:100%;height:100%;object-fit:contain;display:block;}
.gq-cell--prod h5{font-size:17px;min-height:44px;}
.gq-cell--prod p{min-height:38px;margin-bottom:12px;}

/* ---- right button ---- */
.gq-cta{
  display:inline-flex;align-items:center;justify-content:center;
  min-width:220px;min-height:60px;padding:12px 25px;
  border:1px solid var(--dq-ink);border-radius:12px;
  font:500 16px/1.4 var(--dq-font);color:var(--dq-ink);text-decoration:none;
  transition:background .25s,color .25s,border-color .25s;
}
.gq-cta:hover{
  background:var(--dq-yellow);border-color:var(--dq-yellow);color:#1a1a1a;
  box-shadow:0 12px 24px rgba(0,0,0,.12);
}

/* ---- mobile ---- */
.gq-burger{
  display:none;align-items:center;gap:10px;background:none;border:0;
  font:500 16px/1 var(--dq-font);color:var(--dq-ink);cursor:pointer;padding:8px 0;
}
.gq-burger i{position:relative;width:22px;height:2px;background:currentColor;display:block;}
.gq-burger i::before,.gq-burger i::after{content:"";position:absolute;left:0;width:22px;height:2px;background:currentColor;}
.gq-burger i::before{top:-7px;}
.gq-burger i::after{top:7px;}

@media (max-width:1200px){
  .gq-nav > ul{gap:24px;}
  .gq-top{font-size:16px;}
  .gq-logo-sub{display:none;}
}
@media (max-width:1024px){
  .gq-utility{display:none;}
  .gq-nav,.gq-cta{display:none;}
  .gq-burger{display:inline-flex;}
  .gq-head-in{padding:16px 20px;}
  .gq-logo-name{font-size:18px;}
  .gq-plate{height:78px;}
}

/* ---- drawer ---- */
.gq-drawer{
  position:fixed;inset:0;z-index:100000;background:#fff;
  transform:translateX(100%);transition:transform .28s ease;
  display:flex;flex-direction:column;visibility:hidden;
}
.gq-drawer.is-open{transform:translateX(0);visibility:visible;}
.gq-drawer-head{
  display:flex;align-items:center;justify-content:space-between;
  padding:16px 20px;border-bottom:1px solid rgba(0,0,0,.08);
}
.gq-drawer-head .gq-logo-name{font-size:18px;}
.gq-close{background:none;border:0;font-size:34px;line-height:1;color:var(--dq-ink);cursor:pointer;padding:0 4px;}
.gq-drawer-body{flex:1;overflow-y:auto;padding:8px 20px 40px;}
.gq-d-link,.gq-d-group > summary{
  display:flex;align-items:center;justify-content:space-between;
  padding:18px 0;border-bottom:1px solid rgba(0,0,0,.07);
  font:500 18px/1.2 var(--dq-font);color:var(--dq-ink);text-decoration:none;
  cursor:pointer;list-style:none;
}
.gq-d-group > summary::-webkit-details-marker{display:none;}
.gq-d-group > summary i{position:relative;width:12px;height:12px;display:block;}
.gq-d-group > summary i::before,.gq-d-group > summary i::after{content:"";position:absolute;background:var(--dq-blue);border-radius:1px;}
.gq-d-group > summary i::before{left:0;top:5px;width:12px;height:1.6px;}
.gq-d-group > summary i::after{left:5.2px;top:0;width:1.6px;height:12px;}
.gq-d-group[open] > summary i::after{opacity:0;}
.gq-d-group > div{padding:6px 0 12px;}
.gq-d-sub{display:block;padding:12px 0 12px 14px;text-decoration:none;border-left:2px solid #e3e7ee;}
.gq-d-sub span{display:block;font:500 16px/1.3 var(--dq-font);color:var(--dq-ink);}
.gq-d-sub em{display:block;font:400 13.5px/1.4 var(--dq-font);font-style:normal;color:#6b7280;margin-top:4px;}
.gq-d-cta{
  display:flex;align-items:center;justify-content:center;margin:26px 0 18px;
  min-height:56px;border-radius:12px;background:var(--dq-yellow);color:#1a1a1a;
  font:500 16px/1 var(--dq-font);text-decoration:none;box-shadow:0 12px 24px rgba(0,0,0,.12);
}
.gq-d-util{display:flex;flex-wrap:wrap;gap:18px;}
.gq-d-util a{font:400 15px/1 var(--dq-font);color:#6b7280;text-decoration:none;}

/* ============================================================
   6. Home page — delta-q.com homepage anatomy
   ------------------------------------------------------------
   Order copied from delta-q.com:
     hero (945px, image behind, copy bottom-left)
     -> three cards pulled up -150px in a white box with a 0 32px 94px shadow
     -> split: intro left / three highlight rows right
     -> Industries: centred intro + 4-across image grid on #e6e6e6
     -> partner block: image with a yellow offset plate, copy right
     -> statistics row: icon, number, label
     -> contact band
   The hero photograph is supplied by the design team: drop
   /wp-content/uploads/grap-assets/hero-home.jpg in place and it appears,
   otherwise the navy gradient carries the section on its own.
   ============================================================ */

.home .content-area,
.home .entry-content-wrap{margin-top:0 !important;padding-top:0 !important;}
.home .entry-header{display:none !important;}
.home .site-content{margin-top:0 !important;}
/* the theme leaves 5rem under .content-area; after the contact band that
   reads as a blank page, so it goes on the home template only */
.home .content-area{margin-bottom:0 !important;}
.home .entry-content{padding-bottom:0 !important;}
.home .entry-footer,.home .comments-area,.home #comments{display:none !important;}

.dq-hero{
  position:relative;display:flex;align-items:flex-end;overflow:hidden;
  min-height:900px;background:#0c1a2c;
}
.dq-hero-bg{
  position:absolute;inset:0;
  background:#0c1a2c url('/wp-content/uploads/grap-assets/hero-home.jpg') center/cover no-repeat;
}
/* the photograph is a real factory shot (WeCom disk, 2026-10-21). It is bright,
   so the scrim has to carry the contrast: the H1 sits over machinery. */
.dq-hero-bg::after{
  content:"";position:absolute;inset:0;
  background:radial-gradient(58% 78% at 76% 40%,rgba(45,110,196,.34),rgba(12,26,44,0) 72%);
}
.dq-hero::after{
  content:"";position:absolute;inset:0;z-index:1;
  background:
    linear-gradient(180deg,rgba(6,17,31,.34) 0%,rgba(6,17,31,0) 26%),
    linear-gradient(90deg,rgba(6,17,31,.94) 0%,rgba(6,17,31,.82) 38%,rgba(6,17,31,.40) 68%,rgba(6,17,31,.20) 100%);
}
.dq-hero-in{position:relative;z-index:2;width:100%;padding:220px 0 250px;}
.dq-hero h1{
  margin:0 0 24px !important;max-width:780px;
  font-size:clamp(38px,4.4vw,62px);line-height:1.06;font-weight:500;
  letter-spacing:-.018em;color:#fff;text-shadow:0 2px 26px rgba(2,10,22,.55);
}
.dq-hero p{
  margin:0 0 36px !important;max-width:600px;
  font-size:clamp(17px,1.5vw,22px);line-height:1.55;color:rgba(255,255,255,.95);
  text-shadow:0 1px 18px rgba(2,10,22,.5);
}
.dq-hero .dq-btn{box-shadow:0 16px 34px rgba(0,0,0,.24);}

/* ---- three cards lifted over the hero ---- */
.dq-push{position:relative;z-index:5;margin-top:-150px;}
.dq-push-in{
  display:grid;grid-template-columns:repeat(3,1fr);gap:0;
  background:#fff;border-radius:3px;padding:40px 10px 28px;
  box-shadow:0 32px 94px 0 rgba(0,42,103,.10);
}
.dq-push-item{
  padding:0 34px 12px;border-right:1px solid rgba(67,65,67,.12);
  display:flex;flex-direction:column;
}
.dq-push-item:last-child{border-right:0;}
.dq-push-eyebrow{
  margin:0 0 12px !important;font-size:11.5px;font-weight:600;letter-spacing:.13em;
  text-transform:uppercase;color:var(--dq-blue);
}
.dq-push-item h3{
  margin:0 0 12px !important;font-size:19px;line-height:1.34;font-weight:500;
  color:var(--dq-ink);letter-spacing:-.005em;
}
.dq-push-item p{margin:0 0 16px !important;font-size:14.5px;line-height:1.6;color:var(--dq-body);}
/* wpautop wraps the bare <a> in a <p>, so the auto margin has to sit on that
   paragraph, not on the link itself, or the three Read More rows wander. */
.dq-push-item > p:last-child{margin:auto 0 0 !important;line-height:1;}

/* ---- split: intro left, highlight rows right ---- */
.dq-splitx{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:start;}
.dq-hl{display:flex;gap:24px;padding:0 0 32px;}
.dq-hl + .dq-hl{border-top:1px solid rgba(67,65,67,.12);padding-top:32px;}
.dq-hl-ic{flex:0 0 48px;line-height:0;}
.dq-hl-ic svg{width:48px;height:48px;fill:none;stroke:var(--dq-blue);stroke-width:1.1;stroke-linecap:round;stroke-linejoin:round;}
.dq-hl-ic svg .ic-fill{fill:var(--dq-blue);stroke:none;}
.dq-hl h3{margin:0 0 9px !important;font-size:21px;line-height:1.28;font-weight:500;color:var(--dq-ink);}
.dq-hl p{margin:0 0 12px !important;font-size:14.5px;line-height:1.62;color:var(--dq-body);}

/* ---- industries ---- */
.dq-ind-sec{background:#e6e6e6;}
.dq-ind{display:grid;grid-template-columns:repeat(4,1fr);gap:24px 24px;}
.dq-ind-item{display:block;text-decoration:none;background:#fff;border-radius:3px;overflow:hidden;}
.dq-ind-img{height:172px;display:flex;align-items:center;justify-content:center;background:#fafbfc;}
.dq-ind-img img{width:100%;height:100%;object-fit:contain;padding:0;display:block;}
.dq-ind-item span{
  display:block;padding:15px 18px 17px;font-size:15px;font-weight:500;color:var(--dq-ink);
  border-top:1px solid rgba(67,65,67,.08);
}
.dq-ind-item:hover span{color:var(--dq-blue);}

/* ---- partner block ---- */
.dq-partner{display:grid;grid-template-columns:.92fr 1fr;gap:78px;align-items:center;}
.dq-partner-media{position:relative;}
.dq-partner-media::before{
  content:"";position:absolute;left:-24px;top:-24px;width:66%;height:72%;
  background:var(--dq-yellow);border-radius:2px;
}
.dq-partner-media img{
  position:relative;z-index:1;width:100%;height:430px;object-fit:contain;
  background:#fff;padding:34px;display:block;box-shadow:0 12px 30px rgba(0,42,103,.08);
}

/* ---- statistics ---- */
.dq-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;text-align:center;margin-top:14px;}
.dq-stat .grap-ic{display:inline-block;line-height:0;}
.dq-stat .grap-ic svg{width:44px;height:44px;fill:none;stroke:var(--dq-blue);stroke-width:1.1;stroke-linecap:round;stroke-linejoin:round;}
.dq-stat .grap-ic svg .ic-fill{fill:var(--dq-blue);stroke:none;}
.dq-stat b{display:block;margin:16px 0 8px;font-size:33px;line-height:1.1;font-weight:500;color:var(--dq-blue);letter-spacing:-.01em;}
.dq-stat span{display:block;font-size:14.5px;line-height:1.5;color:var(--dq-body);}
.dq-stat-note{max-width:720px;margin:46px auto 0 !important;text-align:center;font-size:13px;line-height:1.7;color:#8a909a;}

@media (max-width:1024px){
  .dq-hero{min-height:620px;}
  .dq-hero-in{padding:140px 0 150px;}
  .dq-push{margin-top:-90px;}
  .dq-push-in{grid-template-columns:1fr;padding:28px 24px;}
  .dq-push-item{border-right:0;border-bottom:1px solid rgba(67,65,67,.12);padding:0 0 22px;margin-bottom:22px;}
  .dq-push-item:last-child{border-bottom:0;margin-bottom:0;}
  .dq-splitx{grid-template-columns:1fr;gap:48px;}
  .dq-ind{grid-template-columns:repeat(2,1fr);}
  .dq-partner{grid-template-columns:1fr;gap:44px;}
  .dq-partner-media img{height:320px;}
  .dq-stats{grid-template-columns:repeat(2,1fr);gap:34px 20px;}
}
@media (max-width:640px){
  .dq-ind{grid-template-columns:1fr;}
  .dq-hero h1{font-size:34px;}
  .dq-stats{grid-template-columns:1fr;}
}

/* ============================================================
   7. Legacy content pages — bare <table> and .grap-rel cards
   ------------------------------------------------------------
   /products/, /technology/, /cooperation/ and /about/ still carry the
   hand-written HTML from the first build: a plain <table> that the old theme
   painted with a black header row, and a row of bordered .grap-rel boxes.
   Restyled here instead of rewriting the database — the markup is fine.
   ============================================================ */

.entry-content table{
  width:100%;border-collapse:collapse;font-family:var(--dq-font);
  margin:26px 0 12px;background:#fff;
}
.entry-content table thead th{
  background:#fff !important;color:var(--dq-ink) !important;
  text-align:left;font-size:12.5px;font-weight:600;
  letter-spacing:.09em;text-transform:uppercase;
  padding:14px 18px;border:0 !important;border-bottom:2px solid var(--dq-ink) !important;
}
.entry-content table td{
  padding:14px 18px;border:0 !important;
  border-bottom:1px solid rgba(0,0,0,.07) !important;
  font-size:15px;line-height:1.5;color:var(--dq-body);vertical-align:top;
}
.entry-content table tbody tr:nth-child(even){background:#f6f6f6;}
.entry-content table tbody tr:hover{background:#eef2f8;}
.entry-content table a{color:var(--dq-blue) !important;text-decoration:none;font-weight:500;}
.entry-content table a:hover{text-decoration:underline;}

/* related / model cards: flat border replaced by the Delta-Q shadow card */
.grap-rel{gap:20px;margin-top:24px;}
.grap-rel a{
  border:0 !important;border-radius:3px !important;
  padding:24px 26px !important;
  box-shadow:0 12px 30px 0 rgba(0,42,103,.08);
  transition:box-shadow .2s,transform .2s;
}
.grap-rel a:hover{box-shadow:0 18px 40px 0 rgba(0,42,103,.14);transform:translateY(-2px);}
.grap-rel b{font-family:var(--dq-font) !important;font-size:15.5px !important;font-weight:500 !important;color:var(--dq-ink) !important;}
.grap-rel span{font-family:var(--dq-font);font-size:13.5px !important;color:var(--dq-mute) !important;}

/* long-form body copy on those pages */
.entry-content > p,
.entry-content > ul,
.entry-content > ol{font-family:var(--dq-font);font-size:16px;line-height:1.75;color:var(--dq-body);}
.entry-content > h2{font-family:var(--dq-font);font-weight:500;letter-spacing:-.01em;}


/* ==========================================================================
   8. Insights / blog  (2026-10-21)
   ========================================================================== */

/* ---------- topic chips ---------- */
.gb-chips{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 34px;}
.gb-chip{
  display:inline-flex;align-items:center;gap:7px;padding:9px 16px;border:1px solid rgba(67,65,67,.18);
  border-radius:999px;font:500 14px/1 var(--dq-font);color:var(--dq-ink) !important;text-decoration:none;
  background:#fff;transition:background .16s,border-color .16s,color .16s;
}
.gb-chip span{font-size:12px;opacity:.55}
.gb-chip:hover{border-color:var(--dq-ink);}
.gb-chip.is-on{background:var(--dq-blue);border-color:var(--dq-blue);color:#fff !important;}
.gb-chip.is-on span{opacity:.75}

/* ---------- card grid ---------- */
.gb-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;}
.gb-card{
  display:flex;flex-direction:column;background:#fff;border:1px solid rgba(67,65,67,.12);
  border-radius:6px;overflow:hidden;transition:box-shadow .18s,transform .18s,border-color .18s;
}
.gb-card:hover{box-shadow:0 18px 44px 0 rgba(0,42,103,.10);transform:translateY(-2px);border-color:transparent;}
.gb-thumb{
  position:relative;display:block;aspect-ratio:16/10;overflow:hidden;text-decoration:none;
  background:#eef1f5;
}
.gb-thumb img{width:100%;height:100%;object-fit:cover;display:block;}
.gb-thumb-mark{
  position:absolute;left:22px;top:14px;font:600 64px/1 var(--dq-font);color:#fff;opacity:.9;
  letter-spacing:-.02em;
}
.gb-thumb-lines{
  position:absolute;inset:auto -10% -12% -10%;height:62%;
  background:
    repeating-linear-gradient(115deg,rgba(255,255,255,.16) 0 2px,rgba(255,255,255,0) 2px 22px);
  transform:skewY(-4deg);
}
.gb-tone--blue  .gb-thumb{background:linear-gradient(135deg,#255ba9,#173e74);}
.gb-tone--steel .gb-thumb{background:linear-gradient(135deg,#4a5d73,#2b3a4b);}
.gb-tone--sand  .gb-thumb{background:linear-gradient(135deg,#d9a557,#b07f2f);}
.gb-tone--green .gb-thumb{background:linear-gradient(135deg,#2f6b57,#1d4638);}

.gb-body{display:flex;flex-direction:column;flex:1;padding:22px 24px 24px;}
.gb-meta{
  margin:0 0 14px !important;display:flex;flex-direction:column;gap:5px;
}
.gb-meta .gb-k{
  font:600 10.5px/1.1 var(--dq-font);letter-spacing:.11em;text-transform:uppercase;
  color:var(--dq-blue);
}
.gb-meta .gb-m{font:400 12.5px/1.35 var(--dq-font);letter-spacing:0;color:#8a8f98;}
.gb-title{margin:0 0 12px !important;font-size:20px !important;line-height:1.28;font-weight:600;letter-spacing:-.01em;}
.gb-title a{color:var(--dq-ink) !important;text-decoration:none;}
.gb-title a:hover{color:var(--dq-blue) !important;}
.gb-ex{margin:0 0 18px !important;font-size:14.5px;line-height:1.62;color:#5c636d;}
.gb-more{
  position:relative;margin-top:auto;align-self:flex-start;display:inline-block;padding-bottom:5px;
  font:600 15px/1 var(--dq-font);color:var(--dq-ink) !important;text-decoration:none;
}
.gb-more::after{content:"";position:absolute;left:0;bottom:0;width:100%;height:2px;background:var(--dq-yellow);transition:width .18s;}
.gb-more:hover::after{width:0;}
.gb-empty{padding:40px 0;color:#6b7280;}

/* ---------- pager ---------- */
.gb-pager{display:flex;gap:8px;justify-content:center;margin:52px 0 0;}
.gb-pg{
  display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;
  border:1px solid rgba(67,65,67,.18);border-radius:6px;font:500 15px/1 var(--dq-font);
  color:var(--dq-ink) !important;text-decoration:none;background:#fff;
}
.gb-pg:hover{border-color:var(--dq-ink);}
.gb-pg.is-on{background:var(--dq-blue);border-color:var(--dq-blue);color:#fff !important;}

/* ---------- single article ---------- */
.single-post .site-content{background:#fff;}
.single-post .content-area{max-width:none;margin-top:0 !important;margin-bottom:0 !important;}
.single-post .entry-header{max-width:860px;margin:0 auto;padding:56px 24px 0;text-align:left;}
.single-post .entry-title{font-size:clamp(30px,3.4vw,46px) !important;line-height:1.12 !important;letter-spacing:-.02em;margin:0 0 14px !important;}
.single-post .entry-meta{font:500 12px/1.6 var(--dq-font);letter-spacing:.08em;text-transform:uppercase;color:#8a8f98;}
.single-post .entry-content{max-width:860px;margin:0 auto;padding:34px 24px 0;}
.single-post #secondary,.single-post .widget-area,.single-post .comments-area,.single-post #comments,.single-post .entry-footer{display:none !important;}
.single-post .post-navigation{max-width:860px;margin:0 auto;}

.grap-article{font-size:17px;line-height:1.75;color:#2c3238;}
/* Byline now sits above the TOC, outside .grap-article, so it needs its own rule. */
.grap-postmeta{
  margin:0 0 24px !important;font:500 11.5px/1.6 var(--dq-font);letter-spacing:.09em;
  text-transform:uppercase;color:#8a8f98;
}
.grap-article > p:first-child,.grap-article .grap-lede{font-size:19px;line-height:1.66;color:#3a4149;}
.grap-article h2{font-size:27px !important;line-height:1.25;margin:46px 0 16px !important;letter-spacing:-.015em;}
.grap-article h3{font-size:20px !important;margin:30px 0 10px !important;}
.grap-article p{margin:0 0 20px !important;}
.grap-article ul,.grap-article ol{margin:0 0 22px 22px;}
.grap-article li{margin:0 0 8px;}
.grap-article a{color:var(--dq-blue);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;}
.grap-article a:hover{color:var(--dq-ink);}
.grap-article blockquote{
  margin:34px 0;padding:4px 0 4px 26px;border-left:3px solid var(--dq-yellow);
  font-size:19px;line-height:1.6;color:#3a4149;
}

/* takeaways + notes */
.grap-tldr{background:#f5f7fa;border-left:3px solid var(--dq-blue);border-radius:0 6px 6px 0;padding:24px 28px;margin:0 0 34px;}
.grap-tldr-t{margin:0 0 10px !important;font:600 12px/1 var(--dq-font);letter-spacing:.1em;text-transform:uppercase;color:var(--dq-blue);}
.grap-tldr ul{margin:0 0 0 18px !important;}
.grap-tldr li{font-size:15.5px;line-height:1.6;margin:0 0 7px;}
.gb-note{background:#fffaf0;border:1px solid #f3e2bb;border-radius:6px;padding:20px 24px;margin:0 0 30px;}
.gb-note p{margin:0 !important;font-size:15.5px;line-height:1.65;}

/* tables inside articles */
.gb-tbl{width:100%;border-collapse:collapse;margin:0 0 30px;font-size:15px;}
.gb-tbl thead th{
  text-align:left;padding:12px 14px;font:600 12px/1.3 var(--dq-font);letter-spacing:.06em;
  text-transform:uppercase;color:#3a4149;border-bottom:2px solid var(--dq-ink);background:#fff;
}
.gb-tbl tbody td{padding:12px 14px;border-bottom:1px solid rgba(67,65,67,.12);vertical-align:top;line-height:1.55;}
.gb-tbl tbody tr:nth-child(even){background:#f8f9fb;}

/* FAQ */
.gb-faq{border-bottom:1px solid rgba(67,65,67,.14);padding:4px 0;}
.gb-faq summary{
  cursor:pointer;list-style:none;padding:16px 34px 16px 0;position:relative;
  font:600 17px/1.4 var(--dq-font);color:var(--dq-ink);
}
.gb-faq summary::-webkit-details-marker{display:none;}
.gb-faq summary::after{
  content:"";position:absolute;right:6px;top:22px;width:12px;height:12px;
  border-right:1.6px solid var(--dq-ink);border-bottom:1.6px solid var(--dq-ink);
  transform:rotate(45deg);transition:transform .2s;
}
.gb-faq[open] summary::after{transform:rotate(-135deg);}
.gb-faq p{margin:0 0 16px !important;font-size:16px;line-height:1.7;color:#4a515a;}

/* TOC */
.gb-toc{border:1px solid rgba(67,65,67,.14);border-radius:6px;padding:22px 26px;margin:0 0 36px;background:#fbfcfd;}
.gb-toc-t{margin:0 0 12px !important;font:600 11.5px/1 var(--dq-font);letter-spacing:.1em;text-transform:uppercase;color:#8a8f98;}
.gb-toc ol{margin:0 !important;padding:0 0 0 18px;}
.gb-toc li{margin:0 0 7px;font-size:15px;}
.gb-toc a{color:#3a4149 !important;text-decoration:none;}
.gb-toc a:hover{color:var(--dq-blue) !important;}

/* CTA band inside article */
.gb-cta{
  display:flex;align-items:center;justify-content:space-between;gap:34px;flex-wrap:wrap;
  background:var(--dq-blue);border-radius:8px;padding:34px 40px;margin:44px 0 40px;
}
.gb-cta-k{margin:0 0 8px !important;font:600 11.5px/1 var(--dq-font);letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.72);}
.gb-cta h3{margin:0 0 8px !important;font-size:24px !important;color:#fff;font-weight:500;letter-spacing:-.01em;}
.gb-cta p{margin:0 !important;font-size:15px;line-height:1.6;color:rgba(255,255,255,.82);max-width:520px;}
.gb-cta-btn{
  flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;
  min-width:200px;min-height:56px;padding:0 28px;border-radius:12px;background:var(--dq-yellow);
  font:600 15px/1 var(--dq-font);color:var(--dq-ink) !important;text-decoration:none;
  transition:transform .16s,box-shadow .16s;
}
.gb-cta-btn:hover{transform:translateY(-1px);box-shadow:0 12px 24px rgba(0,0,0,.18);}

/* about box — grap-add.css paints it dark ink, which turns the grey body text
   invisible on the article page. Flatten it to a quiet ruled block instead. */
.grap-aboutbox{
  background:none !important;border-radius:0 !important;
  border-top:1px solid rgba(67,65,67,.14);margin:44px 0 0 !important;padding:26px 0 0 !important;
}
.grap-aboutbox b{display:block;font:600 12px/1 var(--dq-font);letter-spacing:.1em;text-transform:uppercase;color:#8a8f98;margin-bottom:8px;}
.grap-aboutbox p{margin:0 !important;font-size:14.5px;line-height:1.65;color:#5c636d;}

/* related */
.gb-rel{margin:56px 0 0;padding:44px 0 60px;border-top:1px solid rgba(67,65,67,.12);}
.gb-rel-t{font-size:22px !important;margin:0 0 22px !important;}
.gb-rel-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
.gb-rel-card{
  display:flex;flex-direction:column;padding:22px 24px;border:1px solid rgba(67,65,67,.14);
  border-radius:6px;text-decoration:none;transition:box-shadow .16s,border-color .16s;
}
.gb-rel-card:hover{box-shadow:0 14px 34px rgba(0,42,103,.08);border-color:transparent;}
.gb-rel-k{font:600 11px/1 var(--dq-font);letter-spacing:.1em;text-transform:uppercase;color:#8a8f98;}
.gb-rel-card h3{
  margin:10px 0 12px !important;font-size:17px !important;line-height:1.35;color:var(--dq-ink);
  display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;
}
.gb-rel-m{margin-top:auto;font-size:12.5px;color:#8a8f98;}

/* reading progress */
.gb-progress{position:fixed;left:0;top:0;width:100%;height:3px;z-index:9999;background:transparent;pointer-events:none;}
.gb-progress i{display:block;height:100%;width:0;background:var(--dq-yellow);transition:width .1s linear;}

/* ---------- responsive ---------- */
@media (max-width:1024px){
  .gb-grid{grid-template-columns:repeat(2,1fr);gap:20px;}
  .gb-rel-grid{grid-template-columns:1fr;}
  .single-post .entry-header{padding-top:44px;}
}
@media (max-width:640px){
  .gb-grid{grid-template-columns:1fr;}
  .gb-cta{padding:26px 24px;}
  .gb-cta-btn{width:100%;}
  .grap-article{font-size:16.5px;}
  .gb-tbl{font-size:13.5px;}
  .gb-tbl thead th,.gb-tbl tbody td{padding:10px 10px;}
}
