/*
|--------------------------------------------------------------------------
| Standard / Inner Pages
|--------------------------------------------------------------------------
|
| Shared design for default WordPress pages:
| Contact, Privacy Policy, Terms & Conditions, FAQ, etc.
|
*/

.ws-standard-hero {
    position: relative;
    min-height: 320px;
    display: flex;
    align-items: center;
    overflow: hidden;
    background-color: #f5eef7;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
}

.ws-standard-hero__overlay {
    /*position: absolute;
    inset: 0;
    background:
        linear-gradient(
            90deg,
            rgba(255,255,255,.82),
            rgba(255,255,255,.38)
        );
    pointer-events: none;*/
}

.ws-standard-hero .ws-container {
    position: relative;
    z-index: 2;
    width: min(var(--container), calc(100% - 40px));
}

.ws-standard-hero__inner {
    /*max-width: 900px;*/
    padding: 65px 0;
    text-align: center;
}

.ws-standard-hero__title {
    /*display: flex;*/
    align-items: center;
    flex-wrap: wrap;
    gap: 15px;

    margin: 0;

    color: var(--primary);
    font-family: var(--font-caveat);
    font-size: clamp(3.5rem, 7vw, 5.5rem);
    font-weight: 500;
    line-height: 1.05;
}

.ws-standard-hero__heart {
    width: 38px;
    height: auto;
    flex: 0 0 auto;
}

.ws-standard-hero__description {
    max-width: 720px;
    margin: 16px auto;

    color: #4c4c4c;
    font-size: 16px;
    line-height: 1.7;
}


/*
|--------------------------------------------------------------------------
| Page Layout
|--------------------------------------------------------------------------
*/

.ws-standard-page {
    padding: 75px 0 90px;
    background: #fff;
}

.ws-standard-page__layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 300px;
    gap: 60px;
    align-items: start;
}


/*
|--------------------------------------------------------------------------
| Main Content
|--------------------------------------------------------------------------
*/

.ws-standard-page__main {
    min-width: 0;
}

.ws-standard-page__article {
    margin: 0;
    padding: 0;
}

.ws-standard-page__content {
    color: #444;
    font-size: 16px;
    line-height: 1.9;
}

.ws-standard-page__content > *:first-child {
    margin-top: 0;
}

.ws-standard-page__content > *:last-child {
    margin-bottom: 0;
}

.ws-standard-page__content h2 {
    margin: 42px 0 15px;

    color: #582d87;

    font-family: var(--font-caveat);
    font-size: 40px;
    font-weight: 500;
    line-height: 1.15;
}

.ws-standard-page__content h3 {
    margin: 32px 0 12px;

    color: #4f237c;

    font-size: 24px;
    font-weight: 700;
    line-height: 1.3;
}

.ws-standard-page__content h4 {
    margin: 25px 0 10px;

    color: #4f237c;

    font-size: 19px;
    font-weight: 700;
}

.ws-standard-page__content p {
    margin: 0 0 20px;
}

.ws-standard-page__content ul,
.ws-standard-page__content ol {
    margin: 0 0 25px;
    padding-left: 24px;
}

.ws-standard-page__content li {
    margin-bottom: 8px;
}

.ws-standard-page__content a {
    color: #6d2c91;
    text-decoration: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: 3px;
}

.ws-standard-page__content a:hover {
    color: #258489;
}

.ws-standard-page__content strong {
    color: #333;
}

.ws-standard-page__content blockquote {
    margin: 30px 0;
    padding: 22px 28px;

    border-left: 4px solid #f7c800;

    background: #faf6fb;
    color: #555;

    font-family: var(--font-caveat);
    font-size: 25px;
    line-height: 1.5;
}

.ws-standard-page__content img {
    display: block;
    max-width: 100%;
    height: auto;
    margin: 25px 0;
    border-radius: 10px;
}

.ws-standard-page__content table {
    width: 100%;
    margin: 25px 0;
    border-collapse: collapse;
}

.ws-standard-page__content th,
.ws-standard-page__content td {
    padding: 12px 15px;
    border: 1px solid #e6e0e8;
    text-align: left;
}

.ws-standard-page__content th {
    background: #f7f1f8;
    color: #4f237c;
    font-weight: 700;
}


