/*
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(--anita-s-bg-body);
    color: var(--anita-s-content);
    font-family: var(--anita-t-content-ff);
    font-size: var(--anita-t-content-fs);
    line-height: var(--anita-t-content-lh);
    font-weight: var(--anita-t-content-fw);
    overflow-x: hidden;
    -webkit-tap-highlight-color: transparent;
}
body.is-init {
	opacity: 1;
}
body.anita-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;
}
.youtube-video {
    aspect-ratio: 16 / 9;
    width: 100%;
}
/* --- Grid --- */
section.anita-section.anita-section-no-spacing,
.anita-container section.anita-section:last-child {
	margin-bottom: 0;
}
section.anita-section {
	margin-bottom: var(--anita-section-gap);
	display: block;
	width: 100%;
}
section.anita-section.anita-section-grid-spacing {
	margin-bottom: var(--anita-grid-gap);
}

.anita-grid {
    display: grid;
    grid-column-gap: var(--anita-grid-gap);
    grid-row-gap: var(--anita-grid-gap);
    max-width: 100%;
}
.anita-grid.anita-grid-small-gap {
    grid-column-gap: var(--anita-grid-small-gap);
    grid-row-gap: var(--anita-grid-small-gap);
}
.anita-grid--2cols {
    grid-template-columns: repeat(2, 1fr);
}
.anita-grid--3cols {
    grid-template-columns: repeat(3, 1fr);
}
.anita-grid--4cols {
    grid-template-columns: repeat(4, 1fr);
}
.anita-grid--33-66 {
    grid-template-columns: 1fr 2fr;
    grid-auto-columns: minmax(33%, 66%);
}
.anita-grid--66-33 {
    grid-template-columns: 2fr 1fr;
}

.anita-grid--2cols > * {
    max-width: calc(var(--anita-container-width) * 0.5 - 0.5 * var(--anita-grid-gap));
}
.anita-grid--4cols > * {
    max-width: calc(var(--anita-container-width) * 0.25 - 0.5 * var(--anita-grid-gap));
}
.anita-grid--3cols > *,
.anita-grid--66-33 > :nth-child(2n),
.anita-grid--33-66 > :nth-child(2n+1) {
    max-width: calc(var(--anita-container-width) * 0.3333 - 0.5 * var(--anita-grid-gap));
}
.anita-grid--66-33 > :nth-child(2n+1),
.anita-grid--33-66 > :nth-child(2n) {
    max-width: calc(var(--anita-container-width) * 0.6666 - 0.5 * var(--anita-grid-gap));
}

.anita-offset-left--25 {
    padding-left: calc(25% + var(--anita-grid-gap) * 0.5);
}
.anita-offset-left--33 {
    padding-left: calc(33.33% + var(--anita-grid-gap) * 0.5);
}
.anita-offset-left--50 {
    padding-left: calc(50% + var(--anita-grid-gap) * 0.5);
}
.anita-offset-left--66 {
    padding-left: calc(66.66% + var(--anita-grid-gap) * 0.5);
}

.anita-offset-right--25 {
    padding-right: calc(25% + var(--anita-grid-gap) * 0.5);
}
.anita-offset-right--33 {
    padding-right: calc(33.33% + var(--anita-grid-gap) * 0.5);
}
.anita-offset-right--50 {
    padding-right: calc(50% + var(--anita-grid-gap) * 0.5);
}
.anita-offset-right--66 {
    padding-right: calc(66.66% + var(--anita-grid-gap) * 0.5);
}

