:root{
  --navy:#071a36;--navy2:#0a2f5d;--navy3:#0c3d78;--yellow:#ffc928;--yellow2:#ffb400;
  --blue:#0f5bd8;--ink:#10213a;--muted:#66758a;--soft:#f6f8fb;--line:#e5ebf3;--white:#fff;
  --shadow:0 16px 42px rgba(15,34,63,.10);--radius:16px
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Arial,sans-serif;color:var(--ink);background:#fff;font-size:15px}h1,h2,h3,h4,h5,h6{font-family:Manrope,Inter,sans-serif;color:var(--ink);font-weight:800;letter-spacing:-.03em}a{text-decoration:none}img{max-width:100%;display:block}
.container{max-width:1180px}.btn{font-weight:800;border-radius:999px;padding:.72rem 1.15rem}.btn-warning{background:var(--yellow);border-color:var(--yellow);color:#071a36}.btn-warning:hover{background:#ffd74f;border-color:#ffd74f;color:#071a36}.btn-outline-light{border-color:rgba(255,255,255,.65)}
.glass-nav{background:rgba(4,18,39,.96);border-bottom:1px solid rgba(255,255,255,.08);backdrop-filter:blur(14px)}.navbar{min-height:76px}.navbar .container{max-width:1220px}.brand-logo{height:47px;width:auto;max-width:190px;object-fit:contain}.nav-link{color:rgba(255,255,255,.82)!important;font-size:.82rem;font-weight:700;padding:.62rem .64rem!important}.nav-link:hover,.nav-link.active{color:#fff!important}.navbar-toggler{box-shadow:none!important}.header-cta{padding:.58rem 1.12rem!important;font-size:.78rem}.search-dot{width:35px;height:35px;border-radius:50%;display:grid;place-items:center;color:#fff;border:1px solid rgba(255,255,255,.18);margin-left:.45rem}
main{overflow:hidden}
.hero-ref{position:relative;min-height:670px;padding:126px 0 112px;background:linear-gradient(90deg,#06172f 0%,#06172f 49%,rgba(6,23,47,.7) 70%,rgba(6,23,47,.18) 100%);color:white}.hero-ref:before{content:"";position:absolute;inset:0 0 0 48%;background:linear-gradient(90deg,rgba(6,23,47,.8),rgba(6,23,47,.1)),var(--hero-image,none) center/cover no-repeat;z-index:-1}.hero-ref:after{content:"";position:absolute;left:0;right:0;bottom:0;height:120px;background:linear-gradient(180deg,transparent,rgba(0,0,0,.12))}.hero-ref .container{position:relative;z-index:2}.hero-kicker{font-size:.77rem;font-weight:800;letter-spacing:.22em;text-transform:uppercase;color:#e7edf6}.hero-ref h1{font-size:clamp(3.3rem,5vw,5.15rem);line-height:.98;color:#fff;max-width:590px;margin:.85rem 0 1rem}.hero-ref h1 .accent{color:var(--yellow)}.hero-ref p{max-width:540px;color:#d7e0ed;font-size:1.02rem;line-height:1.72}.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:1.55rem}.hero-scroll{position:absolute;right:18px;bottom:154px;color:#dce7f7;font-size:.74rem;text-align:center}.hero-scroll i{display:block;font-size:1.2rem;margin-bottom:4px}.home-metrics{position:absolute;left:0;right:0;bottom:-1px;z-index:4}.metrics-box{background:#0a2447;border-radius:14px 14px 0 0;overflow:hidden;box-shadow:0 -4px 24px rgba(0,0,0,.12);max-width:930px}.metric-item{padding:24px 27px;display:flex;align-items:center;gap:13px;border-right:1px solid rgba(255,255,255,.10)}.metric-item:last-child{border-right:0}.metric-icon{width:39px;height:39px;border-radius:50%;display:grid;place-items:center;border:1px solid rgba(255,201,40,.4);color:var(--yellow);font-size:1rem}.metric-item strong{display:block;color:#fff;font-size:1.32rem;line-height:1}.metric-item span{display:block;color:#bac8da;font-size:.70rem;margin-top:4px}
.section{padding:80px 0}.section-soft{background:var(--soft)}.section-title{text-align:center;max-width:750px;margin:0 auto 38px}.section-title h2{font-size:2rem;margin-bottom:.4rem}.section-title p{color:var(--muted);margin:0}.eyebrow-blue{color:var(--blue);font-size:.74rem;letter-spacing:.12em;text-transform:uppercase;font-weight:800}.card-ref{background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 8px 24px rgba(28,55,93,.05);transition:.22s}.card-ref:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.service-mini{padding:24px;min-height:190px}.service-mini .icon{width:44px;height:44px;border-radius:12px;background:#eef4ff;color:var(--blue);display:grid;place-items:center;font-size:1.25rem;margin-bottom:18px}.service-mini h4{font-size:1.03rem;margin-bottom:.65rem}.service-mini p{font-size:.84rem;color:var(--muted);line-height:1.55;margin-bottom:1rem}.small-link{font-size:.78rem;font-weight:800;color:var(--blue)}
.image-service{overflow:hidden}.image-service .img{height:155px;background:#eaf0f8}.image-service .img img{width:100%;height:100%;object-fit:cover}.image-service .body{padding:16px 16px 18px}.image-service h4{font-size:.95rem;margin-bottom:.3rem}.image-service p{font-size:.75rem;color:var(--muted);margin:0 0 .7rem}
.cta-photo{position:relative;overflow:hidden;border-radius:0;background:#0b2b58;color:#fff;min-height:168px}.cta-photo .bg{position:absolute;inset:0}.cta-photo .bg img{width:100%;height:100%;object-fit:cover}.cta-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,26,54,.98) 0%,rgba(7,42,85,.94) 45%,rgba(7,42,85,.40) 100%)}.cta-photo .inner{position:relative;z-index:2;padding:35px 50px;display:flex;justify-content:space-between;align-items:center;gap:28px}.cta-photo h3{color:#fff;font-size:1.55rem;margin:0 0 .3rem}.cta-photo p{color:#c9d6e8;margin:0;font-size:.86rem}
.client-strip{text-align:center}.client-strip h3{font-size:1.35rem;margin-bottom:.25rem}.client-strip p{color:var(--muted);font-size:.82rem}.client-names{display:flex;gap:34px 44px;flex-wrap:wrap;justify-content:center;align-items:center;margin-top:25px}.client-name{color:#8593a6;font-weight:800;font-size:.88rem;display:flex;gap:7px;align-items:center}.client-name i{font-size:1.1rem;color:#99a8bb}.blog-ref{overflow:hidden;height:100%}.blog-ref img{height:165px;width:100%;object-fit:cover}.blog-ref .body{padding:18px}.blog-ref h4{font-size:1rem;line-height:1.35}.blog-ref .meta{font-size:.69rem;color:#8794a6}.blog-ref p{font-size:.79rem;color:var(--muted);line-height:1.5}
.site-footer{background:#06172f;color:#fff}.site-footer .container{max-width:1180px}.footer-logo{height:52px;width:auto;max-width:185px}.site-footer h6{color:#fff;font-size:.86rem;margin-bottom:15px}.site-footer a{display:block;color:#b8c6d9;font-size:.77rem;margin:.42rem 0}.site-footer a:hover{color:#fff}.site-footer p{font-size:.78rem;line-height:1.7}.social-links a{width:32px;height:32px;border:1px solid rgba(255,255,255,.14);display:grid;border-radius:50%;place-items:center;margin:0;color:#fff}.source-note{color:#6f839f;font-size:.68rem}.floating-contact{position:fixed;right:24px;bottom:24px;width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:var(--yellow);color:#071a36;z-index:20;box-shadow:0 10px 24px rgba(0,0,0,.18)}
.page-hero{padding:118px 0 52px;background:radial-gradient(circle at 78% 0%,rgba(16,91,216,.34),transparent 30%),linear-gradient(135deg,#071a36,#0b376b);color:white;text-align:center;position:relative}.page-hero:after{content:"";position:absolute;inset:auto 0 0;height:1px;background:rgba(255,255,255,.12)}.page-hero h1{color:#fff;font-size:2.25rem;margin-bottom:.3rem}.breadcrumb-custom{font-size:.72rem;color:#b6c7dc}.breadcrumb-custom a{color:#b6c7dc}.hero-copy{max-width:680px;margin-left:auto;margin-right:auto;color:#d2deed;font-size:.88rem;line-height:1.65}
.about-panel{background:#fff;border:1px solid var(--line);border-radius:14px;padding:22px}.about-image{height:310px;border-radius:10px;overflow:hidden}.about-image img{width:100%;height:100%;object-fit:cover}.about-copy h2{font-size:1.5rem}.about-copy p,.prose{color:#56657a;line-height:1.8;font-size:.88rem}.tick-list{list-style:none;padding:0;margin:18px 0 0}.tick-list li{position:relative;padding:6px 0 6px 25px;color:#42516a;font-size:.82rem}.tick-list li:before{content:"✓";position:absolute;left:0;top:5px;width:16px;height:16px;border-radius:50%;background:var(--yellow);color:#071a36;font-size:.66rem;font-weight:900;display:grid;place-items:center}.value-box{padding:18px;display:flex;gap:14px;align-items:flex-start}.value-box .vicon{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:#eef4ff;color:#0d4d9b}.value-box h4{font-size:.95rem;margin:0 0 .35rem}.value-box p{font-size:.75rem;color:var(--muted);margin:0}.stat-line{background:#071a36;color:white;padding:22px;border-radius:12px}.stat-line .big{font-size:1.45rem;font-weight:800;color:var(--yellow)}.stat-line small{color:#b8c8dc}
.team-card{overflow:hidden;text-align:center;padding:14px}.team-card img{width:100%;aspect-ratio:1/1.06;object-fit:cover;border-radius:8px;background:#eef2f6}.team-card h5{font-size:.95rem;margin:14px 0 2px}.team-card p{font-size:.72rem;color:var(--muted);margin-bottom:9px}.team-social a{display:inline-grid;width:28px;height:28px;place-items:center;color:var(--blue);font-size:.8rem}
.project-card{overflow:hidden;height:100%}.project-card img{width:100%;height:205px;object-fit:cover}.project-card .body{padding:16px}.project-card .tag{font-size:.67rem;color:var(--blue);font-weight:800}.project-card h4{font-size:1rem;margin:.45rem 0}.project-card p{font-size:.78rem;color:var(--muted)}.filter-pills{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;margin-bottom:26px}.filter-pills span{padding:.42rem .8rem;border-radius:999px;border:1px solid var(--line);font-size:.72rem;color:#53627a;background:#fff}.filter-pills span.active{background:var(--blue);color:#fff;border-color:var(--blue)}
.form-shell,.contact-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:24px;box-shadow:0 9px 30px rgba(20,45,79,.06)}.form-label{font-size:.73rem;font-weight:700;color:#43516a}.form-control,.form-select{border-radius:7px;border-color:#dce4ef;padding:.68rem .78rem;font-size:.82rem}.form-control:focus,.form-select:focus{border-color:#9db9e4;box-shadow:0 0 0 .15rem rgba(15,91,216,.08)}.contact-row{display:flex;gap:12px;margin-bottom:20px}.contact-row .icon{width:38px;height:38px;border-radius:50%;background:#eef4ff;color:var(--blue);display:grid;place-items:center;flex:0 0 38px}.contact-row small{display:block;color:#8793a5;font-size:.68rem}.contact-row div:last-child{font-size:.8rem;color:#32425b}.contact-visual{height:100%;min-height:360px;border-radius:14px;overflow:hidden}.contact-visual img{width:100%;height:100%;object-fit:cover}
.legal-wrap{background:#fff;border:1px solid var(--line);border-radius:14px;padding:22px}.legal-nav{position:sticky;top:92px;border:1px solid var(--line);border-radius:9px;padding:12px;background:#fff}.legal-nav strong{display:block;padding:7px 8px 10px;font-size:.78rem}.legal-nav a{display:block;color:#526176;font-size:.75rem;padding:9px 8px;border-bottom:1px solid #edf1f6}.legal-nav a:last-child{border-bottom:0}.legal-nav a:hover{color:var(--blue)}.prose h2{font-size:1.02rem;margin-top:1.45rem;color:#1c2d47}.prose h3{font-size:.95rem;margin-top:1.2rem}.prose p,.prose li{font-size:.80rem;line-height:1.75}
.career-card{padding:22px}.career-card h4{font-size:1.02rem}.career-meta{font-size:.72rem;color:#7f8da0}.career-card p{font-size:.80rem;color:var(--muted)}
.detail-hero-image{border-radius:14px;overflow:hidden}.detail-hero-image img{width:100%;max-height:410px;object-fit:cover}.detail-content{max-width:850px;margin:auto}.detail-content .prose{font-size:.95rem}.service-detail-aside{background:#f7f9fc;border:1px solid var(--line);padding:18px;border-radius:12px}.industry-card{height:100%;padding:20px}.industry-card .icon{width:42px;height:42px;border-radius:10px;background:#edf4ff;color:var(--blue);display:grid;place-items:center;margin-bottom:12px}.industry-card h4{font-size:.98rem}.industry-card p{font-size:.78rem;color:var(--muted)}
@media(max-width:991px){.navbar-collapse{padding:14px 0}.search-dot{display:none}.hero-ref{padding-top:120px;min-height:auto;padding-bottom:165px;background:#06172f}.hero-ref:before{inset:0;background:linear-gradient(90deg,rgba(6,23,47,.93),rgba(6,23,47,.72)),var(--hero-image,none) center/cover no-repeat}.hero-ref h1{font-size:3.5rem}.hero-scroll{display:none}.metrics-box{max-width:none}.metric-item{border-bottom:1px solid rgba(255,255,255,.08)}.section{padding:65px 0}.cta-photo .inner{padding:30px;align-items:flex-start;flex-direction:column}.page-hero{padding-top:112px}.legal-nav{position:static}.contact-visual{min-height:300px}}
@media(max-width:575px){.brand-logo{height:42px;max-width:160px}.hero-ref h1{font-size:2.75rem}.hero-ref{padding-top:112px;padding-bottom:210px}.hero-actions .btn{width:100%;justify-content:center}.home-metrics{bottom:0}.metric-item{padding:17px 18px}.metric-item strong{font-size:1.1rem}.section-title h2{font-size:1.7rem}.section{padding:55px 0}.cta-photo .inner{padding:26px 22px}.page-hero h1{font-size:1.8rem}.about-panel,.form-shell,.contact-card,.legal-wrap{padding:17px}}
/* compatibility styles for detail/admin-managed templates */
.card-clean{background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 8px 24px rgba(28,55,93,.05)}.text-muted-custom{color:var(--muted)!important}.text-link{color:var(--blue);font-weight:800;font-size:.8rem}.section-head{max-width:760px;margin-bottom:30px}.section-head h2{font-size:2rem}.section-head p{color:var(--muted)}.kicker{color:var(--blue);font-size:.72rem;text-transform:uppercase;letter-spacing:.12em;font-weight:800}.icon-box{width:42px;height:42px;border-radius:11px;background:#eef4ff;color:var(--blue);display:grid;place-items:center}.contact-side{height:100%;background:linear-gradient(145deg,#071a36,#0b376b);color:#fff;border-radius:14px;padding:26px}.contact-side h3{color:#fff}.industry-detail{overflow:hidden;height:100%}.industry-detail-image{height:210px}.industry-detail-image img{width:100%;height:100%;object-fit:cover}.industry-detail-body{padding:21px}.industry-detail-body h3{font-size:1.15rem}.tag{display:inline-flex;padding:.35rem .7rem;border-radius:999px;background:#eef4ff;color:var(--blue);font-size:.7rem;font-weight:800}
.filter-pills button{padding:.42rem .8rem;border-radius:999px;border:1px solid var(--line);font-size:.72rem;color:#53627a;background:#fff;transition:.18s}
.filter-pills button:hover{border-color:#b7c7df;color:var(--blue)}
.filter-pills button.active{background:var(--blue);color:#fff;border-color:var(--blue)}
.portfolio-item{transition:opacity .18s ease}
