/* FR EDU – header & footer (thay header/footer của GeneratePress). */
.fr-site-header,.fr-site-footer{font-family:"Be Vietnam Pro",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;color:#14213D}
.fr-site-header *,.fr-site-footer *{box-sizing:border-box}
.fr-tricolor{display:flex;height:4px}
.fr-tricolor span{flex:1;background:#1D3461}
.fr-tricolor span+span{background:#fff}
.fr-tricolor span+span+span{background:#B8232F}
.fr-tricolor--foot span+span+span{background:#E5484D}

/* Header */
.fr-site-header{position:sticky;top:0;z-index:100;background:#fff;border-bottom:1px solid #E6DFD3}
.admin-bar .fr-site-header{top:32px}
@media (max-width:782px){.admin-bar .fr-site-header{top:46px}}
@media (max-width:600px){.admin-bar .fr-site-header{top:0}}
.fr-site-header__inner{max-width:1200px;margin:0 auto;padding:10px 24px;display:flex;align-items:center;gap:20px}
.fr-brand{display:flex;align-items:center;gap:12px;text-decoration:none;flex:none}
.fr-brand svg{display:block}
.fr-brand__text{display:flex;flex-direction:column;gap:3px}
.fr-brand__tag{font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:#586174;line-height:1.2}

.fr-nav{flex:1;min-width:0}
.fr-nav ul{list-style:none;margin:0;padding:0}
.fr-nav>ul{display:flex;flex-wrap:wrap;gap:2px}
.fr-nav li{position:relative}
.fr-nav a{display:flex;align-items:center;gap:4px;min-height:44px;padding:0 12px;border-radius:8px;color:#14213D;text-decoration:none;font-size:15px;font-weight:500;white-space:nowrap}
.fr-nav a:hover,.fr-nav a:focus-visible,.fr-nav .current-menu-item>a,.fr-nav .current-menu-ancestor>a{background:#EEF1F7;color:#1D3461}
.fr-nav .menu-item-has-children>a::after{content:"";width:7px;height:7px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translateY(-2px);margin-left:4px}
.fr-nav .sub-menu{position:absolute;left:0;top:100%;min-width:260px;padding:10px;background:#fff;border:1px solid #E6DFD3;border-radius:14px;box-shadow:0 16px 40px rgba(20,33,61,.14);opacity:0;visibility:hidden;transform:translateY(6px);transition:opacity .15s,transform .15s,visibility .15s;z-index:10}
.fr-nav li:hover>.sub-menu,.fr-nav li:focus-within>.sub-menu{opacity:1;visibility:visible;transform:none}
.fr-nav .sub-menu a{min-height:44px;font-size:15px;white-space:normal}

.fr-actions-bar{display:flex;align-items:center;gap:8px;flex:none}
.fr-pop{position:relative}
.fr-pop>summary{list-style:none;cursor:pointer;width:44px;height:44px;border-radius:10px;border:1px solid #E6DFD3;background:#fff;color:#14213D;display:flex;align-items:center;justify-content:center}
.fr-pop>summary::-webkit-details-marker{display:none}
.fr-pop>summary:hover,.fr-pop[open]>summary{border-color:#1D3461;color:#1D3461}
.fr-pop__panel{position:absolute;right:0;top:calc(100% + 8px);width:min(420px,calc(100vw - 32px));display:flex;gap:8px;padding:10px;background:#fff;border:1px solid #E6DFD3;border-radius:14px;box-shadow:0 16px 40px rgba(20,33,61,.14);z-index:20}
.fr-pop__panel input{flex:1;min-width:0;min-height:46px;padding:0 14px;border:1.5px solid #E6DFD3;border-radius:10px;font-size:16px;font-family:inherit}
.fr-pop__panel input:focus{outline:none;border-color:#1D3461}
.fr-pop__panel button{min-height:46px;padding:0 18px;border:0;border-radius:10px;background:#1D3461;color:#fff;font-weight:600;font-size:15px;font-family:inherit;cursor:pointer}
.fr-link-login{min-height:44px;display:flex;align-items:center;padding:0 12px;border-radius:10px;color:#14213D;text-decoration:none;font-size:15px;font-weight:500}
.fr-link-login:hover{background:#EEF1F7;color:#1D3461}
.fr-cta-btn{min-height:44px;display:inline-flex;align-items:center;justify-content:center;padding:0 18px;border-radius:10px;background:#B8232F;color:#fff!important;text-decoration:none;font-size:15px;font-weight:600}
.fr-cta-btn:hover{background:#A11F2A}
.fr-ghost-btn{min-height:48px;display:inline-flex;align-items:center;justify-content:center;border-radius:12px;border:1.5px solid #1D3461;color:#1D3461;text-decoration:none;font-weight:600}
.fr-mnav{display:none}
.fr-mnav>summary{background:#1D3461;border-color:#1D3461;color:#fff}
.fr-mnav[open]>summary{background:#fff;color:#1D3461}

@media (max-width:1024px){
	.fr-nav,.fr-actions-bar>.fr-link-login,.fr-actions-bar>.fr-cta-btn{display:none}
	.fr-site-header__inner{justify-content:space-between;padding:8px 16px}
	.fr-brand .fr-mark{width:38px;height:38px}
	.fr-mnav{display:block;position:static}
	.fr-mnav__panel{position:absolute;left:0;right:0;top:100%;max-height:calc(100vh - 70px);overflow:auto;background:#fff;border-top:1px solid #E6DFD3;box-shadow:0 20px 40px rgba(20,33,61,.18);padding:8px 16px 16px}
	.fr-mnav__panel ul{list-style:none;margin:0;padding:0}
	.fr-mnav__panel a{display:flex;align-items:center;min-height:52px;border-bottom:1px solid #F0EBE2;color:#14213D;text-decoration:none;font-size:17px;font-weight:500}
	.fr-mnav__panel .sub-menu{padding-left:14px}
	.fr-mnav__panel .sub-menu a{min-height:46px;font-size:15px;font-weight:400}
	.fr-mnav__cta{display:flex;flex-direction:column;gap:10px;padding-top:16px}
	.fr-mnav__cta .fr-cta-btn{min-height:50px;font-size:16px;border-radius:12px}
	.fr-site-header .fr-search{position:static}
	.fr-site-header .fr-search .fr-pop__panel{left:16px;right:16px;width:auto}
}
@media (max-width:420px){.fr-brand__tag{display:none}}

/* Footer */
.fr-site-footer{background:#14213D;color:#C9D1E3;margin-top:48px}
.fr-site-footer a{color:#C9D1E3;text-decoration:none}
.fr-site-footer a:hover,.fr-site-footer a:focus-visible{color:#fff;text-decoration:underline}
.fr-site-footer__grid{max-width:1200px;margin:0 auto;padding:56px 24px 36px;display:grid;grid-template-columns:2fr repeat(3,minmax(0,1fr));gap:36px}
.fr-foot__brand{display:flex;flex-direction:column;gap:16px}
.fr-foot__brand p{margin:0;font-size:15px;line-height:1.7;max-width:400px}
.fr-foot__logo{display:flex;align-items:center;gap:12px}
.fr-foot__h{margin:0 0 12px;font-weight:700;color:#fff;font-size:15px}
.fr-foot__list,.fr-contact-list,.fr-socials{list-style:none;margin:0;padding:0}
.fr-foot__list li{margin:0 0 10px;font-size:15px}
.fr-foot__list a{display:inline-block;padding:2px 0}
.fr-contact-list{display:flex;flex-direction:column;gap:6px;font-size:14px}
.fr-contact-list a{color:#fff}
.fr-socials{display:flex;flex-wrap:wrap;gap:8px}
.fr-socials a{min-height:40px;display:inline-flex;align-items:center;padding:0 14px;border-radius:999px;border:1px solid #3A4A6B;color:#fff;font-size:14px}
.fr-socials a:hover{background:#1D3461;text-decoration:none}
.fr-site-footer__bottom{border-top:1px solid #2E3D5E}
.fr-site-footer__bottom-inner{max-width:1200px;margin:0 auto;padding:18px 24px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;font-size:14px}
.fr-site-footer__bottom-inner p{margin:0}
.fr-site-footer__bottom-inner p a{color:#fff}
.fr-foot__legal{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:16px}
@media (max-width:900px){.fr-site-footer__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.fr-foot__brand{grid-column:1/-1}}
@media (max-width:480px){.fr-site-footer__grid{grid-template-columns:1fr;padding:40px 16px 28px}}
.fr-mnav .fr-ico-close,.fr-mnav[open] .fr-ico-open{display:none}.fr-mnav[open] .fr-ico-close{display:block}
