/* V7 · Flexible hero text inside the curve; distinct banner columns. */
#wm-start-v7 {
  --s7-paper: #fffdf8; --s7-panel: #fffefb; --s7-soft: #f8f2e7;
  --s7-ink: #2b2e35; --s7-muted: #65616a; --s7-wine: #850a24;
  --s7-action: #850a24; --s7-line: #dac9ad; --s7-gold: #ac7c3b;
  --s7-serif: 'WM Referenz Serif', Georgia, serif;
  --s7-sans: 'WM Referenz Sans', Arial, sans-serif;
  --wm-ui-sans: var(--s7-sans); --wm-ui-serif: var(--s7-serif);
  background: var(--s7-paper) !important;
  background-image: none !important;
  color: var(--s7-ink) !important;
  font: 400 16px/1.55 var(--s7-sans) !important;
}
#wm-start-v7::before, #wm-start-v7::after, #wm-start-v7 .snow { display: none !important; }
#wm-start-v7 main, #wm-start-v7 main *, #wm-start-v7 main *::before, #wm-start-v7 main *::after { box-sizing: border-box; }
#wm-start-v7 main.wm-home-main { width: 100% !important; max-width: none !important; padding: 0 !important; margin: 0 !important; overflow: visible !important; }
#wm-start-v7 .wm-landing {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  grid-template-areas: 'photo' 'head' 'trust' 'offers' 'story' 'cta' !important;
  width: 100% !important; max-width: none !important; min-width: 0 !important;
  margin: 0 !important; padding: 0 !important; gap: 0 !important; position: relative !important;
}
#wm-start-v7 .wm-landing::before, #wm-start-v7 .wm-landing::after { display: none !important; }
#wm-start-v7 .wm-hero-photo {
  grid-area: photo !important;
  position: relative !important;
  inset: auto !important;
  width: 100% !important;
  height: clamp(260px, 52vw, 430px) !important;
  min-height: 0 !important; max-height: none !important;
  border: 0 !important; border-radius: 0 !important;
  background: #462014 !important; box-shadow: none !important;
  overflow: hidden !important; z-index: 0 !important;
}
#wm-start-v7 .wm-hero-photo img {
  display: block !important; position: absolute !important; inset: 0 !important;
  width: 100% !important; height: 100% !important; max-width: none !important;
  object-fit: cover !important; object-position: center 30% !important;
}
#wm-start-v7 .wm-hero-photo::after, #wm-start-v7 .wm-hero-photo .wm-sparkle-left, #wm-start-v7 .wm-hero-photo .wm-sparkle-right { display: none !important; }
#wm-start-v7 .wm-home-head {
  grid-area: head !important;
  position: relative !important; z-index: 1 !important;
  display: block !important; align-self: stretch !important;
  width: 100% !important; max-width: none !important; min-width: 0 !important;
  height: auto !important; min-height: 0 !important; max-height: none !important;
  padding: 30px 24px 24px !important; margin: 0 !important;
  border: 0 !important; border-radius: 0 !important;
  background: var(--s7-paper) !important; box-shadow: none !important;
  overflow: visible !important; text-align: center !important;
}
#wm-start-v7 .wm-home-head::before { display: none !important; }
#wm-start-v7 .wm-home-head .wm-hero-sweep { display: none !important; }
#wm-start-v7 .wm-hero-copy-v7 { position: relative; z-index: 1; width: 100%; max-width: 580px; min-width: 0; margin: 0 auto; }
#wm-start-v7 .wm-home-head .wm-display-brand {
  display: block !important; width: 100% !important; max-width: 100% !important;
  margin: 0 !important; color: var(--s7-wine) !important;
  font: 400 clamp(40px, 7vw, 60px)/.93 var(--s7-serif) !important;
  letter-spacing: -.045em !important; text-align: center !important;
}
#wm-start-v7 .wm-display-brand > span { display: block !important; white-space: normal !important; overflow-wrap: normal !important; }
#wm-start-v7 .wm-display-brand em { font-family: var(--s7-serif) !important; color: var(--s7-gold) !important; }
#wm-start-v7 .wm-home-head .wm-location {
  display: flex !important; justify-content: center !important; align-items: center !important; gap: 12px !important;
  width: 100% !important; margin: 16px 0 !important;
  font: 400 11px/1.4 var(--s7-sans) !important; letter-spacing: .22em !important;
  white-space: normal !important; color: var(--s7-gold) !important;
}
#wm-start-v7 .wm-location::before, #wm-start-v7 .wm-location::after {
  content: '' !important; display: block !important; width: auto !important; max-width: 64px; height: 1px;
  flex: 1 1 12px !important; background: var(--s7-line) !important;
}
#wm-start-v7 .wm-home-head h1 {
  display: block !important; width: 100% !important; max-width: 100% !important; min-width: 0 !important;
  margin: 0 0 14px !important; color: var(--s7-wine) !important;
  font: 400 clamp(33px, 5vw, 43px)/1.09 var(--s7-serif) !important;
  letter-spacing: -.025em !important;
  white-space: normal !important; text-wrap: balance !important;
  overflow-wrap: break-word !important; text-shadow: none !important;
}
#wm-start-v7 .wm-home-head h1::before, #wm-start-v7 .wm-home-head h1::after { display: none !important; content: none !important; }
#wm-start-v7 .wm-home-head .wm-intro {
  width: 100% !important; max-width: 100% !important; margin: 0 0 20px !important;
  font: 400 17px/1.5 var(--s7-sans) !important;
  color: var(--s7-ink) !important; text-align: inherit !important;
  overflow-wrap: break-word;
}
#wm-start-v7 .wm-home-head a.wm-action {
  display: flex !important; align-items: center !important; justify-content: center !important; gap: 14px !important;
  width: 100% !important; max-width: 100% !important; min-width: 0 !important; min-height: 48px !important;
  margin: 0 0 10px !important; padding: 12px 20px !important;
  border: 1px solid var(--s7-action) !important; border-radius: 7px !important;
  background: var(--s7-action) !important; background-image: none !important;
  color: #fffdf8 !important; font: 700 16px/1.4 var(--s7-sans) !important;
  text-decoration: none !important; text-shadow: none !important; box-shadow: none !important;
  white-space: normal !important; text-align: center !important; transform: none !important;
}
#wm-start-v7 .wm-home-head a.wm-action:hover { background: #a01534 !important; border-color: #a01534 !important; }
#wm-start-v7 .wm-home-head .wm-action span { font-size: 23px !important; line-height: 1 !important; }
#wm-start-v7 .wm-home-head .wm-linkdown { display: block !important; width: 100% !important; max-width: none !important; margin: 0 !important; font: 400 14px/1.5 var(--s7-sans) !important; color: var(--s7-wine) !important; text-align: center !important; }
#wm-start-v7 :is(.wm-trustline, .wm-offers, .wm-story, .wm-cta) { width: calc(100% - 64px) !important; max-width: 1160px !important; min-width: 0 !important; margin-left: auto !important; margin-right: auto !important; }
#wm-start-v7 .wm-trustline { grid-area: trust !important; display: flex !important; align-items: center !important; justify-content: center !important; gap: 16px !important; margin-top: 0 !important; margin-bottom: 0 !important; padding: 18px 0 !important; min-height: 0 !important; font: 400 11px/1.5 var(--s7-sans) !important; letter-spacing: .14em !important; text-align: center !important; color: var(--s7-gold) !important; }
#wm-start-v7 .wm-trustline::before, #wm-start-v7 .wm-trustline::after { flex: 1 1 16px !important; background: var(--s7-line) !important; }
#wm-start-v7 .wm-offers { grid-area: offers !important; padding: 12px 0 0 !important; scroll-margin-top: 90px; }
#wm-start-v7 .wm-section-heading { display: block !important; max-width: 900px !important; margin: 0 auto 26px !important; font: 400 clamp(32px, 3.5vw, 46px)/1.1 var(--s7-serif) !important; letter-spacing: -.03em !important; color: var(--s7-wine) !important; text-align: center !important; white-space: normal !important; text-wrap: balance !important; }
#wm-start-v7 .wm-section-heading .wm-stars { display: none !important; }
#wm-start-v7 .wm-offer-list { display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)) !important; gap: 22px !important; align-items: stretch !important; }
#wm-start-v7 .wm-offer-card, #wm-start-v7 .wm-offer-card:last-child {
  display: flex !important; flex-direction: column !important; grid-column: auto !important; width: auto !important; max-width: none !important;
  min-width: 0 !important; min-height: 0 !important; gap: 0 !important; padding: 9px !important;
  border: 1px solid var(--s7-line) !important; border-radius: 10px !important; background: var(--s7-panel) !important; box-shadow: none !important;
}
#wm-start-v7 .wm-offer-card img { display: block !important; width: 100% !important; height: auto !important; min-height: 0 !important; max-height: none !important; aspect-ratio: 4/3 !important; object-fit: cover !important; border-radius: 6px !important; margin: 0 0 18px !important; }
#wm-start-v7 .wm-offer-copy { display: flex !important; flex-direction: column !important; flex: 1 !important; min-width: 0 !important; padding: 0 10px 12px !important; }
#wm-start-v7 .wm-offer-copy h3 { font: 400 29px/1.1 var(--s7-serif) !important; color: var(--s7-wine) !important; margin: 0 0 12px !important; letter-spacing: -.025em !important; overflow-wrap: break-word; }
#wm-start-v7 .wm-offer-copy p { flex: 1 !important; font: 400 16px/1.5 var(--s7-sans) !important; color: var(--s7-ink) !important; margin: 0 0 18px !important; }
#wm-start-v7 .wm-offer-copy a { display: inline-block !important; margin-top: auto !important; font: 700 14px/1.5 var(--s7-sans) !important; color: var(--s7-wine) !important; text-decoration-thickness: 1px; text-underline-offset: 4px; }
#wm-start-v7 .wm-story { grid-area: story !important; padding: 48px 0 0 !important; text-align: center !important; scroll-margin-top: 90px; }
#wm-start-v7 .wm-story h2 { max-width: 980px !important; margin: 0 auto 16px !important; font: 400 clamp(32px, 3.5vw, 44px)/1.1 var(--s7-serif) !important; letter-spacing: -.025em !important; color: var(--s7-wine) !important; text-wrap: balance; }
#wm-start-v7 .wm-story > p { max-width: 810px !important; margin: 0 auto 24px !important; color: var(--s7-ink) !important; font: 400 17px/1.55 var(--s7-sans) !important; }
#wm-start-v7 .wm-story-details { width: 100% !important; max-width: 960px !important; margin: 0 auto !important; border: 1px solid var(--s7-line) !important; border-radius: 8px !important; background: var(--s7-panel) !important; text-align: left !important; }
#wm-start-v7 .wm-story-details summary { min-height: 48px !important; padding: 14px 20px !important; font: 700 15px/1.4 var(--s7-sans) !important; color: var(--s7-ink) !important; }
#wm-start-v7 .wm-story-inside { padding: 0 20px 16px !important; color: var(--s7-ink) !important; font: 400 16px/1.55 var(--s7-sans) !important; }
#wm-start-v7 .wm-story-inside p { font-family: var(--s7-sans) !important; color: var(--s7-ink) !important; }
#wm-start-v7 .wm-cta {
  grid-area: cta !important; display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(240px, 300px) !important;
  grid-template-areas: 'copy action' !important;
  gap: 28px !important; align-items: center !important;
  height: auto !important; min-height: 0 !important; max-height: none !important;
  margin-top: 36px !important; margin-bottom: 36px !important; padding: 32px 38px !important;
  border: 1px solid #b38a56 !important; border-radius: 10px !important;
  background: #850a24 !important; background-image: none !important;
  text-align: left !important; overflow: visible !important;
}
#wm-start-v7 .wm-cta::before, #wm-start-v7 .wm-cta::after { display: none !important; content: none !important; }
#wm-start-v7 .wm-cta-copy-v7 { grid-area: copy !important; min-width: 0 !important; }
#wm-start-v7 .wm-cta h2 {
  grid-area: auto !important; width: 100% !important; max-width: 100% !important; min-width: 0 !important;
  margin: 0 0 12px !important; font: 400 clamp(30px, 3vw, 39px)/1.12 var(--s7-serif) !important;
  letter-spacing: -.025em !important; color: #fff9ef !important;
  white-space: normal !important; text-wrap: balance !important; overflow-wrap: break-word !important;
}
#wm-start-v7 .wm-cta p { grid-area: auto !important; max-width: 60ch !important; margin: 0 !important; color: #fff3e5 !important; opacity: 1 !important; font: 400 16px/1.5 var(--s7-sans) !important; }
#wm-start-v7 .wm-cta > a {
  grid-area: action !important; align-self: center !important; justify-self: stretch !important;
  display: flex !important; align-items: center !important; justify-content: center !important; gap: 10px !important;
  width: 100% !important; max-width: 100% !important; min-width: 0 !important; min-height: 48px !important;
  margin: 0 !important; padding: 13px 18px !important; border: 1px solid #fff7e9 !important; border-radius: 7px !important;
  background: #fff7e9 !important; color: #850a24 !important;
  font: 700 15px/1.4 var(--s7-sans) !important; text-align: center !important;
  text-decoration: none !important; white-space: normal !important; box-shadow: none !important;
}
#wm-start-v7 .wm-cta > a:hover { background: #f4e1c4 !important; }
#wm-start-v7 main :is(a, summary):focus-visible { outline: 3px solid #b58a4e !important; outline-offset: 4px !important; }
#wm-start-v7 .header > .container { width: calc(100% - 64px) !important; max-width: 1160px !important; padding-left: 0 !important; padding-right: 0 !important; }
#wm-start-v7 .footer .wm-footer-reference, #wm-start-v7 .footer details.wm-footer-more { width: calc(100% - 64px) !important; max-width: 1160px !important; }
@media (min-width: 961px) {
  #wm-start-v7 .wm-landing { grid-template-areas: 'head' 'trust' 'offers' 'story' 'cta' !important; }
  #wm-start-v7 .wm-hero-photo { grid-area: head !important; height: auto !important; align-self: stretch !important; max-width: 1920px !important; justify-self: center !important; }
  #wm-start-v7 .wm-hero-photo img { inset: 0 0 0 auto !important; width: 62% !important; }
  #wm-start-v7 .wm-home-head { padding: 36px 0 !important; min-height: 520px !important; max-width: 1920px !important; justify-self: center !important; background: transparent !important; text-align: left !important; }
  #wm-start-v7 .wm-home-head .wm-hero-sweep { display: block !important; position: absolute !important; inset: 0 !important; width: 100% !important; height: 100% !important; z-index: 0 !important; pointer-events: none !important; }
  #wm-start-v7 .wm-hero-sweep .wm-hero-paper { fill: var(--s7-paper) !important; }
  #wm-start-v7 .wm-hero-sweep .wm-hero-edge { stroke: var(--s7-gold) !important; }
  #wm-start-v7 .wm-hero-sweep .wm-hero-gold { fill: var(--s7-gold) !important; }
  /* The curve starts at 44.54% of the hero width. Copy ends before that edge. */
  #wm-start-v7 .wm-hero-copy-v7 { width: min(38%, 480px) !important; max-width: none !important; margin: 0 0 0 max(40px, calc((100% - 1320px) / 2)) !important; }
  #wm-start-v7 .wm-home-head .wm-display-brand { font-size: clamp(46px, 3.65vw, 62px) !important; }
  #wm-start-v7 .wm-home-head h1 { font-size: clamp(34px, 2.8vw, 44px) !important; }
  #wm-start-v7 .wm-home-head .wm-intro { font-size: 17px !important; }
}
@media (max-width: 960px) {
  #wm-start-v7 .wm-offer-list { gap: 14px !important; }
  #wm-start-v7 .wm-offer-copy h3 { font-size: 26px !important; }
  #wm-start-v7 .wm-cta { grid-template-columns: minmax(0, 1fr) !important; grid-template-areas: 'copy' 'action' !important; gap: 22px !important; }
  #wm-start-v7 .wm-cta > a { width: fit-content !important; max-width: 100% !important; min-width: 260px !important; justify-self: start !important; }
}
@media (max-width: 700px) {
  #wm-start-v7 :is(.wm-trustline, .wm-offers, .wm-story, .wm-cta), #wm-start-v7 .header > .container, #wm-start-v7 .footer .wm-footer-reference, #wm-start-v7 .footer details.wm-footer-more { width: calc(100% - 36px) !important; }
  #wm-start-v7 .wm-offer-list { grid-template-columns: minmax(0, 1fr) !important; gap: 20px !important; }
  #wm-start-v7 .wm-offer-card img { aspect-ratio: 16/10 !important; }
  #wm-start-v7 .wm-offer-copy h3 { font-size: 30px !important; }
  #wm-start-v7 .wm-offer-copy { padding: 0 10px 14px !important; }
  #wm-start-v7 .wm-story { padding-top: 36px !important; }
  #wm-start-v7 .wm-story h2 { font-size: 32px !important; }
  #wm-start-v7 .wm-story > p { font-size: 16px !important; }
  #wm-start-v7 .wm-trustline { font-size: 10px !important; letter-spacing: .08em !important; gap: 8px !important; }
  #wm-start-v7 .wm-cta { padding: 26px 22px !important; margin-top: 28px !important; margin-bottom: 28px !important; }
  #wm-start-v7 .wm-cta > a { width: 100% !important; min-width: 0 !important; }
}
@media (max-width: 360px) { #wm-start-v7 .wm-home-head { padding-left: 18px !important; padding-right: 18px !important; } #wm-start-v7 .wm-display-brand { font-size: 39px !important; } #wm-start-v7 .wm-location { letter-spacing: .16em !important; } }
html[data-theme='dark'] #wm-start-v7 {
  --s7-paper: #151c25; --s7-panel: #1b232e; --s7-soft: #222d39; --s7-ink: #f3eadf;
  --s7-muted: #c9bfb7; --s7-wine: #f1c79e; --s7-action: #8a1834; --s7-line: #776044; --s7-gold: #cda568;
}
@media (prefers-reduced-motion: reduce) { #wm-start-v7 * { animation: none !important; transition: none !important; scroll-behavior: auto !important; } }
