
:root{
  --color-primary:#0B3B8C; --color-primary-dark:#072B66; --color-primary-light:#3C79FF;
  --color-text:#0E1726; --color-text-muted:#334155; --color-bg:#FFFFFF; --color-bg-alt:#F6F8FC;
  --color-border:#E5E7EB; --color-success:#10B981; --color-warning:#F59E0B; --color-error:#EF4444;
  --radius-md:8px; --radius-lg:12px; --radius-xl:16px;
  --shadow-subtle:0 6px 24px rgba(2,6,23,.08);
  --space-1:4px; --space-2:8px; --space-3:16px; --space-4:24px; --space-5:48px;
  --section-gap:96px; --container-pad:24px; --max-width:1200px;
  --h1:44px; --h2:32px; --h3:24px; --body:16px; --small:14px;
}
@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500&family=Outfit:wght@600;700&display=swap');
*,*::before,*::after{box-sizing:border-box}
body{font-family:Manrope,system-ui,Arial,sans-serif;color:var(--color-text);background:var(--color-bg);line-height:1.6;margin:0;font-size:var(--body)}
h1,h2,h3{font-family:Outfit,Manrope,system-ui,Arial,sans-serif;line-height:1.2}
h1{font-size:var(--h1)} h2{font-size:var(--h2)} h3{font-size:var(--h3)}
img{max-width:100%;display:block;height:auto}
a{color:var(--color-primary);text-decoration:none}
.container{max-width:var(--max-width);margin-inline:auto;padding-inline:var(--container-pad)}
.section{padding-block:calc(var(--section-gap)*.6) var(--section-gap)} .section--alt{background:var(--color-bg-alt)}
.btn{display:inline-block;padding:14px 20px;border-radius:var(--radius-md);border:1px solid transparent;background:var(--color-primary);color:#fff;font-weight:600;width:100%;text-align:center;box-shadow:var(--shadow-subtle)}
.btn--ghost{background:transparent;border-color:var(--color-border);color:var(--color-text)}
.site-header{position:sticky;top:0;z-index:1000;backdrop-filter:saturate(180%) blur(8px);background:transparent;transition:background .3s ease,box-shadow .3s ease}
.site-header--scrolled{background:rgba(255,255,255,.9);box-shadow:0 2px 12px rgba(2,6,23,.08)}
.nav{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px var(--container-pad)}
.nav__brand{display:flex;align-items:center;gap:12px;font-weight:700;color:var(--color-text)}
.nav__logo{width:28px;height:28px}
.nav__menu{display:flex;align-items:center;gap:8px;list-style:none;padding:0;margin:0}
.nav__link{display:block;padding:10px 14px;border-radius:var(--radius-md);color:var(--color-text)}
.nav__item--has-dropdown{position:relative}
.dropdown{position:absolute;top:calc(100% + 10px);right:0;min-width:240px;background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-subtle);padding:8px;display:none}
.nav__item--has-dropdown.open .dropdown,.nav__item--has-dropdown:focus-within .dropdown{display:block}
.hero{min-height:82vh;display:grid;place-items:center;padding-block:80px;position:relative;overflow:hidden;background:radial-gradient(600px 250px at 20% 20%, rgba(60,121,255,.12), transparent 60%), radial-gradient(600px 250px at 80% 30%, rgba(11,59,140,.12), transparent 60%)}
.hero__bg{position:absolute;inset:-10%;background-size:cover;background-position:center}
.hero__overlay{position:absolute;inset:0;background:linear-gradient(to bottom, rgba(255,255,255,0), rgba(255,255,255,.55) 55%, #fff)}
.hero__inner{max-width:800px;text-align:center;display:grid;gap:16px;position:relative;z-index:1;padding-block:120px}
.site-footer{padding-block:32px;background:var(--color-bg-alt);border-top:1px solid var(--color-border)}
.footer__grid{display:grid;grid-template-columns:1fr auto;align-items:center;gap:16px}
.footer__links{display:flex;gap:16px;flex-wrap:wrap}
.footer__small{color:#64748b;font-size:var(--small)}
.reveal{opacity:0;transform:translateY(8px);transition:opacity .6s ease, transform .6s ease}
.reveal.is-visible{opacity:1;transform:none}
.cookie-banner{position:fixed;inset:auto 16px 16px 16px;background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-subtle);padding:16px;display:none;z-index:2000}

/* full-bleed section for industries */
.section--fullbleed .container{max-width:100%;padding-left:var(--container-pad);padding-right:var(--container-pad)}
