/* Theme Name: Samson Media */

/***** Globals *****/
@import url("https://fonts.googleapis.com/css2?family=Raleway:wght@300;400;500;600;700;900&display=swap");
html,
body {
	font-family: "Raleway", sans-serif;
	color: #000;
	overflow-x: hidden;
}
img {
	max-width: 100%;
	height: auto;
}
a {
	transition: all 300ms ease-in-out;
}
@media (max-width: 767px) {
    .reverse-mobile {
        flex-direction: column-reverse;
    }
}

/*** Article ***/
article {
	line-height: 24px;
}
article a {
	color: #2ea3f2;
	transition: all 300ms ease-in-out;
	text-decoration: none;
	font-weight: bold;
}
article a:hover {
	color: #666;
}
article img {
	margin: 24px 0;
}
article blockquote {
	border-left: 3px solid #2ea3f2;
	padding-left: 16px;
}
article h2 {
	font-size: 30px;
	font-weight: 500;
}
main {
	padding: 32px 0;
}
.has-large-font-size {
	line-height: normal;
}
.contained-text {
	max-width: 1130px;
	margin: auto;
}
/***** Button *****/
.icon-button {
	position: relative;
	text-align: center;
	text-decoration: none;
	line-height: 1.7em;
	padding: 0.3em 16px;
}
.icon-button .icon-button-icon {
	position: absolute;
	opacity: 0;
	transition: all 300ms ease-in-out;
	right: 15px;
	top: 50%;
	transform: translateY(-50%);
	margin-left: 5px;
}
.icon-button:hover .icon-button-icon {
	right: 9px;
	opacity: 1;
}
a.icon-button:hover {
	padding-right: 32px;
	color: white !important;
}

/***** Header *****/
.site-header {
	position: sticky;
	top: 0;
	background: white;
	z-index: 999999;
	border-bottom: 1px solid #e2e2e2;
}
.top-header {
	background-color: #2ea3f2;
	color: white;
	font-size: 12px;
	padding: 8px 0;
}
.top-header a {
	color: white;
	text-decoration: none;
}
.top-header a:hover {
	opacity: 0.8;
}
.top-header-social {
	display: flex;
	column-gap: 16px;
}
.bottom-header .row {
	align-items: center;
}
.header-menu {
	position: relative;
}
.header-menu-items {
	display: flex;
	justify-content: flex-end;
	align-items: center;
	column-gap: 32px;
}
.header-search {
	position: absolute;
	top: 0;
	right: 0;
	opacity: 0;
	z-index: -1;
	transition: all 300ms ease-in-out;
	display: flex;
	align-items: center;
	column-gap: 32px;
	width: 100%;
	justify-content: flex-end;
	background: white;
}
.header-search .search-form {
	display: flex;
	justify-content: flex-end;
	align-items: center;
	column-gap: 8px;
}
.header-search input[type="text"] {
	border-bottom: 1px solid #333;
	border-top: 0;
	border-right: 0;
	border-left: 0;
	width: 60%;
	border-radius: 0;
}
.header-search button[type="submit"] {
	background: none;
	border: 0;
	color: #333;
	padding-left: 0;
	position: relative;
	left: -5px;
}
.header-search button[type="submit"]:hover {
	color: #2ea3f2;
}
.header-search input[type="text"]:focus {
	outline: none;
	border: 0;
	border-bottom: 1px solid #2ea3f2;
}
form#searchform {
	width: 100%;
}
.close-search {
	cursor: pointer;
}
.close-search:hover {
	color: #2ea3f2;
}

