/* Home J2 adopts Home FD2. The kitchen rendering is retained temporarily;
   the owner will choose a living-room or similar rendering later. */
.fd-opener {
  position: relative;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  text-align: center;
  padding: clamp(96px, 9vw, 120px) clamp(24px, 5vw, 80px) clamp(96px, 10vw, 130px);
  background: #f8f4ec;
  color: #50514b;
  min-height: clamp(620px, 58vw, 880px);
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
.fd-opener-window {
  position: absolute;
  left: 50%;
  bottom: 0;
  transform: translateX(-50%);
  height: min(74%, 600px);
  aspect-ratio: 1 / 1;
  max-width: 88vw;
  border-radius: 999px 999px 0 0;
  overflow: hidden;
  opacity: .22;
  pointer-events: none;
}
.fd-opener-window img { width: 100%; height: 100%; object-fit: cover; display: block; }
.fd-opener-window::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, #f8f4ec 0%, rgba(248,244,236,.2) 55%, rgba(248,244,236,.05) 100%);
}
.fd-opener-arch {
  position: absolute;
  left: 50%;
  bottom: 0;
  transform: translateX(-50%);
  height: min(94%, 810px);
  aspect-ratio: 1 / 1;
  max-width: 96vw;
  border: 1px solid rgb(178 149 108 / 30%);
  border-bottom: 0;
  border-radius: 999px 999px 0 0;
  opacity: .9;
  pointer-events: none;
}
.fd-opener-content { position: relative; display: flex; flex-direction: column; align-items: center; }
.fd-opener-content .eyebrow {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  margin: 0 0 22px;
  color: #7f684a;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: .2em;
  line-height: 1.4;
}
.fd-opener-content .eyebrow::before { width: 26px; height: 1px; background: currentColor; content: ""; }
.fd-opener-statement {
  margin: 0;
  max-width: 1000px;
  font-family: var(--serif);
  font-weight: 400;
  font-size: clamp(44px, 6vw, 84px);
  line-height: 1.02;
  letter-spacing: -.01em;
  color: #272925;
  text-wrap: wrap;
}
.fd-opener-statement em {
  display: block;
  margin-top: 18px;
  font-style: italic;
  font-weight: 400;
  font-size: clamp(21px, 2.2vw, 30px);
  line-height: 1.25;
  letter-spacing: inherit;
  color: #7f684a;
}
.fd-opener-copy {
  position: relative;
  max-width: 560px;
  margin: 36px auto 0;
  font-size: 17.5px;
  line-height: 1.7;
}
@media (max-width: 700px) { .fd-opener { min-height: 560px; } }
