/*
Theme Name: cndband
Text Domain: cndband
Version: 2.8
Tested up to: 6.7
Requires at least: 4.7
Requires PHP: 5.2.4
Description: Our default theme for 2020 is designed to take full advantage of the flexibility of the block editor. Organizations and businesses have the ability to create dynamic landing pages with endless layouts using the group and column blocks. The centered content column and fine-tuned typography also makes it perfect for traditional blogs. Complete editor styles give you a good idea of what your content will look like, even before you publish. You can give your site a personal touch by changing the background colors and the accent color in the Customizer. The colors of all elements on your site are automatically calculated based on the colors you pick, ensuring a high, accessible color contrast for your visitors.
Tags: blog, one-column, custom-background, custom-colors, custom-logo, custom-menu, editor-style, featured-images, footer-widgets, full-width-template, rtl-language-support, sticky-post, theme-options, threaded-comments, translation-ready, block-patterns, block-styles, wide-blocks, accessibility-ready
Author: the WordPress team
Author URI: https://wordpress.org/
Theme URI: https://wordpress.org/themes/cndband/
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html

All files, unless otherwise stated, are released under the GNU General Public
License version 2.0 (http://www.gnu.org/licenses/gpl-2.0.html)

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned
with others.
*/

/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------

	0. 	CSS Reset
	1. 	Document Setup
	2. 	Element Base
	3. 	Helper Classes
	4. 	Site Header
	5. 	Menu Modal
	6. 	Search Modal
	7. 	Page Templates
		a. 	Template: Cover Template
		c. 	Template: Full Width
	8.  Post: Archive
	9.  Post: Single
	10. Blocks
	11. Entry Content
	12. Comments
	13. Site Pagination
	14. Error 404
	15. Widgets
	16. Site Footer
	17. Media Queries

----------------------------------------------------------------------------- */
@import url('https://fonts.googleapis.com/css2?family=Libre+Baskerville:ital,wght@0,400;0,700;1,400&display=swap');

/* -------------------------------------------------------------------------- */

/*	0. CSS Reset
/* -------------------------------------------------------------------------- */

/* Global Styles */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    font-family: "Libre Baskerville", serif;
    background-color: #f8f8f8;
    color: #333;
    line-height: 1.6;
    font-size: 14px;
}

.bg-light{
	background-color: #fff !important;
}

h1,h2,h3,h4,h5,h6{
    color: #BD0F0F;
}
p,a{
    text-decoration: none;
    font-weight: 600;
    font-size: 16px;
    margin-bottom: 0;
}
ol, ul  {
    padding: 0 0 0 40px;
    margin: 15px 0;
}
.border{
    border: 2px solid #000 !important;
    border-radius: 10px;
}
.container{
    max-width: 965px;
}
.main{
    border: 1px solid #000;
    border-radius: 10px;
}
hr{
    height: 1px;
    background-color: #000;
    border: 0;
}
.fw-bold{
    font-weight: 800;
}
/* Logo Styling */
.logo{
	display: block;
	background-color: #fff;
	width: 100%;
}
.logo .custom-logo-link {
    display: flex;
    width: 100%;
    text-decoration: none;
    padding: 10px 0;
    flex-direction: row;
    justify-content: center;
}
.logo .custom-logo {
    width: 100%;
    height: auto; 
    display: block;
}

/* Main Navigation Menu Styling */
/* .main-navigation {
    background-color: #b22222; 
    border-bottom: 4px solid #d4af37; 
    padding: 0 20px;
} */

.nav-menu {
    list-style: none;
    margin: 0;
    padding: 0px;
    display: flex;
    justify-content: center;
    gap: 0px;
	background-color: #fff;
}

/* Styling for Menu Links (Only affects menu items) */
.nav-menu li a {
    font-family: Libre Baskerville;
    font-size: 14px;
    color: #FFFFFF;
    font-style: normal;
    font-weight: bold;
    text-transform: none;
    font-variant: small-caps;
    padding-left: 10px;
    padding-right: 10px;
    border-color: #000000;
    border-style: solid;
    border-left-width: 1px;
    border-right-width: 1px;
    background-color: #BD0F0F;
    border-top-left-radius: 3px;
    border-top-right-radius: 3px;
    border-bottom-left-radius: 3px;
    border-bottom-right-radius: 3px;
    margin-left: 4px;
    margin-right: 4px;
    border-top-width: 1px;
    border-bottom-width: 1px;
    margin-bottom: 0px;
    line-height: 30px;
    padding: 6px 10px;
    
}

