
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,Arial,Helvetica,sans-serif;color:#202020;background:#fff;line-height:1.65}
img{max-width:100%;display:block}
a{text-decoration:none;color:inherit}
.wrap{width:min(1180px,calc(100% - 40px));margin:auto}
.topbar{background:#111;color:#f5f5f5;font-size:.86rem}
.topbar-inner{min-height:40px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.topbar-actions{display:flex;align-items:center;gap:16px}
.topbar-wa{color:#8dff8d}
.site-header{position:sticky;top:0;z-index:40;background:rgba(255,255,255,.94);backdrop-filter:blur(10px);border-bottom:1px solid rgba(0,0,0,.06)}
.header-inner{min-height:84px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.brand{display:flex;align-items:center;gap:14px}
.brand-badge{width:54px;height:54px;border-radius:16px;background:linear-gradient(135deg,#f1c65f,#c98b14);display:grid;place-items:center;font-weight:900;color:#151515;box-shadow:0 14px 34px rgba(201,139,20,.26)}
.brand-text{display:flex;flex-direction:column;line-height:1}
.brand-text strong{font-size:1rem;letter-spacing:.12em}
.brand-text small{font-size:.8rem;letter-spacing:.18em;color:#8a8a8a;margin-top:6px}
.desktop-nav{display:flex;align-items:center;gap:22px;font-weight:700}
.desktop-nav a:not(.nav-cta){color:#333}
.nav-cta{padding:12px 18px;border-radius:999px;background:linear-gradient(135deg,#17c964,#0f8d4d);color:#fff;box-shadow:0 0 24px rgba(23,201,100,.45)}
.burger{display:none;border:1px solid rgba(0,0,0,.12);background:#fff;border-radius:12px;padding:11px 14px;font-weight:800}
.mobile-nav{display:none;padding:0 20px 18px}
.mobile-nav.open{display:grid;gap:12px}
.mobile-nav a{padding:12px 0;border-bottom:1px solid rgba(0,0,0,.08);font-weight:700}
.mobile-cta{background:#15b85e;color:#fff !important;text-align:center;border:none !important;border-radius:14px;padding:14px !important;box-shadow:0 0 24px rgba(23,201,100,.45)}

.hero{background:
radial-gradient(circle at 12% 10%, rgba(234,181,77,.17), transparent 30%),
linear-gradient(120deg,#171717,#232323 48%,#2d2014 100%);
color:#fff}
.hero-grid{display:grid;grid-template-columns:1.04fr .96fr;gap:44px;align-items:center;padding:72px 0 56px}
.eyebrow{font-size:.86rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:#eab54d}
.eyebrow.orange{color:#c98611}
.hero h1{font-size:clamp(2.25rem,5vw,4.5rem);line-height:.96;margin:14px 0 16px;font-weight:1000;letter-spacing:-.03em}
.hero h1 span{color:#eab54d}
.hero p{color:#ddd2c1;font-size:1.08rem;max-width:720px}
.hero-actions,.final-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:26px}
.hero-wa,.final-wa{padding:16px 22px;border-radius:16px;background:linear-gradient(135deg,#17c964,#0e8e4d);color:#fff;font-weight:900;box-shadow:0 0 30px rgba(23,201,100,.48)}
.hero-phone,.final-phone{padding:16px 22px;border-radius:16px;background:linear-gradient(135deg,#c6242d,#8d141b);color:#fff;font-weight:900;box-shadow:0 0 26px rgba(198,36,45,.42)}
.hero-trust{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}
.hero-trust span{background:rgba(255,255,255,.08);padding:10px 12px;border-radius:999px;font-size:.92rem;color:#efe8d9}
.hero-slider{position:relative}
.slide{display:none;position:relative;border-radius:26px;overflow:hidden;background:#0f0f0f;box-shadow:0 26px 60px rgba(0,0,0,.34)}
.slide.active{display:block}
.slide img{width:100%;height:520px;object-fit:cover}
.slide-caption{position:absolute;left:18px;right:18px;bottom:18px;padding:16px 18px;background:rgba(17,17,17,.6);backdrop-filter:blur(8px);color:#fff;border:1px solid rgba(255,255,255,.14);border-radius:18px;display:flex;justify-content:space-between;gap:20px;align-items:center}
.slide-caption strong{font-size:1.05rem}
.slide-caption span{color:#e3d7bf}
.slider-dots{display:flex;gap:10px;justify-content:center;margin-top:14px}
.dot{width:12px;height:12px;border-radius:50%;border:none;background:rgba(255,255,255,.35);cursor:pointer}
.dot.active{background:#eab54d}

.section{padding:78px 0}
.section h2{font-size:clamp(2rem,3vw,3.15rem);line-height:1.06;margin:10px 0 18px;letter-spacing:-.03em}
.section .intro{font-size:1.04rem;color:#5e5e5e;max-width:900px}
.stats{background:#111;color:#fff}
.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;padding:28px 0}
.stats-grid>div{background:rgba(255,255,255,.05);padding:20px;border-radius:18px;text-align:center}
.stats-grid strong{display:block;font-size:1.9rem;color:#eab54d}
.stats-grid span{color:#ddd4c5;font-size:.95rem}
.split{display:grid;grid-template-columns:.95fr 1.05fr;gap:42px;align-items:start}
.check{padding:0;margin:20px 0 0;list-style:none;display:grid;gap:12px}
.check li{padding-left:28px;position:relative}
.check li:before{content:"✓";position:absolute;left:0;top:0;color:#be8411;font-weight:900}
.dark-section{background:#181818;color:#fff}
.dark-section .light{color:#d8ccbb}
.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:32px}
.service-card{position:relative;background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:24px;padding:26px;box-shadow:0 16px 34px rgba(0,0,0,.05);transition:transform .2s ease, box-shadow .2s ease}
.dark-section .service-card{background:#232323;border-color:rgba(255,255,255,.07);color:#fff;box-shadow:none}
.service-card:hover{transform:translateY(-4px)}
.service-card h3{margin:12px 0 10px;font-size:1.18rem}
.service-card p{margin:0;color:#6a6a6a}
.dark-section .service-card p{color:#d7cbb9}
.service-arrow{position:absolute;right:22px;top:18px;color:#c98611;font-size:1.15rem;font-weight:900}

.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.process-card{border-radius:24px;background:#fbf8f3;border:1px solid rgba(0,0,0,.06);padding:26px}
.process-card b{font-size:1.7rem;color:#c98611}
.process-card h3{margin:12px 0 10px;font-size:1.14rem}

.photo-cta{background:#f7f2e8}
.photo-cta-grid{display:grid;grid-template-columns:1fr 360px;gap:34px;align-items:center;padding:60px 0}
.step-list{display:grid;gap:16px;margin-top:24px}
.step-list>div{display:flex;gap:16px;align-items:flex-start}
.step-list b{width:42px;height:42px;border-radius:14px;background:linear-gradient(135deg,#f1ca68,#c98611);display:grid;place-items:center;color:#1b1b1b}
.step-list span{display:flex;flex-direction:column;line-height:1.3}
.step-list small{color:#686868;margin-top:6px}
.cta-card{background:#171717;color:#fff;border-radius:28px;padding:32px;box-shadow:0 22px 54px rgba(0,0,0,.18)}
.cta-icon{width:62px;height:62px;border-radius:18px;background:linear-gradient(135deg,#eab54d,#b97800);display:grid;place-items:center;font-size:1.5rem;color:#171717;margin-bottom:16px}
.glow-wa,.plain-phone{display:flex;justify-content:center;align-items:center;text-align:center;min-height:54px;padding:14px 16px;border-radius:15px;font-weight:900}
.glow-wa{margin-top:16px;background:linear-gradient(135deg,#17c964,#0f8f4d);color:#fff;box-shadow:0 0 28px rgba(23,201,100,.5)}
.plain-phone{margin-top:12px;background:linear-gradient(135deg,#c6242d,#8d141b);color:#fff;box-shadow:0 0 24px rgba(198,36,45,.4)}

.visual-section{background:#fff}
.visual-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:30px}
.visual-card{background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:28px;overflow:hidden;box-shadow:0 16px 36px rgba(0,0,0,.06)}
.visual-card img{width:100%;height:280px;object-fit:cover}
.visual-body{padding:22px}
.tag{display:inline-flex;padding:7px 12px;border-radius:999px;background:#fbf3df;color:#8d6200;font-weight:800;font-size:.82rem;margin-bottom:10px}

.cta-band{background:#151515;color:#fff}
.cta-band-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:26px 0}
.cta-band-inner span{display:block;color:#eab54d;font-size:.88rem;font-weight:900;text-transform:uppercase;letter-spacing:.1em}
.cta-band-inner strong{display:block;font-size:1.3rem;margin-top:6px}
.cta-band-inner a{padding:15px 20px;border-radius:14px;background:linear-gradient(135deg,#17c964,#0f8f4d);color:#fff;font-weight:900;box-shadow:0 0 26px rgba(23,201,100,.42)}

.cost-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:30px}
.cost-card{background:#fbf8f3;border:1px solid rgba(0,0,0,.06);border-radius:22px;padding:24px}
.cost-card h3{margin:0 0 10px;font-size:1.08rem}
.cost-card p{margin:0;color:#676767}

.cantons-section{background:#faf7f2}
.canton-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:26px}
.canton-grid a{background:#fff;border:1px solid rgba(0,0,0,.07);border-radius:18px;padding:16px 16px;display:flex;align-items:center;gap:12px;box-shadow:0 8px 20px rgba(0,0,0,.04)}
.canton-grid strong{width:44px;height:44px;border-radius:14px;background:#161616;color:#eab54d;display:grid;place-items:center}
.canton-grid span{font-weight:800;color:#303030}

.faq-section{background:#fff}
.faq-wrap details{border:1px solid rgba(0,0,0,.08);border-radius:18px;padding:18px 20px;background:#fff;margin-top:14px}
.faq-wrap summary{cursor:pointer;font-weight:900}
.faq-wrap p{margin:10px 0 0;color:#5f5f5f}

.final-cta{background:
radial-gradient(circle at 10% 10%, rgba(234,181,77,.18), transparent 26%),
linear-gradient(120deg,#151515,#291e11);
color:#fff}
.final-grid{display:grid;grid-template-columns:1fr auto;gap:32px;align-items:center;padding:54px 0}
.final-grid h2{font-size:clamp(2rem,3vw,3rem);line-height:1.02;margin:10px 0 12px}
.final-grid p{color:#ddd1bf;max-width:760px}

.subhero{background:
radial-gradient(circle at 8% 15%, rgba(234,181,77,.16), transparent 24%),
linear-gradient(120deg,#191919,#2c2419);
color:#fff;padding:56px 0}
.breadcrumb{font-size:.94rem;color:#dbcdb6}
.breadcrumb a{color:#f5d487}
.subhero h1{font-size:clamp(2rem,4vw,3.4rem);line-height:1.03;margin:12px 0 14px}
.subhero p{max-width:920px;color:#ddd2c0}
.canton-code{width:62px;height:62px;border-radius:18px;background:#eab54d;color:#161616;display:grid;place-items:center;font-weight:1000;font-size:1.2rem;margin-top:10px}

.visual-inline{padding-top:18px}
.visual-inline-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.visual-inline-grid img{border-radius:22px;height:260px;object-fit:cover;box-shadow:0 16px 32px rgba(0,0,0,.08)}

.contact-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.contact-card{border-radius:24px;background:#fff;border:1px solid rgba(0,0,0,.08);box-shadow:0 16px 34px rgba(0,0,0,.05);padding:26px}
.contact-card span{display:block;color:#8d6200;font-weight:900;text-transform:uppercase;letter-spacing:.1em;font-size:.84rem}
.contact-card a{display:block;font-size:1.25rem;font-weight:1000;margin:8px 0 10px}
.whatsapp-card{background:linear-gradient(180deg,#fff,#f2fff6)}

.text-page h2{font-size:1.45rem;margin:28px 0 10px}
.text-page p{margin:0 0 14px;color:#5d5d5d}

.footer{background:#121212;color:#fff;padding:54px 0 22px}
.footer-grid{display:grid;grid-template-columns:1.2fr .9fr .9fr;gap:34px}
.footer-brand{font-size:1.2rem;font-weight:1000;letter-spacing:.12em;color:#eab54d}
.footer p{color:#d9cfbf}
.footer h3{margin:0 0 14px}
.footer a{display:block;color:#f0e9dd;margin:8px 0}
.footer-bottom{border-top:1px solid rgba(255,255,255,.08);margin-top:28px;padding-top:18px;color:#d7cdbd;font-size:.92rem}

.floating-buttons{position:fixed;right:18px;bottom:18px;display:grid;gap:12px;z-index:60}
.float-btn{min-width:210px;padding:14px 16px;border-radius:16px;color:#fff;box-shadow:0 0 28px rgba(0,0,0,.18);display:flex;flex-direction:column;align-items:center;text-align:center;font-weight:900}
.float-btn span{font-size:.82rem;opacity:.9}
.float-btn strong{font-size:1rem;margin-top:4px}
.float-wa{background:linear-gradient(135deg,#17c964,#0f8f4d);box-shadow:0 0 26px rgba(23,201,100,.46)}
.float-phone{background:linear-gradient(135deg,#c6242d,#8d141b);box-shadow:0 0 24px rgba(198,36,45,.4)}

@media (max-width:1080px){
  .hero-grid,.split,.photo-cta-grid,.final-grid{grid-template-columns:1fr}
  .service-grid,.cost-grid,.process-grid,.visual-grid,.contact-grid{grid-template-columns:repeat(2,1fr)}
  .canton-grid{grid-template-columns:repeat(3,1fr)}
  .final-actions{justify-content:flex-start}
}
@media (max-width:920px){
  .desktop-nav{display:none}
  .burger{display:block}
  .stats-grid,.service-grid,.cost-grid,.process-grid,.visual-grid,.contact-grid,.canton-grid,.visual-inline-grid{grid-template-columns:1fr}
  .topbar-inner{flex-direction:column;justify-content:center;padding:10px 0}
  .slide img{height:360px}
}
@media (max-width:720px){
  .wrap{width:min(100% - 26px,1180px)}
  .hero-grid{padding:52px 0 40px}
  .hero-actions,.final-actions,.cta-band-inner{flex-direction:column;align-items:stretch}
  .slider-dots{margin-top:10px}
  .floating-buttons{right:12px;left:12px;bottom:12px}
  .float-btn{min-width:0}
  .footer-grid{grid-template-columns:1fr}
}


/* Asbest / Sicherheit */
.asbestos-section{
  background:
    radial-gradient(circle at 92% 10%,rgba(226,167,34,.14),transparent 28%),
    linear-gradient(180deg,#fffaf0,#f7f2e8);
}
.asbestos-grid{
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:38px;
  align-items:center;
}
.asbestos-eyebrow{color:#9a6500}
.asbestos-card{
  background:#171717;
  color:#fff;
  border-radius:26px;
  padding:30px;
  box-shadow:0 22px 50px rgba(0,0,0,.16);
  border:1px solid rgba(234,181,77,.22);
}
.asbestos-icon{
  width:54px;
  height:54px;
  border-radius:16px;
  display:grid;
  place-items:center;
  background:linear-gradient(135deg,#eab54d,#bf7f08);
  color:#171717;
  font-size:1.5rem;
  font-weight:1000;
  box-shadow:0 0 22px rgba(234,181,77,.35);
}
.asbestos-card h3{font-size:1.35rem;margin:16px 0}
.asbestos-card ol{margin:0;padding:0;list-style:none;display:grid;gap:14px}
.asbestos-card li{
  padding:14px;
  border-radius:15px;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.08);
}
.asbestos-card li strong{display:block;color:#f1c55f;margin-bottom:3px}
.asbestos-card li span{display:block;color:#d7cdbd;font-size:.92rem}
.safety-note{
  padding:26px;
  border-radius:22px;
  border:1px solid #e4c375;
  background:linear-gradient(135deg,#fffaf0,#fff);
  box-shadow:0 14px 34px rgba(148,102,13,.08);
}
.safety-note>strong{
  display:block;
  font-size:1.3rem;
  color:#8f5b00;
  margin-bottom:8px;
}
.safety-note p{margin:0 0 12px;color:#5f5547}
.safety-note a{color:#8f5b00;font-weight:900}
.asbestos-subhero{
  background:
    radial-gradient(circle at 10% 20%,rgba(234,181,77,.18),transparent 28%),
    linear-gradient(120deg,#171717,#2b2115);
}
@media(max-width:900px){
  .asbestos-grid{grid-template-columns:1fr}
}
