:root{--color-primary:#0d47a1;--color-secondary:#1976d2;--color-accent:#ff8f00;--color-dark:#0a192f;--color-light:#f5f5f5;--color-text:#102a43;--color-muted:#556f8d;--font-base:'Helvetica Neue',Arial,sans-serif;--font-size-base:16px;--line-height-base:1.6}*{box-sizing:border-box;margin:0;padding:0}html{font-size:var(--font-size-base);scroll-behavior:smooth}body{font-family:var(--font-base);line-height:var(--line-height-base);color:var(--color-text);background-color:var(--color-light)}p{text-align:justify}a{color:var(--color-primary);text-decoration:none;transition:color 0.2s ease}a:hover,a:focus{color:var(--color-secondary);text-decoration:underline}header{background-color:#ffffff;box-shadow:0 2px 4px rgba(0,0,0,0.05);position:sticky;top:0;z-index:1000}.nav-container{display:flex;justify-content:flex-start;align-items:center;max-width:1200px;margin:0 auto;padding:0.5rem 1rem;position:relative}.logo{font-weight:bold;font-size:1.5rem;color:var(--color-primary);display:flex;align-items:center}.logo img{max-width:190px;max-height:60px;height:auto;display:block}nav ul{list-style:none;display:flex;gap:1.5rem}nav#primary-nav{margin-left:auto}nav li{position:relative}nav a{font-weight:500;padding:0.75rem 0.5rem;font-size:1.15rem}nav a.active{color:var(--color-secondary);border-bottom:2px solid var(--color-secondary)}.floating-logo{position:fixed;top:4.5rem;left:0.75rem;z-index:1001;background-color:#ffffff;border-radius:8px;box-shadow:0 2px 6px rgba(0,0,0,0.15);padding:0.25rem;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform 0.3s ease,box-shadow 0.3s ease}.floating-logo img{max-width:64px;height:auto;display:block}.floating-logo:hover{transform:scale(1.05);box-shadow:0 4px 12px rgba(0,0,0,0.2)}.logo{display:none}@media (max-width:600px){.floating-logo{top:3.5rem;left:0.5rem;padding:0.2rem}.floating-logo img{max-width:48px;height:auto}}.nav-toggle{display:none;background:none;border:none;cursor:pointer;padding:0.5rem;margin-left:auto}.nav-toggle .hamburger,.nav-toggle .hamburger::before,.nav-toggle .hamburger::after{width:24px;height:2px;background-color:var(--color-primary);display:block;transition:all 0.3s ease;border-radius:1px}.nav-toggle .hamburger::before,.nav-toggle .hamburger::after{content:'';position:relative}.nav-toggle .hamburger::before{top:-6px}.nav-toggle .hamburger::after{top:4px}@media (max-width:768px){nav ul{display:none;flex-direction:column;gap:0;background-color:#fff;box-shadow:0 2px 6px rgba(0,0,0,0.1);position:absolute;top:100%;right:0;left:0;padding:1rem;z-index:999}nav.active ul{display:flex}.nav-toggle{display:block}}.sticky-cta{position:fixed;bottom:20px;right:20px;background-color:var(--color-secondary);color:#fff;padding:0.75rem 1.25rem;border-radius:30px;font-weight:600;box-shadow:0 4px 8px rgba(0,0,0,0.2);z-index:1000;display:inline-block;transition:background-color 0.3s ease}.sticky-cta:hover,.sticky-cta:focus{background-color:var(--color-primary)}@media (max-width:768px){.sticky-cta{bottom:15px;right:15px;padding:0.6rem 1rem}}.faq{max-width:1000px;margin:0 auto}.cta{text-align:center}.cta h2,.cta p{text-align:center}.faq-item{margin-bottom:1.5rem}.faq-item h3{font-size:1.2rem;color:var(--color-primary);margin-bottom:0.5rem}.faq-item p{color:var(--color-text);line-height:1.5;font-size:0.95rem}.hero{background:var(--color-dark) url('../img/hero.webp') center/cover no-repeat;color:#fff;padding:5rem 1rem;text-align:center;position:relative}.hero::after{content:'';position:absolute;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.15);pointer-events:none}.hero-content{position:relative;max-width:800px;margin:0 auto}.hero h1{font-size:2.5rem;line-height:1.2;margin-bottom:1rem;text-shadow:0 3px 8px rgba(0,0,0,0.45);color:#ffffff}.hero p{font-size:1.125rem;margin-bottom:2rem;color:#e0e9f3}.btn{display:inline-block;padding:0.75rem 1.5rem;border-radius:4px;background-color:var(--color-secondary);color:#fff;font-weight:600;transition:background-color 0.3s ease;text-align:center}.btn:hover,.btn:focus{background-color:var(--color-primary)}section{padding:4rem 1rem}.section-title{text-align:center;font-size:2rem;color:var(--color-primary);margin-bottom:2rem;position:relative}.section-title::after{content:'';display:block;width:60px;height:4px;background-color:var(--color-accent);margin:0.5rem auto;border-radius:2px}.about{max-width:1000px;margin:0 auto}.about p{margin-bottom:1rem;font-size:1.1rem}.features{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem;max-width:1000px;margin:0 auto}.feature{background-color:#f7fbff;border-radius:8px;box-shadow:0 1px 3px rgba(0,0,0,0.05);padding:2rem 1.5rem;text-align:center}.feature img{width:50px;height:50px;margin-bottom:1rem;filter:invert(20%) sepia(80%) saturate(400%) hue-rotate(170deg) brightness(90%) contrast(90%)}.feature h3{font-size:1.25rem;margin-bottom:0.5rem;color:var(--color-primary)}.feature p{font-size:0.95rem;color:var(--color-muted)}.services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;max-width:1000px;margin:0 auto}.service-card{background-color:#fff;border-radius:8px;box-shadow:0 2px 6px rgba(0,0,0,0.05);padding:2rem 1.5rem;display:flex;flex-direction:column;align-items:center;text-align:center;text-decoration:none;color:inherit;transition:transform 0.3s ease,background-color 0.3s ease,box-shadow 0.3s ease;cursor:pointer}.service-card:hover{transform:translateY(-4px) scale(1.02);background-color:#f7fbff;box-shadow:0 6px 12px rgba(0,0,0,0.12);text-decoration:none}.service-card:hover *,.service-card:focus *{text-decoration:none !important}.service-card:hover img{filter:invert(25%) sepia(80%) saturate(400%) hue-rotate(190deg) brightness(95%) contrast(90%)}.service-card h3,.service-card p{text-decoration:none}.service-card img{width:60px;height:60px;margin-bottom:1rem;filter:invert(20%) sepia(80%) saturate(400%) hue-rotate(170deg) brightness(90%) contrast(90%)}.service-card h3{font-size:1.3rem;margin-bottom:0.75rem;color:var(--color-primary)}.service-card p{flex-grow:1;font-size:0.95rem;color:var(--color-muted);margin-bottom:1.5rem}.service-card .btn{align-self:center}.services-overview{max-width:1000px;margin:0 auto 3rem;text-align:center}.overview-list{display:flex;justify-content:center;gap:1rem;flex-wrap:wrap}.overview-list .btn{margin:0.25rem}.overview-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:2rem;max-width:1000px;margin:0 auto}.overview-card{background-color:#fff;border-radius:8px;box-shadow:0 2px 6px rgba(0,0,0,0.05);padding:2rem 1.5rem;text-align:center;display:flex;flex-direction:column;align-items:center;text-decoration:none;color:inherit;cursor:pointer;transition:transform 0.3s ease,background-color 0.3s ease,box-shadow 0.3s ease}.overview-card img{width:50px;height:50px;margin-bottom:1rem;filter:invert(20%) sepia(80%) saturate(400%) hue-rotate(170deg) brightness(90%) contrast(90%)}.overview-card h3{font-size:1.3rem;margin-bottom:0.5rem;color:var(--color-primary)}.overview-card p{font-size:0.9rem;color:var(--color-muted);margin-bottom:1rem;flex-grow:1}.overview-card:hover{transform:translateY(-4px) scale(1.02);background-color:#f7fbff;box-shadow:0 6px 12px rgba(0,0,0,0.12);text-decoration:none}.overview-card:hover *,.overview-card:focus *{text-decoration:none !important}.overview-card:hover img{filter:invert(25%) sepia(80%) saturate(400%) hue-rotate(190deg) brightness(95%) contrast(90%)}.btn.small{padding:0.5rem 1rem;font-size:0.85rem}.detail-links{display:flex;flex-wrap:wrap;justify-content:center;gap:0.5rem;margin-top:1rem}.btn.outline{background-color:transparent;color:var(--color-primary);border:2px solid var(--color-primary);border-radius:4px;font-weight:600;padding:0.5rem 1rem;transition:background-color 0.3s ease,color 0.3s ease}.btn.outline:hover,.btn.outline:focus{background-color:var(--color-primary);color:#fff}.service-detail{max-width:1000px;margin:4rem auto 4rem;padding:2rem 1rem;background-color:#fff;border-radius:8px;box-shadow:0 2px 6px rgba(0,0,0,0.05);scroll-margin-top:100px}.service-detail .service-lead{font-size:1.1rem;color:var(--color-muted);margin-bottom:1rem}.feature-list{list-style:disc;margin-left:1.5rem;margin-bottom:1.5rem;color:var(--color-text)}.feature-list li{margin-bottom:0.5rem;font-size:0.95rem}.service-detail .feature-list{margin-bottom:1.5rem}.service-detail .btn{display:block;margin:0 auto;width:fit-content;min-width:200px}.detail-links{display:flex;flex-wrap:wrap;justify-content:center;gap:1rem;margin-top:1rem}.detail-links .btn{flex:1 1 200px;text-align:center}.detail-links + .btn{margin-top:2rem}.faq .faq-item{margin-bottom:1.5rem}.faq .faq-item h3{font-size:1.2rem;color:var(--color-primary);margin-bottom:0.5rem}.faq .faq-item p{color:var(--color-text);line-height:1.5;font-size:0.95rem}.testimonials{background-color:var(--color-dark);color:#fff;padding:4rem 1rem}.testimonial-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;max-width:1000px;margin:0 auto}.testimonial-grid.carousel{display:block;position:relative;overflow:hidden;max-width:700px;min-height:250px}.testimonial-grid.carousel .testimonial{display:none;position:absolute;left:0;top:0;width:100%;height:auto;transition:opacity 0.6s ease}.testimonial-grid.carousel .testimonial.active{display:block;opacity:1}.testimonial{background-color:rgba(255,255,255,0.05);border-radius:8px;padding:2rem 1.5rem;text-align:left;position:relative}.testimonial-stars{display:flex;gap:0.25rem;margin-bottom:0.75rem}.testimonial-stars img{width:16px;height:16px;filter:invert(83%) sepia(24%) saturate(7233%) hue-rotate(357deg) brightness(104%) contrast(105%)}.testimonial p{font-size:0.95rem;margin-bottom:1rem;color:#e0e9f3}.testimonial .author{font-weight:600;color:#fff}.testimonial .role{font-size:0.85rem;color:#c0d3e8}.cta{background-color:var(--color-secondary);color:#fff;text-align:center;padding:3rem 1rem}.cta h2{font-size:2rem;margin-bottom:1rem}.cta p{font-size:1.125rem;margin-bottom:1.5rem}.cta .btn{background-color:var(--color-accent);color:var(--color-dark)}.cta .btn:hover,.cta .btn:focus{background-color:var(--color-primary);color:#fff}footer{background-color:var(--color-dark);color:#fff;padding:3rem 1rem}.footer-container{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:2rem;max-width:1000px;margin:0 auto}footer h4{font-size:1.1rem;margin-bottom:0.75rem}footer ul{list-style:none;padding-left:0}footer li{margin-bottom:0.5rem}footer a{color:#c0d3e8;font-size:0.95rem}footer a:hover,footer a:focus{color:#fff;text-decoration:underline}.social{display:flex;gap:0.5rem;margin-top:1rem}.social img{width:20px;height:20px;filter:invert(83%) sepia(15%) saturate(600%) hue-rotate(176deg) brightness(92%) contrast(90%);transition:transform 0.2s ease}.social img:hover{transform:scale(1.1)}.quote-calculator{padding:4rem 1rem;background-color:var(--color-light)}.quote-calculator .section-title{margin-bottom:2rem}.calculator-container{display:flex;flex-wrap:wrap;gap:2rem;max-width:1000px;margin:0 auto}.calculator-left{flex:1 1 280px;background-color:#fff;border-radius:8px;box-shadow:0 2px 6px rgba(0,0,0,0.06);padding:2rem}.calc-item{margin-bottom:1.5rem}.calc-item label{display:block;font-weight:600;margin-bottom:0.5rem;color:var(--color-primary)}.calc-item .small-text{font-size:0.85rem;color:var(--color-muted);margin-bottom:0.25rem}.calc-item input[type=range]{width:100%;margin-top:0.25rem}.calc-item .calc-value{margin-top:0.25rem;color:var(--color-muted);font-size:0.9rem}.calculator-right{flex:1 1 280px;background-color:#fff;border-radius:8px;box-shadow:0 2px 6px rgba(0,0,0,0.06);padding:2rem}.calculator-right table{width:100%;border-collapse:collapse;margin-bottom:1rem}.calculator-right th,.calculator-right td{text-align:left;padding:0.5rem 0.5rem;border-bottom:1px solid #e5e5e5;font-size:0.95rem}.calculator-right thead th{background-color:var(--color-light);color:var(--color-primary);font-weight:600}.calculator-right tfoot td{font-weight:700;color:var(--color-primary)}.estimate-note{font-size:0.85rem;color:var(--color-muted);font-style:italic}.quote-cta{text-align:center;margin-top:2rem}.calculator-options{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;max-width:1000px;margin:0 auto 2rem;gap:1.5rem}.presets{display:flex;flex-wrap:wrap;gap:0.5rem}.preset-btn{background-color:var(--color-secondary);color:#fff;border:none;border-radius:6px;padding:0.5rem 0.75rem;cursor:pointer;font-size:0.85rem;font-weight:600;text-align:center;min-width:90px;transition:background-color 0.3s ease,transform 0.1s ease}.preset-btn:hover,.preset-btn:focus{background-color:var(--color-primary);transform:translateY(-2px)}.preset-btn .preset-sub{display:block;font-size:0.7rem;font-weight:400;color:#e0e9f3}.billing-toggle{display:flex;gap:1rem;align-items:center;font-size:0.9rem}.billing-toggle label{display:flex;align-items:center;gap:0.25rem;cursor:pointer;color:var(--color-text)}.billing-toggle input[type="radio"]{accent-color:var(--color-accent)}.contact-form{max-width:600px;margin:0 auto;background-color:#fff;padding:2rem 1.5rem;border-radius:8px;box-shadow:0 2px 6px rgba(0,0,0,0.05)}.form-group{margin-bottom:1rem}.form-group label{display:block;margin-bottom:0.5rem;font-weight:600;color:var(--color-primary)}.form-group input,.form-group textarea{width:100%;padding:0.75rem;border:1px solid #ddd;border-radius:4px;font-size:1rem;font-family:var(--font-base)}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--color-secondary);box-shadow:0 0 0 3px rgba(25,118,210,0.2)}.form-group textarea{min-height:120px;resize:vertical}.contact-form button{display:block;width:100%;border:none;padding:0.75rem;font-size:1rem;border-radius:4px;background-color:var(--color-primary);color:#fff;font-weight:600;cursor:pointer;transition:background-color 0.3s ease}.contact-form button:hover,.contact-form button:focus{background-color:var(--color-secondary)}@media (max-width:768px){.hero h1{font-size:2rem}.hero p{font-size:1rem}nav ul{flex-direction:column;gap:1rem}.nav-container{flex-direction:column;align-items:flex-start}.services-grid,.testimonial-grid{grid-template-columns:1fr}}