/* GYBRY V31 — Precision + Elite */
/* Visual-only overrides for V30 */

#gh-home {
  --v31-navy: #102b4e;
  --v31-blue: #087ed9;
  --v31-cyan: #14c8e5;
  --v31-gold: #c6a25b;
}

/* Premium header */
#gh-home .gh-header {
  background: linear-gradient(110deg, #ffffff, #eaf3ff) !important;
  border-bottom: 1px solid rgba(16,43,78,.15) !important;
  box-shadow: 0 6px 25px rgba(16,43,78,.09) !important;
}

/* Hero: subtle technological framing */
#gh-home .gh-hero {
  border: 1px solid rgba(8,126,217,.35) !important;
  box-shadow: 0 15px 45px rgba(16,43,78,.13) !important;
}

/* Primary action: deep navy / digital blue */
#gh-home .gh-button-primary {
  background: linear-gradient(110deg, #102b4e, #087ed9) !important;
  border-color: rgba(198,162,91,.65) !important;
  box-shadow: 0 12px 30px rgba(8,75,145,.28) !important;
}

/* Role strip */
#gh-home .gh-roles {
  background: linear-gradient(110deg, #e9f3ff, #ffffff, #eaf5ff) !important;
  border: 1px solid rgba(8,126,217,.18) !important;
}

#gh-home .gh-role {
  background: linear-gradient(145deg, #ffffff, #edf5ff) !important;
  border-color: rgba(8,126,217,.25) !important;
  box-shadow: 0 5px 15px rgba(16,43,78,.07) !important;
}

/* Capability cards */
#gh-home .gh-capabilities {
  background: linear-gradient(130deg, #e8f3ff, #f8fbff) !important;
}

#gh-home .gh-feature {
  border-color: rgba(8,126,217,.25) !important;
  box-shadow: 0 15px 35px rgba(16,43,78,.12) !important;
}

/* Gold highlights */
#gh-home .gh-hero-tab.is-active {
  border-bottom-color: #c6a25b !important;
  box-shadow: inset 0 -2px 0 #c6a25b !important;
}

/* Keyboard accessibility */
#gh-home a:focus-visible,
#gh-home button:focus-visible {
  outline: 2px solid #087ed9;
  outline-offset: 3px;
}

@media (max-width: 760px) {
  #gh-home .gh-hero {
    box-shadow: 0 8px 22px rgba(16,43,78,.10) !important;
  }
}
/* GYBRY V31.1 — Precision + Elite */
/* Scoped visual enhancement; V30 untouched. */

/* Scientific grid: only on non-photographic sections */
#gh-home .gh-roles,
#gh-home .gh-capabilities {
  background-image:
    linear-gradient(rgba(8,126,217,.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(8,126,217,.035) 1px, transparent 1px),
    linear-gradient(125deg, #eef6ff, #ffffff 52%, #e8f3ff) !important;
  background-size: 32px 32px, 32px 32px, auto !important;
}

/* Premium role tiles */
#gh-home .gh-role {
  background: linear-gradient(145deg, #fff, #edf5ff) !important;
  border: 1px solid rgba(28,111,185,.23) !important;
  box-shadow:
    0 8px 22px rgba(15,58,108,.075),
    inset 0 1px 0 rgba(255,255,255,.95) !important;
  transition: border-color .2s ease, box-shadow .2s ease !important;
}

/* Capability cards */
#gh-home .gh-feature {
  border: 1px solid rgba(27,108,180,.22) !important;
  box-shadow:
    0 18px 42px rgba(13,57,109,.12),
    inset 0 1px 0 rgba(255,255,255,.8) !important;
  transition: border-color .2s ease, box-shadow .2s ease !important;
}

/* Distinctive accents for the three capabilities */
#gh-home .gh-feature-testing {
  border-top: 3px solid #087ed9 !important;
}

#gh-home .gh-feature-teams {
  border-top: 3px solid #c6a25b !important;
}

#gh-home .gh-feature-analytics {
  border-top: 3px solid #00a7b7 !important;
}

/* Gold precision accents */
#gh-home .gh-feature-arrow {
  color: #b88b32 !important;
}

#gh-home .gh-logo-tag {
  letter-spacing: .13em;
}

/* Controlled hover, no movement of elements */
@media (hover: hover) {
  #gh-home .gh-role:hover,
  #gh-home .gh-feature:hover {
    border-color: rgba(8,126,217,.6) !important;
    box-shadow:
      0 20px 42px rgba(8,75,145,.16),
      0 0 0 1px rgba(198,162,91,.18) !important;
  }
}

/* Keep the primary CTA premium */
#gh-home .gh-button-primary {
  background: linear-gradient(110deg, #102b4e, #087ed9) !important;
  border: 1px solid rgba(198,162,91,.55) !important;
  box-shadow: 0 12px 30px rgba(8,75,145,.24) !important;
}

@media (max-width: 760px) {
  #gh-home .gh-roles,
  #gh-home .gh-capabilities {
    background-size: 24px 24px, 24px 24px, auto !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  #gh-home .gh-role,
  #gh-home .gh-feature {
    transition: none !important;
  }
}

/* V31.2 DIGITAL ARCHITECTURE START */

/* Organizations: premium navy section */
#gh-home .gh-org-section {
  background:
    radial-gradient(ellipse at 88% 12%, rgba(25,151,226,.22), transparent 52%),
    linear-gradient(120deg, #102b4e, #173e69 62%, #0b284a) !important;
  border: 1px solid rgba(96,190,255,.22) !important;
  box-shadow: 0 22px 55px rgba(12,45,82,.17) !important;
}

#gh-home .gh-org-lead h2,
#gh-home .gh-org-lead p {
  color: #f5f9ff !important;
}

#gh-home .gh-org-lead .gh-eyebrow {
  color: #e2bd74 !important;
}

#gh-home .gh-org-lead .gh-text-link {
  color: #9de4ff !important;
}

#gh-home .gh-org-visual {
  border: 1px solid rgba(170,217,255,.3) !important;
  box-shadow: 0 16px 38px rgba(0,10,30,.23) !important;
}

/* Multisport: cool scientific palette */
#gh-home .gh-multisport {
  background:
    radial-gradient(circle at 100% 0%, rgba(40,170,230,.13), transparent 45%),
    linear-gradient(130deg, #e9f4ff, #ffffff 55%, #edf6ff) !important;
  border: 1px solid rgba(21,107,185,.14) !important;
}

#gh-home .gh-multi-option {
  background: rgba(255,255,255,.88) !important;
  border: 1px solid rgba(21,107,185,.18) !important;
  box-shadow: 0 12px 28px rgba(13,64,118,.075) !important;
}

/* Evidence: deep technical visual identity */
#gh-home .gh-evidence-block {
  background:
    radial-gradient(ellipse at 10% 10%, rgba(0,191,224,.15), transparent 45%),
    linear-gradient(125deg, #0d294a, #163b64) !important;
  border: 1px solid rgba(99,183,232,.24) !important;
}

#gh-home .gh-evidence-block h2,
#gh-home .gh-evidence-block h3,
#gh-home .gh-evidence-block p,
#gh-home .gh-evidence-block strong {
  color: #f5f9ff !important;
}

#gh-home .gh-how-evidence-card {
  background: rgba(255,255,255,.09) !important;
  border: 1px solid rgba(169,217,255,.24) !important;
  box-shadow: 0 12px 30px rgba(0,12,35,.12) !important;
}

/* How it works: clean laboratory look */
#gh-home .gh-how {
  background:
    linear-gradient(rgba(16,108,185,.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(16,108,185,.035) 1px, transparent 1px),
    linear-gradient(135deg, #f4f9ff, #ffffff 60%, #edf6ff) !important;
  background-size: 36px 36px, 36px 36px, auto !important;
}

#gh-home .gh-how-step {
  background: linear-gradient(145deg, #ffffff, #f0f7ff) !important;
  border: 1px solid rgba(20,111,188,.2) !important;
  box-shadow: 0 14px 32px rgba(16,65,117,.09) !important;
}

#gh-home .gh-how-number {
  color: #087ed9 !important;
}

/* Roadmap: premium technical panels */
#gh-home .gh-how-next {
  background: linear-gradient(120deg, #e9f3ff, #f8fbff) !important;
  border: 1px solid rgba(18,106,183,.18) !important;
}

#gh-home .gh-how-next-item {
  background: rgba(255,255,255,.85) !important;
  border: 1px solid rgba(20,109,185,.18) !important;
  box-shadow: 0 8px 22px rgba(12,57,105,.06) !important;
}

/* Philosophy: understated premium contrast */
#gh-home .gh-philosophy {
  background:
    radial-gradient(circle at 90% 10%, rgba(8,126,217,.12), transparent 48%),
    linear-gradient(130deg, #edf5ff, #ffffff) !important;
}

/* Sign-in: calm, confident finish */
#gh-home .gh-easy-login {
  background: linear-gradient(120deg, #102b4e, #164b7a) !important;
  border: 1px solid rgba(120,203,255,.3) !important;
  box-shadow: 0 18px 48px rgba(13,54,98,.17) !important;
}

#gh-home .gh-login-info h2,
#gh-home .gh-login-info p {
  color: #ffffff !important;
}

