/* =========================================================================
   PrivatePractice.MD — static rebuild of the Wix site for Cloudflare Pages
   Desktop layout mirrors the original 980px Wix grid; phones get the
   320px mobile layout (see the viewport script in each page's <head>).
   ========================================================================= */

/* ---------- Fonts (Inter, SIL OFL 1.1 — see /assets/fonts/OFL.txt) ---------- */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url(/assets/fonts/inter-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url(/assets/fonts/inter-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

/* ---------- Tokens ---------- */
:root {
  --navy: #0f3e81;
  --sky: #5db4ea;
  --text: #9e9e9e;
  --soft: #dddddd;
  --copy: #6b6b6b;
  --grad: linear-gradient(90deg, #5db4ea, #0f3e81);
  --card-shadow: 0 1px 4px rgba(0, 0, 0, .22);
  --box-shadow: 0 1px 4px rgba(0, 0, 0, .27);
  --input-shadow: 0 1px 4px rgba(0, 0, 0, .33);
  --font: 'Inter', sans-serif;
  --font-alt-bold: 'Helvetica Neue', Helvetica, Arial, sans-serif;
}

/* ---------- Base ---------- */
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; scroll-behavior: smooth; }
body {
  margin: 0;
  min-width: 980px;
  background: #fff;
  color: var(--text);
  font-family: var(--font);
  font-size: 16px;
  line-height: 1.4;
}
img { display: block; }
a { color: inherit; text-decoration: none; }
p, h1, h2, h3, ul { margin: 0; padding: 0; }
h1, h2, h3 { font-size: inherit; font-weight: inherit; }
button, input { font: inherit; }
.sr-only {
  position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px;
  overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0;
}
.skip-link {
  position: absolute; left: 12px; top: -60px; z-index: 100;
  background: var(--navy); color: #fff; padding: 10px 16px; border-radius: 12px;
}
.skip-link:focus { top: 12px; }
:focus-visible { outline: 2px solid var(--sky); outline-offset: 2px; }

.container { position: relative; width: 980px; margin: 0 auto; }
.section { position: relative; }
.center { text-align: center; }
.mx-auto { margin-left: auto; margin-right: auto; }

/* ---------- Text ---------- */
.copy { font-size: 16px; line-height: 1.4; color: var(--text); }
.copy--16 { line-height: 1.6; }
.copy--sm { font-size: 14px; line-height: 1.4; }
.copy--soft { color: var(--soft); }
.copy--white { color: #fff; }
.strong-navy { color: var(--navy); font-weight: 700; }

/* Gradient headings (were custom HTML embeds on Wix: font-size was 6vw of the
   embed frame, so here it is 6% of the wrapper width via container units). */
.gh-wrap { container-type: inline-size; }
.gh {
  display: block;
  font-family: var(--font);
  font-weight: 800;
  line-height: 1.15;
  letter-spacing: -1px;
  font-size: 40px; /* fallback for browsers without container units */
  font-size: clamp(28px, 6cqw, 64px);
  background: var(--grad);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  -webkit-text-fill-color: transparent;
}
.gh--48 { font-size: clamp(28px, 6cqw, 48px); }
.gh--36 { font-size: clamp(28px, 6cqw, 36px); }
.gh--center { text-align: center; }
.gh--pad { padding: 0 16px; }
@container (max-width: 480px) {
  .gh { font-size: 24px; line-height: 1.25; }
}

/* ---------- Buttons ---------- */
.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 45px;
  padding: 0 10px;
  border: 0;
  border-radius: 12px;
  font-family: var(--font);
  font-size: 16px;
  font-weight: 400;
  line-height: normal;
  color: #fff;
  cursor: pointer;
  white-space: nowrap;
  transition: all .2s ease;
}
.btn--navy { background: var(--navy); }
.btn--sky { background: var(--sky); }
.btn:hover { background: #fff; color: #000; }
.btn-row { display: flex; justify-content: center; gap: 12px; }

/* ---------- Header ---------- */
.site-header {
  position: sticky;
  top: 0;
  z-index: 50;
  height: 84px;
  padding-top: 12px;
}
.header-pill {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  width: 980px;
  height: 64px;
  margin: 0 auto;
  padding: 0 22px 0 20px;
  background: #fff;
  border-radius: 84px;
  box-shadow: 0 0 4px rgba(0, 0, 0, .6);
}
.brand { display: block; margin-top: 5px; }
.brand img { width: 172px; height: 48px; object-fit: cover; }
.main-nav { display: flex; gap: 8px; margin-top: 11px; }
.main-nav a {
  display: block;
  height: 37px;
  padding: 0 31.5px;
  font-size: 14px;
  line-height: 37px;
  letter-spacing: .7px;
  color: var(--text);
  transition: color .08s linear;
}
.main-nav a:hover, .main-nav a[aria-current="page"] { color: var(--navy); }

/* Mobile hamburger (hidden on desktop) */
.menu-toggle {
  display: none;
  position: relative;
  z-index: 2;
  width: 39px;
  height: 37px;
  margin: 9px 0 0;
  padding: 0;
  border: 0;
  background: #fff;
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
  align-items: center;
  justify-content: center;
}
.burger {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  width: 26px;
  height: 21px;
  transition: transform .33s ease-out;
}
.burger span { display: block; width: 100%; height: 3px; border-radius: 1.5px; background: #000; }
.burger span:first-child,
.burger span:last-child { width: 50%; transition: transform .33s cubic-bezier(.54, -.81, .57, .57); }
.burger span:first-child { transform-origin: 100% center; }
.burger span:last-child { transform-origin: 0 center; align-self: flex-end; }
.menu-open .burger { transform: rotate(-45deg); }
.menu-open .burger span:first-child { transform: rotate(-90deg) translateX(4px); }
.menu-open .burger span:last-child { transform: rotate(-90deg) translateX(-4px); }

.mobile-menu {
  position: fixed;
  inset: 0;
  z-index: 40;
  background: #fff;
  opacity: 0;
  visibility: hidden;
  transition: opacity .45s cubic-bezier(.645, .045, .355, 1), visibility 0s linear .45s;
}
.menu-open .mobile-menu { opacity: 1; visibility: visible; transition: opacity .45s cubic-bezier(.645, .045, .355, 1), visibility 0s; }
.mobile-menu nav { width: 188px; margin: 58px auto 0; }
.mobile-menu a {
  display: block;
  height: 56px;
  font-size: 16px;
  line-height: 56px;
  text-align: center;
  color: #000;
  transition: color .4s ease;
}
.mobile-menu a:hover, .mobile-menu a[aria-current="page"] { color: var(--navy); }
/* The pill fades out under the menu overlay, at the overlay's pace. */
.header-pill, .brand { transition: background-color .45s cubic-bezier(.645, .045, .355, 1), box-shadow .45s cubic-bezier(.645, .045, .355, 1), opacity .45s cubic-bezier(.645, .045, .355, 1); }
.menu-open .header-pill { background-color: transparent; box-shadow: 0 0 4px rgba(0, 0, 0, 0); }
.menu-open .brand { opacity: 0; pointer-events: none; }
.menu-open { overflow: hidden; }

/* Back-to-top (phones only, like the Wix mobile site) */
.back-to-top {
  display: none;
  position: fixed;
  right: 20px;
  bottom: 40px;
  z-index: 30;
  width: 44px;
  height: 44px;
  padding: 0;
  border: 0;
  background: none;
  cursor: pointer;
  opacity: 0;
  visibility: hidden;
  transition: visibility 0s .5s, opacity .5s;
}
.back-to-top.is-visible { opacity: 1; visibility: visible; transition: visibility 0s, opacity .5s; }
.back-to-top svg { width: 100%; height: 100%; }

/* ---------- Hero ---------- */
.hero { position: relative; isolation: isolate; margin-top: -82px; overflow: hidden; }
.hero__bg {
  position: absolute;
  inset: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.hero .gh-wrap { width: 980px; margin: 0 auto; }
.hero__sub { width: 660px; margin: 0 auto; text-align: center; }
.hero--home { height: 813px; padding-top: 298px; }
.hero--home .hero__sub { margin-top: 27px; }
.hero--home .btn-row { margin-top: 46px; }
.hero--page { height: 535px; padding-top: 195px; }
.hero--page .hero__sub { margin-top: 26px; }
.hero--shift { left: 9px; }
.hero--contact { height: 319px; padding-top: 113px; }
.hero--contact .gh-wrap { position: relative; left: -5px; }
.hero--contact .hero__sub { margin-top: 13px; }
.hero--guide { height: 535px; padding-top: 193px; }
.hero--guide .hero__sub { margin-top: 21px; }
.hero--guide .btn-row { margin-top: 30px; }

/* ---------- Shared pieces ---------- */
.img-cover { width: 100%; height: 100%; object-fit: cover; }

.info-box {
  display: flex;
  align-items: center;
  justify-content: center;
  background: #fff;
  border-radius: 20px;
  box-shadow: var(--box-shadow);
  font-size: 16px;
  line-height: 1.6;
  text-align: center;
  color: var(--text);
}

/* Topics we teach (Home + Services) */
.topics { position: relative; isolation: isolate; height: 954px; padding-top: 53px; overflow: hidden; }
.topics__bg { position: absolute; inset: 0; z-index: -1; width: 100%; height: 100%; object-fit: cover; }
.band-title {
  width: 600px;
  margin: 0 auto;
  font-size: 46px;
  font-weight: 700;
  line-height: 1.4;
  text-align: center;
  color: #fff;
}
.band-sub { position: relative; left: 14.5px; width: 789px; margin: 7px auto 0; text-align: center; color: var(--soft); }
.topics__grid {
  display: grid;
  grid-template-columns: repeat(4, 235px);
  grid-auto-rows: 240px;
  column-gap: 13.33px;
  row-gap: .5px;
  justify-content: center;
  margin-top: 63px;
  list-style: none;
}
.topics--services .topics__grid { margin-top: 64px; }
.topic { padding: 7px 3.5px 0; }
.topic img { width: 228px; height: 152px; object-fit: cover; }
.topic p {
  width: 228px;
  margin-top: 18px;
  font-size: 14px;
  line-height: 1.4;
  text-align: center;
  color: #fff;
}
.topic:last-child { grid-column: 1 / -1; justify-self: center; }

/* Free MIPS guide promo (Home, About, Services) */
.mips { position: relative; text-align: center; }
.mips__mark { position: absolute; left: 50%; width: 382px; height: 445px; margin-left: -191px; object-fit: cover; }
.mips .gh-wrap { position: relative; width: 675px; margin: 0 auto; left: 11.5px; }
.mips__text { position: relative; width: 980px; margin: 0 auto; left: 1px; }
.mips .btn { position: relative; width: 242px; }
.mips--a { height: 502px; padding-top: 160px; }
.mips--a .mips__mark { top: 27px; }
.mips--a .mips__text { margin-top: 11px; }
.mips--a .btn { margin-top: 31px; }
.mips--about { height: 500px; }
.mips--services { height: 445px; padding-top: 142px; }
.mips--services .mips__mark { top: 4px; }
.mips--services .mips__text { margin-top: 6px; }
.mips--services .btn { margin-top: 49px; }

/* "Start building a smarter private practice" call-to-action */
.cta {
  position: relative;
  isolation: isolate;
  width: 829px;
  height: 299px;
  margin: 0 auto;
  padding-top: 43px;
  text-align: center;
}
.cta__bg { position: absolute; inset: 0; z-index: -1; width: 100%; height: 100%; object-fit: cover; }
.cta__title { width: 600px; margin: 0 auto; font-size: 36px; font-weight: 700; line-height: 1.4; color: #fff; }
.cta__text { width: 687px; margin: 9px auto 0; font-size: 16px; line-height: 1.3; letter-spacing: .16px; color: var(--soft); }
.cta .btn { width: 158px; margin-top: 18px; }

/* ---------- Footer ---------- */
.site-footer { position: relative; }
.footer-inner { display: flex; justify-content: space-between; width: 980px; height: 282px; margin: 0 auto; }
.footer-logo img { width: 369px; height: 95px; object-fit: cover; }
.footer-tagline { width: 402px; margin-top: 22px; }
.footer-copy { margin-top: 29px; font-size: 15px; line-height: 1.4; color: var(--copy); }
.footer-right { display: flex; flex-direction: column; align-items: flex-end; padding-top: 123px; }
.footer-nav-title { width: 165px; height: 32px; }
.footer-nav { display: flex; margin-top: 34px; padding-right: 11px; }
.footer-nav a:nth-child(2) { margin-left: 19px; }
.footer-nav a:nth-child(3) { margin-left: 23px; }
.footer-nav a:nth-child(4) { margin-left: 18px; }
.footer-nav a:nth-child(5) { margin-left: 20px; }
.footer-nav a { color: var(--text); }
.footer-nav a.is-underlined { text-decoration: underline; }
.footer-copy--mobile { display: none; }

/* =========================================================================
   Page sections — desktop
   ========================================================================= */

/* Home: intro */
.home-intro { height: 603px; padding-top: 108px; }
.home-intro .container { display: grid; grid-template-columns: 683px 297px; }
.home-intro .gh-wrap { width: 698px; }
.home-intro__p1 { width: 647px; margin-top: 30px; }
.home-intro__p2 { width: 615px; margin-top: 23px; }
.home-intro__p3 { width: 615px; margin-top: 32px; }
.home-intro__img { width: 297px; height: 387px; }

/* Home: who it's for */
.home-who { height: 449px; }
.home-who .container {
  display: grid;
  grid-template-columns: 267px 1fr;
  grid-template-areas: "shield head" "shield cards";
  grid-template-rows: auto 1fr;
}
.home-who__shield { grid-area: shield; width: 267px; height: 313px; margin-top: 34px; object-fit: cover; }
.home-who .gh-wrap { grid-area: head; width: 624px; margin: 23px 0 0 52px; }
.cards { grid-area: cards; display: flex; gap: 14px; margin: 36px 0 0 40px; list-style: none; }
.card {
  width: 215px;
  height: 279px;
  padding: 27px 10px 0 14px;
  background: #fff;
  border-radius: 24px;
  box-shadow: var(--card-shadow);
}
.card svg { display: block; width: 40px; height: 40px; margin-left: -1px; }
.card h3 {
  max-width: 176px;
  margin-top: 14px;
  font-family: var(--font-alt-bold);
  font-size: 16px;
  font-weight: 700;
  line-height: 1.4;
  color: var(--navy);
}
.card p { width: 187px; margin-top: 12px; font-size: 14px; line-height: 1.4; }

/* Home: take back control */
.home-control { height: 545px; padding-top: 61px; }
.home-control .gh-wrap { width: 979px; }
.home-control__row { display: grid; grid-template-columns: 389px 566px; column-gap: 24px; margin-top: 34px; }
.home-control__img { width: 389px; height: 259px; }
.home-control__disagree { margin-top: 18px; font-size: 18px; font-weight: 700; line-height: 1.4; }
.home-control__p2 { margin-top: 11px; }
.home-control__goals { margin-top: 31px; }
.home-control__goals p + p { margin-top: 11.6px; }

/* Home: founders teaser */
.home-founders { height: 539px; padding-top: 87px; }
.home-founders .container { display: grid; grid-template-columns: 687px 293px; }
.home-founders .gh-wrap { width: 675px; }
.home-founders__p1 { width: 647px; margin-top: 33px; }
.home-founders__p2 { width: 615px; margin-top: 24px; }
.home-founders .btn { width: 242px; margin-top: 33px; }
.home-founders__img { width: 293px; height: 364px; }

.cta-gap--home { margin-bottom: 96px; }
.cta-gap--about { margin-bottom: 56px; }
.cta-gap--services { margin-bottom: 58px; }
.cta-gap--guide { margin-bottom: 54px; }

/* About: about us */
.about-us { height: 557px; padding-top: 88px; }
.about-us .container { display: grid; grid-template-columns: 690px 289px; }
.about-us .gh-wrap { width: 698px; }
.about-us__p1 { width: 647px; margin-top: 21px; }
.about-us__p2 { width: 615px; margin-top: 19px; }
.about-us__p3 { width: 615px; margin-top: 23px; }
.about-us__p4 { width: 615px; margin-top: 23px; }
.about-us__img { width: 289px; height: 339px; margin-top: 21px; object-fit: cover; }

/* About: mission */
.about-mission { height: 434px; padding-top: 77px; }
.about-mission .container { display: grid; grid-template-columns: 273px 1fr; column-gap: 33px; }
.about-mission__img { width: 273px; height: 280px; object-fit: cover; }
.about-mission .gh-wrap { width: 698px; margin-top: 56px; }
.about-mission__p1 { width: 670px; margin-top: 12px; }
.about-mission__p2 { width: 615px; margin-top: 16px; }

/* About: meet the founders */
.founders { position: relative; isolation: isolate; height: 1063px; padding-top: 53px; overflow: hidden; }
.founder { display: grid; align-items: start; }
.founder--a { grid-template-columns: 233px 411px; column-gap: 38px; margin-top: 52px; }
.founder--b { grid-template-columns: 411px 279px; column-gap: 19px; justify-content: end; margin-top: 78px; text-align: right; }
.founder--a .founder__photo { width: 233px; height: 349px; object-fit: cover; }
.founder--b .founder__photo { width: 279px; height: 349px; object-fit: cover; }
.founder__body { padding-top: 79px; }
.founder--b .founder__body { padding-top: 78px; }
.founder__name { font-size: 24px; font-weight: 700; line-height: 1.4; color: #fff; }
.founder--b .founder__name { margin: 0 7px 0 -14px; }
.founder__bio { margin-top: 15px; color: var(--soft); }
.founder--b .founder__bio { margin-top: 17px; }

/* Services: upcoming plans */
.upcoming { height: 664px; padding-top: 66px; }
.upcoming__p1 { margin-top: 14px; }
.upcoming__p2 { margin-top: 22px; }
.upcoming__box {
  height: 265px;
  margin-top: 19px;
  padding: 30px 18px;
  background: #fff;
  border-radius: 20px;
  box-shadow: var(--box-shadow);
  list-style: none;
  font-size: 16px;
  line-height: 1.6;
}
.upcoming__box li::before { content: "\25CF\00a0"; }
.upcoming__p3 { width: 735px; margin-top: 24px; }
.upcoming__p4 { margin-top: 16px; }

/* Contact */
.contact-form { padding-top: 25px; }
.contact-form .gh-wrap { width: 805px; margin-left: 82px; }
.contact-form .form { width: 799px; margin: 40px 0 0 85px; }
.contact-form .form__note { margin-top: 20px; }
.contact-form + .cta { margin-top: 79px; }
.contact-topics { padding-top: 53px; }
.contact-topics .inner { width: 799px; margin-left: 79px; }
.contact-topics__lead { width: 821px; line-height: 1.6; }
.contact-topics__ask { margin-top: 18px; line-height: 1.6; }
.contact-topics__grid {
  display: grid;
  grid-template-columns: 385px 385px;
  column-gap: 29px;
  row-gap: 15px;
  margin-top: 24px;
  list-style: none;
}
.contact-topics__grid .info-box { height: 84px; }
.contact-topics__grid .info-box:last-child { grid-column: 1 / -1; }
.contact-topics__grid .info-box:first-child { padding-right: 26px; }
.contact-topics__email { display: inline-block; margin-top: 30px; line-height: 1.6; }
.contact-topics { padding-bottom: 229px; }

/* Forms */
.form__field {
  display: block;
  width: 100%;
  height: 50px;
  padding: 3px 3px 3px 18px;
  border: 0;
  border-radius: 12px;
  background: transparent;
  box-shadow: var(--input-shadow);
  font-family: var(--font);
  font-size: 14px;
  color: #000;
  outline: none;
  -webkit-appearance: none;
  appearance: none;
}
.form__field::placeholder { color: var(--text); opacity: 1; }
.form .form__field[type="email"] { margin-top: 15px; }
.form__field[aria-invalid="true"] { box-shadow: 0 0 0 1px #df3131, var(--input-shadow); }
.form__submit {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 40px;
  margin-top: 26px;
  border: 0;
  border-radius: 12px;
  background: var(--navy);
  font-family: var(--font);
  font-size: 14px;
  line-height: 1.4;
  color: #fff;
  cursor: pointer;
  transition: border-color .4s, background-color .4s, color .4s;
}
.form__submit:hover { background: #fff; color: var(--navy); }
.form__submit[disabled] { cursor: progress; opacity: .8; }
.form__status {
  min-height: 17px;
  margin-top: 19px;
  font-size: 14px;
  line-height: 17px;
  text-align: center;
  color: #000;
  opacity: 0;
  transition: opacity .3s ease;
}
.form__status.is-shown { opacity: 1; }
.form__status.is-error { color: #df3131; }
.form__note { font-size: 14px; line-height: 1.6; text-align: center; }
.form__hp { position: absolute; left: -10000px; width: 1px; height: 1px; overflow: hidden; }
/* Cloudflare Turnstile: invisible for almost everyone; shows a checkbox only when it needs one. */
.form__captcha { display: flex; justify-content: center; }
.form__captcha.is-interactive { margin-top: 15px; }

/* Free MIPS Guide (lead-magnet) */
.guide-why { height: 388px; padding-top: 71px; }
.guide-why__p { width: 974px; }
.guide-why__p:first-of-type { margin-top: 26px; }
.guide-why__p + .guide-why__p { margin-top: 21px; }
.guide-inside { height: 395px; padding-top: 76px; }
.guide-inside__grid {
  display: grid;
  grid-template-columns: 476px 476px;
  column-gap: 27px;
  row-gap: 17px;
  margin-top: 43px;
  list-style: none;
}
.guide-inside__grid .info-box { height: 72px; }
.guide-inside__grid .info-box:first-child { padding-left: 14px; }
.guide-inside__grid .info-box:last-child { padding-left: 7px; }
.guide-get { height: 585px; padding-top: 61px; }
.guide-get .gh-wrap { width: 805px; margin-left: 79px; }
.guide-get__lead { width: 799px; margin: 19px 0 0 91px; text-align: center; }
.guide-get .form { width: 799px; margin: 40px 0 0 91px; }
.guide-get .form__submit { margin-top: 31px; }
.guide-get .form__note { width: 791px; margin: 9px 0 0 7px; }
.guide-get .form__status { margin-top: 8px; }
.guide-begin { padding-top: 57px; }
.guide-begin__p { margin-top: 16px; }
.guide-begin + .cta { margin-top: 134px; }

/* 404 */
.notfound { height: 535px; padding-top: 195px; }

/* =========================================================================
   Phones — the original serves a separate 320px-wide mobile layout
   ========================================================================= */
@media (max-width: 767px) {
  body { min-width: 0; }
  .container { width: auto; margin: 0 10px; }

  /* header */
  .site-header { height: 80px; }
  .header-pill {
    width: auto;
    height: 55px;
    margin: 0 10px;
    padding: 0 10px;
  }
  .brand { margin-top: 9px; }
  .brand img { width: 141px; height: 37px; }
  .main-nav { display: none; }
  .menu-toggle { display: flex; }
  .back-to-top { display: block; }

  /* hero */
  .hero { margin-top: -80px; }
  /* The original headings were fixed-height embed frames; keep those boxes so the
     copy underneath lands in the same place however the heading wraps. */
  .gh-wrap { overflow: hidden; }
  .hero .gh-wrap { width: auto; height: 78px; margin: 0 10px; }
  .hero__sub { width: auto; margin-left: 20px; margin-right: 20px; font-size: 14px; }
  .hero--home { height: 560px; padding-top: 195px; }
  .hero--home .hero__bg { top: -40px; height: calc(100% + 40px); }
  .hero--home .hero__sub { margin-top: 2px; }
  .hero--home .btn-row { flex-direction: column; align-items: center; gap: 13px; margin-top: 36px; padding-left: 10px; }
  .hero--home .btn-row .btn { height: 42px; font-size: 14px; font-weight: 700; }
  .hero--home .btn-row .btn:first-child { width: 240px; }
  .hero--home .btn-row .btn:last-child { width: 160px; }
  .hero--page { height: 500px; padding-top: 195px; }
  .hero--page .hero__sub { margin-top: -9px; }
  .hero--shift { left: 0; }
  .hero--services { height: 495px; }
  .hero--services .gh-wrap { height: 117px; }
  .hero--services .hero__sub { margin-top: -13px; margin-left: 25px; margin-right: 15px; }
  .hero--contact { height: 453px; padding-top: 200px; }
  .hero--contact .hero__bg { top: -7px; height: calc(100% + 7px); }
  .hero--contact .gh-wrap { left: 0; height: 42px; }
  .hero--contact .hero__sub { margin-top: 0; }
  .hero--guide { height: 495px; padding-top: 186px; }
  .hero--guide .hero__sub { margin-top: -8px; }
  .hero--guide .btn-row { margin-top: 20px; }
  .hero--guide .btn { width: 197px; height: 42px; font-size: 14px; font-weight: 700; }

  .copy { font-size: 14px; }
  .band-title { width: auto; margin: 0 20px; font-size: 25px; }
  .band-sub { left: 0; width: auto; margin: 11px 20px 0; font-size: 14px; }

  /* topics */
  .topics--home { height: 2389px; padding-top: 51px; }
  .topics__grid { display: block; margin: 32px 0 0; }
  .topic { width: 292px; margin: 0 0 0 14px; padding: 24px 0 24.5px; }
  .topic img { width: 220px; height: 148px; margin-left: 34px; }
  .topic p { width: 220px; margin: 16px 0 0 34px; }
  .topic:last-child { justify-self: auto; margin-top: 6.3px; padding-top: 0; }
  .topic:last-child img { width: 221px; height: 146px; margin-left: 36px; }
  .topics--services { height: 2359px; padding-top: 49px; }
  .topics--services .band-title { font-size: 24px; }
  .topics--services .band-sub { margin-top: 6px; }
  .topics--services .topics__grid { margin-top: 25px; }
  .topics--services .topic { width: 277px; margin-left: 23px; padding: 8px 0 27.4px; }
  .topics--services .topic img { width: 226px; height: 152px; margin-left: 20px; }
  .topics--services .topic p { width: 235px; margin: 21px 0 0 16px; }
  .topics--services .topic:last-child { margin: 24px 0 0 30px; padding-top: 11px; }
  .topics--services .topic:last-child img { width: 235px; height: 157px; margin-left: 14px; }
  .topics--services .topic:last-child p { margin: 23px 0 0 14px; }

  /* mips promo */
  .mips .gh-wrap { width: auto; height: 67px; left: 0; margin: 0 6px; }
  .mips__text { width: auto; left: 0; margin-left: 20px; margin-right: 20px; }
  .mips .btn { height: 42px; font-size: 14px; }
  .mips__mark { width: 295px; height: 346px; margin-left: -147.5px; }
  .mips--a { height: 452px; padding-top: 95px; }
  .mips--a .mips__mark { top: 33px; }
  .mips--a .mips__text { margin-top: -3px; }
  .mips--a .btn { width: 220px; margin-top: 21px; }
  .mips--about { height: 455px; padding-top: 120px; }
  .mips--about .gh-wrap { margin: 0 20px; }
  .mips--about .mips__mark { top: 40px; width: 325px; height: 383px; margin-left: -165px; }
  .mips--about .mips__text { margin-top: -7px; }
  .mips--about .btn { width: 215px; margin-top: 26px; font-weight: 700; }
  .mips--services { height: 499px; padding-top: 112px; }
  .mips--services .gh-wrap { height: 42px; margin: 0 22px 0 18px; }
  .mips--services .mips__mark { top: 38px; width: 307px; height: 360px; margin-left: -155px; }
  .mips--services .mips__text { margin-top: 0; margin-left: 21px; margin-right: 19px; }
  .mips--services .btn { width: 200px; margin-top: 24px; }

  /* cta */
  .cta { width: 295px; height: 383px; padding-top: 90px; }
  .cta__title { width: auto; margin: 0 8px 0 7px; font-size: 23px; }
  .cta__text { width: auto; margin: 12px 7px 0 8px; font-size: 14px; letter-spacing: .14px; }
  .cta .btn { width: 160px; height: 42px; margin-top: 29px; font-size: 14px; }
  .cta-gap--home { margin-bottom: 49px; }
  .cta-gap--about { margin-bottom: 33px; }
  .cta-gap--services { margin-bottom: 48px; }
  .cta-gap--guide { margin-bottom: 118px; }

  /* footer */
  .footer-inner { display: block; width: auto; height: auto; margin: 0 10px; padding-bottom: 42px; }
  .footer-logo img { width: 260px; height: 67px; }
  .footer-tagline { width: 300px; margin-top: 22px; font-size: 14px; }
  .footer-right { display: block; padding-top: 0; }
  .footer-nav-title { width: 120px; height: 23px; margin: 41px 0 0 -2px; }
  .footer-nav { flex-direction: column; align-items: flex-start; gap: 0; margin-top: 24px; padding: 0; font-size: 14px; line-height: 1.4; }
  .footer-nav a { padding: 7px 0; margin-left: 0 !important; }
  .footer-nav a:first-child { padding-top: 0; }
  .footer-copy { width: 303px; margin: 37px 0 0 -3px; text-align: center; font-size: 14px; }
  .footer-copy--desktop { display: none; }
  .footer-copy--mobile { display: block; }

  /* home */
  .home-intro { height: auto; padding: 54px 0 26px; }
  .home-intro .container { display: block; }
  .home-intro .gh-wrap { width: auto; height: 119px; }
  .home-intro__p1, .home-intro__p2, .home-intro__p3 { width: 280px; }
  .home-intro__p1 { margin-top: 7px; }
  .home-intro__p2 { margin-top: 15px; }
  .home-intro__p3 { margin-top: 18px; }
  .home-intro__img { width: 297px; height: 447px; margin: 33px 0 0 1px; }

  .home-who { height: auto; padding: 48px 0 41px; }
  .home-who .container { display: flex; flex-direction: column; margin: 0 12px 0 11px; }
  .home-who .gh-wrap { width: auto; height: 80px; margin: 0; }
  .cards { display: block; margin: 11px 0 0; }
  .card { width: auto; height: auto; padding: 39px 12px 28px; }
  .card + .card { margin-top: 6px; }
  .card svg { margin-left: 0; }
  .card h3 { max-width: 246px; margin-top: 21px; }
  .card p { width: 254px; }
  .home-who__shield { order: 3; width: 302px; height: 356px; margin: 17px 0 0 -2px; }

  .home-control { height: auto; padding: 20px 0 37px; }
  .home-control .container { margin: 0 9px; }
  .home-control .gh-wrap { width: auto; height: 133px; }
  .home-control__row { display: flex; flex-direction: column; margin-top: 9px; }
  .home-control__img { order: 2; width: 290px; height: 192px; margin: 42px 0 0 5px; }
  .home-control__disagree { margin-top: 28px; font-size: 16px; }
  .home-control__p2 { margin-top: 17px; }
  .home-control__goals { margin-top: 35px; font-size: 14px; }
  .home-control__goals p + p { margin-top: 16.8px; }

  .home-founders { height: auto; padding: 44px 0 39px; }
  .home-founders .container { display: block; }
  .home-founders .gh-wrap { width: auto; height: 103px; }
  .home-founders__p1, .home-founders__p2 { width: auto; }
  .home-founders__p1 { margin-top: 9px; }
  .home-founders__p2 { margin-top: 21px; }
  .home-founders .btn { width: 200px; height: 42px; margin-top: 27px; font-size: 14px; font-weight: 700; }
  .home-founders__img { width: 300px; height: 371px; margin-top: 29px; }

  /* about */
  .about-us { height: auto; padding: 20px 0 20px; }
  .about-us .container { display: block; }
  .about-us .gh-wrap { width: auto; height: 48px; }
  .about-us__p1, .about-us__p2, .about-us__p3, .about-us__p4 { width: auto; }
  .about-us__p1 { margin-top: 12px; }
  .about-us__p2 { margin-top: 21px; }
  .about-us__p3 { margin-top: 24px; }
  .about-us__p4 { margin-top: 19px; }
  .about-us__img { width: 263px; height: 310px; margin: 28px 0 0 18px; }

  .about-mission { height: auto; padding: 29px 0 36px; }
  .about-mission .container { display: flex; flex-direction: column; }
  .about-mission__img { order: 2; width: 300px; height: 310px; margin-top: 39px; }
  .about-mission .gh-wrap { width: auto; height: 43px; margin-top: 0; }
  .about-mission__p1, .about-mission__p2 { width: auto; }
  .about-mission__p1 { margin-top: 6px; }
  .about-mission__p2 { margin-top: 19px; }

  .founders { height: 1370px; padding-top: 54px; }
  .founders .band-title { font-size: 24px; }
  .founders .band-sub { margin-top: 10px; }
  .founders .container { margin: 0 11px; }
  .founder, .founder--a, .founder--b { display: flex; flex-direction: column; align-items: center; text-align: center; }
  .founder--a { margin-top: 44px; }
  .founder--b { margin-top: 80px; }
  .founder .founder__photo { width: 223px; height: 333px; }
  .founder--b .founder__photo { order: -1; width: 223px; height: 279px; }
  .founder__body, .founder--b .founder__body { padding-top: 19px; }
  .founder--b .founder__body { padding-top: 23px; }
  .founder__name { width: 280px; margin: 0 auto; font-size: 18px; }
  .founder--b .founder__name { margin: 0 auto; }
  .founder__bio, .founder--b .founder__bio { margin-top: 13px; font-size: 14px; }
  .founder--b .founder__bio { margin-top: 6px; }

  /* services */
  .upcoming { height: auto; padding: 67px 0 55px; }
  .upcoming .container { margin: 0 11px 0 13px; }
  .upcoming .gh-wrap { height: 83px; }
  .upcoming__p1 { margin-top: 9px; }
  .upcoming__p2 { margin: 25px 0 0 -2px; }
  .upcoming__box { height: 250px; margin: 19px 0 0 -2px; padding: 24px 10px; font-size: 14px; line-height: 1.6; }
  .upcoming__p3, .upcoming__p4 { width: auto; margin-left: -2px; }
  .upcoming__p3 { margin-top: 31px; }
  .upcoming__p4 { margin-top: 17px; }

  /* contact */
  .contact-form { height: 617px; padding-top: 20px; }
  .contact-form .gh-wrap { width: auto; height: 59px; margin: 0 2px 0 3px; }
  .contact-form .form { width: 295px; margin: 20px 0 0 10px; }
  .contact-form .form__field { height: 38px; }
  .contact-form .form .form__field[type="email"] { margin-top: 10px; }
  .contact-form .form__submit { height: 42px; margin-top: 10px; }
  .contact-form .form__status { margin-top: 10px; }
  .contact-form .form__note { width: 287px; margin: 10px 0 0 4px; }
  .contact-form + .cta { margin-top: 0; }
  .contact-topics { padding-top: 40px; }
  .contact-topics .inner { width: auto; margin: 0; }
  .contact-topics__lead { width: auto; }
  .contact-topics__ask { margin: 10px 20px 0 10px; }
  .contact-topics__grid { display: block; margin-top: 21px; }
  .contact-topics__grid .info-box { height: 46px; }
  .contact-topics__grid .info-box:first-child { padding-right: 0; }
  .contact-topics__grid .info-box + .info-box { margin-top: 9.5px; }
  .contact-topics__email { margin: 10px 0 0 20px; }
  .contact-topics { padding-bottom: 191px; }
  .contact-topics .copy { font-size: 16px; }

  /* lead magnet */
  .guide-why { height: auto; padding: 47px 0 46px; }
  .guide-why .container { margin: 0 9px 0 8px; }
  .guide-why .gh-wrap { height: 51px; }
  .guide-why__p { width: auto; }
  .guide-why__p:first-of-type { margin-top: 0; }
  .guide-why__p + .guide-why__p { margin-top: 18px; }
  .guide-inside { height: auto; padding: 26px 0 69px; }
  .guide-inside .container { margin: 0 9px 0 8px; }
  .guide-inside .gh-wrap { height: 47px; }
  .guide-inside__grid { display: block; margin-top: 9px; }
  .guide-inside__grid .info-box { height: 55px; padding: 0 8px; font-size: 14px; line-height: 1.6; }
  .guide-inside__grid .info-box + .info-box { margin-top: 15px; }
  .guide-inside__grid .info-box:first-child { padding: 0 12px 0 11px; }
  .guide-inside__grid .info-box:nth-child(2) { align-items: flex-start; margin-top: 19px; padding: 10px 33px 0 10px; }
  .guide-inside__grid .info-box:last-child { height: 65px; padding: 0 8px; }
  .guide-get { height: auto; padding: 21px 0 52.6px; }
  .guide-get .gh-wrap { width: auto; height: 78px; margin: 0 9px 0 8px; }
  .guide-get__lead { width: auto; margin: -6px -5px 0 2px; }
  .guide-get .form { width: 280px; margin: 41px auto 0; }
  .guide-get .form__field { height: 38px; }
  .guide-get .form .form__field[type="email"] { margin-top: 10px; }
  .guide-get .form__submit { height: 42px; margin-top: 13px; }
  .guide-get .form__note { width: 260px; margin: 18px 0 0 9px; font-size: 13px; }
  .guide-begin { padding-top: 30px; }
  .guide-begin .container { margin: 0 28px 0 12px; }
  .guide-begin .gh-wrap { height: 49px; }
  .guide-begin__p { margin-top: -6px; }
  .guide-begin + .cta { margin-top: 110.4px; }

  .notfound { height: 500px; }
}
