.tell-us-page {
  background-color: #fdf6ee;
  overflow-x: clip;
}
 
.tell-us-page main {
  overflow-x: clip;
}
 
/* Stack: hero + contact strip */
.tell-us-stack {
  position: relative;
  isolation: isolate;
  margin-top: var(--header-height);
  width: 100%;
  max-width: 100%;
}
 
/* Hero — cream + photo */
.tell-us-contact {
  display: grid;
  grid-template-columns: minmax(0, 3.4fr) minmax(0, 1.6fr);
  align-items: stretch;
  box-sizing: border-box;
  position: relative;
  z-index: 1;
  min-height: calc(100dvh - var(--header-height));
  margin-top: 0;
  padding: 0;
  width: 100%;
}
 
.tell-us-contact__left-spacer {
  display: none;
}
 
.tell-us-contact__left {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: calc(100dvh - var(--header-height));
  min-width: 0;
  padding: clamp(2rem, 5vw, 4rem) clamp(1.25rem, 4vw, 3rem) clamp(2rem, 5vw, 4rem)
    clamp(1.45rem, 4.55vw, 3.65rem);
  background-color: #fdf6ee;
  overflow: hidden;
}
 
.tell-us-contact__copy {
  position: relative;
  z-index: 2;
  max-width: min(50rem, 96%);
  min-width: 0;
  margin-left: clamp(0.75rem, 2vw, 1.75rem);
  margin-top: clamp(1rem, 3vw, 2.25rem);
}
 
.tell-us-contact__text {
  font-family: "Elms Sans", sans-serif;
  font-size: clamp(1.2rem, 1.8vw, 1.38rem);
  font-weight: 500;
  line-height: 1.35;
  letter-spacing: -0.025em;
  word-spacing: -0.06em;
  color: #00685e;
  -webkit-text-fill-color: #00685e;
  margin: 0;
  margin-left: clamp(-0.2rem, -0.2vw, -0.05rem);
  max-width: 100%;
  box-sizing: border-box;
}
 
.tell-us-contact__text-line2 {
  display: inline-block;
  margin-top: clamp(0.22em, 0.48vw, 0.32em);
}
 
.tell-us-contact__yay {
  position: absolute;
  z-index: 0;
  top: 51.5%;
  right: clamp(-6%, 2vw, 10%);
  left: auto;
  transform: translate(5%, -50%);
  width: auto;
  height: min(96vh, calc(100dvh - var(--header-height) - 1rem));
  max-height: min(880px, 98%);
  max-width: min(94%, 760px);
  object-fit: contain;
  pointer-events: none;
  user-select: none;
}
 
.tell-us-contact__title {
  font-family: "Elms Sans", sans-serif;
  font-size: clamp(3.25rem, 7.5vw, 5.2rem);
  font-weight: 600;
  line-height: 1.04;
  color: #00685e;
  -webkit-text-fill-color: #00685e;
  margin: 0 0 clamp(1.15rem, 2.75vw, 1.75rem);
}
 
.tell-us-contact__title-line1 {
  display: inline-block;
  margin-top: 0.12em;
}
 
.tell-us-contact__title-line2 {
  display: inline-block;
  margin-top: 0.24em;
}
 
.tell-us-contact__right {
  position: relative;
  min-height: calc(100dvh - var(--header-height));
  height: calc(100dvh - var(--header-height));
  min-width: 0;
  padding: 0;
  overflow: hidden;
}
 
.tell-us-contact__right img {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
}
 
