/* TFI Step 61 — authoritative sitewide hero system. */

/* Standard service, hub, and profile heroes. */
.section--hero-card{
  padding-top:24px !important;
  padding-bottom:18px !important;
}
.section--hero-card .hero-card-frame{
  padding:18px 20px !important;
  border-radius:22px !important;
  box-shadow:0 14px 34px rgba(16,47,85,.11) !important;
}
.section--hero-card .hero-card-frame > .hero-grid{
  grid-template-columns:minmax(0,1.45fr) minmax(280px,.75fr) !important;
  gap:24px !important;
  align-items:center !important;
}
.section--hero-card .hero-grid--copy-only{
  grid-template-columns:minmax(0,1fr) !important;
}
.section--hero-card .hero__copy{
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  min-width:0 !important;
  min-height:190px !important;
  padding:2px 0 !important;
}
.section--hero-card .hero__copy h1{
  max-width:780px !important;
  margin:0 0 8px !important;
  font-size:clamp(1.48rem,1.78vw,1.9rem) !important;
  line-height:1.08 !important;
  letter-spacing:-.025rem !important;
}
.section--hero-card .hero__copy .lead{
  max-width:760px !important;
  margin:0 !important;
  font-size:.98rem !important;
  line-height:1.48 !important;
}
.section--hero-card .hero-cta-row{
  margin-top:12px !important;
}
.section--hero-card .hero-cta-row .btn{
  min-height:38px !important;
  padding:9px 16px !important;
}
.section--hero-card .hero-advisor-row{
  width:100% !important;
  margin-top:auto !important;
  padding-top:10px !important;
  border-top:1px solid rgba(23,79,121,.13) !important;
}
.section--hero-card .hero-advisor-row .advisor-byline{
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
  display:grid !important;
  grid-template-columns:32px minmax(0,1fr) !important;
  gap:9px !important;
  align-items:center !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
}
.section--hero-card .hero-advisor-row .advisor-byline__photo{
  width:32px !important;
  height:32px !important;
}
.section--hero-card .hero-advisor-row .advisor-byline__principal{
  font-size:.79rem !important;
  line-height:1.28 !important;
}
.section--hero-card .hero-advisor-row .advisor-byline__role,
.section--hero-card .hero-advisor-row .advisor-byline__meta,
.section--hero-card .hero-advisor-row .advisor-byline__notice{
  margin-top:1px !important;
  font-size:.72rem !important;
  line-height:1.28 !important;
}
.section--hero-card .hero__media{
  position:relative !important;
  width:100% !important;
  max-width:none !important;
  min-height:0 !important;
  height:auto !important;
  max-height:none !important;
  aspect-ratio:16 / 9 !important;
  margin:0 !important;
  justify-self:stretch !important;
  align-self:center !important;
  overflow:hidden !important;
  border:0 !important;
  border-radius:16px !important;
  background:transparent !important;
}
.section--hero-card .hero__media img{
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  margin:0 !important;
  object-fit:cover !important;
  object-position:center !important;
  border-radius:inherit !important;
}
body:has(.bio-page) .section--hero-card .hero__media img,
body.page-bio .section--hero-card .hero__media img{
  object-fit:contain !important;
  object-position:center !important;
}

