/*
Theme Name:   Southeast Moving & Storage
Theme URI:    https://generatepress.com
Author: Spectruss
Author URI: https://spectruss.com
Description: SMS 2025 Child Theme
Template:     generatepress
Version: 1.0.2
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: spectruss
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready
*/

:root {
	--dark-color: #010000;
	--accent-color: #64B4E7;
	--dark-blue: #527B95;
	--light-color: #F3F0F1;
	--dark-gray: #424A4C;
	--white: #fff;


	--bar-width: 36px;
	--bar-height: 4px;
	--bar-spacing: 12px;
}

body {
	font-family: "Golos Text", sans-serif;
	font-weight: 400;
	font-size: 18px;
	line-height: 1.4;
}

h1 {
	font-weight: 700;
	font-size: 54px;
}

h2 {
	font-size: 48px;
	font-weight: 400;
}

h3 {
	font-weight: bold;
	font-size: 32px;
}

h4 {
	font-size: 24px;
	font-weight: bold;
}

a {
	cursor: pointer;
}

a:hover {
	text-decoration: none;
}

.separate-containers.no-sidebar .site-main {
	margin-top: 0 !important;
	margin-bottom: 0 !important;
}

.main-navigation.is_stuck,
.main-navigation.is_stuck ul ul {
	background-color: #63B4E8;
}

#primary-menu .menu>li>a {
	font-weight: 700;
	font-size: 18px;
	line-height: 96px;
}

#primary-menu .menu>li>a:hover {
	color: var(--dark-color);
}

.main-navigation .main-nav ul ul li a {
	font-size: 17px;
	font-weight: 500;
}

.header-cta {
	display: flex;
	align-items: center;
	gap: 24px;
	margin-left: 60px;
	order: 10;
}

.header-cta a {
	font-weight: 800;
	text-transform: uppercase;
}

.btn {
	font-weight: 800;
	font-size: 18px;
	line-height: 24px;
	padding: 8px 24px;
	transition: all 0.3s ease;
	text-decoration: none;
}

.btn-white {
	background-color: var(--white);
	color: var(--dark-blue);
}

.btn-white:hover {
	background-color: var(--dark-blue);
	color: var(--white);
}

.wp-block-button a {
	font-weight: 800;
	font-size: 18px;
	line-height: 24px;
	padding: 12px 32px !important;
	transition: all 0.3s ease;
	text-decoration: none;
}

.button-blue.is-style-outline a {
	background: #517A94 !important;
	color: var(--white) !important;
}

.is-style-outline a {
	border: 2px solid #B0D7F4;
	background: transparent !important;
	border-radius: 0px;
	color: var(--dark) !important;
}

.is-style-outline a:hover {
	background: #B0D7F4 !important;
	color: var(--dark) !important;
}

.is-style-outline-white a {
	border: 2px solid #B0D7F4;
	background: transparent !important;
	border-radius: 0px;
}

.is-style-outline-white a:hover {
	background: #B0D7F4 !important;
	color: var(--dark) !important;
}

.is-style-arrow-white a {
	background: none !important;
	color: var(--white) !important;
	position: relative;
	padding: 8px 16px 8px 0px !important;
}

.is-style-arrow-white a::after {
	content: '';
	position: absolute;
	top: 0;
	right: -12px;
	top: 13px;
	width: 18px;
	height: 18px;
	transition: all 0.3s ease;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 18 18'%3E%3Cg id='Group_38' data-name='Group 38' transform='translate(-545 -2785)'%3E%3Ccircle id='Ellipse_669' data-name='Ellipse 669' cx='9' cy='9' r='9' transform='translate(545 2785)' fill='%23fff'/%3E%3Cpath id='Rectangle_581_copy_5' data-name='Rectangle 581 copy 5' d='M552.172,2798.706a.771.771,0,0,1,0-1.043l3.243-3.441-3.243-3.441a.77.77,0,0,1,0-1.042.667.667,0,0,1,.983,0l3.734,3.962a.77.77,0,0,1,0,1.042l-3.734,3.963a.668.668,0,0,1-.983,0Z' fill='%2363b4e8'/%3E%3C/g%3E%3C/svg%3E");
}

.is-style-arrow-white a:hover::after {
	right: -20px;
}

.is-style-arrow-blue a {
	background: none !important;
	color: #1B435C !important;
	display: inline-flex;
	position: relative;
	padding: 8px 16px 8px 0px !important;
}

