/* Technologies index and inner technology pages only. */
.onp-page .onp-tech{
	width:100%;
	max-width:none;
	color:#2c3a49;
	font-size:16px;
	line-height:1.7;
}
.onp-page .onp-tech > .page_title,
.onp-page .onp-tech > .page_title + .spacer30,
.onp-page .onp-tech > .spacer10{
	display:none;
}
.onp-page .onp-tech .page_content{
	width:100%;
	max-width:none;
	text-align:left;
}
.onp-page .onp-tech .page_content > .spacer20,
.onp-page .onp-tech .page_content > .clearfix,
.onp-page .onp-tech .page_content > br{
	display:none;
}
.onp-tech .page_content p,
.onp-tech .page_content li,
.onp-tech .page_content h2,
.onp-tech .page_content h3{
	text-align:left;
}

.onp-tech .tech-section{
	width:100%;
	margin:0 0 18px;
	padding:0;
	border:0;
}
.onp-tech .tech-grid{
	display:grid;
	grid-template-columns:minmax(0, 0.92fr) minmax(0, 1.08fr);
	gap:36px;
	align-items:center;
	width:100%;
	max-width:none;
	margin:0;
	padding:26px;
	border:1px solid rgba(22, 50, 79, 0.08);
	border-radius:16px;
	background:#f5f8fb;
}
.onp-tech .tech-section:nth-child(odd) .tech-col:has(img){
	order:2;
}
.onp-tech .tech-section:nth-child(even) .tech-grid{
	grid-template-columns:minmax(0, 1.08fr) minmax(0, 0.92fr);
}
.onp-tech .tech-section:nth-child(even) .tech-col:has(img){
	order:-1;
}
.onp-tech .tech-col{
	min-width:0;
	flex:none;
}
.onp-tech .tech-col:not(:has(img)){
	display:flex;
	flex-direction:column;
	align-items:flex-start;
}
.onp-tech .tech-col:has(img){
	display:flex;
	align-items:center;
	justify-content:center;
	min-height:280px;
	padding:16px;
	border-radius:14px;
	background:#fff;
	overflow:hidden;
}
.onp-tech .tech-col img{
	display:block;
	width:100%;
	height:320px;
	max-width:100%;
	margin:0;
	object-fit:contain;
	object-position:center;
	border-radius:0;
	box-shadow:none;
	background:transparent;
}
.onp-tech .tech-title{
	margin:0 0 12px;
	color:#16324f;
	font-size:28px;
	font-weight:700;
	line-height:1.25;
}
.onp-tech .tech-title a{
	color:#1d5c96;
	text-decoration:underline;
	text-underline-offset:2px;
}
.onp-tech .tech-title a:hover{
	color:#e77817;
}
.onp-tech .tech-col p{
	margin:0 0 14px;
	color:#2c3a49;
	font-size:16px;
	line-height:1.7;
}
.onp-tech .tech-col ul{
	margin:0 0 16px;
	padding:0;
	list-style:none;
}
.onp-tech .tech-col li{
	position:relative;
	margin:0 0 8px;
	padding-left:16px;
	line-height:1.5;
}
.onp-tech .tech-col li::before{
	content:"";
	position:absolute;
	left:0;
	top:0.55em;
	width:7px;
	height:7px;
	border-radius:50%;
	background:#e77817;
}
.onp-tech .see-more{
	margin-top:auto;
}
.onp-tech .see-more a,
.onp-tech-cta-btn{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	min-height:46px;
	padding:12px 22px;
	border-radius:10px;
	background:#e77817;
	color:#fff !important;
	font-size:15px;
	font-weight:700;
	line-height:1.2;
	text-decoration:none !important;
}
.onp-tech .see-more a:hover,
.onp-tech-cta-btn:hover{
	background:#cf6810;
	color:#fff !important;
}
@media (hover:hover) and (pointer:fine){
	.onp-tech .tech-col img{
		transition:transform .35s ease;
	}
	.onp-tech .tech-section:hover .tech-col img{
		transform:scale(1.035);
	}
}

