/* Gutenberg wrappers preserve the existing homepage composition in both languages. */
.home-hero > .home-hero-image { position: absolute; inset: 0; margin: 0; height: 100%; width: 100%; }
.home-hero-image img { width: 100%; height: 100%; object-fit: cover; object-position: center 48%; filter: brightness(.72) saturate(.48) contrast(1.05); }
.home-hero::before { content: ""; position: absolute; inset: 0; z-index: 1; background: linear-gradient(rgba(22,20,18,.36),rgba(20,17,15,.5)),linear-gradient(90deg,rgba(12,14,15,.38),rgba(12,14,15,.12) 52%,rgba(12,14,15,.34)); }
.home-hero::after { content: ""; position: absolute; bottom: -1px; left: 0; width: 100%; aspect-ratio: 821.61 / 110; background: url('../images/hero-ridge.svg') bottom / 100% auto no-repeat; z-index: 3; pointer-events: none; }
.home-hero .hero-content { margin: 0; }
.home-hero .hero-actions { gap: 14px; justify-content: center; }
.home-hero .wp-block-button__link { border-radius: 0; border: 1px solid transparent; min-height: 46px; padding: 12px 20px; font-size: .78rem; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; line-height: inherit; }
.home-button-light .wp-block-button__link { background: var(--alvelus-white); color: var(--alvelus-ink); }
.home-button-light .wp-block-button__link:hover { background: var(--alvelus-gold); }
.home-button-outline .wp-block-button__link { background: transparent; border-color: rgba(255,250,242,.56); color: var(--alvelus-white); }
.home-button-outline .wp-block-button__link:hover { background: rgba(255,250,242,.12); }
.home-story .story-grid, .home-visit .visit-grid { margin-inline: auto; }
.home-story .story-body, .home-story .story-heading, .home-visit .visit-copy { margin: 0; }
.home-editorial-link .wp-block-button__link { align-items: center; background: transparent; border-radius: 0; border-bottom: 1px solid currentColor; color: var(--alvelus-wine); display: inline-flex; font-size: .76rem; font-weight: 700; letter-spacing: .05em; padding: 0 0 8px; text-align: left; text-transform: uppercase; }
.home-story .story-body > .wp-block-buttons { margin-top: 26px; }
.home-story .estate-notes { position: relative; }
.home-story .estate-notes::before { content: ""; display: block; grid-column: 1 / -1; height: 18px; margin-bottom: 14px; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1000 18' preserveAspectRatio='none'%3E%3Cpath d='M0 5 H620 C648 5 654 13 676 13 C698 13 704 5 732 5 H1000' fill='none' stroke='%23c18c45' vector-effect='non-scaling-stroke'/%3E%3C/svg%3E") center / 100% 100% no-repeat; }
.home-story .estate-notes article { margin: 0; }
.home-story .estate-notes p.estate-note-label { color: var(--alvelus-wine); font-family: var(--alvelus-sans); font-size: .72rem; font-weight: 700; letter-spacing: .08em; line-height: 1.65; margin-bottom: 10px; text-transform: uppercase; }
.home-map-card { margin: 0; }
.home-map-image { position: absolute; inset: 0; width: 100%; height: 100%; margin: 0; }
.home-map-image img { height: 100%; width: 100%; object-fit: cover; object-position: 49% center; transition: filter 300ms ease,transform 500ms ease; }
.home-map-card > .wp-block-buttons { position: static; margin: 0; }
.home-map-action .wp-block-button__link { position: absolute; inset: 0; z-index: 2; background: transparent; border-radius: 0; display: flex; align-items: end; justify-content: start; gap: 8px; text-align: left; padding: 22px; color: var(--alvelus-white); font-size: .72rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.home-map-action .wp-block-button__link::after { content: '↗'; font-size: 1rem; }
.home-map-card:hover .home-map-image img { transform: scale(1.025); filter: brightness(1.06); }
.home-selector-editor { padding: 40px; background: var(--alvelus-paper); }
.home-selector-editor h2 { font-family: var(--alvelus-serif); font-size: 42px; }
.home-selector-editor__wines { display: grid; grid-template-columns: repeat(3,1fr); gap: 16px; margin-block: 24px; }
.home-selector-editor__wines > div { padding: 18px; border: 1px solid var(--alvelus-line); }
.home-selector-editor__wines p { font-size: 14px; }
.home-selector-editor__help { font: 13px/1.6 var(--alvelus-sans); }
.editor-styles-wrapper:has(.home-hero) .is-root-container { max-width: none; padding: 0; }
.editor-styles-wrapper:has(.home-hero) .is-root-container > .wp-block { max-width: none; width: 100%; margin-inline: 0; }
.editor-styles-wrapper .home-hero { min-height: 620px; }
.editor-styles-wrapper .home-hero::before { pointer-events: none; }
.editor-styles-wrapper .home-hero .hero-content { padding-top: 90px; }
.editor-styles-wrapper .home-hero .wp-block-image { max-width: none; }
.editor-styles-wrapper .home-visit .wp-block-alvelus-site-contact { min-width: 0; }
.editor-styles-wrapper .home-map-action .wp-block-button__link { position: relative; min-height: 180px; }
@media (max-width: 900px) { .home-selector-editor__wines { grid-template-columns: 1fr 1fr; } }
@media (max-width: 680px) {
  .home-hero-image img { object-position: 58% center; }
  .home-hero .hero-actions { flex-direction: column; align-items: stretch; }
  .home-hero .hero-actions .wp-block-button, .home-hero .hero-actions .wp-block-button__link { width: 100%; }
  .home-story .estate-notes::before { margin-bottom: 6px; }
  .home-selector-editor__wines { grid-template-columns: 1fr; }
}
