*{
margin:0;
padding:0;
box-sizing:border-box;
}

body{

font-family:Poppins,sans-serif;

background:#181818;

color:#ffffff;

}
html,
body{
    overflow-x:hidden;
}

.container{

width:90%;

max-width:1400px;

margin:auto;

}

header{

position:fixed;

top:0;

left:0;

width:100%;

background:rgba(15,15,15,.95);

backdrop-filter:blur(12px);

z-index:999;

}

header .container{

display:flex;

align-items:center;

justify-content:space-between;

height:90px;

}

.logo img{

height:70px;

}

nav ul{

display:flex;

gap:40px;

list-style:none;

}

nav a{

color:white;

text-decoration:none;

font-weight:500;

transition:.3s;

}

nav a:hover{

color:#d7262b;

}

.header-buttons{
    display:flex;
    align-items:center;
    gap:12px;

}

.telefon{

background:#222;

padding:12px 18px;

border-radius:8px;

color:white;

text-decoration:none;

}

.whatsapp{

background:#d7262b;

padding:12px 22px;

border-radius:8px;

text-decoration:none;

color:white;

font-weight:600;

}

.hero{

min-height:100vh;

display:flex;

align-items:center;

padding-top:120px;

background:

linear-gradient(120deg,#121212,#1f1f1f);

}

.hero-grid{
    display:grid;
    grid-template-columns:55% 45%;
    align-items:center;
    gap:70px;

}

.hero h1{

font-size:46px;

line-height:1.05;

margin:25px 0;

font-weight:800;

}

.subtitle{

color:#d7262b;

font-size:18px;

font-weight:600;

letter-spacing:2px;

text-transform:uppercase;

}

.hero p{

font-size:20px;

line-height:1.8;

color:#d4d4d4;

max-width:700px;

}

.hero-buttons{

margin-top:45px;

display:flex;

gap:20px;

}

.btn-red{

background:#d7262b;

padding:18px 34px;

border-radius:10px;

text-decoration:none;

color:white;

font-weight:600;

}

.btn-dark{

border:2px solid #d7262b;

padding:18px 34px;

border-radius:10px;

text-decoration:none;

color:white;

}

.hero-features{
    display:grid;
    grid-template-columns:repeat(2, 1fr);
    gap:10px 10px;
    margin-top:40px;
    margin-bottom:25px;
}

.hero-features div{
    display:flex;
    align-items:center;
    font-size:18px;
    line-height:1.4;
}

.hero-right img{

width:100%;

max-width:600px;

filter:drop-shadow(0 25px 50px rgba(0,0,0,.55));

}

/* ==========================
   PROBLEMBEREICH
========================== */

.problems{

padding:110px 0;

background:#111;

}

.section-title{

text-align:center;

max-width:900px;

margin:auto;

margin-bottom:70px;

}

.section-title span{

color:#d7262b;

font-weight:700;

letter-spacing:2px;

}

.section-title h2{

font-size:48px;

margin-top:20px;

margin-bottom:25px;

}

.section-title p{

font-size:20px;

color:#bfbfbf;

line-height:1.8;

}

.problem-grid{

display:grid;

grid-template-columns:repeat(3,1fr);

gap:30px;

}

.problem-card{

background:#1f1f1f;

padding:40px;

border-radius:16px;

transition:.35s;

border:1px solid #2f2f2f;

}

.problem-card:hover{

transform:translateY(-10px);

border-color:#d7262b;

box-shadow:0 20px 45px rgba(0,0,0,.45);

}

.problem-card h3{

margin-bottom:20px;

font-size:24px;

}

.problem-card p{

line-height:1.7;

color:#cfcfcf;

}

/* =======================================
   LEISTUNGEN
======================================= */

.service{

padding:140px 0;

background:#181818;

}

.service-grid{

display:grid;

grid-template-columns:1fr 1fr;

gap:80px;

align-items:center;

}

.service-image{

text-align:center;

}

.service-image img{

width:100%;

max-width:400px;

transition:.4s;

filter:drop-shadow(0 30px 40px rgba(0,0,0,.45));

}

.service-image img:hover{

transform:scale(1.04);

}

.section-tag{

display:inline-block;

padding:8px 18px;

border-radius:30px;

background:#d7262b;

font-size:14px;

font-weight:700;

letter-spacing:2px;

margin-bottom:25px;

}

.service h2{

font-size:52px;

line-height:1.2;

margin-bottom:30px;

}

.service p{

font-size:20px;

line-height:1.8;

color:#d2d2d2;

margin-bottom:40px;

}

.service-list{

display:grid;

grid-template-columns:repeat(2,1fr);

gap:20px;

margin-bottom:45px;

}

.service-item{

background:#232323;

padding:18px;

border-radius:10px;

font-size:18px;

transition:.3s;

border:1px solid #2d2d2d;

}

.service-item:hover{

background:#2d2d2d;

border-color:#d7262b;

transform:translateX(8px);

}

/* =======================================
   CARBON CLEANING
======================================= */

.carbon-cleaning{

padding:90px 0;

background:#111;

}

.carbon-grid{

display:grid;

grid-template-columns:1fr 1fr;

gap:90px;

align-items:center;

}

.carbon-content h2{

font-size:52px;

margin-bottom:30px;

line-height:1.2;

}

.carbon-content p{

font-size:20px;

line-height:1.8;

color:#d0d0d0;

margin-bottom:40px;

}

.carbon-list{

display:grid;

grid-template-columns:repeat(2,1fr);

gap:18px;

margin-bottom:45px;

}

.carbon-list div{

background:#1f1f1f;

padding:18px;

border-radius:10px;

border:1px solid #2d2d2d;

transition:.3s;

}

.carbon-list div:hover{

border-color:#d7262b;

transform:translateX(8px);

}

.carbon-animation{

    display:flex;
    flex-direction:column;
    align-items:center;
    gap:18px;

}

.carbon-machine{

    width:60%;
    max-width:300px;
    height:auto;

    border-radius:18px;

    margin-bottom:35px;

    box-shadow:0 20px 45px rgba(0,0,0,.35);

}

.flow-box{

background:#1f1f1f;

padding:28px;

border-radius:14px;

font-weight:600;

min-width:170px;

text-align:center;

border:1px solid #333;

transition:.3s;

}

.flow-box:hover{

transform:translateY(-6px);

border-color:#d7262b;

}

.arrow{

font-size:34px;

color:#d7262b;

font-weight:700;

}

.success{

background:#d7262b;

}

/* =======================================
   WARUM DUS RÖHRIG
======================================= */

.why-us{

padding:140px 0;

background:#111111;

}

.why-grid{

display:grid;

grid-template-columns:repeat(4,1fr);

gap:30px;

margin-top:70px;

}

.why-card{

background:#1f1f1f;

padding:45px 35px;

border-radius:18px;

text-align:center;

border:1px solid #2b2b2b;

transition:.35s;

}

.why-card:hover{

transform:translateY(-12px);

border-color:#d7262b;

box-shadow:0 20px 45px rgba(0,0,0,.35);

}

.icon{

font-size:48px;

margin-bottom:25px;

}

.why-card h3{

font-size:26px;

margin-bottom:18px;

}

.why-card p{

font-size:17px;

line-height:1.8;

color:#cfcfcf;

}

/* =======================================
   ABLAUF
======================================= */

.process{

padding:140px 0;

background:#181818;

}

.process-grid{

display:grid;

grid-template-columns:repeat(4,1fr);

gap:30px;

margin-top:70px;

}

.process-card{

background:#232323;

padding:45px;

border-radius:18px;

position:relative;

transition:.35s;

border:1px solid #2f2f2f;

}

.process-card:hover{

transform:translateY(-10px);

border-color:#d7262b;

}

.step-number{

font-size:60px;

font-weight:800;

color:#d7262b;

opacity:.25;

margin-bottom:25px;

}

.process-card h3{

font-size:24px;

margin-bottom:20px;

}

.process-card p{

line-height:1.8;

color:#d0d0d0;

}

/* =======================================
   PREISE
======================================= */

.price-note{

    margin-top:12px;
    font-size:15px;
    color:#bfbfbf;
    line-height:1.6;

}

.price-note strong{

    color:#ffffff;
    font-weight:600;

}
.pricing{

padding:140px 0;

background:#111;

}

.pricing-grid{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:35px;

    margin-top:70px;

    align-items:stretch;
}

.price-card{

    background:#1f1f1f;

    border-radius:20px;

    padding:45px;

    border:1px solid #2d2d2d;

    transition:.35s;

    display:flex;

    flex-direction:column;

    height:100%;
}

.price-card:hover{

transform:translateY(-10px);

border-color:#d7262b;

box-shadow:0 25px 50px rgba(0,0,0,.35);

}

.featured{

border:2px solid #d7262b;

}

.price-header{

margin-bottom:35px;

}

.price-header h3{

    font-size:28px;
    line-height:1.3;
    margin-bottom:20px;
}

.price{

display:flex;

align-items:flex-end;

gap:10px;

}

.price span{

font-size:20px;

}

.price strong{

font-size:60px;

font-weight:800;

line-height:1;

color:#d7262b;

}

.price small{

font-size:18px;

margin-bottom:8px;

}

.price-card ul{

list-style:none;

margin-bottom:35px;

}

.price-card li{

padding:12px 0;

border-bottom:1px solid #303030;

color:#d6d6d6;

}

/* =======================================
   FAQ
======================================= */

.faq{

padding:140px 0;

background:#181818;

}

.faq-container{

max-width:950px;

margin:70px auto 0;

}

.faq-item{

background:#232323;

border-radius:16px;

margin-bottom:20px;

overflow:hidden;

border:1px solid #2f2f2f;

}

.faq-question{

width:100%;

padding:28px;

background:none;

border:none;

color:white;

font-size:22px;

font-weight:600;

text-align:left;

cursor:pointer;

}

.faq-answer{

padding:0 28px 28px;

color:#cfcfcf;

line-height:1.8;

}

/* =======================================
   GALERIE
======================================= */

.gallery{

padding:140px 0;

background:#111;

}

.gallery-grid{

display:grid;

grid-template-columns:repeat(2,1fr);

grid-template-rows:repeat(2,300px);

gap:25px;

margin-top:70px;

}

.large{

grid-row:span 1;

}
.gallery-item{

position:relative;

overflow:hidden;

border-radius:20px;

cursor:pointer;

}

.gallery-item img{

width:100%;

height:100%;

object-fit:cover;

transition:.5s;

}

.gallery-item:hover img{

transform:scale(1.08);

}

.gallery-overlay{

position:absolute;

left:0;

bottom:0;

width:100%;

padding:30px;

background:linear-gradient(

transparent,

rgba(0,0,0,.92)

);

}

.gallery-overlay h3{

font-size:28px;

margin-bottom:10px;

}

.gallery-overlay p{

color:#d0d0d0;

}

/* =======================================
   KONTAKT
======================================= */

.contact{

padding:140px 0;

background:#181818;

}

.contact-grid{

display:grid;

grid-template-columns:repeat(4,1fr);

gap:30px;

margin-top:70px;

}

.contact-card{

background:#232323;

border-radius:18px;

padding:45px;

text-align:center;

text-decoration:none;

color:white;

transition:.35s;

border:1px solid #2f2f2f;

}

.contact-card:hover{

transform:translateY(-10px);

border-color:#d7262b;

}

.contact-icon{

font-size:54px;

margin-bottom:25px;

}

.contact-card h3{

margin-bottom:15px;

font-size:24px;

}

.contact-card p{

color:#cfcfcf;

}

.hero{

    min-height:100vh;

    background:
    radial-gradient(circle at right,#7a0d10 0%,transparent 40%),
    linear-gradient(135deg,#0d0d0d,#1b1b1b);

}

.btn-red{

    background:#d7262b;

    transition:.35s;

    box-shadow:0 10px 30px rgba(215,38,43,.35);

}

.btn-red:hover{

    transform:translateY(-4px);

    box-shadow:0 18px 40px rgba(215,38,43,.55);

}

.problem-card,
.why-card,
.price-card,
.contact-card,
.process-card{

    backdrop-filter:blur(12px);

    border-radius:20px;

}

.gallery-item{

overflow:hidden;

}

.gallery-item img{

transition:.45s;

}

.gallery-item:hover img{

transform:scale(1.08);

}

:root{

--bg:#111111;

--card:#1d1d1d;

--red:#d7262b;

--text:#ffffff;

--text-light:#bfbfbf;

}


@media(max-width:992px){

nav{

display:none;

}

}

.hidden{

opacity:0;

transform:translateY(80px);

transition:1s;

}

.show{

opacity:1;

transform:translateY(0);

}

.map iframe{

width:100%;

height:500px;

border:0;

}

header{

position:fixed;

top:0;

left:0;

width:100%;

z-index:1000;

padding:0;

transition:.35s;

}

header.scrolled{

background:rgba(15,15,15,.92);

backdrop-filter:blur(12px);

box-shadow:0 10px 30px rgba(0,0,0,.35);

padding:0;

}

html{

scroll-behavior:smooth;

}

#topBtn{

position:fixed;

right:30px;

bottom:30px;

width:55px;

height:55px;

border:none;

border-radius:50%;

background:#d7262b;

color:white;

font-size:22px;

cursor:pointer;

display:none;

box-shadow:0 10px 25px rgba(215,38,43,.45);

transition:.3s;

}

#topBtn:hover{

transform:translateY(-4px);

}
@media (max-width:1200px){

    .pricing-grid{

        grid-template-columns:repeat(2,1fr);

    }

}

@media (max-width:768px){

/* =======================================
   ALLGEMEIN
======================================= */

html,
body{
    overflow-x:hidden;
}

.container{
    width:92%;
}

/* =======================================
   HEADER
======================================= */

header{
    position:static;
    background:#111;
    padding:10px 0;
}

header .container{
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:12px;
}

.logo img{
    height:46px;
}

nav{
    display:none;
}

.header-buttons{
    display:flex;
    flex-wrap:wrap;
    justify-content:center;
    gap:8px;
}

.telefon,
.whatsapp{
    padding:8px 14px;
    font-size:13px;
}

.social-btn{
    width:38px;
    height:38px;
}

.social-btn i{
    font-size:18px;
}

/* =======================================
   HERO
======================================= */

.hero{
    min-height:auto;
    padding:25px 0 45px;
}

.hero-grid{
    display:grid;
    grid-template-columns:1fr;
    gap:20px;
    text-align:center;
}

.hero-right{
    order:-1;
}

.hero-right img{
    width:100%;
    max-width:230px;
    margin:auto;
}

.subtitle{
    font-size:13px;
    letter-spacing:1px;
}

.hero h1{
    font-size:30px;
    line-height:1.15;
    margin:15px 0;
}

.hero p{
    font-size:15px;
    line-height:1.6;
    max-width:100%;
}

.hero-buttons{
    display:flex;
    flex-direction:column;
    gap:12px;
    margin-top:25px;
}

.btn-red,
.btn-dark{
    width:100%;
    text-align:center;
    padding:14px 18px;
    font-size:15px;
}

.hero-features{
    display:grid;
    grid-template-columns:1fr;
    gap:10px;
    margin-top:25px;
}

.hero-features div{
    justify-content:center;
    font-size:15px;
    line-height:1.5;
}
/* =======================================
   PROBLEMBEREICH
======================================= */

.problems,
.service,
.carbon-cleaning,
.why-us,
.process,
.pricing,
.gallery,
.reviews,
.contact,
.faq{

    padding:65px 0;

}

.section-title{

    margin-bottom:35px;

}

.section-title span{

    font-size:13px;

}

.section-title h2{

    font-size:28px;
    line-height:1.2;
    margin:12px 0;

}

.section-title p{

    font-size:15px;
    line-height:1.6;

}

.problem-grid,
.service-grid,
.carbon-grid,
.why-grid,
.process-grid{

    display:grid;
    grid-template-columns:1fr;
    gap:25px;

}

/* =======================================
   LEISTUNGEN
======================================= */

.service-image{

    text-align:center;

}

.service-image img{

    width:100%;
    max-width:230px;

}

.service h2,
.carbon-content h2{

    font-size:28px;
    line-height:1.2;
    margin-bottom:18px;

}

.service p,
.carbon-content p{

    font-size:15px;
    line-height:1.6;
    margin-bottom:20px;

}

.service-list,
.carbon-list{

    grid-template-columns:1fr;
    gap:10px;
    margin-bottom:25px;

}

.service-item,
.carbon-list div{

    padding:14px;
    font-size:15px;

}

/* =======================================
   HHO
======================================= */

.carbon-animation{

    gap:10px;

}

.carbon-machine{

    width:100%;
    max-width:220px;
    margin-bottom:20px;

}

.flow-box{

    min-width:100%;
    padding:16px;
    font-size:14px;

}

.arrow{

    font-size:24px;

}

/* =======================================
   KARTEN
======================================= */

.problem-card,
.why-card,
.process-card{

    padding:22px;

}

.problem-card h3,
.why-card h3,
.process-card h3{

    font-size:20px;
    margin-bottom:12px;

}

.problem-card p,
.why-card p,
.process-card p{

    font-size:15px;
    line-height:1.6;

}

.icon{

    font-size:34px;
    margin-bottom:18px;

}

.step-number{

    font-size:42px;
    margin-bottom:15px;

}
/* =======================================
   PREISE
======================================= */

.pricing-grid,
.review-grid,
.contact-grid{

    display:grid;
    grid-template-columns:1fr;
    gap:20px;

}

.price-card,
.review-card,
.contact-card{

    padding:22px;

}

.price-header{

    margin-bottom:20px;

}

.price-header h3{

    font-size:22px;
    margin-bottom:10px;

}

.price{

    gap:8px;

}

.price strong{

    font-size:42px;

}

.price span,
.price small{

    font-size:15px;

}

.price-card li{

    font-size:15px;
    padding:10px 0;

}

/* =======================================
   GALERIE
======================================= */

.gallery-grid{

    display:grid;
    grid-template-columns:1fr;
    grid-template-rows:auto;
    gap:15px;

}

.gallery-item{

    height:220px;

}

.gallery-overlay{

    padding:18px;

}

.gallery-overlay h3{

    font-size:20px;

}

.gallery-overlay p{

    font-size:14px;

}

/* =======================================
   BEWERTUNGEN
======================================= */

.review-card p{

    font-size:15px;
    line-height:1.6;

}

.stars{

    font-size:22px;

}

/* =======================================
   KONTAKT
======================================= */

.contact-card{

    text-align:center;

}

.contact-icon{

    font-size:42px;
    margin-bottom:15px;

}

.contact-card h3{

    font-size:20px;

}

.contact-card p{

    font-size:15px;

}

/* =======================================
   FAQ
======================================= */

.faq-question{

    font-size:18px;
    padding:18px;

}

.faq-answer{

    padding:0 18px 18px;
    font-size:15px;

}

/* =======================================
   FOOTER
======================================= */

.footer{

    padding-top:45px;

}

.footer-grid{

    display:grid;
    grid-template-columns:1fr;
    gap:30px;
    text-align:center;

}

.footer-column h3{

    font-size:20px;

}

.footer-column p,
.footer-column li{

    font-size:15px;
    line-height:1.7;

}

.footer-social,
.footer-links{

    justify-content:center;

}

.footer-bottom-content{

    display:flex;
    flex-direction:column;
    gap:15px;

}

footer img{

    width:100px;

}

.map iframe{

    height:260px;

}

}

/* =======================================
   BEWERTUNGEN
======================================= */

.reviews{

padding:140px 0;

background:#111;

}

.review-grid{

display:grid;

grid-template-columns:repeat(3,1fr);

gap:30px;

margin-top:70px;

}

.review-card{

background:#1d1d1d;

padding:40px;

border-radius:20px;

border:1px solid #2e2e2e;

transition:.35s;

}

.review-card:hover{

transform:translateY(-8px);

border-color:#d7262b;

}

.stars{

font-size:26px;

color:#ffc107;

margin-bottom:20px;

}

.review-card p{

line-height:1.8;

color:#d5d5d5;

margin-bottom:20px;

}

.review-button{

text-align:center;

margin-top:60px;

}
.price-card .btn-red{
    margin-top:auto;
}

footer img{
    width:130px;
    height:auto;
}

/* =======================================
   FOOTER
======================================= */

.footer{

    background:#101010;
    border-top:3px solid #d7262b;
    padding:70px 0 0;

}

.footer-grid{

    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:70px;

}

.footer-column h3{

    margin-bottom:22px;
    font-size:24px;

}

.footer-column p,
.footer-column li{

    color:#cfcfcf;
    line-height:1.9;
    font-size:17px;

}

.footer-column ul{

    list-style:none;
    padding:0;

}

.footer-bottom{

    margin-top:60px;
    border-top:1px solid #2a2a2a;
    padding:22px 0;

}

.footer-bottom-content{

    display:flex;
    justify-content:space-between;
    align-items:center;
    flex-wrap:wrap;
    gap:20px;

}

.footer-links{

    display:flex;
    gap:30px;

}

.footer-links a{

    color:#bfbfbf;
    text-decoration:none;
    transition:.3s;

}

.footer-links a:hover{

    color:#d7262b;

}

/* Untertitel */
.footer-subtitle{

    font-size:15px;
    font-weight:400;
    color:#999;
    text-transform:uppercase;
    letter-spacing:2px;
    margin-top:-10px;
    margin-bottom:18px;

}

/* Alle Links im Footer */
.footer-column a,
.footer-social a{

    color:#cfcfcf;
    text-decoration:none;
    transition:.3s;

}

.footer-column a:hover,
.footer-social a:hover{

    color:#d7262b;

}

/* Social Media */
.footer-social{

    display:flex;
    gap:18px;
    margin-top:20px;
    flex-wrap:wrap;

}

.footer-social i{

    font-size:20px;

}
.social-btn{

    width:42px;
    height:42px;

    display:flex;
    align-items:center;
    justify-content:center;

    background:#242424;
    color:#fff;
    border:1px solid #3a3a3a;
    border-radius:50%;

    transition:.3s;
    text-decoration:none;

}

.social-btn:hover{

    background:#d7262b;
    border-color:#d7262b;
    transform:translateY(-2px);

}

.social-btn i{

    font-size:20px;

}

@media(max-width:900px){

    .footer-grid{

        grid-template-columns:1fr;
        gap:40px;
        text-align:center;

    }

    .footer-bottom-content{

        flex-direction:column;

    }

    .footer-social{

        justify-content:center;

    }

    .footer-links{

        justify-content:center;

    }

}

/* ==========================
   Impressum / Datenschutz
========================== */

.legal{
    padding:90px 0;
    min-height:70vh;
}

.legal h1{
    margin-bottom:40px;
}

.legal h2{
    margin-top:35px;
    margin-bottom:15px;
    color:#ffffff;
    font-size:24px;
}

.legal p{
    color:#cfcfcf;
    line-height:1.9;
}

.legal a{
    color:#d7262b;
    text-decoration:none;
}

.legal a:hover{
    text-decoration:underline;
}
/* Ultraschall Preisliste */

.service-prices{

    padding:100px 0;

}

.service-prices h3{

    margin-top:50px;
    margin-bottom:20px;
    color:#fff;

}

.price-table{

    width:100%;
    border-collapse:collapse;
    margin-bottom:40px;

}

.price-table th{

    background:#d7262b;
    color:#fff;
    padding:18px;
    text-align:left;

}

.price-table td{

    padding:16px 18px;
    border-bottom:1px solid #333;
    color:#d8d8d8;

}

.price-table tr:hover{

    background:#202020;

}

.price-extra{

    margin-top:50px;
    padding:30px;
    background:#1b1b1b;
    border-left:5px solid #d7262b;
    border-radius:15px;

}

.price-extra p{

    margin:15px 0;

}
/* Aufklappbare Preisliste */

.service-prices{

    margin:70px 0;

}

.service-prices summary{

    background:#d7262b;
    color:#fff;
    padding:18px 25px;
    font-size:22px;
    font-weight:700;
    border-radius:10px;
    cursor:pointer;
    list-style:none;

}

.service-prices summary::-webkit-details-marker{

    display:none;

}

.service-prices summary::after{

    content:"+";
    float:right;
    font-size:28px;
    transition:.3s;

}

.service-prices[open] summary::after{

    content:"–";

}

.service-content{

    margin-top:25px;
    animation:fadeIn .3s ease;

}

@keyframes fadeIn{

    from{
        opacity:0;
        transform:translateY(-10px);
    }

    to{
        opacity:1;
        transform:translateY(0);
    }

}
/* ===================================
   Handy Querformat
=================================== */

@media (max-width:992px) and (orientation:landscape){

    .container{
        width:96%;
    }

    section{
        padding:60px 0 !important;
    }

    .hero{
        padding-top:70px;
        padding-bottom:20px;
    }

    .hero h1,
    .service h2,
    .carbon-content h2,
    .section-title h2{
        font-size:26px;
        line-height:1.2;
    }

    .hero p,
    .service p,
    .carbon-content p,
    .section-title p{
        font-size:15px;
        line-height:1.6;
    }

    .hero-right img,
    .service-image img,
    .carbon-machine{
        max-width:180px;
    }

    .problem-grid,
    .pricing-grid,
    .why-grid,
    .process-grid,
    .review-grid,
    .contact-grid{
        grid-template-columns:repeat(2,1fr);
        gap:20px;
    }

    .price-card,
    .problem-card,
    .why-card,
    .process-card,
    .review-card,
    .contact-card{
        padding:25px;
    }

    .price-header h3,
    .problem-card h3,
    .why-card h3,
    .process-card h3{
        font-size:22px;
    }

    .price strong{
        font-size:42px;
    }

    .service-list,
    .carbon-list{
        grid-template-columns:repeat(2,1fr);
        gap:12px;
    }


}

.urlaub-banner {
    width: 100%;
    box-sizing: border-box;
    padding: 12px 20px;
    text-align: center;
    background: #f2f2f2;
    color: #111;
    font-size: 15px;
    line-height: 1.5;
    border-bottom: 1px solid #ccc;
    margin-top: 90px;
}

@media (max-width:768px) {
    .urlaub-banner {
        margin-top: 0;
    }
}