/*
 Theme Name:   Bootscore Child
 Description:  Bootscore Child Theme
 Author:       Bootscore
 Author URI:   https://bootscore.me
 Template:     bootscore
 Version:      6.0.0
 Requires at least: 5.0
 Tested up to: 6.6
 Requires PHP: 7.4
 License: MIT License
 License URI: https://github.com/bootscore/bootscore-child/blob/main/LICENSE
 Text Domain:  bootscore
*/

/* 
All style editing is done via /assets/scss/_bootscore_custom.scss
*/


/* =============================================================
   Goza Honnold — Site Stylesheet
   Brand: dark blue #132E5B / green #319529 / text #4B5563
   ============================================================= */

:root{
  --gh-dark-blue: #132E5B;
  --gh-dark-blue-rgb: 19, 46, 91;
  --gh-green: #319529;
  --gh-dark-green: #186112;
  --gh-text: #4B5563;
  --gh-white: #ffffff;
  --gh-light-gray: #F5F5F5;
  --gh-border: #E5E7EB;
  --gh-border-green: #319529;

  --font-heading: "Red Hat Display", Georgia, serif;
  --font-body: "Geist", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.container,
.container-sm,
.container-md,
.container-lg,
.container-xl,
.container-xxl{
  max-width: 1200px;
}

.bg-white
{
  background-color: #ffffff;
}

.p-60
{
  padding: 60px 0!important;
}

.font-regular
{
  font-weight: 400!important;
}

footer.gh-footer .container, .gh-navbar .container {
    max-width: 1360px;
}


body{
  font-family: var(--font-body);
  color: var(--gh-text);
}

/* All buttons/links: no underline, ever */
a,
.btn-consultation,
.btn-gh-primary,
.btn-gh-outline,
.btn-gh-outline-dark{
  text-decoration: none;
}
a:hover,
.btn-consultation:hover,
.btn-gh-primary:hover,
.btn-gh-outline:hover,
.btn-gh-outline-dark:hover{
  text-decoration: none;
}

/* ---------- Typography scale (from Figma) ---------- */
h1, .h1-style{
  font-family: var(--font-heading);
  font-weight: 400;
  font-size: 82px;
  line-height: 104%;
  letter-spacing: -2.72px;
  color: var(--gh-white);
  margin: 0;
}

h2, .h2-style{
  font-family: var(--font-heading);
  font-weight: 500;
  font-size: 42px;
  line-height: 109%;
  letter-spacing: 0;
  color: var(--gh-dark-blue);
  margin: 0;
}

p, .text-style{
  font-family: var(--font-body);
  font-weight: 400;
  font-size: 18px;
  line-height: 151%; /* 27.2px */
  letter-spacing: -0.08px;
  color: var(--gh-text);
  margin: 0;
}

.text-style-light{
  color: rgba(255,255,255,0.85);
}

/* ---------- Navbar ---------- */
.gh-navbar{
  background-color: var(--gh-dark-blue);
  padding: 1.1rem 0;
}
.gh-navbar .navbar-brand img{
  height: 34px;
}
/* The padding carried !important, which beat the 1200-1439 tightening in migration.css no matter
   how specific that rule was, so the header overflowed by 118px at a 1250px viewport (measured on
   the home page 2026-10-19). The selector now carries .navbar-nav, which outranks Bootstrap's
   .navbar-expand-xl .navbar-nav .nav-link on its own, so the !important is not needed. */
.gh-navbar .navbar-nav .nav-link{
  font-family: var(--font-body);
    font-size: 14px;
    letter-spacing: 1.44px;
    text-transform: uppercase;
    font-weight: 500;
    color: var(--gh-white) !important;
    opacity: 0.9;
    padding: 0.5rem 1rem;
}

/* Between 1200 and 1439 the 7 uppercase links plus search and the CTA do not fit at full spacing:
   measured on the home page 2026-10-19, the header overflowed by 118px at a 1250px viewport.
   This sits in the same file as the rule above, after it, so it wins on source order. */
@media (min-width: 1200px) and (max-width: 1439.98px) {
  .gh-navbar .navbar-nav .nav-link {
    font-size: 12.5px;
    letter-spacing: 0.5px;
    padding-left: 7px;
    padding-right: 7px;
  }

  .gh-navbar .navbar-collapse .btn-consultation {
    padding: 12px 16px;
    font-size: 12.5px;
  }

  .gh-navbar .navbar-brand > img {
    height: 30px;
  }
}

/* From 1440 up the links use full spacing, and the row was ~35px wider than the 1320px container:
   the Free Consultation button sat outside the container edge at every width, and at 1440 with a
   classic (Windows) scrollbar it pushed the page 3px sideways (measured 2026-11-04 on practice
   pages: client 1425, button right 1428). 12px side padding brings it back inside. */
@media (min-width: 1440px) {
  .gh-navbar .navbar-nav .nav-link {
    padding-left: 12px;
    padding-right: 12px;
  }
}

.gh-navbar .nav-link:hover{
  opacity: 1;
  color: var(--gh-green) !important;
}
.gh-navbar .btn-icon{
  color: var(--gh-white);
  background: transparent;
  border: none;
  font-size: 18px;
}
.btn-consultation{
  background-color: var(--gh-white);
  color: var(--gh-dark-blue);
  font-weight: 600;
  font-size: 14px;
  letter-spacing: 0.02em;
  padding: 0.7rem 1.4rem;
  border: none;
  white-space: nowrap;
  transition: all .2s ease;
  height: 49px;
  display: inline-flex;
  align-items: center;
}
.btn-consultation:hover{
  background-color: var(--gh-green);
  color: var(--gh-white);
}

/* ---------- Hero ---------- */
.gh-hero {
    position: relative;
    background-image: linear-gradient(180deg, rgb(19 46 91 / 0%) 0%, rgb(19 46 91 / 0%) 55%, rgba(8, 20, 41, 0.96) 100%), url(/wp-content/uploads/2026/09/hero-bg.png);
    background-size: cover;
    background-position: top center;
    background-repeat: no-repeat;
    min-height: 827px;
    display: flex;
    align-items: center;
    padding-top: 140px;
}

.gh-rating{
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 0px;
}
.gh-rating .stars{
  color: var(--gh-green);
  letter-spacing: 2px;
  font-size: 16px;
}
.gh-rating .score{
  color: var(--gh-white);
  font-weight: 700;
  font-size: 16px;
}
.verified{
  color: #ffffff;
    font-size: 12.51px;
    margin-bottom: 18px;
}

.gh-eyebrow{
  font-family: var(--font-body);
  font-weight: 600;
  font-size: 14px!important;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #ffffff!important;
  margin-bottom: 18px;
}

.gh-hero h1{
  margin-bottom: 22px;
}
.gh-hero h1 em{
  font-style: italic;
  color: var(--gh-green);
}

.gh-hero p{
  color: rgba(255,255,255,0.85);
  max-width: 620px;
  margin-bottom: 34px;
}
.gh-hero p strong{
  color: var(--gh-white);
  font-weight: 600;
}

.gh-hero-actions{
  display: flex;
  gap: 16px;
  flex-wrap: wrap;
}

.btn-gh-primary{
  background-color: var(--gh-green);
  color: var(--gh-white);
  font-weight: 600;
  font-size: 14px;
  padding: 0.95rem 1.75rem;
  border: none;
  gap: 10px;
  transition: all .2s ease;
  height: 74px;
  align-items: center;
  display: inline-flex;
  letter-spacing: 1.68px;
}

.medium.btn-gh-primary
{
  height: 61px;
}
.btn-gh-primary:hover{
  background-color: #277a20;
  color: var(--gh-white);
}

.btn-gh-outline {
        background-color: transparent;
    color: var(--gh-white);
    font-weight: 600;
    font-size: 14px;
    padding: 0.95rem 1.75rem;
    border: 1px solid rgb(255 255 255 / 26%);
    transition: all .2s ease;
    width: 100%;
    text-align: center;
    max-width: 210px;
    align-items: center;
    height: 74px;
    display: flex;
    justify-content: center;
    letter-spacing: 1.68px;
}
.btn-gh-outline:hover{
  background-color: var(--gh-white);
  color: var(--gh-dark-blue);
  border-color: var(--gh-white);
}

/* ---------- "Who We Are" section ---------- */
.gh-whoweare{
  padding: 100px 0;
}

.gh-whoweare h2{
  margin-bottom: 0;
}
.gh-whoweare h2 em{
  font-style: italic;
  color: var(--gh-green);
}

.gh-whoweare-row + .gh-whoweare-row{
  margin-top: 56px;
}

.gh-whoweare-image{
  width: 100%;
  border-radius: 4px;
  overflow: hidden;
}
.gh-whoweare-image img{
  width: 100%;
  height: auto;
  display: block;
}

.gh-eyebrow-green{
  font-family: var(--font-body);
  font-weight: 600;
  font-size: 14px;
  letter-spacing: 1.68px;
  text-transform: uppercase;
  color: var(--gh-green);
  margin-bottom: 14px;
}

.gh-whoweare-intro p{
  font-size: 16px;
  line-height: 160%;
}

.gh-stat{
  display: flex;
  align-items: flex-start;
  gap: 4px;
  margin-top: 0px;
}
.gh-stat-number{
  font-family: var(--font-heading);
  font-weight: 500;
  font-size: 120px;
  line-height: 1;
  color: var(--gh-green);
}
.gh-stat-plus{
  font-family: var(--font-heading);
  font-weight: 500;
  font-size: 28px;
  color: var(--gh-green);
  margin-top: 6px;
}

.gh-stat-caption {
    font-family: var(--font-body);
    font-weight: 600;
    font-size: 14px;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--gh-dark-blue);
    margin-top: 8px;
    padding-bottom: 20px;
    padding-top: 20px;
    border-bottom: 1px solid var(--gh-border);
}

.gh-stat-text {
    margin-top: 20px;
    font-size: 18px;
    line-height: 160%;
    color: var(--gh-dark-blue);
    max-width: 460px;
    border-bottom: 1px solid #e5e7eb99;
    padding-bottom: 24px;
}

.gh-stat-text .highlight{
  color: var(--gh-green);
  font-weight: 500;
}

.btn-gh-outline-dark{
  display: inline-block;
  background-color: transparent;
  color: var(--gh-dark-blue);
  font-weight: 600;
  font-size: 13px;
  letter-spacing: 1.68px;
  padding: 0.85rem 1.5rem;
  border: 1px solid var(--gh-border);
  margin-top: 28px;
  transition: all .2s ease;
  height: 58px;
  display: inline-flex;
  align-items: center;
  letter-spacing: 1.68px;
}
.btn-gh-outline-dark:hover{
  background-color: var(--gh-dark-blue);
  color: var(--gh-white);
  border-color: var(--gh-dark-blue);
}

/* ---------- Logo / Awards bar ---------- */
.gh-logos{
  padding: 56px 0;
  padding-top: 25px;
  background-color: #F8F9FA;
  min-height: 290px;
    display: flex;
    align-items: center;
}

.gh-logos-title{
  text-align: center;
  font-family: var(--font-body);
  font-weight: 400;
  font-size: 16px;
  color: var(--gh-dark-blue);
  margin-bottom: 50px;
}

.gh-logos-row{
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 80px;
}

.gh-logos-row img{
  height: 90px;
  width: auto;
  object-fit: contain;
}



/* ---------- Practice Areas slider ---------- */
/*.gh-practice{
  position: relative;
  padding: 100px 0 90px;
  background-image:
    linear-gradient(180deg, rgb(19 46 91 / 0%) 0%, rgb(19 46 91 / 0%) 100%),
    url('/wp-content/uploads/2026/09/story-section-bg.png');
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}*/

.gh-practice{
  position: relative;
  padding: 130px 0 90px;
  background-image:
    linear-gradient(180deg, rgb(19 46 91 / 0%) 0%, rgb(19 46 91 / 0%) 100%),
    url('/wp-content/uploads/2026/09/story-section-bg.png');
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  /* Tilted top edge */
  clip-path: polygon(0 0, 100% 32px, 100% 100%, 0 100%);
  margin-top: -22px;
}

/* Green accent line sitting on the tilted edge — constant thickness */
.border-green-left-to-right::before{
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 56%;
  height: 28px; 
  background-color: var(--gh-dark-green);
  clip-path: polygon(0 0, 100% 18px, 100% 28px, 0 10px);
  z-index: 3;
}

.gh-practice-header{
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 24px;
  margin-bottom: 56px;
}

.gh-practice-heading h2{
  max-width: 760px;
}

.gh-practice-heading .gh-eyebrow{
  margin-bottom: 14px;
}

.gh-practice-heading h2{
  color: var(--gh-white);
  margin-bottom: 20px;
}
.gh-practice-heading h2 .highlight{
  color: var(--gh-green);
}