/* Hover effect */
.nav-menu li a:hover {
    color: #F19393; /* Gold color */
    background-color: #9b1c1c; /* Darker red hover */
    text-decoration: underline;
}

/* Current page indicator */
.nav-menu .current-menu-item a {
    /* border-bottom: 3px solid #d4af37; 
    padding-bottom: 12px;  */
}

/* Mobile Responsive */
@media (max-width: 768px) {
    .nav-menu {
        flex-wrap: wrap;
        gap: 15px;
        justify-content: flex-start;
        padding: 10px 0;
    }
    
    .nav-menu li a {
        padding: 10px 8px;
        font-size: 13px;
    }
}

/* Active state effect */
.nav-menu li a:active {
    transform: translateY(1px);
}

.owl-slider .item img{
    width: 100% !important;
    /* height: 500px !important; */
    object-fit: contain;
}
.banner {
    width: 80%;
    margin: 0 auto;
    border: 2px solid #BD0F0F;
    margin-top: 30px;
}
/* Styling the Owl Carousel container */
.owl-carousel {
    max-width: 100%; /* Make sure it takes the full width */
    margin: 0 auto; /* Center it horizontally */
}

/* Style the individual banner items */
.owl-carousel .item {
    position: relative;
}

.owl-carousel .item img {
    width: 100%;
    height: auto; /* Ensure the aspect ratio is maintained */
    display: block; /* Ensure image fills the container */
}

/* Optional: Style navigation arrows */
.owl-nav {
    position: absolute;
    top: 50%;
    width: 100%;
    display: flex;
    justify-content: space-between;
    transform: translateY(-50%);
}

.owl-nav .owl-prev, .owl-nav .owl-next {
    background-color: rgba(0, 0, 0, 0.5);
    color: #fff;
    padding: 10px;
    border-radius: 50%;
}

.owl-nav .owl-prev {
    left: 10px;
}

.owl-nav .owl-next {
    right: 10px;
}

/* Owl Carousel Custom Arrows */
.owl-carousel .owl-nav {
    position: absolute;
    top: 50%;
    width: 100%;
    transform: translateY(-50%);
    display: flex;
    justify-content: space-between;
}

.owl-carousel .owl-prev, .owl-carousel .owl-next {
    background-color: rgba(0, 0, 0, 0.5) !important;
    color: white !important;
	width: 30px !important;
	height: 30px !important;
    font-size: 26px !important;
	line-height: 1 !important;
    padding: 10px !important;
    border-radius: 50% !important;
    cursor: pointer;
    transition: background-color 0.3s ease;
}

.owl-carousel .owl-prev:hover, .owl-carousel .owl-next:hover {
    background-color: rgba(0, 0, 0, 0.8);
}

/* Owl Carousel Custom Dots */
.owl-carousel .owl-dots {
    position: absolute;
    bottom: -30px;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    justify-content: center;
    align-items: center;
}

.owl-carousel .owl-dots .owl-dot span{
    background-color: rgba(0, 0, 0, 0.3);
    width: 12px;
    height: 12px;
    margin: 0 5px;
    border-radius: 50%;
    transition: background-color 0.3s ease;
    cursor: pointer;
}
.owl-carousel .owl-dots .owl-dot:focus{
	border: 0px;
}
.owl-carousel .owl-dots .owl-dot.active span{
    background-color: #d4af37; /* Gold active dot color */
}

.owl-carousel .owl-dots .owl-dot:hover span{
    background-color: #9b1c1c; /* Darker red on hover */
}

