/*
 * v10.6.0 critical-overrides.css
 * Loaded last. Keep this file narrow: fixed header, mobile menu offsets,
 * and the dynamic About Founder article cards only.
 */

/* ===== Fixed global header: do not rely on sticky, because page sections and admin/edit bars can break it. ===== */
:root{
	--rjl-fixed-header-height:74px;
	--rjl-admin-bar-offset:0px;
}

body.admin-bar{
	--rjl-admin-bar-offset:32px;
}

@media (max-width:782px){
	body.admin-bar{
		--rjl-admin-bar-offset:46px;
	}
}

@media (max-width:600px){
	body.admin-bar{
		--rjl-admin-bar-offset:0px;
	}
}

html{
	scroll-padding-top:calc(var(--rjl-fixed-header-height) + var(--rjl-admin-bar-offset) + 18px)!important;
}

body{
	padding-top:var(--rjl-fixed-header-height)!important;
}

.site-header{
	position:fixed!important;
	top:var(--rjl-admin-bar-offset)!important;
	left:0!important;
	right:0!important;
	width:100%!important;
	z-index:10000!important;
	background:#fff!important;
	border-bottom:1px solid rgba(15,23,42,.08)!important;
	box-shadow:0 1px 0 rgba(15,23,42,.04)!important;
	overflow:visible!important;
	transform:none!important;
	will-change:auto!important;
}

.site-header .header-inner{
	height:var(--rjl-fixed-header-height)!important;
	min-height:var(--rjl-fixed-header-height)!important;
	max-width:1140px!important;
	overflow:visible!important;
}

.site-header .main-nav{
	overflow:visible!important;
}

.site-header .main-nav .sub-menu{
	z-index:10020!important;
}

body.rjl-mobile-nav-open .site-header{
	z-index:10030!important;
}

/* Keep WordPress admin bar above normal content and below the fixed site header offset calculation. */
#wpadminbar{
	position:fixed!important;
	z-index:100000!important;
}

/* Prevent anchor jumps from hiding headings under the fixed header. */
:target{
	scroll-margin-top:calc(var(--rjl-fixed-header-height) + var(--rjl-admin-bar-offset) + 18px)!important;
}

/* ===== Mobile navigation offset should always equal admin bar + fixed header height. ===== */
@media (max-width:980px){
	:root{
		--rjl-fixed-header-height:64px;
	}

	body{
		padding-top:var(--rjl-fixed-header-height)!important;
	}

	.site-header .header-inner{
		grid-template-columns:minmax(0,1fr) auto!important;
		gap:12px!important;
	}

	.site-header .main-nav{
		position:fixed!important;
		top:calc(var(--rjl-admin-bar-offset) + var(--rjl-fixed-header-height))!important;
		left:0!important;
		right:0!important;
		bottom:0!important;
		width:100%!important;
		max-width:100%!important;
		z-index:10010!important;
		margin:0!important;
		padding:10px 22px max(24px,env(safe-area-inset-bottom))!important;
		background:#fff!important;
		border-top:1px solid #e5e7eb!important;
		box-shadow:0 20px 44px rgba(17,24,39,.13)!important;
		overflow-y:auto!important;
		overflow-x:hidden!important;
		-webkit-overflow-scrolling:touch!important;
	}

	.site-header .main-nav:not(.is-open){
		display:none!important;
	}

	.site-header .main-nav.is-open{
		display:block!important;
	}

	.site-header .main-nav > .menu,
	.site-header .main-nav .menu{
		display:block!important;
		width:100%!important;
		margin:0!important;
		padding:0!important;
	}

	.site-header .main-nav .menu > li{
		display:block!important;
		width:100%!important;
	}

	.site-header .main-nav .sub-menu{
		position:static!important;
		width:100%!important;
		min-width:0!important;
		max-width:none!important;
		overflow:visible!important;
	}
}