.gh-practice-text{
  color: rgba(255,255,255,0.8);
  font-size: 16px;
  line-height: 160%;
  max-width: 920px;
}

.gh-practice-nav{
  display: flex;
  gap: 10px;
  flex-shrink: 0;
  margin-top: 4px;
}

.gh-arrow {
    width: 44px;
    height: 44px;
    background-color: var(--gh-green);
    color: var(--gh-white);
    border: none;
    padding: 9px;
    padding-bottom: 14px;
    font-size: 27px;
    line-height: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background-color .2s ease;
}
.gh-arrow:hover{
  background-color: #277a20;
}

.gh-practice-card{
  background-color: rgba(255,255,255,0.02);
  border: 1px solid rgba(49,149,41,0.4);
  border-radius: 0px;
  padding: 40px 12px;
  margin: 0 12px;
  text-align: center;
  height: 100%;
  position: relative;
    padding-bottom: 75px;
}

.gh-practice-icon{
  width: 56px;
  height: 56px;
  object-fit: contain;
  margin: 0 auto 22px;
}

.gh-practice-card h3{
  font-family: var(--font-heading);
  font-weight: 500;
  font-size: 20px;
  line-height: 130%;
  color: var(--gh-white);
  margin-bottom: 14px;
}

.gh-practice-card p{
  font-family: var(--font-body);
  font-size: 16px;
  line-height: 160%;
  color: rgba(255,255,255,0.75);
  margin-bottom: 26px;
}

.btn-gh-card{
  display: inline-block;
  background-color: var(--gh-white);
  color: var(--gh-dark-blue);
  font-weight: 600;
  font-size: 18.6px;
  letter-spacing: 1.68px;
  padding: 0.75rem 1.5rem;
  text-decoration: none;
  transition: all .2s ease;
  position: absolute;
  bottom: 20px;
  left: 0;
  right: 0;
  max-width: 193px;
  margin: 0 auto;
  height: 61px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.btn-gh-card:hover{
  background-color: var(--gh-green);
  color: var(--gh-white);
}

/* Slick slide spacing + dots */
.gh-practice-slider .slick-slide{
  /*display: flex;*/
  height: auto;
}
.gh-practice-slider .slick-track{
  display: flex;
  align-items: stretch;
}
.gh-practice-slider .slick-dots{
  bottom: -48px;
}
.gh-practice-slider .slick-dots li{
  width: 8px;
  height: 8px;
  margin: 0 4px;
}
.gh-practice-slider .slick-dots li button{
  width: 8px;
  height: 8px;
  padding: 0;
}
.gh-practice-slider .slick-dots li button:before{
  width: 8px;
  height: 8px;
  font-size: 8px;
  line-height: 8px;
  color: rgba(255,255,255,0.4);
  opacity: 1;
}
.gh-practice-slider .slick-dots li.slick-active button:before{
  color: var(--gh-green);
  opacity: 1;
}



/* ---------- Proven Outcomes slider ---------- */
.gh-outcomes{
  padding: 100px 0 90px;
  background-color: var(--gh-white);
}

.gh-outcomes-header{
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 24px;
  margin-bottom: 48px;
}

.gh-outcomes-heading{
  max-width: 700px;
}

.gh-outcomes-heading .gh-eyebrow-green{
  margin-bottom: 14px;
}

.gh-outcomes-heading h2{
  margin-bottom: 16px;
}
.gh-outcomes-heading h2 .highlight{
  color: var(--gh-green);
}

.gh-outcomes-text{
  font-size: 16px;
  line-height: 160%;
  color: var(--gh-text);
  max-width: 560px;
}

/* Cards */
.gh-outcomes-slider .slick-track{
  display: flex;
  align-items: stretch;
  gap: 2px;
}
.gh-outcomes-slider .slick-slide{
  height: auto;
}
/*.gh-outcomes-slider .slick-slide > div{
  height: 100%;
}*/

.gh-outcomes-card{
  background-color: var(--gh-dark-blue);
  border-right: 1px solid rgba(255,255,255,0.15);
  padding: 40px 26px;
  height: 100%;
  display: flex;
  flex-direction: column;
}
.gh-outcomes-slider .slick-slide:last-child .gh-outcomes-card{
  border-right: none;
}

.gh-outcomes-amount{
  font-family: var(--font-heading);
  font-weight: 600;
  font-size: 46.86px;
  line-height: 46.9px;
  letter-spacing: 0;
  margin-bottom: 18px;
}
.gh-outcomes-amount .dollar{
  color: #E8E8E8;
}
.gh-outcomes-amount .suffix{
  color: var(--gh-green);
}

.gh-outcomes-badge{
  display: inline-block;
  align-self: flex-start;
  border: 1px solid rgba(255,255,255,0.4);
  border-radius: 2px;
  padding: 5px 10px;
  font-family: var(--font-body);
  font-weight: 400;
  font-size: 8.37px;
  line-height: 13px;
  letter-spacing: 1.51px;
  text-transform: uppercase;
  color: var(--gh-white);
  margin-bottom: 22px;
}

.gh-outcomes-desc{
  font-family: var(--font-body);
  font-weight: 400;
  font-size: 12.55px;
  line-height: 19.5px;
  letter-spacing: 0;
  color: var(--gh-white);
  margin-bottom: 20px;
  flex-grow: 1;
}

.gh-outcomes-tag{
  font-family: var(--font-body);
  font-weight: 400;
  font-size: 10px;
  line-height: 15.5px;
  letter-spacing: 1.8px;
  text-transform: uppercase;
  color: #3DAB33;
  margin: 0;
  margin-top: auto;
}

/* Nav: arrows + progress bar */
.gh-outcomes-nav{
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 18px;
  margin-top: 40px;
}

.gh-outcomes-progress-wrap{
  display: flex;
  align-items: center;
}

.gh-outcomes-progress{
  display: flex;
  align-items: center;
  gap: 6px;
  list-style: none;
  margin: 0;
  padding: 0;
}
.gh-outcomes-progress li{
  margin: 0;
}
.gh-outcomes-progress li button{
  display: block;
  width: 14px;
  height: 4px;
  padding: 0;
  border: none;
  border-radius: 2px;
  background-color: #D9D9D9;
  font-size: 0;
  color: transparent;
  cursor: pointer;
  transition: all .2s ease;
}
.gh-outcomes-progress li.slick-active button{
  width: 32px;
  background-color: var(--gh-green);
}


/* ---------- Current Cases ---------- */
.gh-cases {
    position: relative;
    padding: 100px 0;
    background-color: #F6F6F6;
    clip-path: polygon(0 0, 100% 32px, 100% 100%, 0 100%);
    margin-top: -22px;
}

.gh-cases::before {
    content: "";
    position: absolute;
    top: 5px;
    left: 44%;
    width: 56%;
    height: 40px;
    background-color: var(--gh-dark-green);
    z-index: 3;
    clip-path: polygon(1px 3px, 100% 20px, 100% 33px, 0 16px);
}

.gh-cases-header{
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 48px;
}
.gh-cases-header h2{
  margin: 0;
}

.gh-cases-card{
  background-color: var(--gh-white);
  border: 1px solid #001437;
      padding: 18px 22px;
  height: 100%;
  display: flex;
  flex-direction: column;
}

.gh-cases-badge{
  display: inline-block;
  font-family: var(--font-body);
  font-weight: 600;
  font-size: 11px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--gh-green);
  margin-bottom: 14px;
}

.gh-cases-card h3{
  font-family: var(--font-heading);
  font-weight: 600;
  font-size: 20px;
  line-height: 130%;
  color: var(--gh-dark-blue);
  margin-bottom: 14px;
}

.gh-cases-card p{
  font-family: var(--font-body);
  font-size: 15px;
  line-height: 160%;
  color: var(--gh-text);
  margin-bottom: 0;
  flex-grow: 1;
}

.gh-cases-meta{
  display: flex;
  gap: 36px;
  padding-top: 20px;
  margin-top: 20px;
  border-top: 1px solid var(--gh-border);
}

.gh-cases-meta-item{
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.gh-cases-meta-item .label{
  font-family: var(--font-body);
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--gh-text);
}
.gh-cases-meta-item .value{
  font-family: var(--font-body);
  font-size: 14px;
  font-weight: 600;
  color: var(--gh-dark-blue);
}

.btn-gh-card-outline{
  display: block;
  text-align: center;
  background-color: transparent;
  border: 1px solid var(--gh-green);
  color: var(--gh-green);
  font-weight: 600;
  font-size: 14px;
  letter-spacing: 1.68px;
  padding: 0.75rem 1.5rem;
  height: 61px;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  margin-top: 24px;
  transition: all .2s ease;
}
.btn-gh-card-outline:hover{
  background-color: var(--gh-green);
  color: var(--gh-white);
}


/* ---------- Why Choose Us / Practice Areas grid ---------- */
.gh-whychoose{
  position: relative;
  padding: 130px 0 90px;
  background-color: #001437;

  /* Tilted top edge (same technique as the Practice slider section) */
  clip-path: polygon(0 0, 100% 32px, 100% 100%, 0 100%);
  margin-top: -22px;
}

/* Green accent line sitting on the tilted edge — constant thickness */
/*.gh-whychoose::before{
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 28px; 
  background-color: var(--gh-green);
  clip-path: polygon(0 0, 100% 22px, 100% 28px, 0 6px);
  z-index: 3;
}*/

.gh-whychoose-header{
  text-align: center;
  max-width: 640px;
  margin: 0 auto 48px;
}
.gh-whychoose-header .gh-eyebrow{
  margin-bottom: 14px;
}
.gh-whychoose-header h2{
  color: var(--gh-white);
  margin-bottom: 16px;
}
.gh-whychoose-text{
  font-size: 16px;
  line-height: 160%;
  color: rgba(255,255,255,0.75);
  max-width: 497px;
    margin: 0 auto;
}

.gh-whychoose-grid{
  --bs-gutter-x: 15px;
  --bs-gutter-y: 15px;
  margin-bottom: 48px;
}

.gh-whychoose-tile{
  position: relative;
  display: block;
  aspect-ratio: 1 / 1.05;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  overflow: hidden;
  text-decoration: none;
  min-height: 342px;
  max-width: 275px;
}

.gh-whychoose-overlay{
  position: absolute;
  inset: 0;
  transition: background-color .25s ease;
}
.gh-whychoose-tile:hover .gh-whychoose-overlay{
  background: rgba(49,149,41,0.75);
}

.gh-whychoose-content{
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 18px;
  padding: 24px;
  text-align: center;
}

.gh-whychoose-content i{
  font-size: 32px;
  color: var(--gh-white);
}

.gh-whychoose-text-label{
  font-family: var(--font-body);
  font-weight: 400;
  font-size: 24px;
  line-height: 130%;
  letter-spacing: 0.02em; /* Figma: 2% tracking */
  color: var(--gh-white);
}



/* ---------- Meet our Team ---------- */
.gh-team{
  padding: 100px 0;
  background-color: var(--gh-white);
}

.gh-team-header{
  margin-bottom: 56px;
}
.gh-team-header .gh-eyebrow-green{
  margin-bottom: 14px;
}
.gh-team-header h2{
  margin: 0;
}

.gh-team-intro{
  font-size: 16px;
  line-height: 160%;
  max-width: 560px;
  margin-left: auto;
  color: var(--gh-text);
}

.gh-team-card:hover .gh-team-link
{
  text-decoration: underline;
}



.gh-team-photo{
  position: relative;
  min-height: 312px;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  overflow: hidden;
  margin-bottom: 18px;
  transition: background-size 0.6s ease, filter 0.6s ease;
}

.gh-team-card {
    transition:
        transform 0.45s cubic-bezier(0.22, 1, 0.36, 1),
        box-shadow 0.45s ease;
}



.gh-team-photo {
    position: relative;
    overflow: hidden;
    background-size: cover;
    background-position: center;

    transition:
        transform 0.6s cubic-bezier(0.22, 1, 0.36, 1),
        filter 0.6s ease;
}

.gh-team-card:hover .gh-team-photo {
    transform: scale(1.015);
    filter: brightness(0.96);
     transform: translateY(-8px);
}

.gh-team-badge{
  position: absolute;
  top: 14px;
  left: 14px;
  background-color: #0E1620;
  color: var(--gh-white);
  font-family: var(--font-body);
  font-weight: 600;
  font-size: 10px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  padding: 5px 10px;
  border-radius: 2px;
}

.gh-team-name{
  font-family: var(--font-heading);
  font-weight: 400;
  font-size: 24px;
  line-height: 26.4px; /* 110% */
  letter-spacing: -0.24px;
  color: var(--gh-dark-blue);
  margin-bottom: 6px;
}