/* Accessible focus states */
#gh-home a:focus-visible,
#gh-home button:focus-visible {
  outline: 2px solid #14c8e5 !important;
  outline-offset: 3px;
}

@media (max-width: 760px) {
  #gh-home .gh-org-section,
  #gh-home .gh-evidence-block,
  #gh-home .gh-easy-login {
    box-shadow: 0 10px 24px rgba(13,54,98,.12) !important;
  }
}

/* V31.2 DIGITAL ARCHITECTURE END *//* V31.3 ELITE DESIGN START */

/* Evidence: restore readable contrast without covering imagery */
#gh-home .gh-evidence-block {
  background: linear-gradient(125deg,#f1f8ff,#eaf4ff) !important;
  border: 1px solid rgba(12,91,160,.25) !important;
  box-shadow: 0 20px 52px rgba(12,45,82,.12) !important;
}

#gh-home .gh-evidence-block h2,
#gh-home .gh-evidence-block h3,
#gh-home .gh-evidence-block p,
#gh-home .gh-evidence-block strong,
#gh-home .gh-evidence-block .gh-how-evidence-note {
  color: #102b4e !important;
}

#gh-home .gh-how-evidence-card {
  background: rgba(255,255,255,.88) !important;
  border: 1px solid rgba(8,126,217,.2) !important;
  box-shadow: 0 14px 32px rgba(12,54,98,.10) !important;
}

#gh-home .gh-how-evidence-card-icon {
  color: #009da8 !important;
}

/* Roadmap: cohesive premium cards */
#gh-home .gh-how-next {
  background: linear-gradient(125deg,#e8f4ff,#f8fbff) !important;
  border: 1px solid rgba(8,126,217,.2) !important;
  border-radius: 24px !important;
  box-shadow: 0 16px 40px rgba(13,60,112,.09) !important;
}

#gh-home .gh-how-next-item {
  background: linear-gradient(145deg,#ffffff,#f0f7ff) !important;
  border: 1px solid rgba(8,126,217,.2) !important;
  border-radius: 16px !important;
  padding: 20px !important;
  box-shadow: 0 10px 24px rgba(13,60,112,.07) !important;
}

#gh-home .gh-how-next-item strong {
  color: #102b4e !important;
}

#gh-home .gh-how-next-item span {
  color: #385675 !important;
}

/* Login: refined navy with high-contrast form labels */
#gh-home .gh-easy-login {
  background:
    radial-gradient(ellipse at 8% 90%,rgba(0,194,225,.18),transparent 45%),
    linear-gradient(115deg,#092746,#154d7c) !important;
  border: 1px solid rgba(105,197,255,.32) !important;
  border-radius: 24px !important;
  box-shadow: 0 18px 44px rgba(7,43,83,.17) !important;
}

#gh-home .gh-easy-login .gh-login-info h2,
#gh-home .gh-easy-login .gh-login-info p {
  color: #ffffff !important;
}

/* Preserve legibility of step labels */
#gh-home .gh-easy-login label,
#gh-home .gh-easy-login [class*="step"] {
  color: #e8f4ff;
}

#gh-home .gh-easy-login input {
  color: #102b4e !important;
  background: #ffffff !important;
  border: 1px solid #a9cbe8 !important;
}

#gh-home .gh-easy-login input:disabled {
  background: #dce8f4 !important;
  color: #536d86 !important;
}

#gh-home .gh-easy-login button:disabled {
  opacity: .58;
}

/* V31.3 ELITE DESIGN END */

/* V31.4 — CONSISTENT DESIGN GEOMETRY */

/* Main sections */
#gh-home .gh-hero,
#gh-home .gh-roles,
#gh-home .gh-org-section,
#gh-home .gh-multisport,
#gh-home .gh-evidence-block,
#gh-home .gh-how,
#gh-home .gh-philosophy,
#gh-home .gh-easy-login {
  border-radius: 24px !important;
}

/* Clip imagery to rounded outer boundaries */
#gh-home .gh-hero,
#gh-home .gh-org-section,
#gh-home .gh-evidence-block {
  overflow: hidden;
}

/* Large inner panels */
#gh-home .gh-how-next {
  border-radius: 20px !important;
}

/* Cards */
#gh-home .gh-role,
#gh-home .gh-feature,
#gh-home .gh-multi-option,
#gh-home .gh-how-evidence-card,
#gh-home .gh-how-step,
#gh-home .gh-how-next-item {
  border-radius: 16px !important;
}

/* Buttons and inputs */
#gh-home .gh-button,
#gh-home .gh-login,
#gh-home .gh-easy-login input {
  border-radius: 12px !important;
}

/* Preserve rounded navigation controls */
#gh-home .gh-slide-controls {
  border-radius: 100px !important;
}

@media (max-width:760px) {
  #gh-home .gh-hero,
  #gh-home .gh-roles,
  #gh-home .gh-org-section,
  #gh-home .gh-multisport,
  #gh-home .gh-evidence-block,
  #gh-home .gh-how,
  #gh-home .gh-philosophy,
  #gh-home .gh-easy-login {
    border-radius: 18px !important;
  }
}

/* END V31.4 */

/* GYBRY V31.5 — ELITE TECHNOLOGY */

/* Login panel: subtle digital atmosphere */
#gh-home .gh-easy-login {
  position: relative;
  isolation: isolate;
  background:
    radial-gradient(ellipse at 20% 110%, rgba(0,209,232,.24), transparent 48%),
    radial-gradient(ellipse at 85% -30%, rgba(34,135,220,.24), transparent 52%),
    linear-gradient(115deg,#092542,#123d69 65%,#092d51) !important;
  border: 1px solid rgba(79,180,235,.35) !important;
  box-shadow:
    0 18px 45px rgba(7,39,77,.18),
    inset 0 1px 0 rgba(255,255,255,.13) !important;
}

/* Decorative digital light, behind the controls */
#gh-home .gh-easy-login::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  border-radius: inherit;
  background:
    repeating-linear-gradient(
      115deg,
      transparent 0,
      transparent 44px,
      rgba(73,188,238,.035) 45px,
      transparent 46px
    );
}

/* Login buttons: premium technical appearance */
#gh-home .gh-easy-login button:not(:disabled) {
  position: relative;
  background: linear-gradient(115deg,#07345d,#087ed9) !important;
  border: 1px solid rgba(198,162,91,.75) !important;
  border-radius: 12px !important;
  color: #ffffff !important;
  box-shadow:
    0 7px 22px rgba(0,128,200,.22),
    inset 0 1px 0 rgba(255,255,255,.25) !important;
  transition:
    background .2s ease,
    box-shadow .2s ease,
    transform .2s ease !important;
}

@media (hover:hover) {
  #gh-home .gh-easy-login button:not(:disabled):hover {
    transform: translateY(-1px);
    box-shadow:
      0 10px 27px rgba(0,168,230,.35),
      0 0 0 1px rgba(198,162,91,.35) !important;
  }
}

/* Never visually activate disabled actions */
#gh-home .gh-easy-login button:disabled {
  opacity: .55 !important;
  cursor: not-allowed;
}

/* Inputs: clearer, premium finish */
#gh-home .gh-easy-login input:not(:disabled) {
  background: linear-gradient(180deg,#fff,#f4faff) !important;
  border: 1px solid rgba(116,190,239,.75) !important;
  box-shadow: inset 0 1px 3px rgba(16,43,78,.06) !important;
}

#gh-home .gh-easy-login input:focus-visible {
  outline: 2px solid #14c8e5 !important;
  outline-offset: 2px;
}

/* Roadmap: more polished hierarchy */
#gh-home .gh-how-next-item {
  border-top: 3px solid rgba(8,126,217,.65) !important;
  box-shadow:
    0 12px 26px rgba(15,60,110,.09),
    inset 0 1px 0 #fff !important;
}

#gh-home .gh-how-next-item:nth-child(2) {
  border-top-color: #00a8b6 !important;
}

#gh-home .gh-how-next-item:nth-child(3) {
  border-top-color: #c6a25b !important;
}

#gh-home .gh-how-next-item:nth-child(4) {
  border-top-color: #4e8fd4 !important;
}

@media (prefers-reduced-motion: reduce) {
  #gh-home .gh-easy-login button {
    transition: none !important;
  }
}

/* END V31.5 */

/* V31.6 — DARK HERO + CLEAR STEPS */

