#floating-icon a.bg-orange { background: var(--uni-purple) !important; }

/* ── Page Hero ── */
#page-hero {
    background: linear-gradient(140deg, #5b1fd4 0%, #8E45F5 100%);
    padding: 145px 0 80px;
    position: relative;
    overflow: hidden;
}
#page-hero::before {
    content: '';
    position: absolute; inset: 0;
    background: url('../../images/exhibitor-slider/pexels-streetwindy-4058668.jpg') center/cover no-repeat;
    opacity: .12;
}
#page-hero .inner { position: relative; z-index: 1; }

/* ── Section helpers ── */
.section-label { display: inline-block; color: var(--uni-purple); font-weight: 700; font-size: .85rem; letter-spacing: .13em; text-transform: uppercase; margin-bottom: 14px; }
.section-title { font-size: clamp(1.8rem, 3.2vw, 2.7rem); font-weight: 900; color: #0d0028; font-family: var(--font-main); line-height: 1.2; margin-bottom: 16px; }
.section-divider { width: 48px; height: 4px; background: var(--uni-purple); border-radius: 2px; margin: 0 0 28px; }
.section-divider-center { margin: 0 auto 28px; }

/* ── Who We Are ── */
#section-who { padding: 88px 0; background: #fff; }
.who-img { border-radius: 20px; overflow: hidden; position: relative; }
.who-img img { width: 100%; height: 420px; object-fit: cover; display: block; border-radius: 20px; }
.who-img-badge { position: absolute; bottom: 24px; left: 24px; background: var(--uni-purple); color: #fff; border-radius: 14px; padding: 16px 22px; }
.who-img-badge strong { font-size: 2rem; font-weight: 900; font-family: var(--font-main); display: block; line-height: 1; }
.who-img-badge span { font-size: .88rem; opacity: .85; }
.who-text { font-size: 1.06rem; color: #555; line-height: 1.8; margin-bottom: 16px; }

/* ── Why Join (3-col icon cards) ── */
#section-why { padding: 88px 0; background: #f9f7fe; }
.why-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 32px; margin-top: 52px; }
@media(max-width: 991px) { .why-grid { grid-template-columns: repeat(2, 1fr); } }
@media(max-width: 600px) { .why-grid { grid-template-columns: 1fr; } }
.why-card { text-align: center; padding: 36px 28px; border-radius: 16px; background: #fff; border: 1.5px solid #ede8fd; transition: border-color .2s, box-shadow .2s, transform .2s; }
.why-card:hover { border-color: var(--uni-purple); box-shadow: 0 8px 32px rgba(142,69,245,.12); transform: translateY(-4px); }
.why-icon-wrap { width: 72px; height: 72px; border-radius: 50%; background: rgba(142,69,245,.09); color: var(--uni-purple); font-size: 1.7rem; display: flex; align-items: center; justify-content: center; margin: 0 auto 20px; transition: background .2s; }
.why-card:hover .why-icon-wrap { background: var(--uni-purple); color: #fff; }
.why-card h4 { font-size: 1.08rem; font-weight: 800; color: #0d0028; font-family: var(--font-main); margin-bottom: 12px; }
.why-card p { font-size: .95rem; color: #888; line-height: 1.7; margin: 0; }

/* ── Stats ── */
#section-stats { background: var(--uni-purple); position: relative; overflow: hidden; }
#section-stats::before { content: ''; position: absolute; inset: 0; background: url('../../images/exhibitor-slider/pexels-streetwindy-4058668.jpg') center/cover; opacity: .08; }
.stats-inner { padding: 72px 0; position: relative; z-index: 1; }
.stat-item { text-align: center; padding: 20px; }
.stat-number { font-size: clamp(2.4rem, 4vw, 3.6rem); font-weight: 900; color: var(--uni-yellow); font-family: var(--font-main); line-height: 1; margin-bottom: 8px; }
.stat-label { font-size: 1rem; color: rgba(255,255,255,.8); font-weight: 600; }

/* ── Partner Universities ── */
#section-partners { padding: 88px 0; background: #fff; }
.partners-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; margin-top: 48px; }
@media(max-width: 991px) { .partners-grid { grid-template-columns: repeat(3, 1fr); } }
@media(max-width: 600px) { .partners-grid { grid-template-columns: repeat(2, 1fr); } }
.partner-card { border: 1.5px solid #ede8fd; border-radius: 16px; padding: 28px 24px; text-align: center; transition: border-color .2s, box-shadow .2s, transform .2s; display: flex; flex-direction: column; align-items: center; }
.partner-card:hover { border-color: var(--uni-purple); box-shadow: 0 8px 28px rgba(142,69,245,.12); transform: translateY(-4px); }
.partner-logo-wrap { height: 64px; display: flex; align-items: center; justify-content: center; margin-bottom: 16px; }
.partner-logo-wrap img { max-height: 64px; max-width: 140px; width: auto; object-fit: contain; filter: grayscale(30%); transition: filter .2s; }
.partner-card:hover .partner-logo-wrap img { filter: grayscale(0%); }
.partner-name { font-size: .97rem; font-weight: 800; color: #0d0028; font-family: var(--font-main); margin-bottom: 8px; line-height: 1.3; }
.partner-country { display: flex; align-items: center; justify-content: center; gap: 6px; font-size: .82rem; color: #888; }
.partner-country img { width: 20px; height: 14px; object-fit: cover; border-radius: 2px; }

/* Testimonial */
#section-testimonials { padding: 88px 0; background: #f9f7fe; }
.testi-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; margin-top: 48px; }
@media(max-width: 991px) { .testi-grid { grid-template-columns: repeat(2, 1fr); } }
@media(max-width: 600px) { .testi-grid { grid-template-columns: 1fr; } }
.testi-card { background: #fff; border-radius: 18px; padding: 32px 28px; box-shadow: 0 2px 18px rgba(142,69,245,.07); border-top: 4px solid var(--uni-purple); }
.testi-quote { font-size: 1rem; color: #555; line-height: 1.8; margin-bottom: 22px; font-style: italic; }
.testi-author { display: flex; align-items: center; gap: 12px; }
.testi-avatar { width: 46px; height: 46px; border-radius: 50%; background: var(--uni-purple); color: #fff; font-size: 1.15rem; font-weight: 800; font-family: var(--font-main); display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
.testi-info strong { display: block; font-size: .97rem; font-weight: 800; color: #0d0028; font-family: var(--font-main); }
.testi-info span { font-size: .83rem; color: #888; }

/* ── CTA ── */
#section-cta { padding: 88px 0; background: var(--exhibitor-bg); }
.cta-box { background: var(--uni-purple); border-radius: 24px; padding: 60px 48px; text-align: center; position: relative; overflow: hidden; }
.cta-box::before { content: ''; position: absolute; inset: 0; background: url('../../images/exhibitor-slider/pexels-streetwindy-4058668.jpg') center/cover; opacity: .07; }
.cta-box .inner { position: relative; z-index: 1; }
.cta-box h2 { font-size: clamp(1.8rem, 3vw, 2.6rem); font-weight: 900; color: #fff; font-family: var(--font-main); margin-bottom: 16px; }
.cta-box p { color: rgba(255,255,255,.8); font-size: 1.08rem; max-width: 520px; margin: 0 auto 32px; line-height: 1.75; }
.btn-cta-primary { display: inline-block; background: var(--uni-yellow); color: var(--uni-purple) !important; padding: 15px 44px; border-radius: 10px; font-weight: 800; font-size: 1.05rem; font-family: var(--font-main); text-decoration: none !important; transition: opacity .2s; margin: 0 8px 10px; }
.btn-cta-primary:hover { opacity: .88; }
.btn-cta-outline { display: inline-block; border: 2px solid rgba(255,255,255,.5); color: #fff !important; padding: 13px 36px; border-radius: 10px; font-weight: 700; font-size: 1.05rem; font-family: var(--font-main); text-decoration: none !important; transition: border-color .2s, background .2s; margin: 0 8px 10px; }
.btn-cta-outline:hover { border-color: #fff; background: rgba(255,255,255,.08); }

/* ── Who-right column ── */
.who-right { padding-left: 48px; }

/* ── Responsive ── */
@media (max-width: 991px) {
    #page-hero { padding: 110px 0 56px; }
    .who-right { padding-left: 24px; }
    .why-grid { margin-top: 36px; }
    .partners-grid { gap: 16px; }
    .testi-grid { gap: 16px; }
}

@media (max-width: 767px) {
    #page-hero { padding: 90px 0 48px !important; }
    .who-right { padding-left: 0 !important; margin-top: 32px; }
    #section-who,
    #section-why,
    #section-partners,
    #section-testimonials,
    #section-cta      { padding: 56px 0; }
    .stats-inner      { padding: 48px 0; }
    .who-img img      { height: 280px; }
    .cta-box          { padding: 40px 24px; }
    .btn-cta-primary,
    .btn-cta-outline  { display: block; text-align: center; margin: 0 0 12px; }
}

@media (max-width: 480px) {
    #page-hero { padding: 80px 0 36px !important; }
    #section-who,
    #section-why,
    #section-partners,
    #section-testimonials,
    #section-cta      { padding: 40px 0; }
    .stats-inner      { padding: 36px 0; }
    .why-grid,
    .testi-grid       { gap: 12px; }
    .cta-box          { padding: 28px 16px; }
}
