:root{font-family:Roboto,Segoe UI,Arial,sans-serif;line-height:1.5;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}body{margin:0;min-width:320px}a{text-decoration:none}#root{min-height:100vh}:root{--vt-red: #e60012;--vt-red-dark: #c40010;--vt-blue: #0f4ca2;--vt-bg: #f7f7f8;--vt-text: #1f2937}.page{min-height:100vh;background:var(--vt-bg);color:var(--vt-text)}.container{width:min(1280px,94%);margin:0 auto}.header{position:sticky;top:0;z-index:20;box-shadow:0 2px 12px #00000014;background:#fff}.topbar{min-height:84px;display:flex;align-items:center;justify-content:space-between;gap:12px}.brand img{height:58px;width:auto;object-fit:contain}.header-hotline{background:var(--vt-red);color:#fff;padding:.72rem 1rem;border-radius:999px;font-weight:700;text-decoration:none}.menu{background:linear-gradient(90deg,var(--vt-red),var(--vt-red-dark))}.menu-inner{min-height:50px;display:flex;align-items:center;justify-content:center;gap:1.2rem;flex-wrap:wrap}.menu-inner a{color:#fff;text-decoration:none;font-weight:700;text-transform:uppercase;font-size:.93rem;letter-spacing:.02em}.menu-inner a.active{border-bottom:2px solid rgba(255,255,255,.95)}.hero{background:linear-gradient(120deg,#fff,#ffe7ea);border-bottom:1px solid #f0d8db}.single-hero{min-height:auto;padding:10px 0 28px;background:#e5e5e5}.hero-single-inner{width:100%;max-width:1290px;min-height:auto;margin:0 auto;display:flex;align-items:center;justify-content:center;overflow:visible}.cover-big{width:100vw;height:auto;object-fit:contain;object-position:center;display:block}.hero-caption{width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;margin-top:18px}.hero-caption h2{margin:0;color:var(--vt-red);font-size:clamp(1.8rem,3vw,2.35rem);font-weight:800;text-align:center}.hero-caption p{margin:6px 0 0;color:var(--vt-red);font-size:clamp(1.1rem,2vw,1.7rem);font-weight:800;text-align:center}.hero-inner{display:grid;grid-template-columns:1.4fr 1fr;align-items:center;gap:1.25rem;padding:2rem 0}.hero-kicker{color:var(--vt-red);font-weight:800;margin:0 0 8px;letter-spacing:.04em}.hero h1{margin:0 0 10px;font-size:clamp(1.7rem,3vw,2.5rem);color:#0f172a}.hero p{margin:0;max-width:680px}.hero img{width:100%;justify-self:end}.hero-actions{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:1rem}.hero-actions a{text-decoration:none;color:#fff;background:var(--vt-red);padding:.65rem 1rem;border-radius:10px;font-weight:700}.hero-actions a:last-child{background:var(--vt-blue)}.section{padding:28px 0}.section h2{margin:0 0 16px;color:var(--vt-red);font-size:clamp(1.3rem,2.3vw,1.9rem);text-transform:uppercase}.highlight-links{display:grid;gap:.65rem}.highlight-links a{text-decoration:none;background:#fff;border-left:4px solid var(--vt-red);border-radius:8px;color:#111827;padding:.8rem .9rem;font-weight:600;box-shadow:0 1px 4px #0000000f}.section-cta{background:linear-gradient(90deg,var(--vt-red),var(--vt-red-dark))}.cta-box{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#fff;padding:.5rem 0}.cta-box p{margin:0;font-weight:600}.cta-box a{text-decoration:none;color:var(--vt-red);background:#fff;border-radius:999px;padding:.65rem 1rem;font-weight:800}.group-title{margin:20px 0 6px;color:#0f172a;font-size:1.2rem}.group-desc{margin:0 0 10px;color:#475569}.plans-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;margin-bottom:18px}.plan-card{background:#fff;border-radius:10px;border:1px solid #e5e7eb;padding:14px;box-shadow:0 2px 8px #0000000d}.plan-card h3{margin:0;font-size:1.03rem}.plan-price{margin:8px 0;color:var(--vt-red);font-weight:800;font-size:1.15rem}.plan-card ul{margin:0 0 10px;padding-left:1.05rem}.plan-card a{text-decoration:none;display:inline-block;background:var(--vt-red);color:#fff;border-radius:8px;padding:.52rem .86rem;font-weight:700}.camera-grid,.cloud-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px}.camera-card,.cloud-card{background:#fff;border-radius:10px;border:1px solid #e5e7eb;padding:14px;box-shadow:0 2px 8px #0000000d}.camera-card img{width:100%;border-radius:8px;aspect-ratio:16 / 9;object-fit:cover}.camera-card h3,.cloud-card h3{margin:10px 0 6px}.camera-card ul{margin:0 0 10px;padding-left:1rem}.camera-price{color:var(--vt-red);font-weight:800;margin:0 0 10px}.camera-card a,.cloud-card a{text-decoration:none;display:inline-block;background:var(--vt-red);color:#fff;border-radius:8px;padding:.52rem .86rem;font-weight:700}.section-register{background:#fff2f3}.register-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:14px}.register-form,.support-box{background:#fff;border-radius:10px;border:1px solid #f0d4d8;padding:14px}.register-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.register-form input,.register-form select,.register-form textarea{border:1px solid #d1d5db;border-radius:8px;padding:.64rem;font-size:.95rem}.register-form textarea,.register-form button{grid-column:1 / -1}.register-form button{border:0;border-radius:8px;background:var(--vt-red);color:#fff;padding:.7rem;font-weight:700}.support-box h3{margin:0 0 8px;color:#0f172a}.support-box ul{margin:0 0 12px;padding-left:1rem}.support-box a{color:var(--vt-red);font-weight:700;text-decoration:none}.footer{background:#111827;color:#fff;padding:12px 0}.footer-inner{display:flex;justify-content:space-between;gap:10px;align-items:center;flex-wrap:wrap}.footer-inner p{margin:0}.footer-inner div{display:inline-flex;gap:.7rem}.footer-inner a{color:#93c5fd;text-decoration:none}.floating-actions{position:fixed;left:16px;bottom:16px;display:flex;flex-direction:column;align-items:flex-start;gap:8px;z-index:70}.zalo-fab{position:relative;width:66px;height:66px;border-radius:50%;text-decoration:none;display:grid;place-items:center;background:#2ca7f8;box-shadow:0 8px 16px #0ea5e947}.zalo-core{position:relative;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:#1d97ea;color:#fff;font-size:1.2rem;text-shadow:0 1px 2px rgba(0,0,0,.18);animation:icon-wiggle 1.8s infinite ease-in-out}.phone-fab{min-width:250px;height:52px;border-radius:999px;background:#ff001b;text-decoration:none;color:#fff;display:inline-flex;align-items:center;gap:10px;padding:0 14px 0 10px;box-shadow:0 8px 16px #ff001b42}.phone-icon{position:relative;width:36px;height:36px;border-radius:50%;background:#eb0018;display:inline-flex;align-items:center;justify-content:center;font-size:1.05rem;flex-shrink:0;animation:icon-wiggle 1.8s .25s infinite ease-in-out}.phone-number{font-size:1.5rem;line-height:1;font-weight:700;letter-spacing:.01em}.zalo-fab,.phone-fab{transition:transform .2s ease,filter .2s ease,box-shadow .2s ease}.zalo-fab:hover,.phone-fab:hover{transform:translateY(-2px);filter:saturate(1.08)}.zalo-core:before,.zalo-core:after,.phone-icon:before,.phone-icon:after{content:"";position:absolute;border-radius:50%;pointer-events:none;opacity:0}.zalo-core:before,.phone-icon:before{width:9px;height:9px;top:-5px;right:-4px;background:#ffffff6b;animation:mini-ripple 1.8s infinite ease-out}.zalo-core:after,.phone-icon:after{width:6px;height:6px;bottom:-3px;left:-4px;background:#ffffff59;animation:mini-ripple 1.8s .28s infinite ease-out}@keyframes icon-wiggle{0%,to{transform:rotate(0) scale(1)}10%{transform:rotate(-14deg) scale(1.02)}20%{transform:rotate(12deg) scale(1.02)}30%{transform:rotate(-10deg) scale(1.01)}40%{transform:rotate(8deg) scale(1.01)}50%{transform:rotate(0) scale(1)}}@keyframes mini-ripple{0%,15%{transform:scale(.65);opacity:0}35%{opacity:.7}to{transform:scale(2.7);opacity:0}}@media(max-width:920px){.hero-inner,.register-grid{grid-template-columns:1fr}.hero img{justify-self:start;max-width:300px}}@media(max-width:640px){.menu-inner{gap:.85rem}.register-form{grid-template-columns:1fr}.header-hotline{width:100%;text-align:center}.topbar{padding:10px 0;min-height:0;flex-wrap:wrap}.floating-actions{left:12px;right:12px;bottom:12px}.zalo-fab{width:58px;height:58px}.zalo-core{width:40px;height:40px;font-size:1rem}.phone-fab{min-width:0;width:100%;height:46px;padding:0 12px 0 8px;gap:8px}.phone-icon{width:30px;height:30px;font-size:.95rem}.phone-number{font-size:1.15rem}}