.is-style-arrow-blue a::after {
	content: '';
	position: absolute;
	top: 0;
	right: -12px;
	top: 10px;
	width: 20px;
	background-color: #517A94;
	border-radius: 50%;
	height: 20px;
	transition: all 0.3s ease;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 18 18'%3E%3Cg id='Group_38' data-name='Group 38' transform='translate(-545 -2785)'%3E%3Ccircle id='Ellipse_669' data-name='Ellipse 669' cx='9' cy='9' r='9' transform='translate(545 2785)' fill='%23517A94'/%3E%3Cpath id='Rectangle_581_copy_5' data-name='Rectangle 581 copy 5' d='M552.172,2798.706a.771.771,0,0,1,0-1.043l3.243-3.441-3.243-3.441a.77.77,0,0,1,0-1.042.667.667,0,0,1,.983,0l3.734,3.962a.77.77,0,0,1,0,1.042l-3.734,3.963a.668.668,0,0,1-.983,0Z' fill='%23ffffff'/%3E%3C/g%3E%3C/svg%3E");
	background-position: center center;
}

.is-style-arrow-blue a:hover::after {
	right: -16px;
}

.uppercase {
	text-transform: uppercase;
}

.w-full,
.w-full>* {
	width: 100% !important;
}

.hero-box {
	position: relative;
}

.hero-box::before {
	content: '';
	position: absolute;
	top: -50px;
	left: -2%;
	width: 104%;
	height: 100px;
	background: url(img/box.png) no-repeat center center;
	background-size: contain;
}


.lp-hero {
	position: relative;
	overflow: hidden;
}

.lp-hero>*:not(.video-background) {
	position: relative;
	z-index: 1;
}

.lp-hero .video-background {
	position: absolute;
	top: -5%;
	left: 0;
	width: 100%;
	max-width: 100% !important;
	height: 110%;
	z-index: 0;
	/* behind everything */
	overflow: hidden;
	pointer-events: none;
}

.lp-hero .video-background .wistia_responsive_wrapper,
.lp-hero .video-background .wistia_embed {
	width: 100%;
	height: 100%;
	pointer-events: none;
}

.lp-hero .click-for-sound-btn {
	display: none !important;
}

.lp-hero .video-background video {
	object-fit: cover !important;
	width: 100% !important;
	height: 100% !important;
}

.location-table hr {
	border-top: 3px solid #517A94 !important;
}

.video-wrap {
	max-width: 100% !important;
}

.service-box {
	position: relative;
	-webkit-transition: all 300ms ease;
	-moz-transition: all 300ms ease;
	-ms-transition: all 300ms ease;
	-o-transition: all 300ms ease;
	transition: all 300ms ease;
}

.service-box:hover {
	background-color: #63B4E8 !important;
}

.service-box h3 {
	font-weight: 800;
}

.service-box::before {
	content: '';
	position: absolute;
	top: 6%;
	left: 6%;
	width: 88%;
	height: 88%;
	border: 2px solid #fff;
	transition: all 0.3s ease;
}

.service-box:hover::before {
	top: 0%;
	left: 0%;
	width: 100%;
	height: 100%;
}

.service-box>* {
	position: relative;
	z-index: 1;
}

.footer-top-content {
	margin-left: 110px;
}

.footer-top-content a {
	text-decoration: none;
	color: var(--dark-color);
}

.footer-top-content a:hover {
	color: var(--dark-blue);
}

.footer-top .wp-block-navigation {
	margin-top: 0 !important;
}

.footer-top .wp-block-navigation a:hover {
	color: var(--dark-blue);
}

.footer-work-time {
	max-width: 86%;
}

:where(.wp-block-group.has-background),
.wp-block-cover,
.wp-block-cover-image,
.wp-block-group.alignfull {
	padding-left: 24px;
	padding-right: 24px;
}

.testimonials-row .cb-button-next,
.testimonials-row .cb-button-prev {
	background-color: #fff !important;
	width: 40px !important;
	height: 40px !important;
	border-radius: 50% !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
}

.testimonials-row .cb-button-next:hover {
	background-color: #63B4E8 !important;
}

.testimonials-row .cb-button-next:hover svg {
	fill: #63B4E8;
}


.has-scrollbar .alignfull {
	margin-left: calc(-50vw + 50% + (var(--scrollbar-width) / 2)) !important;
	margin-right: calc(-50vw + 50% + (var(--scrollbar-width) / 2)) !important;
	max-width: calc(100vw - var(--scrollbar-width)) !important;
}


.alignwide {
	max-width: 1440px !important;
}


