﻿/* Reusable project/product card system for RC-Verpackungen.
   Structure:
   .cards > .card > .card-image > img + .card-body
   .gallery > .gallery-card > img + div
*/
.wide-editorial body .cards,
.wide-editorial body .gallery{
  gap:clamp(18px,2vw,28px);
}

.wide-editorial body .card,
.wide-editorial body .gallery-card{
  position:relative;
  display:flex;
  flex-direction:column;
  align-items:stretch;
  justify-content:space-between;
  min-height:auto;
  overflow:hidden;
  isolation:isolate;
  border:1px solid rgba(255,255,255,.72);
  border-radius:22px;
  background:linear-gradient(145deg,#eef0e8,#d7d8cf);
  box-shadow:0 24px 60px -32px #152c2475,inset 0 1px 0 rgba(255,255,255,.58);
  translate:none!important;
  transform:none!important;
}

.wide-editorial body .card::before,
.wide-editorial body .gallery-card::before{
  content:'';
  position:absolute;
  inset:0;
  z-index:-1;
  background:linear-gradient(180deg,rgba(255,255,255,.18) 0%,rgba(18,35,29,.08) 100%);
}

.wide-editorial body .card::after,
.wide-editorial body .gallery-card::after{
  content:'';
  position:absolute;
  inset:1px;
  z-index:-2;
  border-radius:21px;
  background:radial-gradient(circle at var(--pointer-x,50%) var(--pointer-y,20%),rgba(255,255,255,.24),transparent 34%);
}

.wide-editorial body .card-image,
.wide-editorial body .gallery-card>img{
  position:relative;
  inset:auto;
  z-index:0;
  width:100%;
  height:clamp(320px,27vw,500px);
  padding:clamp(10px,1.1vw,20px);
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  background:radial-gradient(ellipse at 50% 42%,#f5f3eb 0%,#d6d8cf 72%);
}

.wide-editorial body .card-image img,
.wide-editorial body .gallery-card>img{
  width:100%;
  height:100%;
  max-width:100%;
  max-height:100%;
  object-fit:contain;
  object-position:center;
  scale:1!important;
  transform:translateZ(0) scale(1.12)!important;
  transform-origin:center;
  filter:saturate(.98) contrast(1.02);
  transition:transform .5s cubic-bezier(.16,1,.3,1)!important;
  will-change:transform;
}

.wide-editorial body .card-body,
.wide-editorial body .gallery-card>div{
  position:relative;
  z-index:1;
  width:calc(100% - 28px);
  min-height:0;
  margin:0 14px 14px;
  padding:16px 18px 18px;
  border:1px solid rgba(255,255,255,.62);
  border-radius:16px;
  background:linear-gradient(135deg,rgba(255,253,248,.78),rgba(245,242,235,.56));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.74),0 16px 34px -28px #13251f;
  backdrop-filter:blur(10px) saturate(112%);
  -webkit-backdrop-filter:blur(10px) saturate(112%);
}

.wide-editorial body .card-body h3,
.wide-editorial body .gallery-card h3{
  font-family:'Lato',sans-serif;
  font-size:clamp(17px,1.08vw,22px);
  font-weight:800;
  line-height:1.1;
  letter-spacing:0;
  color:#14271f;
  text-transform:uppercase;
  text-wrap:balance;
  margin-bottom:8px;
}

.wide-editorial body .card-body p,
.wide-editorial body .gallery-card p{
  color:#314137;
  font-size:12px;
  line-height:1.45;
  margin-bottom:12px;
  text-wrap:pretty;
}

.wide-editorial body .card .text-link{
  margin-top:4px;
  min-height:40px;
  padding:11px 16px;
  border-radius:12px;
  border-color:rgba(255,255,255,.72);
  background:linear-gradient(135deg,rgba(255,253,248,.72),rgba(255,255,255,.34));
  color:#1f3a2e;
  font-size:11px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.8),0 10px 22px -18px #13251f;
}

.wide-editorial body .card .text-link .arrow{
  color:#c76228;
}

@media(hover:hover) and (pointer:fine){
  .wide-editorial body .card,
  .wide-editorial body .gallery-card{
    transition:box-shadow .4s cubic-bezier(.16,1,.3,1),border-color .4s cubic-bezier(.16,1,.3,1);
  }

  .wide-editorial body .card:hover,
  .wide-editorial body .gallery-card:hover{
    translate:none!important;
    transform:none!important;
    border-color:rgba(255,255,255,.9);
    box-shadow:0 20px 42px -30px #243d3066,inset 0 1px 0 white;
  }

  .wide-editorial body .card:hover .card-image img,
  .wide-editorial body .gallery-card:hover>img{
    scale:1!important;
    transform:translateZ(0) scale(1.18)!important;
  }

  .wide-editorial body .card .text-link:hover{
    color:#1f3a2e;
    background:linear-gradient(135deg,rgba(255,253,248,.86),rgba(255,255,255,.52));
  }
}

@media(max-width:760px){
  .wide-editorial body .card,
  .wide-editorial body .gallery-card{
    border-radius:18px;
  }

  .wide-editorial body .card-image,
  .wide-editorial body .gallery-card>img{
    height:300px;
    padding:12px;
  }

  .wide-editorial body .card-image img,
  .wide-editorial body .gallery-card>img,
  .wide-editorial body .card:hover .card-image img,
  .wide-editorial body .gallery-card:hover>img{
    transform:translateZ(0) scale(1.08)!important;
  }

  .wide-editorial body .card-body,
  .wide-editorial body .gallery-card>div{
    width:calc(100% - 22px);
    margin:0 11px 11px;
    padding:14px 15px 15px;
  }

  .wide-editorial body .card-body h3,
  .wide-editorial body .gallery-card h3{
    font-size:18px;
  }
}

/* Three vertical display cards on the home page. */
.wide-editorial body .display-banner{
  min-height:0;
  border:0;
  border-radius:0;
  box-shadow:none;
  background:transparent;
  overflow:visible;
}

.wide-editorial body .display-banner-images{
  position:relative;
  inset:auto;
  top:auto;
  height:auto;
  transform:none;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:clamp(18px,2vw,28px);
}

