/* Reset and Base Styles */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;font-size:16px}
body{font-family:ui-sans-serif,-apple-system,"Segoe UI",Roboto,Inter,"Helvetica Neue",Arial,sans-serif;line-height:1.6;color:#1f2937;background:#ffffff}
img{max-width:100%;height:auto;display:block}
a{color:#2563eb;text-decoration:none}
a:hover,a:focus{color:#1d4ed8;text-decoration:underline}
a:focus{outline:2px solid #3b82f6;outline-offset:2px}
button:focus,input:focus,select:focus,textarea:focus{outline:2px solid #3b82f6;outline-offset:2px}

/* Skip Link */
.skip-link{position:absolute;top:-100px;left:0;background:#1f2937;color:white;padding:8px 16px;text-decoration:none;z-index:1000}
.skip-link:focus{top:0}

/* Layout */
.container{max-width:1200px;margin:0 auto;padding:0 20px}

/* Header */
.header{background:rgba(255,255,255,0.95);backdrop-filter:blur(8px);position:fixed;top:0;left:0;right:0;z-index:100;border-bottom:1px solid #e5e7eb}
.nav-container{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;max-width:1200px;margin:0 auto}
.nav-brand{display:flex;align-items:center;gap:8px}
.nav-brand a{display:flex;align-items:center;gap:8px;text-decoration:none;color:inherit}
.logo{width:32px;height:auto}
.brand-text{font-weight:700;font-size:18px;color:#1f2937}
.nav-menu{display:flex;list-style:none;gap:32px;margin:0}
.nav-menu a{font-weight:500;color:#4b5563;text-decoration:none;transition:color 0.2s}
.nav-menu a:hover{color:#1f2937}

/* Hero Section */
.hero{background:linear-gradient(135deg,#f3f4f6 0%,#e5e7eb 100%);padding:120px 20px 80px;display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;max-width:1200px;margin:0 auto}
.hero h1{font-size:clamp(32px,4vw,48px);font-weight:800;line-height:1.2;color:#111827;margin-bottom:20px}
.hero-subtitle{font-size:20px;color:#4b5563;margin-bottom:32px;line-height:1.5}
.hero-buttons{display:flex;gap:16px;flex-wrap:wrap}
.hero-image{position:relative}
.hero-image img{border-radius:12px;box-shadow:0 20px 25px -5px rgba(0,0,0,0.1)}

/* Buttons */
.btn{display:inline-flex;align-items:center;padding:12px 24px;border-radius:8px;font-weight:600;font-size:16px;text-decoration:none;border:none;cursor:pointer;transition:all 0.2s;text-align:center;justify-content:center}
.btn-primary{background:#2563eb;color:white}
.btn-primary:hover{background:#1d4ed8;transform:translateY(-1px)}
.btn-secondary{background:white;color:#2563eb;border:2px solid #2563eb}
.btn-secondary:hover{background:#2563eb;color:white;transform:translateY(-1px)}
.btn-small{padding:8px 16px;font-size:14px}
.btn-full{width:100%}

/* Features Section */
.features{background:#f9fafb;padding:80px 20px}
.features h2{text-align:center;font-size:36px;font-weight:800;color:#111827;margin-bottom:60px}
.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:32px;max-width:1200px;margin:0 auto}
.feature-card{background:white;padding:32px;border-radius:12px;box-shadow:0 4px 6px -1px rgba(0,0,0,0.1);transition:all 0.3s}
.feature-card:hover{transform:translateY(-4px);box-shadow:0 20px 25px -5px rgba(0,0,0,0.1)}
.feature-card img{border-radius:8px;margin-bottom:20px}
.feature-card h3{font-size:22px;font-weight:700;color:#111827;margin-bottom:12px}
.feature-card p{color:#6b7280;margin-bottom:16px;line-height:1.6}
.feature-link{color:#2563eb;font-weight:600;text-decoration:none}
.feature-link:hover{color:#1d4ed8}

/* Calculator Section */
.calculator-section{padding:80px 20px;background:white}
.calculator-section h2{text-align:center;font-size:36px;font-weight:800;color:#111827;margin-bottom:60px}
.calculator-container{display:grid;grid-template-columns:1fr 1fr;gap:60px;max-width:1000px;margin:0 auto;align-items:start}
.calculator-form{background:#f9fafb;padding:40px;border-radius:12px}
.input-group{margin-bottom:24px}
.input-group label{display:block;font-weight:600;color:#374151;margin-bottom:8px}
.input-group input,.input-group select{width:100%;padding:12px;border:1px solid #d1d5db;border-radius:6px;font-size:16px}
.input-group input:focus,.input-group select:focus{border-color:#3b82f6}
.calculator-result{margin-top:24px;padding:20px;background:white;border-radius:8px;border-left:4px solid #10b981;display:none}
.calculator-info h3{font-size:24px;font-weight:700;color:#111827;margin-bottom:16px}
.calculator-info p{color:#6b7280;margin-bottom:16px;line-height:1.6}
.disclaimer{font-size:14px;color:#9ca3af;font-style:italic}

/* Testimonials */
.testimonials{background:#1f2937;color:white;padding:80px 20px}
.testimonials h2{text-align:center;font-size:36px;font-weight:800;margin-bottom:60px}
.testimonials-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:40px;max-width:1000px;margin:0 auto}
.testimonial{text-align:center}
.testimonial img{margin:0 auto 20px}
.testimonial blockquote{font-size:18px;line-height:1.6;margin-bottom:16px}
.testimonial cite{color:#9ca3af;font-size:14px;font-style:normal}

/* FAQ */
.faq{padding:80px 20px;background:#f9fafb}
.faq h2{text-align:center;font-size:36px;font-weight:800;color:#111827;margin-bottom:60px}
.faq-list{max-width:800px;margin:0 auto}
.faq-item{background:white;padding:32px;border-radius:12px;margin-bottom:20px;box-shadow:0 2px 4px rgba(0,0,0,0.1)}
.faq-item h3{font-size:20px;font-weight:700;color:#111827;margin-bottom:12px}
.faq-item p{color:#6b7280;line-height:1.6}

/* Download Section */
.download-section{padding:80px 20px;background:linear-gradient(135deg,#2563eb 0%,#1d4ed8 100%);color:white}
.download-section h2{text-align:center;font-size:36px;font-weight:800;margin-bottom:60px}
.download-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:40px;max-width:800px;margin:0 auto}
.download-card{background:rgba(255,255,255,0.1);backdrop-filter:blur(8px);padding:40px;border-radius:12px;text-align:center}
.download-card h3{font-size:24px;font-weight:700;margin-bottom:16px}
.download-card p{margin-bottom:24px;opacity:0.9}
.download-card .btn{margin:0 auto}

/* Contact */
.contact{padding:80px 20px;background:white}
.contact h2{text-align:center;font-size:36px;font-weight:800;color:#111827;margin-bottom:60px}
.contact-content{display:grid;grid-template-columns:1fr 1fr;gap:60px;max-width:1000px;margin:0 auto}
.contact-info h3{font-size:24px;font-weight:700;color:#111827;margin-bottom:16px}
.contact-info p{color:#6b7280;margin-bottom:24px;line-height:1.6}
.contact-info ul{list-style:none}
.contact-info li{color:#10b981;margin-bottom:8px;font-weight:500}
.contact-form{background:#f9fafb;padding:40px;border-radius:12px}
.form-group{margin-bottom:24px}
.form-group label{display:block;font-weight:600;color:#374151;margin-bottom:8px}
.form-group input,.form-group select,.form-group textarea{width:100%;padding:12px;border:1px solid #d1d5db;border-radius:6px;font-size:16px;font-family:inherit}
.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#3b82f6}
.form-privacy{font-size:14px;color:#6b7280;margin-top:16px;line-height:1.5}
.form-privacy a{color:#2563eb}

/* Footer */
.footer{background:#111827;color:#d1d5db;padding:60px 20px 20px}
.footer-content{display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px;margin-bottom:40px;max-width:1200px;margin:0 auto}
.footer-brand{max-width:300px}
.footer-brand .logo{width:32px;margin-bottom:16px}
.footer-brand p{color:#9ca3af;line-height:1.6}
.footer-links h4,.footer-contact h4{color:white;font-weight:700;margin-bottom:16px}
.footer-links ul,.footer-contact ul{list-style:none}
.footer-links li,.footer-contact li{margin-bottom:8px}
.footer-links a,.footer-contact a{color:#d1d5db;text-decoration:none}
.footer-links a:hover,.footer-contact a:hover{color:white}
.footer-bottom{text-align:center;padding-top:20px;border-top:1px solid #374151;color:#9ca3af}

/* Cookie Notice */
.cookie-notice{position:fixed;bottom:0;left:0;right:0;background:#1f2937;color:white;padding:16px 20px;display:flex;align-items:center;justify-content:space-between;z-index:200;box-shadow:0 -4px 6px rgba(0,0,0,0.1)}
.cookie-notice p{margin:0;flex:1;margin-right:16px}
.cookie-notice a{color:#60a5fa}
.cookie-notice.hidden{display:none}

/* Legal Pages */
.legal-page{padding:120px 20px 80px;min-height:100vh}
.legal-page .container{max-width:800px}
.legal-page h1{font-size:36px;font-weight:800;color:#111827;margin-bottom:8px}
.last-updated{color:#6b7280;margin-bottom:40px}
.legal-page section{margin-bottom:40px}
.legal-page h2{font-size:24px;font-weight:700;color:#111827;margin-bottom:16px}
.legal-page p{color:#4b5563;margin-bottom:16px;line-height:1.6}
.legal-page ul,.legal-page ol{margin:16px 0;padding-left:24px}
.legal-page li{color:#4b5563;margin-bottom:8px}
.cookie-table{width:100%;border-collapse:collapse;margin:20px 0}
.cookie-table th,.cookie-table td{border:1px solid #d1d5db;padding:12px;text-align:left}
.cookie-table th{background:#f3f4f6;font-weight:600}

/* Responsive Design */
@media (max-width: 768px) {
    .nav-menu{display:none}
    .hero{grid-template-columns:1fr;text-align:center;gap:40px;padding:100px 20px 60px}
    .hero-image{order:-1}
    .features-grid{grid-template-columns:1fr}
    .calculator-container{grid-template-columns:1fr;gap:40px}
    .contact-content{grid-template-columns:1fr;gap:40px}
    .footer-content{grid-template-columns:1fr;text-align:center}
    .cookie-notice{flex-direction:column;text-align:center;gap:12px}
    .cookie-notice p{margin-right:0}
    .testimonials-grid{grid-template-columns:1fr}
    .download-grid{grid-template-columns:1fr}
}

@media (prefers-reduced-motion: reduce) {
    *,*::before,*::after{animation-duration:0.01ms !important;animation-iteration-count:1 !important;transition-duration:0.01ms !important;scroll-behavior:auto !important}
}