.breadcrumbs-wrap {
  overflow-x: auto;
}

.site-legal p + ul,
.site-legal p + ol {
  margin-top: 1rem;
}

.benefit-marker {
  display: inline-flex;
  align-items: center;
  height: 1.5em;
  line-height: 1;
}

.balanced-copy-image,
.work-section-image {
  width: min(100%, 420px);
  aspect-ratio: 4 / 5;
  margin-inline: auto;
}

@media (min-width: 768px) {
  .balanced-copy-grid,
  .work-section-grid {
    grid-template-columns: minmax(0, 1fr) minmax(280px, 420px);
  }

  .balanced-copy-image,
  .work-section-image {
    margin-top: 56px;
    margin-right: 0;
  }
}

.site-thankyou {
  min-height: calc(100vh - 16rem);
}

.home-page,
.contact-page,
.blog-page,
.over-mij-page,
.new-look-page {
  --site-brand-size: clamp(2rem, 4vw, 3rem);
  --site-hero-title-size: clamp(3rem, 7vw, 5.6rem);
}

.home-page {
  --over-brown: #715825;
  --over-cream: #f7f4ef;
  --over-gold: #c2a878;
  --over-ochre: #e5b313;
  --over-ink: #15110a;
  --over-muted: #5f5646;
  background: var(--over-cream);
  color: var(--over-ink);
}

.home-page h1,
.home-page h2,
.home-page h3,
.home-brand {
  font-family: var(--font-heading);
}

.home-header {
  position: sticky;
  top: 0;
  z-index: 50;
  background: var(--over-brown);
  color: var(--over-cream);
}

.home-nav {
  width: min(100%, 1200px);
  min-height: 136px;
  margin: 0 auto;
  padding: 34px clamp(24px, 6vw, 78px);
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 32px;
}

.home-brand {
  color: var(--over-ochre);
  font-size: var(--site-brand-size);
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0;
  text-transform: uppercase;
}

.home-nav-links {
  display: flex;
  align-items: center;
  gap: clamp(18px, 3vw, 38px);
  padding-top: 16px;
  font-size: 0.875rem;
  font-weight: 600;
}

.home-nav-links a,
.home-mobile-panel a {
  color: var(--over-cream);
  transition: color 180ms ease;
}

.home-nav-links a:hover,
.home-mobile-panel a:hover {
  color: var(--over-ochre);
}

.home-mobile {
  display: none;
  position: relative;
}

.home-menu-button {
  padding: 10px 0;
  color: var(--over-cream);
  font-weight: 700;
}

.home-mobile-panel {
  position: absolute;
  right: 0;
  top: 48px;
  min-width: 220px;
  padding: 14px;
  display: grid;
  gap: 10px;
  background: var(--over-brown);
  border: 1px solid rgb(247 244 239 / 0.22);
}

.home-mobile-panel[hidden] {
  display: none !important;
}

.home-editorial {
  background: var(--over-cream);
}

.home-hero {
  position: relative;
  min-height: 520px;
  display: grid;
  place-items: center;
  overflow: hidden;
  background: var(--over-ink);
}

.home-hero picture,
.home-hero img,
.home-image-band picture,
.home-image-band img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}

.home-hero img,
.home-image-band img {
  object-fit: cover;
}

.home-hero img {
  object-position: center center;
}

.home-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  background: rgb(21 17 10 / 0.22);
}

.home-hero__quote {
  position: relative;
  z-index: 1;
  max-width: 760px;
  margin: 0;
  padding: 24px;
  color: var(--over-ochre);
  font-size: 1.9rem;
  font-weight: 800;
  line-height: 1.25;
  text-align: center;
}

.home-hero__quote footer {
  margin-top: 0.25rem;
}

.home-band {
  padding: 96px 0;
}

.home-band--brown {
  background: var(--over-brown);
  color: var(--over-cream);
}

.home-band--gold {
  background: var(--over-gold);
  color: var(--over-brown);
}

.home-inner {
  width: min(100%, 1120px);
  margin: 0 auto;
  padding: 0 78px;
}

.home-narrow {
  width: min(100%, 860px);
  margin: 0 auto;
  padding: 0 44px;
  text-align: center;
}

.home-intro h1,
.home-copy h2 {
  color: currentColor;
  font-size: var(--site-hero-title-size);
  line-height: 1.05;
  font-weight: 600;
  letter-spacing: 0;
}

.home-copy h2 {
  font-size: clamp(2.15rem, 5vw, 4.4rem);
}

.home-intro h1 {
  margin-left: 80px;
  margin-bottom: 52px;
}

.home-intro__row {
  display: grid;
  grid-template-columns: 250px minmax(0, 470px);
  justify-content: center;
  align-items: center;
  gap: 70px;
}

.home-intro__row p {
  font-size: 1.08rem;
  line-height: 1.6;
}

.home-photo {
  display: block;
  overflow: hidden;
  border-radius: 4px;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.05), 0 10px 20px rgba(0, 0, 0, 0.08), 0 20px 40px rgba(0, 0, 0, 0.06);
}

.home-photo img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

.home-page .home-photo--lili {
  width: 250px;
  aspect-ratio: 1 / 1;
}

.home-page .home-photo--lili img {
  filter: grayscale(1) contrast(1.08);
}

.home-holos__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  column-gap: 84px;
  row-gap: 52px;
  align-items: start;
}

.home-holos__item {
  display: contents;
}

.home-holos__item:first-child .home-photo {
  grid-column: 1;
  grid-row: 1;
}

.home-holos__item:first-child .home-copy {
  grid-column: 1;
  grid-row: 2;
}

.home-holos__item:last-child .home-photo {
  grid-column: 2;
  grid-row: 1;
}

.home-holos__item:last-child .home-copy {
  grid-column: 2;
  grid-row: 2;
}

.home-photo--square {
  width: 100%;
  aspect-ratio: 1 / 1;
}

.home-photo--square img {
  transform: scale(1.025);
}

.home-copy {
  font-size: 1rem;
  line-height: 1.62;
}

.home-copy p + p,
.home-copy p + ul,
.home-copy ul + p,
.home-copy h3 + p,
.home-copy p + h3 {
  margin-top: 1.25rem;
}

.home-holos .home-copy {
  text-align: left;
}

.home-copy h2 {
  margin-bottom: 2rem;
  text-align: center;
}

.home-copy h3 {
  margin-top: 2.2rem;
  font-family: var(--font-body);
  font-size: 1rem;
  font-weight: 800;
  letter-spacing: 0;
}

.home-copy ul {
  margin-left: 1.2rem;
  list-style: disc;
}

.home-copy li + li {
  margin-top: 0.15rem;
}

.home-copy--light {
  color: var(--over-cream);
}

.home-work__grid {
  display: grid;
  grid-template-columns: minmax(190px, 330px) minmax(0, 560px);
  justify-content: center;
  align-items: center;
  gap: 78px;
}

.home-photo--hand {
  width: min(100%, 330px);
  aspect-ratio: 492 / 960;
}

.home-work .home-copy {
  text-align: left;
}

.home-work .home-copy h2 {
  text-align: left;
}

.home-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 152px;
  min-height: 38px;
  margin-top: 2.8rem;
  padding: 0 1.55rem;
  border-radius: 999px;
  background: var(--over-ochre);
  color: var(--over-brown);
  font-size: 0.72rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0;
  box-shadow: 0 12px 26px rgb(21 17 10 / 0.14);
  transition: transform 180ms ease, box-shadow 180ms ease;
}

.home-button:hover {
  transform: translateY(-2px);
  box-shadow: 0 16px 32px rgb(21 17 10 / 0.18);
}

.home-work .home-button,
.home-meaning .home-button,
.home-practical .home-button,
.home-rates .home-button {
  margin-left: auto;
  margin-right: auto;
}

.home-meaning__grid {
  display: grid;
  justify-items: center;
}

.home-meaning .home-copy {
  max-width: 760px;
  text-align: left;
}

.home-meaning .home-copy h2,
.home-practical .home-copy h2,
.home-rates .home-copy h2 {
  text-align: center;
}

.home-meaning .home-button,
.home-practical .home-button,
.home-rates .home-button {
  display: flex;
  width: max-content;
}

.home-image-band {
  position: relative;
  height: 330px;
  overflow: hidden;
  background: var(--over-ink);
}

