:root{--bg:#132943;--bg-soft:#1f3e61;--panel:rgba(24,51,82,.76);--surface:#f5f7fb;--surface-2:#e9eef5;--surface-3:#dde5ef;--text:#f3f6fb;--text-dark:#111c2d;--muted:#94a3b8;--muted-dark:#556274;--line:rgba(17,28,45,.08);--accent:#f3161c;--accent-soft:rgba(243,22,28,.18);--radius-xl:34px;--radius-lg:24px;--radius-md:18px;--shadow-lg:0 30px 80px rgba(12,28,50,.24);--shadow-md:0 18px 40px rgba(15,23,42,.08);--container:min(1240px, calc(100vw - 48px) )}*,:after,:before{box-sizing:border-box}html{scroll-behavior:smooth}body{background:radial-gradient(circle at top left,rgba(243,22,28,.14),transparent 26%),radial-gradient(circle at 85% 15%,rgba(118,188,255,.16),transparent 22%),linear-gradient(180deg,#152e4b,#214367 33%,#f5f7fb 0,#f5f7fb);color:var(--text);font-family:Manrope,sans-serif;margin:0;min-height:100vh}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}.page-shell{overflow:clip}.container{margin:0 auto;width:var(--container)}.site-header{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:linear-gradient(180deg,#193250e0,#142841c2);border-bottom:1px solid rgba(179,217,255,.13);position:sticky;top:0;z-index:30}.header-inner{align-items:center;display:flex;gap:24px;justify-content:space-between;min-height:84px}.brand-logo{width:168px}.nav{color:#f3f6fbc7;display:flex;font-size:15px;gap:26px}.header-cta:hover,.nav a:hover{color:#fff}.button-primary,.button-secondary,.header-cta,.map-link{align-items:center;border-radius:999px;display:inline-flex;font-weight:700;justify-content:center;min-height:48px;padding:0 22px;transition:transform .28s ease,background-color .28s ease,border-color .28s ease,color .28s ease}.button-primary,.header-cta,.map-link{background:linear-gradient(135deg,#ff353a,#d31016);box-shadow:0 16px 30px #f3161c38;color:#fff}.button-secondary{background:linear-gradient(180deg,#6eabeb1f,#ffffff0a);border:1px solid rgba(179,217,255,.18);color:#fff}.button-primary:hover,.button-secondary:hover,.header-cta:hover,.map-link:hover{transform:translateY(-2px)}.hero{padding:80px 0 104px;position:relative}.hero-grid{align-items:center;display:grid;gap:36px;grid-template-columns:1.04fr .96fr}.hero-copy{position:relative;z-index:1}.eyebrow{color:#ff8689;font-size:12px;font-weight:800;letter-spacing:.24em;margin:0 0 18px;text-transform:uppercase}.hero h1,.section-heading h2{font-family:Space Grotesk,sans-serif;letter-spacing:-.04em;margin:0}.hero h1{font-size:clamp(52px,8vw,92px);line-height:.92;max-width:12ch;text-wrap:balance}.hero h1 span{color:#f3f6fbd1;display:block}.hero-text,.section-text{color:#f3f6fbc2;font-size:19px;line-height:1.72;margin:24px 0 0;max-width:720px}.hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:32px}.hero-panel{background:linear-gradient(180deg,#a0ccf71a,#ffffff06),var(--panel);border:1px solid rgba(179,217,255,.14);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);padding:30px;position:relative}.hero-logo{filter:drop-shadow(0 20px 40px rgba(0,0,0,.2));margin-bottom:28px;width:min(100%,460px)}.hero-panel-grid{display:grid;gap:14px}.metric-card{background:linear-gradient(180deg,#88bef51c,#ffffff0b);border:1px solid rgba(179,217,255,.14);border-radius:22px;display:grid;gap:16px;grid-template-columns:84px 1fr;padding:18px}.metric-card span{color:#ff5a5e;font-family:Space Grotesk,sans-serif;font-size:28px}.metric-card p{color:#f3f6fbc7;line-height:1.65;margin:0}.hero-glow{border-radius:999px;filter:blur(80px);pointer-events:none;position:absolute}.hero-glow-left{background:#f3161c2e;height:260px;left:-80px;top:40px;width:260px}.hero-glow-right{background:#64b2ff2e;height:340px;right:-80px;top:100px;width:340px}.section{color:var(--text-dark);padding:100px 0}.section-about{background:radial-gradient(circle at 12% 18%,rgba(243,22,28,.06),transparent 24%),linear-gradient(180deg,#f7f9fc,#eef3f8)}.section-soft{background:linear-gradient(180deg,rgba(223,229,238,.22),transparent 28%),#f5f7fb}.section-contrast{background:radial-gradient(circle at left,rgba(243,22,28,.1),transparent 24%),radial-gradient(circle at 82% 18%,rgba(118,188,255,.16),transparent 24%),linear-gradient(180deg,#142d49,#214264);color:var(--text);position:relative}.section-heading{display:grid;gap:18px;max-width:880px}.section-heading-centered{margin:0 auto;text-align:center}.section-heading .eyebrow{color:#d1171d;margin-bottom:0}.section-heading h2{font-size:clamp(34px,4.6vw,58px);line-height:.98}.section-contrast .section-heading h2{color:var(--text)}.section-contrast .section-heading .eyebrow{color:#ff7d81}.about-grid{align-items:start;display:grid;gap:28px;grid-template-columns:.86fr 1.14fr}.about-card,.client-card,.contact-card,.map-card,.service-card{border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}.about-card{background:linear-gradient(180deg,#fff,#f4f7fb);border:1px solid rgba(17,28,45,.1);box-shadow:0 22px 48px #111c2d14;padding:28px 30px}.about-card p{color:var(--muted-dark);font-size:17px;line-height:1.78;margin:0 0 18px}.about-card p:last-child{margin-bottom:0}.cards-grid{display:grid;gap:20px;margin-top:42px}.cards-grid-services{align-items:stretch;grid-template-columns:repeat(5,minmax(0,1fr))}.cards-grid-services>.reveal{height:100%}.service-card{background:#fff;border:1px solid var(--line);display:flex;flex-direction:column;height:100%;min-height:290px;overflow:hidden;padding:26px;position:relative}.service-accent{background:linear-gradient(90deg,#ff4b4f,#f3161c);border-radius:999px;height:6px;margin-bottom:18px;width:64px}.contact-card h3,.map-card h3,.service-card h3{font-family:Space Grotesk,sans-serif;line-height:1.04;margin:0 0 14px}.service-card h3{font-size:26px}.service-card p{color:var(--muted-dark);line-height:1.68;margin:0}.services-note{border-top:1px solid rgba(17,28,45,.12);color:#111c2d9e;font-size:14px;letter-spacing:.01em;line-height:1.7;margin:28px auto 0;padding-top:16px;text-align:center;width:min(720px,100%)}.client-marquee{margin-top:40px;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);overflow:hidden;position:relative}.client-track{animation:client-marquee 24s linear infinite;display:flex;gap:18px;width:-moz-max-content;width:max-content}.client-card{background:linear-gradient(180deg,#96cbff1a,#ffffff0b);border:1px solid rgba(179,217,255,.14);display:grid;flex:0 0 280px;min-height:150px;padding:20px;place-items:center;text-align:center}.client-card span{color:#fff;font-family:Space Grotesk,sans-serif;font-size:clamp(20px,2vw,30px);white-space:nowrap}.contact-layout{display:grid;gap:28px}.contact-columns{display:grid;gap:20px;grid-template-columns:1fr 1fr;margin-top:34px}.contact-card{background:linear-gradient(180deg,#fff 0,var(--surface-2) 100%);border:1px solid var(--line);padding:28px}.contact-card-dark{background:radial-gradient(circle at top right,rgba(140,198,255,.14),transparent 34%),linear-gradient(180deg,#1a3658,#24476d);border-color:#b3d9ff24;color:#fff}.contact-card-dark a,.contact-card-dark h3,.contact-card-dark li,.contact-card-dark p{color:#fff}.contact-card-dark .contact-list li{color:#f1f5f9eb}.contact-card-dark .contact-list strong{color:#fff}.contact-card-dark a{color:#fff;text-decoration-color:#b3d9ff8a}.contact-card p{color:var(--muted-dark);line-height:1.72;margin:0 0 16px}.contact-card a{color:inherit;text-decoration:underline;text-underline-offset:.2em}.contact-list{display:grid;gap:12px;list-style:none;margin:0;padding:0}.contact-list li{color:var(--muted-dark);line-height:1.64}.contact-list strong{color:inherit}.contact-badges{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}.contact-badges span{background:#fff;border:1px solid rgba(15,23,42,.08);border-radius:999px;color:var(--text-dark);font-size:14px;font-weight:700;padding:10px 14px}.map-card{background:#fff;border:1px solid var(--line);padding:24px}.map-head{align-items:end;display:flex;gap:20px;justify-content:space-between;margin-bottom:20px}.map-label{color:var(--muted-dark);font-size:12px;font-weight:800;letter-spacing:.18em;margin:0 0 8px;text-transform:uppercase}.map-frame-wrap{background:#dbe5f1;border:1px solid var(--line);border-radius:22px;overflow:hidden;position:relative}.map-frame{display:block;height:480px;width:100%}.map-pin{display:grid;gap:8px;justify-items:center;left:50%;pointer-events:none;position:absolute;top:50%;transform:translate(-50%,-100%);z-index:2}.map-pin-label{background:#0e1726e6;border-radius:999px;box-shadow:0 14px 30px #0f172a47;color:#fff;font-size:13px;font-weight:800;padding:8px 12px;white-space:nowrap}.map-pin-dot{background:#f3161c;border:4px solid hsla(0,0%,100%,.92);border-radius:999px;box-shadow:0 8px 20px #f3161c59;height:18px;width:18px}.reveal{opacity:0;transform:translateY(32px);transition:opacity .8s ease,transform .8s cubic-bezier(.22,1,.36,1);transition-delay:var(--delay,0s)}.reveal.is-visible{opacity:1;transform:translateY(0)}@media(max-width:1180px){.cards-grid-services{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:1040px){.about-grid,.contact-columns,.hero-grid{grid-template-columns:1fr}.hero h1{max-width:12ch}}@media(max-width:820px){.site-header{position:static}.header-inner{min-height:76px;padding:16px 0}.header-inner,.nav{flex-wrap:wrap;justify-content:center}.nav{order:3;width:100%}.hero{padding-top:44px}.section{padding:76px 0}.map-head{align-items:start;flex-direction:column}}@media(max-width:720px){.cards-grid-services,.metric-card{grid-template-columns:1fr}.client-card{flex-basis:220px}}@media(max-width:640px){:root{--container:min(1240px, calc(100vw - 28px) )}.brand-logo{width:142px}.nav{font-size:14px;gap:16px}.about-card p,.contact-card p,.contact-list li,.hero-text,.section-text,.service-card p,.services-note{font-size:16px}.about-card,.contact-card,.hero-panel,.map-card,.service-card{padding:20px}.contact-card a{word-break:break-word}.services-note{margin-top:24px;text-align:left}.map-frame{height:360px}}@keyframes client-marquee{0%{transform:translate(0)}to{transform:translate(calc(-50% - 9px))}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:after,:before{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}.client-track{animation:none}}