.anita-bottom-gap--none,
section.anita-bottom-gap--none,
div.anita-bottom-gap--none {
    margin-bottom: 0px;
}
.anita-bottom-gap--small,
section.anita-bottom-gap--small,
div.anita-bottom-gap--small {
    margin-bottom: var(--anita-bottom-gap-small);
}
.anita-bottom-gap--medium,
section.anita-bottom-gap--medium,
div.anita-bottom-gap--medium {
    margin-bottom: var(--anita-bottom-gap-medium);
}
.anita-bottom-gap--large,
section.anita-bottom-gap--large,
div.anita-bottom-gap--large {
    margin-bottom: var(--anita-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,
.anita-gallery-nav,
.anita-no-selection,
.anita-no-selection > *,
.anita-gl-container-wrap,
.anita-gl-gallery-item__content,
.anita-gallery-item__content,
.anita-toggles-item--title,
.anita-fixed-album-title,
header#anita-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 --- */
.anita-spotlight {
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    display: block;
    pointer-events: none;
    z-index: -1;
    overflow: hidden;
}
.anita-spotlight::before,
.anita-spotlight::after {
    content: '';
    position: absolute;
    left: -50vw;
    width: 200vw;
    height: 200vh;
    display: block;
}
.anita-spotlight::before {
    opacity: 0.07;
    top: -50vh;
    background: var(--anita-s-spotlight01);
	background-size: 100% 100%;
    transform: translate(0vw, -50vh);
}
.anita-spotlight::after {
    opacity: 0.05;
    bottom: -50vh;
    background: var(--anita-s-spotlight02);
	background-size: 100% 100%;
    transform: translate(0vw, 50vh);
}

/* 02. TYPOGRAPHY
   -------------- */
p {
	margin: 0 0 var(--anita-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(--anita-s-link);
}
ol,
ul {
	padding: 0 0 0 17px;
	margin: 0 0 var(--anita-t-content-lh) 0;
}
ol li,
ul li {
	padding: 0 0 0 13px;
}
strong {
   font-weight: var(--anita-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, .anita-caption {
    font-family: var(--anita-t-heading-ff);
    font-weight: var(--anita-t-heading-fw);
    line-height: var(--anita-t-heading-lh);
    margin: 0 0 var(--anita-t-content-lh) 0;
    color: var(--anita-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(--anita-s-heading);
}
h1 a, h2 a, h3 a, h4 a, h5 a, h6 a {
	color: var(--anita-s-heading);
}
h1 sup, h2 sup, h3 sup, h4 sup, h5 sup, h6 sup {
	color: var(--anita-s-heading);
    opacity: var(--anita-o-heading-sup);
}
.anita-caption {
    font-size: var(--anita-t-caption-fs);
    margin: 0;
}
.anita-caption.anita-caption-large,
h1.anita-page-title {
    font-size: var(--anita-t-title-fs);
}
h1 {
    font-size: var(--anita-t-h1-fs);
    margin: 0 0 var(--anita-t-h1-spacing) 0;
}
h2 {
    font-size: var(--anita-t-h2-fs);
    margin: 0 0 var(--anita-t-h2-spacing) 0;
}
h3 {
    font-size: var(--anita-t-h3-fs);
    margin: 0 0 var(--anita-t-h3-spacing) 0;
}
h4 {
    font-size: var(--anita-t-h4-fs);
    margin: 0 0 var(--anita-t-h4-spacing) 0;
}
h5 {
    font-size: var(--anita-t-h5-fs);
    margin: 0 0 var(--anita-t-h5-spacing) 0;
}
h6 {
    font-size: var(--anita-t-h6-fs);
    margin: 0 0 var(--anita-t-h6-spacing) 0;
}
.anita-underline {
    position: relative;
    display: inline-block;
}
.anita-underline::after {
    content: '';
    position: absolute;
    bottom: -2px;
    height: 2px;
    width: 100%;
    background: var(--anita-s-heading);
    display: block;
    transition: transform 0.3s;
    will-change: transition;
    transform-origin: 50% 50%;
}
.anita-meta {
    font-size: var(--anita-t-meta-fs);
    color: var(--anita-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,
textarea {
    width: 100%;
    display: block;
    font-family: var(--anita-t-content-ff);
    font-size: var(--anita-t-input-fs);
    font-weight: var(--anita-t-content-fw);
    line-height: 1.2em;
    color: var(--anita-s-input-text);
    border: 2px solid var(--anita-s-input-border);
    background: var(--anita-s-input-background);
    margin: 0 0 var(--anita-t-content-lh) 0;
    transition: border 0.3s, color 0.3s, background-color 0.3s;
    padding: 14px 16px 16px 16px;
}
input:focus,
textarea:focus {
    color: var(--anita-s-input-focus-text);
    background: var(--anita-s-input-focus-background);
    border-color: var(--anita-s-input-focus-border);
}
textarea {
    height: 197px;
}
.anita-input-wrap {
    margin: 0 0 var(--anita-t-content-lh) 0;
    position: relative;
}
.anita-input-wrap input,
.anita-input-wrap textarea {
    margin: 0;
    position: relative;
    z-index: 3;
}
.anita-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(--anita-s-input-text);
    font-size: var(--anita-t-input-fs);
    line-height: 1.2em;
    z-index: 5;
}
.anita-input-wrap span::before {
    content: '';
    width: calc(100% + 8px);
    height: 3px;
    display: block;
    position: absolute;
    left: -4px;
    bottom: 5px;
    z-index: -1;
    background: var(--anita-s-input-background);
    transition: background-color 0.3s, opacity 0.3s;
    will-change: opacity;
    opacity: 0;
}
.anita-input-wrap.is-focus span {
    color: var(--anita-s-input-focus-text);
}
.anita-input-wrap.is-focus span::before {
    background: var(--anita-s-input-focus-background);
}
.anita-input-wrap.is-valued span {
    transform: translate(-1px, -23px);
    font-size: 12px;
}
.anita-input-wrap.is-valued span::before {
    opacity: 1;
}
.anita-input-wrap.is-error input,
.anita-input-wrap.is-error textarea {
    border-color: var(--anita-s-input-border-error);
    color: var(--anita-s-input-color-error);
}
.anita-input-wrap.is-error span {
    color: var(--anita-s-input-border-error);
}

input[type="button"],
input[type="reset"],
input[type="submit"],
button:not([class*='pswp']):not([class*='owl']),
a.anita-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(--anita-s-button-border);
    color: var(--anita-s-button-text);
    background: var(--anita-s-button-bg);
    padding: var(--anita-button-padding);
    font-size: var(--anita-t-button-fs);
    font-family: var(--anita-t-heading-ff);
    font-weight: var(--anita-t-heading-fw);
    line-height: 1em;
    -webkit-appearance: none;
	cursor: pointer;
	width: auto;
    text-align: center;
}
a.anita-button.is-fullwidth {
    width: 100%;
}
button.pswp__button {
    transition: transform 0.12s;
}

/* Contact Form */
.anita-contact-form {
    transition: transform 0.3s, opacity 0.3s;
    will-change: transform, opacity;
}
.anita-contact-form::after {
    content: '';
    width: 72px;
    height: 72px;
    border: 3px solid transparent;
    border-top-color: var(--anita-s-heading);
    border-radius: 50%;
    animation: anita_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;
}
.anita-contact-form.is-busy::after {
    opacity: 1;
}
.anita-contact-form.is-busy {
    opacity: 0.8;
    transform: scale(0.9);
    pointer-events: none;
}
.anita-contact-form.is-error {
    animation: anita_shake 0.3s linear;
}
.anita-contact-form__footer {
    display: flex;
    flex-wrap: nowrap;
    justify-content: flex-start;
    align-items: center;
}
.anita-contact-form__footer input[type="submit"] {
    margin: 0;
}
.anita-contact-form__response {
    padding-left: 40px;
    font-size: var(--anita-t-meta-fs);
    color: var(--anita-s-heading);
}

/* 04. HEADER
   ---------- */
header#anita-header {
    display: block;
	width: 100%;
	position: relative;
	z-index: 111;
    pointer-events: none;
}
header#anita-header.is-sticky {
    position: fixed;
    left: 0;
    top: 0;
}
.anita-header-inner {
    padding: var(--anita-header-spacing);
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: relative;
}
.anita-header-inner > div {
    position: relative;
    z-index: 3;
}
.anita-logo {
    display: block;
    pointer-events: all;
}

/* --- Simple Menu --- */
nav.anita-simple-nav .main-menu {
    display: flex;
    padding: 0;
    margin: 0;
}
nav.anita-simple-nav .main-menu li {
    display: block;
    position: relative;
    list-style: none;
    margin-left: 20px;
    padding: 0;
}
nav.anita-simple-nav .main-menu > li > a {
    font-size: var(--anita-t-simple-menu-fs);
    line-height: 1em;
    color: var(--anita-s-menu-link);
    padding: 8px 20px;
}
nav.anita-simple-nav .main-menu li a {
    display: block;
    transition: color 0.3s;
    pointer-events: auto;
}
nav.anita-simple-nav .main-menu li.current-menu-parent > a,
nav.anita-simple-nav .main-menu li.current-menu-item > a,
nav.anita-simple-nav .main-menu li.current-menu-ancestor > a {
    color: var(--anita-s-menu-link-active);
}
nav.anita-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(--anita-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.anita-simple-nav .sub-menu {
    position: absolute;
    left: 0;
    top: calc(100% + 10px);
    background: var(--anita-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.anita-simple-nav .main-menu > li > .sub-menu.anita-menu-offset {
    left: auto;
    right: 0;
}
nav.anita-simple-nav li.menu-item-has-children:hover::after,
nav.anita-simple-nav li.menu-item-has-children:hover > .sub-menu {
    opacity: 1;
    transform: scale(1, 1);
    pointer-events: all;
}
nav.anita-simple-nav li.menu-item-has-children:hover::after {
    transform: scale(1, 1) translateX(-8px);
}
nav.anita-simple-nav .sub-menu::before {
    content: '';
    width: 100%;
    height: 10px;
    top: -10px;
    display: block;
    position: absolute;
}
nav.anita-simple-nav .sub-menu li {
    margin: 0;
}
nav.anita-simple-nav .sub-menu li a {
    font-size: var(--anita-t-sub-menu-fs);
    line-height: 1em;
    color: var(--anita-s-sub-menu-link);
    padding: 13px 20px;
    pointer-events: inherit;
    transition: color 0.3s;
}
nav.anita-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.anita-simple-nav .sub-menu .sub-menu {
    top: -10px;
    left: calc(100% + 4px);
    transform: scale(1.05, 1);
    transform-origin: 0% 50%;
}
nav.anita-simple-nav .sub-menu .sub-menu.anita-menu-offset {
    right: calc(100% + 4px);
    left: auto;
}
nav.anita-simple-nav .sub-menu .sub-menu::before {
    width: 4px;
    height: 100%;
    left: -4px;
    top: 0;
}
nav.anita-simple-nav .sub-menu .sub-menu.anita-menu-offset::before {
    left: auto;
    right: -4px;
}
nav.anita-simple-nav .sub-menu li.current-menu-parent > a,
nav.anita-simple-nav .sub-menu li.current-menu-item > a,
nav.anita-simple-nav .sub-menu li.current-menu-ancestor > a {
    color: var(--anita-s-sub-menu-link-active);
}

/* --- Fullscreen Menu --- */
.anita-menu-toggler {
    width: 44px;
    height: 44px;
    display: block;
    position: relative;
    margin-right: -6px;
    pointer-events: all;
    transition: transform 0.12s;
}
.anita-mobile-menu-toggler {
    display: none;
}
.anita-menu-toggler::before {
    content: '';
    position: absolute;
    left: -10px;
    top: -10px;
    right: -10px;
    bottom: -10px;
    display: block;
}
.anita-menu-toggler i {
    width: 32px;
    height: 14px;
    position: absolute;
    left: 6px;
    top: 15px;
    display: block;
}
.anita-menu-toggler i::before,
.anita-menu-toggler i::after {
    content: '';
    display: block;
    background: var(--anita-s-menu-link);
    height: 3px;
    border-radius: 2px;
    position: absolute;
    transition: transform 0.3s, background-color 0.3s;
    will-change: transform;
    transform-origin: 0% 50%;
}
.anita-menu-toggler i::before {
    width: 100%;
    left: 0;
    top: 0;
}
.anita-menu-toggler i::after {
    width: 28px;
    right: 0;
    bottom: 0;
}
body.anita-show-menu .anita-menu-toggler i::before {
    transform: translate(5px, -6px) rotate(45deg);
}
body.anita-show-menu .anita-menu-toggler i::after {
    transform: translate(1px, 5px) rotate(-45deg) scale(1.14, 1);
}

.anita-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(--anita-s-bg-body);
}
.anita-mobile-menu-wrap {
    display: none;
}
.anita-show-menu .anita-fullscreen-menu-wrap {
    opacity: 1;
    pointer-events: all;
}
.anita-menu-overlay {
    background: var(--anita-s-bg-body);
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 5;
}
.anita-fullscreen-menu-wrap nav.anita-nav {
    overflow-y: scroll;
    max-width: var(--anita-container-width);
    min-width: 400px;
    max-height: 100vh;
    padding: var(--anita-container-top-spacing) 40px;
    position: relative;
    z-index: 7;
    transition: transform 0.5s;
    will-change: transform;
    transform: scale(0.85);
    scrollbar-width: none;
}
body.anita-show-menu .anita-fullscreen-menu-wrap nav.anita-nav {
    transform: scale(1);
}
body.anita-show-menu.anita-unload .anita-fullscreen-menu-wrap nav.anita-nav {
    transform: scale(1.2);
}
.anita-fullscreen-menu-wrap nav.anita-nav::-webkit-scrollbar {
    width: 0;
}
.anita-fullscreen-menu-wrap nav.anita-nav li {
    list-style: none;
}
.anita-fullscreen-menu-wrap nav.anita-nav sup {
    margin-right: 14px;
    opacity: 0.25;
}
.anita-fullscreen-menu-wrap nav.anita-nav ul.main-menu {
    padding: 0;
}
.anita-fullscreen-menu-wrap nav.anita-nav ul.main-menu li {
    padding: 0;
}
.anita-fullscreen-menu-wrap nav.anita-nav > ul.main-menu > li {
    transition: transform 0.3s, opacity 0.3s;
    will-change: transform, opacity;
}
.anita-fullscreen-menu-wrap nav.anita-nav > ul.main-menu > li.is-hidden {
    opacity: 0;
    transform: scale(0.9);
}
.anita-fullscreen-menu-wrap nav.anita-nav ul.main-menu a {
    transition: color 0.3s;
    display: block;
    color: var(--anita-s-menu-link);
    position: relative;
    overflow: hidden;
}
.anita-fullscreen-menu-wrap nav.anita-nav ul.main-menu > li.menu-item-has-children > a {
    padding-right: 50px;
}
.anita-fullscreen-menu-wrap nav.anita-nav ul.main-menu > li.menu-item-has-children > a::before,
.anita-fullscreen-menu-wrap nav.anita-nav ul.main-menu > li.menu-item-has-children > a::after {
    content: '';
    width: 32px;
    height: 4px;
    display: block;
    background: var(--anita-s-menu-link);
    position: absolute;
    right: 0;
    top: 50%;
    margin-top: 5px;
}
.anita-fullscreen-menu-wrap nav.anita-nav ul.sub-menu > li.menu-item-has-children > a::before,
.anita-fullscreen-menu-wrap nav.anita-nav ul.sub-menu > li.menu-item-has-children > a::after {
    content: '';
    width: 16px;
    height: 2px;
    display: block;
    background: var(--anita-s-sub-menu-link);
    position: absolute;
    right: 0;
    top: 50%;
    margin-top: -3px;
}
.anita-fullscreen-menu-wrap nav.anita-nav li.menu-item-has-children > a::after {
    transition: opacity 0.3s, transform 0.3s;
    will-change: opacity, transform;
}
.anita-fullscreen-menu-wrap nav.anita-nav li.menu-item-has-children > a::after {
    transform: rotate(90deg);
}
.anita-fullscreen-menu-wrap nav.anita-nav li.menu-item-has-children.is-open > a::after {
    transform: rotate(90deg) translateX(200%);
    opacity: 0;
}
.anita-fullscreen-menu-wrap nav.anita-nav ul.main-menu > li {
    margin-bottom: 26px;
}
.anita-fullscreen-menu-wrap nav.anita-nav ul.main-menu > li > a {
    font-family: var(--anita-t-heading-ff);
    font-weight: var(--anita-t-heading-fw);
    font-size: var(--anita-t-fullscreen-menu-fs);
    line-height: 1.2em;
    padding: 11px 0;
}
.anita-fullscreen-menu-wrap nav.anita-nav ul.sub-menu {
    padding: 0 40px 0 55px;
    margin: 0;
    position: relative;
}
.anita-fullscreen-menu-wrap nav.anita-nav ul.sub-menu::after {
    content: '';
    display: block;
    background: var(--anita-s-menu-link);
    width: 4px;
    height: 100%;
    position: absolute;
    right: 14px;
    top: 0;
    opacity: 0.5;
}
.anita-fullscreen-menu-wrap nav.anita-nav ul.sub-menu ul.sub-menu::after {
    width: 2px;
    right: 7px;
    background: var(--anita-s-sub-menu-link);
    opacity: 0.3;
    transition: opacity 0.3s;
    will-change: opacity;
}
.anita-fullscreen-menu-wrap nav.anita-nav ul.sub-menu a {
    font-size: var(--anita-t-fullscreen-sub-menu-fs);
    line-height: 1.8;
    font-family: var(--anita-t-content-ff);
    padding: 5px 0 6px 0;
    color: var(--anita-s-sub-menu-link);
}
.anita-fullscreen-menu-wrap nav.anita-nav ul.sub-menu ul.sub-menu {
    padding: 0 25px 10px 25px;
}
.anita-fullscreen-menu-wrap nav.anita-nav .main-menu li.current-menu-parent > a,
.anita-fullscreen-menu-wrap nav.anita-nav .main-menu li.current-menu-item > a,
.anita-fullscreen-menu-wrap nav.anita-nav .main-menu li.current-menu-ancestor > a {
    color: var(--anita-s-menu-link-active);
}
.anita-fullscreen-menu-wrap nav.anita-nav .sub-menu li.current-menu-parent > a,
.anita-fullscreen-menu-wrap nav.anita-nav .sub-menu li.current-menu-item > a,
.anita-fullscreen-menu-wrap nav.anita-nav .sub-menu li.current-menu-ancestor > a {
    color: var(--anita-s-sub-menu-link-active);
}

/* --- Mobile Menu --- */
.anita-mobile-menu-wrap {
    display: none;
}

/* 05. CONTENT
   ----------- */
.anita-main {
    position: relative;
    z-index: 2;
    overflow: hidden;
}
.anita-main.anita-min-content {
    display: flex;
    align-items: center;
}
.anita-container {
    display: block;
    max-width: var(--anita-container-width);
    margin: 0 auto;
    padding: var(--anita-container-top-spacing) 0 var(--anita-container-bottom-spacing) 0;
    transition: transform 0.3s;
    will-change: transform;
}
body.anita-show-menu .anita-container,
body.anita-show-menu .anita-page-background {
    transform: scale(1.1);
}
.anita-container.half-top-spacing {
    padding-top: calc(0.5 * var(--anita-container-top-spacing));
}
.anita-container.no-top-spacing {
    padding-top: 0;
}
.anita-container.half-bottom-spacing {
    padding-bottom: calc(0.5 * var(--anita-container-bottom-spacing));
}
.anita-container.no-bottom-spacing {
    padding-bottom: 0;
}
.anita-page-background-wrap,
.anita-page-background {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
    pointer-events: none;
}
.anita-page-background {
    background-position: center;
    background-size: cover;
    will-change: transform;
    transition: transform 0.5s;
}
.anita-page-background.is-fixed {
    position: fixed;
}
.anita-page-background:not(.is-fixed)::before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    display: block;
    background: var(--anita-s-overlay-gradient);
    z-index: 3;
}
.anita-page-background video {
    position: absolute;
    left: 50%;
    top: 50%;
    height: 100%;
    width: 100%;
    object-fit: cover;
    display: block;
    transform: translate(-50%,-50%);
}
.anita-data-background {
    background: no-repeat center;
    background-size: cover;
}
.anita-page-title,
.anita-page-subtitle {
    margin: 0;
}
.anita-page-intro {
    padding-top: var(--anita-bottom-gap-large);
}

/* 06. FOOTER
   ---------- */
#anita-footer {
    position: relative;
    width: 100%;
    z-index: 33;
}
#anita-footer.is-sticky {
    position: fixed;
    left: 0;
    bottom: 0;
    pointer-events: none;
}
#anita-footer.is-sticky a {
    pointer-events: all;
}
#anita-footer .anita-footer-inner {
    display: flex;
    justify-content: space-between;
    padding: var(--anita-footer-spacing);
    font-size: var(--anita-t-footer-fs);
    line-height: 1.7em;
}
.anita-copyright {
    color: var(--anita-s-footer-copyright);
}
.anita-socials-list {
    padding: 0;
    margin: 0;
    display: flex;
}
.anita-socials-list li {
    margin: 0 40px 0 0;
    padding: 0;
    list-style: none;
}
.anita-socials-list li:last-child {
    margin: 0;
}
.anita-socials-list a {
    display: inline-block;
    transition: transform 0.12s;
    will-change: transform;
    position: relative;
}
.anita-socials-list a::before {
    content: '';
    position: absolute;
    left: -10px;
    top: -10px;
    right: -10px;
    bottom: -10px;
}
#anita-footer a {
    color: var(--anita-s-footer-link);
}