.home-image-band img {
  object-position: center center;
}

.home-practical,
.home-rates {
  padding-top: 108px;
  padding-bottom: 108px;
}

.home-practical .home-copy,
.home-rates .home-copy {
  line-height: 1.58;
}

@media (max-width: 900px) {
  .home-nav {
    min-height: 116px;
    padding: 36px 27px;
  }

  .home-brand {
    font-size: var(--site-brand-size);
  }

  .home-nav-links {
    display: none;
  }

  .home-mobile {
    display: block;
  }

  .home-hero {
    min-height: 235px;
  }

  .home-hero__quote {
    font-size: 1.18rem;
  }

  .home-band {
    padding: 64px 0;
  }

  .home-inner {
    padding: 0 36px;
  }

  .home-intro h1,
  .home-copy h2 {
    font-size: var(--site-hero-title-size);
  }

  .home-copy h2 {
    font-size: clamp(2rem, 8vw, 3rem);
  }

  .home-intro h1 {
    margin-left: 0;
    margin-bottom: 32px;
  }

  .home-intro__row {
    grid-template-columns: 190px 1fr;
    justify-items: start;
    gap: 36px;
  }

  .home-page .home-photo--lili {
    width: 190px;
  }

  .home-holos__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 42px;
    row-gap: 32px;
  }

  .home-work__grid {
    grid-template-columns: minmax(150px, 240px) minmax(0, 1fr);
    gap: 34px;
  }

  .home-holos__item {
    display: contents;
  }

  .home-work .home-copy h2 {
    text-align: left;
  }

  .home-photo--hand {
    width: 100%;
    margin: 0;
  }

  .home-image-band {
    height: 190px;
  }
}

@media (max-width: 560px) {
  .home-inner,
  .home-narrow {
    padding-left: 26px;
    padding-right: 26px;
  }

  .home-copy,
  .home-intro__row p {
    font-size: 0.94rem;
  }

  .home-intro h1 {
    font-size: 1.65rem;
  }

  .home-intro__row {
    grid-template-columns: 1fr;
    justify-items: center;
    gap: 18px;
  }

  .home-page .home-photo--lili {
    width: min(54vw, 160px);
  }

  .home-intro__row p {
    max-width: 22rem;
    text-align: left;
  }

  .home-holos__grid {
    column-gap: 28px;
    row-gap: 22px;
  }

  .home-holos__item {
    display: contents;
  }

  .home-holos .home-copy {
    font-size: 0.72rem;
    line-height: 1.55;
    text-align: left;
  }

  .home-work__grid {
    grid-template-columns: minmax(112px, 38%) minmax(0, 1fr);
    gap: 22px;
  }

  .home-work .home-copy {
    font-size: 0.68rem;
    line-height: 1.5;
    text-align: left;
  }

  .home-work .home-copy h2 {
    font-size: 1.65rem;
  }

  .home-copy h2 {
    margin-bottom: 1.45rem;
  }
}

.contact-page {
  --over-brown: #715825;
  --over-cream: #f7f4ef;
  --over-contact-cream: #ede6de;
  --over-gold: #c2a878;
  --over-ochre: #e5b313;
  --over-ink: #15110a;
  --over-muted: #5f5646;
  background: var(--over-contact-cream);
  color: var(--over-ink);
}

.contact-page h1,
.contact-page h2,
.contact-page h3,
.contact-brand {
  font-family: var(--font-heading);
}

.contact-header {
  position: sticky;
  top: 0;
  z-index: 50;
  background: var(--over-brown);
  color: var(--over-cream);
}

.contact-nav {
  width: min(100%, 1200px);
  min-height: 136px;
  margin: 0 auto;
  padding: 34px clamp(24px, 6vw, 78px);
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 32px;
}

.contact-brand {
  color: rgb(247 244 239 / 0.86);
  font-size: var(--site-brand-size);
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0;
  text-transform: uppercase;
}

.contact-nav-links {
  display: flex;
  align-items: center;
  gap: clamp(18px, 3vw, 38px);
  padding-top: 16px;
  font-size: 0.875rem;
  font-weight: 600;
}

.contact-nav-links a,
.contact-mobile-panel a {
  color: var(--over-cream);
  transition: color 180ms ease;
}

.contact-nav-links a:hover,
.contact-nav-links a[aria-current="page"],
.contact-mobile-panel a:hover,
.contact-mobile-panel a[aria-current="page"] {
  color: var(--over-ochre);
}

.contact-mobile {
  display: none;
  position: relative;
}

.contact-menu-button {
  padding: 10px 0;
  color: var(--over-cream);
  font-weight: 700;
}

.contact-mobile-panel {
  position: absolute;
  right: 0;
  top: 48px;
  min-width: 220px;
  padding: 14px;
  display: grid;
  gap: 10px;
  background: var(--over-brown);
  border: 1px solid rgb(247 244 239 / 0.22);
}

.contact-mobile-panel[hidden] {
  display: none !important;
}

.contact-editorial {
  background: var(--over-contact-cream);
}

.contact-hero {
  position: relative;
  height: clamp(320px, 37vw, 470px);
  display: grid;
  place-items: center;
  overflow: hidden;
  background: var(--over-ink);
}

.contact-hero picture,
.contact-hero img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}

.contact-hero img {
  display: block;
  object-fit: cover;
  object-position: center 51%;
}

.contact-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  background: rgb(21 17 10 / 0.1);
}

.contact-intro {
  padding: 86px 0 92px;
  background: var(--over-brown);
  color: var(--over-cream);
}

.contact-narrow {
  width: min(100%, 900px);
  margin: 0 auto;
  padding: 0 clamp(24px, 6vw, 78px);
  text-align: center;
}

.contact-intro h1 {
  margin-bottom: 44px;
  color: var(--over-cream);
  font-family: var(--font-heading);
  font-size: clamp(2.3rem, 5vw, 3.2rem);
  line-height: 1.08;
  font-weight: 600;
  letter-spacing: 0;
}

.contact-intro p {
  color: rgb(247 244 239 / 0.9);
  font-size: clamp(1.08rem, 1.7vw, 1.45rem);
  line-height: 1.42;
}

.contact-connect {
  padding: 18px 0 86px;
  background: var(--over-contact-cream);
}

.contact-calendar {
  width: min(100%, 920px);
  margin: 0 auto 52px;
  padding: 0 clamp(18px, 4vw, 44px);
}

.contact-page .cal-embed-container {
  min-height: 430px;
  overflow: hidden;
  border-radius: 8px;
}

.contact-page .cal-embed-container iframe {
  min-height: auto;
}

.contact-grid {
  width: min(100%, 1000px);
  margin: 0 auto;
  padding: 0 clamp(24px, 6vw, 78px);
  display: grid;
  grid-template-columns: minmax(0, 0.85fr) minmax(0, 1.15fr);
  gap: clamp(42px, 8vw, 110px);
  align-items: start;
}

.contact-details h2,
.contact-message h2 {
  margin-bottom: 28px;
  color: var(--over-brown);
  font-size: clamp(1.7rem, 2.8vw, 2.35rem);
  line-height: 1.1;
  font-weight: 700;
  letter-spacing: 0;
}

.contact-detail-list {
  display: grid;
  gap: 24px;
}

.contact-detail {
  display: grid;
  grid-template-columns: 24px minmax(0, 1fr);
  gap: 14px;
  color: var(--over-muted);
  font-size: 0.92rem;
  line-height: 1.45;
}

.contact-detail__icon {
  width: 20px;
  height: 20px;
  margin-top: 3px;
  color: var(--over-brown);
}

.contact-detail h3 {
  margin-bottom: 3px;
  color: var(--over-brown);
  font-family: var(--font-body);
  font-size: 0.95rem;
  font-weight: 700;
  letter-spacing: 0;
}

.contact-detail a,
.contact-detail p {
  color: var(--over-muted);
}

.contact-detail a:hover {
  color: var(--over-brown);
}

.contact-detail address {
  font-style: normal;
}

.contact-detail strong {
  font-style: italic;
  font-weight: 700;
}

.contact-form {
  display: grid;
  gap: 18px;
}

.contact-field {
  display: grid;
  gap: 8px;
}

.contact-field label {
  color: var(--over-muted);
  font-size: 0.78rem;
  font-weight: 700;
}

