/*----REQUIRE----*/
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&family=Merriweather:ital,wght@0,400;0,700;1,400;1,700&display=swap');

/*----COMPONENTS----*/
:root {
	--border-color: #d0deea;
	--primary: #1A365D;
	--primary-light: #204289;
	--accent: #ff6900;
	--accent-light: #ff8533;
	--gold: #C7BA89;
	--text-dark: #1D3B69;
	--text-body: #334250;
	--text-gray: #8E8F9D;
	--bg-light: #F8F8FA;
	--bg-section: #f4f6f8;
	--border: #e1e5ea;
}

/* GLOBAL */
body {
	background: #fff;
	font-family: 'Inter', sans-serif;
}

main {
	width: 100%;
	float: left;
	position: relative;
	top: 76px;
	padding: 0;
}

a {
	color: var(--primary-light);
	text-decoration: none;
	transition: 0.3s all;
}

a:hover {
	color: var(--gold);
}

blockquote, figure {
	margin: 0 0 2rem;
}

.container {
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 15px;
}

.section-title {
	text-align: center;
	font-family: 'Inter', sans-serif;
	font-weight: 700;
	font-size: 32px;
	color: var(--text-dark);
	margin-bottom: 40px;
	line-height: 1.3;
}

/*----HEADER----*/

header {
	width: 100%;
	float: left;
	position: fixed;
	z-index: 1000;
	top: 0;
	left: 0;
	background: #FFFFFF;
	box-shadow: 0px 2px 4px #EFF0F2;
	border-radius: 0px 0px 16px 16px;
}

header .container {
	padding-left: 0;
	padding-right: 0;
	width: 100%;
	max-width: 100%;
}

header .wrapper {
	width: 100%;
	height: 90px;
	position: relative;
	background: #FFFFFF;
	box-shadow: 0px 2px 4px #EFF0F2;
	border-radius: 0px 0px 16px 16px;
	padding: 0 16px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
}

header .wrapper .container-fluid {
	width: 100%;
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	justify-content: space-between;
	padding-left: 0;
	padding-right: 0;
	gap: 0;
	margin: 0;
}

header .wrapper .logo {
	width: 150px;
	height: 24px;
	white-space: nowrap;
	margin: 0;
	flex-shrink: 0;
	display: flex;
	align-items: center;
}

header .wrapper .logo i {
	width: 100%;
	height: 100%;
	display: inline-block;
	background-size: 100%;
	background-repeat: no-repeat;
	background-image: url('../img/media/logo.svg');
}

header .wrapper .logo a {
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
}

header .wrapper .menu {
	flex-grow: 1;
	display: flex;
	visibility: visible;
	flex-wrap: nowrap;
	justify-content: center;
	align-items: center;
	margin: 0;
	padding: 0;
	min-width: 0; /* Add this to prevent pushing the search icon off screen */
}

header .wrapper .menu > ul {
	list-style: none;
	padding: 0;
	margin: 0;
	display: flex;
	flex-direction: row;
	justify-content: center;
	flex-wrap: nowrap;
	gap: 0;
}

header .wrapper .menu > ul > li {
	font-size: 14px;
	color: var(--text-dark);
	font-weight: 600;
	line-height: 25px;
	position: relative;
	display: flex;
	align-items: center;
	height: 90px !important;
	white-space: nowrap;
	padding: 0;
	margin: 0;
	float: none;
}

header .wrapper .menu > ul > li a {
	height: 100%;
	display: flex;
	align-items: center;
	padding: 0 12px;
	color: var(--text-dark);
	text-decoration: none;
	font-size: 14px;
	font-weight: 600;
	white-space: nowrap;
}

header .wrapper .menu > ul > li a:hover {
	color: var(--gold);
}

header .wrapper .menu > ul > li.active > a {
	color: var(--gold);
}

header .hamburger {
	position: relative;
	cursor: pointer;
	display: none;
	visibility: hidden;
	z-index: 2000;
	width: 40px;
	height: 40px;
	flex-shrink: 0;
	margin: 0;
	padding: 5px;
	border: none;
	background: none;
	order: 3;
}

header .hamburger i {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
}

header .hamburger i::before {
	content: '\e820';
	font-family: 'gbn';
	color: var(--text-dark);
	font-size: 24px;
	font-style: normal;
}

header .hamburger.active i::before {
	content: '\e81f';
	color: #fff;
}

header .mobile-search {
	display: none;
	visibility: hidden;
}

header .wrapper .functions {
	width: auto;
	float: none;
	display: flex;
	visibility: visible;
	align-items: center;
	flex-shrink: 0;
	margin: 0;
	padding: 0;
	gap: 0;
	order: 2;
}

header .functions .search {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 40px;
	z-index: 100;
	margin: 0;
	padding: 0;
}

header .functions .search .icon {
	cursor: pointer;
	z-index: 10;
	position: relative;
	padding: 5px 10px;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	margin: 0;
}

header .functions .search .icon i {
	display: flex;
	align-items: center;
	justify-content: center;
}

header .functions .search .icon i::before {
	content: '\e80d';
	font-family: 'gbn';
	color: var(--text-dark);
	font-size: 20px;
	font-style: normal;
}

