/* ==================================================
   ASKPANDIT.AI
   STYLE.CSS V4
   PART 1 - GLOBAL + HEADER
================================================== */

@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700;800&display=swap');

/* ==================================================
   VARIABLES
================================================== */

:root{

    --primary:#6D28D9;
    --secondary:#EC4899;
    --accent:#F97316;

    --navy:#0F172A;
    --navy-light:#1E293B;

    --bg:#F8FAFC;
    --card:#FFFFFF;

    --text:#0F172A;
    --muted:#64748B;

    --border:#E5E7EB;

    --success:#22C55E;

    --radius:24px;

    --shadow-sm:
    0 4px 12px rgba(15,23,42,.05);

    --shadow-md:
    0 12px 30px rgba(15,23,42,.08);

    --shadow-lg:
    0 25px 60px rgba(15,23,42,.10);

}

/* ==================================================
   RESET
================================================== */

*{

    margin:0;
    padding:0;
    box-sizing:border-box;

}

html{

    scroll-behavior:smooth;

}

body{

    font-family:'Poppins',sans-serif;

    background:var(--bg);

    color:var(--text);

    overflow-x:hidden;

    line-height:1.7;

}

/* ==================================================
   TYPOGRAPHY
================================================== */

h1,h2,h3,h4,h5,h6{

    font-weight:700;

    color:var(--text);

}

a{

    text-decoration:none;

}

img{

    max-width:100%;

    height:auto;

    display:block;

}

/* ==================================================
   CONTAINER
================================================== */

.container{

    max-width:1280px;

    margin:auto;

}

/* ==================================================
   GLOBAL SECTIONS
================================================== */

.section-space{

    padding:30px 0;

}

.section-heading{

    font-size:36px;

    font-weight:700;

    margin-bottom:24px;

}

.section-subheading{

    color:var(--muted);

    max-width:650px;

    margin:auto;

}

/* ==================================================
   HEADER
================================================== */

.site-header{

    position:sticky;

    top:0;

    z-index:999;

    background:rgba(255,255,255,.92);

    backdrop-filter:blur(20px);

    border-bottom:1px solid var(--border);

}

.navbar{

    padding:14px 0;

}

/* Logo */

.logo{

    height:54px;

}

/* Navigation */

.navbar-nav{

    align-items:center;

}

.nav-link{

    color:var(--text) !important;

    font-weight:500;

    margin:0 10px;

    transition:.3s;

}

.nav-link:hover{

    color:var(--primary) !important;

}

.nav-ai{

    color:var(--primary) !important;

    font-weight:700;

}

/* Header Actions */

.header-actions{

    display:flex;

    align-items:center;

    gap:14px;

}

/* Contact */

.btn-contact{

    color:var(--text);

    font-weight:600;

    transition:.3s;

}

.btn-contact:hover{

    color:var(--primary);

}

/* CTA */

.btn-start{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    padding:12px 24px;

    border-radius:999px;

    color:white;

    font-weight:600;

    background:linear-gradient(
        135deg,
        #6D28D9,
        #EC4899,
        #F97316
    );

    transition:.3s;

}

.btn-start:hover{

    transform:translateY(-2px);

    color:white;

    box-shadow:
    0 15px 30px rgba(109,40,217,.20);

}

/* ==========================================================
   DAILY VEDIC BRIEFING - ASKPANDIT.AI
   Premium Dashboard UI
========================================================== */

.vedic-dashboard{
    background:#fff;
    border-radius:24px;
    overflow:hidden;
    box-shadow:0 20px 50px rgba(0,0,0,.08);
    border:1px solid #ececec;
    margin:60px 0;
}

/*=========================
HEADER
=========================*/

.dashboard-header{
    background:linear-gradient(135deg,#A56A00,#D89F1D,#F3D27A);
    color:#fff;
    padding:40px;
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:30px;
}

.dashboard-badge{
    display:inline-block;
    background:rgba(255,255,255,.18);
    padding:8px 18px;
    border-radius:30px;
    font-size:13px;
    text-transform:uppercase;
    letter-spacing:.8px;
}

.dashboard-header h2{
    margin:15px 0 10px;
    color:#fff;
    font-size:38px;
    font-weight:700;
}

.dashboard-header p{
    margin:0;
    font-size:17px;
    color:rgba(255,255,255,.92);
}

.dashboard-date{
    background:#fff;
    color:#8B5E00;
    padding:18px 26px;
    border-radius:16px;
    min-width:180px;
    text-align:center;
    box-shadow:0 10px 25px rgba(0,0,0,.10);
}

.dashboard-date div{
    font-size:20px;
    font-weight:700;
}

.dashboard-date span{
    display:block;
    margin-top:8px;
    color:#666;
    font-size:14px;
}

/*=========================
GRID
=========================*/

.dashboard-grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:25px;
    padding:35px;
}

/*=========================
CARD
=========================*/

.dashboard-card{
    background:#fff;
    border-radius:18px;
    padding:28px;
    transition:.35s;
    border:1px solid #ececec;
    position:relative;
}

.dashboard-card:hover{
    transform:translateY(-6px);
    box-shadow:0 15px 35px rgba(0,0,0,.08);
}

.card-icon{
    width:60px;
    height:60px;
    border-radius:50%;
    background:#fff;
    display:flex;
    justify-content:center;
    align-items:center;
    font-size:28px;
    margin-bottom:18px;
    box-shadow:0 10px 25px rgba(0,0,0,.08);
}

.dashboard-card h3{
    margin-bottom:15px;
    color:#222;
    font-size:22px;
    font-weight:700;
}

.dashboard-card p{
    margin:0;
    color:#555;
    line-height:1.9;
}

.dashboard-card ul{
    margin:0;
    padding-left:22px;
}

.dashboard-card li{
    margin-bottom:12px;
    line-height:1.8;
    color:#444;
}

.dashboard-card li::marker{
    color:#C58A1D;
}

/*=========================
CARD COLORS
=========================*/

.rating-card{
    background:#FFFBEF;
    border-left:6px solid #D4A017;
}

.energy-card{
    background:#F4F9FF;
    border-left:6px solid #4A90E2;
}

.activity-card{
    background:#F3FFF7;
    border-left:6px solid #2ECC71;
}

.avoid-card{
    background:#FFF8F2;
    border-left:6px solid #F39C12;
}

.practice-card{
    background:#FBF6FF;
    border-left:6px solid #8E44AD;
}

.bestfor-card{
    background:#F8FFF7;
    border-left:6px solid #27AE60;
}

/*=========================
RATING
=========================*/

.rating-number{
    font-size:56px;
    font-weight:700;
    color:#C58A1D;
    margin:15px 0;
}

.rating-number small{
    font-size:22px;
    color:#777;
}

.rating-status{
    display:inline-block;
    background:#D4A017;
    color:#fff;
    padding:8px 16px;
    border-radius:30px;
    font-size:14px;
}

/*=========================
PANDIT ADVICE
=========================*/

