/* Premium campaign-consulting design layer */
.site-header{box-shadow:0 12px 40px rgba(0,0,0,.18)}
.brand{background:#fff;border-radius:7px;padding:.3rem .65rem;box-shadow:0 8px 24px rgba(0,0,0,.2);min-width:225px}
.brand img{width:205px;height:52px;object-fit:contain;object-position:center}
.footer-grid img{background:#fff;border-radius:7px;padding:.35rem .6rem;width:220px;height:64px;object-fit:contain}
.nav-cta{background:linear-gradient(135deg,var(--red),#f02b4b);border-color:transparent!important;box-shadow:0 8px 24px rgba(215,25,53,.25)}
.hero{background:radial-gradient(circle at 70% 20%,rgba(22,105,224,.34),transparent 33%),linear-gradient(130deg,#030d20 0%,#071c3e 52%,#073775 100%)}
.hero:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.026) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.026) 1px,transparent 1px);background-size:54px 54px;mask-image:linear-gradient(to right,black,transparent 85%)}
.hero h1{text-shadow:0 18px 55px rgba(0,0,0,.25)}
.hero h1 em{background:linear-gradient(90deg,#8fc3ff,#fff);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero-lead{font-size:1.23rem;line-height:1.72}
.button{transition:transform .2s ease,box-shadow .2s ease,background .2s ease}
.button:hover{transform:translateY(-2px)}
.button.primary{box-shadow:0 12px 32px rgba(215,25,53,.3)}
.hero-proof{display:grid;grid-template-columns:repeat(3,1fr);max-width:650px;margin-top:2rem;border-top:1px solid rgba(255,255,255,.16);border-bottom:1px solid rgba(255,255,255,.16)}
.hero-proof div{padding:1rem 1.1rem 1rem 0;display:grid;gap:.1rem;position:relative}
.hero-proof div+div{padding-left:1.1rem;border-left:1px solid rgba(255,255,255,.16)}
.hero-proof strong{font-family:Georgia,serif;font-size:1.55rem;color:#fff}
.hero-proof span{font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:#9fb3ce}
.intro{position:relative}
.intro:after{content:"";position:absolute;left:0;top:0;width:8px;height:100%;background:linear-gradient(var(--blue),var(--red))}
.services{background:linear-gradient(180deg,#fff 0%,#f5f8fc 100%)}
.cards{gap:1rem;background:transparent;border:0}
.card{border:1px solid #dbe3ee;border-radius:7px;position:relative;overflow:hidden;box-shadow:0 10px 35px rgba(10,32,67,.055);transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}
.card:before{content:"";position:absolute;left:0;top:0;width:100%;height:4px;background:linear-gradient(90deg,var(--blue),var(--red));transform:scaleX(0);transform-origin:left;transition:transform .25s ease}
.card:hover{transform:translateY(-7px);box-shadow:0 22px 50px rgba(10,32,67,.13);border-color:#b9c9df;background:#fff}
.card:hover:before{transform:scaleX(1)}
.card-num{display:inline-grid;place-items:center;width:35px;height:35px;border-radius:50%;background:#edf4ff;color:var(--blue)}
.card h3{font-family:Georgia,serif;font-size:1.32rem;margin-top:1.5rem}
.advantage{background:#eef3fa;position:relative;overflow:hidden}
.advantage:before{content:"GIS";position:absolute;right:-3rem;bottom:-10rem;font-weight:900;font-size:25rem;color:rgba(6,21,47,.035);line-height:1}
.advantage-head{display:grid;grid-template-columns:1.2fr .8fr;gap:5rem;align-items:end;position:relative}
.advantage-head h2{font-family:Georgia,serif;color:var(--navy);font-size:clamp(2.5rem,4.5vw,4.8rem);line-height:1;letter-spacing:-.045em;margin:0}
.advantage-head>p{color:var(--muted);font-size:1.1rem;margin:0 0 .4rem}
.advantage-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-top:4.5rem;position:relative}
.advantage-card{padding:2rem;background:rgba(255,255,255,.82);border:1px solid #d9e2ef;box-shadow:0 15px 40px rgba(10,32,67,.07);min-height:255px}
.advantage-card span{color:var(--red);font-size:.74rem;font-weight:900;letter-spacing:.12em}
.advantage-card h3{font-family:Georgia,serif;color:var(--navy);font-size:1.35rem;margin:2rem 0 .7rem}
.advantage-card p{color:var(--muted);margin:0}
.program{background:radial-gradient(circle at 80% 10%,#0c3977 0%,transparent 34%),var(--navy)}
.phase{transition:transform .2s ease,border-color .2s ease}
.phase:hover{transform:translateY(-4px)}
.closing-cta{padding:95px 0;background:linear-gradient(110deg,#fff 0%,#eef4fc 70%,#dce9fa 100%);position:relative;overflow:hidden}
.closing-cta:after{content:"";position:absolute;width:320px;height:320px;border:55px solid rgba(10,87,200,.07);border-radius:50%;right:-80px;top:-120px}
.closing-inner{max-width:930px;text-align:center;position:relative;z-index:1}
.closing-inner h2{font-family:Georgia,serif;color:var(--navy);font-size:clamp(2.4rem,4vw,4.2rem);line-height:1.08;letter-spacing:-.04em;margin:0 auto 2.2rem}
.contact-form{box-shadow:0 30px 70px rgba(0,0,0,.25)}
.social-links{display:flex;gap:.7rem;flex-wrap:wrap;margin-top:1.5rem}
.social-links a{font-size:.75rem;text-decoration:none;border:1px solid rgba(255,255,255,.25);border-radius:99px;padding:.45rem .7rem}
@media(max-width:980px){.advantage-head{grid-template-columns:1fr;gap:1.5rem}.advantage-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:680px){.brand{min-width:155px;padding:.25rem .45rem}.brand img{width:145px;height:44px}.hero-proof{grid-template-columns:1fr}.hero-proof div+div{padding-left:0;border-left:0;border-top:1px solid rgba(255,255,255,.16)}.advantage-grid{grid-template-columns:1fr}.advantage-card{min-height:auto}.closing-cta{padding:75px 0}.cards{gap:.8rem}}