header .functions .search .icon i:hover::before {
	color: #2a5479;
}

header .functions .search .bar {
	position: absolute;
	display: none;
	background: #ffffff !important;
	border: 1px solid var(--border);
	border-radius: 4px;
	height: 38px;
	width: 250px;
	z-index: 9999;
	padding: 0 10px;
	align-items: center;
	overflow: hidden;
	right: 0;
	top: 50px;
}

header .functions .search .bar.active {
	display: flex !important;
	position: absolute;
	right: 0;
	top: 50px;
}

header .functions .search .bar form {
	display: flex;
	width: 100%;
	align-items: center;
	gap: 5px;
}

header .functions .search .bar input {
	border: none !important;
	box-shadow: none !important;
	width: 100%;
	padding: 5px 0;
	font-size: 14px;
	outline: none;
	background: transparent;
	color: var(--text-dark);
}

header .functions .search .bar input::placeholder {
	color: #999;
}

header .functions .search .close {
	cursor: pointer;
	padding: 0;
	color: #999;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 24px;
	height: 24px;
	flex-shrink: 0;
}

header .functions .search .close::before {
	content: '\e81f';
	font-family: 'gbn';
	color: var(--text-body);
	font-size: 14px;
}

header .functions .search .close:hover {
	color: var(--accent);
}

header .find-us {
	display: none;
	visibility: hidden;
}

header .wrapper .language {
	float: right;
	display: none;
	visibility: hidden;
}

header .mobile-navigation {
	display: none;
	visibility: hidden;
}

/* ======== HEADER RESPONSIVE ======== */

@media only screen and (max-width: 1199px) {
	header .wrapper {
		height: auto;
		padding: 0;
		display: flex;
		flex-wrap: wrap;
	}

	header .wrapper .container-fluid {
		width: 100%;
		order: 1;
		padding: 10px 16px;
		height: 50px;
		background: #FFFFFF;
	}

	header .wrapper .logo {
		height: auto !important;
		padding-top: 15px !important;
		padding-bottom: 15px !important;
		display: flex;
		align-items: center;
	}

	/* Completely hide desktop style containers on mobile layout */
	header .wrapper .menu {
		display: none !important;
		visibility: hidden !important;
	}

	header .functions {
		display: flex !important;
		visibility: visible !important;
		order: 2;
		margin: 0;
	}

	header .hamburger {
		display: flex;
		visibility: visible;
		margin: 0;
		padding: 5px 8px;
	}

	header .mobile-search {
		display: none;
		visibility: hidden;
	}

	header.mobile-menu--active {
		height: auto;
	}

	header.mobile-menu--active .wrapper {
		background-color: var(--primary-light);
		box-shadow: none;
		border-radius: 0;
		padding: 0;
	}

	header.mobile-menu--active .wrapper .container-fluid {
		background-color: var(--primary-light);
		padding: 10px 16px;
		height: 50px;
		border-bottom: 1px solid rgba(255, 255, 255, 0.2);
	}

	header.mobile-menu--active .wrapper .logo i {
		background-image: url('../img/media/logo-dark.svg');
	}

	header.mobile-menu--active .functions {
		display: flex !important;
		visibility: visible !important;
	}

	header.mobile-menu--active .functions .search .icon i::before {
		color: #fff;
	}

	/* Target and safely reveal the mobile wrapper markup structure properly */
	header.mobile-menu--active .mobile-navigation {
		display: block !important;
		visibility: visible !important;
		width: 100%;
		background-color: var(--primary-light);
		padding: 0 0 15px 0 !important;
	}

	header.mobile-menu--active .mobile-navigation ul {
		display: block !important;
		width: 100% !important;
		margin: 0 !important;
		padding: 0 !important;
		list-style: none !important;
	}

	header.mobile-menu--active .mobile-navigation ul li {
		width: 100% !important;
		display: block !important;
		float: none !important;
		border-bottom: 1px solid rgba(255, 255, 255, 0.15) !important;
		padding: 0 !important;
		margin: 0 !important;
		height: auto !important;
		background-color: transparent !important;
	}

	header.mobile-menu--active .mobile-navigation ul li a {
		width: 100% !important;
		display: block !important;
		padding: 16px 16px !important;
		color: #fff !important;
		line-height: 24px !important;
		height: auto !important;
		text-decoration: none !important;
		float: none !important;
		margin: 0 !important;
		font-size: 16px !important;
		font-weight: 600 !important;
	}

	header.mobile-menu--active .mobile-navigation ul li a:hover {
		color: var(--gold) !important;
		background-color: rgba(199, 186, 137, 0.1) !important;
	}
}

