/* BENNOTA CONSULTING — bennota-brand.css */
:root{
  --bn-navy:#203254; --bn-navy-deep:#172641; --bn-navy-darkest:#0D1A32;
  --bn-gold:#C59E52; --bn-gold-dark:#A67F38;
  --bn-white:#FFFFFF; --bn-card:#FFFFFF; --bn-row:#F5F6F8; --bn-cream:#FBFAF8;
  --bn-hair:rgba(32,50,84,.55);
  --bn-ink:#32363B; --bn-muted:#5D646F; --bn-line:#E0DED8;
  --bn-ok:#2E7D4F; --bn-warn:#A67F38; --bn-danger:#C0392B; --bn-info:#2F5D8A;
  --bn-font:"Manrope",ui-sans-serif,system-ui,sans-serif;
  --bn-radius:8px; --bn-radius-sm:6px;
  --bn-shadow:0 1px 2px rgba(23,38,65,.06),0 6px 18px rgba(23,38,65,.06);
}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{font-family:var(--bn-font);font-size:15px;line-height:1.6;color:var(--bn-ink);background:var(--bn-white);-webkit-font-smoothing:antialiased}
h1,h2,h3,h4{color:var(--bn-navy);font-weight:700;letter-spacing:-.02em;line-height:1.15;margin:0 0 .5em}
a{color:var(--bn-navy);text-decoration-color:var(--bn-gold);text-underline-offset:4px}
.bn-num{font-variant-numeric:tabular-nums}
.bn-muted{color:var(--bn-muted)}

/* Eyebrow + gold rule */
.bn-eyebrow{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.25em;color:var(--bn-gold-dark);margin:0 0 10px}
.bn-on-navy .bn-eyebrow{color:var(--bn-gold)}
.bn-rule{height:1px;width:64px;background:var(--bn-gold);border:0;margin:14px 0}

/* Header — logo IMAGE only */
.bn-header{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.95);backdrop-filter:blur(6px);border-bottom:1px solid var(--bn-line)}
.bn-header-inner{max-width:1152px;margin:0 auto;padding:0 24px;height:80px;display:flex;align-items:center;gap:20px}
.bn-logo{display:block;height:auto;width:208px;max-width:60vw}
@media(min-width:768px){.bn-header-inner{height:96px}.bn-header .bn-logo{width:256px}}
.bn-appname{color:var(--bn-muted);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.12em;border-left:1px solid var(--bn-line);padding-left:16px}
.bn-nav{margin-left:auto;display:flex;align-items:center;gap:28px}
.bn-nav a{font-size:14px;font-weight:500;color:rgba(50,54,59,.7);text-decoration:none}
.bn-nav a:hover{color:var(--bn-navy)}
.bn-nav a.active{color:var(--bn-navy);font-weight:600;text-decoration:underline;text-decoration-color:var(--bn-gold);text-decoration-thickness:2px;text-underline-offset:8px}

