ol li,
ul li {
    padding-left: 45px;
    padding-bottom: 1em;
    position: relative;
    line-height: 1.6
}

input[type=checkbox]::after,
ul li::after {
    position: absolute;
    transform: rotate(45deg)
}

body,
h6,
input[type=checkbox],
ol li,
ul li {
    position: relative
}

.blog-text h6,
ol li,
ul li {
    line-height: 1.6
}

.tattoo-name-box p,
.tattoo-type-box,
.testimonial-content h6 {
    font-family: Poppins, sans-serif
}

:root {
    --light-blue: #ECF6FD;
    --primary-color: #DEBA5C;
    --dark-blue: #2D4D5F;
    --middle-blue: #3F7797;
    --light-green: #8DC51F;
    --shadow-1: 0px 10px 35px rgba(75, 128, 158, 0.12);
    --shadow-2: 0px 10px 30px #DAECF9;
    --space-xs: 0.5em;
    --space-s: 1em;
    --space-m: 1.5em;
    --space-l: 2em;
    --space-xl: 4em;
    --little-radius: 10px;
    --middle-radius: 20px;
    --big-radius: 30px
}

body {
    max-width: 100%;
    overflow-x: hidden;
    counter-reset: li-counter
}

body::before {
    content: "";
    top: 0;
    left: 0;
    position: absolute;
    background: linear-gradient(181.36deg, #ecf6fd 1.14%, rgba(236, 246, 253, 0) 98.84%);
    height: 600px;
    width: 100%;
    z-index: -2
}

main {
    padding-top: 6em;
    overflow: hidden
}

.center-box {
    width: 75vw;
    margin: 0 auto
}

ol li::before {
    position: absolute;
    top: 5px;
    left: 0;
    width: 1.5rem;
    height: 1.5rem;
    line-height: 1.5rem;
    text-align: center;
    color: #fff;
    border-radius: 50%;
    font-weight: 500;
    background-color: var(--primary-color);
    content: counter(li-counter);
    counter-increment: li-counter;
    display: flex;
    justify-content: center;
    align-items: center
}

ul li::before {
    position: absolute;
    content: "";
    left: 0;
    width: 1.5em;
    height: 1.5em;
    background-color: var(--light-blue);
    border-radius: .75em;
    top: 0
}

ul li::after {
    content: "";
    left: .55em;
    top: .2em;
    width: .45em;
    height: .85em;
    border-bottom: 3px solid var(--dark-blue);
    border-right: 3px solid var(--dark-blue)
}

blockquote {
    font-style: italic;
    background: var(--light-blue);
    padding: var(--space-s);
    border-radius: var(--middle-radius);
    width: fit-content;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    margin: var(--space-m) 0
}

#booking .center-p,
.answer p,
.booking-text p,
.question p,
.service-name h5,
.tag-a p,
blockquote p {
    margin-bottom: 0
}

header ul li,
nav ul li {
    padding-left: 0;
    padding-bottom: 0
}

#about-me-content::before,
#contact h6::before,
#tattoo-page #faq::before,
.answer,
.blog-text h6::before,
.facts ul li::before,
.site-logo .mobil-logo,
.testimonial-content h6::before,
header ul li::after,
header ul li::before,
li.slide::after,
li.slide::before,
nav ul li::after,
nav ul li::before {
    display: none
}

label {
    display: flex;
    flex-direction: column;
    text-align: left;
    margin-bottom: var(--space-m);
    padding: 0 var(--space-s);
    width: 100%;
    font-weight: 400;
    font-size: clamp(1rem, 1.3vw, 1.1rem)
}

.header-links .center-box,
.main-datas {
    flex-direction: row;
    display: flex
}

.booking-image,
.booking-text,
label.half-label {
    width: 50%
}

input,
input[type=email],
input[type=password],
input[type=tel],
input[type=text],
select,
textarea {
    border: 1px solid var(--dark-blue);
    background: #fff;
    color: var(--dark-blue);
    padding: var(--space-xs) var(--space-s);
    border-radius: 5px;
    margin-bottom: var(--space-xs);
    margin-top: 5px;
    min-height: 50px;
    vertical-align: middle;
    font-weight: 300;
    font-size: clamp(1.1rem, 5vw, 1.1rem);
    width: 100%
}

input:focus,
input[type=email]:focus,
input[type=password]:focus,
input[type=tel]:focus,
input[type=text]:focus,
select:focus,
textarea:focus {
    color: var(--dark);
    border-color: var(--primary-color)
}

#about-me-content .about-me-image .rounded-img img,
.leaf img,
.primary-menu li .active:after,
.primary-menu li a:hover:after,
.tattoo-image img,
table,
textarea {
    width: 100%
}

input[type=checkbox] {
    border: none;
    background: 0 0;
    min-height: 1px;
    padding: 0 1.5em 0 0
}

input[type=checkbox]::before {
    position: absolute;
    content: "";
    width: 18px;
    height: 18px;
    border-radius: 2px;
    border: 1px solid var(--dark-blue);
    background: #fff;
    left: 0;
    top: 0
}

input[type=checkbox]::after {
    content: "";
    width: 6px;
    height: 12px;
    border-right: 2px solid var(--dark-blue);
    border-bottom: 2px solid var(--dark-blue);
    left: 6px;
    top: 2px;
    display: none
}

#service-page #services .row-4 a:nth-of-type(10n) .service-card,
#service-page #services .row-4 a:nth-of-type(9n) .service-card,
input[type=checkbox]:checked::after {
    display: block
}

input::placeholder,
input[type=date]::placeholder,
input[type=email]::placeholder,
input[type=password]::placeholder,
input[type=tel]::placeholder,
input[type=text]::placeholder,
select::placeholder,
textarea::placeholder {
    font-weight: 300;
    font-family: Poppins, sans-serif;
    color: var(--middle-blue);
    font-size: clamp(1rem, 5vw, 1.1rem)
}

.price-header p,
.wpcf7-form-control-wrap label a,
.wpcf7-not-valid-tip,
table tr td:first-of-type em {
    font-size: clamp(.9rem, 5vw, .9rem)
}

.primary-menu a.button,
a.button,
a.button button,
input[type=submit],
li.button-li {
    padding: var(--space-xs) var(--space-m);
    background-color: var(--primary-color);
    border: 2px solid var(--primary-color);
    color: #fff;
    transition: .4s;
    position: relative;
    border-radius: 40px;
    text-align: center;
    cursor: pointer
}

.primary-menu a.button:hover,
.primary-menu li a::after,
a.button:hover,
h6::before,
input[type=submit]:hover {
    background: var(--light-blue)
}

a.button.center {
    margin: 0 auto;
    margin-top: var(--space-m);
    display: block;
    width: fit-content
}

a.button {
    margin-top: var(--space-m);
    display: inline-block
}

.primary-menu a.button {
    margin-top: 0;
    font-weight: 400
}

.primary-menu .button-li a {
    font-weight: 500;
    padding: 0;
    transition: .4s
}

.primary-menu .button-li:hover a {
    color: var(--dark-blue);
    background: 0 0;
    transition: .4s
}

a.button button {
    padding: 0;
    border: none;
    cursor: pointer
}

.primary-menu .button-li:hover,
a.button:hover button {
    background: var(--light-blue);
    border: none;
    color: var(--dark-blue)
}

.faq-box.down,
.primary-menu .button-li:hover {
    border: 2px solid var(--middle-blue)
}

a.button:hover,
input[type=submit]:hover {
    border: 2px solid var(--middle-blue);
    color: var(--dark-blue)
}

h6 {
    padding-left: var(--space-s);
    width: fit-content
}

h6::before {
    content: "";
    position: absolute;
    left: 0;
    width: 50px;
    height: 50px;
    top: -10px;
    z-index: -1;
    border-radius: 50px
}

.header-area,
.primary-menu a {
    position: relative;
    transition: .4s
}

.center-p {
    width: 70%;
    text-align: center;
    margin: 0 auto
}

#testimonials h2,
.center {
    text-align: center
}

#eletkepek h2,
#kozmetikai-kezelesek h2,
#sminkek h2,
#sminktetovalas h2,
.address,
.display-7.center,
.social-media,
.tel_email {
    margin-bottom: var(--space-m)
}

#key-steps h3,
#key-steps h4 {
    margin-bottom: 1em
}

