/*
Theme Name: AI Classroom Child
Template: hello-elementor
Description: Child theme for The AI Classroom — Extramarks. Use with Hello Elementor parent theme.
Version: 1.0.0
Text Domain: ai-classroom-child
*/

/* ══════════════════════════════════════════
   GOOGLE FONTS
══════════════════════════════════════════ */
@import url('https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700;800;900&family=DM+Sans:ital,wght@0,300;0,400;0,500;0,600;1,400&family=JetBrains+Mono:wght@400;500;600&display=swap');

/* ══════════════════════════════════════════
   CSS VARIABLES
══════════════════════════════════════════ */
:root {
  --em-orange:      #E8611A;
  --em-orange-lt:   #F47B3B;
  --em-orange-glow: rgba(232,97,26,0.15);
  --em-orange-soft: #FFF4EE;
  --em-white:       #FFFFFF;
  --em-off-white:   #FAFAF8;
  --em-cream:       #F5F2ED;
  --em-black:       #1A1A1A;
  --em-slate:       #4A4A5A;
  --em-muted:       #7A7A8A;
  --em-light-gray:  #E8E8ED;
  --em-card-border: rgba(0,0,0,0.06);
  --em-card-shadow: 0 2px 16px rgba(0,0,0,0.06);
}

/* ══════════════════════════════════════════
   BASE RESET
══════════════════════════════════════════ */
*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  font-family: 'DM Sans', sans-serif;
  background: #fff;
  color: var(--em-black);
  overflow-x: hidden;
  line-height: 1.6;
}

/* ══════════════════════════════════════════
   ELEMENTOR GLOBAL OVERRIDES
══════════════════════════════════════════ */
.elementor-section { position: relative; }
.elementor-widget-wrap { position: relative; }