.gh-team-title{
  font-family: var(--font-body);
  font-weight: 400;
  font-size: 12px;
  line-height: 18px; /* 150% */
  letter-spacing: -0.08px;
  color: var(--gh-text);
  margin-bottom: 14px;
}

.gh-team-link{
  font-family: "JetBrains Mono", monospace;
  font-weight: 500;
  font-size: 11px;
  line-height: 17px;
  letter-spacing: 1.54px;
  text-transform: uppercase;
  color: var(--gh-green);
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 4px;
}
.gh-team-link:hover{
  opacity: 0.75;
  text-decoration: none;
}



/* ---------- The Goza & Honnold Difference ---------- */
.gh-difference{
  position: relative;
  padding: 130px 0 90px;
  background-color: #F6F6F6;
  padding-bottom: 150px;
  /* Tilted top edge (same technique as your other tilted sections) */
  clip-path: polygon(0 0, 100% 70px, 100% 100%, 0 100%);
  margin-top: -22px;
}

/* Green accent line sitting on the tilted edge — constant thickness */
.gh-difference::before 
  {
      content: "";
      position: absolute;
      top: 0;
      left: 0;
      width: 56%;
      height: 48px;
      background-color: var(--gh-dark-green);
      clip-path: polygon(0 0, 100% 39px, 100% 46px, 0 10px);
      z-index: 3;
  }

.gh-difference-header{
  text-align: center;
  max-width: 620px;
  margin: 0 auto 48px;
}
.gh-difference-header .gh-eyebrow-green{
  margin-bottom: 14px;
}
.gh-difference-header h2{
  margin-bottom: 16px;
}
.gh-difference-text{
  font-size: 16px;
  line-height: 160%;
  color: var(--gh-text);
}

.gh-difference-card {
    background-color: var(--gh-white);
    border-radius: 4px;
    padding: 36px 32px;
    padding-bottom: 50px;
    height: 100%;
    display: inline-flex;
    justify-content: center;
    flex-direction: column;
}
.gh-difference-icon{
  display: flex;
  align-items: center;
  justify-content: center;
  width: 56px;
  height: 56px;
  background-color: var(--gh-green);
  margin-bottom: 20px;
}
.gh-difference-icon i{
  color: var(--gh-white);
  font-size: 18px;
}

.gh-difference-title{
  font-family: var(--font-body);
  font-weight: 700;
  font-size: 18.8px;
  line-height: 93.2%;
  letter-spacing: 0.02em; /* Figma: 2% tracking */
  text-transform: uppercase;
  color: var(--gh-green);
  margin-bottom: 14px;
}

.gh-difference-card p {
    font-size: 18.4px;
    line-height: 176%;
    color: var(--gh-text);
    margin: 0;
}

/* ---------- Insights & Legal Updates ---------- */
.gh-insights{
  position: relative;
  padding: 130px 0 90px;
  background-color: #001437;

  /* Tilted top edge (same technique as other tilted sections) */
  clip-path: polygon(0 0, 100% 67px, 100% 100%, 0 100%);
  margin-top: -65px;
}

.gh-insights::before{
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 56%;
  height: 48px;
  background-color: var(--gh-dark-green);
  clip-path: polygon(0 0, 100% 39px, 100% 46px, 0 10px);
  z-index: 3;
}

.gh-insights-header{
  text-align: center;
  margin-bottom: 48px;
}
.gh-insights-header .gh-eyebrow{
  margin-bottom: 14px;
}
.gh-insights-header h2{
  color: var(--gh-white);
  margin: 0;
}

/* Featured post */
.gh-insights-featured{
  position: relative;
  display: flex;
  min-height: 400px;
  border-radius: 4px;
  overflow: hidden;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  text-decoration: none;
}



.gh-insights-featured-content{
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-end;
  width: 100%;
  padding: 28px;
}

.gh-insights-tag{
  font-family: var(--font-body);
  font-weight: 600;
  font-size: 11px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--gh-white);
  margin-bottom: 14px;
}

.gh-insights-featured-content h3{
  font-family: var(--font-heading);
  font-weight: 500;
  font-size: 22px;
  line-height: 128%;
  color: var(--gh-white);
  margin-bottom: 12px;
}

.gh-insights-date{
  display: block;
  font-family: var(--font-body);
  font-weight: 400;
  font-size: 14px;
  color: #FFFFFF;
}

.gh-insights-btn{
  margin-top: 20px;
}

