/**
 * Sphere Home — shared section components (PRISM, HAWKYRD, ELEVATE, cards).
 * Scoped to .sphere-home; customize via variables.css tokens.
 */

/* Product block group selector */
.sphere-home :is(.product-block--prism, .product-block--hawkyrd, .product-block--elevate) .product-section__top {
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	gap: var(--sphere-product-top-gap);
	align-items: center;
	margin-bottom: var(--sphere-product-top-margin);
}

.sphere-home :is(.product-block--prism, .product-block--hawkyrd, .product-block--elevate) .product-section__content {
	text-align: left;
	max-width: none;
}

.sphere-home .product-block--prism .product-section__content,
.sphere-home .product-block--elevate .product-section__content {
	padding-right: 0.5rem;
}

.sphere-home .product-block--hawkyrd .product-section__content {
	padding-left: 0.5rem;
}

/*.sphere-home :is(.product-block--prism, .product-block--hawkyrd, .product-block--elevate) .product-section__logo {
	height: 2.25rem;
	width: auto;
	margin: 0 0 1.25rem;
}jp*/

.sphere-home :is(.product-block--prism, .product-block--hawkyrd, .product-block--elevate) .product-section__title {
	margin: 0;
	font-size: 35px;
	line-height: 1.1;
	font-weight: 700;
	letter-spacing: -0.02em;
	color: var(--sphere-text-heading);
}

.sphere-home :is(.product-block--prism, .product-block--hawkyrd, .product-block--elevate) .product-section__tagline {
	margin: 0.625rem 0 0;
	font-size: var(--sphere-font-size-subtitle);
	line-height: var(--sphere-line-height-subtitle);
	font-weight: var(--sphere-font-weight-subtitle);
	letter-spacing: var(--sphere-letter-spacing-subtitle);
	color: var(--sphere-orange);
}

.sphere-home :is(.product-block--prism, .product-block--hawkyrd, .product-block--elevate) .product-section__desc {
	margin: 1rem 0 0;
	max-width: none;
	font-size: var(--sphere-font-size-body);
	line-height: var(--sphere-line-height-relaxed);
	font-weight: 400;
	color: var(--sphere-text-body);
}

.sphere-home .product-block--hawkyrd .product-section__desc {
	color: var(--sphere-text-body-alt);
}

.sphere-home :is(.product-block--prism, .product-block--hawkyrd, .product-block--elevate) .product-section__callout {
	display: flex;
	align-items: stretch;
	gap: var(--sphere-callout-gap);
	margin: 1.5rem 0 1.25rem;
	padding: 0;
	border: none;
	font-size: var(--sphere-font-size-body);
	line-height: var(--sphere-line-height-callout);
	font-weight: 400;
	font-style: italic;
	color: var(--sphere-text-primary);
}

.sphere-home :is(.product-block--prism, .product-block--hawkyrd, .product-block--elevate) .product-section__callout::before {
	content: '';
	flex-shrink: 0;
	width: var(--sphere-callout-bar-width);
	background: var(--sphere-orange);
	border-radius: 0.0625rem;
}

.sphere-home .product-section__callout-text {
	flex: 1;
	min-width: 0;
	font-style: italic;
}

.sphere-home .product-section__callout-accent {
	padding: 0.125rem 0.5rem;
	background: var(--sphere-callout-accent-bg);
	box-decoration-break: clone;
	-webkit-box-decoration-break: clone;
	border-radius: var(--sphere-radius-pill);
	font-weight: var(--sphere-font-weight-callout-accent);
	font-style: italic;
	color: var(--sphere-orange);
}

.sphere-home .product-section__callout-rest {
	font-weight: 400;
	font-style: italic;
	color: var(--sphere-text-primary);
}
.sphere-home .product-section__callout-rest span+span, 
.sphere-home .product-section__callout-text span+span,
.sphere-home .product-section__callout-text span+span{
	display: block;
	padding-top: .2rem;
}
.sphere-home :is(.product-block--prism, .product-block--hawkyrd, .product-block--elevate) .product-section__cta {
	margin: 0;
	padding: 0.9375rem 1.875rem;
	font-weight: 600;
	border-radius: var(--sphere-radius-btn);
}