/* ══════════════════════════════════════════
   NAVBAR (fixed, glassmorphism)
══════════════════════════════════════════ */
.aic-nav {
  position: fixed;
  top: 0; left: 0; right: 0;
  z-index: 9999;
  padding: 14px 0;
  background: rgba(255,255,255,0.92);
  backdrop-filter: blur(20px);
  border-bottom: 1px solid var(--em-card-border);
}
.aic-nav .aic-nav-inner {
  max-width: 1240px;
  margin: 0 auto;
  padding: 0 clamp(20px,4vw,40px);
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.aic-nav-logo {
  display: flex; align-items: center; gap: 10px;
  text-decoration: none;
}
.aic-nav-logo-icon {
  width: 38px; height: 38px;
  background: var(--em-orange);
  border-radius: 8px;
  display: grid; place-items: center;
  color: #fff;
  font-family: 'Outfit', sans-serif;
  font-weight: 800; font-size: 14px;
}
.aic-nav-logo-text {
  font-family: 'Outfit', sans-serif;
  font-weight: 700; font-size: 16px; color: var(--em-black);
}
.aic-nav-logo-text span {
  display: block; font-size: 9px;
  font-family: 'JetBrains Mono', monospace;
  letter-spacing: 1.5px; color: var(--em-muted);
  font-weight: 400; text-transform: uppercase;
}
.aic-nav-links {
  display: flex; align-items: center; gap: 28px; list-style: none;
}
.aic-nav-links a {
  font-size: 13px; color: var(--em-slate);
  text-decoration: none; font-weight: 500; transition: color .3s;
}
.aic-nav-links a:hover { color: var(--em-orange); }
.aic-nav-cta {
  background: var(--em-orange) !important; color: #fff !important;
  padding: 10px 22px; border-radius: 8px;
  font-weight: 600 !important; transition: all .3s !important;
}
.aic-nav-cta:hover {
  background: var(--em-orange-lt) !important;
  transform: translateY(-1px);
  box-shadow: 0 6px 20px rgba(232,97,26,.25);
}
.aic-hamburger {
  display: none; flex-direction: column; gap: 5px;
  cursor: pointer; background: none; border: none; padding: 4px;
}
.aic-hamburger span {
  display: block; width: 24px; height: 2px;
  background: var(--em-black); border-radius: 2px; transition: all .3s;
}

/* ══════════════════════════════════════════
   SECTION SPACER (below fixed nav)
══════════════════════════════════════════ */
.aic-page-wrap { padding-top: 68px; }

/* ══════════════════════════════════════════
   TICKER
══════════════════════════════════════════ */
.aic-ticker {
  padding: 16px 0;
  background: var(--em-orange);
  overflow: hidden;
}
.aic-ticker-track {
  display: flex; gap: 40px;
  animation: aicScroll 22s linear infinite;
  width: max-content;
}
.aic-ticker-item {
  font-family: 'Outfit', sans-serif;
  font-size: 13px; font-weight: 600;
  letter-spacing: 2px; text-transform: uppercase;
  white-space: nowrap; color: rgba(255,255,255,.9);
  display: flex; align-items: center; gap: 14px;
}
.aic-ticker-item::after { content:'◆'; font-size:6px; color:rgba(255,255,255,.5); }
@keyframes aicScroll { 0%{transform:translateX(0)} 100%{transform:translateX(-50%)} }

/* ══════════════════════════════════════════
   SECTION LABELS / TITLES (Elementor Heading override)
══════════════════════════════════════════ */
.aic-label {
  font-family: 'JetBrains Mono', monospace;
  font-size: 11px; letter-spacing: 3px;
  text-transform: uppercase; color: var(--em-orange);
  font-weight: 600; display: block; margin-bottom: 8px;
}
.aic-title {
  font-family: 'Outfit', sans-serif !important;
  font-weight: 800 !important; line-height: 1.1 !important;
}
.aic-title .orange { color: var(--em-orange); }
.aic-title .orange-grad {
  background: linear-gradient(135deg, var(--em-orange), var(--em-orange-lt));
  -webkit-background-clip: text; -webkit-text-fill-color: transparent;
  background-clip: text;
}
.aic-desc { font-size: 16px; color: var(--em-muted); line-height: 1.7; }

/* ══════════════════════════════════════════
   BUTTONS
══════════════════════════════════════════ */
.aic-btn-primary,
.elementor-button.aic-btn-primary {
  display: inline-flex; align-items: center; gap: 8px;
  padding: 14px 32px;
  background: var(--em-orange) !important;
  color: #fff !important;
  border: none; border-radius: 10px;
  font-family: 'DM Sans', sans-serif;
  font-size: 15px; font-weight: 600;
  cursor: pointer; transition: all .3s;
  text-decoration: none;
}
.aic-btn-primary:hover,
.elementor-button.aic-btn-primary:hover {
  background: var(--em-orange-lt) !important;
  transform: translateY(-2px);
  box-shadow: 0 10px 28px rgba(232,97,26,.3);
  color: #fff !important;
}
.aic-btn-outline {
  display: inline-flex; align-items: center; gap: 8px;
  padding: 14px 32px;
  background: transparent; color: var(--em-black);
  border: 1.5px solid var(--em-light-gray);
  border-radius: 10px;
  font-family: 'DM Sans', sans-serif;
  font-size: 15px; font-weight: 500;
  cursor: pointer; transition: all .3s;
  text-decoration: none;
}
.aic-btn-outline:hover {
  border-color: var(--em-orange); color: var(--em-orange);
}

/* ══════════════════════════════════════════
   HERO SECTION
══════════════════════════════════════════ */
.aic-hero {
  min-height: 100vh;
  display: flex; align-items: center;
  background: linear-gradient(160deg, #fff 0%, var(--em-orange-soft) 50%, var(--em-cream) 100%);
  position: relative; overflow: hidden;
}
.aic-hero::before {
  content: '';
  position: absolute; inset: 0;
  background-image:
    radial-gradient(circle at 80% 20%, rgba(232,97,26,.06) 0%, transparent 50%),
    radial-gradient(circle at 20% 80%, rgba(232,97,26,.04) 0%, transparent 40%),
    linear-gradient(rgba(0,0,0,.015) 1px, transparent 1px),
    linear-gradient(90deg,rgba(0,0,0,.015) 1px, transparent 1px);
  background-size: auto, auto, 80px 80px, 80px 80px;
  pointer-events: none;
}
.aic-hero-badge {
  display: inline-flex; align-items: center; gap: 8px;
  background: rgba(232,97,26,.08);
  border: 1px solid rgba(232,97,26,.15);
  padding: 7px 16px; border-radius: 100px;
  font-size: 11px; font-weight: 600;
  color: var(--em-orange); letter-spacing: 1px;
  text-transform: uppercase; margin-bottom: 20px;
}
.aic-hero-badge .dot {
  width: 7px; height: 7px;
  background: var(--em-orange); border-radius: 50%;
  animation: aicBlink 2s infinite;
}
@keyframes aicBlink { 0%,100%{opacity:1} 50%{opacity:.3} }

.aic-hero-card {
  background: #fff;
  border: 1px solid var(--em-card-border);
  border-radius: 20px; padding: 36px;
  box-shadow: 0 12px 48px rgba(0,0,0,.06);
  position: relative; overflow: hidden;
}
.aic-hero-card::before {
  content: '';
  position: absolute; top:0; left:0; right:0; height:4px;
  background: linear-gradient(90deg, var(--em-orange), var(--em-orange-lt));
}
.aic-hero-card-date {
  text-align: center; background: var(--em-orange);
  color: #fff; border-radius: 12px; padding: 12px 18px;
}
.aic-hero-card-date .month { font-size:10px; text-transform:uppercase; letter-spacing:2px; opacity:.85; }
.aic-hero-card-date .day { font-family:'Outfit',sans-serif; font-size:32px; font-weight:800; line-height:1.1; }
.aic-hero-card-date .year { font-size:11px; opacity:.7; }
.aic-hero-card-tag {
  background: rgba(232,97,26,.08); color: var(--em-orange);
  padding: 5px 12px; border-radius: 100px;
  font-size: 10px; font-weight: 600; letter-spacing:1px; text-transform:uppercase;
}
.aic-hero-stats {
  display: grid; grid-template-columns: repeat(3,1fr);
  gap: 12px; margin-top: 24px;
}
.aic-hero-stat {
  text-align: center; padding: 14px 8px;
  background: var(--em-off-white);
  border-radius: 12px; border: 1px solid var(--em-card-border);
}
.aic-hero-stat .num {
  font-family:'Outfit',sans-serif; font-size:24px;
  font-weight:800; color:var(--em-orange);
}
.aic-hero-stat .lbl {
  font-size:10px; color:var(--em-muted);
  text-transform:uppercase; letter-spacing:1px; margin-top:2px;
}
.aic-countdown {
  display: flex; gap: 10px; margin-top: 18px; justify-content: center;
}
.aic-countdown-item { text-align: center; min-width: 55px; }
.aic-countdown-item .num {
  font-family:'Outfit',sans-serif; font-size:22px; font-weight:700;
  color: var(--em-black); background: var(--em-off-white);
  border: 1px solid var(--em-card-border); border-radius:8px;
  padding: 6px 10px; display: block;
}
.aic-countdown-item .lbl {
  font-size:8px; color:var(--em-muted);
  text-transform:uppercase; letter-spacing:1px; margin-top:4px;
}

/* ══════════════════════════════════════════
   STAT CARDS
══════════════════════════════════════════ */
.aic-stat-card {
  background: #fff;
  border: 1px solid var(--em-card-border);
  border-radius: 16px; padding: 32px 24px;
  text-align: center; box-shadow: var(--em-card-shadow);
  transition: all .3s;
}
.aic-stat-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 8px 32px rgba(232,97,26,.1);
  border-color: rgba(232,97,26,.2);
}
.aic-stat-card .big-num {
  font-family:'Outfit',sans-serif; font-size:48px;
  font-weight:900; color:var(--em-orange); line-height:1; margin-bottom:6px;
}
.aic-stat-card .stat-lbl {
  font-family:'Outfit',sans-serif; font-weight:700;
  font-size:16px; color:var(--em-black); margin-bottom:8px;
}
.aic-stat-card .stat-desc { font-size:13px; color:var(--em-muted); line-height:1.5; }

/* ══════════════════════════════════════════
   COMPANY METRIC CARDS
══════════════════════════════════════════ */
.aic-company-card {
  background: linear-gradient(135deg, var(--em-orange-soft), var(--em-cream));
  border: 1px solid var(--em-card-border);
  border-radius: 20px; padding: 44px; text-align: center;
}
.aic-company-logo-box {
  width: 200px; height: 68px; margin: 0 auto 20px;
  background: #fff; border: 1px solid var(--em-card-border);
  border-radius: 12px; display: grid; place-items: center;
  font-family:'Outfit',sans-serif; font-weight:800;
  font-size:22px; color:var(--em-orange);
}
.aic-metric-grid { display: grid; grid-template-columns: repeat(2,1fr); gap: 14px; }
.aic-metric-item {
  background: #fff; border: 1px solid var(--em-card-border);
  border-radius: 12px; padding: 18px; text-align: center;
}
.aic-metric-item .val {
  font-family:'Outfit',sans-serif; font-size:26px;
  font-weight:800; color:var(--em-orange);
}
.aic-metric-item .lbl { font-size:11px; color:var(--em-muted); margin-top:2px; }

/* ══════════════════════════════════════════
   FEATURE ROW ITEMS
══════════════════════════════════════════ */
.aic-feature-item {
  display: flex; align-items: flex-start; gap: 14px;
  padding: 16px; background: var(--em-off-white);
  border: 1px solid var(--em-card-border); border-radius: 12px;
  transition: all .3s; margin-bottom: 14px;
}
.aic-feature-item:hover { border-color:rgba(232,97,26,.3); transform:translateX(4px); }
.aic-feat-icon {
  width:40px; height:40px; background:rgba(232,97,26,.1);
  border-radius:10px; display:grid; place-items:center;
  flex-shrink:0; font-size:18px;
}
.aic-feat-text h4 {
  font-family:'Outfit',sans-serif; font-weight:700;
  font-size:14px; margin-bottom:3px; color:var(--em-black);
}
.aic-feat-text p { font-size:13px; color:var(--em-muted); line-height:1.5; }

/* ══════════════════════════════════════════
   PILLAR CARDS
══════════════════════════════════════════ */
.aic-pillar-card {
  background: #fff; border: 1px solid var(--em-card-border);
  border-radius: 16px; padding: 28px 20px; text-align: center;
  box-shadow: var(--em-card-shadow); transition: all .4s;
  position: relative; overflow: hidden;
}
.aic-pillar-card::after {
  content:''; position:absolute; bottom:0; left:0; right:0;
  height:3px; background:var(--em-orange);
  transform:scaleX(0); transition:transform .3s;
}
.aic-pillar-card:hover::after { transform:scaleX(1); }
.aic-pillar-card:hover { transform:translateY(-5px); box-shadow:0 12px 36px rgba(232,97,26,.1); }
.aic-pillar-icon {
  width:52px; height:52px; margin:0 auto 14px;
  background:rgba(232,97,26,.08); border-radius:14px;
  display:grid; place-items:center; font-size:22px;
}
.aic-pillar-card h3 {
  font-family:'Outfit',sans-serif; font-weight:700;
  font-size:16px; margin-bottom:6px; color:var(--em-orange);
}
.aic-pillar-card p { font-size:13px; color:var(--em-muted); line-height:1.6; }

/* ══════════════════════════════════════════
   IMPACT BAR
══════════════════════════════════════════ */
.aic-impact-bar {
  background: var(--em-orange); border-radius:20px; padding:40px;
  display:grid; grid-template-columns:repeat(3,1fr);
  gap:24px; text-align:center; color:#fff;
}
.aic-impact-bar .num {
  font-family:'Outfit',sans-serif; font-size:42px;
  font-weight:900; line-height:1;
}
.aic-impact-bar .lbl { font-size:14px; margin-top:6px; opacity:.85; }

/* ══════════════════════════════════════════
   SPEAKER CARDS
══════════════════════════════════════════ */
.aic-speaker-card {
  background: #fff; border: 1px solid var(--em-card-border);
  border-radius: 16px; overflow: hidden;
  box-shadow: var(--em-card-shadow); transition: all .4s;
}
.aic-speaker-card:hover { transform:translateY(-6px); box-shadow:0 16px 40px rgba(0,0,0,.1); }
.aic-speaker-img {
  width:100%; aspect-ratio:1;
  background:linear-gradient(135deg,var(--em-orange-soft),var(--em-cream));
  position:relative; display:grid; place-items:center;
}
.aic-speaker-img-placeholder {
  width:72px; height:72px; background:rgba(232,97,26,.1);
  border-radius:50%; display:grid; place-items:center;
  font-size:28px; opacity:.5;
}
.aic-speaker-topic {
  position:absolute; bottom:10px; left:10px; right:10px;
  background:rgba(26,26,26,.88); backdrop-filter:blur(8px);
  border-radius:8px; padding:6px 12px; font-size:10px;
  color:var(--em-orange-lt); font-weight:600; letter-spacing:.5px;
}
.aic-speaker-info { padding:18px; }
.aic-speaker-info h3 {
  font-family:'Outfit',sans-serif; font-weight:700;
  font-size:16px; color:var(--em-black); margin-bottom:3px;
}
.aic-speaker-info .role { font-size:12px; color:var(--em-orange); font-weight:500; }
.aic-speaker-info .org  { font-size:11px; color:var(--em-muted); }

/* ══════════════════════════════════════════
   SPEAKER STAT CARDS
══════════════════════════════════════════ */
.aic-spk-stat {
  background:var(--em-off-white); border:1px solid var(--em-card-border);
  border-radius:14px; padding:28px;
}
.aic-spk-stat .num {
  font-family:'Outfit',sans-serif; font-size:32px;
  font-weight:800; color:var(--em-orange); margin-bottom:6px;
}
.aic-spk-stat h4 {
  font-family:'Outfit',sans-serif; font-weight:700;
  font-size:15px; color:var(--em-black); margin-bottom:6px;
}
.aic-spk-stat p { font-size:13px; color:var(--em-muted); line-height:1.5; }

/* ══════════════════════════════════════════
   WHY CARDS
══════════════════════════════════════════ */
.aic-why-card {
  background: #fff; border:1px solid var(--em-card-border);
  border-radius:16px; padding:28px;
  box-shadow:var(--em-card-shadow); transition:all .3s;
}
.aic-why-card:hover { transform:translateY(-4px); border-color:rgba(232,97,26,.2); }
.aic-why-num {
  width:32px; height:32px; background:var(--em-orange); color:#fff;
  border-radius:50%; display:grid; place-items:center;
  font-family:'Outfit',sans-serif; font-weight:700; font-size:14px; margin-bottom:14px;
}
.aic-why-card h3 {
  font-family:'Outfit',sans-serif; font-weight:700;
  font-size:17px; color:var(--em-black); margin-bottom:8px;
}
.aic-why-card p { font-size:13px; color:var(--em-muted); line-height:1.6; }

/* ══════════════════════════════════════════
   PARTNERSHIP CATEGORY CARDS
══════════════════════════════════════════ */
.aic-partner-cat {
  background:#fff; border:1px solid var(--em-card-border);
  border-radius:16px; padding:28px; box-shadow:var(--em-card-shadow);
}
.aic-partner-cat h3 {
  font-family:'Outfit',sans-serif; font-weight:700;
  font-size:17px; color:var(--em-orange);
  margin-bottom:12px; display:flex; align-items:center; gap:10px;
}
.aic-perk {
  display:flex; align-items:flex-start; gap:8px;
  font-size:14px; color:var(--em-slate); margin-bottom:8px; line-height:1.5;
}
.aic-perk::before {
  content:'✓'; color:var(--em-orange);
  font-weight:700; flex-shrink:0; margin-top:1px;
}

/* ══════════════════════════════════════════
   TIER CARDS
══════════════════════════════════════════ */
.aic-tier-card {
  background:var(--em-off-white); border:1px solid var(--em-card-border);
  border-radius:16px; padding:24px 18px; text-align:center; transition:all .3s;
}
.aic-tier-card.featured {
  background:var(--em-orange); color:#fff;
  border-color:var(--em-orange);
  transform:translateY(-8px);
  box-shadow:0 12px 36px rgba(232,97,26,.25);
}
.aic-tier-card:hover:not(.featured) { border-color:rgba(232,97,26,.3); transform:translateY(-4px); }
.aic-tier-name {
  font-family:'JetBrains Mono',monospace; font-size:9px;
  letter-spacing:1.5px; text-transform:uppercase;
  padding:4px 10px; border-radius:100px; display:inline-block; margin-bottom:14px; font-weight:600;
}
.aic-tier-card:not(.featured) .aic-tier-name { background:rgba(232,97,26,.08); color:var(--em-orange); }
.aic-tier-card.featured .aic-tier-name { background:rgba(255,255,255,.2); color:#fff; }
.aic-tier-card h3 { font-family:'Outfit',sans-serif; font-weight:700; font-size:14px; margin-bottom:16px; }
.aic-tier-perks { display:flex; flex-direction:column; gap:8px; text-align:left; }
.aic-tier-perk { font-size:12px; display:flex; align-items:flex-start; gap:6px; line-height:1.4; }
.aic-tier-card:not(.featured) .aic-tier-perk { color:var(--em-slate); }
.aic-tier-card.featured .aic-tier-perk { color:rgba(255,255,255,.9); }
.aic-ck { flex-shrink:0; font-size:11px; margin-top:1px; }
.aic-tier-card:not(.featured) .aic-ck { color:var(--em-orange); }
.aic-tier-card.featured .aic-ck { color:rgba(255,255,255,.7); }

/* ══════════════════════════════════════════
   RSVP / INVITE PERKS
══════════════════════════════════════════ */
.aic-perk-list { display:flex; flex-direction:column; gap:12px; }
.aic-perk-item {
  display:flex; align-items:center; gap:12px;
  font-size:15px; color:var(--em-slate);
}
.aic-perk-check {
  width:26px; height:26px; background:rgba(232,97,26,.1);
  border-radius:7px; display:grid; place-items:center;
  color:var(--em-orange); font-size:13px; flex-shrink:0; font-weight:700;
}

/* ══════════════════════════════════════════
   SELECTION-BASED NOTICE BOX
══════════════════════════════════════════ */
.aic-notice-box {
  background:rgba(232,97,26,.06);
  border:1px solid rgba(232,97,26,.12);
  border-radius:12px; padding:20px; margin:20px 0 24px;
}
.aic-notice-box .title {
  font-family:'Outfit',sans-serif; font-weight:700;
  font-size:14px; color:var(--em-orange);
  display:flex; align-items:center; gap:8px; margin-bottom:8px;
}
.aic-notice-box p { font-size:13px; color:var(--em-slate); line-height:1.6; }

/* ══════════════════════════════════════════
   AUDIENCE ITEMS
══════════════════════════════════════════ */
.aic-audience-item {
  display:flex; align-items:center; gap:12px;
  background:var(--em-off-white); border:1px solid var(--em-card-border);
  border-radius:12px; padding:14px 18px;
}
.aic-audience-item .emoji { font-size:20px; }
.aic-audience-item h4 {
  font-family:'Outfit',sans-serif; font-weight:700;
  font-size:14px; color:var(--em-black);
}
.aic-audience-item p { font-size:11px; color:var(--em-muted); margin-top:1px; }

/* ══════════════════════════════════════════
   PAST EVENT CARDS
══════════════════════════════════════════ */
.aic-past-card {
  background:#fff; border:1px solid var(--em-card-border);
  border-radius:16px; overflow:hidden;
  box-shadow:var(--em-card-shadow); transition:all .4s;
}
.aic-past-card:hover { transform:translateY(-6px); box-shadow:0 16px 40px rgba(0,0,0,.1); }
.aic-past-img {
  width:100%; aspect-ratio:16/10;
  background:linear-gradient(135deg,var(--em-orange-soft),var(--em-cream));
  position:relative; display:grid; place-items:center;
}
.aic-play-icon {
  width:48px; height:48px; background:rgba(232,97,26,.85);
  border-radius:50%; display:grid; place-items:center;
  color:#fff; font-size:16px; transition:all .3s;
}
.aic-past-card:hover .aic-play-icon { transform:scale(1.1); }
.aic-event-year {
  position:absolute; top:10px; left:10px;
  background:rgba(26,26,26,.8); padding:4px 12px; border-radius:6px;
  font-family:'JetBrains Mono',monospace; font-size:11px; color:var(--em-orange-lt);
}
.aic-past-info { padding:20px; }
.aic-past-info h3 {
  font-family:'Outfit',sans-serif; font-weight:700;
  font-size:17px; margin-bottom:6px; color:var(--em-black);
}
.aic-past-info p { font-size:13px; color:var(--em-muted); line-height:1.5; }

/* ══════════════════════════════════════════
   GALLERY STRIP
══════════════════════════════════════════ */
.aic-gallery { display:grid; grid-template-columns:repeat(6,1fr); gap:8px; }
.aic-gallery-thumb {
  aspect-ratio:1;
  background:linear-gradient(135deg,var(--em-orange-soft),var(--em-cream));
  border-radius:10px; border:1px solid var(--em-card-border);
  display:grid; place-items:center; font-size:22px;
  opacity:.5; transition:all .3s; cursor:pointer;
}
.aic-gallery-thumb:hover { opacity:1; border-color:rgba(232,97,26,.3); transform:scale(1.04); }

/* ══════════════════════════════════════════
   UPCOMING EVENT ITEMS
══════════════════════════════════════════ */
.aic-upcoming-featured {
  background:var(--em-off-white); border:1px solid var(--em-card-border);
  border-radius:20px; overflow:hidden;
  transition:all .4s; box-shadow:var(--em-card-shadow);
}
.aic-upcoming-featured:hover { border-color:rgba(232,97,26,.2); transform:translateY(-4px); }
.aic-upcoming-img {
  width:100%; aspect-ratio:16/9;
  background:linear-gradient(135deg,rgba(232,97,26,.1),var(--em-cream));
  display:grid; place-items:center; position:relative;
}
.aic-upcoming-img .badge {
  position:absolute; top:14px; left:14px;
  background:var(--em-orange); color:#fff;
  padding:5px 12px; border-radius:6px;
  font-size:10px; font-weight:700; letter-spacing:1px; text-transform:uppercase;
}
.aic-upcoming-content { padding:28px; }
.aic-upcoming-content .event-date {
  font-family:'JetBrains Mono',monospace; font-size:12px;
  color:var(--em-orange); margin-bottom:6px; font-weight:600;
}
.aic-upcoming-content h3 {
  font-family:'Outfit',sans-serif; font-weight:700;
  font-size:22px; margin-bottom:10px; color:var(--em-black);
}
.aic-upcoming-content p { font-size:14px; color:var(--em-muted); line-height:1.6; margin-bottom:16px; }
.aic-meta-tags { display:flex; gap:6px; flex-wrap:wrap; }
.aic-meta-tag {
  padding:4px 10px;
  background:rgba(232,97,26,.06); border:1px solid rgba(232,97,26,.1);
  border-radius:100px; font-size:10px; color:var(--em-orange); font-weight:500;
}
.aic-upcoming-item {
  background:var(--em-off-white); border:1px solid var(--em-card-border);
  border-radius:14px; padding:20px; display:flex; gap:16px;
  transition:all .3s; cursor:pointer; margin-bottom:14px;
}
.aic-upcoming-item:hover { border-color:rgba(232,97,26,.2); transform:translateX(4px); }
.aic-date-box {
  width:50px; height:50px; background:rgba(232,97,26,.08);
  border-radius:10px; display:flex; flex-direction:column;
  align-items:center; justify-content:center; flex-shrink:0;
}
.aic-date-box .month {
  font-size:8px; text-transform:uppercase; letter-spacing:1px;
  color:var(--em-orange); font-weight:600;
}
.aic-date-box .day {
  font-family:'Outfit',sans-serif; font-weight:800;
  font-size:20px; line-height:1; color:var(--em-black);
}
.aic-up-info h4 {
  font-family:'Outfit',sans-serif; font-weight:700;
  font-size:15px; color:var(--em-black); margin-bottom:3px;
}
.aic-up-info p { font-size:12px; color:var(--em-muted); }
.aic-up-info .loc { font-size:11px; color:var(--em-orange); margin-top:4px; font-weight:500; }

/* ══════════════════════════════════════════
   TESTIMONIAL CARDS
══════════════════════════════════════════ */
.aic-testi-card {
  background:#fff; border:1px solid var(--em-card-border);
  border-radius:16px; padding:32px;
  box-shadow:var(--em-card-shadow); transition:all .3s;
}
.aic-testi-card:hover { transform:translateY(-4px); border-color:rgba(232,97,26,.2); }
.aic-testi-quote {
  font-size:28px; color:var(--em-orange);
  font-family:'Outfit',sans-serif; font-weight:800;
  line-height:1; margin-bottom:12px;
}
.aic-testi-text {
  font-size:14px; line-height:1.7; color:var(--em-slate);
  margin-bottom:20px; font-style:italic;
}
.aic-testi-author { display:flex; align-items:center; gap:12px; }
.aic-testi-avatar {
  width:44px; height:44px;
  background:linear-gradient(135deg,var(--em-orange),var(--em-orange-lt));
  border-radius:50%; display:grid; place-items:center;
  font-family:'Outfit',sans-serif; font-weight:700; font-size:16px; color:#fff;
}
.aic-testi-info h4 {
  font-family:'Outfit',sans-serif; font-weight:700;
  font-size:14px; color:var(--em-black);
}
.aic-testi-info p { font-size:11px; color:var(--em-muted); }
.aic-stars { display:flex; gap:2px; margin-top:3px; }
.aic-stars span { color:#F59E0B; font-size:11px; }

/* ══════════════════════════════════════════
   CONTACT METHODS
══════════════════════════════════════════ */
.aic-contact-method { display:flex; align-items:flex-start; gap:14px; margin-bottom:18px; }
.aic-contact-icon {
  width:44px; height:44px; background:rgba(232,97,26,.08);
  border-radius:10px; display:grid; place-items:center;
  font-size:18px; flex-shrink:0;
}
.aic-contact-text h4 {
  font-family:'Outfit',sans-serif; font-weight:700;
  font-size:14px; color:var(--em-black); margin-bottom:3px;
}
.aic-contact-text p { font-size:13px; color:var(--em-muted); line-height:1.5; }
.aic-contact-text a { color:var(--em-muted); text-decoration:none; }
.aic-contact-text a:hover { color:var(--em-orange); }

/* ══════════════════════════════════════════
   WPFORMS OVERRIDES — match theme style
══════════════════════════════════════════ */
.wpforms-container .wpforms-form .wpforms-field input,
.wpforms-container .wpforms-form .wpforms-field textarea,
.wpforms-container .wpforms-form .wpforms-field select {
  width: 100% !important;
  padding: 12px 14px !important;
  background: var(--em-off-white) !important;
  border: 1px solid var(--em-card-border) !important;
  border-radius: 8px !important;
  color: var(--em-black) !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: 14px !important;
  outline: none !important;
  transition: border-color .3s !important;
  box-shadow: none !important;
}
.wpforms-container .wpforms-form .wpforms-field input:focus,
.wpforms-container .wpforms-form .wpforms-field textarea:focus,
.wpforms-container .wpforms-form .wpforms-field select:focus {
  border-color: var(--em-orange) !important;
}
.wpforms-container .wpforms-form .wpforms-field label {
  font-size: 11px !important;
  font-weight: 600 !important;
  letter-spacing: .5px !important;
  text-transform: uppercase !important;
  color: var(--em-slate) !important;
  font-family: 'DM Sans', sans-serif !important;
}
.wpforms-container .wpforms-form button[type=submit],
.wpforms-container .wpforms-form input[type=submit] {
  background: var(--em-orange) !important;
  color: #fff !important;
  border: none !important;
  border-radius: 10px !important;
  padding: 14px 32px !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  cursor: pointer !important;
  transition: all .3s !important;
  width: 100% !important;
}
.wpforms-container .wpforms-form button[type=submit]:hover,
.wpforms-container .wpforms-form input[type=submit]:hover {
  background: var(--em-orange-lt) !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 24px rgba(232,97,26,.25) !important;
}
.wpforms-container .wpforms-form .wpforms-submit-container {
  padding: 0 !important;
}
.wpforms-container { background: #fff; border: 1px solid var(--em-card-border); border-radius: 20px; padding: 36px !important; box-shadow: var(--em-card-shadow); }
.wpforms-title { font-family: 'Outfit', sans-serif !important; font-weight: 700 !important; font-size: 20px !important; color: var(--em-black) !important; margin-bottom: 6px !important; }
.wpforms-description { font-size: 13px !important; color: var(--em-muted) !important; margin-bottom: 24px !important; }

/* ══════════════════════════════════════════
   FOOTER
══════════════════════════════════════════ */
.aic-footer {
  background: var(--em-black); color: #fff;
  padding: 52px 0 24px;
}
.aic-footer-grid {
  display: grid; grid-template-columns: 1.5fr repeat(3,1fr);
  gap: 44px; margin-bottom: 40px;
}
.aic-footer-brand p {
  font-size:13px; color:rgba(255,255,255,.5);
  line-height:1.7; max-width:260px; margin-top:14px;
}
.aic-footer-col h4 {
  font-family:'Outfit',sans-serif; font-weight:700;
  font-size:13px; margin-bottom:16px; color:#fff;
}
.aic-footer-col ul { list-style:none; display:flex; flex-direction:column; gap:8px; }
.aic-footer-col a {
  font-size:12px; color:rgba(255,255,255,.45);
  text-decoration:none; transition:color .3s;
}
.aic-footer-col a:hover { color:var(--em-orange-lt); }
.aic-footer-bottom {
  display:flex; justify-content:space-between; align-items:center;
  padding-top:20px; border-top:1px solid rgba(255,255,255,.08);
  font-size:11px; color:rgba(255,255,255,.35);
}

/* ══════════════════════════════════════════
   LOGO PLACEHOLDERS
══════════════════════════════════════════ */
.aic-logo-placeholder {
  width:130px; height:52px; background:var(--em-off-white);
  border:1px dashed var(--em-card-border); border-radius:10px;
  display:inline-grid; place-items:center;
  font-size:11px; color:var(--em-muted);
  font-family:'JetBrains Mono',monospace; transition:all .3s;
}
.aic-logo-placeholder:hover { border-color:rgba(232,97,26,.3); }

/* ══════════════════════════════════════════
   MARKET CTA BOX
══════════════════════════════════════════ */
.aic-market-cta {
  text-align:center; font-size:15px; color:var(--em-slate);
  padding:24px; background:rgba(232,97,26,.05);
  border-radius:12px; border:1px solid rgba(232,97,26,.1); line-height:1.6;
}

/* ══════════════════════════════════════════
   RESPONSIVE
══════════════════════════════════════════ */
@media (max-width: 1024px) {
  .aic-footer-grid { grid-template-columns: 1fr 1fr; }
  .aic-nav-links { display:none; }
  .aic-hamburger { display:flex; }
  .aic-gallery { grid-template-columns:repeat(3,1fr); }
  .aic-impact-bar { grid-template-columns:1fr; }
}
@media (max-width: 768px) {
  .aic-footer-grid { grid-template-columns:1fr; }
  .aic-footer-bottom { flex-direction:column; gap:10px; text-align:center; }
  .aic-gallery { grid-template-columns:repeat(2,1fr); }
}

/* ══════════════════════════════════════════
   MOBILE NAV OPEN STATE
══════════════════════════════════════════ */
.aic-nav-links.open {
  display:flex; flex-direction:column;
  position:absolute; top:100%; left:0; right:0;
  background:rgba(255,255,255,.98); backdrop-filter:blur(20px);
  border-bottom:1px solid var(--em-card-border);
  padding:16px clamp(20px,4vw,40px) 20px;
  gap:14px; z-index:9998;
}