/* Article list */
.gh-insights-list{
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.gh-insights-list-item{
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 24px;
  padding: 22px 0;
  border-bottom: 1px solid #319529;
}
.gh-insights-list-item:first-child{
  padding-top: 0;
}
.gh-insights-list-item:last-child{
  border-bottom: none;
}

.gh-insights-list-content h4{
  font-family: var(--font-heading);
  font-weight: 500;
  font-size: 18px;
  line-height: 122%;
  letter-spacing: 0.015em; /* Figma: 1.5% tracking */
  color: var(--gh-white);
  margin-bottom: 8px;
  max-width: 410px;
}

.gh-insights-list-item .gh-insights-date{
  font-size: 14px;
}

.gh-insights-list-readmore{
  font-family: var(--font-body);
  font-weight: 600;
  font-size: 12px;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: var(--gh-white);
  text-decoration: none;
  white-space: nowrap;
  flex-shrink: 0;
  margin-top: 4px;
  transition: color .2s ease;
}
.gh-insights-list-readmore:hover{
  color: var(--gh-green);
  text-decoration: none;
}


/* ---------- Testimonials ---------- */
.gh-testi{
  padding: 100px 0;
  padding-top: 50px;
  padding-bottom: 0;
  background-color: var(--gh-white);
}

.gh-testi-slider {
    /* The 102px drop used to be `bottom: -102px`, a relative offset. A relative offset moves the
       box visually but leaves its space in the flow where it was, so the section never grew to
       cover it and the slider hung 102px below .gh-testi, overlapping whatever came next (the
       cards reached 74px past the section bottom). Measured on the home page 2026-10-19: with
       the offset the first heading of the following section sat 9px under the cards. As a margin
       the slider lands in exactly the same place and the section grows to contain it. */
    position: relative;
    margin-top: 102px;
    z-index: 9;
}

.gh-testi-header{
  text-align: center;
  margin-bottom: 0px;
  position: relative;
  bottom: -50px;
}
.gh-testi-header .gh-eyebrow-green{
  margin-bottom: 14px;
}
.gh-testi-header h2{
  margin: 0;
}

.gh-testi-card{
  background-color: var(--gh-white);
  border-radius: 6px;
  padding: 32px 28px;
  margin: 0 12px;
  box-shadow: 0px 8px 12px rgba(19, 46, 91, 0.08);
  display: flex;
  flex-direction: column;
  border: 1px solid #80808021;
  /* height set to match the tallest visible card by equalizeCardHeights() */
}

.gh-testi-quote{
  width: 28px;
  height: auto;
  margin-bottom: 16px;
}

.gh-testi .slick-track
{
  padding: 28px 0px;
}

.gh-testi-text{
  font-family: var(--font-body);
  font-weight: 400;
  font-size: 18px;
  line-height: 160%;
  color: var(--gh-text);
  margin-bottom: 24px;
  flex-grow: 1;
}

.gh-testi-author{
  display: flex;
  flex-direction: column;
  margin-bottom: 16px;
}
.gh-testi-name{
  font-family: var(--font-body);
  font-weight: 700;
  font-size: 16px;
  color: var(--gh-green);
}
.gh-testi-location{
  font-family: var(--font-body);
  font-weight: 400;
  font-size: 12.51px;
  color: var(--gh-text);
}

.gh-testi-rating{
  display: flex;
  align-items: center;
  gap: 8px;
}
.gh-testi-stars{
  color: var(--gh-green);
  font-size: 15px;
  letter-spacing: 1px;
}
.gh-testi-score{
  font-family: var(--font-body);
  font-weight: 600;
  font-size: 14px;
  color: var(--gh-dark-blue);
  margin-right: auto;
}
.gh-testi-google{
  width: 18px;
  height: 18px;
}


/* ---------- Contact / Free Consultation ---------- */
.gh-contact{
  position: relative;
  padding: 110px 0;
  padding-top: 200px;
  background-image:
    linear-gradient(rgb(255 255 255 / 0%), rgb(255 255 255 / 0%)), url(/wp-content/uploads/2026/09/contact-bg.jpg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.gh-contact-eyebrow{
  font-family: var(--font-body);
  font-weight: 600;
  font-size: 14px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--gh-green);
  margin-bottom: 14px;
}

.gh-contact h2{
  margin-bottom: 20px;
}

.gh-contact-text{
  font-family: var(--font-body);
  font-weight: 400;
  font-size: 16px;
  line-height: 160%;
  color: var(--gh-dark-blue);
  margin-bottom: 32px;
}

.gh-contact-avail{
  font-family: var(--font-body);
  font-weight: 600;
  font-size: 12px;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--gh-dark-blue);
  margin-bottom: 8px;
}

.gh-contact-phone{
  display: block;
  font-family: "Noto Sans Arabic", var(--font-body), sans-serif;
  font-weight: 600;
  font-size: 30.41px;
  line-height: 120%;
  color: var(--gh-green);
  text-decoration: none;
}
.gh-contact-phone:hover{
  text-decoration: none;
  opacity: 0.85;
}

/* Form */
.gh-contact-field{
  margin-bottom: 22px;
}
.gh-contact-field label{
  display: block;
  font-family: var(--font-body);
  font-weight: 500;
  font-size: 14px;
  color: var(--gh-dark-blue);
  margin-bottom: 8px;
}
.gh-contact-field input,
.gh-contact-field textarea{
  width: 100%;
  background-color: var(--gh-white);
  border: 1px solid rgba(19,46,91,0.2);
  border-radius: 4px;
  padding: 8px 14px;
  font-family: var(--font-body);
  font-size: 14px;
  color: var(--gh-dark-blue);
}
.gh-contact-field input:focus,
.gh-contact-field textarea:focus{
  outline: none;
  border-color: var(--gh-green);
}
.gh-contact-field textarea{
  resize: vertical;
}

.gh-contact-consent{
  display: flex;
  align-items: flex-start;
  gap: 10px;
  margin-bottom: 24px;
}
.gh-contact-consent input[type="checkbox"]{
  margin-top: 4px;
  width: 15px;
  height: 15px;
  flex-shrink: 0;
  accent-color: var(--gh-green);
}
.gh-contact-consent label{
  font-family: var(--font-body);
  font-weight: 400;
  font-size: 12px;
  line-height: 150%;
  color: #032A6C;
}

.gh-contact-submit{
  display: block;
  width: 100%;
  background-color: var(--gh-green);
  color: var(--gh-white);
  font-family: var(--font-body);
  font-weight: 600;
  font-size: 14px;
  letter-spacing: 0.05em;
  border: none;
  border-radius: 4px;
  padding: 1rem 1.5rem;
  text-decoration: none;
  transition: background-color .2s ease;
}
.gh-contact-submit:hover{
  background-color: #277a20;
}



/* ---------- Footer ---------- */
.gh-footer{
  background-color: #001437;
  padding: 80px 0 0;
}

.gh-footer-logo{
  /* display:block so the 22px margin applies: the paragraph that used to force the line break
     below the logo moved into the site-wide disclaimer band on 2026-10-23. */
  display: block;
  height: 38px;
  width: auto;
  margin-bottom: 22px;
}

.gh-footer-text{
  font-family: var(--font-body);
  font-weight: 400;
  font-size: 14px;
  line-height: 160%;
  color: rgba(255,255,255,0.65);
  max-width: 320px;
  margin-bottom: 20px;
}

.gh-footer-phone{
  display: inline-block;
  font-family: "Noto Sans Arabic", var(--font-body), sans-serif;
  font-weight: 600;
  font-size: 22px;
  color: var(--gh-green);
  text-decoration: none;
}
.gh-footer-phone:hover{
  text-decoration: none;
  opacity: 0.85;
}

.gh-footer-heading{
  font-family: var(--font-body);
  font-weight: 700;
  font-size: 14px;
  letter-spacing: 1.68px;
  text-transform: uppercase;
  color: var(--gh-white);
  margin-bottom: 20px;
}

.gh-footer-list{
  list-style: none;
  margin: 0;
  padding: 0;
}
.gh-footer-list li{
  margin-bottom: 13px;
}
.gh-footer-list li:last-child{
  margin-bottom: 0;
}
.gh-footer-list a{
  font-family: var(--font-body);
  font-weight: 400;
  font-size: 14px;
  color: rgba(255,255,255,0.85);
  text-decoration: none;
  transition: color .2s ease;
}
.gh-footer-list a:hover{
  color: var(--gh-green);
  text-decoration: none;
}

.gh-footer-map{
  display: block;
  border-radius: 4px;
  overflow: hidden;
  line-height: 0;
}
.gh-footer-map img{
  width: 100%;
  height: auto;
  display: block;
}

.footer_bottom
{
  margin-top: 56px;
  border-top: 1px solid rgba(255,255,255,0.12);
  background-color: #142545;
}

.gh-footer-bottom{
  padding: 10px 0;
  
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 16px;
  
}
footer .gh-map-iframe
{
  min-height: 200px;
    height: 200px;
    border-radius: 5px;
}
.gh-footer-copy{
  font-family: var(--font-body);
  font-weight: 400;
  font-size: 13px;
  color: rgba(255,255,255,0.6);
  margin: 0;
}
.gh-footer-copy a{
  color: rgba(255,255,255,0.6);
  text-decoration: none;
}
.gh-footer-copy a:hover{
  color: var(--gh-white);
  text-decoration: underline;
}

.gh-footer-social{
  display: flex;
  gap: 10px;
}
.gh-footer-social a{
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  color: #319529;
  border-radius: 4px;
  font-size: 14px;
  text-decoration: none;
  transition: opacity .2s ease;
}
.gh-footer-social a:hover{
  opacity: 0.8;
}

@media (max-width: 991.98px){
  .gh-hero h1{ font-size: 56px; letter-spacing: -1.6px; }
  .gh-hero{ min-height: 600px; padding-top: 100px; }
  .gh-whoweare{ padding: 60px 0; }
  .gh-whoweare-row + .gh-whoweare-row{ margin-top: 32px; }
  .gh-whoweare-row .col-lg-6:first-child{ margin-bottom: 24px; }

  .gh-practice-header{ flex-direction: column; }
  .gh-practice-nav{ margin-top: 24px; }

  .gh-outcomes-header{ flex-direction: column; }
  .gh-outcomes-header .btn-gh-primary{ align-self: flex-start; }

  .gh-cases-header{ flex-direction: column; align-items: flex-start; gap: 20px; }

  .gh-whychoose{ padding: 90px 0 70px; }
  .gh-whychoose-text-label{ font-size: 19px; }
  .gh-whychoose-content i{ font-size: 26px; }

  .gh-team{ padding: 70px 0; }
  .gh-team-header{ margin-bottom: 36px; }

  .gh-difference{ padding: 90px 0 70px; }

  .gh-insights{ padding: 90px 0 70px; }
  .gh-insights-featured{ min-height: 320px; }
  .gh-insights-list{ margin-top: 8px; }

  .gh-contact{ padding: 70px 0; }
  .gh-contact-phone{ font-size: 26px; }


  .gh-footer{ padding-top: 56px; }
  .gh-footer-bottom{ justify-content: center; text-align: center; }
}
@media (max-width: 575.98px){
  .gh-hero h1{ font-size: 40px; letter-spacing: -1px; }
  .gh-hero-content{ padding-bottom: 50px; }
  .gh-stat-number{ font-size: 56px; }
  .gh-logos-row{ gap: 28px; }
  .gh-logos-row img{ height: 42px; }

  .gh-practice{ padding: 60px 0 70px; }

  .gh-cases{ padding: 60px 0; }

  .gh-whychoose-text-label{ font-size: 16px; }

  .gh-team-photo{ min-height: 260px; }

  .gh-insights-list-item{ flex-direction: column; gap: 10px; }

  .gh-testi{ padding: 60px 0; }

  .gh-whychoose-tile
  {
    min-height: auto;
  }
}



/*Our firm page */

/* ---------- Our Firm — page banner ---------- */
.gh-firm-hero{
    position: relative;
    min-height: 500px;
    display: flex;
    align-items: center;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    padding-top: 100px;
    padding-bottom: 56px;
}

/* Light blue brand overlay — solid-ish at the bottom, fading to
   transparent toward the top so the photo shows through up top */
.gh-firm-hero-overlay{
  position: absolute;
  inset: 0;
  background: linear-gradient(
    0deg,
    rgba(var(--gh-dark-blue-rgb), 0.95) 0%,
    rgba(var(--gh-dark-blue-rgb), 0.55) 45%,
    rgba(var(--gh-dark-blue-rgb), 0.05) 100%
  );
}

.gh-firm-hero-content{
  position: relative;
  z-index: 1;
  max-width: 765px;
}

.gh-firm-hero .gh-eyebrow{
  margin-bottom: 14px;
  color: #47CB3C !important;
}

.gh-firm-hero-title{
  font-family: "Noto Sans Arabic", var(--font-body), sans-serif;
  font-weight: 400;
  font-size: 62px;
  line-height: 112%;
  color: var(--gh-white);
  margin-bottom: 18px;
  max-width: 650px;
  letter-spacing: 2%;
}

.gh-firm-hero-text{
  font-family: var(--font-body);
  font-weight: 400;
  font-size: 18px;
  line-height: 160%;
  color: rgba(255,255,255,0.85);
  max-width: 650px;
  margin: 0;
}



/* ---------- Our Story ---------- */
.gh-story{
  padding: 100px 0;
  background-color: var(--gh-white);
}

.gh-story-row + .gh-story-row{
  margin-top: 56px;
}

/* Photo (single image) */
.gh-story-img{
  width: 100%;
  height: auto;
  border-radius: 4px;
  display: block;
}

/* Heading + copy */
.gh-story h2{
  margin: 0;
      max-width: 475px;
    margin-left: auto;
}
.gh-story h2 .highlight{
  color: var(--gh-green);
}

.gh-story-text{
  font-family: var(--font-body);
  font-weight: 400;
  font-size: 16px;
  line-height: 160%;
  color: var(--gh-text);
  margin-bottom: 18px;
}
.gh-story-text:last-child{
  margin-bottom: 0;
}

/* Quote note */
.gh-story-quote{
  font-family: var(--font-heading);
  font-weight: 400;
  font-size: 28px;
  line-height: 35px; /* 125% */
  letter-spacing: 0;
  color: var(--gh-dark-blue);
  border-left: 3px solid var(--gh-green);
  padding-left: 22px;
  margin: 0;
  margin-top: 38px;
}
.gh-story-quote .highlight{
  color: var(--gh-green);
}

/* Stat cards */
.gh-story-stat {
    background-color: rgba(49, 149, 41, 0.12);
    border-radius: 4px;
    padding: 25px 45px;
    padding-top: 0;
    display: flex;
    flex-direction: column;
    gap: 6px;
    height: 100%;
    min-height: 206px;
    justify-content: center;
}
.gh-story-stat-num{
  font-family: var(--font-heading);
  font-weight: 400;
  font-size: 52px;
  line-height: 60px; /* 115% */
  letter-spacing: -2.02px;
  color: var(--gh-green);
}
.gh-story-stat-label{
      font-family: var(--font-body);
    font-weight: 300;
    font-size: 26px;
    color: var(--gh-dark-blue);
    letter-spacing: 0px;
    line-height: 25px;
}



/* ---------- Mission & Values ---------- */
.gh-mission{
  position: relative;
  padding: 130px 0 90px;
  background-color: #001437;

  /* Tilted top edge (same technique as other tilted sections) */
  clip-path: polygon(0 0, 100% 33px, 100% 100%, 0 100%);
  padding-bottom: 0;
  overflow: hidden;
}

.gh-mission::before{
  content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 56%;
    height: 28px;
    background-color: var(--gh-dark-green);
    clip-path: polygon(0 0, 100% 18px, 100% 28px, 0 10px);
    z-index: 3;
}

.gh-mission-header{
  margin-bottom: 70px;
      max-width: 620px;
}
.gh-mission-header .gh-eyebrow{
  margin-bottom: 14px;
}
.gh-mission-header h2{
  color: var(--gh-white);
  margin: 0;
  max-width: 720px;
}
.gh-mission-header h2 .highlight{
  color: var(--gh-green);
}

/* Left: Our Mission */
.gh-mission-text{
  font-family: var(--font-body);
  font-weight: 400;
  font-size: 15px;
  line-height: 160%;
  color: #A9AEBA;
  margin-bottom: 24px;
  max-width: 277px;
}

.gh-mission-photo{
  width: 100%;
  height: auto;
  border-radius: 4px;
  display: block;
  min-width: 548px;
  position: relative;
  left: -142px;
}

/* Right: Core Values panel */
.gh-values-panel{
  background-color: #0A1D3F;
  padding: 65px;
  padding-bottom: 40px;
  height: 100%;
  position: relative;
  /*position: absolute;
  width: 100%;
      top: 32%;*/
}

.gh-values-panel::after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 100%;
    width: calc((100vw - 100%) / 2);
    background: #0A1D3F;
}

.gh-values-panel-content
{
  max-width: 670px;
}
.gh-values-panel .gh-eyebrow-green{
  margin-bottom: 55px;
}

.gh-value-item {
    display: flex;
    flex-direction: column;
    max-width: 282px;
    margin-bottom: 30px;
}

