/* ─── Reset & Base ─── */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{--red:#B00300;--red-dark:#8A0200;--red-light:#CC3330;--red-bg:#FFF5F5;--white:#FFFFFF;--gray-50:#FAFAFA;--gray-100:#F0F0F1;--gray-200:#E7E7E8;--gray-300:#C4C4C6;--gray-400:#9C9CA0;--gray-500:#737378;--gray-600:#525257;--gray-700:#404045;--gray-800:#26262A;--gray-900:#17171A;--radius:12px;--radius-sm:8px;--shadow:0 1px 3px rgba(0,0,0,.06),0 1px 2px rgba(0,0,0,.04);--shadow-md:0 4px 6px -1px rgba(0,0,0,.08),0 2px 4px -2px rgba(0,0,0,.06);--shadow-lg:0 10px 15px -3px rgba(0,0,0,.08),0 4px 6px -4px rgba(0,0,0,.05)}
html{scroll-behavior:smooth}
body{font-family:'Noto Sans SC','Inter',-apple-system,sans-serif;background:var(--white);color:var(--gray-900);line-height:1.6}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto;display:block}
.navbar{position:sticky;top:0;z-index:100;background:var(--white);border-bottom:1px solid var(--gray-200)}
.nav-inner{max-width:1200px;margin:0 auto;padding:0 24px;display:flex;align-items:center;justify-content:space-between;height:68px}
.nav-logo{display:flex;align-items:center;gap:12px}.nav-logo img{width:40px;height:40px;border-radius:50%}.nav-logo span{font-weight:700;font-size:18px;color:var(--gray-900)}.nav-logo span .red{color:var(--red)}
.nav-links{display:flex;gap:32px;list-style:none}.nav-links a{font-size:14px;font-weight:500;color:var(--gray-500);transition:color .2s;position:relative}.nav-links a:hover{color:var(--red)}.nav-links a::after{content:'';position:absolute;bottom:-22px;left:0;right:0;height:2px;background:var(--red);transform:scaleX(0);transition:transform .2s}.nav-links a:hover::after{transform:scaleX(1)}.nav-links .nav-btn{padding:6px 18px;background:var(--red);color:#fff!important;border-radius:20px;font-weight:600;font-size:13px}.nav-links .nav-btn::after{display:none}.nav-links .nav-btn:hover{background:var(--red-dark)}
.hero{background:linear-gradient(135deg,var(--red)0%,var(--red-dark)100%);color:var(--white);padding:88px 24px 72px;text-align:center;position:relative;overflow:hidden}.hero::before{content:'';position:absolute;top:-60%;left:-40%;width:180%;height:180%;background:radial-gradient(circle at 30% 50%,rgba(255,255,255,.06)0%,transparent 50%);pointer-events:none}.hero-inner,.hero-main,.hero-carousel{position:relative;max-width:800px;margin:0 auto}.hero h1{font-size:44px;font-weight:800;letter-spacing:-1px;margin-bottom:10px}.hero-subtitle{font-size:17px;font-weight:400;opacity:.9;margin-bottom:14px;letter-spacing:6px}.hero-desc{font-size:15px;opacity:.8;max-width:560px;margin:0 auto 40px;line-height:1.9}.hero-stats,.hero-numbers{display:flex;gap:40px;justify-content:center;flex-wrap:wrap}.hero-stats .stat,.hero-numbers .stat{text-align:center}.hero-stats .stat strong{display:block;font-size:34px;font-weight:800}.hero-stats .stat span{font-size:13px;opacity:.7}.hero-slide{animation:fadeIn .6s ease}@keyframes fadeIn{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.hero-dots{display:flex;gap:8px;justify-content:center;margin-top:24px}.hero-dot{width:10px;height:10px;border-radius:50%;background:rgba(255,255,255,.3);border:none;cursor:pointer;transition:background .3s}.hero-dot.active{background:#fff;transform:scale(1.2)}
.section{padding:80px 24px}.section-inner{max-width:1100px;margin:0 auto}.section-alt{background:var(--gray-50)}.section-title{font-size:30px;font-weight:700;text-align:center;color:var(--gray-900);margin-bottom:10px}.section-title:after{content:'';display:block;width:36px;height:3px;background:var(--red);border-radius:2px;margin:10px auto 6px}.section-desc{font-size:15px;color:var(--gray-400);text-align:center;margin-bottom:48px;line-height:1.7}.subsection-title{font-size:22px;font-weight:700;text-align:center;color:var(--gray-800);margin-bottom:30px}
.about-intro{max-width:780px;margin:0 auto 48px;text-align:center;font-size:15px;color:var(--gray-500);line-height:2}.about-intro strong{color:var(--red)}.mission-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-bottom:56px}.mission-card{background:var(--white);border:1px solid var(--gray-200);border-radius:var(--radius);padding:30px 24px;transition:all .25s}.mission-card:hover{box-shadow:var(--shadow-md);transform:translateY(-3px)}.mission-icon{font-size:34px;margin-bottom:14px;display:block}.mission-card h4{font-size:19px;font-weight:600;margin-bottom:3px}.mission-card .sub{font-size:13px;color:var(--gray-400);margin-bottom:14px}.mission-card ul{list-style:none;font-size:14px;color:var(--gray-500);line-height:1.9}.mission-card ul li::before{content:'• ';color:var(--red-light);font-weight:700}
.modules-section{padding:40px 0}.modules-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;max-width:960px;margin:0 auto}.module-card{display:block;background:var(--white);border:1px solid var(--gray-200);border-radius:var(--radius);padding:32px 28px;text-align:center;transition:all .25s}.module-card:hover{box-shadow:var(--shadow-md);transform:translateY(-4px);border-color:var(--red-light)}.mc-icon{font-size:36px;display:block;margin-bottom:14px}.module-card h3{font-size:18px;font-weight:600;margin-bottom:8px;color:var(--gray-800)}.module-card p{font-size:14px;color:var(--gray-500);line-height:1.7}
.timeline-wrap{overflow-x:auto;padding-bottom:8px}.h-timeline{display:flex;gap:12px;min-width:max-content}.ht-item{width:190px;background:var(--white);border:1px solid var(--gray-200);border-radius:var(--radius-sm);padding:18px 16px;border-left:3px solid var(--red);flex-shrink:0}.ht-year{font-size:12px;font-weight:700;color:var(--red);margin-bottom:6px}.ht-text{font-size:14px;color:var(--gray-500);line-height:1.5}.ht-dot{display:none}
.biz-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.biz-card{background:var(--white);border:1px solid var(--gray-200);border-radius:var(--radius);padding:28px 24px;transition:all .25s}.biz-card:hover{box-shadow:var(--shadow-md);transform:translateY(-3px)}.biz-icon{font-size:30px;margin-bottom:14px;display:block}.biz-card h3{font-size:17px;font-weight:600;margin-bottom:8px;color:var(--gray-800)}.biz-body{font-size:14px;color:var(--gray-500);line-height:1.7}
.adv-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;margin-bottom:48px}.adv-card{background:var(--white);border:1px solid var(--gray-200);border-radius:var(--radius);padding:24px 16px;text-align:center;transition:all .25s}.adv-card:hover{box-shadow:var(--shadow-md);transform:translateY(-3px)}.adv-card .icon{font-size:30px;display:block;margin-bottom:10px}.adv-card h3{font-size:15px;font-weight:600;margin-bottom:8px;color:var(--gray-800)}.adv-card p{font-size:13px;color:var(--gray-500);line-height:1.6}.honor-list{list-style:none;max-width:680px;margin:0 auto}.honor-list li{padding:12px 20px;background:var(--red-bg);border-left:3px solid var(--red);border-radius:0 var(--radius-sm) var(--radius-sm) 0;margin-bottom:10px;font-size:14px;color:var(--gray-600)}
.lecturer-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.lecturer-card{background:var(--white);border:1px solid var(--gray-200);border-radius:var(--radius);padding:28px 24px;text-align:center;transition:all .25s}.lecturer-card:hover{box-shadow:var(--shadow-md);transform:translateY(-3px)}.lecturer-card .avatar{width:72px;height:72px;border-radius:50%;background:var(--red);color:#fff;display:flex;align-items:center;justify-content:center;font-size:22px;font-weight:700;margin:0 auto 14px}.lecturer-card h4{font-size:16px;font-weight:600;margin-bottom:2px}.lecturer-card .title{font-size:13px;color:var(--red);margin-bottom:10px}.lecturer-card p{font-size:13px;color:var(--gray-500);line-height:1.6}.lecturer-card .tag{display:inline-block;padding:2px 12px;border-radius:12px;font-size:11px;background:var(--red-bg);color:var(--red);font-weight:600;margin-top:10px}
.partners-scroll{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;max-width:800px;margin:0 auto}.partner-tag{padding:8px 20px;background:var(--white);border:1px solid var(--gray-200);border-radius:20px;font-size:13px;color:var(--gray-500)}.partner-tag:hover{border-color:var(--red-light);color:var(--red);background:var(--red-bg)}
.faq-list{max-width:740px;margin:0 auto}.faq-item{background:var(--white);border:1px solid var(--gray-200);border-radius:var(--radius-sm);margin-bottom:12px;overflow:hidden}.faq-q{padding:16px 20px;font-size:15px;font-weight:600;color:var(--gray-700);cursor:pointer;display:flex;justify-content:space-between;align-items:center}.faq-q:hover{background:var(--gray-50)}.faq-q .arrow{font-size:12px;color:var(--gray-400);transition:transform .3s}.faq-item.open .faq-q .arrow{transform:rotate(180deg)}.faq-a{padding:0 20px 16px;font-size:14px;color:var(--gray-500);line-height:1.8;display:none}.faq-item.open .faq-a{display:block}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;max-width:800px;margin:0 auto}.contact-item{display:flex;align-items:center;gap:10px;padding:10px 0;font-size:14px;color:var(--gray-500)}.contact-icon{font-size:18px;width:24px;text-align:center;flex-shrink:0}.contact-info{flex:1}.social-links{display:grid;grid-template-columns:1fr 1fr;gap:12px}.social-item{padding:12px 16px;background:var(--gray-50);border:1px solid var(--gray-200);border-radius:var(--radius-sm);font-size:13px;color:var(--gray-500)}.social-item:hover{border-color:var(--red-light);background:var(--red-bg);color:var(--red)}
.footer{background:var(--gray-900);color:var(--gray-400);text-align:center;padding:36px 24px 32px}.footer-inner{max-width:800px;margin:0 auto}.footer p{font-size:13px;margin-bottom:5px}.footer a{color:var(--gray-300)}.footer a:hover{color:#fff}.footer-tagline{color:var(--red-light);font-weight:500;letter-spacing:3px;font-size:14px;margin-top:10px}
.schema-org{display:none}
@media(max-width:900px){.mission-grid,.biz-grid,.modules-grid,.lecturer-grid{grid-template-columns:1fr}.adv-grid{grid-template-columns:repeat(3,1fr)}.contact-grid{grid-template-columns:1fr}}
@media(max-width:640px){.hero h1{font-size:30px}.hero-stats,.hero-numbers{gap:16px}.hero-stats .stat strong{font-size:26px}.hero-stats .stat span{font-size:12px}.nav-links{display:none}.biz-grid,.modules-grid{grid-template-columns:1fr}.adv-grid{grid-template-columns:repeat(2,1fr)}.lecturer-grid{grid-template-columns:1fr}.contact-grid{grid-template-columns:1fr}.social-links{grid-template-columns:1fr}.section-title{font-size:24px}.section{padding:56px 20px}}

/* ─── Team Grid (from template) ─── */
.team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.team-card{background:var(--white);border:1px solid var(--gray-200);border-radius:var(--radius);padding:24px 20px;text-align:center;transition:all .25s}
.team-card:hover{box-shadow:var(--shadow-md);transform:translateY(-3px)}
.team-card h3{font-size:16px;font-weight:600;margin-bottom:4px;color:var(--gray-800)}
.team-title{font-size:13px;color:var(--red);margin-bottom:8px}
.team-desc{font-size:13px;color:var(--gray-500);line-height:1.6}

/* ─── Lecturer Grid ─── */
.lecturer-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.lecturer-card{background:var(--white);border:1px solid var(--gray-200);border-radius:var(--radius);padding:20px;text-align:center;transition:all .25s}
.lecturer-card:hover{box-shadow:var(--shadow-md);transform:translateY(-3px)}
.lecturer-card h4{font-size:15px;font-weight:600;margin-bottom:6px;color:var(--gray-800)}
.lecturer-card p{font-size:13px;color:var(--gray-500);line-height:1.6}

/* ─── FAQ ─── */
.faq-list{max-width:740px;margin:0 auto}
.faq-item{background:var(--white);border:1px solid var(--gray-200);border-radius:var(--radius-sm);margin-bottom:12px;overflow:hidden}
.faq-q{padding:16px 20px;font-size:15px;font-weight:600;color:var(--gray-700);cursor:pointer;display:flex;justify-content:space-between;align-items:center}
.faq-q:hover{background:var(--gray-50)}
.faq-q .arrow{font-size:12px;color:var(--gray-400);transition:transform .3s}
.faq-item.open .faq-q .arrow{transform:rotate(180deg)}
.faq-a{padding:0 20px 16px;font-size:14px;color:var(--gray-500);line-height:1.8;display:none}
.faq-item.open .faq-a{display:block}

@media(max-width:900px){.team-grid,.lecturer-grid{grid-template-columns:1fr}}
@media(max-width:640px){.team-grid,.lecturer-grid{grid-template-columns:1fr}}

/* ─── Hero Carousel ─── */
.hero-carousel{position:relative;max-width:900px;margin:0 auto;overflow:hidden}
.carousel-track{display:flex;transition:transform .5s ease}
.carousel-slide{min-width:100%;display:flex;align-items:center;justify-content:space-between;gap:40px;padding:0 10px}
.hero-left{flex:1;text-align:left}
.hero-tag{display:inline-block;font-size:11px;font-weight:700;letter-spacing:2px;opacity:.7;margin-bottom:8px;text-transform:uppercase}
.hero-left h1{font-size:32px;font-weight:800;letter-spacing:-.5px;margin-bottom:8px;text-align:left}
.hero-sub{font-size:15px;opacity:.8;line-height:1.6;text-align:left}
.hero-right{flex:0 0 320px}
.hero-numbers{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.hero-numbers .stat{text-align:center;padding:12px 8px;background:rgba(255,255,255,.08);border-radius:10px}
.hero-numbers .stat strong{display:block;font-size:28px;font-weight:800}
.hero-numbers .stat span{font-size:12px;opacity:.7;display:block;margin-top:2px}
.hero-dots{display:flex;gap:8px;justify-content:center;margin-top:32px}
.hero-dot{width:10px;height:10px;border-radius:50%;background:rgba(255,255,255,.3);border:none;cursor:pointer;transition:background .3s;padding:0}
.hero-dot.active{background:#fff;transform:scale(1.2)}

@media(max-width:768px){
  .carousel-slide{flex-direction:column;gap:24px}
  .hero-left{text-align:center}
  .hero-left h1{text-align:center;font-size:26px}
  .hero-sub{text-align:center}
  .hero-right{flex:0 0 auto;width:100%}
  .hero-numbers{gap:12px}
  .hero-numbers .stat strong{font-size:22px}
  .hero{padding:60px 20px 48px}
}
@media(max-width:640px){
  .hero h1{font-size:26px!important}
  .hero-left h1{font-size:24px}
  .hero-numbers .stat strong{font-size:20px}
}
