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

body {
    font-family: 'Poppins', sans-serif;
    line-height: 1.6;
    background-color: #e7cfb9; /* Light background color */
    color: #333; /* Dark text color */
}

/* Container for content */
.container {
    width: 80%;
    margin: auto;
    overflow: visible;
    text-align: center; /* Center the other elements in the container */
}
header {
    background: #efeae3; /* Soft beige background */
    color: #a62a2a; /* Dark red text */
    padding: 5px 0; /* Padding for the header */
    position: relative; /* Required for dropdown positioning */
    z-index: 10; /* Ensure header is above other elements */
    display: flex; /* Use flexbox for horizontal layout */
    flex-direction: row; /* Horizontal alignment */
    align-items: center; /* Center items vertically */
    justify-content: space-between; /* Ensure nav takes full width */
    gap: 5px; /* Add gap between logo and title */
}

.logo {
    display: flex; /* Align items within the logo container */
    align-items: center; /* Center vertically */
}
.logo-image, .logo-video {
    height: 50px; /* Set height for both logo and video */
    width: auto; /* Keep the aspect ratio */
    margin-right: 5px; /* Space between logo/video and title */
}

nav {
    width: 100%; /* Ensure nav takes full width */
    overflow: visible; /* Prevent overflow if needed */
}
nav ul {
    list-style: none;
    text-align: center;
    padding: 10px 0;
    display: flex; /* Use flexbox to align items in a row */
    justify-content: center; /* Center the items */
}

nav ul li {
    margin: 0 15px;
    position: relative;
    white-space: nowrap; /* Prevent text from wrapping */
}

nav a {
    color: #a62a2a; /* Dark red */
    text-decoration: none;
    font-weight: 600;
    padding: 10px;
    display: inline-block;
    transition: color 0.3s;
}

nav a:hover {
    color: #ffcc00; /* Golden color on hover */
}

/* Dropdown Menu Styles */
.dropdown {
    display: none;
    position: absolute;
    top: 100%; /* Align the dropdown below the parent item */
    left: 50;
    background-color: #efeae3; /* Match the header background */
    padding:10px;
    border-radius: 10px;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    z-index: 100; /* Higher z-index to appear above other elements */
    opacity: 0; /* Initially hidden */
    visibility: hidden;
    transition: opacity 0.2s ease-in-out, visibility 0.2s ease-in-out; /* Smooth transition for dropdown */
}

nav ul li:hover .dropdown {
    opacity: 1;
    visibility: visible;
}


.dropdown a {
    display: block;
    padding: 10px;
    color: #a62a2a;
    text-decoration: none;
}

.dropdown a:hover {
    background-color: #ffcc0000; /* Highlighted background color on hover */
}

/* Ensure other sections have lower z-index */


.services,
.testimonials,
.blog-preview,
.newsletter,
footer {
    position: relative;
    z-index: 1; /* Lower z-index for content below nav */
}

/* Hover delay to prevent dropdown from closing instantly */
nav ul li {
    position: relative;
}

nav ul li:hover .dropdown {
    pointer-events: all;
    transition: visibility 0.2s ease-in-out, opacity 0.2s ease-in-out;
}

/* Adjust hover for smooth user experience */
nav ul li:hover > a,
nav ul li:hover .dropdown {
    display: block;
    opacity: 1;
    visibility: visible;
}

/* Hero Section */
.hero {
    background: url('image11.jpj.jpg') no-repeat center center/cover; /* Your image */
    padding: 60px 20px;
    text-align: center;
    color: white;
    position: relative;
    border-radius: 8px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.5);
}

.hero h2 {
    font-size: 3em; /* Increased font size */
    margin-bottom: 10px;
    text-shadow: 2px 2px 5px rgba(0, 0, 0, 0.7); /* Text shadow for better visibility */
}

.hero p {
    margin: 20px 0;
    font-size: 1.2em; /* Larger paragraph text */
}

.hero button {
    padding: 15px 30px;
    background: #ffcc00; /* Bright yellow background */
    color: #333; /* Dark blue text */
    border: none;
    border-radius: 5px;
    cursor: pointer;
    font-size: 1.2em;
    transition: background 0.3s, transform 0.2s;
}

.hero button:hover {
    background: #e6b800; /* Darker yellow on hover */
    transform: translateY(-3px); /* Slight lift on hover */
}

/* Services Section */
.services {
    margin: 40px 0;
    text-align: center;
}

.services h2 {
    margin-bottom: 20px;
    font-size: 2.5em; /* Increased size for emphasis */
}

.service {
    background: #ffffff; /* White background for cards */
    padding: 20px;
    margin: 20px 0;
    border-radius: 8px;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
    transition: transform 0.3s, box-shadow 0.3s; /* Smooth transition effects */
}

