/* Eze Udo Consulting — design system v2 */
:root{
  --ink:#0E0A06; --navy:#17110A; --navy-2:#22180E; --navy-3:#3A2A18;
  --gold:#B8893A; --gold-2:#C9A35A; --gold-l:#E4CB93;
  --royal:#9E1F18; --coral:#B3271E; --coral-l:#D9483C;
  --text:#1F1A14; --muted:#5E554A; --soft:#958B7E;
  --paper:#FFFFFF; --ivory:#F8F3EA; --stone:#F0E7D8; --line:#E6DCCB; --line-d:rgba(255,255,255,.12);
  --max:1180px; --r:3px;
  --display:"Cormorant Garamond", "Cormorant", Georgia, "Times New Roman", serif;
  --sans:"Inter", system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;font-family:var(--sans);color:var(--text);background:var(--paper);line-height:1.7;font-size:17px;font-weight:400;overflow-x:hidden;-webkit-font-smoothing:antialiased}
img,svg{max-width:100%;height:auto}
a{color:var(--navy-3);text-decoration-color:var(--gold-2);text-underline-offset:3px}
a:hover{color:var(--gold)}
:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
.skip{position:absolute;left:-999px;top:0;background:var(--gold);color:var(--ink);padding:10px 16px;z-index:100;font-weight:600}
.skip:focus{left:10px;top:10px}
.wrap{max-width:var(--max);margin:0 auto;padding:0 24px}
@media (max-width:640px){.wrap{padding:0 16px}}
.band{display:none}

