:root{--blue:#2563EB;--teal:#14B8A6;--white:#fff;--gray:#F3F4F6;--orange:#F97316;--slate:#1E293B;--muted:#6B7280;--line:#E2E8F0;--dark:#0F172A;--heading:Arial,Helvetica,sans-serif;--body:Inter,Arial,Helvetica,sans-serif;--radius:2px;--shadow:0 18px 50px rgba(15,23,42,.12);--ease:cubic-bezier(.23,1,.32,1)}
*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:16px}body{font-family:var(--body);color:var(--slate);line-height:1.6;overflow-x:hidden}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}button,input,textarea{font:inherit}button{cursor:pointer}.container{width:min(1180px,calc(100% - 48px));margin:auto}.skip{position:absolute;left:20px;top:-60px;background:var(--blue);color:#fff;padding:12px 18px;z-index:2000}.skip:focus{top:15px}.site-header{position:sticky;top:0;z-index:1000;background:#fff;border-bottom:2px solid var(--blue);transition:.25s var(--ease)}.site-header.scrolled{box-shadow:0 7px 24px rgba(15,23,42,.12)}.header-inner{height:78px;display:flex;align-items:center;justify-content:space-between}.brand img{width:235px;height:auto}.nav{display:flex;align-items:center;gap:28px}.nav ul{list-style:none;display:flex;gap:26px}.nav a{font-size:.9rem;font-weight:700;letter-spacing:.02em}.nav a:hover{color:var(--blue)}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:13px 22px;border-radius:var(--radius);font-weight:800;letter-spacing:.02em;transition:.25s var(--ease);gap:9px}.btn-blue{background:var(--blue);color:#fff;box-shadow:0 8px 20px rgba(37,99,235,.22)}.btn-blue:hover{background:#1D4ED8;transform:translateY(-3px);box-shadow:0 14px 28px rgba(37,99,235,.3)}.btn-orange{background:var(--orange);color:#fff}.btn-orange:hover{background:#EA580C;transform:translateY(-3px)}.btn-light{background:#fff;color:var(--slate);border:1px solid rgba(255,255,255,.5)}.btn-light:hover{color:var(--blue);transform:translateY(-3px)}.mobile-toggle{display:none;width:46px;height:46px;border:1px solid var(--line);background:#fff;align-items:center;justify-content:center;flex-direction:column;gap:5px}.mobile-toggle span{width:22px;height:2px;background:var(--slate)}.mobile-menu{display:none}
.hero{min-height:90vh;position:relative;display:flex;align-items:center;overflow:hidden;background:var(--dark);color:#fff}.hero picture,.hero-bg,.hero-overlay{position:absolute;inset:0;width:100%;height:100%}.hero-bg{object-fit:cover;object-position:center}.hero-overlay{background:linear-gradient(90deg,rgba(15,23,42,.95) 0%,rgba(15,23,42,.73) 42%,rgba(15,23,42,.13) 100%)}.hero-content{position:relative;z-index:2;padding:90px 0;max-width:720px}.eyebrow{display:inline-flex;align-items:center;color:#99F6E4;font-size:.82rem;font-weight:800;letter-spacing:.15em;text-transform:uppercase;margin-bottom:22px}.eyebrow:before{content:'';height:3px;width:38px;background:var(--orange);margin-right:12px}.hero h1{font-size:clamp(2.7rem,6vw,5.4rem);line-height:1.03;letter-spacing:-.07em;margin-bottom:25px}.hero p{font-size:1.15rem;color:#E2E8F0;max-width:630px;margin-bottom:32px}.actions{display:flex;gap:14px;flex-wrap:wrap}.trust{margin-top:30px;font-size:.88rem;color:#CBD5E1;font-weight:700;letter-spacing:.04em}.shape{position:absolute;right:-3vw;bottom:-9vw;width:330px;height:330px;border:1px solid rgba(20,184,166,.5);transform:rotate(45deg);z-index:1}
.section{padding:100px 0}.section-head{max-width:700px;margin-bottom:48px}.section-head.center{margin-left:auto;margin-right:auto;text-align:center}.kicker{color:var(--blue);font-size:.78rem;text-transform:uppercase;letter-spacing:.18em;font-weight:900;margin-bottom:12px}.section h2{font-size:clamp(2rem,4vw,3.3rem);line-height:1.05;letter-spacing:-.055em;margin-bottom:16px}.section-head p{color:var(--muted);font-size:1.08rem}.services{background:var(--gray)}.service-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}.service-card{position:relative;background:#fff;border-left:5px solid var(--blue);padding:34px 34px 32px;min-height:250px;box-shadow:0 8px 25px rgba(15,23,42,.05);transition:.3s var(--ease);overflow:hidden}.service-card:nth-child(2){border-color:var(--teal)}.service-card:nth-child(3){border-color:var(--orange)}.service-card:hover{transform:translateY(-8px);box-shadow:var(--shadow)}.service-icon{width:52px;height:52px;display:grid;place-items:center;background:#EFF6FF;color:var(--blue);margin-bottom:24px}.service-card:nth-child(2) .service-icon{background:#F0FDFA;color:var(--teal)}.service-card:nth-child(3) .service-icon{background:#FFF7ED;color:var(--orange)}.service-card h3{font-size:1.3rem;letter-spacing:-.02em;margin-bottom:10px}.service-card p{color:var(--muted)}.card-number{position:absolute;right:22px;top:15px;font-size:4.8rem;line-height:1;font-weight:900;color:#F1F5F9}
.gallery{background:#fff}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.gallery-item{position:relative;aspect-ratio:4/3;overflow:hidden;background:var(--dark)}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:.45s var(--ease)}.gallery-item:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(15,23,42,.9),transparent 65%);opacity:.9}.gallery-item:hover img{transform:scale(1.08)}.gallery-caption{position:absolute;z-index:1;left:20px;right:20px;bottom:18px;color:#fff}.gallery-caption small{display:block;color:#99F6E4;font-size:.7rem;text-transform:uppercase;font-weight:900;letter-spacing:.14em;margin-bottom:4px}.gallery-caption h3{font-size:1.1rem}
.about{background:var(--slate);color:#fff;position:relative;overflow:hidden}.about:after{content:'';position:absolute;right:-150px;top:-90px;width:360px;height:360px;border:50px solid rgba(37,99,235,.28);transform:rotate(45deg)}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:76px;align-items:center;position:relative;z-index:1}.about-image{position:relative;transform:skewY(-3deg)}.about-image img{width:100%;aspect-ratio:4/3;object-fit:cover;transform:skewY(3deg);border:9px solid #fff}.about .kicker{color:#5EEAD4}.about h2{color:#fff}.about p{color:#CBD5E1}.benefits{list-style:none;display:grid;gap:14px;margin:25px 0}.benefits li{display:flex;gap:12px;align-items:flex-start;color:#F8FAFC}.check{display:grid;place-items:center;width:21px;height:21px;background:var(--teal);color:var(--dark);font-weight:900;flex:0 0 auto}
.testimonials{background:var(--gray)}.testimonial-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.testimonial{background:#fff;border-top:4px solid var(--blue);padding:29px;box-shadow:0 8px 22px rgba(15,23,42,.05)}.testimonial:nth-child(2){border-color:var(--teal)}.testimonial:nth-child(3){border-color:var(--orange)}.stars{color:var(--orange);letter-spacing:3px;margin-bottom:18px}.quote{font-size:1.03rem;color:var(--slate);font-weight:600;margin-bottom:20px}.author{font-size:.85rem;color:var(--muted);font-weight:800}.sample{display:block;color:var(--muted);font-size:.72rem;font-weight:400;margin-top:4px}
.contact{background:#fff}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px}.contact-details{display:grid;gap:18px;margin:28px 0}.detail{display:flex;gap:14px}.detail-icon{width:42px;height:42px;background:#EFF6FF;color:var(--blue);display:grid;place-items:center;flex:0 0 auto}.detail strong{display:block;font-size:.73rem;text-transform:uppercase;letter-spacing:.12em;color:var(--muted)}.detail span,.detail a{font-weight:700}.detail a:hover{color:var(--blue)}.map{margin-top:28px;border:1px solid var(--line)}.form-card{background:var(--slate);padding:34px;color:#fff;box-shadow:var(--shadow)}.form-card h3{font-size:1.65rem;margin-bottom:8px}.form-card>p{color:#CBD5E1;margin-bottom:24px}.form-group{margin-bottom:16px}.form-label{display:block;font-size:.88rem;font-weight:800;margin-bottom:7px}.required{color:#FB923C}.form-control{width:100%;background:#fff;color:var(--slate);border:2px solid transparent;padding:13px 14px;border-radius:var(--radius);min-height:48px}.form-control:focus{outline:3px solid rgba(20,184,166,.6);border-color:var(--teal)}textarea.form-control{min-height:115px;resize:vertical}#form-success{background:#CCFBF1;color:#115E59;padding:18px;margin-top:16px;font-weight:800;text-align:center}.error-message{color:#FDBA74!important;font-size:.82rem;margin-top:5px}
footer{background:var(--dark);color:#CBD5E1;padding:64px 0 24px;border-top:4px solid var(--teal)}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px;margin-bottom:45px}.footer-brand h3{color:#fff;font-size:1.5rem;margin-bottom:8px}.footer-brand p{color:#94A3B8;max-width:400px}.footer h4{color:#fff;margin-bottom:16px}.footer-links{list-style:none;display:grid;gap:10px}.footer-links a:hover{color:#fff}.footer-bottom{border-top:1px solid #334155;padding-top:20px;display:flex;justify-content:space-between;gap:20px;font-size:.85rem}.top{color:#5EEAD4;font-weight:800}.top:hover{color:#fff}
@media(max-width:1024px){.nav ul{gap:14px}.nav{gap:14px}.about-grid,.contact-grid{gap:35px}.footer-grid{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}}@media(max-width:768px){.container{width:min(100% - 32px,600px)}.nav{display:none}.mobile-toggle{display:flex}.mobile-menu{display:none;position:absolute;top:78px;left:0;right:0;background:#fff;padding:20px 24px 24px;box-shadow:var(--shadow)}.mobile-menu.open{display:block}.mobile-menu ul{display:grid;gap:4px;list-style:none}.mobile-menu a{display:block;padding:12px 0;font-weight:800;border-bottom:1px solid var(--line)}.mobile-menu .btn{width:100%;margin-top:14px}.hero{min-height:82vh}.hero-content{padding:65px 0}.hero h1{font-size:clamp(2.5rem,12vw,4.2rem)}.section{padding:72px 0}.service-grid,.about-grid,.contact-grid{grid-template-columns:1fr}.gallery-grid{grid-template-columns:repeat(2,1fr)}.testimonial-grid{grid-template-columns:1fr}.about-image{max-width:620px}.footer-grid{grid-template-columns:1fr}.footer-bottom{flex-direction:column}}@media(max-width:480px){.gallery-grid{grid-template-columns:1fr}.actions .btn{width:100%}.form-card{padding:25px 20px}.footer-bottom{align-items:flex-start}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--orange);outline-offset:3px}
