*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}:root{--c-primary:hsl(205,78%,42%);--c-primary-dark:hsl(205,78%,32%);--c-accent:hsl(170,62%,40%);--c-accent-dark:hsl(170,62%,30%);--c-dark:hsl(210,24%,16%);--c-light:hsl(200,30%,97%);--c-gray:hsl(210,10%,55%);--c-gray-light:hsl(210,14%,90%);--c-white:hsl(0,0%,100%);--c-danger:hsl(0,72%,51%);--radius:0.5rem;--radius-lg:0.75rem;--shadow:0 2px 16px hsla(210,24%,16%,.08);--shadow-md:0 4px 24px hsla(210,24%,16%,.12);--font-body:'Inter',sans-serif;--font-heading:'DM Serif Display',serif;--transition:0.25s ease}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{font-family:var(--font-body);font-size:1rem;line-height:1.6;color:var(--c-dark);background:var(--c-white)}img{max-width:100%;height:auto;display:block}a{color:var(--c-primary);text-decoration:none;transition:color var(--transition)}a:hover{color:var(--c-primary-dark)}ul,ol{list-style:none}address{font-style:normal}.container{width:100%;max-width:75rem;margin:0 auto;padding:0 1.25rem}h1,h2,h3,h4,h5{font-family:var(--font-heading);font-weight:400;line-height:1.25;color:var(--c-dark)}h1{font-size:clamp(2rem,5vw,3.25rem)}h2{font-size:clamp(1.6rem,4vw,2.5rem)}h3{font-size:clamp(1.25rem,3vw,1.75rem)}h4{font-size:1.125rem}.btn{display:inline-flex;align-items:center;justify-content:center;gap:0.5rem;padding:0.8rem 1.75rem;border:none;border-radius:var(--radius);font-family:var(--font-body);font-size:1rem;font-weight:600;cursor:pointer;transition:all var(--transition);text-decoration:none;line-height:1.4;min-height:2.75rem}.btn-primary{background:var(--c-primary);color:var(--c-white)}.btn-primary:hover{background:var(--c-primary-dark);color:var(--c-white)}.btn-accent{background:var(--c-accent);color:var(--c-white)}.btn-accent:hover{background:var(--c-accent-dark);color:var(--c-white)}.btn-outline{background:transparent;border:2px solid var(--c-primary);color:var(--c-primary)}.btn-outline:hover{background:var(--c-primary);color:var(--c-white)}.btn-sm{padding:0.5rem 1.25rem;font-size:0.875rem}.btn-lg{padding:1rem 2.25rem;font-size:1.125rem}.site-header{position:fixed;top:0;left:0;width:100%;z-index:100;background:hsla(0,0%,100%,.97);backdrop-filter:blur(8px);box-shadow:var(--shadow);transition:box-shadow var(--transition)}.header-inner{display:flex;align-items:center;justify-content:space-between;height:4.25rem}.logo-link{display:flex;flex-direction:column;text-decoration:none;line-height:1.1}.logo-text{font-family:var(--font-heading);font-size:1.5rem;color:var(--c-dark)}.logo-text strong{color:var(--c-primary)}.logo-tagline{font-size:0.65rem;letter-spacing:0.08em;text-transform:uppercase;color:var(--c-gray)}.nav-toggle{display:flex;flex-direction:column;justify-content:center;align-items:center;width:2.75rem;height:2.75rem;background:none;border:none;cursor:pointer;padding:0}.hamburger,.hamburger::before,.hamburger::after{display:block;width:1.5rem;height:2px;background:var(--c-dark);border-radius:2px;transition:all var(--transition)}.hamburger{position:relative}.hamburger::before,.hamburger::after{content:'';position:absolute;left:0}.hamburger::before{top:-0.45rem}.hamburger::after{top:0.45rem}.nav-toggle[aria-expanded="true"] .hamburger{background:transparent}.nav-toggle[aria-expanded="true"] .hamburger::before{top:0;transform:rotate(45deg)}.nav-toggle[aria-expanded="true"] .hamburger::after{top:0;transform:rotate(-45deg)}.main-nav{display:none;position:absolute;top:4.25rem;left:0;width:100%;background:var(--c-white);box-shadow:var(--shadow-md);padding:1rem 1.25rem}.main-nav.open{display:block}.nav-list{display:flex;flex-direction:column;gap:0.25rem}.nav-list a{display:block;padding:0.65rem 0;font-size:1rem;color:var(--c-dark);font-weight:500}.nav-list a:hover,.nav-list a.active{color:var(--c-primary)}.has-dropdown{position:relative}.dropdown-menu{display:none;padding-left:1rem}.has-dropdown.open .dropdown-menu{display:block}.dropdown-menu a{font-weight:400;font-size:0.95rem}.header-cta{display:none;font-weight:600;color:var(--c-primary);white-space:nowrap}@media(min-width:752px){.nav-toggle{display:none}.main-nav{display:flex;position:static;width:auto;background:none;box-shadow:none;padding:0;align-items:center;gap:1.5rem}.nav-list{flex-direction:row;gap:0.25rem}.nav-list a{padding:0.5rem 0.75rem;font-size:0.9rem}.has-dropdown{position:relative}.has-dropdown:hover .dropdown-menu,.has-dropdown:focus-within .dropdown-menu{display:block}.dropdown-menu{display:none;position:absolute;top:100%;left:0;min-width:14rem;background:var(--c-white);box-shadow:var(--shadow-md);border-radius:var(--radius);padding:0.5rem 0;z-index:50}.dropdown-menu a{padding:0.5rem 1rem;white-space:nowrap}.dropdown-menu a:hover{background:var(--c-light)}.header-cta{display:inline-flex;font-size:0.9rem}}@media(min-width:1040px){.nav-list a{padding:0.5rem 1rem;font-size:0.95rem}.header-cta{font-size:1rem}}main{margin-top:4.25rem}.hero-section{position:relative;overflow:hidden;padding:4rem 0;background:linear-gradient(135deg,var(--c-dark) 0%,hsl(205,40%,22%) 100%);color:var(--c-white);min-height:28rem;display:flex;align-items:center}.hero-section::before{content:'';position:absolute;inset:0;background:url('/static/i/landing-cover.webp') center/cover no-repeat;opacity:0.18}.hero-content{position:relative;z-index:2;max-width:40rem}.hero-section h1{color:var(--c-white);margin-bottom:1rem}.hero-section p{font-size:clamp(1rem,2.5vw,1.2rem);margin-bottom:2rem;color:hsla(0,0%,100%,.88);line-height:1.7}.hero-actions{display:flex;flex-wrap:wrap;gap:1rem}.section{padding:4rem 0}.section-alt{background:var(--c-light)}.section-dark{background:var(--c-dark);color:var(--c-white)}.section-header{text-align:center;max-width:40rem;margin:0 auto 3rem}.section-header p{margin-top:0.75rem;color:var(--c-gray);font-size:1.05rem}.section-header h2 span{color:var(--c-primary)}.about-preview{display:grid;gap:2rem;align-items:center}@media(min-width:752px){.about-preview{grid-template-columns:1fr 1fr;gap:3rem}}.about-preview-text h2{margin-bottom:1rem}.about-preview-text p{color:var(--c-gray);margin-bottom:1rem;line-height:1.7}.about-preview-img{border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-md)}.services-grid{display:grid;gap:1.5rem}@media(min-width:752px){.services-grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:1040px){.services-grid{grid-template-columns:repeat(4,1fr)}}.srv-card{background:var(--c-white);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow);transition:transform var(--transition),box-shadow var(--transition)}.srv-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}.srv-card-img{aspect-ratio:4/3;overflow:hidden}.srv-card-img img{width:100%;height:100%;object-fit:cover;transition:transform var(--transition)}.srv-card:hover .srv-card-img img{transform:scale(1.04)}.srv-card-body{padding:1.5rem}.srv-card-body h3{margin-bottom:0.5rem;font-size:1.15rem}.srv-card-body p{color:var(--c-gray);font-size:0.95rem;margin-bottom:1rem;line-height:1.6}.srv-card-body a{font-weight:600;font-size:0.95rem}.process-steps{display:grid;gap:2rem;counter-reset:step}@media(min-width:752px){.process-steps{grid-template-columns:repeat(2,1fr)}}@media(min-width:1040px){.process-steps{grid-template-columns:repeat(4,1fr)}}.step-item{position:relative;padding:2rem 1.5rem;background:var(--c-white);border-radius:var(--radius-lg);box-shadow:var(--shadow);text-align:center;counter-increment:step}.step-item::before{content:counter(step);display:flex;align-items:center;justify-content:center;width:3rem;height:3rem;margin:0 auto 1rem;border-radius:50%;background:var(--c-primary);color:var(--c-white);font-family:var(--font-heading);font-size:1.25rem}.step-item h3{font-size:1.1rem;margin-bottom:0.5rem}.step-item p{color:var(--c-gray);font-size:0.9rem;line-height:1.6}.testimonials-grid{display:grid;gap:1.5rem}@media(min-width:752px){.testimonials-grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:1040px){.testimonials-grid{grid-template-columns:repeat(3,1fr)}}.testimonial-card{background:var(--c-white);border-radius:var(--radius-lg);padding:2rem;box-shadow:var(--shadow);position:relative}.testimonial-card::before{content:'\201C';position:absolute;top:0.75rem;left:1.25rem;font-size:3.5rem;line-height:1;font-family:var(--font-heading);color:var(--c-primary);opacity:0.2}.testimonial-card p{font-size:0.95rem;color:var(--c-gray);line-height:1.7;margin-bottom:1rem;position:relative;z-index:1}.testimonial-author{display:flex;align-items:center;gap:0.75rem}.testimonial-author strong{display:block;font-size:0.95rem;color:var(--c-dark)}.testimonial-author span{font-size:0.8rem;color:var(--c-gray)}.stars{color:hsl(45,100%,51%);font-size:0.85rem;letter-spacing:2px;margin-bottom:0.75rem}.faq-list{max-width:48rem;margin:0 auto}.faq-item{border-bottom:1px solid var(--c-gray-light)}.faq-item summary{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 0;cursor:pointer;font-weight:600;font-size:1.05rem;list-style:none;color:var(--c-dark);transition:color var(--transition)}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary::after{content:'+';font-size:1.5rem;color:var(--c-primary);transition:transform var(--transition);flex-shrink:0;margin-left:1rem}.faq-item[open] summary::after{transform:rotate(45deg)}.faq-item summary:hover{color:var(--c-primary)}.faq-answer{padding:0 0 1.25rem;color:var(--c-gray);line-height:1.7;font-size:0.95rem}.cta-banner{text-align:center;padding:4.5rem 1.25rem;background:linear-gradient(135deg,var(--c-primary) 0%,var(--c-accent) 100%);color:var(--c-white);border-radius:var(--radius-lg);margin:0 auto;max-width:75rem}.cta-banner h2{color:var(--c-white);margin-bottom:1rem}.cta-banner p{max-width:34rem;margin:0 auto 2rem;font-size:1.05rem;color:hsla(0,0%,100%,.9)}.cta-banner .btn{background:var(--c-white);color:var(--c-primary)}.cta-banner .btn:hover{background:hsla(0,0%,100%,.9)}.page-header{padding:3.5rem 0 2.5rem;background:var(--c-light);text-align:center}.page-header h1{margin-bottom:0.5rem}.page-header p{color:var(--c-gray);font-size:1.05rem;max-width:36rem;margin:0 auto}.service-detail{display:grid;gap:2rem}@media(min-width:752px){.service-detail{grid-template-columns:1fr 1fr;gap:3rem;align-items:start}}.service-detail-text h2{margin-bottom:1rem}.service-detail-text p{color:var(--c-gray);line-height:1.7;margin-bottom:1rem}.service-detail-text ul{margin:1rem 0;padding-left:1.25rem}.service-detail-text li{position:relative;padding:0.35rem 0 0.35rem 1.5rem;color:var(--c-gray);line-height:1.6}.service-detail-text li::before{content:'\2713';position:absolute;left:0;color:var(--c-accent);font-weight:700}.service-detail-img{border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-md)}.service-checklist{display:grid;gap:1rem}@media(min-width:752px){.service-checklist{grid-template-columns:repeat(2,1fr)}}.checklist-card{display:flex;gap:1rem;align-items:flex-start;padding:1.25rem;background:var(--c-white);border-radius:var(--radius);box-shadow:var(--shadow)}.checklist-card .icon{flex-shrink:0;width:2.5rem;height:2.5rem;border-radius:50%;background:var(--c-light);display:flex;align-items:center;justify-content:center;color:var(--c-primary);font-weight:700}.checklist-card h4{margin-bottom:0.25rem}.checklist-card p{font-size:0.9rem;color:var(--c-gray);line-height:1.5}.about-values{display:grid;gap:1.5rem}@media(min-width:752px){.about-values{grid-template-columns:repeat(2,1fr)}}@media(min-width:1040px){.about-values{grid-template-columns:repeat(3,1fr)}}.value-card{padding:2rem;background:var(--c-white);border-radius:var(--radius-lg);box-shadow:var(--shadow);text-align:center}.value-card .icon{display:flex;align-items:center;justify-content:center;width:3.5rem;height:3.5rem;margin:0 auto 1rem;border-radius:50%;background:var(--c-light);color:var(--c-primary);font-size:1.5rem}.value-card h3{font-size:1.1rem;margin-bottom:0.5rem}.value-card p{color:var(--c-gray);font-size:0.9rem;line-height:1.6}.stats-row{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem;text-align:center}@media(min-width:752px){.stats-row{grid-template-columns:repeat(4,1fr)}}.stat-item h3{font-size:clamp(2rem,4vw,2.75rem);color:var(--c-primary);margin-bottom:0.25rem}.stat-item p{color:var(--c-gray);font-size:0.9rem}.contact-grid{display:grid;gap:2rem}@media(min-width:752px){.contact-grid{grid-template-columns:1fr 1fr;gap:3rem}}.contact-info-card{padding:2rem;background:var(--c-light);border-radius:var(--radius-lg)}.contact-info-card h3{margin-bottom:1.5rem}.contact-info-item{display:flex;gap:1rem;align-items:flex-start;margin-bottom:1.25rem}.contact-info-item .icon{flex-shrink:0;width:2.5rem;height:2.5rem;border-radius:50%;background:var(--c-primary);color:var(--c-white);display:flex;align-items:center;justify-content:center;font-size:1rem}.contact-info-item p{font-size:0.95rem;color:var(--c-gray);line-height:1.6}.contact-info-item a{color:var(--c-primary);font-weight:500}.contact-form{padding:2rem;background:var(--c-white);border-radius:var(--radius-lg);box-shadow:var(--shadow)}.contact-form h3{margin-bottom:1.5rem}.form-group{margin-bottom:1.25rem}.form-group label{display:block;margin-bottom:0.35rem;font-weight:500;font-size:0.95rem;color:var(--c-dark)}.form-group input,.form-group textarea,.form-group select{width:100%;padding:0.75rem 1rem;border:1px solid var(--c-gray-light);border-radius:var(--radius);font-family:var(--font-body);font-size:1rem;color:var(--c-dark);background:var(--c-white);transition:border-color var(--transition)}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:var(--c-primary);box-shadow:0 0 0 3px hsla(205,78%,42%,.12)}.form-group textarea{resize:vertical;min-height:7rem}.form-error{color:var(--c-danger);font-size:0.8rem;margin-top:0.25rem;display:none}.policy-content{max-width:48rem;margin:0 auto;padding:3rem 0}.policy-content h1{margin-bottom:1.5rem;text-align:center}.policy-content h2{margin:2rem 0 0.75rem;font-size:1.4rem}.policy-content h3{margin:1.5rem 0 0.5rem;font-size:1.15rem}.policy-content p{color:var(--c-gray);line-height:1.8;margin-bottom:1rem}.policy-content ul{padding-left:1.5rem;margin-bottom:1rem}.policy-content li{padding:0.25rem 0;color:var(--c-gray);line-height:1.7;list-style:disc}.policy-content a{color:var(--c-primary);text-decoration:underline}.thank-you-section{text-align:center;padding:6rem 0;min-height:60vh;display:flex;align-items:center;justify-content:center}.thank-you-section h1{margin-bottom:1rem}.thank-you-section p{color:var(--c-gray);font-size:1.1rem;margin-bottom:2rem;max-width:32rem;margin-left:auto;margin-right:auto}.cookie-banner{position:fixed;bottom:0;left:0;width:100%;background:var(--c-dark);color:var(--c-white);z-index:200;padding:1rem 0;box-shadow:0 -2px 16px hsla(210,24%,16%,.2)}.cookie-inner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem;max-width:75rem;margin:0 auto;padding:0 1.25rem}.cookie-inner p{font-size:0.9rem;flex:1 1 20rem;color:hsla(0,0%,100%,.85)}.cookie-inner a{color:var(--c-accent)}.cookie-actions{display:flex;gap:0.5rem}.cookie-banner .btn-sm{min-height:2.25rem}.cookie-banner .btn-outline{border-color:hsla(0,0%,100%,.3);color:var(--c-white)}.cookie-banner .btn-outline:hover{background:hsla(0,0%,100%,.1)}.cookie-settings-btn{position:fixed;bottom:1rem;left:1rem;width:2.75rem;height:2.75rem;border-radius:50%;background:var(--c-dark);color:var(--c-white);border:none;font-size:1.25rem;cursor:pointer;z-index:199;box-shadow:var(--shadow-md);transition:background var(--transition)}.cookie-settings-btn:hover{background:var(--c-primary)}.reveal{opacity:0;transform:translateY(1.5rem);transition:opacity 0.6s ease,transform 0.6s ease}.reveal.visible{opacity:1;transform:none}.site-footer{background:var(--c-dark);color:hsla(0,0%,100%,.75);padding:4rem 0 0}.footer-grid{display:grid;gap:2rem}@media(min-width:752px){.footer-grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:1040px){.footer-grid{grid-template-columns:2fr 1fr 1fr 1.5fr}}.footer-logo .logo-text{color:var(--c-white)}.footer-logo .logo-tagline{color:hsla(0,0%,100%,.5)}.footer-about{font-size:0.9rem;line-height:1.7;margin-top:0.75rem}.footer-heading{color:var(--c-white);font-size:1rem;margin-bottom:1rem;font-family:var(--font-body);font-weight:600}.footer-links li{margin-bottom:0.5rem}.footer-links a{color:hsla(0,0%,100%,.7);font-size:0.9rem;transition:color var(--transition)}.footer-links a:hover{color:var(--c-white)}.footer-contact p{font-size:0.9rem;margin-bottom:0.5rem;line-height:1.6}.footer-contact a{color:hsla(0,0%,100%,.7)}.footer-contact a:hover{color:var(--c-white)}.footer-contact .reg-number{font-size:0.8rem;color:hsla(0,0%,100%,.4);margin-top:0.75rem}.footer-bottom{margin-top:3rem;padding:1.25rem 0;border-top:1px solid hsla(0,0%,100%,.1);text-align:center;font-size:0.85rem;color:hsla(0,0%,100%,.45)}
