.page-courses { background: #fff; }
.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.course-hero { position:relative; overflow:visible; height:460px; min-height:460px; padding:0; color:#17233b; background:linear-gradient(180deg,#BAC8E0 0%,#E5ECF9 100%); background-image:url('../../assets/images/banner-bg.jpg'); background-position:center center; background-size:cover; background-repeat:no-repeat; }
.course-hero.hero-aigc { background:linear-gradient(180deg,#BAC8E0 0%,#E5ECF9 100%); background-image:url('../../assets/images/banner-aigc@2x.jpg'); background-position:center center; background-size:cover; background-repeat:no-repeat; }
.course-hero .hero-copy { display:none; }
.course-hero.hero-bigdata { height:460px; min-height:460px; background:linear-gradient(180deg,#BAC8E0 0%,#E5ECF9 100%); background-image:url('../../assets/images/banner@2x.png'); background-position:center center; background-size:cover; background-repeat:no-repeat; }
.course-hero.hero-bigdata .schedule-card { top:305px; }
.course-hero.hero-bigdata .hero-symbol { display:none; }
.hero-grid { position:absolute; inset:0; opacity:.3; background-image:linear-gradient(rgba(85,133,216,.11) 1px,transparent 1px),linear-gradient(90deg,rgba(85,133,216,.11) 1px,transparent 1px); background-size:52px 52px; mask-image:linear-gradient(#000,transparent 78%); }
.hero-grid::after { position:absolute; right:-80px; top:-170px; width:670px; height:670px; content:""; border:1px solid rgba(76,133,233,.22); border-radius:50%; box-shadow:0 0 0 70px rgba(91,148,241,.07),0 0 0 140px rgba(91,148,241,.04); }
.hero-inner { position:relative; z-index:1; min-height:320px; display:block; }
.hero-copy { padding-left:72px; max-width:600px; }.hero-kicker { color:#7eb8ff; font-size:12px; font-weight:800; letter-spacing:.16em; }.hero-copy h1 { margin:19px 0 15px; font-size:clamp(38px,4.5vw,54px); line-height:1.2; letter-spacing:-.02em; color:#fff; }.hero-copy h1 em { font-style:normal; font-size:.57em; font-weight:700; color:#7eb8ff; letter-spacing:-.04em; }.hero-copy p { max-width:500px; margin:0; color:rgba(255,255,255,.85); font-size:15px; line-height:1.85; }
.hero-symbol { width:240px; height:240px; display:grid; place-content:center; justify-self:center; color:#fff; text-align:center; border:1px solid rgba(255,255,255,.95); border-radius:45% 55% 52% 48%; background:radial-gradient(circle at 32% 25%,#8de7ff,#5c83ef 44%,#7054df); box-shadow:0 26px 70px rgba(52,108,212,.3),inset 0 0 40px rgba(255,255,255,.25); transform:rotate(-7deg); }.hero-bigdata .hero-symbol { background:radial-gradient(circle at 32% 25%,#8ff5ff,#3e91ea 43%,#575ed2); }.hero-symbol b { font-size:68px; line-height:1; letter-spacing:-.1em; }.hero-symbol span { margin-top:10px; font-size:9px; letter-spacing:.22em; }
.hero-art { display:none; }
.schedule-card { position:absolute; z-index:3; top:380px; right:max(20px,calc((100% - 1180px)/2)); left:max(20px,calc((100% - 1180px)/2)); width:auto; margin:0; transform:none; display:grid; grid-template-columns:0.85fr 1fr 1fr; color:#17233b; border-radius:22px; background:#fff; box-shadow:0 22px 56px rgba(47,93,169,.18); }.schedule-card>div { min-width:0; padding:25px 30px; }.schedule-card>div+div { border-left:1px dashed #dbe4f1; }.mini-label { color:#3979e1; font-size:10px; font-weight:900; letter-spacing:.14em; }.schedule-campus h2 { margin:6px 0 3px; font-size:20px; }.schedule-campus p { margin:0 0 16px; color:#8190a4; font-size:11px; }.schedule-campus label { position:relative; display:block; width:210px; }.schedule-campus select { width:100%; height:40px; appearance:none; padding:0 36px 0 14px; color:#333; border:1px solid #377dff; border-radius:8px; outline:0; background:#fff; font-size:13px; font-weight:500; cursor:pointer; }.schedule-campus label i { position:absolute; right:14px; top:8px; color:#3578ef; font-style:normal; font-size:18px; pointer-events:none; }.schedule-heading { display:flex; align-items:baseline; gap:8px; }.schedule-heading>span { color:#80a5df; font-size:10px; font-weight:900; }.schedule-heading h3 { margin:0; font-size:17px; }.schedule-heading small { margin-left:auto; color:#a4b1c2; font-size:8px; letter-spacing:.1em; }.schedule-column ul { display:grid; gap:8px; margin:15px 0 0; padding:0; list-style:none; }.schedule-column li { display:grid; grid-template-columns:auto auto auto; gap:16px; align-items:center; color:#2f3848; font-size:12px; margin:0; padding:8px 0; }.schedule-column li::before { display:none; }.schedule-column li .schedule-class { font-size:12px; font-weight:400; color:#2f3848; min-width:80px; }.schedule-column li .schedule-date { font-size:12px; font-weight:500; color:#1a1a1a; white-space:nowrap; }.schedule-column li em { white-space:nowrap; font-weight:400; font-style:normal; color:#2f3848; margin-left:auto; }.status-sold { color:#2f3848; }.status-reserve { color:#2f3848; }.status-soon { color:#2f3848; }.schedule-empty { color:#8996a7!important; }
.course-tabs { position:relative; z-index:5; display:flex; justify-content:center; gap:12px; margin-top:30px; }.course-tabs button { min-width:245px; display:grid; grid-template-columns:32px 1fr; column-gap:8px; align-items:center; padding:13px 21px; text-align:left; border:1px solid #dce7f6; border-radius:15px; background:#fff; box-shadow:0 10px 27px rgba(45,93,163,.09); cursor:pointer; transition:.2s ease; }.course-tabs button:hover { transform:translateY(-2px); }.course-tabs button.is-active { color:#fff; border-color:transparent; background:linear-gradient(135deg,#286af4,#725fe8); }.course-tabs span { grid-row:1/3; color:#7da4e9; font-size:11px; font-weight:900; }.course-tabs button.is-active span { color:#b8e9f8; }.course-tabs b { font-size:15px; }.course-tabs small { color:#8b99ab; font-size:10px; }.course-tabs button.is-active small { color:#deebff; }
.course-content { padding-top:70px; }.module { padding-bottom:100px; }.module-aigc { padding-top:140px; }.course-content > .curriculum-module:first-child { padding-top:140px; }.course-content > .industry-module:first-child { padding-top:140px; }.module-title { margin:0 auto 38px; text-align:center; }.module-title>span { color:#4d82e5; font-size:10px; font-weight:900; letter-spacing:.16em; }.module-title h2 { margin:7px 0 4px; font-family: AlimamaShuHeiTi, AlimamaShuHeiTi; font-weight: bold; font-size: 32px; color: #333333; letter-spacing:-.05em; }.module-title p { max-width:800px; margin:0 auto; color:#718097; font-size:13px; }
.aigc-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }.aigc-grid article { position:relative; min-height:430px; overflow:hidden; padding:28px 29px 0; border-radius:21px; background:linear-gradient(155deg,#f1fbff,#d9e9ff 72%,#eef1ff); }.aigc-grid h3,.aigc-grid p { position:relative; z-index:2; }.aigc-grid h3 { margin:0 0 10px; font-size:22px; }.aigc-grid p { margin:0; color:#748299; font-size:13px; }.aigc-art { position:absolute; right:-5%; bottom:-6%; width:88%; height:58%; display:grid; place-items:center; overflow:visible; }.aigc-art img { width:100%; height:100%; object-fit:contain; }
.curriculum-layout { display:grid; grid-template-columns:285px 1fr; min-height:430px; background:#eef5ff; border-radius:21px; overflow:hidden; box-shadow:0 10px 40px rgba(47,93,169,.1); }.curriculum-layout aside { position:relative; padding:0 0 22px; color:#fff; background:linear-gradient(160deg,#4eb6eb,#3e6be5); }.curriculum-layout aside h3 { margin:18px 15px 12px; padding:14px 20px; font-size:20px; border-radius:14px; background:linear-gradient(135deg,#1a56d6,#2563eb); box-shadow:0 4px 14px rgba(26,86,214,.4); }.curriculum-layout aside button { width:100%; display:flex; gap:10px; align-items:center; padding:15px 28px; color:#fff; border:0; border-bottom:1px dashed rgba(255,255,255,.22); background:transparent; text-align:left; font-size:14px; cursor:pointer; transition:background .2s ease; }.curriculum-layout aside button img { width:20px; height:20px; object-fit:contain; flex-shrink:0; }.curriculum-layout aside button span { width:22px; color:#c9e7ff; font-size:10px; }.curriculum-layout aside button.is-active { background:rgba(255,255,255,.25); font-weight:600; }.curriculum-content { position:relative; padding:32px 42px; background:#fff; }.curriculum-content .hours { position:absolute; right:28px; top:24px; padding:7px 18px; color:#3978e4; border-radius:20px; background:#e6efff; font-size:11px; }.curriculum-content>h3 { margin:0 0 25px; padding-bottom:14px; border-bottom:1px solid #e8edf4; font-size:23px; }.curriculum-block { margin:22px 0; }.curriculum-block h4 { margin:0 0 12px; font-size:16px; display:flex; align-items:center; gap:8px; }.curriculum-block h4 img { width:18px; height:18px; object-fit:contain; }.curriculum-block h4 i { margin-right:8px; color:#f07b47; font-style:normal; }.curriculum-block h4 i.green { color:#48c86c; }.curriculum-block ol { display:grid; grid-template-columns:repeat(2,1fr); gap:10px 30px; margin:0; padding-left:18px; color:#53637a; font-size:12px; line-height:1.7; }.book-art { position:absolute; right:0; bottom:0; width:255.79px; height:203px; opacity:.95; }.book-art img { width:100%; height:100%; object-fit:contain; }
.suitable-grid { display:grid; grid-template-columns:repeat(3,1fr); padding:26px 32px; border-radius:23px; background:linear-gradient(180deg,#F0F7FE 0%,#FFFFFF 100%); position:relative; z-index:10; margin-bottom:-105px; }.suitable-grid article { position:relative; min-height:165px; padding:15px 18px; }.suitable-grid article+article { border-left:none; }.suitable-grid article>b { position:absolute; right:12px; top:-10px; color:rgba(255,255,255,.95); font-size:120px; line-height:1; }.suitable-grid .suitable-icon { position:relative; z-index:1; width:70px; height:70px; object-fit:contain; margin-bottom:8px; }.suitable-grid h3,.suitable-grid p { position:relative; z-index:1; }.suitable-grid h3 { margin:0 0 8px; font-size:20px; }.suitable-grid p { margin:0; color:#718097; font-size:12px; line-height:1.75; }.services { margin:75px calc(50% - 50vw) -100px; padding:65px max(20px,calc((100vw - 1180px)/2)) 85px; color:#fff; background:linear-gradient(135deg,#3e6cda,#4666d7); }.services h2 { margin:0 0 42px; text-align:center; font-size:35px; }.services>div { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }.services article { min-height:110px; padding:20px 24px; color:#1d2a42; border-radius:10px; background:#FFFFFF; border:1px solid #979797; display:flex; align-items:center; gap:14px; }.services article .service-icon { width:64px; height:64px; object-fit:contain; flex-shrink:0; background:transparent; border-radius:0; border:none; }.services article .service-text { display:flex; flex-direction:column; gap:4px; }.services article .service-text h3 { margin:0; font-size:18px; color:#1d2a42; }.services article .service-text p { margin:0; color:#718096; font-size:10px; }
.industry-tabs { display:grid; grid-template-columns:repeat(6,1fr); margin-bottom:30px; }.industry-tabs button { display:grid; justify-items:center; gap:7px; padding:7px; color:#657691; border:0; border-bottom:3px solid transparent; background:transparent; font-size:12px; cursor:pointer; }.industry-tabs button.is-active { color:#2566de; border-bottom-color:#347dff; }.industry-tabs b { display:grid; place-items:center; width:52px; height:52px; color:#598ce9; border-radius:15px; background:linear-gradient(145deg,#eff8ff,#c8ddff); font-size:24px; } .industry-tab-icon { width:64px; height:64px; object-fit:contain; }.industry-content { padding:20px 0 40px; background:#f4f8ff; }.industry-content>h3,.industry-content>p { width:min(calc(100% - 80px),1200px); margin-left:auto; margin-right:auto; }.industry-content>h3 { margin-bottom:8px; font-size:30px; font-weight:800; color:#1a2740; }.industry-content>p { margin-top:0; color:#718097; font-size:13px; }.industry-cards { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; width:min(calc(100% - 80px),1200px); margin:24px auto 0; }.industry-cards article { min-height:280px; padding:28px 28px 150px; border-radius:16px; }.industry-cards article:nth-child(1) { background:linear-gradient(104deg,#FFE9F8 0%,#FFDFF1 100%); }.industry-cards article:nth-child(2) { background:linear-gradient(151deg,#CFFDE6 0%,#C9EFD9 100%); }.industry-cards article:nth-child(3) { background:linear-gradient(137deg,#DBF3FF 0%,#BDE0FF 100%); }.industry-cards h4 { margin:0 0 16px; font-size:22px; font-weight:700; color:#1a2740; }.industry-cards p { margin:0; color:#53677f; font-size:12px; line-height:1.8; } .industry-card { position:relative; overflow:hidden; } .industry-card-icon { position:absolute; right:10px; bottom:10px; width:150px; height:120px; object-fit:contain; opacity:0.95; }
.advantage-list { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; }.advantage-list article { min-height:340px; padding:28px; border-radius:20px; box-shadow:0 9px 23px rgba(50,89,132,.1); display:flex; flex-direction:column; }.advantage-list article:nth-child(1) { background: linear-gradient(0deg, #FFF6EF 0%, #FFEAD2 100%); }.advantage-list article:nth-child(2) { background: linear-gradient(0deg, #E8FDFB 0%, #CDFBF6 100%); }.advantage-list article:nth-child(3) { background: linear-gradient(0deg, #E8F4FF 0%, #CDE8FF 100%); }.advantage-list article:nth-child(4) { background: linear-gradient(0deg, #F9F8FF 0%, #EDE8FF 100%); }.advantage-list h3 { margin:0 0 20px; font-size:20px; }.advantage-items { margin:0; padding:0; list-style:none; color:#66768c; font-size:13px; line-height:2; } .advantage-items li { margin:0; padding:0; } .advantage-card { position:relative; overflow:hidden; } .advantage-card-icon { position:absolute; right:0; bottom:0; width:110px; height:110px; object-fit:contain; opacity:0.85; }
/* ===== 多元化发展路径（对齐 UI） ===== */
.career-module { padding-bottom:96px; }
.career-list { display:grid; gap:22px; }
.career-list article { position:relative; display:grid; grid-template-columns:236px 30px 1fr 30px 1fr 30px 268px; align-items:center; gap:14px; padding:24px 26px; border:2px dashed #c5d8f5; border-radius:22px; background:#ECF2FF; }
.career-list article.career-composite { grid-template-columns:236px 30px 1fr; }
.career-list article>strong { display:grid; place-items:center; align-self:stretch; min-height:120px; padding:18px 20px; color:#fff; border-radius:14px; background:linear-gradient(135deg,#6BA4F0 0%,#4A8CE8 100%); font-size:20px; font-weight:700; line-height:1.55; text-align:center; white-space:nowrap; box-sizing:border-box; }
.career-list article>span { display:grid; place-items:center; color:#3b7df0; font-size:26px; font-weight:400; letter-spacing:-.14em; text-align:center; }
.career-list article>p { min-height:64px; display:grid; place-items:center; margin:0; padding:12px 16px; color:#333; border-radius:10px; background:#fff; font-size:14px; font-weight:500; text-align:center; box-shadow:0 3px 10px rgba(58,106,182,.07); white-space:pre-line; line-height:1.6; box-sizing:border-box; }
.career-end { display:flex; flex-direction:column; gap:10px; justify-content:center; align-self:stretch; padding:12px; border-radius:12px; background:#DCE7FA; box-sizing:border-box; }
.career-end .career-path { display:grid; grid-template-columns:auto 1fr; align-items:center; gap:11px; flex:1; }
.career-end .career-path b { display:flex; align-items:center; justify-content:center; width:78px; min-height:44px; flex-shrink:0; padding:0 8px; color:#333; border-radius:0; background:transparent; font-size:14px; font-weight:700; text-align:center; box-sizing:border-box; }
.career-end .career-path em { display:flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:0 4px; min-height:44px; padding:8px 14px; color:#333; border-radius:9px; background:#fff; font-style:normal; font-size:13px; font-weight:500; line-height:1.5; text-align:center; box-sizing:border-box; }
.career-job-name { white-space:nowrap; }
.career-job-years { white-space:nowrap; }
.career-subpaths { display:flex; flex-direction:column; gap:14px; }
.career-subpath { display:grid; grid-template-columns:30px 1fr 30px 1.6fr; align-items:center; gap:14px; }
.career-subpath .career-subname { min-height:52px; display:flex; align-items:center; justify-content:center; margin:0; padding:10px 16px; color:#333; border-radius:10px; background:#fff; font-size:14px; font-weight:700; line-height:1.5; text-align:center; box-sizing:border-box; box-shadow:0 3px 10px rgba(58,106,182,.07); }
.career-subpath .career-subpath-detail { min-height:52px; display:flex; align-items:center; justify-content:center; margin:0; padding:10px 16px; color:#333; border-radius:10px; background:#fff; font-size:13px; font-weight:500; line-height:1.6; text-align:center; box-sizing:border-box; box-shadow:0 3px 10px rgba(58,106,182,.07); }
.career-subpath>span { display:grid; place-items:center; color:#3b7df0; font-size:26px; font-weight:400; letter-spacing:-.14em; }
.teachers-module { margin-inline:calc(50% - 50vw); padding:75px max(20px,calc((100vw - 1180px)/2)) 82px; background:linear-gradient(#fff,#e6efff 68%,#a9c4ff); }.teacher-carousel { position:relative; display:grid; grid-template-columns:300px 1fr; gap:50px; align-items:center; width:min(880px,100%); min-height:300px; margin:0 auto; padding:32px; border-radius:26px; background:#eef4ff; }.teacher-arrow { position:absolute; top:50%; transform:translateY(-50%); width:56px; height:56px; display:flex; align-items:center; justify-content:center; color:#2f74ed; border:0; border-radius:50%; background:#fff; box-shadow:0 4px 14px rgba(47,116,237,.2); font-size:0; cursor:pointer; z-index:2; padding:0; }.teacher-arrow:hover { background:#2f74ed; color:#fff; }
.teacher-arrow::before { content:''; display:block; width:14px; height:14px; border-style:solid; border-color:currentColor; }
.teacher-prev::before { border-width:0 0 3px 3px; transform:rotate(45deg); margin-left:4px; }
.teacher-next::before { border-width:3px 3px 0 0; transform:rotate(45deg); margin-right:4px; }.teacher-prev { left:-22px; }.teacher-next { right:-22px; }.teacher-portrait img { width:220px; height:250px; object-fit:cover; margin:auto; border-radius:18px; }.teacher-portrait span { display:block; margin-top:8px; color:#5e86d4; text-align:center; font-size:11px; }.teacher-info h3 { margin:0 0 14px; font-size:26px; }.teacher-tags { display:flex; flex-wrap:wrap; gap:8px; }.teacher-tags span { padding:6px 13px; color:#35578e; border-radius:6px; background:#cfddfb; font-size:10px; }.teacher-info ul { margin:20px 0 0; padding-left:18px; color:#53647d; font-size:13px; line-height:2; }.teacher-dots { display:flex; justify-content:center; gap:18px; margin-top:35px; flex-wrap:wrap; }.teacher-dots button { width:58px; height:58px; padding:0; border:2px solid #80b2ff; border-radius:50%; background:#fff; cursor:pointer; overflow:hidden; }.teacher-dots button img { width:100%; height:100%; object-fit:cover; border-radius:50%; }.teacher-dots button.is-active { border-color:#2f74ed; box-shadow:0 0 0 3px rgba(47,116,237,.2); }
.employment-table { overflow:hidden; border-radius:20px; background:#f8faff; }.employment-head,.employment-row { display:grid; grid-template-columns:1fr 1.35fr 1.3fr 1fr 1fr; gap:18px; align-items:center; padding:17px 26px; font-size:13px; }.employment-head { color:#344a69; background:#dceeff; font-weight:800; }.employment-row { color:#627189; border-top:1px solid #e7edf6; }.employment-row span:first-child { font-weight:800; }
.student-works-module { padding-bottom:80px; }.works-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:16px; }.work-item { position:relative; overflow:hidden; border-radius:16px; aspect-ratio:4/3; background:#f0f5ff; }.work-item img { width:100%; height:100%; object-fit:cover; transition:transform .3s ease; }.work-item:hover img { transform:scale(1.05); }
@media(max-width:900px){.hero-copy{padding-left:20px}.hero-symbol{width:190px;height:190px}.schedule-card{grid-template-columns:1fr 1fr}.schedule-campus{grid-column:1/-1}.schedule-card>div:nth-child(3){border-left:0}.aigc-grid,.industry-cards{grid-template-columns:1fr 1fr}.advantage-list{grid-template-columns:1fr 1fr}.curriculum-layout{grid-template-columns:220px 1fr}.career-list article{grid-template-columns:170px 22px 1fr;}.career-list article>span:nth-of-type(2),.career-end{grid-column:3}.services>div{grid-template-columns:1fr 1fr}.teacher-carousel{grid-template-columns:230px 1fr;gap:25px}}
@media(max-width:680px){.course-hero{min-height:720px;padding-top:30px}.hero-inner{grid-template-columns:1fr;min-height:400px}.hero-copy{padding:0 20px}.hero-copy h1{font-size:50px}.hero-symbol{width:150px;height:150px;margin-top:-45px;opacity:.75}.hero-symbol b{font-size:45px}.schedule-card{grid-template-columns:1fr;width:calc(100% - 28px)}.schedule-card>div{padding:20px}.schedule-card>div+div{border-top:1px dashed #dbe4f1;border-left:0}.course-content{padding:52px 14px 0}.module-title h2{font-size:31px}.aigc-grid,.industry-cards,.advantage-list,.services>div{grid-template-columns:1fr}.aigc-grid article{min-height:340px}.curriculum-layout{grid-template-columns:1fr}.curriculum-layout aside h3{padding:18px 20px}.curriculum-layout aside button{display:inline-flex;width:50%;padding:12px 13px;font-size:12px}.curriculum-content{padding:25px 18px;min-height:430px}.curriculum-block ol{grid-template-columns:1fr}.suitable-grid{grid-template-columns:1fr;padding:18px}.suitable-grid article+article{border-top:1px solid #d5e2f3;border-left:0}.services{margin-inline:calc(50% - 50vw);padding-inline:20px}.industry-tabs{grid-template-columns:repeat(3,1fr)}.industry-content>h3,.industry-content>p,.industry-cards{width:calc(100% - 28px)}.career-list article{grid-template-columns:1fr 22px 1fr;padding:12px}.career-list article>strong{grid-column:1/-1;min-height:56px}.career-list article>p{grid-column:1/3}.career-list article>span:nth-of-type(2){grid-column:2}.career-end{grid-column:1/-1}.teacher-carousel{grid-template-columns:1fr;padding:20px}.teacher-portrait img{width:170px;height:190px}.employment-table{overflow:visible;background:transparent}.employment-head{display:none}.employment-row{grid-template-columns:1fr 1fr;row-gap:14px;margin-bottom:12px;padding:20px 18px;border:0;border-radius:16px;background:#f2f5fa}.employment-row span:nth-child(1){grid-column:1;grid-row:1;font-size:17px;font-weight:800;color:#1a1a1a}.employment-row span:nth-child(3){grid-column:2;grid-row:1;font-size:14px;color:#3c4657;text-align:right}.employment-row span:nth-child(2){grid-column:1/-1;grid-row:2;font-size:14px;color:#3c4657}.employment-row span:nth-child(4){grid-column:1;grid-row:3}.employment-row span:nth-child(5){grid-column:2;grid-row:3}.employment-row span:nth-child(4),.employment-row span:nth-child(5){display:flex;align-items:baseline;font-size:18px;font-weight:800;color:#1a1a1a;white-space:nowrap}.employment-row span:nth-child(4)::before{content:"转正后薪资/月"}.employment-row span:nth-child(5)::before{content:"涨薪幅度/年"}.employment-row span:nth-child(4)::before,.employment-row span:nth-child(5)::before{margin-right:6px;font-size:12px;font-weight:500;color:#5a6474}}
@media(max-width:900px){.schedule-card { position:relative; top:auto; left:auto; transform:none; margin:0 auto; }}
.course-selectbar { display:flex; align-items:center; justify-content:center; gap:12px; margin-top:30px; padding:14px 18px; color:#3c5272; border:1px solid #dce7f6; border-radius:16px; background:#fff; box-shadow:0 10px 27px rgba(45,93,163,.09); }.course-selectbar label { color:#6c7d95; font-size:12px; font-weight:800; }.course-selectbar select { min-width:190px; height:38px; padding:0 32px 0 13px; color:#2e5fc3; border:1px solid #6ea3f5; border-radius:9px; outline:0; background:#f7fbff; font-size:13px; font-weight:800; cursor:pointer; }.course-selectbar span { color:#8290a5; font-size:11px; }
.page-courses .cta-section { display:none; }
@media(max-width:680px){.course-selectbar{align-items:flex-start;flex-wrap:wrap;justify-content:flex-start;margin:22px 14px 0}.course-selectbar select{flex:1;min-width:160px}.course-selectbar span{width:100%;padding-left:70px}}


/* ===== 自定义校区选择下拉组件 ===== */
.custom-campus-select { position:relative; width:220px; }
.custom-select-trigger { display:flex; align-items:center; justify-content:space-between; width:100%; height:40px; padding:0 14px; color:#333; border:1px solid #377dff; border-radius:8px; background:#fff; font-size:13px; font-weight:500; cursor:pointer; box-sizing:border-box; transition:border-color .2s, box-shadow .2s; }
.custom-select-trigger:hover { border-color:#2563eb; }
.custom-campus-select.is-open .custom-select-trigger { border-color:#2563eb; box-shadow:0 0 0 3px rgba(55,125,255,.12); }
.custom-select-value { flex:1; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.custom-select-arrow { display:inline-block; width:0; height:0; margin-left:8px; border-left:5px solid transparent; border-right:5px solid transparent; border-top:6px solid #3578ef; font-size:0; line-height:0; transition:transform .2s; flex-shrink:0; }
.custom-campus-select.is-open .custom-select-arrow { transform:rotate(180deg); }

/* 下拉选项面板 */
.custom-select-options { position:absolute; top:calc(100% + 6px); left:0; right:0; z-index:100; display:none; padding:6px; background:#fff; border:1px solid #e2e8f0; border-radius:10px; box-shadow:0 12px 32px rgba(47,93,169,.18); box-sizing:border-box; }
.custom-campus-select.is-open .custom-select-options { display:block; }

/* 单个选项 */
.custom-select-option { display:flex; align-items:center; justify-content:space-between; gap:10px; padding:10px 12px; border-radius:6px; cursor:pointer; transition:background .15s; box-sizing:border-box; }
.custom-select-option:hover:not(.is-disabled) { background:#f0f6ff; }
.custom-select-option.is-selected { background:#e8f0fe; }
.custom-select-option.is-selected .option-name { color:#2563eb; font-weight:600; }
.option-name { flex:1; color:#333; font-size:13px; font-weight:500; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }

/* 筹备中标签 - 带边框 */
.badge-preparing { display:inline-flex; align-items:center; justify-content:center; flex-shrink:0; padding:2px 8px; color:#94a3b8; border:1px solid #cbd5e1; border-radius:4px; background:#f8fafc; font-size:11px; font-weight:500; line-height:1.4; }

/* 禁用选项 */
.custom-select-option.is-disabled { cursor:not-allowed; opacity:.7; }
.custom-select-option.is-disabled:hover { background:transparent; }
.custom-select-option.is-disabled .option-name { color:#94a3b8; }


/* ===== 就业成果展示视频（课程展示页面） ===== */
.employment-result-module {
  padding: 80px 0 90px;
  background: #fff;
}
.employment-result-module .result-video-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
}
.employment-result-module .result-video-item {
  position: relative;
  overflow: hidden;
  border-radius: 16px;
  cursor: pointer;
  background: #f0f2f5;
  aspect-ratio: 776 / 424;
}
.employment-result-module .result-video-item > img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform .35s ease;
}
.employment-result-module .result-video-item:hover > img {
  transform: scale(1.05);
}
.employment-result-module .result-play-btn {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 55px;
  height: 55px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: transparent;
  cursor: pointer;
  transition: transform .25s ease, opacity .25s ease;
  z-index: 2;
}
.employment-result-module .result-play-btn img {
  width: 100%;
  height: 100%;
  display: block;
}
.employment-result-module .result-video-item:hover .result-play-btn {
  transform: translate(-50%, -50%) scale(1.12);
}

/* ===== 视频播放模态框 ===== */
.video-modal {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 9999;
  display: none;
  align-items: center;
  justify-content: center;
  padding: 40px;
}
.video-modal.show {
  display: flex;
}
.video-modal-overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, .75);
  backdrop-filter: blur(4px);
}
.video-modal-content {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: 960px;
  background: #000;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 20px 60px rgba(0, 0, 0, .5);
}
.video-modal-close {
  position: absolute;
  top: -44px;
  right: 0;
  width: 36px;
  height: 36px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: rgba(255, 255, 255, .15);
  color: #fff;
  font-size: 24px;
  line-height: 1;
  cursor: pointer;
  transition: background .2s ease;
  z-index: 2;
}
.video-modal-close:hover {
  background: rgba(255, 255, 255, .3);
}
.video-modal-player {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 9;
}
.video-modal-player video {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: contain;
}

@media (max-width: 980px) {
  .employment-result-module .result-video-grid { grid-template-columns: repeat(2, 1fr); gap: 18px; }
}
@media (max-width: 768px) {
  .video-modal { padding: 20px; }
  .video-modal-close { top: -40px; width: 32px; height: 32px; font-size: 20px; }
}
@media (max-width: 640px) {
  .employment-result-module { padding: 60px 0 70px; }
  .employment-result-module .result-video-grid { grid-template-columns: 1fr; gap: 16px; }
}

/* ===== 手机端课程展示优化 ===== */
@media (max-width: 680px) {
  /* Banner优化 */
  .course-hero {
    height: 380px;
    min-height: 380px;
    background-size: cover;
    background-position: center center;
  }
  
  .course-hero.hero-bigdata {
    height: 530px;
    min-height: 530px;
    background-image: url('../../assets/images/bigdata-banner-mobile.jpg');
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
  }
  
  .course-hero.hero-aigc {
    height: 530px;
    min-height: 530px;
    background-image: url('../../assets/images/courses-banner-mobile.jpg');
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
  }
  
  .hero-inner {
    min-height: auto;
    padding-top: 60px;
  }
  
  .hero-copy h1 {
    font-size: 36px !important;
    line-height: 1.3;
  }
  
  /* 开班信息卡片优化 */
  .schedule-card {
    position: relative !important;
    top: auto !important;
    left: auto !important;
    transform: none !important;
    margin: 30px 14px 0 !important;
    width: calc(100% - 28px) !important;
  }
  
  /* 多元化发展路径优化 */
  .career-list {
    gap: 16px;
    padding: 0 14px;
  }
  
  .career-list article {
    grid-template-columns: 1fr !important;
    gap: 12px !important;
    padding: 18px !important;
  }
  
  .career-list article > strong {
    grid-column: 1 / -1 !important;
    min-height: 50px !important;
    padding: 12px !important;
    font-size: 16px !important;
  }
  
  .career-list article > p {
    grid-column: 1 / -1 !important;
    font-size: 14px !important;
    line-height: 1.6;
  }
  
  .career-list article > span {
    display: none !important;
  }
  
  .career-end {
    grid-column: 1 / -1 !important;
    text-align: center;
  }
  
  .career-list article.career-composite {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 480px) {
  .course-hero {
    height: 320px;
    min-height: 320px;
  }
  
  .hero-inner {
    padding-top: 40px;
  }
  
  .hero-copy h1 {
    font-size: 30px !important;
  }
  
  .schedule-card {
    margin: 20px 10px 0 !important;
    width: calc(100% - 20px) !important;
  }
  
  .career-list article {
    padding: 14px !important;
  }
  
  .career-list article > strong {
    font-size: 15px !important;
  }
}


/* ===== 手机端课程展示优化 ===== */
@media (max-width: 680px) {
  /* Banner优化 */
  .course-hero {
    height: 380px;
    min-height: 380px;
    background-size: cover;
    background-position: center center;
  }
  
  .course-hero.hero-bigdata {
    height: 530px;
    min-height: 530px;
    background-image: url('../../assets/images/bigdata-banner-mobile.jpg');
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
  }
  
  .course-hero.hero-aigc {
    height: 530px;
    min-height: 530px;
    background-image: url('../../assets/images/courses-banner-mobile.jpg');
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
  }
  
  .hero-inner {
    min-height: auto;
    padding-top: 60px;
  }
  
  .hero-copy h1 {
    font-size: 36px !important;
    line-height: 1.3;
  }
  
  /* 开班信息卡片优化 */
  .schedule-card {
    position: relative !important;
    top: auto !important;
    left: auto !important;
    transform: none !important;
    margin: 30px 14px 0 !important;
    width: calc(100% - 28px) !important;
  }
  
  /* 多元化发展路径优化 */
  .career-list {
    gap: 16px;
    padding: 0 14px;
  }
  
  .career-list article {
    grid-template-columns: 1fr !important;
    gap: 12px !important;
    padding: 18px !important;
  }
  
  .career-list article > strong {
    grid-column: 1 / -1 !important;
    min-height: 50px !important;
    padding: 12px !important;
    font-size: 16px !important;
  }
  
  .career-list article > p {
    grid-column: 1 / -1 !important;
    font-size: 14px !important;
    line-height: 1.6;
  }
  
  .career-list article > span {
    display: none !important;
  }
  
  .career-end {
    grid-column: 1 / -1 !important;
    text-align: center;
  }
  
  .career-list article.career-composite {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 480px) {
  .course-hero {
    height: 320px;
    min-height: 320px;
  }
  
  .hero-inner {
    padding-top: 40px;
  }
  
  .hero-copy h1 {
    font-size: 30px !important;
  }
  
  .schedule-card {
    margin: 20px 10px 0 !important;
    width: calc(100% - 20px) !important;
  }
  
  .career-list article {
    padding: 14px !important;
  }
  
  .career-list article > strong {
    font-size: 15px !important;
  }
}



/* 移动端五大课程阶段优化 */
@media(max-width:680px){
  .curriculum-layout {
    display: flex !important;
    flex-direction: column !important;
    gap: 16px !important;
  }
  .curriculum-layout aside {
    width: 100% !important;
  }
  .curriculum-layout aside button {
    width: 100% !important;
    display: flex !important;
  }
  .curriculum-content {
    width: 100% !important;
    padding: 20px 16px !important;
  }
  .course-content {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }
  .module-title {
    padding: 0 16px !important;
  }
  .aigc-grid article,
  .industry-cards article,
  .advantage-list article,
  .services article {
    width: 100% !important;
  }
}




/* 移动端课程展示页面优化 */
@media(max-width:680px){
  .page-courses {
    overflow-x: hidden !important;
  }
  .course-hero {
    height: 530px !important;
    min-height: 530px !important;
    padding-bottom: 0 !important;
    overflow: visible !important;
  }
  .hero-inner {
    min-height: auto !important;
    padding-top: 20px !important;
  }
  .schedule-card {
    position: absolute !important;
    top: 470px !important;
    left: 14px !important;
    right: 14px !important;
    margin: 0 !important;
    width: auto !important;
    grid-template-columns: 1fr !important;
    z-index: 10;
  }
  .course-tabs {
    margin: 20px 14px 0 !important;
    flex-direction: column !important;
  }
  .course-tabs button {
    min-width: auto !important;
    width: 100% !important;
  }
  .course-content {
    padding-top: 520px !important;
    padding-left: 0px !important;
    padding-right: 0px !important;
  }
  .module {
    padding-bottom: 50px !important;
  }
  .module-aigc,
  .course-content > .curriculum-module:first-child,
  .course-content > .industry-module:first-child {
    padding-top: 0px !important;
  }
  .module-title {
    margin-bottom: 24px !important;
  }
  .curriculum-layout {
    display: flex !important;
    flex-direction: column !important;
    gap: 16px !important;
    overflow: visible !important;
  }
  .curriculum-layout aside {
    width: 100% !important;
  }
  .curriculum-layout aside h3 {
    display: block !important;
    margin: 16px 0 !important;
    padding: 12px 16px !important;
    text-align: center !important;
  }
  .curriculum-layout aside button {
    display: flex !important;
    width: 100% !important;
    padding: 12px 16px !important;
  }
  .curriculum-content {
    width: 100% !important;
    padding: 20px 14px !important;
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
  }
  .curriculum-content::-webkit-scrollbar {
    display: none;
  }
  .curriculum-content .hours {
    position: static !important;
    display: inline-block !important;
    margin-left: auto !important;
    margin-bottom: 12px !important;
    float: right !important;
  }
  .curriculum-content > h3 {
    padding-right: 80px !important;
  }
  .aigc-grid,
  .industry-cards,
  .advantage-list,
  .services > div {
    grid-template-columns: 1fr !important;
    gap: 16px !important;
  }
  .aigc-grid article,
  .industry-cards article,
  .advantage-list article,
  .services article {
    min-height: auto !important;
  }
  .career-list article {
    grid-template-columns: 1fr !important;
    padding: 16px !important;
    gap: 12px !important;
  }
  .career-list article > strong,
  .career-list article > p,
  .career-list article > span,
  .career-end {
    grid-column: 1/-1 !important;
    min-height: auto !important;
  }
  .teacher-carousel {
    grid-template-columns: 1fr !important;
    padding: 20px 14px !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    width: 100% !important;
  }
  .industry-content {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
  .industry-content > h3,
  .industry-content > p {
    width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 14px !important;
    padding-right: 14px !important;
  }
  .industry-cards {
    width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 14px !important;
    padding-right: 14px !important;
  }
  .teacher-portrait img {
    width: 150px !important;
    height: 170px !important;
    margin: 0 auto !important;
  }
  .suitable-grid {
    margin-bottom: 0 !important;
  }
  .services {
    margin: 30px -14px 0 !important;
    padding: 40px 14px 50px !important;
  }
  .teachers-module {
    margin: 0 -14px !important;
    padding: 40px 14px 50px !important;
  }
}


/* 大数据工程师banner标签样式 */
.course-hero.hero-bigdata .hero-bigdata-tag {
  display: inline-block;
  margin-top: 16px;
  padding: 8px 20px;
  border-radius: 17px;
  border: 1px solid #1D64C0;
  font-family: PingFangSC, PingFang SC;
  font-weight: 400;
  font-size: 14px;
  color: #FFFFFF;
  background: rgba(29, 100, 192, 0.2);
}

/* 移动端大数据工程师banner文字 */
@media (max-width: 680px) {
  .course-hero.hero-bigdata .hero-copy h1 {
    font-family: AlimamaShuHeiTi, AlimamaShuHeiTi;
    font-weight: bold;
    font-size: 44px;
    color: #FFFFFF;
  }
  .course-hero.hero-bigdata .hero-copy p {
    display: none;
  }
}


/* 大数据工程师banner标签 */
.hero-bigdata-tag {
  display: inline-block;
  margin: 16px 0;
  padding: 8px 20px;
  border-radius: 17px;
  border: 1px solid #1D64C0;
  font-family: PingFangSC, PingFang SC;
  font-weight: 400;
  font-size: 14px;
  color: #FFFFFF;
  background: rgba(29, 100, 192, 0.3);
}


/* 移动端显示hero-copy */
@media (max-width: 680px) {
  .course-hero .hero-copy {
    display: block !important;
  }
  .course-hero.hero-bigdata .hero-symbol {
    display: none !important;
  }
}


/* 移动端AI训练师banner隐藏文字，保留按钮 */
@media (max-width: 680px) {
  .course-hero.hero-aigc .hero-copy h1,
  .course-hero.hero-aigc .hero-copy p,
  .course-hero.hero-aigc .hero-kicker {
    display: none !important;
  }
  .course-hero.hero-aigc .banner-actions {
    display: block !important;
    text-align: center;
    margin-top: 200px;
  }
}


/* 移动端隐藏课程阶段背景图 */
@media (max-width: 680px) {
  .curriculum-module,
  .curriculum-section {
    background-image: none !important;
  }
}


/* 移动端隐藏课程阶段右下角书本图标 */
@media (max-width: 680px) {
  .book-art {
    display: none !important;
  }
}


/* 移动端调整教师力量模块左右间距 */
@media (max-width: 680px) {
  .teachers-module {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }
  .teacher-carousel {
    padding: 20px 10px !important;
    gap: 15px !important;
  }
  .teacher-portrait img {
    width: 140px !important;
    height: 160px !important;
  }
}


/* 移动端教师模块箭头向中间靠拢 */
@media (max-width: 680px) {
  .teacher-carousel {
    position: relative !important;
    padding: 20px 40px !important;
  }
  .teacher-prev {
    left: 5px !important;
  }
  .teacher-next {
    right: 5px !important;
  }
}


/* 移动端教师力量模块箭头向上偏移 */
@media (max-width: 680px) {
  .teacher-prev,
  .teacher-next {
    top: 50% !important;
    transform: translateY(calc(-50% - 60px)) !important;
  }
}
