/*
Theme Name: Jens Welsch Gallery
Theme URI: https://www.jens-welsch.de/
Author: Jens Welsch / OpenAI
Description: Helles, reduziertes Fotografie-Portfolio im Galerie-/Bauhaus-Stil.
Version: 5.1.0
Text Domain: jens-welsch-gallery
*/
:root{
  --jw-bg:#f5f3ee;
  --jw-white:#fffdfa;
  --jw-ink:#111111;
  --jw-muted:#66635f;
  --jw-line:#d8d6d0;
  --jw-red:#e21a17;
  --jw-max:1500px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--jw-bg);color:var(--jw-ink);font-family:Arial,Helvetica,sans-serif;line-height:1.55}
img{display:block;max-width:100%;height:auto}
a{color:inherit;text-decoration:none}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--jw-red);outline-offset:4px}
.jw-wrap{max-width:var(--jw-max);margin:0 auto;padding:0 32px}
.site-header{position:sticky;top:0;z-index:50;background:rgba(245,243,238,.95);backdrop-filter:blur(12px);border-bottom:1px solid rgba(0,0,0,.05)}
.header-inner{min-height:92px;display:flex;align-items:center;justify-content:space-between;gap:30px}
.brand{letter-spacing:.32em;font-weight:700;font-size:22px;line-height:1.35}
.brand small{display:block;font-size:11px;font-weight:500;letter-spacing:.35em;margin-top:3px}
.red-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--jw-red);margin-left:5px;vertical-align:middle}
.main-nav ul{display:flex;gap:27px;list-style:none;padding:0;margin:0;align-items:center}
.main-nav a{font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.main-nav a:hover{color:var(--jw-red)}
.menu-toggle{display:none;background:none;border:0;font-size:27px;cursor:pointer}
.hero{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(350px,.85fr);min-height:610px;background:var(--jw-white)}
.hero-image{min-height:610px;background:center/cover no-repeat}
.hero-copy{display:flex;align-items:center;padding:70px 8vw 70px 5vw}
.kicker{font-size:12px;letter-spacing:.26em;text-transform:uppercase;color:var(--jw-red)}
.hero h1{font-size:clamp(38px,4.5vw,74px);line-height:1.03;letter-spacing:.18em;margin:0 0 26px;font-weight:500}
.hero h1 .red-dot{width:10px;height:10px}
.red-rule{width:56px;border-top:2px solid var(--jw-red);margin:22px 0}
.hero-sub{font-size:13px;letter-spacing:.16em;text-transform:uppercase;line-height:1.8}
.hero-loc{font-size:11px;color:var(--jw-muted);letter-spacing:.12em;text-transform:uppercase;margin-top:18px}
.section-grid{display:grid;grid-template-columns:32% 68%;min-height:520px;background:var(--jw-white);border-top:1px solid var(--jw-line)}
.section-grid.reverse{grid-template-columns:68% 32%}
.section-copy{padding:54px clamp(32px,5vw,80px);display:flex;flex-direction:column;justify-content:center}
.section-number{color:var(--jw-red);font-size:17px;letter-spacing:.18em}
.section-copy h2{font-size:28px;letter-spacing:.20em;font-weight:500;margin:18px 0 14px}
.section-copy p{font-size:13px;letter-spacing:.10em;text-transform:uppercase;max-width:360px}
.section-image{min-height:520px;background:center/cover no-repeat}
.text-link{margin-top:24px;color:var(--jw-red);font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.herzfoto-logo{width:150px;margin:18px 0 0}
.portrait-trio{display:grid;grid-template-columns:1fr .58fr .9fr;min-height:520px;border-top:1px solid var(--jw-line);background:var(--jw-white)}
.portrait-trio .img{background:center/cover no-repeat;min-height:520px}
.portrait-trio .mid{padding:50px 50px;display:flex;flex-direction:column;justify-content:center}
.service-links a{display:block;margin:16px 0;font-size:12px;letter-spacing:.12em;text-transform:uppercase}
.service-links a span{color:var(--jw-red);padding-left:12px}
.cards{display:grid;grid-template-columns:repeat(3,1fr);background:var(--jw-white);border-top:1px solid var(--jw-line)}
.card{display:grid;grid-template-columns:.9fr 1.1fr;min-height:360px;border-right:1px solid var(--jw-line)}
.card:last-child{border-right:0}
.card-copy{padding:40px 28px}
.card-copy h3{letter-spacing:.18em;font-size:20px;font-weight:500}
.card-img{background:center/cover no-repeat}
.stage{display:grid;grid-template-columns:30% 70%;background:#111;color:#fff;min-height:430px}
.stage .section-copy{background:var(--jw-white);color:var(--jw-ink)}
.stage-visual{display:flex;align-items:center;justify-content:center;padding:50px;background:radial-gradient(circle at 50% 45%,#393939 0,#151515 45%,#050505 100%)}
.stage-placeholder{max-width:760px;text-align:center;border:1px solid #454545;padding:75px 45px}
.stage-placeholder strong{display:block;font-size:32px;letter-spacing:.16em;font-weight:400}
.stage-placeholder span{display:block;color:#bbb;margin-top:12px;letter-spacing:.10em;text-transform:uppercase;font-size:12px}
.contact-strip{text-align:center;padding:64px 32px 70px;background:var(--jw-white);border-top:1px solid var(--jw-line)}
.contact-strip h2{font-size:clamp(24px,3vw,42px);letter-spacing:.20em;font-weight:500;margin:0}
.contact-strip p{color:var(--jw-muted)}
.btn{display:inline-block;background:var(--jw-red);color:#fff;padding:14px 22px;font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;border:0;cursor:pointer}
.site-footer{padding:28px 0;font-size:11px;color:var(--jw-muted);text-transform:uppercase;letter-spacing:.08em}
.footer-inner{display:flex;justify-content:space-between;gap:25px;flex-wrap:wrap}
.entry{max-width:980px;margin:70px auto;padding:0 32px}
.entry h1{font-size:44px;letter-spacing:.12em;font-weight:500}
.contact-form{display:grid;gap:15px;max-width:700px}
.contact-form label{font-size:12px;text-transform:uppercase;letter-spacing:.1em}
.contact-form input,.contact-form textarea{width:100%;padding:14px;border:1px solid var(--jw-line);background:#fff;font:inherit}
.contact-form textarea{min-height:180px}
.notice{padding:14px 18px;background:#eef4ec;border-left:3px solid #4b7b43;margin-bottom:22px}
.honeypot{position:absolute!important;left:-10000px!important}
@media(max-width:1050px){
 .main-nav{display:none;position:absolute;top:92px;left:0;right:0;background:var(--jw-bg);padding:25px 32px;border-bottom:1px solid var(--jw-line)}
 .main-nav.open{display:block}
 .main-nav ul{flex-direction:column;align-items:flex-start}
 .menu-toggle{display:block}
 .hero{grid-template-columns:1fr}
 .hero-image{min-height:58vw}
 .hero-copy{padding:55px 32px}
 .section-grid,.section-grid.reverse{grid-template-columns:1fr}
 .section-image{min-height:60vw}
 .portrait-trio{grid-template-columns:1fr}
 .portrait-trio .img{min-height:72vw}
 .cards{grid-template-columns:1fr}
 .card{border-right:0;border-bottom:1px solid var(--jw-line)}
 .stage{grid-template-columns:1fr}
}
@media(max-width:620px){
 .jw-wrap{padding:0 20px}
 .header-inner{min-height:76px}
 .brand{font-size:17px}
 .main-nav{top:76px}
 .hero h1{letter-spacing:.12em}
 .section-copy{padding:42px 24px}
 .card{grid-template-columns:1fr}
 .card-img{min-height:70vw}
 .footer-inner{display:block}
}


/* --- Bühne / Figurentheater Unterseite --- */
.stage-page{background:#0a0a0a;color:#fff}
.stage-hero{min-height:78vh;position:relative;background:center/cover no-repeat;display:flex;align-items:flex-end}
.stage-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.78) 0%,rgba(0,0,0,.22) 45%,rgba(0,0,0,.12) 100%)}
.stage-hero-copy{position:relative;z-index:1;padding:70px 32px 72px;max-width:var(--jw-max);width:100%;margin:0 auto}
.stage-hero-copy .section-number{font-size:16px}
.stage-hero h1{font-size:clamp(44px,7vw,104px);line-height:.95;letter-spacing:.12em;margin:18px 0 22px;font-weight:500}
.stage-hero p{max-width:760px;font-size:15px;letter-spacing:.08em;text-transform:uppercase;color:#e8e8e8}
.stage-intro{background:var(--jw-white);color:var(--jw-ink);padding:90px 32px}
.stage-intro-inner{max-width:1150px;margin:0 auto;display:grid;grid-template-columns:.8fr 1.2fr;gap:80px}
.stage-intro h2{font-size:34px;letter-spacing:.18em;font-weight:500;margin:0}
.stage-intro p{font-size:18px;line-height:1.75;color:#3d3b39}
.stage-gallery{padding:0;background:#080808}
.stage-gallery-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:4px}
.stage-gallery-grid figure{margin:0;overflow:hidden;background:#111}
.stage-gallery-grid img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.stage-gallery-grid figure:hover img{transform:scale(1.015)}
.g-wide{grid-column:span 12;aspect-ratio:16/8}
.g-half{grid-column:span 6;aspect-ratio:4/3}
.g-third{grid-column:span 4;aspect-ratio:3/4}
.g-two-thirds{grid-column:span 8;aspect-ratio:16/10}
.stage-quote{background:#0e0e0e;color:#fff;padding:100px 32px;text-align:center}
.stage-quote blockquote{max-width:980px;margin:0 auto;font-size:clamp(28px,4vw,54px);line-height:1.25;font-weight:300;letter-spacing:.04em}
.stage-quote cite{display:block;margin-top:26px;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:#aaa;font-style:normal}
.stage-meta{background:var(--jw-white);color:var(--jw-ink);padding:70px 32px}
.stage-meta-inner{max-width:1150px;margin:0 auto;display:grid;grid-template-columns:repeat(3,1fr);gap:50px}
.stage-meta h3{font-size:13px;color:var(--jw-red);letter-spacing:.16em;text-transform:uppercase}
.stage-meta p{margin:5px 0;font-size:15px}
.stage-page .contact-strip{background:var(--jw-bg);color:var(--jw-ink)}
@media(max-width:900px){
 .stage-intro-inner,.stage-meta-inner{grid-template-columns:1fr;gap:30px}
 .g-third,.g-half,.g-two-thirds{grid-column:span 12;aspect-ratio:4/3}
 .stage-hero{min-height:70vh}
}


/* --- Beauty / Editorial Unterseite --- */
.beauty-page{background:var(--jw-bg);color:var(--jw-ink)}
.beauty-hero{display:grid;grid-template-columns:1.05fr .95fr;min-height:78vh;background:var(--jw-white)}
.beauty-hero-image{background:center/cover no-repeat;min-height:78vh}
.beauty-hero-copy{display:flex;align-items:center;padding:70px clamp(38px,7vw,110px)}
.beauty-hero h1{font-size:clamp(50px,7vw,104px);line-height:.92;letter-spacing:.12em;font-weight:500;margin:18px 0 24px}
.beauty-hero p{font-size:13px;letter-spacing:.14em;text-transform:uppercase;line-height:1.9;color:#4f4c48}
.beauty-intro{padding:92px 32px;background:var(--jw-bg)}
.beauty-intro-inner{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:.72fr 1.28fr;gap:85px}
.beauty-intro h2{font-size:36px;letter-spacing:.17em;font-weight:500;margin:0}
.beauty-intro p{font-size:18px;line-height:1.8;color:#3e3b37}
.beauty-gallery{background:var(--jw-white)}
.beauty-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:5px;padding:5px}
.beauty-grid figure{margin:0;overflow:hidden;background:#ddd}
.beauty-grid img{width:100%;height:100%;object-fit:cover;transition:transform .45s ease}
.beauty-grid figure:hover img{transform:scale(1.015)}
.b-wide{grid-column:span 12;aspect-ratio:16/8.5}
.b-half{grid-column:span 6;aspect-ratio:4/5}
.b-third{grid-column:span 4;aspect-ratio:3/4}
.b-two-thirds{grid-column:span 8;aspect-ratio:16/10}
.b-square{grid-column:span 4;aspect-ratio:1/1}
.beauty-break{display:grid;grid-template-columns:1fr 1fr;background:#111;color:#fff}
.beauty-break-image{min-height:560px;background:center/cover no-repeat}
.beauty-break-copy{padding:70px clamp(36px,7vw,100px);display:flex;flex-direction:column;justify-content:center}
.beauty-break-copy h2{font-size:38px;letter-spacing:.16em;font-weight:500}
.beauty-break-copy p{max-width:560px;color:#d0d0d0;font-size:17px;line-height:1.75}
.beauty-meta{padding:70px 32px;background:var(--jw-white)}
.beauty-meta-inner{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:repeat(3,1fr);gap:50px}
.beauty-meta h3{font-size:12px;color:var(--jw-red);letter-spacing:.16em;text-transform:uppercase}
.beauty-meta p{font-size:15px;margin:5px 0}
@media(max-width:900px){
 .beauty-hero,.beauty-intro-inner,.beauty-break,.beauty-meta-inner{grid-template-columns:1fr}
 .beauty-hero-image{min-height:72vw}
 .beauty-hero-copy{padding:52px 28px}
 .beauty-intro-inner{gap:30px}
 .b-half,.b-third,.b-two-thirds,.b-square{grid-column:span 12;aspect-ratio:4/5}
 .beauty-break-image{min-height:72vw}
}

/* --- Eventfotografie / Konzert Unterseite --- */
.event-page{background:#0a0a0a;color:#fff}
.event-hero{min-height:78vh;position:relative;background:center/cover no-repeat;display:flex;align-items:flex-end}
.event-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.82),rgba(0,0,0,.16) 58%,rgba(0,0,0,.08))}
.event-hero-copy{position:relative;z-index:1;padding:70px 32px 72px;max-width:var(--jw-max);width:100%;margin:0 auto}
.event-hero h1{font-size:clamp(44px,7vw,104px);line-height:.95;letter-spacing:.12em;margin:18px 0 22px;font-weight:500}
.event-hero p{font-size:15px;letter-spacing:.1em;text-transform:uppercase;color:#eee}
.event-intro{background:var(--jw-white);color:var(--jw-ink);padding:90px 32px}
.event-intro-inner{max-width:1150px;margin:0 auto;display:grid;grid-template-columns:.8fr 1.2fr;gap:80px}
.event-intro h2{font-size:34px;letter-spacing:.18em;font-weight:500;margin:0}
.event-intro p{font-size:18px;line-height:1.75;color:#3d3b39}
.event-gallery{background:#080808;padding:4px}
.event-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:4px}
.event-grid figure{margin:0;overflow:hidden;background:#111}
.event-grid img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.event-grid figure:hover img{transform:scale(1.015)}
.e-wide{grid-column:span 12;aspect-ratio:16/7}
.e-half{grid-column:span 6;aspect-ratio:4/3}
.e-third{grid-column:span 4;aspect-ratio:3/4}
.e-two-thirds{grid-column:span 8;aspect-ratio:16/10}
.event-quote{background:#0e0e0e;padding:100px 32px;text-align:center}
.event-quote blockquote{max-width:980px;margin:0 auto;font-size:clamp(28px,4vw,54px);line-height:1.25;font-weight:300;letter-spacing:.04em}
.event-quote cite{display:block;margin-top:26px;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:#aaa;font-style:normal}
.event-meta{background:var(--jw-white);color:var(--jw-ink);padding:70px 32px}
.event-meta-inner{max-width:1150px;margin:0 auto;display:grid;grid-template-columns:repeat(3,1fr);gap:50px}
.event-meta h3{font-size:13px;color:var(--jw-red);letter-spacing:.16em;text-transform:uppercase}.event-meta p{margin:5px 0;font-size:15px}
.event-page .contact-strip{background:var(--jw-bg);color:var(--jw-ink)}
@media(max-width:900px){.event-intro-inner,.event-meta-inner{grid-template-columns:1fr;gap:30px}.e-third,.e-half,.e-two-thirds{grid-column:span 12;aspect-ratio:4/3}.event-hero{min-height:70vh}}


/* ================================================================
   Version 5 – V2 Originaldesign als editierbare Gutenberg-Seiten
   ================================================================ */
.jw-v2-editable{background:var(--jw-bg);color:var(--jw-ink)}
.jw-v2-editable .hero-image.wp-block-image,
.jw-v2-editable .section-image.wp-block-image,
.jw-v2-editable .card-img.wp-block-image,
.jw-v2-editable .stage-visual.wp-block-image,
.jw-v2-editable .beauty-hero-image.wp-block-image,
.jw-v2-editable .beauty-break-image.wp-block-image{
  margin:0;
  min-width:0;
  min-height:0;
  overflow:hidden;
}
.jw-v2-editable .hero-image.wp-block-image img,
.jw-v2-editable .section-image.wp-block-image img,
.jw-v2-editable .card-img.wp-block-image img,
.jw-v2-editable .stage-visual.wp-block-image img,
.jw-v2-editable .beauty-hero-image.wp-block-image img,
.jw-v2-editable .beauty-break-image.wp-block-image img{
  width:100%;height:100%;object-fit:cover;display:block;
}
.jw-v2-editable .hero-image.wp-block-image{min-height:78vh}
.jw-v2-editable .section-image.wp-block-image{min-height:560px}
.jw-v2-editable .card-img.wp-block-image{min-height:360px}
.jw-v2-editable .stage-visual.wp-block-image{background:#080808;min-height:430px}
.jw-v2-editable .beauty-hero-image.wp-block-image{min-height:78vh}
.jw-v2-editable .beauty-break-image.wp-block-image{min-height:560px}
.jw-v2-editable .portrait-trio .img.wp-block-image{margin:0;min-height:520px}
.jw-v2-editable .portrait-trio .img.wp-block-image img{width:100%;height:100%;object-fit:cover;display:block}
.jw-v2-editable .card{display:grid}
.jw-v2-editable .card-copy{min-width:0}
.jw-v2-editable .service-links .wp-block-button{width:100%}
.jw-v2-editable .service-links .wp-block-button__link{
  display:flex;justify-content:space-between;width:100%;background:transparent;color:var(--jw-ink);
  border:0;border-bottom:1px solid var(--jw-line);border-radius:0;padding:13px 0;
  text-transform:uppercase;letter-spacing:.12em;font-size:11px
}
.jw-v2-editable .text-link.wp-block-button__link{
  background:transparent;color:var(--jw-ink);padding:0;border-radius:0;
  text-transform:uppercase;letter-spacing:.12em;font-size:11px
}
.jw-v2-editable .stage-page .text-link.wp-block-button__link,
.jw-v2-editable .beauty-break .text-link.wp-block-button__link{
  color:#fff
}
.jw-v2-editable .btn.wp-block-button__link{
  background:var(--jw-red);color:#fff;border-radius:0;padding:14px 22px;
  font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase
}
.jw-v2-editable .beauty-grid > .wp-block-image,
.jw-v2-editable .stage-gallery-grid > .wp-block-image,
.jw-v2-editable .event-grid > .wp-block-image{
  margin:0;overflow:hidden;background:#111
}
.jw-v2-editable .beauty-grid > .wp-block-image img,
.jw-v2-editable .stage-gallery-grid > .wp-block-image img,
.jw-v2-editable .event-grid > .wp-block-image img{
  width:100%;height:100%;object-fit:cover;display:block
}
.jw-v2-editable .beauty-meta-inner > .wp-block-group,
.jw-v2-editable .stage-meta-inner > .wp-block-group,
.jw-v2-editable .event-meta-inner > .wp-block-group{min-width:0}
.jw-v2-editable .contact-strip .wp-block-buttons{justify-content:center}
.jw-v2-editable .contact-strip .wp-block-button{margin:0 auto}
.jw-v2-editable .stage-hero-editable,
.jw-v2-editable .event-hero-editable{
  min-height:78vh;position:relative;display:flex;align-items:flex-end;background:#050505;overflow:hidden
}
.jw-v2-editable .stage-hero-editable > .wp-block-image,
.jw-v2-editable .event-hero-editable > .wp-block-image{
  position:absolute;inset:0;margin:0;width:100%;height:100%
}
.jw-v2-editable .stage-hero-editable > .wp-block-image img,
.jw-v2-editable .event-hero-editable > .wp-block-image img{
  width:100%;height:100%;object-fit:cover
}
.jw-v2-editable .stage-hero-editable:after,
.jw-v2-editable .event-hero-editable:after{
  content:"";position:absolute;inset:0;z-index:1;
  background:linear-gradient(to top,rgba(0,0,0,.82),rgba(0,0,0,.16) 58%,rgba(0,0,0,.08))
}
.jw-v2-editable .stage-hero-copy,
.jw-v2-editable .event-hero-copy{position:relative;z-index:2}
@media(max-width:1050px){
 .jw-v2-editable .hero-image.wp-block-image{min-height:58vw}
 .jw-v2-editable .portrait-trio .img.wp-block-image{min-height:72vw}
 .jw-v2-editable .section-image.wp-block-image{min-height:60vw}
}
@media(max-width:900px){
 .jw-v2-editable .beauty-hero-image.wp-block-image{min-height:72vw}
 .jw-v2-editable .beauty-break-image.wp-block-image{min-height:72vw}
 .jw-v2-editable .stage-hero-editable,.jw-v2-editable .event-hero-editable{min-height:70vh}
}


/* ================================================================
   V5.1 – Original-JPEG Layoutsystem
   Ziel: Desktop exakt nebeneinander, Stapelung erst auf echten Handys
   ================================================================ */
.jw-v2-editable .jw-home-original{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
}
.jw-v2-editable .jw-home-original > *{
  max-width:none!important;
}

/* Hero: Foto LINKS / Typografie RECHTS */
.jw-v2-editable .jw-home-hero{
  display:grid!important;
  grid-template-columns:51.5% 48.5%!important;
  width:100%!important;
  min-height:clamp(560px,52vw,820px)!important;
  background:#fffdfa!important;
  align-items:stretch!important;
}
.jw-v2-editable .jw-home-hero > .wp-block-image{
  margin:0!important;
  width:100%!important;
  height:100%!important;
  min-height:inherit!important;
  max-width:none!important;
}
.jw-v2-editable .jw-home-hero > .wp-block-image img{
  width:100%!important;
  height:100%!important;
  min-height:inherit!important;
  object-fit:cover!important;
  object-position:center center!important;
  display:block!important;
}
.jw-v2-editable .jw-home-hero-copy{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  padding:clamp(48px,7vw,110px) clamp(38px,5.8vw,92px)!important;
  background:#fffdfa!important;
  min-width:0!important;
}
.jw-v2-editable .jw-home-hero-copy > *{width:100%!important;max-width:620px!important}
.jw-v2-editable .jw-home-hero h1{
  font-size:clamp(46px,5vw,78px)!important;
  line-height:1.04!important;
  letter-spacing:.055em!important;
  font-weight:700!important;
  margin:0 0 26px!important;
}
.jw-v2-editable .jw-home-hero .hero-sub{
  font-size:13px!important;
  letter-spacing:.06em!important;
  line-height:1.75!important;
}

/* Standard feature row: Text 38% / Bild 62% */
.jw-v2-editable .jw-feature-row{
  display:grid!important;
  grid-template-columns:38.5% 61.5%!important;
  width:100%!important;
  min-height:clamp(470px,43vw,690px)!important;
  background:#fffdfa!important;
  border-top:1px solid #e0ddd6!important;
  align-items:stretch!important;
}
.jw-v2-editable .jw-feature-row.jw-feature-reverse{
  grid-template-columns:61.5% 38.5%!important;
}
.jw-v2-editable .jw-feature-copy{
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  padding:clamp(42px,5.4vw,84px)!important;
  min-width:0!important;
}
.jw-v2-editable .jw-feature-row > .wp-block-image{
  margin:0!important;width:100%!important;height:100%!important;min-height:inherit!important;max-width:none!important;
}
.jw-v2-editable .jw-feature-row > .wp-block-image img{
  width:100%!important;height:100%!important;min-height:inherit!important;object-fit:cover!important;display:block!important;
}

/* Portrait: Bild / Text / Bild */
.jw-v2-editable .jw-portrait-triptych{
  display:grid!important;
  grid-template-columns:33.2% 33.5% 33.3%!important;
  min-height:clamp(500px,46vw,720px)!important;
  background:#fff!important;
  border-top:1px solid #e0ddd6!important;
  align-items:stretch!important;
}
.jw-v2-editable .jw-portrait-triptych > .wp-block-image{
  margin:0!important;width:100%!important;height:100%!important;min-height:inherit!important;max-width:none!important;
}
.jw-v2-editable .jw-portrait-triptych > .wp-block-image img{
  width:100%!important;height:100%!important;min-height:inherit!important;object-fit:cover!important;display:block!important;
}
.jw-v2-editable .jw-portrait-center{
  display:flex!important;flex-direction:column!important;justify-content:center!important;
  padding:clamp(38px,5vw,74px)!important;background:#fff!important;min-width:0!important;
}

/* Numbered editorial rows 03–05 */
.jw-v2-editable .jw-number-row{
  display:grid!important;
  grid-template-columns:37.2% 62.8%!important;
  min-height:clamp(430px,38vw,620px)!important;
  width:100%!important;
  background:#fffdfa!important;
  align-items:stretch!important;
}
.jw-v2-editable .jw-number-row + .jw-number-row{border-top:1px solid #eeeae3!important}
.jw-v2-editable .jw-number-copy{
  display:flex!important;flex-direction:column!important;justify-content:center!important;
  padding:clamp(42px,5.2vw,82px)!important;min-width:0!important;
}
.jw-v2-editable .jw-number-row > .wp-block-image{
  margin:0!important;width:100%!important;height:100%!important;min-height:inherit!important;max-width:none!important;
}
.jw-v2-editable .jw-number-row > .wp-block-image img{
  width:100%!important;height:100%!important;min-height:inherit!important;object-fit:cover!important;display:block!important;
}

/* Bühne row */
.jw-v2-editable .jw-stage-row{
  display:grid!important;grid-template-columns:37.2% 62.8%!important;
  min-height:clamp(430px,38vw,620px)!important;background:#fffdfa!important;
}
.jw-v2-editable .jw-stage-row > .wp-block-image{
  margin:0!important;width:100%!important;height:100%!important;min-height:inherit!important;background:#080808!important;
}
.jw-v2-editable .jw-stage-row > .wp-block-image img{
  width:100%!important;height:100%!important;min-height:inherit!important;object-fit:cover!important;
}

/* Typographic details from the JPEG */
.jw-v2-editable .jw-num{
  color:#e21a17!important;font-size:11px!important;font-weight:700!important;
  letter-spacing:.12em!important;margin:0 0 28px!important;
}
.jw-v2-editable .jw-title{
  font-size:clamp(25px,2.4vw,39px)!important;line-height:1.05!important;
  letter-spacing:.07em!important;font-weight:700!important;margin:0 0 18px!important;
}
.jw-v2-editable .jw-smallcopy{
  font-size:14px!important;line-height:1.48!important;color:#555!important;margin:0!important;
}
.jw-v2-editable .jw-service-menu{
  margin-top:28px!important;display:grid!important;gap:7px!important;
}
.jw-v2-editable .jw-service-menu a{
  font-size:11px!important;font-weight:700!important;letter-spacing:.08em!important;text-transform:uppercase!important;
}
.jw-v2-editable .jw-service-menu a span{color:#e21a17!important;margin-left:12px!important}

/* Graphic accent helpers */
.jw-v2-editable .jw-red-line{width:43px!important;border-top:2px solid #e21a17!important;margin:20px 0 22px!important}
.jw-v2-editable .jw-dark-band{background:#111!important;color:#fff!important;padding:clamp(55px,7vw,100px)!important}
.jw-v2-editable .jw-dark-band h2{color:#fff!important}
.jw-v2-editable .jw-bauhaus-grid{
  display:grid!important;grid-template-columns:repeat(12,1fr)!important;gap:5px!important;padding:5px!important;background:#111!important
}
.jw-v2-editable .jw-bauhaus-grid > .wp-block-image{margin:0!important;overflow:hidden!important}
.jw-v2-editable .jw-bauhaus-grid > .wp-block-image img{width:100%!important;height:100%!important;object-fit:cover!important}
.jw-v2-editable .jw-span-12{grid-column:span 12!important;aspect-ratio:16/7!important}
.jw-v2-editable .jw-span-8{grid-column:span 8!important;aspect-ratio:16/10!important}
.jw-v2-editable .jw-span-6{grid-column:span 6!important;aspect-ratio:4/3!important}
.jw-v2-editable .jw-span-4{grid-column:span 4!important;aspect-ratio:3/4!important}
.jw-v2-editable .jw-caption-tile{
  display:flex!important;flex-direction:column!important;justify-content:flex-end!important;
  min-height:420px!important;padding:42px!important;background:#f5f3ee!important
}
.jw-v2-editable .jw-quote-band{
  padding:clamp(60px,8vw,120px) 32px!important;text-align:center!important;background:#111!important;color:#fff!important
}
.jw-v2-editable .jw-quote-band p{
  max-width:1000px!important;margin:0 auto!important;font-size:clamp(28px,4vw,55px)!important;
  line-height:1.22!important;font-weight:300!important;letter-spacing:.025em!important
}

/* Crucial: only stack on a real small/mobile viewport */
@media(max-width:760px){
  .jw-v2-editable .jw-home-hero,
  .jw-v2-editable .jw-feature-row,
  .jw-v2-editable .jw-feature-row.jw-feature-reverse,
  .jw-v2-editable .jw-portrait-triptych,
  .jw-v2-editable .jw-number-row,
  .jw-v2-editable .jw-stage-row{
    grid-template-columns:1fr!important;
  }
  .jw-v2-editable .jw-home-hero{min-height:0!important}
  .jw-v2-editable .jw-home-hero > .wp-block-image{min-height:72vw!important}
  .jw-v2-editable .jw-home-hero-copy{padding:42px 24px!important}
  .jw-v2-editable .jw-home-hero h1{font-size:clamp(38px,11vw,52px)!important}
  .jw-v2-editable .jw-feature-row,.jw-v2-editable .jw-number-row,.jw-v2-editable .jw-stage-row{min-height:0!important}
  .jw-v2-editable .jw-feature-row > .wp-block-image,
  .jw-v2-editable .jw-number-row > .wp-block-image,
  .jw-v2-editable .jw-stage-row > .wp-block-image{min-height:72vw!important}
  .jw-v2-editable .jw-portrait-triptych > .wp-block-image{min-height:90vw!important}
  .jw-v2-editable .jw-feature-copy,.jw-v2-editable .jw-number-copy,.jw-v2-editable .jw-portrait-center{padding:42px 24px!important}
  .jw-v2-editable .jw-bauhaus-grid > .wp-block-image{grid-column:span 12!important;aspect-ratio:4/3!important}
}