.price-table {
    background: #fff;
    border-radius: var(--middle-radius);
    box-shadow: var(--shadow-1);
    margin-bottom: var(--space-xl)
}

.price-table .price-header {
    text-align: center;
    background-color: var(--light-blue);
    border-radius: 20px 20px 0 0;
    padding: var(--space-s)
}

.price-table .price-header h3,
.price-table .price-header p {
    margin-bottom: 0;
    text-align: center
}

table tr {
    border-bottom: 1px solid #d5e1e8
}

table tr:last-of-type {
    border-bottom: 0
}

table tr td {
    padding: .5em 1em
}

table tr td:first-of-type {
    font-weight: 400
}

table tr td:first-of-type em {
    font-weight: 300
}

.price-table table tr td:last-of-type {
    min-width: 110px
}

.header-links .center-box {
    justify-content: space-between;
    padding: var(--space-xs) 0;
    padding-left: 15em
}

.header-links .caption,
.header-links a {
    color: var(--dark-blue);
    margin-right: var(--space-s);
    font-size: clamp(1rem, 5vw, 1rem);
    padding-bottom: .5em
}

.main-datas a {
    display: flex;
    flex-direction: row;
    align-items: center
}

.header-links .caption svg {
    margin-right: var(--space-xs)
}

.header-area {
    background: var(--dark);
    width: 100%;
    z-index: 999;
    top: var(--space-l);
    top: 0;
    align-self: start
}

.header-container {
    width: 100%;
    margin: auto;
    display: table;
    background: #fff;
    box-shadow: 0 4px 10px rgba(75, 128, 158, .2)
}

.site-logo {
    position: absolute;
    padding: 0;
    width: 12em;
    left: 12.5vw;
    bottom: var(--space-m)
}

#gallery-links a,
.about-tattoo-text a.button,
.blog-text a,
.booking-text a.button,
.service-text a.button,
.site-logo a {
    text-decoration: none
}

.mobile-nav {
    display: none;
    float: right;
    margin: 10px;
    padding: 10px;
    font-size: 24px;
    color: #fff;
    outline: 0;
    cursor: pointer
}

.site-nav-menu {
    float: right;
    display: flex
}

.primary-menu {
    list-style: none
}

.primary-menu li {
    display: inline-block;
    margin: 21px 5px
}

.primary-menu a {
    color: var(--background-color);
    text-decoration: none;
    font-weight: 300;
    padding: 15px 10px;
    font-size: clamp(1rem, 1.2vw, 1.1rem);
    background: 0 0
}

