:root{--ink:#242321;--muted:#6b6862;--cream:#f7f0e4;--paper:#fffaf2;--terracotta:#bd5c32;--orange:#e1843e;--bronze:#8a4c2f;--dark:#1f1f1d;--line:rgba(31,37,39,.12);--shadow:0 24px 70px rgba(38,31,21,.18)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Arial,sans-serif;color:var(--ink);background:var(--paper);line-height:1.6}a{color:inherit}.site-header{position:fixed;z-index:10;top:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;padding:18px clamp(20px,4vw,64px);backdrop-filter:blur(18px);background:rgba(255,250,242,.8);border-bottom:1px solid var(--line)}.brand{display:flex;gap:12px;align-items:center;text-decoration:none}.brand-mark{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,var(--terracotta),var(--orange));color:white;font-weight:900}.brand small{display:block;color:var(--muted);font-size:12px}.nav{display:flex;gap:26px}.nav a,.footer a{text-decoration:none;color:var(--muted);font-weight:650}.header-cta{padding:10px 18px;border-radius:999px;background:var(--dark);color:#fff;text-decoration:none}.hero{min-height:96vh;position:relative;display:grid;align-items:end;padding:120px clamp(20px,6vw,90px) 70px;overflow:hidden}.hero-bg{position:absolute;inset:0;background:linear-gradient(90deg,rgba(31,31,29,.72),rgba(31,31,29,.08)),url('stumptner-gebaeude.jpg') center/cover no-repeat;transform:scale(1.02)}.hero-card{position:relative;max-width:760px;background:rgba(255,250,242,.92);padding:clamp(28px,5vw,64px);border-radius:34px;box-shadow:var(--shadow)}.eyebrow,.section-kicker{letter-spacing:.16em;text-transform:uppercase;color:var(--terracotta);font-size:13px;font-weight:850}.hero h1{font-size:clamp(42px,7vw,86px);line-height:.95;margin:10px 0 22px}.lead{font-size:clamp(18px,2.2vw,24px);color:#46423d}.btn{display:inline-flex;border:0;border-radius:999px;padding:14px 22px;font-weight:800;text-decoration:none;cursor:pointer}.primary{background:var(--terracotta);color:white}.ghost{background:rgba(31,37,39,.08)}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.section{padding:clamp(70px,9vw,120px) clamp(20px,6vw,90px)}.intro{display:grid;grid-template-columns:1fr 1.1fr;gap:50px;align-items:start}.section h2{font-size:clamp(32px,4.6vw,58px);line-height:1.04;margin:.1em 0 .5em}.center{text-align:center}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:36px}.card,.plus,.step,.contact-box{background:#fff;border:1px solid var(--line);border-radius:28px;padding:28px;box-shadow:0 12px 34px rgba(64,48,31,.07)}.card span{color:var(--orange);font-weight:900}.card h3,.step h3{font-size:22px}.warm{background:linear-gradient(135deg,#f4e2cc,#fffaf2)}.split{display:grid;grid-template-columns:.9fr 1.1fr;gap:46px;align-items:center}.plus-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.plus b{display:block;font-size:20px;margin-bottom:8px}.plus span,.card p,.step p,.intro p,.family p{color:var(--muted)}.timeline{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:38px}.step i{display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:var(--dark);color:white;font-style:normal;font-weight:900}.family{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center}.photo-panel{min-height:520px;border-radius:36px;background:linear-gradient(180deg,rgba(31,31,29,0),rgba(31,31,29,.35)),url('stumptner-gebaeude.jpg') center/cover;box-shadow:var(--shadow)}.contact{display:grid;grid-template-columns:.9fr 1.1fr;gap:22px;background:var(--dark);color:white}.contact .section-kicker{color:#f5b178}.contact p{color:rgba(255,255,255,.74)}.contact-links{display:grid;gap:12px;margin-top:24px}.contact-links a{padding:14px 16px;border:1px solid rgba(255,255,255,.18);border-radius:16px;text-decoration:none}.footer{display:flex;justify-content:space-between;gap:20px;padding:34px clamp(20px,6vw,90px);background:#151515;color:white}.footer div:last-child{display:flex;gap:20px}.footer a{color:rgba(255,255,255,.75)}.reveal{opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:none}@media(max-width:900px){.nav{display:none}.intro,.split,.family,.contact{grid-template-columns:1fr}.cards,.timeline{grid-template-columns:1fr 1fr}.hero{min-height:820px}.footer{display:block}.footer div:last-child{margin-top:18px}}@media(max-width:560px){.cards,.timeline,.plus-grid{grid-template-columns:1fr}.site-header{padding:12px 16px}.header-cta{display:none}.hero-card{border-radius:24px}.section{padding-left:18px;padding-right:18px}}
.section-head{max-width:960px;margin:0 auto 40px}.section-subline{max-width:760px;margin:0 auto;color:var(--muted);font-size:18px}.atelier-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:38px}.atelier-card{position:relative;display:grid;grid-template-columns:86px 1fr;gap:22px;align-items:start;min-height:230px;padding:32px;border-radius:34px;background:linear-gradient(135deg,#fffdf8,#f6eadb);border:1px solid rgba(31,37,39,.1);box-shadow:0 18px 50px rgba(64,48,31,.08);overflow:hidden}.atelier-card:before{content:"";position:absolute;inset:auto -60px -80px auto;width:210px;height:210px;border-radius:50%;background:rgba(189,92,50,.09)}.atelier-card:nth-child(even){background:linear-gradient(135deg,#fffaf2,#f0e9dc)}.atelier-number{width:70px;height:70px;border-radius:24px;display:grid;place-items:center;background:var(--dark);color:#fff;font-size:30px;font-weight:900;box-shadow:inset 0 -8px 0 rgba(255,255,255,.08)}.atelier-card span{letter-spacing:.14em;text-transform:uppercase;color:var(--terracotta);font-size:12px;font-weight:900}.atelier-card h3{font-size:28px;line-height:1.08;margin:.35em 0 .55em}.atelier-card p{color:var(--muted);margin:0}.crafted-process{background:#fffaf2}.process-intro{max-width:820px}.process-intro p:last-child{color:var(--muted);font-size:19px}.process-ribbon{position:relative;display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:42px;border-radius:38px;overflow:hidden;box-shadow:var(--shadow);border:1px solid var(--line)}.process-tile{position:relative;padding:34px 28px 38px;min-height:260px;background:#fff;border-right:1px solid var(--line)}.process-tile:last-child{border-right:0}.process-tile:nth-child(odd){background:#f7f0e4}.process-tile em{display:block;margin-bottom:42px;font-style:normal;font-size:13px;letter-spacing:.18em;color:var(--terracotta);font-weight:900}.process-tile em:after{content:"";position:absolute;left:28px;top:70px;width:calc(100% - 56px);height:2px;background:linear-gradient(90deg,var(--terracotta),rgba(189,92,50,.12))}.process-tile strong{display:block;font-size:28px;line-height:1.05;margin-bottom:12px}.process-tile p{margin:0;color:var(--muted)}
@media(max-width:900px){.atelier-grid,.process-ribbon{grid-template-columns:1fr}.process-tile{border-right:0;border-bottom:1px solid var(--line);min-height:auto}.process-tile:last-child{border-bottom:0}}@media(max-width:560px){.atelier-card{grid-template-columns:1fr}.atelier-number{width:58px;height:58px;border-radius:20px;font-size:24px}.atelier-card h3,.process-tile strong{font-size:24px}}
.hero-note{position:absolute;right:clamp(20px,6vw,90px);bottom:70px;max-width:280px;padding:24px;border-radius:28px;background:rgba(31,31,29,.88);color:#fff;box-shadow:var(--shadow)}.hero-note strong{display:block;font-size:34px;line-height:1;margin-bottom:8px;color:#f5b178}.hero-note span{color:rgba(255,255,255,.78)}.touch-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:42px}.touch-card{min-height:430px;display:flex;flex-direction:column;justify-content:flex-end;padding:30px;border-radius:34px;background:radial-gradient(circle at 20% 15%,rgba(245,177,120,.28),transparent 34%),linear-gradient(135deg,#2b2825,#6f3b26);color:#fff;box-shadow:0 22px 60px rgba(31,37,39,.18);overflow:hidden;position:relative}.touch-card:before{content:"";position:absolute;right:-70px;top:-70px;width:210px;height:210px;border-radius:50%;border:34px solid rgba(255,255,255,.08)}.touch-card:after{content:"";position:absolute;inset:18px;border:1px solid rgba(255,255,255,.2);border-radius:24px;pointer-events:none}.touch-card:nth-child(2){background:radial-gradient(circle at 82% 18%,rgba(255,250,242,.22),transparent 30%),linear-gradient(135deg,#724026,#bd5c32)}.touch-card:nth-child(3){background:radial-gradient(circle at 18% 80%,rgba(245,177,120,.25),transparent 34%),linear-gradient(135deg,#4b3328,#1f1f1d)}.touch-card:nth-child(4){background:radial-gradient(circle at 80% 70%,rgba(255,250,242,.20),transparent 32%),linear-gradient(135deg,#e1843e,#4b2c20)}.touch-card .tag{position:relative;z-index:1;align-self:flex-start;margin-bottom:auto;padding:8px 12px;border-radius:999px;background:rgba(255,250,242,.16);backdrop-filter:blur(8px);font-size:12px;letter-spacing:.14em;text-transform:uppercase;font-weight:900}.touch-card h3,.touch-card p{position:relative;z-index:1}.touch-card h3{font-size:clamp(24px,2.05vw,28px);line-height:1.08;margin:64px 0 12px}.touch-card p{margin:0;color:rgba(255,255,255,.78);font-size:15.5px;line-height:1.55}.heritage{display:grid;grid-template-columns:.9fr 1.2fr;gap:44px;align-items:center;background:linear-gradient(135deg,#f4e2cc,#fffaf2)}.heritage-copy p:last-child{color:var(--muted);font-size:18px}.heritage-line{display:grid;gap:14px}.heritage-line div{display:grid;grid-template-columns:110px 1fr;gap:22px;align-items:center;padding:24px;border-radius:26px;background:rgba(255,255,255,.72);border:1px solid var(--line);box-shadow:0 12px 34px rgba(64,48,31,.07)}.heritage-line b{font-size:30px;color:var(--terracotta)}.heritage-line span{color:var(--muted)}.footer-large{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;align-items:start}.footer-large p{color:rgba(255,255,255,.7);margin:.4em 0}.footer-large h4{margin:0 0 12px;color:#fff}.footer-large div{display:grid;gap:7px}.footer-large div:last-child{display:grid;gap:7px;margin:0}.legal-page{background:var(--paper)}.legal{max-width:980px;margin:90px auto 0}.legal h1{font-size:clamp(38px,5vw,66px);line-height:1}.legal h2{font-size:26px;margin-top:34px}.legal p{color:var(--muted)}
@media(max-width:1100px){.touch-grid{grid-template-columns:1fr 1fr}.hero-note{position:relative;right:auto;bottom:auto;margin:24px 0 0;max-width:760px}.hero{align-items:end}}@media(max-width:900px){.heritage,.footer-large{grid-template-columns:1fr}}@media(max-width:560px){.touch-grid{grid-template-columns:1fr}.touch-card{min-height:380px}.heritage-line div{grid-template-columns:1fr}.hero-note{display:none}}

/* Version 11: Lange Fachbegriffe in den grafischen Leistungskarten sauber umbrechen. */
.touch-card h3,.touch-card p{hyphens:auto;overflow-wrap:break-word;word-break:normal}
.touch-card{min-width:0}
@media(max-width:1250px) and (min-width:1101px){.touch-card{padding:26px}.touch-card h3{font-size:24px}.touch-card p{font-size:15px}}

/* Version 19: Kontaktbereich mit vollständigen Daten ohne Formular. */
.contact{align-items:start;gap:28px}
.contact-box{border-radius:34px}
.contact-details{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:28px}
.contact-card{display:grid;gap:4px;padding:16px;border:1px solid rgba(255,255,255,.18);border-radius:18px;background:rgba(255,255,255,.06)}
.contact-card span{color:rgba(255,255,255,.58);font-size:12px;text-transform:uppercase;letter-spacing:.13em;font-weight:900}
.contact-card a,.contact-card strong{color:#fff;text-decoration:none;font-size:17px;line-height:1.35}
.contact-card a:hover{text-decoration:underline}
.contact-legal{margin-top:16px;padding:16px;border-radius:18px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);color:rgba(255,255,255,.72);font-size:14px;line-height:1.7}
.contact-legal strong{color:#fff}
@media(max-width:900px){.contact-details{grid-template-columns:1fr}}


/* Version 13 korrigiert: Kontakt-Infokarte sichtbar auf dunklem Hintergrund.
   In V13 hatte die Karte einen hellen Hintergrund, erbte aber weiße Schrift aus dem Kontaktbereich. */
.contact-box{
  background:linear-gradient(135deg, rgba(255,250,242,.12), rgba(255,255,255,.045));
  border:1px solid rgba(255,255,255,.18);
  color:#fff;
  box-shadow:0 18px 50px rgba(0,0,0,.16);
}
.contact-box h2{
  color:#fff;
}
.contact-box > p:not(.section-kicker){
  color:rgba(255,255,255,.78);
}
.contact-box .section-kicker{
  color:#f5b178;
}
.contact-box .contact-legal,
.contact-box .contact-card{
  color:#fff;
}
@media(max-width:900px){
  .contact-box{padding:24px;}
}

/* V19: Kontaktbereich nutzt die volle Breite. */
.contact{grid-template-columns:1fr}.contact-box{max-width:980px;margin:0 auto;width:100%}.contact-direct{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}.contact .ghost{background:rgba(255,255,255,.12);color:#fff}


/* V20: Zweisprachige Sprachauswahl in der Kopfzeile. */
.language-switch{display:flex;align-items:center;gap:7px;padding:8px 11px;border:1px solid var(--line);border-radius:999px;background:rgba(255,250,242,.72);font-size:12px;font-weight:900;letter-spacing:.08em}
.language-switch a{text-decoration:none;color:var(--muted)}
.language-switch a.active{color:var(--terracotta)}
.language-switch span{color:rgba(31,37,39,.28)}
.legal-note{padding:14px 16px;border-radius:18px;background:rgba(189,92,50,.08);border:1px solid rgba(189,92,50,.16)}
@media(max-width:900px){.language-switch{margin-left:auto}.site-header{gap:12px}}
@media(max-width:560px){.language-switch{font-size:11px;padding:7px 9px}.brand small{display:none}}
