/*
Theme Name: Technique Starter Theme
Theme URI: https://www.techniquewebdesign.co.uk
Author: techniqueweb
Author URI: https://www.techniqueweb.co.uk
Description: A simple Gutenberg ready WordPress theme.
Version: 1.0
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: technique-theme
Tags: translation-ready
*/

.trusted.industries_trusted {
    background: var(--color-grey-200);
}

.archive .innerbanz {
    background: linear-gradient(to right, rgba(0, 0, 0, 0.6) 0%, rgba(0, 0, 0, 0) 50%), url(https://www.niko.co.uk/wp-content/uploads/2026/06/media-banner.jpg) no-repeat center center;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    margin-top: 0px;
    padding: 20px 0px 20px 0px;
    min-height: 200px;
    display: flex;
    align-items: center;
}

.page-id-1069 .wp-block-stackable-columns img {
    max-width: 100%!important;
}

.page-id-9351 h3.wp-block-heading,
.page-id-9349 h3.wp-block-heading,
.page-id-1072 h3.wp-block-heading {
    letter-spacing: normal!important;
    font-weight: normal!important;
}

.col-1-2.blogitem {
    display: flex;
    flex-direction: column;
    height: 100%;
}

h3.tip {
    flex-grow: 1;
}

.cs-builder-section {
	margin: 60px 0;
}

.cs-flexi-section {
    margin-bottom: 50px;
}

/* 50 / 50 section */

.cs-5050-content-box__grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 50px;
	align-items: start;
}

.cs-5050-content-box__box {
    background: var(--color-grey-100);
    padding: 30px;
    box-sizing: border-box;
    height: 100%;
    box-shadow: 0px 5px 10px #00000040;
    border-radius: 10px;
}

.cs-5050-content-box__heading,
.cs-multiple-box__heading {
	margin-top: 0;
}

h3.cs-5050-content-box__heading {
    font-size: 1.3em;
    font-weight: 600;
    letter-spacing: 1.2px;
    text-transform: capitalize;
    line-height: 1.4;
}


/* Multiple boxes */

.cs-multiple-boxes__grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
	gap: 30px;
}

.cs-multiple-box {
	padding: 30px;
	background: #f5f5f5;
}


/* Mobile */

@media (max-width: 768px) {

	.cs-5050-content-box__grid {
		grid-template-columns: 1fr;
	}

}






.FAQAKA .system_faq_answer ul, .tw-faq.FAQAKA ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.FAQAKA .system_faq_answer li, .tw-faq.FAQAKA li {
    border: 1px solid #CBCBCB;
    padding: 5px 30px;
    box-sizing: border-box;
    background: #fff;
    border-radius: 50px;
    color: var(--color-brand-blue-light);
    display: inline-block;
    margin: 5px;
}

woocommerce div.product p.stock {
    font-size: .92em;
}

.single-post .system-contact {
    padding: 50px 0;
}

.footer-certs img {
    max-width: 200px;
}

.wp-block-wpzoom-blocks-social-sharing {
    display: none;
}

.stk-row.stk-inner-blocks.stk-block-content.stk-content-align.stk-9f09a71-column img {
    width: 100%!important;
}

.stk-block-carousel__slider img {
    max-height: 350px;
    min-height: 200px;
}

.industries-top-boxes {
    display: grid;
    gap: 30px;
    margin-top: 2em;
}

.industries-top-box {
    background: #fff;
    padding: 30px;
    box-sizing: border-box;
    height: 100%;
    box-shadow: 0px 5px 10px #00000040;
    border-radius: 10px;
    text-align: left;
}

.industries-top-box-content ul {
    list-style: disc!important;
}

@media (max-width: 900px) {
    .industries-top-boxes {
        grid-template-columns: repeat(2, 1fr) !important;
    }
}

@media (max-width: 600px) {
    .industries-top-boxes {
        grid-template-columns: 1fr !important;
    }
}

/* Make 1 or 2 items fill the row */
.industries-top-box:first-child:nth-last-child(1) {
	grid-column: span 3;
}

.industries-top-box:first-child:nth-last-child(2),
.industries-top-box:first-child:nth-last-child(2) + .industries-top-box {
	grid-column: span 1;
}

.site-branding {
    position: relative;
    width: 100%;
    z-index: 999;
    background: #fff;
    transition: all .3s ease;
}

.site-branding .grid {
    transition: all .3s ease;
}

.site-branding .logo img {
    max-height: 95px; /* Your normal size */
    width: auto;
    transition: all .3s ease;
}

.site-branding.sticky {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    box-shadow: 0 3px 15px rgba(0,0,0,.12);
    animation: slideDown .3s ease;
    margin-top: 0;
}

.site-branding.sticky .logo img {
    max-height: 65px; /* Shrunk size */
}

.site-branding.sticky .grid {
    min-height: 80px;
    align-items: center;
}

/* Prevent page jump */
body {
    padding-top: 0;
}

body.sticky-header {
    padding-top: 130px; /* Adjust to the normal height of your branding */
}

@keyframes slideDown {
    from {
        transform: translateY(-100%);
    }
    to {
        transform: translateY(0);
    }
}

body.admin-bar .site-branding.sticky {
    margin-top: 32px;
}

@media (max-width: 782px) {
    body.admin-bar .site-branding.sticky {
        margin-top: 46px;
    }
}

#backToTop {
    position: fixed;
    bottom: 30px;
    right: 30px;
    width: 55px;
    height: 55px;
    border: none;
    border-radius: 50%;
    background: var(--color-brand-orange);
    color: #fff;
    font-size: 26px;
    line-height: 55px;
    text-align: center;
    cursor: pointer;
    z-index: 9999;
    opacity: 0;
    visibility: hidden;
    transform: translateY(15px);
    transition: all .3s ease;
    box-shadow: 0 5px 15px rgba(0,0,0,.2);
    padding: 0;
}

.section-blue #backToTop {
    background: var(--color-brand-blue);
}

.section-grey #backToTop {
    background: var(--color-grey-300);
}

#backToTop:hover {
    transform: translateY(0) scale(1.08)!important;
    opacity: 0.8!important;
}

#backToTop.show {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

@media (max-width: 768px) {
    #backToTop {
        right: 20px;
        bottom: 20px;
        width: 48px;
        height: 48px;
        line-height: 48px;
        font-size: 22px;
    }
}






tbody td, tbody p {
    color: var(--color-brand-blue-dark)!important;
}

.industries-intro-content h3, .industries-intro-content h2 {
    color: #fff;
}

.downloadsliteraturewrap {
    background: #e0e0e0;
    text-align: center;
    padding: 40px 0px;
}

html {
	scroll-behavior: smooth;
}

.events-table-wrap table.events-table a.event-title {
    color: #000000;
    font-size: 1.3em;
}

.more-info-btn {
	display: inline-block;
	padding: 10px 18px;
	border-radius: 999px;
	background: #000;
	color: #fff;
	font-size: 14px;
	font-weight: 500;
	text-decoration: none;
	transition: all 0.25s ease;
}

.more-info-btn:hover {
	background: #333;
	transform: translateY(-1px);
}

.events-table-wrap {
	width: 100%;
	overflow-x: auto;
	margin: 40px 0;
	border-radius: 22px;
	background: #fff;
	box-shadow: 0 20px 60px rgba(0,0,0,0.08);
}

.events-table {
	width: 100%;
	border-collapse: collapse;
	font-size: 16px;
	color: #1d1d1f;
	background: #fff;
}

.events-table th {
	text-align: left;
	padding: 20px 24px;
	font-weight: 600;
	color: #ffffff;
	background: rgba(0, 0, 0, 0.92);
	backdrop-filter: blur(12px);
	-webkit-backdrop-filter: blur(12px);
	border-bottom: 1px solid rgba(255,255,255,0.08);
	white-space: nowrap;
}

.events-table td {
	padding: 22px 24px;
	border-bottom: 1px solid #f0f0f2;
	vertical-align: middle;
}

.events-table tr {
	transition: background 0.25s ease, transform 0.25s ease;
}

.events-table tbody tr:hover {
	background: #fafafa;
}

.events-table tbody tr:last-child td {
	border-bottom: none;
}

.event-title {
	font-weight: 600;
	color: #0071e3;
	text-decoration: none;
}

.event-title:hover {
	text-decoration: underline;
}

@media (max-width: 700px) {
	.events-table {
		font-size: 14px;
	}

	.events-table th,
	.events-table td {
		padding: 16px;
	}
}

.blogitem h3 {
    font-size: clamp(24px, 3vw, 38px);
    line-height: 1.08;
    letter-spacing: 1px;
    font-weight: 400;
    color: #111;
    margin: 0;
    padding: 28px 28px 10px;
    text-transform: none;
}

.grid.grid-pad.blogreel {
    max-width: 1440px;
    margin: 0 auto;
    padding: 60px 0;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 32px;
}

.blogitem {
  background: #fff;
  border-radius: 28px;
  overflow: hidden;
  box-shadow: 0 12px 35px rgba(0, 0, 0, 0.08);
  transition: transform 0.35s ease, box-shadow 0.35s ease;
}

.blogitem:hover {
  transform: translateY(-6px);
  box-shadow: 0 20px 55px rgba(0, 0, 0, 0.14);
}

.blogitem .col-1-2 {
  width: 100%;
  padding: 0;
}

.blogitem a {
    text-decoration: none;
    color: inherit;
    display: flex;
    flex-grow: 1;
}

.blogitem h3:hover {
  color: #0071e3;
}

.blogitem .bordered {
  font-size: 14px;
  line-height: 1.5;
  color: #6e6e73;
  margin: 0;
  padding: 0 28px 24px;
  border: none;
}

.blogitem img, .blogitem .wp-post-image {
    display: block;
    width: 100%;
    height: 280px;
    object-fit: cover;
    transition: transform 0.45s ease;
    align-self: end;
}

.blogitem:hover img,
.blogitem:hover .wp-post-image {
  transform: scale(1.035);
}

/* Tag styling */
.blogitem .bordered a {
  display: inline-block;
  margin-left: 4px;
  color: #0071e3;
  font-weight: 500;
}

.blogitem .bordered a:hover {
  text-decoration: underline;
}

/* Mobile */
@media (max-width: 800px) {
  .grid.grid-pad {
    grid-template-columns: 1fr;
    padding: 40px 18px;
    gap: 24px;
  }

  .blogitem h3 {
    padding: 24px 22px 8px;
  }

  .blogitem .bordered {
    padding: 0 22px 22px;
  }

  .blogitem img,
  .blogitem .wp-post-image {
    height: 260px;
  }
}

.single-post .innertitle_inner h2 {
    color: #fff;
    font-weight: 200;
}

.single-post .innerbanz {
    min-height: 200px;
    height: auto!important;
}

.custom-video-lightbox {
  display: none;
  position: fixed;
  z-index: 999999;
  inset: 0;
  background: rgba(0,0,0,0.85);
  align-items: center;
  justify-content: center;
  padding: 20px;
}

.custom-video-lightbox.active {
  display: flex;
}

.custom-video-lightbox-inner {
  position: relative;
  width: 100%;
  max-width: 900px;
  aspect-ratio: 16 / 9;
}