.contact-field input,
.contact-field textarea {
  width: 100%;
  border: 1px solid rgb(113 88 37 / 0.12);
  border-radius: 6px;
  background: rgb(255 255 255 / 0.72);
  color: var(--over-ink);
  font-size: 0.94rem;
  line-height: 1.4;
  box-shadow: 0 1px 2px rgb(21 17 10 / 0.04);
}

.contact-field input {
  min-height: 42px;
  padding: 0 14px;
}

.contact-field textarea {
  min-height: 116px;
  padding: 12px 14px;
  resize: vertical;
}

.contact-field input:focus,
.contact-field textarea:focus {
  outline: 2px solid rgb(229 179 19 / 0.38);
  outline-offset: 2px;
  border-color: rgb(229 179 19 / 0.7);
}

.contact-field input::placeholder,
.contact-field textarea::placeholder {
  color: rgb(95 86 70 / 0.62);
}

.contact-submit {
  justify-self: center;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 52px;
  min-width: 220px;
  margin-top: 18px;
  padding: 0 34px;
  border-radius: 999px;
  background: var(--over-ochre);
  color: var(--over-brown);
  font-size: 0.82rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0;
  box-shadow: 0 12px 26px rgb(113 88 37 / 0.16);
  transition: transform 180ms ease, box-shadow 180ms ease;
}

.contact-submit:hover {
  transform: translateY(-2px);
  box-shadow: 0 16px 34px rgb(113 88 37 / 0.22);
}

.contact-response-note {
  color: var(--over-muted);
  font-size: 0.88rem;
  text-align: center;
}

.contact-reachability {
  padding: 104px 0 118px;
  background: var(--over-gold);
  color: var(--over-brown);
}

.contact-reachability h2 {
  margin-bottom: 50px;
  color: var(--over-brown);
  font-size: clamp(2.8rem, 5vw, 4.7rem);
  line-height: 1.05;
  font-weight: 700;
  letter-spacing: 0;
}

.contact-reachability p {
  color: rgb(113 88 37 / 0.86);
  font-size: clamp(1.02rem, 1.6vw, 1.22rem);
  line-height: 1.48;
}

.contact-reachability p + p {
  margin-top: 38px;
}

@media (max-width: 900px) {
  .contact-nav {
    min-height: 116px;
    padding: 36px 27px;
    align-items: flex-start;
  }

  .contact-brand {
    font-size: var(--site-brand-size);
  }

  .contact-nav-links {
    display: none;
  }

  .contact-mobile {
    display: block;
  }

  .contact-hero {
    height: 330px;
  }

  .contact-intro {
    padding: 72px 0 76px;
  }

  .contact-intro h1 {
    margin-bottom: 32px;
  }

  .contact-connect {
    padding-bottom: 72px;
  }

  .contact-grid {
    grid-template-columns: 1fr;
    gap: 50px;
  }

  .contact-submit {
    justify-self: center;
  }

  .contact-reachability {
    padding: 82px 0 92px;
  }
}

@media (max-width: 560px) {
  .contact-nav {
    min-height: 104px;
    padding: 28px 22px;
  }

  .contact-brand {
    font-size: var(--site-brand-size);
  }

  .contact-hero {
    height: 260px;
  }

  .contact-intro {
    padding: 60px 0 64px;
  }

  .contact-connect {
    padding-top: 0;
    padding-bottom: 62px;
  }

  .contact-calendar {
    margin-bottom: 44px;
    padding: 0 14px;
  }

  .contact-page .cal-embed-container {
    min-height: 520px;
    border-radius: 0;
  }

  .contact-grid {
    padding-left: 24px;
    padding-right: 24px;
  }

  .contact-detail {
    font-size: 0.88rem;
  }

  .contact-submit {
    width: min(100%, 260px);
  }

  .contact-reachability {
    padding: 72px 0 82px;
  }
}

.blog-page {
  --over-brown: #715825;
  --over-cream: #f7f4ef;
  --over-gold: #c2a878;
  --over-ochre: #e5b313;
  --over-ink: #15110a;
  --over-muted: #5f5646;
  --blog-text: #d6ba8c;
  background: var(--over-brown);
  color: var(--blog-text);
}

.blog-page h1,
.blog-page h2,
.blog-page h3 {
  font-family: var(--font-heading);
}

.blog-editorial {
  background: var(--over-brown);
}

.blog-hero {
  position: relative;
  height: clamp(370px, 44vw, 580px);
  display: grid;
  place-items: center;
  overflow: hidden;
  background: var(--over-ink);
}

.blog-hero picture,
.blog-hero img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}

.blog-hero img {
  display: block;
  object-fit: cover;
  object-position: center center;
}

.blog-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  background: rgb(214 186 140 / 0.12);
}

.blog-hero__quote {
  position: relative;
  z-index: 1;
  max-width: 760px;
  padding: 24px;
  color: #715825;
  font-family: Inter, sans-serif;
  font-size: 1.9rem;
  font-weight: 800;
  line-height: 1.25;
  letter-spacing: 0;
  text-align: center;
}

.blog-intro {
  padding: clamp(88px, 11vw, 150px) 0 clamp(92px, 11vw, 160px);
  background: var(--over-brown);
  color: var(--blog-text);
}

.blog-intro__inner {
  width: min(100%, 1160px);
  margin: 0 auto;
  padding: 0 clamp(28px, 7vw, 92px);
  text-align: center;
}

.blog-intro h1 {
  margin-bottom: clamp(44px, 7vw, 78px);
  color: var(--blog-text);
  font-size: clamp(2.3rem, 5vw, 3.2rem);
  line-height: 1.05;
  font-weight: 600;
  letter-spacing: 0;
}

.blog-intro__name {
  color: var(--blog-text);
  font-family: var(--font-heading);
  font-size: clamp(2.25rem, 4.7vw, 4.25rem);
  font-style: italic;
  font-weight: 700;
  line-height: 1.08;
}

.blog-intro__copy {
  width: min(100%, 860px);
  margin: clamp(52px, 7vw, 82px) auto 0;
  display: grid;
  gap: 24px;
}

.blog-intro__copy p {
  color: rgb(214 186 140 / 0.92);
  font-size: clamp(1rem, 1.25vw, 1.12rem);
  line-height: 1.7;
}

.blog-list-section {
  padding: clamp(72px, 8vw, 110px) 0;
  background: var(--over-cream);
  color: var(--over-brown);
}

.blog-list-section__inner {
  width: min(100%, 1080px);
  margin: 0 auto;
  padding: 0 clamp(28px, 7vw, 92px);
}

.blog-list-section h2 {
  margin-bottom: 38px;
  color: var(--over-brown);
  font-size: clamp(2.2rem, 4vw, 3.7rem);
  line-height: 1.05;
}

.blog-list {
  display: grid;
  gap: 18px;
}

.blog-list:empty {
  display: none;
}

.blog-card {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 24px;
  align-items: center;
  padding: 28px 0;
  border-top: 1px solid rgb(113 88 37 / 0.18);
  color: var(--over-brown);
}

.blog-card:last-child {
  border-bottom: 1px solid rgb(113 88 37 / 0.18);
}

.blog-card h3 {
  color: var(--over-brown);
  font-size: clamp(1.5rem, 2.6vw, 2.3rem);
  line-height: 1.08;
}

.blog-card p {
  margin-top: 0.7rem;
  color: rgb(95 86 70 / 0.92);
  font-size: 1rem;
  line-height: 1.6;
}

.blog-card__meta {
  color: rgb(95 86 70 / 0.72);
  font-size: 0.82rem;
  font-weight: 700;
  text-transform: uppercase;
}

@media (max-width: 900px) {
  .blog-hero {
    height: 340px;
  }

  .blog-intro__copy {
    gap: 34px;
  }
}

@media (max-width: 560px) {
  .blog-hero {
    height: 270px;
  }

  .blog-intro {
    padding-top: 68px;
    padding-bottom: 76px;
  }

  .blog-intro__copy {
    margin-top: 56px;
  }

  .blog-list-section {
    padding-top: 56px;
    padding-bottom: 64px;
  }

  .blog-card {
    grid-template-columns: 1fr;
  }
}

.new-look-page {
  --over-brown: #715825;
  --over-cream: #f7f4ef;
  --over-gold: #c2a878;
  --over-ochre: #e5b313;
  --over-ink: #15110a;
  --over-muted: #5f5646;
  background: var(--over-cream);
  color: var(--over-ink);
}

