/* gomould theme: clean commi-style system (Inter, dark header/footer, pill buttons, bold headings). Loaded after style.css on every page. */
@font-face{font-family:Inter;src:url("../assets/fonts/inter-latin-var.woff2") format("woff2");font-weight:400 800;font-display:swap}
:root{--blue:#016FC0;--blue-hover:#015ea3;--blue-light:#4EAEFC;--blue-muted:#016fc01f;--ink:#111827;--muted:#6B7280;--dark:#0B1622;--dark-2:#111c2b;--line:#e8ecf1;--alt:#f7f9fb;--header:72px}
body{font:16px/1.65 Inter,ui-sans-serif,system-ui,sans-serif;color:var(--ink);-webkit-font-smoothing:antialiased}
h1,h2,h3,h4,button,.button,nav,.eyebrow,.desktop-nav a{font-family:Inter,ui-sans-serif,system-ui,sans-serif}
h1,h2,h3,h4{font-weight:800;letter-spacing:-.025em;color:var(--ink)}
h1{font-size:clamp(40px,5.4vw,76px);line-height:1.04}
h2{font-size:clamp(30px,3.2vw,44px);line-height:1.12}
h3{font-size:clamp(18px,1.5vw,21px);font-weight:700;letter-spacing:-.01em}
p{color:inherit}
::selection{background:var(--blue);color:#fff}
::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:#f0f2f5}::-webkit-scrollbar-thumb{background:var(--blue);border-radius:999px}

/* Header: dark bar */
.site-header{height:var(--header);background:var(--dark);border-bottom:1px solid #ffffff12}
.header-inner{width:min(1240px,calc(100% - 48px))}
.brand img{width:auto;height:34px}
.desktop-nav a{color:#e5e9ef;font-size:13.5px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;position:relative;padding:6px 0}
.desktop-nav a::after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:2px;background:var(--blue);transform:scaleX(0);transition:transform .3s}
.desktop-nav a:hover,.desktop-nav a[aria-current=page]{color:#fff}
.desktop-nav a:hover::after,.desktop-nav a[aria-current=page]::after{transform:scaleX(1)}
.menu-toggle span{background:#fff}
.mobile-menu .brand img{height:30px}

/* Buttons: pills */
.button{border-radius:999px;font-weight:700;font-size:14.5px;padding:12px 24px;min-height:46px;gap:10px;justify-content:center;background:var(--blue);border:1px solid var(--blue);box-shadow:0 10px 26px #016fc040;transition:background .25s,transform .25s,box-shadow .25s}
.button:hover{background:var(--blue-hover);border-color:var(--blue-hover);transform:translateY(-2px);box-shadow:0 14px 30px #016fc055}
.button-secondary{background:transparent;box-shadow:none;border-color:currentColor;color:var(--ink)!important}
.button-secondary:hover{background:#0b16220d;border-color:currentColor;box-shadow:none}
.header-quote{min-height:40px;padding:9px 20px;font-size:14px}

/* Section label + heading pattern */
.label,.eyebrow{display:block;font:700 11.5px/1.4 Inter,sans-serif!important;letter-spacing:.22em!important;text-transform:uppercase;color:var(--blue)!important;margin:0 0 14px}
.accent{color:var(--blue)}
.sec-head{text-align:center;max-width:760px;margin:0 auto clamp(36px,4vw,56px)}
.sec-head h2{margin:0 0 14px}
.sec-head p{color:var(--muted);font-size:17px;margin:0}

/* Inner page heroes: dark */
.page-hero{background:var(--dark)!important}
.page-hero .hero-shade{background:linear-gradient(90deg,#0b1622f2 0%,#0b1622d9 45%,#0b162270 100%)!important}
.page-hero h1{color:#fff;font-size:clamp(38px,4.6vw,64px)}
.page-hero p,.breadcrumb,.breadcrumb a{color:#cbd5e1!important}

/* Generic section headings on inner pages */
.guide-section h2,.section-heading h2{color:var(--ink)}
.guide-section:nth-of-type(even){background:var(--alt)}

/* CTA band + footer: dark */
.cta-band{background:var(--dark)!important}
.site-footer{background:var(--dark)!important;color:#9aa6b6}
.site-footer h2{font-size:12px!important;letter-spacing:.18em;text-transform:uppercase;color:#fff!important;font-weight:700}
.site-footer a,.site-footer p,.site-footer address{color:#9aa6b6!important}
.site-footer a:hover{color:#fff!important}
.footer-brand img{width:auto!important;height:34px}
.footer-bottom{border-top-color:#ffffff1a!important}

/* Cards: one clean style */
.card,.team-profile,.work-card,.case-card{border-radius:16px}

/* CLIENT REQUIREMENT: the button blue #016FC0 is the brand background colour (header, banners, CTA band, footer). Keep this block last. */
:root{--dark:#016FC0;--ice:#BFE3FF}
.site-header{background:#016FC0;border-bottom-color:#ffffff26}
.desktop-nav a{color:#fff}
.desktop-nav a::after{background:#fff}
.header-quote{background:#fff!important;border-color:#fff!important;color:#016FC0!important;box-shadow:0 8px 20px #00305a33}
.header-quote:hover{background:#eaf4fc!important}
.page-hero{background:#016FC0!important}
.page-hero .hero-shade{background:linear-gradient(90deg,#016FC0f5 0%,#016FC0e0 45%,#016FC066 100%)!important}
.page-hero p,.breadcrumb,.breadcrumb a{color:#fff!important}
.cta-band,.site-footer{background:#016FC0!important}
.cta-band .button:not(.button-secondary){background:#fff;border-color:#fff;color:#016FC0!important}
.site-footer a,.site-footer p,.site-footer address{color:#e6f2fc!important}
.footer-bottom{border-top-color:#ffffff40!important}

/* PREMIUM CTA: luminous blue buttons (brand blue #016FC0 -> light blue). Keep this block last. */
html body .button.button.button:not(.button-secondary):not(.go-ghost){
  position:relative;overflow:hidden;isolation:isolate;
  background:linear-gradient(135deg,#5BB8FF 0%,#2A8FE6 38%,#016FC0 72%,#0159A3 100%)!important;
  border:1px solid #7cc6ff!important;color:#fff!important;font-weight:700;letter-spacing:.005em;
  text-shadow:0 1px 1px #00305a40;
  box-shadow:inset 0 1px 0 #ffffff80,inset 0 -3px 8px #00305a33,0 12px 30px #016fc059,0 0 0 4px #4eaefc1f!important;
  transition:transform .3s cubic-bezier(.2,.8,.2,1),box-shadow .3s,filter .3s}
html body .button.button.button:not(.button-secondary):not(.go-ghost)::before{content:"";position:absolute;z-index:-1;top:0;bottom:0;left:-75%;width:50%;background:linear-gradient(100deg,transparent,#ffffff8c,transparent);transform:skewX(-20deg);animation:ctaShine 5s ease-in-out 1.5s infinite}
html body .button.button.button:not(.button-secondary):not(.go-ghost):hover{transform:translateY(-2px);filter:brightness(1.08) saturate(1.05);box-shadow:inset 0 1px 0 #ffffff99,inset 0 -3px 8px #00305a33,0 18px 40px #016fc073,0 0 0 6px #4eaefc2e!important}
html body .button.button.button:not(.button-secondary):not(.go-ghost):active{transform:none;filter:brightness(.96)}
html body .button.button.button:not(.button-secondary):not(.go-ghost):focus-visible{outline:3px solid #0B1622;outline-offset:3px}
/* On blue surfaces (header, banners, CTA band, footer): the light-blue version */
html body .site-header .button.button.button:not(.button-secondary),html body .page-hero .button.button.button:not(.button-secondary),html body .cta-band .button.button.button:not(.button-secondary),html body .go-cta .button.button.button:not(.go-ghost),html body .site-footer .button.button.button:not(.button-secondary){
  background:linear-gradient(135deg,#FFFFFF 0%,#DDF0FF 45%,#A9D9FF 100%)!important;border-color:#ffffff!important;color:#014E8A!important;text-shadow:none;
  box-shadow:inset 0 1px 0 #fff,0 12px 30px #00305a40,0 0 0 4px #ffffff26!important}
@keyframes ctaShine{0%{left:-75%}22%,100%{left:130%}}
@media(prefers-reduced-motion:reduce){html body .button.button.button::before{animation:none!important;display:none}}