.custom-video-lightbox iframe {
  width: 100%;
  height: 100%;
  border: 0;
}

.custom-video-lightbox-close {
  position: absolute;
  top: -45px;
  right: 0;
  color: #fff;
  font-size: 36px;
  cursor: pointer;
  line-height: 1;
}

/* Only apply on page ID 1002 */
.page-parent .entry-content ul {
    list-style: none;
    padding: 0;
    margin: 0 auto;
    margin-bottom: 70px;
}

.page-parent .entry-content ul li {
	margin-bottom: 16px;
}

/* Apple-style button links */
.page-parent .entry-content ul li a {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 18px 24px;
	background: #ffffff;
	border: 1px solid #e5e5e7;
	border-radius: 18px;
	text-decoration: none;
	font-size: 18px;
	font-weight: 600;
	color: #1d1d1f;
	box-shadow: 0 4px 14px rgba(0,0,0,0.06);
	transition: all 0.3s ease;
	position: relative;
	overflow: hidden;
}

/* Hover effect */
.page-parent .entry-content ul li a:hover {
	transform: translateY(-3px);
	box-shadow: 0 10px 24px rgba(0,0,0,0.12);
	border-color: #ff7a00;
	background: #fafafa;
}

/* Orange arrow */
.page-parent .entry-content ul li a::after {
	content: "➜";
	font-size: 22px;
	color: #ff7a00;
	font-weight: bold;
	transition: transform 0.3s ease;
}

/* Arrow animation */
.page-parent .entry-content ul li a:hover::after {
	transform: translateX(6px);
}

.subcatstw {
    margin: 2rem 0;
}

.subcatstw hr {
    border: none;
    border-top: 1px solid #e5e5e7;
    margin-bottom: 1.5rem;
}

.product-subcategories {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    padding: 0;
    margin: 0;
    list-style: none;
}

.product-subcategories li {
    margin: 0;
}

.subcatstw {
    margin: -40px 0px 30px 0px;
}

.product-subcategories a {
    display: inline-block;
    padding: 10px 18px;
    font-size: 14px;
    font-weight: 500;
    color: #1d1d1f;
    text-decoration: none;
    background: #f5f5f7;
    border-radius: 999px;
    border: 1px solid transparent;
    transition: all 0.25s ease;
}

/* Hover effect */
.product-subcategories a:hover {
    background: #ffffff;
    border-color: #d2d2d7;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
    transform: translateY(-1px);
}

/* Active / current category feel */
.product-subcategories a:active {
    transform: translateY(0);
    box-shadow: none;
}

/* Optional: focus state for accessibility */
.product-subcategories a:focus {
    outline: none;
    border-color: #0071e3;
    box-shadow: 0 0 0 3px rgba(0, 113, 227, 0.2);
}

/* =============================================
   WooCommerce — Stacked Product Gallery
   ============================================= */

/* Remove the default slider nav arrows & pager dots */
.woocommerce-product-gallery .flex-direction-nav,
.woocommerce-product-gallery .flex-control-nav {
    display: none !important;
}

/* Make the Flexslider wrapper show all slides, not just one */
.woocommerce-product-gallery .flexslider .slides {
    display: flex !important;
    flex-direction: column;
    gap: 12px;
}

/* Make each slide fully visible (not hidden by the slider) */
.woocommerce-product-gallery .flexslider .slides li {
    display: block !important;
    width: 100% !important;
    float: none !important;
    margin-right: 0 !important;
    opacity: 1 !important;
}

/* Make images fill the column and maintain aspect ratio */
.woocommerce-product-gallery .flexslider .slides li img {
    width: 100%;
    height: auto;
    display: block;
    cursor: zoom-in;
}

/* Remove the thumbnail strip — redundant when stacked */
.woocommerce-product-gallery__trigger + .flex-viewport ~ ol.flex-control-nav {
    display: none;
}

.flex-control-thumbs {
    display: none !important;
}

/* Keep the zoom/lightbox trigger icon visible */
.woocommerce-product-gallery__trigger {
    position: absolute;
    top: 12px;
    right: 12px;
    z-index: 10;
}

/* Ensure the gallery column has relative positioning for the trigger */
.woocommerce-product-gallery {
    position: relative;
}

.searchwp-live-search-result--img img {
    max-width: 45px !important;
}

.shop-search-box-tw .swp-input--search {
    width: 100%;
    height: 100%;
    min-width: 350px!important;
}

span.tagged_as {
    float: left;
    width: 100%;
}

span.posted_in {
    background: #fff;
    padding: 10px;
    float: left;
    border: 1px solid #eee;
    margin: 10px 0px 10px 0px;
}

.product_meta span.sku_wrapper {
    float: left;
    background: #fafafa;
    width: 100%;
    padding: 10px;
    border: 1px solid #d7d7d7;
}

.tw-variation-message {
    float: left;
    width: 100%;
    text-align: center;
    margin: 20px 0px 10px 0px;
    padding: 10px;
}

hr.prodhr {
    float: left!important;
    margin: 30px 0px 0px 0p!important;
}

.woocommerce div.product form.cart .button {
    background: #005483!important;
}

.tw-variation-table-wrap {
    margin: 20px 0;
    padding: 18px;
    border: 1px solid #e5e5e5;
    border-radius: 12px;
    background: #fafafa;
    float: left;
    width: 100%;
}

.tw-variation-fullwidth {
	width: 100%;
	margin: 40px 0;
	padding: 40px 0;
	background: #f8f8f8;
}

.tw-variation-inner {
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 20px;
}

.tw-variation-table {
	width: 100%;
	border-collapse: collapse;
	margin-bottom: 20px;
}

.tw-variation-table th,
.tw-variation-table td {
	padding: 14px;
	border-bottom: 1px solid #ddd;
}

.tw-variation-qty {
	width: 80px;
}

/* Section fades in as it enters viewport */
.scroll-fade-section {
opacity: 0;
transition: opacity 0.8s ease;
will-change: opacity;
}

.scroll-fade-section.is-visible {
opacity: 1;
}

/* Text inside fades in/out more gently */
.scroll-fade-text {
opacity: 0;
transform: translateY(80px); /* 👈 much bigger movement */
transition:
opacity 1s ease-out,
transform 1s cubic-bezier(0.16, 1, 0.3, 1); /* 👈 smoother + punchier */
will-change: opacity, transform;
}

.scroll-fade-text.is-visible {
opacity: 1;
transform: translateY(0);
}

.innerbanz {
    background: linear-gradient(to right, rgba(0, 0, 0, 0.6) 0%, rgba(0, 0, 0, 0) 50%), url(https://www.niko.co.uk/wp-content/uploads/2026/04/category-ph.jpg) no-repeat center center;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    margin-top: 0px;
    padding: 20px 0px 20px 0px;
    min-height: 200px;
    display: flex;
    align-items: center;
}

.page-template-system-landing .main-content table img {
    max-width: 150px;
    width: 100%;
    height: inherit;
}

:root {
  /* Brand Colours */
  --color-brand-orange: #E97017;
  --color-brand-blue: #1F4778;
  --color-brand-blue-light: #005383;
  --color-brand-blue-dark: #0A1E3C;

  /* Neutral Colours */
  --color-grey-50: #F9F9F9;
  --color-grey-100: #F7F9FC;
  --color-grey-200: #E0E0E0;
  --color-grey-300: #565E5D;
}

.clear {
    clear: both;
}

.entry-content > * {
    max-width: 1440px!important;
/*     margin: auto!important; */
}

main#primary, .main-content {
    float: left;
    width: 100%;
}

.topbar {
    background: var(--color-grey-50);
    padding: 5px 0;
}

ul#menu-top-bar {
    list-style: none;
    padding: 0;
    margin: 0;
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: 1fr;
    width: fit-content;
}

.menu-top-bar-container {
    display: flex;
    justify-content: end;
}

ul#menu-top-bar li {
    text-align: center;
    padding: 0 10px;
    border-right: 1px solid #CFCFCF;
}

ul#menu-top-bar li a {
    color: #828282;
    text-decoration: none;
}

.topbar .grid {
    display: flex;
    align-items: center;
    justify-content: end;
    gap: 20px;
}

.search-trigger{
	background:none;
	border:none;
	font-size:18px;
	cursor:pointer;
	padding: 0;
    display: flex;
}

button.search-trigger img {
    max-width: 25px;
}

.search-popup{
	position:fixed;
	inset:0;
	background:rgba(0,0,0,0.6);
	display:flex;
	align-items:center;
	justify-content:center;
	opacity:0;
	visibility:hidden;
	transition:.3s;
	z-index:9999;
}

.search-popup.active{
	opacity:1;
	visibility:visible;
}

.search-popup-inner {
    background: #fff;
    padding: 40px;
    position: absolute;
    top: 75px;
    right: 75px;
    border: 1px solid var(--color-brand-orange);
}

input.search-field {
    border: 2px solid var(--color-brand-orange);
}

input.search-submit {
    background: var(--color-brand-orange)!important;
    color: #fff !important;
    text-decoration: none!important;
    padding: 10px 40px!important;
    font-size: 0.8em!important;
    border-radius: 20px!important;
    display: block!important;
    width: fit-content!important;
    line-height: 1!important;
    align-content: center!important;
}

.search-results span.cat-links {
    display: none;
}

.search-results footer.entry-footer {
    border-bottom: 1px solid var(--color-brand-blue-dark);
}

form.search-form {
    display: flex;
    gap: 10px;
}

.search-close {
    position: absolute;
    top: 10px;
    right: 10px;
    background: none;
    border: none;
    font-size: 24px;
    cursor: pointer;
    padding: 0;
}

.search-results h2.entry-title {
    font-size: 2em;
    margin: 0;
}

.search-results h2.entry-title a {
    color: var(--color-brand-blue)!important;
    text-decoration: none;
}

.nav-previous a {
	color: var(--color-brand-blue)!important;
	text-decoration: none;
}

.search-results h1.page-title {
    color: var(--color-brand-orange);
}

.site-branding .grid {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.quick-links {
	background: linear-gradient(
		to bottom,
		#ffffff 0%,
		#ffffff 25%,
		var(--color-brand-blue-dark) 25%,
		var(--color-brand-blue-dark) 75%,
		#ffffff 75%,
		#ffffff 100%
	);
	padding: 80px 0;
}

.quick-links .grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
    overflow: visible;
}

.quick-link-box {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    text-align: center;
    padding: 5px 5px 20px;
    text-decoration: none;
    transition: transform 0.3s ease;
}

.quick-link-box:hover {
    transform: scale(1.05);
    box-shadow: 0px 5px 10px #00000040;
}

.quick-link-box h3 {
    color: #ffffff;
    line-height: 1;
}

.quick-link-image {
    width: 100%;
}

.quick-link-image img {
    display: block;
    max-width: 100%;
    height: auto;
    margin: 0 auto;
    max-height: 500px;
    width: 100%;
    object-fit: cover;
}

.quick-link-box.box-one {
	background: var(--color-grey-300);
}

.quick-link-box.box-two {
	background: var(--color-brand-orange);
}

.quick-link-box.box-three {
	background: var(--color-brand-blue);
}