.primary-menu a:hover {
    background: radial-gradient(50% 50% at 50% 50%, #e4f1fa 29.17%, rgba(237, 247, 253, 0) 100%);
    transition: .4s
}

.primary-menu .active-menu-li {
    font-weight: 600
}

.primary-menu li a::after {
    content: "";
    position: absolute;
    width: 0%;
    height: 50%;
    bottom: 25%;
    left: 0;
    transition: .5s;
    z-index: -1
}

@media only screen and (max-width:1200px) {
    .header-area {
        top: .5em;
        transition: .4s
    }

    .cart-menu-mobile {
        display: flex
    }

    .site-nav-menu {
        float: none;
        position: absolute;
        background: #fff;
        width: 100%;
        height: 100vh;
        left: 0;
        top: 60px;
        padding: 30px 0 0;
        clip-path: circle(0% at 100% 0%)
    }

    .primary-menu {
        width: 100%
    }

    .primary-menu li {
        display: block;
        text-align: center;
        margin: 25px 5px
    }

    .mobile-nav {
        display: block
    }

    .mobile-menu {
        clip-path: circle(118% at 90%)
    }

    .primary-menu li a:after {
        display: none
    }

    .primary-menu li:hover a {
        color: var(--primary-color)
    }

    #hamburger-menu {
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        align-items: center;
        width: 26px;
        height: 22px
    }

    .hambi-line-1,
    .hambi-line-2,
    .hambi-line-3 {
        width: 100%;
        height: 2px;
        background-color: var(--dark-blue)
    }
}

@media screen and (max-width:1024px) {
    .header-links .social-links {
        display: none
    }

    .header-links .center-box {
        justify-content: end;
        padding-left: 0
    }
}

@media screen and (max-width:501px) {
    .header-links .main-datas {
        flex-direction: column;
        align-items: center
    }
}

.name_and_stars,
.stars {
    display: flex;
    flex-direction: row
}

.front-page-header {
    position: relative;
    padding: var(--space-xl) 0;
    background-color: var(--light-blue)
}

