/* Giao diện website — chỉ chứa quy tắc trình bày, không chứa nội dung nghiệp vụ. */
:root{--primary-color:#0e477c;--gold-color:#d4af37;--text-color:#333;--light-bg:#f4f4f4;--header-h:58px}
*{box-sizing:border-box;margin:0;padding:0;font-family:'Segoe UI',Tahoma,Geneva,Verdana,sans-serif}
article,aside,details,figcaption,figure,footer,header,main,nav,section,summary{display:block}
[hidden]{display:none!important}
html{font-size:100%;overflow-y:scroll;-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:82px}
body{background:#f9f9f9;color:var(--text-color);margin:0;font-size:16px;line-height:1.6}
a{color:#28475f;text-decoration:none;transition:all .4s ease}
a:visited{color:#28475f}
a:active,a:hover{color:#018d67;outline:0}
h1,h2,h3,h4,h5,h6{line-height:1.3}
h1{font-size:42px;margin:26px 0}
h2{font-size:28pt;margin:22px 0}
h3{font-size:18px;margin:22px 0}
b,strong{font-weight:700}
p{margin:0}
code,kbd,pre,samp{font-family:monospace,serif;font-size:14px}
dl{margin:0 20px}
dt{font-weight:700}
ul,ol{margin:0;padding:0}
ul{list-style-type:none}
img{border:0;vertical-align:middle}
form{margin:0}
button,input,select,textarea{font-size:100%;margin:0;max-width:100%;vertical-align:baseline}
button,input[type="submit"]{cursor:pointer}
.site-main{width:100%;position:relative}
.container{max-width:1200px;margin:0 auto;padding:0 20px;clear:both}
.container-narrow{max-width:900px}

/* Nội dung bài viết */
.text-box{border:1px solid #8c9ea9}
.text-box p{border-bottom:1px solid #8c9ea9;color:#ccc;padding:10px 8px}
.text-box p:last-child{border-bottom:none}
.text-box a{color:#c0f3ca}
.text-box a:hover{text-decoration:underline}
.dk-masTriSoa p{margin:8px 0;line-height:1.4;font-size:17px}
.dk-masTriSoa h2,.dk-masTriSoa h3{color:var(--primary-color);text-transform:uppercase}
.dk-masTriSoa h2{font-size:2rem}
.dk-masTriSoa h3{font-size:15pt}
.ld-content p{color:#f5f5f5}
.ld-content p a{color:#ffeeb7}
.ld-content p a:hover{text-decoration:underline}
.dk-masTriSoa ul{padding-left:12px;list-style-position:inside;list-style-type:disc}
.dk-masTriSoa ul li{font-size:14px;margin:8px 0}
.dk-masTriSoa ol{margin:12px 0;padding-left:8px;list-style-position:inside}
.dk-masTriSoa ol li{margin:8px 0;line-height:1.4;color:#555}
.dk-masTriSoa table{border:1px solid #555;margin:1em 0}
.dk-masTriSoa table td{border-top:1px solid #555;border-right:1px solid #555;padding:10px 8px}
.dk-masTriSoa code{background:rgba(0,0,0,.06);padding:1px 5px;border-radius:3px}
.section .container img,.logo img,.dk-masTriSoa img{max-width:100%;height:auto;margin:0 auto;display:block}

/* Thư viện ảnh */
.gallery br[style*="clear: both"]{display:none!important}
body div.gallery.gallery-columns-2,body div.gallery.gallery-columns-3,body div.gallery.gallery-columns-4{display:grid;gap:0 10px}
body div.gallery.gallery-columns-2{grid-template-columns:repeat(2,1fr)}
body div.gallery.gallery-columns-3{grid-template-columns:repeat(3,1fr)}
body div.gallery.gallery-columns-4{grid-template-columns:repeat(4,1fr)}
body div.gallery .gallery-item{margin:10px 0;width:100%!important;position:relative}
body div.gallery .landscape{overflow:hidden;position:relative}
body div.gallery img{background:#006;width:100%;height:auto;border:none!important;transition:all 200ms ease-in-out}
body div.gallery .gallery-item:hover img{scale:1.2;opacity:.9}

/* Header */
.header{background:#fff;padding:8px 0;border-bottom:2px solid var(--primary-color);position:fixed;top:0;width:100%;z-index:1000}
.header .container{display:flex;justify-content:space-between;align-items:center}
.logo{font-weight:700;font-size:24px;color:var(--primary-color);max-width:150px}
.logo-text{font-size:20px}
.nav a{text-decoration:none;color:#333;margin-left:20px;font-weight:500;text-transform:uppercase}
.btn-cta{background:var(--primary-color);color:#fff!important;padding:8px 20px;border-radius:5px;display:inline-block}
.btn-inline{margin-top:16px}
.dk-icMenu{width:20%;text-align:center;color:#0e477c;font-size:24pt;padding:6px;position:absolute;right:0;top:0;display:none;background:none;border:0;line-height:1.2}

/* Hero & khối nội dung */
.hero{background:linear-gradient(rgba(0,0,0,.5),rgba(0,0,0,.5)),var(--hero-desktop,none) no-repeat center/cover;background-color:#22384c;height:80vh;display:flex;align-items:center;justify-content:center;color:#fff;text-align:center}
.hero-content{padding:0 15%}
.hero-content h1{font-size:18pt;margin:26px 0}
.hero-content p{font-size:16px;line-height:1.6}
.hero-content p a{color:#f9fb86}
.hero-content p a:hover{text-decoration:underline}
.section{padding:2em 0;margin-bottom:0;scroll-margin-top:82px}
.section-title{text-align:center;color:var(--primary-color);margin-bottom:40px;font-size:2rem;text-transform:uppercase;font-weight:700;margin-top:22px}
.section-line{width:40px;height:2px;background-color:#000;margin:10px auto 40px}
.bg-light{background:var(--light-bg)}
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}
.disclaimer-line{text-align:center;color:#fff6d2}
.section-intro{background-color:#22598c}
.section-intro .section-title{color:#ffb300}
.section-intro .text-box p{line-height:1.3;color:#ddd;font-size:14px}
.section-intro .dk-masTriSoa h2,.section-intro .dk-masTriSoa h3{color:var(--gold-color)}
.section-intro .dk-masTriSoa ul{color:#f3f3f3}
.payment-table table{width:100%;border-collapse:collapse;margin-top:20px}
.payment-table table tr:first-child{background:maroon;color:#fff}
.payment-table table th,.payment-table table td{border:1px solid #ddd;padding:15px;text-align:left}
.payment-table table th{background:var(--primary-color);color:#fff}
.open-popup-btn{background-color:#e67e22;color:#fff;padding:12px 25px;border:none;border-radius:5px;font-weight:700;cursor:pointer;font-size:16px;transition:all .3s ease;display:flex;margin:10px auto;width:fit-content}
.open-popup-btn i{margin-right:10px;padding-top:2px}
.open-popup-btn:hover{background-color:#d35400;transform:scale(1.05);color:#fff}

/* Liên hệ */
.contact-section{background:var(--primary-color);color:#fff}
.contact-section .section-title{color:#fff}
.contact-info h3{color:#fff;font-size:18px;margin:22px 0}
.contact-info h2{color:#fff;font-size:28pt;margin:22px 0}
.contact-info p{margin:0;line-height:1.7}
.contact-info a{color:#fff;text-decoration:none}
.contact-form form{width:96%;margin:0 auto}
.contact-form input{width:100%;padding:12px;margin-bottom:20px;border:none;border-radius:4px;display:block}
.contact-form button{width:100%;padding:15px;background:var(--gold-color);border:none;border-radius:4px;color:#fff;font-weight:700;cursor:pointer;transition:.3s}
.contact-form button:hover{background:#b8962e}
.contact-form button[disabled]{opacity:.6;cursor:wait}
.hp-field{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.form-response{margin-top:10px;font-size:15px;min-height:1.2em}
.form-response.is-ok{color:#b6f5c4}
.form-response.is-error{color:#ffd0d0}
.contact-notes{text-align:center;margin-top:8px}
.contact-notes .note-1{font-size:13px;color:#ddd;margin:2px 0}
.contact-notes .note-2{color:#edf8ff;font-size:14px;margin:3px 0 8px;line-height:1.4}

/* Tin tức */
.news-block{position:relative;width:100%;float:left;scroll-margin-top:82px;padding:2em 0}
.news-inner{width:1200px;max-width:100%;margin:0 auto;padding:0 20px}
.news-block .section-title a{color:#28475f}
.news-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin:2% 0}
.news-card{background:#fff;overflow:hidden;box-shadow:0 1px 2px rgba(0,0,0,.08);border-radius:8px;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}
.news-card:hover,.news-card:focus-visible{transform:translateY(-4px);box-shadow:0 12px 30px rgba(0,0,0,.16);outline:2px solid #a67730;outline-offset:3px}
.news-card--link{cursor:default}
.news-card img{width:100%;height:auto;display:block}
.news-card__body{padding:0 0 12px}
.news-card h3{font-size:16px;text-align:left;margin:6px 0;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.news-card h3 a{color:#333}
.news-card h3 a:hover{color:#018d67}
.news-card p{font-size:13px;line-height:1.4;color:#4b5563;margin:6px 0}

/* Cửa sổ tin (popup) */
.news-dialog{width:min(980px,calc(100% - 28px));max-width:980px;max-height:90vh;margin:auto;padding:0;border:0;border-radius:14px;box-shadow:0 24px 80px rgba(0,0,0,.36);overflow:hidden;color:#252525}
.news-dialog::backdrop{background:rgba(0,0,0,.72)}
.news-dialog__header{position:sticky;top:0;z-index:2;display:flex;align-items:flex-start;gap:16px;padding:20px 64px 18px 24px;background:#fff;border-bottom:1px solid #e7e2d9}
.news-dialog__title{margin:0;font-size:clamp(21px,3vw,31px);line-height:1.25;color:#694519}
.news-dialog__close{position:absolute;top:12px;right:14px;width:42px;height:42px;border:0;border-radius:50%;background:#f2eee7;color:#3c2b19;font-size:28px;line-height:1;cursor:pointer}
.news-dialog__close:hover,.news-dialog__close:focus-visible{background:#694519;color:#fff;outline:2px solid #a67730;outline-offset:2px}
.news-dialog__body{max-height:calc(90vh - 90px);overflow:auto;padding:24px;background:#fff;font-size:17px;line-height:1.72}
.news-dialog__body h2,.news-dialog__body h3{color:#694519;line-height:1.35;margin:1.3em 0 .55em;text-transform:none}
.news-dialog__body h2{font-size:1.5rem}
.news-dialog__body h3{font-size:1.2rem}
.news-dialog__body p{margin:.8em 0;font-size:inherit;line-height:inherit}
.news-dialog__body ul,.news-dialog__body ol{margin:.8em 0;padding-left:1.4em}
.news-dialog__body ul{list-style:disc}
.news-dialog__body ol{list-style:decimal}
.news-dialog__body img{display:block;max-width:100%;height:auto;margin:18px auto;border-radius:6px}
.news-dialog__body table{display:block;max-width:100%;overflow:auto;border-collapse:collapse}
.news-dialog__body a{color:#8a5a20;text-decoration:underline}
.news-dialog__body div.gallery{margin:16px 0}
body.news-modal-open{overflow:hidden}

/* Trang trong */
body.page-inner .site-main{padding-top:calc(var(--header-h) + 14px);min-height:70vh}
.crumbs{font-size:14px;color:#555;margin:14px 0 6px}
.crumbs a{color:#28475f}
.page-title{font-size:30px;color:var(--primary-color);margin:8px 0 14px;line-height:1.3}
.article-date{display:block;color:#777;font-size:14px;margin-bottom:12px}
.article-cover img{max-width:100%;height:auto;margin:0 auto 16px;display:block}
.page-article .dk-masTriSoa,.page-category .dk-masTriSoa{color:#333}
.page-article .article-body p,.page-category .article-body p{font-size:17px;line-height:1.6}
.page-article .article-body ul li,.page-category .article-body ul li{font-size:16px}
.sub-cats{display:flex;flex-wrap:wrap;gap:10px;margin:10px 0 18px}
.sub-cats a{display:inline-block;padding:6px 14px;border:1px solid var(--primary-color);border-radius:20px}
.empty{color:#666;margin:20px 0}

/* Chân trang */
.site-footer{color:#fff;font-size:12px;position:relative;width:100%;float:left;clear:both}
.site-footer .site-info{background:#08426a;width:100%;padding:5px}
.site-footer .site-info a{padding:4px 0;color:#f9f9f9;display:inline-block}
.site-footer .site-info p{margin:5px 0;line-height:1.3}
.site-footer .grid-2{align-items:start;gap:20px}
.site-footer i{margin-right:4px}
.foot-social a{margin-right:10px}
.foot-disclaimer{text-shadow:0 1px 2px #000;text-align:center;display:block!important}
.scrollup{position:fixed;right:0;bottom:0;background:#2383db;color:#fff;border:0;cursor:pointer;z-index:9999;width:50px;height:50px}

/* Nút liên hệ nổi */
#button-contact-vr{position:fixed;bottom:0;z-index:99999}
#button-contact-vr .button-contact{position:relative;margin-top:-5px}
#button-contact-vr .button-contact .phone-vr{position:relative;background-color:transparent;width:90px;height:90px;cursor:pointer;z-index:11;transform:translateZ(0);left:0;bottom:0;display:block}
.phone-vr-circle-fill{width:65px;height:65px;top:12px;left:12px;position:absolute;box-shadow:0 0 0 0 #C00;background-color:rgba(230,8,8,.7);border-radius:50%;border:2px solid transparent;animation:zoom 1.3s infinite;transform-origin:50% 50%}
.phone-vr-img-circle{background-color:red;width:40px;height:40px;line-height:40px;top:25px;left:25px;position:absolute;border-radius:50%;overflow:hidden;display:flex;justify-content:center;animation:phone-vr-ring 1s infinite ease-in-out}
.phone-vr-img-circle a{display:block;line-height:37px}
.phone-vr-img-circle img{max-height:25px;max-width:27px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}
.is-zalo .phone-vr-circle-fill{box-shadow:0 0 0 0 #2196F3;background-color:rgba(33,150,243,.7)}
.is-zalo .phone-vr-img-circle{background-color:#2196F3}
@keyframes phone-vr-ring{0%{transform:rotate(0) scale(1) skew(1deg)}10%{transform:rotate(-25deg) scale(1) skew(1deg)}20%{transform:rotate(25deg) scale(1) skew(1deg)}30%{transform:rotate(-25deg) scale(1) skew(1deg)}40%{transform:rotate(25deg) scale(1) skew(1deg)}50%{transform:rotate(0) scale(1) skew(1deg)}100%{transform:rotate(0) scale(1) skew(1deg)}}
@keyframes zoom{0%{transform:scale(.9)}70%{transform:scale(1);box-shadow:0 0 0 15px transparent}100%{transform:scale(.9);box-shadow:0 0 0 0 transparent}}
.phone-bar a{background:red;position:fixed;bottom:25px;left:30px;z-index:-1;color:#fff;font-size:16px;padding:10px 15px 10px 50px;border-radius:100px;white-space:nowrap}
.phone-bar a:hover{opacity:.8;color:#fff}

@media (max-width:768px){
.grid-2{grid-template-columns:1fr}
.payment-table table th,.payment-table table td{padding:10px 8px}
body div.gallery.gallery-columns-3{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:580px){
body div.gallery.gallery-columns-2,body div.gallery.gallery-columns-3{display:block}
body div.gallery.gallery-columns-4{grid-template-columns:repeat(2,1fr)}
.container{padding:0 8px}
.section{padding:0}
.dk-masTriSoa h2{font-size:15pt}
.hero-content h1{font-size:15pt}
.section-title{font-size:17pt;margin-top:0;padding-top:1em}
.header{padding-bottom:0}
.header .container{display:block;padding:0}
.hero{height:60vh;background-image:linear-gradient(rgba(0,0,0,.5),rgba(0,0,0,.5)),var(--hero-mobile,var(--hero-desktop,none))}
.hero-content{padding:7em 3% 0}
.logo{margin:0 0 8px;padding-left:8px}
.dk-icMenu{display:block}
.nav{display:none}
.nav.nav-mobile{display:block;background:var(--primary-color)}
.nav.nav-mobile a{border-bottom:1px solid #153a5c}
.nav.nav-mobile a:last-child{border-bottom:none}
.nav a{padding:10px 12px;background:var(--primary-color);color:#fff;margin-left:0;display:block}
.nav a.btn-cta{display:none}
.dk-masTriSoa p{font-size:14px}
h2{font-size:22px}
.news-inner{padding:0 8px}
.news-block .section-title{font-size:20px}
.news-dialog{width:calc(100% - 16px);max-height:94vh;border-radius:10px}
.news-dialog__header{padding:16px 54px 14px 16px}
.news-dialog__title{font-size:20px}
.news-dialog__close{top:8px;right:8px;width:38px;height:38px}
.news-dialog__body{max-height:calc(94vh - 76px);padding:16px;font-size:16px}
.page-title{font-size:24px}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.phone-vr-circle-fill,.phone-vr-img-circle{animation:none}}

.foot-col a{overflow-wrap:anywhere;word-break:break-word}
body div.gallery.gallery-columns-1{display:grid;grid-template-columns:1fr;gap:0 10px}
.site-footer .foot-social{margin:10px 0 4px}
.site-footer .foot-social a{width:42px;height:42px;padding:0;margin:0 10px 0 0;border-radius:50%;background:#1877f2;color:#fff;font-size:20px;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 2px 6px rgba(0,0,0,.35);transition:transform .2s,background .2s,box-shadow .2s}
.site-footer .foot-social a i{margin:0;line-height:1}
.site-footer .foot-social a:hover,.site-footer .foot-social a:focus-visible{background:#2d88ff;transform:translateY(-3px) scale(1.08);box-shadow:0 6px 14px rgba(0,0,0,.45)}
.site-footer .foot-social a:focus-visible{outline:2px solid #fff;outline-offset:2px}

.section .container img,.news-dialog__body img,.article-cover img,.image-box img{height:auto!important;max-width:100%}
.site-footer .foot-social a.soc-zalo{background:#0068ff}
.site-footer .foot-social a.soc-zalo:hover,.site-footer .foot-social a.soc-zalo:focus-visible{background:#2a85ff}
.site-footer .foot-social a.soc-youtube{background:#ff0000}
.site-footer .foot-social a.soc-youtube:hover,.site-footer .foot-social a.soc-youtube:focus-visible{background:#ff3333}
.site-footer .foot-social a.soc-tiktok{background:#000;box-shadow:2px 2px 0 #25f4ee,-2px -2px 0 #fe2c55}
.site-footer .foot-social a.soc-tiktok:hover,.site-footer .foot-social a.soc-tiktok:focus-visible{background:#111}
.site-footer .foot-social .soc-zalo-text{font:700 13px/1 Arial,sans-serif;letter-spacing:-.3px}
.site-footer .foot-social{display:flex;flex-wrap:wrap;gap:10px}
.site-footer .foot-social a{margin:0}
