:root{--color-primary: #2ecc71;--color-primary-dark: #228b22;--color-secondary: #1abc9c;--color-secondary-dark: #16a085;--color-accent: #e76f51;--color-accent-dark: #d65a4f;--color-light: #f8f8f8;--color-light-dark: #2c3e50;--color-dark: #34495e;--color-dark-light: #ecf0f1;--color-success: #2ecc71;--color-success-dark: #27ae60;--color-error: #e74c3c;--color-error-dark: #c0392b;--color-warning: #f39c12;--color-warning-dark: #e67e22;--color-info: #3498db;--color-info-dark: #2980b9;--color-bg: #f0f0f0;--color-bg-dark: #1a1a1a;--color-text: #333;--color-text-dark: #f0f0f0;--color-border: #ddd;--color-border-dark: #34495e;--color-shadow: rgba(0, 0, 0, .1);--color-shadow-dark: rgba(0, 0, 0, .2);--color-link: #0066cc;--color-link-hover: #004999;--color-link-active: #1abc9c;--color-link-active-dark: #16a085;--color-link-dark: #1abc9c;--color-link-hover-dark: #16a085;--radius: 8px;--transition: .3s ease}body{background-color:var(--color-bg);color:var(--color-text);transition:background-color var(--transition),color var(--transition)}body.dark{background-color:var(--color-bg-dark);color:var(--color-text-dark)}.layout{display:flex;flex-direction:column;min-height:100%}.page-content{flex:1}.site-header{background-color:#f8f8f8;padding:.5rem 1rem;box-shadow:0 2px 8px #0000000d;position:sticky;top:0;z-index:100}body.dark .site-header{background-color:#1e1e1e}.site-header nav{display:flex;justify-content:space-between;align-items:center;max-width:1200px;margin:0 auto;position:relative}.site-header nav a.active{color:#1c7d3f;text-decoration:underline}body.dark .site-header nav a.active{color:#1abc9c}.left-section,.right-section{display:flex;align-items:center;gap:1rem}.logo{display:flex;align-items:center;font-size:1.5rem;font-weight:700;color:var(--color-primary);transition:color var(--transition)}.logo a{text-decoration:none;color:inherit;display:flex;align-items:center}body.dark .logo a{color:var(--color-secondary)}.logo a:hover{color:var(--color-primary-dark);text-decoration:none;transition:color var(--transition)}body.dark .logo a:hover{color:var(--color-secondary-dark);text-decoration:none;transition:color var(--transition)}.logo a:focus{outline:none;box-shadow:0 0 0 2px var(--color-primary)}body.dark .logo a:focus{box-shadow:0 0 0 2px var(--color-secondary);transition:box-shadow var(--transition)}.logo-image{display:flex;align-items:center;justify-content:center;height:70px;border-radius:50%;overflow:hidden;margin-right:.5rem}body.dark .logo-image{background-color:var(--color-bg)}.logo-image img{width:100%;height:100%;object-fit:cover;border-radius:50%}.language-toggle{background-color:transparent;border:none;color:var(--color-primary);font-size:1.1rem;cursor:pointer;transition:color var(--transition);padding:.5rem;border-radius:var(--radius)}body.dark .language-toggle{color:var(--color-text-dark);background-color:var(--color-bg-dark);border:1px solid var(--color-border-dark)}.language-toggle:hover{color:var(--color-primary)}body.dark .language-toggle:hover{color:var(--color-secondary)}.nav-links{display:flex;align-items:center;gap:1rem;transition:all .3s ease}.nav-links a{font-weight:500;padding:.5rem 1rem;border-radius:var(--radius);transition:background-color .2s}.nav-links a:hover{background-color:var(--color-primary);color:#fff}.nav-links a.active{color:var(--color-primary);text-decoration:underline}body.dark .nav-links a.active{color:var(--color-secondary)}.menu-right{display:flex;align-items:center;gap:1rem}.menu-toggle{display:none;font-size:1.5rem;background:none;border:none;color:inherit;cursor:pointer}.theme-toggle{background-color:var(--color-primary);color:#fff;border-radius:var(--radius);padding:.5rem 1rem;font-size:1.1rem;transition:background-color var(--transition)}.theme-toggle:hover{background-color:var(--color-primary-dark)}body.dark .theme-toggle{background-color:var(--color-secondary);color:var(--color-text-dark)}body.dark .theme-toggle:hover{background-color:var(--color-secondary-dark)}.hero{position:relative;background:url(/low-angle-modern-house-roof-scaled.webp) no-repeat center center fixed;background-size:cover;width:100%;height:100vh;display:flex;justify-content:center;align-items:center;color:#fff}.hero:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-color:#0009}.hero-content{position:relative;text-shadow:2px 2px 4px rgba(0,0,0,.5);text-align:center;padding:min(2rem,5vw);z-index:1}.hero-content h1{font-size:clamp(2rem,5vw,3.5rem);margin-bottom:1rem}.hero-content p{font-size:clamp(1rem,4vw,1.2rem);margin-bottom:2rem}.hero-buttons{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:1rem}.hero-buttons a{background-color:var(--color-primary);color:#fff;padding:min(.8rem,2vw) min(1.5rem,4vw);font-size:clamp(.9rem,3vw,1.1rem);box-shadow:0 4px 8px var(--color-shadow);border:none;border-radius:var(--radius);text-decoration:none;transition:background-color var(--transition)}.hero-buttons a:hover{background-color:var(--color-primary-dark)}body.dark .hero{background:url(/low-angle-modern-house-roof-scaled.webp) no-repeat center center fixed;background-size:cover;color:var(--color-text-dark)}body.dark .hero:before{background-color:#000c}section.estimate{padding:4rem 1rem;background-color:var(--color-bg);color:var(--color-text);min-height:100vh}body.dark section.estimate{background-color:var(--color-bg-dark);color:var(--color-text-dark)}.calculator{max-width:600px;margin:4rem auto;padding:min(2rem,5vw);border:1px solid var(--color-border);border-radius:var(--radius);background-color:#f8f8f8;box-shadow:0 8px 16px var(--color-shadow)}body.dark .calculator{background-color:#2c2c2c;border:1px solid var(--color-border-dark);box-shadow:0 8px 16px var(--color-shadow-dark)}.calculator h1{color:var(--color-primary);font-size:2rem;margin-bottom:1rem}.calculator p{font-size:1.1rem;margin-bottom:1.5rem;color:var(--color-text)}body.dark .calculator p{color:#ccc}.calculator label{display:block;margin-bottom:.5rem;font-weight:700}.calculator input,.calculator select{width:100%;font-size:1rem;padding:.6rem;margin-top:.3rem;margin-bottom:1rem;background-color:#fff;color:#333;border:1px solid #ccc;border-radius:var(--radius);box-shadow:0 2px 4px var(--color-shadow)}.calculator select{cursor:pointer}body.dark .calculator input,body.dark .calculator select{background-color:#1e1e1e;color:var(--color-text-dark);border-color:#444}.note a{color:var(--color-link);text-decoration:none;transition:color var(--transition)}.note a:hover{color:var(--color-link-hover)}body.dark .note a{color:var(--color-link-dark)}body.dark .note a:hover{color:var(--color-link-hover-dark)}.estimate-button{width:100%;background-color:var(--color-accent);color:#fff;border-radius:var(--radius);padding:.5rem 1rem;font-size:1rem;transition:background-color var(--transition)}.estimate-button:hover,body.dark .estimate-button{background-color:var(--color-accent-dark)}body.dark .estimate-button:hover{background-color:var(--color-accent)}.result{margin-top:2rem;background-color:#e8f5e9;padding:1rem;border-left:4px solid var(--color-secondary);border-radius:var(--radius)}body.dark .result{background-color:#2c3e50;border-left-color:var(--color-secondary)}.explanation{white-space:pre-line;margin-top:1rem;font-family:Courier New,monospace;font-size:1rem;background-color:#e6f5ea;padding:1rem;border-left:4px solid var(--color-accent);border-radius:var(--radius)}body.dark .explanation{background-color:#1e3b32;border-left-color:var(--color-accent);color:#eee}.about{padding:4rem 2rem;background-color:#f9f9f9}body.dark .about{background-color:#2c2c2c}.about-content{max-width:800px;margin:0 auto;padding:2rem;background-color:#fff;border-radius:var(--radius);box-shadow:0 4px 8px var(--color-shadow)}body.dark .about-content{background-color:#1e1e1e;box-shadow:0 4px 8px var(--color-shadow-dark)}.about h1{color:var(--color-primary);font-size:2.5rem;margin-bottom:1rem}.about p{font-size:1.2rem;line-height:1.6;margin-bottom:1.5rem;color:#555}body.dark .about p{color:#ccc}.contact{padding:4rem 1rem;background-color:var(--color-bg);color:var(--color-text);min-height:100vh}body.dark .contact{background-color:#2c2c2c;color:var(--color-text-dark)}.contact-form-container{max-width:600px;margin:0 auto;background-color:#fff;padding:2rem;border-radius:var(--radius);box-shadow:0 4px 8px var(--color-shadow)}body.dark .contact-form-container{background-color:#1e1e1e;box-shadow:0 4px 8px var(--color-shadow-dark)}.contact-form-container h1{font-size:2rem;margin-bottom:1rem;color:var(--color-primary)}.contact-form-container p{font-size:1.1rem;margin-bottom:1.5rem;color:var(--color-text)}body.dark .contact-form-container p{color:var(--color-text-dark)}.contact-form-container label{display:block;margin-bottom:.5rem;font-weight:700}.contact-form-container input,.contact-form-container textarea{width:100%;margin-top:.3rem;margin-bottom:1rem;padding:.75rem;border:1px solid var(--color-border);border-radius:var(--radius);font-size:1rem;background-color:#f9f9f9}body.dark .contact-form-container input,body.dark .contact-form-container textarea{background-color:#2c2c2c;color:var(--color-text-dark);border:1px solid var(--color-border-dark)}.success-message{background-color:#e8f5e9;border-left:4px solid var(--color-success);padding:1rem;border-radius:var(--radius);color:#2c3e50;font-weight:700;margin-top:2rem}body.dark .success-message{background-color:#2c3e50;color:#ecf0f1;border-left-color:var(--color-success-dark)}.site-footer{text-align:center;padding:2rem;background-color:#f8f8f8;color:var(--color-text);font-size:.9rem}body.dark .site-footer{background-color:#1e1e1e;color:var(--color-text-dark)}.site-footer a{color:var(--color-link);text-decoration:none;transition:color var(--transition)}.site-footer a:hover{color:var(--color-link-hover)}body.dark .site-footer a{color:var(--color-link-dark)}body.dark .site-footer a:hover{color:var(--color-link-hover-dark)}@media (max-width: 768px){.left-section{display:flex}.menu-toggle{display:inline-flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border-radius:50%;transition:transform .2s ease}.nav-links{position:absolute;top:3.5rem;left:1rem;right:1rem;flex-direction:column;align-items:flex-end;background-color:var(--color-bg);padding:1rem;border-radius:var(--radius);box-shadow:0 4px 12px #0000001a;opacity:0;pointer-events:none;transform:translateY(-10px);min-width:200px}body.dark .nav-links{background-color:var(--color-bg-dark);box-shadow:0 4px 12px var(--color-shadow-dark)}.nav-links.open{opacity:1;pointer-events:auto;transform:translateY(0);animation:slideDown .3s ease-out forwards}.nav-links a{width:100%;text-align:center;padding:.5rem 0}.menu-right{width:100%;justify-content:space-between}.theme-toggle{font-size:1.25rem}}@media screen and (max-width: 480px){.site-header{padding:.5rem 1rem}.logo{font-size:1.1rem}.nav-links a{font-size:.9rem;padding:.5rem}.theme-toggle{font-size:1rem;padding:.4rem .8rem}.calculator{max-width:90%;margin:2rem auto;padding:1.5rem}.calculator h1{font-size:1.5rem}.calculator input,.calculator select{font-size:.9rem;padding:.5rem}.estimate-button{font-size:.9rem;padding:.4rem .8rem}.result,.explanation{font-size:.9rem;padding:.8rem}.about h1{font-size:2rem}.about p{font-size:1rem}.site-footer{font-size:.8rem}.site-footer a{font-size:.9rem}}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;font-size:16px;line-height:1.5;font-weight:400;letter-spacing:.01em;color-scheme:light dark;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{min-width:320px;min-height:100vh}a{text-decoration:none;color:inherit}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-webkit-appearance:textfield;appearance:textfield;-moz-appearance:textfield}button{font-family:inherit;cursor:pointer;border:none;background:none}img,svg,video{max-width:100%;height:auto}