/* ---------- header ---------- */
.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.96);backdrop-filter:saturate(140%) blur(8px);-webkit-backdrop-filter:saturate(140%) blur(8px);border-bottom:1px solid var(--line)}
.hdr{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:78px}
.brand{display:flex;align-items:center;gap:12px;color:var(--ink);text-decoration:none}
.brand img{width:46px;height:46px}
.brand span{display:flex;flex-direction:column;line-height:1}
.brand b{font-family:var(--display);font-weight:600;font-size:1.55rem;letter-spacing:.06em;text-transform:uppercase}
.brand small{font-size:.66rem;letter-spacing:.34em;text-transform:uppercase;color:var(--gold);margin-top:5px;font-weight:600}
.nav{display:flex;align-items:center;gap:6px}
.nav ul{list-style:none;margin:0;padding:0;display:flex;gap:2px}
.nav a{color:var(--text);text-decoration:none;padding:10px 12px;font-size:.88rem;font-weight:500;letter-spacing:.02em;display:block;position:relative}
.nav ul a::after{content:"";position:absolute;left:12px;right:12px;bottom:4px;height:1px;background:var(--gold);transform:scaleX(0);transition:transform .25s ease}
.nav ul a:hover{color:var(--ink)}
.nav ul a:hover::after,.nav ul a[aria-current=page]::after{transform:scaleX(1)}
.nav ul a[aria-current=page]{color:var(--ink)}
.lang{margin-left:10px;border:1px solid var(--ink);color:var(--ink)!important;font-size:.78rem!important;letter-spacing:.12em!important;text-transform:uppercase;padding:9px 14px!important;border-radius:var(--r)}
.lang:hover{background:var(--ink);color:#fff!important}
.menu-btn{display:none;background:none;border:1px solid var(--ink);color:var(--ink);border-radius:var(--r);padding:9px 14px;font:600 .8rem var(--sans);letter-spacing:.14em;text-transform:uppercase;cursor:pointer}
@media (max-width:1000px){
  .menu-btn{display:block}
  .nav{position:absolute;left:0;right:0;top:100%;background:#fff;border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;padding:8px 24px 22px;display:none;box-shadow:0 18px 30px rgba(12,22,38,.08)}
  .nav.open{display:flex}
  .nav ul{flex-direction:column}
  .nav ul a{padding:14px 0;border-bottom:1px solid var(--line);font-size:1rem}
  .nav ul a::after{display:none}
  .lang{margin:16px 0 0;text-align:center}
}

/* ---------- type ---------- */
h1,h2,h3{color:var(--ink)}
h2{font-family:var(--display);font-weight:500;font-size:clamp(2.1rem,4.2vw,3.1rem);line-height:1.08;letter-spacing:-.005em;margin:0 0 18px}
h3{font-family:var(--sans);font-weight:600;font-size:1.06rem;letter-spacing:.005em;margin:0 0 8px;line-height:1.35}
p{margin:0 0 1em}
.eyebrow{display:inline-flex;align-items:center;gap:14px;text-transform:uppercase;letter-spacing:.24em;font-size:.72rem;font-weight:600;color:var(--gold)!important;margin:0 0 20px}
.eyebrow::before{content:"";width:36px;height:1px;background:currentColor}
.intro{max-width:64ch;color:var(--muted);font-size:1.06rem;margin:0 0 44px}

/* ---------- hero ---------- */
.hero{position:relative;overflow:hidden;color:#fff;padding:120px 0 128px;
  background:
    radial-gradient(900px 520px at 88% 8%,rgba(158,31,24,.42),transparent 62%),
    radial-gradient(700px 400px at 10% 110%,rgba(184,137,58,.14),transparent 60%),
    linear-gradient(180deg,var(--ink) 0%,var(--navy) 100%)}
.hero::before{content:"";position:absolute;inset:0;opacity:.09;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='80' height='80' viewBox='0 0 80 80'%3E%3Cg fill='none' stroke='%23E4CB93' stroke-width='1'%3E%3Cpath d='M40 4 C52 16 52 28 40 40 C28 28 28 16 40 4Z M40 76 C52 64 52 52 40 40 C28 52 28 64 40 76Z M4 40 C16 28 28 28 40 40 C28 52 16 52 4 40Z M76 40 C64 28 52 28 40 40 C52 52 64 52 76 40Z'/%3E%3Ccircle cx='40' cy='40' r='3'/%3E%3Ccircle cx='0' cy='0' r='6'/%3E%3Ccircle cx='80' cy='0' r='6'/%3E%3Ccircle cx='0' cy='80' r='6'/%3E%3Ccircle cx='80' cy='80' r='6'/%3E%3C/g%3E%3C/svg%3E");background-size:80px 80px}
.hero::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:linear-gradient(90deg,transparent,var(--gold-2),transparent)}
.hero .wrap{position:relative;display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:56px;align-items:center}
.hero .eyebrow{color:var(--gold-l)!important}
.hero h1{font-family:var(--display);font-weight:500;color:#fff;font-size:clamp(2.7rem,6.2vw,4.9rem);line-height:1.02;letter-spacing:-.012em;margin:0 0 26px}
.hero .tag{font-family:var(--display);font-style:italic;font-weight:500;color:var(--gold-l);font-size:clamp(1.35rem,2.6vw,1.85rem);margin:0 0 26px;display:flex;align-items:center;gap:16px}
.hero .tag::before{content:"";width:48px;height:1px;background:var(--gold-2);flex:none}
.hero p.lead{font-size:1.12rem;line-height:1.75;color:rgba(255,255,255,.78);max-width:56ch;margin:0}
.hero .emblem{justify-self:end;width:min(380px,100%);height:auto}
@media (max-width:860px){.hero{padding:84px 0 92px}.hero .wrap{grid-template-columns:1fr;gap:28px}.hero .emblem{order:-1;justify-self:center;width:200px}}

.page-hero{position:relative;overflow:hidden;color:#fff;padding:96px 0 84px;background:radial-gradient(800px 400px at 90% 0,rgba(158,31,24,.38),transparent 60%),linear-gradient(180deg,var(--ink),var(--navy))}
.page-hero::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:linear-gradient(90deg,transparent,var(--gold-2),transparent)}
.page-hero .eyebrow{color:var(--gold-l)!important}
.page-hero h1{font-family:var(--display);font-weight:500;color:#fff;margin:0 0 16px;font-size:clamp(2.4rem,5vw,3.9rem);line-height:1.05;letter-spacing:-.01em}
.page-hero p{margin:0;color:rgba(255,255,255,.76);max-width:62ch;font-size:1.1rem}

/* ---------- buttons ---------- */
.btns{display:flex;flex-wrap:wrap;gap:14px;margin-top:40px}
.btn{display:inline-flex;align-items:center;gap:10px;padding:15px 26px;border-radius:var(--r);font:600 .82rem var(--sans);letter-spacing:.14em;text-transform:uppercase;text-decoration:none;border:1px solid transparent;cursor:pointer;transition:background .2s,color .2s,border-color .2s}
.btn-gold{background:var(--gold);color:var(--ink);border-color:var(--gold)}
.btn-gold:hover{background:var(--gold-l);border-color:var(--gold-l);color:var(--ink)}
.btn-ghost{border-color:rgba(255,255,255,.4);color:#fff}
.btn-ghost:hover{border-color:#fff;background:rgba(255,255,255,.06);color:#fff}
.btn-purple{background:var(--ink);border-color:var(--ink);color:#fff}
.btn-purple:hover{background:var(--navy-3);border-color:var(--navy-3);color:#fff}
.btn::after{content:"\2192";font-size:1rem;letter-spacing:0;transition:transform .2s}
.btn:hover::after{transform:translateX(3px)}

/* ---------- sections ---------- */
section.s{padding:112px 0}
@media (max-width:760px){section.s{padding:76px 0}}
section.alt{background:var(--ivory)}
section.dark{background:var(--ink);color:#fff;position:relative}
section.dark h2{color:#fff}
section.dark h3{color:#fff}
section.dark .intro{color:rgba(255,255,255,.66)}
section.dark .eyebrow{color:var(--gold-l)!important}

.mission{font-family:var(--display);font-weight:500;font-style:italic;font-size:clamp(1.6rem,3.2vw,2.35rem);line-height:1.32;color:var(--ink);margin:10px 0 0;max-width:30em;padding-left:clamp(18px,3vw,34px);border-left:1px solid var(--gold)}

/* grids & cards */
.grid{display:grid;gap:0}
.g2{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:28px}
.g3,.g4{grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line);border-left:1px solid var(--line);counter-reset:card}
.g4{grid-template-columns:repeat(4,minmax(0,1fr))}
@media (max-width:980px){.g3,.g4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:620px){.g3,.g4{grid-template-columns:1fr}}
.card{background:transparent;border:0;border-radius:0;padding:38px 34px 40px;position:relative}
.g3>.card,.g4>.card{border-right:1px solid var(--line);border-bottom:1px solid var(--line);counter-increment:card;transition:background .25s}
.g3>.card::before,.g4>.card::before{content:counter(card,decimal-leading-zero);display:block;font-family:var(--display);font-size:1.15rem;color:var(--gold);letter-spacing:.06em;margin-bottom:22px}
.g3>.card:hover,.g4>.card:hover{background:var(--ivory)}
section.alt .g3>.card:hover,section.alt .g4>.card:hover{background:#fff}
.g2>.card{border:1px solid var(--line);background:#fff;padding:36px}
.card p{margin:.5em 0 0;color:var(--muted);font-size:.98rem}
.card ul{color:var(--muted)}
section.dark .g3,section.dark .g4{border-color:var(--line-d)}
section.dark .g3>.card,section.dark .g4>.card{border-color:var(--line-d)}
section.dark .g3>.card:hover{background:rgba(255,255,255,.03)}
section.dark .card p{color:rgba(255,255,255,.66)}
section.dark .g2>.card{background:transparent;border-color:var(--line-d)}

/* audiences list */
.chips{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));column-gap:32px;border-top:1px solid var(--line)}
.chips li{padding:22px 4px 22px 40px;border-bottom:1px solid var(--line);font-family:var(--display);font-size:1.38rem;font-weight:500;color:var(--ink);position:relative}
.chips li::before{content:"";position:absolute;left:4px;top:2.05em;width:18px;height:1px;background:var(--gold)}

.list{padding-left:1.15em}.list li{margin:.45em 0;color:var(--muted)}
.list li::marker{color:var(--gold)}
.note{font-size:.9rem;color:var(--muted)}
.brandnote{font-size:.84rem;color:var(--soft);margin-top:30px;padding-top:0}
.brandnote a{color:var(--muted)}

/* call to action */
.cta{position:relative;background:var(--ink);color:#fff;padding:64px;display:grid;grid-template-columns:1fr auto;gap:36px;align-items:center;overflow:hidden;border-radius:0}
.cta::before{content:"";position:absolute;inset:14px;border:1px solid rgba(201,163,90,.35);pointer-events:none}
.cta h2{color:#fff;margin-bottom:10px}
.cta p{color:rgba(255,255,255,.7);margin:0;max-width:52ch}
.cta .btn-gold{position:relative}
@media (max-width:760px){.cta{grid-template-columns:1fr;padding:44px 30px}}

/* prose (legal) */
.prose{max-width:74ch}
.prose h2{font-size:1.75rem;margin-top:1.8em}
.prose p,.prose li{color:#363C4A}
.updated{color:var(--soft);font-size:.88rem;letter-spacing:.04em}

/* forms */
form{display:grid;gap:18px}
label{font-weight:600;font-size:.82rem;letter-spacing:.06em;text-transform:uppercase;color:var(--ink);display:block;margin-bottom:8px}
input,select,textarea{width:100%;padding:14px 14px;border:1px solid #CFC7B6;border-radius:var(--r);font:inherit;font-size:1rem;background:#fff;color:var(--text);transition:border-color .2s,box-shadow .2s}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px rgba(184,137,58,.18)}
textarea{min-height:150px}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:18px}
@media (max-width:640px){.row2{grid-template-columns:1fr}}
.phi{background:var(--ivory);border:1px solid var(--line);border-left:2px solid var(--gold);padding:14px 16px;font-size:.92rem;color:var(--text)}
.hp{position:absolute;left:-5000px;width:1px;height:1px;overflow:hidden}
.form-status{font-weight:600}
.consent{display:flex;gap:12px;align-items:flex-start;font-weight:400;font-size:.88rem;letter-spacing:0;text-transform:none;color:var(--muted)}
.consent input{width:auto;margin-top:4px;accent-color:var(--gold)}

/* footer */
.site-footer{background:var(--ink);color:rgba(255,255,255,.66);padding:88px 0 34px;font-size:.94rem}
.site-footer .brand{color:#fff}
.site-footer .brand b{color:#fff}
.site-footer a{color:rgba(255,255,255,.82);text-decoration:none}
.site-footer a:hover{color:var(--gold-l)}
.fgrid{display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:48px}
.fgrid p{max-width:40ch;margin-top:22px}
@media (max-width:760px){.fgrid{grid-template-columns:1fr;gap:34px}}
.site-footer ul{list-style:none;padding:0;margin:0}.site-footer li{margin:10px 0}
.site-footer h2{font:600 .7rem var(--sans);letter-spacing:.26em;text-transform:uppercase;color:var(--gold-l);margin:8px 0 18px}
.legal-small{font-size:.78rem;color:rgba(255,255,255,.45);border-top:1px solid var(--line-d);margin-top:64px;padding-top:26px}
.legal-small p{margin:0 0 8px;max-width:110ch}

/* cookie */
.cookie{position:fixed;left:16px;right:16px;bottom:16px;max-width:560px;margin:0 auto;background:#fff;color:var(--text);border:1px solid var(--line);border-top:2px solid var(--gold);padding:18px 20px;box-shadow:0 20px 50px rgba(12,22,38,.18);display:none;z-index:80;font-size:.88rem}
.cookie.show{display:block}
.cookie .btns{margin-top:12px}
.cookie .btn{padding:10px 18px;font-size:.72rem}
.cookie .btn::after{display:none}

/* motion */
@media (prefers-reduced-motion:no-preference){
  .reveal{opacity:0;transform:translateY(18px);transition:opacity .8s ease,transform .8s ease}
  .reveal.in{opacity:1;transform:none}
}

/* regalia accents */
.hero::after,.page-hero::after{height:6px;background:radial-gradient(circle at 6px 3px,var(--coral) 2.6px,transparent 3px) 0 0/24px 6px repeat-x,radial-gradient(circle at 18px 3px,var(--gold-2) 2.2px,transparent 2.6px) 0 0/24px 6px repeat-x;bottom:10px;opacity:.9}
.eyebrow::before{background:linear-gradient(90deg,var(--coral) 0 8px,transparent 8px 12px,currentColor 12px)}
.mission{border-left-color:var(--coral)}
.g3>.card::before,.g4>.card::before{color:var(--coral)}
.chips li::before{background:var(--coral)}
.cta::before{border-color:rgba(201,163,90,.45)}
.cta{background:radial-gradient(600px 300px at 100% 0,rgba(158,31,24,.35),transparent 60%),var(--ink)}
.btn-gold{background:linear-gradient(180deg,#D3AE62,#B8893A);border-color:#B8893A}
section.dark{background:radial-gradient(800px 400px at 0 0,rgba(158,31,24,.22),transparent 60%),var(--ink)}
.site-footer{background:var(--ink);border-top:4px solid transparent;border-image:linear-gradient(90deg,var(--coral),var(--gold-2),var(--coral)) 1}

/* Isiagu-inspired lion-head pattern (Igbo chieftaincy fabric) */
.hero::before{background-image:url("/assets/img/isiagu-tile.png")!important;background-size:180px 180px!important;opacity:.13!important}
.page-hero::before{content:"";position:absolute;inset:0;pointer-events:none;background:url("/assets/img/isiagu-tile.png") 0 0/180px 180px;opacity:.1}
.page-hero .wrap{position:relative}