.pandit-message{
    margin:0 35px 35px;
    background:linear-gradient(135deg,#FFF7E6,#FFFDF8);
    border-left:6px solid #C58A1D;
    border-radius:18px;
    padding:30px;
    display:flex;
    gap:20px;
}

.pandit-avatar{
    width:70px;
    height:70px;
    border-radius:50%;
    background:#D4A017;
    color:#fff;
    display:flex;
    justify-content:center;
    align-items:center;
    font-size:34px;
    flex-shrink:0;
}

.pandit-label{
    display:block;
    color:#C58A1D;
    font-size:13px;
    letter-spacing:1px;
    text-transform:uppercase;
    margin-bottom:10px;
}

.pandit-content blockquote{
    margin:0;
    font-size:18px;
    line-height:1.9;
    color:#444;
    font-style:italic;
}

/*=========================
ASK AI
=========================*/

.ask-pandit-banner{
    margin:0 35px 35px;
    background:linear-gradient(135deg,#5E35B1,#7E57C2);
    border-radius:18px;
    padding:35px;
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:30px;
}

.ask-pandit-banner h3{
    color:#fff;
    margin-bottom:12px;
}

.ask-pandit-banner p{
    color:rgba(255,255,255,.92);
    margin:0;
    line-height:1.8;
}

.ask-ai-btn{
    display:inline-block;
    background:#fff;
    color:#5E35B1;
    padding:16px 34px;
    border-radius:50px;
    text-decoration:none;
    font-weight:700;
    transition:.3s;
    white-space:nowrap;
}

.ask-ai-btn:hover{
    background:#F7F7F7;
    transform:translateY(-3px);
    color:#5E35B1;
}

/*=========================
FOOTER
=========================*/

.dashboard-footer{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    background:#FAFAFA;
    border-top:1px solid #eee;
}

.footer-item{
    text-align:center;
    padding:18px;
    font-size:15px;
    color:#666;
    border-right:1px solid #eee;
}

.footer-item:last-child{
    border-right:none;
}

/*=========================
RESPONSIVE
=========================*/

@media(max-width:992px){

.dashboard-header{
    flex-direction:column;
    text-align:center;
}

.dashboard-grid{
    grid-template-columns:1fr;
}

.ask-pandit-banner{
    flex-direction:column;
    text-align:center;
}

.dashboard-footer{
    grid-template-columns:repeat(2,1fr);
}

}

@media(max-width:576px){

.dashboard-header{
    padding:28px;
}

.dashboard-header h2{
    font-size:30px;
}

.dashboard-grid{
    padding:20px;
}

.dashboard-card{
    padding:22px;
}

.pandit-message{
    margin:20px;
    flex-direction:column;
    text-align:center;
}

.ask-pandit-banner{
    margin:20px;
}

.dashboard-footer{
    grid-template-columns:1fr;
}

.footer-item{
    border-right:none;
    border-bottom:1px solid #eee;
}

.footer-item:last-child{
    border-bottom:none;
}

}

/* Mobile Toggle */

.navbar-toggler{

    border:none;

    box-shadow:none !important;

    font-size:24px;

}

/* ==================================================
   UTILITIES
================================================== */

.text-gradient{

    background:linear-gradient(
        90deg,
        #6D28D9,
        #EC4899,
        #F97316
    );

    -webkit-background-clip:text;

    -webkit-text-fill-color:transparent;

}

.rounded-xl{

    border-radius:24px;

}

.shadow-soft{

    box-shadow:var(--shadow-md);

}

/* ==================================================
   TABLET
================================================== */

@media(max-width:991px){

    .header-actions{

        margin-top:20px;

        flex-direction:column;

        align-items:flex-start;

    }

    .nav-link{

        margin:8px 0;

    }

}

/* ==================================================
   MOBILE
================================================== */

@media(max-width:768px){

    .logo{

        height:44px;

    }

    .section-space{

        padding:30px 0;

    }

    .section-heading{

        font-size:28px;

    }

}



/* ==================================================
   STYLE.CSS V4
   PART 2
   HERO + SEARCH + ORB + POPULAR QUESTIONS
================================================== */

/* ==================================================
   HERO SECTION
================================================== */

.hero-ai{
    padding:40px 0 60px;
}

.hero-badge{
    display:inline-flex;
    align-items:center;
    gap:8px;
    padding:10px 18px;
    border-radius:999px;
    background:#F3E8FF;
    color:#6D28D9;
    font-size:13px;
    font-weight:600;
    margin-bottom:20px;
}

.hero-title{
    font-size:45px;
    line-height:1.08;
    font-weight:800;
    letter-spacing:-1px;
    margin-bottom:20px;
    color:#0F172A;
}

.gradient-text{
    background:linear-gradient(
        90deg,
        #6D28D9,
        #EC4899,
        #F97316
    );

    -webkit-background-clip:text;
    -webkit-text-fill-color:transparent;
}

.hero-subtitle{
    font-size:18px;
    line-height:1.8;
    color:#64748B;
    max-width:580px;
    margin-bottom:30px;
}

.hero-image img{

    filter:drop-shadow(
        0 0 40px rgba(124,58,237,.25)
    );

}

/* ==================================================
   AI SEARCH
================================================== */

.ai-search{

    background:#FFFFFF;

    border:2px solid rgba(109,40,217,.15);

    border-radius:26px;

    padding:10px;

    box-shadow:
    0 0 0 10px rgba(109,40,217,.05),
    0 30px 80px rgba(109,40,217,.12);

    transition:.35s;

}

.ai-search:hover{

    box-shadow:
    0 0 0 10px rgba(109,40,217,.06),
    0 30px 70px rgba(109,40,217,.10);

}

.ai-search .d-flex{

    gap:10px;

}

.ai-search input{

    width:100%;

    border:none;

    outline:none;

    background:transparent;

    padding:20px 16px;

    font-size:17px;

    color:#0F172A;

}

.ai-search input::placeholder{

    color:#94A3B8;

}

.ai-search-actions{

    display:flex;

    align-items:center;

    gap:10px;

}

/* Voice Button */

.voice-btn{

    width:54px;

    height:54px;

    border:none;

    border-radius:50%;

    background:#F8FAFC;

    cursor:pointer;

    font-size:20px;

    transition:.3s;

}

.voice-btn:hover{

    background:#EEF2FF;

    transform:translateY(-2px);

}

/* Submit Button */

.ai-search-btn{

    width:54px;

    height:54px;

    border:none;

    border-radius:50%;

    cursor:pointer;

    color:white;

    font-size:18px;

    background:linear-gradient(
        135deg,
        #EC4899,
        #F97316
    );

    transition:.3s;

}

.ai-search-btn:hover{

    transform:translateY(-2px);

}

/* ==================================================
   POPULAR QUESTIONS
================================================== */

.popular-label{

    margin-top:28px;

    margin-bottom:12px;

    font-weight:700;

    color:#0F172A;

}

.question-pill{

    background:#FFFFFF;

    border:1px solid #E5E7EB;

    border-radius:18px;

    padding:14px 16px;

    font-size:14px;

    font-weight:500;

    cursor:pointer;

    transition:.3s;

}

.question-pill:hover{

    border-color:#6D28D9;

    transform:translateY(-3px);

    box-shadow:
    0 15px 35px rgba(109,40,217,.10);

}

/* ==================================================
   AI ORB IMAGE
================================================== */

.hero-orb-wrapper{

    display:flex;

    justify-content:center;

    align-items:center;

}

.hero-orb{

    width:100%;

    max-width:620px;

    height:auto;

    display:block;

    animation:orbFloat 6s ease-in-out infinite;

}

.glance-wrapper{

    background:#FFFFFF;

    border:1px solid #E5E7EB;

    border-radius:28px;

    padding:30px;

    box-shadow:0 8px 24px rgba(15,23,42,.04);

}

@keyframes orbFloat{

    0%{
        transform:translateY(0px);
    }

    50%{
        transform:translateY(-15px);
    }

    100%{
        transform:translateY(0px);
    }

}

/* ==================================================
   DESKTOP REFINEMENT
================================================== */

@media(min-width:1200px){

    .hero-ai{

        min-height:620px;

        display:flex;

        align-items:center;

    }

}

/* ==================================================
   TABLET
================================================== */

@media(max-width:991px){

    .hero-title{

        font-size:50px;

    }

    .hero-subtitle{

        font-size:17px;

    }

    .hero-orb{

        max-width:380px;

        margin-top:40px;

    }

}

/* ==================================================
   MOBILE
================================================== */

@media(max-width:768px){

    .hero-ai{

        padding:25px 0 40px;

    }

    .hero-title{

        font-size:38px;

        line-height:1.15;

    }

    .hero-subtitle{

        font-size:16px;

        line-height:1.7;

    }

    .hero-orb{

        max-width:300px;

        margin-top:30px;

        margin-bottom:20px;

    }

    .question-pill{

        font-size:13px;

    }

    .voice-btn,
    .ai-search-btn{

        width:48px;

        height:48px;

    }

}


/* ==================================================
   STYLE.CSS V4
   PART 3
   CARDS + GLANCE + INSIGHTS + TRUST
================================================== */

/* ==================================================
   DASHBOARD CARDS
================================================== */

.dashboard-card{

    background:#FFFFFF;

    border:1px solid #E5E7EB;

    border-radius:24px;

    padding:30px;

    height:100%;

    transition:.35s;

    position:relative;

    overflow:hidden;

}

/* Card Layout */

.card-top{

    display:flex;

    align-items:flex-start;

    gap:16px;

}

.card-content{

    flex:1;

}

.card-content h4{

    margin-bottom:8px;

    font-size:20px;

    font-weight:700;

}

.card-content p{

    color:#64748B;

    font-size:14px;

    margin-bottom:0;

}

/* Icon */

.card-icon{

    width:60px;

    height:60px;

    flex-shrink:0;

    border-radius:16px;

    display:flex;

    align-items:center;

    justify-content:center;

    font-size:28px;

    background:#F8FAFC;

}

/* Arrow */

.card-arrow{

    margin-top:20px;

    margin-left:auto;

    width:36px;

    height:36px;

    border-radius:50%;

    display:flex;

    align-items:center;

    justify-content:center;

    background:#F3E8FF;

    color:#6D28D9;

    font-weight:700;

}

.card-marriage .card-icon{

    background:#F3E8FF;
    color:#7C3AED;

}

.card-vehicle .card-icon{

    background:#FFF7ED;
    color:#F97316;

}

.card-panchangam .card-icon{

    background:#ECFDF5;
    color:#22C55E;

}

.card-horoscope .card-icon{

    background:#FFFBEB;
    color:#F59E0B;

}

.card-marriage .card-arrow{
    background:#F3E8FF;
    color:#7C3AED;
}

.card-vehicle .card-arrow{
    background:#FFF7ED;
    color:#F97316;
}

.card-panchangam .card-arrow{
    background:#ECFDF5;
    color:#22C55E;
}

.card-horoscope .card-arrow{
    background:#FFFBEB;
    color:#F59E0B;
}

.dashboard-card:hover{

    transform:translateY(-6px);

    border-color:#6D28D9;

    box-shadow:
    0 25px 60px rgba(109,40,217,.12);

}

.zodiac-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(170px,1fr));
    gap:24px;
}

.zodiac-card{

    background:#F5F3FF;
	border:2px solid #7C3AED;

    border-radius:18px;

    padding:30px 20px;

    text-align:center;

    transition:.3s;

    display:block;

	cursor:pointer;

	min-height:170px;

    height:100%;

}

.zodiac-card:hover{

    transform:translateY(-6px);

    border-color:#7C3AED;

    box-shadow:0 15px 35px rgba(124,58,237,.15);

}

.zodiac-icon{

    width:72px;

    height:72px;

    margin:0 auto 18px;

    border-radius:50%;

    background:#F5F3FF;

    color:#7C3AED;

    font-size:36px;

    display:flex;

    align-items:center;

    justify-content:center;

    transition:.3s ease;

}

.zodiac-card h5{
    font-size:20px;
    font-weight:700;
    margin:14px 0 8px;
}

.zodiac-card:hover .zodiac-icon{

    background:#7C3AED;

    color:#fff;

}

.zodiac-date{

    display:block;

    margin-top:8px;

    font-size:13px;

    color:#64748B;

}

.active-zodiac{
    background:#F8F5FF;
    border:2px solid #7C3AED;
    box-shadow:0 10px 30px rgba(124,58,237,.15);
}

.active-zodiac h5{
    color:#111827;
}

.active-zodiac .zodiac-date{

    color:#E9D5FF;

}

.active-zodiac .zodiac-icon{

    background:#fff;

    color:#7C3AED;

}

.dashboard-card::before{

    content:'';

    position:absolute;

    top:0;

    left:0;

    width:100%;

    height:4px;

    background:linear-gradient(
        90deg,
        #6D28D9,
        #EC4899,
        #F97316
    );

    opacity:0;

    transition:.3s;

}

.dashboard-card:hover::before{

    opacity:1;

}

.dashboard-card h4{

    font-size:20px;

    font-weight:700;

    margin-bottom:12px;

}

.dashboard-card p{

    color:#64748B;

    margin-bottom:0;

}

/* ==================================================
   CARD ICON
================================================== */

.card-icon{

    width:64px;

    height:64px;

    border-radius:18px;

    display:flex;

    align-items:center;

    justify-content:center;

    font-size:28px;

    background:#F8FAFC;

    margin-bottom:16px;

}

/* ==================================================
   TODAY AT A GLANCE
================================================== */

.glance-card{

    background:white;

    border:1px solid #E5E7EB;

    border-radius:20px;

    padding:20px;

    transition:.3s;

    height:100%;

}

.glance-card:hover{

    transform:translateY(-4px);

    box-shadow:0 12px 25px rgba(0,0,0,.08);

}

.glance-top{

    display:flex;

    align-items:flex-start;

    gap:14px;

}

.glance-icon{

    width:52px;

    height:52px;

    border-radius:50%;

    display:flex;

    align-items:center;

    justify-content:center;

    font-size:22px;

    flex-shrink:0;

}



.glance-content{

    flex:1;

}

.glance-label{

    color:#64748B;

    font-size:14px;

    font-weight:600;

}

.glance-value{

    font-size:16px;

    font-weight:700;

    color:#0F172A;

    margin-top:4px;

}

.glance-extra{

    color:#64748B;

    font-size:13px;

    margin-top:3px;

}

/* The daily facts include long names and full date-time values. Keep the
   cards generous enough to read on desktop, tablet and mobile. */
.glance-value{
    line-height:1.45;
    overflow-wrap:anywhere;
}

.purple{
    background:#F3E8FF;
    color:#7C3AED;
}

.green{
    background:#ECFDF5;
    color:#10B981;
}

.red{
    background:#FEF2F2;
    color:#EF4444;
}

.orange{
    background:#FFF7ED;
    color:#F97316;
}

/* ==================================================
   AI INSIGHTS SECTION
================================================== */

.insights-section{

    background:linear-gradient(
        135deg,
        #08112E,
        #1B1F5A
    );

    border-radius:28px;

    padding:24px;

    min-height:auto;

}

.insights-section::before{

    content:'';

    position:absolute;

    width:350px;

    height:350px;

    border-radius:50%;

    background:
    radial-gradient(
        rgba(109,40,217,.35),
        transparent
    );

    top:-100px;

    right:-100px;

}

.insights-section h3{

    color:white;

    font-size:32px;

    font-weight:700;

    margin-bottom:25px;

}

/* ==================================================
   INSIGHT CARD
================================================== */

.insight-card{

    background:rgba(255,255,255,.08);

    border:1px solid rgba(255,255,255,.10);

    border-radius:18px;

    padding:18px;

    text-align:center;

    min-height:130px;

}

.question-item:hover,
.festival-item:hover{

    transform:translateY(-2px);

    border-color:#C4B5FD;

}

.ai-questions-card,
.muhurtham-card,
.festival-card{

    background:#FFFFFF;

    border:1px solid #E5E7EB;

    border-radius:24px;

    padding:32px 24px;

    height:100%;

    box-shadow:
        0 8px 25px rgba(15,23,42,.04);

}

.ai-questions-card .card-header-row h5{
    color:#7C3AED;
}

.muhurtham-card .card-header-row h5{
    color:#FF7A00;
}

.festival-card .card-header-row h5{
    color:#0D1B2A;
}

.ai-questions-card .question-item:first-child{
    border-left:4px solid #7C3AED;
}

.muhurtham-card .festival-item:first-child{
    border-left:4px solid #FF7A00;
}

.festival-card .festival-item:first-child{
    border-left:4px solid #7C3AED;
}

.card-header-row{

    display:flex;

    justify-content:space-between;

    align-items:center;

    margin-bottom:20px;

}

