/* YORA – design system: xanh đậm #0F3D32, cam #E8670A (nút dùng #C2410C để đạt tương phản AA), nền cream */
:root{
  --green:#0F3D32;--green-2:#15503F;--green-soft:#E7EFEC;
  --orange:#E8670A;--orange-btn:#C2410C;--orange-btn-h:#9A3412;--orange-soft:#FDF0E6;
  --ink:#1F2937;--muted:#5B6660;--line:#E4E1DA;--cream:#F7F4EE;--white:#fff;--gray:#F3F4F6;
  --r:10px;--shadow:0 8px 28px rgba(15,61,50,.08);--max:1200px;
}
*{box-sizing:border-box}
[hidden]{display:none!important}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;font-family:"Be Vietnam Pro",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;color:var(--ink);background:var(--white);line-height:1.6;font-size:16px;padding-bottom:64px}
img{max-width:100%;height:auto;display:block}
a{color:var(--green)}
h1,h2,h3{line-height:1.2;color:var(--green);margin:0 0 .5em}
h1{font-size:clamp(30px,5.2vw,54px);font-weight:800;letter-spacing:-.02em;text-transform:uppercase}
h2{font-size:clamp(24px,3.2vw,36px);font-weight:800;letter-spacing:-.01em}
h3{font-size:18px;font-weight:700}
p{margin:0 0 1em}
.wrap{max-width:var(--max);margin:0 auto;padding:0 16px}
.narrow{max-width:860px}
.muted{color:var(--muted)}
.eyebrow{color:var(--orange-btn);font-weight:700;font-size:13px;letter-spacing:.12em;margin:0 0 10px;text-transform:uppercase}
.skip{position:absolute;left:-9999px}.skip:focus{left:12px;top:12px;z-index:100;background:#fff;padding:8px 12px}
:focus-visible{outline:3px solid var(--orange);outline-offset:2px}
.ic{flex:none}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:12px 22px;border-radius:8px;border:2px solid transparent;font:700 14px/1.2 inherit;font-family:inherit;letter-spacing:.04em;text-decoration:none;cursor:pointer;transition:background .15s,color .15s,border-color .15s}
.btn-orange{background:var(--orange-btn);color:#fff}.btn-orange:hover{background:var(--orange-btn-h)}
.btn-green{background:var(--green);color:#fff}.btn-green:hover{background:var(--green-2)}
.btn-outline{border-color:var(--green);color:var(--green);background:#fff}.btn-outline:hover{background:var(--green);color:#fff}
.btn-ghost-light{border-color:rgba(255,255,255,.7);color:#fff}.btn-ghost-light:hover{background:#fff;color:var(--green)}
.btn-block{width:100%}
.btn[disabled]{opacity:.6;cursor:wait}
.btn-link{background:none;border:0;color:var(--muted);font:600 15px inherit;font-family:inherit;cursor:pointer;padding:12px 4px;min-height:44px}

/* header */
.site-header{position:sticky;top:0;z-index:40;background:rgba(255,255,255,.97);border-bottom:1px solid var(--line);backdrop-filter:saturate(1.2) blur(6px)}
.hdr{display:flex;align-items:center;gap:16px;min-height:64px}
.brand{display:flex;flex-direction:column;text-decoration:none;color:var(--green);line-height:1}
.wm{font-weight:800;font-size:28px;letter-spacing:-.03em}
.wm-a{position:relative}.wm-a:after{content:"";position:absolute;right:1px;bottom:3px;border-left:6px solid transparent;border-bottom:9px solid var(--orange);width:0;height:0}
.brand-sub{font-size:8.5px;letter-spacing:.18em;font-weight:600;margin-top:3px;color:var(--ink)}
.brand-light{color:#fff}.brand-light .brand-sub{color:#cfe0da}
.navtoggle{margin-left:auto;background:none;border:0;cursor:pointer;padding:10px;min-width:44px;min-height:44px;display:grid;place-items:center;color:var(--green)}
.nav{position:absolute;left:0;right:0;top:64px;background:#fff;border-bottom:1px solid var(--line);box-shadow:var(--shadow);display:none;flex-direction:column;padding:8px 16px 16px}
.nav.open{display:flex}
.nav a{padding:13px 4px;border-bottom:1px solid var(--line);text-decoration:none;color:var(--ink);font-weight:600}
.nav a[aria-current]{color:var(--orange-btn)}
.hdr-cta{display:none}

/* hero */
.hero{background:linear-gradient(180deg,var(--cream),#fff);padding:28px 0 20px}
.hero-in{display:grid;gap:24px}
.headline{font-size:clamp(19px,2.3vw,24px);font-weight:600;color:var(--ink);margin-bottom:.6em}
.lead{font-size:17px;color:#3f4a45;max-width:640px}
.actions{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0}
.actions .btn{flex:1 1 220px}
.trust{list-style:none;padding:0;margin:14px 0 0;display:grid;grid-template-columns:1fr 1fr;gap:10px 16px}
.trust li{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;color:var(--green)}
.hero-art{display:none}
.ba{display:grid;grid-template-columns:1fr 1fr;height:100%;min-height:380px;border-radius:14px;overflow:hidden;box-shadow:var(--shadow)}
.ba>div{position:relative}
.ba-before{background:repeating-linear-gradient(135deg,#b9b4ab 0 2px,#cfcac1 2px 14px),linear-gradient(#a8a39a,#8f8a82)}
.ba-after{background:linear-gradient(160deg,#f3ede3 0%,#e4d6c2 55%,#c9a67b 56%,#b98c5b 100%)}
.ba span{position:absolute;bottom:14px;background:rgba(31,41,55,.85);color:#fff;font-size:12px;font-weight:700;letter-spacing:.1em;padding:6px 10px;border-radius:4px}
.ba-before span{right:14px}.ba-after span{right:14px}
.hero-sm{padding:24px 0 8px}
.hero-sm h1{font-size:clamp(28px,4.4vw,46px)}
.crumbs{font-size:13px;color:var(--muted);margin-bottom:12px}.crumbs a{color:var(--muted)}

/* sections */
.sec{padding:48px 0}
.sec-soft{background:var(--cream)}
.sec-dark{background:var(--green);color:#e8f0ed}.sec-dark h2,.sec-dark h3{color:#fff}.sec-dark .eyebrow{color:#ffb27a}
.split{display:grid;gap:28px;align-items:start}
.mt{margin-top:28px}

/* estimator */
.est{margin:8px 0 40px;scroll-margin-top:80px}
.est-head h2{margin-bottom:4px}
.est-card{background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);padding:18px}
.steps{display:flex;list-style:none;padding:0;margin:0 0 18px;gap:6px;counter-reset:s}
.steps li{flex:1;height:32px;border-radius:999px;background:var(--gray);color:var(--muted);display:grid;place-items:center;font-weight:700;font-size:13px}
.steps li.is-on{background:var(--orange-btn);color:#fff}.steps li.is-done{background:var(--green-soft);color:var(--green)}
.step{border:0;margin:0;padding:0;min-width:0}
.step legend{font-weight:800;font-size:19px;color:var(--green);margin-bottom:12px;padding:0}
.step legend small{font-weight:500;color:var(--muted);font-size:14px}
.sublegend{font-weight:700;margin:12px 0 8px}
.opts{display:grid;grid-template-columns:1fr;gap:8px}
.opts-5{grid-template-columns:repeat(2,1fr)}
.opts-chk{grid-template-columns:repeat(2,1fr)}
.opts-2{grid-template-columns:1fr 1fr;margin-bottom:12px}
.opt{position:relative;display:block;cursor:pointer}
.opt input{position:absolute;opacity:0;inset:0;width:100%;height:100%;margin:0;cursor:pointer}
.opt span{display:flex;align-items:center;gap:10px;min-height:52px;padding:12px 14px;border:1.5px solid var(--line);border-radius:10px;font-weight:600;background:#fff;transition:.15s}
.opt-card span{flex-direction:column;justify-content:center;text-align:center;min-height:92px;font-size:14px}
.opt input:checked+span{border-color:var(--orange-btn);background:var(--orange-soft);color:var(--orange-btn-h)}
.opt input:focus-visible+span{outline:3px solid var(--orange);outline-offset:2px}
.grid3,.grid2{display:grid;gap:12px}
.fld{display:flex;flex-direction:column;gap:6px;font-weight:600;font-size:14px}
.fld small{font-weight:400;color:var(--muted)}
.fld input,.fld select,.fld textarea{font:16px inherit;font-family:inherit;padding:12px 14px;border:1.5px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);min-height:48px;width:100%}
.fld input:focus,.fld select:focus,.fld textarea:focus{border-color:var(--green);outline:none;box-shadow:0 0 0 3px rgba(15,61,50,.15)}
.fld [aria-invalid=true]{border-color:#B42318}
.hint{font-size:13px;color:var(--muted);margin:10px 0 0}
.est-nav{display:flex;justify-content:space-between;align-items:center;margin-top:18px;gap:10px}
.est-nav [data-next]{margin-left:auto}
.err{color:#B42318;font-weight:600;min-height:1.2em;margin:10px 0 0}
.est-result{outline:none}
.res-top{display:grid;gap:14px;background:var(--cream);border-radius:12px;padding:18px}
.res-type{font-weight:800;color:var(--green);font-size:18px;text-transform:uppercase}
.res-price{font-size:clamp(34px,6vw,48px);font-weight:800;color:var(--orange);line-height:1;margin:6px 0}
.res-unit{font-weight:700;color:var(--orange-btn-h);letter-spacing:.06em}
.res-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:6px}
.res-meta small{display:block;color:var(--muted);font-size:12px}.res-meta b{color:var(--green)}
.bd{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.bd li{display:grid;grid-template-columns:110px 1fr 40px;align-items:center;gap:10px;font-size:14px}
.bd .bar{height:8px;background:#e7e2d9;border-radius:9px;overflow:hidden}.bd .bar i{display:block;height:100%;background:var(--orange)}
.disc{font-size:13px;color:var(--muted);margin:12px 0}
.demo-flag{display:inline-block;background:#FEF3C7;color:#92400E;border:1px solid #F59E0B;font-size:12px;font-weight:700;padding:3px 8px;border-radius:4px;margin-bottom:8px}
.res-cta{display:grid;gap:10px;margin-top:14px}
.est-lead{margin-top:22px;border-top:1px dashed var(--line);padding-top:18px}
.lead-form h3{font-size:20px}
.hp{position:absolute!important;left:-10000px;width:1px;height:1px;overflow:hidden}
.consent{font-size:13px;color:var(--muted);margin:10px 0}
.ok{background:#ECFDF3;border:1px solid #6CE9A6;color:#05603A;padding:14px;border-radius:8px;font-weight:600;margin-top:12px}
.fld-wide{grid-column:1/-1}

/* services / why / process */
.svc{display:grid;gap:12px}
.svc-card{display:block;padding:20px;border:1px solid var(--line);border-radius:var(--r);text-decoration:none;color:var(--ink);background:#fff;transition:.2s}
.svc-card:hover{border-color:var(--green);box-shadow:var(--shadow)}
.svc-card .ic{color:var(--orange-btn)}.svc-card h3{margin:10px 0 4px}.svc-card p{color:var(--muted);font-size:15px;margin:0 0 8px}
.more{display:inline-flex;align-items:center;gap:6px;color:var(--green);font-weight:700;font-size:14px}
.why{display:grid;gap:14px}
.why-item{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);border-radius:var(--r);padding:20px}
.why-item .ic{color:#ffb27a}.why-item h3{margin:10px 0 6px}.why-item p{margin:0;color:#cfe0da;font-size:15px}
.process{list-style:none;padding:0;margin:0;display:grid;gap:10px}
.process li{display:flex;gap:14px;background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:14px 16px}
.pnum{font-weight:800;color:var(--orange-btn);font-size:18px;min-width:30px}
.process h3{margin:0 0 2px;font-size:16px}.process p{margin:0;color:var(--muted);font-size:14px}
.bul{list-style:none;padding:0;margin:0 0 12px;display:grid;gap:10px}
.bul li{display:flex;gap:10px;align-items:flex-start}.bul .ic{color:var(--green);margin-top:3px}
.bul-x li:before{content:"✕";color:#B42318;font-weight:800}
.bul-num{padding-left:20px}.bul-num li{margin-bottom:8px}
.links{columns:2;padding-left:18px}

/* portal preview */
.pp{background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);padding:18px;position:relative}
.pp-tag{position:absolute;top:-11px;right:14px;background:#FEF3C7;color:#92400E;font-size:11px;font-weight:700;padding:3px 8px;border-radius:4px}
.pp-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.pp-head b{color:var(--green);letter-spacing:.04em}.pp-head span{font-size:13px;color:var(--muted)}
.pp-row{display:flex;justify-content:space-between;font-size:14px}
.bar{height:8px;background:#e7e2d9;border-radius:9px;overflow:hidden;margin:6px 0 12px}.bar i{display:block;height:100%;background:var(--green)}
.pp-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;font-size:13px}.pp-grid small{display:block;color:var(--muted)}
.pp-list{list-style:none;padding:0;margin:12px 0 0;font-size:14px;display:grid;gap:6px}.pp-list li{display:flex;gap:8px;align-items:center}.pp-list .ic{color:var(--green)}

/* cases / articles */
.cases{display:grid;gap:16px;margin-bottom:20px}
.case{display:block;text-decoration:none;color:var(--ink);border:1px solid var(--line);border-radius:var(--r);overflow:hidden;background:#fff}
.case img,.case .noimg{aspect-ratio:3/2;object-fit:cover;width:100%;background:var(--gray)}
.case div{padding:14px}.case h3{margin:0 0 4px}.case p{margin:0;color:var(--muted);font-size:14px}
.empty{background:var(--cream);border-radius:14px;padding:28px;text-align:center}
.arts{display:grid;gap:14px}.art{display:block;padding:18px;border:1px solid var(--line);border-radius:var(--r);text-decoration:none;color:var(--ink)}.art h2{font-size:20px}
.gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-bottom:24px}.gallery img{border-radius:8px;aspect-ratio:3/2;object-fit:cover;width:100%}
.facts{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;background:var(--cream);padding:16px;border-radius:12px;margin:0 0 24px}
.facts dt{font-size:12px;color:var(--muted)}.facts dd{margin:0;font-weight:700;color:var(--green)}
.pre{white-space:pre-line}
.quote{border-left:4px solid var(--orange);margin:24px 0;padding:8px 16px;background:var(--cream)}
.prose h2{margin-top:1.4em}

/* faq */
.faq details{border-bottom:1px solid var(--line);padding:16px 0}
.faq summary{cursor:pointer;font-weight:700;font-size:17px;list-style:none;display:flex;justify-content:space-between;gap:12px;min-height:32px;color:var(--green)}
.faq summary::-webkit-details-marker{display:none}
.faq summary:after{content:"+";font-size:24px;color:var(--orange-btn);line-height:1}
.faq details[open] summary:after{content:"−"}
.faq p{margin:10px 0 0;color:#3f4a45}

/* band / contact */
.band{background:var(--green);color:#fff;padding:36px 0}
.band h2{color:#fff}.band p{color:#cfe0da}
.band-in{display:grid;gap:16px}
.band-act{display:flex;flex-wrap:wrap;gap:10px}.band-act .btn{flex:1 1 220px}
.contact-list{list-style:none;padding:0;display:grid;gap:16px}
.contact-list li{display:flex;gap:14px;align-items:flex-start}.contact-list .ic{color:var(--orange-btn);margin-top:3px}
.contact-list b{display:block}
.tbl-wrap{overflow-x:auto}.tbl{border-collapse:collapse;width:100%;font-size:13px}.tbl th,.tbl td{border:1px solid var(--line);padding:8px;text-align:left;white-space:nowrap}.tbl th{background:var(--cream)}

/* portal */
.portal h1 small{font-size:16px;color:var(--muted);font-weight:600}
.pgrid{display:grid;gap:12px;margin:16px 0}
.pbox{background:var(--cream);border-radius:12px;padding:16px;display:grid;gap:4px}
.pbox small{color:var(--muted);font-size:13px}.pbox b{color:var(--green);font-size:18px}.pbox .big{font-size:40px;color:var(--orange)}
.alert{background:#FEF3C7;border:1px solid #F59E0B;border-radius:8px;padding:12px;font-weight:600;color:#92400E}
.stages{list-style:none;padding:0;display:grid;gap:10px}.st div:first-child{display:flex;justify-content:space-between}
.co{border:1px solid var(--line);border-radius:10px;padding:14px;margin-bottom:10px}.co-cho_duyet{border-color:#F59E0B;background:#FFFBEB}
.co-h{display:flex;justify-content:space-between;gap:8px}.tag{font-size:12px;font-weight:700;background:var(--gray);padding:2px 8px;border-radius:4px}
.co-act{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:8px}.chk{display:flex;gap:8px;align-items:center;flex-basis:100%}
.tl{list-style:none;padding:0}.tl li{border-left:2px solid var(--line);padding:0 0 14px 14px}.tl time{display:block;font-size:12px;color:var(--muted)}
.docs{list-style:none;padding:0}.docs a{display:inline-flex;gap:8px;align-items:center;padding:6px 0}

/* footer + mobile bar */
.site-footer{background:#0B2E26;color:#cfe0da;padding:40px 0 16px;font-size:15px}
.site-footer h2{color:#fff;font-size:15px;letter-spacing:.06em;text-transform:uppercase;margin:0 0 12px}
.site-footer a{color:#e8f0ed;text-decoration:none}.site-footer a:hover{text-decoration:underline}
.foot{display:grid;gap:28px}
.foot ul{list-style:none;padding:0;margin:0;display:grid;gap:8px}
.foot .contact li{display:flex;gap:8px;align-items:flex-start}
.promise{margin-top:14px;font-weight:600;color:#fff}.legal{font-size:13px}
.copy{border-top:1px solid rgba(255,255,255,.12);margin-top:28px;padding-top:14px;font-size:13px;color:#9fb8b0}
.mbar{position:fixed;left:0;right:0;bottom:0;z-index:50;display:grid;grid-template-columns:1fr 1fr 1.2fr;background:#fff;border-top:1px solid var(--line);box-shadow:0 -4px 16px rgba(0,0,0,.06);padding-bottom:env(safe-area-inset-bottom)}
.mbar a{display:flex;align-items:center;justify-content:center;gap:6px;min-height:56px;text-decoration:none;color:var(--green);font-weight:800;font-size:14px;letter-spacing:.04em}
.mbar a+a{border-left:1px solid var(--line)}
.mbar .mbar-main{background:var(--orange-btn);color:#fff}

/* ====== tablet ====== */
@media (min-width:640px){
  .opts{grid-template-columns:1fr 1fr}
  .opts-5{grid-template-columns:repeat(5,1fr)}
  .opts-chk{grid-template-columns:repeat(3,1fr)}
  .grid3{grid-template-columns:repeat(3,1fr)}.grid2{grid-template-columns:1fr 1fr}
  .svc{grid-template-columns:repeat(2,1fr)}.why{grid-template-columns:repeat(2,1fr)}
  .process{grid-template-columns:repeat(2,1fr)}
  .cases{grid-template-columns:repeat(2,1fr)}.arts{grid-template-columns:repeat(2,1fr)}
  .res-cta{grid-template-columns:1fr 1fr}
  .foot{grid-template-columns:1.3fr 1fr 1fr}.foot>div:last-child{grid-column:1/-1}
  .gallery{grid-template-columns:repeat(3,1fr)}.facts{grid-template-columns:repeat(3,1fr)}
  .pgrid{grid-template-columns:repeat(3,1fr)}
  .est-card{padding:28px}
}
/* ====== desktop ====== */
@media (min-width:1024px){
  body{padding-bottom:0}
  .wrap{padding:0 24px}
  .mbar{display:none}
  .hdr{min-height:76px;gap:28px}
  .navtoggle{display:none}
  .nav{position:static;display:flex;flex-direction:row;gap:26px;border:0;box-shadow:none;padding:0;background:none;margin-left:auto}
  .nav a{border:0;padding:6px 0;font-size:14.5px;border-bottom:2px solid transparent}
  .nav a[aria-current]{border-bottom-color:var(--orange)}
  .hdr-cta{display:inline-flex;min-height:44px;padding:10px 16px;font-size:13px}
  .hero{padding:56px 0 36px}
  .hero-in{grid-template-columns:1.05fr .95fr;gap:48px;align-items:stretch}
  .hero-art{display:block}
  .trust{display:flex;flex-wrap:wrap;gap:22px}
  .actions .btn{flex:0 0 auto}
  .sec{padding:72px 0}
  .split{grid-template-columns:1fr 1fr;gap:48px}
  .svc{grid-template-columns:repeat(3,1fr)}.why{grid-template-columns:repeat(4,1fr)}
  .process{grid-template-columns:repeat(3,1fr)}
  .cases{grid-template-columns:repeat(3,1fr)}
  .res-top{grid-template-columns:1.1fr 1fr;align-items:start;padding:24px}
  .band-in{grid-template-columns:1.4fr 1fr;align-items:center}
  .foot{grid-template-columns:1.4fr 1fr 1fr 1.2fr}.foot>div:last-child{grid-column:auto}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
@media print{.site-header,.mbar,.site-footer,.band{display:none}}

/* Banner trang chủ (ảnh có sẵn chữ + nút; phủ link trong suốt đúng vị trí nút) */
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.hero-banner{background:#0b1a24}
.hb{position:relative;margin:0 auto;line-height:0}
.hb img{width:100%;height:auto;display:block}
.hb-btn{position:absolute;display:block;border-radius:12px;outline-offset:3px}
.hb-btn:hover{box-shadow:0 0 0 3px rgba(255,255,255,.55)}
.hb-btn:focus-visible{outline:3px solid #fff}
.svc-tiles{gap:20px}
.svc-tile{display:flex;flex-direction:column;background:#111;border-radius:10px;overflow:hidden;text-decoration:none;color:#fff;box-shadow:0 2px 10px rgba(0,0,0,.08);transition:transform .25s,box-shadow .25s}
.svc-tile:hover{transform:translateY(-4px);box-shadow:0 12px 28px rgba(0,0,0,.18)}
.svc-media{display:block;aspect-ratio:3/2;overflow:hidden;background:linear-gradient(135deg,#1f3d33,#0b1a24)}
.svc-media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s}
.svc-tile:hover .svc-media img{transform:scale(1.05)}
.svc-ph{display:flex;width:100%;height:100%;align-items:center;justify-content:center;color:#ffb27a;opacity:.85}
.svc-cap{display:block;padding:16px 18px 18px;text-align:center}
.svc-cap h3{margin:0 0 4px;color:#fff;font-size:18px}.svc-cap p{margin:0;color:#b9c4c0;font-size:14px}
.est .grid2.mt{margin-top:14px}
.opts-chk{grid-template-columns:repeat(2,1fr)}
.opt-all{grid-column:1/-1}.opt-all span{font-weight:700}
.opt-card small{display:block;color:var(--muted);font-weight:400;font-size:12px;margin-top:4px}
.fld-wc{margin-top:12px;max-width:220px}
@media (min-width:768px){.opts-chk{grid-template-columns:repeat(4,1fr)}.opts-3{grid-template-columns:repeat(3,1fr)}}

.qty-box{margin-top:12px}.qty-box .fld-wc{margin-top:0}
.note-price{background:#FFF7ED;border:1px solid #FDBA74;color:#9A3412;padding:10px 12px;border-radius:8px;font-weight:600;font-size:14px}

/* nút liên hệ nổi – chỉ máy tính (điện thoại đã có thanh .mbar) */
.fabs{display:none}
@media (min-width:1024px){
  .fabs{position:fixed;right:22px;bottom:24px;z-index:60;display:flex;flex-direction:column;gap:12px}
  .fab{position:relative;display:flex;align-items:center;justify-content:center;width:54px;height:54px;border-radius:50%;color:#fff;text-decoration:none;box-shadow:0 6px 18px rgba(0,0,0,.18);transition:transform .2s}
  .fab:hover,.fab:focus-visible{transform:scale(1.08)}
  .fab b{font-weight:800;font-size:15px;letter-spacing:-.01em}
  .fab-fb b{font-size:26px;font-family:Arial,Helvetica,sans-serif}
  .fab-zalo{background:#0068FF}.fab-fb{background:#1877F2}.fab-call{background:#16a34a}
  .fab-call::before{content:"";position:absolute;inset:0;border-radius:50%;border:2px solid #16a34a;animation:fabpulse 1.8s ease-out infinite}
  .fab-tip{position:absolute;right:66px;white-space:nowrap;background:#111;color:#fff;font-size:13px;font-weight:600;padding:6px 10px;border-radius:6px;opacity:0;pointer-events:none;transition:opacity .15s}
  .fab:hover .fab-tip,.fab:focus-visible .fab-tip{opacity:1}
}
@keyframes fabpulse{from{transform:scale(1);opacity:.7}to{transform:scale(1.5);opacity:0}}
@media (prefers-reduced-motion:reduce){.fab-call::before{animation:none}}
@media print{.fabs{display:none}}

@media (min-width:1024px){.svc-tiles{grid-template-columns:repeat(4,1fr)}.svc-cap h3{font-size:17px}}

/* trang dịch vụ: nội dung riêng từng dịch vụ */
.svc-top{padding-bottom:28px}
.svc-hero{display:grid;gap:24px;align-items:center}
.svc-fig{margin:0;position:relative;border-radius:14px;overflow:hidden;box-shadow:var(--shadow);background:var(--green-soft)}
.svc-fig img{width:100%;aspect-ratio:3/2;object-fit:cover}
.svc-fig figcaption{position:absolute;right:10px;bottom:10px;background:rgba(15,25,30,.72);color:#fff;font-size:11px;letter-spacing:.06em;padding:4px 8px;border-radius:4px}
.svc-intro p{color:#3f4a45}
.bul-dot li:before{content:"";flex:none;width:8px;height:8px;border-radius:50%;background:var(--orange-btn);margin-top:9px}
.bul li>span{flex:1}
.mt-s{margin-top:16px}
.items{display:grid;gap:14px}
.item{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:18px 20px}
.item h3{margin:0 0 6px;font-size:17px}.item p{margin:0;color:var(--muted);font-size:15px}
.items-note .item{background:var(--cream);border-color:transparent;border-left:4px solid var(--orange-btn)}
.ptbl{font-size:14px}.ptbl th,.ptbl td{white-space:normal;vertical-align:top;padding:10px}
.ptbl tbody th{font-weight:700;color:var(--green);background:#fff}
.ptbl .num{white-space:nowrap;font-weight:700;color:var(--orange-btn-h)}
.ptbl tbody th small{display:block;font-weight:400;color:var(--muted);font-size:13px;margin-top:2px}
.ptbl td:nth-child(2){white-space:nowrap;color:var(--muted)}
.ptbl .num-na{white-space:normal;color:var(--muted);font-weight:600}
.split>*{min-width:0}
.hub{display:grid;gap:18px;margin-top:20px}
.hub-card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden;text-decoration:none;color:var(--ink);transition:box-shadow .2s,transform .2s,border-color .2s}
.hub-card:hover{border-color:var(--green);box-shadow:var(--shadow);transform:translateY(-3px)}
.hub-txt{display:block;padding:16px 18px 18px}
.hub-txt h3{margin:0 0 6px;font-size:18px}.hub-txt p{margin:0 0 10px;color:var(--muted);font-size:15px}
.hub-txt b{display:inline-flex;align-items:center;gap:6px;color:var(--orange-btn);font-size:14px}
.guide{list-style:none;padding:0;margin:0 0 16px;border-top:1px solid var(--line)}
.guide li{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:13px 0;border-bottom:1px solid var(--line)}
.guide a{display:inline-flex;align-items:center;gap:6px;font-weight:700;white-space:nowrap;text-decoration:none}
@media (min-width:640px){.items{grid-template-columns:repeat(2,1fr)}.hub{grid-template-columns:repeat(2,1fr)}}
@media (min-width:900px){.split-price{grid-template-columns:1.25fr 1fr}.svc-hero{grid-template-columns:1.15fr .85fr;gap:40px}.hub{grid-template-columns:repeat(3,1fr)}.items-note{grid-template-columns:repeat(3,1fr)}}
@media (min-width:1024px){.items{grid-template-columns:repeat(3,1fr)}.hub-4{grid-template-columns:repeat(4,1fr)}}
@media (max-width:520px){.guide li{flex-direction:column;align-items:flex-start;gap:4px}}
@media (max-width:520px){.ptbl td:nth-child(2){white-space:normal}}

/* phương án mẫu: luôn có nhãn minh hoạ */
.case-pic{display:block;position:relative}
.tag-sample{position:absolute;left:10px;top:10px;background:var(--orange-btn);color:#fff;font-size:12px;font-weight:700;letter-spacing:.04em;padding:4px 9px;border-radius:4px}
.note-sample{background:#FFF7ED;border:1px solid #FDBA74;color:#7C2D12;padding:12px 14px;border-radius:8px;font-size:15px;max-width:760px}
.g-fig{margin:0;position:relative}.g-fig figcaption{position:absolute;right:6px;bottom:6px;background:rgba(15,25,30,.72);color:#fff;font-size:10px;padding:3px 6px;border-radius:3px}