:root{
    --gold:#b08d57;
    --bg:#ffffff;
    --text:#0a0a0a;
    --muted:#5f6368;
    --line:rgba(10,10,10,.12);
    --card:rgba(10,10,10,.02);
    --shadow: 0 10px 28px rgba(0,0,0,.08);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
    margin:0;
    font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Arial;
    background: radial-gradient(900px 520px at 15% 10%, rgba(176,141,87,.10), transparent 60%), var(--bg);
    color:var(--text);
}
a{color:var(--text);text-decoration:none}
a:hover{color:var(--gold)}
.wrap{max-width:1180px;margin:0 auto;padding:0 18px}
.line{border-bottom:1px solid var(--line)}
.muted{color:var(--muted)}
.gold{color:var(--gold)}
.btn{
    display:inline-flex;align-items:center;justify-content:center;
    padding:12px 16px;border-radius:12px;border:1px solid var(--line);
    font-weight:700;transition:.2s;background:#fff;color:var(--text);
    font-size: 14px ;
}
.btn:hover{transform:translateY(-1px);border-color:rgba(176,141,87,.55)}
.btn-primary{
    background:var(--gold);
    color:#111;
    border-color:rgba(176,141,87,.75);
}
.btn-primary:hover{
    color: #fff !important;
}
.btn-primary-text-sm{
    /*font-size: 14px*/;
}
.btn-ghost{background:transparent}
.tag{
    display:inline-flex;align-items:center;gap:6px;font-size:12px;
    padding:4px 10px;border-radius:999px;border:1px solid var(--line);
    background:rgba(10,10,10,.02); color:var(--text);
}
.tag-gold{color:var(--gold);border-color:rgba(176,141,87,.45);background:rgba(176,141,87,.08)}
.card{
    background:var(--card);
    border:1px solid var(--line);
    border-radius:18px;
    padding:18px;
}
.grid{display:grid;gap:16px}
.h2{font-size:34px;line-height:1.1;margin:10px 0 0}
.h3{font-size:22px;line-height:1.3;margin:14px 0 0;font-weight:500}
.p{line-height:1.7;color:rgba(10,10,10,.75)}

