/*
Author: Shadow Themes
Author URL: https://shadow-themes.com
Name: Anita Photography
Version: 1.0
License: Themeforest

-----------------
Table of Contents
-----------------
01. GENERAL
    1.1 - Grid
    1.2 - BrickWall Styles
    1.3 - Disable Selection
    1.4 - Spotlight

02. TYPOGRAPHY

03. FORMS & FIELDS

04. HEADER
    4.1 - General
    4.2 - Simple Menu
    4.3 - Fullscreen Menu

05. CONTENT

06. FOOTER

07. ALBUMS LISTING
    7.1 - General
    7.2 - Galleries Navigation
    7.3 - GL Carousel Gallery
    7.4 - GL Roll Gallery
    7.5 - GL Slider
    7.6 - Flat Carousel
    7.7 - Flat Grid

08. ALBUM POST
    8.1 - General
    8.2 - Adjusted Grid Gallery
    8.3 - Bricks Grid Gallery
    8.4 - Masonry Grid Gallery
    8.5 - Justified Grid Gallery
    8.6 - Next Album
    8.7 - Fullscreen Albums Navigation

09. ELEMENTS
    9.1 - General
    9.2 - CTA
    9.3 - Price Item
    9.4 - Toggles
    9.5 - Counter
    9.6 - Grid Gallery
    9.7 - Before After
    9.8 - Team Carousel
    9.9 - Testimonials

10. WIDGETS

11. RIGHT CLICK PROTECTION MESSAGE

12. PRELOADER

13. BACK TO TOP

14. INTERRACTIVE CURSOR
    14.1 - General
    14.2 - Scroll Cursor
    14.3 - Cursor States

15. LAZY LOADING

16. HOVER STATES
    15.1 - Typography
    15.2 - Forms and Fields
    15.3 - Header
    15.4 - Footer
    15.5 - Works Listing
    15.6 - Album Post
    15.7 - Elements
    15.8 - Widgets
    15.9 - Back 2 Top
   15.10 - PhotoSwipe UI

17. ANIMATIONS

-------------------------------------- */