/* 07. ALBUMS LISTING
   ------------------ */
.anita-main > canvas {
    opacity: 0;
    will-change: opacity, transform;
    transition: opacity 0.5s, transform 0.5s;
}
.anita-main > canvas.is-loaded {
    opacity: 1;
}
.anita-gl-container-wrap.is-loaded .anita-gl-container {
    opacity: 1;
}
.anita-gl-container {
    transition: opacity 0.5s;
    will-change: opacity;
    opacity: 0;
}
.anita-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(--anita-s-content);
    opacity: 0;
    will-change: opacity, transform;
    transition: opacity 0.2s;
}
.anita-gl-container-wrap:not(.is-loaded)::after {
    opacity: 1;
    animation: anita_spin 1s infinite;
}

/* --- Galleries Navigation --- */
.anita-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%;
}
.anita-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(--anita-s-heading);
    transition: opacity 0.3s, transform 0.3s;
    will-change: opacity, transform;
    transform: scale(1);
}
.anita-gallery-nav__prev {
    left: 50px;
}
.anita-gallery-nav__prev::before {
    content: '\f341';
    transform: translateX(-1px);
}
.anita-gallery-nav__next {
    right: 50px;
}
.anita-gallery-nav__next::before {
    content: '\f345';
    transform: translateX(1px);
}
.anita-gallery-nav::before {
    font-family: 'dashicons';
	color: var(--anita-s-heading);
	font-size: 24px;
	line-height: 1;
}
.anita-gallery-nav.is-disabled {
    opacity: 0.25;
    pointer-events: none;
}
.anita-gallery-nav span {
    position: absolute;
    display: block;
    white-space: nowrap;
    font-size: var(--anita-t-meta-fs);
    color: var(--anita-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;
}
.anita-gallery-nav__prev span {
    left: 100%;
    padding-left: 20px;
}
.anita-gallery-nav__next span {
    right: 100%;
    padding-right: 20px;
}

/* --- GL Carousel Gallery --- */
.anita-gl-carousel-canvas {
    position: fixed;
    left: 0;
    top: 0;
    z-index: 0;
    pointer-events: none;
}
.anita-gl-carousel-gallery-wrap {
    position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	display: block;
	overflow: hidden;
	cursor: grab;
    z-index: 4;
}
.anita-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;
}
.anita-gl-carousel-gallery-wrap.is-grabbed {
	cursor: grabbing;
}
.anita-gl-carousel-gallery {
    position: absolute;
	left: 0;
	top: 0;
	height: 100%;
	display: flex;
	flex-wrap: nowrap;
	z-index: 7;
	padding-left: 25vw;
}
.anita-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: 120px;
    transition: opacity 0.5s;
    will-change: opacity;
    opacity: 0.4;
}
.anita-gl-gallery-item.is-active {
    pointer-events: all;
    opacity: 1;
}
.anita-gl-gallery-item a {
    cursor: pointer;
}
.anita-gl-gallery-item__content {
    position: relative;
    transition: transform 1s;
    will-change: transform;
}
.anita-gl-gallery-item__content > a {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    display: block;
}
.anita-gl-gallery__meta {
    margin: 0 0 8px 0;
    display: block;
    color: var(--anita-s-heading);
    opacity: 0.75;
}
.anita-gl-gallery__caption {
    display: block;
    width: 100%;
    text-align: center;
    font-size: var(--anita-t-caption-fs);
    line-height: 1;
    margin: 0 0 4px 0;
    text-shadow: 0 0 12px #00000080;
}
.anita-gl-gallery__caption sup {
    margin-right: 6px;
}
.anita-gl-gallery__explore {
    display: inline-block;
    float: right;
    opacity: 0;
    color: var(--anita-s-heading);
    transition: opacity 0.5s;
    will-change: opacity;
}
.is-active .anita-gl-gallery__explore {
    opacity: 0.75;
}
.anita-gl-gallery-item video {
    position: absolute;
    left: 0;
    top: 0;
    pointer-events: none;
    width: 1px;
    height: 1px;
    opacity: 0;
}

