:root {
    --primary-bg-color: #000;
    --text-color: #fff;
    --font-playfair: "Playfair Display", serif;
    --font-priscilla: 'Priscilla-Script', cursive;
    --border-color: #e014fc;
    --accent-color: #9E00FF;
    --footer-border-color: #e014fc;
    --menu-background-color: #1a1a1a;
    --menu-bottom-border: #333333;
  
}

@font-face {
    font-family: 'Priscilla-Script';
    src: url('Priscilla-Script.otf') format('opentype');
}

body {
    background-color: var(--primary-bg-color);
    color: var(--text-color);
    font-family: var(--font-playfair);
}

a {
    text-decoration: none;
    color: var(--text-color);
}

a:hover {
    color: var(--border-color);
}

/* Header and Navigation */


header#masthead {
    display: flex;
    justify-content: center;
    background-color: var(--primary-bg-color);
}

.site-branding {
    display: flex;
    justify-content: center;
    width: 20%;
}

.site-branding img {
    display: flex;
    justify-content: center;
    width: 100%;
}

a.custom-logo-link {
    display: flex;
    justify-content: center;
}


.menu-menu-1-container {
    display: flex;
    justify-content: right;
    text-align: center;
}

.main-navigation {
    width: 30%;
}

.main-navigation li {
    margin-right: 2em;
    position: relative;
    top: 5em;
    text-align: center;
    padding: .5em;
    font-size: 16px;
}

.main-navigation a {
    color: var(--text-color);
}

.main-navigation a:hover {
    border-bottom: 3px solid var(--accent-color); 
}

.social-links {
    display: flex;
    justify-content: center;
    width: 30%;
    padding: 1em;
}

.social-links i {
    margin: 1em;
    position: relative;
    top: 3em;
}

.social-links a {
    color: var(--text-color);
}

.social-links a:hover {
    color: var(--border-color);
}

#hamburger {
    background-image: url('./bars-solid.svg');
    background-color: transparent;
    color: var(--text-color);
    border: none;
}

.main-navigation ul ul {
    top: -1em;
}

ul.sub-menu {
    display: flex;
    flex-direction: column;
    height: auto; 
}

ul.sub-menu li {
    margin-top: -1em;
    padding: 1em;
    background-color: var(--menu-background-color);
    text-align: center;
}

ul.sub-menu li a {
    border-bottom: 1px solid var(--menu-bottom-border);
    color: var(--text-color);
    padding: .5em;
}

ul.sub-menu li a:hover {
    background-color: var(--accent-color);
}

.toggled li{
    background-color: var(--menu-background-color);
    padding: 1em;
    margin-right: 1em;
    margin-top: -1em;
    text-align: center;
    border-bottom: 1px solid var(--menu-bottom-border);
    color: var(--text-color);
}

.woo-commerce-links {
    width: 100%;
    display: flex;
    justify-content: center;

}
.woo-commerce-links ul {
    display: flex;
    justify-content: center;
    list-style: none;
 
}

.woo-commerce-links ul li {
    padding-right: 2.4em;
}






/* Header Ends */
main {
    width: 100%;
    padding: 1em;
}

.flex-container {
    width: 100%;
    display: flex;
}

.main-container {
    display: flex;
    flex-direction: column;
    width: 80%;
    order: 2;
}

.sidebar-container {
    width: 30%;
    order: 1;
}


body.home main {
    width: 100%;
    margin-top: 1em;
    padding: 2em;
}

/* h1,h2,h3,h4,h5 {
    font-family: var(--font-priscilla); 
    margin: 1em;
} */

h1 {
    font-size: 55px;
    border-bottom: 3px solid var(--footer-border-color);
    text-align: center;
    padding: .5em;
}

/* Sidebar Code */

aside {
    padding: 1em;

}


.wp-block-image img {
    border-radius: 100%;
    width: 75%;
    outline: 2px solid var(--footer-border-color);
    outline-offset: 1em;
    margin: .5em;
}

h2.profile-header {
    font-family: var(--font-priscilla);
    border: none;
}

.divider {
    margin: 0 auto;
    width: 40%;
}


ul.wp-block-latest-posts__list.wp-block-latest-posts {
    list-style: none;
    margin: 0;
    width: 90%;
    position: relative;
    left: 1em;
}