.card-header-row h5{

    color:#0F172A;

    font-weight:700;

    font-size:20px;

}

.card-header-row a{

    white-space:nowrap;

    color:#6D28D9;

    text-decoration:none;

    font-weight:600;

}

.question-item,
.festival-item{

    background:#F8FAFC;

    border:1px solid #EEF2F7;

    border-radius:16px;

    padding:16px 18px;

    margin-bottom:12px;

    transition:all .25s ease;

}

.question-item:hover,
.festival-item:hover{


	transform:translateY(-3px);

    box-shadow:0 10px 25px rgba(124,58,237,.08);

    border-color:#C4B5FD;

}

.ask-anything-link{

    display:inline-block;

    margin-top:10px;

    font-weight:600;

    color:#7C3AED;

}

.insight-card:hover{

    background:rgba(255,255,255,.12);

    transform:translateY(-4px);

}

/* ==================================================
   TRUST SECTION
================================================== */

.trust-card{

    background:#FFFFFF;

    border:1px solid #E5E7EB;

    border-radius:20px;

    padding:30px;

	font-size:16px;

    text-align:center;

    font-weight:600;

    transition:.3s;

}

.trust-card:hover{

    border-color:#6D28D9;

    transform:translateY(-4px);

    box-shadow:
    0 20px 40px rgba(109,40,217,.08);

}

/* ==================================================
   SECTION SPACING
================================================== */

.section-space{

    padding:15px 0;

}

/* ==================================================
   TABLET
================================================== */

@media(max-width:991px){

    .dashboard-card{

        padding:24px;

    }

    .insights-section{

        padding:35px;

    }

}

/* ==================================================
   MOBILE
================================================== */

@media(max-width:768px){

    .section-space{

        padding:30px 0;

    }

    .dashboard-card{

        padding:20px;

    }

    .dashboard-card h4{

        font-size:18px;

    }

    .card-icon{

        width:56px;

        height:56px;

        font-size:24px;

    }

    .glance-card{

        padding:16px;

    }

    .glance-wrapper{
        border-radius:22px;
        padding:24px 16px;
    }

    .glance-wrapper .section-heading{
        font-size:1.75rem;
        line-height:1.2;
        margin-bottom:22px;
    }

    .glance-top{
        align-items:center;
        gap:15px;
    }

    .glance-label{
        font-size:.95rem;
    }

    .glance-value{
        font-size:1.05rem;
        line-height:1.45;
    }

    .glance-extra{
        font-size:.88rem;
        line-height:1.45;
    }

    .insights-section{

        padding:28px;

        border-radius:24px;

    }

    .insights-section h3{

        font-size:24px;

    }

    .insight-card{

        padding:18px;

    }

    .trust-card{

        padding:18px;

    }

}


/* ==================================================
   STYLE.CSS V4
   PART 4
   FOOTER + RESPONSIVE + FINAL POLISH
================================================== */

/* ==================================================
   FOOTER
================================================== */

.site-footer{

    background:#071024;

    color:#CBD5E1;

    padding:100px 0 50px;

    margin-top:80px;

}

.footer-title{

    color:white;

    font-size:18px;

    font-weight:700;

    margin-bottom:25px;

}

.footer-description{

    color:white;

    font-size:20px;

    font-weight:700;

    margin-bottom:16px;

}

.footer-links{

    list-style:none;

    padding:0;

    margin:0;

}

.footer-links li{

    margin-bottom:12px;

}

.footer-links a{

    color:#CBD5E1;

    text-decoration:none;

    transition:.3s;

}

.footer-links a:hover{

    color:white;

}

.footer-divider{

    border-color:rgba(255,255,255,.10);

    margin:50px 0 30px;

}

.footer-badge{

    display:inline-block;

    background:rgba(255,255,255,.08);

    padding:8px 14px;

    border-radius:999px;

    font-size:13px;

}

.footer-mini-badge{

    display:inline-block;

    background:rgba(255,255,255,.08);

    padding:8px 12px;

    border-radius:999px;

    margin-left:10px;

    font-size:12px;

}

.copyright{

    margin-bottom:0;

}

/* ==================================================
   LINK HOVER
================================================== */

a{

    transition:.3s;

}

a:hover{

    text-decoration:none;

}

/* ==================================================
   CARD GRID IMPROVEMENTS
================================================== */

.row.g-4 > div{

    display:flex;

}

.row.g-4 > div > .dashboard-card{

    width:100%;

}

/* ==================================================
   BUTTON IMPROVEMENTS
================================================== */

.btn-start{

    box-shadow:
    0 15px 35px rgba(109,40,217,.20);

}

.btn-start:hover{

    transform:translateY(-3px);

}

/* ==================================================
   HERO VISUAL POLISH
================================================== */

.hero-title{

    max-width:700px;

}

.hero-subtitle{

    max-width:560px;

}

.hero-orb{

    filter:
    drop-shadow(
        0 30px 60px rgba(109,40,217,.18)
    );

}

/* ==================================================
   SCROLLBAR
================================================== */

::-webkit-scrollbar{

    width:10px;

}

::-webkit-scrollbar-track{

    background:#F8FAFC;

}

::-webkit-scrollbar-thumb{

    background:#D1D5DB;

    border-radius:20px;

}

::-webkit-scrollbar-thumb:hover{

    background:#9CA3AF;

}

/* ==================================================
   TABLET
================================================== */

@media(max-width:991px){

    .footer-mini-badge{

        margin-top:10px;

        margin-left:0;

        margin-right:10px;

    }

    .site-footer{

        text-align:center;

    }

}

/* ==================================================
   MOBILE MENU
================================================== */

@media(max-width:768px){

    .navbar-collapse{

        background:white;

        padding:20px;

        border-radius:20px;

        margin-top:12px;

        box-shadow:
        0 20px 50px rgba(15,23,42,.08);

    }

    .header-actions{

        width:100%;

    }

    .btn-contact,
    .btn-start{

        width:100%;

        text-align:center;

    }

}

/* ==================================================
   MOBILE HERO
================================================== */

@media(max-width:768px){

    .hero-title{

        font-size:32px;

        line-height:1.15;

    }

    .hero-subtitle{

        font-size:16px;

    }

    .hero-orb{

        max-width:240px;

    }

}

/* ==================================================
   MOBILE CARDS
================================================== */

@media(max-width:768px){

    .dashboard-card{

        margin-bottom:12px;

    }

    .question-pill{

        text-align:center;

    }

}

/* ==================================================
   FINAL UTILITIES
================================================== */

.text-center-mobile{

    text-align:left;

}

@media(max-width:768px){

    .text-center-mobile{

        text-align:center;

    }

}

/* =====================================
   IMPORTANT TIMINGS SECTION
===================================== */

.timings-grid{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:24px;

}

.timing-card{

    background:#FFFFFF;

    border:1px solid #E5E7EB;

    border-radius:20px;

    padding:24px;

    display:flex;

    align-items:center;

    gap:16px;

    height:140px;

    width:100%;

    transition:all .3s ease;

}

.timing-card:hover{

    transform:translateY(-4px);

    border-color:#C4B5FD;

    box-shadow:0 12px 24px rgba(124,58,237,.10);

}

.timing-icon{

    width:60px;

    height:60px;

    min-width:60px;

    border-radius:50%;

    display:flex;

    align-items:center;

    justify-content:center;

    font-size:24px;

}

/* Icon Colors */

.sunrise{
    background:#FFF7ED;
}

.sunset{
    background:#FEF2F2;
}

.rahu{
    background:#FEE2E2;
}

.warning{
    background:#FFF7ED;
}

.gulika{
    background:#F3F4F6;
}

.dur{
    background:#FEE2E2;
}

/* Content */

.timing-content{

    flex:1;

}

.timing-label{

    font-size:14px;

    font-weight:600;

    color:#64748B;

    margin-bottom:6px;

}

.timing-value{

    font-size:18px;

    font-weight:700;

    color:#0F172A;

    line-height:1.4;

}

.timing-note{

    font-size:13px;

    color:#64748B;

    margin-top:4px;

}

.timing-note.danger{

    color:#DC2626;

    font-weight:600;

}

.blue{
    background:#DBEAFE;
    color:#2563EB;
}

/* Desktop */

@media(min-width:992px){

    .timings-grid{

        grid-template-columns:repeat(3,1fr);

    }

}

/* Tablet */

@media(max-width:991px){

    .timings-grid{

        grid-template-columns:repeat(2,1fr);

    }

}

/* Mobile */

@media(max-width:768px){

    .timings-grid{

        grid-template-columns:1fr;

    }

    .timing-card{

        height:auto;

        min-height:110px;

        padding:18px;

    }

    .timing-icon{

        width:50px;

        height:50px;

        min-width:50px;

        font-size:20px;

    }

    .timing-value{

        font-size:16px;

    }

}


/* =========================================
PANCHANGAM V3
========================================= */

.panchangam-hero{

    padding:45px 0 30px;

}

.panchangam-title{

    font-size:56px;

    font-weight:800;

    margin:10px 0;

}

.panchangam-subtitle{

    max-width:750px;

    margin:auto;

    color:#64748B;

    font-size:18px;

}

.ai-search-box{

    margin-top:30px;

}

.search-wrapper{

    display:flex;

    background:#FFFFFF;

    border:1px solid #E5E7EB;

    border-radius:20px;

    overflow:hidden;

    box-shadow:0 10px 30px rgba(15,23,42,.05);

}

.search-wrapper input{

    flex:1;

    border:none;

    padding:18px 20px;

    outline:none;

}

.search-wrapper button{

    border:none;

    background:#6D28D9;

    color:white;

    padding:0 24px;

    font-weight:600;

}

.hero-mini-stats{

    margin-top:10px;

    display:flex;

    justify-content:center;

    gap:20px;

    flex-wrap:wrap;

}

.ask-ai-card,
.guidance-card,
.authority-card{

    background:#FFFFFF;

    border:1px solid #E5E7EB;

    border-radius:24px;

    padding:35px;

}

.guidance-badge{

    display:inline-block;

    padding:8px 14px;

    background:#F3E8FF;

    color:#6D28D9;

    border-radius:999px;

    font-size:13px;

    margin-bottom:15px;

}

.good-card,
.avoid-card{

    border-radius:20px;

    padding:24px;

}

.good-card{

    background:#ECFDF5;

}

.good-card.not-recommended-card {
    background: #fff5f5;
    border: 1px solid #fecaca;
}	

.good-card.donts-card {
    background: #fff8e8;
    border: 1px solid #fde68a;
}

.avoid-card{

    background:#FEF2F2;

}

.faq-wrapper{

    max-width:900px;

    margin:auto;

}

.faq-item{

    background:#FFFFFF;

    border:1px solid #E5E7EB;

    border-radius:18px;

    padding:20px;

    margin-bottom:15px;

}

.faq-item summary{

    cursor:pointer;

    font-weight:600;

}

.trust-box{

    background:#F8FAFC;

    border-radius:20px;

    padding:25px;

    text-align:center;

}

.related-card{

    display:block;

    background:#FFFFFF;

    border:1px solid #E5E7EB;

    border-radius:24px;

    padding:25px 15px;

    text-align:center;

    transition:.3s;

    color:#0F172A;

}

.related-card:hover{

    transform:translateY(-5px);

    border-color:#6D28D9;

}

@media(max-width:768px){

    .panchangam-title{

        font-size:38px;

    }

    .search-wrapper{

        flex-direction:column;

    }

    .search-wrapper button{

        height:55px;

    }

}

/* =========================================
MUHURTHAM PAGE
========================================= */

.muhurtham-highlight{

    background:linear-gradient(
        135deg,
        #FFF7ED,
        #FFFFFF
    );

    border:1px solid #FED7AA;

    border-radius:24px;

    padding:30px;

}

.muhurtham-highlight h3{

    margin-bottom:15px;

}