img.quick_link_line {
    width: 25%;
    margin-top: 20px;
    margin-bottom: 20px;
}

.trusted {
	padding: 60px 0;
}

.trusted .grid {
	position: relative;
}

.trusted h3 {
	margin-bottom: 30px;
	text-align: center;
}

.trusted-slider-wrap {
	position: relative;
	padding: 0 60px;
}

.trusted-slider {
	overflow: hidden;
}

.trusted-slide {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 140px;
}

.trusted-slide img {
	max-width: 100%;
	max-height: 200px;
	width: auto;
	height: auto;
	display: block;
	margin: 0 auto;
	object-fit: contain;
}

.trusted-arrow {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	z-index: 10;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
}

.trusted-arrow img {
	display: block;
	width: 32px;
	height: auto;
}

.trusted-arrow-prev {
	left: 0;
}

.trusted-arrow-next {
	right: 0;
}

@media (max-width: 1024px) {
	.trusted-slider-wrap {
		padding: 0 45px;
	}
}

@media (max-width: 767px) {
	.trusted-slide {
		height: 100px;
	}

	.trusted-slide img {
		max-height: 60px;
	}

	.trusted-slider-wrap {
		padding: 0 35px;
	}

	.trusted-arrow img {
		width: 24px;
	}
}

.industries {
    padding: 60px 0;
    background: var(--color-grey-50);
    text-align: center;
}

.industries-slider-wrap {
	width: 100%;
}

.industries-grid-inner {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 30px;
}

.industries-slider {
	overflow: hidden;
	width: 100%;
	padding-bottom: 20px;
}

.industries-item {
	display: block;
	text-decoration: none;
}

.industries-item-image {
	position: relative;
	aspect-ratio: 1 / 1;
	overflow: hidden;
}

.industries-item-image::after {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	height: 100%;
	background: linear-gradient(
		to top,
		rgba(0, 0, 0, 0.85) 0%,
		rgba(0, 0, 0, 0.6) 25%,
		rgba(0, 0, 0, 0.2) 45%,
		rgba(0, 0, 0, 0) 60%
	);
	pointer-events: none;
	z-index: 1;
}

.industries-item-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.industries-item-title {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	padding: 20px;
	background: linear-gradient(to top, rgba(0,0,0,0.7), rgba(0,0,0,0));
}

.industries-item-title h3 {
    margin: 0;
    color: #fff;
    z-index: 9;
    position: relative;
    text-align: center;
}

.industries-item:hover .industries-item-image img {
	transform: scale(1.05);
}

.industries-item-image img {
	transition: transform 0.3s ease;
}

.industries-pagination {
	margin-top: 25px;
	text-align: center;
}

.industries-pagination .swiper-pagination-bullet {
    width: 15px;
    height: 15px;
    background: #fff;
    opacity: 1;
    border: 1px solid #151515;
}

.industries-pagination .swiper-pagination-bullet-active {
	opacity: 1;
}

@media (max-width: 991px) {
	.industries-grid-inner {
		grid-template-columns: repeat(2, 1fr);
		gap: 20px;
	}

	.industries-item-title h3 {
		font-size: 20px;
	}
}

@media (max-width: 767px) {
	.industries-grid-inner {
		grid-template-columns: 1fr;
	}

	.industries-item-title {
		padding: 16px;
	}

	.industries-item-title h3 {
		font-size: 18px;
	}
}

span.swiper-pagination-bullet.swiper-pagination-bullet-active {
    background: #151515;
}

.applications_home {
    background: var(--color-brand-blue-light);
    padding: 60px 0;
    text-align: center;
}

.applications_home .grid {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.applications_home h2 {
    color: #fff;
}

.applications_home h3 {
    color: #9D9D9D;
}

.applications-post h4 {
    margin-top: 15px;
    color: #fff;
    font-size: 1.7em;
}

.applications-posts{
	display:grid;
	grid-template-columns:repeat(2,1fr);
	gap:30px;
	margin:40px 0 0;
}

.applications-post{
	text-decoration:none;
	color:inherit;
	display:block;
}

.applications-image{
	position:relative;
}

.applications-image img {
    width: 100%;
    display: block;
    object-fit: cover;
    height: 300px;
}

.applications-category {
    background: #fff;
    padding: 10px 16px;
    align-items: center;
    gap: 10px;
    display: grid;
    grid-template-columns: 1fr 2fr;
}

.applications-category h3 {
    margin: 0;
}

.applications-category img {
    width: 100%;
}

.applications-category span{
	font-weight:600;
	font-size:14px;
}

.btn {
    transition: transform 0.3s ease;
    display: flex!important;
    align-items: center;
    justify-content: space-between;
    min-width: 300px;
}

.btn:hover {
    box-shadow: 0px 5px 10px #00000040;
    transform: translateY(-4px);
}

a.orange_btn {
    background: var(--color-brand-orange);
    color: #fff!important;
    text-decoration: none;
    padding: 10px 40px;
    font-size: 1.2em;
    border-radius: 20px;
    display: block;
    width: fit-content;
    line-height: 1;
    align-content: center;
}

a.blk_btn {
    background: #040503;
    color: #fff !important;
    text-decoration: none;
    padding: 10px 40px;
    font-size: 1.2em;
    border-radius: 20px;
    display: block;
    width: fit-content;
	line-height: 1;
    align-content: center;
}

.section-blue a.orange_btn {
    background: var(--color-brand-blue);
}

.section-grey a.orange_btn {
    background: var(--color-grey-300);
    border: 2px solid var(--color-brand-orange);
}

.section-blue .system-tab-button.active, .section-blue .download_item a {
    background: var(--color-brand-blue);
}

.section-grey .system-tab-button.active, .section-grey .download_item a {
    background: var(--color-grey-300);
}

.testimonials {
	padding: 60px 0;
}

.testimonials h2 {
	margin-bottom: 30px;
}

.testimonials-slider-wrap {
	position: relative;
	padding: 0 60px;
}

.testimonials-slider {
	overflow: hidden;
}

.testimonial-slide {
	height: auto;
}

.testimonial-box {
	display: grid;
	grid-template-columns: 1fr 3fr;
	gap: 30px;
	background: #fff;
	padding: 30px;
	border-radius: 20px;
}

.testimonial-image img {
    width: 100%;
    height: auto;
    display: block;
    object-fit: cover;
    aspect-ratio: 1 / 1;
    max-width: 300px;
}

.testimonial-content {
	text-align: left;
}

.testimonial-review {
    font-size: 1.2rem;
}

.testimonial-name {
	margin: 20px 0 0;
	font-size: 1rem;
	font-weight: 700;
	color: var(--color-brand-blue);
}

.testimonials-arrow {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	z-index: 5;
	background: none;
	border: none;
	padding: 0;
	cursor: pointer;
}

.testimonials-arrow img {
	display: block;
	width: 28px;
	height: auto;
}

.testimonials-arrow-prev {
	left: 0;
}

.testimonials-arrow-next {
	right: 0;
}

@media (max-width: 767px) {
	.testimonials-slider-wrap {
		padding: 0 40px;
	}

	.testimonial-box {
		grid-template-columns: 1fr;
		gap: 20px;
		padding: 20px;
	}

	.testimonial-image img {
		max-width: 220px;
		margin: 0 auto;
	}

	.testimonial-content {
		text-align: center;
	}

	.testimonials-arrow img {
		width: 24px;
	}
}

.solution_button_wrap,
.top_banner_button_wrap {
    display: flex;
    gap: 20px;
    width: 100%;
    margin-top: 20px;
}

.solution_button_wrap a {
    width: 100%;
    text-align: center;
}

.solution_contact {
    background-color: var(--color-grey-200);
    background-image: url("https://www.niko.co.uk/wp-content/uploads/2026/03/footer-left.png"),
        url("https://www.niko.co.uk/wp-content/uploads/2026/03/footer-right.png");
    background-position: left bottom,
        right bottom;
    background-repeat: no-repeat,
        no-repeat;
    padding: 100px 0;
    background-size: 15%;
}

.section-orange .solution_contact {
    background-image: url("https://www.niko.co.uk/wp-content/uploads/2026/06/crane-contact-left.png"),        url("https://www.niko.co.uk/wp-content/uploads/2026/06/crane-contact-right.png");
}

.section-grey .solution_contact {
    background-image: url("https://www.niko.co.uk/wp-content/uploads/2026/06/converyor-contact-left.png"),        url("https://www.niko.co.uk/wp-content/uploads/2026/06/converyor-contact-right.png");
}

.section-blue .solution_contact {
    background-image: url("https://www.niko.co.uk/wp-content/uploads/2026/06/sliding-contact-left.png"),        url("https://www.niko.co.uk/wp-content/uploads/2026/06/sliding-contact-right.png");
}

.solution_contact .grid {
    max-width: 60%;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.solution_contact h2 {
    margin: 0;
}

.btn img {
    max-height: 0.8em;
}

.system-top-banner {
    padding: 100px 0;
	position: relative;
    background: #fff;
}

.system-top-banner::after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    width: 15%;
    height: 100%;
    background: #040503;
}

.system-top-banner .grid {
    display: grid;
    grid-template-columns: 2fr 1fr;
    gap: 40px;
}

.top_banner_button_wrap a {
    width: 100%;
    padding: 10px 20px;
}

.system_top_right {
    position: relative;
    width: 100%;
    display: flex;
    justify-content: flex-end;
    align-items: flex-start;
}

.system_rear_image {
    position: relative;
    width: 60%;
    z-index: 1;
}

.system_rear_image img {
    display: block;
    width: 100%;
    height: auto;
}

.system_front_image {
    position: absolute;
    width: 50%;
    z-index: 2;
    bottom: -10%;
    left: 10%;
}

.system_front_image img {
    display: block;
    width: 100%;
    height: auto;
}

.system_front_image {
    position: absolute;
    width: 50%;
    z-index: 2;
    bottom: -10%;
    left: 10%;
}

.system_front_image img {
    display: block;
    width: 100%;
    height: auto;
}

.system_video_trigger {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    display: flex;
    align-items: center;
    justify-content: center;
    width: 90px;
    height: 90px;
    z-index: 3;
}

.system_video_trigger img {
    width: 100%;
    height: auto;
    display: block;
}

.system_video_popup {
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.8);
    z-index: 9999;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 30px;
}

.system_video_popup.active {
    display: flex;
}

.system_video_popup_inner {
    position: relative;
    width: 100%;
    max-width: 900px;
    background: #000;
}

.system_video_close {
    position: absolute;
    top: -45px;
    right: 0;
    background: none;
    border: none;
    color: #fff;
    font-size: 40px;
    line-height: 1;
    cursor: pointer;
    padding: 0;
}

.system_video_embed {
    position: relative;
    padding-bottom: 56.25%;
    height: 0;
    overflow: hidden;
}