.wide-editorial body .display-banner-images img{
  width:100%;
  height:clamp(440px,31vw,620px);
  padding:clamp(18px,2vw,34px);
  object-fit:contain;
  object-position:center;
  border:1px solid rgba(255,255,255,.72);
  border-radius:22px;
  background:radial-gradient(ellipse at 50% 42%,#f7f5ee 0%,#d8d9d1 72%);
  box-shadow:0 24px 60px -32px #152c2475,inset 0 1px 0 rgba(255,255,255,.58);
  transition:transform .42s cubic-bezier(.22,.61,.36,1),filter .28s ease,box-shadow .18s ease,border-color .18s ease;
  transform:translateZ(0) scale(1);
}

@media(hover:hover) and (pointer:fine){
  .wide-editorial body .display-banner-images img:hover{
    transform:translateZ(0) scale(1.025);
    filter:saturate(1.03) contrast(1.03);
    border-color:rgba(255,255,255,.9);
    box-shadow:0 20px 42px -30px #243d3066,inset 0 1px 0 white;
  }
}

@media(max-width:900px){
  .wide-editorial body .display-banner-images{
    grid-template-columns:minmax(0,1fr);
  }

  .wide-editorial body .display-banner-images img{
    height:clamp(330px,76vw,520px);
  }
}


/* Premium process section: production steps as an industrial timeline. */
.wide-editorial body .section.dark{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(ellipse at 12% 18%,rgba(224,232,210,.12),transparent 34%),
    radial-gradient(ellipse at 88% 82%,rgba(199,98,40,.16),transparent 36%),
    linear-gradient(135deg,#1c352b 0%,#243d30 48%,#14261f 100%);
}

.wide-editorial body .section.dark::before{
  content:'';
  position:absolute;
  inset:0;
  pointer-events:none;
  opacity:.24;
  background-image:
    linear-gradient(rgba(255,255,255,.055) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);
  background-size:72px 72px;
  mask-image:linear-gradient(180deg,transparent 0%,#000 18%,#000 82%,transparent 100%);
}

.wide-editorial body .section.dark>.container{
  position:relative;
  z-index:1;
}

.wide-editorial body .section.dark .section-header{
  align-items:flex-start;
  margin-bottom:clamp(34px,4vw,58px);
}

.wide-editorial body .section.dark .section-header h2{
  max-width:780px;
  color:#f7f4ea;
  text-shadow:0 18px 45px rgba(0,0,0,.18);
}

.wide-editorial body .section.dark .section-header p{
  max-width:520px;
  color:rgba(236,241,226,.72);
  font-family:'Lato',sans-serif;
  font-size:clamp(15px,1.1vw,18px);
}

.wide-editorial body .process{
  position:relative;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  --process-col-gap:clamp(14px,1.6vw,24px);
  column-gap:var(--process-col-gap);
  row-gap:clamp(56px,5vw,72px);
  padding-top:38px;
}

.wide-editorial body .process.icon-process{
  row-gap:clamp(14px,1.6vw,24px);
}

.wide-editorial body .process:not(.icon-process)::before{
  display:none;
}

.wide-editorial body .process.icon-process::before{
  content:'';
  position:absolute;
  left:clamp(26px,3vw,48px);
  right:clamp(26px,3vw,48px);
  top:16px;
  height:1px;
  background:linear-gradient(90deg,rgba(255,255,255,.08),rgba(232,145,88,.86),rgba(255,255,255,.08));
}

.wide-editorial body .process-item{
  position:relative;
  min-height:200px;
  padding:clamp(12px,1.2vw,22px) clamp(14px,1.2vw,20px);
  border:1px solid rgba(255,255,255,.6);
  border-radius:20px;
  background:
    linear-gradient(135deg,rgba(255,253,248,.88),rgba(236,234,222,.66)),
    radial-gradient(circle at var(--pointer-x,50%) var(--pointer-y,0%),rgba(255,255,255,.6),transparent 62%);
  box-shadow:0 24px 58px -34px rgba(6,18,14,.75),inset 0 1px 0 rgba(255,255,255,.88);
  backdrop-filter:blur(16px) saturate(120%);
  -webkit-backdrop-filter:blur(16px) saturate(120%);
}

.wide-editorial body .process-item.process-cta{
  grid-column:span 2;
  display:flex;
  flex-direction:row;
  align-items:center;
  justify-content:space-between;
  gap:20px;
}
.wide-editorial body .process-cta-text{
  min-width:0;
  flex:1;
}
.wide-editorial body .process-item.process-cta .btn{
  flex:none;
  margin-top:0;
}
@media(max-width:760px){
  .wide-editorial body .process-item.process-cta{
    flex-direction:column;
    align-items:flex-start;
  }
}
@media(max-width:980px){
  .wide-editorial body .process-item.process-cta{
    grid-column:span 2;
  }
}
@media(max-width:640px){
  .wide-editorial body .process-item.process-cta{
    grid-column:span 1;
  }
}

.wide-editorial body .process-item::before{
  content:'';
  position:absolute;
  top:-30px;
  left:clamp(14px,1.2vw,20px);
  width:15px;
  height:15px;
  border-radius:50%;
  background:#c76228;
  box-shadow:0 0 0 7px rgba(199,98,40,.18),0 0 0 1px rgba(255,255,255,.72) inset;
}

.wide-editorial body .process-item b{
  display:block;
  margin-bottom:32px;
  color:#c76228;
  font-family:'Lato',sans-serif;
  font-size:clamp(34px,3vw,48px);
  font-weight:800;
  line-height:.82;
  letter-spacing:0;
}

.wide-editorial body .process-item h3{
  margin:0 0 10px;
  color:#1c352b;
  font-family:'Lato',sans-serif;
  font-size:clamp(16px,1.1vw,20px);
  line-height:1.2;
}

.wide-editorial body .process-item p{
  margin:0;
  max-width:none;
  color:#59635a;
  font-family:'Lato',sans-serif;
  font-size:13px;
  line-height:1.55;
}

@media(hover:hover) and (pointer:fine){
  .wide-editorial body .process-item{
    transition:transform .35s cubic-bezier(.16,1,.3,1),border-color .35s cubic-bezier(.16,1,.3,1),box-shadow .35s cubic-bezier(.16,1,.3,1);
  }

  .wide-editorial body .process-item:hover{
    transform:translateY(-4px);
    border-color:rgba(255,255,255,.88);
    box-shadow:0 30px 70px -40px rgba(6,18,14,.82),inset 0 1px 0 white;
  }
}

@media(max-width:980px){
  .wide-editorial body .process{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media(max-width:640px){
  .wide-editorial body .section.dark .section-header{
    display:block;
  }

  .wide-editorial body .section.dark .section-header p{
    margin-top:16px;
  }

  .wide-editorial body .process{
    grid-template-columns:minmax(0,1fr);
    padding-top:0;
  }

  .wide-editorial body .process::before,
  .wide-editorial body .process-item::before,
  .wide-editorial body .process-item::after{
    display:none!important;
  }

  .wide-editorial body .process-item{
    min-height:0;
  }
}


/* Modular production cards. */
.wide-editorial body .steps-strip{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:clamp(14px,1.4vw,22px);
  align-items:stretch;
}

.wide-editorial body .step-frame{
  position:relative;
  display:flex;
  flex-direction:column;
  min-height:clamp(260px,19vw,340px);
  overflow:hidden;
  border:1px solid rgba(36,61,48,.72);
  border-radius:20px;
  background:
    radial-gradient(ellipse at 50% 30%,#fffdf8 0%,#eee9dc 68%),
    linear-gradient(145deg,#eef0e8,#d8d9d1);
  box-shadow:0 20px 50px -34px #152c2468,inset 0 1px 0 rgba(255,255,255,.88);
  isolation:isolate;
}

.wide-editorial body .step-frame::before{
  content:'';
  position:absolute;
  inset:1px;
  z-index:-1;
  border-radius:19px;
  background:radial-gradient(circle at var(--pointer-x,50%) var(--pointer-y,20%),rgba(255,255,255,.55),transparent 42%);
}

.wide-editorial body .step-frame img{
  flex:1;
  width:100%;
  height:auto;
  min-height:178px;
  padding:clamp(18px,1.8vw,30px) clamp(16px,1.6vw,24px) 10px;
  object-fit:contain;
  object-position:center;
  background:transparent;
  transform:translateZ(0) scale(1.04);
  transition:transform .5s cubic-bezier(.16,1,.3,1);
}

.wide-editorial body .step-frame figcaption{
  position:relative;
  margin:0 10px 10px;
  min-height:58px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:12px 12px;
  border:1px solid rgba(255,255,255,.68);
  border-radius:14px;
  background:linear-gradient(135deg,rgba(255,253,248,.76),rgba(245,242,235,.54));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.78);
  backdrop-filter:blur(10px) saturate(112%);
  -webkit-backdrop-filter:blur(10px) saturate(112%);
  color:#3e4b42;
  font-family:'Lato',sans-serif;
  font-size:12px;
  line-height:1.35;
  text-align:center;
  text-wrap:balance;
}

@media(hover:hover) and (pointer:fine){
  .wide-editorial body .step-frame{
    transition:box-shadow .4s cubic-bezier(.16,1,.3,1),border-color .4s cubic-bezier(.16,1,.3,1);
  }

  .wide-editorial body .step-frame:hover{
    border-color:rgba(36,61,48,.92);
    box-shadow:0 24px 54px -34px #152c247a,inset 0 1px 0 white;
  }

  .wide-editorial body .step-frame:hover img{
    transform:translateZ(0) scale(1.09);
  }
}

@media(max-width:1180px){
  .wide-editorial body .steps-strip{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}

@media(max-width:760px){
  .wide-editorial body .steps-strip{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .wide-editorial body .step-frame{
    min-height:240px;
    border-radius:18px;
  }

  .wide-editorial body .step-frame img{
    min-height:150px;
    padding:18px 14px 8px;
  }

  .wide-editorial body .step-frame figcaption{
    min-height:54px;
    font-size:11px;
  }
}


/* Tighter copy layout for the modular production section. */
.wide-editorial body .section:has(.steps-strip){
  padding-block:clamp(42px,4vw,72px);
}

.wide-editorial body .section:has(.steps-strip) .section-header{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(300px,520px);
  align-items:end;
  gap:clamp(26px,4vw,64px);
  margin-bottom:clamp(22px,2.4vw,34px);
}

.wide-editorial body .section:has(.steps-strip) .section-header h2{
  max-width:760px;
  font-size:clamp(38px,3.6vw,68px);
  line-height:1.02;
}

.wide-editorial body .section:has(.steps-strip) .section-header p{
  max-width:46ch;
  margin:0 0 7px;
  font-family:'Lato',sans-serif;
  font-size:clamp(14px,1vw,17px);
  line-height:1.55;
  color:#59635a;
}
.wide-editorial body .section.dark:has(.steps-strip) .section-header h2{
  color:#f7f4ea;
  text-shadow:0 18px 45px rgba(0,0,0,.18);
}
.wide-editorial body .section.dark:has(.steps-strip) .section-header p{
  color:#c7d0c5;
}

.wide-editorial body .step-frame{
  min-height:clamp(245px,17vw,310px);
}

.wide-editorial body .step-frame img{
  min-height:160px;
  padding-bottom:6px;
}

.wide-editorial body .step-frame figcaption{
  min-height:48px;
  margin:0 10px 10px;
  padding:10px 12px;
  color:#304239;
  font-size:11px;
  font-weight:600;
  letter-spacing:.01em;
}

@media(max-width:900px){
  .wide-editorial body .section:has(.steps-strip) .section-header{
    grid-template-columns:minmax(0,1fr);
    gap:14px;
  }

  .wide-editorial body .section:has(.steps-strip) .section-header p{
    max-width:58ch;
  }
}

/* KindertrÃ¤ume teaser with rotating product card. */
.wide-editorial body .section:has(.split-copy a[href*="kindertraeume.html"]){
  padding-block:clamp(54px,5vw,86px);
}

.wide-editorial body .section:has(.split-copy a[href*="kindertraeume.html"]) .split{
  grid-template-columns:minmax(420px,.92fr) minmax(420px,1fr);
  gap:clamp(46px,6vw,90px);
}

.wide-editorial body .section:has(.split-copy a[href*="kindertraeume.html"]) .split-copy{
  align-self:center;
  max-width:680px;
}

.wide-editorial body .section:has(.split-copy a[href*="kindertraeume.html"]) .kicker{
  margin-bottom:14px;
}

.wide-editorial body .section:has(.split-copy a[href*="kindertraeume.html"]) .split-copy h2{
  max-width:12.5ch;
  margin:0 0 20px;
  font-size:clamp(38px,3.8vw,70px);
  line-height:1.04;
  text-wrap:balance;
}

.wide-editorial body .section:has(.split-copy a[href*="kindertraeume.html"]) .split-copy p{
  max-width:55ch;
  margin:0 0 24px;
  font-family:'Lato',sans-serif;
  font-size:clamp(15px,1.05vw,18px);
  line-height:1.65;
  color:#59635a;
}

.wide-editorial body .section:has(.split-copy a[href*="kindertraeume.html"]) .stats{
  margin-top:24px;
  gap:14px;
}

.wide-editorial body .section:has(.split-copy a[href*="kindertraeume.html"]) .stat{
  min-width:150px;
  padding:14px 16px;
  border:1px solid rgba(255,255,255,.7);
  border-radius:14px;
  background:linear-gradient(135deg,rgba(255,253,248,.7),rgba(245,242,235,.48));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.78);
  backdrop-filter:blur(10px) saturate(112%);
  -webkit-backdrop-filter:blur(10px) saturate(112%);
}

.wide-editorial body .section:has(.split-copy a[href*="kindertraeume.html"]) .stat strong{
  font-family:'Lato',sans-serif;
  font-size:25px;
  line-height:1;
}

.wide-editorial body .section:has(.split-copy a[href*="kindertraeume.html"]) .stat span{
  display:block;
  margin-top:6px;
}

.wide-editorial body .kinder-slider{
  position:relative;
  min-height:clamp(520px,37vw,720px);
  border:1px solid rgba(36,61,48,.8);
  border-radius:22px;
  overflow:hidden;
  background:radial-gradient(ellipse at 50% 42%,#fffdf8 0%,#e3e2d8 72%);
  box-shadow:0 24px 60px -34px #152c246f,inset 0 1px 0 rgba(255,255,255,.82);
}

.wide-editorial body .kinder-slider::after{
  content:'';
  position:absolute;
  inset:1px;
  border-radius:21px;
  pointer-events:none;
  background:radial-gradient(circle at var(--pointer-x,52%) var(--pointer-y,20%),rgba(255,255,255,.38),transparent 38%);
}

.wide-editorial body .kinder-slide{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  padding:clamp(24px,3vw,52px);
  object-fit:contain;
  object-position:center;
  opacity:0;
  transform:translateZ(0) scale(.985);
  transition:opacity .72s ease,transform 1.1s cubic-bezier(.22,.61,.36,1);
}

.wide-editorial body .kinder-slide.active{
  opacity:1;
  transform:translateZ(0) scale(1.03);
}

.wide-editorial body .kinder-slider-dots{
  position:absolute;
  z-index:2;
  left:50%;
  bottom:18px;
  display:flex;
  gap:8px;
  transform:translateX(-50%);
  padding:8px 10px;
  border:1px solid rgba(255,255,255,.7);
  border-radius:999px;
  background:rgba(255,253,248,.56);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
}

.wide-editorial body .kinder-slider-dots button{
  width:8px;
  height:8px;
  padding:0;
  border:0;
  border-radius:50%;
  background:rgba(36,61,48,.28);
  cursor:pointer;
}

.wide-editorial body .kinder-slider-dots button[aria-current="true"]{
  width:24px;
  border-radius:999px;
  background:#c76228;
}

@media(max-width:900px){
  .wide-editorial body .section:has(.split-copy a[href*="kindertraeume.html"]) .split{
    grid-template-columns:minmax(0,1fr);
  }

  .wide-editorial body .section:has(.split-copy a[href*="kindertraeume.html"]) .split-copy h2{
    max-width:14ch;
  }

  .wide-editorial body .kinder-slider{
    min-height:clamp(360px,78vw,560px);
  }
}


/* The Neuschwanstein product has more transparent space than the other slides. */
.wide-editorial body .kinder-slide:first-child{
  transform:translate3d(0,24px,0) scale(1.22)!important;
}

.wide-editorial body .kinder-slide:first-child.active{
  transform:translate3d(0,24px,0) scale(1.32)!important;
}

@media(max-width:900px){
  .wide-editorial body .kinder-slide:first-child,
  .wide-editorial body .kinder-slide:first-child.active{
    transform:translate3d(0,14px,0) scale(1.18)!important;
  }
}

/* KindertrÃ¤ume product gallery: branded package mockups with exact logo placement. */
.wide-editorial body .kinder-product-gallery{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:clamp(16px,1.55vw,24px);
}

.wide-editorial body .kinder-product-card{
  position:relative;
  overflow:hidden;
  border:1px solid rgba(36,61,48,.72);
  border-radius:22px;
  background:radial-gradient(ellipse at 50% 35%,#fffdf8 0%,#e5e3d8 72%);
  box-shadow:0 22px 52px -34px #152c2475,inset 0 1px 0 rgba(255,255,255,.85);
  isolation:isolate;
}

.wide-editorial body .kinder-product-card::before{
  content:'';
  position:absolute;
  inset:1px;
  z-index:-1;
  border-radius:21px;
  background:radial-gradient(circle at var(--pointer-x,50%) var(--pointer-y,18%),rgba(255,255,255,.52),transparent 42%);
}

.wide-editorial body .kinder-packshot{
  position:relative;
  min-height:270px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:26px 20px 12px;
}

.wide-editorial body .kinder-box{
  position:relative;
  width:min(210px,78%);
  aspect-ratio:1.2/.86;
  padding:16px;
  border-radius:9px;
  background:
    linear-gradient(90deg,rgba(0,0,0,.16),transparent 14%),
    linear-gradient(135deg,var(--box-a),var(--box-b));
  box-shadow:18px 22px 36px -26px rgba(19,37,31,.75);
  transform:perspective(900px) rotateY(-12deg) rotateX(2deg);
}

.wide-editorial body .kinder-box::after{
  content:'';
  position:absolute;
  inset:0 auto 0 100%;
  width:28px;
  border-radius:0 8px 8px 0;
  background:linear-gradient(135deg,var(--box-side),#17261f);
  transform-origin:left center;
  transform:skewY(-7deg);
}

.wide-editorial body .kinder-pack-logo{
  position:absolute;
  top:10px;
  right:10px;
  z-index:4;
  width:48px;
  height:48px;
  object-fit:contain;
  filter:drop-shadow(0 2px 2px rgba(0,0,0,.24));
}

.wide-editorial body .piece-badge{
  position:absolute;
  left:12px;
  top:12px;
  z-index:3;
  display:grid;
  place-items:center;
  width:46px;
  height:46px;
  border:1px solid rgba(255,255,255,.78);
  border-radius:50%;
  background:rgba(255,253,248,.82);
  color:#20392e;
  font-family:'Lato',sans-serif;
  font-size:16px;
  font-weight:800;
  line-height:1;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.82);
}

.wide-editorial body .piece-badge small{
  font-size:7px;
  font-weight:700;
  text-transform:uppercase;
}

.wide-editorial body .box-art{
  position:absolute;
  inset:62px 16px 38px;
  overflow:hidden;
  border-radius:7px;
  background:
    radial-gradient(circle at 28% 38%,var(--art-a) 0 16%,transparent 17%),
    radial-gradient(circle at 70% 46%,var(--art-b) 0 19%,transparent 20%),
    linear-gradient(135deg,var(--art-c),var(--art-d));
}

.wide-editorial body .box-art span{
  position:absolute;
  display:block;
  border-radius:999px;
  background:rgba(255,255,255,.45);
}

.wide-editorial body .box-art span:nth-child(1){width:70px;height:10px;left:14px;top:18px;rotate:-18deg}
.wide-editorial body .box-art span:nth-child(2){width:52px;height:8px;right:14px;bottom:18px;rotate:20deg}
.wide-editorial body .box-art span:nth-child(3){width:14px;height:50px;left:50%;bottom:0;rotate:8deg}

.wide-editorial body .kinder-box strong{
  position:absolute;
  left:16px;
  right:72px;
  bottom:13px;
  z-index:3;
  color:#fffdf8;
  font-family:'Lato',sans-serif;
  font-size:10px;
  font-weight:800;
  line-height:1.15;
  text-transform:uppercase;
  text-shadow:0 2px 8px rgba(0,0,0,.32);
}

.wide-editorial body .kinder-model{
  position:absolute;
  right:22px;
  bottom:20px;
  width:84px;
  height:76px;
  border-radius:42% 58% 48% 52%;
  background:
    radial-gradient(circle at 35% 30%,rgba(255,255,255,.82) 0 12%,transparent 13%),
    linear-gradient(135deg,var(--model-a),var(--model-b));
  box-shadow:0 16px 28px -22px rgba(10,20,16,.75);
}

.wide-editorial body .kinder-product-copy{
  margin:0 12px 12px;
  padding:14px 14px 15px;
  border:1px solid rgba(255,255,255,.66);
  border-radius:16px;
  background:linear-gradient(135deg,rgba(255,253,248,.78),rgba(245,242,235,.55));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.82);
  backdrop-filter:blur(10px) saturate(112%);
  -webkit-backdrop-filter:blur(10px) saturate(112%);
}

.wide-editorial body .kinder-product-copy h3{
  margin:0 0 6px;
  font-family:'Lato',sans-serif;
  font-size:14px;
  font-weight:800;
  line-height:1.12;
  text-transform:uppercase;
  color:#14271f;
}

.wide-editorial body .kinder-product-copy p{
  margin:0;
  color:#59635a;
  font-family:'Lato',sans-serif;
  font-size:11px;
  line-height:1.35;
}

.wide-editorial body .theme-safari{--box-a:#233d31;--box-b:#101d18;--box-side:#2b4d3e;--art-a:#f0b45c;--art-b:#98b85a;--art-c:#6aa469;--art-d:#1d3b2f;--model-a:#d89d5b;--model-b:#6d4b31}
.wide-editorial body .theme-forest{--box-a:#314631;--box-b:#14251d;--box-side:#405c41;--art-a:#87a45f;--art-b:#cadb8a;--art-c:#4f7a48;--art-d:#203b2c;--model-a:#8b9f67;--model-b:#475a36}
.wide-editorial body .theme-ocean{--box-a:#173b46;--box-b:#0b1f28;--box-side:#245764;--art-a:#9dd9dd;--art-b:#3c91a6;--art-c:#79c5d0;--art-d:#164d63;--model-a:#78c0ca;--model-b:#1d6b7c}
.wide-editorial body .theme-space{--box-a:#15172a;--box-b:#070a13;--box-side:#232646;--art-a:#f1c66f;--art-b:#6274d9;--art-c:#111a43;--art-d:#02040a;--model-a:#c8d1ef;--model-b:#606c8f}
.wide-editorial body .theme-map{--box-a:#213e35;--box-b:#11261f;--box-side:#355c4c;--art-a:#d6bf76;--art-b:#6aa37b;--art-c:#8fc1ad;--art-d:#356b73;--model-a:#dac27c;--model-b:#5d8d74}
.wide-editorial body .theme-castle{--box-a:#20372f;--box-b:#111f1a;--box-side:#304f42;--art-a:#cad6ea;--art-b:#c58b5e;--art-c:#f2f0e7;--art-d:#6381a7;--model-a:#f0f0eb;--model-b:#6c80a6}
.wide-editorial body .theme-stadium{--box-a:#21413f;--box-b:#0d2424;--box-side:#32605d;--art-a:#79b47b;--art-b:#d4d3c8;--art-c:#a9c4ba;--art-d:#3a6e62;--model-a:#96b99b;--model-b:#5a6968}
.wide-editorial body .theme-windmill{--box-a:#27413c;--box-b:#132821;--box-side:#3d6157;--art-a:#ffffff;--art-b:#d8b578;--art-c:#cde0e5;--art-d:#6d9ca7;--model-a:#f2efe5;--model-b:#b78b55}
.wide-editorial body .theme-lighthouse{--box-a:#163541;--box-b:#0b2029;--box-side:#275363;--art-a:#f7f3e9;--art-b:#e06b4c;--art-c:#b9d7e1;--art-d:#326a87;--model-a:#f5f0e4;--model-b:#cc6046}
.wide-editorial body .theme-farm{--box-a:#304323;--box-b:#172411;--box-side:#4d642c;--art-a:#dfb15f;--art-b:#8fbd68;--art-c:#b4d388;--art-d:#3f7236;--model-a:#d9a85b;--model-b:#7a5130}
.wide-editorial body .theme-truck{--box-a:#283b30;--box-b:#111e18;--box-side:#3c5746;--art-a:#b4d65a;--art-b:#e6dcc6;--art-c:#a4bd64;--art-d:#5b7138;--model-a:#9ab83f;--model-b:#667d2e}
.wide-editorial body .theme-ship{--box-a:#20343b;--box-b:#10242c;--box-side:#31515c;--art-a:#d7c39b;--art-b:#83b5c8;--art-c:#b9d8e4;--art-d:#3a7184;--model-a:#d7bd8f;--model-b:#6f4b2b}
.wide-editorial body .theme-train{--box-a:#253934;--box-b:#101f1b;--box-side:#38594f;--art-a:#bf3c35;--art-b:#e0c063;--art-c:#8fb3b0;--art-d:#426a65;--model-a:#c2453d;--model-b:#725338}
.wide-editorial body .theme-elephant{--box-a:#273632;--box-b:#121e1b;--box-side:#3b504b;--art-a:#bfc3bf;--art-b:#6c7772;--art-c:#d6d7cf;--art-d:#7d8a83;--model-a:#bfc0bb;--model-b:#747c77}
.wide-editorial body .theme-dinosaur{--box-a:#21372d;--box-b:#0f2018;--box-side:#345444;--art-a:#d9d0a5;--art-b:#80a468;--art-c:#c9d8a1;--art-d:#597e49;--model-a:#d7cfaa;--model-b:#6f8655}

@media(hover:hover) and (pointer:fine){
  .wide-editorial body .kinder-product-card{
    transition:box-shadow .4s cubic-bezier(.16,1,.3,1),border-color .4s cubic-bezier(.16,1,.3,1);
  }

  .wide-editorial body .kinder-product-card:hover{
    border-color:rgba(36,61,48,.92);
    box-shadow:0 28px 60px -36px #152c2482,inset 0 1px 0 white;
  }

  .wide-editorial body .kinder-product-card:hover .kinder-box{
    transition:transform .4s cubic-bezier(.16,1,.3,1);
    transform:perspective(900px) rotateY(-8deg) rotateX(2deg) translateZ(0) scale(1.025);
  }
}

@media(max-width:1250px){
  .wide-editorial body .kinder-product-gallery{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}

@media(max-width:760px){
  .wide-editorial body .kinder-product-gallery{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .wide-editorial body .kinder-packshot{
    min-height:220px;
    padding:20px 14px 10px;
  }

  .wide-editorial body .kinder-box{
    width:min(180px,82%);
  }
}

@media(max-width:460px){
  .wide-editorial body .kinder-product-gallery{
    grid-template-columns:minmax(0,1fr);
  }
}


/* KindertrÃ¤ume packages: brand logo only on the package face. */
.wide-editorial body .kinder-box .piece-badge,
.wide-editorial body .kinder-box strong{
  display:none!important;
}

.wide-editorial body .kinder-pack-logo{
  top:10px;
  right:10px;
}


/* Real KindertrÃ¤ume product image gallery. */
.wide-editorial body .kinder-product-gallery-real{
  grid-template-columns:repeat(5,minmax(0,1fr));
}

.wide-editorial body .real-product-card{
  background:radial-gradient(ellipse at 50% 38%,#fffdf8 0%,#e5e3d8 72%);
}

.wide-editorial body .real-product-card .kinder-packshot,
.wide-editorial body .real-product-card .kinder-box,
.wide-editorial body .real-product-card .kinder-model{
  display:none!important;
}

.wide-editorial body .kinder-real-packshot{
  margin:0;
  min-height:260px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:10px;
  overflow:hidden;
}

.wide-editorial body .kinder-real-packshot img{
  width:100%;
  height:100%;
  min-height:250px;
  object-fit:contain;
  object-position:center;
  transform:translateZ(0) scale(1);
  transition:transform .42s cubic-bezier(.22,.61,.36,1),filter .28s ease;
}

@media(hover:hover) and (pointer:fine){
  .wide-editorial body .real-product-card:hover .kinder-real-packshot img{
    transform:translateZ(0) scale(1.035);
    filter:saturate(1.03) contrast(1.03);
  }
}

@media(max-width:1250px){
  .wide-editorial body .kinder-product-gallery-real{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}

@media(max-width:760px){
  .wide-editorial body .kinder-product-gallery-real{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .wide-editorial body .kinder-real-packshot{
    min-height:220px;
  }

  .wide-editorial body .kinder-real-packshot img{
    min-height:210px;
  }
}

@media(max-width:460px){
  .wide-editorial body .kinder-product-gallery-real{
    grid-template-columns:minmax(0,1fr);
  }
}


/* Keep generated KindertrÃ¤ume product photos fully visible in gallery cards. */
.wide-editorial body .kinder-real-packshot{
  min-height:clamp(260px,18vw,340px);
  padding:6px;
}

.wide-editorial body .kinder-real-packshot img{
  width:100%;
  height:auto;
  min-height:0;
  aspect-ratio:1000/680;
  object-fit:contain;
  object-position:center;
}

@media(max-width:760px){
  .wide-editorial body .kinder-real-packshot{
    min-height:220px;
    padding:6px;
  }
}


/* Use KindertrÃ¤ume product photos as the visual background of each card. */
.wide-editorial body .real-product-card{
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  min-height:clamp(390px,28vw,510px);
  background:radial-gradient(ellipse at 50% 35%,#fffdf8 0%,#e5e3d8 72%);
}

.wide-editorial body .real-product-card::after{
  content:'';
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  background:linear-gradient(180deg,rgba(255,255,255,.02) 0%,rgba(255,255,255,.02) 58%,rgba(245,242,235,.82) 100%);
}

.wide-editorial body .kinder-real-packshot{
  position:absolute;
  inset:0;
  z-index:0;
  min-height:0;
  margin:0;
  padding:0;
  overflow:hidden;
}

.wide-editorial body .kinder-real-packshot img{
  width:100%;
  height:100%;
  min-height:0;
  aspect-ratio:auto;
  object-fit:cover;
  object-position:center top;
  transform:translateZ(0) scale(1);
}

.wide-editorial body .real-product-card .kinder-product-copy{
  position:relative;
  z-index:2;
  margin:0 14px 14px;
}

@media(hover:hover) and (pointer:fine){
  .wide-editorial body .real-product-card:hover .kinder-real-packshot img{
    transform:translateZ(0) scale(1.025);
  }
}

@media(max-width:760px){
  .wide-editorial body .real-product-card{
    min-height:380px;
  }
}


/* Ensure the product photo layer fully covers the card frame. */
.wide-editorial body .real-product-card .kinder-real-packshot{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  padding:0!important;
}

.wide-editorial body .real-product-card .kinder-real-packshot img{
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  object-fit:cover!important;
  object-position:center top!important;
}


/* Correct KindertrÃ¤ume gallery layout: full product image, text panel below. */
.wide-editorial body .real-product-card{
  min-height:auto!important;
  height:auto!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:flex-start!important;
  align-items:stretch!important;
  align-self:start!important;
  background:radial-gradient(ellipse at 50% 38%,#fffdf8 0%,#e5e3d8 72%)!important;
}

.wide-editorial body .real-product-card::after{
  display:none!important;
}

.wide-editorial body .real-product-card .kinder-real-packshot{
  position:relative!important;
  inset:auto!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  display:block!important;
  overflow:hidden!important;
}

.wide-editorial body .real-product-card .kinder-real-packshot img{
  display:block!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  aspect-ratio:auto!important;
  object-fit:contain!important;
  object-position:center!important;
  margin-top:-10px!important;
  transform:translateZ(0) scale(1)!important;
}

.wide-editorial body .real-product-card .kinder-product-copy{
  position:relative!important;
  z-index:2!important;
  margin:10px 12px 12px!important;
  padding:14px 14px 15px!important;
  border:1px solid rgba(255,255,255,.66)!important;
  border-radius:16px!important;
  background:linear-gradient(135deg,rgba(255,253,248,.78),rgba(245,242,235,.55))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.82)!important;
  backdrop-filter:blur(10px) saturate(112%)!important;
  -webkit-backdrop-filter:blur(10px) saturate(112%)!important;
}

@media(hover:hover) and (pointer:fine){
  .wide-editorial body .real-product-card:hover .kinder-real-packshot img{
    transform:translateZ(0) scale(1.025)!important;
  }
}

/* Match .split-image (e.g. "Ein Prozess. Ein Ansprechpartner.") to the product-card frame style: bordered frame, packshot centered. */
.wide-editorial body .split-image{
  display:flex;
  align-items:center;
  justify-content:center;
  padding:clamp(24px,2.4vw,46px);
  border:1px solid rgba(255,255,255,.72);
  border-radius:22px;
  overflow:hidden;
  background:radial-gradient(ellipse at 50% 42%,#f7f5ee 0%,#d8d9d1 72%);
  box-shadow:0 24px 60px -32px #152c2475,inset 0 1px 0 rgba(255,255,255,.58);
  transition:box-shadow .4s cubic-bezier(.16,1,.3,1),border-color .4s cubic-bezier(.16,1,.3,1);
}
.wide-editorial body .split-image img{
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:center;
  transform:translateZ(0) scale(1);
  transition:transform .5s cubic-bezier(.16,1,.3,1);
}
.wide-editorial body .split-image.split-image-zoom img{
  transform:translateZ(0) translateY(-30px) scale(1.2);
}
.wide-editorial body .split-image.split-image-large img{
  transform:translateZ(0) scale(1.2);
}
@media(hover:hover) and (pointer:fine){
  .wide-editorial body .split-image:hover{
    border-color:rgba(255,255,255,.9);
    box-shadow:0 20px 42px -30px #243d3066,inset 0 1px 0 white;
  }
  .wide-editorial body .split-image:hover img{
    transform:translateZ(0) scale(1.025);
  }
  .wide-editorial body .split-image.split-image-zoom:hover img{
    transform:translateZ(0) translateY(-30px) scale(1.225);
  }
  .wide-editorial body .split-image.split-image-large:hover img{
    transform:translateZ(0) scale(1.24);
  }
}


/* Material circle swatches must show the full circle, not a zoomed crop. */
.wide-editorial body .card-image.material-image{
  padding:clamp(28px,3.2vw,48px);
}
.wide-editorial body .card-image.material-image img{
  transform:translateZ(0) scale(.88)!important;
  transition:transform .5s cubic-bezier(.16,1,.3,1)!important;
}
@media(hover:hover) and (pointer:fine){
  .wide-editorial body .card:hover .card-image.material-image img{
    transform:translateZ(0) scale(.97)!important;
  }
}

/* Materialien page: intro copy, icon feature grid, standalone CTA banner. */
.wide-editorial body .material-intro{
  max-width:920px;
  display:grid;
  gap:12px;
}
.wide-editorial body .material-intro.centered{
  margin:0 auto;
  text-align:center;
}
.wide-editorial body .material-intro p{
  margin:0;
  color:#59635a;
  font-size:15px;
  line-height:1.6;
}
.wide-editorial body .dark .material-intro p{
  color:#c7d0c5;
}

.wide-editorial body .process.icon-process{
  grid-template-columns:repeat(3,minmax(0,1fr));
  padding-top:32px;
}
.wide-editorial body .process.icon-process::before{
  top:0;
}
.wide-editorial body .section.dark:has(.icon-process) .section-header{
  margin-bottom:32px;
}
.wide-editorial body .process-item .feature-icon{
  width:52px;
  height:52px;
  object-fit:contain;
  margin-bottom:22px;
}
.wide-editorial body .process.icon-process.centered .process-item{
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
  min-height:0;
  padding:0;
  border:0;
  border-radius:0;
  background:none;
  box-shadow:none;
  backdrop-filter:none;
  -webkit-backdrop-filter:none;
}
.wide-editorial body .process.icon-process.centered .process-item .feature-icon{
  width:88px;
  height:88px;
  margin-left:auto;
  margin-right:auto;
}
.wide-editorial body .process.icon-process.centered .process-item::before{
  display:none;
}
.wide-editorial body .dark .process.icon-process .process-item h3{
  color:#f5f3eb;
}
.wide-editorial body .dark .process.icon-process .process-item p{
  color:#c7d0c5;
}

.wide-editorial body .cta-banner{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  padding:clamp(24px,2.4vw,40px) clamp(24px,3vw,48px);
  border:1px solid rgba(255,255,255,.6);
  border-radius:22px;
  background:
    linear-gradient(135deg,rgba(255,253,248,.88),rgba(236,234,222,.66)),
    radial-gradient(circle at 50% 0%,rgba(255,255,255,.6),transparent 62%);
  box-shadow:0 24px 58px -34px rgba(6,18,14,.75),inset 0 1px 0 rgba(255,255,255,.88);
  backdrop-filter:blur(16px) saturate(120%);
  -webkit-backdrop-filter:blur(16px) saturate(120%);
}
.wide-editorial body .cta-banner h3{
  margin:0 0 8px;
  color:#1c352b;
  font-family:'Lato',sans-serif;
  font-size:clamp(20px,1.6vw,28px);
}
.wide-editorial body .cta-banner p{
  margin:0;
  color:#59635a;
  font-size:13px;
  line-height:1.55;
}
.wide-editorial body .cta-banner .btn{
  flex:none;
  margin-top:0;
}
@media(max-width:760px){
  .wide-editorial body .cta-banner{
    flex-direction:column;
    align-items:flex-start;
  }
  .wide-editorial body .process.icon-process{
    grid-template-columns:minmax(0,1fr);
  }
}

/* Centered page-hero variant (materialien.html). */
.wide-editorial body .page-hero.hero-centered .container{
  text-align:center;
  display:flex;
  flex-direction:column;
  align-items:center;
}
.wide-editorial body .page-hero.hero-centered h1,
.wide-editorial body .page-hero.hero-centered p,
.wide-editorial body .page-hero.hero-centered .eyebrow{
  max-width:750px;
}

/* 3-step variant of the steps-strip (verpackungstechnik.html production flow). */
.wide-editorial body .steps-strip.steps-strip-3{
  grid-template-columns:repeat(3,minmax(0,1fr));
}

/* 4-up cards variant (verpackungstechnik.html: Displays/Verpackungen/Gebinde/Nachhaltiges Material). */
@media(min-width:1050px){
  .wide-editorial body .cards.cards-4{
    grid-template-columns:repeat(4,minmax(0,1fr));
  }
}

/* Unified Lato typography and RC visual tone. */
.wide-editorial,
.wide-editorial body,
.wide-editorial body *{
  font-family:'Lato',sans-serif;
}

.wide-editorial body{
  --type-display:'Lato',sans-serif;
  --type-body:'Lato',sans-serif;
  --type-display-weight:700;
  --type-heading-weight:650;
  --type-title-weight:600;
  --type-label-weight:600;
  --type-body-weight:400;
  --type-display-tracking:-.01em;
  --type-heading-tracking:-.006em;
  --type-title-tracking:-.002em;
  --type-label-tracking:.055em;
  --type-nav-tracking:.034em;
  --type-body-tracking:-.002em;
  --type-display-line:1.01;
  --type-heading-line:1.08;
  --type-title-line:1.2;
  --type-body-line:1.6;
  --ink:#243c31;
  --muted:#56615b;
  --deep:#1f3a2e;
  --warm:#c76228;
  --paper:#f5f2eb;
  --white:#fffdf8;
  color:var(--ink);
  font-family:var(--type-body)!important;
  font-weight:var(--type-body-weight);
  letter-spacing:var(--type-body-tracking);
  font-optical-sizing:auto;
  font-kerning:normal;
  text-rendering:geometricPrecision;
}

.wide-editorial body :is(h1,h2,h3,.hero-note strong,.split-copy h2,.section h2,.card h3,.gallery-card h3,.process-item h3,.cta-banner h3,.footer-grid h3,.contact-company h3){
  font-family:var(--type-display)!important;
  color:var(--ink);
  font-weight:var(--type-heading-weight)!important;
  letter-spacing:var(--type-heading-tracking);
  text-wrap:balance;
}

.wide-editorial body :is(.hero h1,.page-hero h1){
  font-weight:var(--type-display-weight)!important;
  font-size:clamp(40px,4.35vw,78px)!important;
  line-height:var(--type-display-line)!important;
  letter-spacing:var(--type-display-tracking)!important;
}

.wide-editorial body :is(.section h2,.split-copy h2){
  font-weight:var(--type-heading-weight)!important;
  line-height:var(--type-heading-line)!important;
  letter-spacing:var(--type-heading-tracking)!important;
}

.wide-editorial body :is(p,.section-header p,.split-copy p,.card p,.gallery-card p,.process-item p,.step-frame figcaption,.footer-grid p,.footer-grid a){
  font-family:var(--type-body)!important;
  color:var(--muted);
  font-weight:var(--type-body-weight);
  letter-spacing:var(--type-body-tracking);
  line-height:var(--type-body-line);
  text-wrap:pretty;
}

.wide-editorial body :is(.kicker,.eyebrow,.main-nav>a,.btn,.text-link,.language-button,.gallery-open,.card .text-link){
  font-family:var(--type-display)!important;
  font-weight:var(--type-label-weight)!important;
  letter-spacing:var(--type-label-tracking);
  line-height:1;
  text-transform:uppercase;
}

.wide-editorial body .main-nav>a{
  letter-spacing:var(--type-nav-tracking);
  font-size:12px;
}

.wide-editorial body .main-nav>a{
  color:#465249;
}

.wide-editorial body .main-nav>a:hover,
.wide-editorial body .main-nav>a:focus-visible,
.wide-editorial body .main-nav>a[aria-current]{
  color:var(--deep);
}

.wide-editorial body :is(.card-body h3,.gallery-card h3,.kinder-product-copy h3){
  font-size:clamp(15px,.96vw,19px)!important;
  font-weight:var(--type-title-weight)!important;
  letter-spacing:var(--type-title-tracking)!important;
  line-height:var(--type-title-line)!important;
}

.wide-editorial body :is(.card-body p,.gallery-card p,.kinder-product-copy p){
  font-size:12px!important;
  line-height:1.52!important;
  color:var(--muted)!important;
}

.wide-editorial body :is(.btn,.text-link,.language-button){
  transition:transform .22s cubic-bezier(.16,1,.3,1),background-color .22s cubic-bezier(.16,1,.3,1),box-shadow .22s cubic-bezier(.16,1,.3,1),border-color .22s cubic-bezier(.16,1,.3,1)!important;
}

.wide-editorial body :is(.btn,.text-link,.language-button):hover{
  transform:translateY(-2px);
}

.wide-editorial body :is(.btn,.text-link,.language-button):active{
  transform:translateY(0) scale(.985);
}

.wide-editorial body .dark :is(h1,h2){
  color:#f7f4ec;
}

.wide-editorial body .dark :is(p,.section-header p){
  color:#c7d0c5!important;
}

.wide-editorial body .dark .process-item p{
  color:#59635a!important;
}

/* KindertrÃƒÂ¤ume cards: 746x680 product image pinned to the top, text below. */
.wide-editorial body .real-product-card{
  display:flex!important;
  flex-direction:column!important;
  justify-content:flex-start!important;
  min-height:auto!important;
  overflow:hidden!important;
  background:radial-gradient(ellipse at 50% 36%,#fffdf8 0%,#e6e4da 74%)!important;
}

.wide-editorial body .real-product-card .kinder-real-packshot{
  position:relative!important;
  inset:auto!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  display:block!important;
  overflow:hidden!important;
  border-radius:21px 21px 0 0;
  background:#f6f4ee;
}

.wide-editorial body .real-product-card .kinder-real-packshot img{
  display:block!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  aspect-ratio:746/680!important;
  object-fit:contain!important;
  object-position:center top!important;
  transform:translateZ(0) scale(1)!important;
  will-change:transform;
}

.wide-editorial body .real-product-card .kinder-product-copy{
  position:relative!important;
  z-index:2!important;
  width:calc(100% - 24px)!important;
  margin:12px 12px 12px!important;
  padding:14px 16px!important;
}

@media(hover:hover) and (pointer:fine){
  .wide-editorial body .real-product-card:hover .kinder-real-packshot img{
    transform:translateZ(0) scale(1.018)!important;
  }
}


/* 2-up cards variant (gebinde-verpackungen.html: Trays/Transportverpackungen). */
@media(min-width:760px){
  .wide-editorial body .cards.cards-2{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

/* Premium glass and motion system across all pages. */
.wide-editorial body{
  --motion-soft:cubic-bezier(.16,1,.3,1);
  --glass-panel:linear-gradient(135deg,rgba(255,253,248,.78),rgba(238,235,224,.46));
  --glass-border:rgba(255,255,255,.74);
  --image-veil:linear-gradient(180deg,rgba(0,0,0,.055),rgba(0,0,0,.025) 42%,rgba(0,0,0,.075));
}

.wide-editorial body :is(.site-header,.card,.gallery-card,.real-product-card,.step-frame,.split-image,.spec,.process-item,.feature-list>div,.contact-box,.cta-banner,.customer-logo){
  border-color:rgba(255,255,255,.72)!important;
  box-shadow:0 22px 58px -36px rgba(20,39,31,.64),inset 0 1px 0 rgba(255,255,255,.74)!important;
  backdrop-filter:blur(18px) saturate(118%)!important;
  -webkit-backdrop-filter:blur(18px) saturate(118%)!important;
}

.wide-editorial body :is(.card,.gallery-card,.real-product-card,.step-frame,.split-image,.spec,.process-item,.feature-list>div,.contact-box,.cta-banner){
  position:relative;
  overflow:hidden;
  background-image:
    radial-gradient(circle at var(--pointer-x,50%) var(--pointer-y,8%),rgba(255,255,255,.34),transparent 34%),
    linear-gradient(145deg,rgba(255,253,248,.94),rgba(233,231,221,.9))!important;
  transition:
    transform .48s var(--motion-soft),
    box-shadow .48s var(--motion-soft),
    border-color .48s var(--motion-soft),
    background-color .48s var(--motion-soft)!important;
}

.wide-editorial body :is(.card-image,.split-image,.step-frame,.kinder-real-packshot,.hero-visual){
  position:relative;
  isolation:isolate;
}

.wide-editorial body :is(.card-image,.split-image,.step-frame,.kinder-real-packshot,.hero-visual)::after,
.wide-editorial body .gallery-card::before{
  content:'';
  position:absolute;
  inset:0;
  z-index:2;
  pointer-events:none;
  background:var(--image-veil);
  opacity:1;
  transition:opacity .55s var(--motion-soft);
}

.wide-editorial body :is(.card-image img,.split-image img,.display-banner-images img,.step-frame img,.kinder-real-packshot img,.hero-visual img,.gallery-card>img){
  backface-visibility:hidden;
  transform-origin:center;
  transition:
    transform .72s var(--motion-soft),
    filter .72s var(--motion-soft),
    opacity .72s var(--motion-soft)!important;
  will-change:transform,filter;
}

.wide-editorial body :is(.card-body,.gallery-card>div,.kinder-product-copy,.step-frame figcaption){
  background:var(--glass-panel)!important;
  border-color:var(--glass-border)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.82),0 18px 36px -30px rgba(13,30,24,.58)!important;
  backdrop-filter:blur(16px) saturate(124%)!important;
  -webkit-backdrop-filter:blur(16px) saturate(124%)!important;
}

.wide-editorial body :is(.btn,.text-link,.language-button,.gallery-open,.menu-toggle,.language-picker .languages a,.main-nav>a){
  transition:
    transform .34s var(--motion-soft),
    box-shadow .34s var(--motion-soft),
    background .34s var(--motion-soft),
    border-color .34s var(--motion-soft),
    color .34s var(--motion-soft),
    opacity .34s var(--motion-soft)!important;
}

@media(hover:hover) and (pointer:fine){
  .wide-editorial body :is(.card,.gallery-card,.real-product-card,.step-frame,.split-image,.spec,.process-item,.feature-list>div,.contact-box,.cta-banner):hover{
    transform:translateY(-4px);
    border-color:rgba(255,255,255,.92)!important;
    box-shadow:0 28px 70px -42px rgba(20,39,31,.78),inset 0 1px 0 rgba(255,255,255,.9)!important;
  }

  .wide-editorial body :is(.card:hover .card-image,.split-image:hover,.step-frame:hover,.real-product-card:hover .kinder-real-packshot,.hero-visual:hover)::after,
  .wide-editorial body .gallery-card:hover::before{
    opacity:.18;
  }

  .wide-editorial body .card:hover .card-image img{
    transform:translateZ(0) scale(1.17)!important;
    filter:saturate(1.03) contrast(1.03);
  }

  .wide-editorial body .gallery-card:hover>img{
    transform:translateZ(0) scale(1.035)!important;
    filter:saturate(1.03) contrast(1.03);
  }

  .wide-editorial body .real-product-card:hover .kinder-real-packshot img{
    transform:translateZ(0) scale(1.018)!important;
    filter:saturate(1.03) contrast(1.03);
  }

  .wide-editorial body :is(.display-banner-images img:hover,.step-frame:hover img,.hero-visual:hover img){
    transform:translateZ(0) scale(1.035)!important;
    filter:saturate(1.03) contrast(1.03);
  }

  .wide-editorial body :is(.btn,.text-link,.language-button,.gallery-open,.menu-toggle):hover{
    transform:translateY(-2px);
    box-shadow:0 16px 32px -20px rgba(20,39,31,.78),inset 0 1px 0 rgba(255,255,255,.88)!important;
  }

  .wide-editorial body :is(.main-nav>a,.language-picker .languages a):hover{
    transform:translateY(-1px);
  }
}

.wide-editorial body :is(.btn,.text-link,.language-button,.gallery-open,.menu-toggle):active{
  transform:translateY(0) scale(.985)!important;
}

@media(prefers-reduced-motion:reduce){
  .wide-editorial body *,
  .wide-editorial body *::before,
  .wide-editorial body *::after{
    transition:none!important;
    animation:none!important;
  }
}

/* Keep image veil behind text panels on direct-image gallery cards. */
/* Footer columns share the navigation's horizontal inset. */
.wide-editorial body .site-footer{
  width:100%;
  padding-inline:var(--gutter);
  box-sizing:border-box;
}
.wide-editorial body .site-footer>.container{
  width:100%;
  max-width:none;
  margin-inline:auto;
  padding-inline:0;
}
.wide-editorial body .site-footer .footer-grid{
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(0,1.5fr) minmax(0,.85fr) minmax(0,.65fr);
  gap:32px;
  align-items:start;
}
.wide-editorial body .site-footer .footer-grid>div{
  min-width:0;
  overflow-wrap:anywhere;
}
@media(max-width:1000px){
  .wide-editorial body .site-footer .footer-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:28px 32px;
  }
}
@media(max-width:650px){
  .wide-editorial body .site-footer{padding-inline:14px;}
}
@media(max-width:480px){
  .wide-editorial body .site-footer .footer-grid{grid-template-columns:minmax(0,1fr);gap:24px;}
}
/* Footer typography stays readable independently of light content panels. */
.wide-editorial body .site-footer{
  background:#1c3027;
  color:#cbd4cc;
  font-family:'Lato',sans-serif;
}
.wide-editorial body .site-footer .footer-grid h3,
.wide-editorial body .site-footer .footer-grid h3 a{
  color:#f5f2eb!important;
  font-size:16px;
  font-weight:600!important;
  letter-spacing:0;
  line-height:1.5;
  white-space:normal;
}
.wide-editorial body .site-footer :is(p,a,.footer-mail){
  color:#cbd4cc!important;
  font-weight:400;
  font-size:14px;
  letter-spacing:0;
  line-height:1.8;
}
.wide-editorial body .site-footer .footer-bottom{
  color:#b8c6bb;
  font-size:12px;
  font-weight:400;
  border-color:rgba(245,242,235,.18);
}
.wide-editorial body .site-footer a:hover,
.wide-editorial body .site-footer a:focus-visible{
  color:#fffdf8!important;
  text-decoration:underline;
  text-underline-offset:4px;
}

.wide-editorial body .kinder-product-gallery-real .real-product-card{
  background:#e9e5dd!important;
  isolation:isolate;
}

.wide-editorial body .kinder-product-gallery-real .real-product-card::before{
  content:'';
  position:absolute;
  inset:0;
  z-index:4;
  border-radius:inherit;
  pointer-events:none;
  background:linear-gradient(180deg,rgba(0,0,0,.015),rgba(0,0,0,.025) 55%,rgba(0,0,0,.055));
  opacity:1;
  transition:opacity .55s var(--motion-soft);
}

.wide-editorial body .kinder-product-gallery-real .kinder-real-packshot::after{
  content:none!important;
}

@media(hover:hover) and (pointer:fine){
  .wide-editorial body .kinder-product-gallery-real .real-product-card:hover::before{
    opacity:0;
  }
}

.wide-editorial body .kinder-product-gallery-real .real-product-card:focus-within::before{
  opacity:0;
}

@media(prefers-reduced-motion:reduce){
  .wide-editorial body .kinder-product-gallery-real .real-product-card::before{
    transition:none;
  }
}

.wide-editorial body .kinder-product-gallery-real .kinder-real-packshot{
  background:transparent!important;
}

.wide-editorial body .kinder-product-gallery-real .kinder-real-packshot img{
  opacity:1!important;
}

.wide-editorial body .kinder-product-gallery-real .kinder-product-copy h3{
  color:#243c31!important;
}

.wide-editorial body .kinder-product-gallery-real .kinder-product-copy p{
  color:#56615b!important;
}

.wide-editorial body .gallery-card::before{
  z-index:1!important;
}

.wide-editorial body .gallery-card>img{
  position:relative;
  z-index:0;
}

.wide-editorial body .gallery-card>div{
  position:relative!important;
  z-index:3!important;
}

.wide-editorial body :is(.card-body,.kinder-product-copy,.step-frame figcaption){
  position:relative;
  z-index:3;
}

/* Gallery images may be wrapped by the lightbox button in site.js. */
.wide-editorial body .gallery-card .gallery-open,
.wide-editorial body .gallery-card .gallery-open:hover,
.wide-editorial body .gallery-card .gallery-open:active{
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  padding:0!important;
  margin:0!important;
  transform:none!important;
  filter:none!important;
  backdrop-filter:none!important;
}
.wide-editorial body .gallery-card .gallery-open::before,
.wide-editorial body .gallery-card .gallery-open::after{
  content:none!important;
}
.wide-editorial body .gallery-card .gallery-open img{
  display:block;
  width:100%;
  height:clamp(260px,27vw,440px);
  object-fit:contain;
  padding:12px;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  filter:none!important;
  transform:scale(1)!important;
  transition:transform .6s var(--motion-soft)!important;
}
.wide-editorial body .gallery-card .gallery-open:focus-visible{
  outline:2px solid var(--warm);
  outline-offset:-4px;
}
@media(hover:hover) and (pointer:fine){
  .wide-editorial body .gallery-card:hover .gallery-open img{
    transform:scale(1.018)!important;
  }
}
/* The cardboard sample is a full-height texture, not a product packshot. */
.wide-editorial body .cards .card:has(.card-image img[src*="vollpappe_product"]){
  background-image:url('images/vollpappe_product.webp')!important;
  background-size:cover!important;
  background-position:center!important;
  background-repeat:no-repeat!important;
}
.wide-editorial body .card:has(.card-image img[src*="vollpappe_product"]) .card-image img{
  visibility:hidden;
}
/* Frosted finish over the full cardboard texture, with a fading veil. */
.wide-editorial body .cards .card:has(img[src*="vollpappe_product"])::before{
  content:''!important;
  position:absolute;
  inset:0;
  z-index:2!important;
  pointer-events:none;
  border-radius:inherit;
  background:linear-gradient(145deg,rgba(255,253,248,.38),rgba(255,253,248,.08) 48%,rgba(0,0,0,.09))!important;
  opacity:1;
  transition:opacity .55s var(--motion-soft)!important;
}
.wide-editorial body .cards .card:has(img[src*="vollpappe_product"]) .card-body{
  background:linear-gradient(135deg,rgba(255,253,248,.76),rgba(245,242,235,.48))!important;
  backdrop-filter:blur(16px) saturate(115%)!important;
  -webkit-backdrop-filter:blur(16px) saturate(115%)!important;
  border:1px solid rgba(255,255,255,.85)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 12px 28px -22px rgba(20,39,31,.45)!important;
}
@media(hover:hover) and (pointer:fine){
  .wide-editorial body .cards .card:has(img[src*="vollpappe_product"]):hover::before{
    opacity:0!important;
  }
}
/* Original feature icons sit directly on the green section. */
.wide-editorial body .section.dark .process.icon-process .process-item{
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  padding:16px 20px!important;
  text-align:center;
}
.wide-editorial body .section.dark .process.icon-process .process-item::before,
.wide-editorial body .section.dark .process.icon-process .process-item::after{
  content:none!important;
}
.wide-editorial body .section.dark .process.icon-process .feature-icon{
  width:96px;
  height:96px;
  object-fit:contain;
  margin:0 auto 20px;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
.wide-editorial body .section.dark .process.icon-process .process-item h3{
  color:#f5f2eb!important;
  font-size:clamp(17px,1.3vw,22px)!important;
  font-weight:600!important;
  margin:0;
}
.wide-editorial body .section.dark .process.icon-process .process-item p{
  color:#cbd4cc!important;
  margin-top:10px;
}
/* Match only the yellow pallet photo's near-white edge pixels. */
.wide-editorial body .steps-strip .step-frame:has(img[src*="ablauf_9"]){
  background:#f7f6f8!important;
}
.wide-editorial body .steps-strip .step-frame img[src*="ablauf_9"]{
  filter:none!important;
  background:transparent!important;
}
/* Shared surface: image and copy belong to one frame. */
.wide-editorial body :is(.card,.gallery-card,.real-product-card,.step-frame,.spec,.process-item,.feature-list>div){
  position:relative;
  isolation:isolate;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.72)!important;
  border-radius:22px;
  background:linear-gradient(145deg,rgba(255,253,248,.94),rgba(233,231,221,.9))!important;
  backdrop-filter:blur(18px) saturate(102%)!important;
  -webkit-backdrop-filter:blur(18px) saturate(102%)!important;
  transition:transform .45s var(--motion-soft)!important;
}
.wide-editorial body .process:not(.icon-process) .process-item{
  overflow:visible!important;
}
.wide-editorial body :is(.card-image,.kinder-real-packshot),
.wide-editorial body .gallery-card>img{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  border-radius:0!important;
}
.wide-editorial body .card-image::after,
.wide-editorial body .kinder-real-packshot::after{
  content:none!important;
}
.wide-editorial body :is(.card,.gallery-card,.real-product-card,.step-frame,.spec,.feature-list>div)::before{
  content:''!important;
  position:absolute;
  inset:0;
  z-index:4!important;
  border-radius:inherit;
  pointer-events:none;
  background:linear-gradient(180deg,rgba(0,0,0,.01),rgba(0,0,0,.025) 55%,rgba(0,0,0,.055))!important;
  opacity:1;
  transition:opacity .45s var(--motion-soft)!important;
}

.wide-editorial body .process:not(.icon-process) .process-item:not(.process-cta)::before{
  content:''!important;
  position:absolute!important;
  inset:auto auto auto clamp(14px,1.2vw,20px)!important;
  top:-30px!important;
  width:15px!important;
  height:15px!important;
  border-radius:50%!important;
  background:#c76228!important;
  box-shadow:0 0 0 7px rgba(199,98,40,.18),0 0 0 1px rgba(255,255,255,.72) inset!important;
  z-index:1!important;
  opacity:1!important;
}

/* Draw the same soft-edged line as the original single-row timeline, once
   per row, since a multi-row grid (e.g. Leistungen on lohnverpackungen.html)
   needs one line per row rather than a single line spanning the whole grid. */
.wide-editorial body .process:not(.icon-process) .process-item:nth-child(4n+1)::after{
  content:''!important;
  position:absolute!important;
  top:-23px!important;
  left:0!important;
  width:calc(400% + 3 * var(--process-col-gap))!important;
  height:1px!important;
  background:linear-gradient(90deg,rgba(255,255,255,.08),rgba(232,145,88,.86),rgba(255,255,255,.08))!important;
  z-index:0!important;
  pointer-events:none!important;
}
@media(max-width:980px){
  .wide-editorial body .process:not(.icon-process) .process-item:nth-child(4n+1)::after{
    display:none!important;
  }
  .wide-editorial body .process:not(.icon-process) .process-item:nth-child(2n+1)::after{
    content:''!important;
    display:block!important;
    position:absolute!important;
    top:-23px!important;
    left:0!important;
    width:calc(200% + var(--process-col-gap))!important;
    height:1px!important;
    background:linear-gradient(90deg,rgba(255,255,255,.08),rgba(232,145,88,.86),rgba(255,255,255,.08))!important;
    z-index:0!important;
    pointer-events:none!important;
  }
}
@media(max-width:640px){
  .wide-editorial body .process:not(.icon-process) .process-item:nth-child(4n+1)::after,
  .wide-editorial body .process:not(.icon-process) .process-item:nth-child(2n+1)::after{
    display:none!important;
  }
}

.wide-editorial body :is(.card,.gallery-card,.real-product-card,.step-frame)::after{
  content:none!important;
}
.wide-editorial body :is(.card-image img,.gallery-card>img,.step-frame img){
  transform:translateZ(0) scale(1)!important;
  filter:none!important;
  transition:transform .6s var(--motion-soft)!important;
  will-change:auto;
}
.wide-editorial body :is(.card-body,.kinder-product-copy,.gallery-card>div,.step-frame figcaption) :is(h3,p){
  color:var(--ink)!important;
}
.wide-editorial body :is(.btn,.text-link,.language-button,.gallery-open,.menu-toggle){
  transition:transform .3s var(--motion-soft),opacity .3s var(--motion-soft),color .3s var(--motion-soft)!important;
}
@media(hover:hover) and (pointer:fine){
  .wide-editorial body :is(.card,.gallery-card,.real-product-card,.step-frame,.spec,.process-item,.feature-list>div):hover{
    transform:translateY(-3px)!important;
  }
  .wide-editorial body :is(.card,.gallery-card,.real-product-card,.step-frame,.spec,.feature-list>div):hover::before{
    opacity:0!important;
  }
  .wide-editorial body .card:hover .card-image img,
  .wide-editorial body .gallery-card:hover>img,
  .wide-editorial body .step-frame:hover img{
    transform:translateZ(0) scale(1.018)!important;
    filter:none!important;
  }
  .wide-editorial body :is(.btn,.text-link,.language-button,.gallery-open,.menu-toggle):hover{
    transform:translateY(-2px)!important;
  }
}
@media(prefers-reduced-motion:reduce){
  .wide-editorial body *, .wide-editorial body *::before{
    transition:none!important;
  }
  .wide-editorial body :is(.card,.gallery-card,.real-product-card,.step-frame,.btn,.text-link):hover,
  .wide-editorial body :is(.card,.gallery-card,.real-product-card,.step-frame):hover img{
    transform:none!important;
  }
}

/* Contact page: contact-box moved to the light glass-card system, but its
   body text/links were still styled for the old dark background. Fix contrast. */
.wide-editorial body .contact-box p{
  color:#4a564c!important;
}
.wide-editorial body .contact-box .contact-companies{
  border-top-color:rgba(20,39,31,.14)!important;
}
.wide-editorial body .contact-company p{
  color:#4a564c!important;
}
.wide-editorial body .contact-company a{
  color:#1c352b!important;
  font-weight:600;
}
@media(hover:hover) and (pointer:fine){
  .wide-editorial body .contact-company a:hover{
    color:#c76228!important;
  }
}

/* Consistent content-section typography system. */
.wide-editorial body{
  --section-heading-family:'Lato',sans-serif;
  --section-heading-weight:700;
  --section-heading-size:clamp(3rem,3.4vw,4.25rem);
  --section-heading-line:.98;
  --section-heading-tracking:-.005em;
  --section-heading-width:760px;
  --section-description-size:clamp(1.05rem,1.15vw,1.35rem);
  --section-description-line:1.55;
  --section-description-tracking:0em;
  --section-description-width:520px;
  --section-header-gap:clamp(3rem,7vw,8rem);
  --section-header-bottom:clamp(2.5rem,4vw,4rem);
  --section-padding-block:clamp(5rem,8vw,8rem);
}

.wide-editorial body .section,
.wide-editorial body .section:has(.steps-strip),
.wide-editorial body .section:has(.split-copy a[href*="kindertraeume.html"]){
  padding-block:var(--section-padding-block)!important;
}

.wide-editorial body .section-header,
.wide-editorial body .section:has(.steps-strip) .section-header,
.wide-editorial body .section.dark .section-header,
.wide-editorial body .section.dark:has(.icon-process) .section-header{
  display:grid!important;
  grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr)!important;
  align-items:end!important;
  column-gap:var(--section-header-gap)!important;
  row-gap:1rem!important;
  margin-bottom:var(--section-header-bottom)!important;
}

.wide-editorial body .section-header.stacked,
.wide-editorial body .section-header--stacked,
.wide-editorial body .section-header:has(> :only-child){
  grid-template-columns:minmax(0,1fr)!important;
  align-items:start!important;
  gap:.8rem!important;
}

.wide-editorial body .section-header h2,
.wide-editorial body .section h2,
.wide-editorial body .section:has(.steps-strip) .section-header h2,
.wide-editorial body .section.dark .section-header h2,
.wide-editorial body .section.dark:has(.steps-strip) .section-header h2,
.wide-editorial body .split-copy h2,
.wide-editorial body .section:has(.split-copy a[href*="kindertraeume.html"]) .split-copy h2,
.wide-editorial body .display-banner-text h2,
.wide-editorial body .section-heading{
  max-width:var(--section-heading-width)!important;
  margin-top:0;
  font-family:var(--section-heading-family)!important;
  font-weight:var(--section-heading-weight)!important;
  font-size:var(--section-heading-size)!important;
  line-height:var(--section-heading-line)!important;
  letter-spacing:var(--section-heading-tracking)!important;
  text-transform:none!important;
  text-wrap:balance;
  overflow-wrap:break-word!important;
}

.wide-editorial body .section-header p,
.wide-editorial body .section:has(.steps-strip) .section-header p,
.wide-editorial body .section.dark .section-header p,
.wide-editorial body .section.dark:has(.steps-strip) .section-header p,
.wide-editorial body .split-copy p,
.wide-editorial body .section:has(.split-copy a[href*="kindertraeume.html"]) .split-copy p,
.wide-editorial body .display-banner-text p,
.wide-editorial body .section-description{
  max-width:var(--section-description-width)!important;
  margin:0!important;
  font-family:'Lato',sans-serif!important;
  font-weight:400!important;
  font-size:var(--section-description-size)!important;
  line-height:var(--section-description-line)!important;
  letter-spacing:var(--section-description-tracking)!important;
  text-wrap:pretty;
}

.wide-editorial body .split-copy p + .btn,
.wide-editorial body .split-copy .btn{
  margin-top:28px!important;
}

.wide-editorial body .section-header.stacked,
.wide-editorial body .section-header--stacked{
  justify-items:center!important;
  text-align:center!important;
}

.wide-editorial body .section-header.stacked h2,
.wide-editorial body .section-header--stacked h2{
  margin-left:auto!important;
  margin-right:auto!important;
  max-width:min(var(--section-heading-width),100%)!important;
}

.wide-editorial body .section-header.stacked p,
.wide-editorial body .section-header--stacked p{
  margin-top:.75rem!important;
  margin-left:auto!important;
  margin-right:auto!important;
  text-align:center!important;
}

.wide-editorial body .display-banner-text p,
.wide-editorial body .split-copy p{
  margin-top:.75rem!important;
}

@media(max-width:1024px){
  .wide-editorial body{
    --section-heading-size:clamp(2.6rem,5vw,3.5rem);
    --section-description-size:clamp(1.05rem,2vw,1.2rem);
    --section-header-gap:clamp(2rem,5vw,4rem);
  }
}

@media(max-width:760px){
  .wide-editorial body{
    --section-heading-size:clamp(2.2rem,10vw,3rem);
    --section-heading-line:1;
    --section-description-size:1rem;
    --section-header-bottom:clamp(2rem,8vw,3rem);
    --section-padding-block:clamp(4rem,14vw,5.5rem);
  }

  .wide-editorial body .section-header,
  .wide-editorial body .section:has(.steps-strip) .section-header,
  .wide-editorial body .section.dark .section-header,
  .wide-editorial body .section.dark:has(.icon-process) .section-header{
    grid-template-columns:minmax(0,1fr)!important;
    gap:1.25rem!important;
  }
}

.wide-editorial body .section .section-header.stacked,
.wide-editorial body .section.dark .section-header.stacked,
.wide-editorial body .section.dark:has(.icon-process) .section-header.stacked,
.wide-editorial body .section .section-header:has(> :only-child),
.wide-editorial body .section.dark .section-header:has(> :only-child),
.wide-editorial body .section.dark:has(.icon-process) .section-header:has(> :only-child){
  grid-template-columns:minmax(0,1fr)!important;
  align-items:start!important;
  gap:.8rem!important;
}

/* ================================================================
   Unified motion system: one consistent speed/easing/zoom amount for
   every hover interaction site-wide (cards, images, buttons, links).
   Placed last so it overrides the many mismatched durations/scales
   accumulated from earlier per-component rules.
   ================================================================ */
.wide-editorial body :is(
  .card,.gallery-card,.real-product-card,.step-frame,.spec,.process-item,
  .feature-list>div,.contact-box,.cta-banner,.split-image,
  .btn,.text-link,.language-button,.gallery-open,.menu-toggle,.main-nav>a,
  .language-picker .languages a
){
  transition:
    transform .4s var(--motion-soft),
    box-shadow .4s var(--motion-soft),
    border-color .4s var(--motion-soft),
    background-color .4s var(--motion-soft),
    opacity .4s var(--motion-soft),
    color .4s var(--motion-soft)!important;
}

.wide-editorial body :is(
  .card-image img,.gallery-card>img,.step-frame img,.split-image img,
  .kinder-real-packshot img,.hero-visual img,.display-banner-images img,
  .gallery-open img
){
  transition:transform .4s var(--motion-soft),filter .4s var(--motion-soft)!important;
}

@media(hover:hover) and (pointer:fine){
  .wide-editorial body :is(.card,.gallery-card,.real-product-card,.step-frame,.spec,.process-item,.feature-list>div,.contact-box,.cta-banner,.split-image):hover{
    transform:translateY(-4px)!important;
  }
  .wide-editorial body :is(.btn,.text-link,.language-button,.gallery-open,.menu-toggle):hover{
    transform:translateY(-2px)!important;
  }
  .wide-editorial body :is(
    .card:hover .card-image img,.gallery-card:hover>img,.step-frame:hover img,
    .real-product-card:hover .kinder-real-packshot img,
    .hero-visual:hover img,.display-banner-images img:hover,.gallery-card:hover .gallery-open img
  ){
    transform:translateZ(0) scale(1.05)!important;
    filter:none!important;
  }
  /* .split-image has its own per-variant base scale (plain, zoom, large) with
     a matching hover bump already defined above — don't flatten it to one
     absolute scale or zoomed/offset variants shrink on hover instead of growing. */
}

@media(prefers-reduced-motion:reduce){
  .wide-editorial body *{
    transition-duration:.001ms!important;
    animation-duration:.001ms!important;
  }
}

/* Kontakt page: dark bottom-to-top veil over the Google Map, fading away on hover. */
.wide-editorial body .map-frame{
  isolation:isolate;
}
.wide-editorial body .map-frame::after{
  content:'';
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  background:linear-gradient(0deg,rgba(10,20,15,.62) 0%,rgba(10,20,15,.28) 32%,transparent 62%);
  opacity:1;
  transition:opacity .8s var(--motion-soft,ease);
}
.wide-editorial body .map-frame:hover::after{
  opacity:0;
}
