
.noscroll {
  overflow: hidden;
}

* {
  outline: none;
}

.disabled {
  pointer-events: none;
}

.divider-xs {
    width: 36px;
    border-top: 2px solid rgb(71,162,241);
    margin: 15px 0 30px;
}

.divider-sm {
    width: 330px;
    border-top: 2px solid rgb(71,162,241);
    margin: 30px auto 30px;
}

.divider {
    width: 100%;
    border-top: 2px solid rgb(71,162,241);
    margin: 30px auto 30px;
}

.white-arrow {
    width: 70px;
    margin: auto;
    border-right: 35px solid transparent;
    border-top: 28px solid #fff;
    border-left: 35px solid transparent;
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
}

.light-arrow {
    width: 70px;
    margin: auto;
    border-right: 35px solid transparent;
    border-top: 28px solid rgb(232,232,232);
    border-left: 35px solid transparent;
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
}

.metal-arrow {
    width: 70px;
    margin: auto;
    border-right: 35px solid transparent;
    border-top: 28px solid rgba(81,97,113, 0.9);
    border-left: 35px solid transparent;
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
}
.metal-bg .metal-arrow {
    border-top: 28px solid rgb(81,97,113);
}

h1.blog-title + hr {
    border-top: 2px solid rgb(222,222,222);
    margin-top: 2rem;
    margin-bottom: 4rem;
}
h1.podcast-title + hr {
    border-top: 2px solid rgb(222,222,222);
    margin-top: 2rem;
    margin-bottom: 4rem;
}
h2.podcast-lead {
    font-size: 1.6rem;
}
h1.podcast-title {
    line-height: 3rem;
}
h1.podcast-title,
h1.blog-title,
h2.line-bg {
    position: relative;
    font-size: 3rem;
    font-weight: 600;
}
h2.line-bg::after {
    content: '';
    position: absolute;
    width: 100%;
    height: 1rem;
    background: rgb(222,222,222);
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    z-index: -1;
}

@media(max-width: 767px) {
    .divider-xs {
        margin: 0.5rem 0 1rem;
    }

    .divider-sm {
        margin: 1rem auto;
    }

    .divider {
        margin: 1rem auto;
    }
    
    h2.line-bg::after {
        height: 0.45rem;
    }
    .cta-line {
        font-size: 1rem !important;
        line-height: 1.2rem;
        padding: 10px;
    }
    h1.podcast-title + hr,
    h1.blog-title + hr {
        margin-top: 1rem;
        margin-bottom: 2rem;
    }
    h1.podcast-title, h1.blog-title {
        font-size: 2.5rem !important;
    }
}

/* Image */

.img-decor {
    position: relative;
}
.img-decor::before {
    content: '';
    width: 150px;
    height: 130px;
    background: #b85cec;
    position: absolute;
    left: -12px;
    top: -12px;
    z-index: -1;
}
.img-decor img {
    width: 100%;
}

/* Footer line block */

.footer-line-block {
    text-align: center;
    padding: 20px 0;
}
.footer-line-block .divider-sm {
    width: 330px;
    border-top: 1px solid #fff;
    margin: 10px auto 30px;
}
.footer-line-block h4{
    font-weight: 700;
}
.footer-line-block .zodiac-list {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    align-items: flex-end;
}
.footer-line-block .zodiac-list a.zodiac {
    display: flex;
    flex-direction: column;
    height: 100%;
    align-items: center;
    color: #fff !important;
    padding: 0 12px;
}
.footer-line-block .zodiac-list .zodiac .z-name {
    font-size: 1.1rem;
}

@media (max-width: 1210px) {
    .footer-line-block .zodiac-list a.zodiac {
        padding: 0px;
    }
    .footer-line-block .zodiac-list .zodiac .img-fluid {
        max-width: 80%;
    }
}

/* Contact Section
--------------------------------*/
#contact {
    padding: 0;
    margin-bottom: -1px;
}

#contact h3 {
    margin-top: 90px;
    font-size: 1.62rem;
    font-weight: 700;
}

#contact strong {
    font-weight: 700;
}

#contact .contact-about p {
    font-size: 1.3rem;
    line-height: 1.7rem;
    margin-bottom: 2rem;
    font-weight: 400;
}


