/* ==========================================================================
   Growth Firstly — Sitewide polish (look & feel)
   Loads after ogf-redesign / header / footer
   ========================================================================== */

:root {
  --gf-ease: cubic-bezier(0.16, 1, 0.3, 1);
}

/* Smoother page canvas */
body {
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

/* Selection */
::selection {
  background: rgba(255, 204, 0, 0.35);
  color: #08080a;
}

/* Focus visibility for a11y + premium feel */
a:focus-visible,
button:focus-visible,
.gf-btn:focus-visible,
.call__schedule--btn:focus-visible {
  outline: 2px solid var(--gf-yellow, #ffcc00);
  outline-offset: 3px;
}

/* Hero: brand-forward polish (keeps ACF slider structure) */
.gf-hero--appinventiv .gf-hero__title {
  font-size: clamp(2.35rem, 1.25rem + 2.6vw, 3.85rem);
  letter-spacing: -0.045em;
  text-wrap: balance;
}

.gf-hero--appinventiv .gf-hero__lede {
  font-size: clamp(1.02rem, 0.95rem + 0.28vw, 1.18rem);
  max-width: 46ch;
}

.gf-hero--appinventiv .slider-slide::before {
  background:
    linear-gradient(95deg, rgba(5, 5, 7, 0.94) 0%, rgba(5, 5, 7, 0.78) 40%, rgba(5, 5, 7, 0.28) 100%),
    linear-gradient(180deg, rgba(5, 5, 7, 0.4) 0%, transparent 38%, rgba(5, 5, 7, 0.82) 100%),
    radial-gradient(ellipse at 85% 70%, rgba(255, 204, 0, 0.12), transparent 45%);
}

.gf-btn--appinventiv {
  box-shadow: 0 10px 28px rgba(255, 204, 0, 0.32);
}

/* Tech rail */
.gf-tech-rail.home-service__marque {
  background: #08080a !important;
  border-color: rgba(255, 255, 255, 0.08) !important;
}

/* Edge / CTA / Stack / Niche global refinement */
.gf-band--edge.excellence--section {
  padding-top: clamp(3.5rem, 7vw, 5.5rem);
  padding-bottom: clamp(3.5rem, 7vw, 5.5rem);
}

.excellence-right-first__sub {
  border-radius: 4px !important;
  box-shadow: none !important;
  border-top: 3px solid transparent;
}

.excellence-right-first__sub:hover {
  border-top-color: var(--gf-yellow, #ffcc00);
  box-shadow: none !important;
}

.excellence--cta_section.gf-band--cta {
  background:
    radial-gradient(ellipse at 15% 0%, rgba(255, 204, 0, 0.2), transparent 42%),
    linear-gradient(145deg, #050507 0%, #101018 55%, #08080a 100%) !important;
}

.category__btn a {
  border-radius: 999px;
  transition: background 0.3s var(--gf-ease), border-color 0.3s ease, transform 0.3s var(--gf-ease);
}

.category__btn a:hover,
.category__btn a.active {
  transform: translateY(-2px);
}

.framework-category-content {
  border-radius: 4px;
  overflow: hidden;
}

.our_-niche .niche--right__img {
  transition: transform 0.35s var(--gf-ease), border-color 0.3s ease;
}

.our_-niche .niche--right__img:hover {
  transform: translateY(-3px);
}

.gf-audit-band {
  background:
    radial-gradient(ellipse at 0% 50%, rgba(255, 204, 0, 0.07), transparent 45%),
    #fff;
}

/* Contact form home */
.contact__form--home .home__heading span {
  color: #8a6d00;
}

/* Reveal motion polish */
[data-reveal] {
  transition: opacity 0.7s var(--gf-ease), transform 0.7s var(--gf-ease);
}
