/*
Theme Name: Rock Creek
Theme URI: https://drews53.sg-host.com
Description: Child theme of Twenty Twenty-Five for Rock Creek Logistics. Custom code, templates, and styles live here.
Author: Rock Creek Logistics
Template: twentytwentyfive
Version: 1.0.5
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: rock-creek
*/

/* Global S */
	body {
		padding-top: 77px;
	}
	body p {
		margin-top: 0px;
		margin-bottom: 0px;
	}
	body p + p {
		margin-top: 20px;
	}
/* Global E */

/* --- Primary menu (rc-menu) rendered via the [wp_menu] shortcode --- */
	.rc-menu-wrap { display: block; }

	.rc-menu {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		gap: 32px;
		margin: 0;
		padding: 0;
		list-style: none;
	}

	.rc-menu li { margin: 0; }

	.rc-menu a {
		font-family: 'Inter', sans-serif;
		font-weight: 500;
		font-size: 15px;
		line-height: 1.2;
		letter-spacing: 0.2px;
		color: #193A2F;
		text-decoration: none;
		transition: all .15s ease-in-out;
		position: relative;
	}

	/* Active state is driven by scroll-spy JS (.is-active), not WordPress's
	   current-menu-item, which wrongly flags every item on a one-page site. */
	.rc-menu a:hover {
		color: #1C7469;	
	}
	.rc-menu a.is-active {
		color: #1C7469;
		display: block;
		padding-bottom: 4px;
		font-weight: 600;
		font-size: 16px;
	}

	/*.rc-menu a:hover::before,*/
	.rc-menu a.is-active::before {
		content: '';
		position: absolute;
		bottom: -4px;
		left: 50%;
		transform: translateX(-50%);
		width: 20px;
		height: 2px;
		background: #1C7469;
		border-radius: 1px;
		transition: all .15s ease-in-out;
	}

	/* Offset in-page anchor jumps so section tops clear the sticky header */
	#services,
	#how-it-works,
	#tiktok-shop,
	#about {
		scroll-margin-top: 100px;
	}
/* --- Primary menu (rc-menu) rendered via the [wp_menu] shortcode --- */

/* Hero S */
	@media (max-width: 1023px) {
		.hero-bg-section {
			background-image: unset !important;
		}
	}
/* Hero E */

/* Services S */
	.services-image {
		aspect-ratio: 408/200;
	}
/* Services E */

/* Footer S */
	.ft-main a:hover {
		color: #fff !important;
	    transition: 0.3s;
	}
