@import url('https://fonts.googleapis.com/css2?family=Bebas+Neue&family=Inter:wght@300;400;500;600&family=Orbitron:wght@400;600;700&display=swap');

*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

:root {
  --bg: #040407;
  --bg2: #08090f;
  --bg3: #0c0e17;
  --teal: #00e5d4;
  --teal2: #00b8a9;
  --blue: #1a7fff;
  --blue2: #0055cc;
  --text: #ddeef0;
  --text2: #7aaab8;
  --border: rgba(0,229,212,0.1);
  --border2: rgba(0,229,212,0.22);
}

html { scroll-behavior: smooth; }
body { font-family: 'Inter', sans-serif; background: var(--bg); color: var(--text); overflow-x: hidden; margin: 0; }

body::before {
  content: '';
  position: fixed; inset: 0;
  background-image:
    linear-gradient(rgba(0,229,212,0.022) 1px, transparent 1px),
    linear-gradient(90deg, rgba(0,229,212,0.022) 1px, transparent 1px);
  background-size: 55px 55px;
  pointer-events: none; z-index: 0;
}

/* ── NAVIGATION ── */
.site-header {
  position: fixed; top: 0; left: 0; right: 0; z-index: 200;
  display: flex; align-items: center; justify-content: space-between;
  padding: 0 3rem; height: 70px;
  background: rgba(4,4,7,0.96); backdrop-filter: blur(16px);
  border-bottom: 1px solid var(--border);
}
.site-branding { display: flex; align-items: center; gap: 0.65rem; text-decoration: none; }
.site-branding img { height: 38px; width: 38px; object-fit: contain; }
.site-name { font-family: 'Orbitron', monospace; font-size: 0.82rem; font-weight: 700; letter-spacing: 0.18em; color: #fff; text-decoration: none; }
.site-name span { color: var(--teal); }

/* Main Navigation */
.main-navigation { display: flex; align-items: center; }
.main-navigation ul { display: flex; gap: 1.75rem; list-style: none; align-items: center; margin: 0; padding: 0; }
.main-navigation ul li a {
  font-size: 0.68rem; letter-spacing: 0.14em; text-transform: uppercase;
  color: var(--text2); text-decoration: none; font-weight: 500; transition: color 0.2s;
}
.main-navigation ul li a:hover,
.main-navigation ul li.current-menu-item a,
.main-navigation ul li.current_page_item a { color: var(--teal); }
.nav-badge {
  font-size: 0.58rem; letter-spacing: 0.12em; text-transform: uppercase;
  color: var(--teal); border: 1px solid rgba(0,229,212,0.3); padding: 0.2rem 0.6rem;
  font-weight: 600; background: rgba(0,229,212,0.05); white-space: nowrap;
}
.nav-cta-btn {
  background: linear-gradient(125deg, var(--teal2), var(--blue2)) !important;
  color: #fff !important; padding: 0.5rem 1.3rem !important;
  font-size: 0.66rem !important; letter-spacing: 0.14em;
  clip-path: polygon(8px 0%,100% 0%,calc(100% - 8px) 100%,0% 100%);
  transition: opacity 0.2s !important; font-weight: 600 !important;
}
.nav-cta-btn:hover { opacity: 0.8 !important; color: #fff !important; }
.nav-burger { display: none; background: none; border: none; color: var(--teal); font-size: 1.4rem; cursor: pointer; padding: 0; }

/* ── PAGE WRAPPER ── */
.site-content { padding-top: 70px; position: relative; z-index: 1; }

/* ── PAGE HERO ── */
.page-hero { padding: 5rem 3rem 4rem; border-bottom: 1px solid var(--border); }
.ph-tag { font-family: 'Orbitron', monospace; font-size: 0.58rem; letter-spacing: 0.3em; text-transform: uppercase; color: var(--teal); margin-bottom: 0.75rem; display: flex; align-items: center; gap: 0.65rem; }
.ph-tag::before { content: ''; width: 1.4rem; height: 1px; background: var(--teal); display: inline-block; }
.ph-title { font-family: 'Bebas Neue', sans-serif; font-size: clamp(3rem, 7vw, 6rem); line-height: 0.92; letter-spacing: 0.04em; color: #fff; margin-bottom: 1.25rem; }
.ph-title .c-teal { color: var(--teal); }
.ph-sub { font-size: 1rem; line-height: 1.78; color: var(--text2); font-weight: 300; max-width: 560px; }

/* ── SECTIONS ── */
.sec { padding: 5rem 3rem; position: relative; z-index: 1; }
.sec-bg2 { background: var(--bg2); }
.sec-tag { font-family: 'Orbitron', monospace; font-size: 0.56rem; letter-spacing: 0.28em; text-transform: uppercase; color: var(--teal); margin-bottom: 0.5rem; display: flex; align-items: center; gap: 0.6rem; }
.sec-tag::before { content: ''; width: 1.2rem; height: 1px; background: var(--teal); display: inline-block; }
.sec-title { font-family: 'Bebas Neue', sans-serif; font-size: clamp(2rem, 4vw, 3.5rem); letter-spacing: 0.04em; color: #fff; line-height: 1; }
.sec-title .c-teal { color: var(--teal); }
.sec-hd { display: flex; justify-content: space-between; align-items: flex-end; margin-bottom: 2.5rem; padding-bottom: 1.25rem; border-bottom: 1px solid var(--border); }
.see-all { font-size: 0.64rem; letter-spacing: 0.15em; text-transform: uppercase; color: var(--teal); text-decoration: none; font-weight: 600; display: flex; align-items: center; gap: 0.4rem; transition: gap 0.2s; }
.see-all:hover { gap: 0.7rem; }
.see-all::after { content: '→'; }

/* ── BUTTONS ── */
.btn-p, .wp-block-button.is-style-primary .wp-block-button__link {
  background: linear-gradient(125deg, var(--teal2), var(--blue2));
  color: #fff !important; padding: 0.85rem 2.2rem; font-size: 0.72rem;
  letter-spacing: 0.18em; text-transform: uppercase; text-decoration: none;
  font-weight: 600; clip-path: polygon(10px 0%,100% 0%,calc(100% - 10px) 100%,0% 100%);
  transition: opacity 0.2s; display: inline-block; border: none; cursor: pointer;
  font-family: 'Inter', sans-serif;
}
.btn-p:hover { opacity: 0.82; color: #fff; }
.btn-g {
  color: var(--teal); border: 1px solid var(--border2); padding: 0.85rem 2.2rem;
  font-size: 0.72rem; letter-spacing: 0.18em; text-transform: uppercase;
  text-decoration: none; font-weight: 600; background: transparent;
  clip-path: polygon(10px 0%,100% 0%,calc(100% - 10px) 100%,0% 100%);
  transition: background 0.2s; display: inline-block; cursor: pointer;
  font-family: 'Inter', sans-serif;
}
.btn-g:hover { background: rgba(0,229,212,0.07); color: var(--teal); }

/* ── TAG PILLS ── */
.tag-pill { font-size: 0.58rem; letter-spacing: 0.12em; text-transform: uppercase; padding: 0.24rem 0.68rem; font-weight: 600; border: 1px solid var(--border2); color: var(--teal); background: rgba(0,229,212,0.05); display: inline-block; }
.tag-pill.hi { background: linear-gradient(125deg,var(--teal2),var(--blue2)); color: #fff; border-color: transparent; }
.tag-pill.blue { border-color: rgba(26,127,255,0.3); color: var(--blue); background: rgba(26,127,255,0.06); }

/* ── CARDS ── */
.card { background: var(--bg2); transition: background 0.22s; position: relative; overflow: hidden; }
.card::after { content: ''; position: absolute; top: 0; left: 0; right: 0; height: 2px; background: linear-gradient(90deg,var(--teal2),var(--blue2)); opacity: 0; transition: opacity 0.22s; }
.card:hover::after { opacity: 1; }
.card:hover { background: var(--bg3); }
.card.active-card { background: var(--bg3); border-left: 2px solid var(--teal2); }
.card.active-card::after { opacity: 1; }

/* ── FORMS ── */
.f-group { display: flex; flex-direction: column; gap: 0.5rem; margin-bottom: 1rem; }
.f-label { font-size: 0.62rem; letter-spacing: 0.16em; text-transform: uppercase; color: var(--text2); font-weight: 500; }
.f-input, input[type="text"], input[type="email"], input[type="search"], textarea, select {
  background: rgba(0,229,212,0.04); border: 1px solid var(--border);
  color: var(--text); padding: 0.88rem 1.2rem; font-family: 'Inter', sans-serif;
  font-size: 0.87rem; outline: none; transition: border-color 0.2s;
  width: 100%; -webkit-appearance: none; border-radius: 0;
}
input[type="text"]::placeholder, input[type="email"]::placeholder, textarea::placeholder { color: rgba(122,170,184,0.35); }
input[type="text"]:focus, input[type="email"]:focus, textarea:focus, select:focus { border-color: var(--teal2); }
select { color: rgba(122,170,184,0.6); }
select option { background: var(--bg); color: var(--text); }
textarea { resize: vertical; min-height: 120px; }

/* ── TICKER ── */
.ticker { background: linear-gradient(90deg,var(--teal2),var(--blue2)); padding: 0.55rem 0; overflow: hidden; white-space: nowrap; position: relative; z-index: 1; }
.ticker-track { display: inline-block; animation: tick 38s linear infinite; }
.ticker-item { display: inline-block; font-size: 0.58rem; letter-spacing: 0.24em; text-transform: uppercase; padding: 0 2rem; color: rgba(255,255,255,0.88); font-weight: 600; }
.ticker-item::before { content: '◆'; margin-right: 0.7rem; color: rgba(255,255,255,0.4); font-size: 0.4rem; vertical-align: middle; }
@keyframes tick { 0%{transform:translateX(0)} 100%{transform:translateX(-50%)} }

/* ── FOOTER ── */
.site-footer { border-top: 1px solid var(--border); position: relative; z-index: 1; background: var(--bg2); }
.footer-top { padding: 4rem 3rem; display: grid; grid-template-columns: 1fr 2fr; gap: 4rem; border-bottom: 1px solid var(--border); }
.footer-brand .footer-logo-row { display: flex; align-items: center; gap: 0.6rem; margin-bottom: 1rem; }
.footer-logo-text { font-family: 'Orbitron', monospace; font-size: 0.88rem; font-weight: 700; letter-spacing: 0.16em; color: #fff; }
.footer-logo-text span { color: var(--teal); }
.footer-tagline { font-size: 0.82rem; line-height: 1.75; color: var(--text2); font-weight: 300; margin-bottom: 1.5rem; }
.footer-socials { display: flex; gap: 0.6rem; }
.footer-social { width: 32px; height: 32px; border: 1px solid var(--border2); display: flex; align-items: center; justify-content: center; font-size: 0.65rem; font-weight: 700; color: var(--text2); text-decoration: none; text-transform: uppercase; transition: color 0.2s, border-color 0.2s; }
.footer-social:hover { color: var(--teal); border-color: var(--teal2); }
.footer-nav-cols { display: grid; grid-template-columns: repeat(3,1fr); gap: 2rem; }
.footer-col-title { font-family: 'Orbitron', monospace; font-size: 0.58rem; letter-spacing: 0.22em; text-transform: uppercase; color: var(--teal); margin-bottom: 1rem; }
.footer-col ul { list-style: none; padding: 0; margin: 0; }
.footer-col ul li { margin-bottom: 0.6rem; }
.footer-col ul li a { font-size: 0.78rem; color: var(--text2); text-decoration: none; transition: color 0.2s; }
.footer-col ul li a:hover { color: var(--teal); }
.footer-bottom { padding: 1.5rem 3rem; display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 1rem; }
.footer-bottom span, .footer-bottom a { font-size: 0.62rem; letter-spacing: 0.1em; text-transform: uppercase; color: rgba(122,170,184,0.35); text-decoration: none; }
.footer-bottom a:hover { color: var(--teal); }

/* ── HERO (Homepage) ── */
.hero-section {
  min-height: calc(100vh - 70px);
  display: flex; flex-direction: column; justify-content: center; align-items: center;
  text-align: center; padding: 4rem 2rem 3rem; position: relative; overflow: hidden;
}
.hero-radial { position: absolute; inset: 0; background: radial-gradient(ellipse 80% 60% at 50% 40%, rgba(0,180,220,0.07) 0%, transparent 70%); pointer-events: none; }
.hero-origin { font-family: 'Orbitron', monospace; font-size: 0.6rem; letter-spacing: 0.35em; text-transform: uppercase; color: var(--teal); margin-bottom: 2.25rem; display: flex; align-items: center; gap: 1rem; position: relative; z-index: 1; }
.hero-origin::before, .hero-origin::after { content: ''; width: 2.5rem; height: 1px; background: linear-gradient(90deg, transparent, var(--teal)); display: inline-block; }
.hero-origin::after { background: linear-gradient(90deg, var(--teal), transparent); }
.hero-logo { position: relative; z-index: 1; margin-bottom: 1.75rem; }
.hero-logo img { width: 200px; height: 200px; object-fit: contain; animation: logopulse 4s ease-in-out infinite; }
@keyframes logopulse {
  0%,100% { filter: drop-shadow(0 0 18px rgba(0,229,212,0.5)) drop-shadow(0 0 45px rgba(26,127,255,0.25)); }
  50% { filter: drop-shadow(0 0 32px rgba(0,229,212,0.75)) drop-shadow(0 0 70px rgba(26,127,255,0.45)); }
}
.hero-tagline { font-family: 'Orbitron', monospace; font-size: 0.62rem; letter-spacing: 0.3em; text-transform: uppercase; color: var(--text2); margin-bottom: 1rem; position: relative; z-index: 1; }
.hero-headline { font-family: 'Bebas Neue', sans-serif; font-size: clamp(3.8rem, 9vw, 8rem); line-height: 0.9; letter-spacing: 0.04em; color: #fff; margin-bottom: 1.5rem; position: relative; z-index: 1; }
.hero-headline .c-teal { color: var(--teal); }
.hero-headline .c-outline { -webkit-text-stroke: 1.5px rgba(0,229,212,0.4); color: transparent; }
.hero-sub { font-size: 1rem; line-height: 1.8; color: var(--text2); max-width: 560px; margin: 0 auto 2.75rem; font-weight: 300; position: relative; z-index: 1; }
.hero-actions { display: flex; gap: 1rem; justify-content: center; flex-wrap: wrap; margin-bottom: 3.5rem; position: relative; z-index: 1; }
.hero-stats { display: flex; border: 1px solid var(--border); position: relative; z-index: 1; }
.hero-stat { padding: 1.2rem 2.75rem; border-right: 1px solid var(--border); }
.hero-stat:last-child { border-right: none; }
.stat-num { font-family: 'Orbitron', monospace; font-size: 1.7rem; font-weight: 700; color: var(--teal); line-height: 1; margin-bottom: 0.28rem; }
.stat-label { font-size: 0.6rem; letter-spacing: 0.18em; text-transform: uppercase; color: var(--text2); }

/* ── DUBAI STRIP ── */
.dubai-strip { background: var(--bg2); border-top: 1px solid var(--border); border-bottom: 1px solid var(--border); padding: 2.75rem 3rem; display: grid; grid-template-columns: auto 1fr auto; gap: 3rem; align-items: center; position: relative; z-index: 1; }
.dubai-icon { width: 58px; height: 58px; border: 1px solid var(--border2); display: flex; align-items: center; justify-content: center; font-size: 1.85rem; background: var(--bg3); flex-shrink: 0; }
.dubai-flag-side { display: flex; align-items: center; gap: 1.2rem; }
.dubai-label { font-family: 'Orbitron', monospace; font-size: 0.58rem; letter-spacing: 0.2em; text-transform: uppercase; color: var(--text2); margin-bottom: 0.28rem; }
.dubai-title { font-family: 'Bebas Neue', sans-serif; font-size: 1.7rem; letter-spacing: 0.07em; color: #fff; line-height: 1; }
.dubai-title span { color: var(--teal); }
.dubai-desc { font-size: 0.85rem; line-height: 1.78; color: var(--text2); font-weight: 300; max-width: 520px; }
.dubai-badges { display: flex; flex-direction: column; gap: 0.45rem; align-items: flex-end; }
.dubai-badge { font-size: 0.6rem; letter-spacing: 0.14em; text-transform: uppercase; color: var(--teal); border: 1px solid var(--border2); padding: 0.28rem 0.85rem; font-weight: 600; background: rgba(0,229,212,0.04); white-space: nowrap; }

/* ── EVENTS GRID ── */
.events-grid { display: grid; grid-template-columns: 1.55fr 1fr; gap: 1px; background: var(--border); }
.event-card { background: var(--bg2); padding: 2.25rem; transition: background 0.22s; cursor: pointer; position: relative; overflow: hidden; }
.event-card::after { content: ''; position: absolute; top: 0; left: 0; right: 0; height: 2px; background: linear-gradient(90deg,var(--teal2),var(--blue2)); opacity: 0; transition: opacity 0.22s; }
.event-card:hover::after { opacity: 1; }
.event-card:hover { background: var(--bg3); }
.event-card.featured { grid-row: span 2; background: var(--bg3); border-left: 2px solid var(--teal2); }
.event-card.featured::after { opacity: 1; }
.event-cat { font-family: 'Orbitron', monospace; font-size: 0.56rem; letter-spacing: 0.2em; text-transform: uppercase; color: var(--teal); margin-bottom: 0.9rem; }
.event-title { font-family: 'Bebas Neue', sans-serif; font-size: 1.55rem; letter-spacing: 0.03em; color: #fff; line-height: 1.1; margin-bottom: 0.7rem; }
.event-card.featured .event-title { font-size: 2.25rem; }
.event-body { font-size: 0.83rem; line-height: 1.75; color: var(--text2); font-weight: 300; margin-bottom: 1.75rem; }
.event-footer { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 0.7rem; }
.event-meta { font-size: 0.66rem; letter-spacing: 0.1em; text-transform: uppercase; color: var(--text2); display: flex; gap: 1.25rem; flex-wrap: wrap; }

/* ── PROGRAMS GRID ── */
.programs-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 1px; background: var(--border); }
.program-item { background: var(--bg2); padding: 2.5rem 2rem; transition: background 0.2s; }
.program-item:hover { background: var(--bg3); }
.prog-num { font-family: 'Orbitron', monospace; font-size: 0.56rem; letter-spacing: 0.2em; color: var(--border2); margin-bottom: 1.2rem; }
.prog-icon { width: 42px; height: 42px; border: 1px solid var(--border2); display: flex; align-items: center; justify-content: center; margin-bottom: 1.4rem; background: rgba(0,229,212,0.04); }
.prog-icon svg { width: 19px; height: 19px; stroke: var(--teal); fill: none; stroke-width: 1.5; }
.prog-title { font-family: 'Bebas Neue', sans-serif; font-size: 1.25rem; letter-spacing: 0.05em; color: #fff; margin-bottom: 0.65rem; }
.prog-desc { font-size: 0.81rem; line-height: 1.75; color: var(--text2); font-weight: 300; }

/* ── CHAPTERS ── */
.chapters-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 1px; background: var(--border); }
.chapter-card { background: var(--bg2); padding: 2.25rem 2rem; transition: background 0.2s; position: relative; overflow: hidden; }
.chapter-card::after { content: ''; position: absolute; top: 0; left: 0; right: 0; height: 2px; background: linear-gradient(90deg,var(--teal2),var(--blue2)); opacity: 0; transition: opacity 0.22s; }
.chapter-card:hover::after { opacity: 1; }
.chapter-card:hover { background: var(--bg3); }
.chapter-card.active-chapter { background: var(--bg3); border-left: 2px solid var(--teal2); }
.chapter-card.active-chapter::after { opacity: 1; }
.chapter-flag { font-size: 0.56rem; letter-spacing: 0.22em; text-transform: uppercase; color: var(--teal); margin-bottom: 0.9rem; font-family: 'Orbitron', monospace; }
.chapter-city { font-family: 'Bebas Neue', sans-serif; font-size: 1.6rem; letter-spacing: 0.04em; color: #fff; margin-bottom: 0.5rem; }
.chapter-desc { font-size: 0.8rem; line-height: 1.7; color: var(--text2); font-weight: 300; margin-bottom: 1.25rem; }
.chapter-meta { display: flex; gap: 0.75rem; flex-wrap: wrap; align-items: center; }

/* ── JOIN SECTION ── */
.join-section { background: var(--bg2); padding: 5.5rem 3rem; border-top: 1px solid var(--border); display: grid; grid-template-columns: 1fr 1fr; gap: 5rem; align-items: center; }
.join-headline { font-family: 'Bebas Neue', sans-serif; font-size: clamp(2.8rem, 5vw, 5.5rem); line-height: 0.92; letter-spacing: 0.03em; color: #fff; margin-bottom: 1.4rem; }
.join-headline .c-teal { color: var(--teal); }
.join-sub { font-size: 0.9rem; line-height: 1.78; color: var(--text2); font-weight: 300; margin-bottom: 1.75rem; }
.join-perks { display: flex; flex-direction: column; gap: 0.68rem; }
.join-perk { display: flex; align-items: center; gap: 0.7rem; font-size: 0.81rem; color: var(--text2); }
.join-perk::before { content: '◆'; color: var(--teal); font-size: 0.45rem; flex-shrink: 0; }
.join-form { display: flex; flex-direction: column; gap: 0.7rem; }
.join-form .submit-btn { background: linear-gradient(125deg,var(--teal2),var(--blue2)); color: #fff; border: none; padding: 1rem 1.2rem; font-family: 'Inter', sans-serif; font-size: 0.74rem; letter-spacing: 0.18em; text-transform: uppercase; font-weight: 600; cursor: pointer; clip-path: polygon(8px 0%,100% 0%,calc(100% - 8px) 100%,0% 100%); transition: opacity 0.2s; }
.join-form .submit-btn:hover { opacity: 0.82; }
.form-note { font-size: 0.64rem; color: rgba(122,170,184,0.38); letter-spacing: 0.08em; text-align: center; }

/* ── BLOG ── */
.blog-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 1px; background: var(--border); }
.blog-card { background: var(--bg2); padding: 2.25rem 2rem; transition: background 0.2s; cursor: pointer; position: relative; overflow: hidden; }
.blog-card::after { content: ''; position: absolute; top: 0; left: 0; right: 0; height: 2px; background: linear-gradient(90deg,var(--teal2),var(--blue2)); opacity: 0; transition: opacity 0.22s; }
.blog-card:hover::after { opacity: 1; }
.blog-card:hover { background: var(--bg3); }
.blog-cat { font-family: 'Orbitron', monospace; font-size: 0.55rem; letter-spacing: 0.2em; text-transform: uppercase; color: var(--teal); margin-bottom: 0.9rem; }
.blog-title { font-family: 'Bebas Neue', sans-serif; font-size: 1.3rem; letter-spacing: 0.02em; color: #fff; margin-bottom: 0.75rem; line-height: 1.1; }
.blog-excerpt { font-size: 0.8rem; line-height: 1.72; color: var(--text2); font-weight: 300; margin-bottom: 1.25rem; }
.blog-meta { display: flex; gap: 0.75rem; font-size: 0.65rem; color: var(--text2); flex-wrap: wrap; }
.blog-read-more { font-size: 0.66rem; letter-spacing: 0.14em; text-transform: uppercase; color: var(--teal); text-decoration: none; display: inline-flex; align-items: center; gap: 0.4rem; margin-top: 1rem; transition: gap 0.2s; }
.blog-read-more:hover { gap: 0.7rem; }
.blog-read-more::after { content: '→'; }

/* Single post */
.single-post-content { max-width: 760px; margin: 0 auto; padding: 4rem 3rem; }
.single-post-content h1,h2,h3 { font-family: 'Bebas Neue', sans-serif; color: #fff; letter-spacing: 0.03em; margin-bottom: 1rem; margin-top: 2rem; }
.single-post-content h1 { font-size: 3rem; line-height: 1; }
.single-post-content h2 { font-size: 2rem; }
.single-post-content h3 { font-size: 1.5rem; }
.single-post-content p { font-size: 0.95rem; line-height: 1.85; color: var(--text2); font-weight: 300; margin-bottom: 1.5rem; }
.single-post-content a { color: var(--teal); }
.single-post-content blockquote { border-left: 3px solid var(--teal2); padding: 1rem 1.5rem; margin: 2rem 0; background: var(--bg2); }
.single-post-content blockquote p { color: var(--text); font-style: italic; }
.single-post-content code { background: var(--bg3); color: var(--teal); padding: 0.2rem 0.5rem; font-size: 0.85rem; }
.single-post-content pre { background: var(--bg3); border: 1px solid var(--border); padding: 1.5rem; overflow-x: auto; margin-bottom: 1.5rem; }
.entry-header { margin-bottom: 2.5rem; padding-bottom: 2rem; border-bottom: 1px solid var(--border); }
.entry-meta { font-size: 0.68rem; letter-spacing: 0.12em; text-transform: uppercase; color: var(--text2); margin-bottom: 1rem; }
.entry-title { font-family: 'Bebas Neue', sans-serif; font-size: clamp(2rem,5vw,3.5rem); line-height: 1; color: #fff; letter-spacing: 0.03em; }

/* ── ARCHIVE / LOOP ── */
.archive-grid { display: grid; grid-template-columns: repeat(2,1fr); gap: 1px; background: var(--border); }
.archive-post { background: var(--bg2); padding: 2.25rem; transition: background 0.2s; position: relative; overflow: hidden; }
.archive-post::after { content: ''; position: absolute; top: 0; left: 0; right: 0; height: 2px; background: linear-gradient(90deg,var(--teal2),var(--blue2)); opacity: 0; transition: opacity 0.22s; }
.archive-post:hover::after { opacity: 1; }
.archive-post:hover { background: var(--bg3); }
.archive-post h2 { font-family: 'Bebas Neue', sans-serif; font-size: 1.5rem; color: #fff; margin-bottom: 0.75rem; }
.archive-post h2 a { text-decoration: none; color: #fff; }
.archive-post .post-meta { font-size: 0.65rem; color: var(--text2); margin-bottom: 0.75rem; letter-spacing: 0.1em; text-transform: uppercase; }
.archive-post .post-excerpt { font-size: 0.82rem; color: var(--text2); line-height: 1.72; font-weight: 300; }

/* ── CPT: EVENTS ── */
.events-list { display: flex; flex-direction: column; gap: 1px; background: var(--border); }
.event-list-item { background: var(--bg2); display: grid; grid-template-columns: 80px 1fr auto; gap: 0; transition: background 0.22s; position: relative; overflow: hidden; }
.event-list-item::after { content: ''; position: absolute; top: 0; left: 0; right: 0; height: 2px; background: linear-gradient(90deg,var(--teal2),var(--blue2)); opacity: 0; transition: opacity 0.22s; }
.event-list-item:hover::after { opacity: 1; }
.event-list-item:hover { background: var(--bg3); }
.event-date-col { padding: 2rem 1.5rem; text-align: center; border-right: 1px solid var(--border); }
.event-day { font-family: 'Bebas Neue', sans-serif; font-size: 2.2rem; color: var(--teal); display: block; line-height: 1; }
.event-month { font-family: 'Orbitron', monospace; font-size: 0.55rem; letter-spacing: 0.2em; color: var(--text2); display: block; }
.event-info-col { padding: 1.75rem 2rem; border-right: 1px solid var(--border); }
.event-info-col h3 { font-family: 'Bebas Neue', sans-serif; font-size: 1.4rem; letter-spacing: 0.03em; color: #fff; margin-bottom: 0.4rem; }
.event-info-col h3 a { text-decoration: none; color: #fff; }
.event-info-col .event-excerpt { font-size: 0.8rem; color: var(--text2); line-height: 1.7; font-weight: 300; margin-bottom: 0.75rem; }
.event-details { display: flex; gap: 1.25rem; flex-wrap: wrap; font-size: 0.66rem; letter-spacing: 0.08em; text-transform: uppercase; color: var(--text2); }
.event-action-col { padding: 1.75rem 2rem; display: flex; flex-direction: column; align-items: flex-end; justify-content: center; gap: 0.75rem; }

/* ── MEMBERS CPT ── */
.members-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 1px; background: var(--border); }
.member-card { background: var(--bg2); padding: 2rem 1.75rem; text-align: center; transition: background 0.2s; }
.member-card:hover { background: var(--bg3); }
.member-avatar { width: 50px; height: 50px; border-radius: 50%; border: 1px solid var(--border2); background: rgba(0,229,212,0.07); display: flex; align-items: center; justify-content: center; margin: 0 auto 0.9rem; font-family: 'Orbitron', monospace; font-size: 0.78rem; font-weight: 700; color: var(--teal); overflow: hidden; }
.member-avatar img { width: 100%; height: 100%; object-fit: cover; border-radius: 50%; }
.member-name { font-size: 0.9rem; font-weight: 600; color: #fff; margin-bottom: 0.2rem; }
.member-role { font-size: 0.72rem; color: var(--text2); font-weight: 300; margin-bottom: 0.65rem; }
.member-tags { display: flex; flex-wrap: wrap; justify-content: center; gap: 0.28rem; }

/* ── WOOCOMMERCE (Tickets) ── */
.woocommerce { color: var(--text); }
.woocommerce .woocommerce-message, .woocommerce .woocommerce-info { background: var(--bg2); border-top-color: var(--teal); color: var(--text); }
.woocommerce button.button, .woocommerce a.button { background: linear-gradient(125deg,var(--teal2),var(--blue2)) !important; color: #fff !important; border: none !important; border-radius: 0 !important; clip-path: polygon(8px 0%,100% 0%,calc(100% - 8px) 100%,0% 100%); font-family: 'Inter', sans-serif !important; font-size: 0.72rem !important; letter-spacing: 0.14em !important; text-transform: uppercase !important; font-weight: 600 !important; }
.woocommerce form .form-row input.input-text, .woocommerce form .form-row textarea { background: rgba(0,229,212,0.04) !important; border: 1px solid var(--border) !important; color: var(--text) !important; border-radius: 0 !important; }

/* ── CONTACT FORM 7 ── */
.wpcf7 input[type="text"], .wpcf7 input[type="email"], .wpcf7 textarea, .wpcf7 select { background: rgba(0,229,212,0.04); border: 1px solid var(--border); color: var(--text); padding: 0.88rem 1.2rem; font-family: 'Inter', sans-serif; font-size: 0.87rem; outline: none; transition: border-color 0.2s; width: 100%; border-radius: 0; }
.wpcf7 input[type="submit"] { background: linear-gradient(125deg,var(--teal2),var(--blue2)); color: #fff; border: none; padding: 0.9rem 2rem; font-family: 'Inter', sans-serif; font-size: 0.74rem; letter-spacing: 0.18em; text-transform: uppercase; font-weight: 600; cursor: pointer; clip-path: polygon(8px 0%,100% 0%,calc(100% - 8px) 100%,0% 100%); }

/* ── PAGINATION ── */
.pagination { display: flex; justify-content: center; gap: 0.5rem; padding: 3rem; }
.page-numbers { font-size: 0.78rem; letter-spacing: 0.12em; padding: 0.5rem 0.9rem; border: 1px solid var(--border); color: var(--text2); text-decoration: none; transition: all 0.2s; }
.page-numbers:hover, .page-numbers.current { border-color: var(--teal2); color: var(--teal); background: rgba(0,229,212,0.06); }

/* ── RESPONSIVE ── */
@media (max-width: 960px) {
  .site-header { padding: 0 1.5rem; }
  .main-navigation ul { display: none; flex-direction: column; position: fixed; top: 70px; left: 0; right: 0; background: rgba(4,4,7,0.98); padding: 2rem 1.5rem; border-bottom: 1px solid var(--border); gap: 1.25rem; }
  .main-navigation ul.open { display: flex; }
  .nav-burger { display: block; }
  .sec { padding: 3.5rem 1.5rem; }
  .page-hero { padding: 3rem 1.5rem 2.5rem; }
  .hero-stat { padding: 1rem 1.5rem; }
  .dubai-strip { grid-template-columns: 1fr; gap: 1.5rem; padding: 2.5rem 1.5rem; }
  .dubai-badges { align-items: flex-start; }
  .events-grid { grid-template-columns: 1fr; }
  .event-card.featured { grid-row: auto; }
  .programs-grid { grid-template-columns: 1fr 1fr; }
  .chapters-grid { grid-template-columns: 1fr; }
  .join-section { grid-template-columns: 1fr; gap: 2.5rem; padding: 4rem 1.5rem; }
  .blog-grid { grid-template-columns: 1fr; }
  .members-grid { grid-template-columns: 1fr 1fr; }
  .archive-grid { grid-template-columns: 1fr; }
  .event-list-item { grid-template-columns: 60px 1fr; }
  .event-action-col { grid-column: 2; padding-top: 0; padding-left: 2rem; }
  .footer-top { grid-template-columns: 1fr; gap: 2.5rem; padding: 3rem 1.5rem; }
  .footer-bottom { padding: 1.5rem; }
  .footer-nav-cols { grid-template-columns: 1fr 1fr; }
  .single-post-content { padding: 3rem 1.5rem; }
}

/* ── FSE / GUTENBERG OVERRIDES ── */
:root { --wp--style--block-gap: 0; }
.wp-site-blocks { padding: 0; }
.is-root-container { padding: 0 !important; }
body.wp-admin { background: #1e1e1e; }

/* Navigation block */
.wp-block-navigation { gap: 1.75rem; }
.wp-block-navigation-item__content { color: var(--text2) !important; font-size: 0.68rem; letter-spacing: 0.14em; text-transform: uppercase; font-weight: 500; transition: color 0.2s; }
.wp-block-navigation-item__content:hover { color: var(--teal) !important; }
.wp-block-navigation-item.nav-badge .wp-block-navigation-item__content { color: var(--teal) !important; border: 1px solid rgba(0,229,212,0.3); padding: 0.2rem 0.6rem; background: rgba(0,229,212,0.05); font-size: 0.58rem; }
.wp-block-navigation-item.nav-cta-btn .wp-block-navigation-item__content { background: linear-gradient(125deg, var(--teal2), var(--blue2)) !important; color: #fff !important; padding: 0.5rem 1.3rem; clip-path: polygon(8px 0%,100% 0%,calc(100% - 8px) 100%,0% 100%); font-weight: 600; }
.wp-block-navigation__responsive-container-open { color: var(--teal); }
.wp-block-navigation__responsive-container { background: rgba(4,4,7,0.98) !important; }

/* Query block cards */
.wp-block-query.events-grid { display: grid; grid-template-columns: 1.55fr 1fr; gap: 1px; background: var(--border); }
.wp-block-query.blog-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 1px; background: var(--border); }
.wp-block-query.archive-grid { display: grid; grid-template-columns: repeat(2,1fr); gap: 1px; background: var(--border); }
.wp-block-query.events-list { display: flex; flex-direction: column; gap: 1px; background: var(--border); }
.wp-block-post { position: relative; overflow: hidden; transition: background 0.22s; }
.wp-block-post::after { content:''; position:absolute; top:0; left:0; right:0; height:2px; background:linear-gradient(90deg,var(--teal2),var(--blue2)); opacity:0; transition:opacity 0.22s; }
.wp-block-post:hover::after { opacity:1; }

/* Post meta in templates */
.wp-block-post-date, .wp-block-post-author__name { font-size: 0.65rem; color: var(--text2); letter-spacing: 0.1em; text-transform: uppercase; }
.wp-block-post-title a { color: #fff; text-decoration: none; }
.wp-block-post-title a:hover { color: var(--teal); }
.wp-block-post-excerpt p { color: var(--text2); font-size: 0.8rem; line-height: 1.72; font-weight: 300; }
.wp-block-post-terms a { color: var(--teal); text-decoration: none; font-size: 0.58rem; letter-spacing: 0.12em; text-transform: uppercase; border: 1px solid var(--border2); padding: 0.22rem 0.6rem; background: rgba(0,229,212,0.04); }
.wp-block-read-more { font-size: 0.66rem; letter-spacing: 0.14em; text-transform: uppercase; color: var(--teal); text-decoration: none; display: inline-flex; align-items: center; gap: 0.4rem; margin-top: 1rem; transition: gap 0.2s; }
.wp-block-read-more:hover { gap: 0.7rem; }
.wp-block-read-more.btn-p { background: linear-gradient(125deg,var(--teal2),var(--blue2)); color: #fff; padding: 0.6rem 1.4rem; clip-path: polygon(8px 0%,100% 0%,calc(100% - 8px) 100%,0% 100%); font-weight: 600; }

/* Pagination */
.wp-block-query-pagination { display: flex; justify-content: center; gap: 0.5rem; padding: 3rem; }
.wp-block-query-pagination-numbers .page-numbers, .wp-block-query-pagination-previous, .wp-block-query-pagination-next { font-size: 0.78rem; padding: 0.5rem 0.9rem; border: 1px solid var(--border); color: var(--text2); text-decoration: none; transition: all 0.2s; }
.wp-block-query-pagination-numbers .page-numbers:hover, .wp-block-query-pagination-numbers .current, .wp-block-query-pagination-previous:hover, .wp-block-query-pagination-next:hover { border-color: var(--teal2); color: var(--teal); background: rgba(0,229,212,0.06); }

/* Site logo */
.site-logo-img img, .wp-block-site-logo img { border-radius: 0; }

/* Single event layout */
.single-event-wrap { grid-template-columns: 1fr 360px; gap: 4rem; }
.single-event-main { grid-column: 1; }
.single-event-sidebar { grid-column: 2; }

/* Search block */
.aiu-search .wp-block-search__input { background: rgba(0,229,212,0.04); border: 1px solid var(--border); color: var(--text); padding: 0.88rem 1.2rem; border-radius: 0; }
.aiu-search .wp-block-search__button { background: linear-gradient(125deg,var(--teal2),var(--blue2)); color: #fff; border: none; border-radius: 0; padding: 0.88rem 1.5rem; font-family: 'Inter', sans-serif; font-size: 0.72rem; letter-spacing: 0.14em; text-transform: uppercase; font-weight: 600; }

/* Gutenberg editor dark preview */
.editor-styles-wrapper { background: var(--bg) !important; color: var(--text) !important; font-family: 'Inter', sans-serif; }

/* q-mark styling */
.q-mark { font-family: 'Bebas Neue', sans-serif; font-size: 5.5rem; color: var(--teal); line-height: 0.4; margin-bottom: 1.5rem; opacity: 0.22; }
.q-text { font-family: 'Bebas Neue', sans-serif; font-size: clamp(2rem,4.5vw,3.8rem); line-height: 1.08; letter-spacing: 0.03em; color: #fff; max-width: 960px; margin: 0 auto 1.5rem; }
.q-attr { font-size: 0.68rem; letter-spacing: 0.22em; text-transform: uppercase; color: var(--text2); }

/* event-list-item FSE */
.wp-block-query.events-list .wp-block-post { display: grid; grid-template-columns: 80px 1fr auto; background: var(--bg2); }

@media (max-width: 960px) {
  .wp-block-query.events-grid { grid-template-columns: 1fr; }
  .wp-block-query.blog-grid { grid-template-columns: 1fr; }
  .wp-block-query.archive-grid { grid-template-columns: 1fr; }
  .single-event-wrap { grid-template-columns: 1fr; }
  .single-event-sidebar { grid-column: 1; position: static; }
}

/* ── ADDITIONAL PAGE STYLES ── */

/* Timeline */
.ao-timeline { position: relative; padding-left: 2rem; }
.at-line { position: absolute; left: 6px; top: 8px; bottom: 8px; width: 1px; background: linear-gradient(180deg,var(--teal2),var(--blue2)); }
.at-item { position: relative; margin-bottom: 1.75rem; }
.at-dot { width: 13px; height: 13px; border-radius: 50%; border: 2px solid var(--teal2); background: var(--bg); position: absolute; left: -2.4rem; top: 4px; }
.at-now .at-dot { background: var(--teal2); box-shadow: 0 0 10px rgba(0,229,212,.5); }
.at-year { font-family: 'Orbitron', monospace; font-size: .6rem; letter-spacing: .2em; color: var(--teal); margin-bottom: .25rem; }
.at-label { font-size: .9rem; font-weight: 600; color: #fff; margin-bottom: .25rem; }
.at-sub { font-size: .78rem; color: var(--text2); font-weight: 300; }

/* Team member avatars */
.tm-av { width: 52px; height: 52px; border-radius: 50%; border: 1px solid var(--border2); background: rgba(0,229,212,.07); display: flex; align-items: center; justify-content: center; font-family: 'Orbitron', monospace; font-size: .78rem; font-weight: 700; color: var(--teal); margin-bottom: 1rem; }
.tm-name { font-size: .9rem; font-weight: 600; color: #fff; }
.val-title { font-family: 'Bebas Neue', sans-serif; font-size: 1.4rem; letter-spacing: .03em; color: #fff; margin-bottom: .75rem; }

/* Topic chips */
.topic-chip { font-size: .72rem; letter-spacing: .08em; color: var(--text2); border: 1px solid var(--border); padding: .4rem .85rem; background: var(--bg2); transition: all .2s; cursor: default; }
.topic-chip:hover { border-color: var(--teal2); color: var(--teal); background: rgba(0,229,212,.06); }

/* CF7 form in dark theme */
.wpcf7-form input[type="text"],
.wpcf7-form input[type="email"],
.wpcf7-form input[type="tel"],
.wpcf7-form textarea,
.wpcf7-form select { background: rgba(0,229,212,.04); border: 1px solid var(--border); color: var(--text); padding: .88rem 1.2rem; font-family: 'Inter', sans-serif; font-size: .87rem; outline: none; transition: border-color .2s; width: 100%; border-radius: 0; margin-bottom: .7rem; }
.wpcf7-form input:focus, .wpcf7-form textarea:focus, .wpcf7-form select:focus { border-color: var(--teal2); }
.wpcf7-form input[type="submit"] { background: linear-gradient(125deg,var(--teal2),var(--blue2)); color: #fff; border: none; padding: 1rem 2rem; font-family: 'Inter', sans-serif; font-size: .74rem; letter-spacing: .18em; text-transform: uppercase; font-weight: 600; cursor: pointer; clip-path: polygon(8px 0%,100% 0%,calc(100% - 8px) 100%,0% 100%); width: 100%; }
.wpcf7-form input::placeholder, .wpcf7-form textarea::placeholder { color: rgba(122,170,184,.35); }
.wpcf7-spinner { border-color: var(--teal) transparent transparent transparent !important; }
.wpcf7-response-output { border-color: var(--teal2) !important; color: var(--teal) !important; background: rgba(0,229,212,.05) !important; padding: .75rem 1rem !important; font-size: .8rem; }

/* Page images */
.wp-block-image img { display: block; }
.alignwide { margin-left: 0; margin-right: 0; width: 100%; max-width: none; }

/* Sponsor page member card grid */
@media (max-width: 960px) {
  div[style*="grid-template-columns: repeat(4"] { grid-template-columns: 1fr 1fr !important; }
  div[style*="grid-template-columns:repeat(4"] { grid-template-columns: 1fr 1fr !important; }
}

/* ════════════════════════════════════════════════════════
   LIGHT MODE THEME
   Applied when <html> has class "aiu-light" or
   body has data-theme="light"
════════════════════════════════════════════════════════ */

html.aiu-light,
[data-theme="light"] {
  --bg:      #f4f6f8;
  --bg2:     #eef0f4;
  --bg3:     #e6eaef;
  --teal:    #007a72;
  --teal2:   #005f5a;
  --blue:    #0055cc;
  --blue2:   #003d99;
  --text:    #0d1117;
  --text2:   #4a6572;
  --border:  rgba(0,122,114,0.14);
  --border2: rgba(0,122,114,0.28);
}

/* Grid background - lighter in light mode */
html.aiu-light body::before,
[data-theme="light"] body::before {
  background-image:
    linear-gradient(rgba(0,122,114,0.05) 1px, transparent 1px),
    linear-gradient(90deg, rgba(0,122,114,0.05) 1px, transparent 1px);
}

/* Body background */
html.aiu-light body,
[data-theme="light"] body { background: var(--bg); color: var(--text); }

/* Header */
html.aiu-light .site-header,
[data-theme="light"] .site-header {
  background: rgba(244,246,248,0.96);
  border-bottom: 1px solid var(--border);
}

/* Site name */
html.aiu-light .site-name,
[data-theme="light"] .site-name { color: #0d1117; }

/* Cards */
html.aiu-light .card,
[data-theme="light"] .card { background: var(--bg2); }
html.aiu-light .card:hover,
[data-theme="light"] .card:hover { background: var(--bg3); }
html.aiu-light .card.active-card,
[data-theme="light"] .card.active-card { background: var(--bg3); border-left-color: var(--teal2); }

/* Sections */
html.aiu-light .sec-bg2,
[data-theme="light"] .sec-bg2 { background: var(--bg2); }

/* Hero section */
html.aiu-light .hero-section,
[data-theme="light"] .hero-section { background: var(--bg); }
html.aiu-light .hero-radial,
[data-theme="light"] .hero-radial {
  background: radial-gradient(ellipse 80% 60% at 50% 40%, rgba(0,122,114,0.08) 0%, transparent 70%);
}
html.aiu-light .hero-headline,
[data-theme="light"] .hero-headline { color: #0d1117; }
html.aiu-light .hero-headline .c-outline,
[data-theme="light"] .hero-headline .c-outline {
  -webkit-text-stroke: 1.5px rgba(0,122,114,0.4);
  color: transparent;
}
html.aiu-light .stat-num,
[data-theme="light"] .stat-num { color: var(--teal); }

/* Dubai strip */
html.aiu-light .dubai-strip,
[data-theme="light"] .dubai-strip { background: var(--bg2); }
html.aiu-light .dubai-icon,
[data-theme="light"] .dubai-icon { background: var(--bg3); }

/* Events */
html.aiu-light .event-card,
[data-theme="light"] .event-card { background: var(--bg2); }
html.aiu-light .event-card.featured,
[data-theme="light"] .event-card.featured { background: var(--bg3); }
html.aiu-light .event-title,
[data-theme="light"] .event-title { color: #0d1117; }

/* Blog */
html.aiu-light .blog-card,
[data-theme="light"] .blog-card { background: var(--bg2); }
html.aiu-light .blog-title,
[data-theme="light"] .blog-title { color: #0d1117; }

/* Programs */
html.aiu-light .program-item,
[data-theme="light"] .program-item { background: var(--bg2); }
html.aiu-light .program-item:hover,
[data-theme="light"] .program-item:hover { background: var(--bg3); }
html.aiu-light .prog-title,
[data-theme="light"] .prog-title { color: #0d1117; }

/* Headings */
html.aiu-light h1, html.aiu-light h2, html.aiu-light h3,
[data-theme="light"] h1, [data-theme="light"] h2, [data-theme="light"] h3 { color: #0d1117; }

/* Page hero */
html.aiu-light .page-hero,
[data-theme="light"] .page-hero { background: var(--bg); }
html.aiu-light .ph-title,
[data-theme="light"] .ph-title { color: #0d1117; }

/* Forms */
html.aiu-light .f-input,
html.aiu-light input[type="text"],
html.aiu-light input[type="email"],
html.aiu-light textarea,
html.aiu-light select,
[data-theme="light"] .f-input,
[data-theme="light"] input[type="text"],
[data-theme="light"] input[type="email"],
[data-theme="light"] textarea,
[data-theme="light"] select {
  background: #fff;
  border-color: rgba(0,122,114,0.2);
  color: #0d1117;
}
html.aiu-light input::placeholder, html.aiu-light textarea::placeholder,
[data-theme="light"] input::placeholder, [data-theme="light"] textarea::placeholder {
  color: rgba(74,101,114,0.5);
}

/* Footer */
html.aiu-light .site-footer,
[data-theme="light"] .site-footer { background: var(--bg2); }
html.aiu-light .footer-top,
[data-theme="light"] .footer-top { background: var(--bg2); }

/* Navigation */
html.aiu-light .main-navigation ul,
[data-theme="light"] .main-navigation ul {
  background: rgba(244,246,248,0.98);
}

/* Join section */
html.aiu-light .join-section,
[data-theme="light"] .join-section { background: var(--bg2); }

/* Member cards */
html.aiu-light .member-card,
[data-theme="light"] .member-card { background: var(--bg2); }

/* Ticker stays gradient - just adjust opacity */
html.aiu-light .ticker-item,
[data-theme="light"] .ticker-item { color: rgba(255,255,255,0.95); }

/* Logo animation in light mode */
html.aiu-light .hero-logo img,
[data-theme="light"] .hero-logo img {
  animation-name: logopulse-light;
}
@keyframes logopulse-light {
  0%,100% { filter: drop-shadow(0 0 12px rgba(0,122,114,0.3)) drop-shadow(0 0 30px rgba(0,85,204,0.15)); }
  50%      { filter: drop-shadow(0 0 22px rgba(0,122,114,0.5)) drop-shadow(0 0 50px rgba(0,85,204,0.25)); }
}

/* Image brightness adjustment in light mode */
html.aiu-light figure img[style*="filter:brightness(0.6)"],
html.aiu-light figure img[style*="filter: brightness(0.6)"],
[data-theme="light"] figure img[style*="filter:brightness(0.6)"] {
  filter: brightness(0.75) !important;
}

/* Theme toggle button */
.aiu-theme-toggle {
  position: fixed;
  bottom: 2rem;
  right: 2rem;
  z-index: 999;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  border: 1px solid var(--border2);
  background: var(--bg2);
  color: var(--teal);
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.2rem;
  transition: background 0.2s, border-color 0.2s, transform 0.2s;
  box-shadow: 0 4px 20px rgba(0,0,0,0.3);
}
.aiu-theme-toggle:hover {
  background: var(--bg3);
  transform: scale(1.08);
}
html.aiu-light .aiu-theme-toggle,
[data-theme="light"] .aiu-theme-toggle {
  background: #fff;
  box-shadow: 0 4px 20px rgba(0,0,0,0.12);
}

/* WP Admin bar stays dark */
#wpadminbar { background: #1d2327 !important; }

/* Gutenberg editor - also respond to light mode preview */
.editor-styles-wrapper.aiu-light {
  background: #f4f6f8 !important;
  color: #0d1117 !important;
}
