
:root{
 --navy:#104B76;--navy2:#0A3554;--teal:#09ACA0;--teal2:#078B82;--green:#55B946;--cyan:#159BD7;
 --ink:#1F3345;--muted:#607284;--surface:#F5F9FB;--line:#DCE8EE;--white:#fff;--shadow:0 18px 60px rgba(10,53,84,.10);
 --radius:20px;--max:1180px
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,'Helvetica Neue',Helvetica,system-ui,-apple-system,'Segoe UI',sans-serif;color:var(--ink);line-height:1.65;background:#fff}
a{text-decoration:none;color:inherit}img{max-width:100%;display:block}.container{width:min(var(--max),calc(100% - 40px));margin:auto}
.topbar{background:var(--navy2);color:#d9edf2;font-size:12px;padding:7px 0}.topbar .container{display:flex;justify-content:space-between}
.nav{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.95);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
.navin{height:80px;display:flex;align-items:center;justify-content:space-between;gap:18px}.brand{display:flex;align-items:center;gap:10px;font-weight:850;color:var(--navy2);letter-spacing:-.03em}
.brandmark{width:40px;height:40px;border-radius:11px;display:grid;place-items:center;color:#fff;background:linear-gradient(145deg,var(--navy),var(--teal));font-weight:900}
.menu{display:flex;gap:15px;align-items:center;font-size:13px;font-weight:700;color:#4d6677}.menu a{white-space:nowrap}.nav-contact{white-space:nowrap}.menu a:hover,.menu a.active{color:var(--teal2)}
.btn{display:inline-flex;align-items:center;justify-content:center;padding:12px 18px;border-radius:10px;font-size:14px;font-weight:800;border:1px solid transparent;transition:.2s}
.btn.primary{background:var(--navy);color:#fff;box-shadow:0 9px 24px rgba(16,75,118,.18)}.btn.primary:hover{background:var(--navy2);transform:translateY(-1px)}
.btn.secondary{background:#fff;border-color:var(--line);color:var(--navy)}.btn.teal{background:var(--teal);color:#fff}
.hero{position:relative;overflow:hidden;padding:96px 0;background:radial-gradient(circle at 82% 20%,rgba(9,172,160,.15),transparent 28%),radial-gradient(circle at 12% 15%,rgba(21,155,215,.09),transparent 28%),#fff}
.nav .brand{flex-shrink:0}.nav-logo{width:114px;height:76px;object-fit:contain}
#cybersecurity{scroll-margin-top:100px}
.hero:after{content:"";position:absolute;right:-170px;bottom:-240px;width:540px;height:540px;border:1px solid rgba(9,172,160,.14);border-radius:50%}
.hero-grid,.split{display:grid;grid-template-columns:1.08fr .92fr;gap:64px;align-items:center}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:12px;font-weight:900;color:var(--teal2)}
h1{font-size:clamp(45px,6vw,72px);line-height:1.02;letter-spacing:-.055em;margin:15px 0 22px;color:var(--navy2)}h1 span,.accent{color:var(--teal)}
.hero p{font-size:18px;color:var(--muted);max-width:700px}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.visual{padding:30px;border-radius:28px;color:#fff;background:linear-gradient(145deg,#0A3554,#0B7184);box-shadow:var(--shadow);position:relative;overflow:hidden}
.visual:before{content:"";position:absolute;width:220px;height:220px;border-radius:50%;background:rgba(255,255,255,.07);right:-50px;top:-70px}.visual h3{font-size:26px;margin:0 0 10px}.visual p{color:rgba(255,255,255,.76);font-size:14px}
.pills{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:24px}.pill{padding:15px;border-radius:12px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.13);font-size:13px;font-weight:750}
section{padding:88px 0}.soft{background:var(--surface)}.dark{background:linear-gradient(145deg,#082f4a,#0c6578);color:#fff}.dark h2,.dark h3{color:#fff}.dark p{color:rgba(255,255,255,.76)}
.section-head{max-width:760px;margin-bottom:42px}.section-head.center{text-align:center;margin-left:auto;margin-right:auto}.section-head h2{font-size:clamp(32px,4vw,48px);line-height:1.08;letter-spacing:-.045em;color:var(--navy2);margin:9px 0 14px}.section-head p{font-size:16px;color:var(--muted)}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.card{padding:26px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;transition:.2s}.card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}
.icon{width:48px;height:48px;border-radius:13px;background:#e5f7f5;color:var(--teal2);display:grid;place-items:center;font-weight:900;margin-bottom:17px}.card h3{font-size:19px;color:var(--navy);margin:0 0 8px}.card p{font-size:14px;color:var(--muted);margin:0}.card ul{padding-left:18px;color:var(--muted);font-size:14px}
.band{padding:24px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.bandin{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;color:#6b7f8d;font-size:13px;font-weight:800;letter-spacing:.05em}
.story{padding:34px;border-radius:24px;border:1px solid var(--line);background:linear-gradient(145deg,#f1f9fa,#fff)}.story p{color:var(--muted)}
.timeline{display:grid;gap:13px}.step{display:grid;grid-template-columns:52px 1fr;gap:15px}.num{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:var(--navy);color:#fff;font-weight:900}.step h3{margin:3px 0 2px;color:var(--navy)}.step p{margin:0;color:var(--muted);font-size:14px}
.team{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.person img{border-radius:18px;background:var(--surface);aspect-ratio:.92/1;object-fit:cover}.person h3{margin:14px 0 0;color:var(--navy)}.person span{font-size:13px;color:var(--teal2);font-weight:700}.person p{font-size:13px;color:var(--muted)}
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.stat{padding:24px;border-radius:17px;background:#fff;border:1px solid var(--line)}.stat strong{display:block;font-size:31px;color:var(--navy)}.stat span{font-size:12px;color:var(--muted)}
.pagehero{padding:72px 0 65px;background:radial-gradient(circle at 80% 10%,rgba(9,172,160,.14),transparent 25%),var(--surface)}.pagehero h1{font-size:clamp(40px,5vw,62px);max-width:850px}.pagehero p{font-size:18px;color:var(--muted);max-width:800px}
.quote{border-left:4px solid var(--teal);padding:6px 0 6px 22px;font-size:22px;line-height:1.5;color:var(--navy2);font-weight:650}
.checks{display:grid;grid-template-columns:1fr 1fr;gap:12px}.check{padding:14px;border-radius:12px;background:#fff;border:1px solid var(--line);font-size:14px}
.process{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.process .card{position:relative}.process .card b{color:var(--teal);font-size:12px}
.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:50px}.form{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form .full{grid-column:1/-1}label{display:block;font-size:12px;font-weight:800;color:var(--navy);margin-bottom:6px}input,select,textarea{width:100%;padding:13px 14px;border:1px solid var(--line);border-radius:10px;font:inherit;background:#fff}textarea{min-height:145px;resize:vertical}
.cta{text-align:center}.cta h2{font-size:clamp(34px,4vw,50px);letter-spacing:-.04em;color:var(--navy2);margin:8px 0 12px}.cta p{max-width:680px;margin:auto;color:var(--muted)}
footer{background:#072d47;color:#fff;padding:50px 0 30px}.foot{display:grid;grid-template-columns:1.6fr repeat(3,1fr);gap:35px}.foot h4{margin:0 0 12px}.foot a,.foot p{display:block;color:rgba(255,255,255,.65);font-size:13px;margin:7px 0}.copyright{border-top:1px solid rgba(255,255,255,.1);margin-top:35px;padding-top:20px;color:rgba(255,255,255,.5);font-size:12px}
.mobile{display:none}
/* Native disclosure keeps mobile navigation available without JavaScript. */
.mobile-nav{display:none}
.nav a:focus-visible,.mobile-nav summary:focus-visible{outline:3px solid var(--teal2);outline-offset:3px}
@media(min-width:1001px) and (max-width:1100px){.navin{gap:16px}.menu{gap:12px;font-size:12px}}
@media(max-width:1000px){
 .menu,.nav-contact{display:none}
 .navin{position:relative}
 .mobile-nav{display:block;margin-left:auto}
 .mobile-nav summary{display:flex;align-items:center;justify-content:center;width:48px;height:48px;padding:12px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--navy);font-size:15px;font-weight:700;cursor:pointer;list-style:none}
 .mobile-nav summary::-webkit-details-marker{display:none}
 .menu-icon{display:flex;flex-direction:column;justify-content:space-between;width:22px;height:16px}.menu-icon span{display:block;width:100%;height:2px;border-radius:2px;background:currentColor}
 .mobile-nav[open] summary{background:var(--surface);border-color:var(--teal2)}
 .mobile-nav[open] .menu-icon span:first-child{transform:translateY(7px) rotate(45deg)}.mobile-nav[open] .menu-icon span:nth-child(2){opacity:0}.mobile-nav[open] .menu-icon span:last-child{transform:translateY(-7px) rotate(-45deg)}
 .mobile-nav-links{position:absolute;top:calc(100% - 4px);right:0;width:min(360px,100%);max-height:calc(100dvh - 130px);overflow-y:auto;overscroll-behavior:contain;padding:10px;background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}
 .mobile-nav-links a{display:flex;align-items:center;min-height:48px;padding:10px 14px;border-radius:10px;color:var(--navy);font-size:15px;font-weight:700}
 .mobile-nav-links a:hover,.mobile-nav-links a[aria-current="page"]{background:var(--surface);color:var(--teal2)}
 .mobile-nav-links a[aria-current="page"]{box-shadow:inset 3px 0 var(--teal2)}
 .mobile-nav-links a:last-child{border-top:1px solid var(--line);margin-top:6px}
}
@media(max-width:600px){.mobile-nav-links{max-height:calc(100dvh - 88px)}}
@media(max-width:900px){.hero-grid,.split,.contact-grid{grid-template-columns:1fr}.grid3{grid-template-columns:1fr 1fr}.grid4,.team,.stats,.process{grid-template-columns:1fr 1fr}.foot{grid-template-columns:1fr 1fr}.mobile{display:inline-flex}}
@media(max-width:600px){.container{width:min(var(--max),calc(100% - 28px))}.topbar{display:none}.navin{height:68px;gap:12px}.nav-logo{width:96px;height:64px}#cybersecurity{scroll-margin-top:88px}.hero{padding:70px 0}section{padding:68px 0}.grid3,.grid4,.team,.stats,.process,.checks,.form,.foot{grid-template-columns:1fr}.form .full{grid-column:auto}.pills{grid-template-columns:1fr}h1{font-size:44px}}

.service-card .icon-img,.industry-card .icon-img{width:58px;height:58px;border-radius:15px;margin-bottom:17px;box-shadow:0 8px 24px rgba(16,75,118,.10)}
.section-visual{width:100%;border-radius:24px;border:1px solid var(--line);box-shadow:var(--shadow);background:#fff}
.logo-lockup{display:flex;align-items:center;gap:18px;padding:22px;border:1px solid rgba(255,255,255,.13);border-radius:18px;background:rgba(255,255,255,.06);margin-top:22px}
.logo-lockup img{width:68px;height:68px;border-radius:16px}
.logo-lockup strong{display:block;font-size:20px}.logo-lockup span{font-size:13px;color:rgba(255,255,255,.68)}
.visual-split{display:grid;grid-template-columns:1.05fr .95fr;gap:50px;align-items:center}
@media(max-width:900px){.visual-split{grid-template-columns:1fr}}

#erp-implementation{scroll-margin-top:100px}.experience-label{text-transform:uppercase;letter-spacing:.12em;font-size:11px;font-weight:900;color:var(--teal2);margin-bottom:8px}.experience-grid .card{display:flex;flex-direction:column}.experience-grid ul{margin-bottom:0}.project-card{display:flex;flex-direction:column}.project-card p{flex:1}.project-tech{border-top:1px solid var(--line);margin-top:18px;padding-top:12px;color:var(--teal2);font-size:12px;font-weight:700;line-height:1.5}.experience-note{color:var(--muted);font-size:13px;margin:24px 0 0}@media(max-width:600px){#erp-implementation{scroll-margin-top:88px}}

.topbar-contact{display:flex;align-items:center;gap:7px}.topbar .phone-link{color:#fff;font-weight:800}.topbar .phone-link:hover{text-decoration:underline}.phone-link{font-weight:700}.primary-phone{margin:-8px -8px 28px;padding:22px;border-radius:16px;background:var(--navy);color:#fff}.primary-phone span{display:block;color:#9be5df;font-size:11px;font-weight:900;letter-spacing:.13em}.primary-phone a{display:block;margin:3px 0;font-size:28px;line-height:1.25;font-weight:900}.primary-phone p{margin:5px 0 0;color:rgba(255,255,255,.78)}.mobile-nav-links .mobile-call{color:#fff;background:var(--navy);margin-top:6px}.mobile-nav-links .mobile-call:hover{color:#fff;background:var(--navy2)}

.strengths-highlight{display:grid;grid-template-columns:.85fr 1.15fr;gap:40px;align-items:center}
.strengths-highlight .section-head{margin-bottom:0}
.strengths-image{width:100%;height:auto;border-radius:20px;border:1px solid var(--line);background:#fff}
@media(max-width:900px){.strengths-highlight{grid-template-columns:1fr;gap:28px}}

/* Show the wordmark, capabilities and tagline; preserve the original image file. */
.strengths-image-crop{overflow:hidden;border-radius:20px;border:1px solid var(--line);background:#fff}
.strengths-image-crop .strengths-image{display:block;width:100%;height:auto;margin-top:-33.333333%;border:0;border-radius:0}

.foot .footer-brand{display:block;width:200px;max-width:100%;margin:0 0 18px;border-radius:12px;overflow:hidden;background:#fff}
.footer-logo{display:block;width:100%;height:auto}
.footer-brand:focus-visible{outline:3px solid var(--teal);outline-offset:4px}

.logo-lockup.gorio-lockup{display:block}
.logo-lockup.gorio-lockup img{width:100%;height:auto;border-radius:12px;margin-bottom:12px}

.gorio-product-heading{margin:12px 0 20px;max-width:440px}
.gorio-product-heading img{width:100%;height:auto}
