/* ============================= */
/* RESET */
/* ============================= */

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

body {
  min-height: 100vh;
  background: #030303;
  color: #f4f1ea;
  font-family: 'Inter', sans-serif;
  overflow-x: hidden;
}

a {
  color: inherit;
  text-decoration: none;
}

img {
  display: block;
  background: transparent;
}

/* ============================= */
/* NAVBAR */
/* ============================= */

.navbar {
  position: fixed;
  top: 0;
  left: 0;

  width: 100%;
  height: 112px;

  padding: 22px 72px;

  display: flex;
  align-items: center;
  justify-content: space-between;

  z-index: 1000;

  background:
    linear-gradient(
      to bottom,
      rgba(0,0,0,0.88),
      rgba(0,0,0,0.34),
      transparent
    );

  backdrop-filter: blur(14px);

  border-bottom: 1px solid rgba(255,255,255,0.06);
}

.brand {
  display: flex;
  align-items: center;
  gap: 0;
}

.brand-symbol {
  width: 108px;
  height: 108px;

  object-fit: contain;

  margin-right: -16px;

  transform: translateX(8px) translateY(-12px);

  background: transparent !important;
  border: none !important;
  outline: none !important;

  filter:
    brightness(1.15)
    contrast(1.1)
    drop-shadow(0 0 18px rgba(201,167,106,0.28));
}

.brand-text {
  display: flex;
  flex-direction: column;
}

.brand-text span {
  font-family: 'Cormorant Garamond', serif;

  font-size: 48px;
  font-weight: 600;
  letter-spacing: 9px;
  line-height: 0.86;

  color: #f4f1ea;
}

.brand-text small {
  margin-top: 13px;

  font-size: 11px;
  letter-spacing: 4.8px;
  color: rgba(201,167,106,0.86);
}

.nav-links {
  display: flex;
  align-items: center;
  gap: 42px;

  font-size: 14px;
  letter-spacing: 1.4px;
}

.nav-links a {
  position: relative;

  color: rgba(244,241,234,0.76);

  transition: 0.3s ease;
}

.nav-links a:hover,
.nav-links a.active {
  color: #d6b477;
}

.nav-links a::after {
  content: '';

  position: absolute;
  left: 50%;
  bottom: -14px;

  width: 0;
  height: 1px;

  background: #c9a76a;

  transform: translateX(-50%);

  transition: 0.35s ease;
}

.nav-links a:hover::after,
.nav-links a.active::after {
  width: 100%;
}

/* ============================= */
/* HOMEPAGE HERO */
/* ============================= */

.homepage {
  min-height: 100vh;
}

/* ============================= */
/* HOMEPAGE HERO — OBSIDIAN STONE */
/* ============================= */

.homepage .hero {
  position: relative;

  min-height: 100vh;

  padding: 190px 6.8% 54px;

  overflow: hidden;

  background:
    linear-gradient(
      180deg,
      rgba(0,0,0,0.22),
      rgba(0,0,0,0.38)
    ),
    #050505;
}

.hero::before {
  content: '';

  position: absolute;
  inset: 0;

  background:
    radial-gradient(
      ellipse at center,
      transparent 36%,
      rgba(0,0,0,0.42) 78%,
      rgba(0,0,0,0.78) 100%
    );

  pointer-events: none;
  z-index: 2;
}

.hero::after {
  content: '';

  position: absolute;

  left: 0;
  right: 0;
  bottom: 23%;

  height: 180px;

  background:
    radial-gradient(
      ellipse at center,
      rgba(201,167,106,0.12),
      transparent 68%
    );

  filter: blur(10px);

  opacity: 0.85;

  pointer-events: none;
  z-index: 1;
}

.hero-background {
  position: absolute;
  inset: 0;

  background:
    linear-gradient(
      90deg,
      rgba(0,0,0,0.08),
      rgba(0,0,0,0.02),
      rgba(0,0,0,0.18)
    );

  z-index: 3;
  pointer-events: none;
}

/* LARGE HERO SYMBOL */

.hero-symbol {
  position: absolute;

  right: 4.5%;
  top: 44%;

  width: 760px;
  max-width: 47vw;

  transform: translateY(-50%);

  opacity: 0.88;

  background: transparent !important;
  border: none !important;
  outline: none !important;
  box-shadow: none !important;

  object-fit: contain;

  filter:
    brightness(1.05)
    contrast(1.12)
    drop-shadow(0 0 34px rgba(201,167,106,0.26))
    drop-shadow(0 30px 90px rgba(0,0,0,0.75));

  z-index: 4;

  animation: symbolFloat 9s ease-in-out infinite;
}

@keyframes symbolFloat {
  0% {
    transform: translateY(-50%) translateX(0);
  }

  50% {
    transform: translateY(-52%) translateX(-8px);
  }

  100% {
    transform: translateY(-50%) translateX(0);
  }
}

/* HERO CONTENT */

.hero-content {
  position: relative;

  z-index: 6;

  max-width: 840px;
}

.hero-content h1 {
  font-family: 'Cormorant Garamond', serif;

  font-size: clamp(54px, 5.4vw, 92px);
  line-height: 1;
  letter-spacing: 5px;

  font-weight: 500;

  color: #e8dfcf;

  text-shadow:
    0 0 22px rgba(255,255,255,0.08),
    0 0 70px rgba(201,167,106,0.08),
    0 28px 80px rgba(0,0,0,0.95);
}

.gold-line {
  position: relative;

  width: 420px;
  max-width: 100%;
  height: 1px;

  margin: 44px 0 32px;

  background:
    linear-gradient(
      90deg,
      #c9a76a,
      rgba(201,167,106,0.28),
      transparent
    );

  box-shadow:
    0 0 18px rgba(201,167,106,0.28);

  overflow: hidden;
}

.gold-line::after {
  content: '';

  position: absolute;
  top: 0;
  left: -100%;

  width: 90px;
  height: 100%;

  background:
    linear-gradient(
      90deg,
      transparent,
      rgba(255,255,255,0.65),
      transparent
    );

  animation: lineSweep 5s ease-in-out infinite;
}

@keyframes lineSweep {
  0% {
    left: -100%;
  }

  45% {
    left: 120%;
  }

  100% {
    left: 120%;
  }
}

.hero-content p {
  max-width: 650px;

  font-size: 20px;
  line-height: 1.78;

  color: rgba(244,241,234,0.76);
}

.hero-actions {
  display: flex;
  gap: 28px;

  margin-top: 44px;
}

.btn {
  position: relative;

  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 26px;

  padding: 20px 34px;

  border: 1px solid rgba(201,167,106,0.62);

  font-size: 13px;
  font-weight: 700;
  letter-spacing: 2.5px;
  text-transform: uppercase;

  overflow: hidden;

  transition: 0.35s ease;
}

.btn::before {
  content: '';

  position: absolute;
  top: 0;
  left: -120%;

  width: 50%;
  height: 100%;

  background:
    linear-gradient(
      90deg,
      transparent,
      rgba(255,255,255,0.22),
      transparent
    );

  transform: skewX(-18deg);

  transition: 0.65s ease;
}

.btn:hover::before {
  left: 140%;
}

.btn:hover {
  transform: translateY(-3px);

  box-shadow:
    0 20px 44px rgba(0,0,0,0.42);
}

.btn-primary {
  background:
    linear-gradient(
      135deg,
      #ead39c 0%,
      #c9a76a 44%,
      #94703a 100%
    );

  color: #050505;
}

.btn-secondary {
  background:
    linear-gradient(
      145deg,
      rgba(255,255,255,0.035),
      rgba(255,255,255,0.008)
    );

  color: #d6b477;

  backdrop-filter: blur(8px);
}

/* HOME CARDS */

.home-card-row {
  position: relative;

  z-index: 6;

  display: grid;
  grid-template-columns: repeat(3, 1fr);

  margin-top: 110px;

  border: 1px solid rgba(201,167,106,0.24);

  background:
    linear-gradient(
      145deg,
      rgba(255,255,255,0.052),
      rgba(255,255,255,0.012)
    );

  backdrop-filter: blur(10px);

  box-shadow:
    0 35px 90px rgba(0,0,0,0.55),
    inset 0 1px 0 rgba(255,255,255,0.05);
}

.home-card {
  position: relative;

  display: grid;
  grid-template-columns: 86px 1fr;
  gap: 28px;

  min-height: 178px;

  padding: 42px 44px;

  border-right: 1px solid rgba(255,255,255,0.12);

  overflow: hidden;

  transition: 0.35s ease;
}

.home-card:last-child {
  border-right: none;
}

.home-card::after {
  content: '';

  position: absolute;
  top: 0;
  left: -120%;

  width: 50%;
  height: 100%;

  background:
    linear-gradient(
      90deg,
      transparent,
      rgba(255,255,255,0.045),
      transparent
    );

  transform: skewX(-18deg);

  transition: 0.75s ease;
}

.home-card:hover::after {
  left: 140%;
}

.home-card:hover {
  background:
    radial-gradient(
      circle at top left,
      rgba(201,167,106,0.08),
      transparent 34%
    ),
    rgba(255,255,255,0.035);
}

.home-card-icon {
  width: 66px;
  height: 66px;

  border: 1px solid rgba(201,167,106,0.82);
  border-radius: 50%;

  display: flex;
  align-items: center;
  justify-content: center;

  color: #d6b477;
  font-size: 28px;

  box-shadow:
    0 0 24px rgba(201,167,106,0.10);
}

.home-card h3 {
  margin-bottom: 14px;

  font-family: 'Cormorant Garamond', serif;

  font-size: 25px;
  letter-spacing: 3px;
  text-transform: uppercase;

  color: #f1e8d7;
}

.home-card p {
  max-width: 370px;

  color: rgba(244,241,234,0.64);

  font-size: 15px;
  line-height: 1.65;
}

.home-card span {
  display: inline-block;

  margin-top: 22px;

  color: #d6b477;

  font-size: 13px;
  letter-spacing: 2.4px;
  text-transform: uppercase;
}

/* ============================= */
/* RESPONSIVE */
/* ============================= */

@media (max-width: 1200px) {
  .navbar {
    padding: 22px 42px;
  }

  .nav-links {
    gap: 24px;
    font-size: 13px;
  }

  .brand-symbol {
    width: 82px;
    height: 82px;
    margin-right: -10px;
    transform: translateX(6px) translateY(-8px);
  }

  .brand-text span {
    font-size: 40px;
    letter-spacing: 7px;
  }

  .hero-symbol {
    width: 650px;
    max-width: none;
    right: -8%;
    opacity: 0.42;
  }

  .home-card-row {
    grid-template-columns: 1fr;
  }

  .home-card {
    border-right: none;
    border-bottom: 1px solid rgba(255,255,255,0.12);
  }

  .home-card:last-child {
    border-bottom: none;
  }
}

@media (max-width: 820px) {
  .navbar {
    height: auto;

    padding: 20px 28px;

    flex-direction: column;
    align-items: flex-start;
    gap: 20px;
  }

  .nav-links {
    flex-wrap: wrap;
    gap: 18px;
  }

  .brand-symbol {
    width: 70px;
    height: 70px;
    margin-right: -8px;
    transform: translateX(4px) translateY(-6px);
  }

  .brand-text span {
    font-size: 34px;
    letter-spacing: 6px;
  }

  .brand-text small {
    font-size: 9px;
    letter-spacing: 3px;
  }

  .hero {
    padding-top: 230px;
  }

  .hero-symbol {
    width: 520px;
    right: -32%;
    opacity: 0.24;
  }

  .hero-content h1 {
    font-size: 48px;
    letter-spacing: 3px;
  }

  .hero-actions {
    flex-direction: column;
    max-width: 340px;
  }

  .home-card {
    grid-template-columns: 1fr;
  }
}
/* FINAL NAVBAR LOGO SIZE FIX */

.brand-symbol {
  width: 84px;
  height: 84px;

  margin-right: -8px;

  transform: translateX(4px) translateY(-8px);

  object-fit: contain;

  background: transparent !important;
  border: none !important;
  outline: none !important;
  box-shadow: none !important;

  filter:
    brightness(1.12)
    contrast(1.08)
    drop-shadow(0 0 14px rgba(201,167,106,0.24));
}

.brand-text span {
  font-size: 46px;
  letter-spacing: 9px;
  line-height: 0.86;
}

.brand-text small {
  margin-top: 12px;
  font-size: 10px;
  letter-spacing: 4.5px;
}
/* HOMEPAGE SYMBOL SIZE + ELITE BACKGROUND */

.hero-symbol {
  right: 8%;
  top: 43%;

  width: 620px;
  max-width: 40vw;

  opacity: 0.9;

  background: transparent !important;
  border: none !important;
  outline: none !important;
  box-shadow: none !important;

  filter:
    brightness(1.08)
    contrast(1.14)
    drop-shadow(0 0 32px rgba(201,167,106,0.28))
    drop-shadow(0 34px 90px rgba(0,0,0,0.78));

  z-index: 5;
}

/* gold atmosphere behind symbol */

.symbol-ambient {
  position: absolute;

  right: 5.5%;
  top: 43%;

  width: 700px;
  height: 700px;

  transform: translateY(-50%);

  border-radius: 50%;

  background:
    radial-gradient(
      circle at center,
      rgba(201,167,106,0.18),
      rgba(201,167,106,0.075) 34%,
      rgba(255,255,255,0.026) 52%,
      transparent 72%
    );

  box-shadow:
    0 0 110px rgba(201,167,106,0.10),
    inset 0 0 90px rgba(255,255,255,0.025);

  z-index: 3;

  pointer-events: none;
}

/* subtle circular rings like the example */

.symbol-ambient::before,
.symbol-ambient::after {
  content: '';

  position: absolute;

  inset: 7%;

  border-radius: 50%;

  border: 1px solid rgba(201,167,106,0.12);
}

.symbol-ambient::after {
  inset: 18%;

  border-color: rgba(201,167,106,0.08);
}

/* subtle dark mountain silhouette behind symbol */

.hero-mountains {
  position: absolute;

  right: 0;
  bottom: 24%;

  width: 62vw;
  height: 240px;

  background:
    linear-gradient(
      to top,
      rgba(0,0,0,0.72),
      rgba(0,0,0,0.38),
      transparent
    );

  clip-path: polygon(
    0% 100%,
    8% 72%,
    16% 88%,
    27% 55%,
    39% 82%,
    52% 46%,
    66% 80%,
    78% 58%,
    90% 86%,
    100% 64%,
    100% 100%
  );

  opacity: 0.55;

  filter: blur(0.3px);

  z-index: 3;

  pointer-events: none;
}

.hero-mountains::after {
  content: '';

  position: absolute;

  inset: 0;

  background:
    radial-gradient(
      ellipse at center,
      rgba(201,167,106,0.16),
      transparent 62%
    );

  opacity: 0.45;
}
/* FINAL SYMBOL CLEANUP */

.brand-symbol,
.hero-symbol {
  background: transparent !important;
  border: none !important;
  outline: none !important;
  box-shadow: none !important;
  object-fit: contain;
}
/* FINAL LOGO + HERO SYMBOL FIX */

.brand-symbol {
  width: 76px;
  height: 76px;

  margin-right: -6px;

  transform: translateX(3px) translateY(-6px);

  object-fit: contain;

  background: transparent !important;
  border: none !important;
  outline: none !important;
  box-shadow: none !important;

  filter:
    brightness(1.08)
    contrast(1.08)
    drop-shadow(0 0 12px rgba(201,167,106,0.22));
}

.hero-symbol {
  right: 9%;
  top: 43%;

  width: 560px;
  max-width: 36vw;

  opacity: 0.92;

  object-fit: contain;

  background: transparent !important;
  border: none !important;
  outline: none !important;
  box-shadow: none !important;

  filter:
    brightness(1.08)
    contrast(1.12)
    drop-shadow(0 0 34px rgba(201,167,106,0.30))
    drop-shadow(0 34px 90px rgba(0,0,0,0.78));

  z-index: 5;
}

/* refined glow behind symbol */

.symbol-ambient {
  right: 6.4%;
  top: 43%;

  width: 650px;
  height: 650px;

  background:
    radial-gradient(
      circle at center,
      rgba(201,167,106,0.17),
      rgba(201,167,106,0.07) 34%,
      rgba(255,255,255,0.022) 52%,
      transparent 72%
    );
}
/* ============================= */
/* CORE VALUES PAGE */
/* ============================= */

.core-values-page {
  min-height: 100vh;
  background: #030303;
}

.subpage-hero {
  position: relative;

  min-height: 78vh;

  padding: 190px 6.8% 90px;

  display: flex;
  align-items: center;

  overflow: hidden;

  background:
    radial-gradient(
      circle at 70% 42%,
      rgba(201,167,106,0.14),
      transparent 29%
    ),
    radial-gradient(
      circle at 20% 60%,
      rgba(255,255,255,0.03),
      transparent 24%
    ),
    linear-gradient(
      112deg,
      #020202 0%,
      #070706 42%,
      #15120d 64%,
      #020202 100%
    );
}

.subpage-hero::before {
  content: '';

  position: absolute;
  inset: 0;

  background:
    radial-gradient(
      ellipse at center,
      transparent 36%,
      rgba(0,0,0,0.42) 78%,
      rgba(0,0,0,0.78) 100%
    );

  pointer-events: none;
  z-index: 2;
}

.subpage-background {
  position: absolute;
  inset: 0;

  background:
    linear-gradient(
      90deg,
      rgba(0,0,0,0.1),
      rgba(0,0,0,0.0),
      rgba(0,0,0,0.45)
    );

  z-index: 3;
  pointer-events: none;
}

.subpage-symbol {
  position: absolute;

  right: 9%;
  top: 43%;

  width: 540px;
  max-width: 35vw;

  transform: translateY(-50%);

  opacity: 0.42;

  object-fit: contain;

  background: transparent !important;
  border: none !important;
  outline: none !important;
  box-shadow: none !important;

  filter:
    brightness(1.08)
    contrast(1.12)
    drop-shadow(0 0 34px rgba(201,167,106,0.30))
    drop-shadow(0 34px 90px rgba(0,0,0,0.78));

  z-index: 5;

  animation: symbolFloat 9s ease-in-out infinite;
}

.subpage-ambient {
  right: 6.8%;
  top: 43%;

  width: 620px;
  height: 620px;

  opacity: 0.45;
}

.subpage-content {
  position: relative;

  z-index: 6;

  max-width: 820px;
}

.section-kicker {
  margin-bottom: 26px;

  color: rgba(201,167,106,0.9);

  font-size: 13px;
  font-weight: 600;
  letter-spacing: 4.5px;
  text-transform: uppercase;
}

.subpage-content h1 {
  font-family: 'Cormorant Garamond', serif;

  font-size: clamp(64px, 6.4vw, 110px);
  line-height: 0.95;
  letter-spacing: 6px;

  font-weight: 500;

  color: #e8dfcf;

  text-shadow:
    0 0 22px rgba(255,255,255,0.08),
    0 0 70px rgba(201,167,106,0.08),
    0 28px 80px rgba(0,0,0,0.95);
}

.subpage-content p {
  max-width: 680px;

  font-size: 20px;
  line-height: 1.78;

  color: rgba(244,241,234,0.76);
}

/* PRINCIPLES */

.principles-section {
  position: relative;

  padding: 110px 6.8% 130px;

  background:
    radial-gradient(
      circle at 50% 0%,
      rgba(201,167,106,0.06),
      transparent 34%
    ),
    #030303;
}

