:root{
    --bg:#020817;
    --bg-2:#050b18;
    --blue:#00c8ff;
    --blue-2:#0a1d3a;
    --white:#ffffff;
    --orange:#ff9d00;
    --muted:#9bb7d6;
    --glass:rgba(6,18,42,.68);
    --line:rgba(0,200,255,.28);
    --shadow:0 0 35px rgba(0,200,255,.26);
    --radius:32px;
    --ease:cubic-bezier(.19,1,.22,1);
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;scroll-snap-type:y mandatory;background:var(--bg)}
body{min-height:100vh;font-family:Inter,Arial,Helvetica,sans-serif;color:var(--white);background:var(--bg);overflow-x:hidden;line-height:1.6}
a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button,input,textarea,select{font:inherit}button{cursor:pointer;border:0}.container{width:min(96%,1440px);margin-inline:auto}.site-main{position:relative;z-index:2}.site-bg{position:fixed;inset:0;background:radial-gradient(circle at 18% 20%,rgba(0,200,255,.16),transparent 24%),radial-gradient(circle at 85% 14%,rgba(255,157,0,.12),transparent 18%),linear-gradient(135deg,#020817 0%,#04142c 45%,#020817 100%);z-index:-3}.site-bg:after{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(0,200,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(0,200,255,.04) 1px,transparent 1px);background-size:46px 46px;mask-image:radial-gradient(circle at center,#000 0%,transparent 75%)}.noise-layer{position:fixed;inset:0;pointer-events:none;opacity:.12;z-index:-2;background:repeating-linear-gradient(0deg,rgba(255,255,255,.03) 0 1px,transparent 1px 3px)}
.snap-section{min-height:100vh;scroll-snap-align:start;position:relative;overflow:hidden}.section-pad{padding:125px 0}.cyber-header{position:fixed;top:18px;left:0;width:100%;z-index:1000;transition:.45s var(--ease);pointer-events:none}.header-inner{width:min(96%,1440px);margin:auto;pointer-events:auto;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 18px;border:1px solid rgba(0,200,255,.22);border-radius:999px;background:linear-gradient(135deg,rgba(3,11,28,.84),rgba(7,26,58,.56));backdrop-filter:blur(20px);box-shadow:0 14px 55px rgba(0,0,0,.35),inset 0 0 0 1px rgba(255,255,255,.05);transition:.45s var(--ease)}.cyber-header.is-scrolled{top:8px}.cyber-header.is-scrolled .header-inner{padding:8px 16px;background:rgba(4,14,32,.76);box-shadow:0 18px 60px rgba(0,200,255,.18)}.brand{display:flex;align-items:center;gap:12px;min-width:max-content}.brand-logo{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;border:1px solid rgba(0,200,255,.42);box-shadow:0 0 22px rgba(0,200,255,.25);background:#fff;overflow:hidden;transition:.45s var(--ease)}.cyber-header.is-scrolled .brand-logo{width:46px;height:46px}.brand-logo img{width:100%;height:100%;object-fit:cover}.brand-text strong{font-size:15px;letter-spacing:1.6px}.brand-text small{display:block;color:var(--muted);font-size:11px;margin-top:-3px}.desktop-nav{display:flex;align-items:center;justify-content:center;gap:5px;padding:5px;border-radius:999px;background:rgba(0,200,255,.05)}.nav-link{position:relative;padding:11px 16px;border-radius:999px;color:#cfeaff;font-size:14px;font-weight:700;transition:.35s var(--ease);white-space:nowrap}.nav-link:after{content:"";position:absolute;left:50%;bottom:3px;width:0;height:2px;background:linear-gradient(90deg,transparent,var(--blue),transparent);box-shadow:0 0 12px var(--blue);transform:translateX(-50%);transition:.35s var(--ease)}.nav-link:hover,.nav-link.active{color:#fff;background:rgba(0,200,255,.1)}.nav-link:hover:after,.nav-link.active:after{width:56%}.header-actions{display:flex;align-items:center;gap:10px}.hotline-pill{padding:11px 15px;border:1px solid rgba(255,157,0,.38);border-radius:999px;color:#fff;background:rgba(255,157,0,.12);box-shadow:0 0 18px rgba(255,157,0,.18);font-size:13px;font-weight:800}.hamburger{width:46px;height:46px;border-radius:50%;background:linear-gradient(135deg,rgba(0,200,255,.18),rgba(255,255,255,.05));border:1px solid rgba(0,200,255,.32);display:grid;place-items:center;gap:4px;padding:12px}.hamburger span{width:18px;height:2px;background:#fff;box-shadow:0 0 10px var(--blue);transition:.3s var(--ease)}
.drawer-backdrop,.modal-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.65);backdrop-filter:blur(10px);opacity:0;visibility:hidden;transition:.35s var(--ease);z-index:2000}.drawer-backdrop.show,.modal-backdrop.show{opacity:1;visibility:visible}.mobile-drawer{position:fixed;top:0;right:0;width:min(360px,88vw);height:100vh;padding:18px;background:linear-gradient(160deg,rgba(2,8,23,.96),rgba(7,27,58,.92));border-left:1px solid var(--line);box-shadow:-25px 0 70px rgba(0,0,0,.5);z-index:1110;transform:translateX(105%);transition:.45s var(--ease)}.mobile-drawer.show{transform:translateX(0)}.drawer-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px}.drawer-head img{width:72px;height:72px;border-radius:50%;background:#fff}.drawer-head button{width:42px;height:42px;border-radius:50%;background:rgba(255,255,255,.08);color:#fff;font-size:28px}.drawer-nav{display:grid;gap:10px}.drawer-link{padding:14px 16px;border-radius:18px;border:1px solid rgba(0,200,255,.18);background:rgba(255,255,255,.04);color:#d9f6ff;font-weight:800}.drawer-link.active{background:rgba(0,200,255,.18);box-shadow:var(--shadow)}.drawer-booking{width:100%;margin-top:20px}.hero-section{padding:128px 0 44px;background:linear-gradient(90deg,rgba(2,8,23,.88),rgba(2,8,23,.35)),var(--hero-bg) center/cover no-repeat}.hero-section:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 66% 40%,rgba(0,200,255,.16),transparent 28%),linear-gradient(180deg,rgba(2,8,23,.2),#020817 94%);pointer-events:none}.hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:1.02fr .98fr;align-items:center;gap:36px;min-height:58vh}.eyebrow{display:inline-flex;align-items:center;gap:8px;width:max-content;max-width:100%;padding:9px 14px;border-radius:999px;border:1px solid rgba(0,200,255,.28);background:rgba(0,200,255,.08);color:#9deeff;font-size:12px;font-weight:900;letter-spacing:1.8px;text-transform:uppercase;box-shadow:0 0 22px rgba(0,200,255,.12)}.hero-title{margin:18px 0 14px;font-size:clamp(44px,6.2vw,80px);line-height:1.2;letter-spacing:-3px;text-transform:uppercase;text-shadow:0 0 22px rgba(0,200,255,.35)}.hero-title span{display:block;opacity:0;transform:translateX(-32px);animation:titleIn .82s var(--ease) forwards}.hero-title span:nth-child(2){animation-delay:.12s}.hero-title span:nth-child(3){animation-delay:.24s}.gradient-text{background:linear-gradient(90deg,#fff 0%,#7feaff 35%,var(--blue) 70%,#fff 100%);-webkit-background-clip:text;background-clip:text;color:transparent}.hero-desc{font-size:clamp(18px,2vw,28px);color:#d6f6ff;margin-bottom:26px}.hero-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.btn{position:relative;isolation:isolate;display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:14px 22px;border-radius:999px;font-weight:900;letter-spacing:.2px;transition:.36s var(--ease);overflow:hidden}.btn:before{content:"";position:absolute;inset:-2px;background:linear-gradient(110deg,transparent 0%,rgba(255,255,255,.75) 42%,transparent 55%);transform:translateX(-130%);transition:.6s var(--ease);z-index:-1}.btn:hover:before{transform:translateX(130%)}.btn-primary{color:#06101f;background:linear-gradient(135deg,#ffbd43,var(--orange));box-shadow:0 12px 34px rgba(255,157,0,.3),0 0 24px rgba(255,157,0,.22)}.btn-primary:hover{transform:translateY(-3px);box-shadow:0 18px 42px rgba(255,157,0,.4),0 0 30px rgba(0,200,255,.18)}.btn-ghost{color:#e9fbff;border:1px solid rgba(0,200,255,.38);background:rgba(0,200,255,.08);box-shadow:0 0 20px rgba(0,200,255,.12)}.btn-ghost:hover{transform:translateY(-3px);background:rgba(0,200,255,.16);box-shadow:var(--shadow)}.hero-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:28px;max-width:650px}.hero-stats div{padding:16px;border-radius:22px;border:1px solid rgba(0,200,255,.22);background:rgba(255,255,255,.045);backdrop-filter:blur(16px)}.hero-stats strong{display:block;color:var(--blue);font-size:28px;text-shadow:0 0 15px rgba(0,200,255,.5)}.hero-stats span{color:var(--muted);font-size:13px}.hero-visual{position:relative;min-height:590px;display:grid;place-items:center}.hero-visual img{width:100%;height:min(560px,68vh);object-fit:cover;border-radius:44px;border:1px solid rgba(0,200,255,.35);box-shadow:0 0 55px rgba(0,200,255,.24),inset 0 0 24px rgba(0,200,255,.2);filter:saturate(1.1) contrast(1.05)}.hero-visual:after{content:"";position:absolute;inset:14px;border-radius:34px;border:1px solid rgba(255,255,255,.07);pointer-events:none}.visual-orbit{position:absolute;width:76%;aspect-ratio:1;border:1px dashed rgba(0,200,255,.3);border-radius:50%;animation:spin 16s linear infinite;filter:drop-shadow(0 0 18px rgba(0,200,255,.35))}.feature-card{position:absolute;z-index:2;padding:12px 16px;border-radius:20px;border:1px solid rgba(0,200,255,.36);background:rgba(3,14,32,.72);backdrop-filter:blur(16px);box-shadow:var(--shadow);font-weight:800;color:#eaffff;font-size:13px}.f1{left:-8px;top:16%}.f2{right:-8px;top:26%}.f3{left:4%;bottom:20%}.f4{right:5%;bottom:12%}.slider-shell{position:relative;z-index:3;margin-top:12px}.compact-head{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:12px}.compact-head h2{font-size:26px}.cyber-slider{position:relative}.slider-window{overflow:hidden;border-radius:28px}.slider-track{display:flex;gap:16px;will-change:transform;transition:transform .9s var(--ease);padding:4px}.slider-card{position:relative;flex:0 0 calc((100% - 48px)/4);min-height:170px;padding:22px;border-radius:28px;overflow:hidden;border:1px solid rgba(0,200,255,.24);background:linear-gradient(135deg,rgba(3,14,32,.85),rgba(3,20,45,.52)),var(--card-bg) center/cover;box-shadow:inset 0 0 0 1px rgba(255,255,255,.04),0 18px 45px rgba(0,0,0,.34)}.slider-card:before{content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent,rgba(0,200,255,.18),transparent);transform:translateX(-100%);animation:scan 4s linear infinite}.slider-card h3{position:relative;font-size:20px;margin:16px 0 8px}.slider-card p{position:relative;color:#bad9f5;font-size:14px}.card-icon{position:relative;width:44px;height:44px;display:grid;place-items:center;border-radius:16px;background:rgba(0,200,255,.13);box-shadow:0 0 18px rgba(0,200,255,.28);font-size:22px}.slider-btn{position:absolute;top:50%;transform:translateY(-50%);z-index:5;width:46px;height:46px;border-radius:50%;border:1px solid rgba(0,200,255,.34);background:rgba(2,8,23,.72);color:#fff;font-size:34px;box-shadow:var(--shadow);transition:.3s var(--ease)}.slider-btn:hover{background:rgba(0,200,255,.22)}.slider-btn.prev{left:-16px}.slider-btn.next{right:-16px}.slider-dots{display:flex;justify-content:center;gap:8px;margin-top:14px}.slider-dot{width:9px;height:9px;border-radius:999px;background:rgba(255,255,255,.22);transition:.3s var(--ease)}.slider-dot.active{width:34px;background:var(--blue);box-shadow:0 0 14px var(--blue)}.section-head{text-align:center;max-width:800px;margin:0 auto 36px}.section-head h2{font-size:clamp(34px,4vw,62px);line-height:1.02;margin:16px 0 12px;letter-spacing:-1.5px}.section-head p{color:var(--muted);font-size:17px}.align-left{text-align:left;margin-inline:0}.service-section,.price-section,.process-section{background:linear-gradient(180deg,rgba(2,8,23,.96),rgba(5,11,24,.92))}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.service-card{position:relative;min-height:320px;padding:24px;border-radius:var(--radius);overflow:hidden;border:1px solid rgba(0,200,255,.22);background:linear-gradient(180deg,rgba(4,16,38,.64),rgba(2,8,23,.94)),var(--service-bg) center/cover;box-shadow:0 20px 60px rgba(0,0,0,.28);transition:.45s var(--ease)}.service-card:hover{transform:translateY(-10px) scale(1.015);border-color:rgba(0,200,255,.72);box-shadow:0 28px 70px rgba(0,0,0,.38),0 0 42px rgba(0,200,255,.24)}.card-glow{position:absolute;inset:-1px;background:radial-gradient(circle at 15% 15%,rgba(0,200,255,.22),transparent 34%);opacity:.7}.service-icon{position:relative;display:grid;place-items:center;width:58px;height:58px;border-radius:20px;background:rgba(0,200,255,.12);border:1px solid rgba(0,200,255,.26);font-size:28px;box-shadow:0 0 22px rgba(0,200,255,.2)}.service-card h3,.service-card p,.card-bottom{position:relative}.service-card h3{font-size:23px;margin:24px 0 12px}.service-card p{color:#c3d8ed}.card-bottom{margin-top:24px;display:flex;justify-content:space-between;gap:10px;align-items:center}.card-bottom strong{color:#ffe7b7}.mini-btn{padding:10px 13px;border-radius:999px;background:rgba(0,200,255,.12);border:1px solid rgba(0,200,255,.32);color:#eaffff;font-weight:900;transition:.3s var(--ease)}.mini-btn:hover{background:var(--blue);color:#02101f;box-shadow:0 0 22px rgba(0,200,255,.4)}.pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.pricing-card{position:relative;padding:26px;border-radius:var(--radius);border:1px solid rgba(0,200,255,.24);background:linear-gradient(145deg,rgba(7,27,58,.72),rgba(2,8,23,.8));box-shadow:0 18px 55px rgba(0,0,0,.27),inset 0 0 0 1px rgba(255,255,255,.04);overflow:hidden;transition:.45s var(--ease)}.pricing-card:before{content:"";position:absolute;width:160px;height:160px;border-radius:50%;background:rgba(0,200,255,.12);filter:blur(38px);right:-55px;top:-55px}.pricing-card:hover{transform:translateY(-8px);box-shadow:0 0 42px rgba(0,200,255,.2)}.price-icon{display:grid;place-items:center;width:56px;height:56px;border-radius:18px;background:rgba(0,200,255,.12);font-size:27px}.pricing-card small{display:block;color:var(--blue);margin-top:16px;font-weight:800}.pricing-card h3{font-size:24px;margin:8px 0 10px}.pricing-card p{color:#bdd3e8;min-height:58px}.pricing-card strong{display:block;font-size:32px;color:#fff4d6;margin:18px 0;text-shadow:0 0 18px rgba(255,157,0,.3)}.two-col{display:grid;grid-template-columns:.9fr 1.1fr;gap:28px;align-items:center}.why-section{background:linear-gradient(135deg,rgba(2,8,23,.96),rgba(7,22,49,.9))}.why-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.why-card,.glass-card,.info-card,.contact-form{padding:24px;border-radius:28px;border:1px solid rgba(0,200,255,.22);background:rgba(255,255,255,.045);backdrop-filter:blur(18px);box-shadow:0 18px 50px rgba(0,0,0,.25)}.why-card b{color:var(--blue);font-size:30px;text-shadow:0 0 16px rgba(0,200,255,.45)}.why-card h3{margin:8px 0}.why-card p,.glass-card p{color:var(--muted)}.process-line{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;position:relative}.process-line:before{content:"";position:absolute;left:6%;right:6%;top:42px;height:1px;background:linear-gradient(90deg,transparent,var(--blue),transparent);box-shadow:0 0 16px rgba(0,200,255,.5)}.process-step{position:relative;padding:22px;border-radius:26px;border:1px solid rgba(0,200,255,.24);background:rgba(6,20,44,.72);backdrop-filter:blur(16px);box-shadow:0 20px 50px rgba(0,0,0,.24)}.process-step span,.timeline-item span{width:42px;height:42px;display:grid;place-items:center;border-radius:50%;background:var(--blue);color:#06101f;font-weight:1000;box-shadow:0 0 24px rgba(0,200,255,.55)}.process-step h3{margin:18px 0 8px}.process-step p{color:var(--muted);font-size:14px}.contact-section{display:grid;place-items:center;background:linear-gradient(rgba(2,8,23,.82),rgba(2,8,23,.96)),url('../../uploads/nen_contact.png') center/cover no-repeat}.contact-cta{max-width:900px;text-align:center;padding:54px;border-radius:42px;border:1px solid rgba(0,200,255,.28);background:rgba(3,14,32,.7);backdrop-filter:blur(20px);box-shadow:var(--shadow)}.contact-cta h2{font-size:clamp(34px,5vw,72px);line-height:1.02;margin:18px 0}.contact-cta p{color:var(--muted);font-size:18px}.center-actions{justify-content:center;margin-top:24px}.site-footer{position:relative;z-index:2;padding:50px 0 20px;background:linear-gradient(180deg,rgba(2,8,23,.92),#020817);border-top:1px solid rgba(0,200,255,.18)}.footer-grid{display:grid;grid-template-columns:1.2fr .9fr .9fr;gap:18px}.footer-brand,.footer-card{padding:22px;border-radius:26px;border:1px solid rgba(0,200,255,.16);background:rgba(255,255,255,.035)}.footer-brand{display:flex;gap:18px}.footer-brand img{width:84px;height:84px;border-radius:50%;background:#fff}.footer-brand p,.footer-card p{color:var(--muted)}.footer-card h4{margin-bottom:10px}.footer-card a{color:#9deeff}.footer-bottom{text-align:center;color:#6f8eaa;font-size:13px;padding-top:20px}.page-hero{padding-top:150px;background:linear-gradient(90deg,rgba(2,8,23,.88),rgba(2,8,23,.54)),url('../../uploads/anhnen.jpg') center/cover no-repeat;min-height:48vh;display:flex;align-items:center}.page-hero-inner{text-align:center;max-width:920px}.page-hero h1{font-size:clamp(42px,6vw,86px);line-height:1.02;margin:18px 0;background:linear-gradient(90deg,#fff,#73e7ff,var(--blue));-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:0 0 22px rgba(0,200,255,.15)}.page-hero p{color:var(--muted);font-size:18px}.page-service-grid{padding-bottom:55px}.search-box{margin:28px auto 0;max-width:660px}.search-box input,.cyber-form input,.cyber-form textarea,.cyber-form select{width:100%;border:1px solid rgba(0,200,255,.24);border-radius:18px;background:rgba(2,8,23,.68);color:#fff;outline:none;padding:14px 15px;transition:.25s var(--ease)}.search-box input:focus,.cyber-form input:focus,.cyber-form textarea:focus,.cyber-form select:focus{border-color:rgba(0,200,255,.75);box-shadow:0 0 22px rgba(0,200,255,.18)}.price-list{padding-bottom:55px}.about-block{background:rgba(2,8,23,.92)}.about-image img{border-radius:36px;border:1px solid rgba(0,200,255,.28);box-shadow:var(--shadow)}.timeline{max-width:940px;margin:auto;display:grid;gap:16px}.timeline-item{display:grid;grid-template-columns:60px 1fr;gap:16px;padding:22px;border-radius:28px;background:rgba(255,255,255,.045);border:1px solid rgba(0,200,255,.2);backdrop-filter:blur(18px)}.timeline-item p{color:var(--muted)}.contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:24px;align-items:start}.contact-cards{display:grid;gap:14px}.info-card b{display:block;color:#dffbff}.info-card span{display:block;color:var(--muted);margin-top:5px}.map-placeholder{height:240px;border-radius:28px;border:1px solid rgba(0,200,255,.22);background:linear-gradient(135deg,rgba(0,200,255,.12),rgba(2,8,23,.75)),url('../../uploads/repair_digital_bg.webp') center/cover;color:#dffbff;display:grid;place-items:center;text-align:center;font-weight:1000;letter-spacing:1.5px}.cyber-form{display:grid;gap:15px}.cyber-form label{display:grid;gap:8px}.cyber-form label span{font-size:13px;color:#bdeeff;font-weight:800}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.span-2{grid-column:span 2}.booking-modal{position:fixed;inset:0;display:grid;place-items:center;z-index:2005;opacity:0;visibility:hidden;pointer-events:none;transition:.35s var(--ease);padding:18px;overscroll-behavior:contain}.booking-modal.show{opacity:1;visibility:visible;pointer-events:auto}.booking-panel{position:relative;width:min(760px,96vw);max-height:92vh;overflow:auto;padding:28px;border-radius:34px;border:1px solid rgba(220,230,240,.22);background:linear-gradient(145deg,rgba(7,14,25,.95),rgba(26,32,42,.88) 42%,rgba(9,34,70,.84));backdrop-filter:blur(24px);box-shadow:0 30px 90px rgba(0,0,0,.55),0 0 60px rgba(255,157,0,.16),inset 0 0 0 1px rgba(255,255,255,.04);transform:translateY(18px) scale(.94);transition:.45s var(--ease)}.booking-modal.show .booking-panel{transform:translateY(0) scale(1);animation:modalPulse .6s var(--ease)}.booking-panel h2{font-size:34px;line-height:1.05;margin:14px 0 8px}.booking-panel p{color:var(--muted);margin-bottom:18px}.modal-close{position:absolute;right:18px;top:18px;width:42px;height:42px;border-radius:50%;background:rgba(255,255,255,.08);color:#fff;font-size:30px;transition:.25s var(--ease)}.modal-close:hover{background:rgba(255,70,70,.25);color:#fff}.form-submit{width:100%;margin-top:8px}.toast-stack{position:fixed;top:100px;right:18px;display:grid;gap:10px;z-index:1300}.toast{min-width:min(360px,calc(100vw - 36px));padding:15px 16px;border-radius:18px;border:1px solid rgba(0,255,170,.36);background:linear-gradient(135deg,rgba(0,200,255,.18),rgba(4,26,36,.94));box-shadow:0 0 32px rgba(0,200,255,.26);color:#eaffff;font-weight:800;transform:translateX(125%);opacity:0;transition:.45s var(--ease)}.toast.error{border-color:rgba(255,120,0,.5);background:linear-gradient(135deg,rgba(255,80,0,.25),rgba(35,12,7,.94));box-shadow:0 0 32px rgba(255,120,0,.24)}.toast.show{transform:translateX(0);opacity:1}.toast.hide{transform:translateX(125%);opacity:0}.to-top{position:fixed;right:18px;bottom:18px;width:48px;height:48px;border-radius:15px;background:rgba(255,255,255,.08);border:1px solid rgba(0,200,255,.2);box-shadow:var(--shadow);z-index:900;display:grid;place-items:center;opacity:0;visibility:hidden;transform:translateY(18px);transition:.35s var(--ease)}.to-top.show{opacity:1;visibility:visible;transform:translateY(0)}.to-top img{width:100%;height:100%;object-fit:cover;border-radius:15px}.reveal{opacity:0;transform:translateY(36px) scale(.985);filter:blur(5px);transition:opacity .85s var(--ease),transform .85s var(--ease),filter .85s var(--ease)}.reveal.visible{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}.delay-1{transition-delay:.12s}.delay-2{transition-delay:.22s}
@keyframes titleIn{to{opacity:1;transform:translateX(0)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes scan{0%{transform:translateX(-110%)}55%,100%{transform:translateX(110%)}}@keyframes modalPulse{0%{box-shadow:0 0 0 rgba(0,200,255,0)}100%{box-shadow:0 30px 90px rgba(0,0,0,.55),0 0 60px rgba(0,200,255,.22)}}
@media (max-width:1100px){.desktop-nav{display:none}.hero-grid,.two-col,.contact-grid{grid-template-columns:1fr}.hero-visual{min-height:520px}.service-grid{grid-template-columns:repeat(2,1fr)}.pricing-grid{grid-template-columns:repeat(2,1fr)}.process-line{grid-template-columns:repeat(2,1fr)}.process-line:before{display:none}.slider-card{flex-basis:calc((100% - 16px)/2)}.footer-grid{grid-template-columns:1fr 1fr}.hero-title{letter-spacing:-2px}.section-pad{padding:105px 0}}
@media (max-width:700px){html{scroll-snap-type:y proximity}.cyber-header{top:10px}.header-inner{border-radius:24px;padding:9px 10px}.brand-text{display:none}.brand-logo{width:48px;height:48px}.hotline-pill{display:none}.hero-section{padding-top:108px}.hero-grid{gap:20px}.hero-title{font-size:clamp(40px,13vw,62px);letter-spacing:-1.4px}.hero-actions,.center-actions{align-items:stretch}.btn{width:100%}.hero-stats{grid-template-columns:1fr}.hero-visual{min-height:auto}.hero-visual img{height:420px;border-radius:30px}.feature-card{position:relative;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;margin-top:8px}.visual-orbit{display:none}.slider-card{flex-basis:100%;min-height:180px}.slider-btn{width:40px;height:40px}.slider-btn.prev{left:4px}.slider-btn.next{right:4px}.section-pad{padding:88px 0}.section-head{text-align:left}.service-grid,.pricing-grid,.why-grid,.process-line,.footer-grid{grid-template-columns:1fr}.footer-brand{display:block}.footer-brand img{margin-bottom:14px}.form-grid{grid-template-columns:1fr}.span-2{grid-column:auto}.booking-panel{padding:22px;border-radius:26px}.page-hero{padding-top:124px;min-height:42vh}.page-hero-inner{text-align:left}.contact-cta{padding:28px;border-radius:28px}.toast-stack{top:88px;right:10px}.to-top{right:12px;bottom:12px}}


/* === DUY NGỌC UPDATE: brands, floating socials, mini chat, maintenance === */
.maintenance-screen{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 20% 10%,rgba(0,200,255,.18),transparent 28%),linear-gradient(135deg,#020817,#071a35)}
.maintenance-card{width:min(720px,94vw);text-align:center;border:1px solid rgba(0,200,255,.34);border-radius:38px;background:rgba(3,14,32,.74);backdrop-filter:blur(22px);box-shadow:0 0 80px rgba(0,200,255,.18);padding:42px}.maintenance-card img{width:112px;height:112px;border-radius:50%;background:#fff;padding:8px;margin:0 auto 20px}.maintenance-card h1{font-size:clamp(36px,6vw,72px);line-height:1;margin:14px 0;background:linear-gradient(90deg,#fff,#00c8ff);-webkit-background-clip:text;background-clip:text;color:transparent}.maintenance-card p{color:#b9d6ec;margin-bottom:22px}.brand-section{background:linear-gradient(180deg,rgba(2,8,23,.97),rgba(5,12,28,.97));min-height:auto;scroll-snap-align:start}.brand-marquee{overflow:hidden;border:1px solid rgba(0,200,255,.18);border-radius:24px;background:rgba(255,255,255,.045);box-shadow:inset 0 0 24px rgba(0,200,255,.05);padding:18px;mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}.brand-track{display:flex;gap:24px;width:max-content;animation:brandMove 24s linear infinite}.brand-marquee:hover .brand-track{animation-play-state:paused}.brand-chip{width:190px;height:74px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.08);border-radius:18px;background:rgba(255,255,255,.055);transition:.25s var(--ease)}.brand-chip:hover{transform:translateY(-4px);border-color:rgba(0,200,255,.45);box-shadow:0 0 28px rgba(0,200,255,.18)}.brand-chip img{max-width:150px;max-height:52px;object-fit:contain}.brand-chip strong{font-size:25px;letter-spacing:.04em;color:#dffbff;text-shadow:0 0 18px rgba(0,200,255,.32)}@keyframes brandMove{from{transform:translate3d(0,0,0)}to{transform:translate3d(-50%,0,0)}}.floating-socials{position:fixed;left:16px;bottom:18px;z-index:980;display:grid;gap:9px}.floating-socials a{display:flex;align-items:center;gap:9px;width:48px;max-width:48px;height:48px;overflow:hidden;border-radius:16px;border:1px solid rgba(0,200,255,.25);background:rgba(3,14,32,.78);backdrop-filter:blur(16px);box-shadow:0 12px 34px rgba(0,0,0,.3);transition:.28s var(--ease)}.floating-socials a:hover{width:auto;max-width:180px;padding-right:14px;transform:translateX(4px);border-color:rgba(0,200,255,.6);box-shadow:0 0 30px rgba(0,200,255,.22)}.floating-socials span{width:48px;height:48px;display:grid;place-items:center;font-weight:1000;color:#001321;background:linear-gradient(135deg,#00c8ff,#6dffed)}.floating-socials em{font-style:normal;font-size:13px;white-space:nowrap;color:#eaffff}.mini-chat{position:fixed;right:18px;bottom:82px;z-index:981}.mini-chat-toggle{display:flex;align-items:center;gap:8px;height:50px;padding:0 16px;border-radius:18px;background:linear-gradient(135deg,#00c8ff,#0066ff);color:#fff;box-shadow:0 18px 38px rgba(0,200,255,.24);font-weight:900}.mini-chat-panel{position:absolute;right:0;bottom:62px;width:min(360px,calc(100vw - 28px));display:none;gap:10px;border:1px solid rgba(0,200,255,.34);border-radius:24px;background:linear-gradient(145deg,rgba(3,12,30,.94),rgba(9,34,70,.9));backdrop-filter:blur(20px);box-shadow:0 28px 80px rgba(0,0,0,.48),0 0 46px rgba(0,200,255,.18);padding:16px}.mini-chat.open .mini-chat-panel{display:grid;animation:chatIn .28s var(--ease)}.mini-chat-head{display:flex;align-items:center;justify-content:space-between}.mini-chat-head button{width:32px;height:32px;border-radius:11px;background:rgba(255,255,255,.08);color:#fff;font-size:20px}.mini-chat-panel p{font-size:13px;color:#a9c8dc}.mini-chat-panel input,.mini-chat-panel textarea{width:100%;border:1px solid rgba(0,200,255,.22);background:rgba(2,8,23,.7);color:#fff;border-radius:14px;padding:11px 12px;outline:0}.mini-chat-panel input:focus,.mini-chat-panel textarea:focus{border-color:#00c8ff;box-shadow:0 0 0 4px rgba(0,200,255,.1)}@keyframes chatIn{from{opacity:0;transform:translateY(16px) scale(.96)}to{opacity:1;transform:none}}@media(max-width:700px){.floating-socials{left:10px;bottom:10px}.floating-socials a{width:44px;height:44px}.floating-socials span{width:44px;height:44px}.mini-chat{right:10px;bottom:68px}.brand-chip{width:150px;height:64px}.brand-track{gap:14px}}


/* === FIX PREMIUM MAINTENANCE + REPAIR SHOWCASE === */
.maintenance-premium{position:relative;overflow:hidden;place-items:center;background:radial-gradient(circle at 16% 18%,rgba(0,200,255,.22),transparent 28%),radial-gradient(circle at 84% 18%,rgba(255,157,0,.12),transparent 24%),linear-gradient(135deg,#020817,#071a35 54%,#020817)}
.maintenance-grid{position:relative;z-index:2;width:min(1180px,94vw);display:grid;grid-template-columns:1.05fr .95fr;gap:22px;align-items:stretch}.maintenance-left{text-align:left;width:auto}.maintenance-logo-wrap{display:inline-grid;place-items:center;width:118px;height:118px;border-radius:50%;padding:8px;background:#fff;box-shadow:0 0 45px rgba(0,200,255,.45),0 0 0 12px rgba(0,200,255,.06);animation:floatLogo 4s ease-in-out infinite}.maintenance-logo-wrap img{width:100%;height:100%;object-fit:contain;margin:0;padding:0;box-shadow:none}.maintenance-card.maintenance-left h1{font-size:clamp(42px,6vw,82px)}.maintenance-actions{display:flex;gap:12px;flex-wrap:wrap}.maintenance-status-card{position:relative;overflow:hidden;border:1px solid rgba(0,200,255,.34);border-radius:38px;background:linear-gradient(145deg,rgba(6,20,45,.74),rgba(2,8,23,.82));backdrop-filter:blur(22px);box-shadow:0 0 80px rgba(0,200,255,.16),inset 0 0 60px rgba(0,200,255,.04);padding:38px}.maintenance-status-card:before{content:"";position:absolute;inset:0;background:linear-gradient(120deg,transparent,rgba(0,200,255,.16),transparent);transform:translateX(-120%);animation:scan 4.5s linear infinite}.status-dot{width:18px;height:18px;border-radius:50%;display:inline-block;background:#ff9d00;box-shadow:0 0 22px #ff9d00;margin-bottom:18px;animation:pulseDot 1.6s infinite}.maintenance-status-card small{display:block;color:#00c8ff;letter-spacing:.18em;font-weight:900}.maintenance-status-card h2{font-size:38px;margin:10px 0 22px}.maintenance-status-card ul{display:grid;gap:12px;margin:0 0 24px;padding:0;list-style:none}.maintenance-status-card li{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border-radius:18px;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.08)}.maintenance-status-card b{color:#eaffff}.maintenance-status-card em{font-style:normal;color:#99dff5;text-align:right}.maintenance-progress{height:12px;border-radius:999px;background:rgba(255,255,255,.08);overflow:hidden;border:1px solid rgba(0,200,255,.18)}.maintenance-progress span{display:block;width:70%;height:100%;border-radius:inherit;background:linear-gradient(90deg,#00c8ff,#6dffed,#ff9d00);box-shadow:0 0 22px rgba(0,200,255,.45);animation:progressGlow 2.6s ease-in-out infinite alternate}.status-note{margin:18px 0 0;color:#b7d8e8}.maintenance-orb{position:absolute;border-radius:50%;filter:blur(32px);opacity:.55;animation:orbMove 8s ease-in-out infinite}.orb-a{width:220px;height:220px;left:8%;top:16%;background:#00c8ff}.orb-b{width:260px;height:260px;right:9%;bottom:12%;background:#ff9d00;animation-delay:-2s}@keyframes floatLogo{50%{transform:translateY(-8px)}}@keyframes pulseDot{50%{transform:scale(1.22);opacity:.72}}@keyframes progressGlow{from{width:46%}to{width:84%}}@keyframes orbMove{50%{transform:translate3d(18px,-24px,0) scale(1.08)}}
.repair-showcase-section{background:linear-gradient(180deg,rgba(2,8,23,.97),rgba(3,15,35,.96));min-height:auto;scroll-snap-align:start}.repair-showcase-grid{display:grid;grid-template-columns:1.1fr .9fr .9fr;gap:18px}.repair-showcase-card{position:relative;overflow:hidden;border-radius:30px;border:1px solid rgba(0,200,255,.23);background:linear-gradient(145deg,rgba(7,27,58,.62),rgba(2,8,23,.88));box-shadow:0 20px 60px rgba(0,0,0,.3);transition:.42s var(--ease)}.repair-showcase-card:hover{transform:translateY(-8px);border-color:rgba(0,200,255,.62);box-shadow:0 0 44px rgba(0,200,255,.18),0 28px 80px rgba(0,0,0,.36)}.repair-showcase-card:first-child{grid-row:span 2}.repair-media{position:relative;aspect-ratio:16/10;overflow:hidden}.repair-showcase-card:first-child .repair-media{aspect-ratio:16/13}.repair-media img,.repair-media video{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(1.08) contrast(1.05)}.repair-showcase-card:hover .repair-media img,.repair-showcase-card:hover .repair-media video{transform:scale(1.05)}.repair-media img,.repair-media video{transition:.55s var(--ease)}.repair-media:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,rgba(2,8,23,.72))}.video-badge{position:absolute;left:14px;top:14px;z-index:3;padding:8px 12px;border-radius:999px;background:rgba(0,200,255,.18);border:1px solid rgba(0,200,255,.38);color:#eaffff;font-size:12px;font-weight:900;box-shadow:0 0 18px rgba(0,200,255,.25)}.repair-info{padding:18px 20px 22px}.repair-info span{display:block;color:#00c8ff;font-weight:900;font-size:12px;letter-spacing:.08em;text-transform:uppercase}.repair-info h3{font-size:22px;margin:8px 0}.repair-info p{color:#bed5e8}.floating-socials a{min-width:48px}.floating-socials a:hover,.floating-socials a:focus{width:auto;min-width:130px;max-width:220px}.floating-socials a:hover em,.floating-socials a:focus em{opacity:1}@media(max-width:980px){.maintenance-grid{grid-template-columns:1fr}.repair-showcase-grid{grid-template-columns:1fr 1fr}.repair-showcase-card:first-child{grid-row:auto}}@media(max-width:640px){.maintenance-left,.maintenance-status-card{border-radius:28px;padding:24px}.maintenance-status-card li{align-items:flex-start;flex-direction:column}.maintenance-status-card em{text-align:left}.repair-showcase-grid{grid-template-columns:1fr}.repair-showcase-card:first-child .repair-media{aspect-ratio:16/10}}

/* === UPDATE SETTINGS -> FRONTEND + ICON CONTACT SHAKE === */
.container,.header-inner{width:min(var(--container-w,96%),1440px)}
.site-bg{background:radial-gradient(circle at 18% 20%,color-mix(in srgb,var(--blue) 18%,transparent),transparent 24%),radial-gradient(circle at 85% 14%,rgba(255,157,0,.12),transparent 18%),linear-gradient(135deg,var(--bg) 0%,#04142c 45%,var(--bg) 100%)}
.btn-primary,.mini-chat-toggle{background:linear-gradient(135deg,var(--orange),#ff7a00)}
.no-scroll-snap, .no-scroll-snap html{scroll-snap-type:none!important}.no-scroll-snap .snap-section{scroll-snap-align:none;min-height:auto}.no-glow *{box-shadow:none!important;text-shadow:none!important}.no-text-animation .hero-title span{animation:none!important;opacity:1!important;transform:none!important}
.floating-socials{position:fixed;left:14px;bottom:20px;z-index:1080;display:grid;gap:12px;align-items:start}.floating-socials .floating-social{position:relative;display:flex;align-items:center;gap:10px;width:58px;max-width:58px;height:58px;border-radius:22px;background:linear-gradient(145deg,rgba(4,18,42,.82),rgba(0,200,255,.10));border:1px solid rgba(0,200,255,.28);backdrop-filter:blur(18px);box-shadow:0 14px 34px rgba(0,0,0,.38),0 0 24px rgba(0,200,255,.14);overflow:hidden;transition:.34s var(--ease);animation:contactShake 2.6s ease-in-out infinite}.floating-socials .floating-social:nth-child(2){animation-delay:.25s}.floating-socials .floating-social:nth-child(3){animation-delay:.5s}.floating-socials .floating-social:nth-child(4){animation-delay:.75s}.floating-socials .floating-social:nth-child(5){animation-delay:1s}.floating-socials .floating-social:before{content:"";position:absolute;inset:-2px;border-radius:inherit;background:linear-gradient(120deg,transparent,rgba(0,200,255,.48),transparent);opacity:0;transition:.25s}.floating-socials .floating-social:hover{width:auto;max-width:230px;padding-right:16px;transform:translateX(8px) scale(1.03);border-color:rgba(0,200,255,.72);box-shadow:0 0 36px rgba(0,200,255,.28)}.floating-socials .floating-social:hover:before{opacity:.4}.floating-socials .floating-social span{position:relative;z-index:1;width:58px;height:58px;min-width:58px;display:grid;place-items:center;background:rgba(255,255,255,.05);border-radius:20px;overflow:hidden}.floating-socials .floating-social img{width:44px;height:44px;object-fit:contain;filter:drop-shadow(0 0 10px rgba(255,255,255,.20))}.floating-socials .floating-email img{width:48px;height:48px}.floating-socials .floating-phone img{width:46px;height:46px}.floating-socials .floating-social em{position:relative;z-index:1;font-style:normal;white-space:nowrap;color:#fff;font-weight:900;font-size:14px;letter-spacing:.02em;text-shadow:0 0 12px rgba(0,200,255,.45)}@keyframes contactShake{0%,72%,100%{transform:translate3d(0,0,0) rotate(0)}76%{transform:translate3d(1px,-1px,0) rotate(-3deg)}80%{transform:translate3d(-1px,1px,0) rotate(3deg)}84%{transform:translate3d(1px,1px,0) rotate(-2deg)}88%{transform:translate3d(0,0,0) rotate(0)}}
@media(max-width:700px){.floating-socials{left:8px;bottom:10px;gap:8px}.floating-socials .floating-social{width:50px;max-width:50px;height:50px;border-radius:18px}.floating-socials .floating-social span{width:50px;height:50px;min-width:50px;border-radius:16px}.floating-socials .floating-social img{width:38px;height:38px}.floating-socials .floating-social:hover{max-width:190px}.mini-chat{right:10px;bottom:74px}}


/* Blog khách hàng / trải nghiệm thực tế */
.blog-hero{min-height:66vh;display:flex;align-items:center}.blog-hero-card{padding:34px;border-radius:var(--radius);background:linear-gradient(135deg,rgba(0,200,255,.16),rgba(255,157,0,.08));border:1px solid rgba(0,200,255,.28);box-shadow:0 0 42px rgba(0,200,255,.14)}.blog-hero-card b{display:block;color:var(--blue);letter-spacing:.18em;text-transform:uppercase;margin-bottom:12px}.blog-hero-card span{font-size:44px;font-weight:900;color:#fff}.blog-hero-card p{color:#bdefff}.blog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.blog-card,.blog-detail-card,.related-blog,.alert-card,.blog-mini-card{background:linear-gradient(145deg,rgba(4,14,32,.88),rgba(2,8,23,.74));border:1px solid rgba(0,200,255,.18);border-radius:28px;box-shadow:0 24px 80px rgba(0,0,0,.35),0 0 35px rgba(0,200,255,.08);overflow:hidden}.blog-card:hover{transform:translateY(-8px);border-color:rgba(0,200,255,.55);box-shadow:0 28px 100px rgba(0,200,255,.16)}.blog-cover{display:block;position:relative;height:260px;overflow:hidden}.blog-cover img,.blog-detail-cover img,.blog-mini-image img,.related-blog img{width:100%;height:100%;object-fit:cover;display:block}.blog-cover span,.blog-detail-cover span{position:absolute;left:18px;bottom:18px;padding:8px 12px;border-radius:999px;background:rgba(0,8,20,.7);border:1px solid rgba(0,200,255,.35);color:#e9fbff;font-size:13px}.blog-body{padding:22px}.blog-meta{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:12px}.blog-meta em{font-style:normal;color:#9eeeff;background:rgba(0,200,255,.09);border:1px solid rgba(0,200,255,.16);padding:7px 10px;border-radius:999px;font-size:12px}.blog-card h2{font-size:22px;line-height:1.25;margin:0 0 10px}.blog-card a,.blog-mini-card a{color:#fff;text-decoration:none}.blog-card a:hover,.blog-mini-card a:hover{color:var(--blue)}.blog-card p,.blog-mini-card p{color:#b7d7e8}.customer-line{display:flex;justify-content:space-between;gap:10px;border-top:1px solid rgba(255,255,255,.08);padding-top:14px;margin-top:14px;color:#dff7ff}.customer-line span{color:#8cb8ce}.read-more{display:inline-flex;margin-top:16px;color:var(--blue)!important;font-weight:800}.blog-detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:26px;align-items:start}.blog-detail-card{display:grid;grid-template-columns:42% 1fr}.blog-detail-cover{position:relative;min-height:520px}.blog-detail-content{padding:34px}.blog-detail-content h1{font-size:clamp(32px,4vw,58px);line-height:1.05;margin:8px 0 18px;background:linear-gradient(90deg,#fff,var(--blue));-webkit-background-clip:text;color:transparent}.blog-meta.big em{font-size:13px}.lead{font-size:18px;color:#d7f5ff}.blog-detail-content blockquote{margin:24px 0;padding:22px;border-left:4px solid var(--orange);background:rgba(255,157,0,.08);border-radius:18px;color:#fff;font-weight:700}.rich-content{color:#ccecff;line-height:1.75}.rich-content h2,.rich-content h3{color:#fff}.blog-video-box{margin-top:22px;border-radius:22px;overflow:hidden;border:1px solid rgba(0,200,255,.24)}.blog-video-box video{width:100%;display:block;background:#000}.related-blog{padding:22px;position:sticky;top:110px}.related-blog h3{margin-top:0}.related-blog a{display:grid;grid-template-columns:82px 1fr;gap:12px;align-items:center;color:#eafcff;text-decoration:none;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.08)}.related-blog img{height:64px;border-radius:14px}.blog-preview-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.blog-mini-card{padding:14px;display:grid;grid-template-columns:135px 1fr;gap:16px;align-items:center}.blog-mini-image{height:108px;border-radius:20px;overflow:hidden}.blog-mini-card span{font-size:12px;color:#9eeeff}.blog-mini-card h3{font-size:18px;margin:8px 0}.alert-card{padding:24px;margin-bottom:24px}.optimizer-note{color:#9eeeff}
@media (max-width:1024px){.blog-grid,.blog-preview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.blog-detail-layout{grid-template-columns:1fr}.related-blog{position:relative;top:0}.blog-detail-card{grid-template-columns:1fr}.blog-detail-cover{min-height:360px}}@media (max-width:680px){.blog-grid,.blog-preview-grid{grid-template-columns:1fr}.blog-mini-card{grid-template-columns:1fr}.blog-mini-image{height:190px}.blog-detail-content{padding:22px}.blog-cover{height:220px}.customer-line{display:block}.blog-detail-cover{min-height:280px}}


/* Customer Reviews - IQ200 UX */
.customer-review-section{position:relative;overflow:hidden}.customer-review-section:before{content:"";position:absolute;inset:8% auto auto -120px;width:320px;height:320px;border-radius:999px;background:radial-gradient(circle,rgba(0,200,255,.22),transparent 62%);filter:blur(12px);pointer-events:none}.review-layout{display:grid;grid-template-columns:1.1fr .9fr;gap:24px;align-items:start}.review-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.review-card{background:linear-gradient(145deg,rgba(5,14,31,.82),rgba(9,30,58,.54));border:1px solid rgba(0,200,255,.2);box-shadow:0 18px 70px rgba(0,200,255,.1),inset 0 0 28px rgba(255,255,255,.025);border-radius:var(--radius);padding:18px;backdrop-filter:blur(14px);transition:.35s cubic-bezier(.2,.8,.2,1)}.review-card:hover{transform:translateY(-6px);border-color:rgba(0,200,255,.72);box-shadow:0 22px 80px rgba(0,200,255,.18)}.review-top{display:flex;align-items:center;gap:12px;margin-bottom:12px}.review-top img,.review-avatar{width:52px;height:52px;border-radius:18px;object-fit:cover;background:linear-gradient(135deg,#00c8ff,#ff9d00);display:grid;place-items:center;color:#001020;font-weight:900;font-size:22px;box-shadow:0 0 24px rgba(0,200,255,.3)}.review-top h3{margin:0;color:#fff;font-size:16px}.review-top small{color:#9bdff2}.review-top b{margin-left:auto;font-size:13px;white-space:nowrap}.review-card p{color:#d8f6ff;line-height:1.65}.review-form{background:rgba(3,12,27,.72);border:1px solid rgba(0,200,255,.28);box-shadow:0 28px 90px rgba(0,0,0,.34),0 0 50px rgba(0,200,255,.12);border-radius:var(--radius);padding:24px;backdrop-filter:blur(18px)}.review-form input[type=file]{padding:12px;border:1px dashed rgba(0,200,255,.35);background:rgba(0,0,0,.22)}.empty-review{grid-column:1/-1}.floating-social{animation:contactShake 2.35s infinite ease-in-out}.floating-social:nth-child(2){animation-delay:.18s}.floating-social:nth-child(3){animation-delay:.36s}.floating-social:nth-child(4){animation-delay:.54s}.floating-social:nth-child(5){animation-delay:.72s}@keyframes contactShake{0%,82%,100%{transform:translate3d(0,0,0) rotate(0)}86%{transform:translate3d(3px,0,0) rotate(3deg)}90%{transform:translate3d(-3px,0,0) rotate(-3deg)}94%{transform:translate3d(2px,0,0) rotate(2deg)}98%{transform:translate3d(-1px,0,0) rotate(-1deg)}}@media(max-width:980px){.review-layout{grid-template-columns:1fr}.review-list{grid-template-columns:1fr 1fr}}@media(max-width:620px){.review-list{grid-template-columns:1fr}.review-form{padding:18px}.review-top{align-items:flex-start}.review-top b{display:block;margin-left:0}}

body.has-modal-open .mini-chat, body.has-modal-open .floating-socials, body.has-modal-open .to-top{opacity:0;pointer-events:none}


/* Review popup modal - premium nổi bật */
.review-backdrop{position:fixed;inset:0;z-index:2000;background:rgba(0,0,0,.68);backdrop-filter:blur(12px);opacity:0;visibility:hidden;transition:.35s var(--ease)}
.review-backdrop.show{opacity:1;visibility:visible}.review-modal{position:fixed;inset:0;z-index:2006;display:grid;place-items:center;padding:18px;opacity:0;visibility:hidden;pointer-events:none;transition:.35s var(--ease)}.review-modal.show{opacity:1;visibility:visible;pointer-events:auto}.review-modal-panel{position:relative;width:min(820px,96vw);max-height:92vh;overflow:auto;border-radius:36px;padding:30px;background:linear-gradient(145deg,rgba(5,13,28,.96),rgba(23,30,40,.92) 48%,rgba(20,52,72,.82));border:1px solid rgba(255,157,0,.32);box-shadow:0 34px 100px rgba(0,0,0,.58),0 0 68px rgba(255,157,0,.18),inset 0 0 0 1px rgba(255,255,255,.05);transform:translateY(18px) scale(.94);transition:.45s var(--ease)}.review-modal.show .review-modal-panel{transform:translateY(0) scale(1);animation:modalPulse .6s var(--ease)}.review-modal-head h2{font-size:clamp(28px,4vw,46px);line-height:1.06;margin:14px 0 8px}.review-modal-head p{color:#bfd6e8;margin-bottom:18px}.review-cta-card{position:relative;padding:28px;border-radius:var(--radius);border:1px solid rgba(255,157,0,.22);background:linear-gradient(145deg,rgba(5,14,31,.82),rgba(255,157,0,.08));box-shadow:0 25px 90px rgba(0,0,0,.35),0 0 48px rgba(255,157,0,.11);overflow:hidden}.review-cta-card:before{content:"";position:absolute;inset:-1px;background:linear-gradient(120deg,transparent,rgba(255,157,0,.22),transparent);transform:translateX(-120%);animation:scan 4.5s linear infinite}.review-cta-card>*{position:relative}.review-cta-card p{color:#c8deec;margin:14px 0 18px}.review-score-preview{padding:18px;border-radius:24px;background:rgba(0,0,0,.24);border:1px solid rgba(255,157,0,.18);display:grid;gap:4px;margin-bottom:18px}.review-score-preview b{font-size:48px;color:#fff}.review-score-preview span{color:#ffb23f;letter-spacing:3px}.review-score-preview small{color:#9fc6d8}.review-modal .review-form{background:transparent;border:0;box-shadow:none;padding:0;border-radius:0}

/* Zalo-like chat UX */
.zalo-chat{position:fixed;right:18px;bottom:82px;z-index:981}.zalo-chat .mini-chat-toggle{height:54px;border-radius:18px;padding:0 18px;background:linear-gradient(135deg,#00b2ff,#005cff);box-shadow:0 18px 38px rgba(0,120,255,.28);animation:chatPulse 2.4s ease-in-out infinite}.zalo-chat-panel{position:absolute!important;right:0!important;bottom:66px!important;width:min(390px,calc(100vw - 24px))!important;height:min(680px,calc(100vh - 105px));display:flex!important;flex-direction:column;gap:0!important;padding:0!important;border-radius:22px!important;overflow:hidden;background:#fff!important;color:#101828!important;border:1px solid rgba(0,0,0,.08)!important;box-shadow:0 24px 90px rgba(0,0,0,.34)!important;transform:translateY(20px) scale(.96);opacity:0;visibility:hidden;pointer-events:none;transition:.28s var(--ease)}.zalo-chat.open .zalo-chat-panel{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0) scale(1)}.zalo-chat-head{height:58px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 12px;background:#fff;border-bottom:1px solid #eef2f7}.zalo-user{display:flex;align-items:center;gap:9px;min-width:0}.zalo-user img{width:38px;height:38px;border-radius:50%;background:#fff;object-fit:cover;border:1px solid #e5e7eb}.zalo-user b{display:block;max-width:165px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#111827;font-size:14px}.zalo-user small{display:flex;align-items:center;gap:4px;color:#667085;font-size:12px;line-height:1}.zalo-user small i{width:8px;height:8px;border-radius:50%;background:#12b76a;display:inline-block}.zalo-actions{display:flex;gap:6px}.zalo-actions button{width:28px;height:28px;border-radius:50%;background:#f2f4f7;color:#7a00ff;font-weight:900}.zalo-actions button:hover{background:#ede7ff}.zalo-chat-body{flex:1;overflow:auto;padding:14px 12px;background:linear-gradient(180deg,#fff,#f7f8fb);display:flex;flex-direction:column;gap:8px}.chat-date{align-self:center;font-size:12px;color:#667085;margin:4px 0}.chat-bubble{display:flex;max-width:82%;font-size:14px;line-height:1.45}.chat-bubble span{padding:10px 12px;border-radius:18px;box-shadow:0 2px 10px rgba(16,24,40,.06)}.chat-bubble.support{align-self:flex-start}.chat-bubble.support span{background:#eef2f7;color:#101828;border-bottom-left-radius:6px}.chat-bubble.me{align-self:flex-end}.chat-bubble.me span{background:linear-gradient(135deg,#4c6fff,#174bff);color:#fff;border-bottom-right-radius:6px}.chat-bubble.error span{background:#fff0ed;color:#b42318}.zalo-quick-replies{display:flex;gap:8px;padding:8px 10px;overflow-x:auto;background:#fff;border-top:1px solid #eef2f7}.zalo-quick-replies button{white-space:nowrap;border-radius:999px;padding:7px 10px;background:#f2f4f7;color:#344054;font-size:12px}.zalo-quick-replies button:hover{background:#e8f2ff;color:#005cff}.zalo-info-row{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:9px 10px;background:#fff;border-top:1px solid #eef2f7}.zalo-info-row input{height:38px;border:1px solid #d0d5dd!important;border-radius:14px!important;background:#fff!important;color:#101828!important;padding:0 11px!important}.zalo-info-row input[name=email]{grid-column:1/-1}.zalo-input-bar{display:flex;align-items:flex-end;gap:8px;padding:10px;background:#fff;border-top:1px solid #eef2f7}.zalo-input-bar textarea{flex:1;min-height:42px;max-height:92px;resize:none;border:0!important;outline:0!important;background:#f2f4f7!important;border-radius:18px!important;color:#101828!important;padding:11px 13px!important}.zalo-tool,.zalo-send{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;font-weight:900}.zalo-tool{background:#f2f4f7;color:#1479ff}.zalo-send{background:#1479ff;color:#fff;box-shadow:0 8px 24px rgba(20,121,255,.28)}@keyframes chatPulse{0%,100%{transform:translateY(0);box-shadow:0 18px 38px rgba(0,120,255,.28)}50%{transform:translateY(-3px);box-shadow:0 22px 46px rgba(0,120,255,.42)}}@media(max-width:700px){.zalo-chat{right:10px;bottom:70px}.zalo-chat-panel{width:calc(100vw - 20px)!important;height:min(620px,calc(100vh - 95px))}.zalo-info-row{grid-template-columns:1fr}.zalo-user b{max-width:140px}}

/* === IQ200 Paper Layer Scroll: lớp dưới mờ, lớp hiện tại rõ, section dài cuộn hết rồi mới qua section kế === */
@media (min-width: 900px){
  html{scroll-snap-type:y proximity}
  body.paper-scroll .site-main{position:relative;z-index:2}
  body.paper-scroll .site-main > section{
    position:sticky;
    top:0;
    min-height:100svh;
    height:auto;
    scroll-snap-align:start;
    scroll-snap-stop:normal;
    overflow:visible;
    border-radius:38px 38px 0 0;
    box-shadow:0 -18px 70px rgba(0,0,0,.36),0 -1px 0 rgba(255,255,255,.05),0 0 42px rgba(255,157,0,.08);
    transform-origin:top center;
    isolation:isolate;
    transition:filter .45s var(--ease), opacity .45s var(--ease), transform .45s var(--ease), box-shadow .45s var(--ease);
    background-clip:padding-box;
  }
  body.paper-scroll .site-main > section:after{content:"";position:absolute;left:2%;right:2%;top:0;height:1px;background:linear-gradient(90deg,transparent,rgba(228,234,240,.44),rgba(255,157,0,.42),transparent);pointer-events:none;z-index:5}
  body.paper-scroll .site-main > section.paper-past{filter:blur(2.2px) brightness(.48) saturate(.72);opacity:.46;transform:scale(.986) translateY(-12px);pointer-events:none}
  body.paper-scroll .site-main > section.paper-active{filter:none;opacity:1;transform:none;box-shadow:0 -20px 80px rgba(0,0,0,.42),0 0 58px rgba(255,157,0,.13),0 0 38px rgba(0,200,255,.08)}
  body.paper-scroll .site-main > section.paper-next{filter:brightness(.92);opacity:.96}
  body.paper-scroll .site-main > section:nth-child(1){z-index:1}
  body.paper-scroll .site-main > section:nth-child(2){z-index:2}
  body.paper-scroll .site-main > section:nth-child(3){z-index:3}
  body.paper-scroll .site-main > section:nth-child(4){z-index:4}
  body.paper-scroll .site-main > section:nth-child(5){z-index:5}
  body.paper-scroll .site-main > section:nth-child(6){z-index:6}
  body.paper-scroll .site-main > section:nth-child(7){z-index:7}
  body.paper-scroll .site-main > section:nth-child(8){z-index:8}
  body.paper-scroll .section-pad{padding-top:125px;padding-bottom:125px}
  body.paper-scroll .snap-section{overflow:visible}
}
@media (max-width: 899px){
  html{scroll-snap-type:y proximity}
  .snap-section{min-height:auto;overflow:visible}
}


/* === FIX IQ200: lớp hiện tại luôn rõ, lớp dưới mờ nhẹ, không làm mờ toàn trang === */
@media (min-width:900px){
  body.paper-scroll .site-main > section{background-color:rgba(2,8,23,.94)}
  body.paper-scroll .site-main > section.paper-active{filter:none!important;opacity:1!important;transform:none!important;backdrop-filter:none!important;z-index:50!important}
  body.paper-scroll .site-main > section.paper-active .container,
  body.paper-scroll .site-main > section.paper-active .reveal,
  body.paper-scroll .site-main > section.paper-active .hero-copy,
  body.paper-scroll .site-main > section.paper-active .hero-visual{filter:none!important;opacity:1!important}
  body.paper-scroll .site-main > section.paper-past{filter:blur(1.4px) brightness(.58) saturate(.75);opacity:.30;transform:scale(.992) translateY(-8px)}
  body.paper-scroll .site-main > section.paper-next{filter:none;opacity:1;transform:none}
  body.paper-scroll .site-main > section.paper-active:after{opacity:1}
}


/* === IQ200 FIX V2: xếp lớp đúng chiều, section hiện tại rõ, lớp dưới mờ; section dài cuộn hết mới qua section kế === */
@media (min-width:900px){
  body.paper-scroll .site-main > section{position:sticky;top:0;min-height:100svh;height:auto;overflow:visible;filter:none;opacity:1;transform:none;will-change:filter,transform,opacity;transition:filter .38s var(--ease),opacity .38s var(--ease),transform .38s var(--ease),box-shadow .38s var(--ease)}
  body.paper-scroll .site-main > section.paper-active{z-index:300!important;filter:none!important;opacity:1!important;transform:none!important;pointer-events:auto!important;box-shadow:0 -22px 90px rgba(0,0,0,.48),0 0 55px rgba(0,200,255,.10)!important}
  body.paper-scroll .site-main > section.paper-behind{filter:blur(calc(.75px + var(--paper-distance,1)*.35px)) brightness(calc(.84 - var(--paper-distance,1)*.035)) saturate(.82)!important;opacity:calc(.82 - var(--paper-distance,1)*.08);pointer-events:none}
  body.paper-scroll .site-main > section.paper-past{transform:scale(calc(1 - var(--paper-distance,1)*.004)) translateY(calc(var(--paper-distance,1)*-8px))}
  body.paper-scroll .site-main > section.paper-next{transform:scale(calc(1 - var(--paper-distance,1)*.003)) translateY(calc(var(--paper-distance,1)*8px))}
  body.paper-scroll.paper-dir-up .site-main > section.paper-past{transform:scale(calc(1 - var(--paper-distance,1)*.003)) translateY(calc(var(--paper-distance,1)*8px))}
  body.paper-scroll.paper-dir-up .site-main > section.paper-next{transform:scale(calc(1 - var(--paper-distance,1)*.004)) translateY(calc(var(--paper-distance,1)*-8px))}
  body.paper-scroll .site-main > section.paper-active .container,
  body.paper-scroll .site-main > section.paper-active .reveal,
  body.paper-scroll .site-main > section.paper-active .hero-copy,
  body.paper-scroll .site-main > section.paper-active .hero-visual{filter:none!important;opacity:1!important}
}
.message-bubble{position:relative}.message-tools{position:absolute;top:-12px;right:10px;display:flex;gap:6px;opacity:0;transform:translateY(4px);transition:.22s}.admin-message-row:hover .message-tools{opacity:1;transform:none}.message-tools button{width:28px;height:28px;border-radius:10px;border:1px solid rgba(0,200,255,.25);background:rgba(2,8,23,.86);color:#eafcff;box-shadow:0 8px 24px rgba(0,0,0,.28)}.message-tools button:hover{background:#00c8ff;color:#02101f}.message-edited{font-style:normal;opacity:.72;margin-left:6px}.admin-message-row.is-admin .message-tools button{background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.24);color:#fff}.admin-message-row.is-admin .message-tools button:hover{background:#fff;color:#172554}


/* === FINAL IQ200 SCROLL FIX: không mờ lớp đang xem, không giật, section dài cuộn hết mới qua section kế === */
@media (min-width:900px){
  html{scroll-snap-type:none!important;scroll-behavior:smooth!important}
  body.paper-scroll .site-main{position:relative;z-index:2;overflow:visible!important}
  body.paper-scroll .site-main > section,
  body.paper-scroll .snap-section{
    position:sticky!important;
    top:0!important;
    min-height:100svh!important;
    height:auto!important;
    overflow:visible!important;
    scroll-snap-align:none!important;
    scroll-snap-stop:normal!important;
    border-radius:38px 38px 0 0;
    background-color:rgba(2,8,23,.965)!important;
    isolation:isolate;
    transform-origin:top center;
    transition:box-shadow .18s ease, opacity .18s ease!important;
  }
  body.paper-scroll .site-main > section.paper-active{
    z-index:900!important;
    filter:none!important;
    opacity:1!important;
    transform:none!important;
    pointer-events:auto!important;
    box-shadow:0 -20px 85px rgba(0,0,0,.42),0 0 46px rgba(0,200,255,.10),0 0 42px rgba(255,157,0,.08)!important;
  }
  body.paper-scroll .site-main > section.paper-active *,
  body.paper-scroll .site-main > section.paper-active .container,
  body.paper-scroll .site-main > section.paper-active .reveal,
  body.paper-scroll .site-main > section.paper-active .hero-copy,
  body.paper-scroll .site-main > section.paper-active .hero-visual{
    filter:none!important;
  }
  body.paper-scroll .site-main > section.paper-active .reveal.visible,
  body.paper-scroll .site-main > section.paper-active .reveal{
    opacity:1!important;
  }
  body.paper-scroll .site-main > section.paper-past{
    filter:brightness(.52) saturate(.82)!important;
    opacity:.42!important;
    transform:none!important;
    pointer-events:none!important;
  }
  body.paper-scroll .site-main > section.paper-next{
    filter:none!important;
    opacity:1!important;
    transform:none!important;
    pointer-events:none!important;
  }
  body.paper-scroll .site-main > section.paper-behind{
    backdrop-filter:none!important;
  }
  body.paper-scroll .site-main > section:before{
    content:"";
    position:absolute;
    inset:0;
    border-radius:inherit;
    pointer-events:none;
    opacity:0;
    background:rgba(0,0,0,.28);
    transition:opacity .18s ease;
    z-index:1;
  }
  body.paper-scroll .site-main > section.paper-past:before{opacity:.28}
  body.paper-scroll .site-main > section.paper-active:before,
  body.paper-scroll .site-main > section.paper-next:before{opacity:0!important}
  body.paper-scroll .site-main > section > *{position:relative;z-index:2}
  body.paper-scroll .hero-section,
  body.paper-scroll .service-section,
  body.paper-scroll .price-section,
  body.paper-scroll .why-section,
  body.paper-scroll .process-section{
    overflow:visible!important;
  }
}
@media (max-width:899px){
  html{scroll-snap-type:none!important}
  .snap-section{min-height:auto!important;overflow:visible!important;scroll-snap-align:none!important}
}

/* === FINAL FIX IQ200 2026-07-01: current section never dim, buttons clickable, stable paper scroll === */
@media (min-width:900px){
  html{scroll-snap-type:none!important;scroll-behavior:smooth!important}
  body.paper-scroll .site-main{overflow:visible!important;position:relative!important}
  body.paper-scroll .site-main > section,
  body.paper-scroll .snap-section{
    position:sticky!important;
    top:0!important;
    min-height:100svh!important;
    height:auto!important;
    overflow:visible!important;
    scroll-snap-align:none!important;
    transform:none!important;
    transition:box-shadow .16s ease!important;
    background-color:rgba(2,8,23,.985)!important;
    filter:none!important;
    opacity:1!important;
  }
  body.paper-scroll .site-main > section.paper-active,
  body.paper-scroll .site-main > section.paper-active *,
  body.paper-scroll .site-main > section.paper-active .reveal,
  body.paper-scroll .site-main > section.paper-active .container{
    filter:none!important;
    opacity:1!important;
    transform:none!important;
    pointer-events:auto!important;
  }
  body.paper-scroll .site-main > section.paper-active{
    z-index:900!important;
    box-shadow:0 -18px 80px rgba(0,0,0,.42),0 0 42px rgba(0,200,255,.10),0 0 35px rgba(255,157,0,.07)!important;
  }
  body.paper-scroll .site-main > section.paper-past,
  body.paper-scroll .site-main > section.paper-next,
  body.paper-scroll .site-main > section.paper-behind{
    filter:none!important;
    opacity:1!important;
    transform:none!important;
  }
  body.paper-scroll .site-main > section:before{display:none!important;content:none!important}
  body.paper-scroll .site-main > section:after{pointer-events:none!important}
}
@media (max-width:899px){
  html{scroll-snap-type:none!important}
  .snap-section{min-height:auto!important;overflow:visible!important;scroll-snap-align:none!important}
}


/* === IQ200 HARD FIX: mỗi section phải cuộn hết nội dung rồi mới tới section kế tiếp === */
html{scroll-snap-type:none!important;scroll-behavior:smooth!important;overflow-x:hidden!important}
body.paper-scroll.paper-normal-flow .site-main{display:block!important;position:relative!important;overflow:visible!important;isolation:isolate!important}
body.paper-scroll.paper-normal-flow .site-main > section,
body.paper-scroll.paper-normal-flow .snap-section{
  position:relative!important;
  top:auto!important;
  left:auto!important;
  right:auto!important;
  bottom:auto!important;
  z-index:auto!important;
  min-height:auto!important;
  height:auto!important;
  overflow:visible!important;
  scroll-snap-align:none!important;
  scroll-snap-stop:normal!important;
  transform:none!important;
  filter:none!important;
  opacity:1!important;
  pointer-events:auto!important;
  margin-top:0!important;
  transition:box-shadow .22s ease,border-color .22s ease!important;
  contain:layout paint;
}
body.paper-scroll.paper-normal-flow .site-main > section *,
body.paper-scroll.paper-normal-flow .site-main > section .container,
body.paper-scroll.paper-normal-flow .site-main > section .reveal,
body.paper-scroll.paper-normal-flow .site-main > section .hero-copy,
body.paper-scroll.paper-normal-flow .site-main > section .hero-visual{
  filter:none!important;
  opacity:1!important;
  pointer-events:auto!important;
}
body.paper-scroll.paper-normal-flow .site-main > section:before{
  display:none!important;
  content:none!important;
}
body.paper-scroll.paper-normal-flow .site-main > section:after{
  pointer-events:none!important;
}
body.paper-scroll.paper-normal-flow .hero-section{
  min-height:100svh!important;
  padding-top:128px!important;
  padding-bottom:90px!important;
}
body.paper-scroll.paper-normal-flow .section-pad{
  padding-top:125px!important;
  padding-bottom:125px!important;
}
body.paper-scroll.paper-normal-flow .price-section,
body.paper-scroll.paper-normal-flow .service-section,
body.paper-scroll.paper-normal-flow .why-section,
body.paper-scroll.paper-normal-flow .process-section,
body.paper-scroll.paper-normal-flow .brand-section,
body.paper-scroll.paper-normal-flow .customer-review-section,
body.paper-scroll.paper-normal-flow .contact-cta-section{
  border-top:1px solid rgba(0,200,255,.10);
  box-shadow:0 -12px 45px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.025);
}
body.paper-scroll.paper-normal-flow .pricing-grid,
body.paper-scroll.paper-normal-flow .service-grid,
body.paper-scroll.paper-normal-flow .why-grid,
body.paper-scroll.paper-normal-flow .process-line,
body.paper-scroll.paper-normal-flow .repair-showcase-grid,
body.paper-scroll.paper-normal-flow .review-layout{
  position:relative!important;
  z-index:3!important;
}
@media (max-width:899px){
  body.paper-scroll.paper-normal-flow .hero-section{min-height:auto!important;padding-top:110px!important;padding-bottom:70px!important}
  body.paper-scroll.paper-normal-flow .section-pad{padding-top:86px!important;padding-bottom:86px!important}
}


/* === IQ200 FIX REVIEW MODAL + MOBILE MENU 2026-07-01 ===
   Nguyên nhân: review-modal là <section> trong <main> nên bị selector paper-scroll áp style section thường.
   Fix: ép review modal fixed viewport và loại bỏ hiệu ứng section. Drawer phải nằm cao hơn backdrop. */
.drawer-backdrop{z-index:1900!important}
.mobile-drawer{z-index:1910!important;pointer-events:auto!important;filter:none!important;opacity:1!important}
.mobile-drawer.show{visibility:visible!important;opacity:1!important;pointer-events:auto!important;transform:translateX(0)!important}
.mobile-drawer *{pointer-events:auto!important;filter:none!important;opacity:1!important}
.review-backdrop{position:fixed!important;inset:0!important;z-index:2200!important;background:rgba(0,0,0,.68)!important;backdrop-filter:blur(12px)!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important;transition:.35s var(--ease)!important}
.review-backdrop.show{opacity:1!important;visibility:visible!important;pointer-events:auto!important}
body.paper-scroll.paper-normal-flow .site-main > section.review-modal,
body.paper-scroll .site-main > section.review-modal,
.review-modal{position:fixed!important;inset:0!important;top:0!important;left:0!important;right:0!important;bottom:0!important;z-index:2210!important;display:grid!important;place-items:center!important;padding:18px!important;min-height:100dvh!important;height:100dvh!important;width:100vw!important;overflow:auto!important;background:transparent!important;border:0!important;box-shadow:none!important;contain:none!important;transform:none!important;filter:none!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important;scroll-snap-align:none!important;transition:.35s var(--ease)!important}
body.paper-scroll.paper-normal-flow .site-main > section.review-modal.show,
body.paper-scroll .site-main > section.review-modal.show,
.review-modal.show{opacity:1!important;visibility:visible!important;pointer-events:auto!important}
body.paper-scroll.paper-normal-flow .site-main > section.review-modal:before,
body.paper-scroll.paper-normal-flow .site-main > section.review-modal:after,
.review-modal:before,.review-modal:after{display:none!important;content:none!important}
.review-modal .review-modal-panel{position:relative!important;z-index:2212!important;pointer-events:auto!important;filter:none!important;opacity:1!important;transform:translateY(18px) scale(.94)!important}
.review-modal.show .review-modal-panel{transform:translateY(0) scale(1)!important}
body.has-modal-open .review-modal.show{display:grid!important}
body.has-modal-open .mini-chat,body.has-modal-open .floating-socials,body.has-modal-open .to-top{opacity:0;pointer-events:none}
@media(max-width:700px){.review-modal{align-items:start!important;padding:14px!important}.review-modal .review-modal-panel{margin:12px 0!important;width:100%!important}}


/* === FIX FEEDBACK / REVIEW MODAL / DRAWER / 404 - 20260701 === */
.review-backdrop{position:fixed!important;inset:0!important;z-index:5000!important;background:rgba(0,0,0,.68)!important;backdrop-filter:blur(12px)!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important;transition:.35s var(--ease)!important}
.review-backdrop.show{opacity:1!important;visibility:visible!important;pointer-events:auto!important}
.review-modal{position:fixed!important;inset:0!important;z-index:5010!important;display:grid!important;place-items:center!important;padding:18px!important;min-height:100dvh!important;height:100dvh!important;width:100vw!important;overflow:auto!important;background:transparent!important;border:0!important;box-shadow:none!important;contain:none!important;transform:none!important;filter:none!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important;scroll-snap-align:none!important;transition:.35s var(--ease)!important}
.review-modal.show{opacity:1!important;visibility:visible!important;pointer-events:auto!important}
.review-modal:before,.review-modal:after{display:none!important;content:none!important}
.review-modal .review-modal-panel{position:relative!important;z-index:5020!important;pointer-events:auto!important;filter:none!important;opacity:1!important;transform:translateY(18px) scale(.94)!important}
.review-modal.show .review-modal-panel{transform:translateY(0) scale(1)!important}
.drawer-backdrop{z-index:4400!important}.mobile-drawer{z-index:4410!important;pointer-events:auto!important;filter:none!important;opacity:1!important}.mobile-drawer.show{visibility:visible!important;opacity:1!important;pointer-events:auto!important;transform:translateX(0)!important}.mobile-drawer *{pointer-events:auto!important;filter:none!important;opacity:1!important}
.error404-screen{min-height:100vh;display:flex;align-items:center;padding:150px 0 80px;position:relative;overflow:hidden;background:radial-gradient(circle at 18% 20%,rgba(0,200,255,.18),transparent 24%),radial-gradient(circle at 82% 12%,rgba(255,157,0,.16),transparent 20%),linear-gradient(135deg,rgba(2,8,23,.98),rgba(7,18,38,.94))}.error404-screen:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(0,200,255,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(255,157,0,.05) 1px,transparent 1px);background-size:54px 54px;mask-image:radial-gradient(circle at center,#000 0%,transparent 76%);animation:circuitFlow 18s linear infinite}.error404-grid{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:center}.error404-card{padding:36px;border-radius:42px;background:linear-gradient(145deg,rgba(5,14,31,.84),rgba(13,33,62,.64));border:1px solid rgba(0,200,255,.28);box-shadow:0 34px 110px rgba(0,0,0,.46),0 0 70px rgba(0,200,255,.16);backdrop-filter:blur(20px)}.error404-card h1{font-size:clamp(46px,6vw,96px);line-height:.95;margin:18px 0;background:linear-gradient(90deg,#fff,#93eeff,#00c8ff);-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:0 0 26px rgba(0,200,255,.28)}.error404-card p{font-size:18px;color:#c7e8f5}.error404-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}.error404-visual{position:relative;min-height:430px;display:grid;place-items:center;border-radius:48px;background:linear-gradient(145deg,rgba(255,157,0,.10),rgba(0,200,255,.08));border:1px solid rgba(255,157,0,.22);box-shadow:inset 0 0 70px rgba(0,200,255,.08),0 26px 90px rgba(0,0,0,.36);overflow:hidden}.error404-visual:before{content:"";position:absolute;width:460px;height:460px;border-radius:50%;border:1px dashed rgba(0,200,255,.25);animation:spin 18s linear infinite}.error-code{font-size:clamp(95px,14vw,210px);font-weight:1000;letter-spacing:-.08em;color:rgba(255,255,255,.08);text-shadow:0 0 40px rgba(0,200,255,.28)}.error-chip{position:absolute;padding:10px 14px;border-radius:999px;background:rgba(3,14,32,.78);border:1px solid rgba(0,200,255,.28);box-shadow:0 0 28px rgba(0,200,255,.16);font-weight:900}.chip-a{left:8%;top:18%}.chip-b{right:8%;top:34%}.chip-c{left:17%;bottom:18%}@media(max-width:900px){.error404-grid{grid-template-columns:1fr}.error404-visual{min-height:320px}.error404-screen{padding-top:130px}}@media(max-width:620px){.error404-actions .btn{width:100%}.review-modal{align-items:start!important;padding:14px!important}.review-modal .review-modal-panel{margin:12px 0!important;width:100%!important}}


/* Discount badge per service - red/white shock effect */
.service-card{position:relative}
.service-discount-badge{position:absolute;left:14px;top:14px;z-index:6;display:inline-flex;align-items:center;gap:6px;padding:8px 13px;border-radius:999px;background:linear-gradient(135deg,#ff173d,#b60018);color:#fff;font-size:12px;font-weight:1000;letter-spacing:.08em;text-transform:uppercase;box-shadow:0 0 0 1px rgba(255,255,255,.16),0 0 24px rgba(255,0,40,.55),0 12px 30px rgba(0,0,0,.34);animation:discountShock 1.65s ease-in-out infinite}.service-discount-badge:before{content:"⚡";font-size:13px}.service-discount-badge:after{content:"";position:absolute;inset:-7px;border-radius:inherit;border:1px solid rgba(255,40,70,.54);opacity:.55;animation:discountRipple 1.65s ease-out infinite}@keyframes discountShock{0%,74%,100%{transform:translate3d(0,0,0) scale(1)}78%{transform:translate3d(2px,-1px,0) scale(1.045)}82%{transform:translate3d(-2px,1px,0) scale(.99)}86%{transform:translate3d(1px,0,0) scale(1.03)}}@keyframes discountRipple{0%{transform:scale(.92);opacity:.62}100%{transform:scale(1.28);opacity:0}}.field-hint{display:block;margin-top:6px;color:#8fdff5;font-size:12px;line-height:1.45}

.price-discount-badge{left:16px;top:16px}.pricing-card{position:relative}


/* === IQ200 Contact Menu - collapsed by default, hover/tap to show === */
.floating-contact-menu{position:fixed;left:16px;bottom:18px;z-index:1080;display:flex;align-items:flex-end;gap:12px;isolation:isolate}
.floating-contact-main{height:58px;min-width:58px;border-radius:22px;border:1px solid rgba(255,157,0,.48);background:linear-gradient(145deg,rgba(6,20,43,.92),rgba(255,157,0,.18));box-shadow:0 18px 42px rgba(0,0,0,.38),0 0 24px rgba(255,157,0,.18);color:#fff;display:flex;align-items:center;gap:10px;padding:0 16px 0 0;overflow:hidden;font-weight:1000;transition:.32s var(--ease);animation:contactPulse 2.8s ease-in-out infinite}
.floating-contact-main span{width:58px;height:58px;display:grid;place-items:center;border-radius:20px;color:#ffc45b;font-size:27px;background:rgba(255,157,0,.10)}
.floating-contact-main em{font-style:normal;white-space:nowrap;letter-spacing:.02em}
.floating-contact-menu .floating-socials{position:absolute;left:0;bottom:72px;display:grid!important;gap:10px;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(18px) scale(.94);transition:.32s var(--ease)}
.floating-contact-menu:hover .floating-socials,.floating-contact-menu.open .floating-socials,.floating-contact-menu:focus-within .floating-socials{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0) scale(1)}
.floating-contact-menu .floating-social{width:56px!important;max-width:56px!important;height:56px!important;border-radius:20px!important;display:flex!important;align-items:center!important;background:linear-gradient(145deg,rgba(4,18,42,.92),rgba(0,200,255,.12))!important;border:1px solid rgba(0,200,255,.28)!important;box-shadow:0 14px 34px rgba(0,0,0,.36),0 0 24px rgba(0,200,255,.12)!important;overflow:hidden;transition:.28s var(--ease);animation:contactShake 2.55s ease-in-out infinite}
.floating-contact-menu .floating-social:hover{width:auto!important;max-width:230px!important;padding-right:14px;transform:translateX(7px) scale(1.03);border-color:rgba(0,200,255,.72)!important}
.floating-contact-menu .floating-social span{width:56px!important;height:56px!important;min-width:56px!important;border-radius:18px!important;display:grid!important;place-items:center!important;background:rgba(255,255,255,.06)!important}
.floating-contact-menu .floating-social img{width:42px!important;height:42px!important;object-fit:contain!important}.floating-contact-menu .floating-social em{font-style:normal;color:#fff;font-weight:900;white-space:nowrap;text-shadow:0 0 12px rgba(0,200,255,.42)}
@keyframes contactPulse{0%,100%{box-shadow:0 18px 42px rgba(0,0,0,.38),0 0 18px rgba(255,157,0,.15)}50%{box-shadow:0 18px 42px rgba(0,0,0,.38),0 0 34px rgba(255,157,0,.32)}}
@media(max-width:700px){.floating-contact-menu{left:10px;bottom:10px}.floating-contact-main{height:52px;min-width:52px;border-radius:18px}.floating-contact-main span{width:52px;height:52px}.floating-contact-menu .floating-socials{bottom:64px}.floating-contact-menu .floating-social{width:50px!important;max-width:50px!important;height:50px!important}.floating-contact-menu .floating-social span{width:50px!important;height:50px!important;min-width:50px!important}.floating-contact-menu .floating-social img{width:38px!important;height:38px!important}}
/* warning toast for saved form but SMTP failed */
.toast.warning{border-color:rgba(255,157,0,.55);background:linear-gradient(135deg,rgba(255,157,0,.22),rgba(35,22,5,.94));box-shadow:0 0 32px rgba(255,157,0,.24)}


/* IQ200 form validation + toast always above modal/backdrop */
.toast-stack{top:22px!important;right:18px!important;z-index:99999!important;pointer-events:none!important;align-items:end!important}.toast{display:flex!important;align-items:flex-start!important;gap:10px!important;max-width:min(520px,calc(100vw - 28px))!important;pointer-events:auto!important;border-radius:18px!important;backdrop-filter:blur(18px)!important}.toast .toast-icon{display:inline-grid;place-items:center;min-width:24px;height:24px;border-radius:999px}.toast span{display:block;line-height:1.45}.toast.error{border-color:rgba(255,77,77,.78)!important;background:linear-gradient(135deg,rgba(255,60,60,.32),rgba(55,10,10,.96))!important;box-shadow:0 16px 46px rgba(255,60,60,.26),0 0 0 1px rgba(255,255,255,.04) inset!important}.toast.warning{border-color:rgba(255,157,0,.72)!important;background:linear-gradient(135deg,rgba(255,157,0,.28),rgba(42,24,4,.96))!important;box-shadow:0 16px 46px rgba(255,157,0,.24),0 0 0 1px rgba(255,255,255,.04) inset!important}.toast:not(.error):not(.warning){border-color:rgba(0,255,170,.56)!important;background:linear-gradient(135deg,rgba(0,200,255,.24),rgba(3,32,38,.96))!important}
.cyber-form label.field-invalid span{color:#ff7070!important;text-shadow:0 0 14px rgba(255,66,66,.28)}.cyber-form label.field-invalid input,.cyber-form label.field-invalid select,.cyber-form label.field-invalid textarea,.cyber-form .input-invalid{border-color:#ff4545!important;background:linear-gradient(135deg,rgba(255,40,40,.12),rgba(2,8,23,.82))!important;box-shadow:0 0 0 4px rgba(255,54,54,.13),0 0 28px rgba(255,50,50,.24)!important;animation:fieldShake .34s ease}.field-error-text{color:#ff8d8d!important;font-size:12px!important;font-weight:800!important;letter-spacing:.01em;display:block;margin-top:-2px}.cyber-form label.field-invalid select{color:#fff!important}.cyber-form label.field-invalid input::placeholder,.cyber-form label.field-invalid textarea::placeholder{color:#ffb3b3!important}@keyframes fieldShake{0%,100%{transform:translateX(0)}22%{transform:translateX(-5px)}45%{transform:translateX(5px)}68%{transform:translateX(-3px)}86%{transform:translateX(2px)}}
@media(max-width:700px){.toast-stack{top:12px!important;left:10px!important;right:10px!important}.toast{width:100%!important;min-width:0!important}}


/* =========================================================
   SMOOTH SCROLL PERFORMANCE FIX - 2026-07-02
   Mục tiêu: bỏ xung đột scroll-snap/sticky cũ, giảm repaint khi cuộn,
   giữ giao diện cyber premium nhưng ưu tiên FPS ổn định.
========================================================= */
html,
body{
  scroll-snap-type:none!important;
  overscroll-behavior-y:auto;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
html{scroll-behavior:auto!important;overflow-x:clip!important}
body{overflow-x:clip!important}
body.paper-scroll,
body.no-scroll-snap{scroll-snap-type:none!important}
.site-main{overflow:visible!important;contain:none!important}
.snap-section,
body.paper-scroll .snap-section,
body.paper-scroll .site-main > section,
body.paper-scroll.paper-normal-flow .site-main > section,
body.paper-scroll.paper-normal-flow .snap-section{
  position:relative!important;
  top:auto!important;
  left:auto!important;
  right:auto!important;
  bottom:auto!important;
  min-height:auto!important;
  height:auto!important;
  overflow:visible!important;
  scroll-snap-align:none!important;
  scroll-snap-stop:normal!important;
  transform:none!important;
  filter:none!important;
  opacity:1!important;
  contain:none!important;
  will-change:auto!important;
  backface-visibility:hidden;
  transition:border-color .22s ease, box-shadow .22s ease, background-color .22s ease!important;
}
.hero-section,
body.paper-scroll.paper-normal-flow .hero-section{min-height:100svh!important}
.section-pad,
body.paper-scroll.paper-normal-flow .section-pad{padding-top:112px!important;padding-bottom:112px!important}
@media(max-width:899px){
  .hero-section,
  body.paper-scroll.paper-normal-flow .hero-section{min-height:auto!important}
  .section-pad,
  body.paper-scroll.paper-normal-flow .section-pad{padding-top:78px!important;padding-bottom:78px!important}
}
body.paper-scroll .site-main > section:before,
body.paper-scroll.paper-normal-flow .site-main > section:before{display:none!important;content:none!important}
body.paper-scroll .site-main > section:after,
body.paper-scroll.paper-normal-flow .site-main > section:after{pointer-events:none!important}
body.paper-scroll .site-main > section *,
body.paper-scroll.paper-normal-flow .site-main > section *{
  filter:none!important;
}
/* Fixed glass blur phía trên màn hình là điểm rất dễ gây khựng khi cuộn.
   Giảm blur để vẫn đẹp nhưng ít repaint hơn. */
.header-inner{backdrop-filter:blur(8px)!important;-webkit-backdrop-filter:blur(8px)!important;will-change:transform}
.cyber-header{transform:translateZ(0);will-change:transform}
.cyber-header.is-scrolled .header-inner{box-shadow:0 12px 34px rgba(0,200,255,.13), inset 0 0 0 1px rgba(255,255,255,.04)!important}
.site-bg,.noise-layer{transform:translateZ(0);will-change:auto;contain:strict}
.service-card,.pricing-card,.why-card,.process-step,.repair-showcase-card,.blog-mini-card,.review-card,.contact-cta,.admin-panel,.stat-card{will-change:auto!important}
.slider-track{will-change:transform;transform:translate3d(0,0,0)}
.hero-visual img,.repair-media img,.repair-media video,.blog-mini-image img{transform:translateZ(0);backface-visibility:hidden}
/* Khi người dùng đang cuộn, tạm dừng animation phụ để tránh drop FPS. */
body.is-scrolling .visual-orbit,
body.is-scrolling .brand-track,
body.is-scrolling .floating-contact-main,
body.is-scrolling .floating-contact-menu .floating-social,
body.is-scrolling .floating-socials .floating-social,
body.is-scrolling .service-discount-badge,
body.is-scrolling .service-discount-badge:after,
body.is-scrolling .status-dot,
body.is-scrolling .maintenance-progress span,
body.is-scrolling .maintenance-status-card:before{
  animation-play-state:paused!important;
}
body.is-scrolling .btn:hover,
body.is-scrolling .service-card:hover,
body.is-scrolling .pricing-card:hover,
body.is-scrolling .repair-showcase-card:hover,
body.is-scrolling .floating-socials .floating-social:hover,
body.is-scrolling .floating-contact-menu .floating-social:hover{
  transform:none!important;
}
@media (prefers-reduced-motion: reduce){
  html{scroll-behavior:auto!important}
  *,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}
}