/* --- GL Roll Gallery --- */
.anita-gl-roll-canvas {
    position: fixed;
    left: 0;
    top: 0;
    z-index: 0;
    pointer-events: none;
}
.anita-gl-roll-gallery-wrap {
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
    cursor: grabbing;
    z-index: 4;
}
.anita-gl-roll-gallery-wrap.is-grabbed {
    cursor: grab;
}
.anita-gl-roll-gallery-wrap::before {
    content: '';
    height: 100%;
    width: 100%;
    position: absolute;
    pointer-events: none;
    left: 0;
}
.anita-gl-roll-gallery-wrap::before {
    top: 0;
    background: linear-gradient(0deg, #000000c0 0% #00000000 12.5%, #00000000 87.5% #000000c0 100%);
}
.anita-gl-roll-gallery {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    min-height: 100%;
    padding-top: 25vh;
    z-index: 3;
}
.anita-gl-roll-gallery > div.anita-gl-gallery-item {
    height: 50vh;
    padding: 0 120px;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    width: calc(50vw + 120px);
}
.anita-gl-roll-gallery .anita-album-link {
    position: absolute;
    left: -40px;
    top: -40px;
    width: calc(100% + 80px);
    height: calc(100% + 80px);
    display: block;
    pointer-events: none;
}
.anita-gl-roll-gallery .is-active .anita-album-link {
    pointer-events: all;
}
.anita-gl-roll-gallery .anita-gl-gallery__caption {
    text-align: left;
}
.anita-gl-roll-gallery .anita-gl-gallery-item__content {
    transition: transform 1s;
    will-change: transform;
    position: relative;
}

.anita-gl-roll-gallery-wrap .anita-gallery-nav__prev {
    right: 138px;
    left: auto;
}
.anita-gl-roll-gallery-wrap .anita-gallery-nav__prev::before {
    content: "\f343";
    transform: translate(1px, -2px);
}
.anita-gl-roll-gallery-wrap .anita-gallery-nav__next {
    right: 50px;
}
.anita-gl-roll-gallery-wrap .anita-gallery-nav__next::before {
    content: "\f347";
    transform: translate(1px, 2px);
}
.anita-gl-roll-gallery-wrap .anita-gallery-nav span {
    left: 50%;
    right: auto;
}
.anita-gl-roll-gallery-wrap .anita-gallery-nav__prev span {
    padding: 0 0 20px 0;
    bottom: 100%;
    transform: translate(-50%, 10px);
}
.anita-gl-roll-gallery-wrap .anita-gallery-nav__next span {
    padding: 20px 0 0 0;
    top: 100%;
    transform: translate(-50%, -10px);
}

/* --- GL Slider --- */
.anita-gl-slider-canvas {
    position: fixed;
    left: 0;
    top: 0;
    z-index: 0;
    pointer-events: none;
}
.anita-gl-slider-gallery-wrap {
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    cursor: grab;
    z-index: 4;
}
.is-grabbed.anita-gl-slider-gallery-wrap {
    cursor: grabbing;
}
.anita-gl-slider-gallery {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    display: block;
}
.anita-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%);
}
.anita-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;
}
.anita-gl-slider-gallery > div.is-active {
    opacity: 1;
}
.anita-gl-slider-gallery .anita-gl-gallery__meta {
    color: var(--anita-s-heading);
    opacity: 0.7;
}