.section-intro {
  max-width: 960px;
  margin-bottom: 72px;
}

.section-intro h2 {
  font-family: 'Cormorant Garamond', serif;

  font-size: clamp(46px, 4.5vw, 78px);
  line-height: 0.96;
  letter-spacing: 5px;

  font-weight: 500;

  color: #e8dfcf;
}

.section-intro p {
  max-width: 820px;

  margin-top: 28px;

  color: rgba(244,241,234,0.66);

  font-size: 18px;
  line-height: 1.8;
}

.principles-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);

  border: 1px solid rgba(201,167,106,0.22);

  background:
    linear-gradient(
      145deg,
      rgba(255,255,255,0.052),
      rgba(255,255,255,0.012)
    );

  backdrop-filter: blur(10px);

  box-shadow:
    0 35px 90px rgba(0,0,0,0.55),
    inset 0 1px 0 rgba(255,255,255,0.05);
}

.principle-card {
  position: relative;

  min-height: 360px;

  padding: 44px 42px;

  border-right: 1px solid rgba(255,255,255,0.11);
  border-bottom: 1px solid rgba(255,255,255,0.11);

  overflow: hidden;

  transition: 0.35s ease;
}

.principle-card:nth-child(3),
.principle-card:nth-child(6) {
  border-right: none;
}

.principle-card:nth-child(n+4) {
  border-bottom: none;
}

.principle-card::after {
  content: '';

  position: absolute;
  top: 0;
  left: -120%;

  width: 50%;
  height: 100%;

  background:
    linear-gradient(
      90deg,
      transparent,
      rgba(255,255,255,0.045),
      transparent
    );

  transform: skewX(-18deg);

  transition: 0.75s ease;
}

.principle-card:hover::after {
  left: 140%;
}

.principle-card:hover {
  background:
    radial-gradient(
      circle at top left,
      rgba(201,167,106,0.08),
      transparent 34%
    ),
    rgba(255,255,255,0.035);
}

.principle-card span {
  display: block;

  margin-bottom: 28px;

  font-family: 'Cormorant Garamond', serif;

  font-size: 56px;
  line-height: 1;

  color: rgba(201,167,106,0.48);
}

.principle-card h3 {
  margin-bottom: 18px;

  font-family: 'Cormorant Garamond', serif;

  font-size: 30px;
  letter-spacing: 3px;
  text-transform: uppercase;

  color: #f1e8d7;
}

.principle-card p {
  color: rgba(244,241,234,0.62);

  font-size: 15px;
  line-height: 1.72;
}

.principle-card .principle-short {
  margin-bottom: 18px;

  color: rgba(244,241,234,0.86);

  font-size: 17px;
  line-height: 1.65;
}

/* CORE VALUES RESPONSIVE */

@media (max-width: 1100px) {
  .principles-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .principle-card:nth-child(3),
  .principle-card:nth-child(6) {
    border-right: 1px solid rgba(255,255,255,0.11);
  }

  .principle-card:nth-child(even) {
    border-right: none;
  }

  .principle-card:nth-child(n+5) {
    border-bottom: none;
  }

  .subpage-symbol {
    right: -8%;
    width: 650px;
    max-width: none;
    opacity: 0.22;
  }
}

@media (max-width: 760px) {
  .subpage-hero {
    padding-top: 230px;
  }

  .principles-grid {
    grid-template-columns: 1fr;
  }

  .principle-card {
    border-right: none !important;
    border-bottom: 1px solid rgba(255,255,255,0.11) !important;
  }

  .principle-card:last-child {
    border-bottom: none !important;
  }
}
/* CORE VALUES SYMBOL POSITION FIX */

.core-values-page .subpage-symbol {
  top: 65%;
}

.core-values-page .subpage-ambient {
  top: 65%;
}
/* CORE VALUES SYMBOL BRIGHTNESS FIX */

.core-values-page .subpage-symbol {
  top: 60%;

  opacity: 0.88;

  filter:
    brightness(1.12)
    contrast(1.14)
    drop-shadow(0 0 34px rgba(201,167,106,0.32))
    drop-shadow(0 34px 90px rgba(0,0,0,0.78));
}

.core-values-page .subpage-ambient {
  top: 60%;

  opacity: 0.85;
}
/* ============================= */
/* CAPABILITIES PAGE */
/* ============================= */

.capabilities-page {
  min-height: 100vh;
  background: #030303;
}

/* Keep capabilities symbol aligned like the fixed Core Values symbol */

.capabilities-page .subpage-symbol {
  top: 52%;

  opacity: 0.88;

  filter:
    brightness(1.12)
    contrast(1.14)
    drop-shadow(0 0 34px rgba(201,167,106,0.32))
    drop-shadow(0 34px 90px rgba(0,0,0,0.78));
}

.capabilities-page .subpage-ambient {
  top: 52%;
  opacity: 0.85;
}

/* Capabilities content */

.capabilities-section {
  position: relative;

  padding: 110px 6.8% 125px;

  background:
    radial-gradient(
      circle at 78% 10%,
      rgba(201,167,106,0.06),
      transparent 34%
    ),
    #030303;
}

.capabilities-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);

  gap: 34px;
}

.capability-card {
  position: relative;

  display: grid;
  grid-template-columns: 82px 1fr;
  gap: 30px;

  min-height: 350px;

  padding: 44px 42px;

  border: 1px solid rgba(201,167,106,0.22);

  background:
    linear-gradient(
      145deg,
      rgba(255,255,255,0.052),
      rgba(255,255,255,0.012)
    );

  backdrop-filter: blur(10px);

  overflow: hidden;

  box-shadow:
    0 30px 80px rgba(0,0,0,0.48),
    inset 0 1px 0 rgba(255,255,255,0.05);

  transition: 0.35s ease;
}

.capability-card::after {
  content: '';

  position: absolute;
  top: 0;
  left: -120%;

  width: 50%;
  height: 100%;

  background:
    linear-gradient(
      90deg,
      transparent,
      rgba(255,255,255,0.045),
      transparent
    );

  transform: skewX(-18deg);

  transition: 0.75s ease;
}

.capability-card:hover::after {
  left: 140%;
}

.capability-card:hover {
  transform: translateY(-6px);

  border-color: rgba(201,167,106,0.38);

  background:
    radial-gradient(
      circle at top left,
      rgba(201,167,106,0.08),
      transparent 34%
    ),
    rgba(255,255,255,0.035);

  box-shadow:
    0 38px 90px rgba(0,0,0,0.58),
    0 0 42px rgba(201,167,106,0.08);
}

.capability-icon {
  width: 66px;
  height: 66px;

  border: 1px solid rgba(201,167,106,0.82);
  border-radius: 50%;

  display: flex;
  align-items: center;
  justify-content: center;

  color: #d6b477;
  font-size: 28px;

  box-shadow:
    0 0 24px rgba(201,167,106,0.10);
}

.capability-content span {
  display: block;

  margin-bottom: 18px;

  font-family: 'Cormorant Garamond', serif;

  font-size: 48px;
  line-height: 1;

  color: rgba(201,167,106,0.50);
}

.capability-content h3 {
  margin-bottom: 18px;

  font-family: 'Cormorant Garamond', serif;

  font-size: 32px;
  letter-spacing: 3px;
  text-transform: uppercase;

  color: #f1e8d7;
}

.capability-content p {
  margin-bottom: 26px;

  color: rgba(244,241,234,0.66);

  font-size: 16px;
  line-height: 1.72;
}

.capability-content ul {
  list-style: none;
}

.capability-content li {
  position: relative;

  margin-bottom: 12px;
  padding-left: 22px;

  color: rgba(244,241,234,0.72);

  font-size: 14px;
  line-height: 1.5;
}

.capability-content li::before {
  content: '';

  position: absolute;

  left: 0;
  top: 8px;

  width: 7px;
  height: 7px;

  border: 1px solid #c9a76a;

  transform: rotate(45deg);
}

/* Closing panel */

.capabilities-closing {
  padding: 0 6.8% 130px;

  background: #030303;
}

.closing-panel {
  position: relative;

  padding: 72px;

  border: 1px solid rgba(201,167,106,0.22);

  background:
    radial-gradient(
      circle at 78% 38%,
      rgba(201,167,106,0.07),
      transparent 30%
    ),
    linear-gradient(
      145deg,
      rgba(255,255,255,0.052),
      rgba(255,255,255,0.012)
    );

  box-shadow:
    0 35px 90px rgba(0,0,0,0.55),
    inset 0 1px 0 rgba(255,255,255,0.05);

  overflow: hidden;
}

.closing-panel h2 {
  max-width: 900px;

  margin-bottom: 24px;

  font-family: 'Cormorant Garamond', serif;

  font-size: clamp(46px, 4.5vw, 78px);
  line-height: 0.96;
  letter-spacing: 5px;

  font-weight: 500;

  color: #e8dfcf;
}

.closing-panel p {
  max-width: 760px;

  margin-bottom: 36px;

  color: rgba(244,241,234,0.66);

  font-size: 18px;
  line-height: 1.8;
}

/* Capabilities responsive */

@media (max-width: 1050px) {
  .capabilities-grid {
    grid-template-columns: 1fr;
  }

  .capability-card {
    min-height: auto;
  }
}

@media (max-width: 760px) {
  .capability-card {
    grid-template-columns: 1fr;
    padding: 36px 30px;
  }

  .closing-panel {
    padding: 44px 32px;
  }
}
/* CAPABILITIES SYMBOL POSITION FIX */

.capabilities-page .subpage-symbol {
  top: 60%;
}

.capabilities-page .subpage-ambient {
  top: 60%;
}
/* ============================= */
/* ABOUT THE OWNER PAGE */
/* ============================= */

.owner-page {
  min-height: 100vh;
  background: #030303;
}

/* Owner hero symbol alignment */

.owner-page .subpage-symbol {
  top: 56%;

  opacity: 0.88;

  filter:
    brightness(1.12)
    contrast(1.14)
    drop-shadow(0 0 34px rgba(201,167,106,0.32))
    drop-shadow(0 34px 90px rgba(0,0,0,0.78));
}

.owner-page .subpage-ambient {
  top: 56%;
  opacity: 0.85;
}

/* Main owner section */

.owner-section {
  position: relative;

  padding: 110px 6.8% 130px;

  background:
    radial-gradient(
      circle at 75% 10%,
      rgba(201,167,106,0.06),
      transparent 34%
    ),
    #030303;
}

.owner-main-panel {
  position: relative;

  display: grid;
  grid-template-columns: 1fr 0.72fr;
  gap: 70px;

  align-items: center;

  padding: 72px;

  border: 1px solid rgba(201,167,106,0.22);

  background:
    linear-gradient(
      145deg,
      rgba(255,255,255,0.052),
      rgba(255,255,255,0.012)
    );

  backdrop-filter: blur(10px);

  box-shadow:
    0 35px 90px rgba(0,0,0,0.55),
    inset 0 1px 0 rgba(255,255,255,0.05);

  overflow: hidden;
}

.owner-main-panel::before {
  content: '';

  position: absolute;
  inset: 0;

  background:
    radial-gradient(
      circle at 78% 42%,
      rgba(201,167,106,0.08),
      transparent 34%
    );

  pointer-events: none;
}

.owner-copy {
  position: relative;
  z-index: 2;
}

.owner-copy h2 {
  margin-bottom: 34px;

  font-family: 'Cormorant Garamond', serif;

  font-size: clamp(48px, 5vw, 86px);
  line-height: 0.96;
  letter-spacing: 5px;

  font-weight: 500;

  color: #e8dfcf;
}

.owner-copy p {
  max-width: 760px;

  margin-bottom: 24px;

  color: rgba(244,241,234,0.70);

  font-size: 18px;
  line-height: 1.8;
}

.owner-signature {
  margin-top: 42px;

  font-family: 'Cormorant Garamond', serif;
  font-style: italic;

  font-size: clamp(42px, 4vw, 72px);
  line-height: 1;

  color: #c9a76a;

  opacity: 0.95;
}

/* Symbol feature */

.owner-symbol-feature {
  position: relative;
  z-index: 2;

  min-height: 420px;

  display: flex;
  align-items: center;
  justify-content: center;
}

.owner-symbol-feature img {
  position: relative;

  width: min(430px, 32vw);

  object-fit: contain;

  background: transparent !important;
  border: none !important;
  box-shadow: none !important;

  filter:
    brightness(1.1)
    contrast(1.12)
    drop-shadow(0 0 34px rgba(201,167,106,0.30))
    drop-shadow(0 34px 90px rgba(0,0,0,0.78));

  z-index: 2;
}

.owner-symbol-glow {
  position: absolute;

  width: 500px;
  height: 500px;

  border-radius: 50%;

  background:
    radial-gradient(
      circle at center,
      rgba(201,167,106,0.18),
      rgba(201,167,106,0.07) 34%,
      rgba(255,255,255,0.022) 52%,
      transparent 72%
    );

  box-shadow:
    0 0 110px rgba(201,167,106,0.10),
    inset 0 0 90px rgba(255,255,255,0.025);

  z-index: 1;
}

/* Owner value cards */

.owner-values-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);

  margin-top: 44px;

  border: 1px solid rgba(201,167,106,0.22);

  background:
    linear-gradient(
      145deg,
      rgba(255,255,255,0.052),
      rgba(255,255,255,0.012)
    );

  backdrop-filter: blur(10px);

  box-shadow:
    0 35px 90px rgba(0,0,0,0.55),
    inset 0 1px 0 rgba(255,255,255,0.05);
}

.owner-value-card {
  position: relative;

  min-height: 230px;

  padding: 42px 40px;

  border-right: 1px solid rgba(255,255,255,0.11);

  overflow: hidden;

  transition: 0.35s ease;
}

.owner-value-card:last-child {
  border-right: none;
}

.owner-value-card:hover {
  background:
    radial-gradient(
      circle at top left,
      rgba(201,167,106,0.08),
      transparent 34%
    ),
    rgba(255,255,255,0.035);
}

.owner-value-card span {
  display: block;

  margin-bottom: 18px;

  font-family: 'Cormorant Garamond', serif;

  font-size: 46px;
  line-height: 1;

  color: rgba(201,167,106,0.50);
}

.owner-value-card h3 {
  margin-bottom: 16px;

  font-family: 'Cormorant Garamond', serif;

  font-size: 27px;
  letter-spacing: 3px;
  text-transform: uppercase;

  color: #f1e8d7;
}

.owner-value-card p {
  color: rgba(244,241,234,0.64);

  font-size: 15px;
  line-height: 1.72;
}

/* About responsive */

@media (max-width: 1050px) {
  .owner-main-panel {
    grid-template-columns: 1fr;
    padding: 52px;
  }

  .owner-symbol-feature img {
    width: min(390px, 70vw);
  }

  .owner-values-grid {
    grid-template-columns: 1fr;
  }

  .owner-value-card {
    border-right: none;
    border-bottom: 1px solid rgba(255,255,255,0.11);
  }

  .owner-value-card:last-child {
    border-bottom: none;
  }
}

@media (max-width: 760px) {
  .owner-main-panel {
    padding: 42px 30px;
  }

  .owner-symbol-feature {
    min-height: 320px;
  }

  .owner-symbol-glow {
    width: 360px;
    height: 360px;
  }
}
/* ABOUT OWNER SYMBOL POSITION FIX */

.owner-page .subpage-symbol {
  top: 60%;
}

.owner-page .subpage-ambient {
  top: 60%;
}
/* ============================= */
/* CONTACT PAGE */
/* ============================= */

.contact-page {
  min-height: 100vh;
  background: #030303;
}

/* Contact hero symbol alignment */

.contact-page .subpage-symbol {
  top: 56%;

  opacity: 0.88;

  filter:
    brightness(1.12)
    contrast(1.14)
    drop-shadow(0 0 34px rgba(201,167,106,0.32))
    drop-shadow(0 34px 90px rgba(0,0,0,0.78));
}

.contact-page .subpage-ambient {
  top: 56%;
  opacity: 0.85;
}

/* Contact main section */

.contact-section {
  position: relative;

  padding: 110px 6.8% 130px;

  background:
    radial-gradient(
      circle at 75% 10%,
      rgba(201,167,106,0.06),
      transparent 34%
    ),
    #030303;
}

.contact-layout {
  display: grid;
  grid-template-columns: 0.9fr 1.1fr;
  gap: 80px;

  align-items: start;
}

.contact-info h2 {
  margin-bottom: 30px;

  font-family: 'Cormorant Garamond', serif;

  font-size: clamp(48px, 5vw, 84px);
  line-height: 0.96;
  letter-spacing: 5px;

  font-weight: 500;

  color: #e8dfcf;
}

.contact-info > p {
  max-width: 660px;

  color: rgba(244,241,234,0.70);

  font-size: 18px;
  line-height: 1.8;
}

.contact-detail-list {
  display: grid;
  gap: 28px;

  margin-top: 54px;
}

.contact-detail {
  padding-bottom: 24px;

  border-bottom: 1px solid rgba(255,255,255,0.10);
}

.contact-detail span {
  display: block;

  margin-bottom: 10px;

  color: rgba(201,167,106,0.9);

  font-size: 12px;
  font-weight: 600;
  letter-spacing: 4px;
  text-transform: uppercase;
}

.contact-detail a,
.contact-detail p {
  color: rgba(244,241,234,0.76);

  font-size: 18px;
  line-height: 1.6;

  transition: 0.3s ease;
}

.contact-detail a:hover {
  color: #d6b477;
}

/* Contact form */

.contact-form-panel {
  position: relative;

  padding: 52px;

  border: 1px solid rgba(201,167,106,0.22);

  background:
    linear-gradient(
      145deg,
      rgba(255,255,255,0.052),
      rgba(255,255,255,0.012)
    );

  backdrop-filter: blur(10px);

  box-shadow:
    0 35px 90px rgba(0,0,0,0.55),
    inset 0 1px 0 rgba(255,255,255,0.05);

  overflow: hidden;
}

.contact-form-panel::before {
  content: '';

  position: absolute;
  inset: 0;

  background:
    radial-gradient(
      circle at 78% 28%,
      rgba(201,167,106,0.08),
      transparent 34%
    );

  pointer-events: none;
}

.contact-form {
  position: relative;
  z-index: 2;
}

.form-row {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 22px;
}

.form-group {
  margin-bottom: 24px;
}

.form-group label {
  display: block;

  margin-bottom: 10px;

  color: rgba(201,167,106,0.9);

  font-size: 12px;
  font-weight: 600;
  letter-spacing: 4px;
  text-transform: uppercase;
}

.form-group input,
.form-group textarea {
  width: 100%;

  padding: 17px 18px;

  border: 1px solid rgba(201,167,106,0.34);

  background:
    linear-gradient(
      145deg,
      rgba(255,255,255,0.035),
      rgba(0,0,0,0.28)
    );

  color: #f4f1ea;

  font-family: 'Inter', sans-serif;
  font-size: 15px;

  outline: none;

  transition: 0.3s ease;
}

.form-group input::placeholder,
.form-group textarea::placeholder {
  color: rgba(244,241,234,0.38);
}

.form-group input:focus,
.form-group textarea:focus {
  border-color: rgba(201,167,106,0.78);

  box-shadow:
    0 0 0 3px rgba(201,167,106,0.08);
}