/* Responsive Design */
@media (max-width: 768px) {
    /* Arrows for smaller screens */
    .owl-carousel .owl-prev, .owl-carousel .owl-next {
        font-size: 24px; /* Smaller font size for arrows */
        padding: 8px;
    }

    /* Adjust the dots size for smaller screens */
    .owl-carousel .owl-dots .owl-dot {
        width: 10px; /* Smaller dots */
        height: 10px;
        margin: 0 3px; /* Reduced spacing */
    }

    /* Adjust position of dots for smaller screens */
    .owl-carousel .owl-dots {
        bottom: -25px; /* Position the dots a bit higher */
    }
}

@media (max-width: 480px) {
    /* Further adjust arrows for very small screens */
    .owl-carousel .owl-prev, .owl-carousel .owl-next {
        font-size: 20px; /* Even smaller font size for arrows */
        padding: 6px;
    }

    /* Adjust dot size and spacing for very small screens */
    .owl-carousel .owl-dots .owl-dot {
        width: 8px; /* Smaller dots for very small screens */
        height: 8px;
        margin: 0 2px; /* Reduced spacing */
    }

    /* Position dots slightly higher on very small screens */
    .owl-carousel .owl-dots {
        bottom: -20px;
    }
}
.about{
    /* margin-top: 50px; */
}
.video{
    margin-top: 50px;
    display: block;
    text-align: center;
}
.video .video-box{
    width: 100%;
    margin-bottom: 50px;
}
.video .video-box img, .video .video-box iframe{
    width: 100% !important;
}
.title h2{
	font-family: Libre Baskerville;
    font-size: 28px;
    text-align: left;
    color: #000000;
    line-height: 180%;
    text-transform: none;
    font-variant: normal;
    font-style: normal;
    font-weight: bold;
    margin-bottom: 10px;
    margin-top: 20px;
    padding-bottom: 0px;
    padding-top: 0px;
    margin-right: 0px;
    margin-left: 0px;
    text-align: center;
}
.album-link a{
	background-color: #bd0f0f;
    color: #fff;
    border: 1px solid #000;
    border-radius: 5px;
    font-size: 2em;
    font-weight: 600;
}
.album-link a:hover{
	background-color: #000;
}
.album-link.sm a{
	font-size: 1em;
}
.about h2{
	font-size: 2em;
    color: #bd0f0f;
    font-weight: 600;
    font-family: 'Libre Baskerville';
    margin-bottom: 20px;
}
.about p{
	font-size: 16px;
	font-weight: 600;
	font-family: 'Libre Baskerville';
}
.page-title h2{
    position: relative;
	font-size: 1.6em;
    color: #bd0f0f;
    font-weight: 600;
    font-family: 'Libre Baskerville';
    margin-bottom: 20px;
	padding: 10px 0;
}
.page-title h2::before{
    width: 300px;
    margin: 0 auto;
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    border-top: 3px solid #000;
	border-bottom: 3px solid #000;
}
.page-title p{
    font-size: 16px;
    margin-bottom: 15px
}
.meet_the_band{
	background-color: #fff;
    padding: 15px;
    border: 1px solid #000;
    border-radius: 10px;
}
.meet_the_band img{
    min-height: 200px;
    max-height: 350px;
    object-fit: contain;
    object-position: top center;
}
.contact-form label{
    font-size: 14px;
}
.contact-form .btn{
    background-color: #bd0f0f;
    font-size: 14px;
    border: 1px solid #000;
}
.contact-form .btn:hover{
    background-color: #000;
}
.contact-form h4{
    color: #000;
    font-size: 24px;
    text-shadow: #F19393 5px 5px 3px;
    text-align: center;
}
.contact-form .album-info h4{
    font-size: 20px;
    font-weight: 800;
    color:#bd0f0f;
    text-shadow: none;
}
.footer{
	background-color: #fff;
	padding: 8px 10px;
    margin-top: 20px;
}
.footer a , .footer p{
	font-size: 12px;
	font-weight: 600;
	color: #bd0f0f;
}
.footer .social a{
    padding: 5px 10px;
}
.footer .social a:hover{
    text-decoration: none;
}
.footer .social img{
    width: 30px;
    height: 30px;
    object-fit: contain;
}
.album-sample-list {
    list-style: none;
    padding: 0;
  }

.album-sample-item {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 10px;
}

.album-sample-shortcode {
    flex-shrink: 0;
}

.album-sample-title {
    font-weight: bold;
}