/* ============================================================================
   Guardian Robotics — base layer
   Reset, tokens, and the shared chrome (header, nav, buttons, sections) that
   the original pages carry inline. New pages load this instead of duplicating.
   Load order: base.css -> site.css -> guardian.css -> page css
   ========================================================================= */

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}

:root{
  --blue:#1668B8;--blue-dark:#0F4E8F;--blue-deep:#0A2F52;
  --blue-light:#EAF3FC;--blue-mid:#BFDBF4;
  --bg:#FFFFFF;--bg2:#F6FAFD;--bg3:#EDF4FB;
  --border:#DCE9F5;--border2:#C2D9EE;--border3:#96BDDC;
  --text:#0A1622;--text2:#31506B;--text3:#7593AF;
  --green:#0B7A46;--greenbg:#E7F5ED;--greenbdr:#A3D7BA;
  --red:#BE3326;--redbg:#FBEAE8;--redbdr:#E8B4AE;
  --mono:"JetBrains Mono",monospace;
  --grotesk:"Space Grotesk",sans-serif;
  --sans:"DM Sans",sans-serif
}

html{scroll-behavior:smooth}
body{font-family:var(--sans);background:var(--bg);color:var(--text);line-height:1.65;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
.container{max-width:1180px;margin:0 auto;padding:0 2rem}

/* ---- header ---- */
header{position:fixed;top:0;left:0;right:0;z-index:9999;border-bottom:1px solid var(--border);background:#fff}
.hdr{display:flex;align-items:center;justify-content:space-between;height:74px;max-width:1180px;margin:0 auto;padding:0 2rem}
.logo img{height:52px;width:auto}
nav{display:flex;align-items:center;gap:1.75rem}
nav a{font-family:var(--sans);font-size:.85rem;font-weight:500;color:var(--text2);transition:color .15s}
nav a:hover,nav a.active{color:var(--blue)}

/* ---- buttons ---- */
.btn{display:inline-flex;align-items:center;gap:.4rem;font-family:var(--grotesk);font-size:.86rem;font-weight:600;padding:.62rem 1.35rem;border-radius:10px;cursor:pointer;transition:all .2s;border:none;text-decoration:none;white-space:nowrap}
.btn-p{background:var(--blue);color:#fff}
.btn-p:hover{background:var(--blue-dark)}
.btn-g{background:#fff;color:var(--blue);border:1.5px solid var(--border2)}
.btn-g:hover{background:var(--blue-light)}
.btn-lg{font-size:.98rem;padding:.92rem 2rem;border-radius:12px}

/* ---- section scaffolding ---- */
section{padding:clamp(76px,8.5vw,118px) 0}
hr.div{border:none;border-top:1px solid var(--border)}
.eyebrow{display:flex;align-items:center;gap:.75rem;margin-bottom:1.2rem}
.eyebrow-line{width:28px;height:2px;background:var(--blue);border-radius:2px;flex-shrink:0}
.eyebrow-txt{font-family:var(--grotesk);font-size:.69rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:var(--blue)}
h2.sh{font-family:var(--grotesk);font-weight:700;letter-spacing:-.035em;line-height:1.08;color:var(--text);margin-bottom:1rem}
.ss{font-size:1.01rem;color:var(--text2);line-height:1.78}

/* ---- footer fallback (mega footer styling lives in footer.css) ---- */
footer{background:var(--blue-deep);padding:3.5rem 0 2rem}
.ftr-logo img{height:46px;width:auto}
.ftr-col ul{list-style:none}