@media (max-width:720px){
	:root{
		--rjl-fixed-header-height:60px;
	}

	.site-header .header-inner{
		height:var(--rjl-fixed-header-height)!important;
		min-height:var(--rjl-fixed-header-height)!important;
	}
}

/* WordPress admin bar is not reliably fixed on very small screens; avoid leaving a permanent top gap while scrolling. */
@media (max-width:600px){
	#wpadminbar{
		position:absolute!important;
	}

	.site-header{
		top:0!important;
	}

	.site-header .main-nav{
		top:var(--rjl-fixed-header-height)!important;
	}
}

/* ===== About Founder: real dynamic article cards, contained and responsive. ===== */
body.rjl-page-about-founder .v48-founder-blogs{
	max-width:1140px!important;
	margin-left:auto!important;
	margin-right:auto!important;
	overflow:hidden!important;
}

body.rjl-page-about-founder .v48-founder-blog-grid{
	display:grid!important;
	grid-template-columns:repeat(4,minmax(0,1fr))!important;
	gap:26px!important;
	align-items:start!important;
	width:100%!important;
	max-width:100%!important;
	overflow:hidden!important;
}

body.rjl-page-about-founder .v48-founder-blog-grid a{
	display:block!important;
	min-width:0!important;
	max-width:100%!important;
	color:#ff7f18!important;
	text-decoration:none!important;
	overflow:hidden!important;
}

body.rjl-page-about-founder .v48-founder-blog-grid img,
body.rjl-page-about-founder .v48-founder-blog-placeholder{
	display:block!important;
	width:100%!important;
	height:auto!important;
	aspect-ratio:1.42/1!important;
	object-fit:cover!important;
	background:#eef2f6!important;
	border-radius:0!important;
}

body.rjl-page-about-founder .v48-founder-blog-grid strong{
	display:block!important;
	margin-top:14px!important;
	font-size:16px!important;
	line-height:1.42!important;
	font-weight:700!important;
	color:#ff7f18!important;
	word-break:normal!important;
	overflow-wrap:break-word!important;
}

body.rjl-page-about-founder .v48-founder-blogs > .button{
	margin-top:30px!important;
}

/* Guardrail: dynamic card grids should not create horizontal overflow. */
.v48-founder-blog-grid,
.resources-v87-card-row,
.blog-v90-card-row,
.archive-v95-grid,
.post-grid{
	min-width:0!important;
}

@media (max-width:980px){
	body.rjl-page-about-founder .v48-founder-blog-grid{
		grid-template-columns:repeat(2,minmax(0,1fr))!important;
	}
}

@media (max-width:560px){
	body.rjl-page-about-founder .v48-founder-blog-grid{
		grid-template-columns:1fr!important;
		gap:22px!important;
	}

	body.rjl-page-about-founder .v48-founder-blog-grid strong{
		font-size:15px!important;
	}
}

/* ===== Static guide pages: keep their layout scoped; never affect normal posts/pages. ===== */
.static-guide-page .static-guide-sidebar,
.sag-v103-page .sag-v103-sidebar{
	z-index:1!important;
}

@media (max-width:1020px){
	.static-guide-page .static-guide-sidebar,
	.sag-v103-page .sag-v103-sidebar{
		position:static!important;
	}
}


/* ===== v10.7.0 scoped fixes: dynamic archive heading + blog guide card text color ===== */

/* The archive heading is now generated by PHP from the current queried category/tag/taxonomy.
   These style rules only control layout, not content. */
.archive-v95-header h1{
	max-width:100%!important;
	overflow-wrap:break-word!important;
	word-break:normal!important;
}

/* Blog homepage import-guide dark panel: keep all copy white.
   Scoped to .blog-v90-page only to avoid affecting normal articles, category pages, or static guide pages. */
.blog-v90-page .blog-v90-guide-card,
.blog-v90-page .blog-v90-guide-card > div{
	color:#fff!important;
}

.blog-v90-page .blog-v90-guide-card p,
.blog-v90-page .blog-v90-guide-card strong,
.blog-v90-page .blog-v90-guide-card span,
.blog-v90-page .blog-v90-guide-card em{
	color:#fff!important;
}

