
/*
======================================
Wish Seed Theme
======================================
*/

:root{

--primary:#6d2c91;
--secondary:#1aa5a5;
--orange: #f7c800;
--accent:#f2c84b;
--dark-cyan:#4d9196;
--dark-green: #258489;
--dark-green-hover: #0e606d;
--dark:#2b2b2b;
--light:#ffffff;
--container:1220px;
--ws-quote-color: #d7b36a;

--font-caveat: 'Caveat', cursive;
--font-dancing-script: 'Dancing Script', cursive;
--font-roboto: 'Roboto', sans-serif;
--font-oswald: 'Oswald';

--radius:16px;
--transition:.35s;

}

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

body{
    font-family:'Nunito',sans-serif;
    font-size:18px;
    color:var(--dark);
    line-height:1.8;
}

.ws-container{
    width:min(var(--container),calc(100% - 40px));
    margin-inline:auto;
}

.ws-header{
    position: relative;
    width: 100%;
    z-index: 100;
    background: #ffffff;
    top:0;
    left:0;
    right:0;    
}

.ws-header.is-sticky{
    background:#fff;
    box-shadow:0 10px 30px rgba(0,0,0,.08);
}

.ws-header-inner{
    display:grid;
    grid-template-columns:auto auto auto;
    align-items:center;
    justify-content: space-between;
    gap:40px;
    padding:15px 0 0;
}

.ws-actions{
    display:flex;
    align-items:center;
    gap:20px;
}

.ws-mobile-toggle{
    display:none;
    background:none;
    border:none;
    font-size:30px;
    cursor:pointer;
}

/*.ws-mobile-toggle{
    display:none;
    width:46px;
    height:46px;
    border:none;
    background:none;
    cursor:pointer;
}*/

.ws-mobile-toggle span{
    display:block;
    height:2px;
    margin:7px 0;
    background:var(--dark);
    transition:.35s;
}

.ws-mobile-menu{
    display:none;
    position:fixed;
    top:0;
    right:-100%;
    width:300px;
    height:100vh;
    background:#fff;
    padding:40px 25px;
    transition:.35s;
    box-shadow:-8px 0 30px rgba(0,0,0,.12);
}

.ws-mobile-menu.active{
    right:0;
}

.ws-mobile-nav{
    list-style:none;
}

.ws-mobile-nav li{
    margin-bottom:18px;
}

.ws-mobile-nav a{
    text-decoration:none;
    font-weight:700;
    color:var(--dark);
}

.ws-logo img{
    display: block;
    max-height: 70px;
    width: auto;
    transition: .35s;
}



.ws-header.is-sticky .ws-logo img{
    max-height:58px;
}

/*.ws-menu{
    display:flex;
    justify-content:center;
    align-items:center;
    gap:34px;
    list-style:none;
}

.ws-menu>li{
    position:relative;
}

.ws-menu>li>a{
    position:relative;
    display:block;
    padding:10px 0;
    font-weight:700;
    text-decoration:none;
    color:var(--dark);
}

.ws-menu>li>a::after{
    content:"";
    position:absolute;
    left:0;
    bottom:-4px;
    width:0;
    height:2px;
    background:var(--primary);
    transition:.35s;
}

.ws-menu>li:hover>a::after,
.ws-menu>.current-menu-item>a::after{
    width:100%;
}

.ws-menu ul{
    position:absolute;
    top:100%;
    left:0;
    min-width:240px;
    background:#fff;
    list-style:none;
    padding:15px 0;
    border-radius:16px;
    box-shadow:0 20px 50px rgba(0,0,0,.12);
    opacity:0;
    visibility:hidden;
    transform:translateY(15px);
    transition:.30s;
}

.ws-menu li:hover>ul{
    opacity:1;
    visibility:visible;
    transform:none;
}*/



.ws-navigation{
    transition:.35s;
}

.ws-hero {
    position:relative;
    /*min-height:100vh;*/
    display:flex;
    align-items:center;
    overflow:hidden;
    padding-top:50px;
    padding-bottom: 50px;
    background-size:cover;
    background-position:center center;
    background-repeat:no-repeat;
}

.ws-hero-heart {
    width: 35px;
    height: auto;
    margin-top: 0px;
    flex-shrink: 0;
}

.ws-hero-grid{
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;    
    gap:70px;
    height: 100%;
}
.ws-hero-content{
    max-width: 50%;
}

.ws-hero-title{
    font-family:'Caveat',cursive;
    font-size:clamp(4.2rem,8vw,4.6rem);
    line-height:.95;
    color:var(--primary);
    margin-bottom:25px;
}