/* 01. GENERAL
   ----------- */
   * {
	box-sizing: border-box;
	outline: none;
 }
 body,
 html {
	padding: 0;
	margin: 0;
	min-height: 100%;
	overscroll-behavior: none;
	overflow-x: hidden;
	max-width: 100vw;
 }
 
 body {
	 background: var(--technoKs-s-bg-body);
	 color: var(--technoKs-s-content);
	 font-family: var(--technoKs-t-content-ff);
	 font-size: var(--technoKs-t-content-fs);
	 line-height: var(--technoKs-t-content-lh);
	 font-weight: var(--technoKs-t-content-fw);
	 overflow-x: hidden;
	 -webkit-tap-highlight-color: transparent;
 }
 body.is-init {
	 opacity: 1;
 }
 body.technoKs-unload {
	 pointer-events: none;
 }
 body.is-loaded:not(.is-locked) {
	 pointer-events: auto;
 }
 body.is-locked,
 body.is-locked * {
	 pointer-events: none;
 }
 
 img {
	 display: block;
	 max-width: 100%;
	 height: auto;
 }
 .pswp {
	 display: none;
 }
 .pswp.pswp--open {
	 display: block;
 }
 
 /* --- Grid --- */
 section.technoKs-section.technoKs-section-no-spacing,
 .technoKs-container section.technoKs-section:last-child {
	 margin-bottom: 0;
 }
 section.technoKs-section {
	 margin-bottom: var(--technoKs-section-gap);
	 display: block;
	 width: 100%;
 }
 section.technoKs-section.technoKs-section-grid-spacing {
	 margin-bottom: var(--technoKs-grid-gap);
 }
 
 .technoKs-grid {
	 display: grid;
	 grid-column-gap: var(--technoKs-grid-gap);
	 grid-row-gap: var(--technoKs-grid-gap);
	 max-width: 100%;
 }
 .technoKs-grid.technoKs-grid-small-gap {
	 grid-column-gap: var(--technoKs-grid-small-gap);
	 grid-row-gap: var(--technoKs-grid-small-gap);
 }
 .technoKs-grid--2cols {
	 grid-template-columns: repeat(2, 1fr);
 }
 .technoKs-grid--3cols {
	 grid-template-columns: repeat(3, 1fr);
 }
 .technoKs-grid--4cols {
	 grid-template-columns: repeat(4, 1fr);
 }
 .technoKs-grid--33-66 {
	 grid-template-columns: 1fr 2fr;
	 grid-auto-columns: minmax(33%, 66%);
 }
 .technoKs-grid--66-33 {
	 grid-template-columns: 2fr 1fr;
 }
 
 .technoKs-grid--2cols > * {
	 max-width: calc(var(--technoKs-container-width) * 0.5 - 0.5 * var(--technoKs-grid-gap));
 }
 .technoKs-grid--4cols > * {
	 max-width: calc(var(--technoKs-container-width) * 0.25 - 0.5 * var(--technoKs-grid-gap));
 }
 .technoKs-grid--3cols > *,
 .technoKs-grid--66-33 > :nth-child(2n),
 .technoKs-grid--33-66 > :nth-child(2n+1) {
	 max-width: calc(var(--technoKs-container-width) * 0.3333 - 0.5 * var(--technoKs-grid-gap));
 }
 .technoKs-grid--66-33 > :nth-child(2n+1),
 .technoKs-grid--33-66 > :nth-child(2n) {
	 max-width: calc(var(--technoKs-container-width) * 0.6666 - 0.5 * var(--technoKs-grid-gap));
 }
 
 .technoKs-offset-left--25 {
	 padding-left: calc(25% + var(--technoKs-grid-gap) * 0.5);
 }
 .technoKs-offset-left--33 {
	 padding-left: calc(33.33% + var(--technoKs-grid-gap) * 0.5);
 }
 .technoKs-offset-left--50 {
	 padding-left: calc(50% + var(--technoKs-grid-gap) * 0.5);
 }
 .technoKs-offset-left--66 {
	 padding-left: calc(66.66% + var(--technoKs-grid-gap) * 0.5);
 }
 
 .technoKs-offset-right--25 {
	 padding-right: calc(25% + var(--technoKs-grid-gap) * 0.5);
 }
 .technoKs-offset-right--33 {
	 padding-right: calc(33.33% + var(--technoKs-grid-gap) * 0.5);
 }
 .technoKs-offset-right--50 {
	 padding-right: calc(50% + var(--technoKs-grid-gap) * 0.5);
 }
 .technoKs-offset-right--66 {
	 padding-right: calc(66.66% + var(--technoKs-grid-gap) * 0.5);
 }
 
 .technoKs-bottom-gap--none,
 section.technoKs-bottom-gap--none,
 div.technoKs-bottom-gap--none {
	 margin-bottom: 0px;
 }
 .technoKs-bottom-gap--small,
 section.technoKs-bottom-gap--small,
 div.technoKs-bottom-gap--small {
	 margin-bottom: var(--technoKs-bottom-gap-small);
 }
 .technoKs-bottom-gap--medium,
 section.technoKs-bottom-gap--medium,
 div.technoKs-bottom-gap--medium {
	 margin-bottom: var(--technoKs-bottom-gap-medium);
 }
 .technoKs-bottom-gap--large,
 section.technoKs-bottom-gap--large,
 div.technoKs-bottom-gap--large {
	 margin-bottom: var(--technoKs-bottom-gap-large);
 }
 
 /* --- BrickWall Styles --- */
 .brickwall-grid {
	 position: relative;
 }
 .brickwall-grid > div {
	 position: absolute;
	 left: 0;
	 top: 0;
 }
 .brickwall-grid > div.is-appended,
 .brickwall-grid > div.is-prepended {
	 transform: scale(0);
 }
 .brickwall-grid:not(.animation--none) > div.brickwall-item {
	 transition: transform 0.4s, opacity 0.4s;
	 will-change: transform, opacity;
 }
 .brickwall-grid.animation--slow > div.brickwall-item {
	 transition: transform 0.8s, opacity 0.8s;
	 will-change: transform, opacity;
 }
 
 /* --- Disable Selection --- */
 a img,
 .main-menu li,
 .main-menu a,
 .technoKs-gallery-nav,
 .technoKs-no-selection,
 .technoKs-no-selection > *,
 .technoKs-gl-container-wrap,
 .technoKs-gl-gallery-item__content,
 .technoKs-gallery-item__content,
 .technoKs-toggles-item--title,
 .technoKs-fixed-album-title,
 header#technoKs-header a {
	 -webkit-touch-callout: none;
	 -webkit-user-select: none;
	 -khtml-user-select: none;
	 -moz-user-select: none;
	 -ms-user-select: none;
	 user-select: none;
 }
 
 /* --- Spotlight --- */
 .technoKs-spotlight {
	 position: fixed;
	 left: 0;
	 top: 0;
	 width: 100%;
	 height: 100%;
	 display: block;
	 pointer-events: none;
	 z-index: -1;
	 overflow: hidden;
 }
 .technoKs-spotlight::before,
 .technoKs-spotlight::after {
	 content: '';
	 position: absolute;
	 left: -50vw;
	 width: 200vw;
	 height: 200vh;
	 display: block;
 }
 .technoKs-spotlight::before {
	 opacity: 0.07;
	 top: -50vh;
	 background: var(--technoKs-s-spotlight01);
	 background-size: 100% 100%;
	 transform: translate(0vw, -50vh);
 }
 .technoKs-spotlight::after {
	 opacity: 0.05;
	 bottom: -50vh;
	 background: var(--technoKs-s-spotlight02);
	 background-size: 100% 100%;
	 transform: translate(0vw, 50vh);
 }
 
 /* 02. TYPOGRAPHY
	-------------- */
 p {
	 margin: 0 0 var(--technoKs-t-content-lh) 0;
 }
 p:last-child {
	 margin: 0;
 }
 p:empty {
	 display: none;
 }
 a {
	 position: relative;
 }
 a,
 a:focus,
 a:visited {
	 text-decoration: none;
	 color: var(--technoKs-s-link);
 }
 ol,
 ul {
	 padding: 0 0 0 17px;
	 margin: 0 0 var(--technoKs-t-content-lh) 0;
 }
 ol li,
 ul li {
	 padding: 0 0 0 13px;
 }
 strong {
	font-weight: var(--technoKs-t-content-strong-fw);
 }
 sup {
	 font-size: 0.5em;
	 margin-right: 3px;
 }
 cite {
	 text-align: right;
	 display: block;
	 font-style: normal;
 }
 
 h1, h2, h3, h4, h5, h6, .technoKs-caption {
	 font-family: var(--technoKs-t-heading-ff);
	 font-weight: var(--technoKs-t-heading-fw);
	 line-height: var(--technoKs-t-heading-lh);
	 margin: 0 0 var(--technoKs-t-content-lh) 0;
	 color: var(--technoKs-s-heading);
 }
 h1:last-child, h2:last-child, h3:last-child, h4:last-child, h5:last-child, h6:last-child {
	 margin-bottom: 0;
 }
 h1 span, h2 span, h3 span, h4 span, h5 span, h6 span {
	 color: var(--technoKs-s-heading);
 }
 h1 a, h2 a, h3 a, h4 a, h5 a, h6 a {
	 color: var(--technoKs-s-heading);
 }
 h1 sup, h2 sup, h3 sup, h4 sup, h5 sup, h6 sup {
	 color: var(--technoKs-s-heading);
	 opacity: var(--technoKs-o-heading-sup);
 }
 .technoKs-caption {
	 font-size: var(--technoKs-t-caption-fs);
	 margin: 0;
 }
 .technoKs-caption.technoKs-caption-large,
 h1.technoKs-page-title {
	 font-size: var(--technoKs-t-title-fs);
 }
 h1 {
	 font-size: var(--technoKs-t-h1-fs);
	 margin: 0 0 var(--technoKs-t-h1-spacing) 0;
 }
 h2 {
	 font-size: var(--technoKs-t-h2-fs);
	 margin: 0 0 var(--technoKs-t-h2-spacing) 0;
 }
 h3 {
	 font-size: var(--technoKs-t-h3-fs);
	 margin: 0 0 var(--technoKs-t-h3-spacing) 0;
 }
 h4 {
	 font-size: var(--technoKs-t-h4-fs);
	 margin: 0 0 var(--technoKs-t-h4-spacing) 0;
 }
 h5 {
	 font-size: var(--technoKs-t-h5-fs);
	 margin: 0 0 var(--technoKs-t-h5-spacing) 0;
 }
 h6 {
	 font-size: var(--technoKs-t-h6-fs);
	 margin: 0 0 var(--technoKs-t-h6-spacing) 0;
 }
 .technoKs-underline {
	 position: relative;
	 display: inline-block;
 }
 .technoKs-underline::after {
	 content: '';
	 position: absolute;
	 bottom: -2px;
	 height: 2px;
	 width: 100%;
	 background: var(--technoKs-s-heading);
	 display: block;
	 transition: transform 0.3s;
	 will-change: transition;
	 transform-origin: 50% 50%;
 }
 .technoKs-meta {
	 font-size: var(--technoKs-t-meta-fs);
	 color: var(--technoKs-s-meta);
	 line-height: 1.7;
 }
 
 /* --- Format --- */
 .align-left {
	 text-align: left;
 }
 .align-center {
	 text-align: center;
 }
 .align-right {
	 text-align: right;
 }
 .align-center img {
	 margin-left: auto;
	 margin-right: auto;
 }
 .align-right img {
	 margin-left: auto;
 }
 
 /* 03. FORMS & FIELDS
	------------------ */
 select {
	 max-width: 100%;
 }
 select option {
	 white-space: normal;
 }
 textarea {
	 resize: none;
 }
 input,
 select,
 textarea {
	 width: 100%;
	 display: block;
	 font-family: var(--technoKs-t-content-ff);
	 font-size: var(--technoKs-t-input-fs);
	 font-weight: var(--technoKs-t-content-fw);
	 line-height: 1.2em;
	 color: var(--technoKs-s-input-text);
	 border: 2px solid var(--technoKs-s-input-border);
	 background: var(--technoKs-s-input-background);
	 margin: 0 0 var(--technoKs-t-content-lh) 0;
	 transition: border 0.3s, color 0.3s, background-color 0.3s;
	 padding: 14px 16px 16px 16px;
 }
 input:focus,
 select:focus,
 textarea:focus {
	 color: var(--technoKs-s-input-focus-text);
	 background: var(--technoKs-s-input-focus-background);
	 border-color: var(--technoKs-s-input-focus-border);
 }
 textarea {
	 height: 197px;
 }
 .technoKs-input-wrap {
	 margin: 0 0 var(--technoKs-t-content-lh) 0;
	 position: relative;
 }
 .technoKs-input-wrap input,
 .technoKs-input-wrap textarea {
	 margin: 0;
	 position: relative;
	 z-index: 3;
 }
 .technoKs-input-wrap span {
	 pointer-events: none;
	 position: absolute;
	 left: 17px;
	 top: 16px;
	 will-change: transform;
	 transition: color 0.3s, transform 0.3s, font-size 0.3s;
	 transform-origin: 0 0;
	 color: var(--technoKs-s-input-text);
	 font-size: var(--technoKs-t-input-fs);
	 line-height: 1.2em;
	 z-index: 5;
 }
 .technoKs-input-wrap span::before {
	 content: '';
	 width: calc(100% + 8px);
	 height: 3px;
	 display: block;
	 position: absolute;
	 left: -4px;
	 bottom: 5px;
	 z-index: -1;
	 background: var(--technoKs-s-input-background);
	 transition: background-color 0.3s, opacity 0.3s;
	 will-change: opacity;
	 opacity: 0;
 }
 .technoKs-input-wrap.is-focus span {
	 color: var(--technoKs-s-input-focus-text);
 }
 .technoKs-input-wrap.is-focus span::before {
	 background: var(--technoKs-s-input-focus-background);
 }
 .technoKs-input-wrap.is-valued span {
	 transform: translate(-1px, -23px);
	 font-size: 12px;
 }
 .technoKs-input-wrap.is-valued span::before {
	 opacity: 1;
 }
 .technoKs-input-wrap.is-error input,
 .technoKs-input-wrap.is-error textarea {
	 border-color: var(--technoKs-s-input-border-error);
	 color: var(--technoKs-s-input-color-error);
 }
 .technoKs-input-wrap.is-error span {
	 color: var(--technoKs-s-input-border-error);
 }
 
 input[type="button"],
 input[type="reset"],
 input[type="submit"],
 button:not([class*='pswp']):not([class*='owl']),
 a.technoKs-button {
	 transition: background-color 0.3s, border-color 0.3s, color 0.3s;
	 display: inline-block;
	 border-style: solid;
	 border-width: 2px;
	 border-color: var(--technoKs-s-button-border);
	 color: var(--technoKs-s-button-text);
	 background: var(--technoKs-s-button-bg);
	 padding: var(--technoKs-button-padding);
	 font-size: var(--technoKs-t-button-fs);
	 font-family: var(--technoKs-t-heading-ff);
	 font-weight: var(--technoKs-t-heading-fw);
	 line-height: 1em;
	 -webkit-appearance: none;
	 cursor: pointer;
	 width: auto;
	 text-align: center;
 }
 a.technoKs-button.is-fullwidth {
	 width: 100%;
 }
 button.pswp__button {
	 transition: transform 0.12s;
 }
 
 /* Contact Form */
 .technoKs-contact-form {
	 transition: transform 0.3s, opacity 0.3s;
	 will-change: transform, opacity;
 }
 .technoKs-contact-form::after {
	 content: '';
	 width: 72px;
	 height: 72px;
	 border: 3px solid transparent;
	 border-top-color: var(--technoKs-s-heading);
	 border-radius: 50%;
	 animation: technoKs_spin 1s infinite;
	 pointer-events: none;
	 position: absolute;
	 z-index: 5;
	 top: calc(50% - 36px);
	 left: calc(50% - 36px);
	 display: block;
	 will-change: transform, opacity;
	 opacity: 0;
	 transition: opacity 0.3s;
 }
 .technoKs-contact-form.is-busy::after {
	 opacity: 1;
 }
 .technoKs-contact-form.is-busy {
	 opacity: 0.8;
	 transform: scale(0.9);
	 pointer-events: none;
 }
 .technoKs-contact-form.is-error {
	 animation: technoKs_shake 0.3s linear;
 }
 .technoKs-contact-form__footer {
	 display: flex;
	 flex-wrap: nowrap;
	 justify-content: center;
	 align-items: center;
 }
 .technoKs-contact-form__footer input[type="submit"] {
	 margin: 0;
 }
 .technoKs-contact-form__response {
	 display: flex;
	 justify-content: center;
	 text-align: center;
	 padding-left: 0px;
	 font-size: var(--technoKs-t-meta-fs);
	 color: var(--technoKs-s-heading);
 }
 
 /* 04. HEADER
	---------- */
 header#technoKs-header {
	 display: block;
	 width: 100%;
	 position: relative;
	 z-index: 111;
	 pointer-events: none;
 }
 header#technoKs-header.is-sticky {
	 position: fixed;
	 left: 0;
	 top: 0;
 }
 .technoKs-header-inner {
	 padding: var(--technoKs-header-spacing);
	 display: flex;
	 justify-content: space-between;
	 align-items: center;
	 position: relative;
 }
 .technoKs-header-inner > div {
	 position: relative;
	 z-index: 3;
 }
 .technoKs-logo {
	 display: block;
	 pointer-events: all;
 }
 
 /* --- Simple Menu --- */
 nav.technoKs-simple-nav .main-menu {
	 display: flex;
	 padding: 0;
	 margin: 0;
 }
 nav.technoKs-simple-nav .main-menu li {
	 display: block;
	 position: relative;
	 list-style: none;
	 margin-left: 20px;
	 padding: 0;
 }
 nav.technoKs-simple-nav .main-menu > li > a {
	 font-size: var(--technoKs-t-simple-menu-fs);
	 line-height: 1em;
	 color: var(--technoKs-s-menu-link);
	 padding: 8px 20px;
 }
 nav.technoKs-simple-nav .main-menu li a {
	 display: block;
	 transition: color 0.3s;
	 pointer-events: auto;
 }
 nav.technoKs-simple-nav .main-menu li.current-menu-parent > a,
 nav.technoKs-simple-nav .main-menu li.current-menu-item > a,
 nav.technoKs-simple-nav .main-menu li.current-menu-ancestor > a {
	 color: var(--technoKs-s-menu-link-active);
 }
 nav.technoKs-simple-nav .main-menu > li.menu-item-has-children::after {
	 content: '';
	 width: 0;
	 height: 0;
	 border-style: solid;
	 border-width: 0 8px 8px 8px;
	 border-color: transparent transparent var(--technoKs-s-sub-menu-bg) transparent;
	 position: absolute;
	 bottom: -10px;
	 left: 50%;
	 transition: transform 0.3s, opacity 0.3s;
	 pointer-events: none;
	 opacity: 0;
	 transform: scale(1, 1.1) translateX(-8px);
	 transform-origin: 50% 100%;
 }
 nav.technoKs-simple-nav .sub-menu {
	 position: absolute;
	 left: 0;
	 top: calc(100% + 10px);
	 background: var(--technoKs-s-sub-menu-bg);
	 width: 220px;
	 padding: 9px 0px 14px 0px;
	 transition: transform 0.3s, opacity 0.3s;
	 will-change: opacity, transform;
	 pointer-events: none;
	 opacity: 0;
	 transform: scale(1, 1.1);
	 transform-origin: 50% 0%;
 }
 nav.technoKs-simple-nav .main-menu > li > .sub-menu.technoKs-menu-offset {
	 left: auto;
	 right: 0;
 }
 nav.technoKs-simple-nav li.menu-item-has-children:hover::after,
 nav.technoKs-simple-nav li.menu-item-has-children:hover > .sub-menu {
	 opacity: 1;
	 transform: scale(1, 1);
	 pointer-events: all;
 }
 nav.technoKs-simple-nav li.menu-item-has-children:hover::after {
	 transform: scale(1, 1) translateX(-8px);
 }
 nav.technoKs-simple-nav .sub-menu::before {
	 content: '';
	 width: 100%;
	 height: 10px;
	 top: -10px;
	 display: block;
	 position: absolute;
 }
 nav.technoKs-simple-nav .sub-menu li {
	 margin: 0;
 }
 nav.technoKs-simple-nav .sub-menu li a {
	 font-size: var(--technoKs-t-sub-menu-fs);
	 line-height: 1em;
	 color: var(--technoKs-s-sub-menu-link);
	 padding: 13px 20px;
	 pointer-events: inherit;
	 transition: color 0.3s;
 }
 nav.technoKs-simple-nav .sub-menu > li.menu-item-has-children > a::after {
	 content: '+';
	 position: absolute;
	 right: 15px;
	 top: 50%;
	 transform: translateY(-8px);
	 font-size: 18px;
	 line-height: 1em;
 }
 nav.technoKs-simple-nav .sub-menu .sub-menu {
	 top: -10px;
	 left: calc(100% + 4px);
	 transform: scale(1.05, 1);
	 transform-origin: 0% 50%;
 }
 nav.technoKs-simple-nav .sub-menu .sub-menu.technoKs-menu-offset {
	 right: calc(100% + 4px);
	 left: auto;
 }
 nav.technoKs-simple-nav .sub-menu .sub-menu::before {
	 width: 4px;
	 height: 100%;
	 left: -4px;
	 top: 0;
 }
 nav.technoKs-simple-nav .sub-menu .sub-menu.technoKs-menu-offset::before {
	 left: auto;
	 right: -4px;
 }
 nav.technoKs-simple-nav .sub-menu li.current-menu-parent > a,
 nav.technoKs-simple-nav .sub-menu li.current-menu-item > a,
 nav.technoKs-simple-nav .sub-menu li.current-menu-ancestor > a {
	 color: var(--technoKs-s-sub-menu-link-active);
 }
 
 /* --- Fullscreen Menu --- */
 .technoKs-menu-toggler {
	 width: 44px;
	 height: 44px;
	 display: block;
	 position: relative;
	 margin-right: -6px;
	 pointer-events: all;
	 transition: transform 0.12s;
 }
 .technoKs-mobile-menu-toggler {
	 display: none;
 }
 .technoKs-menu-toggler::before {
	 content: '';
	 position: absolute;
	 left: -10px;
	 top: -10px;
	 right: -10px;
	 bottom: -10px;
	 display: block;
 }
 .technoKs-menu-toggler i {
	 width: 32px;
	 height: 14px;
	 position: absolute;
	 left: 6px;
	 top: 15px;
	 display: block;
 }
 .technoKs-menu-toggler i::before,
 .technoKs-menu-toggler i::after {
	 content: '';
	 display: block;
	 background: linear-gradient(to right, #188142, #dae23b);
	 height: 3px;
	 border-radius: 2px;
	 position: absolute;
	 transition: transform 0.3s, background-color 0.3s;
	 will-change: transform;
	 transform-origin: 0% 50%;
 }
 .technoKs-menu-toggler i::before {
	 width: 100%;
	 left: 0;
	 top: 0;
 }
 .technoKs-menu-toggler i::after {
	 width: 28px;
	 right: 0;
	 bottom: 0;
 }
 body.technoKs-show-menu .technoKs-menu-toggler i::before {
	 transform: translate(5px, -6px) rotate(45deg);
 }
 body.technoKs-show-menu .technoKs-menu-toggler i::after {
	 transform: translate(1px, 5px) rotate(-45deg) scale(1.14, 1);
 }
 
 .technoKs-fullscreen-menu-wrap {
	 position: fixed;
	 left: 0;
	 top: 0;
	 width: 100%;
	 height: 100%;
	 z-index: 101;
	 display: flex;
	 align-items: center;
	 justify-content: center;
	 transition: opacity 0.5s;
	 will-change: opacity;
	 pointer-events: none;
	 opacity: 0;
	 overflow: hidden;
	 background: var(--technoKs-s-bg-body);
 }
 .technoKs-mobile-menu-wrap {
	 display: none;
 }
 .technoKs-show-menu .technoKs-fullscreen-menu-wrap {
	 opacity: 1;
	 pointer-events: all;
 }
 .technoKs-menu-overlay {
	 background: var(--technoKs-s-bg-body);
	 position: fixed;
	 left: 0;
	 top: 0;
	 width: 100%;
	 height: 100%;
	 z-index: 5;
 }
 .technoKs-fullscreen-menu-wrap nav.technoKs-nav {
	 overflow-y: scroll;
	 max-width: var(--technoKs-container-width);
	 min-width: 400px;
	 max-height: 100vh;
	 padding: var(--technoKs-container-top-spacing) 40px;
	 position: relative;
	 z-index: 7;
	 transition: transform 0.5s;
	 will-change: transform;
	 transform: scale(0.85);
	 scrollbar-width: none;
 }
 body.technoKs-show-menu .technoKs-fullscreen-menu-wrap nav.technoKs-nav {
	 transform: scale(1);
 }
 body.technoKs-show-menu.technoKs-unload .technoKs-fullscreen-menu-wrap nav.technoKs-nav {
	 transform: scale(1.2);
 }
 .technoKs-fullscreen-menu-wrap nav.technoKs-nav::-webkit-scrollbar {
	 width: 0;
 }
 .technoKs-fullscreen-menu-wrap nav.technoKs-nav li {
	 list-style: none;
 }
 .technoKs-fullscreen-menu-wrap nav.technoKs-nav sup {
	 margin-right: 14px;
	 opacity: 0.25;
 }
 .technoKs-fullscreen-menu-wrap nav.technoKs-nav ul.main-menu {
	 padding: 0;
 }
 .technoKs-fullscreen-menu-wrap nav.technoKs-nav ul.main-menu li {
	 padding: 0;
 }
 .technoKs-fullscreen-menu-wrap nav.technoKs-nav > ul.main-menu > li {
	 transition: transform 0.3s, opacity 0.3s;
	 will-change: transform, opacity;
 }
 .technoKs-fullscreen-menu-wrap nav.technoKs-nav > ul.main-menu > li.is-hidden {
	 opacity: 0;
	 transform: scale(0.9);
 }
 .technoKs-fullscreen-menu-wrap nav.technoKs-nav ul.main-menu a {
	 transition: color 0.3s;
	 display: block;
	 color: var(--technoKs-s-menu-link);
	 position: relative;
	 overflow: hidden;
 }
 .technoKs-fullscreen-menu-wrap nav.technoKs-nav ul.main-menu > li.menu-item-has-children > a {
	 padding-right: 50px;
 }
 .technoKs-fullscreen-menu-wrap nav.technoKs-nav ul.main-menu > li.menu-item-has-children > a::before,
 .technoKs-fullscreen-menu-wrap nav.technoKs-nav ul.main-menu > li.menu-item-has-children > a::after {
	 content: '';
	 width: 32px;
	 height: 4px;
	 display: block;
	 background: var(--technoKs-s-menu-link);
	 position: absolute;
	 right: 0;
	 top: 50%;
	 margin-top: 5px;
 }
 .technoKs-fullscreen-menu-wrap nav.technoKs-nav ul.sub-menu > li.menu-item-has-children > a::before,
 .technoKs-fullscreen-menu-wrap nav.technoKs-nav ul.sub-menu > li.menu-item-has-children > a::after {
	 content: '';
	 width: 16px;
	 height: 2px;
	 display: block;
	 background: var(--technoKs-s-sub-menu-link);
	 position: absolute;
	 right: 0;
	 top: 50%;
	 margin-top: -3px;
 }
 .technoKs-fullscreen-menu-wrap nav.technoKs-nav li.menu-item-has-children > a::after {
	 transition: opacity 0.3s, transform 0.3s;
	 will-change: opacity, transform;
 }
 .technoKs-fullscreen-menu-wrap nav.technoKs-nav li.menu-item-has-children > a::after {
	 transform: rotate(90deg);
 }
 .technoKs-fullscreen-menu-wrap nav.technoKs-nav li.menu-item-has-children.is-open > a::after {
	 transform: rotate(90deg) translateX(200%);
	 opacity: 0;
 }
 .technoKs-fullscreen-menu-wrap nav.technoKs-nav ul.main-menu > li {
	 margin-bottom: 26px;
 }
 .technoKs-fullscreen-menu-wrap nav.technoKs-nav ul.main-menu > li > a {
	 font-family: var(--technoKs-t-heading-ff);
	 font-weight: var(--technoKs-t-heading-fw);
	 font-size: var(--technoKs-t-fullscreen-menu-fs);
	 line-height: 1.2em;
	 padding: 11px 0;
 }
 .technoKs-fullscreen-menu-wrap nav.technoKs-nav ul.sub-menu {
	 padding: 0 40px 0 55px;
	 margin: 0;
	 position: relative;
 }
 .technoKs-fullscreen-menu-wrap nav.technoKs-nav ul.sub-menu::after {
	 content: '';
	 display: block;
	 background: var(--technoKs-s-menu-link);
	 width: 4px;
	 height: 100%;
	 position: absolute;
	 right: 14px;
	 top: 0;
	 opacity: 0.5;
 }
 .technoKs-fullscreen-menu-wrap nav.technoKs-nav ul.sub-menu ul.sub-menu::after {
	 width: 2px;
	 right: 7px;
	 background: var(--technoKs-s-sub-menu-link);
	 opacity: 0.3;
	 transition: opacity 0.3s;
	 will-change: opacity;
 }
 .technoKs-fullscreen-menu-wrap nav.technoKs-nav ul.sub-menu a {
	 font-size: var(--technoKs-t-fullscreen-sub-menu-fs);
	 line-height: 1.8;
	 font-family: var(--technoKs-t-content-ff);
	 padding: 5px 0 6px 0;
	 color: var(--technoKs-s-sub-menu-link);
 }
 .technoKs-fullscreen-menu-wrap nav.technoKs-nav ul.sub-menu ul.sub-menu {
	 padding: 0 25px 10px 25px;
 }
 .technoKs-fullscreen-menu-wrap nav.technoKs-nav .main-menu li.current-menu-parent > a,
 .technoKs-fullscreen-menu-wrap nav.technoKs-nav .main-menu li.current-menu-item > a,
 .technoKs-fullscreen-menu-wrap nav.technoKs-nav .main-menu li.current-menu-ancestor > a {
	 color: var(--technoKs-s-menu-link-active);
 }
 .technoKs-fullscreen-menu-wrap nav.technoKs-nav .sub-menu li.current-menu-parent > a,
 .technoKs-fullscreen-menu-wrap nav.technoKs-nav .sub-menu li.current-menu-item > a,
 .technoKs-fullscreen-menu-wrap nav.technoKs-nav .sub-menu li.current-menu-ancestor > a {
	 color: var(--technoKs-s-sub-menu-link-active);
 }
 
 /* --- Mobile Menu --- */
 .technoKs-mobile-menu-wrap {
	 display: none;
 }
 
 /* 05. CONTENT
	----------- */
 .technoKs-main {
	 position: relative;
	 z-index: 2;
	 overflow: hidden;
 }
 .technoKs-main.technoKs-min-content {
	 display: flex;
	 align-items: center;
 }
 .technoKs-container {
	 display: block;
	 max-width: var(--technoKs-container-width);
	 margin: 0 auto;
	 padding: var(--technoKs-container-top-spacing) 0 var(--technoKs-container-bottom-spacing) 0;
	 transition: transform 0.3s;
	 will-change: transform;
 }
 body.technoKs-show-menu .technoKs-container,
 body.technoKs-show-menu .technoKs-page-background {
	 transform: scale(1.1);
 }
 .technoKs-container.half-top-spacing {
	 padding-top: calc(0.5 * var(--technoKs-container-top-spacing));
 }
 .technoKs-container.no-top-spacing {
	 padding-top: 0;
 }
 .technoKs-container.half-bottom-spacing {
	 padding-bottom: calc(0.5 * var(--technoKs-container-bottom-spacing));
 }
 .technoKs-container.no-bottom-spacing {
	 padding-bottom: 0;
 }
 .technoKs-page-background-wrap,
 .technoKs-page-background {
	 position: absolute;
	 left: 0;
	 top: 0;
	 width: 100%;
	 height: 100%;
	 overflow: hidden;
	 pointer-events: none;
 }
 .technoKs-page-background {
	 background-position: center;
	 background-size: cover;
	 will-change: transform;
	 transition: transform 0.5s;
 }
 .technoKs-page-background.is-fixed {
	 position: fixed;
 }
 .technoKs-page-background:not(.is-fixed)::before {
	 content: '';
	 position: absolute;
	 left: 0;
	 top: 0;
	 width: 100%;
	 height: 100%;
	 display: block;
	 background: var(--technoKs-s-overlay-gradient);
	 z-index: 3;
 }
 .technoKs-page-background video {
	 position: absolute;
	 left: 50%;
	 top: 50%;
	 height: 100%;
	 width: 100%;
	 object-fit: cover;
	 display: block;
	 transform: translate(-50%,-50%);
 }
 .technoKs-data-background {
	 background: no-repeat center;
	 background-size: cover;
 }
 .technoKs-page-title,
 .technoKs-page-subtitle {
	 margin: 0;
 }
 .technoKs-page-intro {
	 padding-top: var(--technoKs-bottom-gap-large);
 }
 
 /* 06. FOOTER
	---------- */
 #technoKs-footer {
	 position: relative;
	 width: 100%;
	 z-index: 33;
 }
 #technoKs-footer.is-sticky {
	 position: fixed;
	 left: 0;
	 bottom: 0;
	 pointer-events: none;
 }
 #technoKs-footer.is-sticky a {
	 pointer-events: all;
 }
 #technoKs-footer .technoKs-footer-inner {
	 display: flex;
	 justify-content: space-between;
	 padding: var(--technoKs-footer-spacing);
	 font-size: var(--technoKs-t-footer-fs);
	 line-height: 1.7em;
 }
 .technoKs-copyright {
	 color: var(--technoKs-s-footer-copyright);
 }
 .technoKs-socials-list {
	 padding: 0;
	 margin: 0;
	 display: flex;
 }
 .technoKs-socials-list li {
	 margin: 0 40px 0 0;
	 padding: 0;
	 list-style: none;
 }
 .technoKs-socials-list li:last-child {
	 margin: 0;
 }
 .technoKs-socials-list a {
	 display: inline-block;
	 transition: transform 0.12s;
	 will-change: transform;
	 position: relative;
 }
 .technoKs-socials-list a::before {
	 content: '';
	 position: absolute;
	 left: -10px;
	 top: -10px;
	 right: -10px;
	 bottom: -10px;
 }
 #technoKs-footer a {
	 color: var(--technoKs-s-footer-link);
 }
 
 /* 07. ALBUMS LISTING
	------------------ */
 .technoKs-main > canvas {
	 opacity: 0;
	 will-change: opacity, transform;
	 transition: opacity 0.5s, transform 0.5s;
 }
 .technoKs-main > canvas.is-loaded {
	 opacity: 1;
 }
 .technoKs-gl-container-wrap.is-loaded .technoKs-gl-container {
	 opacity: 1;
 }
 .technoKs-gl-container {
	 transition: opacity 0.5s;
	 will-change: opacity;
	 opacity: 0;
 }
 .technoKs-gl-container-wrap::after {
	 content: '';
	 width: 64px;
	 height: 64px;
	 display: block;
	 position: absolute;
	 top: calc(50% - 32px);
	 left: calc(50% - 32px);
	 border-radius: 50%;
	 border: 2px solid transparent;
	 border-top-color: var(--technoKs-s-content);
	 opacity: 0;
	 will-change: opacity, transform;
	 transition: opacity 0.2s;
 }
 .technoKs-gl-container-wrap:not(.is-loaded)::after {
	 opacity: 1;
	 animation: technoKs_spin 1s infinite;
 }
 
 /* --- Galleries Navigation --- */
 .technoKs-gallery-nav {
	 width: 64px;
	 height: 64px;
	 display: block;
	 position: absolute;
	 top: 50%;
	 display: flex;
	 justify-content: center;
	 align-items: center;
	 z-index: 7;
	 opacity: 0.7;
	 will-change: opacity;
	 transition: opacity 0.3s, border-color 0.3s, transform 0.12s;
	 pointer-events: all;
	 margin-top: -32px;
	 background: #00000040;
	 border-radius: 50%;
 }
 .technoKs-gallery-nav::after {
	 content: '';
	 width: calc(100% - 4px);
	 height: calc(100% - 4px);
	 display: block;
	 position: absolute;
	 left: 0;
	 top: 0;
	 border-radius: 50%;
	 border: 2px solid var(--technoKs-s-heading);
	 transition: opacity 0.3s, transform 0.3s;
	 will-change: opacity, transform;
	 transform: scale(1);
 }
 .technoKs-gallery-nav__prev {
	 left: 50px;
 }
 .technoKs-gallery-nav__prev::before {
	 content: '\f341';
	 transform: translateX(-1px);
 }
 .technoKs-gallery-nav__next {
	 right: 50px;
 }
 .technoKs-gallery-nav__next::before {
	 content: '\f345';
	 transform: translateX(1px);
 }
 .technoKs-gallery-nav::before {
	 font-family: 'dashicons';
	 color: var(--technoKs-s-heading);
	 font-size: 24px;
	 line-height: 1;
 }
 .technoKs-gallery-nav.is-disabled {
	 opacity: 0.25;
	 pointer-events: none;
 }
 .technoKs-gallery-nav span {
	 position: absolute;
	 display: block;
	 white-space: nowrap;
	 font-size: var(--technoKs-t-meta-fs);
	 color: var(--technoKs-s-heading);
	 pointer-events: none;
	 will-change: transform, opacity;
	 opacity: 0;
	 transform: translateY(10px);
	 transition: opacity 0.3s, transform 0.3s;
	 text-shadow: 0 0 8px #00000080;
 }
 .technoKs-gallery-nav__prev span {
	 left: 100%;
	 padding-left: 20px;
 }
 .technoKs-gallery-nav__next span {
	 right: 100%;
	 padding-right: 20px;
 }
 
 /* --- GL Carousel Gallery --- */
 .technoKs-gl-carousel-canvas {
	 position: fixed;
	 left: 0;
	 top: 0;
	 z-index: 0;
	 pointer-events: none;
 }
 .technoKs-gl-carousel-gallery-wrap {
	 position: fixed;
	 left: 0;
	 top: 0;
	 width: 100%;
	 height: 100%;
	 display: block;
	 overflow: hidden;
	 cursor: grab;
	 z-index: 4;
 }
 .technoKs-gl-carousel-gallery-wrap::before {
	 content: '';
	 position: fixed;
	 left: 0;
	 top: 0;
	 width: 100%;
	 height: 100%;
	 display: block;
	 background: linear-gradient(0deg, #000000a0 0%,#00000080 25%,#00000000 50%, #00000000 100%);
	 z-index: 5;
	 pointer-events: none;
 }
 .technoKs-gl-carousel-gallery-wrap.is-grabbed {
	 cursor: grabbing;
 }
 .technoKs-gl-carousel-gallery {
	 position: absolute;
	 left: 0;
	 top: 0;
	 height: 100%;
	 display: flex;
	 flex-wrap: nowrap;
	 z-index: 7;
	 padding-left: 25vw;
 }
 .technoKs-gl-gallery-item {
	 width: 50vw;
	 height: 100%;
	 display: flex;
	 justify-content: center;
	 align-items: flex-end;
	 position: relative;
	 z-index: 7;
	 pointer-events: none;
	 padding-bottom: 200px;
	 transition: opacity 0.5s;
	 will-change: opacity;
	 opacity: 0.4;
 }
 .technoKs-gl-gallery-item.is-active {
	 pointer-events: all;
	 opacity: 1;
 }
 .technoKs-gl-gallery-item a {
	 cursor: pointer;
 }
 .technoKs-gl-gallery-item__content {
	 position: relative;
	 transition: transform 1s;
	 will-change: transform;
 }
 .technoKs-gl-gallery-item__content > a {
	 position: absolute;
	 left: 0;
	 top: 0;
	 width: 100%;
	 height: 100%;
	 display: block;
 }
 .technoKs-gl-gallery__meta {
	 margin: 0 0 8px 0;
	 display: block;
	 color: var(--technoKs-s-heading);
	 opacity: 0.75;
 }
 .technoKs-gl-gallery__caption {
	 display: block;
	 width: 100%;
	 text-align: center;
	 font-size: var(--technoKs-t-caption-fs);
	 line-height: 1;
	 margin: 0 0 4px 0;
	 text-shadow: 0 0 12px #00000080;
 }
 .technoKs-gl-gallery__caption sup {
	 margin-right: 6px;
 }
 .technoKs-gl-gallery__explore {
	 display: inline-block;
	 float: right;
	 opacity: 0;
	 color: var(--technoKs-s-heading);
	 transition: opacity 0.5s;
	 will-change: opacity;
 }
 .is-active .technoKs-gl-gallery__explore {
	 opacity: 0.75;
 }
 .technoKs-gl-gallery-item video {
	 position: absolute;
	 left: 0;
	 top: 0;
	 pointer-events: none;
	 width: 1px;
	 height: 1px;
	 opacity: 0;
 }
 
 /* --- GL Roll Gallery --- */
 .technoKs-gl-roll-canvas {
	 position: fixed;
	 left: 0;
	 top: 0;
	 z-index: 0;
	 pointer-events: none;
 }
 .technoKs-gl-roll-gallery-wrap {
	 position: fixed;
	 left: 0;
	 top: 0;
	 width: 100%;
	 height: 100%;
	 overflow: hidden;
	 cursor: grabbing;
	 z-index: 4;
 }
 .technoKs-gl-roll-gallery-wrap.is-grabbed {
	 cursor: grab;
 }
 .technoKs-gl-roll-gallery-wrap::before {
	 content: '';
	 height: 100%;
	 width: 100%;
	 position: absolute;
	 pointer-events: none;
	 left: 0;
 }
 .technoKs-gl-roll-gallery-wrap::before {
	 top: 0;
	 background: linear-gradient(0deg, #000000c0 0% #00000000 12.5%, #00000000 87.5% #000000c0 100%);
 }
 .technoKs-gl-roll-gallery {
	 position: absolute;
	 left: 0;
	 top: 0;
	 width: 100%;
	 min-height: 100%;
	 padding-top: 25vh;
	 z-index: 3;
 }
 .technoKs-gl-roll-gallery > div.technoKs-gl-gallery-item {
	 height: 50vh;
	 padding: 0 120px;
	 display: flex;
	 justify-content: flex-start;
	 align-items: center;
	 width: calc(50vw + 120px);
 }
 .technoKs-gl-roll-gallery .technoKs-album-link {
	 position: absolute;
	 left: -40px;
	 top: -40px;
	 width: calc(100% + 80px);
	 height: calc(100% + 80px);
	 display: block;
	 pointer-events: none;
 }
 .technoKs-gl-roll-gallery .is-active .technoKs-album-link {
	 pointer-events: all;
 }
 .technoKs-gl-roll-gallery .technoKs-gl-gallery__caption {
	 text-align: left;
 }
 .technoKs-gl-roll-gallery .technoKs-gl-gallery-item__content {
	 transition: transform 1s;
	 will-change: transform;
	 position: relative;
 }
 
 .technoKs-gl-roll-gallery-wrap .technoKs-gallery-nav__prev {
	 right: 138px;
	 left: auto;
 }
 .technoKs-gl-roll-gallery-wrap .technoKs-gallery-nav__prev::before {
	 content: "\f343";
	 transform: translate(1px, -2px);
 }
 .technoKs-gl-roll-gallery-wrap .technoKs-gallery-nav__next {
	 right: 50px;
 }
 .technoKs-gl-roll-gallery-wrap .technoKs-gallery-nav__next::before {
	 content: "\f347";
	 transform: translate(1px, 2px);
 }
 .technoKs-gl-roll-gallery-wrap .technoKs-gallery-nav span {
	 left: 50%;
	 right: auto;
 }
 .technoKs-gl-roll-gallery-wrap .technoKs-gallery-nav__prev span {
	 padding: 0 0 20px 0;
	 bottom: 100%;
	 transform: translate(-50%, 10px);
 }
 .technoKs-gl-roll-gallery-wrap .technoKs-gallery-nav__next span {
	 padding: 20px 0 0 0;
	 top: 100%;
	 transform: translate(-50%, -10px);
 }
 
 /* --- GL Slider --- */
 .technoKs-gl-slider-canvas {
	 position: fixed;
	 left: 0;
	 top: 0;
	 z-index: 0;
	 pointer-events: none;
 }
 .technoKs-gl-slider-gallery-wrap {
	 width: 100%;
	 height: 100%;
	 position: absolute;
	 left: 0;
	 top: 0;
	 cursor: grab;
	 z-index: 4;
 }
 .is-grabbed.technoKs-gl-slider-gallery-wrap {
	 cursor: grabbing;
 }
 .technoKs-gl-slider-gallery {
	 position: absolute;
	 left: 0;
	 top: 0;
	 width: 100%;
	 height: 100%;
	 display: block;
 }
 .technoKs-gl-slider-gallery::before {
	 content: '';
	 position: absolute;
	 left: 0;
	 top: 0;
	 width: 100%;
	 height: 100%;
	 display: block;
	 background: linear-gradient(0deg, #000000a0 0%,#00000080 25%,#00000000 50%, #00000000 100%);
 }
 .technoKs-gl-slider-gallery > div {
	 position: absolute;
	 left: 0;
	 top: 0;
	 width: 100%;
	 height: 100%;
	 transition: opacity 1s;
	 will-change: opacity;
	 opacity: 0;
	 z-index: 5;
 }
 .technoKs-gl-slider-gallery > div.is-active {
	 opacity: 1;
 }
 .technoKs-gl-slider-gallery .technoKs-gl-gallery__meta {
	 color: var(--technoKs-s-heading);
	 opacity: 0.7;
 }
 
 /* --- Flat Carousel --- */
 .technoKs-carousel-gallery-wrap {
	 display: block;
	 width: 100%;
	 height: 100%;
	 overflow: hidden;
	 position: fixed;
	 left: 0;
	 top: 0;
	 cursor: grab;
	 transition: transform 0.5s;
	 will-change: transform;
 }
 .technoKs-show-menu .technoKs-carousel-gallery-wrap {
	 transform: scale(1.1);
 }
 .technoKs-carousel-gallery-wrap::before {
	 content: '';
	 position: fixed;
	 left: 0;
	 top: 0;
	 width: 100%;
	 height: 100%;
	 display: block;
	 background: linear-gradient(0deg, #000000a0 0%,#00000080 25%,#00000000 50%, #00000000 100%);
	 z-index: 2;
	 pointer-events: none;
 }
 .technoKs-carousel-gallery-wrap.is-grabbed {
	 cursor: grabbing;
 }
 .technoKs-carousel-gallery {
	 display: flex;
	 flex-wrap: nowrap;
	 width: auto;
	 min-width: 100%;
	 align-items: center;
	 position: absolute;
	 left: 0;
	 top: 0;
	 height: 100%;
	 will-change: transform;
	 z-index: 1;
 }
 .technoKs-carousel-gallery > div {
	 will-change: transform;
	 transition: transform 0.5s;
	 position: relative;
 }
 .technoKs-carousel-gallery.has-zoomed > div:not(.is-zoomed) {
	 transform: scale(0.9);
 }
 .technoKs-carousel-gallery > div.is-active.is-zoomed {
	 transform: scale(1.1);
 }
 .technoKs-carousel-gallery > div.is-active {
	 z-index: 3;
 }
 .technoKs-carousel-gallery > div .technoKs-gallery-item__content {
	 display: none;
 }
 .technoKs-carousel-gallery img,
 .technoKs-carousel-gallery video {
	 height: 100%;
	 width: auto;
	 display: block;
	 max-width: none;
	 transition: opacity 0.5s;
	 opacity: 0.5;
 }
 .technoKs-carousel-gallery .is-active img,
 .technoKs-carousel-gallery .is-active video {
	 opacity: 1;
 }
 .technoKs-carousel-gallery-captions {
	 padding: 0 25vw;
	 display: flex;
	 flex-wrap: nowrap;
	 height: 100%;
	 position: absolute;
	 left: 0;
	 top: 0;
	 margin: 0;
	 align-items: flex-end;
	 will-change: transform;
	 z-index: 3;
 }
 .technoKs-carousel-gallery-captions li {
	 list-style: none;
	 margin: 0;
	 display: flex;
	 justify-content: center;
	 padding: 0 0 120px 0;
	 width: 50vw;
	 position: relative;
	 z-index: 7;
	 transition: opacity 0.5s;
	 opacity: 0.3;
	 pointer-events: none;
 }
 .technoKs-carousel-gallery-captions li.is-active {
	 opacity: 1;
	 pointer-events: all;
 }
 .technoKs-carousel-gallery-captions div {
	 position: relative;
 }
 .technoKs-carousel-gallery-captions .technoKs-gallery-item__content {
	 will-change: transform;
	 transition: transform 0.5s;
 }
 .technoKs-carousel-gallery-captions .technoKs-gallery__explore {
	 display: inline-block;
	 float: right;
	 opacity: 0.75;
	 will-change: opacity;
	 color: var(--technoKs-s-heading);
	 transition: opacity 0.5s;
 }
 .technoKs-carousel-gallery-captions .technoKs-album-link {
	 position: absolute;
	 left: 0;
	 top: 0;
	 width: 100%;
	 height: 100%;
	 display: block;
 }
 .technoKs-carousel-gallery-captions .technoKs-gallery__meta {
	 margin: 0 0 8px 0;
	 display: block;
	 color: var(--technoKs-s-heading);
	 opacity: 0.75;
 }
 .technoKs-carousel-gallery-captions .technoKs-gallery__caption {
	 display: block;
	 width: 100%;
	 text-align: center;
	 font-size: var(--technoKs-t-caption-fs);
	 line-height: 1;
	 margin: 0 0 4px 0;
 }
 .technoKs-carousel-gallery-captions .technoKs-gallery__caption sup {
	 margin-right: 6px;
 }
 
 /* --- Flat Grid --- */
 .technoKs-item-zoom-hover .technoKs-grid-gallery-item {
	 overflow: visible;
 }
 .technoKs-grid-item__inner {
	 width: 100%;
	 position: relative;
	 transition: opacity 0.3s, transform 0.3s;
	 will-change: opacity, transform;
 }
 .technoKs-item-fade-hover.is-hover .technoKs-grid-gallery-item .technoKs-grid-item__inner {
	 opacity: 0.5;
 }
 .technoKs-item-fade-hover.is-hover .technoKs-grid-item__inner.is-hover {
	 opacity: 1;
 }
 .technoKs-item-zoom-hover.is-hover .technoKs-grid-item__inner {
	 transform: scale(0.98);
 }
 .technoKs-item-zoom-hover.is-hover .technoKs-grid-item__inner.is-hover {
	 transform: scale(1.05);
 }
 
 .technoKs-grid-item__inner a {
	 position: absolute;
	 left: 0;
	 top: 0;
	 width: 100%;
	 height: 100%;
	 display: block;
 }
 .technoKs-works-grid .technoKs-grid-item__image {
	 margin-bottom: 10px;
 }
 .technoKs-grid-item__image {
	 overflow: hidden;
 }
 .technoKs-works-grid-meta {
	 display: flex;
	 justify-content: space-between;
	 font-size: var(--technoKs-t-meta-fs);
	 color: var(--technoKs-s-meta);
	 line-height: 1.7;
 }
 .technoKs-grid-item__inner h5 {
	 margin: 0;
 }
 
 /* 08. ALBUM POST
	-------------- */
 .technoKs-fixed-album-title .technoKs-album-title {
	 display: block;
	 margin: 0 0 120px 0;
 }
 .technoKs-album-title .technoKs-albums-back {
	 display: inline-flex;
	 align-items: flex-start;
	 margin: 0;
 }
 .technoKs-album-title .technoKs-albums-back::before {
	 content: '\f341';
	 font-family: "dashicons";
	 color: var(--technoKs-s-link);
	 font-size: 20px;
	 line-height: 1em;
	 margin: 0 0 0 -26px;
	 padding-right: 8px;
	 display: flex;
	 align-items: center;
	 align-self: stretch;
 }
 .technoKs-album-title h1 {
	 margin: -6px 0 0 0;
 }
 .technoKs-album-title .technoKs-post-meta {
	 margin-top: -4px;
 }
 .technoKs-post-meta {
	 display: flex;
	 flex-wrap: wrap;
 }
 .technoKs-post-meta span {
	 display: block;
 }
 .technoKs-post-meta span:not(:last-child)::after {
	 content: '';
	 width: 2px;
	 height: 2px;
	 display: inline-block;
	 vertical-align: middle;
	 background: var(--technoKs-s-meta);
	 margin: 0 15px;
	 transform: translateY(-1px);
 }
 .technoKs-fixed-album-title {
	 position: fixed;
	 left: 0;
	 bottom: 0;
	 display: flex;
	 justify-content: center;
	 z-index: 9;
	 width: 100%;
	 padding-left: 28px;
 }
 .technoKs-grid--2cols.technoKs-item-zoom-hover.is-hover .technoKs-grid-item__inner.is-hover,
 .technoKs-grid-2cols.technoKs-item-zoom-hover.is-hover .technoKs-grid-item__inner.is-hover {
	 transform: scale(1.03);
 }
 
 /* --- Adjusted Grid Gallery --- */
 .technoKs-adjusted-grid .technoKs-grid-gallery-item {
	 align-items: center;
	 display: flex;
 }
 
 /* --- Bricks Grid Gallery --- */
 .technoKs-bricks-grid {
	 display: flex;
	 flex-wrap: wrap;
	 margin: calc(-0.5 * var(--technoKs-grid-gap));
 }
 .technoKs-bricks-grid > div {
	 margin: calc(0.5 * var(--technoKs-grid-gap));
 }
 .technoKs-bricks-1x2 > div {
	 width: calc(50% - var(--technoKs-grid-gap));
 }
 .technoKs-bricks-1x2 > div:nth-child(3n) {
	 width: calc(100% - var(--technoKs-grid-gap));
 }
 .technoKs-bricks-1x2.technoKs-item-zoom-hover.is-hover .technoKs-grid-item__inner.is-hover {
	 transform: scale(1.02);
 }
 .technoKs-bricks-1x2.technoKs-item-zoom-hover.is-hover > div:nth-child(3n) .technoKs-grid-item__inner {
	 transform: scale(0.99);
 }
 .technoKs-bricks-1x2.technoKs-item-zoom-hover.is-hover > div:nth-child(3n) .technoKs-grid-item__inner.is-hover {
	 transform: scale(1.01);
 }
 .technoKs-bricks-2x3 > div {
	 width: calc(33.33% - var(--technoKs-grid-gap));
 }
 .technoKs-bricks-2x3 > div:nth-child(5n),
 .technoKs-bricks-2x3 > div:nth-child(5n - 1) {
	 width: calc(50% - var(--technoKs-grid-gap));
 }
 .technoKs-bricks-2x3.technoKs-item-zoom-hover.is-hover > div:nth-child(5n) .technoKs-grid-item__inner.is-hover,
 .technoKs-bricks-2x3.technoKs-item-zoom-hover.is-hover > div:nth-child(5n - 1) .technoKs-grid-item__inner.is-hover {
	 transform: scale(1.02);
 }
 
 /* --- Masonry Grid Gallery --- */
 .technoKs-masonry.technoKs-grid-gallery > div {
	 margin: 0;
	 padding: calc(0.5 * var(--technoKs-grid-gap));
	 position: absolute;
 }
 .technoKs-masonry.technoKs-grid-2cols > div {
	 width: 50%;
 }
 .technoKs-masonry.technoKs-grid-3cols > div {
	 width: 33.33%;
 }
 .technoKs-masonry.technoKs-grid-4cols > div {
	 width: 25%;
 }
 
 /* --- Justified Grid Gallery --- */
 .technoKs-justified-fade-hover.justified-gallery > .entry-visible img {
	 transition: opacity 0.3s;
	 will-change: opacity;
 }
 .technoKs-justified-image-zoom-hover.justified-gallery > .entry-visible img {
	 transition: transform 0.3s;
	 will-change: transform;
 }
 .technoKs-justified-image-zoom-hover.technoKs-justified-fade-hover.justified-gallery > .entry-visible img {
	 transition: opacity 0.3s, transform 0.3s;
	 will-change: opacity transform;
 }
 .technoKs-justified-zoom-hover.justified-gallery > a.entry-visible {
	 transition: transform 0.3s;
	 will-change: transform;
 }
 .technoKs-justified-fade-hover.is-hovered.justified-gallery > .entry-visible img {
	 opacity: 0.5;
 }
 .technoKs-justified-fade-hover.is-hovered.justified-gallery > a.entry-visible.is-hovered img {
	 opacity: 1;
 }
 .technoKs-justified-zoom-hover.is-hovered.justified-gallery > a.entry-visible {
	 transform: scale(0.98);
 }
 .technoKs-justified-zoom-hover.is-hovered.justified-gallery > a.entry-visible.is-hovered {
	 transform: scale(1.03);
 }
 
 /* --- Next Album --- */
 .technoKs-next-album-wrap {
	 position: relative;
	 display: flex;
	 justify-content: center;
	 text-align: center;
 }
 .technoKs-next-album-title {
	 position: relative;
 }
 .technoKs-next-album-wrap a {
	 position: relative;
	 z-index: 5;
 }
 .technoKs-next-album-wrap h4 {
	 position: relative;
	 z-index: 3;
	 margin: 0;
 }
 .technoKs-next-album-wrap .technoKs-page-background {
	 width: 256px;
	 height: 256px;
	 right: -128px;
	 left: auto;
	 top: calc(50% - 128px);
	 border-radius: 50%;
	 transition: opacity 0.3s, transform 0.3s;
	 will-change: opacity, transform;
	 z-index: 1;
	 opacity: 0;
	 transform: scale(0.9);
 }
 .technoKs-next-album-wrap .technoKs-page-background.is-hover {
	 opacity: 0.5;
	 transform: scale(1);
 }
 .technoKs-next-album-wrap .technoKs-page-background::before {
	 display: none;
 }
 
 /* --- Fullscreen Albums Navigation --- */
 .technoKs-album-nav-prev,
 .technoKs-album-nav-next {
	 position: absolute;
	 bottom: 170px;
	 height: 64px;
	 z-index: 11;
	 max-width: 25vw;
 }
 .technoKs-album-nav-prev {
	 left: 50px;
 }
 .technoKs-album-nav-next {
	 right: 50px;
 }
 .technoKs-prev-album-link,
 .technoKs-next-album-link {
	 height: 64px;
	 transition: transform 0.3s, opacity 0.3s;
	 will-change: transform;
	 opacity: 0.5;
	 display: flex;
	 align-items: center;
	 position: relative;
 }
 .technoKs-prev-album-link::before,
 .technoKs-next-album-link::before {
	 content: '';
	 position: absolute;
	 z-index: 1;
	 top: -10px;
	 right: -30px;
	 bottom: -10px;
	 left: -30px;
	 display: block;
	 border-radius: 42px;
	 overflow: hidden;
	 transition: opacity 0.3s;
	 will-change: opacity;
 }
 .technoKs-prev-album-link::before {
	 background: linear-gradient(90deg, #0E0E1040 0%, #0E0E1020 40%, #0E0E1000 80%);
 }
 .technoKs-next-album-link::before {
	 background: linear-gradient(270deg, #0E0E1040 0%, #0E0E1020 40%, #0E0E1000 80%);
 }
 
 .technoKs-prev-album-link .technoKs-data-background,
 .technoKs-next-album-link .technoKs-data-background {
	 position: absolute;
	 top: 0;
	 width: 64px;
	 height: 64px;
	 background: no-repeat center;
	 background-size: cover;
	 border-radius: 50%;
	 opacity: 0;
	 transform: scale(0);
	 will-change: opacity, transform;
	 transition: opacity 0.3s, transform 0.3s;
 }
 .technoKs-prev-album-link .technoKs-data-background {
	 left: -20px;
 }
 .technoKs-next-album-link .technoKs-data-background {
	 right: -20px;
 }
 
 .technoKs-prev-album-link > span,
 .technoKs-next-album-link > span {
	 max-width: 25vw;
	 display: flex;
	 flex-direction: column;
	 white-space: nowrap;
	 font-size: var(--technoKs-t-meta-fs);
	 line-height: 1.2;
	 color: var(--technoKs-s-meta);
	 position: relative;
	 z-index: 3;
	 transition: transform 0.3s;
	 will-change: transform;
 }
 .technoKs-prev-album-link > span span,
 .technoKs-next-album-link > span span {
	 font-size: var(--technoKs-t-content-fs);
	 color: var(--technoKs-s-heading);
	 display: block;
	 margin-top: 4px;
 }
 .technoKs-prev-album-link > span {
	 align-items: flex-start;
 }
 .technoKs-next-album-link > span {
	 align-items: flex-end;
 }
 
 /* 09. ELEMENTS
	------------ */
 .technoKs-owl-container.owl-carousel {
	cursor: grab;
 }
 .technoKs-owl-container.owl-carousel.owl-grab {
	cursor: grabbing;
 }
 .technoKs-owl-container.owl-carousel button.owl-dot {
	width: 12px;
	height: 12px;
	display: block;
	background: none;
	border: 0;
	margin: 0 12px;
	display: flex;
	align-items: center;
	justify-content: center;
 }
 .technoKs-owl-container.owl-carousel button.owl-dot span {
	 width: 8px;
	 height: 8px;
	 transition: opacity 0.3s, transform 0.3s;
	 border-radius: 50%;
	 background: var(--technoKs-s-heading);
	 display: block;
	 opacity: 0.5;
	 position: relative;
 }
 .technoKs-owl-container.owl-carousel button.owl-dot span::before {
	 content: '';
	 display: block;
	 position: absolute;
	 top: -6px;
	 right: -6px;
	 bottom: -6px;
	 left: -6px;
 }
 .technoKs-owl-container.owl-carousel button.owl-dot.active span {
	 transform: scale(1.5);
	 opacity: 1;
 }
 .technoKs-owl-container .owl-dots {
	 display: flex;
	 justify-content: center;
	 padding: 40px 0 0 0;
 }
 
 /* --- CTA --- */
 .technoKs-cta {
	 text-align: center;
 }
 .technoKs-cta h2 {
	 margin: 0;
 }
 
 /* --- Price Item --- */
 .technoKs-price-item {
	 display: block;
	 background: var(--technoKs-s-bg-container);
	 padding: 35px 40px 40px 40px;
	 position: relative;
 }
 .technoKs-price-item::before{
	 content: '';
	 position: absolute;
	 left: 0;
	 top: 0;
	 width: 100%;
	 height: 100%;
	 display: block;
	 opacity: 0.1;
	 background: radial-gradient(circle, #84ABD5 0%, #84ABD500) no-repeat bottom right;
	 background-size: 200% 200%;
	 pointer-events: none;
 }
 .technoKs-price-item--head {
	 margin-bottom: 44px;
 }
 .technoKs-price-item--heading {
	 font-family: var(--technoKs-t-heading-ff);
	 font-weight: var(--technoKs-t-heading-fw);
	 line-height: var(--technoKs-t-heading-lh);
	 color: var(--technoKs-s-heading);
	 font-size: var(--technoKs-t-h4-fs);
	 margin-bottom: 44px;
 }
 .technoKs-price-item--price {
	 font-family: var(--technoKs-t-heading-ff);
	 font-weight: var(--technoKs-t-heading-fw);
	 line-height: var(--technoKs-t-heading-lh);
	 color: var(--technoKs-s-heading);
	 font-size: var(--technoKs-t-h2-fs);
 }
 .technoKs-price-item--price-descr {
	 font-size: var(--technoKs-t-meta-fs);
	 color: var(--technoKs-s-meta);
	 line-height: 1;
 }
 .technoKs-price-item--content {
	 padding: 0 0 55px 0;
 }
 .technoKs-price-item--list-heading {
	 font-family: var(--technoKs-t-heading-ff);
	 font-weight: var(--technoKs-t-heading-fw);
	 line-height: var(--technoKs-t-heading-lh);
	 color: var(--technoKs-s-heading);
	 font-size: var(--technoKs-t-h6-fs);
	 margin: 0 0 24px 0;
 }
 .technoKs-price-item--list {
	 padding: 0;
	 margin: 0
 }
 .technoKs-price-item--list li {
	 list-style: none;
	 margin: 0 0 1em 0;
	 padding: 0;
	 display: flex;
	 align-items: center;
 }
 .technoKs-price-item--list li:last-child {
	 margin: 0;
 }
 .technoKs-price-item--list li::before {
	 content: "\f15e";
	 font-family: "dashicons";
	 display: inline-flex;
	 align-items: center;
	 justify-content: center;
	 margin-right: 12px;
	 width: 20px;
	 height: 20px;
	 font-size: 20px;
	 line-height: 1;
 }
 .technoKs-price-item--footer {
	 display: flex;
	 justify-content: center;
 }
 
 /* --- Toggles --- */
 .technoKs-toggles-item {
	 border-bottom: 2px solid var(--technoKs-s-content);
	 margin-bottom: 30px;
 }
 .technoKs-toggles-item:last-child {
	 margin: 0;
 }
 .technoKs-toggles-item--title {
	 display: block;
	 font-size: var(--technoKs-t-h5-fs);
	 font-family: var(--technoKs-t-heading-ff);
	 font-weight: var(--technoKs-t-heading-fw);
	 line-height: var(--technoKs-t-heading-lh);
	 color: var(--technoKs-s-heading);
	 cursor: pointer;
	 position: relative;
	 margin: 0 0 28px 0;
	 padding: 0 40px 0 0;
 }
 .technoKs-toggles-item--title::before,
 .technoKs-toggles-item--title::after {
	 content: '';
	 width: 16px;
	 height: 2px;
	 background: var(--technoKs-s-heading);
	 display: block;
	 position: absolute;
	 right: 0;
	 top: 50%;
	 margin-top: 1px;
 }
 .technoKs-toggles-item--title::after {
	 transition: transform 0.3s;
	 will-change: transform;
	 transform: rotate(90deg);
 }
 .technoKs-toggles-item--title.is-active::after {
	 transform: rotate(180deg);
 }
 .technoKs-toggles-item--title sup {
	 opacity: 0.25;
	 margin-right: 0;
 }
 .technoKs-toggles-item--title {
	 transition: opacity 0.3s;
	 will-change: opacity;
	 opacity: 0.75;
 }
 .technoKs-toggles-item--title.is-active {
	 opacity: 1;
 }
 .technoKs-toggles-item--content {
	 padding: 4px 0px 37px 20px;
 }
 
 /* --- Counter --- */
 .technoKs-counter {
	 display: flex;
	 flex-direction: column;
	 align-items: center;
	 background: var(--technoKs-s-bg-container);
	 padding: 24px 20px 30px 20px;
 }
 .technoKs-counter-number {
	 font-size: var(--technoKs-t-caption-fs);
	 font-family: var(--technoKs-t-heading-ff);
	 font-weight: var(--technoKs-t-heading-fw);
	 line-height: var(--technoKs-t-heading-lh);
	 color: var(--technoKs-s-heading);
	 margin-bottom: 8px;
 }
 
 /* --- Grid Gallery --- */
 .technoKs-grid-gallery {
	 display: grid;
	 grid-column-gap: var(--technoKs-grid-gap);
	 grid-row-gap: var(--technoKs-grid-gap);
 }
 .technoKs-grid-gallery img {
	 display: block;
	 width: 100%;
	 height: auto;
 }
 .technoKs-grid-gallery > div {
	 position: relative;
	 overflow: hidden;
 }
 .technoKs-grid-gallery > div a {
	 display: block;
 }
 
 /* --- Before After --- */
 .technoKs-before-after {
	 position: relative;
	 overflow: hidden;
	 cursor: grab;
 }
 .technoKs-before-after img {
	 display: block;
	 width: 100%;
	 height: auto;
	 opacity: 0;
 }
 .technoKs-before-after div.technoKs-before-after-img {
	 position: absolute;
	 left: 0;
	 top: 0;
	 height: 100%;
	 width: 100%;
	 background: no-repeat center;
	 background-size: cover;
 }
 .technoKs-before-after.technoKs-before-after--h div.technoKs-before-after-img {
	 background-position: left center;
 }
 .technoKs-before-after.technoKs-before-after--v div.technoKs-before-after-img {
	 background-position: center top;
 }
 .technoKs-before-after div.technoKs-after-img-wrap {
	 width: 50%;
	 overflow: hidden;
	 display: flex;
	 flex-wrap: nowrap;
 }
 .technoKs-before-after div.technoKs-after-img {
	 width: 100%;
	 background: no-repeat center;
	 background-size: cover;
	 position: absolute;
	 left: 0;
	 top: 0;
 }
 .technoKs-before-after div.technoKs-after-img img {
	 display: block;
	 max-width: none;
 }
 .technoKs-before-after-divider {
	 display: block;
	 position: absolute;
	 left: 0;
	 top: 0;
	 pointer-events: none;
	 background: var(--technoKs-s-bg-body);
	 width: 4px;
	 height: 100%;
	 z-index: 5;
	 transform: translateX(-2px);
 }
 .technoKs-before-after-divider::before {
	 content: '';
	 display: block;
	 width: 40px;
	 height: 40px;
	 background: var(--technoKs-s-bg-body);
	 transform: rotate(45deg);
	 margin: -20px 0 0 -20px;
	 position: absolute;
	 left: 50%;
	 top: 50%;
	 z-index: 3;
 }
 .technoKs-before-after-divider svg {
	 position: absolute;
	 left: 50%;
	 top: 50%;
	 width: 24px;
	 height: 14px;
	 margin: -8px 0 0 -12px;
	 z-index: 5;
	 display: block;
 }
 
 /* --- Team Carousel --- */
 .technoKs-cards-carousel-wrap {
	 max-width: 100%;
	 overflow: hidden;
	 display: block;
 }
 .technoKs-team-carousel .technoKs-carousel-card__image {
	 margin: 0 0 16px 0;
 }
 .technoKs-carousel-card__heading h5 {
	 margin: 0 0 0 0;
 }
 .technoKs-carousel-card__caption {
	 color: var(--technoKs-s-meta);
	 font-size: var(--technoKs-t-meta-fs);
	 margin: -4px 0 0 0px;
 }
 .technoKs-carousel-card__heading sup {
	 display: none;
 }
 
 /* --- Testimonials --- */
 .technoKs-testimonials-grid {
	 margin: -20px;
	 display: flex;
	 flex-wrap: wrap;
	 position: relative;
 }
 .technoKs-testimonials-grid.is-hover .technoKs-testimonials-item {
	 opacity: 0.3;
 }
 .technoKs-testimonials-grid.is-hover .technoKs-testimonials-item.is-hover {
	 opacity: 1;
 }
 .technoKs-testimonials-item.is-hover .technoKs-testimonials-item_inner {
	 transform: scale(1.07);
 }
 .technoKs-testimonials-item {
	 padding: 20px;
	 will-change: opacity;
	 opacity: 0.3s;
 }
 .technoKs-testimonials-item_inner {
	 transition: transform 0.3s;
	 will-change: transform;
 }
 .technoKs-testimonials-2cols .technoKs-testimonials-item {
	 width: 50%;
 }
 .technoKs-testimonials-3cols .technoKs-testimonials-item {
	 width: 33.33%;
 }
 .technoKs-testimonials-4cols .technoKs-testimonials-item {
	 width: 25%;
 }
 .technoKs-testimonials-5cols .technoKs-testimonials-item {
	 width: 20%;
 }
 .technoKs-testimonials-item__author {
	 display: flex;
	 justify-content: space-between;
	 position: relative;
	 z-index: 3;
	 min-height: 100px;
 }
 .technoKs-testimonials-item__author img {
	 width: 100px;
	 border-radius: 50%;
 }
 .technoKs-testimonials-item__author-name {
	 text-align: right;
 }
 .technoKs-testimonials-item__author-name h6 {
	 margin: 5px 0 0 0;
 }
 .technoKs-testimonials-item__author-name span {
	 color: var(--technoKs-s-meta);
	 font-size: var(--technoKs-t-meta-fs);
	 transform: translateY(-2px);
	 display: block;
 }
 .technoKs-testimonials-item__content {
	 background: var(--technoKs-s-bg-container);
	 padding: 10px 20px 18px 20px;
	 margin: -30px 0 0 20px;
	 position: relative;
 }
 .technoKs-testimonials-item__content::before{
	 content: '';
	 position: absolute;
	 left: 0;
	 top: 0;
	 width: 100%;
	 height: 100%;
	 display: block;
	 opacity: 0.05;
	 background: radial-gradient(circle, #84ABD5 0%, #84ABD500) no-repeat bottom center;
	 background-size: 200% 200%;
	 pointer-events: none;
 }
 .technoKs-testimonials-item__stars {
	 text-align: right;
	 margin: 0 0 4px 0;
 }
 .technoKs-testimonials-item__stars::before {
	 font-family: "dashicons";
	 color: var(--technoKs-s-heading);
	 font-size: 16px;
	 line-height: 20px;
 }
 .technoKs-testimonials-item__stars.technoKs-stars0::before {
	 content: '\f154\f154\f154\f154\f154';
 }
 .technoKs-testimonials-item__stars.technoKs-stars1::before {
	 content: '\f155\f154\f154\f154\f154';
 }
 .technoKs-testimonials-item__stars.technoKs-stars2::before {
	 content: '\f155\f155\f154\f154\f154';
 }
 .technoKs-testimonials-item__stars.technoKs-stars3::before {
	 content: '\f155\f155\f155\f154\f154';
 }
 .technoKs-testimonials-item__stars.technoKs-stars4::before {
	 content: '\f155\f155\f155\f155\f154';
 }
 .technoKs-testimonials-item__stars.technoKs-stars5::before {
	 content: '\f155\f155\f155\f155\f155';
 }
 
 /* 10. WIDGETS
	----------- */
 .technoKs-widget--contacts__descr {
	 margin-bottom: 40px;
 }
 .technoKs-contact-details__list {
	 padding: 0;
	 margin: 0;
 }
 .technoKs-contact-details__list li {
	 list-style: none;
	 margin: 0;
	 padding: 0;
	 display: flex;
	 flex-wrap: nowrap;
	 align-items: center;
 }
 .technoKs-contact-details__list li:not(:last-child) {
	 margin-bottom: 24px;
 }
 .technoKs-contact-details__list.has-labels > li {
	 padding-left: 60px;
	 min-height: 40px;
	 position: relative;
 }
 .technoKs-contact-details__list li i {
	 border: 2px solid var(--technoKs-s-heading);
	 color: var(--technoKs-s-heading);
	 width: 40px;
	 height: 40px;
	 display: flex;
	 justify-content: center;
	 align-items: center;
	 border-radius: 50%;
	 opacity: 1;
	 position: absolute;
	 left: 0;
	 top: 0;
 }
 .technoKs-contact-details__list .technoKs-socials-list li {
	 margin: 0 28px 0 0;
 }
 
 /* 11. RIGHT CLICK PROTECTION MESSAGE
	---------------------------------- */
 .technoKs-rcp-message {
	 position: fixed;
	 left: 0;
	 top: 0;
	 width: 100%;
	 height: 100%;
	 display: flex;
	 align-items: center;
	 justify-content: center;
	 pointer-events: none;
	 opacity: 0;
	 transition: opacity 0.3s;
	 will-change: opacity;
	 z-index: 999;
 }
 .technoKs-rcpm-overlay {
	 background: var(--technoKs-s-bg-body);
	 opacity: 0.9;
	 position: fixed;
	 left: 0;
	 top: 0;
	 width: 100%;
	 height: 100%;
	 z-index: 5;
	 cursor: pointer;
 }
 .technoKs-rcpm-box {
	 position: relative;
	 z-index: 7;
	 background: var(--technoKs-s-bg-container);
	 max-width: 480px;
	 padding: 40px 40px 40px 40px;
	 width: 100%;
	 overflow: hidden;
	 transition: transform 0.3s;
	 will-change: transform;
	 text-align: center;
	 transform: translateY(0px);
	 display: flex;
	 flex-direction: column;
	 align-items: center;
 }
 .technoKs-rcp-message-show .technoKs-rcp-message {
	 opacity: 1;
	 pointer-events: all;
 }
 .technoKs-rcp-message-show .technoKs-rcpm-box {
	 transform: translateY(0px);
 }
 
 /* 12. PRELOADER
	------------- */
 .technoKs-preloader-wrap {
	display: block;
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	z-index: 9999;
	transition: opacity 0.5s;
	will-change: opacity;
	background: var(--technoKs-s-bg-body);
 }
 .technoKs-preloader-spotlight.technoKs-spotlight {
	position: absolute;
 }
 
 /* --- Loading State --- */
 body.is-loading {
	overflow: hidden;
 }
 body.is-loading .technoKs-page-background {
	 transform: scale(1.05);
 }
 body.is-loading .technoKs-container {
	transform: scale(1);
	opacity: 0;
 }
 
 /* --- Loaded State --- */
 body.is-loaded .technoKs-preloader-wrap {
	opacity: 0;
	pointer-events: none;
 }
 
 /* --- Unloading State --- */
 body.technoKs-unload .technoKs-preloader-wrap {
	opacity: 1;
 }
 body.technoKs-unload {
	overflow: hidden;
 }
 body.technoKs-unload .technoKs-page-background,
 body.technoKs-unload .technoKs-container {
	transform: scale(1.1);
 }
 body.technoKs-unload.technoKs-show-menu .technoKs-nav {
	transition: transform 0.5s;
	transform: scale(0.9);
 }
 
 /* 13. BACK TO TOP
	--------------- */
 .technoKs-back2top-wrap.is-fixed {
	 transform: translateY(-50px);
 }
 .technoKs-back2top-wrap {
	 width: 64px;
	 height: 64px;
	 display: block;
	 position: fixed;
	 right: 50px;
	 bottom: 50px;
	 z-index: 99;
	 transition: opacity 0.3s, transform 0.3s;
 }
 .technoKs-back2top {
	 width: 64px;
	 height: 64px;
	 display: block;
	 position: absolute;
	 display: flex;
	 justify-content: center;
	 align-items: center;
	 opacity: 0.7;
	 will-change: opacity;
	 transition: opacity 0.3s, transform 0.12s;
	 background: #00000040;
	 border-radius: 50%;
 }
 .technoKs-back2top-wrap:not(.is-visible) {
	 pointer-events: none;
 }
 .technoKs-back2top-wrap:not(.is-visible) .technoKs-back2top {
	 pointer-events: none;
	 opacity: 0;
 }
 .technoKs-back2top::after {
	 content: '';
	 width: 100%;
	 height: 100%;
	 display: block;
	 position: absolute;
	 left: -2px;
	 top: -2px;
	 border: 2px solid var(--technoKs-s-heading);
	 border-radius: 50%;
	 transition: opacity 0.3s, transform 0.3s;
	 transform: scale(1);
	 will-change: opacity;
 }
 .technoKs-back2top::before {
	 content: "\f343";
	 transform: translateY(-1px);
	 font-family: "dashicons";
	 color: var(--technoKs-s-heading);
	 font-size: 24px;
	 line-height: 1;
 }
 .technoKs-back2top span {
	 position: absolute;
	 display: block;
	 white-space: nowrap;
	 font-size: var(--technoKs-t-meta-fs);
	 color: var(--technoKs-s-heading);
	 pointer-events: none;
	 will-change: transform, opacity;
	 opacity: 0;
	 transform: translate(-20px, 0);
	 transition: opacity 0.3s, transform 0.3s;
	 text-shadow: 0 0 8px #00000080;
	 right: 100%;
	 padding-right: 20px;
 }
 
 /* 14. INTERRACTIVE CURSOR
	----------------------- */
 .technoKs-cursor {
	 position: fixed;
	 left: 0;
	 top: 0;
	 transform: translate(50vw, 50vh);
	 z-index: 99999;
	 will-change: opacity, transform;
	 transition: opacity 0.3s;
	 opacity: 0;
	 pointer-events: none;
	 transform-origin: 0 0;
	 width: 48px;
	 height: 48px;
 }
 .technoKs-cursor.is-init {
	 opacity: 1;
 }
 .technoKs-cursor > div {
	 width: 48px;
	 height: 48px;
	 position: absolute;
	 left: 0;
	 top: 0;
	 display: block;
	 margin: -24px 0 0 -24px;
 }
 .technoKs-cursor--pointer {
	 border-radius: 50%;
	 border: 2px solid var(--technoKs-s-cursor);
	 will-change: transform;
	 transition: transform 0.3s, border 0.3s, opacity 0.3s;
	 opacity: 0.25;
	 box-shadow: 0 0 8px #0E0E1040, inset 0 0 4px #0E0E1040;
 }
 .technoKs-cursor--pointer::before {
	 content: '';
	 position: absolute;
	 top: -10px;
	 right: -10px;
	 bottom: -10px;
	 left: -10px;
	 border: transparent 2px solid;
	 border-top-color: var(--technoKs-s-cursor);
	 border-radius: 50%;
	 opacity: 0;
	 transition: opacity 0.3s, border 0.3s,
	 will-change: transform, opacity;
 }
 
 /* --- Scroll Cursor --- */
 .technoKs-cursor--arrowsNS,
 .technoKs-cursor--arrowsEW {
	 transition: transform 0.3s, opacity 0.3s;
	 will-change: opacity, transform;
	 transform: scale(0.5);
	 opacity: 0;
 }
 .technoKs-cursor--arrowsNS::before,
 .technoKs-cursor--arrowsNS::after,
 .technoKs-cursor--arrowsEW::before,
 .technoKs-cursor--arrowsEW::after {
	 font-family: "dashicons";
	 color: var(--technoKs-s-cursor);
	 font-size: 14px;
	 line-height: 1;
	 position: absolute;
	 display: block;
	 text-shadow: 0 0 8px #0E0E1040;
 }
 .technoKs-cursor--arrowsEW::before {
	 content: "\f341";
	 left: -20px;
	 top: 50%;
	 transform: translateY(-50%);
 }
 .technoKs-cursor--arrowsEW::after {
	 content: "\f345";
	 right: -20px;
	 top: 50%;
	 transform: translateY(-50%);
 }
 .technoKs-cursor--arrowsNS::before {
	 content: "\f343";
	 top: -20px;
	 left: 50%;
	 transform: translateX(-50%);
 }
 .technoKs-cursor--arrowsNS::after {
	 content: "\f347";
	 bottom: -20px;
	 left: 50%;
	 transform: translateX(-50%);
 }
 
 /* --- Cursor States --- */
 .is-scrollEW .technoKs-cursor--pointer,
 .is-scrollNS .technoKs-cursor--pointer {
	 border-width: 1.5px;
	 transform: scale(1.5);
	 opacity: 0.5;
 }
 .is-scrollEW .technoKs-cursor--arrowsEW,
 .is-scrollNS .technoKs-cursor--arrowsNS {
	 transform: scale(1.5);
	 opacity: 0.5;
 }
 .is-hover.is-scrollEW .technoKs-cursor--arrowsEW,
 .is-hover.is-scrollNS .technoKs-cursor--arrowsNS {
	 opacity: 0;
 }
 .is-hover:not(.is-busy) .technoKs-cursor--pointer {
	 border-width: 1px;
	 transform: scale(2);
	 opacity: 1;
 }
 .is-loading .technoKs-cursor--pointer::before,
 .is-busy .technoKs-cursor--pointer::before {
	 animation: technoKs_spin 1s ease-in-out infinite;
	 opacity: 1;
 }
 .is-loading .is-scrollEW .technoKs-cursor--arrowsEW,
 .is-loading .is-scrollNS .technoKs-cursor--arrowsNS,
 .is-busy.is-scrollEW .technoKs-cursor--arrowsEW,
 .is-busy.is-scrollNS .technoKs-cursor--arrowsNS {
	 opacity: 0;
 }
 .is-loading .is-scrollEW .technoKs-cursor--pointer::before,
 .is-loading .is-scrollNS .technoKs-cursor--pointer::before,
 .is-busy.is-scrollEW .technoKs-cursor--pointer::before,
 .is-busy.is-scrollNS .technoKs-cursor--pointer::before {
	 border-width: 1.5px;
 }
 .is-busy.is-scrollEW.is-hover .technoKs-cursor--pointer::before,
 .is-busy.is-scrollNS.is-hover .technoKs-cursor--pointer::before,
 .is-loading .is-hover .technoKs-cursor--pointer::before,
 .is-hover.is-busy .technoKs-cursor--pointer::before {
	 border-width: 1px;
 }
 
 /* 15. LAZY LOADING
	---------------- */
 .technoKs-lazy {
	 opacity: 0;
 }
 .technoKs-lazy-wrapper {
	 background: var(--technoKs-s-bg-container);
	 position: relative;
 }
 .technoKs-lazy-wrapper img {
	 will-change: opacity, transform;
	 transition: opacity 0.5s, transform 0.5s;
 }
 .technoKs-lazy-wrapper:not(.is-loaded) {
	 overflow: hidden;
 }
 .technoKs-lazy-wrapper:not(.is-loaded) img {
	 opacity: 0;
	 transform: scale(1.1);
 }
 .technoKs-lazy-wrapper::before {
	 content: '';
	 display: block;
	 width: 32px;
	 height: 32px;
	 border-radius: 50%;
	 position: absolute;
	 left: 50%;
	 top: 50%;
	 margin: -16px 0 0 -16px;
	 border: 2px solid transparent;
	 border-top-color: var(--technoKs-s-heading);
	 transition: opacity 0.3s;
	 opacity: 0;
 }
 .technoKs-lazy-wrapper:not(.is-loaded)::before {
	 opacity: 1;
	 animation: technoKs_spin 1s ease-in-out infinite;
 }
 
 /* 16. HOVER STATES
	---------------- */
 @media (hover: hover) {
	 /* --- Typography --- */
	 h1 a:hover,
	 h2 a:hover,
	 h3 a:hover,
	 h4 a:hover,
	 h5 a:hover,
	 h6 a:hover {
		color: var(--technoKs-s-heading);
	 }
	 a:hover {
		color: var(--technoKs-s-link-hover);
	 }
 
	 /* --- Forms and Fields --- */
	 input[type="button"]:hover,
	 input[type="reset"]:hover,
	 input[type="submit"]:hover,
	 button:not([class*='pswp']):not([class*='owl']):hover,
	 a.technoKs-button:hover {
		color: var(--technoKs-s-button-hover-text);
		border-color: var(--technoKs-s-button-hover-border);
		background: var(--technoKs-s-button-hover-bg);
	 }
 
	 /* --- Header --- */
	 nav.technoKs-nav .main-menu li:hover > a,
	 nav.technoKs-simple-nav .main-menu li:hover > a {
		color: var(--technoKs-s-menu-link-hover);
	 }
	 .technoKs-menu-toggler:hover i::after,
	 .technoKs-menu-toggler:hover i::before {
		background-color: var(--technoKs-s-menu-link-hover);
	 }
	 body:not(.technoKs-show-menu) .technoKs-menu-toggler:hover i::before {
		transform: translateX(-2px);
	 }
	 body:not(.technoKs-show-menu) .technoKs-menu-toggler:hover i::after {
		transform: translateX(2px);
	 }
	 .technoKs-fullscreen-menu-wrap nav.technoKs-nav ul.sub-menu > li:hover > ul.sub-menu::after {
		opacity: 0.5;
	 }
	 nav.technoKs-nav .sub-menu li:hover > a,
	 nav.technoKs-simple-nav .sub-menu li:hover > a {
		color: var(--technoKs-s-sub-menu-link-hover);
	 }
 
	 /* --- Footer --- */
	 #technoKs-footer a:hover {
		 transition: transform 0.12s, color 0.3s;
		 color: var(--technoKs-s-footer-link-hover);
	 }
 
	 /* --- Works Listing --- */
	 .technoKs-carousel-gallery-captions .technoKs-gallery-item__content:hover,
	 .technoKs-gl-container .technoKs-gl-gallery-item__content:hover {
		transform: scale(1.1);
	 }
	 .technoKs-gl-gallery-item__content:hover .technoKs-gl-gallery__explore {
		opacity: 1;
	 }
	 .technoKs-gallery-nav:hover {
		opacity: 1;
	 }
	 .technoKs-gallery-nav:hover span {
		opacity: 1;
		transform: translateY(0);
	 }
	 .technoKs-gallery-nav:hover::after {
		opacity: 0;
		transform: scale(1.5);
	 }
	 .technoKs-gl-roll-gallery .technoKs-gl-gallery-item__content:hover {
		transform: scale(1.1);
		transition: transform 0.5s;
	 }
	 .technoKs-gl-roll-gallery-wrap .technoKs-gallery-nav:hover span {
		transform: translate(-50%, 0);
	 }
 
	 /* --- Album Post --- */
	 .technoKs-albums-back {
		opacity: 0.75;
		transition: opacity 0.3s, transform 0.3s;
		will-change: opacity, transform;
	 }
	 .technoKs-albums-back:hover {
		opacity: 1;
		transform: scale(1.05);
	 }
	 .technoKs-justified-image-zoom-hover.justified-gallery > .entry-visible:hover img {
		transform: scale(1.05);
	 }
	 .technoKs-albums-prev a:hover,
	 .technoKs-albums-next a:hover {
		opacity: 1;
	 }
	 .technoKs-albums-prev a:hover::before {
		transform: translateX(-25px);
	 }
	 .technoKs-albums-next a:hover::before {
		transform: translateX(25px);
	 }
	 .technoKs-prev-album-link:hover,
	 .technoKs-next-album-link:hover {
		opacity: 1;
	 }
	 .technoKs-prev-album-link:hover::before,
	 .technoKs-next-album-link:hover::before {
		opacity: 0.5;
	 }
	 .technoKs-prev-album-link:hover > span {
		transform: translateX(64px);
	 }
	 .technoKs-next-album-link:hover > span {
		transform: translateX(-64px);
	 }
	 .technoKs-prev-album-link:hover .technoKs-data-background,
	 .technoKs-next-album-link:hover .technoKs-data-background {
		transform: scale(1);
		opacity: 1;
	 }
 
	 /* --- Elements --- */
	 .technoKs-underline:hover::after {
		transform: scale(0, 1);
	 }
	 .technoKs-zoom-hover > div img {
		transition: transform 0.3s;
		will-change: transform;
	 }
	 .technoKs-zoom-hover .technoKs-lightbox-link:hover .technoKs-lazy-wrapper.is-loaded img,
	 .technoKs-zoom-hover .technoKs-lightbox-link:hover img,
	 .technoKs-zoom-hover .technoKs-grid-item__inner:hover .technoKs-lazy-wrapper.is-loaded img,
	 .technoKs-zoom-hover .technoKs-grid-item__inner:hover img {
		transform: scale(1.03);
	 }
	 .technoKs-owl-container.owl-carousel button.owl-dot:hover span {
		opacity: 1;
	 }
	 .technoKs-toggles-item--title:hover {
		opacity: 1;
	 }
 
	 /* --- Widgets --- */
	 .technoKs-contact-details__list a:hover {
		transform: scale(1.1);
	 }
	 .technoKs-contact-details__list > li > a:hover {
		transform: scale(1.03);
	 }
 
	 /* --- Back 2 Top --- */
	 .technoKs-back2top:hover {
		transform: scale(1.05);
		opacity: 1;
	 }
	 .technoKs-back2top.is-fixed:hover {
		transform: translateY(-50px) scale(1.05);
	 }
	 .technoKs-back2top:hover span {
		opacity: 1;
		transform: translate(-0px, 0);
	 }
	 .technoKs-back2top:hover::after {
		opacity: 0;
		transform: scale(1.5);
	 }
 
	 /* --- PhotoSwipe UI --- */
	 .technoKs-pswp-close:hover i::before,
	 .technoKs-pswp-close:hover i::after {
		opacity: 1;
	 }
	 .technoKs-pswp-nav:hover {
		opacity: 1;
	 }
	 .technoKs-pswp-nav:hover::after {
		opacity: 0;
		transform: scale(1.5);
	 }
 }
 
 
 /* 17. ANIMATIONS
	-------------- */
 @keyframes technoKs_spin {
	 0% {
		 transform: rotate(0);
	 }
	 100% {
		 transform: rotate(360deg);
	 }
 }
 
 @keyframes technoKs_shake {
	 0% {
		 transform: translateX(0);
	 }
	 10% {
		 transform: translateX(-10px);
	 }
	 30% {
		 transform: translateX(10px);
	 }
	 50% {
		 transform: translateX(-10px);
	 }
	 70% {
		 transform: translateX(10px);
	 }
	 90% {
		 transform: translateX(-10px);
	 }
	 100% {
		 transform: translateX(0);
	 }
 }