.front-page-header::before {
    width: 100%;
    height: 100%;
    background: linear-gradient(0deg, #ecf7fd 1.1%, rgba(236, 247, 253, 0) 100%);
    position: absolute;
    content: "";
    top: 0;
    left: 0;
    z-index: 0
}

.front-page-header::after {
    width: 100%;
    height: 6vw;
    background: url('img/desktop_wave.svg') 0 0/100% no-repeat;
    position: absolute;
    bottom: 0;
    left: 0;
    content: "";
    z-index: 2
}

@media screen and (max-width:1700px) {
    .front-page-header {
        padding: var(--space-xl) 0 var(--space-l) 0
    }
}

@media screen and (max-width:1250px) {
    .header-image img {
        position: absolute;
        width: 47vw;
        bottom: -2em
    }
}

.front-page-header .center-box {
    position: relative;
    z-index: 1
}

.leaf {
    position: absolute;
    width: 4em
}

.service-card,
.width-decor-left,
.width-decor-right {
    position: relative
}

.leaf.pos-1 {
    animation: 20s linear infinite leaf2;
    -webkit-animation: 20s linear infinite leaf2;
    -moz-animation: 20s linear infinite leaf2;
    -o-animation: 20s linear infinite leaf2;
    width: 5em
}

.leaf.pos-2 {
    animation: 10s linear infinite leaf1;
    -webkit-animation: 10s linear infinite leaf1;
    -moz-animation: 10s linear infinite leaf1;
    -o-animation: 10s linear infinite leaf1;
    width: 5em
}

.leaf.pos-3 {
    animation: 15s linear infinite leaf3;
    -webkit-animation: 15s linear infinite leaf3;
    -moz-animation: 15s linear infinite leaf3;
    -o-animation: 15s linear infinite leaf3
}

.leaf.pos-4 {
    animation: 8s linear infinite leaf1;
    -webkit-animation: 8s linear infinite leaf2;
    -moz-animation: 8s linear infinite leaf2;
    -o-animation: 8s linear infinite leaf2
}

@keyframes leaf1 {
    0% {
        margin-left: 5vw;
        top: -40px;
        opacity: 0;
        transform: rotate(0)
    }

    25% {
        margin-left: 0;
        top: 25%;
        opacity: 1;
        transform: rotate(45deg)
    }

    50% {
        margin-left: 5vw;
        top: 50%;
        opacity: 1
    }

    100% {
        margin-left: 0;
        top: 90%;
        opacity: 0
    }
}

@-webkit-keyframes leaf1 {
    0% {
        margin-left: 0;
        top: -40px;
        opacity: 0
    }

    25% {
        margin-left: 25px;
        top: 25%;
        opacity: 1
    }

    50% {
        margin-left: 0;
        top: 50%;
        opacity: 1
    }

    100% {
        margin-left: 30px;
        top: 90%;
        opacity: 0
    }
}

@-moz-keyframes leaf1 {
    0% {
        margin-left: 0;
        top: -40px;
        opacity: 0
    }

    25% {
        margin-left: 25px;
        top: 25%;
        opacity: 1
    }

    50% {
        margin-left: 0;
        top: 50%;
        opacity: 1
    }

    100% {
        margin-left: 30px;
        top: 90%;
        opacity: 0
    }
}

@-o-keyframes leaf1 {
    0% {
        margin-left: 0;
        top: -40px;
        opacity: 0
    }

    25% {
        margin-left: 25px;
        top: 25%;
        opacity: 1
    }

    50% {
        margin-left: 0;
        top: 50%;
        opacity: 1
    }

    100% {
        margin-left: 30px;
        top: 90%;
        opacity: 0
    }
}

@keyframes leaf2 {
    0% {
        right: 35vw;
        top: -40px;
        opacity: 0;
        transform: rotate(0)
    }

    25% {
        right: 45vw;
        top: 25%;
        opacity: 1;
        transform: rotate(45deg)
    }

    50% {
        right: 35vw;
        top: 50%;
        opacity: 1;
        transform: rotate(0)
    }

    100% {
        right: 45vw;
        top: 90%;
        opacity: 0;
        transform: rotate(45deg)
    }
}

@-webkit-keyframes leaf2 {
    0% {
        right: 35vw;
        top: -40px;
        opacity: 0;
        transform: rotate(0)
    }

    25% {
        right: 45vw;
        top: 25%;
        opacity: 1;
        transform: rotate(45deg)
    }

    50% {
        right: 35vw;
        top: 50%;
        opacity: 1;
        transform: rotate(0)
    }

    100% {
        right: 45vw;
        top: 90%;
        opacity: 0;
        transform: rotate(45deg)
    }
}

@-moz-keyframes leaf2 {
    0% {
        right: 35vw;
        top: -40px;
        opacity: 0;
        transform: rotate(0)
    }

    25% {
        right: 45vw;
        top: 25%;
        opacity: 1;
        transform: rotate(45deg)
    }

    50% {
        right: 35vw;
        top: 50%;
        opacity: 1;
        transform: rotate(0)
    }

    100% {
        right: 45vw;
        top: 90%;
        opacity: 0;
        transform: rotate(45deg)
    }
}

@-o-keyframes leaf2 {
    0% {
        right: 35vw;
        top: -40px;
        opacity: 0;
        transform: rotate(0)
    }

    25% {
        right: 45vw;
        top: 25%;
        opacity: 1;
        transform: rotate(45deg)
    }

    50% {
        right: 35vw;
        top: 50%;
        opacity: 1;
        transform: rotate(0)
    }

    100% {
        right: 45vw;
        top: 90%;
        opacity: 0;
        transform: rotate(45deg)
    }
}

@keyframes leaf3 {
    0% {
        right: 10vw;
        top: -40px;
        opacity: 0;
        transform: rotate(45deg)
    }

    25% {
        right: 10vw;
        top: 25%;
        opacity: 1;
        transform: rotate(125deg)
    }

    50% {
        right: 10vw;
        top: 50%;
        opacity: 1;
        transform: rotate(45deg)
    }

    100% {
        right: 10vw;
        top: 90%;
        opacity: 0;
        transform: rotate(125deg)
    }
}

@-webkit-keyframes leaf3 {
    0% {
        right: 10vw;
        top: -40px;
        opacity: 0;
        transform: rotate(109deg)
    }

    25% {
        right: 10vw;
        top: 25%;
        opacity: 1;
        transform: rotate(145deg)
    }

    50% {
        right: 10vw;
        top: 50%;
        opacity: 1;
        transform: rotate(109deg)
    }

    100% {
        right: 10vw;
        top: 90%;
        opacity: 0;
        transform: rotate(145deg)
    }
}

@-moz-keyframes leaf3 {
    0% {
        right: 10vw;
        top: -40px;
        opacity: 0;
        transform: rotate(109deg)
    }

    25% {
        right: 10vw;
        top: 25%;
        opacity: 1;
        transform: rotate(145deg)
    }

    50% {
        right: 10vw;
        top: 50%;
        opacity: 1;
        transform: rotate(109deg)
    }

    100% {
        right: 10vw;
        top: 90%;
        opacity: 0;
        transform: rotate(145deg)
    }
}

@-o-keyframes leaf3 {
    0% {
        right: 10vw;
        top: -40px;
        opacity: 0;
        transform: rotate(109deg)
    }

    25% {
        right: 10vw;
        top: 25%;
        opacity: 1;
        transform: rotate(145deg)
    }

    50% {
        right: 10vw;
        top: 50%;
        opacity: 1;
        transform: rotate(109deg)
    }

    100% {
        right: 10vw;
        top: 90%;
        opacity: 0;
        transform: rotate(145deg)
    }
}

.width-decor-left::before,
.width-decor-right::before {
    background-image: url(img/decor_image.webp);
    background-repeat: no-repeat;
    background-size: 100%;
    background-position: left;
    width: 60vw;
    height: 150%;
    content: "";
    position: absolute;
    bottom: -20em;
    z-index: -1
}

.width-decor-right::before {
    right: -25%
}

.width-decor-left::before {
    left: -25%
}

@media screen and (max-width:1500px) {
    .center-box {
        width: 88vw;
        margin: 0 auto
    }

    .site-logo {
        left: 6vw
    }

    .width-decor-left::before,
    .width-decor-right::before {
        width: 80vw;
        bottom: -30em
    }

    .width-decor-right::before {
        right: -35%
    }

    .width-decor-left::before {
        left: -35%
    }
}

@media screen and (max-width:1200px) {

    .width-decor-left::before,
    .width-decor-right::before {
        width: 90vw;
        bottom: -40em
    }

    .width-decor-right::before {
        right: -45%
    }

    .width-decor-left::before {
        left: -45%
    }
}

#about-me,
#gallery-links,
#services,
#team {
    padding-bottom: 8em
}

.rounded-img img {
    border-radius: 30px;
    border: 10px solid var(--light-blue);
    width: 100%
}