/* Dark premium treatment for hero slides 3–5 */
@media (min-width: 761px) {
  #gh-home .gh-hero[data-gh-active-slide="2"],
  #gh-home .gh-hero[data-gh-active-slide="3"],
  #gh-home .gh-hero[data-gh-active-slide="4"] {
    background: #092746 !important;
  }

  #gh-home .gh-hero[data-gh-active-slide="2"] .gh-hero-wash,
  #gh-home .gh-hero[data-gh-active-slide="3"] .gh-hero-wash,
  #gh-home .gh-hero[data-gh-active-slide="4"] .gh-hero-wash {
    background:
      radial-gradient(ellipse at 25% 90%,rgba(0,173,231,.18),transparent 48%),
      linear-gradient(90deg,#082544 0%,#0d3458 21%,rgba(12,48,82,.95) 34%,rgba(12,48,82,.62) 45%,transparent 67%) !important;
  }

  #gh-home .gh-hero:is(
    [data-gh-active-slide="2"],
    [data-gh-active-slide="3"],
    [data-gh-active-slide="4"]
  ) .gh-slide-copy h1 {
    color: #ffffff !important;
  }

  #gh-home .gh-hero:is(
    [data-gh-active-slide="2"],
    [data-gh-active-slide="3"],
    [data-gh-active-slide="4"]
  ) .gh-slide-copy p {
    color: #e2effc !important;
  }

  #gh-home .gh-hero:is(
    [data-gh-active-slide="2"],
    [data-gh-active-slide="3"],
    [data-gh-active-slide="4"]
  ) .gh-hero-tab {
    color: #f2f8ff !important;
  }

  #gh-home .gh-hero:is(
    [data-gh-active-slide="2"],
    [data-gh-active-slide="3"],
    [data-gh-active-slide="4"]
  ) .gh-hero-tab.is-active::after {
    background: #d5a447 !important;
  }
}

/* Clear numbered circles */
#gh-home .gh-easy-login .gh-step-num {
  background: #c8fff5 !important;
  color: #073b5c !important;
  font-weight: 900 !important;
  opacity: 1 !important;
  text-shadow: none !important;
  box-shadow: 0 0 0 1px rgba(255,255,255,.28) !important;
}

/* END V31.6 */

/* GYBRY V31.7 — TECHNOLOGICAL LOGIN */

/* Active email input */
#gh-home #gh-auth-email:not(:disabled) {
  background: linear-gradient(180deg,#ffffff,#f1f9ff) !important;
  border: 1px solid rgba(42,174,231,.85) !important;
  box-shadow:
    0 0 0 1px rgba(42,174,231,.1),
    inset 0 1px 3px rgba(16,43,78,.05) !important;
}

/* Step numbers */
#gh-home .gh-auth-form .gh-step-num {
  background: #c9fff4 !important;
  color: #073958 !important;
  font-weight: 900 !important;
  opacity: 1 !important;
}

/* Final button: preserve disabled state */
#gh-home .gh-auth-submit {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  overflow: hidden;
  min-width: 0;
  background: linear-gradient(110deg,#0c426e,#087ed9) !important;
  border: 1px solid rgba(198,162,91,.7) !important;
  border-radius: 12px !important;
  color: #fff !important;
}

#gh-home .gh-auth-submit-text {
  position: relative;
  z-index: 2;
  font-weight: 800;
  white-space: nowrap;
}

#gh-home .gh-auth-submit > svg {
  position: relative;
  z-index: 2;
  flex-shrink: 0;
}

/* Digital orbital emblem */
#gh-home .gh-auth-tech-emblem {
  position: relative;
  width: 38px;
  height: 38px;
  flex: 0 0 38px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(125,237,255,.6);
  border-radius: 50%;
  background: radial-gradient(circle,rgba(15,220,238,.22),transparent 70%);
  box-shadow: 0 0 16px rgba(0,215,235,.25);
}

#gh-home .gh-auth-tech-emblem::before,
#gh-home .gh-auth-tech-emblem::after {
  content: "";
  position: absolute;
  inset: 5px;
  border: 1px solid rgba(108,235,255,.8);
  border-radius: 50%;
  transform: rotate(-35deg) scaleX(.52);
}

#gh-home .gh-auth-tech-emblem::after {
  transform: rotate(35deg) scaleX(.52);
  border-color: rgba(226,189,113,.85);
}

#gh-home .gh-auth-tech-core {
  width: 11px;
  height: 11px;
  border: 2px solid #a4f5ff;
  border-radius: 50%;
  box-shadow: 0 0 10px rgba(60,224,255,.7);
}

/* Disabled remains clearly disabled */
#gh-home .gh-auth-submit:disabled {
  opacity: .7 !important;
  cursor: not-allowed;
  filter: saturate(.65);
}

#gh-home .gh-auth-submit:not(:disabled) {
  opacity: 1 !important;
  filter: none;
  box-shadow: 0 10px 24px rgba(0,143,215,.25) !important;
}

@media (hover:hover) and (prefers-reduced-motion:no-preference) {
  #gh-home .gh-auth-submit:not(:disabled):hover .gh-auth-tech-emblem {
    animation: gh-v31-orbit 3s linear infinite;
  }
}

@keyframes gh-v31-orbit {
  to { transform: rotate(360deg); }
}

@media (max-width:760px) {
  #gh-home .gh-auth-tech-emblem {
    width: 28px;
    height: 28px;
    flex-basis: 28px;
  }

  #gh-home .gh-auth-submit {
    gap: 6px;
  }

  #gh-home .gh-auth-submit-text {
    font-size: 12px;
  }
}

/* END V31.7 */


/* GYBRY V31.8 — HERO CONTRAST + SHARED TECH IDENTITY */

/* Slides 3, 4, 5: restore legible dark typography */
#gh-home .gh-hero:is(
  [data-gh-active-slide="2"],
  [data-gh-active-slide="3"],
  [data-gh-active-slide="4"]
) .gh-hero-content :is(h1,h2,h3) {
  color: #102b4e !important;
  -webkit-text-fill-color: #102b4e !important;
  text-shadow: none !important;
}

#gh-home .gh-hero:is(
  [data-gh-active-slide="2"],
  [data-gh-active-slide="3"],
  [data-gh-active-slide="4"]
) .gh-hero-content p {
  color: #344e6a !important;
  -webkit-text-fill-color: #344e6a !important;
  text-shadow: none !important;
}

#gh-home .gh-hero:is(
  [data-gh-active-slide="2"],
  [data-gh-active-slide="3"],
  [data-gh-active-slide="4"]
) .gh-hero-tab {
  color: #173656 !important;
  -webkit-text-fill-color: #173656 !important;
  text-shadow: none !important;
}

#gh-home .gh-hero:is(
  [data-gh-active-slide="2"],
  [data-gh-active-slide="3"],
  [data-gh-active-slide="4"]
) .gh-hero-tab.is-active {
  color: #0a365d !important;
}

/* Preserve the bright photographic composition */
#gh-home .gh-hero:is(
  [data-gh-active-slide="2"],
  [data-gh-active-slide="3"],
  [data-gh-active-slide="4"]
) {
  background: #f3f9ff !important;
}

/* Remove the dark wash introduced in V31.6 */
#gh-home .gh-hero:is(
  [data-gh-active-slide="2"],
  [data-gh-active-slide="3"],
  [data-gh-active-slide="4"]
) .gh-hero-wash {
  background:
    linear-gradient(
      90deg,
      rgba(246,251,255,.98) 0%,
      rgba(239,248,255,.94) 27%,
      rgba(235,247,255,.58) 42%,
      rgba(235,247,255,0) 63%
    ) !important;
}

/* Login button: orbital brain emblem */
#gh-home .gh-auth-submit .gh-auth-tech-emblem {
  position: relative;
  display: grid;
  place-items: center;
  width: 48px;
  height: 48px;
  flex: 0 0 48px;
  border: 0 !important;
  border-radius: 50%;
  background:
    radial-gradient(circle,rgba(0,213,255,.25),transparent 72%);
  box-shadow: none !important;
  overflow: visible;
}

/* Disable the old generic rings */
#gh-home .gh-auth-submit .gh-auth-tech-emblem::before,
#gh-home .gh-auth-submit .gh-auth-tech-emblem::after {
  content: none !important;
}

#gh-home .gh-auth-tech-orbit {
  position: absolute;
  inset: 7px;
  border: 1px solid rgba(114,227,255,.85);
  border-radius: 50%;
  box-shadow: 0 0 9px rgba(0,210,255,.28);
}

#gh-home .gh-auth-tech-orbit-a {
  transform: rotate(25deg) scaleX(.43);
}

#gh-home .gh-auth-tech-orbit-b {
  transform: rotate(-35deg) scaleX(.43);
}

#gh-home .gh-auth-tech-orbit-c {
  transform: rotate(80deg) scaleX(.43);
  border-color: rgba(198,230,255,.65);
}

#gh-home .gh-auth-tech-brain {
  position: relative;
  z-index: 2;
  width: 25px;
  height: 25px;
  fill: none;
  stroke: #a6f5ff;
  stroke-width: 1.7;
  color: #a6f5ff;
  filter: drop-shadow(0 0 5px rgba(0,230,255,.75));
}

#gh-home .gh-auth-submit:not(:disabled) .gh-auth-tech-emblem {
  animation: gh-v318-orbit 9s linear infinite;
}

@keyframes gh-v318-orbit {
  50% { filter: drop-shadow(0 0 9px rgba(0,220,255,.7)); }
}

/* Keep the disabled state visibly inactive */
#gh-home .gh-auth-submit:disabled .gh-auth-tech-emblem {
  opacity: .65;
  animation: none !important;
}

@media (max-width: 760px) {
  #gh-home .gh-auth-submit .gh-auth-tech-emblem {
    width: 34px;
    height: 34px;
    flex-basis: 34px;
  }

  #gh-home .gh-auth-tech-brain {
    width: 19px;
    height: 19px;
  }
}

@media (prefers-reduced-motion: reduce) {
  #gh-home .gh-auth-tech-emblem {
    animation: none !important;
  }
}