.contact-submit {
  position: relative;

  width: 100%;

  display: flex;
  align-items: center;
  justify-content: center;
  gap: 24px;

  padding: 20px 28px;

  border: 1px solid rgba(201,167,106,0.62);

  background:
    linear-gradient(
      135deg,
      #ead39c 0%,
      #c9a76a 44%,
      #94703a 100%
    );

  color: #050505;

  font-size: 13px;
  font-weight: 700;
  letter-spacing: 2.6px;
  text-transform: uppercase;

  cursor: pointer;

  overflow: hidden;

  transition: 0.35s ease;
}

.contact-submit::before {
  content: '';

  position: absolute;
  top: 0;
  left: -120%;

  width: 50%;
  height: 100%;

  background:
    linear-gradient(
      90deg,
      transparent,
      rgba(255,255,255,0.22),
      transparent
    );

  transform: skewX(-18deg);

  transition: 0.65s ease;
}

.contact-submit:hover::before {
  left: 140%;
}

.contact-submit:hover {
  transform: translateY(-3px);

  box-shadow:
    0 20px 44px rgba(0,0,0,0.42);
}

.confidential-note {
  margin-top: 24px;

  color: rgba(244,241,234,0.56);

  font-size: 14px;
  line-height: 1.65;

  text-align: center;
}

/* Contact responsive */