@media only screen and (min-width: 1200px) {
	header .wrapper {
		height: 70px;
		padding: 0 32px;
		display: flex;
		flex-wrap: nowrap;
		justify-content: space-between;
		align-items: center;
	}

	header .wrapper .container-fluid {
		width: 100%;
		display: flex;
		flex-wrap: nowrap;
		align-items: center;
		justify-content: flex-start;
		padding: 0;
		height: auto;
		background: transparent;
	}

	header .wrapper .logo {
		width: 170px;
		height: 24px;
		margin-right: 20px;
	}

	header .wrapper .menu {
		display: flex !important;
		visibility: visible !important;
		flex-grow: 1;
		width: auto;
		background: transparent;
		padding: 0;
	}

	header .wrapper .menu > ul {
		display: flex !important;
		flex-direction: row !important;
		justify-content: center !important;
		flex-wrap: nowrap !important;
	}

	header .wrapper .menu > ul > li {
		display: flex !important;
		float: none !important;
		height: 70px !important;
	}

	header .functions {
		display: flex !important;
		visibility: visible !important;
		flex-shrink: 0;
	}

	header .hamburger {
		display: none !important;
		visibility: hidden !important;
	}

	header .mobile-search,
	header .mobile-navigation {
		display: none !important;
		visibility: hidden !important;
	}

	/* Desktop dropdown menus */
	header .wrapper .menu ul ul {
		position: absolute;
		left: 0;
		top: 100%;
		display: none;
		width: 270px;
		background: #fff;
		box-shadow: 0px 4px 20px rgba(209, 223, 230, 0.5);
		border-radius: 8px;
		list-style: none;
		margin: 0;
		padding: 16px 0;
	}

	header .wrapper .menu ul ul li {
		width: 100%;
		float: left;
		font-size: 16px;
		color: var(--text-dark);
		font-weight: 500;
		padding: 7px 7px;
		line-height: 26px;
	}

	header .wrapper .menu ul ul li:hover {
		color: var(--gold);
	}

	header .wrapper .menu li:hover > ul {
		display: block;
	}
}

@media only screen and (max-width: 1199px) {
    
    /* 1. Keep the mobile header as a uniform white bar */
    header, 
    header.mobile-menu--active {
        position: fixed !important;
        top: 0 !important;
        left: 0 !important;
        width: 100% !important;
        height: 80px !important;
        min-height: 80px !important;
        background: #ffffff !important;
        z-index: 99999 !important;
        box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05) !important;
        display: block !important;
    }

    /* Adjust header positioning if the WordPress Admin Bar is visible */
    body.admin-bar header {
        top: 46px !important;
    }
    @media screen and (min-width: 783px) and (max-width: 1199px) {
        body.admin-bar header { top: 32px !important; }
    }

    /* 2. Align internal header items horizontally */
    header .container-fluid {
        display: flex !important;
        flex-direction: row !important;
        justify-content: flex-end !important;
        align-items: center !important;
        height: 100% !important;
        padding: 0 15px !important;
    }

    /* Force logo to stay on the far left */
    header .logo {
        margin-right: auto !important; 
        display: flex !important;
        align-items: center !important;
        height: 100% !important;
    }

    header .logo img {
        max-height: 52px !important;
        width: auto !important;
        object-fit: contain !important;
    }

    /* 3. Search Icon Styling (Visible on standard mobile view) */
    header .functions {
        display: block !important;
        margin-right: 25px !important;
    }

    header .functions .search .icon i {
        background-color: transparent !important;
        color: #1a3a6c !important;
    }

    /* NEW: Hide the search icon completely when the mobile menu is opened */
    header.mobile-menu--active .functions {
        display: none !important;
    }

    /* 4. Rebuild Crisp Hamburger Menu Lines */
    header .hamburger {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 32px !important;
        height: 32px !important;
        cursor: pointer !important;
    }

    header .hamburger i {
        position: relative !important;
        display: block !important;
        width: 22px !important;
        height: 2px !important;
        background-color: #1a3a6c !important;
        transition: background 0.2s ease-in-out !important;
    }

    header .hamburger i::before,
    header .hamburger i::after {
        content: "" !important;
        position: absolute !important;
        left: 0 !important;
        width: 22px !important;
        height: 2px !important;
        background-color: #1a3a6c !important;
        transition: transform 0.2s ease-in-out, top 0.2s ease-in-out !important;
    }

    header .hamburger i::before {
        top: -7px !important;
    }

    header .hamburger i::after {
        top: 7px !important;
    }

    /* Transform hamburger lines into a clean 'X' when menu is active */
    header.mobile-menu--active .hamburger i {
        background-color: transparent !important;
    }

    header.mobile-menu--active .hamburger i::before {
        top: 0 !important;
        transform: rotate(45deg) !important;
    }

    header.mobile-menu--active .hamburger i::after {
        top: 0 !important;
        transform: rotate(-45deg) !important;
    }

    /* 5. Dropdown overlay menu settings */
    header .mobile-navigation {
        position: fixed !important;
        top: 80px !important;
        left: 0 !important;
        width: 100% !important;
        height: calc(100vh - 80px) !important;
        background: #1a3a6c !important;
        z-index: 99998 !important;
        overflow-y: auto !important;
        display: none !important;
    }

    body.admin-bar header .mobile-navigation {
        top: calc(80px + 46px) !important;
        height: calc(100vh - 80px - 46px) !important;
    }

    header.mobile-menu--active .mobile-navigation {
        display: block !important;
    }

    /* Hide unnecessary desktop-specific containers */
    header .menu, 
    header .find-us, 
    header .mobile-search {
        display: none !important;
    }
}



/*----HERO SECTION (HOMEPAGE)----*/