/* END V31.8 */
/* GYBRY V31.10 — Elite Technology */

/* Role cards: remove enclosing frame */
#gh-home .gh-roles {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
}

#gh-home .gh-role {
  border: 1px solid rgba(8,126,217,.22) !important;
  border-radius: 22px !important;
  background: linear-gradient(145deg,#fff,#eaf4ff) !important;
  box-shadow: 0 10px 25px rgba(16,43,78,.07) !important;
  transition: transform .22s ease, box-shadow .22s ease !important;
}

@media (hover:hover) {
  #gh-home .gh-role:hover {
    transform: translateY(-4px);
    box-shadow: 0 16px 34px rgba(8,126,217,.16) !important;
  }
}

/* Elite login surface */
#gh-home .gh-easy-login {
  background:
    repeating-linear-gradient(
      116deg,
      transparent 0 64px,
      rgba(20,200,229,.045) 65px,
      transparent 66px 100px
    ),
    radial-gradient(ellipse at 25% 110%,rgba(0,195,235,.23),transparent 45%),
    linear-gradient(110deg,#092947,#164b7e 65%,#082845) !important;
  border: 1px solid rgba(77,194,255,.45) !important;
  border-radius: 26px !important;
  box-shadow: 0 20px 50px rgba(9,40,75,.18) !important;
}

#gh-home .gh-easy-login .gh-step-num {
  color: #07375a !important;
  background: #cffff7 !important;
  border: 1px solid #72f4e8 !important;
  font-weight: 900 !important;
  box-shadow: 0 0 0 3px rgba(0,220,210,.09) !important;
}

#gh-home .gh-auth-submit {
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(233,186,78,.8) !important;
  border-radius: 15px !important;
  background: linear-gradient(105deg,#103b70,#076fb7) !important;
  box-shadow: inset 0 0 18px rgba(18,194,240,.12),
              0 0 18px rgba(16,174,230,.15) !important;
}

#gh-home .gh-auth-submit:not(:disabled) {
  color: white !important;
  cursor: pointer;
}

#gh-home .gh-auth-submit:disabled {
  opacity: .55;
  cursor: not-allowed;
}

/* Animated orbital emblem — decorative only */
#gh-home .gh-auth-submit::before {
  content: "";
  position: absolute;
  width: 40px;
  height: 40px;
  right: 20%;
  top: 50%;
  border: 1.5px solid rgba(88,230,255,.75);
  border-radius: 50%;
  transform: translateY(-50%) rotate(-25deg) scaleX(.55);
  box-shadow: 0 0 12px rgba(0,220,255,.25);
  pointer-events: none;
  animation: gybry-v31-orbit 5s linear infinite;
}

#gh-home .gh-auth-submit::after {
  content: "✧";
  position: absolute;
  right: calc(20% + 12px);
  top: 50%;
  transform: translateY(-50%);
  font-size: 19px;
  color: #8af4ff;
  text-shadow: 0 0 9px #00d9ff;
  pointer-events: none;
}

@keyframes gybry-v31-orbit {
  0%   { transform: translateY(-50%) rotate(0deg) scaleX(.55); }
  100% { transform: translateY(-50%) rotate(360deg) scaleX(.55); }
}

@media (prefers-reduced-motion:reduce) {
  #gh-home .gh-auth-submit::before {
    animation: none !important;
  }
}

/* Keep all login controls and layout untouched */

/* V31.11 — third-step label */
#gh-home .gh-auth-submit-field > label [data-i18n="step3"] {
  font-weight: 700 !important;
}


/* V31.15 — single animated emblem */
#gh-home .gh-auth-submit .gh-auth-tech-orbit {
  display: none !important;
}

#gh-home .gh-auth-submit .gh-auth-tech-emblem {
  position: relative !important;
  display: inline-grid !important;
  place-items: center !important;
  width: 40px !important;
  height: 40px !important;
  flex: 0 0 40px !important;
}

#gh-home .gh-auth-submit .gh-auth-tech-brain {
  display: block !important;
  width: 27px !important;
  height: 27px !important;
  opacity: 1 !important;
  animation: ghV31BrainPulse 2.2s ease-in-out infinite !important;
  transform-origin: center center !important;
}

@keyframes ghV31BrainPulse {
  0%, 100% {
    opacity: .35;
    transform: scale(.85);
    filter: drop-shadow(0 0 1px #38dfff);
  }
  50% {
    opacity: 1;
    transform: scale(1.2);
    filter: drop-shadow(0 0 12px #38dfff);
  }
}

#gh-home .gh-auth-submit:disabled .gh-auth-tech-brain {
  animation: ghV31BrainPulse 2.2s ease-in-out infinite !important;
}

#gh-home .gh-auth-submit > svg {
  position: static !important;
  width: 20px !important;
  height: 20px !important;
  transform: none !important;
  animation: none !important;
  border: none !important;
  box-shadow: none !important;
}

@media (prefers-reduced-motion: reduce) {
  #gh-home .gh-auth-submit .gh-auth-tech-brain {
    animation: none !important;
  }
}
/* V31.16 — centered animated brain orbit */
#gh-home .gh-auth-submit {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 14px !important;
}

#gh-home .gh-auth-submit .gh-auth-tech-emblem {
  position: relative !important;
  display: grid !important;
  place-items: center !important;
  width: 46px !important;
  height: 46px !important;
  flex: 0 0 46px !important;
  overflow: visible !important;
}

#gh-home .gh-auth-submit .gh-auth-tech-orbit {
  position: absolute !important;
  display: block !important;
  inset: 4px !important;
  width: 38px !important;
  height: 38px !important;
  box-sizing: border-box !important;
  border: 1px solid rgba(95,226,255,.65) !important;
  border-radius: 50% !important;
  background: transparent !important;
  box-shadow: 0 0 8px rgba(55,210,255,.25) !important;
  transform-origin: center center !important;
  pointer-events: none !important;
}

#gh-home .gh-auth-submit .gh-auth-tech-orbit-a {
  transform: rotate(-35deg) scaleX(.68) !important;
  animation: ghOrbitA16 6s linear infinite !important;
}

#gh-home .gh-auth-submit .gh-auth-tech-orbit-b {
  transform: rotate(55deg) scaleX(.68) !important;
  animation: ghOrbitB16 8s linear infinite !important;
}

#gh-home .gh-auth-submit .gh-auth-tech-orbit-c {
  display: none !important;
}

#gh-home .gh-auth-submit .gh-auth-tech-brain {
  position: relative !important;
  z-index: 2 !important;
  width: 27px !important;
  height: 27px !important;
  animation: ghV31BrainPulse 2.2s ease-in-out infinite !important;
}

#gh-home .gh-auth-submit > svg {
  position: static !important;
  display: block !important;
  width: 20px !important;
  height: 20px !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
  transform: none !important;
}

@keyframes ghOrbitA16 {
  from { transform: rotate(-35deg) scaleX(.68); }
  to   { transform: rotate(325deg) scaleX(.68); }
}

@keyframes ghOrbitB16 {
  from { transform: rotate(55deg) scaleX(.68); }
  to   { transform: rotate(415deg) scaleX(.68); }
}

@media (prefers-reduced-motion: reduce) {
  #gh-home .gh-auth-submit .gh-auth-tech-orbit,
  #gh-home .gh-auth-submit .gh-auth-tech-brain {
    animation: none !important;
  }
}

/* V31.17 — reuse the exact hero CTA orbital component */
#gh-home .gh-auth-submit {
  justify-content: space-between !important;
  padding: 12px 24px !important;
  gap: 12px !important;
}

#gh-home .gh-auth-submit .gh-auth-submit-text {
  flex: 1 1 auto;
  text-align: left;
  white-space: nowrap;
  font-size: clamp(13px, 1.2vw, 17px);
}

#gh-home .gh-auth-submit .gh-auth-cta-tech {
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex: 0 0 84px !important;
  width: 84px !important;
  height: 35px !important;
  margin: 0 5px 0 auto !important;
  color: #b5ffff !important;
  opacity: 1 !important;
  transform: none !important;
  animation: none !important;
}

#gh-home .gh-auth-submit .gh-auth-cta-tech svg {
  width: 32px !important;
  height: 32px !important;
  color: #b5ffff !important;
  filter: drop-shadow(0 0 5px rgba(44,245,236,.9));
}

#gh-home .gh-auth-submit .gh-auth-cta-tech i {
  display: block !important;
}

#gh-home .gh-auth-submit::before,
#gh-home .gh-auth-submit::after {
  content: none !important;
  display: none !important;
}

#gh-home .gh-auth-submit > svg {
  position: static !important;
  flex: 0 0 20px !important;
  width: 20px !important;
  height: 20px !important;
  border: 0 !important;
  background: none !important;
  box-shadow: none !important;
  transform: none !important;
}

@media (max-width: 760px) {
  #gh-home .gh-auth-submit {
    padding: 10px 12px !important;
  }
  #gh-home .gh-auth-submit .gh-auth-cta-tech {
    flex-basis: 50px !important;
    width: 50px !important;
    margin-right: 0 !important;
  }
  #gh-home .gh-auth-submit .gh-auth-cta-tech svg {
    width: 25px !important;
    height: 25px !important;
  }
}

