/* ============================================================ */
/* layout: front-end.blade.php */
/* ============================================================ */
body { margin:0; font-family:'Be Vietnam Pro', Helvetica, Arial, sans-serif; color:#1b2231; background:#ffffff; -webkit-font-smoothing:antialiased; }
a { color:#042863; text-decoration:none; }
a:hover { color:#E2AA18; text-decoration:none; }
.tk-item { position:relative; }
.tk-item > a { white-space:nowrap; color:#1b2231; font-size:14.5px; font-weight:500; padding:26px 20px; display:inline-flex; align-items:center; gap:7px; border-bottom:2px solid transparent; }
.tk-item > a:hover, .tk-item > a.active { color:#E2AA18; border-bottom-color:#E2AA18; }
.tk-sub { display:none; position:absolute; top:100%; left:0; min-width:250px; background:#fff; border:1px solid #e8ebf1; box-shadow:0 12px 28px rgba(4,40,99,.12); padding:8px 0; z-index:1040; }
.tk-item:hover .tk-sub { display:block; }
.tk-sub a { display:block; white-space:nowrap; padding:10px 20px; font-size:14px; color:#3c4557; }
.tk-sub a:hover { background:#fdf6e3; color:#E2AA18; }
.tk-sub-item { position:relative; }
.tk-has-sub2 { display:flex !important; justify-content:space-between; align-items:center; gap:12px; }
.tk-chevron-right { font-size:9px; opacity:.6; }
.tk-sub2 { display:none; position:absolute; left:100%; top:0; min-width:230px; background:#fff; border:1px solid #e8ebf1; box-shadow:0 12px 28px rgba(4,40,99,.12); padding:8px 0; z-index:1041; }
.tk-sub-item:hover .tk-sub2 { display:block; }
.tk-sub2 a { display:block; white-space:nowrap; padding:10px 20px; font-size:14px; color:#3c4557; }
.tk-sub2 a:hover { background:#fdf6e3; color:#E2AA18; }
.tk-foot a { color:#5d6677; font-size:14px; line-height:2.1; display:block; }
.tk-foot a:hover { color:#E2AA18; }
.tk-slide { position:absolute; inset:0; opacity:0; transition:opacity .7s ease; }
.tk-slide.on { opacity:1; }
.tk-dot { width:30px; height:3px; background:rgba(255,255,255,.45); border:0; padding:0; cursor:pointer; }
.tk-dot.on { background:#ffffff; }
#tkMobile a { display:block; padding:12px 24px; font-size:15px; color:#1b2231; border-bottom:1px solid #f1f4f9; }
#tkMobile a.m2 { padding-left:40px; font-size:14px; color:#3c4557; }
#tkMobile a.m3 { padding-left:56px; font-size:13.5px; color:#5d6677; }
#tkMobile a:hover { color:#E2AA18; background:#fdf6e3; }
#tkMobile .mgrp { padding:12px 24px 8px; font-size:12px; letter-spacing:2px; text-transform:uppercase; font-weight:700; color:#042863; background:#f4f7fb; }
#tkMobile .mgrp2 { padding:10px 24px 6px 40px; font-size:11px; letter-spacing:1.5px; text-transform:uppercase; font-weight:700; color:#5d6677; background:#eef1f7; }
.tk-row { display:flex; align-items:stretch; }
.tk-cat { display:block; flex:1 1 auto; text-align:left; background:none; border:0; padding:11px 16px; font-size:15px; color:#3c4557; border-left:3px solid transparent; margin-left:-1px; }
.tk-tog { flex:0 0 38px; background:none; border:0; border-left:0; color:#9aa3b2; font-size:10px; cursor:pointer; display:flex; align-items:center; justify-content:center; }
.tk-tog i { transition:transform .25s ease; }
.tk-grp.open > .tk-row > .tk-tog { color:#042863; }
.tk-grp.open > .tk-row > .tk-tog i { transform:rotate(90deg); }
.tk-tog:hover { color:#E2AA18; }
.tk-subs { display:none; }
.tk-grp.open > .tk-subs { display:block; }
.tk-cat.sub { padding-left:32px; font-size:14px; color:#6b7386; }
.tk-cat.sub3 { padding-left:50px; font-size:13.5px; color:#8a93a3; }
.tk-cat:hover { color:#E2AA18; border-left-color:#E2AA18; }
.tk-cat.on { color:#E2AA18; font-weight:600; border-left-color:#E2AA18; }
.tk-brand { flex:0 0 auto; width:170px; height:88px; border:1px solid #e8ebf1; background:#fff; display:flex; align-items:center; justify-content:center; padding:16px 22px; overflow:hidden; border-radius:6px; transition:border-color .2s ease, box-shadow .2s ease; }
.tk-brand span { font-size:15px; font-weight:600; color:#8a93a3; text-align:center; letter-spacing:.3px; transition:color .2s ease; }
.tk-brand img { width:100%; height:100%; object-fit:contain; display:block; }
.tk-brand:hover { border-color:#E2AA18; box-shadow:0 8px 20px rgba(4,40,99,.08); }
.tk-brand:hover span { color:#042863; }
.tk-track { animation: tkMarquee 95s linear infinite; }
#tkBrands:hover .tk-track { animation-play-state:paused; }
@keyframes tkMarquee { from { transform:translateX(0); } to { transform:translateX(-50%); } }
.tk-foot a.tk-soc, .tk-soc { width:38px; line-height:1; height:38px; border-radius:50%; display:flex; align-items:center; justify-content:center; color:#fff; font-size:17px; transition:transform .2s ease, box-shadow .2s ease; }
.tk-soc:hover { color:#fff; transform:translateY(-2px); box-shadow:0 6px 14px rgba(4,40,99,.22); }
.tk-soc.img { background:transparent; box-shadow:none; }
.tk-soc.img img { width:38px; height:38px; border-radius:50%; display:block; }
.float { position:fixed; right:18px; bottom:22px; z-index:1080; display:flex; flex-direction:column; gap:12px; }
.float > a, .float > button { width:48px; height:48px; border-radius:50%; border:0; display:flex; align-items:center; justify-content:center; color:#fff; font-size:20px; box-shadow:0 6px 18px rgba(4,40,99,.28); cursor:pointer; }
.float > a:hover, .float > button:hover { color:#fff; transform:translateY(-2px); }
.float > a { overflow:visible; background:transparent; box-shadow:none; }
.float > a img { width:48px; height:48px; border-radius:50%; display:block; box-shadow:0 6px 18px rgba(4,40,99,.28); }
.float .ph { background:#38D366; animation: tkRing 3.2s ease-in-out infinite; }
.float .za { animation: tkShakeZa 4.6s ease-in-out infinite; }
.float .ms { animation: tkShakeMs 4.6s ease-in-out 1.4s infinite; }
.float .totop { background:#0e1729; opacity:0; pointer-events:none; transition:opacity .25s ease, background .2s ease; }
.float .totop.show { opacity:1; pointer-events:auto; }
.float .totop:hover { background:#E2AA18; color:#0e1729; }
@keyframes tkRing {
  0%,60%,100% { transform:rotate(0deg); box-shadow:0 0 0 0 rgba(56,211,102,.5); }
  10% { transform:rotate(-16deg); } 20% { transform:rotate(14deg); }
  30% { transform:rotate(-12deg); } 40% { transform:rotate(10deg); } 50% { transform:rotate(0deg); }
  70% { box-shadow:0 0 0 16px rgba(56,211,102,0); }
}
@keyframes tkShakeZa {
  0%,55%,100% { transform:translateY(0) rotate(0deg); filter:none; }
  62% { transform:translateY(-3px) rotate(-9deg); filter:drop-shadow(0 0 8px rgba(0,104,255,.85)); }
  70% { transform:translateY(0) rotate(8deg); filter:drop-shadow(0 0 11px rgba(0,104,255,.95)); }
  78% { transform:translateY(-2px) rotate(-6deg); filter:drop-shadow(0 0 8px rgba(0,104,255,.85)); }
  86% { transform:translateY(0) rotate(4deg); filter:drop-shadow(0 0 4px rgba(0,104,255,.5)); }
}
@keyframes tkShakeMs {
  0%,55%,100% { transform:translateY(0) rotate(0deg); filter:none; }
  62% { transform:translateY(-3px) rotate(-9deg); filter:drop-shadow(0 0 8px rgba(167,0,255,.8)); }
  70% { transform:translateY(0) rotate(8deg); filter:drop-shadow(0 0 11px rgba(0,132,255,.95)); }
  78% { transform:translateY(-2px) rotate(-6deg); filter:drop-shadow(0 0 8px rgba(255,54,110,.8)); }
  86% { transform:translateY(0) rotate(4deg); filter:drop-shadow(0 0 4px rgba(0,132,255,.5)); }
}
.hv1:hover,.hv2:hover,.hv3:hover,.hv4:hover,.hv5:hover { background:#E2AA18 !important; color:#0e1729 !important; }
@media (max-width: 1399px){ .tk-item > a { padding:26px 13px !important; font-size:14px !important; } }
@media (max-width: 1199px){
  header img { height:50px !important; }
  .tk-catwrap { grid-template-columns:1fr !important; gap:26px !important; }
  .tk-catwrap aside { border-left:0 !important; border-top:1px solid #e2e7f0; }
  .tk-dtop { grid-template-columns:1fr !important; }
  .tk-rrail { grid-auto-columns:calc((100% - 44px)/3) !important; }
}
@media (max-width: 991px){
  main { padding-top:28px !important; padding-bottom:52px !important; }
  #tkBanner { height:420px !important; }
  #tkBanner h1 { font-size:36px !important; }
  #tkBanner p { font-size:15px !important; }
  .tk-plist { grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
  .tk-nlist { grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
  .tk-cards { grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
  .tk-inds { grid-template-columns:repeat(3,minmax(0,1fr)) !important; }
  .tk-techs { grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
  .tk-cwrap { grid-template-columns:1fr !important; }
  .tk-rrail { grid-auto-columns:calc((100% - 22px)/2) !important; }
  .tk-thumbs { grid-template-columns:repeat(6,minmax(0,1fr)) !important; }
  .tk-art { padding:24px 20px 30px !important; }
  .tk-art h1 { font-size:24px !important; }
}
@media (max-width: 767px){
  header img { height:42px !important; }
  #tkBanner { height:340px !important; }
  #tkBanner h1 { font-size:26px !important; line-height:1.22 !important; }
  #tkBanner p { font-size:14px !important; margin-bottom:18px !important; }
  #tkPrev, #tkNext { display:none !important; }
  .tk-fgrid { grid-template-columns:1fr !important; gap:26px !important; }
  .tk-plist { grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
  .tk-nlist, .tk-cards { grid-template-columns:minmax(0,1fr) !important; }
  .tk-pcard { overflow:hidden !important; }
  .tk-pcard h3 { font-size:15px !important; word-break:break-word !important; }
  .tk-pbody { padding:12px 14px 18px !important; }
  .tk-inds { grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
  .tk-techs { grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:14px !important; }
  .tk-main-index h2,.tk-why h2,.tk-news-section .tk-section-title,.tk-partners h2,.tk-tech-section--home h2,.tk-about h2,.tk-tech-section h2,.tk-about-title { font-size:18px !important; }
  .tk-why-grid { grid-template-columns:repeat(1,1fr) !important; gap:16px !important; }
  .tk-why-card { padding:20px 18px !important; }
  .tk-about { grid-template-columns:1fr !important; gap:30px !important; }
  .tk-stats { grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:24px 0 !important; }
  .tk-stats > div { border-left:0 !important; }
  .tk-dinfo h1 { font-size:22px !important; }
  .tk-dinfo .tk-cta, .tk-cta { grid-template-columns:1fr !important; flex-direction:column !important; }
  .tk-cta > a { min-width:0 !important; width:100% !important; }
  .tk-cpair { grid-template-columns:1fr !important; gap:0 !important; }
  .tk-tab { padding:12px 14px !important; font-size:12.5px !important; }
  .tk-panel { padding:20px 18px 26px !important; }
  .tk-spec th { width:42% !important; }
  .tk-rrail { grid-auto-columns:82% !important; }
  .tk-thumbs { grid-template-columns:repeat(3,minmax(0,1fr)) !important; }
  .tk-prevnext { grid-template-columns:1fr !important; }
  .tk-prevnext a.nx { text-align:left !important; }
  .float > a, .float > button, .float > a img { width:44px !important; height:44px !important; }
  .float { right:12px !important; bottom:14px !important; gap:10px !important; }
  .tk-brand { width:130px !important; height:72px !important; }
}
@media (max-width: 479px){
  #tkBanner { height:300px !important; }
  #tkBanner h1 { font-size:22px !important; }
  .tk-plist { grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
  .tk-inds { grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
  .tk-techs { grid-template-columns:1fr !important; }
  .tk-tech { aspect-ratio:auto !important; padding:16px 16px 22px !important; }
  .tk-tech-ic { width:72px !important; height:72px !important; margin-top:16px !important; }
  .tk-tech-halo { width:90px !important; height:90px !important; }
  .tk-tech-ic::before { width:46px !important; height:46px !important; }
  .tk-tech h3 { font-size:15px !important; margin:10px 0 0 !important; }
  .tk-tech p { font-size:12px !important; margin:4px 0 0 !important; }
  .tk-qform .body, .tk-cform .body { padding:20px 18px 24px !important; }
}
/* ============================================================ */
/* index.css */
/* ============================================================ */
.tk-section-title { font-size:18px; font-weight:700; color:#042863; margin:0 0 20px; padding-left:14px; border-left:4px solid #042863; line-height:1.3; }
.tk-cat-section { margin-top:40px; }
.tk-cat-section-head { display:flex; align-items:center; justify-content:space-between; margin-bottom:20px; }
.tk-cat-section-head .tk-section-title { margin-bottom:0; }
.tk-section-more { font-size:13px; font-weight:600; color:#042863; text-decoration:none; display:flex; align-items:center; gap:6px; white-space:nowrap; flex-shrink:0; transition:color .2s; }
.tk-section-more:hover { color:#E2AA18; }
.tk-cards { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; }
.tk-fcard { position:relative; display:flex; flex-direction:column; background:#fff; border:1px solid #e8ebf1; overflow:hidden; text-decoration:none; transition:border-color .3s ease, box-shadow .3s ease, transform .3s ease; }
.tk-fcard::after { content:""; position:absolute; left:0; top:0; width:100%; height:3px; background:#E2AA18; transform:scaleX(0); transform-origin:left; transition:transform .35s ease; }
.tk-fcard:hover { border-color:#dfe4ec; box-shadow:0 22px 48px rgba(4,40,99,.14); transform:translateY(-5px); }
.tk-fcard:hover::after { transform:scaleX(1); }
.tk-fcard .img { position:relative; width:100%; aspect-ratio:1/1; min-height:0; overflow:hidden; background:#fff; }
.tk-fcard .img img { position:absolute; inset:0; width:100%; height:100%; object-fit:contain; padding:12%; display:block; transition:transform .45s ease; }
.tk-fcard:hover .img img { transform:scale(1.07); }
.tk-fcard .cap { padding:22px 24px 26px; display:flex; flex-direction:column; gap:7px; flex:1 1 auto; }
.tk-fcard h3 { font-size:19px; font-weight:700; color:#0e1729; margin:0; transition:color .25s ease; }
.tk-fcard:hover h3 { color:#042863; }
.tk-fcard p { font-size:14px; color:#5d6677; margin:0; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.tk-fcard .go { margin-top:auto; padding-top:12px; font-size:14px; font-weight:600; color:#042863; display:inline-flex; align-items:center; gap:8px; opacity:.55; transition:opacity .25s ease, gap .25s ease, color .25s ease; }
.tk-fcard:hover .go { opacity:1; gap:13px; color:#E2AA18; }
@media (max-width: 991px){ .tk-cards { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width: 575px){ .tk-cards { grid-template-columns:1fr; } }
@media (max-width: 767px){ .tk-bstrip { height:104px; } }
@media (max-width: 1199px){
    .tk-catwrap { grid-template-columns:1fr !important; gap:24px !important; }
    aside { border-left:0 !important; border-top:1px solid #e2e7f0; }
  }
@media (max-width: 991px){
    #tkBanner { height:420px !important; }
    #tkBanner h1 { font-size:36px !important; }
    #tkBanner p { font-size:15px !important; }
    main { padding:44px 0 !important; }
  }
@media (max-width: 767px){
    header img { height:44px !important; }
    #tkBanner { height:360px !important; }
    #tkBanner h1 { font-size:27px !important; line-height:1.2 !important; }
    #tkBanner p { font-size:14px !important; margin-bottom:18px !important; }
    #tkPrev, #tkNext { display:none !important; }
    .tk-brand { width:130px; height:72px; }
    .float > a, .float > button, .float > a img { width:44px !important; height:44px !important; }
    .float { right:12px; bottom:14px; gap:10px; }
  }
@media (max-width: 479px){
    #tkBanner { height:320px !important; }
    #tkBanner h1 { font-size:23px !important; }
  }
@media (max-width: 767px){ .tk-fgrid { grid-template-columns:1fr !important; gap:26px !important; } }
/* === responsive chung === */
@media (max-width: 991px){
    main { padding-top:28px !important; padding-bottom:52px !important; }
    .tk-plist { grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
    .tk-nlist { grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
    .tk-cards { grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
    .tk-inds { grid-template-columns:repeat(3,minmax(0,1fr)) !important; }
    .tk-techs { grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
    .tk-cwrap { grid-template-columns:1fr !important; }
    .tk-rrail { grid-auto-columns:calc((100% - 22px)/2) !important; }
    .tk-thumbs { grid-template-columns:repeat(6,minmax(0,1fr)) !important; }
    .tk-art { padding:24px 20px 30px !important; }
    .tk-art h1 { font-size:24px !important; }
  }
.hv1:hover { background:#E2AA18 !important; color:#0e1729 !important; }
.hv2:hover { background:#E2AA18 !important; color:#0e1729 !important; }
.hv3:hover { background:#E2AA18 !important; color:#0e1729 !important; }
.hv4:hover { background:#E2AA18 !important; color:#0e1729 !important; }
.hv5:hover { background:#E2AA18 !important; color:#0e1729 !important; }
/* ============================================================ */
/* chi-tiet-bai-viet.css */
/* ============================================================ */
.tk-slide { position:absolute; inset:0; opacity:0; transition:opacity .7s ease; display:flex; align-items:center; }
.tk-tog { flex:0 0 38px; background:none; border:0; color:#9aa3b2; font-size:10px; cursor:pointer; display:flex; align-items:center; justify-content:center; }
.tk-brand { flex:0 0 auto; width:190px; height:96px; border:1px solid #e8ebf1; background:#fff; display:flex; align-items:center; justify-content:center; padding:0 18px; transition:border-color .2s ease, box-shadow .2s ease; }
@media (max-width: 767px){
    header img { height:44px !important; }
    #tkBanner { height:360px !important; }
    #tkBanner h1 { font-size:27px !important; line-height:1.2 !important; }
    #tkBanner p { font-size:14px !important; margin-bottom:18px !important; }
    #tkPrev, #tkNext { display:none !important; }
    .tk-brand { width:140px; height:78px; }
    .tk-cards > div > div:last-child { padding:18px 18px 22px !important; }
    .float > a, .float > button, .float > a img { width:44px !important; height:44px !important; }
    .float { right:12px; bottom:14px; gap:10px; }
  }
.tk-cat-banner { width:100%; height:auto; display:block; border-radius:8px; margin-bottom:20px; }
.tk-indwrap { position:relative; margin-bottom:34px; }
.tk-inds { display:grid; grid-auto-flow:column; grid-auto-columns:calc((100% - 80px)/6); gap:16px; overflow-x:auto; scroll-behavior:smooth; scrollbar-width:none; }
.tk-inds::-webkit-scrollbar { display:none; }
.tk-inav { position:absolute; top:38%; transform:translateY(-50%); width:36px; height:36px; border-radius:50%; border:1px solid #ececec; background:#fff; color:#042863; font-size:13px; display:none; align-items:center; justify-content:center; cursor:pointer; box-shadow:0 6px 16px rgba(4,40,99,.12); z-index:3; }
.tk-inav:hover { background:#E2AA18; border-color:#E2AA18; color:#0e1729; }
.tk-inav.prev { left:-14px; }
.tk-inav.next { right:-14px; }
.tk-inav.show { display:flex; }
.tk-ind { display:flex; flex-direction:column; align-items:center; gap:10px; text-decoration:none; }
.tk-ind-img { width:100%; background:#fff; border:1px solid #ececec; display:flex; align-items:center; justify-content:center; overflow:hidden; transition:border-color .25s ease, box-shadow .25s ease; }
.tk-ind-img span { font-family:ui-monospace,Menlo,monospace; font-size:11px; color:#9aa3b2; text-align:center; padding:0 6px; }
.tk-ind-img img { width:100%; height:auto; padding:10%; display:block; transition:transform .3s ease; }
.tk-ind:hover .tk-ind-img { border-color:#E2AA18; box-shadow:0 10px 24px rgba(4,40,99,.08); }
.tk-ind:hover .tk-ind-img img { transform:scale(1.06); }
.tk-ind.on .tk-ind-img { border-color:#ececec; }
.tk-ind-name { font-size:14px; color:#3c4557; text-align:center; }
.tk-ind:hover .tk-ind-name { color:#E2AA18; }
.tk-ind.on .tk-ind-name { color:#3c4557; }
@media (max-width: 991px){ .tk-inds { grid-auto-columns:calc((100% - 32px)/3); } }
@media (max-width: 479px){ .tk-inds { grid-auto-columns:calc((100% - 16px)/2); } }
.tk-plist { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; }
.tk-pcard { display:flex; flex-direction:column; background:#fff; border:1px solid #eaeef4; text-decoration:none; transition:box-shadow .25s ease, transform .25s ease, border-color .25s ease; }
.tk-pcard:hover { border-color:#E2AA18; box-shadow:0 16px 36px rgba(4,40,99,.10); transform:translateY(-3px); }
.tk-pimg { aspect-ratio:1/1; background:#fff; display:flex; align-items:center; justify-content:center; }
.tk-pimg img { width:100%; height:100%; object-fit:contain; padding:14%; display:block; transition:transform .35s ease; }
.tk-pcard:hover .tk-pimg img { transform:scale(1.05); }
.tk-pbody { padding:20px 24px 28px; display:flex; flex-direction:column; gap:7px; }
.tk-pcard h3 { font-size:19px; font-weight:700; color:#0e1729; margin:0; transition:color .2s ease; }
.tk-pcard:hover h3 { color:#E2AA18; }
.tk-pcard p { font-size:14px; color:#5d6677; margin:0; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.tk-page-list { display:flex; align-items:center; gap:6px; flex-wrap:wrap; justify-content:center; }
.tk-page { width:38px; height:38px; border:1px solid #e2e6ee; background:#fff; display:flex; align-items:center; justify-content:center; font-size:14px; font-weight:600; color:#3c4557; text-decoration:none; transition:border-color .2s, color .2s, background .2s; border-radius:4px; flex-shrink:0; }
.tk-page:hover { border-color:#E2AA18; color:#E2AA18; }
.tk-page.on { background:#042863; border-color:#042863; color:#fff; }
.tk-page.disabled { color:#c0c7d2; cursor:default; pointer-events:none; }
.tk-page.dots { border-color:transparent; background:transparent; cursor:default; pointer-events:none; }
@media (max-width: 1199px){ .tk-plist { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media (max-width: 991px){ .tk-plist { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width: 575px){ .tk-plist { grid-template-columns:1fr; } }
.tk-art { background:#fff; border:1px solid #eaeef4; padding:38px 44px 44px; }
.tk-art h1 { font-size:31px; font-weight:700; line-height:1.32; color:#0e1729; margin:0 0 14px; text-wrap:pretty; }
.tk-ameta { display:flex; flex-wrap:wrap; gap:18px; font-size:13.5px; color:#8a93a3; padding-bottom:22px; border-bottom:1px solid #eef1f6; margin-bottom:24px; }
.tk-ameta i { margin-right:6px; }
.tk-art p { font-size:15.5px; line-height:1.95; color:#3c4557; margin:0 0 18px; text-wrap:pretty; }
.tk-art p.lead { font-size:16.5px; color:#1b2231; }
.tk-art h2 { font-size:20px; font-weight:700; color:#042863; margin:30px 0 12px; }
.tk-art figure { margin:26px 0; }
.tk-art figure img { width:100%; display:block; border:1px solid #eef1f6; background:#fff; }
.tk-tags { display:flex; flex-wrap:wrap; align-items:center; gap:10px; margin-top:34px; font-size:14px; color:#8a93a3; }
.tk-tags a { border:1px solid #e2e6ee; padding:6px 14px; font-size:13.5px; color:#3c4557; border-radius:999px; }
.tk-tags a:hover { border-color:#E2AA18; color:#E2AA18; }
.tk-prevnext { display:grid; grid-template-columns:1fr 1fr; gap:16px; margin-top:34px; padding-top:26px; border-top:1px solid #eef1f6; }
.tk-prevnext a { display:flex; flex-direction:column; gap:6px; text-decoration:none; }
.tk-prevnext a.nx { text-align:right; }
.tk-prevnext span { font-size:13px; color:#8a93a3; }
.tk-prevnext strong { font-size:15px; font-weight:600; color:#042863; line-height:1.5; }
.tk-prevnext a:hover strong { color:#E2AA18; }
.tk-recwrap { margin-top:26px; padding:18px 16px 6px; border-top:1px solid #e2e7f0; }
.tk-rechead { font-size:13px; font-weight:700; letter-spacing:1.4px; text-transform:uppercase; color:#042863; margin:0 0 14px; }
.tk-rec { display:flex; gap:11px; padding:9px 0; text-decoration:none; }
.tk-recimg { flex:0 0 56px; height:56px; border:1px solid #ececec; background:#fff; }
.tk-recimg img { width:100%; height:100%; object-fit:contain; padding:6px; display:block; }
.tk-rec h4 { font-size:13.5px; font-weight:600; color:#3c4557; margin:0 0 4px; line-height:1.45; }
.tk-rec:hover h4 { color:#E2AA18; }
.tk-rec span { font-size:12px; color:#9aa3b2; }
@media (max-width: 991px){ .tk-art { padding:24px 20px 30px; } .tk-art h1 { font-size:24px; } .tk-prevnext { grid-template-columns:1fr; } .tk-prevnext a.nx { text-align:left; } }
/* === responsive chung === */
/* ============================================================ */
/* chi-tiet-san-pham.css */
/* ============================================================ */
.tk-dtop { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:44px; background:#fff; border:1px solid #eef1f6; padding:28px; margin-bottom:34px; }
.tk-gmain { position:relative; border:1px solid #eef1f6; background:#fff; aspect-ratio:1/1; display:flex; align-items:center; justify-content:center; }
.tk-gmain img { width:100%; height:100%; object-fit:contain; padding:8%; display:block; }
#tkZoom { position:absolute; top:14px; right:14px; width:40px; height:40px; border-radius:50%; border:1px solid #ececec; background:#fff; color:#5d6677; cursor:pointer; }
#tkZoom:hover { border-color:#E2AA18; color:#E2AA18; }
.tk-thumbs { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:10px; margin-top:14px; }
.tk-thumbs::-webkit-scrollbar { display:none; }
.tk-thumb { width:100%; aspect-ratio:1/1; border:1px solid #ececec; background:#fff; padding:6px; cursor:pointer; display:flex; align-items:center; justify-content:center; }
.tk-thumb img { width:100%; height:100%; object-fit:contain; }
.tk-thumb.on { border-color:#042863; }
.tk-thumb:hover { border-color:#E2AA18; }
.tk-thumb.video { flex-direction:column; gap:4px; color:#5d6677; font-size:11px; }
.tk-thumb.video i { font-size:22px; color:#ff0000; }
.tk-dinfo h1 { font-size:29px; font-weight:700; line-height:1.3; margin:0 0 16px; color:#0e1729; }
.tk-feat h2 { font-size:18px; font-weight:700; color:#042863; margin:0 0 12px; }
.tk-model { font-size:15px; color:#5d6677; margin:-6px 0 18px; }
.tk-model strong { color:#042863; font-weight:700; }
.tk-feat ul { margin:0; padding:0; list-style:none; display:flex; flex-direction:column; gap:9px; }
.tk-feat li { font-size:15px; line-height:1.6; color:#3c4557; padding-left:20px; position:relative; text-wrap:pretty; }
.tk-feat li::before { content:""; position:absolute; left:0; top:9px; width:7px; height:7px; border-radius:50%; background:#E2AA18; }
.tk-feat p { margin-bottom: 0; }
.tk-rate { display:flex; flex-wrap:wrap; align-items:center; gap:12px; font-size:13px; color:#8a93a3; margin-bottom:16px; }
.tk-rate .stars { color:#E2AA18; letter-spacing:1px; }
.tk-rate .sku { padding-left:12px; border-left:1px solid #e6eaf1; }
.tk-price { font-size:30px; font-weight:700; color:#042863; margin-bottom:24px; }
.tk-opt { margin-bottom:20px; }
.tk-opt .lbl { font-size:14px; color:#5d6677; margin-bottom:9px; }
.tk-opt .lbl strong { color:#0e1729; }
.tk-opt .row { display:flex; flex-wrap:wrap; gap:10px; }
.tk-chip { border:1px solid #e2e6ee; background:#fff; padding:10px 18px; font-size:14px; color:#3c4557; cursor:pointer; border-radius:4px; transition:all .2s ease; }
.tk-chip:hover { border-color:#E2AA18; color:#E2AA18; }
.tk-chip.on { border-color:#042863; color:#042863; background:#f3f7ff; font-weight:600; }
.tk-cta { display:flex; flex-wrap:wrap; justify-content:center; gap:14px; margin-top:34px; }
.tk-cta > a { min-width:250px; }
.tk-dinfo .tk-cta { display:grid; grid-template-columns:1fr 1fr; margin-top:32px; }
.tk-dinfo .tk-cta > a { min-width:0; }
.tk-cta .primary { background:#042863; color:#fff; font-weight:700; padding:16px 20px; font-size:15px; letter-spacing:.3px; text-align:center; }
.tk-cta .primary:hover { background:#E2AA18; color:#0e1729; }
.tk-cta .ghost { border:1px solid #042863; color:#042863; font-weight:700; padding:16px 20px; font-size:15px; display:flex; align-items:center; justify-content:center; gap:9px; }
.tk-cta .ghost:hover { border-color:#E2AA18; color:#E2AA18; }
.tk-tabbar { display:flex; gap:4px; }
.tk-tab { border:1px solid #eef1f6; border-bottom:0; background:#f3f6fb; color:#5d6677; font-size:14px; font-weight:700; letter-spacing:.6px; padding:14px 28px; cursor:pointer; }
.tk-tab.on { background:#fff; color:#042863; }
.tk-panel { display:none; background:#fff; border:1px solid #eef1f6; padding:34px 38px 42px; overflow-x:auto; }
.tk-panel.on { display:block; }
.tk-panel p { font-size:15px; line-height:1.95; color:#3c4557; margin:0 0 18px; text-wrap:pretty; }
.tk-panel h3 { font-size:17px; font-weight:700; color:#042863; margin:26px 0 10px; }
.tk-panel figure { margin:26px 0; position:relative; }
.tk-panel figure img { width:100%; display:block; border:1px solid #eef1f6; }
.tk-panel figcaption { position:absolute; top:12px; left:16px; font-size:13px; font-weight:700; color:#E2AA18; letter-spacing:.5px; }
.tk-panel table { width:100%; border-collapse:collapse; margin:16px 0; table-layout:auto; overflow-x:auto; display:block; }
.tk-panel table td, .tk-panel table th { border:1px solid #ced4da; padding:10px 14px; font-size:14.5px; vertical-align:top; text-align:left; min-width:80px; }
.tk-panel table th { background:#f6f8fc; font-weight:600; color:#042863; }
.tk-panel table tr:nth-child(even) td { background:#fafbfd; }
.tk-panel table p { margin:0; font-size:14.5px; }
.tk-spec { width:100%; border-collapse:collapse; }
.tk-spec th, .tk-spec td { text-align:left; font-size:14.5px; padding:13px 16px; border:1px solid #eef1f6; }
.tk-spec th { width:34%; background:#f6f8fc; color:#3c4557; font-weight:600; }
.tk-spec td { color:#1b2231; word-break:break-word; }
@media (max-width: 991px){ .tk-dtop { grid-template-columns:1fr; gap:28px; padding:18px; } .tk-dinfo h1 { font-size:23px; } .tk-price { font-size:25px; } .tk-panel { padding:22px 20px 28px; } .tk-tab { padding:12px 18px; font-size:13px; } }
.tk-rel { margin-top:48px; }
.tk-relhead { display:flex; align-items:center; gap:16px; margin-bottom:20px; }
.tk-relhead h2 { font-size:26px; font-weight:700; margin:0; color:#0e1729; }
.tk-relnav { margin-left:auto; display:flex; gap:8px; }
.tk-relnav button { width:38px; height:38px; border-radius:50%; border:1px solid #e2e6ee; background:#fff; color:#042863; font-size:13px; cursor:pointer; transition:all .2s ease; }
.tk-relnav button:hover { background:#E2AA18; border-color:#E2AA18; color:#0e1729; }
.tk-rrail { display:grid; grid-auto-flow:column; grid-auto-columns:calc((100% - 66px)/4); gap:22px; overflow-x:auto; scroll-behavior:smooth; scrollbar-width:none; padding-bottom:4px; }
.tk-rrail::-webkit-scrollbar { display:none; }
.tk-rcard { background:#fff; border:1px solid #eaeef4; padding-bottom:22px; text-decoration:none; transition:box-shadow .25s ease, transform .25s ease, border-color .25s ease; }
.tk-rcard:hover { border-color:#E2AA18; box-shadow:0 16px 36px rgba(4,40,99,.10); transform:translateY(-3px); }
.tk-rimg { aspect-ratio:1/1; background:#fff; display:flex; align-items:center; justify-content:center; }
.tk-rimg img { width:100%; height:100%; object-fit:contain; padding:14%; display:block; transition:transform .35s ease; }
.tk-rcard:hover .tk-rimg img { transform:scale(1.05); }
.tk-rcard h3 { font-size:17px; font-weight:700; color:#0e1729; margin:0 22px 6px; transition:color .2s ease; }
.tk-rcard:hover h3 { color:#E2AA18; }
.tk-rcard p { font-size:13.5px; color:#5d6677; margin:0 22px; }
@media (max-width: 991px){ .tk-rrail { grid-auto-columns:calc((100% - 22px)/2); } .tk-relhead h2 { font-size:21px; } }
@media (max-width: 575px){ .tk-rrail { grid-auto-columns:82%; } }
.tk-qform { width:100%; max-width:520px; background:#fff; border-radius:10px; overflow:hidden; box-shadow:0 30px 70px rgba(4,40,99,.3); }
.tk-qform .head { background:#042863; padding:20px 26px; display:flex; align-items:flex-start; gap:16px; }
.tk-qform .head h2 { font-size:20px; font-weight:700; color:#fff; margin:0 0 4px; }
.tk-qform .head p { font-size:13.5px; color:#c9d5ea; margin:0; }
.tk-qform .head button { margin-left:auto; background:none; border:0; color:#fff; font-size:19px; cursor:pointer; }
.tk-qform .head button:hover { color:#E2AA18; }
.tk-qform .body { padding:24px 26px 28px; display:flex; flex-direction:column; gap:16px; max-height:70vh; overflow:auto; }
.tk-qform label { display:flex; flex-direction:column; gap:7px; font-size:14px; font-weight:600; color:#3c4557; }
.tk-qform .t { white-space:nowrap; }
.tk-qform .t span { color:#d64545; }
.tk-qform input, .tk-qform textarea { border:1px solid #e2e6ee; padding:12px 15px; font-size:14.5px; font-family:inherit; font-weight:400; color:#1b2231; border-radius:8px; outline:none; }
.tk-qform input:focus, .tk-qform textarea:focus { border-color:#042863; }
.tk-qform input[readonly] { background:#f6f8fc; color:#5d6677; }
.tk-qform textarea { resize:vertical; }
.tk-qform .body > button { background:#042863; color:#fff; border:0; font-weight:700; font-size:15px; padding:15px; border-radius:8px; cursor:pointer; transition:background .2s ease, color .2s ease; }
.tk-qform .body > button:hover { background:#E2AA18; color:#0e1729; }
.tk-toast { pointer-events:auto; display:flex; align-items:center; gap:12px; background:#fff; border-left:4px solid #1f9d55; box-shadow:0 14px 34px rgba(4,40,99,.18); padding:15px 20px; min-width:300px; border-radius:8px; animation:tkToastIn .3s ease; }
.tk-toast i { color:#1f9d55; font-size:18px; }
.tk-toast strong { display:block; font-size:14.5px; color:#0e1729; }
.tk-toast span { font-size:13px; color:#5d6677; }
.tk-toast.out { animation:tkToastOut .3s ease forwards; }
@keyframes tkToastIn { from { opacity:0; transform:translateX(24px); } to { opacity:1; transform:none; } }
@keyframes tkToastOut { to { opacity:0; transform:translateX(24px); } }
.tk-lbnav { position:absolute; top:50%; transform:translateY(-50%); width:46px; height:46px; border:0; border-radius:50%; background:rgba(255,255,255,.12); color:#fff; font-size:18px; cursor:pointer; }
.tk-lbnav:hover { background:#E2AA18; color:#0e1729; }
@media (max-width: 767px){ #tkLb > div:nth-child(2) { padding:0 12px; } .tk-lbnav { width:38px; height:38px; font-size:15px; } }
/* === responsive chung === */
/* ============================================================ */
/* san-pham.css */
/* ============================================================ */
/* === responsive chung === */
@media (max-width: 767px){
    header img { height:42px !important; }
    #tkBanner { height:340px !important; }
    main + div h1, header + div h1 { font-size:27px !important; }
    #tkBanner h1 { font-size:26px !important; line-height:1.22 !important; }
    #tkBanner p { font-size:14px !important; margin-bottom:18px !important; }
    #tkPrev, #tkNext { display:none !important; }
    .tk-fgrid { grid-template-columns:1fr !important; gap:26px !important; }
    .tk-plist, .tk-nlist, .tk-cards { grid-template-columns:1fr !important; }
    .tk-inds { grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
    .tk-techs { grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:14px !important; }
    .tk-about { grid-template-columns:1fr !important; gap:30px !important; }
    .tk-stats { grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:24px 0 !important; }
    .tk-stats > div { border-left:0 !important; }
    .tk-dinfo h1 { font-size:22px !important; }
    .tk-dinfo .tk-cta, .tk-cta { grid-template-columns:1fr !important; flex-direction:column !important; }
    .tk-cta > a { min-width:0 !important; width:100% !important; }
    .tk-cpair { grid-template-columns:1fr !important; gap:0 !important; }
    .tk-tab { padding:12px 14px !important; font-size:12.5px !important; }
    .tk-panel { padding:20px 18px 26px !important; }
    .tk-spec th { width:42% !important; }
    .tk-rrail { grid-auto-columns:82% !important; }
    .tk-thumbs { grid-template-columns:repeat(3,minmax(0,1fr)) !important; }
    .tk-prevnext { grid-template-columns:1fr !important; }
    .tk-prevnext a.nx { text-align:left !important; }
    .float > a, .float > button, .float > a img { width:44px !important; height:44px !important; }
    .float { right:12px !important; bottom:14px !important; gap:10px !important; }
    .tk-brand { width:130px !important; height:72px !important; }
  }
/* ============================================================ */
/* tin-tuc.css */
/* ============================================================ */
.tk-nlist { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; }
.tk-ncard { background:#fff; border:1px solid #eaeef4; display:flex; flex-direction:column; text-decoration:none; transition:box-shadow .25s ease, transform .25s ease, border-color .25s ease; }
.tk-ncard:hover { border-color:#E2AA18; box-shadow:0 16px 36px rgba(4,40,99,.10); transform:translateY(-3px); }
.tk-nimg { aspect-ratio:16/10; background:#fff; overflow:hidden; }
.tk-nimg img { width:100%; height:100%; object-fit:contain; padding:10%; display:block; transition:transform .35s ease; }
.tk-ncard:hover .tk-nimg img { transform:scale(1.05); }
.tk-nbody { padding:20px 24px 26px; display:flex; flex-direction:column; gap:9px; flex:1 1 auto; }
.tk-ndate { font-size:13px; color:#8a93a3; display:flex; align-items:center; gap:7px; }
.tk-ncard h3 { font-size:18px; font-weight:700; color:#0e1729; margin:0; line-height:1.45; transition:color .2s ease; }
.tk-ncard:hover h3 { color:#E2AA18; }
.tk-ncard p { font-size:14px; line-height:1.75; color:#5d6677; margin:0; }
.tk-nmore { margin-top:auto; padding-top:8px; font-size:14px; font-weight:600; color:#042863; display:inline-flex; align-items:center; gap:8px; }
.tk-ncard:hover .tk-nmore { color:#E2AA18; }
@media (max-width: 991px){ .tk-nlist { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width: 575px){ .tk-nlist { grid-template-columns:1fr; } }
/* === responsive chung === */
/* ============================================================ */
/* ve-chung-toi.css */
/* ============================================================ */
@media (max-width: 991px){
    .tk-about { grid-template-columns:1fr !important; gap:36px !important; }
    .tk-about h2 { font-size:28px !important; }
    .tk-about > div:last-child { height:300px !important; }
  }
@media (max-width: 575px){
    .tk-stats { grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:26px 0; }
    .tk-stats > div:nth-child(odd) { border-left:0 !important; }
  }
.tk-techs { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:26px; }
.tk-tech { background:#fff; border-radius:10px; padding:0 24px; aspect-ratio:375/420; display:flex; flex-direction:column; align-items:center; justify-content:flex-start; gap:0; box-shadow:0 8px 26px rgba(4,40,99,.06); transition:background .3s ease, transform .3s ease, box-shadow .3s ease; cursor:pointer; }
.tk-tech-ic { width:120px; height:120px; margin-top:20%; position:relative; display:flex; align-items:center; justify-content:center; }
.tk-tech-halo { position:absolute; z-index:0; width:150px; height:150px; border-radius:50%; background:radial-gradient(circle at 50% 40%, #ffffff 52%, #f4f7fb 100%); box-shadow:0 10px 26px rgba(4,40,99,.07), 0 2px 6px rgba(4,40,99,.04); transition:opacity .3s ease; }
.tk-tech:hover .tk-tech-halo, .tk-tech.on .tk-tech-halo { opacity:0; }
.tk-tech-ic::before { content:""; position:absolute; z-index:1; width:78px; height:78px; border-radius:50%; border:1px solid #e4e7ef; background:radial-gradient(circle at 50% 40%, #fff, #f6f8fb); transition:border-color .3s ease, background .3s ease; }
.tk-tech-arc { position:absolute; z-index:2; inset:0; transform:rotate(0deg); transition:transform 1.6s cubic-bezier(.22,.61,.36,1); }
.tk-tech-arc svg { position:absolute; inset:0; width:100%; height:100%; overflow:visible; }
.tk-tech-arc circle { stroke:#E2AA18; transition:stroke .3s ease; }
.tk-tech-arc::after { content:""; position:absolute; top:-4px; left:50%; margin-left:-4.5px; width:9px; height:9px; border-radius:50%; background:#E2AA18; transition:background .3s ease; }
.tk-tech:hover .tk-tech-arc { transform:rotate(220deg); }
.tk-tech-ic img { position:absolute; z-index:3; transition:opacity .3s ease; max-width:100%; max-height:100%; }
.tk-tech-ic .ic { width:36px; height:36px; left:50%; top:50%; transform:translate(-50%,-50%); object-fit:contain; }
.tk-tech-ic .b { opacity:0; }
.tk-tech.on .tk-tech-ic .a { opacity:0; }
.tk-tech.on .tk-tech-ic .b { opacity:1; }
.tk-tech.on .tk-tech-ic::before { border-color:rgba(255,255,255,.28); background:rgba(255,255,255,.06); }
.tk-tech.on .tk-tech-arc circle { stroke:#fff; }
.tk-tech.on .tk-tech-arc::after { background:#E2AA18; }
.tk-tech h3 { font-size:19px; font-weight:700; margin:20% 0 0; text-align:center; color:#1b2231; letter-spacing:.2px; transition:color .3s ease; }
.tk-tech:hover { background:#042863; transform:translateY(-4px); box-shadow:0 20px 44px rgba(4,40,99,.28); }
.tk-tech:hover h3 { color:#fff; }
.tk-tech p { font-size:14px; color:#5d6677; text-align:center; margin:8px 0 0; line-height:1.6; transition:color .3s ease; }
.tk-tech:hover p { color:#fff; }
.tk-tech:hover .tk-tech-ic::before { border-color:rgba(255,255,255,.28); background:rgba(255,255,255,.06); }
.tk-tech:hover .tk-tech-arc circle { stroke:#fff; }
.tk-tech:hover .tk-tech-arc::after { background:#E2AA18; }
.tk-tech:hover .tk-tech-ic .a { opacity:0; }
.tk-tech:hover .tk-tech-ic .b { opacity:1; }
.tk-tech.on { background:#042863; box-shadow:0 20px 44px rgba(4,40,99,.28); }
.tk-tech.on h3 { color:#fff; }
@media (max-width: 991px){ .tk-techs { grid-template-columns:repeat(2,minmax(0,1fr)); } .tk-tech { aspect-ratio:375/400; } .tk-tech-ic { width:104px; height:104px; } .tk-tech-ic::before { width:68px; height:68px; } .tk-tech-halo { width:130px; height:130px; } }
@media (max-width: 575px){ .tk-techs { grid-template-columns:1fr; } }
/* === responsive chung === */
/* ============================================================ */
/* lien-he.css */
/* ============================================================ */
.tk-cwrap { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:52px; align-items:stretch; }
.tk-cinfo { display:flex; flex-direction:column; }
.tk-cinfo h2 { font-size:21px; font-weight:700; color:#0e1729; margin:0 0 26px; }
.tk-cpair { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.tk-cpair .tk-ci { margin-bottom:20px; min-width:0; }
.tk-cpair .tk-ci a, .tk-cpair .tk-ci .val { word-break:break-word; }
.tk-ci { display:flex; gap:16px; align-items:center; margin-bottom:20px; }
.tk-ci .ic { flex:0 0 44px; height:44px; border-radius:50%; background:#042863; color:#fff; display:flex; align-items:center; justify-content:center; font-size:17px; overflow:hidden; }
.tk-ci .ic img { width:44px; height:44px; border-radius:50%; display:block; }
.tk-ci .lbl { font-size:13.5px; color:#8a93a3; margin-bottom:3px; }
.tk-ci .val { font-size:15.5px; font-weight:600; color:#1b2231; }
.tk-ci a { font-size:15.5px; font-weight:700; color:#042863; }
.tk-ci a:hover { color:#E2AA18; }
.tk-cmap { margin-top:10px; border:1px solid #eaeef4; border-radius:10px; overflow:hidden; flex:1 1 auto; min-height:300px; }
.tk-cmap iframe { width:100%; height:100%; border:0; display:block; }
.tk-cform { border:1px solid #eaeef4; border-radius:10px; overflow:hidden; background:#fff; box-shadow:0 14px 34px rgba(4,40,99,.07); }
.tk-cform .head { background:#042863; padding:22px 28px; }
.tk-cform .head h2 { font-size:20px; font-weight:700; color:#fff; margin:0 0 5px; }
.tk-cform .head p { font-size:14px; color:#c9d5ea; margin:0; }
.tk-cform .body { padding:26px 28px 30px; display:flex; flex-direction:column; gap:18px; }
.tk-cform .row2 { display:grid; grid-template-columns:1fr 1fr; gap:18px; }
.tk-cform label { display:flex; flex-direction:column; gap:8px; font-size:14px; font-weight:600; color:#3c4557; min-width:0; }
.tk-cform label .t { white-space:nowrap; }
.tk-cform label .t span { color:#d64545; }
.tk-cform input, .tk-cform textarea { border:1px solid #e2e6ee; background:#fff; padding:13px 16px; font-size:14.5px; font-family:inherit; font-weight:400; color:#1b2231; border-radius:8px; outline:none; }
.tk-cform input:focus, .tk-cform textarea:focus { border-color:#042863; }
.tk-cform textarea { resize:vertical; }
.tk-cform button { background:#042863; color:#fff; border:0; font-weight:700; font-size:15px; padding:15px 20px; border-radius:8px; cursor:pointer; transition:background .2s ease, color .2s ease; }
.tk-cform button:hover { background:#E2AA18; color:#0e1729; }
@media (max-width: 991px){ .tk-cwrap { grid-template-columns:1fr; gap:34px; } .tk-cmap { min-height:280px; } .tk-cpair { grid-template-columns:1fr; gap:0; } .tk-cform .row2 { grid-template-columns:1fr; } }
/* === responsive chung === */
/* ============================================================ */
/* contact form validation */
/* ============================================================ */
.tk-err { display:none; color:#dc3545; font-size:12px; margin-top:4px; }
/* ============================================================ */
/* layout */
/* ============================================================ */
.tk-layout{min-height:100vh;display:flex;flex-direction:column}
#tkToast{position:fixed;top:22px;right:22px;z-index:1100;display:flex;flex-direction:column;gap:10px;pointer-events:none}

/* ============================================================ */
/* header */
/* ============================================================ */
.tk-header{position:sticky;top:0;z-index:1030;background:#fff;box-shadow:0 1px 0 rgba(4,40,99,.10)}
.tk-header-inner{max-width:1320px;margin:0 auto;display:flex;align-items:center;gap:18px;padding:0 24px}
.tk-logo{flex:0 0 auto;display:flex;align-items:center;padding:8px 0}
.tk-logo-img{height:60px;width:auto;display:block}
.tk-logo-text{font-size:20px;font-weight:700;color:#042863}
.tk-nav{align-items:stretch;margin:0 auto}
.tk-chevron{font-size:10px}
.tk-contact-bar{align-items:center;gap:18px;flex:0 1 auto;min-width:0}
.tk-search{display:flex;align-items:center;background:#fff;border:1px solid #e2e6ee;border-radius:999px;padding:3px 3px 3px 16px;flex:1 1 320px;min-width:180px}
.tk-search-input{border:0;outline:none;background:transparent;font-size:14px;width:100%;min-width:0;color:#1b2231}
.tk-search-btn{border:0;background:#042863;color:#fff;font-size:13px;font-weight:600;padding:7px 20px;border-radius:999px;white-space:nowrap}
.tk-contact-info{line-height:1.4;white-space:nowrap;flex:0 0 auto}
.tk-email{display:block;font-size:12px;color:#8a93a3;text-align:right}
.tk-phone{display:flex;align-items:center;gap:8px;font-size:18px;font-weight:700;color:#E2AA18}
.tk-phone-ic{font-size:12px;color:#8a93a3}
#tkBurger{margin-left:auto;background:none;border:0;font-size:20px;color:#042863;padding:8px}
#tkMobile{display:none;border-top:1px solid #e8ebf1;background:#fff;max-height:70vh;overflow:auto}
.tk-mob-top{padding:14px 24px;background:#f4f7fb;display:flex;flex-direction:column;gap:10px}
.tk-mob-search{display:flex;align-items:center;background:#fff;border:1px solid #e2e6ee;border-radius:999px;padding:3px 3px 3px 16px}
.tk-mob-search-btn{border:0;background:#042863;color:#fff;font-size:13px;font-weight:600;padding:7px 18px;border-radius:999px;white-space:nowrap}
.tk-mob-phone{display:flex;align-items:center;gap:8px;font-size:17px;font-weight:700;color:#E2AA18;border:0;padding:0}

/* ============================================================ */
/* footer */
/* ============================================================ */
.tk-foot{background:#fff;border-top:1px solid #e8ebf1;padding:56px 0 28px}
.tk-foot-inner{max-width:1320px;margin:0 auto;padding:0 24px}
.tk-fgrid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:36px}
.tk-foot-h{font-size:15px;font-weight:600;margin-bottom:14px;color:#042863}
.tk-foot-intro{font-size:14px;line-height:1.85;color:#5d6677;margin:0 0 16px;max-width:none}
.tk-foot-row{display:flex;gap:10px;font-size:14px;color:#5d6677;line-height:1.7;margin-bottom:8px}
.tk-foot-row:last-child{margin-bottom:0}
.tk-foot-ic{color:#042863;margin-top:4px}
.tk-foot-link{line-height:1.7;display:inline}
.tk-foot-arrow{font-size:11px;color:#9aa3b2;margin-right:9px}
.tk-foot-bottom{padding-top:24px;margin-top:12px;border-top:1px solid #eef1f7;font-size:13px;color:#8a93a3;line-height:2;text-align:center}

/* ============================================================ */
/* sidebar */
/* ============================================================ */
.tk-aside{border-left:1px solid #e2e7f0}

/* ============================================================ */
/* breadcrumb */
/* ============================================================ */
.tk-bc{background:#f6f8fc}
.tk-bc-inner{max-width:1320px;margin:0 auto;padding:32px 24px 22px;display:flex;flex-wrap:wrap;align-items:center;gap:10px;font-size:14px;color:#8a93a3}
.tk-bc-home-ic{margin-right:7px;font-size:13px}
.tk-bc-sep{font-size:9px}
.tk-bc-link{color:#8a93a3}
.tk-bc-cur{color:#1b2231}

/* ============================================================ */
/* main wrappers & containers */
/* ============================================================ */
.tk-main{flex:1 1 auto;background:#f6f8fc;padding:10px 0 72px}
.tk-main-index{flex:1 1 auto;background:#f6f8fc;padding:35px 0}
.tk-main-index h2{font-size:24px;font-weight:700;text-align:center;margin:0 0 32px;display:block;text-transform:uppercase}
.tk-main-index h2::after,.tk-why h2::after,.tk-about-title::after,.tk-tech-section--home h2::after,.tk-news-section .tk-section-title::after{content:'';display:block;width:100px;height:3px;background:#E2AA18;margin:10px auto 0;border-radius:2px}
.tk-container{max-width:1320px;margin:0 auto;padding:0 24px}
.tk-catwrap{max-width:1320px;margin:0 auto;padding:0 24px;display:grid;grid-template-columns:232px minmax(0,1fr);gap:36px;align-items:start}
.tk-catwrap.rev{grid-template-columns:minmax(0,1fr) 300px}

/* ============================================================ */
/* no-image placeholder */
/* ============================================================ */
.tk-noimg{width:100%;height:100%;background:#e8ebf1;display:flex;align-items:center;justify-content:center}
.tk-noimg .mdi,.tk-noimg .fas,.tk-noimg .fab{color:#b0b7c3;font-size:40px}
.tk-noimg.sm .mdi,.tk-noimg.sm .fas{font-size:18px;color:#adb5bd}

/* ============================================================ */
/* empty state & pagination */
/* ============================================================ */
.tk-empty{grid-column:1/-1;text-align:center;padding:64px 0;color:#8a93a3;font-size:15px}
.tk-pagination{display:flex;justify-content:center;margin-top:44px}

/* ============================================================ */
/* homepage banner */
/* ============================================================ */
#tkBanner{position:relative;height:520px;overflow:hidden;background:#0b1a33}
.tk-slide img{width:100%;height:100%;object-fit:cover;display:block}
.tk-slide-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,40,99,.86) 0%,rgba(4,40,99,.6) 46%,rgba(4,40,99,.08) 100%)}
.tk-slide-content{position:absolute;inset:0;display:flex;align-items:center}
.tk-slide-wrap{max-width:1320px;margin:0 auto;padding:0 24px;width:100%}
.tk-slide-inner{max-width:580px}
.tk-slide-sub{color:#E2AA18;font-size:13px;letter-spacing:3px;text-transform:uppercase;font-weight:600}
.tk-slide-h1{color:#fff;font-size:48px;font-weight:700;margin:14px 0 12px;line-height:1.16}
.tk-slide-desc{color:#dbe4f2;font-size:17px;margin-bottom:26px}
.tk-slide-cta{display:inline-block;background:#042863;border:1px solid rgba(255,255,255,.55);color:#fff;font-weight:600;padding:13px 32px;font-size:15px}
#tkDots{position:absolute;left:0;right:0;bottom:22px;display:flex;justify-content:center;gap:10px;z-index:5}
#tkPrev{position:absolute;left:24px;top:50%;transform:translateY(-50%);width:44px;height:44px;border:0;border-radius:50%;background:rgba(255,255,255,.18);color:#fff;z-index:5;cursor:pointer}
#tkNext{position:absolute;right:84px;top:50%;transform:translateY(-50%);width:44px;height:44px;border:0;border-radius:50%;background:rgba(255,255,255,.18);color:#fff;z-index:5;cursor:pointer}

/* ============================================================ */
/* partners section */
.tk-why{background-color:#042863;background-size:cover;background-position:center;background-repeat:no-repeat;padding:60px 0;border-top:1px solid #e8ebf1;position:relative}
.tk-why::before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,40,99,.86) 0%,rgba(4,40,99,.6) 46%,rgba(4,40,99,.08) 100%)}
.tk-why h2{font-size:24px;font-weight:700;text-align:center;margin:0 0 40px;color:#fff;position:relative;text-transform:uppercase}
.tk-why-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;position:relative}
.tk-why-card{background:#fff;border-radius:12px;padding:32px 28px}
.tk-why-card h3{font-size:18px;font-weight:700;color:#042863;margin:0 0 12px;text-transform:uppercase}
.tk-why-card p{font-size:15px;color:#5d6677;line-height:1.7;margin:0}
.tk-news-section{background:#f6f8fc;padding:35px 0;border-top:1px solid #e8ebf1}
.tk-news-section .tk-section-head{display:flex;align-items:center;justify-content:center;position:relative;margin-bottom:32px}
.tk-news-section .tk-section-title{font-size:24px;font-weight:700;color:#1a2340;margin:0;text-align:center;padding-left:0;border-left:none;text-transform:uppercase}
.tk-news-section .tk-section-more{position:absolute;right:0}
.tk-news-section .tk-section-more{font-size:14px;font-weight:600;color:#042863;white-space:nowrap}
.tk-news-section .tk-section-more:hover{color:#E2AA18}
.tk-nlist-home{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
@media(max-width:1024px){.tk-nlist-home{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.tk-nlist-home{grid-template-columns:1fr}}
/* ============================================================ */
.tk-partners{background:#fff;padding:56px 0;border-top:1px solid #e8ebf1}
.tk-partners h2{font-size:24px;font-weight:700;text-align:center;margin:0 0 8px;text-transform:uppercase}
.tk-partners h2::after{content:'';display:block;width:80px;height:3px;background:#E2AA18;margin:10px auto 0;border-radius:2px}
.tk-partners p{text-align:center;color:#5d6677;font-size:15px;margin:0 0 34px}
#tkBrands{overflow:hidden;position:relative}
.tk-track{display:flex;gap:22px;width:max-content;align-items:stretch}

/* ============================================================ */
/* hero banner (san-pham / about) */
/* ============================================================ */
.tk-hero{position:relative;height:auto;background:#0b1a33;display:block}
.tk-hero.tall{height:auto}
.tk-hero-bg{position:relative;width:100%;height:auto;display:block}
.tk-hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,40,99,.86) 0%,rgba(4,40,99,.58) 46%,rgba(4,40,99,.12) 100%)}
.tk-hero.tall .tk-hero-overlay{background:linear-gradient(90deg,rgba(4,40,99,.82) 0%,rgba(4,40,99,.55) 45%,rgba(4,40,99,.15) 100%)}
.tk-hero-inner{position:absolute;bottom:28px;left:0;right:0;max-width:1320px;margin:0 auto;padding:0 24px;width:100%}
.tk-hero-sub{font-size:13px;letter-spacing:3px;text-transform:uppercase;font-weight:600;color:#E2AA18}
.tk-hero h1{color:#fff;font-size:40px;font-weight:700;margin:12px 0 0;line-height:1.15}
.tk-hero.tall h1{font-size:44px;margin:12px 0 10px}
.tk-hero-bc{display:flex;align-items:center;gap:10px;font-size:14px;color:#dbe4f2}
.tk-hero-bc a{color:#dbe4f2}
.tk-hero-bc span{color:#fff}
.tk-hero-bc .sep{font-size:9px;opacity:.6}

/* ============================================================ */
/* about page */
/* ============================================================ */
.tk-about-main{flex:1 1 auto;background:linear-gradient(180deg,#fbfcfe 0%,#f4f6fa 100%);padding:80px 0 72px}
.tk-about-main--home{padding:35px 0 72px}
.tk-about{max-width:1320px;margin:0 auto;padding:0 24px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:72px;align-items:center}
.tk-about-title{font-size:24px;font-weight:700;text-align:center;margin:0 auto 40px;color:#1a2340;max-width:1320px;padding:0 24px;text-transform:uppercase}
.tk-about h2{font-size:40px;font-weight:700;margin:0 0 26px;letter-spacing:-.5px}
.tk-dots-deco{display:flex;align-items:center;margin-bottom:28px}
.tk-dots-deco .d1{width:15px;height:15px;border-radius:50%;background:#042863}
.tk-dots-deco .d2{width:15px;height:15px;border-radius:50%;background:#E2AA18;margin-left:-6px}
.tk-about-desc{font-size:16px;line-height:2.05;color:#3c4557;margin:0 0 40px;text-wrap:pretty}
.tk-stats{display:grid}
.tk-stat-item{padding:0 8px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px}
.tk-stat-item+.tk-stat-item{border-left:1px solid #e6eaf1}
.tk-stat-icon{width:30px;height:30px;object-fit:contain;display:block}
.tk-stat-num{display:flex;align-items:baseline;gap:2px;color:#042863}
.tk-stat-num .n{font-size:38px;font-weight:700;line-height:1}
.tk-stat-num .s{font-size:28px;font-weight:700}
.tk-stat-label{font-size:14px;color:#5d6677}
.tk-about-side{position:relative;border-radius:18px;overflow:hidden;height:470px;background:#e5eaf3;box-shadow:0 26px 60px rgba(4,40,99,.14)}
.tk-about-side img{width:100%;height:100%;object-fit:cover;display:block}
#tkPlay{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:78px;height:78px;border-radius:50%;border:0;background:#fff;color:#042863;font-size:20px;display:flex;align-items:center;justify-content:center;box-shadow:0 12px 30px rgba(4,40,99,.2);cursor:pointer}
#tkPlay i{margin-left:4px}
.tk-tech-section{background:linear-gradient(180deg,#f4f6fa 0%,#eef2f8 100%);padding:25px 0}
.tk-tech-section h2{font-size:36px;font-weight:700;margin:0 0 22px;letter-spacing:-.5px}
.tk-tech-section--home{padding:35px 0}
.tk-tech-section--home h2{font-size:24px;margin:0 0 40px;text-align:center;text-transform:uppercase}

/* ============================================================ */
/* video overlay */
/* ============================================================ */
#tkVideo{display:none;position:fixed;inset:0;z-index:1090;background:rgba(8,16,31,.82);align-items:center;justify-content:center;padding:24px}
.tk-video-wrap{position:relative;width:100%;max-width:960px}
#tkVideoClose{position:absolute;top:-46px;right:0;width:38px;height:38px;border-radius:50%;border:0;background:rgba(255,255,255,.16);color:#fff;font-size:16px;display:flex;align-items:center;justify-content:center;cursor:pointer}
.tk-video-ratio{position:relative;padding-top:56.25%;background:#000;border-radius:12px;overflow:hidden}
#tkVideoFrame{position:absolute;inset:0;width:100%;height:100%;border:0}

/* ============================================================ */
/* lightbox */
/* ============================================================ */
#tkLb{display:none;position:fixed;inset:0;z-index:1095;background:#000;flex-direction:column}
.tk-lb-head{display:flex;align-items:center;padding:18px 24px;color:#fff}
#tkLbCount{font-size:17px}
.tk-lb-controls{margin-left:auto;display:flex;gap:14px}
#tkLbFull{background:none;border:0;color:#fff;font-size:19px;cursor:pointer}
#tkLbClose{background:none;border:0;color:#fff;font-size:22px;cursor:pointer}
.tk-lb-body{flex:1 1 0;min-height:0;overflow:hidden;position:relative;display:flex;align-items:center;justify-content:center;padding:0 70px}
#tkLbPrev{left:18px}
#tkLbNext{right:18px}
#tkLbImg{max-width:min(760px,100%);max-height:100%;object-fit:contain;background:#fff;display:block}
#tkLbCap{color:#fff;text-align:center;font-size:15px;padding:22px 24px 34px}
#tkQuote{display:none;position:fixed;inset:0;z-index:1092;background:rgba(8,16,31,.7);align-items:center;justify-content:center;padding:24px}

/* ============================================================ */
/* related articles (bai-viet) */
/* ============================================================ */
.tk-rel-section{margin-top:48px;padding-top:32px;border-top:1px solid #e8ebf1}
.tk-rel-h{font-size:18px;font-weight:700;color:#1b2231;margin:0 0 20px}
.tk-rel-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.tk-rel-card{display:flex;gap:14px;text-decoration:none;background:#fff;border:1px solid #e8ebf1;border-radius:8px;overflow:hidden;transition:box-shadow .2s}
.tk-rel-thumb{flex:0 0 90px;width:90px;height:72px;overflow:hidden;background:#f0f2f5}
.tk-rel-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.tk-rel-thumb-ph{width:100%;height:100%;display:flex;align-items:center;justify-content:center}
.tk-rel-thumb-ph .fas{color:#adb5bd;font-size:20px}
.tk-rel-body{padding:10px 14px 10px 0;min-width:0}
.tk-rel-title{font-size:13px;font-weight:600;color:#1b2231;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.tk-rel-date{font-size:12px;color:#8a93a3;margin-top:6px}
.tk-art-wrap{max-width:860px;margin:0 auto;padding:0 24px}
.tk-cat-inherit{color:inherit}