section.hero {
	width: 100%;
	float: left;
	position: relative;
	background: linear-gradient(135deg, var(--primary) 0%, var(--primary-light) 100%);
	padding: 60px 0;
	overflow: hidden;
}

section.hero::before {
	content: '';
	position: absolute;
	top: 0;
	right: 0;
	width: 400px;
	height: 400px;
	background: rgba(255, 255, 255, 0.05);
	border-radius: 50%;
	transform: translate(100px, -100px);
}

section.hero .content {
	width: 100%;
	position: relative;
	z-index: 1;
}

section.hero .content .head {
	width: 100%;
	max-width: 700px;
	margin: 0 auto;
	text-align: center;
}

section.hero .content .head h1 {
	font-size: clamp(2rem, 6vw, 3.2rem);
	color: #fff;
	font-weight: 700;
	line-height: 1.2;
	margin: 0 0 16px 0;
	padding: 0;
}

section.hero .content .head p {
	font-size: 1.1rem;
	color: rgba(255, 255, 255, 0.95);
	line-height: 1.8;
	margin: 0 0 32px 0;
}

.hero-buttons {
	display: flex;
	gap: 16px;
	justify-content: center;
	flex-wrap: wrap;
}

.btn {
	padding: 14px 32px;
	border-radius: 6px;
	font-weight: 600;
	font-size: 1rem;
	border: none;
	cursor: pointer;
	transition: all 0.3s ease;
	display: inline-block;
	text-decoration: none;
	text-align: center;
}

.btn-primary {
	background: var(--accent);
	color: white;
}

.btn-primary:hover {
	background: var(--accent-light);
	color: white;
	transform: translateY(-2px);
	box-shadow: 0 8px 16px rgba(255, 105, 0, 0.3);
}

.btn-secondary {
	background: white;
	color: var(--primary);
}

.btn-secondary:hover {
	background: var(--bg-light);
	color: var(--primary);
	transform: translateY(-2px);
}

/*----INTRO SECTION----*/

section.intro {
	padding: 60px 0;
	text-align: center;
	background: white;
}

.intro-text {
	max-width: 750px;
	margin: 0 auto;
}

.intro-text p {
	font-size: 1.15rem;
	color: #666;
	line-height: 1.8;
}

.intro-text strong {
	color: var(--primary);
	font-weight: 700;
}

/*----CATEGORIES SECTION----*/

section.categories {
	padding: 60px 0;
	background: var(--bg-section);
}

.category-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
	gap: 24px;
}

.category-card {
	background: white;
	padding: 32px;
	border-radius: 10px;
	border: 2px solid var(--border);
	text-align: center;
	transition: all 0.3s ease;
}

.category-card:hover {
	transform: translateY(-6px);
	box-shadow: 0 12px 24px rgba(26, 54, 93, 0.15);
	border-color: var(--accent);
}

.category-card h3 {
	font-size: 1.3rem;
	margin-bottom: 12px;
	color: var(--primary);
}

.category-card p {
	color: #666;
	font-size: 0.95rem;
	line-height: 1.6;
	margin-bottom: 16px;
}

.category-card a {
	color: var(--accent);
	font-weight: 600;
	transition: all 0.3s ease;
}

.category-card a:hover {
	color: var(--accent-light);
}

/*----FEATURED GUIDES SECTION----*/

section.featured-guides {
	padding: 60px 0;
	background: white;
}

.guides-header {
	text-align: center;
	margin-bottom: 40px;
	padding-bottom: 24px;
	border-bottom: 2px solid var(--border);
}

.guide-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
	gap: 24px;
}

.guide-card {
	background: var(--bg-section);
	border-radius: 10px;
	overflow: hidden;
	transition: all 0.3s ease;
	border: 1px solid var(--border);
}

.guide-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 10px 20px rgba(0, 0, 0, 0.08);
}

.guide-card-header {
	background: linear-gradient(135deg, var(--primary) 0%, var(--primary-light) 100%);
	color: white;
	padding: 20px;
	min-height: 80px;
	display: flex;
	align-items: flex-start;
}

.guide-card-header h4 {
	font-size: 1.1rem;
	line-height: 1.4;
	margin: 0;
}

.guide-card-body {
	padding: 20px;
}

.guide-card-body p {
	color: #666;
	font-size: 0.95rem;
	margin-bottom: 16px;
	line-height: 1.6;
}

.guide-card-body a {
	color: var(--accent);
	font-weight: 600;
	display: inline-flex;
	align-items: center;
	gap: 6px;
}

.guide-card-body a::after {
	content: '→';
	transition: transform 0.3s ease;
}

.guide-card:hover .guide-card-body a::after {
	transform: translateX(4px);
}

/*----TOOLS & RESOURCES SECTION----*/

section.tools-section {
	padding: 60px 0;
	background: var(--bg-section);
}

.tools-content {
	max-width: 800px;
	margin: 0 auto;
	text-align: center;
}

.tools-description {
	font-size: 1.1rem;
	color: #666;
	margin-bottom: 32px;
	line-height: 1.8;
}

.tools-links {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
	gap: 16px;
}

.tool-item {
	background: white;
	padding: 20px;
	border-radius: 8px;
	border: 2px solid var(--border);
	transition: all 0.3s ease;
}