.system_video_embed iframe,
.system_video_embed video,
.system_video_embed embed,
.system_video_embed object {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.system_gallery_slider_wrap,
.application_gallery_slider_wrap {
    position: relative;
    width: 100%;
}

.system_gallery_slider .swiper-slide img,
.application_gallery_slider .swiper-slide img {
    display: block;
    width: 100%;
    height: auto;
}

.system_gallery_prev,
.system_gallery_next,
.application_gallery_prev,
.application_gallery_next {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 10;
    cursor: pointer;
    width: 44px;
    height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.system_gallery_prev,
.application_gallery_prev {
    left: 10px;
}

.system_gallery_next,
.application_gallery_next {
    right: 10px;
}

.system_gallery_prev img,
.system_gallery_next img,
.application_gallery_prev img,
.application_gallery_next img {
    display: block;
    width: 100%;
    height: auto;
	filter: brightness(0) invert(1);
}

.system_gallery_slider,
.application_gallery_slider {
    overflow: hidden;
}

.system-top-content {
    padding: 50px 0;
    text-align: center;
}

.system-features {
    position: relative;
    padding: 50px 0 70px;
    background: var(--color-grey-50);
}

.system-features h2 {
    text-align: center;
}

.system_features_wrap {
    position: relative;
    margin-top: 40px;
}

.system_features_slider {
    overflow: hidden;
    padding: 0 20px 20px!important;
}

.system_features_slider .swiper-wrapper {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(0, 1fr));
    gap: 30px;
}

.system_feature_box {
    background: var(--color-grey-100);
    padding: 30px;
    box-sizing: border-box;
    height: 100%;
    box-shadow: 0px 5px 10px #00000040;
    border-radius: 10px;
}

.system_features_slider .swiper-wrapper:has(> :only-child) > * {
    max-width: 48%;
}

.swiper-slide.is-benefits {
    background: var(--color-brand-orange);
}

.section-grey .swiper-slide.is-benefits {
    background: var(--color-grey-300);
}

.section-blue .swiper-slide.is-benefits {
    background: var(--color-brand-blue);
}

.swiper-slide.is-benefits * {
    color: #fff;
}

.swiper-slide.is-benefits * img {
    filter: brightness(0) invert(1);
}

.system_feature_heading {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 20px;
    margin-bottom: 20px;
}

.system_feature_heading h3 {
    margin: 0;
    flex: 1;
    font-size: 1.6em;
    font-weight: 600;
    letter-spacing: 1.2px;
    text-transform: capitalize;
}

.system_feature_icon {
    flex-shrink: 0;
    width: 60px;
}

.system_feature_icon img {
    display: block;
    width: 100%;
    height: auto;
}

.system_feature_content {
    width: 100%;
    color: var(--color-brand-blue-dark)!important;
}

.system_feature_content ul {
    margin: 0;
}

.system_feature_content ul li {
    margin-bottom: 10px;
}

.system_feature_content ul li:last-of-type {
    margin: 0;
}

.system_feature_content p:last-child {
    margin-bottom: 0;
}

/* Hide arrows on desktop */
.system_features_prev,
.system_features_next {
    display: none;
}

/* Mobile slider */
@media (max-width: 767px) {
    .system_features_slider .swiper-wrapper {
        display: flex;
        gap: 0;
    }

    .system_feature_box {
        padding: 25px;
    }

    .system_features_prev,
    .system_features_next {
        display: flex;
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        z-index: 10;
        width: 42px;
        height: 42px;
        cursor: pointer;
        align-items: center;
        justify-content: center;
    }

    .system_features_prev {
        left: 10px;
    }

    .system_features_next {
        right: 10px;
    }

    .system_features_prev img,
    .system_features_next img {
        display: block;
        width: 100%;
        height: auto;
    }
}

.main-content {
    background: linear-gradient(
        to top,
        #ffffff 90%,
        #ffffff 100%
    );
}

/* Page 115 + children */
.page-id-115 .main-content,
.page-child.parent-pageid-115 .main-content {
    background: linear-gradient(
        to top,
        var(--color-brand-orange) 0%,
        var(--color-brand-orange) 20%,
        #ffffff 20%,
        #ffffff 100%
    );
}

/* Page 117 + children */
.page-id-117 .main-content,
.page-child.parent-pageid-117 .main-content {
    background: linear-gradient(
        to top,
        var(--color-grey-300) 0%,
        var(--color-grey-300) 20%,
        #ffffff 20%,
        #ffffff 100%
    );
}

.page-id-115.page-template-system-landing .wp-block-stackable-carousel, .page-id-115.page-template-system-landing .wp-block-stackable-carousel h4 {
    color: #fff;
}

.system_finishes_grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 30px;
    margin-top: 30px;
}

.system_finish_item {
    text-align: center;
}

.system_finish_item img {
    display: block;
    margin: 0 auto 15px;
    max-width: 100%;
    height: auto;
}

.system_finish_item h4 {
    margin: 0;
}

.system_finishes_note {
    margin-top: 20px;
    font-size: 14px;
}

/* Mobile */
@media (max-width: 767px) {
    .system_finishes_grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;
    }
}

.system-knownas {
    text-align: center;
    padding: 50px 0;
}

.system-finishes {
    float: left;
    width: 100%;
    text-align: center;
    padding: 50px 0;
    background: var(--color-grey-50);
}

.system_knownas_wrap {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    margin-top: 30px;
}

.system_knownas_box {
    border: 1px solid #CBCBCB;
    padding: 5px 30px;
    box-sizing: border-box;
    background: #fff;
    border-radius: 50px;
}

.system_knownas_box p {
    margin: 0;
    color: var(--color-brand-blue-light);
}

/* Tablet */
@media (max-width: 991px) {
    .system_knownas_box {
        width: calc(50% - 10px);
    }
}

/* Mobile */
@media (max-width: 767px) {
    .system_knownas_box {
        width: 100%;
    }
}

.system_faqs_wrap {
    margin-top: 30px;
}

.system_faq_question {
    width: 100%;
    border: 0;
    padding: 20px 25px;
    text-align: left;
    cursor: pointer;
    position: relative;
    font: inherit;
    color: #000;
    background: var(--color-grey-100);
    transition: background 0.3s ease, color 0.3s ease;
    display: flex;
    align-items: center;
    gap: 15px;
    border-radius: 0;
}

.system_faq_item.faq-even .system_faq_question {
    background: var(--color-grey-200);
}

.system_faq_question_text {
    display: block;
    font-weight: 600;
    flex: 1;
}

.system_faq_icon {
    width: 24px;
    height: 24px;
    flex-shrink: 0;
    background: url('https://www.niko.co.uk/wp-content/uploads/2026/03/FAQ-open.png') no-repeat center center;
    background-size: contain;
}

.system_faq_answer {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.35s ease, padding 0.35s ease;
    padding: 0 25px;
}

.system_faq_answer_inner {
    padding: 0;
}

.system_faq_answer_inner > *:first-child {
    margin-top: 0;
}

.system_faq_answer_inner > *:last-child {
    margin-bottom: 0;
}

.system_faq_item.active .system_faq_question {
    background: #050503;
    color: #fff;
}

.system_faq_item.active .system_faq_icon {
    background-image: url('https://www.niko.co.uk/wp-content/uploads/2026/03/FAQ-close.png');
}

.system_faq_item.active .system_faq_answer {
    padding: 25px;
    border: 1px solid;
    margin-bottom: 20px;
    max-height: fit-content!important;
}

.system-faqs {
    padding: 50px 0;
}

.system-faqs h2 {
    text-align: center;
}

.system-contact {
    padding: 100px 0;
}

.system-contact .grid {
    background: var(--color-grey-200);
    padding: 50px 100px;
    width: 60%;
    box-shadow: 0px 5px 10px #00000040;
}

.system-contact h2, .system-contact h4 {
    text-align: center;
}

button#gform_submit_button_1 {
    background: var(--color-brand-orange);
    color: #fff !important;
    text-decoration: none;
    padding: 10px 40px;
    font-size: 1em;
    border-radius: 20px;
    width: fit-content;
    line-height: 1;
    align-content: center;
    transition: transform 0.3s ease;
    display: flex !important;
    align-items: center;
/*     justify-content: space-between; */
    min-width: 300px;
}

button#gform_submit_button_1:hover {
    box-shadow: 0px 5px 10px #00000040;
    transform: translateY(-4px);
}

.page-template-contact .solution_contact {
    display: none;
}

a.white_btn.btn {
    background: #fff;
    color: var(--color-brand-blue-dark)!important;
    text-decoration: none;
    padding: 10px 40px;
    font-size: 1.2em;
    border-radius: 20px;
    display: block;
    width: fit-content;
    line-height: 1;
    align-content: center;
    border: 2px solid var(--color-brand-blue-dark);
}

.industries-intro,
.single .innerbanz {
	position: relative;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	height: 500px;
    display: flex;
    align-items: center;
    color: #fff;
}

/* Overlay */
.industries-intro::before,
.single .innerbanz::before {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(
		to right,
		rgba(0, 0, 0, 0.7) 0%,
		rgba(0, 0, 0, 0.4) 40%,
		rgba(0, 0, 0, 0) 100%
	);
	z-index: 1;
}

.industries-intro-content {
    position: relative;
    z-index: 2;
    width: 50%;
}

.industries-intro-content h1 {
    color: #fff;
    font-weight: 500;
    margin: 0;
}

.industries-intro-content p {
    font-size: 1.2em;
}

.industries-top-content {
    padding: 50px 0;
    text-align: center;
    background: var(--color-grey-50);
}

.industries-top-content .grid {
    max-width: 800px;
}

.industries-features {
    position: relative;
    padding: 50px 0 70px;
}

.industries-features h2 {
    text-align: center;
}

.btn_wrap {
    display: flex;
    justify-content: center;
    margin-top: 20px;
}

.trusted.industries-trusted {
	position: relative;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	overflow: hidden;
}

.trusted.industries-trusted .trusted-overlay {
	position: absolute;
	inset: 0;
	background: rgba(0, 0, 0, 0.55);
	z-index: 1;
}

.trusted.industries-trusted .grid {
	position: relative;
	z-index: 2;
}

.trusted.industries-trusted h3,
.trusted.industries-trusted .trusted-arrow,
.trusted.industries-trusted .trusted-slide {
/* 	position: relative; */
	z-index: 2;
}

.industries-trusted h3 {
    color: #fff;
}

.industries-trusted .trusted-arrow img {
    filter: brightness(0) invert(1);
}

.industries-associated-products {
	padding: 80px 0;
}

.industries-associated-products h2 {
	margin-bottom: 40px;
}

.industries-associated-products-top {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 30px;
	align-items: stretch;
	margin-bottom: 30px;
}

.industries-associated-products-image-wrap {
	position: relative;
	height: 100%;
}

.industries-associated-products-image {
	display: none;
	height: 100%;
}

.industries-associated-products-image.active {
	display: block;
}

.industries-associated-products-image img {
    width: 100%;
    height: 400px;
    object-fit: cover;
    display: block;
}

.industries-associated-products-headers {
	display: flex;
	flex-direction: column;
	gap: 0;
}

.industries-associated-products-header {
    width: 100%;
    border: 0;
    text-align: left;
    padding: 24px 30px;
    cursor: pointer;
    transition: 0.3s ease;
    display: flex;
    align-items: center;
    gap: 15px;
    border-radius: 0;
}

.industries-associated-products-header:nth-child(odd) {
	background: #F6F6F6;
}

.industries-associated-products-header:nth-child(even) {
	background: #EAEAEA;
}