ul.wp-block-latest-posts__list.wp-block-latest-posts li {
    background-color: var(--accent-color);
    padding: .4em;
    margin-bottom: .2em;
    margin-right: 0;
    margin-left: 0;
}

ul.wp-block-latest-posts__list.wp-block-latest-posts li:hover {
    background-color: var(--footer-border-color);
    background-image: url('/wp-content/themes/tof_5-0_v1/Images/heart.png');
    background-position: right ;
    background-repeat: no-repeat;
    background-size: 7%;
}

ul.wp-block-latest-posts__list.wp-block-latest-posts li a {
    color: var(--text-color);
}

ul.wc-block-product-categories-list.wc-block-product-categories-list--depth-0 {
    list-style: none;
    margin: 0;
    position: relative;
    right: 1em;
}

.wc-block-product-categories-list.wc-block-product-categories-list--depth-0 li {
    margin-bottom: .2em;
    margin-left: 0;
    margin-right: 0;
    background-color: var(--border-color);
    padding: .5em;
}

.wc-block-product-categories-list.wc-block-product-categories-list--depth-0 li:hover {
    background-color: var(--accent-color);
    background-image: url('/wp-content/themes/tof_5-0_v1/Images/heart.png');
    background-position: right;
    background-repeat: no-repeat;
    background-size: 7%;
}

ul.wc-block-product-categories-list.wc-block-product-categories-list--depth-0 li a {
    color: var(--text-color);
}


p.bio {
    padding: 2em;
    text-align: center;
}


aside h2 {
    font-size: 36px;
    border-bottom: 3px solid var(--border-color);
    text-align: center;
    padding: .5em;
    font-family: var(--font-playfair);
} 

.sidebar-name {
    font-size: 30px;
    text-align: center;
}

.widget h4 {
    font-size: 30px;
}

/* Sidebar Code Ends */

/* 
Footer Code */

.site-footer {
    width: 100%;
    text-align: center;
    position: relative;
    float: inline-end;
    border-top: 1px solid var(--border-color);
}

input.wp-block-search__input {
    background-color: transparent;
    border: 2px solid var(--accent-color);
    color: var(--text-color);
    padding: .5em;
}

label.wp-block-search__label {
    font-family: var(--font-playfair);
    font-size: 20px;
    text-align: center;
}

button.wp-block-search__button.wp-element-button {
    background-color: var(--accent-color);
    color: var(--text-color);
    border: none;
    padding: .5em;
    font-family: var(--font-playfair);
}

button.wp-block-search__button.wp-element-button:hover {
    background-color: var(--footer-border-color);
}

.footer-widgets {
    display: flex;
    justify-content: center;
    width: 100%;
    padding: 1em;
}

.footer-widget-section {
    width: 33%;
    padding: 1em;
}

.social-links-footer {
    display: inline-flex;
    justify-content: center;
    width: 33%;
    padding: 1em;
}

.social-links-footer i {
    margin: 1em;
}

.social-links-footer a {
    color: var(--text-color);
}

.social-links-footer a:hover {
    color: var(--accent-color);
}

/* Footer Ends */



/* Homepage Begins */

.hero {
    width: 100%;
    height: auto;
    display: flex;
    margin-bottom: 5em;
}

.hero-text {
    width: 50%;
}

.hero-image { 
    width: 50%;
    padding: .5em;
    display: flex;
    justify-content: center;
}


.hero-text h1 {
    font-size: clamp(96px, 4vw, 104px);
    border-bottom: none;
    text-align: center;
    font-family: var(--font-priscilla);
    margin-bottom: -.6em;
    color: var(--accent-color);
}

.hero-text h3 {
    font-size: clamp(24px, 2vw, 30px);
    font-family: var(--font-playfair);
    text-align: center;
    font-weight: 300;
}

.hero-text h1,
.hero-text h3 {
    opacity: 0;
    animation: fadeIn 2.0s ease-out forwards;
}

