/* Webcafe website global menu (.wcm) and footer (.wcf), copied from the webcafe.co.za GHL
   "Global Menu" / "Global Footer" snippets (8 Oct 2026) so the app looks like the site.
   Scoped to .wcm / .wcf so it can't clash with quoter.css. Keep in step with the website. */
.wcm,.wcf{
  --cyan:#00B2FE; --cyan-2:#35C3FF; --sky:#EBF8FF; --sky-2:#E0F2FE; --sky-line:#BAE6FD;
  --lime:#86C53C; --navy:#0E1B38; --slate:#1E293B; --white:#FFFFFF; --sky-text:#93C5FD;
  --red:#DC2626; --red-hover:#B91C1C;
  --btn-text:#0E1B38;
  --font-head:'Montserrat',system-ui,-apple-system,'Segoe UI',Arial,sans-serif;
  --font-body:'Inter',system-ui,-apple-system,'Segoe UI',Arial,sans-serif;
}
.wcm *,.wcm *::before,.wcm *::after,.wcf *,.wcf *::before,.wcf *::after{box-sizing:border-box}
.wcm,.wcf{margin:0;font-family:var(--font-body);color:var(--slate);background:var(--white);line-height:1.6;font-size:17px;-webkit-font-smoothing:antialiased}
.wcm h1,.wcm h2,.wcm h3,.wcm h4,.wcm p,.wcm ul,.wcf h1,.wcf h2,.wcf h3,.wcf h4,.wcf p,.wcf ul{margin:0;padding:0}
.wcm ul,.wcf ul{list-style:none}
.wcm img,.wcf img{max-width:100%;display:block}
.wcm a,.wcf a{color:inherit}
.wcm .wrap,.wcf .wrap{max-width:1160px;margin:0 auto;padding:0 24px}
.wcm :focus-visible,.wcf :focus-visible{outline:3px solid var(--cyan);outline-offset:3px}
.wcm .btn,.wcf .btn{display:inline-block;text-decoration:none;text-align:center;font-family:var(--font-head);font-weight:700;font-size:15.5px;line-height:1.3;padding:15px 28px;border-radius:999px;border:2px solid var(--lime);background:var(--lime);color:var(--btn-text);transition:background .15s,border-color .15s,color .15s}
.wcm .btn:hover,.wcf .btn:hover{background:var(--cyan);border-color:var(--cyan)}
.wcm .btn-red{background:var(--red);border-color:var(--red);color:var(--white)}
.wcm .btn-red:hover{background:var(--red-hover);border-color:var(--red-hover);color:var(--white)}
@media (max-width:640px){
  .wcm,.wcf{font-size:16px}
}

/* ---- Global menu ---- */
.wcm .site-header{background:var(--white);border-bottom:1px solid var(--sky-line);position:relative;z-index:50}
.wcm .nav{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:82px}
.wcm .brand img{height:46px;width:auto}
.wcm .menu{display:flex;align-items:center;gap:6px}
.wcm .menu>li{position:relative}
.wcm .menu a.nl,.wcm .menu button.nl{font:inherit;font-weight:600;font-size:15.5px;color:var(--navy);text-decoration:none;background:none;border:0;cursor:pointer;padding:10px 14px;border-radius:8px;display:inline-flex;align-items:center;gap:6px}
.wcm .menu a.nl:hover,.wcm .menu button.nl:hover,.wcm .menu li:focus-within>.nl{color:var(--lime)}
.wcm .menu .caret{width:9px;height:9px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translateY(-2px)}
.wcm .dropdown{position:absolute;top:100%;left:0;min-width:300px;background:var(--white);border:1px solid var(--sky-line);border-radius:14px;box-shadow:0 18px 40px rgba(14,27,56,.12);padding:10px;display:none}
.wcm .menu li:hover>.dropdown,.wcm .menu li:focus-within>.dropdown{display:block}
.wcm .dropdown a{display:block;text-decoration:none;padding:11px 14px;border-radius:99px}
.wcm .dropdown a strong{display:block;font-family:var(--font-head);font-size:14.5px;color:var(--navy)}
.wcm .dropdown a span{display:block;font-size:13.5px;color:#64748B}
.wcm .dropdown a:hover{background:var(--sky)}
.wcm .dropdown a:hover strong{color:var(--lime)}
.wcm .nav .btn{padding:11px 22px;font-size:14.5px}
.wcm .cta-group{display:flex;align-items:center;gap:10px}
.wcm .burger{display:none;background:none;border:2px solid var(--sky-line);border-radius:10px;padding:9px 11px;cursor:pointer}
.wcm .burger span{display:block;width:22px;height:2.5px;background:var(--navy);margin:4px 0;border-radius:2px}
@media (max-width:900px){
  .wcm .burger{display:block}
  .wcm .nav{flex-wrap:wrap;padding-top:12px;padding-bottom:12px}
  .wcm .menu-wrap{display:none;width:100%;order:3;padding:8px 0 16px}
  .wcm .menu-wrap.open{display:block}
  .wcm .menu{flex-direction:column;align-items:stretch;gap:0}
  .wcm .menu>li>.nl{width:100%;padding:12px 6px}
  .wcm .dropdown{position:static;display:block;box-shadow:none;border:0;padding:0 0 6px 10px;min-width:0}
  .wcm .dropdown a span{display:none}
  .wcm .nav>.cta-group{display:none}
  .wcm .menu-wrap .btn{display:block;margin-top:10px}
}
@media (min-width:901px){
  .wcm .menu-wrap .cta-group{display:none}
}

/* ---- Global footer ---- */
.wcf .site-footer{background:var(--navy);color:var(--white);padding:72px 0 28px}
.wcf .foot-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.3fr;gap:40px}
.wcf .wordmark{font-family:var(--font-head);font-weight:800;font-size:28px;letter-spacing:-.02em;color:var(--white)}
.wcf .wordmark i{color:var(--lime);font-style:normal}
.wcf .site-footer p.about{color:var(--sky-text);margin-top:14px;max-width:34ch;font-size:15.5px}
.wcf .site-footer h4{font-family:var(--font-head);font-weight:700;font-size:15px;color:var(--white);margin-bottom:16px}
.wcf .site-footer li{margin-bottom:10px;font-size:15.5px;color:var(--sky-text)}
.wcf .site-footer a{text-decoration:none;color:var(--sky-text)}
.wcf .site-footer a:hover{color:var(--lime)}
.wcf .site-footer address{font-style:normal;color:var(--sky-text);font-size:15.5px;margin-bottom:12px}
.wcf .site-footer address b{color:var(--white);display:block;font-size:14px}
.wcf .copy{margin-top:48px;padding-top:24px;border-top:1px solid rgba(147,197,253,.25);font-size:14px;color:var(--sky-text)}
@media (max-width:1020px){
  .wcf .foot-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:640px){
  .wcf .foot-grid{grid-template-columns:1fr}
}