.gh-value-icon{
  display: flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  margin-bottom: 16px;
}
.gh-value-icon img{
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.gh-value-item h3{
  font-family: var(--font-heading);
  font-weight: 600;
  font-size: 18px;
  line-height: 130%;
  color: var(--gh-white);
  margin-bottom: 10px;
}

.gh-value-item p{
  font-family: var(--font-body);
  font-weight: 400;
  font-size: 15px;
  line-height: 160%;
  color: #A9AEBA;
  margin: 0;
}

.gh-eyebrow.white {
    color: #ffffff;
}

.mission_bio_col
{
  display: flex;
  flex-direction: column;
  justify-content: end;
}


/* ---------- Why Clients Trust Us ---------- */
.gh-trust{
  padding: 100px 0;
  background-color: var(--gh-white);
}

.gh-trust h2{
  margin-bottom: 16px;
}
.gh-trust h2 .highlight{
  color: var(--gh-green);
}

.gh-trust-intro{
  font-family: var(--font-body);
  font-weight: 400;
  font-size: 16px;
  line-height: 142%;
  letter-spacing: 0.01em; /* Figma: 1% tracking */
  color: var(--gh-text);
  margin-bottom: 28px;
}

.gh-trust-list{
  list-style: none;
  margin: 0;
  padding: 0;
}
.gh-trust-list li{
  display: flex;
  align-items: center;
  gap: 12px;
  font-family: var(--font-body);
  font-weight: 400;
  font-size: 18px;
  line-height: 26px; /* 144% */
  letter-spacing: -0.08px;
  color: var(--gh-dark-blue);
  margin-bottom: 14px;
}
.gh-trust-list li:last-child{
  margin-bottom: 0;
}

.gh-trust-check{
  display: flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  flex-shrink: 0;
  background-color: var(--gh-green);
  border-radius: 3px;
}
.gh-trust-check i{
  color: var(--gh-white);
  font-size: 11px;
}

.gh-trust-img{
  width: 100%;
  height: auto;
  border-radius: 4px;
  display: block;
}


/* ---------- Legal Support CTA ---------- */
.gh-legal-cta{
  padding: 70px 0;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.gh-legal-cta-content{
  text-align: center;
  max-width: 560px;
  margin: 0 auto;
}

.gh-legal-cta-content .gh-eyebrow-green{
  margin-bottom: 12px;
}

.gh-legal-cta-content h2{
  margin-bottom: 24px;
  line-height: 122%;
}
.gh-legal-cta-content h2 .highlight{
  color: var(--gh-green);
}




@media (max-width: 991.98px){
  .gh-firm-hero{ min-height: 340px; padding-top: 80px; padding-bottom: 40px; }
  .gh-firm-hero-title{ font-size: 42px; }

  .gh-story{ padding: 70px 0; }
  .gh-story-row + .gh-story-row{ margin-top: 36px; }
  .gh-story-images{ margin-bottom: 20px; }

  .gh-mission{ padding: 90px 0 70px; }
  .gh-values-panel{ padding: 32px 28px; }

  .gh-trust{ padding: 70px 0; }

  .gh-values-panel
  {
    position: relative;
  }
}
@media (max-width: 768px)
{
  .gh-mission-photo
  {
    min-width: auto;
    left: 0px;
  }
}

@media (max-width: 575.98px){
  .gh-firm-hero-title{ font-size: 32px; }
  .gh-firm-hero-text{ font-size: 16px; }

  .gh-story-stat-num{ font-size: 36px; line-height: 42px; }
  .gh-story-quote{ font-size: 22px; line-height: 30px; }

  .gh-legal-cta{ padding: 50px 0; }

}


/* ---------- Contact Us — page ---------- */

/* ---------- Contact Us — page banner ---------- */
.gh-contact-hero{
  position: relative;
  min-height: 340px;
  display: flex;
  align-items: center;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

/* Overlay — darker on the left where the text sits, fading toward
   the right so more of the photo shows through */
.gh-contact-hero-overlay{
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgb(19 46 91 / 0%) 0%, rgb(19 46 91 / 0%) 55%, rgba(var(--gh-dark-blue-rgb), 0.15) 100%);
}

.gh-contact-hero-content{
  position: relative;
  z-index: 1;
}

.gh-contact-hero-title{
  font-family: "Noto Sans Arabic", var(--font-body), sans-serif;
  font-weight: 400;
  font-size: 62px;
  line-height: 96%;
  letter-spacing: 0.02em; /* Figma: 2% tracking */
  color: var(--gh-white);
  margin: 0;
}



/* ---------- Let's Talk About Your Case (Contact page) ---------- */
.gh-contact-page{
  padding: 100px 0;
  background-color: var(--gh-white);
}

.gh-contact-page span.wpcf7-spinner {
    position: absolute;
}

.gh-contact-page h2{
  margin-bottom: 20px;
  font-weight: 400;
}
.gh-contact-page h2 .highlight{
  color: var(--gh-green);
}

.gh-contact-page-text{
  font-family: var(--font-body);
  font-weight: 400;
  font-size: 16px;
  line-height: 160%;
  color: var(--gh-text);
  margin-bottom: 28px;
  max-width: 418px;
}

.gh-contact-page-list{
  list-style: none;
  margin: 0 0 40px;
  padding: 0;
}
.gh-contact-page-list li{
  display: flex;
  align-items: center;
  gap: 12px;
  font-family: var(--font-body);
  font-weight: 400;
  font-size: 18px;
  color: var(--gh-dark-blue);
  margin-bottom: 14px;
}
.gh-contact-page-list li:last-child{
  margin-bottom: 0;
}
.gh-contact-page-check{
  display: flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  flex-shrink: 0;
  background-color: var(--gh-green);
}
.gh-contact-page-check i{
  color: var(--gh-white);
  font-size: 11px;
}

/* Info grid */
.gh-contact-page-info{
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0;
  max-width: 510px;
}
.gh-contact-page-info-item{
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 20px 24px 20px 24px;
}
.gh-contact-page-info-item:nth-child(1),
.gh-contact-page-info-item:nth-child(2){
  border-bottom: 1px solid #31952961;
}
.gh-contact-page-info-item:nth-child(odd){
  border-right: 1px solid #31952961;
}
.gh-contact-page-info-item:nth-child(1),
.gh-contact-page-info-item:nth-child(3){
  padding-left: 0;
}

.gh-contact-page-info-icon{
  width: 24px;
  height: 24px;
  object-fit: contain;
  margin-top: 2px;
}

.gh-contact-page-info-label{
  display: block;
  font-family: var(--font-body);
  font-weight: 600;
  font-size: 16px;
  color: var(--gh-green);
  margin-bottom: 4px;
}

.gh-contact-page-info-value,
a.gh-contact-page-info-value{
  display: block;
  font-family: var(--font-body);
  font-size: 18px;
  line-height: 140%;
  color: var(--gh-dark-blue);
  text-decoration: none;
}

.gh-contact-page-social-links a{
  color: var(--gh-dark-blue);
  text-decoration: underline;
  margin-right: 10px;
}
.gh-contact-page-social-links a:last-child{
  margin-right: 0;
}

/* ---------- Contact Form 7 styling ---------- */
.gh-contact-page-form-wrap{
  background-color: #E6F2E5;
  border-radius: 4px;
  padding: 40px;
}

.gh-contact-page-form-wrap .wpcf7-form p{
  margin-bottom: 10px;
}

.gh-contact-page-form-wrap .wpcf7-form label{
  display: block;
  font-family: var(--font-body);
  font-weight: 500;
  font-size: 16px;
  color: var(--gh-dark-blue);
  margin-bottom: 8px;
}

.gh-contact-page-form-wrap .wpcf7-form-control{
  width: 100%;
  background-color: var(--gh-white);
  border: 1px solid rgba(19,46,91,0.15);
  border-radius: 4px;
  padding: 5px 14px;
  font-family: var(--font-body);
  font-size: 14px;
  color: var(--gh-dark-blue);
}
.gh-contact-page-form-wrap textarea.wpcf7-form-control{
  min-height: 130px;
  resize: vertical;
}
.gh-contact-page-form-wrap .wpcf7-form-control:focus{
  outline: none;
  border-color: var(--gh-green);
}

/* Acceptance checkbox */
.gh-contact-page-form-wrap .wpcf7-acceptance {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    background: transparent;
    border: none;
    padding: 0;
    line-height: 137%;
    letter-spacing: 1%;
    font-size: 12px;
    color: var(--gh-dark-blue);
}
.gh-contact-page-form-wrap .wpcf7-acceptance .wpcf7-list-item{
  margin: 0;
}
.gh-contact-page-form-wrap .wpcf7-acceptance input[type="checkbox"]{
  margin-top: 4px;
  width: 15px;
  height: 15px;
  flex-shrink: 0;
  accent-color: var(--gh-green);
  position: relative;
    top: 3px;
}
.gh-contact-page-form-wrap .wpcf7-acceptance .wpcf7-list-item-label{
  font-family: var(--font-body);
  font-weight: 400;
  font-size: 12px;
  line-height: 150%;
  color: #032A6C;
  line-height: 137%;
  margin-left: 32px;
    display: inline-flex;
    position: relative;
    top: -16px;
}

/* Submit button */
.gh-contact-page-form-wrap .wpcf7-submit{
  display: block;
  width: 100%;
  background: linear-gradient(73deg, var(--gh-green) 0%, #24731d 100%);
  color: var(--gh-white);
  font-family: var(--font-body);
  font-weight: 600;
  font-size: 14px;
  letter-spacing: 0.05em;
  border: none;
  border-radius: 4px;
  padding: 1rem 1.5rem;
  cursor: pointer;
  transition: opacity .2s ease;
}
.gh-contact-page-form-wrap .wpcf7-submit:hover{
  opacity: 0.9;
}

/* CF7 validation/response styling so it doesn't look broken against the green card */
.gh-contact-page-form-wrap .wpcf7-not-valid-tip{
  font-size: 12px;
  color: #c0392b;
  margin-top: 4px;
}
.gh-contact-page-form-wrap .wpcf7-response-output{
  margin-top: 20px;
  border-radius: 4px;
  font-size: 13px;
}



/* ---------- Map ---------- */
.gh-map{
  width: 100%;
  line-height: 0; /* removes the small inline-element gap under the iframe */
}

.gh-map-iframe{
  display: block;
  width: 100%;
  min-height: 575px;
  height: 575px;
  border: 0;
}




@media (max-width: 991.98px){
  .gh-contact-hero{ min-height: 180px; }
  .gh-contact-hero-title{ font-size: 44px; }

  .gh-contact-page{ padding: 70px 0; }
  .gh-contact-page-info{ grid-template-columns: 1fr; }
  .gh-contact-page-info-item:nth-child(odd){ border-right: none; }
  .gh-contact-page-info-item:nth-child(1),
  .gh-contact-page-info-item:nth-child(2),
  .gh-contact-page-info-item:nth-child(3){ border-bottom: 1px solid var(--gh-border); }
  .gh-contact-page-form-wrap{ padding: 28px; }

  .gh-contact-page-info-item
  {
    padding-left: 0px!important;
  }
}
@media (max-width: 575.98px){
  .gh-contact-hero-title{ font-size: 34px; }

  .gh-map-iframe{
    min-height: 400px;
    height: 400px;
  }
}


/* ---------- Case Study — page hero ---------- */
.gh-case-hero{
  position: relative; /* required so the ::after positions relative to this section */
  background-color: var(--gh-dark-blue);
  padding: 60px 0 50px;
}

.gh-case-hero::after {
    content: "";
    position: absolute;
    bottom: -178px;
    left: 0;
    width: 100%;
    height: 200px;
    background-color: var(--gh-dark-blue);
}

.gh-page-hero-title{
  font-family: "Noto Sans Arabic", var(--font-body), sans-serif;
  font-weight: 400;
  font-size: 62px;
  line-height: 100%;
  color: var(--gh-white);
  margin: 0;
}

.gh-case-slide-img {
    height: 100%;
}

/* ---------- Case Study slider ---------- */

.gh-case-slide-content {
        background: #E6F2E5;
    padding: 80px 50px;
    padding-top: 50px;
    padding-bottom: 100px;
    position: relative;
}

.gh-case-slider-section{
  padding: 0 0 100px;
  padding-bottom: 0px;
}

.gh-case-row{
  align-items: stretch;
}

/* Static image column */
.gh-case-image{
  height: 100%;
  min-height: 420px;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

/* Green panel column — houses the slider */
.gh-case-panel{
  background-color: #E6F2E5;
  height: 100%;
  padding: 48px 56px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.gh-case-slider{
  width: 100%;
}

.gh-case-eyebrow{
  font-family: var(--font-body);
  font-weight: 700;
  font-size: 12px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--gh-dark-blue);
  margin-bottom: 14px;
}

.gh-case-amount{
  font-family: "Noto Sans Arabic", var(--font-body), sans-serif;
  font-weight: 400;
  font-size: 52px;
  line-height: 93.2%;
  letter-spacing: 0.02em; /* Figma: 2% tracking */
  color: var(--gh-green);
  margin-bottom: 6px;
}

.gh-case-title{
  font-family: "Noto Sans Arabic", var(--font-body), sans-serif;
  font-weight: 400;
  font-size: 38px;
  line-height: 93.2%;
  letter-spacing: 0.02em; /* Figma: 2% tracking */
  color: var(--gh-dark-blue);
  margin-bottom: 18px;
}

.gh-case-text{
  font-family: var(--font-body);
  font-weight: 400;
  font-size: 16px;
  line-height: 142%;
  letter-spacing: 0.01em; /* Figma: 1% tracking */
  color: var(--gh-text);
  margin-bottom: 28px;
  max-width: 440px;
}

.gh-case-btn{
  display: inline-flex;
  align-items: center;
  gap: 8px;
  width: fit-content;
  border: 1px solid var(--gh-dark-blue);
  color: var(--gh-dark-blue);
  font-family: var(--font-body);
  font-weight: 500;
  font-size: 12px;
  line-height: 155%;
  letter-spacing: 1.68px;
  text-transform: uppercase;
  padding: 0.7rem 1.3rem;
  text-decoration: none;
  transition: all .2s ease;
  height: 58px;
  width: 171px;
  display: inline-flex;
    justify-content: center;
}
.gh-case-btn:hover{
  background-color: var(--gh-dark-blue);
  color: var(--gh-white);
  text-decoration: none;
}

/* Dots — sit directly below the button, left-aligned inside the panel */
.gh-case-dots-wrap {
    display: flex;
    justify-content: flex-start;
    margin-top: 38px;
    position: absolute;
    z-index: 99999999;
    width: 319px;
}
.gh-case-dots{
  display: flex;
  align-items: center;
  gap: 6px;
  list-style: none;
  margin: 0;
  padding: 0;
}
.gh-case-dots li button{
  display: block;
  width: 14px;
  height: 4px;
  padding: 0;
  border: none;
  border-radius: 2px;
  background-color: #D9D9D9;
  font-size: 0;
  color: transparent;
  cursor: pointer;
  transition: all .2s ease;
}
.gh-case-dots li.slick-active button{
  width: 50px;
  background-color: var(--gh-green);
}



/* ---------- Case Study Results Grid ---------- */
.gh-case-results{
  padding: 60px 0 100px;
  padding-bottom: 40px;
  background-color: var(--gh-white);
}

.gh-case-browse-label {
    font-family: var(--font-body);
    font-weight: 600;
    font-size: 18px;
    color: #132E5B;
    margin-bottom: 16px;
}

/* Filter pills */
.gh-case-filters{
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 40px;
}
.gh-case-filter {
    display: inline-block;
    background-color: #E6F2E5;
    color: var(--gh-green);
    font-family: var(--font-body);
    font-weight: 500;
    font-size: 16px;
    padding: 12px 28px;
    text-decoration: none;
    transition: all .2s ease;
}
.gh-case-filter:hover{
  background-color: #d4e9d2;
  color: var(--gh-dark-blue);
  text-decoration: none;
}
.gh-case-filter.active{
  background-color: var(--gh-green);
  color: var(--gh-white);
}

/* Card — fixed total height, so the card's own box never changes size
   on hover (this is what stops the grid below it from shifting) */
.gh-case-grid-card{
  position: relative;
  display: block;
  height: 520px;
  overflow: hidden;      /* clips anything outside the fixed card box */
  text-decoration: none;
}
.gh-case-grid-card:hover{
  text-decoration: none;
}

/* Image — pinned to the top, fixed height, sits behind the body panel */
.gh-case-grid-img{
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 225px;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  z-index: 1;
}

.gh-case-grid-badge{
  position: absolute;
  top: 14px;
  left: 14px;
  background-color: #ffffff;
  color: var(--gh-dark-blue);
  font-family: var(--font-body);
  font-weight: 600;
  font-size: 11px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  padding: 5px 10px;
  border-radius: 2px;
  z-index: 2;
  transition: background-color .25s ease, padding .25s ease;
}

/* Body panel — absolutely positioned, height determined by its own
   content (including the button). At rest, `bottom: -60px` tucks the
   button below the card's clipped edge so it's hidden. On hover,
   `bottom: 0` slides the whole panel up into view — since it grows
   upward from a fixed bottom anchor, it naturally overlaps further
   onto the image instead of pushing the card taller. */
.gh-case-grid-body{
  position: absolute;
  left: 0;
  right: 0;
  bottom: -43px;
  background-color: #E6F2E5;
  padding: 24px;
  z-index: 3;
  transition: bottom .3s ease, background-color .3s ease;
  display: flex;
  flex-direction: column;
  gap: 15px;
  min-height: 342px;
}

.gh-case-grid-amount{
  font-family: "Noto Sans Arabic", var(--font-body), sans-serif;
  font-weight: 400;
  font-size: 36px;
  line-height: 110%;
  letter-spacing: 0.02em; /* Figma: 2% tracking */
  color: var(--gh-green);
  margin-bottom: 8px;
}

.gh-case-grid-title{
  font-family: "Noto Sans Arabic", var(--font-body), sans-serif;
  font-weight: 400;
  font-size: 24px;
  line-height: 110%;
  letter-spacing: 0.02em; /* Figma: 2% tracking */
  color: var(--gh-dark-blue);
  margin-bottom: 10px;
  transition: color .25s ease;
}

.gh-case-grid-desc{
  font-family: var(--font-body);
  font-weight: 400;
  font-size: 16px;
  line-height: 142%;
  letter-spacing: 0.01em; /* Figma: 1% tracking */
  color: var(--gh-dark-blue);
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  margin-bottom: 16px;
  transition: color .25s ease;
}

.gh-case-grid-btn{
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background-color: var(--gh-green);
  color: var(--gh-white);
  font-family: var(--font-body);
  font-weight: 600;
  font-size: 12px;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  padding: 0.65rem 1.2rem;
  opacity: 0;
  transition: bottom .3s ease, background-color .3s ease;
  height: 56px;
  display: inline-flex;
    justify-content: center;
    max-width: 170px;
}

/* ---------- Hover state ---------- */
.gh-case-grid-card:hover .gh-case-grid-body{
  bottom: 0;
  background-color: var(--gh-dark-blue);
  box-shadow: 0 -10px 24px rgba(0,0,0,0.15);
}
.gh-case-grid-card:hover .gh-case-grid-title{
  color: var(--gh-white);
}
.gh-case-grid-card:hover .gh-case-grid-desc{
  color: rgba(255,255,255,0.8);
}
.gh-case-grid-card:hover .gh-case-grid-badge{
  background-color: var(--gh-dark-blue);
  color: #ffffff;
}
.gh-case-grid-card:hover .gh-case-grid-btn
{
  opacity: 1;
}


/* ===== Case Study Drawer ===== */

.gh-case-modal-overlay {
    position: fixed;
    inset: 0;
    background: rgba(20, 20, 20, 0.55);
    z-index: 9999;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease;
}
.gh-case-modal-overlay.is-open {
    opacity: 1;
    visibility: visible;
}
body.gh-modal-lock {
    overflow: hidden;
}

.gh-case-modal {
    position: absolute;
    top: 0;
    right: 0;
    height: 100%;
    width: 100%;
    max-width: 640px;
    background: #fff;
    transform: translateX(100%);
    transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1);
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
}
.gh-case-modal-overlay.is-open .gh-case-modal {
    transform: translateX(0);
}

.gh-case-modal-close {
    position: absolute;
    top: 18px;
    left: 18px;
    width: 40px;
    height: 40px;
    border: none;
    background: rgba(255, 255, 255, 0.9);
    color: #1c1c1c;
    font-size: 26px;
    line-height: 1;
    cursor: pointer;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: center;
}
.gh-case-modal-close:hover {
    background: #fff;
}

.gh-case-modal-image {
    width: 100%;
    height: 260px;
    background-size: cover;
    background-position: center;
    background-color: #e4e4e4;
}

.gh-case-modal-body {
    padding: 32px 40px 56px;
}

.gh-case-modal-category {
    color: #2c9827;
    font-size: 14px;
    font-weight: 600;
    margin: 0 0 10px;
}

.gh-case-modal-title {
    font-family: Georgia, 'Iowan Old Style', 'Times New Roman', serif;
    font-size: 30px;
    line-height: 1.25;
    color: #1c1c1c;
    margin: 0 0 24px;
    max-width: 26ch;
}

.gh-case-modal-amount {
    display: flex;
    align-items: baseline;
    gap: 10px;
    padding: 20px 0;
    margin-bottom: 24px;
    border-top: 1px solid #e4e4e4;
    border-bottom: 1px solid #e4e4e4;
}
.gh-case-modal-amount-figure {
    font-size: 32px;
    font-weight: 700;
    color: #2c9827;
}
.gh-case-modal-amount-label {
    font-size: 14px;
    color: #6b6b6b;
}

.gh-case-modal-content {
    max-width: 62ch;
    font-size: 16px;
    line-height: 1.7;
    color: #333;
}
.gh-case-modal-content p {
    margin: 0 0 18px;
}

.gh-case-modal-permalink {
    display: inline-block;
    margin-top: 32px;
    color: #2c9827;
    text-decoration: none;
    font-weight: 600;
}
.gh-case-modal-permalink:hover {
    text-decoration: underline;
}

.gh-case-modal-loading {
    height: 260px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.gh-case-modal-loading::after {
    content: '';
    width: 40px;
    height: 40px;
    border: 4px solid #e4e4e4;
    border-top-color: #2c9827;
    border-radius: 50%;
    animation: gh-spin 0.7s linear infinite;
}

/* Mobile: full-width drawer */
@media (max-width: 767px) {
    .gh-case-modal {
        max-width: 100%;
    }
    .gh-case-modal-body {
        padding: 28px 24px 48px;
    }
    .gh-case-modal-title {
        font-size: 24px;
    }
}


/* =========================================
   Case Study Pagination
========================================= */

.gh-case-pagination {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 38px;
    margin-top: 60px;
    margin-bottom: 40px;
}


/* Previous / Next */

.gh-case-pagination-btn {
    width: 44px;
    height: 44px;
    background: #2c9827;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    transition: background 0.2s ease;
}

.gh-case-pagination-btn:hover {
    background: #237d20;
}

.gh-case-pagination-btn span {
    color: #fff;
    font-size: 35px;
    font-weight: 300;
    line-height: 1;
    position: relative;
    top: -4px;
}

#gh-case-results-wrap {
    position: relative;
    min-height: 200px;
    transition: opacity 0.2s ease;
}
#gh-case-results-wrap.gh-loading {
    opacity: 0.4;
    pointer-events: none;
}
#gh-case-results-wrap.gh-loading::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 40px;
    height: 40px;
    margin: -20px 0 0 -20px;
    border: 4px solid #c7c7c7;
    border-top-color: #2c9827;
    border-radius: 50%;
    animation: gh-spin 0.7s linear infinite;
}
@keyframes gh-spin {
    to { transform: rotate(360deg); }
}


/* Disabled */

.gh-case-pagination-btn.disabled {
    opacity: 0.35;
    pointer-events: none;
}


/* Progress */

.gh-case-pagination-progress {
    display: flex;
    align-items: center;
    gap: 6px;
}

.gh-case-progress-item {
    display: block;
    width: 12px;
    height: 7px;
    background: #c7c7c7;
    transition: all 0.25s ease;
}

/* Current page */
.gh-case-progress-item.active {
    width: 88px;
    background: #2c9827;
}


/* Track */

.gh-case-progress-track {
    width: 118px;
    height: 7px;
    background: #c7c7c7;
    position: relative;
    overflow: hidden;
}


/* Active progress */

.gh-case-progress-active {
    height: 100%;
    background: #2c9827;
    transition: width 0.3s ease;
}


/* Dots */

.gh-case-progress-dots {
    display: flex;
    align-items: center;
    gap: 6px;
}

.gh-case-progress-dot {
    width: 12px;
    height: 7px;
    background: #c7c7c7;
    display: block;
}




/* ---------- Why Clients Choose Us ---------- */
.gh-choose{
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  padding: 90px 0;
}

.gh-choose-card
  {
    border: 1px solid var(--gh-green);
    padding: 32px 28px;
    text-align: center;
    height: 100%;
    gap: 15px;
    min-height: 413px;
    display: flex;
    flex-direction: column;
    justify-content: start;
  }

.gh-choose-icon{
  width: 65px;
  height: 65px;
  object-fit: contain;
  margin: 0 auto 20px;
}

.gh-choose-card h3{
  font-family: "Noto Sans Arabic", var(--font-body), sans-serif;
  font-weight: 400;
  font-size: 32px;
  line-height: 98%;
  letter-spacing: 0.02em; /* Figma: 2% tracking */
  color: var(--gh-white);
  margin-bottom: 18px;
}

.gh-choose-card p{
  font-family: var(--font-body);
  font-weight: 400;
  font-size: 16px;
  line-height: 142%;
  letter-spacing: 0.01em; /* Figma: 1% tracking */
  color: rgba(255,255,255,0.85);
  margin: 0;
}

.gh-choose-card p a{
  color: var(--gh-green);
  text-decoration: underline;
}
.gh-choose-card p a:hover{
  color: var(--gh-white);
}



@media (max-width: 991.98px){
  .gh-case-image{ min-height: 280px; }
  .gh-case-panel{ padding: 36px 32px; }
  .gh-case-amount{ font-size: 40px; }
  .gh-case-title{ font-size: 28px; }

  .gh-case-results{ padding: 40px 0 70px; }
  .gh-case-filters{ gap: 8px; }
  .gh-case-filter{ font-size: 13px; padding: 0.5rem 1rem; }

  .gh-choose{ padding: 60px 0; }
}


.page-template-case-study .gh-contact
{
  padding-top: 100px;
}




/* ---------- Attorney Profile — hero ---------- */
.gh-attorney-hero{
  height: 560px;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  display: flex;
  align-items: flex-start;
  padding-top: 40px;
}

.gh-attorney-breadcrumb{
  display: flex;
  align-items: center;
  gap: 8px;
  font-family: var(--font-body);
  font-weight: 500;
  font-size: 18px;
}
.gh-attorney-breadcrumb a{
  color: var(--gh-white);
  text-decoration: none;
}
.gh-attorney-breadcrumb a:hover{
  color: var(--gh-green);
  text-decoration: none;
}
.gh-attorney-breadcrumb .sep{
  color: rgba(255,255,255,0.5);
}
.gh-attorney-breadcrumb .current{
  color: var(--gh-green);
}

/* ---------- Floating card ---------- */
.gh-attorney-card-section{
  padding-bottom: 60px;
}

.gh-attorney-card{
  position: relative;
  border-radius: 6px;
  box-shadow: 0px 20px 50px rgb(19 46 91 / 8%);
  margin-top: -370px; /* pulls the card up so it overlaps the hero image */
}

/* Photo — transparent wrapper; the dark blue backdrop lives on ::before,
   positioned behind the photo and extending up past the card's own top
   edge, up into the hero banner behind it. */
.gh-attorney-photo-wrap{
  position: relative;
  height: 100%;
  min-height: 380px;
  background-color: transparent;
}
.gh-attorney-photo-wrap::before {
    content: "";
    position: absolute;
    top: 145px;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #ffffff;
    border-radius: 0px 0 0 0;
    z-index: 0;
}
.gh-attorney-photo {
    position: relative;
    z-index: 1;
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: bottom;
    display: block;
}

/* Header row */
.gh-attorney-header{
  padding: 30px 40px 0px;
}

.gh-attorney-title
  {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 10px;
    margin: 0 0 0px;
    line-height: 0;
  }
.gh-attorney-title .name
  {
    font-family: var(--font-heading);
    font-weight: 700;
    font-size: 41px;
    line-height: 110%;
    color: var(--gh-dark-blue);
    letter-spacing: 0%;
  }
.gh-attorney-title .sep
  {
    font-family: var(--font-heading);
    font-weight: 300;
    font-size: 25px;
    color: rgba(19,46,91,0.4);
  }
.gh-attorney-title .role
  {
    font-family: var(--font-heading);
    font-weight: 400;
    font-size: 25px;
    line-height: 110%;
    color: var(--gh-dark-blue);
    letter-spacing: 0%;
  }

.gh-attorney-rating{
  display: flex;
  align-items: center;
  gap: 8px;
}
.gh-attorney-rating .stars{
  color: var(--gh-green);
  font-size: 14px;
  letter-spacing: 1px;
}
.gh-attorney-rating .score{
  font-family: var(--font-body);
  font-weight: 700;
  font-size: 14px;
  color: var(--gh-dark-blue);
}
.gh-attorney-rating .verified{
  font-family: var(--font-body);
  font-weight: 400;
  font-size: 13px;
  color: var(--gh-text);
  margin-bottom: 0;
}

/* Body row */
.gh-attorney-body-row{
  align-items: stretch;
}

.gh-attorney-main{
  padding: 32px 40px 40px;
}

.gh-attorney-bio{
  font-family: var(--font-body);
  font-weight: 400;
  font-size: 15px;
  line-height: 160%;
  color: var(--gh-text);
  margin-bottom: 28px;
}

.gh-attorney-green-heading{
  display: flex;
  align-items: center;
  gap: 10px;
  font-family: var(--font-heading);
  font-weight: 600;
  font-size: 18px;
  color: var(--gh-green);
  margin-bottom: 14px;
}

.gh-attorney-education p{
  font-family: var(--font-body);
  font-weight: 400;
  font-size: 16px;
  line-height: 150%;
  color: var(--gh-dark-blue);
  margin-bottom: 12px;
}
.gh-attorney-education p:last-child{
  margin-bottom: 0;
}
.gh-attorney-education strong{
  font-weight: 700;
}

/* Sidebar */
.gh-attorney-sidebar{
  height: 100%;
  padding: 32px 32px 40px;
  border-left: 1px solid var(--gh-border);
}

.gh-attorney-sidebar-block{
  margin-bottom: 32px;
}
.gh-attorney-sidebar-block:last-child{
  margin-bottom: 0;
}

.gh-attorney-badge{
  display: flex;
  align-items: center;
  justify-content: center;
  width: 26px;
  height: 26px;
  flex-shrink: 0;
  background-color: rgba(49,149,41,0.12);
  border-radius: 50%;
}
.gh-attorney-badge i{
  color: var(--gh-green);
  font-size: 12px;
}

.gh-attorney-list{
  list-style: none;
  margin: 0;
  padding: 0;
  padding-left: 25px;
}
.gh-attorney-list li{
  font-family: var(--font-body);
  font-weight: 400;
  font-size: 14px;
  line-height: 180%;
  color: var(--gh-dark-blue);
  list-style: disc;
}

.gh-attorney-licensed{
  font-family: var(--font-body);
  font-weight: 400;
  font-size: 14px;
  line-height: 160%;
  color: var(--gh-dark-blue);
  margin: 0;
}

@media (max-width: 991.98px){
  .gh-attorney-hero{ height: 320px; }
  .gh-attorney-card{ margin-top: -140px; }
  .gh-attorney-photo-wrap{ min-height: 280px; }
  .gh-attorney-photo-wrap::before{ top: -60px; border-radius: 6px 6px 0 0; }
  .gh-attorney-header{ padding: 32px 28px 20px; }
  .gh-attorney-main{ padding: 24px 28px 32px; }
  .gh-attorney-sidebar{
    border-left: none;
    border-top: 1px solid var(--gh-border);
    padding: 24px 28px 32px;
  }
  .gh-attorney-title .name{ font-size: 30px; }
  .gh-attorney-title .role{ font-size: 20px; }
}




/* ---------- Biography / Results / Review ---------- */
.gh-bio-section
  {
    padding: 0px 0 65px;
    background-color: var(--gh-white);
  }

/* Shared blue headings (26px) */
.gh-bio-heading,
.gh-bio-title{
  font-family: var(--font-heading);
  font-weight: 700;
  font-size: 26px;
  line-height: 120%;
  color: var(--gh-dark-blue);
  margin-bottom: 18px;
}
.gh-bio-content
{
  padding: 28px 24px;
}
/* Sidebar */
.gh-bio-sidebar{
  background-color: #F6F6F6;
  border-radius: 4px;
  padding: 28px 24px;
}

.gh-bio-results{
  margin-bottom: 18px;
}

.gh-bio-result-item {
    background-color: var(--gh-white);
    border-bottom: 1px solid var(--gh-border);
    padding: 16px 18px;
}

.gh-bio-result-item .amount{
  display: block;
  font-family: var(--font-body);
  font-weight: 500;
    font-size: 22px;
  color: var(--gh-green);
  margin-bottom: 4px;
}
.gh-bio-result-item .label{
  display: block;
  font-family: var(--font-body);
  font-weight: 400;
  font-size: 14px;
  color: var(--gh-dark-blue);
}

.gh-bio-view-all{
  display: inline-block;
  font-family: var(--font-body);
  font-weight: 600;
  font-size: 13px;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: var(--gh-green);
  text-decoration: none;
  margin-bottom: 32px;
}
.gh-bio-view-all:hover{
  color: var(--gh-dark-blue);
  text-decoration: none;
}

.gh-bio-review-heading{
  margin-bottom: 16px;
}

/* Review card */
.gh-bio-review-card{
  background-color: var(--gh-white);
  border-radius: 4px;
  padding: 24px 20px;
  box-shadow: 0px 4px 20px rgba(19,46,91,0.08);
}

.gh-bio-review-quote{
  width: 22px;
  height: auto;
  margin-bottom: 12px;
}

.gh-bio-review-text{
  font-family: var(--font-body);
    font-weight: 400;
    font-size: 18px;
    line-height: 176%;
    color: var(--gh-text);
    margin-bottom: 18px;
}

.gh-bio-review-author{
  display: flex;
  flex-direction: column;
  margin-bottom: 14px;
}
.gh-bio-review-author .name{
  font-family: var(--font-body);
  font-weight: 400;
  font-size: 20px;
  color: var(--gh-green);
}
.gh-bio-review-author .location{
  font-family: var(--font-body);
  font-weight: 400;
  font-size: 12px;
  color: var(--gh-text);
}

.gh-bio-review-rating{
  display: flex;
  align-items: center;
  gap: 8px;
}
.gh-bio-review-rating .stars{
  color: var(--gh-green);
  font-size: 14px;
  letter-spacing: 1px;
}
.gh-bio-review-rating .score{
  font-family: var(--font-body);
  font-weight: 600;
  font-size: 13px;
  color: var(--gh-dark-blue);
  margin-right: auto;
}
.gh-bio-review-google{
  width: 16px;
  height: 16px;
}

/* Dots */
.gh-bio-review-dots-wrap{
  display: flex;
  justify-content: center;
  margin-top: 16px;
}
.gh-bio-review-dots{
  display: flex;
  align-items: center;
  gap: 6px;
  list-style: none;
  margin: 0;
  padding: 0;
}
.gh-bio-review-dots li button{
  display: block;
  width: 8px;
  height: 8px;
  padding: 0;
  border: none;
  border-radius: 50%;
  background-color: #D9D9D9;
  font-size: 0;
  color: transparent;
  cursor: pointer;
}
.gh-bio-review-dots li.slick-active button{
  background-color: var(--gh-green);
}

/* Right: Biography content */
.gh-bio-title{
  margin-bottom: 8px;
}



.gh-bio-content p{
  font-family: var(--font-body);
  font-weight: 400;
  font-size: 16px;
  line-height: 165%;
  color: var(--gh-text);
  margin-bottom: 22px;
}

.gh-bio-subtitle{
  font-family: var(--font-body)!important;
  font-weight: 500!important;
  font-size: 22px!important;
  color: var(--gh-green)!important;
  margin-bottom: 24px!important;
}

.gh-bio-cta{
  margin-top: 12px;
}

@media (max-width: 991.98px){
  .gh-bio-section{ padding: 56px 0 70px; }
  .gh-bio-sidebar{ margin-bottom: 40px; }
}




/* ---------- Practice Area Detail — hero ---------- */
.gh-practice-hero{
  background-color: var(--gh-dark-blue);
  padding: 70px 0;
  padding-bottom: 0;
  max-height: 600px;
}

.gh-practice-breadcrumb{
  display: flex;
  align-items: center;
  gap: 8px;
  font-family: var(--font-body);
  font-weight: 500;
  font-size: 18px;
  margin-bottom: 20px;
}
.gh-practice-breadcrumb .current{
  color: var(--gh-white);
}
.gh-practice-breadcrumb .sep{
  color: rgba(255,255,255,0.5);
}
.gh-practice-breadcrumb .active{
  color: var(--gh-green);
}

.gh-practice-hero-title{
  font-family: "Noto Sans Arabic", var(--font-body), sans-serif;
  font-weight: 400;
  font-size: 52px;
  line-height: 98%;
  letter-spacing: 0;
  color: var(--gh-white);
  margin-bottom: 45px;
}

.gh-practice-hero-img{
  width: 100%;
  height: auto;
  display: block;
  max-width: 420px;
  margin-left: auto;
}

@media (max-width: 991.98px){
  .gh-practice-hero{ padding: 50px 0; }
  .gh-practice-hero-title{ font-size: 38px; }
}
@media (max-width: 575.98px){
  .gh-practice-hero-title{ font-size: 30px; }
}



/* ---------- Experienced Representation ---------- */
.gh-practice-intro{
  padding: 100px 0;
  background-color: var(--gh-white);
}

.gh-practice-intro-heading{
  text-align: center;
  max-width: 700px;
  margin: 0 auto 56px;
}
.gh-practice-intro-heading .highlight{
  color: var(--gh-green);
}

.gh-practice-intro-img{
  width: 100%;
  height: auto;
  border-radius: 4px;
  display: block;
}

.gh-practice-intro-text{
  font-family: var(--font-body);
  font-weight: 400;
  font-size: 16px;
  line-height: 160%;
  color: var(--gh-text);
  margin-bottom: 20px;
  max-width: 490px;
    margin-left: auto;
}
.gh-practice-intro-text:last-child{
  margin-bottom: 0;
}


/* ---------- Why Choose Goza & Honnold ---------- */
.gh-why-choose-detail{
  padding: 90px 0;
  background-color: #F6F6F6;
}

.gh-why-choose-detail .gh-eyebrow-green{
  font-size: 14px;
  margin-bottom: 12px;
}

.gh-why-choose-detail h2{
  margin-bottom: 28px;
}

.gh-why-choose-detail-list{
  list-style: none;
  margin: 0;
  padding: 0;
  max-width: 500px;
}
.gh-why-choose-detail-list li{
  display: flex;
  align-items: center;
  gap: 12px;
  font-family: var(--font-body);
  font-weight: 400;
  font-size: 18px;
  color: var(--gh-dark-blue);
  margin-bottom: 16px;
}
.gh-why-choose-detail-list li:last-child{
  margin-bottom: 0;
}

.gh-why-choose-detail-list .check{
  display: flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  flex-shrink: 0;
  background-color: var(--gh-green);
  border-radius: 3px;
}
.gh-why-choose-detail-list .check i{
  color: var(--gh-white);
  font-size: 11px;
}

.gh-why-choose-detail-img{
  width: 100%;
  height: auto;
  border-radius: 4px;
  display: block;
}

@media (max-width: 991.98px){
  .gh-why-choose-detail{ padding: 60px 0; }
  .gh-why-choose-detail-img{ margin-top: 24px; }
}

@media (max-width: 991.98px){
  .gh-practice-intro{ padding: 70px 0; }
  .gh-practice-intro-heading{ margin-bottom: 36px; }
  .gh-practice-intro-img{ margin-bottom: 24px; }
}


/* ---------- Practice Area Detail — content blocks ---------- */
.gh-content-area{
  padding: 90px 0;
  background-color: var(--gh-white);
}

.gh-content-block{
  position: relative;
}
.gh-content-block + .gh-content-block{
  margin-top: 50px;
  padding-top: 50px;
  border-top: 1px solid var(--gh-border);
}

.gh-content-block-inner{
  overflow: hidden;
  transition: max-height .5s ease;
}

/* Typography */
.gh-content-h2{
  font-family: var(--font-heading);
  font-weight: 600;
  font-size: 32px;
  line-height: 125%;
  color: var(--gh-dark-blue);
  margin-bottom: 20px;
}

.gh-content-h3{
  font-family: var(--font-heading);
  font-weight: 600;
  font-size: 20px;
  line-height: 130%;
  color: var(--gh-dark-blue);
  margin: 28px 0 14px;
}

.gh-content-block-inner p{
  font-family: var(--font-body);
  font-weight: 400;
  font-size: 16px;
  line-height: 165%;
  color: var(--gh-text);
  margin-bottom: 20px;
}
.gh-content-block-inner p:last-child{
  margin-bottom: 0;
}
.gh-content-block-inner a{
  color: var(--gh-green);
  text-decoration: underline;
}
.gh-content-block-inner a:hover{
  color: var(--gh-dark-blue);
}

.gh-content-list{
  list-style: none;
  margin: 0 0 20px;
  padding: 0;
}
.gh-content-list li{
  position: relative;
  padding-left: 22px;
  font-family: var(--font-body);
  font-weight: 400;
  font-size: 16px;
  line-height: 165%;
  color: var(--gh-text);
  margin-bottom: 12px;
}
.gh-content-list li::before{
  content: "";
  position: absolute;
  left: 0;
  top: 10px;
  width: 8px;
  height: 8px;
  background-color: var(--gh-green);
  border-radius: 50%;
}
.gh-content-list li:last-child{
  margin-bottom: 0;
}

/* Link-list variant (practice area link grid) — 2 columns on larger screens */
.gh-content-list-links{
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 4px 24px;
}

.gh-content-cta a{
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-weight: 600;
  text-decoration: none;
}
.gh-content-cta a:hover{
  text-decoration: underline;
}

/* Images */
.gh-content-img{
  width: 100%;
  height: auto;
  border-radius: 4px;
  display: block;
}
.gh-content-img-sticky{
  position: sticky;
  top: 100px;
}

/* ---------- Read More ---------- */
.gh-content-block-inner{
  max-height: 240px; /* collapsed height; JS overrides per-block if content is short */
}

/*.gh-content-fade{
  position: absolute;
  left: 0;
  right: 0;
  bottom: 52px; 
  height: 90px;
  background: linear-gradient(180deg, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 90%);
  pointer-events: none;
}*/

.gh-content-readmore-btn{
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-top: 10px;
  background: none;
  border: none;
  padding: 0;
  font-family: var(--font-body);
  font-weight: 600;
  font-size: 14px;
  letter-spacing: 1.68px;
  text-transform: uppercase;
  color: var(--gh-green);
  cursor: pointer;
}
.gh-content-readmore-btn i{
  font-size: 12px;
  transition: transform .3s ease;
}
.gh-content-readmore-btn:hover{
  color: var(--gh-dark-blue);
}

/* When a block is short enough that JS hides the button, also hide the fade */
.gh-content-block.is-short .gh-content-fade,
.gh-content-block.is-short .gh-content-readmore-btn{
  display: none;
}

/* When expanded, hide the fade so it doesn't overlay real content */
.gh-content-block.is-expanded .gh-content-fade{
  opacity: 0;
  pointer-events: none;
}

@media (max-width: 991.98px){
  .gh-content-area{ padding: 56px 0; }
  .gh-content-block + .gh-content-block{ margin-top: 48px; padding-top: 48px; }
  .gh-content-h2{ font-size: 26px; }
  .gh-content-list-links{ grid-template-columns: 1fr; }
  .gh-content-img-sticky{ position: static; margin-bottom: 24px; }
}


/* ---------- FAQs ---------- */
.gh-faq{
  padding: 90px 0;
  background-color: var(--gh-white);
}
.gh-faq-heading{
  margin-bottom: 48px;
}
.gh-faq-item{
  border: 1px solid #E1E4EA;
  border-radius: 6px;
  overflow: hidden;
  height: 100%;
}
.gh-faq-question{
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  background: none;
  border: none;
  text-align: left;
  padding: 20px 24px;
  /*padding-bottom: 8px;*/
  cursor: pointer;
  font-family: var(--font-heading);
  font-weight: 700;
  font-size: 20px;
  color: #001437;
  line-height: 1.35;
}
.gh-faq-question:focus-visible{
  outline: 2px solid var(--gh-green);
  outline-offset: -2px;
}
.gh-faq-icon{
  display: flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  flex-shrink: 0;
  border-radius: 4px;
  background-color: var(--gh-green);
  position: relative;
  transition: transform 0.3s ease;
}
.gh-faq-icon::before,
.gh-faq-icon::after{
  content: "";
  position: absolute;
  background-color: var(--gh-white);
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.gh-faq-icon::before{
  width: 12px;
  height: 2px;
}
.gh-faq-icon::after{
  width: 2px;
  height: 12px;
  transition: transform 0.3s ease, opacity 0.3s ease;
}
.gh-faq-question[aria-expanded="true"] .gh-faq-icon::after{
  transform: translate(-50%, -50%) rotate(90deg);
  opacity: 0;
}
.gh-faq-answer{
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows 0.35s ease;
  max-width: 470px;
}
.gh-faq-question[aria-expanded="true"] + .gh-faq-answer{
  grid-template-rows: 1fr;
}
.gh-faq-answer-inner{
  overflow: hidden;
  min-height: 0;
  padding: 0 24px;
  font-family: var(--font-body);
  font-weight: 400;
  font-size: 15px;
  line-height: 1.6;
  color: #5B6478;
}
.gh-faq-question[aria-expanded="true"] ~ .gh-faq-answer .gh-faq-answer-inner{
  padding: 0 24px 20px;
}
@media (max-width: 991.98px){
  .gh-faq{ padding: 60px 0; }
  .gh-faq-heading{ margin-bottom: 32px; }
}
@media (max-width: 767.98px){
  .gh-faq-question{
    font-size: 18px;
    padding: 16px 18px;
  }
  .gh-faq-answer-inner{
    padding: 0 18px;
    font-size: 14px;
  }
  .gh-faq-question[aria-expanded="true"] ~ .gh-faq-answer .gh-faq-answer-inner{
    padding: 0 18px 16px;
  }
}




/* ---------- CTA Consultation Banner ---------- */
.gh-cta-consult {
    padding: 100px 0;
    background-color: var(--gh-light-gray);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    min-height: 440px;
    display: flex;
    align-items: center;
}
.gh-cta-consult-heading{
  font-family: var(--font-heading);
  font-weight: 400;
  font-size: 52px;
  line-height: 107%;
  letter-spacing: 2%;
  color: var(--gh-dark-blue);
  margin: 0;
}
.gh-cta-consult-heading .gh-highlight-green{
  color: var(--gh-green);
}

.gh-cta-consult-cta-text {
    max-width: 446px;
    margin-left: auto;
}

.gh-cta-consult-text{
  font-family: var(--font-body);
  font-weight: 400;
  font-size: 16px;
  line-height: 1.6;
  color: #5B6478;
  margin-bottom: 28px;
}
.gh-btn-consult{
  display: inline-flex;
  align-items: center;
  gap: 10px;
  background-color: var(--gh-green);
  color: var(--gh-white);
  font-family: var(--font-body);
  font-weight: 600;
  font-size: 14px;
  letter-spacing: 0.5px;
  text-transform: uppercase;
  text-decoration: none;
  padding: 16px 28px;
  border-radius: 4px;
  transition: background-color 0.3s ease;
}
.gh-btn-consult:hover{
  background-color: var(--gh-dark-blue);
  color: var(--gh-white);
}
@media (max-width: 991.98px){
  .gh-cta-consult{ padding: 60px 0; }
  .gh-cta-consult-heading{ font-size: 36px; }
}
@media (max-width: 767.98px){
  .gh-cta-consult-heading{ font-size: 28px; }
  .gh-cta-consult-text{ font-size: 15px; }
  .gh-btn-consult{
    width: 100%;
    justify-content: center;
    font-size: 13px;
    padding: 14px 20px;
  }
}


/* ---------- Related Practice Areas ---------- */
.gh-related-practice{
  padding: 90px 0;
  background-color: var(--gh-white);
}
.gh-related-practice h2{
  margin-bottom: 40px;
}
.gh-related-practice-card{
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  height: 100%;
  padding: 20px;
  border: 1px solid var(--gh-border);
  border-radius: 4px;
  text-decoration: none;
  transition: border-color 0.3s ease, background-color 0.3s ease;
  align-items: center;
}
.gh-related-practice-card span{
  font-family: var(--font-heading);
  font-weight: 700;
  font-size: 20px;
  line-height: 115%;
  letter-spacing: 2%;
  color: #001437;
}
.gh-related-practice-card i{
  flex-shrink: 0;
  color: var(--gh-green);
  font-size: 16px;
  margin-top: 4px;
  transition: transform 0.3s ease;
}
.gh-related-practice-card:hover{
  border-color: var(--gh-border-green);
  background-color: var(--gh-light-gray);
}
.gh-related-practice-card:hover i{
  transform: translateX(4px);
}
@media (max-width: 991.98px){
  .gh-related-practice{ padding: 60px 0; }
  .gh-related-practice h2{ margin-bottom: 28px; }
}
@media (max-width: 575.98px){
  .gh-related-practice-card{ padding: 16px; }
  .gh-related-practice-card span{ font-size: 17px; }
}



/* ---------- Types of Medical Malpractice Cases ---------- */
.gh-mal-case-types{
  padding: 90px 0;
  background-color: var(--gh-white);
}
.gh-mal-case-types-header{
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 40px;
}
.gh-mal-case-types-header h2{
  margin: 0;
}
.gh-mal-case-types-header .gh-highlight-green{
  color: var(--gh-green);
}
.gh-mal-case-nav{
  display: flex;
  gap: 10px;
  flex-shrink: 0;
}
.gh-mal-case-nav-btn{
  width: 44px;
  height: 44px;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: var(--gh-green);
  border: none;
  color: var(--gh-white);
  font-size: 14px;
  cursor: pointer;
  transition: background-color 0.3s ease;
}
.gh-mal-case-nav-btn:hover{
  background-color: var(--gh-dark-blue);
}
.gh-mal-case-slider{
  margin: 0 -1px;
}
.gh-mal-case-card{
  background-color: var(--gh-dark-blue);
  padding: 40px 28px;
  height: 100%;
  min-height: 355px !important;
}
.gh-mal-case-icon{
  width: 44px;
  height: 44px;
  margin-bottom: 20px;
  
}
.gh-mal-case-card h3{
  font-family: var(--font-heading);
  font-weight: 700;
  font-size: 20px;
  color: var(--gh-white);
  margin-bottom: 12px;
}
.gh-mal-case-card p{
  font-family: var(--font-body);
  font-weight: 400;
  font-size: 16px;
  line-height: 1.6;
  color: #C7CEDA;
  margin: 0;
}
/* custom arrows built above; hide default slick arrows if theme CSS adds them */
.gh-mal-case-slider .slick-arrow{
  display: none !important;
}

/* ---------- equal height slider cards ---------- */
.gh-mal-case-slider .slick-track{
  display: flex !important;
  gap: 4px;
}
.gh-mal-case-slider .slick-slide{
  height: auto;
}
.gh-mal-case-slider .slick-slide > div{
  height: 100%;
}
.gh-mal-case-card{
  height: 100%;
  display: flex;

  flex-direction: column;
}
@media (max-width: 991.98px){
  .gh-mal-case-types{ padding: 60px 0; }
  .gh-mal-case-types-header{
    flex-direction: column;
    gap: 16px;
  }
}
@media (max-width: 575.98px){
  .gh-mal-case-card{ padding: 32px 22px; }
  .gh-mal-case-icon{ margin-bottom: 28px; }
}
/* ---------------------------------------------------------------------------
   Mobile type steps (added 2026-09-30).
   .gh-page-hero-title is declared here at 62px and this sheet loads AFTER
   migration.css, so migration.css's 48px base and its 32px max-width:767px step
   never applied. At 390px that left long titles breaking mid-word
   ("OBSTETRICA / L MALPRACTIC / E/CEREBRAL" on
   /obstetrical-malpracticecerebral-palsey-1-6m/). Desktop 62px is unchanged.
   --------------------------------------------------------------------------- */
@media (max-width: 991.98px) {
  .gh-page-hero-title {
    font-size: 44px;
  }

  h1,
  .h1-style {
    font-size: 48px;
  }
}

@media (max-width: 575.98px) {
  .gh-page-hero-title {
    font-size: 32px;
  }

  h1,
  .h1-style {
    font-size: 34px;
  }
}

/* Site-wide legal disclaimer in the footer (added 2026-10-23, wording supplied by the client).
   Sits above the copyright row so it appears on every page. Contrast is lifted above the
   copyright line's 0.6 because this is required legal text, not incidental small print. */
.gh-footer-disclaimer{
  padding: 20px 0 16px;
  border-bottom: 1px solid rgba(255,255,255,0.10);
  max-width: 1000px;
}
.gh-footer-disclaimer p{
  font-family: var(--font-body);
  font-weight: 400;
  font-size: 13px;
  line-height: 170%;
  color: rgba(255,255,255,0.78);
  margin: 0 0 8px;
}
.gh-footer-disclaimer p:last-child{
  margin-bottom: 0;
}
@media (max-width: 767.98px){
  .gh-footer-disclaimer{ padding: 18px 0 14px; text-align: left; }
}