.image-with-bg,
.rounded-img {
    border-radius: 30px
}

.image-with-bg {
    width: 90%
}

.service-card,
.team-member-card {
    border-radius: var(--big-radius);
    overflow: hidden
}

#services .row-4,
#team .row-3 {
    border-top: 5px solid var(--light-blue);
    padding-top: var(--space-xl);
    padding-bottom: var(--space-m)
}

#about-the-team .row-2,
#gallery,
footer {
    padding: var(--space-xl) 0
}

#contact h2,
#faq h2,
#faq h6,
#gallery h2,
#gallery h6,
#news h2,
#services h2,
#services h6,
#team h2,
#team h6 {
    text-align: center;
    margin-bottom: var(--space-s)
}

#faq h6,
#gallery h6,
#services h6,
#team h6 {
    margin: 0 auto 1rem
}

.service-card {
    box-shadow: var(--shadow-2);
    padding-top: 18em
}

#services .row-4 a .service-card {
    transition: .4s
}

#services .row-4 a:hover .service-card {
    box-shadow: 0 10px 20px #daecf9;
    transform: scale(.95);
    transition: .4s
}

#services .row-4 a:hover .service-card h5,
footer a:hover {
    color: var(--primary-color)
}

@media screen and (max-width:1500px) {
    .service-card {
        padding-top: 20em
    }
}

.service-name {
    background: #fff;
    text-align: center;
    padding: var(--space-s) 0;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%
}

.team-member-card {
    border: 10px solid var(--light-blue);
    padding-top: 25em;
    position: relative;
    margin-bottom: var(--space-m);
    transition: .4s
}

.team-member-card:hover {
    box-shadow: var(--shadow-2);
    transition: .4s;
    transform: scale(.95);
    border: 10px solid #fff
}

.team-member-name {
    background: var(--light-blue);
    text-align: center;
    padding: var(--space-xs) 0;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%
}

.team-member-card:hover .team-member-name {
    background: #fff;
    transition: .4s
}

.team-member-name h4,
.team-member-name p {
    margin-bottom: 0;
    color: var(--dark-blue)
}

#news,
#testimonials {
    background: url("img/pattern.png");
    position: relative;
    padding: 8em 0;
    background-color: var(--light-blue)
}

#booking-form:before,
#kontraindikaciok:before,
#news:before,
#testimonials:before {
    position: absolute;
    content: "";
    width: 100%;
    height: 100%;
    background: linear-gradient(0deg, #ecf7fd 1.1%, rgba(236, 247, 253, 0) 100%);
    z-index: 1;
    bottom: 0;
    left: 0
}

#booking-form .center-box,
#kontraindikaciok .center-box,
#news .center-box,
#testimonials .center-box {
    position: relative;
    z-index: 2
}

.testimonial-box {
    padding: 1em 1em 4em;
    width: 70%;
    margin: 0 auto;
    overflow: hidden;
    position: relative
}

.testimonial-content {
    background: #fff;
    padding: var(--space-xl);
    overflow: hidden;
    border-radius: var(--big-radius)
}

.testimonial-content h6 {
    margin-bottom: 0;
    text-transform: capitalize;
    padding-left: 0;
    font-weight: 500;
    letter-spacing: 0
}

.testimonial-content p {
    text-align: left;
    margin-bottom: 0
}

.testimonial_text {
    padding: 0 1em
}

.name_and_stars {
    justify-content: space-between;
    align-items: center;
    margin-bottom: 1rem
}

.stars {
    justify-content: space-between
}

#carousel ul.slides,
.question {
    display: flex;
    flex-direction: row
}

.testimonial-card {
    overflow: hidden
}

ul.slides {
    transition: height 1s
}

li.slide {
    display: inline-block;
    width: 100%;
    white-space: initial;
    vertical-align: top;
    padding: 0
}

#carousel ul.slides {
    white-space: nowrap;
    width: 800%;
    position: relative
}

#arrow-left,
#arrow-right {
    width: 4em;
    height: 2em;
    position: absolute;
    border-radius: 1em;
    z-index: 1;
    background-color: var(--primary-color);
    cursor: pointer;
    border: 2px solid var(--primary-color);
    bottom: 0
}

#arrow-left::before,
#arrow-right::before {
    width: .8em;
    height: .8em;
    position: absolute;
    content: "";
    border-right: 2px solid #fff;
    border-bottom: 2px solid #fff;
    top: calc(50% - .4em);
    left: calc(50% - .4em);
    transition: .4s
}

#arrow-right {
    right: 1em
}

#arrow-left::before {
    transform: rotate(135deg)
}

#arrow-right::before {
    transform: rotate(-45deg)
}

#arrow-left:hover,
#arrow-right:hover {
    background: var(--light-blue);
    border: 2px solid var(--middle-blue);
    transition: .4s
}

#arrow-left:hover::before,
#arrow-right:hover::before {
    border-right: 2px solid var(--middle-blue);
    border-bottom: 2px solid var(--middle-blue)
}

#navigation {
    width: 100%;
    text-align: center;
    position: absolute;
    bottom: 0;
    left: 0
}

.facts,
.facts-about-me,
.facts-about-tattoo,
.faq-box,
.plus-icon,
footer {
    position: relative
}

#navigation div {
    width: 12px;
    height: 12px;
    background: var(--dark-blue);
    opacity: .3;
    border-radius: 6px;
    margin: 0 .5em;
    display: inline-block;
    transition: .4s
}

#navigation div.nav-actives {
    background: var(--dark-blue);
    width: 34px;
    opacity: 1;
    transition: .4s
}

