/* Cầu Nối Đức (dichvuduhoc) — trang chủ y hệt mockup (cyan #00aeef + navy #1a2a53 màu gốc), cỡ đo theo mockup 742px x1.94 (10-02) */
:root { --cn-cyan: #00AEEF; --cn-cyan-d: #0096D1; --cn-navy: #162F59; --cn-navy2: #193666; --cn-ink: #13254D; --cn-text: #3A4659; --cn-muted: #5E6A7D; --cn-line: #E3E8EF; --cn-soft: #E9F9FE; --cn-soft2: #E6F7FE; }
body, p, li, a, input, select, textarea, button, h1, h2, h3, h4, td, th, label, span, .nav > li > a { font-family: "Be Vietnam Pro", sans-serif !important; }
h1 a, h2 a, h3 a, h4 a { font-family: inherit !important; }
body { color: var(--cn-text); }
/* ---------- header ---------- */
#top-bar { display: none !important; }
#header .header-main { background: var(--cn-navy) !important; box-shadow: none; }
#header .header-bg-color { background-color: var(--cn-navy) !important; }
#header .header-wrapper { border-bottom: 0 !important; }
#header #logo { width: 300px !important; max-width: none !important; margin: 0 !important; top: 0 !important; }
#header #logo a { position: relative; top: 0 !important; margin: 0 !important; display: flex !important; align-items: center; min-height: 54px; padding-left: 108px; background: url(icons/logo.png) left center / 92px auto no-repeat; color: #fff !important; font-size: 30px !important; font-weight: 600 !important; letter-spacing: -.3px; line-height: 1 !important; white-space: nowrap; text-transform: none !important; }
#header #logo a::after { display: none !important; }
#header .header-main .flex-right { flex: 1 1 auto; justify-content: flex-end; }
#header .header-nav-main { flex-wrap: nowrap !important; align-items: center; }
#header .header-nav-main > li { margin: 0 0 0 34px !important; white-space: nowrap; border: 0 !important; }
#header .header-nav-main > li > a { font-size: 15.5px !important; font-weight: 500 !important; color: #fff !important; text-transform: none !important; letter-spacing: 0 !important; padding: 0 !important; line-height: 40px; background: transparent !important; }
#header .header-nav-main > li > a:hover { color: var(--cn-cyan) !important; }
/* menu toàn mục neo trang chủ -> WP gắn current-menu-item cho MỌI mục (LESSONS 127/259): không tô mục hiện tại */
#header .header-nav-main > li > a::before, #header .header-nav-main > li > a::after { display: none !important; }
#header .header-nav-main > li.current-menu-item > a, #header .header-nav-main > li.active > a { color: #fff !important; }
#header .header-nav-main > li.header-button-1 { margin-left: 44px !important; }
#header .header-button-1 .button { background: var(--cn-cyan) !important; color: #fff !important; border: 0 !important; border-radius: 5px !important; text-transform: none !important; letter-spacing: 0 !important; font-size: 15.5px !important; font-weight: 600 !important; height: 52px; line-height: 52px; min-height: 52px; min-width: 186px; padding: 0 24px !important; margin: 0 !important; box-shadow: none !important; }
#header .header-button-1 .button:hover { background: var(--cn-cyan-d) !important; }
/* ---------- chung ---------- */
.cn-sec p:not([class]), .cn-footer p:not([class]) { display: contents; }
.cn-sec p, .cn-footer p { margin-bottom: 0; }
.cn-sec .col, .cn-footer .col { padding-bottom: 0 !important; }
.cn-h2 { color: var(--cn-ink) !important; font-size: 38px !important; font-weight: 800 !important; line-height: 1.2 !important; letter-spacing: -.02em; margin: 0 0 16px !important; }
.cn-h2::after { content: ""; display: block; width: 40px; height: 4px; border-radius: 2px; background: var(--cn-cyan); margin-top: 10px; }
.cn-h2.cn-h2-nb::after { display: none; }
.cn-sub { color: var(--cn-text); font-size: 20px; line-height: 1.5; margin: -14px 0 12px; }
.cn-ic { display: block; max-width: none; }
.cn-btn { display: inline-flex; align-items: center; justify-content: center; gap: 14px; border: 2px solid transparent; border-radius: 5px; font-size: 17px; font-weight: 600; padding: 0 26px; min-height: 52px; line-height: 1.2; text-decoration: none !important; cursor: pointer; margin: 0; text-transform: none; letter-spacing: 0; transition: background .2s, color .2s; }
.cn-btn i { font-style: normal; font-size: 22px; line-height: 1; }
.cn-btn-cyan { background: var(--cn-cyan); border-color: var(--cn-cyan); color: #fff !important; } .cn-btn-cyan:hover { background: var(--cn-cyan-d); border-color: var(--cn-cyan-d); }
.cn-btn-line { background: #fff; border-color: var(--cn-cyan); color: var(--cn-cyan-d) !important; } .cn-btn-line:hover { background: #E9F7FD; }
.cn-more { color: var(--cn-cyan-d) !important; font-weight: 600; font-size: 15.5px; white-space: nowrap; text-decoration: underline !important; text-underline-offset: 3px; } .cn-more i { font-style: normal; display: inline-block; margin-left: 6px; text-decoration: none; transition: transform .2s; } .cn-more:hover i { transform: translateX(3px); }
.cn-ticks { list-style: none; margin: 0 !important; padding: 0; }
.cn-ticks li { position: relative; list-style: none; margin: 0 !important; }
.cn-ticks li::before { content: ""; position: absolute; left: 0; top: 50%; border-radius: 50%; background: var(--cn-cyan) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 12.5 4 4 8-8.5'/%3E%3C/svg%3E") center / 62% no-repeat; }
/* ---------- hero ---------- */
.section.cn-hero { min-height: 628px; padding: 0 !important; align-items: flex-start !important; }
.cn-hero .section-bg::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(19,40,80,.97) 0%, rgba(19,40,80,.95) 34%, rgba(19,40,80,.72) 44%, rgba(19,40,80,.18) 55%, rgba(19,40,80,0) 62%); pointer-events: none; }
.cn-hero-in { padding: 76px 0 40px; max-width: 700px; position: relative; }
.cn-eyebrow { color: #79C3EE; font-size: 16px; font-weight: 600; letter-spacing: 1.6px; text-transform: uppercase; margin: 0 0 16px; }
.cn-eyebrow span { color: var(--cn-cyan); margin: 0 6px; }
.cn-h1 { color: #fff !important; font-size: 77px !important; font-weight: 800 !important; line-height: 1.14 !important; letter-spacing: -.02em; margin: 0 0 6px !important; }
.cn-h1-sub { color: #fff; font-size: 40px; font-weight: 700; line-height: 1.25; letter-spacing: -.01em; margin: 0 0 26px; }
.cn-ticks-hero li { padding-left: 56px; font-size: 23.5px; line-height: 54px; color: #fff; }
.cn-ticks-hero li::before { width: 36px; height: 36px; margin-top: -18px; }
.cn-hero .cn-btn-lg { min-height: 65px; min-width: 382px; font-size: 22px; font-weight: 700; margin-top: 34px; }
.cn-hero-note { color: #AEBBD0; font-size: 17px; margin-top: 18px; }
/* ---------- vì sao ---------- */
.section.cn-why-sec { padding: 26px 0 33px !important; }
.cn-why { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 21px; }
.cn-wc { border: 1px solid var(--cn-line); border-radius: 6px; background: #fff; min-height: 223px; padding: 16px 16px 18px; text-align: center; box-shadow: 0 2px 10px rgba(20,50,90,.04); }
.cn-wc .cn-ic { width: 78px; height: 78px; margin: 0 auto 12px; }
.cn-wc h3 { color: var(--cn-ink) !important; font-size: 23px !important; font-weight: 700 !important; line-height: 1.3 !important; margin: 0 0 8px !important; }
.cn-wc-d { font-size: 19px; color: var(--cn-muted); line-height: 1.55; }
/* ---------- lộ trình ---------- */
.section.cn-road-sec { padding: 30px 0 36px !important; background: var(--cn-soft) !important; }
.cn-road { position: relative; height: 296px; margin-top: 4px; }
.cn-rg { position: absolute; top: 0; height: 58px; border: 2px solid #5CC6F1; border-bottom: 0; top: 42px; }
.cn-rg span { position: absolute; left: 50%; top: -42px; transform: translateX(-50%); white-space: nowrap; font-size: 19.5px; font-weight: 600; color: var(--cn-ink); line-height: 30px; }
.cn-rg::before, .cn-rg::after { content: ""; position: absolute; top: -2px; width: 2px; height: 16px; background: #5CC6F1; }
.cn-rg { height: 0; border: 0; border-top: 2px solid #5CC6F1; }
.cn-rg::before { left: 0; } .cn-rg::after { right: 0; }
.cn-rg-vn { left: 7.6%; width: 45.3%; } .cn-rg-de { left: 71.55%; width: 21.4%; }
.cn-rline { position: absolute; left: 7.6%; right: 7.05%; top: 124px; border-top: 2px dashed #5CC6F1; }
.cn-rs { position: absolute; top: 66px; width: 240px; margin-left: -120px; text-align: center; }
.cn-rs1 { left: 7.6%; } .cn-rs2 { left: 29.15%; } .cn-rs3 { left: 49.6%; } .cn-rs4 { left: 71.55%; } .cn-rs5 { left: 92.95%; }
.cn-rc { position: relative; width: 116px; height: 116px; margin: 0 auto 35px; border-radius: 50%; background: #fff; border: 1px solid #D6EEF9; box-shadow: 0 6px 18px rgba(0,120,180,.08); display: flex; align-items: center; justify-content: center; }
.cn-rc .cn-ic { width: 58px; height: 58px; }
.cn-rc b { position: absolute; left: 50%; bottom: -14px; width: 27px; height: 27px; margin-left: -13.5px; border-radius: 50%; background: var(--cn-cyan); color: #fff; font-size: 14px; font-weight: 700; line-height: 27px; text-align: center; box-shadow: 0 0 0 3px var(--cn-soft); }
.cn-rs h3 { color: var(--cn-ink) !important; font-size: 21px !important; font-weight: 700 !important; line-height: 1.3 !important; margin: 0 0 4px !important; }
.cn-rs-d { font-size: 17.3px; color: var(--cn-muted); line-height: 1.5; }
.cn-plane { position: absolute; left: 60.7%; top: 124px; width: 64px; height: 64px; margin: -32px 0 0 -32px; display: flex; align-items: center; justify-content: center; background: var(--cn-soft); }
.cn-plane .cn-ic { width: 54px; height: 54px; }
/* ---------- ngành ---------- */
.section.cn-trade-sec { padding: 13px 0 0 !important; }
.cn-trades { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 23px; }
.cn-tc { border: 1px solid var(--cn-line); border-radius: 6px; overflow: hidden; background: #fff; transition: box-shadow .2s; }
.cn-tc:hover { box-shadow: 0 14px 30px rgba(20,50,90,.10); }
.cn-tc-img { display: block; height: 311px; background: #E6ECF2; overflow: hidden; }
.cn-tc-img img, .cn-cond-img img, .cn-tq-av img, .cn-tv-img img { width: 100%; height: 100%; object-fit: cover; display: block; }
.cn-tc-b { padding: 14px 26px 22px; min-height: 97px; }
.cn-tc-b h3 { color: var(--cn-ink) !important; font-size: 22.5px !important; font-weight: 700 !important; line-height: 1.3 !important; margin: 0 0 8px !important; }
/* ---------- điều kiện ---------- */
.section.cn-cond-sec { padding: 40px 0 24px !important; }
.cn-cond { display: grid; grid-template-columns: minmax(0, 1fr) 679px; gap: 30px; align-items: start; }
.cn-cond .cn-h2 { margin-bottom: 8px !important; }
.cn-ticks-cond li { padding-left: 52px; font-size: 18px; line-height: 43.6px; color: var(--cn-text); }
.cn-ticks-cond li::before { width: 34px; height: 34px; margin-top: -17px; }
.cn-cond-n { font-size: 17px; color: var(--cn-text); margin: 14px 0 22px; }
.cn-cond .cn-btn-line { min-height: 56px; min-width: 270px; font-size: 18px; font-weight: 700; }
.cn-cond-img { height: 427px; border-radius: 6px; overflow: hidden; background: #E6ECF2; margin-top: 5px; }
/* ---------- khoá học ---------- */
.section.cn-course-sec { padding: 0 0 22px !important; }
.cn-course-sec .cn-h2 { margin-bottom: 18px !important; }
.cn-course-sec .cn-sub { margin: 0 0 13px; font-size: 18.5px; }
.cn-courses { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); border: 1px solid var(--cn-line); border-radius: 4px; overflow: hidden; background: #fff; }
.cn-co { display: flex; flex-direction: column; border-left: 1px solid var(--cn-line); }
.cn-co:first-child { border-left: 0; }
.cn-co-h { height: 56px; line-height: 56px; background: var(--cn-navy2); color: #fff; text-align: center; font-size: 27px; font-weight: 800; border-left: 1px solid rgba(255,255,255,.35); margin-left: -1px; }
.cn-co:first-child .cn-co-h { border-left: 0; margin-left: 0; }
.cn-co-t { height: 78px; display: flex; flex-direction: column; align-items: center; justify-content: center; border-bottom: 1px solid var(--cn-line); }
.cn-co-t b { font-size: 15.5px; font-weight: 700; color: var(--cn-ink); line-height: 1.5; }
.cn-co-t span { font-size: 18px; color: var(--cn-text); line-height: 1.6; }
.cn-co-d { height: 82px; display: flex; align-items: center; justify-content: center; text-align: center; font-size: 17.5px; color: var(--cn-text); line-height: 1.6; border-bottom: 1px solid var(--cn-line); }
.cn-co-b { height: 82px; display: flex; align-items: center; justify-content: center; }
.cn-co-b .cn-btn { width: 254px; min-height: 54px; font-size: 17.5px; font-weight: 500; border-radius: 4px; }
/* ---------- cảm nhận ---------- */
.section.cn-testi-sec { padding: 14px 0 24px !important; }
.cn-testi { display: grid; grid-template-columns: 609fr 647fr; gap: 27px; }
.cn-tq, .cn-tv { border: 1px solid var(--cn-line); border-radius: 6px; background: #fff; min-height: 206px; display: flex; align-items: center; }
.cn-tq { padding: 20px 30px 20px 20px; gap: 32px; }
.cn-tq-av { flex: 0 0 146px; width: 146px; height: 146px; border-radius: 50%; overflow: hidden; background: #E6ECF2; }
.cn-tq-b { min-width: 0; }
.cn-tq-top { display: flex; align-items: flex-start; gap: 14px; margin-bottom: 10px; }
.cn-tq-q { width: 40px; height: 40px; margin-top: 2px; }
.cn-tq-n { display: block; font-size: 18px; font-weight: 700; color: var(--cn-ink); line-height: 1.4; }
.cn-tq-r { display: block; font-size: 14px; color: var(--cn-muted); line-height: 1.5; }
.cn-tq-t { font-size: 17px; color: var(--cn-text); line-height: 1.7; }
.cn-tv { padding: 12px 24px 12px 12px; gap: 24px; }
.cn-tv-img { position: relative; flex: 0 0 260px; height: 183px; border-radius: 4px; overflow: hidden; background: #E6ECF2; display: block; }
.cn-play { position: absolute; left: 50%; top: 50%; width: 70px; height: 70px; margin: -35px 0 0 -35px; border-radius: 50%; background: rgba(20,24,32,.72); border: 3px solid rgba(255,255,255,.9); }
.cn-play::after { content: ""; position: absolute; left: 26px; top: 19px; border-style: solid; border-width: 13px 0 13px 21px; border-color: transparent transparent transparent #fff; }
.cn-tv-b h3 { color: var(--cn-ink) !important; font-size: 21px !important; font-weight: 700 !important; line-height: 1.3 !important; margin: 0 0 12px !important; }
.cn-tv-d { font-size: 16px; color: var(--cn-muted); line-height: 1.65; margin: 0 0 12px; }
/* ---------- đăng ký ---------- */
.section.cn-reg-sec { padding: 26px 0 22px !important; background: var(--cn-soft2) !important; }
.cn-reg { display: grid; grid-template-columns: minmax(0, 1fr) 619px; gap: 40px; align-items: start; scroll-margin-top: 90px; }
.cn-reg-t { padding-top: 12px; }
.cn-reg .cn-h2 { margin-bottom: 14px !important; }
.cn-reg-lead { font-size: 19.8px; color: var(--cn-text); margin: 0 0 26px; }
.cn-offer-h { color: var(--cn-ink) !important; font-size: 25px !important; font-weight: 700 !important; line-height: 1.3 !important; margin: 0 0 12px !important; }
.cn-offers { display: flex; flex-direction: column; gap: 7px; }
.cn-of { display: flex; align-items: center; gap: 26px; font-size: 18px; color: var(--cn-text); line-height: 1.5; min-height: 73px; }
.cn-of-ic { flex: 0 0 73px; height: 73px; border-radius: 12px; background: #fff; display: flex; align-items: center; justify-content: center; margin-left: 6px; }
.cn-of-ic .cn-ic { width: 44px; height: 44px; }
.cn-reg-n { font-size: 15.5px; color: var(--cn-text); margin-top: 18px; }
.cn-form { background: #fff; border-radius: 8px; box-shadow: 0 8px 26px rgba(20,60,110,.06); padding: 22px 29px 26px; }
.cn-form-t { color: var(--cn-ink) !important; font-size: 23px !important; font-weight: 700 !important; line-height: 1.3 !important; margin: 0 0 14px !important; }
.cn-form-t::after { content: ""; display: block; width: 32px; height: 4px; border-radius: 2px; background: var(--cn-cyan); margin-top: 4px; }
.cn-form .wpcf7 form { margin: 0; position: relative; }
.cn-f2 { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 25px; }
.cn-f2 > p, .cn-f1 > p, .cn-acc > p, .cn-sub-w > p { display: contents; }
.cn-f2 label, .cn-f1 label { display: block; margin: 0 0 9px; font-size: 15px; font-weight: 400; color: var(--cn-text); }
.cn-form .wpcf7-form-control-wrap { display: block; margin-top: 6px; }
.cn-form input[type=text], .cn-form input[type=tel], .cn-form input[type=email], .cn-form select { width: 100%; height: 46px !important; margin: 0 !important; border: 1px solid #CDD5E0 !important; border-radius: 5px !important; box-shadow: none !important; font-size: 15px !important; padding: 0 14px !important; color: var(--cn-ink); background-color: #fff; }
.cn-acc { margin: 6px 0 16px; font-size: 15px; color: var(--cn-text); }
.cn-acc .wpcf7-form-control-wrap { display: inline; margin: 0; }
.cn-acc .wpcf7-list-item { margin: 0; } .cn-acc label { display: inline-flex; align-items: center; gap: 14px; margin: 0; font-size: 15px; font-weight: 400 !important; }
.cn-acc input[type=checkbox] { width: 24px; height: 24px; margin: 0 !important; accent-color: var(--cn-cyan); }
.cn-form .wpcf7-submit { width: 100%; min-height: 64px; margin: 0 !important; background: var(--cn-cyan) !important; color: #fff !important; border: 0 !important; border-radius: 5px !important; font-size: 20px !important; font-weight: 700 !important; text-transform: none !important; letter-spacing: 0 !important; }
.cn-form .wpcf7-submit:hover { background: var(--cn-cyan-d) !important; }
.cn-form .wpcf7-spinner { position: absolute; left: 50%; bottom: 20px; margin: 0 0 0 -12px; }
.wpcf7-form div > p:has(> label ~ label) { display: contents; }
/* ---------- footer ---------- */
.cn-footer { padding: 40px 0 27px !important; }
.float-contact, .hotline-footer, #zalo-vr, #phone-vr { display: none !important; }
#footer .absolute-footer { display: none !important; }
.cn-ft { display: grid; grid-template-columns: 457px 361px minmax(0, 1fr); align-items: stretch; padding-bottom: 22px; border-bottom: 1px solid rgba(255,255,255,.16); }
.cn-ft-brand { display: flex; flex-direction: column; justify-content: center; padding: 14px 0; }
.cn-ft-logo { display: inline-flex; align-items: center; gap: 18px; font-size: 32px; font-weight: 600; color: #fff !important; letter-spacing: -.3px; margin-bottom: 14px; line-height: 1; }
.cn-ft-logo .cn-ic { width: 90px; height: 90px; margin: -18px 0; }
.cn-ft-slogan { font-size: 17px; color: #C9D3E3; }
.cn-ft-col { border-left: 1px solid rgba(255,255,255,.16); padding: 0 0 4px 60px; }
.cn-ft-ct { padding-left: 67px; }
.cn-ft-col h4 { color: #fff !important; font-size: 16px !important; font-weight: 700 !important; margin: 0 0 12px !important; text-transform: none !important; letter-spacing: 0 !important; }
.cn-ft-col ul { list-style: none; margin: 0 !important; padding: 0; }
.cn-ft-col li { margin: 0 !important; list-style: none; font-size: 16px; line-height: 36px; color: #C9D3E3; }
.cn-ft-col a { color: #C9D3E3 !important; } .cn-ft-col a:hover { color: #fff !important; }
.cn-ft-ct li { display: flex; align-items: center; gap: 18px; white-space: nowrap; font-size: 15px; }
.cn-ft-ct li span { font-size: 14.2px; }
.cn-ft-ct .cn-ic { width: 25px; height: 25px; filter: brightness(0) invert(1); }
.cn-ft-copy { margin-top: 20px; font-size: 15px; color: #B7C3D6; text-align: center !important; width: 100%; }
/* ---------- mobile ---------- */
@media (max-width: 849px) {
  #header #logo { width: auto !important; }
  #header #logo a { font-size: 22px !important; padding-left: 64px; min-height: 40px; background-size: 54px auto; }
  #header .mobile-nav a.icon, #header .mobile-nav .button.round { background: transparent !important; border: 0 !important; box-shadow: none !important; }
  #header .mobile-nav i, #header .mobile-nav [class^="icon-"] { color: #fff !important; font-size: 24px; }
  .cn-h2 { font-size: 29px !important; }
  .cn-sub { margin: -8px 0 20px; font-size: 16px; }
  .section.cn-hero { padding-top: 250px !important; min-height: 0; background-color: var(--cn-navy) !important; }
  .cn-hero .section-bg { top: 0 !important; bottom: auto !important; height: 250px !important; }
  .cn-hero .section-bg img.bg { object-position: 78% 50% !important; }
  .cn-hero .section-bg::after { display: none; }
  .cn-hero-in { padding: 26px 0 34px; }
  .cn-eyebrow { font-size: 13px; letter-spacing: 1px; margin-bottom: 10px; }
  .cn-h1 { font-size: 40px !important; }
  .cn-h1-sub { font-size: 23px; margin-bottom: 16px; }
  .cn-ticks-hero li { font-size: 17px; line-height: 40px; padding-left: 42px; }
  .cn-ticks-hero li::before { width: 28px; height: 28px; margin-top: -14px; }
  .cn-hero .cn-btn-lg { min-width: 0; width: 100%; font-size: 17px; min-height: 56px; }
  .cn-why { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
  .cn-why > * { min-width: 0; }
  .cn-wc { min-height: 0; padding: 16px 10px; }
  .cn-wc .cn-ic { width: 56px; height: 56px; }
  .cn-wc h3 { font-size: 17px !important; } .cn-wc-d { font-size: 14.5px; }
  .cn-wc-d br { display: none; }
  .cn-road { height: auto; padding-left: 4px; }
  .cn-rg, .cn-rline { display: none; }
  .cn-rs { position: relative; left: auto !important; top: auto; width: auto; margin: 0 0 22px; display: grid; grid-template-columns: 76px minmax(0, 1fr); column-gap: 18px; text-align: left; align-items: center; }
  .cn-rc { grid-row: 1 / span 2; width: 72px; height: 72px; margin: 0; }
  .cn-rc .cn-ic { width: 38px; height: 38px; }
  .cn-rc b { width: 24px; height: 24px; line-height: 24px; margin-left: -12px; bottom: -10px; font-size: 12px; }
  .cn-rs h3 { font-size: 18px !important; align-self: end; }
  .cn-rs-d { font-size: 15px; align-self: start; }
  .cn-rs-d br { display: none; }
  .cn-plane { position: relative; left: auto; top: auto; margin: -8px 0 14px 4px; width: 72px; height: 40px; }
  .cn-plane .cn-ic { width: 40px; height: 40px; transform: rotate(90deg); }
  .cn-trades { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
  .cn-trades > * { min-width: 0; }
  .cn-tc-img { height: 170px; }
  .cn-tc-b { padding: 12px 12px 14px; min-height: 0; }
  .cn-tc-b h3 { font-size: 16.5px !important; } .cn-tc-b .cn-more { font-size: 14px; }
  .section.cn-cond-sec { padding: 36px 0 30px !important; }
  .cn-cond { grid-template-columns: minmax(0, 1fr); gap: 24px; }
  .cn-ticks-cond li { font-size: 16px; line-height: 1.5; padding: 8px 0 8px 46px; }
  .cn-ticks-cond li::before { width: 30px; height: 30px; margin-top: -15px; }
  .cn-cond-img { height: 240px; }
  .cn-courses { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .cn-co { border-left: 0; } .cn-co:nth-child(2n) { border-left: 1px solid var(--cn-line); }
  .cn-co-h { font-size: 22px; height: 48px; line-height: 48px; margin-left: 0; border-left: 0; }
  .cn-co-d { font-size: 15px; padding: 0 8px; } .cn-co-d br { display: none; }
  .cn-co-b { padding: 0 10px; } .cn-co-b .cn-btn { width: 100%; font-size: 15px; min-height: 48px; padding: 0 6px; white-space: nowrap; }
  .cn-testi { grid-template-columns: minmax(0, 1fr); gap: 18px; }
  .cn-tq { flex-direction: column; align-items: flex-start; padding: 20px; gap: 16px; }
  .cn-tq-av { flex-basis: auto; width: 110px; height: 110px; }
  .cn-tv { flex-direction: column; align-items: stretch; padding: 12px 12px 18px; gap: 14px; }
  .cn-tv-img { flex-basis: auto; height: 200px; }
  .cn-reg { grid-template-columns: minmax(0, 1fr); gap: 24px; }
  .cn-reg-lead { margin-bottom: 18px; }
  .cn-offer-h { font-size: 21px !important; }
  .cn-of { font-size: 16px; gap: 16px; min-height: 60px; }
  .cn-of-ic { flex-basis: 60px; height: 60px; margin-left: 0; }
  .cn-of br { display: none; }
  .cn-form { padding: 22px 18px; }
  .cn-f2 { grid-template-columns: minmax(0, 1fr); }
  .cn-ft { grid-template-columns: minmax(0, 1fr); gap: 22px; }
  .cn-ft-col, .cn-ft-ct { border-left: 0; padding-left: 0; }
  .cn-ft-ct li { white-space: normal; align-items: flex-start; line-height: 1.5; margin-bottom: 10px !important; }
  .cn-ft-ct .cn-ic { margin-top: 2px; flex: 0 0 25px; }
  .cn-ft-logo { font-size: 26px; } .cn-ft-logo .cn-ic { width: 70px; height: 70px; }
}
/* mid-fix */ @media (min-width: 850px) and (max-width: 1399px) { #header #logo { width: 250px !important; } #header #logo a { font-size: 25px !important; padding-left: 84px; background-size: 72px auto; } #header .header-nav-main > li { margin-left: 20px !important; } #header .header-nav-main > li.header-button-1 { margin-left: 24px !important; } #header .header-button-1 .button { min-width: 0; } .cn-cond { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); } .cn-tc-img { height: 260px; } .cn-reg { grid-template-columns: minmax(0, 1fr) 560px; } .cn-ft { grid-template-columns: 1.3fr 1fr 1.4fr; } .cn-ft-col { padding-left: 32px; } .cn-ft-ct li { white-space: normal; line-height: 1.5; margin-bottom: 8px !important; } .cn-co-b .cn-btn { width: 86%; } .cn-rs { width: 200px; margin-left: -100px; } } @media (min-width: 850px) and (max-width: 1199px) { #header #logo a { font-size: 21px !important; padding-left: 64px; background-size: 54px auto; } #header .header-nav-main > li > a { font-size: 13.5px !important; } #header .header-nav-main > li { margin-left: 12px !important; } .cn-h1 { font-size: 54px !important; } .cn-why, .cn-trades { grid-template-columns: repeat(2, minmax(0, 1fr)); } .cn-courses { grid-template-columns: repeat(2, minmax(0, 1fr)); } .cn-co:nth-child(3) { border-left: 0; } .cn-testi { grid-template-columns: minmax(0, 1fr); } .cn-reg { grid-template-columns: minmax(0, 1fr); } .cn-rs { width: 130px; margin-left: -65px; } .cn-rs h3 { font-size: 17px !important; } .cn-rs-d { font-size: 14.5px; } .cn-ft { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 24px; } .cn-ft-brand { grid-column: 1 / -1; } .cn-ft-col:nth-child(2) { border-left: 0; padding-left: 0; } } /* /mid-fix */
/* _midwidth: header Flatsome ở 850-1399px (laptop nhỏ/tablet ngang) — menu dựng theo mockup 1440 tràn phải; dùng chung mọi site */
@media (min-width: 850px) and (max-width: 1399px) {
  #header .header-nav-main > li, #header .header-bottom-nav > li { margin-left: 6px !important; margin-right: 6px !important; }
  #header .header-nav-main > li > a, #header .header-bottom-nav > li > a { font-size: 14px !important; }
  #header .header-search-form { max-width: 300px !important; width: 300px !important; margin-left: 20px !important; }
}
@media (min-width: 850px) and (max-width: 1199px) {
  #logo { width: auto !important; max-width: 210px !important; } #logo a { font-size: 21px !important; }
  #header .header-main .flex-right .header-button-1, #header .header-main .flex-right li.html, #header .header-search-form, #top-bar .flex-right { display: none !important; }
  #header .header-nav-main > li, #header .header-bottom-nav > li { margin-left: 3px !important; margin-right: 3px !important; }
  #header .header-nav-main > li > a, #header .header-bottom-nav > li > a { font-size: 13px !important; }
  #header .flex-col { min-width: 0; } #header .header-inner, #header .header-bottom .container { overflow: hidden; }
}
.col-inner a[href^="mailto"], .col-inner a[href^="tel"] { overflow-wrap: anywhere; }
