:root{
  --primary:#0d6efd;
  --primary-dark:#0a4db3;
  --ink:#132238;
  --muted:#68768a;
  --soft:#f5f8fd;
  --line:#e5ebf4;
  --orange:#ff9f2f;
  --navy:#0f294a;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:88px}
body{font-family:"Be Vietnam Pro",system-ui,-apple-system,sans-serif;color:var(--ink);line-height:1.7;background:#fff}
a{text-decoration:none}.fw-800{font-weight:800}.fw-700{font-weight:700}
.topbar{background:var(--navy);color:#c9d8e9}.topbar-link{color:#fff;font-weight:600}
.navbar-brand{min-width:250px}.brand-mark{width:44px;height:44px;border-radius:13px;background:linear-gradient(135deg,#0d6efd,#2a8cff);display:inline-grid;place-items:center;color:#fff;font-size:1.35rem;box-shadow:0 10px 22px rgba(13,110,253,.25)}
.brand-title{display:block;font-size:.98rem;line-height:1.1;color:#10253f}.brand-sub{display:block;font-size:.7rem;color:#7d8998;margin-top:3px}.navbar .nav-link{font-weight:600;color:#39485d;padding:.65rem .8rem!important}.navbar .nav-link:hover{color:var(--primary)}
.hero-section{position:relative;background:radial-gradient(circle at 75% 20%,rgba(13,110,253,.14),transparent 35%),linear-gradient(180deg,#fff 0%,#f7faff 100%)}
.hero-section:before{content:"";position:absolute;right:-180px;top:60px;width:420px;height:420px;border-radius:50%;background:#e8f1ff;filter:blur(2px)}
.min-vh-hero{min-height:680px}.eyebrow,.section-kicker{display:inline-flex;gap:.5rem;align-items:center;font-weight:800;letter-spacing:.08em;font-size:.77rem;color:var(--primary)}
.hero-section h1{line-height:1.17;letter-spacing:-.035em}.hero-trust .trust-item{display:flex;align-items:center;gap:.6rem;color:#42536a;font-weight:600;font-size:.85rem}.trust-item i{color:var(--primary);font-size:1.15rem}
.hero-visual{position:relative;padding:30px}.car-stage{position:relative;z-index:1;border-radius:32px;box-shadow:0 30px 70px rgba(25,59,104,.18);overflow:hidden;border:1px solid #e5edf9}.car-stage svg{display:block;width:100%;height:auto}.hero-badge{position:absolute;z-index:2;background:#fff;border:1px solid #e6ecf5;border-radius:16px;padding:12px 15px;box-shadow:0 16px 35px rgba(20,50,88,.16);display:flex;align-items:center;gap:10px}.hero-badge strong{font-size:1.35rem;color:var(--primary)}.hero-badge span{font-size:.78rem;color:#6b788c;max-width:110px;line-height:1.3}.badge-one{left:0;top:4px}.badge-two{right:0;bottom:2px}.quick-strip{background:linear-gradient(100deg,#0d6efd,#0c5ac4)}
.section-pad{padding:88px 0}.bg-light-soft{background:var(--soft)}.section-heading{max-width:720px}.section-heading h2,.section-pad h2{font-weight:800;letter-spacing:-.02em;line-height:1.25}.section-heading p{color:var(--muted)}
.course-card{position:relative;display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:24px;padding:26px;box-shadow:0 12px 34px rgba(27,54,91,.06);transition:.25s ease}.course-card:hover{transform:translateY(-4px);box-shadow:0 20px 46px rgba(27,54,91,.12)}.featured-course{border-color:#bcd6ff;box-shadow:0 18px 44px rgba(13,110,253,.12)}
.course-icon{width:54px;height:54px;border-radius:16px;display:grid;place-items:center;color:#fff;font-size:1.45rem;margin-bottom:18px}.bg-blue{background:#0d6efd}.bg-indigo{background:#6253d8}.bg-orange{background:#ef8a19}.bg-dark{background:#22364f}.course-tag{font-size:.72rem;font-weight:700;background:#edf4ff;color:#2862a8;border-radius:99px;padding:5px 10px;align-self:flex-start;margin-bottom:12px}.course-card h3{font-size:1.22rem;font-weight:800}.course-note{color:var(--muted);font-size:.92rem}.course-list{list-style:none;padding:0;margin:8px 0 0}.course-list li{display:flex;gap:.5rem;margin:.65rem 0;font-size:.9rem;color:#46556a}.course-list i{color:#1ba86b}
.mini-service{height:100%;display:flex;gap:15px;padding:22px;border-radius:18px;background:#fff;border:1px solid var(--line)}.mini-service>i{font-size:1.65rem;color:var(--primary)}.mini-service h4{font-size:1rem;font-weight:800;margin:0 0 4px}.mini-service p{margin:0;color:var(--muted);font-size:.88rem}
.benefit-card{height:100%;padding:24px;border:1px solid var(--line);border-radius:22px;background:#fff}.benefit-card i{font-size:1.6rem;color:var(--primary)}.benefit-card h3{font-size:1rem;font-weight:800;margin:12px 0 6px}.benefit-card p{font-size:.9rem;color:var(--muted);margin:0}
.promo-section{padding-top:0}.promo-box{background:linear-gradient(120deg,#102b4d,#0d6efd);color:#fff;border-radius:28px;padding:38px 42px;position:relative;overflow:hidden}.promo-box:after{content:"";position:absolute;width:220px;height:220px;border-radius:50%;right:-60px;top:-90px;background:rgba(255,255,255,.08)}.promo-kicker{font-size:.75rem;font-weight:800;letter-spacing:.08em;color:#ffda73}.promo-box h2{font-size:2rem}.promo-box p{color:#d8e5f6;max-width:800px}
.process-card{position:relative;height:100%;padding:28px 24px;background:#fff;border:1px solid var(--line);border-radius:22px}.process-card>span{position:absolute;right:18px;top:12px;font-size:2.5rem;font-weight:800;color:#edf2f9}.process-card>i{font-size:1.7rem;color:var(--primary)}.process-card h3{font-size:1rem;font-weight:800;margin:14px 0 7px}.process-card p{font-size:.88rem;color:var(--muted);margin:0}.learning-panel{background:#fff;border:1px solid var(--line);border-radius:28px;padding:36px}.learning-steps{display:grid;gap:14px}.learning-step{display:flex;gap:14px;align-items:flex-start}.learning-step>b{flex:0 0 34px;width:34px;height:34px;border-radius:50%;background:#eaf2ff;color:var(--primary);display:grid;place-items:center}.learning-step h4{font-size:.98rem;font-weight:800;margin:2px 0 3px}.learning-step p{font-size:.86rem;color:var(--muted);margin:0}
.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:210px;gap:16px}.photo-placeholder{border-radius:22px;background:linear-gradient(135deg,#e9eef7,#f8fbff);border:1px dashed #b9c7da;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#76879c;text-align:center;padding:20px}.photo-placeholder i{font-size:2rem;margin-bottom:8px}.photo-large{grid-column:span 2;grid-row:span 2}.testimonial-card{position:relative;background:#fff;border:1px solid var(--line);border-radius:22px;padding:28px}.sample-badge{position:absolute;right:18px;top:18px;background:#fff1d8;color:#9a6516;font-size:.67rem;font-weight:700;padding:5px 8px;border-radius:99px}.stars{color:#ffb323;letter-spacing:2px;margin-bottom:16px}.testimonial-card p{color:#4d5c70}.testimonial-user{display:flex;align-items:center;gap:12px}.avatar{width:42px;height:42px;border-radius:50%;background:#eaf2ff;color:var(--primary);display:grid;place-items:center;font-weight:800}.testimonial-user strong{display:block}.testimonial-user small{display:block;color:#8b97a6}
.contact-section{background:linear-gradient(120deg,#0b2440,#0d5ecb)}.contact-info{padding:10px 5px}.contact-info h2{margin-top:10px}.contact-line{display:flex;gap:14px;align-items:flex-start;margin-top:22px;color:#fff}.contact-line>i{width:42px;height:42px;display:grid;place-items:center;border-radius:13px;background:rgba(255,255,255,.12);font-size:1.15rem}.contact-line small{display:block;color:#a9bdd8}.contact-line a,.contact-line span{color:#fff;font-weight:700}.lead-form-card{background:#fff;border-radius:28px;padding:32px;box-shadow:0 24px 60px rgba(0,0,0,.16)}.form-control,.form-select{border-radius:12px;border-color:#dfe6ef}.form-control:focus,.form-select:focus{box-shadow:0 0 0 .2rem rgba(13,110,253,.12);border-color:#87b6ff}
.map-wrap{border-radius:24px;overflow:hidden;box-shadow:0 16px 38px rgba(25,59,104,.12);height:420px}.map-wrap iframe{width:100%;height:100%;border:0}.accordion-item{border:1px solid var(--line)!important;border-radius:14px!important;overflow:hidden;margin-bottom:12px}.accordion-button{font-weight:700}.accordion-button:not(.collapsed){background:#edf4ff;color:#164d91;box-shadow:none}
.footer{background:#0a1e35}.footer-title{color:#fff;font-size:1rem;font-weight:800}.footer-links{list-style:none;padding:0;margin:0}.footer-links li{margin:.55rem 0;color:#a8b8ca;display:flex;gap:.6rem}.footer-links a{color:#c5d0dc}.footer-links a:hover{color:#fff}.footer-rule{border-color:rgba(255,255,255,.12);margin:28px 0}
.floating-actions{position:fixed;right:20px;bottom:28px;z-index:1035;display:flex;flex-direction:column;gap:10px}.float-btn{width:54px;height:54px;border-radius:50%;display:grid;place-items:center;color:#fff;box-shadow:0 12px 30px rgba(0,0,0,.2);font-weight:800}.zalo-btn{background:#0866ff;font-size:.7rem}.call-btn{background:#14a468;font-size:1.2rem}.float-btn:hover{color:#fff;transform:translateY(-2px)}.mobile-cta{position:fixed;left:0;right:0;bottom:0;z-index:1040;background:#fff;border-top:1px solid #e0e6ee;display:grid;grid-template-columns:repeat(3,1fr);padding:7px 8px env(safe-area-inset-bottom);box-shadow:0 -8px 24px rgba(18,45,80,.12)}.mobile-cta a{display:flex;flex-direction:column;align-items:center;gap:2px;color:#24405f;font-size:.72rem;font-weight:700}.mobile-cta i{font-size:1.1rem;color:var(--primary)}
@media(max-width:1199.98px){.hero-section h1{font-size:2.7rem}.min-vh-hero{min-height:620px}}
@media(max-width:991.98px){body{padding-bottom:62px}.min-vh-hero{min-height:auto}.hero-section h1{font-size:2.35rem}.hero-visual{max-width:680px;margin:auto}.floating-actions{display:none}.section-pad{padding:72px 0}.gallery-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:575.98px){.navbar-brand{min-width:auto}.brand-title{font-size:.88rem}.brand-sub{display:none}.brand-mark{width:40px;height:40px}.hero-section h1{font-size:2rem}.hero-section .lead{font-size:1rem}.hero-visual{padding:18px 8px 26px}.hero-badge{padding:9px 10px}.hero-badge strong{font-size:1.05rem}.hero-badge span{font-size:.64rem;max-width:90px}.section-pad{padding:58px 0}.promo-box,.learning-panel,.lead-form-card{padding:25px 20px;border-radius:22px}.gallery-grid{grid-template-columns:1fr;grid-auto-rows:200px}.photo-large{grid-column:span 1;grid-row:span 1}.map-wrap{height:340px}}
