/* Groundswell Lifecycle Rail — sticky tabs + stacking slides.
   This file is intentionally LIGHT on aesthetics: it owns the *mechanics*
   (sticky, stacking overlap, marker) and just enough type/spacing to read.
   Restyle freely — the structural rules to keep are marked [STRUCTURAL].
   Tune the sticky offset with --gibs-rail-top (account for a sticky header). */

.gibs-rail-section{
	--gibs-rail-top:32px;          /* [STRUCTURAL] shared sticky offset */
	background:var(--gibs-paper);
	color:var(--gibs-text-ink);
	padding:72px clamp(16px,5vw,64px) 0;
	padding-top: 0;
	position: relative;
}
.gibs-rail-section:after {
	content: "";
	position: absolute;
	height: 1px;
	width: 100%;
	background: var(--gibs-line-ink);
	top: 330px;
	left: 0;
	display: block;
}
/* ---- intro header (scrolls away above the sticky area) ---------------- */
.gibs-rail-head {
	width: 100%;
	padding: 0 40px 40px;
	height: 330px;
	padding-top: 100px;
	display: block;
}
	/* .page-id-4606 .gibs-rail-head {
		background: url(/wp-content/themes/groundswell-child/assets/images/large-gibs-logo.png) no-repeat;
		background-position: bottom right;
	} */
	/* .page-id-4749 .gibs-rail-head {
		background: url(/wp-content/themes/groundswell-child/assets/images/Favicon-Logo-White_Stratus.png) no-repeat;
		background-position: bottom right;
	} */
	
	.home .gibs-rail-head {
		position: relative;
	}
	.home p.gibs-slide__kicker {
		display: none;
	}
	.home .gibs-rail-head:before {
		background: url(/wp-content/themes/groundswell-child/assets/images/Groundswell_faded_Secondary-Logo_WhiteGrey-2048x371.png) no-repeat;
		background-position: center right;
		content: "";
		position: absolute;
		bottom: 0;
		right: 0;
		width: 85%;
		height: 205px;
		background-size: contain;
		opacity: .035;
	}
	.heading-gradient strong {
		background: var(--gibs-grad-3);
		-webkit-background-clip: text;
		background-clip: text;
		color: transparent;
		font-weight: 500;
	}
	h2.heading-gradient {
		font-size: 52px;
	}
	
	.glas-challenge h2.heading-gradient {
		font-size: 46px;
	}
.solutions-section-container {
	position: relative;
max-width:var(--gibs-maxw);
--border-left-width: .5px;
--border-right-width: .5px;
--border-style: solid;
--border-top-width: 0px;
height: min-content;
overflow: var(--overflow-clip-fallback, clip);
z-index: 2;
flex-flow: column;
flex: none;
place-content: center;
align-items: center;
width: 100%;
display: flex;
position: relative;
margin: 0 auto;
}
.solutions-section-container:after {
	content: "";
	border-width: var(--border-top-width, 0) var(--border-right-width, 0) var(--border-bottom-width, 0) var(--border-left-width, 0);
	border-color:  var(--gibs-line-ink);
	border-style: var(--border-style, none);
	box-sizing: border-box;
	border-radius: inherit;
	corner-shape: inherit;
	pointer-events: none;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}
.gibs-rail-title{font-family:var(--gibs-font-display);font-weight:500;
	font-size:clamp(38px,4.2vw,52px);line-height:1.06;letter-spacing:-.01em;margin:40px 0 0 !important;}
.gibs-rail-title__accent{background:var(--gibs-grad-3);-webkit-background-clip:text;
	background-clip:text;color:transparent}
.gibs-rail-lead{color:var(--gibs-muted-ink);max-width:60ch;margin:0;font-size:16px}

/* ---- layout: sticky rail + tall stacking panels ----------------------- */
.gibs-rail-layout{margin:0 auto;
	display:grid;grid-template-columns:300px 1fr;
	align-items:start;                                   /* [STRUCTURAL] */
}

.gibs-rail{position:sticky;top:var(--gibs-rail-top);align-self:start} /* [STRUCTURAL] */
.gibs-rail__list{position:relative;list-style:none;margin:0;padding:0}
/* .gibs-rail__list::before{content:"";position:absolute;left:5px;top:6px;bottom:6px;
	width:2px;background:var(--gibs-line-ink)} */
	ul.gibs-rail__list {
		margin: 1px 0 0;
		padding: 0;
	}