.onp-tech .service-page,
.onp-tech .service-onp{
	width:100%;
	max-width:none;
	margin:0;
	padding:0;
	font-family:inherit;
	color:inherit;
}
.onp-tech .service-grid{
	display:grid;
	grid-template-columns:minmax(0, 0.9fr) minmax(0, 1.1fr);
	gap:36px;
	align-items:center;
	width:100%;
	margin:0 0 28px;
	padding:22px;
	border:1px solid rgba(22, 50, 79, 0.08);
	border-radius:16px;
	background:#f5f8fb;
}
.onp-tech .video-block,
.onp-tech .text-block{
	min-width:0;
	flex:none;
}
.onp-tech .text-block{
	padding:4px 4px 4px 0;
	border-radius:0;
	background:transparent;
}
.onp-tech .text-block p,
.onp-tech .article-content p{
	margin:0 0 14px;
	color:#2c3a49;
	font-size:16px;
	line-height:1.75;
}
.onp-tech .video-block:has(iframe){
	position:relative;
	width:100%;
	aspect-ratio:16 / 9;
	overflow:hidden;
	border-radius:12px;
	background:#0e1a28;
}
.onp-tech .video-block iframe{
	position:absolute;
	inset:0;
	width:100% !important;
	height:100% !important;
	max-width:none;
	border:0;
	border-radius:12px;
}
.onp-tech .video-block:has(img){
	display:flex;
	align-items:center;
	justify-content:center;
	min-height:240px;
	padding:12px;
	border-radius:14px;
	background:#fff;
}
.onp-tech .video-block img,
.onp-tech .service-intro img,
.onp-tech .print-specs img{
	display:block;
	width:100% !important;
	height:auto !important;
	max-width:100% !important;
	max-height:420px;
	object-fit:contain;
	border-radius:12px;
	box-shadow:none;
}
.onp-tech .article-content h2,
.onp-tech .article-content h3,
.onp-tech .service-onp h2,
.onp-tech .service-onp h3{
	margin:28px 0 14px;
	color:#16324f;
	font-size:26px;
	font-weight:700;
	line-height:1.25;
}
.onp-tech .article-content h2::after,
.onp-tech .service-onp h2::after{
	content:"";
	display:block;
	width:56px;
	height:3px;
	margin-top:12px;
	border-radius:2px;
	background:#e77817;
}
.onp-tech .article-content h2 a,
.onp-tech .article-content h3 a,
.onp-tech .text-block a,
.onp-tech .article-content p a{
	color:#1d5c96;
	text-underline-offset:2px;
}
.onp-tech .article-content h2 a:hover,
.onp-tech .text-block a:hover,
.onp-tech .article-content p a:hover{
	color:#e77817;
}
.onp-tech .article-content ul,
.onp-tech .service-onp ul{
	display:grid;
	grid-template-columns:repeat(2, minmax(0, 1fr));
	gap:12px 18px;
	margin:0 0 18px;
	padding:0;
	list-style:none;
}
.onp-tech .article-content li,
.onp-tech .service-onp li{
	margin:0;
	padding:14px 16px;
	border:1px solid rgba(22, 50, 79, 0.08);
	border-left:3px solid #e77817;
	border-radius:12px;
	background:#f7f9fc;
	line-height:1.55;
}
.onp-tech .cta-button{
	display:none;
}
.onp-tech-cta{
	display:flex;
	flex-wrap:wrap;
	align-items:center;
	justify-content:space-between;
	gap:16px 24px;
	width:100%;
	margin:28px 0 8px;
	padding:22px 26px;
	border:1px solid rgba(22, 50, 79, 0.08);
	border-radius:16px;
	background:#f8f4ef;
}
.onp-tech-cta p{
	margin:0;
	max-width:42rem;
	color:#16324f;
	font-size:22px;
	font-weight:700;
	line-height:1.35;
}