@keyframes fadeIn {
    from {
        opacity: 0;
        transform: translateY(-20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Hero End */

.new-products ul li img {
    border: 2px solid var(--text-color);
    padding: .5em;
}

.wp-block-button.wc-block-grid__product-add-to-cart a {
    border-radius: 0;
    width: 100%;
    padding: .5em;
    background-color: transparent;
    border: 2px solid var(--border-color);
    color: var(--border-color);
}

.wp-block-button.wc-block-grid__product-add-to-cart a:hover {
    border-radius: 0;
    width: 100%;
    padding: .5em;
    background-color: var(--accent-color);
    border: 2px solid var(--accent-color);
    color: var(--text-color);
}

/* Styles for the container div */
.wc-block-grid__product-image {
    position: relative;
    display: inline-block; /* Ensures the container only takes up the space of the image */
  }

  .wc-block-grid__product-image img {
    border: 2px solid var(--text-color);
    padding: .5em;
  }
  
  .wc-block-grid__product-image::before {
    content: "";
    position: absolute;
    top: 49%; /* Center the hover vertically */
    left: 50%; /* Center the hover horizontally */
    transform: translate(-50%, -50%); /* Center the hover precisely */
    width: 95%; /* Adjust the width of the hover effect */
    height: 92%; /* Adjust the height of the hover effect */
    background-color: var(--accent-color);
    background-image: url('/wp-content/themes/tof_5-0_v1/Images/gem.png');
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: 25%; /* Adjust the background image size */
    opacity: 0; /* Initial opacity set to 0 */
    transition: opacity 0.3s ease-in-out; /* Add a smooth transition effect */
    pointer-events: none; /* Allows the overlay to be ignored by pointer events */

}

.wc-block-grid__product-image:hover::before {
    opacity: 0.7; /* Set the opacity to 0.8 on hover */
}

.wc-block-grid__product-title {
    font-size: 14px !important;
}

  /* Hover effect */


/* New product section end */

/* 
.blog-container {
    display: flex;
    justify-content: space-evenly;
    flex-wrap: auto;
}  */

.blog-container article {
    width: 25%;
    display: flex;
    flex-direction: column;
    align-items: center;
    flex-wrap: wrap;
}

.blog-container article img {
    width: 50%;
}

.blog-container article a {
    text-align: center;
}



/* Blog Section */


.blog-container {
    width: 100%;
    height: 20em;
    position: relative;
    margin-top: 4em;
    display: flex;
    justify-content: space-evenly;
    flex-wrap: auto;
}

.blog-container video {
  width: 100%;
  height: 100%;
  position: absolute;
  object-fit: cover;
  z-index: 0;
}

/* Just styling the content of the div, the *magic* in the previous rules */
.blog-container .caption {
  z-index: 1;
  position: relative;
  text-align: center;
  padding: 10px;
  width: 80%;
}

.caption h2 {
    font-size: 42px;
    color: var(--text-color);
    font-family: var(--font-priscilla);
}

.caption h3 {
    font-size: 28px;
    color: var(--text-color);
    font-family: var(--font-playfair);
}

.caption button {
    background-color: #000;
    width: 12em;
    padding: 1em;
    color: var(--text-color);
    border: none;
    font-family: var(--font-playfair);
}

.caption button:hover {
    background-color: var(--footer-border-color);
}


/* Subscribe Section */

h1#subscribe {
    border: none;
    font-family: var(--font-priscilla);
    color: var(--accent-color);
    text-align: center;
    padding: 0;
}

#mc_embed_signup .button {
    background-color: var(--accent-color) !important;
    color: var(--text-color);
}

/* Homepage Ends */



/* Product Page  */

.entry-content {
    width: 100%;
}

.woocommerce {
    display: flex;
    justify-content: center;
}

.description-tab {
    background-color: var(--border-color);
    margin-right: .5em;
}

.woocommerce div.product .woocommerce-tabs .panel h2 {
    font-size: clamp(20px, 5vw, 48px);
    color: var(--accent-color);
    text-align: center;
    font-family: var(--font-playfair);
    letter-spacing: .3em;
    border-bottom: 2px solid var(--accent-color);
}

.woocommerce-Tabs-panel.woocommerce-Tabs-panel--description.panel.entry-content.wc-tab h1 {
    font-size: 40px;
    font-family: var(--font-priscilla);
    border-bottom: none;
    letter-spacing: .1em;
}


 .woocommerce div.product .woocommerce-tabs .panel p {
    width: 100%;
    height: auto;
    margin: 0 auto;
    line-height: 2em;
} 

li.additional_information_tab {
    background-color: var(--accent-color);
    color: var(--text-color);
    margin-right: .5em;
}

.summary , .entry-summary {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.price span bdi{
    color: var(--accent-color);
    font-size: 22px;
    /* price text */
}

.product-price span bdi {
    font-size: 64px;
    /* only for single product page */
}

.price span bdi {
    font-size: 22px;
    color: var(--text-color);
    /* for price text */
}

.woocommerce div.product .woocommerce-tabs ul.tabs li.active {
    background-color: var(--border-color);
    color: var(--text-color);

}

.woocommerce-product-details__short-description ul {
    position: relative;
    right: 2em;
}

.quantity input {
    background-color: transparent;
    padding: .5em;
    border: 1px var(--text-color) solid;
    margin-right: .5em;
    color: var(--text-color);
}

button.single_add_to_cart_button.button.alt {
    background-color: transparent;
    border: 2px solid var(--accent-color);
    color:var(--accent-color);
    padding: .7em;
}

button.single_add_to_cart_button.button.alt:hover {
    border: 1px solid var(--text-color);
    color:var(--text-color);
    background-color: transparent;
}

.woocommerce-message {
    background-color: transparent;
    border: 2px solid var(--accent-color);
    color: var(--text-color);
}

textarea#comment {
    width: 100%;
}

.comment-respond h3 {
    text-align: center;
    font-size: 36px;
}

.comment-form-comment {
    display: flex;
    flex-direction: column;
}

form#commentform.comment-form {
   display: flex;
   flex-direction: column;
   align-items: center;
}