/* --- Flat Carousel --- */
.anita-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;
}
.anita-show-menu .anita-carousel-gallery-wrap {
    transform: scale(1.1);
}
.anita-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;
}
.anita-carousel-gallery-wrap.is-grabbed {
    cursor: grabbing;
}
.anita-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;
}
.anita-carousel-gallery > div {
    will-change: transform;
    transition: transform 0.5s;
    position: relative;
}
.anita-carousel-gallery.has-zoomed > div:not(.is-zoomed) {
    transform: scale(0.9);
}
.anita-carousel-gallery > div.is-active.is-zoomed {
    transform: scale(1.1);
}
.anita-carousel-gallery > div.is-active {
    z-index: 3;
}
.anita-carousel-gallery > div .anita-gallery-item__content {
    display: none;
}
.anita-carousel-gallery img,
.anita-carousel-gallery video {
    height: 100%;
    width: auto;
    display: block;
    max-width: none;
    transition: opacity 0.5s;
    opacity: 0.5;
}
.anita-carousel-gallery .is-active img,
.anita-carousel-gallery .is-active video {
    opacity: 1;
}
.anita-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;
}
.anita-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;
}
.anita-carousel-gallery-captions li.is-active {
    opacity: 1;
    pointer-events: all;
}
.anita-carousel-gallery-captions div {
    position: relative;
}
.anita-carousel-gallery-captions .anita-gallery-item__content {
    will-change: transform;
    transition: transform 0.5s;
}
.anita-carousel-gallery-captions .anita-gallery__explore {
    display: inline-block;
    float: right;
    opacity: 0.75;
    will-change: opacity;
    color: var(--anita-s-heading);
    transition: opacity 0.5s;
}
.anita-carousel-gallery-captions .anita-album-link {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    display: block;
}
.anita-carousel-gallery-captions .anita-gallery__meta {
    margin: 0 0 8px 0;
    display: block;
    color: var(--anita-s-heading);
    opacity: 0.75;
}
.anita-carousel-gallery-captions .anita-gallery__caption {
    display: block;
    width: 100%;
    text-align: center;
    font-size: var(--anita-t-caption-fs);
    line-height: 1;
    margin: 0 0 4px 0;
}
.anita-carousel-gallery-captions .anita-gallery__caption sup {
    margin-right: 6px;
}

/* --- Flat Grid --- */
.anita-item-zoom-hover .anita-grid-gallery-item {
    overflow: visible;
}
.anita-grid-item__inner {
    width: 100%;
    position: relative;
    transition: opacity 0.3s, transform 0.3s;
    will-change: opacity, transform;
}
.anita-item-fade-hover.is-hover .anita-grid-gallery-item .anita-grid-item__inner {
    opacity: 0.5;
}
.anita-item-fade-hover.is-hover .anita-grid-item__inner.is-hover {
    opacity: 1;
}
.anita-item-zoom-hover.is-hover .anita-grid-item__inner {
    transform: scale(0.98);
}
.anita-item-zoom-hover.is-hover .anita-grid-item__inner.is-hover {
    transform: scale(1.05);
}

.anita-grid-item__inner a {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    display: block;
}
.anita-works-grid .anita-grid-item__image {
    margin-bottom: 10px;
}
.anita-grid-item__image {
    overflow: hidden;
}
.anita-works-grid-meta {
    display: flex;
    justify-content: space-between;
    font-size: var(--anita-t-meta-fs);
    color: var(--anita-s-meta);
    line-height: 1.7;
}
.anita-grid-item__inner h5 {
    margin: 0;
}

/* 08. ALBUM POST
   -------------- */
.anita-fixed-album-title .anita-album-title {
    display: block;
    margin: 0 0 120px 0;
}
.anita-album-title .anita-albums-back {
    display: inline-flex;
    align-items: flex-start;
    margin: 0;
}
.anita-album-title .anita-albums-back::before {
    content: '\f341';
    font-family: "dashicons";
    color: var(--anita-s-link);
    font-size: 20px;
    line-height: 1em;
    margin: 0 0 0 -26px;
    padding-right: 8px;
    display: flex;
    align-items: center;
    align-self: stretch;
}
.anita-album-title h1 {
    margin: -6px 0 0 0;
}
.anita-album-title .anita-post-meta {
    margin-top: -4px;
}
.anita-post-meta {
    display: flex;
    flex-wrap: wrap;
}
.anita-post-meta span {
    display: block;
}
.anita-post-meta span:not(:last-child)::after {
    content: '';
    width: 2px;
    height: 2px;
    display: inline-block;
    vertical-align: middle;
    background: var(--anita-s-meta);
    margin: 0 15px;
    transform: translateY(-1px);
}
.anita-fixed-album-title {
    position: fixed;
    left: 0;
    bottom: 0;
    display: flex;
    justify-content: center;
    z-index: 9;
    width: 100%;
    padding-left: 28px;
}
.anita-grid--2cols.anita-item-zoom-hover.is-hover .anita-grid-item__inner.is-hover,
.anita-grid-2cols.anita-item-zoom-hover.is-hover .anita-grid-item__inner.is-hover {
    transform: scale(1.03);
}

/* --- Adjusted Grid Gallery --- */
.anita-adjusted-grid .anita-grid-gallery-item {
    align-items: center;
    display: flex;
}

/* --- Bricks Grid Gallery --- */
.anita-bricks-grid {
    display: flex;
    flex-wrap: wrap;
    margin: calc(-0.5 * var(--anita-grid-gap));
}
.anita-bricks-grid > div {
    margin: calc(0.5 * var(--anita-grid-gap));
}
.anita-bricks-1x2 > div {
    width: calc(50% - var(--anita-grid-gap));
}
.anita-bricks-1x2 > div:nth-child(3n) {
    width: calc(100% - var(--anita-grid-gap));
}
.anita-bricks-1x2.anita-item-zoom-hover.is-hover .anita-grid-item__inner.is-hover {
    transform: scale(1.02);
}
.anita-bricks-1x2.anita-item-zoom-hover.is-hover > div:nth-child(3n) .anita-grid-item__inner {
    transform: scale(0.99);
}
.anita-bricks-1x2.anita-item-zoom-hover.is-hover > div:nth-child(3n) .anita-grid-item__inner.is-hover {
    transform: scale(1.01);
}
.anita-bricks-2x3 > div {
    width: calc(33.33% - var(--anita-grid-gap));
}
.anita-bricks-2x3 > div:nth-child(5n),
.anita-bricks-2x3 > div:nth-child(5n - 1) {
    width: calc(50% - var(--anita-grid-gap));
}
.anita-bricks-2x3.anita-item-zoom-hover.is-hover > div:nth-child(5n) .anita-grid-item__inner.is-hover,
.anita-bricks-2x3.anita-item-zoom-hover.is-hover > div:nth-child(5n - 1) .anita-grid-item__inner.is-hover {
    transform: scale(1.02);
}

/* --- Masonry Grid Gallery --- */
.anita-masonry.anita-grid-gallery > div {
    margin: 0;
    padding: calc(0.5 * var(--anita-grid-gap));
    position: absolute;
}
.anita-masonry.anita-grid-2cols > div {
    width: 50%;
}
.anita-masonry.anita-grid-3cols > div {
    width: 33.33%;
}
.anita-masonry.anita-grid-4cols > div {
    width: 25%;
}

/* --- Justified Grid Gallery --- */
.anita-justified-fade-hover.justified-gallery > .entry-visible img {
    transition: opacity 0.3s;
    will-change: opacity;
}
.anita-justified-image-zoom-hover.justified-gallery > .entry-visible img {
    transition: transform 0.3s;
    will-change: transform;
}
.anita-justified-image-zoom-hover.anita-justified-fade-hover.justified-gallery > .entry-visible img {
    transition: opacity 0.3s, transform 0.3s;
    will-change: opacity transform;
}
.anita-justified-zoom-hover.justified-gallery > a.entry-visible {
    transition: transform 0.3s;
    will-change: transform;
}
.anita-justified-fade-hover.is-hovered.justified-gallery > .entry-visible img {
    opacity: 0.5;
}
.anita-justified-fade-hover.is-hovered.justified-gallery > a.entry-visible.is-hovered img {
    opacity: 1;
}
.anita-justified-zoom-hover.is-hovered.justified-gallery > a.entry-visible {
    transform: scale(0.98);
}
.anita-justified-zoom-hover.is-hovered.justified-gallery > a.entry-visible.is-hovered {
    transform: scale(1.03);
}

/* --- Next Album --- */
.anita-next-album-wrap {
    position: relative;
    display: flex;
    justify-content: center;
    text-align: center;
}
.anita-next-album-title {
    position: relative;
}
.anita-next-album-wrap a {
    position: relative;
    z-index: 5;
}
.anita-next-album-wrap h4 {
    position: relative;
    z-index: 3;
    margin: 0;
}
.anita-next-album-wrap .anita-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);
}
.anita-next-album-wrap .anita-page-background.is-hover {
    opacity: 0.5;
    transform: scale(1);
}
.anita-next-album-wrap .anita-page-background::before {
    display: none;
}