/* Footer E */
/* Header hamburger S */
	.rc-nav-toggle {
		display: none;
		width: 44px;
		height: 44px;
		margin-left: 8px;
		padding: 0;
		border: 0;
		background: transparent;
		color: #193A2F;
		cursor: pointer;
		align-items: center;
		justify-content: center;
	}
	.rc-nav-toggle .rc-nav-toggle-bars,
	.rc-nav-toggle .rc-nav-toggle-bars::before,
	.rc-nav-toggle .rc-nav-toggle-bars::after {
		content: '';
		display: block;
		width: 24px;
		height: 2px;
		background: currentColor;
		border-radius: 2px;
		transition: transform .2s ease, opacity .2s ease, background .2s ease;
	}
	.rc-nav-toggle .rc-nav-toggle-bars { position: relative; }
	.rc-nav-toggle .rc-nav-toggle-bars::before { position: absolute; top: -7px; }
	.rc-nav-toggle .rc-nav-toggle-bars::after { position: absolute; top: 7px; }
	.rc-header-row.rc-nav-open .rc-nav-toggle .rc-nav-toggle-bars { background: transparent; }
	.rc-header-row.rc-nav-open .rc-nav-toggle .rc-nav-toggle-bars::before { top: 0; transform: rotate(45deg); }
	.rc-header-row.rc-nav-open .rc-nav-toggle .rc-nav-toggle-bars::after { top: 0; transform: rotate(-45deg); }

	@media (max-width: 1024px) {
		.rc-header-row > .rc-header-logo { margin-right: auto; }
		.rc-nav-toggle { display: inline-flex; }
		.rc-header-row .rc-menu {
			display: none;
			position: fixed;
			top: var(--rc-header-h, 77px);
			left: 0;
			right: 0;
			flex-direction: column;
			flex-wrap: nowrap;
			align-items: stretch;
			gap: 0;
			margin: 0;
			padding: 8px 20px 16px;
			background: #FFFFFF;
			border-top: 1px solid #DCE1DE;
			box-shadow: 0 12px 24px rgba(25, 58, 47, 0.10);
			max-height: calc(100vh - var(--rc-header-h, 77px));
			overflow-y: auto;
			z-index: 998;
		}
		.rc-header-row.rc-nav-open .rc-menu { display: flex; }
		.rc-header-row .rc-menu li { width: 100%; margin: 0; }
		.rc-header-row .rc-menu a {
			display: block;
			width: 100%;
			padding: 14px 2px;
			font-size: 16px;
			border-bottom: 1px solid #EEF1EF;
		}
		.rc-header-row .rc-menu a.is-active { color: #1C7469; font-weight: 600; }
		.rc-header-row .rc-menu a.is-active::before { display: none; }
	}
/* Header hamburger E */

/* Header hamburger alignment fix S */
	@media (max-width: 1024px) {
		.rc-header-row { flex-wrap: nowrap !important; gap: 12px !important; align-items: center !important; }
		.rc-header-row > *:has(.rc-menu-wrap),
		.rc-header-row > .elementor-widget-shortcode {
			position: absolute !important;
			width: 0 !important;
			height: 0 !important;
			min-height: 0 !important;
			padding: 0 !important;
			margin: 0 !important;
			overflow: visible;
		}
		.rc-header-row > .rc-header-logo {
			flex: 0 1 auto;
			min-width: 0;
			max-width: 160px;
			margin-right: auto;
			align-self: center;
		}
		.rc-header-row > .rc-header-logo img {
			max-width: 100% !important;
			height: auto !important;
			width: auto !important;
		}
		.rc-header-row > .rc-nav-toggle {
			flex: 0 0 auto;
			min-width: 44px;
			min-height: 44px;
			margin: 0;
		}
	}
/* Header hamburger alignment fix E */

/* rcl-toc-sticky */
/* Sticky "On this page" sidebar on legal pages (Privacy 41, Terms 427) */
@media (min-width: 768px){
  .elementor-page-41 .elementor-col-25,
  .elementor-page-427 .elementor-col-25,
  .elementor-page-430 .elementor-col-25{
    position: -webkit-sticky;
    position: sticky;
    top: 96px;
    align-self: flex-start;
  }
}

/* rcl-legal-links */
/* Distinguish inline body links on legal pages (Privacy 41, Terms 427) */
.elementor-page-41 .elementor-col-75 .elementor-widget-text-editor a,
.elementor-page-427 .elementor-col-75 .elementor-widget-text-editor a,
.elementor-page-430 .elementor-col-75 .elementor-widget-text-editor a{
  color:#132720;
  text-decoration:underline;
  text-underline-offset:2px;
}
.elementor-page-41 .elementor-col-75 .elementor-widget-text-editor a:hover,
.elementor-page-427 .elementor-col-75 .elementor-widget-text-editor a:hover{
  color:#1C7469;
}


/* rcl-anchor-offset */
/* Offset in-page anchor jumps so targets clear the fixed header */
html{ scroll-padding-top: 100px; }


/* rcl-toc-active */
/* Active "On this page" link (scroll-spy) */
.elementor-page-41 .elementor-col-25 a.rcl-toc-active,
.elementor-page-427 .elementor-col-25 a.rcl-toc-active,
.elementor-page-430 .elementor-col-25 a.rcl-toc-active{
  color: rgb(17, 17, 17) !important;
  font-weight: 600;
}