.industries-associated-products-header.active {
	background: var(--color-brand-orange);
}

.industries-associated-products-header h3 {
	margin: 0;
	transition: 0.3s ease;
}

.industries-associated-products-header.active h3 {
	color: #fff;
}

.industries-associated-products-header-icon {
	flex-shrink: 0;
	display: flex;
	align-items: center;
	justify-content: center;
}

.industries-associated-products-header-icon img {
    display: block;
    transition: 0.3s ease;
    height: 3em;
}

.industries-associated-products-header.active .industries-associated-products-header-icon img {
	filter: brightness(0) invert(1);
}

.industries-associated-products-content-wrap {
	width: 100%;
}

.industries-associated-products-content {
	display: none;
}

.industries-associated-products-content.active {
	display: block;
}

@media (max-width: 767px) {
	.industries-associated-products-top {
		grid-template-columns: 1fr;
	}

	.industries-associated-products-image-wrap {
		min-height: 300px;
		order: 1;
	}

	.industries-associated-products-headers {
		order: 2;
	}

	.industries-associated-products-content-wrap {
		margin-top: 20px;
	}
}

.industries-associated-products h2 {
    text-align: center;
}

.system-contact.industries-contact {
	position: relative;
	overflow: hidden;
}

.system-contact.industries-contact::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 75%;
	background: var(--color-brand-blue-light);
	z-index: 1;
}

.system-contact.industries-contact .grid {
	position: relative;
	z-index: 2;
}

.innertitle_inner {
    width: 50%;
}

/* Default */
.single .innerbanz {
    border-bottom: 5px solid var(--color-brand-blue-light);
}

/* Page 115 + its children + posts in category 6 (orange) */
.page-id-115 .innerbanz,
.page-child.parent-pageid-115 .innerbanz,
.single.category-6 .innerbanz {
    border-bottom: 5px solid var(--color-brand-orange);
}

/* Page 117 + its children + posts in category 5 (grey) */
.page-id-117 .innerbanz,
.page-child.parent-pageid-117 .innerbanz,
.single.category-5 .innerbanz {
    border-bottom: 5px solid var(--color-grey-300);
}

/* Page 119 + its children + posts in category 7 (blue) */
.page-id-119 .innerbanz,
.page-child.parent-pageid-119 .innerbanz,
.single.category-7 .innerbanz {
    border-bottom: 5px solid var(--color-brand-blue);
}

.application-features {
    position: relative;
    padding: 50px 0 70px;
}

.application-features h2 {
    text-align: center;
}

.application_features_wrap {
    position: relative;
    margin-top: 40px;
}

.application_features_slider {
    overflow: hidden;
    padding: 0 20px 20px!important;
}

.application_features_slider .swiper-wrapper {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 30px;
}

.application_feature_box {
    background: #fff;
    padding: 30px;
    box-sizing: border-box;
    height: 100%;
    box-shadow: 0px 5px 10px #00000040;
    border-radius: 10px;
}

.application_feature_heading {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 20px;
    margin-bottom: 20px;
}

.application_feature_heading h3 {
    margin: 0;
    flex: 1;
    font-size: 1.6em;
    font-weight: 600;
    letter-spacing: 1.2px;
    text-transform: capitalize;
}

.application_feature_icon {
    flex-shrink: 0;
    width: 60px;
}

.application_feature_icon img {
    display: block;
    width: 100%;
    height: auto;
}

.application_feature_content {
    width: 100%;
    color: var(--color-brand-blue-dark)!important;
}

.application_feature_content ul {
    margin: 0;
}

.application_feature_content ul li {
    margin-bottom: 10px;
}

.application_feature_content ul li:last-of-type {
    margin: 0;
}

.application_feature_content p:last-child {
    margin-bottom: 0;
}

/* Hide arrows on desktop */
.application_features_prev,
.application_features_next {
    display: none;
}

/* Mobile slider */
@media (max-width: 767px) {
    .application_features_slider .swiper-wrapper {
        display: flex;
        gap: 0;
    }

    .application_feature_box {
        padding: 25px;
    }

    .application_features_prev,
    .application_features_next {
        display: flex;
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        z-index: 10;
        width: 42px;
        height: 42px;
        cursor: pointer;
        align-items: center;
        justify-content: center;
    }

    .application_features_prev {
        left: -20px;
    }

    .application_features_next {
        right: -20px;
    }

    .application_features_prev img,
    .application_features_next img {
        display: block;
        width: 20px;
        height: auto;
    }
}

.application_faqs_wrap {
    margin-top: 30px;
}

.application_faq_question {
    width: 100%;
    border: 0;
    padding: 20px 25px;
    text-align: left;
    cursor: pointer;
    position: relative;
    font: inherit;
    color: #000;
    background: var(--color-grey-100);
    transition: background 0.3s ease, color 0.3s ease;
    display: flex;
    align-items: center;
    gap: 15px;
    border-radius: 0;
}

.application_faq_item.faq-even .application_faq_question {
    background: var(--color-grey-200);
}

.application_faq_question_text {
    display: block;
    font-weight: 600;
    flex: 1;
}

.application_faq_icon {
    width: 24px;
    height: 24px;
    flex-shrink: 0;
    background: url('https://www.niko.co.uk/wp-content/uploads/2026/03/FAQ-open.png') no-repeat center center;
    background-size: contain;
}

.application_faq_answer {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.35s ease, padding 0.35s ease;
    padding: 0 25px;
}

.application_faq_answer_inner {
    padding: 0;
}

.application_faq_answer_inner > *:first-child {
    margin-top: 0;
}

.application_faq_answer_inner > *:last-child {
    margin-bottom: 0;
}

.application_faq_item.active .application_faq_question {
    background: var(--color-brand-orange);
    color: #fff;
}

.application_faq_item.active .application_faq_icon {
    background-image: url('https://www.niko.co.uk/wp-content/uploads/2026/03/FAQ-close.png');
}

.application_faq_item.active .application_faq_answer {
    padding: 25px;
    border: 1px solid;
    margin-bottom: 20px;
    max-height: 200px!important;
}

.application-faqs {
    padding: 50px 0;
}

.application-faqs h2 {
    text-align: center;
}

.application_approach_intro {
    width: 50%;
    text-align: center;
    margin: auto;
}

.system_videos_grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
}

.system_video_item h4 {
    margin-top: 15px;
    text-align: center;
}

.system_video_placeholder {
    position: relative;
    cursor: pointer;
}

.system_video_placeholder img {
    display: block;
    width: 100%;
}

.system_video_play {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.system_video_popup {
    display: none;
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.8);
    z-index: 9999;
    padding: 40px;
}

.system_video_popup.active {
    display: flex;
    align-items: center;
    justify-content: center;
}

.system_video_popup_inner {
    position: relative;
    background: #fff;
    max-width: 900px;
    width: 100%;
    padding: 20px;
}

.system_video_close {
    position: absolute;
    top: 10px;
    right: 15px;
    background: none;
    border: 0;
    font-size: 30px;
    cursor: pointer;
}

.system_video_embed iframe, .system_video_embed video {
    width: 100%;
    height: 100%;
}

.system_videos_grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
}

.system_video_item h4 {
    margin-top: 10px;
    text-align: center;
}

.system-videos {
    padding: 50px 0;
    text-align: center;
}

.downloads_list {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.download_item a {
    text-decoration: none;
}

.system-downloads {
    padding: 50px 0;
}

.agents_for_table {
    width: 100%;
    border-collapse: collapse;
}

.agents_for_table th,
.agents_for_table td {
    padding: 15px;
    border: 1px solid #ddd;
    text-align: left;
    vertical-align: middle;
}

.agents_for_table img {
    max-width: 120px;
    height: auto;
    display: block;
}

.system-tabs-nav {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 30px;
    border-bottom: 1px solid var(--color-grey-200);
}

.system-tab-button {
    padding: 12px 20px;
    border: none;
    background: #000;
    cursor: pointer;
    color: #fff;
    font-size: 1em;
}

.system-tab-button.active {
    background: var(--color-brand-orange);
    color: #fff;
    border: none;
    font-size: 1em;
}

.system-tab-panel {
    display: none;
}

.system-tab-panel.active {
    display: block;
}

.system_videos_grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
}

.system_video_item h4 {
    margin-top: 10px;
    text-align: center;
}

.downloads_list {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.agents_for_table {
    width: 100%;
    border-collapse: collapse;
}

.agents_for_table th,
.agents_for_table td {
    padding: 15px;
    border: 1px solid #ddd;
    text-align: left;
    vertical-align: middle;
}

.agents_for_table img {
    max-width: 120px;
    height: auto;
    display: block;
}

.system-tabs-section {
    padding: 50px 0;
}

.niko_map {
    margin-top: 38px;
}

.topbar-links {
	display: flex;
	gap: 20px;
	align-items: center;
}

.topbar-links a {
	color: #828282;
	text-decoration: none;
}

.topbar-links a:hover {
    color: #ea7016;
}

.timeline-section {
    padding: 0px 0;
    overflow: hidden;
    text-align: center;
}

  .timeline-header {
    max-width: 1200px;
    margin: 0 auto 24px;
    padding: 0 20px;
  }

  .timeline-kicker {
    margin: 0 0 8px;
    font-size: 12px;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: var(--accent);
  }

  .timeline-heading {
    margin: 0;
    font-size: clamp(28px, 4vw, 44px);
    line-height: 1.05;
    font-weight: 700;
  }

  .timeline-intro {
    max-width: 760px;
    margin: 14px 0 0;
    font-size: 16px;
    line-height: 1.7;
    color: var(--muted);
  }

.timeline-shell {
    position: relative;
    padding: 0px 20px 20px;
}

  .timeline-shell::before,
  .timeline-shell::after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    width: 20px;
    pointer-events: none;
    z-index: 3;
  }

  .timeline-shell::before {
    left: 0;
    background: linear-gradient(to right, var(--bg), rgba(247, 245, 240, 0));
  }

  .timeline-shell::after {
    right: 0;
    background: linear-gradient(to left, var(--bg), rgba(247, 245, 240, 0));
  }

  .timeline-track {
    position: relative;
    display: flex;
    gap: 24px;
    overflow-x: auto;
    overflow-y: visible;
    padding: 26px 8vw 28px;
    scroll-snap-type: x proximity;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: thin;
    scrollbar-color: var(--accent-soft) transparent;
  }

  .timeline-track::-webkit-scrollbar {
    height: 10px;
  }

  .timeline-track::-webkit-scrollbar-thumb {
    background: var(--accent-soft);
    border-radius: 999px;
  }

  .timeline-line,
  .timeline-line-progress {
    position: absolute;
    left: 8vw;
    right: 8vw;
    top: 52px;
    height: 2px;
    border-radius: 999px;
    pointer-events: none;
  }

  .timeline-line {
    background: var(--line);
    z-index: 0;
  }

  .timeline-line-progress {
    background: linear-gradient(90deg, var(--accent), #7ea58f);
    transform-origin: left center;
    transform: scaleX(0);
    z-index: 1;
    transition: transform 0.2s linear;
  }

  .timeline-item {
    position: relative;
    flex: 0 0 340px;
    scroll-snap-align: start;
    padding-top: 24px;
    opacity: 0;
    transform: translateY(28px);
    transition: opacity 0.7s ease, transform 0.7s ease;
    z-index: 2;
  }

  .timeline-item.is-visible {
    opacity: 1;
    transform: translateY(0);
  }

  .timeline-dot {
    position: absolute;
    top: 20px;
    left: 18px;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background: var(--card);
    border: 3px solid var(--accent);
    box-shadow: 0 0 0 8px rgba(223, 233, 226, 0.9);
    transition: transform 0.35s ease, box-shadow 0.35s ease;
    z-index: 2;
  }

  .timeline-item.is-visible .timeline-dot {
    transform: scale(1.05);
    box-shadow: 0 0 0 10px #E97017;
}

  .timeline-card {
    margin-top: 36px;
    background: var(--card);
    border-radius: var(--radius);
    overflow: hidden;
    box-shadow: var(--shadow);
    border: 1px solid rgba(49, 88, 71, 0.08);
  }

  .timeline-image-wrap {
    aspect-ratio: 4 / 3;
    overflow: hidden;
    background: #ebe8df;
  }

  .timeline-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transform: scale(1.04);
    transition: transform 1.2s ease;
  }

  .timeline-item.is-visible .timeline-image {
    transform: scale(1);
  }

  .timeline-content {
    padding: 22px 22px 24px;
  }

  .timeline-year {
    display: inline-block;
    margin-bottom: 10px;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--accent);
  }

  .timeline-title {
    margin: 0 0 10px;
    font-size: 22px;
    line-height: 1.2;
  }

  .timeline-text {
    margin: 0;
    font-size: 15px;
    line-height: 1.7;
    color: var(--muted);
  }

  .timeline-hint {
    max-width: 1200px;
    margin: 16px auto 0;
    padding: 0 20px;
    font-size: 13px;
    color: var(--muted);
  }

  @media (max-width: 1024px) {
    .timeline-track {
      padding-left: 20px;
      padding-right: 20px;
    }

    .timeline-line,
    .timeline-line-progress {
      left: 20px;
      right: 20px;
    }

    .timeline-item {
      flex-basis: 310px;
    }
  }

  @media (max-width: 767px) {
    .timeline-section {
      padding: 42px 0;
    }

    .timeline-shell {
      padding-top: 18px;
    }

    .timeline-track {
      gap: 18px;
      padding: 24px 16px 24px;
      scroll-snap-type: x mandatory;
    }

    .timeline-line,
    .timeline-line-progress {
      left: 16px;
      right: 16px;
      top: 48px;
    }

    .timeline-item {
      flex-basis: min(84vw, 320px);
      padding-top: 20px;
    }

    .timeline-dot {
      left: 14px;
      top: 18px;
      width: 16px;
      height: 16px;
    }

    .timeline-title {
      font-size: 20px;
    }

    .timeline-text {
      font-size: 14px;
    }
  }
			
