:where(.door--gtm) :where(h3, h4) {
  margin: 0;
}
.ghero {
  display: grid;
  grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
  grid-template-areas: "head week" "call week";
  grid-template-rows: auto 1fr;
  gap: 0 4.4vw;
  padding: clamp(28px, 4.4vh, 52px) var(--pad-x) 12vh;
}
.ghero__head {
  grid-area: head;
  padding-top: 4px;
}
.ghero__title {
  font-size: clamp(42px, 3.8vw, 56px);
  font-weight: 500;
  line-height: 1.05;
  letter-spacing: -.028em;
  text-wrap: balance;
}
.ghero__lede {
  margin-top: 22px;
  font-size: 20px;
  line-height: 1.5;
  color: var(--charcoal-soft);
  max-width: 30em;
  text-wrap: pretty;
}
.ghero__call {
  grid-area: call;
  padding-top: 10px;
}
.gticked {
  min-height: 1.4em;
  margin-bottom: 18px;
  font-size: 17px;
  font-weight: 500;
  line-height: 1.4;
  color: var(--ink);
  text-wrap: balance;
  opacity: 0;
  visibility: hidden;
  transform: translateY(4px);
  transition:
    opacity 160ms ease,
    transform 160ms ease,
    visibility 0s linear 160ms;
}
.ghero:has(.check__in:checked) .gticked {
  opacity: 1;
  visibility: visible;
  transform: none;
  transition:
    opacity 220ms ease 60ms,
    transform 260ms var(--ease-out) 60ms,
    visibility 0s;
}
.gact {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 14px 28px;
}
.gact__line {
  margin-top: 16px;
  font-size: 15.5px;
  line-height: 1.5;
  color: var(--charcoal-soft);
  max-width: 27em;
  text-wrap: pretty;
}
.gq {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  font-size: 16.5px;
  font-weight: 500;
  color: var(--ink);
  text-decoration: underline;
  text-decoration-color: rgba(17, 20, 17, .3);
  text-decoration-thickness: 1px;
  text-underline-offset: .3em;
  transition: text-decoration-color 160ms ease;
}
.gq svg {
  flex: none;
  width: 16px;
  height: 16px;
  fill: none;
  stroke: var(--slate);
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
  transition: transform 160ms var(--ease-out);
}
@media (hover: hover) and (pointer: fine) {
  .gq:hover {
    text-decoration-color: var(--ink);
  }
  .gq:hover svg {
    transform: translateX(3px);
  }
}
.dclose .gq {
  color: var(--white);
  text-decoration-color: rgba(247, 243, 234, .4);
}
.dclose .gq svg {
  stroke: var(--champagne);
}
@media (hover: hover) and (pointer: fine) {
  .dclose .gq:hover {
    text-decoration-color: var(--white);
  }
}
.gact--close {
  justify-content: flex-end;
}
.gweek {
  grid-area: week;
  align-self: start;
  padding: clamp(24px, 2.2vw, 32px) clamp(24px, 2.4vw, 34px) clamp(22px, 2vw, 28px);
  background: #FBF8F1;
  border: 1px solid rgba(17, 20, 17, .09);
  border-radius: 18px;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, .85),
    0 18px 40px rgba(37, 42, 38, .13),
    0 2px 6px rgba(37, 42, 38, .08);
}
.gweek .checks__ask {
  margin-bottom: 8px;
  font-size: 17px;
  color: var(--ink);
}
.gweek .checks__list {
  grid-template-columns: repeat(2, minmax(0, max-content));
  gap: 0 30px;
  max-width: none;
}
.gweek .check {
  --box: 20px;
  gap: 12px;
  padding-top: 7px;
  padding-bottom: 7px;
  font-size: 16.5px;
  line-height: 1.35;
  letter-spacing: 0;
}
.gweek .check__in {
  top: calc(7px + (1lh - var(--box)) / 2);
}
.gweek .check::before {
  top: calc(7px + (1lh - var(--box)) / 2 + 1px);
}
.gweek__stat {
  margin-top: 18px;
  padding-top: 14px;
  border-top: 1px solid rgba(17, 20, 17, .09);
  max-width: none;
}
.gweek__stat .stat__n {
  font-weight: 500;
  color: var(--ink);
}
.gcal {
  margin: 18px 0 0;
}
.gcal__grid {
  display: grid;
  grid-template-columns: 40px repeat(5, minmax(0, 1fr));
  grid-template-rows: auto clamp(320px, 38vh, 360px);
  column-gap: 6px;
}
.gcal__d {
  padding-bottom: 7px;
  font-size: 13.5px;
  font-weight: 500;
  color: var(--slate);
}
.gcal__hrs {
  position: relative;
}
.gcal__hrs span {
  position: absolute;
  right: 7px;
  top: calc(var(--i) * 10%);
  transform: translateY(-50%);
  font-size: 11px;
  line-height: 1;
  color: var(--slate);
  white-space: nowrap;
}
.gcal__hrs span:first-child {
  transform: none;
}
.gcal__day {
  position: relative;
  background: linear-gradient(rgba(17, 20, 17, .07) 1px, transparent 1px) 0 0 / 100% 10%;
}
.ev {
  position: absolute;
  left: 0;
  right: 0;
  top: calc(var(--s) * 5%);
  height: calc(var(--u) * 5% - 2px);
  overflow: hidden;
  display: flex;
  padding: 3px 7px;
  border-radius: 5px;
  font-size: 11.5px;
  line-height: 1.15;
  transition: background-color 200ms ease;
}
.ev--short {
  padding-top: 1px;
  padding-bottom: 1px;
  align-items: center;
}
.ev:not(.ev--selling) {
  background: var(--graphite-2);
  color: var(--white);
}
.ev--selling {
  border: 1px dashed rgba(17, 20, 17, .22);
  background: rgba(255, 255, 255, .35);
  color: var(--slate);
}
.ev__t {
  min-width: 0;
  overflow-wrap: normal;
}
.ev:not(.ev--selling)::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 3px;
  background: var(--gold);
  transform: scaleY(0);
  transform-origin: top;
  transition: transform 240ms var(--ease-out);
}
.ghero:has(.check__in[value=research]:checked) .ev--research,
.ghero:has(.check__in[value=crm]:checked) .ev--crm,
.ghero:has(.check__in[value=follow]:checked) .ev--follow,
.ghero:has(.check__in[value=meetings]:checked) .ev--meetings {
  background: var(--graphite);
  font-weight: 500;
  padding-left: 9px;
}
.ghero:has(.check__in[value=research]:checked) .ev--research::before,
.ghero:has(.check__in[value=crm]:checked) .ev--crm::before,
.ghero:has(.check__in[value=follow]:checked) .ev--follow::before,
.ghero:has(.check__in[value=meetings]:checked) .ev--meetings::before {
  transform: scaleY(1);
}
.gcal__tally {
  display: flex;
  flex-wrap: wrap;
  gap: 6px 22px;
  margin-top: 14px;
  padding-left: 46px;
  font-size: 14px;
  line-height: 1.4;
  color: var(--charcoal-soft);
}
.gcal__tally b {
  font-weight: 500;
  color: var(--ink);
}
.gcal__k {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}
.gcal__k::before {
  content: "";
  flex: none;
  width: 13px;
  height: 13px;
  border-radius: 3px;
}
.gcal__k--other::before {
  background: var(--graphite-2);
}
.gcal__k--selling::before {
  border: 1px dashed rgba(17, 20, 17, .4);
  background: rgba(255, 255, 255, .35);
}
.gcal__note {
  margin-top: 6px;
  padding-left: 46px;
  font-size: 12.5px;
  line-height: 1.45;
  color: var(--slate);
}
.gstory {
  padding-top: 10vh;
}
.gstory__quote {
  margin-top: 30px;
  max-width: 22em;
}
.gstory__quote p {
  font-size: clamp(20px, 1.6vw, 23px);
  line-height: 1.42;
}
.gstory .logos {
  grid-area: auto;
  grid-column: 1 / -1;
  margin-top: 6vh;
}
@media (max-width: 980px) {
  .ghero {
    grid-template-columns: 1fr;
    grid-template-areas: "head" "week" "call";
    gap: 0;
    padding-bottom: 9vh;
  }
  .gweek {
    margin-top: 30px;
  }
  .ghero__call {
    padding-top: 30px;
  }
  .gact--close {
    justify-content: flex-start;
  }
}
@media (max-width: 700px) {
  .ghero {
    padding: 24px 12px 8vh;
  }
  .ghero__head,
  .ghero__call {
    padding-left: 10px;
    padding-right: 10px;
  }
  .ghero__title {
    font-size: clamp(34px, 10.2vw, 42px);
  }
  .ghero__lede {
    font-size: 17.5px;
    margin-top: 14px;
  }
  .gweek {
    margin-top: 24px;
    padding: 22px 18px 20px 20px;
    border-radius: 16px;
  }
  .gweek .check {
    margin-left: -12px;
    padding-left: 12px;
  }
  .gweek .check__in {
    left: 12px;
  }
  .gweek .checks__ask {
    font-size: 16.5px;
  }
  .gweek .checks__list {
    grid-template-columns: 1fr;
  }
  .gweek .check {
    font-size: 16px;
  }
  .gcal__grid {
    grid-template-columns: 34px repeat(5, minmax(0, 1fr));
    grid-template-rows: auto 320px;
    column-gap: 4px;
  }
  .gcal__hrs span {
    right: 4px;
    font-size: 11px;
  }
  .ev {
    padding: 2px 4px;
    font-size: 11px;
    line-height: 1.1;
    border-radius: 4px;
  }
  .ev:not(.ev--selling) .ev__t {
    visibility: hidden;
  }
  .gcal__tally,
  .gcal__note {
    padding-left: 38px;
  }
  .gcal__tally {
    font-size: 13.5px;
  }
  .ghero__call .btn--gold {
    width: 100%;
    justify-content: center;
    font-size: 17px;
    padding: 18px 24px;
  }
  .gact {
    gap: 16px 24px;
  }
  .gstory__quote {
    max-width: none;
  }
}
@media (max-width: 359px) {
  .gweek {
    padding-left: 14px;
    padding-right: 12px;
  }
  .gweek .check {
    margin-right: -8px;
  }
  .gcal__grid {
    grid-template-columns: 28px repeat(5, minmax(0, 1fr));
    column-gap: 3px;
  }
  .ev {
    padding: 2px 3px;
  }
  .gcal__tally,
  .gcal__note {
    padding-left: 31px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .gticked,
  .ev,
  .ev::before,
  .gq svg {
    transition: none;
  }
  .gticked {
    transform: none;
  }
}