.sphere-home :is(.product-block--prism, .product-block--hawkyrd, .product-block--elevate) .product-section__actions {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 0;
	margin-top: 0;
}

.sphere-home :is(.product-block--prism, .product-block--hawkyrd, .product-block--elevate) .product-section__actions .product-section__callout {
	width: 100%;
	max-width: none;
	flex: none;
	min-width: 0;
	margin: 1.5rem 0 1.25rem;
}

.sphere-home :is(.product-block--prism, .product-block--hawkyrd, .product-block--elevate) .product-section__actions .product-section__cta {
	flex: none;
	margin: 0;
}

.sphere-home :is(.product-block--prism, .product-block--hawkyrd, .product-block--elevate) .product-section__content > p:empty {
	display: none;
	margin: 0;
}

.sphere-home :is(.product-block--prism, .product-block--hawkyrd, .product-block--elevate) .product-section__media {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-width: 0;
}

.sphere-home :is(.product-block--prism, .product-block--hawkyrd) .product-section__media-frame {
	position: relative;
	width: 100%;
	max-width: 41.25rem;
	height: auto;
	min-height: 0;
	overflow: visible;
	display: flex;
	align-items: center;
	justify-content: center;
	line-height: 0;
}

.sphere-home .product-block--elevate .product-section__media-frame {
	position: relative;
	width: 100%;
	max-width: 46.25rem;
	height: auto;
	min-height: 0;
	overflow: visible;
	display: flex;
	align-items: center;
	justify-content: center;
	line-height: 0;
}

.sphere-home .product-block--prism .product-section__pod-img {
	display: block;
	width: 100%;
	max-width: 100%;
	height: auto;
	margin: 0;
	object-fit: contain;
	object-position: center;
	filter: var(--sphere-shadow-media);
}

.sphere-home .product-block--hawkyrd .product-section__yard-img {
	display: block;
	width: 100%;
	max-width: 100%;
	height: auto;
	margin: 0;
	object-fit: contain;
	object-position: center;
	filter: var(--sphere-shadow-media);
}

.sphere-home .product-block--elevate .product-section__dashboard-img {
	display: block;
	width: 100%;
	max-width: 100%;
	height: auto;
	margin: 0;
	object-fit: contain;
	object-position: center;
	filter: var(--sphere-shadow-media);
}

/*.sphere-home .product-block--elevate .product-section__logo--elevate {
	height: 3rem;
	width: auto;
	max-width: 12.625rem;
	margin-bottom: 1.5rem;
}jp */

.sphere-home #hawkyrd.product-section {
	background: var(--sphere-gray-100);
}