.onp-page .onp-tech .onp-tech-gallery.row{
	display:grid;
	grid-template-columns:minmax(0, 1fr);
	gap:16px;
	width:100%;
	margin:8px 0 12px;
	padding-top:8px;
}
.onp-page .onp-tech .onp-tech-gallery.row::before,
.onp-page .onp-tech .onp-tech-gallery.row::after,
.onp-page .onp-tech .onp-tech-gallery > .clearfix,
.onp-page .onp-tech .onp-tech-gallery .spacer30{
	content:none;
	display:none;
}
.onp-page .onp-tech .onp-tech-gallery > .col-sm-4{
	width:100% !important;
	max-width:none !important;
	float:none !important;
	padding:0 !important;
	margin:0;
}
.onp-tech-gallery a.fancy{
	display:block;
	overflow:hidden;
	aspect-ratio:4 / 3;
	border-radius:12px;
	background:#eef3f8;
	text-decoration:none;
}
.onp-page .onp-tech .onp-tech-gallery img{
	display:block;
	width:100%;
	height:100%;
	max-width:none;
	object-fit:cover;
}
@media (hover:hover) and (pointer:fine){
	.onp-tech-gallery a.fancy img{
		transition:transform .35s ease;
	}
	.onp-tech-gallery a.fancy:hover img{
		transform:scale(1.045);
	}
}
.onp-tech-gallery a.fancy:focus-visible,
.onp-tech .see-more a:focus-visible,
.onp-tech-cta-btn:focus-visible{
	outline:2px solid #16324f;
	outline-offset:3px;
}

@media (min-width:1200px){
	.onp-tech .article-content ul,
	.onp-tech .service-onp ul{
		grid-template-columns:repeat(3, minmax(0, 1fr));
	}
	.onp-page .onp-tech .onp-tech-gallery.row{
		grid-template-columns:repeat(4, minmax(0, 1fr));
	}
}
@media (min-width:1600px){
	.onp-page .onp-tech .onp-tech-gallery.row{
		grid-template-columns:repeat(5, minmax(0, 1fr));
	}
}
@media (min-width:768px) and (max-width:1199px){
	.onp-page .onp-tech .onp-tech-gallery.row{
		grid-template-columns:repeat(3, minmax(0, 1fr));
	}
}
@media (min-width:370px) and (max-width:767px){
	.onp-page .onp-tech .onp-tech-gallery.row{
		grid-template-columns:repeat(2, minmax(0, 1fr));
		gap:14px;
	}
}
@media (max-width:900px){
	.onp-tech .tech-grid,
	.onp-tech .service-grid{
		grid-template-columns:minmax(0, 1fr);
		gap:18px;
		padding:18px;
	}
	.onp-tech .tech-section:nth-child(n) .tech-col:has(img){
		order:-1;
		min-height:0;
	}
	.onp-tech .tech-col:not(:has(img)){
		align-items:stretch;
	}
	.onp-tech .see-more,
	.onp-tech .see-more a,
	.onp-tech-cta-btn{
		width:100%;
	}
	.onp-tech .tech-col img{
		height:240px;
	}
	.onp-tech .tech-title,
	.onp-tech .article-content h2,
	.onp-tech .service-onp h2{
		font-size:24px;
	}
	.onp-tech-cta{
		padding:18px 16px;
	}
	.onp-tech-cta p{
		font-size:20px;
	}
}
@media (max-width:767px){
	.onp-tech .article-content ul,
	.onp-tech .service-onp ul{
		grid-template-columns:minmax(0, 1fr);
	}
	.onp-tech .text-block p,
	.onp-tech .article-content p,
	.onp-tech .tech-col p{
		font-size:15px;
	}
}
@media (prefers-reduced-motion:reduce){
	.onp-tech .tech-col img,
	.onp-tech-gallery a.fancy img{
		transition:none;
	}
}
