/* Site header + footer only — for pages that keep their own content styling (ConnectAI) */
:root{
  --blue:#1563FF; --ink:#141d33; --muted:#5b6478; --bg:#ffffff;
  --p-blue:#ffffff; --p-green:#ffffff; --p-amber:#ffffff; --p-rose:#ffffff; --p-lilac:#ffffff;
  --line:#e3e8f2; --r:20px;
}
.header *,.footer *{margin:0;padding:0;box-sizing:border-box}
.header,.footer{font-family:'Hanken Grotesk',sans-serif;color:var(--ink);line-height:1.66;font-size:16px}
.header a,.footer a{text-decoration:none;color:var(--blue)}
.header img,.footer img{display:block;max-width:100%}
.header .wrap,.footer .wrap{max-width:1140px;margin:0 auto;padding:0 22px}
/* header */
.header{position:sticky;top:0;z-index:80;background:rgba(255,255,255,.96);backdrop-filter:blur(12px)}
.header.scrolled{box-shadow:0 6px 24px rgba(20,29,51,.08)}
.nav{display:flex;align-items:center;justify-content:space-between;padding:13px 0;gap:14px}
.brand img{height:36px;width:auto}
.links{display:flex;gap:3px;background:#ffffff;border:1px solid var(--line);border-radius:999px;padding:5px;align-items:center;flex-wrap:wrap;justify-content:center}

.links>a,.dd>button{padding:8px 16px;border-radius:999px;font-size:.87rem;font-weight:600;font-family:inherit;border:none;background:transparent;color:var(--ink);cursor:pointer;white-space:nowrap}
.links>a.on,.dd>button.on{background:#fff;color:var(--blue);box-shadow:0 1px 5px rgba(20,29,51,.09)}
.dd{position:relative}
.dd::after{content:'';position:absolute;left:-30px;right:-30px;top:100%;height:16px}
.dd>button{display:flex;align-items:center;gap:6px}
.dd svg{transition:transform .2s}
.dd.open svg{transform:rotate(180deg)}
.menu{display:none;position:absolute;top:calc(100% + 13px);left:50%;transform:translateX(-50%);background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:0 22px 60px rgba(20,29,51,.16);padding:16px;min-width:560px;z-index:90}
.dd.open .menu{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media(hover:hover){.dd:hover .menu{display:grid;grid-template-columns:1fr 1fr;gap:14px}}
.menu h6{font-family:'Hanken Grotesk';font-size:.66rem;text-transform:uppercase;letter-spacing:.12em;color:var(--muted);margin:2px 8px 7px}
.menu a{display:block;padding:8px 10px;border-radius:11px;font-size:.86rem;font-weight:700;color:var(--ink)}
.menu a small{display:block;font-weight:400;font-size:.73rem;color:var(--muted);line-height:1.35}
.menu a:hover{background:#ffffff;color:var(--blue)}
.menu .mrow{grid-column:1/-1;border-top:1px solid var(--line);padding-top:11px;margin-top:2px;display:flex;gap:10px;flex-wrap:wrap}
.menu .mrow a{flex:1;background:#ffffff;border:1px solid #c9daff;color:var(--blue);text-align:center;min-width:200px}
.menu .mrow a.allp{background:var(--p-blue)}
.cta{background:var(--blue);color:#fff!important;font-weight:700;font-size:.85rem;border-radius:999px;padding:10px 20px;box-shadow:0 6px 18px rgba(21,99,255,.28);white-space:nowrap}

/* mobile menu button */
.burger{display:none;flex-direction:column;justify-content:center;gap:5px;width:42px;height:42px;border:1px solid var(--line);background:#ffffff;border-radius:12px;cursor:pointer;padding:0 11px}
.burger span{display:block;height:2px;width:100%;background:var(--ink);border-radius:2px;transition:transform .25s,opacity .2s}
.burger.on span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.burger.on span:nth-child(2){opacity:0}
.burger.on span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.footer{background:#fff;border-top:1px solid var(--line);padding:48px 0 28px;margin-top:0}
.fgridft{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:36px}
.footer img{height:32px;margin-bottom:14px}
.footer p{font-size:.85rem;color:var(--muted)}
.footer h5{font-size:.78rem;font-weight:800;margin-bottom:12px;font-family:'Hanken Grotesk'}
.footer ul{list-style:none}
.footer li{margin-bottom:8px}
.footer li a{font-size:.85rem;color:var(--muted)}
.footer li a:hover{color:var(--blue)}
.fbot{border-top:1px solid var(--line);margin-top:38px;padding-top:20px;display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;font-size:.78rem;color:var(--muted)}
.footer h5{font-family:'Hanken Grotesk',sans-serif}
@media(max-width:900px){
  /* header becomes: logo | burger  — nav drops down as a panel */
  .nav{flex-wrap:wrap;padding:11px 0;row-gap:0}
  .brand{margin-right:auto}
  .brand img{height:30px}
  .burger{display:flex;order:3}
  .header .cta{display:none}
  .links{display:none;order:4;width:100%;flex-direction:column;align-items:stretch;background:#fff;border:1px solid var(--line);border-radius:16px;padding:10px;margin-top:10px;box-shadow:0 16px 40px rgba(20,29,51,.12);max-height:76vh;overflow-y:auto}
  .links.open{display:flex}
  .links{justify-content:flex-start;flex-wrap:nowrap;overscroll-behavior:contain}
  .links>*{flex-shrink:0}
  .links>a,.dd>button{width:100%;text-align:left;padding:12px 14px;border-radius:10px;font-size:.95rem}
  .links>a:active,.links>a:hover{background:#ffffff;color:var(--blue)}
  .dd{width:100%}
  .dd>button{justify-content:space-between;background:transparent;box-shadow:none}
  .dd::after{display:none}
  .menu{position:static;transform:none;display:none;min-width:0;border:none;box-shadow:none;padding:4px 0 8px 10px;border-left:2px solid #c9daff;margin:2px 0 6px 8px;border-radius:0}
  .dd.open .menu{display:block}
  .dd:hover .menu{display:none}
  .dd.open:hover .menu{display:block}
  .menu h6{margin:10px 6px 4px}
  .menu a{font-size:.9rem;padding:9px 8px}
  .menu .mrow{flex-direction:column;gap:8px;padding-top:8px}
  .menu .mrow a{min-width:0}
  .links .mobile-cta{display:block!important;background:var(--blue);color:#fff!important;text-align:center;font-weight:700;padding:12px;border-radius:999px;margin-top:8px}
  /* content */
  .fgridft{grid-template-columns:1fr 1fr;gap:24px}
}
@media(max-width:560px){
  .fgridft{grid-template-columns:1fr}
  .header .wrap,.footer .wrap{padding:0 16px}
}