@media (min-width: 992px) {
    #contact .img-holder {
        margin-right: -80px;
    }
}

@media (min-width: 1200px) {
    #contact .img-holder {
        margin-right: 60px;
    }
}

/*** Form ***/

.input-group .form-control {
    height: 36px;
}
.webform-component-textarea .grippie {
    display: none;
}

.node-type-webform form.webform-client-form {
    margin-top: 60px;
}

.node-type-webform form.webform-client-form .form-control {
    border-radius: 7px;
}

.node-type-webform form.webform-client-form .form-group label {
    margin: 15px auto auto;
    color: #000;
    font-weight: 300;
}

.node-type-webform form.webform-client-form .button-primary {
    color: #fff;
    border: none;
    /*background: #b85cec;*/
    border-radius: 0px;
    padding: 10px 35px;
    font-weight: 300;
    margin: 30px auto !important;
    display: block;
    font-size: 18px;
    letter-spacing: 5px;
    text-transform: uppercase;
}

.node-type-webform form.webform-client-form .button-primary:hover {
    /*background: #b85ceccc;*/
}

.node-type-webform .field-name-body {
    font-size: 1.3rem;
}

/* social top block */

.social-top-block .container {
    position: relative;
}
.social-top-block .icon-holder {
    position: absolute;
    right: 3rem;
    top: 30px;
    z-index: 5;
}
.social-top-block .icon-holder .icon {
    font-size: 1px;
    line-height: 1px;
    border-radius: 30px;
    margin-bottom: 15px;
    padding: 10px;
    text-decoration: none;
    display: block;
}

@media(max-width: 767px) {
    .social-top-block {
        display: none
    }
}

/* about intro */

.about-intro {
    font-size: 1.8rem;
    line-height: 2.4rem;
    font-weight: 500;
}

.about-header-line {
    padding: 37px 0 38px;
}
.about-header-line h2 {
    font-size: 2.6rem;
    text-transform: uppercase;
    margin-bottom: 3px;
}
.about-header-line .lead {
    font-size: 2.1rem;
    font-weight: 400;
    text-transform: uppercase;
    line-height: 2.1rem;
    margin-bottom: 0px;
}

.about-sign {
    padding: 60px 0;
    line-height: 1.5rem;
    font-size: 1.2rem;
    font-weight: 400;
}
.about-sign .sign {
    font-size: 1.6rem;
    font-weight: 500;
}
.about-sign p {
    margin-bottom: 1.5rem;
}

.about-bottom,
.about-reason {
    position: relative;
    padding: 45px 0 60px;
    line-height: 1.5rem;
    font-size: 1.2rem;
    font-weight: 400;
}
.about-bottom .sign,
.about-reason .sign {
    font-size: 1.6rem;
    font-weight: 500;
}
.about-bottom p,
.about-reason p {
    margin-bottom: 1.5rem;
}
.about-bottom h3,
.about-reason h3 {
    font-size: 1.6rem;
    margin-bottom: 1.5rem;
}
.about-reason .circle-holder {
    width: 40px;
    height: 40px;
    border-radius: 40px;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 1.5rem;
    margin: auto auto 1.5rem;
}

.about-bottom .big-img-holder {
    margin-bottom: -1px;
}

@media (max-width: 1200px) {
    .about-bottom p,
    .about-reason p {
        margin-bottom: 1rem;
    }
}

@media(max-width: 767px) {
    .about-intro {
        font-size: 1.4rem;
        line-height: 1.6rem;
        font-weight: 500;
        padding-top: 1rem;
    }
}

/* home top block */
.home-top-block {
    position: relative;
    font-size: 1.8rem;
    line-height: 2.4rem;
}
.home-top-block h1 {
    font-weight: 300;
    font-size: 3.2rem;
}
.home-top-block h1 strong {
    font-weight: 700;
}
.home-top-block .lead {
    font-size: 1.9rem;
    font-weight: 400;
}
.home-top-block .cta-line {
    background: rgba(81,97,113, 0.9);
    color: #fff;
    text-transform: uppercase;
    font-weight: 300;
    font-size: 1.4rem;
    padding: 15px 0;
    position: absolute;
    width: 100%;
    bottom: 0;
}
.home-top-block .cta-line .metal-arrow {
    top: auto;
    bottom: -28px;
}