.related-card p{

    color:#64748B;

    margin-top:8px;

}

.guidance-card ul{

    padding-left:20px;

}

.guidance-card li{

    margin-bottom:10px;

}

.upcoming-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
    gap:25px;
}

.monthly-muhurtham-planner{
    margin-top:28px;
    padding:26px;
    background:#F8FAFC;
    border:1px solid #E5E7EB;
    border-radius:20px;
    text-align:left;
}

.planner-choice-links{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    justify-content:center;
    margin:18px 0 20px;
}

.planner-choice-links a{
    align-items:center;
    background:#F5F3FF;
    border:1px solid #DDD6FE;
    border-radius:999px;
    color:#6D28D9;
    display:inline-flex;
    font-size:.86rem;
    font-weight:800;
    padding:8px 13px;
    text-decoration:none;
}

.planner-choice-links a:hover{
    background:#EDE9FE;
    color:#5B21B6;
}

.planner-section-title,
.monthly-muhurtham-planner h3{
    font-size:22px;
    margin-bottom:6px;
}

.planner-section-title{
    margin-top:0;
    text-align:left;
}

.monthly-muhurtham-planner > p,
.monthly-result-note{
    color:#64748B;
    margin-bottom:18px;
}

.monthly-results-group{
    margin-top:28px;
}

.monthly-results-group h4{
    margin:0 0 14px;
    color:#1E293B;
    font-size:1.05rem;
    text-align:left;
}

.featured-monthly-date{
    align-items:center;
    background:linear-gradient(135deg,#ECFDF5 0%,#F0FDF4 100%);
    border:1px solid #86EFAC;
    border-left:5px solid #16A34A;
    border-radius:18px;
    display:flex;
    gap:24px;
    justify-content:space-between;
    margin:0 0 28px;
    padding:22px 24px;
}

.featured-monthly-date h4{
    color:#166534;
    font-size:1.2rem;
    margin:5px 0 6px;
}

.featured-monthly-date p{
    color:#365314;
    margin:0;
    max-width:690px;
}

.featured-kicker{
    color:#15803D;
    font-size:.8rem;
    font-weight:800;
    letter-spacing:.04em;
    text-transform:uppercase;
}

.featured-monthly-date .view-btn{
    background:#15803D;
    min-width:210px;
    white-space:nowrap;
}

.featured-monthly-date .view-btn:hover{
    background:#166534;
}

@media (max-width: 767px){
    .featured-monthly-date{
        align-items:flex-start;
        flex-direction:column;
        gap:16px;
    }

    .featured-monthly-date .view-btn{
        min-width:0;
    }
}

.check-date-form{
    margin:0;
}

.check-date-form .view-btn{
    border:0;
    cursor:pointer;
}

@media(max-width:576px){
    .monthly-muhurtham-planner{
        padding:18px;
    }
}

.muhurtham-card{
    background:#fff;
    border:1px solid #E5E7EB;
    border-radius:22px;
    padding:28px;
    text-align:center;
    transition:.3s;
    box-shadow:0 10px 30px rgba(15,23,42,.05);
}

.muhurtham-card:hover{
    transform:translateY(-6px);
    box-shadow:0 20px 45px rgba(15,23,42,.10);
}

.rating-tag{
    display:inline-block;
    padding:6px 14px;
    border-radius:30px;
    font-size:13px;
    font-weight:600;
    margin-bottom:20px;
}

.rating-tag.excellent{
    background:#DCFCE7;
    color:#15803D;
}

.rating-tag.good{
    background:#DBEAFE;
    color:#1D4ED8;
}

.rating-tag.average{
    background:#FEF3C7;
    color:#B45309;
}

.date-circle{
    width:78px;
    height:78px;
    margin:auto;
    border-radius:50%;
    background:#F8FAFC;
    border:2px solid #E5E7EB;
    display:flex;
    flex-direction:column;
    justify-content:center;
    margin-bottom:20px;
}

.date-circle .day{
    font-size:28px;
    font-weight:700;
    color:#7C3AED;
    line-height:1;
}

.date-circle .month{
    font-size:12px;
    text-transform:uppercase;
    color:#64748B;
    letter-spacing:1px;
}

.event-date{
    color:#64748B;
    font-size:14px;
    margin:12px 0;
}

.muhurtham-info{
    background:#F8FAFC;
    border-radius:14px;
    padding:15px;
    margin:18px 0;
    text-align:left;
}

.muhurtham-info div{
    margin:8px 0;
    color:#334155;
}

.view-btn{
    display:inline-block;
    width:100%;
    padding:12px;
    background:#7C3AED;
    color:#fff;
    border-radius:12px;
    text-decoration:none;
    font-weight:600;
    transition:.3s;
}

.view-btn:hover{
    background:#6D28D9;
    color:#fff;
}

.today-guidance{
    background:#fff;
    border:1px solid #E5E7EB;
    border-radius:24px;
    padding:40px;
    box-shadow:0 15px 40px rgba(15,23,42,.06);
}

.overall-rating{
    text-align:center;
    margin-bottom:35px;
}

.rating-icon{
    width:70px;
    height:70px;
    margin:auto;
    border-radius:50%;
    background:#FEF3C7;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:30px;
    margin-bottom:18px;
}

.rating-pill{
    display:inline-block;
    padding:8px 20px;
    background:#DCFCE7;
    color:#15803D;
    border-radius:30px;
    font-weight:600;
    margin:15px 0;
}

.guidance-grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:25px;
}

.guide-card{
    border-radius:18px;
    padding:25px;
}

.guide-icon{
    width:50px;
    height:50px;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:24px;
    margin-bottom:15px;
    background:#fff;
}

.guide-card h4{
    margin-bottom:15px;
    font-size:22px;
    font-weight:700;
}

.guide-card ul{
    margin:0;
    padding-left:18px;
}

.guide-card li{
    margin-bottom:10px;
}

.positive{
    background:#F0FDF4;
}

.warning{
    background:#FEF3C7;
}

.info{
    background:#EFF6FF;
}

.purple{
    background:#F3E8FF;
}

.time-pill{
    display:inline-block;
    background:#4F46E5;
    color:#fff;
    padding:10px 18px;
    border-radius:30px;
    font-weight:600;
    margin:10px 0 15px;
}

.nakshatra-name{
    display:inline-block;
    background:#7C3AED;
    color:#fff;
    padding:10px 20px;
    border-radius:30px;
    font-weight:600;
    margin:10px 0 15px;
}

.guidance-note{
    margin-top:30px;
    padding:15px 20px;
    background:#F8FAFC;
    border-left:4px solid #7C3AED;
    border-radius:10px;
    color:#475569;
    font-size:14px;
}

@media(max-width:768px){

.guidance-grid{
    grid-template-columns:1fr;
}

.today-guidance{
    padding:25px;
}

.guide-card{
    padding:20px;
}

}

.overall-rating h3{
    margin:15px 0;
}

.overall-rating p{
    max-width:650px;
    margin:15px auto 0;
    line-height:1.7;
}

/* =========================================
HOROSCOPE PAGE
========================================= */

.score-rating{

    font-size:24px;

    font-weight:700;

    margin-top:10px;

    color:#F59E0B;

}

.related-card{

    min-height:180px;

}

.related-card h5{

    margin-top:15px;

}

.good-card h3,
.avoid-card h3{

    margin-bottom:15px;

}

.good-card p,
.avoid-card p{

    margin-bottom:0;

}

@media(max-width:768px){

    .score-rating{

        font-size:20px;

    }

}

/* =========================================
FESTIVALS PAGE
========================================= */

.festival-highlight{

    background:linear-gradient(
        135deg,
        #FFF7ED,
        #FFFFFF
    );

    border:1px solid #FED7AA;

    border-radius:24px;

    padding:35px;

}

.festival-calendar-card{

    height:100%;

}

.festival-calendar-card ul{

    padding-left:18px;

    margin-bottom:0;

}

.festival-calendar-card li{

    margin-bottom:10px;

}

.related-card p{

    color:#64748B;

    margin-top:8px;

}

.guidance-card h2{

    margin-bottom:15px;

}

.guidance-card p{

    margin-bottom:0;

}

@media(max-width:768px){

    .festival-highlight{

        padding:25px;

    }

}

/* =========================================
ASK AI PAGE
========================================= */

.ask-ai-main-card{

    background:#FFFFFF;

    border:1px solid #E5E7EB;

    border-radius:24px;

    padding:35px;

    text-align:center;

    box-shadow:0 20px 50px rgba(15,23,42,.08);

}

.ai-avatar{

    width:90px;

    height:90px;

    margin:0 auto 20px;

    border-radius:50%;

    display:flex;

    align-items:center;

    justify-content:center;

    font-size:42px;

    background:linear-gradient(
        135deg,
        #EDE9FE,
        #FDF2F8
    );

}

.large-search{

    margin-top:25px;

}

.large-search input{

    height:68px;

    font-size:16px;

}

.ai-mini-features{

    display:flex;

    justify-content:center;

    gap:20px;

    margin-top:20px;

    flex-wrap:wrap;

}

.question-card{

    background:#FFFFFF;

    border:1px solid #E5E7EB;

    border-radius:22px;

    padding:25px;

    text-align:center;

    transition:.3s;

    height:100%;

}

.question-card:hover{

    transform:translateY(-5px);

    border-color:#7C3AED;

}

.question-icon{

    font-size:32px;

    margin-bottom:15px;

}

@media(max-width:768px){

    .ask-ai-main-card{

        padding:30px 20px;

    }

    .ai-avatar{

        width:70px;

        height:70px;

        font-size:34px;

    }

}

/* ==========================================
AI ANSWER CARD
========================================== */

.ai-answer-card{

background:#fff;

border-radius:22px;

padding:35px;

margin-top:35px;

box-shadow:0 15px 40px rgba(0,0,0,.08);

border:1px solid #eee;

}

.answer-header{

display:flex;

align-items:center;

gap:18px;

margin-bottom:25px;

}