/* V31.18 — align quick-login controls */
@media (min-width: 761px) {
  #gh-home .gh-auth-form .gh-auth-field input,
  #gh-home .gh-auth-form .gh-auth-input-row,
  #gh-home .gh-auth-form .gh-auth-submit {
    height: 56px !important;
    min-height: 56px !important;
    box-sizing: border-box !important;
  }

  #gh-home .gh-auth-form .gh-auth-send {
    height: 56px !important;
    min-height: 56px !important;
  }

  #gh-home .gh-auth-form .gh-auth-submit {
    padding: 0 18px !important;
    align-items: center !important;
  }

  #gh-home .gh-auth-form .gh-auth-submit-text {
    line-height: 1.2 !important;
  }

  #gh-home .gh-auth-form .gh-auth-cta-tech {
    height: 35px !important;
    align-self: center !important;
  }
}

/* V31.19 — fit login CTA contents */
#gh-home .gh-auth-submit {
  display: grid !important;
  grid-template-columns: minmax(0,1fr) 64px 22px !important;
  align-items: center !important;
  column-gap: 10px !important;
  padding: 0 18px !important;
  overflow: hidden !important;
}

#gh-home .gh-auth-submit .gh-auth-submit-text {
  min-width: 0 !important;
  font-size: clamp(12px, 1vw, 16px) !important;
  line-height: 1.2 !important;
  white-space: nowrap !important;
  text-align: left !important;
}

#gh-home .gh-auth-submit .gh-auth-cta-tech {
  width: 64px !important;
  min-width: 0 !important;
  height: 36px !important;
  margin: 0 !important;
  justify-self: center !important;
}

#gh-home .gh-auth-submit > svg {
  display: block !important;
  width: 20px !important;
  height: 20px !important;
  min-width: 20px !important;
  justify-self: end !important;
  margin: 0 !important;
}

@media (max-width: 1100px) {
  #gh-home .gh-auth-submit {
    grid-template-columns: minmax(0,1fr) 46px 18px !important;
    column-gap: 6px !important;
    padding: 0 12px !important;
  }
  #gh-home .gh-auth-submit .gh-auth-cta-tech {
    width: 46px !important;
  }
  #gh-home .gh-auth-submit .gh-auth-submit-text {
    font-size: 12px !important;
  }
}

@media (max-width: 420px) {
  #gh-home .gh-auth-submit {
    grid-template-columns: minmax(0,1fr) 36px 18px !important;
    column-gap: 4px !important;
    padding: 0 9px !important;
  }
  #gh-home .gh-auth-submit .gh-auth-cta-tech {
    width: 36px !important;
  }
}

/* V31.20 — clean capability cards and symmetrical arrows */

/* Remove the rectangular wrapper, preserve individual cards */
#gh-home .gh-capabilities {
  border: none !important;
  outline: none !important;
  box-shadow: none !important;
  background: transparent !important;
}

/* Uniform premium card corners */
#gh-home .gh-capabilities .gh-feature {
  position: relative !important;
  border-radius: 24px !important;
  overflow: hidden !important;
  isolation: isolate;
}

/* Consistent circular arrow buttons */
#gh-home .gh-capabilities .gh-feature a:has(svg),
#gh-home .gh-capabilities .gh-feature button:has(svg) {
  border-radius: 50%;
}

/* Do not affect images or text */

/* V31.22 — refined capability arrows */
#gh-home .gh-capabilities .gh-feature-arrow {
  display: grid !important;
  place-items: center !important;

  left: 24px !important;
  bottom: 18px !important;

  width: 40px !important;
  height: 40px !important;
  min-width: 40px !important;
  min-height: 40px !important;

  padding: 0 0 3px 0 !important;
  border: 1.5px solid #8ebcde !important;
  border-radius: 50% !important;
  background: #f4f9ff !important;
  color: #174a78 !important;

  font-family: Arial, sans-serif !important;
  font-size: 23px !important;
  font-weight: 400 !important;
  line-height: 1 !important;
  text-align: center !important;
  box-shadow: 0 3px 10px rgba(16,66,110,.08) !important;
}

#gh-home .gh-capabilities .gh-feature:hover .gh-feature-arrow {
  background: #1767a5 !important;
  border-color: #1767a5 !important;
  color: #fff !important;
  box-shadow: 0 4px 14px rgba(23,103,165,.25) !important;
}

@media (max-width:760px) {
  #gh-home .gh-capabilities .gh-feature-arrow {
    left: 16px !important;
    bottom: 16px !important;
    width: 38px !important;
    height: 38px !important;
    min-width: 38px !important;
    min-height: 38px !important;
  }
}

/* V31.23 — compact, aligned capability arrows */
#gh-home .gh-capabilities .gh-feature-arrow {
  left: 28px !important;
  bottom: 26px !important;

  width: 34px !important;
  height: 34px !important;
  min-width: 34px !important;
  min-height: 34px !important;

  padding: 0 0 2px !important;
  font-size: 20px !important;
  line-height: 1 !important;
}

@media (max-width: 760px) {
  #gh-home .gh-capabilities .gh-feature-arrow {
    left: 18px !important;
    bottom: 18px !important;
    width: 32px !important;
    height: 32px !important;
    min-width: 32px !important;
    min-height: 32px !important;
    font-size: 19px !important;
  }
}

/* V31.24 — align arrows with upper icons */
#gh-home .gh-capabilities .gh-feature-arrow {
  left: 16px !important;
}

@media (max-width: 760px) {
  #gh-home .gh-capabilities .gh-feature-arrow {
    left: 12px !important;
  }
}


/* V31.40 — single-source capability cards, matches approved composition */
#gh-home .gh-capabilities {
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:18px !important;
  border:0 !important;
  padding:0 !important;
  background:transparent !important;
  overflow:visible !important;
}
#gh-home .gh-capabilities > .gh-feature {
  position:relative !important;
  display:block !important;
  isolation:isolate !important;
  box-sizing:border-box !important;
  width:100% !important;
  height:172px !important;
  min-height:172px !important;
  max-height:172px !important;
  padding:0 !important;
  margin:0 !important;
  border-radius:24px !important;
  overflow:hidden !important;
  background:#f7fbff !important;
  text-align:left !important;
  box-shadow:0 9px 26px rgba(19,63,112,.08) !important;
}
#gh-home .gh-capabilities > .gh-feature .gh-feature-photo {
  position:absolute !important;
  inset:0 0 0 auto !important;
  width:52% !important;
  height:100% !important;
  display:block !important;
  overflow:hidden !important;
  opacity:1 !important;
  z-index:0 !important;
  pointer-events:none !important;
  transform:none !important;
  filter:none !important;
  background:transparent !important;
  -webkit-mask-image:linear-gradient(to right,transparent 0%,#000 37%) !important;
  mask-image:linear-gradient(to right,transparent 0%,#000 37%) !important;
}
#gh-home .gh-capabilities > .gh-feature .gh-feature-photo img {
  position:absolute !important;
  inset:0 !important;
  display:block !important;
  width:100% !important;
  height:100% !important;
  max-width:none !important;
  max-height:none !important;
  object-fit:cover !important;
  object-position:center center !important;
  transform:none !important;
  filter:none !important;
  opacity:1 !important;
}
#gh-home .gh-capabilities > .gh-feature .gh-feature-photo::before,
#gh-home .gh-capabilities > .gh-feature .gh-feature-photo::after {
  content:none !important;
  display:none !important;
}
#gh-home .gh-capabilities > .gh-feature .gh-feature-icon {
  position:absolute !important;
  top:21px !important;
  left:19px !important;
  width:40px !important;
  height:40px !important;
  margin:0 !important;
  display:grid !important;
  place-items:center !important;
  z-index:3 !important;
}
#gh-home .gh-capabilities > .gh-feature .gh-feature-body {
  position:absolute !important;
  top:21px !important;
  left:78px !important;
  width:calc(56% - 80px) !important;
  max-width:none !important;
  min-width:0 !important;
  height:auto !important;
  margin:0 !important;
  padding:0 !important;
  display:block !important;
  z-index:3 !important;
  text-align:left !important;
}
#gh-home .gh-capabilities > .gh-feature .gh-feature-body strong {
  display:block !important;
  margin:0 0 10px !important;
  padding:0 !important;
  color:#102c50 !important;
  font-size:clamp(15px,1.08vw,20px) !important;
  line-height:1.17 !important;
  font-weight:800 !important;
  letter-spacing:-.02em !important;
}
#gh-home .gh-capabilities > .gh-feature .gh-feature-body > span {
  display:block !important;
  margin:0 !important;
  padding:0 !important;
  color:#294767 !important;
  font-size:clamp(11px,.79vw,14px) !important;
  line-height:1.38 !important;
}
#gh-home .gh-capabilities > .gh-feature .gh-feature-body,
#gh-home .gh-capabilities > .gh-feature .gh-feature-body * {
  hyphens:none !important;
  -webkit-hyphens:none !important;
  overflow-wrap:normal !important;
  word-break:normal !important;
}
#gh-home .gh-capabilities > .gh-feature .gh-feature-arrow {
  position:absolute !important;
  top:auto !important;
  right:auto !important;
  left:20px !important;
  bottom:18px !important;
  display:grid !important;
  place-items:center !important;
  width:35px !important;
  height:35px !important;
  min-width:35px !important;
  min-height:35px !important;
  margin:0 !important;
  padding:0 0 2px !important;
  box-sizing:border-box !important;
  border:1.4px solid #8ebcde !important;
  border-radius:50% !important;
  background:#f7fbff !important;
  color:#174a78 !important;
  font:21px/1 Arial,sans-serif !important;
  transform:none !important;
  z-index:4 !important;
  box-shadow:0 2px 9px rgba(18,77,121,.08) !important;
}
#gh-home .gh-capabilities > .gh-feature:hover .gh-feature-arrow {
  background:#1767a5 !important;
  color:white !important;
}
@media (min-width:761px) and (max-width:1350px) {
  #gh-home .gh-capabilities {gap:12px !important;}
  #gh-home .gh-capabilities > .gh-feature {height:160px !important;min-height:160px !important;max-height:160px !important;}
  #gh-home .gh-capabilities > .gh-feature .gh-feature-icon {left:12px !important;width:32px !important;height:32px !important;}
  #gh-home .gh-capabilities > .gh-feature .gh-feature-body {left:52px !important;width:calc(57% - 54px) !important;}
  #gh-home .gh-capabilities > .gh-feature .gh-feature-body strong {font-size:clamp(13px,1.2vw,16px) !important;}
  #gh-home .gh-capabilities > .gh-feature .gh-feature-body > span {font-size:clamp(10px,.88vw,12px) !important;}
  #gh-home .gh-capabilities > .gh-feature .gh-feature-arrow {left:13px !important;bottom:13px !important;}
}
@media (max-width:760px) {
  #gh-home .gh-capabilities {grid-template-columns:1fr !important;gap:12px !important;}
  #gh-home .gh-capabilities > .gh-feature {height:165px !important;min-height:165px !important;max-height:165px !important;}
  #gh-home .gh-capabilities > .gh-feature .gh-feature-photo {width:50% !important;}
  #gh-home .gh-capabilities > .gh-feature .gh-feature-icon {left:15px !important;top:18px !important;width:33px !important;height:33px !important;}
  #gh-home .gh-capabilities > .gh-feature .gh-feature-body {left:59px !important;top:18px !important;width:calc(56% - 62px) !important;}
  #gh-home .gh-capabilities > .gh-feature .gh-feature-body strong {font-size:clamp(14px,3.8vw,18px) !important;}
  #gh-home .gh-capabilities > .gh-feature .gh-feature-body > span {font-size:clamp(10px,2.9vw,13px) !important;}
  #gh-home .gh-capabilities > .gh-feature .gh-feature-arrow {left:15px !important;bottom:14px !important;}
}

