@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap"); /* INTER FONT TRIAL */
/* Earth palette for every service page: ocean blue primary, land green secondary. */
:root {
  --ink: #073b5c;
  --green: #2e8b57;
  --teal: #1686c7;
  --lime: #55a95f;
  --paper: #f3f8fa;
  --muted: #526f7d;
  --line: rgba(7, 59, 92, 0.14);
}

/* .site-header { background: #07517e; } */
site-header{height:62px;padding:0 clamp(24px,5vw,80px);display:flex;align-items:center;gap:44px;position:fixed;z-index:10;width:100%;color:#fff;border-bottom:1px solid #0371b9}.brand{display:flex;align-items:center;gap:10px;font:700 21px Manrope}.brand>span>span{color:var(--lime)}.brand svg{width:30px;fill:none;stroke:var(--lime);stroke-width:1.7}.brand svg circle{fill:var(--lime);stroke:none}nav{display:flex;gap:32px;margin-left:auto;font-size:14px}nav a{opacity:.8;transition:.2s}nav a:hover{opacity:1}.header-cta{font-size:13px;border:1px solid rgba(255,255,255,.45);padding:12px 18px;border-radius:2px}
.site-header nav { color: #c9dce8; }
.header-cta { border-color: #6e9dbd; }
.crumbs { color: #5d7688; }
.crumbs span { color: #8ba0ae; }
.hero { background: linear-gradient(120deg, #f3f8fa 62%, #dff2e4 62%); }
.eyebrow, .label { color: #1178b3; }
.hero-lede { color: #506c80; }
.button { background: #1686c7; color: #fff; }
.button.secondary { color: var(--ink); border-color: #829baa; }
.quick-card { background: #1178b3; box-shadow: 20px 20px 0 rgba(7, 59, 92, 0.1); }
.quick-card .label { color: #8bd394; }
.quick-card li { color: #d7e9f4; }
.cap { background: #f8fbfd; }
.process { background: #07517e; }
.process .label { color: #75bde8; }
.process .section-intro, .step p { color: #b9cedb; }
.steps { border-color: #456d88; }
.outcomes { background: #e3f2e8; }
.outcome-grid { background: #b8cedb; }
.outcome { background: #f2f8fb; }
.related-card:hover { border-color: #4f9cce; }
.related-card small { color: #1178b3; }
.cta { background: #dff2e4; }
.cta .label { color: #2e8b57; }
footer { background: #042f4b; color: #abc5d0; }
.brand{display:flex;align-items:center;gap:10px;font:700 21px Manrope}
.brand-logo{display:block;width:clamp(155px,14vw,205px);height:auto}
.site-header .brand{flex:0 0 auto}footer 
.brand-logo{width:185px}
/* .brand-logo { display: block; width: clamp(150px, 14vw, 195px); height: auto; } */
/* .site-header .brand { flex: 0 0 auto; } */
footer .brand-logo { width: 175px; }
.button { background: #1178b3; }
/* .site-header nav { color: #fff; } */
/* .site-header nav a { color: #fff; font-weight: 600; text-shadow: 0 1px 2px rgba(0, 0, 0, 0.3); } */
/* .site-header nav a:hover, .site-header nav a:focus-visible { color: #8ddd96; } */
/* .site-header .header-cta { color: #fff; background: transparent; border: 0; padding: 10px 0; font-weight: 600; text-shadow: 0 1px 2px rgba(0, 0, 0, 0.3); } */
/* .site-header .header-cta:hover, .site-header .header-cta:focus-visible { background: transparent; color: #8ddd96; } */
.site-header{background:#ffffff;backdrop-filter:none;border-bottom:1px solid #0371b9}
.site-header nav a{color:#000000;opacity:1;font-weight:600;text-shadow:0 1px 2px rgba(0,0,0,.3)}
.site-header nav a:hover,.site-header nav a:focus-visible{color:#fb9708}
.site-header .header-cta{color:#000000;background:transparent;border:0;font-weight:600;padding:12px 0;text-shadow:0 1px 2px rgba(0,0,0,.3)}
.site-header .header-cta:hover,.site-header .header-cta:focus-visible{background:transparent;color:#fb9708}

@media (max-width: 850px) {
  .hero { background: #f3f8fa; }
  .brand-logo { width: 150px; }
}
@media(max-width:380px){.brand-symbol{width:34px;height:34px}.brand-name{font-size:17px}.site-header{padding-left:14px;padding-right:14px}.hero-copy{margin-left:18px;margin-right:18px}}
/* Make supporting service details easier to notice and scan. */
.label { display: inline-flex; align-items: center; gap: 8px; font-weight: 700; }
.label::before { content: ""; width: 7px; height: 7px; border-radius: 50%; background: #2e8b57; box-shadow: 0 0 0 4px rgba(46, 139, 87, 0.12); }
.process .label::before, .quick-card .label::before { background: #78cf86; box-shadow: 0 0 0 4px rgba(120, 207, 134, 0.14); }
.process .steps { gap: 12px; border-top: 0; }
.process .step { min-height: 190px; padding: 23px 19px; background: rgba(255, 255, 255, 0.065); border: 1px solid rgba(255, 255, 255, 0.14); border-top: 3px solid #78cf86; transition: transform 0.2s ease, background 0.2s ease; }
.process .step:nth-child(even) { border-top-color: #71bde6; }
.process .step:hover { transform: translateY(-4px); background: rgba(255, 255, 255, 0.1); }
.process .step b { display: grid; place-items: center; width: 32px; height: 32px; border-radius: 50%; background: #78cf86; color: #073b5c; font-weight: 700; }
.process .step:nth-child(even) b { background: #71bde6; }
.process .step h3 { margin-top: 18px; }
@media (max-width: 560px) { .process .step { min-height: 0; } }
.footer-contact { display: flex; align-items: center; gap: 18px; }
.whatsapp-link { display: inline-flex; align-items: center; gap: 7px; color: #78cf86; }
.whatsapp-link svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.whatsapp-link:hover, .whatsapp-link:focus-visible { color: #fff; }
@media (max-width: 560px) { .footer-contact { align-items: flex-start; flex-direction: column; gap: 8px; } }
.social-rail { position: fixed; right: 24px; bottom: 24px; z-index: 50; display: flex; flex-direction: column; gap: 10px; }
.social-link { display: grid; width: 52px; height: 52px; place-items: center; border-radius: 50%; background: #2e8b57; color: #fff; box-shadow: 0 10px 28px rgba(7, 59, 92, 0.3); transition: transform 0.2s ease, background 0.2s ease, box-shadow 0.2s ease; }
.social-link svg { width: 25px; height: 25px; }
.social-link:hover, .social-link:focus-visible { transform: translateY(-3px); background: #247448; box-shadow: 0 14px 32px rgba(7, 59, 92, 0.38); }
@media (max-width: 560px) { .social-rail { right: 16px; bottom: 16px; } .social-link { width: 48px; height: 48px; } .social-link svg { width: 23px; height: 23px; } }

/* INTER FONT TRIAL — remove this block and the import above to revert. */
body, button, input, textarea, select { font-family: "Inter", "DM Sans", sans-serif; }
body :is(h1, h2, h3, .brand, .tech-node, .tech-cluster) { font-family: "Inter", "Manrope", sans-serif; }

/* High-contrast shared brand lockup. */
.brand{display:inline-flex;align-items:center;gap:10px;min-width:max-content}
.brand-symbol{display:block;height:44px;object-fit:contain;filter:drop-shadow(0 3px 8px rgba(0,0,0,.2))}
.brand-name{display:inline-flex;align-items:baseline;font:700 38px/1 "Inter","Manrope",sans-serif;letter-spacing:-.035em}
.brand-name .brand-i{font-size: 30px; color: #fb9708; padding-right: 1px;}.brand-name .brand-geo{color:#0371b9}.brand-name .brand-ignite{color:#55a95f}
footer .brand-symbol{height:44px}
footer .brand-name{font-size:34px}
@media(max-width:560px){.brand{gap:8px}.brand-symbol{width:38px;height:38px}.brand-name{font-size:19px}}

/* .brand { display: inline-flex; align-items: center; gap: 10px; min-width: max-content; } */
/* .brand-symbol { display: block; width: 42px; height: 42px; object-fit: contain; filter: drop-shadow(0 3px 8px rgba(0, 0, 0, 0.2)); } */
/* .brand-name { display: inline-flex; align-items: baseline; font: 700 21px/1 "Inter", "Manrope", sans-serif; letter-spacing: -0.035em; } */
/* .brand-name .brand-i { color: #fff; } */
.brand-name .brand-geo { color: #71c5ed; }
.brand-name .brand-ignite { color: #8ddd96; }
footer .brand-symbol {  height: 44px; }
footer .brand-name { font-size: 20px; }
@media (max-width: 560px) { .brand { gap: 8px; } .brand-symbol { width: 36px; height: 36px; } .brand-name { font-size: 18px; } }

/* Cross-browser viewport fitting safeguards. */
html, body { width: 100%; max-width: 100%; overflow-x: hidden; overflow-x: clip; }
img, svg { max-width: 100%; }
main, section, header, footer, .hero > *, .section > *, .cap, .outcome, .related-card { min-width: 0; }
h1, h2, h3, p, a, span { overflow-wrap: break-word; }
.button, .header-cta { max-width: 100%; }
@media (max-width: 850px) {
  .site-header { padding-left: 20px; padding-right: 20px; gap: 18px; }
  .hero { gap: 38px; padding-top: 58px; padding-bottom: 62px; }
  .quick-card { width: 100%; max-width: 520px; box-shadow: 10px 10px 0 rgba(23, 77, 59, 0.1); }
  .section-head { gap: 22px; margin-bottom: 36px; }
}
@media (max-width: 560px) {
  .site-header { height: 68px; }
  .hero { padding-left: 20px; padding-right: 20px; }
  .hero h1 { font-size: clamp(38px, 12vw, 44px); overflow-wrap: anywhere; }
  .hero-lede { font-size: 16px; }
  .quick-card { padding: 26px 22px; box-shadow: 6px 6px 0 rgba(23, 77, 59, 0.1); }
  .section, .cta { padding-left: 20px; padding-right: 20px; }
  .actions .button { justify-content: center; }
  footer { padding-left: 20px; padding-right: 20px; }
  footer > span { overflow-wrap: anywhere; }
}
@media (max-width: 380px) {
  .brand-symbol { width: 33px; height: 33px; }
  .brand-name { font-size: 17px; }
  .site-header { padding-left: 14px; padding-right: 14px; }
  .hero, .section, .cta, footer { padding-left: 16px; padding-right: 16px; }
}
