:root {
  --gafn-ink: #153650;
  --gafn-blue: #0d2940;
  --gafn-muted: #5d7181;
  --gafn-line: #dce3e7;
  --gafn-paper: #f7f6f2;
  --gafn-gold: #c6a054;
}


.gafn-v2{--ink:#10283b;--blue:#123f62;--gold:#c49a52;--paper:#f7f5ef;color:var(--ink);font-family:"Inter",system-ui,-apple-system,"Segoe UI",sans-serif;line-height:1.65}
.gafn-v2 *{box-sizing:border-box}.gafn-container{width:min(1180px,calc(100% - 40px));margin-inline:auto}.gafn-v2 h1,.gafn-v2 h2,.gafn-v2 h3{font-family:"DM Serif Display",Georgia,serif;color:var(--ink);font-weight:400;line-height:1.06;letter-spacing:-.025em}.gafn-v2 h1{font-size:clamp(2.6rem,6vw,5.75rem);max-width:12ch}.gafn-v2 h2{font-size:clamp(2rem,3.5vw,3.4rem)}.gafn-v2 h3{font-size:1.45rem}.gafn-kicker{font-size:.75rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#765b2d}.gafn-lead{font-size:clamp(1.05rem,1.7vw,1.35rem);max-width:64ch}.gafn-button{display:inline-flex;min-height:48px;align-items:center;justify-content:center;background:var(--gold);color:#10283b!important;padding:.8rem 1.25rem;border-radius:3px;font-weight:800;text-decoration:none!important}.gafn-button:hover{background:#d8b56f}.gafn-text-link{font-weight:800;color:var(--blue)!important;text-underline-offset:5px}.gafn-actions{display:flex;gap:1.25rem;align-items:center;flex-wrap:wrap}.gafn-v2 :focus-visible{outline:3px solid #e2b860;outline-offset:4px}
.gafn-home-hero{min-height:clamp(600px,78vh,850px);display:grid;align-items:center;color:#fff;background:linear-gradient(90deg,rgba(7,27,42,.92) 0%,rgba(7,27,42,.72) 55%,rgba(7,27,42,.25)),url("images/gafn-project-planning.webp") center/cover no-repeat}.gafn-home-hero h1,.gafn-home-hero .gafn-lead{color:#fff}.gafn-home-hero .gafn-kicker{color:#e4c993}.gafn-home-hero .gafn-text-link{color:#fff!important}.gafn-home-services{padding:clamp(4rem,8vw,8rem) 0}.gafn-home-services>header{display:grid;grid-template-columns:.55fr 1.45fr;gap:4rem;align-items:start}.gafn-three{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid #c8c5bb;margin-top:4rem}.gafn-three article{padding:2rem 2.5rem 1rem 0;border-right:1px solid #c8c5bb}.gafn-three article+article{padding-left:2.5rem}.gafn-three article:last-child{border-right:0}.gafn-three span{font-size:.75rem;color:#765b2d;font-weight:800}.gafn-home-process{background:var(--blue);color:#fff;padding:clamp(4rem,7vw,7rem) 0}.gafn-home-process h2{color:#fff;max-width:18ch}.gafn-home-process .gafn-kicker{color:#e4c993}.gafn-home-process ol{list-style:none;padding:0;margin:3rem 0 0;display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}.gafn-home-process li{display:flex;flex-direction:column;border-top:1px solid rgba(255,255,255,.35);padding-top:1rem}.gafn-home-process strong{font-size:1.25rem}.gafn-proof{padding:clamp(4rem,7vw,6.5rem) 0;display:flex;justify-content:space-between;align-items:end;gap:3rem}.gafn-proof h2{margin:.35rem 0}.gafn-proof p{max-width:65ch}.gafn-home-cta{background:var(--paper);padding:clamp(4rem,7vw,6rem) 0}.gafn-home-cta .gafn-container{display:grid;grid-template-columns:1fr auto;gap:3rem;align-items:center}.gafn-home-cta h2{max-width:18ch}
.gafn-compact-head{padding:clamp(3.5rem,7vw,6rem) 0 2.5rem;border-bottom:1px solid #d9d5cb}.gafn-compact-head h1{font-size:clamp(2.5rem,5vw,4.6rem);margin:.25rem 0 1rem;max-width:18ch}.gafn-compact-head p:last-child{font-size:1.12rem;max-width:68ch}.gafn-contact-layout{display:grid;grid-template-columns:1.2fr .8fr;gap:clamp(3rem,7vw,7rem);padding:4rem 0 7rem}.gafn-contact-layout aside{background:var(--paper);padding:2rem}.gafn-contact-layout dt{font-size:.72rem;text-transform:uppercase;letter-spacing:.11em;font-weight:800;color:#67583b;margin-top:1.1rem}.gafn-contact-layout dd{margin:0}.gafn-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.1rem}.gafn-field{margin:0}.gafn-field-wide{grid-column:1/-1}.gafn-field label{font-weight:700}.gafn-field input,.gafn-field textarea{display:block;width:100%;margin-top:.4rem;min-height:48px;border:1px solid #8e938f;border-radius:2px;background:#fff;padding:.7rem .8rem;color:#10283b}.gafn-optional,.gafn-fineprint{font-size:.87rem;font-weight:400;color:#53616b}.gafn-hp{position:absolute;left:-10000px}.gafn-status{font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;font-weight:800;color:#625027}.gafn-source{font-size:.82rem;color:#56646b}.gafn-breadcrumb{padding-top:2rem;display:flex;gap:.55rem;font-size:.9rem}.gafn-prose{max-width:820px;margin:0 auto 6rem}.gafn-prose h2{margin-top:2.5rem}.gafn-source-note{border-left:3px solid var(--gold);padding:1rem 1.25rem;background:var(--paper);margin:2.5rem 0}.gafn-inline-cta{display:flex;align-items:center;justify-content:space-between;gap:2rem;border-top:1px solid #d4d2ca;margin-top:3rem;padding-top:2rem}
@media(max-width:900px){.gafn-home-services>header,.gafn-home-cta .gafn-container{grid-template-columns:1fr;gap:1rem}.gafn-contact-layout{grid-template-columns:1fr}.gafn-three{grid-template-columns:1fr}.gafn-three article,.gafn-three article+article{padding:1.6rem 0;border-right:0;border-bottom:1px solid #c8c5bb}.gafn-home-process ol{grid-template-columns:1fr}.gafn-proof{align-items:start;flex-direction:column}}
@media(max-width:600px){.gafn-container{width:min(100% - 28px,1180px)}.gafn-home-hero{min-height:650px;background-position:60% center}.gafn-home-hero h1{font-size:3.25rem}.gafn-actions{align-items:flex-start;flex-direction:column}.gafn-form-grid{grid-template-columns:1fr}.gafn-inline-cta{align-items:flex-start;flex-direction:column}}
@media(prefers-reduced-motion:reduce){.gafn-v2 *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
.gafn-card-meta{font-size:.84rem;color:#526572;border-top:1px solid rgba(18,63,98,.1);padding-top:.75rem}
.gafn-updated{font-size:.88rem;font-weight:700;color:#53616b}

.gafn-skip-link {
  position: fixed;
  z-index: 100000;
  top: .75rem;
  left: .75rem;
  padding: .8rem 1rem;
  background: #fff;
  color: var(--gafn-blue);
  font-weight: 800;
  text-decoration: none;
  transform: translateY(-160%);
}

.gafn-skip-link:focus {
  outline: 3px solid var(--gafn-gold);
  outline-offset: 2px;
  transform: translateY(0);
}

a:focus-visible,
button:focus-visible,
[role="button"]:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible {
  outline: 3px solid var(--gafn-gold);
  outline-offset: 3px;
}


.heder-top-wrap {
  display: none !important;
}


body.home .banner-content-five .title,
body.home .banner-content-five p {
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
}

body.home .banner-content-five p {
  color: rgba(255, 255, 255, .92) !important;
  text-shadow: 0 1px 18px rgba(3, 18, 31, .42);
}


body.home .elementor-element-126354d {
  display: none !important;
}

body.home .elementor-element-6f918a4,
body.home .elementor-element-f4b6811 {
  min-height: 0 !important;
  margin: 0 !important;
  padding-top: clamp(3.5rem, 7vw, 6rem) !important;
  padding-bottom: clamp(3.5rem, 7vw, 6rem) !important;
}

body.home .elementor-element-f4b6811 {
  --min-height: 0px;
}

.gafn-hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: .75rem;
  margin-top: 1.5rem;
}

.gafn-hero-actions .gafn-button-secondary {
  border-color: rgba(255,255,255,.72);
  background: transparent;
  color: #fff !important;
}

.gafn-hero-actions .gafn-button-secondary:hover {
  border-color: #fff;
  background: #fff;
  color: var(--gafn-blue) !important;
}

.gafn-seo-managed article.page > header.entry-header,
.gafn-seo-managed .site-main > .page-header {
  display: none;
}

.gafn-seo-page,
.gafn-seo-strip,
.gafn-seo-extra {
  color: var(--gafn-ink);
  font-family: inherit;
}

.gafn-seo-page *,
.gafn-seo-strip *,
.gafn-seo-extra * {
  box-sizing: border-box;
}

.gafn-seo-page a,
.gafn-seo-strip a,
.gafn-seo-extra a {
  color: var(--gafn-ink);
  text-decoration-color: rgba(21, 54, 80, .35);
  text-underline-offset: .2em;
}

.gafn-seo-page a:focus-visible,
.gafn-seo-strip a:focus-visible,
.gafn-seo-extra a:focus-visible {
  outline: 3px solid var(--gafn-gold);
  outline-offset: 3px;
}

.gafn-page-head,
.gafn-visual-hero {
  position: relative;
  overflow: hidden;
  margin: 0;
  padding: clamp(4.5rem, 9vw, 8.5rem) max(1.25rem, calc((100vw - 1160px) / 2));
  background: var(--gafn-blue);
  color: #fff;
}

.gafn-page-head::after {
  position: absolute;
  inset: auto -8rem -10rem auto;
  width: 25rem;
  height: 25rem;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 50%;
  content: "";
  pointer-events: none;
}

.gafn-page-head > div,
.gafn-visual-hero > div {
  position: relative;
  z-index: 1;
  width: min(100%, 820px);
}

.gafn-visual-hero {
  min-height: min(78vh, 760px);
  display: flex;
  align-items: center;
  background-image: linear-gradient(90deg, rgba(7, 29, 47, .96) 0%, rgba(7, 29, 47, .89) 39%, rgba(7, 29, 47, .35) 71%, rgba(7, 29, 47, .08) 100%), var(--gafn-bg);
  background-position: center;
  background-size: cover;
}

.gafn-page-head h1,
.gafn-visual-hero h1 {
  max-width: 900px;
  margin: 0 0 1.25rem;
  color: #fff;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(2.45rem, 5.5vw, 5.1rem);
  font-weight: 500;
  line-height: .99;
  letter-spacing: -.045em;
}

.gafn-page-head p:not(.gafn-eyebrow),
.gafn-visual-hero p:not(.gafn-eyebrow) {
  max-width: 760px;
  margin: 0 0 1.6rem;
  color: rgba(255,255,255,.82);
  font-size: clamp(1.04rem, 1.5vw, 1.25rem);
  line-height: 1.68;
}

.gafn-eyebrow {
  margin: 0 0 1rem;
  color: var(--gafn-gold);
  font-size: .76rem;
  font-weight: 800;
  letter-spacing: .12em;
  line-height: 1.4;
  text-transform: uppercase;
}

.gafn-prose,
.gafn-contact-grid,
.gafn-map,
.gafn-seo-wrap,
.gafn-seo-extra {
  width: min(calc(100% - 2.5rem), 1120px);
  margin-right: auto;
  margin-left: auto;
}

.gafn-prose {
  padding: clamp(3.5rem, 7vw, 6.5rem) 0;
}

.gafn-prose > h2,
.gafn-seo-extra > h2,
.gafn-seo-wrap > h2,
.gafn-contact h2 {
  margin: 3.5rem 0 1rem;
  color: var(--gafn-ink);
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(1.8rem, 3.2vw, 2.8rem);
  font-weight: 500;
  line-height: 1.13;
  letter-spacing: -.03em;
}

.gafn-prose > h2:first-child,
.gafn-seo-extra > h2:first-child,
.gafn-contact h2:first-child {
  margin-top: 0;
}

.gafn-prose p,
.gafn-prose li,
.gafn-seo-extra p,
.gafn-seo-extra li,
.gafn-seo-wrap p,
.gafn-contact-grid,
.gafn-contact-grid p {
  color: var(--gafn-muted);
  font-size: 1.02rem;
  line-height: 1.78;
}

.gafn-prose > p,
.gafn-prose > ul,
.gafn-prose > ol {
  max-width: 820px;
}

.gafn-answer {
  margin: 0 0 3.5rem;
  padding-left: 1.4rem;
  border-left: 3px solid var(--gafn-gold);
  color: #334f64 !important;
  font-size: clamp(1.08rem, 1.8vw, 1.28rem) !important;
}

.gafn-home-content {
  padding: clamp(4.5rem, 8vw, 7.5rem) 0;
  background: var(--gafn-paper);
}

.gafn-home-content h2,
.gafn-home-content h3 {
  color: var(--gafn-ink);
  font-family: Georgia, "Times New Roman", serif;
  font-weight: 500;
  letter-spacing: -.03em;
}

.gafn-home-content h2 {
  max-width: 820px;
  margin: 0 0 1rem;
  font-size: clamp(2rem, 4.2vw, 3.6rem);
  line-height: 1.06;
}

.gafn-home-content h3 {
  margin: 0 0 .8rem;
  font-size: clamp(1.55rem, 2.8vw, 2.25rem);
  line-height: 1.14;
}

.gafn-home-content p,
.gafn-home-content li {
  color: var(--gafn-muted);
  font-size: 1rem;
  line-height: 1.75;
}

.gafn-home-lead {
  max-width: 850px;
  margin: 0 0 clamp(2.5rem, 5vw, 4.5rem);
  font-size: clamp(1.05rem, 1.7vw, 1.25rem) !important;
}

.gafn-home-split {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(2rem, 6vw, 5rem);
  padding: clamp(2rem, 4vw, 3.25rem) 0;
  border-top: 1px solid var(--gafn-line);
}

.gafn-home-split section {
  min-width: 0;
}

.gafn-check-list {
  margin: 0 0 1.25rem;
  padding-left: 1.2rem;
}

.gafn-home-programs,
.gafn-home-process,
.gafn-home-cta {
  margin-top: clamp(3rem, 6vw, 5.5rem);
}

.gafn-home-program-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1px;
  margin: 1.5rem 0 2rem;
  border: 1px solid var(--gafn-line);
  background: var(--gafn-line);
}

.gafn-home-program-grid a {
  display: grid;
  min-height: 148px;
  align-content: space-between;
  gap: 1.2rem;
  padding: clamp(1.35rem, 3vw, 2rem);
  background: #fff;
  color: var(--gafn-ink);
  text-decoration: none;
}

.gafn-home-program-grid a:hover {
  background: #fcfbf7;
}

.gafn-home-program-grid span {
  color: var(--gafn-gold);
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.gafn-home-program-grid strong {
  font-size: clamp(1.1rem, 2vw, 1.35rem);
  line-height: 1.35;
}

.gafn-home-regional {
  margin-top: clamp(3rem, 6vw, 5.5rem);
  border-bottom: 1px solid var(--gafn-line);
}

.gafn-home-process ol {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1px;
  margin: 1.5rem 0 0;
  padding: 0;
  counter-reset: gafn-steps;
  border: 1px solid var(--gafn-line);
  background: var(--gafn-line);
  list-style: none;
}

.gafn-home-process li {
  display: grid;
  gap: .65rem;
  min-width: 0;
  padding: 1.5rem;
  background: #fff;
  counter-increment: gafn-steps;
}

.gafn-home-process li::before {
  color: var(--gafn-gold);
  content: "0" counter(gafn-steps);
  font-size: .78rem;
  font-weight: 800;
  letter-spacing: .1em;
}

.gafn-home-process li strong {
  color: var(--gafn-ink);
  line-height: 1.35;
}

.gafn-home-process li span {
  line-height: 1.6;
}

.gafn-home-cta {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 2rem;
  padding: clamp(2rem, 5vw, 3.5rem);
  background: var(--gafn-blue);
}

.gafn-home-cta h3,
.gafn-home-cta p:not(.gafn-eyebrow) {
  color: #fff;
}

.gafn-home-cta p:not(.gafn-eyebrow) {
  max-width: 650px;
  margin-bottom: 0;
  opacity: .82;
}

.gafn-home-cta .gafn-button {
  flex: 0 0 auto;
}

.gafn-card-link {
  align-self: flex-start;
  margin-top: auto;
  font-weight: 800;
}

.gafn-fact-grid,
.gafn-region-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1px;
  margin: 2.75rem 0 4rem;
  background: var(--gafn-line);
  border: 1px solid var(--gafn-line);
}

.gafn-fact-grid article,
.gafn-region-grid article {
  min-width: 0;
  padding: clamp(1.45rem, 3vw, 2.25rem);
  background: #fff;
}

.gafn-fact-grid h2,
.gafn-fact-grid h3,
.gafn-region-grid h2 {
  margin: 0 0 .65rem;
  color: var(--gafn-ink);
  font-size: 1.12rem;
  line-height: 1.28;
}

.gafn-fact-grid p,
.gafn-region-grid p {
  margin: 0;
  color: var(--gafn-muted);
  line-height: 1.65;
}

.gafn-region-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.gafn-county {
  max-width: 900px;
  padding: 1.35rem 0 1.35rem 1.35rem;
  border-left: 1px solid var(--gafn-line);
}

.gafn-county + .gafn-county {
  border-top: 1px solid var(--gafn-line);
}

.gafn-county h3 {
  margin: 0 0 .4rem;
  font-size: 1.15rem;
}

.gafn-county p {
  margin: 0;
}

.gafn-button {
  display: inline-flex;
  min-height: 48px;
  align-items: center;
  justify-content: center;
  padding: .75rem 1.2rem;
  border: 1px solid var(--gafn-gold);
  background: var(--gafn-gold);
  color: #102d43 !important;
  font-weight: 800;
  line-height: 1.2;
  text-decoration: none !important;
  transition: background-color .18s ease, color .18s ease, transform .18s ease;
}

.gafn-button:hover {
  background: #fff;
  color: var(--gafn-blue) !important;
  transform: translateY(-1px);
}

.gafn-button:focus-visible,
.gafn-legal-footer a:focus-visible {
  outline: 3px solid var(--gafn-gold);
  outline-offset: 3px;
}

.gafn-hp {
  display: none !important;
}

.gafn-legal-footer {
  border-top: 1px solid rgba(255,255,255,.12);
  background: #081f31;
  color: rgba(255,255,255,.78);
  font-size: .84rem;
}

.gafn-legal-footer > div {
  display: flex;
  width: min(calc(100% - 2.5rem), 1120px);
  min-height: 64px;
  align-items: center;
  gap: .8rem 1.5rem;
  margin: 0 auto;
}

.gafn-legal-footer a {
  color: #fff;
  text-underline-offset: .2em;
}

.gafn-related,
.gafn-seo-strip nav,
.gafn-seo-extra nav {
  display: flex;
  flex-wrap: wrap;
  gap: .55rem 1.4rem;
  margin-top: 1.5rem;
}

.gafn-related {
  max-width: 900px;
  padding: 1.5rem 0;
  border-top: 1px solid var(--gafn-line);
  border-bottom: 1px solid var(--gafn-line);
}

.gafn-related a,
.gafn-seo-strip nav a,
.gafn-seo-extra nav a {
  min-height: 40px;
  display: inline-flex;
  align-items: center;
  font-weight: 700;
}

.gafn-source-note {
  max-width: 900px;
  margin: 2.5rem 0;
  padding: 1.35rem 1.5rem;
  border-left: 3px solid var(--gafn-gold);
  background: var(--gafn-paper);
  color: var(--gafn-muted);
  font-size: .94rem;
  line-height: 1.65;
}

.gafn-source-note p {
  margin: 0 0 .65rem;
}

.gafn-source-note p:last-child {
  margin-bottom: 0;
}

.gafn-source-list {
  max-width: 900px;
}

.gafn-faq {
  max-width: 900px;
  margin-top: 4rem;
}

.gafn-faq details {
  border-top: 1px solid var(--gafn-line);
}

.gafn-faq details:last-child {
  border-bottom: 1px solid var(--gafn-line);
}

.gafn-faq summary {
  min-height: 54px;
  padding: 1rem 2rem 1rem 0;
  cursor: pointer;
  color: var(--gafn-ink);
  font-size: 1.04rem;
  font-weight: 750;
}

.gafn-faq details p {
  margin: 0;
  padding: 0 0 1.25rem;
}

.gafn-cta {
  max-width: 900px;
  margin-top: 4rem;
  padding: clamp(1.7rem, 4vw, 3.2rem);
  background: var(--gafn-blue);
  color: #fff;
}

.gafn-cta h2 {
  margin: 0 0 .75rem;
  color: #fff;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(1.7rem, 3vw, 2.45rem);
  font-weight: 500;
}

.gafn-cta p {
  margin: 0 0 1.2rem;
  color: rgba(255,255,255,.78);
}

.gafn-seo-strip,
.gafn-seo-extra {
  padding: clamp(3.5rem, 7vw, 6rem) 0;
  border-top: 1px solid var(--gafn-line);
  background: var(--gafn-paper);
}

.gafn-seo-extra {
  margin-top: 3rem;
  background: #fff;
}

.gafn-contact-grid {
  display: grid;
  grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr);
  gap: clamp(2rem, 6vw, 6rem);
  padding: clamp(3.5rem, 7vw, 6.5rem) 0;
}

.gafn-contact-grid dl {
  margin: 0;
}

.gafn-contact-grid dt {
  margin-top: 1.3rem;
  color: var(--gafn-muted);
  font-size: .75rem;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.gafn-contact-grid dd {
  margin: .3rem 0 0;
  color: var(--gafn-ink);
}

.gafn-contact-grid dd a {
  font-size: 1.12rem;
  font-weight: 750;
}

.gafn-contact-grid input:not([type="checkbox"]),
.gafn-contact-grid textarea,
.gafn-contact-grid select {
  width: 100%;
  min-height: 48px;
  border: 1px solid #becbd3;
  border-radius: 0;
  background: #fff;
}

.gafn-contact-grid input:focus,
.gafn-contact-grid textarea:focus,
.gafn-contact-grid select:focus {
  border-color: var(--gafn-gold);
  outline: 3px solid rgba(198,160,84,.23);
}

.gafn-contact-grid input[type="submit"] {
  min-height: 48px;
  border: 1px solid var(--gafn-gold);
  background: var(--gafn-blue);
  color: #fff;
  font-weight: 800;
}

.gafn-contact-grid input[type="checkbox"] {
  width: 24px;
  height: 24px;
  min-height: 24px;
  margin: 0 .55rem 0 0;
  vertical-align: middle;
}

.gafn-contact-grid .form-grp--privacy {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: .35rem;
  margin: 1.15rem 0;
}

.gafn-fineprint {
  font-size: .88rem !important;
}

.gafn-map {
  margin-bottom: clamp(3.5rem, 7vw, 6.5rem);
  overflow: hidden;
}

.gafn-map iframe {
  display: block;
  width: 100%;
  height: 360px;
  border: 0;
}

@media (max-width: 820px) {
  body.home {
    overflow-x: hidden;
  }

  body.home .elementor-element-ff783d1 {
    display: flex !important;
    min-height: calc(100svh - 76px) !important;
    align-items: center !important;
    padding: 0 !important;
    height: auto !important;
  }

  body.home .elementor-element-ff783d1 > .elementor-container,
  body.home .elementor-element-5206670,
  body.home .elementor-element-5206670 > .elementor-widget-wrap,
  body.home .elementor-element-2f3ad53,
  body.home .elementor-element-2f3ad53 > .elementor-widget-wrap,
  body.home .elementor-element-ff783d1 .elementor-column,
  body.home .elementor-element-ff783d1 .elementor-widget-wrap {
    width: 100% !important;
    min-height: 0 !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  body.home .elementor-element-ef840ce {
    width: 100% !important;
    min-height: 0 !important;
    padding: clamp(4.5rem, 12vh, 6rem) 1.25rem 3.5rem !important;
  }

  body.home .elementor-element-6bc72c6,
  body.home .banner-content-five {
    position: relative !important;
    z-index: 5 !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
  }

  body.home .banner-content-five .title {
    width: 100% !important;
    max-width: 100% !important;
    font-size: clamp(2.15rem, 10vw, 3.35rem) !important;
    line-height: 1.04 !important;
    letter-spacing: -.035em !important;
    overflow-wrap: anywhere;
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
  }

  body.home .banner-content-five p {
    width: 100% !important;
    max-width: 100% !important;
    font-size: clamp(.94rem, 3.6vw, 1.06rem) !important;
    line-height: 1.55 !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
  }

  .mobile-nav-toggler:focus-visible {
    outline: 3px solid var(--gafn-gold);
    outline-offset: 3px;
  }

  .gafn-fact-grid,
  .gafn-region-grid,
  .gafn-contact-grid,
  .gafn-home-split{
    grid-template-columns: 1fr;
  }

  .gafn-home-process ol {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .gafn-visual-hero {
    min-height: 680px;
    align-items: flex-end;
    background-image: linear-gradient(180deg, rgba(7,29,47,.2) 0%, rgba(7,29,47,.48) 36%, rgba(7,29,47,.98) 76%), var(--gafn-bg);
    background-position: 66% center;
  }
}

@media (max-width: 520px) {
	.gafn-hero-actions {
	  display: grid;
	}

	.gafn-hero-actions .gafn-button {
	  width: 100%;
	}

	.gafn-legal-footer > div {
	  min-height: 0;
	  flex-direction: column;
	  align-items: flex-start;
	  padding: 1.25rem 0;
	}

  .gafn-home-program-grid,
  .gafn-home-process ol {
    grid-template-columns: 1fr;
  }

  .gafn-home-cta {
    align-items: stretch;
    flex-direction: column;
  }

  .gafn-home-cta .gafn-button {
    width: 100%;
  }

  .gafn-page-head,
  .gafn-visual-hero {
    padding-right: 1.15rem;
    padding-left: 1.15rem;
  }

  .gafn-page-head h1,
  .gafn-visual-hero h1 {
    font-size: clamp(2.25rem, 11vw, 3.3rem);
  }

  .gafn-prose,
  .gafn-contact-grid,
  .gafn-map,
  .gafn-seo-wrap,
  .gafn-seo-extra {
    width: min(calc(100% - 2.25rem), 1120px);
  }

  .gafn-visual-hero {
    min-height: 650px;
  }

}


.gafn-site-header { position:relative; z-index:50; background:#102b43; color:#fff; }
body.home .gafn-site-header { position:absolute; inset:0 0 auto; background:linear-gradient(180deg,rgba(5,19,33,.78),rgba(5,19,33,0)); }
body.home.admin-bar .gafn-site-header { top:32px; }
.gafn-header-inner { max-width:1440px; min-height:116px; margin:auto; padding:20px 48px; display:flex; align-items:center; justify-content:space-between; gap:36px; }
.gafn-brand { display:block; flex:0 0 170px; }
.gafn-brand img { display:block; width:170px; height:auto; }
#gafn-navigation { display:flex; align-items:center; gap:36px; }
#gafn-navigation a,.gafn-header-call { color:#fff; font-size:15px; font-weight:600; line-height:1.5; text-decoration:none; padding:12px 0; }
#gafn-navigation a { border-bottom:1px solid transparent; }
#gafn-navigation a:hover,#gafn-navigation a[aria-current] { border-bottom-color:#bcd9eb; }
.gafn-header-call { white-space:nowrap; letter-spacing:.03em; }
.gafn-header-call:hover { color:#c7e6fa; }
.gafn-site-header a:focus-visible,.gafn-menu-toggle:focus-visible { outline:2px solid #bce7ff; outline-offset:6px; }
.gafn-menu-toggle { display:none; width:46px; height:46px; padding:12px; border:1px solid #ffffff70; border-radius:4px; background:transparent; color:#fff; }
.gafn-menu-toggle span { display:block; height:2px; background:currentColor; margin:4px 0; }
.gafn-minimal-footer { background:#102b43; color:#d9e3ec; padding:26px 24px; text-align:center; }
.gafn-minimal-footer p { margin:0; font-size:13px; line-height:1.6; }
body.home .elementor-element-ff783d1 { margin-top:0!important; }
body.home .banner-content-five { padding-top:120px; }
@media(max-width:1000px) {
 .gafn-header-inner { padding:20px 28px; gap:24px; }
 .gafn-brand,.gafn-brand img { width:145px; flex-basis:145px; }
 #gafn-navigation { gap:22px; }
 #gafn-navigation a,.gafn-header-call { font-size:14px; }
}
@media(max-width:767px) {
 body.home.admin-bar .gafn-site-header { top:46px; }
 .gafn-header-inner { min-height:94px; padding:18px 20px; gap:16px; flex-wrap:wrap; }
 .gafn-brand,.gafn-brand img { width:112px; flex-basis:112px; }
 .gafn-header-call { margin-left:auto; font-size:13px; }
 .gafn-menu-toggle { display:block; }
 #gafn-navigation { display:none; flex-basis:100%; order:4; padding:14px 20px; background:#102b43; border-radius:4px; }
 #gafn-navigation.is-open { display:flex; flex-direction:column; align-items:stretch; gap:4px; }
 #gafn-navigation a { padding:13px 0; }
 body.home .banner-content-five { padding-top:96px; }
}
@media(max-width:360px) {
 .gafn-header-inner { gap:10px; padding-inline:14px; }
 .gafn-brand,.gafn-brand img { width:92px; flex-basis:92px; }
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    scroll-behavior: auto !important;
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
  }

  .gafn-button {
    transition: none;
  }
}
