.staff-bar{background:#24313b;color:#eef5fb}.staff-inner{height:42px;display:flex;align-items:center;justify-content:space-between}.staff-who{display:flex;align-items:center;gap:8px;font-size:12px}.staff-who>span{width:7px;height:7px;border-radius:50%;background:#68d391}.staff-who small{color:#b7c8d6}.staff-actions{display:flex;gap:4px}.staff-actions button{border:0;background:transparent;color:#eaf2f8;padding:6px 9px;border-radius:7px}.staff-actions button:hover{background:#31414d}.company-bar{background:#18211e;color:#dce6e2;font-size:12px}.company-bar>.shell{height:36px;display:flex;align-items:center;justify-content:space-between}.company-bar nav{display:flex;align-items:center;gap:16px}.company-bar nav>*{color:#edf4f1}.site-header{position:sticky;top:0;z-index:80;background:rgba(255,255,255,.96);backdrop-filter:blur(14px);border-bottom:1px solid #e3ebf2}.staff-bar:not(.hidden)+.company-bar+.site-header{top:42px}.header-inner{height:78px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:12px}.brand img{width:58px;height:58px;object-fit:contain}.brand span{display:flex;flex-direction:column;line-height:1}.brand b{font-size:19px;letter-spacing:.06em}.brand small{margin-top:5px;font-size:9px;letter-spacing:.18em;color:#82909b}.main-nav{display:flex;align-items:center;gap:27px;font-size:14px;font-weight:700}.main-nav a{position:relative}.main-nav a:not(.utility-link):after{content:"";position:absolute;left:0;right:100%;bottom:-12px;height:2px;background:var(--blue);transition:.2s}.main-nav a:hover:after{right:0}.utility-link{padding:10px 14px;border:1px solid #d6e1ea;border-radius:999px}.menu-btn{display:none;border:0;background:none;width:44px;height:44px}.menu-btn i{display:block;width:22px;height:2px;background:#26343d;margin:5px auto}.campaign-strip{padding:12px 0 8px;background:linear-gradient(180deg,#f8fbff,#fff);border-bottom:1px solid #e4edf5}.section-mini{display:flex;align-items:center;justify-content:space-between;margin-bottom:7px}.mini-admin{border:1px solid #cfe0f2;background:#fff;color:#2f6fb8;border-radius:999px;padding:6px 9px;font-size:10px;font-weight:800}.campaign-card{width:100%;border:1px solid #d2e2f1;background:#f7fbff;border-radius:17px;padding:10px 14px;display:grid;grid-template-columns:150px minmax(0,1fr);gap:18px;align-items:center;text-align:left;color:var(--ink);box-shadow:0 8px 24px rgba(46,111,179,.07)}.campaign-card:hover{border-color:#a8cbea;background:#f3f9ff}.campaign-thumb{height:78px;border-radius:11px;background:#fff;overflow:hidden;border:1px solid #dae6ef}.campaign-thumb img{width:100%;height:100%;object-fit:contain}.campaign-copy small{color:var(--blue);font-size:9px;font-weight:900;letter-spacing:.14em}.campaign-copy h3{margin:4px 0 3px;color:#214d78;font-size:22px;line-height:1.1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.campaign-copy p{margin:0;color:#637d94;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ticker{border-bottom:1px solid #e5edf4;background:#fff;overflow:hidden}.ticker-inner{height:42px;display:flex;align-items:center;gap:14px}.ticker-inner>b{background:var(--blue);color:#fff;border-radius:5px;padding:5px 9px;font-size:10px;letter-spacing:.09em}.ticker-track{position:relative;flex:1;overflow:hidden;white-space:nowrap;color:#607384;font-size:12px}.ticker-run{display:flex;width:max-content;animation:ticker 38s linear infinite}.ticker-run:hover{animation-play-state:paused}.ticker-item{display:inline-flex;align-items:center;gap:10px;padding-right:28px}.ticker-item:before{content:"";width:4px;height:4px;border-radius:50%;background:#a7b7c4}.ticker-inner>a{font-size:11px;font-weight:800;color:#61788c}@keyframes ticker{to{transform:translateX(-50%)}}
.hero{padding:44px 0 56px}.hero-title{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:20px}.hero-title p{max-width:430px;margin:0;color:var(--muted)}.hero-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(320px,.78fr);gap:28px}.hero-feature{position:relative;height:460px;border-radius:22px;overflow:hidden;background:#d8e5ef}.hero-feature img{width:100%;height:100%;object-fit:cover}.hero-overlay{position:absolute;inset:0;background:linear-gradient(180deg,transparent 34%,rgba(10,27,41,.76))}.hero-copy{position:absolute;left:32px;right:32px;bottom:28px;color:#fff}.hero-copy em{font-style:normal;font-size:10px;font-weight:900;letter-spacing:.12em;background:var(--blue);padding:5px 8px;border-radius:5px}.hero-copy h2{font-size:31px;line-height:1.12;margin:12px 0 7px}.hero-copy p{margin:0;max-width:670px;color:#eaf1f6}.brief{border-top:3px solid #1f2d38}.brief-head{height:52px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);font-size:12px}.brief-head a{color:#73889a}.brief-item{display:grid;grid-template-columns:34px 1fr;gap:10px;padding:16px 0;border-bottom:1px solid var(--line)}.brief-item>span{font-size:11px;color:#a1afba;font-weight:800}.brief-item small{color:var(--blue);font-size:9px;font-weight:900;letter-spacing:.08em}.brief-item h3{margin:4px 0;font-size:16px;line-height:1.3}.brief-item time{font-size:10px;color:#91a0ab}.about{padding:56px 0;background:radial-gradient(circle at 10% 15%,rgba(119,177,236,.18),transparent 28%),linear-gradient(135deg,#f8fbff,#eaf4ff);border-block:1px solid #dbe9f5}.about-grid{display:grid;grid-template-columns:180px 1fr 300px;gap:48px;align-items:center}.about-logo{background:#fff;border:1px solid #d5e5f3;border-radius:22px;padding:22px;box-shadow:var(--shadow)}.about-grid h2{font-size:34px;color:var(--navy);line-height:1.12;letter-spacing:-.04em;margin:9px 0 13px}.about-grid p{color:#59738a;margin:0}.about-facts{display:grid;gap:10px}.about-facts article{background:rgba(255,255,255,.82);border:1px solid #d8e6f2;border-radius:14px;padding:15px}.about-facts b{display:block;color:#285f91;font-size:24px}.about-facts span{font-size:11px;color:#637d94}.news-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:18px}.news-card{grid-column:span 4;border:1px solid #dfe8ef;border-radius:16px;overflow:hidden;background:#fff;transition:.18s}.news-card:first-child{grid-column:span 8}.news-card:hover{transform:translateY(-2px);box-shadow:var(--shadow)}.news-img{height:185px;background:#eef4f8;overflow:hidden}.news-card:first-child .news-img{height:275px}.news-img img{width:100%;height:100%;object-fit:cover}.news-body{padding:18px}.news-body small{font-size:9px;color:var(--blue);font-weight:900;letter-spacing:.09em}.news-body h3{font-size:19px;line-height:1.28;margin:6px 0 8px}.news-card:first-child h3{font-size:24px}.news-body p{margin:0 0 9px;color:#6a7e8f;font-size:12px}.news-body time{font-size:10px;color:#92a0aa}.notice-section{padding:60px 0;background:linear-gradient(180deg,#f7fbff 0%,#f3f8fc 100%)}.notice-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(320px,.72fr);gap:32px;align-items:start}.notice-list{display:grid;gap:14px}.notice-item{display:grid;grid-template-columns:118px 1fr 42px;gap:16px;padding:14px;background:#fff;border:1px solid #dce7f1;border-radius:18px;align-items:center;box-shadow:0 12px 26px rgba(38,77,115,.06);transition:.18s}.notice-item:hover{transform:translateY(-2px);box-shadow:0 18px 34px rgba(38,77,115,.1)}.notice-visual{display:flex;align-items:center;justify-content:center;height:100%;min-height:92px;border-radius:14px;overflow:hidden;background:linear-gradient(135deg,#edf5ff,#dcecff);border:1px solid #d8e6f5}.notice-visual img{width:100%;height:100%;object-fit:cover}.notice-date-card{flex-direction:column;gap:4px;text-align:center}.notice-date-card b{display:block;font-size:30px;line-height:1;color:#27567d}.notice-date-card span{font-size:11px;font-weight:700;color:#6d8598}.notice-main{min-width:0}.notice-main small{display:block;margin-bottom:6px;font-size:10px;font-weight:900;letter-spacing:.11em;color:#4a90e2}.notice-main h3{margin:0 0 6px;font-size:22px;line-height:1.18;color:#173b60}.notice-main p{margin:0 0 10px;color:#6d8192;font-size:12px;line-height:1.55;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.notice-main time{font-size:11px;color:#8aa0b1}.notice-item i,.career-item i{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:999px;background:#eef5fb;color:#397dc4;font-style:normal;font-weight:900}.notice-empty{background:#fff;border:1px dashed #d4e2ef;border-radius:16px;padding:18px;color:#7590a5}.career{background:linear-gradient(155deg,#4d95e7 0%,#3477bf 54%,#2d67a6 100%);color:#fff;border-radius:24px;padding:28px;box-shadow:0 22px 44px rgba(45,103,166,.18)}.career-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.career>small,.career-head small{color:#e7f2ff;letter-spacing:.12em;font-weight:900}.career-add{border:1px solid rgba(255,255,255,.35);background:rgba(255,255,255,.95);color:#2f6fb8;border-radius:999px;padding:7px 11px;font-size:10px;font-weight:800}.career h2{font-size:36px;line-height:1.03;margin:12px 0 10px;letter-spacing:-.04em}.career>p{color:#eaf3ff;font-size:12px;line-height:1.55;margin:0 0 16px}#careerList{display:grid;gap:12px}.career-item{display:grid;grid-template-columns:1fr 34px;gap:12px;align-items:center;padding:15px 16px;border:1px solid rgba(255,255,255,.22);border-radius:16px;background:rgba(255,255,255,.14);backdrop-filter:blur(4px);color:#fff;transition:.18s}.career-item:hover{transform:translateY(-2px);background:rgba(255,255,255,.18)}.career-item-main small{display:block;margin-bottom:5px;font-size:10px;font-weight:900;letter-spacing:.11em;color:#d9eeff}.career-item b{display:block;font-size:17px;line-height:1.28;color:#fff}.career-item p{margin:6px 0 0;color:#e2f0ff;font-size:12px;line-height:1.5}.career-item i{background:rgba(255,255,255,.92);color:#2f6fb8}.career-empty{padding:15px 16px;border-radius:16px;background:rgba(255,255,255,.12);border:1px dashed rgba(255,255,255,.28);color:#ebf4ff}.utilities{padding:62px 0}.utility-grid{display:grid;grid-template-columns:.7fr 1fr 1fr;gap:22px}.utility-intro{padding-right:16px}.utility-intro p{color:var(--muted)}.utility-card{border:1px solid #dbe7f1;border-radius:18px;padding:22px;background:#fff;box-shadow:0 10px 28px rgba(37,78,115,.05)}.utility-card-head{display:flex;justify-content:space-between;gap:12px;margin-bottom:13px}.utility-card h3{margin:3px 0;color:#264f73;font-size:19px}.utility-row{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;border:0;border-top:1px solid #edf2f6;background:#fff;padding:12px 0;text-align:left}.utility-row:first-of-type{border-top:0}.utility-row b{display:block;font-size:13px}.utility-row span{display:block;font-size:10px;color:#8697a4;margin-top:2px}.utility-row i{font-style:normal;color:#4a90e2}.feedback-cta{padding:48px 0;background:#eaf4ff;border-block:1px solid #d8e8f6}.feedback-grid{display:flex;align-items:center;justify-content:space-between;gap:30px}.feedback-grid p{margin:8px 0 0;color:#5c748a}.footer{position:relative;color:#edf3f0;padding:50px 0 18px;background:#10201d;overflow:hidden}.footer:before{content:"";position:absolute;inset:0;background:url('/assets/viethong-factory.webp') center 60%/cover no-repeat;opacity:.34}.footer:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,17,14,.72),rgba(7,17,14,.38),rgba(7,17,14,.68))}.footer>*{position:relative;z-index:1}.footer-grid{display:grid;grid-template-columns:1.3fr repeat(3,.7fr);gap:38px}.footer-brand{display:flex;align-items:center;gap:14px}.footer-brand img{width:66px;background:#fff;border-radius:8px;padding:3px}.footer-brand div{display:flex;flex-direction:column}.footer-brand span{font-size:10px;color:#c7d2cc}.footer h4{margin:0 0 10px;font-size:12px}.footer a,.footer p{display:block;margin:7px 0;color:#d9e2dd;font-size:11px}.footer-bottom{border-top:1px solid rgba(255,255,255,.18);margin-top:30px;padding-top:15px;display:flex;justify-content:space-between;font-size:10px;color:#cbd6d0}.footer-bottom button{border:0;background:none;color:#fff}.article-detail img{width:100%;max-height:450px;object-fit:contain;background:#f5f8fa;border-radius:14px}.article-detail small{display:block;color:var(--blue);font-weight:900;letter-spacing:.1em;margin-top:18px}.article-detail h1{color:var(--navy);font-size:34px;line-height:1.15;margin:7px 0 8px}.article-detail .summary{color:#647c91;font-size:14px}.article-body{margin-top:20px;white-space:pre-wrap;line-height:1.8}.public-form h1,.public-poll h1,.feedback-form h1{color:var(--navy);margin:4px 0 8px}.public-meta{font-size:11px;color:#7890a4;margin-bottom:18px}.option-list{display:grid;gap:9px}.option{display:flex;gap:9px;align-items:center;border:1px solid var(--line);border-radius:11px;padding:11px}.result-row{margin:12px 0}.result-row>div{display:flex;justify-content:space-between;font-size:12px}.bar{height:8px;background:#e9eff4;border-radius:99px;overflow:hidden;margin-top:5px}.bar i{display:block;height:100%;background:var(--blue)}
@media(max-width:980px){.main-nav{gap:16px}.hero-grid{grid-template-columns:1fr}.brief{display:grid;grid-template-columns:1fr 1fr;column-gap:16px}.brief-head{grid-column:1/-1}.about-grid{grid-template-columns:150px 1fr}.about-facts{grid-column:1/-1;grid-template-columns:repeat(3,1fr)}.news-card,.news-card:first-child{grid-column:span 6}.notice-grid{grid-template-columns:1fr}.utility-grid{grid-template-columns:1fr 1fr}.utility-intro{grid-column:1/-1}.footer-grid{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}}
@media(max-width:760px){.company-bar>.shell>span{display:none}.company-bar>.shell{justify-content:flex-end}.company-bar nav a:first-child{display:none}.company-bar nav{gap:12px}.header-inner{height:68px}.brand img{width:48px;height:48px}.brand b{font-size:16px}.menu-btn{display:block}.main-nav{display:none;position:absolute;left:13px;right:13px;top:69px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:10px;flex-direction:column;align-items:stretch;gap:0;box-shadow:var(--shadow)}.main-nav.open{display:flex}.main-nav a{padding:10px}.main-nav a:after{display:none}.hero{padding:30px 0 42px}.hero-title{align-items:flex-start;flex-direction:column;gap:8px}.hero-feature{height:390px}.hero-copy{left:22px;right:22px;bottom:20px}.hero-copy h2{font-size:25px}.brief{display:block}.campaign-card{grid-template-columns:92px 1fr;padding:8px 10px;gap:11px}.campaign-thumb{height:62px}.campaign-copy h3{font-size:17px}.campaign-copy p{font-size:11px}.ticker-inner>a{display:none}.about-grid{grid-template-columns:1fr;gap:22px}.about-logo{width:120px;padding:14px}.about-grid h2{font-size:28px}.about-facts{grid-column:auto;grid-template-columns:1fr 1fr}.news-grid{display:block}.news-card{margin-bottom:13px}.news-card:first-child .news-img,.news-img{height:205px}.notice-grid{grid-template-columns:1fr;gap:18px}.notice-item{grid-template-columns:88px 1fr 34px;padding:12px}.notice-visual{min-height:78px}.notice-main h3{font-size:17px}.notice-main p{display:none}.utility-grid{grid-template-columns:1fr}.utility-intro{grid-column:auto}.feedback-grid{align-items:flex-start;flex-direction:column}.footer-grid{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}.article-detail h1{font-size:28px}}
@media(max-width:470px){.about-facts{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr}.footer-brand{grid-column:auto}}

/* ==============================
   V2.0.2 - Public UI polish
   ============================== */
.staff-bar{position:sticky;top:0;z-index:96;background:#22313c;border-bottom:1px solid rgba(255,255,255,.06)}
.staff-inner{height:34px}
.staff-who{font-size:11px}
.staff-actions button{font-size:11px;padding:4px 8px}
.company-bar>.shell{height:31px}
.company-bar{font-size:11px}
.company-bar nav{gap:14px}
.site-header{top:0;z-index:90;box-shadow:0 1px 0 rgba(28,63,94,.03)}
.staff-bar:not(.hidden)+.company-bar+.site-header{top:34px}
.header-inner{height:70px}
.brand img{width:54px;height:54px}
.brand b{font-size:18px}
.main-nav{gap:25px;font-size:13px}
.utility-link{padding:9px 13px}
.campaign-strip{padding:10px 0 7px}
.section-mini{margin-bottom:6px}
.campaign-card{min-height:94px;padding:9px 13px;grid-template-columns:140px minmax(0,1fr);border-radius:15px;box-shadow:0 6px 20px rgba(46,111,179,.055)}
.campaign-thumb{height:72px}
.campaign-copy h3{font-size:21px}
.ticker-inner{height:38px;gap:12px}
.ticker-inner>b{flex:0 0 auto;padding:4px 9px}
.ticker-track{min-width:0;padding-left:4px;mask-image:linear-gradient(90deg,transparent,#000 12px,#000 calc(100% - 16px),transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 12px,#000 calc(100% - 16px),transparent)}
.ticker-run{will-change:transform}
.ticker-item{padding-right:26px}
.hero{padding:38px 0 50px}
.hero-title{margin-bottom:18px}
.section{padding:56px 0}
.notice-section{padding:52px 0}
.utilities{padding:56px 0}
.feedback-cta{padding:40px 0}
.footer{padding:42px 0 16px}
.footer:before{opacity:.42}
.footer:after{background:linear-gradient(90deg,rgba(7,17,14,.68),rgba(7,17,14,.31),rgba(7,17,14,.61))}
.footer-grid{gap:32px}
.footer-bottom{margin-top:25px}
@media(prefers-reduced-motion:reduce){.ticker-run{animation:none}}
@media(max-width:760px){
  .staff-inner{height:32px}.staff-bar:not(.hidden)+.company-bar+.site-header{top:32px}
  .staff-who small{display:none}.staff-actions button{padding:4px 6px}.staff-actions button:first-child{display:none}
  .company-bar>.shell{height:29px}.company-bar nav{gap:10px}.company-bar nav a:nth-child(2){display:none}
  .header-inner{height:64px}.brand img{width:46px;height:46px}.brand b{font-size:16px}
  .main-nav{top:65px}
  .campaign-card{grid-template-columns:88px 1fr;min-height:78px;padding:8px 9px}.campaign-thumb{height:60px}.campaign-copy h3{font-size:16px}
  .ticker-inner{height:36px}.hero{padding:28px 0 40px}.section{padding:44px 0}.notice-section,.utilities{padding:44px 0}.feedback-cta{padding:34px 0}.footer{padding:38px 0 15px}
}


/* V2.0.3 – Utility QR quick actions */
.utility-head-actions,.feedback-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.mini-secondary{border:1px solid #d3e2f0;background:#fff;color:#2f6fb8;border-radius:999px;padding:8px 12px;font-size:11px;font-weight:800}
.feedback-actions .secondary{border-color:#bfd7ef;background:#fff;color:#2d6db3}
.qr-picker-list{display:grid;gap:10px}
.qr-picker-item{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border:1px solid #dbe7f1;border-radius:14px;background:#fff;text-align:left}
.qr-picker-item b{display:block;font-size:14px;color:var(--navy)}
.qr-picker-item small{display:block;margin-top:4px;color:#7790a4;font-size:11px}
.qr-picker-item i{font-style:normal;color:#2f6fb8;font-weight:800}
@media(max-width:760px){.utility-head-actions,.feedback-actions{width:100%}.feedback-actions .primary,.feedback-actions .secondary,.mini-secondary{width:100%;justify-content:center;text-align:center}.utility-card-head{align-items:flex-start;flex-direction:column}}

/* ==============================
   V2.1.0 - Training / Huấn luyện
   ============================== */
.training-section{padding:54px 0;background:linear-gradient(135deg,#f7fbff,#edf6ff);border-block:1px solid #dbe9f5}
.training-home-grid{display:grid;grid-template-columns:minmax(280px,.78fr) minmax(0,1.65fr);gap:32px;align-items:start}
.training-home-intro small{font-size:10px;font-weight:900;letter-spacing:.14em;color:var(--blue);text-transform:uppercase}
.training-home-intro h2{margin:5px 0 10px;color:var(--navy);font-size:31px;line-height:1.1;letter-spacing:-.035em}
.training-home-intro p{margin:0;color:#607a91}
.training-home-actions{display:flex;gap:8px;margin-top:18px;flex-wrap:wrap}
.training-home-list{display:grid;gap:10px}
.training-home-row{width:100%;display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:14px;text-align:left;border:1px solid #d8e6f2;border-radius:16px;background:#fff;padding:16px 18px;box-shadow:0 9px 25px rgba(45,91,133,.045);transition:.16s}
.training-home-row:hover{transform:translateY(-1px);border-color:#bcd6ed;box-shadow:0 13px 30px rgba(45,91,133,.08)}
.training-home-icon{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:#eaf4ff;color:#2f6fb8;font-size:15px}
.training-home-row small{display:block;color:#4a86d4;font-size:9px;font-weight:900;letter-spacing:.1em}
.training-home-row b{display:block;color:#1f466d;font-size:15px;margin:2px 0}
.training-home-row span span{display:block;color:#7a8f9f;font-size:11px}
.training-home-row i{font-style:normal;color:#2f6fb8;font-weight:800;font-size:11px;white-space:nowrap}
.public-training .training-hero{display:flex;justify-content:space-between;gap:18px;padding-bottom:18px;border-bottom:1px solid var(--line)}
.public-training .training-hero h1{margin:8px 0 7px;color:var(--navy);font-size:32px;line-height:1.15}
.public-training .training-hero p{margin:0;color:#617a90}
.training-version{align-self:flex-start;background:#f1f6fa;border:1px solid #dce8f2;border-radius:999px;padding:6px 9px;color:#6d8193;font-size:10px;font-weight:800}
.training-meta{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.training-meta span{padding:5px 8px;border-radius:999px;background:#f5f9fc;border:1px solid #e0e9f0;color:#647b8f;font-size:10px}
.training-step,.training-quiz{padding:20px 0;border-bottom:1px solid #e9eff4}.training-step-title{display:flex;align-items:center;gap:11px;margin-bottom:14px}.training-step-title>span{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:#eaf4ff;color:#2f6fb8;font-weight:900}.training-step-title small{display:block;color:#4a86d4;font-size:9px;font-weight:900;letter-spacing:.1em}.training-step-title h3{margin:1px 0 0;color:#294b6b;font-size:17px}.training-instructions{padding:14px 16px;border-radius:13px;background:#f7fbff;border:1px solid #dfeaf4;color:#526f88;line-height:1.75;margin-bottom:14px}
.training-material-list{display:grid;gap:14px}.training-material{border:1px solid #dce7f0;border-radius:15px;padding:13px;background:#fff}.training-material-head{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px}.training-material img,.training-material video{display:block;width:100%;max-height:520px;object-fit:contain;border-radius:12px;background:#f4f7f9}.training-document{display:flex;align-items:center;justify-content:space-between;gap:14px}.training-document div{display:grid}.training-document small{color:#8194a3}
.training-question-list{display:grid;gap:14px}.training-question{margin:0;border:1px solid #dce7f0;border-radius:14px;padding:14px}.training-question legend{padding:0 5px;font-weight:800;color:#304d68}.training-question .option{margin-top:8px}
.training-ack{padding:17px;background:#f8fbfe;border:1px solid #dce8f2;border-radius:14px}.training-ack label{display:flex;gap:9px;align-items:flex-start;font-weight:700;color:#3c5870}.training-submit{width:100%;padding:13px 18px}
.training-result{text-align:center;padding:36px 20px}.training-result>span{display:grid;place-items:center;width:62px;height:62px;border-radius:50%;margin:0 auto 12px;font-size:30px;font-weight:900}.training-result.passed>span{background:#edf8f2;color:#26734d}.training-result.failed>span{background:#fff4e5;color:#9a5a00}.training-result h2{margin:0;color:var(--navy)}.training-result p{color:#60798e}
@media(max-width:900px){.training-home-grid{grid-template-columns:1fr}.training-home-intro{max-width:680px}}
@media(max-width:760px){.training-section{padding:42px 0}.training-home-row{grid-template-columns:38px 1fr;padding:14px}.training-home-row>i{grid-column:2}.public-training .training-hero{flex-direction:column}.public-training .training-hero h1{font-size:27px}.training-document{align-items:flex-start;flex-direction:column}}


/* V2.1.5 - Latest News Card Polish */
.brief{border-top:3px solid #1f2d38}
.brief-head{height:52px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);font-size:12px}
#briefList{display:grid;gap:10px;padding-top:10px}
.brief-card{width:100%;display:grid;grid-template-columns:96px minmax(0,1fr);gap:12px;align-items:stretch;padding:9px;border:1px solid #e0e8ef;border-radius:14px;background:#fff;text-align:left;overflow:hidden;transition:.18s;box-shadow:0 7px 20px rgba(37,78,115,.035)}
.brief-card:hover{transform:translateY(-1px);border-color:#c8dcec;box-shadow:0 10px 24px rgba(37,78,115,.08)}
.brief-card.is-lead{grid-template-columns:116px minmax(0,1fr);padding:10px;border-color:#cfe0ef;background:linear-gradient(135deg,#fbfdff,#f6fbff)}
.brief-thumb{display:block;width:100%;height:82px;border-radius:10px;overflow:hidden;background:#eef4f8;border:1px solid #e0e8ef}
.brief-card.is-lead .brief-thumb{height:94px}
.brief-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.brief-fallback{display:grid;place-items:center;background:linear-gradient(135deg,#e7f2ff,#f8fbff);color:#3d75ae;font-size:18px;font-weight:900;letter-spacing:.06em;position:relative}
.brief-fallback:after{content:"";position:absolute;inset:auto -18px -24px auto;width:68px;height:68px;border-radius:50%;background:rgba(74,144,226,.11)}
.brief-recruitment .brief-fallback{background:linear-gradient(135deg,#fff0ef,#fff8f7);color:#b9342d}.brief-announcement .brief-fallback{background:linear-gradient(135deg,#fff8e7,#fffdf7);color:#9a6a18}.brief-ktcn .brief-fallback{background:linear-gradient(135deg,#edf8f4,#f8fdfb);color:#24735a}.brief-union .brief-fallback,.brief-youth .brief-fallback{background:linear-gradient(135deg,#f4efff,#fbf8ff);color:#7049a0}
.brief-content{min-width:0;display:flex;flex-direction:column;justify-content:center}
.brief-meta{display:flex;align-items:center;gap:7px;margin-bottom:3px}.brief-meta small{color:var(--blue);font-size:8px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.brief-meta i{font-style:normal;font-size:7px;font-weight:900;padding:2px 5px;border-radius:999px;background:#eaf4ff;color:#3c78b8}
.brief-card h3{margin:2px 0 4px;font-size:14px;line-height:1.28;color:#192d3d;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.brief-card.is-lead h3{font-size:15px}
.brief-card p{margin:0 0 5px;color:#738695;font-size:9px;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.brief-card time{font-size:9px;color:#91a0ab}
@media(max-width:980px){#briefList{grid-template-columns:1fr 1fr}.brief-card,.brief-card.is-lead{grid-template-columns:92px minmax(0,1fr)}.brief-thumb,.brief-card.is-lead .brief-thumb{height:78px}}
@media(max-width:760px){#briefList{grid-template-columns:1fr}.brief-card,.brief-card.is-lead{grid-template-columns:92px minmax(0,1fr)}.brief-card p{display:none}}


/* V2.1.5 - selectable Latest News layouts */
.brief-head-actions{display:flex;align-items:center;gap:10px}.brief-head-actions .mini-admin{padding:5px 8px;font-size:9px}.brief-list{display:grid;gap:10px;padding-top:10px}
.brief-list.layout-image-top .brief-card.is-lead{display:block;padding:0;overflow:hidden}.brief-list.layout-image-top .brief-card.is-lead .brief-thumb{height:145px;border:0;border-radius:0}.brief-list.layout-image-top .brief-card.is-lead .brief-content{padding:13px 14px 14px}.brief-list.layout-image-top .brief-card:not(.is-lead){grid-template-columns:88px minmax(0,1fr)}.brief-list.layout-image-top .brief-card:not(.is-lead) .brief-thumb{height:72px}
.brief-list.layout-text .brief-card{display:block;padding:14px 14px 13px;border-left:4px solid #4a90e2;background:linear-gradient(135deg,#fff,#f8fbff)}.brief-list.layout-text .brief-card.is-lead{padding:16px 15px}.brief-list.layout-text .brief-card h3{font-size:15px}.brief-list.layout-text .brief-card.is-lead h3{font-size:17px}.brief-list.layout-text .brief-card p{-webkit-line-clamp:2}.brief-list.layout-text .brief-recruitment{border-left-color:#d14a42}.brief-list.layout-text .brief-announcement{border-left-color:#d39a2b}.brief-list.layout-text .brief-ktcn{border-left-color:#2f9a75}.brief-list.layout-text .brief-union,.brief-list.layout-text .brief-youth{border-left-color:#8961b9}
@media(max-width:980px){.brief-list.layout-image-top{grid-template-columns:1fr 1fr}.brief-list.layout-image-top .brief-card.is-lead{grid-row:span 2}.brief-list.layout-text{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.brief-list.layout-image-top,.brief-list.layout-text{grid-template-columns:1fr}.brief-list.layout-image-top .brief-card.is-lead{grid-row:auto}.brief-head-actions{gap:7px}}

/* V2.1.6 public content logic */
.hero-feature[data-content-slug]{cursor:pointer}.hero-feature[data-content-slug]:hover img{transform:scale(1.015)}.hero-feature img{transition:transform .3s ease}
.tabs{flex-wrap:wrap}


/* V2.1.7 - Featured content manager */
.hero-title-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px;flex-wrap:wrap}.hero-title-actions p{margin:0}.hero-title-actions .mini-admin{white-space:nowrap}
@media(max-width:760px){.hero-title-actions{align-items:flex-start;justify-content:flex-start}.hero-title-actions p{width:100%}}

/* V2.2.0 – Homepage & Company profile */
.home-config-hidden{display:none!important}
.section-edit-line{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.section-edit-line small{flex:1}.about-copy{min-width:0}
.footer-title-line{display:flex;align-items:center;gap:8px;justify-content:space-between}.footer-title-line h4{margin:0}.footer-admin-btn{border:1px solid rgba(255,255,255,.32);background:rgba(255,255,255,.1);color:#fff;border-radius:999px;padding:5px 9px;font-size:10px;font-weight:800}.footer-admin-btn:hover{background:rgba(255,255,255,.18)}
.contact-details{display:grid;gap:5px;margin-top:10px}.contact-details p{display:grid;grid-template-columns:70px minmax(0,1fr);gap:8px;margin:0;font-size:11px;line-height:1.45}.contact-details b{color:#fff}.contact-details span,.contact-details a{color:rgba(255,255,255,.82);overflow-wrap:anywhere}.contact-details a{text-decoration:none}.contact-details a:hover{text-decoration:underline}
@media(max-width:760px){.section-edit-line{align-items:flex-start}.contact-details p{grid-template-columns:1fr;gap:1px}}


/* V2.2.1 – Footer Contact Polish */
.footer{padding:46px 0 18px}
.footer:before{opacity:.40}
.footer:after{background:linear-gradient(90deg,rgba(6,17,14,.76) 0%,rgba(6,17,14,.48) 46%,rgba(6,17,14,.70) 100%)}
.footer-grid{grid-template-columns:minmax(260px,1.25fr) minmax(120px,.55fr) minmax(120px,.55fr) minmax(300px,1.22fr);gap:28px;align-items:start}
.footer-brand{align-self:center}
.footer-contact{padding:16px 16px 14px;border:1px solid rgba(255,255,255,.16);background:linear-gradient(145deg,rgba(255,255,255,.095),rgba(255,255,255,.035));border-radius:16px;box-shadow:0 14px 32px rgba(0,0,0,.10);backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px)}
.footer-title-line{min-height:28px;margin-bottom:4px}.footer-title-line h4{font-size:13px;letter-spacing:.01em}.footer-admin-btn{display:inline-flex;align-items:center;gap:4px;padding:5px 9px;border-color:rgba(255,255,255,.26);background:rgba(255,255,255,.09);font-size:9px}.footer-admin-btn:hover{background:rgba(255,255,255,.17)}
.footer-contact>p{margin:4px 0 12px!important;color:rgba(237,246,242,.78)!important;line-height:1.5;font-size:10.5px!important}
.contact-details{display:grid;gap:7px;margin-top:0}
.contact-details .contact-item{display:grid;grid-template-columns:28px minmax(0,1fr);gap:9px;align-items:start;margin:0;padding:7px 8px;border:1px solid rgba(255,255,255,.09);background:rgba(6,20,16,.19);border-radius:11px;min-width:0}
.contact-icon{display:grid;place-items:center;width:28px;height:28px;border-radius:9px;background:rgba(130,199,174,.12);border:1px solid rgba(180,227,209,.15);color:#dff4eb;font-size:13px;line-height:1}
.contact-copy{display:block;min-width:0}.contact-copy small{display:block;margin:0 0 2px;color:rgba(220,235,228,.62);font-size:8.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.contact-copy strong{display:block;color:#fff;font-size:10.5px;font-weight:600;line-height:1.45;overflow-wrap:anywhere}.contact-copy a{display:inline;color:#fff!important;font-size:inherit!important;font-weight:inherit;text-decoration:none;margin:0!important}.contact-copy a:hover{text-decoration:underline}
.contact-address{grid-column:1/-1}.contact-address .contact-copy strong{font-weight:600}
.footer-bottom{margin-top:24px;padding-top:14px;align-items:center}.back-top-btn{display:inline-flex;align-items:center;gap:6px!important;padding:7px 10px!important;border:1px solid rgba(255,255,255,.18)!important;border-radius:999px!important;background:rgba(255,255,255,.07)!important;color:#fff!important;font-size:9.5px!important;font-weight:700!important;transition:.18s}.back-top-btn span{font-size:12px}.back-top-btn:hover{background:rgba(255,255,255,.14)!important;transform:translateY(-1px)}
@media(max-width:1100px){.footer-grid{grid-template-columns:1.15fr .55fr .55fr 1fr;gap:22px}.footer-contact{padding:14px}}
@media(max-width:980px){.footer-grid{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}.footer-contact{grid-column:1/-1}.contact-details{grid-template-columns:1fr 1fr}.contact-address{grid-column:1/-1}}
@media(max-width:600px){.footer{padding-top:32px}.footer-grid{grid-template-columns:1fr;gap:22px}.footer-brand,.footer-contact{grid-column:auto}.contact-details{grid-template-columns:1fr}.contact-address{grid-column:auto}.footer-bottom{align-items:flex-start;gap:12px;flex-direction:column}.back-top-btn{align-self:flex-end}}

/* V2.2.2 – Footer Contact Redesign */
.footer-contact{
  position:relative;
  padding:18px 18px 16px;
  border:1px solid rgba(255,255,255,.18);
  background:linear-gradient(145deg,rgba(10,34,28,.74),rgba(12,27,24,.56));
  border-radius:18px;
  box-shadow:0 16px 34px rgba(0,0,0,.14);
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px)
}
.footer-title-line{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:6px;min-height:30px}
.footer-title-line h4{font-size:14px;letter-spacing:.01em;margin:0;color:#fff}
.footer-admin-btn{display:inline-flex;align-items:center;gap:5px;padding:6px 9px;border:1px solid rgba(255,255,255,.24);background:rgba(255,255,255,.08);color:#fff;border-radius:999px;font-size:9px;font-weight:800;line-height:1}
.footer-admin-btn:hover{background:rgba(255,255,255,.15);border-color:rgba(255,255,255,.34)}
.footer-contact>p{margin:4px 0 10px!important;color:rgba(233,244,239,.72)!important;font-size:10.5px!important;line-height:1.5}
.contact-details{display:flex;flex-direction:column;gap:0;margin-top:2px}
.contact-details .contact-item{
  display:grid;
  grid-template-columns:34px minmax(0,1fr);
  gap:11px;
  align-items:center;
  margin:0;
  padding:10px 0;
  border:0;
  border-top:1px solid rgba(255,255,255,.10);
  background:none;
  border-radius:0;
  min-width:0
}
.contact-details .contact-item:first-child{border-top:1px solid rgba(255,255,255,.08)}
.contact-icon{
  display:grid;
  place-items:center;
  width:32px;
  height:32px;
  border-radius:10px;
  background:linear-gradient(145deg,rgba(111,201,170,.22),rgba(83,156,134,.10));
  border:1px solid rgba(168,230,210,.22);
  color:#eafff7;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.025)
}
.contact-icon svg{width:16px;height:16px;display:block;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.contact-copy{display:block;min-width:0}
.contact-copy small{display:block;margin:0 0 2px;color:rgba(209,229,220,.58);font-size:8px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}
.contact-copy strong{display:block;color:#fff;font-size:11px;font-weight:600;line-height:1.42;overflow-wrap:anywhere}
.contact-copy a{display:inline;color:#fff!important;font-size:inherit!important;font-weight:inherit;text-decoration:none;margin:0!important}
.contact-copy a:hover{color:#dff8ee!important;text-decoration:underline}
.contact-address{grid-column:auto}
.contact-address .contact-copy strong{font-weight:600}
.footer-bottom{margin-top:22px;padding-top:13px}
@media(max-width:980px){.footer-contact{grid-column:1/-1}.contact-details{display:grid;grid-template-columns:1fr 1fr;column-gap:22px}.contact-details .contact-item{border-top:1px solid rgba(255,255,255,.10)}.contact-address{grid-column:1/-1}}
@media(max-width:600px){.footer-contact{padding:16px 15px 14px}.contact-details{display:flex}.contact-details .contact-item{grid-template-columns:32px minmax(0,1fr);gap:10px;padding:9px 0}.contact-icon{width:30px;height:30px;border-radius:9px}.contact-icon svg{width:15px;height:15px}.contact-copy strong{font-size:10.5px}}


/* V2.2.3 – Footer Glass Light */
.footer-contact{
  background:linear-gradient(145deg,rgba(8,26,22,.46),rgba(10,24,21,.32));
  border-color:rgba(255,255,255,.15);
  box-shadow:0 12px 26px rgba(0,0,0,.11);
  backdrop-filter:blur(5px);
  -webkit-backdrop-filter:blur(5px)
}
.footer-contact>p{color:rgba(239,247,244,.80)!important}
.footer-admin-btn{background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.20)}
.footer-admin-btn:hover{background:rgba(255,255,255,.13);border-color:rgba(255,255,255,.30)}
.contact-details .contact-item{border-top-color:rgba(255,255,255,.085)}
.contact-icon{
  background:linear-gradient(145deg,rgba(121,212,180,.18),rgba(83,156,134,.07));
  border-color:rgba(183,236,217,.18);
  color:#f0fff9
}
.contact-copy small{color:rgba(218,234,227,.64)}
.footer:after{background:linear-gradient(90deg,rgba(6,17,14,.66) 0%,rgba(6,17,14,.38) 46%,rgba(6,17,14,.57) 100%)}

/* =========================================================
   V2.3.0 – Corporate Showcase Redesign
   Modern Industrial Editorial · public homepage only
   ========================================================= */
:root{--v23-ink:#102c48;--v23-sky:#eaf5ff;--v23-blue:#2f7cc9;--v23-blue-2:#67b7ee;--v23-line:#d8e7f3;--v23-dark:#0f2538}
body{background:#fff;color:#17293a}
.company-bar{background:#edf6ff;color:#47677f;border-bottom:1px solid #dceaf5}.company-bar>.shell{height:34px}.company-bar nav>*{color:#47677f}.company-bar nav .link-btn{font-weight:700}
.site-header{background:rgba(255,255,255,.92);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border-bottom:1px solid rgba(210,225,237,.82)}
.header-inner{height:82px}.brand img{width:54px;height:54px}.brand b{font-size:18px;letter-spacing:.08em;color:#172b3c}.brand small{color:#8295a5}.main-nav{gap:26px}.main-nav a{font-size:13px;color:#273c4d}.main-nav a:not(.utility-link):after{background:linear-gradient(90deg,#2e79c3,#6bb8ec);bottom:-15px}.utility-link{background:#f7fbff;border-color:#d3e4f1;color:#275e8b!important}

.campaign-strip{background:#fff;padding:10px 0;border-bottom:1px solid #e5eef5}.campaign-card{box-shadow:none;border-radius:14px;background:#fbfdff}.ticker{background:#f8fbfe;border-bottom:1px solid #e4edf4}.ticker-inner{height:38px}.ticker-inner>b{background:none;color:#2f7cc9;padding:0;font-size:9px}.ticker-track{color:#5e7587}

.showcase-hero{padding:28px 0 44px;background:linear-gradient(180deg,#f8fbfe 0%,#fff 100%)}
.showcase-stage{position:relative;min-height:650px;border-radius:30px;overflow:hidden;background:#173653;box-shadow:0 28px 70px rgba(23,59,99,.15)}
.showcase-bg{position:absolute;inset:0;background:url('/assets/viethong-factory.webp') center 53%/cover no-repeat;transform:scale(1.015)}
.showcase-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,27,43,.78) 0%,rgba(8,27,43,.58) 37%,rgba(8,27,43,.22) 68%,rgba(8,27,43,.32) 100%),linear-gradient(180deg,rgba(7,23,37,.10),rgba(7,23,37,.48))}
.showcase-topline,.showcase-footerline{position:absolute;left:34px;right:34px;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:18px;color:rgba(255,255,255,.78);font-size:9px;font-weight:800;letter-spacing:.16em;text-transform:uppercase}
.showcase-topline{top:28px;pointer-events:none}.showcase-topline button,.showcase-topline a{pointer-events:auto}.showcase-footerline{bottom:24px;border-top:1px solid rgba(255,255,255,.18);padding-top:15px;letter-spacing:.12em}
.mini-admin.light{background:rgba(255,255,255,.10);border-color:rgba(255,255,255,.28);color:#fff;backdrop-filter:blur(8px)}.mini-admin.light:hover{background:rgba(255,255,255,.18)}
.showcase-layout{position:relative;z-index:2;min-height:650px;padding:96px 48px 72px;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(330px,.72fr);gap:64px;align-items:center}
.showcase-copy{max-width:720px;color:#fff}.showcase-copy>small{display:block;margin-bottom:14px;color:#a9d7f7;font-size:10px;font-weight:900;letter-spacing:.18em}.showcase-copy h1{margin:0;font-size:clamp(54px,6.1vw,90px);line-height:.92;letter-spacing:-.062em;font-weight:760;text-wrap:balance}.showcase-copy h1 span{color:inherit}.showcase-copy h1 #heroAccentTitle{color:#9ed6fa}.showcase-copy p{max-width:650px;margin:24px 0 0;color:rgba(242,248,252,.88);font-size:16px;line-height:1.75}.showcase-actions{display:flex;align-items:center;gap:20px;margin-top:30px}.showcase-primary{display:inline-flex;align-items:center;justify-content:center;padding:12px 17px;border-radius:999px;background:#fff;color:#173d61;font-size:12px;font-weight:850;box-shadow:0 9px 24px rgba(0,0,0,.10)}.showcase-link{display:inline-flex;align-items:center;gap:8px;color:#fff;font-size:12px;font-weight:800}.showcase-link span{font-size:16px}
.showcase-feature{height:330px;border-radius:24px;border:1px solid rgba(255,255,255,.25);box-shadow:0 24px 50px rgba(0,0,0,.22);background:rgba(255,255,255,.12);backdrop-filter:blur(8px);overflow:hidden}.showcase-feature img{width:100%;height:100%;object-fit:cover}.showcase-feature .hero-overlay{background:linear-gradient(180deg,transparent 24%,rgba(6,23,38,.85))}.showcase-feature .hero-copy{left:24px;right:24px;bottom:22px}.showcase-feature .hero-copy em{display:inline-flex;background:rgba(255,255,255,.94);color:#286ba7;font-size:8px;letter-spacing:.12em;padding:5px 8px;border-radius:999px}.showcase-feature .hero-copy h2{margin:10px 0 6px;font-size:24px;line-height:1.12;letter-spacing:-.025em}.showcase-feature .hero-copy p{font-size:11px;line-height:1.55;color:rgba(255,255,255,.86)}
.editorial-brief{margin-top:18px;border-top:0!important}.editorial-brief .brief-head{height:46px;border-bottom:0;padding:0 2px}.editorial-brief .brief-head>b{font-size:10px;letter-spacing:.16em;color:#315b7d}.editorial-brief .brief-head a{font-size:11px;font-weight:800;color:#587b97}.editorial-brief .brief-list{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding-top:0}.editorial-brief .brief-card,.editorial-brief .brief-card.is-lead{display:block!important;padding:14px!important;border:1px solid #dfeaf2!important;border-radius:16px!important;background:#fff!important;box-shadow:none!important;min-height:156px}.editorial-brief .brief-card:hover{transform:translateY(-2px);border-color:#bfd7e9!important;box-shadow:0 12px 26px rgba(40,85,120,.07)!important}.editorial-brief .brief-thumb{display:none!important}.editorial-brief .brief-meta{margin-bottom:10px}.editorial-brief .brief-meta small{font-size:8px}.editorial-brief .brief-card h3,.editorial-brief .brief-card.is-lead h3{font-size:16px;line-height:1.28;margin:0 0 8px;color:#17344f}.editorial-brief .brief-card p{font-size:10px;line-height:1.5;color:#718697;margin:0 0 11px;-webkit-line-clamp:2}.editorial-brief .brief-card time{margin-top:auto;font-size:9px;color:#92a2af}.editorial-brief .brief-content{height:100%;justify-content:flex-start}

.corporate-about{padding:88px 0 92px;background:#fff;border:0}.about-editorial{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(360px,.8fr);gap:72px;align-items:end;padding-bottom:58px;border-bottom:1px solid #dbe8f2}.corporate-about .about-copy{max-width:790px}.corporate-about .section-edit-line{margin-bottom:18px}.corporate-about .section-edit-line small{font-size:10px;letter-spacing:.16em;color:#4285bd}.corporate-about .about-copy h2{margin:0;color:#123754;font-size:clamp(42px,4.6vw,67px);line-height:.98;letter-spacing:-.055em;font-weight:720;text-wrap:balance}.corporate-about .about-copy p{max-width:720px;margin:24px 0 0;color:#617b90;font-size:15px;line-height:1.85}.corporate-about .about-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.corporate-about .about-facts article{min-height:142px;padding:18px 16px;border:1px solid #dce8f1;border-radius:18px;background:linear-gradient(180deg,#fbfdff,#f5faff);box-shadow:none}.corporate-about .about-facts b{font-size:34px;line-height:1;color:#2f78b9;letter-spacing:-.045em}.corporate-about .about-facts span{display:block;margin-top:12px;color:#60798d;font-size:10px;line-height:1.45}
.manufacturing-showcase{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(380px,.92fr);gap:58px;align-items:center;padding-top:58px}.manufacturing-photo{position:relative;min-height:530px;border-radius:24px;overflow:hidden;background:#dceaf4}.manufacturing-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(9,32,49,.42))}.manufacturing-photo img{width:100%;height:530px;object-fit:cover;object-position:center 52%;display:block;transition:transform .55s ease}.manufacturing-photo:hover img{transform:scale(1.025)}.manufacturing-photo>span{position:absolute;left:22px;bottom:18px;z-index:2;color:#fff;font-size:9px;font-weight:900;letter-spacing:.16em}.manufacturing-copy>small{display:block;margin-bottom:12px;color:#4b8bc0;font-size:10px;font-weight:900;letter-spacing:.16em}.manufacturing-copy h3{margin:0;color:#153a58;font-size:36px;line-height:1.08;letter-spacing:-.045em}.manufacturing-copy>p{margin:18px 0 26px;color:#647d91;font-size:13px;line-height:1.78}.process-list{display:grid}.process-list article{display:grid;grid-template-columns:44px 1fr;gap:15px;padding:15px 0;border-top:1px solid #dce8f1;align-items:start}.process-list article:last-child{border-bottom:1px solid #dce8f1}.process-list>article>span{font-size:10px;font-weight:900;color:#6ca4cf;letter-spacing:.06em;padding-top:3px}.process-list b{display:block;color:#1c405e;font-size:15px}.process-list small{display:block;margin-top:3px;color:#7a8f9f;font-size:10px;line-height:1.45}

#news.section{padding:88px 0}.section-head{margin-bottom:28px}.section-head small,.utility-intro small,.feedback-grid small,.career small{letter-spacing:.16em}.section-head h2,.utility-intro h2,.feedback-grid h2{font-size:38px;letter-spacing:-.045em}.news-grid{gap:20px}.news-card{border:0;border-radius:20px;background:#fff;box-shadow:none}.news-card:hover{transform:none}.news-img{height:220px;border-radius:20px;overflow:hidden}.news-card:first-child .news-img{height:410px}.news-body{padding:16px 2px 8px}.news-body small{font-size:9px;letter-spacing:.13em}.news-body h3{margin:7px 0 8px;font-size:20px;letter-spacing:-.02em;color:#173651}.news-card:first-child h3{font-size:30px;line-height:1.12}.news-body p{font-size:11px;line-height:1.55;color:#738696}.news-body time{font-size:9px}.tabs button{background:#f7fbff;border-color:#d9e7f1;color:#5b7488}.tabs button.active,.tabs button:hover{background:#173b63;border-color:#173b63;color:#fff}

.notice-section{padding:84px 0;background:linear-gradient(180deg,#f3f8fc 0%,#f8fbfd 100%);border-block:1px solid #e4edf4}.notice-grid{grid-template-columns:minmax(0,1.55fr) minmax(340px,.72fr);gap:36px}.notice-item{border-radius:20px;border-color:#dce8f1;box-shadow:none}.notice-item:hover{box-shadow:0 16px 34px rgba(36,78,112,.08)}.notice-main h3{color:#173651}.career{border-radius:24px;background:linear-gradient(160deg,#173f65 0%,#2f78bb 74%,#6ab7e8 130%);box-shadow:none}.career h2{font-size:42px}.career-item{background:rgba(255,255,255,.10)}

.utilities{padding:88px 0;background:#fff}.utility-grid{grid-template-columns:minmax(260px,.72fr) 1fr 1fr;gap:20px;align-items:stretch}.utility-intro{padding:26px 24px 26px 0}.utility-intro h2{font-size:42px;line-height:1.02}.utility-intro p{font-size:13px;line-height:1.7}.utility-card{border-radius:22px;padding:24px;border-color:#dce8f1;box-shadow:none;background:linear-gradient(180deg,#fff,#f9fcff)}.utility-card h3{font-size:20px}.utility-row{padding:14px 0;background:transparent}.utility-row i{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#edf6ff}

.training-section{position:relative;padding:82px 0!important;background:radial-gradient(circle at 12% 18%,rgba(113,184,235,.18),transparent 28%),linear-gradient(135deg,#f8fbff 0%,#eef7fd 52%,#fafdff 100%)!important;border-block:1px solid #d9e8f3;overflow:hidden}.training-section:before{content:"";position:absolute;right:-90px;top:-120px;width:340px;height:340px;border-radius:50%;background:rgba(135,202,241,.12);pointer-events:none}.training-home-grid{position:relative;z-index:1;gap:46px}.training-home-intro small{color:#4f91c8}.training-home-intro h2{color:#173e60;font-size:40px;line-height:1.06;letter-spacing:-.045em}.training-home-intro p{color:#657f93}.training-home-row{border-color:#d8e7f2;background:rgba(255,255,255,.9);color:#25445e;box-shadow:0 12px 30px rgba(47,94,134,.055)}.training-home-row:hover{background:#fff;border-color:#bdd8ec;box-shadow:0 16px 34px rgba(47,94,134,.09)}.training-home-row small{color:#4d8fc6}.training-home-row b{color:#1d4669}.training-home-row span span{color:#748b9c}.training-home-row>i{color:#347db8}.training-home-icon{background:#e8f4fc;color:#3d86bd}

.feedback-cta{padding:64px 0;background:#eaf5ff;border-color:#d5e7f5}.feedback-grid h2{font-size:38px}.feedback-grid p{font-size:13px;line-height:1.65}.feedback-actions .primary{border-radius:999px}.feedback-actions .secondary{border-radius:999px;background:rgba(255,255,255,.75)}

.footer{padding-top:56px}.footer-brand img{border-radius:10px}.footer-grid{gap:34px}

@media(max-width:1100px){
  .showcase-layout{grid-template-columns:minmax(0,1fr) 330px;gap:36px;padding-inline:38px}.showcase-copy h1{font-size:64px}.about-editorial{grid-template-columns:1fr;gap:32px}.corporate-about .about-facts{max-width:650px}.manufacturing-showcase{grid-template-columns:1fr 1fr;gap:34px}.manufacturing-copy h3{font-size:31px}.editorial-brief .brief-list{grid-template-columns:repeat(2,minmax(0,1fr))}.utility-grid{grid-template-columns:1fr 1fr}.utility-intro{grid-column:1/-1;padding-right:0;max-width:680px}
}
@media(max-width:860px){
  .showcase-stage{min-height:auto}.showcase-layout{min-height:auto;grid-template-columns:1fr;padding:100px 26px 78px}.showcase-copy{max-width:690px}.showcase-feature{height:300px;max-width:560px}.showcase-topline,.showcase-footerline{left:24px;right:24px}.showcase-footerline{font-size:8px}.manufacturing-showcase{grid-template-columns:1fr}.manufacturing-photo,.manufacturing-photo img{min-height:420px;height:420px}.notice-grid{grid-template-columns:1fr}.career{max-width:none}.training-home-grid{grid-template-columns:1fr!important}
}
@media(max-width:760px){
  .company-bar>.shell{height:32px}.header-inner{height:70px}.brand img{width:46px;height:46px}.brand b{font-size:15px}.showcase-hero{padding:14px 0 34px}.showcase-stage{border-radius:20px}.showcase-topline{top:18px;left:18px;right:18px}.showcase-topline>span{font-size:7px;letter-spacing:.12em}.showcase-layout{padding:78px 18px 64px;gap:26px}.showcase-copy>small{font-size:8px}.showcase-copy h1{font-size:46px;line-height:.95}.showcase-copy p{font-size:13px;line-height:1.65;margin-top:18px}.showcase-actions{margin-top:22px;gap:14px;flex-wrap:wrap}.showcase-primary,.showcase-link{font-size:11px}.showcase-feature{height:250px;border-radius:18px}.showcase-feature .hero-copy{left:18px;right:18px;bottom:16px}.showcase-feature .hero-copy h2{font-size:20px}.showcase-footerline{bottom:15px;left:18px;right:18px;display:none}.editorial-brief{margin-top:12px}.editorial-brief .brief-list{grid-template-columns:1fr}.editorial-brief .brief-card,.editorial-brief .brief-card.is-lead{min-height:auto}.corporate-about{padding:62px 0}.about-editorial{padding-bottom:38px;gap:26px}.corporate-about .about-copy h2{font-size:38px}.corporate-about .about-copy p{font-size:13px;line-height:1.72}.corporate-about .about-facts{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.corporate-about .about-facts article{min-height:118px;padding:14px 11px}.corporate-about .about-facts b{font-size:28px}.corporate-about .about-facts span{font-size:9px}.manufacturing-showcase{padding-top:38px;gap:28px}.manufacturing-photo,.manufacturing-photo img{min-height:315px;height:315px;border-radius:18px}.manufacturing-copy h3{font-size:28px}.manufacturing-copy>p{font-size:12px}.process-list article{grid-template-columns:36px 1fr}.section-head h2,.utility-intro h2,.feedback-grid h2{font-size:31px}#news.section{padding:62px 0}.news-card:first-child .news-img,.news-img{height:220px!important}.news-card:first-child h3{font-size:23px}.notice-section{padding:58px 0}.notice-item{grid-template-columns:86px 1fr 32px!important}.notice-main h3{font-size:17px}.career h2{font-size:34px}.utilities{padding:62px 0}.utility-grid{grid-template-columns:1fr}.utility-intro{grid-column:auto;padding:0 0 8px}.utility-intro h2{font-size:33px}.training-section{padding:60px 0!important}.training-home-intro h2{font-size:32px}.feedback-cta{padding:48px 0}
}
@media(max-width:480px){
  .showcase-copy h1{font-size:40px}.showcase-feature{height:225px}.corporate-about .about-facts{grid-template-columns:1fr}.corporate-about .about-facts article{min-height:auto}.notice-item{grid-template-columns:72px 1fr 28px!important}.notice-visual{min-height:72px}.notice-main small{font-size:8px}.notice-main h3{font-size:15px}.notice-main time{font-size:9px}.career{padding:22px}.utility-card{padding:20px}.manufacturing-copy h3{font-size:25px}
}

/* =========================================================
   V2.3.3 – Mobile Responsive Guard
   Fix horizontal overflow / hero typography on iPhone
   ========================================================= */
html,body{max-width:100%;overflow-x:clip}
body{position:relative}
main,.company-bar,.site-header,.campaign-strip,.ticker,.showcase-hero{max-width:100%}
.shell,.header-inner,.campaign-card,.campaign-copy,.ticker-inner,.ticker-track,.showcase-stage,.showcase-layout,.showcase-copy,.showcase-feature{min-width:0}

@media(max-width:760px){
  /* Keep the utility bar inside the real mobile viewport. */
  .company-bar{overflow:hidden}
  .company-bar>.shell{max-width:100%;overflow:hidden}
  .company-bar nav{width:100%;min-width:0;max-width:100%;justify-content:flex-end;overflow:hidden;gap:10px}
  .company-bar nav>*{flex:0 0 auto;white-space:nowrap}

  /* Campaign/banner must never define page width. */
  .campaign-strip{overflow:hidden}
  .campaign-card{width:100%;max-width:100%;grid-template-columns:78px minmax(0,1fr);gap:10px;overflow:hidden}
  .campaign-thumb{width:78px;max-width:100%}
  .campaign-copy{min-width:0;overflow:hidden}
  .campaign-copy h3{white-space:normal;overflow:hidden;text-overflow:clip;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow-wrap:anywhere;font-size:16px;line-height:1.22}
  .campaign-copy p{white-space:normal;overflow:hidden;text-overflow:clip;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow-wrap:anywhere;font-size:10.5px;line-height:1.4}

  /* Hero: true single-column mobile layout. */
  .showcase-hero>.shell{max-width:100%}
  .showcase-stage{width:100%;max-width:100%;overflow:hidden}
  .showcase-layout{width:100%;max-width:100%;padding:76px 16px 58px;gap:24px;overflow:hidden}
  .showcase-copy{width:100%;max-width:100%;min-width:0}
  .showcase-copy>small{max-width:100%;white-space:normal}
  .showcase-copy h1{max-width:100%;font-size:clamp(32px,8.8vw,38px);line-height:.98;letter-spacing:-.045em;text-wrap:pretty;overflow-wrap:normal;word-break:normal}
  .showcase-copy h1 span{display:inline}
  .showcase-copy p{width:100%;max-width:100%;font-size:12.5px;line-height:1.62;overflow-wrap:anywhere}
  .showcase-actions{width:100%;max-width:100%;display:flex;flex-direction:column;align-items:flex-start;gap:10px;margin-top:20px}
  .showcase-primary,.showcase-link{max-width:100%;white-space:normal}
  .showcase-primary{padding:10px 14px}
  .showcase-topline{max-width:calc(100% - 36px);gap:10px}
  .showcase-topline>span{min-width:0;max-width:65%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .showcase-topline .mini-admin{flex:0 0 auto;white-space:nowrap}
  .showcase-feature{width:100%;max-width:100%;height:232px;margin:0;overflow:hidden}
  .showcase-feature .hero-copy{left:15px;right:15px;bottom:14px;min-width:0}
  .showcase-feature .hero-copy h2{max-width:100%;font-size:18px;line-height:1.16;overflow-wrap:anywhere}
  .showcase-feature .hero-copy p{font-size:10px;line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}

  /* Secondary homepage blocks must shrink instead of pushing the viewport. */
  .editorial-brief,.editorial-brief .brief-list,.editorial-brief .brief-card,.brief-content,
  .about-editorial,.manufacturing-showcase,.notice-grid,.notice-list,.notice-item,.notice-main,
  .career,#careerList,.career-item,.career-item-main,.utility-grid,.utility-card,
  .training-home-grid,.training-home-list,.training-home-row,.training-home-row>span,
  .feedback-grid,.footer-grid,.footer-contact,.contact-details{min-width:0;max-width:100%}
  .editorial-brief .brief-card h3,.notice-main h3,.career-item b,.training-home-row b{overflow-wrap:anywhere}
  .training-home-row{grid-template-columns:38px minmax(0,1fr);gap:10px;padding:14px}
  .training-home-row>i{grid-column:2;justify-self:start;white-space:normal}
}

@media(max-width:480px){
  .company-bar nav{gap:9px;font-size:10px}
  .company-bar nav a:nth-child(3){display:none}
  .campaign-card{grid-template-columns:70px minmax(0,1fr);padding:8px;gap:9px}
  .campaign-thumb{width:70px;height:58px}
  .showcase-hero{padding-top:10px}
  .showcase-stage{border-radius:18px}
  .showcase-layout{padding:70px 14px 52px}
  .showcase-copy h1{font-size:clamp(31px,8.7vw,36px)}
  .showcase-copy p{font-size:12px}
  .showcase-feature{height:220px;border-radius:16px}
}


/* V2.3.4 – Clean Showcase Hero: keep the factory image unobstructed */
.showcase-layout{grid-template-columns:minmax(0,820px);justify-content:start;gap:0}
.showcase-copy{max-width:820px}
.showcase-copy p{max-width:690px}
.showcase-topline{justify-content:flex-start}
@media(max-width:1180px){.showcase-layout{grid-template-columns:minmax(0,760px);gap:0}.showcase-copy{max-width:760px}}
@media(max-width:980px){.showcase-layout{grid-template-columns:1fr}.showcase-copy{max-width:690px}}
@media(max-width:760px){.showcase-layout{grid-template-columns:1fr}.showcase-copy{max-width:100%}}

/* =========================================================
   V2.3.5 – Editorial News & Section Rhythm
   Give Latest News real imagery and tighten homepage pacing.
   ========================================================= */
.showcase-hero{padding:24px 0 20px}
.editorial-brief{margin-top:14px;margin-bottom:0}
.editorial-brief .brief-head{height:42px}
.editorial-brief .brief-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(235px,1fr));gap:14px}
.editorial-brief .brief-card,.editorial-brief .brief-card.is-lead{display:flex!important;flex-direction:column!important;padding:0!important;min-height:0!important;border-radius:18px!important;overflow:hidden;background:#fff!important}
.editorial-brief .brief-thumb{display:block!important;width:100%;height:118px;flex:0 0 118px;margin:0!important;border:0!important;border-radius:0!important;overflow:hidden;background:#eaf2f8}
.editorial-brief .brief-thumb img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s ease}
.editorial-brief .brief-card:hover .brief-thumb img{transform:scale(1.025)}
.editorial-brief .brief-content{height:auto!important;display:flex!important;flex:1;flex-direction:column;padding:13px 14px 14px}
.editorial-brief .brief-meta{margin-bottom:7px}
.editorial-brief .brief-card h3,.editorial-brief .brief-card.is-lead h3{font-size:15px;line-height:1.28;margin:0 0 6px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.editorial-brief .brief-card p{margin:0 0 8px;font-size:10px;line-height:1.45;-webkit-line-clamp:2}
.editorial-brief .brief-card time{margin-top:auto;padding-top:2px}

/* Tighter vertical rhythm between homepage sections. */
.corporate-about{padding:52px 0 64px}
.about-editorial{padding-bottom:42px}
.manufacturing-showcase{padding-top:42px}
#news.section{padding:64px 0}
.notice-section{padding:64px 0}
.utilities{padding:64px 0}
.training-section{padding:64px 0!important}
.feedback-cta{padding:46px 0}
.section-head{margin-bottom:22px}

@media(max-width:1100px){
  .editorial-brief .brief-list{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){
  .showcase-hero{padding:10px 0 14px}
  .editorial-brief{margin-top:10px}
  .editorial-brief .brief-head{height:40px}
  .editorial-brief .brief-list{grid-template-columns:1fr;gap:11px}
  .editorial-brief .brief-card,.editorial-brief .brief-card.is-lead{display:grid!important;grid-template-columns:112px minmax(0,1fr)!important;min-height:112px!important}
  .editorial-brief .brief-thumb{width:112px;height:100%;min-height:112px;flex:none}
  .editorial-brief .brief-content{padding:11px 12px}
  .editorial-brief .brief-card h3,.editorial-brief .brief-card.is-lead h3{font-size:14px}
  .editorial-brief .brief-card p{display:none}
  .corporate-about{padding:44px 0 50px}
  .about-editorial{padding-bottom:30px}
  .manufacturing-showcase{padding-top:30px}
  #news.section{padding:48px 0}
  .notice-section{padding:48px 0}
  .utilities{padding:48px 0}
  .training-section{padding:48px 0!important}
  .feedback-cta{padding:38px 0}
  .section-head{margin-bottom:18px}
}
@media(max-width:480px){
  .editorial-brief .brief-card,.editorial-brief .brief-card.is-lead{grid-template-columns:96px minmax(0,1fr)!important;min-height:104px!important}
  .editorial-brief .brief-thumb{width:96px;min-height:104px}
}



/* =========================================================
   V2.3.6 – Poster Image Fit Hotfix
   Recruitment/announcement artwork should never be cropped.
   ========================================================= */
.news-card.news-category-recruitment .news-img,
.news-card.news-category-announcement .news-img{
  background:linear-gradient(180deg,#f7fbff,#eef5fa);
  display:flex;align-items:center;justify-content:center;
  padding:4px
}
.news-card.news-category-recruitment .news-img img,
.news-card.news-category-announcement .news-img img{
  object-fit:contain!important;
  object-position:center center;
  background:#fff
}
@media(max-width:760px){
  .news-card.news-category-recruitment .news-img,
  .news-card.news-category-announcement .news-img{padding:3px}
}

/* V2.3.8 – Training Learning Flow */
.training-learning-flow{--training-blue:#4a90e2;--training-navy:#183f62;--training-line:#dce8f2;--training-soft:#f6fafe}
.training-flow-shell{padding-top:18px}.training-flow-steps{display:grid;grid-template-columns:auto 1fr auto 1fr auto 1fr auto;align-items:center;gap:10px;padding:12px 14px;margin-bottom:18px;border:1px solid var(--training-line);border-radius:16px;background:#f8fbfe}.training-flow-steps>i{height:1px;background:#dce8f2}.training-flow-step{display:flex;align-items:center;gap:7px;color:#8aa0b2;font-size:10px;font-weight:800}.training-flow-step>span{display:grid;place-items:center;width:30px;height:30px;border-radius:9px;background:#edf3f8;color:#8196a7}.training-flow-step>b{white-space:nowrap}.training-flow-step.active{color:#2f6fb8}.training-flow-step.active>span{background:#4a90e2;color:#fff;box-shadow:0 7px 16px rgba(74,144,226,.22)}.training-flow-step.done{color:#487b64}.training-flow-step.done>span{background:#e9f6ef;color:#26734d}.training-flow-stage{min-height:360px}.training-identity-stage,.training-learning-stage,.training-quiz-stage{display:grid;gap:18px}.training-stage-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.training-stage-heading small{display:block;color:#4a86d4;font-size:9px;font-weight:900;letter-spacing:.12em}.training-stage-heading h2{margin:4px 0 5px;color:var(--training-navy);font-size:25px;line-height:1.15}.training-stage-heading p{margin:0;max-width:670px;color:#6e8395;font-size:12px;line-height:1.55}.training-start-summary,.training-learner-chip{flex:0 0 auto;border:1px solid #dbe8f2;background:#f7fbff;border-radius:999px;padding:8px 11px;color:#617b90;font-size:10px;font-weight:800}.training-learner-chip{display:grid;gap:1px;border-radius:13px;padding:8px 11px;min-width:128px}.training-learner-chip b{color:#31536e;font-size:11px}.training-learner-chip small{color:#8396a5;font-size:9px;letter-spacing:0}.training-start-note{display:flex;gap:13px;align-items:flex-start;padding:15px;border:1px solid #dce9f4;border-radius:15px;background:linear-gradient(135deg,#f6fbff,#fbfdff)}.training-start-note>span{display:grid;place-items:center;width:36px;height:36px;border-radius:11px;background:#e8f4ff;color:#2f6fb8;font-size:13px;flex:0 0 36px}.training-start-note b{display:block;color:#31536e}.training-start-note p{margin:3px 0 5px;color:#6e8294;font-size:11px;line-height:1.5}.training-start-note small{color:#8b9ba8}.training-start-button{justify-self:end;min-width:210px;padding:12px 18px}
.training-learning-progress{height:6px;border-radius:999px;background:#eaf1f6;overflow:hidden}.training-learning-progress>span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#4a90e2,#78cfe1);transition:width .25s ease}.training-learning-intro{margin:0}.training-learning-intro>b{display:block;margin-bottom:5px;color:#31536e}.training-learning-intro>p{margin:0}.training-slide{border:1px solid #dce8f2;border-radius:18px;background:#fff;overflow:hidden;box-shadow:0 14px 32px rgba(42,82,117,.055)}.training-slide-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 15px;border-bottom:1px solid #e8eef4;background:#fbfdff}.training-slide-head small{display:block;color:#4d8dcc;font-size:9px;font-weight:900;letter-spacing:.1em}.training-slide-head h3{margin:3px 0 0;color:#294c69;font-size:16px}.training-slide-media{display:flex;align-items:center;justify-content:center;background:#f4f7f9;min-height:340px}.training-slide-media.image img,.training-slide-media.video video{display:block;width:100%;max-height:600px;object-fit:contain;background:#f5f8fa}.training-slide-media.video{background:#0f1720}.training-slide-media.document{min-height:auto;justify-content:flex-start;gap:15px;padding:18px;background:#f8fbfe}.training-slide-media.document>div:last-child{min-width:0}.training-slide-media.document h3{margin:0 0 5px;color:#294c69}.training-slide-media.document p{margin:0 0 10px;color:#6f8394;font-size:11px}.training-document-icon{display:grid;place-items:center;width:58px;height:68px;border-radius:11px;background:#fff0ed;color:#b64f32;border:1px solid #f0d1c7;font-weight:900;flex:0 0 58px}.training-pdf-frame{display:block;width:100%;height:520px;border:0;border-top:1px solid #e8eef4;background:#f5f7f9}.training-player-nav{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:14px}.training-player-nav button:disabled{opacity:.45;cursor:not-allowed}.training-player-count{display:flex;justify-content:center;gap:6px;flex-wrap:wrap}.training-player-count i{width:8px;height:8px;border-radius:999px;background:#dfe8ef}.training-player-count i.active{width:22px;background:#4a90e2}.training-player-count i.done{background:#86c6a7}.training-no-material{text-align:center;padding:34px 20px;border:1px dashed #d4e2ed;border-radius:17px;background:#fbfdff}.training-no-material>span{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;margin:0 auto 9px;background:#eaf7ef;color:#26734d;font-size:20px;font-weight:900}.training-no-material h3{margin:0;color:#294c69}.training-no-material p{margin:5px 0 0;color:#7a8f9f}
.training-complete-mark{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:#eaf7ef;color:#26734d;font-size:21px;font-weight:900}.training-complete-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.training-complete-summary>div{padding:16px;border:1px solid #dce8f2;border-radius:14px;background:#fbfdff;text-align:center}.training-complete-summary b{display:block;color:#285f91;font-size:24px}.training-complete-summary span{display:block;margin-top:3px;color:#7d91a0;font-size:10px}.training-flow-ack{margin:0}.training-flow-ack p{margin:0;color:#476176}.training-complete-actions,.training-quiz-actions,.training-result-actions{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap}.training-complete-actions .primary:disabled{opacity:.48;cursor:not-allowed}.training-quiz-stage .training-question-list{gap:12px}.training-quiz-stage .training-question{padding:16px;border-radius:16px;background:#fff}.training-quiz-stage .training-question legend{display:flex;align-items:flex-start;gap:9px;line-height:1.45}.training-quiz-stage .training-question legend>span{display:grid;place-items:center;min-width:28px;height:28px;border-radius:8px;background:#eaf4ff;color:#2f6fb8;font-size:10px}.training-quiz-stage .option{transition:.15s}.training-quiz-stage .option:has(input:checked){border-color:#8abbea;background:#f4f9ff}.training-result small{display:block;margin-bottom:5px;color:#4a86d4;font-size:9px;font-weight:900;letter-spacing:.12em}.training-score-ring{display:grid;place-items:center;width:132px;height:132px;margin:18px auto;border-radius:50%;background:radial-gradient(circle at center,#fff 54%,transparent 55%),conic-gradient(#4a90e2 0 var(--training-score,0%),#e8eff4 var(--training-score,0%) 100%);border:1px solid #dce8f2}.training-score-ring b{color:#214f77;font-size:27px;line-height:1}.training-score-ring span{font-size:9px;color:#7d91a0}.training-result-actions{justify-content:center;margin-top:18px}
@media(max-width:760px){.training-flow-steps{grid-template-columns:repeat(4,1fr);gap:5px;padding:9px}.training-flow-steps>i{display:none}.training-flow-step{display:grid;justify-items:center;gap:4px;text-align:center}.training-flow-step>b{font-size:8px;white-space:normal}.training-flow-step>span{width:28px;height:28px}.training-stage-heading{flex-direction:column;gap:10px}.training-start-summary,.training-learner-chip{align-self:flex-start}.training-stage-heading h2{font-size:22px}.training-start-button{width:100%;min-width:0;justify-self:stretch}.training-slide-media{min-height:220px}.training-pdf-frame{height:420px}.training-player-nav{grid-template-columns:1fr 1fr}.training-player-count{grid-column:1/-1;grid-row:1}.training-player-nav button{width:100%}.training-complete-summary{grid-template-columns:1fr 1fr}.training-complete-summary>div:last-child{grid-column:1/-1}.training-complete-actions,.training-quiz-actions{flex-direction:column-reverse}.training-complete-actions button,.training-quiz-actions button{width:100%}}


/* V2.3.10 – Footer Google Maps Directions */
.contact-map-action{margin-top:10px}
.footer-map-card{position:relative;display:grid!important;grid-template-columns:54px minmax(0,1fr) 30px;gap:11px;align-items:center;margin:0!important;padding:10px 11px!important;border:1px solid rgba(255,255,255,.13);border-radius:13px;background:linear-gradient(135deg,rgba(255,255,255,.105),rgba(255,255,255,.035));color:#fff!important;text-decoration:none!important;overflow:hidden;transition:transform .18s ease,border-color .18s ease,background .18s ease}
.footer-map-card:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 18% 20%,rgba(116,198,236,.16),transparent 36%);pointer-events:none}
.footer-map-card:hover{transform:translateY(-1px);border-color:rgba(171,222,242,.34);background:linear-gradient(135deg,rgba(255,255,255,.14),rgba(255,255,255,.05))}
.footer-map-visual{position:relative;display:grid;place-items:center;width:54px;height:46px;border-radius:10px;background:linear-gradient(145deg,rgba(89,174,215,.24),rgba(87,164,137,.12));border:1px solid rgba(188,230,241,.18);overflow:hidden}
.footer-map-visual:before,.footer-map-visual:after,.footer-map-visual i{content:"";position:absolute;height:1px;background:rgba(255,255,255,.15);transform:rotate(-20deg)}
.footer-map-visual:before{width:80px;top:14px;left:-13px}.footer-map-visual:after{width:74px;bottom:12px;left:-8px;transform:rotate(17deg)}
.footer-map-visual i:nth-of-type(1){width:70px;top:24px;left:-9px;transform:rotate(42deg)}
.footer-map-visual i:nth-of-type(2){width:52px;top:7px;left:15px;transform:rotate(65deg)}
.footer-map-visual i:nth-of-type(3){width:60px;bottom:6px;left:8px;transform:rotate(-58deg)}
.footer-map-visual svg{position:relative;z-index:2;width:21px;height:21px;fill:none;stroke:#f4fffb;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 2px 3px rgba(0,0,0,.18))}
.footer-map-copy{position:relative;z-index:1;display:block;min-width:0}.footer-map-copy small{display:block;margin:0 0 2px;color:rgba(205,228,241,.65);font-size:7.5px;font-weight:900;letter-spacing:.11em}.footer-map-copy strong{display:block;color:#fff;font-size:11px;line-height:1.3}.footer-map-copy em{display:block;margin-top:3px;color:rgba(231,242,238,.67);font-style:normal;font-size:8.5px;line-height:1.35;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.footer-map-arrow{position:relative;z-index:1;display:grid;place-items:center;width:28px;height:28px;border-radius:999px;background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.13);font-size:12px;font-weight:800}
@media(max-width:600px){.footer-map-card{grid-template-columns:48px minmax(0,1fr) 28px;padding:9px 10px!important}.footer-map-visual{width:48px;height:43px}.footer-map-copy strong{font-size:10.5px}.footer-map-copy em{font-size:8px}}


/* V2.3.11 – Footer Map Rebalance */
.footer-brand{display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:14px;row-gap:0;align-items:center;align-self:center}
.footer-brand>img{grid-column:1;grid-row:1}
.footer-brand>div:not(.contact-map-action){grid-column:2;grid-row:1;min-width:0}
.footer-brand .contact-map-action{grid-column:1/-1;grid-row:2;display:block;margin-top:14px;max-width:340px;width:100%}
.footer-brand .contact-map-action.hidden{display:none}
.footer-brand .footer-map-card{grid-template-columns:46px minmax(0,1fr) 28px;gap:10px;padding:9px 10px!important;border-radius:12px;background:linear-gradient(135deg,rgba(255,255,255,.085),rgba(255,255,255,.025))}
.footer-brand .footer-map-visual{width:46px;height:42px;border-radius:9px}
.footer-brand .footer-map-visual svg{width:19px;height:19px}
.footer-brand .footer-map-copy strong{font-size:10.5px}
.footer-brand .footer-map-copy em{font-size:8px}
.footer-brand .footer-map-arrow{width:27px;height:27px}
@media(max-width:980px){.footer-brand .contact-map-action{max-width:360px}}
@media(max-width:600px){.footer-brand{grid-template-columns:58px minmax(0,1fr);column-gap:12px;align-items:center}.footer-brand img{width:58px}.footer-brand .contact-map-action{max-width:none;margin-top:12px}.footer-brand .footer-map-card{grid-template-columns:44px minmax(0,1fr) 28px}.footer-brand .footer-map-visual{width:44px;height:40px}}
