/* Aegis reference-site skin. The structure follows the supplied reference
   screenshots; Aegis content, logo, green palette and live assistant remain. */

html { overflow-x: hidden; }

body[data-reference-layout="true"] {
  --reference-ink: #142019;
  --reference-green: #178a4c;
  --reference-teal: #178a4c;
  --reference-soft: #f1f8f3;
  --reference-soft-blue: #f2faf5;
  --reference-line: #dce9df;
  --reference-muted: #63736a;
  overflow-x: hidden;
  background: #fff;
  color: var(--reference-ink);
}

body[data-reference-layout="true"] h1,
body[data-reference-layout="true"] h2,
body[data-reference-layout="true"] h3,
body[data-reference-layout="true"] .section-hd h2,
body[data-reference-layout="true"] .sec-title {
  font-family: inherit;
  font-weight: 800;
  letter-spacing: -.04em;
}

body[data-reference-layout="true"] .hp-topbar {
  min-height: 30px;
  background: #f0f8f3;
  border-bottom: 1px solid var(--reference-line);
  color: var(--reference-muted);
}

body[data-reference-layout="true"] .hp-topbar-in {
  max-width: 1280px;
  min-height: 30px;
}

body[data-reference-layout="true"] .hp-topbar a,
body[data-reference-layout="true"] .hp-topbar-right,
body[data-reference-layout="true"] .hp-topbar-promo {
  color: var(--reference-muted);
  font-size: 11px;
}

body[data-reference-layout="true"] .hp-topbar-promo strong { color: var(--reference-muted); }

body[data-reference-layout="true"] .hp-header {
  position: sticky;
  top: 0;
  z-index: 900;
  min-height: 84px;
  background: rgba(255, 255, 255, .96);
  border-bottom: 1px solid #edf2ee;
  box-shadow: 0 6px 18px rgba(16, 55, 35, .05);
  backdrop-filter: blur(14px);
}

body[data-reference-layout="true"] .hp-header-in {
  max-width: 1280px;
  min-height: 84px;
}

body[data-reference-layout="true"] .hp-brand {
  color: var(--reference-ink);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 21px;
  letter-spacing: -.035em;
}

body[data-reference-layout="true"] .hp-brand span {
  color: var(--reference-green);
}

body[data-reference-layout="true"] .hp-brand img {
  width: 42px;
  height: 42px;
}

body[data-reference-layout="true"] .hp-nav {
  gap: clamp(18px, 2.4vw, 34px);
}

body[data-reference-layout="true"] .hp-nav a {
  position: relative;
  color: var(--reference-ink);
  font-size: 14px;
  font-weight: 650;
}

body[data-reference-layout="true"] .hp-nav a:not(.btn)::after {
  position: absolute;
  right: 0;
  bottom: -9px;
  left: 0;
  height: 2px;
  background: var(--reference-green);
  content: "";
  transform: scaleX(0);
  transform-origin: center;
  transition: transform 180ms ease;
}

body[data-reference-layout="true"] .hp-nav a:hover::after,
body[data-reference-layout="true"] .hp-nav a.active::after {
  transform: scaleX(1);
}

body[data-reference-layout="true"] .hp-btn,
body[data-reference-layout="true"] .btn {
  min-height: 46px;
  padding: 12px 25px;
  border-radius: 999px;
  font-weight: 750;
}

body[data-reference-layout="true"] .hp-btn-primary,
body[data-reference-layout="true"] .btn-primary {
  background: var(--reference-green);
  box-shadow: 0 8px 20px rgba(23, 138, 76, .2);
}

body[data-reference-layout="true"] .hp-btn-outline,
body[data-reference-layout="true"] .btn-outline {
  border-color: #b8d9c1;
  background: #fff;
  color: var(--reference-ink);
}

body[data-reference-layout="true"] .aegis-reference-rail {
  position: fixed;
  top: 45%;
  right: 22px;
  z-index: 700;
  display: grid;
  width: 86px;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.55);
  border-radius: 44px;
  background: linear-gradient(180deg, #123d31, #168f83);
  box-shadow: 0 16px 30px rgba(18, 61, 49, .2);
  transform: translateY(-50%);
}

body[data-reference-layout="true"] .aegis-reference-rail a {
  display: grid;
  gap: 5px;
  justify-items: center;
  padding: 18px 8px;
  border-bottom: 1px solid rgba(255,255,255,.28);
  color: #fff;
  font-size: 11px;
  text-align: center;
}

body[data-reference-layout="true"] .aegis-reference-rail a:last-child { border-bottom: 0; }
body[data-reference-layout="true"] .aegis-reference-rail a:hover { background: rgba(255,255,255,.12); }
body[data-reference-layout="true"] .aegis-reference-rail a span { font-size: 21px; }
body[data-reference-layout="true"] .aegis-reference-rail a strong { font-size: 11px; line-height: 1.2; }
body[data-reference-layout="true"] .aegis-reference-rail a small { opacity: .72; }
body[data-reference-layout="true"] .floating-actions { display: none; }

/* Homepage */
body[data-reference-page="home"] .hp-hero {
  min-height: 640px;
  padding: 80px 0 105px;
  background: #eff8f2;
}

body[data-reference-page="home"] .hp-hero-in {
  max-width: 1280px;
  grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr);
  gap: 64px;
}

body[data-reference-page="home"] .hp-hero-copy h1 {
  max-width: 700px;
  color: var(--reference-ink);
  font-family: inherit;
  font-size: clamp(40px, 4.1vw, 60px);
  line-height: 1.02;
  letter-spacing: -.075em;
}

body[data-reference-page="home"] .hp-hero-copy h1 .accent {
  color: var(--reference-teal);
}

body[data-reference-page="home"] .hp-hero-copy .hp-hero-line {
  white-space: normal;
}

body[data-reference-page="home"] .hp-hero-copy > p {
  max-width: 560px;
  color: var(--reference-muted);
  font-size: 17px;
  line-height: 1.75;
}

body[data-reference-page="home"] .hp-project-stage {
  min-height: 470px;
  border-radius: 42px 42px 42px 0;
  background: rgba(255,255,255,.5);
  box-shadow: 0 25px 55px rgba(25, 74, 43, .14);
}

body[data-reference-page="home"] .hp-device-desktop {
  width: 90%;
  border-radius: 32px 32px 32px 0;
}

body[data-reference-page="home"] .hp-device-mobile {
  border-color: #fff;
  box-shadow: 0 20px 40px rgba(16, 55, 35, .2);
}

body[data-reference-page="home"] .hp-svc,
body[data-reference-page="home"] .hp-cta {
  padding-block: 100px;
}

body[data-reference-page="home"] .hp-svc { background: #fff; }

body[data-reference-page="home"] .hp-svc-head h2,
body[data-reference-page="home"] .hp-cta h2 {
  font-size: clamp(26px, 3vw, 34px);
  line-height: 1.1;
}

body[data-reference-page="home"] .hp-hl-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 18px;
}

body[data-reference-page="home"] .hp-hl-card {
  overflow: hidden;
  border: 0;
  border-bottom: 4px solid #afd7ba;
  border-radius: 26px;
  background: #f2f7f3;
  box-shadow: 0 12px 28px rgba(16, 55, 35, .07);
}

body[data-reference-page="home"] .hp-hl-card:nth-child(even) { transform: translateY(24px); }
body[data-reference-page="home"] .hp-hl-img { height: 180px; }
body[data-reference-page="home"] .hp-hl-body { padding: 25px; }
body[data-reference-page="home"] .hp-hl-body h3 { font-family: inherit; font-size: 18px; }

body[data-reference-page="home"] .aegis-reference-home-story,
body[data-reference-page="home"] .aegis-reference-values {
  padding: clamp(85px, 10vw, 140px) 0;
}

body[data-reference-page="home"] .aegis-reference-home-story { background: #fff; }

body[data-reference-page="home"] .aegis-reference-story-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, .95fr);
  gap: clamp(40px, 8vw, 108px);
  align-items: center;
}

body[data-reference-page="home"] .aegis-reference-home-media {
  position: relative;
  min-height: 470px;
  overflow: hidden;
  border-radius: 48px 48px 48px 0;
  background: #dff1e5;
  box-shadow: 0 20px 44px rgba(16, 55, 35, .13);
}