/* V31.41 — targeted polish over V31.40, preserve layout and interactions */
@media (min-width: 1351px) {
  #gh-home .gh-capabilities > .gh-feature .gh-feature-photo {
    width: 49% !important;
    -webkit-mask-image: linear-gradient(to right, transparent 0%, rgba(0,0,0,.18) 18%, #000 49%) !important;
    mask-image: linear-gradient(to right, transparent 0%, rgba(0,0,0,.18) 18%, #000 49%) !important;
  }
  #gh-home .gh-capabilities > .gh-feature .gh-feature-body {
    width: calc(64% - 80px) !important;
  }
  #gh-home .gh-capabilities > .gh-feature .gh-feature-body strong {
    font-size: clamp(15px, 1.03vw, 19px) !important;
    line-height: 1.18 !important;
  }
  #gh-home .gh-capabilities > .gh-feature .gh-feature-body > span {
    max-width: 290px !important;
  }
}
#gh-home .gh-capabilities > .gh-feature .gh-feature-photo img {
  object-position: center center !important;
}
#gh-home .gh-capabilities > .gh-feature-testing .gh-feature-photo img {
  object-position: 62% center !important;
}
#gh-home .gh-capabilities > .gh-feature-analytics .gh-feature-photo img {
  object-position: 45% center !important;
}
#gh-home .gh-capabilities > .gh-feature-teams .gh-feature-photo img {
  object-position: 55% center !important;
}
#gh-home .gh-capabilities > .gh-feature .gh-feature-arrow {
  background: rgba(248,252,255,.96) !important;
  border-color: #89bce3 !important;
  color: #195586 !important;
  box-shadow: 0 2px 8px rgba(17,77,127,.09) !important;
}
#gh-home .gh-capabilities > .gh-feature:hover .gh-feature-arrow,
#gh-home .gh-capabilities > .gh-feature:focus-visible .gh-feature-arrow {
  background: #146da9 !important;
  color: #fff !important;
  box-shadow: 0 0 0 4px rgba(22,145,210,.12), 0 3px 12px rgba(17,77,127,.18) !important;
}
@media (max-width: 1350px) {
  #gh-home .gh-capabilities > .gh-feature .gh-feature-photo {
    -webkit-mask-image: linear-gradient(to right, transparent 0%, #000 46%) !important;
    mask-image: linear-gradient(to right, transparent 0%, #000 46%) !important;
  }
}


/* V31.42 — smaller photos, fixed three-line copy; cards retain dimensions */
@media (min-width: 1351px) {
  #gh-home .gh-capabilities > .gh-feature .gh-feature-photo {
    width: 42% !important;
    -webkit-mask-image: linear-gradient(to right,transparent 0%,rgba(0,0,0,.2) 15%,#000 45%) !important;
    mask-image: linear-gradient(to right,transparent 0%,rgba(0,0,0,.2) 15%,#000 45%) !important;
  }
  #gh-home .gh-capabilities > .gh-feature .gh-feature-body {
    width: calc(65% - 80px) !important;
  }
}
#gh-home .gh-capabilities > .gh-feature .gh-feature-photo img {
  object-fit: contain !important;
  object-position: right center !important;
}
#gh-home .gh-capabilities > .gh-feature .gh-feature-body > span {
  max-width: 330px !important;
  font-size: clamp(11px,.78vw,14px) !important;
  line-height: 1.43 !important;
  white-space: normal !important;
}
#gh-home .gh-capabilities > .gh-feature .gh-feature-body > span .gh-copy-line {
  display: block !important;
}
@media (max-width: 1350px) {
  #gh-home .gh-capabilities > .gh-feature .gh-feature-photo {width:42% !important;}
}

/* V31.43 — мягкий размытый переход от белого к изображению */
#gh-home .gh-capabilities > .gh-feature .gh-feature-photo {
  position: absolute !important;
  overflow: hidden !important;
}

#gh-home .gh-capabilities > .gh-feature .gh-feature-photo::before {
  content: "" !important;
  position: absolute !important;
  left: -8px !important;
  top: 0 !important;
  bottom: 0 !important;
  width: 26% !important;
  z-index: 2 !important;
  pointer-events: none !important;
  background: linear-gradient(
    90deg,
    #eef3f8 0%,
    rgba(238,243,248,.98) 18%,
    rgba(238,243,248,.88) 42%,
    rgba(238,243,248,.58) 68%,
    rgba(238,243,248,.18) 88%,
    rgba(238,243,248,0) 100%
  ) !important;
  filter: blur(10px) !important;
}

#gh-home .gh-capabilities > .gh-feature .gh-feature-photo img {
  position: relative !important;
  z-index: 1 !important;
}

/* V31.44 — seamless photo-to-background transition */

/* Remove previous artificial blurred stripe */
#gh-home .gh-capabilities > .gh-feature .gh-feature-photo::before,
#gh-home .gh-capabilities > .gh-feature .gh-feature-photo::after {
  content: none !important;
  display: none !important;
}

/* Fade the actual image layer, not an overlay stripe */
#gh-home .gh-capabilities > .gh-feature .gh-feature-photo {
  -webkit-mask-image: linear-gradient(
    to right,
    transparent 0%,
    rgba(0,0,0,.08) 12%,
    rgba(0,0,0,.35) 26%,
    rgba(0,0,0,.75) 42%,
    black 58%,
    black 100%
  ) !important;

  mask-image: linear-gradient(
    to right,
    transparent 0%,
    rgba(0,0,0,.08) 12%,
    rgba(0,0,0,.35) 26%,
    rgba(0,0,0,.75) 42%,
    black 58%,
    black 100%
  ) !important;

  -webkit-mask-repeat: no-repeat !important;
  mask-repeat: no-repeat !important;

  background: transparent !important;
}


/* V31.45 — seamless photographic fade */

/* Remove the old container mask */
#gh-home .gh-capabilities > .gh-feature .gh-feature-photo {
  -webkit-mask-image: none !important;
  mask-image: none !important;
  background: transparent !important;
}

/* Fade the image pixels themselves */
#gh-home .gh-capabilities > .gh-feature .gh-feature-photo img {
  -webkit-mask-image: linear-gradient(
    90deg,
    transparent 0%,
    rgba(0,0,0,.08) 15%,
    rgba(0,0,0,.35) 30%,
    rgba(0,0,0,.70) 48%,
    #000 70%
  ) !important;

  mask-image: linear-gradient(
    90deg,
    transparent 0%,
    rgba(0,0,0,.08) 15%,
    rgba(0,0,0,.35) 30%,
    rgba(0,0,0,.70) 48%,
    #000 70%
  ) !important;

  -webkit-mask-repeat: no-repeat !important;
  mask-repeat: no-repeat !important;
}

