/* Lam Gia Nguyen custom Elementor widgets — brand: #292A68 / #DFAA29 / Gill Sans */

/* Every page is built with a fully custom Elementor/HTML design — the theme's
   default page title block (Hello Elementor template-parts/single.php) is
   redundant and hidden site-wide. */
.page-header { display: none !important; }

.lgn-logo { font-family: 'Public Sans'; }
.lgn-logo-name { font-size: 22px; font-weight: 700; line-height: 1.2; letter-spacing: .3px; }
.lgn-logo-tagline { font-size: 11px; letter-spacing: .6px; margin-top: 2px; }

.lgn-icon-list { list-style: none; margin: 0; padding: 0; font-family: 'Public Sans'; }
.lgn-icon-list li { display: flex; align-items: center; gap: 10px; margin-bottom: 12px; }
.lgn-icon-list li:last-child { margin-bottom: 0; }
.lgn-icon-list .lgn-icon-wrap { flex: 0 0 auto; display: inline-flex; width: 18px; text-align: center; }
.lgn-icon-list a, .lgn-icon-list span.lgn-text { text-decoration: none; color: inherit; font-size: 14px; line-height: 1.5; }
.lgn-icon-list a:hover { opacity: .75; }

.lgn-btn { font-family: 'Public Sans'; display: inline-flex; align-items: center; justify-content: center; gap: 10px; font-size: 14px; font-weight: 600; text-decoration: none; white-space: nowrap; transition: opacity .2s; }
.lgn-btn:hover { opacity: .85; }
.lgn-btn.lgn-btn-icon-left { flex-direction: row; }
.lgn-btn.lgn-btn-icon-right { flex-direction: row; }

.lgn-social { display: flex; gap: 10px; align-items: center; }
.lgn-social a { display: inline-flex; align-items: center; justify-content: center; width: 38px; height: 38px; text-decoration: none; transition: opacity .2s; }
.lgn-social a:hover { opacity: .8; }
.lgn-social.lgn-shape-circle a { border-radius: 50%; }
.lgn-social.lgn-shape-square a { border-radius: 6px; }

.lgn-nav-menu { list-style: none; margin: 0; padding: 0; display: flex; align-items: center; gap: 30px; font-family: 'Public Sans'; font-size: 15px; }
.lgn-nav-menu li { position: relative; }
.lgn-nav-menu li > a { text-decoration: none; padding: 6px 0; display: inline-block; position: relative; }
.lgn-nav-menu li > a::after { content: ''; position: absolute; left: 0; bottom: 0; width: 0; height: 2px; transition: width .2s; }
.lgn-nav-menu li > a:hover::after, .lgn-nav-menu li.current-menu-item > a::after { width: 100%; }

@media (max-width: 767px) {
	.lgn-nav-menu { flex-wrap: wrap; gap: 14px; }
}