.tool-item:hover {
	border-color: var(--accent);
	background: white;
}

.tool-item a {
	color: var(--primary);
	font-weight: 600;
	display: block;
}

/*----LATEST ARTICLES SECTION----*/

section.latest-articles {
	padding: 60px 0;
	background: white;
}

.articles-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
	gap: 24px;
}

.article-item {
	background: var(--bg-section);
	border-radius: 10px;
	overflow: hidden;
	border: 1px solid var(--border);
	transition: all 0.3s ease;
}

.article-item:hover {
	transform: translateY(-4px);
	box-shadow: 0 10px 20px rgba(0, 0, 0, 0.08);
}

.article-meta {
	padding: 20px;
}

.article-category {
	display: inline-block;
	background: var(--accent);
	color: white;
	padding: 4px 12px;
	border-radius: 20px;
	font-size: 0.8rem;
	font-weight: 600;
	margin-bottom: 12px;
}

.article-title {
	font-size: 1.1rem;
	font-weight: 600;
	color: var(--primary);
	margin-bottom: 8px;
	line-height: 1.4;
}

.article-excerpt {
	color: #666;
	font-size: 0.95rem;
	line-height: 1.6;
}

/*----CTA SECTION----*/

section.cta-section {
	padding: 60px 0;
	background: linear-gradient(135deg, var(--primary) 0%, var(--primary-light) 100%);
	color: white;
	text-align: center;
}

.cta-content h2 {
	font-size: 2rem;
	margin-bottom: 16px;
}

.cta-content p {
	font-size: 1.1rem;
	margin-bottom: 24px;
	opacity: 0.95;
}

/*----BREADCRUMB----*/

section.breadcrumb {
	width: 100%;
	float: left;
	position: relative;
	margin: 10px 0 0 0;
	z-index: 20;
}

section.breadcrumb ul {
	width: 100%;
	float: left;
	border-bottom: 1px solid var(--border-color);
	padding: 0 0 15px 0;
	list-style: none;
	margin: 0;
	white-space: nowrap;
	overflow-x: auto;
}

section.breadcrumb ul li {
	display: inline-block;
	font-size: 14px;
	font-weight: 500;
	color: #667085;
	line-height: 20px;
	padding-top: 4px;
	padding-bottom: 4px;
}

section.breadcrumb ul li i.icon-home {
	width: 20px;
	height: 20px;
	display: inline-block;
	float: left;
	background-size: 100%;
	background-repeat: no-repeat;
	background-image: url('../img/elements/icons/system/home.svg');
}

section.breadcrumb ul li i.icon-home::before,
section.breadcrumb ul li i.icon-home::after {
	content: '';
	display: none;
	visibility: hidden;
}

section.breadcrumb ul li.active {
	background: #EFF0F2;
	padding-right: 8px;
	padding-left: 8px;
	border-radius: 6px;
	font-weight: 400;
	color: var(--text-dark);
}

section.breadcrumb ul li::after {
	content: '\e806';
	font-family: 'gbn';
	color: #D0D5DD;
	font-size: 14px;
	margin: 0 20px;
}

section.breadcrumb ul li:last-child::after {
	content: '';
	display: none;
}

/*----PAGE LAYOUT----*/

section.page-body {
	width: 100%;
	position: relative;
	background: #fff;
}

section.page-body .left-content {
	width: 100%;
	float: left;
	position: relative;
	padding-top: 20px;
}

section.page-body .right-content {
	width: 100%;
	float: left;
	position: relative;
}

/*----ARTICLE PAGE----*/

.article-page {
	width: 100%;
	float: left;
	position: relative;
}

.article-page .header {
	width: 100%;
	float: left;
	position: relative;
	margin: 0 0 24px 0;
}

.article-page .header .head {
	width: 100%;
	float: left;
}

.article-page .header .head h1 {
	width: 100%;
	float: left;
	margin: 0 0 25px 0;
	padding: 0;
	color: var(--text-body);
	line-height: 41px;
	font-size: 30px;
	font-weight: 600;
}

.article-page .header .info {
	width: 100%;
	float: left;
	margin: 0 0 16px 0;
}

.article-page .header .info span {
	float: left;
	margin-right: 20px;
}

.article-page .header .info span.author {
	font-weight: 600;
	color: var(--primary-light);
	font-size: 16px;
	line-height: 24px;
}

.article-page .header .info span.date {
	color: var(--text-gray);
	font-size: 13px;
	line-height: 26px;
	text-transform: uppercase;
}

.article-page .body {
	width: 100%;
	float: left;
	position: relative;
	padding-top: 40px;
}

.article-page .body h2 {
	font-size: 28px !important;
	color: var(--text-body);
	letter-spacing: -1.2px;
	line-height: 40px;
	font-weight: 600;
	padding: 10px 0 0;
	margin: 20px 0 25px 0;
	clear: left;
}

.article-page .body h3 {
	font-size: 26px !important;
	color: var(--text-body);
	line-height: 38px;
	font-weight: 600;
	padding: 10px 0 0;
	margin: 15px 0 25px 0;
	clear: left;
}

.article-page .body h4 {
	font-size: 24px !important;
	color: var(--text-body);
	line-height: 34px;
	font-weight: 700;
	padding: 10px 0 0;
	margin: 40px 0 25px 0;
	clear: left;
}

