:root{
--primary:#155B92;
--primary-dark:#0A3D62;
--accent:#F58220;
--ink:#182536;
--muted:#657487;
--line:#dfe7ef;
--soft:#f4f8fb;
--white:#fff;
--shadow:0 18px 45px rgba(19,47,77,.12);
}

*{
margin:0;
padding:0;
box-sizing:border-box;
}

body{
background:#f8fbfd;
color:var(--ink);
font-family:"Segoe UI",Arial,sans-serif;
line-height:1.65;
}

img{
max-width:100%;
display:block;
}

.container{
width:min(92%,1200px);
margin:auto;
}

.topbar{
background:var(--primary-dark);
color:#e9f4ff;
font-size:14px;
padding:9px 0;
}

.topbar .container{
display:flex;
justify-content:space-between;
gap:18px;
}

.topbar i{
color:var(--accent);
margin-right:8px;
}

header{
background:rgba(255,255,255,.96);
box-shadow:0 12px 30px rgba(10,61,98,.08);
position:sticky;
top:0;
z-index:20;
backdrop-filter:blur(14px);
}

.header-row{
display:flex;
justify-content:space-between;
align-items:center;
gap:24px;
padding:14px 0;
}

.logo-area{
display:flex;
align-items:center;
gap:14px;
min-width:260px;
}

.logo-area img{
height:74px;
width:auto;
}

.logo-area h2{
color:var(--primary);
font-size:22px;
line-height:1.2;
letter-spacing:0;
}

.logo-area p{
color:var(--accent);
font-weight:700;
font-size:14px;
}

nav ul{
display:flex;
list-style:none;
gap:8px;
align-items:center;
}

nav a{
text-decoration:none;
color:var(--primary-dark);
font-weight:700;
padding:10px 14px;
border-radius:6px;
transition:background .2s ease,color .2s ease;
}

nav a:hover{
background:#eef6fd;
color:var(--primary);
}

.hero{
background:linear-gradient(110deg,rgba(10,61,98,.94),rgba(21,91,146,.86)),radial-gradient(circle at 78% 24%,rgba(245,130,32,.28),transparent 28%);
color:white;
padding:92px 0;
overflow:hidden;
}

.hero .container{
display:grid;
grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);
gap:48px;
align-items:center;
}

.hero-content{
max-width:760px;
}

.eyebrow{
display:inline-flex;
align-items:center;
gap:8px;
color:var(--accent);
font-size:13px;
font-weight:800;
text-transform:uppercase;
letter-spacing:0;
margin-bottom:12px;
}

.hero h1,
.page-banner h1{
font-size:clamp(36px,6vw,62px);
line-height:1.08;
margin-bottom:20px;
letter-spacing:0;
}

.hero p,
.page-banner p{
font-size:18px;
max-width:720px;
color:#e5f1fb;
}

.hero-actions{
display:flex;
gap:14px;
flex-wrap:wrap;
margin-top:30px;
}

.btn{
background:var(--accent);
padding:13px 24px;
display:inline-flex;
align-items:center;
justify-content:center;
min-height:48px;
text-decoration:none;
color:white;
border-radius:6px;
font-weight:800;
box-shadow:0 14px 28px rgba(245,130,32,.28);
transition:transform .2s ease,box-shadow .2s ease;
}

.btn:hover{
transform:translateY(-2px);
box-shadow:0 18px 34px rgba(245,130,32,.34);
}

.btn-light{
background:rgba(255,255,255,.12);
border:1px solid rgba(255,255,255,.28);
box-shadow:none;
}

.hero-panel,
.highlight-card,
.contact-box{
background:var(--white);
border:1px solid var(--line);
border-radius:8px;
box-shadow:var(--shadow);
}

.hero-panel{
padding:26px;
color:var(--ink);
}

.panel-row{
display:flex;
gap:16px;
align-items:flex-start;
padding:18px 0;
border-bottom:1px solid var(--line);
}

.panel-row:last-child{
border-bottom:0;
}

.panel-row i,
.service-card i,
.industry-card i{
width:46px;
height:46px;
display:inline-flex;
align-items:center;
justify-content:center;
background:#fff3e9;
color:var(--accent);
border-radius:6px;
font-size:20px;
flex:none;
}

.panel-row strong,
.panel-row span{
display:block;
}

.panel-row strong{
font-size:18px;
}

.panel-row span{
color:var(--muted);
}

.section{
padding:78px 0;
}

.alt-section{
background:var(--soft);
}

.section-head{
text-align:center;
max-width:780px;
margin:0 auto 38px;
}

.section-head h2,
.split h2,
.cta-box h2{
font-size:clamp(28px,4vw,42px);
line-height:1.18;
margin-bottom:14px;
letter-spacing:0;
}

.section-head p,
.split p,
.service-card p,
.industry-card p,
.process-step p,
.highlight-card p{
color:var(--muted);
}

.grid{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:24px;
}

.service-grid,
.industry-grid{
align-items:stretch;
}

.card{
background:white;
padding:28px;
border-radius:8px;
border:1px solid var(--line);
box-shadow:0 12px 30px rgba(19,47,77,.08);
transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;
}

.card:hover{
transform:translateY(-4px);
box-shadow:var(--shadow);
border-color:#cdddec;
}