.blog-v90-page .blog-v90-guide-card .blog-v90-guide-actions span{
	color:#fff!important;
}

.blog-v90-page .blog-v90-guide-card .button{
	color:#fff!important;
}


/* ===== v10.9.0 static sourcing agent guide ===== */
.sag-static-page .sag-static-summary{
	background:#f8fafc!important;
	border:1px solid #e7edf4!important;
	border-radius:10px!important;
	padding:18px 20px!important;
	margin:0 0 26px!important;
}

.sag-static-page .sag-static-box-title{
	font-size:20px!important;
	line-height:1.35!important;
	font-weight:700!important;
	margin:0 0 12px!important;
	color:#0f172a!important;
}

.sag-static-page .sag-static-grid{
	display:grid!important;
	gap:18px!important;
	margin:0 0 24px!important;
}

.sag-static-page .sag-static-grid--two{
	grid-template-columns:repeat(2,minmax(0,1fr))!important;
}

.sag-static-page .sag-static-grid--three{
	grid-template-columns:repeat(3,minmax(0,1fr))!important;
}

.sag-static-page .sag-static-card,
.sag-static-page .sag-static-panel,
.sag-static-page .sag-static-warning,
.sag-static-page .sag-static-faq-item{
	background:#fff!important;
	border:1px solid #e7edf4!important;
	border-radius:10px!important;
	padding:18px 18px 16px!important;
}

.sag-static-page .sag-static-card h3,
.sag-static-page .sag-static-panel h3,
.sag-static-page .sag-static-warning h3,
.sag-static-page .sag-static-faq-item h3{
	margin:0 0 10px!important;
	font-size:19px!important;
	line-height:1.35!important;
	font-weight:700!important;
	color:#0f172a!important;
}

.sag-static-page .sag-static-card p,
.sag-static-page .sag-static-panel p,
.sag-static-page .sag-static-panel li,
.sag-static-page .sag-static-warning li,
.sag-static-page .sag-static-faq-item p{
	font-size:16px!important;
	line-height:1.8!important;
	color:#334155!important;
}

.sag-static-page .sag-static-note{
	background:#fff8f1!important;
	border-left:4px solid #ff8a21!important;
	border-radius:8px!important;
	padding:16px 18px!important;
	margin:0 0 24px!important;
	font-size:16px!important;
	line-height:1.8!important;
	color:#334155!important;
}

.sag-static-page .sag-static-checklist{
	display:grid!important;
	gap:14px!important;
	margin:0 0 24px!important;
}

.sag-static-page .sag-static-check-item{
	display:grid!important;
	grid-template-columns:52px minmax(0,1fr)!important;
	gap:14px!important;
	align-items:start!important;
	padding:16px 18px!important;
	border:1px solid #e7edf4!important;
	border-radius:10px!important;
	background:#fff!important;
}

.sag-static-page .sag-static-check-item > span{
	display:flex!important;
	align-items:center!important;
	justify-content:center!important;
	width:44px!important;
	height:44px!important;
	border-radius:999px!important;
	background:#fff8f1!important;
	border:1px solid #ffd6af!important;
	color:#ff8a21!important;
	font-size:14px!important;
	font-weight:700!important;
}

.sag-static-page .sag-static-check-item strong{
	display:block!important;
	margin:0 0 4px!important;
	color:#0f172a!important;
}

.sag-static-page .sag-static-check-item p{
	margin:0!important;
	font-size:16px!important;
	line-height:1.8!important;
}

.sag-static-page .sag-static-warning{
	margin:0 0 24px!important;
	background:#fffdf7!important;
	border-color:#fde0b7!important;
}

.sag-static-page .sag-static-faq{
	display:grid!important;
	gap:16px!important;
}

@media (max-width: 900px){
	.sag-static-page .sag-static-grid--two,
	.sag-static-page .sag-static-grid--three{
		grid-template-columns:1fr!important;
	}
}