.article-page .body p {
	font-size: 16px;
	line-height: 1.7;
	color: var(--text-body);
	font-weight: 400;
	margin: 0 0 24px;
	    padding: 0;
}

.page-body .article-page .body p a,
.page-body .article-page .body li a {
	font-size: 18px;
	color: var(--primary-light);
	border-bottom: 1px solid var(--text-body);
	padding-bottom: 1px;
	font-weight: 500;
}

.page-body .article-page .body p a:hover,
.page-body .article-page .body li a:hover {
	color: var(--gold);
	border-bottom: 1px solid var(--gold);
}

.article-page .body strong,
.article-page .body b {
	font-weight: 600;
}

.article-page .body ul,
.article-page .body ol {
	margin: 5px 0 15px 0;
	padding: 0 0 0 30px;
}

.article-page .body ul li,
.article-page .body ol li {
	font-size: 18px;
	padding: 3px 0 15px 0;
	line-height: 31px;
	color: var(--text-body);
}

.article-page .body blockquote {
	padding: 0 0 0 25px;
	margin: 30px 0;
	border-left: 6px solid var(--gold);
}

.article-page .body blockquote > p {
	font-size: 19px !important;
	line-height: 30px !important;
	color: var(--gold) !important;
	font-weight: 700;
	margin: 0 !important;
}

.article-page .body iframe {
	width: 100% !important;
	height: 300px;
}

.article-page .body hr {
	height: 1px;
	background-color: #d0deea;
	border: none;
	margin: 40px 0;
}

.article-page .body .wp-block-image img {
	max-width: 100%;
	height: auto;
}

/* Edit Post Link */
.edit-post {
	width: 100%;
	float: left;
	margin: 20px 0;
}

.edit-post a {
	color: var(--primary-light);
	font-size: 14px;
}

/*----PAGINATION----*/

.pagination {
	width: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	margin-top: 15px;
	float: left;
	margin-bottom: 30px;
}

.pagination .page-numbers {
	float: left;
	border-radius: 100px;
	width: 40px;
	height: 40px;
	line-height: 38px;
	font-size: 15px;
	color: var(--text-gray);
	border: 1px solid #fff;
	transition: .3s all;
	margin: 0 2px;
	text-align: center;
}

.pagination .page-numbers.current {
	color: var(--primary-light);
	border-color: var(--text-dark);
}

.pagination .page-numbers:hover {
	color: var(--primary-light);
	border-color: var(--text-dark);
}

/*----FAQ----*/

.faq {
	width: 100%;
	float: left;
	margin-top: 60px;
}

.faq .box {
	width: 100%;
	float: left;
	background-color: var(--bg-light);
	padding: 30px 15px;
	margin: 0 0 30px 0;
	border-radius: 24px;
}

.faq h3 {
	width: 100%;
	float: left;
	text-align: center;
	color: var(--gold);
	font-size: 34px;
	line-height: 44px;
	font-family: 'Merriweather';
	font-weight: 700;
	font-style: italic;
	margin: 0 0 15px 0;
	padding: 0;
}

.faq .content {
	width: 100%;
	float: left;
	position: relative;
}

.faq .content .faq-block {
	width: 100%;
	float: left;
}

.faq .content .faq-block .item {
	width: 100%;
	float: left;
	padding-bottom: 10px;
	padding-top: 19px;
	border-bottom: 1px solid #A7BDD2;
}

.faq .content .faq-block .item:last-child {
	border-bottom: none;
}

.faq .content .faq-block .item span.question {
	width: calc(100% - 30px);
	float: left;
	font-size: 16px;
	color: var(--text-dark);
	font-weight: 600;
	line-height: 24px;
	margin-bottom: 8px;
	position: relative;
	cursor: pointer;
}

.faq .content .faq-block .item span.question::after {
	content: '+';
	width: 24px;
	height: 24px;
	display: inline-block;
	float: left;
	font-size: 18px;
	border-radius: 100px;
	line-height: 21px;
	background-color: var(--gold);
	color: var(--text-body);
	position: absolute;
	right: -30px;
	text-align: center;
	top: 0;
}

.faq .content .faq-block .item span.question.active::after {
	content: '-';
}

.faq .content .faq-block .item span.answer {
	width: 100%;
	float: left;
	font-size: 16px;
	color: rgba(29, 59, 105, 0.85);
	line-height: 24px;
	margin-bottom: 10px;
	display: none;
}

/*----SIDEBAR----*/

aside {
	width: 100%;
	float: left;
	position: relative;
}

aside .si-heading {
	width: 100%;
	float: left;
	font-weight: 700;
	color: var(--text-dark);
	line-height: 26px;
	font-size: 22px;
	margin: 0 0 16px 0;
}

aside .trending {
	width: 100%;
	float: left;
	position: relative;
	margin-bottom: 40px;
}

aside .trending .item {
	width: 100%;
	float: left;
	position: relative;
	margin: 0 0 20px 0;
}

aside .trending .item .thumbnail {
	width: 107px;
	height: 73px;
	float: left;
	position: relative;
	overflow: hidden;
	margin-right: 16px;
}