.ws-hero-subtitle{
    display:inline-block;
    font-size: 1.4rem;
    font-weight:700;
    letter-spacing:.18em;
    color:var(--dark);
    /*margin-bottom:8px;*/
}

.ws-hero-subtitle-2{
    /*display:inline-block;*/
    font-family:'Caveat',cursive;
    font-size: 2.4rem;
    font-weight: 500;
    /*letter-spacing: .18em;*/
    color: var(--dark-green); 
    margin-bottom:20px;
}

.ws-hero-text{
    max-width:50%;
    font-size:.95rem;
    font-weight: 900;
    /*margin-bottom:40px;*/
    margin: 0 auto 30px;
    text-align: center;
}

.ws-hero-buttons{
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 20px;
    flex-wrap: wrap;
}


.ws-hero-image{
    position:relative;
}

.ws-hero-image img{
    display:block;
    width:100%;
    height:auto;
}

.ws-hero::before{
    content:"";
    position:absolute;
    inset:0;
    pointer-events:none;
    z-index:1;
    mix-blend-mode:var(--overlay-blend);
}

.ws-hero > .ws-container{
    position: relative;
    z-index: 2;
}

.ws-overlay{
    position:fixed;
    inset:0;
    background:rgba(0,0,0,.45);
    opacity:0;
    visibility:hidden;
    transition:.35s;
}

.ws-overlay.active{
    opacity:1;
    visibility:visible;
}

.ws-overlay-top-bottom::before{
    background:
    linear-gradient(
        to bottom,
        rgba(var(--overlay-rgb),var(--overlay-opacity)),
        rgba(var(--overlay-rgb),0)
    );
}

.ws-overlay-left-right::before{
    background:
    linear-gradient(
        to right,
        rgba(var(--overlay-rgb),var(--overlay-opacity)),
        rgba(var(--overlay-rgb),0)
    );
}

.ws-overlay-right-left::before{
    background:
    linear-gradient(
        to left,
        rgba(var(--overlay-rgb),var(--overlay-opacity)),
        rgba(var(--overlay-rgb),0)
    );
}

.ws-overlay-bottom-top::before{
    background:
    linear-gradient(
        to top,
        rgba(var(--overlay-rgb),var(--overlay-opacity)),
        rgba(var(--overlay-rgb),0)
    );
}

.ws-overlay-diagonal::before{
    background:
    linear-gradient(
        135deg,
        rgba(var(--overlay-rgb),var(--overlay-opacity)),
        rgba(var(--overlay-rgb),0)
    );
}

.ws-overlay-radial::before{
    background:
    radial-gradient(
        circle,
        rgba(var(--overlay-rgb),var(--overlay-opacity)),
        rgba(var(--overlay-rgb),0)
    );
}

.ws-overlay-solid::before{

    background:
        rgba(
            var(--overlay-rgb1),
            var(--overlay-opacity)
        );
}
.ws-overlay-gradient{}
.ws-overlay-gradient::before{
    background:
        linear-gradient(
            var(--overlay-direction),
            rgba(
                var(--overlay-rgb1),
                var(--overlay-opacity)
            ),

            rgba(
                var(--overlay-rgb2),
                var(--overlay-opacity)
            )
        );
}

.current-menu-item>a{
    color:var(--primary);
}

.current-menu-parent>a{
    color:var(--primary);
}

/*.ws-container{
    width:min(1320px,calc(100% - 48px));
    margin-inline:auto;
}*/

/*=========================================
Section
=========================================*/

.ws-section{
    position:relative;
    padding:10px 0;
}

.ws-section-sm{
    padding:70px 0;
}

.ws-section-lg{
    padding:150px 0;
}

.ws-section-heading{
    margin-bottom:60px;
}

.ws-section-heading.is-center{
    text-align:center;
}

.ws-section-subtitle{
    display:inline-block;
    font-weight:700;
    letter-spacing:.12em;
    text-transform:uppercase;
    color:var(--secondary);
    margin-bottom:15px;
}

.ws-section-title{
    font-size:clamp(2.5rem,5vw,4.5rem);
    color:var(--primary);
    line-height:1.1;
}