@media (max-width: 1050px) {
  .contact-layout {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 760px) {
  .form-row {
    grid-template-columns: 1fr;
  }

  .contact-form-panel {
    padding: 38px 30px;
  }
}
/* CONTACT PAGE SYMBOL POSITION FIX */

.contact-page .subpage-symbol {
  top: 62%;
}

.contact-page .subpage-ambient {
  top: 62%;
}
/* ============================= */
/* PREMIUM FOOTER */
/* ============================= */

.site-footer {
  position: relative;

  padding: 120px 6.8% 42px;

  background:
    radial-gradient(
      circle at 50% 8%,
      rgba(201,167,106,0.08),
      transparent 34%
    ),
    linear-gradient(
      180deg,
      #030303 0%,
      #010101 100%
    );

  border-top: 1px solid rgba(201,167,106,0.16);

  overflow: hidden;
}

.site-footer::before {
  content: '';

  position: absolute;
  inset: 0;

  background:
    linear-gradient(
      90deg,
      rgba(255,255,255,0.015),
      transparent 25%,
      rgba(255,255,255,0.01)
    );

  pointer-events: none;
}

.footer-cta {
  position: relative;
  z-index: 2;

  max-width: 920px;

  margin: 0 auto 105px;

  text-align: center;
}

.footer-symbol {
  width: 128px;
  height: 128px;

  margin: 0 auto 34px;

  object-fit: contain;

  background: transparent !important;
  border: none !important;
  box-shadow: none !important;

  filter:
    brightness(1.08)
    contrast(1.12)
    drop-shadow(0 0 34px rgba(201,167,106,0.28));
}

.footer-cta h2 {
  margin-bottom: 28px;

  font-family: 'Cormorant Garamond', serif;

  font-size: clamp(46px, 5vw, 86px);
  line-height: 0.98;
  letter-spacing: 5px;

  font-weight: 500;

  color: #e8dfcf;

  text-shadow:
    0 0 24px rgba(255,255,255,0.06),
    0 24px 70px rgba(0,0,0,0.88);
}

.footer-cta p {
  max-width: 720px;

  margin: 0 auto 38px;

  color: rgba(244,241,234,0.68);

  font-size: 18px;
  line-height: 1.75;
}

.footer-bottom {
  position: relative;
  z-index: 2;

  display: grid;
  grid-template-columns: 1fr auto 1fr;
  gap: 42px;

  align-items: end;

  padding-top: 38px;

  border-top: 1px solid rgba(255,255,255,0.10);
}

.footer-name {
  font-family: 'Cormorant Garamond', serif;

  font-size: 34px;
  letter-spacing: 7px;

  color: #f4f1ea;
}

.footer-brand span {
  display: block;

  margin-top: 8px;

  color: rgba(201,167,106,0.82);

  font-size: 10px;
  letter-spacing: 3px;
}

.footer-links {
  display: flex;
  gap: 26px;

  font-size: 13px;
  letter-spacing: 1px;
}

.footer-links a,
.footer-contact a {
  color: rgba(244,241,234,0.62);

  transition: 0.3s ease;
}

.footer-links a:hover,
.footer-contact a:hover {
  color: #d6b477;
}

.footer-contact {
  display: flex;
  flex-direction: column;
  gap: 8px;

  text-align: right;

  font-size: 13px;
}

/* FOOTER RESPONSIVE */

@media (max-width: 900px) {
  .footer-bottom {
    grid-template-columns: 1fr;

    text-align: center;
  }

  .footer-links {
    justify-content: center;
    flex-wrap: wrap;
  }

  .footer-contact {
    text-align: center;
  }
}
/* ============================= */
/* HOMEPAGE STANDARD SECTION */
/* ============================= */

.homepage-standard {
  position: relative;

  display: grid;
  grid-template-columns: 1fr 0.9fr;
  gap: 80px;

  padding: 120px 6.8% 130px;

  background:
    linear-gradient(
      180deg,
      rgba(8,8,8,0.96) 0%,
      rgba(12,10,8,0.98) 100%
    );

  border-top: 1px solid rgba(201,167,106,0.14);

  overflow: hidden;
}

.homepage-standard::before {
  content: '';

  position: absolute;
  inset: 0;

  background:
    radial-gradient(
      circle at 78% 18%,
      rgba(201,167,106,0.05),
      transparent 34%
    ),
    linear-gradient(
      135deg,
      transparent 0%,
      rgba(255,255,255,0.012) 26%,
      transparent 52%,
      rgba(201,167,106,0.02) 78%,
      transparent 100%
    );

  pointer-events: none;
}

.standard-left,
.standard-right {
  position: relative;
  z-index: 2;
}

.standard-left h2 {
  font-family: 'Cormorant Garamond', serif;

  font-size: clamp(42px, 4.4vw, 76px);
  line-height: 0.98;
  letter-spacing: 4.5px;

  font-weight: 500;

  color: #e8dfcf;

  text-shadow:
    0 0 24px rgba(255,255,255,0.06),
    0 24px 70px rgba(0,0,0,0.88);
}

.standard-right p {
  max-width: 720px;

  margin-bottom: 44px;

  color: rgba(244,241,234,0.70);

  font-size: 19px;
  line-height: 1.82;
}

.standard-points {
  display: grid;
  gap: 18px;
}

.standard-point {
  display: flex;
  align-items: center;
  justify-content: space-between;

  padding: 22px 0;

  border-bottom: 1px solid rgba(255,255,255,0.11);
}

.standard-point span {
  color: rgba(201,167,106,0.72);

  font-family: 'Cormorant Garamond', serif;
  font-size: 32px;
}

.standard-point strong {
  color: #f1e8d7;

  font-family: 'Cormorant Garamond', serif;
  font-size: 26px;
  font-weight: 500;
  letter-spacing: 2px;
  text-transform: uppercase;
}

/* Responsive */

@media (max-width: 950px) {
  .homepage-standard {
    grid-template-columns: 1fr;
    gap: 42px;
  }
}

@media (max-width: 700px) {
  .homepage-standard {
    padding: 90px 6.8% 100px;
  }

  .standard-point {
    align-items: flex-start;
    flex-direction: column;
    gap: 10px;
  }
}
/* ============================= */
/* PREMIUM INTERACTION LAYER */
/* ============================= */

/* Top scroll progress line */

.scroll-progress {
  position: fixed;

  top: 0;
  left: 0;

  width: 0%;
  height: 2px;

  background:
    linear-gradient(
      90deg,
      transparent,
      rgba(201,167,106,0.95),
      transparent
    );

  box-shadow:
    0 0 18px rgba(201,167,106,0.45);

  z-index: 99999;

  pointer-events: none;
}

/* Cursor glow */

.cursor-glow {
  position: fixed;

  width: 420px;
  height: 420px;

  border-radius: 50%;

  background:
    radial-gradient(
      circle,
      rgba(201,167,106,0.06),
      transparent 62%
    );

  pointer-events: none;

  transform: translate(-50%, -50%);

  opacity: 0;

  mix-blend-mode: screen;

  z-index: 2;

  transition:
    opacity 0.35s ease;
}

/* Keep page content above cursor glow */

.navbar,
.hero,
.subpage-hero,
.homepage-standard,
.principles-section,
.capabilities-section,
.owner-section,
.contact-section,
.site-footer {
  position: relative;
  z-index: 5;
}

/* Scroll reveal */

.reveal-hidden {
  opacity: 0;
  transform: translateY(28px);

  transition:
    opacity 0.9s ease,
    transform 0.9s ease;
}

.reveal-visible {
  opacity: 1;
  transform: translateY(0);
}

/* Premium card sheen */

.home-card,
.principle-card,
.capability-card,
.owner-value-card,
.owner-main-panel,
.contact-form-panel,
.closing-panel,
.footer-cta {
  position: relative;
  overflow: hidden;
}

.home-card::before,
.principle-card::before,
.capability-card::before,
.owner-value-card::before,
.owner-main-panel::after,
.contact-form-panel::after,
.closing-panel::after,
.footer-cta::after {
  content: '';

  position: absolute;

  top: 0;
  left: -130%;

  width: 55%;
  height: 100%;

  background:
    linear-gradient(
      90deg,
      transparent,
      rgba(255,255,255,0.045),
      transparent
    );

  transform: skewX(-18deg);

  transition: 0.85s ease;

  pointer-events: none;
}

.home-card:hover::before,
.principle-card:hover::before,
.capability-card:hover::before,
.owner-value-card:hover::before,
.owner-main-panel:hover::after,
.contact-form-panel:hover::after,
.closing-panel:hover::after,
.footer-cta:hover::after {
  left: 145%;
}

/* Slight premium lift */

.home-card:hover,
.principle-card:hover,
.capability-card:hover,
.owner-value-card:hover {
  transform: translateY(-6px);
}

/* Refined nav hover */

.nav-links a {
  transition:
    color 0.3s ease,
    letter-spacing 0.3s ease;
}

.nav-links a:hover {
  letter-spacing: 1.8px;
}

/* Button polish */

.btn,
.contact-submit {
  will-change: transform;
}

.btn:hover,
.contact-submit:hover {
  letter-spacing: 3px;
}

/* Mobile / accessibility */

@media (max-width: 900px) {
  .cursor-glow {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .cursor-glow,
  .scroll-progress {
    display: none;
  }

  *,
  *::before,
  *::after {
    animation: none !important;
    transition: none !important;
  }
}
/* CONTACT PAGE SYMBOL POSITION REFINEMENT */

.contact-page .subpage-symbol {
  top: 56%;
}

.contact-page .subpage-ambient {
  top: 56%;
}
/* HOMEPAGE SYMBOL POSITION REFINEMENT */

.homepage .hero-symbol {
  top: 38%;
}

.homepage .symbol-ambient {
  top: 38%;
}
/* ============================= */
/* HOMEPAGE OBSIDIAN STONE BACKGROUND */
/* ============================= */

/* ============================= */
/* FULL HOMEPAGE OBSIDIAN STONE */
/* ============================= */

.obsidian-stone-layer {
  position: absolute;
  inset: 0;

  z-index: 0;
  pointer-events: none;

  background:
    radial-gradient(
      circle at 72% 38%,
      rgba(201,167,106,0.12),
      transparent 28%
    ),

    radial-gradient(
      circle at 18% 70%,
      rgba(255,255,255,0.03),
      transparent 24%
    ),

    linear-gradient(
      135deg,
      rgba(255,255,255,0.02) 0%,
      transparent 16%,
      rgba(255,255,255,0.012) 34%,
      transparent 50%,
      rgba(201,167,106,0.03) 70%,
      transparent 100%
    ),

    linear-gradient(
      120deg,
      #030303 0%,
      #0a0908 20%,
      #14110d 42%,
      #090807 62%,
      #18130e 82%,
      #030303 100%
    );
}

.obsidian-stone-layer::before {
  content: '';

  position: absolute;
  inset: 0;

  background:
    linear-gradient(
      128deg,
      transparent 0%,
      transparent 20%,
      rgba(255,255,255,0.03) 20.4%,
      transparent 21%,
      transparent 100%
    ),

    linear-gradient(
      38deg,
      transparent 0%,
      transparent 48%,
      rgba(201,167,106,0.04) 48.4%,
      transparent 49.1%,
      transparent 100%
    ),

    linear-gradient(
      158deg,
      transparent 0%,
      transparent 65%,
      rgba(255,255,255,0.02) 65.4%,
      transparent 66%,
      transparent 100%
    ),

    linear-gradient(
      82deg,
      transparent 0%,
      transparent 74%,
      rgba(201,167,106,0.03) 74.4%,
      transparent 75%,
      transparent 100%
    );

  opacity: 0.58;
}

.obsidian-stone-layer::after {
  content: '';

  position: absolute;
  inset: 0;

  background:
    radial-gradient(
      ellipse at center,
      transparent 28%,
      rgba(0,0,0,0.24) 64%,
      rgba(0,0,0,0.58) 100%
    ),

    linear-gradient(
      90deg,
      rgba(0,0,0,0.16),
      transparent 42%,
      rgba(0,0,0,0.32)
    );

  opacity: 0.95;
}

/* let stone show through more clearly */

.homepage .hero {
  background: #020202 !important;
}
/* ============================= */
/* HOMEPAGE OBSIDIAN STONE IMAGE BACKGROUND */
/* ============================= */

.homepage .hero {
  background:
    linear-gradient(
      90deg,
      rgba(0,0,0,0.78) 0%,
      rgba(0,0,0,0.62) 34%,
      rgba(0,0,0,0.22) 66%,
      rgba(0,0,0,0.38) 100%
    ),
    linear-gradient(
      180deg,
      rgba(0,0,0,0.18) 0%,
      rgba(0,0,0,0.46) 100%
    ),
    url('obsidian-stone-bg.png') !important;

  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
}

/* Remove old fake stone layer if it exists */

.obsidian-stone-layer {
  display: none !important;
}

/* Remove mountain silhouette because the new stone background replaces it */

.hero-mountains {
  display: none !important;
}

/* Keep the overlay lighter so the stone texture shows */

.homepage .hero-background {
  background:
    linear-gradient(
      90deg,
      rgba(0,0,0,0.08),
      rgba(0,0,0,0.02),
      rgba(0,0,0,0.14)
    ) !important;
}

/* Keep the moving symbol clean and premium over the stone */

.homepage .hero-symbol {
  right: 9%;
  top: 38%;

  width: 540px;
  max-width: 35vw;

  opacity: 0.92;

  filter:
    brightness(1.08)
    contrast(1.12)
    drop-shadow(0 0 34px rgba(201,167,106,0.34))
    drop-shadow(0 34px 90px rgba(0,0,0,0.82));

  z-index: 5;
}

/* Gold atmosphere behind moving symbol */

.homepage .symbol-ambient {
  right: 6.8%;
  top: 38%;

  width: 620px;
  height: 620px;

  opacity: 0.88;
}
/* HOMEPAGE BACKGROUND BRIGHTNESS REFINEMENT */

.homepage .hero {
  background:
    linear-gradient(
      90deg,
      rgba(0,0,0,0.62) 0%,
      rgba(0,0,0,0.46) 34%,
      rgba(0,0,0,0.12) 66%,
      rgba(0,0,0,0.24) 100%
    ),
    linear-gradient(
      180deg,
      rgba(0,0,0,0.08) 0%,
      rgba(0,0,0,0.28) 100%
    ),
    url('obsidian-stone-bg.png') !important;

  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
}

/* Make the stone texture show through more */

.homepage .hero-background {
  background:
    linear-gradient(
      90deg,
      rgba(0,0,0,0.04),
      rgba(0,0,0,0.00),
      rgba(0,0,0,0.08)
    ) !important;
}

/* Add a little more gold atmosphere */

.homepage .symbol-ambient {
  opacity: 1;
}

/* Slightly brighten the homepage symbol */

.homepage .hero-symbol {
  filter:
    brightness(1.14)
    contrast(1.12)
    drop-shadow(0 0 38px rgba(201,167,106,0.40))
    drop-shadow(0 34px 90px rgba(0,0,0,0.82));
}
/* GLOBAL TOP-LEFT LOGO POSITION REFINEMENT */

.brand-symbol {
  transform: translateX(-4px) translateY(-6px);
}
/* ============================= */
/* HOMEPAGE CONCEPT STYLE UPGRADE */
/* ============================= */

.homepage .hero {
  background:
    linear-gradient(
      90deg,
      rgba(0,0,0,0.66) 0%,
      rgba(0,0,0,0.50) 34%,
      rgba(0,0,0,0.14) 66%,
      rgba(0,0,0,0.26) 100%
    ),
    linear-gradient(
      180deg,
      rgba(0,0,0,0.10) 0%,
      rgba(0,0,0,0.32) 100%
    ),
    url('home-bg.png') !important;

  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
}

/* Hide old artificial texture layers if they still exist */

.obsidian-stone-layer,
.hero-mountains {
  display: none !important;
}

/* Keep overlay light so stone texture shows */

.homepage .hero-background {
  background:
    linear-gradient(
      90deg,
      rgba(0,0,0,0.05),
      rgba(0,0,0,0.00),
      rgba(0,0,0,0.08)
    ) !important;
}

/* Homepage headline like the concept */

.hero-title {
  display: flex;
  flex-direction: column;

  font-family: 'Cormorant Garamond', serif;

  font-size: clamp(64px, 7vw, 112px);
  line-height: 0.92;

  letter-spacing: 2.5px;

  font-weight: 500;

  color: #f1eadc;

  text-transform: none;

  text-shadow:
    0 0 22px rgba(255,255,255,0.08),
    0 22px 60px rgba(0,0,0,0.84);
}

.hero-title span {
  display: block;
}

.hero-title .gold-title {
  color: #c9a76a;

  text-shadow:
    0 0 22px rgba(201,167,106,0.22),
    0 22px 60px rgba(0,0,0,0.84);
}

/* Homepage gold line refinement */

.homepage .gold-line {
  width: 360px;
  height: 1px;

  margin: 42px 0 32px;

  background:
    linear-gradient(
      90deg,
      rgba(201,167,106,0.95),
      rgba(201,167,106,0.30),
      transparent
    );

  box-shadow:
    0 0 18px rgba(201,167,106,0.28);
}

/* Homepage body copy refinement */

.homepage .hero-content p {
  max-width: 620px;

  color: rgba(244,241,234,0.80);

  font-size: 18px;
  line-height: 1.82;
}

/* Moving homepage symbol refinement */

.homepage .hero-symbol {
  right: 9%;
  top: 38%;

  width: 520px;
  max-width: 34vw;

  opacity: 0.94;

  filter:
    brightness(1.12)
    contrast(1.12)
    drop-shadow(0 0 40px rgba(201,167,106,0.42))
    drop-shadow(0 34px 90px rgba(0,0,0,0.86));
}

/* Gold atmosphere behind moving symbol */

.homepage .symbol-ambient {
  right: 6.8%;
  top: 38%;

  width: 620px;
  height: 620px;

  opacity: 0.90;

  background:
    radial-gradient(
      circle at center,
      rgba(201,167,106,0.20),
      rgba(201,167,106,0.08) 34%,
      rgba(255,255,255,0.025) 52%,
      transparent 72%
    );
}

/* Homepage cards closer to concept */

.homepage .home-card-row {
  gap: 22px;

  border: none;

  background: transparent;

  box-shadow: none;
  backdrop-filter: none;
}

.homepage .home-card {
  border: 1px solid rgba(201,167,106,0.18);

  background:
    linear-gradient(
      145deg,
      rgba(5,5,5,0.78),
      rgba(5,5,5,0.50)
    );

  backdrop-filter: blur(8px);

  box-shadow:
    0 24px 60px rgba(0,0,0,0.42),
    inset 0 1px 0 rgba(255,255,255,0.04);
}

.homepage .home-card:hover {
  border-color: rgba(201,167,106,0.38);

  background:
    radial-gradient(
      circle at top left,
      rgba(201,167,106,0.10),
      transparent 34%
    ),
    rgba(5,5,5,0.64);
}

.homepage .home-card h3 {
  color: #c9a76a;
}

.homepage .home-card p {
  color: rgba(244,241,234,0.70);
}
/* ============================= */
/* CORE VALUES CONCEPT STYLE */
/* ============================= */

.core-values-page .subpage-hero {
  background:
    linear-gradient(
      90deg,
      rgba(0,0,0,0.68) 0%,
      rgba(0,0,0,0.50) 34%,
      rgba(0,0,0,0.16) 66%,
      rgba(0,0,0,0.30) 100%
    ),
    linear-gradient(
      180deg,
      rgba(0,0,0,0.10) 0%,
      rgba(0,0,0,0.34) 100%
    ),
    url('core-values-bg.png') !important;

  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
}

/* Keep overlay light so the stone texture shows */

.core-values-page .subpage-background {
  background:
    linear-gradient(
      90deg,
      rgba(0,0,0,0.06),
      rgba(0,0,0,0.00),
      rgba(0,0,0,0.10)
    ) !important;
}

/* Concept-style page title */

.subpage-title {
  display: flex;
  flex-direction: column;

  font-family: 'Cormorant Garamond', serif;

  font-size: clamp(64px, 6.8vw, 112px);
  line-height: 0.92;

  letter-spacing: 2.5px;

  font-weight: 500;

  color: #f1eadc;

  text-transform: none;

  text-shadow:
    0 0 22px rgba(255,255,255,0.08),
    0 22px 60px rgba(0,0,0,0.84);
}

.subpage-title span {
  display: block;
}

.subpage-title .gold-title {
  color: #c9a76a;

  text-shadow:
    0 0 22px rgba(201,167,106,0.22),
    0 22px 60px rgba(0,0,0,0.84);
}

/* Core Values symbol refinement */

.core-values-page .subpage-symbol {
  right: 9%;
  top: 52%;

  width: 520px;
  max-width: 34vw;

  opacity: 0.88;

  filter:
    brightness(1.12)
    contrast(1.12)
    drop-shadow(0 0 40px rgba(201,167,106,0.40))
    drop-shadow(0 34px 90px rgba(0,0,0,0.86));
}

.core-values-page .subpage-ambient {
  right: 6.8%;
  top: 52%;

  width: 620px;
  height: 620px;

  opacity: 0.82;

  background:
    radial-gradient(
      circle at center,
      rgba(201,167,106,0.18),
      rgba(201,167,106,0.07) 34%,
      rgba(255,255,255,0.022) 52%,
      transparent 72%
    );
}

/* Core Values card section refinement */

.core-values-page .principles-section {
  background:
    linear-gradient(
      180deg,
      rgba(3,3,3,0.98) 0%,
      rgba(7,6,5,0.98) 100%
    );
}

.core-values-page .principle-card h3 {
  color: #c9a76a;
}

.core-values-page .principle-card span {
  color: rgba(201,167,106,0.56);
}
/* ============================= */
/* CAPABILITIES CONCEPT STYLE */
/* ============================= */

.capabilities-page .subpage-hero {
  background:
    linear-gradient(
      90deg,
      rgba(0,0,0,0.70) 0%,
      rgba(0,0,0,0.52) 34%,
      rgba(0,0,0,0.16) 66%,
      rgba(0,0,0,0.30) 100%
    ),
    linear-gradient(
      180deg,
      rgba(0,0,0,0.10) 0%,
      rgba(0,0,0,0.34) 100%
    ),
    url('capabilities-bg.png') !important;

  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
}

/* Tactical grid overlay */

.capabilities-page .subpage-hero::after {
  content: '';

  position: absolute;
  inset: 0;

  background-image:
    linear-gradient(
      rgba(201,167,106,0.08) 1px,
      transparent 1px
    ),
    linear-gradient(
      90deg,
      rgba(201,167,106,0.08) 1px,
      transparent 1px
    );

  background-size: 90px 90px;

  opacity: 0.22;

  z-index: 1;

  pointer-events: none;
}

/* Small tactical coordinate marks */

.capabilities-page .subpage-hero::before {
  content: 'N 40.7128°     W 74.0060°     ELEV. 280 FT';

  position: absolute;

  right: 8%;
  top: 30%;

  color: rgba(201,167,106,0.42);

  font-size: 11px;
  letter-spacing: 3px;

  z-index: 2;

  pointer-events: none;
}

/* Keep overlay light so tactical background shows */

.capabilities-page .subpage-background {
  background:
    linear-gradient(
      90deg,
      rgba(0,0,0,0.06),
      rgba(0,0,0,0.00),
      rgba(0,0,0,0.10)
    ) !important;
}

/* Capabilities title style */

.capabilities-title {
  display: flex;
  flex-direction: column;

  font-family: 'Cormorant Garamond', serif;

  font-size: clamp(64px, 6.8vw, 112px);
  line-height: 0.92;

  letter-spacing: 2.5px;

  font-weight: 500;

  color: #f1eadc;

  text-transform: none;

  text-shadow:
    0 0 22px rgba(255,255,255,0.08),
    0 22px 60px rgba(0,0,0,0.84);
}

.capabilities-title span {
  display: block;
}

.capabilities-title .gold-title {
  color: #c9a76a;

  text-shadow:
    0 0 22px rgba(201,167,106,0.22),
    0 22px 60px rgba(0,0,0,0.84);
}

/* Capabilities moving symbol refinement */

.capabilities-page .subpage-symbol {
  right: 9%;
  top: 56%;

  width: 520px;
  max-width: 34vw;

  opacity: 0.88;

  filter:
    brightness(1.12)
    contrast(1.12)
    drop-shadow(0 0 40px rgba(201,167,106,0.40))
    drop-shadow(0 34px 90px rgba(0,0,0,0.86));
}

.capabilities-page .subpage-ambient {
  right: 6.8%;
  top: 56%;

  width: 620px;
  height: 620px;

  opacity: 0.82;

  background:
    radial-gradient(
      circle at center,
      rgba(201,167,106,0.18),
      rgba(201,167,106,0.07) 34%,
      rgba(255,255,255,0.022) 52%,
      transparent 72%
    );
}

/* Capabilities card section refinement */

.capabilities-page .capabilities-section {
  background:
    linear-gradient(
      180deg,
      rgba(3,3,3,0.98) 0%,
      rgba(7,6,5,0.98) 100%
    );
}

.capabilities-page .capability-card h3 {
  color: #c9a76a;
}

.capabilities-page .capability-content span {
  color: rgba(201,167,106,0.56);
}

.capabilities-page .capability-icon {
  color: #c9a76a;
  border-color: rgba(201,167,106,0.74);
}
/* ============================= */
/* ABOUT THE OWNER CONCEPT STYLE */
/* ============================= */

.owner-page .subpage-hero {
  background:
    linear-gradient(
      90deg,
      rgba(0,0,0,0.70) 0%,
      rgba(0,0,0,0.52) 34%,
      rgba(0,0,0,0.16) 66%,
      rgba(0,0,0,0.30) 100%
    ),
    linear-gradient(
      180deg,
      rgba(0,0,0,0.10) 0%,
      rgba(0,0,0,0.34) 100%
    ),
    url('owner-bg.png') !important;

  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
}

/* Polished obsidian slab effect */

.owner-page .subpage-hero::after {
  content: '';

  position: absolute;
  inset: 0;

  background:
    linear-gradient(
      135deg,
      transparent 0%,
      rgba(255,255,255,0.035) 22%,
      transparent 38%,
      rgba(201,167,106,0.035) 62%,
      transparent 82%
    );

  opacity: 0.32;

  z-index: 1;

  pointer-events: none;
}

/* Subtle gold edge-light */

.owner-page .subpage-hero::before {
  content: '';

  position: absolute;
  inset: 0;

  background:
    radial-gradient(
      circle at 75% 42%,
      rgba(201,167,106,0.12),
      transparent 28%
    ),
    radial-gradient(
      circle at 18% 70%,
      rgba(255,255,255,0.026),
      transparent 24%
    );

  z-index: 1;

  pointer-events: none;
}

/* Keep overlay light */

.owner-page .subpage-background {
  background:
    linear-gradient(
      90deg,
      rgba(0,0,0,0.06),
      rgba(0,0,0,0.00),
      rgba(0,0,0,0.10)
    ) !important;
}

/* Owner title concept style */

.owner-title {
  display: flex;
  flex-direction: column;

  font-family: 'Cormorant Garamond', serif;

  font-size: clamp(64px, 6.8vw, 112px);
  line-height: 0.92;

  letter-spacing: 2.5px;

  font-weight: 500;

  color: #f1eadc;

  text-transform: none;

  text-shadow:
    0 0 22px rgba(255,255,255,0.08),
    0 22px 60px rgba(0,0,0,0.84);
}

.owner-title span {
  display: block;
}

.owner-title .gold-title {
  color: #c9a76a;

  text-shadow:
    0 0 22px rgba(201,167,106,0.22),
    0 22px 60px rgba(0,0,0,0.84);
}

/* Owner moving symbol refinement */

.owner-page .subpage-symbol {
  right: 9%;
  top: 62%;

  width: 520px;
  max-width: 34vw;

  opacity: 0.88;

  filter:
    brightness(1.12)
    contrast(1.12)
    drop-shadow(0 0 40px rgba(201,167,106,0.40))
    drop-shadow(0 34px 90px rgba(0,0,0,0.86));
}

.owner-page .subpage-ambient {
  right: 6.8%;
  top: 62%;

  width: 620px;
  height: 620px;

  opacity: 0.82;

  background:
    radial-gradient(
      circle at center,
      rgba(201,167,106,0.18),
      rgba(201,167,106,0.07) 34%,
      rgba(255,255,255,0.022) 52%,
      transparent 72%
    );
}

/* Owner content section refinement */

.owner-page .owner-section {
  background:
    linear-gradient(
      180deg,
      rgba(3,3,3,0.98) 0%,
      rgba(7,6,5,0.98) 100%
    );
}

.owner-page .owner-copy h2 {
  color: #c9a76a;
}

.owner-page .owner-value-card h3 {
  color: #c9a76a;
}

.owner-page .owner-value-card span {
  color: rgba(201,167,106,0.56);
}

/* Remove symbol box if it feels too repetitive */

.owner-page .owner-symbol-feature {
  opacity: 0.9;
}
/* ============================= */
/* CONTACT CONCEPT STYLE */
/* ============================= */

.contact-page .subpage-hero {
  background:
    linear-gradient(
      90deg,
      rgba(0,0,0,0.72) 0%,
      rgba(0,0,0,0.54) 34%,
      rgba(0,0,0,0.18) 66%,
      rgba(0,0,0,0.32) 100%
    ),
    linear-gradient(
      180deg,
      rgba(0,0,0,0.10) 0%,
      rgba(0,0,0,0.34) 100%
    ),
    url('contact-bg.png') !important;

  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
}

/* Soft confidential gold glow */

.contact-page .subpage-hero::after {
  content: '';

  position: absolute;
  inset: 0;

  background:
    radial-gradient(
      circle at 76% 48%,
      rgba(201,167,106,0.14),
      transparent 30%
    ),
    radial-gradient(
      circle at 22% 70%,
      rgba(255,255,255,0.025),
      transparent 24%
    );

  z-index: 1;

  pointer-events: none;
}

/* Keep overlay light */

.contact-page .subpage-background {
  background:
    linear-gradient(
      90deg,
      rgba(0,0,0,0.06),
      rgba(0,0,0,0.00),
      rgba(0,0,0,0.10)
    ) !important;
}

/* Contact title concept style */

.contact-title {
  display: flex;
  flex-direction: column;

  font-family: 'Cormorant Garamond', serif;

  font-size: clamp(64px, 6.8vw, 112px);
  line-height: 0.92;

  letter-spacing: 2.5px;

  font-weight: 500;

  color: #f1eadc;

  text-transform: none;

  text-shadow:
    0 0 22px rgba(255,255,255,0.08),
    0 22px 60px rgba(0,0,0,0.84);
}

.contact-title span {
  display: block;
}

.contact-title .gold-title {
  color: #c9a76a;

  text-shadow:
    0 0 22px rgba(201,167,106,0.22),
    0 22px 60px rgba(0,0,0,0.84);
}

/* Contact moving symbol refinement */

.contact-page .subpage-symbol {
  right: 9%;
  top: 56%;

  width: 520px;
  max-width: 34vw;

  opacity: 0.88;

  filter:
    brightness(1.12)
    contrast(1.12)
    drop-shadow(0 0 40px rgba(201,167,106,0.40))
    drop-shadow(0 34px 90px rgba(0,0,0,0.86));
}

.contact-page .subpage-ambient {
  right: 6.8%;
  top: 56%;

  width: 620px;
  height: 620px;

  opacity: 0.82;

  background:
    radial-gradient(
      circle at center,
      rgba(201,167,106,0.18),
      rgba(201,167,106,0.07) 34%,
      rgba(255,255,255,0.022) 52%,
      transparent 72%
    );
}

/* Contact section refinement */

.contact-page .contact-section {
  background:
    linear-gradient(
      180deg,
      rgba(3,3,3,0.98) 0%,
      rgba(7,6,5,0.98) 100%
    );
}

.contact-page .contact-info h2 {
  color: #c9a76a;
}

.contact-page .contact-detail span,
.contact-page .form-group label {
  color: rgba(201,167,106,0.92);
}

.contact-page .contact-form-panel {
  border-color: rgba(201,167,106,0.24);

  background:
    linear-gradient(
      145deg,
      rgba(5,5,5,0.78),
      rgba(5,5,5,0.52)
    );
}
/* ===================================================== */
/* FINAL GLOBAL CONSISTENCY PASS */
/* ===================================================== */

/* Universal page hero refinement */

.hero,
.subpage-hero {
  min-height: 100vh;
  overflow: hidden;
}

/* Keep hero content visually consistent */

.hero-content,
.subpage-content {
  max-width: 760px;
}

/* Main page title styling */

.hero-title,
.subpage-title,
.capabilities-title,
.owner-title,
.contact-title,
.values-title {
  font-family: 'Cormorant Garamond', serif;
  font-size: clamp(62px, 6.8vw, 110px);
  line-height: 0.92;
  letter-spacing: 2.4px;
  font-weight: 500;
  color: #f1eadc;
  text-transform: none;

  text-shadow:
    0 0 22px rgba(255,255,255,0.08),
    0 24px 70px rgba(0,0,0,0.86);
}

.hero-title span,
.subpage-title span,
.capabilities-title span,
.owner-title span,
.contact-title span,
.values-title span {
  display: block;
}

.gold-title {
  color: #c9a76a !important;

  text-shadow:
    0 0 24px rgba(201,167,106,0.24),
    0 24px 70px rgba(0,0,0,0.86);
}

/* Paragraph consistency */

.hero-content p,
.subpage-content p {
  max-width: 650px;
  color: rgba(244,241,234,0.78);
  font-size: 18px;
  line-height: 1.82;
}

/* Kicker consistency */

.section-kicker {
  color: rgba(201,167,106,0.92);
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 4.4px;
  text-transform: uppercase;
}

/* Gold line consistency */

.gold-line {
  width: 360px;
  max-width: 82%;
  height: 1px;

  margin: 42px 0 32px;

  background:
    linear-gradient(
      90deg,
      rgba(201,167,106,0.95),
      rgba(201,167,106,0.30),
      transparent
    );

  box-shadow:
    0 0 18px rgba(201,167,106,0.28);
}

/* Top-left brand logo final alignment */

.brand {
  gap: 0;
}

.brand-symbol {
  width: 74px;
  height: 74px;

  margin-right: -2px;

  transform: translateX(-6px) translateY(-6px);

  object-fit: contain;

  mix-blend-mode: normal !important;

  background: transparent !important;
  border: none !important;
  outline: none !important;
  box-shadow: none !important;

  filter:
    brightness(1.08)
    contrast(1.08)
    drop-shadow(0 0 12px rgba(201,167,106,0.24));
}

.brand-text span {
  font-size: 46px;
  letter-spacing: 9px;
  line-height: 0.86;
}

.brand-text small {
  margin-top: 12px;
  font-size: 10px;
  letter-spacing: 4.5px;
}

/* Moving symbol consistency */

.hero-symbol,
.subpage-symbol {
  width: 520px;
  max-width: 34vw;

  opacity: 0.90;

  object-fit: contain;

  mix-blend-mode: normal !important;

  background: transparent !important;
  border: none !important;
  outline: none !important;
  box-shadow: none !important;

  filter:
    brightness(1.12)
    contrast(1.12)
    drop-shadow(0 0 40px rgba(201,167,106,0.40))
    drop-shadow(0 34px 90px rgba(0,0,0,0.86));

  z-index: 5;
}

/* Page-specific symbol positions */

.homepage .hero-symbol {
  right: 9%;
  top: 38%;
}

.homepage .symbol-ambient {
  right: 6.8%;
  top: 38%;
}

.core-values-page .subpage-symbol {
  right: 9%;
  top: 52%;
}

.core-values-page .subpage-ambient {
  right: 6.8%;
  top: 52%;
}

.capabilities-page .subpage-symbol {
  right: 9%;
  top: 56%;
}

.capabilities-page .subpage-ambient {
  right: 6.8%;
  top: 56%;
}

.owner-page .subpage-symbol {
  right: 9%;
  top: 62%;
}

.owner-page .subpage-ambient {
  right: 6.8%;
  top: 62%;
}

.contact-page .subpage-symbol {
  right: 9%;
  top: 56%;
}

.contact-page .subpage-ambient {
  right: 6.8%;
  top: 56%;
}

/* Ambient glow consistency */

.symbol-ambient,
.subpage-ambient {
  width: 620px;
  height: 620px;

  opacity: 0.84;

  background:
    radial-gradient(
      circle at center,
      rgba(201,167,106,0.18),
      rgba(201,167,106,0.07) 34%,
      rgba(255,255,255,0.022) 52%,
      transparent 72%
    );

  pointer-events: none;
}

/* Card color consistency */

.home-card,
.principle-card,
.capability-card,
.owner-main-panel,
.owner-value-card,
.contact-form-panel,
.closing-panel {
  border-color: rgba(201,167,106,0.20);

  background:
    linear-gradient(
      145deg,
      rgba(5,5,5,0.78),
      rgba(5,5,5,0.52)
    );

  backdrop-filter: blur(9px);

  box-shadow:
    0 28px 72px rgba(0,0,0,0.44),
    inset 0 1px 0 rgba(255,255,255,0.04);
}

/* Gold headings inside cards */

.home-card h3,
.principle-card h3,
.capability-card h3,
.owner-value-card h3,
.contact-info h2 {
  color: #c9a76a;
}

/* Buttons final polish */

.btn,
.contact-submit {
  border-color: rgba(201,167,106,0.64);
}

.btn-primary,
.contact-submit {
  background:
    linear-gradient(
      135deg,
      #ead39c 0%,
      #c9a76a 44%,
      #94703a 100%
    );

  color: #050505;
}

.btn-secondary {
  color: #d6b477;

  background:
    linear-gradient(
      145deg,
      rgba(5,5,5,0.72),
      rgba(5,5,5,0.42)
    );
}

/* Mobile consistency */

@media (max-width: 1050px) {
  .hero-symbol,
  .subpage-symbol {
    width: 520px;
    max-width: none;
    right: -18% !important;
    opacity: 0.28;
  }

  .symbol-ambient,
  .subpage-ambient {
    right: -22% !important;
    width: 560px;
    height: 560px;
    opacity: 0.45;
  }
}

@media (max-width: 760px) {
  .hero,
  .subpage-hero {
    padding-top: 230px;
  }

  .hero-title,
  .subpage-title,
  .capabilities-title,
  .owner-title,
  .contact-title,
  .values-title {
    font-size: 52px;
    letter-spacing: 1.5px;
  }

  .hero-content p,
  .subpage-content p {
    font-size: 16px;
  }

  .brand-symbol {
    width: 64px;
    height: 64px;

    margin-right: -4px;

    transform: translateX(-4px) translateY(-5px);
  }

  .brand-text span {
    font-size: 34px;
    letter-spacing: 6px;
  }

  .brand-text small {
    font-size: 9px;
    letter-spacing: 3px;
  }
}
/* SUBPAGE SYMBOL POSITION REFINEMENT */

.core-values-page .subpage-symbol,
.capabilities-page .subpage-symbol,
.owner-page .subpage-symbol,
.contact-page .subpage-symbol {
  top: 50%;
}

.core-values-page .subpage-ambient,
.capabilities-page .subpage-ambient,
.owner-page .subpage-ambient,
.contact-page .subpage-ambient {
  top: 38%;
}
/* ===================================================== */
/* BACKGROUND BRIGHTNESS REFINEMENT */
/* Homepage, Capabilities, About, Contact */
/* ===================================================== */

/* HOMEPAGE — brighten stone background */

.homepage .hero {
  background:
    linear-gradient(
      90deg,
      rgba(0,0,0,0.48) 0%,
      rgba(0,0,0,0.34) 34%,
      rgba(0,0,0,0.08) 66%,
      rgba(0,0,0,0.18) 100%
    ),
    linear-gradient(
      180deg,
      rgba(0,0,0,0.04) 0%,
      rgba(0,0,0,0.20) 100%
    ),
    url('home-bg.png') !important;

  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
}

/* reduce homepage dark overlay */

.homepage .hero::before {
  background:
    radial-gradient(
      ellipse at center,
      transparent 42%,
      rgba(0,0,0,0.20) 76%,
      rgba(0,0,0,0.48) 100%
    ) !important;
}

.homepage .hero-background {
  background:
    linear-gradient(
      90deg,
      rgba(0,0,0,0.02),
      rgba(0,0,0,0.00),
      rgba(0,0,0,0.06)
    ) !important;
}


/* CAPABILITIES — brighten tactical background */

.capabilities-page .subpage-hero {
  background:
    linear-gradient(
      90deg,
      rgba(0,0,0,0.50) 0%,
      rgba(0,0,0,0.36) 34%,
      rgba(0,0,0,0.08) 66%,
      rgba(0,0,0,0.18) 100%
    ),
    linear-gradient(
      180deg,
      rgba(0,0,0,0.04) 0%,
      rgba(0,0,0,0.20) 100%
    ),
    url('capabilities-bg.png') !important;

  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
}

.capabilities-page .subpage-background {
  background:
    linear-gradient(
      90deg,
      rgba(0,0,0,0.02),
      rgba(0,0,0,0.00),
      rgba(0,0,0,0.06)
    ) !important;
}


/* ABOUT THE OWNER — brighten polished obsidian background */

.owner-page .subpage-hero {
  background:
    linear-gradient(
      90deg,
      rgba(0,0,0,0.48) 0%,
      rgba(0,0,0,0.34) 34%,
      rgba(0,0,0,0.08) 66%,
      rgba(0,0,0,0.18) 100%
    ),
    linear-gradient(
      180deg,
      rgba(0,0,0,0.04) 0%,
      rgba(0,0,0,0.20) 100%
    ),
    url('owner-bg.png') !important;

  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
}

.owner-page .subpage-background {
  background:
    linear-gradient(
      90deg,
      rgba(0,0,0,0.02),
      rgba(0,0,0,0.00),
      rgba(0,0,0,0.06)
    ) !important;
}


/* CONTACT — brighten confidential glow background */

.contact-page .subpage-hero {
  background:
    linear-gradient(
      90deg,
      rgba(0,0,0,0.50) 0%,
      rgba(0,0,0,0.34) 34%,
      rgba(0,0,0,0.08) 66%,
      rgba(0,0,0,0.18) 100%
    ),
    linear-gradient(
      180deg,
      rgba(0,0,0,0.04) 0%,
      rgba(0,0,0,0.20) 100%
    ),
    url('contact-bg.png') !important;

  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
}

.contact-page .subpage-background {
  background:
    linear-gradient(
      90deg,
      rgba(0,0,0,0.02),
      rgba(0,0,0,0.00),
      rgba(0,0,0,0.06)
    ) !important;
}


/* make gold symbol glow slightly stronger over brighter backgrounds */

.homepage .symbol-ambient,
.capabilities-page .subpage-ambient,
.owner-page .subpage-ambient,
.contact-page .subpage-ambient {
  opacity: 0.95;
}

.homepage .hero-symbol,
.capabilities-page .subpage-symbol,
.owner-page .subpage-symbol,
.contact-page .subpage-symbol {
  filter:
    brightness(1.18)
    contrast(1.12)
    drop-shadow(0 0 42px rgba(201,167,106,0.46))
    drop-shadow(0 34px 90px rgba(0,0,0,0.86));
}
/* REMOVE FLOATING SYMBOL ON CORE VALUES PAGE ONLY */

.core-values-page .subpage-symbol,
.core-values-page .subpage-ambient {
  display: none !important;
}
/* ===================================================== */
/* MOBILE NAVIGATION ENHANCEMENT */
/* ===================================================== */

.mobile-menu-button {
  display: none;

  width: 48px;
  height: 48px;

  border: 1px solid rgba(201,167,106,0.34);

  background:
    linear-gradient(
      145deg,
      rgba(5,5,5,0.82),
      rgba(5,5,5,0.48)
    );

  cursor: pointer;

  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 6px;

  z-index: 1002;
}

.mobile-menu-button span {
  width: 22px;
  height: 1px;

  background: #c9a76a;

  transition: 0.35s ease;
}

.mobile-menu-button.active span:nth-child(1) {
  transform: translateY(7px) rotate(45deg);
}

.mobile-menu-button.active span:nth-child(2) {
  opacity: 0;
}

.mobile-menu-button.active span:nth-child(3) {
  transform: translateY(-7px) rotate(-45deg);
}

/* Mobile menu overlay */

.mobile-menu {
  position: fixed;

  inset: 0;

  z-index: 1001;

  display: none;

  background:
    radial-gradient(
      circle at 70% 30%,
      rgba(201,167,106,0.10),
      transparent 34%
    ),
    rgba(0,0,0,0.86);

  backdrop-filter: blur(18px);
}

.mobile-menu.open {
  display: block;
}

.mobile-menu-panel {
  min-height: 100%;

  padding: 130px 8% 60px;

  display: flex;
  flex-direction: column;
  justify-content: center;

  background:
    linear-gradient(
      145deg,
      rgba(3,3,3,0.92),
      rgba(10,8,6,0.88)
    );
}

.mobile-menu-brand {
  margin-bottom: 54px;
}

.mobile-menu-brand img {
  width: 92px;
  height: 92px;

  object-fit: contain;

  margin-bottom: 14px;

  filter:
    brightness(1.12)
    contrast(1.12)
    drop-shadow(0 0 26px rgba(201,167,106,0.34));
}

.mobile-menu-brand span {
  display: block;

  font-family: 'Cormorant Garamond', serif;

  font-size: 46px;
  letter-spacing: 8px;

  color: #f1eadc;
}

.mobile-menu-brand small {
  display: block;

  margin-top: 8px;

  color: rgba(201,167,106,0.86);

  font-size: 10px;
  letter-spacing: 4px;
}

.mobile-menu-links {
  display: grid;
  gap: 22px;

  margin-bottom: 54px;
}

.mobile-menu-links a {
  position: relative;

  width: fit-content;

  font-family: 'Cormorant Garamond', serif;

  font-size: clamp(34px, 8vw, 64px);
  line-height: 1;

  color: rgba(244,241,234,0.82);

  transition: 0.3s ease;
}

.mobile-menu-links a:hover {
  color: #c9a76a;

  transform: translateX(8px);
}

.mobile-menu-cta {
  width: fit-content;
}

body.menu-open {
  overflow: hidden;
}

/* Mobile breakpoint */

@media (max-width: 980px) {
  .navbar {
    height: 92px;

    padding: 16px 24px;

    flex-direction: row !important;
    align-items: center !important;
  }

  .nav-links {
    display: none !important;
  }

  .mobile-menu-button {
    display: flex;
  }

  .brand-symbol {
    width: 64px;
    height: 64px;

    transform: translateX(-4px) translateY(-4px);
  }

  .brand-text span {
    font-size: 34px;
    letter-spacing: 6px;
  }

  .brand-text small {
    font-size: 8px;
    letter-spacing: 2.8px;
  }
}

@media (max-width: 520px) {
  .brand-text span {
    font-size: 28px;
    letter-spacing: 5px;
  }

  .brand-text small {
    font-size: 7px;
    letter-spacing: 2.2px;
  }

  .brand-symbol {
    width: 58px;
    height: 58px;
  }

  .mobile-menu-panel {
    padding: 120px 7% 50px;
  }
}
/* ============================= */
/* CONTACT FORM READINESS */
/* ============================= */

.hidden-field {
  display: none !important;
}

.form-status {
  display: none;

  margin-top: 22px;
  padding: 16px 18px;

  border: 1px solid rgba(201,167,106,0.28);

  background:
    linear-gradient(
      145deg,
      rgba(201,167,106,0.08),
      rgba(255,255,255,0.02)
    );

  color: rgba(244,241,234,0.76);

  font-size: 14px;
  line-height: 1.6;

  text-align: center;
}

.form-status.active {
  display: block;
}

.form-status.success {
  color: rgba(244,241,234,0.84);
  border-color: rgba(201,167,106,0.38);
}
/* ===================================================== */
/* SMOOTH PAGE TRANSITIONS */
/* ===================================================== */

.page-transition-overlay {
  position: fixed;

  inset: 0;

  background:
    radial-gradient(
      circle at 50% 42%,
      rgba(201,167,106,0.08),
      transparent 34%
    ),
    #030303;

  z-index: 999999;

  opacity: 0;

  pointer-events: none;

  transition: opacity 0.45s ease;
}

.page-transition-overlay.active {
  opacity: 1;
  pointer-events: all;
}

/* Initial page fade-in */

body {
  animation: siteFadeIn 0.7s ease both;
}

@keyframes siteFadeIn {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}
/* ===================================================== */
/* FOOTER FINAL REFINEMENT */
/* ===================================================== */

.footer-legal {
  position: relative;
  z-index: 2;

  display: flex;
  justify-content: space-between;
  gap: 32px;

  margin-top: 34px;
  padding-top: 26px;

  border-top: 1px solid rgba(255,255,255,0.08);

  color: rgba(244,241,234,0.46);

  font-size: 12px;
  line-height: 1.6;
}

.footer-legal p:last-child {
  max-width: 620px;
  text-align: right;
}

.footer-name {
  color: #c9a76a;
}

.footer-links a {
  position: relative;
}

.footer-links a::after {
  content: '';

  position: absolute;
  left: 0;
  bottom: -7px;

  width: 0;
  height: 1px;

  background: #c9a76a;

  transition: 0.3s ease;
}

.footer-links a:hover::after {
  width: 100%;
}

/* Footer mobile cleanup */

@media (max-width: 900px) {
  .footer-legal {
    flex-direction: column;
    text-align: center;
  }

  .footer-legal p:last-child {
    max-width: none;
    text-align: center;
  }
}
/* ============================= */
/* PREMIUM FOOTER */
/* ============================= */

.site-footer {
  position: relative;

  padding: 120px 6.8% 42px;

  background:
    radial-gradient(
      circle at 50% 8%,
      rgba(201,167,106,0.08),
      transparent 34%
    ),
    linear-gradient(
      180deg,
      #030303 0%,
      #010101 100%
    );

  border-top: 1px solid rgba(201,167,106,0.16);

  overflow: hidden;
}

.site-footer::before {
  content: '';

  position: absolute;
  inset: 0;

  background:
    linear-gradient(
      90deg,
      rgba(255,255,255,0.015),
      transparent 25%,
      rgba(255,255,255,0.01)
    );

  pointer-events: none;
}

.footer-cta {
  position: relative;
  z-index: 2;

  max-width: 920px;

  margin: 0 auto 105px;

  text-align: center;
}

.footer-symbol {
  width: 128px;
  height: 128px;

  margin: 0 auto 34px;

  object-fit: contain;

  background: transparent !important;
  border: none !important;
  box-shadow: none !important;

  filter:
    brightness(1.08)
    contrast(1.12)
    drop-shadow(0 0 34px rgba(201,167,106,0.28));
}

.footer-cta h2 {
  margin-bottom: 28px;

  font-family: 'Cormorant Garamond', serif;

  font-size: clamp(46px, 5vw, 86px);
  line-height: 0.98;
  letter-spacing: 5px;

  font-weight: 500;

  color: #e8dfcf;
}

.footer-cta p {
  max-width: 720px;

  margin: 0 auto 38px;

  color: rgba(244,241,234,0.68);

  font-size: 18px;
  line-height: 1.75;
}

.footer-bottom {
  position: relative;
  z-index: 2;

  display: grid;
  grid-template-columns: 1fr auto 1fr;
  gap: 42px;

  align-items: end;

  padding-top: 38px;

  border-top: 1px solid rgba(255,255,255,0.10);
}

.footer-name {
  font-family: 'Cormorant Garamond', serif;

  font-size: 34px;
  letter-spacing: 7px;

  color: #c9a76a;
}

.footer-brand span {
  display: block;

  margin-top: 8px;

  color: rgba(201,167,106,0.82);

  font-size: 10px;
  letter-spacing: 3px;
}

.footer-links {
  display: flex;
  gap: 26px;

  font-size: 13px;
  letter-spacing: 1px;
}

.footer-links a,
.footer-contact a {
  color: rgba(244,241,234,0.62);

  transition: 0.3s ease;
}

.footer-links a:hover,
.footer-contact a:hover {
  color: #d6b477;
}

.footer-contact {
  display: flex;
  flex-direction: column;
  gap: 8px;

  text-align: right;

  font-size: 13px;
}

.footer-legal {
  position: relative;
  z-index: 2;

  display: flex;
  justify-content: space-between;
  gap: 32px;

  margin-top: 34px;
  padding-top: 26px;

  border-top: 1px solid rgba(255,255,255,0.08);

  color: rgba(244,241,234,0.46);

  font-size: 12px;
  line-height: 1.6;
}

.footer-legal p:last-child {
  max-width: 620px;
  text-align: right;
}

@media (max-width: 900px) {
  .footer-bottom {
    grid-template-columns: 1fr;
    text-align: center;
  }

  .footer-links {
    justify-content: center;
    flex-wrap: wrap;
  }

  .footer-contact {
    text-align: center;
  }

  .footer-legal {
    flex-direction: column;
    text-align: center;
  }

  .footer-legal p:last-child {
    max-width: none;
    text-align: center;
  }
}
/* ===================================================== */
/* PERFORMANCE + IMAGE RENDERING POLISH */
/* ===================================================== */

img {
  max-width: 100%;
  height: auto;
}

/* keep logo/symbol images clean */

.hero-symbol,
.subpage-symbol,
.brand-symbol,
.footer-symbol,
.mobile-menu-brand img {
  object-fit: contain;
  image-rendering: auto;
  backface-visibility: hidden;
  transform-style: preserve-3d;
}

/* prevents animation flicker on moving symbols */

.hero-symbol,
.subpage-symbol {
  will-change: transform;
}
/* ===================================================== */
/* MOBILE HERO BACKGROUND + SYMBOL REFINEMENT */
/* ===================================================== */

@media (max-width: 760px) {

  /* Reduce hero height/spacing on mobile */
  .homepage .hero,
  .subpage-hero {
    min-height: 88svh;
    padding-top: 145px;
    padding-bottom: 70px;
  }

  /* Make background feel less zoomed-in on mobile */
  .homepage .hero,
  .core-values-page .subpage-hero,
  .capabilities-page .subpage-hero,
  .owner-page .subpage-hero,
  .contact-page .subpage-hero {
    background-size: 155% auto !important;
    background-position: center top !important;
    background-repeat: no-repeat !important;
    background-color: #030303 !important;
  }

  /* Slight dark base fade so text stays readable */
  .homepage .hero::before,
  .subpage-hero::before {
    background:
      linear-gradient(
        180deg,
        rgba(0,0,0,0.18) 0%,
        rgba(0,0,0,0.42) 68%,
        rgba(0,0,0,0.76) 100%
      ) !important;
  }

  /* Homepage moving symbol smaller on mobile */
  .homepage .hero-symbol {
    width: 300px !important;
    max-width: none !important;

    right: -12% !important;
    top: 36% !important;

    opacity: 0.42 !important;

    filter:
      brightness(1.12)
      contrast(1.12)
      drop-shadow(0 0 26px rgba(201,167,106,0.34))
      drop-shadow(0 24px 70px rgba(0,0,0,0.86)) !important;
  }

  .homepage .symbol-ambient {
    width: 360px !important;
    height: 360px !important;

    right: -20% !important;
    top: 36% !important;

    opacity: 0.42 !important;
  }

  /* Subpage moving symbols smaller on mobile */
  .capabilities-page .subpage-symbol,
  .owner-page .subpage-symbol,
  .contact-page .subpage-symbol {
    width: 300px !important;
    max-width: none !important;

    right: -14% !important;
    top: 42% !important;

    opacity: 0.34 !important;

    filter:
      brightness(1.12)
      contrast(1.12)
      drop-shadow(0 0 26px rgba(201,167,106,0.34))
      drop-shadow(0 24px 70px rgba(0,0,0,0.86)) !important;
  }

  .capabilities-page .subpage-ambient,
  .owner-page .subpage-ambient,
  .contact-page .subpage-ambient {
    width: 360px !important;
    height: 360px !important;

    right: -22% !important;
    top: 42% !important;

    opacity: 0.36 !important;
  }

  /* Core Values has no floating symbol */
  .core-values-page .subpage-symbol,
  .core-values-page .subpage-ambient {
    display: none !important;
  }

  /* Keep text dominant on mobile */
  .hero-content,
  .subpage-content {
    max-width: 100%;
    position: relative;
    z-index: 10;
  }

  .hero-title,
  .subpage-title,
  .capabilities-title,
  .owner-title,
  .contact-title,
  .values-title {
    font-size: clamp(46px, 13vw, 58px) !important;
    line-height: 0.96 !important;
    letter-spacing: 1.2px !important;
  }

  .hero-content p,
  .subpage-content p {
    max-width: 92%;
    font-size: 16px !important;
    line-height: 1.75 !important;
  }

  .gold-line {
    width: 230px !important;
    margin: 30px 0 26px !important;
  }
}
/* ===================================================== */
/* MOBILE GLOBAL SCALE-DOWN FIX */
/* Makes the whole mobile site feel less oversized */
/* ===================================================== */

@media (max-width: 760px) {

  /* NAVBAR */
  .navbar {
    height: 78px !important;
    padding: 12px 18px !important;
  }

  .brand-symbol {
    width: 48px !important;
    height: 48px !important;
    margin-right: -2px !important;
    transform: translateX(-3px) translateY(-3px) !important;
  }

  .brand-text span {
    font-size: 26px !important;
    letter-spacing: 4px !important;
    line-height: 0.9 !important;
  }

  .brand-text small {
    margin-top: 7px !important;
    font-size: 6.5px !important;
    letter-spacing: 1.8px !important;
  }

  .mobile-menu-button {
    width: 42px !important;
    height: 42px !important;
  }

  /* HERO SECTIONS */
  .homepage .hero,
  .subpage-hero {
    min-height: auto !important;
    padding: 130px 6% 55px !important;
  }

  /* TITLES */
  .hero-title,
  .subpage-title,
  .capabilities-title,
  .owner-title,
  .contact-title,
  .values-title {
    font-size: clamp(38px, 11vw, 48px) !important;
    line-height: 0.98 !important;
    letter-spacing: 1px !important;
  }

  .section-kicker {
    margin-bottom: 18px !important;
    font-size: 10px !important;
    letter-spacing: 2.8px !important;
  }

  .hero-content p,
  .subpage-content p {
    max-width: 95% !important;
    font-size: 14.5px !important;
    line-height: 1.65 !important;
  }

  .gold-line {
    width: 185px !important;
    margin: 24px 0 22px !important;
  }

  /* HERO BUTTONS */
  .hero-actions {
    flex-direction: column !important;
    gap: 14px !important;
    margin-top: 28px !important;
    max-width: 280px !important;
  }

  .btn,
  .contact-submit {
    padding: 15px 20px !important;
    font-size: 10.5px !important;
    letter-spacing: 1.7px !important;
    gap: 14px !important;
  }

  /* FLOATING SYMBOLS */
  .homepage .hero-symbol {
    width: 240px !important;
    right: -10% !important;
    top: 34% !important;
    opacity: 0.32 !important;
  }

  .homepage .symbol-ambient {
    width: 300px !important;
    height: 300px !important;
    right: -18% !important;
    top: 34% !important;
    opacity: 0.32 !important;
  }

  .capabilities-page .subpage-symbol,
  .owner-page .subpage-symbol,
  .contact-page .subpage-symbol {
    width: 240px !important;
    right: -10% !important;
    top: 38% !important;
    opacity: 0.28 !important;
  }

  .capabilities-page .subpage-ambient,
  .owner-page .subpage-ambient,
  .contact-page .subpage-ambient {
    width: 300px !important;
    height: 300px !important;
    right: -18% !important;
    top: 38% !important;
    opacity: 0.30 !important;
  }

  .core-values-page .subpage-symbol,
  .core-values-page .subpage-ambient {
    display: none !important;
  }

  /* BACKGROUNDS */
  .homepage .hero,
  .core-values-page .subpage-hero,
  .capabilities-page .subpage-hero,
  .owner-page .subpage-hero,
  .contact-page .subpage-hero {
    background-size: cover !important;
    background-position: center top !important;
  }

  /* HOME CARDS */
  .home-card-row {
    grid-template-columns: 1fr !important;
    gap: 14px !important;
    margin-top: 48px !important;
  }

  .home-card {
    grid-template-columns: 46px 1fr !important;
    gap: 16px !important;
    min-height: auto !important;
    padding: 22px 20px !important;
  }

  .home-card-icon {
    width: 42px !important;
    height: 42px !important;
    font-size: 20px !important;
  }

  .home-card h3 {
    font-size: 20px !important;
    letter-spacing: 1.8px !important;
  }

  .home-card p {
    font-size: 13.5px !important;
    line-height: 1.55 !important;
  }

  .home-card span {
    margin-top: 14px !important;
    font-size: 10.5px !important;
    letter-spacing: 1.6px !important;
  }

  /* HOMEPAGE STANDARD SECTION */
  .homepage-standard {
    grid-template-columns: 1fr !important;
    gap: 32px !important;
    padding: 70px 6% 80px !important;
  }

  .standard-left h2,
  .section-intro h2,
  .closing-panel h2,
  .owner-copy h2,
  .contact-info h2 {
    font-size: clamp(34px, 9vw, 44px) !important;
    line-height: 1 !important;
    letter-spacing: 2px !important;
  }

  .standard-right p,
  .section-intro p,
  .closing-panel p,
  .owner-copy p,
  .contact-info > p {
    font-size: 14.5px !important;
    line-height: 1.65 !important;
  }

  .standard-point {
    padding: 16px 0 !important;
  }

  .standard-point span {
    font-size: 24px !important;
  }

  .standard-point strong {
    font-size: 18px !important;
    letter-spacing: 1.5px !important;
  }

  /* CONTENT SECTIONS */
  .principles-section,
  .capabilities-section,
  .owner-section,
  .contact-section {
    padding: 70px 6% 80px !important;
  }

  .section-intro {
    margin-bottom: 42px !important;
  }

  /* CARDS */
  .principle-card,
  .capability-card,
  .owner-value-card,
  .owner-main-panel,
  .contact-form-panel,
  .closing-panel {
    padding: 28px 22px !important;
  }

  .principle-card {
    min-height: auto !important;
  }

  .principle-card span,
  .capability-content span,
  .owner-value-card span {
    font-size: 34px !important;
    margin-bottom: 16px !important;
  }

  .principle-card h3,
  .capability-content h3,
  .owner-value-card h3 {
    font-size: 22px !important;
    letter-spacing: 2px !important;
  }

  .principle-card p,
  .capability-content p,
  .owner-value-card p {
    font-size: 13.5px !important;
    line-height: 1.6 !important;
  }

  .capability-card {
    grid-template-columns: 1fr !important;
    gap: 20px !important;
  }

  .capability-icon {
    width: 48px !important;
    height: 48px !important;
    font-size: 21px !important;
  }

  /* OWNER */
  .owner-main-panel {
    grid-template-columns: 1fr !important;
    gap: 34px !important;
  }

  .owner-symbol-feature {
    min-height: 240px !important;
  }

  .owner-symbol-feature img {
    width: 230px !important;
  }

  .owner-symbol-glow {
    width: 280px !important;
    height: 280px !important;
  }

  .owner-signature {
    font-size: 36px !important;
  }

  /* CONTACT FORM */
  .contact-layout {
    grid-template-columns: 1fr !important;
    gap: 46px !important;
  }

  .form-row {
    grid-template-columns: 1fr !important;
    gap: 0 !important;
  }

  .form-group label {
    font-size: 10px !important;
    letter-spacing: 2.6px !important;
  }

  .form-group input,
  .form-group textarea {
    padding: 14px 15px !important;
    font-size: 14px !important;
  }

  /* FOOTER */
  .site-footer {
    padding: 78px 6% 34px !important;
  }

  .footer-symbol {
    width: 82px !important;
    height: 82px !important;
    margin-bottom: 22px !important;
  }

  .footer-cta {
    margin-bottom: 64px !important;
  }

  .footer-cta h2 {
    font-size: clamp(34px, 9vw, 46px) !important;
    letter-spacing: 2px !important;
  }

  .footer-cta p {
    font-size: 14.5px !important;
    line-height: 1.65 !important;
  }

  .footer-bottom {
    gap: 28px !important;
  }

  .footer-name {
    font-size: 28px !important;
    letter-spacing: 5px !important;
  }

  .footer-links {
    gap: 18px !important;
    font-size: 12px !important;
  }

  .footer-contact,
  .footer-legal {
    font-size: 11.5px !important;
  }
}
/* ===================================================== */
/* MOBILE BACKGROUND + SYMBOL CENTERING FIX */
/* Keeps mobile top layout, fixes off-centered visuals */
/* ===================================================== */

@media (max-width: 760px) {

  /* Center all mobile page backgrounds */
  .homepage .hero,
  .core-values-page .subpage-hero,
  .capabilities-page .subpage-hero,
  .owner-page .subpage-hero,
  .contact-page .subpage-hero {
    background-position: center center !important;
    background-size: cover !important;
    background-repeat: no-repeat !important;
  }

  /* Center homepage floating symbol */
  .homepage .hero-symbol {
    left: 50% !important;
    right: auto !important;
    top: 34% !important;

    width: 230px !important;
    max-width: none !important;

    transform: translate(-50%, -50%) !important;

    opacity: 0.30 !important;

    animation: mobileSymbolFloat 8s ease-in-out infinite !important;
  }

  .homepage .symbol-ambient {
    left: 50% !important;
    right: auto !important;
    top: 34% !important;

    width: 300px !important;
    height: 300px !important;

    transform: translate(-50%, -50%) !important;

    opacity: 0.28 !important;
  }

  /* Center subpage floating symbols */
  .capabilities-page .subpage-symbol,
  .owner-page .subpage-symbol,
  .contact-page .subpage-symbol {
    left: 50% !important;
    right: auto !important;
    top: 38% !important;

    width: 230px !important;
    max-width: none !important;

    transform: translate(-50%, -50%) !important;

    opacity: 0.26 !important;

    animation: mobileSymbolFloat 8s ease-in-out infinite !important;
  }

  .capabilities-page .subpage-ambient,
  .owner-page .subpage-ambient,
  .contact-page .subpage-ambient {
    left: 50% !important;
    right: auto !important;
    top: 38% !important;

    width: 300px !important;
    height: 300px !important;

    transform: translate(-50%, -50%) !important;

    opacity: 0.26 !important;
  }

  /* Core Values still has no floating symbol */
  .core-values-page .subpage-symbol,
  .core-values-page .subpage-ambient {
    display: none !important;
  }
}

/* Mobile-specific symbol animation so centering does not break */

@keyframes mobileSymbolFloat {
  0% {
    transform: translate(-50%, -50%) translateY(0);
  }

  50% {
    transform: translate(-50%, -52%) translateY(-4px);
  }

  100% {
    transform: translate(-50%, -50%) translateY(0);
  }
}
/* ===================================================== */
/* MOBILE FINAL ALIGNMENT FIX */
/* Symbol too far right + page titles too large */
/* ===================================================== */

@media (max-width: 760px) {

  /* Make main page words smaller */
  .hero-title,
  .subpage-title,
  .capabilities-title,
  .owner-title,
  .contact-title,
  .values-title {
    font-size: clamp(32px, 9.5vw, 42px) !important;
    line-height: 1.02 !important;
    letter-spacing: 0.8px !important;
  }

  /* Slightly reduce paragraph size too */
  .hero-content p,
  .subpage-content p {
    font-size: 14px !important;
    line-height: 1.62 !important;
    max-width: 94% !important;
  }

  /* Move homepage symbol left */
  .homepage .hero-symbol {
    left: 42% !important;
    right: auto !important;
    top: 34% !important;

    width: 220px !important;

    transform: translate(-50%, -50%) !important;

    opacity: 0.28 !important;
  }

  .homepage .symbol-ambient {
    left: 42% !important;
    right: auto !important;
    top: 34% !important;

    width: 285px !important;
    height: 285px !important;

    transform: translate(-50%, -50%) !important;

    opacity: 0.26 !important;
  }

  /* Move subpage symbols left */
  .capabilities-page .subpage-symbol,
  .owner-page .subpage-symbol,
  .contact-page .subpage-symbol {
    left: 42% !important;
    right: auto !important;
    top: 38% !important;

    width: 220px !important;

    transform: translate(-50%, -50%) !important;

    opacity: 0.25 !important;
  }

  .capabilities-page .subpage-ambient,
  .owner-page .subpage-ambient,
  .contact-page .subpage-ambient {
    left: 42% !important;
    right: auto !important;
    top: 38% !important;

    width: 285px !important;
    height: 285px !important;

    transform: translate(-50%, -50%) !important;

    opacity: 0.24 !important;
  }

  /* Keep Core Values symbol removed */
  .core-values-page .subpage-symbol,
  .core-values-page .subpage-ambient {
    display: none !important;
  }

  /* Keep the hero section balanced */
  .homepage .hero,
  .subpage-hero {
    padding-top: 125px !important;
    padding-bottom: 52px !important;
  }

  .gold-line {
    width: 165px !important;
    margin: 22px 0 20px !important;
  }
}
/* ===================================================== */
/* FINAL GOLD COLOR CONSISTENCY */
/* ===================================================== */

:root {
  --obsidian-gold: #c9a76a;
  --obsidian-gold-light: #d6b477;
  --obsidian-gold-dark: #94703a;
}

/* Main gold text */
.gold-title,
.section-kicker,
.footer-name,
.home-card h3,
.principle-card h3,
.capability-card h3,
.owner-value-card h3,
.contact-info h2,
.owner-copy h2 {
  color: var(--obsidian-gold) !important;
}

/* Gold accents */
.gold-line,
.nav-links a::after,
.footer-links a::after {
  background: var(--obsidian-gold) !important;
}

/* Gold borders */
.btn,
.contact-submit,
.home-card,
.principle-card,
.capability-card,
.owner-main-panel,
.owner-value-card,
.contact-form-panel,
.closing-panel {
  border-color: rgba(201,167,106,0.24) !important;
}

/* Gold buttons */
.btn-primary,
.contact-submit {
  background:
    linear-gradient(
      135deg,
      #ead39c 0%,
      var(--obsidian-gold) 44%,
      var(--obsidian-gold-dark) 100%
    ) !important;
}

/* Symbol glow should match gold text */
.brand-symbol,
.hero-symbol,
.subpage-symbol,
.footer-symbol,
.owner-symbol-feature img {
  filter:
    brightness(1.12)
    contrast(1.12)
    drop-shadow(0 0 34px rgba(201,167,106,0.38))
    drop-shadow(0 28px 80px rgba(0,0,0,0.82)) !important;
}
/* REMOVE RANDOM COORDINATES FROM CAPABILITIES HERO */

.capabilities-page .subpage-hero::before {
  content: none !important;
  display: none !important;
}
/* ABOUT OBSIDIAN — REMOVE DUPLICATE SYMBOL PANEL */

.owner-page .owner-main-panel {
  grid-template-columns: 1fr !important;
}

.owner-page .owner-symbol-feature,
.owner-page .owner-symbol-glow {
  display: none !important;
}

.owner-page .owner-copy {
  max-width: 920px;
}
/* CONTACT PAGE — REMOVE REPETITIVE FOOTER CTA */

.contact-body .footer-cta {
  display: none !important;
}

.contact-body .site-footer {
  padding-top: 60px !important;
}
/* ===================================================== */
/* ABOUT OBSIDIAN PAGE — FOUNDER HERO MOCKUP */
/* ===================================================== */

.about-obsidian-page {
  min-height: 100vh;
  background: #030303;
}

.about-obsidian-hero {
  position: relative;

  min-height: 100vh;

  padding: 150px 6.2% 42px;

  overflow: hidden;

  display: flex;
  flex-direction: column;
  justify-content: space-between;

  background: #030303;
}

/* Background */

.about-obsidian-bg {
  position: absolute;
  inset: 0;

  background:
    linear-gradient(
      90deg,
      rgba(0,0,0,0.70) 0%,
      rgba(0,0,0,0.48) 38%,
      rgba(0,0,0,0.14) 66%,
      rgba(0,0,0,0.34) 100%
    ),
    linear-gradient(
      180deg,
      rgba(0,0,0,0.08) 0%,
      rgba(0,0,0,0.44) 100%
    ),
    url('owner-bg.png');

  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;

  z-index: 0;
}

.about-obsidian-overlay {
  position: absolute;
  inset: 0;

  background:
    radial-gradient(
      circle at 70% 36%,
      rgba(201,167,106,0.08),
      transparent 26%
    ),
    radial-gradient(
      ellipse at center,
      transparent 34%,
      rgba(0,0,0,0.34) 78%,
      rgba(0,0,0,0.74) 100%
    );

  pointer-events: none;

  z-index: 1;
}

/* Large symbol behind founder */

.about-hero-symbol {
  position: absolute;

  right: 5.6%;
  top: 36%;

  width: 470px;
  max-width: 32vw;
  height: auto;

  transform: translateY(-50%);

  opacity: 0.24;

  object-fit: contain;

  filter:
    brightness(0.92)
    contrast(1.08)
    drop-shadow(0 0 28px rgba(201,167,106,0.16))
    drop-shadow(0 24px 80px rgba(0,0,0,0.88));

  z-index: 2;

  animation: symbolFloat 9s ease-in-out infinite;
}

/* Founder image */

.founder-hero-photo {
  position: absolute;

  right: 7.6%;
  bottom: 17.6%;

  width: min(520px, 36vw);
  height: auto;

  object-fit: contain;

  z-index: 4;

  filter:
    brightness(0.92)
    contrast(1.08)
    drop-shadow(0 24px 70px rgba(0,0,0,0.86));
}

/* Left content */

.about-hero-content {
  position: relative;

  z-index: 5;

  max-width: 720px;

  padding-top: 36px;
}

.about-hero-content h1 {
  font-family: 'Cormorant Garamond', serif;

  font-size: clamp(58px, 5.4vw, 92px);
  line-height: 0.95;

  font-weight: 500;

  letter-spacing: 13px;

  color: #f1eadc;

  text-transform: uppercase;

  text-shadow:
    0 0 24px rgba(255,255,255,0.08),
    0 28px 70px rgba(0,0,0,0.86);
}

.about-hero-content .gold-line {
  width: 86px;
  height: 1px;

  margin: 34px 0 34px;

  background: #c9a76a !important;

  box-shadow:
    0 0 18px rgba(201,167,106,0.28);
}

.about-kicker {
  margin-bottom: 26px;

  color: #c9a76a;

  font-size: 14px;
  font-weight: 600;
  letter-spacing: 7px;
  text-transform: uppercase;
}

.about-copy {
  max-width: 650px;
}

.about-copy p {
  margin-bottom: 24px;

  color: rgba(244,241,234,0.78);

  font-size: 18px;
  line-height: 1.72;
}

/* Signature */

.founder-signature {
  margin-top: 30px;
  margin-bottom: 22px;

  font-family: 'Cormorant Garamond', serif;
  font-style: italic;

  font-size: clamp(48px, 4vw, 76px);
  line-height: 1;

  color: #c9a76a;

  text-shadow:
    0 0 20px rgba(201,167,106,0.22);
}

.founder-name {
  margin-bottom: 12px;

  font-family: 'Cormorant Garamond', serif;

  color: #f1eadc;

  font-size: 26px;
  letter-spacing: 8px;

  text-transform: uppercase;
}

.founder-title {
  color: #c9a76a;

  font-size: 13px;
  font-weight: 600;
  letter-spacing: 6px;

  text-transform: uppercase;
}

/* Bottom cards */

.about-bottom-cards {
  position: relative;

  z-index: 6;

  display: grid;
  grid-template-columns: repeat(3, 1fr);

  border: 1px solid rgba(201,167,106,0.22);

  background:
    linear-gradient(
      145deg,
      rgba(5,5,5,0.76),
      rgba(5,5,5,0.50)
    );

  backdrop-filter: blur(9px);

  box-shadow:
    0 28px 72px rgba(0,0,0,0.44),
    inset 0 1px 0 rgba(255,255,255,0.04);
}

.about-bottom-card {
  display: grid;
  grid-template-columns: 74px 1fr;
  gap: 24px;

  min-height: 175px;

  padding: 34px 36px;

  border-right: 1px solid rgba(255,255,255,0.12);

  text-decoration: none;

  transition: 0.35s ease;

  overflow: hidden;
}

.about-bottom-card:last-child {
  border-right: none;
}

.about-bottom-card:hover {
  background:
    radial-gradient(
      circle at top left,
      rgba(201,167,106,0.10),
      transparent 34%
    ),
    rgba(255,255,255,0.025);

  transform: translateY(-4px);
}

.about-card-icon {
  width: 58px;
  height: 58px;

  border: 1px solid rgba(201,167,106,0.82);
  border-radius: 50%;

  display: flex;
  align-items: center;
  justify-content: center;

  color: #c9a76a;

  font-size: 25px;

  box-shadow:
    0 0 24px rgba(201,167,106,0.10);
}

.about-bottom-card h3 {
  margin-bottom: 10px;

  font-family: 'Cormorant Garamond', serif;

  color: #f1eadc;

  font-size: 24px;
  letter-spacing: 4px;
  text-transform: uppercase;
}

.about-bottom-card p {
  margin-bottom: 18px;

  color: rgba(244,241,234,0.68);

  font-size: 15px;
  line-height: 1.6;
}

.about-bottom-card span {
  color: #c9a76a;

  font-size: 12px;
  font-weight: 600;
  letter-spacing: 3px;

  text-transform: uppercase;
}

/* Responsive */

@media (max-width: 1150px) {
  .founder-hero-photo {
    right: 2%;
    width: min(500px, 43vw);
  }

  .about-hero-symbol {
    right: 1%;
    width: 500px;
    max-width: 42vw;
  }

  .about-bottom-cards {
    grid-template-columns: 1fr;
  }

  .about-bottom-card {
    border-right: none;
    border-bottom: 1px solid rgba(255,255,255,0.12);
  }

  .about-bottom-card:last-child {
    border-bottom: none;
  }
}

@media (max-width: 760px) {
  .about-obsidian-hero {
    padding: 120px 6% 38px;
  }

  .about-hero-content {
    max-width: 100%;
    padding-top: 12px;
  }

  .about-hero-content h1 {
    font-size: clamp(38px, 10vw, 50px);
    letter-spacing: 5px;
  }

  .about-kicker {
    font-size: 10px;
    letter-spacing: 3.2px;
  }

  .about-copy p {
    font-size: 14.5px;
    line-height: 1.62;
  }

  .founder-signature {
    font-size: 42px;
  }

  .founder-name {
    font-size: 20px;
    letter-spacing: 5px;
  }

  .founder-title {
    font-size: 10px;
    letter-spacing: 4px;
  }

  .founder-hero-photo {
    position: relative;

    right: auto;
    bottom: auto;

    width: 82%;
    max-width: 360px;

    margin: 34px auto -6px;

    display: block;

    z-index: 5;
  }

  .about-hero-symbol {
    right: -22%;
    top: 42%;

    width: 330px;
    max-width: none;

    opacity: 0.15;
  }

  .about-bottom-cards {
    margin-top: 28px;
  }

  .about-bottom-card {
    grid-template-columns: 48px 1fr;
    gap: 16px;

    padding: 24px 20px;
  }

  .about-card-icon {
    width: 42px;
    height: 42px;

    font-size: 18px;
  }

  .about-bottom-card h3 {
    font-size: 19px;
    letter-spacing: 2px;
  }

  .about-bottom-card p {
    font-size: 13.5px;
  }
}
/* ===================================================== */
/* ABOUT OBSIDIAN — STATIC SYMBOL ONLY */
/* ===================================================== */

.about-obsidian-page .about-hero-symbol {
  animation: none !important;

  opacity: 0.18 !important;

  right: 5.5% !important;
  top: 35% !important;

  filter:
    brightness(0.82)
    contrast(1.08)
    drop-shadow(0 0 22px rgba(201,167,106,0.12))
    drop-shadow(0 24px 80px rgba(0,0,0,0.88)) !important;
}
/* ===================================================== */
/* ABOUT OBSIDIAN — PORTRAIT BLEND FIX */
/* ===================================================== */

.about-obsidian-page .founder-hero-photo {
  position: absolute !important;

  right: 5.8% !important;
  bottom: 13.5% !important;

  width: min(620px, 42vw) !important;
  height: auto !important;

  object-fit: contain !important;

  background: transparent !important;
  border: none !important;
  outline: none !important;
  box-shadow: none !important;

  z-index: 4 !important;

  filter:
    brightness(0.92)
    contrast(1.08)
    drop-shadow(0 30px 80px rgba(0,0,0,0.90)) !important;
}
/* Soft shadow field behind founder photo */

.about-obsidian-hero::after {
  content: '';

  position: absolute;

  right: 0;
  bottom: 0;

  width: 58%;
  height: 72%;

  background:
    radial-gradient(
      ellipse at 62% 50%,
      rgba(0,0,0,0.10) 0%,
      rgba(0,0,0,0.36) 44%,
      rgba(0,0,0,0.78) 100%
    );

  z-index: 3;

  pointer-events: none;
}
.about-obsidian-page .founder-hero-photo {
  -webkit-mask-image:
    linear-gradient(
      to bottom,
      black 0%,
      black 82%,
      rgba(0,0,0,0.72) 91%,
      transparent 100%
    );

  mask-image:
    linear-gradient(
      to bottom,
      black 0%,
      black 82%,
      rgba(0,0,0,0.72) 91%,
      transparent 100%
    );
}
/* ===================================================== */
/* ABOUT OBSIDIAN — FINAL FOUNDER PAGE */
/* ===================================================== */

.about-obsidian-page {
  min-height: 100vh;
  background: #030303;
}

/* Hide old floating subpage symbol on this page */

.about-obsidian-page .subpage-symbol,
.about-obsidian-page .subpage-ambient {
  display: none !important;
}

/* Main hero */

.about-obsidian-hero {
  position: relative;

  min-height: 100vh;

  padding: 150px 5.8% 42px;

  overflow: hidden;

  display: flex;
  flex-direction: column;
  justify-content: space-between;

  background: #030303;
}

/* Background */

.about-obsidian-bg {
  position: absolute;
  inset: 0;

  background:
    linear-gradient(
      90deg,
      rgba(0,0,0,0.76) 0%,
      rgba(0,0,0,0.54) 36%,
      rgba(0,0,0,0.22) 62%,
      rgba(0,0,0,0.38) 100%
    ),
    linear-gradient(
      180deg,
      rgba(0,0,0,0.10) 0%,
      rgba(0,0,0,0.46) 100%
    ),
    url('owner-bg.png');

  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;

  z-index: 0;
}

/* Dark field behind portrait */

.about-obsidian-dark-field {
  position: absolute;

  right: 0;
  top: 0;
  bottom: 0;

  width: 58%;

  background:
    radial-gradient(
      ellipse at 58% 48%,
      rgba(201,167,106,0.08) 0%,
      rgba(0,0,0,0.12) 35%,
      rgba(0,0,0,0.54) 72%,
      rgba(0,0,0,0.78) 100%
    );

  z-index: 1;

  pointer-events: none;
}

/* Static symbol behind portrait */

.about-hero-symbol {
  position: absolute;

  right: 5.2%;
  top: 35%;

  width: 520px;
  max-width: 34vw;
  height: auto;

  transform: translateY(-50%);

  opacity: 0.16;

  object-fit: contain;

  background: transparent !important;
  border: none !important;
  box-shadow: none !important;

  filter:
    brightness(0.86)
    contrast(1.08)
    drop-shadow(0 0 26px rgba(201,167,106,0.14))
    drop-shadow(0 24px 80px rgba(0,0,0,0.88));

  z-index: 2;

  animation: none !important;
}

/* Founder portrait */

.founder-hero-photo {
  position: absolute;

  right: 6.8%;
  bottom: 15.2%;

  width: min(570px, 39vw);
  height: auto;

  object-fit: contain;

  background: transparent !important;
  border: none !important;
  outline: none !important;
  box-shadow: none !important;

  z-index: 4;

  filter:
    brightness(0.94)
    contrast(1.08)
    drop-shadow(0 30px 84px rgba(0,0,0,0.92));

  -webkit-mask-image:
    linear-gradient(
      to bottom,
      black 0%,
      black 82%,
      rgba(0,0,0,0.72) 91%,
      transparent 100%
    );

  mask-image:
    linear-gradient(
      to bottom,
      black 0%,
      black 82%,
      rgba(0,0,0,0.72) 91%,
      transparent 100%
    );
}

/* Left content */

.about-hero-content {
  position: relative;

  z-index: 5;

  max-width: 735px;

  padding-top: 24px;
}

.about-eyebrow {
  margin-bottom: 36px;

  color: rgba(201,167,106,0.82);

  font-size: 12px;
  font-weight: 600;
  letter-spacing: 7px;

  text-transform: uppercase;
}

.about-hero-content h1 {
  font-family: 'Cormorant Garamond', serif;

  font-size: clamp(76px, 6.4vw, 120px);
  line-height: 0.88;

  font-weight: 500;

  letter-spacing: 17px;

  color: #f1eadc;

  text-transform: uppercase;

  text-shadow:
    0 0 24px rgba(255,255,255,0.08),
    0 28px 70px rgba(0,0,0,0.86);
}

.about-gold-line {
  width: 108px;
  height: 1px;

  margin: 42px 0 34px;

  background: #c9a76a;

  box-shadow:
    0 0 18px rgba(201,167,106,0.28);
}

.about-kicker {
  margin-bottom: 28px;

  color: #c9a76a;

  font-size: 14px;
  font-weight: 600;
  letter-spacing: 7px;

  text-transform: uppercase;
}

.about-copy {
  max-width: 690px;
}

.about-copy p {
  margin-bottom: 24px;

  color: rgba(244,241,234,0.78);

  font-size: 18px;
  line-height: 1.72;
}

/* Signature */

.founder-signature {
  margin-top: 28px;
  margin-bottom: 22px;

  font-family: 'Cormorant Garamond', serif;
  font-style: italic;

  font-size: clamp(50px, 4.2vw, 78px);
  line-height: 1;

  color: #c9a76a;

  text-shadow:
    0 0 20px rgba(201,167,106,0.22);
}

.founder-name {
  margin-bottom: 12px;

  font-family: 'Cormorant Garamond', serif;

  color: #f1eadc;

  font-size: 25px;
  letter-spacing: 8px;

  text-transform: uppercase;
}

.founder-title {
  color: #c9a76a;

  font-size: 13px;
  font-weight: 600;
  letter-spacing: 6px;

  text-transform: uppercase;
}

/* Bottom cards */

.about-bottom-cards {
  position: relative;

  z-index: 6;

  display: grid;
  grid-template-columns: repeat(3, 1fr);

  border: 1px solid rgba(201,167,106,0.24);

  background:
    linear-gradient(
      145deg,
      rgba(4,4,4,0.82),
      rgba(4,4,4,0.58)
    );

  backdrop-filter: blur(10px);

  box-shadow:
    0 28px 72px rgba(0,0,0,0.48),
    inset 0 1px 0 rgba(255,255,255,0.04);
}

.about-bottom-card {
  display: grid;
  grid-template-columns: 74px 1fr;
  gap: 24px;

  min-height: 174px;

  padding: 34px 36px;

  border-right: 1px solid rgba(255,255,255,0.12);

  text-decoration: none;

  transition: 0.35s ease;

  overflow: hidden;
}

.about-bottom-card:last-child {
  border-right: none;
}

.about-bottom-card:hover {
  background:
    radial-gradient(
      circle at top left,
      rgba(201,167,106,0.10),
      transparent 34%
    ),
    rgba(255,255,255,0.025);

  transform: translateY(-4px);
}

.about-card-icon {
  width: 58px;
  height: 58px;

  border: 1px solid rgba(201,167,106,0.82);
  border-radius: 50%;

  display: flex;
  align-items: center;
  justify-content: center;

  color: #c9a76a;

  font-size: 25px;

  box-shadow:
    0 0 24px rgba(201,167,106,0.10);
}

.about-bottom-card h3 {
  margin-bottom: 10px;

  font-family: 'Cormorant Garamond', serif;

  color: #f1eadc;

  font-size: 24px;
  letter-spacing: 4px;
  text-transform: uppercase;
}

.about-bottom-card p {
  margin-bottom: 18px;

  color: rgba(244,241,234,0.68);

  font-size: 15px;
  line-height: 1.6;
}

.about-bottom-card span {
  color: #c9a76a;

  font-size: 12px;
  font-weight: 600;
  letter-spacing: 3px;

  text-transform: uppercase;
}

/* Responsive */

@media (max-width: 1150px) {
  .founder-hero-photo {
    right: 1.5%;
    width: min(520px, 43vw);
  }

  .about-hero-symbol {
    right: 0%;
    width: 480px;
    max-width: 42vw;
  }

  .about-bottom-cards {
    grid-template-columns: 1fr;
  }

  .about-bottom-card {
    border-right: none;
    border-bottom: 1px solid rgba(255,255,255,0.12);
  }

  .about-bottom-card:last-child {
    border-bottom: none;
  }
}

@media (max-width: 760px) {
  .about-obsidian-hero {
    padding: 120px 6% 38px;
  }

  .about-hero-content {
    max-width: 100%;
    padding-top: 12px;
  }

  .about-eyebrow {
    margin-bottom: 24px;

    font-size: 10px;
    letter-spacing: 4px;
  }

  .about-hero-content h1 {
    font-size: clamp(42px, 11vw, 56px);
    letter-spacing: 6px;
  }

  .about-kicker {
    font-size: 10px;
    letter-spacing: 3.2px;
  }

  .about-copy p {
    font-size: 14.5px;
    line-height: 1.62;
  }

  .founder-signature {
    font-size: 42px;
  }

  .founder-name {
    font-size: 20px;
    letter-spacing: 5px;
  }

  .founder-title {
    font-size: 10px;
    letter-spacing: 4px;
  }

  .founder-hero-photo {
    position: relative;

    right: auto;
    bottom: auto;

    width: 82%;
    max-width: 360px;

    margin: 34px auto -6px;

    display: block;

    z-index: 5;
  }

  .about-hero-symbol {
    right: -22%;
    top: 42%;

    width: 330px;
    max-width: none;

    opacity: 0.12;
  }

  .about-bottom-cards {
    margin-top: 28px;
  }

  .about-bottom-card {
    grid-template-columns: 48px 1fr;
    gap: 16px;

    padding: 24px 20px;
  }

  .about-card-icon {
    width: 42px;
    height: 42px;

    font-size: 18px;
  }

  .about-bottom-card h3 {
    font-size: 19px;
    letter-spacing: 2px;
  }

  .about-bottom-card p {
    font-size: 13.5px;
  }
}
/* ===================================================== */
/* ABOUT OBSIDIAN — MATCH MOCKUP BACKGROUND + PLACEMENT */
/* ===================================================== */

/* Remove the two-tone background panel */
.about-obsidian-dark-field {
  display: none !important;
}

/* Make the hero one continuous background */
.about-obsidian-hero {
  min-height: 100vh !important;

  padding:
    142px
    5.6%
    42px !important;

  background: #030303 !important;

  overflow: hidden !important;
}

/* Unified obsidian background */
.about-obsidian-bg {
  background:
    linear-gradient(
      90deg,
      rgba(0,0,0,0.72) 0%,
      rgba(0,0,0,0.58) 28%,
      rgba(0,0,0,0.34) 58%,
      rgba(0,0,0,0.48) 100%
    ),
    linear-gradient(
      180deg,
      rgba(0,0,0,0.08) 0%,
      rgba(0,0,0,0.34) 72%,
      rgba(0,0,0,0.62) 100%
    ),
    url('owner-bg.png') !important;

  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;

  opacity: 1 !important;
}

/* Soft darkening only around edges, not a separate color panel */
.about-obsidian-hero::before {
  content: '';

  position: absolute;
  inset: 0;

  background:
    radial-gradient(
      ellipse at 70% 42%,
      rgba(201,167,106,0.08) 0%,
      rgba(0,0,0,0.08) 32%,
      rgba(0,0,0,0.34) 78%,
      rgba(0,0,0,0.68) 100%
    );

  z-index: 1;

  pointer-events: none;
}

/* Keep all main content above the background */
.about-hero-content,
.founder-hero-photo,
.about-hero-symbol,
.about-bottom-cards {
  position: relative;
}

/* Left-side content placement */
.about-hero-content {
  z-index: 6 !important;

  max-width: 710px !important;

  padding-top: 10px !important;
}

/* About Obsidian title closer to mockup */
.about-hero-content h1 {
  font-size: clamp(78px, 6.2vw, 118px) !important;
  line-height: 0.88 !important;

  letter-spacing: 17px !important;

  color: #f1eadc !important;
}

/* Small gold line */
.about-gold-line {
  width: 104px !important;

  margin: 38px 0 34px !important;

  background: #c9a76a !important;
}

/* Kicker */
.about-kicker {
  margin-bottom: 28px !important;

  color: #c9a76a !important;

  font-size: 14px !important;
  letter-spacing: 7px !important;
}

/* Body copy */
.about-copy {
  max-width: 650px !important;
}

.about-copy p {
  margin-bottom: 24px !important;

  font-size: 18px !important;
  line-height: 1.72 !important;

  color: rgba(244,241,234,0.78) !important;
}

/* Signature placement */
.founder-signature {
  margin-top: 28px !important;
  margin-bottom: 22px !important;

  font-size: clamp(52px, 4.2vw, 78px) !important;

  color: #c9a76a !important;
}

.founder-name {
  font-size: 25px !important;
  letter-spacing: 8px !important;
}

.founder-title {
  font-size: 13px !important;
  letter-spacing: 6px !important;

  color: #c9a76a !important;
}

/* Static symbol behind founder — no movement */
.about-hero-symbol {
  position: absolute !important;

  right: 4.8% !important;
  top: 35% !important;

  width: 520px !important;
  max-width: 34vw !important;
  height: auto !important;

  transform: translateY(-50%) !important;

  opacity: 0.16 !important;

  z-index: 2 !important;

  animation: none !important;

  filter:
    brightness(0.82)
    contrast(1.08)
    drop-shadow(0 0 22px rgba(201,167,106,0.12))
    drop-shadow(0 24px 80px rgba(0,0,0,0.88)) !important;
}

/* Founder photo placement — closer to mockup */
.founder-hero-photo {
  position: absolute !important;

  right: 30% !important;
  bottom: 17.6% !important;

  width: min(585px, 39vw) !important;
  height: auto !important;

  object-fit: contain !important;

  z-index: 5 !important;

  background: transparent !important;
  border: none !important;
  outline: none !important;
  box-shadow: none !important;

  filter:
    brightness(0.94)
    contrast(1.08)
    drop-shadow(0 30px 84px rgba(0,0,0,0.92)) !important;

  -webkit-mask-image:
    linear-gradient(
      to bottom,
      black 0%,
      black 84%,
      rgba(0,0,0,0.72) 92%,
      transparent 100%
    ) !important;

  mask-image:
    linear-gradient(
      to bottom,
      black 0%,
      black 84%,
      rgba(0,0,0,0.72) 92%,
      transparent 100%
    ) !important;
}

/* Bottom card row placement */
.about-bottom-cards {
  z-index: 7 !important;

  margin-top: 34px !important;

  border: 1px solid rgba(201,167,106,0.24) !important;

  background:
    linear-gradient(
      145deg,
      rgba(4,4,4,0.82),
      rgba(4,4,4,0.58)
    ) !important;

  backdrop-filter: blur(10px) !important;

  box-shadow:
    0 28px 72px rgba(0,0,0,0.48),
    inset 0 1px 0 rgba(255,255,255,0.04) !important;
}

/* Make cards match mockup spacing */
.about-bottom-card {
  min-height: 174px !important;

  padding: 34px 36px !important;
}

.about-bottom-card h3 {
  color: #f1eadc !important;

  font-size: 24px !important;
  letter-spacing: 4px !important;
}

.about-bottom-card p {
  color: rgba(244,241,234,0.68) !important;

  font-size: 15px !important;
  line-height: 1.6 !important;
}

.about-bottom-card span {
  color: #c9a76a !important;
}
/* ===================================================== */
/* ABOUT OBSIDIAN — FINAL BACKGROUND + PHOTO POSITION FIX */
/* ===================================================== */

/* Remove all extra overlays causing the two-color background */
.about-obsidian-dark-field,
.about-obsidian-overlay {
  display: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
}

.about-obsidian-hero::before,
.about-obsidian-hero::after {
  content: none !important;
  display: none !important;
}

/* Force one continuous background across the whole page */
.about-obsidian-hero {
  position: relative !important;

  min-height: 100vh !important;

  padding: 142px 5.6% 42px !important;

  overflow: hidden !important;

  background:
    linear-gradient(
      90deg,
      rgba(0,0,0,0.68) 0%,
      rgba(0,0,0,0.56) 34%,
      rgba(0,0,0,0.36) 64%,
      rgba(0,0,0,0.46) 100%
    ),
    linear-gradient(
      180deg,
      rgba(0,0,0,0.08) 0%,
      rgba(0,0,0,0.32) 76%,
      rgba(0,0,0,0.58) 100%
    ),
    url('owner-bg.png') !important;

  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
}

/* Hide the separate background layer so it does not create color conflict */
.about-obsidian-bg {
  display: none !important;
}

/* Left-side text stays clean */
.about-hero-content {
  position: relative !important;
  z-index: 6 !important;

  max-width: 700px !important;

  padding-top: 4px !important;
}

/* Move the static Obsidian symbol left and up behind portrait */
.about-hero-symbol {
  position: absolute !important;

  right: 12.5% !important;
  top: 28% !important;

  width: 510px !important;
  max-width: 34vw !important;
  height: auto !important;

  transform: translateY(-50%) !important;

  opacity: 0.15 !important;

  z-index: 2 !important;

  animation: none !important;

  filter:
    brightness(0.82)
    contrast(1.08)
    drop-shadow(0 0 22px rgba(201,167,106,0.12))
    drop-shadow(0 24px 80px rgba(0,0,0,0.88)) !important;
}

/* Move portrait left and up like the mockup */
.founder-hero-photo {
  position: absolute !important;

  right: 60% !important;
  bottom: 30% !important;

  width: min(575px, 38vw) !important;
  height: auto !important;

  object-fit: contain !important;

  z-index: 5 !important;

  background: transparent !important;
  border: none !important;
  outline: none !important;
  box-shadow: none !important;

  filter:
    brightness(0.94)
    contrast(1.08)
    drop-shadow(0 30px 84px rgba(0,0,0,0.92)) !important;

  -webkit-mask-image:
    linear-gradient(
      to bottom,
      black 0%,
      black 84%,
      rgba(0,0,0,0.72) 92%,
      transparent 100%
    ) !important;

  mask-image:
    linear-gradient(
      to bottom,
      black 0%,
      black 84%,
      rgba(0,0,0,0.72) 92%,
      transparent 100%
    ) !important;
}

/* Keep bottom cards in same place */
.about-bottom-cards {
  position: relative !important;
  z-index: 7 !important;

  margin-top: 34px !important;
}
/* ===================================================== */
/* ABOUT OBSIDIAN — FORCE PORTRAIT POSITION */
/* Put this at the VERY BOTTOM of styles.css */
/* ===================================================== */

.about-obsidian-page .founder-hero-photo {
  position: absolute !important;

  left: 48% !important;
  top: 95px !important;

  right: auto !important;
  bottom: auto !important;

  width: min(610px, 41vw) !important;
  height: auto !important;

  transform: none !important;

  object-fit: contain !important;

  z-index: 5 !important;

  background: transparent !important;
  border: none !important;
  outline: none !important;
  box-shadow: none !important;

  filter:
    brightness(0.94)
    contrast(1.08)
    drop-shadow(0 30px 84px rgba(0,0,0,0.92)) !important;

  -webkit-mask-image:
    linear-gradient(
      to bottom,
      black 0%,
      black 84%,
      rgba(0,0,0,0.72) 92%,
      transparent 100%
    ) !important;

  mask-image:
    linear-gradient(
      to bottom,
      black 0%,
      black 84%,
      rgba(0,0,0,0.72) 92%,
      transparent 100%
    ) !important;
}

/* Move static symbol behind portrait to match new photo placement */

.about-obsidian-page .about-hero-symbol {
  position: absolute !important;

  left: 63% !important;
  top: 120px !important;

  right: auto !important;
  bottom: auto !important;

  width: 520px !important;
  max-width: 34vw !important;
  height: auto !important;

  transform: none !important;

  opacity: 0.15 !important;

  z-index: 2 !important;

  animation: none !important;
}
/* ===================================================== */
/* ABOUT OBSIDIAN — FINAL PORTRAIT PLACEMENT + NO EARLY CUT */
/* ===================================================== */

/* Force founder portrait to match reference placement */
.about-obsidian-page .founder-hero-photo {
  position: absolute !important;

  left: 48.5% !important;
  top: 112px !important;

  right: auto !important;
  bottom: auto !important;

  width: min(635px, 42vw) !important;
  height: auto !important;

  transform: none !important;

  object-fit: contain !important;

  z-index: 5 !important;

  background: transparent !important;
  border: none !important;
  outline: none !important;
  box-shadow: none !important;

  filter:
    brightness(0.94)
    contrast(1.08)
    drop-shadow(0 30px 84px rgba(0,0,0,0.92)) !important;

  /* Do NOT fade/cut too early */
  -webkit-mask-image:
    linear-gradient(
      to bottom,
      black 0%,
      black 94%,
      rgba(0,0,0,0.82) 98%,
      transparent 100%
    ) !important;

  mask-image:
    linear-gradient(
      to bottom,
      black 0%,
      black 94%,
      rgba(0,0,0,0.82) 98%,
      transparent 100%
    ) !important;
}

/* Keep card row above portrait like the reference */
.about-obsidian-page .about-bottom-cards {
  position: relative !important;
  z-index: 7 !important;

  margin-top: 30px !important;
}

/* Static symbol placement behind portrait */
.about-obsidian-page .about-hero-symbol {
  position: absolute !important;

  left: 61.5% !important;
  top: 104px !important;

  right: auto !important;
  bottom: auto !important;

  width: 535px !important;
  max-width: 35vw !important;

  transform: none !important;

  opacity: 0.15 !important;

  z-index: 2 !important;

  animation: none !important;
}
/* ===================================================== */
/* ABOUT OBSIDIAN — FINAL PORTRAIT SCALE + PLACEMENT */
/* Matches reference image placement */
/* ===================================================== */

.about-obsidian-page .founder-hero-photo {
  position: absolute !important;

  /* Placement */
  left: 37.5% !important;
  top: 380px !important;

  right: auto !important;
  bottom: auto !important;

  /* Size */
  width: min(840px, 54vw) !important;
  height: auto !important;

  /* Important: no early cut-off */
  -webkit-mask-image: none !important;
  mask-image: none !important;

  transform: none !important;

  object-fit: contain !important;

  z-index: 5 !important;

  background: transparent !important;
  border: none !important;
  outline: none !important;
  box-shadow: none !important;

  filter:
    brightness(0.94)
    contrast(1.08)
    drop-shadow(0 30px 84px rgba(0,0,0,0.92)) !important;
}

/* Let portrait naturally sit behind the card row */
.about-obsidian-page .about-bottom-cards {
  position: relative !important;
  z-index: 7 !important;
}

/* Symbol placement behind portrait */
.about-obsidian-page .about-hero-symbol {
  position: absolute !important;

  left: 63.5% !important;
  top: 110px !important;

  right: auto !important;
  bottom: auto !important;

  width: 560px !important;
  max-width: 38vw !important;
  height: auto !important;

  transform: none !important;

  opacity: 0.14 !important;

  z-index: 2 !important;

  animation: none !important;
}
/* ===================================================== */
/* ABOUT OBSIDIAN — PROFESSIONAL CURSIVE SIGNATURE */
/* ===================================================== */

.about-obsidian-page .founder-signature {
  margin-top: 30px !important;
  margin-bottom: 20px !important;

  font-family: 'Allura', cursive !important;

  font-size: clamp(64px, 5.2vw, 96px) !important;
  line-height: 0.82 !important;

  font-weight: 400 !important;
  font-style: normal !important;

  letter-spacing: 1px !important;

  color: #c9a76a !important;

  text-shadow:
    0 0 18px rgba(201,167,106,0.22),
    0 10px 26px rgba(0,0,0,0.72) !important;

  transform: rotate(-2deg) !important;

  width: fit-content !important;
}

/* Subtle signature underline */
.about-obsidian-page .founder-signature::after {
  content: '';

  display: block;

  width: 82%;
  height: 1px;

  margin-top: 12px;

  background:
    linear-gradient(
      90deg,
      rgba(201,167,106,0.0),
      rgba(201,167,106,0.64),
      rgba(201,167,106,0.0)
    );

  box-shadow:
    0 0 12px rgba(201,167,106,0.22);
}
/* ===================================================== */
/* CAPABILITIES PAGE — STRATEGIC FLOW SECTION */
/* ===================================================== */

.capabilities-flow {
  position: relative;

  margin-bottom: 96px;
  padding: 58px;

  border: 1px solid rgba(201,167,106,0.22);

  background:
    radial-gradient(
      circle at top left,
      rgba(201,167,106,0.08),
      transparent 34%
    ),
    linear-gradient(
      145deg,
      rgba(5,5,5,0.82),
      rgba(5,5,5,0.48)
    );

  box-shadow:
    0 34px 90px rgba(0,0,0,0.42),
    inset 0 1px 0 rgba(255,255,255,0.04);

  overflow: hidden;
}

.capabilities-flow::before {
  content: '';

  position: absolute;
  inset: 0;

  background:
    linear-gradient(
      90deg,
      rgba(255,255,255,0.018),
      transparent 32%,
      rgba(201,167,106,0.026)
    );

  pointer-events: none;
}

.flow-intro {
  position: relative;
  z-index: 2;

  max-width: 780px;

  margin-bottom: 52px;
}

.flow-intro h2 {
  margin-bottom: 24px;

  font-family: 'Cormorant Garamond', serif;

  font-size: clamp(46px, 4.6vw, 82px);
  line-height: 0.96;

  font-weight: 500;

  letter-spacing: 3px;

  color: #f1eadc;
}

.flow-intro p {
  max-width: 720px;

  color: rgba(244,241,234,0.70);

  font-size: 17px;
  line-height: 1.75;
}

.flow-steps {
  position: relative;
  z-index: 2;

  display: grid;
  grid-template-columns: repeat(4, 1fr);

  border-top: 1px solid rgba(201,167,106,0.20);
}

.flow-step {
  position: relative;

  padding: 34px 28px 10px;

  border-right: 1px solid rgba(255,255,255,0.10);
}

.flow-step:last-child {
  border-right: none;
}

.flow-step span {
  display: block;

  margin-bottom: 18px;

  font-family: 'Cormorant Garamond', serif;

  color: rgba(201,167,106,0.74);

  font-size: 38px;
  line-height: 1;

  letter-spacing: 2px;
}

.flow-step h3 {
  margin-bottom: 16px;

  font-family: 'Cormorant Garamond', serif;

  color: #f1eadc;

  font-size: 28px;
  letter-spacing: 3px;

  text-transform: uppercase;
}

.flow-step p {
  color: rgba(244,241,234,0.62);

  font-size: 14.5px;
  line-height: 1.65;
}

/* Hover polish */

.flow-step::after {
  content: '';

  position: absolute;
  left: 28px;
  bottom: 0;

  width: 0;
  height: 1px;

  background: #c9a76a;

  transition: 0.35s ease;
}

.flow-step:hover::after {
  width: 72px;
}

.flow-step:hover span,
.flow-step:hover h3 {
  color: #c9a76a;
}

/* Mobile cleanup */

@media (max-width: 980px) {
  .capabilities-flow {
    padding: 38px 28px;
    margin-bottom: 70px;
  }

  .flow-steps {
    grid-template-columns: 1fr;
  }

  .flow-step {
    border-right: none;
    border-bottom: 1px solid rgba(255,255,255,0.10);
    padding: 28px 0;
  }

  .flow-step:last-child {
    border-bottom: none;
  }

  .flow-intro h2 {
    font-size: clamp(38px, 10vw, 56px);
  }
}
/* ===================================================== */
/* CAPABILITIES PAGE — REMOVE REPETITIVE FOOTER CTA SPACE */
/* ===================================================== */

.capabilities-body .site-footer {
  padding-top: 58px !important;
}
/* ===================================================== */
/* CONTACT PAGE — INQUIRY TYPE DROPDOWN */
/* ===================================================== */

.contact-form select {
  width: 100%;

  padding: 17px 18px;

  border: 1px solid rgba(201,167,106,0.22);
  border-radius: 0;

  background:
    linear-gradient(
      145deg,
      rgba(5,5,5,0.86),
      rgba(5,5,5,0.56)
    );

  color: rgba(244,241,234,0.82);

  font-family: 'Inter', sans-serif;
  font-size: 15px;

  outline: none;

  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;

  cursor: pointer;

  transition: 0.3s ease;
}

.contact-form select:focus {
  border-color: rgba(201,167,106,0.58);

  box-shadow:
    0 0 0 1px rgba(201,167,106,0.18),
    0 0 28px rgba(201,167,106,0.10);
}

.contact-form select option {
  background: #050505;
  color: #f1eadc;
}

/* Custom dropdown arrow */

.contact-form .form-group:has(select) {
  position: relative;
}

.contact-form .form-group:has(select)::after {
  content: '⌄';

  position: absolute;

  right: 18px;
  bottom: 17px;

  color: #c9a76a;

  font-size: 18px;

  pointer-events: none;
}
/* ===================================================== */
/* HOMEPAGE — TRUST / CREDIBILITY SECTION */
/* ===================================================== */

.trust-section {
  position: relative;

  padding: 120px 6.8% 130px;

  background:
    radial-gradient(
      circle at 78% 18%,
      rgba(201,167,106,0.06),
      transparent 32%
    ),
    linear-gradient(
      180deg,
      rgba(3,3,3,0.98) 0%,
      rgba(7,6,5,0.98) 100%
    );

  border-top: 1px solid rgba(201,167,106,0.14);

  overflow: hidden;
}

.trust-section::before {
  content: '';

  position: absolute;
  inset: 0;

  background:
    linear-gradient(
      135deg,
      transparent 0%,
      rgba(255,255,255,0.012) 28%,
      transparent 54%,
      rgba(201,167,106,0.018) 78%,
      transparent 100%
    );

  pointer-events: none;
}

.trust-header {
  position: relative;
  z-index: 2;

  max-width: 980px;

  margin-bottom: 74px;
}

.trust-header h2 {
  margin-bottom: 30px;

  font-family: 'Cormorant Garamond', serif;

  font-size: clamp(46px, 4.8vw, 84px);
  line-height: 0.96;

  font-weight: 500;

  letter-spacing: 4px;

  color: #f1eadc;

  text-shadow:
    0 0 24px rgba(255,255,255,0.06),
    0 24px 70px rgba(0,0,0,0.88);
}

.trust-header p {
  max-width: 760px;

  color: rgba(244,241,234,0.70);

  font-size: 18px;
  line-height: 1.78;
}

.trust-grid {
  position: relative;
  z-index: 2;

  display: grid;
  grid-template-columns: repeat(4, 1fr);

  border: 1px solid rgba(201,167,106,0.22);

  background:
    linear-gradient(
      145deg,
      rgba(5,5,5,0.82),
      rgba(5,5,5,0.48)
    );

  backdrop-filter: blur(10px);

  box-shadow:
    0 34px 90px rgba(0,0,0,0.44),
    inset 0 1px 0 rgba(255,255,255,0.04);
}

.trust-card {
  position: relative;

  min-height: 300px;

  padding: 42px 34px;

  border-right: 1px solid rgba(255,255,255,0.11);

  overflow: hidden;

  transition: 0.35s ease;
}

.trust-card:last-child {
  border-right: none;
}

.trust-card::before {
  content: '';

  position: absolute;
  inset: 0;

  background:
    radial-gradient(
      circle at top left,
      rgba(201,167,106,0.08),
      transparent 36%
    );

  opacity: 0;

  transition: 0.35s ease;
}

.trust-card:hover::before {
  opacity: 1;
}

.trust-card:hover {
  transform: translateY(-5px);

  background:
    rgba(255,255,255,0.025);
}

.trust-card span {
  position: relative;
  z-index: 2;

  display: block;

  margin-bottom: 28px;

  font-family: 'Cormorant Garamond', serif;

  color: rgba(201,167,106,0.56);

  font-size: 48px;
  line-height: 1;
}

.trust-card h3 {
  position: relative;
  z-index: 2;

  margin-bottom: 18px;

  font-family: 'Cormorant Garamond', serif;

  color: #c9a76a;

  font-size: 27px;
  letter-spacing: 3px;

  text-transform: uppercase;
}

.trust-card p {
  position: relative;
  z-index: 2;

  color: rgba(244,241,234,0.66);

  font-size: 15px;
  line-height: 1.68;
}

/* Responsive */

@media (max-width: 1100px) {
  .trust-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .trust-card:nth-child(2) {
    border-right: none;
  }

  .trust-card:nth-child(1),
  .trust-card:nth-child(2) {
    border-bottom: 1px solid rgba(255,255,255,0.11);
  }
}

@media (max-width: 700px) {
  .trust-section {
    padding: 80px 6% 90px;
  }

  .trust-header {
    margin-bottom: 48px;
  }

  .trust-header h2 {
    font-size: clamp(34px, 9vw, 46px);
    letter-spacing: 2px;
  }

  .trust-header p {
    font-size: 14.5px;
    line-height: 1.65;
  }

  .trust-grid {
    grid-template-columns: 1fr;
  }

  .trust-card {
    min-height: auto;

    padding: 30px 24px;

    border-right: none !important;
    border-bottom: 1px solid rgba(255,255,255,0.11);
  }

  .trust-card:last-child {
    border-bottom: none;
  }

  .trust-card span {
    font-size: 36px;
    margin-bottom: 18px;
  }

  .trust-card h3 {
    font-size: 22px;
    letter-spacing: 2px;
  }

  .trust-card p {
    font-size: 13.5px;
  }
}