/*
Theme Name: Lalita Astrology
Description: A responsive Vedic astrology consultation landing page.
Version: 1.0.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: lalita-astrology
*/

/* ===== TOKENS ===== */
:root{--navy:#0B1026;--navy2:#111831;--purple:#39216B;--gold:#D8B15A;--cream:#FAF7F0;--text:#FAF7F0;--muted:#B7BED0;--ink:#1B1F33;
--serif:'Playfair Display',Georgia,serif;--sans:'DM Sans',system-ui,sans-serif}
/* ===== BASE ===== */
html{scroll-behavior:smooth;scroll-padding-top:80px}
body{background:var(--navy);color:var(--text);font-family:var(--sans);line-height:1.65;overflow-x:hidden}
h1,h2,h3,h4{font-family:var(--serif);line-height:1.2}
h1{font-size:clamp(2.2rem,5vw,3.6rem);font-weight:700}
h2{font-size:clamp(1.8rem,3.5vw,2.6rem)}
a{color:var(--gold)}
:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
.skip{position:absolute;z-index:2000;left:8px;top:8px;background:var(--gold);color:var(--navy);padding:.5rem 1rem}
.label{color:var(--gold);letter-spacing:.2em;font-size:.8rem;font-weight:700;margin-bottom:.8rem}
.muted{color:var(--muted)}
/* ===== BUTTONS ===== */
.btn{border-radius:50px;font-weight:700;padding:.65rem 1.6rem;transition:transform .25s,box-shadow .25s,background .25s}
.btn-gold{background:var(--gold);color:var(--navy);border:2px solid var(--gold)}
.btn-gold:hover{background:#e7c677;color:var(--navy);transform:translateY(-2px);box-shadow:0 8px 24px rgba(216,177,90,.3)}
.btn-outline-gold{border:2px solid var(--gold);color:var(--gold)}
.btn-outline-gold:hover{background:var(--gold);color:var(--navy);transform:translateY(-2px)}
/* ===== NAV ===== */
.site-nav{padding:1rem 0;transition:background .3s,padding .3s,box-shadow .3s}
.site-nav.scrolled{background:rgba(11,16,38,.96);padding:.5rem 0;box-shadow:0 2px 20px rgba(0,0,0,.4)}
.navbar-brand{font-family:var(--serif);color:var(--gold)!important;font-size:1.4rem}
.nav-link{color:var(--text)!important;position:relative;transition:color .25s}
.nav-link:hover{color:var(--gold)!important}
.navbar-toggler{color:var(--gold);font-size:1.8rem;border:1px solid var(--gold)}
@media(max-width:991px){.navbar-collapse{background:var(--navy);padding:1rem;margin-top:.5rem;border:1px solid rgba(216,177,90,.4);border-radius:12px}.navbar-collapse .btn{width:100%}}
/* ===== HERO ===== */
.hero{position:relative;min-height:88vh;display:flex;align-items:center;padding:7rem 0 3rem;background:radial-gradient(circle at 80% 40%,rgba(57,33,107,.7),transparent 55%),var(--navy);overflow:hidden}
.stars{position:absolute;inset:0;background-image:radial-gradient(1px 1px at 20px 30px,#fff,transparent),radial-gradient(1.5px 1.5px at 120px 90px,var(--gold),transparent),radial-gradient(1px 1px at 200px 160px,#fff,transparent);background-size:240px 200px;opacity:.5;animation:drift 90s linear infinite}
@keyframes drift{to{background-position:240px 200px}}
.lead-text{color:var(--muted);font-size:1.1rem;max-width:34rem}
.rating{display:flex;align-items:center;gap:.8rem;color:var(--muted)}
.stars-row{color:var(--gold);letter-spacing:2px}
.portrait-wrap{position:relative;max-width:440px;margin:0 auto}
.wheel{position:absolute;width:125%;left:-12%;top:-8%;opacity:.45;animation:spin 180s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
.portrait{position:relative;margin:0;border:2px solid var(--gold);border-radius:200px 200px 16px 16px;padding:10px;overflow:hidden}
.portrait img,.about-frame img{width:100%;height:auto;border-radius:190px 190px 8px 8px;display:block}
.float-card{position:absolute;background:rgba(17,24,49,.92);border:1px solid var(--gold);border-radius:12px;padding:.5rem 1rem;font-size:.9rem;color:var(--cream)}
.fc-1{left:-4%;bottom:18%}.fc-2{right:-4%;top:14%}
.float-card i{color:var(--gold)}
/* ===== TRUST ===== */
.trust{background:var(--navy2);border-top:1px solid rgba(216,177,90,.3);border-bottom:1px solid rgba(216,177,90,.3);padding:1.2rem 0}
.trust .col-6{padding:.6rem;display:flex;flex-direction:column;align-items:center;gap:.2rem}
.trust i{color:var(--gold);font-size:1.5rem}
@media(min-width:992px){.trust .col-lg-3+.col-lg-3{border-left:1px solid rgba(216,177,90,.3)}}
/* ===== SECTIONS ===== */
.section{padding:5.5rem 0}
.section-head{text-align:center;margin-bottom:3rem}
.section.light{background:var(--cream);color:var(--ink)}
.section.light .label{color:#8a6a1f}
.section.light h2,.section.light h3{color:var(--navy)}
.section.light a{color:#8a6a1f}
.section.light .muted{color:#555b70}
.section.dark{background:var(--navy)}.section.navy2{background:var(--navy2)}
/* cards */
.card-svc{background:#fff;border:1px solid rgba(216,177,90,.5);border-radius:16px;padding:2rem;height:100%;box-shadow:0 8px 30px rgba(11,16,38,.06);transition:transform .3s,box-shadow .3s}
.card-svc:hover{transform:translateY(-6px);box-shadow:0 16px 40px rgba(11,16,38,.14)}
.card-svc>i{font-size:2rem;color:#8a6a1f;display:inline-block;margin-bottom:1rem}
.card-svc h3{font-size:1.3rem}
.card-svc a{font-weight:700;text-decoration:none}
/* about */
.about-frame{position:relative;border:2px solid var(--gold);padding:12px;border-radius:12px;max-width:420px;margin:auto}
.about-frame img{border-radius:6px}
.badge-float{position:absolute;right:-14px;bottom:24px;background:var(--gold);color:var(--navy);font-weight:700;padding:.7rem 1rem;border-radius:12px;font-size:.85rem;line-height:1.3}
.tick-list{list-style:none;padding:0;margin:1.2rem 0 1.8rem}
.tick-list li:before{content:"\2726";color:var(--gold);margin-right:.7rem}
/* steps */
.step{position:relative;background:var(--navy);border:1px solid rgba(216,177,90,.4);border-radius:16px;padding:2.2rem;height:100%}
.num{font-family:var(--serif);font-size:3.2rem;color:var(--gold);display:block;line-height:1}
@media(min-width:768px){.steps .col-md-4:not(:last-child) .step:after{content:"";position:absolute;right:-1.5rem;top:50%;width:1.5rem;border-top:1px dashed var(--gold)}}
/* form */
.form-card{max-width:760px;margin:auto;background:#fff;border:1px solid rgba(216,177,90,.6);border-radius:20px;padding:2.5rem;box-shadow:0 20px 50px rgba(11,16,38,.1)}
.form-card .form-label{font-weight:700;color:var(--navy)}
.form-control,.form-select{padding:.7rem 1rem;border-radius:10px}
.form-control:focus,.form-select:focus{border-color:var(--gold);box-shadow:0 0 0 .25rem rgba(216,177,90,.35)}
/* benefits & testimonials */
.benefit,.testi{height:100%;background:var(--navy2);border:1px solid rgba(216,177,90,.35);border-radius:16px;padding:1.8rem;margin:0}
.section.navy2 .testi{background:var(--navy)}
.benefit i{font-size:1.8rem;color:var(--gold)}
.benefit p,.testi footer{color:var(--muted)}
/* blog */
.post{background:#fff;border-radius:16px;overflow:hidden;height:100%;box-shadow:0 8px 30px rgba(11,16,38,.08);transition:transform .3s}
.post:hover{transform:translateY(-6px)}
.thumb{overflow:hidden;aspect-ratio:4/3}
.thumb img{width:100%;height:100%;object-fit:cover;transition:transform .6s}
.post:hover .thumb img{transform:scale(1.06)}
.cat{color:#8a6a1f;font-size:.8rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.post a{font-weight:700;text-decoration:none}
/* CTA */
.cta{padding:6rem 0;background:radial-gradient(circle at 50% 0,rgba(57,33,107,.8),transparent 65%),var(--navy);border-top:1px solid rgba(216,177,90,.3)}
.cta p{color:var(--muted);margin:1rem 0 2rem}
/* footer */
.site-footer{background:var(--navy2);padding:4rem 0 1.5rem;color:var(--muted)}
.site-footer h4{color:var(--gold);font-size:1.1rem}
.site-footer ul{list-style:none;padding:0}
.site-footer a{color:var(--muted);text-decoration:none}.site-footer a:hover{color:var(--gold)}
.social a{font-size:1.3rem;margin-right:1rem}
.site-footer hr{border-color:rgba(216,177,90,.3)}
/* reveal */
.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s,transform .7s}
.reveal.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}.reveal{opacity:1;transform:none}}
