/* Home page sections. */
.statement__typewriter-cursor.statement__typewriter-cursor {
  display: inline-block;
  width: .45ch;
  color: currentColor;
  font-style: normal;
  animation: statement-typewriter-cursor 900ms steps(1, end) infinite;
}

@keyframes statement-typewriter-cursor {
  50% { opacity: 0; }
}

.hero {
  position: relative;
  display: grid;
  min-height: calc(100svh - 5.55rem);
  overflow: hidden;
  background: var(--color-sand);
  background-image: url("../../images/hero-image.webp");
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  isolation: isolate;
}
.statement {
  min-height: 100svh;
  background: var(--color-taupe);
  color: #fffdf7;
}
.about-collection {
  background: var(--brand-cream);
}
.about-collection h2 {
  margin: 0;
  font: 400 clamp(2.5rem, 3.7vw, 4rem) / .98 var(--font-display);
  letter-spacing: -.035em;
}
.experience {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  background: var(--color-surface-muted);
}
.testimonials {
  display: grid;
  min-height: 100svh;
  grid-template-rows: 61.5fr 38.5fr;
}
.closing-cta {
  display: grid;
  min-height: 65svh;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  align-items: center;
  padding: clamp(3rem, 6vw, 6rem) clamp(2rem, 5vw, 6rem);
  background: #459f9e;
  color: var(--color-on-dark);
}
.closing-cta h2 {
  margin: 0;
  font: 400 clamp(3.5rem, 5.4vw, 6rem) / .9 var(--font-display);
  letter-spacing: -.06em;
}
.closing-cta h2 em {
  color: var(--brand-gold);
  font-style: normal;
}
.closing-cta .section-kicker {
  display: flex;
  align-items: center;
  gap: 1rem;
  margin: 0;
  color: var(--color-on-dark);
  font: 500 .6875rem / .75rem var(--font-sans);
  letter-spacing: 4.576px;
  text-transform: uppercase;
}
.closing-cta .section-kicker span {
  flex: 0 0 2rem;
  width: 2rem;
  height: 1px;
  background: currentColor;
}

.experience {
  background: var(--color-white);
}
.closing-cta {
  background: var(--brand-teal);
}
.closing-cta h2 {
  color: #fff;
  font-family: var(--font-display);
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0;
}
.closing-cta h2 em {
  color: var(--brand-gold);
}
.closing-cta .section-kicker {
  color: #fff;
  font-family: var(--font-sans);
  font-weight: 500;
  font-style: normal;
  letter-spacing: 4.576px;
}