.service:hover {
    transform: translateY(-5px);
    box-shadow: 0 6px 15px rgba(0, 0, 0, 0.2); /* Darker shadow on hover */
}

.services h3 {
    margin-bottom: 10px;
    font-size: 1.5em; /* Adjusted size for subheadings */
}

/* Testimonials Section */
.testimonials {
    background: #f9f9f9; /* Light gray background */
    padding: 40px 20px;
    margin: 40px 0;
    text-align: center;
}

.testimonials h2 {
    margin-bottom: 20px;
    font-size: 2.5em; /* Increased font size */
}

blockquote {
    border-left: 4px solid #e7cfb9; /* Soft beige left border */
    padding-left: 15px;
    margin: 15px 0;
    font-style: italic;
    font-size: 1.2em; /* Larger font for blockquotes */
}

/* Blog Preview Section */
.blog-preview {
    margin: 40px 0;
    text-align: center;
}

.blog-preview h2 {
    margin-bottom: 20px;
    font-size: 2.5em; /* Increased font size */
}

.article {
    background: #ffffff; /* Light gray background */
    padding: 15px;
    margin: 10px 0;
    border-radius: 8px;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    transition: transform 0.3s, box-shadow 0.3s; /* Smooth transition */
}

.article:hover {
    transform: translateY(-5px);
    box-shadow: 0 6px 15px rgba(0, 0, 0, 0.2); /* Darker shadow on hover */
}

.article a {
    color: #4A90E2; /* Dark blue for links */
    text-decoration: none;
    font-weight: 600;
}

.article h3 {
    margin-bottom: 10px;
    font-size: 1.5em; /* Adjusted size for article titles */
}

/* Newsletter Section */
.newsletter {
    background: #e7cfb9; /* Soft beige background */
    color: #333; /* Dark text */
    padding: 40px 20px;
    text-align: center;
    border-radius: 8px;
    margin: 40px 0;
}

.newsletter h2 {
    margin-bottom: 10px;
    font-size: 2.5em; /* Increased size for emphasis */
}

.newsletter input[type="email"] {
    padding: 10px;
    width: 250px;
    margin-right: 10px;
    border: none;
    border-radius: 5px;
}

.newsletter button {
    padding: 10px 20px;
    background: #4A90E2; /* Dark blue background */
    color: white;
    border: none;
    border-radius: 5px;
    cursor: pointer;
    transition: background 0.3s, transform 0.2s;
}

.newsletter button:hover {
    background: #357ABD; /* Darker blue on hover */
    transform: translateY(-3px); /* Slight lift on hover */
}

/* Footer */
footer {
    background: #ab845f; /* Dark blue */
    color: white;
    padding: 20px 0;
    text-align: center;
}

footer p {
    font-size: 1.2em; /* Larger font size for footer */
}

footer a {
    color: white; /* White links */
    text-decoration: none;
}

footer a:hover {
    color: #ffcc00; /* Golden color on hover */
}

.title {
    font-size: 1.8em; /* Adjust size for the title */
    font-weight: bold; /* Make the title bold */
    color: #a62a2a; /* Match the text color */
    margin: 0; /* Remove default margin */
    white-space: nowrap; /* Prevent title text from wrapping */
}
.logo-video {
    height: 50px; /* Adjust height as needed */
    width: auto; /* Keep aspect ratio */
    display: block;
    object-fit: cover; /* Ensure it fits the container properly */
    cursor: pointer; /* Makes it clickable if needed */
    border: none; /* Remove any borders */
}
.admin-textbox {
    background-color: #f9f9f900; /* Light background */
    padding: 20px;
    margin-bottom: 20px;
    border-radius: 8px;
    justify-content: center;/* Subtle shadow for depth */
    text-align: center;
    width: 100%; /* Adjust width as needed */
    margin: auto; /* Center the box */
    
}

.admin-textbox h2 {
    font-size: 2.5em; /* Make heading prominent */
    color: #a62a2a; /* Dark red for emphasis */
    margin-bottom: 15px;
}

.admin-textbox p {
    font-size: 1.2em;
    color: #333; /* Dark text */
    line-height: 1.6; /* Comfortable line spacing */
}
/* General Styles for Sections */
.why-astrology,
.faq-section {
    background-color: #f9f9f9; /* Light background for contrast */
    border: 1px solid #dcdcdc; /* Subtle border */
    border-radius: 8px; /* Rounded corners */
    padding: 20px; /* Space inside the box */
    margin: 20px auto; /* Centered with margin */
    width: 80%; /* Responsive width */
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1); /* Soft shadow */
}

