/* W05 V2 preparation: content blocks only. Native Genesis/Mai shell is retained.
 * Enqueue for frontend and the block-editor content iframe after vendor audit.
 * No template, header, navigation, footer, grid engine, slider or animation.
 */
.plg-home-v2 {
  --plg-editorial-space: clamp(2.75rem, 7vw, 6rem);
  --plg-editorial-gap: clamp(1.25rem, 3.5vw, 3rem);
  color: #242622;
  background-color: #f7f4ed;
  font-family: 'Noto Sans', sans-serif;
  scroll-margin-top: 1.5rem;
}
.plg-home-v2 :where(h1,h2,h3) {
  font-family: 'EB Garamond', serif;
  font-weight: 500;
  text-wrap: balance;
}
.plg-home-v2 :where(p,a) { overflow-wrap: break-word; }
.plg-home-v2 :where(p) { max-width: 42rem; }
.plg-home-v2.plg-v2-hero { padding-block: 1.25rem 0; }
.plg-home-v2 .plg-v2-hero-intro { margin-block-end: 1.5rem; }
.plg-home-v2 .plg-v2-title {
  margin-block: 0 .5rem;
  font-size: clamp(2.125rem, 5vw, 4rem);
  line-height: 1.06;
}
.plg-home-v2 .plg-v2-lead { line-height: 1.55; }
.plg-home-v2 .plg-v2-hero-intro .plg-v2-lead { margin-block: 0 .875rem; }
.plg-home-v2.plg-v2-universe,
.plg-home-v2.plg-v2-close { padding-block: var(--plg-editorial-space); }
.plg-home-v2 :where(.wp-block-columns) { gap: var(--plg-editorial-gap); }
.plg-home-v2 :where(.plg-v2-house-details,.plg-v2-corporate) {
  margin-block-start: var(--plg-editorial-gap);
}
.plg-home-v2 :where(.plg-v2-house-copy,.plg-v2-event-copy) {
  padding-block: clamp(.25rem, 2vw, 1.5rem);
}
.plg-home-v2 .plg-v2-photo { margin-block: 0; }
.plg-home-v2 .plg-v2-photo img {
  display: block;
  width: 100%;
  height: auto;
}
.plg-home-v2 .plg-v2-actions { gap: .75rem 1.5rem; }
.plg-home-v2 .plg-v2-link .wp-block-button__link {
  min-height: 2.75rem;
  padding: .625rem 0;
  border: 0;
  border-bottom: 1px solid currentColor;
  border-radius: 0;
  background: transparent;
  color: #2f4a3c;
  font: inherit;
  line-height: 1.4;
  text-decoration: none;
}
.plg-home-v2 a:focus-visible { outline: 2px solid #2f4a3c; outline-offset: 4px; }
.plg-home-v2 .plg-v2-note { font-size: .875rem; line-height: 1.55; }
.plg-home-v2.plg-v2-close { border-top: 1px solid #c8c8c8; }
@media (max-width: 480px) {
  .plg-home-v2.plg-v2-hero { padding-block-start: .75rem; }
  .plg-home-v2 .plg-v2-hero-intro { margin-block-end: 1rem; }
}
/* 0.3.2: two editable image invitations replace the standalone Home preamble. */
.plg-home-v2.plg-v2-opening { padding-block: clamp(.75rem, 2vw, 1.5rem) 0; }
.plg-home-v2 .plg-v2-opening-pair { align-items: flex-start; margin-block: 0; }
.plg-home-v2 .plg-v2-opening-pair > .wp-block-column { min-width: 0; }
.plg-home-v2 .plg-v2-opening-copy { padding-block-start: clamp(1rem, 2vw, 1.75rem); }
.plg-home-v2 .plg-v2-opening-title {
  margin-block: 0 .5rem;
  font-size: clamp(2rem, 3.6vw, 3.25rem);
  line-height: 1.1;
}
.plg-home-v2 .plg-v2-opening-copy .plg-v2-lead { margin-block: 0 1.25rem; }
.plg-v2 .plg-v2-photo .wp-element-caption { font-size: .8125rem; line-height: 1.5; margin-block: .5rem 0; }
.plg-home-v2.plg-v2-opening .plg-v2-photo--hero img { aspect-ratio: auto; object-fit: contain; }
/* Preserve the native stacking breakpoint and the photographs' intrinsic ratios. */
@media (max-width: 781px) {
  .plg-home-v2 .plg-v2-opening-pair { gap: var(--plg-editorial-space); }
}
/* Removing the Events index must not leave its previous oversized empty gap. */
.plg-interior-v2.plg-v2-events-intro { padding-block-end: 0; }
.plg-interior-v2.plg-v2-events-intro + .plg-v2-wedding {
  padding-block-start: clamp(1.5rem, 3vw, 2.5rem);
}
/* 0.3.2 provisional sources: preserve real resolution; do not stretch small originals. */
.plg-v2 .plg-v2-photo--event-wedding-ceremony { max-width: 765px; margin-inline: auto; }
.plg-v2 .plg-v2-photo--event-wedding-dinner { max-width: 764px; margin-inline: auto; }
.plg-v2 .plg-v2-photo--event-business-meeting { max-width: 765px; margin-inline: auto; }
.plg-v2 .plg-v2-photo--event-business-garden { max-width: 765px; margin-inline: auto; }