/* City guides. */
.city-hero{
  padding-top:24px !important;
  padding-bottom:18px !important;
}
.city-hero .city-hero-panel{
  border-radius:22px !important;
  box-shadow:0 14px 34px rgba(16,47,85,.11) !important;
}
.city-hero .city-hero-pad{
  padding:18px 20px !important;
}
.city-hero .city-hero-inner{
  grid-template-columns:minmax(0,1.45fr) minmax(280px,.75fr) !important;
  gap:24px !important;
  align-items:center !important;
}
.city-hero .city-hero-copy{
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  min-height:190px !important;
  padding:2px 0 !important;
}
.city-hero .hero-title{
  margin:0 0 8px !important;
  font-size:clamp(1.48rem,1.78vw,1.9rem) !important;
  line-height:1.08 !important;
  letter-spacing:-.025rem !important;
}
.city-hero .lede,
.city-hero .hero-intro{
  margin:0 0 6px !important;
  font-size:.96rem !important;
  line-height:1.46 !important;
}
.city-hero .cta-row{
  margin-top:8px !important;
}
.city-hero .city-hero-advisor-row{
  width:100% !important;
  margin-top:auto !important;
  padding-top:10px !important;
  border-top:1px solid rgba(23,79,121,.13) !important;
}
.city-hero .city-hero-advisor-row .advisor-byline{
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
  display:grid !important;
  grid-template-columns:32px minmax(0,1fr) !important;
  gap:9px !important;
  align-items:center !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
}
.city-hero .city-hero-advisor-row .advisor-byline__photo{
  width:32px !important;
  height:32px !important;
}
.city-hero .city-hero-advisor-row .advisor-byline__principal{
  font-size:.79rem !important;
  line-height:1.28 !important;
}
.city-hero .city-hero-advisor-row .advisor-byline__role,
.city-hero .city-hero-advisor-row .advisor-byline__meta{
  margin-top:1px !important;
  font-size:.72rem !important;
  line-height:1.28 !important;
}
.city-hero .city-hero-media{
  position:relative !important;
  width:100% !important;
  max-width:none !important;
  min-height:0 !important;
  height:auto !important;
  max-height:none !important;
  aspect-ratio:16 / 9 !important;
  margin:0 !important;
  justify-self:stretch !important;
  align-self:center !important;
  overflow:hidden !important;
  border:0 !important;
  border-radius:16px !important;
  background:transparent !important;
}
.city-hero .city-hero-img{
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center !important;
  border-radius:inherit !important;
}

