:root{--ink:#0f1729;--muted:#647084;--blue:#1660ab;--blue-dark:#071f45;--blue-mid:#1660ab;--tint:#edf5ff;--line:#dce3eb;--white:#f8fafc;--bs-primary:#1660ab;--bs-primary-rgb:22,96,171}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:80px}body{font-family:Inter,ui-sans-serif,system-ui,sans-serif;color:var(--ink);font-size:16px;line-height:1.5}a{text-decoration:none}.container{max-width:1170px}
.site-header{height:80px;background:rgba(255,255,255,.9);backdrop-filter:blur(16px);border-bottom:1px solid rgba(15,23,41,.07)}.site-header .navbar,.header-inner{height:80px}.header-brand{display:flex;align-items:center;margin-right:1rem;padding:0}.header-logo{display:block;width:165px;height:auto}.brand{display:inline-flex;align-items:center;gap:10px;color:var(--ink);font-size:17px;font-weight:800}.brand:hover{color:var(--ink)}.brand b{color:var(--blue)}.brand-icon{display:inline-grid;place-items:center;width:38px;height:38px;border-radius:10px;background:var(--blue);color:#fff;font-size:21px}.site-header .nav-link{font-size:14px;font-weight:500;color:#596678;padding:.75rem}.site-header .nav-link:hover{color:var(--blue)}.phone-link{font-size:14px;font-weight:600;color:var(--ink)}.phone-link i{color:var(--blue);margin-right:8px}.header-cta{padding:10px 16px;border-radius:9px;font-size:13px;font-weight:600}.btn-primary{background:var(--blue);border-color:var(--blue)}.btn-primary:hover,.btn-primary:focus,.btn-primary:active{background:var(--blue)!important;border-color:var(--blue)!important}
.hero,.contact-section{position:relative;overflow:hidden;color:var(--white);background:linear-gradient(115deg,#081c3f 0%,#0b315f 52%,#0472cc 120%)}.hero{min-height:770px;padding:110px 0 90px;display:flex;align-items:center}.grid-pattern:before{content:"";position:absolute;inset:0;opacity:.07;background-image:linear-gradient(rgba(255,255,255,.5) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.5) 1px,transparent 1px);background-size:64px 64px}.eyebrow{display:flex;align-items:center;justify-content:center;gap:12px;color:var(--blue);font-size:12px;font-weight:700;letter-spacing:.2em;margin-bottom:19px}.eyebrow span{width:24px;height:1px;background:currentColor}.eyebrow-light{justify-content:flex-start;display:inline-flex;padding:3px 12px;border:1px solid rgba(255,255,255,.16);border-radius:999px;color:rgba(248,250,252,.92);letter-spacing:0;font-size:12px}.eyebrow-light span{width:8px;height:8px;border-radius:50%;background:var(--blue);box-shadow:0 0 8px var(--blue)}.hero h1{font-size:60px;line-height:1;font-weight:700;letter-spacing:-.035em;margin:24px 0 22px}.hero h1 em{font-style:normal;color:var(--blue)}.hero-lead{font-size:20px;font-weight:500;margin-bottom:26px}.hero-copy{max-width:580px;color:rgba(248,250,252,.68);font-size:18px;line-height:1.5;margin-bottom:26px}.btn-main{min-height:45px;padding:11px 30px;border-radius:9px;font-size:14px;font-weight:600}.btn-main i{margin-left:8px}.hero .btn-outline-light{background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.23)}.hero-stats{margin-top:38px;padding-top:22px;border-top:1px solid rgba(255,255,255,.18)}.hero-stats dt{font-size:30px;line-height:1.2}.hero-stats dd{color:rgba(248,250,252,.6);font-size:12px;margin-top:4px}.hero-visual{position:relative;max-width:510px;margin-left:auto;padding:12px;border-radius:18px;background:rgba(255,255,255,.11);border:1px solid rgba(255,255,255,.22)}.image-frame{overflow:hidden;border-radius:14px}.image-frame img{width:100%;height:auto;display:block;filter:grayscale(1)}.monitor-card{position:absolute;left:-20px;bottom:-20px;display:flex;align-items:center;gap:12px;width:206px;padding:15px;background:#fff;color:var(--ink);border-radius:13px;box-shadow:0 14px 35px rgba(0,0,0,.22)}.monitor-card .mini-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:10px;color:var(--blue);background:#e8f3ff}.monitor-card strong,.monitor-card small{display:block}.monitor-card strong{font-size:14px}.monitor-card small{font-size:11px;color:var(--muted)}
.section-space{padding:108px 0}.section-tint{background:var(--tint)}.section-heading{max-width:700px;margin:0 auto 55px}.section-heading h2{font-size:36px;line-height:1.15;font-weight:700;letter-spacing:-.03em;margin-bottom:15px}.section-heading p{font-size:18px;color:var(--muted);margin:0}.info-card,.model-card{position:relative;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 10px 25px rgba(15,23,41,.04)}.info-card{padding:24px}.card-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:11px;background:#e9f4ff;color:var(--blue);font-size:23px}.info-card h3,.model-card h3,.process-card h3{font-size:18px;font-weight:600;margin:20px 0 10px}.info-card p,.model-card p,.process-card p{color:var(--muted);font-size:14px;line-height:1.6;margin:0}.service-card{min-height:230px}.service-no{position:absolute;right:20px;top:11px;color:#eaf4ff;font-size:48px;font-weight:700}.model-row{padding-top:8px}.model-card{padding:28px;display:flex;flex-direction:column;min-height:490px}.model-card .model-label{color:var(--blue);font-size:12px;letter-spacing:.22em;font-weight:700;margin-top:18px}.model-card h3{font-size:19px;margin:4px 0 12px}.model-card hr{margin:26px 0 20px;border-color:var(--line);opacity:1}.model-card ul{padding:0;margin:0 0 24px;list-style:none}.model-card li{font-size:14px;margin:12px 0;padding-left:25px}.model-card li:before{content:"✓";color:var(--blue);position:absolute;margin-left:-25px}.model-btn{margin-top:auto;border:1px solid var(--line);font-size:14px;font-weight:500;padding:9px}.model-btn i{margin-left:9px}.recommended{border-color:var(--blue);box-shadow:0 14px 35px rgba(22,96,171,.13)}.recommended .recommended-badge{position:absolute;left:50%;top:0;transform:translate(-50%,-50%);background:var(--blue);color:#fff;border-radius:999px;padding:5px 18px;font-size:11px;font-weight:700}.recommended .card-icon.active{background:var(--blue);color:#fff}
.process-section{padding-bottom:100px}.process-row{position:relative}.process-row:before{content:"";position:absolute;top:30px;left:11%;right:11%;height:1px;background:#cfe0f2}.process-card{position:relative;text-align:center}.process-icon{position:relative;z-index:1;margin:0 auto 20px;width:60px;height:60px;display:grid;place-items:center;border-radius:50%;background:var(--blue);color:#fff;font-size:23px;border:7px solid var(--tint)}.process-icon span{position:absolute;right:-6px;top:-8px;display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#fff;color:var(--blue);font-size:11px;font-weight:700;box-shadow:0 2px 8px rgba(15,23,41,.16)}.process-card h3{margin-top:0}.process-card p{padding:0 8px}
.contact-section{padding:100px 0}.contact-copy h2{font-size:42px;line-height:1.15;font-weight:700;letter-spacing:-.035em;max-width:520px;margin:17px 0 18px}.contact-copy>p{color:rgba(248,250,252,.72);font-size:17px;max-width:540px}.contact-list{display:grid;gap:14px;margin-top:32px;max-width:550px}.contact-list>a,.contact-list>div{display:grid;grid-template-columns:44px 1fr;grid-template-rows:auto auto;column-gap:14px;padding:15px 18px;border-radius:10px;border:1px solid rgba(255,255,255,.13);background:rgba(255,255,255,.045);color:#fff}.contact-list span{grid-row:1/3;display:grid;place-items:center;background:rgba(22,96,171,.16);color:var(--blue);border-radius:9px;font-size:19px}.contact-list small{font-size:10px;color:rgba(248,250,252,.6)}.contact-list strong{font-size:15px;font-weight:500}.office-map-card{position:relative;min-height:430px;overflow:hidden;border:1px solid rgba(255,255,255,.26);border-radius:16px;background:#eaf3fc;box-shadow:0 18px 45px rgba(0,0,0,.2)}.office-map-card:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,transparent 50%,rgba(7,31,69,.22) 100%)}.office-map-card>img{display:block;width:100%;height:430px;object-fit:cover}.map-address-card{position:absolute;z-index:2;left:22px;bottom:24px;display:flex;align-items:center;gap:13px;max-width:330px;padding:14px 17px;border-radius:12px;background:rgba(255,255,255,.94);color:var(--ink);box-shadow:0 10px 28px rgba(7,31,69,.18);backdrop-filter:blur(8px)}.map-address-icon{display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;border-radius:10px;background:#e8f1fa;color:var(--blue);font-size:20px}.map-address-card small,.map-address-card strong{display:block}.map-address-card small{margin-bottom:2px;color:var(--blue);font-size:9px;font-weight:700;letter-spacing:.13em}.map-address-card strong{font-size:14px;font-weight:600}.map-open-link{position:absolute;z-index:3;right:18px;top:18px;padding:10px 14px;border-radius:9px;background:var(--blue);color:#fff;font-size:12px;font-weight:600;box-shadow:0 8px 22px rgba(22,96,171,.24)}.map-open-link:hover{color:#fff}.map-open-link i{margin-left:6px}.map-attribution{position:absolute;z-index:2;right:15px;bottom:10px;color:rgba(15,23,41,.55);font-size:9px}
.site-footer{background:#0d1e40;color:#fff;padding:48px 0 32px}.footer-logo-link{display:inline-block;margin-bottom:14px}.footer-logo{display:block;width:170px;height:auto}.site-footer p{color:rgba(248,250,252,.62);font-size:13px;line-height:1.7}.footer-contacts{display:flex;flex-direction:column;align-items:flex-end;gap:12px;padding-top:8px}.footer-contacts a,.footer-contacts span{color:rgba(248,250,252,.72);font-size:13px}.footer-contacts i{color:var(--blue);margin-right:8px}.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid rgba(255,255,255,.11);margin-top:36px;padding-top:24px;color:rgba(248,250,252,.55);font-size:11px}
.footer-company-data{gap:5px;text-align:right}.site-footer .footer-company-data p{margin:0;color:rgba(248,250,252,.76)}.footer-company-data strong{color:#fff;font-weight:600}.site-footer .footer-register{max-width:540px;margin-top:6px;color:rgba(248,250,252,.58)}
.footer-green-company{display:flex;align-items:center;gap:20px;max-width:560px}.site-footer .footer-green-company p{max-width:365px;margin:0}.footer-green-company p a{color:#fff;font-weight:600;text-decoration:underline;text-decoration-color:var(--blue);text-underline-offset:3px}.footer-green-company p a:hover{color:#b8d8f5}.footer-green-company img{display:block;flex:0 0 auto;width:auto;height:66px;padding:4px;border-radius:7px;background:#fff}
@media(max-width:991.98px){.site-header,.site-header .navbar,.header-inner{height:auto;min-height:72px}.header-logo{width:150px}.site-header .navbar-collapse{background:#fff;padding:12px 0 22px}.header-actions{display:grid;gap:14px!important}.header-cta{justify-self:start}.hero{padding:80px 0}.hero h1{font-size:50px}.hero-visual{margin:0 auto}.process-row:before{display:none}.model-card{min-height:auto}.contact-copy h2{font-size:36px}.footer-contacts{align-items:flex-start}.footer-company-data{text-align:left}}
@media(max-width:767.98px){.section-space{padding:78px 0}.hero{min-height:auto;padding:72px 0 85px}.hero h1{font-size:42px}.hero-lead{font-size:18px}.hero-copy{font-size:16px}.hero-stats dt{font-size:24px}.hero-visual{margin-top:12px}.monitor-card{left:10px;bottom:-28px}.section-heading{margin-bottom:38px}.section-heading h2{font-size:30px}.section-heading p{font-size:16px}.contact-section{padding:78px 0}.contact-copy h2{font-size:34px}.office-map-card{min-height:350px}.office-map-card>img{height:350px}.map-address-card{left:14px;right:14px;bottom:20px;max-width:none}.map-open-link{right:14px;top:14px}.map-attribution{display:none}.footer-bottom{flex-direction:column;gap:10px}.model-row{gap:22px 0}}
@media(max-width:575.98px){.footer-green-company{align-items:flex-start;flex-direction:column}.footer-green-company img{width:auto;height:66px}}
@media(max-width:420px){.hero h1{font-size:37px}.btn-main{width:100%}.hero-stats dd{font-size:10px}.monitor-card{position:relative;left:0;bottom:0;margin:-10px auto 0}.contact-form{padding:22px}.section-heading h2{font-size:28px}}

/* Contact map: the map is anchored directly to the address strip below it. */
.office-map-card{display:flex;flex-direction:column;min-height:430px}
.office-map-card:after{content:none}
.map-visual{position:relative;height:430px;overflow:hidden;flex:1 1 auto}
.map-visual>img{display:block;width:100%;height:100%;object-fit:cover;object-position:center bottom}
.map-address-card{position:static;z-index:auto;left:auto;right:auto;bottom:auto;flex:1 0 90px;max-width:none;min-height:90px;padding:16px 22px;border-radius:0;background:#fff;box-shadow:none;backdrop-filter:none}
.map-attribution{right:12px;bottom:8px;color:rgba(15,23,41,.62)}
@media(min-width:992px){.contact-section .office-map-card{transform:translateY(34px)}}
@media(max-width:767.98px){.office-map-card{min-height:350px}.map-visual{height:350px}.map-address-card{position:static;left:auto;right:auto;bottom:auto;max-width:none;min-height:90px;padding:15px 17px}}
