:root{--space-1:8px;--space-2:16px;--space-3:24px;--space-4:32px;--space-6:48px;--space-8:64px;--radius-card:16px}
html{scroll-padding-top:112px}
svg{display:inline-block;width:20px;height:20px;vertical-align:middle;flex-shrink:0}
.site-header{height:88px;background:#fafaf5f5;box-shadow:0 2px 16px #213f3406}
.header-inner{gap:24px}
.site-nav{gap:28px}
.site-nav a{min-height:48px;display:inline-flex;align-items:center}
.header-actions{gap:16px}
.icon-button,.back-top{width:48px;height:48px}
.icon-button svg,.back-top svg{width:22px;height:22px}
.header-contact{min-height:48px}
.brand-mark{width:44px;height:44px}
.intro-line{padding:20px 0;font-size:12px;letter-spacing:.4px}
.hero{gap:40px;padding:8px 0 24px}
.hero-copy{gap:24px}
.hero .eyebrow{font-size:12px;letter-spacing:1px;line-height:1.6}
.hero-actions{gap:16px 24px}
.button{min-height:48px;padding:12px 20px;gap:16px;border-radius:10px;line-height:1.5}
.text-link{min-height:48px;gap:12px}
.button svg,.text-link svg{width:20px;height:20px}
.hero-video{border-radius:var(--radius-card)}
.video-play{width:72px;height:72px;padding:0;display:grid;place-items:center}
.video-play svg{width:28px;height:28px;margin-left:3px}
.video-details{padding:20px 24px}
.video-details .eyebrow{gap:8px;margin-bottom:8px;line-height:1.5}
.video-details h2{line-height:1.4!important}
.video-source{min-height:44px;margin-top:4px;gap:8px}
.values-strip{gap:24px;padding:24px 0 32px}
.value,.value+.value{padding:20px;gap:16px;border-radius:12px;align-items:flex-start}
.value>svg{width:24px;height:24px;margin-top:2px}
.value strong{line-height:1.5}
.value span{margin-top:4px;line-height:1.6}
.section,.section-topics{padding-top:56px;padding-bottom:56px}
.section-heading{gap:24px;margin-bottom:32px;align-items:flex-end}
.section-heading .eyebrow{margin-bottom:8px}
.section-heading>div>p{margin-top:12px;max-width:620px}
.cards{gap:24px;align-items:stretch}
.article-card{display:flex;flex-direction:column;padding:0 24px 24px;border-radius:var(--radius-card)}
.article-card .card-image{margin:0 -24px;width:calc(100% + 48px);flex-shrink:0}
.article-card h3{margin-top:8px;line-height:1.45!important}
.article-card>p{margin-top:12px;margin-bottom:24px}
.card-category{margin-top:20px;font-size:12px;letter-spacing:.6px;align-self:flex-start}
.card-meta{margin-top:auto;padding-top:16px;gap:8px 16px;line-height:1.5}
.card-meta span{gap:8px}
.card-meta svg{width:16px;height:16px}
.image-arrow{width:36px!important;height:36px!important}
.story-panel{border-radius:var(--radius-card)}
.story-copy{padding:40px}
.story-copy>.eyebrow{margin-bottom:16px}
.story-copy>p{margin-top:16px}
.author{gap:12px;margin:24px 0 16px}
.author-avatar{width:48px;height:48px}
.topics{gap:24px}
.topic{padding:24px;gap:16px;border-radius:12px}
.topic>span{min-width:0;display:flex;align-items:center;gap:12px}
.topic-index{margin:0;flex-shrink:0}
.topic-title{line-height:1.4}
.topic>svg{width:20px;height:20px}
.connect-banner{padding:40px;gap:32px;border-radius:var(--radius-card);margin-bottom:56px}
.connect-banner .button{flex-shrink:0}
.site-footer{padding-top:48px}
.footer-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1.2fr);gap:40px;padding-bottom:40px}
.footer-grid>div{min-width:0}
.footer-about .brand{align-items:flex-start}
.footer-about .brand-sub{max-width:220px;letter-spacing:1px;line-height:1.6}
.footer-about>p{margin-top:20px;max-width:100%}
.footer-title{font-size:16px;line-height:1.4;margin-bottom:16px}
.footer-links{gap:0}
.footer-links a{min-height:44px;display:flex;align-items:center;padding:8px 0}
.footer-latest{margin-top:24px;gap:8px}
.footer-latest a{padding:8px 0;line-height:1.6}
.footer-contact>p{max-width:none;margin-bottom:16px}
.footer-contact .contact-organization{font-size:14px;line-height:1.7}
.footer-contact .contact-organization strong{display:block;margin-bottom:4px}
.footer-info-row{display:flex;align-items:flex-start;gap:12px}
.footer-info-row>svg{margin-top:3px}
.footer-info-text{min-width:0;overflow-wrap:anywhere}
.footer-contact>a{min-height:44px;display:flex;align-items:center;gap:12px;padding:8px 0}
.footer-contact svg{width:20px;height:20px}
.footer-bottom{gap:16px;font-size:12px;line-height:1.6;padding:24px 0}
.zalo-float{min-height:48px;gap:8px;padding:10px 16px 10px 12px;bottom:calc(72px + env(safe-area-inset-bottom));right:24px}
.back-top{right:24px;bottom:calc(8px + env(safe-area-inset-bottom))}
.breadcrumb{gap:8px;font-size:13px;line-height:1.6;padding:24px 0}
.page-intro{padding:24px 0 40px}
.page-intro>p{margin-top:16px;max-width:660px}
.archive-tools{padding:24px;gap:16px;border-radius:12px;margin-bottom:24px}
.search-box{max-width:380px}
.search-box input{border-radius:8px;height:48px}
.filters{gap:8px}
.filter{min-height:44px;padding:10px 16px;font-size:13px;line-height:1.5}
.result-count{margin-bottom:24px;font-size:14px}
.archive-content{padding-bottom:56px}
.news-grid{gap:32px;padding-bottom:48px}
.news-card p{margin-top:16px}
.news-note{padding:24px 0 48px;font-size:14px}
.contact-layout{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;padding:8px 0 48px;align-items:start}
.contact-info h2,.contact-form h2{margin-bottom:24px}
.contact-item{gap:16px;padding:20px 0}
.contact-item>svg,.contact-item>.zalo-svg{width:24px;height:24px;margin-top:4px}
.contact-item small{display:block;margin-bottom:4px;font-size:13px;line-height:1.5;color:var(--muted)}
.contact-item p,.contact-item a{font-size:16px;line-height:1.6}
.contact-item a{min-height:44px;display:inline-flex;align-items:center}
.contact-info>.contact-organization{padding:20px;border:1px solid var(--line);border-radius:12px;background:#edf0e4;margin-bottom:16px}
.contact-info>.contact-organization p{font-size:15px;font-weight:600;line-height:1.7}
.contact-item-zalo{padding:20px;margin-bottom:8px}
.contact-info>p{margin-top:20px;font-size:14px;line-height:1.7}
.contact-form{padding:32px;border-radius:var(--radius-card);border:1px solid var(--line)}
.contact-form>p{margin-bottom:24px}
.form-field{margin-bottom:20px}
.form-field label{margin-bottom:8px;line-height:1.5}
.form-field input,.form-field textarea{border-radius:8px;padding:12px 14px;font-size:16px;line-height:1.5}
.form-field input:hover,.form-field textarea:hover{border-color:#8a9f80}
.form-field input:focus-visible,.form-field textarea:focus-visible{outline:2px solid var(--green);outline-offset:2px;border-color:var(--green)}
.contact-form .form-note{margin-top:16px;margin-bottom:0;font-size:13px!important;line-height:1.7}
#email-draft{margin-top:16px}
.map-wrap{padding-bottom:56px}
.map-wrap h2{margin-bottom:24px}
.map-wrap iframe{border-radius:var(--radius-card)}
.article-heading{margin:8px auto 32px}
.article-heading .eyebrow{margin-bottom:16px}
.article-byline{gap:12px 24px;margin-top:24px;font-size:13px}
.article-byline svg{width:18px;height:18px}
.article-cover{margin-bottom:40px}
.article-cover img{border-radius:var(--radius-card)}
.article-cover figcaption{font-size:13px;line-height:1.6;margin-top:12px}
.reading-layout{grid-template-columns:minmax(0,720px) minmax(0,260px);gap:48px}
.article-sidebar{top:112px}
.toc a{padding:10px 0;min-height:44px;line-height:1.6}
.share-button{border-radius:8px;gap:8px;min-height:48px}
.article-body h2{scroll-margin-top:112px}
.article-end{gap:16px;padding:24px 0;margin-top:32px;flex-wrap:wrap}
.related-section{padding-top:40px}
:focus-visible{outline:3px solid var(--green);outline-offset:4px}
@media(max-width:1200px) and (min-width:961px){.header-inner{gap:16px}.header-actions{gap:12px}.site-nav{gap:20px}.header-inner .brand-sub{font-size:10px;letter-spacing:1px}}
@media(max-width:960px){
  html{scroll-padding-top:96px}
  .site-header{height:80px}
  .site-nav{top:79px;padding:12px 24px 20px;gap:4px;max-height:calc(100dvh - 80px);overflow-y:auto}
  .site-nav a{min-height:48px;padding:12px 0}
  .hero{gap:24px;padding:4px 0 24px}
  .hero-copy{gap:20px}
  .hero-actions{gap:12px 20px}
  .hero-actions .button{min-height:48px}
  .values-strip{gap:12px;padding:8px 0 24px}
  .value,.value+.value{padding:16px 20px}
  .section,.section-topics{padding-top:40px;padding-bottom:40px}
  .section-heading{gap:16px;margin-bottom:24px}
  .cards{gap:24px}
  .topics{gap:16px}
  .topic{padding:20px}
  .story-copy{padding:32px}
  .connect-banner{padding:32px;margin-bottom:40px}
  .footer-grid{grid-template-columns:1fr 1fr;gap:32px}
  .footer-contact{grid-column:1/-1}
  .contact-layout{gap:32px;padding-bottom:40px}
  .reading-layout{gap:24px}
  .article-sidebar{padding:24px;border-radius:12px}
}
@media(max-width:600px){
  .container{width:calc(100% - 40px)}
  .header-inner{gap:12px}
  .header-inner .brand-name{font-size:24px!important}
  .header-inner .brand-sub{font-size:10px;letter-spacing:.3px;line-height:1.5;max-width:160px}
  .header-inner .brand-mark{width:36px;height:36px}
  .header-actions{gap:8px}
  .header-actions .icon-button{width:44px;height:44px}
  .intro-line{padding:16px 0;font-size:11px;letter-spacing:0}
  .hero .eyebrow{font-size:11px;letter-spacing:.7px;gap:8px}
  .hero-actions{display:grid;grid-template-columns:1fr auto;width:100%;gap:12px}
  .hero-actions .button{padding:12px 14px;font-size:14px;gap:12px}
  .hero-actions .text-link{font-size:14px;gap:8px}
  .video-details{padding:16px 20px}
  .video-details h2{font-size:18px!important}
  .video-play{width:60px;height:60px}
  .video-play svg{width:24px;height:24px}
  .video-launch{gap:12px}
  .section-heading>.text-link{padding:8px 12px;font-size:14px}
  .article-card{padding:0 20px 20px}
  .article-card .card-image{margin:0 -20px;width:calc(100% + 40px)}
  .article-card>p{margin-bottom:20px}
  .card-meta{font-size:12px}
  .story-copy{padding:24px}
  .story-photo{min-height:240px}
  .story-photo p{left:24px;bottom:24px}
  .connect-banner{padding:24px}
  .connect-banner .button{margin-top:24px}
  .site-footer{padding-top:32px}
  .footer-grid{grid-template-columns:minmax(0,1fr);gap:32px;padding-bottom:32px}
  .footer-contact{grid-column:auto}
  .footer-about .brand-sub{max-width:220px}
  .footer-bottom{padding:20px 0 88px}
  .footer-bottom span+span{margin-top:8px}
  .zalo-float{padding:10px;right:16px;min-width:48px;min-height:48px}
  .zalo-float .zalo-icon{width:28px;height:28px}
  .back-top{right:16px}
  .breadcrumb{font-size:12px;padding:20px 0;gap:8px}
  .page-intro{padding:8px 0 32px}
  .page-intro h1,.article-heading h1{font-size:28px;line-height:1.35}
  .archive-tools{padding:16px;gap:16px}
  .filter{padding:10px 12px;font-size:12px}
  .contact-form{padding:24px}
  .contact-item{gap:12px;padding:16px 0}
  .contact-info>.contact-organization,.contact-item-zalo{padding:16px}
  .contact-item p,.contact-item a{font-size:15px}
  .form-field{margin-bottom:20px}
  .map-wrap iframe{height:280px}
  .article-heading{margin:8px 0 24px}
  .article-byline{gap:12px;font-size:12px;margin-top:20px}
  .article-cover{margin-bottom:24px}
  .article-sidebar{padding:20px}
  .article-body{font-size:17px;line-height:1.75}
  .article-body>p:first-child{font-size:18px;line-height:1.75}
  .article-body h2{font-size:23px!important;line-height:1.4!important}
}
@media(max-width:360px){
  .container{width:calc(100% - 32px)}
  .header-inner .brand-name{font-size:22px!important}
  .header-inner .brand-sub{font-size:9px;max-width:120px;letter-spacing:0}
  .header-inner .brand-mark{width:32px;height:32px}
  .header-inner>.brand{gap:8px}
  .header-actions{gap:6px}
  .hero-actions{grid-template-columns:1fr}
  .hero-actions .text-link{justify-content:center}
  .contact-form{padding:20px}
}
.site-footer{position:relative;background:#183c30;color:#f2f5e9;border-top:3px solid #9aa971;padding:32px 0 0}
.footer-grid{grid-template-columns:minmax(0,1fr) minmax(0,.65fr) minmax(0,1fr) minmax(0,1.35fr);gap:28px;padding-bottom:28px;align-items:start}
.site-footer p,.site-footer .brand-sub,.site-footer .footer-bottom{color:#d1ddcf}
.site-footer a{color:inherit}
.site-footer a:hover{color:#e2edba}
.site-footer .brand-mark{background:#41694c;border:1px solid #a8bd8c55;width:40px;height:40px}
.site-footer .brand-name{font-size:26px!important;line-height:1.1}
.site-footer .brand-sub{font-size:10px;letter-spacing:.6px;line-height:1.45;margin-top:6px;max-width:180px}
.footer-about>p{font-size:14px;line-height:1.55;margin-top:16px}
.site-footer .footer-title{font-family:var(--sans)!important;font-size:13px;font-weight:700!important;line-height:1.4;letter-spacing:1px!important;margin:0 0 12px;text-transform:uppercase;display:flex;align-items:center;gap:8px}
.site-footer .footer-title:before{content:'';width:14px;height:2px;background:#b8c88c;flex-shrink:0}
.footer-links{font-size:14px;gap:0}
.footer-links a{min-height:36px;padding:6px 0;line-height:1.45}
.site-footer .footer-latest{margin-top:0;gap:0;font-size:13px;line-height:1.5}
.footer-latest a{display:block;padding:8px 0;line-height:1.5;border-bottom:1px solid #ffffff14}
.footer-latest a:first-of-type{padding-top:2px}
.footer-latest a:last-child{border-bottom:0;padding-bottom:0}
.footer-contact{padding:18px;border:1px solid #ffffff1c;border-radius:12px;background:#ffffff07;margin-top:-2px}
.site-footer .footer-contact p,.site-footer .footer-contact a{font-size:13px;line-height:1.5}
.footer-contact>p{margin:0 0 10px;gap:10px}
.site-footer .footer-contact .contact-organization{font-size:12px;line-height:1.55;margin-bottom:10px}
.footer-contact .contact-organization strong{display:inline;margin:0;font-size:12px}
.footer-contact>a{min-height:36px;padding:6px 0;gap:10px}
.footer-contact svg{width:17px;height:17px;color:#bdcf9c}
.footer-info-row>svg{margin-top:2px}
.site-footer .footer-bottom{border-top:1px solid #ffffff24;padding:16px 0;font-size:11px;line-height:1.5;gap:12px}
.footer-bottom a{color:#edf2dc;text-underline-offset:3px}
@media(max-width:1100px){.footer-grid{grid-template-columns:minmax(0,1fr) minmax(0,.8fr);gap:24px 32px}.footer-contact{grid-column:auto}.footer-about .brand-sub{max-width:none}.footer-latest{align-self:start}}
@media(max-width:600px){
  .site-footer{padding-top:24px}
  .footer-grid{grid-template-columns:minmax(0,1fr);gap:24px;padding-bottom:24px}
  .footer-about>p{max-width:100%;margin-top:12px}
  .site-footer .brand-sub{max-width:220px}
  .footer-links{grid-template-columns:1fr 1fr;column-gap:16px}
  .footer-links a{min-height:44px;padding:8px 0}
  .footer-latest a{padding:10px 0;line-height:1.45;min-height:44px}
  .footer-contact{padding:16px;margin:0}
  .footer-contact>a{min-height:44px;padding:8px 0}
  .site-footer .footer-bottom{padding:16px 0 88px;display:grid;gap:6px}
  .footer-bottom span+span{margin-top:0}
}