#mega-menu-primary-menu li a {
	padding-left: 20px !important;
	padding-right: 20px !important;
	color: #333 !important;
	display: block;
	transition: all 300ms ease-in-out !important;
}
#mega-menu-primary-menu li a:hover {
	color: #2ea3f2 !important;
}
.mega-sub-menu ul {
	list-style: none;
	margin: 0;
	padding: 0;
}
.mega-sub-menu ul li {
	margin-bottom: 16px;
}
.mega-sub-menu .font-bold > a {
	font-weight: bold;
}
.mega-sub-menu a {
	color: #333;
	text-decoration: none;
}
.mega-sub-menu a:hover {
	color: #2ea3f2;
}
.open-search {
	cursor: pointer;
}
.open-search:hover i {
	color: #2ea3f2;
}
.header-menu-items.fade {
	opacity: 0;
	z-index: -1;
}
.header-search.open {
	top: 50%;
	opacity: 1;
	z-index: 1;
	transform: translateY(-50%);
}
/*** Mobile Menu ***/
.mobile-menu-toggle,
.mobile-menu {
	display: none;
}
#cssmenu,
#cssmenu ul,
#cssmenu ul li,
#cssmenu ul li a {
	list-style: none;
	display: block;
	position: relative;
}
#cssmenu {
	width: 100%;
}
#cssmenu ul ul {
	display: none;
}
.align-right {
	float: right;
}
#cssmenu > ul > li > a {
	cursor: pointer;
	z-index: 2;
	text-decoration: none;
}
#cssmenu > ul > li > a:hover,
#cssmenu > ul > li.active > a,
#cssmenu > ul > li.open > a {
}
#cssmenu > ul > li.open > a {
}
#cssmenu > ul > li:last-child > a,
#cssmenu > ul > li.last > a {
}
.holder {
}
.holder::after,
.holder::before {
}
.holder::after {
	top: 17px;
	border-top: 2px solid #ffffff;
	border-left: 2px solid #ffffff;
}
#cssmenu > ul > li > a:hover > span::after,
#cssmenu > ul > li.active > a > span::after,
#cssmenu > ul > li.open > a > span::after {
}
.holder::before {
}
#cssmenu ul ul li a {
	cursor: pointer;
	z-index: 1;
	text-decoration: none;
}
#cssmenu ul ul li:hover > a,
#cssmenu ul ul li.open > a,
#cssmenu ul ul li.active > a {
}
#cssmenu ul ul li:first-child > a {
}
#cssmenu ul ul ul li:first-child > a {
}
#cssmenu ul ul ul li a {
}
#cssmenu > ul > li > ul > li:last-child > a,
#cssmenu > ul > li > ul > li.last > a {
	border-bottom: 0;
}
#cssmenu > ul > li > ul > li.open:last-child > a,
#cssmenu > ul > li > ul > li.last.open > a {
}
#cssmenu > ul > li > ul > li.open:last-child > ul > li:last-child > a {
}
#cssmenu ul ul li.has-sub > a::after {
}
#cssmenu ul ul li.active > a::after,
#cssmenu ul ul li.open > a::after,
#cssmenu ul ul li > a:hover::after {
}

/*** Buttons ***/
.button {
	background: #0c71c3;
	border: 1px solid #000;
	box-shadow: 10px 10px 0 0 rgba(0, 0, 50, 1);
	color: white;
	padding-top: 16px;
	padding-bottom: 16px;
	text-transform: uppercase;
	margin-top: 16px;
	display: inline-block;
	max-width: fit-content;
	font-size: 17px;
}
.button-block {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
}

/* Blog */
.blog-index {
	padding-top: 0;
}
.blog-entries {
	border-right: 1px solid #e2e2e2;
	padding: 58px 5.5% 23px 0;
}
.blog-entry {
	margin-bottom: 64px;
}
.blog-entry h2 {
	font-size: 26px;
}
.blog-entry h2 a {
	color: #333;
	text-decoration: none;
}
.blog-entry h2 a:hover {
	color: #2ea3f2;
}
.blog-entry-meta {
	display: flex;
	column-gap: 8px;
	margin-bottom: 24px;
}
.blog-entry-meta a {
	color: #333;
	text-decoration: none;
}
.blog-entry-meta a:hover {
	color: #2ea3f2;
}
.blog-entry-meta ul {
	display: flex;
	list-style: none;
	padding-left: 0;
	margin: 0;
	column-gap: 16px;
}
.blog-entry-read-more a {
	color: #2ea3f2;
}
.blog-entry-read-more a:hover {
	color: #333;
}
.blog-feature-image {
	text-align: center;
	margin-bottom: 24px;
}
main.single-main {
	padding-top: 0;
}
/* Blog Sidebar */
.blog-sidebar {
	padding-top: 38px;
	position: sticky;
	top: 58px;
}
.blog-sidebar-widget {
	margin-bottom: 32px;
}
.blog-sidebar-widget select {
	width: 100%;
}

/* Blog Pagination */
.pagination {
	margin-top: -42px;
	display: flex;
	justify-content: space-between;
	padding-right: 42px;
}
.pagination a {
	color: #2ea3f2;
	text-decoration: none;
}
.pagination a:hover {
	color: #333;
}