#comments.comments-area {
    position: relative;
    margin: 5em auto;
    align-self: center;
    border-top: 2px solid var(--footer-border-color);
    width: 80%;
    height: auto;
    
}

nav.navigation.post-navigation {
    width: 80%;
    margin: 0 auto;
}

.nav-previous, .nav-next a {
    color: var(--text-color);
}

.nav-previous, .nav-next a:hover {
    color: var(--accent-color);
}

.related.products h2 {
    font-size: 40px;
    font-family: var(--font-priscilla);
    text-align: center;
    color: var(--text-color);
    border-bottom: var(--border-color) 2px solid;
    padding: .5em;
    margin-bottom: 1em;
}

.entry-footer { 
    width: 100%;
    display: flex;
    justify-content: center;
    margin-top: 1em;
}


/* Image Gallery */

.woocommerce div.product div.images.flex-control-thumbs {
    margin: .5em;
}

.woocommerce div.product div.images .flex-control-thumbs li {
    padding: .5em;
}

#ppcp-messages {
    color: var(--text-color);
}



/* Single Product Page End */



/* Product Category Page */

select.orderby {
    background-color: transparent;
    border: 1px solid var(--border-color);
    color: var(--text-color);
    font-family: var(--font-playfair);
    padding: .5em;
}

.woocommerce {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

ul.products li {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
}

li.product img {
    border: 2px solid var(--text-color);
    padding: .5em;
    position: relative;
    display: inline-block;
}

.woocommerce ul.products li.product .woocommerce-loop-category__title, .woocommerce ul.products li.product .woocommerce-loop-product__title, .woocommerce ul.products li.product h3 {
    font-family: var(--font-playfair);
    /* product title */
}

.woocommerce ul.products li.product a {
    color: var(--text-color);
}

.woocommerce ul.products li.product a:hover {
    color: var(--accent-color);
}

.woocommerce ul.products li.product .button {
    width: 100%;
    background-color: var(--accent-color);
    color: var(--text-color);
    padding: .5em;
}

.woocommerce ul.products li.product .button:hover {
    background-color: var(--border-color);
    color: var(--text-color);
}


/* Product Category Page End */


/* Blog Category Page */

.blog-header {
    text-align: center;
    margin-bottom: 20px;
}

.blog-category-container {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.blog-flex-container {
    width: 100%; /* Adjust the width to leave some space for margins and borders */
    margin-bottom: 20px;
    box-sizing: border-box; /* Include padding and border in the width */
}

.featured-image {
    width: 100%; /* Set your desired width for spacing */
    overflow: hidden;
    padding: 1em;
    margin-right: 1em; /* Set the desired space between images */
}

.featured-image:last-child {
    margin-right: 0; /* Remove the right margin for the last image in the row */
}

.featured-image img {
    width: 100%; /* Make all images take up 100% of the .featured-image container */
    height: 15em; /* Maintain aspect ratio */
    object-fit: cover; /* Maintain aspect ratio and cover the container */
    display: block;
}

.entry-title {
    text-align: center;
    font-size: 28px;
    margin-top: 1em;
    margin-bottom: 1em;
}

.entry-title a {
    color: var(--text-color);
    text-decoration: none;
}

.entry-title a:hover {
    color: var(--accent-color); 
}

.blog-category-entry {
    text-align: center;
}


.blog-category-footer {
    display: none;
}

/* Pagination Styles */
.pagination {
    display: flex;
    justify-content: center;
    margin-top: 20px;
}

.pagination a {
    margin: 1em;
    text-decoration: none;
    color: #fff;
}

.pagination a:hover {
    color: var(--accent-color);
}

article.category-crystals {
    width: 22%;
}

/* .blog-category-entry p {
    overflow: hidden;
    height: 5em;
} */

.nav-links a {
    color: var(--text-color);
}

.nav-links a:hover {
    color: var(--accent-color);
}
  

  /* Blog Category Ends */


  /* Blog Post Page */
  
article#blog-article {
    padding: 5em;
    display: flex;
    flex-direction: column;
    align-items: center;
}

h1.entry-title.blog-title {
    font-size: 48px;
}

.post-thumbnail {
    display: flex;
    justify-content: center;
}

.post-thumbnail img {
    width: 30%;
}

.entry-content.blog-content {
    padding: 1em 2em;
}

.entry-content.blog-content p{
    font-family:  var(--font-playfair);
}

.entry-content.blog-content p strong{
    font-family:  var(--font-playfair);
}









/* Media Queries  */

/* Responsive styles for smaller screens (max-width: 1150px) */

@media only screen and (max-width: 1150px) {
 
       /* Hero Section */ 

       .hero {
        flex-wrap: wrap;
        }
    
        .hero-text{
            width: 100%;
        }
        
        .hero-image {
            width: 100%;
            justify-content: center;
        }

        .hero-image img {
            width: 50%;
        }
    
}


@media only screen and (max-width: 1000px) {
    .main-navigation ul{
        margin-top: -8em;
        margin-bottom: 4em;
    }

    .social-links {
        display: none;
    }

    .main-navigation {
        width: 100%;
        order: 2;
        display: inline-flex;
        justify-content: center;
    }

    #masthead {
        display: flex;
        flex-wrap: wrap;
    }

    .site-branding {
        width: 100%;
        order: 1;
    }

    .site-branding img {
        width: 100%;
    
    }

    .main-navigation li {
        padding: 2em;
        margin: 0;
    }

    .main-navigation.container.toggled {
        width: 100%;
        height: auto;
        display: flex;
        flex-direction: column;
        align-items: center;
        margin-bottom: 1em;
    }

    .main-navigation.container.toggled ul li {
        width: 15em;
    }

    .primary-menu.menu-item li {
        width: 100%;
    }
}