.answer-icon{

width:58px;

height:58px;

display:flex;

align-items:center;

justify-content:center;

font-size:28px;

border-radius:50%;

background:linear-gradient(135deg,#F4C542,#D89A00);

color:#fff;

}

.answer-header h2{

margin:0;

font-size:28px;

font-weight:700;

}

.answer-header small{

color:#777;

}

.question-box{

background:#FFF9E8;

border-left:5px solid #D89A00;

padding:18px 22px;

border-radius:14px;

margin-bottom:25px;

}

.question-box p{

margin:8px 0 0;

font-size:18px;

font-weight:600;

}

.answer-box{

font-size:17px;

line-height:2;

color:#444;

margin-bottom:30px;

}

.suggestions h4{

margin-bottom:18px;

}

.suggestion-chips{

display:flex;

flex-wrap:wrap;

gap:12px;

}

.suggestion-chip{

border:none;

background:#F5F5F5;

padding:12px 18px;

border-radius:40px;

cursor:pointer;

transition:.3s;

font-weight:600;

}

.suggestion-chip:hover{

background:#7C3AED;

color:#fff;

transform:translateY(-2px);

}

.loading-card{

background:#fff;

padding:40px;

border-radius:20px;

text-align:center;

box-shadow:0 15px 40px rgba(0,0,0,.08);

margin-top:30px;

}

.spinner{

width:60px;

height:60px;

margin:auto auto 25px;

border:5px solid #eee;

border-top:5px solid #7C3AED;

border-radius:50%;

animation:spin 1s linear infinite;

}

@keyframes spin{

100%{

transform:rotate(360deg);

}

}


/* ===================================================
   PREMIUM AI CONSULTATION CARD
=================================================== */

.consultation-top{
    margin:25px 0;
}

.recommendation-card{
    background:linear-gradient(135deg,#FFF8E1,#FFF3CD);
    border-left:6px solid #F4B400;
    border-radius:18px;
    padding:22px;
    box-shadow:0 10px 25px rgba(0,0,0,.06);
}

.recommendation-badge{
    display:inline-block;
    background:#F4B400;
    color:#fff;
    padding:8px 18px;
    border-radius:30px;
    font-size:15px;
    font-weight:700;
    margin-bottom:12px;
}

.recommendation-card p{
    margin:0;
    color:#555;
    font-size:16px;
}

.panchang-card{
    margin-top:25px;
    background:#fff;
    border-radius:20px;
    padding:30px;
    box-shadow:0 12px 30px rgba(0,0,0,.06);
}

.panchang-card h3{
    margin-bottom:25px;
    font-size:22px;
    font-weight:700;
}

.panchang-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:18px;
}

.panchang-item{
    background:#F8FAFC;
    border:1px solid #E5E7EB;
    border-radius:16px;
    padding:18px;
    text-align:center;
    transition:.3s;
}

.panchang-item:hover{
    transform:translateY(-4px);
    box-shadow:0 10px 20px rgba(0,0,0,.08);
}

.panchang-item span{
    display:block;
    color:#777;
    font-size:14px;
    margin-bottom:8px;
}

.panchang-item strong{
    display:block;
    color:#111827;
    font-size:18px;
    font-weight:700;
}

.guidance-card{
    margin-top:25px;
    background:#fff;
    border-radius:20px;
    padding:30px;
    box-shadow:0 12px 30px rgba(0,0,0,.06);
}

.guidance-card h3{
    margin-bottom:20px;
}

.guidance-card .answer-box{
    font-size:17px;
    line-height:1.9;
    color:#444;
}

.advice-card{
    margin-top:25px;
    background:linear-gradient(135deg,#ECFDF5,#D1FAE5);
    border-left:6px solid #10B981;
    border-radius:18px;
    padding:25px;
}

.advice-card h3{
    margin-bottom:12px;
}

.advice-card p{
    margin:0;
    color:#444;
    line-height:1.8;
}

.suggestions{
    margin-top:30px;
}

@media(max-width:991px){

.panchang-grid{
    grid-template-columns:repeat(2,1fr);
}

}

@media(max-width:576px){

.panchang-grid{
    grid-template-columns:1fr;
}

.recommendation-card,
.panchang-card,
.guidance-card,
.advice-card{
    padding:20px;
}

}


/*====================================
AI Consultation Layout
====================================*/

.answer-section{

margin:25px 0;

}

.section-title{

font-size:18px;

font-weight:700;

margin-bottom:15px;

color:#7C3AED;

}

.tip-box{

margin-top:30px;

background:#FFF8E6;

padding:24px;

border-radius:18px;

border-left:5px solid #E0A800;

}

.tip-title{

font-size:18px;

font-weight:700;

margin-bottom:10px;

color:#B7791F;

}

.advice-box{

margin-top:20px;

background:#F4FFF5;

padding:24px;

border-radius:18px;

border-left:5px solid #28A745;

}


.recommendation-card.green{
    background:#ECFDF5;
    border-left:6px solid #16A34A;
}

.recommendation-card.yellow{
    background:#FEF9C3;
    border-left:6px solid #EAB308;
}

.recommendation-card.red{
    background:#FEF2F2;
    border-left:6px solid #DC2626;
}

/* ==================================================
   HOMEPAGE HERO — MOBILE REFINEMENT
================================================== */

.mobile-hero-orb{
    display:none;
}

.stats-row{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    margin:0 0 24px;
}

.stats-row > div{
    align-items:center;
    background:#FFFFFF;
    border:1px solid #E9E5F6;
    border-radius:999px;
    color:#475569;
    display:inline-flex;
    font-size:.82rem;
    font-weight:600;
    line-height:1.3;
    padding:8px 12px;
}

@media (max-width:768px){
    .site-header .navbar{
        min-height:78px;
        padding:10px 0;
    }

    .hero-ai{
        padding:24px 0 30px;
    }

    .hero-ai .container{
        padding-left:18px;
        padding-right:18px;
    }

    .hero-ai .hero-badge{
        display:flex;
        font-size:.72rem;
        justify-content:center;
        margin:0 auto 14px;
        padding:7px 12px;
        width:fit-content;
    }

    .hero-ai .hero-title{
        font-size:clamp(2rem,9vw,2.45rem);
        letter-spacing:-.7px;
        line-height:1.1;
        margin-bottom:13px;
        text-align:center;
    }

    .hero-ai .hero-subtitle{
        font-size:.94rem;
        line-height:1.65;
        margin:0 auto 14px;
        max-width:34rem;
        text-align:center;
    }

    .mobile-hero-orb{
        display:flex;
        justify-content:center;
        margin:4px 0 16px;
    }

    .mobile-hero-orb img{
        filter:drop-shadow(0 14px 24px rgba(109,40,217,.16));
        max-width:230px;
        width:66vw;
    }

    /* The mobile-only visual replaces the duplicate desktop orb below the questions. */
    .hero-ai .row > .col-lg-6.text-center:last-child{
        display:none;
    }

    .stats-row{
        display:grid;
        gap:8px;
        grid-template-columns:1fr 1fr;
        margin:0 0 18px;
    }

    .stats-row > div{
        border-radius:14px;
        font-size:.7rem;
        justify-content:center;
        min-height:42px;
        padding:7px 8px;
        text-align:center;
    }

    .stats-row > div:last-child{
        grid-column:1 / -1;
    }

    .hero-ai .ai-search{
        border-radius:20px;
        box-shadow:0 0 0 7px rgba(109,40,217,.05), 0 18px 38px rgba(109,40,217,.1);
        padding:7px;
    }

    .hero-ai .ai-search input{
        font-size:.94rem;
        min-width:0;
        padding:14px 10px;
    }

    .hero-ai .voice-btn,
    .hero-ai .ai-search-btn{
        flex:0 0 46px;
        height:46px;
        width:46px;
    }

    .hero-ai .popular-label{
        font-size:1.2rem;
        margin:24px 0 9px;
    }

    .hero-ai .question-pill{
        border-radius:15px;
        font-size:.88rem;
        padding:12px 14px;
        text-align:left;
    }
}

/* ==================================================
   SHARED FOOTER + MOBILE CARD GRID REFINEMENT
================================================== */

.site-footer{
    background:
        radial-gradient(circle at 12% 10%, rgba(109,40,217,.18), transparent 30%),
        radial-gradient(circle at 90% 85%, rgba(249,115,22,.10), transparent 25%),
        #071024;
}

.footer-brand-logo{
    align-items:center;
    background:linear-gradient(135deg,#FFFFFF,#F8FAFC);
    border:1px solid rgba(255,255,255,.35);
    border-radius:14px;
    box-shadow:0 12px 30px rgba(0,0,0,.22);
    display:inline-flex;
    margin-bottom:24px;
    padding:7px 10px;
}

.footer-brand-logo img{
    display:block;
    height:46px;
    width:auto;
}

.trust-box{
    align-items:center;
    border:1px solid #E9E5F6;
    display:flex;
    flex-direction:column;
    font-size:1.65rem;
    height:100%;
    justify-content:center;
    min-height:126px;
    transition:transform .25s ease, box-shadow .25s ease;
    width:100%;
}

.trust-box h6{
    color:#334155;
    font-size:.92rem;
    line-height:1.3;
    margin:10px 0 0;
}

.related-card{
    align-items:center;
    display:flex;
    flex-direction:column;
    font-size:1.8rem;
    justify-content:center;
    width:100%;
}

.related-card h5{
    font-size:1rem;
    line-height:1.3;
}

@media (max-width:767px){
    .site-footer{
        margin-top:52px;
        padding:54px 0 28px;
    }

    .footer-brand-logo{
        margin-bottom:18px;
        padding:6px 9px;
    }

    .footer-brand-logo img{
        height:38px;
    }

    /* Keep four related/trust choices readable as two-column mobile grids. */
    .row.g-4 > .col-lg-3.col-md-6{
        flex:0 0 auto;
        width:50%;
    }

    .authority-card{
        padding:24px 18px;
    }

    .authority-card .section-heading{
        font-size:1.45rem;
        line-height:1.25;
    }

    .trust-box{
        border-radius:16px;
        font-size:1.4rem;
        min-height:104px;
        padding:14px 8px;
        width:100%;
    }

    .trust-box h6{
        font-size:.76rem;
        margin-top:7px;
    }

    .related-card{
        border-radius:18px;
        font-size:1.45rem;
        min-height:126px;
        padding:14px 8px;
        width:100%;
    }

    .related-card h5{
        font-size:.79rem;
        margin:8px 0 0;
    }
}

/* ==================================================
   PANDIT BOOKING PILOT
================================================== */

.pandit-page{
    background:#F8FAFC;
    min-height:70vh;
}

.pandit-hero{
    background:
        radial-gradient(circle at 10% 0%, rgba(255,255,255,.22), transparent 32%),
        linear-gradient(135deg,#4C1D95 0%,#7C3AED 52%,#EC4899 100%);
    color:#fff;
    padding:78px 0 88px;
    text-align:center;
}

.pandit-hero h1{
    color:#fff;
    font-size:clamp(2.25rem,5vw,3.8rem);
    letter-spacing:-1.3px;
    margin:14px auto;
    max-width:840px;
}

.pandit-hero p{
    color:rgba(255,255,255,.9);
    font-size:1.08rem;
    margin:0 auto;
    max-width:700px;
}

.pandit-hero .hero-badge{
    background:rgba(255,255,255,.16);
    color:#fff;
    margin:0;
}

.pandit-hero-actions{
    display:flex;
    flex-wrap:wrap;
    gap:14px;
    justify-content:center;
    margin-top:30px;
}

.pandit-hero .btn-light{
    color:#5B21B6;
}

.pandit-filter-card,
.booking-form-card,
.pandit-detail-card{
    background:#fff;
    border:1px solid #E7E5F1;
    border-radius:24px;
    box-shadow:0 18px 48px rgba(76,29,149,.08);
}

.pandit-filter-card{
    margin-top:0;
    padding:28px;
    position:relative;
}

.pandit-filter-card h2,
.pandit-results-heading h2{
    font-size:1.45rem;
    margin:9px 0 20px;
}

.pandit-filter-card label,
.booking-form-card label{
    color:#334155;
    display:block;
    font-size:.88rem;
    font-weight:700;
    margin-bottom:7px;
}

.pandit-results-heading{
    align-items:end;
    display:flex;
    gap:20px;
    justify-content:space-between;
    margin:46px 0 20px;
}

.pandit-results-heading h2{ margin-bottom:0; }
.pandit-results-heading p{ color:#64748B; margin:0; max-width:440px; }

.pandit-card{
    background:#fff;
    border:1px solid #E7E5F1;
    border-radius:22px;
    box-shadow:0 12px 32px rgba(15,23,42,.05);
    display:flex;
    flex-direction:column;
    padding:24px;
}

.pandit-card-top{ align-items:flex-start; display:flex; gap:14px; }

.pandit-avatar{
    align-items:center;
    background:linear-gradient(135deg,#DDD6FE,#FCE7F3);
    border:3px solid #fff;
    border-radius:50%;
    box-shadow:0 8px 20px rgba(109,40,217,.15);
    color:#5B21B6;
    display:flex;
    flex:0 0 58px;
    font-size:1.05rem;
    font-weight:800;
    height:58px;
    justify-content:center;
    width:58px;
}

.pandit-avatar-large{ flex-basis:96px; font-size:1.55rem; height:96px; width:96px; }

.pandit-card h3{ font-size:1.08rem; margin:8px 0 3px; }
.pandit-card-top p{ color:#64748B; font-size:.82rem; margin:0; }

.verified-badge{
    background:#ECFDF5;
    border:1px solid #A7F3D0;
    border-radius:999px;
    color:#047857;
    display:inline-block;
    font-size:.68rem;
    font-weight:800;
    padding:4px 8px;
}

.pandit-about{ color:#475569; font-size:.9rem; line-height:1.65; margin:18px 0 14px; }

.pandit-tags,.service-list{ display:flex; flex-wrap:wrap; gap:7px; }
.pandit-tags span,.service-list span{
    background:#F5F3FF;
    border-radius:999px;
    color:#6D28D9;
    font-size:.76rem;
    font-weight:700;
    padding:6px 9px;
}

.pandit-service-summary{ color:#475569; font-size:.84rem; margin:16px 0; }

.pandit-card-footer{
    align-items:center;
    border-top:1px solid #F0EDF8;
    display:flex;
    justify-content:space-between;
    margin-top:auto;
    padding-top:16px;
}

.pandit-card-footer span{ color:#64748B; font-size:.82rem; }
.pandit-card-footer strong{ color:#0F172A; font-size:1.03rem; }
.pandit-card-footer .btn{ font-size:.82rem; padding:8px 12px; }

/* Service-first directory and AI match helper */
.pandit-service-catalog{
    margin:34px 0 24px;
}
.pandit-service-catalog h2{
    color:#102143;
    font-size:clamp(1.55rem,3vw,2.15rem);
    margin:10px 0 8px;
}
.pandit-service-catalog p{
    color:#64748b;
    margin:0 auto;
    max-width:680px;
}
.pandit-service-card{
    align-items:center;
    background:#fff;
    border:1px solid #e5e7eb;
    border-radius:18px;
    color:#102143;
    display:flex;
    flex-direction:column;
    height:100%;
    justify-content:center;
    min-height:150px;
    padding:20px 12px;
    text-align:center;
    text-decoration:none;
    transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;
}
.pandit-service-card:hover{
    border-color:#a855f7;
    box-shadow:0 12px 28px rgba(91,33,182,.13);
    color:#5b21b6;
    transform:translateY(-3px);
}
.pandit-service-card span{ font-size:1.8rem; line-height:1; margin-bottom:12px; }
.pandit-service-card strong{ font-size:.95rem; line-height:1.25; }
.pandit-service-card small{ color:#7c3aed; font-size:.76rem; margin-top:8px; }
.pandit-ai-match{
    background:linear-gradient(120deg,#2e1065 0%,#6d28d9 58%,#c026d3 120%);
    border-radius:22px;
    box-shadow:0 15px 32px rgba(91,33,182,.18);
    color:#fff;
    margin:26px 0;
    padding:28px;
}
.pandit-ai-match .section-badge{
    background:rgba(255,255,255,.16);
    color:#fff;
}
.pandit-ai-match h2{ color:#fff; font-size:1.5rem; margin:10px 0 6px; }
.pandit-ai-match p{ color:rgba(255,255,255,.9); margin:0; max-width:760px; }
.pandit-ai-match-form{ display:flex; gap:10px; margin-top:18px; }
.pandit-ai-match-form .form-control{
    background:#fff;
    border:0;
    border-radius:12px;
    min-height:48px;
}
.pandit-ai-match-form .btn{ border-radius:12px; flex:0 0 auto; font-weight:700; padding:0 20px; }
.pandit-ai-match-form .btn:disabled{ cursor:wait; opacity:.7; }
.pandit-ai-privacy{ color:rgba(255,255,255,.74); display:block; font-size:.78rem; margin-top:9px; }
.pandit-ai-result{ font-weight:600; margin-top:14px!important; }

/* Ask AI: date checker and monthly Muhurtham planner */
.ask-ai-mode-switch{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin:24px 0 20px}
.ask-ai-mode-button{background:#f5f3ff;border:1px solid #ddd6fe;border-radius:999px;color:#6d28d9;font-weight:800;padding:10px 17px}
.ask-ai-mode-button.active,.ask-ai-mode-button:hover{background:#6d28d9;border-color:#6d28d9;color:#fff}
.ask-ai-mode-panel[hidden]{display:none!important}
.ask-ai-month-panel{background:linear-gradient(135deg,#faf7ff,#f8fbff);border:1px solid #e9e2f7;border-radius:18px;margin-top:18px;padding:24px;text-align:left}
.ask-ai-month-copy h3{color:#102143;font-size:1.4rem;margin:9px 0 6px}
.ask-ai-month-copy p,.ask-ai-month-note{color:#64748b;font-size:.92rem;line-height:1.55;margin:0}
.ask-ai-month-panel form{margin-top:20px}.ask-ai-month-button{min-height:46px}.ask-ai-month-note{margin-top:14px}
.monthly-ai-result{background:#fff;border:1px solid #e8eaf0;border-radius:18px;margin-top:22px;padding:22px}
.monthly-ai-result-heading h3{color:#102143;font-size:1.3rem;margin:9px 0 7px}.monthly-ai-result-heading p{color:#64748b;font-size:.9rem;margin:0}
.monthly-ai-grid{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(195px,1fr));margin-top:20px}
.monthly-ai-card{background:#fff;border:1px solid #e5e7eb;border-radius:16px;display:flex;flex-direction:column;min-width:0;padding:16px}
.monthly-ai-card.favorable{border:2px solid #86efac;box-shadow:0 10px 22px rgba(22,163,74,.12)}.monthly-ai-card.suitable{border-color:#bfdbfe}.monthly-ai-card.review{border-color:#fde68a}
.monthly-ai-rating{align-self:center;background:#e0f2fe;border-radius:999px;color:#075985;font-size:.72rem;font-weight:800;padding:5px 9px}
.monthly-ai-card.favorable .monthly-ai-rating{background:#dcfce7;color:#166534}.monthly-ai-card.review .monthly-ai-rating{background:#fef3c7;color:#92400e}
.monthly-ai-date{align-items:center;align-self:center;border:1px solid #e2e8f0;border-radius:50%;display:flex;flex-direction:column;height:64px;justify-content:center;margin:12px 0 8px;width:64px}
.monthly-ai-date strong{color:#7c3aed;font-size:1.55rem;line-height:1}.monthly-ai-date span{color:#64748b;font-size:.68rem;font-weight:800}.monthly-ai-card h4{color:#102143;font-size:1rem;margin:5px 0 3px;text-align:center}.monthly-ai-display-date{color:#64748b;font-size:.8rem;margin:0 0 12px;text-align:center}
.monthly-ai-facts{background:#f8fafc;border-radius:11px;color:#475569;display:flex;flex-direction:column;font-size:.78rem;gap:5px;line-height:1.4;padding:10px}.monthly-ai-source{color:#64748b;font-size:.76rem;line-height:1.45;margin:12px 0}.monthly-ai-check{font-size:.82rem;margin-top:auto;padding:9px 10px;width:100%}.monthly-ai-empty{background:#fffbeb;border:1px solid #fde68a;border-radius:12px;color:#92400e;margin-top:18px;padding:14px}

/* Homepage: authentic hero visual and fully interactive discovery panels */
.hero-orb-wrapper{padding:10px}
.hero-orb{
    animation:heroPujaFloat 8s ease-in-out infinite;
    border:1px solid rgba(255,255,255,.86);
    border-radius:26px;
    box-shadow:0 24px 55px rgba(44,28,86,.16);
    filter:none;
    overflow:hidden;
}
@keyframes heroPujaFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}
.mobile-hero-orb img{border:1px solid rgba(255,255,255,.86);border-radius:20px;box-shadow:0 16px 30px rgba(44,28,86,.14)}
.homepage-panel-link{
    color:#334155;
    cursor:pointer;
    display:block;
    line-height:1.45;
    text-decoration:none;
}
.homepage-panel-link::after{color:#7c3aed;content:' →';float:right;font-weight:800;opacity:0;transition:opacity .2s ease,transform .2s ease}
.homepage-panel-link:hover{color:#4c1d95}
.homepage-panel-link:hover::after{opacity:1;transform:translateX(2px)}

/* Voice input belongs beside an Ask AI search field, not in the navigation.
   Every search bar uses this same recognisable, high-contrast microphone. */
.askpandit-voice-button{
    align-items:center!important;
    background:linear-gradient(135deg,#7c3aed,#db2777)!important;
    border:0!important;
    border-radius:50%!important;
    box-shadow:0 7px 16px rgba(124,58,237,.24);
    color:#fff!important;
    display:inline-flex!important;
    flex:0 0 46px!important;
    height:46px!important;
    justify-content:center!important;
    margin:0 9px!important;
    min-width:46px;
    padding:0!important;
    transition:transform .2s ease,box-shadow .2s ease,filter .2s ease;
    width:46px!important;
}
.askpandit-voice-button:hover{filter:brightness(1.07);transform:translateY(-1px);box-shadow:0 10px 20px rgba(124,58,237,.3)}
.voice-search-icon{fill:none;height:22px;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2;width:22px}
.voice-enabled-search{align-items:center}
.voice-btn.is-listening,
.voice-search-button.is-listening{
    animation:voiceListening .9s ease-in-out infinite alternate;
    background:#fce7f3!important;
    border-color:#ec4899!important;
    color:#be185d!important;
}
@keyframes voiceListening{from{box-shadow:0 0 0 0 rgba(236,72,153,.25)}to{box-shadow:0 0 0 8px rgba(236,72,153,0)}}
.voice-search-status{
    background:#102143;
    border:1px solid rgba(255,255,255,.18);
    border-radius:12px;
    bottom:22px;
    box-shadow:0 14px 34px rgba(15,23,42,.22);
    color:#fff;
    font-size:.9rem;
    left:50%;
    max-width:calc(100vw - 32px);
    opacity:0;
    padding:12px 16px;
    pointer-events:none;
    position:fixed;
    text-align:center;
    transform:translate(-50%, 14px);
    transition:opacity .2s ease, transform .2s ease;
    visibility:hidden;
    z-index:1100;
}
.voice-search-status.is-visible{opacity:1;transform:translate(-50%,0);visibility:visible}
.voice-search-status.is-error{background:#991b1b}

@media(max-width:768px){
    .voice-enabled-search{flex-direction:row}
    .voice-enabled-search input{min-width:0}
    .voice-enabled-search .askpandit-voice-button{flex-basis:42px!important;height:42px!important;margin:0 6px!important;min-width:42px;width:42px!important}
    .voice-enabled-search button[type="submit"]{height:48px;padding:0 13px}
}

/* Ask AI mobile: keep the guidance selector and voice search compact, clear and
   touch-friendly even when older browser styles are present. */
.ask-ai-main-card .ask-ai-mode-button{
    -webkit-appearance:none;
    appearance:none;
    background:#f5f3ff!important;
    border:1px solid #ddd6fe!important;
    border-radius:999px!important;
    box-shadow:none!important;
    color:#6d28d9!important;
    cursor:pointer;
    font-family:inherit;
    font-weight:800!important;
    line-height:1.25;
    padding:10px 17px!important;
}
.ask-ai-main-card .ask-ai-mode-button.active,
.ask-ai-main-card .ask-ai-mode-button:hover,
.ask-ai-main-card .ask-ai-mode-button:focus-visible{
    background:#6d28d9!important;
    border-color:#6d28d9!important;
    color:#fff!important;
    outline:none;
}
.voice-enabled-search .askpandit-voice-button{
    line-height:1!important;
    overflow:hidden!important;
}
.askpandit-voice-button .voice-search-icon{
    display:block!important;
    fill:none!important;
    height:22px!important;
    max-height:22px!important;
    max-width:22px!important;
    stroke:currentColor!important;
    width:22px!important;
}
.askpandit-voice-button .voice-search-icon path{
    fill:none!important;
    stroke:currentColor!important;
}
.ai-search-actions .askpandit-voice-button{
    align-items:center!important;
    background:linear-gradient(135deg,#7c3aed,#db2777)!important;
    display:inline-flex!important;
    justify-content:center!important;
    overflow:hidden!important;
}

@media(max-width:768px){
    .ask-ai-main-card .ask-ai-mode-switch{
        align-items:center;
        justify-content:center;
    }
    .ask-ai-main-card .ask-ai-mode-button{
        flex:0 1 auto!important;
        font-size:.85rem!important;
        min-height:42px;
        padding:9px 12px!important;
    }
    .ask-ai-main-card .voice-enabled-search{
        align-items:center!important;
        display:flex!important;
        flex-direction:row!important;
        flex-wrap:nowrap!important;
        min-width:0;
        overflow:hidden;
    }
    .ask-ai-main-card .voice-enabled-search input{
        flex:1 1 auto!important;
        height:56px!important;
        min-width:0!important;
        padding:14px 15px!important;
    }
    .ask-ai-main-card .voice-enabled-search .askpandit-voice-button{
        flex:0 0 42px!important;
        height:42px!important;
        margin:0 6px!important;
        min-width:42px!important;
        width:42px!important;
    }
    .ask-ai-main-card .voice-enabled-search button[type="submit"]{
        flex:0 0 auto!important;
        font-size:.84rem!important;
        height:48px!important;
        min-width:0!important;
        padding:0 12px!important;
        width:auto!important;
    }
}

/* Homepage discovery panels: keep every tap target on its own row on phones.
   Without this explicit stack, inherited card styles can compress the links and
   make their labels visually overlap in narrow mobile browsers. */
@media (max-width: 767px){
    .ai-questions-card,
    .muhurtham-card,
    .festival-card{
        align-items:stretch;
        display:flex;
        flex-direction:column;
        padding:20px 16px;
        text-align:left;
    }

    .ai-questions-card .card-header-row,
    .muhurtham-card .card-header-row,
    .festival-card .card-header-row{
        gap:12px;
        margin-bottom:15px;
    }

    .ai-questions-card .card-header-row h5,
    .muhurtham-card .card-header-row h5,
    .festival-card .card-header-row h5{
        font-size:1.25rem;
        line-height:1.25;
        margin:0;
    }

    .ai-questions-card .question-item,
    .muhurtham-card .festival-item,
    .festival-card .festival-item{
        align-self:stretch;
        box-sizing:border-box;
        display:block;
        flex:0 0 auto;
        font-size:1rem;
        line-height:1.4;
        margin:0 0 10px;
        min-height:0;
        padding:14px 15px;
        text-align:left;
        white-space:normal;
        width:100%;
    }

    .homepage-panel-link::after{
        display:none;
    }
}

.pandit-empty{ background:#fff; border:1px dashed #C4B5FD; border-radius:22px; padding:48px 28px; text-align:center; }
.pandit-empty h2{ font-size:1.35rem; }
.pandit-empty p{ color:#64748B; }

.back-link{ color:#6D28D9; display:inline-block; font-weight:700; margin-bottom:18px; }

.pandit-profile-hero{
    align-items:center;
    background:linear-gradient(135deg,#fff,#FAF7FF);
    border:1px solid #E7E5F1;
    border-radius:26px;
    box-shadow:0 18px 48px rgba(76,29,149,.08);
    display:flex;
    gap:24px;
    padding:32px;
}

.pandit-profile-intro{ flex:1; }
.pandit-profile-intro h1{ font-size:2rem; margin:10px 0; }
.pandit-profile-intro > p:last-child{ color:#475569; margin-bottom:0; }
.pandit-profile-meta{ color:#64748B; font-size:.92rem; }

.pandit-booking-summary{
    background:#F5F3FF;
    border-radius:18px;
    display:flex;
    flex:0 0 230px;
    flex-direction:column;
    gap:7px;
    padding:20px;
}
.pandit-booking-summary > span{ color:#64748B; font-size:.82rem; }
.pandit-booking-summary strong{ color:#4C1D95; font-size:1.9rem; }
.pandit-booking-summary small{ color:#64748B; line-height:1.45; margin-bottom:9px; }

.pandit-detail-card{ height:100%; padding:28px; }
.pandit-detail-card h2{ font-size:1.25rem; }
.pandit-checklist{ color:#475569; margin:0; padding-left:20px; }
.pandit-checklist li{ margin-bottom:10px; }

.pandit-ai-handoff{
    align-items:center;
    background:linear-gradient(135deg,#312E81,#7C3AED);
    border-radius:22px;
    color:#fff;
    display:flex;
    gap:24px;
    justify-content:space-between;
    margin-top:24px;
    padding:27px 30px;
}
.pandit-ai-handoff h2{ color:#fff; font-size:1.35rem; margin:8px 0; }
.pandit-ai-handoff p{ color:rgba(255,255,255,.85); margin:0; }

.pandit-booking-hero{ padding-bottom:92px; }
.booking-form-card{ margin-top:-42px; padding:34px; position:relative; }
.booking-form-card h2{ font-size:1.55rem; }
.selected-pandit-note,.booking-message{ border-radius:14px; font-weight:600; margin-bottom:20px; padding:13px 15px; }
.selected-pandit-note{ background:#F5F3FF; color:#5B21B6; }
.booking-message.success{ background:#ECFDF5; color:#047857; }
.booking-message.error{ background:#FEF2F2; color:#B91C1C; }
.booking-assurance{ color:#64748B; font-size:.84rem; }

@media(max-width:767px){
    .pandit-hero{ padding:50px 0 72px; }
    .pandit-hero h1{ font-size:2.15rem; }
    .pandit-hero p{ font-size:.94rem; }
    .pandit-hero-actions .btn{ width:100%; }
    .pandit-filter-card{ margin-top:0; padding:20px; }
    .pandit-service-catalog{ margin:26px 0 20px; }
    .pandit-service-card{ min-height:136px; padding:16px 8px; }
    .pandit-service-card strong{ font-size:.86rem; }
    .pandit-ai-match{ border-radius:18px; margin:22px 0; padding:22px 18px; }
    .pandit-ai-match h2{ font-size:1.28rem; }
    .pandit-ai-match-form{ flex-direction:column; }
    .pandit-ai-match-form .btn{ min-height:46px; width:100%; }
    .ask-ai-mode-switch{gap:7px;margin:20px 0 16px}.ask-ai-mode-button{flex:1 1 145px;font-size:.83rem;padding:9px 10px}.ask-ai-month-panel{padding:19px 15px}.monthly-ai-result{padding:17px 13px}.monthly-ai-grid{grid-template-columns:1fr}
    .hero-orb{border-radius:20px;animation:none}.mobile-hero-orb img{border-radius:18px}
    .pandit-results-heading{ align-items:flex-start; flex-direction:column; gap:8px; margin:35px 0 18px; }
    .pandit-profile-hero{ align-items:flex-start; flex-direction:column; padding:24px; }
    .pandit-avatar-large{ flex-basis:78px; height:78px; width:78px; }
    .pandit-profile-intro h1{ font-size:1.65rem; }
    .pandit-booking-summary{ flex-basis:auto; width:100%; }
    .pandit-ai-handoff{ align-items:flex-start; flex-direction:column; padding:24px; }
    .pandit-ai-handoff .btn{ width:100%; }
    .booking-form-card{ margin-top:-34px; padding:23px 18px; }
}

/* Personal horoscope */
.horoscope-hero{padding-bottom:42px}
.personal-horoscope-card,.report-panel,.sign-guide-card{background:#fff;border:1px solid #e9e7f2;border-radius:24px;box-shadow:0 18px 45px rgba(45,29,94,.07)}
.personal-horoscope-card{margin-top:-10px;padding:30px}
.personal-form-heading{align-items:flex-start;display:flex;gap:15px;margin-bottom:23px}.personal-form-heading h2{font-size:1.45rem;margin:0 0 5px}.personal-form-heading p{color:#64748b;font-size:.92rem;margin:0}.personal-step{align-items:center;background:linear-gradient(135deg,#7c3aed,#ec4899);border-radius:50%;color:#fff;display:flex;font-weight:800;height:32px;justify-content:center;width:32px}
.period-chooser{display:flex;flex-wrap:wrap;gap:9px;margin:0 0 22px}.period-chooser input{position:absolute;opacity:0}.period-chooser span{background:#f8f7fc;border:1px solid #e3ddff;border-radius:999px;color:#475569;cursor:pointer;display:block;font-size:.9rem;font-weight:700;padding:9px 15px}.period-chooser input:checked + span{background:#ede9fe;border-color:#7c3aed;color:#5b21b6;box-shadow:0 3px 9px rgba(124,58,237,.14)}
.personal-horoscope-form label{color:#334155;display:block;font-size:.82rem;font-weight:700;margin:0 0 6px}.personal-horoscope-form input{border:1px solid #d9dce7;border-radius:10px;color:#17213a;font:inherit;min-height:48px;padding:10px 12px;width:100%}.personal-horoscope-form small{color:#64748b;display:block;font-size:.72rem;line-height:1.35;margin-top:5px}.personal-form-footer{align-items:center;display:flex;gap:22px;justify-content:space-between;margin-top:20px}.personal-form-footer p{color:#64748b;font-size:.8rem;line-height:1.45;margin:0;max-width:650px}.personal-form-footer .btn-primary{border:0;white-space:nowrap}.horoscope-alert{background:#fff1f2;border-left:4px solid #ef4444;border-radius:10px;color:#9f1239;margin-bottom:18px;padding:12px 15px}
.birthplace-shortcuts{align-items:center;display:flex;flex-wrap:wrap;gap:7px;margin-top:15px}.birthplace-shortcuts>span{color:#475569;font-size:.8rem;font-weight:700}.birthplace-shortcuts button{background:#f5f3ff;border:1px solid #ddd6fe;border-radius:999px;color:#5b21b6;font-size:.76rem;font-weight:700;padding:6px 10px}.birthplace-shortcuts small{color:#64748b;flex-basis:100%;font-size:.74rem;margin:2px 0 0}
.personal-report-header{text-align:center}.personal-report-header h2{font-size:1.75rem;margin:12px 0 6px}.personal-report-header p{color:#64748b;margin:0}.report-note{background:#fffbeb;border:1px solid #fde68a;border-radius:12px;color:#78350f;font-size:.86rem;line-height:1.55;margin:22px auto 0;max-width:1000px;padding:13px 16px;text-align:center}.report-panel{height:100%;padding:26px}.report-panel h3{font-size:1.25rem;margin:0 0 5px}.report-panel-soft{background:#faf8ff}.report-source{color:#64748b;font-size:.8rem;line-height:1.4}.prediction-list{margin:18px 0 0;padding-left:22px}.prediction-list li{color:#334155;line-height:1.58;margin:0 0 13px}.dasa-list{list-style:none;margin:18px 0 0;padding:0}.dasa-list li{background:#fff;border:1px solid #e5defb;border-radius:10px;color:#4c1d95;font-size:.9rem;font-weight:600;margin:0 0 9px;padding:10px 11px}.btn-outline{border:1px solid #7c3aed;border-radius:9px;color:#6d28d9;display:inline-block;font-size:.85rem;font-weight:700;padding:9px 12px;text-decoration:none}.btn-outline:hover{background:#f5f3ff;color:#5b21b6}
.report-overview{text-align:center}.report-overview>p{color:#475569;line-height:1.6;margin:10px auto 0;max-width:760px}.theme-grid{display:grid;gap:14px;grid-template-columns:repeat(3,1fr);margin-top:22px;text-align:left}.theme-card{background:linear-gradient(145deg,#faf7ff,#fff);border:1px solid #e9defe;border-radius:15px;padding:18px}.theme-card h4{color:#5b21b6;font-size:1rem;margin:0 0 7px}.theme-card p{color:#475569;font-size:.88rem;line-height:1.55;margin:0}.friendly-guidance{color:#475569;margin:17px 0 0;padding-left:20px}.friendly-guidance li{line-height:1.55;margin-bottom:10px}.dasa-list small{color:#64748b;display:block;font-size:.76rem;font-weight:400;line-height:1.4;margin-top:4px}
.chart-fact-grid{display:grid;gap:14px;grid-template-columns:repeat(3,1fr);margin-top:22px;text-align:left}.chart-fact{background:linear-gradient(145deg,#f8fbff,#fff);border:1px solid #dbeafe;border-radius:15px;padding:18px}.chart-fact span{color:#64748b;display:block;font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em}.chart-fact strong{color:#1e3a8a;display:block;font-size:1.14rem;line-height:1.25;margin:7px 0}.chart-fact small{color:#475569;display:block;font-size:.79rem;line-height:1.45}.chart-unavailable{background:#fff7ed;border:1px solid #fed7aa;border-radius:12px;color:#9a3412!important;margin-top:20px!important;padding:13px 16px}.personal-sign-explorer{margin:38px 0 20px;text-align:center}.personal-sign-explorer h3{font-size:1.4rem;margin:0 0 5px}.personal-sign-explorer>p{color:#64748b;font-size:.9rem;margin:0 auto 20px;max-width:700px}.personal-sign-explorer .zodiac-card{background:#fff;min-height:146px}.personal-sign-explorer .zodiac-card:hover{border-color:#c4b5fd;box-shadow:0 10px 22px rgba(91,33,182,.1);transform:translateY(-2px)}
.period-guidance-panel{background:linear-gradient(135deg,#fff7ed 0%,#fff 47%,#f5f3ff 100%);border:1px solid #fed7aa;border-radius:24px;margin-top:24px;padding:30px}.period-guidance-heading{text-align:center}.period-guidance-heading h3{font-size:1.45rem;margin:10px 0 7px}.period-guidance-heading>p{color:#475569;line-height:1.65;margin:0 auto;max-width:820px}.period-guidance-grid{display:grid;gap:14px;grid-template-columns:repeat(3,1fr);margin-top:22px}.period-guidance-grid article{background:rgba(255,255,255,.9);border:1px solid #f4d9a7;border-radius:15px;padding:18px}.period-guidance-grid h4{color:#9a3412;font-size:1rem;margin:0 0 7px}.period-guidance-grid p{color:#475569;font-size:.9rem;line-height:1.55;margin:0}.period-guidance-panel>small{color:#78716c;display:block;font-size:.76rem;line-height:1.45;margin-top:16px;text-align:center}
.sign-horoscope-panel{background:linear-gradient(135deg,#fff 0%,#faf5ff 100%);border:1px solid #e9d5ff;border-radius:24px;box-shadow:0 18px 45px rgba(45,29,94,.07);padding:30px}.sign-horoscope-heading{text-align:center}.sign-horoscope-heading h2{font-size:1.65rem;margin:10px 0 7px}.sign-horoscope-heading p{color:#64748b;line-height:1.6;margin:0 auto;max-width:790px}.sign-period-form{align-items:end;background:#fff;border:1px solid #ede9fe;border-radius:17px;display:flex;gap:18px;justify-content:space-between;margin-top:24px;padding:17px}.sign-period-form .period-chooser{margin:0}.sign-period-date{align-items:end;display:flex;gap:10px}.sign-period-date label{color:#334155;font-size:.8rem;font-weight:700;margin:0 0 2px}.sign-period-date input{border:1px solid #d8d4e8;border-radius:9px;font:inherit;height:41px;padding:8px 10px}.sign-period-date .btn-primary{border:0;white-space:nowrap}.sign-horoscope-reading{background:linear-gradient(135deg,#fff7ed 0%,#fff 48%,#f5f3ff 100%);border:1px solid #fed7aa;border-radius:18px;margin-top:18px;padding:25px}.sign-horoscope-reading>p{color:#475569;font-size:1rem;line-height:1.7;margin:0;text-align:center}.sign-guidance-grid{display:grid;gap:13px;grid-template-columns:repeat(4,1fr);margin-top:21px}.sign-guidance-grid article{background:rgba(255,255,255,.9);border:1px solid #f4d9a7;border-radius:14px;padding:16px}.sign-guidance-grid h3{color:#9a3412;font-size:.96rem;margin:0 0 7px}.sign-guidance-grid p{color:#475569;font-size:.86rem;line-height:1.5;margin:0}.sign-horoscope-reading>small{color:#78716c;display:block;font-size:.76rem;line-height:1.45;margin-top:16px;text-align:center}
.sign-period-tabs{display:flex;flex-wrap:wrap;gap:9px;justify-content:center;margin-top:23px}.sign-period-tabs a{background:#fff;border:1px solid #ddd6fe;border-radius:999px;color:#5b21b6;font-size:.9rem;font-weight:700;padding:10px 18px;text-decoration:none}.sign-period-tabs a:hover,.sign-period-tabs a.active{background:linear-gradient(135deg,#7c3aed,#db2777);border-color:transparent;color:#fff;box-shadow:0 7px 16px rgba(124,58,237,.2)}.sign-period-hint{color:#64748b;font-size:.8rem;margin:13px 0 -3px;text-align:center}
.sign-guide-card{align-items:center;display:flex;gap:26px;padding:30px}.sign-guide-card h2{font-size:1.55rem;margin:10px 0}.sign-guide-card p{color:#475569;line-height:1.6}.sign-guide-symbol{align-items:center;background:linear-gradient(135deg,#ede9fe,#fce7f3);border-radius:24px;color:#6d28d9;display:flex;font-size:4rem;height:118px;justify-content:center;min-width:118px}.sign-facts{display:flex;flex-wrap:wrap;gap:9px}.sign-facts span{background:#f8fafc;border-radius:999px;color:#475569;font-size:.82rem;padding:8px 11px}.personal-zodiac-grid{grid-template-columns:repeat(6,1fr)}.explore-grid{display:grid;gap:20px;grid-template-columns:repeat(4,1fr)}.explore-grid .related-card{width:auto}
.horoscope-faq-spacing{padding-top:34px}
@media(max-width:991px){.personal-zodiac-grid{grid-template-columns:repeat(4,1fr)}.sign-guide-card{align-items:flex-start}.explore-grid{grid-template-columns:repeat(2,1fr)}.theme-grid,.chart-fact-grid,.period-guidance-grid,.sign-guidance-grid{grid-template-columns:repeat(2,1fr)}.sign-period-form{align-items:stretch;flex-direction:column}.sign-period-date{justify-content:flex-end}}
@media(max-width:767px){.personal-horoscope-card{border-radius:18px;padding:21px 16px}.personal-form-heading h2{font-size:1.25rem}.personal-form-footer{align-items:stretch;flex-direction:column}.personal-form-footer .btn-primary{width:100%}.period-chooser{gap:7px}.period-chooser label{flex:1 1 42%}.period-chooser span{text-align:center}.personal-report-header h2{font-size:1.36rem}.report-panel,.period-guidance-panel,.sign-horoscope-panel{padding:20px 17px}.period-guidance-heading h3,.sign-horoscope-heading h2{font-size:1.25rem}.sign-period-date{align-items:stretch;flex-direction:column}.sign-period-date input,.sign-period-date .btn-primary{width:100%}.sign-horoscope-reading{padding:20px 16px}.sign-guidance-grid{grid-template-columns:1fr}.sign-guide-card{flex-direction:column;gap:15px;padding:22px 18px}.sign-guide-symbol{border-radius:18px;font-size:2.7rem;height:78px;min-width:78px}.sign-guide-card h2{font-size:1.28rem}.personal-zodiac-grid{grid-template-columns:repeat(2,1fr)}.personal-sign-explorer .zodiac-card{min-height:126px}.explore-grid{gap:15px}.explore-grid .related-card{min-height:126px}}

/* Homepage quick actions need full-width cards on phones. The global two-column
   grid is useful elsewhere, but it makes titles such as "Marriage Muhurtham"
   split or clip. The selector intentionally outranks that global rule. */
@media (max-width:767px){
    .home-quick-actions.row.g-4 > .col-lg-3.col-md-6{
        flex:0 0 100%;
        width:100%;
    }

    .home-quick-actions .dashboard-card{
        min-height:0;
        padding:20px;
    }

    .home-quick-actions .card-content h4{
        font-size:1.08rem;
        line-height:1.25;
        overflow-wrap:normal;
        white-space:normal;
        word-break:normal;
        hyphens:none;
    }

    .home-quick-actions .card-content p{
        font-size:.92rem;
        line-height:1.55;
    }

    .home-quick-actions .card-arrow{
        margin-top:14px;
    }
}

/* Homepage tool chooser: match the compact, icon-led card language used above. */
.homepage-tool-section{
    background:linear-gradient(135deg,#ffffff 0%,#faf7ff 100%);
    border-color:#e9e2f7;
    box-shadow:0 14px 36px rgba(76,29,149,.05);
}

.homepage-tool-section > .section-heading{
    margin-bottom:8px;
}

.homepage-tool-section > p:first-of-type{
    color:#64748b;
    line-height:1.6;
    margin-bottom:0;
    max-width:760px;
}

.homepage-tool-card{
    align-items:flex-start;
    background:#ffffff;
    border:1px solid #e9e5f0;
    border-radius:20px;
    color:#0f172a;
    display:flex;
    flex-direction:column;
    font-size:inherit;
    justify-content:flex-start;
    min-height:220px;
    padding:22px;
    text-align:left;
    width:100%;
}

.homepage-tool-card:hover{
    border-color:#c4b5fd;
    box-shadow:0 14px 28px rgba(91,33,182,.10);
    transform:translateY(-3px);
}

.homepage-tool-card strong{
    font-size:1.12rem;
    line-height:1.25;
    margin:14px 0 7px;
}

.homepage-tool-card p{
    color:#64748b;
    font-size:.9rem;
    line-height:1.55;
    margin:0 !important;
}

.homepage-tool-icon{
    align-items:center;
    border-radius:15px;
    display:flex;
    font-size:1.45rem;
    height:48px;
    justify-content:center;
    width:48px;
}

.tool-icon-panchangam{background:#ede9fe;}
.tool-icon-muhurtham{background:#fff0e3;}
.tool-icon-horoscope{background:#fffbeb;}
.tool-icon-festivals{background:#ecfdf5;}

.homepage-tool-link{
    color:#6d28d9;
    font-size:.84rem;
    font-weight:700;
    margin-top:auto;
    padding-top:16px;
}

@media (max-width:767px){
    .homepage-tool-section{padding:23px 18px;}
    .homepage-tool-card{min-height:198px;padding:18px;}
    .homepage-tool-card strong{font-size:1rem;}
    .homepage-tool-card p{font-size:.86rem;}
}

/* Shared explanation cards on Panchangam, Muhurtham, Horoscope, Festivals and Ask AI. */
.trust-box{
    align-items:flex-start;
    background:#ffffff;
    border-color:#e9e5f0;
    border-radius:18px;
    font-size:inherit;
    height:auto;
    justify-content:flex-start;
    min-height:0;
    padding:22px;
    text-align:left;
}

.trust-box h3.h5,
.trust-box h6{
    color:#0f172a;
    font-size:1rem;
    font-weight:700;
    line-height:1.35;
    margin:0 0 9px;
}

.trust-box p{
    color:#64748b;
    font-size:.92rem;
    line-height:1.55;
}

.trust-box:hover{
    border-color:#c4b5fd;
    box-shadow:0 12px 24px rgba(91,33,182,.08);
    transform:translateY(-2px);
}

@media (max-width:767px){
    .trust-box{padding:18px;}
    .trust-box h3.h5,
    .trust-box h6{font-size:.96rem;}
    .trust-box p{font-size:.88rem;}
}

/* Shows the calculated VedAstro transit facts behind public Rashi guidance. */
.sign-transit-source{
    background:rgba(255,255,255,.72);
    border:1px solid #f4d9a7;
    border-radius:12px;
    color:#64748b !important;
    font-size:.78rem !important;
    line-height:1.5 !important;
    margin:18px 0 0 !important;
    padding:10px 13px;
}
