/* ============================================================
   Ceburu brand layer — shared by every inner page.
   Loaded LAST in <head> so it sits on top of each page's own styles.
   Source of truth for the look: index.html (homepage).
   ============================================================ */
@import url('https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@400;500&family=IBM+Plex+Sans:wght@300;400;500;600&family=Instrument+Serif:ital@0;1&display=swap');

  :root{
    --bg:#0D1A22;
    --bg-2:#112230;
    --bg-line:rgba(232,222,203,.08);
    --cream:#EBE1CE;
    --cream-2:#F4EEDD;
    --cream-dim:rgba(235,225,206,.72);
    --cream-mute:rgba(235,225,206,.55);
    --cream-faint:rgba(235,225,206,.42);
    --accent:#2BB3A3;
    --sans:'IBM Plex Sans',system-ui,-apple-system,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;
    --serif:'Instrument Serif',Georgia,serif;
    --mono:'IBM Plex Mono',ui-monospace,SFMono-Regular,Menlo,monospace;
  }

  html,body{background:var(--bg);color:var(--cream);font-family:var(--sans);-webkit-font-smoothing:antialiased}
  body{overflow-x:hidden}

  /* Film grain overlay across full page */
  body::after{content:"";position:fixed;inset:0;pointer-events:none;z-index:200;opacity:.14;
    background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='240' height='240'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.95' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 1  0 0 0 0 1  0 0 0 0 1  0 0 0 1.3 -0.15'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>");
    background-size:240px 240px}


  /* Eyebrow */
  .eyebrow{display:inline-flex;align-items:center;gap:14px;font-family:var(--mono);font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:var(--cream-dim);font-weight:500}
  .eyebrow::before{content:"";width:40px;height:1px;background:var(--accent);display:inline-block}

  /* Buttons */
  .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:var(--sans);font-size:14px;font-weight:500;letter-spacing:-0.005em;white-space:nowrap;border:1px solid transparent;border-radius:999px;transition:background .2s,color .2s,border-color .2s,transform .12s}
  .btn:active{transform:scale(.98)}
  .btn--brand{background:var(--cream);color:#0D1A22;padding:14px 26px}
  .btn--brand:hover{background:#fff;color:#0D1A22}
  .btn--ghost-lg{color:var(--cream);padding:14px 20px}
  .btn--ghost-lg:hover{color:var(--accent)}
  .btn--sm{font-size:13.5px;padding:9px 18px}
  .btn--pill-cream{background:var(--cream);color:#0D1A22;font-weight:500}
  .btn--pill-cream:hover{background:#fff}
  .btn--pill-ghost{color:var(--cream);background:transparent;border:1px solid rgba(235,225,206,.28)}
  .btn--pill-ghost:hover{border-color:var(--cream)}

  /* ============================== NAV ============================== */
  .nav-wrap{position:sticky;top:0;left:0;right:0;z-index:50;padding:16px 24px 0;pointer-events:none}
  .nav{pointer-events:auto;max-width:1100px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;
    background:rgba(17,34,48,.74);backdrop-filter:blur(22px) saturate(160%);-webkit-backdrop-filter:blur(22px) saturate(160%);
    border:1px solid rgba(235,225,206,.10);border-radius:999px;
    padding:6px 6px 6px 20px;box-shadow:0 10px 30px -12px rgba(0,0,0,.6);
    transition:max-width .55s cubic-bezier(.2,.7,.2,1),padding .45s cubic-bezier(.2,.7,.2,1),background .35s,border-color .35s,box-shadow .35s,backdrop-filter .35s}
  .nav-wrap.is-scrolled .nav{max-width:1060px;padding:6px 6px 6px 20px;background:rgba(17,34,48,.74);
    backdrop-filter:blur(22px) saturate(160%);-webkit-backdrop-filter:blur(22px) saturate(160%);
    border-color:rgba(235,225,206,.10);box-shadow:0 10px 30px -12px rgba(0,0,0,.6)}
  .nav-brand{display:flex;align-items:center;gap:10px}
  .nav-brand img{height:20px;width:auto;display:block;image-rendering:-webkit-optimize-contrast;-webkit-backface-visibility:hidden;backface-visibility:hidden;transform:translateZ(0)}
  .nav-links{display:flex;gap:26px;font-size:13.5px;color:var(--cream-dim);font-weight:400}
  .nav-links a,.nav-trigger{color:var(--cream-dim);transition:color .18s;display:inline-flex;align-items:center;gap:4px}
  .nav-links a:hover,.nav-trigger:hover,.nav-item:hover .nav-trigger{color:var(--cream)}
  .nav-trigger{cursor:pointer}
  .nav-trigger .chev{width:10px;height:10px;opacity:.6;transition:transform .18s}
  .nav-item{position:relative;display:inline-flex;align-items:center}
  .nav-item:hover .nav-trigger .chev{transform:rotate(180deg)}
  .nav-cta{display:flex;gap:6px;align-items:center}

  /* Mega menus */
  .mega{position:absolute;top:100%;padding-top:18px;opacity:0;pointer-events:none;transform:translateY(-6px);transition:opacity .18s,transform .18s;z-index:60}
  .mega--start{left:-14px}
  .mega--center{left:50%;transform:translateX(-50%) translateY(-6px)}
  .mega--end{right:-14px}
  .nav-item:hover .mega,.nav-item:focus-within .mega{opacity:1;pointer-events:auto}
  .nav-item:hover .mega--start,.nav-item:focus-within .mega--start{transform:translateY(0)}
  .nav-item:hover .mega--center,.nav-item:focus-within .mega--center{transform:translateX(-50%) translateY(0)}
  .nav-item:hover .mega--end,.nav-item:focus-within .mega--end{transform:translateY(0)}
  .mega-inner{background:rgba(17,34,48,.98);backdrop-filter:blur(20px);border:1px solid rgba(235,225,206,.10);border-radius:18px;box-shadow:0 20px 60px -20px rgba(0,0,0,.6);padding:12px}
  .mega-grid{display:grid;gap:4px}
  .mega--platform .mega-grid,.mega--solutions .mega-grid{grid-template-columns:repeat(3,minmax(210px,1fr))}
  .mega--resources .mega-grid{grid-template-columns:1fr;min-width:280px}
  .mega-card{display:flex;gap:11px;padding:11px;border-radius:10px;align-items:flex-start;color:var(--cream);transition:background .14s}
  .mega-card:hover{background:rgba(235,225,206,.06)}
  .mega-icon{width:34px;height:34px;flex-shrink:0;border-radius:9px;background:rgba(43,179,163,.14);color:var(--accent);display:grid;place-items:center}
  .mega-icon svg{width:18px;height:18px;stroke-width:1.7}
  .mega-text{display:flex;flex-direction:column;gap:2px;min-width:0}
  .mega-title{font-size:13.5px;font-weight:600;color:var(--cream);letter-spacing:-0.005em}
  .mega-desc{font-size:11.5px;color:var(--cream-mute);line-height:1.35}


  .mega-card,.mega-card:hover{text-decoration:none}
  @media (max-width:600px){ .nav-login{display:none} }
  @media (max-width:960px){ .nav-links{display:none} .nav-wrap{padding:12px 16px 0} }

  /* Footer */
  footer.foot{padding:80px 40px 40px;border-top:1px solid var(--bg-line);background:var(--bg);position:relative}
  .foot-tagline{margin:14px 0 20px !important;font-family:var(--serif);font-style:italic;font-weight:400;color:var(--cream);font-size:14px;line-height:1.4;letter-spacing:0;max-width:none !important}
  .foot-tagline em{font-style:italic;color:var(--cream)}
  .foot-inner{max-width:1280px;margin:0 auto;display:grid;grid-template-columns:1.6fr repeat(3,1fr);gap:48px;padding-bottom:40px;border-bottom:1px solid var(--bg-line)}
  .foot-brand img{height:28px;width:auto;margin-bottom:16px}
  .foot-brand img{height:22px;width:auto;display:block;image-rendering:-webkit-optimize-contrast}
  .foot-brand p{font-size:13px;color:var(--cream-dim);line-height:1.7;margin:0;max-width:28ch}
  .foot-brand p b{color:var(--cream);font-weight:500}
  .foot-brand p a{color:var(--accent)}
  .foot-col h6{font-family:var(--mono);font-size:11px;letter-spacing:.20em;text-transform:uppercase;color:var(--cream);margin:0 0 20px;font-weight:500}
  .foot-col a{display:block;font-size:13.5px;color:var(--cream-dim);margin-bottom:10px;transition:color .18s}
  .foot-col a:hover{color:var(--cream)}
  .foot-mark{max-width:1280px;margin:56px auto -40px;pointer-events:none;user-select:none;
    -webkit-mask-image:linear-gradient(to bottom,#000 10%,transparent 92%);mask-image:linear-gradient(to bottom,#000 10%,transparent 92%)}
  .foot-mark img{width:100%;height:auto;opacity:.07;display:block}
  .foot-bottom{max-width:1280px;margin:0 auto;padding-top:24px;display:flex;justify-content:space-between;font-family:var(--mono);font-size:11px;letter-spacing:.14em;color:var(--cream-faint);text-transform:uppercase;flex-wrap:wrap;gap:8px}


  .foot-mark{max-width:1280px;margin:56px auto -40px;pointer-events:none;user-select:none;
    -webkit-mask-image:linear-gradient(to bottom,#000 10%,transparent 92%);mask-image:linear-gradient(to bottom,#000 10%,transparent 92%)}
  .foot-mark img{width:100%;height:auto;opacity:.07;display:block}
  @media (max-width:960px){
    footer.foot{padding:56px 24px 32px}
    .foot-inner{grid-template-columns:1fr 1fr;gap:32px}
    .foot-brand{grid-column:1 / -1}
    .foot-bottom{flex-direction:column;align-items:flex-start;gap:12px}
  }
  @media (max-width:480px){ .foot-inner{grid-template-columns:1fr} }

  /* ============================== MOBILE NAV (injected by mobile-nav.js) ============================== */
  .nav-hamburger{display:none;background:transparent;border:1px solid rgba(235,225,206,.18);color:var(--cream);width:40px;height:40px;border-radius:999px;align-items:center;justify-content:center;padding:0;margin-left:6px}
  .nav-hamburger svg{width:20px;height:20px}
  @media (max-width:960px){.nav-hamburger{display:inline-flex}}
  .mobile-menu{position:fixed;inset:0;background:var(--bg);z-index:1000;transform:translateX(100%);transition:transform .28s cubic-bezier(.2,.7,.2,1);overflow-y:auto;display:flex;flex-direction:column;padding:20px 24px 40px}
  .mobile-menu.is-open{transform:translateX(0)}
  .mobile-menu .mm-header{display:flex;justify-content:space-between;align-items:center;padding-bottom:24px;border-bottom:1px solid var(--bg-line);margin-bottom:24px}
  .mobile-menu .mm-header img{height:26px;width:auto}
  .mobile-menu img{height:22px;width:auto;display:block}
  .mobile-menu .mm-close{background:transparent;border:1px solid rgba(235,225,206,.18);color:var(--cream);width:40px;height:40px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;padding:0}
  .mobile-menu .mm-close svg{width:18px;height:18px}
  .mobile-menu .mm-section{padding:14px 0;border-bottom:1px solid var(--bg-line)}
  .mobile-menu .mm-title{font-family:var(--mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--cream-faint);margin-bottom:14px;display:block;font-weight:500}
  .mobile-menu a{color:var(--cream);font-size:17px;padding:10px 0;display:block;font-family:var(--serif);font-weight:400}
  .mobile-menu .mm-cta{margin-top:auto;padding-top:28px;display:flex;flex-direction:column;gap:10px}
  body.mm-open{overflow:hidden}


/* ============================================================
   Brand overrides for inner-page content
   ============================================================ */
/* Headlines: Instrument Serif, regular weight — same voice as the homepage */
body h1, body h2, body h3, body h4{font-family:var(--serif)!important;font-weight:400!important;letter-spacing:-0.015em!important;font-size-adjust:0.5}
body h1 strong, body h2 strong, body h3 strong{font-weight:400!important}
body h1 em, body h2 em, body h3 em, body h4 em{font-family:var(--serif)!important;font-style:italic!important;font-weight:400!important;
  color:rgba(235,225,206,.72)!important;-webkit-text-fill-color:rgba(235,225,206,.72)!important;background:none!important;text-decoration:none!important}
body h1 em::after, body h2 em::after, body h3 em::after{display:none!important}
body h1 u, body h2 u, body h3 u{text-decoration:none}

/* Buttons: ivory primary, quiet ghost — never filled teal */
.btn--primary,.btn--brand,.btn--accent{background:var(--cream)!important;color:#0D1A22!important;border-color:transparent!important;border-radius:999px!important}
.btn--primary:hover,.btn--brand:hover,.btn--accent:hover{background:#fff!important;color:#0D1A22!important}
.btn--ghost,.btn--secondary{background:transparent!important;color:var(--cream)!important;border:1px solid rgba(235,225,206,.24)!important;border-radius:999px!important}
.btn--ghost:hover,.btn--secondary:hover{border-color:var(--cream)!important;background:transparent!important}

/* Form fields on dark */
input,select,textarea{background:rgba(235,225,206,.04);color:var(--cream);border-color:rgba(235,225,206,.16)}
input::placeholder,textarea::placeholder{color:rgba(235,225,206,.4)}
::selection{background:rgba(43,179,163,.35);color:#fff}