.faq-box,
.gallery-link {
    background: var(--light-blue)
}

.vp-portfolio__item-img.vp-portfolio__item-img-lazyloaded {
    border-radius: var(--big-radius) !important
}

.gallery-link {
    border-radius: var(--big-radius);
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: var(--space-l);
    text-align: center;
    height: 100%
}

#blog-page .blog-content h2,
#blog-page .blog-content h3,
#blog-page .blog-content h4,
.gallery-link p {
    margin-top: var(--space-m)
}

.gallery-link:hover {
    background: #fff;
    box-shadow: var(--shadow-1);
    transform: scale(.95);
    transition: .4s
}

#eletkepek,
#kozmetikai-kezelesek,
#service-box,
#sminkek,
#sminktetovalas,
#tattoos,
#wedding .row-2 {
    margin-bottom: 8em
}

#gallery-page {
    overflow: visible
}

@media screen and (max-width:580px) {
    #gallery-links .row-4 {
        grid-template-columns: repeat(2, minmax(0, 1fr))
    }
}

@media screen and (max-width:375px) {
    #gallery-links .row-4 {
        grid-template-columns: repeat(1, minmax(0, 1fr))
    }
}

#faq {
    padding: 8em 0 0
}

#faq.front-page-faq {
    padding: 4em 0;
}

#contact .row-2,
.faq-content {
    border-top: 5px solid var(--light-blue);
    padding-top: var(--space-xl)
}

.faq-box {
    border: 2px solid var(--light-blue);
    padding: 1em;
    transition: .4s;
    width: 70%;
    margin: 0 auto 1em
}

#blog-page .blog-content img,
.blog-image,
.white-card-inner {
    border-radius: var(--big-radius)
}

.about-tattoo-text svg,
.plus-icon,
.service-text svg,
.tag-a,
a.button button #tel,
a.button button svg {
    margin-right: .5em
}

.question {
    align-items: flex-start;
    justify-content: space-between;
    cursor: pointer
}

.flex-row,
.tag-box {
    flex-direction: row
}

.question p {
    font-weight: 400;
    width: calc(100% - 1em)
}

#contact h6,
.blog-text h6 {
    letter-spacing: 0;
    text-transform: none;
    font-weight: 500
}

.answer p,
.answer ul {
    padding-left: 1.5em;
    padding-top: 1em
}

.answer ul li::before {
    background: #fff
}

.plus-icon {
    width: 16px;
    height: 16px
}

.plus-icon::before {
    position: absolute;
    content: "";
    width: 10px;
    height: 10px;
    border-left: 2px solid var(--dark-blue);
    border-bottom: 2px solid var(--dark-blue);
    transform: rotate(-45deg);
    margin-right: 1em;
    margin-top: 6px;
    transition: .4s
}

.plus-icon.down-icon::before {
    transform: rotate(135deg);
    margin-top: 12px;
    transition: .4s
}

@media screen and (max-width:1100px) {

    .faq-box,
    .testimonial-box {
        width: 100%
    }
}

.white-card-inner {
    background: #fff;
    box-shadow: var(--shadow-1)
}

.blog-image {
    padding-bottom: 15em
}

.blog-text {
    padding: var(--space-s)
}

.line-clamp {
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden
}

.blog-text h6 {
    color: var(--middle-blue);
    padding-left: 0;
    transition: .4s
}

.blog-text:hover h6 {
    color: var(--light-green);
    transition: .4s
}

.tag-box {
    display: flex;
    flex-wrap: wrap
}

.tag-a {
    background: var(--light-blue);
    padding: var(--space-xs) var(--space-s);
    color: var(--dark-blue);
    border-radius: 30px;
    margin-bottom: .5em;
    transition: .4s
}

.tag-a:hover {
    background: var(--light-green);
    color: #fff;
    transition: .4s
}

#about-the-team,
#post-list {
    padding-bottom: var(--space-xl)
}

#blog-page .blog-content {
    grid-column-start: 1;
    grid-column-end: 3
}

#blog-page .aside {
    grid-column-start: 3;
    grid-column-end: 4
}

#blog-page .display-7.center {
    margin-bottom: .3em
}

#blog-page .tag-box {
    justify-content: center;
    align-items: center;
    margin-bottom: var(--space-xl)
}

#about-the-team .row-2 .about-me-text,
#blog-page .aside .tag-box {
    justify-content: flex-start
}

#blog-page .tag-box .tag-a {
    border: 1px solid var(--dark-blue)
}

#blog-page .aside .tag-box {
    align-items: flex-start;
    margin-bottom: 0
}

#blog-page .aside .tag-box .tag-a,
#blog-page .aside .white-card .tag-a {
    border: none
}

#blog-page .tag-box .tag-a:hover {
    border: 1px solid var(--light-green)
}

#blog-page .blog-content img {
    width: 100%;
    max-width: 100%;
    border: 8px solid var(--light-blue);
    margin-bottom: var(--space-m)
}

#blog-page .aside .white-card {
    margin-bottom: var(--space-l)
}

#contact {
    padding: 8em 0;
    overflow: hidden
}

.flex-row {
    display: flex;
    align-items: center;
    margin-bottom: var(--space-s)
}

.tel_email {
    display: flex;
    flex-direction: row;
    align-items: top;
    justify-content: space-between
}

#contact h6 {
    padding-left: var(--space-xs);
    margin-bottom: 0
}