.new-look-page .breadcrumbs-wrap {
  display: none;
}

.new-look-page h1,
.new-look-page h2,
.new-look-page h3,
.new-look-page header span[style*="font-heading"] {
  font-family: var(--font-heading);
  letter-spacing: 0;
}

.new-look-page .text-primary {
  color: var(--over-brown);
}

.new-look-page .text-muted-foreground {
  color: var(--over-muted);
}

.new-look-page .text-foreground {
  color: var(--over-ink);
}

.new-look-page .bg-card {
  background: #fffdf9;
}

.new-look-page .rounded-lg,
.new-look-page .rounded-md {
  border-radius: 4px;
}

.new-look-page .icon,
.new-look-page .icon-solid {
  color: var(--over-ochre);
}

.new-look-page .fill-primary {
  fill: var(--over-ochre);
}

.new-look-page > .min-h-screen > header {
  position: sticky;
  top: 0;
  z-index: 50;
  border-bottom: 0;
  background: var(--over-brown);
  color: var(--over-cream);
  backdrop-filter: none;
}

.new-look-page > .min-h-screen > header nav {
  width: min(100%, 1200px);
  max-width: none;
  margin: 0 auto;
  padding: 34px clamp(24px, 6vw, 78px);
}

.new-look-page > .min-h-screen > header .h-16 {
  min-height: 68px;
  height: auto;
  align-items: flex-start;
  gap: 32px;
}

.new-look-page > .min-h-screen > header span[style*="font-heading"] {
  color: var(--over-cream);
  font-size: var(--site-brand-size);
  font-weight: 600;
  line-height: 1;
  text-transform: uppercase;
}

.new-look-page > .min-h-screen > header .hidden.lg\:flex {
  align-items: center;
  padding-top: 16px;
  gap: clamp(18px, 3vw, 38px);
}

.new-look-page > .min-h-screen > header .hidden[class*="lg:flex"] {
  align-items: center;
  padding-top: 16px;
  gap: clamp(18px, 3vw, 38px);
}

.new-look-page > .min-h-screen > header .hidden[class*="lg:flex"] > * + * {
  margin-left: 0;
}

.new-look-page > .min-h-screen > header a {
  text-decoration: none;
}

.new-look-page > .min-h-screen > header .hidden.lg\:flex a,
.new-look-page > .min-h-screen > header button {
  padding: 0;
  background: transparent;
  color: var(--over-cream);
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1;
}

.new-look-page > .min-h-screen > header .hidden.lg\:flex a:hover,
.new-look-page > .min-h-screen > header .hidden.lg\:flex a[aria-current="page"],
.new-look-page > .min-h-screen > header button:hover {
  background: transparent;
  color: var(--over-ochre);
}

.new-look-page .mobile-menu-panel {
  width: 220px;
  overflow: hidden;
  border: 1px solid rgb(247 244 239 / 0.18);
  background: var(--over-brown);
  box-shadow: 0 18px 36px rgb(21 17 10 / 0.18);
}

.new-look-page .mobile-menu-panel a {
  color: var(--over-cream);
  background: transparent;
}

.new-look-page .mobile-menu-panel a:hover,
.new-look-page .mobile-menu-panel a[aria-current="page"] {
  color: var(--over-ochre);
  background: rgb(247 244 239 / 0.08);
}

.new-look-page > .min-h-screen > footer {
  margin-top: 0;
  border-top: 0;
  background: var(--over-brown);
  color: var(--over-cream);
}

.new-look-page > .min-h-screen > footer h2 {
  color: var(--over-gold);
  font-family: var(--font-heading);
  font-size: 1.25rem;
}

.new-look-page > .min-h-screen > footer a,
.new-look-page > .min-h-screen > footer p,
.new-look-page > .min-h-screen > footer span {
  color: rgb(247 244 239 / 0.78);
}

.new-look-page > .min-h-screen > footer a:hover {
  color: var(--over-ochre);
}

.new-look-page > .min-h-screen > footer .border-t {
  border-color: rgb(247 244 239 / 0.18);
}

.ervaringen-page main {
  background: var(--over-cream);
}

.ervaringen-hero {
  position: relative;
  height: clamp(330px, 44vw, 570px);
  overflow: hidden;
  background: var(--over-ink);
}

.ervaringen-hero picture,
.ervaringen-hero img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}

.ervaringen-hero img {
  display: block;
  object-fit: cover;
  object-position: center center;
}

.ervaringen-intro {
  padding: clamp(76px, 9vw, 118px) 0;
  background: var(--over-gold);
}

.ervaringen-intro h1 {
  color: var(--over-brown);
  font-family: var(--font-heading);
  font-size: clamp(2.3rem, 5vw, 3.2rem);
  line-height: 1.05;
  font-weight: 600;
  letter-spacing: 0;
}

.ervaringen-intro p {
  max-width: 760px;
  margin-inline: auto;
  color: rgb(95 86 70 / 0.96);
  font-size: clamp(1.08rem, 1.6vw, 1.35rem);
  line-height: 1.45;
}

.ervaringen-reviews,
.ervaringen-special {
  padding: clamp(70px, 8vw, 110px) 0;
  background: var(--over-cream);
}

.ervaringen-reviews .bg-card,
.ervaringen-special .bg-card {
  border: 1px solid rgb(113 88 37 / 0.12);
  background: #fffdf9;
  box-shadow: 0 4px 6px rgb(0 0 0 / 0.05), 0 10px 20px rgb(0 0 0 / 0.08), 0 20px 40px rgb(0 0 0 / 0.06);
}

.ervaringen-reviews .bg-card p,
.ervaringen-special .bg-card p {
  color: rgb(95 86 70 / 0.95);
}

.ervaringen-stats {
  padding: clamp(58px, 7vw, 86px) 0;
  background: var(--over-gold);
}

.ervaringen-stats .text-5xl {
  color: var(--over-brown);
  font-family: var(--font-heading);
}

.ervaringen-cta {
  padding: clamp(70px, 8vw, 104px) 0;
  background: var(--over-brown);
  color: var(--over-cream);
}

.ervaringen-cta h2 {
  color: var(--over-cream);
}

.ervaringen-cta p {
  color: rgb(247 244 239 / 0.84);
}

.ervaringen-cta a,
.legal-look-page .site-legal .prose > div:last-child a {
  min-height: 0;
  height: auto;
  padding: 0.82rem 1.9rem;
  border-radius: 999px;
  background: var(--over-ochre);
  color: var(--over-brown);
  box-shadow: none;
  font-size: 0.78rem;
  font-weight: 800;
  text-transform: uppercase;
}

.ervaringen-cta a:hover,
.legal-look-page .site-legal .prose > div:last-child a:hover {
  background: #f0bd18;
  color: var(--over-brown);
}

.legal-look-page main.site-legal {
  background: var(--over-cream);
}

.legal-look-page .site-legal > section:first-of-type {
  padding: clamp(80px, 10vw, 130px) 0;
  background: var(--over-brown);
}

.legal-look-page .site-legal > section:first-of-type svg {
  display: none;
}

.legal-look-page .site-legal > section:first-of-type h1 {
  color: var(--over-cream);
  font-size: var(--site-hero-title-size);
  line-height: 1;
}

.legal-look-page .site-legal > section:first-of-type p {
  color: rgb(247 244 239 / 0.82);
}

.legal-look-page .site-legal > section:nth-of-type(2) {
  padding: clamp(64px, 8vw, 110px) 0;
  background: var(--over-cream);
}

.legal-look-page .site-legal .prose {
  color: var(--over-ink);
}

.legal-look-page .site-legal .prose > div {
  margin-bottom: clamp(28px, 4vw, 46px);
  padding: clamp(24px, 4vw, 38px);
  border-left: 4px solid var(--over-gold);
  background: #fffdf9;
  box-shadow: 0 4px 6px rgb(0 0 0 / 0.03), 0 14px 28px rgb(0 0 0 / 0.06);
}

.legal-look-page .site-legal .prose h2 {
  color: var(--over-brown);
  line-height: 1.08;
}

.legal-look-page .site-legal .prose p,
.legal-look-page .site-legal .prose li {
  color: rgb(95 86 70 / 0.98);
  line-height: 1.7;
}