.timeline-shell {
  position: relative;
}

.timeline-nav {
    display: flex;
    justify-content: flex-end;
    gap: 12px;
    margin: 20px 0 0;
}

.timeline-arrow {
    width: 48px;
    height: 48px;
    border: 1px solid #d7d7d7;
    border-radius: 999px;
    background: #fff;
    color: #111;
    font-size: 22px;
    line-height: 1;
    cursor: pointer;
    transition: all 0.25s ease;
    box-shadow: 0 4px 14px rgba(0,0,0,0.08);
    padding: 0;
}

.timeline-arrow:hover {
  transform: translateY(-1px);
  box-shadow: 0 8px 20px rgba(0,0,0,0.12);
}

.timeline-arrow:disabled {
  opacity: 0.4;
  cursor: not-allowed;
  transform: none;
  box-shadow: none;
}

.media-gallery-section h2 {
	margin-bottom: 30px;
}

.media-gallery-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 24px;
}

.media-gallery-item {
	display: block;
	overflow: hidden;
}

.media-gallery-item img {
	width: 100%;
	height: 250px;
	object-fit: cover;
	display: block;
	transition: transform 0.3s ease;
}

.media-gallery-item:hover img {
	transform: scale(1.05);
}

@media (max-width: 1024px) {
	.media-gallery-grid {
		grid-template-columns: repeat(3, 1fr);
	}
}

@media (max-width: 768px) {
	.media-gallery-grid {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 480px) {
	.media-gallery-grid {
		grid-template-columns: 1fr;
	}
}

.media-presentations-section {
	padding: 0 0 60px;
}

.presentation-item {
	text-decoration: none;
	color: inherit;
}

.presentation-item h3 {
	margin: 12px 0 0;
	font-size: 18px;
	line-height: 1.3;
}

.media-presentations-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 24px;
}

@media (max-width: 768px) {
	.media-presentations-grid {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 480px) {
	.media-presentations-grid {
		grid-template-columns: 1fr;
	}
}

.section-orange a.media-gallery-item.glightbox {
    border: 2px solid var(--color-brand-orange);
    border-radius: 5px;
}

.section-grey a.media-gallery-item.glightbox {
    border: 2px solid var(--color-grey-300);
    border-radius: 5px;
}

.section-blue a.media-gallery-item.glightbox {
    border: 2px solid var(--color-brand-blue);
    border-radius: 5px;
}

.media-gallery-card {
	display: flex;
	flex-direction: column;
}

.media-gallery-title {
	display: block;
	margin-top: 10px;
	font-size: 16px;
	font-weight: 600;
	text-decoration: none;
	color: inherit;
}

.media-gallery-title:hover {
	text-decoration: underline;
}

.page-template-media.section-orange main#primary h2 {
    border-bottom: 3px solid var(--color-brand-orange);
}

.page-template-media.section-grey main#primary h2 {
    border-bottom: 3px solid var(--color-grey-300);
}

.page-template-media.section-blue main#primary h2 {
    border-bottom: 3px solid var(--color-brand-blue);
}

.media-gallery-item {
	position: relative;
	display: block;
	overflow: hidden;
}

.media-gallery-item::after {
    content: "+";
    position: absolute;
    bottom: 12px;
    right: 12px;
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background: var(--color-brand-orange);
    color: #fff;
    font-size: 20px;
    font-weight: 700;
    line-height: 24px;
    text-align: center;
    z-index: 2;
    pointer-events: none;
    transition: transform 0.3s ease;
}

.media-gallery-item:hover::after {
	transform: scale(1.1);
}

.media-videos-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 24px;
}

.media-video-link {
	position: relative;
	display: block;
	overflow: hidden;
}

.media-video-link img {
	width: 100%;
	height: 260px;
	object-fit: cover;
	display: block;
}

.media-video-link::after {
	content: "+";
	position: absolute;
	bottom: 12px;
	right: 12px;
	width: 24px;
	height: 24px;
	border-radius: 50%;
	background: var(--color-brand-orange);
	color: #fff;
	font-size: 16px;
	font-weight: 700;
	display: flex;
	align-items: center;
	justify-content: center;
	z-index: 2;
	pointer-events: none;
}

.media-video-card h3 {
	margin: 12px 0 0;
	font-size: 18px;
	line-height: 1.3;
}

@media (max-width: 768px) {
	.media-videos-grid {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 480px) {
	.media-videos-grid {
		grid-template-columns: 1fr;
	}
}

.page-template-media main#primary {
    margin-bottom: 60px;
}

a.presentation-item img {
    height: 250px;
    width: 100%;
    object-fit: cover;
}

.media-page-layout {
    display: grid;
    grid-template-columns: 240px 1fr;
    gap: 50px;
    align-items: start;
    overflow: visible !important;
    padding-top: 60px;
}

.media-quick-links-wrap {
	align-self: stretch;
	overflow: visible !important;
}

.media-quick-links {
	position: sticky;
	top: 120px;
	z-index: 5;
}

.media-page-content {
	flex: 1;
	min-width: 0;
}

.media-quick-links h2 {
	font-size: 22px;
	margin-bottom: 20px;
}

.media-quick-links ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.media-quick-links li {
	margin-bottom: 10px;
}

.media-quick-links a {
	display: block;
	text-decoration: none;
	color: inherit;
	font-weight: 600;
}

.media-quick-links a:hover {
	color: var(--color-brand-orange);
}

.media-page-content section {
	scroll-margin-top: 120px;
	margin-bottom: 70px;
}

@media (max-width: 900px) {
	.media-page-layout {
		display: block;
	}

	.media-quick-links {
		position: static;
		max-height: none;
		overflow: visible;
		margin-bottom: 40px;
	}
}

.media-page-layout.grid,
.page-template-media .grid {
	overflow: visible;
}

.page-template-media,
.page-template-media body,
.page-template-media #page,
.page-template-media .site,
.page-template-media .site-content,
.page-template-media main#primary,
.page-template-media .grid,
.page-template-media .media-page-layout {
	overflow: visible !important;
}













pre {
	background: #eee;
	font-family:  "Courier 10 Pitch", Courier, monospace;
	font-size: 15px;
	font-size: 0.9375rem;
	line-height: 1.6;
	margin-bottom: 1.6em;
	max-width: 100%;
	overflow: auto;
	padding: 1.6em;
}

/*--------------------------------------------------------------
# TW New Styles
--------------------------------------------------------------*/

.blockpadz {
    padding: 20px 20px!important;
}

.footer-widgets-area h2 {
    color: rgba(255, 255, 255, 0.7);
    font-size: 1.6em;
}

.entry-content .wp-block-column {
    padding: 20px;
    box-shadow: 6px 6px 12px rgba(0,0,0,0.4);
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
    border-radius: 10px;
    margin: 20px;
}

header#masthead h3 a {
    color: #fff;
    text-decoration: none;
}

.footer-logo img {
    width: 100%;
    max-width: 220px;
    margin: 0px;
}

.footer-logo a {
    display: inline-block;
}

/* article {
    padding: 0px 0px 40px 0px;
} */

.footer-logo {
    text-align: center;
}

.archive .grid-pad {
    padding-bottom: 40px;
}

.footer-copyright {
    text-align: center;
}

.logo a {
    display: flex;
}

.logo img {
    width: 100%;
    max-width: 250px;
    margin: 0;
}

/* Default */
header#masthead {
    float: left;
    width: 100%;
    border-bottom: 5px solid var(--color-brand-blue-light);
}

/* Orange section */
.section-orange header#masthead,
.single.category-6 header#masthead {
    border-bottom: 5px solid var(--color-brand-orange);
}

/* Grey section */
.section-grey header#masthead,
.single.category-5 header#masthead {
    border-bottom: 5px solid var(--color-grey-300);
}

/* Blue section */
.section-blue header#masthead,
.single.category-7 header#masthead {
    border-bottom: 5px solid var(--color-brand-blue);
}

header#masthead h3 {
    color: #fff;
    font-size: 1.4em;
}

.home header#masthead {
    margin-top: 0px;
}

.sliderhome {
    width: 100%;
    float: left;
    display: block;
}

.button-top {
    position: fixed;
    bottom: 30px;
    right: 30px;
    z-index: 100;
    width: 60px;
    height: 60px;
    border: 0;
    border-radius: 5px;
    box-shadow: none;
    background: #f4f4f4;
    color: #d5d7da;
    font-size: 2.4em;
    text-align: center;
    padding: 10px;
}