#contact .social-media h6 {
    padding-left: 0;
    margin-bottom: var(--space-s)
}

#contact-svg {
    fill: var(--primary-color)
}

.map {
    border-radius: var(--big-radius);
    border: 10px solid var(--light-blue)
}

.facts,
.map iframe {
    border-radius: var(--middle-radius);
    width: 100%
}

.map iframe {
    height: 100%
}

@media screen and (max-width:900px) {
    main {
        padding-top: 4em
    }

    .center-p,
    .image-with-bg {
        width: 100%
    }

    .header-links .main-datas a {
        font-size: .8rem
    }

    .front-page-header::after {
        width: 100%;
        height: 17vw;
        background: url('img/mobile_wave.svg') 0 0/100% no-repeat
    }

    .header-image img {
        position: static;
        width: 100%;
        bottom: 0
    }

    .width-decor-left::before {
        width: 200%;
        left: -50%;
        bottom: -70%
    }

    .width-decor-right::before {
        width: 200%;
        right: -50%;
        bottom: -70%
    }

    #about-me {
        padding-bottom: 2em
    }

    #services {
        padding: var(--space-xl) 0
    }

    #about-the-team .row-2:last-of-type .rounded-img,
    #faq.width-decor-right::before,
    #team.width-decor-right::before {
        display: none
    }

    #team {
        padding: 0 0 var(--space-xl) 0
    }

    .team-member-card {
        margin-bottom: 0
    }

    #eletkepek,
    #kozmetikai-kezelesek,
    #sminkek,
    #sminktetovalas {
        margin-bottom: 4em
    }

    #faq {
        padding: 4em 0
    }

    #news {
        padding: var(--space-xl) 0;
        margin-bottom: var(--space-xl)
    }

    #blog-page .aside,
    #blog-page .blog-content {
        grid-column-start: 1;
        grid-column-end: 4
    }

    .map iframe {
        height: 20em
    }

    #contact .row-2 {
        grid-template-columns: repeat(1, 1fr);
        grid-template-rows: repeat(1, 1fr)
    }

    .tel_email {
        justify-content: flex-start
    }

    .tel {
        margin-right: var(--space-xl)
    }

    #about-the-team .row-2,
    #contact {
        padding: 0
    }

    #about-the-team {
        padding-bottom: var(--space-l)
    }
}

footer::after,
footer::before {
    position: absolute;
    content: "";
    bottom: 0;
    background: url('img/footer_pattern.svg') 0 0/100% no-repeat;
    width: 15vw;
    height: 12vw
}

@media screen and (max-width:600px) {
    .testimonial_text {
        padding: 0 .5em
    }

    .testimonial-content {
        background: 0 0;
        padding: 2em 0 4em
    }

    .testimonial-box {
        padding: 0
    }

    #navigation div {
        width: 8px;
        height: 8px
    }

    #arrow-left,
    #arrow-right {
        bottom: 2em
    }

    #navigation div.nav-actives {
        width: 28px
    }

    .tel_email {
        flex-direction: column
    }

    .tel {
        margin-right: 0;
        margin-bottom: 2em
    }
}

footer {
    background: var(--middle-blue);
    z-index: 1;
    overflow: hidden
}

footer::before {
    right: 0
}

footer::after {
    left: 0;
    transform: scaleX(-1)
}

footer a,
footer h4,
footer p {
    color: var(--light-blue);
    padding-left: 0;
    font-weight: 300;
    text-decoration: none
}

footer a,
footer p {
    font-size: clamp(1rem, 1.3vw, 1.2rem)
}

.copyright {
    text-align: center;
    padding-top: var(--space-m);
    border-top: 1px solid var(--light-blue);
    margin-top: var(--space-m)
}

.copyright a,
.copyright p {
    font-size: 1rem;
    margin-bottom: 0
}

#szechenyi {
    border-top: 1px solid var(--light-blue);
    margin-top: var(--space-m);
    padding-top: var(--space-m);
}

.szechenyi-pic {
    border-radius: var(--little-radius);
}

.szechenyi-pic img {
    width: 100%;
}

@media screen and (max-width:768px) {
    label.half-label {
        width: 100%
    }

    label {
        padding: 0;
        margin-bottom: var(--space-s)
    }

    .header-links .center-box {
        justify-content: center
    }

    .header-links .main-datas svg,
    .site-logo .desktop-logo,
    footer::after {
        display: none
    }

    .header-links .main-datas a {
        margin-right: 2em
    }

    .site-logo {
        position: static;
        float: left;
        padding: 5px 0;
        width: 6em
    }

    .site-logo .mobil-logo {
        display: block
    }

    footer::before {
        position: absolute;
        content: "";
        right: 0;
        bottom: 0;
        background: url('img/footer-decor-mobile.svg') 0 0/100% no-repeat;
        width: 100%;
        height: 50vw;
        z-index: -1
    }
}

#about-the-team .row-2:first-of-type {
    padding-top: 0
}

.facts-about-me {
    grid-column-start: 1;
    grid-column-end: 2;
    height: fit-content;
    -webkit-height: fit-content;
    -o-height: fit-content;
    -moz-height: fit-content
}

#kontraindikaciok ul li::after,
.facts ul li::after {
    background-repeat: no-repeat;
    background-size: 100%;
    width: 24px;
    height: 24px
}

#about-me-content .about-me-text {
    grid-column-start: 2;
    grid-column-end: 4;
    justify-content: flex-start
}

.facts {
    background-color: var(--light-blue);
    padding: var(--space-m);
    margin-top: -2em;
    /* top: 90%;
    left: 0 */
}

