.culture-hero {
  min-height: 760px;
  padding: 7vw 5vw;
  display: grid;
  grid-template-columns: 1.05fr .95fr;
  gap: 7vw;
  align-items: center;
  background: linear-gradient(125deg, var(--paper) 0 62%, var(--pink) 62%);
}

.culture-hero h1 {
  margin: 24px 0 30px;
  font: clamp(64px, 8vw, 128px)/.86 var(--serif);
  font-weight: 400;
  letter-spacing: -.045em;
}

.culture-hero h1 em { color: var(--rust); font-weight: 400; }
.culture-hero-copy > p { max-width: 650px; font-size: 19px; line-height: 1.7; }
.culture-hero .pill { margin-top: 24px; }

.culture-logo-card {
  padding: 38px;
  background: #fff;
  box-shadow: 22px 25px 0 #d6c5c5;
  transform: rotate(2deg);
  position: relative;
}

.culture-logo-card::before {
  content: "";
  position: absolute;
  width: 120px;
  height: 30px;
  top: -16px;
  left: 34%;
  background: #f5e5d8cc;
  transform: rotate(-4deg);
}

.culture-logo-card img { width: 100%; mix-blend-mode: multiply; }

.culture-story {
  padding: 120px 7vw;
  display: grid;
  grid-template-columns: .8fr 1.2fr;
  gap: 9vw;
}

.culture-story h2 {
  margin: 0;
  font: clamp(48px, 6vw, 92px)/.92 var(--serif);
  font-weight: 400;
}

.culture-story-copy p { font-size: 18px; line-height: 1.8; margin: 0 0 24px; }
.culture-offer { padding: 100px 5vw 130px; background: var(--pink); }
.culture-offer h2 { margin: 25px 0 70px; font: clamp(54px, 7vw, 105px)/.9 var(--serif); font-weight: 400; }
.culture-grid { display: grid; grid-template-columns: repeat(4, 1fr); border-top: 1px solid; }
.culture-card { min-height: 330px; padding: 28px 24px; border-right: 1px solid; }
.culture-card:last-child { border-right: 0; }
.culture-card span { font: 10px var(--mono); }
.culture-card h3 { font: 34px/1.05 var(--serif); font-weight: 400; margin: 55px 0 20px; }
.culture-card p { font-size: 14px; line-height: 1.7; }
.culture-cta { padding: 120px 6vw; text-align: center; background: var(--mauve); color: var(--milk); }
.culture-cta h2 { max-width: 900px; margin: 0 auto 35px; font: clamp(58px, 8vw, 120px)/.88 var(--serif); font-weight: 400; }

@media (max-width: 850px) {
  .culture-hero, .culture-story { grid-template-columns: 1fr; }
  .culture-hero { min-height: auto; padding: 80px 7vw 110px; }
  .culture-logo-card { max-width: 480px; }
  .culture-grid { grid-template-columns: 1fr 1fr; }
  .culture-card:nth-child(2) { border-right: 0; }
  .culture-card { border-bottom: 1px solid; }
}

@media (max-width: 520px) {
  .culture-grid { grid-template-columns: 1fr; }
  .culture-card { min-height: 0; border-right: 0; }
}
