:root{--bg:#e9eef2;--paper:#fff;--ink:#17324a;--ink-2:#4b6075;--line:#c9d3dc;--call:#ffc629;--zalo:#0068ff;--ok:#1f7a4d;--warn:#b4231a;--print:#000;--radius-s:6px;--radius-l:18px;--font:"Be Vietnam Pro",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;--mono:ui-monospace,"SF Mono",Menlo,Consolas,"Liberation Mono",monospace;box-sizing:border-box}*,:before,:after{box-sizing:inherit}html{scroll-behavior:smooth;scroll-padding-top:80px}body{background:var(--bg);color:var(--ink);font:400 17px/1.6 var(--font);-webkit-font-smoothing:antialiased;margin:0}h1,h2,h3{letter-spacing:-.015em;margin:0 0 .5em;line-height:1.15}h1{font-size:clamp(2.1rem,5.4vw,3.6rem);font-weight:800}h2{font-size:clamp(1.6rem,3.6vw,2.4rem);font-weight:800}h3{font-size:1.15rem;font-weight:600}p{max-width:62ch;margin:0 0 1em}a{color:inherit}img{max-width:100%;height:auto}:focus-visible{outline:3px solid var(--zalo);outline-offset:3px;border-radius:4px}.wrap{width:min(1120px,100% - 40px);margin-inline:auto}.narrow{width:min(760px,100% - 40px);margin-inline:auto}section{padding:72px 0}.muted{color:var(--ink-2)}.paper-bg{background:var(--paper)}.ink-bg{background:var(--ink);color:#fff}.ink-bg .muted{color:#b7c6d3}.demo{color:#5c4400;text-align:center;background:#fff1b8;padding:8px 20px;font-size:.9rem}.top{z-index:20;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--line);background:#e9eef2f0;position:sticky;top:0}.top .wrap{justify-content:space-between;align-items:center;gap:16px;height:64px;display:flex}.logo{align-items:center;gap:10px;font-size:1.2rem;font-weight:800;text-decoration:none;display:flex}.top nav{gap:20px;font-size:.95rem;display:flex}.top nav a{color:var(--ink-2);text-decoration:none}.top nav a:hover,.top nav a[aria-current]{color:var(--ink)}.crumbs{color:var(--ink-2);padding-top:24px;font-size:.9rem}.crumbs a{text-decoration:none}.crumbs a:hover{text-decoration:underline}.crumbs span{margin:0 6px}.btn{min-height:52px;font:600 1rem var(--font);cursor:pointer;border:0;border-radius:999px;justify-content:center;align-items:center;gap:9px;padding:0 22px;text-decoration:none;display:inline-flex}.btn-sm{min-height:42px;padding:0 16px}.btn-call{background:var(--call);color:var(--ink)}.btn-zalo{background:var(--zalo);color:#fff}.btn-ghost{color:inherit;background:0 0;border:2px solid}.btn:hover{filter:brightness(.95)}.btn svg{width:20px;height:20px}.btn[disabled]{opacity:.6;cursor:wait}.ctas{flex-wrap:wrap;gap:12px;margin:28px 0 22px;display:flex}.hero{padding:56px 0 80px}.hero .wrap{grid-template-columns:1.1fr .9fr;align-items:start;gap:56px;display:grid}.lead{color:var(--ink-2);max-width:46ch;font-size:1.2rem}.facts{color:var(--ink-2);flex-wrap:wrap;gap:8px 22px;margin:0;padding:0;font-size:.95rem;list-style:none;display:flex}.facts li{align-items:center;gap:8px;display:flex}.facts li:before{content:"";background:var(--ok);border-radius:50%;width:8px;height:8px}.page-head{padding:32px 0 40px}.page-head h1{font-size:clamp(1.9rem,4.4vw,3rem)}.printer{justify-self:center;width:100%;max-width:380px;position:relative}.slot{background:var(--ink);z-index:2;border-radius:12px 12px 4px 4px;height:26px;position:relative;box-shadow:0 6px 0 -2px #0c1f30}.slot:after{content:"";background:#0a1824;border-radius:3px;height:5px;position:absolute;bottom:-3px;left:18px;right:18px}.feed{margin:0 14px;padding-bottom:18px;overflow:hidden}.receipt{background:var(--paper);color:var(--print);font:400 14px/1.55 var(--mono);--z:10px;-webkit-mask:conic-gradient(from -45deg at bottom,#0000,#000 1deg 89deg,#0000 90deg) 50%/calc(2*var(--z)) 100%;-webkit-mask:conic-gradient(from -45deg at bottom,#0000,#000 1deg 89deg,#0000 90deg) 50%/calc(2*var(--z)) 100%;mask:conic-gradient(from -45deg at bottom,#0000,#000 1deg 89deg,#0000 90deg) 50%/calc(2*var(--z)) 100%;padding:22px 20px 30px;animation:1.6s cubic-bezier(.3,.7,.3,1) .2s both print}@keyframes print{0%{transform:translateY(-100%)}to{transform:none}}.receipt .c{text-align:center}.receipt .big{letter-spacing:.12em;font-size:20px;font-weight:700}.receipt hr{border:0;border-top:1px dashed #000;margin:12px 0}.row{align-items:baseline;gap:6px;text-decoration:none;display:flex}.row span:first-child{white-space:nowrap}.row i{border-bottom:1px dotted #000;flex:1;transform:translateY(-4px)}.row b{white-space:nowrap}a.row:hover span:first-child{text-decoration:underline}.hl{color:#fff;background:#000;padding:0 4px}.grid{gap:20px;display:grid}.g3{grid-template-columns:repeat(3,1fr)}.g2{grid-template-columns:repeat(2,1fr)}.card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-l);flex-direction:column;padding:26px;text-decoration:none;display:flex}a.card:hover{border-color:var(--ink)}.card.main{border:3px solid var(--ink)}.card h3{margin-bottom:.35em}.card p{margin-bottom:.8em}.card .more{margin-top:auto;font-weight:600}.tag{background:var(--ink);color:#fff;border-radius:999px;align-self:flex-start;margin-bottom:12px;padding:3px 12px;font-size:.8rem;font-weight:600}.spec{margin:0 0 18px;padding:0;font-size:.95rem;list-style:none}.spec li{border-bottom:1px solid var(--line);justify-content:space-between;gap:12px;padding:7px 0;display:flex}.spec li span:last-child{text-align:right;font-weight:600}.price{margin-top:auto;font-size:1.05rem}.price strong{font-size:1.35rem}.note{background:var(--paper);border:2px dashed var(--line);border-radius:var(--radius-l);padding:24px}.split{grid-template-columns:1fr 1fr;align-items:center;gap:48px;display:grid}.rolls{background:var(--paper);border-radius:var(--radius-l);border:1px solid var(--line);margin:0;padding:28px}.rolls svg{width:100%;height:auto;display:block}.rolls figcaption{color:var(--ink-2);margin-top:10px;font-size:.9rem}.big-stat{margin:.1em 0 .2em;font-size:clamp(3rem,8vw,5rem);font-weight:800;line-height:1}.calc-box{grid-template-columns:1fr 1fr;gap:32px;margin-top:32px;display:grid}.field{gap:6px;margin-bottom:18px;display:grid}.field label{font-size:.95rem;font-weight:600}.dark-field input,.dark-field select{font:600 1.15rem var(--font);border-radius:var(--radius-s);color:#fff;background:#0f2537;border:2px solid #3b5670;width:100%;padding:12px 14px}.dark-field input:focus,.dark-field select:focus{border-color:var(--call);outline:none}.result{border-radius:var(--radius-l);background:#0f2537;border:2px solid #3b5670;padding:26px}.result .num{color:var(--call);font-size:clamp(2rem,5vw,2.8rem);font-weight:800;line-height:1.1}.result p{margin:.4em 0 1em}.steps{counter-reset:s;grid-template-columns:repeat(3,1fr);gap:28px;margin:32px 0 0;padding:0;list-style:none;display:grid}.steps li{counter-increment:s;border-top:3px solid var(--ink);padding-top:14px}.steps li:before{content:counter(s);margin-bottom:6px;font-size:1.6rem;font-weight:800;display:block}.promise{background:var(--paper);border-radius:var(--radius-l);border:1px solid var(--line);grid-template-columns:auto 1fr;align-items:center;gap:22px;margin-top:48px;padding:28px;display:grid}.gauge{width:108px;height:108px}details{border-bottom:1px solid var(--line);padding:16px 0}summary{cursor:pointer;justify-content:space-between;gap:16px;font-size:1.08rem;font-weight:600;list-style:none;display:flex}summary::-webkit-details-marker{display:none}summary:after{content:"+";font-size:1.4rem;font-weight:400;line-height:1}details[open] summary:after{content:"−"}details p{margin:.7em 0 0}.form{background:var(--paper);border-radius:var(--radius-l);border:1px solid var(--line);color:var(--ink);padding:28px}.form input,.form textarea{font:400 1rem var(--font);border:2px solid var(--line);border-radius:var(--radius-s);color:var(--ink);background:#fff;width:100%;padding:12px 14px}.form input:focus,.form textarea:focus{border-color:var(--ink);outline:none}.two{grid-template-columns:1fr 1fr;gap:14px;display:grid}.hp{position:absolute;left:-9999px}.msg{border-radius:var(--radius-s);margin-bottom:16px;padding:14px 16px;font-weight:600}.msg.ok{color:var(--ok);background:#ddf2e6}.msg.err{color:var(--warn);background:#fbe1df}.prose{font-size:1.06rem}.prose h2{margin-top:1.6em;font-size:1.6rem}.prose li{margin-bottom:.4em}.prose p,.prose ul,.prose ol{max-width:68ch}.article-list{margin:0;padding:0;list-style:none}.article-list li{border-bottom:1px solid var(--line);padding:22px 0}.article-list a{text-decoration:none}.article-list a:hover h2{text-decoration:underline}.article-list h2{margin-bottom:.3em;font-size:1.35rem}footer{background:var(--ink);color:#c9d6e1;padding:48px 0 110px;font-size:.95rem}footer .wrap{grid-template-columns:1.4fr 1fr 1fr;gap:32px;display:grid}footer strong{color:#fff;margin-bottom:8px;display:block}footer ul{margin:0;padding:0;list-style:none}footer li{margin-bottom:6px}footer a{text-decoration:none}footer a:hover{text-decoration:underline}@media (max-width:1040px){.top nav{display:none}}@media (max-width:900px){section{padding:56px 0}.hero .wrap,.split,.calc-box{grid-template-columns:1fr}.hero{padding-top:32px}.g3,.steps,footer .wrap{grid-template-columns:1fr}.printer{max-width:340px}}@media (max-width:640px){.g2{grid-template-columns:1fr}}@media (max-width:480px){body{font-size:16px}.two{grid-template-columns:1fr}.ctas .btn{flex:100%}.promise{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.receipt{animation:none}html{scroll-behavior:auto}}.dock{z-index:30;right:20px;bottom:calc(20px + env(safe-area-inset-bottom,0px));gap:10px;display:flex;position:fixed}.dock-m{display:none}.dock-more{position:relative}.dock-more summary{background:var(--ink);color:#fff;list-style:none;box-shadow:0 8px 24px #17324a40}.dock-more summary::-webkit-details-marker{display:none}.dock-more summary:after{content:none}.dock-more[open] summary{background:#0f2537}.dock-panel{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-l);width:250px;padding:14px;position:absolute;bottom:calc(100% + 10px);right:0;box-shadow:0 12px 32px #17324a33}.dock-item{border-radius:var(--radius-s);align-items:center;gap:10px;padding:10px 8px;font-weight:600;text-decoration:none;display:flex}.dock-item:hover{background:var(--bg)}.dot{border-radius:50%;flex:none;width:12px;height:12px}.socials{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.socials a{border:1px solid #3b5670;border-radius:999px;padding:5px 14px;font-size:.88rem}.socials a:hover{background:#21415c;text-decoration:none}@media (max-width:900px){.dock{padding:10px 14px calc(10px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--line);background:#fffffff5;bottom:0;left:0;right:0}.dock-m{flex:1;min-height:48px;display:inline-flex}.dock-more summary{min-height:48px;box-shadow:none}.dock-more summary span{display:none}}.dock-more{border:0;padding:0}.dock-more summary:after,.dock-more[open] summary:after{content:none}@media (max-width:900px){.dock{align-items:center}.dock-more summary{padding:0 18px}}.cust{padding:0;overflow:hidden}.cust-img{aspect-ratio:4/3;background:var(--line);position:relative}.cust-img img{object-fit:cover}.cust-body{padding:20px 22px 24px}.slider-track{scroll-snap-type:x mandatory;scrollbar-width:none;grid-auto-columns:min(85%,360px);grid-auto-flow:column;gap:20px;padding-bottom:4px;display:grid;overflow-x:auto}.slider-track::-webkit-scrollbar{display:none}.slider-track>*{scroll-snap-align:start}.slider-nav{gap:10px;margin-top:18px;display:flex}.slider-nav .btn{width:46px;padding:0;font-size:1.5rem;line-height:1}.chips{flex-wrap:wrap;gap:8px;margin:16px 0 0;padding:0;list-style:none;display:flex}.chips a{border:1px solid var(--line);background:var(--paper);border-radius:999px;padding:5px 14px;font-size:.92rem;text-decoration:none;display:inline-block}.chips a:hover{border-color:var(--ink)}.cover-img{aspect-ratio:16/9;border-radius:var(--radius-l);background:var(--line);margin:8px 0 28px;position:relative;overflow:hidden}.cover-img img{object-fit:cover}.gallery{grid-template-columns:repeat(2,1fr);gap:14px;margin:28px 0;display:grid}.gallery figure{margin:0}.gallery .g-img{aspect-ratio:4/3;border-radius:var(--radius-s);background:var(--line);position:relative;overflow:hidden}.gallery img{object-fit:cover}.gallery figcaption{color:var(--ink-2);margin-top:6px;font-size:.88rem}blockquote.cq{background:var(--paper);border-left:5px solid var(--call);border-radius:var(--radius-s);margin:28px 0;padding:22px 26px;font-size:1.15rem}blockquote.cq footer{all:unset;color:var(--ink-2);margin-top:10px;font-size:.95rem;display:block}@media (max-width:480px){.gallery{grid-template-columns:1fr}}.pcard{padding:0;overflow:hidden}.pcard-body{flex-direction:column;flex:1;padding:20px 24px 24px;display:flex}.pmedia{aspect-ratio:4/3;border-bottom:1px solid var(--line);background:#fff;position:relative}.pmedia svg{width:100%;height:100%;position:absolute;inset:0}.thumbs{grid-template-columns:repeat(4,1fr);gap:10px;margin-top:12px;display:grid}.thumb{aspect-ratio:1;border-radius:var(--radius-s);border:1px solid var(--line);background:#fff;position:relative;overflow:hidden}.video{aspect-ratio:16/9;border-radius:var(--radius-l);background:#000;margin:24px 0;position:relative;overflow:hidden}.video iframe{border:0;width:100%;height:100%;position:absolute;inset:0}.prose img{border-radius:var(--radius-s);margin:12px 0}.prose figure{margin:20px 0}.prose table{border-collapse:collapse;width:100%;margin:16px 0;font-size:.95rem;display:block;overflow-x:auto}.prose th,.prose td{border:1px solid var(--line);text-align:left;vertical-align:top;padding:9px 12px}.prose th{background:var(--paper)}.alist{align-items:flex-start;gap:18px;display:flex}.alist-img{aspect-ratio:4/3;border-radius:var(--radius-s);background:var(--line);flex:none;width:140px;position:relative;overflow:hidden}@media (max-width:480px){.alist-img{width:96px}}.combo-media{display:block}.combo-mosaic{aspect-ratio:4/3;border-bottom:1px solid var(--line);background:#fff;display:grid}.combo-mosaic.n2{grid-template-columns:1fr 1fr}.combo-mosaic.n3{grid-template-rows:1fr 1fr;grid-template-columns:1.3fr 1fr}.combo-mosaic.n3 .pmedia:first-child{grid-row:span 2}.combo-mosaic .pmedia{aspect-ratio:auto;border:0;height:100%}.combo-mosaic.n2 .pmedia+.pmedia,.combo-mosaic.n3 .pmedia+.pmedia{border-left:1px solid var(--line)}.combo-mosaic.n3 .pmedia:last-child{border-top:1px solid var(--line)}.combo-items{margin:0 0 14px;padding:0;font-size:.92rem;list-style:none}.combo-items li{border-bottom:1px dashed var(--line);padding:4px 0}.combo-items li span{margin-right:4px;font-weight:700}.combo-items li.sw{color:var(--ok)}.combo-cta{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-l);padding:20px}.combo-sum{padding:22px}.combo-lines{margin:0;padding:0;list-style:none}.combo-lines li{border-bottom:1px solid var(--line);grid-template-columns:64px 1fr auto;align-items:center;gap:12px;padding:10px 0;display:grid}.combo-lines .strong{font-weight:600;text-decoration:none}.combo-lines .strong:hover{text-decoration:underline}.cl-img{border-radius:var(--radius-s);border:1px solid var(--line);width:64px;display:block;overflow:hidden}.cl-img .pmedia{border:0}.sw-ico{background:var(--ink);color:#fff;place-items:center;height:48px;font-weight:800;display:grid}.cl-sum{white-space:nowrap}.combo-total{justify-content:space-between;align-items:baseline;gap:12px;padding-top:12px;font-size:1.05rem;display:flex}.combo-total strong{font-size:1.5rem}.cb{scroll-margin-top:90px}.cb h2{font-size:1.5rem}.cb-steps{flex-wrap:wrap;gap:6px;margin:0 0 28px;padding:0;list-style:none;display:flex}.cb-steps li{flex:1;min-width:120px}.cb-steps button{border:0;border-top:4px solid var(--line);width:100%;font:600 .95rem var(--font);color:var(--ink-2);cursor:pointer;text-align:left;background:0 0;align-items:center;gap:10px;padding:10px 12px;display:flex}.cb-steps button:disabled{cursor:default}.cb-steps button span{background:var(--line);width:26px;height:26px;color:var(--ink);border-radius:50%;flex:none;place-items:center;font-size:.85rem;display:grid}.cb-steps .on button{border-top-color:var(--ink);color:var(--ink)}.cb-steps .on button span{background:var(--ink);color:#fff}.cb-steps .done button{border-top-color:var(--ok);color:var(--ink)}.cb-steps .done button span{background:var(--ok);color:#fff}.cb-options{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px;margin:18px 0 22px;display:grid}.cb-opt{text-align:left;border:2px solid var(--line);border-radius:var(--radius-l);background:var(--paper);font:inherit;color:var(--ink);cursor:pointer;flex-direction:column;gap:6px;padding:20px;display:flex}.cb-opt strong{font-size:1.08rem}.cb-opt span{color:var(--ink-2);font-size:.93rem}.cb-opt:hover,.cb-opt.on{border-color:var(--ink)}.cb-work{grid-template-columns:1fr 340px;align-items:start;gap:28px;display:grid}.cb-lines{gap:10px;margin:16px 0;padding:0;list-style:none;display:grid}.cb-lines li{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-l);grid-template-columns:64px 1fr auto auto;align-items:center;gap:12px;padding:10px 12px;display:grid}.cb-img{border-radius:var(--radius-s);border:1px solid var(--line);background:#fff;place-items:center;width:64px;height:64px;display:grid;overflow:hidden}.cb-img img{object-fit:contain;width:100%;height:100%}.cb-noimg{color:var(--ink-2);font-weight:800}.cb-info{gap:2px;min-width:0;display:grid}.cb-info select,.cb-add select{font:600 .95rem var(--font);border:1.5px solid var(--line);border-radius:var(--radius-s);color:var(--ink);background:#fff;max-width:100%;padding:6px 8px}.cb-qty{border:1.5px solid var(--line);border-radius:999px;align-items:center;display:flex;overflow:hidden}.cb-qty button{cursor:pointer;background:#fff;border:0;width:34px;height:34px;font-size:1.1rem}.cb-qty input{text-align:center;width:44px;font:600 1rem var(--font);border:0}.cb-del{color:var(--warn);cursor:pointer;background:0 0;border:0;padding:6px;font-size:1.1rem}.cb-add{flex-wrap:wrap;gap:10px;margin-bottom:16px;display:flex}.cb-sw{border-radius:var(--radius-l);cursor:pointer;background:#e8f6ee;border:1px solid #bfe3cd;align-items:flex-start;gap:12px;padding:14px 16px;display:flex}.cb-sw input{flex:none;width:20px;height:20px;margin-top:2px}.cb-nav{flex-wrap:wrap;justify-content:space-between;gap:12px;margin-top:22px;display:flex}.cb-sum{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-l);padding:20px;position:sticky;top:90px}.cb-sum h3{margin-bottom:4px}.cb-sum ul{margin:12px 0 0;padding:0;font-size:.92rem;list-style:none}.cb-sum li{border-bottom:1px dashed var(--line);justify-content:space-between;gap:10px;padding:6px 0;display:flex}.cb-sum li b{white-space:nowrap}.cb-done{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-l);max-width:640px;padding:32px}.day{gap:40px;margin:28px 0 0;padding:0;list-style:none;display:grid}.day li{grid-template-columns:.8fr 1.2fr;align-items:center;gap:36px;display:grid}.day-time{font:700 1rem var(--mono);background:var(--ink);color:#fff;border-radius:6px;margin-bottom:10px;padding:3px 10px;display:inline-block}.day-imgs{gap:14px;display:grid}.day-imgs.n2{grid-template-columns:.7fr 1.3fr;align-items:center}.day-imgs img,.shot{border-radius:var(--radius-l);border:1px solid var(--line);background:#fff;width:100%;height:auto;box-shadow:0 10px 30px #17324a14}.free-box{background:var(--ink);color:#fff;border-radius:var(--radius-l);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;padding:32px 36px;display:flex}.free-box h2{margin-bottom:.3em}@media (max-width:1100px){.top nav{gap:14px;font-size:.9rem}}@media (max-width:900px){.cb-work{grid-template-columns:1fr}.cb-sum{position:static}.day li{grid-template-columns:1fr;gap:16px}}@media (max-width:560px){.cb-lines li{grid-template-columns:52px 1fr auto;grid-template-areas:"img info del""img qty del"}.cb-img{grid-area:img;width:52px;height:52px}.cb-info{grid-area:info}.cb-qty{grid-area:qty;justify-self:start}.cb-del{grid-area:del}.combo-lines li{grid-template-columns:52px 1fr}.combo-lines .cl-sum{grid-column:2}}.sw-free{color:var(--ok)}.combo-lines li.sw-line{border-radius:var(--radius-s);background:#f1faf5;margin:0 -10px;padding:10px}.cb-lines li.cb-sw-line{background:#e8f6ee;border-color:#bfe3cd;grid-template-columns:64px 1fr auto}.cb-lines li.cb-sw-line.off{background:var(--paper);opacity:.85;border-style:dashed}.cb-sw-line .sw-ico{background:var(--ink);color:#fff;border:0;width:64px;height:64px;font-weight:800}.cb-sw-tick{cursor:pointer;white-space:nowrap;align-items:center;gap:8px;font-weight:600;display:flex}.cb-sw-tick input{width:20px;height:20px}.cb-sum li.sw{color:var(--ok)}@media (max-width:560px){.cb-lines li.cb-sw-line{grid-template-columns:52px 1fr;grid-template-areas:"img info""img tick"}.cb-sw-line .sw-ico{grid-area:img;width:52px;height:52px}.cb-sw-line .cb-info{grid-area:info}.cb-sw-tick{grid-area:tick}}