.facts ul li::after {
    background-image: url(img/star-outline.svg);
    border: 0
}

#booking .display-7.center {
    margin-bottom: .5em
}

#booking-form,
#kontraindikaciok {
    background: url("img/pattern.png");
    position: relative;
    padding: 4em 0;
    background-color: var(--light-blue);
    margin-top: 4em
}

#booking-datas {
    margin-top: 4em
}

.booking-datas-card {
    border-radius: var(--middle-radius);
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: flex-start;
    padding: var(--space-m);
    box-shadow: var(--shadow-1)
}

.booking-text {
    padding-left: var(--space-m)
}

.booking-image img {
    border-radius: var(--little-radius)
}

.booking-text a.button button {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    text-decoration: none
}

a.button button #tel {
    fill: white;
    transition: .4s
}

a.button:hover button #tel {
    fill: var(--dark-blue);
    transition: .4s
}

#booking-form form p:first-of-type {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    padding: var(--space-xl) 0 0 0
}

#booking-form form input[type=submit] {
    width: auto;
    font-size: clamp(1rem, 5vw, 1.3rem)
}

.wpcf7-form-control-wrap label {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    font-size: clamp(.9rem, 5vw, .9rem);
    padding-left: 0
}

.wpcf7-form-control-wrap label input[type=checkbox] {
    width: auto
}

@media screen and (max-width:1366px) {
    .booking-datas-card {
        flex-direction: column
    }

    .booking-image,
    .booking-text {
        width: 100%
    }

    .booking-text {
        padding: 0;
        margin-top: var(--space-m)
    }
}

@media screen and (max-width:900px) {

    #about-me-content .about-me-text,
    .facts-about-me {
        grid-column-start: 1;
        grid-column-end: 4
    }

    #about-me-content::before {
        display: block
    }

    .facts {
        position: relative;
        margin-top: -10em
    }

    #about-me-content .about-me-text {
        padding-bottom: var(--space-l)
    }

    #booking {
        margin-bottom: var(--space-xl)
    }

    .booking-datas-card {
        flex-direction: row
    }

    .booking-image,
    .booking-text {
        width: 50%
    }

    .booking-text {
        padding-left: var(--space-m);
        margin-top: 0
    }

    .wpcf7-list-item {
        margin: 0
    }
}

@media screen and (max-width:480px) {

    .facts {
    margin-top: -4em;
    padding: var(--space-m) 0.5em;
    }
    .booking-datas-card {
        flex-direction: column
    }

    .booking-image,
    .booking-text {
        width: 100%
    }

    .booking-text {
        padding: 0;
        margin-top: var(--space-m)
    }
}

.facts-about-tattoo {
    height: fit-content
}

.facts-about-tattoo .facts {
    width: 90%
}

.tattoo-type-box {
    margin-top: var(--space-m);
    color: var(--dark-blue);
    font-weight: 300
}

.tattoo-name-box {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
    margin-bottom: var(--space-xs)
}

.tattoo-name-box .index {
    font-family: Lora, serif;
    color: var(--dark-blue);
    padding: 0 var(--space-xs);
    border-right: 1px solid var(--dark-blue)
}

.tattoo-name-box p {
    padding-left: var(--space-s);
    color: var(--middle-blue);
    font-weight: 400;
    margin-bottom: 0
}

.about-tattoo-text a.button button,
.service-text a.button button {
    display: flex;
    flex-direction: row;
    align-items: center;
    text-decoration: none
}

.about-tattoo-text .facts {
    position: static;
    background-color: transparent;
    padding: 0;
    margin-top: var(--space-m);
    display: none
}

#kontraindikaciok ul li::before {
    displaY: none
}

#kontraindikaciok ul li::after {
    background-image: url('img/x-circle.svg');
    border: 0;
    transform: none
}

#process,
#tattoo-steps {
    margin: 8em 0
}

#key-steps,
#mary-cohr #service-box {
    margin-bottom: 4em
}

#key-steps h4 {
    margin-top: 2em
}

@media screen and (max-width:900px) {
    .about-tattoo-text .facts {
        display: block;
        font-family: Poppins, sans-serif;
        color: var(--dark-blue);
        font-weight: 300
    }

    #service-box::after,
    #service-box::before,
    #wedding .row-2:last-of-type .image-with-bg,
    .facts-about-tattoo .facts {
        display: none
    }

    .facts-about-tattoo {
        margin-bottom: 0;
        order: 1
    }

    #process .rounded-img,
    .about-tattoo-text {
        order: 2
    }

    #service-box,
    #tattoos,
    #wedding .row-2:last-of-type {
        margin-bottom: 4em
    }

    #tattoos:last-of-type,
    #wedding .row-2 {
        margin-bottom: 0
    }

    #process,
    #tattoo-steps {
        margin: 4em 0
    }

    #process .process-text,
    #service-box .image-with-bg {
        order: 1
    }

    .service-text {
        order: 2;
        background-color: var(--light-blue);
        border-radius: var(--middle-radius);
        padding: var(--space-m);
        margin-top: -6em
    }

    #wedding .service-text {
        margin-top: 0;
        background-color: transparent;
        padding: 0;
        order: 1
    }

    #wedding .image-with-bg {
        order: 1;
        margin-bottom: 4em
    }
}

.cky-title {
    color: var(--middle-blue) !important
}

@media screen and (max-width: 480px) {
    .service-text {
        padding: var(--space-m) 0.75em;
    }
}