:root{--blue:#55bbed;--blue-dark:#1685b8;--navy:#12283d;--ink:#1a2938;--muted:#667789;--pale:#edf8fc;--line:#dceaf1;--white:#fff;--radius:22px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:"DM Sans",sans-serif;color:var(--ink);background:#fff;overflow-x:hidden}img{max-width:100%;display:block}a{color:inherit}.container{width:min(1160px,calc(100% - 32px));margin:auto}.site-header{position:fixed;z-index:50;top:0;left:0;width:100%;background:rgba(255,255,255,.92);backdrop-filter:blur(15px);border-bottom:1px solid rgba(210,230,240,.8)}.nav{height:74px;display:flex;align-items:center;justify-content:space-between}.brand img{width:102px;height:64px;object-fit:contain}.menu-btn{width:44px;height:44px;border:0;background:var(--pale);border-radius:50%;display:grid;place-content:center;gap:6px}.menu-btn span{display:block;width:20px;height:2px;background:var(--navy);transition:.25s}.nav-links{display:none;position:absolute;top:74px;left:0;width:100%;background:#fff;padding:20px 24px 28px;box-shadow:0 20px 30px rgba(15,39,57,.12)}.nav-links.open{display:grid;gap:18px}.nav-links a{text-decoration:none;font-weight:600}.nav-cta{color:#fff!important;background:var(--navy);padding:13px 19px;border-radius:999px;text-align:center}.hero{padding:118px 0 54px;background:linear-gradient(145deg,#f9fcfd 25%,#e9f8fe 100%);overflow:hidden}.hero-grid{display:grid;gap:44px}.pill,.kicker{text-transform:uppercase;letter-spacing:.13em;color:var(--blue-dark);font-weight:800;font-size:.74rem}.pill{display:flex;align-items:center;gap:8px;letter-spacing:.06em;text-transform:none;background:#fff;border:1px solid #cbeaf7;width:max-content;padding:8px 13px;border-radius:999px}.pill span{width:7px;height:7px;background:#2fc482;border-radius:50%;box-shadow:0 0 0 4px #dcf7ec}.hero h1,.section h2{font-family:Manrope,sans-serif;color:var(--navy);letter-spacing:-.045em}.hero h1{font-size:clamp(2.65rem,10vw,5.3rem);line-height:1.01;margin:20px 0}.hero h1 em{font-style:normal;color:var(--blue-dark)}.hero-copy>p{font-size:1.08rem;color:var(--muted);line-height:1.7;margin:0 0 27px}.hero-actions{display:flex;flex-wrap:wrap;gap:11px}.btn{min-height:52px;padding:0 21px;border-radius:999px;text-decoration:none;font-weight:800;display:inline-flex;align-items:center;justify-content:center;gap:18px;border:1px solid var(--line)}.primary{background:var(--navy);color:#fff;border-color:var(--navy)}.primary span,.form-btn span{font-size:1.2rem}.ghost{background:#fff}.trust{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:35px}.trust div{padding-right:9px;border-right:1px solid #c8e2ed}.trust div:last-child{border:0}.trust strong{display:block;color:var(--navy);font:800 1.15rem Manrope}.trust span{font-size:.7rem;color:var(--muted);line-height:1.3;display:block}.hero-visual{position:relative;padding:0 9px 18px}.hero-visual>img{height:420px;width:100%;object-fit:cover;border-radius:110px 22px 90px 22px;box-shadow:0 25px 55px rgba(22,89,118,.2)}.floating-card{position:absolute;bottom:0;left:0;background:#fff;border-radius:16px;box-shadow:0 15px 35px rgba(20,63,82,.16);padding:14px 17px;display:flex;gap:11px;align-items:center}.floating-card b{width:35px;height:35px;background:#dff7ea;color:#168d58;border-radius:50%;display:grid;place-items:center}.floating-card span{display:grid;font-size:.74rem;color:var(--muted)}.floating-card strong{font-size:.9rem;color:var(--ink)}.spark{position:absolute;background:var(--blue);border-radius:50%}.s1{width:23px;height:23px;right:0;top:30px}.s2{width:10px;height:10px;right:-5px;top:65px}.logos{border-block:1px solid var(--line);background:#fff}.qualities{min-height:78px;display:flex;align-items:center;justify-content:space-between;overflow:hidden;gap:28px;color:#8394a1;text-transform:uppercase;letter-spacing:.14em;font-size:.67rem;font-weight:800}.qualities i{min-width:4px;height:4px;background:var(--blue);border-radius:50%}.section{padding:78px 0}.section-head{display:grid;gap:18px;margin-bottom:32px}.section h2{font-size:clamp(2rem,7vw,3.7rem);line-height:1.08;margin:10px 0}.section-head p,.about-copy>p,.gallery-title p{color:var(--muted);line-height:1.7;margin:0}.service-grid{display:grid;gap:14px}.service{padding:25px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;transition:.25s}.service:hover{transform:translateY(-3px);box-shadow:0 15px 35px rgba(27,107,142,.1)}.service.featured{background:var(--navy);color:#fff;border-color:var(--navy)}.icon{width:48px;height:48px;border-radius:15px;display:grid;place-items:center;background:var(--pale);color:var(--blue-dark);font-size:1.35rem}.featured .icon{background:rgba(255,255,255,.12);color:#8dd8fa}.service h3{font:800 1.25rem Manrope;margin:20px 0 8px}.service p{color:var(--muted);line-height:1.55;margin:0 0 20px}.featured p{color:#bfd0dd}.service a{text-decoration:none;font-weight:800;font-size:.85rem;color:var(--blue-dark)}.featured a{color:#82d5fb}.about{background:var(--pale)}.about-grid{display:grid;gap:45px}.collage{position:relative;padding:0 18px 35px 0}.main-img{height:440px;width:100%;object-fit:cover;border-radius:20px 90px 20px 20px}.small-img{position:absolute;right:0;bottom:0;width:44%;padding:7px;background:#fff;border-radius:18px;box-shadow:0 14px 35px rgba(20,74,97,.15)}.small-img img{height:145px;width:100%;object-fit:cover;border-radius:13px}.years{position:absolute;left:-4px;bottom:18px;background:var(--blue);color:#fff;width:112px;height:112px;border-radius:50%;display:flex;align-items:center;justify-content:center;gap:7px}.years strong{font:800 2rem Manrope}.years span{font-size:.7rem;line-height:1.1}.about-copy ul{list-style:none;margin:28px 0;padding:0;display:grid;gap:18px}.about-copy li{display:flex;gap:12px}.about-copy li>b{min-width:28px;height:28px;border-radius:50%;background:#fff;color:#1c9d66;display:grid;place-items:center}.about-copy li span{display:grid;color:var(--muted);font-size:.88rem}.about-copy li strong{color:var(--ink);font-size:1rem;margin-bottom:3px}.text-link{text-decoration:none;font-weight:800;border-bottom:2px solid var(--blue);padding-bottom:5px}.gallery-title{margin-bottom:26px}.photo-grid{display:grid;gap:14px}.photo-grid figure{margin:0;height:310px;position:relative;border-radius:20px;overflow:hidden}.photo-grid img{width:100%;height:100%;object-fit:cover;transition:.4s}.photo-grid figure:hover img{transform:scale(1.04)}.photo-grid figure:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 50%,rgba(7,26,39,.65))}.photo-grid figcaption{position:absolute;z-index:1;bottom:20px;left:20px;color:#fff;font:800 1rem Manrope}.contact{padding-top:30px}.contact-card{background:var(--navy);color:#fff;border-radius:28px;padding:32px 22px;display:grid;gap:35px;position:relative;overflow:hidden}.contact-card:after{content:"";position:absolute;width:270px;height:270px;border:55px solid rgba(85,187,237,.12);border-radius:50%;left:-150px;bottom:-190px}.contact-copy,.quote-form{position:relative;z-index:1}.kicker.light{color:#78d3fb}.contact h2{color:#fff}.contact-copy>p{color:#bfd0dd;line-height:1.7}.contact-lines{display:grid;gap:12px;margin-top:25px}.contact-lines a,.contact-lines span{text-decoration:none;color:#e6f2f7}.quote-form{background:#fff;color:var(--ink);padding:22px;border-radius:20px;display:grid;gap:14px}.quote-form label{display:grid;gap:6px;font-size:.78rem;font-weight:800}.quote-form input,.quote-form select,.quote-form textarea{width:100%;border:1px solid var(--line);border-radius:11px;padding:13px;font:inherit;color:var(--ink);background:#f9fbfc}.quote-form input:focus,.quote-form select:focus,.quote-form textarea:focus{outline:2px solid #9bdcf8;border-color:transparent}.form-btn{border:0;background:var(--blue-dark);color:#fff}.quote-form small{color:#8594a2;text-align:center}.form-success{color:#148554;font-weight:700;text-align:center;margin:0}footer{padding:55px 0 25px;background:#f5f9fb}.footer-grid{display:grid;gap:32px}.footer-grid>div{display:grid;gap:9px;align-content:start}.footer-grid img{width:115px}.footer-grid p,.footer-grid span{color:var(--muted);font-size:.9rem}.footer-grid a{text-decoration:none;color:var(--muted)}.legal{border-top:1px solid var(--line);margin-top:35px;padding-top:22px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;color:var(--muted);font-size:.8rem}.legal a{text-decoration:none}
@media(min-width:760px){.menu-btn{display:none}.nav-links{display:flex;position:static;width:auto;background:transparent;padding:0;box-shadow:none;align-items:center;gap:28px;font-size:.9rem}.hero{padding:150px 0 85px}.hero-grid{grid-template-columns:1.02fr .98fr;align-items:center}.hero-visual>img{height:580px}.trust strong{font-size:1.55rem}.trust span{font-size:.75rem}.section{padding:110px 0}.section-head{grid-template-columns:1.2fr .8fr;align-items:end}.service-grid{grid-template-columns:repeat(3,1fr)}.about-grid{grid-template-columns:.95fr 1.05fr;align-items:center;gap:90px}.photo-grid{grid-template-columns:1.5fr 1fr 1fr}.contact-card{grid-template-columns:1fr .95fr;padding:60px;gap:70px}.footer-grid{grid-template-columns:2fr 1fr 1fr}.gallery-title{display:flex;align-items:end;justify-content:space-between}.section-head p{padding-bottom:15px}}
@media(min-width:1050px){.hero-copy>p{max-width:520px}.hero-visual{padding-right:28px}.main-img{height:580px}}
.brand img{width:145px;height:56px;object-fit:contain}.footer-grid img{width:170px;height:auto}
.contact-card{align-items:center}.call-panel{position:relative;z-index:1;isolation:isolate;min-height:370px;background:linear-gradient(145deg,rgba(255,255,255,.12),rgba(85,187,237,.08));color:#fff;padding:34px 24px;border:1px solid rgba(255,255,255,.16);border-radius:24px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;overflow:hidden}.call-panel:before{content:"";position:absolute;z-index:-1;width:210px;height:210px;border-radius:50%;background:rgba(85,187,237,.12);top:-125px;right:-85px}.call-icon{width:58px;height:58px;border-radius:18px;display:grid;place-items:center;margin-bottom:20px;background:var(--blue);color:var(--navy);font-size:1.35rem;transform:rotate(-4deg);box-shadow:0 12px 28px rgba(0,0,0,.16)}.call-label{color:#84d8fb;font-size:.68rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}.call-panel h3{margin:10px 0 12px;font:700 1.25rem Manrope,sans-serif}.phone-number{font:800 clamp(1.75rem,7vw,2.35rem)/1 Manrope,sans-serif;color:#fff;letter-spacing:-.035em;text-decoration:none;margin:0 0 25px}.call-now{width:min(100%,285px);background:#fff;color:var(--navy);border:0;font-size:.95rem;box-shadow:0 12px 30px rgba(0,0,0,.12)}.call-now span{font-size:1.15rem;color:var(--blue-dark)}.call-panel small{max-width:310px;margin-top:16px;color:#aebfca;line-height:1.45;text-align:center}
@media(min-width:760px){.call-panel{padding:42px 34px}.phone-number{font-size:2.2rem}}