.innertitle {
    position: relative;
    overflow: auto;
    max-width: 1440px;
    width: 90%;
    margin: 0 auto;
    z-index: 2;
}

.innertitle h1 {
    color: #ffffff;
    font-weight: 500;
    margin: 0;
}

.innertitle h3 {
    color: #fff;
}

/*--------------------------------------------------------------
## Woo Structure
--------------------------------------------------------------*/

main#main > * {
  margin: 36px auto;
  max-width: 1440px;
  padding-left: 14px;
  padding-right: 14px;
}

main#main > .alignwide {
  max-width: 1070px;
}

main#main > .alignfull {
  margin: 1.5em 0;
  max-width: 100%;
}

@media screen and (min-width: 608px) {
  main#main > * {
    padding-left: 0px;
    padding-right: 0px;
  }
}

/*--------------------------------------------------------------
# Simple Grid - http://thisisdallas.github.com/Simple-Grid/
--------------------------------------------------------------*/

[class*='grid'],
[class*='col-'],
[class*='mobile-'],
.grid:after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;	
}

[class*='col-'] {
	float: left;
  	min-height: 1px;
	padding-right: 20px; /* column-space */
}

[class*='col-'] [class*='col-']:last-child {
	padding-right: 0;
}

.grid {
    width: 90%;
    margin: 0 auto;
    overflow: visible;
    max-width: 1440px;
}

.grid-pad {
	padding-top: 20px;
	padding-left: 20px; /* grid-space to left */
	padding-right: 0; /* grid-space to right: (grid-space-left - column-space) e.g. 20px-20px=0 */
}

.push-right {
	float: right;
}

/* Content Columns */

.col-1-1 {
	width: 100%;
}
.col-2-3, .col-8-12 {
	width: 66.66%;
}

.col-1-2, .col-6-12 {
	width: 50%;
}

.col-1-3, .col-4-12 {
	width: 33.33%;
}

.col-1-4, .col-3-12 {
	width: 25%;
}

.col-1-5 {
	width: 20%;
}

.col-1-6, .col-2-12 {
	width: 16.667%;
}

.col-1-7 {
	width: 14.28%;
}

.col-1-8 {
	width: 12.5%;
}

.col-1-9 {
	width: 11.1%;
}

.col-1-10 {
	width: 10%;
}

.col-1-11 {
	width: 9.09%;
}

.col-1-12 {
	width: 8.33%
}

/* Layout Columns */

.col-11-12 {
	width: 91.66%
}

.col-10-12 {
	width: 83.333%;
}

.col-9-12 {
	width: 75%;
}

.col-5-12 {
	width: 41.66%;
}

.col-7-12 {
	width: 58.33%
}

/* Pushing blocks */

.push-2-3, .push-8-12 {
	margin-left: 66.66%;
}

.push-1-2, .push-6-12 {
	margin-left: 50%;
}

.push-1-3, .push-4-12 {
	margin-left: 33.33%;
}

.push-1-4, .push-3-12 {
	margin-left: 25%;
}

.push-1-5 {
	margin-left: 20%;
}

.push-1-6, .push-2-12 {
	margin-left: 16.667%;
}

.push-1-7 {
	margin-left: 14.28%;
}

.push-1-8 {
	margin-left: 12.5%;
}

.push-1-9 {
	margin-left: 11.1%;
}

.push-1-10 {
	margin-left: 10%;
}

.push-1-11 {
	margin-left: 9.09%;
}

.push-1-12 {
	margin-left: 8.33%
}

@media handheld, only screen and (max-width: 767px) {
	.grid {
		width: 100%;
		min-width: 0;
		margin-left: 0;
		margin-right: 0;
		padding-left: 20px; /* grid-space to left */
		padding-right: 10px; /* grid-space to right: (grid-space-left - column-space) e.g. 20px-10px=10px */
		max-width: 100%;
	}
	
	blockquote {
    width: 100%!important;
}

	[class*='col-'] {
		width: auto;
		float: none;
		margin: 10px 0;
		padding-left: 0;
		padding-right: 10px; /* column-space */
	}

	[class*='col-'] [class*='col-'] {
		padding-right: 0;
	}

	/* Mobile Layout */

	[class*='mobile-col-'] {
		float: left;
		margin: 0 0 10px;
		padding-left: 0;
		padding-right: 10px; /* column-space */
		padding-bottom: 0;
	}

	.mobile-col-1-1 {
		width: 100%;
	}
	.mobile-col-2-3, .mobile-col-8-12 {
		width: 66.66%;
	}

	.mobile-col-1-2, .mobile-col-6-12 {
		width: 50%;
	}

	.mobile-col-1-3, .mobile-col-4-12 {
		width: 33.33%;
	}

	.mobile-col-1-4, .mobile-col-3-12 {
		width: 25%;
	}

	.mobile-col-1-5 {
		width: 20%;
	}

	.mobile-col-1-6, .mobile-col-2-12 {
		width: 16.667%;
	}

	.mobile-col-1-7 {
		width: 14.28%;
	}

	.mobile-col-1-8 {
		width: 12.5%;
	}

	.mobile-col-1-9 {
		width: 11.1%;
	}

	.mobile-col-1-10 {
		width: 10%;
	}

	.mobile-col-1-11 {
		width: 9.09%;
	}

	.mobile-col-1-12 {
		width: 8.33%
	}

	/* Layout Columns */

	.mobile-col-11-12 {
		width: 91.66%
	}

	.mobile-col-10-12 {
		width: 83.333%;
	}

	.mobile-col-9-12 {
		width: 75%;
	}

	.mobile-col-5-12 {
		width: 41.66%;
	}

	.mobile-col-7-12 {
		width: 58.33%
	}

	.hide-on-mobile {
		display: none !important;
		width: 0;
		height: 0;
	}
}

/*--------------------------------------------------------------
# Normalize
--------------------------------------------------------------*/

html, body {
    max-width: 100%;
    overflow-x: hidden;
}

html {
  font-family: sans-serif;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
}

body {
  margin: 0;
  overflow-x: hidden;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section,
summary {
  display: block;
}

audio,
canvas,
progress,
video {
  display: inline-block;
  vertical-align: baseline;
}

audio:not([controls]) {
  display: none;
  height: 0;
}

[hidden],
template {
  display: none;
}

a {
  background-color: transparent;
}

a:active,
a:hover {
  outline: 0;
}

abbr[title] {
  border-bottom: 1px dotted;
}

b,
strong {
  font-weight: bold;
}

dfn {
  font-style: italic;
}

h1 {
  font-size: 2.5em;
  margin: 0 0 0.67em;
  line-height: 1.4;
}

h2 {
    font-size: 2em;
    line-height: 1.4;
    margin-top: 0;
    font-weight: 600;
    letter-spacing: 1.2px;
}

h3,
.system-top-banner h1 {
    font-size: 1.6em;
    line-height: 1.4;
    margin-top: 0;
    text-transform: uppercase;
    font-weight: 300;
    letter-spacing: 0.2em;
}

h4 {
  font-size: 1.4em;
  line-height: 1.4;
	margin-top: 0;
	font-weight: 400;
}

h5 {
  font-size: 1em;
}

h6 {
  font-size: 0.8em;
}

mark {
  background: #ff0;
  color: #000;
}

small {
  font-size: 80%;
}

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

img {
  border: 0;
}

svg:not(:root) {
  overflow: hidden;
}

figure {
  margin: 1em 40px;
}

hr {
  box-sizing: content-box;
  height: 0;
}

pre {
  overflow: auto;
}

code,
kbd,
pre,
samp {
  font-family: Monaco, Consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
  font-size: 0.875rem;
}

button,
input,
optgroup,
select,
textarea {
  color: inherit;
  font: inherit;
  margin: 0;
}

button {
  overflow: visible;
}

button,
select {
  text-transform: none;
}

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  cursor: pointer;
}