.legal-look-page .site-legal .prose strong {
  color: var(--over-brown);
}

.legal-look-page .site-legal .prose a:not([href="/contact/"]) {
  color: var(--over-brown);
  font-weight: 700;
}

.legal-look-page .site-legal .prose > div:last-child {
  border-left: 0;
  background: var(--over-gold);
  text-align: center;
}

.service-look-page main {
  background: var(--over-cream);
}

.service-look-page main > section:first-of-type {
  background: var(--over-brown);
  color: var(--over-cream);
}

.service-look-page main > section:first-of-type svg {
  display: none;
}

.service-look-page main > section:first-of-type p,
.service-look-page main > section:first-of-type cite {
  color: rgb(247 244 239 / 0.86);
}

.service-look-page main > section:not(:first-of-type) {
  background: var(--over-cream);
}

.service-look-page main > section:nth-of-type(3),
.service-look-page main > section:nth-of-type(5) {
  background: var(--over-gold);
}

.service-look-page main > section:last-of-type {
  background: var(--over-brown);
  color: var(--over-cream);
}

.service-look-page main > section:last-of-type h2,
.service-look-page main > section:last-of-type p {
  color: currentColor;
}

.service-look-page .bg-card {
  border: 1px solid rgb(113 88 37 / 0.12);
  box-shadow: 0 4px 6px rgb(0 0 0 / 0.03), 0 14px 28px rgb(0 0 0 / 0.06);
}

.service-look-page .bg-gradient-to-r {
  background: var(--over-brown);
}

@media (max-width: 900px) {
  .new-look-page > .min-h-screen > header nav {
    padding: 26px clamp(22px, 6vw, 44px);
  }

  .new-look-page > .min-h-screen > header .h-16 {
    min-height: 58px;
  }

  .new-look-page > .min-h-screen > header span[style*="font-heading"] {
    font-size: clamp(1.7rem, 7vw, 2.35rem);
  }
}

@media (max-width: 560px) {
  .legal-look-page .site-legal > section:first-of-type h1 {
    font-size: var(--site-hero-title-size);
  }

  .legal-look-page .site-legal .prose > div {
    padding: 24px;
  }
}

.over-mij-page {
  --over-brown: #715825;
  --over-cream: #f7f4ef;
  --over-gold: #c2a878;
  --over-ochre: #e5b313;
  --over-ink: #15110a;
  --over-muted: #5f5646;
  background: var(--over-cream);
  color: var(--over-ink);
}

.over-mij-page h1,
.over-mij-page h2,
.over-mij-page h3,
.over-brand {
  font-family: var(--font-heading);
}

.over-header {
  position: sticky;
  top: 0;
  z-index: 50;
  background: var(--over-brown);
  color: var(--over-cream);
}

.over-nav {
  width: min(100%, 1200px);
  min-height: 136px;
  margin: 0 auto;
  padding: 34px clamp(24px, 6vw, 78px);
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 32px;
}

.over-brand {
  font-size: var(--site-brand-size);
  font-weight: 600;
  line-height: 1;
  color: var(--over-cream);
  letter-spacing: 0;
  text-transform: uppercase;
}

.over-nav-links {
  display: flex;
  align-items: center;
  gap: clamp(18px, 3vw, 38px);
  padding-top: 16px;
  font-size: 0.875rem;
  font-weight: 600;
}

.over-nav-links a,
.over-mobile-panel a {
  color: var(--over-cream);
  transition: color 180ms ease;
}

.over-nav-links a:hover,
.over-nav-links a[aria-current="page"],
.over-mobile-panel a:hover,
.over-mobile-panel a[aria-current="page"] {
  color: var(--over-ochre);
}

.over-mobile {
  display: none;
  position: relative;
}

.over-menu-button {
  color: var(--over-cream);
  font-weight: 700;
  padding: 10px 0;
}

.over-mobile-panel {
  position: absolute;
  right: 0;
  top: 48px;
  min-width: 220px;
  padding: 14px;
  display: grid;
  gap: 10px;
  background: var(--over-brown);
  border: 1px solid rgb(247 244 239 / 0.22);
}

.over-mobile-panel[hidden] {
  display: none !important;
}

.about-editorial {
  background: var(--over-cream);
}

.about-hero {
  position: relative;
  background: var(--over-brown);
  color: var(--over-cream);
  overflow: hidden;
}

.about-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background: rgb(21 17 10 / 0.18);
}

.about-page-title {
  margin-bottom: 32px;
  color: var(--over-brown);
  font-family: var(--font-heading);
  font-size: var(--site-page-title-size);
  line-height: 1.05;
  font-weight: 600;
  letter-spacing: 0;
}

.about-hero__image {
  width: 100%;
  height: clamp(420px, 48vw, 680px);
  overflow: hidden;
}

.about-hero__image img,
.about-photo img,
.about-note img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: grayscale(1) contrast(1.08);
}

.about-hero__image img {
  object-fit: cover;
  object-position: center 58%;
}

.about-band {
  position: relative;
  min-height: 420px;
  padding: clamp(58px, 8vw, 108px) clamp(24px, 7vw, 92px);
  overflow: hidden;
}

.about-band--gold {
  background: var(--over-gold);
}

.about-band--cream {
  background: var(--over-cream);
}

.about-collage {
  display: grid;
  grid-template-columns: minmax(180px, 250px) minmax(0, 610px);
  align-items: center;
  justify-content: center;
  column-gap: clamp(90px, 13vw, 210px);
}

.about-kicker {
  margin-bottom: 0.9rem;
  color: currentColor;
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0;
  text-transform: uppercase;
}

.about-text {
  max-width: 610px;
  position: relative;
  z-index: 2;
}

.about-text--right {
  margin-left: auto;
}

.about-text--wide {
  max-width: 850px;
  margin: 0 auto;
}

.about-text h2 {
  color: var(--over-brown);
  font-size: clamp(2rem, 4.5vw, 4.8rem);
  line-height: 0.98;
  font-weight: 600;
  letter-spacing: 0;
}

.about-text p {
  margin-top: 1.15rem;
  color: var(--over-ink);
  font-size: clamp(1rem, 1.3vw, 1.14rem);
  line-height: 1.75;
}

.about-photo {
  position: relative;
  z-index: 1;
  background: #fff;
  padding: 10px;
  box-shadow: 0 18px 38px rgb(21 17 10 / 0.16);
}

.about-photo--left {
  position: absolute;
  left: clamp(36px, 10vw, 140px);
  top: clamp(72px, 10vw, 120px);
}

.about-collage .about-photo--left {
  position: relative;
  inset: auto;
}

.about-photo--small {
  width: clamp(170px, 20vw, 270px);
  aspect-ratio: 3 / 4;
}

.about-photo--medium {
  width: clamp(170px, 20vw, 270px);
  min-width: 0;
  aspect-ratio: 3 / 4;
}

.about-photo--note {
  width: clamp(140px, 18vw, 230px);
  aspect-ratio: 4 / 5;
  position: relative;
  right: auto;
  bottom: auto;
}

.about-tilt-left {
  transform: rotate(-6deg);
}

.about-tilt-right {
  transform: rotate(5deg);
}

.about-note-section {
  min-height: 540px;
  margin-bottom: clamp(44px, 5vw, 76px);
  display: grid;
  grid-template-columns: minmax(0, 540px) minmax(420px, 590px);
  align-items: center;
  justify-content: center;
  column-gap: clamp(38px, 5vw, 76px);
}

.about-note-copy h2 {
  font-size: clamp(2.15rem, 3.9vw, 4.15rem);
}

.about-note-collage {
  position: relative;
  width: min(100%, 520px);
  min-height: 390px;
}

.about-note {
  position: absolute;
  left: 0;
  top: 64px;
  z-index: 1;
  width: 350px;
  margin-left: 0;
  padding: 0;
  background: transparent;
  box-shadow: none;
  transform: rotate(-1deg);
}

.about-note img {
  display: block;
  height: auto;
  object-fit: contain;
}

.about-note-callout {
  position: absolute;
  top: 70px;
  left: 382px;
  right: auto;
  z-index: 3;
  color: var(--over-brown);
  font-family: "Bradley Hand", "Segoe Print", "Comic Sans MS", cursive;
  font-size: clamp(0.95rem, 1.6vw, 1.25rem);
  line-height: 1.45;
  transform: rotate(9deg);
}

