/* Company Section widget — hero stat strip, section nav, feed frame */

.ontarioai-company-section .co-hero-stat {
	border: 1px solid rgba(255, 255, 255, 0.08);
	background: rgba(255, 255, 255, 0.03);
	min-width: 0;
}

.ontarioai-company-section .co-hero-stat-strip {
	max-width: 100%;
}

.ontarioai-company-section .co-hero-feed-frame {
	box-shadow: 0 0 60px rgba(107, 70, 255, 0.22), 0 0 120px rgba(107, 70, 255, 0.08);
}

.ontarioai-company-section .co-section-nav-scroll {
	-webkit-overflow-scrolling: touch;
	scrollbar-width: none;
}

.ontarioai-company-section .co-section-nav-scroll::-webkit-scrollbar {
	display: none;
}

.ontarioai-company-section .co-section-nav .co-nav-pill {
	display: inline-flex;
	align-items: center;
	flex-shrink: 0;
	white-space: nowrap;
	border: 1px solid rgba(255, 255, 255, 0.1);
	border-radius: 9999px;
	padding: 0.625rem 1.25rem;
	font-family: 'DM Mono', monospace;
	font-size: 0.8125rem;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	text-decoration: none;
	color: rgba(255, 255, 255, 0.6);
	transition: color 0.2s, background 0.2s, border-color 0.2s;
}

.ontarioai-company-section .co-section-nav .co-nav-pill:hover {
	color: #fff;
	border-color: rgba(107, 70, 255, 0.4);
}

.ontarioai-company-section .co-section-nav .co-nav-pill.active {
	color: #6b46ff;
	border-color: #6b46ff;
	background: rgba(107, 70, 255, 0.07);
}

.ontarioai-company-section .ontarioai-company-mesh-dots {
	z-index: 2;
}

.ontarioai-company-section > svg.hero-mesh__canvas {
	z-index: 1;
}

.ontarioai-company-section > .relative.z-10,
.ontarioai-company-section > .co-section-nav {
	z-index: 10;
}

/* Team Cards Section */

.ontarioai-company-team-cards-grid {
	grid-template-columns: repeat(var(--team-cols-mobile, 2), minmax(0, 1fr));
}

@media (min-width: 768px) {
	.ontarioai-company-team-cards-grid {
		grid-template-columns: repeat(var(--team-cols-tablet, 2), minmax(0, 1fr));
	}
}

@media (min-width: 1024px) {
	.ontarioai-company-team-cards-grid {
		grid-template-columns: repeat(var(--team-cols-desktop, 4), minmax(0, 1fr));
	}
}

.ontarioai-company-team-card {
	min-width: 0;
}

.ontarioai-company-team-card-photo-wrap {
	flex-shrink: 0;
	width: 8rem;
	height: 8rem;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 1rem;
	border-radius: 50%;
	overflow: hidden;
	clip-path: circle(50% at 50% 50%);
}

.ontarioai-company-team-card-photo-wrap .ontarioai-company-team-card-photo,
.ontarioai-company-team-card-photo {
	display: block;
	width: 100% !important;
	height: 100% !important;
	max-width: none !important;
	border-radius: 50%;
	object-fit: cover;
}

.ontarioai-company-team-card-photo-wrap--uploaded {
	box-shadow: 0 0 0 3px rgba(107, 70, 255, 0.12);
}

.ontarioai-company-team-card-social-link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2rem;
	height: 2rem;
	border-radius: 0.5rem;
	border: 1px solid rgba(15, 22, 41, 0.1);
	color: rgba(15, 22, 41, 0.45);
	text-decoration: none;
	transition: color 0.2s, border-color 0.2s, background 0.2s;
}

.ontarioai-company-team-card-social-link:hover,
.ontarioai-company-team-card-social-link:focus-visible {
	color: #6b46ff;
	border-color: rgba(107, 70, 255, 0.35);
	background: rgba(107, 70, 255, 0.06);
	outline: none;
}

/* At a Glance cards */
.co-glance-card {
	transition: border-color 0.3s, box-shadow 0.3s;
}

.co-glance-card:hover {
	border-color: rgba(107, 70, 255, 0.35);
	box-shadow: 0 8px 32px rgba(15, 22, 41, 0.06);
}

/* Inside Each Story teaser rows */
.co-teaser-row {
	transition: border-color 0.3s, background 0.3s;
}

.co-teaser-row:hover {
	border-color: rgba(107, 70, 255, 0.35);
	background: rgba(107, 70, 255, 0.03);
}