/* Header */
header{position:sticky;top:0;z-index:50;backdrop-filter:blur(10px)}
.utility{background:rgb(207,205,205,.2)}
.primarybar{background:rgba(255,255,255,.92)}
.utility-row{
    display:flex;flex-wrap:wrap;gap:10px;align-items:center;
    justify-content:space-between;padding:10px 0;font-size:12px
}
.utility-left,.utility-right{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.search{display:flex;gap:8px;align-items:center}
.search input{
    background:#fff;border:1px solid var(--line);border-radius:12px;
    color:var(--text);padding:8px 10px;outline:none
}
.search input:focus{border-color:rgba(176,141,87,.7)}
.primary-row{display:flex;gap:14px;align-items:center;justify-content:space-between;padding:14px 0}
.brand{display:flex;gap:12px;align-items:center}
.logo{
    width:42px;height:42px;border-radius:14px;border:1px solid var(--line);
    display:grid;place-items:center;background:rgba(10,10,10,.02)
}
.nav{display:none;gap:10px;font-size:14px}
.nav a{
    padding:8px 10px;border-radius:10px;border:1px solid transparent;
    transition:.2s;
}
.nav a:hover{background:rgba(176,141,87,.08);border-color:rgba(176,141,87,.18)}
.nav a.is-active{background:rgba(176,141,87,.10);border-color:rgba(176,141,87,.25);color:var(--gold)}
.cta{display:flex;gap:10px;align-items:center}

/* Sections / layout */
section{padding:64px 0}
.hero{padding:70px 0}
.hero-grid{grid-template-columns:1fr}
.hero-visual{min-height:340px;box-shadow:var(--shadow)}
.kpis{grid-template-columns:1fr}
.pillars{grid-template-columns:1fr}
.two{grid-template-columns:1fr}
.logos{grid-template-columns:repeat(2,1fr)}
.gateway{grid-template-columns:1fr}

footer{padding:56px 0;background:rgba(10,10,10,.10)}
.footergrid{grid-template-columns:1fr}

@media(min-width: 860px){
    .nav{display:flex}
    .hero-grid{grid-template-columns:1.05fr .95fr;align-items:center}
    .kpis{grid-template-columns:repeat(4,1fr)}
    .pillars{grid-template-columns:repeat(4,1fr)}
    .two{grid-template-columns:repeat(2,1fr)}
    .logos{grid-template-columns:repeat(6,1fr)}
    .gateway{grid-template-columns:repeat(3,1fr)}
    .footergrid{grid-template-columns:1.4fr 1fr 1fr 1.2fr}
}

/* ===== Scroll Reveal Animations ===== */
.reveal{
    opacity:0;
    transform:translateY(18px);
    transition:opacity .8s ease, transform .8s ease;
    will-change:opacity, transform;
}
.reveal.is-visible{opacity:1;transform:translateY(0)}
.delay-1{transition-delay:.08s}
.delay-2{transition-delay:.16s}
.delay-3{transition-delay:.24s}

/* Page shell (fake pages) */
.page{
    display:none;
    /*padding:46px 0;*/
}
.page.is-active{display:block}
.breadcrumb{font-size:12px}
.breadcrumb a{color:var(--muted)}
.breadcrumb a:hover{color:var(--gold)}

.brand-logo {
    width: 200px;
    height: 70px;
}

.brand-logo img{
    width: 70%;
}

/* card style for demo */
.demo-card {
    /*background: white;
    border-radius: 2rem;
    padding: 2.5rem 2rem;
    box-shadow: 0 8px 24px rgba(0,0,0,0.04);
    border: 1px solid rgba(203,213,225,0.4);
    max-width: 500px;
    width: 100%;*/
}

/* social icon base style (matches your "tag" class but refined) */
.social-tag {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.5rem;
    height: 1.5rem;
    border-radius: 9999px;       /* fully rounded */
    background-color: #f0f2f5;    /* soft gray background */
    color: #2d3c4b;               /* dark slate */
    transition: all 0.15s ease;
    cursor: pointer;               /* for demo; you can change to pointer */
    border: 1px solid transparent;
    box-shadow: 0 2px 4px rgba(0,0,0,0.02);
}

/* brand colors on hover (optional, but gives nice feedback) */
.social-tag:hover {
    transform: scale(1.05);
    border-color: currentColor;
    box-shadow: 0 4px 8px rgba(0,0,0,0.05);
    cursor: pointer;
}

/* each brand gets a distinct hover color */
.social-tag.facebook:hover { background-color: #1877f2; color: white; }
.social-tag.instagram:hover { background: radial-gradient(circle at 30% 30%, #fdf497, #fd5949, #d6249f, #285AEB); color: white; }
.social-tag.x:hover { background-color: #000000; color: white; }
.social-tag.linkedin:hover { background-color: #0077b5; color: white; }
.social-tag.tiktok:hover { background-color: #000000; color: white; text-shadow: 0 0 2px #ff0050; }
.social-tag.youtube:hover { background-color: #ff0000; color: white; }

/* specific sizing for SVGs inside */
.social-tag svg {
    width: 1rem;
    height: 1rem;
    fill: currentColor;
    stroke: none;
}

/* for X (formerly twitter) we have a special path, using currentColor */
.social-tag.x svg {
    width: 1.2rem;
    height: 1.2rem;
}

/* simple container row */
.social-row {
    display: flex;
    gap: 0.75rem;
    align-items: center;
    flex-wrap: wrap;
}

/* optional label */
.section-label {
    font-size: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: #64748b;
    margin-bottom: 0.75rem;
}

/* search form */
.search {
    display: flex;
    align-items: center;
    gap: 0.6rem;
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: 3rem;
    /*padding: 0.3rem 0.3rem 0.3rem 1.2rem;*/
    transition: all 0.15s ease;
}
.search:focus-within {
    border-color: #c6a75e;
    box-shadow: 0 0 0 3px rgba(198,167,94,0.2);
}
.search input[type="text"] {
    flex: 1;
    background: transparent;
    border: none;
    font-size: 0.95rem;
    outline: none;
    color: #1e293b;
}
.search input[type="text"]::placeholder {
    color: #94a3b8;
}
/* button styles */
.btn-search {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: transparent;
    border: 1px solid #e2e8f0;
    padding: 8px 12px;
    border-radius: 12px;
    cursor: pointer;
    transition: all 0.15s ease;
    color: #475569;
    margin: 3px;
}
.btn-search:hover {
    background-color: #f1f5f9;
    border-color: #cbd5e1;
    color: #0f172a;
}
.btn-search:focus-visible {
    outline: 2px solid #c6a75e;
    outline-offset: 2px;
}
/* FIXED SVG SEARCH ICON - properly formed */
.btn-search svg {
    width: 1.6rem;
    height: 1.6rem;
    stroke: currentColor;
    stroke-width: 2.2;
    fill: none;
    stroke-linecap: round;
    stroke-linejoin: round;
    display: block;
}

#directorates{
    background-color: #000000;
    color: #fff !important;
}