/*
|--------------------------------------------------------------------------
| Sidebar
|--------------------------------------------------------------------------
*/

.ws-standard-page__sidebar {
    min-width: 0;
}

.ws-standard-sidebar {
    position: sticky;
    top: 110px;
}

.ws-standard-sidebar__widget {
    margin-bottom: 25px;
    padding: 28px;

    border: 1px solid #eee7f0;
    border-radius: 14px;

    background: #fff;

    box-shadow: 0 10px 30px rgba(74, 43, 109, .07);
}

.ws-standard-sidebar__title,
.wp-block-search__label {
    position: relative;

    margin: 0 0 18px;
    padding-bottom: 12px;

    color: #4f237c;

    font-family: var(--font-oswald);
    font-size: 19px;
    font-weight: 500;
    line-height: 1.3;
    text-transform: uppercase;
}

.ws-standard-sidebar__title::after,
.wp-block-search__label::after {
    content: "";

    position: absolute;
    left: 0;
    bottom: 0;

    width: 45px;
    height: 2px;

    background: #f7c800;
}


/*
|--------------------------------------------------------------------------
| Sidebar Menu
|--------------------------------------------------------------------------
*/

.ws-standard-sidebar__menu,
.widget .menu,
.wp-block-categories {
    margin: 0;
    padding: 0;
    list-style: none;
}

.ws-standard-sidebar__menu li,
.widget .menu li,
.wp-block-categories li {
    margin: 0;
    padding: 0;
    border-bottom: 1px solid #eee7f0;
}

.ws-standard-sidebar__menu li:last-child,
.widget .menu li:last-child,
.wp-block-categories li:last-child {
    border-bottom: 0;
}

.ws-standard-sidebar__menu a,
.widget .menu a,
.wp-block-categories a {
    position: relative;
    display: block;
    padding: 11px 24px 11px 0;
    color: #444;
    font-size: 15px;
    line-height: 1.4;
    text-decoration: none;
    transition:
        color .25s ease,
        padding-left .25s ease;
}

.ws-standard-sidebar__menu a::after,
.widget .menu a::after,
.wp-block-categories a::after {
    content: "\f054";
    position: absolute;
    top: 50%;
    right: 2px;
    color: #b9a9c2;
    font-family: "Font Awesome 6 Free";
    font-size: 9px;
    font-weight: 900;
    transform: translateY(-50%);
    transition: color .25s ease, right .25s ease;
}

.ws-standard-sidebar__menu a:hover,
.ws-standard-sidebar__menu .current-menu-item > a,
.widget .menu a:hover,
.widget .menu a:hover .current-menu-item > a,
.wp-block-categories a:hover,
.wp-block-categories .current-menu-item > a {
    color: #6d2c91;
    padding-left: 5px;
}

.ws-standard-sidebar__menu a:hover::after,
.ws-standard-sidebar__menu .current-menu-item > a::after
.widget .menu a:hover::after,
.widget .menu .current-menu-item > a::after 
.wp-block-categories  a:hover::after,
.wp-block-categories  .current-menu-item > a::after {
    right: 0;
    color: #6d2c91;
}

.wp-block-quote {
    background: url('../images/dandelion-small-color.png');
    background-size: auto;
    background-position: bottom right;
    background-repeat: no-repeat;
    font-family: var(--font-caveat);
    font-size: 28px;
    color: var(--primary);
    padding-bottom: 30px;
}

.wp-block-quote::before {
    content: '"';
    font-size: 36px;

}

/*.wp-block-quote::after {
    content: url('assets/images/quote-icon.png');
    font-size: 36px;

}*/

.wp-block-quote .wp-block-paragraph {
    line-height: 1;
}

.wp-block-search {
    position: relative;
}

.wp-block-search input {
    width: 100%;
    height: 30px;
    border: 1px solid #e7e7e7;
    background: #f7f7f7;
    padding:0 10px;
    font-size: 14px;
    outline: none;
    transition: .3s ease;
}

.wp-block-search button {
    /*position: absolute;
    top: 2px;
    right: 0;*/
    width: 80%;
    height: 30px;
    border: none;
    background: var(--dark-cyan);
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: .3s ease;
    font-size: 14px;
    margin: 0;
    padding: 0 3px;
}

