* {
     margin: 0;
     padding: 0;
     box-sizing: border-box;
}
 :root {
     --bg: #050b0f;
     --bg-2: #091016;
     --card: #0b1217;
     --gold: #d5a437;
     --gold-2: #f0bd4d;
     --text: #ffffff;
     --muted: #b7b7b7;
     --border: rgba(213, 164, 55, 0.35);
}
 :root {
     --bg: #03090d;
     --bg2: #071015;
     --card: #081116;
     --gold: #d99c20;
     --gold-light: #ffc94f;
     --white: #fff;
     --text: #d6d6d6;
     --muted: #969ca0;
     --border: rgba(217, 156, 32, 0.42);
}
 html {
     scroll-behavior: smooth;
}
 body {
     font-family: "Inter", sans-serif;
     background: var(--bg);
     color: #000;
     line-height: 1.6;
}
 h1, h2, h3 {
     font-family: "Playfair Display", serif;
}
 a {
     text-decoration: none;
     color: inherit;
}
 img {
     width: 100%;
     display: block;
}
 ul {
     list-style: none;
}
 .container {
     width: min(1180px, 92%);
     margin: auto;
}
 .section-title {
     text-align: center;
     margin-bottom: 38px;
}
 .section-title span {
     display: block;
     color: var(--gold);
     font-size: 13px;
     text-transform: uppercase;
     letter-spacing: 1.6px;
     font-weight: 700;
     margin-bottom: 8px;
}
 .section-title h2 {
     font-size: 40px;
     line-height: 1.15;
}
 .section-title h2::after {
     content: "";
     width: 70px;
     height: 2px;
     background: var(--gold);
     display: block;
     margin: 14px auto 0;
}
 .btn {
     display: inline-flex;
     justify-content: center;
     align-items: center;
     padding: 14px 24px;
     border-radius: 5px;
     font-weight: 700;
     font-size: 14px;
     transition: 0.3s;
     border: 1px solid var(--gold);
}
 .btn-gold {
     background: linear-gradient(135deg, var(--gold-2), #c68b1d);
     color: #111;
}
 .menu-toggle {
     display: none;
}
 .btn-gold:hover {
     transform: translateY(-3px);
     box-shadow: 0 8px 25px rgba(213, 164, 55, 0.25);
}
 .topbar {
     background: #9B4F3F;
     border-bottom: 1px solid rgba(213, 164, 55, 0.3);
     font-size: 12px;
     color: #fff;
     position: relative;
     overflow: hidden;
}
 .topbar::after {
     content: "";
     position: absolute;
     left: 50%;
     bottom: -1px;
     transform: translateX(-50%);
     width: 180px;
     height: 1px;
     background: #d5a437;
     box-shadow: 0 0 12px rgba(213, 164, 55, 0.8);
}
 .topbar-inner {
     min-height: 38px;
     display: flex;
     align-items: center;
     justify-content: space-between;
     gap: 20px;
}
 .welcome-text {
     color: #fff;
     letter-spacing: 0.2px;
}
 .socials {
     display: flex;
     align-items: center;
     gap: 7px;
}
 .follow-text {
     color: #fff;
     margin-right: 5px;
     font-size: 11px;
}
/* Social buttons */
 .socials a {
     width: 30px;
     height: 30px;
     border: 1px solid rgba(213, 164, 55, 0.35);
     border-radius: 50%;
     display: inline-flex;
     align-items: center;
     justify-content: center;
     color: #fff;
     text-decoration: none;
     font-size: 16px;
     background: rgba(255, 255, 255, 0.02);
     transition: all 0.3s ease;
}
 .socials a:hover {
     color: #050505;
     background: #d5a437;
     border-color: #d5a437;
     transform: translateY(-2px);
     box-shadow: 0 4px 12px rgba(213, 164, 55, 0.25);
}
 header {
     position: sticky;
     top: 0;
     z-index: 999;
     background: #FDFAF6;
     border-bottom: 1px solid rgba(213, 164, 55, 0.18);
     backdrop-filter: blur(10px);
}
 .navbar {
     min-height: 86px;
     display: flex;
     align-items: center;
     justify-content: space-between;
     gap: 35px;
}
 .brand {
     display: flex;
     align-items: center;
     gap: 13px;
}
 .brand img {
     width: auto;
     height: 100px;
     object-fit: contain;
}
 .brand-text strong {
     color: var(--gold);
     display: block;
     font-family: "Playfair Display";
     font-size: 18px;
}
 .brand-text small {
     font-size: 9px;
     color: #ddd;
}
 nav ul {
     display: flex;
     gap: 27px;
     align-items: center;
}
 nav a {
     font-size: 12px;
     font-weight: 600;
     color: #222;
     text-transform: uppercase;
}
 .main-nav ul li a:hover, .main-nav ul li a.active {
     color: var(--gold) !important;
    ;
}
 .book-top {
     background: var(--gold-2);
     color: #111;
     padding: 12px 17px;
     border-radius: 5px;
     font-size: 12px;
     font-weight: 700;
}
 .vedicHeroSlider {
     position: relative;
     width: 100%;
     height: 450px;
     overflow: hidden;
     background: #03080b;
}
 .vedicHeroSlider__swiper {
     position: absolute;
     inset: 0;
     width: 100%;
     height: 100%;
     z-index: 1;
}
 .vedicHeroSlider__slide {
     width: 100%;
     height: 450px;
     overflow: hidden;
}
 .vedicHeroSlider__slide img {
     display: block;
     width: 100%;
     height: 100%;
     object-fit: fill;
     object-position: center center;
}
/* .vedicHeroSlider__overlay {
    */
    /* position: absolute;
    */
    /* inset: 0;
    */
    /* z-index: 2;
    */
    /* background: linear-gradient( 90deg, rgba(2, 7, 9, 0.97) 0%, rgba(2, 7, 9, 0.9) 28%, rgba(2, 7, 9, 0.38) 52%, rgba(2, 7, 9, 0.05) 78%, rgba(2, 7, 9, 0) 100% );
    */
    /*
}
*/
/* .vedicHeroSlider__overlay::after {
    */
    /* content: "";
    */
    /* position: absolute;
    */
    /* inset: 0;
    */
    /* background: linear-gradient(0deg, rgba(0, 0, 0, 0.45), transparent 35%);
    */
    /*
}
*/
 .vedicHeroSlider__container {
     position: relative;
     z-index: 5;
     min-height: 450px;
     display: flex;
     align-items: center;
}
 .vedicHeroSlider__content {
     width: 620px;
     padding: 30px 0;
}
 .vedicHeroSlider__eyebrow {
     display: flex;
     align-items: center;
     gap: 10px;
     margin-bottom: 10px;
     color: #e2c25d;
     font-size: 11px;
     font-weight: 600;
     letter-spacing: 2px;
}
 .vedicHeroSlider__eyebrow span {
     width: 32px;
     height: 1px;
     background: #d5a437;
     box-shadow: 0 0 8px rgba(213, 164, 55, 0.5);
}
 .vedicHeroSlider__title {
     margin: 0 0 22px;
     color: #fff;
     font-size: clamp(45px, 50px, 70px);
     line-height: 1.02;
     letter-spacing: 1.02px;
}
 .vedicHeroSlider__title span {
     color: #dfbb4e;
     text-shadow: 0 0 25px rgba(213, 164, 55, 0.18);
}
 .vedicHeroSlider__description {
     max-width: 530px;
     margin: 0 0 20px;
     color: #d0d0d0;
     font-size: 16px;
     line-height: 1.8;
}
 .vedicHeroSlider__actions {
     display: flex;
     align-items: center;
     gap: 22px;
     flex-wrap: wrap;
}
 .vedicHeroSlider__button {
     display: inline-flex;
     align-items: center;
     gap: 11px;
     padding: 15px 25px;
     color: #080808;
     background: linear-gradient(135deg, #ebcb66, #c79729);
     text-decoration: none;
     border-radius: 4px;
     font-size: 12px;
     font-weight: 700;
     letter-spacing: 0.8px;
     box-shadow: 0 8px 25px rgba(213, 164, 55, 0.18);
     transition: all 0.3s ease;
}
 .vedicHeroSlider__button:hover {
     color: #050505;
     transform: translateY(-3px);
     box-shadow: 0 12px 30px rgba(213, 164, 55, 0.3);
}
 .vedicHeroSlider__button i {
     transition: transform 0.3s ease;
}
 .vedicHeroSlider__button:hover i {
     transform: translateX(5px);
}
 .vedicHeroSlider__phone {
     display: flex;
     align-items: center;
     gap: 11px;
     color: #fff;
     text-decoration: none;
}
 .vedicHeroSlider__phoneIcon {
     width: 48px;
     height: 48px;
     display: grid;
     place-items: center;
     color: #d5a437;
     border: 1px solid rgba(213, 164, 55, 0.75);
     border-radius: 50%;
     background: rgba(0, 0, 0, 0.22);
     transition: all 0.3s ease;
}
 .vedicHeroSlider__phone:hover .vedicHeroSlider__phoneIcon {
     color: #050505;
     background: #d5a437;
     transform: rotate(8deg);
}
 .vedicHeroSlider__phoneText small {
     display: block;
     margin-bottom: 3px;
     color: #aaa;
     font-size: 10px;
}
 .vedicHeroSlider__phoneText strong {
     color: #e2c25d;
     font-size: 13px;
}
 .vedicHeroSlider__trust {
     display: flex;
     align-items: center;
     gap: 35px;
     margin-top: 42px;
     padding-top: 22px;
     border-top: 1px solid rgba(255, 255, 255, 0.12);
     max-width: 550px;
}
 .vedicHeroSlider__trustItem {
     display: flex;
     align-items: center;
     gap: 9px;
}
 .vedicHeroSlider__trustItem > i {
     color: #d5a437;
     font-size: 16px;
}
 .vedicHeroSlider__trustItem strong {
     display: block;
     color: #fff;
     font-size: 13px;
}
 .vedicHeroSlider__trustItem small {
     display: block;
     margin-top: 2px;
     color: #999;
     font-size: 10px;
}
 .vedicHeroSlider__pagination {
     z-index: 10;
     bottom: 25px !important;
     text-align: right;
     padding-right: 5%;
}
 .vedicHeroSlider__pagination .swiper-pagination-bullet {
     width: 7px;
     height: 7px;
     opacity: 1;
     background: rgba(255, 255, 255, 0.45);
     transition: all 0.3s ease;
}
 .vedicHeroSlider__pagination .swiper-pagination-bullet-active {
     width: 28px;
     border-radius: 10px;
     background: #d5a437;
}
 .stats-hero {
     background: #070d10;
}
 .stats-grid-hero {
     min-height: 100px;
     display: grid;
     grid-template-columns: repeat(4, 1fr);
     align-items: center;
     border: 1px solid #03090d;
     background: var(--gold-2);
     border-radius: 13px;
}
 .stat-hero {
     text-align: center;
     padding: 20px;
     border-right: 1px solid rgba(49, 36, 9, 0.28);
}
 .stat-hero:last-child {
     border-right: 0;
}
 .stat-hero strong {
     display: block;
     color: #03090d;
     font-size: 28px;
     font-family: "Playfair Display";
}
 .stat-hero small {
     font-size: 11px;
     color: #090f12;
     text-transform: uppercase;
}
 .services {
     padding: 45px 0;
     background: radial-gradient( circle at center, rgba(213, 164, 55, 0.05), transparent 50% ), var(--bg-2);
}
 .service-grid {
     display: grid;
     grid-template-columns: repeat(4, 1fr);
     gap: 14px;
}
 .service-card-home {
     border: 1px solid var(--border);
     border-radius: 7px;
     text-align: center;
     background: linear-gradient(180deg, #0c1318, #080e12);
     transition: 0.3s;
     overflow: hidden;
}
 .service-card-home:hover {
     transform: translateY(-6px);
     border-color: var(--gold);
}
 .service-img {
     width: 100%;
     height: 220px;
}
 .service-img img {
     height: 100%;
     width: 100%;
     object-fit: fill;
}
 .service-card-home h3 {
     font-family: "Inter";
     font-size: 14px;
     min-height: 20px;
     margin: 8px 0px 0px;
}
 .service-card-home p {
     font-size: 13px;
     margin: 0;
     color: var(--muted);
}
 .service-card-home a {
     display: inline-block;
     margin-top: 16px;
     border: 1px solid var(--gold);
     color: var(--gold-2);
     border-radius: 4px;
     padding: 8px 18px;
     font-size: 10px;
     font-weight: 700;
     margin-bottom: 8px;
}
 .about {
     padding: 40px 0;
     background-image: url(../images/banner1.jpeg);
     background-position: right center;
     background-size: contain;
     background-repeat: no-repeat;
     position: relative;
     height: 500px;
}
 .about-description{
     font-size: 14px;
     font-weight: 500;
     margin-bottom: 12px;
}
 .about-btn{
     background: var(--gold-2);
     color: #111;
     padding: 12px 17px;
     border-radius: 5px;
     font-size: 12px;
     font-weight: 700;
}
 .about-grid {
     display: grid;
     grid-template-columns: 1.15fr 1fr;
     gap: 35px;
     align-items: center;
}
 .about-copy span {
     color: var(--gold);
     font-size: 12px;
     font-weight: 700;
     text-transform: uppercase;
}
 .about-copy h2 {
     font-size: 36px;
     line-height: 1.1;
     margin: 8px 0 18px;
}
 .about-copy p {
     color: #c3c3c3;
     font-size: 13px;
     margin-bottom: 20px;
}
 .signature {
     font-family: "Playfair Display";
     font-style: italic;
     font-size: 21px;
     margin-bottom: 20px;
}
 .about-person {
     position: relative;
}
 .about-person img {
     height: 370px;
     border-radius: 8px;
     position: relative;
     z-index: 2;
}
 .trustFeatures {
     padding: 40px 0;
     background: #fdfaf6;
     border-top: 1px solid rgba(213, 164, 55, 0.12);
     border-bottom: 1px solid rgba(213, 164, 55, 0.12);
}
 .trustFeatures .container {
     display: grid;
     grid-template-columns: 0.75fr 1.25fr;
     gap: 30px;
     align-items: start;
}
 .trustFeatures__heading {
     position: sticky;
     top: 100px;
}
 .trustFeatures__eyebrow {
     display: flex;
     align-items: center;
     gap: 12px;
     color: #A01F22;
     font-size: 11px;
     font-weight: 600;
     letter-spacing: 2px;
     margin-bottom: 18px;
}
 .trustFeatures__eyebrow::before {
     content: "";
     width: 30px;
     height: 1px;
     background: #d5a437;
}
 .trustFeatures__heading h2 {
     margin: 0 0 20px;
     color: #000;
     font-size: clamp(36px, 4vw, 52px);
     line-height: 1.08;
     letter-spacing: 1.02px;
}
 .trustFeatures__heading h2 span {
     color: #d5a437;
}
 .trustFeatures__heading p {
     max-width: 390px;
     color: #999;
     font-size: 14px;
     line-height: 1.8;
}
 .trustFeatures__list {
     display: grid;
     grid-template-columns: 1fr 1fr;
     border-top: 1px solid rgba(255, 255, 255, 0.12);
}
 .trustFeatures__item {
     display: grid;
     grid-template-columns: 48px 1fr;
     gap: 18px;
     padding: 28px 20px 28px 0;
     border-bottom: 1px solid rgba(255, 255, 255, 0.12);
     position: relative;
     transition: all 0.3s ease;
}
 .trustFeatures__item:nth-child(odd) {
     padding-right: 35px;
     border-right: 1px solid rgba(255, 255, 255, 0.12);
}
 .trustFeatures__item:nth-child(even) {
     padding-left: 35px;
}
 .trustFeatures__number {
     color: #d5a437;
     font-size: 12px;
     font-weight: 600;
     letter-spacing: 1px;
     padding-top: 3px;
     position: relative;
}
 .trustFeatures__number::after {
     content: "";
     position: absolute;
     left: 0;
     top: 24px;
     width: 20px;
     height: 1px;
     background: rgba(213, 164, 55, 0.45);
     transition: width 0.3s ease;
}
 .trustFeatures__item h3 {
     margin: 0 0 8px;
     color: #000;
     font-size: 16px;
     font-weight: 600;
     transition: color 0.3s ease;
}
 .trustFeatures__item p {
     margin: 0;
     color: #777;
     font-size: 12px;
     line-height: 1.7;
}
 .trustFeatures__item:hover {
     background: rgba(213, 164, 55, 0.025);
}
 .trustFeatures__item:hover h3 {
     color: #d5a437;
}
 .trustFeatures__item:hover .trustFeatures__number::after {
     width: 35px;
}
 .vedicReviews {
     position: relative;
     padding: 40px 0;
     background: #ffffff;
     border-top: 1px solid #eee;
     overflow: hidden;
}
 .vedicReviews::before {
     content: "";
     position: absolute;
     width: 300px;
     height: 300px;
     top: -150px;
     right: -100px;
     background: rgba(160, 82, 61, 0.08);
     border-radius: 50%;
     filter: blur(50px);
     pointer-events: none;
}
 .vedicReviews__heading {
     position: relative;
     text-align: center;
     max-width: 700px;
     margin: 0 auto 20px;
}
 .vedicReviews__eyebrow {
     display: inline-flex;
     align-items: center;
     gap: 10px;
     margin-bottom: 12px;
     color: #d9aa36;
     font-size: 11px;
     font-weight: 700;
     letter-spacing: 2px;
}
 .vedicReviews__eyebrow::before, .vedicReviews__eyebrow::after {
     content: "";
     width: 30px;
     height: 1px;
     background: #a0523d;
}
 .vedicReviews__heading h2 {
     margin: 0 0 12px;
     color: #222;
     font-family: "Inter", sans-serif;
     font-size: 32px;
     font-weight: 600;
     line-height: 1.2;
}
 .vedicReviews__heading h2 span {
     color: #a0523d;
}
 .vedicReviews__heading p {
     max-width: 600px;
     margin: 0 auto;
     color: #777;
     font-size: 14px;
     line-height: 1.7;
}
 .vedicReviews__swiper {
     width: 100%;
     overflow: hidden;
}
 .vedicReviews__swiper .swiper-slide {
     height: auto;
     display: flex;
}
 .vedicReviews__card {
     position: relative;
     width: 100%;
     padding: 15px;
     display: flex;
     flex-direction: column;
     display: flex;
     background: #ffffff;
     border: 1px solid #eadfd8;
     border-radius: 10px;
     box-shadow: 0 5px 20px rgba(80, 50, 30, 0.06);
     transition: all 0.35s ease;
}
 .vedicReviews__card:hover {
     transform: scale(1.01);
     border-color: rgba(160, 82, 61, 0.4);
     box-shadow: 0 15px 35px rgba(80, 50, 30, 0.12);
}
 .vedicReviews__card::before {
     content: "";
     position: absolute;
     top: 0;
     left: 25px;
     right: 25px;
     height: 2px;
     background: linear-gradient( 90deg, transparent, #d9aa36, #a0523d, transparent );
     opacity: 0.7;
}
 .vedicReviews__top {
     display: flex;
     align-items: center;
     justify-content: space-between;
     margin-bottom: 20px;
}
 .vedicReviews__quote {
     width: 45px;
     height: 45px;
     display: flex;
     align-items: center;
     justify-content: center;
     color: #d9aa36;
     font-size: 17px;
     background: rgba(160, 82, 61, 0.12);
     border: 1px solid rgba(160, 82, 61, 0.35);
     border-radius: 50%;
}
 .vedicReviews__stars {
     display: flex;
     gap: 4px;
     color: #d9aa36;
     font-size: 11px;
}
 .vedicReviews__text {
     flex: 1;
     margin: 0;
     color: #666;
     font-size: 14px;
     line-height: 1.8;
}
 .vedicReviews__clientInfo strong {
     color: #222;
     font-size: 13px;
     font-weight: 600;
}
 .vedicReviews__clientInfo span {
     color: #999;
     font-size: 10px;
     letter-spacing: 0.4px;
}
 .vedicReviews__text p {
     margin: 0;
}
 .vedicReviews__client {
     display: flex;
     align-items: center;
     gap: 11px;
     margin-top: 22px;
     padding-top: 17px;
     border-top: 1px solid rgba(255, 255, 255, 0.07);
}
/* Avatar */
 .vedicReviews__avatar {
     width: 40px;
     height: 40px;
     flex-shrink: 0;
     display: flex;
     align-items: center;
     justify-content: center;
     color: #d9aa36;
     font-size: 14px;
     background: rgba(217, 170, 54, 0.08);
     border: 1px solid rgba(217, 170, 54, 0.25);
     border-radius: 50%;
}
/* Client Info */
 .vedicReviews__clientInfo {
     display: flex;
     flex-direction: column;
     gap: 3px;
}
 .vedicReviews__controls {
     display: flex;
     align-items: center;
     justify-content: center;
     gap: 18px;
     margin-top: 30px;
}
 .vedicReviews__prev, .vedicReviews__next {
     width: 42px;
     height: 42px;
     display: flex;
     align-items: center;
     justify-content: center;
     color: #a0523d;
     background: #fff;
     border: 1px solid rgba(160, 82, 61, 0.3);
     border-radius: 50%;
     cursor: pointer;
     transition: all 0.3s ease;
}
 .vedicReviews__prev:hover, .vedicReviews__next:hover {
     color: #fff;
     background: #a0523d;
     border-color: #a0523d;
}
 .vedicReviews__pagination {
     width: auto !important;
}
 .vedicReviews__pagination .swiper-pagination-bullet {
     width: 7px;
     height: 7px;
     margin: 0 4px !important;
     opacity: 1;
     background: #3b4548;
     transition: all 0.3s ease;
}
 .vedicReviews__pagination .swiper-pagination-bullet-active {
     width: 24px;
     border-radius: 10px;
     background: #d9aa36;
}
/* Empty */
 .vedicReviews__empty {
     width: 100%;
     padding: 40px;
     text-align: center;
     color: #888;
}
/* ========================================= TABLET ========================================= */
 @media (max-width: 991px) {
     .vedicReviews__card {
         min-height: 270px;
    }
}
 @media (max-width: 575px) {
     .vedicReviews__heading {
         margin-bottom: 25px;
    }
     .vedicReviews__heading h2 {
         font-size: 28px;
    }
     .vedicReviews__heading p {
         font-size: 13px;
    }
     .vedicReviews__card {
         min-height: 260px;
         padding: 20px;
    }
     .vedicReviews__top {
         margin-bottom: 16px;
    }
     .vedicReviews__quote {
         width: 40px;
         height: 40px;
         font-size: 15px;
    }
     .vedicReviews__text {
         font-size: 13px;
         line-height: 1.75;
    }
     .vedicReviews__controls {
         margin-top: 22px;
    }
}
 .blog {
     padding: 40px 0px;
     background: #fdfaf6;
}
 .blog-grid {
     display: grid;
     grid-template-columns: repeat(3, minmax(0, 1fr));
     gap: 25px;
}
/* Blog Card */
 .blog-card {
     overflow: hidden;
     background: #081014;
     border: 1px solid #2a2f31;
     border-radius: 8px;
     transition: all 0.3s ease;
}
 .blog-card:hover {
     transform: translateY(-5px);
     border-color: #a0523d;
     box-shadow: 0 10px 25px rgba(0, 0, 0, 0.15);
}
/* Image */
 .blog-image {
     width: 100%;
     height: 210px;
     overflow: hidden;
     background: #151b1e;
}
 .blog-card img {
     width: 100%;
     height: 100%;
     display: block;
     object-fit: cover;
     transition: transform 0.4s ease;
}
 .blog-card:hover img {
     transform: scale(1.05);
}
/* Content */
 .blog-content {
     padding: 14px;
}
 .blog-content h3 {
     margin: 0 0 12px;
     color: #e7b93d;
     font-family: "Inter", sans-serif;
     font-size: 18px;
     font-weight: 600;
     line-height: 1.4;
     display: -webkit-box;
     -webkit-line-clamp: 2;
     -webkit-box-orient: vertical;
     overflow: hidden;
}
/* Read More */
 .blog-content a {
     display: inline-flex;
     align-items: center;
     gap: 6px;
     margin-top: 5px;
     color: #d9aa36;
     font-family: "Inter", sans-serif;
     font-size: 12px;
     font-weight: 700;
     letter-spacing: 0.5px;
     text-decoration: none;
     transition: all 0.3s ease;
}
 .blog-content a span {
     font-size: 16px;
     line-height: 1;
     transition: transform 0.3s ease;
}
 .blog-content a:hover {
     color: #a0523d;
}
 .blog-content a:hover span {
     transform: translateX(4px);
}
/* Empty State */
 .no-blog {
     grid-column: 1 / -1;
     text-align: center;
     padding: 40px 20px;
     color: #777;
}
 @media (max-width: 991px) {
     .blog-grid {
         grid-template-columns: repeat(2, minmax(0, 1fr));
         gap: 20px;
    }
     .blog-image {
         height: 190px;
    }
}
 @media (max-width: 575px) {
     .blog-grid {
         grid-template-columns: 1fr;
         gap: 20px;
    }
     .blog-image {
         height: 210px;
    }
     .blog-content {
         padding: 16px;
    }
     .blog-content h3 {
         font-size: 17px;
    }
}
 .vedicCta {
     position: relative;
     padding: 30px 0;
     background: linear-gradient(90deg, #071015 0%, #0a1216 50%, #071015 100%);
     border-top: 1px solid rgba(213, 164, 55, 0.18);
     border-bottom: 1px solid rgba(213, 164, 55, 0.18);
     overflow: hidden;
}
/* Subtle golden glow */
 .vedicCta::before {
     content: "";
     position: absolute;
     width: 350px;
     height: 350px;
     left: 10%;
     top: 50%;
     transform: translateY(-50%);
     background: radial-gradient( circle, rgba(213, 164, 55, 0.08), transparent 70% );
     pointer-events: none;
}
/* ===================================== INNER ===================================== */
 .vedicCta__inner {
     min-height: 85px;
     display: flex;
     align-items: center;
     justify-content: space-between;
     gap: 30px;
     position: relative;
     z-index: 2;
}
/* ===================================== CONTENT ===================================== */
 .vedicCta__content {
     display: flex;
     align-items: center;
     gap: 20px;
}
/* ===================================== PHONE ICON ===================================== */
 .vedicCta__icon {
     flex: 0 0 auto;
     width: 62px;
     height: 62px;
     display: grid;
     place-items: center;
     color: #d5a437;
     border: 1px solid rgba(213, 164, 55, 0.65);
     border-radius: 50%;
     background: radial-gradient( circle, rgba(213, 164, 55, 0.1), rgba(213, 164, 55, 0.02) );
     font-size: 20px;
     box-shadow: 0 0 25px rgba(213, 164, 55, 0.06);
     transition: all 0.3s ease;
}
 .vedicCta__content:hover .vedicCta__icon {
     color: #050505;
     background: #d5a437;
     transform: scale(1.05);
}
/* ===================================== TEXT ===================================== */
 .vedicCta__eyebrow {
     display: block;
     margin-bottom: 5px;
     color: #9b9b9b;
     font-size: 9px;
     font-weight: 600;
     letter-spacing: 2px;
}
 .vedicCta__text h3 {
     margin: 0;
     color: #fff;
     font-size: clamp(20px, 2vw, 27px);
     font-weight: 600;
     line-height: 1.25;
}
 .vedicCta__text h3 span {
     color: #d5a437;
}
 .vedicCta__text p {
     margin: 5px 0 0;
     color: #858d90;
     font-size: 11px;
     line-height: 1.5;
}
/* ===================================== BUTTON ===================================== */
 .vedicCta__button {
     flex: 0 0 auto;
     display: inline-flex;
     align-items: center;
     justify-content: center;
     gap: 11px;
     min-width: 185px;
     padding: 14px 20px;
     color: #080808;
     background: linear-gradient(135deg, #e6c65d, #c7972c);
     border-radius: 3px;
     text-decoration: none;
     font-size: 11px;
     font-weight: 700;
     letter-spacing: 0.7px;
     box-shadow: 0 8px 22px rgba(213, 164, 55, 0.12);
     transition: all 0.3s ease;
}
 .vedicCta__button:hover {
     color: #050505;
     transform: translateY(-2px);
     box-shadow: 0 10px 28px rgba(213, 164, 55, 0.25);
}
 .vedicCta__button i {
     transition: transform 0.3s ease;
}
 .vedicCta__button:hover i {
     transform: translateX(5px);
}
 .vedicFooter {
     position: relative;
     padding: 45px 0 20px;
     background: #430A17;
     border-top: 1px solid rgba(213, 164, 55, 0.15);
}
 .vedicFooter::before {
     content: "";
     position: absolute;
     top: 0;
     left: 50%;
     transform: translateX(-50%);
     width: 150px;
     height: 1px;
     background: #d5a437;
     box-shadow: 0 0 15px rgba(213, 164, 55, 0.5);
}
 .vedicFooter__grid {
     display: grid;
     grid-template-columns: 1.35fr 0.8fr 1fr 1.05fr;
     gap: 38px;
}
 .vedicFooter__column h4, .vedicFooter__appointment h4 {
     position: relative;
     margin: 5px 0 22px;
     color: #fff;
     font-size: 15px;
     font-weight: 600;
     letter-spacing: 1.3px;
     text-transform: uppercase;
}
 .vedicFooter__column h4::after, .vedicFooter__appointment h4::after {
     content: "";
     display: block;
     width: 25px;
     height: 1px;
     margin-top: 9px;
     background: #d5a437;
}
 .vedicFooter__logo {
     display: inline-block;
     margin-bottom: 12px;
}
 .vedicFooter__logo img {
     display: block;
     width: 100px;
     height: auto;
}
 .vedicFooter__brand h3 {
     margin: 0 0 12px;
     color: #d5a437;
     font-size: 15px;
     font-weight: 600;
     letter-spacing: 1px;
}
 .vedicFooter__brand p {
     max-width: 280px;
     margin: 0;
     color: #fff;
     font-size: 13px;
     line-height: 1.8;
}
 .vedicFooter__socials {
     display: flex;
     gap: 8px;
     margin-top: 22px;
}
 .vedicFooter__socials a {
     width: 40px;
     height: 40px;
     display: grid;
     place-items: center;
     color: #aaa;
     border: 1px solid rgba(255, 255, 255, 0.14);
     border-radius: 50%;
     text-decoration: none;
     font-size: 20px;
     transition: all 0.3s ease;
}
 .vedicFooter__socials a:hover {
     color: #050505;
     background: #d5a437;
     border-color: #d5a437;
     transform: translateY(-3px);
}
 .vedicFooter__column ul {
     margin: 0;
     padding: 0;
     list-style: none;
}
 .vedicFooter__column li {
     margin-bottom: 10px;
}
 .vedicFooter__column li a {
     position: relative;
     color: #fff;
     font-size: 13px;
     text-decoration: none;
     transition: all 0.3s ease;
}
 .vedicFooter__column li a:hover {
     color: #d5a437;
}
 .vedicFooter__column li a:hover::before {
     margin-right: 10px;
     opacity: 1;
}
 .vedicFooter__contact li {
     display: flex;
     align-items: flex-start;
     gap: 10px;
     color: #fff;
     font-size: 13px;
     line-height: 1.6;
}
 .vedicFooter__contact li i {
     width: 15px;
     padding-top: 2px;
     color: #d5a437;
     font-size: 13px;
}
 .vedicFooter__contact li a {
     color: #ffff;
     font-size: 13px;
     text-decoration: none;
     transition: color 0.3s ease;
}
 .vedicFooter__contact li a:hover {
     color: #d5a437;
}
 .vedicFooter__bottom {
     display: flex;
     align-items: center;
     justify-content: space-between;
     gap: 20px;
     margin-top: 20px;
     padding-top: 17px;
     border-top: 1px solid rgba(236, 224, 224, 0.08);
     color: #fff;
     font-size: 10px;
}
 .vedicFooter__bottom div {
     display: flex;
     align-items: center;
     gap: 10px;
}
 .vedicFooter__bottom a {
     color: #fff;
     text-decoration: none;
     font-size: 14px;
     transition: color 0.3s ease;
}
 .vedicFooter__bottom a:hover {
     color: #d5a437;
}
 .vedicFooter__bottom span {
     color: #fff;
     font-size: 13px;
}
 .contact-hero {
     position: relative;
     min-height: 400px;
     overflow: hidden;
     border-bottom: 1px solid var(--border);
     background: radial-gradient( circle at 72% 50%, rgba(215, 150, 23, 0.15), transparent 35% ), linear-gradient( 90deg, rgba(2, 8, 11, 1) 0%, rgba(2, 8, 11, 0.95) 48%, rgba(2, 8, 11, 0.55) 100% );
}
 .contact-hero::before {
     content: "";
     position: absolute;
     width: 580px;
     height: 580px;
     right: 5%;
     top: -90px;
     background: url("images/zodiac-wheel.png") center/contain no-repeat;
     opacity: 0.3;
}
 .hero-grid {
     min-height: 400px;
     display: grid;
     grid-template-columns: 1fr 1fr;
     align-items: end;
     position: relative;
     z-index: 2;
}
 .hero-content {
     align-self: center;
     padding: 50px 0;
}
 .breadcrumb {
     color: var(--gold-light);
     font-size: 11px;
     margin-bottom: 15px;
}
 .hero-content h1 {
     font-size: 54px;
     line-height: 1;
     margin-bottom: 10px;
}
 .hero-content h2 {
     color: var(--gold-light);
     font-size: 34px;
     margin-bottom: 18px;
}
 .gold-line {
     width: 165px;
     height: 2px;
     background: linear-gradient(90deg, var(--gold), transparent);
     margin-bottom: 22px;
}
 .hero-content p {
     max-width: 500px;
     color: #ddd;
     font-size: 13px;
     line-height: 1.9;
}
 .hero-person {
     position: relative;
     z-index: 3;
}
 .hero-person img {
     max-height: 390px;
     margin-left: auto;
     object-fit: contain;
}
/* ========================= CONTACT INFO ========================= */
 .contact-info-section {
     padding: 22px 0 15px;
}
 .contact-info {
     display: grid;
     grid-template-columns: repeat(4, 1fr);
     border: 1px solid var(--border);
     border-radius: 10px;
     overflow: hidden;
     background: var(--card);
}
 .info-item {
     display: flex;
     align-items: center;
     gap: 15px;
     padding: 24px;
     border-right: 1px solid var(--border);
}
 .info-item:last-child {
     border-right: none;
}
 .info-icon {
     width: 54px;
     height: 54px;
     min-width: 54px;
     border: 2px solid var(--gold);
     border-radius: 50%;
     display: grid;
     place-items: center;
     color: var(--gold-light);
     font-size: 23px;
}
 .info-item h3 {
     font-size: 16px;
     margin-bottom: 3px;
}
 .info-item p {
     color: #ddd;
     font-size: 10px;
}
 .info-item small {
     color: var(--muted);
     font-size: 9px;
}
 .contactSection {
     padding: 40px 0;
     background: #fdfaf6;
}
 .contactHeader {
     max-width: 650px;
     margin: 0 auto 20px;
     text-align: center;
}
 .contactHeader > span {
     display: inline-block;
     margin-bottom: 7px;
     color: var(--gold);
     font-size: 13px;
     font-weight: 700;
     letter-spacing: 2px;
     text-transform: uppercase;
}
 .contactHeader h2 {
     margin: 0 0 10px;
     color: #000;
     font-family: "Playfair Display", serif;
     font-size: clamp(30px, 4vw, 40px);
     line-height: 1.15;
}
 .contactHeader p {
     max-width: 540px;
     margin: auto;
     color: #737c7f;
     font-size: 11px;
     line-height: 1.8;
}
 .contactLayout {
     display: grid;
     grid-template-columns: 1.08fr .92fr;
     gap: 22px;
     align-items: stretch;
}
 .contactFormBox, .contactLocation {
     background: #fdfaf6;
     border: 1px solid rgba(255,255,255,.07);
     border-radius: 8px;
}
 .contactFormBox {
     padding: 30px;
}
 .contactFormTitle {
     margin-bottom: 25px;
     padding-bottom: 17px;
     border-bottom: 1px solid rgba(255,255,255,.07);
}
 .contactFormTitle span, .locationHeader span {
     display: block;
     margin-bottom: 5px;
     color: var(--gold);
     font-size: 12px;
     font-weight: 700;
     letter-spacing: 1.8px;
}
 .contactFormTitle h3, .locationHeader h3 {
     margin: 0;
     color: #000;
     font-family: "Playfair Display", serif;
     font-size: 22px;
     font-weight: 600;
}
 .contactForm {
     display: flex;
     flex-direction: column;
     gap: 15px;
}
 .contactFormRow {
     display: grid;
     grid-template-columns: 1fr 1fr;
     gap: 13px;
}
 .contactField label {
     display: block;
     margin-bottom: 7px;
     color: #aeb5b7;
     font-size: 12px;
     font-weight: 600;
}
 .contactInput {
     position: relative;
}
 .contactInput > i {
     position: absolute;
     left: 12px;
     top: 50%;
     z-index: 2;
     transform: translateY(-50%);
     color: var(--gold);
     font-size: 12px;
     pointer-events: none;
}
 .contactInput input, .contactInput select, .contactInput textarea {
     width: 100%;
     color: #fdfaf6;
     background: #fdfaf6;
     border: 1px solid #273238;
     border-radius: 4px;
     outline: none;
     font-family: inherit;
     font-size: 12px;
     transition: border-color .25s ease, box-shadow .25s ease;
}
 .contactInput input, .contactInput select {
     height: 41px;
     padding: 0 12px 0 32px;
}
 .contactInput textarea {
     min-height: 105px;
     resize: vertical;
     padding: 12px 12px 12px 32px;
     line-height: 1.6;
}
 .contactInput input::placeholder, .contactInput textarea::placeholder {
     color: #596367;
}
 .contactInput select {
     appearance: none;
     cursor: pointer;
     color: #777f82;
}
 .contactInput select:valid {
     color: #eee;
}
 .contactInput input:focus, .contactInput select:focus, .contactInput textarea:focus {
     border-color: rgba(213,164,55,.65);
     box-shadow: 0 0 0 2px rgba(213,164,55,.05);
}
 .contactTextarea > i {
     top: 17px;
     transform: none;
}
 .contactSubmit {
     height: 44px;
     display: flex;
     align-items: center;
     justify-content: center;
     gap: 10px;
     margin-top: 3px;
     border: 0;
     border-radius: 4px;
     color: #101010;
     background: linear-gradient( 135deg, #e3c25b, #c2912c );
     font-family: inherit;
     font-size: 9px;
     font-weight: 800;
     letter-spacing: 1px;
     cursor: pointer;
     transition: transform .25s ease, box-shadow .25s ease;
}
 .contactSubmit i {
     font-size: 9px;
     transition: transform .25s ease;
}
 .contactSubmit:hover {
     transform: translateY(-2px);
     box-shadow: 0 10px 25px rgba(213,164,55,.18);
}
 .contactSubmit:hover i {
     transform: translateX(4px);
}
/* ========================================= LOCATION ========================================= */
 .contactLocation {
     padding: 25px;
}
 .locationHeader {
     display: flex;
     align-items: center;
     justify-content: space-between;
     margin-bottom: 18px;
}
 .locationPin {
     width: 40px;
     height: 40px;
     display: grid;
     place-items: center;
     color: var(--gold);
     border: 1px solid rgba(213,164,55,.35);
     border-radius: 50%;
     font-size: 13px;
}
 .contactMap {
     position: relative;
     height: 330px;
     overflow: hidden;
     border: 1px solid rgba(255,255,255,.08);
     border-radius: 5px;
     filter: grayscale(.85);
}
 .contactMap::after {
     content: "";
     position: absolute;
     inset: 0;
     pointer-events: none;
     border: 1px solid rgba(213,164,55,.12);
     box-shadow: inset 0 0 50px rgba(0,0,0,.25);
}
 .contactMap iframe {
     width: 100%;
     height: 100%;
     display: block;
     border: 0;
}
/* ========================================= LOCATION INFO ========================================= */
 .locationInfo {
     display: grid;
     grid-template-columns: 1fr 1fr;
     gap: 10px;
     margin-top: 12px;
}
 .locationInfoItem {
     display: flex;
     align-items: center;
     gap: 10px;
     padding: 12px;
     background: rgba(255,255,255,.025);
     border: 1px solid rgba(255,255,255,.05);
     border-radius: 4px;
}
 .locationInfoIcon {
     flex: 0 0 auto;
     width: 30px;
     height: 30px;
     display: grid;
     place-items: center;
     color: var(--gold);
     border: 1px solid rgba(213,164,55,.25);
     border-radius: 50%;
     font-size: 9px;
}
 .locationInfoItem span {
     display: block;
     margin-bottom: 3px;
     color: #666f72;
     font-size: 8px;
     text-transform: uppercase;
     letter-spacing: .8px;
}
 .locationInfoItem strong {
     display: block;
     color: #d4d7d8;
     font-size: 9px;
     font-weight: 500;
     line-height: 1.4;
}
/* ========================================= DIRECTIONS ========================================= */
 .directionLink {
     grid-column: 1 / -1;
     display: flex;
     align-items: center;
     justify-content: space-between;
     padding: 13px 14px;
     color: var(--gold);
     text-decoration: none;
     background: rgba(213,164,55,.045);
     border: 1px solid rgba(213,164,55,.15);
     border-radius: 4px;
     font-size: 9px;
     font-weight: 700;
     letter-spacing: .5px;
     transition: background .25s ease, border-color .25s ease;
}
 .directionLink span {
     display: flex;
     align-items: center;
     gap: 8px;
}
 .directionLink > i {
     font-size: 8px;
     opacity: .7;
}
 .directionLink:hover {
     background: rgba(213,164,55,.09);
     border-color: rgba(213,164,55,.35);
}
/* ========================= FAQ ========================= */
 .faq-section {
     padding: 10px 0 45px;
}
 .faq-title {
     text-align: center;
     margin-bottom: 25px;
}
 .faq-title span {
     color: var(--gold);
     font-size: 10px;
     font-weight: 700;
     letter-spacing: 1px;
}
 .faq-title h2 {
     font-size: 31px;
}
 .faq-title h2::after {
     content: "";
     display: block;
     width: 60px;
     height: 2px;
     margin: 9px auto;
     background: var(--gold);
}
 .faq-grid {
     display: grid;
     grid-template-columns: 1fr 1fr;
     gap: 10px 25px;
}
 details {
     border: 1px solid rgba(217, 156, 32, 0.3);
     border-radius: 5px;
     background: #071015;
}
 summary {
     position: relative;
     padding: 14px 45px 14px 18px;
     cursor: pointer;
     list-style: none;
     color: #ddd;
     font-size: 12px;
}
 summary::-webkit-details-marker {
     display: none;
}
 summary::after {
     content: "+";
     position: absolute;
     right: 17px;
     top: 9px;
     color: var(--gold-light);
     font-size: 22px;
}
 details[open] summary::after {
     content: "−";
}
 details p {
     padding: 0 18px 16px;
     color: #999;
     font-size: 11px;
}
 .pageHero {
     position: relative;
     height: 250px;
     width: 100%;
     overflow: hidden;
     background: #03080b;
     border-bottom: 1px solid var(--border);
}
 .pageHero__media {
     position: absolute;
     inset: 0;
     width: 100%;
     height: 100%;
     z-index: 1;
}
 .pageHero__media img {
     width: 100%;
     height: 100%;
     display: block;
     object-fit: cover;
     object-position: center 35%;
}
 .pageHero__overlay {
     position: absolute;
     inset: 0;
     z-index: 2;
     background: linear-gradient( 90deg, rgba(2, 7, 10, 0.97) 0%, rgba(2, 7, 10, 0.78) 28%, rgba(2, 7, 10, 0.22) 52%, rgba(2, 7, 10, 0.0) 75%, rgba(2, 7, 10, 0.08) 100% );
}
 .pageHero__overlay::after {
     content: "";
     position: absolute;
     left: 0;
     right: 0;
     bottom: 0;
     height: 45px;
     background: linear-gradient(to top, rgba(3, 8, 11, 0.7), transparent);
}
 .pageHero__container {
     position: relative;
     z-index: 3;
     height: 100%;
     display: flex;
     align-items: center;
}
 .pageHero__content {
     max-width: 650px;
}
 .pageHero__breadcrumb {
     display: flex;
     align-items: center;
     gap: 9px;
     margin-bottom: 14px;
     font-size: 11px;
}
 .pageHero__breadcrumb a {
     color: #b5b8b9;
     text-decoration: none;
     transition: color 0.25s ease;
}
 .pageHero__breadcrumb a:hover {
     color: var(--gold);
}
 .pageHero__breadcrumb i {
     color: var(--gold);
     font-size: 7px;
}
 .pageHero__breadcrumb span {
     color: var(--gold);
}
 .pageHero__content h1 {
     margin: 0 0 10px;
     color: #fff;
     font-size: 46px;
     font-weight: 600;
     line-height: 1.05;
     letter-spacing: -1px;
}
 .pageHero__content h1 span {
     color: var(--gold-2);
}
 .pageHero__content p {
     max-width: 500px;
     margin: 0;
     color: #d0d2d3;
     font-size: 12px;
     line-height: 1.7;
}
 .biography{
     position:relative;
     background:#fdfaf5;
     padding:40px 0 60px;
     overflow:hidden;
}
 .biography::before{
     content:'';
     position:absolute;
     top:0;
     right:0;
     width:300px;
     height:300px;
     background:radial-gradient(circle, rgba(139,26,43,.05), transparent 70%);
     pointer-events:none;
}
 .bio-grid{
     display:grid;
     grid-template-columns:.85fr 1.15fr;
     gap:70px;
     align-items:center;
     margin-bottom:20px;
}
/* Image side */
 .bio-image{
     position:relative;
}
 .bio-frame{
     position:relative;
     border-radius:12px;
     overflow:hidden;
     border:10px solid #fff;
     box-shadow: 0 0 0 2px #d9b25f, 0 25px 50px rgba(90,30,20,.18);
}
 .bio-frame img{
     width:100%;
     height:420px;
     object-fit:fill;
     display:block;
}
 .bio-quote-tag{
     position:absolute;
     bottom:-30px;
     right:-30px;
     max-width:220px;
     background:#fff;
     border-radius:8px;
     padding:13px 13px 12px;
     box-shadow:0 20px 40px rgba(90,30,20,.15);
     border-top:3px solid #d9b25f;
}
 .bio-quote-tag i{
     font-size:16px;
     color:#d9b25f;
     margin-bottom:8px;
}
 .bio-quote-tag p{
     font-family:Georgia,'Times New Roman',serif;
     font-style:italic;
     font-size:13px;
     line-height:1.6;
     color:#3a2f3a;
     margin-bottom:10px;
}
 .bio-quote-tag span{
     font-size:11px;
     font-weight:700;
     color:#8b1a2b;
}
 .bio-copy .label{
     display:inline-flex;
     align-items:center;
     gap:8px;
     font-size:12px;
     font-weight:700;
     text-transform:uppercase;
     letter-spacing:2px;
     color:#c9922f;
     margin-bottom:14px;
}
 .bio-copy h2{
     font-family:Georgia,'Times New Roman',serif;
     font-size:36px;
     font-weight:700;
     color:#8b1a2b;
     margin-bottom:10px;
     line-height:1.2;
}
 .bio-role{
     font-size:14px;
     font-weight:600;
     color:#555;
     margin-bottom:24px;
}
 .bio-desc{
     font-size:15px;
     line-height:1.85;
     color:#6a6a72;
     margin-bottom:30px;
}
 .bio-desc p{
     margin-bottom:16px;
}
 .bio-btn{
     display:inline-flex;
     align-items:center;
     gap:10px;
     padding:14px 30px;
     background:linear-gradient(90deg,#8b1a2b,#c9922f);
     color:#fff;
     font-size:14px;
     font-weight:700;
     border-radius:30px;
     box-shadow:0 12px 25px rgba(139,26,43,.25);
     transition:.3s;
}
 .bio-btn:hover{
     color:#fff;
     transform:translateY(-3px);
     box-shadow:0 16px 30px rgba(139,26,43,.35);
}
/* Stats row */
 .bio-stats{
     display:grid;
     grid-template-columns:repeat(7,1fr);
     gap:16px;
}
 .bio-stat{
     text-align:center;
     background:#fff;
     border:1px solid #f0e6d2;
     border-radius:6px;
     padding:16px 8px;
     transition:.3s;
}
 .bio-stat:hover{
     transform:translateY(-6px);
     box-shadow:0 15px 30px rgba(139,26,43,.1);
     border-color:#d9b25f;
}
 .bio-stat i{
     font-size:24px;
     color:#c9922f;
     margin-bottom:12px;
     display:block;
}
 .bio-stat strong{
     display:block;
     font-family:Georgia,'Times New Roman',serif;
     font-size:16px;
     font-weight:700;
     color:#8b1a2b;
     margin-bottom:6px;
}
 .bio-stat span{
     display:block;
     font-size:10.5px;
     color:#8a8a92;
     line-height:1.5;
}
/* Responsive */
 @media (max-width:1200px){
     .bio-stats{
         grid-template-columns:repeat(4,1fr);
    }
}
 @media (max-width:992px){
     .bio-grid{
         grid-template-columns:1fr;
         gap:50px;
    }
     .bio-image{
         max-width:400px;
         margin:0 auto;
    }
     .bio-quote-tag{
         position:static;
         max-width:100%;
         margin-top:24px;
    }
}
 @media (max-width:768px){
     .bio-stats{
         grid-template-columns:repeat(2,1fr);
    }
}
 @media (max-width:480px){
     .bio-copy h2{
         font-size:26px;
    }
     .bio-frame img{
         height:320px;
    }
}
 .statsSection {
     position: relative;
     padding: 25px 0;
     background: #050c10;
     border-top: 1px solid rgba(213,164,55,.12);
     border-bottom: 1px solid rgba(213,164,55,.12);
}
/* ================================= GRID ================================= */
 .statsGrid {
     display: grid;
     grid-template-columns: repeat(4, 1fr);
     border: 1px solid rgba(255,255,255,.08);
     background: rgba(255,255,255,.015);
}
/* ================================= CARD ================================= */
 .statCard {
     min-height: 100px;
     display: flex;
     align-items: center;
     gap: 15px;
     padding: 18px 25px;
     position: relative;
     transition: background .3s ease;
}
/* Vertical divider */
 .statCard:not(:last-child)::after {
     content: "";
     position: absolute;
     right: 0;
     top: 22px;
     bottom: 22px;
     width: 1px;
     background: rgba(255,255,255,.09);
}
 .statCard:hover {
     background: rgba(213,164,55,.035);
}
/* ================================= ICON ================================= */
 .statCard__icon {
     flex: 0 0 auto;
     width: 45px;
     height: 45px;
     display: grid;
     place-items: center;
     color: var(--gold);
     border: 1px solid rgba(213,164,55,.35);
     border-radius: 50%;
     background: rgba(213,164,55,.04);
     font-size: 16px;
     transition: all .3s ease;
}
 .statCard:hover .statCard__icon {
     color: #111;
     background: var(--gold);
     border-color: var(--gold);
     transform: translateY(-2px);
}
/* ================================= CONTENT ================================= */
 .statCard__content {
     display: flex;
     flex-direction: column;
     gap: 4px;
}
 .statCard__content strong {
     color: #fff;
     font-size: 26px;
     font-weight: 600;
     line-height: 1;
}
 .statCard__content span {
     max-width: 160px;
     color: #858d90;
     font-size: 10px;
     line-height: 1.45;
}
 .values-section {
     padding: 40px 0;
     background:#fff;
}
 .values-box .box-title {
     color: var(--gold);
     text-align: center;
     text-transform: uppercase;
     font-size: 13px;
     letter-spacing: 1.5px;
     margin-bottom: 35px;
     font-weight: 700;
}
 .values-list {
     display: flex;
     flex-direction: column;
}
 .values-list .value-item {
     display: grid;
     grid-template-columns: 1fr 1fr;
     gap: 0px;
     align-items: center;
     padding: 30px 0;
     margin: 0;
     border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}
/* Last item border remove */
 .values-list .value-item:last-child {
     border-bottom: none;
     padding-bottom: 0;
}
/* First item */
 .values-list .value-item:first-child {
     padding-top: 0;
}
 .value-content {
     display: flex;
     align-items: flex-start;
     gap: 18px;
}
 .value-text {
     flex: 1;
}
 .value-text h4 {
     margin: 0 0 8px;
     color: #222;
     font-family: "Playfair Display", serif;
     font-size: 21px;
     font-weight: 600;
}
 .value-text p {
     margin: 0;
     color: #444;
     font-size: 14px;
     line-height: 1.7;
}
 .value-text > * {
     color: #444;
}
 .value-image {
     width: 100%;
     height: 420px;
     overflow: hidden;
     border-radius: 8px;
     position: relative;
     overflow: hidden;
}
 .value-image::after {
     content: "";
     position: absolute;
     inset: 0;
     background: linear-gradient( to right, rgba(255, 255, 255, 9), rgba(255, 255, 255, 0.9), transparent 55% );
     pointer-events: none;
}
 .value-image img {
     width: 100%;
     height: 100%;
     display: block;
     object-fit: cover;
     transition: transform 0.4s ease;
}
 @media (max-width: 768px) {
     .value-image {
         height: 320px;
    }
     .value-text h4 {
         font-size: 18px;
    }
     .value-text p, .value-text {
         font-size: 13px;
    }
}
/* ========================= MOBILE ========================= */
 @media (max-width: 576px) {
     .values-box {
         padding: 20px;
    }
     .values-box .box-title {
         margin-bottom: 25px;
    }
     .values-list .value-item {
         grid-template-columns: 1fr;
         gap: 20px;
         padding: 25px 0;
    }
     .value-content {
         gap: 14px;
    }
     .value-icon {
         flex: 0 0 38px;
         width: 38px;
         height: 38px;
         font-size: 17px;
    }
     .value-text h4 {
         font-size: 18px;
    }
     .value-image {
         height: 200px;
    }
     .value-image img {
         object-fit: cover;
    }
}
 .journey {
     padding: 40px 0;
     background: #a01f22;
}
 .section-heading {
     text-align: center;
     margin-bottom: 30px;
}
 .section-heading span {
     color: var(--gold);
     text-transform: uppercase;
     font-size: 12px;
     font-weight: 700;
}
 .section-heading h2 {
     font-size: 40px;
     margin-top: 5px;
}
 .timeline {
     display: grid;
     grid-template-columns: repeat(4, 1fr);
     position: relative;
}
 .timeline::before {
     content: "";
     position: absolute;
     height: 1px;
     background: var(--gold);
     top: 35px;
     left: 12%;
     right: 12%;
}
 .timeline-item {
     text-align: center;
     position: relative;
     z-index: 2;
     padding: 0 20px;
}
 .timeline-icon {
     width: 70px;
     height: 70px;
     border-radius: 50%;
     margin: auto;
     display: grid;
     place-items: center;
     border: 1px solid var(--gold);
     background: #071015;
     color: var(--gold);
     font-size: 25px;
}
 .timeline-item strong {
     color: var(--gold2);
     display: block;
     font-size: 20px;
     margin-top: 15px;
}
 .timeline-item h4 {
     font-family: "Playfair Display";
     margin: 4px 0;
     font-size: 18px;
}
 .timeline-item p {
     font-size: 12px;
     color: var(--muted);
}
/* Why Choose */
 .choose {
     padding: 40px 0;
     background-image: url('../../uploads/images/ganesh.jpeg');
     background-position: right center;
     background-size: contain;
     background-repeat: no-repeat;
     position: relative;
}
 .choose .container {
     position: relative;
     overflow: hidden;
}
 .choose .overlay-choose{
     content: "";
     position: absolute;
     left: 0;
     top: 0;
     width: 45%;
     height: 100%;
     background: linear-gradient( to right, rgba(0, 0, 0, 0.18), rgba(0, 0, 0, 0.08), transparent );
     pointer-events: none;
     z-index: 1;
}
 .choose-content{
     max-width: 700px;
}
 .choose-content .label {
     color: var(--gold);
     font-size: 12px;
     text-transform: uppercase;
     font-weight: 700;
}
 .choose-content h2 {
     font-size: 25px;
     margin: 5px 0 10px;
     color: #222;
}
 .choose-list {
     display: grid;
     grid-template-columns: 1fr;
     gap: 10px ;
}
 .choose-content p{
     color: #333;
     font-size:13px;
}
 .choose-list li {
     color: #222;
     font-size: 13px;
     padding: 8px 0px;
}
/* CTA */
 .cta {
     background: #071015;
     padding: 22px 0;
     border-top: 1px solid var(--border);
     border-bottom: 1px solid var(--border);
}
 .cta-box {
     border: 1px solid var(--border);
     border-radius: 7px;
     padding: 24px 30px;
     display: flex;
     justify-content: space-between;
     align-items: center;
}
 .cta-left {
     display: flex;
     align-items: center;
     gap: 18px;
}
 .phone-circle {
     width: 60px;
     height: 60px;
     border: 2px solid var(--gold);
     border-radius: 50%;
     display: grid;
     place-items: center;
     color: var(--gold);
     font-size: 25px;
}
 .cta-left h3 {
     font-size: 23px;
}
 .blog-section {
     padding: 40px 0 ;
     background: #fdfaf6;
}
 .blog-layout {
     display: grid;
     grid-template-columns: 2.2fr 0.9fr;
     gap: 30px;
     align-items: start;
}
 .blog-main {
     border: 1px solid var(--border);
     border-radius: 8px;
     background: #f8f5f1;
     padding: 24px;
}
 .blog-main > h2 {
     font-size: 31px;
     margin-bottom: 22px;
}
 .article {
     display: grid;
     grid-template-columns: 240px 1fr;
     gap: 22px;
     padding: 20px 0;
     border-bottom: 1px solid var(--border);
}
 .article:first-of-type {
     padding-top: 0;
}
 .article img {
     height: 155px;
     object-fit: cover;
     border-radius: 6px;
     border: 1px solid var(--border);
}
 .article-tag {
     color: var(--gold2);
     text-transform: uppercase;
     font-size: 10px;
     font-weight: 700;
     margin-bottom: 0px;
}
 .article h3 {
     font-size: 20px;
     margin-bottom: 0px;
}
 .article p {
     color: #000;
     font-size: 12px;
     margin-bottom: 10px;
}
 .article-meta {
     display: flex;
     flex-wrap: wrap;
     gap: 22px;
     color: #aaa;
     font-size: 10px;
     margin-bottom: 9px;
}
 .read-more {
     color: var(--gold2);
     font-size: 10px;
     font-weight: 700;
}
/* PAGINATION */
 .pagination {
     display: flex;
     align-items: center;
     gap: 8px;
     margin-top: 25px;
}
 .pagination a {
     width: 35px;
     height: 35px;
     display: grid;
     place-items: center;
     border: 1px solid #394147;
     border-radius: 4px;
     font-size: 11px;
     color: #ddd;
}
 .pagination a.active {
     background: var(--gold2);
     color: #111;
     border-color: var(--gold2);
}
 .pagination a.next {
     width: auto;
     padding: 0 14px;
}
/* SIDEBAR */
 .sidebar {
     display: flex;
     flex-direction: column;
     gap: 22px;
}
 .sidebar-box {
     border: 1px solid var(--border);
     border-radius: 7px;
     background: #fdfaf6;
     padding: 20px;
}
 .search-box {
     position: relative;
}
 .search-box input {
     width: 100%;
     height: 44px;
     background: #040a0e;
     border: 1px solid #303a3f;
     border-radius: 4px;
     padding: 0 43px 0 12px;
     color: white;
     outline: none;
}
 .search-box button {
     position: absolute;
     right: 4px;
     top: 4px;
     width: 36px;
     height: 36px;
     border: none;
     background: transparent;
     color: var(--gold2);
     cursor: pointer;
}
 .sidebar-title {
     font-size: 23px;
     margin: 20px 0 12px;
}
 .sidebar-title::after {
     content: "";
     width: 45px;
     height: 2px;
     display: block;
     background: var(--gold);
     margin-top: 8px;
}
 .category-list li {
     display: flex;
     justify-content: space-between;
     padding: 10px 0;
     border-bottom: 1px solid rgba(255, 255, 255, 0.07);
     color: #ccc;
     font-size: 13px;
}
 .category-list li span:first-child::before {
     content: "›";
     color: var(--gold);
     margin-right: 7px;
}
 .popular-post {
     display: flex;
     gap: 12px;
     padding: 10px 0;
     border-bottom: 1px solid rgba(255, 255, 255, 0.07);
}
 .popular-post img {
     width: 72px;
     height: 60px;
     object-fit: cover;
     border-radius: 5px;
}
 .popular-post h4 {
     font-size: 12px;
     line-height: 1.35;
}
 .popular-post small {
     color: #9f9f9f;
     font-size: 9px;
}
/* GUIDANCE CTA */
 .guidance-box {
     padding: 28px;
     min-height: 290px;
     background: linear-gradient(rgba(3, 8, 11, 0.78), rgba(3, 8, 11, 0.9)), url("images/sidebar-zodiac.jpg") center/cover no-repeat;
     border: 1px solid var(--border);
     border-radius: 7px;
     display: flex;
     flex-direction: column;
     justify-content: center;
}
 .guidance-box h3 {
     color: var(--gold2);
     font-size: 26px;
     line-height: 1.25;
     margin-bottom: 13px;
}
 .guidance-box p {
     color: #ddd;
     font-size: 12px;
     margin-bottom: 20px;
}
 .booking-section {
     padding: 25px 0 45px;
     background: #050b0e;
}
 .booking-layout {
     display: grid;
     grid-template-columns: 2fr 1fr;
     gap: 28px;
     align-items: start;
}
 .booking-card, .side-card {
     background: #071015;
     border: 1px solid var(--border);
     border-radius: 8px;
}
 .booking-card {
     padding: 28px;
}
 .booking-title {
     text-align: center;
     font-size: 31px;
     margin-bottom: 28px;
}
 .booking-title::after {
     content: "";
     display: block;
     width: 65px;
     height: 2px;
     background: var(--gold);
     margin: 10px auto 0;
}
 .booking-steps {
     display: grid;
     grid-template-columns: repeat(4, 1fr);
     margin-bottom: 30px;
     position: relative;
}
 .booking-steps::before {
     content: "";
     position: absolute;
     height: 1px;
     background: var(--gold);
     left: 8%;
     right: 8%;
     top: 18px;
     opacity: 0.55;
}
 .step {
     text-align: center;
     position: relative;
     z-index: 2;
}
 .step-circle {
     width: 38px;
     height: 38px;
     border-radius: 50%;
     background: #1a1e20;
     border: 1px solid #666;
     margin: auto;
     display: grid;
     place-items: center;
     font-size: 11px;
}
 .step.active .step-circle {
     background: var(--gold2);
     border-color: var(--gold2);
     color: #111;
     font-weight: 700;
}
 .step span {
     display: block;
     margin-top: 7px;
     font-size: 10px;
     color: #ddd;
}
/* FORM */
 .form-section-title {
     color: var(--gold2);
     font-family: "Playfair Display";
     font-size: 18px;
     margin: 22px 0 12px;
}
 .form-row {
     display: grid;
     grid-template-columns: 1fr 1fr;
     gap: 14px;
}
 .form-group {
     margin-bottom: 13px;
}
 .form-group label {
     display: block;
     color: #eee;
     font-size: 10px;
     margin-bottom: 6px;
}
 .required {
     color: #e55b38;
}
 .input-wrap {
     position: relative;
}
 .input-icon {
     position: absolute;
     left: 12px;
     top: 50%;
     transform: translateY(-50%);
     color: var(--gold2);
     font-size: 14px;
}
 .appointment-form input, .appointment-form select, .appointment-form textarea {
     width: 100%;
     border: 1px solid #303a3f;
     border-radius: 4px;
     background: #030a0e;
     color: white;
     outline: none;
}
 .appointment-form input, .appointment-form select {
     height: 44px;
     padding: 0 12px;
}
 .with-icon {
     padding-left: 38px !important;
}
 .appointment-form textarea {
     min-height: 108px;
     padding: 12px;
     resize: vertical;
}
 .appointment-form input:focus, .appointment-form select:focus, .appointment-form textarea:focus {
     border-color: var(--gold);
}
/* SERVICE SELECT */
 .service-select-grid {
     display: grid;
     grid-template-columns: repeat(4, 1fr);
     gap: 10px;
}
 .service-option input {
     display: none;
}
 .service-option label {
     min-height: 92px;
     display: flex;
     flex-direction: column;
     align-items: center;
     justify-content: center;
     gap: 7px;
     text-align: center;
     border: 1px solid var(--border);
     border-radius: 5px;
     background: #050c10;
     cursor: pointer;
     transition: 0.25s;
}
 .service-option label:hover {
     border-color: var(--gold);
}
 .service-option input:checked + label {
     background: rgba(215, 165, 54, 0.08);
     border-color: var(--gold2);
     box-shadow: 0 0 0 1px var(--gold2);
}
 .service-option span {
     font-size: 10px;
     color: #eee;
     line-height: 1.2;
}
 .next-btn {
     width: 300px;
     max-width: 100%;
     margin-top: 12px;
}
/* SIDEBAR */
 .sidebar {
     display: flex;
     flex-direction: column;
     gap: 16px;
}
 .side-card {
     padding: 25px;
}
 .side-card h2 {
     text-align: center;
     font-size: 27px;
     line-height: 1.25;
     margin-bottom: 20px;
}
 .side-card h2::after {
     content: "";
     width: 60px;
     height: 2px;
     background: var(--gold);
     display: block;
     margin: 10px auto 0;
}
 .benefit-list li {
     display: flex;
     align-items: center;
     gap: 13px;
     margin: 16px 0;
     font-size: 12px;
     color: #e0e0e0;
}
 .benefit-icon {
     width: 37px;
     height: 37px;
     min-width: 37px;
     border: 1px solid var(--gold);
     border-radius: 50%;
     display: grid;
     place-items: center;
     color: var(--gold2);
}
 .detail-item {
     display: flex;
     gap: 13px;
     margin: 18px 0;
     align-items: flex-start;
}
 .detail-icon {
     color: var(--gold2);
     font-size: 20px;
     min-width: 25px;
}
 .detail-item strong {
     display: block;
     font-size: 11px;
     margin-bottom: 2px;
}
 .detail-item span {
     color: #bbb;
     font-size: 11px;
}
 .help-card {
     padding: 25px;
     background: linear-gradient(90deg, #071015, rgba(7, 16, 21, 0.8)), url("images/zodiac-pattern.png") right center/230px no-repeat;
}
 .help-row {
     display: flex;
     gap: 15px;
     align-items: center;
}
 .help-icon {
     width: 55px;
     height: 55px;
     border: 2px solid var(--gold);
     border-radius: 50%;
     display: grid;
     place-items: center;
     color: var(--gold2);
     font-size: 23px;
}
 .help-card h3 {
     color: var(--gold2);
     font-size: 17px;
}
 .help-card p {
     color: #ddd;
     font-size: 11px;
     margin: 5px 0 15px;
}
 .call-btn {
     width: 100%;
     font-size: 17px;
}
/* ========================================= BOOKING TRUST ========================================= */
 .bookingTrust {
     padding: 22px 0;
     background: #071015;
     border-top: 1px solid rgba(213,164,55,.14);
     border-bottom: 1px solid rgba(213,164,55,.14);
}
/* Main bar */
 .bookingTrust__inner {
     display: grid;
     grid-template-columns: repeat(4, 1fr);
     background: #050b0e;
     border: 1px solid rgba(255,255,255,.06);
     border-radius: 6px;
     overflow: hidden;
}
/* Item */
 .bookingTrust__item {
     position: relative;
     display: flex;
     align-items: center;
     gap: 13px;
     min-height: 82px;
     padding: 15px 20px;
}
/* Separators */
 .bookingTrust__item:not(:last-child)::after {
     content: "";
     position: absolute;
     top: 18px;
     right: 0;
     bottom: 18px;
     width: 1px;
     background: rgba(255,255,255,.07);
}
/* Icon */
 .bookingTrust__icon {
     flex: 0 0 auto;
     width: 42px;
     height: 42px;
     display: grid;
     place-items: center;
     color: var(--gold);
     border: 1px solid rgba(213,164,55,.3);
     border-radius: 50%;
     background: rgba(213,164,55,.035);
     font-size: 18px;
     transition: background .25s ease, color .25s ease, transform .25s ease;
}
 .bookingTrust__item:hover .bookingTrust__icon {
     color: #111;
     background: var(--gold);
     transform: scale(1.05);
}
 .bookingTrust__content strong {
     display: block;
     margin-bottom: 5px;
     color: #e8e8e8;
     font-family: "Playfair Display", serif;
     font-size: 13px;
     font-weight: 600;
}
 .bookingTrust__content span {
     display: block;
     color: #697275;
     font-size:11px;
     line-height: 1.5;
}
 .horoscope-form-wrap {
     position: relative;
     z-index: 20;
     margin-top: -38px;
     padding-bottom: 15px;
}
 .horoscope-form {
     position: relative;
     display: grid;
     grid-template-columns: 1.45fr 1fr 1fr 1fr 1fr auto;
     align-items: end;
     gap: 15px;
     padding: 20px 22px;
     background: linear-gradient( 135deg, #0a1419 0%, #050c10 100% );
     border: 1px solid rgba(213,164,55,.45);
     border-radius: 8px;
     box-shadow: 0 20px 45px rgba(0,0,0,.4);
     overflow: hidden;
}
/* Gold shine */
 .horoscope-form::before {
     content: "";
     position: absolute;
     top: 0;
     left: 0;
     right: 0;
     height: 2px;
     background: linear-gradient( 90deg, transparent, var(--gold), transparent );
     opacity: .8;
}
/* ========================================= TITLE ========================================= */
 .form-title {
     display: flex;
     align-items: center;
     gap: 13px;
     min-width: 0;
     padding-right: 15px;
     border-right: 1px solid rgba(255,255,255,.08);
}
 .form-title-icon {
     flex: 0 0 auto;
     width: 52px;
     height: 52px;
     display: grid;
     place-items: center;
     color: var(--gold);
     border: 1px solid rgba(213,164,55,.4);
     border-radius: 50%;
     background: radial-gradient( circle, rgba(213,164,55,.12), transparent 70% );
     font-size: 17px;
     box-shadow: 0 0 20px rgba(213,164,55,.05);
}
 .form-title-content {
     min-width: 0;
}
 .form-title span {
     display: block;
     margin-bottom: 2px;
     color: #9b9fa0;
     font-size: 9px;
     text-transform: uppercase;
     letter-spacing: 1.5px;
}
 .form-title strong {
     display: block;
     color: var(--gold-2);
     font-family: "Playfair Display", serif;
     font-size: 20px;
     line-height: 1.1;
}
 .form-title small {
     display: block;
     margin-top: 5px;
     color: #626b6e;
     font-size: 8px;
     white-space: nowrap;
}
 .form-field label {
     display: block;
     margin-bottom: 7px;
     color: #aeb4b6;
     font-size: 9px;
     font-weight: 600;
     letter-spacing: .3px;
}
 .input-box {
     position: relative;
     width: 100%;
}
 .input-box i {
     position: absolute;
     left: 11px;
     top: 50%;
     transform: translateY(-50%);
     color: var(--gold);
     font-size: 10px;
     pointer-events: none;
     z-index: 2;
}
 .form-field input {
     width: 100%;
     height: 41px;
     padding: 0 10px 0 30px;
     color: #eee;
     background: #040a0e;
     border: 1px solid #273238;
     border-radius: 4px;
     outline: none;
     font-family: inherit;
     font-size: 10px;
     transition: border-color .25s ease, background .25s ease, box-shadow .25s ease;
}
 .form-field input::placeholder {
     color: #596265;
}
 .form-field input:focus {
     background: #050d11;
     border-color: rgba(213,164,55,.7);
     box-shadow: 0 0 0 2px rgba(213,164,55,.06);
}
/* Date/time browser icons */
 .form-field input::-webkit-calendar-picker-indicator {
     filter: invert(70%) sepia(50%) saturate(500%) hue-rotate(355deg);
     opacity: .7;
     cursor: pointer;
}
 .horoscope-btn {
     height: 41px;
     display: inline-flex;
     align-items: center;
     justify-content: center;
     gap: 9px;
     padding: 0 20px;
     border: 0;
     border-radius: 4px;
     background: linear-gradient( 135deg, #e3c25b, #c39128 );
     color: #101010;
     font-family: inherit;
     font-size: 9px;
     font-weight: 800;
     letter-spacing: .7px;
     white-space: nowrap;
     cursor: pointer;
     transition: transform .25s ease, box-shadow .25s ease;
}
 .horoscope-btn i {
     font-size: 9px;
     transition: transform .25s ease;
}
 .horoscope-btn:hover {
     transform: translateY(-2px);
     box-shadow: 0 8px 20px rgba(213,164,55,.22);
}
 .horoscope-btn:hover i {
     transform: translateX(4px);
}
/* ========================================= SECTION TITLE ========================================= */
 .section-title {
     max-width: 700px;
     margin: 0 auto 40px;
     text-align: center;
}
 .section-title span {
     display: inline-flex;
     align-items: center;
     gap: 10px;
     color: var(--gold);
     font-size: 10px;
     font-weight: 700;
     text-transform: uppercase;
     letter-spacing: 2px;
}
 .section-title span::before, .section-title span::after {
     content: "";
     width: 24px;
     height: 1px;
     background: var(--gold);
     opacity: .6;
}
 .section-title h2 {
     margin: 8px 0 0;
     color: #000;
     font-family: "Playfair Display", serif;
     font-weight: 600;
     line-height: 1.15;
}
 .section-title h2::after {
     content: "";
     display: block;
     width: 55px;
     height: 2px;
     margin: 14px auto 0;
     background: linear-gradient( 90deg, transparent, var(--gold), transparent );
}
 .horoscopeProcess {
     padding: 40px 0;
     background: #fdfaf6;
     overflow: hidden;
}
 .processTimeline {
     position: relative;
     display: grid;
     grid-template-columns: repeat(4, 1fr);
     max-width: 1050px;
     margin: 30px auto 0;
}
 .processTimeline::before {
     content: "";
     position: absolute;
     top: 29px;
     left: 12%;
     right: 12%;
     height: 1px;
     background: linear-gradient( 90deg, transparent, rgba(213,164,55,.55), rgba(213,164,55,.55), transparent );
}
 .processStep {
     position: relative;
     padding: 0 25px;
     text-align: center;
}
 .processStep__top {
     position: relative;
     height: 75px;
     display: flex;
     justify-content: center;
     align-items: flex-start;
}
 .processStep__number {
     position: absolute;
     top: -28px;
     color: rgba(213,164,55,.3);
     font-size: 9px;
     font-weight: 600;
     letter-spacing: 1.5px;
}
 .processStep__icon {
     position: relative;
     z-index: 2;
     width: 58px;
     height: 58px;
     display: grid;
     place-items: center;
     border-radius: 50%;
     color: var(--gold);
     background: #03090c;
     border: 1px solid rgba(213,164,55,.65);
     box-shadow: 0 0 0 7px #03090c, 0 0 25px rgba(213,164,55,.05);
     font-size: 16px;
     transition: all .3s ease;
}
 .processStep:hover .processStep__icon {
     color: #080808;
     background: var(--gold);
     transform: translateY(-4px);
     box-shadow: 0 0 0 7px #03090c, 0 8px 25px rgba(213,164,55,.18);
}
 .processStep__content {
     padding-top: 13px;
}
 .processStep__content h3 {
     margin: 0 0 9px;
     color: #000;
     font-size: 14px;
     font-weight: 600;
     line-height: 1.3;
}
 .processStep__content p {
     max-width: 190px;
     margin: auto;
     color: #747d80;
     font-size: 10px;
     line-height: 1.7;
}
 .processStep__content::after {
     content: "";
     display: block;
     width: 0;
     height: 2px;
     margin: 18px auto 0;
     background: var(--gold);
     transition: width .3s ease;
}
 .processStep:hover .processStep__content::after {
     width: 35px;
}
 .horoscopeReports {
     padding: 40px 0;
     background: #fdfaf6;
}
 .reportsGrid {
     display: grid;
     grid-template-columns: repeat(3, 1fr);
     gap: 16px;
     margin-top: 25px;
}
 .reportCard {
     position: relative;
     min-height: 190px;
     display: flex;
     flex-direction: column;
     padding: 20px 16px;
     text-decoration: none;
     background: #fdfaf6;
     border: 1px solid rgba(255,255,255,.07);
     border-radius: 7px;
     overflow: hidden;
     transition: transform .3s ease, border-color .3s ease, background .3s ease;
}
 .reportCard::after {
     content: "";
     position: absolute;
     width: 130px;
     height: 130px;
     right: -55px;
     top: -55px;
     border-radius: 50%;
     background: rgba(213,164,55,.06);
     transition: transform .4s ease;
}
 .reportCard:hover {
     transform: translateY(-5px);
     border-color: rgba(213,164,55,.4);
     background: #a01f22;
}
 .reportCard:hover::after {
     transform: scale(1.5);
}
/* ========================================= ICON ========================================= */
 .reportCard__icon {
     width: 54px;
     height: 54px;
     display: grid;
     place-items: center;
     margin-bottom: 15px;
     color: var(--gold);
     border: 1px solid rgba(213,164,55,.4);
     border-radius: 50%;
     background: rgba(213,164,55,.04);
     font-size: 30px;
     transition: background .3s ease, color .3s ease, transform .3s ease;
}
 .reportCard:hover .reportCard__icon {
     color: #111;
     background: var(--gold);
     transform: rotate(8deg);
}
/* ========================================= CONTENT ========================================= */
 .reportCard__content {
     position: relative;
     z-index: 2;
}
 .reportCard__content h3 {
     margin: 0 0 9px;
     color: #000;
     font-family: "Playfair Display", serif;
     font-size: 19px;
     font-weight: 600;
}
 .reportCard__content p {
     max-width: 290px;
     margin: 0;
     color: #7d8588;
     font-size: 12px;
     line-height: 1.75;
}
 .reportCard__link {
     position: relative;
     z-index: 2;
     display: inline-flex;
     align-items: center;
     gap: 8px;
     margin-top: auto;
     padding-top: 22px;
     color: var(--gold);
     font-size: 9px;
     font-weight: 700;
     letter-spacing: .8px;
     text-transform: uppercase;
}
 .reportCard__link i {
     font-size: 8px;
     transition: transform .25s ease;
}
 .reportCard:hover .reportCard__link i {
     transform: translateX(5px);
}
/* ========================================= BOTTOM GOLD LINE ========================================= */
 .reportCard::before {
     content: "";
     position: absolute;
     left: 25px;
     right: 25px;
     bottom: 0;
     height: 2px;
     background: var(--gold);
     transform: scaleX(0);
     transform-origin: left;
     transition: transform .35s ease;
}
 .reportCard:hover::before {
     transform: scaleX(1);
}
 .section-title {
     text-align: center;
     margin-bottom: 38px;
}
 .section-title span {
     color: #A01F22;
     font-size: 12px;
     text-transform: uppercase;
     font-weight: 700;
     letter-spacing: 1.3px;
}
 .section-title h2 {
     font-size: 30px;
     margin-top: 0px;
}
 .section-title h2::after {
     content: "";
     display: block;
     width: 70px;
     height: 2px;
     background: var(--gold);
     margin: 14px auto 0;
}
/* SERVICES */
 .services {
     padding: 40px 0;
     background: radial-gradient(circle at center, rgba(213, 164, 55, 0.05), transparent 45%), #fdfaf6;
}
 .services-grid {
     display: grid;
     grid-template-columns: repeat(4, 1fr);
     gap: 16px;
}
 .process {
     padding: 40px 0;
     background: #050b0e;
}
 .steps {
     display: grid;
     grid-template-columns: repeat(4, 1fr);
     position: relative;
}
 .steps::before {
     content: "";
     height: 1px;
     background: var(--gold);
     position: absolute;
     top: 40px;
     left: 10%;
     right: 10%;
     opacity: 0.75;
}
 .step {
     text-align: center;
     position: relative;
     z-index: 2;
     padding: 0 20px;
}
 .step-icon {
     width: 80px;
     height: 80px;
     margin: auto;
     border-radius: 50%;
     border: 1px solid var(--gold);
     background: #050b0e;
     display: grid;
     place-items: center;
     font-size: 28px;
     color: var(--gold);
}
 .step-number {
     color: var(--gold2);
     font-size: 18px;
     font-weight: 700;
     display: block;
     margin-top: 12px;
}
 .step h3 {
     font-size: 19px;
     margin: 5px 0;
}
 .step p {
     color: var(--muted);
     font-size: 12px;
}
 .trustOrbit {
     position: relative;
     padding: 40px 0;
     overflow: hidden;
     background: radial-gradient( circle at center, rgba(213,164,55,.055), transparent 38% ), #03090c;
}
 .trustOrbit__heading {
     text-align: center;
     margin-bottom: 25px;
}
 .trustOrbit__heading span {
     color: var(--gold);
     font-size: 10px;
     font-weight: 600;
     letter-spacing: 2.5px;
}
 .trustOrbit__heading h2 {
     margin: 12px 0 0;
     color: #fff;
     font-size: 40px;
     line-height: 1.15;
}
 .trustOrbit__heading em {
     display: block;
     color: var(--gold-2);
     font-style: normal;
}
 .trustOrbit__area {
     display: grid;
     grid-template-columns: 1fr 320px 1fr;
     align-items: center;
     gap: 45px;
     max-width: 1150px;
     margin: auto;
}
 .trustOrbit__center {
     display: flex;
     justify-content: center;
     align-items: center;
}
 .trustOrbit__circle {
     position: relative;
     width: 260px;
     height: 260px;
     display: grid;
     place-items: center;
     border-radius: 50%;
     background: radial-gradient( circle, rgba(213,164,55,.13), rgba(213,164,55,.025) 55%, transparent 70% );
}
 .trustOrbit__ring {
     position: absolute;
     inset: 0;
     border: 1px solid rgba(213,164,55,.35);
     border-radius: 50%;
}
 .trustOrbit__ring::before {
     content: "";
     position: absolute;
     inset: 14px;
     border: 1px dashed rgba(213,164,55,.22);
     border-radius: 50%;
     animation: orbitSpin 25s linear infinite;
}
 @keyframes orbitSpin {
     to {
         transform: rotate(360deg);
    }
}
 .trustOrbit__core {
     width: 170px;
     height: 170px;
     display: flex;
     flex-direction: column;
     align-items: center;
     justify-content: center;
     text-align: center;
     border-radius: 50%;
     background: radial-gradient( circle at 35% 30%, #182025, #050b0e );
     border: 1px solid rgba(213,164,55,.5);
     box-shadow: 0 0 50px rgba(213,164,55,.08);
}
 .trustOrbit__core i {
     margin-bottom: 10px;
     color: var(--gold);
     font-size: 19px;
}
 .trustOrbit__core strong {
     color: #fff;
     font-size: 12px;
     letter-spacing: 2px;
}
 .trustOrbit__core span {
     margin-top: 5px;
     color: #777f82;
     font-size: 8px;
     letter-spacing: 1.5px;
}
/* ================================= SIDE ================================= */
 .trustOrbit__side {
     display: flex;
     flex-direction: column;
     gap: 8px;
}
 .trustPoint {
     display: flex;
     align-items: flex-start;
     gap: 16px;
     padding: 20px 0;
     border-bottom: 1px solid rgba(255,255,255,.07);
     transition: all .3s ease;
}
 .trustPoint:last-child {
     border-bottom: 0;
}
 .trustPoint > span {
     flex: 0 0 auto;
     color: var(--gold);
     font-size:13px;
     letter-spacing:1px;
     padding-top: 3px;
     opacity: .65;
}
 .trustPoint strong {
     display: block;
     margin-bottom: 5px;
     color: #eee;
     font-size: 13px;
     font-weight: 600;
}
 .trustPoint p {
     margin: 0;
     color: #727b7e;
     font-size: 10px;
     line-height: 1.6;
}
 .trustPoint:hover {
     padding-left: 8px;
}
 .trustPoint:hover strong {
     color: var(--gold);
}
 .trustOrbit__side--right .trustPoint {
     flex-direction: row-reverse;
     text-align: right;
}
 .trustOrbit__side--right .trustPoint:hover {
     padding-left: 0;
     padding-right: 8px;
}
 .benefitJourney {
     padding: 40px 0;
     background: #fdfaf6;
}
 .journey {
     position: relative;
     display: grid;
     grid-template-columns: repeat(5, 1fr);
     margin-top: 25px;
     border-top: 1px solid rgba(213,164,55,.35);
}
 .journeyItem {
     position: relative;
     padding: 0 20px;
     border-right: 1px solid rgba(255,255,255,.07);
     transition: background .3s ease;
}
 .journeyItem:first-child {
     border-left: 1px solid rgba(255,255,255,.07);
}
 .journeyItem:hover {
     background: rgba(213,164,55,.025);
}
 .journeyTop {
     position: relative;
     height: 65px;
     display: flex;
     justify-content: center;
     align-items: flex-start;
}
 .journeyTop::before {
     content: "";
     position: absolute;
     top: 0;
     width: 1px;
     height: 18px;
     background: var(--gold);
     opacity: .5;
}
 .journeyDot {
     position: relative;
     z-index: 2;
     margin-top: 18px;
     width: 38px;
     height: 38px;
     display: grid;
     place-items: center;
     border-radius: 50%;
     color: var(--gold);
     background: #050b0e;
     border: 1px solid rgba(213,164,55,.6);
     box-shadow: 0 0 0 5px #050b0e;
     font-size: 12px;
     transition: all .3s ease;
}
 .journeyItem:hover .journeyDot {
     color: #080808;
     background: var(--gold);
     transform: scale(1.08);
}
 .journeyContent {
     text-align: center;
     padding: 15px 3px 0;
}
 .journeyContent h3 {
     margin: 0 0 9px;
     color: #eee;
     font-size: 15px;
     line-height: 1.3;
     font-weight: 600;
}
 .journeyContent p {
     margin: 0;
     color: #70797c;
     font-size: 12px;
     line-height: 1.7;
}
 .journeyItem::after {
     content: "";
     position: absolute;
     left: 0;
     bottom: 0;
     width: 0;
     height: 2px;
     background: var(--gold);
     transition: width .3s ease;
}
 .journeyItem:hover::after {
     width: 100%;
}
 .appointmentSection {
     padding: 85px 0;
     background:#fdfaf6;
}
 .appointmentIntro {
     max-width: 700px;
     margin: 0 auto 50px;
     text-align: center;
}
 .appointmentIntro > span {
     display: block;
     margin-bottom: 8px;
     color: var(--gold);
     font-size: 11px;
     font-weight: 700;
     letter-spacing: 2px;
}
 .appointmentIntro h1 {
     margin: 0 0 12px;
     color: #f2f2f2;
     font-family: "Playfair Display", serif;
     font-size: clamp(34px, 4vw, 46px);
     line-height: 1.15;
}
 .appointmentIntro p {
     max-width: 580px;
     margin: auto;
     color: #858d90;
     font-size: 13px;
     line-height: 1.8;
}
/* ========================================= MAIN LAYOUT ========================================= */
 .appointmentLayout {
     display: grid;
     grid-template-columns: minmax(0, 1fr) 350px;
     gap: 24px;
     align-items: start;
}
/* ========================================= MAIN CARD ========================================= */
 .appointmentMain {
     overflow: hidden;
     background: #fdfaf6;
     border: 1px solid rgba(255,255,255,.07);
     border-radius: 9px;
}
/* ========================================= TOP ========================================= */
 .appointmentTop {
     display: flex;
     align-items: center;
     justify-content: space-between;
     padding: 30px 32px;
     border-bottom: 1px solid rgba(255,255,255,.07);
}
 .appointmentTop > div:first-child > span {
     display: block;
     margin-bottom: 6px;
     color: var(--gold);
     font-size: 10px;
     font-weight: 700;
     letter-spacing: 1.7px;
}
 .appointmentTop h2 {
     margin: 0;
     color: #000;
     font-family: "Playfair Display", serif;
     font-size: 27px;
}
 .secureBadge {
     display: flex;
     align-items: center;
     gap: 7px;
     padding: 9px 12px;
     color: #000;
     background: rgba(213,164,55,.05);
     border: 1px solid rgba(213,164,55,.16);
     border-radius: 30px;
     font-size: 10px;
}
 .secureBadge i {
     color: var(--gold);
}
/* ========================================= PROGRESS ========================================= */
 .bookingProgress {
     display: flex;
     align-items: center;
     padding: 24px 32px;
     border-bottom: 1px solid rgba(255,255,255,.06);
     background: rgba(0,0,0,.08);
}
 .progressItem {
     display: flex;
     align-items: center;
     gap: 9px;
     white-space: nowrap;
}
 .progressCircle {
     width: 34px;
     height: 34px;
     display: grid;
     place-items: center;
     border: 1px solid #303a3e;
     border-radius: 50%;
     color: #687174;
     font-size: 11px;
     transition: .3s ease;
}
 .progressItem span {
     color: #6f787b;
     font-size: 10px;
     font-weight: 600;
}
 .progressItem.active .progressCircle {
     color: #111;
     background: var(--gold);
     border-color: var(--gold);
}
 .progressItem.active span {
     color: var(--gold);
}
 .progressLine {
     flex: 1;
     height: 1px;
     min-width: 18px;
     margin: 0 10px;
     background: #283136;
}
/* ========================================= FORM ========================================= */
 .appointmentForm {
     padding: 34px 32px;
}
/* ========================================= SECTION TITLE ========================================= */
 .bookingSectionTitle {
     display: flex;
     align-items: center;
     gap: 13px;
     margin-bottom: 22px;
}
 .bookingSectionTitle.sectionGap {
     margin-top: 42px;
}
 .bookingSectionTitle > span {
     width: 38px;
     height: 38px;
     display: grid;
     place-items: center;
     flex: none;
     color: var(--gold);
     background: rgba(213,164,55,.06);
     border: 1px solid rgba(213,164,55,.25);
     border-radius: 50%;
     font-size: 11px;
     font-weight: 700;
}
 .bookingSectionTitle small {
     display: block;
     margin-bottom: 3px;
     color: #6e777a;
     font-size: 9px;
     font-weight: 700;
     letter-spacing: 1.2px;
}
 .bookingSectionTitle h3 {
     margin: 0;
     color: #000;
     font-family: "Playfair Display", serif;
     font-size: 20px;
}
/* ========================================= FORM GRID ========================================= */
 .bookingFormGrid {
     display: grid;
     grid-template-columns: 1fr 1fr;
     gap: 19px;
}
 .bookingField.fullWidth {
     grid-column: 1 / -1;
}
 .bookingField label {
     display: block;
     margin-bottom: 8px;
     color: #000;
     font-size: 11px;
     font-weight: 600;
}
 .bookingField label b {
     color: var(--gold);
     font-weight: 400;
}
/* ========================================= INPUTS ========================================= */
 .bookingField input, .bookingField textarea {
     width: 100%;
     height: 46px;
     padding: 0 13px;
     color: #eee;
     background: #fff;
     border: 1px solid #2a3539;
     border-radius: 4px;
     outline: none;
     font-family: inherit;
     font-size: 12px;
     transition: .25s ease;
}
 .bookingField textarea {
     height: 105px;
     padding: 13px;
     resize: vertical;
}
 .bookingInput {
     position: relative;
}
 .bookingInput i {
     position: absolute;
     left: 14px;
     top: 50%;
     transform: translateY(-50%);
     color: var(--gold);
     font-size: 11px;
     pointer-events: none;
}
 .bookingInput input {
     padding-left: 38px;
}
 .bookingField input::placeholder, .bookingField textarea::placeholder {
     color: #5c666a;
}
 .bookingField input:focus, .bookingField textarea:focus {
     border-color: rgba(213,164,55,.6);
     box-shadow: 0 0 0 2px rgba(213,164,55,.045);
}
/* ========================================= SERVICES ========================================= */
 .serviceGrid {
     display: grid;
     grid-template-columns: repeat(2, 1fr);
     gap: 12px;
}
 .serviceCard input {
     display: none;
}
 .serviceCard label {
     position: relative;
     display: flex;
     align-items: center;
     gap: 13px;
     min-height: 76px;
     padding: 13px 40px 13px 14px;
     cursor: pointer;
     background: #fff;
     border: 1px solid #263136;
     border-radius: 5px;
     transition: .25s ease;
}

 .serviceCard input:checked + label {
     border-color: var(--gold);
     background: linear-gradient( 135deg, rgba(213,164,55,.09), rgba(213,164,55,.025) );
}
 .serviceCardIcon {
     width: 40px;
     height: 40px;
     display: grid;
     place-items: center;
     flex: none;
     color: var(--gold);
     border: 1px solid rgba(213,164,55,.25);
     border-radius: 50%;
     font-size: 12px;
}
 .serviceCard label strong {
     display: block;
     margin-bottom: 4px;
     color: #000;
     font-size: 12px;
}
 .serviceCard label span {
     display: block;
     color: #697276;
     font-size: 9px;
}
 .serviceCheck {
     position: absolute;
     right: 14px;
     top: 50%;
     transform: translateY(-50%);
     color: #3c474a;
     font-size: 11px;
}
 .serviceCard input:checked + label .serviceCheck {
     color: var(--gold);
}
/* ========================================= SUBMIT ========================================= */
 .bookingSubmitArea {
     display: flex;
     align-items: center;
     justify-content: space-between;
     gap: 20px;
     margin-top: 40px;
     padding-top: 24px;
     border-top: 1px solid rgba(255,255,255,.07);
}
 .bookingSubmitArea p {
     margin: 0;
     color: #697376;
     font-size: 10px;
}
 .bookingSubmitArea p i {
     margin-right: 5px;
     color: var(--gold);
}
 .bookingSubmit {
     height: 48px;
     display: flex;
     align-items: center;
     justify-content: center;
     gap: 12px;
     padding: 0 23px;
     border: 0;
     border-radius: 4px;
     color: #111;
     background: linear-gradient( 135deg, #e3c25b, #c3932e );
     font-family: inherit;
     font-size: 10px;
     font-weight: 800;
     letter-spacing: .7px;
     cursor: pointer;
     transition: .25s ease;
}
 .bookingSubmit:hover {
     transform: translateY(-2px);
     box-shadow: 0 10px 25px rgba(213,164,55,.16);
}
/* ========================================= SIDEBAR ========================================= */
 .appointmentSidebar {
     display: flex;
     flex-direction: column;
     gap: 18px;
}
 .appointmentSideCard {
     padding: 25px;
     background: #fdfaf6;
     border: 2px solid rgb(240 189 77);
     border-radius: 8px;
}
 .sideEyebrow {
     display: block;
     margin-bottom: 8px;
     color: var(--gold);
     font-size: 9px;
     font-weight: 700;
     letter-spacing: 1.5px;
}
 .appointmentSideCard h2 {
     margin: 0 0 12px;
     color: #000;
     font-family: "Playfair Display", serif;
     font-size: 26px;
     line-height: 1.25;
}
 .appointmentSideCard h2 em {
     color: var(--gold);
     font-style: normal;
}
 .sideDescription {
     margin: 0 0 23px;
     color: #747e81;
     font-size: 11px;
     line-height: 1.75;
}
/* ========================================= BENEFITS ========================================= */
 .sideBenefits {
     display: flex;
     flex-direction: column;
     gap: 15px;
}
 .sideBenefit {
     display: flex;
     align-items: center;
     gap: 12px;
}
 .sideBenefit > div {
     width: 38px;
     height: 38px;
     display: grid;
     place-items: center;
     flex: none;
     color: var(--gold);
     background: rgba(213,164,55,.05);
     border: 1px solid rgba(213,164,55,.2);
     border-radius: 50%;
     font-size: 11px;
}
 .sideBenefit span {
     color: #777f82;
     font-size: 10px;
     line-height: 1.45;
}
 .sideBenefit strong {
     display: block;
     margin-bottom: 2px;
     color: #ddd;
     font-size: 11px;
}
/* ========================================= CONSULT DETAILS ========================================= */
 .sideCardTitle {
     margin: 0 0 20px !important;
     font-family: "Playfair Display", serif;
     font-size: 19px !important;
}
 .consultDetails {
     display: flex;
     flex-direction: column;
}
 .consultDetail {
     display: flex;
     align-items: center;
     gap: 13px;
     padding: 13px 0;
     border-bottom: 1px solid rgba(255,255,255,.055);
}
 .consultDetail:last-child {
     border-bottom: 0;
     padding-bottom: 0;
}
 .consultDetail > i {
     width: 32px;
     height: 32px;
     display: grid;
     place-items: center;
     flex: none;
     color: var(--gold);
     background: rgba(213,164,55,.05);
     border-radius: 50%;
     font-size: 10px;
}
 .consultDetail span {
     display: block;
     margin-bottom: 3px;
     color: #687174;
     font-size: 9px;
}
 .consultDetail strong {
     display: block;
     color: #d7d9da;
     font-size: 11px;
     font-weight: 500;
}
/* ========================================= CALL CARD ========================================= */
 .appointmentCallCard {
     display: flex;
     align-items: center;
     gap: 14px;
     padding: 20px;
     background: linear-gradient( 135deg, rgba(213,164,55,.13), rgba(213,164,55,.025) );
     border: 1px solid rgba(213,164,55,.25);
     border-radius: 8px;
}
 .callIcon {
     width: 46px;
     height: 46px;
     display: grid;
     place-items: center;
     flex: none;
     color: #111;
     background: var(--gold);
     border-radius: 50%;
     font-size: 14px;
}
 .appointmentCallCard > div:last-child > span {
     display: block;
     margin-bottom: 3px;
     color: #a58a4a;
     font-size: 8px;
     font-weight: 700;
     letter-spacing: 1px;
}
 .appointmentCallCard h3 {
     margin: 0 0 4px;
     color: #eee;
     font-family: "Playfair Display", serif;
     font-size: 16px;
}
 .appointmentCallCard a {
     color: var(--gold);
     font-size: 13px;
     font-weight: 700;
     text-decoration: none;
}
 .astrology-journey {
     padding: 25px 0;
     background: radial-gradient( circle at 50% 35%, rgba(213, 164, 55, 0.07), transparent 42% ), #050b0e;
     overflow: hidden;
}
 .journey-heading {
     max-width: 720px;
     margin: 0 auto 30px;
     text-align: center;
}
 .journey-heading > span {
     display: inline-block;
     margin-bottom: 10px;
     color: var(--gold);
     font-size: 12px;
     font-weight: 700;
     letter-spacing: 2px;
     text-transform: uppercase;
}
 .journey-heading h2 {
     margin: 0;
     color: #fff;
     font-family: "Playfair Display", serif;
     font-size: 42px;
     line-height: 1.15;
}
 .journey-heading h2::after {
     content: "";
     display: block;
     width: 70px;
     height: 2px;
     margin: 16px auto;
     background: var(--gold);
}
 .journey-heading p {
     max-width: 620px;
     margin: 0 auto;
     color: #aeb5b7;
     font-size: 14px;
     line-height: 1.8;
}
/* ========================================= JOURNEY TRACK ========================================= */
 .journey-track {
     position: relative;
     display: grid;
     grid-template-columns: repeat(4, 1fr);
     gap: 22px;
}
/* GOLD CONNECTING LINE */
 .journey-track::before {
     content: "";
     position: absolute;
     top: 29px;
     left: 8%;
     right: 8%;
     height: 1px;
     background: linear-gradient( 90deg, transparent, rgba(213, 164, 55, 0.85), rgba(213, 164, 55, 0.85), transparent );
}
/* ========================================= JOURNEY CARD ========================================= */
 .journey-card {
     position: relative;
     padding-top: 65px;
}
/* YEAR */
 .journey-year {
     position: absolute;
     top: 0;
     left: 50%;
     transform: translateX(-50%);
     color: var(--gold-2);
     font-family: "Playfair Display", serif;
     font-size: 22px;
     font-weight: 700;
     white-space: nowrap;
}
/* ========================================= MARKER ========================================= */
 .journey-marker {
     position: absolute;
     top: 14px;
     left: 50%;
     transform: translateX(-50%);
     width: 31px;
     height: 31px;
     display: grid;
     place-items: center;
     background: #050b0e;
     border: 1px solid var(--gold);
     border-radius: 50%;
     z-index: 3;
     box-shadow: 0 0 0 6px #050b0e, 0 0 18px rgba(213, 164, 55, 0.12);
     transition: all 0.3s ease;
}
 .journey-marker i {
     color: var(--gold);
     font-size: 12px;
     transition: all 0.3s ease;
}
/* ========================================= CONTENT BOX ========================================= */
 .journey-content {
     min-height: 220px;
     padding: 28px 22px;
     text-align: center;
     background: linear-gradient( 145deg, rgba(12, 23, 27, 0.98), rgba(5, 12, 15, 0.98) );
     border: 1px solid rgba(213, 164, 55, 0.18);
     border-radius: 9px;
     transition: all 0.3s ease;
}
/* HOVER */
 .journey-card:hover .journey-content {
     transform: translateY(-7px);
     border-color: rgba(213, 164, 55, 0.65);
     box-shadow: 0 18px 40px rgba(0, 0, 0, 0.35), 0 0 25px rgba(213, 164, 55, 0.06);
}
 .journey-card:hover .journey-marker {
     background: var(--gold);
     box-shadow: 0 0 0 6px #050b0e, 0 0 25px rgba(213, 164, 55, 0.35);
}
 .journey-card:hover .journey-marker i {
     color: #050b0e;
     transform: scale(1.1);
}
 .journey-label {
     display: block;
     margin-bottom: 9px;
     color: var(--gold);
     font-size: 10px;
     font-weight: 700;
     letter-spacing: 1.4px;
}
 .journey-content h3 {
     margin: 0 0 12px;
     color: #fff;
     font-family: "Playfair Display", serif;
     font-size: 21px;
     line-height: 1.3;
}
 .journey-content p {
     margin: 0;
     color: #aeb5b7;
     font-size: 13px;
     line-height: 1.7;
}
 .doctor-contact-section {
     background: #fdfaf6;
     padding: 40px 0px;
     color: #fff;
}
 .doctor-contact-heading {
     text-align: center;
     max-width: 700px;
     margin: 0 auto 45px;
}
 .doctor-contact-heading span {
     display: inline-block;
     color: #c49a3a;
     font-size: 13px;
     font-weight: 600;
     letter-spacing: 2px;
     margin-bottom: 10px;
}
 .doctor-contact-heading h2 {
     margin: 0 0 15px;
     font-size: 38px;
     font-weight: 600;
     color: #fff;
}
 .doctor-contact-heading p {
     margin: 0;
     color: #aaa;
     font-size: 15px;
     line-height: 1.7;
}
 .doctor-contact-grid {
     display: grid;
     grid-template-columns: repeat(4, 1fr);
     gap: 20px;
}
 .doctor-contact-box {
     background: #430a17;
     border: 1px solid #333;
     padding: 30px 22px;
     min-height: 190px;
     display: flex;
     flex-direction: column;
     align-items: flex-start;
     transition: all 0.3s ease;
}
 .doctor-contact-box:hover {
     transform: translateY(-6px);
     border-color: #c49a3a;
     background: #262626;
}
 .doctor-contact-icon {
     width: 52px;
     height: 52px;
     display: flex;
     align-items: center;
     justify-content: center;
     background: rgba(196, 154, 58, 0.12);
     color: #c49a3a;
     font-size: 20px;
     margin-bottom: 20px;
}
 .doctor-contact-content h3 {
     margin: 0 0 10px;
     color: #fff;
     font-size: 19px;
     font-weight: 600;
}
 .doctor-contact-content p {
     margin: 0;
     color: #aaa;
     font-size: 14px;
     line-height: 1.8;
}
 .privacy-policy-section {
     background: #151515;
     padding: 40px 0px;
     color: #fff;
}
 .privacy-policy-title {
     text-align: center;
     margin-bottom: 20px;
}
 .privacy-policy-title span {
     color: #c49a3a;
     font-size: 13px;
     font-weight: 600;
     letter-spacing: 2px;
}
 .privacy-policy-title h1 {
     margin: 10px 0;
     font-size: 42px;
     color: #fff;
}
 .privacy-policy-title p {
     margin: 0;
     color: #888;
     font-size: 14px;
}
 .privacy-policy-content {
     background: #1e1e1e;
     border: 1px solid #303030;
     padding: 45px;
}
 .privacy-policy-item {
     padding-bottom: 30px;
     margin-bottom: 30px;
     border-bottom: 1px solid #303030;
}
 .privacy-policy-item:last-child {
     border-bottom: 0;
     margin-bottom: 0;
     padding-bottom: 0;
}
 .privacy-policy-item h2 {
     margin: 0 0 12px;
     color: #c49a3a;
     font-size: 22px;
     font-weight: 600;
}
 .privacy-policy-item p {
     margin: 0;
     color: #aaa;
     font-size: 15px;
     line-height: 1.8;
}
/* Tablet */
 @media (max-width: 767px) {
     .privacy-policy-title h1 {
         font-size: 34px;
    }
     .privacy-policy-content {
         padding: 30px 22px;
    }
}
/* Mobile */
 @media (max-width: 480px) {
     .privacy-policy-title {
         margin-bottom: 30px;
    }
     .privacy-policy-title h1 {
         font-size: 29px;
    }
     .privacy-policy-content {
         padding: 25px 18px;
    }
     .privacy-policy-item h2 {
         font-size: 19px;
    }
     .privacy-policy-item p {
         font-size: 14px;
    }
}
 .astrologyGallery {
     padding: 40px 0;
     background: #fdfaf6;
}
 .astrologyGallery__grid {
     display: grid;
     grid-template-columns: repeat(4, 1fr);
     gap: 20px;
}
 .astrologyGallery__item {
     height: 280px;
     overflow: hidden;
     border-radius: 4px;
     border: 1px solid var(--border);
     background: var(--card);
}
 .astrologyGallery__item img {
     width: 100%;
     height: 100%;
     display: block;
     object-fit: cover;
     transition: transform 0.5s ease;
}
 .astrologyGallery__item:hover img {
     transform: scale(1.07);
}
/* Tablet */
 @media (max-width: 991px) {
     .astrologyGallery__grid {
         grid-template-columns: repeat(2, 1fr);
    }
     .astrologyGallery__item {
         height: 260px;
    }
}
/* Mobile */
 @media (max-width: 575px) {
     .astrologyGallery__heading {
         margin-bottom: 30px;
    }
     .astrologyGallery__heading h2 {
         font-size: 30px;
    }
     .astrologyGallery__grid {
         grid-template-columns: 1fr;
         gap: 15px;
    }
     .astrologyGallery__item {
         height: 250px;
    }
}
 .blogDetails {
     padding: 40px 0;
     background: #fdfaf6;
}
 .blogDetails__layout {
     display: grid;
     grid-template-columns: minmax(0, 1fr) 350px;
     gap: 45px;
     align-items: start;
}
/* ========================= Main Blog ========================= */
 .blogDetails__main {
     min-width: 0;
}
 .blogDetails__image {
     width: 100%;
     height: 480px;
     overflow: hidden;
     border: 1px solid var(--border);
     border-radius: 8px;
     background: var(--card);
}
 .blogDetails__image img {
     width: 100%;
     height: 100%;
     display: block;
     object-fit: cover;
}
 .blogDetails__meta {
     display: flex;
     align-items: center;
     flex-wrap: wrap;
     gap: 22px;
     margin: 22px 0 15px;
}
 .blogDetails__meta span {
     display: inline-flex;
     align-items: center;
     gap: 7px;
     color: var(--muted);
     font-size: 13px;
}
 .blogDetails__meta i {
     color: var(--gold-light);
}
 .blogDetails__title {
     margin: 0 0 25px;
     color: #000;
     font-size: 28px;
     line-height: 1.3;
     font-weight: 600;
}
 .blogDetails__content {
     color: #000;
     font-size: 16px;
     line-height: 1.9;
}
 .blogDetails__content p {
     margin: 0 0 20px;
}
 .blogDetails__content h2 {
     margin: 35px 0 15px;
     color: var(--white);
     font-size: 25px;
     line-height: 1.4;
     position: relative;
     padding-left: 15px;
}
 .blogDetails__content h2::before {
     content: "";
     position: absolute;
     left: 0;
     top: 5px;
     width: 3px;
     height: 25px;
     background: var(--gold);
}
 .blogDetails__content ul {
     margin: 15px 0 25px;
     padding-left: 20px;
}
 .blogDetails__content li {
     margin-bottom: 9px;
     padding-left: 5px;
}
 .blogDetails__content li::marker {
     color: var(--gold-light);
}
 .blogDetails__content blockquote {
     margin: 30px 0;
     padding: 25px 30px;
     background: var(--card);
     border-left: 3px solid var(--gold);
     color: var(--white);
     font-size: 17px;
     font-style: italic;
}
 .blogDetails__content blockquote i {
     color: var(--gold-light);
     margin-right: 8px;
}
/* ========================= Share ========================= */
 .blogDetails__share {
     display: flex;
     align-items: center;
     justify-content: space-between;
     gap: 20px;
     margin-top: 40px;
     padding-top: 25px;
     border-top: 1px solid var(--border);
}
 .blogDetails__share > span {
     color: var(--white);
     font-size: 15px;
     font-weight: 600;
}
 .blogDetails__social {
     display: flex;
     gap: 8px;
}
 .blogDetails__social a {
     width: 38px;
     height: 38px;
     display: inline-flex;
     align-items: center;
     justify-content: center;
     color: var(--gold-light);
     background: var(--card);
     border: 1px solid var(--border);
     border-radius: 4px;
     text-decoration: none;
     transition: all 0.3s ease;
}
 .blogDetails__social a:hover {
     color: var(--bg);
     background: var(--gold);
     border-color: var(--gold);
}
/* ========================= Sidebar ========================= */
 .blogDetails__sidebar {
     position: sticky;
     top: 30px;
}
 .blogSidebar__box {
     margin-bottom: 25px;
     padding: 15px 10px;
     background: #fdfaf6;
     border: 1px solid var(--border);
     border-radius: 7px;
}
 .blogSidebar__box h3 {
     margin: 0 0 20px;
     padding-bottom: 12px;
     color: #000;
     font-size: 20px;
     border-bottom: 1px solid var(--border);
}
/* Search */
 .blogSidebar__search {
     display: flex;
     width: 100%;
}
 .blogSidebar__search input {
     width: 100%;
     min-width: 0;
     height: 45px;
     padding: 0 13px;
     color: var(--white);
     background: var(--bg2);
     border: 1px solid var(--border);
     border-right: 0;
     outline: none;
}
 .blogSidebar__search input::placeholder {
     color: var(--muted);
}
 .blogSidebar__search button {
     width: 48px;
     flex-shrink: 0;
     border: 0;
     background: var(--gold);
     color: var(--bg);
     cursor: pointer;
     transition: 0.3s ease;
}
 .blogSidebar__search button:hover {
     background: var(--gold-light);
}
/* Recent Blog */
 .recentBlog {
     display: flex;
     gap: 13px;
     padding-bottom: 15px;
     margin-bottom: 15px;
     border-bottom: 1px solid rgba(217, 156, 32, 0.18);
}
 .recentBlog:last-child {
     margin-bottom: 0;
     padding-bottom: 0;
     border-bottom: 0;
}
 .recentBlog__image {
     width: 75px;
     height: 65px;
     flex-shrink: 0;
     overflow: hidden;
     border-radius: 4px;
}
 .recentBlog__image img {
     width: 100%;
     height: 100%;
     display: block;
     object-fit: cover;
}
 .recentBlog__content span {
     display: block;
     margin-bottom: 5px;
     color: var(--gold-light);
     font-size: 11px;
}
 .recentBlog__content a {
     color: #000;
     font-size: 13px;
     line-height: 1.5;
     text-decoration: none;
     transition: color 0.3s ease;
}
 .recentBlog__content a:hover {
     color: var(--gold-light);
}
/* Categories */
 .blogCategories {
     margin: 0;
     padding: 0;
     list-style: none;
}
 .blogCategories li {
     border-bottom: 1px solid rgba(217, 156, 32, 0.18);
}
 .blogCategories li:last-child {
     border-bottom: 0;
}
 .blogCategories a {
     display: flex;
     align-items: center;
     justify-content: space-between;
     padding: 11px 0;
     color: var(--text);
     font-size: 14px;
     text-decoration: none;
     transition: all 0.3s ease;
}
 .blogCategories a:hover {
     color: var(--gold-light);
     padding-left: 5px;
}
 .blogCategories span {
     color: var(--muted);
     font-size: 12px;
}
/* ========================= Responsive ========================= */
 @media (max-width: 991px) {
     .blogDetails__layout {
         grid-template-columns: 1fr;
         gap: 12px;
    }
     .blogDetails__sidebar {
         position: static;
    }
     .blogDetails__image {
         height: 400px;
    }
     .blogDetails__title {
         font-size: 32px;
    }
}
 @media (max-width: 575px) {
     .blogDetails__image {
         height: 260px;
    }
     .blogDetails__meta {
         gap: 10px 15px;
    }
     .blogDetails__title {
         font-size: 26px;
    }
     .blogDetails__content {
         font-size: 14px;
         line-height: 1.8;
    }
     .blogDetails__content h2 {
         font-size: 21px;
    }
     .blogDetails__content blockquote {
         padding: 20px;
         font-size: 15px;
    }
     .blogDetails__share {
         align-items: flex-start;
         flex-direction: column;
    }
     .blogSidebar__box {
         padding: 20px;
    }
}
 .mv-section{
     position:relative;
     background:linear-gradient(135deg,#1a0a12,#3a0f1c);
     padding:40px 0;
     overflow:hidden;
}
 .mv-section::before{
     content:'';
     position:absolute;
     inset:0;
     background-image:radial-gradient(rgba(217,178,95,.06) 1px, transparent 1px);
     background-size:20px 20px;
     pointer-events:none;
}
 .mv-grid{
     position:relative;
     display:grid;
     grid-template-columns:1fr auto 1fr;
     align-items:center;
     gap:50px;
}
 .mv-item{
     display:flex;
     align-items:start;
     gap:22px;
}
 .mv-icon{
     width:64px;
     height:64px;
     min-width:64px;
     display:flex;
     align-items:center;
     justify-content:center;
     border-radius:50%;
     border:1.5px solid rgba(217,178,95,.5);
     background:rgba(217,178,95,.08);
}
 .mv-icon i{
     font-size:24px;
     color:#d9b25f;
}
 .mv-label{
     display:block;
     font-family:Georgia,'Times New Roman',serif;
     font-size:20px;
     font-weight:700;
     color:#f2d9a0;
     margin-bottom:8px;
}
 .mv-desc{
     font-size:13.5px;
     line-height:1.75;
     color:#d8cfd2;
}
 .mv-desc p{
     margin:0;
}
/* Vertical divider with dot */
 .mv-divider{
     position:relative;
     height:90px;
     width:1px;
     background:rgba(217,178,95,.3);
     justify-self:center;
}
 .mv-dot{
     position:absolute;
     top:50%;
     left:50%;
     width:10px;
     height:10px;
     background:#d9b25f;
     border-radius:50%;
     transform:translate(-50%,-50%);
     box-shadow:0 0 12px rgba(217,178,95,.6);
}
/* Responsive */
 @media (max-width:768px){
     .mv-grid{
         grid-template-columns:1fr;
         gap:35px;
    }
     .mv-divider{
         width:80px;
         height:1px;
         margin:0 auto;
    }
     .mv-dot{
         top:50%;
         left:50%;
    }
     .mv-item{
         text-align:left;
    }
}
 .zodiac-section{
     padding:40px 0px;
     font-family:"Helvetica Neue", Arial, sans-serif;
     background: #fff;
}
 .zodiac-grid{
     display:grid;
     grid-template-columns:repeat(6,1fr);
     gap:16px;
}
 @media(max-width:900px){
     .zodiac-grid{
         grid-template-columns:repeat(3,1fr);
    }
}
 @media(max-width:520px){
     .zodiac-grid{
         grid-template-columns:repeat(2,1fr);
    }
}
 .zodiac-card{
     background:#fffaf1;
     border:1px solid #e7dcc6;
     border-radius:10px;
     padding:16px 12px 16px;
     text-align:center;
     cursor:pointer;
     transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
 .zodiac-card:hover{
     transform:translateY(-3px);
     box-shadow:0 10px 22px rgba(74,14,24,.10);
}
 .zodiac-card.active{
     border-color:#c9992f;
     background:linear-gradient(180deg,#fff8ea,#fdf1d8);
     box-shadow:0 0 0 2px #c9992f, 0 12px 24px rgba(201,153,47,.25);
}
 .zodiac-icon{
     width:64px;
     height:64px;
     margin:0 auto 12px;
     border-radius:50%;
     background:radial-gradient(circle at 35% 30%, #8a1f31, #4a0e18);
     border:2px solid #c9992f;
     display:flex;
     align-items:center;
     justify-content:center;
     font-size:26px;
     color:#e8c877;
     position:relative;
}
 .zodiac-icon .check{
     position:absolute;
     top:-4px;
     right:-4px;
     width:20px;
     height:20px;
     border-radius:50%;
     background:#c9992f;
     color:#4a0e18;
     font-size:10px;
     display:none;
     align-items:center;
     justify-content:center;
     border:2px solid #fffaf1;
}
 .zodiac-card.active .zodiac-icon .check{
     display:flex;
}
 .zodiac-card h4{
     margin:0 0 2px;
     font-size:15px;
     color:#4a0e18;
}
 .zodiac-card p{
     margin:0;
     font-size:12.5px;
     color:#8a7a6c;
}
/* Detail Panel */
 .zodiac-detail{
     margin-top:44px;
     background:#fffaf1;
     border:1px solid #e7dcc6;
     border-radius:12px;
     padding:28px 32px;
     display:flex;
     align-items:center;
     gap:28px;
}
 @media(max-width:700px){
     .zodiac-detail{
         flex-direction:column;
         text-align:center;
    }
}
.horoscope-section{
  padding:40px 0px;
  font-family:"Helvetica Neue", Arial, sans-serif;
  background: #f5f5f5;
}

.horoscope-grid{
  display:grid;
  grid-template-columns:1.7fr 1fr;
  gap:24px;
}
@media(max-width:900px){ 
    .horoscope-grid{ grid-template-columns:1fr; } }

/* ---------- LEFT CARD ---------- */
.horoscope-card{
  background:#fffaf1;
  border:1px solid #e7dcc6;
  border-radius:8px;
  padding:20px ;
}

.horoscope-top{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  flex-wrap:wrap;
  gap:14px;
  margin-bottom:24px;
}
.horoscope-top h3{
  margin:0 0 4px;
  font-family:Georgia, serif;
  color:#4a0e18;
  font-size:24px;
}
.horoscope-top .date{
  margin:0;
  color:#8a7a6c;
  font-size:14px;
}

/* Dropdown */
.sign-dropdown{ position:relative; }
.dropdown-btn{
  display:flex; align-items:center; gap:10px;
  background:#4a0e18;
  color:#e8c877;
  border:none;
  padding:10px 16px;
  border-radius:8px;
  font-weight:600;
  font-size:14px;
  cursor:pointer;
}
.dropdown-btn i:first-child{ font-size:15px; }
.dropdown-btn i:last-child{ font-size:11px; margin-left:4px; }

.dropdown-list{
  display:none;
  position:absolute;
  top:110%;
  right:0;
  background:#fffaf1;
  border:1px solid #e7dcc6;
  border-radius:8px;
  list-style:none;
  margin:0;
  padding:6px;
  width:190px;
  max-height:260px;
  overflow-y:auto;
  box-shadow:0 12px 24px rgba(74,14,24,.15);
  z-index:10;
}
.dropdown-list.open{ display:block; }
.dropdown-list li{
  display:flex; align-items:center; gap:10px;
  padding:9px 10px;
  border-radius:6px;
  font-size:13.5px;
  color:#4a0e18;
  cursor:pointer;
}
.dropdown-list li:hover{ background:#f8f2e6; }
.dropdown-list li i{ color:#c9992f; width:16px; }

/* Body */
.horoscope-body{
  display:flex;
  gap:16px;
  align-items:flex-start;
  margin-bottom:16px;
}
@media(max-width:600px){ .horoscope-body{ flex-direction:column; align-items:center; text-align:center; } }

.horoscope-icon-wrap{ flex-shrink:0; text-align:center; width:120px; }
.horoscope-icon{
  width:96px; height:96px;
  border-radius:50%;
  background:radial-gradient(circle at 35% 30%, #8a1f31, #4a0e18);
  border:3px solid #c9992f;
  display:flex; align-items:center; justify-content:center;
  font-size:40px; color:#e8c877;
  margin:0 auto 10px;
}
.horoscope-icon-wrap h4{ margin:0 0 2px; color:#4a0e18; font-size:14px; letter-spacing:.04em; }
.horoscope-icon-wrap p{ margin:0; color:#8a7a6c; font-size:12px; }

.horoscope-desc{
  margin:0;
  color:#5a4a3e;
  font-size:14.5px;
  line-height:1.75;
}

/* Stat boxes */
.stat-boxes{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:14px;
}
@media(max-width:700px){ .stat-boxes{ grid-template-columns:repeat(2,1fr); } }

.stat-box{
  display:flex; align-items:center; gap:12px;
  background:#f8f2e6;
  border:1px solid #e7dcc6;
  border-radius:10px;
  padding:14px 16px;
}
.stat-box i{
  font-size:18px;
  color:#c9992f;
  width:24px;
  text-align:center;
}
.stat-box .label{ display:block; font-size:11px; color:#8a7a6c; }
.stat-box .value{ display:block; font-weight:700; color:#4a0e18; font-size:13.5px; }

.promo-column{
  display:flex;
  flex-direction:column;
  gap:10px;
}

.promo-card{
  border-radius:8px;
  overflow: hidden;
}
.promo-card.light img{
 height: 190px;
}

.promo-card.dark img{
    height: 190px;
}