.about-note-callout::after {
  content: "";
  position: absolute;
  right: 25px;
  bottom: -43px;
  width: 28px;
  height: 56px;
  border-right: 2px solid currentColor;
  border-bottom: 0;
  border-radius: 50%;
  transform: rotate(-19deg);
}

.about-note-callout::before {
  content: "";
  position: absolute;
  right: 24px;
  bottom: -45px;
  width: 9px;
  height: 9px;
  border-right: 1px solid currentColor;
  border-bottom: 1px solid currentColor;
  transform: rotate(95deg);
}

.about-note-collage .about-photo--note {
  position: absolute;
  top: 210px;
  left: 235px;
  right: auto;
  bottom: auto;
  z-index: 2;
  width: 220px;
}

.about-split {
  display: grid;
  grid-template-columns: minmax(260px, 430px) minmax(0, 650px);
  align-items: center;
  justify-content: center;
  gap: clamp(42px, 7vw, 112px);
}

.about-split--reverse {
  grid-template-columns: minmax(0, 650px) minmax(260px, 430px);
}

.about-body-compass {
  text-align: center;
}

.about-body-compass .about-text p {
  max-width: 760px;
  margin-left: auto;
  margin-right: auto;
}

.about-heart {
  display: grid;
  grid-template-columns: minmax(0, 620px);
  align-items: center;
  justify-content: center;
  gap: clamp(40px, 8vw, 120px);
  min-height: 430px;
  text-align: center;
}

.about-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 54px;
  margin-top: 2rem;
  padding: 0 2rem;
  border-radius: 999px;
  background: var(--over-ochre);
  color: var(--over-brown);
  font-size: 0.88rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0;
  box-shadow: 0 12px 26px rgb(113 88 37 / 0.18);
  transition: transform 180ms ease, box-shadow 180ms ease;
}

.about-button:hover {
  transform: translateY(-2px);
  box-shadow: 0 16px 34px rgb(113 88 37 / 0.22);
}

.over-footer {
  background: var(--over-brown);
  color: var(--over-cream);
}

.over-footer__inner {
  width: min(100%, 1200px);
  margin: 0 auto;
  padding: 58px clamp(24px, 6vw, 78px);
  display: grid;
  grid-template-columns: repeat(3, minmax(180px, 230px));
  justify-content: center;
  gap: clamp(64px, 9vw, 130px);
}

.over-footer h2 {
  margin-bottom: 1rem;
  color: var(--over-ochre);
  font-size: 1.05rem;
}

.over-footer a,
.over-footer p {
  display: block;
  margin-top: 0.55rem;
  color: rgb(247 244 239 / 0.82);
  font-size: 0.92rem;
  line-height: 1.6;
}

.over-footer a:hover {
  color: var(--over-ochre);
}

.over-footer__bottom {
  border-top: 1px solid rgb(247 244 239 / 0.16);
  padding: 24px;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 14px;
  flex-wrap: wrap;
  text-align: center;
}

.over-footer__bottom p,
.over-footer__bottom a {
  margin: 0;
  font-size: 0.85rem;
}

@media (max-width: 900px) {
  .over-nav {
    min-height: 104px;
    align-items: center;
  }

  .over-nav-links {
    display: none;
  }

  .over-mobile {
    display: block;
  }

  .about-band {
    min-height: 0;
  }

  .about-collage {
    display: grid;
    grid-template-columns: 1fr;
    gap: 38px;
  }

  .about-collage .about-text,
  .about-split > .about-text {
    order: 1;
  }

  .about-collage__photo,
  .about-split > .about-photo {
    order: 2;
    justify-self: center;
    margin-top: 10px;
  }

  .about-note-section {
    grid-template-columns: 1fr;
    gap: 32px;
  }

  .about-photo--left,
  .about-photo--note {
    position: relative;
    inset: auto;
  }

  .about-text--right {
    margin-left: 0;
  }

  .about-note {
    top: 64px;
    width: min(72vw, 360px);
    margin-left: 0;
  }

  .about-note-collage {
    min-height: 360px;
    margin-inline: auto;
  }

  .about-note-callout {
    right: 4%;
    top: 18px;
    bottom: auto;
  }

  .about-note-collage .about-photo--note {
    position: absolute;
    top: 150px;
    right: 3%;
    bottom: auto;
    width: min(38vw, 170px);
  }

  .about-split,
  .about-split--reverse,
  .about-heart {
    grid-template-columns: 1fr;
  }

  .about-split--reverse .about-photo {
    order: 2;
  }

  .about-photo--small,
  .about-photo--medium {
    width: min(54vw, 210px);
  }

  .about-split .about-photo--small img {
    object-position: center 72%;
  }

  .over-footer__inner {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 32px;
  }
}

@media (max-width: 560px) {
  .over-nav {
    padding: 26px 20px;
  }

  .over-brand {
    font-size: var(--site-brand-size);
  }

  .about-hero__image {
    height: 360px;
  }

  .about-band {
    padding: 52px 22px;
  }

  .about-note-section {
    padding-bottom: 52px;
  }

  .about-note-collage {
    min-height: 330px;
  }

  .about-note {
    top: 62px;
    width: min(74vw, 320px);
  }

  .about-note-callout {
    display: none;
  }

  .about-photo--small,
  .about-photo--medium,
  .about-photo--note {
    width: 185px;
  }

  .over-footer__inner {
    grid-template-columns: 1fr;
    justify-items: center;
    text-align: center;
  }
}

.funeral-page {
  background: var(--over-cream);
}

.funeral-editorial {
  background: var(--over-cream);
}

.funeral-narrow {
  width: min(100%, 820px);
  margin: 0 auto;
  padding: 0 clamp(24px, 6vw, 78px);
  text-align: center;
}

.funeral-hero {
  position: relative;
  min-height: clamp(360px, 54vw, 620px);
  display: grid;
  place-items: center;
  overflow: hidden;
  background: var(--over-ink);
}

.funeral-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  background: rgb(21 17 10 / 0.34);
}

.funeral-hero img {
  position: absolute;
  inset: -3px;
  width: calc(100% + 6px);
  height: calc(100% + 6px);
  object-fit: cover;
  object-position: center 58%;
  filter: grayscale(1) contrast(1.08);
}

.funeral-hero__copy {
  position: relative;
  z-index: 1;
  max-width: 620px;
  padding: 24px;
  color: var(--over-ochre);
  font-size: clamp(1.05rem, 2.1vw, 1.55rem);
  font-weight: 800;
  line-height: 1.35;
  text-align: center;
}

.funeral-hero__copy p + p {
  margin-top: 0.2rem;
}

.funeral-intro {
  padding: clamp(58px, 8vw, 96px) 0;
  background: var(--over-brown);
  color: var(--over-cream);
}

.funeral-intro h1,
.funeral-insurance h2,
.funeral-love h2,
.funeral-inspiration h2 {
  color: currentColor;
  font-size: clamp(2.15rem, 5vw, 4.4rem);
  line-height: 1;
  font-weight: 600;
  letter-spacing: 0;
}

.funeral-intro h1 {
  font-size: var(--site-hero-title-size);
}

.funeral-intro h1,
.legal-look-page .site-legal > section:first-of-type h1,
.service-look-page main > section:first-of-type h1 {
  color: var(--over-ochre);
  font-family: var(--font-heading);
  font-weight: 600;
  line-height: 1.05;
  letter-spacing: 0;
  overflow-wrap: anywhere;
}

@media (min-width: 901px) {
  .contact-page main h2,
  .blog-page main h2,
  .over-mij-page main h2,
  .home-intro h1,
  .funeral-intro h1,
  .legal-look-page .site-legal > section:first-of-type h1,
  .service-look-page main > section:first-of-type h1 {
    font-size: 3.2rem;
  }
}

@media (max-width: 560px) {
  .home-page,
  .contact-page,
  .blog-page,
  .over-mij-page,
  .new-look-page {
    --site-brand-size: clamp(1.7rem, 7vw, 2.35rem);
    --site-hero-title-size: clamp(1.8rem, 9vw, 2.65rem);
  }
}

.funeral-intro p,
.funeral-soft p,
.funeral-insurance p,
.funeral-love p,
.funeral-soil-quote p,
.funeral-inspiration p {
  margin-top: 1.25rem;
  font-size: clamp(1rem, 1.25vw, 1.12rem);
  line-height: 1.75;
}

