/* ===================================================
   GERMAN PEST SERVICE
   Premium Theme v2.0
=================================================== */

:root{
    --gps-green:#14883A;
    --gps-green-dark:#0D5E29;
    --gps-red:#D71920;
    --gps-anthracite:#444B57;
    --gps-text:#2E3135;
    --gps-white:#FFFFFF;
    --gps-bg:#F7F9F8;
    --gps-border:#E6ECE8;

    --shadow-sm:0 8px 18px rgba(0,0,0,.06);
    --shadow-md:0 15px 35px rgba(0,0,0,.10);
    --shadow-lg:0 25px 60px rgba(0,0,0,.15);

    --radius:18px;
    --transition:.35s ease;
}

*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
    font-family:Montserrat,sans-serif;
    background:var(--gps-bg);
    color:var(--gps-text);
    line-height:1.7;
}
img{display:block;max-width:100%;}
a{text-decoration:none;color:inherit;}
.container{max-width:1280px;margin:auto;padding:0 24px;}

header{
    position:sticky;
    top:0;
    z-index:9999;
    background:rgba(255,255,255,.96);
    backdrop-filter:blur(10px);
    box-shadow:var(--shadow-sm);
}
.header-inner{
    min-height:92px;
    display:flex;
    justify-content:space-between;
    align-items:center;
}
.logo{height:72px;}
.brand{font-size:1.35rem;font-weight:800;color:var(--gps-anthracite);}
.tagline{color:#68707b;}

.lang-switch{display:flex;gap:10px;}
.lang-switch button{
    border:none;
    background:#eef3ef;
    color:var(--gps-anthracite);
    padding:10px 16px;
    border-radius:12px;
    cursor:pointer;
    transition:var(--transition);
}
.lang-switch button:hover{
    background:var(--gps-green);
    color:#fff;
}

.hero{
    min-height:760px;
    display:flex;
    align-items:center;
    background:
    linear-gradient(rgba(16,54,33,.72),rgba(16,54,33,.78)),
    url(hero-image.png) center/cover no-repeat;
}
.hero-content{max-width:720px;color:#fff;}
.hero h1{
    font-size:4.2rem;
    line-height:1.08;
    margin-bottom:24px;
}
.hero p{
    font-size:1.25rem;
    opacity:.95;
    margin-bottom:35px;
}
.hero-buttons{display:flex;gap:16px;flex-wrap:wrap;}
.cta-btn,.whatsapp-btn{
    display:inline-block;
    padding:17px 34px;
    border-radius:14px;
    font-weight:700;
    transition:var(--transition);
}
.cta-btn{
    background:var(--gps-red);
    color:#fff;
}
.whatsapp-btn{
    background:#25D366;
    color:#fff;
}
.cta-btn:hover,.whatsapp-btn:hover{
    transform:translateY(-4px);
    box-shadow:var(--shadow-lg);
}

section{padding:100px 0;}
section h2{
    text-align:center;
    font-size:2.6rem;
    color:var(--gps-anthracite);
    margin-bottom:18px;
}

/* SERVICES */

.services-section{
    background:linear-gradient(to bottom,#f8faf9,#eef5f1);
}
.services-subtitle{
    max-width:760px;
    margin:0 auto 60px;
    text-align:center;
    color:#67717c;
    font-size:1.08rem;
}
.services-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(320px,1fr));
    gap:34px;
}
.service-card{
    background:#fff;
    border-radius:22px;
    overflow:hidden;
    box-shadow:var(--shadow-sm);
    transition:var(--transition);
    border:1px solid var(--gps-border);
}
.service-card:hover{
    transform:translateY(-10px);
    box-shadow:var(--shadow-lg);
}
.service-image{
    width:100%;
    height:245px;
    object-fit:cover;
    transition:.6s;
}
.service-card:hover .service-image{
    transform:scale(1.06);
}
.service-content{
    padding:28px;
}
.service-content h3{
    color:var(--gps-anthracite);
    margin-bottom:14px;
    font-size:1.4rem;
}
.service-content p{
    color:#69737c;
}

/* WHY US */

.why-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
    gap:28px;
}
.why-card{
    background:#fff;
    border-radius:20px;
    padding:35px;
    border-top:5px solid var(--gps-green);
    box-shadow:var(--shadow-sm);
    transition:var(--transition);
}
.why-card:hover{
    transform:translateY(-8px);
    box-shadow:var(--shadow-md);
}
.why-card h3{
    color:var(--gps-anthracite);
    margin-bottom:14px;
}

/* BOOKING */

.booking-card{
    background:#fff;
    padding:42px;
    border-radius:24px;
    box-shadow:var(--shadow-md);
}
.form-row{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:20px;
}
input,select,textarea{
    width:100%;
    padding:16px;
    border:2px solid #dfe6e2;
    border-radius:14px;
    font-size:1rem;
    transition:var(--transition);
    margin-bottom:18px;
}
input:focus,select:focus,textarea:focus{
    outline:none;
    border-color:var(--gps-green);
    box-shadow:0 0 0 4px rgba(20,136,58,.12);
}
textarea{min-height:170px;resize:vertical;}
#submitBtn{
    width:100%;
    padding:18px;
    border:none;
    border-radius:14px;
    background:linear-gradient(90deg,var(--gps-green),var(--gps-green-dark));
    color:#fff;
    font-weight:700;
    cursor:pointer;
    transition:var(--transition);
}
#submitBtn:hover{transform:translateY(-3px);}

.stats-section{
    background:linear-gradient(135deg,var(--gps-anthracite),var(--gps-green-dark));
    color:#fff;
}
.stats-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(200px,1fr));
    gap:30px;
    text-align:center;
}
.stats-grid h3{font-size:3rem;}

footer{
    background:#2f353d;
    color:#fff;
    text-align:center;
    padding:70px 20px;
}
.footer-logo{height:95px;margin:0 auto 25px;}

.whatsapp-float{
    position:fixed;
    right:24px;
    bottom:24px;
    background:#25D366;
    color:#fff;
    padding:15px 22px;
    border-radius:50px;
    box-shadow:var(--shadow-lg);
    font-weight:700;
}

body.rtl{direction:rtl;text-align:right;}

@media(max-width:900px){
.hero h1{font-size:3rem;}
.form-row{grid-template-columns:1fr;}
}

@media(max-width:768px){
.header-inner{flex-direction:column;padding:15px 0;}
.hero{
min-height:560px;
text-align:center;
}
.hero h1{font-size:2.3rem;}
.hero-buttons{justify-content:center;}
.services-grid,.why-grid,.stats-grid{
grid-template-columns:1fr;
}
.booking-card{padding:28px;}
.logo{height:58px;}
}
/* ==========================
   DATE INPUT FIX
========================== */

input[type="date"]{

    width:100%;

    height:58px;

    padding-left:16px;

    padding-right:16px;

    padding-top:0;

    padding-bottom:0;

    border:2px solid #dfe6e2;

    border-radius:14px;

    background:#fff;

    color:#555;

    font-size:16px;

    font-family:inherit;

    line-height:normal;

    -webkit-appearance:auto;

    appearance:auto;

}