*, *::before, *::after { margin: 0; padding: 0; border: 0; outline: 0; box-sizing: border-box; }
:root {
    --primary: #1a3a5c;
    --primary-light: #2a5a8c;
    --primary-dark: #0f2440;
    --secondary: #d4a843;
    --secondary-light: #e5c06a;
    --bg-light: #f8f9fa;
    --text-dark: #333333;
    --text-secondary: #666666;
    --text-light: #999999;
    --border-color: #e9ecef;
    --white: #ffffff;
    --shadow: 0 10px 30px rgba(26, 58, 92, 0.15);
    --shadow-hover: 0 15px 40px rgba(26, 58, 92, 0.25);
}
html { scroll-behavior: smooth; }
body { font-family: 'Quicksand', sans-serif; font-size: 15px; color: var(--text-dark); line-height: 26px; font-weight: 400; background: var(--white); background-size: cover; background-repeat: no-repeat; background-position: center top; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
a { text-decoration: none; transition: all 500ms ease; }
a:hover { text-decoration: none; }
input, button, select, textarea { font-family: 'Quicksand', sans-serif; }
button:focus, input:focus, textarea:focus { outline: 0; box-shadow: none; }
ul, li { list-style: none; padding: 0; margin: 0; }
h1, h2, h3, h4, h5, h6 { font-family: 'Nunito', sans-serif; font-weight: 700; color: var(--primary); margin: 0; }
p { color: var(--text-secondary); margin: 0; }
img { display: inline-block; max-width: 100%; height: auto; }
/* Container & Grid */
.large-container { max-width: 1500px; padding: 0 15px; margin: 0 auto; }
.auto-container { max-width: 1200px; padding: 0 15px; margin: 0 auto; }
.small-container { max-width: 680px; margin: 0 auto; }
.boxed_wrapper { position: relative; margin: 0 auto; overflow: hidden; width: 100%; min-width: 300px; }
/* Bootstrap Grid Compatibility */
.container, .container-fluid { width: 100%; padding-right: 15px; padding-left: 15px; margin-right: auto; margin-left: auto; }
.row { display: flex; flex-wrap: wrap; margin-right: -15px; margin-left: -15px; }
.no-gutters { margin-right: 0; margin-left: 0; }
.no-gutters > .col, .no-gutters > [class*="col-"] { padding-right: 0; padding-left: 0; }
.col-1, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-10, .col-11, .col-12, .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12, .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12, .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12, .col-xl-1, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-10, .col-xl-11, .col-xl-12 { position: relative; width: 100%; padding-right: 15px; padding-left: 15px; }
.col-1 { flex: 0 0 8.333333%; max-width: 8.333333%; }
.col-2 { flex: 0 0 16.666667%; max-width: 16.666667%; }
.col-3 { flex: 0 0 25%; max-width: 25%; }
.col-4 { flex: 0 0 33.333333%; max-width: 33.333333%; }
.col-5 { flex: 0 0 41.666667%; max-width: 41.666667%; }
.col-6 { flex: 0 0 50%; max-width: 50%; }
.col-7 { flex: 0 0 58.333333%; max-width: 58.333333%; }
.col-8 { flex: 0 0 66.666667%; max-width: 66.666667%; }
.col-9 { flex: 0 0 75%; max-width: 75%; }
.col-10 { flex: 0 0 83.333333%; max-width: 83.333333%; }
.col-11 { flex: 0 0 91.666667%; max-width: 91.666667%; }
.col-12 { flex: 0 0 100%; max-width: 100%; }
@media (min-width: 576px) {
    .col-sm { flex-basis: 0; flex-grow: 1; max-width: 100%; }
    .col-sm-1 { flex: 0 0 8.333333%; max-width: 8.333333%; }
    .col-sm-2 { flex: 0 0 16.666667%; max-width: 16.666667%; }
    .col-sm-3 { flex: 0 0 25%; max-width: 25%; }
    .col-sm-4 { flex: 0 0 33.333333%; max-width: 33.333333%; }
    .col-sm-5 { flex: 0 0 41.666667%; max-width: 41.666667%; }
    .col-sm-6 { flex: 0 0 50%; max-width: 50%; }
    .col-sm-7 { flex: 0 0 58.333333%; max-width: 58.333333%; }
    .col-sm-8 { flex: 0 0 66.666667%; max-width: 66.666667%; }
    .col-sm-9 { flex: 0 0 75%; max-width: 75%; }
    .col-sm-10 { flex: 0 0 83.333333%; max-width: 83.333333%; }
    .col-sm-11 { flex: 0 0 91.666667%; max-width: 91.666667%; }
    .col-sm-12 { flex: 0 0 100%; max-width: 100%; }
}
@media (min-width: 768px) {
    .container { max-width: 720px; }
    .col-md { flex-basis: 0; flex-grow: 1; max-width: 100%; }
    .col-md-1 { flex: 0 0 8.333333%; max-width: 8.333333%; }
    .col-md-2 { flex: 0 0 16.666667%; max-width: 16.666667%; }
    .col-md-3 { flex: 0 0 25%; max-width: 25%; }
    .col-md-4 { flex: 0 0 33.333333%; max-width: 33.333333%; }
    .col-md-5 { flex: 0 0 41.666667%; max-width: 41.666667%; }
    .col-md-6 { flex: 0 0 50%; max-width: 50%; }
    .col-md-7 { flex: 0 0 58.333333%; max-width: 58.333333%; }
    .col-md-8 { flex: 0 0 66.666667%; max-width: 66.666667%; }
    .col-md-9 { flex: 0 0 75%; max-width: 75%; }
    .col-md-10 { flex: 0 0 83.333333%; max-width: 83.333333%; }
    .col-md-11 { flex: 0 0 91.666667%; max-width: 91.666667%; }
    .col-md-12 { flex: 0 0 100%; max-width: 100%; }
}
@media (min-width: 992px) {
    .container { max-width: 960px; }
    .col-lg { flex-basis: 0; flex-grow: 1; max-width: 100%; }
    .col-lg-1 { flex: 0 0 8.333333%; max-width: 8.333333%; }
    .col-lg-2 { flex: 0 0 16.666667%; max-width: 16.666667%; }
    .col-lg-3 { flex: 0 0 25%; max-width: 25%; }
    .col-lg-4 { flex: 0 0 33.333333%; max-width: 33.333333%; }
    .col-lg-5 { flex: 0 0 41.666667%; max-width: 41.666667%; }
    .col-lg-6 { flex: 0 0 50%; max-width: 50%; }
    .col-lg-7 { flex: 0 0 58.333333%; max-width: 58.333333%; }
    .col-lg-8 { flex: 0 0 66.666667%; max-width: 66.666667%; }
    .col-lg-9 { flex: 0 0 75%; max-width: 75%; }
    .col-lg-10 { flex: 0 0 83.333333%; max-width: 83.333333%; }
    .col-lg-11 { flex: 0 0 91.666667%; max-width: 91.666667%; }
    .col-lg-12 { flex: 0 0 100%; max-width: 100%; }
}
@media (min-width: 1200px) {
    .container { max-width: 1140px; }
    .col-xl { flex-basis: 0; flex-grow: 1; max-width: 100%; }
    .col-xl-1 { flex: 0 0 8.333333%; max-width: 8.333333%; }
    .col-xl-2 { flex: 0 0 16.666667%; max-width: 16.666667%; }
    .col-xl-3 { flex: 0 0 25%; max-width: 25%; }
    .col-xl-4 { flex: 0 0 33.333333%; max-width: 33.333333%; }
    .col-xl-5 { flex: 0 0 41.666667%; max-width: 41.666667%; }
    .col-xl-6 { flex: 0 0 50%; max-width: 50%; }
    .col-xl-7 { flex: 0 0 58.333333%; max-width: 58.333333%; }
    .col-xl-8 { flex: 0 0 66.666667%; max-width: 66.666667%; }
    .col-xl-9 { flex: 0 0 75%; max-width: 75%; }
    .col-xl-10 { flex: 0 0 83.333333%; max-width: 83.333333%; }
    .col-xl-11 { flex: 0 0 91.666667%; max-width: 91.666667%; }
    .col-xl-12 { flex: 0 0 100%; max-width: 100%; }
}
/* Utility Classes */
.centred { text-align: center; }
.pull-left { float: left; }
.pull-right { float: right; }
.clearfix::after { content: ''; display: table; clear: both; }
.sec-pad { padding: 100px 0; }
.sec-pad-2 { padding: 80px 0; }
.mr-0 { margin: 0 !important; }
.offset-lg-1 { margin-left: 8.333333%; }
/* 首页背景样式 */
#banner-home { background-image: url(images/logo.png); }
#pattern-feature { background: var(--primary); opacity: 0.05; }
/* 文字颜色辅助类 */
.text-dark { color: #333; }
.text-muted { color: #666; }
.text-secondary { color: #888; font-size: 13px; }
/* Section Title */
.sec-title { position: relative; display: block; margin-bottom: 50px; }
.sec-title span { display: block; font-size: 16px; font-weight: 600; color: var(--secondary); text-transform: uppercase; margin-bottom: 10px; }
.sec-title h2 { font-size: 38px; line-height: 48px; font-weight: 800; margin-bottom: 15px; color: var(--primary); }
.sec-title p { font-size: 16px; color: var(--text-secondary); }
.sec-title.light h2, .sec-title.light span { color: var(--white); }
.sec-title.centred { text-align: center; }
/* Buttons */
.theme-btn-one { position: relative; display: inline-block; overflow: hidden; font-size: 15px; font-weight: 600; color: var(--white) !important; text-align: center; padding: 12px 30px; border-radius: 30px; background: linear-gradient(135deg, var(--primary), var(--primary-light)); box-shadow: 0 8px 25px rgba(26, 58, 92, 0.3); transition: all 500ms ease; border: none; cursor: pointer; }
.theme-btn-one:hover { background: linear-gradient(135deg, var(--secondary), var(--secondary-light)); box-shadow: 0 10px 30px rgba(212, 168, 67, 0.4); transform: translateY(-2px); }
.theme-btn-one i { margin-right: 8px; }
/* Preloader */
.preloader { position: fixed; left: 0; top: 0; height: 100%; width: 100%; z-index: 999999; background: var(--primary); background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><circle cx="50" cy="50" r="40" stroke="%23d4a843" stroke-width="6" fill="none"><animate attributeName="stroke-dasharray" from="0 251" to="251 0" dur="1.5s" fill="freeze"/></circle></svg>'); background-position: center center; background-repeat: no-repeat; transition: opacity 0.5s ease; }
/* Header */
.main-header { position: relative; left: 0; top: 0; z-index: 999; width: 100%; background: var(--white); transition: all 500ms ease; }
.main-header .outer-box { position: relative; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; }
.main-header .logo-box { position: relative; padding: 15px 0; }
.main-header .logo-box .logo img { max-width: 160px; height: auto; }
/* ==== header-top 顶栏（PC端+移动端）：全部单行紧凑样式 ==== */
.header-top { background: var(--primary); padding: 10px 0; }
.header-top .top-inner { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 8px; }
.header-top .info-list { display: flex; gap: 25px; flex-wrap: wrap; align-items: center; }
.header-top .info-list li { color: rgba(255,255,255,0.9); font-size: 14px; display: flex; align-items: center; }
.header-top .info-list li i { margin-right: 8px; color: var(--secondary); }
/* 电话链接：PC端白色字，避免蓝色底蓝字看不清 */
.header-top .info-list li a.phone-link { color: #fff; font-weight: 600; text-decoration: none; }
.header-top .info-list li a.phone-link:hover { color: var(--secondary); text-decoration: underline; }
/* 预约按钮：移入 info-list 后保持按钮外观 */
.header-top .info-list li.sign-in-item a { display: inline-block; padding: 6px 18px; background: var(--secondary); color: var(--primary); border-radius: 20px; font-weight: 600; font-size: 14px; transition: background 300ms ease; }
.header-top .info-list li.sign-in-item a:hover { background: var(--white); }
.header-top .info-list li.sign-in-item i { color: var(--primary); margin-right: 6px; }
.header-top .social-links { display: flex; gap: 15px; }
.header-top .social-links a { width: 32px; height: 32px; border-radius: 50%; background: rgba(255,255,255,0.1); color: var(--white); display: flex; align-items: center; justify-content: center; transition: all 300ms ease; }
.header-top .social-links a:hover { background: var(--secondary); }
/* ==== 移动端响应式（屏幕 <= 768px）==== */
@media (max-width: 768px) {
    .header-top { padding: 8px 0; }
    .header-top .top-inner { flex-direction: column; gap: 8px; }
    .header-top .info-list { gap: 10px 16px; justify-content: center; font-size: 12px; }
    .header-top .info-list li { font-size: 12px; }
    .header-top .info-list li.sign-in-item a { padding: 5px 14px; font-size: 12px; }
    .header-top .social-links { gap: 10px; }
    .header-top .social-links a { width: 28px; height: 28px; }
}
/* ==== 小屏幕（<= 480px）更紧凑 ==== */
@media (max-width: 480px) {
    .header-top .info-list { gap: 8px 12px; font-size: 11px; }
    .header-top .info-list li { font-size: 11px; }
    .header-top .info-list li.sign-in-item a { padding: 4px 12px; font-size: 11px; }
}
/* Navigation */
.main-menu .navigation { margin: 0; display: flex; }
.main-menu .navigation > li { position: relative; padding: 25px 15px; margin: 0 5px; }
.main-menu .navigation > li > a { position: relative; display: block; font-size: 15px; font-weight: 600; color: var(--primary); padding: 5px 10px; transition: all 300ms ease; }
.main-menu .navigation > li > a:hover, .main-menu .navigation > li.current > a { color: var(--secondary); }
.menu-area .mobile-nav-toggler { display: none; font-size: 30px; color: var(--primary); cursor: pointer; padding: 15px 0; }
.menu-area .mobile-nav-toggler .icon-bar { display: block; height: 3px; width: 30px; background: var(--primary); margin: 5px 0; border-radius: 2px; }
/* Sticky Header */
.sticky-header { position: fixed; opacity: 0; visibility: hidden; left: 0; top: 0; width: 100%; z-index: 0; background: var(--white); border-bottom: 1px solid rgba(26, 58, 92, 0.1); transition: all 500ms ease; }
.fixed-header .sticky-header { z-index: 999; opacity: 1; visibility: visible; animation: fadeInDown 500ms ease; }
.sticky-header .main-menu .navigation > li { padding: 18px 15px; }
/* Mobile Menu */
.mobile-menu { position: fixed; right: 0; top: 0; width: 300px; max-width: 85%; height: 100%; opacity: 0; visibility: hidden; z-index: 99999; }
.mobile-menu-visible { overflow: hidden; }
.mobile-menu-visible .mobile-menu { opacity: 1; visibility: visible; }
.mobile-menu .menu-backdrop { position: fixed; right: 0; top: 0; width: 100%; height: 100%; background: var(--primary); z-index: 1; transform: translateX(101%); transition: all 900ms ease; }
.mobile-menu-visible .mobile-menu .menu-backdrop { opacity: .7; visibility: visible; transform: translateX(0); }
.mobile-menu .menu-box { position: absolute; left: 0; top: 0; width: 100%; height: 100%; max-height: 100%; overflow-y: auto; background: var(--primary); padding: 0; z-index: 5; opacity: 0; visibility: hidden; transform: translateX(101%); transition: all 700ms ease; }
.mobile-menu-visible .mobile-menu .menu-box { opacity: 1; visibility: visible; transform: translateX(0); }
.mobile-menu .nav-logo { padding: 40px 25px; text-align: center; border-bottom: 1px solid rgba(255,255,255,0.1); }
.mobile-menu .nav-logo img { max-width: 150px; filter: brightness(0) invert(1); }
.mobile-menu .close-btn { position: absolute; right: 20px; top: 15px; font-size: 24px; color: var(--white); cursor: pointer; z-index: 10; }
.mobile-menu .navigation li { position: relative; display: block; border-top: 1px solid rgba(255,255,255,0.1); }
.mobile-menu .navigation li a { display: block; padding: 15px 25px; font-size: 15px; font-weight: 500; color: var(--white); text-transform: uppercase; }
/* Banner Section */
.banner-section { position: relative; padding: 150px 0 120px; background-size: cover; background-position: center; background-color: var(--primary-dark); }
.banner-section::before { content: ''; position: absolute; left: 0; top: 0; width: 100%; height: 100%; background: linear-gradient(135deg, rgba(15,36,64,0.85), rgba(26,58,92,0.75)); }
.banner-section .content-box { position: relative; z-index: 1; }
.banner-section .content-box h1 { font-size: 48px; line-height: 58px; color: var(--white); font-weight: 800; margin-bottom: 15px; }
.banner-section .content-box p { font-size: 18px; color: rgba(255,255,255,0.9); margin-bottom: 30px; }
.banner-section .form-inner { position: relative; display: block; background: var(--white); border-radius: 15px; padding: 20px; box-shadow: var(--shadow); }
.banner-section .input-inner { display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 15px; }
.banner-section .input-inner .form-group { flex: 1; min-width: 200px; position: relative; }
.banner-section .input-inner .form-group input, .banner-section .input-inner .form-group select { width: 100%; height: 48px; padding: 10px 15px 10px 45px; border: 1px solid var(--border-color); border-radius: 25px; font-size: 14px; transition: all 300ms ease; }
.banner-section .input-inner .form-group input:focus, .banner-section .input-inner .form-group select:focus { border-color: var(--primary); }
.banner-section .input-inner .form-group i { position: absolute; left: 18px; top: 15px; color: var(--secondary); }
.banner-section .input-inner .btn-box { flex: 0 0 auto; }
.banner-section .input-inner .btn-box button { padding: 12px 35px; background: linear-gradient(135deg, var(--primary), var(--primary-light)); color: var(--white); border: none; border-radius: 25px; font-weight: 600; cursor: pointer; transition: all 300ms ease; }
.banner-section .input-inner .btn-box button:hover { background: var(--secondary); }
.radio-select-box { display: flex; flex-wrap: wrap; gap: 15px; justify-content: center; margin-top: 20px; }
.radio-select-box li { display: inline-block; }
.radio-select-box label { display: inline-block; padding: 8px 18px; background: rgba(255,255,255,0.1); border: 1px solid rgba(255,255,255,0.3); border-radius: 20px; color: var(--white); font-size: 14px; cursor: pointer; transition: all 300ms ease; }
.radio-select-box input[type="radio"] { display: none; }
.radio-select-box input[type="radio"]:checked + label { background: var(--secondary); border-color: var(--secondary); color: var(--primary); }
/* Category Section */
.category-section { position: relative; }
.category-section .inner-content { display: flex; flex-wrap: wrap; margin: 0 -15px; }
.category-block-one { flex: 0 0 20%; max-width: 20%; padding: 0 15px; margin-bottom: 30px; }
@media (max-width: 992px) {
    .category-block-one { flex: 0 0 25%; max-width: 25%; }
}
@media (max-width: 768px) {
    .category-block-one { flex: 0 0 33.333%; max-width: 33.333%; }
}
@media (max-width: 576px) {
    .category-block-one { flex: 0 0 50%; max-width: 50%; }
}
.category-block-one .inner-box { position: relative; background: var(--white); padding: 30px 15px; border-radius: 12px; text-align: center; box-shadow: 0 5px 30px rgba(0,0,0,0.08); transition: all 500ms ease; overflow: hidden; }
.category-block-one .inner-box:hover { transform: translateY(-10px); box-shadow: 0 15px 40px rgba(26, 58, 92, 0.15); }
.category-block-one .inner-box .icon-box { font-size: 45px; color: var(--primary); margin-bottom: 15px; transition: all 300ms ease; }
.category-block-one .inner-box:hover .icon-box { color: var(--secondary); }
.category-block-one .inner-box h5 { font-size: 16px; font-weight: 700; margin-bottom: 10px; }
.category-block-one .inner-box span { display: inline-block; width: 36px; height: 36px; line-height: 36px; background: var(--bg-light); border-radius: 50%; font-size: 14px; font-weight: 600; color: var(--text-secondary); }
.category-section .more-btn { text-align: center; margin-top: 30px; }
/* Feature Section */
.feature-section { position: relative; background: var(--bg-light); }
.feature-section .sec-title { text-align: center; }
.pattern-layer { position: absolute; left: 0; top: 0; width: 100%; height: 100%; background-size: cover; background-repeat: no-repeat; background-position: center; opacity: 0.5; }
.feature-block-one { margin-bottom: 30px; }
.feature-block-one .inner-box { background: var(--white); border-radius: 12px; overflow: hidden; box-shadow: var(--shadow); transition: all 500ms ease; }
.feature-block-one .inner-box:hover { transform: translateY(-5px); box-shadow: var(--shadow-hover); }
.feature-block-one .inner-box .image-box { position: relative; overflow: visible; }
.feature-block-one .inner-box .image-box .image { overflow: hidden; aspect-ratio: 4/3; }
.feature-block-one .inner-box .image-box .image img { width: 100%; height: 100%; display: block; object-fit: cover; transition: all 500ms ease; }
.feature-block-one .inner-box:hover .image-box .image img { transform: scale(1.05); }
/* 小圆图：半出在图片底部，z-index 提高确保在最上层 */
.feature-block-one .inner-box .image-box .author-box { position: absolute; bottom: -22px; left: 20px; z-index: 10; }
.feature-block-one .inner-box .image-box .author-box img { width: 50px; height: 50px; border-radius: 50%; object-fit: cover; display: block; border: 3px solid var(--white); box-shadow: 0 2px 8px rgba(0,0,0,0.15); }
.feature-block-one .inner-box .lower-content { padding: 30px 20px 20px; }
.feature-block-one .inner-box .category { display: flex; align-items: center; margin-bottom: 8px; }
.feature-block-one .inner-box .category i { color: var(--secondary); margin-right: 8px; }
.feature-block-one .inner-box .category p { font-size: 13px; color: var(--text-secondary); margin: 0; }
/* 新增：category 里的链接继承卡片样式，去掉蓝色下划线 */
.feature-block-one .inner-box .category a { color: var(--text-secondary); text-decoration: none; transition: color 300ms ease; }
.feature-block-one .inner-box .category a:hover { color: var(--secondary); }
.feature-block-one .inner-box h3 { font-size: 18px; margin-bottom: 10px; line-height: 26px; }
.feature-block-one .inner-box h3 a { color: var(--primary); }
.feature-block-one .inner-box h3 a:hover { color: var(--secondary); }
.feature-block-one .inner-box .rating { display: flex; align-items: center; gap: 3px; margin-bottom: 10px; }
.feature-block-one .inner-box .rating li { color: var(--secondary); font-size: 12px; }
.feature-block-one .inner-box .rating li:last-child { color: var(--text-light); margin-left: 5px; }
.feature-block-one .inner-box .info { margin-bottom: 15px; }
.feature-block-one .inner-box .info li { display: flex; align-items: center; gap: 8px; font-size: 13px; color: var(--text-secondary); margin-bottom: 5px; }
.feature-block-one .inner-box .info li i { color: var(--secondary); }
/* 新增：info 区块内链接（校区/地址）统一卡片样式，去掉蓝色下划线 */
.feature-block-one .inner-box .info li a { color: var(--text-secondary); text-decoration: none; transition: color 300ms ease; }
.feature-block-one .inner-box .info li a:hover { color: var(--primary); }
.feature-block-one .inner-box .lower-box { display: flex; justify-content: space-between; align-items: center; padding-top: 15px; border-top: 1px solid var(--border-color); }
.feature-block-one .inner-box .lower-box h5 { font-size: 13px; color: var(--text-secondary); }
.feature-block-one .inner-box .react-box { display: flex; gap: 10px; }
.feature-block-one .inner-box .react-box li a { width: 40px; height: 40px; border-radius: 50%; background: var(--bg-light); display: flex; align-items: center; justify-content: center; color: var(--primary); font-size: 18px; transition: all 300ms ease; }
.feature-block-one .inner-box .react-box li a:hover { background: var(--primary); color: var(--white); }
/* ============================ Testimonial Section（首页学员评价） ============================ */
.testimonial-section { position: relative; background: linear-gradient(135deg, var(--primary), var(--primary-dark)); padding: 100px 0; }
.testimonial-section .sec-title { text-align: center; margin-bottom: 50px; }
.testimonial-section .sec-title h2 { color: #fff; }
.testimonial-section .sec-title h2.text-dark { color: #333; }
.testimonial-section .sec-title span { color: var(--secondary); }
.testimonial-section .sec-title p { color: rgba(255, 255, 255, 0.8); }
.testimonial-section .sec-title p.text-muted { color: #666; }
.testimonial-section .row { display: flex; flex-wrap: wrap; margin: 0 -15px; }
.testimonial-section .row > [class*="col-"] { padding: 0 15px; margin-bottom: 30px; }
/* 学员评价：白底卡片 + 居中布局 */
.testimonial-content { position: relative; background: var(--white); border-radius: 16px; padding: 30px 25px 25px; height: 100%; display: flex; flex-direction: column; box-shadow: 0 10px 30px rgba(0, 0, 0, 0.18); transition: all 300ms ease; text-align: center; }
.testimonial-content:hover { transform: translateY(-5px); box-shadow: 0 15px 40px rgba(0, 0, 0, 0.28); }
.testimonial-content .text { flex: 1; margin-bottom: 18px; }
.testimonial-content .text::before { content: '\201C'; display: block; font-size: 50px; line-height: 1; color: var(--secondary); font-family: Georgia, serif; font-weight: 700; margin-bottom: -8px; }
.testimonial-content .text p { font-size: 14px; line-height: 24px; color: var(--text-secondary); font-style: normal; margin: 0; }
/* 学员评价底部信息（平铺布局） */
.testimonial-content .author-box { display: flex; flex-direction: column; align-items: center; gap: 4px; padding-top: 15px; border-top: 1px solid var(--border-color); }
.testimonial-content .author-box img { width: 50px; height: 50px; border-radius: 50%; border: 3px solid var(--secondary); object-fit: cover; box-shadow: 0 3px 10px rgba(0, 0, 0, 0.15); flex-shrink: 0; background: var(--primary); }
.testimonial-content .author-box h3 { color: var(--primary); font-size: 15px; margin: 0; font-weight: 700; white-space: nowrap; }
.testimonial-content .author-box span { color: var(--text-light); font-size: 12px; display: block; }
/* Pricing Section */
.pricing-section { background: var(--bg-light); }
.pricing-block { margin-bottom: 30px; }
.pricing-block-one .pricing-table { background: var(--white); border-radius: 15px; overflow: hidden; box-shadow: var(--shadow); transition: all 500ms ease; }
.pricing-block-one .pricing-table:hover { transform: translateY(-10px); box-shadow: var(--shadow-hover); }
.pricing-block-one.active .pricing-table { border: 2px solid var(--secondary); }
.pricing-block-one .teble-header { padding: 30px 25px; background: linear-gradient(135deg, var(--primary), var(--primary-light)); text-align: center; }
.pricing-block-one.active .teble-header { background: linear-gradient(135deg, var(--secondary), var(--secondary-light)); }
.pricing-block-one .teble-header p { color: rgba(255,255,255,0.9); font-size: 14px; margin-bottom: 10px; }
.pricing-block-one .teble-header h2 { color: var(--white); font-size: 28px; font-weight: 800; }
.pricing-block-one .teble-header h2 span { font-size: 16px; font-weight: 400; }
.pricing-block-one .table-content { padding: 30px 25px; }
.pricing-block-one .table-content .list li { padding: 12px 0; border-bottom: 1px solid var(--border-color); font-size: 15px; color: var(--text-secondary); display: flex; align-items: center; gap: 10px; }
.pricing-block-one .table-content .list li::before { content: '✓'; color: var(--secondary); font-weight: bold; }
.pricing-block-one .table-footer { padding: 0 25px 30px; text-align: center; }
.pricing-block-one .table-footer a { display: inline-block; padding: 12px 40px; background: var(--primary); color: var(--white); border-radius: 25px; font-weight: 600; transition: all 300ms ease; }
.pricing-block-one.active .table-footer a { background: var(--secondary); color: var(--primary); }
.pricing-block-one .table-footer a:hover { transform: scale(1.05); }
/* ============================ Place Section（首页热门校区） ============================ */
.place-section { background: var(--white); }
.place-block { margin-bottom: 30px; }
.place-block-one .inner-box { position: relative; border-radius: 12px; overflow: hidden; box-shadow: var(--shadow); }
.place-block-one .inner-box img { width: 100%; aspect-ratio: 16/9; object-fit: cover; transition: all 500ms ease; }
.place-block-one .inner-box:hover img { transform: scale(1.05); }
.place-block-one .inner-box .lower-content { position: absolute; bottom: 0; left: 0; width: 100%; padding: 20px; background: linear-gradient(transparent, rgba(15, 36, 64, 0.95)); }
.place-block-one .inner-box .lower-content h3 a { color: var(--white); font-size: 18px; }
.place-block-one .inner-box .lower-content span { color: var(--secondary); font-size: 13px; }
/* ============================ 新闻列表页样式 ============================ */
/* 新闻区块 */
.news-section { background: var(--bg-light); overflow: visible !important; }
.news-section .auto-container { max-width: 1400px; }
.news-section .row { margin-left: -15px; }
/* 卡片容器 */
.news-block { margin-bottom: 40px; }
/* 卡片主体 */
.news-block-one { padding-bottom: 30px !important; }
.news-block-one .inner-box { background: var(--white); border-radius: 12px; overflow: visible !important; box-shadow: var(--shadow); padding-bottom: 35px; transition: all 500ms ease; }
.news-block-one .inner-box:hover { transform: translateY(-5px); box-shadow: var(--shadow-hover); }
/* 图片区域 */
.news-block-one .image-box { position: relative; aspect-ratio: 16/9; overflow: visible !important; }
.news-block-one .image-box img { width: 100%; height: 100%; object-fit: cover; }
.news-block-one:hover .image-box img { transform: scale(1.05); }
/* 悬浮链接图标 */
.news-block-one .image-box a { position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%) scale(0); width: 50px; height: 50px; background: var(--secondary); border-radius: 50%; display: flex; align-items: center; justify-content: center; color: var(--primary); font-size: 20px; transition: all 300ms ease; z-index: 5; }
.news-block-one:hover .image-box a { transform: translate(-50%, -50%) scale(1); }
/* 小圆图：半出在图片底部 */
.news-block-one .admin-thumb { position: absolute; bottom: -20px; left: 15px; z-index: 10; width: 50px; height: 50px; border-radius: 50%; overflow: hidden; border: 3px solid #fff; box-shadow: 0 2px 8px rgba(0,0,0,0.2); }
.news-block-one .admin-thumb img { width: 100%; height: 100%; object-fit: cover; }
/* 内容区域 */
.news-block-one .lower-content { padding: 8px 12px 12px; }
.news-block-one .lower-content h3 { margin: 25px 0 8px 0; font-size: 16px; line-height: 1.4; }
.news-block-one .lower-content h3 a { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; text-decoration: none; color: #333; }
.news-block-one .lower-content h3 a:hover { color: var(--primary); }
.news-block-one .lower-content p { margin: 0 0 8px 0; font-size: 13px; color: #666; line-height: 1.5; }
/* 底部栏：机构名称+咨询按钮 */
.news-block-one .card-footer { display: flex; justify-content: space-between; align-items: center; padding-top: 8px; border-top: 1px solid #eee; }
.news-block-one .card-footer .post-info { font-size: 12px; color: #999; }
.news-block-one .card-footer .post-info a { color: var(--primary); text-decoration: none; }
/* 首页最新新闻区块 */
.news-block-one .post-info { font-size: 13px; color: #666; margin-top: 10px; }
.news-block-one .post-info a { color: var(--primary); text-decoration: none; }
.news-block-one .card-footer .btn-chat { display: inline-flex; align-items: center; gap: 4px; padding: 5px 12px; background: var(--secondary); color: #fff; border-radius: 12px; font-size: 11px; text-decoration: none; transition: all 300ms ease; }
.news-block-one .card-footer .btn-chat:hover { background: #cc5500; }
/* 分类标签 */
.news-block-one .category { position: absolute; top: 10px; left: 10px; z-index: 5; display: inline-block; padding: 4px 12px; background: var(--secondary); color: #fff; font-size: 11px; font-weight: 600; border-radius: 12px; }
/* Subscribe Section */
.subscribe-section { position: relative; background: linear-gradient(135deg, var(--primary), var(--primary-dark)); padding: 80px 0; }
.subscribe-section .text { color: var(--white); }
.subscribe-section .icon-box { font-size: 50px; color: var(--secondary); margin-bottom: 15px; }
.subscribe-section h2 { font-size: 32px; color: var(--white); margin-bottom: 10px; }
.subscribe-section p { color: rgba(255,255,255,0.8); }
.subscribe-form .form-group { display: flex; gap: 10px; }
.subscribe-form input { flex: 1; height: 50px; padding: 10px 20px; border: none; border-radius: 25px; font-size: 15px; }
.subscribe-form button { padding: 12px 30px; background: var(--secondary); color: var(--primary); border: none; border-radius: 25px; font-weight: 600; cursor: pointer; transition: all 300ms ease; }
.subscribe-form button:hover { background: var(--white); }
/* Footer */
.main-footer { background: var(--primary-dark); }
.footer-top { padding: 80px 0 50px; }
.footer-widget { margin-bottom: 30px; }
.footer-logo img { max-width: 160px; filter: brightness(0) invert(1); margin-bottom: 20px; }
.footer-widget .text p { color: rgba(255,255,255,0.7); font-size: 14px; line-height: 26px; margin-bottom: 20px; }
.footer-widget .widget-title h3 { color: var(--white); font-size: 20px; margin-bottom: 20px; }
.footer-widget .links-list li { margin-bottom: 12px; }
.footer-widget .links-list li a { color: rgba(255,255,255,0.7); font-size: 14px; transition: all 300ms ease; }
.footer-widget .links-list li a:hover { color: var(--secondary); padding-left: 5px; }
.footer-widget .info-list li { display: flex; align-items: flex-start; gap: 10px; margin-bottom: 15px; color: rgba(255,255,255,0.7); font-size: 14px; }
.footer-widget .info-list li i { color: var(--secondary); margin-top: 4px; }
.footer-widget .info-list li a { color: rgba(255,255,255,0.7); }
.footer-widget .info-list li a:hover { color: var(--secondary); }
.footer-widget .social-links { display: flex; gap: 10px; }
.footer-widget .social-links li a { width: 38px; height: 38px; border-radius: 50%; background: rgba(255,255,255,0.1); display: flex; align-items: center; justify-content: center; color: var(--white); transition: all 300ms ease; }
.footer-widget .social-links li a:hover { background: var(--secondary); color: var(--primary); }
.footer-bottom { padding: 20px 0; border-top: 1px solid rgba(255,255,255,0.1); }
.footer-bottom .copyright p { color: rgba(255,255,255,0.6); font-size: 14px; }
.footer-bottom .copyright a { color: var(--secondary); }
.footer-bottom .footer-nav li { display: inline-block; margin-left: 20px; font-size: 13px; color: rgba(255,255,255,0.5); }
/* Page Title */
.page-title { position: relative; padding: 120px 0 80px; background-size: cover; background-position: center; background-color: var(--primary); }
.page-title::before { content: ''; position: absolute; left: 0; top: 0; width: 100%; height: 100%; background: linear-gradient(135deg, rgba(15,36,64,0.9), rgba(26,58,92,0.85)); }
.page-title .content-box { position: relative; z-index: 1; text-align: center; }
.page-title .title h1 { color: var(--white); font-size: 42px; margin-bottom: 15px; }
.bread-crumb { display: flex; justify-content: center; gap: 10px; }
.bread-crumb li { color: rgba(255,255,255,0.7); font-size: 15px; }
.bread-crumb li a { color: var(--secondary); }
.bread-crumb li a:hover { text-decoration: underline; }
/* About Section */
.about-section { padding: 100px 0; }
.content_block_3 .content-box .sec-title { text-align: left; }
.content_block_3 .content-box .text p { margin-bottom: 20px; font-size: 15px; line-height: 28px; }
.content_block_3 .content-box h3 { font-size: 20px; margin: 25px 0 15px; }
.image_block_1 .image-box { position: relative; }
.image_block_1 .image-box .image { border-radius: 15px; overflow: hidden; }
.image_block_1 .image-box .image img { width: 100%; border-radius: 15px; }
.image_block_1 .image-box .image-pattern .pattern-1, .image_block_1 .image-box .image-pattern .pattern-2 { position: absolute; width: 150px; height: 150px; background-size: contain; background-repeat: no-repeat; opacity: 0.3; }
.image_block_1 .image-box .image-pattern .pattern-1 { left: -30px; bottom: -30px; }
.image_block_1 .image-box .image-pattern .pattern-2 { right: -30px; top: -30px; }
/* Process Section */
.process-section { background: var(--bg-light); }
.process-block { margin-bottom: 30px; }
.process-block-one .inner-box { text-align: center; }
.process-block-one .inner-box .count { display: inline-block; width: 70px; height: 70px; line-height: 70px; background: var(--white); border-radius: 50%; font-size: 24px; font-weight: 800; color: var(--primary); box-shadow: var(--shadow); margin-bottom: 25px; }
.process-block-one .inner-box .text { background: var(--white); padding: 35px 25px; border-radius: 15px; box-shadow: var(--shadow); }
.process-block-one .inner-box .text .icon-box { font-size: 40px; color: var(--secondary); margin-bottom: 20px; }
.process-block-one .inner-box .text h3 { font-size: 20px; margin-bottom: 15px; }
.process-block-one .inner-box .text p { font-size: 14px; line-height: 26px; }
/* Contact Section */
.contact-section { background: var(--bg-light); }
.contact-info-inner .sec-title { text-align: left; margin-bottom: 30px; }
.contact-info-inner .single-box { margin-bottom: 25px; }
.contact-info-inner .single-box h3 { font-size: 18px; margin-bottom: 12px; }
.contact-info-inner .single-box .list li { font-size: 14px; color: var(--text-secondary); margin-bottom: 8px; }
.contact-info-inner .single-box .list li a { color: var(--primary); }
.contact-info-inner .social-links { display: flex; gap: 10px; }
.contact-info-inner .social-links li a { width: 45px; height: 45px; border-radius: 50%; background: var(--primary); display: flex; align-items: center; justify-content: center; color: var(--white); font-size: 18px; transition: all 300ms ease; }
.contact-info-inner .social-links li a:hover { background: var(--secondary); color: var(--primary); }
/* Form Styles */
.form-inner { background: var(--white); padding: 40px; border-radius: 15px; box-shadow: var(--shadow); }
.form-inner h2 { font-size: 28px; margin-bottom: 25px; }
.default-form .form-group { margin-bottom: 20px; }
.default-form .form-group label { display: block; font-size: 14px; font-weight: 500; color: var(--text-dark); margin-bottom: 8px; }
.default-form .form-group input, .default-form .form-group textarea, .default-form .form-group select { width: 100%; height: 50px; padding: 12px 20px; border: 1px solid var(--border-color); border-radius: 25px; font-size: 15px; transition: all 300ms ease; }
.default-form .form-group textarea { height: 120px; resize: none; border-radius: 15px; }
.default-form .form-group input:focus, .default-form .form-group textarea:focus { border-color: var(--primary); }
.default-form .form-group .theme-btn-one { width: 100%; padding: 14px; }
/* Login/Signup Section */
.login-section { background: var(--bg-light); }
.login-section .inner-container { max-width: 500px; margin: 0 auto; }
.login-section .inner-box { background: var(--white); padding: 40px; border-radius: 15px; box-shadow: var(--shadow); }
.login-section .inner-box h2 { font-size: 28px; text-align: center; margin-bottom: 30px; }
.signup-form .form-group label { display: block; font-size: 14px; font-weight: 500; margin-bottom: 8px; }
.signup-form .form-group input { width: 100%; height: 50px; padding: 12px 20px; border: 1px solid var(--border-color); border-radius: 25px; font-size: 15px; margin-bottom: 20px; }
.signup-form .form-group input:focus { border-color: var(--primary); }
.signup-form .message-btn .theme-btn-one { width: 100%; }
/* Sidebar */
.sidebar-widget { background: var(--white); padding: 30px; border-radius: 15px; box-shadow: var(--shadow); margin-bottom: 30px; }
.sidebar-widget .widget-title h3 { font-size: 20px; margin-bottom: 20px; padding-bottom: 15px; border-bottom: 2px solid var(--border-color); }
.search-widget .search-form { position: relative; }
.search-widget .search-form input { width: 100%; height: 48px; padding: 12px 20px; border: 1px solid var(--border-color); border-radius: 25px; font-size: 15px; }
.search-widget .search-form button { position: absolute; right: 5px; top: 5px; width: 38px; height: 38px; background: var(--primary); color: var(--white); border: none; border-radius: 50%; cursor: pointer; }
.post-widget .post { display: flex; gap: 15px; padding: 15px 0; border-bottom: 1px solid var(--border-color); }
.post-widget .post:last-child { border-bottom: none; }
.post-widget .post-thumb img { width: 80px; height: 80px; object-fit: cover; border-radius: 10px; }
.post-widget .post h5 { font-size: 15px; margin-bottom: 5px; }
.post-widget .post h5 a { color: var(--primary); }
.post-widget .post p { font-size: 13px; color: var(--text-light); }
/* Pagination */
.pagination-wrapper { margin-top: 30px; margin-bottom: 50px; }
.pagination { display: flex; justify-content: center; flex-wrap: wrap; gap: 6px; padding: 0; margin: 0; list-style: none; }
.pagination li a { display: inline-flex; align-items: center; justify-content: center; min-width: 70px; height: 36px; padding: 0 12px; border: 1px solid var(--border-color); border-radius: 4px; font-size: 13px; font-weight: 500; color: #333; transition: all 300ms ease; white-space: nowrap; }
.pagination li a:hover, .pagination li a.current { background: var(--primary); color: var(--white); border-color: var(--primary); }
/* Scroll Top */
.scroll-top { position: fixed; right: 30px; bottom: 30px; width: 50px; height: 50px; background: var(--primary); color: var(--white); border: none; border-radius: 50%; font-size: 20px; cursor: pointer; opacity: 0; visibility: hidden; transition: all 300ms ease; z-index: 999; }
.scroll-top.open { opacity: 1; visibility: visible; bottom: 50px; }
.scroll-top:hover { background: var(--secondary); color: var(--primary); }
/* Modal Styles */
.modal-overlay { position: fixed; left: 0; top: 0; width: 100%; height: 100%; background: rgba(0,0,0,0.7); z-index: 99999; display: flex; align-items: center; justify-content: center; opacity: 0; visibility: hidden; transition: all 300ms ease; }
.modal-overlay.show { opacity: 1; visibility: visible; }
.modal-box { background: var(--white); padding: 40px; border-radius: 20px; max-width: 500px; width: 90%; text-align: center; transform: scale(0.9); transition: all 300ms ease; }
.modal-overlay.show .modal-box { transform: scale(1); }
.modal-box h3 { font-size: 24px; margin-bottom: 15px; }
.modal-box p { margin-bottom: 20px; }
/* Background Colors */
.bg-color-1 { background: var(--bg-light); }
.bg-color-2 { background: #f5f7fa; }
/* Animations */
@keyframes fadeIn {
    from { opacity: 0; }
    to { opacity: 1; }
}
@keyframes fadeInUp {
    from { opacity: 0; transform: translateY(30px); }
    to { opacity: 1; transform: translateY(0); }
}
@keyframes fadeInDown {
    from { opacity: 0; transform: translateY(-30px); }
    to { opacity: 1; transform: translateY(0); }
}
@keyframes rotate {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}
.rotate-me { animation: rotate 20s linear infinite; }
.wow { opacity: 0; }
.wow.fadeInUp { animation: fadeInUp 0.8s ease forwards; }
.wow.fadeInDown { animation: fadeInDown 0.8s ease forwards; }
/* Tabs */
.tabs-box .tab-btns { display: flex; justify-content: center; gap: 20px; margin-bottom: 40px; }
.tabs-box .tab-btn { padding: 12px 30px; background: var(--white); border: 2px solid var(--border-color); border-radius: 25px; font-weight: 600; color: var(--primary); cursor: pointer; transition: all 300ms ease; }
.tabs-box .tab-btn.active-btn, .tabs-box .tab-btn:hover { background: var(--primary); color: var(--white); border-color: var(--primary); }
.tabs-box .tab { display: none; }
.tabs-box .tab.active-tab { display: block; }
/* ============================ Feature Style Two（首页热门课程） ============================ */
.feature-style-two { padding: 0; background: transparent; }
.feature-style-two .feature-block { margin-bottom: 15px; }
.feature-style-two .feature-block-one { border-radius: 10px; overflow: hidden; box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06); background: #fff; }
.feature-style-two .feature-block-one .image-box { position: relative; overflow: hidden; aspect-ratio: 16/9; }
.feature-style-two .feature-block-one .image-box .image { position: absolute; top: 0; left: 0; width: 100%; height: 100%; overflow: hidden; }
.feature-style-two .feature-block-one .image-box .image img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform 300ms ease; }
.feature-style-two .feature-block-one:hover .image-box .image img { transform: scale(1.05); }
.feature-style-two .feature-block-one .course-tag { position: absolute; top: 8px; left: 8px; background: var(--secondary); color: #fff; padding: 3px 10px; border-radius: 12px; font-size: 11px; z-index: 2; }
.feature-style-two .feature-block-one .lower-content { padding: 12px 15px; }
.feature-style-two .feature-block-one .lower-content h4 { margin: 0 0 10px 0; font-size: 15px; line-height: 1.4; }
.feature-style-two .feature-block-one .lower-content h4 a { color: #333; text-decoration: none; }
.feature-style-two .feature-block-one .lower-content .info { margin: 0 0 10px 0; padding: 0; list-style: none; }
.feature-style-two .feature-block-one .lower-content .info li { margin-bottom: 5px; font-size: 13px; color: #666; }
.feature-style-two .feature-block-one .lower-content .info li i { color: var(--primary); margin-right: 5px; }
.feature-style-two .feature-block-one .lower-content .info li a { color: var(--primary); text-decoration: none; }
.feature-style-two .feature-block-one .lower-box { padding-top: 10px; border-top: 1px solid #eee; display: flex; justify-content: center; gap: 12px; }
.feature-style-two .feature-block-one .lower-box .action-btn { display: flex; align-items: center; gap: 6px; padding: 8px 16px; border-radius: 20px; font-size: 13px; text-decoration: none; transition: all 300ms ease; }
.feature-style-two .feature-block-one .lower-box .action-btn i { font-size: 14px; }
.feature-style-two .feature-block-one .lower-box .btn-primary { background: linear-gradient(135deg, var(--primary), #0055aa); color: #fff; box-shadow: 0 2px 8px rgba(0, 102, 204, 0.3); }
.feature-style-two .feature-block-one .lower-box .btn-primary:hover { transform: translateY(-2px); box-shadow: 0 4px 12px rgba(0, 102, 204, 0.4); }
.feature-style-two .feature-block-one .lower-box .btn-secondary { background: linear-gradient(135deg, var(--secondary), #cc4400); color: #fff; box-shadow: 0 2px 8px rgba(255, 102, 0, 0.3); }
.feature-style-two .feature-block-one .lower-box .btn-secondary:hover { transform: translateY(-2px); box-shadow: 0 4px 12px rgba(255, 102, 0, 0.4); }
/* Courses Page */
.courses-list-wrap .item-shorting { margin: 0 0 15px 0; padding: 10px 0; border-bottom: 1px solid #eee; }
.courses-list-wrap .item-shorting p { color: #333; margin: 0; font-size: 14px; }
.courses-list-wrap .item-shorting p span { color: var(--primary); font-weight: 600; }
.courses-list-wrap .pagination-wrap { margin-top: 30px; }
.courses-list-wrap .pagination-wrap ul { display: flex; justify-content: center; flex-wrap: wrap; gap: 6px; padding: 0; margin: 0; list-style: none; }
.courses-list-wrap .pagination-wrap ul li a { display: inline-block; padding: 8px 12px; background: #fff; color: #333; border: 1px solid #ddd; border-radius: 4px; text-decoration: none; font-size: 13px; }
.courses-list-wrap .pagination-wrap ul li a:hover { background: var(--primary); color: #fff; border-color: var(--primary); }
.courses-list-wrap .pagination-wrap ul li a.current { background: var(--secondary); color: #fff; border-color: var(--secondary); }
/* Clients Section */
.clients-section { padding: 80px 0; background: var(--bg-light); }
.clients-logo-list { display: flex; flex-wrap: wrap; gap: 30px; justify-content: center; }
.clients-logo-list li { flex: 0 0 calc(25% - 30px); }
.clients-logo-list li img { max-width: 150px; opacity: 0.7; transition: all 300ms ease; }
.clients-logo-list li img:hover { opacity: 1; }
/* Download Section */
.download-section { padding: 100px 0; background: var(--primary); }
.download-section .image-box { text-align: center; }
.download-section .image-box img { max-width: 100%; }
.download-section h2 { color: var(--white); font-size: 36px; margin-bottom: 30px; }
.download-btn { display: flex; gap: 15px; flex-wrap: wrap; }
.download-btn a { display: flex; align-items: center; gap: 10px; padding: 15px 25px; background: var(--white); border-radius: 10px; color: var(--primary); font-weight: 600; transition: all 300ms ease; }
.download-btn a:hover { background: var(--secondary); color: var(--primary); }
/* Blog Details */
.blog-details-content .news-block-one .text blockquote { background: var(--bg-light); padding: 30px; border-left: 4px solid var(--secondary); border-radius: 10px; margin: 25px 0; }
.blog-details-content .news-block-one .text blockquote h4 { font-size: 18px; margin-bottom: 10px; }
.blog-details-content .list-item li { padding: 8px 0; padding-left: 25px; position: relative; }
.blog-details-content .list-item li::before { content: '•'; position: absolute; left: 0; color: var(--secondary); font-size: 20px; }
.post-share-option { display: flex; justify-content: space-between; align-items: center; padding: 20px; background: var(--bg-light); border-radius: 10px; margin-top: 30px; }
/* Related Ads */
.related-ads { padding: 80px 0; background: var(--bg-light); }
/* Fancybox Override */
.fancybox-container { z-index: 99999; }
/* Responsive Styles */
@media (max-width: 1200px) {
    .container { max-width: 960px; }
}
@media (max-width: 992px) {
    .container { max-width: 720px; }
    .main-header .logo-box { padding: 10px 0; }
    .menu-area .mobile-nav-toggler { display: block; }
    .main-menu { display: none; }
    .banner-section { padding: 100px 0 80px; }
    .banner-section .content-box h1 { font-size: 36px; line-height: 46px; }
    .category-block-one { flex: 0 0 33.333%; max-width: 33.333%; }
    .sec-title h2 { font-size: 30px; line-height: 40px; }
    .page-title { padding: 80px 0 60px; }
    .page-title .title h1 { font-size: 32px; }
    .subscribe-section .form-group { flex-direction: column; }
    .footer-top { padding: 60px 0 40px; }
    .contact-section .row { flex-direction: column; }
}
@media (max-width: 768px) {
    .container { max-width: 540px; }
    .banner-section .input-inner { flex-direction: column; }
    .banner-section .input-inner .form-group { width: 100%; }
    .banner-section .input-inner .btn-box { width: 100%; }
    .banner-section .input-inner .btn-box button { width: 100%; }
    .category-block-one { flex: 0 0 50%; max-width: 50%; }
    .pricing-section .row { flex-direction: column; }
    .testimonial-section { padding: 60px 0; }
    .subscribe-section { padding: 60px 0; }
    .subscribe-section h2 { font-size: 24px; }
    .footer-bottom .footer-inner { flex-direction: column; gap: 15px; text-align: center; }
    .form-inner { padding: 25px; }
    .about-section { padding: 60px 0; }
    .about-section .row { flex-direction: column-reverse; }
}
@media (max-width: 576px) {
    .container { max-width: 100%; }
    .category-block-one { flex: 0 0 100%; max-width: 100%; }
    .banner-section .content-box h1 { font-size: 28px; line-height: 38px; }
    .sec-title h2 { font-size: 24px; line-height: 34px; }
    .page-title .title h1 { font-size: 26px; }
    .pagination { flex-wrap: wrap; }
    .login-section .inner-box { padding: 25px; }
}
/* Nice Select Override */
.nice-select { -webkit-appearance: none; appearance: none; background: transparent; }
.nice-select:after { content: '\f107'; font-family: 'Font Awesome 5 Pro'; position: absolute; right: 20px; top: 50%; transform: translateY(-50%); color: var(--text-secondary); pointer-events: none; }
.nice-select .list { width: 100%; border-radius: 10px; box-shadow: var(--shadow); }
/* Featured Course */
.feature-2 { position: absolute; top: 15px; left: 15px; padding: 5px 15px; background: var(--secondary); color: var(--primary); font-size: 12px; font-weight: 600; border-radius: 15px; }
/* Shape Decorations */
.shape-1, .shape-2 { position: absolute; background-size: contain; background-repeat: no-repeat; opacity: 0.5; }
.shape-1 { top: 0; right: 0; }
.shape-2 { bottom: 0; left: 0; }
/* List View / Grid View */
.item-shorting { display: flex; justify-content: space-between; align-items: center; margin-bottom: 30px; flex-wrap: wrap; gap: 15px; }
.item-shorting .text p { font-size: 14px; color: var(--text-secondary); }
.item-shorting .text p span { color: var(--primary); font-weight: 600; }
.item-shorting .right-column { display: flex; gap: 10px; }
.item-shorting .menu-box button { width: 40px; height: 40px; border: 1px solid var(--border-color); background: var(--white); border-radius: 5px; color: var(--primary); cursor: pointer; transition: all 300ms ease; }
.item-shorting .menu-box button:hover, .item-shorting .menu-box button.on { background: var(--primary); color: var(--white); border-color: var(--primary); }
/* Featured Three */
.feature-style-three { background: var(--white); border-radius: 15px; overflow: hidden; box-shadow: var(--shadow); }
.feature-style-three .image-box { position: relative; }
.feature-style-three .image-box .feature-2 { top: 15px; left: auto; right: 15px; }
/* Browse Add Details */
.browse-add-details { padding: 80px 0; }
.add-details-content .single-box { background: var(--white); padding: 30px; border-radius: 15px; margin-bottom: 30px; box-shadow: var(--shadow); }
.add-details-content .single-box h3 { font-size: 22px; margin-bottom: 20px; }
.add-details-content .single-box p { margin-bottom: 15px; }
.add-details-content .single-box ul.list-item li { padding: 8px 0; padding-left: 25px; position: relative; color: var(--text-secondary); }
.add-details-content .single-box ul.list-item li::before { content: '✓'; position: absolute; left: 0; color: var(--secondary); font-weight: bold; }
/* Page Title 2 */
.page-title-2 { position: relative; padding: 100px 0 60px; background-size: cover; background-position: center; background-color: var(--primary); }
.page-title-2::before { content: ''; position: absolute; left: 0; top: 0; width: 100%; height: 100%; background: linear-gradient(135deg, rgba(15,36,64,0.9), rgba(26,58,92,0.85)); }
.page-title-2 .content-box { position: relative; z-index: 1; }
.page-title-2 .content-box h1 { color: var(--white); font-size: 36px; margin-bottom: 15px; }
.page-title-2 .content-box .category { display: inline-flex; align-items: center; gap: 8px; padding: 6px 18px; background: var(--secondary); color: var(--primary); border-radius: 20px; font-size: 14px; font-weight: 600; }
.page-title-2 .info-box { display: flex; justify-content: space-between; align-items: center; margin-top: 40px; padding: 30px; background: var(--white); border-radius: 15px; box-shadow: var(--shadow); }
.page-title-2 .info-box .left-column { display: flex; align-items: center; gap: 20px; }
.page-title-2 .info-box .left-column .image-box { width: 80px; height: 80px; border-radius: 10px; overflow: hidden; }
.page-title-2 .info-box .links-list { display: flex; gap: 10px; }
.page-title-2 .info-box .links-list li a { width: 45px; height: 45px; border-radius: 50%; background: var(--bg-light); display: flex; align-items: center; justify-content: center; color: var(--primary); font-size: 18px; transition: all 300ms ease; }
.page-title-2 .info-box .links-list li a:hover { background: var(--primary); color: var(--white); }
/* Product Image */
.product-image .image { border-radius: 15px; overflow: hidden; margin: 20px 0; }
.product-image .image img { width: 100%; border-radius: 15px; }
/* Four Column Grid */
.four-column .row { display: flex; flex-wrap: wrap; margin: 0 -15px; }
.four-column .feature-block { padding: 0 15px; }
/* Carousel —— 已禁用轮播，改用 CSS Grid 网格布局 */
.owl-carousel { display: block; }
.owl-carousel.active { display: block; }
.owl-nav-none .owl-nav, .owl-dots-none .owl-dots { display: none !important; }
.dots-style-one .owl-dots { display: none !important; }
/* 最新课程：3 列响应式网格 */
.three-item-carousel { display: grid; grid-template-columns: repeat(3, 1fr); gap: 30px; }
@media (max-width: 991px) {
    .three-item-carousel { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 600px) {
    .three-item-carousel { grid-template-columns: 1fr; }
}
/* 学员评价：3 列响应式网格 */
.single-item-carousel { display: grid; grid-template-columns: repeat(3, 1fr); gap: 30px; }
@media (max-width: 991px) {
    .single-item-carousel { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 600px) {
    .single-item-carousel { grid-template-columns: 1fr; }
}
/* Accordion */
.accordion-box .block { background: var(--white); border-radius: 10px; margin-bottom: 15px; border: 1px solid var(--border-color); overflow: hidden; }
.accordion-box .block .acc-btn { padding: 18px 25px; cursor: pointer; display: flex; justify-content: space-between; align-items: center; }
.accordion-box .block .acc-btn h5 { font-size: 16px; }
.accordion-box .block .acc-content { padding: 0 25px 20px; display: none; }
.accordion-box .block .acc-content.current { display: block; }
.accordion-box .block .icon-outer::after { content: '\f107'; font-family: 'Font Awesome 5 Pro'; font-size: 16px; color: var(--text-secondary); }
.accordion-box .block .acc-btn.active .icon-outer::after { content: '\f106'; }
/* ============================ 新闻详情页样式 ============================ */
.news-detail-banner { position: relative; background: linear-gradient(135deg, var(--primary), #003366); padding: 40px 0 80px; }
.news-detail-banner .banner-content { position: relative; }
.news-detail-banner .cover-image { position: relative; border-radius: 12px; overflow: visible; margin-bottom: 30px; }
.news-detail-banner .cover-image img { width: 100%; max-height: 400px; object-fit: cover; border-radius: 12px; display: block; }
.news-detail-banner .admin-thumb { position: absolute; bottom: -25px; left: 20px; width: 50px; height: 50px; border-radius: 50%; overflow: hidden; border: 3px solid #fff; box-shadow: 0 2px 10px rgba(0,0,0,0.2); z-index: 10; }
.news-detail-banner .admin-thumb img { width: 100%; height: 100%; object-fit: cover; }
.news-detail-banner .banner-info { padding-top: 15px; }
.news-detail-banner h1 { font-size: 26px; color: #fff; margin: 0 0 15px 0; line-height: 1.4; }
.news-detail-banner .meta { display: flex; align-items: center; gap: 20px; font-size: 14px; color: rgba(255,255,255,0.8); }
.news-detail-banner .meta .author { display: flex; align-items: center; gap: 6px; }
.news-detail-banner .meta .author a { color: #ffd700; text-decoration: none; font-weight: 600; }
.news-detail-banner .meta .author a:hover { color: #fff; }
.news-detail-content { padding: 50px 0; background: #f8f9fa; }
.news-detail-content .content-main { background: #fff; border-radius: 12px; padding: 30px; box-shadow: 0 2px 15px rgba(0,0,0,0.05); margin-bottom: 30px; }
.news-detail-content .course-intro { background: linear-gradient(135deg, var(--primary), #003366); border-radius: 12px; padding: 30px; color: #fff; margin: 30px 0; }
.news-detail-content .course-intro h3 { font-size: 20px; margin: 0 0 15px 0; color: #fff; }
.news-detail-content .course-intro .intro-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; align-items: center; }
.news-detail-content .course-intro .intro-text p { font-size: 14px; color: rgba(255,255,255,0.85); line-height: 1.7; margin-bottom: 10px; }
.news-detail-content .course-intro .intro-list { list-style: none; padding: 0; margin: 0; }
.news-detail-content .course-intro .intro-list li { display: flex; align-items: center; gap: 8px; padding: 8px 0; font-size: 14px; color: rgba(255,255,255,0.9); }
.news-detail-content .course-intro .intro-list li i { color: #ffd700; }
.news-detail-content .course-intro .intro-image img { width: 100%; border-radius: 10px; }
.news-detail-content .why-section { margin: 30px 0; }
.news-detail-content .why-section h3 { font-size: 20px; color: #333; margin-bottom: 15px; padding-bottom: 10px; border-bottom: 2px solid var(--primary); }
.news-detail-content .why-section p { font-size: 15px; line-height: 1.8; color: #555; }
.news-detail-content .article-text { font-size: 15px; line-height: 1.8; color: #555; }
.news-detail-content .article-text p { margin-bottom: 15px; }
.news-detail-content .article-text h3 { font-size: 20px; color: #333; margin: 25px 0 15px 0; }
/* 学员评价 */
.news-reviews { background: #fff; border-radius: 12px; padding: 25px; margin: 30px 0; }
.news-reviews h3 { font-size: 20px; color: #333; margin: 0 0 20px 0; padding-bottom: 10px; border-bottom: 2px solid var(--primary); }
.news-reviews .review-list { display: grid; grid-template-columns: repeat(3, 1fr); gap: 15px; }
.news-reviews .review-item { background: #f8f9fa; border-radius: 10px; padding: 15px; }
.news-reviews .review-item .review-name { font-size: 14px; font-weight: 600; color: #333; margin-bottom: 8px; }
.news-reviews .review-item .review-text { font-size: 13px; color: #666; line-height: 1.6; }
/* 预约表单 */
.news-book-form { background: linear-gradient(135deg, var(--primary), #003366); border-radius: 12px; padding: 30px; color: #fff; margin: 30px 0; }
.news-book-form h3 { font-size: 22px; margin: 0 0 8px 0; color: #fff; }
.news-book-form p { font-size: 13px; color: rgba(255,255,255,0.8); margin-bottom: 20px; }
.news-book-form .form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 15px; margin-bottom: 15px; }
.news-book-form .form-group { margin-bottom: 0; }
.news-book-form .form-group label { display: block; font-size: 13px; color: rgba(255,255,255,0.9); margin-bottom: 6px; }
.news-book-form .form-group input, .news-book-form .form-group textarea { width: 100%; padding: 10px 12px; border: 1px solid rgba(255,255,255,0.3); border-radius: 8px; background: rgba(255,255,255,0.1); color: #fff; font-size: 14px; }
.news-book-form .form-group input::placeholder, .news-book-form .form-group textarea::placeholder { color: rgba(255,255,255,0.5); }
.news-book-form .form-group textarea { min-height: 70px; resize: vertical; }
.news-book-form .submit-btn { width: 100%; padding: 12px; background: var(--secondary); color: #fff; border: none; border-radius: 8px; font-size: 15px; cursor: pointer; transition: all 300ms ease; margin-top: 15px; }
.news-book-form .submit-btn:hover { background: #cc5500; }
/* 右侧新闻列表 */
.sidebar-news .news-item { display: flex; gap: 12px; padding: 12px 0; border-bottom: 1px solid #eee; }
.sidebar-news .news-item:last-child { border-bottom: none; }
.sidebar-news .news-item .item-image { flex: 0 0 100px; border-radius: 8px; overflow: hidden; aspect-ratio: 16/9; }
.sidebar-news .news-item .item-image img { width: 100%; height: 100%; object-fit: cover; }
.sidebar-news .news-item .item-content { flex: 1; }
.sidebar-news .news-item .item-content h5 { margin: 0 0 5px 0; font-size: 14px; line-height: 1.4; }
.sidebar-news .news-item .item-content h5 a { color: #333; text-decoration: none; }
.sidebar-news .news-item .item-content h5 a:hover { color: var(--primary); }
.sidebar-news .news-item .item-content .item-date { font-size: 12px; color: #999; }
.sidebar-news .news-item .item-content .item-campus { font-size: 12px; color: var(--primary); margin-top: 3px; }
.sidebar-news .news-item .item-content .item-campus a { color: var(--primary); text-decoration: none; }
/* 侧边栏通用样式 */
.sidebar-consult { background: #fff; border-radius: 12px; padding: 20px; margin-bottom: 20px; box-shadow: 0 2px 10px rgba(0,0,0,0.05); }
.sidebar-news-wrap { background: #fff; border-radius: 12px; padding: 20px; box-shadow: 0 2px 10px rgba(0,0,0,0.05); }
.sidebar-widget-title { font-size: 18px; color: #333; margin: 0 0 15px 0; padding-bottom: 10px; border-bottom: 2px solid var(--primary); }
.sidebar-btn-group { display: flex; gap: 10px; flex-wrap: wrap; }
.sidebar-btn { display: inline-flex; align-items: center; gap: 6px; padding: 10px 15px; color: #fff; border-radius: 20px; font-size: 13px; text-decoration: none; cursor: pointer; }
.sidebar-btn-weixin { background: var(--primary); }
.sidebar-btn-weixin:hover { background: var(--primary-light); }
.sidebar-btn-appointment { background: var(--secondary); }
.sidebar-btn-appointment:hover { background: #cc5500; }
.sidebar-btn-chat { background: #07c160; }
.sidebar-btn-chat:hover { background: #06a050; }
@media (max-width: 768px) {
    .news-detail-banner h1 { font-size: 20px; }
    .news-detail-content .course-intro .intro-grid { grid-template-columns: 1fr; }
    .news-reviews .review-list { grid-template-columns: 1fr; }
    .news-book-form .form-row { grid-template-columns: 1fr; }
    .sidebar-news .news-item .item-image { flex: 0 0 80px; }
}
/* ============================ 课程列表页样式 ============================ */
.category-details { padding-top: 40px; padding-bottom: 60px; }
/* 侧边栏预约表单 */
.sidebar-search { margin-top: 0; padding: 25px; border-radius: 12px; }
.sidebar-search .widget-title { margin-bottom: 15px; padding-bottom: 12px; border-bottom: 2px solid #e0e0e0; }
.sidebar-search .widget-title h3 { margin: 0; font-size: 18px; color: #333; }
.sidebar-search .form-group { margin-bottom: 15px; }
.sidebar-search .form-control { width: 100%; padding: 12px 15px; border: 1px solid #ddd; border-radius: 8px; font-size: 14px; }
.sidebar-search .btn-submit { width: 100%; padding: 12px; border-radius: 8px; font-size: 15px; }
/* 课程卡片 */
.courses-list-wrap .lower-box { justify-content: space-between; align-items: center; }
.courses-list-wrap .lower-hint { font-size: 12px; color: #999; }
.courses-list-wrap .action-icons { display: flex; gap: 10px; }
/* ============================ 课程详情页样式 ============================ */
.course-detail-banner { position: relative; background: linear-gradient(135deg, var(--primary), #003366); padding: 40px 0; }
.course-detail-banner .course-header { display: flex; gap: 30px; margin-bottom: 30px; }
.course-detail-banner .course-image { flex: 0 0 400px; border-radius: 12px; overflow: hidden; box-shadow: 0 10px 30px rgba(0,0,0,0.3); }
.course-detail-banner .course-image img { width: 100%; height: 280px; object-fit: cover; display: block; }
.course-detail-banner .course-info { flex: 1; color: #fff; }
.course-detail-banner .course-info h1 { font-size: 28px; margin: 0 0 15px 0; color: #fff; }
.course-detail-banner .course-info .campus-link { display: inline-flex; align-items: center; gap: 6px; color: #ffd700; font-size: 15px; text-decoration: none; margin-bottom: 15px; }
.course-detail-banner .course-info .campus-link:hover { color: #fff; }
.course-detail-banner .course-info .campus-link i { font-size: 16px; }
.course-detail-banner .course-info .course-desc { font-size: 14px; color: rgba(255,255,255,0.8); line-height: 1.6; margin-bottom: 20px; }
.course-detail-banner .course-info .course-meta { display: flex; flex-wrap: wrap; gap: 20px; font-size: 14px; color: rgba(255,255,255,0.9); }
.course-detail-banner .course-info .course-meta span { display: flex; align-items: center; gap: 6px; }
.course-detail-banner .course-info .course-meta i { color: #ffd700; }
.course-detail-banner .course-action { position: relative; z-index: 10; display: flex; gap: 15px; align-items: center; }
.course-detail-banner .course-action .action-btn { display: flex; align-items: center; gap: 8px; padding: 12px 24px; border-radius: 25px; font-size: 15px; text-decoration: none; transition: all 300ms ease; }
.course-detail-banner .course-action .action-btn i { font-size: 18px; }
.course-detail-banner .course-action .btn-book { background: #fff; color: var(--primary); box-shadow: 0 4px 15px rgba(0,0,0,0.2); }
.course-detail-banner .course-action .btn-book:hover { transform: translateY(-2px); box-shadow: 0 6px 20px rgba(0,0,0,0.3); }
.course-detail-banner .course-action .btn-chat { background: var(--secondary); color: #fff; box-shadow: 0 4px 15px rgba(255,102,0,0.3); }
.course-detail-banner .course-action .btn-chat:hover { transform: translateY(-2px); box-shadow: 0 6px 20px rgba(255,102,0,0.4); }
.course-detail-banner .course-action .contact-icons { display: flex; gap: 10px; margin-left: 15px; }
.course-detail-banner .course-action .contact-icons a { display: flex; align-items: center; justify-content: center; width: 40px; height: 40px; border-radius: 50%; background: rgba(255,255,255,0.2); color: #fff; font-size: 18px; transition: all 300ms ease; }
.course-detail-banner .course-action .contact-icons a:hover { background: rgba(255,255,255,0.4); transform: scale(1.1); }
/* 课程详情内容区 */
.course-content-wrap { padding: 50px 0; }
.course-content-wrap .content-main { background: #fff; border-radius: 12px; padding: 30px; box-shadow: 0 2px 15px rgba(0,0,0,0.05); margin-bottom: 30px; }
.course-content-wrap .content-main h3 { font-size: 22px; color: #333; margin: 0 0 20px 0; padding-bottom: 15px; border-bottom: 2px solid var(--primary); }
.course-content-wrap .content-main .course-text { font-size: 15px; line-height: 1.8; color: #555; }
.course-content-wrap .content-main .course-text p { margin-bottom: 15px; }
.course-content-wrap .content-main .why-list { list-style: none; padding: 0; margin: 0; }
.course-content-wrap .content-main .why-list li { display: flex; align-items: flex-start; gap: 12px; padding: 12px 0; border-bottom: 1px solid #eee; font-size: 15px; color: #555; }
.course-content-wrap .content-main .why-list li:last-child { border-bottom: none; }
.course-content-wrap .content-main .why-list li i { color: var(--secondary); margin-top: 3px; }
/* 预约表单 */
.course-book-form { background: linear-gradient(135deg, var(--primary), #003366); border-radius: 12px; padding: 30px; color: #fff; }
.course-book-form h3 { font-size: 22px; margin: 0 0 10px 0; color: #fff; }
.course-book-form p { font-size: 13px; color: rgba(255,255,255,0.8); margin-bottom: 20px; }
.course-book-form .form-group { margin-bottom: 15px; }
.course-book-form .form-group label { display: block; font-size: 13px; color: rgba(255,255,255,0.9); margin-bottom: 6px; }
.course-book-form .form-group input, .course-book-form .form-group textarea { width: 100%; padding: 12px 15px; border: 1px solid rgba(255,255,255,0.3); border-radius: 8px; background: rgba(255,255,255,0.1); color: #fff; font-size: 14px; }
.course-book-form .form-group input::placeholder, .course-book-form .form-group textarea::placeholder { color: rgba(255,255,255,0.5); }
.course-book-form .form-group textarea { min-height: 80px; resize: vertical; }
.course-book-form .submit-btn { width: 100%; padding: 14px; background: var(--secondary); color: #fff; border: none; border-radius: 8px; font-size: 16px; cursor: pointer; transition: all 300ms ease; }
.course-book-form .submit-btn:hover { background: #cc5500; transform: translateY(-2px); }
/* 相关推荐 */
.related-courses { padding: 50px 0; background: #f8f9fa; }
.related-courses .sec-title { text-align: center; margin-bottom: 40px; }
.related-courses .sec-title span { font-size: 14px; color: var(--secondary); font-weight: 600; }
.related-courses .sec-title h2 { font-size: 28px; color: #333; margin: 5px 0 0 0; }
.related-courses .course-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 20px; }
.related-courses .course-item { background: #fff; border-radius: 10px; overflow: hidden; box-shadow: 0 2px 10px rgba(0,0,0,0.06); transition: all 300ms ease; }
.related-courses .course-item:hover { transform: translateY(-5px); box-shadow: 0 8px 25px rgba(0,0,0,0.1); }
.related-courses .course-item .item-image { position: relative; aspect-ratio: 16/9; overflow: hidden; }
.related-courses .course-item .item-image img { width: 100%; height: 100%; object-fit: cover; transition: transform 300ms ease; }
.related-courses .course-item:hover .item-image img { transform: scale(1.05); }
.related-courses .course-item .item-tag { position: absolute; top: 8px; left: 8px; background: var(--secondary); color: #fff; padding: 3px 10px; border-radius: 12px; font-size: 11px; z-index: 2; }
.related-courses .course-item .item-content { padding: 15px; }
.related-courses .course-item .item-content h4 { margin: 0 0 10px 0; font-size: 15px; line-height: 1.4; }
.related-courses .course-item .item-content h4 a { color: #333; text-decoration: none; }
.related-courses .course-item .item-content h4 a:hover { color: var(--primary); }
.related-courses .course-item .item-content .item-campus { display: flex; align-items: center; gap: 5px; font-size: 13px; color: var(--primary); margin-bottom: 8px; }
.related-courses .course-item .item-content .item-campus a { color: var(--primary); text-decoration: none; }
.related-courses .course-item .item-content .item-campus a:hover { text-decoration: underline; }
.related-courses .course-item .item-content .item-actions { display: flex; gap: 8px; }
.related-courses .course-item .item-content .item-actions a { flex: 1; padding: 8px 0; text-align: center; border-radius: 15px; font-size: 12px; text-decoration: none; transition: all 300ms ease; }
.related-courses .course-item .item-content .item-actions .act-book { background: var(--primary); color: #fff; }
.related-courses .course-item .item-content .item-actions .act-chat { background: var(--secondary); color: #fff; }
@media (max-width: 768px) {
    .course-detail-banner .course-header { flex-direction: column; }
    .course-detail-banner .course-image { flex: none; width: 100%; }
    .course-detail-banner .course-image img { height: 220px; }
    .course-detail-banner .course-info h1 { font-size: 22px; }
    .course-detail-banner .course-action { flex-wrap: wrap; }
    .course-detail-banner .course-action .contact-icons { margin-left: 0; margin-top: 15px; width: 100%; }
    /* ===== 通用移动端优化 ===== */
    /* ---- 通用布局 ---- */
    .boxed-wrapper { overflow: visible; padding-top: 70px; }
    .page-wrapper { padding-top: 0; }
    body { padding-top: 0; }

    /* ---- 头部导航 ---- */
    .main-header { position: fixed; top: 0; left: 0; z-index: 999; width: 100%; background: #fff; box-shadow: 0 2px 8px rgba(0,0,0,0.06); height: 60px; }
    .main-header .header-top { display: none; }
    .main-header .header-lower { padding: 0; height: 100%; }
    .main-header .outer-box { display: flex; align-items: center; justify-content: space-between; padding: 8px 0; min-height: 60px; }
    .main-header .logo-box { padding: 0; flex: 0 0 auto; }
    .main-header .logo-box .logo img { max-width: 130px; }
    .main-header .menu-area { flex: 1; display: flex; justify-content: flex-end; align-items: center; }
    .main-header .menu-area .mobile-nav-toggler { display: flex; flex-direction: column; justify-content: center; align-items: center; width: 40px; height: 40px; padding: 8px; cursor: pointer; }
    .main-header .menu-area .mobile-nav-toggler .icon-bar { display: block; width: 24px; height: 2px; background: var(--primary); margin: 3px 0; border-radius: 2px; transition: all 0.3s ease; }
    .main-header .menu-area .main-menu { display: none; }
    .main-header .btn-box { display: none; }
    .sticky-header { display: none; }

    /* ---- 移动端菜单 ---- */
    .mobile-menu .menu-box { background: var(--primary); }
    .mobile-menu .menu-outer { padding: 20px 0; }
    .mobile-menu .menu-outer li { display: block; border-top: 1px solid rgba(255,255,255,0.1); }
    .mobile-menu .menu-outer li:first-child { border-top: 0; }
    .mobile-menu .menu-outer li a { display: block; padding: 14px 25px; font-size: 15px; font-weight: 500; color: #fff; text-decoration: none; }
    .mobile-menu .menu-outer li.current a { color: #ffd54f; font-weight: 600; }
    .mobile-menu .menu-outer li a:hover { background: rgba(255,255,255,0.1); }

    /* ---- Banner区域 ---- */
    .banner-section { padding: 70px 0 40px; min-height: auto; }
    .banner-section .content-box { padding: 0; }
    .banner-section .content-box h1 { font-size: 22px; line-height: 1.4; }
    .banner-section .content-box p { font-size: 14px; margin: 10px 0 15px; }
    .banner-section .form-inner { padding: 15px; }
    .banner-section .input-inner { flex-direction: column; }
    .banner-section .form-group { width: 100%; margin-bottom: 10px; }
    .banner-section .btn-box { width: 100%; }
    .banner-section .btn-box button { width: 100%; padding: 12px; font-size: 14px; }

    /* ---- 页面标题 ---- */
    .page-title { padding: 100px 0 30px; min-height: auto; }
    .page-title .content-box .title h1 { font-size: 24px; }
    .page-title .content-box .bread-crumb { font-size: 13px; margin-top: 10px; }
    .page-title-2 { padding: 70px 0 30px; min-height: auto; }

    /* ===== 最新课程区域 - 移动端 ===== */
    .feature-section { padding: 10px 0; background: #f5f5f5; }
    .feature-section .sec-title { text-align: center; margin-bottom: 8px; }
    .feature-section .sec-title h2 { font-size: 16px; margin-bottom: 4px; }
    .feature-section .sec-title p { font-size: 11px; color: #666; padding: 0 10px; }
    .feature-section .sec-title::after { content: ''; display: block; width: 40px; height: 3px; background: var(--secondary); margin: 6px auto 0; border-radius: 2px; }

    /* Tab切换按钮 */
    .feature-section .tabs-box .tab-btns { display: flex; gap: 5px; padding: 0 8px 8px; overflow-x: auto; white-space: nowrap; }
    .feature-section .tabs-box .tab-btn { padding: 5px 12px; font-size: 11px; border-radius: 16px; background: #fff; color: #666; border: 1px solid #ddd; flex-shrink: 0; }
    .feature-section .tabs-box .tab-btn.active-btn { background: var(--primary); color: #fff; border-color: var(--primary); }

    /* 课程卡片 - 列表样式（左右布局） */
    .feature-section .feature-block-one { margin-bottom: 6px; }
    .feature-section .feature-block-one .inner-box { display: flex; flex-direction: row; background: #fff; border-radius: 6px; overflow: hidden; box-shadow: 0 1px 3px rgba(0,0,0,0.06); }
    .feature-section .feature-block-one .image-box { width: 90px; height: 90px; flex-shrink: 0; position: relative; overflow: hidden; }
    .feature-section .feature-block-one .image-box .image { width: 100%; height: 100%; }
    .feature-section .feature-block-one .image-box .image img { width: 100%; height: 100%; object-fit: cover; }

    /* 小圆图 - 隐藏 */
    .feature-section .feature-block-one .author-box { display: none; }

    /* 课程信息 */
    .feature-section .feature-block-one .lower-content { flex: 1; padding: 6px 8px; display: flex; flex-direction: column; justify-content: center; }
    .feature-section .feature-block-one .category { font-size: 10px; color: var(--secondary); margin-bottom: 2px; display: flex; align-items: center; gap: 2px; }
    .feature-section .feature-block-one .category i { font-size: 9px; }
    .feature-section .feature-block-one .lower-content h3 { font-size: 12px; line-height: 1.3; margin: 0 0 3px; font-weight: 600; }
    .feature-section .feature-block-one .lower-content h3 a { color: #333; text-decoration: none; }

    /* 校区信息 */
    .feature-section .feature-block-one .info { list-style: none; padding: 0; margin: 0 0 3px; }
    .feature-section .feature-block-one .info li { font-size: 10px; color: #888; margin-bottom: 1px; display: flex; align-items: center; gap: 2px; }
    .feature-section .feature-block-one .info li i { color: var(--secondary); font-size: 9px; }
    .feature-section .feature-block-one .info li a { color: #888; text-decoration: none; }

    /* 底部操作区 */
    .feature-section .feature-block-one .lower-box { display: flex; justify-content: space-between; align-items: center; padding-top: 4px; border-top: 1px solid #f0f0f0; }
    .feature-section .feature-block-one .lower-box h5 { font-size: 9px; color: #aaa; margin: 0; font-weight: normal; }
    .feature-section .feature-block-one .lower-box h5 span { color: var(--primary); }
    .feature-section .feature-block-one .react-box { display: flex; gap: 4px; }
    .feature-section .feature-block-one .react-box li { list-style: none; }
    .feature-section .feature-block-one .react-box li a { width: 24px; height: 24px; border-radius: 50%; background: #f5f5f5; display: flex; align-items: center; justify-content: center; color: var(--primary); font-size: 10px; text-decoration: none; transition: all 0.2s ease; }
    .feature-section .feature-block-one .react-box li a:hover { background: var(--primary); color: #fff; }

    /* ===== 热门校区区域 - 移动端 ===== */
    .place-section { padding: 10px 0; background: var(--primary); }
    .place-section .sec-title { text-align: center; margin-bottom: 8px; }
    .place-section .sec-title h2 { font-size: 16px; margin-bottom: 4px; color: #fff; }
    .place-section .sec-title p { font-size: 11px; color: rgba(255,255,255,0.7); padding: 0 10px; }
    .place-section .sec-title::after { content: ''; display: block; width: 40px; height: 3px; background: var(--secondary); margin: 6px auto 0; border-radius: 2px; }

    /* 校区卡片 - 网格样式（2列布局） */
    .place-section .inner-content { padding: 0 8px; }
    .place-section .inner-content .row { display: grid; grid-template-columns: repeat(2, 1fr); gap: 6px; }
    .place-section .place-block { margin-bottom: 0; }
    .place-section .place-block-one .inner-box { background: rgba(255,255,255,0.1); border-radius: 6px; overflow: hidden; border: 1px solid rgba(255,255,255,0.15); }
    .place-section .place-block-one .image-box { width: 100%; height: 70px; position: relative; overflow: hidden; }
    .place-section .place-block-one .image-box img { width: 100%; height: 100%; object-fit: cover; }
    .place-section .place-block-one .lower-content { padding: 6px 8px; text-align: center; }
    .place-section .place-block-one .lower-content .inner h3 { font-size: 11px; margin: 0 0 2px; font-weight: 600; line-height: 1.3; }
    .place-section .place-block-one .lower-content .inner h3 a { color: #fff; text-decoration: none; }
    .place-section .place-block-one .lower-content .inner span { font-size: 9px; color: rgba(255,255,255,0.7); display: block; }
    .place-section .place-block-one .lower-content .inner span i { color: rgba(255,255,255,0.7); font-size: 9px; margin-right: 2px; }

    /* ===== 其他模块通用样式 ===== */
    /* 金品质区域 */
    .category-section { padding: 20px 0; }
    .category-section .sec-title h2 { font-size: 20px; }
    .category-section .sec-title p { font-size: 13px; }
    .category-section .inner-content { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; padding: 0 5px; }
    .category-section .category-block-one .inner-box { padding: 10px 6px; background: #fff; border-radius: 8px; box-shadow: 0 1px 4px rgba(0,0,0,0.06); }
    .category-section .category-block-one .icon-box { font-size: 22px; margin-bottom: 6px; color: var(--primary); }
    .category-section .category-block-one h5 { font-size: 11px; line-height: 1.3; color: #333; margin: 0; }

    /* 热门课程区域 */
    .feature-style-two { padding: 10px 0; background: #f5f5f5; }
    .feature-style-two .sec-title h2 { font-size: 16px; margin-bottom: 4px; }
    .feature-style-two .sec-title p { font-size: 11px; }
    .feature-style-two .feature-block { margin-bottom: 6px; }
    .feature-style-two .feature-block .inner-box { border-radius: 6px; overflow: hidden; background: #fff; box-shadow: 0 1px 3px rgba(0,0,0,0.06); }
    .feature-style-two .feature-block .image-box { height: 100px; position: relative; }
    .feature-style-two .feature-block .image-box .image img { width: 100%; height: 100%; object-fit: cover; }
    .feature-style-two .feature-block .lower-content { padding: 8px; }
    .feature-style-two .feature-block .lower-content h4 { font-size: 12px; margin: 0 0 4px; line-height: 1.3; }
    .feature-style-two .feature-block .lower-content h4 a { color: #333; }
    .feature-style-two .feature-block .lower-content .info { margin: 0 0 6px; padding: 0; list-style: none; }
    .feature-style-two .feature-block .lower-content .info li { font-size: 10px; color: #888; margin-bottom: 1px; }
    .feature-style-two .feature-block .lower-content .lower-box { display: flex; gap: 5px; justify-content: center; padding-top: 5px; border-top: 1px solid #eee; }
    .feature-style-two .feature-block .lower-content .action-btn { padding: 5px 10px; border-radius: 12px; font-size: 10px; text-decoration: none; display: inline-flex; align-items: center; gap: 2px; }
    .feature-style-two .feature-block .lower-content .btn-primary { background: var(--primary); color: #fff; }
    .feature-style-two .feature-block .lower-content .btn-secondary { background: var(--secondary); color: #fff; }

    /* 新闻列表 */
    .news-section.sec-pad-2 { padding: 10px 0; }
    .news-section .news-block-one { margin-bottom: 6px; }
    .news-section .news-block-one .inner-box { border-radius: 6px; overflow: hidden; background: #fff; box-shadow: 0 1px 3px rgba(0,0,0,0.06); }
    .news-section .news-block-one .image-box { height: 110px; position: relative; overflow: visible; }
    .news-section .news-block-one .image-box img { width: 100%; height: 100%; object-fit: cover; }
    .news-section .news-block-one .admin-thumb { display: none; }
    .news-section .news-block-one .lower-content { padding: 10px; }
    .news-section .news-block-one .lower-content h3 { font-size: 12px; margin: 0 0 4px; line-height: 1.3; }
    .news-section .news-block-one .lower-content h3 a { color: #333; }
    .news-section .news-block-one .lower-content p { font-size: 10px; color: #888; line-height: 1.4; margin: 0 0 6px; }
    .news-section .news-block-one .card-footer { display: flex; justify-content: space-between; align-items: center; padding-top: 4px; border-top: 1px solid #f0f0f0; }
    .news-section .news-block-one .post-info { font-size: 9px; color: #999; }
    .news-section .news-block-one .post-info a { color: var(--primary); }
    .news-section .news-block-one .btn-chat { padding: 4px 8px; font-size: 9px; border-radius: 8px; background: var(--secondary); color: #fff; text-decoration: none; }

    /* 评价区块 */
    .testimonial-section { padding: 30px 0; background: #f5f5f5; }
    .testimonial-section .sec-title h2 { font-size: 20px; }
    .testimonial-section .sec-title p { font-size: 13px; }
    .testimonial-block { margin-bottom: 15px; padding: 15px; background: #fff; border-radius: 10px; box-shadow: 0 2px 6px rgba(0,0,0,0.06); }
    .testimonial-block p { font-size: 14px; color: #333; line-height: 1.6; margin: 0 0 10px; }
    .testimonial-block .author { display: flex; align-items: center; gap: 10px; }
    .testimonial-block .author h4 { font-size: 14px; color: #333; margin: 0; font-weight: 600; }
    .testimonial-block .author span { font-size: 12px; color: #999; }

    /* 定价区块 */
    .pricing-section { padding: 30px 0; background: #fff; }
    .pricing-section .sec-title h2 { font-size: 20px; }
    .pricing-section .sec-title p { font-size: 13px; }
    .pricing-block { margin-bottom: 15px; }
    .pricing-table { padding: 15px; background: #fff; border-radius: 10px; box-shadow: 0 2px 8px rgba(0,0,0,0.06); border: 1px solid #eee; }
    .teble-header { padding: 10px; background: var(--primary); border-radius: 8px 8px 0 0; text-align: center; }
    .teble-header p { font-size: 12px; color: rgba(255,255,255,0.8); margin: 0 0 4px; }
    .teble-header h2 { font-size: 22px; color: #fff; margin: 0; }
    .table-content { padding: 15px 10px; }
    .table-content .list { list-style: none; padding: 0; margin: 0 0 15px; }
    .table-content .list li { font-size: 13px; color: #666; padding: 6px 0; border-bottom: 1px solid #f5f5f5; display: flex; align-items: center; gap: 8px; }
    .table-content .list li i { color: var(--secondary); }
    .table-footer { padding: 10px; text-align: center; }
    .table-footer a { display: block; padding: 12px; border-radius: 8px; background: var(--primary); color: #fff; font-size: 14px; text-decoration: none; }

    /* 底部 */
    .footer { padding: 20px 0 80px; background: #1a1a2e; }
    .footer-widget { margin-bottom: 15px; }
    .footer-widget h4 { font-size: 14px; color: #fff; margin: 0 0 10px; font-weight: 600; }
    .footer-widget p { font-size: 12px; color: rgba(255,255,255,0.6); line-height: 1.6; margin: 0; }
    .footer-widget .footer-logo { margin-bottom: 10px; }
    .footer-widget .footer-logo img { max-width: 120px; filter: brightness(1.2); }
    .footer-news-item { margin-bottom: 10px; display: flex; gap: 10px; }
    .footer-news-item .image { width: 50px; height: 50px; flex-shrink: 0; border-radius: 6px; overflow: hidden; }
    .footer-news-item .image img { width: 100%; height: 100%; object-fit: cover; }
    .footer-news-item .text h4 { font-size: 12px; margin: 0 0 4px; font-weight: normal; }
    .footer-news-item .text h4 a { color: rgba(255,255,255,0.8); text-decoration: none; }
    .footer-news-item .text h4 a:hover { color: #fff; }
    .footer-news-item .text p { font-size: 10px; color: rgba(255,255,255,0.4); margin: 0; }
    .footer-bottom { padding-top: 15px; border-top: 1px solid rgba(255,255,255,0.1); text-align: center; }
    .footer-bottom p { font-size: 11px; color: rgba(255,255,255,0.5); margin: 0; }
    .footer-contact { list-style: none; padding: 0; margin: 10px 0 0; }
    .footer-contact li { font-size: 12px; color: rgba(255,255,255,0.7); padding: 4px 0; display: flex; align-items: center; gap: 8px; }
    .footer-contact li i { color: var(--secondary); width: 16px; }
    .footer-contact li a { color: rgba(255,255,255,0.7); text-decoration: none; }
    .footer-contact li a:hover { color: #fff; }

    /* 咨询按钮 */
    .floating-buttons { bottom: 20px; right: 15px; gap: 12px; }
    .floating-btn { width: 48px; height: 48px; font-size: 20px; }

    /* 课程列表页 */
    .category-details { padding: 20px 0; }
    .category-details .item-shorting { padding: 12px 0; margin-bottom: 15px; }
    .category-details .item-shorting .text p { font-size: 13px; color: #666; }
    .category-details .item-shorting .text strong { color: #333; }

    /* 分页 */
    .pagination-wrap { margin: 20px 0; }
    .pagination-wrap ul { display: flex; flex-wrap: wrap; gap: 6px; justify-content: center; }
    .pagination-wrap ul li a { min-width: 36px; height: 36px; line-height: 36px; font-size: 13px; padding: 0 8px; border-radius: 4px; background: #fff; color: #333; border: 1px solid #ddd; text-align: center; }
    .pagination-wrap ul li a:hover, .pagination-wrap ul li.active a { background: var(--primary); color: #fff; border-color: var(--primary); }

    /* 预约表单 */
    .course-book-form, .sidebar-search { padding: 15px; margin: 0 0 15px; background: #fff; border-radius: 10px; box-shadow: 0 2px 8px rgba(0,0,0,0.06); border: 1px solid #eee; }
    .course-book-form h3, .sidebar-search h3 { font-size: 16px; color: #333; margin: 0 0 12px; padding-bottom: 10px; border-bottom: 1px solid #eee; }
    .form-group { margin-bottom: 12px; }
    .form-group label { font-size: 13px; color: #666; margin-bottom: 5px; display: block; }
    .form-group input, .form-group select, .form-group textarea { width: 100%; padding: 10px 12px; font-size: 14px; border: 1px solid #ddd; border-radius: 6px; background: #fafafa; }
    .form-group input:focus, .form-group select:focus, .form-group textarea:focus { border-color: var(--primary); outline: none; background: #fff; }
    .submit-btn, .btn-theme { width: 100%; padding: 12px; font-size: 14px; background: var(--primary); color: #fff; border: none; border-radius: 6px; cursor: pointer; text-align: center; display: block; text-decoration: none; }

    /* 关于页面 */
    .about-section { padding: 20px 0; }
    .about-section .content-box .sec-title h2 { font-size: 20px; }
    .about-section .content-box .text p { font-size: 14px; line-height: 1.7; color: #666; }
    .about-section .image-box { margin-top: 20px; height: 200px; border-radius: 10px; overflow: hidden; }
    .about-section .image-box img { width: 100%; height: 100%; object-fit: cover; }
    .process-section { padding: 30px 0; }
    .process-section .sec-title h2 { font-size: 20px; }
    .process-block-one { margin-bottom: 15px; }
    .process-block-one .inner-box { padding: 15px; background: #fff; border-radius: 10px; box-shadow: 0 2px 6px rgba(0,0,0,0.06); text-align: center; }
    .process-block-one .count { font-size: 28px; color: var(--secondary); font-weight: 700; margin-bottom: 8px; }
    .process-block-one .text h3 { font-size: 14px; color: #333; margin: 0 0 6px; }
    .process-block-one .text p { font-size: 13px; color: #888; margin: 0; line-height: 1.5; }

    /* 联系页面 */
    .contact-section { padding: 20px 0; }
    .contact-info-inner { padding: 15px; background: #fff; border-radius: 10px; margin-bottom: 15px; box-shadow: 0 2px 6px rgba(0,0,0,0.06); }
    .contact-info-inner .sec-title h2 { font-size: 18px; margin-bottom: 12px; }
    .contact-info-inner .single-box { margin-bottom: 15px; }
    .contact-info-inner .single-box h3 { font-size: 14px; color: #333; margin: 0 0 8px; }
    .contact-info-inner .single-box .list { list-style: none; padding: 0; margin: 0; }
    .contact-info-inner .single-box .list li { font-size: 13px; color: #666; padding: 4px 0; display: flex; align-items: center; gap: 8px; }
    .contact-info-inner .single-box .list li i { color: var(--secondary); }
    .contact-section .form-inner { padding: 15px; background: #fff; border-radius: 10px; box-shadow: 0 2px 6px rgba(0,0,0,0.06); }
    .contact-section .form-inner h2 { font-size: 18px; margin: 0 0 15px; }

    /* 课程详情页 */
    .course-detail-banner { padding: 70px 0 20px; background: var(--primary); }
    .course-detail-banner .course-header { flex-direction: column; }
    .course-detail-banner .course-image { flex: none; width: 100%; margin-bottom: 15px; }
    .course-detail-banner .course-image img { height: 200px; object-fit: cover; border-radius: 10px; }
    .course-detail-banner .course-info { padding: 0; }
    .course-detail-banner .course-info h1 { font-size: 20px; color: #fff; margin: 0 0 10px; }
    .course-detail-banner .course-info .campus-link { color: #ffd700; font-size: 14px; text-decoration: none; display: inline-flex; align-items: center; gap: 4px; margin-bottom: 10px; }
    .course-detail-banner .course-meta { color: rgba(255,255,255,0.8); font-size: 13px; margin-bottom: 15px; }
    .course-detail-banner .course-meta span { display: flex; align-items: center; gap: 4px; margin-bottom: 4px; }
    .course-action { flex-wrap: wrap; gap: 10px; }
    .course-action .action-btn { padding: 10px 16px; border-radius: 20px; font-size: 13px; text-decoration: none; display: inline-flex; align-items: center; gap: 6px; }
    .course-action .btn-primary { background: var(--secondary); color: #fff; }
    .course-action .btn-outline { background: rgba(255,255,255,0.2); color: #fff; border: 1px solid rgba(255,255,255,0.3); }
    .course-action .contact-icons { margin-left: 0; width: 100%; display: flex; gap: 10px; justify-content: center; }
    .course-action .contact-icons li { list-style: none; }
    .course-action .contact-icons li a { width: 40px; height: 40px; border-radius: 50%; background: rgba(255,255,255,0.2); color: #fff; display: flex; align-items: center; justify-content: center; font-size: 16px; }

    /* 新闻详情页 */
    .news-detail-banner { padding: 70px 0 20px; background: var(--primary); }
    .news-detail-banner .detail-title { font-size: 20px; color: #fff; line-height: 1.4; margin: 0 0 15px; }
    .news-detail-banner .meta { font-size: 13px; color: rgba(255,255,255,0.7); display: flex; flex-wrap: wrap; gap: 15px; }
    .news-detail-banner .meta a { color: rgba(255,255,255,0.8); text-decoration: none; }
    .news-detail-content { padding: 20px 0; }
    .news-detail-content .article-content { font-size: 14px; line-height: 1.8; color: #333; }
    .news-detail-content .article-content p { margin: 0 0 15px; }
    .news-sidebar { margin-top: 30px; }
    .news-sidebar h3 { font-size: 16px; color: #333; margin: 0 0 12px; padding-bottom: 10px; border-bottom: 2px solid var(--primary); }
    .news-sidebar .related-item { display: flex; gap: 10px; padding: 10px 0; border-bottom: 1px solid #eee; }
    .news-sidebar .related-item .image { width: 80px; height: 60px; flex-shrink: 0; border-radius: 6px; overflow: hidden; }
    .news-sidebar .related-item .image img { width: 100%; height: 100%; object-fit: cover; }
    .news-sidebar .related-item .text h4 { font-size: 13px; margin: 0 0 4px; line-height: 1.4; }
    .news-sidebar .related-item .text h4 a { color: #333; text-decoration: none; }
    .news-sidebar .related-item .text p { font-size: 11px; color: #999; margin: 0; }

    /* 相关推荐 */
    .related-courses { padding: 20px 0; }
    .related-courses .sec-title h2 { font-size: 18px; margin-bottom: 15px; }
    .related-courses .course-grid { grid-template-columns: 1fr; gap: 15px; }

    /* 试听页面 */
    .shiting-section { padding: 20px 0; }
    .shiting-section .sec-title h2 { font-size: 20px; }
    .shiting-section .info-list { padding: 15px; background: #fff; border-radius: 10px; margin-bottom: 15px; }
    .shiting-section .info-list li { font-size: 13px; color: #666; padding: 8px 0; border-bottom: 1px solid #f0f0f0; display: flex; align-items: center; gap: 8px; }
    .shiting-section .info-list li i { color: var(--secondary); width: 20px; }

    /* 统一隐藏动画效果 */
    .wow { visibility: visible !important; animation: none !important; }
}