/* --- Fullscreen Albums Navigation --- */
.anita-album-nav-prev,
.anita-album-nav-next {
    position: absolute;
    bottom: 170px;
    height: 64px;
    z-index: 11;
    max-width: 25vw;
}
.anita-album-nav-prev {
    left: 50px;
}
.anita-album-nav-next {
    right: 50px;
}
.anita-prev-album-link,
.anita-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;
}
.anita-prev-album-link::before,
.anita-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;
}
.anita-prev-album-link::before {
    background: linear-gradient(90deg, #0E0E1040 0%, #0E0E1020 40%, #0E0E1000 80%);
}
.anita-next-album-link::before {
    background: linear-gradient(270deg, #0E0E1040 0%, #0E0E1020 40%, #0E0E1000 80%);
}

.anita-prev-album-link .anita-data-background,
.anita-next-album-link .anita-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;
}
.anita-prev-album-link .anita-data-background {
    left: -20px;
}
.anita-next-album-link .anita-data-background {
    right: -20px;
}

.anita-prev-album-link > span,
.anita-next-album-link > span {
    max-width: 25vw;
    display: flex;
    flex-direction: column;
    white-space: nowrap;
    font-size: var(--anita-t-meta-fs);
    line-height: 1.2;
    color: var(--anita-s-meta);
    position: relative;
    z-index: 3;
    transition: transform 0.3s;
    will-change: transform;
}
.anita-prev-album-link > span span,
.anita-next-album-link > span span {
    font-size: var(--anita-t-content-fs);
    color: var(--anita-s-heading);
    display: block;
    margin-top: 4px;
}
.anita-prev-album-link > span {
    align-items: flex-start;
}
.anita-next-album-link > span {
    align-items: flex-end;
}

/* 09. ELEMENTS
   ------------ */
.anita-owl-container.owl-carousel {
   cursor: grab;
}
.anita-owl-container.owl-carousel.owl-grab {
   cursor: grabbing;
}
.anita-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;
}
.anita-owl-container.owl-carousel button.owl-dot span {
    width: 8px;
    height: 8px;
    transition: opacity 0.3s, transform 0.3s;
    border-radius: 50%;
    background: var(--anita-s-heading);
    display: block;
    opacity: 0.5;
    position: relative;
}
.anita-owl-container.owl-carousel button.owl-dot span::before {
    content: '';
    display: block;
    position: absolute;
    top: -6px;
    right: -6px;
    bottom: -6px;
    left: -6px;
}
.anita-owl-container.owl-carousel button.owl-dot.active span {
    transform: scale(1.5);
    opacity: 1;
}
.anita-owl-container .owl-dots {
    display: flex;
    justify-content: center;
    padding: 40px 0 0 0;
}

/* --- CTA --- */
.anita-cta {
    text-align: center;
}
.anita-cta h2 {
    margin: 0;
}

/* --- Price Item --- */
.anita-price-item {
    display: block;
    background: var(--anita-s-bg-container);
    padding: 35px 40px 40px 40px;
    position: relative;
}
.anita-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;
}
.anita-price-item--head {
    margin-bottom: 44px;
}
.anita-price-item--heading {
    font-family: var(--anita-t-heading-ff);
    font-weight: var(--anita-t-heading-fw);
    line-height: var(--anita-t-heading-lh);
    color: var(--anita-s-heading);
    font-size: var(--anita-t-h4-fs);
    margin-bottom: 44px;
}
.anita-price-item--price {
    font-family: var(--anita-t-heading-ff);
    font-weight: var(--anita-t-heading-fw);
    line-height: var(--anita-t-heading-lh);
    color: var(--anita-s-heading);
    font-size: var(--anita-t-h2-fs);
}
.anita-price-item--price-descr {
    font-size: var(--anita-t-meta-fs);
    color: var(--anita-s-meta);
    line-height: 1;
}
.anita-price-item--content {
    padding: 0 0 55px 0;
}
.anita-price-item--list-heading {
    font-family: var(--anita-t-heading-ff);
    font-weight: var(--anita-t-heading-fw);
    line-height: var(--anita-t-heading-lh);
    color: var(--anita-s-heading);
    font-size: var(--anita-t-h6-fs);
    margin: 0 0 24px 0;
}
.anita-price-item--list {
    padding: 0;
    margin: 0
}
.anita-price-item--list li {
    list-style: none;
    margin: 0 0 1em 0;
    padding: 0;
    display: flex;
    align-items: center;
}
.anita-price-item--list li:last-child {
    margin: 0;
}
.anita-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;
}
.anita-price-item--footer {
    display: flex;
    justify-content: center;
}

/* --- Toggles --- */
.anita-toggles-item {
    border-bottom: 2px solid var(--anita-s-content);
    margin-bottom: 30px;
}
.anita-toggles-item:last-child {
    margin: 0;
}
.anita-toggles-item--title {
    display: block;
    font-size: var(--anita-t-h5-fs);
    font-family: var(--anita-t-heading-ff);
    font-weight: var(--anita-t-heading-fw);
    line-height: var(--anita-t-heading-lh);
    color: var(--anita-s-heading);
    cursor: pointer;
    position: relative;
    margin: 0 0 28px 0;
    padding: 0 40px 0 0;
}
.anita-toggles-item--title::before,
.anita-toggles-item--title::after {
    content: '';
    width: 16px;
    height: 2px;
    background: var(--anita-s-heading);
    display: block;
    position: absolute;
    right: 0;
    top: 50%;
    margin-top: 1px;
}
.anita-toggles-item--title::after {
    transition: transform 0.3s;
    will-change: transform;
    transform: rotate(90deg);
}
.anita-toggles-item--title.is-active::after {
    transform: rotate(180deg);
}
.anita-toggles-item--title sup {
    opacity: 0.25;
    margin-right: 0;
}
.anita-toggles-item--title {
    transition: opacity 0.3s;
    will-change: opacity;
    opacity: 0.75;
}
.anita-toggles-item--title.is-active {
    opacity: 1;
}
.anita-toggles-item--content {
    padding: 4px 0px 37px 20px;
}

/* --- Counter --- */
.anita-counter {
    display: flex;
    flex-direction: column;
    align-items: center;
    background: var(--anita-s-bg-container);
    padding: 24px 20px 30px 20px;
}
.anita-counter-number {
    font-size: var(--anita-t-caption-fs);
    font-family: var(--anita-t-heading-ff);
    font-weight: var(--anita-t-heading-fw);
    line-height: var(--anita-t-heading-lh);
    color: var(--anita-s-heading);
    margin-bottom: 8px;
}

/* --- Grid Gallery --- */
.anita-grid-gallery {
    display: grid;
    grid-column-gap: var(--anita-grid-gap);
    grid-row-gap: var(--anita-grid-gap);
}
.anita-grid-gallery img {
    display: block;
    width: 100%;
    height: auto;
}
.anita-grid-gallery > div {
    position: relative;
    overflow: hidden;
}
.anita-grid-gallery > div a {
    display: block;
}

/* --- Before After --- */
.anita-before-after {
	position: relative;
	overflow: hidden;
	cursor: grab;
}
.anita-before-after img {
	display: block;
	width: 100%;
	height: auto;
	opacity: 0;
}
.anita-before-after div.anita-before-after-img {
	position: absolute;
	left: 0;
	top: 0;
	height: 100%;
	width: 100%;
	background: no-repeat center;
	background-size: cover;
}
.anita-before-after.anita-before-after--h div.anita-before-after-img {
	background-position: left center;
}
.anita-before-after.anita-before-after--v div.anita-before-after-img {
	background-position: center top;
}
.anita-before-after div.anita-after-img-wrap {
	width: 50%;
	overflow: hidden;
	display: flex;
	flex-wrap: nowrap;
}
.anita-before-after div.anita-after-img {
	width: 100%;
	background: no-repeat center;
	background-size: cover;
	position: absolute;
	left: 0;
	top: 0;
}
.anita-before-after div.anita-after-img img {
	display: block;
	max-width: none;
}
.anita-before-after-divider {
	display: block;
	position: absolute;
	left: 0;
	top: 0;
	pointer-events: none;
    background: var(--anita-s-bg-body);
    width: 4px;
    height: 100%;
    z-index: 5;
    transform: translateX(-2px);
}
.anita-before-after-divider::before {
	content: '';
	display: block;
	width: 40px;
	height: 40px;
	background: var(--anita-s-bg-body);
	transform: rotate(45deg);
	margin: -20px 0 0 -20px;
	position: absolute;
	left: 50%;
	top: 50%;
	z-index: 3;
}
.anita-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 --- */
.anita-cards-carousel-wrap {
    max-width: 100%;
    overflow: hidden;
    display: block;
}
.anita-team-carousel .anita-carousel-card__image {
    margin: 0 0 16px 0;
}
.anita-carousel-card__heading h5 {
    margin: 0 0 0 0;
}
.anita-carousel-card__caption {
    color: var(--anita-s-meta);
    font-size: var(--anita-t-meta-fs);
    margin: -4px 0 0 0px;
}
.anita-carousel-card__heading sup {
    display: none;
}