.funeral-actions {
  display: flex;
  justify-content: center;
  gap: 18px;
  flex-wrap: wrap;
  margin-top: 2rem;
}

.funeral-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 38px;
  min-width: 126px;
  padding: 0 1.45rem;
  border-radius: 999px;
  background: var(--over-ochre);
  color: var(--over-brown);
  font-size: 0.76rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0;
  box-shadow: 0 12px 26px rgb(21 17 10 / 0.14);
  transition: transform 180ms ease, box-shadow 180ms ease;
}

.funeral-button:hover {
  transform: translateY(-2px);
  box-shadow: 0 16px 32px rgb(21 17 10 / 0.18);
}

.funeral-soft {
  padding: clamp(62px, 8vw, 104px) 0;
  background: #ede6de;
}

.funeral-options {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-items: stretch;
  width: min(100%, 1200px);
  margin: 0 auto;
  padding: 0 clamp(24px, 6vw, 78px);
  background: var(--over-cream);
}

.funeral-option {
  min-height: 520px;
  padding: clamp(34px, 4vw, 54px) clamp(22px, 3vw, 34px);
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}

.funeral-option--cream {
  background: #f2f2f2;
  color: var(--over-ink);
}

.funeral-option--gold {
  background: #c4b08f;
  color: var(--over-ink);
}

.funeral-option--brown {
  background: var(--over-brown);
  color: var(--over-cream);
}

.funeral-option h2 {
  max-width: 310px;
  color: currentColor;
  font-size: clamp(1.55rem, 2.5vw, 2.2rem);
  line-height: 1.05;
  font-weight: 600;
}

.funeral-option h3 {
  margin-top: 1.25rem;
  font-size: 0.8rem;
  font-weight: 800;
  text-transform: uppercase;
}

.funeral-option p,
.funeral-option li {
  font-size: 0.94rem;
  line-height: 1.65;
}

.funeral-option p {
  margin-top: 1rem;
}

.funeral-option ul {
  margin: 1.15rem 0 0;
  padding: 0;
  list-style-position: inside;
}

.funeral-option li + li {
  margin-top: 0.45rem;
}

.funeral-price {
  margin-top: auto !important;
  font-weight: 800;
}

.funeral-option .funeral-button {
  margin-top: 1.2rem;
}

.funeral-insurance {
  padding: clamp(62px, 8vw, 104px) 0;
  background: var(--over-gold);
  color: var(--over-brown);
}

.funeral-insurance p {
  color: var(--over-ink);
}

.funeral-contact {
  font-weight: 700;
}

.funeral-love {
  padding: clamp(58px, 7vw, 88px) 0;
  background: var(--over-ochre);
  color: var(--over-brown);
}

.funeral-love blockquote,
.funeral-soil-quote blockquote {
  margin: 0;
}

.funeral-love a {
  display: inline-block;
  margin-top: 1rem;
  color: var(--over-brown);
  font-weight: 700;
}

.funeral-soil-quote {
  min-height: 360px;
  padding: clamp(62px, 8vw, 104px) 0;
  display: grid;
  place-items: center;
  background:
    linear-gradient(rgb(21 17 10 / 0.68), rgb(21 17 10 / 0.68)),
    url("/assets/images/uitvaartbegeleiding/hand-met-aarde.jpg") center 58% / cover no-repeat,
    var(--over-ink);
  color: var(--over-cream);
}

.funeral-soil-quote p {
  font-weight: 700;
}

.funeral-soil-quote footer {
  margin-top: 1.3rem;
  font-size: 0.8rem;
  font-weight: 800;
  letter-spacing: 0;
}

.funeral-inspiration {
  padding: clamp(64px, 8vw, 110px) 0;
  background: var(--over-brown);
  color: var(--over-cream);
}

.funeral-inspiration__grid {
  width: min(100%, 1040px);
  margin: clamp(40px, 6vw, 70px) auto 0;
  padding: 0 clamp(24px, 6vw, 78px);
  display: grid;
  gap: clamp(46px, 6vw, 78px);
}

.funeral-inspiration__row {
  display: grid;
  grid-template-columns: minmax(120px, 220px) minmax(0, 520px);
  justify-content: center;
  align-items: center;
  gap: clamp(36px, 6vw, 80px) clamp(42px, 7vw, 96px);
}

.funeral-inspiration__row--reverse {
  grid-template-columns: minmax(0, 520px) minmax(120px, 220px);
}

.funeral-inspiration__text {
  text-align: center;
}

.funeral-inspiration__text a {
  display: inline-block;
  margin-top: 1rem;
  color: var(--over-cream);
  font-weight: 700;
}

.funeral-inspiration__media {
  display: block;
  width: clamp(130px, 16vw, 190px);
  aspect-ratio: 3 / 4;
  justify-self: center;
  overflow: hidden;
  background: var(--over-gold);
  box-shadow: 0 18px 38px rgb(21 17 10 / 0.18);
  transform: rotate(-6deg);
}

.funeral-inspiration__media img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.funeral-inspiration__media--contain img {
  object-fit: contain;
}

.funeral-inspiration__media--book {
  width: clamp(112px, 13vw, 160px);
  aspect-ratio: 159 / 250;
}

.funeral-inspiration__media--square {
  width: clamp(128px, 15vw, 180px);
  aspect-ratio: 1 / 1;
  transform: rotate(6deg);
}

.funeral-inspiration__media--wide {
  width: clamp(180px, 22vw, 270px);
  aspect-ratio: 55 / 36;
  transform: rotate(-4deg);
}

.funeral-inspiration__media--veraarden {
  width: clamp(116px, 14vw, 166px);
  aspect-ratio: 653 / 900;
  transform: rotate(7deg);
}

@media (max-width: 900px) {
  .funeral-hero {
    min-height: 420px;
  }

  .funeral-options {
    grid-template-columns: 1fr;
    padding: 0;
  }

  .funeral-option {
    min-height: 0;
    padding: 46px 26px;
  }

  .funeral-inspiration__grid {
    width: min(100%, 660px);
    gap: 54px;
  }

  .funeral-inspiration__row,
  .funeral-inspiration__row--reverse {
    grid-template-columns: 1fr;
    gap: 24px;
  }

  .funeral-inspiration__text {
    order: 1;
  }

  .funeral-inspiration__media {
    order: 2;
    width: min(64vw, 220px);
  }

  .funeral-inspiration__media--book,
  .funeral-inspiration__media--veraarden {
    width: min(52vw, 180px);
  }

  .funeral-inspiration__media--wide {
    width: min(78vw, 300px);
  }
}

@media (max-width: 560px) {
  .funeral-hero {
    min-height: 360px;
  }

  .funeral-hero__copy {
    font-size: 1rem;
  }

  .funeral-actions {
    gap: 12px;
  }
}

/* Site-wide template normalization */
:root {
  --over-brown: #715825;
  --over-cream: #f7f4ef;
  --over-gold: #c2a878;
  --over-ochre: #e5b313;
  --over-ink: #15110a;
  --site-brand-size: clamp(2rem, 4vw, 3rem);
  --site-page-title-size: clamp(2.3rem, 5vw, 3.2rem);
}

.home-header,
.contact-header,
.over-header,
.new-look-page > .min-h-screen > header {
  position: sticky;
  top: 0;
  z-index: 50;
  border-bottom: 0;
  background: var(--over-brown);
  color: var(--over-cream);
  backdrop-filter: none;
}

.home-nav,
.contact-nav,
.over-nav {
  width: 100%;
  max-width: none;
  min-height: 136px;
  margin: 0;
  padding: 34px clamp(24px, 4vw, 56px);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 32px;
}

.new-look-page > .min-h-screen > header nav {
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 34px clamp(24px, 4vw, 56px);
}

.new-look-page > .min-h-screen > header .h-16 {
  min-height: 68px;
  height: auto;
  align-items: center;
  justify-content: space-between;
  gap: 32px;
}

.home-brand,
.contact-brand,
.over-brand,
.new-look-page > .min-h-screen > header span[style*="font-heading"] {
  color: var(--over-cream);
  font-family: var(--font-heading);
  font-size: var(--site-brand-size);
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0;
  text-transform: uppercase;
  white-space: nowrap;
}