/* V31.46 — soft color blend from card body into square photo */

/* 1) card-specific blend colors */
#gh-home .gh-capabilities > .gh-feature.gh-feature-testing{
  --gh-photo-tint-main: rgba(76, 211, 255, .34);
  --gh-photo-tint-soft: rgba(198, 240, 255, .90);
  --gh-photo-card-bg:   rgba(240, 246, 251, 1);
}

#gh-home .gh-capabilities > .gh-feature.gh-feature-analytics{
  --gh-photo-tint-main: rgba(50, 220, 255, .28);
  --gh-photo-tint-soft: rgba(215, 245, 250, .92);
  --gh-photo-card-bg:   rgba(240, 246, 251, 1);
}

#gh-home .gh-capabilities > .gh-feature.gh-feature-teams{
  --gh-photo-tint-main: rgba(247, 193, 73, .24);
  --gh-photo-tint-soft: rgba(255, 244, 220, .92);
  --gh-photo-card-bg:   rgba(240, 246, 251, 1);
}

/* 2) keep photo block clean */
#gh-home .gh-capabilities > .gh-feature .gh-feature-photo{
  position: absolute !important;
  overflow: visible !important;
  background: transparent !important;
  isolation: isolate !important;
}

/* 3) remove old hard stripe / old masks */
#gh-home .gh-capabilities > .gh-feature .gh-feature-photo::before,
#gh-home .gh-capabilities > .gh-feature .gh-feature-photo::after{
  content: "" !important;
  position: absolute !important;
  pointer-events: none !important;
}

/* 4) big soft colored fill going LEFT from the photo into the card */
#gh-home .gh-capabilities > .gh-feature .gh-feature-photo::before{
  z-index: 2 !important;
  top: -6% !important;
  bottom: -6% !important;
  left: -150px !important;
  width: 235px !important;

  background:
    linear-gradient(
      90deg,
      var(--gh-photo-card-bg) 0%,
      var(--gh-photo-card-bg) 16%,
      color-mix(in srgb, var(--gh-photo-card-bg) 78%, var(--gh-photo-tint-soft) 22%) 34%,
      color-mix(in srgb, var(--gh-photo-card-bg) 52%, var(--gh-photo-tint-soft) 48%) 52%,
      rgba(255,255,255,0) 100%
    ),
    radial-gradient(
      circle at 92% 50%,
      var(--gh-photo-tint-main) 0%,
      rgba(255,255,255,0) 68%
    ) !important;

  filter: blur(14px) !important;
  opacity: .98 !important;
}

/* 5) local soft light right on the image edge */
#gh-home .gh-capabilities > .gh-feature .gh-feature-photo::after{
  z-index: 3 !important;
  top: 0 !important;
  bottom: 0 !important;
  left: -42px !important;
  width: 118px !important;

  background:
    linear-gradient(
      90deg,
      var(--gh-photo-card-bg) 0%,
      rgba(255,255,255,.78) 34%,
      rgba(255,255,255,.18) 72%,
      rgba(255,255,255,0) 100%
    ) !important;

  filter: blur(10px) !important;
}

/* 6) fade the left edge of the actual image itself */
#gh-home .gh-capabilities > .gh-feature .gh-feature-photo img{
  position: relative !important;
  z-index: 1 !important;
  display: block !important;

  -webkit-mask-image: linear-gradient(
    90deg,
    rgba(0,0,0,0) 0%,
    rgba(0,0,0,.14) 10%,
    rgba(0,0,0,.52) 22%,
    rgba(0,0,0,.88) 34%,
    rgba(0,0,0,1) 46%,
    rgba(0,0,0,1) 100%
  ) !important;

  mask-image: linear-gradient(
    90deg,
    rgba(0,0,0,0) 0%,
    rgba(0,0,0,.14) 10%,
    rgba(0,0,0,.52) 22%,
    rgba(0,0,0,.88) 34%,
    rgba(0,0,0,1) 46%,
    rgba(0,0,0,1) 100%
  ) !important;

  -webkit-mask-repeat: no-repeat !important;
  mask-repeat: no-repeat !important;
}

/* 7) mobile — slightly smaller blend so it does not flood text */
@media (max-width: 900px){
  #gh-home .gh-capabilities > .gh-feature .gh-feature-photo::before{
    left: -110px !important;
    width: 170px !important;
    filter: blur(10px) !important;
  }

  #gh-home .gh-capabilities > .gh-feature .gh-feature-photo::after{
    left: -28px !important;
    width: 82px !important;
    filter: blur(8px) !important;
  }
}

/* V31.47 — vertical accent flowing from top border */

#gh-home .gh-feature-testing {
  --gh-edge-color: #168aff;
}

#gh-home .gh-feature-analytics {
  --gh-edge-color: #00bdc9;
}

#gh-home .gh-feature-teams {
  --gh-edge-color: #d7a541;
}

/* Remove previous overlay experiments */
#gh-home .gh-capabilities > .gh-feature .gh-feature-photo::before {
  content: none !important;
  display: none !important;
}

/* Colored line at the left edge of the photograph */
#gh-home .gh-capabilities > .gh-feature .gh-feature-photo::after {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  z-index: 5 !important;

  left: 0 !important;
  top: 0 !important;
  bottom: auto !important;

  width: 3px !important;
  height: 88% !important;

  border: 0 !important;
  border-radius: 0 0 8px 8px !important;

  background: linear-gradient(
    to bottom,
    var(--gh-edge-color) 0%,
    var(--gh-edge-color) 18%,
    transparent 100%
  ) !important;

  box-shadow: 0 0 8px color-mix(
    in srgb,
    var(--gh-edge-color) 50%,
    transparent
  ) !important;

  filter: none !important;
  opacity: 1 !important;
  pointer-events: none !important;
}

/* Keep the photographs unchanged */
#gh-home .gh-capabilities > .gh-feature .gh-feature-photo img {
  z-index: 1 !important;
}


/* V31.48 — compact cards and bottom alignment */

@media (min-width: 761px) {

  #gh-home .gh-capabilities > .gh-feature {
    height: 145px !important;
    min-height: 145px !important;
    max-height: 145px !important;
  }

  #gh-home .gh-capabilities > .gh-feature .gh-feature-arrow {
    top: auto !important;
    bottom: 27px !important;
    width: 35px !important;
    height: 35px !important;
    min-width: 35px !important;
    min-height: 35px !important;
  }

  #gh-home .gh-capabilities > .gh-feature .gh-feature-photo {
    height: 100% !important;
  }

}

/* V31.49 — four approved capability cards */
#gh-home .gh-capabilities {display:grid !important;grid-template-columns:repeat(4,minmax(0,1fr)) !important;gap:14px !important;align-items:stretch !important;}
#gh-home .gh-capabilities > .gh-feature {height:185px !important;min-height:185px !important;max-height:185px !important;}
#gh-home .gh-capabilities > .gh-feature .gh-feature-icon {top:21px !important;left:16px !important;width:36px !important;height:36px !important;}
#gh-home .gh-capabilities > .gh-feature .gh-feature-body {top:21px !important;left:58px !important;width:calc(62% - 60px) !important;max-width:none !important;}
#gh-home .gh-capabilities > .gh-feature .gh-feature-body strong {font-size:clamp(14px,1.02vw,18px) !important;line-height:1.14 !important;margin-bottom:11px !important;}
#gh-home .gh-capabilities > .gh-feature .gh-feature-body > span {font-size:clamp(11px,.77vw,13px) !important;line-height:1.38 !important;}
#gh-home .gh-capabilities > .gh-feature .gh-feature-photo {width:43% !important;height:100% !important;inset:0 0 0 auto !important;overflow:hidden !important;isolation:isolate !important;}
#gh-home .gh-capabilities > .gh-feature .gh-feature-photo img {width:100% !important;height:100% !important;object-fit:cover !important;object-position:center !important;transform:none !important;}
#gh-home .gh-capabilities > .gh-feature .gh-feature-arrow {left:17px !important;bottom:17px !important;}
#gh-home .gh-capabilities > .gh-feature.gh-feature-health {--gh-edge-color:#00ae9c;border-color:#13b5ab !important;}
#gh-home .gh-capabilities > .gh-feature.gh-feature-health .gh-feature-icon {color:#00a993 !important;}
#gh-home .gh-capabilities > .gh-feature.gh-feature-health .gh-feature-icon svg {width:100%;height:100%;stroke:currentColor;}
#gh-home .gh-capabilities > .gh-feature.gh-feature-health .gh-feature-photo::after {content:'' !important;display:block !important;position:absolute !important;left:0 !important;top:0 !important;width:3px !important;height:88% !important;z-index:5 !important;background:linear-gradient(to bottom,#00ae9c,transparent) !important;box-shadow:0 0 7px #00ae9c66 !important;pointer-events:none !important;}
#gh-home .gh-capabilities > .gh-feature.gh-feature-health .gh-feature-photo img {object-position:50% 36% !important;}
#gh-home .gh-capabilities > .gh-feature .gh-feature-body, #gh-home .gh-capabilities > .gh-feature .gh-feature-body * {hyphens:none !important;overflow-wrap:normal !important;word-break:normal !important;}
@media (max-width:1499px) {#gh-home .gh-capabilities {grid-template-columns:repeat(2,minmax(0,1fr)) !important;}#gh-home .gh-capabilities > .gh-feature {height:165px !important;min-height:165px !important;max-height:165px !important;}#gh-home .gh-capabilities > .gh-feature .gh-feature-body {width:calc(60% - 62px) !important;}#gh-home .gh-capabilities > .gh-feature .gh-feature-body strong {font-size:17px !important;}#gh-home .gh-capabilities > .gh-feature .gh-feature-body > span {font-size:13px !important;}}
@media (max-width:760px) {#gh-home .gh-capabilities {grid-template-columns:1fr !important;gap:12px !important;}#gh-home .gh-capabilities > .gh-feature {height:164px !important;min-height:164px !important;max-height:164px !important;}#gh-home .gh-capabilities > .gh-feature .gh-feature-body {left:59px !important;width:calc(61% - 64px) !important;}#gh-home .gh-capabilities > .gh-feature .gh-feature-body strong {font-size:clamp(13px,3.7vw,17px) !important;}#gh-home .gh-capabilities > .gh-feature .gh-feature-body > span {font-size:clamp(10px,2.8vw,12px) !important;}#gh-home .gh-capabilities > .gh-feature .gh-feature-photo {width:39% !important;}}

/* V31.50 — four-card typography aligned, exact two-line analytics and health headings */
#gh-home .gh-capabilities > .gh-feature {
  height: 185px !important;
  min-height: 185px !important;
  max-height: 185px !important;
}
#gh-home .gh-capabilities > .gh-feature .gh-feature-photo {
  width: 36% !important;
}
#gh-home .gh-capabilities > .gh-feature .gh-feature-icon {
  top: 19px !important;
  left: 15px !important;
  width: 35px !important;
  height: 35px !important;
}
#gh-home .gh-capabilities > .gh-feature .gh-feature-body {
  top: 20px !important;
  left: 58px !important;
  width: calc(64% - 63px) !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}