body[data-reference-page="home"] .aegis-reference-home-media img { width: 100%; height: 100%; min-height: 470px; object-fit: cover; }
body[data-reference-page="home"] .aegis-reference-home-media span { position: absolute; right: 25px; bottom: 23px; left: 25px; color: #fff; font-size: 12px; z-index: 1; }
body[data-reference-page="home"] .aegis-reference-home-media span strong { display: block; font-size: 25px; }
body[data-reference-page="home"] .aegis-reference-home-copy h2 { max-width: 650px; margin: 15px 0 22px; font-size: clamp(30px, 3.8vw, 48px); line-height: 1.04; }
body[data-reference-page="home"] .aegis-reference-home-copy p { max-width: 570px; color: var(--reference-muted); font-size: 17px; line-height: 1.75; }

body[data-reference-page="home"] .aegis-reference-values { background: var(--reference-soft-blue); }
body[data-reference-page="home"] .aegis-reference-values-head { max-width: 800px; margin: 0 auto 42px; text-align: center; }
body[data-reference-page="home"] .aegis-reference-values-head h2 { margin: 12px 0; font-size: clamp(30px, 3.8vw, 48px); line-height: 1.04; }
body[data-reference-page="home"] .aegis-reference-values-head p { color: var(--reference-muted); font-size: 17px; }
body[data-reference-page="home"] .aegis-reference-values-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
body[data-reference-page="home"] .aegis-reference-values-grid article { min-height: 215px; padding: 32px; border-radius: 25px; background: #fff; border-bottom: 4px solid #7fb995; box-shadow: 0 14px 28px rgba(16, 55, 35, .08); text-align: center; }
body[data-reference-page="home"] .aegis-reference-values-grid article span { display: block; color: var(--reference-teal); font-size: 11px; font-weight: 800; letter-spacing: .12em; }
body[data-reference-page="home"] .aegis-reference-values-grid article strong { display: block; margin: 25px 0 10px; font-family: inherit; font-size: 20px; }
body[data-reference-page="home"] .aegis-reference-values-grid article p { color: var(--reference-muted); line-height: 1.6; }

/* About page */
body[data-reference-page="about"] .ab-hero,
body[data-reference-page="industries"] .ind2-hero {
  max-width: 1280px;
  margin: 0 auto;
  padding: 70px 48px 100px;
}

body[data-reference-page="about"] .ab-h1,
body[data-reference-page="industries"] .ind2-h1 {
  max-width: 700px;
  font-size: clamp(40px, 4.4vw, 58px);
  line-height: 1.02;
}

body[data-reference-page="about"] .ab-visual {
  min-height: 500px;
  overflow: hidden;
  border-radius: 48px 48px 48px 0;
  background: url('../images/portfolio/aegis-labs.jpg') center / cover no-repeat;
  box-shadow: 0 22px 48px rgba(16, 55, 35, .14);
}

body[data-reference-page="about"] .ab-visual > * { visibility: hidden; }
body[data-reference-page="about"] .ab-section { padding: clamp(84px, 10vw, 140px) 48px; border-top: 0; }
body[data-reference-page="about"] .ab-section:nth-of-type(odd) { background: var(--reference-soft-blue); }
body[data-reference-page="about"] .ab-section > * { max-width: 1280px; margin-right: auto; margin-left: auto; }
body[data-reference-page="about"] .ab-h2 { font-size: clamp(30px, 3.8vw, 48px); line-height: 1.04; }
body[data-reference-page="about"] .ab-mv { gap: 20px; }
body[data-reference-page="about"] .ab-stmt,
body[data-reference-page="about"] .ab-layer,
body[data-reference-page="about"] .ab-interest { border: 0; border-bottom: 4px solid #afd7ba; border-radius: 25px; background: #fff; box-shadow: 0 12px 28px rgba(16, 55, 35, .07); }
body[data-reference-page="about"] .ab-stmt h3,
body[data-reference-page="about"] .ab-layer h3,
body[data-reference-page="about"] .ab-interest h3 { font-family: inherit; }
body[data-reference-page="about"] .ab-cta { max-width: 1280px; margin: 0 auto 90px; border-radius: 32px; background: var(--reference-soft); }

/* Services index */
body[data-reference-page="services"] .svc2-hero {
  max-width: 1280px;
  margin: 0 auto;
  padding: 70px 48px 130px;
  border-radius: 0 0 42px 42px;
  background: linear-gradient(135deg, #e1f2e6, #f5fbf6);
}

body[data-reference-page="services"] .svc2-h1 { max-width: 700px; font-family: inherit; font-size: clamp(40px, 4.1vw, 60px); line-height: 1.02; }
body[data-reference-page="services"] .svc2-lead { max-width: 570px; font-size: 17px; line-height: 1.75; }
body[data-reference-page="services"] .svc2-banner { border-radius: 34px 34px 44px 0; box-shadow: 0 22px 48px rgba(16, 55, 35, .13); }
body[data-reference-page="services"] .svc2-grid { position: relative; z-index: 2; max-width: 1280px; margin: -76px auto 0; padding: 0 48px 100px; grid-template-columns: repeat(3, 1fr); gap: 20px; }
body[data-reference-page="services"] .svc2-card { border: 0; border-bottom: 4px solid #afd7ba; border-radius: 26px; background: #fff; box-shadow: 0 14px 32px rgba(16, 55, 35, .09); }
body[data-reference-page="services"] .svc2-card:nth-child(3n + 2) { transform: translateY(24px); }
body[data-reference-page="services"] .svc2-name { font-family: inherit; font-size: 20px; }

/* Industries */
body[data-reference-page="industries"] .ind2-hero { display: grid; grid-template-columns: 1fr 1fr; gap: 60px; align-items: center; padding-top: 75px; }
body[data-reference-page="industries"] .ind2-hero-visual { overflow: hidden; border-radius: 48px 48px 48px 0; box-shadow: 0 22px 48px rgba(16, 55, 35, .13); }
body[data-reference-page="industries"] .ind2-section { padding: 100px 0; border-top: 0; }
body[data-reference-page="industries"] .ind2-section > .eyebrow,
body[data-reference-page="industries"] .ind2-section > h2,
body[data-reference-page="industries"] .ind2-section > p { text-align: center; }
body[data-reference-page="industries"] .ind-ocard { border: 0; border-bottom: 4px solid #afd7ba; border-radius: 24px; background: #fff; box-shadow: 0 14px 30px rgba(16, 55, 35, .08); }
body[data-reference-page="industries"] .ind-ocard-name { font-family: inherit; }
body[data-reference-page="industries"] .ind2-split { padding: 100px 0; }
body[data-reference-page="industries"] .ind2-split-img { border-radius: 46px 46px 46px 0; overflow: hidden; box-shadow: 0 20px 42px rgba(16, 55, 35, .12); }

/* Pricing, contact and quote */
body[data-reference-page="pricing"] .section:first-of-type,
body[data-reference-page="contact"] .contact-main,
body[data-reference-page="quote"] .q-hero { background: linear-gradient(135deg, #e1f2e6, #f5fbf6); }
body[data-reference-page="pricing"] .section-hd h1,
body[data-reference-page="quote"] .q-hero h1 { font-family: inherit; font-size: clamp(40px, 4.4vw, 58px); line-height: 1.02; }
body[data-reference-page="pricing"] .price-card { border: 0; border-bottom: 4px solid #afd7ba; border-radius: 26px; box-shadow: 0 14px 30px rgba(16, 55, 35, .08); }
body[data-reference-page="pricing"] .price-card.featured { border-color: var(--reference-green); }
body[data-reference-page="pricing"] .price-tier,
body[data-reference-page="pricing"] .price-amt { font-family: inherit; }
body[data-reference-page="pricing"] .pricing-tab { border-color: #b8d9c1; border-radius: 999px; }
body[data-reference-page="pricing"] .pricing-tab.active { background: var(--reference-green); }
body[data-reference-page="contact"] .contact-main { padding: 80px 0 110px; }
body[data-reference-page="contact"] .contact-stage { max-width: 1280px; margin: 0 auto; border-radius: 38px; overflow: hidden; box-shadow: 0 22px 48px rgba(16, 55, 35, .1); }
body[data-reference-page="contact"] .contact-intro { background: linear-gradient(180deg, rgba(18,61,49,.82), rgba(23,138,76,.8)), url('../images/portfolio/aegis-labs.jpg') center / cover; }
body[data-reference-page="contact"] .contact-form-panel { background: #f1f7f2; }
body[data-reference-page="contact"] .contact-submit { border-radius: 999px; background: var(--reference-green); }
body[data-reference-page="contact"] .contact-link { border-color: rgba(255,255,255,.22); }
body[data-reference-page="quote"] .q-hero { min-height: 420px; padding: 85px 0; }
body[data-reference-page="quote"] .q-hero h1,
body[data-reference-page="quote"] .q-hero-sub { color: var(--reference-ink); }
body[data-reference-page="quote"] .q-hero h1,
body[data-reference-page="quote"] .q-hero h1 span { color: var(--reference-ink) !important; }
body[data-reference-page="quote"] .q-hero-sub { opacity: .75; }
body[data-reference-page="quote"] .q-hero-badge { background: #fff; border-color: #c5e2cb; color: var(--reference-green); }
body[data-reference-page="quote"] .q-trust { color: var(--reference-muted); }
body[data-reference-page="quote"] .q-hero::before { opacity: .18; }
body[data-reference-page="quote"] .q-hero::after { opacity: .12; }
body[data-reference-page="quote"] .q-form-card,
body[data-reference-page="quote"] .q-side-card { border: 0; border-radius: 28px; background: #fff; box-shadow: 0 15px 30px rgba(16, 55, 35, .08); }

body[data-reference-layout="true"] .hp-footer { background: #eaf3ed; border-top: 0; }
body[data-reference-layout="true"] .hp-footer a { color: var(--reference-muted); }
body[data-reference-layout="true"] .hp-footer-col-title { color: var(--reference-ink); font-family: Georgia, "Times New Roman", serif; font-size: 18px; }

/* Supporting public pages keep the same editorial rhythm instead of falling
   back to the older flat section treatment. */
body[data-reference-layout="true"] .section {
  padding-block: clamp(72px, 9vw, 120px);
}

body[data-reference-page="solutions"] .section:first-of-type,
body[data-reference-page="privacy"] .section:first-of-type,
body[data-reference-page="terms"] .section:first-of-type,
body[data-reference-page="newsletter"] .section:first-of-type,
body[data-reference-page="thank-you"] .section:first-of-type {
  background: linear-gradient(135deg, #e1f2e6, #f5fbf6);
}

body[data-reference-page="solutions"] .section:first-of-type { padding-bottom: 140px; }
body[data-reference-page="solutions"] .section:first-of-type .section-hd { max-width: 760px !important; }
body[data-reference-page="solutions"] .section:first-of-type h1,
body[data-reference-page="privacy"] .section:first-of-type h1,
body[data-reference-page="terms"] .section:first-of-type h1,
body[data-reference-page="newsletter"] .section:first-of-type h1,
body[data-reference-page="thank-you"] .section:first-of-type h1 {
  font-family: inherit;
  font-size: clamp(40px, 4.4vw, 58px);
  line-height: 1.02;
  letter-spacing: -.06em;
}

body[data-reference-page="solutions"] .photo-banner {
  overflow: hidden;
  min-height: 360px;
  border-radius: 48px 48px 48px 0;
  box-shadow: 0 22px 48px rgba(16, 55, 35, .13);
}

body[data-reference-page="solutions"] .feat-grid {
  position: relative;
  z-index: 2;
  max-width: 1280px;
  margin: -76px auto 0;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
}

body[data-reference-page="solutions"] .feat-card {
  border: 0;
  border-bottom: 4px solid #afd7ba;
  border-radius: 26px;
  background: #fff;
  box-shadow: 0 14px 32px rgba(16, 55, 35, .09);
}

body[data-reference-page="solutions"] .feat-card:nth-child(3n + 2) { transform: translateY(24px); }
body[data-reference-page="privacy"] .section > .shell,
body[data-reference-page="terms"] .section > .shell,
body[data-reference-page="newsletter"] .section > .shell,
body[data-reference-page="thank-you"] .section > .shell { max-width: 900px; }
body[data-reference-page="privacy"] .section h2,
body[data-reference-page="terms"] .section h2,
body[data-reference-page="newsletter"] .section h2,
body[data-reference-page="thank-you"] .section h2 { font-family: Georgia, "Times New Roman", serif; }

@media (max-width: 900px) {
  body[data-reference-layout="true"] .aegis-reference-rail { display: none; }
  body[data-reference-page="home"] .hp-hero-in,
  body[data-reference-page="home"] .aegis-reference-story-grid,
  body[data-reference-page="industries"] .ind2-hero { grid-template-columns: 1fr; }
  body[data-reference-page="home"] .hp-hero { padding: 60px 0 90px; }
  body[data-reference-page="home"] .hp-hl-grid { grid-template-columns: repeat(2, 1fr); }
  body[data-reference-page="home"] .hp-hl-card:nth-child(even) { transform: none; }
  body[data-reference-page="home"] .aegis-reference-values-grid { grid-template-columns: 1fr; }
  body[data-reference-page="services"] .svc2-grid { grid-template-columns: repeat(2, 1fr); }
  body[data-reference-page="services"] .svc2-card:nth-child(3n + 2) { transform: none; }
}

@media (max-width: 640px) {
  body[data-reference-layout="true"] .hp-header,
  body[data-reference-layout="true"] .hp-header-in { min-height: 70px; }
  body[data-reference-layout="true"] .hp-brand { font-size: 18px; }
  body[data-reference-layout="true"] .hp-brand img { width: 34px; height: 34px; }
  body[data-reference-page="home"] .hp-hero-copy h1,
  body[data-reference-page="services"] .svc2-h1,
  body[data-reference-page="about"] .ab-h1,
  body[data-reference-page="industries"] .ind2-h1 { font-size: clamp(42px, 12vw, 60px); }
  body[data-reference-page="home"] .hp-hl-grid,
  body[data-reference-page="services"] .svc2-grid { grid-template-columns: 1fr; padding-right: 20px; padding-left: 20px; }
  body[data-reference-page="home"] .aegis-reference-home-media { min-height: 320px; }
  body[data-reference-page="home"] .aegis-reference-home-media img { min-height: 320px; }
  body[data-reference-page="services"] .svc2-hero { padding: 45px 20px 100px; }
  body[data-reference-page="about"] .ab-hero,
  body[data-reference-page="industries"] .ind2-hero { padding: 45px 20px 75px; }
  body[data-reference-page="about"] .ab-visual { min-height: 320px; }
  body[data-reference-page="about"] .ab-section { padding-right: 20px; padding-left: 20px; }
  body[data-reference-page="industries"] .ind2-hero-visual { margin-top: 20px; }
  body[data-reference-page="contact"] .contact-main { padding: 38px 12px 70px; }
  body[data-reference-page="contact"] .contact-stage { border-radius: 24px; }
}

/* -------------------------------------------------------------------------
   Page-specific hero imagery
   Keep the Aegis green/white palette, but give each high-intent page a
   useful visual anchor instead of reusing the old screenshot asset.
   ------------------------------------------------------------------------- */
body[data-reference-page="about"] .ab-hero {
  background: #f4faf6;
  box-shadow: 0 20px 44px rgba(16, 55, 35, .10);
}

body[data-reference-page="about"] .ab-hero > div:first-child {
  max-width: 680px;
  padding: clamp(92px, 10vw, 150px) 48px;
}

body[data-reference-page="about"] .ab-h1,
body[data-reference-page="about"] .ab-lead { color: var(--reference-ink); }

body[data-reference-page="about"] .ab-lead { color: var(--reference-muted); }

body[data-reference-page="about"] .ab-visual {
  background-image:
    linear-gradient(90deg, rgba(244,250,246,.99) 0%, rgba(244,250,246,.92) 27%, rgba(244,250,246,.20) 64%, rgba(244,250,246,.04) 100%),
    url('https://images.unsplash.com/photo-1521737711867-e3b97375f902?auto=format&fit=crop&w=1600&q=85');
  background-position: center;
  background-size: cover;
}

body[data-reference-page="about"] .ab-visual::after {
  content: 'Aegis Labs · people, products and dependable systems';
  position: absolute;
  right: 28px;
  bottom: 24px;
  z-index: 2;
  padding: 9px 13px;
  border: 1px solid rgba(255,255,255,.72);
  border-radius: 999px;
  background: rgba(255,255,255,.78);
  color: var(--reference-ink);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}

body[data-reference-page="industries"] .ind2-hero {
  background:
    linear-gradient(135deg, rgba(239,248,242,.98), rgba(239,248,242,.78)),
    url('https://images.unsplash.com/photo-1497366754035-f200968a6e72?auto=format&fit=crop&w=1600&q=84') center / cover;
  border-radius: 0 0 38px 38px;
}

body[data-reference-page="industries"] .ind2-hero-visual {
  position: relative;
  min-height: 410px;
  border-radius: 42px 42px 42px 0;
}

body[data-reference-page="industries"] .ind2-hero-visual img {
  filter: saturate(.82) contrast(.98);
}

body[data-reference-page="pricing"] .section:first-of-type {
  position: relative;
  overflow: hidden;
  background-image:
    linear-gradient(90deg, rgba(239,248,242,.98) 0%, rgba(239,248,242,.93) 52%, rgba(239,248,242,.68) 100%),
    url('https://images.unsplash.com/photo-1551288049-bebda4e38f71?auto=format&fit=crop&w=1600&q=84');
  background-position: center;
  background-size: cover;
}

body[data-reference-page="pricing"] .section:first-of-type .shell { position: relative; z-index: 1; }
body[data-reference-page="pricing"] .pricing-hero-card { background: rgba(255,255,255,.92); }
body[data-reference-page="pricing"] .pricing-metric { background: rgba(255,255,255,.94); }
body[data-reference-page="pricing"] .section:first-of-type::after {
  content: '';
  position: absolute;
  top: 0;
  right: 0;
  width: 34%;
  height: 62%;
  border-radius: 0 0 0 120px;
  background: url('https://images.unsplash.com/photo-1551288049-bebda4e38f71?auto=format&fit=crop&w=1200&q=84') center / cover;
  opacity: .20;
  mix-blend-mode: multiply;
  pointer-events: none;
}

body[data-reference-page="contact"] .contact-intro {
  background-image:
    linear-gradient(180deg, rgba(15,92,51,.88), rgba(23,138,76,.76)),
    url('https://images.unsplash.com/photo-1556761175-b413da4baf72?auto=format&fit=crop&w=1400&q=85');
  background-position: center;
  background-size: cover;
}

body[data-reference-page="quote"] .q-hero {
  position: relative;
  overflow: hidden;
  background-image:
    linear-gradient(90deg, rgba(239,248,242,.99) 0%, rgba(239,248,242,.92) 49%, rgba(239,248,242,.48) 100%),
    url('https://images.unsplash.com/photo-1498050108023-c5249f4df085?auto=format&fit=crop&w=1600&q=85');
  background-position: center;
  background-size: cover;
}

body[data-reference-page="quote"] .q-hero-inner { position: relative; z-index: 1; }

@media (max-width: 900px) {
  body[data-reference-page="about"] .ab-hero > div:first-child { padding: 78px 28px 160px; }
  body[data-reference-page="about"] .ab-visual { background-position: 62% center; }
  body[data-reference-page="about"] .ab-visual::after { right: 18px; bottom: 18px; }
  body[data-reference-page="industries"] .ind2-hero { background-image: linear-gradient(180deg, rgba(239,248,242,.98), rgba(239,248,242,.88)), url('https://images.unsplash.com/photo-1497366754035-f200968a6e72?auto=format&fit=crop&w=1400&q=84'); }
}

@media (max-width: 640px) {
  body[data-reference-page="about"] .ab-hero > div:first-child { padding: 78px 22px 190px; }
  body[data-reference-page="about"] .ab-h1 { font-size: clamp(34px, 10vw, 48px); }
  body[data-reference-page="about"] .ab-visual { background-position: 68% center; }
  body[data-reference-page="about"] .ab-visual::after { right: 14px; left: 14px; text-align: center; }
  body[data-reference-page="industries"] .ind2-hero-visual { min-height: 300px; }
  body[data-reference-page="pricing"] .section:first-of-type,
  body[data-reference-page="quote"] .q-hero { background-image: linear-gradient(180deg, rgba(239,248,242,.98), rgba(239,248,242,.92)), url('https://images.unsplash.com/photo-1498050108023-c5249f4df085?auto=format&fit=crop&w=1200&q=84'); }
  body[data-reference-page="pricing"] .section:first-of-type::after { width: 100%; height: 38%; border-radius: 0 0 0 60px; opacity: .10; }
}

@media (prefers-reduced-motion: reduce) {
  body[data-reference-layout="true"] *,
  body[data-reference-layout="true"] *::before,
  body[data-reference-layout="true"] *::after { scroll-behavior: auto !important; }
}

/* Reference alignment pass: match the supplied editorial service-site
   composition more closely while keeping Aegis content and real imagery. */
body[data-reference-layout="true"] {
  --reference-ink: #142019;
  --reference-green: #178a4c;
  --reference-teal: #178a4c;
  --reference-soft: #f1f8f3;
  --reference-soft-blue: #f2faf5;
  --reference-line: #dce9df;
  --reference-muted: #63736a;
}

body[data-reference-layout="true"] .hp-topbar {
  background: #f0f8f3 !important;
  color: var(--reference-muted) !important;
}

body[data-reference-layout="true"] .hp-header {
  min-height: 96px;
  box-shadow: 0 8px 24px rgba(16, 55, 35, .08);
}

body[data-reference-layout="true"] .hp-header-in,
body[data-reference-layout="true"] .hp-header > .shell { min-height: 96px; }
body[data-reference-layout="true"] .hp-brand { font-size: 23px; color: var(--reference-ink); }
body[data-reference-layout="true"] .hp-brand span { color: var(--reference-teal); }
body[data-reference-layout="true"] .hp-brand img { width: 46px; height: 46px; }
body[data-reference-layout="true"] .hp-nav { gap: clamp(20px, 2.8vw, 38px); }
body[data-reference-layout="true"] .hp-nav a { font-size: 15px; }
body[data-reference-layout="true"] .hp-nav a:not(.btn)::after { background: var(--reference-teal); }
body[data-reference-layout="true"] .hp-btn-primary,
body[data-reference-layout="true"] .btn-primary,
body[data-reference-layout="true"] .contact-submit {
  background: var(--reference-ink) !important;
  border-color: var(--reference-ink) !important;
  box-shadow: 0 10px 24px rgba(23, 138, 76, .2);
}
body[data-reference-layout="true"] .hp-btn-primary:hover,
body[data-reference-layout="true"] .btn-primary:hover,
body[data-reference-layout="true"] .contact-submit:hover {
  background: var(--reference-teal) !important;
  border-color: var(--reference-teal) !important;
}
body[data-reference-layout="true"] .hp-btn-outline,
body[data-reference-layout="true"] .btn-outline { border-color: #b8d9c1; color: var(--reference-ink); }

body[data-reference-layout="true"] .aegis-reference-rail {
  width: 112px;
  right: 24px;
  border-radius: 56px;
  background: linear-gradient(180deg, #123d31 0%, #168f83 100%);
  box-shadow: 0 18px 34px rgba(18, 61, 49, .22);
}
body[data-reference-layout="true"] .aegis-reference-rail a { padding: 22px 10px; font-size: 12px; }
body[data-reference-layout="true"] .aegis-reference-rail a span { font-size: 24px; }

/* Keep the hero light and editorial: the IT image belongs in the project
   composition on the right, not as a dark full-bleed background. */
body[data-reference-page="home"] .hp-hero {
  position: relative;
  min-height: 640px;
  padding: 80px 0 105px;
  background: #eff8f2;
}
body[data-reference-page="home"] .hp-hero-in { display: grid; max-width: 1280px; grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr); gap: 64px; text-align: left; }
body[data-reference-page="home"] .hp-hero-copy { max-width: 700px; margin: 0; }
body[data-reference-page="home"] .hp-hero-copy .hp-eyebrow { color: var(--reference-green); }
body[data-reference-page="home"] .hp-hero-copy h1 {
  max-width: 700px;
  color: var(--reference-ink);
  font-family: inherit;
  font-size: clamp(40px, 4.1vw, 60px);
  line-height: 1.02;
  letter-spacing: -.075em;
}
body[data-reference-page="home"] .hp-hero-copy h1 .accent { color: var(--reference-teal); }
body[data-reference-page="home"] .hp-hero-copy > p { max-width: 560px; margin: 24px 0 0; color: var(--reference-muted); font-size: 17px; }
body[data-reference-page="home"] .hp-hero-cta { justify-content: flex-start; margin-top: 34px; }
body[data-reference-page="home"] .hp-hero-art { display: block; min-height: 480px; }
body[data-reference-page="home"] .hp-hero::after { display: none; }

/* Homepage hero: one restrained photographic surface, with the copy sitting
   on the page rather than inside a separate oversized product card. */
body[data-reference-page="home"] .hp-hero {
  min-height: 0;
  height: clamp(500px, 58vh, 610px);
  padding: 0;
  background: #f4faf7;
  isolation: isolate;
}
body[data-reference-page="home"] .hp-hero::before {
  display: none;
}
body[data-reference-page="home"] .hp-hero::after {
  display: none;
}
body[data-reference-page="home"] .hp-hero-in::after {
  content: '';
  position: absolute;
  z-index: 1;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(90deg, #ffffff 0%, rgba(255,255,255,.98) 22%, rgba(255,255,255,.78) 43%, rgba(255,255,255,.18) 72%, rgba(255,255,255,0) 100%);
}
body[data-reference-page="home"] .hp-hero-in {
  z-index: 2;
  display: block;
  width: 100%;
  max-width: none;
  margin: 0;
  height: 100%;
  padding-right: max(32px, calc((100vw - 1180px) / 2));
  padding-left: max(32px, calc((100vw - 1180px) / 2));
  padding-top: clamp(58px, 8vw, 104px);
  padding-bottom: clamp(58px, 8vw, 104px);
}
body[data-reference-page="home"] .hp-hero-copy {
  position: relative;
  z-index: 2;
  max-width: 560px;
}
body[data-reference-page="home"] .hp-hero-copy h1 {
  max-width: 560px;
  font-size: clamp(42px, 4.2vw, 58px);
  line-height: 1.03;
  letter-spacing: -.07em;
}
body[data-reference-page="home"] .hp-hero-copy > p {
  max-width: 510px;
  font-size: 16px;
  line-height: 1.65;
}
body[data-reference-page="home"] .hp-hero-art {
  position: absolute;
  z-index: 0;
  inset: 0;
  min-height: 0;
  pointer-events: none;
}
body[data-reference-page="home"] .hp-project-stage {
  position: absolute;
  inset: 0;
  width: 100%;
  min-height: 0;
  padding: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
body[data-reference-page="home"] .hp-device-desktop {
  position: absolute;
  inset: 0;
  width: 100%;
  max-width: none;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  transform: none;
  overflow: hidden;
}
body[data-reference-page="home"] .hp-device-desktop::before { display: none; }
body[data-reference-page="home"] .hp-device-desktop img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center right;
}
body[data-reference-page="home"] .hp-device-mobile,
body[data-reference-page="home"] .hp-project-stage-label,
body[data-reference-page="home"] .hp-curve-arrow {
  display: none;
}

@media (max-width: 640px) {
  body[data-reference-page="home"] .hp-hero {
    height: 590px;
  }
  body[data-reference-page="home"] .hp-hero::before {
    background-position: 68% center;
  }
  body[data-reference-page="home"] .hp-hero-in::after {
    background: linear-gradient(180deg, #fff 0%, rgba(255,255,255,.98) 38%, rgba(255,255,255,.75) 64%, rgba(255,255,255,.2) 100%);
  }
  body[data-reference-page="home"] .hp-hero-in {
    padding-top: 52px;
    padding-right: 20px;
    padding-left: 20px;
  }
  body[data-reference-page="home"] .hp-hero-copy h1 {
    max-width: 360px;
    font-size: clamp(36px, 10.5vw, 50px);
  }
  body[data-reference-page="home"] .hp-hero-copy > p {
    max-width: 350px;
    font-size: 15px;
  }
}

@media (min-width: 901px) {
  body[data-reference-page="home"] .hp-hero {
    min-height: 0;
    height: min(660px, calc(100vh - 126px));
    box-sizing: border-box;
    padding-block: 0;
  }
}

/* About hero follows the reference's cinematic banner treatment. */
body[data-reference-page="about"] .ab-hero {
  position: relative;
  display: block;
  max-width: 1280px;
  min-height: 540px;
  padding: 0;
  overflow: hidden;
  border-radius: 0 0 44px 44px;
  background: #123d31;
}
body[data-reference-page="about"] .ab-hero > div:first-child {
  position: relative;
  z-index: 2;
  max-width: 720px;
  padding: clamp(110px, 13vw, 180px) 48px;
}
body[data-reference-page="about"] .ab-h1 { color: #fff; font-size: clamp(40px, 4.4vw, 58px); }
body[data-reference-page="about"] .ab-lead { color: rgba(255,255,255,.86); max-width: 600px; }
body[data-reference-page="about"] .ab-hero .eyebrow { color: var(--reference-teal); }
body[data-reference-page="about"] .ab-visual {
  position: absolute;
  z-index: 1;
  inset: 0;
  min-height: 0;
  border-radius: 0;
  background-image: linear-gradient(90deg, rgba(18, 61, 49, .88), rgba(18, 61, 49, .24)), url('../images/portfolio/aegis-labs.jpg');
  background-position: center;
}

/* Services landing: light green hero field, green type accent, white cards over the
   lower image edge as in the supplied reference. */
body[data-reference-page="services"] .svc2-hero {
  position: relative;
  display: block;
  max-width: 1280px;
  min-height: 310px;
  padding: 0;
  overflow: hidden;
  border-radius: 0 0 34px 34px;
  background: var(--reference-soft);
}
body[data-reference-page="services"] .svc2-hero-copy {
  position: relative;
  z-index: 2;
  display: flex;
  min-height: 310px;
  max-width: 560px;
  flex-direction: column;
  justify-content: center;
  padding: 44px 48px;
}
body[data-reference-page="services"] .svc2-hero-copy::after {
  position: absolute;
  z-index: -1;
  inset: 0 -80px 0 -100px;
  background: linear-gradient(90deg, rgba(255,255,255,.98) 0%, rgba(255,255,255,.9) 56%, rgba(255,255,255,0) 100%);
  content: '';
}
body[data-reference-page="services"] .svc2-h1 { color: var(--reference-ink); font-size: clamp(40px, 4.1vw, 60px); line-height: 1.02; }
body[data-reference-page="services"] .svc2-hero-copy > p { max-width: 420px; color: var(--reference-muted); font-size: 16px; }
body[data-reference-page="services"] .svc2-hero-copy .eyebrow { color: var(--reference-teal); }
body[data-reference-page="services"] .svc2-hero-actions { display: none; }
body[data-reference-page="services"] .svc2-banner { position: absolute; inset: 0; height: auto; margin: 0; border: 0; border-radius: 0; }
body[data-reference-page="services"] .svc2-banner img { filter: saturate(.88) brightness(.9); }
body[data-reference-page="services"] .svc2-banner::after { background: linear-gradient(90deg, rgba(255,255,255,.98), rgba(255,255,255,.18) 58%, rgba(23,138,76,.08)); }
body[data-reference-page="services"] .svc2-banner-txt { display: none; }
body[data-reference-page="services"] .svc2-grid {
  margin: 0 auto;
  padding: 74px 48px 110px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
}
body[data-reference-page="services"] .svc2-grid::before {
  display: block;
  grid-column: 1 / -1;
  width: min(100%, 1000px);
  margin: 0 auto 24px;
  color: var(--reference-ink);
  content: '✦  Our Services\A Compassionate technology for ambitious operations';
  white-space: pre-line;
  font-family: inherit;
  font-size: clamp(28px, 3vw, 40px);
  font-weight: 700;
  line-height: 1.05;
  text-align: center;
}
body[data-reference-page="services"] .svc2-card { border: 0; border-radius: 0; background: #f2f7f3; box-shadow: none; }
body[data-reference-page="services"] .svc2-card:hover { transform: translateY(-5px); box-shadow: 0 16px 34px rgba(16,55,35,.12); }
body[data-reference-page="services"] .svc2-img { height: 260px; }
body[data-reference-page="services"] .svc2-img img { filter: saturate(.82) brightness(.86); }
body[data-reference-page="services"] .svc2-img-overlay { background: linear-gradient(180deg, transparent 52%, rgba(23,138,76,.18)); }
body[data-reference-page="services"] .svc2-num { color: var(--reference-ink); background: rgba(255,255,255,.82); }
body[data-reference-page="services"] .svc2-body { position: relative; padding: 28px 22px 26px; }
body[data-reference-page="services"] .svc2-head { margin-top: -54px; margin-bottom: 20px; }
body[data-reference-page="services"] .svc2-icon { width: 58px; height: 58px; border: 0; border-radius: 4px; background: #fff; color: var(--reference-teal); box-shadow: 0 8px 20px rgba(16,55,35,.12); }
body[data-reference-page="services"] .svc2-tag { color: var(--reference-teal); }
body[data-reference-page="services"] .svc2-name { color: var(--reference-ink); font-size: 24px; }
body[data-reference-page="services"] .svc2-desc { color: var(--reference-muted); line-height: 1.65; }
body[data-reference-page="services"] .svc2-link { color: var(--reference-ink); }

/* Shared content rhythm: the light green surfaces and white cards carry the
   same visual language through industries, pricing, contact and solutions. */
body[data-reference-layout="true"] .section:nth-of-type(even),
body[data-reference-layout="true"] .ind2-section:nth-of-type(even),
body[data-reference-layout="true"] .aegis-depth-section:nth-of-type(even) { background: var(--reference-soft-blue); }
body[data-reference-layout="true"] .aegis-depth-section,
body[data-reference-layout="true"] .section { border-color: var(--reference-line); }
body[data-reference-layout="true"] .aegis-depth-step,
body[data-reference-layout="true"] .aegis-depth-project,
body[data-reference-layout="true"] .price-card,
body[data-reference-layout="true"] .feat-card,
body[data-reference-layout="true"] .ind-ocard,
body[data-reference-layout="true"] .ab-stmt,
body[data-reference-layout="true"] .ab-layer,
body[data-reference-layout="true"] .ab-interest {
  border-bottom-color: #afd7ba;
  box-shadow: 0 14px 30px rgba(16, 55, 35, .09);
}
body[data-reference-layout="true"] .aegis-depth-step::before,
body[data-reference-layout="true"] .feat-icon,
body[data-reference-layout="true"] .ab-layer-icon { color: var(--reference-teal); }

@media (max-width: 900px) {
  body[data-reference-page="home"] .hp-hero { min-height: 0; padding-block: 0; }
  body[data-reference-page="about"] .ab-hero > div:first-child { padding: 100px 28px 150px; }
  body[data-reference-page="services"] .svc2-hero { padding: 0; }
  body[data-reference-page="services"] .svc2-hero-copy { padding-inline: 28px; }
  body[data-reference-page="services"] .svc2-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); padding-inline: 28px; }
}

@media (max-width: 640px) {
  body[data-reference-layout="true"] .hp-header,
  body[data-reference-layout="true"] .hp-header-in { min-height: 70px; }
  body[data-reference-layout="true"] .hp-brand { font-size: 19px; }
  body[data-reference-layout="true"] .hp-brand img { width: 38px; height: 38px; }
  body[data-reference-page="home"] .hp-hero { height: 640px; min-height: 0; padding-block: 0; }
  body[data-reference-page="home"] .hp-hero { background: #eff8f2; }
  body[data-reference-page="home"] .hp-hero-in { display: block; height: 100%; text-align: left; }
  body[data-reference-page="home"] .hp-hero-copy { max-width: 360px; margin: 0; }
  body[data-reference-page="home"] .hp-hero-art { min-height: 0; }
  body[data-reference-page="home"] .hp-hero-copy h1 { font-size: clamp(34px, 9.5vw, 42px); line-height: 1.05; }
  body[data-reference-page="home"] .hp-hero-copy > p { margin-top: 18px; font-size: 15px; line-height: 1.55; }
  body[data-reference-page="home"] .hp-hero-cta { margin-top: 24px; }
  body[data-reference-page="home"] .hp-hero-cta { flex-direction: column; align-items: stretch; }
  body[data-reference-page="home"] .hp-hero-cta .hp-btn { justify-content: center; }
  body[data-reference-page="about"] .ab-hero { min-height: 560px; border-radius: 0 0 28px 28px; }
  body[data-reference-page="about"] .ab-hero > div:first-child { padding: 110px 22px 150px; }
  body[data-reference-page="about"] .ab-h1 { font-size: clamp(40px, 11vw, 58px); }
  body[data-reference-page="services"] .svc2-hero { min-height: 360px; padding: 0; border-radius: 0 0 28px 28px; }
  body[data-reference-page="services"] .svc2-hero-copy { min-height: 360px; padding: 52px 20px 84px; }
  body[data-reference-page="services"] .svc2-hero-copy::after { inset: 0 -20px 0 -20px; background: linear-gradient(180deg, rgba(255,255,255,.98), rgba(255,255,255,.82) 72%, rgba(255,255,255,.28)); }
  body[data-reference-page="services"] .svc2-grid { grid-template-columns: 1fr; padding: 58px 20px 76px; }
  body[data-reference-page="services"] .svc2-grid::before { font-size: 38px; }
}

/* Page-specific imagery: preserve the light Aegis palette while giving each
   high-intent page a useful visual anchor. */
body[data-reference-page="about"] .ab-hero {
  background: #f4faf6;
  box-shadow: 0 20px 44px rgba(16, 55, 35, .10);
}
body[data-reference-page="about"] .ab-hero > div:first-child {
  max-width: 680px;
  padding: clamp(92px, 10vw, 150px) 48px;
}
body[data-reference-page="about"] .ab-h1,
body[data-reference-page="about"] .ab-lead { color: var(--reference-ink); }
body[data-reference-page="about"] .ab-lead { color: var(--reference-muted); }
body[data-reference-page="about"] .ab-visual {
  background-image:
    linear-gradient(90deg, rgba(244,250,246,.99) 0%, rgba(244,250,246,.92) 27%, rgba(244,250,246,.20) 64%, rgba(244,250,246,.04) 100%),
    url('https://images.unsplash.com/photo-1521737711867-e3b97375f902?auto=format&fit=crop&w=1600&q=85');
  background-position: center;
  background-size: cover;
}
body[data-reference-page="about"] .ab-visual::after {
  content: 'Aegis Labs · people, products and dependable systems';
  position: absolute;
  right: 28px;
  bottom: 24px;
  z-index: 2;
  padding: 9px 13px;
  border: 1px solid rgba(255,255,255,.72);
  border-radius: 999px;
  background: rgba(255,255,255,.78);
  color: var(--reference-ink);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}
body[data-reference-page="industries"] .ind2-hero {
  background:
    linear-gradient(135deg, rgba(239,248,242,.98), rgba(239,248,242,.78)),
    url('https://images.unsplash.com/photo-1497366754035-f200968a6e72?auto=format&fit=crop&w=1600&q=84') center / cover;
  border-radius: 0 0 38px 38px;
}
body[data-reference-page="industries"] .ind2-hero-visual {
  position: relative;
  min-height: 410px;
  border-radius: 42px 42px 42px 0;
}
body[data-reference-page="industries"] .ind2-hero-visual img { filter: saturate(.82) contrast(.98); }
body[data-reference-page="pricing"] .section:first-of-type {
  position: relative;
  overflow: hidden;
  background-image:
    linear-gradient(90deg, rgba(239,248,242,.98) 0%, rgba(239,248,242,.93) 52%, rgba(239,248,242,.68) 100%),
    url('https://images.unsplash.com/photo-1551288049-bebda4e38f71?auto=format&fit=crop&w=1600&q=84');
  background-position: center;
  background-size: cover;
}
body[data-reference-page="pricing"] .section:first-of-type .shell { position: relative; z-index: 1; }
body[data-reference-page="pricing"] .pricing-hero-card { background: rgba(255,255,255,.92); }
body[data-reference-page="pricing"] .pricing-metric { background: rgba(255,255,255,.94); }
body[data-reference-page="contact"] .contact-intro {
  background-image:
    linear-gradient(180deg, rgba(15,92,51,.88), rgba(23,138,76,.76)),
    url('https://images.unsplash.com/photo-1556761175-b413da4baf72?auto=format&fit=crop&w=1400&q=85');
  background-position: center;
  background-size: cover;
}
body[data-reference-page="quote"] .q-hero {
  position: relative;
  overflow: hidden;
  background-image:
    linear-gradient(90deg, rgba(239,248,242,.99) 0%, rgba(239,248,242,.92) 49%, rgba(239,248,242,.48) 100%),
    url('https://images.unsplash.com/photo-1498050108023-c5249f4df085?auto=format&fit=crop&w=1600&q=85');
  background-position: center;
  background-size: cover;
}
body[data-reference-page="quote"] .q-hero-inner { position: relative; z-index: 1; }
@media (max-width: 900px) {
  body[data-reference-page="about"] .ab-hero > div:first-child { padding: 78px 28px 160px; }
  body[data-reference-page="about"] .ab-visual { background-position: 62% center; }
  body[data-reference-page="about"] .ab-visual::after { right: 18px; bottom: 18px; }
  body[data-reference-page="industries"] .ind2-hero { background-image: linear-gradient(180deg, rgba(239,248,242,.98), rgba(239,248,242,.88)), url('https://images.unsplash.com/photo-1497366754035-f200968a6e72?auto=format&fit=crop&w=1400&q=84'); }
}
@media (max-width: 640px) {
  body[data-reference-page="about"] .ab-hero > div:first-child { padding: 78px 22px 190px; }
  body[data-reference-page="about"] .ab-h1 { font-size: clamp(34px, 10vw, 48px); }
  body[data-reference-page="about"] .ab-visual { background-position: 68% center; }
  body[data-reference-page="about"] .ab-visual::after { right: 14px; left: 14px; text-align: center; }
  body[data-reference-page="industries"] .ind2-hero-visual { min-height: 300px; }
  body[data-reference-page="pricing"] .section:first-of-type,
  body[data-reference-page="quote"] .q-hero { background-image: linear-gradient(180deg, rgba(239,248,242,.98), rgba(239,248,242,.92)), url('https://images.unsplash.com/photo-1498050108023-c5249f4df085?auto=format&fit=crop&w=1200&q=84'); }
}

/* Keep the pricing visual present but subordinate to the decision content. */
body[data-reference-page="pricing"] .section:first-of-type {
  background-image: linear-gradient(135deg, #e1f2e6, #f5fbf6);
}
body[data-reference-page="pricing"] .section:first-of-type::after { opacity: .12; }
body[data-reference-page="pricing"] .pricing-hero-card {
  position: relative;
  overflow: hidden;
}
body[data-reference-page="pricing"] .pricing-hero-card::after {
  content: '';
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  width: 28%;
  background: url('https://images.unsplash.com/photo-1551288049-bebda4e38f71?auto=format&fit=crop&w=900&q=84') center / cover;
  opacity: .14;
  pointer-events: none;
}
body[data-reference-page="pricing"] .pricing-hero-card > * { position: relative; z-index: 1; }
@media (max-width: 640px) {
  body[data-reference-page="pricing"] .section:first-of-type { background-image: linear-gradient(180deg, #eff8f2, #f5fbf6); }
}

/* Give Pricing and Contact a visible hero visual rather than relying only on
   a background image. */
body[data-reference-page="pricing"] .pricing-hero-visual {
  position: relative;
  min-height: 240px;
  margin: 34px 0 4px;
  overflow: hidden;
  border-radius: 34px 34px 34px 0;
  background: #dcefe2;
  box-shadow: 0 18px 38px rgba(16,55,35,.10);
}
body[data-reference-page="pricing"] .pricing-hero-visual img {
  width: 100%;
  height: 240px;
  object-fit: cover;
  filter: saturate(.82) contrast(.96);
}
body[data-reference-page="pricing"] .pricing-hero-visual::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(239,248,242,.98) 0%, rgba(239,248,242,.88) 38%, rgba(239,248,242,.20) 78%, rgba(239,248,242,.06));
  pointer-events: none;
}
body[data-reference-page="pricing"] .pricing-hero-visual-copy {
  position: absolute;
  top: 50%;
  left: 34px;
  z-index: 1;
  display: grid;
  max-width: 430px;
  gap: 8px;
  transform: translateY(-50%);
}
body[data-reference-page="pricing"] .pricing-hero-visual-copy span {
  color: var(--reference-green);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .14em;
}
body[data-reference-page="pricing"] .pricing-hero-visual-copy strong {
  color: var(--reference-ink);
  font-size: clamp(22px, 3vw, 34px);
  line-height: 1.08;
  letter-spacing: -.04em;
}
body[data-reference-page="pricing"] .pricing-hero-visual-copy small {
  color: var(--reference-muted);
  font-size: 13px;
  line-height: 1.5;
}
body[data-reference-page="contact"] .contact-page .contact-visual,
body[data-reference-page="contact"] .contact-visual { background: #183f2c; }
body[data-reference-page="contact"] .contact-page .contact-visual::before,
body[data-reference-page="contact"] .contact-visual::before {
  content: '';
  position: absolute;
  inset: 0;
  background: url('https://images.unsplash.com/photo-1556761175-b413da4baf72?auto=format&fit=crop&w=1200&q=85') center / cover;
  opacity: .50;
  filter: saturate(.72);
}
body[data-reference-page="contact"] .contact-page .contact-visual svg,
body[data-reference-page="contact"] .contact-visual svg { z-index: 1; opacity: .42; }
body[data-reference-page="contact"] .contact-page .contact-visual-caption,
body[data-reference-page="contact"] .contact-visual-caption { z-index: 2; }
body[data-reference-page="contact"] .contact-intro {
  background-image:
    linear-gradient(180deg, rgba(15,92,51,.68), rgba(23,138,76,.56)),
    url('https://images.unsplash.com/photo-1517245386807-bb43f82c33c4?auto=format&fit=crop&w=1400&q=85');
  background-position: center;
  background-size: cover;
}
body[data-reference-page="contact"] .contact-visual::before {
  background-image: url('https://images.unsplash.com/photo-1517245386807-bb43f82c33c4?auto=format&fit=crop&w=1200&q=85');
  opacity: .72;
}
@media (max-width: 640px) {
  body[data-reference-page="pricing"] .pricing-hero-visual { min-height: 210px; margin-top: 26px; border-radius: 24px 24px 24px 0; }
  body[data-reference-page="pricing"] .pricing-hero-visual img { height: 210px; }
  body[data-reference-page="pricing"] .pricing-hero-visual-copy { left: 22px; right: 22px; }
  body[data-reference-page="pricing"] .pricing-hero-visual-copy strong { font-size: 24px; }
}

/* Photographic hero alignment pass.
   About and Services already use this treatment successfully. Keep their
   implementations intact and bring the other suitable static pages into the
   same full-bleed image / separate left-gradient system. */
body[data-reference-page="industries"] .ind2-hero {
  position: relative;
  display: block;
  width: 100vw;
  max-width: none;
  min-height: 460px;
  margin-left: calc(50% - 50vw);
  padding: 0;
  overflow: hidden;
  isolation: isolate;
  border-radius: 0 0 34px 34px;
  background: #f4faf6;
  box-shadow: none;
}
body[data-reference-page="industries"] .ind2-hero-visual {
  position: absolute;
  z-index: 0;
  inset: 0;
  min-height: 0;
  border-radius: 0;
  background: #dcefe2;
}
body[data-reference-page="industries"] .ind2-hero-visual img {
  width: 100%;
  height: 100%;
  min-height: 0;
  object-fit: cover;
  object-position: center 46%;
  opacity: 1;
  filter: saturate(.9) contrast(.98) brightness(.98);
}
body[data-reference-page="industries"] .ind2-hero-visual-copy { display: none; }
body[data-reference-page="industries"] .ind2-hero::after {
  position: absolute;
  z-index: 1;
  inset: 0;
  background: linear-gradient(90deg, #fff 0%, rgba(255,255,255,.98) 22%, rgba(255,255,255,.75) 43%, rgba(255,255,255,0) 72%);
  content: '';
  pointer-events: none;
}
body[data-reference-page="industries"] .ind2-hero-copy {
  position: relative;
  z-index: 2;
  display: flex;
  min-height: 460px;
  max-width: 760px;
  flex-direction: column;
  justify-content: center;
  box-sizing: border-box;
  padding: 54px 48px 54px max(48px, calc((100vw - 1240px) / 2 + 48px));
}
body[data-reference-page="industries"] .ind2-h1 {
  max-width: 560px;
  color: var(--reference-ink) !important;
  font-size: clamp(22px, 3vw, 32px) !important;
  line-height: 1.2 !important;
  letter-spacing: -1px !important;
}
body[data-reference-page="industries"] .ind2-lead {
  max-width: 470px;
  color: var(--reference-muted) !important;
  font-size: 16px !important;
}
body[data-reference-page="industries"] .ind2-stats {
  max-width: 480px;
  margin-top: 28px;
  background: rgba(255,255,255,.78);
  border-color: rgba(23,138,76,.16);
  box-shadow: 0 12px 24px rgba(16,55,35,.08);
}
body[data-reference-page="industries"] .ind2-stat { background: rgba(255,255,255,.72); }

body[data-reference-page="pricing"] .section:first-of-type {
  padding: 0 64px 48px;
  background: #fff;
}
body[data-reference-page="pricing"] .section:first-of-type .shell {
  max-width: 1240px;
  min-height: 0;
  padding: 0 48px;
}
body[data-reference-page="pricing"] .section:first-of-type .section-hd {
  position: absolute;
  z-index: 2;
  top: 0;
  left: 48px;
  width: min(560px, calc(100% - 96px));
  padding: 76px 0 0;
  text-align: left;
}
body[data-reference-page="pricing"] .section:first-of-type .section-hd h1 {
  max-width: 540px;
  color: var(--reference-ink) !important;
  font-size: clamp(22px, 3vw, 32px) !important;
  line-height: 1.2 !important;
  letter-spacing: -1px !important;
}
body[data-reference-page="pricing"] .section:first-of-type .section-hd p {
  max-width: 470px;
  color: var(--reference-muted) !important;
  font-size: 16px !important;
  line-height: 1.6;
}
body[data-reference-page="pricing"] .pricing-hero-visual {
  width: 100vw;
  max-width: none;
  min-height: 420px;
  margin: 0 0 0 calc(50% - 50vw);
  border: 0;
  border-radius: 0 0 34px 34px;
  background: #dcefe2;
  box-shadow: none;
}
body[data-reference-page="pricing"] .pricing-hero-visual img {
  width: 100%;
  height: 420px;
  object-fit: cover;
  object-position: center 48%;
  filter: saturate(.88) contrast(.98) brightness(.98);
}
body[data-reference-page="pricing"] .pricing-hero-visual::after {
  background: linear-gradient(90deg, #fff 0%, rgba(255,255,255,.98) 22%, rgba(255,255,255,.75) 43%, rgba(255,255,255,0) 72%);
}
body[data-reference-page="pricing"] .pricing-hero-visual-copy { display: none; }
body[data-reference-page="pricing"] .pricing-hero-upgrade {
  margin-top: 36px;
}

body[data-reference-page="portfolio"] .aegis-live-portfolio {
  padding-top: 0;
}
body[data-reference-page="portfolio"] .aegis-portfolio-hero {
  position: relative;
  display: block;
  width: 100vw;
  max-width: none;
  min-height: 420px;
  margin: 0 0 54px calc(50% - 50vw);
  overflow: hidden;
  isolation: isolate;
  border: 0;
  border-radius: 0 0 34px 34px;
  background: #f4faf6;
  box-shadow: none;
}
body[data-reference-page="portfolio"] .aegis-portfolio-hero img {
  position: absolute;
  z-index: 0;
  inset: 0;
  width: 100%;
  height: 100%;
  min-height: 0;
  object-fit: cover;
  object-position: center 42%;
  opacity: 1;
  filter: saturate(.95) contrast(.98) brightness(1.12);
}
body[data-reference-page="portfolio"] .aegis-portfolio-hero::after {
  z-index: 1;
  background: linear-gradient(90deg, #fff 0%, rgba(255,255,255,.98) 22%, rgba(255,255,255,.75) 43%, rgba(255,255,255,0) 72%);
}
body[data-reference-page="portfolio"] .aegis-portfolio-hero-copy {
  position: relative;
  z-index: 2;
  left: auto;
  bottom: auto;
  display: flex;
  min-height: 420px;
  max-width: 760px;
  flex-direction: column;
  justify-content: center;
  box-sizing: border-box;
  padding: 54px 48px 54px max(48px, calc((100vw - 1240px) / 2 + 48px));
}
body[data-reference-page="portfolio"] .aegis-portfolio-hero-copy h1 {
  max-width: 560px;
  color: var(--reference-ink) !important;
  font-size: clamp(22px, 3vw, 32px) !important;
  line-height: 1.2 !important;
  letter-spacing: -1px !important;
}
body[data-reference-page="portfolio"] .aegis-portfolio-hero-copy p {
  max-width: 470px;
  color: var(--reference-muted) !important;
  font-size: 16px;
}
body[data-reference-page="portfolio"] .aegis-portfolio-hero-badge {
  align-self: flex-start;
  background: rgba(255,255,255,.82);
}

@media (max-width: 900px) {
  body[data-reference-page="industries"] .ind2-hero-copy,
  body[data-reference-page="portfolio"] .aegis-portfolio-hero-copy { padding-left: 28px; padding-right: 28px; }
  body[data-reference-page="pricing"] .section:first-of-type { padding-inline: 28px; }
  body[data-reference-page="pricing"] .section:first-of-type .shell { padding-inline: 28px; }
  body[data-reference-page="pricing"] .section:first-of-type .section-hd { left: 28px; width: calc(100% - 56px); }
}

@media (max-width: 640px) {
  body[data-reference-page="industries"] .ind2-hero,
  body[data-reference-page="industries"] .ind2-hero-copy,
  body[data-reference-page="portfolio"] .aegis-portfolio-hero,
  body[data-reference-page="portfolio"] .aegis-portfolio-hero-copy { min-height: 520px; }
  body[data-reference-page="industries"] .ind2-hero::after,
  body[data-reference-page="pricing"] .pricing-hero-visual::after,
  body[data-reference-page="portfolio"] .aegis-portfolio-hero::after {
    background: linear-gradient(180deg, rgba(255,255,255,.99) 0%, rgba(255,255,255,.94) 45%, rgba(255,255,255,.40) 78%, rgba(255,255,255,.06) 100%);
  }
  body[data-reference-page="industries"] .ind2-hero-copy,
  body[data-reference-page="portfolio"] .aegis-portfolio-hero-copy { padding: 58px 20px 120px; justify-content: flex-start; }
  body[data-reference-page="industries"] .ind2-hero-visual img { object-position: 64% center; }
  body[data-reference-page="portfolio"] .aegis-portfolio-hero img { object-position: 68% center; }
  body[data-reference-page="industries"] .ind2-stats { margin-top: 24px; }
  body[data-reference-page="pricing"] .section:first-of-type { padding: 0 20px 32px; }
  body[data-reference-page="pricing"] .section:first-of-type .shell { padding: 0; }
  body[data-reference-page="pricing"] .section:first-of-type .section-hd {
    top: 0;
    left: 20px;
    width: calc(100% - 40px);
    padding-top: 50px;
  }
  body[data-reference-page="pricing"] .pricing-hero-visual,
  body[data-reference-page="pricing"] .pricing-hero-visual img { min-height: 520px; height: 520px; }
  body[data-reference-page="pricing"] .pricing-hero-visual { border-radius: 0 0 28px 28px; }
}

/* These heroes remain light by default. A dark surface is opt-in with the
   site's complete dark theme, not part of the default public design. */
body[data-theme="dark"][data-reference-page="industries"] .ind2-hero::after,
body[data-theme="dark"][data-reference-page="pricing"] .pricing-hero-visual::after,
body[data-theme="dark"][data-reference-page="portfolio"] .aegis-portfolio-hero::after {
  background: linear-gradient(90deg, rgba(16,34,24,.94), rgba(16,34,24,.58) 55%, rgba(16,34,24,.12));
}

/* Final Contact treatment: a light page-level photographic hero. Keep the
   image clear on the right and the copy readable on the left; the form is the
   only elevated panel on this surface. */
body[data-reference-page="contact"] .contact-main {
  padding: 0 0 64px !important;
  background: #f4faf6 !important;
}
body[data-reference-page="contact"] .contact-shell {
  max-width: none !important;
  padding: 0 !important;
}
body[data-reference-page="contact"] .contact-stage {
  width: 100% !important;
  max-width: none !important;
  min-height: 650px;
  margin: 0 !important;
  padding: clamp(62px, 8vw, 112px) max(32px, calc((100vw - 1180px) / 2));
  border-radius: 0 !important;
  overflow: hidden;
  background: #f4faf6 !important;
  box-shadow: none !important;
}
body[data-reference-page="contact"] .contact-stage::before {
  z-index: 0;
  background:
    linear-gradient(90deg, #f4faf6 0%, rgba(244,250,246,.98) 25%, rgba(244,250,246,.78) 47%, rgba(244,250,246,.20) 76%, rgba(244,250,246,0) 100%),
    url('../images/library/pexels-mikhail-nilov-7988792.jpg') center right / cover no-repeat !important;
}
body[data-reference-page="contact"] .contact-intro {
  min-height: 540px;
  padding: 8px 0 4px;
  background-image: none !important;
  background-color: transparent !important;
}
body[data-reference-page="contact"] .contact-intro h1 {
  color: #142019 !important;
  font-size: clamp(42px, 4.8vw, 68px) !important;
  line-height: 1.02 !important;
  letter-spacing: -.045em !important;
}
body[data-reference-page="contact"] .contact-intro > div > p {
  color: #6b7a72 !important;
  max-width: 520px;
}
body[data-reference-page="contact"] .contact-visual {
  background: rgba(255,255,255,.58) !important;
  border-color: #d7e9dc !important;
}
body[data-reference-page="contact"] .contact-link {
  color: #142019 !important;
  border-color: #d8e9dd !important;
}
body[data-reference-page="contact"] .contact-link-copy small {
  color: #6b7a72 !important;
}
body[data-reference-page="contact"] .contact-form-panel {
  align-self: center;
  background: rgba(255,255,255,.94) !important;
  border: 1px solid #dbe9df !important;
  border-radius: 24px !important;
  box-shadow: 0 22px 56px rgba(20,64,38,.13) !important;
  backdrop-filter: blur(8px);
  padding: clamp(24px, 3vw, 34px) !important;
}
body[data-reference-page="contact"] .contact-form-panel input,
body[data-reference-page="contact"] .contact-form-panel select,
body[data-reference-page="contact"] .contact-form-panel textarea {
  min-height: 44px;
  border-radius: 11px;
  background: #fbfefc;
}
body[data-reference-page="contact"] .contact-submit {
  border-radius: 999px;
  background: #142019 !important;
}

@media (max-width: 680px) {
  body[data-reference-page="contact"] .contact-main { padding: 0 0 40px !important; }
  body[data-reference-page="contact"] .contact-stage {
    min-height: 0;
    grid-template-columns: minmax(0, 1fr) !important;
    padding: 54px 20px 66px;
    border-radius: 0 !important;
  }
  body[data-reference-page="contact"] .contact-stage::before {
    background:
      linear-gradient(180deg, #f4faf6 0%, rgba(244,250,246,.96) 42%, rgba(244,250,246,.70) 100%),
      url('../images/library/pexels-mikhail-nilov-7988792.jpg') center / cover no-repeat !important;
  }
  body[data-reference-page="contact"] .contact-intro { min-height: 0; }
  body[data-reference-page="contact"] .contact-intro h1 { font-size: clamp(38px, 11vw, 52px) !important; }
  body[data-reference-page="contact"] .contact-form-panel {
    align-self: stretch;
    padding: 22px 16px !important;
    border-radius: 20px !important;
  }
}