.hero__texture {
  position: absolute;
  inset: 0;
  z-index: -1;
  opacity: .42;
  background-image: radial-gradient(circle at 10% 20%, #f9f7eb 0, transparent 38%),
    radial-gradient(circle at 83% 8%, #d9d1c0 0, transparent 35%),
    repeating-linear-gradient(
    45deg,
    rgba(255, 255, 255, .16) 0 1px,
    transparent 1px 7px
    );
}

/* Subtle material light and perspective for the homepage photography. */
.image-light-effect {
  --image-light-x: 50%;
  --image-light-y: 50%;
  --image-light-opacity: 0;
  --image-tilt-x: 0deg;
  --image-tilt-y: 0deg;
  position: relative;
  overflow: hidden;
  isolation: isolate;
  perspective: 75rem;
}
.image-light-effect img {
  position: relative;
  z-index: 0;
}
.image-light-effect::before {
  position: absolute;
  inset: 0;
  z-index: 2;
  content: "";
  background: radial-gradient(
    circle at var(--image-light-x) var(--image-light-y),
    rgba(255, 224, 145, .34) 0,
    rgba(241, 198, 99, .15) 18%,
    rgba(211, 163, 60, .04) 38%,
    transparent 62%
  );
  mix-blend-mode: screen;
  opacity: var(--image-light-opacity);
  pointer-events: none;
  transition: opacity 420ms ease;
}
@media (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {

  .image-light-effect img {
    transform: rotateX(var(--image-tilt-x)) rotateY(var(--image-tilt-y)) scale(1.035);
    transition: transform 500ms cubic-bezier(.22, .61, .36, 1);
    will-change: transform;
  }

  .image-light-effect.is-light-active img {
    transition-duration: 90ms;
  }
}
.hero__content {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding-block: 4rem;
  text-align: center;
}
.hero__eyebrow {
  margin: 0 0 1.1rem;
  color: var(--color-aqua);
  font-size: var(--text-xs);
  letter-spacing: .42em;
  text-transform: uppercase;
}
.hero__mark {
  display: block;
  width: 159px;
  height: 119px;
  margin-bottom: 1.4rem;
  object-fit: cover;
  object-position: center 45%;
}
.hero__title {
  width: min(100%, 55.875rem);
  margin: 0;
  font: 400 clamp(3.7rem, 7.3vw, 6.55rem) / .86 var(--font-display);
  letter-spacing: -.055em;
}
.hero__title span,
.hero__title em {
  display: block;
}
.hero__title em {
  color: var(--color-aqua);
  font-style: italic;
  white-space: nowrap;
}
@media (min-width: 901px) {
  .hero__title .hero__accent-line {
    display: block;
  }
}
.hero__video-stage {
  position: relative;
  flex: 0 0 auto;
  z-index: 3;
  width: min(100%, 55.875rem);
  height: clamp(12rem, 23vw, 15rem);
  margin-top: 1.35rem;
}
.hero__video-placeholder {
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  width: 100%;
  height: 100%;
  overflow: hidden;
  border: 2px solid var(--color-gold);
  background: #000 url("../../images/Impressionen_Kachel.jpg") center / cover no-repeat;
}
.hero__video {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
.hero__play {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 1;
  padding: 0;
  width: 3.4rem;
  height: 3.4rem;
  cursor: pointer;
  border: 1px solid var(--color-gold);
  border-radius: 50%;
  background: transparent;
  transform: translate(-50%, -50%);
}
.hero__video-placeholder.is-playing .hero__play {
  display: none;
}
.hero__cinematic-cta {
  display: none;
}
.hero__play::after {
  position: absolute;
  top: 50%;
  left: 54%;
  content: "";
  border-top: .65rem solid transparent;
  border-bottom: .65rem solid transparent;
  border-left: 1rem solid var(--color-gold);
  transform: translate(-50%, -50%);
}
.hero__ornament {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: .55rem;
  width: 10rem;
  margin: 1.15rem 0;
}
.hero__ornament span {
  width: 4rem;
  height: 1px;
  background: var(--color-aqua);
}
.hero__ornament b {
  width: .5rem;
  height: .5rem;
  background: var(--color-gold);
  transform: rotate(45deg);
}
.statement__topics {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 58px;
  overflow: hidden;
  padding-inline: clamp(.75rem, 2.0486vw, 1.84375rem);
  background: var(--color-taupe);
}
.statement__topics-inner {
  display: flex;
  align-items: center;
  gap: clamp(2rem, 4.5139vw, 4.0625rem);
  width: 100%;
  max-width: 86.3125rem;
  height: 16.97px;
  white-space: nowrap;
}
.statement__topics span {
  position: relative;
  display: block;
  flex: 0 0 auto;
  height: 12px;
  color: var(--color-white);
  font: 500 clamp(.4rem, .8333vw, .75rem) / 1 var(--font-sans);
  letter-spacing: clamp(2.2px, .2889vw, 4.16px);
  text-transform: uppercase;
}
.statement__topics span:nth-child(1) {
  width: clamp(6rem, 12.5694vw, 11.3125rem);
}
.statement__topics span:nth-child(2) {
  width: clamp(4.8rem, 10vw, 9rem);
}
.statement__topics span:nth-child(3) {
  width: clamp(7.2rem, 15.0694vw, 13.5625rem);
}
.statement__topics span:nth-child(4) {
  width: clamp(5.1rem, 10.6944vw, 9.625rem);
}
.statement__topics span:nth-child(5) {
  width: clamp(7.15rem, 14.9306vw, 13.4375rem);
}
.statement__topics span:nth-child(6) {
  width: clamp(4.85rem, 10.0694vw, 9.0625rem);
}
.statement__topics span:not(:last-child)::after {
  position: absolute;
  top: 50%;
  left: calc(100% + clamp(.6875rem, 1.5278vw, 1.375rem));
  width: clamp(.4375rem, .9431vw, .84875rem);
  height: clamp(.4375rem, .9431vw, .84875rem);
  content: "";
  background: var(--color-gold-figma);
  transform: translateY(-50%) matrix(.78, -.62, .78, .62, 0, 0);
}
.statement__topic-separator {
  display: none;
}
.statement__content {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-height: calc(100svh - 58px);
  text-align: center;
}
.statement__line {
  width: 1px;
  height: 1.75rem;
  background: rgba(255, 253, 247, .48);
}
.statement__quote {
  margin: 1.25rem 0;
  font: italic clamp(2rem, 3.2vw, 3.05rem) / 1.24 var(--font-display);
  font-weight: 400;
  letter-spacing: -.035em;
}
.statement__quote span {
  display: block;
}
.statement__quote span:nth-child(2) {
  color: inherit;
}
.statement__quote em {
  color: var(--color-gold-figma);
  font-style: inherit;
}
.statement__brand {
  margin: 2rem 0 0;
  font-size: var(--text-xs);
  letter-spacing: .2em;
  text-transform: uppercase;
}
.about-collection__intro {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
}
.about-collection__portrait {
  min-height: 26rem;
}
.about-collection__portrait img {
  object-position: center 37%;
}
.about-collection__copy {
  display: flex;
  flex-direction: column;
  justify-content: center;
  max-width: none;
  padding: clamp(3rem, 6vw, 6.3rem) clamp(2rem, 4vw, 4.5rem);
}
.about-collection__copy .section-kicker {
  display: flex;
  align-items: center;
  gap: 1rem;
  margin: 0 0 1.5625rem;
  color: var(--brand-teal);
  font: 500 .6875rem / .75rem var(--font-sans);
  letter-spacing: 4.576px;
  text-transform: uppercase;
}
.about-collection__copy .section-kicker > span:first-child {
  flex: 0 0 2rem;
  width: 2rem;
  height: 1px;
  background: currentColor;
}
.about-collection .section-kicker__text {
  flex: 0 0 auto;
  white-space: nowrap;
}
.about-collection h2 em,
.about-collection__signature em {
  color: var(--color-aqua);
  font-style: italic;
}
.about-collection__selected-heading h2 em {
  color: var(--brand-teal);
  font-style: normal;
}
.about-collection__copy h2 > span {
  display: block;
}
.about-collection__body {
  margin-top: 2.1rem;
  color: #5f5a55;
  font-size: clamp(1rem, 1.1vw, 1.1rem);
  line-height: 1.8;
}
.about-collection__body p {
  margin: 0;
}
.about-collection__body p + p {
  margin-top: 1.5rem;
}
.about-collection__signature span {
  display: inline-block;
  width: .85rem;
  height: 1px;
  background: var(--brand-muted);
}
.about-collection__signature {
  display: flex;
  align-items: center;
  gap: .35rem;
  margin: 1.8rem 0 0;
  font: 400 1.1rem var(--font-display);
}
.about-collection__selected {
  padding-block: clamp(3.4rem, 7vw, 6.5rem);
}
.about-collection__selected > .section-kicker {
  display: flex;
  align-items: center;
  gap: 1rem;
  margin: 0;
  color: var(--brand-teal);
  font: 500 .6875rem / .75rem var(--font-sans);
  letter-spacing: 4.576px;
  text-transform: uppercase;
  width: max-content;
}
.about-collection__selected > .section-kicker > span:first-child {
  flex: 0 0 2rem;
  width: 2rem;
  height: 1px;
  background: currentColor;
}
.about-collection__selected-heading {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 1.5rem;
  margin-bottom: 1.9rem;
}
.about-collection__selected-heading .section-kicker {
  margin-bottom: 1.3rem;
}
.about-collection__products {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  width: 100%;
  border: 1px solid var(--brand-gold);
  overflow: hidden;
}
.about-collection__product {
  position: relative;
  display: block;
  min-height: 0;
  aspect-ratio: 1 / 1;
  overflow: hidden;
  background: var(--brand-card);
  color: var(--brand-text);
  text-decoration: none;
  transition: filter .25s ease;
}
.about-collection__product + .about-collection__product {
  border-left: 1px solid var(--brand-gold);
}
.about-collection__product-copy {
  position: absolute;
  inset: 1.8rem 1rem auto;
  z-index: 2;
  display: flex;
  flex-direction: column;
  align-items: center;
  color: var(--brand-text);
  text-align: center;
}
.about-collection__product-eyebrow,
.about-collection__product-link {
  font: 500 .56rem / 1 var(--font-sans);
  letter-spacing: .34em;
  text-transform: uppercase;
}
.about-collection__product-eyebrow {
  color: var(--brand-teal);
}
.about-collection__product-title {
  margin-top: 1.2rem;
  color: var(--brand-text);
  font: 400 clamp(1.35rem, 1.65vw, 2rem) / 1.05 var(--font-display);
}
.about-collection__product-link {
  margin-top: 1rem;
  color: var(--brand-teal-deep);
}
.about-collection__product-image {
  position: absolute;
  top: 31%;
  right: 0;
  bottom: 5%;
  left: 0;
  z-index: 1;
  display: grid;
  place-items: center;
}
.about-collection__product-image img {
  width: 100%;
  height: 100%;
  max-width: 20rem;
  max-height: 20rem;
  object-fit: contain;
  object-position: center;
  filter: drop-shadow(0 1.15rem 1.1rem rgb(67 52 30 / 27%));
  transition: transform .35s ease;
}
.about-collection__product:hover,
.about-collection__product:focus-visible {
  filter: brightness(1.025);
}
.about-collection__product:hover .about-collection__product-image img,
.about-collection__product:focus-visible .about-collection__product-image img {
  transform: scale(1.045) translateY(-.3rem);
}

@media (min-width: 1101px) and (max-width: 1439px) {
  .about-collection__product {
    aspect-ratio: auto;
    min-height: 26.875rem;
  }
}

.experience__image {
  min-height: 42rem;
}
.experience__content {
  display: flex;
  align-items: center;
  padding: clamp(3.5rem, 7vw, 7.5rem) clamp(2rem, 5.3vw, 6rem);
}
.experience__inner {
  width: min(100%, 35rem);
}
.experience__inner > .section-kicker {
  display: flex;
  align-items: center;
  gap: 1rem;
  margin: 0 0 2.4rem;
  color: var(--brand-teal);
  font: 500 .6875rem / .75rem var(--font-sans);
  letter-spacing: 4.576px;
  text-transform: uppercase;
}
.experience__inner > .section-kicker span {
  flex: 0 0 2rem;
  width: 2rem;
  height: 1px;
  background: currentColor;
}
.experience__inner > h2 {
  margin: 0;
  color: var(--brand-text);
  font: 400 clamp(2.5rem, 3.5vw, 4rem) / .95 var(--font-display);
  letter-spacing: 0;
}
.experience__inner > h2 em {
  color: var(--brand-teal);
  font-style: italic;
}
.experience__switch {
  display: grid;
  grid-template-columns: 1fr 1fr;
  margin-top: 2.4rem;
  box-shadow: 0 .35rem .8rem rgba(47, 41, 32, .05);
}
.experience__switch-button {
  min-height: 2.8rem;
  border: 0;
  background: var(--color-surface);
  color: var(--color-ink);
  font: 600 var(--text-xs) var(--font-sans);
  letter-spacing: .18em;
  text-transform: uppercase;
  cursor: pointer;
  transition: background-color .25s ease, color .25s ease;
}
.experience__switch-button.is-active {
  background: var(--color-aqua-strong);
  color: var(--color-white);
}
.experience__panels {
  position: relative;
  overflow: hidden;
}
.experience__panel {
  transition: transform .22s cubic-bezier(.22, .61, .36, 1), opacity .22s ease, filter .22s ease;
}
.experience__panel.is-entering {
  position: absolute;
  inset: 0;
  transform: translateX(2.5rem);
  filter: blur(4px);
  opacity: 0;
}
.experience__panel.is-leaving {
  transform: translateX(-1rem) scale(.99);
  filter: blur(4px);
  opacity: 0;
}
@media (prefers-reduced-motion: reduce) {

.experience__panel {
    transition: none;
  }
}
.experience__benefits {
  margin-top: 1.8rem;
}
.experience__benefit {
  display: grid;
  grid-template-columns: 2rem 1fr;
  gap: .05rem;
  padding: 1.35rem 0;
  border-bottom: 1px solid #d3c9b8;
}
.experience__benefit:first-child {
  padding-top: 0;
}
.experience__number {
  color: var(--color-aqua);
  font: italic 1.45rem / 1 var(--font-display);
}
.experience__benefit h3 {
  margin: 0;
  font-size: var(--text-sm);
  font-weight: 500;
  letter-spacing: .14em;
  text-transform: uppercase;
}
.experience__benefit p {
  margin: .55rem 0 0;
  color: var(--color-text-muted);
  font-size: var(--text-sm);
  line-height: 1.6;
}
.experience__actions {
  margin-top: 2.5rem;
}
.experience__actions .button {
  min-width: 10rem;
  padding-block: .9rem;
  font-size: var(--text-xs);
  text-align: center;
}
.experience__actions .collection-link {
  display: grid;
  min-width: 9rem;
  place-items: center;
}
.testimonials__featured {
  display: grid;
  place-items: center;
  padding: 3.5rem 2rem;
  background: #bcb196;
  color: var(--color-on-dark);
  text-align: center;
}
.testimonials__featured-inner {
  max-width: 46rem;
}
.testimonials__quote-mark {
  display: block;
  color: currentColor;
  font: 400 3.1rem / .7 var(--font-display);
}
.testimonials__featured h2 {
  margin: 2.5rem 0 1.7rem;
  font: 400 clamp(1.5rem, 2vw, 2rem) / 1.38 var(--font-display);
  letter-spacing: -.025em;
}
.testimonials__rule {
  display: block;
  width: 2.75rem;
  height: 1px;
  margin: 0 auto 1.7rem;
  background: rgba(255, 253, 248, .75);
}
.testimonials__featured p,
.testimonials__item figcaption {
  margin: 0;
  font-size: var(--text-xs);
  font-weight: 600;
  letter-spacing: .18em;
  text-transform: uppercase;
}
.testimonials__list {
  display: grid;
  grid-template-columns: 1fr 1fr;
}
.testimonials__item {
  min-height: 0;
  margin: 0;
  padding: 2.75rem clamp(2rem, 5.5vw, 5.8rem) 2.3rem;
  background: #fffdfa;
}
.testimonials__item + .testimonials__item {
  border-left: 1px solid #eee9e0;
}
.testimonials__item .testimonials__quote-mark {
  color: #d8e9e8;
}
.testimonials__item blockquote {
  margin: 2.3rem 0 1.8rem;
  color: #605a52;
  font: italic var(--text-base) / 1.9 var(--font-display);
}
.testimonials__item figcaption {
  display: flex;
  align-items: center;
  gap: .55rem;
  color: var(--color-aqua);
}
.testimonials__item figcaption span {
  width: 1.15rem;
  height: 1px;
  background: currentColor;
}
.closing-cta__content {
  max-width: 34rem;
}
.closing-cta__lead {
  margin: 2.2rem 0 2.7rem;
  font-size: clamp(1rem, 1.15vw, 1.125rem);
  line-height: 1.6;
}
.closing-cta__location {
  margin: 0;
  font-size: var(--text-xs);
  font-weight: 600;
  letter-spacing: .16em;
  text-transform: uppercase;
}
.closing-cta__actions {
  margin-top: 2.6rem;
}
.closing-cta__actions .button,
.closing-cta__outline {
  min-width: 10rem;
  padding-block: .9rem;
  font-size: var(--text-xs);
  text-align: center;
}
.closing-cta__outline {
  border: 1px solid rgba(255, 253, 248, .7);
  color: var(--color-on-dark);
  letter-spacing: .19em;
  text-transform: uppercase;
}
@media (min-width: 1440px) {

.about-collection__selected.container {
    display: flex;
    flex-direction: column;
    width: min(calc(100% - 9rem), 81rem);
    max-width: 81rem;
    height: 48rem;
    padding: 5rem 0;
    gap: 3.25rem;
  }

.about-collection__selected > .section-kicker {
    flex: 0 0 .8125rem;
    width: max-content;
    height: .8125rem;
    gap: 1rem;
    margin: 0;
    color: var(--brand-teal);
    font: 500 .6875rem / .75rem var(--font-sans);
    letter-spacing: 4.576px;
  }

.about-collection__selected > .section-kicker > span:first-child {
    flex: 0 0 2rem;
    width: 2rem;
  }

.about-collection__selected-heading {
    flex: 0 0 3.8125rem;
    width: 100%;
    height: 3.8125rem;
    align-items: center;
    gap: 0;
    margin: 0;
  }

.about-collection__selected-heading h2 {
    margin: 0;
    color: var(--brand-text);
    font: 400 3.625rem / 3.8125rem var(--font-display);
    letter-spacing: .3997px;
  }

.about-collection__products {
    flex: 0 0 26.875rem;
    height: 26.875rem;
    border: 1px solid var(--brand-gold);
  }

.about-collection__product {
    aspect-ratio: auto;
    min-height: 0;
  }
  /* These product feeds contain source images with tighter transparent crops.
     Limit only the visually dominant desktop cards; the other two keep their
     original scale. */
  .about-collection__product--2 .about-collection__product-image img,
  .about-collection__product--4 .about-collection__product-image img {
    width: 82%;
    height: 82%;
  }


.about-collection__intro {
    grid-template-columns: repeat(2, 1fr);
    height: 47.5rem;
  }

.about-collection__portrait {
    position: relative;
    min-height: 0;
  }

.about-collection__portrait::after {
    position: absolute;
    inset: 0;
    content: "";
    background: rgba(186, 173, 146, .2);
    z-index: 1;
    pointer-events: none;
  }

.about-collection__copy {
    position: relative;
    display: block;
    max-width: none;
    padding: 0;
  }

.about-collection__copy .section-kicker {
    position: absolute;
    top: 3.5rem;
    left: 4.75rem;
    width: auto;
    height: .8125rem;
    gap: 1rem;
    margin: 0;
    color: var(--brand-teal);
    font: 500 .6875rem / .75rem var(--font-sans);
    letter-spacing: 4.576px;
  }

.about-collection__copy .section-kicker > span:first-child {
    flex: 0 0 2rem;
    width: 2rem;
  }

.about-collection__copy h2 {
    position: absolute;
    top: 7.4375rem;
    left: 4.75rem;
    width: 15.5625rem;
    height: 7.625rem;
    margin: 0;
    color: var(--brand-text);
    font: 400 3.625rem / 3.8125rem var(--font-display);
    letter-spacing: 0;
  }

.about-collection__copy h2 > span {
    display: block;
    white-space: nowrap;
  }

.about-collection__body {
    position: absolute;
    top: 18.3125rem;
    left: 4.75rem;
    width: 36.9375rem;
    height: 19.6875rem;
    margin: 0;
    font-size: 1.125rem;
    line-height: 2rem;
    font-variant: normal;
    font-stretch: normal;
  }

.about-collection__body p + p {
    margin-top: 1.5rem;
  }

.about-collection__signature {
    position: absolute;
    top: 40.1875rem;
    left: 4.75rem;
    width: 10.5625rem;
    height: 3.75rem;
    gap: .3125rem;
    margin: 0;
  }

.about-collection__signature span {
    width: 2rem;
  }

.about-collection__signature em {
    display: block;
    flex: 0 0 8.25rem;
    width: 8.25rem;
    height: 3.75rem;
    color: var(--brand-teal);
    font: italic 400 2.0625rem / 3.8125rem var(--font-display);
    white-space: nowrap;
  }

.statement {
    height: 50.125rem;
    min-height: 0;
  }

.statement__content {
    width: min(calc(100% - 3rem), 52.5rem);
    height: 46.5rem;
    min-height: 46.5rem;
    padding: 0;
    gap: 1.3125rem;
  }

.statement__line {
    flex: 0 0 4.0625rem;
    width: 1px;
    height: 4.0625rem;
    background: linear-gradient(to bottom, transparent 0%, rgba(255, 255, 255, .48) 100%);
  }

.statement__quote + .statement__line {
    background: linear-gradient(to bottom, rgba(255, 255, 255, .48) 0%, transparent 100%);
  }

.statement__quote {
    align-self: stretch;
    width: 100%;
    height: 11.4375rem;
    margin: 0;
    font-size: 2.625rem;
    line-height: 3.8125rem;
    font-variant: normal;
    font-stretch: normal;
  }

.statement__brand {
    width: 19.625rem;
    height: .6875rem;
    margin: 0;
    font-size: .6875rem;
    line-height: .6875rem;
    font-variant: normal;
    font-stretch: normal;
    white-space: nowrap;
  }

.experience {
    height: 47.5rem;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

.experience__image {
    min-height: 0;
  }

.experience__content {
    position: relative;
    display: block;
    padding: 0;
  }

.experience__inner {
    width: 100%;
    height: 100%;
  }

.experience__inner > .section-kicker {
    position: absolute;
    top: 4.125rem;
    left: 4.8125rem;
    width: 12.1875rem;
    height: .8125rem;
    gap: 1rem;
    margin: 0;
    color: var(--brand-teal);
    font: 500 .6875rem / .75rem var(--font-sans);
    letter-spacing: 4.576px;
    white-space: nowrap;
  }

.experience__inner > .section-kicker span {
    flex: 0 0 2rem;
    width: 2rem;
  }

.experience__inner > h2 {
    position: absolute;
    top: 6.5rem;
    left: 4.8125rem;
    width: calc(100% - 4.8125rem);
    height: 7.625rem;
    margin: 0;
    font-size: clamp(2.5rem, 3vw, 3.625rem);
    line-height: 1.052;
    font-variant: normal;
    font-stretch: normal;
  }

.experience__inner > h2 > span {
    display: block;
    white-space: normal;
    overflow-wrap: anywhere;
  }

.experience__switch {
    position: absolute;
    top: 16.375rem;
    left: 4.8125rem;
    width: 35.5rem;
    height: 2.75rem;
    margin: 0;
  }

.experience__switch-button {
    min-height: 2.75rem;
    padding: 0;
    font-size: .625rem;
    line-height: .6875rem;
    font-variant: normal;
    font-stretch: normal;
  }

.experience__panels {
    position: absolute;
    top: 22.375rem;
    left: 4.8125rem;
    width: 35.5rem;
    overflow: visible;
  }

.experience__benefits {
    display: flex;
    flex-direction: column;
    gap: 1.5625rem;
    margin: 0;
  }

.experience__benefit {
    grid-template-columns: 2.4375rem 1fr;
    gap: 0;
    height: 4rem;
    padding: 0;
  }

.experience__benefit:nth-child(3) {
    height: 5.3125rem;
  }

.experience__number {
    font-size: 1.75rem;
    line-height: 1.75rem;
    font-variant: normal;
    font-stretch: normal;
  }

.experience__benefit h3 {
    font-size: .8125rem;
    line-height: .8125rem;
    font-variant: normal;
    font-stretch: normal;
  }

.experience__benefit p {
    margin-top: .6875rem;
    font-size: .6875rem;
    line-height: 1.1875rem;
    font-variant: normal;
    font-stretch: normal;
  }

.experience__actions {
    position: absolute;
    top: 41.9375rem;
    left: 4.8125rem;
    display: flex;
    gap: 1.375rem;
    width: 24.8125rem;
    height: 2.625rem;
    margin: 0;
  }

.experience__actions .button,
  .experience__actions .collection-link {
    display: grid;
    flex: 0 0 auto;
    place-items: center;
    height: 2.625rem;
    min-width: 0;
    padding: 0;
    font: 500 .625rem / .6875rem var(--font-sans);
    letter-spacing: 3.7px;
  }

.experience__actions .button {
    width: 12.4375rem;
  }

.experience__actions .collection-link {
    width: 11rem;
  }

.testimonials {
    display: block;
    min-height: 0;
  }

.testimonials__featured {
    position: relative;
    display: block;
    height: 620px;
    padding: 0;
    background: #baad92;
  }

.testimonials__featured-inner {
    width: 100%;
    max-width: none;
    height: 100%;
  }

.testimonials__featured .testimonials__quote-mark {
    position: absolute;
    top: 118px;
    left: 50%;
    width: 40px;
    height: 50px;
    color: #fff;
    font: 400 96px / 96px var(--font-display);
    text-align: center;
    transform: translateX(-50%);
  }

.testimonials__featured h2 {
    position: absolute;
    top: calc(50% - 81px + 11px);
    left: 50%;
    width: 916px;
    height: 162px;
    margin: 0;
    font-size: 32px;
    line-height: 54px;
    font-variant: normal;
    font-stretch: normal;
    transform: translateX(-50%);
  }

  /* Let the quote wrap into the three lines reserved by the desktop artboard. */
  .testimonials__featured .testimonials__desktop-break {
    display: none;
  }

.testimonials__rule {
    position: absolute;
    top: 446px;
    left: 50%;
    width: 70px;
    height: 0;
    margin: 0;
    border: 1px solid #fbf8f3;
    transform: translateX(-50%);
  }

.testimonials__featured p {
    position: absolute;
    top: 494.1px;
    left: 50%;
    width: 508px;
    height: 8px;
    margin: 0;
    color: #fff;
    font: 500 11px / 11px var(--font-sans);
    letter-spacing: 4.84px;
    text-align: center;
    transform: translateX(-50%);
    white-space: nowrap;
  }

.testimonials__list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    height: 24.375rem;
  }

.testimonials__item {
    position: relative;
    height: 24.375rem;
    margin: 0;
    padding: 0;
  }

.testimonials__item + .testimonials__item {
    border-left: 0;
  }

.testimonials__item .testimonials__quote-mark {
    position: absolute;
    top: 3.1875rem;
    left: 4.5rem;
    width: 2.5rem;
    height: 3.125rem;
    font-size: 6rem;
    line-height: 6rem;
    font-variant: normal;
    font-stretch: normal;
  }

.testimonials__item blockquote {
    position: absolute;
    top: 10.1875rem;
    left: 4.5rem;
    width: 35.0625rem;
    height: 7.1875rem;
    margin: 0;
    font-size: 1rem;
    line-height: 2.4375rem;
    font-variant: normal;
    font-stretch: normal;
  }

.testimonials__item figcaption {
    position: absolute;
    top: 20.5rem;
    left: 4.5rem;
    gap: .625rem;
    width: 15.0625rem;
    height: .5rem;
    font-size: .6875rem;
    line-height: .6875rem;
    font-variant: normal;
    font-stretch: normal;
    white-space: nowrap;
  }

.testimonials__item figcaption span {
    flex: 0 0 2rem;
    width: 2rem;
    border-top: 1px solid var(--brand-teal);
  }

.testimonials__item:nth-child(2) blockquote {
    top: 10.75rem;
    width: calc(100% - 7.75rem);
    height: 4.875rem;
  }

.testimonials__item:nth-child(2) figcaption {
    top: 19.875rem;
    width: 17.1875rem;
  }

.closing-cta {
    position: relative;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    height: 38.75rem;
    min-height: 0;
    padding: 0;
  }

.closing-cta h2 {
    position: absolute;
    top: 10.25rem;
    left: 4.5rem;
    width: 34rem;
    height: 17.625rem;
    margin: 0;
    font-size: 5.75rem;
    line-height: 5.875rem;
    font-variant: normal;
    font-stretch: normal;
  }

.closing-cta__content {
    position: absolute;
    top: 9.375rem;
    left: calc(50% + 4.5rem);
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 3.5625rem;
    width: 34rem;
    height: 20.0625rem;
    max-width: none;
  }

.closing-cta .section-kicker {
    flex: 0 0 .8125rem;
    width: 8.75rem;
    height: .8125rem;
    gap: 1rem;
    margin: 0;
    font-size: .6875rem;
    line-height: .75rem;
    font-variant: normal;
    font-stretch: normal;
    white-space: nowrap;
  }

.closing-cta .section-kicker span {
    flex: 0 0 2rem;
    width: 2rem;
    background: #fff;
  }

.closing-cta__lead {
    flex: 0 0 3.9375rem;
    width: 34rem;
    height: 3.9375rem;
    margin: 0;
    font-size: 1.125rem;
    line-height: 2rem;
    font-variant: normal;
    font-stretch: normal;
  }

.closing-cta__location {
    flex: 0 0 2rem;
    width: 31.5rem;
    height: 2rem;
    margin: 0;
    font-size: .6875rem;
    line-height: 2rem;
    font-variant: normal;
    font-stretch: normal;
    white-space: nowrap;
  }

.closing-cta__actions {
    display: flex;
    gap: 1.375rem;
    width: 31.125rem;
    height: 2.625rem;
    margin: 0;
  }

.closing-cta__actions .button,
  .closing-cta__outline {
    display: grid;
    flex: 0 0 auto;
    place-items: center;
    height: 2.625rem;
    min-width: 0;
    padding: 0;
    font: 500 .625rem / .6875rem var(--font-sans);
    letter-spacing: 3.7px;
  }

.closing-cta__actions .button {
    width: 15.125rem;
  }

.closing-cta__outline {
    width: 14.625rem;
  }
}
.about-collection__copy {
  background: var(--brand-cream);
}
.about-collection__body {
  color: var(--brand-text-mid);
  font-family: var(--font-sans);
  font-weight: 400;
  font-style: normal;
}
.about-collection__signature span {
  background: var(--brand-muted);
}
.statement__quote {
  color: var(--color-white);
  font-family: var(--font-display);
  font-weight: 400;
  font-style: italic;
  letter-spacing: 0;
}
.statement__quote span:nth-child(2) {
  color: var(--color-white);
}
.statement__quote em {
  color: var(--color-gold-figma);
}
.statement__brand {
  color: var(--color-white);
  font-family: var(--font-sans);
  font-weight: 500;
  font-style: normal;
  letter-spacing: 4.84px;
}
.hero__eyebrow {
  font-family: var(--font-sans);
  font-weight: 500;
  font-style: normal;
  letter-spacing: 5.01px;
}
.hero__title {
  letter-spacing: 0;
}
.experience__content {
  background: var(--brand-warm);
}
.experience__inner > h2 {
  color: var(--brand-text);
  font-family: var(--font-display);
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0;
}
.experience__switch {
  box-shadow: none;
}
.experience__switch-button {
  background: var(--brand-cream);
  color: var(--brand-text);
  font-family: var(--font-sans);
  font-weight: 500;
  font-style: normal;
  letter-spacing: 3.7px;
}
.experience__switch-button.is-active {
  background: var(--brand-teal);
  color: #FFFFFF;
}
.experience__benefit {
  border-color: var(--brand-stone);
}
.experience__number {
  font-family: var(--font-display);
  font-weight: normal;
  font-style: italic;
}
.experience__benefit h3 {
  font-family: var(--font-sans);
  font-weight: 500;
  font-style: normal;
  letter-spacing: 2.88px;
}
.experience__benefit p {
  font-family: var(--font-sans);
  font-weight: 400;
  font-style: normal;
}
.experience__actions .collection-link {
  border-color: var(--brand-gold);
  color: var(--brand-text);
}
.testimonials__featured {
  background: #baad92;
}
.testimonials__featured h2 {
  color: #fff;
  font-family: var(--font-display);
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0;
}
.testimonials__rule {
  background: #fbf8f3;
}
.testimonials__list {
  background: #fff;
}
.testimonials__item {
  background: rgba(251, 248, 243, .9);
}
.testimonials__item + .testimonials__item {
  background: rgba(242, 235, 224, .9);
}
.testimonials__item .testimonials__quote-mark {
  color: #C7D6D4;
  font-family: var(--font-display);
  font-weight: 400;
  font-style: normal;
  text-align: center;
}
.testimonials__item blockquote {
  color: var(--brand-text);
  font-family: var(--font-display);
  font-weight: 400;
  font-style: italic;
  letter-spacing: 0;
}
.testimonials__item figcaption {
  color: var(--brand-teal);
  font-family: var(--font-sans);
  font-weight: 500;
  font-style: normal;
  letter-spacing: 4.84px;
}
.testimonials__item figcaption span {
  background: none;
}
.closing-cta__lead {
  color: #fff;
  font-family: var(--font-sans);
  font-weight: 400;
  font-style: normal;
}
.closing-cta__location {
  color: var(--brand-cream);
  font-family: var(--font-sans);
  font-weight: 400;
  font-style: normal;
  letter-spacing: 2.5984px;
}
.closing-cta__outline {
  border-color: #fff;
  color: #fff;
}
@media (min-width: 1440px) {
  .statement__topics-inner {
    justify-content: space-between;
    gap: 0;
  }

  .statement__topics span {
    width: auto !important;
  }

  .statement__topics span::after {
    display: none;
  }

  .statement__topic-separator {
    display: block;
    flex: 0 0 clamp(.4375rem, .9431vw, .84875rem);
    width: clamp(.4375rem, .9431vw, .84875rem);
    height: clamp(.4375rem, .9431vw, .84875rem);
    background: var(--color-gold-figma);
    transform: matrix(.78, -.62, .78, .62, 0, 0);
  }
}
@media (max-width: 1439px) {

.statement__topics {
    height: auto;
    min-height: 58px;
    padding-block: 1rem;
    overflow: visible;
  }

.statement__topics-inner {
    flex: 0 1 auto;
    flex-wrap: wrap;
    justify-content: center;
    width: 100%;
    height: auto;
    white-space: normal;
  }

.statement__topics span {
    width: auto !important;
    height: auto;
    font-size: .75rem;
    letter-spacing: 4.16px;
    white-space: nowrap;
  }
}
@media (min-width: 701px) and (max-width: 1439px) {

.hero__video-stage {
    height: 20.75rem;
    margin-top: 1.4375rem;
  }

.hero__video-placeholder {
    border-width: 3px;
  }

.hero__play {
    width: 5.3125rem;
    height: 5.3125rem;
    border: 2px solid var(--color-gold-figma);
    background: var(--color-white);
  }

.hero__play::after {
    left: 52%;
    width: 2.4375rem;
    height: 2.4375rem;
    border: 0;
    background: var(--color-gold-figma);
    clip-path: polygon(0 0, 100% 50%, 0 100%);
  }

.hero .button {
    display: grid;
    place-items: center;
    width: 16.25rem;
    height: 2.625rem;
    padding: 0;
    font: 500 .625rem / .6875rem var(--font-sans);
    letter-spacing: 3.7px;
  }

  /* Preserve the desktop Experience composition below the fixed 1440 px artboard. */
  .experience {
    min-height: 47.5rem;
  }

  .experience__image,
  .experience__content {
    min-height: 47.5rem;
  }

  .experience__content {
    display: flex;
    align-items: flex-start;
    padding: clamp(3rem, 4.583vw, 4.125rem) clamp(3rem, 4.583vw, 4.125rem) 3rem;
  }

  .experience__inner {
    width: 100%;
    max-width: none;
  }

  .experience__inner > .section-kicker {
    margin-bottom: 1.5625rem;
  }

  .experience__inner > h2 {
    font-size: clamp(2.75rem, 4.028vw, 3.625rem);
    line-height: 1.052;
  }

  .experience__inner > h2 > span {
    display: block;
    white-space: normal;
  }

  .experience__switch {
    min-height: 2.75rem;
    margin-top: 2.5rem;
  }

  .experience__switch-button {
    min-height: 2.75rem;
    font-size: .625rem;
    line-height: .6875rem;
  }

  .experience__panels {
    margin-top: 3.25rem;
  }

  .experience__benefits {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
    margin: 0;
  }

  .experience__benefit {
    grid-template-columns: 2.4375rem minmax(0, 1fr);
    gap: 0;
    min-height: 4rem;
    padding: 0 0 1.125rem;
  }

  .experience__benefit:nth-child(3) {
    min-height: 5.3125rem;
  }

  .experience__number {
    font-size: 1.75rem;
    line-height: 1.75rem;
  }

  .experience__benefit h3 {
    font-size: .8125rem;
    line-height: .8125rem;
  }

  .experience__benefit p {
    margin-top: .6875rem;
    font-size: .6875rem;
    line-height: 1.1875rem;
  }

  .experience__actions {
    display: flex;
    gap: 1.375rem;
    margin-top: 3.375rem;
  }

  .experience__actions .button,
  .experience__actions .collection-link {
    display: grid;
    min-height: 2.625rem;
    padding: 0;
    place-items: center;
    font: 500 .625rem / .6875rem var(--font-sans);
    letter-spacing: 3.7px;
  }

  .closing-cta {
    min-height: 38.75rem;
    padding: 0;
  }

  .closing-cta h2 {
    align-self: center;
    margin: 0 0 0 clamp(3rem, 5vw, 4.5rem);
    font-size: clamp(4rem, 6.389vw, 5.75rem);
    line-height: 1.022;
    transform: translateY(-.3125rem);
  }

  .closing-cta__content {
    align-self: center;
    width: 75.556%;
    max-width: none;
    margin-left: 10%;
  }

  .closing-cta__content {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 3.5625rem;
  }

  .closing-cta__lead {
    width: 100%;
    margin: 0;
    font-size: clamp(.875rem, 1.25vw, 1.125rem);
    line-height: 2rem;
  }

  .closing-cta__location {
    margin: 0;
    font-size: clamp(.625rem, .764vw, .6875rem);
    line-height: 2rem;
    letter-spacing: clamp(2px, .18vw, 2.5984px);
    white-space: normal;
  }

  .closing-cta__actions {
    display: grid;
    grid-template-columns: 1.034fr 1fr;
    gap: 1.375rem;
    width: 91.544%;
    margin: 0;
  }

  .closing-cta__actions .button,
  .closing-cta__outline {
    display: grid;
    width: 100%;
    min-width: 0;
    height: 2.625rem;
    padding: 0;
    place-items: center;
    font: 500 .625rem / .6875rem var(--font-sans);
    letter-spacing: 3.7px;
  }
}
@media (max-width: 900px) {

.hero {
    min-height: calc(100svh - 4.8rem);
  }

.hero__title em {
    white-space: normal;
  }

  .experience__inner > h2 > span {
    white-space: normal;
  }
}
@media (max-width: 1100px) {

.about-collection__products {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

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

.about-collection__product:nth-child(3) {
    border-left: 0;
    border-top: 1px solid var(--brand-gold);
  }

.about-collection__product:nth-child(4) {
    border-top: 1px solid var(--brand-gold);
  }
}

@media (min-width: 701px) and (max-width: 1100px) {
  /* Two-column tablet cards are narrower than the desktop artboard. Scale the
     ring images to stay inside each card, as they already do on phones. */
  .home .about-collection__product-image {
    top: 34%;
    bottom: 9%;
  }

  .home .about-collection__product-image img {
    width: 82%;
    height: 82%;
    max-width: 16rem;
    max-height: 16rem;
  }
}

/* Keep the 1440 px Collection artboard structure on smaller desktop screens. */
@media (min-width: 901px) and (max-width: 1439px) {

  .testimonials__rule {
    width: 4.375rem;
    height: 1px;
    background: none;
    border-top: 1px solid var(--brand-cream);
  }

  .about-collection__intro {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    height: 47.5rem;
  }

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

  .about-collection__copy {
    position: relative;
    display: block;
    padding: 0;
  }

  .about-collection__copy .section-kicker {
    position: absolute;
    top: clamp(3rem, 3.889vw, 3.5rem);
    left: clamp(3rem, 5.278vw, 4.75rem);
    margin: 0;
  }

  .about-collection__copy h2 {
    position: absolute;
    top: clamp(6rem, 8.264vw, 7.4375rem);
    left: clamp(3rem, 5.278vw, 4.75rem);
    width: 15.5625rem;
    margin: 0;
    color: var(--brand-text);
    font: 400 clamp(3rem, 4.028vw, 3.625rem) / 1.052 var(--font-display);
  }

  .about-collection__copy h2 > span {
    white-space: nowrap;
  }

  .about-collection__body {
    position: absolute;
    top: clamp(15rem, 20.347vw, 18.3125rem);
    left: clamp(3rem, 5.278vw, 4.75rem);
    width: calc(100% - clamp(8rem, 8.958vw, 8.0625rem));
    margin: 0;
    font-size: clamp(1rem, 1.25vw, 1.125rem);
    line-height: 1.7778;
  }

  .about-collection__signature {
    position: absolute;
    top: clamp(34rem, 44.653vw, 40.1875rem);
    left: clamp(3rem, 5.278vw, 4.75rem);
    margin: 0;
  }

  .about-collection__selected.container {
    display: flex;
    flex-direction: column;
    width: calc(100% - 10vw);
    max-width: none;
    min-height: 48rem;
    padding: 5rem 0;
    gap: 3.25rem;
  }

  .about-collection__selected > .section-kicker {
    flex: 0 0 .8125rem;
    width: max-content;
    height: .8125rem;
  }

  .about-collection__selected-heading {
    flex: 0 0 3.8125rem;
    width: 100%;
    height: 3.8125rem;
    align-items: center;
    gap: 0;
    margin: 0;
  }

  .about-collection__selected-heading h2 {
    margin: 0;
    color: var(--brand-text);
    font: 400 clamp(3rem, 4.028vw, 3.625rem) / 1.052 var(--font-display);
    letter-spacing: .3997px;
  }

  .about-collection__selected-heading .collection-link {
    display: grid;
    width: clamp(12rem, 18.056vw, 16.25rem);
    height: 2.625rem;
    min-width: 0;
    padding: 0;
    place-items: center;
    font: 500 .625rem / .6875rem var(--font-sans);
    letter-spacing: 3.7px;
  }

  .about-collection__products {
    flex: 0 0 26.875rem;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    height: 26.875rem;
  }

  .about-collection__product {
    min-height: 0;
    aspect-ratio: auto;
  }

  .about-collection__product:nth-child(3),
  .about-collection__product:nth-child(4) {
    border-top: 0;
    border-left: 1px solid var(--brand-gold);
  }
}

@media (max-width: 700px) {
  /* Product imagery varies in how tightly its transparent canvas is cropped.
     Keep even the tallest ring sets clear of the next card on every phone. */
  .home .about-collection__product-image {
    top: 34%;
    bottom: 9%;
  }

  .home .about-collection__product-image img {
    width: 82%;
    height: 82%;
    max-width: 16rem;
    max-height: 16rem;
  }

.about-collection__products {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

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

.about-collection__product:nth-child(3) {
    border-left: 0;
    border-top: 1px solid var(--brand-gold);
  }

.about-collection__product:nth-child(4) {
    border-top: 1px solid var(--brand-gold);
  }

.about-collection__product-copy {
    inset: 1.5rem .65rem auto;
  }

.about-collection__product-title {
    font-size: clamp(1.3rem, 5vw, 1.8rem);
  }

.about-collection__product-image {
    top: 34%;
  }

.hero__video-stage {
    align-self: center;
    width: min(calc(100% - 2rem), 25rem);
    height: clamp(21.6rem, 114vw, 31.2rem);
    min-height: 0;
    margin-top: 1.35rem;
    aspect-ratio: auto;
  }

.hero__play {
    width: 4.25rem;
    height: 4.25rem;
    border: 2px solid var(--color-gold-figma);
    background: var(--color-white);
  }

.hero__play::after {
    left: 52%;
    width: 1.95rem;
    height: 1.95rem;
    border: 0;
    background: var(--color-gold-figma);
    clip-path: polygon(0 0, 100% 50%, 0 100%);
  }

.hero .button {
    display: grid;
    width: min(100%, 16.25rem);
    min-height: 2.625rem;
    place-items: center;
  }

.statement__quote {
    padding-inline: 1rem;
    font-size: clamp(1.75rem, 8vw, 2.5rem);
  }

.statement__brand {
    font-size: var(--text-xs);
    letter-spacing: .16em;
  }

.about-collection__intro {
    grid-template-columns: 1fr;
  }

.experience {
    grid-template-columns: 1fr;
  }

.experience__image {
    min-height: min(125vw, 42rem);
  }

.experience__inner {
    width: 100%;
  }

.experience__inner > h2 {
    font-size: clamp(2.2rem, 9.5vw, 3rem);
  }

.experience__inner > h2 > span {
    display: block;
  }

.experience__inner > h2 > span:last-child em {
    display: block;
  }

.testimonials__list {
    grid-template-columns: 1fr;
  }

.testimonials {
    grid-template-rows: auto auto;
  }

.testimonials__item {
    min-height: 15.2rem;
  }

.testimonials__item + .testimonials__item {
    border-top: 1px solid #eee9e0;
    border-left: 0;
  }

.about-collection__portrait {
    min-height: min(130vw, 42rem);
  }

.about-collection__copy {
    max-width: none;
    padding-inline: 2rem;
  }

.closing-cta {
    grid-template-columns: minmax(0, 1fr);
    gap: 2.5rem;
    min-height: auto;
  }
}
@media (max-width: 700px) {

.about-collection__selected {
    display: grid;
    grid-template-columns: 1fr;
    grid-template-areas:
      "kicker"
      "heading"
      "products"
      "cta";
  }

.about-collection__selected > .section-kicker {
    grid-area: kicker;
    margin-bottom: 1.5625rem;
  }

.about-collection__selected-heading {
    display: contents;
  }

.about-collection__selected-heading h2 {
    grid-area: heading;
  }

  .about-collection__selected-heading .collection-link {
    grid-area: cta;
    width: 100%;
    justify-self: stretch;
    margin-top: 1.5rem;
  }

.about-collection__products {
    grid-template-columns: 1fr;
    grid-area: products;
    margin-top: 1.9rem;
  }

.about-collection__product + .about-collection__product,
  .about-collection__product:nth-child(3),
  .about-collection__product:nth-child(4) {
    border-top: 1px solid var(--brand-gold);
    border-left: 0;
  }

.about-collection__product-image {
    top: 32%;
  }
}
@media (max-width: 560px) {

  /* One-column product cards are large enough that source images with a
     tight transparent canvas can touch the card edge. Reserve a little room
     for the object and its shadow instead of clipping either one. */
  .about-collection__product-image {
    top: 34%;
    bottom: 7%;
  }

  .about-collection__product-image img {
    width: 88%;
    height: 88%;
    max-width: 18rem;
    max-height: 18rem;
  }

.hero__eyebrow {
    max-width: 20rem;
    font-size: var(--text-xs);
    line-height: 1.7;
    letter-spacing: .3em;
  }

.about-collection__selected-heading {
    align-items: flex-start;
    flex-direction: column;
  }

.testimonials__desktop-break {
    display: none;
  }
}

/* One fluid desktop composition, including either side of the 1440px breakpoint.
   Let longer copy grow the introduction instead of shrinking or clipping it. */
@media (min-width: 901px) {
  .hero__content {
    width: min(calc(100% - 3rem), 55.875rem);
    height: auto;
    gap: clamp(1rem, 1.5972vw, 1.4375rem);
    padding-block: clamp(4rem, 6.7361vw, 6.0625rem);
  }

  .hero__content > * {
    flex-shrink: 0;
  }

  .hero__eyebrow {
    align-self: stretch;
    margin: 0;
    font-size: .75rem;
    line-height: 1.5;
  }

  .hero__mark {
    margin: 0;
  }

  .hero__title {
    width: 100%;
    font-size: clamp(3.7rem, 6.6667vw, 6rem);
    line-height: 1.041667;
  }

  .hero__video-stage {
    width: 100%;
    height: clamp(15rem, 23.0556vw, 20.75rem);
    margin: 0;
  }

  .hero__video-placeholder {
    border-width: 3px;
  }

  .hero__play {
    width: 5.3125rem;
    height: 5.3125rem;
    border: 2px solid var(--color-gold-figma);
    background: var(--color-white);
  }

  .hero__play::after {
    left: 52%;
    width: 2.4375rem;
    height: 2.4375rem;
    border: 0;
    background: var(--color-gold-figma);
    clip-path: polygon(0 0, 100% 50%, 0 100%);
  }

  .hero__ornament {
    width: 11.3125rem;
    height: 1.060625rem;
    margin: 0;
    gap: .84375rem;
  }

  .hero__ornament span {
    width: 4.4375rem;
  }

  .hero__ornament b {
    width: .75rem;
    height: .75rem;
  }

  .hero .button {
    display: grid;
    place-items: center;
    width: 16.25rem;
    height: 2.625rem;
    padding: 0;
    font: 500 .625rem / .6875rem var(--font-sans);
    letter-spacing: 3.7px;
  }
}

/*
 * Homepage legibility: body copy starts at 16px, controls at 14px and
 * supporting labels at 12–13px. These values preserve the display type scale
 * while preventing the 9–11px text used in the original artboard.
 */
.home .hero__eyebrow,
.home .statement__topics span,
.home .statement__brand,
.home :is(.about-collection__copy, .about-collection__selected, .experience__inner, .closing-cta) .section-kicker,
.home .testimonials__featured p,
.home .testimonials__item figcaption,
.home .closing-cta__location {
  font-size: .8125rem;
  line-height: 1.35;
  /* This is padding rather than a margin so the extra space is retained in
     both the desktop flex layout and the stacked mobile layout. */
  padding-block: .75rem;
}

.home .closing-cta .section-kicker {
  padding-bottom: .75rem;
}

.home .statement__topics span {
  /* Topic labels share a flex row with geometric separators. Vertical
     padding inside the fixed 12px artboard height pushed the glyphs below
     the separators' centre. Let their line box define their actual height. */
  height: auto;
  padding-block: 0;
  letter-spacing: .22em;
}

.home .about-collection__product-eyebrow,
.home .about-collection__product-link {
  font-size: .75rem;
  line-height: 1.35;
  letter-spacing: .18em;
}

.home :is(.button, .collection-link, .experience__switch-button, .closing-cta__outline, .hero__cinematic-cta) {
  font-size: .875rem;
  line-height: 1.25;
  letter-spacing: .12em;
}

.home .experience__benefit h3 {
  font-size: .875rem;
  line-height: 1.35;
  letter-spacing: .1em;
}

.home .experience__benefit p {
  font-size: 1rem;
  line-height: 1.55;
}

.home .primary-navigation a,
.home .header-appointment,
.home .menu-toggle {
  font-size: .875rem;
  line-height: 1.25;
}

.home .brand__place {
  font-size: .8125rem;
  line-height: 1.25;
}

.home .brand__name {
  font-size: .875rem;
  line-height: 1.25;
}

/* The original 64px Figma rows only fit its 11px, one-line descriptions.
   Keep the rule below the complete description when text wraps at readable sizes. */
@media (min-width: 1440px) {
  /* The benefit copy uses the readable homepage type scale below (16px),
     rather than the 11px one-line Figma copy. Reintroduce the breathing room
     around each rule so the larger text keeps the original section rhythm. */
  .home .experience {
    height: 54rem;
  }

  .home .experience__switch {
    top: 16.625rem;
  }

  .home .experience__panels {
    top: 22.625rem;
  }

  .home .experience__benefits {
    gap: 1.25rem;
  }

  .home .experience__benefit,
  .home .experience__benefit:nth-child(3) {
    height: auto;
    min-height: 0;
    padding-bottom: 1.125rem;
  }

  .home .experience__actions {
    top: 47.375rem;
  }

  /* The desktop testimonial uses fixed artboard coordinates. Its visible
     quotation mark begins lower inside its line box, so the section needs the
     same additional space below the attribution as appears above the mark. */
  .home .testimonials__featured {
    height: 40.1875rem;
  }

  /* Unlike tablet and mobile, the large desktop composition is absolutely
     positioned. Centre the full, growing content block instead of retaining
     a fixed top coordinate so its outer whitespace remains equal. */
  .home .closing-cta__content {
    top: 50%;
    height: auto;
    transform: translateY(-50%);
  }
}

/* Keep the action area comfortable at every two-column/tablet width. The
   readable control type needs real side padding; the original fixed-artboard
   rules had none, so labels could touch the button edges on narrow screens. */
@media (min-width: 701px) and (max-width: 1439px) {
  .home .experience__content {
    padding-bottom: 3.375rem;
  }

  .home .experience__actions {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    width: 100%;
  }

  .home .experience__actions .button,
  .home .experience__actions .collection-link {
    box-sizing: border-box;
    width: 100%;
    min-width: 0;
    padding-inline: 1.25rem;
    font-size: clamp(.75rem, 1.1vw, .875rem);
    line-height: 1.25;
    letter-spacing: .12em;
    white-space: nowrap;
  }
}

@media (max-width: 900px) {
  .home .statement__topics-inner {
    row-gap: 0;
  }

  /* Keep the brand statement compact on real phone viewports instead of
     reserving a full viewport plus the topic strip. */
  .home .statement {
    min-height: auto;
  }

  .home .statement__content {
    min-height: calc(100svh - 7rem);
  }

  .home .hero__title {
    line-height: .98;
  }

  .home .hero__ornament b {
    width: .875rem;
    height: .875rem;
  }
}

@media (max-width: 700px) {

  /* Decorative rules beside the mobile section labels. */
  .home .section-kicker > span:first-child {
    display: none;
  }

  /* Start each mobile benefit rule at the text column, not below its Roman
     numeral. Its right edge stays exactly where the original full-width rule
     ended. */
  .home .experience__benefit {
    position: relative;
    border-bottom: 0;
  }

  .home .experience__benefit::after {
    position: absolute;
    right: 0;
    bottom: 0;
    left: calc(2rem + .05rem);
    height: 1px;
    content: "";
    background: var(--brand-stone);
  }

  .home .experience__actions,
  .home .closing-cta__actions {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    width: 100%;
  }

  .home .experience__actions .button,
  .home .experience__actions .collection-link,
  .home .closing-cta__actions .button,
  .home .closing-cta__outline {
    box-sizing: border-box;
    width: 100%;
    min-width: 0;
  }

  .home .site-footer__bottom small {
    font-size: .8125rem;
    line-height: 1.5;
  }
}

@media (max-width: 360px) {
  .home .closing-cta h2 { font-size: 2.75rem; }
}

/* Keep the full desktop width and reveal more vertical video content. */
@media (min-width: 901px) {
  .hero__video-stage {
    height: clamp(22.5rem, 34.5834vw, 31.125rem);
  }
  .hero__video {
    object-fit: cover;
  }
}