button[disabled],
html input[disabled] {
  cursor: default;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

input {
  line-height: normal;
}

input[type="checkbox"],
input[type="radio"] {
  box-sizing: border-box;
  padding: 0;
}

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

legend {
  border: 0;
  padding: 0;
}

textarea {
  overflow: auto;
}

optgroup {
  font-weight: bold;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

td,
th {
  padding: 0;
}

.wp-block-table table {
    border: 1px solid #eaeaea;
    width: 100%;
    border-collapse: initial!important;
    padding: 10px;
}

table{border-spacing:1;border-collapse:collapse;background:#fff;border-radius:10px;overflow:hidden;width:100%;margin:0 auto;position:relative}

table *{position:relative}

table td,table th{padding-left:8px}

table thead tr {
    height: 60px;
    background: var(--color-brand-orange);
    color: #fff;
}

table tbody tr{height:50px}table tbody tr:last-child{border:0}

table td,table th{text-align:left}

table td.l,table th.l{text-align:right}

table td.c,table th.c{text-align:center}

table td.r,table th.r{text-align:center}

tbody tr:nth-child(even){background-color:#f5f5f5}

tbody tr{font-family: 'din-2014', sans-serif;
font-size:15px;color:gray;line-height:1.2;font-weight:unset}

/*--------------------------------------------------------------
# Typography
--------------------------------------------------------------*/
body,
button,
input,
select,
optgroup,
textarea {
  color: #515151;
  font-family: 'din-2014', sans-serif;
  font-size: 18px;
  line-height: 1.8;
}

h1, h2, h3, h4, h5, h6 {
    color: #151515;
    clear: both;
  font-family: 'din-2014', sans-serif;
}

.menu_title a {
    text-decoration: none!important;
}

.entry-header .entry-title {
  font-size: 2.44em;
  line-height: 1.4;
  margin: 1em 0 1rem;
}

dfn, cite, em, i {
  font-style: italic;
}

address {
  margin: 0 0 1.5em;
}

pre {
  font-family: Monaco, Consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
  line-height: 1.6;
  margin-bottom: 1.6em;
  max-width: 100%;
  overflow: auto;
  padding: 0.8em 1em;
}

code, kbd, tt, var {
  font-family: Monaco, Consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
  font-size: 0.875rem;
}

@media screen and (min-width: 600px) {
  code, kbd, tt, var {
    font-size: 0.8125rem;
  }
}

p > code {
  padding: 2px;
  border-radius: 2px;
  background: #f3f4f5;
  font-size: inherit;
}

abbr, acronym {
  border-bottom: 1px dotted #666;
  cursor: help;
}

mark, ins {
  background: #fff9c0;
  text-decoration: none;
}

big {
  font-size: 125%;
}

.site-title {
	margin: .4375em 0 0;
	font-size: 38px;
	font-weight: bold;
	line-height: 1.2;
	color: #333332;
}

.site-title a {
	text-decoration: none;
	color: inherit;
}

.site-branding {
	margin-bottom: 1.75em;
}

.site-description {
	margin: .4375em 0 0;
	font-size: 17px;
	font-weight: inherit;
	line-height: 1.4;
	word-wrap: break-word;
	color: #6c7781;
}
/*--------------------------------------------------------------
# Elements
--------------------------------------------------------------*/
html {
  box-sizing: border-box;
}

*,
*:before,
*:after {
  /* Inherit box-sizing to make it easier to change the property for components that leverage other behavior; see http://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
  box-sizing: inherit;
}

body {
  background: #fff;
  /* Fallback for when there is no custom background color defined. */ }

blockquote, q {
  quotes: "" ""; }
  blockquote:before, blockquote:after, q:before, q:after {
    content: ""; }

hr {
    border: 0;
    height: 5px;
    margin: 50px auto;
    max-width: 1440px;
    background: #F6F6F6;
    width: 90%;
}

ul, ol {
  margin: 0 0 1.5em 3em;
}

ul {
  list-style: disc;
}

ol {
  list-style: decimal;
}

li > ul,
li > ol {
  margin-bottom: 0;
  margin-left: 1.5em;
}

dt {
  font-weight: bold;
}

dd {
  margin: 0 1.5em 1.5em;
}

img {
  height: auto;
  /* Make sure images are scaled correctly. */
  max-width: 100%;
  /* Adhere to container width. */
}

figure {
  margin: 1em 0;
  /* Extra wide images within figure tags don't overflow the content area. */
}

table {
  margin: 0 0 1.5em;
  width: 100%;
}

/*--------------------------------------------------------------
# Forms
--------------------------------------------------------------*/
button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
  border: 1px solid;
  border-color: #ccc #ccc #bbb;
  border-radius: 3px;
  background: #e6e6e6;
  color: rgba(0, 0, 0, 0.8);
  font-size: 12px;
  font-size: 0.75rem;
  line-height: 1;
  padding: .6em 1em .4em;
}

button:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover {
  border-color: #ccc #bbb #aaa;
}

button:active, button:focus,
input[type="button"]:active,
input[type="button"]:focus,
input[type="reset"]:active,
input[type="reset"]:focus,
input[type="submit"]:active,
input[type="submit"]:focus {
  border-color: #aaa #bbb #bbb;
}

input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="number"],
input[type="tel"],
input[type="range"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="datetime"],
input[type="datetime-local"],
input[type="color"],
textarea {
  color: #666;
  border: 1px solid #ccc;
  border-radius: 3px;
  padding: 3px;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
input[type="number"]:focus,
input[type="tel"]:focus,
input[type="range"]:focus,
input[type="date"]:focus,
input[type="month"]:focus,
input[type="week"]:focus,
input[type="time"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="color"]:focus,
textarea:focus {
  color: #111;
}

select {
  border: 1px solid #ccc;
}

textarea {
  width: 100%;
}

/*--------------------------------------------------------------
# Navigation
--------------------------------------------------------------*/
/*--------------------------------------------------------------
## Links
--------------------------------------------------------------*/
a {
  color: #0073aa;
}

a:hover, a:focus, a:active {
  color: #00a0d2;
}

a:focus {
  outline: thin dotted;
}

a:hover, a:active {
  outline: 0;
}

/*--------------------------------------------------------------
## Menus
--------------------------------------------------------------*/
.main-navigation {
    clear: both;
    display: block;
    margin: 0 auto;
    text-align: center;
    background: #fff;
    padding: 0px;
}

.main-navigation ul {
	display: none;
	list-style: none;
	margin: 0;
	padding-left: 0;
}

.main-navigation ul ul {
	box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
	float: left;
	position: absolute;
	top: 100%;
	left: -999em;
	z-index: 99999;
  text-align: left;
}

.main-navigation ul ul ul {
	left: -999em;
	top: 0;
}

.main-navigation ul ul li:hover > ul,
.main-navigation ul ul li.focus > ul {
	left: 100%;
}

.main-navigation ul ul a {
	width: 200px;
}

.main-navigation ul li:hover > ul,
.main-navigation ul li.focus > ul {
  display: block;
	left: auto;
}

.main-navigation li {
	position: relative;
}

.main-navigation a {
	display: block;
	text-decoration: none;
}

.site-main .comment-navigation,
.site-main .posts-navigation,
.site-main .post-navigation {
  border-bottom: 1px solid #e2e4e7;
	margin: 0 auto 60px;
  max-width: 1200px;
	overflow: hidden;
  padding-bottom: 60px;
}

.nav-links {
	display: flex;
}

.comment-navigation .nav-previous,
.posts-navigation .nav-previous,
.post-navigation .nav-previous {
	width: 50%;
	flex: 1 0 50%;
}

.comment-navigation .nav-next,
.posts-navigation .nav-next,
.post-navigation .nav-next {
	text-align: end;
	flex: 1 0 50%;
}

/*--------------------------------------------------------------
# Accessibility
--------------------------------------------------------------*/
/* Text meant only for screen readers. */
.screen-reader-text {
  clip: rect(1px, 1px, 1px, 1px);
  position: absolute !important;
  height: 1px;
  width: 1px;
  overflow: hidden;
  word-wrap: normal !important;
  /* Many screen reader and browser combinations announce broken words as they would appear visually. */
}

.screen-reader-text:focus {
  background-color: #f1f1f1;
  border-radius: 3px;
  box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
  clip: auto !important;
  color: #21759b;
  display: block;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: bold;
  height: auto;
  left: 5px;
  line-height: normal;
  padding: 15px 23px 14px;
  text-decoration: none;
  top: 5px;
  width: auto;
  z-index: 100000;
  /* Above WP toolbar. */
}

/* Do not show the outline on the skip link target. */
#primary[tabindex="-1"]:focus {
  outline: 0;
}

/*--------------------------------------------------------------
# Alignments
--------------------------------------------------------------*/

.alignleft,
.alignright {
	max-width: 1200px !important;	/* Let's work to make this !important unnecessary */
}

.alignleft img,
.alignright img,
.alignleft figcaption,
.alignright figcaption {
	max-width: 50%;
	width: 50%;
}

.alignleft figcaption {
	clear: left;
}

.alignright figcaption {
	clear: right;
}

.alignleft img,
.alignleft figcaption {
  float: left;
  margin-right: 1.5em;
}

.alignright img,
.alignright figcaption {
  float: right;
  margin-left: 1.5em;
}

.aligncenter {
  clear: both;
  display: block;
  margin-left: auto;
  margin-right: auto;
}


/*--------------------------------------------------------------
# Widgets
--------------------------------------------------------------*/
.widget-area {
	width: 25%;
}

.widget {
  margin: 0 0 1.5em;
  /* Make sure select elements fit in widgets. */
}

.widget select {
  max-width: 100%;
}

/*--------------------------------------------------------------
# Content
--------------------------------------------------------------*/
#page {
    margin: 0 auto;
    max-width: 100%;
    clear: both;
    float: left;
    width: 100%;
}

.site-branding {
    text-align: center;
    margin: 20px 0px 20px 0px;
}

.site-footer {
    margin: 0;
    clear: both;
    display: flex;
    flex-direction: column;
    padding: 60px 0;
    border-bottom: none;
    position: relative;
}

.site-footer::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 5px;
    background: linear-gradient(
        to right,
        var(--color-brand-orange) 0% 25%,
        var(--color-grey-300) 25% 50%,
        var(--color-brand-blue) 50% 75%,
        #040503 75% 100%
    );
}

.site-info {
    max-width: none!important;
    margin: 0!important;
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: 1fr;
}

h2.widgettitle {
    display: none;
}

.footer-certs {
    text-align: end;
}

/*--------------------------------------------------------------
## Posts and pages
--------------------------------------------------------------*/
.sticky {
  display: block;
}

.hentry {
  margin: 60px 0;
}

.updated:not(.published) {
  display: none;
}

.page-content,
.entry-content,
.entry-summary {
  margin: 1.5em 0 0;
}

.entry-meta {
  color: #6c7781;
  font-size: 90%;
}

.page-links {
  clear: both;
  margin: 0 0 1.5em;
}

.entry-header,
.page-header,
.entry-footer,
.site-info,
.posts-navigation,
.post-navigation,
.page-navigation,
.comments-area,
.not-found .page-content,
.search .entry-summary {
  margin: 1.5em auto;
  padding-left: 14px;
  padding-right: 14px;
  max-width: 1200px;
}

.site-footer a {
    color: #515151;
    text-decoration: none;
}

.entry-header .wp-post-image {
  margin-bottom: 1.5em;
}

.entry-footer span{
  margin-right: 1em;
}

.entry-footer{
  color: #6c7781;
  font-size: 90%;
  padding-bottom: 40px;
  border-bottom: 1px solid #e2e4e7;
}

@media screen and (min-width: 608px) {
  .entry-header,
  .page-header,
  .entry-footer,
  .site-info,
  .posts-navigation,
  .post-navigation,
  .page-navigation,
  .comments-area,
  .not-found .page-content,
  .search .entry-summary {
    padding-left: 0;
    padding-right: 0;
  }
}

/*--------------------------------------------------------------
## Comments
--------------------------------------------------------------*/
.comment-content a {
  word-wrap: break-word;
}

.bypostauthor {
  display: block;
}

/*--------------------------------------------------------------
# Infinite scroll
--------------------------------------------------------------*/
/* Globally hidden elements when Infinite Scroll is supported and in use. */
.infinite-scroll .posts-navigation,
.infinite-scroll.neverending .site-footer {
  /* Theme Footer (when set to scrolling) */
  display: none;
}

/* When Infinite Scroll has reached its end we need to re-display elements that were hidden (via .neverending) before. */
.infinity-end.neverending .site-footer {
  display: block;
}

/*--------------------------------------------------------------
# Media
--------------------------------------------------------------*/
.page-content .wp-smiley,
.entry-content .wp-smiley,
.comment-content .wp-smiley {
  border: none;
  margin-bottom: 0;
  margin-top: 0;
  padding: 0;
}

/* Make sure embeds and iframes fit their containers. */
embed,
iframe,
object {
  max-width: 100%;
}

/* Make sure logo link wraps around logo image. */
.custom-logo-link {
  display: inline-block;
}

/*--------------------------------------------------------------
## Captions
--------------------------------------------------------------*/
.wp-caption {
  margin-bottom: 1.5em;
  max-width: 100%;
}

.wp-caption img[class*="wp-image-"] {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.wp-caption .wp-caption-text {
  margin: 0.8075em 0;
}

.wp-caption-text {
  text-align: center;
}

/*--------------------------------------------------------------
## Galleries
--------------------------------------------------------------*/
.gallery {
  margin-bottom: 1.5em;
}

.gallery-item {
  display: inline-block;
  text-align: center;
  vertical-align: top;
  width: 100%;
}

.gallery-columns-2 .gallery-item {
  max-width: 50%;
}

.gallery-columns-3 .gallery-item {
  max-width: 33.3333333333%;
}

.gallery-columns-4 .gallery-item {
  max-width: 25%;
}

.gallery-columns-5 .gallery-item {
  max-width: 20%;
}

.gallery-columns-6 .gallery-item {
  max-width: 16.6666666667%;
}

.gallery-columns-7 .gallery-item {
  max-width: 14.2857142857%;
}

.gallery-columns-8 .gallery-item {
  max-width: 12.5%;
}

.gallery-columns-9 .gallery-item {
  max-width: 11.1111111111%;
}

.gallery-caption {
  display: block;
}