/* Heading Styles */
.faq-section {
    background-color: #f9f9f9; /* Light background for contrast */
    border: 1px solid #dcdcdc; /* Subtle border */
    border-radius: 8px; /* Rounded corners */
    padding: 20px; /* Space inside the box */
    margin: 20px auto; /* Centered with margin */
    width: 80%; /* Responsive width */
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1); /* Soft shadow */
}

.faq-question {
    background-color: #a62a2a; /* Dark red background */
    color: white; /* White text color */
    border: none; /* No border */
    padding: 10px; /* Padding for button */
    margin-bottom: 10px; /* Space between buttons */
    width: 100%; /* Full width button */
    text-align: center; /* Left align text */
    font-size: 1.1em; /* Font size */
    cursor: pointer; /* Pointer cursor */
    border-radius: 5px; /* Rounded corners */
    transition: background-color 20s; /* Smooth transition */
}

.faq-question:hover {
    background-color: #ffcc00; /* Change color on hover */
}
.faq-answer {
    display: none; /* Hide answers initially */
}
.faq-answer {
    display:contents; /* Use flexbox for alignment */
    justify-content: center; /* Center align content */
    align-items: center; /* Vertically align items */
   padding: 10px; /* Padding for answer */
    background-color: #ffffff; /* White background for answer */
    border: 1px solid #dcdcdc; /* Subtle border */
    border-radius: 5px; /* Rounded corners */
    margin-bottom: 15px; /* Space between answers */
    text-align: justify; /* Justify text for better appearance */
    overflow: hidden; /* Prevent overflow */
    color: rgb(142, 142, 142);
}
.subheading {
    display: block; /* Ensure it takes a new line */
    font-size: 1em; /* Smaller font size for subheading */
    color: #3a3a3a; /* Gray color for subheading */
    margin-top: 10px; /* Space between question and subheading */
    margin-bottom: 10px; /* Space between subheading and answer */
}


.faq-item {
    margin-bottom: 20px; /* Space between FAQ items */
}

.search-box {
    display: flex;
    align-items: center;
    border: 2px solid #ffcc00;
    border-radius: 5px;
    padding: 5px;
    margin-bottom: 20px;
}

.search-box input {
    border: none;
    padding: 10px;
    outline: none;
    width: 100%;
}

.search-box button {
    background-color: #ffcc00;
    border: none;
    padding: 10px;
    cursor: pointer;
    border-radius: 5px;
}

.search-box button img {
    height: 20px;
    width: 20px;
}

.recently-opened {
    font-size: 1.1em;
    margin-bottom: 10px;
    font-weight: bold;
}

.no-data {
    text-align: center;
    color: #bbb;
    font-size: 1.1em;
    margin-top: 20px;
}
/* Clear float */
.kundli-form + .kundli-box::after {
    content: "";
    display: table;
    clear: both;
}

.kundli-section {
    position: relative; /* change from absolute to relative */
    margin-top: auto; /* add margin-top: auto to push the section to the bottom */
    background-image: url('mystical-numerology-scene.jpg');
    background-size: cover; /* scale the background image to cover the entire section */
    padding: 20px; /* add some padding to create space around the content */
    justify-content:centr;
    text-align: justify;
}

.kundli-content {
    text-align: justify;
    color: white; /* change the text color to white or any other color that contrasts with the background image */
    display: block;
}

.kundli-icon {
    width: 100px;
    margin-bottom: 20px;
}

.kundli-content p {
    font-size: 24px;
    margin-bottom: 20px;
}

.visit-button {
    background-color: #fdd835;
    border: none;
    color: black;
    padding: 10px 20px;
    font-size: 18px;
    cursor: pointer;
    border-radius: 5px;
    transition: background-color 0.3s;
}

.visit-button:hover {
    background-color: #e6c200;
}

.form-container {
    display:flex;
    gap: 20px;
    background-color: #ffffff00;
    padding: 20px;
    border-radius: 10px;
   
}

/* New Kundli Form */

.kundli-container {
    display: flex;
    justify-content: space-between;
    gap: 20px;
    padding: 20px;
    max-width: 800px; /* Set a max width to control how wide it can get */
    margin: 0 auto;   /* Centers the container horizontally */
    align-items: center;
}

/* Ensure both boxes are the same size */
.kundli-box {
    width: 380px; /* Same width for both boxes */
    height: 450px; /* Same height for both boxes */
    padding: 20px;
    background-color: #e0e0e0; /* Box background color */
    border-radius: 15px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); /* Box shadow for a subtle 3D effect */
    display: flex;
    justify-content: center;
    align-items: center;
}

/* Styles for New Kundli Section */
.new-kundli, .saved-kundli {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 550px; /* Add a height to make the boxes the same size */
}

/* Form and content inside New Kundli */
.new-kundli h2 {
    margin-bottom: 15px;
}