.gibs-rail__item{position:relative;padding:15px 0 15px 35px;cursor:pointer;
	font-family:var(--gibs-font-mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;
	color:#9aa5b4;transition:color .2s;outline:none;	border-bottom: 1px solid var(--gibs-line-ink);}
.gibs-rail__item:hover,.gibs-rail__item:focus-visible{color:var(--gibs-text-ink)}
.gibs-rail__item[aria-current="true"]{color:var(--gibs-text-ink);font-weight:700;background: #fff;}
/* the sliding marker dot (JS sets --marker-y) */
.gibs-rail__marker{
	position: absolute;
		left: 15px;
		top: -1px;
		width: 10px;
		height: 10px;
		border-radius: 50%;
		background: var(--gibs-green);
		transform: translateY(var(--marker-y, 6px));
		transition: transform .28s ease;
		z-index: 2;
	}

/* ---- panels: each slide is sticky + opaque so the next covers it ------ */
.gibs-rail-panels{position:relative;border-left: 1px solid var(--gibs-line-ink);}                    /* [STRUCTURAL] offsetParent */
.gibs-slide{
	position: sticky;
	top: var(--gibs-rail-top);
	min-height: min(78vh, 520px);
	background: #fff;
	display: grid;
	grid-template-columns: 45% 55%;
	/* gap: clamp(20px, 4vw, 48px); */
	/* align-items: center; */
	padding: 0;
	border-top: 1px solid var(--gibs-line-ink);
}
.gibs-slide__kicker{font-family:var(--gibs-font-mono);font-size:14px;letter-spacing:.16em;
	text-transform:uppercase;color:#09b5b8;}
.gibs-slide__heading{font-family:var(--gibs-font-display);font-weight:600;font-size:26px;
	line-height:1.15;margin:30px 0 12px !important;}
.gibs-slide__body{color:var(--gibs-muted-ink);font-size:15px;margin:0 0 16px}
.gibs-slide__text {
	padding: 40px 40px 40px 40px;
}
.home .gibs-slide__body, .home .gibs-slide__list li {
	font-size: 16px;
}
.gibs-slide__cta {
	font-weight: 500;
	font-size: 15px;
	text-decoration: none;
	padding: 10px 22px;
	border-radius: 999px;
	cursor: pointer;
	display: inline-flex;
	background: var(--gibs-grad-2);
	color: #0b0f1a;
	transition: all ease .4s;
	margin-top: 10px;
}
.gibs-slide__cta span {
	margin-left: 4px;
}
.gibs-slide__cta:hover {
background: var(--gibs-grad-2-reverse) !important;
color: #fff !important;
}
.gibs-slide__list{list-style:none;margin:0;padding:0}
.gibs-slide__list li{position:relative;padding-left:22px;margin:8px 0;font-size:14px;color:#3a4452}
.gibs-slide__list li::before{content:"";position:absolute;left:0;top:7px;width:8px;height:8px;
	border-radius:2px;background:var(--gibs-green)}
.gibs-slide__media{min-height: 100%; 
	border-radius: 14px;
	/* overflow: hidden; */
	position: relative;
	background: url(/wp-content/themes/groundswell-child/assets/images/sm-top-left-lines.png) no-repeat;
	align-content: center;
	padding: 0 20px;}
.gibs-slide__media:before {	position: absolute;
	content: "";
	bottom: 0;
	right: 0px;
	background: url(/wp-content/themes/groundswell-child/assets/images/sm-btm-right-lines.png) no-repeat;
	height: 300px;
	width: 100%;
	background-position: bottom right;}
.gibs-slide__media-wrapper {
	border-radius: 12px;
	background: #fff;
	padding: 30px;
	box-shadow: 0 13px 20px rgba(0, 0, 0, .1);
	margin: 0 30px;
	position: relative;
}
.gibs-slide__media img {
	display: block;
	width: auto;
	height: auto;
}
@media (min-width:1024px) {
.gibs-rail-head {
justify-content: space-between;
}
.gibs-rail-head-wrapper {
	width: 100%;
}
.gibs-rail-head-wrapper.rail-content {
	max-width: 440px;
}
.gibs-rail-head {
	display: flex;
	align-items: flex-end;
}
}
@media (max-width:1023px) {
.gibs-rail-head-wrapper.rail-content {
	margin-top: 20px;
}
.gibs-rail-layout {
	grid-template-columns: 240px 1fr;
}
.gibs-slide {
grid-template-columns: 55% 45%;
}
h2.heading-gradient {
  font-size: 38px;
}

}
@media (max-width:760px){
	.gibs-rail-layout{grid-template-columns:1fr;gap:20px}
	/* on small screens, drop the sticky stack — it doesn't read well narrow */
	.gibs-rail {
		position: static;
		align-items: center;
		padding: 1rem 2rem 0;
	}                         /* [STRUCTURAL] */
	.gibs-rail__list{display:flex;flex-wrap:wrap;gap:6px}
	.gibs-rail__list::before,.gibs-rail__marker{display:none}
	.gibs-rail__item{padding:8px 12px;border:1px solid var(--gibs-line-ink);border-radius:999px}
	.gibs-slide{position:static;min-height:0;grid-template-columns:1fr}
	.gibs-rail-head {
	height: auto;
}
.gibs-rail-section:after {
	display: none;
}
.gibs-rail-head {
padding-bottom: 20px;
}
}