aside .trending .item .thumbnail a {
	width: 100%;
	height: 100%;
	display: inline-block;
	float: left;
}

aside .trending .item .thumbnail img {
	width: 100%;
	height: 100%;
	display: inline-block;
	float: left;
	object-fit: cover;
	transition: .6s all;
}

aside .trending .item:hover .thumbnail img {
	transform: scale(1.03);
}

aside .trending .item .data {
	width: calc(100% - 123px);
	float: left;
}

aside .trending .item .data .info {
	width: 100%;
	float: left;
	margin: 0 0 9px 0;
	padding-top: 2px;
}

aside .trending .item .data .info span {
	float: left;
}

aside .trending .item .data .info .category {
	margin-right: 16px;
	font-weight: 600;
	font-size: 13px;
	line-height: 15px;
	text-transform: uppercase;
	color: var(--primary-light);
	position: relative;
}

aside .trending .item .data .info .category::before {
	content: '';
	width: 6px;
	height: 6px;
	background: var(--primary-light);
	float: left;
	margin-right: 6px;
	transform: rotate(-45deg);
	border-radius: 1px;
	position: relative;
	top: 4px;
}

aside .trending .item .data .info .date {
	color: var(--text-gray);
	font-weight: 400;
	font-size: 13px;
	line-height: 15px;
	text-transform: uppercase;
}