/* Portfolio */
.post-type-archive-portfolio .page-title-section {
	margin-bottom: 0;
}
.portfolio-archive-title-section {
	background: #2ea3f2;
	color: white;
}
.portfolio-archive-filter-section,
.portfolio-archive-results-section {
	background: #eee;
}
.portfolio-archive-results-section .alm-reveal {
	display: grid;
	column-gap: 1%;
	grid-template-columns: 32% 32% 32%;
}
.portfolio-archive-results-section .portfolio-entry {
	background: white;
	border-radius: 10px;
	border: 1px solid #ccc;
	margin-bottom: 32px;
	position: relative;
}
.portfolio-entry-play-button {
	position: absolute;
}
.portfolio-entry-image a {
	position: relative;
	padding-bottom: 56%;
	display: block;
}
.portfolio-entry-image img {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	object-fit: cover;
	height: 100%;
	width: 100%;
	border-top-left-radius: 10px;
	border-top-right-radius: 10px;
}
.portfolio-entry-text {
	padding: 15px;
}
.portfolio-entry-text h2 {
	font-size: 24px;
	font-weight: bold;
	margin-bottom: 16px;
}
.portfolio-entry-text h2 a {
	color: #333;
	text-decoration: none;
}
.portfolio-entry-description p {
	font-size: 14px !important;
	line-height: 21px !important;
}
.portfolio-entry-description p a {
	display: inline-block !important;
	color: #2ea3f2;
}
.portfolio-entry-description p a:hover {
	color: #0c71c3;
}
.ajax-load-more-wrap.blue .alm-load-more-btn {
	background-color: #2ea3f2;
	border-radius: 0;
}
.alm-load-more-btn.done {
	display: none !important;
}
/* Forms */
form label {
	font-weight: bold;
	text-transform: uppercase;
	margin-bottom: 8px;
	letter-spacing: 1px;
}
input[type="text"],
input[type="email"],
select,
textarea {
	appearance: none;
	-webkit-appearance: none;
	border: 2px solid #2ea3f2;
	border-radius: 5px;
	padding: 0.5rem 1rem;
}
input[type="text"]:focus,
input[type="email"]:focus,
select:focus,
textarea:focus {
	border: 2px solid #0c71c3;
}
select {
	background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" height="1em" viewBox="0 0 512 512"><style>svg{fill:%232ea3f2}</style><path d="M233.4 406.6c12.5 12.5 32.8 12.5 45.3 0l192-192c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L256 338.7 86.6 169.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l192 192z"/></svg>');
	background-repeat: no-repeat;
	background-position: 95% 50%;
}
/* Gravity Forms Progressive Form - 06/27/23 */
.progressive-form .gf_progressbar_wrapper,
.progressive-form input[type="radio"],
.progressive-form input[type="checkbox"],
.progressive-form .hidden-label > label,
.progressive-form .hidden-label > legend {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	border: 0;
}
.gform_validation_errors {
	display: none !important;
}
.progressive-form .question {
	font-weight: bold;
	text-align: center;
	font-size: 1.2rem !important;
}
.progressive-form input[type="radio"] + label,
.progressive-form input[type="checkbox"] + label {
	display: block !important;
	border: 2px solid rgb(50, 51, 72) !important;
	width: 100% !important;
	max-width: 100% !important;
	padding: 10px 5px 10px 42px !important;
	font-size: 12px;
	color: black;
	border-radius: 5px;
	cursor: pointer;
	transition: all 300ms ease-in-out;
	margin: 0 0 16px 0 !important;
	position: relative;
	letter-spacing: normal !important;
	text-transform: initial !important;
}
.progressive-form input[type="radio"] + label:before,
.progressive-form input[type="checkbox"] + label:before {
	font-family: "Font Awesome 6 Free", sans-serif !important;
	content: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" height="19px" viewBox="0 0 512 512"><path d="M464 256A208 208 0 1 0 48 256a208 208 0 1 0 416 0zM0 256a256 256 0 1 1 512 0A256 256 0 1 1 0 256z"/></svg>');
	display: block;
	position: absolute;
	top: 60%;
	transform: translateY(-50%) !important;
	left: 14px;
	color: rgb(50, 51, 72) !important;
}
.progressive-form input[type="checkbox"] + label:before {
	content: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" height="1em" viewBox="0 0 448 512"><!--! Font Awesome Free 6.4.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. --><style>svg{fill:%23323348}</style><path d="M384 80c8.8 0 16 7.2 16 16V416c0 8.8-7.2 16-16 16H64c-8.8 0-16-7.2-16-16V96c0-8.8 7.2-16 16-16H384zM64 32C28.7 32 0 60.7 0 96V416c0 35.3 28.7 64 64 64H384c35.3 0 64-28.7 64-64V96c0-35.3-28.7-64-64-64H64z"/></svg>');
	top: 55%;
}
.progressive-form input[type="radio"] + label:hover,
.progressive-form input[type="checkbox"] + label:hover {
	background-color: #efefef;
}
.progressive-form input[type="radio"]:checked + label,
.progressive-form input[type="checkbox"]:checked + label {
	border: 2px solid #2ea3f2 !important;
}
.progressive-form input[type="radio"]:checked + label:before,
.progressive-form input[type="checkbox"]:checked + label:before {
	content: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" height="19px" viewBox="0 0 512 512"><!--! Font Awesome Free 6.4.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. --><style>svg{fill:%232ea3f2}</style><path d="M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512z"/></svg>');
	display: block;
	position: absolute;
	top: 60%;
	transform: translateY(-50%) !important;
	font-size: 19px;
	left: 14px;
	color: #2ea3f2 !important;
}
.progressive-form input[type="checkbox"]:checked + label:before {
	content: "\f14a" !important;
	top: 50%;
	font-size: 17px;
}
.progressive-form .gfield--type-textarea label {
	letter-spacing: normal !important;
	text-transform: initial !important;
}
.progressive-form .gform_page_footer {
	display: flex;
	flex-wrap: wrap;
	column-gap: 16px;
}
.progressive-form input[type="button"],
.progressive-form input[type="submit"] {
	width: 100% !important;
	background: #2ea3f2;
	color: white;
	border: 0;
	font-size: 16px;
	font-weight: bold;
	text-transform: uppercase;
	border-radius: 3px;
	padding: 10px;
	cursor: pointer;
	margin-left: 0px !important;
	display: block !important;
	max-width: 100% !important;
	box-shadow: none;
}
.progressive-form .gform_next_button {
	order: 1 !important;
}
.progressive-form .gform_previous_button {
	order: 2 !important;
}
.progressive-form input[type="text"],
.progressive-form input[type="tel"],
.progressive-form input[type="email"] {
	border: 2px solid rgb(50, 51, 72) !important;
	padding: 10px 5px 10px 5px !important;
	border-radius: 3px !important;
}
.progressive-form textarea {
	border: 2px solid rgb(50, 51, 72) !important;
	border-radius: 3px !important;
	height: 100px !important;
}
.progressive-form .newsletter-signup input[type="checkbox"] + label {
	border: 0 !important;
	padding-left: 32px !important;
}
.progressive-form .newsletter-signup input[type="checkbox"] + label:before {
	left: 0 !important;
}