.home-nav-links,
.contact-nav-links,
.over-nav-links,
.new-look-page > .min-h-screen > header .hidden.lg\:flex,
.new-look-page > .min-h-screen > header .hidden[class*="lg:flex"] {
  margin-left: auto;
  padding-top: 0;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: clamp(22px, 3vw, 42px);
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.25;
}

.new-look-page > .min-h-screen > header .hidden[class*="lg:flex"] > * + * {
  margin-left: 0;
}

.home-nav-links a,
.contact-nav-links a,
.over-nav-links a,
.new-look-page > .min-h-screen > header .hidden.lg\:flex a,
.new-look-page > .min-h-screen > header .hidden[class*="lg:flex"] a {
  display: inline-flex;
  align-items: center;
  padding: 0;
  border-radius: 0;
  background: transparent;
  color: var(--over-cream);
  line-height: 1.25;
  text-decoration: none;
}

.home-nav-links a:hover,
.home-nav-links a[aria-current="page"],
.contact-nav-links a:hover,
.contact-nav-links a[aria-current="page"],
.over-nav-links a:hover,
.over-nav-links a[aria-current="page"],
.new-look-page > .min-h-screen > header .hidden.lg\:flex a:hover,
.new-look-page > .min-h-screen > header .hidden.lg\:flex a[aria-current="page"],
.new-look-page > .min-h-screen > header .hidden[class*="lg:flex"] a:hover,
.new-look-page > .min-h-screen > header .hidden[class*="lg:flex"] a[aria-current="page"] {
  background: transparent;
  color: var(--over-ochre);
}

.home-menu-button,
.contact-menu-button,
.over-menu-button,
.new-look-page > .min-h-screen > header button {
  color: var(--over-cream);
  font-weight: 700;
  line-height: 1;
}

.home-mobile-panel,
.contact-mobile-panel,
.over-mobile-panel,
.new-look-page .mobile-menu-panel {
  width: 220px;
  overflow: hidden;
  border: 1px solid rgb(247 244 239 / 0.18);
  background: var(--over-brown);
  box-shadow: 0 18px 36px rgb(21 17 10 / 0.18);
}

.home-mobile-panel a,
.contact-mobile-panel a,
.over-mobile-panel a,
.new-look-page .mobile-menu-panel a {
  color: var(--over-cream);
  background: transparent;
}

.home-mobile-panel a:hover,
.home-mobile-panel a[aria-current="page"],
.contact-mobile-panel a:hover,
.contact-mobile-panel a[aria-current="page"],
.over-mobile-panel a:hover,
.over-mobile-panel a[aria-current="page"],
.new-look-page .mobile-menu-panel a:hover,
.new-look-page .mobile-menu-panel a[aria-current="page"] {
  color: var(--over-ochre);
  background: rgb(247 244 239 / 0.08);
}

.home-hero__quote,
.blog-hero__quote,
.funeral-hero__copy,
.rouw-hero__quote {
  color: var(--over-ochre);
  font-family: Inter, sans-serif;
  font-size: clamp(1.25rem, 2.35vw, 1.9rem);
  font-weight: 800;
  line-height: 1.25;
  letter-spacing: 0;
  text-align: center;
}

.home-hero__quote {
  margin: 0;
}

.home-hero__quote span,
.rouw-hero__quote span {
  display: block;
  margin-top: 0.25rem;
}

.funeral-hero__copy p {
  color: inherit;
  font: inherit;
  line-height: inherit;
}

.rouw-hero {
  position: relative;
  min-height: clamp(430px, 48vw, 620px);
  display: grid;
  place-items: center;
  overflow: hidden;
  background: var(--over-ink);
}

.rouw-hero picture,
.rouw-hero img {
  width: 100%;
  height: 100%;
}

.rouw-hero img {
  object-fit: cover;
}

.rouw-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background: rgb(21 17 10 / 0.34);
}

.rouw-hero__copy {
  position: relative;
  z-index: 2;
  width: min(100%, 820px);
  padding: 24px clamp(24px, 6vw, 78px);
}

.rouw-hero__quote {
  margin: 0;
}

.service-title-section {
  padding: clamp(64px, 8vw, 104px) 0;
  background: var(--over-brown);
  color: var(--over-cream);
}

.service-title-section p {
  max-width: 780px;
  margin-inline: auto;
  color: rgb(247 244 239 / 0.86);
  font-size: clamp(1.04rem, 1.5vw, 1.28rem);
  line-height: 1.55;
}

.home-intro h1,
.contact-intro h1,
.blog-intro h1,
.about-page-title,
.ervaringen-intro h1,
.funeral-intro h1,
.service-title-section h1,
.service-look-page main > section:first-of-type h1,
.legal-look-page .site-legal > section:first-of-type h1,
.site-thankyou h1 {
  margin-bottom: 32px;
  font-family: var(--font-heading);
  font-size: var(--site-page-title-size);
  line-height: 1.05;
  font-weight: 600;
  letter-spacing: 0;
  overflow-wrap: anywhere;
}

.home-intro h1 {
  margin-left: 0;
}

.blog-intro h1 {
  color: var(--blog-text);
}

.home-copy h2,
.about-text h2,
.contact-grid h2,
.contact-reachability h2,
.blog-list-section h2,
.ervaringen-special h2,
.ervaringen-cta h2,
.funeral-insurance h2,
.funeral-love h2,
.funeral-inspiration h2,
.home-practical h2,
.home-rates h2,
.legal-look-page .site-legal .prose h2,
.service-look-page main > section:not(:first-of-type) h2 {
  margin-bottom: 32px;
  font-family: var(--font-heading);
  font-size: clamp(2rem, 4vw, 3.2rem);
  line-height: 1.08;
  font-weight: 600;
  letter-spacing: 0;
}

.blog-hero__quote {
  color: #715825;
}

.over-footer,
.new-look-page > .min-h-screen > footer {
  margin-top: 0;
  border-top: 1px solid rgb(247 244 239 / 0.16);
  background: var(--over-brown);
  color: var(--over-cream);
}

.over-footer__bottom,
.new-look-page > .min-h-screen > footer .border-t {
  border-top-color: rgb(247 244 239 / 0.16);
}

@media (min-width: 901px) {
  body main h2 {
    font-size: 2.4rem !important;
  }

  .funeral-page main .funeral-option h2 {
    font-size: 2rem !important;
  }

  .blog-page .blog-hero__quote {
    margin-left: 400px;
  }
}

@media (max-width: 900px) {
  .home-nav,
  .contact-nav,
  .over-nav {
    min-height: 104px;
    padding: 26px clamp(22px, 6vw, 44px);
  }

  .new-look-page > .min-h-screen > header nav {
    padding: 26px clamp(22px, 6vw, 44px);
  }

  .new-look-page > .min-h-screen > header .h-16 {
    min-height: 58px;
  }

  .home-nav-links,
  .contact-nav-links,
  .over-nav-links,
  .new-look-page > .min-h-screen > header .hidden.lg\:flex,
  .new-look-page > .min-h-screen > header .hidden[class*="lg:flex"] {
    display: none;
  }

  .home-mobile,
  .contact-mobile,
  .over-mobile {
    display: block;
  }
}

@media (max-width: 560px) {
  :root {
    --site-brand-size: clamp(1.7rem, 7vw, 2.35rem);
    --site-page-title-size: clamp(1.8rem, 8.5vw, 2.45rem);
  }

  .home-nav,
  .contact-nav,
  .over-nav {
    padding: 24px 20px;
  }

  .home-hero__quote,
  .blog-hero__quote,
  .funeral-hero__copy,
  .rouw-hero__quote {
    font-size: clamp(0.95rem, 5vw, 1.15rem);
  }

  .rouw-hero {
    min-height: 360px;
  }

  .home-copy h2,
  .about-text h2,
  .contact-grid h2,
  .contact-reachability h2,
  .blog-list-section h2,
  .ervaringen-special h2,
  .ervaringen-cta h2,
  .funeral-insurance h2,
  .funeral-love h2,
  .funeral-inspiration h2,
  .home-practical h2,
  .home-rates h2,
  .legal-look-page .site-legal .prose h2,
  .service-look-page main > section:not(:first-of-type) h2 {
    font-size: clamp(1.75rem, 8vw, 2.35rem);
  }
}