@media (max-width: 640px){
	.sag-static-page .sag-static-check-item{
		grid-template-columns:1fr!important;
	}

	.sag-static-page .sag-static-check-item > span{
		margin-bottom:6px!important;
	}
}


/* ===== v10.10.0 unified footer colors =====
   Keep footer typography consistent across all templates.
   Scoped to .site-footer only; do not affect article/body/page content.
*/
.site-footer,
.site-footer *,
.site-footer p,
.site-footer li,
.site-footer span,
.site-footer div,
.site-footer address,
.site-footer small{
	color:#d7dde8!important;
}

.site-footer h1,
.site-footer h2,
.site-footer h3,
.site-footer h4,
.site-footer h5,
.site-footer h6,
.site-footer .footer-title,
.site-footer .widget-title{
	color:#ffffff!important;
}

.site-footer a,
.site-footer a:link,
.site-footer a:visited{
	color:#ffffff!important;
	text-decoration:none!important;
}

.site-footer a:hover,
.site-footer a:focus{
	color:#ff8a21!important;
	text-decoration:none!important;
}

.site-footer .current-menu-item > a,
.site-footer .current_page_item > a{
	color:#ff8a21!important;
}

.site-footer input,
.site-footer textarea,
.site-footer select{
	color:#0f172a!important;
	background:#ffffff!important;
}

.site-footer input::placeholder,
.site-footer textarea::placeholder{
	color:#7b8794!important;
}

.site-footer .button,
.site-footer button,
.site-footer input[type="submit"]{
	color:#ffffff!important;
	background:#ff8a21!important;
}

.site-footer .button:hover,
.site-footer button:hover,
.site-footer input[type="submit"]:hover{
	color:#ffffff!important;
	background:#f17810!important;
}


/* ===== v10.11.0 Fluent Forms integration styling =====
   Scoped to the theme wrapper only. Original theme forms remain untouched.
*/
.rjl-fluent-form-wrap{
	width:100%!important;
	max-width:100%!important;
	margin:0!important;
}

.rjl-fluent-form-wrap form{
	width:100%!important;
	max-width:100%!important;
}

.rjl-fluent-form-wrap .ff-el-group{
	margin-bottom:16px!important;
}

.rjl-fluent-form-wrap input[type="text"],
.rjl-fluent-form-wrap input[type="email"],
.rjl-fluent-form-wrap input[type="tel"],
.rjl-fluent-form-wrap input[type="url"],
.rjl-fluent-form-wrap input[type="number"],
.rjl-fluent-form-wrap input[type="file"],
.rjl-fluent-form-wrap select,
.rjl-fluent-form-wrap textarea{
	width:100%!important;
	max-width:100%!important;
	min-height:44px!important;
	border:1px solid #d7dde8!important;
	border-radius:6px!important;
	background:#fff!important;
	color:#0f172a!important;
	box-sizing:border-box!important;
}

.rjl-fluent-form-wrap textarea{
	min-height:130px!important;
	resize:vertical!important;
}

.rjl-fluent-form-wrap button,
.rjl-fluent-form-wrap input[type="submit"],
.rjl-fluent-form-wrap .ff-btn-submit{
	background:#ff8a21!important;
	border-color:#ff8a21!important;
	color:#fff!important;
	border-radius:999px!important;
	padding:12px 26px!important;
	font-weight:700!important;
	box-shadow:none!important;
}

.rjl-fluent-form-wrap button:hover,
.rjl-fluent-form-wrap input[type="submit"]:hover,
.rjl-fluent-form-wrap .ff-btn-submit:hover{
	background:#f17810!important;
	border-color:#f17810!important;
	color:#fff!important;
}

@media (max-width:760px){
	.rjl-fluent-form-wrap .ff-t-container,
	.rjl-fluent-form-wrap .ff_columns_total_2,
	.rjl-fluent-form-wrap .ff_columns_total_3{
		display:block!important;
	}

	.rjl-fluent-form-wrap .ff-t-cell{
		width:100%!important;
		padding-left:0!important;
		padding-right:0!important;
	}
}