@media (max-width: 1200px) {
    .home-top-block h1 {
        font-size: 2.4rem;
    }
    .home-top-block .lead {
        font-size: 1.5rem;
        line-height: 1.8rem;
    }
    .home-top-block .cta-line {
        font-size: 1.2rem;
    }
}

@media(max-width: 767px) {
    .home-top-block h1 {
        font-size: 1.6rem;
    }
    .home-top-block .lead {
        font-size: 1.2rem;
        line-height: 1.4rem;
    }
    .home-top-block .cta-line {
        font-size: 1rem;
        line-height: 1.2rem;
        padding: 10px;
    }
}

/* home bottom block */
.home-bottom-block {
    position: relative;
    line-height: 1.5rem;
    font-size: 1.2rem;
    font-weight: 300;
}
.home-bottom-block .link-holder {
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.home-bottom-block .link-holder .btn {
    margin: 0px;
}
.home-bottom-block .icon-holder {
    margin-bottom: 0px;
    display: flex;
    align-items: center;
    justify-content: flex-end;
}
.home-bottom-block .icon-holder .icon {
    font-size: 1px;
    line-height: 1px;
    border-radius: 30px;
    margin-bottom: 0px;
    margin-left: 15px;
    padding: 10px;
    text-decoration: none;
    display: inline-block;
}
.home-bottom-block h1 {
    font-weight: 500;
    font-size: 3.2rem;
}
.home-bottom-block .sign {
    font-size: 1.6rem;
    font-weight: 500;
}
.home-bottom-block .cta-line {
    text-transform: uppercase;
    font-weight: 300;
    font-size: 1.4rem;
    padding: 15px 0;
}

@media (max-width: 1200px) {
    .home-bottom-block {
        padding-top: 3rem;
    }
    .home-bottom-block h1 {
        font-size: 2.4rem;
    }
    .home-bottom-block .cta-line {
        font-size: 1.2rem;
    }
}

@media(max-width: 767px) {
    .home-bottom-block {
        padding-top: 2rem;
    }
    .home-bottom-block h1 {
        font-size: 1.65rem;
        line-height: 2rem;
    }
    .home-bottom-block .cta-line {
        font-size: 1rem;
        line-height: 1.2rem;
        padding: 10px;
    }
    .home-bottom-block .link-holder {
        justify-content: center;
        flex-wrap: wrap;
    }
}

/* blog top block */

.blog-top-block {
    position: relative;
    font-size: 1.8rem;
    line-height: 2.4rem;
}
.blog-top-block h1 {
    font-weight: 300;
    font-size: 3.2rem;
}
.blog-top-block h1 strong {
    font-weight: 700;
}
.blog-top-block .lead {
    font-size: 1.9rem;
    font-weight: 400;
}
.blog-top-block .cta-line {
    background: rgba(81,97,113);
    color: #fff;
    text-transform: uppercase;
    font-weight: 300;
    font-size: 1.4rem;
    padding: 15px 0;
    position: relative;
    width: 100%;
}
.blog-top-block .cta-line .metal-arrow {
    top: auto;
    bottom: -28px;
}

@media (max-width: 1200px) {
    .blog-top-block h1 {
        font-size: 2.4rem;
    }
    .blog-top-block .lead {
        font-size: 1.5rem;
        line-height: 1.8rem;
    }
    .blog-top-block .cta-line {
        font-size: 1.2rem;
    }
}

/* products page */
.products-header {
    position: relative;
    font-size: 1.8rem;
    line-height: 2.4rem;
    height: 300px;
    box-shadow: 0px 3px 18px 0px rgba(0, 0, 0, 0.35);
    z-index: 2;
}
.products-header h1 {
    font-weight: 700;
    font-size: 4.2rem;
    margin-bottom: 0px;
    line-height: 4.2rem;
}
.products-header .lead {
    font-size: 1.9rem;
    font-weight: 400;
}
.product {
    padding: 100px 0;
    position: relative;
    font-size: 1.4rem;
    line-height: 1.6rem;
}
.product .relative {
    position: relative;
}
.product .divider-xs.float{
    position: absolute;
    top: 6px;
    left: -40px;
}
.product h2 {
    font-size: 2.2rem;
    margin-bottom: 0.5rem;
}
.product p {
    font-size: 1.4rem;
    margin-bottom: 1rem;
}
.product ul.icon {
    list-style: none;
    padding-left: 40px;
}
.product ul.icon li {
    position: relative;
    font-size: 1.2rem;
    line-height: 1.3rem;
    margin-bottom: 12px;
    padding-top: 4px;
}
.product ul.icon li::before {
    content: '';
    position: absolute;
    width: 28px;
    height: 28px;
    display: block;
    top: 0px;
    left: -38px;
    background: url('../img/icons/termekek-icon.png') no-repeat center center;
    background-size: contain;
}
.product .price {
    font-size: 4.2rem;
    font-weight: 700;
    color: rgb(22, 25, 28);
    line-height: 4rem;
}
.product .level {
    font-weight: 400;
    font-size: 1.6rem;
    line-height: 1.9rem;
    margin-top: 4px;
}
.product .btn {
    font-size: 1.5rem;
    font-weight: 500;
    padding: 1.313rem 4rem;
}

@media(max-width: 767px) {
    .products-header {
        height: 100px;
    }
    .product {
        padding: 3rem 0;
        font-size: 1.2rem;
        line-height: 1.4rem;
    }
    .product p {
        font-size: 1.2rem;
        margin-bottom: 1rem;
    }
    .product h2 {
        font-size: 1.7rem !important;
    }
    .product ul.icon li {
        font-size: 1rem;
        line-height: 1.1rem;
    }
    .product .price {
        font-size: 3rem;
    }
    .product .level {
        font-size: 1.3rem;
        line-height: 1.65rem;
        margin-top: 8px;
    }
    .product .btn {
        padding: 1rem 1rem;
        max-width: 100%;
    }
}

/* test start */
.test-start {
    font-size: 1.1rem;
    padding: 15px 0 0;
}

.test-start .img-holder {
    position: relative;
    width: calc(100% - 2rem);
    padding-top: calc(100% - 2rem); /* 1:1 Aspect Ratio */
}

.test-start .img-holder .img-circle {
    position:  absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    border-radius: 50%;
    overflow: hidden;
}

.test-start .img-holder img {
    object-fit: cover;
    width: 100%;
    height: 100%;
}

.test-start .btn {
    margin-bottom: 0px;
}

.test-start hr {
    border-top: 2px solid rgb(222,222,222);
    margin-top: 2rem;
    margin-bottom: 2rem;
}

.test-start strong {
    font-weight: 700;
}

.test-start h2,
.test-start h2 a {
    font-size: 2rem;
    font-weight: 500;
    line-height: 2.5rem;
    text-transform: uppercase;
    margin-bottom: 0px;
}

@media (min-width: 1200px) {
    .test-start p{
        font-size: 1.2rem;
    }
}

/* zodiac grid block */

/*.zodiac-matrix-block .table thead th,*/

/* faq block */

/* horoscope categories block */

/* daily horoscope block */

/* buttons */
.btn-primary {
    color: #fff;
    border: none;
    background: rgb(71,162,241);
    border-radius: 0px;
    padding: 11px 35px;
    font-weight: 300;
    margin: 15px auto;
    display: inline-block;
    font-size: 18px;
    text-transform: uppercase;
}

.btn-primary:hover {
    background: rgb(71,162,241, 0.9);
}


@media (max-width: 1200px) {
    .btn-primary {
        padding: 11px 20px;
    }
}

.btn-dark {
    color: #fff;
    border: none;
    background: #23272a;
    border-radius: 0px;
    padding: 14px 40px;
    font-weight: 300;
    margin: 15px auto;
    display: inline-block;
    font-size: 18px;
    letter-spacing: 1px;
    text-transform: uppercase;
}

.btn-dark:hover {
    background: #23272acc;
}

.btn-tag {
    color: #fff;
    border: none;
    background: #23272a;
    border-radius: 0px;
    padding: 6px 16px;
    font-weight: 300;
    font-size: 0.88rem;
    letter-spacing: 1px;
    text-transform: uppercase;
    line-height: 0.9rem;
    display: flex;
    align-items: center;
    height: 32px;
}

.btn-tag:hover {
    color: #fff;
    opacity: 0.9;
}