/* Product feature cards */
.sphere-home .product-feature-cards {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1rem;
	margin: 0;
	width: 100%;
}
.sphere-home .product-feature-card:hover, .sphere-home .product-feature-card:focus-visible{
	border: var(--pfc-border-width) solid #9999994a !important;
}
.sphere-home .product-feature-card {
	/* Local overrides — edit here or in variables.css (--sphere-pfc-*) */
	--pfc-bg: var(--sphere-pfc-bg, #ffffff);
	--pfc-border: var(--sphere-pfc-border, #000000);
	--pfc-border-width: var(--sphere-pfc-border-width, 1px);
	--pfc-border-hover: var(--sphere-pfc-border-hover, #000000);
	--pfc-radius: var(--sphere-pfc-radius, 0.75rem);
	--pfc-shadow: var(--sphere-pfc-shadow, 0 0.25rem 1.25rem rgba(0, 0, 0, 0.06));
	--pfc-accent-height: var(--sphere-pfc-accent-height);
	--pfc-shadow-hover: var(--sphere-pfc-shadow-hover);
	--pfc-icon-size: var(--sphere-pfc-icon-size);
	--pfc-icon-radius: var(--sphere-pfc-icon-radius);
	--pfc-icon-bg: var(--sphere-pfc-icon-bg);
	--pfc-icon-border: var(--sphere-pfc-icon-border);
	--pfc-icon-bg-hover: var(--sphere-pfc-icon-bg-hover);
	--pfc-icon-border-hover: var(--sphere-pfc-icon-border-hover);

	position: relative;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	background: var(--pfc-bg);
	border: var(--pfc-border-width) solid #9999994a;
	border-radius: var(--pfc-radius);
	padding: 2rem;
	box-shadow: var(--pfc-shadow);
	overflow: hidden;
	cursor: default;
	--sphere-card-accent-inset-x: 0;
	transition:
		box-shadow var(--sphere-transition-smooth),
		transform var(--sphere-transition-smooth),
		border-color var(--sphere-transition-smooth),
		background-color var(--sphere-transition-smooth);
}

.sphere-home .product-feature-card::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 2rem;
    right: 2rem;
    height: 3px;
	background: var(--sphere-orange);
	transform: scaleX(0);
	transform-origin: left center;
	transition: transform 0.4s var(--sphere-ease-lift);
}

.sphere-home .product-feature-card:hover::after,
.sphere-home .product-feature-card:focus-visible::after {
	transform: scaleX(1);
}

.sphere-home .product-feature-card:hover .product-feature-card__title,
.sphere-home .product-feature-card:focus-visible .product-feature-card__title {
	color: var(--sphere-orange);
}

.sphere-home .product-feature-card:hover,
.sphere-home .product-feature-card:focus-visible {
	background: var(--pfc-bg);
	border-radius: var(--pfc-radius);
	box-shadow: var(--pfc-shadow-hover);
	transform: translateY(-2px);
	border-color: var(--pfc-border-hover);
}
.sphere-home .card-top{
	display: flex;
	align-items: center;
	justify-content: space-between;
	width:100%;
}

.sphere-home .product-feature-card__header {
	gap: 1.25rem;
	width: 100%;
	margin-bottom: -6px;
}

.sphere-home .product-feature-card__title {
	margin: 0 0 0.5rem;
	width: 100%;
	font-size: 22px;
	line-height: 1.3;
	font-weight: 600;
	color: var(--sphere-text-heading);
	transition: color 0.3s ease;
}
a.btn.btn--orange.btn--arrow.methodology__cta-btn {
    font-size: 19px;
}

.sphere-home .product-block--prism .product-feature-card__title {
	margin: 0;
}

.sphere-home .product-feature-card__subtitle-row {
	gap: 1rem;
	width: 100%;
	margin-bottom: 1rem;
}

.sphere-home .product-feature-card__subtitle {
	margin: .5rem 0 1rem;
	width: 100%;
	font-size: 1.125rem;
	line-height: 1.45;
	font-weight: 400;
	color: var(--sphere-text-body-alt);
}

.sphere-home :is(.product-block--hawkyrd, .product-block--elevate) .product-feature-card__subtitle {
	margin: 0;
	flex: 1;
	min-width: 0;
}

.sphere-home .product-block--prism .product-feature-card__subtitle {
	color: var(--sphere-text-heading);
}

.sphere-home .product-feature-card__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	width: var(--pfc-icon-size);
	height: var(--pfc-icon-size);
	margin: 0 0 1rem 1rem;
	padding: 0;
	background: var(--pfc-icon-bg);
	border: 1px solid var(--pfc-icon-border);
	border-radius: var(--pfc-icon-radius);
	box-sizing: border-box;
	line-height: 0;
	overflow: hidden;
	transition:
		background-color var(--sphere-transition-smooth),
		border-color var(--sphere-transition-smooth);
}

.sphere-home :is(.product-block--hawkyrd, .product-block--elevate) .product-feature-card__icon {
	margin-top: 0;
}

.sphere-home .product-feature-card__icon img {
	display: block;
	width: 68%;
	height: 68%;
	margin: 0;
	object-fit: contain;
	object-position: center;
	filter: var(--sphere-icon-black-filter);
	transition: transform var(--sphere-transition-smooth), filter var(--sphere-transition-smooth);
}

.sphere-home .product-feature-card:hover .product-feature-card__icon,
.sphere-home .product-feature-card:focus-visible .product-feature-card__icon {
	background: var(--pfc-icon-bg-hover);
	border-color: var(--pfc-icon-border-hover);
}

.sphere-home .product-feature-card:hover .product-feature-card__icon img,
.sphere-home .product-feature-card:focus-visible .product-feature-card__icon img {
	transform: scale(1.05);
	filter: var(--sphere-icon-orange-filter);
}

.sphere-home .product-feature-card__text {
	margin: 0;
	width: 100%;
	font-size: var(--sphere-card-desc-size, 19px);
	line-height: 1.55;
	font-weight: 400;
	color: var(--sphere-text-secondary);
}

.sphere-home .product-block--prism .product-feature-card__text {
	color: var(--sphere-text-secondary);
}

/* Product blocks — tablet gap */
@media (max-width: 1200px) {
	.sphere-home :is(.product-block--prism, .product-block--hawkyrd, .product-block--elevate) .product-section__top {
		gap: 3rem;
	}
}

/* Product blocks — responsive */
@media (max-width: 1024px) {
	.sphere-home :is(.product-block--prism, .product-block--hawkyrd, .product-block--elevate) .product-section__top {
		grid-template-columns: minmax(0, 1fr);
		gap: 2rem;
		margin-bottom: 1.75rem;
	}

	.sphere-home :is(.product-block--prism, .product-block--hawkyrd, .product-block--elevate) .product-section__content {
		order: 1;
		padding-left: 0;
		padding-right: 0;
		width: 100%;
	}

	.sphere-home :is(.product-block--prism, .product-block--hawkyrd, .product-block--elevate) .product-section__media {
		order: 2;
		justify-content: center;
	}

	.sphere-home .product-section__top--reverse .product-section__media {
		order: 2;
	}

	.sphere-home .product-section__top--reverse .product-section__content {
		order: 1;
	}

	.sphere-home :is(.product-block--prism, .product-block--hawkyrd) .product-section__media-frame {
		max-width: 100%;
		height: auto;
	}

	.sphere-home .product-block--elevate .product-section__media-frame {
		max-width: 100%;
	}

	.sphere-home .product-block--prism .product-section__pod-img,
	.sphere-home .product-block--hawkyrd .product-section__yard-img,
	.sphere-home .product-block--elevate .product-section__dashboard-img {
		width: 100%;
		max-width: 100%;
		margin: 0 auto;
	}

	.sphere-home :is(.product-block--prism, .product-block--hawkyrd, .product-block--elevate) .product-section__desc {
		margin-top: 1.25rem;
	}

	.sphere-home :is(.product-block--prism, .product-block--hawkyrd, .product-block--elevate) .product-section__callout {
		margin-top: 1.25rem;
		margin-bottom: 1.5rem;
	}

	.sphere-home :is(.product-block--prism, .product-block--hawkyrd, .product-block--elevate) .product-section__cta {
		display: inline-flex;
		width: auto;
		max-width: 100%;
	}

	.sphere-home .product-feature-cards {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 768px) {
	.sphere-home :is(.product-block--prism, .product-block--hawkyrd, .product-block--elevate) .product-section__title {
		font-size: 2rem;
		line-height: 1.15;
		text-align: center;
	}
	.sphere-home .product-section__logo{
		margin: 0 auto;
	}
	.sphere-home .product-section__desc{		
		text-align: center;
	}
	.sphere-home :is(.product-block--prism, .product-block--hawkyrd, .product-block--elevate) .product-section__tagline {
		font-size: var(--sphere-font-size-subtitle);
	}

	.sphere-home :is(.product-block--prism, .product-block--hawkyrd, .product-block--elevate) .product-section__callout {
		font-size: 1rem;
		line-height: var(--sphere-line-height-callout);
	}

	.sphere-home :is(.product-block--prism, .product-block--hawkyrd, .product-block--elevate) .product-section__cta {
		align-self: flex-start;
		white-space: normal;
		text-align: center;
		line-height: 1.35;
		width:100%;
	}
	.sphere-home .methodology-card__top{display: none !important;}
	.sphere-home .product-feature-card {
		padding: 1.5rem 1.25rem;
	}
}

@media (max-width: 480px) {
	.sphere-home :is(.product-block--prism, .product-block--hawkyrd, .product-block--elevate) .product-section__title {
		font-size: 1.625rem;
	}
}