.new-kundli form {
    display: flex;
    flex-direction: column;
    gap: 15px;
}

.new-kundli label {
    margin-bottom: 5px;
    font-weight: bold;
}

.new-kundli input,
.new-kundli select {
    padding: 10px;
    border: 1px solid #ccc;
    border-radius: 5px;
    width: 100%;
}

.new-kundli h3 {
    margin: 20px 0 10px;
}

/* Birth details grid */
.birth-details {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 15px;
}

.generate-btn {
    background-color: #000;
    color: #fff;
    padding: 10px;
    border: none;
    border-radius: 5px;
    cursor: pointer;
}

.generate-btn:hover {
    background-color: #333;
}

/* Saved Kundli Section */
.saved-kundli {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
}

.saved-kundli h2 {
    margin-bottom: 15px;
}

.saved-kundli p {
    margin-bottom: 15px;
    color: #666;
}

.login-btn {
    background-color: #ffdd57;
    color: #000;
    padding: 10px;
    border: none;
    border-radius: 5px;
    cursor: pointer;
}

.login-btn:hover {
    background-color: #ffc107;
}
footer {
    background: #ab845f; /* Background color */
    color: white; /* Text color */
    padding: 20px 0; /* Padding for spacing */
    text-align: center;
    display: flex; /* Use flexbox */
    justify-content: space-between; /* Align items horizontally */
    align-items: center; /* Vertically align items */
    flex-direction: row; /* Align items in a row */
}

footer .container {
    display: flex;
    justify-content: space-between; /* Space between copyright and links */
    align-items: center;
    width: 100%; /* Take up full width */
    padding: 0 20px; /* Add padding for space */
}

footer p {
    font-size: 1.2em; /* Larger font size for footer */
    margin: 0; /* Remove margin */
    white-space: nowrap; /* Prevent line breaks */
}

footer nav ul {
    list-style: none; /* Remove bullet points */
    padding: 0;
    margin: 0;
    display: flex; /* Flexbox to align horizontally */
}

footer nav ul li {
    margin-left: 20px; /* Space between the links */
}

footer a {
    color: white; /* White links */
    text-decoration: none;
}

footer a:hover {
    color: #ffcc00; /* Golden color on hover */
}


#kundliOutput {
    margin-top: 30px;
    padding: 20px;
    background-color: #f9f9f9;
    border-radius: 10px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    text-align: justify;
    font-size: 16px;
    line-height: 1.5;
    color: #333;
}

#kundliOutput h3 {
    margin-top: 0;
    margin-bottom: 10px;
}

#kundliOutput p {
    margin-bottom: 15px;
}

.kundli-box {
    background-color: #ffffff;
    border-radius: 10px;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    padding: 30px;
    width: 650px; /* Increase the width to accommodate the input fields */
    height: 600px; /* Set a fixed height for the boxes */
    display: flex;
    flex-direction: column;
}

.birth-details {
    display: flex;
    flex-direction: column;
    gap: 15px;
    padding: 20px; /* Add some padding to give it some breathing room */
}

.date-time {
    display: flex;
    gap: 15px;
}

.date-time .form-group {
    flex: 1;
}

#birth-place {
    width: 100%; /* Set the width of the birth place input field to 100% */
}/* Assuming the container has the class 'birth-place-container' */

.birth-place-container {
    display: flex;
    flex-direction: column; /* Stack elements vertically */
    padding: 10px; /* Add padding to create space around the input */
}
.kundli-container {
    display: flex;
    justify-content: center;
    gap: 20px;
    margin-top: 40px;
}

.kundli-box {
    background-color: #ffffff;
    border-radius: 10px;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    padding: 30px;
    width: 400px;
    height: auto;
    display: flex;
    flex-direction: column;
}

.new-kundli, .saved-kundli {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 100%;
}

.new-kundli h2, .saved-kundli h2 {
    margin-bottom: 20px;
    color: #a62a2a;
    font-size: 24px;
}

.birth-details {
    display: flex;
    flex-direction: column;
    gap: 15px;
}

.date-time {
    display: flex;
    gap: 15px;
}

.form-group {
    margin-bottom: 15px;
}

.form-group label {
    display: block;
    margin-bottom: 5px;
    color: #333;
    font-weight: 600;
}

.form-group input,
.form-group select {
    width: 100%;
    padding: 10px;
    border: 1px solid #ddd;
    border-radius: 5px;
    font-size: 14px;
}

.generate-btn, .login-btn {
    background-color: #a62a2a;
    color: white;
    border: none;
    padding: 12px 20px;
    border-radius: 5px;
    cursor: pointer;
    font-size: 16px;
    transition: background-color 0.3s;
    margin-top: 20px;
}

.generate-btn:hover, .login-btn:hover {
    background-color: #8c2020;
}