/* Company Hub cards */
.co-hub-card {
	transition: border-color 0.3s, box-shadow 0.3s, transform 0.3s;
}

.co-hub-card:hover {
	border-color: rgba(107, 70, 255, 0.45);
	box-shadow: 0 12px 40px rgba(107, 70, 255, 0.1);
	transform: translateY(-4px);
}

.co-card-badge {
	display: inline-block;
	font-family: 'DM Mono', monospace;
	font-size: 0.75rem;
	letter-spacing: 0.04em;
	padding: 0.375rem 0.75rem;
	border-radius: 9999px;
}

/* Elementor: full-bleed company section widgets */
.elementor-widget-ontarioai-company-section > .elementor-widget-container,
.elementor-widget-ontarioai-company-overview-glance > .elementor-widget-container,
.elementor-widget-ontarioai-company-overview > .elementor-widget-container,
.elementor-widget-ontarioai-company-inside-stories > .elementor-widget-container,
.elementor-widget-ontarioai-company-mission > .elementor-widget-container,
.elementor-widget-ontarioai-company-hub > .elementor-widget-container,
.elementor-widget-ontarioai-company-team-cards > .elementor-widget-container,
.elementor-widget-ontarioai-company-who-we-hire > .elementor-widget-container,
.elementor-widget-ontarioai-company-culture-cards > .elementor-widget-container,
.elementor-widget-ontarioai-company-about-mission > .elementor-widget-container,
.elementor-widget-ontarioai-company-open-positions > .elementor-widget-container,
.elementor-widget-ontarioai-company-partners > .elementor-widget-container,
.elementor-widget-ontarioai-company-newsroom > .elementor-widget-container {
	padding: 0;
	max-width: none;
}

/* Partners Section */
.ontarioai-company-partners-grid {
	grid-template-columns: repeat(var(--partner-cols-mobile, 2), minmax(0, 1fr));
}

@media (min-width: 768px) {
	.ontarioai-company-partners-grid {
		grid-template-columns: repeat(var(--partner-cols-desktop, 4), minmax(0, 1fr));
	}
}

.ontarioai-company-partner-card {
	min-width: 0;
}

.ontarioai-company-partners-section .feat-dark {
	background: rgba(255, 255, 255, 0.04);
	border: 1px solid rgba(255, 255, 255, 0.1);
	transition: border-color 0.3s, background 0.3s;
}

.ontarioai-company-partners-section .feat-dark:hover {
	border-color: #6b46ff;
	background: rgba(107, 70, 255, 0.09);
}

.ontarioai-company-partners-section .partner-tile {
	transition: border-color 0.3s, background 0.3s;
}

.ontarioai-company-partners-section .partner-tile:hover {
	border-color: rgba(107, 70, 255, 0.4);
	background: rgba(107, 70, 255, 0.04);
}

.ontarioai-company-partner-tab-btn {
	border-color: rgba(255, 255, 255, 0.1);
	color: rgba(255, 255, 255, 0.5);
	background: transparent;
	cursor: pointer;
}

.ontarioai-company-partner-tab-btn:hover {
	border-color: rgba(255, 255, 255, 0.3);
	color: #fff;
}

.ontarioai-company-partner-tab-btn.is-active {
	border-color: rgba(107, 70, 255, 0.5);
	background: rgba(107, 70, 255, 0.1);
	color: #6b46ff;
}

.ontarioai-company-partner-panel.hidden {
	display: none;
}

.ontarioai-company-partner-avatar img {
	display: block;
}

/* Open Positions — glow-card job rows */
.ontarioai-company-open-positions-section .glow-card {
	transition: border-color 0.3s, box-shadow 0.3s;
}

.ontarioai-company-open-positions-section .glow-card:hover {
	border-color: #6b46ff;
	box-shadow: 0 0 0 1px rgba(107, 70, 255, 0.3), 0 12px 40px rgba(107, 70, 255, 0.12);
}

.ontarioai-company-open-positions-section .badge-pop {
	animation: badgePop 0.4s ease both;
}

@keyframes badgePop {
	from {
		transform: scale(0.85);
		opacity: 0;
	}
	to {
		transform: scale(1);
		opacity: 1;
	}
}

.ontarioai-company-open-positions-page-nav .co-page-nav-link {
	text-decoration: none;
}

.elementor-editor-active .ontarioai-company-open-positions-section .reveal,
.elementor-editor-active .ontarioai-company-open-positions-section .reveal.visible {
	opacity: 1;
	transform: translateY(0);
}