/* Logo on navy must sit on a white plate */
.bn-logo-plate{display:inline-block;background:#FFFFFF;border-radius:var(--bn-radius-sm);padding:14px 16px;line-height:0}

/* Layout */
.bn-wrap{max-width:1152px;margin:0 auto;padding:32px 24px 64px}
.bn-section{padding:72px 0}
.bn-band{background:var(--bn-navy);color:#fff;text-align:center;padding:80px 24px}
.bn-band h2{color:#fff}
.bn-band p{color:rgba(255,255,255,.7)}

/* Buttons */
.bn-btn{display:inline-flex;align-items:center;gap:8px;cursor:pointer;border:1px solid var(--bn-line);background:#fff;color:var(--bn-navy);padding:9px 16px;border-radius:var(--bn-radius-sm);font:600 14px var(--bn-font);text-decoration:none;transition:background .15s,color .15s}
.bn-btn:hover{border-color:var(--bn-navy)}
.bn-btn.primary{background:var(--bn-gold);border-color:var(--bn-gold);color:var(--bn-navy-deep)}
.bn-btn.primary:hover{background:var(--bn-gold-dark);border-color:var(--bn-gold-dark);color:#fff}
.bn-btn.navy{background:var(--bn-navy);border-color:var(--bn-navy);color:#fff}
.bn-btn.navy:hover{background:var(--bn-navy-deep)}
.bn-btn.ghost{background:transparent;border-color:transparent}
.bn-btn.lg{padding:12px 24px}
.bn-btn:disabled{opacity:.5;cursor:not-allowed}

/* Cards, stats, panels */
.bn-card{background:var(--bn-card);border:1px solid var(--bn-line);border-radius:var(--bn-radius);padding:24px;box-shadow:var(--bn-shadow)}
.bn-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px}
.bn-stat{background:var(--bn-card);border:1px solid var(--bn-line);border-radius:var(--bn-radius);padding:28px;text-align:center}
.bn-stat .n{font-size:44px;font-weight:800;letter-spacing:-.02em;color:var(--bn-gold-dark);line-height:1;font-variant-numeric:tabular-nums}
.bn-stat .l{margin-top:12px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.2em;color:var(--bn-navy)}
.bn-step .no{font-size:13px;font-weight:700;color:var(--bn-gold-dark);letter-spacing:.1em}

/* Tables — very fine navy lines, white/grey striped rows */
table.bn-table{width:100%;border-collapse:collapse;background:#fff;border:.5px solid var(--bn-hair)}
.bn-table th{background:var(--bn-navy);color:#fff;text-align:left;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.12em;padding:10px 14px}
.bn-table td{padding:10px 14px;border-top:.5px solid var(--bn-hair);font-size:14px;background:#fff}
.bn-table td+td{border-left:.5px solid var(--bn-hair)}
.bn-table th+th{border-left:.5px solid rgba(255,255,255,.18)}
.bn-table tbody tr:nth-child(even) td{background:var(--bn-row)}
.bn-table .num{text-align:right;font-variant-numeric:tabular-nums}

/* Chips */
.bn-chip{display:inline-block;font-size:11px;font-weight:700;padding:2px 10px;border-radius:999px;text-transform:uppercase;letter-spacing:.06em;background:var(--bn-row);color:var(--bn-muted)}
.bn-chip.ok{background:#E3F1E8;color:var(--bn-ok)}
.bn-chip.warn{background:#F6EEDC;color:var(--bn-warn)}
.bn-chip.danger{background:#FBE7E4;color:var(--bn-danger)}
.bn-chip.info{background:#E3ECF5;color:var(--bn-info)}
.bn-chip.gold{background:var(--bn-gold);color:var(--bn-navy-deep)}

/* Forms */
.bn-field{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}
.bn-field label{font-size:12px;font-weight:600;color:var(--bn-navy);text-transform:uppercase;letter-spacing:.08em}
.bn-field input,.bn-field select,.bn-field textarea{font:inherit;padding:10px 12px;border:1px solid var(--bn-line);border-radius:var(--bn-radius-sm);background:#fff;color:var(--bn-ink)}
.bn-field input:focus,.bn-field select:focus,.bn-field textarea:focus{outline:2px solid var(--bn-gold);outline-offset:-1px;border-color:var(--bn-gold)}

/* Footer */
.bn-footer{background:var(--bn-navy-deep);color:#fff}
.bn-footer-inner{max-width:1152px;margin:0 auto;padding:56px 24px}
.bn-footer .bn-logo{width:224px}
@media(min-width:768px){.bn-footer .bn-logo{width:320px}}
.bn-footer .bn-tag{margin-top:16px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.25em;color:var(--bn-gold)}
.bn-footer a{color:rgba(255,255,255,.7);text-decoration:none}
.bn-footer a:hover{color:var(--bn-gold)}
.bn-footer .bn-legal{margin-top:48px;border-top:1px solid rgba(255,255,255,.15);padding-top:24px;font-size:12px;color:rgba(255,255,255,.5)}

/* Login */
.bn-login{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bn-navy-deep);padding:16px}
.bn-login-card{background:#FFFFFF;border-radius:10px;width:100%;max-width:380px;overflow:hidden;box-shadow:0 20px 60px rgba(0,0,0,.35)}
.bn-login-card .head{padding:28px 28px 20px;border-bottom:2px solid var(--bn-gold);text-align:center}
.bn-login-card .head .bn-logo{width:220px;margin:0 auto}
.bn-login-card form{padding:24px 28px}

@media print{
  .bn-header,.bn-nav,.no-print{display:none!important}
  body{background:#fff}
  .bn-card,.bn-stat{box-shadow:none;break-inside:avoid}
  .bn-table th,.bn-table tbody tr:nth-child(even) td{-webkit-print-color-adjust:exact;print-color-adjust:exact}
}
