/* Campaign images keep their complete composition until crops are visually approved. */
.campaign-hero-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:40px;align-items:center;margin-top:35px}
.campaign-hero h1{font-size:clamp(64px,8.2vw,118px);line-height:.92;margin:0 0 30px;overflow-wrap:normal}
.campaign-hero .hero-bottom{display:block}.campaign-hero .hero-actions{margin-top:28px;flex-wrap:wrap;gap:20px}.campaign-hero .intro{max-width:400px;font-size:17px}
.campaign-hero-figure{margin:0;position:relative;min-width:0;border:1px solid var(--ink);background:var(--orange);transform:rotate(2deg)}
.campaign-photo{margin:0;position:relative;overflow:hidden;background:#e5e0d3;aspect-ratio:4/5;display:flex;align-items:center;justify-content:center}
.campaign-image{display:block;width:100%;height:100%;object-fit:contain;object-position:center}
.campaign-hero-figure .campaign-photo{background:#e9d4de;aspect-ratio:4/4.6}
.campaign-hero-figure figcaption{padding:15px 18px;display:flex;justify-content:space-between;gap:15px;align-items:center;font-size:10px;font-weight:700;letter-spacing:1px}.campaign-hero-figure figcaption>span:first-child{font-size:22px;letter-spacing:-1px}
.campaign-sticker{position:absolute;right:-14px;top:20px;background:var(--orange);color:var(--ink);border:1px solid var(--ink);padding:18px;transform:rotate(8deg);font-weight:900;font-size:23px;line-height:1}
.campaign-motifs .section-heading h2,.campaign-lookbook .section-heading h2{font-size:clamp(42px,5.3vw,72px);line-height:1}
.campaign-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.campaign-card{border:1px solid var(--ink);min-width:0;background:var(--paper)}.campaign-card-copy{padding:23px}.campaign-card h3{font-family:'Barlow Condensed',Impact,'Arial Narrow',sans-serif;font-size:clamp(25px,2.7vw,38px);line-height:1.05;overflow-wrap:break-word}.campaign-card p{font-size:14px;line-height:1.6}.campaign-link{display:flex;justify-content:space-between;gap:15px;border-top:1px solid var(--ink);margin-top:24px;padding-top:16px;font-size:12px;font-weight:700;text-decoration:none}.campaign-link:hover{text-decoration:underline}
.campaign-community{margin:28px 0 0}.campaign-community .campaign-photo{aspect-ratio:1/1}.campaign-community figcaption{margin-top:12px;font-size:11px;color:var(--orange);letter-spacing:1px}.manifest-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.7fr);align-items:center;gap:55px}
.campaign-lookbook{padding-top:75px;padding-bottom:75px}.campaign-duo{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.campaign-duo figure{margin:0;border:1px solid var(--ink)}.campaign-duo .campaign-photo{aspect-ratio:4/4.4}.campaign-duo figcaption{padding:18px;font-size:12px;font-weight:700;letter-spacing:1px}.campaign-duo figure:nth-child(2) .campaign-photo{background:#dedbd1}
.campaign-preview{background:var(--orange);padding:65px 0;border-block:1px solid var(--ink)}.campaign-preview-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:60px;align-items:center}.campaign-preview .campaign-photo{aspect-ratio:1/1;background:var(--paper);border:1px solid var(--ink)}.campaign-label{display:inline-block;border:1px solid var(--ink);padding:9px 12px;font-size:10px;font-weight:700;letter-spacing:1px}.campaign-preview h2{font-size:clamp(54px,7vw,95px);line-height:.95;margin:28px 0}.campaign-preview p{line-height:1.7;font-size:15px}
@media(max-width:1000px){.campaign-hero-grid{gap:25px}.campaign-hero h1{font-size:clamp(55px,8vw,85px)}.campaign-cards{gap:15px}.campaign-card-copy{padding:17px}.manifest-grid{gap:28px}}
@media(max-width:760px){.campaign-hero-grid{grid-template-columns:1fr;gap:40px}.campaign-hero h1{font-size:clamp(65px,15vw,108px)}.campaign-hero-figure{width:94%;justify-self:center;max-width:500px}.campaign-hero .intro{max-width:100%}.campaign-hero{padding-bottom:45px}.campaign-cards{grid-template-columns:1fr}.campaign-card .campaign-photo{aspect-ratio:4/4.2}.campaign-card h3{font-size:34px}.campaign-motifs .section-heading{display:block}.campaign-motifs .small-copy{margin-top:20px}.manifest-grid{grid-template-columns:1fr}.campaign-community{max-width:420px}.campaign-preview-grid{grid-template-columns:1fr;gap:30px}.campaign-lookbook{padding-top:50px;padding-bottom:50px}.campaign-duo{gap:15px}.campaign-duo figcaption{font-size:10px;padding:12px}}
@media(max-width:420px){.campaign-duo{grid-template-columns:1fr}.campaign-sticker{right:-7px;padding:13px;font-size:20px}.campaign-hero-figure figcaption{padding:12px;font-size:8px}}

/* Öcher Mundwerk: clear introduction and five equal motif cards. */
.oecher-audience{font-size:15px;line-height:1.65;max-width:410px;margin-top:18px}.oecher-shop-link{font-size:13px;font-weight:700;text-underline-offset:4px}
.campaign-motifs .small-copy{max-width:350px;line-height:1.7}.campaign-card{display:flex;flex-direction:column}.campaign-card-copy{display:flex;flex-direction:column;flex:1}.campaign-card-copy p{margin-bottom:16px}.campaign-link{margin-top:auto}
.campaign-motifs .campaign-photo{flex:none}.campaign-community .campaign-photo{aspect-ratio:3/2}.manifest-grid{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr)}.manifest h2{font-size:clamp(44px,5.4vw,74px);line-height:1}
@media(max-width:1050px) and (min-width:761px){.campaign-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.manifest-grid{grid-template-columns:1fr}.campaign-community{max-width:none}.campaign-hero .hero-actions{align-items:flex-start;flex-direction:column}}