/* --- Testimonials --- */
.anita-testimonials-grid {
    margin: -20px;
    display: flex;
    flex-wrap: wrap;
    position: relative;
}
.anita-testimonials-grid.is-hover .anita-testimonials-item {
    opacity: 0.3;
}
.anita-testimonials-grid.is-hover .anita-testimonials-item.is-hover {
    opacity: 1;
}
.anita-testimonials-item.is-hover .anita-testimonials-item_inner {
    transform: scale(1.07);
}
.anita-testimonials-item {
    padding: 20px;
    will-change: opacity;
    opacity: 0.3s;
}
.anita-testimonials-item_inner {
    transition: transform 0.3s;
    will-change: transform;
}
.anita-testimonials-2cols .anita-testimonials-item {
    width: 50%;
}
.anita-testimonials-3cols .anita-testimonials-item {
    width: 33.33%;
}
.anita-testimonials-4cols .anita-testimonials-item {
    width: 25%;
}
.anita-testimonials-5cols .anita-testimonials-item {
    width: 20%;
}
.anita-testimonials-item__author {
	display: flex;
	justify-content: space-between;
	position: relative;
	z-index: 3;
    min-height: 100px;
}
.anita-testimonials-item__author img {
	width: 100px;
    border-radius: 50%;
}
.anita-testimonials-item__author-name {
    text-align: right;
}
.anita-testimonials-item__author-name h6 {
    margin: 5px 0 0 0;
}
.anita-testimonials-item__author-name span {
    color: var(--anita-s-meta);
    font-size: var(--anita-t-meta-fs);
    transform: translateY(-2px);
    display: block;
}
.anita-testimonials-item__content {
    background: var(--anita-s-bg-container);
    padding: 10px 20px 18px 20px;
    margin: -30px 0 0 20px;
    position: relative;
}
.anita-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;
}
.anita-testimonials-item__stars {
	text-align: right;
	margin: 0 0 4px 0;
}
.anita-testimonials-item__stars::before {
	font-family: "dashicons";
	color: var(--anita-s-heading);
	font-size: 16px;
	line-height: 20px;
}
.anita-testimonials-item__stars.anita-stars0::before {
	content: '\f154\f154\f154\f154\f154';
}
.anita-testimonials-item__stars.anita-stars1::before {
	content: '\f155\f154\f154\f154\f154';
}
.anita-testimonials-item__stars.anita-stars2::before {
	content: '\f155\f155\f154\f154\f154';
}
.anita-testimonials-item__stars.anita-stars3::before {
	content: '\f155\f155\f155\f154\f154';
}
.anita-testimonials-item__stars.anita-stars4::before {
	content: '\f155\f155\f155\f155\f154';
}
.anita-testimonials-item__stars.anita-stars5::before {
	content: '\f155\f155\f155\f155\f155';
}

/* 10. WIDGETS
   ----------- */
.anita-widget--contacts__descr {
    margin-bottom: 40px;
}
.anita-contact-details__list {
    padding: 0;
    margin: 0;
}
.anita-contact-details__list li {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
}
.anita-contact-details__list li:not(:last-child) {
    margin-bottom: 24px;
}
.anita-contact-details__list.has-labels > li {
    padding-left: 60px;
    min-height: 40px;
    position: relative;
}
.anita-contact-details__list li i {
    border: 2px solid var(--anita-s-heading);
    color: var(--anita-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;
}
.anita-contact-details__list .anita-socials-list li {
    margin: 0 28px 0 0;
}

/* 11. RIGHT CLICK PROTECTION MESSAGE
   ---------------------------------- */
.anita-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;
}
.anita-rcpm-overlay {
    background: var(--anita-s-bg-body);
    opacity: 0.9;
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 5;
    cursor: pointer;
}
.anita-rcpm-box {
    position: relative;
    z-index: 7;
    background: var(--anita-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;
}
.anita-rcp-message-show .anita-rcp-message {
    opacity: 1;
    pointer-events: all;
}
.anita-rcp-message-show .anita-rcpm-box {
    transform: translateY(0px);
}

/* 12. PRELOADER
   ------------- */
.anita-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(--anita-s-bg-body);
}
.anita-preloader-spotlight.anita-spotlight {
   position: absolute;
}

/* --- Loading State --- */
body.is-loading {
   overflow: hidden;
}
body.is-loading .anita-page-background {
    transform: scale(1.05);
}
body.is-loading .anita-container {
   transform: scale(1);
   opacity: 0;
}

/* --- Loaded State --- */
body.is-loaded .anita-preloader-wrap {
   opacity: 0;
   pointer-events: none;
}

/* --- Unloading State --- */
body.anita-unload .anita-preloader-wrap {
   opacity: 1;
}
body.anita-unload {
   overflow: hidden;
}
body.anita-unload .anita-page-background,
body.anita-unload .anita-container {
   transform: scale(1.1);
}
body.anita-unload.anita-show-menu .anita-nav {
   transition: transform 0.5s;
   transform: scale(0.9);
}

/* 13. BACK TO TOP
   --------------- */
