/* Tổng kho đồ chơi Thế Khoa — trang tuyển đại lý.
   Phong cách theo bản mẫu khách duyệt; 02/11/2026 đổi xanh ngọc sang xanh dương theo logo mới, nền sáng, chữ thanh, thẻ bo tròn bóng mờ, tiêu đề căn giữa. */

:root {
	--do: #1a76c9;          /* màu chính (tên cũ giữ lại vì trang.js dùng) */
	--blue: #1a76c9;
	--deep: #12599e;
	--navy: #163047;
	--chu: #203446;
	--chu-mo: #687988;
	--vien: #dce7f0;
	--sky: #eef5fc;
	--nen-phu: #f5fafc;
	--cam: #ffae43;
	--tich: #16a984;
	--chan: #0e375a;
	--zalo: #0068ff;
	--bong: 0 14px 40px rgba(13, 59, 99, .075);
	--day: 62px;
}

*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 84px; -webkit-text-size-adjust: 100%; }
body {
	margin: 0;
	font-family: 'Be Vietnam Pro', system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;
	font-size: 15px;
	line-height: 1.75;
	color: var(--chu);
	background: #fff;
	padding-bottom: calc(var(--day) + env(safe-area-inset-bottom));
	overflow-x: hidden;
}
img, video { display: block; max-width: 100%; height: auto; }
a { color: inherit; text-decoration: none; }
button, input, select { font: inherit; color: inherit; }
button { cursor: pointer; }
h1, h2, h3 { margin: 0; }
p { margin: 0; }
svg { width: 1em; height: 1em; fill: currentColor; flex: none; }
[hidden] { display: none !important; }
:focus-visible { outline: 3px solid #8fbce4; outline-offset: 2px; }

.khung { width: min(1180px, calc(100% - 32px)); margin: 0 auto; }
.khung--hep { width: min(900px, calc(100% - 32px)); }
.giua { text-align: center; margin-top: 26px; }
.giua-chu { text-align: center; }

/* ---------- Nút ---------- */
.nut {
	display: inline-flex; align-items: center; justify-content: center; gap: 9px;
	min-height: 50px; padding: 0 22px; border: 1px solid var(--blue); border-radius: 12px;
	background: var(--blue); color: #fff; font-weight: 700; font-size: 15px; line-height: 1.2; text-align: center;
	box-shadow: 0 6px 16px rgba(22, 97, 163, .14); transition: transform .2s, background .2s;
	-webkit-tap-highlight-color: transparent;
}
.nut:hover { transform: translateY(-2px); background: #1565b0; }
.nut svg { font-size: 18px; }
.nut--do { background: var(--blue); border-color: var(--blue); color: #fff; }
.nut--vang { background: #fff; color: var(--deep); border-color: #d1e0ee; box-shadow: none; }
.nut--vang:hover { background: var(--sky); }
.nut--zalo { background: var(--zalo); border-color: var(--zalo); color: #fff; }
.nut--lon { min-height: 54px; padding: 0 28px; font-size: 15.5px; }
.nut--rong { width: 100%; }
.nut[disabled] { opacity: .7; pointer-events: none; }

/* ---------- Dải trên cùng ---------- */
.dai-tren { background: #e8f2fb; color: #23517a; font-size: 12.5px; padding: 7px 0; }
.dai-tren .khung { display: flex; justify-content: space-between; gap: 20px; }
.dai-tren b { color: var(--deep); }

/* ---------- Đầu trang ---------- */
.dau { position: sticky; top: 0; z-index: 50; background: rgba(255, 254, 254, .96); -webkit-backdrop-filter: blur(14px); backdrop-filter: blur(14px); border-bottom: 1px solid #e5ecf2; }
.dau__trong { display: flex; align-items: center; gap: 18px; min-height: 76px; }
.logo { display: flex; align-items: center; gap: 11px; margin-right: auto; min-width: 0; }
.logo img { width: auto; height: 46px; }
.logo__chu { display: flex; flex-direction: column; line-height: 1.15; }
.logo__chu b { font-size: 18px; font-weight: 800; color: var(--deep); white-space: nowrap; }
.logo__chu small { font-size: 10.5px; color: #728391; letter-spacing: 1.3px; text-transform: uppercase; white-space: nowrap; }
.menu { display: none; }
.dau__goi { display: inline-flex; align-items: center; gap: 8px; padding: 10px 16px; border-radius: 12px; background: var(--blue); color: #fff; font-weight: 700; font-size: 14px; white-space: nowrap; box-shadow: 0 6px 16px rgba(22, 97, 163, .14); }
.dau__goi svg { font-size: 15px; }

/* ---------- Tiêu đề mục (kiểu chung) ---------- */
.muc { padding: 60px 0; }
.muc--kem, .muc--alt { background: var(--nen-phu); }
.muc__nho, .hero__nho {
	display: inline-flex; align-items: center; gap: 8px;
	text-transform: uppercase; font-weight: 800; letter-spacing: 1.3px; font-size: 11.5px; color: #075ca6; line-height: 1.5;
}
.muc__nho::before, .hero__nho::before { content: ""; flex: none; width: 7px; height: 7px; border-radius: 50%; background: var(--cam); }
.muc > .khung > .muc__nho { display: flex; justify-content: center; text-align: center; }
.muc > .khung > h2, .muc > .khung > .muc__mo { text-align: center; margin-left: auto; margin-right: auto; }
.muc h2 { font-size: clamp(25px, 3.1vw, 40px); line-height: 1.27; letter-spacing: -1px; color: var(--navy); font-weight: 800; margin: 12px auto 13px; max-width: 820px; }
.muc__mo { color: var(--chu-mo); font-size: 15px; max-width: 720px; }

/* ---------- Hero ---------- */
.hero { position: relative; overflow: hidden; padding: 0 0 36px; background: linear-gradient(115deg, #eff8ff 0%, #f9fdff 56%, #fff4e9 100%); }
.hero::before { content: ""; position: absolute; width: 580px; height: 580px; border-radius: 50%; background: rgba(212, 230, 246, .37); left: -300px; bottom: -300px; pointer-events: none; }
.hero__luoi { position: relative; display: grid; gap: 22px; }
.hero__video { position: relative; width: calc(100% + 32px); margin: 0 -16px; height: min(118vw, 56vh); height: min(118vw, 56svh); overflow: hidden; background: #b8cddf; }
.hero__video video { position: absolute; inset: 0; width: 100%; height: 100%; max-width: none; object-fit: cover; object-position: center 35%; }
.hero__video::after { content: ""; position: absolute; inset: auto 0 0; height: 30%; background: linear-gradient(transparent, rgba(8, 44, 75, .28)); pointer-events: none; }
.nhan-song { position: absolute; top: 12px; left: 12px; z-index: 2; display: inline-flex; align-items: center; gap: 8px; padding: 6px 13px; border-radius: 30px; background: #fff; border: 1px solid #bdd7ee; color: #08569a; font-size: 12px; font-weight: 700; }
.nhan-song i { width: 7px; height: 7px; border-radius: 50%; background: var(--cam); }
.nut-phat { position: absolute; inset: 0; z-index: 2; display: grid; place-items: center; padding: 0; border: 0; background: transparent; -webkit-tap-highlight-color: transparent; }
.nut-phat span { display: grid; place-items: center; width: 70px; height: 70px; border-radius: 50%; background: rgba(255, 255, 255, .95); color: var(--blue); box-shadow: 0 0 0 10px rgba(255, 255, 255, .3), 0 12px 30px rgba(8, 44, 75, .3); transition: transform .15s; }
.nut-phat svg { font-size: 30px; margin-left: 4px; }
.nut-phat:active span { transform: scale(.92); }
.noi { display: none; }

.hero__chu { position: relative; }
.hero h1 { font-size: clamp(28px, 3.6vw, 48px); line-height: 1.22; letter-spacing: -1.4px; color: var(--navy); font-weight: 800; margin: 14px 0 14px; }
.hero h1 .to { color: var(--blue); }
.hero__mo { font-size: 15px; color: #5e7181; max-width: 580px; }
.hero__mo b { color: var(--navy); font-weight: 700; }
.hero__nut { display: grid; gap: 11px; margin: 24px 0 10px; }
.hero__phu { color: #778a9a; font-size: 13px; }
.hero__phu a { color: var(--blue); font-weight: 700; }
.the-nhanh { list-style: none; margin: 28px 0 0; padding: 0; display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px; }
.the-nhanh li { background: #fff; border: 1px solid #e0eaf3; border-radius: 15px; padding: 14px; text-align: center; box-shadow: 0 7px 20px rgba(13, 75, 130, .045); }
.the-nhanh b { display: block; font-size: 23px; font-weight: 800; color: var(--blue); line-height: 1.45; }
.the-nhanh span { font-size: 12.5px; color: #617688; }

/* ---------- Dải cam kết ---------- */
.dai { background: #fff; border-bottom: 1px solid #eef1f4; padding: 16px 0; }
.dai__luoi { list-style: none; margin: 0 auto; padding: 0; display: grid; grid-template-columns: 1fr 1fr; gap: 8px 14px; }
.dai__luoi li { font-size: 13px; font-weight: 700; color: #455f76; white-space: nowrap; }
.dai__luoi li::before { content: "✓"; margin-right: 7px; color: var(--tich); font-weight: 800; }

/* ---------- Lợi ích ---------- */
.loi-ich { display: grid; gap: 16px; margin-top: 30px; }
.loi-ich article { background: #fff; border: 1px solid #e6ecf1; border-radius: 18px; padding: 24px; box-shadow: var(--bong); }
.bieu-tuong { display: grid; place-items: center; width: 44px; height: 44px; margin-bottom: 16px; border-radius: 12px; background: #e9f3fb; color: var(--blue); }
.bieu-tuong svg { font-size: 22px; }
.loi-ich h3 { font-size: 16px; line-height: 1.4; color: var(--navy); font-weight: 700; margin-bottom: 8px; }
.loi-ich p { color: var(--chu-mo); font-size: 14px; }

/* ---------- Chính sách ---------- */
.tab-cs { display: flex; gap: 7px; max-width: 520px; margin: 26px auto; padding: 6px; border-radius: 14px; background: #eaf1f7; }
.tab-cs button { flex: 1; display: flex; flex-direction: column; align-items: center; padding: 11px 8px; border: 0; border-radius: 10px; background: transparent; color: #5f7384; font-weight: 700; font-size: 14px; line-height: 1.35; }
.tab-cs small { font-weight: 500; font-size: 11.5px; }
.tab-cs button[aria-selected="true"] { background: #fff; color: var(--blue); box-shadow: 0 3px 12px rgba(18, 68, 111, .08); }
.bang-cs { background: #fff; border: 1px solid var(--vien); border-radius: 22px; padding: 24px 18px; }
.bac__dan { font-size: 18px; font-weight: 700; color: #17344d; margin-bottom: 18px; }
.bac__dan b { color: var(--blue); }
.bac { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4, 1fr); gap: 9px; }
.bac li { display: flex; flex-direction: column; align-items: center; padding: 14px 4px 12px; border: 1px solid #d9e5ef; border-radius: 13px; background: #f7fcfd; text-align: center; line-height: 1.3; }
.bac small { font-size: 10.5px; font-weight: 700; color: #718393; text-transform: uppercase; letter-spacing: .3px; white-space: nowrap; }
.bac b { font-size: clamp(21px, 5.6vw, 27px); font-weight: 800; color: var(--blue); line-height: 1.4; }
.bac span { font-size: 11.5px; color: #718393; }
.bac--dinh { background: var(--blue) !important; border-color: var(--blue) !important; }
.bac--dinh small, .bac--dinh b, .bac--dinh span { color: #fff !important; }
.ghi-cs { list-style: none; margin: 18px 0 0; padding: 0; }
.ghi-cs li { position: relative; padding-left: 22px; margin: 10px 0; font-size: 14px; color: #596d7e; line-height: 1.6; }
.ghi-cs li::before { content: "✓"; position: absolute; left: 0; top: 0; color: #0a599e; font-weight: 800; }
.ghi-cs b { color: var(--navy); font-weight: 700; }

.may-tinh { margin-top: 18px; padding: 26px 22px; border-radius: 22px; background: linear-gradient(155deg, #1a6fbe, #0f4f8c); color: #fff; }
.may-tinh__dau { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px; }
.may-tinh h3 { font-size: 18px; font-weight: 700; }
.cong-tac { display: inline-flex; padding: 3px; border-radius: 10px; background: rgba(255, 255, 255, .15); }
.cong-tac input { position: absolute; opacity: 0; pointer-events: none; }
.cong-tac span { display: block; padding: 6px 14px; border-radius: 8px; font-size: 13px; font-weight: 700; color: #d6e6f4; cursor: pointer; }
.cong-tac input:checked + span { background: #fff; color: var(--deep); }
.may-tinh__nhan { display: block; margin-top: 18px; font-size: 13px; opacity: .92; }
.may-tinh__nhan output { display: block; font-size: 22px; font-weight: 800; opacity: 1; }
.may-tinh input[type=range] { width: 100%; height: 30px; margin: 8px 0 0; accent-color: #ffd079; }
.may-tinh__kq { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin-top: 14px; padding: 16px; border-radius: 16px; background: rgba(255, 255, 255, .11); border: 1px solid rgba(255, 255, 255, .22); }
.may-tinh__kq small { display: block; font-size: 12.5px; opacity: .9; }
.may-tinh__kq b { display: block; font-size: 26px; font-weight: 800; color: #fff3b7; line-height: 1.4; }
.may-tinh__goi { margin-top: 10px; font-size: 13px; opacity: .85; }

.tieu-de-nho { margin-top: 34px; text-align: center; font-size: 19px; font-weight: 700; color: var(--navy); }
.van-chuyen { display: grid; gap: 12px; margin-top: 16px; }
.van-chuyen article { padding: 18px 20px; background: var(--sky); border: 1px solid #dbe8f3; border-radius: 14px; }
.vung { display: block; font-size: 12.5px; color: #75899a; line-height: 1.5; }
.van-chuyen b { display: block; font-size: 21px; font-weight: 800; color: var(--blue); line-height: 1.5; }
.van-chuyen p { font-size: 13px; color: #75899a; }
.chu-thich { margin-top: 14px; text-align: center; font-size: 12.5px; color: #667a8c; }

/* ---------- Sản phẩm ---------- */
.chip-dm { display: flex; gap: 9px; margin: 26px -16px 0; padding: 2px 16px 8px; overflow-x: auto; scrollbar-width: none; }
.chip-dm::-webkit-scrollbar { display: none; }
.chip-dm button { flex: none; padding: 8px 16px; border: 1px solid #d8e2eb; border-radius: 40px; background: #fff; color: #506679; font-size: 13px; font-weight: 700; white-space: nowrap; }
.chip-dm button[aria-selected="true"] { background: var(--blue); border-color: var(--blue); color: #fff; }
.luoi-sp { display: grid; grid-template-columns: repeat(2, 1fr); gap: 11px; margin-top: 14px; }
.luoi-sp figure { position: relative; margin: 0; background: #fff; border: 1px solid #e6ecf1; border-radius: 18px; overflow: hidden; transition: transform .2s, box-shadow .2s; animation: hien .35s ease both; }
.luoi-sp figure:hover { transform: translateY(-4px); box-shadow: var(--bong); }
@keyframes hien { from { opacity: 0; transform: translateY(8px); } }
.luoi-sp img { width: 100%; aspect-ratio: 1 / 1; object-fit: cover; }
.luoi-sp figcaption { padding: 12px 13px 14px; }
.luoi-sp figcaption b { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; font-size: 13.5px; font-weight: 700; line-height: 1.5; min-height: 3em; color: var(--chu); }
.luoi-sp figcaption small { display: block; font-size: 11.5px; color: #8092a1; }
.luoi-sp figcaption a { display: block; margin-top: 6px; font-size: 12.5px; font-weight: 800; color: var(--blue); }
.nhan-sp { position: absolute; top: 9px; left: 9px; padding: 2px 10px; border-radius: 30px; background: #fff; border: 1px solid #bdd7ee; color: #08569a; font-size: 11px; font-weight: 700; }
.hop-moi { margin-top: 28px; text-align: center; }
.hop-moi b { display: block; font-size: 15px; color: var(--navy); }
.hop-moi span { display: block; font-size: 13px; color: #667a8c; margin: 2px 0 14px; }

/* ---------- Kho ---------- */
.cuon-video { display: flex; gap: 12px; margin: 26px -16px 0; padding: 0 16px 6px; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; }
.cuon-video::-webkit-scrollbar { display: none; }
.the-video { position: relative; flex: 0 0 62%; scroll-snap-align: center; padding: 0; border: 0; border-radius: 17px; overflow: hidden; background: #b8cddf; aspect-ratio: 9 / 16; }
.the-video img { width: 100%; height: 100%; object-fit: cover; }
.the-video::after { content: ""; position: absolute; inset: 40% 0 0; background: linear-gradient(0deg, rgba(12, 47, 78, .7), transparent); }
.the-video__nut { position: absolute; top: 50%; left: 50%; z-index: 1; display: grid; place-items: center; width: 58px; height: 58px; margin: -29px 0 0 -29px; border-radius: 50%; background: rgba(255, 255, 255, .94); color: var(--blue); box-shadow: 0 0 0 8px rgba(255, 255, 255, .25); }
.the-video__nut svg { font-size: 26px; margin-left: 3px; }
.the-video__chu { position: absolute; left: 16px; right: 16px; bottom: 15px; z-index: 1; color: #fff; font-weight: 700; font-size: 14px; text-align: left; }
.anh-kho { display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px; margin-top: 16px; }
.anh-kho figure { position: relative; margin: 0; border-radius: 17px; overflow: hidden; background: #b8cddf; }
.anh-kho img { width: 100%; aspect-ratio: 3 / 4; object-fit: cover; }
.anh-kho figcaption { position: absolute; left: 0; right: 0; bottom: 0; padding: 34px 14px 13px; background: linear-gradient(0deg, rgba(12, 47, 78, .72), transparent); color: #fff; font-size: 13px; font-weight: 700; line-height: 1.35; }

/* ---------- Phù hợp ---------- */
.phu-hop { list-style: none; margin: 26px 0 0; padding: 0; display: flex; flex-wrap: wrap; gap: 10px; justify-content: center; }
.phu-hop li { padding: 11px 16px; background: #fff; border: 1px solid #dce7f0; border-radius: 12px; color: #435f78; font-weight: 600; font-size: 13.5px; }

/* ---------- 4 bước ---------- */
.buoc { list-style: none; margin: 28px 0 0; padding: 0; display: grid; grid-template-columns: 1fr; gap: 14px; }
.buoc li { padding: 22px; background: #fff; border: 1px solid var(--vien); border-radius: 17px; }
.buoc li > b { display: grid; place-items: center; width: 38px; height: 38px; margin-bottom: 14px; border-radius: 50%; background: #d9eaf8; color: var(--blue); font-weight: 800; font-size: 15px; }
.buoc h3 { font-size: 15px; line-height: 1.45; color: var(--navy); font-weight: 700; margin-bottom: 8px; }
.buoc p { font-size: 13.5px; color: var(--chu-mo); }

/* ---------- Cam kết ---------- */
.cam-ket { display: grid; gap: 14px; margin-top: 28px; }
.cam-ket article { background: #fff; border: 1px solid #e6ecf1; border-radius: 18px; padding: 22px 24px; box-shadow: var(--bong); }
.cam-ket h3 { font-size: 15.5px; color: var(--navy); font-weight: 700; margin-bottom: 6px; }
.cam-ket h3::before { content: "✓"; display: inline-grid; place-items: center; width: 22px; height: 22px; margin-right: 9px; border-radius: 50%; background: #e9f3fb; color: var(--blue); font-size: 12px; font-weight: 800; vertical-align: 1px; }
.cam-ket p { font-size: 13.5px; color: var(--chu-mo); }

/* ---------- Hỏi đáp ---------- */
.hoi-dap { margin-top: 26px; }
.hoi-dap details { margin-bottom: 11px; padding: 0 20px; border: 1px solid #dfe9f1; border-radius: 14px; background: #fff; }
.hoi-dap summary { display: flex; justify-content: space-between; gap: 15px; padding: 17px 0; list-style: none; cursor: pointer; font-weight: 700; font-size: 14.5px; color: var(--navy); }
.hoi-dap summary::-webkit-details-marker { display: none; }
.hoi-dap summary::after { content: "+"; font-size: 20px; line-height: 1.1; color: var(--blue); }
.hoi-dap details[open] summary::after { content: "−"; }
.hoi-dap details p { margin: 0 0 18px; font-size: 14px; color: #677a8b; }
.hoi-dap b { color: var(--navy); }

/* ---------- Form đăng ký ---------- */
.muc--do { background: linear-gradient(125deg, #e8f3fc, #f8fdff); }
.dk { display: grid; gap: 28px; align-items: center; }
.dk__chu h2 { text-align: left; margin-left: 0; }
.dk__mo { color: var(--chu-mo); font-size: 15px; }
.dk__loi { list-style: none; margin: 16px 0 0; padding: 0; }
.dk__loi li { display: flex; gap: 9px; margin: 9px 0; font-size: 14px; color: #596d7e; }
.dk__loi li::before { content: "✓"; color: #0a599e; font-weight: 800; }
.dk__goi { display: inline-block; margin-top: 18px; font-weight: 700; color: #18446b; }
.dk__goi b { color: var(--blue); }
.dk__form, .dk__xong { padding: 24px 20px; background: #fff; border: 1px solid #e1eaf2; border-radius: 22px; box-shadow: var(--bong); }
.o { margin-bottom: 15px; }
.o label, .o .nhan { display: block; margin-bottom: 7px; font-size: 13px; font-weight: 700; color: var(--chu); }
.o label i { color: var(--blue); font-style: normal; }
.o input[type=text], .o input[type=tel], .o select { width: 100%; height: 48px; padding: 0 14px; border: 1px solid #d9e3ec; border-radius: 10px; background: #fcfeff; font-size: 15px; outline: none; appearance: none; -webkit-appearance: none; }
.o select { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23687f88'%3E%3Cpath d='M7 10l5 5 5-5z'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: right 12px center; background-size: 20px; padding-right: 38px; }
.o input:focus, .o select:focus { border-color: #1771bf; box-shadow: 0 0 0 4px rgba(23, 113, 191, .12); background: #fff; }
.o input.sai { border-color: #d9534f; background: #fff8f7; }
.goi-y-ship { margin-top: 8px; padding: 9px 12px; border-radius: 10px; background: var(--sky); color: var(--deep); font-size: 13px; font-weight: 600; }
.chon-nhanh { display: flex; flex-wrap: wrap; gap: 8px; }
.chon-nhanh label { margin: 0; flex: 1 1 auto; }
.chon-nhanh input { position: absolute; opacity: 0; pointer-events: none; }
.chon-nhanh span { display: block; padding: 10px; border: 1px solid #d9e3ec; border-radius: 10px; background: #fcfeff; text-align: center; font-size: 13.5px; font-weight: 600; color: #54697c; cursor: pointer; white-space: nowrap; }
.chon-nhanh input:checked + span { border-color: var(--blue); background: #e9f3fb; color: var(--blue); font-weight: 700; }
.chon-nhanh input:focus-visible + span { outline: 3px solid #8fbce4; }
.bay { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.loi-form { margin-top: 10px; padding: 10px 12px; border-radius: 10px; background: #fff3f2; color: #b33a35; font-size: 13.5px; font-weight: 600; }
.dk__an-tam { margin-top: 12px; text-align: center; font-size: 12px; color: #667a8c; }
.dk__xong { text-align: center; }
.dk__tick { display: inline-grid; place-items: center; width: 60px; height: 60px; border-radius: 50%; background: #e3f7f1; color: #0a599e; font-size: 28px; font-weight: 800; }
.dk__xong h3 { margin-top: 12px; font-size: 20px; color: var(--navy); }
.dk__xong p { margin: 8px 0 18px; color: var(--chu-mo); font-size: 14px; }

/* ---------- Liên hệ ---------- */
.nguoi { display: grid; gap: 14px; margin-top: 26px; }
.nguoi__the { display: flex; align-items: center; gap: 16px; padding: 20px; border: 1px solid var(--vien); border-radius: 15px; background: #fff; transition: box-shadow .2s; }
.nguoi__the:hover { box-shadow: var(--bong); }
.nguoi__anh { display: grid; place-items: center; flex: none; width: 54px; height: 54px; border-radius: 14px; background: #e6f1fa; color: var(--blue); font-size: 22px; font-weight: 800; }
.nguoi__chu { display: flex; flex-direction: column; line-height: 1.4; margin-right: auto; }
.nguoi__chu b { font-size: 15px; color: var(--navy); }
.nguoi__chu small { font-size: 12.5px; color: #667a8c; }
.nguoi__chu em { font-style: normal; font-weight: 800; color: var(--blue); }
.nguoi__goi { display: grid; place-items: center; flex: none; width: 42px; height: 42px; border-radius: 12px; background: var(--blue); color: #fff; }
.nguoi__goi svg { font-size: 18px; }
.ban-do { margin-top: 18px; border: 1px solid #e6ecf1; border-radius: 18px; overflow: hidden; background: #fff; box-shadow: var(--bong); }
.ban-do__chu { padding: 22px 24px; }
.ban-do__chu b { display: block; font-size: 11.5px; font-weight: 800; letter-spacing: 1.3px; text-transform: uppercase; color: #075ca6; }
.ban-do__chu p { margin: 6px 0; font-size: 15px; font-weight: 700; color: var(--navy); line-height: 1.5; }
.ban-do__chu a { font-weight: 700; color: var(--blue); }
.ban-do iframe { display: block; width: 100%; height: 260px; border: 0; }

/* ---------- Chân trang ---------- */
.chan { background: var(--chan); color: #dfe9f1; padding: 42px 0 28px; }
.chan__luoi { display: grid; gap: 18px; }
.chan__logo { display: flex; align-items: center; gap: 11px; margin-bottom: 10px; }
.chan__logo img { height: 40px; width: auto; background: #fff; border-radius: 10px; padding: 4px 8px; }
.chan__logo b { display: block; color: #fff; font-size: 15px; line-height: 1.3; }
.chan__logo small { color: #a7bfd4; font-size: 10.5px; letter-spacing: 1.2px; }
.chan strong { color: #fff; font-size: 14px; }
.chan p { font-size: 13px; line-height: 1.9; color: #b4c7d7; }
.chan a { color: #fff; }
.chan__nho { margin-top: 22px; padding-top: 18px; border-top: 1px solid rgba(255, 255, 255, .16); font-size: 12px !important; color: #96b1c9 !important; }

/* ---------- Thanh đáy (điện thoại) ---------- */
.thanh-day { position: fixed; left: 0; right: 0; bottom: 0; z-index: 60; display: grid; grid-template-columns: 1fr .75fr 1.3fr; gap: 8px; height: calc(var(--day) + env(safe-area-inset-bottom)); padding: 8px 12px calc(8px + env(safe-area-inset-bottom)); background: #fff; border-top: 1px solid #d9e3eb; }
.thanh-day a { display: flex; align-items: center; justify-content: center; gap: 6px; border-radius: 10px; font-weight: 700; font-size: 14px; line-height: 1.15; }
.td-goi { background: var(--blue); color: #fff; }
.td-goi svg { font-size: 16px; }
.td-zalo { flex-direction: column; gap: 0 !important; background: #eef4fa; color: var(--blue); }
.td-zalo b { font-size: 14px; }
.td-zalo span { font-size: 10.5px; font-weight: 600; }
.td-dk { background: var(--deep); color: #fff; text-align: center; padding: 0 6px; }

/* ---------- Cửa sổ video ---------- */
.xem-video { position: fixed; inset: 0; z-index: 100; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 14px; padding: 56px 16px calc(20px + env(safe-area-inset-bottom)); background: rgba(8, 25, 40, .94); }
.xem-video video { width: auto; max-width: 100%; max-height: calc(100svh - 160px); aspect-ratio: 9 / 16; border-radius: 16px; background: #000; }
.xem-video__dong { position: absolute; top: 10px; right: 12px; width: 44px; height: 44px; border: 0; border-radius: 50%; background: rgba(255, 255, 255, .15); color: #fff; font-size: 30px; line-height: 1; }

/* ---------- Điện thoại hẹp ---------- */
@media (max-width: 479px) {
	.dai-tren { display: none; }
	.dau__trong { min-height: 64px; gap: 10px; }
	.logo { gap: 8px; }
	.logo img { height: 34px; }
	.logo__chu b { font-size: clamp(12.5px, 3.6vw, 15px); }
	.logo__chu small { font-size: 9.5px; letter-spacing: .8px; }
	.dau__goi { width: 40px; height: 40px; padding: 0; justify-content: center; border-radius: 12px; }
	.dau__goi span { display: none; }
}

/* ---------- Máy tính bảng ---------- */
@media (min-width: 600px) {
	.loi-ich { grid-template-columns: repeat(2, 1fr); }
	.luoi-sp { grid-template-columns: repeat(3, 1fr); gap: 16px; }
	.the-nhanh { grid-template-columns: repeat(4, 1fr); }
	.van-chuyen { grid-template-columns: repeat(3, 1fr); }
	.cam-ket { grid-template-columns: repeat(2, 1fr); }
	.buoc { grid-template-columns: repeat(2, 1fr); }
	.nguoi { grid-template-columns: 1fr 1fr; }
	.hero__nut { grid-template-columns: auto auto; justify-content: start; }
	.the-video { flex-basis: 38%; }
	.dai__luoi { display: flex; flex-wrap: wrap; justify-content: space-between; }
	.anh-kho { grid-template-columns: repeat(3, 1fr); }
}

/* ---------- Máy tính ---------- */
@media (min-width: 960px) {
	body { padding-bottom: 0; }
	.thanh-day { display: none; }
	.menu { display: flex; gap: 24px; margin-right: 6px; }
	.menu a { font-weight: 600; font-size: 13.5px; color: #475d70; }
	.menu a:hover { color: var(--blue); }

	.hero { padding: 56px 0 40px; }
	.hero__luoi { grid-template-columns: 1.1fr .9fr; gap: 48px; align-items: center; }
	.hero__video { order: 2; width: 100%; max-width: 420px; justify-self: center; margin: 0; height: auto; aspect-ratio: 4 / 5; max-height: 560px; border-radius: 26px; box-shadow: 0 24px 50px rgba(18, 75, 125, .14); overflow: visible; }
	.hero__video video { border-radius: 26px; }
	.hero__video::after { border-radius: 0 0 26px 26px; }
	.hero__chu { order: 1; }
	.hero__mo { font-size: 15.5px; }
	.noi { position: absolute; z-index: 3; display: block; padding: 12px 18px; background: #fff; border: 1px solid #edf1f5; border-radius: 14px; box-shadow: var(--bong); font-size: 13px; font-weight: 700; line-height: 1.4; color: var(--chu); }
	.noi b { display: block; color: var(--blue); font-size: 22px; }
	.noi--1 { left: -38px; bottom: 26px; }
	.noi--2 { right: -26px; top: 64px; }
	.the-nhanh { grid-column: 1 / -1; order: 3; margin-top: 8px; }

	.muc { padding: 80px 0; }
	.loi-ich { grid-template-columns: repeat(3, 1fr); gap: 18px; }

	#chinh-sach .bo-cs { display: grid; grid-template-columns: 1.15fr .85fr; gap: 22px; align-items: start; }
	#chinh-sach .may-tinh { margin-top: 0; padding: 30px; }
	.bang-cs { padding: 28px; }

	.chip-dm { justify-content: center; flex-wrap: wrap; margin: 26px 0 0; padding: 2px 0 8px; }
	.luoi-sp { grid-template-columns: repeat(4, 1fr); gap: 17px; }

	.cuon-video { margin: 30px 0 0; padding: 0; overflow: visible; justify-content: center; gap: 15px; }
	.the-video { flex: 0 0 270px; }
	.anh-kho { gap: 15px; margin-top: 18px; }
	.anh-kho img { aspect-ratio: 1; }
	.anh-kho figcaption { font-size: 14px; padding: 40px 18px 16px; }

	.buoc { grid-template-columns: repeat(4, 1fr); gap: 17px; }
	.cam-ket { grid-template-columns: repeat(4, 1fr); }

	.dk { grid-template-columns: .9fr 1.1fr; gap: 55px; }
	.dk__form, .dk__xong { padding: 31px; }
	.dk__form .o--doi { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
	.dk__form .o--doi .o { margin-bottom: 0; }

	.ban-do { display: grid; grid-template-columns: 1fr 1.6fr; }
	.ban-do iframe { height: 100%; min-height: 260px; }

	.chan { padding: 46px 0 30px; }
	.chan__luoi { grid-template-columns: 1.2fr 1fr 1fr; gap: 32px; }
}

@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
}
