
:root{
  --blue:#043c9d;
  --blue2:#005dff;
  --navy:#061a44;
  --orange:#ff6a00;
  --cyan:#19b8ff;
  --purple:#6f33ff;
  --muted:#5f6b83;
  --light:#f6f9ff;
  --line:#dbe7fb;
  --white:#fff;
  --shadow:0 22px 80px rgba(0,42,120,.12);
  --font:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#f3f7ff;color:var(--navy);font-family:var(--font);font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
.container{width:min(1320px,calc(100% - 72px));margin:auto}
.site-shell{background:#fff;min-height:100vh;overflow:hidden}
.header{height:104px;display:flex;align-items:center;justify-content:space-between;gap:34px;padding:0 54px;background:rgba(255,255,255,.92);backdrop-filter:blur(18px);position:sticky;top:0;z-index:80;border-bottom:1px solid rgba(4,60,157,.07)}
.logo{display:flex;align-items:center;min-width:245px}.logo img{width:220px;max-height:74px;object-fit:contain}
.nav{display:flex;align-items:center;gap:34px;font-weight:800;color:#071b45}
.nav a,.nav button{font:inherit;background:none;border:0;color:inherit;cursor:pointer;padding:38px 0;position:relative}
.nav a:after,.nav button:after{content:"";position:absolute;left:0;right:0;bottom:28px;height:3px;border-radius:999px;background:linear-gradient(90deg,var(--orange),var(--blue2));transform:scaleX(0);transition:.25s}
.nav a:hover:after,.nav button:hover:after,.nav a.active:after{transform:scaleX(1)}
.dropdown{position:relative}
.dropdown-menu{position:absolute;top:82px;left:-22px;background:#fff;border:1px solid var(--line);border-radius:20px;padding:16px;width:300px;box-shadow:var(--shadow);opacity:0;transform:translateY(10px);visibility:hidden;transition:.25s}
.dropdown:hover .dropdown-menu{opacity:1;transform:none;visibility:visible}
.dropdown-menu a{display:flex;padding:12px 14px;border-radius:12px;font-size:14px}
.dropdown-menu a:hover{background:var(--light)}
.header-cta{display:inline-flex;align-items:center;gap:14px;background:linear-gradient(135deg,var(--blue),#0b66ff);color:white;font-weight:900;border-radius:18px;padding:18px 28px;box-shadow:0 16px 42px rgba(0,77,210,.22);white-space:nowrap}
.mobile-toggle{display:none;width:52px;height:52px;border-radius:16px;border:1px solid var(--line);background:white;align-items:center;justify-content:center;flex-direction:column;gap:6px}
.mobile-toggle span{width:24px;height:2px;background:var(--navy)}
.mobile-menu{display:none;position:fixed;inset:0;z-index:300;background:white;padding:38px 28px;overflow:auto}
.mobile-menu.is-open{display:block}
.mobile-menu button{position:absolute;right:22px;top:22px;background:none;border:0;font-size:42px;color:var(--navy)}
.mobile-menu img{width:230px;margin:40px 0 24px}
.mobile-menu a,.mobile-menu strong{display:block;border-bottom:1px solid var(--line);padding:15px 0;font-size:20px;font-weight:800}.mobile-menu strong{color:var(--orange)}
.hero{position:relative;min-height:780px;background:linear-gradient(110deg,#fff 0%,#f6faff 48%,#dfeaff 100%);overflow:hidden}
.hero:before{content:"";position:absolute;inset:-10%;background:radial-gradient(circle at 78% 52%,rgba(0,94,255,.20),transparent 32%),radial-gradient(circle at 92% 68%,rgba(255,106,0,.28),transparent 28%),radial-gradient(circle at 42% 92%,rgba(22,170,255,.16),transparent 30%);animation:orb 10s ease-in-out infinite alternate}
@keyframes orb{to{transform:translate3d(-1.5%,1.2%,0) scale(1.02)}}
.hero-inner{position:relative;z-index:2;width:min(1380px,calc(100% - 90px));margin:auto;display:grid;grid-template-columns:.96fr 1.04fr;align-items:center;gap:20px;padding:82px 0 70px}
.eyebrow{display:inline-flex;align-items:center;letter-spacing:.16em;text-transform:uppercase;color:var(--blue);font-size:13px;font-weight:950;border:1px solid rgba(0,93,255,.45);border-radius:999px;padding:10px 22px;background:rgba(255,255,255,.72);backdrop-filter:blur(12px);margin-bottom:32px}
.hero h1{font-size:clamp(48px,6vw,86px);line-height:1.06;letter-spacing:-.055em;margin:0 0 28px;font-weight:950}
.hero h1 .accent{color:var(--orange)}
.hero-copy p{font-size:22px;color:#33425d;max-width:660px;margin:0 0 34px}
.hero-actions{display:flex;gap:18px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;gap:16px;border-radius:18px;font-weight:900;min-height:62px;padding:0 32px;transition:.25s;border:1px solid transparent}.btn-primary{background:linear-gradient(135deg,var(--blue),#0a62ff);color:#fff;box-shadow:0 18px 44px rgba(0,63,190,.22)}.btn-outline{background:white;color:var(--blue);border-color:rgba(0,65,170,.35)}.btn:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.hero-stats{display:flex;gap:48px;margin-top:58px;flex-wrap:wrap}.hero-stat{display:flex;align-items:center;gap:16px}.hero-stat img{width:48px;height:48px;object-fit:contain;filter:drop-shadow(0 10px 16px rgba(0,91,255,.15))}.hero-stat strong{display:block;font-size:34px;line-height:1;font-weight:950}.hero-stat span{display:block;color:#53637b;font-weight:700}
.hero-media{position:relative;min-height:640px;display:flex;align-items:center;justify-content:center}
.hero-media .main-art{width:min(690px,100%);border-radius:44px;filter:drop-shadow(0 36px 70px rgba(0,49,150,.22));animation:float 5.8s ease-in-out infinite}
@keyframes float{50%{transform:translateY(-18px)}}
.floating-card{position:absolute;width:92px;height:92px;border-radius:26px;background:rgba(255,255,255,.55);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.72);box-shadow:0 20px 60px rgba(0,57,160,.16);display:grid;place-items:center;animation:float 6.8s ease-in-out infinite}
.floating-card img{width:52px;height:52px;object-fit:contain}.fc1{left:8%;top:38%}.fc2{right:4%;top:28%;animation-delay:.8s}.fc3{right:6%;bottom:20%;animation-delay:1.4s}
.section{padding:96px 0;background:#fff}.section.alt{background:#f8fbff}.section.dark{background:linear-gradient(135deg,#061a44,#00183f);color:#fff}
.section-head{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:end;margin-bottom:46px}.section-kicker{color:var(--orange);font-weight:950;text-transform:uppercase;letter-spacing:.14em;font-size:13px}.section-head h2,.center-head h2{font-size:clamp(34px,4.2vw,54px);line-height:1.08;letter-spacing:-.04em;margin:8px 0 0}.section-head p,.center-head p{color:var(--muted);font-size:18px}.center-head{text-align:center;max-width:820px;margin:0 auto 48px}
.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}.service-card{position:relative;background:#fff;border:1px solid var(--line);border-radius:26px;padding:34px;min-height:255px;box-shadow:0 12px 40px rgba(7,33,90,.06);transition:.3s;overflow:hidden}.service-card:before{content:"";position:absolute;inset:auto -50px -50px auto;width:180px;height:180px;background:radial-gradient(circle,rgba(0,91,255,.14),transparent 68%);opacity:0;transition:.3s}.service-card:hover{transform:translateY(-8px);box-shadow:var(--shadow)}.service-card:hover:before{opacity:1}.service-card img{width:72px;height:72px;object-fit:contain;margin-bottom:28px}.service-card h3{font-size:22px;line-height:1.2;margin:0 0 12px}.service-card p{color:var(--muted);margin:0 0 20px}.arrow{color:var(--blue);font-size:28px;font-weight:900}
.split-feature{display:grid;grid-template-columns:1.14fr .86fr;gap:28px}.feature-blue{background:linear-gradient(135deg,#061a44,#003996 58%,#0a67ff);border-radius:30px;color:#fff;padding:56px;position:relative;overflow:hidden;min-height:420px}.feature-blue:after{content:"";position:absolute;right:-70px;bottom:-90px;width:380px;height:380px;border-radius:50%;background:rgba(255,255,255,.10)}.feature-blue h2,.feature-white h2{font-size:38px;line-height:1.16;letter-spacing:-.03em;margin:0 0 22px}.feature-blue p{color:#dce9ff;max-width:540px}.check-list{display:grid;gap:14px;margin:28px 0}.check-list li{list-style:none;display:flex;gap:12px;align-items:center}.check-list li:before{content:"";width:10px;height:10px;border-radius:50%;background:var(--orange);box-shadow:0 0 0 5px rgba(255,106,0,.15)}
.feature-white{background:#fff;border:1px solid var(--line);border-radius:30px;padding:46px;box-shadow:var(--shadow);position:relative;overflow:hidden}.feature-white .ghost{position:absolute;right:-90px;bottom:-80px;width:360px;opacity:.09}.feature-white p{color:var(--muted)}
.projects{display:grid;grid-template-columns:310px 1fr;gap:38px;align-items:start}.project-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}.project-card{background:#fff;border:1px solid var(--line);border-radius:20px;overflow:hidden;box-shadow:0 12px 32px rgba(8,30,70,.06);transition:.3s}.project-card:hover{transform:translateY(-6px);box-shadow:var(--shadow)}.project-card img{width:100%;height:150px;object-fit:cover}.project-card div{padding:18px}.project-card h3{font-size:18px;margin:0 0 4px}.project-card span{font-size:13px;color:var(--muted)}
.cta{margin:0 auto 90px;width:min(1320px,calc(100% - 72px));display:grid;grid-template-columns:1fr auto;gap:30px;align-items:center;background:linear-gradient(135deg,#08217a,#0a4ddd 55%,#ff6a00);color:white;border-radius:32px;padding:48px 58px;box-shadow:0 30px 90px rgba(4,48,150,.22);position:relative;overflow:hidden}.cta:before,.cta:after{content:"";position:absolute;width:170px;height:170px;border-radius:32px;background:linear-gradient(135deg,#277cff,#682fff);transform:rotate(45deg);opacity:.35}.cta:before{left:-60px;bottom:-60px}.cta:after{right:-60px;top:-60px}.cta h2{margin:0 0 8px;font-size:36px}.cta p{margin:0;color:#dbe8ff}.cta a{position:relative;z-index:2;background:var(--orange);color:white;border-radius:16px;padding:18px 28px;font-weight:950}
.footer{background:linear-gradient(180deg,#05183e,#020c24);color:#fff;padding:70px 0 28px}.footer-grid{display:grid;grid-template-columns:1.35fr 1fr 1fr 1.1fr;gap:46px}.footer img{width:230px;margin-bottom:20px}.footer p,.footer a{color:#d6e3f8}.footer a{display:block;margin:8px 0}.footer h3{color:#ff7a17;text-transform:uppercase;letter-spacing:.08em;font-size:14px}.socials{display:flex;gap:10px;margin-top:18px}.socials a{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;border:1px solid rgba(255,255,255,.18)}.footer-bottom{border-top:1px solid rgba(255,255,255,.12);margin-top:42px;padding-top:22px;display:flex;justify-content:space-between;color:#97aacd}
.page-hero{position:relative;background:linear-gradient(135deg,#071b45,#064aaf);color:#fff;padding:110px 0;overflow:hidden}.page-hero:after{content:"";position:absolute;right:-140px;top:-130px;width:520px;height:520px;border-radius:50%;background:rgba(255,255,255,.09)}.page-hero h1{font-size:clamp(42px,5vw,68px);letter-spacing:-.05em;line-height:1.06;margin:0 0 18px}.page-hero p{font-size:20px;color:#dce9ff;max-width:780px}
.breadcrumb{color:#ffb175;text-transform:uppercase;letter-spacing:.13em;font-weight:950;font-size:12px;margin-bottom:18px}.content-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:28px}.content-card{background:#fff;border:1px solid var(--line);border-radius:26px;padding:34px;box-shadow:0 12px 36px rgba(7,33,90,.06)}.content-card img{width:100%;height:260px;object-fit:contain;background:#f7fbff;border-radius:20px;margin-bottom:20px}.content-card h2{font-size:32px;margin:0 0 12px}.content-card p{color:var(--muted)}.service-detail{display:grid;grid-template-columns:.9fr 1.1fr;gap:50px;align-items:center}.service-detail img{width:100%;max-height:520px;object-fit:contain;background:#f7fbff;border-radius:32px;padding:28px;border:1px solid var(--line);box-shadow:var(--shadow)}.rich-text h2{font-size:40px;letter-spacing:-.03em;line-height:1.12}.rich-text p{color:var(--muted);font-size:18px}.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}.gallery-item{border-radius:24px;overflow:hidden;background:#fff;border:1px solid var(--line);box-shadow:0 12px 34px rgba(7,33,90,.06)}.gallery-item img{width:100%;height:230px;object-fit:contain;background:#f7fbff;padding:20px}.gallery-item strong{display:block;padding:16px 18px}
.form-wrap{display:grid;grid-template-columns:.82fr 1.18fr;gap:36px;align-items:start}.form-card{background:#fff;border:1px solid var(--line);border-radius:28px;padding:36px;box-shadow:var(--shadow)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-grid input,.form-grid select,.form-grid textarea{width:100%;min-height:54px;border:1px solid var(--line);border-radius:14px;padding:0 16px;font:inherit;background:#fff}.form-grid textarea{grid-column:1/-1;min-height:150px;padding:16px}.form-grid button{grid-column:2;min-height:56px;border:0;border-radius:16px;background:linear-gradient(135deg,var(--blue),#0a62ff);color:#fff;font-weight:950}
.map-frame iframe{width:100%;min-height:360px;border:0;border-radius:28px;box-shadow:var(--shadow)}
.floating-contact{position:fixed;right:18px;bottom:18px;z-index:90;display:grid;gap:10px}.floating-contact a{display:flex;align-items:center;justify-content:center;gap:10px;min-width:150px;border-radius:999px;padding:13px 20px;font-weight:950;box-shadow:0 16px 44px rgba(0,0,0,.20);color:#fff}.float-call{background:linear-gradient(135deg,#0a62ff,#00318f)}.float-whatsapp{background:#25d366}
.reveal{opacity:0;transform:translateY(24px);transition:.75s cubic-bezier(.16,1,.3,1)}.reveal.is-visible{opacity:1;transform:none}
@media(max-width:1120px){.nav{gap:18px}.service-grid,.project-grid,.gallery-grid{grid-template-columns:repeat(2,1fr)}.hero-inner,.split-feature,.projects,.service-detail,.form-wrap{grid-template-columns:1fr}.hero-media{min-height:500px}.section-head{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.container,.hero-inner,.cta{width:calc(100% - 34px)}.header{height:82px;padding:0 18px}.logo img{width:185px}.nav,.header-cta{display:none}.mobile-toggle{display:flex}.hero{min-height:auto}.hero-inner{padding:48px 0 40px;gap:0}.hero h1{font-size:42px}.hero-copy p{font-size:17px}.hero-actions{gap:12px}.btn{width:100%;min-height:55px}.hero-stats{gap:20px;margin-top:34px}.hero-stat{width:100%}.hero-media{min-height:340px}.hero-media .main-art{width:100%;border-radius:26px}.floating-card{width:68px;height:68px;border-radius:20px}.floating-card img{width:38px;height:38px}.fc1{left:1%;top:36%}.fc2{right:0;top:20%}.fc3{right:4%;bottom:12%}.section{padding:60px 0}.service-grid,.project-grid,.gallery-grid,.content-grid,.form-grid,.footer-grid{grid-template-columns:1fr}.service-card{padding:26px}.feature-blue,.feature-white{padding:32px}.cta{grid-template-columns:1fr;margin-bottom:60px;padding:32px}.footer-bottom{display:block}.page-hero{padding:74px 0}.content-card img{height:230px}.form-grid button{grid-column:1}.floating-contact{right:12px;bottom:12px}.floating-contact a{min-width:128px;padding:11px 16px;font-size:14px}}
