/* ===== Section title shared ===== */
.sec_title{text-align:center;margin-bottom:46px}
.sec_kicker{display:inline-block;background:var(--color-primary-light);color:var(--color-primary);font-size:13px;font-weight:600;padding:5px 14px;border-radius:20px;margin-bottom:14px;letter-spacing:.5px}
.sec_h{font-size:36px;font-weight:700;color:var(--color-text-h);line-height:1.3;margin-bottom:12px}
.sec_desc{color:var(--color-text-sub);font-weight:300;font-size:18px}

/* ===== Banner ===== */
.banner{width:100%;position:relative;background:#fff}
.banner-placeholder{width:100%;min-height:640px;background:linear-gradient(135deg,#0c2246 0%,#1a3a6e 50%,#2a5aa8 100%);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;position:relative;padding:80px 20px 130px}
.banner-placeholder::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 20% 30%,rgba(42,90,168,.45) 0%,transparent 55%),radial-gradient(ellipse at 80% 70%,rgba(184,138,59,.18) 0%,transparent 55%);pointer-events:none}
.banner-tag{position:relative;z-index:2;display:inline-block;background:rgba(255,255,255,.12);color:#fff;font-size:13px;padding:8px 18px;border-radius:30px;letter-spacing:1.5px;backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2)}
.banner-placeholder h2{position:relative;z-index:2;font-size:78px;font-weight:900;color:#fff;letter-spacing:6px;line-height:1.1;margin:8px 0;text-align:center}
.banner-placeholder h2 .highlight{background:linear-gradient(120deg,#fbb87e,#fa6400);-webkit-background-clip:text;background-clip:text;color:transparent}
.banner-sub{position:relative;z-index:2;font-size:24px;color:#fff;font-weight:300;letter-spacing:3px;margin-top:6px;text-align:center}
.banner-sub strong{font-weight:600}
.banner-tagline{position:relative;z-index:2;font-size:15px;color:rgba(255,255,255,.78);letter-spacing:5px;margin-top:14px;font-weight:300}
.banner-tagline span{display:inline-block;margin:0 12px}
.banner-tagline span::before{content:"·";color:var(--color-orange);margin-right:14px;font-size:18px;vertical-align:middle}
.banner-tagline span:first-child::before{display:none}

.banner-schools{position:relative;z-index:2;display:flex;justify-content:center;gap:28px;flex-wrap:wrap;margin-top:18px;padding:0 20px;max-width:1100px}
.banner-schools .sch{font-size:14px;color:rgba(255,255,255,.55);font-weight:500;letter-spacing:1px}
.banner-schools .sch.gold{color:#fbb87e;font-weight:600}

.banner-btns{position:relative;z-index:2;display:flex;gap:18px;margin-top:24px}
.banner-btn{padding:14px 36px;border-radius:30px;font-size:16px;font-weight:600;cursor:pointer;transition:all .25s;letter-spacing:1px}
.banner-btn-primary{background:linear-gradient(135deg,#fa6400,#EC5F00);color:#fff;box-shadow:0 8px 24px rgba(250,100,0,.4)}
.banner-btn-primary:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(250,100,0,.5)}
.banner-btn-outline{background:rgba(255,255,255,.1);color:#fff;border:1.5px solid rgba(255,255,255,.5);backdrop-filter:blur(8px)}
.banner-btn-outline:hover{background:rgba(255,255,255,.18);border-color:#fff}

/* Floating stats bar */
.shadows{position:absolute;left:50%;transform:translateX(-50%);bottom:-65px;width:calc(100% - 60px);max-width:1400px;background:#fff;border-radius:18px;padding:30px 60px;box-shadow:0 20px 60px rgba(12,34,70,.12);z-index:10}
.shadows .maxwidth{display:flex;justify-content:space-between;align-items:center}
.shadows .list{text-align:center;flex:1;border-right:1px solid #eef0f4;padding:0 12px}
.shadows .list:last-child{border-right:none}
.shadows .list .num{font-size:38px;color:var(--color-primary);font-weight:700;line-height:1.1}
.shadows .list .num span.unit{font-size:18px;font-weight:600;margin-left:2px}
.shadows .list .text{font-size:13px;color:var(--color-text-sub);margin-top:6px;line-height:1.5}

/* ===== Hook ===== */
.hook_section{width:100%;background:#fff;padding:130px 0 90px;text-align:center}
.hook_inner{max-width:980px;margin:0 auto;padding:0 40px}
.hook_label{display:inline-block;background:var(--color-primary-light);color:var(--color-primary);font-size:13px;font-weight:600;padding:6px 16px;border-radius:20px;margin-bottom:30px;letter-spacing:1px}
.hook_quote{font-size:32px;font-weight:700;color:var(--color-text-h);line-height:1.55;letter-spacing:.5px;margin-bottom:30px}
.hook_quote .accent{color:var(--color-orange);font-weight:800}
.hook_lead{font-size:17px;color:var(--color-text-sub);line-height:1.95;font-weight:400}
.hook_lead strong{color:var(--color-primary-deep)}
.hook_facts{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:40px}
.hook_fact{padding:24px 22px;background:linear-gradient(160deg,#f4f7fd,#fff);border-radius:14px;border:1px solid rgba(42,90,168,.1);text-align:left}
.hook_fact .fk{font-size:11px;font-weight:700;color:var(--color-orange);letter-spacing:1.5px;margin-bottom:8px}
.hook_fact .ft{font-size:15px;font-weight:700;color:var(--color-primary-deep);line-height:1.5;margin-bottom:6px}
.hook_fact .fd{font-size:13px;color:var(--color-text-sub);line-height:1.7}
.hook_cta_line{margin-top:36px;padding:24px 40px;background:linear-gradient(135deg,#fff3e8,#ffe5d2);border-radius:14px;border-left:4px solid var(--color-orange);font-size:18px;font-weight:600;color:var(--color-text-h);text-align:left;letter-spacing:.5px;line-height:1.7}
.hook_cta_line strong{color:var(--color-orange-dark)}

/* ===== Pain scenarios ===== */
.pain_section{width:100%;background:linear-gradient(180deg,#f8f8f8,#fff);padding:90px 0}
.pain_grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;max-width:1320px;margin:0 auto}
.pain_card{background:#fff;border-radius:16px;padding:26px 26px;box-shadow:0 4px 16px rgba(12,34,70,.05);border-top:4px solid var(--color-primary);transition:all .3s}
.pain_card:hover{transform:translateY(-4px);box-shadow:0 12px 28px rgba(12,34,70,.1)}
.pain_top{display:flex;gap:12px;align-items:center;margin-bottom:14px}
.pain_index{flex-shrink:0;width:46px;height:46px;background:linear-gradient(135deg,#1a3a6e,#2a5aa8);border-radius:12px;color:#fff;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:800;box-shadow:0 6px 16px rgba(42,90,168,.2)}
.pain_kicker{font-size:11px;color:var(--color-orange);font-weight:700;letter-spacing:1.5px}
.pain_title{font-size:17px;font-weight:700;color:var(--color-text-h);margin-bottom:8px;line-height:1.4}
.pain_desc{font-size:13.5px;color:var(--color-text-sub);line-height:1.75;margin-bottom:12px}
.pain_solution{padding:10px 14px;background:var(--color-orange-light);border-radius:8px;font-size:13.5px;color:var(--color-text-h);line-height:1.65;font-weight:500}
.pain_solution strong{color:var(--color-orange-dark)}
.pain_summary{margin-top:36px;text-align:center;padding:22px 36px;background:linear-gradient(135deg,#0c2246,#2a5aa8);border-radius:14px;color:#fff;font-size:18px;font-weight:600;letter-spacing:1px;max-width:1100px;margin-left:auto;margin-right:auto;position:relative;overflow:hidden}
.pain_summary::before{content:"";position:absolute;top:-30px;right:-30px;width:120px;height:120px;background:radial-gradient(circle,rgba(250,100,0,.25),transparent 70%);border-radius:50%}

/* ===== Trust strip ===== */
.trust_section{width:100%;background:#fff;padding:80px 0 70px}
.trust_lead{text-align:center;max-width:840px;margin:0 auto 40px}
.trust_lead .focus{font-size:24px;font-weight:700;color:var(--color-primary-deep);line-height:1.6;letter-spacing:.5px}
.trust_lead .focus span{background:linear-gradient(120deg,#fff3e8,#fff);padding:2px 8px;border-bottom:3px solid var(--color-orange)}
.trust_lead .sub{margin-top:14px;font-size:15px;color:var(--color-text-muted)}
.trust_grid{display:grid;grid-template-columns:repeat(5,1fr);gap:18px;max-width:1280px;margin:0 auto}
.trust_card{background:linear-gradient(160deg,#f4f7fd,#fff);border-radius:16px;padding:26px 18px;border:1px solid rgba(42,90,168,.08);text-align:center;transition:all .3s}
.trust_card:hover{transform:translateY(-4px);box-shadow:0 10px 24px rgba(42,90,168,.12);border-color:rgba(42,90,168,.2)}
.trust_card .icon{font-size:30px;margin-bottom:10px;display:block}
.trust_card .num{font-size:30px;color:var(--color-primary-deep);font-weight:800;line-height:1.1;margin-bottom:6px}
.trust_card .num .unit{font-size:14px;color:var(--color-orange);margin-left:2px}
.trust_card .lbl{font-size:13px;color:var(--color-text-sub);font-weight:600;line-height:1.5}

/* ===== What is + 4 selection standards ===== */
.what_section{width:100%;background:linear-gradient(180deg,#f4f7fd,#f8f8f8);padding:90px 0}
.what_def{max-width:1100px;margin:0 auto 50px;background:linear-gradient(135deg,#0c2246,#1a3a6e 50%,#2a5aa8);border-radius:24px;padding:44px 56px;color:#fff;position:relative;overflow:hidden;text-align:center}
.what_def::before{content:"";position:absolute;top:-80px;right:-80px;width:280px;height:280px;background:radial-gradient(circle,rgba(250,100,0,.18),transparent 70%);border-radius:50%}
.what_def::after{content:"";position:absolute;bottom:-60px;left:-60px;width:200px;height:200px;background:radial-gradient(circle,rgba(255,255,255,.06),transparent 70%);border-radius:50%}
.what_def_label{position:relative;z-index:2;display:inline-block;background:rgba(250,100,0,.2);color:#fbb87e;font-size:13px;font-weight:600;padding:5px 14px;border-radius:20px;margin-bottom:18px;letter-spacing:1px;border:1px solid rgba(250,100,0,.3)}
.what_def_title{position:relative;z-index:2;font-size:28px;font-weight:700;line-height:1.5;letter-spacing:.5px}
.what_def_title .accent{background:linear-gradient(120deg,#fbb87e,#fa6400);-webkit-background-clip:text;background-clip:text;color:transparent;font-weight:800}
.what_def_text{position:relative;z-index:2;font-size:16px;color:rgba(255,255,255,.85);line-height:1.85;margin-top:14px}

.std_intro{text-align:center;max-width:840px;margin:0 auto 30px;font-size:16px;color:var(--color-text-sub);line-height:1.85}
.std_intro strong{color:var(--color-primary-deep)}
.std_grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;max-width:1320px;margin:0 auto}
.std_card{background:#fff;border-radius:16px;padding:30px 26px 24px;border:1px solid rgba(42,90,168,.08);transition:all .3s;box-shadow:0 2px 8px rgba(0,0,0,.03);position:relative;overflow:hidden}
.std_card:hover{transform:translateY(-6px);box-shadow:0 14px 30px rgba(42,90,168,.12);border-color:rgba(42,90,168,.2)}
.std_card::before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--color-primary),var(--color-orange))}
.std_no{font-size:42px;font-weight:900;line-height:1;background:linear-gradient(135deg,#1a3a6e,#2a5aa8);-webkit-background-clip:text;background-clip:text;color:transparent;letter-spacing:-2px;margin-bottom:12px}
.std_title{font-size:17px;font-weight:800;color:var(--color-text-h);margin-bottom:10px;letter-spacing:.3px;line-height:1.4}
.std_text{font-size:13.5px;color:var(--color-text-sub);line-height:1.8}
.std_text strong{color:var(--color-primary-deep)}
.std_tag{display:inline-block;font-size:11px;color:var(--color-orange-dark);font-weight:700;background:var(--color-orange-light);padding:4px 11px;border-radius:12px;letter-spacing:.5px;margin-top:14px}

/* ===== 6 Officers ===== */
.officers_section{width:100%;background:#fff;padding:90px 0}
.officers_intro{text-align:center;max-width:840px;margin:0 auto 40px;font-size:16px;color:var(--color-text-sub);line-height:1.85}
.officers_intro strong{color:var(--color-primary-deep)}
.officers_grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;max-width:1320px;margin:0 auto}
.officer_card{background:linear-gradient(160deg,#f4f7fd,#fff);border-radius:18px;padding:30px 28px;border:1px solid rgba(42,90,168,.08);transition:all .3s;position:relative;overflow:hidden}
.officer_card:hover{transform:translateY(-6px);box-shadow:0 16px 32px rgba(42,90,168,.14);border-color:rgba(42,90,168,.25)}
.officer_card::before{content:"";position:absolute;top:0;right:-2px;width:90px;height:90px;background:radial-gradient(circle at top right,rgba(250,100,0,.10),transparent 70%);border-radius:0 0 0 100%;pointer-events:none}
.officer_top{display:flex;align-items:center;gap:14px;margin-bottom:16px;position:relative;z-index:2}
.officer_avatar{width:62px;height:62px;border-radius:50%;background:linear-gradient(135deg,#1a3a6e,#2a5aa8);color:#fff;display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:900;flex-shrink:0;box-shadow:0 8px 20px rgba(42,90,168,.25);letter-spacing:1px}
.officer_name{font-size:17px;font-weight:800;color:var(--color-text-h);margin-bottom:2px}
.officer_school{font-size:12.5px;color:var(--color-orange-dark);font-weight:700;letter-spacing:.3px;line-height:1.45}
.officer_role{display:inline-block;font-size:11px;color:var(--color-primary);background:var(--color-primary-light);padding:3px 10px;border-radius:11px;letter-spacing:.5px;margin-top:6px;font-weight:700}
.officer_detail{font-size:13px;color:var(--color-text-sub);line-height:1.85;margin-bottom:14px;padding:12px 14px;background:rgba(42,90,168,.04);border-left:3px solid var(--color-primary);border-radius:0 6px 6px 0}
.officer_detail strong{color:var(--color-primary-deep)}
.officer_meta{display:grid;grid-template-columns:1fr 1fr;gap:8px;font-size:12px;color:var(--color-text-muted);line-height:1.5;border-top:1px dashed var(--color-border);padding-top:12px}
.officer_meta strong{color:var(--color-primary-deep);font-weight:700;display:block;margin-bottom:2px;font-size:11px;text-transform:uppercase;letter-spacing:1px;color:var(--color-orange)}
.officer_summary{margin-top:36px;text-align:center;padding:22px 36px;background:linear-gradient(135deg,#fff3e8,#ffe5d2);border-radius:14px;max-width:1100px;margin-left:auto;margin-right:auto;border:1px solid rgba(250,100,0,.15);font-size:18px;font-weight:700;color:var(--color-primary-deep);letter-spacing:1px}
.officer_summary span{color:var(--color-orange);font-weight:800}

/* ===== 4-year timeline + 7 modules ===== */
.timeline_section{width:100%;background:linear-gradient(180deg,#f4f7fd,#f8f8f8);padding:90px 0}
.year_row{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;max-width:1320px;margin:0 auto 36px}
.year_card{background:#fff;border-radius:18px;padding:26px 22px;border:1px solid rgba(42,90,168,.08);transition:all .3s;position:relative;text-align:center}
.year_card:hover{transform:translateY(-4px);box-shadow:0 14px 28px rgba(42,90,168,.12);border-color:rgba(42,90,168,.25)}
.year_card.special{background:linear-gradient(135deg,#0c2246,#2a5aa8);color:#fff;border-color:transparent;overflow:hidden}
.year_card.special::before{content:"";position:absolute;top:-40px;right:-40px;width:140px;height:140px;background:radial-gradient(circle,rgba(250,100,0,.22),transparent 70%);border-radius:50%}
.year_phase{font-size:11px;color:var(--color-orange);font-weight:700;letter-spacing:1.5px;margin-bottom:6px;position:relative;z-index:2}
.year_card.special .year_phase{color:#fbb87e}
.year_grade{font-size:24px;font-weight:900;color:var(--color-primary-deep);line-height:1.2;margin-bottom:8px;letter-spacing:.5px;position:relative;z-index:2}
.year_card.special .year_grade{color:#fff}
.year_subtitle{font-size:13px;color:var(--color-text-sub);font-weight:500;line-height:1.55;margin-bottom:14px;position:relative;z-index:2}
.year_card.special .year_subtitle{color:rgba(255,255,255,.85)}
.year_tags{display:flex;flex-wrap:wrap;gap:6px;justify-content:center;position:relative;z-index:2}
.year_tag{font-size:11px;color:var(--color-primary);background:var(--color-primary-light);padding:3px 9px;border-radius:10px;font-weight:600;letter-spacing:.3px}
.year_card.special .year_tag{color:#fbb87e;background:rgba(250,100,0,.18);border:1px solid rgba(250,100,0,.3)}

.modules_grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;max-width:1320px;margin:0 auto}
.module_card{background:#fff;border-radius:14px;padding:22px 20px;border:1px solid rgba(42,90,168,.08);transition:all .25s;box-shadow:0 2px 8px rgba(0,0,0,.03);position:relative}
.module_card:hover{transform:translateY(-4px);box-shadow:0 10px 24px rgba(42,90,168,.10);border-color:rgba(42,90,168,.18)}
.module_card:nth-child(7){grid-column:span 1;background:linear-gradient(160deg,#fff3e8,#ffe5d2);border-color:rgba(250,100,0,.15)}
.module_card:nth-child(8){grid-column:span 4;background:linear-gradient(135deg,#0c2246,#2a5aa8);color:#fff;border-color:transparent;text-align:center;padding:22px 30px;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:700;letter-spacing:1px;position:relative;overflow:hidden}
.module_card:nth-child(8)::before{content:"";position:absolute;top:-40px;right:-40px;width:160px;height:160px;background:radial-gradient(circle,rgba(250,100,0,.2),transparent 70%);border-radius:50%}
.module_card:nth-child(8) span{color:#fbb87e;font-weight:800;font-style:italic;position:relative;z-index:2}
.module_top{display:flex;align-items:center;gap:10px;margin-bottom:12px}
.module_no{flex-shrink:0;width:30px;height:30px;background:linear-gradient(135deg,#fa6400,#EC5F00);border-radius:8px;color:#fff;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:800;letter-spacing:.5px}
.module_icon{font-size:22px}
.module_title{font-size:15px;font-weight:800;color:var(--color-text-h);margin-bottom:4px;letter-spacing:.3px}
.module_subtitle{font-size:11px;color:var(--color-orange-dark);font-weight:700;margin-bottom:10px;letter-spacing:.5px}
.module_text{font-size:12.5px;color:var(--color-text-sub);line-height:1.75}
.module_text strong{color:var(--color-primary-deep)}

/* ===== Hall of admissions ===== */
.hall_section{width:100%;background:#fff;padding:90px 0}
.hall_lead{text-align:center;max-width:920px;margin:0 auto 36px;font-size:16px;color:var(--color-text-sub);line-height:1.85}
.hall_lead strong{color:var(--color-primary-deep)}
.hall_lead .scope{display:inline-block;padding:4px 12px;background:var(--color-orange-light);color:var(--color-orange-dark);border-radius:20px;font-size:13px;font-weight:700;margin:0 4px;letter-spacing:.5px}
.hall_groups{max-width:1320px;margin:0 auto;display:flex;flex-direction:column;gap:20px}
.hall_group{background:linear-gradient(160deg,#f4f7fd,#fff);border-radius:18px;padding:26px 32px;border:1px solid rgba(42,90,168,.08);box-shadow:0 4px 14px rgba(42,90,168,.05);display:grid;grid-template-columns:240px 1fr;gap:30px;align-items:center}
.hall_group.feature{background:linear-gradient(135deg,#0c2246,#1a3a6e 50%,#2a5aa8);color:#fff;border-color:transparent;position:relative;overflow:hidden}
.hall_group.feature::before{content:"";position:absolute;top:-60px;right:-60px;width:200px;height:200px;background:radial-gradient(circle,rgba(184,138,59,.20),transparent 70%);border-radius:50%}
.hall_label{position:relative;z-index:2}
.hall_lvl{font-size:11px;color:var(--color-orange);font-weight:700;letter-spacing:2px;margin-bottom:6px;text-transform:uppercase}
.hall_group.feature .hall_lvl{color:#fbb87e}
.hall_lvl_h{font-size:22px;font-weight:900;color:var(--color-primary-deep);line-height:1.2;letter-spacing:.5px}
.hall_group.feature .hall_lvl_h{color:#fff}
.hall_lvl_sub{font-size:12px;color:var(--color-text-muted);margin-top:4px;font-weight:500}
.hall_group.feature .hall_lvl_sub{color:rgba(255,255,255,.65)}
.hall_schools{display:flex;flex-wrap:wrap;gap:10px;position:relative;z-index:2}
.school_pill{padding:9px 16px;background:#fff;border:1px solid rgba(42,90,168,.15);border-radius:24px;font-size:13.5px;font-weight:600;color:var(--color-primary-deep);letter-spacing:.3px;display:inline-flex;align-items:center;gap:7px;transition:all .2s}
.school_pill:hover{border-color:var(--color-orange);transform:translateY(-1px);box-shadow:0 4px 12px rgba(250,100,0,.15)}
.hall_group.feature .school_pill{background:rgba(255,255,255,.10);border-color:rgba(184,138,59,.40);color:#fff;backdrop-filter:blur(8px)}
.hall_group.feature .school_pill:hover{background:rgba(255,255,255,.18);border-color:#fbb87e}
.school_pill .en{font-size:11px;color:var(--color-text-muted);font-weight:500;font-style:italic}
.hall_group.feature .school_pill .en{color:rgba(251,184,126,.85)}
.hall_summary{margin-top:30px;text-align:center;font-size:16px;color:var(--color-text-sub);font-weight:500;letter-spacing:.5px}
.hall_summary strong{color:var(--color-primary-deep);font-size:18px}

/* ===== Cases ===== */
.cases_section{width:100%;background:linear-gradient(180deg,#f8f8f8,#fff);padding:90px 0}
.cases_grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;max-width:1320px;margin:0 auto}
.case_card{background:#fff;border-radius:20px;padding:32px 30px;border:1px solid rgba(42,90,168,.08);transition:all .3s;position:relative;overflow:hidden;display:flex;flex-direction:column}
.case_card:hover{transform:translateY(-6px);box-shadow:0 16px 32px rgba(42,90,168,.12);border-color:rgba(42,90,168,.2)}
.case_card_top{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:18px}
.case_index_big{font-size:48px;font-weight:900;line-height:1;background:linear-gradient(135deg,#1a3a6e,#2a5aa8);-webkit-background-clip:text;background-clip:text;color:transparent;letter-spacing:-2px}
.case_avatar{width:54px;height:54px;border-radius:50%;background:linear-gradient(135deg,#fa6400,#EC5F00);color:#fff;display:flex;align-items:center;justify-content:center;font-size:22px;font-weight:800;box-shadow:0 6px 16px rgba(250,100,0,.25)}
.case_label_pill{display:inline-block;background:var(--color-orange-light);color:var(--color-orange-dark);font-size:11px;font-weight:700;padding:4px 11px;border-radius:12px;margin-bottom:10px;letter-spacing:1px;align-self:flex-start}
.case_title{font-size:17px;font-weight:800;color:var(--color-text-h);margin-bottom:12px;line-height:1.45}
.case_quote{font-size:13px;color:var(--color-text-sub);line-height:1.75;font-style:italic;padding:12px 14px;background:rgba(42,90,168,.04);border-left:3px solid rgba(42,90,168,.3);border-radius:6px;margin-bottom:14px}
.case_action{font-size:13px;color:var(--color-text-body);line-height:1.7;margin-bottom:14px}
.case_action strong{color:var(--color-primary-deep)}
.case_result{padding:14px 16px;background:linear-gradient(135deg,#e8f0fb,#f4f7fd);border-radius:10px;border-left:3px solid var(--color-primary);margin-bottom:14px}
.case_result_lbl{font-size:11px;font-weight:700;color:var(--color-primary);letter-spacing:1.2px;margin-bottom:4px}
.case_result_text{font-size:14px;color:var(--color-primary-deep);font-weight:700;line-height:1.55}
.case_student_meta{font-size:12px;color:var(--color-text-muted);line-height:1.6;margin-top:auto;padding-top:10px;border-top:1px dashed var(--color-border)}
.case_student_meta strong{color:var(--color-text-sub);font-weight:700}

/* ===== Boundaries + Promises ===== */
.boundary_section{width:100%;background:#fff;padding:90px 0}
.boundary_split{display:grid;grid-template-columns:1fr 1fr;gap:24px;max-width:1320px;margin:0 auto 50px}
.boundary_box{padding:30px 32px;border-radius:18px;position:relative;overflow:hidden}
.boundary_box.do{background:linear-gradient(160deg,#e8f0fb,#f4f7fd);border:1px solid rgba(42,90,168,.18)}
.boundary_box.dont{background:linear-gradient(160deg,#fff3e8,#ffe5d2);border:1px solid rgba(250,100,0,.18)}
.boundary_h{font-size:16px;font-weight:800;letter-spacing:.5px;margin-bottom:18px;display:flex;align-items:center;gap:10px}
.boundary_h .mark{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;font-size:18px;font-weight:900;color:#fff}
.boundary_box.do .boundary_h{color:var(--color-primary-deep)}
.boundary_box.do .boundary_h .mark{background:linear-gradient(135deg,#1a3a6e,#2a5aa8);box-shadow:0 6px 14px rgba(42,90,168,.3)}
.boundary_box.dont .boundary_h{color:var(--color-orange-dark)}
.boundary_box.dont .boundary_h .mark{background:linear-gradient(135deg,#fa6400,#EC5F00);box-shadow:0 6px 14px rgba(250,100,0,.3)}
.boundary_list{display:flex;flex-direction:column;gap:14px}
.boundary_item{padding:12px 16px;background:rgba(255,255,255,.7);border-radius:10px;font-size:13.5px;color:var(--color-text-body);line-height:1.7;border:1px solid rgba(255,255,255,.5);backdrop-filter:blur(6px)}
.boundary_item strong{color:var(--color-primary-deep)}
.boundary_box.dont .boundary_item strong{color:var(--color-orange-dark)}

.promise_grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;max-width:1320px;margin:0 auto}
.promise_card_full{background:#fff;border-radius:16px;padding:24px 22px 22px;border:1px solid rgba(42,90,168,.08);transition:all .3s;position:relative;overflow:hidden}
.promise_card_full:hover{transform:translateY(-4px);box-shadow:0 10px 24px rgba(42,90,168,.1);border-color:rgba(42,90,168,.2)}
.promise_card_full:nth-child(7){grid-column:span 3;background:linear-gradient(135deg,#fff3e8,#ffe5d2);border-color:rgba(250,100,0,.15);text-align:center;padding:26px 30px;display:flex;align-items:center;justify-content:center}
.promise_card_full:nth-child(7) .promise_tail_text{font-size:22px;font-weight:800;color:var(--color-primary-deep);letter-spacing:1.5px}
.promise_card_full:nth-child(7) .promise_tail_text span{color:var(--color-orange);font-style:italic}
.promise_num_badge{position:absolute;top:-2px;right:14px;width:38px;height:46px;background:linear-gradient(135deg,#0c2246,#2a5aa8);color:#fff;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:800;border-radius:0 0 10px 10px;box-shadow:0 4px 12px rgba(42,90,168,.25)}
.promise_icon_full{width:44px;height:44px;background:linear-gradient(135deg,#fff3e8,#ffe5d2);border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:22px;margin-bottom:12px}
.promise_title_full{font-size:16px;font-weight:800;color:var(--color-text-h);margin-bottom:8px;letter-spacing:.3px;line-height:1.4;padding-right:38px}
.promise_desc_full{font-size:13px;color:var(--color-text-sub);line-height:1.75}
.promise_desc_full strong{color:var(--color-primary-deep)}
.promise_block_label{text-align:center;margin-bottom:30px;font-size:14px;font-weight:700;color:var(--color-orange);letter-spacing:2px;text-transform:uppercase;position:relative}
.promise_block_label::before,.promise_block_label::after{content:"";display:inline-block;width:60px;height:2px;background:linear-gradient(90deg,transparent,var(--color-orange));vertical-align:middle;margin:0 14px}
.promise_block_label::after{background:linear-gradient(90deg,var(--color-orange),transparent)}

/* ===== FAQ ===== */
.faq_section{width:100%;background:linear-gradient(180deg,#f8f8f8,#fff);padding:90px 0}
.faq_grid{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:18px}
.faq_card{background:linear-gradient(160deg,#f4f7fd,#fff);border-radius:14px;padding:24px 26px;border:1px solid rgba(42,90,168,.08);transition:all .3s}
.faq_card:hover{box-shadow:0 6px 20px rgba(42,90,168,.08);border-color:rgba(42,90,168,.18)}
.faq_q{display:flex;gap:14px;align-items:flex-start;font-size:16px;font-weight:700;color:var(--color-text-h);line-height:1.5;margin-bottom:10px}
.faq_q_idx{flex-shrink:0;width:32px;height:32px;background:linear-gradient(135deg,#fa6400,#EC5F00);border-radius:8px;color:#fff;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:800;letter-spacing:.5px;box-shadow:0 4px 10px rgba(250,100,0,.3)}
.faq_q_text{flex:1;padding-top:6px}
.faq_a{padding-left:46px;font-size:14px;color:var(--color-text-sub);line-height:1.85}
.faq_a strong{color:var(--color-primary-deep)}
.faq_a em{color:var(--color-orange-dark);font-style:normal;font-weight:600}

/* ===== CTA ===== */
.cta_section{width:100%;background:linear-gradient(135deg,#0c2246,#1a3a6e 50%,#2a5aa8);padding:90px 0;position:relative;overflow:hidden}
.cta_section::before{content:"";position:absolute;top:-150px;left:-100px;width:400px;height:400px;background:radial-gradient(circle,rgba(250,100,0,.2),transparent 65%);border-radius:50%}
.cta_section::after{content:"";position:absolute;bottom:-100px;right:-100px;width:380px;height:380px;background:radial-gradient(circle,rgba(255,255,255,.06),transparent 70%);border-radius:50%}
.cta_inner{max-width:1100px;margin:0 auto;padding:0 40px;position:relative;z-index:2;text-align:center}
.cta_label{display:inline-block;background:rgba(255,255,255,.12);color:#fbb87e;font-size:13px;font-weight:600;padding:6px 18px;border-radius:20px;margin-bottom:22px;letter-spacing:1.5px;border:1px solid rgba(250,100,0,.25)}
.cta_title{font-size:38px;font-weight:800;color:#fff;line-height:1.4;margin-bottom:18px;letter-spacing:1.2px}
.cta_title .accent{background:linear-gradient(120deg,#fbb87e,#fa6400);-webkit-background-clip:text;background-clip:text;color:transparent}
.cta_subtitle{font-size:17px;color:rgba(255,255,255,.75);line-height:1.85;margin-bottom:34px;font-weight:300}
.cta_features{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:30px auto;max-width:980px}
.cta_feat_item{padding:18px 14px;background:rgba(255,255,255,.08);border-radius:12px;backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.12);text-align:center}
.cta_feat_item .feat_icon{font-size:24px;margin-bottom:8px;display:block}
.cta_feat_item .feat_title{font-size:14px;color:#fbb87e;font-weight:700;margin-bottom:4px;letter-spacing:.5px}
.cta_feat_item .feat_desc{font-size:12px;color:rgba(255,255,255,.7);line-height:1.6}
.cta_btns{display:flex;gap:18px;justify-content:center;margin-top:30px}
.cta_btn{padding:16px 40px;border-radius:32px;font-size:17px;font-weight:700;cursor:pointer;transition:all .25s;letter-spacing:1px}
.cta_btn_primary{background:linear-gradient(135deg,#fa6400,#EC5F00);color:#fff;box-shadow:0 10px 28px rgba(250,100,0,.45)}
.cta_btn_primary:hover{transform:translateY(-3px);box-shadow:0 14px 34px rgba(250,100,0,.55)}
.cta_btn_outline{background:rgba(255,255,255,.1);color:#fff;border:1.5px solid rgba(255,255,255,.4);backdrop-filter:blur(8px)}
.cta_btn_outline:hover{background:rgba(255,255,255,.18);border-color:#fff}
.cta_contact_strip{margin-top:34px;display:flex;justify-content:center;gap:48px;flex-wrap:wrap;font-size:14px;color:rgba(255,255,255,.7)}
.cta_contact_strip strong{color:#fff;font-weight:600;margin-right:6px}


/* ===== Floating contact ===== */
.float_btns{position:fixed;right:20px;bottom:80px;z-index:999;display:flex;flex-direction:column;gap:10px}
.float_btn{width:54px;height:54px;background:#fff;border-radius:50%;box-shadow:0 6px 20px rgba(0,0,0,.15);display:flex;align-items:center;justify-content:center;font-size:24px;cursor:pointer;transition:all .25s}
.float_btn:hover{transform:translateY(-3px);box-shadow:0 10px 26px rgba(0,0,0,.2)}
.float_btn.primary{background:linear-gradient(135deg,#fa6400,#EC5F00);color:#fff}

/* ========================================================
   响应式 Responsive
   断点：≤1280 / ≤1024 / ≤900 / ≤768 / ≤480
   ======================================================== */

/* —— ≤1280px：略缩 —— */
@media (max-width: 1280px){
    .home_header{padding:0 36px}
    .Navlist{margin-left:30px}
    .Navlist ul{gap:24px}
    .banner-placeholder h2{font-size:64px;letter-spacing:4px}
    .banner-sub{font-size:22px}
    .banner-schools{gap:20px}
    .shadows{padding:24px 36px}
    .shadows .list .num{font-size:32px}
    .sec_h{font-size:32px}
    .hook_quote{font-size:28px}
    .what_def{padding:38px 44px}
    .what_def_title{font-size:24px}
    .cta_title{font-size:32px}
    .hall_group{padding:24px 28px;gap:24px}
}

/* —— ≤1024px：平板横屏，多列降级 —— */
@media (max-width: 1024px){
    .width1400{padding:0 24px}

    /* Header */
    .home_header{padding:0 22px;height:72px}
    .Navlist{margin-left:18px}
    .Navlist ul{gap:16px}
    .Navlist li{font-size:14px;padding:24px 0}
    .Navlist li.active::after{bottom:16px}
    .telphone{font-size:16px}
    .headlogo-text .zh{font-size:17px}

    /* Banner */
    .banner-placeholder{min-height:560px;padding:60px 20px 110px}
    .banner-placeholder h2{font-size:52px;letter-spacing:3px}
    .banner-sub{font-size:20px;letter-spacing:2px}
    .banner-tagline{font-size:13px;letter-spacing:3px}
    .banner-tagline span{margin:0 8px}
    .banner-schools{gap:16px;font-size:13px;margin-top:14px}
    .banner-schools .sch{font-size:13px}
    .banner-btns{gap:14px;margin-top:22px}
    .banner-btn{padding:12px 28px;font-size:15px}

    /* Shadows */
    .shadows{padding:22px 28px;width:calc(100% - 48px)}
    .shadows .list{padding:0 8px}
    .shadows .list .num{font-size:28px}
    .shadows .list .num span.unit{font-size:15px}
    .shadows .list .text{font-size:12px}

    /* Section title */
    .sec_h{font-size:28px}
    .sec_desc{font-size:16px}

    /* Hook */
    .hook_section{padding:120px 0 70px}
    .hook_inner{padding:0 24px}
    .hook_quote{font-size:24px}
    .hook_lead{font-size:15.5px}
    .hook_facts{gap:14px;margin-top:32px}
    .hook_fact{padding:20px 18px}

    /* Pain：3 列 → 2 列 */
    .pain_section{padding:70px 0}
    .pain_grid{grid-template-columns:repeat(2,1fr);max-width:780px;gap:14px}
    .pain_card{padding:24px 22px}

    /* Trust：5 列 → 3 列 */
    .trust_section{padding:70px 0 60px}
    .trust_grid{grid-template-columns:repeat(3,1fr);max-width:780px;gap:14px}
    .trust_card .num{font-size:26px}

    /* What */
    .what_section{padding:70px 0}
    .what_def{padding:34px 36px;border-radius:20px}
    .what_def_title{font-size:22px}
    .what_def_text{font-size:15px}
    .std_intro{font-size:15px}

    /* Std：4 列 → 2 列 */
    .std_grid{grid-template-columns:repeat(2,1fr);max-width:780px;gap:14px}
    .std_card{padding:26px 22px}
    .std_no{font-size:36px}

    /* Officers：3 列 → 2 列 */
    .officers_section{padding:70px 0}
    .officers_intro{font-size:15px}
    .officers_grid{grid-template-columns:repeat(2,1fr);max-width:840px;gap:18px}
    .officer_card{padding:26px 24px}

    /* Timeline + Modules */
    .timeline_section{padding:70px 0}
    /* Year row 4 → 2 列 */
    .year_row{grid-template-columns:repeat(2,1fr);max-width:680px;gap:14px}
    /* Modules 4 → 2 列。第7张 span 1（保持），第8张 span 2 */
    .modules_grid{grid-template-columns:repeat(2,1fr);max-width:680px;gap:12px}
    .module_card:nth-child(8){grid-column:span 2}

    /* Hall：保留 240px+1fr，但收紧 */
    .hall_section{padding:70px 0}
    .hall_lead{font-size:15px}
    .hall_group{grid-template-columns:200px 1fr;padding:24px 26px;gap:22px}
    .hall_lvl_h{font-size:20px}

    /* Cases：3 列 → 2 列 */
    .cases_section{padding:70px 0}
    .cases_grid{grid-template-columns:repeat(2,1fr);max-width:840px}

    /* Boundary：保持 1:1 */
    .boundary_section{padding:70px 0}
    .boundary_split{gap:18px}
    .boundary_box{padding:26px 24px}

    /* Promise：3 列 → 2 列。第7张 span 3 → span 2 */
    .promise_grid{grid-template-columns:repeat(2,1fr);max-width:780px;gap:14px}
    .promise_card_full:nth-child(7){grid-column:span 2}

    /* FAQ */
    .faq_section{padding:70px 0}
    .faq_grid{gap:14px}

    /* CTA */
    .cta_section{padding:70px 0}
    .cta_title{font-size:30px;letter-spacing:1px}
    .cta_subtitle{font-size:15px}
    .cta_features{grid-template-columns:repeat(2,1fr);max-width:680px;gap:12px}


}

/* —— ≤900px：平板竖屏，导航折叠 + 浮动条转静态 —— */
@media (max-width: 900px){
    .home_header{padding:0 18px;height:64px;justify-content:space-between}
    .Navlist{display:none}
    .headlogo-mark{width:38px;height:38px;font-size:16px;border-radius:9px}
    .headlogo-text .zh{font-size:16px}
    .headlogo-text .en{font-size:10px}
    .telphone{font-size:14px;gap:6px}
    .telphone::before{font-size:14px}

    /* Banner shadows 浮动 → 静态 */
    .banner-placeholder{padding:54px 18px 50px;min-height:auto}
    .shadows{position:relative;left:auto;transform:none;bottom:auto;width:calc(100% - 36px);max-width:760px;margin:-40px auto 0;padding:18px 14px}
    .shadows .maxwidth{flex-wrap:wrap;gap:10px 0}
    .shadows .list{flex:0 0 33.3333%;border-right:none;padding:8px 6px;border-bottom:1px solid #eef0f4}
    .shadows .list:nth-last-child(-n+3){border-bottom:none}
    .shadows .list .num{font-size:24px}
    .shadows .list .num span.unit{font-size:13px}
    .shadows .list .text{font-size:11px}

    /* Hook 顶部 padding 收回 */
    .hook_section{padding:60px 0}

    /* Hall：横向 → 竖向堆叠 */
    .hall_group{grid-template-columns:1fr;gap:16px;padding:24px 26px}
}

/* —— ≤768px：手机，全部多列降为 1 列 —— */
@media (max-width: 768px){
    .width1400{padding:0 16px}

    /* Banner */
    .banner-placeholder{padding:44px 16px 50px}
    .banner-tag{font-size:12px;padding:6px 14px;letter-spacing:1px}
    .banner-placeholder h2{font-size:34px;letter-spacing:1.5px;margin:8px 0}
    .banner-sub{font-size:15px;letter-spacing:1px}
    .banner-tagline{font-size:11.5px;letter-spacing:2px;margin-top:10px}
    .banner-tagline span{margin:0 4px;display:inline}
    .banner-schools{gap:10px 14px;font-size:12px;margin-top:14px;padding:0 10px}
    .banner-schools .sch{font-size:12px;letter-spacing:.5px}
    .banner-btns{gap:10px;margin-top:22px;flex-wrap:wrap;justify-content:center}
    .banner-btn{padding:11px 22px;font-size:14px}

    /* Shadows 3 → 2 列 */
    .shadows{margin-top:-30px;padding:16px 12px;width:calc(100% - 32px)}
    .shadows .list{flex:0 0 50%}
    .shadows .list:nth-last-child(-n+3){border-bottom:1px solid #eef0f4}
    .shadows .list:nth-last-child(-n+2){border-bottom:none}
    .shadows .list .num{font-size:22px}

    /* Section title */
    .sec_title{margin-bottom:32px}
    .sec_kicker{font-size:12px;padding:4px 12px}
    .sec_h{font-size:22px;line-height:1.4}
    .sec_desc{font-size:14px}

    /* Hook */
    .hook_section{padding:50px 0}
    .hook_inner{padding:0 18px}
    .hook_label{font-size:12px;padding:5px 14px;margin-bottom:22px}
    .hook_quote{font-size:20px;line-height:1.55;margin-bottom:22px}
    .hook_lead{font-size:14px;line-height:1.85}
    .hook_facts{grid-template-columns:1fr;gap:12px;margin-top:28px}
    .hook_fact{padding:18px 18px}
    .hook_cta_line{padding:18px 22px;font-size:15px;line-height:1.65;margin-top:28px}

    /* Pain：2 列 → 1 列 */
    .pain_section{padding:56px 0}
    .pain_grid{grid-template-columns:1fr;max-width:440px;gap:14px}
    .pain_card{padding:22px 20px}
    .pain_index{width:40px;height:40px;font-size:16px;border-radius:10px}
    .pain_title{font-size:16px}
    .pain_desc{font-size:13px;line-height:1.75}
    .pain_solution{font-size:13px;padding:9px 12px}
    .pain_summary{font-size:15px;padding:18px 22px;line-height:1.6;letter-spacing:.5px;margin-top:28px}

    /* Trust：3 列 → 2 列 */
    .trust_section{padding:56px 0 50px}
    .trust_lead{margin-bottom:32px}
    .trust_lead .focus{font-size:19px}
    .trust_lead .sub{font-size:13px}
    .trust_grid{grid-template-columns:repeat(2,1fr);max-width:420px;gap:12px}
    .trust_card{padding:22px 14px}
    .trust_card .icon{font-size:26px}
    .trust_card .num{font-size:24px}
    .trust_card .lbl{font-size:12px}

    /* What + Std：2 列 → 1 列 */
    .what_section{padding:56px 0}
    .what_def{padding:28px 24px;border-radius:18px;margin-bottom:32px}
    .what_def_label{font-size:12px}
    .what_def_title{font-size:18px;line-height:1.5}
    .what_def_text{font-size:14px;line-height:1.85;margin-top:12px}
    .std_intro{font-size:14px;margin-bottom:24px}
    .std_grid{grid-template-columns:1fr;max-width:420px;gap:12px}
    .std_card{padding:22px 20px}
    .std_no{font-size:32px}
    .std_title{font-size:16px}

    /* Officers：2 列 → 1 列 */
    .officers_section{padding:56px 0}
    .officers_intro{font-size:14px;margin-bottom:30px}
    .officers_grid{grid-template-columns:1fr;max-width:480px;gap:14px}
    .officer_card{padding:24px 22px}
    .officer_avatar{width:54px;height:54px;font-size:20px}
    .officer_name{font-size:16px}
    .officer_school{font-size:12px}
    .officer_detail{font-size:12.5px;padding:10px 12px}
    .officer_meta{font-size:11.5px;gap:10px}
    .officer_summary{font-size:15px;padding:18px 22px;line-height:1.65;margin-top:28px;letter-spacing:.5px}

    /* Timeline + Modules：2 → 1 列。
       第8张 span 4 → span 1（单列下自然占满） */
    .timeline_section{padding:56px 0}
    .year_row{grid-template-columns:1fr;max-width:380px;gap:12px;margin-bottom:28px}
    .year_card{padding:22px 20px}
    .year_grade{font-size:21px}
    .year_subtitle{font-size:12.5px}
    .modules_grid{grid-template-columns:1fr;max-width:420px;gap:12px}
    .module_card{padding:20px 18px}
    .module_card:nth-child(7){grid-column:span 1}
    .module_card:nth-child(8){grid-column:span 1;padding:18px 22px;font-size:15px;letter-spacing:.5px;line-height:1.55}

    /* Hall */
    .hall_section{padding:56px 0}
    .hall_lead{font-size:14px;margin-bottom:30px}
    .hall_lead .scope{font-size:12px;padding:3px 10px}
    .hall_group{padding:22px 22px;gap:14px}
    .hall_lvl_h{font-size:18px}
    .hall_lvl_sub{font-size:11px}
    .school_pill{padding:7px 13px;font-size:12.5px;gap:5px}
    .school_pill .en{font-size:10px}
    .hall_summary{font-size:14px;margin-top:24px;padding:0 14px;line-height:1.7}
    .hall_summary strong{font-size:16px}

    /* Cases：2 列 → 1 列 */
    .cases_section{padding:56px 0}
    .cases_grid{grid-template-columns:1fr;max-width:440px;gap:16px}
    .case_card{padding:26px 22px}
    .case_index_big{font-size:40px}
    .case_avatar{width:46px;height:46px;font-size:18px}
    .case_title{font-size:16px}

    /* Boundary：1:1 → 1 列 */
    .boundary_section{padding:56px 0}
    .boundary_split{grid-template-columns:1fr;gap:14px;margin-bottom:38px}
    .boundary_box{padding:24px 22px}
    .boundary_h{font-size:15px;margin-bottom:14px}
    .boundary_h .mark{width:30px;height:30px;font-size:16px}
    .boundary_item{font-size:13px;padding:10px 14px}

    /* Promise：2 列 → 1 列。第7张 span 1 */
    .promise_grid{grid-template-columns:1fr;max-width:440px;gap:12px}
    .promise_card_full{padding:22px 20px}
    .promise_card_full:nth-child(7){grid-column:span 1;padding:22px 24px}
    .promise_card_full:nth-child(7) .promise_tail_text{font-size:16px;letter-spacing:.5px;line-height:1.55}
    .promise_num_badge{width:32px;height:38px;font-size:15px;right:12px}
    .promise_title_full{font-size:15px;padding-right:34px}
    .promise_desc_full{font-size:12.5px}
    .promise_block_label{font-size:12px;letter-spacing:1.5px;margin-bottom:24px}
    .promise_block_label::before,.promise_block_label::after{width:32px;margin:0 8px}

    /* FAQ：2 列 → 1 列 */
    .faq_section{padding:56px 0}
    .faq_grid{grid-template-columns:1fr;gap:12px}
    .faq_card{padding:20px 22px}
    .faq_q{font-size:15px;gap:12px}
    .faq_q_idx{width:28px;height:28px;font-size:11px;border-radius:7px}
    .faq_a{padding-left:40px;font-size:13.5px;line-height:1.85}

    /* CTA */
    .cta_section{padding:56px 0}
    .cta_inner{padding:0 18px}
    .cta_label{font-size:12px;padding:5px 14px;letter-spacing:1px}
    .cta_title{font-size:24px;line-height:1.45;letter-spacing:.5px;margin-bottom:14px}
    .cta_subtitle{font-size:14px;line-height:1.85;margin-bottom:26px}
    .cta_features{grid-template-columns:1fr;max-width:340px;gap:10px;margin:24px auto}
    .cta_feat_item{padding:14px 14px}
    .cta_btns{flex-direction:column;gap:12px;margin-top:24px}
    .cta_btn{padding:14px 28px;font-size:15px;width:100%}
    .cta_contact_strip{flex-direction:column;gap:10px;font-size:13px;margin-top:26px}



    /* Floating btn */
    .float_btns{right:14px;bottom:60px;gap:8px}
    .float_btn{width:46px;height:46px;font-size:20px}
}

/* —— ≤480px：小屏手机 —— */
@media (max-width: 480px){
    .home_header{padding:0 14px;height:58px}
    .headlogo-block{gap:8px}
    .headlogo-mark{width:34px;height:34px;font-size:14px}
    .headlogo-text .zh{font-size:15px;letter-spacing:.5px}
    .headlogo-text .en{font-size:9px}
    .telphone{font-size:13px}

    .banner-placeholder{padding:36px 14px 44px}
    .banner-placeholder h2{font-size:28px;letter-spacing:1px}
    .banner-sub{font-size:13.5px}
    .banner-schools{gap:8px 12px}
    .banner-schools .sch{font-size:11.5px}

    .shadows{margin-top:-22px;padding:12px 8px}
    .shadows .list{padding:6px 4px}
    .shadows .list .num{font-size:19px}

    .sec_h{font-size:19px}
    .sec_desc{font-size:13px}

    .hook_quote{font-size:17px}
    .hook_lead{font-size:13.5px}
    .hook_cta_line{font-size:14px;padding:16px 18px}

    /* Officer meta 1fr 1fr → 1 列，避免太挤 */
    .officer_meta{grid-template-columns:1fr;gap:6px;font-size:11.5px}

    .pain_card{padding:20px 18px}
    .trust_grid{max-width:360px}
    .trust_card{padding:18px 12px}
    .trust_card .num{font-size:22px}

    .what_def_title{font-size:17px}
    .std_card{padding:20px 18px}
    .std_no{font-size:28px}

    .officer_card{padding:22px 18px}
    .officer_top{gap:12px}

    .year_card{padding:20px 18px}
    .year_grade{font-size:19px}
    .module_card{padding:18px 16px}

    .hall_group{padding:20px 18px}
    .school_pill{padding:6px 11px;font-size:12px}

    .case_card{padding:22px 18px}
    .case_index_big{font-size:34px}

    .boundary_box{padding:22px 18px}
    .boundary_item{font-size:12.5px}

    .faq_card{padding:18px 18px}
    .faq_q{font-size:14px}
    .faq_a{padding-left:36px;font-size:13px}

    .cta_title{font-size:21px}

}

/* —— 横屏小手机 banner 高度补丁 —— */
@media (max-height: 480px) and (orientation: landscape){
    .banner-placeholder{min-height:auto;padding:36px 18px 40px}
}