body.has-toc .section--rail .visual-rail__content,
.section--content .visual-rail__content{
  --article-panel-pad:clamp(24px,2.2vw,34px);
}
.city-hero ~ .section .panel > .pad:has(> .hero-body-intro){
  --article-panel-pad:22px;
}
.hero-body-intro{
  box-sizing:border-box;
  margin:calc(-1 * var(--article-panel-pad,0px)) calc(-1 * var(--article-panel-pad,0px)) 24px !important;
  padding:20px var(--article-panel-pad,19px) 19px !important;
  border:0 !important;
  border-bottom:1px solid #d8e7f2 !important;
  border-radius:19px 19px 0 0 !important;
  background:linear-gradient(135deg,#f3f8fc 0%,#f8fbfd 100%) !important;
  color:#293d53 !important;
  font-size:1.02rem !important;
  line-height:1.62 !important;
}
body.has-toc .section--rail .visual-rail__content > .hero-body-intro:first-child,
.section--content .visual-rail__content > .hero-body-intro:first-child,
.city-hero ~ .section .panel > .pad > .hero-body-intro:first-child{
  margin-top:calc(-1 * var(--article-panel-pad,0px)) !important;
}
.hero-body-intro .intro-opening{
  color:#102f52;
  font-weight:750;
}
.hero-body-intro > p:first-child{
  margin-top:0;
}
.hero-body-intro > p:last-child{
  margin-bottom:0;
}

/* Homepage. */
.hero-card.hero-bleed{
  min-height:0 !important;
  height:auto !important;
}
.hero-card.hero-bleed .hero-frame{
  min-height:0 !important;
  padding:24px 0 22px !important;
}
.hero-card.hero-bleed .hero-inner{
  width:min(100%,780px) !important;
  max-width:780px !important;
  padding:20px 22px !important;
  background:rgba(255,255,255,.88) !important;
  border:1px solid rgba(255,255,255,.72) !important;
  border-radius:20px !important;
  box-shadow:0 16px 34px rgba(8,33,61,.18) !important;
  backdrop-filter:blur(8px) !important;
}
.hero-card.hero-bleed .hero-inner h1{
  max-width:740px !important;
  margin-bottom:14px !important;
  font-size:clamp(1.72rem,2.35vw,2.35rem) !important;
  line-height:1.06 !important;
}
.hero-card.hero-bleed .homepage-proof-strip{
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  width:100% !important;
  max-width:1100px !important;
  margin:16px auto 0 !important;
  gap:10px !important;
}
.hero-card.hero-bleed .homepage-proof-card{
  min-height:62px !important;
  padding:11px 13px !important;
}

@media (max-width:980px){
  body.has-toc .section--rail .visual-rail__content,
  .section--content .visual-rail__content{
    --article-panel-pad:24px;
  }
  .section--hero-card{
    padding-top:18px !important;
    padding-bottom:14px !important;
  }
  .section--hero-card .hero-card-frame,
  .city-hero .city-hero-pad{
    padding:16px !important;
  }
  .section--hero-card .hero-card-frame > .hero-grid,
  .city-hero .city-hero-inner{
    grid-template-columns:1fr !important;
    gap:14px !important;
  }
  .section--hero-card .hero__copy,
  .city-hero .city-hero-copy{
    min-height:0 !important;
  }
  .section--hero-card .hero__media,
  .city-hero .city-hero-media{
    position:relative !important;
    width:100% !important;
    max-width:460px !important;
    min-height:0 !important;
    height:auto !important;
    max-height:none !important;
    aspect-ratio:16 / 9 !important;
    margin:0 0 0 auto !important;
  }
  .hero-card.hero-bleed .hero-inner{
    padding:18px !important;
  }
  .hero-card.hero-bleed .homepage-proof-strip{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}

@media (max-width:700px){
  body.has-toc .section--rail .visual-rail__content,
  .section--content .visual-rail__content{
    --article-panel-pad:18px;
  }
  .city-hero ~ .section .panel > .pad:has(> .hero-body-intro){
    --article-panel-pad:16px;
  }
}

@media (max-width:600px){
  body.has-toc .section--rail .visual-rail__content,
  .section--content .visual-rail__content{
    --article-panel-pad:18px;
  }
  .city-hero ~ .section .panel > .pad:has(> .hero-body-intro){
    --article-panel-pad:16px;
  }
  .hero-body-intro{
    margin-bottom:20px !important;
    padding:16px var(--article-panel-pad,16px) 15px !important;
    border-radius:15px 15px 0 0 !important;
    font-size:.96rem !important;
  }
  .section--hero-card .hero-card-frame,
  .city-hero .city-hero-pad{
    padding:14px !important;
    border-radius:18px !important;
  }
  .section--hero-card .hero__copy h1,
  .city-hero .hero-title{
    font-size:clamp(1.34rem,6vw,1.58rem) !important;
  }
  .section--hero-card .hero-advisor-row .advisor-byline,
  .city-hero .city-hero-advisor-row .advisor-byline{
    grid-template-columns:30px minmax(0,1fr) !important;
  }
  .section--hero-card .hero-advisor-row .advisor-byline__photo,
  .city-hero .city-hero-advisor-row .advisor-byline__photo{
    width:30px !important;
    height:30px !important;
  }
  .hero-card.hero-bleed .hero-frame{
    padding:18px 0 !important;
  }
  .hero-card.hero-bleed .hero-inner{
    padding:16px !important;
    border-radius:17px !important;
  }
  .hero-card.hero-bleed .homepage-proof-strip{
    grid-template-columns:1fr !important;
  }
}

/* Step 68 — cinematic full-width hero system.
   Images with essential embedded writing remain in the contained treatment
   until dedicated text-free background assets are approved. */
.section--hero-background{
  position:relative !important;
  isolation:isolate !important;
  display:flex !important;
  align-items:stretch !important;
  min-height:clamp(390px,30vw,455px) !important;
  margin:0 !important;
  padding:0 !important;
  overflow:hidden !important;
  background:#0b2948 !important;
  color:#fff !important;
}
.section--hero-background .hero-background-media,
.city-hero--background .city-hero-background-media{
  position:absolute !important;
  inset:0 !important;
  z-index:-2 !important;
  overflow:hidden !important;
  background:#0b2948 !important;
}
.section--hero-background .hero-background-media img,
.city-hero--background .city-hero-background-media img{
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  max-width:none !important;
  object-fit:cover !important;
  object-position:var(--hero-position-desktop,center center) !important;
  border:0 !important;
  border-radius:0 !important;
}
.section--hero-background .hero-background-overlay,
.city-hero--background .city-hero-background-overlay{
  position:absolute !important;
  inset:0 !important;
  background:
    linear-gradient(90deg,rgba(5,27,52,.97) 0%,rgba(8,38,69,.91) 30%,rgba(10,46,80,.65) 54%,rgba(9,40,69,.24) 76%,rgba(5,25,45,.20) 100%),
    linear-gradient(180deg,rgba(3,20,38,.16) 0%,rgba(3,20,38,.08) 55%,rgba(3,20,38,.34) 100%) !important;
}
.section--hero-background > .section__inner{
  position:relative !important;
  z-index:1 !important;
  display:flex !important;
  align-items:center !important;
  width:100% !important;
  padding-top:clamp(38px,4vw,58px) !important;
  padding-bottom:clamp(36px,3.6vw,52px) !important;
}
.section--hero-background .hero-card-frame{
  width:100% !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}
.section--hero-background .hero-grid,
.section--hero-background .hero-card-frame > .hero-grid{
  display:block !important;
  width:100% !important;
}
.section--hero-background .hero__copy{
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  width:min(100%,720px) !important;
  max-width:62% !important;
  min-height:0 !important;
  padding:0 !important;
  color:#fff !important;
  text-shadow:0 2px 16px rgba(1,18,34,.24) !important;
}
.section--hero-background .hero-kicker,
.city-hero--background .hero-kicker{
  margin:0 0 9px !important;
  color:#8dc8ea !important;
  font-size:.77rem !important;
  font-weight:800 !important;
  letter-spacing:.12em !important;
  line-height:1.25 !important;
  text-transform:uppercase !important;
}
.section--hero-background .hero__copy h1{
  max-width:720px !important;
  margin:0 0 12px !important;
  color:#fff !important;
  font-size:clamp(2rem,2.75vw,3.05rem) !important;
  line-height:1.05 !important;
  letter-spacing:-.035em !important;
  text-wrap:balance;
}
.section--hero-background .hero__copy .lead{
  max-width:675px !important;
  margin:0 !important;
  color:rgba(255,255,255,.94) !important;
  font-size:clamp(.96rem,1.15vw,1.08rem) !important;
  line-height:1.52 !important;
  text-shadow:0 2px 13px rgba(1,18,34,.34) !important;
}
.section--hero-background .hero-cta-row{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:10px !important;
  margin-top:17px !important;
}
.section--hero-background .hero-cta-row .btn,
.city-hero--background .cta-row .btn{
  min-height:40px !important;
  padding:10px 17px !important;
  border-radius:999px !important;
  box-shadow:0 8px 20px rgba(1,20,38,.18) !important;
}
.section--hero-background .hero-cta-row .btn--primary,
.city-hero--background .cta-row .btn{
  border:1px solid #56a9d5 !important;
  background:#2678aa !important;
  color:#fff !important;
}
.section--hero-background .hero-cta-row .btn--secondary{
  border:1px solid rgba(255,255,255,.62) !important;
  background:rgba(255,255,255,.12) !important;
  color:#fff !important;
  backdrop-filter:blur(6px);
}
.section--hero-background .hero-cta-row .btn:hover,
.section--hero-background .hero-cta-row .btn:focus-visible,
.city-hero--background .cta-row .btn:hover,
.city-hero--background .cta-row .btn:focus-visible{
  transform:translateY(-1px);
  filter:brightness(1.08);
}
.section--hero-background .hero-advisor-row,
.city-hero--background .city-hero-advisor-row{
  width:100% !important;
  margin-top:18px !important;
  padding-top:12px !important;
  border-top:1px solid rgba(255,255,255,.28) !important;
}
.section--hero-background .hero-advisor-row .advisor-byline,
.city-hero--background .city-hero-advisor-row .advisor-byline{
  width:100% !important;
  max-width:700px !important;
  margin:0 !important;
  padding:0 !important;
  display:grid !important;
  grid-template-columns:34px minmax(0,1fr) !important;
  gap:10px !important;
  align-items:center !important;
  border:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  color:rgba(255,255,255,.93) !important;
  text-shadow:0 2px 10px rgba(1,18,34,.32) !important;
}
.section--hero-background .advisor-byline__photo,
.city-hero--background .advisor-byline__photo{
  width:34px !important;
  height:34px !important;
  border:1px solid rgba(255,255,255,.7) !important;
}
.section--hero-background .advisor-byline__title,
.section--hero-background .advisor-byline a,
.city-hero--background .advisor-byline__title,
.city-hero--background .advisor-byline a{
  color:#fff !important;
}
.section--hero-background .advisor-byline__principal,
.city-hero--background .advisor-byline__principal{
  color:#fff !important;
  font-size:.79rem !important;
  line-height:1.28 !important;
}
.section--hero-background .advisor-byline__role,
.section--hero-background .advisor-byline__meta,
.section--hero-background .advisor-byline__notice,
.city-hero--background .advisor-byline__role,
.city-hero--background .advisor-byline__meta{
  margin-top:1px !important;
  color:rgba(255,255,255,.86) !important;
  font-size:.71rem !important;
  line-height:1.27 !important;
}

/* City guides share the photographic hero language but keep their own data. */
.city-hero--background{
  position:relative !important;
  isolation:isolate !important;
  display:flex !important;
  align-items:stretch !important;
  min-height:clamp(390px,30vw,455px) !important;
  margin:0 !important;
  padding:0 !important;
  overflow:hidden !important;
  background:#0b2948 !important;
  color:#fff !important;
}
.city-hero--background .city-hero-background-container{
  position:relative !important;
  z-index:1 !important;
  display:flex !important;
  align-items:center !important;
  width:100% !important;
  padding-top:clamp(38px,4vw,58px) !important;
  padding-bottom:clamp(36px,3.6vw,52px) !important;
}
.city-hero--background .city-hero-inner{
  display:block !important;
  width:100% !important;
}
.city-hero--background .city-hero-copy{
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  width:min(100%,720px) !important;
  max-width:62% !important;
  min-height:0 !important;
  padding:0 !important;
  color:#fff !important;
  text-shadow:0 2px 16px rgba(1,18,34,.24) !important;
}
.city-hero--background .hero-title{
  max-width:720px !important;
  margin:0 0 12px !important;
  color:#fff !important;
  font-size:clamp(2rem,2.75vw,3.05rem) !important;
  line-height:1.05 !important;
  letter-spacing:-.035em !important;
  text-wrap:balance;
}
.city-hero--background .lede,
.city-hero--background .hero-intro{
  max-width:675px !important;
  margin:0 0 6px !important;
  color:rgba(255,255,255,.94) !important;
  font-size:clamp(.96rem,1.15vw,1.08rem) !important;
  line-height:1.5 !important;
}
.city-hero--background .cta-row{
  margin-top:12px !important;
}

/* The homepage already used a background image; remove the floating white box
   and bring it into the same overlay-led system. */
.hero-card.hero-bleed{
  position:relative !important;
  isolation:isolate !important;
  min-height:clamp(475px,39vw,590px) !important;
  overflow:hidden !important;
  background:#0b2948 !important;
}
.hero-card.hero-bleed .hero-media{
  position:absolute !important;
  inset:0 !important;
  z-index:-2 !important;
}
.hero-card.hero-bleed .hero-media .hero-slide{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center !important;
}
.hero-card.hero-bleed .hero-overlay{
  position:absolute !important;
  inset:0 !important;
  background:
    linear-gradient(90deg,rgba(5,27,52,.96) 0%,rgba(8,38,69,.90) 31%,rgba(10,46,80,.62) 55%,rgba(9,40,69,.20) 78%,rgba(5,25,45,.18) 100%),
    linear-gradient(180deg,rgba(3,20,38,.10) 0%,rgba(3,20,38,.04) 54%,rgba(3,20,38,.38) 100%) !important;
}
.hero-card.hero-bleed .hero-frame{
  position:relative !important;
  z-index:1 !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  min-height:inherit !important;
  padding:clamp(38px,4vw,56px) 0 30px !important;
}
.hero-card.hero-bleed .hero-content{
  display:block !important;
  width:100% !important;
}
.hero-card.hero-bleed .hero-inner{
  width:min(100%,820px) !important;
  max-width:68% !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  backdrop-filter:none !important;
  color:#fff !important;
  text-shadow:0 2px 16px rgba(1,18,34,.28) !important;
}
.hero-card.hero-bleed .hero-inner .eyebrow{
  color:#8dc8ea !important;
}
.hero-card.hero-bleed .hero-inner h1{
  max-width:820px !important;
  margin:0 0 17px !important;
  color:#fff !important;
  font-size:clamp(2.05rem,3.05vw,3.35rem) !important;
  line-height:1.04 !important;
  letter-spacing:-.04em !important;
  text-wrap:balance;
}
.hero-card.hero-bleed .hero-inner .btn-primary{
  border-color:#56a9d5 !important;
  background:#2678aa !important;
  color:#fff !important;
}
.hero-card.hero-bleed .hero-inner .btn-secondary{
  border:1px solid rgba(255,255,255,.62) !important;
  background:rgba(255,255,255,.12) !important;
  color:#fff !important;
  backdrop-filter:blur(6px);
}
.hero-card.hero-bleed .hero-inline-call,
.hero-card.hero-bleed .hero-inline-call a{
  color:#fff !important;
}
.hero-card.hero-bleed .homepage-proof-strip{
  position:relative !important;
  z-index:1 !important;
  width:100% !important;
  max-width:1120px !important;
  margin:26px 0 0 !important;
}
.hero-card.hero-bleed .homepage-proof-card{
  border:1px solid rgba(255,255,255,.58) !important;
  background:rgba(255,255,255,.89) !important;
  color:#102f55 !important;
  box-shadow:0 10px 24px rgba(1,20,38,.16) !important;
  backdrop-filter:blur(7px);
}

@media (max-width:980px){
  .section--hero-background .hero-background-media img{
    object-position:var(--hero-position-tablet,var(--hero-position-desktop,center center)) !important;
  }
  .section--hero-background,
  .city-hero--background{
    min-height:410px !important;
  }
  .section--hero-background .hero__copy,
  .city-hero--background .city-hero-copy{
    max-width:72% !important;
  }
  .hero-card.hero-bleed .hero-inner{
    max-width:78% !important;
  }
}

@media (max-width:700px){
  .section--hero-background .hero-background-media img{
    object-position:var(--hero-position-mobile,var(--hero-position-tablet,var(--hero-position-desktop,center center))) !important;
  }
  .section--hero-background,
  .city-hero--background{
    min-height:360px !important;
  }
  .section--hero-background .hero-background-overlay,
  .city-hero--background .city-hero-background-overlay,
  .hero-card.hero-bleed .hero-overlay{
    background:
      linear-gradient(90deg,rgba(5,27,52,.94) 0%,rgba(8,38,69,.86) 62%,rgba(7,33,60,.70) 100%),
      linear-gradient(180deg,rgba(3,20,38,.12) 0%,rgba(3,20,38,.34) 100%) !important;
  }
  .section--hero-background > .section__inner,
  .city-hero--background .city-hero-background-container{
    padding-top:30px !important;
    padding-bottom:30px !important;
  }
  .section--hero-background .hero__copy,
  .city-hero--background .city-hero-copy,
  .hero-card.hero-bleed .hero-inner{
    width:100% !important;
    max-width:100% !important;
  }
  .section--hero-background .hero__copy h1,
  .city-hero--background .hero-title{
    font-size:clamp(1.75rem,7.6vw,2.28rem) !important;
  }
  .hero-card.hero-bleed{
    min-height:0 !important;
  }
  .hero-card.hero-bleed .hero-frame{
    padding:31px 0 24px !important;
  }
  .hero-card.hero-bleed .hero-inner h1{
    font-size:clamp(1.86rem,8vw,2.42rem) !important;
  }
  .hero-card.hero-bleed .homepage-proof-strip{
    margin-top:22px !important;
  }
}

@media (max-width:520px){
  .section--hero-background .hero-kicker,
  .city-hero--background .hero-kicker{
    font-size:.7rem !important;
  }
  .section--hero-background .hero-cta-row,
  .city-hero--background .cta-row{
    gap:8px !important;
  }
  .section--hero-background .hero-cta-row .btn,
  .city-hero--background .cta-row .btn{
    width:100% !important;
    justify-content:center !important;
  }
  .section--hero-background .advisor-byline__meta,
  .city-hero--background .advisor-byline__meta{
    display:none !important;
  }
}