/* Error Handling */
.progressive-form .gfield_error input[type="text"],
.progressive-form .gfield_error input[type="email"],
.progressive-form .gfield_error input[type="tel"],
.progressive-form .gfield_error input[type="radio"] + label,
.progressive-form .gfield_error input[type="checkbox"] + label {
	border: 2px solid #c02b0a !important;
}
.progressive-form .gfield_error input[type="radio"] + label:before,
.progressive-form .gfield_error input[type="checkbox"] + label:before {
	color: #c02b0a !important;
}

/* Footer */
.footer-row-1 {
	background: #2ea3f2;
	padding: 27px 0;
	text-align: center;
}
.footer-row-1 img {
	margin-bottom: 16px;
}
.footer-row-1 .button {
	background: white;
	box-shadow: none;
	border: 2px solid #000;
	color: #000;
	text-decoration: none;
	text-transform: initial;
	padding: 15px 20px;
}
.footer-row-1 .button:hover {
	padding-right: 32px;
	color: #000 !important;
}
.footer-row-2 {
	background: #222;
	padding: 64px 0;
}
.footer-row-2-column-1-widget,
.footer-row-2-column-2.widget,
.footer-row-3-column-3-widget {
	margin-bottom: 62px;
}
.footer-row-2 h4,
.footer-row-2 .footer-row-2-widget-title {
	color: #2ea3f2;
}
.footer-row-2 a {
	color: white;
	text-decoration: none;
	transition: all 300ms ease;
}
.footer-row-2 a:hover {
	color: #2ea3f2;
}
.footer-row-3 {
	background: #666;
	padding: 16px 0;
}
.footer-row-3 ul {
	display: flex;
	column-gap: 16px;
	justify-content: center;
	flex-wrap: wrap;
	margin-bottom: 0;
	list-style: none;
}
.footer-row-3 ul li a {
	color: white;
	text-decoration: none;
	font-size: 14px;
	display: block;
	padding: 8px;
}
.footer-row-3 ul li a:hover {
	color: #2ea3f2;
}
.footer-row-4 {
	background: #222;
	padding: 32px 0;
}
.footer-social-media {
	display: flex;
	align-items: center;
	justify-content: center;
	column-gap: 14px;
	font-size: 24px;
}
.footer-social-media a {
	color: #2ea3f2;
}
.footer-social-media a:hover {
	color: #fff;
}