/* Responsive styles for smaller screens (max-width: 725px) */
@media only screen and (max-width: 725px) {

    .footer-widgets {
        flex-wrap: wrap;
    }

    .footer-widget-section {
        width: 100%;
    }

   

    body.home main {
        width: 100%;
        margin-top: 1em;
        padding: 2em;
        align-items: center;
    }

    .flex-container {
        display: flex;
        flex-wrap: wrap;
    }

    .main-container {
        width: 100%;
        padding-left: 1em;
    }

    .sidebar-container {
        width: 100%;
        display: flex;
        flex-direction: column;
        align-items: center;
        padding: 1em;
        /* the sidebar */
}

/* Blog Post Page */

.entry-content.blog-content {
    padding: 1em 1em;
}

.post-thumbnail img {
    width: 50%;
}

}


/* Media query for smaller screens */

@media only screen and (max-width: 768px) {
    .blog-category-container {
        justify-content: center; /* Center items for smaller screens */
    }

    article.post {
        width: 45%; /* Adjust the width for smaller screens */
    }

   
}



@media only screen and (max-width: 490px) {

    .main-container {
        width: 100%;
    }

    .hero-text {
     height: 20em;
    }   

    .hero-text h1 {
        font-size: clamp(42px, 4vw, 52px);
        border-bottom: none;
        text-align: center;
    }

    .entry-content.blog-content {
        padding: 1em 0;
    }

    .post-thumbnail img {
        width: 80%;
    }

    h1  {
        font-size: 35px;
    }
    
    .wc-block-grid__product-title {
        font-size: 18px !important;
    }

    /* Add styles for larger screens if needed */
}

















