
:root{
  --navy:#002060;
  --navy-2:#061633;
  --blue:#0e376b;
  --teal:#4b7c94;
  --teal-2:#6d9aae;
  --teal-dark:#3f6e84;
  --accent:#f18d22;
  --muted:#5e7188;
  --line:#dce6ef;
  --paper:#ffffff;
  --soft:#f4f8fb;
  --soft-2:#e6eff4;
  --ink:#172033;
  --radius:22px;
  --shadow:0 22px 70px rgba(0,32,96,.12);
  --container:1160px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--paper);line-height:1.6}
a{color:inherit;text-decoration:none} img{max-width:100%;display:block} h1,h2,h3,p{margin-top:0}
.container{width:min(var(--container),calc(100% - 40px));margin-inline:auto}.section-pad{padding:92px 0}
.skip-link{position:absolute;left:20px;top:-60px;background:var(--teal);color:#fff;padding:10px 14px;border-radius:8px;z-index:999}.skip-link:focus{top:20px}
.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.94);backdrop-filter:blur(14px);border-bottom:1px solid rgba(220,230,239,.8)}
.nav-wrap{display:flex;align-items:center;justify-content:space-between;min-height:88px;gap:26px}.brand{display:flex;align-items:center}.brand img{width:320px;height:auto;max-height:72px;object-fit:contain;border-radius:8px;box-shadow:0 10px 30px rgba(6,22,51,.08)}
.main-nav{display:flex;align-items:center;gap:24px;font-size:14px;font-weight:800;color:var(--navy)}.main-nav a{position:relative}.main-nav a:not(.nav-cta)::after{content:"";position:absolute;left:0;bottom:-8px;width:0;height:3px;background:var(--teal);border-radius:3px;transition:.2s ease}.main-nav a:hover::after{width:100%}.nav-cta{background:var(--navy);color:#fff;padding:12px 18px;border-radius:999px;box-shadow:0 12px 28px rgba(6,22,51,.18)}
.nav-toggle{display:none;background:transparent;border:0;padding:10px;cursor:pointer}.nav-toggle span{display:block;width:28px;height:3px;background:var(--navy);margin:5px 0;border-radius:5px}
.hero{background:radial-gradient(circle at 8% 10%,rgba(45,141,163,.15),transparent 30%),linear-gradient(180deg,#f8fcff 0%,#fff 72%);overflow:hidden}.hero-grid{display:grid;grid-template-columns:.98fr 1.02fr;align-items:center;gap:54px}.eyebrow{margin:0 0 14px;color:var(--teal-dark);text-transform:uppercase;letter-spacing:.18em;font-size:12px;font-weight:900}h1{font-size:clamp(40px,5.9vw,69px);line-height:.98;letter-spacing:-.055em;margin-bottom:24px;color:var(--navy)}h2{font-size:clamp(31px,4vw,50px);line-height:1.05;letter-spacing:-.04em;color:var(--navy);margin-bottom:18px}h3{font-size:21px;line-height:1.25;color:var(--navy);margin-bottom:10px}.hero-lead{font-size:19px;color:#43566f;max-width:690px;margin-bottom:32px}.hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin-bottom:32px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:14px 22px;border-radius:999px;font-weight:850;border:1px solid transparent;cursor:pointer;transition:.18s ease;font-size:15px}.btn:hover{transform:translateY(-2px)}.btn-primary{background:var(--teal);color:#fff;box-shadow:0 14px 30px rgba(45,141,163,.28)}.btn-primary:hover{background:var(--teal-dark)}.btn-secondary{background:#fff;color:var(--navy);border-color:var(--line)}.btn-light{background:#fff;color:var(--navy);box-shadow:0 18px 44px rgba(0,0,0,.12)}
.trust-row{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;max-width:720px}.trust-row div{padding:18px;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 14px 40px rgba(6,22,51,.06)}.trust-row strong{display:block;color:var(--teal-dark);font-size:28px;line-height:1;font-weight:900;margin-bottom:6px}.trust-row span{font-size:13px;color:var(--muted);font-weight:650}
.hero-photo-card{position:relative}.hero-photo-card::before{content:"";position:absolute;inset:8% -10% -10% 16%;background:var(--teal);opacity:.13;border-radius:44px;transform:rotate(-4deg)}.hero-photo-card img{position:relative;border-radius:36px;box-shadow:var(--shadow);aspect-ratio:1.6/1;object-fit:cover}.hero-badge{position:absolute;left:28px;bottom:28px;right:28px;background:rgba(6,22,51,.88);color:#fff;border:1px solid rgba(255,255,255,.18);border-radius:22px;padding:18px 20px;backdrop-filter:blur(10px);box-shadow:0 16px 40px rgba(0,0,0,.18)}.hero-badge strong{display:block;font-size:17px}.hero-badge span{display:block;color:#dce8f0;font-size:13px;margin-top:3px}
.signal-bar{background:var(--navy);color:#fff}.signal-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:rgba(255,255,255,.12)}.signal-grid span{display:flex;align-items:center;min-height:82px;background:var(--navy);padding:22px;font-weight:850;font-size:14px}
.two-col{display:grid;grid-template-columns:.85fr 1.15fr;gap:76px;align-items:start}.two-col p{color:#40536b;font-size:17px}.about{background:#fff}.section-head{max-width:850px;margin-bottom:44px}.section-head p:not(.eyebrow){font-size:17px;color:#53677e}.narrow{max-width:760px;margin-inline:auto;text-align:center}
.services{background:var(--soft)}.card-grid{display:grid;gap:22px}.services-grid{grid-template-columns:repeat(3,1fr)}.service-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:28px;box-shadow:0 12px 34px rgba(0,32,96,.05);transition:.18s ease;min-height:285px}.service-card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}.service-card p{color:#52667e;margin-bottom:0}.service-card:nth-child(3n+1){background:linear-gradient(145deg,var(--navy),var(--blue));color:#fff}.service-card:nth-child(3n+1) h3,.service-card:nth-child(3n+1) p{color:#fff}.service-card:nth-child(3n+2){background:linear-gradient(145deg,var(--teal),var(--teal-dark));color:#fff}.service-card:nth-child(3n+2) h3,.service-card:nth-child(3n+2) p{color:#fff}.service-card:nth-child(3n){background:#fff}.icon{width:48px;height:48px;border-radius:14px;background:var(--soft-2);display:grid;place-items:center;color:var(--teal-dark);font-weight:900;margin-bottom:22px}.service-card:nth-child(3n+1) .icon,.service-card:nth-child(3n+2) .icon{background:rgba(255,255,255,.16);color:#fff}
.gallery{background:#fff}.gallery-grid{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:18px}.gallery-grid figure{margin:0;position:relative;border-radius:24px;overflow:hidden;background:var(--soft);box-shadow:0 14px 40px rgba(6,22,51,.08);min-height:260px}.gallery-grid figure img{width:100%;height:100%;object-fit:cover;min-height:260px;transition:.25s ease}.gallery-grid figure:hover img{transform:scale(1.03)}.gallery-feature{grid-row:span 2}.gallery-grid figcaption{position:absolute;left:14px;right:14px;bottom:14px;background:rgba(6,22,51,.82);color:#fff;border-radius:16px;padding:12px 14px;font-weight:850;font-size:14px;backdrop-filter:blur(8px)}
.technology{background:linear-gradient(180deg,var(--soft) 0%,#fff 100%)}.tech-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;margin-top:38px}.tech-card{background:#fff;border:1px solid var(--line);border-radius:24px;overflow:hidden;box-shadow:0 12px 34px rgba(6,22,51,.06)}.tech-card img{width:100%;aspect-ratio:1.45/1;object-fit:cover;background:var(--soft)}.tech-card h3{padding:22px 22px 0;margin-bottom:8px}.tech-card p{padding:0 22px 24px;color:#52667e;margin-bottom:0;font-size:15px}
.why{background:#fff}.reverse{grid-template-columns:1fr 1fr;align-items:center}.why-panel{background:var(--navy);color:#fff;border-radius:32px;padding:42px;box-shadow:var(--shadow)}.why-panel h3{color:#fff;font-size:32px;letter-spacing:-.03em;margin-bottom:24px}.check-list{list-style:none;padding:0;margin:0;display:grid;gap:18px}.check-list li{position:relative;padding-left:34px;color:#d9e5ee;font-weight:600}.check-list li::before{content:"✓";position:absolute;left:0;top:0;width:22px;height:22px;border-radius:50%;background:var(--teal);display:grid;place-items:center;color:#fff;font-size:13px;font-weight:900}.inline-link{display:inline-flex;margin-top:12px;color:var(--teal-dark);font-weight:900}
.methodology{background:linear-gradient(180deg,#fff 0%,var(--soft) 100%)}.timeline{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;margin-top:40px}.timeline article{position:relative;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:28px;box-shadow:0 12px 34px rgba(6,22,51,.05)}.timeline span{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--teal);color:#fff;font-weight:900;margin-bottom:18px}.timeline p{color:#52667e;margin-bottom:0}.projects{background:#fff}.experience-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.experience-block{background:var(--soft);border:1px solid var(--line);border-radius:20px;box-shadow:0 10px 30px rgba(6,22,51,.04);overflow:hidden}.experience-block summary{display:flex;justify-content:space-between;gap:16px;align-items:center;cursor:pointer;padding:20px 22px;list-style:none}.experience-block summary::-webkit-details-marker{display:none}.experience-block summary span{font-weight:900;color:var(--navy);font-size:18px}.experience-block summary strong{white-space:nowrap;background:#fff;color:var(--teal-dark);border:1px solid var(--line);padding:7px 11px;border-radius:999px;font-size:12px}.experience-block ul{margin:0;padding:0 22px 22px 42px;color:#52667e}.experience-block li{margin:8px 0}.experience-block[open]{background:#fff}.experience-block[open] summary{border-bottom:1px solid var(--line)}
.clients{background:var(--soft);overflow:hidden}.client-carousel{position:relative;margin-top:34px;overflow:hidden;padding:8px 0}.client-carousel::before,.client-carousel::after{content:"";position:absolute;top:0;bottom:0;width:90px;z-index:2;pointer-events:none}.client-carousel::before{left:0;background:linear-gradient(90deg,var(--soft),rgba(244,248,251,0))}.client-carousel::after{right:0;background:linear-gradient(270deg,var(--soft),rgba(244,248,251,0))}.client-track{display:flex;align-items:center;gap:18px;width:max-content;list-style:none;margin:0;padding:0;animation:client-marquee 42s linear infinite}.client-carousel:hover .client-track{animation-play-state:paused}.client-logo{flex:0 0 230px;height:118px;background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:0 10px 30px rgba(0,32,96,.05);display:flex;align-items:center;justify-content:center;padding:18px}.client-logo img{max-width:100%;max-height:100%;object-fit:contain;filter:saturate(.96)}@keyframes client-marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.cta-band{background:linear-gradient(135deg,var(--navy),#0b3568);color:#fff;padding:64px 0;position:relative;overflow:hidden}.cta-band::after{content:"";position:absolute;right:-100px;top:-160px;width:390px;height:390px;border-radius:50%;border:48px solid rgba(45,141,163,.28)}.cta-grid{position:relative;z-index:1;display:grid;grid-template-columns:1fr auto;gap:34px;align-items:center}.cta-band h2{color:#fff;margin-bottom:12px}.cta-band p:not(.eyebrow){color:#dce8f0;max-width:760px;margin-bottom:0}.contact{background:#fff}.contact-grid{display:grid;grid-template-columns:.92fr 1.08fr;gap:52px;align-items:start}.contact-cards{display:grid;gap:14px;margin-top:28px}.contact-cards a,.contact-cards div{padding:18px 20px;border:1px solid var(--line);border-radius:18px;background:var(--soft);display:grid;gap:4px}.contact-cards strong{color:var(--navy)}.contact-cards span{color:#52667e}.quote-form{background:var(--soft);border:1px solid var(--line);border-radius:32px;padding:34px;box-shadow:var(--shadow);display:grid;gap:18px}.quote-form label{display:grid;gap:8px;font-size:14px;font-weight:850;color:var(--navy)}input,select,textarea{width:100%;font:inherit;border:1px solid #cbd9e5;border-radius:14px;background:#fff;padding:14px 16px;color:var(--ink);outline:0;transition:.18s ease}input:focus,select:focus,textarea:focus{border-color:var(--teal);box-shadow:0 0 0 4px rgba(45,141,163,.13)}textarea{resize:vertical}.form-note{font-size:13px;color:#687b90;margin:0}
.site-footer{background:var(--navy);color:#dce8f0;padding:52px 0 24px}.footer-grid{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:46px;align-items:start}.footer-grid-clean{grid-template-columns:1.25fr 1fr 1fr}.footer-logo{width:320px;border-radius:16px;margin-bottom:16px;box-shadow:0 16px 36px rgba(0,0,0,.30)}.site-footer strong{display:block;color:#fff;margin-bottom:12px}.site-footer span{display:block;color:#b9c7d4;margin-bottom:6px}.copyright{border-top:1px solid rgba(255,255,255,.12);margin-top:34px;padding-top:22px;display:flex;justify-content:space-between;gap:18px;font-size:13px;color:#b9c7d4}.back-to-top{font-weight:800;color:#fff;cursor:pointer}.whatsapp-float{position:fixed;right:22px;bottom:22px;width:58px;height:58px;background:#25d366;color:#fff;border-radius:50%;display:grid;place-items:center;box-shadow:0 16px 38px rgba(12,112,56,.3);z-index:40;transition:.18s ease}.whatsapp-float:hover{transform:translateY(-3px);background:#1ebe5d}.whatsapp-icon{width:34px;height:34px;display:block;fill:currentColor}
@media (max-width: 1080px){.tech-grid{grid-template-columns:repeat(2,1fr)}.gallery-grid{grid-template-columns:1fr 1fr}.gallery-feature{grid-row:auto}}
@media (max-width: 980px){.section-pad{padding:70px 0}.brand img{width:270px}.nav-toggle{display:block}.main-nav{position:absolute;inset:88px 20px auto 20px;background:#fff;border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow);padding:18px;display:none;flex-direction:column;align-items:stretch;gap:14px}.main-nav.open{display:flex}.main-nav a{padding:10px}.nav-cta{text-align:center}.hero-grid,.two-col,.reverse,.contact-grid,.cta-grid{grid-template-columns:1fr}h1{font-size:46px}.services-grid{grid-template-columns:repeat(2,1fr)}.timeline{grid-template-columns:repeat(2,1fr)}.signal-grid{grid-template-columns:repeat(2,1fr)}.client-logo{flex-basis:210px}.experience-grid{grid-template-columns:1fr}}
@media (max-width: 680px){.container{width:min(100% - 28px,var(--container))}.section-pad{padding:56px 0}.nav-wrap{min-height:76px}.main-nav{inset:76px 14px auto 14px}.brand img{width:218px;max-height:56px}h1{font-size:38px}h2{font-size:32px}.hero-lead{font-size:17px}.hero-actions .btn{width:100%}.trust-row,.services-grid,.timeline,.project-list,.footer-grid,.signal-grid,.gallery-grid,.tech-grid{grid-template-columns:1fr}.client-logo{flex-basis:190px;height:104px}.client-track{animation-duration:58s}.client-carousel::before,.client-carousel::after{width:44px}.hero-badge{position:relative;left:auto;right:auto;bottom:auto;margin:12px 0 0;background:var(--navy)}.quote-form{padding:22px;border-radius:24px}.cta-grid .btn{width:100%}.copyright{flex-direction:column}.whatsapp-float{left:auto;right:16px;bottom:16px;width:54px;height:54px}.whatsapp-icon{width:31px;height:31px}.experience-block summary{align-items:flex-start;flex-direction:column}.footer-logo{width:265px}}