aside .trending .item .data .heading {
	width: 100%;
	float: left;
	font-size: 16px;
	font-weight: 600;
	color: var(--text-body);
	line-height: 24px;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

aside .trending .item .data .heading:hover {
	color: var(--primary-light);
}

aside .find-us {
	width: 100%;
	float: left;
}

aside .find-us span.title {
	width: 100%;
	float: left;
	text-align: center;
	font-size: 16px;
	color: var(--text-dark);
	line-height: 24px;
	margin-bottom: 10px;
}

aside .find-us ul {
	list-style: none;
	padding: 0;
	margin: 0;
	display: inline-block;
	text-align: center;
	width: 100%;
}

aside .find-us ul li {
	display: inline-block;
	padding: 0 10px;
	color: var(--text-dark);
	font-size: 18px;
}

/*----FOOTER----*/

footer {
	width: 100%;
	float: left;
	position: relative;
	top: 76px;
	margin: 50px 0 0 0;
}

footer .links {
	width: 100%;
	float: left;
	border-top: 1px solid var(--border);
	border-bottom: 1px solid var(--border);
	padding: 50px 0;
	margin: 0;
}

footer .links .row {
	display: flex;
	flex-wrap: wrap;
	margin-left: -15px;
	margin-right: -15px;
}

footer .links .col-md-3 {
	flex: 0 0 25%;
	padding-left: 15px;
	padding-right: 15px;
	margin-bottom: 30px;
}

footer .footer-brand-info {
	width: 100%;
	float: left;
}

footer .footer-brand-info a {
	display: inline-block;
	margin-bottom: 15px;
	border: none !important;
	padding: 0 !important;
}

footer .footer-brand-info a img {
	max-height: 45px;
	width: auto;
	display: block;
}

footer .footer-brand-info p {
	font-size: 14px;
	line-height: 1.6;
	color: #666;
	margin-top: 10px;
}

footer .menu {
	width: 100%;
	float: left;
}

footer .menu span.head {
	width: 100%;
	float: left;
	font-size: 16px;
	font-weight: 600;
	color: var(--text-dark);
	margin-bottom: 16px;
	text-align: left;
}

footer .menu ul {
	list-style: none;
	padding: 0;
	margin: 0;
	width: 100%;
	float: left;
}

footer .menu ul li {
	width: 100%;
	float: left;
	font-size: 14px;
	color: #666;
	line-height: 24px;
	margin-bottom: 8px;
}

footer .menu ul li a {
	color: #666;
	text-decoration: none;
	border: none !important;
	padding: 0 !important;
	transition: 0.3s all;
}

footer .menu ul li a:hover {
	color: var(--primary-light);
}

footer .copyright {
	width: 100%;
	float: left;
	padding: 30px 0;
	margin: 0;
}

footer .copyright .row {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	margin-left: -15px;
	margin-right: -15px;
}

footer .copyright .col-md-6 {
	flex: 0 0 50%;
	padding-left: 15px;
	padding-right: 15px;
}

footer .copyright span.text {
	width: 100%;
	float: left;
	font-size: 13px;
	text-align: left;
	color: #777;
	margin: 0;
	line-height: 24px;
	display: flex;
	align-items: center;
}

footer .copyright span.text a {
	font-weight: bold;
	color: #555;
	text-decoration: none;
	border: none !important;
	padding: 0 !important;
	margin: 0 5px;
}

footer .copyright span.text a:hover {
	color: var(--primary-light);
}

footer .follow-us {
	width: 100%;
	float: left;
	text-align: right;
}

footer .follow-us ul {
	list-style: none;
	padding: 0;
	margin: 0;
	display: inline-flex;
	gap: 15px;
}

footer .follow-us ul li {
	display: inline-block;
}

footer .follow-us ul li a {
	color: var(--text-dark);
	font-size: 20px;
	transition: 0.3s all;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border: none !important;
	padding: 0 !important;
}

footer .follow-us ul li a:hover {
	color: var(--primary-light);
}

footer .follow-us ul li i.icon-linkedin {
	font-size: 18px;
}

/*----FOOTER RESPONSIVE----*/

@media only screen and (max-width: 767px) {
	footer {
		margin: 30px 0 0 0;
	}

	footer .links {
		padding: 30px 0;
	}

	footer .links .col-md-3 {
		flex: 0 0 100%;
		margin-bottom: 20px;
	}

	footer .copyright .col-md-6 {
		flex: 0 0 100%;
		margin-bottom: 15px;
	}

	footer .copyright span.text {
		text-align: center;
		justify-content: center;
	}

	footer .follow-us {
		text-align: center;
	}

	footer .follow-us ul {
		justify-content: center;
	}
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
	footer .links .col-md-3 {
		flex: 0 0 50%;
	}
}

/*----MOBILE RESPONSIVE----*/

@media only screen and (max-width: 768px) {
	.section-title {
		font-size: 22px;
		margin-bottom: 30px;
	}

	section.hero {
		padding: 40px 0;
	}

	.hero-buttons {
		flex-direction: column;
	}

	.btn {
		width: 100%;
	}

	.category-grid {
		grid-template-columns: 1fr;
	}

	.cta-content h2 {
		font-size: 1.5rem;
	}

	.article-page .body p {
		font-size: 16px;
		line-height: 1.4;
		margin: 0 0 24px 0;
	}

	.article-page .body h2 {
		font-size: 22px !important;
	}

	.article-page .header .head h1 {
		font-size: 24px;
		line-height: 1.3;
	}
}

@media only screen and (min-width: 992px) {
	section.page-body .left-content {
		padding-right: 30px;
		border-right: 1px solid var(--border-color);
		padding-top: 30px;
	}

	section.page-body .right-content {
		padding-top: 30px;
	}

	section.page-body.w-sidebar .col-lg-9 {
		flex: 0 0 67%;
		max-width: 67%;
		padding-right: 0;
	}

	section.page-body.w-sidebar .col-lg-3 {
		flex: 0 0 33%;
		max-width: 33%;
		padding-left: 0;
	}

	aside .trending .wrapper {
		padding: 0 0 0 30px;
	}

	footer {
		margin: 100px 0 0 0;
	}
}

@media only screen and (min-width: 1200px) {
	.container {
		width: 100%;
		max-width: 1140px; /* Leaves 60px of breathing room */
	}

	header .container {
		width: 100%;
	}

	section.page-body .left-content.padding-right-130 {
		padding-right: 130px;
	}
}

/*----WP BLOCK TABLE----*/

figure.wp-block-table,
table.wp-block-table {
	width: 100% !important;
	border: 1px solid #d0deea;
	box-shadow: 0px 2px 4px #EFF0F2;
	border-radius: 16px;
	overflow: hidden;
	margin-bottom: 35px;
}

figure.wp-block-table table,
table.wp-block-table {
	border: none;
	border-collapse: collapse;
	margin: 0;
	padding: 0;
	width: 100%;
}

figure.wp-block-table tr,
table.wp-block-table tr {
	height: 48px;
	font-size: 16px;
	font-weight: 600;
	color: var(--text-dark);
	border-bottom: 1px solid #e8eff5;
	background-color: #fff;
}

figure.wp-block-table tr:last-child,
table.wp-block-table tr:last-child {
	border-bottom: none !important;
}

figure.wp-block-table th,
table.wp-block-table th {
	height: 48px;
	font-size: 16px;
	color: #fff;
	font-weight: 600;
	background-color: var(--text-dark);
	border-bottom: 8px solid var(--gold);
	text-align: center;
	padding: 10px 20px;
}

figure.wp-block-table td,
table.wp-block-table td {
	text-align: center;
	padding: 10px 20px;
	border-bottom: 1px solid #e8eff5;
}

figcaption {
	font-size: 12px;
	text-align: center;
	padding: 10px;
}

.wp-block-image img {
	display: block;
	width: 100%;
	height: auto;
}

/*----UTILITY----*/

.view-btn {
	width: 100%;
	float: left;
}

.view-btn a {
	width: 100%;
	height: 51px;
	line-height: 51px;
	display: inline-block;
	float: left;
	border-radius: 100px;
	background-color: var(--primary-light);
	color: #fff;
	margin: 15px 0 0 0;
	font-size: 18px;
	font-weight: 600;
	text-align: center;
	transition: .3s all;
}

.view-btn a:hover {
	background-color: var(--gold);
	color: var(--primary-light);
}

/*----404 PAGE----*/

section.page-404 {
	width: 100%;
	float: left;
	margin: 130px 0 0 0;
	text-align: center;
}

section.page-404 .head h1 {
	color: var(--text-dark);
	font-size: 34px;
	font-weight: 600;
	margin: 64px 0;
}

section.page-404 .head p {
	color: var(--text-gray);
	font-size: 20px;
	line-height: 30px;
}
/* Hide writer name on the Tools & Resources category page */
.category-tools-resources .author {
    display: none !important;
}
/* GLOBAL ADMIN BAR FIX: Prevents overlapping on all screen sizes */