.anita-back2top-wrap.is-fixed {
    transform: translateY(-50px);
}
.anita-back2top-wrap {
    width: 64px;
    height: 64px;
    display: block;
    position: fixed;
    right: 50px;
    bottom: 50px;
    z-index: 99;
    transition: opacity 0.3s, transform 0.3s;
}
.anita-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%;
}
.anita-back2top-wrap:not(.is-visible) {
    pointer-events: none;
}
.anita-back2top-wrap:not(.is-visible) .anita-back2top {
    pointer-events: none;
    opacity: 0;
}
.anita-back2top::after {
    content: '';
    width: 100%;
    height: 100%;
    display: block;
    position: absolute;
    left: -2px;
    top: -2px;
    border: 2px solid var(--anita-s-heading);
    border-radius: 50%;
    transition: opacity 0.3s, transform 0.3s;
    transform: scale(1);
    will-change: opacity;
}
.anita-back2top::before {
    content: "\f343";
    transform: translateY(-1px);
    font-family: "dashicons";
	color: var(--anita-s-heading);
	font-size: 24px;
	line-height: 1;
}
.anita-back2top span {
    position: absolute;
    display: block;
    white-space: nowrap;
    font-size: var(--anita-t-meta-fs);
    color: var(--anita-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
   ----------------------- */
.anita-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;
}
.anita-cursor.is-init {
    opacity: 1;
}
.anita-cursor > div {
    width: 48px;
    height: 48px;
    position: absolute;
    left: 0;
    top: 0;
    display: block;
    margin: -24px 0 0 -24px;
}
.anita-cursor--pointer {
    border-radius: 50%;
    border: 2px solid var(--anita-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;
}
.anita-cursor--pointer::before {
    content: '';
    position: absolute;
    top: -10px;
    right: -10px;
    bottom: -10px;
    left: -10px;
    border: transparent 2px solid;
    border-top-color: var(--anita-s-cursor);
    border-radius: 50%;
    opacity: 0;
    transition: opacity 0.3s, border 0.3s,
    will-change: transform, opacity;
}

/* --- Scroll Cursor --- */
.anita-cursor--arrowsNS,
.anita-cursor--arrowsEW {
    transition: transform 0.3s, opacity 0.3s;
    will-change: opacity, transform;
    transform: scale(0.5);
    opacity: 0;
}
.anita-cursor--arrowsNS::before,
.anita-cursor--arrowsNS::after,
.anita-cursor--arrowsEW::before,
.anita-cursor--arrowsEW::after {
    font-family: "dashicons";
	color: var(--anita-s-cursor);
	font-size: 14px;
	line-height: 1;
    position: absolute;
    display: block;
    text-shadow: 0 0 8px #0E0E1040;
}
.anita-cursor--arrowsEW::before {
    content: "\f341";
    left: -20px;
    top: 50%;
    transform: translateY(-50%);
}
.anita-cursor--arrowsEW::after {
    content: "\f345";
    right: -20px;
    top: 50%;
    transform: translateY(-50%);
}
.anita-cursor--arrowsNS::before {
    content: "\f343";
    top: -20px;
    left: 50%;
    transform: translateX(-50%);
}
.anita-cursor--arrowsNS::after {
    content: "\f347";
    bottom: -20px;
    left: 50%;
    transform: translateX(-50%);
}

/* --- Cursor States --- */
.is-scrollEW .anita-cursor--pointer,
.is-scrollNS .anita-cursor--pointer {
    border-width: 1.5px;
    transform: scale(1.5);
    opacity: 0.5;
}
.is-scrollEW .anita-cursor--arrowsEW,
.is-scrollNS .anita-cursor--arrowsNS {
    transform: scale(1.5);
    opacity: 0.5;
}
.is-hover.is-scrollEW .anita-cursor--arrowsEW,
.is-hover.is-scrollNS .anita-cursor--arrowsNS {
    opacity: 0;
}
.is-hover:not(.is-busy) .anita-cursor--pointer {
    border-width: 1px;
    transform: scale(2);
    opacity: 1;
}
.is-loading .anita-cursor--pointer::before,
.is-busy .anita-cursor--pointer::before {
    animation: anita_spin 1s ease-in-out infinite;
    opacity: 1;
}
.is-loading .is-scrollEW .anita-cursor--arrowsEW,
.is-loading .is-scrollNS .anita-cursor--arrowsNS,
.is-busy.is-scrollEW .anita-cursor--arrowsEW,
.is-busy.is-scrollNS .anita-cursor--arrowsNS {
    opacity: 0;
}
.is-loading .is-scrollEW .anita-cursor--pointer::before,
.is-loading .is-scrollNS .anita-cursor--pointer::before,
.is-busy.is-scrollEW .anita-cursor--pointer::before,
.is-busy.is-scrollNS .anita-cursor--pointer::before {
    border-width: 1.5px;
}
.is-busy.is-scrollEW.is-hover .anita-cursor--pointer::before,
.is-busy.is-scrollNS.is-hover .anita-cursor--pointer::before,
.is-loading .is-hover .anita-cursor--pointer::before,
.is-hover.is-busy .anita-cursor--pointer::before {
    border-width: 1px;
}

/* 15. LAZY LOADING
   ---------------- */
.anita-lazy {
    opacity: 0;
}
.anita-lazy-wrapper {
    background: var(--anita-s-bg-container);
    position: relative;
}
.anita-lazy-wrapper img {
    will-change: opacity, transform;
    transition: opacity 0.5s, transform 0.5s;
}
.anita-lazy-wrapper:not(.is-loaded) {
    overflow: hidden;
}
.anita-lazy-wrapper:not(.is-loaded) img {
    opacity: 0;
    transform: scale(1.1);
}
.anita-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(--anita-s-heading);
    transition: opacity 0.3s;
    opacity: 0;
}
.anita-lazy-wrapper:not(.is-loaded)::before {
    opacity: 1;
    animation: anita_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(--anita-s-heading);
    }
    a:hover {
       color: var(--anita-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.anita-button:hover {
       color: var(--anita-s-button-hover-text);
       border-color: var(--anita-s-button-hover-border);
       background: var(--anita-s-button-hover-bg);
    }

    /* --- Header --- */
    nav.anita-nav .main-menu li:hover > a,
    nav.anita-simple-nav .main-menu li:hover > a {
       color: var(--anita-s-menu-link-hover);
    }
    .anita-menu-toggler:hover i::after,
    .anita-menu-toggler:hover i::before {
       background-color: var(--anita-s-menu-link-hover);
    }
    body:not(.anita-show-menu) .anita-menu-toggler:hover i::before {
       transform: translateX(-2px);
    }
    body:not(.anita-show-menu) .anita-menu-toggler:hover i::after {
       transform: translateX(2px);
    }
    .anita-fullscreen-menu-wrap nav.anita-nav ul.sub-menu > li:hover > ul.sub-menu::after {
       opacity: 0.5;
    }
    nav.anita-nav .sub-menu li:hover > a,
    nav.anita-simple-nav .sub-menu li:hover > a {
       color: var(--anita-s-sub-menu-link-hover);
    }

    /* --- Footer --- */
    #anita-footer a:hover {
        transition: transform 0.12s, color 0.3s;
        color: var(--anita-s-footer-link-hover);
    }

    /* --- Works Listing --- */
    .anita-carousel-gallery-captions .anita-gallery-item__content:hover,
    .anita-gl-container .anita-gl-gallery-item__content:hover {
       transform: scale(1.1);
    }
    .anita-gl-gallery-item__content:hover .anita-gl-gallery__explore {
       opacity: 1;
    }
    .anita-gallery-nav:hover {
       opacity: 1;
    }
    .anita-gallery-nav:hover span {
       opacity: 1;
       transform: translateY(0);
    }
    .anita-gallery-nav:hover::after {
       opacity: 0;
       transform: scale(1.5);
    }
    .anita-gl-roll-gallery .anita-gl-gallery-item__content:hover {
       transform: scale(1.1);
       transition: transform 0.5s;
    }
    .anita-gl-roll-gallery-wrap .anita-gallery-nav:hover span {
       transform: translate(-50%, 0);
    }

    /* --- Album Post --- */
    .anita-albums-back {
       opacity: 0.75;
       transition: opacity 0.3s, transform 0.3s;
       will-change: opacity, transform;
    }
    .anita-albums-back:hover {
       opacity: 1;
       transform: scale(1.05);
    }
    .anita-justified-image-zoom-hover.justified-gallery > .entry-visible:hover img {
       transform: scale(1.05);
    }
    .anita-albums-prev a:hover,
    .anita-albums-next a:hover {
       opacity: 1;
    }
    .anita-albums-prev a:hover::before {
       transform: translateX(-25px);
    }
    .anita-albums-next a:hover::before {
       transform: translateX(25px);
    }
    .anita-prev-album-link:hover,
    .anita-next-album-link:hover {
       opacity: 1;
    }
    .anita-prev-album-link:hover::before,
    .anita-next-album-link:hover::before {
       opacity: 0.5;
    }
    .anita-prev-album-link:hover > span {
       transform: translateX(64px);
    }
    .anita-next-album-link:hover > span {
       transform: translateX(-64px);
    }
    .anita-prev-album-link:hover .anita-data-background,
    .anita-next-album-link:hover .anita-data-background {
       transform: scale(1);
       opacity: 1;
    }

    /* --- Elements --- */
    .anita-underline:hover::after {
       transform: scale(0, 1);
    }
    .anita-zoom-hover > div img {
       transition: transform 0.3s;
       will-change: transform;
    }
    .anita-zoom-hover .anita-lightbox-link:hover .anita-lazy-wrapper.is-loaded img,
    .anita-zoom-hover .anita-lightbox-link:hover img,
    .anita-zoom-hover .anita-grid-item__inner:hover .anita-lazy-wrapper.is-loaded img,
    .anita-zoom-hover .anita-grid-item__inner:hover img {
       transform: scale(1.03);
    }
    .anita-owl-container.owl-carousel button.owl-dot:hover span {
       opacity: 1;
    }
    .anita-toggles-item--title:hover {
       opacity: 1;
    }

    /* --- Widgets --- */
    .anita-contact-details__list a:hover {
       transform: scale(1.1);
    }
    .anita-contact-details__list > li > a:hover {
       transform: scale(1.03);
    }

    /* --- Back 2 Top --- */
    .anita-back2top:hover {
       transform: scale(1.05);
       opacity: 1;
    }
    .anita-back2top.is-fixed:hover {
       transform: translateY(-50px) scale(1.05);
    }
    .anita-back2top:hover span {
       opacity: 1;
       transform: translate(-0px, 0);
    }
    .anita-back2top:hover::after {
       opacity: 0;
       transform: scale(1.5);
    }

    /* --- PhotoSwipe UI --- */
    .anita-pswp-close:hover i::before,
    .anita-pswp-close:hover i::after {
       opacity: 1;
    }
    .anita-pswp-nav:hover {
       opacity: 1;
    }
    .anita-pswp-nav:hover::after {
       opacity: 0;
       transform: scale(1.5);
    }
}


/* 17. ANIMATIONS
   -------------- */
@keyframes anita_spin {
	0% {
		transform: rotate(0);
	}
	100% {
		transform: rotate(360deg);
	}
}

@keyframes anita_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);
    }
}
