body{margin:0;padding:0;min-width:320px;width:100%}#root{width:100%;min-height:100vh}:root{--primary-blue: #1E3A8A;--accent-orange: #F97316;--light-gray: #F3F4F6;--dark-gray: #1F2937;--white: #FFFFFF}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Open Sans,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:var(--dark-gray);line-height:1.6;overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:Montserrat,sans-serif;font-weight:700;line-height:1.2}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInFromLeft{0%{opacity:0;transform:translate(-50px)}to{opacity:1;transform:translate(0)}}@keyframes slideInFromRight{0%{opacity:0;transform:translate(50px)}to{opacity:1;transform:translate(0)}}.fade-in-up{animation:fadeInUp .8s ease-out forwards}.slide-in-left{animation:slideInFromLeft .8s ease-out forwards}.slide-in-right{animation:slideInFromRight .8s ease-out forwards}.header{position:fixed;top:0;width:100%;background:linear-gradient(135deg,#1a1a1a,#2d2d2d);box-shadow:0 2px 20px #0000004d;z-index:1000;transition:all .3s ease}.header-container{max-width:1400px;margin:0 auto;padding:1rem 2rem;display:flex;justify-content:space-between;align-items:center}.nav-menu{display:flex;gap:2.5rem;align-items:center;list-style:none}.nav-menu a{text-decoration:none;color:#d1d5db;font-weight:600;font-size:1rem;transition:color .3s;position:relative}.nav-menu a:after{content:"";position:absolute;bottom:-5px;left:0;width:0;height:2px;background:gold;transition:width .3s}.nav-menu a:hover{color:gold}.nav-menu a:hover:after{width:100%}.cta-button{background:linear-gradient(135deg,var(--accent-orange),#EA580C);color:#fff;padding:.75rem 2rem;border-radius:50px;text-decoration:none;font-weight:700;transition:all .3s;box-shadow:0 4px 15px #f973164d;border:none;font-size:1rem;cursor:pointer;display:inline-block;line-height:1.5}.cta-button:hover{transform:translateY(-2px);box-shadow:0 6px 20px #f9731666}.mobile-menu-btn{display:none;background:none;border:none;font-size:1.8rem;color:#d1d5db;cursor:pointer;z-index:1001;position:relative}.mobile-nav-menu{display:none;position:fixed;top:0;left:0;width:100%;height:100vh;background:linear-gradient(135deg,#1a1a1a,#2d2d2d);z-index:1000;padding:120px 2rem 2rem;overflow-y:auto}.mobile-nav-menu.active{display:block}.mobile-nav-menu ul{list-style:none;display:flex;flex-direction:column;gap:2rem}.mobile-nav-menu a{text-decoration:none;color:#d1d5db;font-weight:600;font-size:1.5rem;transition:color .3s;display:block;padding:1rem;text-align:center}.mobile-nav-menu a:hover{color:gold}.mobile-nav-menu .cta-button{background:linear-gradient(135deg,var(--accent-orange),#EA580C);color:#fff;padding:1rem 2rem;border-radius:50px;text-decoration:none;font-weight:700;transition:all .3s;box-shadow:0 4px 15px #f973164d;display:block;text-align:center;margin-top:2rem}body.mobile-menu-open{overflow:hidden}.hero{min-height:100vh;background:linear-gradient(135deg,#eff6ff,#fef3c7);display:flex;align-items:center;padding:120px 2rem 80px;position:relative;overflow:hidden}.hero.hero-simple{min-height:auto;padding:180px 2rem 100px;justify-content:center}.hero.hero-simple .hero-content{text-align:center}.hero:before{content:"";position:absolute;top:-50%;right:-20%;width:800px;height:800px;background:radial-gradient(circle,rgba(249,115,22,.1) 0%,transparent 70%);border-radius:50%}.hero-container{max-width:1400px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center;position:relative;z-index:1}.hero-content h2{font-size:3.5rem;color:var(--primary-blue);margin-bottom:1.5rem;font-weight:800;line-height:1.1}.hero-content .highlight{background:linear-gradient(135deg,var(--accent-orange),#EA580C);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.hero-content p{font-size:1.25rem;color:#4b5563;margin-bottom:2.5rem;line-height:1.7}.hero-buttons{display:flex;gap:1.5rem;flex-wrap:wrap}.btn-primary{background:linear-gradient(135deg,var(--accent-orange),#EA580C);color:#fff;padding:1rem 2.5rem;border-radius:50px;text-decoration:none;font-weight:700;font-size:1.1rem;transition:all .3s;box-shadow:0 6px 20px #f973164d;border:none;cursor:pointer}.btn-primary:hover{transform:translateY(-3px);box-shadow:0 8px 25px #f9731666}.btn-secondary{background:#fff;color:var(--primary-blue);padding:1rem 2.5rem;border-radius:50px;text-decoration:none;font-weight:700;font-size:1.1rem;transition:all .3s;border:2px solid var(--primary-blue)}.btn-secondary:hover{background:var(--primary-blue);color:#fff}.trust-badges{display:flex;gap:2rem;margin-top:2.5rem;flex-wrap:wrap}.trust-badge{display:flex;align-items:center;gap:.5rem}.trust-badge svg{width:24px;height:24px;color:#10b981}.trust-badge span{font-weight:600;color:var(--dark-gray)}.hero-card{background:#fff;border-radius:30px;padding:3rem;box-shadow:0 20px 60px #0000001a;position:relative;transition:transform .3s}.hero-card:hover{transform:translateY(-10px)}.hero-card h3{font-size:2rem;color:var(--primary-blue);margin-bottom:1rem;display:flex;align-items:center;gap:.5rem}.hero-card p{color:#6b7280;margin-bottom:1.5rem;font-size:1.05rem}.hero-card ul{list-style:none}.hero-card li{display:flex;align-items:center;gap:1rem;margin-bottom:1rem;font-size:1rem}.hero-card li svg{width:20px;height:20px;color:#10b981;flex-shrink:0}.services{padding:100px 2rem;background:#fff}.section-header{text-align:center;max-width:800px;margin:0 auto 4rem}.section-header h2{font-size:3rem;color:var(--primary-blue);margin-bottom:1rem;font-weight:800}.section-header p{font-size:1.2rem;color:#6b7280}.services-grid{max-width:1400px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem}.service-card{background:#fff;border-radius:20px;padding:2.5rem;border:2px solid #E5E7EB;transition:all .3s;cursor:pointer;position:relative;overflow:hidden;min-height:300px;display:flex;flex-direction:column;justify-content:flex-end}.service-card.has-image{padding:0;background-size:cover;background-position:center;background-repeat:no-repeat}.service-card.has-image:before{content:"";position:absolute;inset:0;background:linear-gradient(to bottom,#0000001a,#000000b3);transition:all .3s}.service-card:hover{transform:translateY(-10px);box-shadow:0 15px 40px #0003;border-color:var(--accent-orange)}.service-card.has-image:hover:before{background:linear-gradient(to bottom,#0003,#000c)}.service-card .icon{font-size:3.5rem;margin-bottom:1.5rem;transition:transform .3s}.service-card:hover .icon{transform:scale(1.1)}.service-card-content{position:relative;z-index:1;padding:2rem}.service-card.has-image h3{font-size:1.8rem;color:#fff;margin-bottom:.75rem;text-shadow:2px 2px 4px rgba(0,0,0,.5)}.service-card.has-image p{color:#fff;line-height:1.6;text-shadow:1px 1px 2px rgba(0,0,0,.5)}.service-card h3{font-size:1.5rem;color:var(--primary-blue);margin-bottom:1rem}.service-card p{color:#6b7280;line-height:1.6}.portfolio{padding:100px 2rem;background:linear-gradient(135deg,var(--light-gray) 0%,#FEF3C7 100%)}.portfolio-carousel-container{max-width:1200px;margin:0 auto;position:relative}.portfolio-carousel{border-radius:30px;overflow:hidden;box-shadow:0 25px 80px #00000026;position:relative}.portfolio-slide{height:500px;display:flex;align-items:center;justify-content:center;padding:4rem;color:#fff;text-align:center;position:relative;overflow:hidden}.portfolio-image{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;object-position:center;transition:opacity .5s ease-in-out}.portfolio-slide:before{content:"";position:absolute;inset:0;background:linear-gradient(to bottom,#0006,#000000b3);z-index:1}.portfolio-content{position:relative;z-index:2;max-width:700px}.portfolio-category{display:inline-block;background:#fff3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:.5rem 1.5rem;border-radius:50px;font-weight:600;margin-bottom:1.5rem}.portfolio-content h3{font-size:2.5rem;margin-bottom:1rem}.portfolio-content p{font-size:1.2rem;opacity:.95}.carousel-controls{position:absolute;top:50%;transform:translateY(-50%);width:100%;display:flex;justify-content:space-between;padding:0 1rem;pointer-events:none;z-index:3}.carousel-btn{background:#fffffff2;border:none;width:50px;height:50px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s;pointer-events:all;box-shadow:0 4px 15px #0003;color:#1f2937}.carousel-btn:hover{background:#fff;transform:scale(1.1)}.carousel-btn svg{color:#1f2937}.carousel-indicators{display:flex;justify-content:center;gap:.75rem;margin-top:2rem}.indicator{width:12px;height:12px;border-radius:50%;background:#d1d5db;border:none;cursor:pointer;transition:all .3s}.indicator.active{background:var(--accent-orange);width:40px;border-radius:10px}.warranty{padding:100px 2rem;background:linear-gradient(135deg,#1e3a8a,#3b82f6);color:#fff;position:relative;overflow:hidden}.warranty:before{content:"";position:absolute;top:-50%;right:-10%;width:600px;height:600px;background:radial-gradient(circle,rgba(255,255,255,.1) 0%,transparent 70%);border-radius:50%}.warranty-container{max-width:1200px;margin:0 auto;position:relative;z-index:1}.warranty-content{text-align:center;max-width:900px;margin:0 auto}.warranty-badge{display:inline-block;background:#fff3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:.75rem 2rem;border-radius:50px;font-weight:700;font-size:1rem;margin-bottom:2rem;text-transform:uppercase;letter-spacing:1px}.warranty h2{font-size:3.5rem;margin-bottom:1.5rem;font-weight:800;line-height:1.2}.warranty-highlight{background:linear-gradient(135deg,#fcd34d,#f97316);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.warranty-text{font-size:1.35rem;line-height:1.8;opacity:.95;margin-bottom:3rem}.warranty-comparison{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem;margin-top:3rem}.warranty-card{background:#ffffff26;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:20px;padding:2.5rem;transition:all .3s;border:2px solid transparent}.warranty-card:hover{background:#fff3;transform:translateY(-5px);border-color:#fcd34d80}.warranty-card.featured{background:linear-gradient(135deg,#fcd34d4d,#f973164d);border-color:#fcd34d;transform:scale(1.05)}.warranty-card.featured:hover{transform:scale(1.08) translateY(-5px)}.warranty-card h3{font-size:1.3rem;margin-bottom:1rem;opacity:.9}.warranty-card .warranty-years{font-size:4rem;font-weight:800;margin:1rem 0;line-height:1}.warranty-card.featured .warranty-years{color:#fcd34d}.warranty-card p{opacity:.9;line-height:1.6;font-size:1.05rem}.reviews{padding:100px 2rem;background:#fff}.reviews-header{text-align:center;margin-bottom:1.5rem}.star-rating{display:flex;justify-content:center;gap:.5rem;margin-bottom:.75rem}.star-rating svg{width:40px;height:40px;fill:#fcd34d}.rating-text{color:#6b7280;font-size:1.1rem}.review-carousel-container{max-width:1000px;margin:3rem auto 0;position:relative}.review-card{background:#fff;border-radius:25px;padding:3rem;box-shadow:0 15px 50px #00000014;transition:all .3s}.review-card:hover{transform:translateY(-5px);box-shadow:0 20px 60px #0000001f}.financing{padding:100px 2rem;background:linear-gradient(135deg,var(--accent-orange),#EA580C);color:#fff;text-align:center}.financing-container{max-width:1200px;margin:0 auto}.financing h2{font-size:3rem;margin-bottom:1.5rem;font-weight:800}.financing>p{font-size:1.3rem;opacity:.95;margin-bottom:3rem;max-width:800px;margin-left:auto;margin-right:auto}.financing-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;margin-bottom:3rem}.financing-card{background:#ffffff26;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:20px;padding:2.5rem;transition:all .3s}.financing-card:hover{background:#fff3;transform:translateY(-5px)}.financing-card h3{font-size:1.5rem;margin-bottom:1rem}.financing-card p{opacity:.9;line-height:1.6}.btn-white{background:#fff;color:var(--accent-orange);padding:1rem 3rem;border-radius:50px;text-decoration:none;font-weight:700;font-size:1.1rem;display:inline-block;transition:all .3s;box-shadow:0 6px 20px #0003}.btn-white:hover{transform:translateY(-3px);box-shadow:0 8px 25px #0000004d}.contact{padding:100px 2rem;background:var(--dark-gray);color:#fff}.contact-container{max-width:1400px;margin:0 auto}.contact-header{text-align:center;margin-bottom:4rem}.contact-header h2{font-size:3rem;margin-bottom:1rem;font-weight:800}.contact-header p{font-size:1.2rem;color:#d1d5db}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:4rem}.contact-form{background:#374151;padding:3rem;border-radius:25px}.contact-form h3{font-size:1.8rem;margin-bottom:2rem}.form-group{margin-bottom:1.5rem}.form-group input,.form-group select,.form-group textarea{width:100%;padding:1rem 1.5rem;border-radius:12px;border:2px solid #4B5563;background:#1f2937;color:#fff;font-size:1rem;font-family:inherit;transition:all .3s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--accent-orange)}.form-group textarea{resize:vertical;min-height:120px}.submit-btn{width:100%;background:linear-gradient(135deg,var(--accent-orange),#EA580C);color:#fff;padding:1.2rem;border:none;border-radius:12px;font-weight:700;font-size:1.1rem;cursor:pointer;transition:all .3s}.submit-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #f9731666}.contact-info h3{font-size:1.8rem;margin-bottom:2rem}.contact-item{display:flex;align-items:flex-start;gap:1.5rem;margin-bottom:2rem}.contact-icon{width:55px;height:55px;background:var(--accent-orange);border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.contact-icon svg{width:24px;height:24px;color:#fff}.contact-details p:first-child{color:#d1d5db;margin-bottom:.25rem}.contact-details p:last-child{font-size:1.2rem;font-weight:600}.business-hours{background:#374151;padding:2rem;border-radius:20px;margin-top:2rem}.business-hours h4{font-size:1.3rem;margin-bottom:1rem}.business-hours p{color:#d1d5db;margin-bottom:.5rem}.footer{background:#111827;color:#fff;padding:3rem 2rem}.footer-container{max-width:1400px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:2rem}.footer-logo{display:flex;align-items:center;gap:1rem}.footer-right p{color:#9ca3af;margin-bottom:.5rem}.content-section{max-width:1200px;margin:0 auto;padding:80px 2rem}.intro-text{font-size:1.3rem;line-height:1.8;color:#4b5563;margin-bottom:4rem;text-align:center}.feature-image{width:100%;max-width:900px;height:auto;border-radius:20px;box-shadow:0 20px 60px #00000026;margin:3rem auto;display:block}.section-title{font-size:2.5rem;color:var(--primary-blue);margin:4rem 0 2rem;text-align:center;font-weight:800}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;margin:3rem 0}.feature-card{background:#fff;border-radius:20px;padding:2.5rem;border:2px solid #E5E7EB;transition:all .3s}.feature-card:hover{transform:translateY(-10px);box-shadow:0 15px 40px #0000001a;border-color:var(--accent-orange)}.feature-card h3{font-size:1.5rem;color:var(--primary-blue);margin-bottom:1rem}.feature-card p{color:#6b7280;line-height:1.6}.promise-section{background:linear-gradient(135deg,#1e3a8a,#3b82f6);color:#fff;padding:80px 2rem;margin:4rem 0;border-radius:30px}.promise-section h2{font-size:2.5rem;margin-bottom:2rem;text-align:center}.promise-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem;max-width:1000px;margin:0 auto}.promise-card{background:#ffffff26;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:20px;padding:2rem;transition:all .3s}.promise-card:hover{background:#fff3;transform:translateY(-5px)}.promise-card h3{font-size:1.3rem;margin-bottom:1rem}.promise-card p{opacity:.9;line-height:1.6}.closing-text{font-size:1.4rem;line-height:1.8;color:#4b5563;margin:4rem auto;text-align:center;max-width:900px;font-style:italic}.cta-section{text-align:center;padding:60px 2rem;background:var(--light-gray);border-radius:30px;margin:4rem 0}.cta-section h2{font-size:2.5rem;color:var(--primary-blue);margin-bottom:1.5rem}@media(max-width:968px){.nav-menu{display:none}.mobile-menu-btn{display:block}.hero-container{grid-template-columns:1fr;text-align:center;gap:2rem}.hero-content h2{font-size:2.5rem}.hero-buttons,.trust-badges{justify-content:center}.section-header h2{font-size:2.2rem}.section-header p{font-size:1.1rem}.contact-grid{grid-template-columns:1fr}.footer-container{text-align:center;flex-direction:column}.warranty h2{font-size:2.5rem}.warranty-text{font-size:1.2rem}.warranty-card.featured{transform:scale(1)}.warranty-comparison{grid-template-columns:1fr}.financing h2{font-size:2.2rem}.financing>p{font-size:1.1rem}.contact-header h2{font-size:2.2rem}}@media(max-width:640px){.header-container{padding:1rem}.logo img{height:60px}.logo-text h1,.logo h1{font-size:1.5rem!important}.logo-text p,.logo p{font-size:.75rem!important}.hero,.hero.hero-simple{padding:140px 1rem 60px}.hero-content h1{font-size:2rem}.hero-content h2{font-size:1.8rem}.hero-content p{font-size:1rem}.hero-card{padding:2rem}.hero-card h3{font-size:1.5rem}.btn-primary,.btn-secondary{padding:.9rem 1.8rem;font-size:1rem;width:100%;text-align:center}.section-header h2{font-size:1.8rem}.section-header p{font-size:1rem}.services,.portfolio,.warranty,.reviews,.financing,.contact,.content-section{padding:60px 1rem}.intro-text{font-size:1.1rem}.section-title{font-size:1.8rem}.services-grid{grid-template-columns:1fr}.service-card{padding:2rem}.portfolio-slide{height:350px;padding:1.5rem}.portfolio-content h3{font-size:1.5rem}.portfolio-content p{font-size:1rem}.carousel-controls{padding:0 .5rem}.carousel-btn{width:40px;height:40px}.warranty h2{font-size:1.8rem}.warranty-text{font-size:1.1rem}.warranty-badge{font-size:.85rem;padding:.5rem 1.5rem}.warranty-card{padding:1.5rem}.warranty-card .warranty-years{font-size:3rem}.star-rating svg{width:30px;height:30px}.financing h2{font-size:1.8rem}.financing>p{font-size:1rem}.financing-grid{grid-template-columns:1fr}.financing-card{padding:2rem}.contact-header h2{font-size:1.8rem}.contact-header p{font-size:1rem}.contact-form,.business-hours{padding:2rem}.contact-form h3,.contact-info h3{font-size:1.5rem}.form-group input,.form-group select,.form-group textarea{padding:.9rem 1.2rem;font-size:.95rem}.contact-icon{width:45px;height:45px}.contact-details p:last-child{font-size:1rem}.feature-image{border-radius:15px}.features-grid{grid-template-columns:1fr}.feature-card{padding:2rem}.promise-section{padding:40px 1rem;margin:2rem 0;border-radius:20px}.promise-section h2{font-size:1.8rem}.promise-grid{grid-template-columns:1fr}.promise-card{padding:1.5rem}.closing-text{font-size:1.1rem}.cta-section{padding:40px 1rem;margin:2rem 0;border-radius:20px}.cta-section h2{font-size:1.8rem}.footer{padding:2rem 1rem}.footer-logo img{height:40px}}@media(max-width:380px){.hero-content h1,.hero-content h2{font-size:1.5rem}.logo h1{font-size:1.2rem!important}.btn-primary,.btn-secondary{padding:.8rem 1.5rem;font-size:.9rem}}.portfolio-slide-clean{background:#fff}.portfolio-slide-clean:before{display:none}.portfolio-content-bottom{position:absolute;bottom:0;left:0;right:0;background:#fff;padding:2rem;z-index:2;border-bottom-left-radius:30px;border-bottom-right-radius:30px}.portfolio-content-bottom .portfolio-category{background:var(--accent-orange);color:#fff;display:inline-block;padding:.5rem 1.5rem;border-radius:50px;font-weight:600;margin-bottom:1rem}.portfolio-content-bottom h3{font-size:2rem;color:var(--primary-blue);margin-bottom:.75rem}.portfolio-content-bottom p{font-size:1.1rem;color:#6b7280}.roof-portfolio{padding:80px 2rem 100px;background:#fff}@media(max-width:640px){.portfolio-content-bottom{padding:1.5rem}.portfolio-content-bottom h3{font-size:1.5rem}.portfolio-content-bottom p{font-size:1rem}}
