:root {
  --bg: #f1e8e0;
  --cream: #f8f1ea;
  --card: #fbf6ef;
  --orange: #c65a32;
  --orange-dark: #b54c28;
  --olive: #7d8429;
  --green: #4f573d;
  --brown: #5d4226;
  --muted: #746550;
  --line: rgba(93,66,38,.13);
  --shadow: 0 22px 52px rgba(93,66,38,.09);
}

* {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

body {
  margin: 0;
  background: var(--bg);
  color: var(--green);
  font-family: "Inter", sans-serif;
  letter-spacing: -.01em;
}

.site-header {
  position: sticky;
  top: 0;
  z-index: 50;
  height: 82px;
  padding: 12px clamp(24px,4vw,58px);
  background: rgba(241,232,224,.96);
  backdrop-filter: blur(12px);
  border-bottom: 1px solid var(--line);
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.logo img {
  width: 160px;
  display: block;
}

.site-nav {
  display: flex;
  align-items: center;
  gap: clamp(16px,2vw,30px);
}

.site-nav a {
  color: var(--green);
  text-decoration: none;
  font-weight: 700;
  font-size: 14px;
}

.site-nav a:hover {
  color: var(--orange);
}

.cta,
.btn.primary {
  background: var(--orange);
  color: white !important;
  padding: 12px 18px;
  border-radius: 5px;
  box-shadow: 0 10px 22px rgba(198,90,50,.14);
}

.cta:hover,
.btn.primary:hover {
  background: var(--orange-dark);
}

.hero {
  min-height: 710px;
  display: flex;
  align-items: center;
  padding: 96px clamp(28px,7vw,90px);
  background:
    linear-gradient(90deg,
      rgba(241,232,224,.98) 0%,
      rgba(241,232,224,.91) 37%,
      rgba(241,232,224,.54) 62%,
      rgba(241,232,224,.12) 100%),
    url('https://images.unsplash.com/photo-1516321318423-f06f85e504b3?auto=format&fit=crop&w=1800&q=82');
  background-size: cover;
  background-position: center right;
  border-bottom: 1px solid var(--line);
}

.hero-copy {
  max-width: 660px;
}

.eyebrow {
  color: var(--orange);
  text-transform: uppercase;
  letter-spacing: .085em;
  font-size: 12px;
  font-weight: 800;
  margin-bottom: 14px;
}

h1,
h2,
h3 {
  margin: 0;
  color: var(--brown);
  font-family: "Cormorant Garamond", serif;
  line-height: 1.02;
}

h1 {
  font-size: clamp(60px,7vw,96px);
  margin-bottom: 24px;
  letter-spacing: -.04em;
}

h1 em {
  color: var(--olive);
  font-style: normal;
}

.hero p,
.intro {
  color: var(--muted);
  font-size: 18px;
  line-height: 1.78;
}

.hero-actions {
  display: flex;
  gap: 14px;
  flex-wrap: wrap;
  margin-top: 30px;
}

.btn {
  text-decoration: none;
  font-weight: 800;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.btn.secondary {
  border: 1px solid var(--line);
  color: var(--brown);
  background: rgba(255,255,255,.42);
  padding: 12px 18px;
  border-radius: 5px;
}

.service-cards {
  width: min(1120px, calc(100% - 44px));
  margin: -70px auto 0;
  display: grid;
  grid-template-columns: repeat(3,1fr);
  gap: 18px;
  position: relative;
  z-index: 5;
}

.service-card {
  overflow: hidden;
  background: rgba(251,248,243,.96);
  border: 1px solid var(--line);
  border-radius: 6px;
  box-shadow: var(--shadow);
}

.service-image {
  height: 165px;
  background-size: cover;
  background-position: center;
}

.img-business {
  background-image: url('https://images.unsplash.com/photo-1516321318423-f06f85e504b3?auto=format&fit=crop&w=900&q=80');
}

.img-financial {
  background-image: url('https://images.unsplash.com/photo-1554224155-6726b3ff858f?auto=format&fit=crop&w=900&q=80');
}

.img-admin {
  background-image: url('https://images.unsplash.com/photo-1552664730-d307ca884978?auto=format&fit=crop&w=900&q=80');
}

.service-content {
  padding: 26px;
}

.service-content h2 {
  font-size: 24px;
  margin-bottom: 10px;
}

.service-content p {
  color: var(--muted);
  line-height: 1.6;
}

.service-content a,
.text-link {
  color: var(--orange);
  font-weight: 800;
  text-decoration: none;
}

.band {
  margin-top: 76px;
  padding: 22px clamp(24px,5vw,60px);
  background: #e2d2bc;
  display: flex;
  justify-content: center;
  gap: 38px;
  flex-wrap: wrap;
  color: var(--green);
  font-weight: 800;
  border-block: 1px solid var(--line);
}

.section {
  padding: 88px clamp(28px,7vw,90px);
}

.split {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 60px;
  align-items: center;
}

.section h2 {
  font-size: clamp(38px,4.6vw,62px);
  margin-bottom: 18px;
  letter-spacing: -.035em;
}

.approach-list {
  margin-top: 34px;
  display: grid;
  gap: 22px;
}

.approach-list > div {
  display: grid;
  grid-template-columns: 48px 1fr;
  gap: 18px;
}

.approach-list span {
  width: 42px;
  height: 42px;
  border-radius: 50%;
  border: 1px solid var(--olive);
  color: var(--olive);
  display: grid;
  place-items: center;
  font-weight: 800;
}

.approach-list h3 {
  font-size: 18px;
  margin-bottom: 5px;
}

.approach-list p {
  color: var(--muted);
  margin: 0;
  line-height: 1.6;
}

.feature-photo {
  min-height: 520px;
  border-radius: 18px;
  background:
    linear-gradient(rgba(255,255,255,.06), rgba(255,255,255,.06)),
    url('https://images.unsplash.com/photo-1554224155-6726b3ff858f?auto=format&fit=crop&w=1200&q=80');
  background-size: cover;
  background-position: center;
  box-shadow: var(--shadow);
}

.alt {
  background: linear-gradient(180deg, rgba(255,255,255,.18), rgba(255,255,255,.28));
  border-block: 1px solid var(--line);
}

.large-photo {
  min-height: 500px;
  border-radius: 18px;
  background:
    linear-gradient(rgba(255,255,255,.08), rgba(255,255,255,.08)),
    url('https://images.unsplash.com/photo-1500530855697-b586d89ba3ee?auto=format&fit=crop&w=1200&q=80');
  background-size: cover;
  background-position: center;
  box-shadow: var(--shadow);
}

.checklist {
  list-style: none;
  padding: 0;
  margin: 28px 0 20px;
}

.checklist li {
  position: relative;
  padding-left: 28px;
  margin: 14px 0;
  color: var(--green);
  font-weight: 700;
}

.checklist li::before {
  content: "✓";
  position: absolute;
  left: 0;
  color: var(--olive);
}

.section-heading {
  max-width: 760px;
  margin-bottom: 34px;
}

.deep-grid {
  display: grid;
  grid-template-columns: repeat(3,1fr);
  gap: 18px;
}

.deep-grid article {
  background: rgba(251,246,239,.9);
  border: 1px solid var(--line);
  border-radius: 6px;
  padding: 30px;
  box-shadow: var(--shadow);
}

.deep-grid h3 {
  font-size: 23px;
  margin-bottom: 10px;
}

.deep-grid p,
details p {
  color: var(--muted);
  line-height: 1.65;
}

.faq {
  background: linear-gradient(180deg, transparent, rgba(255,255,255,.18));
}

details {
  max-width: 920px;
  background: rgba(251,246,239,.92);
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 18px 20px;
  margin: 12px 0;
}

summary {
  color: var(--brown);
  cursor: pointer;
  font-weight: 800;
}

.cta-panel {
  margin: 0 clamp(28px,7vw,90px) 88px;
  padding: 44px clamp(28px,5vw,52px);
  background: linear-gradient(135deg, #e1d1ba, #f1e8e0);
  border: 1px solid var(--line);
  border-radius: 18px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
  box-shadow: var(--shadow);
}

.cta-panel h2 {
  max-width: 720px;
  font-size: clamp(32px,3.4vw,48px);
}

.contact {
  display: grid;
  grid-template-columns: .9fr 1.1fr;
  gap: 58px;
  align-items: start;
}

.contact-details {
  display: grid;
  gap: 15px;
  margin-top: 26px;
  color: var(--muted);
}

.contact-details a {
  color: var(--muted);
  text-decoration: none;
}

.contact-form {
  background: rgba(251,246,239,.94);
  border: 1px solid var(--line);
  border-radius: 6px;
  padding: 30px;
  display: grid;
  gap: 14px;
  box-shadow: var(--shadow);
}

input,
textarea {
  width: 100%;
  padding: 14px;
  border-radius: 5px;
  border: 1px solid rgba(93,66,38,.18);
  background: white;
  font: inherit;
}

textarea {
  min-height: 145px;
}

.contact-form button {
  border: 0;
  border-radius: 5px;
  background: var(--orange);
  color: white;
  padding: 14px 18px;
  font-weight: 800;
  cursor: pointer;
}

footer {
  padding: 28px clamp(24px,4vw,58px);
  border-top: 1px solid var(--line);
  display: flex;
  justify-content: space-between;
  align-items: center;
}

footer img {
  width: 112px;
}

footer nav {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 20px;
}

footer a {
  color: var(--green);
  text-decoration: none;
  font-weight: 700;
  font-size: 13px;
}

.menu-toggle {
  display: none;
}

@media(max-width: 980px) {
  .site-header {
    height: 76px;
  }

  .logo img {
    width: 145px;
  }

  .menu-toggle {
    display: block;
    background: transparent;
    border: none;
    color: var(--green);
    font-size: 25px;
  }

  .site-nav {
    display: none;
    position: absolute;
    top: 76px;
    left: 18px;
    right: 18px;
    background: var(--cream);
    border: 1px solid var(--line);
    border-radius: 6px;
    box-shadow: var(--shadow);
    padding: 20px;
    flex-direction: column;
    align-items: stretch;
  }

  .site-nav.open {
    display: flex;
  }

  .hero {
    min-height: 620px;
    background:
      linear-gradient(90deg, rgba(241,232,224,.98), rgba(241,232,224,.76)),
      url('https://images.unsplash.com/photo-1516321318423-f06f85e504b3?auto=format&fit=crop&w=1400&q=82');
    background-size: cover;
    background-position: center;
  }

  .service-cards,
  .split,
  .deep-grid,
  .contact {
    grid-template-columns: 1fr;
  }

  .service-cards {
    margin-top: 24px;
  }

  .feature-photo,
  .large-photo {
    min-height: 380px;
  }

  .cta-panel,
  footer {
    flex-direction: column;
    text-align: center;
  }

  footer nav {
    justify-content: center;
  }
}

@media(max-width: 640px) {
  .site-header,
  .hero,
  .section {
    padding-left: 22px;
    padding-right: 22px;
  }

  h1 {
    font-size: 44px;
  }

  .hero {
    min-height: 560px;
  }

  .service-cards {
    width: calc(100% - 32px);
  }

  .cta-panel {
    margin-left: 22px;
    margin-right: 22px;
  }
}



@media(max-width: 1180px) {
  .how-work-hero {
    grid-template-columns: 1fr;
  }

  .how-work-copy {
    padding-right: clamp(28px, 6vw, 90px);
  }

  .how-work-photo {
    min-height: 360px;
  }

  .process-cards {
    grid-template-columns: repeat(2, 1fr);
    gap: 18px;
    margin-top: 28px;
  }

  .process-arrow {
    display: none;
  }
}

@media(max-width: 760px) {
  .how-work {
    padding: 0 22px 64px;
  }

  .how-work-hero {
    margin-inline: -22px;
    min-height: auto;
  }

  .how-work-copy {
    padding: 64px 22px 38px;
  }

  .how-work h2 {
    font-size: 44px;
  }

  .how-work-copy p {
    font-size: 18px;
  }

  .how-work-photo {
    min-height: 260px;
  }

  .process-cards {
    grid-template-columns: 1fr;
  }

  .process-card {
    min-height: auto;
  }
}




/* ===== Editorial Luxury Sitewide Redesign ===== */

body {
  background:
    linear-gradient(180deg, #f1e8e0 0%, #eee3d4 100%);
  color: #2b2a28;
}

.site-header {
  background: rgba(241,232,224,.88);
  backdrop-filter: blur(16px);
  border-bottom: 1px solid rgba(80,60,40,.08);
}

.site-nav a {
  letter-spacing: .02em;
  font-weight: 700;
}

.hero {
  min-height: 760px;
  background:
    linear-gradient(90deg,
      rgba(241,232,224,.97) 0%,
      rgba(241,232,224,.90) 36%,
      rgba(241,232,224,.52) 62%,
      rgba(241,232,224,.08) 100%),
    url('https://images.unsplash.com/photo-1516321318423-f06f85e504b3?auto=format&fit=crop&w=1800&q=85');
  background-size: cover;
  background-position: center;
}

.hero-copy {
  max-width: 720px;
}

.hero .eyebrow,
.section .eyebrow,
.how-eyebrow {
  letter-spacing: .24em;
  font-size: 14px;
}

.hero h1 {
  font-family: "Cormorant Garamond", serif;
  font-weight: 500;
  line-height: .93;
  letter-spacing: -.05em;
  color: #262523;
}

.hero p {
  font-size: 22px;
  line-height: 1.6;
  max-width: 620px;
  color: #3a3834;
}

.btn.primary,
.cta {
  border-radius: 4px;
  box-shadow: 0 14px 28px rgba(181,76,40,.16);
}

.btn.secondary {
  background: rgba(255,255,255,.55);
  backdrop-filter: blur(6px);
}

.service-cards {
  margin-top: -82px;
}

.service-card,
.process-card,
.deep-grid article,
.contact-form,
details {
  background: rgba(251,248,243,.94);
  backdrop-filter: blur(8px);
  border: 1px solid rgba(90,70,45,.08);
  box-shadow: 0 24px 48px rgba(70,50,28,.10);
}

.service-content h2,
.deep-grid h3,
.gallery-content h3,
.process-card h3 {
  font-family: "Cormorant Garamond", serif;
  font-weight: 600;
  letter-spacing: -.03em;
}

.section h2,
.cta-panel h2,
.contact h2 {
  font-family: "Cormorant Garamond", serif;
  font-weight: 500;
  letter-spacing: -.04em;
  color: #262523;
}

.section h2 {
  font-size: clamp(50px,5vw,76px);
  line-height: .98;
}

.band,
.cta-panel {
  background:
    linear-gradient(135deg,
      #e6d5bf 0%,
      #f0e6d8 100%);
}

.feature-photo,
.large-photo,
.how-work-photo {
  filter: saturate(.94) contrast(1.02);
}

.process-card {
  border-radius: 6px;
}

.process-card p,
.deep-grid p,
.service-content p,
.intro,
.contact-details {
  color: #403d39;
}

footer {
  background: rgba(241,232,224,.72);
}

footer a {
  letter-spacing: .01em;
}

@media(max-width:760px) {
  .hero {
    min-height: 620px;
  }

  .hero h1 {
    font-size: 54px;
  }

  .section h2,
  .how-work h2 {
    font-size: 46px;
  }
}



/* Updated services section from previous homepage */
.home-services {
  padding-top: 112px;
  padding-bottom: 112px;
  background:
    linear-gradient(180deg, rgba(241,232,224,1) 0%, rgba(244,234,223,.98) 100%);
}

.services-heading {
  max-width: 760px;
  margin-bottom: 46px;
}

.services-heading h2 {
  font-family: "Cormorant Garamond", serif;
  color: #262523;
  font-weight: 500;
  font-size: clamp(50px,5vw,76px);
  line-height: .98;
  letter-spacing: -.04em;
  margin: 0 0 20px;
}

.services-heading p {
  max-width: 640px;
  color: #403d39;
  font-size: 18px;
  line-height: 1.7;
}

.services-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 24px;
}

.home-service-card {
  background: rgba(251,248,243,.96);
  border: 1px solid rgba(90,70,45,.08);
  box-shadow: 0 24px 48px rgba(70,50,28,.10);
  overflow: hidden;
  display: flex;
  flex-direction: column;
  min-height: 100%;
}

.home-service-image {
  height: 228px;
  background-size: cover;
  background-position: center;
  filter: saturate(.94) contrast(1.02);
}

.home-service-content {
  padding: 28px;
  display: flex;
  flex-direction: column;
  flex: 1;
}

.home-service-content h3 {
  font-family: "Cormorant Garamond", serif;
  color: #262523;
  font-size: 31px;
  font-weight: 600;
  line-height: 1;
  letter-spacing: -.035em;
  margin: 0 0 14px;
}

.home-service-content p {
  color: #403d39;
  font-size: 14px;
  line-height: 1.7;
  margin: 0 0 20px;
  flex: 1;
}

.home-service-content a {
  color: var(--orange);
  text-decoration: none;
  font-size: 13px;
  font-weight: 800;
  letter-spacing: .05em;
  text-transform: uppercase;
}

@media(max-width: 1100px) {
  .services-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media(max-width: 640px) {
  .home-services {
    padding-top: 76px;
    padding-bottom: 76px;
  }

  .services-grid {
    grid-template-columns: 1fr;
  }

  .home-service-image {
    height: 240px;
  }
}




/* Combined Why It Works + FAQ Section */
.why-faq {
  background:
    linear-gradient(180deg,
      rgba(255,255,255,.14) 0%,
      rgba(255,255,255,.24) 100%);
  border-block: 1px solid rgba(90,70,45,.08);
}

.why-faq-grid {
  display: grid;
  grid-template-columns: minmax(420px, .95fr) minmax(420px, 1.05fr);
  gap: 64px;
  align-items: stretch;
}

.why-faq-image {
  min-height: 720px;
  border-radius: 6px;

  background:
    linear-gradient(rgba(255,255,255,.08), rgba(255,255,255,.08)),
    url('https://images.unsplash.com/photo-1520607162513-77705c0f0d4a?auto=format&fit=crop&w=1400&q=82');

  background-size: cover;
  background-position: center;

  box-shadow: 0 26px 50px rgba(72,53,26,.12);
}

.why-faq-content {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.why-faq-content h2 {
  font-family: "Cormorant Garamond", serif;
  font-weight: 500;
  font-size: clamp(50px,5vw,76px);
  line-height: .96;
  letter-spacing: -.045em;
  margin: 0 0 24px;
  color: #262523;
}

.why-faq .intro {
  max-width: 640px;
  color: #3f3b37;
  font-size: 20px;
  line-height: 1.7;
  margin-bottom: 26px;
}

.why-list {
  list-style: none;
  padding: 0;
  margin: 0 0 38px;
}

.why-list li {
  position: relative;
  padding-left: 30px;
  margin: 14px 0;
  color: #2f2c28;
  font-weight: 700;
  line-height: 1.5;
}

.why-list li::before {
  content: "✓";
  position: absolute;
  left: 0;
  color: var(--olive);
}

.faq-editorial {
  display: grid;
  gap: 14px;
}

.faq-editorial details {
  background: rgba(251,248,243,.94);
  border: 1px solid rgba(90,70,45,.08);
  box-shadow: 0 16px 36px rgba(72,53,26,.08);
  border-radius: 6px;
  padding: 20px 22px;
}

.faq-editorial summary {
  cursor: pointer;
  color: #2d2a27;
  font-family: "Cormorant Garamond", serif;
  font-size: 28px;
  font-weight: 600;
  letter-spacing: -.02em;
}

.faq-editorial p {
  color: #47433e;
  line-height: 1.7;
  margin-top: 14px;
}

@media(max-width: 1100px) {
  .why-faq-grid {
    grid-template-columns: 1fr;
    gap: 38px;
  }

  .why-faq-image {
    min-height: 420px;
  }
}

@media(max-width: 760px) {
  .why-faq-content h2 {
    font-size: 46px;
  }

  .faq-editorial summary {
    font-size: 24px;
  }

  .why-faq-image {
    min-height: 320px;
  }
}





/* Refined blended header */
.site-header {
  position: absolute !important;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 100;
  height: 118px !important;

  padding: 24px clamp(26px, 4vw, 64px) !important;

  background:
    linear-gradient(180deg,
      rgba(241,232,224,.92) 0%,
      rgba(241,232,224,.78) 48%,
      rgba(241,232,224,.24) 100%) !important;

  backdrop-filter: blur(10px);
  border-bottom: none !important;

  display: flex;
  align-items: center;
  justify-content: space-between;
}

.logo {
  display: flex;
  align-items: center;
  height: 100%;
}

.logo img {
  width: auto !important;
  max-width: 360px !important;
  height: 82px !important;
  object-fit: contain !important;
  display: block;
}

.site-nav {
  gap: clamp(14px, 1.8vw, 28px) !important;
}

.site-nav a {
  color: #3b3a37 !important;
  font-size: 13px !important;
  letter-spacing: .06em !important;
  text-transform: uppercase;
}

.site-nav a:hover {
  color: var(--orange) !important;
}

.cta {
  padding: 13px 18px !important;
  border-radius: 4px !important;
}

.hero {
  padding-top: 170px !important;
  min-height: 780px !important;
}

.hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(180deg,
      rgba(241,232,224,.18) 0%,
      rgba(241,232,224,0) 22%);
  pointer-events: none;
}

@media(max-width:980px) {

  .site-header {
    height: 96px !important;
    padding: 18px 24px !important;
    position: fixed !important;
    background: rgba(241,232,224,.94) !important;
    border-bottom: 1px solid rgba(90,70,45,.08) !important;
  }

  .logo img {
    max-width: 250px !important;
    height: 60px !important;
  }

  .site-nav {
    top: 88px !important;
  }

  .hero {
    padding-top: 150px !important;
    min-height: 680px !important;
  }
}

@media(max-width:640px) {

  .site-header {
    height: 88px !important;
    padding: 16px 18px !important;
  }

  .logo img {
    max-width: 210px !important;
    height: 52px !important;
  }

  .hero {
    padding-top: 132px !important;
    min-height: 620px !important;
  }
}



/* Editorial serif descriptions to match section titles */

.hero p,
.intro,
.services-heading p,
.service-content p,
.home-service-content p,
.process-card p,
.deep-grid p,
.contact-details,
.contact-copy p,
.faq-editorial p,
.why-faq .intro,
.process-card p,
details p,
textarea,
input,
.contact-form input,
.contact-form textarea {
  font-family: "Cormorant Garamond", serif !important;
  font-size: 24px !important;
  line-height: 1.55 !important;
  letter-spacing: -.01em;
  font-weight: 500 !important;
  color: #403d39 !important;
}

.process-card p,
.deep-grid p,
.home-service-content p,
.faq-editorial p,
details p {
  font-size: 22px !important;
}

.contact-details,
.contact-copy p {
  font-size: 23px !important;
}

.service-content a,
.home-service-content a,
.text-link,
.btn,
.site-nav a,
footer a {
  font-family: "Inter", sans-serif !important;
}

@media(max-width:760px) {

  .hero p,
  .intro,
  .services-heading p,
  .service-content p,
  .home-service-content p,
  .process-card p,
  .deep-grid p,
  .contact-details,
  .contact-copy p,
  .faq-editorial p,
  details p {
    font-size: 20px !important;
  }
}



/* FINAL editorial typography alignment */

/* ALL explanatory/descriptive text */
p,
.intro,
.hero p,
.services-heading p,
.service-content p,
.home-service-content p,
.process-card p,
.process-card,
.deep-grid p,
.contact-copy p,
.contact-details,
.faq-editorial p,
details p,
.why-faq .intro,
.how-work-copy p,
.approach-list p,
textarea,
input,
.contact-form input,
.contact-form textarea {

  font-family: "Cormorant Garamond", serif !important;
  font-weight: 500 !important;
  letter-spacing: -.015em !important;
  line-height: 1.55 !important;
  color: #3f3b37 !important;
}

/* Main section explanatory paragraphs */
.hero p,
.intro,
.services-heading p,
.how-work-copy p,
.contact-copy p,
.why-faq .intro {
  font-size: 31px !important;
}

/* Service / card descriptions */
.service-content p,
.home-service-content p,
.process-card p,
.deep-grid p,
.faq-editorial p,
details p,
.approach-list p {
  font-size: 24px !important;
}

/* Contact details */
.contact-details {
  font-size: 25px !important;
}

/* Inputs stay readable */
input,
textarea {
  font-size: 20px !important;
}

/* Keep navigation/buttons sans serif */
.btn,
.site-nav a,
footer a,
.service-content a,
.home-service-content a,
.text-link {
  font-family: "Inter", sans-serif !important;
}

@media(max-width:760px) {

  .hero p,
  .intro,
  .services-heading p,
  .how-work-copy p,
  .contact-copy p,
  .why-faq .intro {
    font-size: 24px !important;
  }

  .service-content p,
  .home-service-content p,
  .process-card p,
  .deep-grid p,
  .faq-editorial p,
  details p,
  .approach-list p {
    font-size: 20px !important;
  }

  .contact-details {
    font-size: 22px !important;
  }
}



/* Refined overall site scaling - smaller typography + graphics */

/* Hero */
.hero {
  min-height: 700px !important;
}

.hero h1 {
  font-size: clamp(48px, 5vw, 74px) !important;
  line-height: .96 !important;
}

.hero p,
.intro,
.services-heading p,
.how-work-copy p,
.contact-copy p,
.why-faq .intro {
  font-size: 24px !important;
  line-height: 1.5 !important;
}

/* Section headings */
.section h2,
.services-heading h2,
.how-work h2,
.why-faq-content h2,
.cta-panel h2,
.contact h2 {
  font-size: clamp(40px, 4vw, 62px) !important;
}

/* Eyebrows */
.eyebrow,
.how-eyebrow {
  font-size: 12px !important;
  letter-spacing: .18em !important;
}

/* Service cards */
.home-service-image,
.service-image {
  height: 190px !important;
}

.home-service-content,
.service-content {
  padding: 22px !important;
}

.home-service-content h3,
.service-content h2,
.deep-grid h3,
.process-card h3 {
  font-size: 24px !important;
}

.service-content p,
.home-service-content p,
.process-card p,
.deep-grid p,
.faq-editorial p,
details p,
.approach-list p {
  font-size: 20px !important;
  line-height: 1.55 !important;
}


/* Why FAQ */
.why-faq-image {
  min-height: 620px !important;
}

/* Contact */
.contact-details {
  font-size: 21px !important;
}

.contact-form {
  padding: 24px !important;
}

input,
textarea {
  font-size: 18px !important;
  padding: 12px !important;
}

/* Header */
.site-header {
  height: 104px !important;
}

.logo img {
  height: 70px !important;
  max-width: 320px !important;
}

.site-nav a {
  font-size: 12px !important;
}

.cta,
.btn.primary,
.btn.secondary {
  font-size: 13px !important;
  padding: 11px 16px !important;
}

/* Footer */
footer img {
  width: 92px !important;
}

footer a {
  font-size: 12px !important;
}

/* Mobile */
@media(max-width:760px) {

  .hero h1 {
    font-size: 42px !important;
  }

  .hero p,
  .intro,
  .services-heading p,
  .how-work-copy p,
  .contact-copy p,
  .why-faq .intro {
    font-size: 20px !important;
  }

  .section h2,
  .services-heading h2,
  .how-work h2,
  .why-faq-content h2 {
    font-size: 38px !important;
  }

  .service-content p,
  .home-service-content p,
  .process-card p,
  .deep-grid p,
  .faq-editorial p,
  details p {
    font-size: 18px !important;
  }

  .process-card {
    min-height: auto !important;
  }

  .logo img {
    height: 54px !important;
    max-width: 220px !important;
  }
}



/* Refined wide approach bar */
.band {
  width: 100%;
  margin-top: 82px !important;
  padding: 0 !important;

  background:
    linear-gradient(135deg,
      #e2d2bc 0%,
      #efe3d3 100%) !important;

  border-top: 1px solid rgba(90,70,45,.08);
  border-bottom: 1px solid rgba(90,70,45,.08);
}

.band-content {
  width: 100%;
  min-height: 112px;

  display: flex;
  align-items: center;
  justify-content: center;
  gap: 28px;

  padding: 24px clamp(28px, 6vw, 90px);

  text-align: center;
}

.band-label {
  font-family: "Inter", sans-serif;
  font-size: 13px;
  font-weight: 800;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: var(--orange);
}

.band-divider {
  width: 48px;
  height: 1px;
  background: rgba(93,66,38,.35);
}

.band-title {
  font-family: "Cormorant Garamond", serif;
  font-size: clamp(34px, 3.5vw, 48px);
  line-height: 1;
  letter-spacing: -.035em;
  color: #2b2927;
  font-weight: 500;
}

@media(max-width:760px) {

  .band-content {
    min-height: auto;
    padding: 24px 22px;
    flex-direction: column;
    gap: 16px;
  }

  .band-divider {
    width: 36px;
  }

  .band-title {
    font-size: 32px;
  }
}



/* CTA summary bar */
.cta-summary {
  align-items: center !important;
  background:
    linear-gradient(135deg, #e1d1ba 0%, #f1e8e0 100%) !important;
}

.cta-summary > div {
  max-width: 880px;
}

.cta-summary h2 {
  margin-bottom: 16px !important;
}

.cta-summary p {
  font-family: "Cormorant Garamond", serif !important;
  font-size: 23px !important;
  line-height: 1.5 !important;
  color: #3f3b37 !important;
  margin: 0 !important;
  max-width: 860px;
}

@media(max-width:760px) {
  .cta-summary p {
    font-size: 20px !important;
  }
}



/* Updated side-by-side logo styling */

.site-header {
  background:
    linear-gradient(180deg,
      rgba(241,232,224,.96) 0%,
      rgba(241,232,224,.84) 52%,
      rgba(241,232,224,.22) 100%) !important;
}

.logo img {
  height: 92px !important;
  width: auto !important;
  max-width: 560px !important;
  object-fit: contain !important;
  filter: none !important;
  mix-blend-mode: normal !important;
}

footer {
  background: #F1E8E0 !important;
}

footer img {
  width: auto !important;
  height: 74px !important;
  object-fit: contain !important;
  filter: none !important;
  mix-blend-mode: normal !important;
}

@media(max-width:980px) {

  .logo img {
    height: 72px !important;
    max-width: 420px !important;
  }

  footer img {
    height: 62px !important;
  }
}

@media(max-width:640px) {

  .logo img {
    height: 54px !important;
    max-width: 290px !important;
  }

  footer img {
    height: 48px !important;
  }
}



/* Larger, softer logo integration */
.site-header {
  height: 142px !important;
  padding: 18px clamp(26px, 4vw, 64px) !important;
  background:
    linear-gradient(180deg,
      rgba(241,232,224,1) 0%,
      rgba(241,232,224,.94) 58%,
      rgba(241,232,224,.38) 86%,
      rgba(241,232,224,0) 100%) !important;
}

.logo {
  position: relative;
}

.logo::before {
  content: "";
  position: absolute;
  inset: -22px -34px;
  background: radial-gradient(ellipse at center, rgba(241,232,224,.92) 0%, rgba(241,232,224,.62) 46%, rgba(241,232,224,0) 76%);
  z-index: -1;
  pointer-events: none;
}

.logo img {
  height: 118px !important;
  max-width: 720px !important;
  opacity: .98;
}

.hero {
  padding-top: 205px !important;
}

footer {
  background:
    linear-gradient(180deg,
      rgba(241,232,224,.55) 0%,
      rgba(241,232,224,1) 45%,
      rgba(241,232,224,1) 100%) !important;
  padding-top: 36px !important;
  padding-bottom: 36px !important;
}

footer img {
  height: 104px !important;
  opacity: .98;
}

footer::before {
  content: "";
  position: absolute;
}

@media(max-width:980px) {
  .site-header {
    height: 116px !important;
    padding: 16px 24px !important;
  }

  .logo img {
    height: 88px !important;
    max-width: 520px !important;
  }

  .hero {
    padding-top: 170px !important;
  }

  footer img {
    height: 78px !important;
  }
}

@media(max-width:640px) {
  .site-header {
    height: 96px !important;
    padding: 14px 18px !important;
  }

  .logo img {
    height: 68px !important;
    max-width: 340px !important;
  }

  .hero {
    padding-top: 145px !important;
  }

  footer img {
    height: 60px !important;
  }
}



/* Final polish: larger logo, smoother section fades, slightly smaller type */
body { font-size: 15px !important; }

.hero h1 {
  font-size: clamp(44px, 4.6vw, 68px) !important;
  line-height: .96 !important;
}

.section h2,
.services-heading h2,
.how-work h2,
.why-faq-content h2,
.cta-panel h2,
.contact h2 {
  font-size: clamp(36px, 3.6vw, 56px) !important;
}

.hero p,
.intro,
.services-heading p,
.how-work-copy p,
.contact-copy p,
.why-faq .intro,
.cta-summary p {
  font-size: 21px !important;
  line-height: 1.48 !important;
}

.service-content p,
.home-service-content p,
.process-card p,
.deep-grid p,
.faq-editorial p,
details p,
.approach-list p {
  font-size: 18px !important;
  line-height: 1.5 !important;
}

.home-service-content h3,
.service-content h2,
.deep-grid h3,
.process-card h3,
.faq-editorial summary {
  font-size: 22px !important;
}

.eyebrow,
.how-eyebrow {
  font-size: 11px !important;
  letter-spacing: .16em !important;
}

/* Larger logo with seamless fade */
.site-header {
  height: 156px !important;
  padding: 16px clamp(24px, 4vw, 64px) 34px !important;
  background:
    linear-gradient(180deg,
      #F1E8E0 0%,
      rgba(241,232,224,.98) 48%,
      rgba(241,232,224,.70) 76%,
      rgba(241,232,224,0) 100%) !important;
}

.logo img {
  height: 132px !important;
  max-width: 780px !important;
  width: auto !important;
}

.logo::before {
  inset: -32px -48px !important;
  background:
    radial-gradient(ellipse at center,
      rgba(241,232,224,1) 0%,
      rgba(241,232,224,.78) 48%,
      rgba(241,232,224,0) 82%) !important;
}

.site-nav a { font-size: 11px !important; }

.cta,
.btn.primary,
.btn.secondary {
  font-size: 12px !important;
  padding: 10px 15px !important;
}

/* Hero/header transition */
.hero {
  padding-top: 220px !important;
  min-height: 700px !important;
}

.hero::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -1px;
  height: 150px;
  background: linear-gradient(to bottom, rgba(241,232,224,0), #F1E8E0 86%);
  pointer-events: none;
}

/* Smooth section transitions */
.home-services {
  background:
    linear-gradient(180deg,
      #F1E8E0 0%,
      #F4EADF 42%,
      #F1E8E0 100%) !important;
}

.band {
  margin-top: 0 !important;
  background:
    linear-gradient(180deg,
      #F1E8E0 0%,
      #E4D5BF 30%,
      #EFE3D3 70%,
      #F1E8E0 100%) !important;
  border-top: 0 !important;
  border-bottom: 0 !important;
}

.band-content { min-height: 94px !important; }
.band-label { font-size: 11px !important; }

.band-title {
  font-size: clamp(28px, 3vw, 40px) !important;
}

.how-work {
  background:
    linear-gradient(180deg,
      #F1E8E0 0%,
      #EEE1D1 46%,
      #F1E8E0 100%) !important;
  border-block: 0 !important;
}

.how-work::before {
  content: "";
  position: absolute;
  inset: 0 0 auto 0;
  height: 120px;
  background: linear-gradient(to bottom, #F1E8E0, rgba(241,232,224,0));
  z-index: 1;
  pointer-events: none;
}

.how-work-hero,
.process-cards {
  position: relative;
  z-index: 2;
}

.why-faq {
  background:
    linear-gradient(180deg,
      #F1E8E0 0%,
      rgba(244,234,223,.9) 45%,
      #F1E8E0 100%) !important;
  border-block: 0 !important;
}

.cta-panel {
  background:
    linear-gradient(135deg,
      #E4D5BF 0%,
      #F1E8E0 72%,
      #F1E8E0 100%) !important;
  box-shadow: 0 16px 34px rgba(70,50,28,.07) !important;
}

.contact {
  background:
    linear-gradient(180deg,
      #F1E8E0 0%,
      #F4EADF 52%,
      #F1E8E0 100%) !important;
}

/* Slightly smaller graphics */
.home-service-image,
.service-image { height: 176px !important; }

.process-card { min-height: 335px !important; }

.process-icon {
  width: 56px !important;
  height: 56px !important;
  font-size: 27px !important;
}

.process-arrow {
  width: 48px !important;
  height: 48px !important;
  font-size: 30px !important;
}

.why-faq-image { min-height: 560px !important; }

/* Footer logo larger and blended */
footer {
  background:
    linear-gradient(180deg,
      rgba(241,232,224,0) 0%,
      #F1E8E0 28%,
      #F1E8E0 100%) !important;
  padding-top: 48px !important;
  padding-bottom: 44px !important;
}

footer img {
  height: 122px !important;
  width: auto !important;
}

/* Mobile */
@media(max-width:980px) {
  .site-header {
    height: 118px !important;
    padding: 14px 22px 20px !important;
    background: rgba(241,232,224,.96) !important;
  }

  .logo img {
    height: 92px !important;
    max-width: 520px !important;
  }

  .hero { padding-top: 170px !important; }

  footer img { height: 86px !important; }
}

@media(max-width:760px) {
  .hero h1 { font-size: 38px !important; }

  .hero p,
  .intro,
  .services-heading p,
  .how-work-copy p,
  .contact-copy p,
  .why-faq .intro,
  .cta-summary p {
    font-size: 18px !important;
  }

  .section h2,
  .services-heading h2,
  .how-work h2,
  .why-faq-content h2 {
    font-size: 34px !important;
  }

  .service-content p,
  .home-service-content p,
  .process-card p,
  .deep-grid p,
  .faq-editorial p,
  details p {
    font-size: 16px !important;
  }

  .logo img {
    height: 68px !important;
    max-width: 360px !important;
  }

  footer img { height: 62px !important; }
}



/* Dramatic editorial logo treatment */

.site-header {
  height: 190px !important;
  padding: 10px clamp(22px, 4vw, 68px) 42px !important;

  background:
    linear-gradient(180deg,
      #F1E8E0 0%,
      rgba(241,232,224,.99) 36%,
      rgba(241,232,224,.82) 66%,
      rgba(241,232,224,.28) 88%,
      rgba(241,232,224,0) 100%) !important;
}

.logo {
  position: relative;
  z-index: 4;
}

.logo::before {
  content: "";
  position: absolute;
  inset: -44px -70px;

  background:
    radial-gradient(
      ellipse at center,
      rgba(241,232,224,1) 0%,
      rgba(241,232,224,.92) 32%,
      rgba(241,232,224,.56) 62%,
      rgba(241,232,224,0) 84%
    );

  pointer-events: none;
  z-index: -1;
}

.logo img {
  height: 160px !important;
  max-width: 980px !important;
  width: auto !important;

  opacity: .995;
  transform: translateY(2px);
}

/* Let the logo dominate more visually */
.site-nav {
  margin-top: 18px;
}

.site-nav a {
  font-size: 10px !important;
  letter-spacing: .14em !important;
}

.hero {
  padding-top: 255px !important;
}

/* Footer logo treatment */
footer {
  position: relative;
  padding-top: 68px !important;
  padding-bottom: 56px !important;

  background:
    linear-gradient(180deg,
      rgba(241,232,224,0) 0%,
      rgba(241,232,224,.88) 26%,
      #F1E8E0 52%,
      #F1E8E0 100%) !important;
}

footer::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(
      ellipse at center,
      rgba(241,232,224,.85) 0%,
      rgba(241,232,224,.35) 55%,
      rgba(241,232,224,0) 88%
    );
  pointer-events: none;
}

footer img {
  height: 158px !important;
  width: auto !important;
  position: relative;
  z-index: 2;
  opacity: .995;
}

footer nav {
  position: relative;
  z-index: 2;
}

/* Tablet */
@media(max-width:980px) {

  .site-header {
    height: 144px !important;
    padding: 12px 22px 24px !important;
  }

  .logo img {
    height: 118px !important;
    max-width: 680px !important;
  }

  .hero {
    padding-top: 205px !important;
  }

  footer img {
    height: 118px !important;
  }
}

/* Mobile */
@media(max-width:760px) {

  .site-header {
    height: 112px !important;
    padding: 10px 18px 14px !important;
  }

  .logo::before {
    inset: -22px -30px;
  }

  .logo img {
    height: 82px !important;
    max-width: 420px !important;
  }

  .hero {
    padding-top: 160px !important;
  }

  footer {
    padding-top: 48px !important;
  }

  footer img {
    height: 82px !important;
  }
}



/* Editorial Our Approach section replacing stats bar */

.approach-editorial {
  position: relative;

  background:
    linear-gradient(180deg,
      #F1E8E0 0%,
      #F4EADF 48%,
      #F1E8E0 100%) !important;

  overflow: hidden;
}

.approach-grid {
  display: grid;
  grid-template-columns: minmax(420px, 1fr) minmax(420px, 1fr);
  gap: 64px;
  align-items: center;
}

.approach-image {
  min-height: 560px;

  background:
    linear-gradient(rgba(255,255,255,.06), rgba(255,255,255,.06)),
    url('https://images.unsplash.com/photo-1497366754035-f200968a6e72?auto=format&fit=crop&w=1400&q=82');

  background-size: cover;
  background-position: center;

  border-radius: 6px;

  box-shadow: 0 24px 48px rgba(70,50,28,.10);
}

.approach-content {
  max-width: 720px;
}

.approach-content h2 {
  font-family: "Cormorant Garamond", serif;
  font-size: clamp(40px, 4vw, 58px);
  line-height: .98;
  letter-spacing: -.045em;
  font-weight: 500;
  color: #262523;

  margin: 0 0 22px;
}

.approach-content .intro {
  font-family: "Cormorant Garamond", serif;
  font-size: 22px;
  line-height: 1.5;
  color: #3f3b37;

  margin-bottom: 28px;
}

.approach-list-editorial {
  list-style: none;
  padding: 0;
  margin: 0;
}

.approach-list-editorial li {
  position: relative;

  padding-left: 30px;
  margin: 16px 0;

  font-family: "Cormorant Garamond", serif;
  font-size: 20px;
  line-height: 1.5;

  color: #2f2c28;
}

.approach-list-editorial li::before {
  content: "✓";

  position: absolute;
  left: 0;
  top: 0;

  color: var(--olive);
}

@media(max-width:1100px) {

  .approach-grid {
    grid-template-columns: 1fr;
    gap: 36px;
  }

  .approach-image {
    min-height: 400px;
  }
}

@media(max-width:760px) {

  .approach-content h2 {
    font-size: 36px;
  }

  .approach-content .intro {
    font-size: 18px;
  }

  .approach-list-editorial li {
    font-size: 17px;
  }

  .approach-image {
    min-height: 300px;
  }
}




/* Soften image transition */
.approach-editorial {
  position: relative;
  z-index: 1;
}

.approach-editorial::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -1px;
  height: 140px;

  background:
    linear-gradient(to bottom,
      rgba(241,232,224,0) 0%,
      rgba(241,232,224,.32) 42%,
      rgba(241,232,224,.78) 76%,
      #EEE1D1 100%);

  pointer-events: none;
  z-index: 2;
}

@media(max-width:760px) {

  .how-work {
    margin-top: -18px !important;
    padding-top: 82px !important;
  }

  .how-work::before {
    top: -70px;
    height: 110px;
  }

  .approach-editorial::after {
    height: 90px;
  }
}




/* Blend the image panel into copy/background without a hard vertical edge */
.how-work-copy {
  background:
    linear-gradient(90deg,
      #F1E8E0 0%,
      rgba(241,232,224,.98) 64%,
      rgba(241,232,224,.58) 88%,
      rgba(241,232,224,0) 100%) !important;
}

/* Remove overly strong top overlay from prior version */
.how-work::before {
  opacity: .55 !important;
}

/* Add softer whole-section image wash */
.how-work-hero {
  background:
    linear-gradient(180deg,
      rgba(241,232,224,.82) 0%,
      rgba(241,232,224,0) 22%,
      rgba(241,232,224,0) 72%,
      rgba(241,232,224,.78) 100%);
}

@media(max-width:760px) {
  .how-work-photo {
    background:
      linear-gradient(180deg,
        #F1E8E0 0%,
        rgba(241,232,224,.20) 24%,
        rgba(241,232,224,.12) 70%,
        #F1E8E0 100%),
      url("assets/how-we-work-photo.jpg") !important;
    background-size: cover !important;
    background-position: center !important;
  }
}




/* Enhanced oversized editorial logo */

.site-header {
  height: 210px !important;
  padding: 8px clamp(20px, 4vw, 72px) 46px !important;

  background:
    linear-gradient(180deg,
      #F1E8E0 0%,
      rgba(241,232,224,.995) 34%,
      rgba(241,232,224,.86) 62%,
      rgba(241,232,224,.38) 86%,
      rgba(241,232,224,0) 100%) !important;

  backdrop-filter: blur(14px);
}

.logo {
  position: relative;
  z-index: 6;
}

.logo::before {
  content: "";
  position: absolute;
  inset: -58px -96px;

  background:
    radial-gradient(
      ellipse at center,
      rgba(241,232,224,1) 0%,
      rgba(241,232,224,.96) 28%,
      rgba(241,232,224,.74) 54%,
      rgba(241,232,224,.26) 76%,
      rgba(241,232,224,0) 90%
    );

  pointer-events: none;
  z-index: -1;
}

.logo img {
  height: 184px !important;
  max-width: 1180px !important;
  width: auto !important;

  opacity: 1 !important;

  filter:
    contrast(1.04)
    saturate(1.02);

  transform: translateY(4px);
}

/* Navigation refinement around large logo */
.site-nav {
  margin-top: 26px !important;
  gap: 18px !important;
}

.site-nav a {
  font-size: 10px !important;
  letter-spacing: .16em !important;
}

/* Hero pushed lower */
.hero {
  padding-top: 278px !important;
}

/* Footer enhancement */
footer {
  position: relative;

  padding-top: 82px !important;
  padding-bottom: 64px !important;

  background:
    linear-gradient(180deg,
      rgba(241,232,224,0) 0%,
      rgba(241,232,224,.92) 24%,
      #F1E8E0 48%,
      #F1E8E0 100%) !important;
}

footer::before {
  content: "";
  position: absolute;
  inset: 0;

  background:
    radial-gradient(
      ellipse at center,
      rgba(241,232,224,.96) 0%,
      rgba(241,232,224,.52) 58%,
      rgba(241,232,224,0) 88%
    );

  pointer-events: none;
}

footer img {
  height: 178px !important;
  width: auto !important;

  position: relative;
  z-index: 2;

  filter:
    contrast(1.04)
    saturate(1.02);
}

/* Tablet */
@media(max-width:980px) {

  .site-header {
    height: 154px !important;
    padding: 10px 22px 24px !important;
  }

  .logo img {
    height: 126px !important;
    max-width: 760px !important;
  }

  .hero {
    padding-top: 214px !important;
  }

  footer img {
    height: 126px !important;
  }
}

/* Mobile */
@media(max-width:760px) {

  .site-header {
    height: 118px !important;
    padding: 10px 18px 16px !important;
  }

  .logo::before {
    inset: -26px -42px;
  }

  .logo img {
    height: 88px !important;
    max-width: 480px !important;
  }

  .hero {
    padding-top: 168px !important;
  }

  footer {
    padding-top: 54px !important;
  }

  footer img {
    height: 88px !important;
  }
}



/* Richer darker editorial greens + more dominant logo */

:root {
  --olive: #4F5A2E !important;
  --green: #2F3824 !important;
  --brown: #493522 !important;
  --orange: #B85A36 !important;
  --orange-dark: #9F4B2B !important;
}

/* Stronger luxury logo presence */
.site-header {
  height: 228px !important;
  padding: 6px clamp(20px, 4vw, 72px) 52px !important;

  background:
    linear-gradient(180deg,
      #F1E8E0 0%,
      rgba(241,232,224,.998) 30%,
      rgba(241,232,224,.92) 58%,
      rgba(241,232,224,.48) 84%,
      rgba(241,232,224,0) 100%) !important;
}

.logo::before {
  inset: -72px -120px !important;

  background:
    radial-gradient(
      ellipse at center,
      rgba(241,232,224,1) 0%,
      rgba(241,232,224,.98) 26%,
      rgba(241,232,224,.82) 48%,
      rgba(241,232,224,.42) 70%,
      rgba(241,232,224,0) 90%
    ) !important;
}

.logo img {
  height: 206px !important;
  max-width: 1320px !important;

  filter:
    contrast(1.08)
    saturate(.94)
    brightness(.98);

  transform: translateY(6px);
}

/* Hero moved lower to support larger logo */
.hero {
  padding-top: 305px !important;
}

/* Darker refined typography */
body,
p,
.intro,
.service-content p,
.home-service-content p,
.process-card p,
.deep-grid p,
.faq-editorial p,
details p {
  color: #35312D !important;
}

h1,
h2,
h3,
.band-title,
.process-card h3,
.home-service-content h3,
.service-content h2,
.deep-grid h3 {
  color: #2A2F23 !important;
}

/* Darker luxury green accents */
.process-arrow {
  background: #394528 !important;
}

.process-icon {
  background: rgba(79,90,46,.12) !important;
  color: #2F3824 !important;
}

.approach-list-editorial li::before,
.why-list li::before,
.checklist li::before {
  color: #4F5A2E !important;
}

.site-nav a {
  color: #2F3824 !important;
}

.site-nav a:hover {
  color: #9F4B2B !important;
}

/* Richer footer treatment */
footer {
  padding-top: 92px !important;
  padding-bottom: 72px !important;

  background:
    linear-gradient(180deg,
      rgba(241,232,224,0) 0%,
      rgba(241,232,224,.94) 20%,
      #F1E8E0 42%,
      #F1E8E0 100%) !important;
}

footer::before {
  background:
    radial-gradient(
      ellipse at center,
      rgba(241,232,224,.98) 0%,
      rgba(241,232,224,.64) 54%,
      rgba(241,232,224,0) 88%
    ) !important;
}

footer img {
  height: 202px !important;
  filter:
    contrast(1.08)
    saturate(.94)
    brightness(.98);
}

/* Buttons */
.btn.primary,
.cta {
  background: #B85A36 !important;
}

.btn.primary:hover,
.cta:hover {
  background: #9F4B2B !important;
}

/* Tablet */
@media(max-width:980px) {

  .site-header {
    height: 168px !important;
    padding: 8px 22px 28px !important;
  }

  .logo img {
    height: 142px !important;
    max-width: 840px !important;
  }

  .hero {
    padding-top: 235px !important;
  }

  footer img {
    height: 142px !important;
  }
}

/* Mobile */
@media(max-width:760px) {

  .site-header {
    height: 126px !important;
    padding: 8px 18px 16px !important;
  }

  .logo::before {
    inset: -32px -54px !important;
  }

  .logo img {
    height: 96px !important;
    max-width: 520px !important;
  }

  .hero {
    padding-top: 182px !important;
  }

  footer {
    padding-top: 58px !important;
  }

  footer img {
    height: 96px !important;
  }
}



/* Maximum luxury editorial logo scale */

.site-header {
  height: 258px !important;
  padding: 4px clamp(18px, 4vw, 72px) 58px !important;

  background:
    linear-gradient(180deg,
      #F1E8E0 0%,
      rgba(241,232,224,1) 28%,
      rgba(241,232,224,.94) 56%,
      rgba(241,232,224,.54) 82%,
      rgba(241,232,224,0) 100%) !important;
}

.logo {
  position: relative;
  z-index: 8;
}

.logo::before {
  content: "";
  position: absolute;
  inset: -92px -160px;

  background:
    radial-gradient(
      ellipse at center,
      rgba(241,232,224,1) 0%,
      rgba(241,232,224,.995) 22%,
      rgba(241,232,224,.88) 44%,
      rgba(241,232,224,.52) 68%,
      rgba(241,232,224,.14) 84%,
      rgba(241,232,224,0) 94%
    );

  pointer-events: none;
  z-index: -1;
}

.logo img {
  height: 236px !important;
  max-width: 1520px !important;
  width: auto !important;

  filter:
    contrast(1.1)
    saturate(.92)
    brightness(.98);

  transform: translateY(8px);
}

/* Navigation repositioned around logo */
.site-nav {
  margin-top: 38px !important;
  gap: 16px !important;
}

.site-nav a {
  font-size: 10px !important;
  letter-spacing: .18em !important;
}

/* Hero spacing */
.hero {
  padding-top: 342px !important;
  min-height: 760px !important;
}

/* Footer dramatic logo */
footer {
  padding-top: 108px !important;
  padding-bottom: 84px !important;
}

footer img {
  height: 228px !important;
  width: auto !important;

  filter:
    contrast(1.1)
    saturate(.92)
    brightness(.98);
}

/* Tablet */
@media(max-width:980px) {

  .site-header {
    height: 188px !important;
    padding: 8px 22px 32px !important;
  }

  .logo::before {
    inset: -52px -90px;
  }

  .logo img {
    height: 158px !important;
    max-width: 940px !important;
  }

  .hero {
    padding-top: 255px !important;
  }

  footer img {
    height: 158px !important;
  }
}

/* Mobile */
@media(max-width:760px) {

  .site-header {
    height: 138px !important;
    padding: 8px 18px 18px !important;
  }

  .logo::before {
    inset: -34px -60px;
  }

  .logo img {
    height: 108px !important;
    max-width: 580px !important;
  }

  .hero {
    padding-top: 198px !important;
    min-height: 640px !important;
  }

  footer {
    padding-top: 64px !important;
  }

  footer img {
    height: 108px !important;
  }
}



/* Reordered page flow + smooth faded transitions between all sections */

.hero,
.approach-editorial,
.home-services,
.how-work,
.why-faq,
.cta-panel,
.contact,
footer {
  position: relative;
}

/* Universal soft separation */
.approach-editorial,
.home-services,
.how-work,
.why-faq,
.contact {
  box-shadow:
    inset 0 42px 52px rgba(241,232,224,.42),
    inset 0 -42px 52px rgba(241,232,224,.42),
    0 -18px 44px rgba(72,53,26,.035);
}

/* Hero into approach */
.hero::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -1px;
  height: 180px;
  background:
    linear-gradient(to bottom,
      rgba(241,232,224,0) 0%,
      rgba(241,232,224,.42) 48%,
      #F1E8E0 100%);
  pointer-events: none;
  z-index: 3;
}

.approach-editorial {
  margin-top: -54px !important;
  padding-top: 132px !important;
  background:
    linear-gradient(180deg,
      #F1E8E0 0%,
      #F4EADF 48%,
      #F1E8E0 100%) !important;
}

.approach-editorial::before {
  content: "";
  position: absolute;
  top: -120px;
  left: 0;
  right: 0;
  height: 160px;
  background:
    linear-gradient(to bottom,
      rgba(241,232,224,0) 0%,
      rgba(241,232,224,.64) 58%,
      #F1E8E0 100%);
  pointer-events: none;
  z-index: 1;
}

.approach-grid {
  position: relative;
  z-index: 2;
}

/* Approach into services */
.approach-editorial::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -1px;
  height: 150px;
  background:
    linear-gradient(to bottom,
      rgba(241,232,224,0) 0%,
      rgba(241,232,224,.42) 48%,
      #F1E8E0 100%);
  pointer-events: none;
  z-index: 2;
}

.home-services {
  margin-top: -38px !important;
  padding-top: 128px !important;
  background:
    linear-gradient(180deg,
      #F1E8E0 0%,
      #F4EADF 50%,
      #F1E8E0 100%) !important;
}


/* How Work into Why FAQ */
.how-work::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -1px;
  height: 160px;
  background:
    linear-gradient(to bottom,
      rgba(241,232,224,0) 0%,
      rgba(241,232,224,.44) 50%,
      #F1E8E0 100%);
  pointer-events: none;
  z-index: 2;
}

.why-faq {
  margin-top: -34px !important;
  padding-top: 126px !important;
  background:
    linear-gradient(180deg,
      #F1E8E0 0%,
      #F4EADF 52%,
      #F1E8E0 100%) !important;
}

/* Why FAQ into CTA */
.why-faq::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -1px;
  height: 140px;
  background:
    linear-gradient(to bottom,
      rgba(241,232,224,0) 0%,
      rgba(241,232,224,.52) 55%,
      #F1E8E0 100%);
  pointer-events: none;
  z-index: 2;
}

.cta-panel {
  position: relative;
  z-index: 3;
  margin-top: -22px !important;
  box-shadow:
    0 22px 48px rgba(72,53,26,.09),
    inset 0 1px 0 rgba(255,255,255,.35) !important;
}

/* CTA into contact */
.contact {
  margin-top: -28px !important;
  padding-top: 122px !important;
}

/* Soften image/card edges throughout */
.approach-image,
.home-service-card,
.process-card,
.why-faq-image,
.faq-editorial details,
.contact-form,
.cta-panel {
  box-shadow:
    0 24px 52px rgba(72,53,26,.09),
    0 1px 0 rgba(255,255,255,.35) inset !important;
}

/* Keep section content above fades */
.home-services > *,
.how-work > *,
.why-faq > *,
.contact > * {
  position: relative;
  z-index: 4;
}

@media(max-width:760px) {
  .approach-editorial,
  .home-services,
  .how-work,
  .why-faq,
  .contact {
    margin-top: -18px !important;
    padding-top: 86px !important;
  }

  .hero::after,
  .approach-editorial::after,
  .home-services::after,
  .how-work::after,
  .why-faq::after {
    height: 90px;
  }
}




/* Replace previous hard overlay with a smoother fade */
.home-services::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -1px;
  height: 120px;
  background:
    linear-gradient(to bottom,
      rgba(241,232,224,0) 0%,
      rgba(241,232,224,.28) 45%,
      #F1E8E0 100%) !important;
  pointer-events: none;
  z-index: 2;
}


/* Remove/soften duplicate top overlays that created the faint bar */
.how-work::before {
  opacity: 0 !important;
  display: none !important;
}



/* Remove ALL pseudo overlays that can create stacking artifacts */
.home-services::before,
.home-services::after,
.how-work::before,
.how-work::after,
.approach-editorial::after {
  display: none !important;
  opacity: 0 !important;
  background: none !important;
  box-shadow: none !important;
}

/* Remove negative overlap causing layered bands */
.home-services {
  margin-bottom: 0 !important;
  padding-bottom: 96px !important;

  background: #F1E8E0 !important;

  box-shadow:
    inset 0 -18px 36px rgba(241,232,224,.16) !important;
}

.how-work {
  margin-top: 0 !important;
  padding-top: 96px !important;

  background:
    linear-gradient(180deg,
      #F1E8E0 0%,
      #EEE1D1 34%,
      #F1E8E0 100%) !important;

  border-top: 0 !important;
  box-shadow: none !important;
}

/* Remove extra hero/image overlays */
.how-work-hero {
  background: transparent !important;
}

/* Prevent any hidden borders */
.home-services,
.how-work {
  border: 0 !important;
  outline: 0 !important;
}

/* Smooth natural transition using only spacing */
@media(max-width:760px) {

  .home-services {
    padding-bottom: 72px !important;
  }

  .how-work {
    padding-top: 72px !important;
  }
}



/* Smooth CTA bar fade into Contact section */
.cta-panel {
  position: relative !important;
  z-index: 3 !important;
  margin-bottom: 0 !important;
  background:
    linear-gradient(135deg,
      #E4D5BF 0%,
      #EEE0CE 48%,
      #F1E8E0 100%) !important;
  box-shadow:
    0 18px 42px rgba(72,53,26,.07),
    inset 0 -34px 54px rgba(241,232,224,.36) !important;
}

.cta-panel::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -90px;
  height: 120px;
  background:
    linear-gradient(to bottom,
      rgba(241,232,224,.96) 0%,
      rgba(241,232,224,.62) 44%,
      rgba(241,232,224,0) 100%);
  pointer-events: none;
  z-index: -1;
}

.contact {
  margin-top: -34px !important;
  padding-top: 132px !important;
  background:
    linear-gradient(180deg,
      #F1E8E0 0%,
      #F4EADF 42%,
      #F1E8E0 100%) !important;
}

@media(max-width:760px) {
  .cta-panel::after {
    bottom: -62px;
    height: 86px;
  }

  .contact {
    margin-top: -20px !important;
    padding-top: 92px !important;
  }
}



/* Actual website horizontal logo update */
.site-header {
  height: 230px !important;
  padding: 10px clamp(20px, 4vw, 72px) 54px !important;
  background:
    linear-gradient(180deg,
      #F1E8E0 0%,
      rgba(241,232,224,1) 36%,
      rgba(241,232,224,.88) 66%,
      rgba(241,232,224,.36) 88%,
      rgba(241,232,224,0) 100%) !important;
  border-bottom: 0 !important;
}

.logo {
  display: flex !important;
  align-items: center !important;
  position: relative !important;
  z-index: 10 !important;
}

.logo::before {
  content: "";
  position: absolute;
  inset: -70px -120px;
  background:
    radial-gradient(
      ellipse at center,
      rgba(241,232,224,1) 0%,
      rgba(241,232,224,.96) 32%,
      rgba(241,232,224,.68) 60%,
      rgba(241,232,224,0) 88%
    );
  z-index: -1;
  pointer-events: none;
}

.logo img {
  height: 205px !important;
  width: auto !important;
  max-width: 1320px !important;
  object-fit: contain !important;
  filter: contrast(1.05) saturate(.96) brightness(.99) !important;
  mix-blend-mode: normal !important;
  opacity: 1 !important;
}

.site-nav {
  margin-top: 42px !important;
}

.hero {
  padding-top: 308px !important;
}

/* Footer horizontal logo update */
footer {
  background:
    linear-gradient(180deg,
      rgba(241,232,224,0) 0%,
      rgba(241,232,224,.88) 24%,
      #F1E8E0 48%,
      #F1E8E0 100%) !important;
  padding-top: 92px !important;
  padding-bottom: 76px !important;
  position: relative !important;
}

footer::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(
      ellipse at left center,
      rgba(241,232,224,1) 0%,
      rgba(241,232,224,.72) 58%,
      rgba(241,232,224,0) 92%
    );
  pointer-events: none;
}

footer img {
  height: 190px !important;
  width: auto !important;
  max-width: 960px !important;
  object-fit: contain !important;
  position: relative !important;
  z-index: 2 !important;
  filter: contrast(1.05) saturate(.96) brightness(.99) !important;
}

footer nav,
.footer-links {
  position: relative !important;
  z-index: 2 !important;
}

@media(max-width: 980px) {
  .site-header {
    height: 165px !important;
    padding: 10px 22px 28px !important;
  }

  .logo img {
    height: 138px !important;
    max-width: 760px !important;
  }

  .site-nav {
    margin-top: 0 !important;
  }

  .hero {
    padding-top: 235px !important;
  }

  footer img {
    height: 130px !important;
    max-width: 640px !important;
  }
}

@media(max-width: 760px) {
  .site-header {
    height: 122px !important;
    padding: 8px 18px 18px !important;
  }

  .logo::before {
    inset: -34px -52px;
  }

  .logo img {
    height: 92px !important;
    max-width: 420px !important;
  }

  .hero {
    padding-top: 180px !important;
  }

  footer {
    padding-top: 56px !important;
  }

  footer img {
    height: 92px !important;
    max-width: 420px !important;
  }
}



/* Massive seamless luxury logo treatment */

.site-header {
  height: 285px !important;
  padding: 0 clamp(18px, 4vw, 72px) 64px !important;

  background: #F1E8E0 !important;
  border: 0 !important;
  box-shadow: none !important;
}

.logo {
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  z-index: 12 !important;
}

.logo::before {
  content: "";
  position: absolute;
  inset: -90px -170px;

  background:
    radial-gradient(
      ellipse at center,
      rgba(241,232,224,1) 0%,
      rgba(241,232,224,.995) 28%,
      rgba(241,232,224,.92) 48%,
      rgba(241,232,224,.58) 68%,
      rgba(241,232,224,.12) 86%,
      rgba(241,232,224,0) 96%
    );

  z-index: -1;
  pointer-events: none;
}

.logo img {
  height: 255px !important;
  max-width: 1650px !important;
  width: auto !important;

  object-fit: contain !important;

  filter:
    contrast(1.08)
    saturate(.92)
    brightness(.99);

  mix-blend-mode: normal !important;
  opacity: 1 !important;

  transform: translateY(8px);
}

/* Navigation positioned below oversized logo */
.site-nav {
  margin-top: 58px !important;
}

.site-nav a {
  font-size: 10px !important;
  letter-spacing: .18em !important;
}

/* Hero spacing */
.hero {
  padding-top: 360px !important;
}

/* Footer seamless logo */
footer {
  background: #F1E8E0 !important;

  padding-top: 118px !important;
  padding-bottom: 88px !important;

  border: 0 !important;
  box-shadow: none !important;

  position: relative !important;
}

footer::before {
  content: "";
  position: absolute;
  inset: 0;

  background:
    radial-gradient(
      ellipse at left center,
      rgba(241,232,224,1) 0%,
      rgba(241,232,224,.84) 48%,
      rgba(241,232,224,.28) 72%,
      rgba(241,232,224,0) 92%
    );

  pointer-events: none;
}

footer img {
  height: 245px !important;
  max-width: 1250px !important;
  width: auto !important;

  object-fit: contain !important;

  filter:
    contrast(1.08)
    saturate(.92)
    brightness(.99);

  mix-blend-mode: normal !important;

  position: relative !important;
  z-index: 3 !important;
}

/* Ensure no outlines or artifacts */
.logo img,
footer img {
  background: transparent !important;
  border: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
}

/* Tablet */
@media(max-width:980px) {

  .site-header {
    height: 198px !important;
    padding: 4px 22px 34px !important;
  }

  .logo::before {
    inset: -54px -96px;
  }

  .logo img {
    height: 165px !important;
    max-width: 940px !important;
  }

  .site-nav {
    margin-top: 12px !important;
  }

  .hero {
    padding-top: 265px !important;
  }

  footer img {
    height: 158px !important;
    max-width: 760px !important;
  }
}

/* Mobile */
@media(max-width:760px) {

  .site-header {
    height: 138px !important;
    padding: 4px 16px 18px !important;
  }

  .logo::before {
    inset: -34px -58px;
  }

  .logo img {
    height: 102px !important;
    max-width: 520px !important;
  }

  .site-nav {
    margin-top: 0 !important;
  }

  .hero {
    padding-top: 198px !important;
  }

  footer {
    padding-top: 64px !important;
  }

  footer img {
    height: 102px !important;
    max-width: 520px !important;
  }
}



/* Lighter seamless header/footer background refinement */

.site-header {
  background:
    linear-gradient(180deg,
      #F6EFE8 0%,
      #F4ECE5 38%,
      rgba(244,236,229,.92) 68%,
      rgba(244,236,229,.28) 90%,
      rgba(244,236,229,0) 100%) !important;
}

.logo::before {
  background:
    radial-gradient(
      ellipse at center,
      rgba(246,239,232,1) 0%,
      rgba(246,239,232,.98) 34%,
      rgba(246,239,232,.78) 58%,
      rgba(246,239,232,.18) 84%,
      rgba(246,239,232,0) 96%
    ) !important;
}

footer {
  background:
    linear-gradient(180deg,
      #F6EFE8 0%,
      #F4ECE5 100%) !important;
}

footer::before {
  background:
    radial-gradient(
      ellipse at left center,
      rgba(246,239,232,.96) 0%,
      rgba(246,239,232,.54) 56%,
      rgba(246,239,232,0) 90%
    ) !important;
}



/* Elongated oversized horizontal logo treatment */

.site-header {
  height: 325px !important;
  padding: 0 clamp(16px, 3vw, 68px) 72px !important;

  background:
    linear-gradient(180deg,
      #F6EFE8 0%,
      #F4ECE5 42%,
      rgba(244,236,229,.86) 72%,
      rgba(244,236,229,.22) 92%,
      rgba(244,236,229,0) 100%) !important;
}

.logo {
  width: 100% !important;
  justify-content: flex-start !important;
}

.logo::before {
  inset: -110px -210px !important;

  background:
    radial-gradient(
      ellipse at left center,
      rgba(246,239,232,1) 0%,
      rgba(246,239,232,.99) 28%,
      rgba(246,239,232,.82) 54%,
      rgba(246,239,232,.32) 78%,
      rgba(246,239,232,0) 94%
    ) !important;
}

.logo img {
  height: 285px !important;
  max-width: 1850px !important;
  width: auto !important;

  object-fit: contain !important;

  transform: translateY(10px);

  filter:
    contrast(1.08)
    saturate(.92)
    brightness(.99);
}

/* Push nav below logo visually */
.site-nav {
  margin-top: 74px !important;
  gap: 18px !important;
}

.hero {
  padding-top: 408px !important;
}

/* Massive footer logo */
footer {
  padding-top: 132px !important;
  padding-bottom: 96px !important;

  background:
    linear-gradient(180deg,
      #F6EFE8 0%,
      #F4ECE5 100%) !important;
}

footer::before {
  background:
    radial-gradient(
      ellipse at left center,
      rgba(246,239,232,1) 0%,
      rgba(246,239,232,.72) 58%,
      rgba(246,239,232,.18) 82%,
      rgba(246,239,232,0) 94%
    ) !important;
}

footer img {
  height: 275px !important;
  max-width: 1500px !important;
  width: auto !important;

  object-fit: contain !important;

  filter:
    contrast(1.08)
    saturate(.92)
    brightness(.99);
}

/* Tablet */
@media(max-width:980px) {

  .site-header {
    height: 225px !important;
    padding: 0 22px 42px !important;
  }

  .logo::before {
    inset: -60px -110px !important;
  }

  .logo img {
    height: 190px !important;
    max-width: 1100px !important;
  }

  .site-nav {
    margin-top: 24px !important;
  }

  .hero {
    padding-top: 305px !important;
  }

  footer img {
    height: 185px !important;
    max-width: 980px !important;
  }
}

/* Mobile */
@media(max-width:760px) {

  .site-header {
    height: 155px !important;
    padding: 0 14px 18px !important;
  }

  .logo::before {
    inset: -36px -62px !important;
  }

  .logo img {
    height: 120px !important;
    max-width: 640px !important;
  }

  .site-nav {
    margin-top: 6px !important;
  }

  .hero {
    padding-top: 225px !important;
  }

  footer {
    padding-top: 72px !important;
  }

  footer img {
    height: 118px !important;
    max-width: 620px !important;
  }
}



/* Balanced centered logo header/footer refinement */

.site-header {
  height: 245px !important;
  padding: 18px clamp(22px, 4vw, 72px) 42px !important;

  display: grid !important;
  grid-template-columns: 1fr !important;
  grid-template-rows: auto auto !important;
  justify-items: center !important;
  align-items: center !important;
  gap: 10px !important;

  background:
    linear-gradient(180deg,
      #F6EFE8 0%,
      #F6EFE8 48%,
      rgba(246,239,232,.86) 74%,
      rgba(246,239,232,.24) 92%,
      rgba(246,239,232,0) 100%) !important;

  border: 0 !important;
  box-shadow: none !important;
}

.logo {
  width: 100% !important;
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  position: relative !important;
}

.logo::before {
  content: "";
  position: absolute;
  inset: -54px -120px;

  background:
    radial-gradient(
      ellipse at center,
      rgba(246,239,232,1) 0%,
      rgba(246,239,232,.98) 34%,
      rgba(246,239,232,.72) 62%,
      rgba(246,239,232,.16) 86%,
      rgba(246,239,232,0) 96%
    ) !important;

  z-index: -1;
  pointer-events: none;
}

.logo img {
  height: 185px !important;
  max-width: min(1120px, 88vw) !important;
  width: auto !important;

  object-fit: contain !important;
  transform: none !important;

  filter:
    contrast(1.06)
    saturate(.94)
    brightness(.995) !important;

  mix-blend-mode: normal !important;
}

/* Navigation centered below logo */
.site-nav {
  width: 100% !important;
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  gap: clamp(14px, 2vw, 28px) !important;
  margin-top: -8px !important;
  position: relative !important;
  z-index: 20 !important;
}

.site-nav a {
  font-size: 11px !important;
  letter-spacing: .14em !important;
}

/* Restore balanced hero spacing after header correction */
.hero {
  padding-top: 300px !important;
  min-height: 730px !important;
}

/* Footer centered logo */
footer {
  display: grid !important;
  grid-template-columns: 1fr !important;
  justify-items: center !important;
  text-align: center !important;
  gap: 22px !important;

  padding-top: 86px !important;
  padding-bottom: 70px !important;

  background:
    linear-gradient(180deg,
      rgba(246,239,232,0) 0%,
      rgba(246,239,232,.72) 18%,
      #F6EFE8 42%,
      #F6EFE8 100%) !important;

  border: 0 !important;
  box-shadow: none !important;
}

footer::before {
  background:
    radial-gradient(
      ellipse at center,
      rgba(246,239,232,1) 0%,
      rgba(246,239,232,.72) 56%,
      rgba(246,239,232,.14) 84%,
      rgba(246,239,232,0) 96%
    ) !important;
}

footer img {
  height: 170px !important;
  max-width: min(940px, 86vw) !important;
  width: auto !important;
  object-fit: contain !important;
}

footer nav,
.footer-links {
  justify-content: center !important;
}

/* Tablet */
@media(max-width:980px) {
  .site-header {
    height: 205px !important;
    padding: 14px 22px 34px !important;
  }

  .logo img {
    height: 145px !important;
    max-width: 86vw !important;
  }

  .site-nav {
    margin-top: -2px !important;
    gap: 16px !important;
  }

  .hero {
    padding-top: 260px !important;
  }

  footer img {
    height: 130px !important;
  }
}

/* Mobile */
@media(max-width:760px) {
  .site-header {
    height: 148px !important;
    padding: 10px 16px 20px !important;
  }

  .logo::before {
    inset: -32px -54px !important;
  }

  .logo img {
    height: 92px !important;
    max-width: 88vw !important;
  }

  .site-nav {
    margin-top: 0 !important;
  }

  .hero {
    padding-top: 205px !important;
    min-height: 640px !important;
  }

  footer {
    padding-top: 58px !important;
  }

  footer img {
    height: 90px !important;
  }
}


/* Cleaner transparent oversized logo treatment */

.site-header {
  height: 270px !important;
  padding: 10px clamp(20px, 4vw, 70px) 46px !important;
  background:
    linear-gradient(180deg,
      #F7F1EB 0%,
      #F5EEE8 48%,
      rgba(245,238,232,.78) 78%,
      rgba(245,238,232,0) 100%) !important;
}

.logo::before {
  display: none !important;
}

.logo img {
  height: 220px !important;
  max-width: min(1320px, 92vw) !important;
  width: auto !important;
  background: transparent !important;
  box-shadow: none !important;
  border: 0 !important;
  outline: 0 !important;

  filter:
    contrast(1.08)
    saturate(.95)
    brightness(.98) !important;
}

.site-nav {
  margin-top: -2px !important;
}

.hero {
  padding-top: 320px !important;
}

/* Footer */
footer {
  background:
    linear-gradient(180deg,
      rgba(247,241,235,0) 0%,
      rgba(247,241,235,.68) 18%,
      #F7F1EB 42%,
      #F7F1EB 100%) !important;

  padding-top: 92px !important;
  padding-bottom: 72px !important;
}

footer::before {
  display: none !important;
}

footer img {
  height: 205px !important;
  max-width: min(1120px, 90vw) !important;
  width: auto !important;
  background: transparent !important;
  box-shadow: none !important;
  border: 0 !important;
  outline: 0 !important;

  filter:
    contrast(1.08)
    saturate(.95)
    brightness(.98) !important;
}

@media(max-width:980px) {

  .site-header {
    height: 215px !important;
  }

  .logo img {
    height: 165px !important;
  }

  .hero {
    padding-top: 270px !important;
  }

  footer img {
    height: 150px !important;
  }
}

@media(max-width:760px) {

  .site-header {
    height: 155px !important;
    padding: 8px 14px 20px !important;
  }

  .logo img {
    height: 108px !important;
    max-width: 92vw !important;
  }

  .hero {
    padding-top: 215px !important;
  }

  footer {
    padding-top: 62px !important;
  }

  footer img {
    height: 102px !important;
  }
}


/* Ultra prominent editorial logo */

.site-header {
  height: 335px !important;
  padding: 6px clamp(14px, 3vw, 60px) 54px !important;

  background:
    linear-gradient(180deg,
      #F8F3EE 0%,
      #F7F1EB 52%,
      rgba(247,241,235,.74) 82%,
      rgba(247,241,235,0) 100%) !important;
}

.logo {
  width: 100% !important;
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
}

.logo img {
  height: 285px !important;
  max-width: min(1650px, 96vw) !important;
  width: auto !important;

  object-fit: contain !important;

  filter:
    contrast(1.1)
    saturate(.96)
    brightness(.985) !important;
}

/* Push nav lower to support dominant logo */
.site-nav {
  margin-top: 18px !important;
  gap: clamp(12px, 1.8vw, 28px) !important;
}

.site-nav a {
  font-size: 10px !important;
  letter-spacing: .16em !important;
}

.hero {
  padding-top: 392px !important;
  min-height: 760px !important;
}

/* Footer logo prominence */
footer {
  padding-top: 118px !important;
  padding-bottom: 88px !important;

  background:
    linear-gradient(180deg,
      rgba(248,243,238,0) 0%,
      rgba(248,243,238,.62) 18%,
      #F8F3EE 44%,
      #F8F3EE 100%) !important;
}

footer img {
  height: 255px !important;
  max-width: min(1450px, 94vw) !important;
  width: auto !important;

  object-fit: contain !important;

  filter:
    contrast(1.1)
    saturate(.96)
    brightness(.985) !important;
}

/* Tablet */
@media(max-width:980px) {

  .site-header {
    height: 245px !important;
    padding: 8px 20px 34px !important;
  }

  .logo img {
    height: 195px !important;
    max-width: 94vw !important;
  }

  .hero {
    padding-top: 305px !important;
  }

  footer img {
    height: 180px !important;
  }
}

/* Mobile */
@media(max-width:760px) {

  .site-header {
    height: 172px !important;
    padding: 8px 12px 18px !important;
  }

  .logo img {
    height: 128px !important;
    max-width: 96vw !important;
  }

  .site-nav {
    margin-top: 2px !important;
  }

  .hero {
    padding-top: 238px !important;
    min-height: 650px !important;
  }

  footer {
    padding-top: 72px !important;
  }

  footer img {
    height: 122px !important;
  }
}


/* Move navigation closer to oversized logo */

.site-header {
  row-gap: 0 !important;
  padding-bottom: 34px !important;
}

.site-nav {
  margin-top: -26px !important;
  gap: clamp(12px, 1.6vw, 24px) !important;

  position: relative !important;
  z-index: 20 !important;
}

.site-nav a {
  font-size: 10px !important;
  letter-spacing: .15em !important;
}

.hero {
  padding-top: 360px !important;
}

/* Tablet */
@media(max-width:980px) {

  .site-nav {
    margin-top: -18px !important;
  }

  .hero {
    padding-top: 285px !important;
  }
}

/* Mobile */
@media(max-width:760px) {

  .site-nav {
    margin-top: -8px !important;
    gap: 12px !important;
  }

  .hero {
    padding-top: 222px !important;
  }
}



/* Replace hero image with attached custom brand image */
.hero {
  background:
    linear-gradient(90deg,
      rgba(248,243,238,.98) 0%,
      rgba(248,243,238,.88) 34%,
      rgba(248,243,238,.44) 62%,
      rgba(248,243,238,.08) 100%),
    url("assets/hero-background-final.png") !important;

  background-size: cover !important;
  background-position: center right !important;
  background-repeat: no-repeat !important;
}

/* Softer bottom fade from new hero image into next section */
.hero::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -1px;
  height: 170px;
  background:
    linear-gradient(to bottom,
      rgba(248,243,238,0) 0%,
      rgba(248,243,238,.44) 48%,
      #F8F3EE 100%) !important;
  pointer-events: none;
  z-index: 3;
}

@media(max-width: 760px) {
  .hero {
    background:
      linear-gradient(90deg,
        rgba(248,243,238,.98) 0%,
        rgba(248,243,238,.84) 58%,
        rgba(248,243,238,.28) 100%),
      url("assets/hero-background-final.png") !important;

    background-size: cover !important;
    background-position: center !important;
  }
}



/* Keep the bottom fade only; never place a top overlay above the header */
.hero::before {
  display: none !important;
  content: none !important;
}

.hero::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -1px;
  height: 180px;
  background:
    linear-gradient(to bottom,
      rgba(248,243,238,0) 0%,
      rgba(248,243,238,.42) 52%,
      #F8F3EE 100%) !important;
  pointer-events: none;
  z-index: 2;
}

.hero-copy {
  position: relative !important;
  z-index: 3 !important;
}

@media(max-width: 980px) {
  .hero {
    background-size: auto 108%, auto 108%, auto 122% !important;
    background-position: 64% center !important;
  }
}

@media(max-width: 760px) {
  .hero {
    background:
      linear-gradient(180deg,
        #F8F3EE 0%,
        rgba(248,243,238,.78) 12%,
        rgba(248,243,238,.18) 32%,
        rgba(248,243,238,.18) 70%,
        rgba(248,243,238,.62) 90%,
        #F8F3EE 100%),
      linear-gradient(90deg,
        #F8F3EE 0%,
        rgba(248,243,238,.40) 12%,
        rgba(248,243,238,0) 34%,
        rgba(248,243,238,0) 66%,
        rgba(248,243,238,.40) 88%,
        #F8F3EE 100%),
      url("assets/hero-background-final.png") !important;

    background-size: auto 104%, auto 104%, auto 104% !important;
    background-position: 64% center !important;
    background-repeat: no-repeat !important;
  }

  .hero::after {
    height: 110px;
  }
}



/* Compact left-aligned header refinement */
.site-header,
header {
  padding-top: 6px !important;
  padding-bottom: 6px !important;
  min-height: 64px !important;
}

.header-inner,
.nav-container,
.container.header-container {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 18px !important;
}

.logo,
.site-logo,
.nav-logo {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  margin-right: auto !important;
}

.logo img,
.site-logo img,
.nav-logo img {
  max-height: 48px !important;
  width: auto !important;
  object-fit: contain !important;
}

nav ul,
.nav-links {
  gap: 20px !important;
}

@media(max-width: 760px) {
  .site-header,
  header {
    min-height: 56px !important;
    padding-top: 4px !important;
    padding-bottom: 4px !important;
  }

  .logo img,
  .site-logo img,
  .nav-logo img {
    max-height: 40px !important;
  }
}


/* Revised header: thinner, moved upward, larger left logo */
.site-header {
  height: 82px !important;
  min-height: 82px !important;
  padding: 4px clamp(22px, 4vw, 64px) 6px !important;

  display: flex !important;
  align-items: flex-start !important;
  justify-content: space-between !important;

  background:
    linear-gradient(180deg,
      rgba(248,243,238,.94) 0%,
      rgba(248,243,238,.76) 72%,
      rgba(248,243,238,0) 100%) !important;

  z-index: 1000 !important;
}

.logo {
  justify-content: flex-start !important;
  align-items: flex-start !important;
  margin-right: auto !important;
  height: auto !important;
  width: auto !important;
  transform: translateY(-10px);
}

.logo img {
  height: 96px !important;
  max-height: none !important;
  max-width: 420px !important;
  width: auto !important;
  object-fit: contain !important;
}

.site-nav {
  margin-top: 18px !important;
  align-self: flex-start !important;
}

.hero {
  padding-top: 150px !important;
}

@media(max-width: 980px) {
  .site-header {
    height: 76px !important;
    min-height: 76px !important;
    padding: 4px 22px 6px !important;
    align-items: flex-start !important;
  }

  .logo {
    transform: translateY(-8px);
  }

  .logo img {
    height: 86px !important;
    max-width: 360px !important;
  }

  .site-nav {
    top: 76px !important;
    margin-top: 0 !important;
  }

  .hero {
    padding-top: 136px !important;
  }
}

@media(max-width: 760px) {
  .site-header {
    height: 68px !important;
    min-height: 68px !important;
    padding: 3px 16px 5px !important;
  }

  .logo {
    transform: translateY(-7px);
  }

  .logo img {
    height: 76px !important;
    max-width: 310px !important;
  }

  .hero {
    padding-top: 124px !important;
  }
}


/* Final hero revision: full-bleed sunny workplace background, right aligned, no boxed image edge */
.hero {
  position: relative !important;
  overflow: hidden !important;
  isolation: isolate !important;

  background-image:
    radial-gradient(ellipse at 18% 48%,
      #F8F3EE 0%,
      rgba(248,243,238,.96) 24%,
      rgba(248,243,238,.68) 42%,
      rgba(248,243,238,.28) 58%,
      rgba(248,243,238,0) 74%),
    linear-gradient(90deg,
      #F8F3EE 0%,
      rgba(248,243,238,.84) 14%,
      rgba(248,243,238,.46) 30%,
      rgba(248,243,238,.12) 48%,
      rgba(248,243,238,0) 64%),
    linear-gradient(180deg,
      rgba(248,243,238,.48) 0%,
      rgba(248,243,238,.10) 22%,
      rgba(248,243,238,0) 56%,
      rgba(248,243,238,.20) 84%,
      #F8F3EE 100%),
    url("assets/hero-background-final.png") !important;

  background-size:
    82% 112%,
    100% 100%,
    100% 100%,
    cover !important;

  background-position:
    left center,
    left center,
    center center,
    78% center !important;

  background-repeat: no-repeat !important;
  background-color: #F8F3EE !important;
}

/* Remove any top overlay that can make the image look boxed under the header */
.hero::before {
  display: none !important;
  content: none !important;
}

/* Blend hero naturally into the next section */
.hero::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -1px;
  height: 180px;
  background:
    linear-gradient(to bottom,
      rgba(248,243,238,0) 0%,
      rgba(248,243,238,.22) 44%,
      rgba(248,243,238,.72) 78%,
      #F8F3EE 100%) !important;
  pointer-events: none;
  z-index: 2;
}

.hero-copy {
  position: relative !important;
  z-index: 3 !important;
}

/* Let the hero sit closer to the mockup, with image filling the right side instead of appearing as a rectangle */
@media(min-width: 981px) {
  .hero {
    background-size:
      82% 112%,
      100% 100%,
      100% 100%,
      auto 134% !important;

    background-position:
      left center,
      left center,
      center center,
      60% center !important;
  }
}

@media(max-width: 980px) {
  .hero {
    background-position:
      left center,
      left center,
      center center,
      64% center !important;

    background-size:
      90% 112%,
      100% 100%,
      100% 100%,
      auto 122% !important;
  }
}

@media(max-width: 760px) {
  .hero {
    background-image:
      linear-gradient(90deg,
        #F8F3EE 0%,
        rgba(248,243,238,.94) 34%,
        rgba(248,243,238,.56) 62%,
        rgba(248,243,238,.18) 100%),
      linear-gradient(180deg,
        rgba(248,243,238,.56) 0%,
        rgba(248,243,238,.10) 34%,
        rgba(248,243,238,.36) 86%,
        #F8F3EE 100%),
      url("assets/hero-background-final.png") !important;

    background-size:
      100% 100%,
      100% 100%,
      auto 104% !important;

    background-position:
      left center,
      center center,
      60% center !important;
  }

  .hero::after {
    height: 110px;
  }
}


/* Final hero background replacement: uploaded sunny workplace image */
.hero {
  position: relative !important;
  overflow: hidden !important;
  isolation: isolate !important;

  background-image:
    radial-gradient(ellipse at 18% 48%,
      #F8F3EE 0%,
      rgba(248,243,238,.92) 24%,
      rgba(248,243,238,.58) 42%,
      rgba(248,243,238,.22) 58%,
      rgba(248,243,238,0) 74%),
    linear-gradient(90deg,
      #F8F3EE 0%,
      rgba(248,243,238,.88) 16%,
      rgba(248,243,238,.52) 31%,
      rgba(248,243,238,.18) 48%,
      rgba(248,243,238,0) 66%),
    linear-gradient(180deg,
      rgba(248,243,238,.34) 0%,
      rgba(248,243,238,.06) 22%,
      rgba(248,243,238,0) 58%,
      rgba(248,243,238,.22) 86%,
      #F8F3EE 100%),
    url("assets/hero-background-final.png") !important;

  background-size:
    80% 112%,
    100% 100%,
    100% 100%,
    cover !important;

  background-position:
    left center,
    left center,
    center center,
    82% center !important;

  background-repeat: no-repeat !important;
  background-color: #F8F3EE !important;
}

.hero::before {
  display: none !important;
  content: none !important;
}

.hero::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -1px;
  height: 170px;
  background:
    linear-gradient(to bottom,
      rgba(248,243,238,0) 0%,
      rgba(248,243,238,.28) 48%,
      #F8F3EE 100%) !important;
  pointer-events: none;
  z-index: 2;
}

.hero-copy {
  position: relative !important;
  z-index: 3 !important;
}

@media(max-width: 980px) {
  .hero {
    background-position:
      left center,
      left center,
      center center,
      86% center !important;
  }
}

@media(max-width: 760px) {
  .hero {
    background-image:
      linear-gradient(90deg,
        #F8F3EE 0%,
        rgba(248,243,238,.90) 30%,
        rgba(248,243,238,.54) 58%,
        rgba(248,243,238,.16) 100%),
      linear-gradient(180deg,
        rgba(248,243,238,.42) 0%,
        rgba(248,243,238,.08) 34%,
        rgba(248,243,238,.32) 86%,
        #F8F3EE 100%),
      url("assets/hero-background-final.png") !important;

    background-size:
      100% 100%,
      100% 100%,
      auto 104% !important;

    background-position:
      left center,
      center center,
      78% center !important;
  }

  .hero::after {
    height: 110px;
  }
}


/* Enlarged highly visible header logo */
.logo,
.site-logo,
.nav-logo {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  margin-right: auto !important;
}

.logo img,
.site-logo img,
.nav-logo img {
  height: 128px !important;
  max-height: none !important;
  max-width: 520px !important;
  width: auto !important;
  object-fit: contain !important;
  display: block !important;
  filter: drop-shadow(0 4px 10px rgba(0,0,0,0.08));
}

.site-header,
header {
  min-height: 96px !important;
  height: 96px !important;
  padding-top: 2px !important;
  padding-bottom: 2px !important;
}

.hero {
  padding-top: 168px !important;
}

@media(max-width: 980px) {
  .logo img,
  .site-logo img,
  .nav-logo img {
    height: 104px !important;
    max-width: 420px !important;
  }

  .site-header,
  header {
    min-height: 86px !important;
    height: 86px !important;
  }

  .hero {
    padding-top: 150px !important;
  }
}

@media(max-width: 760px) {
  .logo img,
  .site-logo img,
  .nav-logo img {
    height: 84px !important;
    max-width: 320px !important;
  }

  .site-header,
  header {
    min-height: 74px !important;
    height: 74px !important;
  }

  .hero {
    padding-top: 132px !important;
  }
}



/* Final header alignment + enlarged branding */
.site-header,
header {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  min-height: 112px !important;
  height: 112px !important;
  padding: 0 42px !important;
}

.header-inner,
.nav-container,
.container.header-container {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  width: 100% !important;
  gap: 24px !important;
}

.logo,
.site-logo,
.nav-logo {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  flex: 0 0 auto !important;
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1 !important;
}

.logo img,
.site-logo img,
.nav-logo img {
  display: block !important;
  height: 148px !important;
  width: auto !important;
  max-width: 620px !important;
  object-fit: contain !important;
}

nav,
.site-nav,
.nav-links {
  display: flex !important;
  align-items: center !important;
}

.hero {
  padding-top: 178px !important;
}

@media(max-width: 980px) {
  .site-header,
  header {
    min-height: 96px !important;
    height: 96px !important;
    padding: 0 24px !important;
  }

  .logo img,
  .site-logo img,
  .nav-logo img {
    height: 118px !important;
    max-width: 480px !important;
  }

  .hero {
    padding-top: 154px !important;
  }
}

@media(max-width: 760px) {
  .site-header,
  header {
    min-height: 82px !important;
    height: 82px !important;
    padding: 0 16px !important;
  }

  .logo img,
  .site-logo img,
  .nav-logo img {
    height: 92px !important;
    max-width: 340px !important;
  }

  .hero {
    padding-top: 132px !important;
  }
}


/* Updated Our Approach image */
.approach-image {
  min-height: 560px !important;
  border-radius: 6px !important;
  background:
    linear-gradient(rgba(255,255,255,.05), rgba(255,255,255,.05)),
    url("assets/approach-team-working.png") !important;
  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
  box-shadow: 0 24px 48px rgba(70,50,28,.10) !important;
}

@media(max-width: 1100px) {
  .approach-image {
    min-height: 400px !important;
  }
}

@media(max-width: 760px) {
  .approach-image {
    min-height: 300px !important;
  }
}


/* Updated Why It Works section image */
.why-faq-image {
  background:
    linear-gradient(rgba(255,255,255,.08), rgba(255,255,255,.08)),
    url("assets/personalized-game-plan-faq-centered.png") !important;

  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
}



/* Larger terra-cotta section headlines */
.section-kicker,
.section-label,
.eyebrow,
.home-services .section-intro h2,
.approach-editorial h2,
.how-work h2,
.why-faq h2,
.contact h2,
.cta-summary h2 {
  font-size: clamp(1.7rem, 2.8vw, 2.7rem) !important;
  line-height: 1.08 !important;
  letter-spacing: -0.03em !important;
  color: #3F4F2F !important;
  font-weight: 700 !important;
}

.home-service-content h3,
.process-card h3,
.faq-item h3 {
  font-size: clamp(1.05rem, 1.6vw, 1.35rem) !important;
  color: #3F4F2F !important;
}

@media(max-width: 760px) {
  .section-kicker,
  .section-label,
  .eyebrow,
  .home-services .section-intro h2,
  .approach-editorial h2,
  .how-work h2,
  .why-faq h2,
  .contact h2,
  .cta-summary h2 {
    font-size: clamp(1.5rem, 6vw, 2.2rem) !important;
  }
}


/* Refined section headline sizing: smaller and aligned with description typography */
.section-kicker,
.section-label,
.eyebrow,
.approach-editorial h2,
.services-heading h2,
.how-work h2,
.why-faq-content h2,
.contact h2,
.cta-summary h2 {
  font-family: "Cormorant Garamond", serif !important;
  font-size: clamp(1.45rem, 2.15vw, 2.15rem) !important;
  line-height: 1.18 !important;
  letter-spacing: -0.015em !important;
  font-weight: 500 !important;
  color: #3F4F2F !important;
}

/* Keep small eyebrow labels subtle instead of oversized */
.eyebrow,
.how-eyebrow {
  font-family: "Inter", sans-serif !important;
  font-size: 11px !important;
  line-height: 1.35 !important;
  letter-spacing: .16em !important;
  font-weight: 800 !important;
  color: #3F4F2F !important;
}

/* Service/process card titles scaled down to pair with body description text */
.home-service-content h3,
.process-card h3,
.faq-editorial summary {
  font-family: "Cormorant Garamond", serif !important;
  font-size: clamp(1.15rem, 1.45vw, 1.45rem) !important;
  line-height: 1.12 !important;
  letter-spacing: -0.015em !important;
  font-weight: 600 !important;
}

/* Preserve description/body font sizing for visual consistency */
.hero p,
.intro,
.services-heading p,
.how-work-copy p,
.contact-copy p,
.why-faq .intro,
.cta-summary p,
.home-service-content p,
.process-card p,
.faq-editorial p,
details p {
  font-family: "Cormorant Garamond", serif !important;
  font-size: 18px !important;
  line-height: 1.5 !important;
  font-weight: 500 !important;
}

@media(max-width: 760px) {
  .approach-editorial h2,
  .services-heading h2,
  .how-work h2,
  .why-faq-content h2,
  .contact h2,
  .cta-summary h2 {
    font-size: clamp(1.35rem, 5.5vw, 1.9rem) !important;
  }

  .home-service-content h3,
  .process-card h3,
  .faq-editorial summary {
    font-size: 1.15rem !important;
  }

  .hero p,
  .intro,
  .services-heading p,
  .how-work-copy p,
  .contact-copy p,
  .why-faq .intro,
  .cta-summary p,
  .home-service-content p,
  .process-card p,
  .faq-editorial p,
  details p {
    font-size: 16px !important;
  }
}



/* Enhanced hero blending into header and lower sections */
.hero {
  position: relative !important;
  overflow: hidden !important;
}

/* Soft top blend into header/navigation */
.hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(
      to bottom,
      rgba(248,243,238,.92) 0%,
      rgba(248,243,238,.68) 8%,
      rgba(248,243,238,.34) 18%,
      rgba(248,243,238,0) 34%
    ) !important;
  pointer-events: none;
  z-index: 1;
}

/* Stronger lower fade into next section */
.hero::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -2px;
  height: 240px;
  background:
    linear-gradient(
      to bottom,
      rgba(248,243,238,0) 0%,
      rgba(248,243,238,.18) 32%,
      rgba(248,243,238,.56) 68%,
      #F8F3EE 100%
    ) !important;
  pointer-events: none;
  z-index: 2;
}

/* Ensure hero content remains above blending overlays */
.hero-copy,
.hero-content,
.hero-inner {
  position: relative !important;
  z-index: 3 !important;
}

@media(max-width: 760px) {
  .hero::before {
    background:
      linear-gradient(
        to bottom,
        rgba(248,243,238,.94) 0%,
        rgba(248,243,238,.74) 12%,
        rgba(248,243,238,.28) 28%,
        rgba(248,243,238,0) 44%
      ) !important;
  }

  .hero::after {
    height: 140px;
  }
}



/* Brand voice divider bars between sections */
.section,
.approach-editorial,
.home-services,
.how-work,
.why-faq,
.contact,
.cta-summary {
  position: relative !important;
}

/* Elegant separator line */
.section::before,
.approach-editorial::before,
.home-services::before,
.how-work::before,
.why-faq::before,
.contact::before,
.cta-summary::before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: min(180px, 42%);
  height: 2px;
  background: linear-gradient(
    90deg,
    rgba(63,79,47,0) 0%,
    rgba(63,79,47,.22) 12%,
    rgba(197,106,67,.75) 50%,
    rgba(63,79,47,.22) 88%,
    rgba(63,79,47,0) 100%
  );
  border-radius: 999px;
  opacity: .92;
}

/* Extra spacing for sections so dividers breathe */
.approach-editorial,
.home-services,
.how-work,
.why-faq,
.contact,
.cta-summary {
  padding-top: 88px !important;
}

@media(max-width: 760px) {
  .section::before,
  .approach-editorial::before,
  .home-services::before,
  .how-work::before,
  .why-faq::before,
  .contact::before,
  .cta-summary::before {
    width: 110px;
  }

  .approach-editorial,
  .home-services,
  .how-work,
  .why-faq,
  .contact,
  .cta-summary {
    padding-top: 64px !important;
  }
}



/* Visible branded section divider bars */
.brand-divider-bar {
  width: 100%;
  background: #C56A43;
  padding: 18px 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  overflow: hidden;
}

.brand-divider-bar span {
  color: #FFFFFF;
  font-family: "Inter", sans-serif;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .32em;
  text-transform: uppercase;
  line-height: 1.2;
}

@media(max-width: 760px) {
  .brand-divider-bar {
    padding: 14px 12px;
  }

  .brand-divider-bar span {
    font-size: 10px;
    letter-spacing: .18em;
  }
}




/* ACTUAL FULL-WIDTH BRAND BREAK BARS BETWEEN SECTIONS */
.brand-break-bar {
  width: 100vw;
  margin-left: calc(50% - 50vw);
  background: #C56A43;
  padding: 26px 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  z-index: 20;
}

.brand-break-inner {
  color: #FFFFFF;
  text-align: center;
  font-family: "Inter", sans-serif;
  font-size: 13px;
  font-weight: 800;
  letter-spacing: .34em;
  text-transform: uppercase;
  line-height: 1.4;
}

@media(max-width: 760px) {
  .brand-break-bar {
    padding: 18px 14px;
  }

  .brand-break-inner {
    font-size: 10px;
    letter-spacing: .18em;
    line-height: 1.5;
  }
}


/* Clean CTA summary bar with soft botanical leaf background */
.cta-panel.cta-summary,
.cta-summary {
  position: relative !important;
  overflow: hidden !important;
  border: 0 !important;
  outline: 0 !important;
  border-radius: 0 !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  margin-bottom: 0 !important;
  width: 100% !important;

  background:
    linear-gradient(90deg,
      rgba(248,243,238,.94) 0%,
      rgba(248,243,238,.84) 38%,
      rgba(248,243,238,.56) 68%,
      rgba(248,243,238,.34) 100%),
    radial-gradient(ellipse at 90% 20%, rgba(63,79,47,.18) 0%, rgba(63,79,47,0) 42%),
    radial-gradient(ellipse at 78% 88%, rgba(197,106,67,.14) 0%, rgba(197,106,67,0) 44%),
    url("assets/hero-background-final.png") !important;

  background-size:
    100% 100%,
    100% 100%,
    100% 100%,
    cover !important;

  background-position:
    center,
    center,
    center,
    right center !important;

  background-repeat: no-repeat !important;

  box-shadow:
    inset 0 80px 90px rgba(248,243,238,.46),
    inset 0 -80px 90px rgba(248,243,238,.52) !important;
}

/* Decorative leaf-like overlays without a hard outline */
.cta-panel.cta-summary::before,
.cta-summary::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(ellipse at 88% 32%, rgba(63,79,47,.20) 0%, rgba(63,79,47,.12) 16%, rgba(63,79,47,0) 42%),
    radial-gradient(ellipse at 96% 70%, rgba(63,79,47,.16) 0%, rgba(63,79,47,.08) 18%, rgba(63,79,47,0) 46%);
  pointer-events: none;
  z-index: 1;
}

.cta-panel.cta-summary::after,
.cta-summary::after {
  display: none !important;
}

.cta-summary > * {
  position: relative !important;
  z-index: 2 !important;
}

.cta-summary h2 {
  color: #3F4F2F !important;
}

.cta-summary p {
  max-width: 820px !important;
}

@media(max-width: 760px) {
  .cta-panel.cta-summary,
  .cta-summary {
    padding-left: 22px !important;
    padding-right: 22px !important;
    background-position:
      center,
      center,
      center,
      72% center !important;
  }
}



/* Refined compact footer */
.site-footer {
  padding: 28px 36px !important;
  background: #F8F3EE !important;
  border-top: 1px solid rgba(63,79,47,.08);
}

.footer-inner {
  max-width: 1320px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  flex-wrap: wrap;
}

.footer-logo img {
  height: 62px !important;
  width: auto;
  object-fit: contain;
}

.footer-nav {
  display: flex;
  align-items: center;
  gap: 22px;
  flex-wrap: wrap;
}

.footer-nav a {
  text-decoration: none;
  color: #000;
  font-family: "Inter", sans-serif;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: .04em;
  transition: opacity .2s ease;
}

.footer-nav a:hover {
  opacity: .7;
}

.footer-cta {
  background: #C56A43;
  color: #fff !important;
  padding: 10px 16px;
  border-radius: 999px;
  font-size: 12px !important;
  letter-spacing: .06em;
}

@media(max-width: 760px) {
  .site-footer {
    padding: 22px 18px !important;
  }

  .footer-inner {
    flex-direction: column;
    align-items: center;
    text-align: center;
  }

  .footer-nav {
    justify-content: center;
    gap: 14px;
  }

  .footer-logo img {
    height: 54px !important;
  }

  .footer-nav a {
    font-size: 12px;
  }
}



/* Warmer header/footer palette with enlarged logos */
.site-header,
header {
  background:
    linear-gradient(
      180deg,
      rgba(236,224,213,.96) 0%,
      rgba(236,224,213,.88) 72%,
      rgba(236,224,213,.74) 100%
    ) !important;

  backdrop-filter: blur(12px);
  border-bottom: 1px solid rgba(120,90,68,.08);
}

/* Larger main header logo */
.logo img,
.site-logo img,
.nav-logo img {
  height: 172px !important;
  max-width: 700px !important;
  width: auto !important;
  object-fit: contain !important;
}

/* Lighter nav colors for warmer background */
.site-nav a,
nav a {
  color: #F7F2EC !important;
  font-weight: 600 !important;
  text-shadow: 0 1px 1px rgba(0,0,0,.08);
}

/* Keep CTA readable */
.site-nav .cta,
nav .cta {
  background: #C56A43 !important;
  color: #FFFFFF !important;
  border: 1px solid rgba(255,255,255,.18);
}

/* Footer warmer background */
.site-footer,
footer {
  background:
    linear-gradient(
      180deg,
      #E7D8CC 0%,
      #E2D0C3 100%
    ) !important;

  border-top: 1px solid rgba(120,90,68,.08) !important;
}

/* Larger footer logo */
.footer-logo img {
  height: 88px !important;
  width: auto !important;
  object-fit: contain !important;
}

/* Footer nav lighter */
.footer-nav a {
  color: #000;
  font-weight: 600 !important;
}

.footer-cta {
  background: #C56A43 !important;
  color: #FFFFFF !important;
}

/* Mobile adjustments */
@media(max-width: 980px) {
  .logo img,
  .site-logo img,
  .nav-logo img {
    height: 138px !important;
    max-width: 540px !important;
  }

  .footer-logo img {
    height: 74px !important;
  }
}

@media(max-width: 760px) {
  .logo img,
  .site-logo img,
  .nav-logo img {
    height: 108px !important;
    max-width: 360px !important;
  }

  .footer-logo img {
    height: 64px !important;
  }

  .site-nav a,
  nav a,
  .footer-nav a {
    color: #000;
  }
}



/* Centered stacked header/footer layout */
.site-header,
.site-footer {
  background:
    linear-gradient(
      180deg,
      #E7D8CC 0%,
      #E2D0C3 100%
    ) !important;
}

/* HEADER */
.header-stack {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 18px 24px 8px;
  gap: 14px;
}

.site-header {
  height: auto !important;
  min-height: unset !important;
  padding: 0 !important;
}

.site-nav {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 24px;
}

.logo {
  display: flex;
  justify-content: center;
  align-items: center;
}

.logo img {
  height: 180px !important;
  width: auto !important;
  object-fit: contain !important;
  margin: 0 auto !important;
}

/* FOOTER */
.footer-stack {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 18px;
}

.site-footer {
  padding: 32px 24px !important;
}

.footer-nav {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 22px;
}

.footer-logo {
  display: flex;
  justify-content: center;
  align-items: center;
}

.footer-logo img {
  height: 110px !important;
  width: auto !important;
  object-fit: contain !important;
}

/* Navigation colors */
.site-nav a,
.footer-nav a {
  color: #000;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: .05em;
}

/* CTA styling */
.site-nav .cta,
.footer-cta {
  background: #C56A43 !important;
  color: #FFFFFF !important;
  padding: 10px 18px;
  border-radius: 999px;
}

/* Hero spacing after taller centered header */
.hero {
  padding-top: 220px !important;
}

@media(max-width: 980px) {
  .logo img {
    height: 146px !important;
  }

  .footer-logo img {
    height: 92px !important;
  }

  .hero {
    padding-top: 190px !important;
  }
}

@media(max-width: 760px) {
  .header-stack,
  .footer-stack {
    gap: 12px;
  }

  .site-nav,
  .footer-nav {
    gap: 12px;
  }

  .logo img {
    height: 110px !important;
  }

  .footer-logo img {
    height: 76px !important;
  }

  .site-nav a,
  .footer-nav a {
    font-size: 11px;
  }

  .hero {
    padding-top: 170px !important;
  }
}


/* Final hero bleed-through header with left-aligned logo */
.site-header {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: auto !important;
  min-height: 118px !important;
  padding: 22px clamp(24px, 4vw, 58px) !important;

  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 24px !important;

  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  z-index: 1000 !important;
}

.site-header::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(
      to bottom,
      rgba(248,243,238,.70) 0%,
      rgba(248,243,238,.34) 58%,
      rgba(248,243,238,0) 100%
    );
  pointer-events: none;
  z-index: -1;
}

.logo {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  margin: 0 auto 0 0 !important;
  padding: 0 !important;
  width: auto !important;
  flex: 0 0 auto !important;
}

.logo img {
  height: 136px !important;
  width: auto !important;
  max-width: 520px !important;
  object-fit: contain !important;
  display: block !important;
  margin: 0 !important;
  filter: drop-shadow(0 4px 10px rgba(0,0,0,.08));
}

.site-nav {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: clamp(14px, 1.8vw, 26px) !important;
  margin: 0 !important;
  width: auto !important;
  flex: 1 1 auto !important;
  position: relative !important;
  z-index: 2 !important;
}

.site-nav a {
  color: #F7F2EC !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
  text-shadow: 0 1px 2px rgba(45,40,34,.18);
}

.site-nav .cta {
  background: #C56A43 !important;
  color: #FFFFFF !important;
  border-radius: 999px !important;
  padding: 11px 18px !important;
  white-space: nowrap !important;
}

.hero {
  padding-top: 210px !important;
  min-height: 820px !important;
  background-size: cover !important;
  background-position: right center !important;
}

/* Let the hero image visibly continue into the top/header area while keeping text readable */
.hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(
      to bottom,
      rgba(248,243,238,.18) 0%,
      rgba(248,243,238,.05) 24%,
      rgba(248,243,238,0) 42%
    ) !important;
  pointer-events: none;
  z-index: 1;
}

.hero-copy {
  position: relative !important;
  z-index: 3 !important;
}

@media(max-width: 980px) {
  .site-header {
    min-height: 96px !important;
    padding: 16px 24px !important;
    background: rgba(248,243,238,.18) !important;
    backdrop-filter: blur(4px);
  }

  .logo img {
    height: 104px !important;
    max-width: 390px !important;
  }

  .menu-toggle {
    display: block !important;
    position: relative !important;
    z-index: 3 !important;
    color: #F7F2EC !important;
    text-shadow: 0 1px 2px rgba(45,40,34,.25);
  }

  .site-nav {
    display: none !important;
    position: absolute !important;
    top: 96px !important;
    left: 18px !important;
    right: 18px !important;
    width: auto !important;
    background: rgba(248,243,238,.96) !important;
    border: 1px solid rgba(120,90,68,.12) !important;
    border-radius: 8px !important;
    padding: 18px !important;
    flex-direction: column !important;
    align-items: stretch !important;
    box-shadow: 0 18px 38px rgba(70,50,28,.13) !important;
  }

  .site-nav.open {
    display: flex !important;
  }

  .site-nav a {
    color: #3F4F2F !important;
    text-shadow: none !important;
  }

  .hero {
    padding-top: 172px !important;
    min-height: 720px !important;
  }
}

@media(max-width: 760px) {
  .site-header {
    min-height: 82px !important;
    padding: 12px 18px !important;
  }

  .logo img {
    height: 82px !important;
    max-width: 300px !important;
  }

  .site-nav {
    top: 82px !important;
  }

  .hero {
    padding-top: 144px !important;
    min-height: 660px !important;
  }
}


/* Remove visible header cutoff line and make hero/header blend seamless */
.site-header {
  background: transparent !important;
  border: 0 !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
}

.site-header::before,
.site-header::after {
  display: none !important;
  content: none !important;
  background: none !important;
  border: 0 !important;
  box-shadow: none !important;
}

/* Remove top overlay edge that was creating a horizontal transition line */
.hero::before {
  display: none !important;
  content: none !important;
  background: none !important;
}

/* Add the header readability fade directly into the hero background instead of as a separate overlay */
.hero {
  background-image:
    linear-gradient(
      to bottom,
      rgba(248,243,238,.42) 0%,
      rgba(248,243,238,.18) 14%,
      rgba(248,243,238,0) 34%
    ),
    radial-gradient(ellipse at 18% 48%,
      #F8F3EE 0%,
      rgba(248,243,238,.92) 24%,
      rgba(248,243,238,.58) 42%,
      rgba(248,243,238,.22) 58%,
      rgba(248,243,238,0) 74%),
    linear-gradient(90deg,
      #F8F3EE 0%,
      rgba(248,243,238,.88) 16%,
      rgba(248,243,238,.52) 31%,
      rgba(248,243,238,.18) 48%,
      rgba(248,243,238,0) 66%),
    linear-gradient(180deg,
      rgba(248,243,238,.18) 0%,
      rgba(248,243,238,.04) 22%,
      rgba(248,243,238,0) 58%,
      rgba(248,243,238,.22) 86%,
      #F8F3EE 100%),
    url("assets/hero-background-final.png") !important;

  background-size:
    100% 100%,
    80% 112%,
    100% 100%,
    100% 100%,
    cover !important;

  background-position:
    center,
    left center,
    left center,
    center center,
    right center !important;

  background-repeat: no-repeat !important;
}

/* Keep the mobile header menu readable without creating a desktop line */
@media(max-width: 980px) {
  .site-header {
    background: transparent !important;
    backdrop-filter: none !important;
  }
}



/* Horizontal transparent logo refinement */
.logo img {
  height: 84px !important;
  max-width: 520px !important;
  width: auto !important;
  object-fit: contain !important;
  background: transparent !important;
  mix-blend-mode: normal !important;
  filter: none !important;
}

.site-header {
  padding-top: 18px !important;
  padding-bottom: 18px !important;
}

@media(max-width: 980px) {
  .logo img {
    height: 68px !important;
    max-width: 420px !important;
  }
}

@media(max-width: 760px) {
  .logo img {
    height: 54px !important;
    max-width: 300px !important;
  }
}



/* Large transparent horizontal logo */
.logo,
.footer-logo {
  background: transparent !important;
}

.logo img {
  height: 122px !important;
  max-width: 760px !important;
  width: auto !important;
  object-fit: contain !important;
  display: block !important;
  background: transparent !important;
  mix-blend-mode: multiply !important;
  filter: none !important;
  box-shadow: none !important;
}

.footer-logo img {
  height: 92px !important;
  max-width: 540px !important;
  width: auto !important;
  object-fit: contain !important;
  background: transparent !important;
  mix-blend-mode: multiply !important;
  filter: none !important;
  box-shadow: none !important;
}

/* Ensure no background or container behind logos */
.logo::before,
.logo::after,
.footer-logo::before,
.footer-logo::after {
  display: none !important;
  content: none !important;
}

@media(max-width: 980px) {
  .logo img {
    height: 94px !important;
    max-width: 560px !important;
  }

  .footer-logo img {
    height: 74px !important;
    max-width: 420px !important;
  }
}

@media(max-width: 760px) {
  .logo img {
    height: 68px !important;
    max-width: 360px !important;
  }

  .footer-logo img {
    height: 58px !important;
    max-width: 300px !important;
  }
}


/* Final header logo replacement: attached transparent side-by-side logo */
.site-header .logo img,
header .logo img {
  content: url("assets/ee-transparent-side-logo.png");
  height: 150px !important;
  max-width: 760px !important;
  width: auto !important;
  object-fit: contain !important;
  background: transparent !important;
  box-shadow: none !important;
  filter: none !important;
  mix-blend-mode: normal !important;
}

.site-header .logo,
header .logo {
  background: transparent !important;
}

.site-header .logo::before,
.site-header .logo::after,
header .logo::before,
header .logo::after {
  display: none !important;
  content: none !important;
}

@media(max-width: 980px) {
  .site-header .logo img,
  header .logo img {
    height: 112px !important;
    max-width: 540px !important;
  }
}

@media(max-width: 760px) {
  .site-header .logo img,
  header .logo img {
    height: 78px !important;
    max-width: 340px !important;
  }
}


/* Final hero background replacement using attached image */
.hero {
  position: relative !important;
  overflow: hidden !important;

  background-image:
    linear-gradient(
      to bottom,
      rgba(248,243,238,.35) 0%,
      rgba(248,243,238,.12) 18%,
      rgba(248,243,238,0) 38%,
      rgba(248,243,238,.20) 84%,
      #F8F3EE 100%
    ),
    radial-gradient(ellipse at 18% 48%,
      #F8F3EE 0%,
      rgba(248,243,238,.88) 22%,
      rgba(248,243,238,.54) 40%,
      rgba(248,243,238,.18) 58%,
      rgba(248,243,238,0) 74%),
    linear-gradient(90deg,
      #F8F3EE 0%,
      rgba(248,243,238,.86) 16%,
      rgba(248,243,238,.48) 32%,
      rgba(248,243,238,.16) 50%,
      rgba(248,243,238,0) 68%),
    url("assets/hero-background-final.png") !important;

  background-size:
    100% 100%,
    80% 112%,
    100% 100%,
    cover !important;

  background-position:
    center,
    left center,
    left center,
    right center !important;

  background-repeat: no-repeat !important;
  background-color: #F8F3EE !important;
}

.hero::before {
  display: none !important;
  content: none !important;
}

.hero::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -2px;
  height: 190px;
  background:
    linear-gradient(
      to bottom,
      rgba(248,243,238,0) 0%,
      rgba(248,243,238,.32) 48%,
      #F8F3EE 100%
    ) !important;
  pointer-events: none;
  z-index: 2;
}

.hero-copy {
  position: relative !important;
  z-index: 3 !important;
}

@media(max-width: 980px) {
  .hero {
    background-position:
      center,
      left center,
      left center,
      74% center !important;
  }
}

@media(max-width: 760px) {
  .hero {
    background-image:
      linear-gradient(90deg,
        #F8F3EE 0%,
        rgba(248,243,238,.88) 30%,
        rgba(248,243,238,.50) 58%,
        rgba(248,243,238,.14) 100%),
      linear-gradient(180deg,
        rgba(248,243,238,.38) 0%,
        rgba(248,243,238,.08) 34%,
        rgba(248,243,238,.32) 86%,
        #F8F3EE 100%),
      url("assets/hero-background-final.png") !important;

    background-size:
      100% 100%,
      100% 100%,
      cover !important;

    background-position:
      left center,
      center center,
      70% center !important;
  }

  .hero::after {
    height: 120px;
  }
}




/* Unified hero typography matching rest of site */
.hero .eyebrow {
  font-family: "Inter", sans-serif !important;
  color: #B85A36 !important;
  text-transform: uppercase !important;
  letter-spacing: .16em !important;
  font-size: 11px !important;
  font-weight: 800 !important;
  margin-bottom: 18px !important;
}

.hero h1 {
  font-family: "Cormorant Garamond", serif !important;
  color: #3F4F2F !important;
  font-weight: 500 !important;
  line-height: .96 !important;
  letter-spacing: -.04em !important;
}

.hero h1 em {
  color: #3F4F2F !important;
  font-style: normal !important;
}

.hero p {
  font-family: "Cormorant Garamond", serif !important;
  color: #3f3b37 !important;
  font-size: 21px !important;
  line-height: 1.48 !important;
  font-weight: 500 !important;
  max-width: 640px !important;
}

@media(max-width: 760px) {
  .hero p {
    font-size: 18px !important;
  }
}




/* Approach section checkbox layout */
.approach-checks {
  display: flex;
  flex-direction: column;
  gap: 24px;
  margin-top: 34px;
}

.approach-check {
  display: flex;
  align-items: flex-start;
  gap: 16px;
}

.check-icon {
  width: 28px;
  height: 28px;
  min-width: 28px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 999px;
  background: #C56A43;
  color: #FFFFFF;

  font-family: "Inter", sans-serif;
  font-size: 13px;
  font-weight: 700;

  margin-top: 4px;
}

.approach-check strong {
  display: block;
  font-family: "Cormorant Garamond", serif;
  font-size: 1.28rem;
  line-height: 1.1;
  color: #3F4F2F;
  margin-bottom: 6px;
  font-weight: 600;
}

.approach-check p {
  margin: 0;
}

@media(max-width: 760px) {
  .approach-check {
    gap: 12px;
  }

  .check-icon {
    width: 24px;
    height: 24px;
    min-width: 24px;
    font-size: 11px;
  }

  .approach-check strong {
    font-size: 1.08rem;
  }
}



/* Larger editorial typography to align closer with hero layout */
.approach-copy h2 {
  font-family: "Cormorant Garamond", serif !important;
  font-size: clamp(3.2rem, 5vw, 5.6rem) !important;
  line-height: .94 !important;
  letter-spacing: -.045em !important;
  font-weight: 500 !important;
  color: #3F4F2F !important;
  max-width: 760px !important;
}

.approach-copy > p {
  font-family: "Cormorant Garamond", serif !important;
  font-size: 1.45rem !important;
  line-height: 1.52 !important;
  font-weight: 500 !important;
  color: #3f3b37 !important;
  max-width: 760px !important;
  margin-top: 28px !important;
}

.approach-check strong {
  font-size: 1.6rem !important;
  line-height: 1.08 !important;
  letter-spacing: -.02em !important;
}

.approach-check p {
  font-size: 1.12rem !important;
  line-height: 1.55 !important;
}

.approach-checks {
  gap: 30px !important;
  margin-top: 42px !important;
}

.check-icon {
  width: 34px !important;
  height: 34px !important;
  min-width: 34px !important;
  font-size: 15px !important;
}

@media(max-width: 980px) {
  .approach-copy h2 {
    font-size: clamp(2.6rem, 7vw, 4.3rem) !important;
  }

  .approach-copy > p {
    font-size: 1.24rem !important;
  }

  .approach-check strong {
    font-size: 1.34rem !important;
  }
}

@media(max-width: 760px) {
  .approach-copy h2 {
    font-size: clamp(2.1rem, 9vw, 3.2rem) !important;
    line-height: 1 !important;
  }

  .approach-copy > p {
    font-size: 1.08rem !important;
  }

  .approach-check strong {
    font-size: 1.16rem !important;
  }

  .approach-check p {
    font-size: 1rem !important;
  }

  .check-icon {
    width: 28px !important;
    height: 28px !important;
    min-width: 28px !important;
    font-size: 12px !important;
  }
}



/* Reposition hero copy so it does not overlap laptop in background image */
.hero {
  display: flex !important;
  align-items: center !important;
}

.hero-copy {
  max-width: 560px !important;
  width: 100% !important;

  margin-left: clamp(24px, 6vw, 88px) !important;
  margin-right: auto !important;

  padding-right: 40px !important;

  position: relative !important;
  z-index: 5 !important;
}

/* Slightly reduce width of paragraph for cleaner readability */
.hero-copy p {
  max-width: 500px !important;
}

/* Push background visual further right so laptop remains visible */
.hero {
  background-position:
    center,
    left center,
    left center,
    88% center !important;
}

@media(max-width: 1200px) {
  .hero-copy {
    max-width: 500px !important;
  }

  .hero {
    background-position:
      center,
      left center,
      left center,
      92% center !important;
  }
}

@media(max-width: 980px) {
  .hero-copy {
    max-width: 100% !important;
    margin-left: 24px !important;
    padding-right: 24px !important;
  }

  .hero {
    background-position:
      center,
      left center,
      left center,
      76% center !important;
  }
}

@media(max-width: 760px) {
  .hero-copy {
    margin-left: 18px !important;
    padding-right: 18px !important;
  }

  .hero {
    background-position:
      left center,
      center center,
      74% center !important;
  }
}



/* Shift hero background further right to fully clear laptop from text */
.hero {
  background-position:
    center,
    left center,
    left center,
    96% center !important;
}

@media(max-width: 1200px) {
  .hero {
    background-position:
      center,
      left center,
      left center,
      100% center !important;
  }
}

@media(max-width: 980px) {
  .hero {
    background-position:
      center,
      left center,
      left center,
      82% center !important;
  }
}

@media(max-width: 760px) {
  .hero {
    background-position:
      left center,
      center center,
      78% center !important;
  }
}


/* Final Our Approach image replacement */
.approach-image {
  background:
    linear-gradient(rgba(255,255,255,.03), rgba(255,255,255,.03)),
    url("assets/approach-team-collaboration.png") !important;
  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
}




/* Arrow styling inside approach check headlines */
.approach-check-content strong {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  flex-wrap: wrap !important;
}

.arrow-inline {
  color: #C56A43 !important;
  font-size: 1.15em !important;
  font-weight: 700 !important;
  line-height: 1 !important;
}



/* Keep each approach checkpoint headline on one line */
.approach-check {
  align-items: center !important;
}

.approach-check-content strong {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  flex-wrap: nowrap !important;
  white-space: nowrap !important;
  font-size: 1.42rem !important;
}

.approach-check-content p {
  margin-top: 6px !important;
}

@media(max-width: 980px) {
  .approach-check-content strong {
    white-space: normal !important;
  }
}


/* Approach checkpoints: uniform font sizing + down arrows between each checkpoint */
.approach-checks {
  gap: 18px !important;
}

.approach-check {
  align-items: flex-start !important;
}

.approach-check-content strong,
.approach-check strong {
  display: block !important;
  font-size: 1.32rem !important;
  line-height: 1.12 !important;
  font-weight: 600 !important;
  letter-spacing: -.015em !important;
  white-space: normal !important;
}

.approach-check-content p,
.approach-check p {
  font-size: 1.05rem !important;
  line-height: 1.5 !important;
  margin-top: 6px !important;
}

.approach-down-arrow {
  color: #C56A43;
  font-family: "Inter", sans-serif;
  font-size: 28px;
  font-weight: 800;
  line-height: 1;
  margin: -2px 0 -2px 50px;
}

.arrow-inline {
  display: none !important;
}

@media(max-width: 760px) {
  .approach-check-content strong,
  .approach-check strong {
    font-size: 1.12rem !important;
  }

  .approach-check-content p,
  .approach-check p {
    font-size: 1rem !important;
  }

  .approach-down-arrow {
    font-size: 22px;
    margin-left: 40px;
  }
}


/* Uniform checkpoint line styling */
.approach-checks {
  display: flex !important;
  flex-direction: column !important;
  gap: 30px !important;
  margin-top: 40px !important;
}

.approach-check {
  display: flex !important;
  align-items: flex-start !important;
  gap: 18px !important;
}

.approach-check-content {
  display: flex !important;
  flex-direction: column !important;
}

.checkpoint-line {
  font-family: "Cormorant Garamond", serif !important;
  font-size: 1.38rem !important;
  line-height: 1.32 !important;
  font-weight: 500 !important;
  color: #3F4F2F !important;
  letter-spacing: -.015em !important;
}

.approach-down-arrow {
  color: #C56A43 !important;
  font-size: 28px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  margin: 10px 0 10px 4px !important;
}

@media(max-width:760px) {
  .checkpoint-line {
    font-size: 1.08rem !important;
  }

  .approach-down-arrow {
    font-size: 22px !important;
  }
}


/* Center approach checkpoint formatting and use open checkboxes */
.approach-checks {
  align-items: center !important;
  text-align: center !important;
  width: 100% !important;
}

.approach-check {
  width: 100% !important;
  max-width: 680px !important;
  justify-content: center !important;
  align-items: flex-start !important;
  gap: 18px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.approach-check-content {
  align-items: center !important;
  text-align: center !important;
  flex: 1 1 auto !important;
}

.check-icon {
  width: 30px !important;
  height: 30px !important;
  min-width: 30px !important;
  border: 2px solid #C56A43 !important;
  border-radius: 6px !important;
  background: transparent !important;
  color: transparent !important;
  margin-top: 2px !important;
  box-shadow: none !important;
}

.check-icon::before,
.check-icon::after {
  display: none !important;
  content: none !important;
}

.checkpoint-line {
  text-align: center !important;
}

.approach-down-arrow {
  margin: 10px auto !important;
  text-align: center !important;
}

@media(max-width:760px) {
  .approach-check {
    max-width: 100% !important;
    gap: 12px !important;
  }

  .check-icon {
    width: 26px !important;
    height: 26px !important;
    min-width: 26px !important;
  }
}


/* Remove checkbox spacing/layout */
.approach-check {
  gap: 0 !important;
}

.check-icon {
  display: none !important;
}

.approach-check-content {
  width: 100% !important;
}



/* Restore visible down arrows between checkpoint statements */
.approach-down-arrow {
  color: #C56A43 !important;
  background: transparent !important;
  width: auto !important;
  height: auto !important;
  font-size: 30px !important;
  line-height: 1 !important;
  font-weight: 700 !important;
  margin: 12px auto 14px !important;
  border-radius: 0 !important;
}

@media(max-width: 760px) {
  .approach-down-arrow {
    font-size: 24px !important;
    margin: 10px auto 12px !important;
  }
}


  .approach-down-arrow {
    width: 30px !important;
    margin: 14px auto 16px !important;
  }
}


/* Sitewide uniform typography sizing for intros and descriptions only */
.hero p,
.intro,
.approach-copy > p,
.services-heading p,
.how-work-copy p,
.why-faq .intro,
.cta-summary p,
.contact-copy p {
  font-family: "Cormorant Garamond", serif !important;
  font-size: 21px !important;
  line-height: 1.5 !important;
  font-weight: 500 !important;
  letter-spacing: -.015em !important;
  color: #3f3b37 !important;
}

/* Uniform card/detail descriptions */
.home-service-content p,
.process-card p,
.faq-editorial p,
details p,
.approach-check p,
.checkpoint-line {
  font-family: "Cormorant Garamond", serif !important;
  font-size: 18px !important;
  line-height: 1.5 !important;
  font-weight: 500 !important;
  letter-spacing: -.01em !important;
  color: #3f3b37 !important;
}

/* Uniform section headings */
.approach-copy h2,
.services-heading h2,
.how-work h2,
.why-faq-content h2,
.cta-summary h2,
.contact h2 {
  font-family: "Cormorant Garamond", serif !important;
  font-size: clamp(40px, 3.6vw, 56px) !important;
  line-height: .98 !important;
  font-weight: 500 !important;
  letter-spacing: -.04em !important;
  color: #3F4F2F !important;
}

/* Uniform small labels */
.eyebrow,
.how-eyebrow {
  font-family: "Inter", sans-serif !important;
  font-size: 11px !important;
  line-height: 1.35 !important;
  letter-spacing: .16em !important;
  font-weight: 800 !important;
  text-transform: uppercase !important;
}

/* Uniform service/process titles */
.home-service-content h3,
.process-card h3,
.faq-editorial summary {
  font-family: "Cormorant Garamond", serif !important;
  font-size: 22px !important;
  line-height: 1.12 !important;
  font-weight: 600 !important;
  letter-spacing: -.015em !important;
  color: #3F4F2F !important;
}

/* Keep approach checkpoint arrows consistent */
.approach-down-arrow {
  color: #C56A43 !important;
  font-size: 28px !important;
  line-height: 1 !important;
  font-weight: 700 !important;
  margin: 10px auto 12px !important;
}

/* Mobile uniform scaling */
@media(max-width: 760px) {
  .hero p,
  .intro,
  .approach-copy > p,
  .services-heading p,
  .how-work-copy p,
  .why-faq .intro,
  .cta-summary p,
  .contact-copy p {
    font-size: 18px !important;
  }

  .home-service-content p,
  .process-card p,
  .faq-editorial p,
  details p,
  .approach-check p,
  .checkpoint-line {
    font-size: 16px !important;
  }

  .approach-copy h2,
  .services-heading h2,
  .how-work h2,
  .why-faq-content h2,
  .cta-summary h2,
  .contact h2 {
    font-size: 34px !important;
  }

  .home-service-content h3,
  .process-card h3,
  .faq-editorial summary {
    font-size: 20px !important;
  }
}



/* Header navigation + CTA brand color refinement */
.site-header nav a,
.site-header .nav-link,
.site-header .menu a {
  color: #C56A43 !important;
}

.site-header nav a:hover,
.site-header .nav-link:hover,
.site-header .menu a:hover {
  color: #A65232 !important;
}

/* CTA button uses logo dark green */
.site-header .btn,
.site-header .header-cta,
.site-header .btn.primary {
  background: #3F4F2F !important;
  border-color: #3F4F2F !important;
  color: #F8F3EE !important;
}

.site-header .btn:hover,
.site-header .header-cta:hover,
.site-header .btn.primary:hover {
  background: #324024 !important;
  border-color: #324024 !important;
  color: #FFFFFF !important;
}



/* Align header logo with hero headline/content */
.site-header .container,
.site-header .header-inner,
.site-header .nav-wrap {
  max-width: 1320px !important;
  padding-left: clamp(24px, 6vw, 88px) !important;
  padding-right: clamp(24px, 4vw, 56px) !important;
}

/* Align logo directly with hero text block */
.site-header .logo {
  margin-left: 0 !important;
  padding-left: 0 !important;
  display: flex !important;
  align-items: center !important;
}

/* Warm beige navigation for visibility against hero */
.site-header nav a,
.site-header .nav-link,
.site-header .menu a {
  color: #F2E5D7 !important;
  font-weight: 600 !important;
}

.site-header nav a:hover,
.site-header .nav-link:hover,
.site-header .menu a:hover {
  color: #FFFFFF !important;
}

/* Keep CTA dark green */
.site-header .btn,
.site-header .header-cta,
.site-header .btn.primary {
  background: #3F4F2F !important;
  border-color: #3F4F2F !important;
  color: #F8F3EE !important;
}

/* Slightly tighter header spacing */
.site-header {
  padding-top: 10px !important;
  padding-bottom: 10px !important;
}



/* Move header logo slightly more right for alignment refinement */
.site-header .logo {
  margin-left: clamp(18px, 2.6vw, 42px) !important;
}

@media(max-width: 760px) {
  .site-header .logo {
    margin-left: 12px !important;
  }
}



/* Lower header navigation alignment */
.site-header nav,
.site-header .menu,
.site-header .nav-links,
.site-header .header-nav {
  position: relative !important;
  top: 10px !important;
}

.site-header .btn,
.site-header .header-cta {
  position: relative !important;
  top: 10px !important;
}

@media(max-width: 760px) {
  .site-header nav,
  .site-header .menu,
  .site-header .nav-links,
  .site-header .header-nav,
  .site-header .btn,
  .site-header .header-cta {
    top: 4px !important;
  }
}


/* Corrected: move actual header nav options lower */
.site-header {
  align-items: flex-start !important;
}

.site-header .site-nav {
  margin-top: 44px !important;
  transform: translateY(22px) !important;
  align-self: flex-start !important;
}

.site-header .site-nav a,
.site-header .site-nav .cta {
  position: relative !important;
  top: 0 !important;
}

@media(max-width: 980px) {
  .site-header .site-nav {
    margin-top: 0 !important;
    transform: none !important;
  }
}

@media(max-width: 760px) {
  .site-header .site-nav {
    margin-top: 0 !important;
    transform: none !important;
  }
}



/* Header navigation black font color */
.site-header nav a,
.site-header .nav-link,
.site-header .menu a,
.site-header .site-nav a {
  color: #111111 !important;
}

.site-header nav a:hover,
.site-header .nav-link:hover,
.site-header .menu a:hover,
.site-header .site-nav a:hover {
  color: #000000 !important;
}



/* Vertically align logo to middle of nav option row */
.site-header .logo {
  position: relative !important;
  top: 22px !important;
  display: flex !important;
  align-items: center !important;
}

.site-header .logo img {
  display: block !important;
}

@media(max-width: 980px) {
  .site-header .logo {
    top: 10px !important;
  }
}

@media(max-width: 760px) {
  .site-header .logo {
    top: 4px !important;
  }
}



/* Updated hero background image */
.hero {
  background-image:
    linear-gradient(to right, rgba(248,243,238,.94) 0%, rgba(248,243,238,.72) 34%, rgba(248,243,238,.12) 62%, rgba(248,243,238,0) 100%),
    url("assets/hero-background-updated.png") !important;

  background-size: cover !important;
  background-repeat: no-repeat !important;
  background-position: 82% center !important;
}


/* Corrected hero background image replacement */
.hero {
  background-image:
    linear-gradient(to right,
      rgba(248,243,238,.94) 0%,
      rgba(248,243,238,.74) 34%,
      rgba(248,243,238,.18) 62%,
      rgba(248,243,238,0) 100%),
    url("assets/hero-background-corrected.png") !important;

  background-size: cover !important;
  background-repeat: no-repeat !important;
  background-position: 82% center !important;
}



/* Beige header navigation styling */
.site-header nav a,
.site-header .nav-link,
.site-header .menu a,
.site-header .site-nav a {
  color: #F2E5D7 !important;
}

.site-header nav a:hover,
.site-header .nav-link:hover,
.site-header .menu a:hover,
.site-header .site-nav a:hover {
  color: #FFF8F1 !important;
}



/* Dark green header navigation matching logo */
.site-header nav a,
.site-header .nav-link,
.site-header .menu a,
.site-header .site-nav a {
  color: #3F4F2F !important;
}

.site-header nav a:hover,
.site-header .nav-link:hover,
.site-header .menu a:hover,
.site-header .site-nav a:hover {
  color: #2F3D23 !important;
}



/* Final black header navigation styling */
.site-header nav a,
.site-header .nav-link,
.site-header .menu a,
.site-header .site-nav a {
  color: #000000 !important;
}

.site-header nav a:hover,
.site-header .nav-link:hover,
.site-header .menu a:hover,
.site-header .site-nav a:hover {
  color: #1A1A1A !important;
}



/* Softer, fainter hero background */
.hero {
  background-image:
    linear-gradient(
      to right,
      rgba(248,243,238,.985) 0%,
      rgba(248,243,238,.93) 26%,
      rgba(248,243,238,.78) 48%,
      rgba(248,243,238,.52) 68%,
      rgba(248,243,238,.28) 84%,
      rgba(248,243,238,.14) 100%
    ),
    url("assets/hero-background-corrected.png") !important;

  background-position: 84% center !important;
  background-size: cover !important;
}



/* Larger header nav font sizing */
.site-header nav a,
.site-header .nav-link,
.site-header .menu a,
.site-header .site-nav a {
  font-size: 17px !important;
  font-weight: 600 !important;
  letter-spacing: -.01em !important;
}

@media(max-width: 760px) {
  .site-header nav a,
  .site-header .nav-link,
  .site-header .menu a,
  .site-header .site-nav a {
    font-size: 15px !important;
  }
}



/* Slightly smaller header nav font sizing */
.site-header nav a,
.site-header .nav-link,
.site-header .menu a,
.site-header .site-nav a {
  font-size: 15px !important;
  font-weight: 600 !important;
  letter-spacing: -.01em !important;
}

@media(max-width: 760px) {
  .site-header nav a,
  .site-header .nav-link,
  .site-header .menu a,
  .site-header .site-nav a {
    font-size: 14px !important;
  }
}



/* Dark green header CTA button */
.site-header .btn,
.site-header .header-cta,
.site-header .btn.primary,
.site-header .site-nav .btn {
  background: #3F4F2F !important;
  border-color: #3F4F2F !important;
  color: #F8F3EE !important;
}

.site-header .btn:hover,
.site-header .header-cta:hover,
.site-header .btn.primary:hover,
.site-header .site-nav .btn:hover {
  background: #2F3D23 !important;
  border-color: #2F3D23 !important;
  color: #FFFFFF !important;
}


/* FINAL FIX: actual header CTA link dark green */
.site-header .site-nav a.cta,
.site-header a.cta,
header .site-nav a.cta,
header a.cta {
  background: #3F4F2F !important;
  background-color: #3F4F2F !important;
  border: 1px solid #3F4F2F !important;
  color: #FFFFFF !important;
  box-shadow: 0 10px 22px rgba(63,79,47,.18) !important;
}

.site-header .site-nav a.cta:hover,
.site-header a.cta:hover,
header .site-nav a.cta:hover,
header a.cta:hover {
  background: #2F3D23 !important;
  background-color: #2F3D23 !important;
  border-color: #2F3D23 !important;
  color: #FFFFFF !important;
}


/* Nav typography matched to intro/editorial font styling */
.site-header nav a,
.site-header .nav-link,
.site-header .menu a,
.site-header .site-nav a:not(.cta) {
  font-family: "Cormorant Garamond", serif !important;
  font-size: 14px !important;
  line-height: 1.1 !important;
  font-weight: 600 !important;
  letter-spacing: -.01em !important;
  color: #000000 !important;
  text-transform: none !important;
}

.site-header nav a:hover,
.site-header .nav-link:hover,
.site-header .menu a:hover,
.site-header .site-nav a:not(.cta):hover {
  color: #2F3D23 !important;
}

@media(max-width: 760px) {
  .site-header nav a,
  .site-header .nav-link,
  .site-header .menu a,
  .site-header .site-nav a:not(.cta) {
    font-size: 13px !important;
  }
}


/* Slightly larger editorial nav typography */
.site-header nav a,
.site-header .nav-link,
.site-header .menu a,
.site-header .site-nav a:not(.cta) {
  font-size: 15.5px !important;
  line-height: 1.1 !important;
}

@media(max-width: 760px) {
  .site-header nav a,
  .site-header .nav-link,
  .site-header .menu a,
  .site-header .site-nav a:not(.cta) {
    font-size: 14px !important;
  }
}


/* Final slightly larger header nav typography */
.site-header nav a,
.site-header .nav-link,
.site-header .menu a,
.site-header .site-nav a:not(.cta) {
  font-size: 17px !important;
  line-height: 1.12 !important;
}

@media(max-width: 760px) {
  .site-header nav a,
  .site-header .nav-link,
  .site-header .menu a,
  .site-header .site-nav a:not(.cta) {
    font-size: 15px !important;
  }
}


/* Increased header nav typography */
.site-header nav a,
.site-header .nav-link,
.site-header .menu a,
.site-header .site-nav a:not(.cta) {
  font-size: 19px !important;
  line-height: 1.12 !important;
}

@media(max-width: 760px) {
  .site-header nav a,
  .site-header .nav-link,
  .site-header .menu a,
  .site-header .site-nav a:not(.cta) {
    font-size: 16px !important;
  }
}



/* Replace first services card image */
.services-grid .service-card:nth-child(1) .service-image,
.home-services .service-card:nth-child(1) .service-image {
  background-image: url("assets/service-card-1-updated.png") !important;
  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
}


/* Corrected Why It Works section image only */
.why-faq-image,
.why-image,
.why-it-works-image {
  background-image: url("assets/personalized-game-plan-faq-centered.png") !important;
  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
}


/* Updated FAQ content formatting */
.faq-editorial .faq-heading {
  font-family: "Cormorant Garamond", serif !important;
  color: #3F4F2F !important;
  font-size: 28px !important;
  line-height: 1.15 !important;
  margin: 0 0 18px !important;
  font-weight: 600 !important;
}

.faq-editorial ul {
  margin: 12px 0 16px 22px !important;
  padding: 0 !important;
}

.faq-editorial li {
  font-family: "Cormorant Garamond", serif !important;
  font-size: 18px !important;
  line-height: 1.45 !important;
  color: #3f3b37 !important;
  margin-bottom: 6px !important;
}

@media(max-width:760px) {
  .faq-editorial .faq-heading {
    font-size: 24px !important;
  }

  .faq-editorial li {
    font-size: 16px !important;
  }
}


/* Final Why It Works content image replacement */
.why-faq-image,
.why-image,
.why-it-works-image {
  background:
    linear-gradient(rgba(255,255,255,.03), rgba(255,255,255,.03)),
    url("assets/personalized-game-plan-faq-centered.png") !important;
  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
}


/* Final hero background replacement */
.hero {
  background-image:
    linear-gradient(
      to right,
      rgba(248,243,238,.96) 0%,
      rgba(248,243,238,.84) 34%,
      rgba(248,243,238,.44) 58%,
      rgba(248,243,238,.14) 78%,
      rgba(248,243,238,0) 100%
    ),
    url("assets/hero-final-replacement.png") !important;

  background-size: cover !important;
  background-position: 82% center !important;
  background-repeat: no-repeat !important;
  background-color: #F8F3EE !important;
}


/* Softer, more faded hero background */
.hero {
  background-image:
    linear-gradient(
      to right,
      rgba(248,243,238,.992) 0%,
      rgba(248,243,238,.955) 24%,
      rgba(248,243,238,.84) 44%,
      rgba(248,243,238,.62) 62%,
      rgba(248,243,238,.34) 80%,
      rgba(248,243,238,.12) 100%
    ),
    url("assets/hero-final-replacement.png") !important;

  background-size: cover !important;
  background-position: 84% center !important;
  background-repeat: no-repeat !important;
}


/* CTA Summary section image replacement */
.cta-summary {
  position: relative !important;
  min-height: 560px !important;
  display: flex !important;
  align-items: center !important;
  overflow: hidden !important;
  border: 0 !important;
  outline: 0 !important;
  border-radius: 0 !important;
  margin: 0 !important;
  padding: clamp(72px, 8vw, 120px) clamp(28px, 6vw, 96px) !important;

  background-image:
    linear-gradient(
      to right,
      rgba(248,243,238,.94) 0%,
      rgba(248,243,238,.82) 28%,
      rgba(248,243,238,.42) 52%,
      rgba(248,243,238,.10) 76%,
      rgba(248,243,238,0) 100%
    ),
    url("assets/cta-summary-background.png") !important;
  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
}

.cta-summary-content {
  position: relative !important;
  z-index: 2 !important;
  max-width: 760px !important;
}

.cta-summary h2 {
  font-family: "Cormorant Garamond", serif !important;
  color: #3F4F2F !important;
  font-size: clamp(3rem, 5vw, 5.3rem) !important;
  line-height: .98 !important;
  font-weight: 500 !important;
  letter-spacing: -.04em !important;
  margin: 0 0 22px !important;
}

.cta-accent {
  width: 120px !important;
  height: 3px !important;
  background: #C56A43 !important;
  border-radius: 999px !important;
  margin: 0 0 34px !important;
}

.cta-summary p {
  font-family: "Cormorant Garamond", serif !important;
  font-size: 24px !important;
  line-height: 1.42 !important;
  font-weight: 500 !important;
  color: #3f3b37 !important;
  margin: 0 0 36px !important;
  max-width: 620px !important;
}

.cta-summary-button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-decoration: none !important;
  background: #C56A43 !important;
  color: #FFFFFF !important;
  border: 1px solid #C56A43 !important;
  padding: 16px 32px !important;
  border-radius: 4px !important;
  font-family: "Inter", sans-serif !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  letter-spacing: .02em !important;
  box-shadow: 0 14px 28px rgba(197,106,67,.20) !important;
}

.cta-summary-button:hover {
  background: #A65232 !important;
  border-color: #A65232 !important;
  color: #FFFFFF !important;
}

@media(max-width: 760px) {
  .cta-summary {
    min-height: 520px !important;
    padding: 68px 24px !important;
    background-position: 66% center !important;
  }

  .cta-summary h2 {
    font-size: clamp(2.35rem, 10vw, 3.3rem) !important;
  }

  .cta-summary p {
    font-size: 19px !important;
  }

  .cta-summary-button {
    width: 100% !important;
    max-width: 320px !important;
  }
}


/* Final compact CTA Summary section fix */
.cta-summary.section,
.cta-summary {
  min-height: 360px !important;
  height: auto !important;
  padding: 56px clamp(24px, 5vw, 76px) !important;
  margin: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  overflow: hidden !important;

  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;

  background-image:
    linear-gradient(
      to right,
      rgba(248,243,238,.97) 0%,
      rgba(248,243,238,.90) 32%,
      rgba(248,243,238,.62) 58%,
      rgba(248,243,238,.28) 78%,
      rgba(248,243,238,.08) 100%
    ),
    url("assets/cta-summary-background.png") !important;
  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
}

/* Remove prior pseudo overlays that caused visual overlap */
.cta-summary::before,
.cta-summary::after,
.cta-panel.cta-summary::before,
.cta-panel.cta-summary::after {
  display: none !important;
  content: none !important;
  background: none !important;
}

.cta-summary-content {
  max-width: 640px !important;
  position: relative !important;
  z-index: 2 !important;
}

.cta-summary h2 {
  font-size: clamp(2.35rem, 3.7vw, 4rem) !important;
  line-height: 1 !important;
  margin-bottom: 16px !important;
}

.cta-accent {
  width: 92px !important;
  height: 2px !important;
  margin-bottom: 22px !important;
}

.cta-summary p {
  font-size: 20px !important;
  line-height: 1.42 !important;
  margin-bottom: 24px !important;
  max-width: 540px !important;
}

.cta-summary-button {
  padding: 13px 24px !important;
  font-size: 14px !important;
}

@media(max-width: 760px) {
  .cta-summary.section,
  .cta-summary {
    min-height: 340px !important;
    padding: 48px 22px !important;
    background-position: 68% center !important;
  }

  .cta-summary h2 {
    font-size: clamp(2rem, 9vw, 2.8rem) !important;
  }

  .cta-summary p {
    font-size: 17px !important;
  }
}


/* FINAL CTA Summary: smaller, non-overlapping, zoomed-out image */
.cta-summary.section,
section.cta-summary,
.cta-summary {
  min-height: 280px !important;
  height: 280px !important;
  max-height: 280px !important;
  padding: 34px clamp(22px, 5vw, 70px) !important;
  margin: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  outline: 0 !important;
  overflow: hidden !important;
  position: relative !important;

  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;

  background-color: #F8F3EE !important;
  background-image:
    linear-gradient(
      to right,
      rgba(248,243,238,.98) 0%,
      rgba(248,243,238,.92) 34%,
      rgba(248,243,238,.72) 58%,
      rgba(248,243,238,.38) 78%,
      rgba(248,243,238,.14) 100%
    ),
    url("assets/cta-summary-background.png") !important;
  background-size: 100% 100%, contain !important;
  background-position: center center, right center !important;
  background-repeat: no-repeat, no-repeat !important;
  box-shadow: none !important;
}

/* Kill all previous decorative layers that caused overlap */
.cta-summary::before,
.cta-summary::after,
.cta-panel.cta-summary::before,
.cta-panel.cta-summary::after,
section.cta-summary::before,
section.cta-summary::after {
  display: none !important;
  content: none !important;
  background: none !important;
  box-shadow: none !important;
}

.cta-summary-content {
  max-width: 520px !important;
  width: 100% !important;
  position: relative !important;
  z-index: 2 !important;
}

.cta-summary h2 {
  font-size: clamp(2rem, 3vw, 3.25rem) !important;
  line-height: 1 !important;
  margin: 0 0 10px !important;
}

.cta-accent {
  width: 78px !important;
  height: 2px !important;
  margin: 0 0 16px !important;
}

.cta-summary p {
  font-size: 18px !important;
  line-height: 1.35 !important;
  margin: 0 0 18px !important;
  max-width: 480px !important;
}

.cta-summary-button {
  padding: 11px 20px !important;
  font-size: 13px !important;
  line-height: 1.1 !important;
}

@media(max-width: 760px) {
  .cta-summary.section,
  section.cta-summary,
  .cta-summary {
    height: auto !important;
    min-height: 300px !important;
    max-height: none !important;
    padding: 42px 22px !important;
    background-size: 100% 100%, cover !important;
    background-position: center center, 62% center !important;
  }

  .cta-summary h2 {
    font-size: 2.2rem !important;
  }

  .cta-summary p {
    font-size: 16px !important;
  }
}


/* Final CTA Summary replacement with new background image and left-side content */
.cta-summary.section,
section.cta-summary,
.cta-summary {
  min-height: 420px !important;
  height: auto !important;
  max-height: none !important;
  margin: 0 !important;
  padding: clamp(56px, 6vw, 88px) clamp(28px, 6vw, 96px) !important;
  border: 0 !important;
  border-radius: 0 !important;
  outline: 0 !important;
  overflow: hidden !important;
  position: relative !important;

  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;

  background-color: #F8F3EE !important;
  background-image:
    linear-gradient(
      to right,
      rgba(248,243,238,.98) 0%,
      rgba(248,243,238,.90) 30%,
      rgba(248,243,238,.58) 52%,
      rgba(248,243,238,.22) 72%,
      rgba(248,243,238,0) 100%
    ),
    url("assets/cta-summary-final.png") !important;
  background-size: 100% 100%, cover !important;
  background-position: center center, right center !important;
  background-repeat: no-repeat, no-repeat !important;
  box-shadow: none !important;
}

.cta-summary::before,
.cta-summary::after,
.cta-panel.cta-summary::before,
.cta-panel.cta-summary::after,
section.cta-summary::before,
section.cta-summary::after {
  display: none !important;
  content: none !important;
  background: none !important;
  box-shadow: none !important;
}

.cta-summary-content {
  max-width: 620px !important;
  width: 100% !important;
  position: relative !important;
  z-index: 2 !important;
}

.cta-summary h2 {
  font-family: "Cormorant Garamond", serif !important;
  color: #3F4F2F !important;
  font-size: clamp(2.8rem, 4.5vw, 5rem) !important;
  line-height: .98 !important;
  font-weight: 500 !important;
  letter-spacing: -.04em !important;
  margin: 0 0 24px !important;
}

.cta-summary p {
  font-family: "Cormorant Garamond", serif !important;
  font-size: 22px !important;
  line-height: 1.42 !important;
  font-weight: 500 !important;
  color: #3f3b37 !important;
  margin: 0 0 32px !important;
  max-width: 560px !important;
}

.cta-summary-button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-decoration: none !important;
  background: #C56A43 !important;
  color: #FFFFFF !important;
  border: 1px solid #C56A43 !important;
  padding: 14px 28px !important;
  border-radius: 4px !important;
  font-family: "Inter", sans-serif !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  letter-spacing: .02em !important;
}

.cta-summary-button:hover {
  background: #A65232 !important;
  border-color: #A65232 !important;
  color: #FFFFFF !important;
}

@media(max-width: 760px) {
  .cta-summary.section,
  section.cta-summary,
  .cta-summary {
    min-height: 420px !important;
    padding: 56px 22px !important;
    background-position: center center, 68% center !important;
  }

  .cta-summary h2 {
    font-size: clamp(2.2rem, 9vw, 3.1rem) !important;
  }

  .cta-summary p {
    font-size: 18px !important;
  }

  .cta-summary-button {
    width: 100% !important;
    max-width: 320px !important;
  }
}


/* Slightly smaller CTA summary section */
.cta-summary.section,
section.cta-summary,
.cta-summary {
  min-height: 340px !important;
  padding: clamp(42px, 4vw, 64px) clamp(28px, 6vw, 88px) !important;
}

.cta-summary h2 {
  font-size: clamp(2.4rem, 4vw, 4.2rem) !important;
  margin-bottom: 18px !important;
}

.cta-summary p {
  font-size: 19px !important;
  margin-bottom: 24px !important;
  max-width: 520px !important;
}

.cta-summary-button {
  padding: 12px 24px !important;
  font-size: 14px !important;
}

@media(max-width:760px) {
  .cta-summary.section,
  section.cta-summary,
  .cta-summary {
    min-height: 320px !important;
    padding: 44px 22px !important;
  }

  .cta-summary h2 {
    font-size: 2.2rem !important;
  }

  .cta-summary p {
    font-size: 17px !important;
  }
}





/* Tighten the top area inside the section without affecting content spacing too much */
.how-work .section-inner,
.how-work-grid,
.how-work-copy {
  margin-top: 0 !important;
}

@media(max-width: 760px) {
  .how-work {
    padding-top: 36px !important;
  }
}




/* Ensure no inner top gap creates visible blank space */
.how-work::before {
  top: 0 !important;
}

.how-work .section-inner,
.how-work-grid,
.how-work-copy {
  padding-top: 0 !important;
  margin-top: 0 !important;
}

@media(max-width: 760px) {
  .how-work {
    margin-top: -46px !important;
    padding-top: 56px !important;
  }

  .brand-break-bar + .how-work,
  .brand-divider-bar + .how-work,
  .stats-bar + .how-work,
  .transition-bar + .how-work {
    margin-top: -46px !important;
  }
}


/* Slightly thinner transition / branded divider bars across homepage */
.brand-break-bar,
.brand-divider-bar,
.stats-bar,
.transition-bar {
  padding-top: 14px !important;
  padding-bottom: 14px !important;
  min-height: auto !important;
}

.brand-break-inner,
.brand-divider-bar span,
.stats-bar span,
.transition-bar span {
  font-size: 11px !important;
  line-height: 1.2 !important;
  letter-spacing: .28em !important;
}

/* Thin any decorative divider lines used between sections */
.section::before,
.approach-editorial::before,
.home-services::before,
.how-work::before,
.why-faq::before,
.contact::before,
.cta-summary::before {
  height: 1px !important;
}

@media(max-width: 760px) {
  .brand-break-bar,
  .brand-divider-bar,
  .stats-bar,
  .transition-bar {
    padding-top: 10px !important;
    padding-bottom: 10px !important;
  }

  .brand-break-inner,
  .brand-divider-bar span,
  .stats-bar span,
  .transition-bar span {
    font-size: 9px !important;
    letter-spacing: .18em !important;
  }
}



/* Ensure spacing feels consistent */
.approach-copy,
.services-heading,
.how-work-copy,
.why-faq-content,
.contact-copy,
.cta-summary-content {
  position: relative !important;
}

/* Mobile refinement */
@media(max-width: 760px) {
  .approach-copy::after,
  .services-heading::after,
  .how-work-copy::after,
  .why-faq-content::after,
  .contact-copy::after,
  .cta-summary-content::after {
    width: 64px !important;
    margin-top: 18px !important;
  }
}


/* Terra-cotta accent lines only under section titles */
.approach-copy h2::after,
.services-heading h2::after,
.how-work h2::after,
.why-faq-content h2::after,
.contact h2::after,
.cta-summary h2::after {
  content: "" !important;
  display: block !important;
  width: 82px !important;
  height: 2px !important;
  background: #C56A43 !important;
  border-radius: 999px !important;
  margin-top: 18px !important;
}

/* Remove any extra accent lines from section containers/copy blocks */
.approach-copy::after,
.services-heading::after,
.how-work-copy::after,
.why-faq-content::after,
.contact-copy::after,
.cta-summary-content::after {
  display: none !important;
  content: none !important;
}

@media(max-width: 760px) {
  .approach-copy h2::after,
  .services-heading h2::after,
  .how-work h2::after,
  .why-faq-content h2::after,
  .contact h2::after,
  .cta-summary h2::after {
    width: 64px !important;
    margin-top: 14px !important;
  }
}



/* Keep only the terra-cotta title accent line */
.how-work h2::after {
  display: block !important;
}




/* Keep section background/content intact after removing pseudo-lines */
.how-work {
  border-top: 0 !important;
}



/* Prevent any duplicate decorative lines */
.how-work .eyebrow::before,
.how-work .eyebrow::after,
.how-work h2::before,
.how-work-copy::before,
.how-work-copy::after,
.how-work::before,
.how-work::after {
  display: none !important;
  content: none !important;
}


/* Uniform spacing between section eyebrow, heading, accent line, and description */
.approach-copy .eyebrow,
.services-heading .eyebrow,
.how-work .eyebrow,
.how-work .how-eyebrow,
.why-faq-content .eyebrow,
.contact .eyebrow,
.cta-summary-content .eyebrow {
  margin-bottom: 14px !important;
}

.approach-copy h2,
.services-heading h2,
.how-work h2,
.why-faq-content h2,
.contact h2,
.cta-summary h2 {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

/* Same terra-cotta line position under all section headings */
.approach-copy h2::after,
.services-heading h2::after,
.how-work h2::after,
.why-faq-content h2::after,
.contact h2::after,
.cta-summary h2::after {
  content: "" !important;
  display: block !important;
  width: 82px !important;
  height: 2px !important;
  background: #C56A43 !important;
  border-radius: 999px !important;
  margin-top: 18px !important;
  margin-bottom: 24px !important;
}

/* Match the distance from heading/accent to intro descriptions */
.approach-copy > p,
.services-heading p,
.how-work-copy p,
.why-faq-content > p,
.why-faq-content .intro,
.contact-copy p,
.cta-summary p {
  margin-top: 0 !important;
}


/* Do not let older pseudo lines create extra spacing */
.approach-copy::after,
.services-heading::after,
.how-work-copy::after,
.why-faq-content::after,
.contact-copy::after,
.cta-summary-content::after {
  display: none !important;
  content: none !important;
}

@media(max-width: 760px) {
  .approach-copy h2::after,
  .services-heading h2::after,
  .how-work h2::after,
  .why-faq-content h2::after,
  .contact h2::after,
  .cta-summary h2::after {
    width: 64px !important;
    margin-top: 14px !important;
    margin-bottom: 20px !important;
  }

  .approach-copy .eyebrow,
  .services-heading .eyebrow,
  .how-work .eyebrow,
  .how-work .how-eyebrow,
  .why-faq-content .eyebrow,
  .contact .eyebrow,
  .cta-summary-content .eyebrow {
    margin-bottom: 12px !important;
  }
}


/* Uniform top spacing below transition bars across all homepage sections */
.brand-break-bar + .approach-editorial,
.brand-break-bar + .home-services,
.brand-break-bar + .how-work,
.brand-break-bar + .why-faq,
.brand-break-bar + .cta-summary,
.brand-break-bar + .contact,
.brand-divider-bar + .approach-editorial,
.brand-divider-bar + .home-services,
.brand-divider-bar + .how-work,
.brand-divider-bar + .why-faq,
.brand-divider-bar + .cta-summary,
.brand-divider-bar + .contact {
  margin-top: 0 !important;
}


/* Normalize other main section top padding so spacing feels consistent */
.approach-editorial,
.home-services,
.why-faq,
.cta-summary,
.contact {
  padding-top: 88px !important;
}




/* Keep other sections unchanged/uniform */
.approach-editorial,
.home-services,
.why-faq,
.cta-summary,
.contact {
  margin-top: 0 !important;
}

/* Mobile adjustment */
@media(max-width: 760px) {
  .how-work {
    margin-top: -24px !important;
    padding-top: 40px !important;
  }

  .brand-break-bar + .how-work,
  .brand-divider-bar + .how-work,
  .stats-bar + .how-work,
  .transition-bar + .how-work {
    margin-top: -24px !important;
  }
}





/* Move only the left words/content back up */
.how-work-copy {
  transform: translateY(-58px) !important;
  position: relative !important;
  z-index: 5 !important;
}

/* Keep visual/image side lower with the section */
.how-work-image,
.how-work-visual,
.how-work-media,
.how-work figure,
.how-work .image-wrap {
  transform: none !important;
  margin-top: 0 !important;
}

@media(max-width: 760px) {
  .brand-break-bar:has(+ .how-work),
  .brand-divider-bar:has(+ .how-work),
  .stats-bar:has(+ .how-work),
  .transition-bar:has(+ .how-work) {
    transform: translateY(-22px) !important;
    margin-bottom: -22px !important;
  }

  .brand-break-bar + .how-work,
  .brand-divider-bar + .how-work,
  .stats-bar + .how-work,
  .transition-bar + .how-work,
  .how-work {
    padding-top: 70px !important;
  }

  .how-work-copy {
    transform: translateY(-36px) !important;
  }
}





/* Add only a small internal content cushion so text is not cramped */
.how-work-copy {
  padding-top: 36px !important;
}

@media(max-width: 760px) {
  .how-work {
    padding-top: 0 !important;
  }

  .how-work-copy {
    padding-top: 28px !important;
  }
}


/* Enlarge left-side Our Approach image/content area to better balance right-side text */
.approach-editorial-grid,
.approach-grid {
  grid-template-columns: 1.18fr 1fr !important;
  gap: clamp(32px, 4vw, 72px) !important;
  align-items: stretch !important;
}

/* Make left visual area larger/taller */
.approach-editorial-media,
.approach-image,
.approach-visual,
.approach-editorial figure {
  min-height: 760px !important;
  height: 100% !important;
  width: 100% !important;
}

/* Ensure image fills expanded area cleanly */
.approach-editorial-media img,
.approach-image img,
.approach-visual img,
.approach-editorial figure img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

/* Slightly narrow text side so left side visually dominates more */
.approach-copy {
  max-width: 620px !important;
}

@media(max-width: 980px) {
  .approach-editorial-grid,
  .approach-grid {
    grid-template-columns: 1fr !important;
  }

  .approach-editorial-media,
  .approach-image,
  .approach-visual,
  .approach-editorial figure {
    min-height: 520px !important;
  }

  .approach-copy {
    max-width: 100% !important;
  }
}



/* Prevent any old visual/image layer from appearing in this section */
.how-work::before,
.how-work::after,
.how-work [class*="image"],
.how-work [class*="visual"],
.how-work [class*="media"],
.how-work figure,
.how-work picture,
.how-work img {
  display: none !important;
  content: none !important;
  background: none !important;
  background-image: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
}

.how-work-copy {
  position: relative !important;
  z-index: 2 !important;
  max-width: 540px !important;
  transform: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

.how-work-copy .eyebrow {
  margin-bottom: 14px !important;
}

.how-work h2 {
  margin: 0 !important;
}

.how-work h2::after {
  content: "" !important;
  display: block !important;
  width: 82px !important;
  height: 2px !important;
  background: #C56A43 !important;
  border-radius: 999px !important;
  margin-top: 18px !important;
  margin-bottom: 24px !important;
}

.how-work-copy p {
  margin: 0 !important;
}

.how-work-steps {
  position: relative !important;
  z-index: 2 !important;
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 18px !important;
  align-self: end !important;
}

.how-work-steps .process-card {
  background: rgba(248,243,238,.86) !important;
  border: 1px solid rgba(197,106,67,.20) !important;
  border-radius: 18px !important;
  padding: 24px !important;
  backdrop-filter: blur(6px) !important;
}

.how-work-steps .process-card span {
  display: block !important;
  color: #C56A43 !important;
  font-family: "Inter", sans-serif !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  letter-spacing: .12em !important;
  margin-bottom: 12px !important;
}

@media(max-width: 980px) {
  .how-work.section,
  section.how-work {
    grid-template-columns: 1fr !important;
    min-height: auto !important;
  }

  .how-work-steps {
    grid-template-columns: 1fr !important;
  }
}

@media(max-width: 760px) {
  .how-work.section,
  section.how-work {
    padding: 64px 22px !important;
    background-position: center center, 58% center !important;
  }

  .how-work h2::after {
    width: 64px !important;
    margin-top: 14px !important;
    margin-bottom: 20px !important;
  }
}




/* Keep heading/copy higher on the left */
.how-work-copy {
  grid-column: 1 / 2 !important;
  grid-row: 1 / 2 !important;
  align-self: start !important;
  margin-top: 0 !important;
  padding-top: 0 !important;
  max-width: 540px !important;
}

/* Place steps lower and centered across the image area */
.how-work-steps {
  grid-column: 1 / -1 !important;
  grid-row: 2 / 3 !important;
  justify-self: center !important;
  align-self: end !important;
  width: min(980px, 92%) !important;
  margin: 72px auto 0 !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) auto minmax(0, 1fr) !important;
  gap: 16px !important;
  align-items: stretch !important;
  position: relative !important;
  z-index: 4 !important;
}

.how-work-steps .process-card {
  background: rgba(248,243,238,.88) !important;
  border: 1px solid rgba(197,106,67,.22) !important;
  box-shadow: 0 18px 38px rgba(70,50,28,.10) !important;
}

.step-arrow {
  align-self: center !important;
}

@media(max-width: 980px) {
  .how-work.section,
  section.how-work {
    grid-template-columns: 1fr !important;
    grid-template-rows: auto auto !important;
    min-height: auto !important;
    background-size: 100% 100%, 100% 100%, cover !important;
    background-position: center center, center center, 58% center !important;
  }

  .how-work-copy,
  .how-work-steps {
    grid-column: 1 / -1 !important;
  }

  .how-work-steps {
    width: 100% !important;
    margin-top: 42px !important;
    grid-template-columns: 1fr !important;
  }

  .step-arrow {
    transform: rotate(90deg) !important;
  }
}

@media(max-width: 760px) {
  .how-work-steps {
    margin-top: 34px !important;
  }
}



/* Remove previous/duplicate visual image layers */
.how-work::before,
.how-work::after,
.how-work [class*="image"],
.how-work [class*="visual"],
.how-work [class*="media"],
.how-work figure,
.how-work picture,
.how-work img {
  display: none !important;
  content: none !important;
  background: none !important;
  background-image: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
}

.how-work-copy {
  grid-column: 1 / 2 !important;
  grid-row: 1 / 2 !important;
  position: relative !important;
  z-index: 3 !important;
  max-width: 520px !important;
  margin: 0 !important;
  padding: 0 !important;
}

.how-work-copy .eyebrow {
  margin-bottom: 14px !important;
}

.how-work h2 {
  margin: 0 !important;
}

.how-work h2::after {
  content: "" !important;
  display: block !important;
  width: 82px !important;
  height: 2px !important;
  background: #C56A43 !important;
  border-radius: 999px !important;
  margin-top: 18px !important;
  margin-bottom: 24px !important;
}

.how-work-copy p {
  margin: 0 !important;
  max-width: 500px !important;
}

.how-work-steps {
  grid-column: 1 / -1 !important;
  grid-row: 3 / 4 !important;
  justify-self: center !important;
  align-self: end !important;

  width: min(1080px, 96%) !important;
  margin: 88px auto 0 !important;

  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) auto minmax(0, 1fr) !important;
  gap: 16px !important;
  align-items: stretch !important;
  position: relative !important;
  z-index: 4 !important;
}

.how-work-steps .process-card {
  position: relative !important;
  background: rgba(248,243,238,.92) !important;
  border: 1px solid rgba(63,79,47,.14) !important;
  border-radius: 22px !important;
  padding: 28px 26px 30px !important;
  box-shadow: 0 18px 42px rgba(70,50,28,.12) !important;
  backdrop-filter: blur(8px) !important;
  display: flex !important;
  flex-direction: column !important;
  min-height: 260px !important;
}

.process-icon {
  width: 52px !important;
  height: 52px !important;
  border-radius: 50% !important;
  background: rgba(197,106,67,.14) !important;
  border: 1px solid rgba(197,106,67,.34) !important;
  color: #C56A43 !important;

  display: flex !important;
  align-items: center !important;
  justify-content: center !important;

  font-family: "Inter", sans-serif !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  letter-spacing: .08em !important;
  margin-bottom: 18px !important;
}

.step-label,
.how-work-steps .process-card .step-label {
  display: block !important;
  color: #C56A43 !important;
  font-family: "Inter", sans-serif !important;
  font-size: 10px !important;
  font-weight: 800 !important;
  letter-spacing: .18em !important;
  text-transform: uppercase !important;
  margin-bottom: 10px !important;
}

.how-work-steps .process-card h3 {
  color: #3F4F2F !important;
  font-size: 24px !important;
  line-height: 1.08 !important;
  margin: 0 0 14px !important;
}

.how-work-steps .process-card p {
  font-size: 17px !important;
  line-height: 1.48 !important;
  margin: 0 !important;
  color: #3f3b37 !important;
}

.step-arrow {
  align-self: center !important;
  justify-self: center !important;
  color: #C56A43 !important;
  font-family: "Cormorant Garamond", serif !important;
  font-size: 38px !important;
  font-weight: 600 !important;
  line-height: 1 !important;
  padding: 0 2px !important;
}

@media(max-width: 1100px) {
  .how-work.section,
  section.how-work {
    grid-template-columns: 1fr !important;
    grid-template-rows: auto auto !important;
    min-height: auto !important;
    background-size: 100% 100%, 100% 100%, cover !important;
    background-position: center center, center center, 58% center !important;
  }

  .how-work-copy,
  .how-work-steps {
    grid-column: 1 / -1 !important;
  }

  .how-work-steps {
    grid-template-columns: 1fr !important;
    width: 100% !important;
    margin-top: 44px !important;
  }

  .step-arrow {
    transform: rotate(90deg) !important;
    font-size: 30px !important;
    padding: 4px 0 !important;
  }
}

@media(max-width: 760px) {
  .how-work.section,
  section.how-work {
    padding: 64px 22px !important;
    background-position: center center, center center, 62% center !important;
  }

  .how-work h2::after {
    width: 64px !important;
    margin-top: 14px !important;
    margin-bottom: 20px !important;
  }

  .how-work-steps .process-card {
    min-height: auto !important;
    padding: 24px 22px !important;
  }

  .process-icon {
    width: 46px !important;
    height: 46px !important;
  }
}



/* Remove every old/duplicate image layer in this section */
.how-work::before,
.how-work::after,
section.how-work::before,
section.how-work::after,
.how-work [class*="image"],
.how-work [class*="visual"],
.how-work [class*="media"],
.how-work figure,
.how-work picture,
.how-work img {
  display: none !important;
  content: none !important;
  background: none !important;
  background-image: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  width: 0 !important;
  height: 0 !important;
  max-width: 0 !important;
  max-height: 0 !important;
}

/* Keep copy readable without adding white boxes */
.how-work-copy {
  grid-column: 1 / 2 !important;
  grid-row: 1 / 2 !important;
  position: relative !important;
  z-index: 3 !important;
  max-width: 520px !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

/* Professional cards that blend with beige rather than looking like white blocks */
.how-work-steps {
  grid-column: 1 / -1 !important;
  grid-row: 3 / 4 !important;
  justify-self: center !important;
  align-self: end !important;
  width: min(1080px, 96%) !important;
  margin: 96px auto 0 !important;

  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) auto minmax(0, 1fr) !important;
  gap: 16px !important;
  align-items: stretch !important;
  position: relative !important;
  z-index: 4 !important;
}

.how-work-steps .process-card {
  background: rgba(248,243,238,.76) !important;
  border: 1px solid rgba(63,79,47,.12) !important;
  border-radius: 22px !important;
  padding: 28px 26px 30px !important;
  box-shadow: 0 16px 36px rgba(70,50,28,.08) !important;
  backdrop-filter: blur(5px) !important;
  min-height: 248px !important;
}

.process-icon {
  background: rgba(197,106,67,.12) !important;
}

@media(max-width: 1100px) {
  .how-work.section,
  section.how-work {
    grid-template-columns: 1fr !important;
    grid-template-rows: auto auto !important;
    min-height: auto !important;
    background-size: 100% 100%, 100% 100%, cover !important;
    background-position: center center, center center, 58% center !important;
  }

  .how-work-copy,
  .how-work-steps {
    grid-column: 1 / -1 !important;
  }

  .how-work-steps {
    grid-template-columns: 1fr !important;
    width: 100% !important;
    margin-top: 44px !important;
  }

  .step-arrow {
    transform: rotate(90deg) !important;
    font-size: 30px !important;
    padding: 4px 0 !important;
  }
}

@media(max-width: 760px) {
  .how-work.section,
  section.how-work {
    padding: 64px 22px !important;
    background-position: center center, center center, 62% center !important;
  }

  .how-work-steps .process-card {
    min-height: auto !important;
    padding: 24px 22px !important;
    background: rgba(248,243,238,.84) !important;
  }
}


/* Clean actual How We Work section reset */
.how-work.section,
section.how-work {
  position: relative !important;
  overflow: hidden !important;
  min-height: 760px !important;
  margin: 0 !important;
  padding: clamp(72px, 7vw, 112px) clamp(28px, 6vw, 96px) clamp(70px, 7vw, 104px) !important;

  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;

  background-color: #F8F3EE !important;
  background-image:
    linear-gradient(
      to right,
      rgba(248,243,238,.94) 0%,
      rgba(248,243,238,.78) 28%,
      rgba(248,243,238,.38) 58%,
      rgba(248,243,238,.10) 100%
    ),
    url("assets/how-we-work-reset-background.png") !important;
  background-size: 100% 100%, cover !important;
  background-position: center center, 62% center !important;
  background-repeat: no-repeat, no-repeat !important;
}

/* Remove any duplicate media/image layers from older versions */
.how-work::before,
.how-work::after,
.how-work [class*="image"],
.how-work [class*="visual"],
.how-work [class*="media"],
.how-work figure,
.how-work picture,
.how-work img {
  display: none !important;
  content: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  background: none !important;
  background-image: none !important;
}

.how-work-header {
  position: relative !important;
  z-index: 2 !important;
  max-width: 720px !important;
  margin: 0 auto 76px !important;
  text-align: center !important;
}

.how-work-header .eyebrow {
  color: #8A6F22 !important;
  margin-bottom: 14px !important;
  text-align: center !important;
}

.how-work-header h2 {
  font-family: "Cormorant Garamond", serif !important;
  color: #3F4F2F !important;
  font-size: clamp(3rem, 5vw, 5.2rem) !important;
  line-height: .98 !important;
  font-weight: 500 !important;
  letter-spacing: -.04em !important;
  margin: 0 !important;
  text-align: center !important;
}

.how-work-header h2::after {
  content: "" !important;
  display: block !important;
  width: 54px !important;
  height: 2px !important;
  background: #C56A43 !important;
  border-radius: 999px !important;
  margin: 18px auto 24px !important;
}

.how-work-header p {
  font-family: "Cormorant Garamond", serif !important;
  font-size: 21px !important;
  line-height: 1.45 !important;
  font-weight: 500 !important;
  color: #3f3b37 !important;
  max-width: 680px !important;
  margin: 0 auto !important;
}

.how-work-steps {
  position: relative !important;
  z-index: 3 !important;
  width: min(980px, 94%) !important;
  margin: 0 auto !important;

  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) auto minmax(0, 1fr) !important;
  gap: 16px !important;
  align-items: center !important;
}

.how-work-steps .process-card {
  position: relative !important;
  background: rgba(248,243,238,.82) !important;
  border: 1px solid rgba(63,79,47,.20) !important;
  border-radius: 18px !important;
  padding: 30px 26px !important;
  min-height: 330px !important;
  box-shadow: 0 18px 42px rgba(70,50,28,.11) !important;
  backdrop-filter: blur(5px) !important;

  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  text-align: center !important;
  justify-content: flex-start !important;
}

.process-icon {
  width: 74px !important;
  height: 74px !important;
  border-radius: 999px !important;
  border: 1px solid rgba(138,111,34,.38) !important;
  background: rgba(248,243,238,.66) !important;
  color: #9A7627 !important;

  display: flex !important;
  align-items: center !important;
  justify-content: center !important;

  font-family: "Cormorant Garamond", serif !important;
  font-size: 42px !important;
  line-height: 1 !important;
  margin-bottom: 18px !important;
}

.step-label {
  display: block !important;
  font-family: "Inter", sans-serif !important;
  color: #C56A43 !important;
  font-size: 10px !important;
  font-weight: 800 !important;
  letter-spacing: .18em !important;
  text-transform: uppercase !important;
  margin-bottom: 12px !important;
}

.how-work-steps .process-card h3 {
  font-family: "Cormorant Garamond", serif !important;
  color: #3F4F2F !important;
  font-size: 30px !important;
  line-height: 1.05 !important;
  font-weight: 600 !important;
  margin: 0 0 18px !important;
}

.how-work-steps .process-card h3::after {
  content: "" !important;
  display: block !important;
  width: 42px !important;
  height: 1px !important;
  background: #C56A43 !important;
  margin: 16px auto 0 !important;
}

.how-work-steps .process-card p {
  font-family: "Cormorant Garamond", serif !important;
  color: #3f3b37 !important;
  font-size: 17px !important;
  line-height: 1.45 !important;
  font-weight: 500 !important;
  margin: 0 !important;
}

.step-arrow {
  color: #9A7627 !important;
  font-family: "Cormorant Garamond", serif !important;
  font-size: 42px !important;
  line-height: 1 !important;
  font-weight: 600 !important;
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
}

@media(max-width: 980px) {
  .how-work.section,
  section.how-work {
    min-height: auto !important;
    padding: 64px 24px !important;
    background-position: center center, 58% center !important;
  }

  .how-work-header {
    margin-bottom: 44px !important;
  }

  .how-work-steps {
    grid-template-columns: 1fr !important;
    width: 100% !important;
  }

  .step-arrow {
    transform: rotate(90deg) !important;
    font-size: 32px !important;
  }

  .how-work-steps .process-card {
    min-height: auto !important;
  }
}

@media(max-width: 760px) {
  .how-work-header h2 {
    font-size: clamp(2.3rem, 10vw, 3.2rem) !important;
  }

  .how-work-header p {
    font-size: 18px !important;
  }

  .process-icon {
    width: 62px !important;
    height: 62px !important;
    font-size: 34px !important;
  }

  .how-work-steps .process-card h3 {
    font-size: 26px !important;
  }
}



/* Refined How We Work background fill */
.how-work.section,
section.how-work {
  min-height: 800px !important;

  background-image:
    linear-gradient(
      to right,
      rgba(248,243,238,.92) 0%,
      rgba(248,243,238,.72) 28%,
      rgba(248,243,238,.34) 56%,
      rgba(248,243,238,.10) 100%
    ),
    url("assets/how-we-work-reset-background.png") !important;

  background-size: 100% 100%, cover !important;
  background-position: center center, 62% center !important;
  background-repeat: no-repeat, no-repeat !important;
}


/* Final How We Work background image update */
.how-work.section,
section.how-work {
  background-color: #F8F3EE !important;
  background-image:
    linear-gradient(
      to right,
      rgba(248,243,238,.93) 0%,
      rgba(248,243,238,.76) 28%,
      rgba(248,243,238,.36) 56%,
      rgba(248,243,238,.12) 100%
    ),
    url("assets/how-we-work-background-may18.png") !important;
  background-size: 100% 100%, cover !important;
  background-position: center center, center center !important;
  background-repeat: no-repeat, no-repeat !important;
}

/* Ensure no duplicate/old How We Work image layer appears */
.how-work::before,
.how-work::after,
.how-work [class*="image"],
.how-work [class*="visual"],
.how-work [class*="media"],
.how-work figure,
.how-work picture,
.how-work img {
  display: none !important;
  content: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  background: none !important;
  background-image: none !important;
}



/* More faded How We Work background */
.how-work.section,
section.how-work {
  background-image:
    linear-gradient(
      to right,
      rgba(248,243,238,.97) 0%,
      rgba(248,243,238,.90) 24%,
      rgba(248,243,238,.72) 46%,
      rgba(248,243,238,.54) 68%,
      rgba(248,243,238,.38) 100%
    ),
    url("assets/how-we-work-background-may18.png") !important;

  background-size: 100% 100%, cover !important;
  background-position: center center, center center !important;
  background-repeat: no-repeat, no-repeat !important;
}



/* Match How We Work lettering and arrows to site dark green */
.how-work-header .eyebrow,
.step-label,
.how-work-steps .process-card h3,
.process-icon,
.step-arrow {
  color: #3F4F2F !important;
}

.how-work-header h2::after,
.how-work-steps .process-card h3::after {
  background: #3F4F2F !important;
}

.process-icon {
  border-color: rgba(63,79,47,.30) !important;
}


/* Terracotta accent line under How We Work heading */
.how-work-header h2::after {
  background: #C56A43 !important;
}

/* Contact section header updated to mirror the How We Work intro layout */
.contact {
  display: block !important;
}

.contact-header {
  position: relative !important;
  z-index: 4 !important;
  max-width: 720px !important;
  margin: 0 auto 76px !important;
  text-align: center !important;
}

.contact-header .eyebrow {
  color: #8A6F22 !important;
  margin-bottom: 14px !important;
  text-align: center !important;
}

.contact-header h2 {
  font-family: "Cormorant Garamond", serif !important;
  color: #3F4F2F !important;
  font-size: clamp(3rem, 5vw, 5.2rem) !important;
  line-height: .98 !important;
  font-weight: 500 !important;
  letter-spacing: -.04em !important;
  margin: 0 !important;
  text-align: center !important;
}

.contact-header h2::after {
  content: "" !important;
  display: block !important;
  width: 54px !important;
  height: 2px !important;
  background: #C56A43 !important;
  border-radius: 999px !important;
  margin: 18px auto 24px !important;
}

.contact-header p {
  font-family: "Cormorant Garamond", serif !important;
  font-size: 21px !important;
  line-height: 1.45 !important;
  font-weight: 500 !important;
  color: #3f3b37 !important;
  max-width: 680px !important;
  margin: 0 auto !important;
}

.contact-grid {
  display: grid !important;
  grid-template-columns: .9fr 1.1fr !important;
  gap: 58px !important;
  align-items: start !important;
}

.contact-grid > * {
  position: relative !important;
  z-index: 4 !important;
}

@media(max-width: 980px) {
  .contact-header {
    margin-bottom: 44px !important;
  }

  .contact-grid {
    grid-template-columns: 1fr !important;
    gap: 40px !important;
  }
}

@media(max-width: 760px) {
  .contact-header h2 {
    font-size: clamp(2.3rem, 10vw, 3.2rem) !important;
  }

  .contact-header p {
    font-size: 18px !important;
  }
}

/* Final contact-to-footer flow: make footer continue directly from contact */
.contact {
  margin-bottom: 0 !important;
  padding-bottom: 72px !important;
  background:
    linear-gradient(180deg,
      #F8F3EE 0%,
      #F6EFE8 48%,
      #F8F3EE 100%) !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
}

.contact::after {
  display: none !important;
  content: none !important;
}

.site-footer,
footer.site-footer,
footer {
  margin-top: -1px !important;
  padding-top: 10px !important;
  background: #F8F3EE !important;
  border-top: 0 !important;
  box-shadow: none !important;
}

.site-footer::before,
.site-footer::after,
footer::before,
footer::after {
  display: none !important;
  content: none !important;
  background: none !important;
  box-shadow: none !important;
}

.footer-stack {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.footer-nav {
  margin-top: 0 !important;
}

@media(max-width: 760px) {
  .contact {
    padding-bottom: 52px !important;
  }

  .site-footer,
  footer.site-footer,
  footer {
    padding-top: 6px !important;
  }
}

/* FIX: Ensure actual uploaded hero image is visible in the live HTML site */
.hero {
  background-image:
    linear-gradient(
      to right,
      rgba(248,243,238,.94) 0%,
      rgba(248,243,238,.82) 28%,
      rgba(248,243,238,.46) 52%,
      rgba(248,243,238,.18) 72%,
      rgba(248,243,238,.04) 100%
    ),
    url("assets/hero-final-replacement.png") !important;
  background-size: cover !important;
  background-position: center right !important;
  background-repeat: no-repeat !important;
  background-color: #F8F3EE !important;
}

@media(max-width: 760px) {
  .hero {
    background-image:
      linear-gradient(
        to right,
        rgba(248,243,238,.96) 0%,
        rgba(248,243,238,.78) 42%,
        rgba(248,243,238,.32) 72%,
        rgba(248,243,238,.10) 100%
      ),
      url("assets/hero-final-replacement.png") !important;
    background-position: 70% center !important;
  }
}

footer a,
.footer a,
.footer-nav a,
footer .nav-link {
    color:#000000 !important;
    font-weight:600 !important;
}

#approach,
.approach,
.our-approach {
    background-image:url('assets/our-approach-bg.png') !important;
    background-size:cover !important;
    background-position:center center !important;
    background-repeat:no-repeat !important;
}


/* Correct left-side image panel for Our Approach section */
#approach .approach-image,
.approach-editorial .approach-image,
.approach-grid .approach-image {
    background-image:
        linear-gradient(rgba(255,255,255,.04), rgba(255,255,255,.04)),
        url('assets/approach-team-collaboration.png') !important;
    background-size: cover !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
    min-height: 560px !important;
}

/* Remove full-section approach background override so the image only appears on the left panel */
#approach,
.approach-editorial,
.our-approach {
    background-image: none !important;
}


/* FINAL FIX: actual visible left image for Our Approach on index page */
.approach-editorial .approach-grid .approach-image,
#approach .approach-image {
    min-height: 560px !important;
    border-radius: 6px !important;
    overflow: hidden !important;
    background: none !important;
    box-shadow: 0 24px 48px rgba(70,50,28,.10) !important;
}

.approach-editorial .approach-grid .approach-image img,
#approach .approach-image img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 560px !important;
    object-fit: cover !important;
    object-position: center center !important;
}

/* keep the uploaded approach image from appearing across the whole section */
#approach,
.approach-editorial,
.our-approach {
    background-image: none !important;
}

footer a,
.footer-nav a,
.site-footer a {
    color: #000000 !important;
    opacity: 1 !important;
    text-shadow: none !important;
    font-weight: 700 !important;
}

@media(max-width: 1100px) {
    .approach-editorial .approach-grid .approach-image,
    #approach .approach-image,
    .approach-editorial .approach-grid .approach-image img,
    #approach .approach-image img {
        min-height: 400px !important;
    }
}

@media(max-width: 760px) {
    .approach-editorial .approach-grid .approach-image,
    #approach .approach-image,
    .approach-editorial .approach-grid .approach-image img,
    #approach .approach-image img {
        min-height: 300px !important;
    }
}


/* FINAL EXACT PATCH: show the Our Approach left-side image from the local assets folder */
section#approach.approach-editorial .approach-grid .approach-image {
    display: block !important;
    min-height: 560px !important;
    height: 560px !important;
    overflow: hidden !important;
    border-radius: 6px !important;
    background: transparent !important;
}

section#approach.approach-editorial .approach-grid .approach-image img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 560px !important;
    object-fit: cover !important;
    object-position: center center !important;
    visibility: visible !important;
    opacity: 1 !important;
}

/* footer contrast */
.site-footer a,
.site-footer .footer-nav a,
footer a {
    color: #000000 !important;
    opacity: 1 !important;
    font-weight: 700 !important;
    text-shadow: none !important;
}

@media(max-width: 1100px) {
    section#approach.approach-editorial .approach-grid .approach-image,
    section#approach.approach-editorial .approach-grid .approach-image img {
        height: 400px !important;
        min-height: 400px !important;
    }
}

@media(max-width: 760px) {
    section#approach.approach-editorial .approach-grid .approach-image,
    section#approach.approach-editorial .approach-grid .approach-image img {
        height: 300px !important;
        min-height: 300px !important;
    }
}


/* FINAL FIT PATCH: show the full top of the Our Approach image */
section#approach.approach-editorial .approach-grid .approach-image {
    height: auto !important;
    min-height: 0 !important;
    background: transparent !important;
}

section#approach.approach-editorial .approach-grid .approach-image img {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    object-fit: contain !important;
    object-position: top center !important;
    visibility: visible !important;
    opacity: 1 !important;
}


/* FINAL FIX: Personalized Game Plan / FAQ section image */
section#faq.why-faq .why-faq-image,
.why-faq .why-faq-image,
#faq .why-faq-image {
    display: block !important;
    min-height: 620px !important;
    border-radius: 6px !important;
    background-image:
        linear-gradient(rgba(255,255,255,.06), rgba(255,255,255,.06)),
        url('assets/personalized-game-plan-faq-centered.png') !important;
    background-size: cover !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
    opacity: 1 !important;
    visibility: visible !important;
}

@media(max-width: 1100px) {
    section#faq.why-faq .why-faq-image,
    .why-faq .why-faq-image,
    #faq .why-faq-image {
        min-height: 420px !important;
    }
}

@media(max-width: 760px) {
    section#faq.why-faq .why-faq-image,
    .why-faq .why-faq-image,
    #faq .why-faq-image {
        min-height: 320px !important;
        background-position: center top !important;
    }
}


/* Show entire Personalized Game Plan image without cropping */
section#faq.why-faq .why-faq-image,
.why-faq .why-faq-image,
#faq .why-faq-image {
    background-size: contain !important;
    background-position: top center !important;
    background-repeat: no-repeat !important;
    min-height: 900px !important;
}


/* REAL IMAGE FIX FOR FAQ SECTION */
.why-faq-image,
#faq .why-faq-image {
    background: none !important;
    min-height: 0 !important;
    height: auto !important;
    overflow: hidden !important;
}

.why-faq-image img,
#faq .why-faq-image img {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    object-fit: contain !important;
    object-position: top center !important;
    max-width: 100% !important;
    opacity: 1 !important;
    visibility: visible !important;
}


/* Smarter Path to Efficiency / How We Work cards */
.process-card,
.how-we-work-card,
.step-card,
.process-step {
    max-width: 280px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding: 1.5rem !important;
}

.process-grid,
.how-we-work-grid,
.steps-grid {
    gap: 1.5rem !important;
    align-items: start !important;
}

@media (max-width: 1200px) {
    .process-card,
    .how-we-work-card,
    .step-card,
    .process-step {
        max-width: 250px !important;
    }
}

@media (max-width: 768px) {
    .process-card,
    .how-we-work-card,
    .step-card,
    .process-step {
        max-width: 100% !important;
    }
}

/* ===== Final resource-section replacement and image visibility patches ===== */
section#how-we-work,
.how-work {
  display: none !important;
}

.approach-editorial .approach-image,
#approach .approach-image,
.why-faq .why-faq-image,
#faq .why-faq-image {
  background: none !important;
  overflow: hidden !important;
  border-radius: 6px !important;
}

.approach-editorial .approach-image img,
#approach .approach-image img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  object-fit: contain !important;
  object-position: top center !important;
}

.why-faq .why-faq-image,
#faq .why-faq-image {
  min-height: 0 !important;
  height: auto !important;
}

.why-faq .why-faq-image img,
#faq .why-faq-image img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  object-fit: contain !important;
  object-position: top center !important;
}

.resources-break {
  margin-top: 0 !important;
}

.resources-section {
  position: relative !important;
  padding-top: 96px !important;
  padding-bottom: 96px !important;
  background: linear-gradient(180deg, #F1E8E0 0%, #F4EADF 48%, #F1E8E0 100%) !important;
  box-shadow: inset 0 36px 52px rgba(241,232,224,.35), inset 0 -36px 52px rgba(241,232,224,.35) !important;
}

.resources-heading {
  max-width: 760px !important;
  margin: 0 auto 46px !important;
  text-align: center !important;
}

.resources-heading h2 {
  font-family: "Cormorant Garamond", serif !important;
  font-weight: 500 !important;
  font-size: clamp(1.45rem, 2.15vw, 2.15rem) !important;
  line-height: 1.18 !important;
  letter-spacing: -0.015em !important;
  color: #3F4F2F !important;
  margin: 0 0 18px !important;
}

.resources-heading p {
  font-family: "Cormorant Garamond", serif !important;
  font-size: 18px !important;
  line-height: 1.5 !important;
  font-weight: 500 !important;
  color: #3f3b37 !important;
  margin: 0 auto !important;
  max-width: 650px !important;
}

.resources-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 24px !important;
  max-width: 1120px !important;
  margin: 0 auto !important;
}

.resource-card {
  background: rgba(251,248,243,.96) !important;
  border: 1px solid rgba(90,70,45,.08) !important;
  box-shadow: 0 24px 48px rgba(70,50,28,.10), 0 1px 0 rgba(255,255,255,.35) inset !important;
  border-radius: 6px !important;
  padding: 28px !important;
  display: flex !important;
  flex-direction: column !important;
  min-height: 100% !important;
  transition: transform .2s ease, box-shadow .2s ease !important;
}

.resource-card:hover {
  transform: translateY(-4px) !important;
  box-shadow: 0 28px 56px rgba(70,50,28,.13), 0 1px 0 rgba(255,255,255,.35) inset !important;
}

.resource-icon {
  width: 46px !important;
  height: 46px !important;
  border-radius: 50% !important;
  display: grid !important;
  place-items: center !important;
  background: rgba(79,90,46,.12) !important;
  color: #3F4F2F !important;
  font-family: "Inter", sans-serif !important;
  font-size: 22px !important;
  font-weight: 800 !important;
  margin-bottom: 18px !important;
}

.resource-card h3 {
  font-family: "Cormorant Garamond", serif !important;
  font-size: clamp(1.15rem, 1.45vw, 1.45rem) !important;
  line-height: 1.12 !important;
  letter-spacing: -0.015em !important;
  font-weight: 600 !important;
  color: #3F4F2F !important;
  margin: 0 0 12px !important;
}

.resource-card p {
  font-family: "Cormorant Garamond", serif !important;
  color: #3f3b37 !important;
  font-size: 18px !important;
  line-height: 1.5 !important;
  margin: 0 0 20px !important;
  flex: 1 !important;
}

.resource-card a {
  font-family: "Inter", sans-serif !important;
  color: var(--orange) !important;
  text-decoration: none !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  letter-spacing: .05em !important;
  text-transform: uppercase !important;
}

.site-footer a,
.site-footer .footer-nav a,
footer a {
  color: #000000 !important;
  opacity: 1 !important;
  font-weight: 700 !important;
  text-shadow: none !important;
}

@media(max-width: 1100px) {
  .resources-grid {
    grid-template-columns: 1fr !important;
    max-width: 640px !important;
  }
}

@media(max-width: 760px) {
  .resources-section {
    padding-top: 72px !important;
    padding-bottom: 72px !important;
  }

  .resources-heading h2 {
    font-size: clamp(1.35rem, 5.5vw, 1.9rem) !important;
  }

  .resources-heading p,
  .resource-card p {
    font-size: 16px !important;
  }
}


/* FINAL PATCH: restore hero background image */
.hero {
    position: relative !important;
    overflow: hidden !important;
    isolation: isolate !important;
    background-image:
        radial-gradient(ellipse at 18% 48%,
            #F8F3EE 0%,
            rgba(248,243,238,.92) 24%,
            rgba(248,243,238,.58) 42%,
            rgba(248,243,238,.22) 58%,
            rgba(248,243,238,0) 74%),
        linear-gradient(90deg,
            #F8F3EE 0%,
            rgba(248,243,238,.88) 16%,
            rgba(248,243,238,.52) 31%,
            rgba(248,243,238,.18) 48%,
            rgba(248,243,238,0) 66%),
        linear-gradient(180deg,
            rgba(248,243,238,.34) 0%,
            rgba(248,243,238,.06) 22%,
            rgba(248,243,238,0) 58%,
            rgba(248,243,238,.22) 86%,
            #F8F3EE 100%),
        url("assets/hero-background-final.png") !important;
    background-size: 80% 112%, 100% 100%, 100% 100%, cover !important;
    background-position: left center, left center, center center, 82% center !important;
    background-repeat: no-repeat !important;
    background-color: #F8F3EE !important;
}

.hero::before {
    display: none !important;
    content: none !important;
}

.hero-copy {
    position: relative !important;
    z-index: 3 !important;
}

@media(max-width: 760px) {
    .hero {
        background-image:
            linear-gradient(90deg,
                #F8F3EE 0%,
                rgba(248,243,238,.90) 30%,
                rgba(248,243,238,.54) 58%,
                rgba(248,243,238,.16) 100%),
            linear-gradient(180deg,
                rgba(248,243,238,.42) 0%,
                rgba(248,243,238,.08) 34%,
                rgba(248,243,238,.32) 86%,
                #F8F3EE 100%),
            url("assets/hero-background-final.png") !important;
        background-size: 100% 100%, 100% 100%, auto 104% !important;
        background-position: left center, center center, 78% center !important;
    }
}

/* FINAL PATCH: keep all four Services cards equal size across devices */
.services-grid {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    align-items: stretch !important;
}

.home-service-card {
    height: 100% !important;
    min-height: 100% !important;
    display: flex !important;
    flex-direction: column !important;
}

.home-service-image {
    height: clamp(170px, 14vw, 210px) !important;
    flex: 0 0 auto !important;
}

.home-service-content {
    flex: 1 1 auto !important;
    display: flex !important;
    flex-direction: column !important;
}

.home-service-content p {
    flex: 1 1 auto !important;
}

.home-service-content a {
    margin-top: auto !important;
}

@media(max-width: 1100px) {
    .services-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media(max-width: 640px) {
    .services-grid {
        grid-template-columns: 1fr !important;
    }

    .home-service-image {
        height: 220px !important;
    }
}


/* Compact Contact Section */
.contact{
    padding-top: 70px !important;
    padding-bottom: 70px !important;
}

.contact-grid{
    max-width: 950px !important;
    margin: 0 auto !important;
    gap: 32px !important;
    align-items: start !important;
}

.contact-copy{
    padding-right: 10px !important;
}

.contact-copy h2{
    margin-bottom: 12px !important;
}

.contact-details{
    margin-top: 18px !important;
}

.contact-address{
    margin-top: 14px;
    color: #5c5248;
    line-height: 1.7;
    font-size: 0.98rem;
}

.contact-form{
    padding: 22px !important;
}

.contact-form textarea{
    min-height: 120px !important;
}

@media(max-width:768px){
    .contact{
        padding-top: 55px !important;
        padding-bottom: 55px !important;
    }
}


/* Refined Contact Section */
.contact-grid{
    max-width: 820px !important;
    gap: 24px !important;
}

.contact-copy{
    max-width: 340px !important;
}

.contact-form{
    max-width: 420px !important;
    padding: 18px !important;
    margin-left: auto !important;
}

.contact-form input,
.contact-form textarea{
    padding: 10px 12px !important;
}

.contact-form textarea{
    min-height: 90px !important;
}

.contact-address{
    font-family: "Cormorant Garamond", serif !important;
    color: #3f2f20 !important;
    font-size: 1.15rem !important;
    font-weight: 500 !important;
    line-height: 1.5 !important;
    margin-top: 14px !important;
}

.contact-details a{
    color: #3f2f20 !important;
}

@media(max-width:768px){
    .contact-grid{
        max-width: 100% !important;
    }

    .contact-copy,
    .contact-form{
        max-width: 100% !important;
    }
}


/* Center contact section layout */
.contact-grid{
    max-width: 900px !important;
    margin: 0 auto !important;
    justify-content: center !important;
    align-items: center !important;
}

/* Center the form box */
.contact-form{
    max-width: 400px !important;
    margin: 0 auto !important;
}

/* Even spacing between phone, email, and address */
.contact-details{
    display: flex !important;
    flex-direction: column !important;
    gap: 18px !important;
    margin-top: 22px !important;
}

.contact-details a,
.contact-address{
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1.6 !important;
}

/* Better visual centering of the left content */
.contact-copy{
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
}


/* Branded Contact Section Refinement */
.contact {
    background:
        linear-gradient(180deg,
            #F8F3EE 0%,
            #F1E8E0 48%,
            #F8F3EE 100%) !important;
}

.contact-grid {
    max-width: 980px !important;
    gap: 42px !important;
    align-items: center !important;
}

.contact-copy {
    max-width: 460px !important;
}

.contact-copy .eyebrow {
    color: #3F4F2F !important;
}

.contact-copy h2 {
    font-family: "Cormorant Garamond", serif !important;
    color: #2A2F23 !important;
    font-weight: 500 !important;
    letter-spacing: -0.02em !important;
}

.contact-copy .intro {
    font-family: "Cormorant Garamond", serif !important;
    color: #3f3b37 !important;
    font-size: 18px !important;
    line-height: 1.55 !important;
    font-weight: 500 !important;
    max-width: 460px !important;
}

/* Make contact details visually equal and aligned with site typography */
.contact-details {
    gap: 14px !important;
    margin-top: 22px !important;
}

.contact-details a,
.contact-address {
    font-family: "Cormorant Garamond", serif !important;
    color: #3f3b37 !important;
    font-size: 20px !important;
    line-height: 1.45 !important;
    font-weight: 500 !important;
    letter-spacing: -0.01em !important;
    text-decoration: none !important;
}

/* Soften the form so it feels integrated, not like a separate bright box */
.contact-form {
    max-width: 390px !important;
    padding: 20px !important;
    background:
        linear-gradient(180deg,
            rgba(251,246,239,.72) 0%,
            rgba(248,241,234,.58) 100%) !important;
    border: 1px solid rgba(93,66,38,.10) !important;
    border-radius: 6px !important;
    box-shadow: 0 14px 34px rgba(72,53,26,.055) !important;
    backdrop-filter: blur(4px) !important;
}

.contact-form input,
.contact-form textarea {
    font-family: "Cormorant Garamond", serif !important;
    font-size: 17px !important;
    color: #3f3b37 !important;
    background: rgba(255,255,255,.58) !important;
    border: 1px solid rgba(93,66,38,.12) !important;
    border-radius: 4px !important;
    padding: 10px 12px !important;
}

.contact-form input::placeholder,
.contact-form textarea::placeholder {
    color: rgba(63,59,55,.72) !important;
}

.contact-form textarea {
    min-height: 92px !important;
}

.contact-form button {
    font-family: "Inter", sans-serif !important;
    background: #B85A36 !important;
    color: #ffffff !important;
    border-radius: 4px !important;
    padding: 11px 16px !important;
    font-size: 12px !important;
    letter-spacing: .08em !important;
    text-transform: uppercase !important;
}

.contact-form button:hover {
    background: #9F4B2B !important;
}

@media(max-width: 768px) {
    .contact-grid {
        gap: 30px !important;
    }

    .contact-copy,
    .contact-copy .intro,
    .contact-form {
        max-width: 100% !important;
    }

    .contact-details a,
    .contact-address {
        font-size: 18px !important;
    }
}


/* Slightly larger contact form box */
.contact-form{
    max-width: 460px !important;
    padding: 24px !important;
}

.contact-form textarea{
    min-height: 110px !important;
}


/* Center contact content and form together */
.contact-grid{
    max-width: 1000px !important;
    margin: 0 auto !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 48px !important;
}

.contact-copy{
    max-width: 420px !important;
    display:flex !important;
    flex-direction:column !important;
    justify-content:center !important;
}

/* Slightly larger form */
.contact-form{
    max-width: 500px !important;
    width:100% !important;
    padding: 28px !important;
    margin: 0 !important;
}

/* Dark green CTA button to match site header accents */
.contact-form button{
    background: #3F4F2F !important;
    border: 1px solid #3F4F2F !important;
}

.contact-form button:hover{
    background: #324024 !important;
    border-color: #324024 !important;
}


/* Our Approach question lines bold */
.checkpoint-line:first-child,
.approach-check .checkpoint-line:first-child,
.approach-check-content .checkpoint-line:first-child {
    font-weight: 700 !important;
    color: #2A2F23 !important;
}


/* Service detail pages */
.service-detail-hero {
    padding-top: 170px !important;
    background:
        linear-gradient(180deg, #F8F3EE 0%, #F1E8E0 55%, #F8F3EE 100%) !important;
}

.service-detail-wrap {
    max-width: 1120px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: minmax(0, 1.15fr) minmax(280px, .85fr);
    gap: 44px;
    align-items: center;
}

.service-detail-copy h1 {
    font-family: "Cormorant Garamond", serif;
    color: #2A2F23;
    font-size: clamp(48px, 5vw, 76px);
    line-height: .95;
    font-weight: 500;
    letter-spacing: -.04em;
    margin-bottom: 22px;
}

.service-detail-copy p,
.service-detail-section p,
.service-detail-card p,
.service-detail-cta p {
    font-family: "Cormorant Garamond", serif !important;
    color: #3f3b37 !important;
    font-size: 20px !important;
    line-height: 1.55 !important;
    font-weight: 500 !important;
}

.service-detail-card {
    background: rgba(251,246,239,.72);
    border: 1px solid rgba(93,66,38,.10);
    border-radius: 6px;
    padding: 32px;
    box-shadow: 0 18px 42px rgba(72,53,26,.07);
}

.service-detail-card h2 {
    color: #3F4F2F !important;
    margin-bottom: 14px !important;
}

.service-detail-section {
    background: #F8F3EE !important;
}

.service-detail-grid {
    max-width: 1120px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr);
    gap: 48px;
    align-items: start;
}

.service-detail-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: grid;
    gap: 16px;
}

.service-detail-list li {
    font-family: "Cormorant Garamond", serif;
    font-size: 20px;
    line-height: 1.45;
    color: #3f3b37;
    background: rgba(251,248,243,.82);
    border: 1px solid rgba(93,66,38,.10);
    border-radius: 6px;
    padding: 18px 20px;
    box-shadow: 0 12px 28px rgba(72,53,26,.045);
}

.service-detail-cta {
    text-align: center;
    background: linear-gradient(135deg, #E4D5BF 0%, #F1E8E0 100%) !important;
}

.service-detail-cta h2 {
    color: #2A2F23 !important;
}

@media(max-width: 900px) {
    .service-detail-wrap,
    .service-detail-grid {
        grid-template-columns: 1fr;
    }

    .service-detail-hero {
        padding-top: 130px !important;
    }
}


/* Final service page brand refinement */
.service-detail-hero,
.service-detail-section,
.service-detail-cta {
    background:
        linear-gradient(180deg,
            #F8F3EE 0%,
            #F1E8E0 52%,
            #F8F3EE 100%) !important;
}

/* Match service page headings to main index green styling */
.service-detail-copy h1,
.service-detail-section h2,
.service-detail-card h2,
.service-detail-cta h2 {
    color: #3F4F2F !important;
}

.service-detail-copy .eyebrow,
.service-detail-section .eyebrow {
    color: #3F4F2F !important;
}

/* Match descriptions/body copy to homepage palette */
.service-detail-copy p,
.service-detail-section p,
.service-detail-card p,
.service-detail-cta p,
.service-detail-list li {
    color: #3f3b37 !important;
}

/* Make pricing card softer so it blends with homepage */
.service-detail-card {
    background: rgba(251,248,243,.72) !important;
    border: 1px solid rgba(93,66,38,.10) !important;
    box-shadow: 0 14px 34px rgba(72,53,26,.055) !important;
}

/* Bottom CTA should flow like homepage and include service image */
.service-detail-cta {
    text-align: left !important;
    padding-top: 82px !important;
    padding-bottom: 82px !important;
    border: 0 !important;
}

.service-detail-cta-grid {
    max-width: 1120px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: minmax(0, .9fr) minmax(320px, .8fr);
    gap: 44px;
    align-items: center;
}

.service-detail-cta-copy {
    max-width: 560px;
}

.service-detail-cta-image {
    border-radius: 6px;
    overflow: hidden;
    box-shadow: 0 24px 52px rgba(72,53,26,.09);
}

.service-detail-cta-image img {
    display: block;
    width: 100%;
    height: clamp(260px, 28vw, 410px);
    object-fit: cover;
    object-position: center center;
}

.service-detail-cta .btn.primary {
    background: #3F4F2F !important;
    border: 1px solid #3F4F2F !important;
}

.service-detail-cta .btn.primary:hover {
    background: #324024 !important;
    border-color: #324024 !important;
}

@media(max-width: 900px) {
    .service-detail-cta-grid {
        grid-template-columns: 1fr;
    }

    .service-detail-cta {
        text-align: center !important;
    }

    .service-detail-cta-copy {
        max-width: 100%;
    }
}


/* Service page images: zoom out slightly so subjects are not cropped */
.service-detail-cta-image img {
    object-fit: contain !important;
    object-position: center center !important;
    background: #F8F3EE !important;
    padding: 8px !important;
}

/* Keep service card images slightly less cropped as well */
.home-service-image {
    background-size: contain !important;
    background-repeat: no-repeat !important;
    background-position: center center !important;
    background-color: #F8F3EE !important;
}

/* Give expanded service descriptions a little more readable width */
.service-detail-copy p {
    max-width: 720px !important;
}


/* Tiered service pricing cards */
.service-pricing-card {
    max-width: 100% !important;
}

.service-pricing-card > h2 {
    font-size: clamp(1.6rem, 2.2vw, 2.25rem) !important;
    line-height: 1.08 !important;
    margin-bottom: 22px !important;
}

.pricing-tier-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 14px !important;
}

.pricing-tier-card {
    background: rgba(248,243,238,.72) !important;
    border: 1px solid rgba(93,66,38,.10) !important;
    border-radius: 6px !important;
    padding: 18px !important;
    box-shadow: 0 10px 24px rgba(72,53,26,.045) !important;
}

.pricing-tier-card span {
    display: block !important;
    font-family: "Inter", sans-serif !important;
    color: #3F4F2F !important;
    font-size: 11px !important;
    font-weight: 800 !important;
    letter-spacing: .15em !important;
    text-transform: uppercase !important;
    margin-bottom: 8px !important;
}

.pricing-tier-card h3 {
    font-family: "Cormorant Garamond", serif !important;
    color: #2A2F23 !important;
    font-size: 26px !important;
    line-height: 1.05 !important;
    margin-bottom: 8px !important;
}

.pricing-tier-card p,
.pricing-note {
    font-family: "Cormorant Garamond", serif !important;
    color: #3f3b37 !important;
    font-size: 17px !important;
    line-height: 1.45 !important;
    margin: 0 !important;
}

.pricing-tier-link {
    display: inline-block !important;
    margin-top: 12px !important;
    color: #B85A36 !important;
    font-family: "Inter", sans-serif !important;
    font-size: 12px !important;
    font-weight: 800 !important;
    letter-spacing: .05em !important;
    text-decoration: none !important;
    text-transform: uppercase !important;
}

.pricing-note {
    margin-top: 16px !important;
    font-style: italic !important;
}

@media(max-width: 900px) {
    .pricing-tier-grid {
        grid-template-columns: 1fr !important;
    }
}


/* Service page image refinement - remove whitespace around images */
.service-detail-cta-image {
    background: transparent !important;
    padding: 0 !important;
    border-radius: 6px !important;
    overflow: hidden !important;
}

.service-detail-cta-image img {
    width: 100% !important;
    height: clamp(300px, 30vw, 430px) !important;
    object-fit: cover !important;
    object-position: center center !important;
    background: transparent !important;
    padding: 0 !important;
    margin: 0 !important;
    display: block !important;
}

/* Ensure service card images on homepage also fill their containers */
.home-service-image,
.service-card-image {
    background-size: cover !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
    background-color: transparent !important;
}


/* Reordered service page sections: What We Can Achieve above pricing */
.service-detail-wrap {
    grid-template-columns: 1fr !important;
    max-width: 980px !important;
}

.service-detail-copy {
    max-width: 860px !important;
}

.service-detail-section {
    padding-top: 78px !important;
    padding-bottom: 78px !important;
}

.service-detail-grid {
    max-width: 1120px !important;
    grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr) !important;
    align-items: center !important;
}

/* Professional checklist styling for What We Can Achieve */
.service-detail-list {
    display: grid !important;
    gap: 14px !important;
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

.service-detail-list li {
    position: relative !important;
    padding: 18px 20px 18px 54px !important;
    background:
        linear-gradient(180deg,
            rgba(251,248,243,.86) 0%,
            rgba(248,243,238,.70) 100%) !important;
    border: 1px solid rgba(93,66,38,.10) !important;
    border-radius: 6px !important;
    box-shadow: 0 12px 28px rgba(72,53,26,.045) !important;
}

.service-detail-list li::before {
    content: "✓" !important;
    position: absolute !important;
    left: 20px !important;
    top: 16px !important;
    width: 24px !important;
    height: 24px !important;
    border-radius: 50% !important;
    display: grid !important;
    place-items: center !important;
    background: rgba(63,79,47,.12) !important;
    color: #3F4F2F !important;
    font-family: "Inter", sans-serif !important;
    font-size: 14px !important;
    font-weight: 800 !important;
}

/* Pricing moved into its own section below checklist */
.service-pricing-section {
    background:
        linear-gradient(180deg,
            #F8F3EE 0%,
            #F1E8E0 52%,
            #F8F3EE 100%) !important;
    padding-top: 64px !important;
    padding-bottom: 82px !important;
}

.service-pricing-wrap {
    max-width: 1120px !important;
    margin: 0 auto !important;
}

.service-pricing-wrap .service-detail-card {
    width: 100% !important;
}

.service-pricing-wrap .pricing-tier-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 18px !important;
}

@media(max-width: 980px) {
    .service-detail-grid {
        grid-template-columns: 1fr !important;
    }

    .service-pricing-wrap .pricing-tier-grid {
        grid-template-columns: 1fr !important;
    }
}


.service-comparison{
    max-width:1120px;
    margin:0 auto;
    padding:20px 0 80px;
}

.service-comparison h2{
    color:#3F4F2F !important;
    margin-bottom:24px;
}

.comparison-table{
    width:100%;
    border-collapse:collapse;
    background:rgba(251,248,243,.85);
    border-radius:6px;
    overflow:hidden;
}

.comparison-table th{
    background:#3F4F2F;
    color:#fff;
    padding:16px;
    text-align:center;
}

.comparison-table td{
    padding:14px 16px;
    border-bottom:1px solid rgba(93,66,38,.10);
    text-align:center;
    color:#3f3b37;
}

.comparison-table td:first-child,
.comparison-table th:first-child{
    text-align:left;
}

@media(max-width:768px){
    .comparison-table{
        font-size:.9rem;
    }
}


/* Polished service comparison/checklist sections */
.service-comparison{
    max-width: 1120px !important;
    margin: 64px auto 84px !important;
    padding: 38px !important;
    background:
        linear-gradient(180deg,
            rgba(251,248,243,.78) 0%,
            rgba(248,243,238,.62) 100%) !important;
    border: 1px solid rgba(93,66,38,.14) !important;
    border-radius: 10px !important;
    box-shadow:
        0 20px 48px rgba(72,53,26,.065),
        inset 0 1px 0 rgba(255,255,255,.45) !important;
}

.service-comparison .eyebrow{
    color: #3F4F2F !important;
    margin-bottom: 12px !important;
}

.service-comparison h2{
    color: #2A2F23 !important;
    font-family: "Cormorant Garamond", serif !important;
    font-size: clamp(1.8rem, 2.8vw, 2.7rem) !important;
    line-height: 1.05 !important;
    margin-bottom: 12px !important;
}

.service-comparison p{
    max-width: 760px !important;
    margin: 0 0 26px !important;
    color: #3f3b37 !important;
    font-family: "Cormorant Garamond", serif !important;
    font-size: 18px !important;
    line-height: 1.55 !important;
}

.comparison-table{
    width: 100% !important;
    border-collapse: separate !important;
    border-spacing: 0 !important;
    overflow: hidden !important;
    border-radius: 8px !important;
    background: rgba(255,255,255,.34) !important;
    border: 1px solid rgba(93,66,38,.10) !important;
}

.comparison-table th{
    background: #3F4F2F !important;
    color: #F8F3EE !important;
    font-family: "Inter", sans-serif !important;
    font-size: 12px !important;
    letter-spacing: .08em !important;
    text-transform: uppercase !important;
    padding: 16px 14px !important;
}

.comparison-table td{
    background: rgba(251,248,243,.58) !important;
    color: #3f3b37 !important;
    font-family: "Cormorant Garamond", serif !important;
    font-size: 18px !important;
    line-height: 1.35 !important;
    padding: 15px 14px !important;
    border-bottom: 1px solid rgba(93,66,38,.09) !important;
    border-right: 1px solid rgba(93,66,38,.07) !important;
}

.comparison-table tbody tr:last-child td{
    border-bottom: 0 !important;
}

.comparison-table td:last-child,
.comparison-table th:last-child{
    border-right: 0 !important;
}

.comparison-table td:not(:first-child){
    text-align: center !important;
    color: #3F4F2F !important;
    font-weight: 700 !important;
}

.comparison-table td:first-child{
    color: #2A2F23 !important;
    font-weight: 600 !important;
}

@media(max-width: 768px){
    .service-comparison{
        margin: 46px auto 64px !important;
        padding: 24px 18px !important;
        overflow-x: auto !important;
    }

    .comparison-table{
        min-width: 680px !important;
    }

    .comparison-table td{
        font-size: 16px !important;
    }
}


/* Final brand-match for service comparison/checklist tables */
.service-comparison{
    background:
        linear-gradient(180deg,
            rgba(248,243,238,.88) 0%,
            rgba(241,232,224,.72) 100%) !important;
    border: 1px solid rgba(93,66,38,.10) !important;
    border-radius: 6px !important;
    box-shadow: 0 16px 36px rgba(72,53,26,.045) !important;
}

.service-comparison h2{
    font-family: "Cormorant Garamond", serif !important;
    color: #3F4F2F !important;
    font-weight: 500 !important;
    letter-spacing: -0.015em !important;
}

.service-comparison p{
    font-family: "Cormorant Garamond", serif !important;
    color: #3f3b37 !important;
    font-size: 18px !important;
    font-weight: 500 !important;
    line-height: 1.55 !important;
}

.comparison-table{
    background: rgba(251,248,243,.60) !important;
    border: 1px solid rgba(93,66,38,.10) !important;
    box-shadow: none !important;
}

.comparison-table th{
    background: rgba(63,79,47,.10) !important;
    color: #3F4F2F !important;
    font-family: "Inter", sans-serif !important;
    font-size: 11px !important;
    font-weight: 800 !important;
    letter-spacing: .14em !important;
    text-transform: uppercase !important;
}

.comparison-table td{
    background: rgba(251,248,243,.50) !important;
    font-family: "Cormorant Garamond", serif !important;
    color: #3f3b37 !important;
    font-size: 18px !important;
    font-weight: 500 !important;
    border-bottom: 1px solid rgba(93,66,38,.08) !important;
    border-right: 1px solid rgba(93,66,38,.06) !important;
}

.comparison-table td:first-child{
    color: #2A2F23 !important;
    font-family: "Cormorant Garamond", serif !important;
    font-weight: 600 !important;
}

.comparison-table td:not(:first-child){
    color: #3F4F2F !important;
    font-family: "Cormorant Garamond", serif !important;
    font-weight: 600 !important;
}

.comparison-table tbody tr:hover td{
    background: rgba(241,232,224,.56) !important;
}





/* Service page flow/status bars */
.service-flow-bar {
    width: 100% !important;
    background:
        linear-gradient(135deg,
            rgba(226,210,188,.86) 0%,
            rgba(239,227,211,.92) 50%,
            rgba(248,243,238,.96) 100%) !important;
    border-top: 1px solid rgba(93,66,38,.08) !important;
    border-bottom: 1px solid rgba(93,66,38,.08) !important;
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.35),
        0 10px 28px rgba(72,53,26,.035) !important;
}

.service-flow-inner {
    min-height: 72px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    padding: 18px clamp(24px, 6vw, 90px) !important;
    font-family: "Inter", sans-serif !important;
    color: #3F4F2F !important;
    font-size: 12px !important;
    font-weight: 800 !important;
    letter-spacing: .18em !important;
    text-transform: uppercase !important;
}

/* Smooth section flow on service detail pages */
.service-detail-hero,
.service-comparison,
.service-pricing-section,
.service-detail-cta {
    position: relative !important;
}

.service-comparison {
    margin-top: 72px !important;
}

.service-pricing-section {
    margin-top: 0 !important;
}

.service-detail-cta {
    margin-top: 0 !important;
}

@media(max-width: 760px) {
    .service-flow-inner {
        min-height: 58px !important;
        padding: 16px 20px !important;
        font-size: 10px !important;
        letter-spacing: .13em !important;
    }

    .service-comparison {
        margin-top: 48px !important;
    }
}


/* Refined service page hero background and smoother flow */
.service-detail-hero.service-hero-image {
    position: relative !important;
    overflow: hidden !important;
    isolation: isolate !important;
    padding-top: 178px !important;
    padding-bottom: 104px !important;
    background-image:
        radial-gradient(ellipse at 18% 48%,
            #F8F3EE 0%,
            rgba(248,243,238,.94) 24%,
            rgba(248,243,238,.68) 43%,
            rgba(248,243,238,.30) 62%,
            rgba(248,243,238,0) 78%),
        linear-gradient(90deg,
            #F8F3EE 0%,
            rgba(248,243,238,.90) 20%,
            rgba(248,243,238,.58) 42%,
            rgba(248,243,238,.22) 62%,
            rgba(248,243,238,0) 100%),
        linear-gradient(180deg,
            rgba(248,243,238,.22) 0%,
            rgba(248,243,238,0) 45%,
            #F8F3EE 100%),
        var(--service-hero-image) !important;
    background-size:
        78% 115%,
        100% 100%,
        100% 100%,
        cover !important;
    background-position:
        left center,
        left center,
        center center,
        82% center !important;
    background-repeat: no-repeat !important;
    background-color: #F8F3EE !important;
}

.service-detail-hero.service-hero-image::after {
    content: "" !important;
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    bottom: -1px !important;
    height: 130px !important;
    background: linear-gradient(to bottom,
        rgba(248,243,238,0) 0%,
        rgba(248,243,238,.50) 58%,
        #F8F3EE 100%) !important;
    pointer-events: none !important;
    z-index: 1 !important;
}

.service-detail-hero .service-detail-wrap {
    position: relative !important;
    z-index: 3 !important;
}

/* Terra-cotta homepage-style status bars for service pages */
.terra-flow-bar {
    width: 100% !important;
    background:
        linear-gradient(135deg,
            #B85A36 0%,
            #C8754D 34%,
            #E4D5BF 72%,
            #F8F3EE 100%) !important;
    border-top: 1px solid rgba(93,66,38,.10) !important;
    border-bottom: 1px solid rgba(93,66,38,.10) !important;
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.22),
        0 14px 34px rgba(72,53,26,.045) !important;
    margin: 0 !important;
}

.terra-flow-bar .service-flow-inner {
    min-height: 84px !important;
    color: #F8F3EE !important;
    text-shadow: 0 1px 1px rgba(63,47,32,.14) !important;
    font-size: 12px !important;
    letter-spacing: .20em !important;
}

.terra-flow-bar:nth-of-type(even) {
    background:
        linear-gradient(135deg,
            #E4D5BF 0%,
            #C8754D 42%,
            #B85A36 100%) !important;
}

/* Make sections feel connected rather than stacked */
.service-comparison {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    border-radius: 0 !important;
    max-width: 100% !important;
    padding: 78px clamp(28px, 7vw, 90px) !important;
    background:
        linear-gradient(180deg,
            #F8F3EE 0%,
            #F1E8E0 52%,
            #F8F3EE 100%) !important;
    border-left: 0 !important;
    border-right: 0 !important;
    box-shadow: inset 0 28px 54px rgba(241,232,224,.42),
                inset 0 -28px 54px rgba(241,232,224,.42) !important;
}

.service-comparison > * {
    max-width: 1120px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

.service-pricing-section {
    padding-top: 76px !important;
    padding-bottom: 84px !important;
    background:
        linear-gradient(180deg,
            #F8F3EE 0%,
            #F4EADF 46%,
            #F8F3EE 100%) !important;
}

.service-detail-cta {
    background:
        linear-gradient(180deg,
            #F8F3EE 0%,
            #F1E8E0 48%,
            #F8F3EE 100%) !important;
}

/* Better responsive hero image treatment */
@media(max-width: 980px) {
    .service-detail-hero.service-hero-image {
        padding-top: 148px !important;
        background-position:
            left center,
            left center,
            center center,
            72% center !important;
        background-size:
            88% 112%,
            100% 100%,
            100% 100%,
            auto 118% !important;
    }
}

@media(max-width: 760px) {
    .service-detail-hero.service-hero-image {
        padding-top: 128px !important;
        padding-bottom: 76px !important;
        background-image:
            linear-gradient(90deg,
                #F8F3EE 0%,
                rgba(248,243,238,.92) 34%,
                rgba(248,243,238,.62) 68%,
                rgba(248,243,238,.34) 100%),
            linear-gradient(180deg,
                rgba(248,243,238,.28) 0%,
                rgba(248,243,238,0) 55%,
                #F8F3EE 100%),
            var(--service-hero-image) !important;
        background-size:
            100% 100%,
            100% 100%,
            auto 108% !important;
        background-position:
            left center,
            center center,
            70% center !important;
    }

    .terra-flow-bar .service-flow-inner {
        min-height: 62px !important;
        font-size: 10px !important;
        letter-spacing: .13em !important;
    }

    .service-comparison {
        padding: 58px 18px !important;
    }
}


/* Business Formation image refinement: stronger hero presence + full bottom image */
body:has(.service-detail-hero[style*="business-formation-service-hero"]) .service-detail-hero.service-hero-image,
.service-detail-hero[style*="business-formation-service-hero"] {
    background-image:
        radial-gradient(ellipse at 18% 48%,
            #F8F3EE 0%,
            rgba(248,243,238,.90) 22%,
            rgba(248,243,238,.58) 40%,
            rgba(248,243,238,.22) 60%,
            rgba(248,243,238,0) 76%),
        linear-gradient(90deg,
            #F8F3EE 0%,
            rgba(248,243,238,.86) 18%,
            rgba(248,243,238,.48) 38%,
            rgba(248,243,238,.14) 58%,
            rgba(248,243,238,0) 100%),
        linear-gradient(180deg,
            rgba(248,243,238,.18) 0%,
            rgba(248,243,238,0) 42%,
            #F8F3EE 100%),
        var(--service-hero-image) !important;
    background-size:
        72% 112%,
        100% 100%,
        100% 100%,
        auto 124% !important;
    background-position:
        left center,
        left center,
        center center,
        70% center !important;
}

/* Business Formation bottom image: zoomed out, no crop */
body:has(.service-detail-hero[style*="business-formation-service-hero"]) .service-detail-cta-image,
.service-detail-hero[style*="business-formation-service-hero"] ~ .service-detail-cta .service-detail-cta-image {
    background: #F8F3EE !important;
    padding: 20px !important;
    border-radius: 6px !important;
    overflow: hidden !important;
}

body:has(.service-detail-hero[style*="business-formation-service-hero"]) .service-detail-cta-image img,
.service-detail-hero[style*="business-formation-service-hero"] ~ .service-detail-cta .service-detail-cta-image img {
    width: 100% !important;
    height: clamp(320px, 32vw, 440px) !important;
    object-fit: contain !important;
    object-position: center center !important;
    padding: 0 !important;
    background: #F8F3EE !important;
}

@media(max-width: 760px) {
    .service-detail-hero[style*="business-formation-service-hero"] {
        background-size:
            100% 100%,
            100% 100%,
            auto 112% !important;
        background-position:
            left center,
            center center,
            64% center !important;
    }
}


/* Business Formation bottom image: remove whitespace and flow naturally into section */
body:has(.service-detail-hero[style*="business-formation-service-hero"]) .service-detail-cta-image,
.service-detail-hero[style*="business-formation-service-hero"] ~ .service-detail-cta .service-detail-cta-image {
    background: transparent !important;
    padding: 0 !important;
    border-radius: 6px !important;
    overflow: hidden !important;
    box-shadow: 0 24px 52px rgba(72,53,26,.09) !important;
}

body:has(.service-detail-hero[style*="business-formation-service-hero"]) .service-detail-cta-image img,
.service-detail-hero[style*="business-formation-service-hero"] ~ .service-detail-cta .service-detail-cta-image img {
    display: block !important;
    width: 100% !important;
    height: clamp(320px, 32vw, 440px) !important;
    object-fit: cover !important;
    object-position: center center !important;
    background: transparent !important;
    padding: 0 !important;
    margin: 0 !important;
}


/* Financial Systems image refinement: stronger hero presence + bottom image flow */
body:has(.service-detail-hero[style*="financial-systems-service-hero"]) .service-detail-hero.service-hero-image,
.service-detail-hero[style*="financial-systems-service-hero"] {
    background-image:
        radial-gradient(ellipse at 18% 48%,
            #F8F3EE 0%,
            rgba(248,243,238,.90) 22%,
            rgba(248,243,238,.58) 40%,
            rgba(248,243,238,.22) 60%,
            rgba(248,243,238,0) 76%),
        linear-gradient(90deg,
            #F8F3EE 0%,
            rgba(248,243,238,.86) 18%,
            rgba(248,243,238,.48) 38%,
            rgba(248,243,238,.14) 58%,
            rgba(248,243,238,0) 100%),
        linear-gradient(180deg,
            rgba(248,243,238,.18) 0%,
            rgba(248,243,238,0) 42%,
            #F8F3EE 100%),
        var(--service-hero-image) !important;
    background-size:
        72% 112%,
        100% 100%,
        100% 100%,
        auto 124% !important;
    background-position:
        left center,
        left center,
        center center,
        70% center !important;
}

/* Financial Systems bottom image: remove whitespace and flow naturally into section */
body:has(.service-detail-hero[style*="financial-systems-service-hero"]) .service-detail-cta-image,
.service-detail-hero[style*="financial-systems-service-hero"] ~ .service-detail-cta .service-detail-cta-image {
    background: transparent !important;
    padding: 0 !important;
    border-radius: 6px !important;
    overflow: hidden !important;
    box-shadow: 0 24px 52px rgba(72,53,26,.09) !important;
}

body:has(.service-detail-hero[style*="financial-systems-service-hero"]) .service-detail-cta-image img,
.service-detail-hero[style*="financial-systems-service-hero"] ~ .service-detail-cta .service-detail-cta-image img {
    display: block !important;
    width: 100% !important;
    height: clamp(320px, 32vw, 440px) !important;
    object-fit: cover !important;
    object-position: center center !important;
    background: transparent !important;
    padding: 0 !important;
    margin: 0 !important;
}

@media(max-width: 760px) {
    .service-detail-hero[style*="financial-systems-service-hero"] {
        background-size:
            100% 100%,
            100% 100%,
            auto 112% !important;
        background-position:
            left center,
            center center,
            64% center !important;
    }
}


/* Financial Systems hero: zoom out and soften fade for smoother blend */
.service-detail-hero[style*="financial-systems-service-hero"] {
    background-image:
        radial-gradient(ellipse at 16% 48%,
            #F8F3EE 0%,
            rgba(248,243,238,.94) 24%,
            rgba(248,243,238,.72) 43%,
            rgba(248,243,238,.38) 62%,
            rgba(248,243,238,.10) 82%,
            rgba(248,243,238,0) 100%),
        linear-gradient(90deg,
            #F8F3EE 0%,
            rgba(248,243,238,.92) 22%,
            rgba(248,243,238,.68) 44%,
            rgba(248,243,238,.34) 64%,
            rgba(248,243,238,.10) 84%,
            rgba(248,243,238,0) 100%),
        linear-gradient(180deg,
            rgba(248,243,238,.28) 0%,
            rgba(248,243,238,.04) 42%,
            #F8F3EE 100%),
        var(--service-hero-image) !important;
    background-size:
        76% 112%,
        100% 100%,
        100% 100%,
        auto 104% !important;
    background-position:
        left center,
        left center,
        center center,
        76% center !important;
}

/* Keep mobile softer and less cropped */
@media(max-width: 760px) {
    .service-detail-hero[style*="financial-systems-service-hero"] {
        background-size:
            100% 100%,
            100% 100%,
            auto 96% !important;
        background-position:
            left center,
            center center,
            68% center !important;
    }
}


/* Financial Systems hero v2: further zoomed out and much softer fade */
.service-detail-hero[style*="financial-systems-service-hero"] {
    background-image:
        radial-gradient(ellipse at 14% 50%,
            #F8F3EE 0%,
            rgba(248,243,238,.97) 28%,
            rgba(248,243,238,.82) 46%,
            rgba(248,243,238,.56) 64%,
            rgba(248,243,238,.24) 82%,
            rgba(248,243,238,.06) 92%,
            rgba(248,243,238,0) 100%),
        linear-gradient(90deg,
            #F8F3EE 0%,
            rgba(248,243,238,.96) 26%,
            rgba(248,243,238,.78) 46%,
            rgba(248,243,238,.50) 66%,
            rgba(248,243,238,.22) 84%,
            rgba(248,243,238,0) 100%),
        linear-gradient(180deg,
            rgba(248,243,238,.34) 0%,
            rgba(248,243,238,.08) 46%,
            #F8F3EE 100%),
        var(--service-hero-image) !important;

    background-size:
        82% 118%,
        100% 100%,
        100% 100%,
        auto 88% !important;

    background-position:
        left center,
        left center,
        center center,
        82% center !important;
}

@media(max-width: 760px) {
    .service-detail-hero[style*="financial-systems-service-hero"] {
        background-size:
            100% 100%,
            100% 100%,
            auto 82% !important;

        background-position:
            left center,
            center center,
            72% center !important;
    }
}


/* Transaction Coordination hero: zoomed out with soft homepage-style fade */
.service-detail-hero[style*="transaction-coordination-service-hero"] {
    background-image:
        radial-gradient(ellipse at 14% 50%,
            #F8F3EE 0%,
            rgba(248,243,238,.97) 28%,
            rgba(248,243,238,.82) 46%,
            rgba(248,243,238,.56) 64%,
            rgba(248,243,238,.24) 82%,
            rgba(248,243,238,.06) 92%,
            rgba(248,243,238,0) 100%),
        linear-gradient(90deg,
            #F8F3EE 0%,
            rgba(248,243,238,.96) 26%,
            rgba(248,243,238,.78) 46%,
            rgba(248,243,238,.50) 66%,
            rgba(248,243,238,.22) 84%,
            rgba(248,243,238,0) 100%),
        linear-gradient(180deg,
            rgba(248,243,238,.34) 0%,
            rgba(248,243,238,.08) 46%,
            #F8F3EE 100%),
        var(--service-hero-image) !important;

    background-size:
        82% 118%,
        100% 100%,
        100% 100%,
        auto 88% !important;

    background-position:
        left center,
        left center,
        center center,
        82% center !important;
}

/* Transaction Coordination bottom image: no whitespace, flowing into section */
body:has(.service-detail-hero[style*="transaction-coordination-service-hero"]) .service-detail-cta-image,
.service-detail-hero[style*="transaction-coordination-service-hero"] ~ .service-detail-cta .service-detail-cta-image {
    background: transparent !important;
    padding: 0 !important;
    border-radius: 6px !important;
    overflow: hidden !important;
    box-shadow: 0 24px 52px rgba(72,53,26,.09) !important;
}

body:has(.service-detail-hero[style*="transaction-coordination-service-hero"]) .service-detail-cta-image img,
.service-detail-hero[style*="transaction-coordination-service-hero"] ~ .service-detail-cta .service-detail-cta-image img {
    display: block !important;
    width: 100% !important;
    height: clamp(320px, 32vw, 440px) !important;
    object-fit: cover !important;
    object-position: center center !important;
    background: transparent !important;
    padding: 0 !important;
    margin: 0 !important;
}

@media(max-width: 760px) {
    .service-detail-hero[style*="transaction-coordination-service-hero"] {
        background-size:
            100% 100%,
            100% 100%,
            auto 82% !important;

        background-position:
            left center,
            center center,
            72% center !important;
    }
}


/* Transaction Coordination hero white-box fix */
.service-detail-hero[style*="transaction-coordination-service-hero"]{
    background-color:#F8F3EE !important;
    background-size:
        100% 100%,
        100% 100%,
        100% 100%,
        cover !important;
    background-position:
        left center,
        left center,
        center center,
        center center !important;
}

.service-detail-hero[style*="transaction-coordination-service-hero"]::before{
    content:"";
    position:absolute;
    inset:0;
    background:
      linear-gradient(90deg,
      rgba(248,243,238,.94) 0%,
      rgba(248,243,238,.82) 28%,
      rgba(248,243,238,.45) 58%,
      rgba(248,243,238,.12) 82%,
      rgba(248,243,238,0) 100%);
    pointer-events:none;
}


/* Transaction Coordination hero - show more image, reduce fade */
.service-detail-hero[style*="transaction-coordination-service-hero"]::before{
    background:
      linear-gradient(90deg,
      rgba(248,243,238,.82) 0%,
      rgba(248,243,238,.60) 20%,
      rgba(248,243,238,.28) 42%,
      rgba(248,243,238,.08) 65%,
      rgba(248,243,238,0) 88%) !important;
}

.service-detail-hero[style*="transaction-coordination-service-hero"]{
    background-size:
        100% 100%,
        100% 100%,
        100% 100%,
        auto 98% !important;
    background-position:
        left center,
        left center,
        center center,
        78% center !important;
}


/* Transaction Coordination hero - minimal fade, more image visible */
.service-detail-hero[style*="transaction-coordination-service-hero"]::before{
    background:
      linear-gradient(90deg,
      rgba(248,243,238,.68) 0%,
      rgba(248,243,238,.42) 18%,
      rgba(248,243,238,.18) 36%,
      rgba(248,243,238,.04) 58%,
      rgba(248,243,238,0) 78%) !important;
}

.service-detail-hero[style*="transaction-coordination-service-hero"]{
    background-size:
        100% 100%,
        100% 100%,
        100% 100%,
        auto 104% !important;
    background-position:
        left center,
        left center,
        center center,
        74% center !important;
}


/* Transaction Coordination hero - ultra light fade */
.service-detail-hero[style*="transaction-coordination-service-hero"]::before{
    background:
      linear-gradient(90deg,
      rgba(248,243,238,.50) 0%,
      rgba(248,243,238,.24) 15%,
      rgba(248,243,238,.08) 30%,
      rgba(248,243,238,.02) 45%,
      rgba(248,243,238,0) 60%) !important;
}

.service-detail-hero[style*="transaction-coordination-service-hero"]{
    background-size:
        100% 100%,
        100% 100%,
        100% 100%,
        auto 112% !important;
    background-position:
        left center,
        left center,
        center center,
        70% center !important;
}


/* Marketing & Advertising hero treatment */
.service-detail-hero[style*="marketing-advertising-service-hero"]{
    background-image:
        radial-gradient(ellipse at 14% 50%,
            #F8F3EE 0%,
            rgba(248,243,238,.72) 20%,
            rgba(248,243,238,.34) 40%,
            rgba(248,243,238,.10) 58%,
            rgba(248,243,238,0) 76%),
        linear-gradient(90deg,
            rgba(248,243,238,.58) 0%,
            rgba(248,243,238,.28) 20%,
            rgba(248,243,238,.08) 42%,
            rgba(248,243,238,0) 65%),
        linear-gradient(180deg,
            rgba(248,243,238,.18) 0%,
            rgba(248,243,238,0) 45%,
            #F8F3EE 100%),
        var(--service-hero-image) !important;

    background-size:
        100% 100%,
        100% 100%,
        100% 100%,
        auto 108% !important;

    background-position:
        left center,
        left center,
        center center,
        74% center !important;
}

/* Bottom image flows naturally into page */
.service-detail-hero[style*="marketing-advertising-service-hero"] ~ .service-detail-cta .service-detail-cta-image,
body:has(.service-detail-hero[style*="marketing-advertising-service-hero"]) .service-detail-cta-image{
    background: transparent !important;
    padding: 0 !important;
    overflow: hidden !important;
    border-radius: 6px !important;
    box-shadow: 0 24px 52px rgba(72,53,26,.09) !important;
}

.service-detail-hero[style*="marketing-advertising-service-hero"] ~ .service-detail-cta .service-detail-cta-image img,
body:has(.service-detail-hero[style*="marketing-advertising-service-hero"]) .service-detail-cta-image img{
    width:100% !important;
    height:clamp(320px,32vw,440px) !important;
    object-fit:cover !important;
    object-position:center center !important;
    display:block !important;
}

@media(max-width:760px){
    .service-detail-hero[style*="marketing-advertising-service-hero"]{
        background-size:
            100% 100%,
            100% 100%,
            auto 92% !important;
        background-position:
            left center,
            center center,
            68% center !important;
    }
}


/* Marketing & Advertising hero corrected: remove white box, moderate fade */
.service-detail-hero[style*="marketing-advertising-service-hero"]{
    background-color:#F8F3EE !important;
    background-image:
        radial-gradient(ellipse at 16% 50%,
            #F8F3EE 0%,
            rgba(248,243,238,.88) 24%,
            rgba(248,243,238,.56) 44%,
            rgba(248,243,238,.22) 62%,
            rgba(248,243,238,.05) 78%,
            rgba(248,243,238,0) 100%),
        linear-gradient(90deg,
            rgba(248,243,238,.82) 0%,
            rgba(248,243,238,.58) 22%,
            rgba(248,243,238,.28) 44%,
            rgba(248,243,238,.08) 66%,
            rgba(248,243,238,0) 88%),
        linear-gradient(180deg,
            rgba(248,243,238,.14) 0%,
            rgba(248,243,238,0) 44%,
            #F8F3EE 100%),
        var(--service-hero-image) !important;
    background-size:
        78% 112%,
        100% 100%,
        100% 100%,
        cover !important;
    background-position:
        left center,
        left center,
        center center,
        center center !important;
    background-repeat:no-repeat !important;
}

/* Ensure no extra pseudo overlay creates a pale box */
.service-detail-hero[style*="marketing-advertising-service-hero"]::before{
    display:none !important;
    content:none !important;
}

/* Bottom Marketing image: slightly zoomed out feel without visible whitespace */
.service-detail-hero[style*="marketing-advertising-service-hero"] ~ .service-detail-cta .service-detail-cta-image,
body:has(.service-detail-hero[style*="marketing-advertising-service-hero"]) .service-detail-cta-image{
    background:transparent !important;
    padding:0 !important;
    overflow:hidden !important;
    border-radius:6px !important;
    box-shadow:0 24px 52px rgba(72,53,26,.09) !important;
}

.service-detail-hero[style*="marketing-advertising-service-hero"] ~ .service-detail-cta .service-detail-cta-image img,
body:has(.service-detail-hero[style*="marketing-advertising-service-hero"]) .service-detail-cta-image img{
    width:100% !important;
    height:clamp(320px,32vw,440px) !important;
    object-fit:cover !important;
    object-position:center center !important;
    display:block !important;
    padding:0 !important;
    margin:0 !important;
    background:transparent !important;
}

@media(max-width:760px){
    .service-detail-hero[style*="marketing-advertising-service-hero"]{
        background-size:
            100% 100%,
            100% 100%,
            auto 100% !important;
        background-position:
            left center,
            center center,
            center center !important;
    }
}


/* Final service page divider/status bars: thinner, clearer, closer to homepage index styling */
.service-flow-bar,
.terra-flow-bar{
    min-height: 0 !important;
    height: auto !important;
    background:
        linear-gradient(90deg,
            #B85A36 0%,
            #C8754D 48%,
            #B85A36 100%) !important;
    border-top: 1px solid rgba(93,66,38,.10) !important;
    border-bottom: 1px solid rgba(93,66,38,.10) !important;
    box-shadow: none !important;
    opacity: 1 !important;
}

.service-flow-inner,
.terra-flow-bar .service-flow-inner{
    min-height: 44px !important;
    padding: 10px clamp(22px, 5vw, 70px) !important;
    color: #F8F3EE !important;
    font-family: "Inter", sans-serif !important;
    font-size: 11px !important;
    font-weight: 800 !important;
    letter-spacing: .16em !important;
    text-transform: uppercase !important;
    text-shadow: none !important;
}

/* Remove alternating faded bar variation so service pages feel cohesive */
.terra-flow-bar:nth-of-type(even){
    background:
        linear-gradient(90deg,
            #B85A36 0%,
            #C8754D 48%,
            #B85A36 100%) !important;
}

@media(max-width:760px){
    .service-flow-inner,
    .terra-flow-bar .service-flow-inner{
        min-height: 38px !important;
        padding: 9px 18px !important;
        font-size: 9px !important;
        letter-spacing: .12em !important;
    }
}


/* Transaction Coordination hero - nearly full image visibility */
.service-detail-hero[style*="transaction-coordination-service-hero"]::before{
    background:
      linear-gradient(90deg,
      rgba(248,243,238,.34) 0%,
      rgba(248,243,238,.12) 12%,
      rgba(248,243,238,.04) 24%,
      rgba(248,243,238,.01) 36%,
      rgba(248,243,238,0) 48%) !important;
}

.service-detail-hero[style*="transaction-coordination-service-hero"]{
    background-size:
        100% 100%,
        100% 100%,
        100% 100%,
        auto 118% !important;
    background-position:
        left center,
        left center,
        center center,
        68% center !important;
}


/* FINAL Transaction Coordination hero visibility fix */
.service-detail-hero[style*="transaction-coordination-service-hero"]::before{
    display: none !important;
    content: none !important;
    background: none !important;
}

.service-detail-hero[style*="transaction-coordination-service-hero"]{
    background-image:
      linear-gradient(90deg,
        rgba(248,243,238,.76) 0%,
        rgba(248,243,238,.46) 24%,
        rgba(248,243,238,.16) 46%,
        rgba(248,243,238,0) 68%),
      linear-gradient(180deg,
        rgba(248,243,238,.06) 0%,
        rgba(248,243,238,0) 68%,
        #F8F3EE 100%),
      var(--service-hero-image) !important;
    background-size:
      100% 100%,
      100% 100%,
      cover !important;
    background-position:
      left center,
      center center,
      center center !important;
    background-repeat: no-repeat !important;
    background-color: #F8F3EE !important;
}

@media(max-width:760px){
    .service-detail-hero[style*="transaction-coordination-service-hero"]{
        background-image:
          linear-gradient(90deg,
            rgba(248,243,238,.82) 0%,
            rgba(248,243,238,.48) 42%,
            rgba(248,243,238,.12) 78%),
          linear-gradient(180deg,
            rgba(248,243,238,.08) 0%,
            rgba(248,243,238,0) 70%,
            #F8F3EE 100%),
          var(--service-hero-image) !important;
        background-size:
          100% 100%,
          100% 100%,
          cover !important;
        background-position:
          left center,
          center center,
          center center !important;
    }
}


/* Transaction Coordination hero - slightly more fade while keeping image visible */
.service-detail-hero[style*="transaction-coordination-service-hero"]{
    background-image:
      linear-gradient(90deg,
        rgba(248,243,238,.84) 0%,
        rgba(248,243,238,.58) 24%,
        rgba(248,243,238,.24) 46%,
        rgba(248,243,238,.05) 68%,
        rgba(248,243,238,0) 88%),
      linear-gradient(180deg,
        rgba(248,243,238,.10) 0%,
        rgba(248,243,238,0) 68%,
        #F8F3EE 100%),
      var(--service-hero-image) !important;
}

@media(max-width:760px){
    .service-detail-hero[style*="transaction-coordination-service-hero"]{
        background-image:
          linear-gradient(90deg,
            rgba(248,243,238,.88) 0%,
            rgba(248,243,238,.62) 40%,
            rgba(248,243,238,.18) 76%,
            rgba(248,243,238,0) 100%),
          linear-gradient(180deg,
            rgba(248,243,238,.12) 0%,
            rgba(248,243,238,0) 70%,
            #F8F3EE 100%),
          var(--service-hero-image) !important;
    }
}


/* Transaction Coordination hero - stronger fade for better text readability */
.service-detail-hero[style*="transaction-coordination-service-hero"]{
    background-image:
      linear-gradient(90deg,
        rgba(248,243,238,.92) 0%,
        rgba(248,243,238,.74) 24%,
        rgba(248,243,238,.42) 48%,
        rgba(248,243,238,.14) 70%,
        rgba(248,243,238,0) 90%),
      linear-gradient(180deg,
        rgba(248,243,238,.14) 0%,
        rgba(248,243,238,0) 65%,
        #F8F3EE 100%),
      var(--service-hero-image) !important;
}

@media(max-width:760px){
    .service-detail-hero[style*="transaction-coordination-service-hero"]{
        background-image:
          linear-gradient(90deg,
            rgba(248,243,238,.94) 0%,
            rgba(248,243,238,.76) 42%,
            rgba(248,243,238,.30) 78%,
            rgba(248,243,238,0) 100%),
          linear-gradient(180deg,
            rgba(248,243,238,.16) 0%,
            rgba(248,243,238,0) 70%,
            #F8F3EE 100%),
          var(--service-hero-image) !important;
    }
}


/* Transaction Coordination hero - more fade upward for title readability */
.service-detail-hero[style*="transaction-coordination-service-hero"]{
    background-image:
      linear-gradient(90deg,
        rgba(248,243,238,.94) 0%,
        rgba(248,243,238,.78) 24%,
        rgba(248,243,238,.46) 48%,
        rgba(248,243,238,.18) 70%,
        rgba(248,243,238,0) 90%),
      linear-gradient(180deg,
        rgba(248,243,238,.42) 0%,
        rgba(248,243,238,.22) 24%,
        rgba(248,243,238,.08) 52%,
        rgba(248,243,238,0) 76%,
        #F8F3EE 100%),
      var(--service-hero-image) !important;
}

@media(max-width:760px){
    .service-detail-hero[style*="transaction-coordination-service-hero"]{
        background-image:
          linear-gradient(90deg,
            rgba(248,243,238,.95) 0%,
            rgba(248,243,238,.80) 42%,
            rgba(248,243,238,.34) 78%,
            rgba(248,243,238,0) 100%),
          linear-gradient(180deg,
            rgba(248,243,238,.48) 0%,
            rgba(248,243,238,.24) 30%,
            rgba(248,243,238,.08) 60%,
            rgba(248,243,238,0) 84%,
            #F8F3EE 100%),
          var(--service-hero-image) !important;
    }
}


/* Transaction Coordination hero - stronger right-side fade for text readability */
.service-detail-hero[style*="transaction-coordination-service-hero"]{
    background-image:
      linear-gradient(90deg,
        rgba(248,243,238,.96) 0%,
        rgba(248,243,238,.86) 22%,
        rgba(248,243,238,.68) 42%,
        rgba(248,243,238,.42) 60%,
        rgba(248,243,238,.18) 78%,
        rgba(248,243,238,.05) 92%,
        rgba(248,243,238,0) 100%),
      linear-gradient(180deg,
        rgba(248,243,238,.42) 0%,
        rgba(248,243,238,.22) 24%,
        rgba(248,243,238,.08) 52%,
        rgba(248,243,238,0) 76%,
        #F8F3EE 100%),
      var(--service-hero-image) !important;
}

@media(max-width:760px){
    .service-detail-hero[style*="transaction-coordination-service-hero"]{
        background-image:
          linear-gradient(90deg,
            rgba(248,243,238,.97) 0%,
            rgba(248,243,238,.88) 34%,
            rgba(248,243,238,.58) 58%,
            rgba(248,243,238,.20) 82%,
            rgba(248,243,238,0) 100%),
          linear-gradient(180deg,
            rgba(248,243,238,.48) 0%,
            rgba(248,243,238,.24) 30%,
            rgba(248,243,238,.08) 60%,
            rgba(248,243,238,0) 84%,
            #F8F3EE 100%),
          var(--service-hero-image) !important;
    }
}


/* Transaction Coordination hero - zoom image out and reserve more room for text */
.service-detail-hero[style*="transaction-coordination-service-hero"]{
    background-image:
      linear-gradient(90deg,
        rgba(248,243,238,.97) 0%,
        rgba(248,243,238,.90) 24%,
        rgba(248,243,238,.74) 46%,
        rgba(248,243,238,.50) 64%,
        rgba(248,243,238,.24) 82%,
        rgba(248,243,238,.06) 94%,
        rgba(248,243,238,0) 100%),
      linear-gradient(180deg,
        rgba(248,243,238,.42) 0%,
        rgba(248,243,238,.22) 24%,
        rgba(248,243,238,.08) 52%,
        rgba(248,243,238,0) 76%,
        #F8F3EE 100%),
      var(--service-hero-image) !important;

    background-size:
      100% 100%,
      100% 100%,
      auto 82% !important;

    background-position:
      left center,
      center center,
      88% center !important;
}

@media(max-width:760px){
    .service-detail-hero[style*="transaction-coordination-service-hero"]{
        background-size:
          100% 100%,
          100% 100%,
          auto 74% !important;

        background-position:
          left center,
          center center,
          82% center !important;
    }
}


/* Transaction Coordination hero - image covers full hero with stronger fade for readability */
.service-detail-hero[style*="transaction-coordination-service-hero"]{
    background-image:
      linear-gradient(90deg,
        rgba(248,243,238,.98) 0%,
        rgba(248,243,238,.92) 26%,
        rgba(248,243,238,.78) 48%,
        rgba(248,243,238,.54) 66%,
        rgba(248,243,238,.30) 82%,
        rgba(248,243,238,.10) 94%,
        rgba(248,243,238,0) 100%),
      linear-gradient(180deg,
        rgba(248,243,238,.50) 0%,
        rgba(248,243,238,.28) 24%,
        rgba(248,243,238,.10) 54%,
        rgba(248,243,238,0) 76%,
        #F8F3EE 100%),
      var(--service-hero-image) !important;

    background-size:
      100% 100%,
      100% 100%,
      cover !important;

    background-position:
      left center,
      center center,
      center center !important;

    background-repeat: no-repeat !important;
    background-color: #F8F3EE !important;
}

@media(max-width:760px){
    .service-detail-hero[style*="transaction-coordination-service-hero"]{
        background-image:
          linear-gradient(90deg,
            rgba(248,243,238,.98) 0%,
            rgba(248,243,238,.90) 40%,
            rgba(248,243,238,.56) 70%,
            rgba(248,243,238,.20) 92%,
            rgba(248,243,238,0) 100%),
          linear-gradient(180deg,
            rgba(248,243,238,.58) 0%,
            rgba(248,243,238,.30) 30%,
            rgba(248,243,238,.10) 60%,
            rgba(248,243,238,0) 84%,
            #F8F3EE 100%),
          var(--service-hero-image) !important;

        background-size:
          100% 100%,
          100% 100%,
          cover !important;

        background-position:
          left center,
          center center,
          center center !important;
    }
}


/* Transaction Coordination hero - significantly stronger fade while retaining full background coverage */
.service-detail-hero[style*="transaction-coordination-service-hero"]{
    background-image:
      linear-gradient(90deg,
        rgba(248,243,238,.99) 0%,
        rgba(248,243,238,.96) 22%,
        rgba(248,243,238,.88) 42%,
        rgba(248,243,238,.70) 60%,
        rgba(248,243,238,.46) 76%,
        rgba(248,243,238,.22) 90%,
        rgba(248,243,238,.08) 100%),
      linear-gradient(180deg,
        rgba(248,243,238,.62) 0%,
        rgba(248,243,238,.38) 26%,
        rgba(248,243,238,.16) 54%,
        rgba(248,243,238,.04) 76%,
        #F8F3EE 100%),
      var(--service-hero-image) !important;
}

@media(max-width:760px){
    .service-detail-hero[style*="transaction-coordination-service-hero"]{
        background-image:
          linear-gradient(90deg,
            rgba(248,243,238,.99) 0%,
            rgba(248,243,238,.94) 36%,
            rgba(248,243,238,.74) 62%,
            rgba(248,243,238,.40) 84%,
            rgba(248,243,238,.12) 100%),
          linear-gradient(180deg,
            rgba(248,243,238,.70) 0%,
            rgba(248,243,238,.42) 30%,
            rgba(248,243,238,.18) 60%,
            rgba(248,243,238,.04) 84%,
            #F8F3EE 100%),
          var(--service-hero-image) !important;
    }
}


/* Transaction Coordination hero - maximum readability while keeping full image coverage */
.service-detail-hero[style*="transaction-coordination-service-hero"]{
    background-image:
      linear-gradient(90deg,
        rgba(248,243,238,1.00) 0%,
        rgba(248,243,238,.98) 25%,
        rgba(248,243,238,.92) 45%,
        rgba(248,243,238,.78) 62%,
        rgba(248,243,238,.56) 78%,
        rgba(248,243,238,.30) 92%,
        rgba(248,243,238,.12) 100%),
      linear-gradient(180deg,
        rgba(248,243,238,.72) 0%,
        rgba(248,243,238,.46) 28%,
        rgba(248,243,238,.20) 56%,
        rgba(248,243,238,.06) 80%,
        #F8F3EE 100%),
      var(--service-hero-image) !important;

    background-size:
      100% 100%,
      100% 100%,
      cover !important;

    background-position:
      left center,
      center center,
      center center !important;
}


/* Microsoft Bookings scheduling link */
.schedule-consultation-link {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: fit-content !important;
    margin-top: 4px !important;
    padding: 11px 18px !important;
    background: #3F4F2F !important;
    color: #ffffff !important;
    border: 1px solid #3F4F2F !important;
    border-radius: 4px !important;
    font-family: "Inter", sans-serif !important;
    font-size: 12px !important;
    font-weight: 800 !important;
    letter-spacing: .08em !important;
    text-transform: uppercase !important;
    text-decoration: none !important;
}

.schedule-consultation-link:hover {
    background: #324024 !important;
    border-color: #324024 !important;
}


/* Microsoft Forms contact panel */
.contact-form-panel {
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    gap: 12px !important;
}

.contact-form-panel h3 {
    font-family: "Cormorant Garamond", serif !important;
    color: #2A2F23 !important;
    font-size: clamp(1.8rem, 2.4vw, 2.45rem) !important;
    line-height: 1.05 !important;
    font-weight: 500 !important;
    margin: 0 !important;
}

.contact-form-panel p {
    font-family: "Cormorant Garamond", serif !important;
    color: #3f3b37 !important;
    font-size: 18px !important;
    line-height: 1.5 !important;
    font-weight: 500 !important;
    margin: 0 0 8px !important;
}

.form-cta-button {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: fit-content !important;
    padding: 11px 18px !important;
    background: #3F4F2F !important;
    color: #ffffff !important;
    border: 1px solid #3F4F2F !important;
    border-radius: 4px !important;
    font-family: "Inter", sans-serif !important;
    font-size: 12px !important;
    font-weight: 800 !important;
    letter-spacing: .08em !important;
    text-transform: uppercase !important;
    text-decoration: none !important;
}

.form-cta-button:hover {
    background: #324024 !important;
    border-color: #324024 !important;
}


/* Index page visual fixes: remove image whitespace, enlarge questionnaire, refine contact CTA */
.approach-image,
.why-faq-image {
    background: transparent !important;
    padding: 0 !important;
    overflow: hidden !important;
    border-radius: 6px !important;
    box-shadow: 0 24px 52px rgba(72,53,26,.09) !important;
}

.approach-image img,
.why-faq-image img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    min-height: inherit !important;
    object-fit: cover !important;
    object-position: center center !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
}

.approach-image {
    min-height: 560px !important;
}

.why-faq-image {
    min-height: 720px !important;
}

.contact-form-panel {
    min-height: 360px !important;
    padding: clamp(34px, 4vw, 52px) !important;
    gap: 18px !important;
}

.contact-form-panel h3 {
    font-size: clamp(2.15rem, 3vw, 3.1rem) !important;
}

.contact-form-panel p {
    font-size: 22px !important;
    line-height: 1.5 !important;
}

.form-cta-button {
    margin-top: 10px !important;
    padding: 14px 22px !important;
}

.contact-details {
    gap: 18px !important;
}

.contact-address {
    color: #3f3b37 !important;
    font-family: "Cormorant Garamond", serif !important;
    font-size: inherit !important;
    line-height: 1.35 !important;
}

.schedule-consultation-link {
    margin-top: 14px !important;
    padding: 13px 20px !important;
    background: #3F4F2F !important;
    border-color: #3F4F2F !important;
    color: #ffffff !important;
    font-family: "Inter", sans-serif !important;
    font-size: 12px !important;
    font-weight: 800 !important;
    letter-spacing: .08em !important;
    text-transform: uppercase !important;
    text-decoration: none !important;
}

.schedule-consultation-link:visited,
.schedule-consultation-link:hover,
.schedule-consultation-link:focus {
    color: #ffffff !important;
}

.schedule-consultation-link:hover {
    background: #2F3824 !important;
    border-color: #2F3824 !important;
}

@media(max-width: 1100px) {
    .why-faq-image {
        min-height: 440px !important;
    }
}

@media(max-width: 760px) {
    .approach-image {
        min-height: 320px !important;
    }

    .why-faq-image {
        min-height: 340px !important;
    }

    .contact-form-panel {
        min-height: 300px !important;
        padding: 30px 24px !important;
    }
}


/* Final index image fit correction: My Approach + Personalized Game Plans */
.approach-image,
.why-faq-image {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    background: transparent !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow: hidden !important;
    border-radius: 6px !important;
}

.approach-image {
    min-height: 560px !important;
    aspect-ratio: 4 / 3 !important;
}

.why-faq-image {
    min-height: 720px !important;
    aspect-ratio: 3 / 4 !important;
}

.approach-image img,
.why-faq-image img {
    position: absolute !important;
    inset: 0 !important;
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    min-width: 100% !important;
    min-height: 100% !important;
    max-width: none !important;
    max-height: none !important;
    object-fit: cover !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
}

.approach-image img {
    object-position: center center !important;
}

.why-faq-image img {
    object-position: center center !important;
}

/* Match Schedule a Consultation button typography and feel to other CTA buttons */
.schedule-consultation-link {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: fit-content !important;
    margin-top: 20px !important;
    padding: 10px 15px !important;
    border-radius: 4px !important;
    background: #B85A36 !important;
    border: 0 !important;
    box-shadow: 0 14px 28px rgba(181,76,40,.16) !important;
    color: #ffffff !important;
    font-family: "Inter", sans-serif !important;
    font-size: 12px !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
    letter-spacing: normal !important;
    text-transform: none !important;
    text-decoration: none !important;
}

.schedule-consultation-link:visited,
.schedule-consultation-link:hover,
.schedule-consultation-link:focus {
    color: #ffffff !important;
    text-decoration: none !important;
}

.schedule-consultation-link:hover {
    background: #9F4B2B !important;
}

@media(max-width: 1100px) {
    .approach-image {
        min-height: 420px !important;
        aspect-ratio: 16 / 10 !important;
    }

    .why-faq-image {
        min-height: 440px !important;
        aspect-ratio: 16 / 10 !important;
    }
}

@media(max-width: 760px) {
    .approach-image,
    .why-faq-image {
        min-height: 330px !important;
        aspect-ratio: 4 / 3 !important;
    }
}


/* FINAL index image fit using uploaded assets */
.approach-image,
.why-faq-image {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    background: transparent !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow: hidden !important;
    border-radius: 6px !important;
    box-shadow: 0 24px 52px rgba(72,53,26,.09) !important;
}

.approach-image {
    min-height: 520px !important;
    height: clamp(420px, 42vw, 620px) !important;
    aspect-ratio: auto !important;
}

.why-faq-image {
    min-height: 680px !important;
    height: clamp(620px, 58vw, 820px) !important;
    aspect-ratio: auto !important;
}

.approach-image img,
.why-faq-image img {
    position: absolute !important;
    inset: 0 !important;
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    max-height: none !important;
    object-fit: cover !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
}

.approach-image img {
    object-position: center center !important;
}

.why-faq-image img {
    object-position: center center !important;
}

/* Make Schedule a consultation match the header CTA exactly */
.contact-details .schedule-consultation-link,
.contact-details .schedule-consultation-link.cta {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: fit-content !important;
    margin-top: 22px !important;
    background: #B85A36 !important;
    color: white !important;
    padding: 10px 15px !important;
    border-radius: 4px !important;
    box-shadow: 0 14px 28px rgba(181,76,40,.16) !important;
    border: 0 !important;
    font-family: "Inter", sans-serif !important;
    font-size: 12px !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
    letter-spacing: normal !important;
    text-transform: none !important;
    text-decoration: none !important;
}

.contact-details .schedule-consultation-link:hover,
.contact-details .schedule-consultation-link.cta:hover {
    background: #9F4B2B !important;
    color: white !important;
}

.contact-details .schedule-consultation-link:visited,
.contact-details .schedule-consultation-link:focus {
    color: white !important;
}

@media(max-width: 1100px) {
    .approach-image,
    .why-faq-image {
        height: auto !important;
        min-height: 420px !important;
        aspect-ratio: 16 / 10 !important;
    }
}

@media(max-width: 760px) {
    .approach-image,
    .why-faq-image {
        min-height: 320px !important;
        aspect-ratio: 4 / 3 !important;
    }
}


/* Desktop image fit refinement: show full uploaded images without awkward whitespace/cropping */
@media(min-width: 1101px) {
    .approach-grid {
        align-items: center !important;
    }

    .approach-image {
        height: auto !important;
        min-height: 0 !important;
        aspect-ratio: 16 / 10 !important;
        background: transparent !important;
        overflow: hidden !important;
    }

    .approach-image img {
        position: static !important;
        display: block !important;
        width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        max-width: 100% !important;
        object-fit: contain !important;
        object-position: center center !important;
        border-radius: 6px !important;
    }

    .why-faq-grid {
        align-items: center !important;
    }

    .why-faq-image {
        height: auto !important;
        min-height: 0 !important;
        aspect-ratio: auto !important;
        background: transparent !important;
        overflow: hidden !important;
    }

    .why-faq-image img {
        position: static !important;
        display: block !important;
        width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        max-width: 100% !important;
        object-fit: contain !important;
        object-position: center center !important;
        border-radius: 6px !important;
    }
}

/* Tablet/mobile keeps strong cropped card fit */
@media(max-width: 1100px) {
    .approach-image,
    .why-faq-image {
        position: relative !important;
        min-height: 420px !important;
        aspect-ratio: 16 / 10 !important;
        overflow: hidden !important;
    }

    .approach-image img,
    .why-faq-image img {
        position: absolute !important;
        inset: 0 !important;
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
        object-position: center center !important;
    }
}

/* Schedule consultation button: match CTA typography but use dark green background */
.contact-details .schedule-consultation-link,
.contact-details .schedule-consultation-link.cta {
    background: #2F3824 !important;
    border-color: #2F3824 !important;
    color: #ffffff !important;
    box-shadow: 0 14px 28px rgba(47,56,36,.16) !important;
    font-family: "Inter", sans-serif !important;
    font-size: 12px !important;
    font-weight: 800 !important;
    padding: 10px 15px !important;
    border-radius: 4px !important;
}

.contact-details .schedule-consultation-link:hover,
.contact-details .schedule-consultation-link.cta:hover {
    background: #3F4F2F !important;
    border-color: #3F4F2F !important;
    color: #ffffff !important;
}


/* Match Schedule a consultation exactly to Complete Questionnaire button green */
.contact-details .schedule-consultation-link,
.contact-details .schedule-consultation-link.cta {
    background: #3F4F2F !important;
    border-color: #3F4F2F !important;
    color: #ffffff !important;
}

.contact-details .schedule-consultation-link:hover,
.contact-details .schedule-consultation-link.cta:hover {
    background: #324024 !important;
    border-color: #324024 !important;
    color: #ffffff !important;
}


/* Business Formation page refinements */
.business-formation-page .service-detail-hero,
.service-detail-hero[style*="business-formation-service-hero"] {
    min-height: 760px !important;
    display: flex !important;
    align-items: center !important;
    background-image:
      linear-gradient(90deg,
        rgba(248,243,238,.96) 0%,
        rgba(248,243,238,.82) 24%,
        rgba(248,243,238,.46) 46%,
        rgba(248,243,238,.12) 68%,
        rgba(248,243,238,0) 90%),
      linear-gradient(180deg,
        rgba(248,243,238,.10) 0%,
        rgba(248,243,238,0) 68%,
        #F8F3EE 100%),
      var(--service-hero-image) !important;
    background-size:
      100% 100%,
      100% 100%,
      cover !important;
    background-position:
      left center,
      center center,
      center center !important;
    background-repeat: no-repeat !important;
    background-color: #F8F3EE !important;
}

.service-detail-hero[style*="business-formation-service-hero"] .service-detail-wrap {
    width: 100% !important;
    max-width: 1240px !important;
    margin-left: 0 !important;
    margin-right: auto !important;
    padding-left: clamp(28px, 7vw, 90px) !important;
    padding-right: clamp(28px, 7vw, 90px) !important;
}

.service-detail-hero[style*="business-formation-service-hero"] .service-detail-copy {
    max-width: 660px !important;
    margin-left: 0 !important;
    text-align: left !important;
}

/* Align comparison header/copy with the hero left edge */
body:has(.service-detail-hero[style*="business-formation-service-hero"]) .service-comparison > .eyebrow,
body:has(.service-detail-hero[style*="business-formation-service-hero"]) .service-comparison > h2,
body:has(.service-detail-hero[style*="business-formation-service-hero"]) .service-comparison > p {
    max-width: 760px !important;
    margin-left: 0 !important;
    margin-right: auto !important;
    text-align: left !important;
}

/* Center price disclaimer beneath tiers */
body:has(.service-detail-hero[style*="business-formation-service-hero"]) .pricing-note {
    text-align: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
    max-width: 900px !important;
}

/* Business Formation bottom CTA description refinement */
body:has(.service-detail-hero[style*="business-formation-service-hero"]) .service-detail-cta-copy p {
    max-width: 680px !important;
    line-height: 1.58 !important;
}

@media(max-width: 760px) {
    .service-detail-hero[style*="business-formation-service-hero"] {
        min-height: 680px !important;
        background-image:
          linear-gradient(90deg,
            rgba(248,243,238,.96) 0%,
            rgba(248,243,238,.82) 44%,
            rgba(248,243,238,.42) 78%,
            rgba(248,243,238,.10) 100%),
          linear-gradient(180deg,
            rgba(248,243,238,.12) 0%,
            rgba(248,243,238,0) 68%,
            #F8F3EE 100%),
          var(--service-hero-image) !important;
        background-size:
          100% 100%,
          100% 100%,
          cover !important;
        background-position:
          left center,
          center center,
          center center !important;
    }
}


/* Business Formation final hero coverage + centered personalized plans header */
.service-detail-hero[style*="business-formation-service-hero"] {
    min-height: 780px !important;
    display: flex !important;
    align-items: center !important;
    overflow: hidden !important;
    background-image:
      linear-gradient(90deg,
        rgba(248,243,238,.96) 0%,
        rgba(248,243,238,.82) 24%,
        rgba(248,243,238,.46) 46%,
        rgba(248,243,238,.14) 68%,
        rgba(248,243,238,0) 90%),
      linear-gradient(180deg,
        rgba(248,243,238,.10) 0%,
        rgba(248,243,238,0) 68%,
        #F8F3EE 100%),
      var(--service-hero-image) !important;
    background-size:
      100% 100%,
      100% 100%,
      cover !important;
    background-position:
      left center,
      center center,
      center center !important;
    background-repeat: no-repeat !important;
    background-color: #F8F3EE !important;
}

.service-detail-hero[style*="business-formation-service-hero"] .service-detail-wrap {
    width: 100% !important;
    max-width: 1240px !important;
    margin-left: 0 !important;
    margin-right: auto !important;
    padding-left: clamp(28px, 7vw, 90px) !important;
    padding-right: clamp(28px, 7vw, 90px) !important;
}

.service-detail-hero[style*="business-formation-service-hero"] .service-detail-copy {
    max-width: 660px !important;
    margin-left: 0 !important;
    text-align: left !important;
}

/* Center the Personalized Plans comparison intro only */
body:has(.service-detail-hero[style*="business-formation-service-hero"]) .service-comparison > .eyebrow,
body:has(.service-detail-hero[style*="business-formation-service-hero"]) .service-comparison > h2,
body:has(.service-detail-hero[style*="business-formation-service-hero"]) .service-comparison > p {
    max-width: 820px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
}

body:has(.service-detail-hero[style*="business-formation-service-hero"]) .service-comparison > p {
    margin-bottom: 34px !important;
}

/* Keep comparison table full-width beneath centered copy */
body:has(.service-detail-hero[style*="business-formation-service-hero"]) .comparison-table {
    width: 100% !important;
}

/* Keep pricing disclaimer centered */
body:has(.service-detail-hero[style*="business-formation-service-hero"]) .pricing-note {
    text-align: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
    max-width: 900px !important;
}

@media(max-width: 760px) {
    .service-detail-hero[style*="business-formation-service-hero"] {
        min-height: 680px !important;
        background-image:
          linear-gradient(90deg,
            rgba(248,243,238,.96) 0%,
            rgba(248,243,238,.82) 44%,
            rgba(248,243,238,.42) 78%,
            rgba(248,243,238,.10) 100%),
          linear-gradient(180deg,
            rgba(248,243,238,.12) 0%,
            rgba(248,243,238,0) 68%,
            #F8F3EE 100%),
          var(--service-hero-image) !important;
        background-size:
          100% 100%,
          100% 100%,
          cover !important;
        background-position:
          left center,
          center center,
          center center !important;
    }
}


/* Business Formation hero: center image, header, and description */
.service-detail-hero[style*="business-formation-service-hero"] {
    min-height: 780px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    background-image:
      linear-gradient(180deg,
        rgba(248,243,238,.74) 0%,
        rgba(248,243,238,.56) 28%,
        rgba(248,243,238,.36) 54%,
        rgba(248,243,238,.16) 78%,
        #F8F3EE 100%),
      linear-gradient(90deg,
        rgba(248,243,238,.30) 0%,
        rgba(248,243,238,.18) 22%,
        rgba(248,243,238,.08) 50%,
        rgba(248,243,238,.18) 78%,
        rgba(248,243,238,.30) 100%),
      var(--service-hero-image) !important;
    background-size:
      100% 100%,
      100% 100%,
      cover !important;
    background-position:
      center center,
      center center,
      center center !important;
    background-repeat: no-repeat !important;
}

.service-detail-hero[style*="business-formation-service-hero"] .service-detail-wrap {
    width: 100% !important;
    max-width: 980px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: clamp(28px, 7vw, 90px) !important;
    padding-right: clamp(28px, 7vw, 90px) !important;
    display: flex !important;
    justify-content: center !important;
}

.service-detail-hero[style*="business-formation-service-hero"] .service-detail-copy {
    max-width: 760px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
}

.service-detail-hero[style*="business-formation-service-hero"] .service-detail-copy p {
    margin-left: auto !important;
    margin-right: auto !important;
}

.service-detail-hero[style*="business-formation-service-hero"] .btn.primary {
    margin-left: auto !important;
    margin-right: auto !important;
}

@media(max-width: 760px) {
    .service-detail-hero[style*="business-formation-service-hero"] {
        min-height: 680px !important;
        background-image:
          linear-gradient(180deg,
            rgba(248,243,238,.82) 0%,
            rgba(248,243,238,.62) 34%,
            rgba(248,243,238,.38) 66%,
            #F8F3EE 100%),
          var(--service-hero-image) !important;
        background-size:
          100% 100%,
          cover !important;
        background-position:
          center center,
          center center !important;
    }
}


/* Business Formation hero: premium center fade with full-background coverage */
.service-detail-hero[style*="business-formation-service-hero"] {
    min-height: 780px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    overflow: hidden !important;
    background-color: #F8F3EE !important;
    background-image:
      radial-gradient(ellipse at center,
        rgba(248,243,238,.18) 0%,
        rgba(248,243,238,.30) 28%,
        rgba(248,243,238,.58) 58%,
        rgba(248,243,238,.86) 82%,
        #F8F3EE 100%),
      linear-gradient(180deg,
        rgba(248,243,238,.76) 0%,
        rgba(248,243,238,.36) 30%,
        rgba(248,243,238,.16) 56%,
        rgba(248,243,238,.44) 82%,
        #F8F3EE 100%),
      linear-gradient(90deg,
        #F8F3EE 0%,
        rgba(248,243,238,.62) 14%,
        rgba(248,243,238,.18) 38%,
        rgba(248,243,238,.18) 62%,
        rgba(248,243,238,.62) 86%,
        #F8F3EE 100%),
      var(--service-hero-image) !important;
    background-size:
      100% 100%,
      100% 100%,
      100% 100%,
      cover !important;
    background-position:
      center center,
      center center,
      center center,
      center center !important;
    background-repeat: no-repeat !important;
}

.service-detail-hero[style*="business-formation-service-hero"]::after {
    content: "" !important;
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    bottom: -1px !important;
    height: 150px !important;
    background: linear-gradient(to bottom, rgba(248,243,238,0), #F8F3EE 88%) !important;
    pointer-events: none !important;
    z-index: 1 !important;
}

.service-detail-hero[style*="business-formation-service-hero"] .service-detail-wrap {
    position: relative !important;
    z-index: 2 !important;
}

.service-detail-hero[style*="business-formation-service-hero"] .service-detail-copy {
    background: rgba(248,243,238,.18) !important;
    border-radius: 6px !important;
    padding: clamp(10px, 2vw, 22px) !important;
}

@media(max-width: 760px) {
    .service-detail-hero[style*="business-formation-service-hero"] {
        min-height: 680px !important;
        background-image:
          radial-gradient(ellipse at center,
            rgba(248,243,238,.28) 0%,
            rgba(248,243,238,.48) 44%,
            rgba(248,243,238,.84) 78%,
            #F8F3EE 100%),
          linear-gradient(180deg,
            rgba(248,243,238,.84) 0%,
            rgba(248,243,238,.48) 45%,
            #F8F3EE 100%),
          var(--service-hero-image) !important;
        background-size:
          100% 100%,
          100% 100%,
          cover !important;
        background-position:
          center center,
          center center,
          center center !important;
    }
}


/* === Final clean service hero layout and asset corrections === */
.home-hero-final {
  background:
    linear-gradient(90deg,
      rgba(241,232,224,.97) 0%,
      rgba(241,232,224,.88) 36%,
      rgba(241,232,224,.42) 62%,
      rgba(241,232,224,.08) 100%),
    url("assets/hero-background-final.png") !important;
  background-size: cover !important;
  background-position: center right !important;
}

.clean-service-hero {
  background:
    linear-gradient(180deg, #F6EFE8 0%, #F1E8E0 100%) !important;
  min-height: auto !important;
  padding-top: 330px !important;
  padding-bottom: 48px !important;
  text-align: center !important;
  border-bottom: 0 !important;
}

.clean-service-hero .service-detail-wrap {
  width: min(980px, calc(100% - 44px)) !important;
  margin: 0 auto !important;
  display: block !important;
}

.clean-service-hero .service-detail-copy {
  max-width: 850px !important;
  margin: 0 auto !important;
  text-align: center !important;
}

.clean-service-hero .service-detail-copy p {
  margin-left: auto !important;
  margin-right: auto !important;
}

.service-feature-image-section {
  background: #F1E8E0 !important;
  padding: 0 clamp(22px, 6vw, 90px) 92px !important;
}

.service-feature-image-wrap {
  width: min(1120px, 100%) !important;
  margin: 0 auto !important;
}

.service-feature-image-wrap img {
  width: 100% !important;
  display: block !important;
  border-radius: 24px !important;
  box-shadow:
    0 24px 58px rgba(72,53,26,.13),
    inset 0 1px 0 rgba(255,255,255,.25) !important;
  object-fit: cover !important;
}

.approach-image {
  background: none !important;
  min-height: auto !important;
}

.approach-image img,
.why-faq-image img,
.service-detail-cta-image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.approach-image img {
  min-height: 560px;
  border-radius: 6px;
}

.why-faq-image {
  background: none !important;
  min-height: auto !important;
}

.why-faq-image img {
  min-height: 560px;
  border-radius: 6px;
}

@media(max-width: 980px) {
  .clean-service-hero {
    padding-top: 220px !important;
    padding-bottom: 42px !important;
  }
}

@media(max-width: 760px) {
  .clean-service-hero {
    padding-top: 170px !important;
    padding-bottom: 34px !important;
  }

  .service-feature-image-section {
    padding-bottom: 68px !important;
  }

  .service-feature-image-wrap img {
    border-radius: 16px !important;
  }

  .approach-image img,
  .why-faq-image img {
    min-height: 320px;
  }
}


/* === Refined service page image sizing + centered checklist copy === */

/* Make the hero feature image smaller and remove extra surrounding white/blank space */
.service-feature-image-section {
  padding: 0 clamp(22px, 5vw, 70px) 56px !important;
}

.service-feature-image-wrap {
  width: min(760px, 100%) !important;
  margin: 0 auto !important;
}

.service-feature-image-wrap img {
  width: 100% !important;
  max-height: 430px !important;
  object-fit: cover !important;
  object-position: center center !important;
  border-radius: 20px !important;
}

/* Use a tighter hero-to-image relationship */
.clean-service-hero {
  padding-bottom: 30px !important;
}

/* Center the Personalized Plans / checklist section header and description */
.service-comparison {
  text-align: center !important;
}

.service-comparison .eyebrow,
.service-comparison h2,
.service-comparison > p {
  text-align: center !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.service-comparison > p {
  max-width: 820px !important;
}

/* Keep the table readable after centering the section intro */
.comparison-table {
  text-align: left !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Bottom contact/CTA image should match the clean rounded look */
.service-detail-cta-image img {
  border-radius: 20px !important;
  object-fit: cover !important;
  object-position: center center !important;
}

@media(max-width: 760px) {
  .service-feature-image-section {
    padding-bottom: 44px !important;
  }

  .service-feature-image-wrap {
    width: min(560px, 100%) !important;
  }

  .service-feature-image-wrap img {
    max-height: 320px !important;
    border-radius: 16px !important;
  }

  .clean-service-hero {
    padding-bottom: 24px !important;
  }
}


/* Final requested adjustments */

/* Move hero content higher */
.clean-service-hero{
    padding-top: 220px !important;
    padding-bottom: 18px !important;
}

/* Remove whitespace around featured image */
.service-feature-image-section{
    padding-top: 0 !important;
    padding-bottom: 32px !important;
}

.service-feature-image-wrap{
    width:min(700px,100%) !important;
}

.service-feature-image-wrap img{
    display:block !important;
    max-height:380px !important;
    margin:0 auto !important;
}

/* Center final pricing disclaimer */
.pricing-note{
    text-align:center !important;
    margin-left:auto !important;
    margin-right:auto !important;
    max-width:900px !important;
}

/* Mobile */
@media(max-width:760px){
    .clean-service-hero{
        padding-top:140px !important;
    }

    .service-feature-image-wrap img{
        max-height:280px !important;
    }
}


/* Final polish fixes requested */

/* Smaller final pricing disclaimer */
.pricing-note{
    font-size:0.92rem !important;
    line-height:1.6 !important;
    opacity:.9 !important;
}

/* Business Formation image whitespace fix */
.service-feature-image-wrap{
    overflow:hidden !important;
}

.service-feature-image-wrap img{
    width:100% !important;
    display:block !important;
    object-fit:cover !important;
    object-position:center center !important;
}

/* Specifically widen business formation image container slightly
   so no right-side gap appears */
body:has(.clean-service-hero) .service-feature-image-wrap{
    max-width:760px !important;
}

/* Fallback for browsers without :has support */
.service-feature-image-section .service-feature-image-wrap{
    background:transparent !important;
}


/* White-line fix on service hero image */
.service-feature-image-wrap{
    overflow:hidden !important;
    border-radius:20px !important;
    background:transparent !important;
    line-height:0 !important;
}

.service-feature-image-wrap img{
    display:block !important;
    width:100.5% !important; /* slight bleed removes rendering seam */
    max-width:none !important;
    margin:0 !important;
    border:0 !important;
    vertical-align:top !important;
}

/* Remove shadow clipping artifact that can appear as a right-side strip */
.service-feature-image-wrap::after{
    display:none !important;
}


/* Targeted Business Formation hero image seam fix */
.service-feature-image-wrap{
    background:#F1E8E0 !important;
}

.service-feature-image-wrap img[src*="business-formation-service-hero"]{
    width:100% !important;
    height:auto !important;
    display:block !important;
    object-fit:cover !important;
    object-position:center center !important;
    transform:scale(1.01) !important;
    transform-origin:center center !important;
}

/* Preserve rounded image clipping after scale */
.service-feature-image-wrap{
    overflow:hidden !important;
    border-radius:20px !important;
}


/* === Service hero image compressed desktop fit + equal homepage service cards === */

/* Let the service hero image hold its full composition better on narrower desktop views */
.service-feature-image-wrap{
    width:min(860px, calc(100% - 44px)) !important;
    max-width:860px !important;
}

.service-feature-image-wrap img{
    aspect-ratio:16 / 9 !important;
    height:auto !important;
    max-height:none !important;
    object-fit:cover !important;
    object-position:center center !important;
}

/* Business Formation needs a slightly wider crop so the document is not squeezed on compressed computer widths */
img[src*="business-formation-service-hero"]{
    object-position:center center !important;
}

/* Compressed desktop/tablet: preserve more of the image and avoid awkward tight cropping */
@media(max-width:1100px) and (min-width:761px){
    .service-feature-image-wrap{
        width:min(820px, calc(100% - 56px)) !important;
        max-width:820px !important;
    }

    .service-feature-image-wrap img{
        aspect-ratio: 4 / 3 !important;
        object-fit:cover !important;
    }
}

/* Mobile keeps a balanced crop */
@media(max-width:760px){
    .service-feature-image-wrap{
        width:calc(100% - 32px) !important;
    }

    .service-feature-image-wrap img{
        aspect-ratio: 4 / 3 !important;
        object-fit:cover !important;
    }
}

/* Homepage service cards: all four stay equal height in every grid layout */
.services-grid{
    align-items:stretch !important;
    grid-auto-rows:1fr !important;
}

.home-service-card{
    height:100% !important;
    min-height:100% !important;
    display:flex !important;
    flex-direction:column !important;
}

.home-service-image{
    height:190px !important;
    min-height:190px !important;
    flex:0 0 190px !important;
}

.home-service-content{
    flex:1 1 auto !important;
    display:flex !important;
    flex-direction:column !important;
}

.home-service-content h3{
    min-height:54px !important;
}

.home-service-content p{
    flex:1 1 auto !important;
}

.home-service-content a{
    margin-top:auto !important;
}

@media(max-width:1100px){
    .services-grid{
        grid-auto-rows:1fr !important;
    }

    .home-service-card{
        min-height:430px !important;
    }
}

@media(max-width:640px){
    .home-service-card{
        min-height:auto !important;
    }

    .home-service-content h3{
        min-height:auto !important;
    }

    .home-service-image{
        height:220px !important;
        min-height:220px !important;
        flex-basis:220px !important;
    }
}


/* Transaction Coordination pricing card box fix */
.pricing-tier-grid {
  align-items: stretch !important;
  grid-auto-rows: 1fr !important;
}

.pricing-tier-card {
  min-height: 315px !important;
  height: 100% !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-start !important;
  gap: 12px !important;
  padding: 30px 26px !important;
}

.pricing-tier-card span {
  display: block !important;
  min-height: 18px !important;
}

.pricing-tier-card h3 {
  min-height: 58px !important;
  display: flex !important;
  align-items: center !important;
  margin-bottom: 4px !important;
}

.pricing-tier-card p {
  flex: 1 1 auto !important;
  margin: 0 0 18px !important;
  line-height: 1.45 !important;
}

.pricing-tier-link {
  margin-top: auto !important;
  align-self: flex-start !important;
}

@media(max-width: 980px) {
  .pricing-tier-card {
    min-height: 280px !important;
  }
}

@media(max-width: 720px) {
  .pricing-tier-card {
    min-height: auto !important;
  }

  .pricing-tier-card h3 {
    min-height: auto !important;
  }
}


/* Transaction pricing cards: prevent overlap without oversized boxes */
.service-pricing-section .pricing-tier-grid {
  align-items: stretch !important;
  grid-auto-rows: auto !important;
}

.service-pricing-section .pricing-tier-card {
  min-height: 0 !important;
  height: auto !important;
  display: flex !important;
  flex-direction: column !important;
  padding: 24px 22px !important;
  gap: 10px !important;
  overflow: visible !important;
}

.service-pricing-section .pricing-tier-card h3 {
  min-height: 0 !important;
  height: auto !important;
  margin-bottom: 6px !important;
  line-height: 1.05 !important;
}

.service-pricing-section .pricing-tier-card p {
  flex: 0 1 auto !important;
  margin: 0 0 18px !important;
  line-height: 1.42 !important;
  overflow-wrap: anywhere !important;
  word-break: normal !important;
}

.service-pricing-section .pricing-tier-link {
  margin-top: auto !important;
}


/* Review package fix: keep service pricing cards separated */
.pricing-tier-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 22px !important;
  align-items: stretch !important;
}

.pricing-tier-card {
  display: flex !important;
  flex-direction: column !important;
  height: auto !important;
  overflow: visible !important;
}

.pricing-tier-link {
  margin-top: auto !important;
}

@media(max-width: 980px) {
  .pricing-tier-grid {
    grid-template-columns: 1fr !important;
  }
}


/* Smaller pricing disclaimer on all service pages */
.pricing-note {
  font-size: 0.82rem !important;
  line-height: 1.45 !important;
  opacity: 0.85 !important;
}


/* Force smaller Final Pricing disclaimer across all service pages */
.service-pricing-section .pricing-note,
.service-pricing-card .pricing-note,
p.pricing-note,
.pricing-note {
  font-family: "Inter", sans-serif !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
  font-weight: 500 !important;
  letter-spacing: 0 !important;
  text-align: center !important;
  max-width: 820px !important;
  margin: 24px auto 0 !important;
  opacity: 0.78 !important;
}

/* Override broad paragraph rules that were forcing larger serif text */
.service-pricing-section p.pricing-note {
  font-size: 13px !important;
}


/* Resources section accent line */
.resources-heading-accent,
#resources .section-accent{
  width:72px;
  height:4px;
  background:#c97b63;
  border-radius:999px;
  margin:18px auto 22px;
}


/* Resources section heading sizing matched to other homepage section headings */
#resources .resources-heading,
#resources .section-heading {
  max-width: 760px !important;
  margin: 0 auto 46px !important;
  text-align: center !important;
}

#resources .eyebrow {
  font-family: "Inter", sans-serif !important;
  color: var(--orange) !important;
  text-transform: uppercase !important;
  letter-spacing: .16em !important;
  font-size: 11px !important;
  font-weight: 800 !important;
  margin-bottom: 14px !important;
}

#resources h2 {
  font-family: "Cormorant Garamond", serif !important;
  color: #2A2F23 !important;
  font-weight: 500 !important;
  font-size: clamp(36px, 3.6vw, 56px) !important;
  line-height: .98 !important;
  letter-spacing: -.04em !important;
  margin: 0 0 18px !important;
}

#resources .resources-heading-accent,
#resources .section-accent {
  width: 64px !important;
  height: 3px !important;
  background: var(--orange) !important;
  border-radius: 999px !important;
  margin: 0 auto 22px !important;
}

#resources .resources-heading p,
#resources .section-heading p {
  font-family: "Cormorant Garamond", serif !important;
  font-size: 21px !important;
  line-height: 1.48 !important;
  font-weight: 500 !important;
  letter-spacing: -.015em !important;
  color: #3f3b37 !important;
  max-width: 640px !important;
  margin: 0 auto !important;
}

@media(max-width:760px) {
  #resources h2 {
    font-size: 34px !important;
  }

  #resources .resources-heading p,
  #resources .section-heading p {
    font-size: 18px !important;
  }
}


/* Final homepage tweaks */
#resources .eyebrow {
  color: #2A2F23 !important;
}


/* Personalized Game Plans / FAQ image sizing refinement */
.why-faq-grid {
  grid-template-columns: minmax(360px, .82fr) minmax(460px, 1.18fr) !important;
  gap: 46px !important;
  align-items: center !important;
}

.why-faq-image {
  min-height: 430px !important;
  max-height: 520px !important;
  height: 48vw !important;
  align-self: center !important;
}

.why-faq-image img {
  width: 100% !important;
  height: 100% !important;
  max-height: 520px !important;
  object-fit: cover !important;
  object-position: center !important;
  border-radius: 6px !important;
}

@media(max-width: 1200px) {
  .why-faq-grid {
    grid-template-columns: minmax(320px, .78fr) minmax(430px, 1.22fr) !important;
    gap: 38px !important;
  }

  .why-faq-image {
    min-height: 360px !important;
    max-height: 440px !important;
    height: 42vw !important;
  }

  .why-faq-image img {
    max-height: 440px !important;
  }
}

@media(max-width: 980px) {
  .why-faq-grid {
    grid-template-columns: 1fr !important;
  }

  .why-faq-image {
    min-height: 300px !important;
    max-height: 360px !important;
    height: auto !important;
  }

  .why-faq-image img {
    max-height: 360px !important;
  }
}

@media(max-width: 760px) {
  .why-faq-image {
    min-height: 240px !important;
    max-height: 300px !important;
  }

  .why-faq-image img {
    max-height: 300px !important;
  }
}


/* Corrected Personalized Game Plans / FAQ image: responsive without overlap or whitespace */
.why-faq-grid {
  display: grid !important;
  grid-template-columns: minmax(260px, 0.72fr) minmax(420px, 1.28fr) !important;
  gap: clamp(28px, 4vw, 52px) !important;
  align-items: start !important;
}

.why-faq-image {
  min-height: 0 !important;
  height: auto !important;
  max-height: none !important;
  align-self: start !important;
  overflow: hidden !important;
  border-radius: 6px !important;
  background: none !important;
}

.why-faq-image img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  max-height: none !important;
  object-fit: contain !important;
  object-position: center top !important;
  border-radius: 6px !important;
}

@media(max-width: 1180px) {
  .why-faq-grid {
    grid-template-columns: minmax(220px, 0.64fr) minmax(380px, 1.36fr) !important;
    gap: 34px !important;
  }
}

@media(max-width: 980px) {
  .why-faq-grid {
    grid-template-columns: 1fr !important;
  }

  .why-faq-image {
    width: min(520px, 100%) !important;
    margin: 0 auto 28px !important;
  }
}

@media(max-width: 760px) {
  .why-faq-image {
    width: min(440px, 100%) !important;
  }
}


/* Slightly smaller FAQ image while preserving layout and avoiding whitespace */
.why-faq-grid {
  grid-template-columns: minmax(220px, 0.62fr) minmax(460px, 1.38fr) !important;
  gap: clamp(32px, 4vw, 56px) !important;
}

.why-faq-image {
  width: 92% !important;
  max-width: 460px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.why-faq-image img {
  width: 100% !important;
  height: auto !important;
  display: block !important;
}

@media(max-width:1180px){
  .why-faq-grid{
    grid-template-columns:minmax(210px,.58fr) minmax(420px,1.42fr)!important;
  }

  .why-faq-image{
    width:88%!important;
    max-width:420px!important;
  }
}

@media(max-width:980px){
  .why-faq-image{
    width:min(420px,100%)!important;
    max-width:none!important;
  }
}


/* Final refinement: make FAQ image a touch smaller while preserving layout */
.why-faq-image {
  width: 84% !important;
  max-width: 420px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

@media(max-width:1180px){
  .why-faq-image{
    width:82% !important;
    max-width:390px !important;
  }
}

@media(max-width:980px){
  .why-faq-image{
    width:min(400px,100%) !important;
    max-width:none !important;
  }
}


/* Final FAQ / Personalized Game Plans balance */
.why-faq {
  padding-top: 92px !important;
  padding-bottom: 92px !important;
}

.why-faq-grid {
  grid-template-columns: minmax(360px, 0.86fr) minmax(430px, 1.14fr) !important;
  gap: clamp(34px, 4vw, 58px) !important;
  align-items: center !important;
}

.why-faq-image {
  width: 100% !important;
  max-width: 560px !important;
  min-height: 0 !important;
  height: auto !important;
  max-height: none !important;
  margin: 0 auto !important;
  background: transparent !important;
  overflow: hidden !important;
  border-radius: 6px !important;
  align-self: center !important;
}

.why-faq-image img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  max-height: none !important;
  object-fit: contain !important;
  object-position: center center !important;
  border-radius: 6px !important;
}

.why-faq .intro {
  font-size: 19px !important;
  line-height: 1.45 !important;
  margin-bottom: 20px !important;
}

@media(max-width:1180px) {
  .why-faq-grid {
    grid-template-columns: minmax(320px, 0.82fr) minmax(390px, 1.18fr) !important;
    gap: 34px !important;
  }

  .why-faq-image {
    max-width: 500px !important;
  }
}

@media(max-width:980px) {
  .why-faq {
    padding-top: 76px !important;
    padding-bottom: 76px !important;
  }

  .why-faq-grid {
    grid-template-columns: 1fr !important;
  }

  .why-faq-image {
    width: min(520px, 100%) !important;
    max-width: 520px !important;
    margin: 0 auto 28px !important;
  }
}

@media(max-width:760px) {
  .why-faq-image {
    width: min(460px, 100%) !important;
  }

  .why-faq .intro {
    font-size: 17px !important;
  }
}


/* Remove apparent whitespace around FAQ image while keeping balanced size */
.why-faq-image {
  width: 100% !important;
  max-width: 520px !important;
  margin: 0 auto !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.why-faq-image img {
  width: 100% !important;
  max-width: 520px !important;
  height: auto !important;
  display: block !important;
  object-fit: cover !important;
}

.why-faq-grid {
  grid-template-columns: minmax(380px, 0.92fr) minmax(420px, 1.08fr) !important;
  align-items: center !important;
}

@media(max-width:1180px){
  .why-faq-image,
  .why-faq-image img{
    max-width: 480px !important;
  }
}

@media(max-width:980px){
  .why-faq-grid{
    grid-template-columns:1fr !important;
  }
  .why-faq-image,
  .why-faq-image img{
    max-width:520px !important;
  }
}


/* Final FAQ image reset: use clean uploaded image and natural responsive sizing */
.why-faq-grid {
  display: grid !important;
  grid-template-columns: minmax(360px, 0.9fr) minmax(440px, 1.1fr) !important;
  gap: clamp(34px, 4vw, 56px) !important;
  align-items: center !important;
}

.why-faq-image {
  width: 100% !important;
  max-width: 540px !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  margin: 0 auto !important;
  padding: 0 !important;
  background: transparent !important;
  overflow: hidden !important;
  border-radius: 6px !important;
}

.why-faq-image img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  max-height: none !important;
  object-fit: initial !important;
  object-position: initial !important;
  border-radius: 6px !important;
  margin: 0 !important;
}

@media(max-width:1180px) {
  .why-faq-grid {
    grid-template-columns: minmax(320px, 0.86fr) minmax(400px, 1.14fr) !important;
    gap: 34px !important;
  }

  .why-faq-image {
    max-width: 500px !important;
  }
}

@media(max-width:980px) {
  .why-faq-grid {
    grid-template-columns: 1fr !important;
  }

  .why-faq-image {
    width: min(520px, 100%) !important;
    max-width: 520px !important;
    margin: 0 auto 28px !important;
  }
}


/* FAQ / Personalized Game Plan final image fix:
   remove empty white image/container space and center the right-side image */
.why-faq-grid {
  grid-template-columns: minmax(420px, 1fr) minmax(360px, 0.82fr) !important;
  gap: clamp(34px, 4vw, 56px) !important;
  align-items: center !important;
}

.why-faq-image {
  background: transparent !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 auto !important;
  width: min(100%, 470px) !important;
  max-width: 470px !important;
  min-height: 0 !important;
  height: auto !important;
  overflow: visible !important;
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  justify-self: center !important;
  align-self: center !important;
}

.why-faq-image img {
  display: block !important;
  width: 100% !important;
  max-width: 470px !important;
  height: auto !important;
  max-height: none !important;
  object-fit: contain !important;
  object-position: center center !important;
  border-radius: 6px !important;
  margin: 0 auto !important;
  background: transparent !important;
}

@media(max-width: 1180px) {
  .why-faq-grid {
    grid-template-columns: minmax(390px, 1fr) minmax(320px, 0.78fr) !important;
    gap: 34px !important;
  }

  .why-faq-image,
  .why-faq-image img {
    max-width: 430px !important;
  }
}

@media(max-width: 980px) {
  .why-faq-grid {
    grid-template-columns: 1fr !important;
  }

  .why-faq-image,
  .why-faq-image img {
    width: min(100%, 470px) !important;
    max-width: 470px !important;
  }

  .why-faq-image {
    margin: 0 auto 28px !important;
  }
}


/* FINAL FAQ IMAGE POSITIONING */
.why-faq-image{
    justify-self:center !important;
    align-self:center !important;
    margin:auto !important;
    transform: translateY(-18px) !important;
}

.why-faq-image img{
    border-radius:18px !important;
    overflow:hidden !important;
    display:block !important;
    margin:0 auto !important;
}

@media(max-width:980px){
    .why-faq-image{
        transform:none !important;
    }
}


/* Added package pages: booking, form, legal */
.legal-hero-offset{padding-top:clamp(220px,22vw,360px)!important;}
.legal-page{max-width:1000px;margin:0 auto;padding-top:clamp(220px,22vw,360px)!important;}
.legal-page h1{font-family:"Cormorant Garamond",serif;font-size:clamp(42px,5vw,70px);color:#2A2F23;margin-bottom:18px;}
.legal-page h2{font-family:"Cormorant Garamond",serif;color:#493522;font-size:clamp(26px,3vw,36px);margin-top:34px;margin-bottom:10px;}
.legal-page p,.legal-page li{font-family:"Cormorant Garamond",serif!important;font-size:20px!important;line-height:1.6!important;color:#3f3b37!important;}
.booking-options-section{background:#F1E8E0;}
@media(max-width:760px){.legal-hero-offset,.legal-page{padding-top:170px!important}.legal-page p,.legal-page li{font-size:17px!important}}



/* Resource card icon/title alignment */
.resources-grid .resource-card {
  text-align: center !important;
}

.resources-grid .resource-icon {
  margin-left: auto !important;
  margin-right: auto !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.resources-grid .resource-card h3 {
  text-align: center !important;
}

/* Efficiency Basics icon in second Resources card */
.resources-grid .resource-card:nth-child(2) .resource-icon {
  font-size: inherit !important;
  line-height: 1 !important;
}



























/* Personalized Game Plans / FAQs final site-matched layout */
#faq.faq-centered-section {
  background:
    linear-gradient(180deg,
      #F1E8E0 0%,
      #F4EADF 48%,
      #F1E8E0 100%) !important;
  border-block: 0 !important;
  box-shadow:
    inset 0 42px 52px rgba(241,232,224,.42),
    inset 0 -42px 52px rgba(241,232,224,.42),
    0 -18px 44px rgba(72,53,26,.035) !important;
  color: #2A2F23 !important;
}

#faq .faq-centered-header {
  max-width: 930px !important;
  margin: 0 auto 44px !important;
  text-align: center !important;
}

#faq .faq-centered-header .eyebrow {
  color: #2F3824 !important;
  font-family: "Inter", sans-serif !important;
  font-size: 11px !important;
  font-weight: 800 !important;
  letter-spacing: .16em !important;
  text-transform: uppercase !important;
  text-align: center !important;
  margin-bottom: 14px !important;
}

#faq .faq-centered-header h2 {
  color: #2A2F23 !important;
  font-family: "Cormorant Garamond", serif !important;
  font-weight: 500 !important;
  font-size: clamp(36px, 3.6vw, 56px) !important;
  line-height: .98 !important;
  letter-spacing: -.04em !important;
  text-align: center !important;
  margin: 0 !important;
}

#faq .faq-centered-header h2::after {
  content: "" !important;
  display: block !important;
  width: 78px !important;
  height: 2px !important;
  background: #B85A36 !important;
  margin: 18px auto 22px !important;
  border-radius: 999px !important;
}

#faq .faq-centered-header .intro {
  color: #3f3b37 !important;
  font-family: "Cormorant Garamond", serif !important;
  font-size: 21px !important;
  font-weight: 500 !important;
  line-height: 1.48 !important;
  letter-spacing: -.015em !important;
  text-align: center !important;
  max-width: 820px !important;
  margin: 0 auto !important;
}

#faq .faq-centered-header .faq-heading {
  color: #493522 !important;
  font-family: "Cormorant Garamond", serif !important;
  font-size: clamp(28px, 3vw, 38px) !important;
  font-weight: 600 !important;
  line-height: 1 !important;
  letter-spacing: -.025em !important;
  text-align: center !important;
  margin: 34px 0 0 !important;
}

#faq .faq-two-column-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 22px !important;
  max-width: 1120px !important;
  margin: 0 auto !important;
  align-items: stretch !important;
}

#faq .faq-two-column-grid details {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  min-height: 100% !important;
  background: rgba(251,248,243,.96) !important;
  border: 1px solid rgba(90,70,45,.08) !important;
  border-radius: 6px !important;
  box-shadow: 0 24px 48px rgba(70,50,28,.10) !important;
  padding: 26px 28px !important;
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease !important;
}

#faq .faq-two-column-grid details:hover {
  transform: translateY(-2px) !important;
  border-color: rgba(184,90,54,.18) !important;
  box-shadow: 0 28px 54px rgba(70,50,28,.13) !important;
}

#faq .faq-two-column-grid summary {
  color: #2A2F23 !important;
  font-family: "Inter", sans-serif !important;
  font-size: 15px !important;
  font-weight: 800 !important;
  line-height: 1.35 !important;
  letter-spacing: .025em !important;
  text-transform: uppercase !important;
  text-align: left !important;
  cursor: pointer !important;
}

#faq .faq-two-column-grid details p,
#faq .faq-two-column-grid details li {
  color: #3f3b37 !important;
  font-family: "Cormorant Garamond", serif !important;
  font-size: 18px !important;
  font-weight: 500 !important;
  line-height: 1.5 !important;
  letter-spacing: -.015em !important;
}

#faq .faq-two-column-grid details p {
  margin-top: 14px !important;
  margin-bottom: 0 !important;
}

#faq .faq-two-column-grid details ul {
  margin: 14px 0 0 !important;
  padding-left: 22px !important;
}

@media (max-width: 820px) {
  #faq .faq-two-column-grid {
    grid-template-columns: 1fr !important;
    max-width: 680px !important;
    gap: 16px !important;
  }

  #faq .faq-centered-header {
    margin-bottom: 32px !important;
  }

  #faq .faq-centered-header .intro {
    font-size: 18px !important;
  }

  #faq .faq-two-column-grid summary {
    font-size: 14px !important;
  }

  #faq .faq-two-column-grid details p,
  #faq .faq-two-column-grid details li {
    font-size: 16px !important;
  }
}


/* FAQ cards - match Resources card title styling */
#faq .faq-two-column-grid summary {
  color: #2A2F23 !important;
  font-family: "Cormorant Garamond", serif !important;
  font-size: clamp(24px, 2vw, 30px) !important;
  font-weight: 600 !important;
  text-transform: none !important;
  letter-spacing: -0.02em !important;
  line-height: 1.1 !important;
}

#faq .faq-two-column-grid details {
  border-radius: 8px !important;
}

#faq .faq-two-column-grid details p,
#faq .faq-two-column-grid details li {
  font-family: "Inter", sans-serif !important;
  font-size: 16px !important;
  line-height: 1.65 !important;
}


/* FAQ cards - smaller, matched to Resources card header style */
#faq .faq-two-column-grid {
  gap: 16px !important;
  max-width: 1060px !important;
}

#faq .faq-two-column-grid details {
  padding: 18px 20px !important;
  border-radius: 6px !important;
  background: rgba(251,248,243,.96) !important;
  border: 1px solid rgba(90,70,45,.08) !important;
  box-shadow: 0 18px 36px rgba(70,50,28,.08) !important;
}

#faq .faq-two-column-grid summary {
  color: #2A2F23 !important;
  font-family: "Cormorant Garamond", serif !important;
  font-size: 20px !important;
  font-weight: 600 !important;
  text-transform: none !important;
  letter-spacing: -.035em !important;
  line-height: 1.05 !important;
}

#faq .faq-two-column-grid details p,
#faq .faq-two-column-grid details li {
  color: #3f3b37 !important;
  font-family: "Cormorant Garamond", serif !important;
  font-size: 15px !important;
  font-weight: 500 !important;
  line-height: 1.45 !important;
  letter-spacing: -.015em !important;
}

#faq .faq-two-column-grid details p {
  margin-top: 10px !important;
}

#faq .faq-two-column-grid details ul {
  margin-top: 10px !important;
}

@media (max-width: 820px) {
  #faq .faq-two-column-grid summary {
    font-size: 19px !important;
  }

  #faq .faq-two-column-grid details {
    padding: 17px 18px !important;
  }

  #faq .faq-two-column-grid details p,
  #faq .faq-two-column-grid details li {
    font-size: 15px !important;
  }
}


/* FAQ card headings - lighter resource-card style */
#faq .faq-two-column-grid summary {
  color: #4a5142 !important;
  font-weight: 500 !important;
  font-size: 19px !important;
  letter-spacing: -0.02em !important;
}

#faq .faq-two-column-grid details {
  box-shadow: 0 14px 28px rgba(70,50,28,.06) !important;
}

@media (max-width: 820px) {
  #faq .faq-two-column-grid summary {
    font-size: 18px !important;
  }
}



/* Service page dual CTA section */
.service-dual-cta {
  background: #F1E8E0 !important;
  padding-top: clamp(64px, 8vw, 96px) !important;
  padding-bottom: clamp(64px, 8vw, 96px) !important;
}

.service-dual-cta-wrap {
  max-width: 1120px;
  margin: 0 auto;
  padding: 0 24px;
}

.service-dual-cta-heading {
  text-align: center;
  margin-bottom: 34px;
}

.service-dual-cta-heading h2 {
  color: #2A2F23;
  font-family: "Cormorant Garamond", serif;
  font-size: clamp(38px, 4vw, 58px);
  font-weight: 500;
  line-height: .98;
  letter-spacing: -.04em;
  margin: 0;
}

.service-dual-cta-heading h2::after {
  content: "";
  display: block;
  width: 78px;
  height: 2px;
  background: #B85A36;
  margin: 18px auto 0;
  border-radius: 999px;
}

.service-dual-cta-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
}

.service-dual-cta-card {
  background: rgba(251,248,243,.96);
  border: 1px solid rgba(90,70,45,.10);
  border-radius: 8px;
  box-shadow: 0 22px 46px rgba(70,50,28,.09);
  padding: clamp(28px, 4vw, 40px);
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

.service-dual-cta-card p {
  color: #3f3b37;
  font-family: "Cormorant Garamond", serif;
  font-size: clamp(20px, 2.2vw, 25px);
  font-weight: 500;
  line-height: 1.42;
  letter-spacing: -.015em;
  margin: 0;
}

.service-dual-cta-arrow {
  color: #B85A36;
  font-size: 30px;
  line-height: 1;
  margin: 22px 0 20px;
}

.service-dual-cta-card .btn {
  margin-top: 0;
}

@media (max-width: 820px) {
  .service-dual-cta-grid {
    grid-template-columns: 1fr;
  }

  .service-dual-cta-card {
    padding: 28px 22px;
  }
}



/* Service dual CTA intro refinement */
.service-dual-cta-intro {
  color: #3f3b37;
  font-family: "Cormorant Garamond", serif;
  font-size: clamp(20px, 2.2vw, 25px);
  font-weight: 500;
  line-height: 1.42;
  letter-spacing: -.015em;
  max-width: 760px;
  margin: 18px auto 0;
  text-align: center;
}



/* Branded legal pages */
.legal-body {
  background: #F1E8E0 !important;
  color: #3f3b37 !important;
  font-family: "Inter", sans-serif !important;
}

.branded-legal-page {
  max-width: 980px !important;
  margin: 0 auto !important;
  padding: clamp(130px, 13vw, 170px) 28px clamp(72px, 8vw, 104px) !important;
}

.branded-legal-page .legal-eyebrow {
  color: #B85A36 !important;
  font-family: "Inter", sans-serif !important;
  font-size: 11px !important;
  font-weight: 800 !important;
  letter-spacing: .16em !important;
  text-transform: uppercase !important;
  margin-bottom: 12px !important;
}

.branded-legal-page h1 {
  color: #2A2F23 !important;
  font-family: "Cormorant Garamond", serif !important;
  font-size: clamp(42px, 5vw, 64px) !important;
  font-weight: 500 !important;
  line-height: .98 !important;
  letter-spacing: -.04em !important;
  margin: 0 0 24px !important;
}

.branded-legal-page h1::after {
  content: "" !important;
  display: block !important;
  width: 78px !important;
  height: 2px !important;
  background: #B85A36 !important;
  margin: 20px 0 0 !important;
  border-radius: 999px !important;
}

.branded-legal-page h2 {
  color: #493522 !important;
  font-family: "Cormorant Garamond", serif !important;
  font-size: clamp(26px, 2.5vw, 34px) !important;
  font-weight: 500 !important;
  line-height: 1.08 !important;
  letter-spacing: -.025em !important;
  margin: 38px 0 10px !important;
}

.branded-legal-page p,
.branded-legal-page li {
  color: #3f3b37 !important;
  font-family: "Inter", sans-serif !important;
  font-size: 16px !important;
  font-weight: 400 !important;
  line-height: 1.75 !important;
}

.branded-legal-page p {
  margin: 0 0 16px !important;
}

.branded-legal-page a {
  color: #B85A36 !important;
  font-weight: 600 !important;
  text-decoration: none !important;
}

.branded-legal-page a:hover {
  text-decoration: underline !important;
}

.branded-legal-page ul,
.branded-legal-page ol {
  padding-left: 22px !important;
  margin: 12px 0 20px !important;
}

@media (max-width: 760px) {
  .branded-legal-page {
    padding-top: 118px !important;
  }
}





/* Keep service contact section clean, with no bottom fade */
body.service-page .service-dual-cta {
  background: #F1E8E0 !important;
  box-shadow: none !important;
  margin-bottom: 0 !important;
  padding-bottom: clamp(56px, 7vw, 82px) !important;
}

/* Fade upward from footer instead of from the contact section */
body.service-page .site-footer {
  position: relative !important;
  margin-top: 0 !important;
  background: #2A2F23 !important;
  border-top: 0 !important;
}

body.service-page .site-footer::before {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  top: -96px !important;
  height: 96px !important;
  pointer-events: none !important;
  background:
    linear-gradient(180deg,
      rgba(241,232,224,0.00) 0%,
      rgba(42,47,35,0.34) 58%,
      #2A2F23 100%) !important;
}











/* Prevent any bottom/sticky mobile nav styling from creating a dark seam on service pages */
body.service-page .site-header {
  border-bottom: 0 !important;
  box-shadow: none !important;
}








/* Footer navigation/text black on service pages */
body.service-page .site-footer a:not(.btn):not(.cta):not(.button),
body.service-page .site-footer p,
body.service-page .site-footer li,
body.service-page .site-footer span,
body.service-page .site-footer small,
body.service-page .site-footer h2,
body.service-page .site-footer h3,
body.service-page .site-footer h4,
body.service-page .site-footer strong {
  color: #111111 !important;
}

/* Preserve footer CTA button styling */
body.service-page .site-footer .btn,
body.service-page .site-footer .cta,
body.service-page .site-footer .button,
body.service-page .site-footer a.btn,
body.service-page .site-footer a.cta,
body.service-page .site-footer a.button {
  color: #FFF7EE !important;
}


/* Service pages only: matching muted olive header and footer */
body.service-page .site-header {
  background:
    linear-gradient(180deg,
      rgba(112,118,84,0.72) 0%,
      rgba(112,118,84,0.44) 58%,
      rgba(112,118,84,0.00) 100%) !important;
  box-shadow: none !important;
  border-bottom: 0 !important;
}

body.service-page .service-hero {
  position: relative !important;
  overflow: hidden !important;
}

body.service-page .service-hero::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 0 auto 0 !important;
  height: clamp(95px, 12vw, 160px) !important;
  pointer-events: none !important;
  z-index: 1 !important;
  background:
    linear-gradient(180deg,
      rgba(112,118,84,0.18) 0%,
      rgba(112,118,84,0.08) 48%,
      rgba(112,118,84,0.00) 100%) !important;
}

body.service-page .service-hero > * {
  position: relative !important;
  z-index: 2 !important;
}

body.service-page .service-dual-cta {
  background: #F1E8E0 !important;
  background-image: none !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
  margin-bottom: 0 !important;
  padding-bottom: clamp(44px, 5vw, 70px) !important;
}

body.service-page .service-dual-cta::before,
body.service-page .service-dual-cta::after {
  display: none !important;
  content: none !important;
}

body.service-page .site-footer {
  position: relative !important;
  margin-top: 0 !important;
  padding-top: clamp(120px, 14vw, 190px) !important;
  background:
    linear-gradient(180deg,
      #F1E8E0 0%,
      #E6E3D2 14%,
      #CBCDB2 36%,
      #9EA47B 58%,
      #707654 82%,
      #707654 100%) !important;
  border-top: 0 !important;
  box-shadow: none !important;
}

body.service-page .site-footer::before {
  display: none !important;
  content: none !important;
}

/* Footer text stays readable while matching the softer olive brand palette */
body.service-page .site-footer a:not(.btn):not(.cta):not(.button),
body.service-page .site-footer p,
body.service-page .site-footer li,
body.service-page .site-footer span,
body.service-page .site-footer small,
body.service-page .site-footer h2,
body.service-page .site-footer h3,
body.service-page .site-footer h4,
body.service-page .site-footer strong {
  color: #111111 !important;
}

body.service-page .site-footer .btn,
body.service-page .site-footer .cta,
body.service-page .site-footer .button,
body.service-page .site-footer a.btn,
body.service-page .site-footer a.cta,
body.service-page .site-footer a.button {
  color: #FFF7EE !important;
}
@media (max-width: 768px) {
  .hero {
    background-position: 85% center;
  }

  .hero-copy {
    background: rgba(241, 232, 224, 0.85);
    padding: 20px;
    border-radius: 12px;
  }
}
@media (max-width: 768px) {
  html,
  body {
    overflow-x: hidden;
    width: 100%;
  }

.nav-links {
  position: fixed !important;
  top: 76px !important;
  left: 12px !important;
  right: auto !important;
  width: 270px !important;
  max-width: calc(100vw - 24px) !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
}

  .nav-links .btn,
  .nav-links .cta,
  .nav-links a {
    max-width: 100% !important;
    box-sizing: border-box !important;
    white-space: normal !important;
  }
}
@media (max-width: 768px) {
  .site-nav {
    position: fixed !important;
    top: 76px !important;
    left: 12px !important;
    right: auto !important;
    width: 280px !important;
    max-width: calc(100vw - 24px) !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
    align-items: flex-start !important;
  }

  .site-nav a,
  .site-nav .cta,
  .site-nav .btn {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    text-align: left !important;
    white-space: normal !important;
  }
}