.wp-block-tag-cloud {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.wp-block-tag-cloud a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    /*height: 42px;*/
    padding: 0px 10px;
    background: #f7f7f7;
    border: 1px solid #ececec;
    color: #111;
    font-size: 14px !important;
    text-decoration: none;
    transition: .3s ease;
}

.wp-block-tag-cloud a:hover {
  background: var(--dark-green);
  border-color: var(--dark-green);
  color: #fff;
}


/*
|--------------------------------------------------------------------------
| Sidebar CTA
|--------------------------------------------------------------------------
*/

.ws-standard-sidebar__widget--cta {
    overflow: hidden;

    background:
        linear-gradient(
            145deg,
            #f7f1f8 0%,
            #fff 65%
        );
}

.ws-standard-sidebar__cta-icon {
    margin-bottom: 10px;

    color: #6d2c91;
    font-size: 22px;
}

.ws-standard-sidebar__cta-title {
    margin: 0 0 10px;

    color: #582d87;

    font-family: var(--font-caveat);
    font-size: 30px;
    font-weight: 500;
    line-height: 1.15;
}

.ws-standard-sidebar__cta-text {
    margin: 0 0 20px;

    color: #666;

    font-size: 14px;
    line-height: 1.65;
}

.ws-standard-sidebar__cta-button {
    width: auto;
}


/*
|--------------------------------------------------------------------------
| WordPress Widgets
|--------------------------------------------------------------------------
*/

.ws-standard-sidebar .widget {
    margin-bottom: 25px;
    padding: 28px;

    border: 1px solid #eee7f0;
    border-radius: 14px;

    background: #fff;
    box-shadow: 0 10px 30px rgba(74, 43, 109, .07);
}

.ws-standard-sidebar .widget:last-child {
    margin-bottom: 0;
}

.ws-standard-sidebar .widget-title {
    position: relative;

    margin: 0 0 18px;
    padding-bottom: 12px;

    color: #4f237c;

    font-family: var(--font-oswald);
    font-size: 19px;
    font-weight: 500;
    line-height: 1.3;
    text-transform: uppercase;
}

.ws-standard-sidebar .widget-title::after {
    content: "";

    position: absolute;
    left: 0;
    bottom: 0;

    width: 45px;
    height: 2px;

    background: #f7c800;
}


/*
|--------------------------------------------------------------------------
| Responsive
|--------------------------------------------------------------------------
*/

@media (max-width: 991px) {

    .ws-standard-hero {
        min-height: 280px;
    }

    .ws-standard-hero__inner {
        padding: 55px 0;
    }

    .ws-standard-hero__title {
        font-size: clamp(3rem, 8vw, 4.5rem);
    }

    .ws-standard-page {
        padding: 60px 0 75px;
    }

    .ws-standard-page__layout {
        grid-template-columns: minmax(0, 1fr) 260px;
        gap: 35px;
    }

    .ws-standard-sidebar__widget {
        padding: 23px;
    }
}


@media (max-width: 767px) {

    .ws-standard-hero {
        min-height: 230px;
    }

    .ws-standard-hero .ws-container {
        width: min(var(--container), calc(100% - 30px));
    }

    .ws-standard-hero__inner {
        padding: 45px 0;
    }

    .ws-standard-hero__title {
        gap: 10px;

        font-size: clamp(2.8rem, 12vw, 4rem);
    }

    .ws-standard-hero__heart {
        width: 28px;
    }

    .ws-standard-hero__description {
        font-size: 14px;
    }

    .ws-standard-page {
        padding: 45px 0 60px;
    }

    .ws-standard-page__layout {
        grid-template-columns: 1fr;
        gap: 40px;
    }

    .ws-standard-sidebar {
        position: static;
    }

    .ws-standard-page__content {
        font-size: 15px;
        line-height: 1.8;
    }

    .ws-standard-page__content h2 {
        font-size: 34px;
    }
}


@media (max-width: 480px) {

    .ws-standard-hero__title {
        font-size: 2.7rem;
    }

    .ws-standard-page__content h2 {
        font-size: 31px;
    }

    .ws-standard-sidebar__widget {
        padding: 22px;
    }

}