#gh-home .gh-capabilities > .gh-feature .gh-feature-body strong {
  display: block !important;
  font-size: clamp(14px, .86vw, 16px) !important;
  line-height: 1.18 !important;
  letter-spacing: -.02em !important;
  margin: 0 0 10px !important;
  padding: 0 !important;
}
#gh-home .gh-capabilities > .gh-feature .gh-feature-body > span {
  display: block !important;
  font-size: clamp(11px, .69vw, 12.5px) !important;
  line-height: 1.42 !important;
  margin: 0 !important;
  padding: 0 !important;
}
#gh-home .gh-capabilities > .gh-feature .gh-feature-body,
#gh-home .gh-capabilities > .gh-feature .gh-feature-body * {
  hyphens: none !important;
  -webkit-hyphens: none !important;
  word-break: normal !important;
  overflow-wrap: normal !important;
  text-align: left !important;
}
#gh-home .gh-capabilities > .gh-feature .gh-feature-arrow {
  left: 17px !important;
  bottom: 16px !important;
}
@media (max-width: 1499px) and (min-width: 761px) {
  #gh-home .gh-capabilities > .gh-feature { height: 165px !important; min-height: 165px !important; max-height: 165px !important; }
  #gh-home .gh-capabilities > .gh-feature .gh-feature-body { width: calc(64% - 64px) !important; }
  #gh-home .gh-capabilities > .gh-feature .gh-feature-body strong { font-size: clamp(14px,1.25vw,17px) !important; }
  #gh-home .gh-capabilities > .gh-feature .gh-feature-body > span { font-size: clamp(11px, .92vw,13px) !important; }
}
@media (max-width: 760px) {
  #gh-home .gh-capabilities > .gh-feature { height: 164px !important; min-height: 164px !important; max-height: 164px !important; }
  #gh-home .gh-capabilities > .gh-feature .gh-feature-photo { width: 34% !important; }
  #gh-home .gh-capabilities > .gh-feature .gh-feature-body { left: 57px !important; width: calc(66% - 61px) !important; }
  #gh-home .gh-capabilities > .gh-feature .gh-feature-body strong { font-size: clamp(13px, 3.6vw, 16px) !important; margin-bottom: 7px !important; }
  #gh-home .gh-capabilities > .gh-feature .gh-feature-body > span { font-size: clamp(10.5px, 2.7vw, 12px) !important; line-height: 1.3 !important; }
}

/* V31.51 — compact four-card geometry; typography unchanged */
@media (min-width:1500px) {
  #gh-home .gh-capabilities > .gh-feature {
    height:158px !important;
    min-height:158px !important;
    max-height:158px !important;
  }
}
@media (min-width:761px) and (max-width:1499px) {
  #gh-home .gh-capabilities > .gh-feature {
    height:152px !important;
    min-height:152px !important;
    max-height:152px !important;
  }
}
@media (max-width:760px) {
  #gh-home .gh-capabilities > .gh-feature {
    height:155px !important;
    min-height:155px !important;
    max-height:155px !important;
  }
}
#gh-home .gh-capabilities > .gh-feature .gh-feature-icon {
  top:13px !important;
}
#gh-home .gh-capabilities > .gh-feature .gh-feature-body {
  top:14px !important;
}
#gh-home .gh-capabilities > .gh-feature .gh-feature-body strong {
  margin-bottom:7px !important;
}
#gh-home .gh-capabilities > .gh-feature .gh-feature-arrow {
  bottom:12px !important;
}
#gh-home .gh-capabilities > .gh-feature .gh-feature-photo {
  height:100% !important;
}
#gh-home .gh-capabilities > .gh-feature.gh-feature-health .gh-feature-photo img {
  object-fit:cover !important;
  object-position:55% 43% !important;
}

/* V31.55 — four cards: color-tinted backplates, analytics/health swapped, icon accents aligned */
#gh-home .gh-capabilities > .gh-feature {
  --accent-rgb: 37,132,229;
  position: relative !important;
  background: linear-gradient(180deg, rgba(var(--accent-rgb),.10) 0%, rgba(var(--accent-rgb),.045) 30%, #f7fbff 86%) !important;
  border: 1px solid rgba(var(--accent-rgb), .58) !important;
  box-shadow: inset 0 3px 0 rgba(var(--accent-rgb), .92), 0 9px 26px rgba(19,63,112,.08) !important;
}

#gh-home .gh-capabilities > .gh-feature-testing { --accent-rgb: 37,132,229; }
#gh-home .gh-capabilities > .gh-feature-health { --accent-rgb: 20,176,150; }
#gh-home .gh-capabilities > .gh-feature-analytics { --accent-rgb: 94,195,244; }
#gh-home .gh-capabilities > .gh-feature-teams { --accent-rgb: 214,165,61; }

#gh-home .gh-capabilities > .gh-feature .gh-feature-photo {
  width: 36% !important;
}

#gh-home .gh-capabilities > .gh-feature .gh-feature-photo::before {
  content: '' !important;
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  top: 0 !important;
  bottom: 0 !important;
  width: 22px !important;
  background: linear-gradient(to right,
    rgba(var(--accent-rgb), .92) 0%,
    rgba(var(--accent-rgb), .34) 34%,
    rgba(var(--accent-rgb), .10) 54%,
    rgba(var(--accent-rgb), 0) 100%) !important;
  z-index: 2 !important;
  pointer-events: none !important;
}

#gh-home .gh-capabilities > .gh-feature .gh-feature-icon {
  color: rgb(var(--accent-rgb)) !important;
}
#gh-home .gh-capabilities > .gh-feature .gh-feature-icon svg {
  color: inherit !important;
}
#gh-home .gh-capabilities > .gh-feature .gh-feature-icon svg,
#gh-home .gh-capabilities > .gh-feature .gh-feature-icon svg * {
  stroke: currentColor !important;
}
#gh-home .gh-capabilities > .gh-feature .gh-feature-icon svg [fill]:not([fill='none']) {
  fill: currentColor !important;
}

#gh-home .gh-capabilities > .gh-feature .gh-feature-arrow {
  border-color: rgba(var(--accent-rgb), .62) !important;
  color: rgb(var(--accent-rgb)) !important;
  background: rgba(255,255,255,.96) !important;
  box-shadow: 0 2px 9px rgba(var(--accent-rgb), .14) !important;
}
#gh-home .gh-capabilities > .gh-feature:hover .gh-feature-arrow,
#gh-home .gh-capabilities > .gh-feature:focus-visible .gh-feature-arrow {
  background: rgb(var(--accent-rgb)) !important;
  border-color: rgb(var(--accent-rgb)) !important;
  color: #fff !important;
  box-shadow: 0 0 0 4px rgba(var(--accent-rgb), .14), 0 3px 12px rgba(var(--accent-rgb), .22) !important;
}

/* V31.57: extra first-phrase break only for horizontal desktop layout */
#gh-home .gh-manifesto-desktop-break { display: none !important; }
@media (min-width: 1024px) and (orientation: landscape) {
  #gh-home .gh-manifesto-desktop-break { display: block !important; }
}

/* V31.58: final manifesto phrase in restrained gold, no typography/layout changes */
#gh-home #gh-philosophy-heading .gh-manifesto-gold { color: #C18A25 !important; }
