:root {
      --ink: #07131d;
      --ink-soft: #102433;
      --paper: #f5f3ed;
      --paper-deep: #ebe8df;
      --white: #ffffff;
      --muted: #65737d;
      --line: rgba(7, 19, 29, .15);
      --aqua: #00e6a8;
      --aqua-dark: #00b989;
      --blue: #9ed8ed;
      --serif: Georgia, "Times New Roman", serif;
      --sans: Inter, "Segoe UI", Arial, sans-serif;
      --container: min(1180px, calc(100% - 48px));
    }

    * { box-sizing: border-box; }
    html { scroll-behavior: smooth; }
    body {
      margin: 0;
      background: var(--paper);
      color: var(--ink);
      font-family: var(--sans);
      font-size: 16px;
      line-height: 1.6;
      -webkit-font-smoothing: antialiased;
    }
    body.menu-open { overflow: hidden; }
    a { color: inherit; text-decoration: none; }
    img { display: block; max-width: 100%; }
    button, input { font: inherit; }
    a:focus-visible, button:focus-visible, input:focus-visible {
      outline: 3px solid var(--aqua);
      outline-offset: 3px;
    }

    .skip-link {
      position: fixed;
      top: 10px;
      left: 10px;
      z-index: 1000;
      padding: 10px 16px;
      background: var(--white);
      color: var(--ink);
      transform: translateY(-160%);
    }
    .skip-link:focus { transform: translateY(0); }
    .container { width: var(--container); margin-inline: auto; }
    .eyebrow {
      display: flex;
      align-items: center;
      gap: 12px;
      margin: 0 0 22px;
      color: var(--aqua-dark);
      font-size: .72rem;
      font-weight: 800;
      letter-spacing: .18em;
      line-height: 1.2;
      text-transform: uppercase;
    }
    .eyebrow::before { content: ""; width: 30px; height: 2px; background: currentColor; }
    .section-title {
      max-width: 760px;
      margin: 0;
      font-family: var(--serif);
      font-size: clamp(2.25rem, 4.7vw, 4.6rem);
      font-weight: 400;
      letter-spacing: -.045em;
      line-height: 1.03;
    }
    .section-copy {
      max-width: 640px;
      margin: 26px 0 0;
      color: #4d5b65;
      font-size: 1.08rem;
    }
    .arrow-link {
      display: inline-flex;
      align-items: center;
      gap: 13px;
      border-bottom: 1px solid currentColor;
      padding-bottom: 5px;
      font-size: .78rem;
      font-weight: 800;
      letter-spacing: .12em;
      text-transform: uppercase;
      transition: gap .2s ease, color .2s ease;
    }
    .arrow-link:hover { gap: 20px; color: var(--aqua-dark); }

    .site-header {
      position: absolute;
      inset: 0 0 auto;
      z-index: 50;
      color: var(--white);
      border-bottom: 1px solid rgba(255, 255, 255, .16);
    }
    .nav-wrap {
      display: flex;
      align-items: center;
      justify-content: space-between;
      min-height: 86px;
    }
    .brand { display: inline-flex; align-items: center; gap: 12px; }
    .brand-logo-frame {
      position: relative;
      width: 38px;
      height: 34px;
      flex: 0 0 38px;
      overflow: hidden;
    }
    .brand-logo {
      position: absolute;
      top: -19px;
      left: -22px;
      width: 82px;
      height: auto;
      max-width: none;
    }
    .brand-name { font-size: 1.48rem; font-weight: 800; letter-spacing: -.04em; }
    .desktop-nav { display: flex; align-items: center; gap: clamp(18px, 2.4vw, 36px); }
    .desktop-nav a {
      font-size: .74rem;
      font-weight: 700;
      letter-spacing: .1em;
      text-transform: uppercase;
    }
    .desktop-nav a:not(.nav-cta) { color: rgba(255, 255, 255, .78); }
    .desktop-nav a:hover { color: var(--aqua); }
    .nav-cta { border: 1px solid rgba(255, 255, 255, .5); padding: 11px 16px; }
    .menu-toggle {
      display: none;
      width: 46px;
      height: 46px;
      padding: 0;
      border: 0;
      background: transparent;
      color: var(--white);
      cursor: pointer;
    }
    .menu-toggle span { display: block; width: 24px; height: 2px; margin: 6px auto; background: currentColor; }

    .hero {
      position: relative;
      min-height: 790px;
      overflow: hidden;
      background: var(--ink);
      color: var(--white);
    }
    .hero::before {
      content: "";
      position: absolute;
      inset: 0;
      background:
        linear-gradient(90deg, rgba(7, 19, 29, .99) 0%, rgba(7, 19, 29, .92) 42%, rgba(7, 19, 29, .48) 100%),
        url("../upload/3gence-consulting_data-dots.jpg") center right / cover no-repeat;
    }
    .hero::after {
      content: "";
      position: absolute;
      right: -10vw;
      bottom: -38vw;
      width: 65vw;
      height: 65vw;
      border: 1px solid rgba(0, 230, 168, .25);
      border-radius: 50%;
      box-shadow: 0 0 0 7vw rgba(0, 230, 168, .025), 0 0 0 15vw rgba(0, 230, 168, .018);
    }
    .hero-grid {
      position: relative;
      z-index: 2;
      display: grid;
      grid-template-columns: minmax(0, 1.45fr) minmax(260px, .55fr);
      gap: 80px;
      align-items: end;
      min-height: 790px;
      padding: 190px 0 82px;
    }
    .hero .eyebrow { color: var(--aqua); }
    .hero h1 {
      max-width: 860px;
      margin: 0;
      font-family: var(--serif);
      font-size: clamp(3.7rem, 7.4vw, 7.5rem);
      font-weight: 400;
      letter-spacing: -.06em;
      line-height: .91;
    }
    .hero h1 em { color: var(--aqua); font-weight: inherit; }
    .hero-lede {
      max-width: 690px;
      margin: 34px 0 38px;
      color: rgba(255,255,255,.75);
      font-size: clamp(1rem, 1.5vw, 1.22rem);
    }
    .hero-actions { display: flex; flex-wrap: wrap; gap: 14px; }
    .button {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 14px;
      min-height: 54px;
      padding: 0 23px;
      border: 1px solid transparent;
      font-size: .75rem;
      font-weight: 800;
      letter-spacing: .11em;
      text-transform: uppercase;
      transition: background .2s ease, border-color .2s ease, color .2s ease;
    }
    .button-primary { background: var(--aqua); color: var(--ink); }
    .button-primary:hover { background: #35f1bd; }
    .button-secondary { border-color: rgba(255,255,255,.4); color: var(--white); }
    .button-secondary:hover { border-color: var(--white); background: rgba(255,255,255,.08); }
    .hero-aside { border-top: 1px solid rgba(255,255,255,.35); padding-top: 22px; }
    .hero-aside-label { color: var(--aqua); font-size: .68rem; font-weight: 800; letter-spacing: .15em; text-transform: uppercase; }
    .hero-aside p { margin: 15px 0 0; color: rgba(255,255,255,.67); font-family: var(--serif); font-size: 1.25rem; line-height: 1.45; }

    .signal-bar { border-bottom: 1px solid var(--line); background: var(--white); }
    .signal-grid { display: grid; grid-template-columns: 1.25fr 1fr 1fr 1fr; }
    .signal-intro, .signal-item { min-height: 118px; padding: 28px 30px; border-right: 1px solid var(--line); }
    .signal-intro { display: flex; align-items: center; padding-left: 0; color: var(--muted); font-size: .74rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
    .signal-item { display: flex; gap: 17px; align-items: center; }
    .signal-item:last-child { border-right: 0; }
    .signal-number { color: var(--aqua-dark); font-family: var(--serif); font-size: 2.05rem; }
    .signal-item strong { display: block; font-size: .83rem; letter-spacing: .08em; text-transform: uppercase; }
    .signal-item span:last-child { display: block; color: var(--muted); font-size: .76rem; }

    .framework { padding: 130px 0; }
    .framework-head { display: grid; grid-template-columns: 1fr .74fr; gap: 100px; align-items: end; margin-bottom: 70px; }
    .framework-head .section-copy { margin: 0 0 8px; }
    .framework-grid { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
    .framework-card { position: relative; min-height: 320px; padding: 38px 34px 42px 0; border-right: 1px solid var(--line); }
    .framework-card + .framework-card { padding-left: 34px; }
    .framework-card:last-child { border-right: 0; padding-right: 0; }
    .framework-index { color: var(--aqua-dark); font-family: var(--serif); font-size: 1rem; }
    .framework-card h3 { margin: 78px 0 17px; font-family: var(--serif); font-size: 2rem; font-weight: 400; }
    .framework-card p { margin: 0; color: var(--muted); }
    .framework-card::after { content: ""; position: absolute; top: 47px; right: 34px; width: 8px; height: 8px; border-radius: 50%; background: var(--aqua); }

    .capabilities { padding: 130px 0; background: var(--ink); color: var(--white); }
    .capabilities .eyebrow { color: var(--aqua); }
    .capabilities-head { display: flex; justify-content: space-between; gap: 60px; align-items: end; margin-bottom: 70px; }
    .capabilities-head .section-title { max-width: 850px; }
    .capability-grid { display: grid; grid-template-columns: repeat(2, 1fr); border-top: 1px solid rgba(255,255,255,.16); }
    .capability {
      display: grid;
      grid-template-columns: 70px 1fr;
      gap: 16px;
      min-height: 270px;
      padding: 42px 42px 42px 0;
      border-bottom: 1px solid rgba(255,255,255,.16);
    }
    .capability:nth-child(odd) { border-right: 1px solid rgba(255,255,255,.16); }
    .capability:nth-child(even) { padding-left: 42px; }
    .capability-num { color: var(--aqua); font-family: var(--serif); font-size: 1.05rem; }
    .capability h3 { margin: 0 0 20px; font-family: var(--serif); font-size: clamp(1.65rem, 2.7vw, 2.55rem); font-weight: 400; line-height: 1.05; }
    .capability p { max-width: 440px; margin: 0; color: rgba(255,255,255,.62); }
    .capability-tags { margin-top: 24px; color: rgba(255,255,255,.86); font-size: .7rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }

    .research { padding: 130px 0; background: var(--white); }
    .research-head { display: flex; justify-content: space-between; align-items: end; gap: 60px; margin-bottom: 60px; }
    .research-grid { display: grid; grid-template-columns: 1.25fr .75fr; gap: 28px; }
    .feature-story {
      position: relative;
      display: flex;
      align-items: end;
      min-height: 580px;
      overflow: hidden;
      color: var(--white);
      background: var(--ink) url("images/social/resource-innovation_meta-image.jpg") center / cover no-repeat;
    }
    .feature-story::before { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(7,19,29,.05) 25%, rgba(7,19,29,.96) 100%); }
    .story-content { position: relative; z-index: 2; padding: clamp(28px, 5vw, 58px); }
    .story-meta { color: var(--aqua); font-size: .69rem; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }
    .story-content h3 { max-width: 700px; margin: 17px 0 21px; font-family: var(--serif); font-size: clamp(2rem, 4vw, 3.8rem); font-weight: 400; letter-spacing: -.035em; line-height: 1.02; }
    .story-content p { max-width: 620px; margin: 0 0 28px; color: rgba(255,255,255,.72); }
    .story-list { display: grid; grid-template-rows: repeat(3, 1fr); border-top: 1px solid var(--line); }
    .story-list article { display: flex; flex-direction: column; justify-content: space-between; padding: 26px 0; border-bottom: 1px solid var(--line); }
    .story-list .story-meta { color: var(--aqua-dark); }
    .story-list h3 { margin: 12px 0 18px; font-family: var(--serif); font-size: clamp(1.35rem, 2vw, 1.75rem); font-weight: 400; line-height: 1.18; }
    .story-list a:hover h3 { color: var(--aqua-dark); }
    .story-list .arrow { color: var(--muted); font-size: 1.35rem; }

    .principle { padding: 120px 0; background: var(--paper-deep); }
    .principle-grid { display: grid; grid-template-columns: .58fr 1.42fr; gap: 90px; }
    .principle-label { padding-top: 12px; color: var(--aqua-dark); font-size: .73rem; font-weight: 800; letter-spacing: .16em; text-transform: uppercase; }
    .principle blockquote { margin: 0; font-family: var(--serif); font-size: clamp(2.05rem, 4.7vw, 4.65rem); letter-spacing: -.045em; line-height: 1.05; }
    .principle blockquote span { color: var(--aqua-dark); }

    .engage { padding: 125px 0; background: var(--aqua); }
    .engage-grid { display: grid; grid-template-columns: 1.2fr .8fr; gap: 100px; align-items: end; }
    .engage h2 { max-width: 820px; margin: 0; font-family: var(--serif); font-size: clamp(2.8rem, 6vw, 6.25rem); font-weight: 400; letter-spacing: -.055em; line-height: .96; }
    .engage p { margin: 0 0 30px; color: rgba(7,19,29,.72); font-size: 1.05rem; }
    .engage .button { background: var(--ink); color: var(--white); }
    .engage .button:hover { background: var(--ink-soft); }

    .site-footer { padding: 80px 0 30px; background: var(--ink); color: var(--white); }
    .footer-grid { display: grid; grid-template-columns: 1.3fr .7fr .7fr; gap: 70px; padding-bottom: 70px; }
    .footer-brand { margin-bottom: 24px; }
    .footer-intro { max-width: 440px; color: rgba(255,255,255,.57); }
    .footer-col h3 { margin: 0 0 19px; color: var(--aqua); font-size: .68rem; letter-spacing: .15em; text-transform: uppercase; }
    .footer-col a { display: block; width: fit-content; margin: 9px 0; color: rgba(255,255,255,.72); font-size: .91rem; }
    .footer-col a:hover { color: var(--aqua); }
    .footer-bottom { display: flex; justify-content: space-between; gap: 25px; padding-top: 28px; border-top: 1px solid rgba(255,255,255,.14); color: rgba(255,255,255,.4); font-size: .74rem; }

    @media (max-width: 900px) {
      :root { --container: min(100% - 36px, 720px); }
      .desktop-nav {
        position: fixed;
        inset: 0;
        display: none;
        flex-direction: column;
        justify-content: center;
        gap: 24px;
        background: var(--ink);
      }
      .desktop-nav.open { display: flex; }
      .desktop-nav a { font-size: 1rem; }
      .menu-toggle { position: relative; z-index: 2; display: block; }
      .hero, .hero-grid { min-height: 760px; }
      .hero-grid { grid-template-columns: 1fr; gap: 55px; align-content: end; padding-top: 160px; }
      .hero-aside { max-width: 420px; }
      .signal-grid { grid-template-columns: 1fr 1fr 1fr; }
      .signal-intro { grid-column: 1 / -1; min-height: auto; padding: 22px 0; border-right: 0; border-bottom: 1px solid var(--line); }
      .framework, .capabilities, .research { padding: 95px 0; }
      .framework-head, .principle-grid { grid-template-columns: 1fr; gap: 34px; }
      .framework-grid { grid-template-columns: 1fr; }
      .framework-card, .framework-card + .framework-card { min-height: 250px; padding: 32px 0; border-right: 0; border-bottom: 1px solid var(--line); }
      .framework-card:last-child { border-bottom: 0; }
      .framework-card h3 { margin-top: 48px; }
      .capabilities-head, .research-head { align-items: flex-start; flex-direction: column; }
      .capability-grid { grid-template-columns: 1fr; }
      .capability, .capability:nth-child(even) { padding: 35px 0; border-right: 0; }
      .research-grid { grid-template-columns: 1fr; }
      .feature-story { min-height: 520px; }
      .principle { padding: 90px 0; }
      .engage-grid { grid-template-columns: 1fr; gap: 45px; }
      .footer-grid { grid-template-columns: 1.5fr 1fr 1fr; gap: 35px; }
    }

    @media (max-width: 600px) {
      :root { --container: calc(100% - 28px); }
      .nav-wrap { min-height: 74px; }
      .hero-grid > * { min-width: 0; }
      .hero h1 { font-size: clamp(3rem, 14vw, 3.6rem); }
      .hero-grid { padding: 135px 0 55px; }
      .hero-actions { flex-direction: column; align-items: stretch; }
      .signal-grid { grid-template-columns: 1fr; }
      .signal-item { min-height: 90px; padding: 20px 0; border-right: 0; border-bottom: 1px solid var(--line); }
      .framework, .capabilities, .research { padding: 75px 0; }
      .capability { grid-template-columns: 45px 1fr; }
      .feature-story { min-height: 500px; }
      .engage { padding: 85px 0; }
      .footer-grid { grid-template-columns: 1fr 1fr; }
      .footer-lead { grid-column: 1 / -1; }
      .footer-bottom { flex-direction: column; }
    }

    @media (prefers-reduced-motion: reduce) {
      html { scroll-behavior: auto; }
      *, *::before, *::after { transition-duration: .01ms !important; }
    }
/* Shared interior-page treatment */
.theme-interior {
  background: var(--paper) !important;
  color: var(--ink) !important;
  font-family: var(--sans) !important;
}
.theme-interior .inner-header {
  position: relative;
  background: var(--ink);
}
.theme-interior .site-header .brand,
.theme-interior .site-header .brand-name,
.theme-interior .site-footer .brand,
.theme-interior .site-footer .brand-name { color: var(--white) !important; }
.theme-interior .desktop-nav a[aria-current="page"] { color: var(--aqua); }
.theme-interior .corzo-mobile-header-wrap,
.theme-interior .corzo-top-bar,
.theme-interior .corzo-header-wrap,
.theme-interior > .corzo-body-outer-wrapper .corzo-navigation-bar-wrap,
.theme-interior > .corzo-body-outer-wrapper .corzo-header-background-transparent,
.theme-interior > .corzo-body-outer-wrapper footer,
.theme-interior .corzo-sidebar-right,
.theme-interior .corzo-sidebar-left { display: none !important; }
.theme-interior .corzo-body-outer-wrapper,
.theme-interior .corzo-body-wrapper,
.theme-interior .corzo-page-wrapper,
.theme-interior .gdlr-core-page-builder-body {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  background: var(--paper) !important;
}
.theme-interior .corzo-page-title-wrap {
  position: relative;
  min-height: 365px;
  display: flex;
  align-items: end;
  margin: 0 !important;
  padding: 95px 0 72px !important;
  overflow: hidden;
  background: var(--ink) url('../upload/3gence-consulting_data-dots.jpg') center / cover no-repeat !important;
}
.theme-interior .corzo-page-title-wrap::before {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(7,19,29,.98), rgba(7,19,29,.72));
}
.theme-interior .corzo-page-title-overlay,
.theme-interior .corzo-header-transparent-substitute { display: none !important; }
.theme-interior .corzo-page-title-container {
  position: relative;
  z-index: 1;
  width: var(--container) !important;
  max-width: none !important;
  margin: 0 auto !important;
  padding: 0 !important;
}
.theme-interior .corzo-page-title-content { padding: 0 !important; }
.theme-interior .corzo-page-title,
.theme-interior h1.corzo-page-title,
.theme-interior h3.corzo-page-title {
  max-width: 980px;
  margin: 0 !important;
  color: var(--white) !important;
  font-family: var(--serif) !important;
  font-size: clamp(2.75rem, 6vw, 5.8rem) !important;
  font-weight: 400 !important;
  letter-spacing: -.05em !important;
  line-height: 1 !important;
  text-transform: none !important;
}
.theme-interior .corzo-page-caption {
  max-width: 720px;
  margin: 24px 0 0 !important;
  color: rgba(255,255,255,.7) !important;
  font-size: 1.08rem !important;
}
.theme-interior .corzo-page-caption-divider { width: 34px !important; border-color: var(--aqua) !important; }
.theme-interior .corzo-content-container,
.theme-interior .gdlr-core-pbf-wrapper-container,
.theme-interior .corzo-container {
  width: var(--container) !important;
  max-width: none !important;
  margin-inline: auto !important;
}
.theme-interior .corzo-sidebar-wrap,
.theme-interior .corzo-sidebar-center,
.theme-interior .corzo-content-area,
.theme-interior .gdlr-core-column-40,
.theme-interior .gdlr-core-column-60 {
  float: none !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
}
.theme-interior .corzo-content-area,
.theme-interior .gdlr-core-page-builder-body { line-height: 1.7 !important; }
.theme-interior .corzo-content-area { padding: 82px 0 110px !important; }
.theme-interior .gdlr-core-blog-item,
.theme-interior .gdlr-core-blog-item-holder,
.theme-interior .gdlr-core-blog-full,
.theme-interior .gdlr-core-blog-full-head,
.theme-interior .gdlr-core-blog-content { margin: 0 !important; padding: 0 !important; }
.theme-interior .gdlr-core-blog-full-head { max-width: 780px; margin: 0 auto 32px !important; }
.theme-interior .gdlr-core-blog-info-wrapper { border: 0 !important; }
.theme-interior .gdlr-core-blog-info {
  color: var(--aqua-dark) !important;
  font-size: .72rem !important;
  font-weight: 800 !important;
  letter-spacing: .12em !important;
  text-transform: uppercase;
}
.theme-interior .gdlr-core-blog-info a { color: inherit !important; }
.theme-interior article {
  max-width: 780px;
  margin: 0 auto;
  color: #263640;
  font-family: var(--serif);
  font-size: clamp(1.08rem, 1.8vw, 1.25rem);
  line-height: 1.82;
}
.theme-interior article p { margin: 0 0 1.45em; }
.theme-interior article h2,
.theme-interior article h3,
.theme-interior article h4 {
  margin: 1.8em 0 .65em !important;
  color: var(--ink) !important;
  font-family: var(--serif) !important;
  font-weight: 400 !important;
  letter-spacing: -.025em !important;
  line-height: 1.15 !important;
}
.theme-interior article h2 { font-size: clamp(2rem, 4vw, 3.2rem) !important; }
.theme-interior article h3 { font-size: clamp(1.65rem, 3vw, 2.35rem) !important; }
.theme-interior article a { color: #008b69; text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 3px; }
.theme-interior article img,
.theme-interior .gdlr-core-image-item img { height: auto !important; border-radius: 0 !important; }
.theme-interior article blockquote {
  margin: 2em 0;
  padding: 8px 0 8px 32px;
  border-left: 3px solid var(--aqua);
  color: var(--ink);
  font-size: 1.35em;
  line-height: 1.5;
}
.theme-interior article table { display: block; max-width: 100%; overflow-x: auto; border-collapse: collapse; font-family: var(--sans); font-size: .9rem; }
.theme-interior article th,
.theme-interior article td { padding: 12px; border: 1px solid var(--line); }
.theme-interior .gdlr-core-pbf-wrapper {
  margin: 0 !important;
  padding-top: 90px !important;
  padding-bottom: 90px !important;
  background-color: var(--paper) !important;
}
.theme-interior .gdlr-core-pbf-background,
.theme-interior .gdlr-core-pbf-background-wrap { opacity: .12; }
.theme-interior .gdlr-core-pbf-wrapper-content { position: relative; z-index: 2; }
.theme-interior .gdlr-core-pbf-column { margin-bottom: 28px; }
.theme-interior .gdlr-core-title-item-caption,
.theme-interior .gdlr-core-title-item-caption * {
  color: var(--aqua-dark) !important;
  border-color: var(--aqua-dark) !important;
  font-family: var(--sans) !important;
  font-size: .72rem !important;
  font-weight: 800 !important;
  letter-spacing: .16em !important;
  text-transform: uppercase !important;
}
.theme-interior .gdlr-core-title-item-title,
.theme-interior .gdlr-core-title-item-title * {
  color: var(--ink) !important;
  font-family: var(--serif) !important;
  font-size: clamp(2.1rem, 4vw, 4.3rem) !important;
  font-weight: 400 !important;
  letter-spacing: -.045em !important;
  line-height: 1.05 !important;
}
.theme-interior .gdlr-core-text-box-item-content,
.theme-interior .gdlr-core-text-box-item-content *:not(a) {
  color: #40505a !important;
  font-family: var(--sans) !important;
  line-height: 1.7 !important;
}
.theme-interior input:not([type="submit"]),
.theme-interior textarea,
.theme-interior select {
  width: 100%;
  padding: 15px 16px !important;
  border: 1px solid var(--line) !important;
  border-radius: 0 !important;
  background: var(--white) !important;
  color: var(--ink) !important;
}
.theme-interior input[type="submit"],
.theme-interior button:not(.menu-toggle),
.theme-interior .gdlr-core-button {
  min-height: 52px;
  padding: 0 24px !important;
  border: 1px solid var(--ink) !important;
  border-radius: 0 !important;
  background: var(--ink) !important;
  color: var(--white) !important;
  font-family: var(--sans) !important;
  font-size: .74rem !important;
  font-weight: 800 !important;
  letter-spacing: .1em !important;
  text-transform: uppercase;
}
.theme-interior .enterEmailWording { margin-top: 70px !important; padding-top: 45px; border-top: 1px solid var(--line); }
.theme-interior #c5 { font-family: var(--sans); font-size: .9rem; }

@media (max-width: 900px) {
  .theme-interior .corzo-page-title-wrap { min-height: 320px; padding: 75px 0 55px !important; }
  .theme-interior .corzo-content-area { padding: 60px 0 85px !important; }
  .theme-interior .gdlr-core-pbf-wrapper { padding-top: 65px !important; padding-bottom: 65px !important; }
  .theme-interior .gdlr-core-pbf-column { float: none !important; width: 100% !important; }
  .theme-interior .gdlr-core-pbf-column-content-margin { min-height: 0 !important; padding: 20px 0 !important; }
}

/* Purpose-built institutional pages */
.theme-page { background: var(--paper); }
.theme-page main { min-height: 60vh; }
.page-hero {
  position: relative;
  overflow: hidden;
  padding: 105px 0 90px;
  background: var(--ink) url('../upload/3gence-consulting_data-dots.jpg') center / cover no-repeat;
  color: var(--white);
}
.page-hero::before { content: ''; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(7,19,29,.99), rgba(7,19,29,.67)); }
.page-hero .container { position: relative; z-index: 1; }
.page-hero .eyebrow { color: var(--aqua); }
.page-hero h1 {
  max-width: 930px;
  margin: 0;
  font-family: var(--serif);
  font-size: clamp(3.1rem, 6.7vw, 6.5rem);
  font-weight: 400;
  letter-spacing: -.055em;
  line-height: .96;
}
.page-hero p:last-child { max-width: 720px; margin: 28px 0 0; color: rgba(255,255,255,.72); font-size: 1.1rem; }
.content-section { padding: 105px 0; }
.content-section.white { background: var(--white); }
.content-section.dark { background: var(--ink); color: var(--white); }
.content-section.compact { padding: 72px 0; }
.section-heading-row { display: grid; grid-template-columns: 1.1fr .7fr; gap: 80px; align-items: end; margin-bottom: 55px; }
.section-heading-row .section-copy { margin: 0; }
.split-layout { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(45px, 8vw, 110px); align-items: start; }
.prose { max-width: 760px; color: #40505a; font-size: 1.07rem; }
.prose.wide { max-width: 900px; }
.prose p { margin: 0 0 1.4em; }
.prose h2, .prose h3 { color: var(--ink); font-family: var(--serif); font-weight: 400; letter-spacing: -.03em; line-height: 1.12; }
.prose h2 { margin: 1.6em 0 .7em; font-size: clamp(2rem, 4vw, 3.5rem); }
.prose h3 { margin: 1.5em 0 .55em; font-size: 1.65rem; }
.prose ul { padding-left: 1.2em; }
.prose li { margin-bottom: .65em; }
.metric-panel { border-top: 1px solid var(--line); }
.metric { display: grid; grid-template-columns: 70px 1fr; gap: 18px; padding: 28px 0; border-bottom: 1px solid var(--line); }
.metric-number { color: var(--aqua-dark); font-family: var(--serif); font-size: 1.8rem; }
.metric h3 { margin: 0 0 6px; font-family: var(--serif); font-size: 1.35rem; font-weight: 400; }
.metric p { margin: 0; color: var(--muted); font-size: .9rem; }
.card-grid { display: grid; grid-template-columns: repeat(2, 1fr); border-top: 1px solid var(--line); }
.card-grid.three { grid-template-columns: repeat(3, 1fr); }
.info-card { min-height: 260px; padding: 35px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); background: var(--white); }
.info-card:nth-child(2n) { border-right: 0; }
.card-grid.three .info-card:nth-child(2n) { border-right: 1px solid var(--line); }
.card-grid.three .info-card:nth-child(3n) { border-right: 0; }
.info-card .card-label { color: var(--aqua-dark); font-size: .68rem; font-weight: 800; letter-spacing: .13em; text-transform: uppercase; }
.info-card h2, .info-card h3 { margin: 45px 0 15px; font-family: var(--serif); font-size: clamp(1.55rem, 2.6vw, 2.35rem); font-weight: 400; line-height: 1.1; }
.info-card p { margin: 0; color: var(--muted); }
.info-card a:hover h2, .info-card a:hover h3 { color: var(--aqua-dark); }
.research-index { border-top: 1px solid var(--line); }
.research-row { display: grid; grid-template-columns: 170px 1fr 35px; gap: 35px; align-items: center; padding: 32px 0; border-bottom: 1px solid var(--line); }
.research-row .meta { color: var(--aqua-dark); font-size: .68rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.research-row h2 { margin: 0; font-family: var(--serif); font-size: clamp(1.4rem, 2.4vw, 2.2rem); font-weight: 400; line-height: 1.15; }
.research-row:hover h2 { color: var(--aqua-dark); }
.faq-list { border-top: 1px solid var(--line); }
.faq-list details { border-bottom: 1px solid var(--line); }
.faq-list summary { position: relative; padding: 28px 50px 28px 0; cursor: pointer; list-style: none; font-family: var(--serif); font-size: 1.35rem; }
.faq-list summary::-webkit-details-marker { display: none; }
.faq-list summary::after { content: '+'; position: absolute; right: 8px; color: var(--aqua-dark); font-family: var(--sans); }
.faq-list details[open] summary::after { content: '−'; }
.faq-list details p { max-width: 760px; margin: -4px 0 28px; color: var(--muted); }
.form-shell { max-width: 780px; padding: clamp(28px, 5vw, 55px); background: var(--white); box-shadow: 0 20px 60px rgba(7,19,29,.08); }
.form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
.field { margin-bottom: 20px; }
.field.full { grid-column: 1 / -1; }
.field label { display: block; margin-bottom: 8px; font-size: .72rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.field textarea { min-height: 180px; resize: vertical; }
.field input, .field textarea { width: 100%; padding: 15px; border: 1px solid var(--line); border-radius: 0; background: #fbfbf8; color: var(--ink); }
.form-note { color: var(--muted); font-size: .82rem; }
.button-dark { background: var(--ink); color: var(--white); }
.button-dark:hover { background: var(--ink-soft); }
.cta-band { padding: 78px 0; background: var(--aqua); }
.cta-band .container { display: flex; justify-content: space-between; gap: 50px; align-items: center; }
.cta-band h2 { max-width: 780px; margin: 0; font-family: var(--serif); font-size: clamp(2.2rem, 4.5vw, 4.5rem); font-weight: 400; letter-spacing: -.045em; line-height: 1; }
.legal-copy { max-width: 850px; }
.legal-copy h2 { margin-top: 2em; }
.brief-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 12px 28px;
  max-width: 780px;
  margin: 0 auto 38px;
  padding-bottom: 22px;
  border-bottom: 1px solid var(--line);
  color: var(--aqua-dark);
  font-size: .7rem;
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.brief-summary {
  max-width: 780px;
  margin: 0 auto 54px;
  padding: 28px 32px;
  border-left: 4px solid var(--aqua);
  background: var(--paper-deep);
  color: var(--ink);
  font-family: var(--serif);
  font-size: clamp(1.2rem, 2.3vw, 1.55rem);
  line-height: 1.5;
}
.brief-article .decision-list {
  margin: 1.6em 0 2em;
  padding: 0;
  list-style: none;
  counter-reset: decisions;
}
.brief-article .decision-list li {
  position: relative;
  margin: 0;
  padding: 18px 0 18px 56px;
  border-top: 1px solid var(--line);
  counter-increment: decisions;
}
.brief-article .decision-list li:last-child { border-bottom: 1px solid var(--line); }
.brief-article .decision-list li::before {
  content: counter(decisions, decimal-leading-zero);
  position: absolute;
  top: 18px;
  left: 0;
  color: var(--aqua-dark);
  font-family: var(--sans);
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .08em;
}
.brief-conclusion {
  max-width: 780px;
  margin: 62px auto 0;
  padding-top: 34px;
  border-top: 3px solid var(--ink);
}
.brief-conclusion h2 { margin-top: 0 !important; }
.brief-navigation {
  display: flex;
  justify-content: space-between;
  gap: 25px;
  max-width: 780px;
  margin: 65px auto 0;
  padding-top: 28px;
  border-top: 1px solid var(--line);
}
.brief-navigation a { font-family: var(--sans); }
.brief-article .source-link {
  white-space: nowrap;
  font-family: var(--sans);
  font-size: .78em;
  font-weight: 700;
}
.brief-article .source-link sup {
  color: var(--aqua-dark);
  font-size: .7em;
}
.article-sources {
  max-width: 780px;
  margin: 68px auto 0;
  padding: 34px 0 0;
  border-top: 3px solid var(--ink);
}
.article-sources h2 { margin: 0 0 24px !important; font-size: clamp(1.65rem, 3vw, 2.3rem) !important; }
.article-sources ol { margin: 0; padding: 0; list-style: none; }
.article-sources li {
  display: grid;
  grid-template-columns: 34px 1fr;
  gap: 14px;
  padding: 13px 0;
  border-top: 1px solid var(--line);
  font-family: var(--sans);
  font-size: .86rem;
  line-height: 1.45;
}
.article-sources li > span {
  color: var(--aqua-dark);
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .08em;
}
.article-sources a { color: var(--ink) !important; text-decoration: none !important; }
.article-sources a:hover { color: var(--aqua-dark) !important; }
.error-page { display: grid; place-items: center; min-height: calc(100vh - 86px); padding: 70px 0; background: var(--ink); color: var(--white); text-align: center; }
.error-code { color: var(--aqua); font-family: var(--serif); font-size: clamp(6rem, 18vw, 13rem); line-height: .8; }
.error-page h1 { margin: 35px 0 15px; font-family: var(--serif); font-size: clamp(2.3rem, 5vw, 4.4rem); font-weight: 400; }
.error-page p { max-width: 560px; margin: 0 auto 30px; color: rgba(255,255,255,.65); }

@media (max-width: 780px) {
  .page-hero { padding: 75px 0 65px; }
  .content-section { padding: 75px 0; }
  .section-heading-row, .split-layout { grid-template-columns: 1fr; gap: 35px; }
  .card-grid, .card-grid.three { grid-template-columns: 1fr; }
  .info-card, .card-grid.three .info-card:nth-child(2n) { min-height: 220px; border-right: 0; }
  .research-row { grid-template-columns: 1fr 25px; gap: 15px; }
  .research-row .meta { grid-column: 1 / -1; }
  .form-grid { grid-template-columns: 1fr; }
  .field.full { grid-column: auto; }
  .cta-band .container { align-items: flex-start; flex-direction: column; }
}