/* ===== v10.12.0 footer and bottom CTA hard color fix =====
   Some templates use footer-like CTA sections before the real footer.
   Keep this scoped to footer/final-CTA areas only.
*/
footer,
.site-footer,
.site-footer *,
.footer,
.footer *,
.final-cta,
.final-cta *,
.final-cta-section,
.final-cta-section *,
.cta-section,
.cta-section *{
	color:#d7dde8!important;
}

footer h1,
footer h2,
footer h3,
footer h4,
footer h5,
footer h6,
.site-footer h1,
.site-footer h2,
.site-footer h3,
.site-footer h4,
.site-footer h5,
.site-footer h6,
.footer h1,
.footer h2,
.footer h3,
.footer h4,
.footer h5,
.footer h6,
.final-cta h1,
.final-cta h2,
.final-cta h3,
.final-cta-section h1,
.final-cta-section h2,
.final-cta-section h3,
.cta-section h1,
.cta-section h2,
.cta-section h3{
	color:#ffffff!important;
}

footer a,
footer a:link,
footer a:visited,
.site-footer a,
.site-footer a:link,
.site-footer a:visited,
.footer a,
.footer a:link,
.footer a:visited{
	color:#ffffff!important;
	text-decoration:none!important;
}

footer a:hover,
footer a:focus,
.site-footer a:hover,
.site-footer a:focus,
.footer a:hover,
.footer a:focus{
	color:#ff8a21!important;
	text-decoration:none!important;
}

footer .button,
.site-footer .button,
.footer .button,
.final-cta .button,
.final-cta-section .button,
.cta-section .button{
	color:#ffffff!important;
	background:#ff8a21!important;
	border-color:#ff8a21!important;
}

footer .button:hover,
.site-footer .button:hover,
.footer .button:hover,
.final-cta .button:hover,
.final-cta-section .button:hover,
.cta-section .button:hover{
	color:#ffffff!important;
	background:#f17810!important;
	border-color:#f17810!important;
}

/* Static Sourcing Agent Guide card styles, scoped only to this guide page. */
.sag-static-page .sag-static-summary{
	background:#f8fafc!important;
	border:1px solid #e7edf4!important;
	border-radius:10px!important;
	padding:18px 20px!important;
	margin:0 0 26px!important;
}

.sag-static-page .sag-static-box-title{
	font-size:20px!important;
	line-height:1.35!important;
	font-weight:700!important;
	margin:0 0 12px!important;
	color:#0f172a!important;
}

.sag-static-page .sag-static-grid{
	display:grid!important;
	gap:18px!important;
	margin:0 0 24px!important;
}

.sag-static-page .sag-static-grid--two{
	grid-template-columns:repeat(2,minmax(0,1fr))!important;
}

.sag-static-page .sag-static-grid--three{
	grid-template-columns:repeat(3,minmax(0,1fr))!important;
}

.sag-static-page .sag-static-card,
.sag-static-page .sag-static-panel,
.sag-static-page .sag-static-warning,
.sag-static-page .sag-static-faq-item{
	background:#fff!important;
	border:1px solid #e7edf4!important;
	border-radius:10px!important;
	padding:18px 18px 16px!important;
}

.sag-static-page .sag-static-card h3,
.sag-static-page .sag-static-panel h3,
.sag-static-page .sag-static-warning h3,
.sag-static-page .sag-static-faq-item h3{
	margin:0 0 10px!important;
	font-size:19px!important;
	line-height:1.35!important;
	font-weight:700!important;
	color:#0f172a!important;
}

.sag-static-page .sag-static-card p,
.sag-static-page .sag-static-panel p,
.sag-static-page .sag-static-panel li,
.sag-static-page .sag-static-warning li,
.sag-static-page .sag-static-faq-item p{
	font-size:16px!important;
	line-height:1.8!important;
	color:#334155!important;
}