/* About & Mission — belief cards */
.co-val-card {
	transition: border-color 0.3s, box-shadow 0.3s;
}

.co-val-card:hover {
	border-color: #6b46ff;
	box-shadow: 0 8px 32px rgba(107, 70, 255, 0.1);
}

/* About & Mission — journey pulse dot */
.ontarioai-company-about-mission-section .co-journey-dot.tl-dot {
	position: relative;
	z-index: 2;
}

.ontarioai-company-about-mission-section .co-journey-dot.tl-dot::after {
	content: '';
	position: absolute;
	inset: -5px;
	border-radius: 50%;
	border: 1px solid rgba(107, 70, 255, 0.5);
	animation: co-journey-pulse-ring 2.4s ease-out infinite;
}

@keyframes co-journey-pulse-ring {
	0% {
		transform: scale(1);
		opacity: 0.6;
	}
	70% {
		transform: scale(2.2);
		opacity: 0;
	}
	100% {
		transform: scale(2.2);
		opacity: 0;
	}
}

/* About & Mission — page nav links */
.ontarioai-company-about-page-nav .co-page-nav-link {
	text-decoration: none;
}

/* Who We Hire intro band */
.ontarioai-company-who-we-hire-left {
	min-width: 0;
}

.ontarioai-company-who-we-hire-right {
	min-width: 0;
	max-width: 36rem;
}

.ontarioai-company-who-we-hire-role-card {
	min-width: 0;
}

/* Culture / values cards */
.ontarioai-company-culture-card {
	min-width: 0;
}

.ontarioai-company-culture-card-glow {
	pointer-events: none;
}

/* Elementor editor: reveal sections visible immediately */
.elementor-editor-active .ontarioai-company-overview-section.reveal,
.elementor-editor-active .ontarioai-company-overview-section.reveal.visible,
.elementor-editor-active .ontarioai-company-overview-onepage-section .reveal,
.elementor-editor-active .ontarioai-company-overview-onepage-section .reveal.visible,
.elementor-editor-active .ontarioai-company-inside-stories-section.reveal,
.elementor-editor-active .ontarioai-company-inside-stories-section.reveal.visible,
.elementor-editor-active .ontarioai-company-mission-section.reveal,
.elementor-editor-active .ontarioai-company-mission-section.reveal.visible,
.elementor-editor-active .ontarioai-company-hub-section.reveal,
.elementor-editor-active .ontarioai-company-hub-section.reveal.visible,
.elementor-editor-active .ontarioai-company-who-we-hire-grid.reveal,
.elementor-editor-active .ontarioai-company-who-we-hire-grid.reveal.visible,
.elementor-editor-active .ontarioai-company-who-we-hire-role-cards.reveal,
.elementor-editor-active .ontarioai-company-who-we-hire-role-cards.reveal.visible,
.elementor-editor-active .ontarioai-company-culture-cards-grid.reveal,
.elementor-editor-active .ontarioai-company-culture-cards-grid.reveal.visible,
.elementor-editor-active .ontarioai-company-about-mission-section .reveal,
.elementor-editor-active .ontarioai-company-about-mission-section .reveal.visible,
.elementor-editor-active .ontarioai-company-partners-section .reveal,
.elementor-editor-active .ontarioai-company-partners-section .reveal.visible,
.elementor-editor-active .ontarioai-company-newsroom-section .reveal,
.elementor-editor-active .ontarioai-company-newsroom-section .reveal.visible {
	opacity: 1;
	transform: translateY(0);
}

/* Overview One Page — block cards */
.co-overview-block {
	min-width: 0;
	transition: border-color 0.3s;
}

.co-overview-traction .dot-grid {
	pointer-events: none;
}

/* Newsroom Section */
.ontarioai-company-newsroom-section .news-card {
	transition: border-color 0.3s;
}

.ontarioai-company-newsroom-section .news-card:hover {
	border-color: #6b46ff;
}

.ontarioai-company-newsroom-analyst-dots {
	background-image: radial-gradient(circle, #fff 1px, transparent 1px);
	background-size: 36px 36px;
}

.ontarioai-company-newsroom-analyst-glow {
	background: radial-gradient(ellipse at center, rgba(107, 70, 255, 0.2) 0%, transparent 70%);
}

.ontarioai-company-newsroom-articles .ontarioai-newsroom-articles-list {
	display: contents;
}

.ontarioai-company-newsroom-page-nav .co-page-nav-link {
	text-decoration: none;
}