/* Base animation styles */
[data-animation] {
	opacity: 0;
	visibility: hidden;
	/* Ensure elements are not visible initially */
	transform: translateY(20px);
	/* Default starting point */
	transition: opacity 0.3s ease, transform 0.3s ease;
}

[data-animation].animated {
	opacity: 1;
	visibility: visible;
	/* Make the element visible when animated */
	transform: translateY(0);
	/* Reset the transform */
}

/* Fade-in animations */
@keyframes fade-in {
	from {
		opacity: 0;
	}

	to {
		opacity: 1;
	}
}

.fade-in {
	animation-name: fade-in;
}

/* Fade-up animation */
@keyframes fade-up {
	from {
		opacity: 0;
		transform: translateY(20px);
	}

	to {
		opacity: 1;
		transform: translateY(0);
	}
}

.fade-up {
	animation-name: fade-up;
}

/* Fade-down animation */
@keyframes fade-down {
	from {
		opacity: 0;
		transform: translateY(-20px);
	}

	to {
		opacity: 1;
		transform: translateY(0);
	}
}

.fade-down {
	animation-name: fade-down;
}

/* Fade-left animation */
@keyframes fade-left {
	from {
		opacity: 0;
		transform: translateX(-20px);
	}

	to {
		opacity: 1;
		transform: translateX(0);
	}
}

.fade-left {
	animation-name: fade-left;
}

/* Fade-right animation */
@keyframes fade-right {
	from {
		opacity: 0;
		transform: translateX(20px);
	}

	to {
		opacity: 1;
		transform: translateX(0);
	}
}

.fade-right {
	animation-name: fade-right;
}

.separate-containers .inside-article {
	padding-top: 0 !important;
	padding-bottom: 0 !important;
}

#generate-slideout-menu {
	background-color: var(--accent-color);
}

.slideout-menu {
	padding: 24px;
}

.slideout-menu>li>a {
	font-weight: 700;
	line-height: 40px !important;
	font-size: 20px;
}

.slideout-menu ul {
	box-shadow: none !important;
}

.slideout-menu ul a {
	font-size: 16px !important;
	font-weight: 500 !important;
}

#generate-slideout-menu .inside-navigation .mobile-cta {
	order: 10;
	display: flex;
	width: 100%;
	flex-direction: column;
	gap: 12px;
	padding: 0 12px;
}

#generate-slideout-menu .inside-navigation .mobile-cta a {
	background-color: var(--dark-blue);
	text-align: center;
	font-weight: 800;
}

#generate-slideout-menu .inside-navigation .mobile-cta a:hover {
	background-color: var(--dark-color);
}

#generate-slideout-menu .main-nav {
	margin-bottom: 20px;
}

.post-title,
.post-title a {
	text-decoration: none !important;
	color: var(--dark-color) !important;
}

.post-title a:hover {
	color: var(--accent-color) !important;
}

.post-date {
	font-size: 18px !important;
	font-weight: 600 !important;
	margin-top: 12px;
	margin-bottom: 0;
	color: var(--color-gray) !important;
}

.post-more {
	background-color: #517A94 !important;
	color: #fff !important;
	font-weight: 800 !important;
}

.post-more:hover {
	background-color: var(--accent-color) !important;
}

.gb-query-loop-pagination {
	margin-top: 80px !important;
	border-top: 2px solid #000;
	padding-top: 40px
}

.single-post .grid-container {
	max-width: 100% !important;
}

.single-post .post-hero {
	background: #1B435C;
}

.single-post .post-hero .container {
	display: flex;
	align-items: center;
}

.single-post .post-hero .container>* {
	width: 50%;
}

.single-post .post-hero .container .hero-image img {
	display: block;
}

.single-post .post-hero .container .hero-content {
	padding: 24px 80px;
	color: #fff;
}

.single-post .post-hero .container .hero-content h1 {
	color: #fff !important;
	font-size: 48px !important;
}

.single-post .inside-article {
	max-width: 1000px;
	margin-left: auto;
	margin-right: auto;
	padding-top: 80px !important;
	padding-bottom: 80px !important;
}

.single-post .inside-article .entry-content {
	font-size: 18px;
	line-height: 1.5;
}

.post-pagination {
	margin-top: 80px !important;
	border-top: 3px solid #000;
	padding-top: 40px !important;
	max-width: 1000px;
	margin-left: auto;
	margin-right: auto;
	display: flex;
	justify-content: flex-end;
	margin-bottom: 80px !important;
}

.post-pagination .container {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 12px;
}