.service-card h3,
.industry-card h3{
font-size:20px;
margin:18px 0 8px;
}

.split{
display:grid;
grid-template-columns:1fr 1fr;
gap:42px;
align-items:center;
}

.reverse{
grid-template-columns:.9fr 1.1fr;
}

.text-link{
display:inline-flex;
margin-top:18px;
color:var(--primary);
font-weight:800;
text-decoration:none;
}

.text-link:hover{
color:var(--accent);
}

.highlight-card{
padding:32px;
}

.highlight-card h3{
font-size:24px;
margin-bottom:14px;
color:var(--primary-dark);
}

.highlight-card ul{
padding-left:20px;
color:var(--muted);
}

.highlight-card li{
margin:10px 0;
}

.check-list{
display:grid;
gap:14px;
}

.check-list div{
background:white;
border:1px solid var(--line);
border-radius:8px;
padding:18px 20px;
font-weight:700;
box-shadow:0 10px 24px rgba(19,47,77,.07);
}

.check-list i{
color:#1f9d67;
margin-right:10px;
}

.stats{
background:linear-gradient(110deg,var(--primary-dark),var(--primary));
color:white;
padding:64px 0;
}

.stat-grid{
display:grid;
grid-template-columns:repeat(3,1fr);
text-align:center;
gap:24px;
}

.stat-grid h2{
font-size:44px;
line-height:1;
margin-bottom:8px;
}

.stat-grid p{
color:#dcecf8;
font-weight:700;
}

.page-banner{
background:linear-gradient(110deg,var(--primary-dark),var(--primary));
color:white;
padding:72px 0;
text-align:center;
}

.page-banner .eyebrow{
color:#ffd2ad;
}

.page-banner p{
margin:0 auto;
}

.process-grid{
display:grid;
grid-template-columns:repeat(4,1fr);
gap:20px;
}

.process-step{
background:white;
border:1px solid var(--line);
border-radius:8px;
padding:26px;
box-shadow:0 10px 26px rgba(19,47,77,.08);
}

.process-step span{
color:var(--accent);
font-weight:900;
font-size:14px;
}

.process-step h3{
font-size:21px;
margin:8px 0;
}

.cta-section{
padding:0 0 78px;
background:var(--soft);
}

.cta-box{
background:var(--primary-dark);
color:white;
border-radius:8px;
padding:34px;
display:flex;
align-items:center;
justify-content:space-between;
gap:24px;
box-shadow:var(--shadow);
}

.cta-box h2{
margin:0;
}

.contact-box{
padding:32px;
}

.contact-item{
display:flex;
gap:16px;
padding:18px 0;
border-bottom:1px solid var(--line);
}

.contact-item:last-child{
border-bottom:0;
}

.contact-item i{
width:42px;
height:42px;
display:inline-flex;
align-items:center;
justify-content:center;
background:#eef6fd;
color:var(--primary);
border-radius:6px;
flex:none;
}

.contact-item strong{
display:block;
margin-bottom:4px;
color:var(--primary-dark);
}

.contact-item p{
color:var(--muted);
margin:0;
}

footer{
background:#082f4c;
color:white;
padding-top:52px;
}

.footer-grid{
display:grid;
grid-template-columns:2fr 1fr 1.4fr;
gap:34px;
}

.footer-grid img{
margin-bottom:14px;
background:white;
border-radius:6px;
padding:6px;
}

.footer-grid h3{
margin-bottom:14px;
}

.footer-grid p,
.footer-grid li{
color:#d7e8f4;
margin-bottom:10px;
}

.footer-grid ul{
list-style:none;
}

.footer-grid a{
color:#d7e8f4;
text-decoration:none;
}

.footer-grid a:hover{
color:white;
}

.copyright{
text-align:center;
padding:20px;
margin-top:34px;
border-top:1px solid rgba(255,255,255,.18);
color:#cfe3f2;
}

@media(max-width:980px){
.hero .container,
.split,
.reverse{
grid-template-columns:1fr;
}

.header-row{
display:grid;
justify-items:center;
}

nav ul{
flex-wrap:wrap;
justify-content:center;
}

.grid,
.footer-grid,
.stat-grid,
.process-grid{
grid-template-columns:1fr 1fr;
}
}

@media(max-width:640px){
.topbar .container,
.hero-actions,
.cta-box{
flex-direction:column;
align-items:flex-start;
}

.topbar .container{
gap:8px;
}

.logo-area{
min-width:0;
}

.logo-area img{
height:60px;
}

.logo-area h2{
font-size:18px;
}

nav a{
padding:8px 10px;
font-size:14px;
}

.hero,
.page-banner{
padding:58px 0;
}

.section{
padding:56px 0;
}

.grid,
.footer-grid,
.stat-grid,
.process-grid{
grid-template-columns:1fr;
}

.hero-panel,
.highlight-card,
.contact-box,
.card,
.process-step,
.cta-box{
padding:24px;
}

.btn{
width:100%;
}
}


.footer-links{
    text-align:center;
    padding:15px;
}

.footer-links a{
    color:#fff;
    text-decoration:none;
    margin:0 10px;
}

.footer-links a:hover{
    color:#F58220;
}