.sag-static-page .sag-static-note{
	background:#fff8f1!important;
	border-left:4px solid #ff8a21!important;
	border-radius:8px!important;
	padding:16px 18px!important;
	margin:0 0 24px!important;
	font-size:16px!important;
	line-height:1.8!important;
	color:#334155!important;
}

.sag-static-page .sag-static-checklist{
	display:grid!important;
	gap:14px!important;
	margin:0 0 24px!important;
}

.sag-static-page .sag-static-check-item{
	display:grid!important;
	grid-template-columns:52px minmax(0,1fr)!important;
	gap:14px!important;
	align-items:start!important;
	padding:16px 18px!important;
	border:1px solid #e7edf4!important;
	border-radius:10px!important;
	background:#fff!important;
}

.sag-static-page .sag-static-check-item > span{
	display:flex!important;
	align-items:center!important;
	justify-content:center!important;
	width:44px!important;
	height:44px!important;
	border-radius:999px!important;
	background:#fff8f1!important;
	border:1px solid #ffd6af!important;
	color:#ff8a21!important;
	font-size:14px!important;
	font-weight:700!important;
}

.sag-static-page .sag-static-check-item strong{
	display:block!important;
	margin:0 0 4px!important;
	color:#0f172a!important;
}

.sag-static-page .sag-static-check-item p{
	margin:0!important;
	font-size:16px!important;
	line-height:1.8!important;
}

.sag-static-page .sag-static-warning{
	margin:0 0 24px!important;
	background:#fffdf7!important;
	border-color:#fde0b7!important;
}

.sag-static-page .sag-static-faq{
	display:grid!important;
	gap:16px!important;
}

@media (max-width: 900px){
	.sag-static-page .sag-static-grid--two,
	.sag-static-page .sag-static-grid--three{
		grid-template-columns:1fr!important;
	}
}

@media (max-width: 640px){
	.sag-static-page .sag-static-check-item{
		grid-template-columns:1fr!important;
	}

	.sag-static-page .sag-static-check-item > span{
		margin-bottom:6px!important;
	}
}


/* ===== v10.13.0 backend editable guide media/icon support ===== */
.sag-static-page .sag-static-icon{
	width:42px!important;
	height:42px!important;
	object-fit:contain!important;
	display:block!important;
	margin:0 0 12px!important;
	border-radius:0!important;
}

.sag-static-page .sag-static-card:has(.sag-static-icon){
	padding-top:20px!important;
}

.static-guide-page .static-guide-article p + p{
	margin-top:-8px!important;
}

/* ===== v10.18.0 Extra Service image visibility repair =====
   Restore the background images that the previous Extra Service CSS accidentally disabled. */
body.rjl-page-extra-services .service-v61-photo-bg,
body.rjl-page-extra-services .service-v61-packaging-bg,
body.rjl-page-extra-services .service-v61-quality-bg,
body.rjl-page-extra-services .service-v61-warehouse-bg,
body.rjl-page-extra-service .service-v61-photo-bg,
body.rjl-page-extra-service .service-v61-packaging-bg,
body.rjl-page-extra-service .service-v61-quality-bg,
body.rjl-page-extra-service .service-v61-warehouse-bg{
	background-image:var(--bg-image)!important;
	background-repeat:no-repeat!important;
	background-position:center center!important;
	background-color:#fff!important;
	opacity:1!important;
	visibility:visible!important;
}
body.rjl-page-extra-services .service-v61-packaging-bg,
body.rjl-page-extra-service .service-v61-packaging-bg{
	background-size:contain!important;
}
body.rjl-page-extra-services .service-v61-photo-bg,
body.rjl-page-extra-services .service-v61-quality-bg,
body.rjl-page-extra-services .service-v61-warehouse-bg,
body.rjl-page-extra-service .service-v61-photo-bg,
body.rjl-page-extra-service .service-v61-quality-bg,
body.rjl-page-extra-service .service-v61-warehouse-bg{
	background-size:cover!important;
}