@media (max-width: 991px) {
	.container {
		max-width: 100%;
		padding-left: 32px;
		padding-right: 32px;
	}
	.header-menu {
		display: none;
	}
	.mobile-menu-toggles {
		display: block;
		color: #2ea3f2;
		font-size: 24px;
		text-align: right;
		cursor: pointer;
	}
	.mobile-menu-toggles .mobile-menu-toggle-close {
		display: none;
	}
	body.no-scroll {
		overflow: hidden;
	}
	.mobile-menu {
		position: relative;
		width: 100%;
		color: #fff;
		background: #333;
		z-index: 99999;
		font-weight: bold;
		padding: 32px 0;
		overflow-y: scroll;
		height: 100vh;
	}
	.mobile-menu a {
		color: #fff;
		display: block;
		padding: 16px 0;
	}
	.portfolio-archive-results-section .alm-reveal {
		column-gap: 1%;
		grid-template-columns: 48% 48%;
	}
}
@media (min-width: 992px) {
	.mobile-menu-toggles,
	.mobile-menu {
		display: none !important;
	}
}
@media (max-width: 767px) {
	.blog-entries {
		border-right: 0;
	}
	.portfolio-archive-results-section .alm-reveal {
		column-gap: 0;
		grid-template-columns: 100%;
	}
	.desktop-only {
		display: none;
	}
}
@media (min-width: 1400px) {
	.container {
		max-width: 1140px !important;
	}
}

.full-width {
	left: 50%;
	margin-left: -50vw;
	margin-right: -50vw;
	max-width: 100vw;
	position: relative;
	right: 50%;
	width: 100vw;
}
@media(max-width: 575px) {
	.full-width {
		padding-left: 32px;
    	padding-right: 32px
	}
}

/* Wordpress Overrides */
.wp-block-button__link {
	color: #FFFFFF!important;
    border: 2px solid #000000;
    background-color: #0C71C3;
	transition: all 300ms ease-in-out;
	border-radius: 0px;
}
.wp-block-button__link:hover {
	background-color: #2ea3f2;
}
article h1,
article h2,
article h3,
article h4,
article h5,
article h6 {
	font-weight: bold;
}

/* Accordion Block */
.accordion {
	border-bottom: 1px solid #c6c6cd;
}
.accordion .a-btn {
	cursor: pointer;
	border-top: 1px solid #c6c6cd;
	padding: 23px 27px 27px 0;
	font-size: 22px;
	font-weight: 600;
	display: flex;
	gap: 16px;
}
.accordion .a-btn:before {
	content: "\f055";
	font-family: "FontAwesome", sans-serif;
	color: #0c71c3;
	-webkit-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
	height: fit-content;
}
.accordion .a-container .a-panel {
	width: 100%;
	color: #262626;
	-webkit-transition: all 0.5s ease-in-out;
	transition: all 0.5s ease-in-out;
	opacity: 0;
	height: auto;
	max-height: 0;
	overflow: hidden;
	padding: 0px 36px;
	line-height: normal;
}

/* Panel style when active */
.accordion .a-container.active .a-panel {
	opacity: 1;
	height: auto;
	max-height: 9000px;
}
.accordion .a-container.active .a-btn:before {
	-webkit-transition: all 0.3s ease-in-out;
	transform: rotate(45deg);
	height: fit-content;
}