:root {
    --color-dark: #0c131a;
    --color-primary: #1F435B;
    --color-bg: #e8e8e8;
    --color-white: #fff;
    --color-text: #333;
    --color-gray: #ccc;
    --color-border: #e0e0e0;
    --shadow-sm: 0 2px 8px rgba(0,0,0,0.08);
    --shadow-md: 0 4px 16px rgba(0,0,0,0.12);
    --radius: 12px;
    --transition: 0.3s ease;
    --font-display: 'Work Sans', Arial, sans-serif;
    --font-heading: 'Work Sans', Arial, sans-serif;
    --font-body: Arial, Helvetica, sans-serif;
}
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{font-family:var(--font-body);font-size:16px;line-height:1.6;color:var(--color-text);background:var(--color-bg);min-height:100vh;display:flex;flex-direction:column;}
a{text-decoration:none;color:inherit;}
img{max-width:100%;height:auto;display:block;}
ul{list-style:none;}

.skip-link{position:absolute;top:-100%;left:50%;transform:translateX(-50%);background:var(--color-primary);color:#fff;padding:8px 16px;z-index:1000;border-radius:0 0 8px 8px;}
.skip-link:focus{top:0;}

.header{background:var(--color-white);position:sticky;top:0;z-index:100;box-shadow:var(--shadow-sm);transition:box-shadow var(--transition);}
.header.scrolled{box-shadow:var(--shadow-md);}
.header-inner{max-width:960px;margin:0 auto;padding:12px 20px;display:flex;align-items:center;justify-content:space-between;gap:20px;}
.logo{flex-shrink:0;max-width:280px;}
.logo img{width:100%;height:auto;}
.header-info{text-align:right;flex-shrink:0;}
.header-years{font-family:var(--font-display);font-weight:700;font-size:1.5rem;color:var(--color-primary);line-height:1.2;}
.header-years .locality{white-space:nowrap;}

.hero{background:var(--color-dark);color:var(--color-white);text-align:center;padding:12px 5%;font-family:var(--font-heading);font-weight:500;font-size:0.75rem;line-height:1.2;letter-spacing:0.02em;}

.services{max-width:960px;margin:30px auto;padding:0 20px;display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
.service-card{background:var(--color-white);border-radius:var(--radius);padding:24px;box-shadow:var(--shadow-sm);transition:transform var(--transition),box-shadow var(--transition);}
.service-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md);}
.service-card h4{font-family:var(--font-heading);font-weight:600;font-size:1.2rem;line-height:1.3;margin-bottom:16px;color:var(--color-dark);text-align:left;}
.service-card ul li{padding:9px 0 9px 24px;position:relative;font-size:0.95rem;border-bottom:1px solid var(--color-border);}
.service-card ul li:last-child{border-bottom:none;}
.service-card ul li::before{content:'—';position:absolute;left:0;top:50%;transform:translateY(-50%);color:var(--color-primary);font-weight:500;font-size:0.9rem;}

.info-section{max-width:960px;margin:0 auto 30px;padding:0 20px;display:grid;grid-template-columns:1fr 1fr;gap:20px;}
.info-card{background:var(--color-white);border-radius:var(--radius);padding:24px;box-shadow:var(--shadow-sm);text-align:center;}
.info-card h4{font-family:var(--font-heading);font-weight:600;font-size:1.2rem;margin-bottom:12px;color:var(--color-dark);}
.info-hours{background:var(--color-gray);color:var(--color-text);}
.info-phone{background:var(--color-primary);color:var(--color-gray);border-top:2px solid var(--color-dark);border-bottom:3px solid var(--color-dark);}
.info-phone h4{color:var(--color-white);}
.info-phone .phone-number{display:block;font-family:var(--font-display);font-weight:700;font-size:2.2rem;line-height:1.1;color:var(--color-white);margin-top:8px;letter-spacing:-0.02em;}
.info-phone .phone-link{color:var(--color-white);}
.info-phone .phone-link:hover{text-decoration:underline;}

.map-section{max-width:960px;margin:0 auto 30px;padding:0 20px;}
.map-container{border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-sm);}
.map-container iframe{width:100%;height:300px;border:0;display:block;}

.footer{margin-top:auto;background:var(--color-dark);color:var(--color-gray);text-align:center;padding:20px;font-size:0.85rem;line-height:1.6;}
.footer a{color:var(--color-white);text-decoration:underline;}
.footer a:hover{text-decoration:none;}

.whatsapp-btn{position:fixed;bottom:24px;right:24px;width:56px;height:56px;background:#25D366;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px rgba(37,211,102,0.4);transition:transform var(--transition),box-shadow var(--transition);z-index:200;}
.whatsapp-btn:hover{transform:scale(1.1);box-shadow:0 6px 20px rgba(37,211,102,0.5);}
.whatsapp-btn svg{width:28px;height:28px;fill:#fff;}

@media (max-width: 767px) {
.header-inner{padding:12px 16px;}
.header-years{font-size:0.95rem;}
.header-years .locality{display:block;}
.logo{max-width:170px;}
.services{grid-template-columns:1fr;gap:16px;margin:20px auto;}
.info-section{grid-template-columns:1fr;gap:16px;}
.hero{font-size:0.7rem;padding:14px 5%;}
}
@media (max-width: 480px) {
.header-years{font-size:0.85rem;}
.info-phone .phone-number{font-size:1.6rem;}
.service-card{padding:16px;}
.whatsapp-btn{width:48px;height:48px;bottom:16px;right:16px;}
.whatsapp-btn svg{width:24px;height:24px;}
.hero{font-size:0.55rem;padding:10px 5%;}
.services{margin:16px auto;}
}