/* Large desktop: fixed copy + Yay while scrolling */
@media (min-width: 901px) {
  .tell-us-contact__left {
    overflow: visible;
  }
 
  .tell-us-contact__left-spacer {
    display: block;
    flex: 1 0 auto;
    width: 100%;
    min-height: calc(100dvh - var(--header-height));
    pointer-events: none;
  }
 
  .tell-us-stack .tell-us-contact__left {
    justify-content: flex-start;
    padding-top: 0;
    padding-bottom: 0;
  }
 
  .tell-us-stack .tell-us-contact__copy {
    position: fixed;
    top: calc(var(--header-height) + clamp(2.75rem, 6vw, 4.75rem));
    left: clamp(1.45rem, 4.55vw, 3.65rem);
    width: min(50rem, calc(60vw - 3.5rem));
    max-width: calc(100vw * 0.6 - clamp(2.5rem, 6vw, 5rem));
    z-index: 3;
    pointer-events: auto;
  }
 
  .tell-us-stack .tell-us-contact__yay {
    position: fixed;
    left: 51.5vw;
    right: auto;
    top: calc(var(--header-height) + (100dvh - var(--header-height)) * 0.535);
    transform: translate(-50%, -50%);
    width: min(58vw, 620px);
    height: auto;
    max-height: min(96vh, calc(100dvh - var(--header-height) - 1rem));
    max-width: min(78vw, 620px);
    z-index: 2;
  }
 
  /* Figma text box: 623.24 × 64.46px */
  .tell-us-contact__text {
    width: 623.237px;
    max-width: 623.237px;
    min-height: 64.456px;
    font-size: 22px;
    line-height: 28.228px;
    letter-spacing: -0.025em;
    word-spacing: -0.06em;
  }
 
  .tell-us-contact__text-line2 {
    margin-top: calc(64.456px - 28.228px * 2);
    line-height: 28.228px;
  }
}
 
/* Tablet: single column, no fixed elements */
@media (max-width: 900px) {
  .tell-us-contact {
    grid-template-columns: 1fr;
    min-height: auto;
  }
 
  .tell-us-contact__left {
    min-height: auto;
    padding: clamp(1.75rem, 4vw, 2.5rem) clamp(1.25rem, 4vw, 2rem);
    overflow: hidden;
  }
 
  .tell-us-stack .tell-us-contact__copy {
    position: relative;
    top: auto;
    left: auto;
    width: auto;
    max-width: none;
  }
 
  .tell-us-contact__title {
    font-size: clamp(2.28rem, 8.25vw, 3.45rem);
  }
 
  .tell-us-contact__text {
    width: min(100%, 623.237px);
    max-width: 100%;
    min-height: auto;
    margin-left: clamp(-0.12rem, -0.08vw, 0rem);
    font-size: clamp(1.1rem, 3.25vw, 1.24rem);
    line-height: 1.35;
  }
 
  .tell-us-contact__text-line2 {
    margin-top: clamp(0.22em, 0.48vw, 0.32em);
    line-height: inherit;
  }
 
  .tell-us-stack .tell-us-contact__yay {
    position: relative;
    top: auto;
    left: auto;
    right: auto;
    transform: none;
    display: block;
    height: auto;
    width: min(286px, 72vw);
    max-width: 100%;
    max-height: none;
    margin: clamp(0.5rem, 2vw, 1rem) auto 0;
  }
 
  .tell-us-contact__right {
    min-height: min(50vh, 380px);
    height: min(50vh, 380px);
  }
}
 
/* Small phones */
@media (max-width: 480px) {
  .tell-us-contact__left {
    padding: clamp(1.35rem, 5vw, 1.75rem) clamp(1rem, 4vw, 1.25rem);
  }
 
  .tell-us-contact__title {
    font-size: clamp(1.95rem, 9.75vw, 2.58rem);
  }
 
  .tell-us-contact__title-line1 {
    margin-top: 0.1em;
  }
 
  .tell-us-contact__title-line2 {
    margin-top: 0.2em;
  }
 
  .tell-us-contact__text {
    font-size: clamp(1.06rem, 4.15vw, 1.16rem);
    line-height: 1.5;
  }
 
  .tell-us-contact__yay {
    width: min(262px, 82vw);
  }
 
  .tell-us-contact__right {
    min-height: min(42vh, 320px);
    height: min(42vh, 320px);
  }
}
/* Teal left panel: appears only while the contact form is pinned in full
   view (toggled by JS via body.tell-us-form-pinned), removed on scroll past. */
@media (min-width: 901px) {
  .tell-us-stack .tell-us-contact__copy::before {
    content: "";
    position: fixed;
    top: var(--header-height);
    left: 0;
    width: 38vw;
    height: calc(100dvh - var(--header-height));
    background-color: #00685e;
    opacity: 0;
    transition: opacity 0.15s ease;
    z-index: -1;
    pointer-events: none;
  }
 
  body.tell-us-form-pinned .tell-us-stack .tell-us-contact__copy::before {
    opacity: 1;
  }
 
  body.tell-us-form-pinned .tell-us-contact__title,
  body.tell-us-form-pinned .tell-us-contact__text {
    color: #fdf6ee;
   
  }
}