.post-nav {
	color: #fff;
	font-weight: 800;
	font-size: 18px;
	line-height: 24px;
	padding: 12px 32px;
	transition: all 0.3s ease;
	text-decoration: none;
	background-color: #517A94;
	text-transform: capitalize;
}

.post-nav:hover {
	background-color: var(--accent-color) !important;
}

.cover,
.cover img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.right-dots {
	position: relative;
}

.right-dots::before {
	content: '';
	position: absolute;
	top: 100%;
	right: 50%;
	width: 230px;
	height: 348px;
	background-image: url(img/right-dots.svg);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center center;
}

.left-dots {
	position: relative;
}

.left-dots img,
.right-dots img,
.z-fix img {
	position: relative;
	z-index: 1;
}

.left-dots::before {
	content: '';
	position: absolute;
	top: 100%;
	left: 50%;
	width: 230px;
	height: 348px;
	background-image: url(img/left-dots.svg);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center center;
}

.storage-grid h4 {
	font-size: 20px !important;
}

.negative-top-1 {
	margin-top: -400px;
}

.z-10 {
	z-index: 10;
	position: relative;
}

.tape-separator {
	position: relative;
	width: 100%;
	height: 80px;
	display: block !important;
}

.tape-separator::before {
	content: '';
	position: absolute;
	top: -20px;
	left: -11%;
	width: 122%;
	height: 100px;
	background-image: url(img/tape.png);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center center;
}

@media only screen and (max-width: 1488px) {
	.alignfull {
		margin-left: -24px !important;
		margin-right: -24px !important;
		max-width: calc(100% + 48px) !important;
		padding-left: 1.5rem;
		padding-right: 1.5rem;
	}

	.header-cta {
		margin-left: 16px;
	}

	.header-cta a {
		font-size: 16px;
		padding-left: 12px;
		padding-right: 12px;
	}

	#primary-menu .menu>li>a {
		font-size: 16px;
		padding-left: 12px;
		padding-right: 12px;
	}

	.menu-item-has-children .dropdown-menu-toggle {
		padding-right: 0;
	}

	.site-logo {
		max-width: 180px;
	}
	.main-navigation.navigation-stick .sticky-navigation-logo{
		max-width: 180px;
	}
	.location-table h4 {
		font-size: 16px;
	}

	.entry-content .alignwide {
		width: 100% !important;
		max-width: 100% !important;
	}
}

@media only screen and (max-width: 1024px) {
	.header-cta {
		display: none;
	}

	.site-logo {
		margin-top: 20px;
		margin-bottom: 20px;
	}

	h1 {
		font-size: 40px;
	}

	h2 {
		font-size: 32px;
	}

	h3 {
		font-size: 24px;
	}

	h4 {
		font-size: 20px;
	}

	.single-post .post-hero .container {
		flex-direction: column;
	}

	.single-post .post-hero .container>* {
		width: 100%;
		flex: 0 0 auto;
	}

	.single-post .post-hero .container .hero-content {
		padding: 40px 24px;
	}

	.single-post .post-hero .container .hero-content h1 {
		font-size: 38px !important;
	}

	.single-post .inside-article {
		padding: 40px 24px !important;
	}

	.post-pagination {
		margin: 40px 24px 80px !important;
	}

	.menu-toggle {
		padding-right: 0 !important;
	}
}

@media only screen and (max-width: 768px) {
	.footer-top-content {
		margin-left: 0px;
	}

	.services-grid-2 a {
		font-size: 12px !important;
	}

	.center-on-mobile {
		text-align: center;
		justify-content: center !important;
		align-items: center !important
	}

	.center-on-mobile.wp-block-image {
		display: flex !important;
		float: none !important;
		margin-left: auto !important;
		margin-right: auto !important;
	}

	.left-on-mobile.wp-block-image {
		float: none !important;
		margin-inline-start: 0 !important
	}

	.services-grid-2 a::after {
		width: 12px;
		height: 12px;
		background-size: contain;
		top: 11px;
		right: -6px;
	}

	.services-grid-2 h4 {
		font-size: 16px !important;
	}

	.services-grid-2 p {
		font-size: 14px !important;
	}

	.is-style-reverse-mobile {
		flex-direction: column-reverse
	}

	.left-dots::before,
	.right-dots::before {
		display: none;
	}

	.left-on-mobile {
		text-align: left !important;
	}

	.storage-grid p {
		font-size: 14px !important;
	}
}

@media only screen and (max-width: 480px) {
	.single-post .post-hero .container .hero-content h1 {
		font-size: 30px !important;
	}

	.post-nav {
		font-size: 14px !important;
	}
}