/*
Theme Name: Emmanuel Blama Personal Brand - Elementor
Theme URI: https://example.com/emmanuel-blama
Author: OpenAI
Description: Elementor-native personal brand website for Emmanuel S. Blama. Pages are seeded as editable Elementor sections, columns, and widgets instead of one-piece HTML blocks.
Version: 5.0.0
Requires at least: 6.0
Tested up to: 6.6
Requires PHP: 7.4
Requires Plugins: elementor
Text Domain: eblama-personal-brand
*/

:root {
  --eb-navy: #050505;
  --eb-charcoal: #24211c;
  --eb-gold: #f5b301;
  --eb-deep-gold: #c88700;
  --eb-green: #166534;
  --eb-cream: #fff7da;
  --eb-muted: #78716c;
  --eb-border: #e7e5e4;
  --eb-white: #ffffff;
  --eb-dark: #111111;
  --eb-radius: 24px;
  --eb-shadow: 0 22px 60px rgba(15, 23, 42, .14);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color: var(--eb-dark);
  background: #ffffff;
  line-height: 1.65;
}
a { color: inherit; text-decoration: none; }
img { max-width: 100%; height: auto; }

.eb-site-header {
  position: sticky;
  top: 0;
  z-index: 999;
  background: rgba(255, 255, 255, .92);
  backdrop-filter: blur(18px);
  border-bottom: 1px solid rgba(226, 232, 240, .78);
}
.eb-header-inner {
  max-width: 1180px;
  margin: 0 auto;
  padding: 14px 20px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
}
.eb-brand { display: flex; align-items: center; gap: 12px; font-weight: 900; letter-spacing: -.02em; color: var(--eb-navy); }
.eb-brand-logo,
.eb-custom-logo-wrap img {
  width: 52px;
  height: 52px;
  object-fit: contain;
  border-radius: 14px;
  background: #fff;
  border: 2px solid rgba(245,179,1,.45);
  box-shadow: 0 12px 30px rgba(245, 179, 1, .24);
}
.eb-brand-mark {
  width: 44px;
  height: 44px;
  display: grid;
  place-items: center;
  border-radius: 14px;
  color: #fff;
  background: linear-gradient(135deg, #000000, #141414 52%, var(--eb-gold));
  box-shadow: 0 12px 30px rgba(245, 179, 1, .24);
}
.eb-brand small { display: block; color: var(--eb-muted); font-weight: 700; letter-spacing: normal; margin-top: -4px; }
.eb-primary-menu { display: flex; align-items: center; gap: 6px; list-style: none; margin: 0; padding: 0; }
.eb-primary-menu a { display: block; padding: 10px 12px; border-radius: 999px; color: #27272a; font-weight: 700; font-size: 14px; }
.eb-primary-menu a:hover, .eb-primary-menu .current-menu-item > a { background: #fff4c2; color: #000; }
.eb-menu-toggle { display: none; border: 0; background: var(--eb-navy); color: #fff; border-radius: 12px; padding: 10px 12px; font-weight: 800; }

.eb-site-main { min-height: 70vh; }
.eb-content-shell { max-width: 1180px; margin: 0 auto; padding: 70px 20px; }
.eb-post-title { font-size: clamp(38px, 6vw, 72px); line-height: .95; letter-spacing: -.05em; margin: 0 0 20px; color: var(--eb-navy); }
.eb-entry { max-width: 780px; }
.eb-entry p { color: #44403c; font-size: 18px; }
.eb-entry h2, .eb-entry h3 { color: var(--eb-navy); letter-spacing: -.03em; line-height: 1.1; }

.eb-site-footer { background: var(--eb-navy); color: #f8f3df; margin-top: 0; }
.eb-footer-inner { max-width: 1180px; margin: 0 auto; padding: 46px 20px; display: grid; grid-template-columns: 1.4fr .8fr .8fr; gap: 28px; }
.eb-footer-inner h3, .eb-footer-inner h4 { color: #fff; margin-top: 0; }
.eb-footer-inner p, .eb-footer-inner a { color: #d6d3d1; }
.eb-footer-links { list-style: none; padding: 0; margin: 0; display: grid; gap: 8px; }
.eb-footer-bottom { border-top: 1px solid rgba(255,255,255,.1); padding: 16px 20px; text-align: center; color: #a8a29e; font-size: 14px; }

/* Elementor presentation layer. Content remains Elementor-native and individually editable. */
.elementor-section.eb-section { padding: 88px 20px; }
.elementor-section.eb-section-tight { padding: 58px 20px; }
.elementor-section.eb-hero-section { padding: 96px 20px 84px; background: radial-gradient(circle at top right, rgba(245, 179, 1, .36), transparent 36%), radial-gradient(circle at bottom left, rgba(245, 179, 1, .12), transparent 35%), linear-gradient(135deg, #000000 0%, #101010 56%, #312200 100%); color: #fff; overflow: hidden; position: relative; }
.elementor-section.eb-cream { background: var(--eb-cream); }
.elementor-section.eb-navy { background: var(--eb-navy); color: #fff; }
.elementor-section.eb-soft { background: #faf7ef; }
.elementor-section.eb-gold-wash { background: linear-gradient(135deg, rgba(245,179,1,.24), rgba(0,0,0,.04)); }
.elementor-section.eb-hero-section .elementor-heading-title,
.elementor-section.eb-navy .elementor-heading-title { color: #fff; }
.elementor-section.eb-hero-section .elementor-widget-text-editor,
.elementor-section.eb-navy .elementor-widget-text-editor { color: #f8f3df; }
.elementor-widget-heading.eb-eyebrow .elementor-heading-title { font-size: 13px !important; text-transform: uppercase; letter-spacing: .16em; font-weight: 900; color: var(--eb-gold); }
.elementor-widget-heading.eb-page-title .elementor-heading-title { font-size: clamp(42px, 7vw, 82px); line-height: .92; letter-spacing: -.055em; font-weight: 900; }
.elementor-widget-heading.eb-section-title .elementor-heading-title { font-size: clamp(32px, 4.5vw, 56px); line-height: 1; letter-spacing: -.045em; color: var(--eb-navy); font-weight: 900; }
.elementor-widget-heading.eb-card-title .elementor-heading-title { font-size: 22px; line-height: 1.18; color: var(--eb-navy); }
.elementor-widget-text-editor.eb-lead { font-size: 19px; line-height: 1.75; color: #44403c; }
.elementor-widget-text-editor.eb-small { font-size: 15px; color: #78716c; }
.elementor-widget-image.eb-rounded img { border-radius: var(--eb-radius); box-shadow: var(--eb-shadow); }
.elementor-widget-image.eb-polaroid img { border-radius: 28px; border: 10px solid #fff; box-shadow: var(--eb-shadow); transform: rotate(-1.2deg); }
.elementor-widget-image.eb-polaroid-alt img { border-radius: 28px; border: 10px solid #fff; box-shadow: var(--eb-shadow); transform: rotate(1.2deg); }
.elementor-widget-button.eb-button-primary .elementor-button { background: var(--eb-gold); color: #111111; border-radius: 999px; padding: 14px 24px; font-weight: 900; box-shadow: 0 14px 34px rgba(245,179,1,.30); }
.elementor-widget-button.eb-button-secondary .elementor-button { background: rgba(255,255,255,.12); color: #fff; border: 1px solid rgba(255,255,255,.28); border-radius: 999px; padding: 14px 24px; font-weight: 900; }
.elementor-widget-button.eb-button-dark .elementor-button { background: var(--eb-navy); color: #fff; border-radius: 999px; padding: 14px 24px; font-weight: 900; }
.elementor-widget-button.eb-button-outline .elementor-button { background: #fff; color: var(--eb-navy); border: 1px solid var(--eb-border); border-radius: 999px; padding: 14px 24px; font-weight: 900; }
.elementor-widget-icon-box.eb-card,
.elementor-widget-counter.eb-card,
.elementor-widget-testimonial.eb-card,
.elementor-column.eb-card-column > .elementor-widget-wrap {
  background: #fff;
  border: 1px solid var(--eb-border);
  border-radius: var(--eb-radius);
  padding: 28px;
  box-shadow: 0 16px 45px rgba(15,23,42,.07);
}
.elementor-section.eb-navy .elementor-widget-icon-box.eb-card,
.elementor-section.eb-navy .elementor-widget-counter.eb-card,
.elementor-section.eb-navy .elementor-widget-testimonial.eb-card { background: rgba(255,255,255,.08); border-color: rgba(255,255,255,.14); color: #e7e5e4; }
.elementor-widget-icon-box.eb-card .elementor-icon-box-title { margin: 0 0 10px; }
.elementor-widget-icon-box.eb-card .elementor-icon-box-description { color: #78716c; }
.elementor-section.eb-navy .elementor-icon-box-description { color: #d6d3d1 !important; }
.elementor-widget-counter.eb-card .elementor-counter-number-wrapper { color: var(--eb-gold); font-weight: 900; }
.elementor-widget-counter.eb-card .elementor-counter-title { color: #44403c; font-weight: 800; }
.elementor-column.eb-timeline-column > .elementor-widget-wrap { border-left: 4px solid var(--eb-gold); padding-left: 24px; }
.elementor-widget-heading.eb-year .elementor-heading-title { color: var(--eb-deep-gold); font-size: 15px; text-transform: uppercase; letter-spacing: .12em; }
.elementor-widget-divider.eb-divider .elementor-divider-separator { border-top-color: rgba(245,179,1,.8) !important; }
.elementor-section.eb-cta { background: radial-gradient(circle at top right, rgba(245,179,1,.28), transparent 32%), linear-gradient(135deg, #000000, #171717 64%, #3a2800); color: #fff; padding: 76px 20px; }
.elementor-section.eb-cta .elementor-heading-title { color: #fff; }
.elementor-section.eb-cta .elementor-widget-text-editor { color: #f8f3df; }

@media (max-width: 900px) {
  .eb-menu-toggle { display: inline-flex; }
  .eb-nav { position: absolute; top: 72px; left: 20px; right: 20px; display: none; background: #fff; border: 1px solid var(--eb-border); border-radius: 18px; box-shadow: var(--eb-shadow); padding: 12px; }
  .eb-nav.is-open { display: block; }
  .eb-primary-menu { display: grid; gap: 4px; }
  .eb-primary-menu a { border-radius: 12px; }
  .eb-footer-inner { grid-template-columns: 1fr; }
  .elementor-section.eb-section { padding: 64px 16px; }
  .elementor-section.eb-hero-section { padding: 72px 16px; }
}


/* Version 3: stronger yellow/gold and black identity */
.elementor-section.eb-hero-section::before { content: ""; position: absolute; inset: 0; pointer-events: none; background-image: linear-gradient(90deg, rgba(245,179,1,.08) 1px, transparent 1px), linear-gradient(0deg, rgba(255,255,255,.035) 1px, transparent 1px); background-size: 42px 42px; opacity: .55; }
.elementor-section.eb-hero-section > .elementor-container { position: relative; z-index: 1; }
.elementor-widget-icon-box.eb-card .elementor-icon { color: var(--eb-gold) !important; }
.elementor-widget-button.eb-button-primary .elementor-button:hover,
.elementor-widget-button.eb-button-dark .elementor-button:hover,
.elementor-widget-button.eb-button-outline .elementor-button:hover { transform: translateY(-1px); }
.elementor-widget-button .elementor-button { transition: transform .18s ease, box-shadow .18s ease, background .18s ease; }
.eb-site-footer { background: #000; border-top: 5px solid var(--eb-gold); }


/* Version 5: finished gold/black brand with complete ready-to-publish sections */
.elementor-widget-image.eb-logo-card { max-width: 96px; margin-bottom: 18px; }
.elementor-widget-image.eb-logo-card img {
  background: #fff;
  border: 2px solid rgba(245,179,1,.55);
  border-radius: 22px;
  padding: 10px;
  box-shadow: 0 18px 42px rgba(245,179,1,.22);
}
.elementor-widget-icon-box.eb-card a,
.elementor-widget-icon-box.eb-card .elementor-icon-box-title a { color: inherit; }
.eb-footer-links a:hover { color: var(--eb-gold); }
.elementor-widget-button.eb-button-outline .elementor-button:hover { border-color: var(--eb-gold); box-shadow: 0 10px 24px rgba(245,179,1,.18); }


/* Finished site polish: warm gold/black/cream palette. */
.elementor-widget-text-editor.eb-lead strong { color: #111111; }
.elementor-widget-icon-box.eb-card:hover,
.elementor-column.eb-card-column > .elementor-widget-wrap:hover {
  border-color: rgba(245,179,1,.62);
  box-shadow: 0 20px 52px rgba(17,17,17,.10), 0 8px 22px rgba(245,179,1,.14);
}
.eb-site-header { box-shadow: 0 10px 30px rgba(17,17,17,.04); }