.ws-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:8px 18px;
    gap:10px;
    /*background:linear-gradient(90deg,var(--primary),var(--secondary));*/
    background:var(--ws-btn-bg,#4f237c);
    color:var(--ws-btn-color,#ffffff);
    border-radius:999px;
    text-decoration:none;
    font-size: 13px;
    font-weight:400;
    transition:.35s;
}
.ws-btn-2{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:6px 18px;
    gap:10px;
    background:var(--ws-btn-bg,#4f237c);
    color:var(--ws-btn-color,#ffffff);
    border-radius:6px;
    text-decoration:none;
    font-size: 13px;
    font-weight:400;
    transition:.35s;
}


.ws-btn:hover{
    background:var(--ws-btn-hover-bg,var(--ws-btn-bg));
    color:var(--ws-btn-hover-color,var(--ws-btn-color));
}


.ws-btn-primary{
    background:var(--primary);
    color:#fff;
}

.ws-btn-primary:hover{
    background: #5d0da5;
    color:#fff;
}

.ws-btn-secondary{
    background:var(--secondary);
    color:#fff;
}

.ws-btn-secondary:hover{
    background: #1c7f89;
    color:#fff;
}

.ws-btn-outline{
    border:1px solid var(--primary);
    color:var(--primary);
    background: #fff;
}

.ws-btn-outline:hover{
    color: var(--primary);
    background: #eee;
}

.ws-btn-orange{
    color:var(--primary);
    background: var(--orange);
}

.ws-btn-orange:hover{
    color: var(--dark);
    background: #f5b902;
}

.ws-btn-dark-green{
    color:#fff;
    background: var(--dark-green);
}

.ws-btn-dark-green:hover{
    color: #fff;
    background: var(--dark-green-hover);
}

.ws-card{
    background:var(--card-bg,#fff);
    border-radius:28px;
    padding:40px;
    box-shadow:0 20px 50px rgba(0,0,0,.06);
    transition:.35s;
}

.ws-card:hover{
    transform:translateY(-10px);
}

.ws-card__badge{
    display:inline-block;
    margin-bottom:12px;
    font-size:.8rem;
    font-weight:600;
    text-transform:uppercase;
}

.ws-card__subtitle{
    font-size:.9rem;
    margin-bottom:10px;
    opacity:.8;
}

.ws-card__icon{
    font-size:2rem;
    margin-bottom:20px;
}

.ws-card--left{
    text-align:left;
}

.ws-card--center{
    text-align:center;
}

.ws-floating{
    position:absolute;
    pointer-events:none;
    user-select:none;
    z-index:-1;
}

.ws-image{
    display:block;
    width:100%;
    border-radius:28px;
    overflow:hidden;
}

.ws-image img{
    display:block;
    width:100%;
    transition:.35s;
}

.ws-image:hover img{
    transform:scale(1.05);

}

.ws-floating-shape{
    position:absolute;
    border-radius:50%;
    opacity:.18;
    animation:wsFloat 8s ease-in-out infinite;
}

.ws-shape-1{
    width:90px;
    height:90px;
    background:var(--secondary);
    top:18%;
    left:5%;
}

.ws-shape-2{
    width:60px;
    height:60px;
    background:var(--accent);
    right:12%;
    top:25%;
}

.ws-shape-3{
    width:120px;
    height:120px;
    background:var(--primary);
    bottom:10%;
    left:12%;
}

@keyframes wsFloat{
    0%,100%{transform:translateY(0);
}

50%{

transform:translateY(-18px);

}

}



/********* Welcome Section *********/

.ws-welcome{
    background-color: #f9f4f1;
    position:relative;
    padding:40px 0;
    overflow:hidden;
}

.ws-welcome-grid{
    display:grid;
    grid-template-columns:32% 36% 30%;
    gap:15px;
    align-items:center;
}

.ws-author{
    display:flex;
    justify-content:center;
    align-items:center;
}

.ws-author img{
    display:block;
    width:100%;
    max-width:340px;
    height:auto;
    object-fit:contain;
}

.ws-author-watercolor{
    position:relative;
}

.ws-author-watercolor::before{
    content:"";
    position:absolute;
    inset:-25px;
    /*background:url('../images/defaults/watercolor-author.webp') center/contain no-repeat;*/
    z-index:-1;
}

.ws-author-message{
    display:flex;
    flex-direction:column;
    justify-content:center;
    /*align-items:center;*/
    text-align:left;
    min-height:420px;
}

.ws-section-title{
    display:inline-flex;
    align-items:flex-start;
    /*justify-content:center;*/
    gap:12px;
    margin-bottom:25px;
}

.ws-title{
    margin:0;
    line-height:1;
}

.ws-title-heart{
    width:20px;
    height:auto;
    margin-top:6px;
    flex-shrink:0;
}

.ws-title-heart{
    animation:wsHeartFloat 3s ease-in-out infinite;
}

@keyframes wsHeartFloat{
    0%,100%{
        transform:translateY(0);
    }

    50%{
        transform:translateY(-5px);
    }

}

.ws-author-message h2{
    font-family: 'Caveat', cursive;
    font-size:46px;
    color:#582d87;
    line-height:1;
}

.ws-author-message p{
    font-size:16px;
    line-height:1.4;
    color:#555;
}

.ws-author-message h3{
    font-family: 'Caveat', cursive;
    font-size:26px;
    color: var(--dark-green);
    line-height:1;
    margin-bottom: 1.6rem;
}

.ws-book{
    display:flex;
    justify-content:center;
    align-items:center;
}

.ws-book img{
    display:block;
    width:100%;
    max-width:300px;
    height:auto;
    object-fit:contain;
    /*transition:.4s;*/
}

.ws-book:hover img{
    /*transform: translateY(-10px) rotate(-2deg);*/
}

.ws-author,
.ws-book{
    min-height:420px;
    display:flex;
    justify-content:center;
    align-items:center;
}

.ws-book-card{
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:22px;
}

.ws-book-image{

    display:flex;

    justify-content:center;

    align-items:center;

    width:100%;

}

.ws-book-image img{
    width:100%;
    max-width:200px;
    height:auto;
    object-fit:contain;
    /*transition:.4s;*/

}

/*.ws-book-image:hover img{

    transform:

        translateY(-8px)

        rotate(-2deg);

}*/

.ws-book-cart{
    /*width:220px;*/
    justify-content:center;
    display:flex;
    align-items:center;
    gap:12px;
    border-radius:50px;
}

.ws-book-links{
    display:flex;
    gap:18px;
    justify-content:center;
}

.ws-book-links a{
    width:42px;
    height:42px;
    /*border-radius:50%;*/
    display:flex;
    align-items:center;
    justify-content:center;
    /*background:#fff;
    color:#378683;
    box-shadow:0 5px 18px rgba(0,0,0,.08);*/
    transition:.3s;
}

.ws-book-links a:hover{
    transform:translateY(-4px);
    /*color:#fff;
    background:#6C2A8D;*/
}

.ws-book-links img {
    width: 40px;
    height: auto;
}

.ws-book-availability-text {
    font-size: 14px;
    font-weight: 400;
    text-align: center;
    margin-bottom: 0;
}


/*.ws-newsletter{
    background:linear-gradient(135deg, var(--primary), var(--secondary));
    padding:90px 0;
    border-radius:40px;
    color:#fff;
}*/







/*=========================================
Utilities
=========================================*/

.ws-text-center{text-align:center;}
.ws-text-left{text-align:left;}
.ws-text-right{text-align:right;}

.ws-hidden{display:none;}

.ws-flex{
    display:flex;
}

.ws-grid{
    display:grid;
}

.ws-align-center{
    align-items:center;
}

.ws-justify-between{
    justify-content:space-between;
}

.ws-gap-20{
    gap:20px;
}

.ws-gap-40{
    gap:40px;
}






/*.ws-hero::before{
    content:"";
    position:absolute;
    top:-120px;
    left:-150px;
    width:700px;
    height:700px;
    /*background:radial-gradient(circle, rgba(126,80,180,.15), transparent 70%);*/
    /*z-index:-2;* /

    inset: 0;
    background: var(--hero-overlay-color, #ffffff);
    opacity: var(--hero-overlay-opacity, 0.15);
    z-index: 1;    
}

.ws-hero::after{
    content:"";
    position:absolute;
    right:-200px;
    bottom:-150px;
    width:600px;
    height:600px;
    background: radial-gradient(circle, rgba(0,180,170,.12), transparent 70%);
    z-index:-2;
}*/

/*********************** Homepage Features ******************************/

.ws-features{
    padding:40px 0;
}

.ws-features-grid{
    display:grid;
    grid-template-columns: repeat(4,1fr);
    gap:28px;
}

/****** Catd *****/
.ws-feature-card{
    position:relative;
    padding:20px 25px;
    border-radius:10px;
    overflow:hidden;
    text-align:center;
    /*box-shadow: 0 15px 40px rgba(0,0,0,.05);*/
    /*transition:.55s;*/
    min-height:300px;
    display:flex;
    flex-direction:column;
    align-items:center;
}

.ws-feature-card:hover{
    /*transform:translateY(-8px);*/
}

.ws-feature-icon{
    width:60px;
    height:60px;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    margin:0 auto 15px;
    padding: 5px;
}

.ws-feature-icon i{
    font-size:22px;
    color:#fff;
    line-height:1;
}

.ws-feature-icon img{
    width:40px;
    height:40px;
    object-fit:contain;
}

.ws-feature-card h3{
    font-family: 'Caveat';
    margin-bottom:18px;
}

.ws-feature-card p{
    font-size: 14px;
    margin-bottom:28px;
}

.ws-feature-card a{
    color: var(--dark);
    font-size: 14px;
    /*margin-top:auto;*/
    display:inline-flex;
    align-items:center;
    gap:8px;
    font-weight:600;
    text-decoration:none;
}

/*.ws-feature-card a:hover{
    text-decoration: underline;
}*/

.ws-feature-flower{
    position:absolute;
    right:0;
    bottom:0;
    width:90px;
    opacity:.75;
    pointer-events:none;
}


/*--------------------------------------------------------------
# Newsletter
--------------------------------------------------------------*/

.ws-newsletter-section,
.ws-newsletter {

    position: relative;
    overflow: hidden;
    padding: 20px 0;

}

.ws-newsletter-inner{
    background-size:cover;
    background-repeat:no-repeat;
    background-position:center;    
    display:flex;
    align-items:center;
    /*justify-content:space-between;*/
    gap:40px;
    position:relative;
    z-index:2;
    padding: 10px 80px;
    min-height: 180px;
}

.ws-newsletter-content{
    flex:1;
    max-width:480px;
}

.ws-newsletter-content h3{
    display:flex;
    align-items:center;
    font-family: 'Caveat', sans-serif;
    color: var(--light);
    gap:15px;
    margin-bottom:0px;
    font-size:42px;
    line-height:1.2;
}


.ws-newsletter-heart{
    width:30px;
    height:auto;
    flex-shrink:0;
}

.ws-newsletter-content p{
    color: var(--light);
    margin:0;
    font-size:16px;
    line-height:1.4;
    max-width:560px;
}

.ws-newsletter-form-wrap{
    flex:0 0 500px;
}

.ws-newsletter-form{
    display:flex;
    gap:18px;
}

/*.ws-newsletter-form input{

    flex:1;

    height:58px;

    padding:0 24px;

    border:none;

    border-radius:50px;

    outline:none;

    font-size:16px;

}

.ws-newsletter-form button{

    height:58px;

    padding:0 34px;

    border:none;

    border-radius:50px;

    cursor:pointer;

    transition:.3s;

}*/

.ws-newsletter-flower{

    position:absolute;

    right:-40px;

    bottom:-30px;

    width:220px;

    opacity:.45;

    pointer-events:none;

}

/*--------------------------------------------------------------
# Inline Form
--------------------------------------------------------------*/

.ws-form-inline{

    display:flex;

    align-items:center;

    gap:24px;

    width:100%;

}

.ws-form-inline input{

    flex:1;

    font-size: 14px;

    padding:7px 22px;

    border:none;

    border-radius:40px;

    background:#ffffff;

    /*box-shadow:0 10px 30px rgba(0,0,0,.08);*/

    outline:none;

}


.ws-form-inline input:focus{

    box-shadow:0 0 0 3px rgba(255,255,255,.25);

}

.ws-form-inline button{

    flex-shrink:0;

    border: none;

}

.ws-newsletter-form-wrap p{
    color: var(--light);
    text-align: center;
    margin:10px 20px;
    font-size:16px;
    line-height:1.4;
}

.ws-newsletter-note{
    margin-top:14px;
    font-size:14px;
    line-height:1.6;
    color:rgba(0,0,0,.65);
}

/*--------------------------------------------------------------
# Message Section
--------------------------------------------------------------*/

/*.ws-message{

    position:relative;

    padding:110px 0;

    overflow:hidden;

}

.ws-message-inner{

    display:flex;

    align-items:center;

    justify-content:space-between;

    gap:80px;

}

.ws-message-content{

    flex:1;

    max-width:620px;

}

.ws-message-art{

    flex:0 0 420px;

    text-align:right;

}

.ws-message-art img{

    width:100%;

    max-width:420px;

    height:auto;

}

.ws-message-title{

    position:relative;

    display:inline-block;

    margin-bottom:30px;

    line-height:1.25;

}

.ws-message-title::before{

    content:"“";

    position:absolute;

    left:-45px;

    top:-18px;

    font-size:90px;

    color: var(--ws-quote-color);

    line-height:1;

    opacity:.9;

}

.ws-message-title::after{

    content:"”";

    position:absolute;

    right:-40px;

    bottom:-45px;

    font-size:90px;

    color: var(--ws-quote-color);

    line-height:1;

    opacity:.9;

}

.ws-message-text{

    margin-bottom:35px;

}

.ws-message-text p{

    margin-bottom:18px;

    line-height:1.9;

}*/

/*==============================================================
Quote Section
==============================================================*/

.ws-quote{
    position:relative;
    /*overflow:hidden;*/
    padding:0;
    background-position:center bottom;
    background-repeat:no-repeat;
    background-size:100% auto;
}

/*.ws-quote .ws-container { padding:50px; }*/

.ws-section-bg{
    position:absolute;
    left:0;
    bottom:0;
    width:100%;
    height:auto;
    z-index:0;
    pointer-events:none;
}

.ws-quote .ws-container{
    position:relative;
    z-index:2;

}

.ws-quote-inner{
    display:grid;
    grid-template-columns: 1fr 1fr;
    align-items:center;
    justify-content:space-between;
    gap:80px;
    padding: 0 40px;
}

.ws-quote-content{
    /*flex:1;
    max-width:500px;*/
    text-align: right;
    position: relative;
}

.ws-quote-art{
    /*flex:0 0 620px;*/
    text-align:left;
}

.ws-quote-art img{
    width:100%;
    max-width:420px;
    height:auto;
}

.ws-heading-quote{
    font-family: 'Caveat', sans-serif;
    font-size: 40px;
    color:  var(--primary);
    position:relative;
    display:inline-block;
    margin-bottom:10px;
    line-height:1.2;
    text-align:right;
}

.ws-heading-quote::before{
    content:"“";
    position:absolute;
    left:-50px;
    top:-18px;
    font-size:90px;
    line-height:1;
    color:var(--primary);
    opacity:.85;

}

.ws-quote-heart{
    position: absolute;
    right: -50px;
    top: 40px;
    width:28px;
    margin-left:15px;
    vertical-align:middle;
}

.ws-quote-author{
    font-family: 'Caveat', sans-serif;
    /*margin-bottom:28px;*/
    font-size:40px;
    font-style:italic;
    color:var(--primary);

}

/*.ws-heading-quote::after{
    content:"”";
    position:absolute;
    right:-45px;
    bottom:-45px;
    font-size:90px;
    line-height:1;
    color:var(--ws-accent-color,#d8b15d);
    opacity:.85;
}*/

.ws-quote-text{
    margin-bottom:35px;
}

.ws-quote-text p{
    margin-bottom:18px;
    line-height:1.9;
}

.ws-cart-icon {
    position: relative;
    /*display: inline-flex;*/
    align-items: center;
    color: var(--secondary);
}
.ws-cart-count {
    position: absolute;

    top: -2px;
    right: -2px;

    min-width: 18px;
    height: 18px;

    background: #ff3b30;
    color: #fff;

    font-size: 11px;
    font-weight: 600;

    border-radius: 50%;
    padding: 0 5px;

    display: flex;
    align-items: center;
    justify-content: center;

    line-height: 1;
    transition: transform .2s;
}
.ws-cart-icon:hover .ws-cart-count {
    transform: scale(1.1);
}



/******* common pages *********/

.ws-common-page {
    padding: 80px 0;
    background: #fff;
}

.ws-common-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 280px;
  gap: 30px;
  align-items: start;
}

.ws-inner-hero {
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
}

.ws-page-hero {
    position: relative;
    z-index: 2;
    display: flex;
    
    align-items: center;
    min-height: 320px;
    
    padding: 40px;
    margin: 0 auto;    

}


.ws-inner-hero-content {
    /*position: absolute;*/
    /*left: 0;
    bottom: 25px;*/

    text-align: center;
    width: 100%;
    opacity: 1;
    transform: translateY(60px);
    animation: wsHeroReveal .8s ease forwards;    
}

@keyframes wsHeroReveal {
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.ws-inner-hero h1 {
font-size: clamp(4.2rem,8vw,4.6rem);
line-height: .95;
color: var(--primary);
margin-bottom: 25px;

    color: var(--primary);
    font-family: var(--font-caveat);



    font-weight: 500;
}

.ws-inner-hero p {
    font-size: 16px;
    color: #666;
    margin: 0;
    max-width: 700px;
}








/*************************** Breadcrumb ************************************/

.ws-breadcrumb-container {
    background-color: rgb(245, 245, 245); 
    width: 100%;
    box-sizing: border-box;
    margin: 0 auto;    
    padding: 15px 0;
    display: block;
    align-items: center;
}
@media (max-width:991px) {
    .ws-breadcrumb-container { 
        margin-left: auto;
        box-sizing: border-box;
        margin-right: auto;
        display: block;
        padding-top: 0px;
        padding-left: 0px;
        padding-right: 0px;        
    }
}

.ws-breadcrumb {
    font-family: var(--font-roboto);
    font-size: 13px;
    line-height: 14px;
    font-weight: 400;
    letter-spacing: 0.15px;
}

.ws-breadcrumb ol {
    display: flex;
    flex-wrap: wrap;
    list-style: none;
    padding: 0;
    margin: 0;
}

.ws-breadcrumb li + li::before {
    content: "›";
    padding: 0 8px;
    color: #999;
}

.ws-breadcrumb a {
    color: #111;
    text-decoration: none;
}

.ws-breadcrumb .active {
    color: #777;
    font-weight: 400;
}

/*
|--------------------------------------------------------------------------
| SIDEBAR
|--------------------------------------------------------------------------
*/

.ws-sidebar {
    position: sticky;
    top: 120px;
}

.ws-sidebar-widget {
    background: #fff;
    padding: 30px;
    margin-bottom: 30px;
    box-shadow: 0 10px 30px rgba(0,0,0,.06);
}

.ws-sidebar-widget h3 {
    font-family: var(--font-oswald);
    font-size: 18px;
    margin-bottom: 20px;
    position: relative;
    padding-bottom: 12px;
    text-transform: uppercase;
}

.ws-sidebar-widget h3::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 50px;
    height: 2px;
    background: #ffb703;
}

.ws-sidebar-widget ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.ws-sidebar-widget li {
    padding: 12px 0;
    border-bottom: 1px solid #eee;
}

.ws-sidebar-widget li:last-child {
    border-bottom: none;
}

.ws-sidebar-widget a {
    color: #111;
    text-decoration: none;
    transition: .3s ease;
}

.ws-sidebar-widget a:hover {
    color: var(--dark-cyan);
}

.ws-sidebar .search-form {
    display: flex;
}

.ws-sidebar .search-field {
    width: 100%;
    height: 52px;
    padding: 0 15px;
    border: 1px solid #ddd;
}

.ws-sidebar .search-submit {
    border: none;
    background: #ffb703;
    color: #111;
    padding: 0 20px;
    cursor: pointer;
}

/*
|--------------------------------------------------------------------------
| SIDEBAR SEARCH
|--------------------------------------------------------------------------
*/

.ws-sidebar-search {
    position: relative;
}

.ws-sidebar-search input {
    width: 100%;
    height: 30px;
    border: 1px solid #e7e7e7;
    background: #f7f7f7;
    padding: 0 70px 0 20px;
    font-size: 15px;
    outline: none;
    transition: .3s ease;
}

.ws-sidebar-search input:focus {
    border-color: #ffb703;
    background: #fff;
}

.ws-sidebar-search button {
    position: absolute;
    top: 2px;
    right: 0;
    width: 42px;
    height: 30px;
    border: none;
    background: #ffb703;
    color: #111;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: .3s ease;
}

.ws-sidebar-search button:hover {
    background: #111;
    color: #fff;
}


/*
|--------------------------------------------------------------------------
| ARCHIVE DROPDOWN
|--------------------------------------------------------------------------
*/

.ws-sidebar-archive-dropdown {
    position: relative;
    width: 100%;
}


.ws-sidebar .ws-sidebar-archive-dropdown select {
    appearance: none !important;
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
    background-image: none !important;
}

.ws-sidebar-archive-dropdown select {
    display: block;
    width: 100%;
    height: 40px;
    padding: 0 10px;
    border: 1px solid #e7e7e7 !important;
    background-color: #f7f7f7 !important;
    color: #111 !important;
    font-size: 15px;
    font-weight: 500;
    font-family: inherit;
    /*line-height: 62px;*/
    cursor: pointer;
    outline: none;
    border-radius: 0;
    box-shadow: none;
    transition: all .3s ease;
    appearance: none !important;
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
    background-image: none !important;
}

.ws-sidebar-archive-dropdown select::-ms-expand {
    display: none;
}

/*.ws-sidebar-archive-dropdown select:focus {
    border-color: #ffb703;
    background: #fff;
}*/
.ws-sidebar-archive-dropdown select:hover,
.ws-sidebar-archive-dropdown select:focus {
    background-color: #fff !important;
    border-color: #ffb703;
}

.ws-sidebar-archive-dropdown {
    position: relative;
}

.ws-sidebar-archive-dropdown::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 22px;
    width: 9px;
    height: 9px;
    border-right: 1px solid #111;
    border-bottom: 1px solid #111;
    transform: translateY(-70%) rotate(45deg);
    pointer-events: none;
}

/*
|--------------------------------------------------------------------------
| TAG CLOUD
|--------------------------------------------------------------------------
*/

.ws-tag-cloud {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.ws-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;
}

.ws-tag-cloud a:hover {
    background: #000;
    border-color: #000;
    color: #fff;
}

.not-found {
    background: url('../images/author-story-hills.webp');
    background-size: contain;
    background-position: center bottom;
    background-repeat: no-repeat;
    min-height: 500px;
}














@media(max-width: 991px){
    .ws-navigation{
        display:none;
    }

    .ws-mobile-toggle{
        display:block;
    }
    .ws-header-inner {
        display: grid;
        grid-template-columns: auto auto;
        align-items: center;
        justify-content:space-between;
        gap: 20px;
        padding: 5px 0 0;
    }
    .ws-logo img{
        display: block;
        max-height: 50px;
        width: auto;
        transition: .35s;
    }    

    .ws-hero{
        min-height:auto;
        padding:40px 0;
    }

    .ws-hero-grid{
        grid-template-columns:1fr;
        text-align:center;
    }

    .ws-hero-content{
        order:2;
    }

    .ws-hero-image{
        order:1;
        max-width:520px;
        margin:auto;
    }

    .ws-hero-buttons{

    justify-content:center;

    }

    .ws-welcome-grid{
        grid-template-columns:1fr;
        gap:50px;
    }

    .ws-author,
    .ws-author-message,
    .ws-book{
        min-height:auto;
    }

    .ws-author img,
    .ws-book img{
        max-width:260px;
    }

    .ws-author,
    .ws-author-message,
    .ws-book{
        min-height:auto;
    }

    .ws-author img,
    .ws-book img{
        max-width:260px;
    }

    .ws-features-grid{
        grid-template-columns:
        repeat(2,1fr);
    }

    .ws-newsletter-inner{
        flex-direction:column;
        text-align:center;
        gap:40px;
        padding: 40px;
    }

    .ws-newsletter-content{
        max-width:100%;
    }

    .ws-newsletter-content h3{
        justify-content:center;
    }

    .ws-newsletter-form-wrap{
        width:100%;
        flex:0 0 auto;
    }

    .ws-newsletter-form{
        max-width:600px;
        margin:auto;
    }

    .ws-newsletter-note{
        text-align:center;
    }

    .ws-quote-inner{
        /*flex-direction:column;*/
        grid-template-columns: 1fr 1fr;
        text-align:center;
        gap: 0px;
    }

    .ws-quote-art{
        text-align:center;
        flex: 0;
    }

    .ws-heading-quote::before{
        left:-25px;
        font-size:60px;
    }

    .ws-heading-quote::after{
        right:-25px;
        font-size:60px;
    }

    .ws-inner-hero {
        min-height: 260px;
    }
    .ws-inner-hero .container {
        height: 260px;
    }
    .ws-inner-hero h1 {
        font-size: 40px;
    }
}

@media(max-width: 767px){
    .ws-hero-title {
        font-size: clamp(2.2rem,8vw,2.6rem);
        line-height: .75;
        color: var(--primary);
        margin-bottom: 20px;
    }

    .ws-hero-text {
        font-size: .75rem;
        font-weight: 700;
        margin-bottom: 40px;
        margin: 0 auto 20px;
        text-align: center;
    }

    .ws-author-message h2{
        font-size:36px;
        line-height:1;
    }

    .ws-newsletter{

        padding:0 0 60px 0;

    }

    .ws-newsletter-content h3{

        font-size:32px;

    }

    .ws-newsletter-form{

        flex-direction:column;

    }

    .ws-newsletter-form input{

        width:100%;

    }

    .ws-newsletter-form button{

        width:100%;

    }

    .ws-newsletter-flower{

        width:110px;

    }

    .ws-form-inline{

        flex-direction:column;

        align-items:stretch;

    }

    .ws-form-inline input{

        width:100%;

    }

    .ws-form-inline button{

        width:100%;

    }

    .ws-inner-hero {
        min-height: 220px;
    }
    .ws-inner-hero .container {
        height: 220px;
    }
    .ws-inner-hero-content {
        bottom: 20px;
    }
    .ws-inner-hero h1 {
        font-size: 30px;
        padding-left: 15px;
    }
    .ws-inner-hero p {
        font-size: 15px;
    }

    .ws-common-layout {
        display: grid;
        grid-template-columns: 1fr;
        gap: 30px;
        align-items: start;
    }
}

@media(max-width: 576px){
    .ws-hero-title {
        font-size: clamp(1.6rem,8vw,2.0rem);
        line-height: .75;
        color: var(--primary);
        margin-bottom: 20px;
    }
    .ws-hero-subtitle {
        font-size: 1.05rem;
        font-weight: 600;
        letter-spacing: .08em;
        color: var(--dark);
        margin-bottom: 6px;
    }

    .ws-hero-text {
        font-size: .75rem;
        font-weight: 700;
        margin-bottom: 40px;
        margin: 0 auto 20px;
        text-align: center;
    }
    .ws-features-grid{
        grid-template-columns:1fr;
    }

    .ws-quote-inner{
        grid-template-columns: 1fr;
    }
    .ws-quote-content {
        text-align: center;
    }

    .ws-heading-quote {
        font-size: 30px;
        text-align: left;
    }

    .ws-quote-author {
        font-size: 30px;
    }

    .ws-quote-heart{
        position: absolute;
        right: -30px;
        top: 40px;
        width:28px;
        margin-left:10px;
        vertical-align:middle;
    }
}