<style> *,*::before,*::after {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

:root {
    --crimson: #9B1527;
    --crimson-mid: #C41E3A;
    --crimson-bright: #E8192C;
    --crimson-soft: #F4A0A8;
    --crimson-pale: #FDE8EA;
    --crimson-ultra: #FFF5F6;
    --crimson-deep: #7A0F1E;
    --crimson-dark: #5C0B16;
    --gold: #D97706;
    --gold-bright: #F59E0B;
    --gold-vivid: #FCD34D;
    --gold-pale: #FEF3C7;
    --gold-deep: #92400E;
    --gold-accent: #FFB800;
    --grad-red: linear-gradient(135deg,#9B1527,#C41E3A,#E8192C);
    --grad-gold: linear-gradient(135deg,#D97706,#F59E0B,#FCD34D);
    --grad-rg: linear-gradient(135deg,#9B1527 0%,#C41E3A 40%,#D97706 80%,#F59E0B 100%);
    --grad-hero: linear-gradient(160deg,#5C0B16 0%,#9B1527 40%,#C41E3A 70%,#D97706 100%);
    --white: #FFFFFF;
    --off-white: #FAFBFC;
    --pearl: #FDF8F0;
    --cream: #FBF5E8;
    --border: #F0D0D4;
    --border-light: #F8EAEC;
    --border-mid: #E8C4C8;
    --border-gold: rgba(217,119,6,0.3);
    --text-dark: #1A0508;
    --text-mid: #4A1520;
    --text-light: #7C3040;
    --text-muted: #A07080;
    --shadow-sm: 0 2px 12px rgba(155,21,39,0.08);
    --shadow-md: 0 8px 32px rgba(155,21,39,0.14);
    --shadow-lg: 0 20px 56px rgba(155,21,39,0.18);
    --shadow-xl: 0 32px 80px rgba(155,21,39,0.24);
    --shadow-gold: 0 8px 32px rgba(217,119,6,0.28);
    --font-display: 'Playfair Display',serif;
    --font-body: 'Poppins',sans-serif;
    --font-accent: 'Cormorant Garamond',serif;
    --ease-smooth: cubic-bezier(0.25,0.46,0.45,0.94);
    --ease-spring: cubic-bezier(0.34,1.56,0.64,1);
}

html {
    scroll-behavior: smooth;
    overflow-x: hidden;
}

body {
    background: #fff;
    font-family: var(--font-body);
    color: var(--text-dark);
    overflow-x: hidden;
    margin: 0px;
}

img {
    display: block;
    object-fit: cover;
}

a {
    text-decoration: none;
    color: inherit;
}

button {
    cursor: pointer;
    font-family: inherit;
    border: none;
    outline: none;
}

#scrollProgress {
    position: fixed;
    top: 0;
    left: 0;
    height: 3px;
    background: var(--grad-rg);
    z-index: 9999;
    width: 0%;
    transition: width .1s linear;
    box-shadow: 0 0 10px rgba(217,119,6,0.6);
}

#backToTop {
    position: fixed;
    bottom: 100px;
    left: 28px;
    z-index: 997;
    width: 44px;
    height: 44px;
    border-radius: 50%;
    background: #fff;
    border: 1.5px solid var(--border-mid);
    color: var(--crimson);
    font-size: 22px;
    line-height: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    box-shadow: var(--shadow-md);
    opacity: 0;
    transform: translateY(20px);
    transition: all .35s var(--ease-smooth);
    pointer-events: none;
    font-weight: 400;
}

#backToTop.visible {
    opacity: 1;
    transform: translateY(0);
    pointer-events: auto;
}

#backToTop:hover {
    background: var(--grad-rg);
    color: #fff;
    transform: translateY(-3px);
}

@keyframes floatY {
    0%,100% {
        transform: translateY(0)
    }

    50% {
        transform: translateY(-8px)
    }
}

@keyframes rotateStar {
    from {
        transform: rotate(0deg)
    }

    to {
        transform: rotate(360deg)
    }
}

@keyframes spinSlow {
    from {
        transform: rotate(0deg)
    }

    to {
        transform: rotate(360deg)
    }
}

@keyframes spinRev {
    from {
        transform: rotate(360deg)
    }

    to {
        transform: rotate(0deg)
    }
}

@keyframes pulse {
    0%,100% {
        transform: scale(1)
    }

    50% {
        transform: scale(1.06)
    }
}

@keyframes textSlideUp {
    from {
        opacity: 0;
        transform: translateY(36px)
    }

    to {
        opacity: 1;
        transform: none
    }
}

@keyframes textSlideLeft {
    from {
        opacity: 0;
        transform: translateX(-36px)
    }

    to {
        opacity: 1;
        transform: none
    }
}

@keyframes floatUp {
    0% {
        opacity: 0;
        transform: translateY(80px) scale(0)
    }

    50% {
        opacity: .7
    }

    100% {
        opacity: 0;
        transform: translateY(-80px) scale(1.5)
    }
}

@keyframes goldGlow {
    0%,100% {
        box-shadow: 0 0 20px rgba(217,119,6,0.3)
    }

    50% {
        box-shadow: 0 0 40px rgba(217,119,6,0.7)
    }
}

@keyframes shimmer {
    0% {
        background-position: -200% center
    }

    100% {
        background-position: 200% center
    }
}

@keyframes cityPulse {
    0%,100% {
        opacity: 0.7;
        transform: scale(1)
    }

    50% {
        opacity: 1;
        transform: scale(1.04)
    }
}

::-webkit-scrollbar {
    width: 6px;
}

::-webkit-scrollbar-track {
    background: var(--crimson-ultra);
}

::-webkit-scrollbar-thumb {
    background: var(--grad-rg);
    border-radius: 3px;
}

::selection {
    background: var(--gold-pale);
    color: var(--gold-deep);
}

.reveal {
    opacity: 0;
    transform: translateY(44px);
    transition: opacity .85s var(--ease-smooth),transform .85s var(--ease-smooth);
}

.reveal.visible {
    opacity: 1;
    transform: none;
}

.reveal-left {
    opacity: 0;
    transform: translateX(-44px);
    transition: opacity .85s var(--ease-smooth),transform .85s var(--ease-smooth);
}

.reveal-left.visible {
    opacity: 1;
    transform: none;
}

.reveal-right {
    opacity: 0;
    transform: translateX(44px);
    transition: opacity .85s var(--ease-smooth),transform .85s var(--ease-smooth);
}

.reveal-right.visible {
    opacity: 1;
    transform: none;
}

.reveal-scale {
    opacity: 0;
    transform: scale(0.9);
    transition: opacity .8s var(--ease-smooth),transform .8s var(--ease-smooth);
}

.reveal-scale.visible {
    opacity: 1;
    transform: scale(1);
}

.reveal-delay-1 {
    transition-delay: .1s!important;
}

.reveal-delay-2 {
    transition-delay: .2s!important;
}

.reveal-delay-3 {
    transition-delay: .32s!important;
}

/* TOP BAR */
.top-bar {
    background: var(--grad-rg);
    padding: 8px 5%;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 16px;
}

.top-bar-text {
    font-family: var(--font-body);
    font-size: 11.5px;
    color: #fff;
    letter-spacing: 0.8px;
    font-weight: 400;
    text-align: center;
}

.top-bar-text em {
    color: var(--gold-vivid);
    font-style: normal;
    font-weight: 700;
}

/* NAV */
nav {
    position: sticky;
    top: 0;
    left: 0;
    right: 0;
    z-index: 999;
    background: rgba(255,255,255,0.98);
    backdrop-filter: blur(24px);
    border-bottom: 2px solid transparent;
    background-image: linear-gradient(white,white),var(--grad-rg);
    background-origin: border-box;
    background-clip: padding-box,border-box;
    overflow: visible;
    box-shadow: 0 4px 24px rgba(155,21,39,0.1);
}

.nav-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 5%;
    height: 82px;
    position: relative;
}

.nav-logo-wrap {
    display: flex;
    align-items: center;
    gap: 13px;
    cursor: pointer;
    flex-shrink: 0;
}

.nav-logo-wrap img {
    height: 82px;
    width: auto;
    max-width: 200px;
    object-fit: contain;
}

.nav-links {
    display: flex;
    gap: 0;
    list-style: none;
    align-items: center;
}

.nav-links>li {
    position: relative;
}

.nav-link-btn {
    display: flex;
    align-items: center;
    gap: 5px;
    font-family: var(--font-body);
    font-size: 12px;
    letter-spacing: 1.8px;
    text-transform: uppercase;
    font-weight: 600;
    color: var(--text-mid);
    padding: 10px 15px;
    border-radius: 4px;
    transition: all .3s;
    position: relative;
    background: none;
    border: none;
}

.nav-link-btn::after {
    content: '';
    position: absolute;
    bottom: 6px;
    left: 15px;
    right: 15px;
    height: 2px;
    background: var(--grad-rg);
    transform: scaleX(0);
    transform-origin: left;
    transition: transform .3s var(--ease-smooth);
    border-radius: 2px;
}

.nav-link-btn:hover {
    color: var(--crimson);
}

.nav-link-btn:hover::after {
    transform: scaleX(1);
}

.nav-drop-arrow {
    font-size: 8px;
    transition: transform .3s;
    display: inline-block;
    opacity: .5;
}

.has-dropdown:hover .nav-drop-arrow {
    transform: rotate(180deg);
    opacity: 1;
}

.nav-div {
    width: 1px;
    height: 14px;
    background: linear-gradient(to bottom,transparent,var(--border-mid),transparent);
    align-self: center;
    margin: 0 2px;
}

.nav-phone-btn {
    display: flex;
    align-items: center;
    gap: 10px;
    background: var(--grad-rg);
    color: #fff;
    font-family: var(--font-body);
    padding: 0 20px;
    height: 48px;
    border-radius: 12px;
    border: none;
    transition: all .3s var(--ease-smooth);
    box-shadow: 0 4px 18px rgba(155,21,39,0.35),0 0 0 1px rgba(217,119,6,0.35);
    white-space: nowrap;
    text-decoration: none;
    position: relative;
    overflow: hidden;
}

.nav-phone-btn::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 60%;
    height: 100%;
    background: linear-gradient(90deg,transparent,rgba(255,255,255,0.15),transparent);
    transition: left .5s;
}

.nav-phone-btn:hover::before {
    left: 160%;
}

.nav-phone-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 28px rgba(155,21,39,0.48),0 0 0 2px rgba(217,119,6,0.5);
}

.nav-phone-icon {
    width: 28px;
    height: 28px;
    border-radius: 8px;
    background: rgba(255,255,255,0.2);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    animation: pulse 2.4s ease-in-out infinite;
    flex-shrink: 0;
}

.nav-phone-text {
    display: flex;
    flex-direction: column;
    line-height: 1.2;
}

.nav-phone-text span:first-child {
    font-size: 8px;
    letter-spacing: 2px;
    text-transform: uppercase;
    opacity: 0.8;
    font-weight: 500;
}

.nav-phone-text span:last-child {
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.5px;
}

.nav-hamburger {
    display: none;
    flex-direction: column;
    gap: 5px;
    cursor: pointer;
    padding: 8px;
    background: none;
    border: none;
    z-index: 1001;
}

.nav-hamburger span {
    display: block;
    height: 2px;
    border-radius: 2px;
    background: var(--crimson);
    transition: all .35s var(--ease-smooth);
}

.nav-hamburger span:nth-child(1) {
    width: 24px;
}

.nav-hamburger span:nth-child(2) {
    width: 17px;
}

.nav-hamburger span:nth-child(3) {
    width: 24px;
}

.nav-hamburger.open span:nth-child(1) {
    transform: rotate(45deg) translate(5px,5px);
    width: 24px;
}

.nav-hamburger.open span:nth-child(2) {
    opacity: 0;
    transform: translateX(-10px);
}

.nav-hamburger.open span:nth-child(3) {
    transform: rotate(-45deg) translate(5px,-5px);
    width: 24px;
}

.mobile-menu-overlay {
    display: none;
    position: fixed;
    inset: 0;
    background: rgba(26,5,8,0.6);
    z-index: 1000;
    opacity: 0;
    transition: opacity .35s ease;
    pointer-events: none;
}

.mobile-menu-overlay.active {
    display: block;
    opacity: 1;
    pointer-events: auto;
}

.mobile-menu {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    width: min(320px,90vw);
    background: #fff;
    z-index: 1001;
    padding: 0;
    box-shadow: -16px 0 48px rgba(155,21,39,0.18);
    transform: translateX(100%);
    transition: transform .4s var(--ease-smooth);
    overflow-y: auto;
    border-left: 1.5px solid var(--border);
    display: flex;
    flex-direction: column;
}

.mobile-menu.active {
    transform: translateX(0);
}

.mobile-menu-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 20px 22px;
    border-bottom: 1.5px solid var(--border);
    background: linear-gradient(135deg,var(--crimson-ultra),#fff);
    flex-shrink: 0;
}

.mobile-menu-logo {
    font-family: var(--font-display);
    font-size: 20px;
    color: var(--crimson-dark);
}

.mobile-menu-logo span {
    color: var(--gold);
}

.mobile-menu-close {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    border: 1.5px solid var(--border-mid);
    background: none;
    color: var(--crimson);
    font-size: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all .25s;
    flex-shrink: 0;
    line-height: 1;
}

.mobile-menu-close:hover {
    background: var(--crimson);
    color: #fff;
}

.mobile-nav-body {
    padding: 12px 0;
    flex: 1;
    overflow-y: auto;
}

.mobile-nav-links {
    list-style: none;
}

.mobile-nav-links>li {
    border-bottom: 1px solid var(--border-light);
}

.mobile-nav-links>li>a {
    display: flex;
    align-items: center;
    font-family: var(--font-display);
    font-size: 17px;
    color: var(--crimson-dark);
    padding: 14px 22px;
    transition: all .25s;
    text-decoration: none;
}

.mobile-nav-links>li>a:hover {
    background: var(--crimson-ultra);
    color: var(--crimson);
    padding-left: 28px;
}

.mobile-service-toggle {
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-family: var(--font-display);
    font-size: 17px;
    color: var(--crimson-dark);
    padding: 14px 22px;
    transition: all .25s;
    cursor: pointer;
}

.mobile-service-toggle:hover {
    background: var(--crimson-ultra);
    color: var(--crimson);
}

.mobile-sub-arrow {
    font-size: 10px;
    transition: transform .3s;
    color: var(--text-muted);
}

.mobile-sub-arrow.rotated {
    transform: rotate(180deg);
}

.mobile-nav-sub {
    display: none;
    background: var(--crimson-ultra);
    border-top: 1px solid var(--border-light);
}

.mobile-nav-sub.open {
    display: block;
}

.mobile-nav-sub a {
    display: block;
    font-family: var(--font-body);
    font-size: 13px;
    font-weight: 400;
    color: var(--text-mid);
    padding: 11px 22px 11px 36px;
    border-bottom: 1px dashed var(--border-light);
    transition: all .2s;
    text-decoration: none;
}

.mobile-nav-sub a:hover {
    color: var(--crimson);
    padding-left: 44px;
}

.mobile-nav-footer {
    padding: 18px 22px;
    border-top: 1.5px solid var(--border);
    background: var(--pearl);
    flex-shrink: 0;
}

.mobile-cta-btn {
    width: 100%;
    background: var(--grad-rg);
    color: #fff;
    font-family: var(--font-body);
    font-size: 13px;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    padding: 14px;
    border-radius: 10px;
    border: none;
    font-weight: 700;
    display: block;
    text-align: center;
    cursor: pointer;
    text-decoration: none;
}

.mobile-contact-info {
    display: flex;
    flex-direction: column;
    gap: 7px;
    margin-top: 14px;
}

.mobile-contact-info span {
    font-family: var(--font-body);
    font-size: 12px;
    color: var(--text-mid);
    display: flex;
    align-items: center;
    gap: 7px;
}

.nav-phone-mobile {
    display: none!important;
    align-items: center;
    gap: 6px;
    background: var(--crimson);
    color: #fff;
    padding: 7px 13px;
    border-radius: 10px;
    font-family: var(--font-body);
    font-size: 11.5px;
    font-weight: 700;
    white-space: nowrap;
    text-decoration: none;
}

/* DROPDOWN */
.nav-dropdown {
    position: absolute;
    top: calc(100% + 10px);
    left: 50%;
    transform: translateX(-50%) translateY(14px);
    background: #fff;
    border: 1.5px solid var(--border);
    border-top: 3px solid var(--crimson);
    border-radius: 14px;
    padding: 10px;
    min-width: 580px;
    box-shadow: var(--shadow-lg);
    opacity: 0;
    visibility: hidden;
    transition: all .3s var(--ease-smooth);
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 3px;
}

.has-dropdown:hover .nav-dropdown {
    opacity: 1;
    visibility: visible;
    transform: translateX(-50%) translateY(0);
}

.dd-item {
    display: flex;
    align-items: flex-start;
    gap: 11px;
    padding: 12px 14px;
    border-radius: 8px;
    cursor: pointer;
    transition: background .2s;
}

.dd-item:hover {
    background: var(--crimson-ultra);
}

.dd-icon {
    font-size: 21px;
    flex-shrink: 0;
    margin-top: 1px;
}

.dd-texts .dd-name {
    font-family: var(--font-accent);
    font-size: 15px;
    font-weight: 600;
    color: var(--crimson-dark);
    margin-bottom: 2px;
    letter-spacing: 0.3px;
}

.dd-texts .dd-desc {
    font-family: var(--font-body);
    font-size: 10.5px;
    color: var(--text-light);
    line-height: 1.5;
    font-weight: 300;
}

.dd-footer {
    grid-column: span 2;
    border-top: 1px solid var(--border);
    padding: 10px 14px 4px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.dd-footer-link {
    font-family: var(--font-accent);
    font-size: 14px;
    font-weight: 600;
    font-style: italic;
    color: var(--crimson);
}

/* SECTION COMMONS */
.sec-label {
    font-family: var(--font-body);
    font-size: 10.5px;
    letter-spacing: 5px;
    color: var(--gold);
    text-transform: uppercase;
    font-weight: 700;
    margin-bottom: 10px;
    display: flex;
    align-items: center;
    gap: 10px;
}

.sec-label::before,.sec-label::after {
    content: '✦';
    color: var(--gold);
    font-size: 9px;
    flex-shrink: 0;
}

.sec-label-plain {
    font-family: var(--font-body);
    font-size: 10.5px;
    letter-spacing: 5px;
    color: var(--gold);
    text-transform: uppercase;
    font-weight: 700;
    margin-bottom: 10px;
}

.sec-title {
    font-family: var(--font-display);
    font-size: clamp(26px,3.2vw,46px);
    color: var(--text-dark);
    line-height: 1.2;
    margin-bottom: 14px;
}

.sec-title em {
    font-style: italic;
    background: var(--grad-rg);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

.gold-line {
    width: 64px;
    height: 3px;
    background: var(--grad-gold);
    border-radius: 2px;
    margin-bottom: 36px;
}

.btn-red {
    background: var(--grad-rg);
    color: #fff;
    font-family: var(--font-body);
    font-size: 11.5px;
    letter-spacing: 2px;
    text-transform: uppercase;
    font-weight: 600;
    padding: 12px 28px;
    border-radius: 10px;
    border: none;
    transition: all .3s var(--ease-smooth);
    box-shadow: 0 4px 16px rgba(155,21,39,0.3);
}

.btn-red:hover {
    transform: translateY(-3px);
    box-shadow: 0 10px 32px rgba(155,21,39,0.5);
}

.btn-outline-red {
    background: transparent;
    color: var(--crimson);
    font-family: var(--font-body);
    font-size: 11.5px;
    letter-spacing: 2px;
    text-transform: uppercase;
    font-weight: 600;
    padding: 11px 26px;
    border-radius: 10px;
    border: 1.5px solid var(--crimson-mid);
    transition: all .3s;
}

.btn-outline-red:hover {
    background: var(--crimson);
    color: #fff;
    transform: translateY(-2px);
}

/* DISCLAIMER BANNER */
.disclaimer-bar {
    background: var(--cream);
    border-top: 1.5px solid var(--border-gold);
    border-bottom: 1.5px solid var(--border-gold);
    padding: 9px 5%;
    text-align: center;
}

.disclaimer-bar p {
    font-family: var(--font-body);
    font-size: 10.5px;
    color: var(--text-light);
    letter-spacing: 0.3px;
    line-height: 1.6;
}

.disclaimer-bar strong {
    color: var(--text-mid);
}

/* AD RIBBON */
.ad-ribbon {
    background: linear-gradient(90deg,var(--gold-pale),var(--cream),var(--gold-pale));
    border-top: 1.5px solid var(--border-gold);
    border-bottom: 1.5px solid var(--border-gold);
    padding: 12px 5%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    cursor: pointer;
    transition: background .3s;
    gap: 12px;
    flex-wrap: wrap;
}

.ad-ribbon:hover {
    background: var(--gold-pale);
}

.ad-ribbon .ar-left {
    display: flex;
    align-items: center;
    gap: 14px;
    flex-wrap: wrap;
}

.ad-ribbon .ar-badge {
    background: var(--grad-rg);
    color: #fff;
    font-family: var(--font-body);
    font-size: 8.5px;
    letter-spacing: 2.5px;
    text-transform: uppercase;
    font-weight: 700;
    padding: 4px 11px;
    border-radius: 18px;
    white-space: nowrap;
}

.ad-ribbon .ar-text {
    font-family: var(--font-accent);
    font-size: 15px;
    color: var(--text-dark);
    font-weight: 600;
}

.ad-ribbon .ar-text em {
    font-style: italic;
    color: var(--gold-deep);
}

.ad-ribbon .ar-cta {
    font-family: var(--font-body);
    font-size: 10.5px;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: var(--gold-deep);
    font-weight: 700;
    border: 1.5px solid var(--gold);
    padding: 6px 18px;
    border-radius: 18px;
    transition: all .25s;
    white-space: nowrap;
}

.ad-ribbon .ar-cta:hover {
    background: var(--gold);
    color: #fff;
}

/* HERO */
.hero {
    display: flex;
    flex-direction: column;
}

@media(min-width: 769px) {
    .hero {
        display:grid;
        grid-template-columns: 1fr 1fr;
        min-height: calc(125vh - 122px);
    }
}

.hero-left {
    padding: 70px 48px 70px 7%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    position: relative;
    z-index: 2;
    background: #fff;
}

.hero-left::before {
    content: '';
    position: absolute;
    inset: 0;
    background-image: radial-gradient(circle,rgba(155,21,39,0.045) 1.5px,transparent 1.5px);
    background-size: 22px 22px;
    pointer-events: none;
    z-index: 0;
}

.hero-left::after {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    width: 3px;
    height: 100%;
    background: linear-gradient(to bottom,transparent,var(--gold-bright) 30%,var(--crimson) 70%,transparent);
}

.hero-left-inner {
    position: relative;
    z-index: 1;
}

.hero-deco-line {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 18px;
    animation: textSlideLeft .7s .1s var(--ease-smooth) both;
}

.hero-deco-line::before {
    content: '';
    display: block;
    width: 28px;
    height: 1.5px;
    background: var(--grad-rg);
}

.hero-tag-line {
    font-family: var(--font-body);
    font-size: 10px;
    letter-spacing: 5px;
    text-transform: uppercase;
    color: var(--gold);
    font-weight: 700;
}

.hero-main-heading {
    font-family: var(--font-display);
    font-size: clamp(34px,4.5vw,68px);
    color: var(--text-dark);
    line-height: 1.05;
    margin-bottom: 4px;
    animation: textSlideUp .8s .28s var(--ease-smooth) both;
}

.hero-sub-heading {
    font-family: var(--font-display);
    font-size: clamp(28px,3.5vw,56px);
    background: var(--grad-rg);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    line-height: 1.1;
    margin-bottom: 20px;
    animation: textSlideUp .8s .42s var(--ease-smooth) both;
}

.hero-ornament {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 22px;
    animation: textSlideLeft .6s .56s var(--ease-smooth) both;
}

.hero-ornament-line {
    flex: 1;
    height: 1px;
    background: linear-gradient(90deg,var(--gold-bright),transparent);
}

.hero-ornament-sym {
    color: var(--gold);
    font-size: 20px;
}

.hero-desc {
    font-family: var(--font-accent);
    font-size: clamp(14px,1.2vw,17px);
    color: var(--text-mid);
    line-height: 1.9;
    font-style: italic;
    margin-bottom: 28px;
    animation: textSlideUp .8s .7s var(--ease-smooth) both;
    max-width: 420px;
}

.hero-stats {
    display: flex;
    gap: 0;
    margin-bottom: 30px;
    animation: textSlideUp .7s .82s var(--ease-smooth) both;
    flex-wrap: wrap;
    background: var(--pearl);
    border: 1px solid var(--border-gold);
    border-radius: 14px;
    overflow: hidden;
}

.hero-stat {
    text-align: center;
    padding: 14px 20px;
    flex: 1;
}

.hero-stat-num {
    font-family: var(--font-display);
    font-size: 22px;
    color: var(--crimson);
    line-height: 1;
}

.hero-stat-lbl {
    font-family: var(--font-body);
    font-size: 9px;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: var(--text-muted);
    margin-top: 3px;
    font-weight: 500;
}

.hero-stat-div {
    width: 1px;
    background: var(--border-gold);
    align-self: stretch;
}

.hero-btns {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    animation: textSlideUp .8s .9s var(--ease-smooth) both;
}

.btn-hero-primary {
    background: var(--grad-rg);
    color: #fff;
    font-family: var(--font-body);
    font-size: 11px;
    letter-spacing: 2.5px;
    text-transform: uppercase;
    font-weight: 700;
    padding: 14px 30px;
    border-radius: 10px;
    border: none;
    box-shadow: 0 6px 24px rgba(155,21,39,0.35),0 0 0 1px rgba(217,119,6,0.3);
    transition: all .3s var(--ease-smooth);
    display: inline-flex;
    align-items: center;
    gap: 9px;
    position: relative;
    overflow: hidden;
}

.btn-hero-primary::after {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 60%;
    height: 100%;
    background: linear-gradient(90deg,transparent,rgba(255,255,255,0.18),transparent);
    transition: left .5s;
}

.btn-hero-primary:hover::after {
    left: 160%;
}

.btn-hero-primary:hover {
    transform: translateY(-3px);
    box-shadow: 0 12px 36px rgba(155,21,39,0.5),0 0 0 2px rgba(217,119,6,0.5);
}

.hero-services-pills {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    margin-top: 22px;
    animation: textSlideUp .7s 1.02s var(--ease-smooth) both;
}

.hero-service-pill {
    padding: 5px 14px;
    border-radius: 20px;
    border: 1px solid var(--border-gold);
    font-family: var(--font-body);
    font-size: 10.5px;
    color: var(--gold-deep);
    background: var(--gold-pale);
    transition: all .25s;
    cursor: pointer;
    font-weight: 500;
}

.hero-service-pill:hover {
    background: var(--gold-accent);
    color: #fff;
    border-color: var(--gold-accent);
    transform: translateY(-2px);
}

.hero-right {
    position: relative;
    overflow: hidden;
    min-height: 500px;
    background: var(--grad-hero);
    order: -1;
}

@media(min-width: 769px) {
    .hero-right {
        order:0;
    }
}

.hero-img-slider {
    width: 100%;
    height: 100%;
    position: absolute;
    inset: 0;
}

.hero-img-slide {
    position: absolute;
    inset: 0;
    opacity: 0;
    transition: opacity 1.1s var(--ease-smooth);
}

.hero-img-slide.active {
    opacity: 1;
}

.hero-img-slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center top;
}

.hero-slider-dots {
    position: absolute;
    bottom: 24px;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    gap: 7px;
    z-index: 10;
}

.hero-sd {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: rgba(255,255,255,0.35);
    cursor: pointer;
    transition: all .4s;
    border: 1.5px solid rgba(255,255,255,0.5);
}

.hero-sd.active {
    background: var(--gold-vivid);
    width: 24px;
    border-radius: 4px;
    border-color: var(--gold-vivid);
}

.hero-img-progress {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 3px;
    z-index: 10;
    background: rgba(255,255,255,0.1);
}

.hero-img-progress-fill {
    height: 100%;
    background: var(--grad-gold);
    width: 0%;
    transition: width linear;
}

.hero-right-arrows {
    position: absolute;
    top: 50%;
    right: 18px;
    transform: translateY(-50%);
    display: flex;
    flex-direction: column;
    gap: 7px;
    z-index: 10;
}

.hero-right-arr {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    border: 1.5px solid rgba(252,211,77,0.4);
    background: rgba(255,255,255,0.1);
    backdrop-filter: blur(8px);
    color: var(--gold-vivid);
    font-size: 15px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all .3s;
}

.hero-right-arr:hover {
    background: rgba(252,211,77,0.2);
    border-color: var(--gold-vivid);
}

/* SERVICES CAROUSEL */
.services-section {
    background: linear-gradient(180deg,#100316 0%,#0d0510 50%,#1a0312 100%);
    padding: 88px 0 120px;
    position: relative;
    overflow: hidden;
}

.services-section::before {
    content: '';
    position: absolute;
    inset: 0;
    background-image: radial-gradient(circle,rgba(252,211,77,0.03) 1px,transparent 1px);
    background-size: 28px 28px;
    pointer-events: none;
}

.services-section::after {
    content: '';
    position: absolute;
    inset: 0;
    background: radial-gradient(ellipse at 50% 0%,rgba(155,21,39,0.18) 0%,transparent 60%),radial-gradient(ellipse at 50% 100%,rgba(217,119,6,0.12) 0%,transparent 55%);
    pointer-events: none;
}

.services-header {
    text-align: center;
    padding: 0 5% 60px;
    position: relative;
    z-index: 1;
}

.services-header .sec-label {
    color: rgba(252,211,77,0.9);
    justify-content: center;
}

.services-header .sec-label::before,.services-header .sec-label::after {
    color: rgba(252,211,77,0.5);
}

.services-header .sec-title {
    color: #fff;
}

.services-header .sec-title em {
    background: linear-gradient(135deg,var(--gold-vivid),var(--gold-bright));
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

.services-header p {
    color: rgba(255,255,255,0.6)!important;
}

.svc-stars-bg {
    position: absolute;
    inset: 0;
    pointer-events: none;
    overflow: hidden;
    z-index: 0;
}

.carousel-3d-wrap {
    position: relative;
    height: 470px;
    perspective: 1300px;
    overflow: visible;
}

.carousel-3d-track {
    position: relative;
    width: 100%;
    height: 100%;
    transform-style: preserve-3d;
}

.c3d-slide {
    position: absolute;
    width: 320px;
    height: 410px;
    top: 50%;
    left: 50%;
    transform-style: preserve-3d;
    border-radius: 16px;
    overflow: hidden;
    cursor: pointer;
    box-shadow: var(--shadow-md);
    transition: all 0.8s cubic-bezier(0.25,0.46,0.45,0.94);
    border: 2px solid transparent;
}

.c3d-slide img {
    width: 320px;
    height: 410px;
    object-fit: cover;
}

.c3d-slide.pos-center {
    transform: translate(-50%,-50%) translateZ(0) scale(1);
    z-index: 10;
    border-color: var(--gold-bright);
    box-shadow: var(--shadow-xl),0 0 0 1px rgba(245,158,11,0.4);
}

.c3d-slide.pos-left1 {
    transform: translate(calc(-50% - 260px),-50%) translateZ(-120px) rotateY(22deg) scale(0.87);
    z-index: 5;
    filter: brightness(0.75);
}

.c3d-slide.pos-left2 {
    transform: translate(calc(-50% - 490px),-50%) translateZ(-280px) rotateY(36deg) scale(0.7);
    z-index: 3;
    filter: brightness(0.52);
}

.c3d-slide.pos-right1 {
    transform: translate(calc(-50% + 260px),-50%) translateZ(-120px) rotateY(-22deg) scale(0.87);
    z-index: 5;
    filter: brightness(0.75);
}

.c3d-slide.pos-right2 {
    transform: translate(calc(-50% + 490px),-50%) translateZ(-280px) rotateY(-36deg) scale(0.7);
    z-index: 3;
    filter: brightness(0.52);
}

.c3d-slide.pos-hidden {
    transform: translate(-50%,-50%) translateZ(-580px) scale(0.4);
    opacity: 0;
    z-index: 0;
}

.carousel-3d-btn {
    position: absolute;
    top: 50%;
    z-index: 20;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    background: rgba(255,255,255,0.08);
    border: 1.5px solid rgba(252,211,77,0.35);
    color: var(--gold-vivid);
    font-size: 18px;
    display: flex;
    align-items: center;
    justify-content: center;
    transform: translateY(-50%);
    cursor: pointer;
    box-shadow: var(--shadow-gold);
    transition: all .3s;
    backdrop-filter: blur(8px);
}

.carousel-3d-btn:hover {
    background: rgba(252,211,77,0.15);
    border-color: var(--gold-vivid);
}

.carousel-3d-btn.prev {
    left: 3%;
}

.carousel-3d-btn.next {
    right: 3%;
}

.c3d-dots {
    display: flex;
    gap: 7px;
    justify-content: center;
    margin-top: 32px;
    position: relative;
    z-index: 1;
}

.c3d-dot {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: rgba(252,211,77,0.25);
    cursor: pointer;
    transition: all .3s;
}

.c3d-dot.active {
    background: var(--gold-vivid);
    width: 24px;
    border-radius: 4px;
}

/* ABOUT */
.about-section {
    background: #fff;
}

.about-inner {
    display: grid;
    grid-template-columns: 1fr 1fr;
    min-height: 560px;
}

.about-img-side {
    position: relative;
    overflow: hidden;
    min-height: 420px;
}

.about-img-side img {
    width: 100%;
    height: 100%;
    min-height: 420px;
    object-fit: cover;
    transition: transform .9s;
}

.about-section:hover .about-img-side img {
    transform: scale(1.03);
}

.about-img-badge {
    position: absolute;
    bottom: 36px;
    right: -16px;
    background: var(--grad-rg);
    border: 3px solid rgba(255,255,255,0.28);
    padding: 18px 24px;
    border-radius: 12px;
    box-shadow: var(--shadow-xl);
    text-align: center;
}

.about-img-badge .num {
    font-family: var(--font-display);
    font-size: 36px;
    color: #fff;
    line-height: 1;
}

.about-img-badge .lbl {
    font-size: 10px;
    letter-spacing: 2px;
    color: rgba(255,255,255,0.8);
    text-transform: uppercase;
    margin-top: 3px;
}

.about-text-side {
    padding: 64px 52px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    background: linear-gradient(160deg,#fff 60%,var(--cream) 100%);
}

.stars-row {
    display: flex;
    align-items: center;
    gap: 3px;
    margin-bottom: 18px;
}

.star {
    color: var(--gold-bright);
    font-size: 17px;
    animation: floatY 2.2s ease-in-out infinite;
}

.star:nth-child(2) {
    animation-delay: .12s;
}

.star:nth-child(3) {
    animation-delay: .24s;
}

.star:nth-child(4) {
    animation-delay: .36s;
}

.star:nth-child(5) {
    animation-delay: .48s;
}

.skill-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    margin-top: 20px;
}

.skill-tag {
    padding: 6px 14px;
    border: 1.5px solid var(--border-gold);
    border-radius: 28px;
    font-family: var(--font-body);
    font-size: 11.5px;
    letter-spacing: 1px;
    color: var(--gold-deep);
    background: var(--gold-pale);
    transition: all .3s;
    font-weight: 500;
}

.skill-tag:hover {
    background: var(--gold-accent);
    color: #fff;
    border-color: var(--gold-accent);
    transform: translateY(-2px);
}

/* VIDEO SECTION */
.videos-section {
    background: linear-gradient(180deg,#fff 0%,var(--pearl) 100%);
    padding: 72px 5%;
    position: relative;
    overflow: hidden;
}

.videos-section::before {
    content: '';
    position: absolute;
    inset: 0;
    background-image: radial-gradient(circle,rgba(155,21,39,0.04) 1.5px,transparent 1.5px);
    background-size: 24px 24px;
    pointer-events: none;
}

.videos-header {
    text-align: center;
    margin-bottom: 44px;
    position: relative;
    z-index: 1;
}

.videos-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 28px;
    position: relative;
    z-index: 1;
}

.video-card {
    border-radius: 20px;
    overflow: hidden;
    background: #000;
    border: 1.5px solid var(--border);
    box-shadow: var(--shadow-md);
    transition: all .44s var(--ease-smooth);
}

.video-card:hover {
    transform: translateY(-8px);
    box-shadow: var(--shadow-xl);
    border-color: var(--border-gold);
}

.video-wrapper {
    position: relative;
    padding-bottom: 56.25%;
    height: 0;
    overflow: hidden;
    background: #0d0510;
}

.video-wrapper video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: none;
    display: block;
    background: #000;
}

/* RELIGIONS SECTION */
.religions-section {
    background: linear-gradient(180deg,#0a0208 0%,#1a0312 40%,#0d0510 70%,#100316 100%);
    padding: 96px 5%;
    position: relative;
    overflow: hidden;
}

.religions-section::before {
    content: 'ॐ';
    position: absolute;
    top: 30px;
    right: 5%;
    font-size: 160px;
    color: rgba(217,119,6,0.05);
    font-family: serif;
    pointer-events: none;
    animation: spinSlow 60s linear infinite;
}

.religions-section::after {
    content: '';
    position: absolute;
    inset: 0;
    background: radial-gradient(ellipse at 20% 30%,rgba(155,21,39,0.15) 0%,transparent 50%),radial-gradient(ellipse at 80% 70%,rgba(217,119,6,0.1) 0%,transparent 45%);
    pointer-events: none;
}

.rel-stars-bg {
    position: absolute;
    inset: 0;
    pointer-events: none;
    overflow: hidden;
    z-index: 0;
}

.religions-header {
    text-align: center;
    margin-bottom: 64px;
    position: relative;
    z-index: 1;
}

.religions-header .sec-label {
    color: rgba(252,211,77,0.9);
    justify-content: center;
}

.religions-header .sec-label::before,.religions-header .sec-label::after {
    color: rgba(252,211,77,0.5);
}

.religions-header .sec-title {
    font-size: clamp(28px,3.6vw,50px);
    color: #fff;
}

.religions-header .sec-title em {
    background: linear-gradient(135deg,var(--gold-vivid),var(--gold-bright));
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

.religions-header p {
    font-family: var(--font-accent);
    font-style: italic;
    font-size: 17px;
    color: rgba(255,255,255,0.65);
    max-width: 560px;
    margin: 0 auto;
    line-height: 1.85;
}

.religions-unity-row {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0;
    margin-bottom: 56px;
    position: relative;
    z-index: 1;
    flex-wrap: wrap;
}

.religions-unity-line {
    flex: 1;
    max-width: 140px;
    height: 2px;
    background: linear-gradient(90deg,transparent,rgba(252,211,77,0.4));
    min-width: 40px;
}

.religions-unity-line.right {
    background: linear-gradient(90deg,rgba(252,211,77,0.4),transparent);
}

.religions-unity-text {
    font-family: var(--font-display);
    font-size: 13px;
    letter-spacing: 4px;
    color: rgba(252,211,77,0.8);
    text-transform: uppercase;
    padding: 0 28px;
    text-align: center;
    line-height: 1.5;
}

.religions-grid {
    display: grid;
    grid-template-columns: repeat(4,1fr);
    gap: 24px;
    position: relative;
    z-index: 1;
    max-width: 1200px;
    margin: 0 auto 56px;
}

.faith-card {
    background: rgba(255,255,255,0.05);
    border: 1.5px solid rgba(217,119,6,0.2);
    border-radius: 20px;
    overflow: hidden;
    text-align: center;
    cursor: pointer;
    transition: all .44s var(--ease-smooth);
    box-shadow: 0 4px 24px rgba(0,0,0,0.4);
    position: relative;
    backdrop-filter: blur(4px);
}

.faith-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 3px;
    background: var(--grad-rg);
    transform: scaleX(0);
    transform-origin: left;
    transition: transform .38s;
}

.faith-card:hover {
    background: rgba(217,119,6,0.1);
    border-color: rgba(252,211,77,0.45);
    transform: translateY(-9px);
    box-shadow: 0 20px 56px rgba(0,0,0,0.5);
}

.faith-card:hover::before {
    transform: scaleX(1);
}

.faith-icon-wrap {
    width: 100%;
    height: 220px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 14px;
    position: relative;
    overflow: hidden;
}

.faith-icon-wrap::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 40px;
    background: linear-gradient(0deg,rgba(0,0,0,0.2),transparent);
}

.faith-svg-anim {
    animation: floatY 3.2s ease-in-out infinite;
}

.faith-emoji-big {
    font-size: 36px;
    filter: drop-shadow(0 3px 10px rgba(0,0,0,0.22));
    animation: floatY 3.8s ease-in-out .4s infinite;
}

.faith-body {
    padding: 20px 18px 22px;
}

.faith-name {
    font-family: var(--font-display);
    font-size: 18px;
    color: #fff;
    margin-bottom: 7px;
    line-height: 1.2;
}

.faith-desc {
    font-family: var(--font-body);
    font-size: 12px;
    color: rgba(255,255,255,0.6);
    line-height: 1.75;
    font-weight: 300;
    margin-bottom: 12px;
}

.faith-badge {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    background: rgba(252,211,77,0.12);
    border: 1px solid rgba(252,211,77,0.3);
    border-radius: 20px;
    padding: 4px 12px;
    font-family: var(--font-body);
    font-size: 10px;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    color: var(--gold-vivid);
    font-weight: 600;
}

.religions-message {
    background: var(--grad-rg);
    border-radius: 20px;
    padding: 36px 44px;
    display: flex;
    align-items: center;
    gap: 32px;
    position: relative;
    z-index: 1;
    max-width: 1200px;
    margin: 0 auto;
    overflow: hidden;
    box-shadow: var(--shadow-xl);
}

.religions-message::before {
    content: '';
    position: absolute;
    top: -60px;
    right: -60px;
    width: 200px;
    height: 200px;
    border-radius: 50%;
    background: rgba(255,255,255,0.06);
}

.religions-message::after {
    content: '';
    position: absolute;
    bottom: -40px;
    left: 10%;
    width: 150px;
    height: 150px;
    border-radius: 50%;
    background: rgba(255,255,255,0.04);
}

.religions-message-icon {
    font-size: 52px;
    flex-shrink: 0;
    animation: pulse 3s ease-in-out infinite;
}

.religions-message-text h3 {
    font-family: var(--font-display);
    font-size: clamp(18px,2vw,26px);
    color: #fff;
    margin-bottom: 8px;
    line-height: 1.2;
}

.religions-message-text p {
    font-family: var(--font-accent);
    font-size: 15px;
    font-style: italic;
    color: rgba(255,255,255,0.88);
    line-height: 1.75;
}

.religions-message-cta {
    margin-left: auto;
    flex-shrink: 0;
    background: #fff;
    color: var(--crimson-dark);
    font-family: var(--font-body);
    font-size: 11px;
    letter-spacing: 2px;
    text-transform: uppercase;
    font-weight: 700;
    padding: 13px 26px;
    border-radius: 10px;
    border: none;
    box-shadow: 0 6px 24px rgba(0,0,0,0.15);
    transition: all .3s;
    cursor: pointer;
    white-space: nowrap;
}

.religions-message-cta:hover {
    transform: translateY(-2px);
    box-shadow: 0 12px 36px rgba(0,0,0,0.22);
}

/* UK LOCATIONS */
.locations-section {
    background: linear-gradient(180deg,#0a0208 0%,#1a0312 40%,#0d0a02 100%);
    padding: 100px 5%;
    position: relative;
    overflow: hidden;
}

.locations-section::before {
    content: '';
    position: absolute;
    inset: 0;
    background: radial-gradient(ellipse at 20% 20%,rgba(155,21,39,0.22) 0%,transparent 50%),radial-gradient(ellipse at 80% 80%,rgba(217,119,6,0.14) 0%,transparent 45%);
    pointer-events: none;
}

.loc-stars-bg {
    position: absolute;
    inset: 0;
    pointer-events: none;
    overflow: hidden;
}

.loc-star-dot {
    position: absolute;
    border-radius: 50%;
}

.locations-header {
    text-align: center;
    margin-bottom: 64px;
    position: relative;
    z-index: 2;
}

.locations-header .sec-label {
    color: rgba(252,211,77,0.9);
}

.locations-header .sec-label::before,.locations-header .sec-label::after {
    color: rgba(252,211,77,0.5);
}

.locations-header .sec-title {
    color: #fff;
}

.locations-header .sec-title em {
    background: linear-gradient(135deg,var(--gold-vivid),var(--gold-bright));
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

.locations-header p {
    font-family: var(--font-accent);
    font-style: italic;
    font-size: 17px;
    color: rgba(255,255,255,0.65);
    max-width: 560px;
    margin: 0 auto;
    line-height: 1.85;
}

.uk-presence-bar {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 16px;
    margin-bottom: 48px;
    position: relative;
    z-index: 2;
    flex-wrap: wrap;
}

.uk-presence-item {
    display: flex;
    align-items: center;
    gap: 7px;
    background: rgba(255,255,255,0.06);
    border: 1px solid rgba(252,211,77,0.2);
    border-radius: 24px;
    padding: 7px 16px;
    font-family: var(--font-body);
    font-size: 11px;
    color: rgba(255,255,255,0.7);
    letter-spacing: 1px;
    font-weight: 500;
    transition: all .3s;
}

.uk-presence-item:hover {
    background: rgba(252,211,77,0.1);
    border-color: rgba(252,211,77,0.45);
    color: #fff;
}

.uk-presence-dot {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: var(--gold-vivid);
    animation: pulse 2s ease-in-out infinite;
    flex-shrink: 0;
}

.locations-grid {
    display: grid;
    grid-template-columns: repeat(5,1fr);
    gap: 20px;
    position: relative;
    z-index: 2;
    max-width: 1300px;
    margin: 0 auto 56px;
}

.loc-card {
    border-radius: 16px;
    overflow: hidden;
    cursor: pointer;
    position: relative;
    border: 1.5px solid rgba(255,255,255,0.08);
    transition: all .44s var(--ease-smooth);
    box-shadow: 0 4px 24px rgba(0,0,0,0.4);
}

.loc-card:hover {
    transform: translateY(-10px) scale(1.02);
    border-color: rgba(252,211,77,0.45);
    box-shadow: 0 20px 56px rgba(0,0,0,0.6),0 0 0 1px rgba(252,211,77,0.2);
}

.loc-card-icon-wrap {
    width: 100%;
    height: 210px;
    position: relative;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 8px;
}

.loc-card.featured .loc-card-icon-wrap {
    height: 280px;
}

.loc-icon-svg-anim {
    transition: transform .5s var(--ease-smooth);
}

.loc-card:hover .loc-icon-svg-anim {
    transform: translateY(-6px) scale(1.06);
}

.loc-card-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(0deg,rgba(5,2,10,0.92) 0%,rgba(0,0,0,0.25) 55%,rgba(0,0,0,0.08) 100%);
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    padding: 14px 14px 16px;
}

.loc-flag {
    font-size: 18px;
    margin-bottom: 4px;
}

.loc-city-name {
    font-family: var(--font-display);
    font-size: 16px;
    color: #fff;
    line-height: 1.1;
    margin-bottom: 3px;
}

.loc-landmark {
    font-family: var(--font-body);
    font-size: 9.5px;
    color: rgba(252,211,77,0.8);
    letter-spacing: 1px;
    text-transform: uppercase;
    font-weight: 500;
}

.loc-status {
    position: absolute;
    top: 10px;
    right: 10px;
    background: rgba(37,211,102,0.9);
    border-radius: 20px;
    padding: 3px 9px;
    font-family: var(--font-body);
    font-size: 8.5px;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    color: #fff;
    font-weight: 700;
    display: flex;
    align-items: center;
    gap: 4px;
}

.loc-status-dot {
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: #fff;
    animation: pulse 1.5s ease-in-out infinite;
}

.loc-card.featured {
    grid-column: span 2;
}

.loc-card.featured .loc-city-name {
    font-size: 22px;
}

.loc-card.featured .loc-landmark {
    font-size: 11px;
}

.loc-bg-london {
    background: linear-gradient(160deg,#0a0f1a 0%,#1a2540 50%,#0d1428 100%);
}

.loc-bg-leeds {
    background: linear-gradient(160deg,#0f1a0a 0%,#1e3010 50%,#0d1a08 100%);
}

.loc-bg-manchester {
    background: linear-gradient(160deg,#1a0a12 0%,#360d20 50%,#1a0810 100%);
}

.loc-bg-birmingham {
    background: linear-gradient(160deg,#1a100a 0%,#361e0d 50%,#1a0f08 100%);
}

.loc-bg-bradford {
    background: linear-gradient(160deg,#120a1a 0%,#260d36 50%,#110812 100%);
}

.loc-bg-default {
    background: linear-gradient(160deg,#0a0a1a 0%,#141428 50%,#0a0a18 100%);
}

.locations-cta-strip {
    background: rgba(255,255,255,0.05);
    border: 1.5px solid rgba(252,211,77,0.2);
    border-radius: 16px;
    padding: 28px 36px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    flex-wrap: wrap;
    position: relative;
    z-index: 2;
    max-width: 1300px;
    margin: 0 auto;
    backdrop-filter: blur(8px);
}

.locations-cta-text h3 {
    font-family: var(--font-display);
    font-size: clamp(16px,2vw,22px);
    color: #fff;
    margin-bottom: 6px;
}

.locations-cta-text p {
    font-family: var(--font-body);
    font-size: 13px;
    color: rgba(255,255,255,0.6);
}

.locations-cta-btns {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
}

.loc-btn-call {
    background: var(--grad-rg);
    color: #fff;
    font-family: var(--font-body);
    font-size: 11px;
    letter-spacing: 2px;
    text-transform: uppercase;
    font-weight: 700;
    padding: 12px 24px;
    border-radius: 10px;
    border: none;
    box-shadow: 0 6px 22px rgba(155,21,39,0.45);
    transition: all .3s;
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 7px;
}

.loc-btn-call:hover {
    transform: translateY(-2px);
    box-shadow: 0 12px 36px rgba(155,21,39,0.6);
}

.loc-btn-wa {
    background: rgba(37,211,102,0.15);
    color: #25D366;
    font-family: var(--font-body);
    font-size: 11px;
    letter-spacing: 2px;
    text-transform: uppercase;
    font-weight: 700;
    padding: 12px 24px;
    border-radius: 10px;
    border: 1.5px solid rgba(37,211,102,0.35);
    transition: all .3s;
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 7px;
}

.loc-btn-wa:hover {
    background: rgba(37,211,102,0.25);
    border-color: rgba(37,211,102,0.6);
}

/* ZODIAC */
.zodiac-section {
    background: var(--pearl);
    padding: 80px 5%;
    position: relative;
    overflow: hidden;
}

.zodiac-slider-wrap {
    position: relative;
    margin-top: 48px;
}

.zodiac-3d-track {
    display: flex;
    gap: 18px;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
    padding: 18px 4px 40px;
    scroll-behavior: smooth;
}

.zodiac-3d-track::-webkit-scrollbar {
    display: none;
}

.z-card {
    flex: 0 0 182px;
    height: 268px;
    scroll-snap-align: start;
    border-radius: 14px;
    overflow: hidden;
    position: relative;
    cursor: pointer;
    transition: transform .42s,box-shadow .42s;
    box-shadow: var(--shadow-sm);
}

.z-card:hover {
    transform: translateY(-12px) scale(1.04);
    box-shadow: var(--shadow-lg);
}

.z-card img {
    width: 182px;
    height: 268px;
    object-fit: cover;
}

.z-card-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(0deg,rgba(92,11,22,0.88) 0%,rgba(0,0,0,0.08) 52%,transparent 100%);
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    padding: 16px 14px;
}

.z-card .zsym {
    font-size: 26px;
    margin-bottom: 4px;
}

.z-card .zname {
    font-family: var(--font-display);
    font-size: 14px;
    color: #fff;
}

.z-card .zdates {
    font-family: var(--font-body);
    font-size: 10px;
    color: rgba(255,255,255,0.6);
    letter-spacing: 1px;
    margin-top: 2px;
}

.z-card .zel {
    font-family: var(--font-body);
    font-size: 8.5px;
    letter-spacing: 2px;
    text-transform: uppercase;
    margin-top: 6px;
    padding: 3px 9px;
    border-radius: 18px;
    display: inline-block;
}

.fire-el {
    background: rgba(239,68,68,0.38);
    color: #fca5a5;
}

.earth-el {
    background: rgba(34,197,94,0.28);
    color: #86efac;
}

.air-el {
    background: rgba(59,130,246,0.28);
    color: #93c5fd;
}

.water-el {
    background: rgba(155,21,39,0.38);
    color: #f4a0a8;
}

.zodiac-scroll-btn {
    position: absolute;
    top: 50%;
    z-index: 10;
    width: 42px;
    height: 42px;
    border-radius: 50%;
    background: #fff;
    border: 1.5px solid var(--border-gold);
    color: var(--gold-deep);
    font-size: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    transform: translateY(-50%);
    cursor: pointer;
    transition: all .3s;
    box-shadow: var(--shadow-gold);
}

.zodiac-scroll-btn:hover {
    background: var(--grad-gold);
    color: var(--crimson-dark);
}

.zodiac-scroll-btn.zprev {
    left: -21px;
}

.zodiac-scroll-btn.znext {
    right: -21px;
}

/* BHAVANI SECTION */
.bhavani-section {
    background: linear-gradient(160deg,#0d0510 0%,#100316 50%,#1a0312 100%);
    padding: 88px 5%;
    position: relative;
    overflow: hidden;
}

.bhavani-section::before {
    content: 'ॐ';
    position: absolute;
    top: 40px;
    left: 5%;
    font-size: 120px;
    color: rgba(252,211,77,0.04);
    font-family: serif;
    pointer-events: none;
}

.bhavani-section::after {
    content: 'ॐ';
    position: absolute;
    bottom: 40px;
    right: 5%;
    font-size: 120px;
    color: rgba(155,21,39,0.04);
    font-family: serif;
    pointer-events: none;
}

.bhav-dark-stars {
    position: absolute;
    inset: 0;
    pointer-events: none;
    overflow: hidden;
    z-index: 0;
}

.bhavani-section-head {
    text-align: center;
    margin-bottom: 56px;
    position: relative;
    z-index: 1;
}

.bhavani-section-head .sec-label {
    color: rgba(252,211,77,0.9);
}

.bhavani-section-head .sec-label::before,.bhavani-section-head .sec-label::after {
    color: rgba(252,211,77,0.5);
}

.bhavani-section-head .sec-title {
    color: #fff;
}

.bhavani-section-head .sec-title em {
    background: linear-gradient(135deg,var(--gold-vivid),var(--gold-bright));
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

.bhavani-section-head p {
    color: rgba(255,255,255,0.65)!important;
}

.bhavani-grid {
    display: grid;
    grid-template-columns: 1fr 280px 1fr;
    gap: 28px;
    align-items: start;
    position: relative;
    z-index: 1;
}

.bhavani-card {
    background: rgba(255,255,255,0.06);
    border: 1.5px solid rgba(217,119,6,0.2);
    border-radius: 20px;
    padding: 28px 24px;
    box-shadow: 0 4px 24px rgba(0,0,0,0.4);
    transition: all .3s;
    height: 100%;
    backdrop-filter: blur(4px);
}

.bhavani-card:hover {
    background: rgba(255,255,255,0.09);
    border-color: rgba(252,211,77,0.3);
    box-shadow: 0 8px 40px rgba(0,0,0,0.5);
}

.bhav-astrologer-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(252,211,77,0.1);
    border: 1px solid rgba(252,211,77,0.3);
    border-radius: 24px;
    padding: 5px 14px;
    font-family: var(--font-body);
    font-size: 10px;
    letter-spacing: 2.5px;
    text-transform: uppercase;
    color: var(--gold-vivid);
    font-weight: 700;
    margin-bottom: 18px;
}

.bhav-name {
    font-family: var(--font-display);
    font-size: clamp(20px,2.2vw,30px);
    color: #fff;
    line-height: 1.15;
    margin-bottom: 5px;
}

.bhav-name em {
    display: block;
    font-style: italic;
    background: linear-gradient(135deg,var(--gold-vivid),var(--gold-bright));
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

.bhav-subtitle {
    font-family: var(--font-accent);
    font-size: 13px;
    font-style: italic;
    color: rgba(255,255,255,0.55);
    margin-bottom: 20px;
}

.bhav-divider {
    height: 1px;
    background: linear-gradient(90deg,transparent,rgba(252,211,77,0.3),transparent);
    margin: 16px 0;
}

.bhav-tagline-list {
    display: flex;
    flex-direction: column;
    gap: 9px;
    margin-bottom: 22px;
}

.bhav-tagline-item {
    display: flex;
    align-items: center;
    gap: 10px;
    font-family: var(--font-body);
    font-size: 12.5px;
    color: rgba(255,255,255,0.75);
}

.bhav-tagline-icon {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: rgba(252,211,77,0.1);
    border: 1px solid rgba(252,211,77,0.25);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 13px;
    flex-shrink: 0;
}

.bhav-services-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 7px;
    margin-bottom: 20px;
}

.bhav-svc {
    display: flex;
    align-items: center;
    gap: 8px;
    background: rgba(255,255,255,0.05);
    border: 1px solid rgba(255,255,255,0.1);
    border-radius: 9px;
    padding: 8px 11px;
    font-family: var(--font-body);
    font-size: 11px;
    color: rgba(255,255,255,0.7);
    transition: all .25s;
    cursor: pointer;
}

.bhav-svc:hover {
    background: rgba(252,211,77,0.1);
    border-color: rgba(252,211,77,0.3);
    color: var(--gold-vivid);
}

.bhav-svc-icon {
    font-size: 15px;
    flex-shrink: 0;
}

.bhav-cta {
    width: 100%;
    background: var(--grad-rg);
    color: #fff;
    font-family: var(--font-body);
    font-size: 11.5px;
    letter-spacing: 2px;
    text-transform: uppercase;
    font-weight: 700;
    padding: 13px 18px;
    border-radius: 12px;
    border: none;
    box-shadow: 0 6px 22px rgba(155,21,39,0.4);
    transition: all .3s;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    margin-bottom: 10px;
}

.bhav-cta:hover {
    transform: translateY(-2px);
    box-shadow: 0 12px 36px rgba(155,21,39,0.55);
}

.bhav-phone {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    background: rgba(252,211,77,0.1);
    border: 1.5px solid rgba(252,211,77,0.3);
    border-radius: 12px;
    padding: 11px 18px;
    font-family: var(--font-display);
    font-size: 18px;
    color: var(--gold-vivid);
    transition: all .3s;
    cursor: pointer;
}

.bhav-phone:hover {
    background: rgba(252,211,77,0.2);
    border-color: var(--gold-vivid);
}

.bhav-phone-icon {
    width: 30px;
    height: 30px;
    border-radius: 50%;
    background: var(--grad-rg);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 13px;
    flex-shrink: 0;
    animation: pulse 2.5s ease-in-out infinite;
}

.bhavani-center-col {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 16px;
}

.bhav-portrait-wrap {
    position: relative;
    width: 220px;
    height: 260px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.bhav-ring-a {
    position: absolute;
    inset: -20px;
    border-radius: 50%;
    border: 1px dashed rgba(217,119,6,0.25);
    animation: spinSlow 28s linear infinite;
}

.bhav-ring-b {
    position: absolute;
    inset: -6px;
    border-radius: 50%;
    border: 1.5px solid rgba(252,211,77,0.35);
    animation: spinRev 18s linear infinite;
}

.bhav-portrait-img {
    width: 190px;
    height: 230px;
    border-radius: 14px;
    border: 2.5px solid var(--gold-bright);
    overflow: hidden;
    box-shadow: var(--shadow-lg),0 0 30px rgba(217,119,6,0.3);
    position: relative;
    z-index: 2;
}

.bhav-portrait-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 12px;
}

.bhav-float-badge {
    position: absolute;
    z-index: 3;
    background: rgba(255,255,255,0.1);
    border: 1.5px solid rgba(252,211,77,0.4);
    border-radius: 10px;
    padding: 8px 12px;
    text-align: center;
    box-shadow: var(--shadow-gold);
    backdrop-filter: blur(8px);
}

.bhav-float-badge.top-right {
    top: -8px;
    right: -28px;
}

.bhav-float-badge.bot-left {
    bottom: -8px;
    left: -28px;
}

.bhav-float-badge .fbn {
    font-family: var(--font-display);
    font-size: 17px;
    color: var(--gold-vivid);
    line-height: 1;
}

.bhav-float-badge .fbl {
    font-family: var(--font-body);
    font-size: 8px;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    color: rgba(255,255,255,0.6);
    margin-top: 2px;
}

.bhav-trust-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
    width: 100%;
}

.bhav-trust-item {
    background: rgba(255,255,255,0.06);
    border: 1.5px solid rgba(252,211,77,0.2);
    border-radius: 10px;
    padding: 10px;
    text-align: center;
    transition: all .3s;
}

.bhav-trust-item:hover {
    background: rgba(252,211,77,0.1);
    transform: translateY(-2px);
    box-shadow: var(--shadow-gold);
}

.bhav-trust-icon {
    font-size: 18px;
    margin-bottom: 4px;
}

.bhav-trust-val {
    font-family: var(--font-display);
    font-size: 13px;
    color: #fff;
}

.bhav-trust-lbl {
    font-family: var(--font-body);
    font-size: 9px;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    color: rgba(255,255,255,0.5);
    margin-top: 1px;
}

.bhav-location {
    width: 100%;
    background: rgba(252,211,77,0.08);
    border: 1.5px solid rgba(252,211,77,0.25);
    border-radius: 10px;
    padding: 10px 14px;
    display: flex;
    align-items: center;
    gap: 9px;
}

.bhav-location-icon {
    font-size: 16px;
}

.bhav-location-text {
    font-family: var(--font-body);
    font-size: 11px;
    color: rgba(255,255,255,0.7);
}

.bhav-location-text strong {
    color: var(--gold-vivid);
}

.bhav-neg-title {
    display: flex;
    align-items: center;
    gap: 9px;
    font-family: var(--font-display);
    font-size: 15px;
    color: #fff;
    margin-bottom: 14px;
}

.bhav-neg-title-icon {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: rgba(252,211,77,0.1);
    border: 1.5px solid rgba(252,211,77,0.3);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 15px;
}

.bhav-neg-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0;
}

.bhav-neg-item {
    display: flex;
    align-items: center;
    gap: 6px;
    font-family: var(--font-body);
    font-size: 11.5px;
    color: rgba(255,255,255,0.65);
    padding: 5px 0;
    border-bottom: 1px dashed rgba(255,255,255,0.08);
}

.bhav-neg-item:nth-last-child(-n+2) {
    border-bottom: none;
}

.bhav-neg-dot {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: var(--gold-vivid);
    flex-shrink: 0;
}

.bhav-info-list {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin: 18px 0;
}

.bhav-info-row {
    display: flex;
    align-items: center;
    gap: 11px;
    background: rgba(255,255,255,0.04);
    border: 1px solid rgba(255,255,255,0.08);
    border-radius: 9px;
    padding: 10px 14px;
    transition: all .25s;
}

.bhav-info-row:hover {
    background: rgba(252,211,77,0.08);
    border-color: rgba(252,211,77,0.25);
}

.bhav-info-icon {
    font-size: 15px;
    width: 26px;
    text-align: center;
    flex-shrink: 0;
}

.bhav-info-text {
    font-family: var(--font-body);
    font-size: 12px;
    color: rgba(255,255,255,0.65);
}

.bhav-info-text strong {
    color: #fff;
}

.bhav-guarantee {
    background: rgba(252,211,77,0.08);
    border: 1.5px solid rgba(252,211,77,0.25);
    border-radius: 12px;
    padding: 16px;
    display: flex;
    align-items: flex-start;
    gap: 14px;
}

.bhav-guarantee-icon {
    font-size: 28px;
    flex-shrink: 0;
    margin-top: 2px;
}

.bhav-guarantee-title {
    font-family: var(--font-display);
    font-size: 14px;
    color: var(--gold-vivid);
    margin-bottom: 4px;
}

.bhav-guarantee-text {
    font-family: var(--font-body);
    font-size: 12px;
    color: rgba(255,255,255,0.6);
    line-height: 1.6;
}

/* COSMIC ORBIT */
.cosmic-orbit-section {
    background: #0d0510;
    padding: 100px 5%;
    position: relative;
    overflow: hidden;
}

.cosmic-orbit-section::before {
    content: '';
    position: absolute;
    inset: 0;
    background: radial-gradient(ellipse at 20% 30%,rgba(155,21,39,0.18) 0%,transparent 45%),radial-gradient(ellipse at 80% 70%,rgba(217,119,6,0.1) 0%,transparent 40%);
    pointer-events: none;
}

.cosmic-orbit-section .sec-label {
    color: rgba(252,211,77,0.9);
}

.cosmic-orbit-section .sec-label::before,.cosmic-orbit-section .sec-label::after {
    color: rgba(252,211,77,0.5);
}

.cosmic-orbit-section .sec-title {
    color: #fff;
}

.cosmic-orbit-section .sec-title em {
    background: linear-gradient(135deg,var(--gold-vivid),var(--gold-bright));
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

.cosmic-orbit-section p {
    color: rgba(255,255,255,0.55)!important;
}

.cosmic-orbit-section .orbit-card {
    background: rgba(255,255,255,0.05);
    border-color: rgba(217,119,6,0.2);
}

.cosmic-orbit-section .orbit-card:hover {
    background: rgba(217,119,6,0.1);
    border-color: rgba(217,119,6,0.4);
}

.cosmic-orbit-section .orbit-card-num {
    color: rgba(252,211,77,0.7);
}

.cosmic-orbit-section .orbit-card-title {
    color: #fff;
}

.cosmic-orbit-section .orbit-card-desc {
    color: rgba(255,255,255,0.55);
}

.orbit-stars {
    position: absolute;
    inset: 0;
    pointer-events: none;
    overflow: hidden;
}

.orbit-star {
    position: absolute;
    border-radius: 50%;
}

.cosmic-orbit-header {
    text-align: center;
    margin-bottom: 72px;
    position: relative;
    z-index: 2;
}

.cosmic-orbit-layout {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    gap: 0 32px;
    align-items: center;
    position: relative;
    z-index: 2;
    max-width: 1200px;
    margin: 0 auto;
}

.orbit-cards-left,.orbit-cards-right {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.orbit-cards-right {
    align-items: flex-end;
}

.orbit-card {
    background: #fff;
    border: 1.5px solid var(--border);
    border-radius: 14px;
    padding: 20px 24px;
    width: 280px;
    cursor: pointer;
    transition: all .42s;
    position: relative;
    overflow: hidden;
    box-shadow: var(--shadow-sm);
}

.orbit-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 2.5px;
    background: var(--grad-rg);
    transform: scaleX(0);
    transform-origin: left;
    transition: transform .38s;
}

.orbit-card:hover {
    background: var(--gold-pale);
    border-color: var(--border-gold);
    transform: translateY(-6px);
    box-shadow: var(--shadow-gold);
}

.orbit-card:hover::before {
    transform: scaleX(1);
}

.orbit-cards-right .orbit-card {
    text-align: right;
}

.orbit-card-num {
    font-family: var(--font-body);
    font-size: 10.5px;
    letter-spacing: 4px;
    color: var(--gold);
    font-weight: 700;
    margin-bottom: 7px;
}

.orbit-card-icon {
    font-size: 24px;
    margin-bottom: 9px;
    display: block;
    transition: transform .38s var(--ease-spring);
}

.orbit-card:hover .orbit-card-icon {
    transform: scale(1.18) rotate(7deg);
}

.orbit-card-title {
    font-family: var(--font-display);
    font-size: 15px;
    color: var(--text-dark);
    margin-bottom: 5px;
    line-height: 1.3;
}

.orbit-card-desc {
    font-family: var(--font-body);
    font-size: 12px;
    color: var(--text-mid);
    line-height: 1.75;
    font-weight: 300;
}

.orbit-center {
    position: relative;
    width: 320px;
    height: 320px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}

.orbit-ring-1 {
    position: absolute;
    inset: -38px;
    border-radius: 50%;
    border: 1px dashed rgba(217,119,6,0.2);
    animation: spinSlow 22s linear infinite;
}

.orbit-ring-2 {
    position: absolute;
    inset: -18px;
    border-radius: 50%;
    border: 1px solid rgba(217,119,6,0.28);
    animation: spinRev 15s linear infinite;
}

.orbit-ring-3 {
    position: absolute;
    inset: -4px;
    border-radius: 50%;
    border: 2px solid rgba(217,119,6,0.5);
    animation: spinSlow 9s linear infinite;
}

.orbit-img-wrap {
    width: 270px;
    height: 270px;
    border-radius: 50%;
    overflow: hidden;
    border: 4px solid var(--gold-bright);
    box-shadow: 0 0 52px rgba(217,119,6,0.3);
    position: relative;
    z-index: 2;
    animation: goldGlow 4s ease-in-out infinite;
}

.orbit-img-wrap img {
    width: 270px;
    height: 270px;
    object-fit: cover;
}

.orbit-glow {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    width: 290px;
    height: 290px;
    border-radius: 50%;
    background: radial-gradient(circle,rgba(217,119,6,0.1) 0%,transparent 68%);
    pointer-events: none;
    z-index: 1;
}

.orbit-cta {
    text-align: center;
    margin-top: 56px;
    position: relative;
    z-index: 2;
}

/* WHY */
.why-section {
    background: #fff;
    padding: 88px 5%;
    position: relative;
    overflow: hidden;
}

.why-section::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 4px;
    background: var(--grad-rg);
}

.why-header {
    text-align: center;
    margin-bottom: 60px;
}

.why-header p {
    font-family: var(--font-accent);
    font-style: italic;
    font-size: 17px;
    color: var(--text-mid);
    max-width: 560px;
    margin: 0 auto;
    line-height: 1.85;
}

.why-grid {
    display: grid;
    grid-template-columns: repeat(3,1fr);
    gap: 20px;
}

.why-card {
    background: #fff;
    border: 1.5px solid var(--border);
    border-radius: 16px;
    padding: 36px 28px;
    text-align: center;
    transition: all .44s;
    position: relative;
    overflow: hidden;
    cursor: pointer;
    box-shadow: var(--shadow-sm);
}

.why-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 3px;
    background: var(--grad-rg);
    transform: scaleX(0);
    transform-origin: left;
    transition: transform .38s;
}

.why-card:hover {
    border-color: var(--border-gold);
    transform: translateY(-7px);
    box-shadow: var(--shadow-lg);
}

.why-card:hover::before {
    transform: scaleX(1);
}

.why-icon-wrap {
    width: 70px;
    height: 70px;
    border-radius: 50%;
    background: var(--gold-pale);
    border: 1.5px solid var(--border-gold);
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 22px;
    font-size: 28px;
    transition: all .38s;
}

.why-card:hover .why-icon-wrap {
    background: var(--grad-rg);
    border-color: var(--crimson);
    transform: scale(1.08) rotate(4deg);
    box-shadow: 0 10px 28px rgba(155,21,39,0.28);
}

.why-title {
    font-family: var(--font-display);
    font-size: 18px;
    color: var(--text-dark);
    margin-bottom: 12px;
    line-height: 1.3;
}

.why-desc {
    font-family: var(--font-body);
    font-size: 13px;
    color: var(--text-mid);
    line-height: 1.88;
    font-weight: 300;
}

.why-badge {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    margin-top: 18px;
    font-family: var(--font-body);
    font-size: 10px;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: var(--gold-deep);
    font-weight: 600;
    border-top: 1px solid var(--border-gold);
    padding-top: 14px;
    width: 100%;
    justify-content: center;
}

.why-bottom-strip {
    margin-top: 52px;
    display: grid;
    grid-template-columns: repeat(4,1fr);
    background: var(--grad-rg);
    border-radius: 16px;
    overflow: hidden;
    box-shadow: var(--shadow-xl);
}

.why-strip-item {
    text-align: center;
    padding: 28px 16px;
    border-right: 1px solid rgba(255,255,255,0.14);
}

.why-strip-item:last-child {
    border-right: none;
}

.why-strip-num {
    font-family: var(--font-display);
    font-size: 32px;
    color: #fff;
    line-height: 1;
}

.why-strip-lbl {
    font-family: var(--font-body);
    font-size: 10px;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: rgba(255,255,255,0.68);
    margin-top: 7px;
}

/* MORE SERVICES */
.more-services {
    background: linear-gradient(180deg,var(--off-white),var(--pearl));
    padding: 88px 5%;
}

.more-services-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    margin-bottom: 52px;
    gap: 20px;
    flex-wrap: wrap;
}

.ms-grid {
    display: grid;
    grid-template-columns: repeat(3,1fr);
    gap: 24px;
}

.ms-card {
    background: #fff;
    border-radius: 16px;
    overflow: hidden;
    border: 1.5px solid var(--border);
    transition: all .42s;
    cursor: pointer;
    box-shadow: var(--shadow-sm);
}

.ms-card:hover {
    transform: translateY(-9px);
    box-shadow: var(--shadow-xl);
    border-color: var(--border-gold);
}

.ms-card-img {
    position: relative;
    overflow: hidden;
    height: 210px;
}

.ms-card-img img {
    width: 100%;
    height: 210px;
    object-fit: cover;
    transition: transform .55s;
}

.ms-card:hover .ms-card-img img {
    transform: scale(1.07);
}

.ms-tag {
    position: absolute;
    top: 13px;
    left: 13px;
    z-index: 2;
    background: var(--grad-rg);
    color: #fff;
    font-family: var(--font-body);
    font-size: 8.5px;
    letter-spacing: 2.5px;
    text-transform: uppercase;
    font-weight: 600;
    padding: 4px 11px;
    border-radius: 18px;
}

.ms-icon {
    position: absolute;
    bottom: 13px;
    right: 13px;
    z-index: 2;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: rgba(255,255,255,0.96);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    box-shadow: var(--shadow-md);
    transition: transform .3s var(--ease-spring);
}

.ms-card:hover .ms-icon {
    transform: scale(1.14) rotate(10deg);
}

.ms-card-body {
    padding: 22px 22px 24px;
}

.ms-card-title {
    font-size: 18px;
    color: var(--text-dark);
    margin-bottom: 9px;
    line-height: 1.3;
    font-weight: 600;
}

.ms-card-desc {
    font-family: var(--font-body);
    font-size: 13px;
    color: var(--text-mid);
    line-height: 1.8;
    margin-bottom: 14px;
    font-weight: 300;
}

.ms-card-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-top: 12px;
    border-top: 1px solid var(--border-gold);
}

.ms-price {
    font-family: var(--font-display);
    font-size: 15px;
    color: var(--gold-deep);
}

.ms-link {
    font-family: var(--font-body);
    font-size: 11.5px;
    letter-spacing: 2px;
    text-transform: uppercase;
    font-weight: 500;
    color: var(--text-muted);
    display: flex;
    align-items: center;
    gap: 5px;
    transition: all .25s;
}

.ms-card:hover .ms-link {
    gap: 10px;
    color: var(--gold-deep);
}

.ms-features {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
    margin-bottom: 14px;
}

.ms-feat {
    font-family: var(--font-body);
    font-size: 10px;
    color: var(--gold-deep);
    background: var(--gold-pale);
    padding: 3px 9px;
    border-radius: 18px;
    border: 1px solid var(--border-gold);
}

/* TESTIMONIALS */
.testi-section {
    background: var(--pearl);
    padding: 88px 5%;
}

.testi-slider-outer {
    position: relative;
    overflow: hidden;
    margin-top: 52px;
}

.testi-track {
    display: flex;
    transition: transform .7s var(--ease-smooth);
}

.testi-card {
    flex: 0 0 calc(33.333% - 16px);
    margin-right: 24px;
    background: #fff;
    border-radius: 16px;
    padding: 32px 28px;
    border: 1.5px solid var(--border);
    box-shadow: var(--shadow-sm);
    transition: all .42s;
}

.testi-card:hover {
    transform: translateY(-7px);
    box-shadow: var(--shadow-lg);
    border-color: var(--border-gold);
}

.testi-quote-mark {
    font-family: var(--font-display);
    font-size: 52px;
    background: var(--grad-rg);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    line-height: 1;
    margin-bottom: 6px;
}

.testi-text {
    font-family: var(--font-body);
    font-size: 14px;
    color: var(--text-mid);
    line-height: 1.9;
    margin-bottom: 22px;
    font-weight: 300;
}

.testi-author {
    display: flex;
    align-items: center;
    gap: 11px;
    border-top: 1px solid var(--border-gold);
    padding-top: 18px;
}

.testi-avatar {
    width: 44px;
    height: 44px;
    border-radius: 50%;
    object-fit: cover;
    border: 2px solid var(--gold-bright);
    transition: transform .3s var(--ease-spring);
    flex-shrink: 0;
}

.testi-card:hover .testi-avatar {
    transform: scale(1.1);
}

.testi-name {
    font-family: var(--font-display);
    font-size: 13px;
    color: var(--text-dark);
}

.testi-sign {
    font-family: var(--font-body);
    font-size: 10.5px;
    color: var(--text-light);
    letter-spacing: 1px;
    margin-top: 2px;
}

.testi-stars {
    color: var(--gold-bright);
    font-size: 12px;
    margin-top: 3px;
}

.testi-nav {
    display: flex;
    justify-content: center;
    gap: 10px;
    margin-top: 32px;
}

.t-dot {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: rgba(217,119,6,0.2);
    cursor: pointer;
    transition: all .3s;
}

.t-dot.active {
    background: var(--gold);
    width: 28px;
    border-radius: 4px;
}

/* CTA BANNER */
.cta-banner {
    position: relative;
    overflow: hidden;
    padding: 110px 5%;
    text-align: center;
}

.cta-banner-bg {
    position: absolute;
    inset: 0;
    z-index: 0;
}

.cta-banner-bg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.cta-banner-bg::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(135deg,rgba(76,10,20,0.9),rgba(155,21,39,0.7) 40%,rgba(146,64,14,0.8) 100%);
}

.cta-content {
    position: relative;
    z-index: 10;
}

.cta-content h2 {
    font-family: var(--font-display);
    font-size: clamp(26px,4.8vw,58px);
    color: #fff;
    margin-bottom: 16px;
}

.cta-content p {
    font-family: var(--font-accent);
    font-size: 18px;
    font-style: italic;
    color: rgba(255,255,255,0.88);
    max-width: 520px;
    margin: 0 auto 40px;
    line-height: 1.88;
}

.btn-white {
    background: #fff;
    color: var(--crimson-dark);
    font-family: var(--font-body);
    font-size: 12px;
    letter-spacing: 3px;
    text-transform: uppercase;
    padding: 15px 52px;
    border-radius: 10px;
    border: none;
    font-weight: 700;
    box-shadow: 0 8px 36px rgba(0,0,0,0.22);
    transition: all .3s;
}

.btn-white:hover {
    transform: translateY(-3px);
    box-shadow: 0 14px 48px rgba(0,0,0,0.28);
}

.particle {
    position: absolute;
    width: 3px;
    height: 3px;
    border-radius: 50%;
    background: var(--gold-vivid);
    animation: floatUp 6s ease-in-out infinite;
}

/* AD BANNER FULL */
.ad-banner-full {
    position: relative;
    height: 120px;
    overflow: hidden;
    cursor: pointer;
}

.ad-banner-full img {
    width: 100%;
    height: 120px;
    object-fit: cover;
}

.ad-banner-full .ad-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg,rgba(92,11,22,0.9),rgba(155,21,39,0.6) 50%,transparent 80%);
    display: flex;
    align-items: center;
    padding: 0 5%;
    gap: 24px;
    flex-wrap: wrap;
}

.ad-banner-full .ad-ad-label {
    font-family: var(--font-body);
    font-size: 8px;
    letter-spacing: 3px;
    text-transform: uppercase;
    color: rgba(255,255,255,0.45);
    border: 1px solid rgba(255,255,255,0.22);
    padding: 2px 7px;
    border-radius: 2px;
    flex-shrink: 0;
}

.ad-banner-full .ad-headline {
    font-family: var(--font-display);
    font-size: 20px;
    color: #fff;
}

.ad-banner-full .ad-headline em {
    color: var(--gold-vivid);
    font-style: italic;
}

.ad-banner-full .ad-sub {
    font-family: var(--font-body);
    font-size: 12px;
    color: rgba(255,255,255,0.68);
}

.ad-banner-full .ad-btn {
    margin-left: auto;
    flex-shrink: 0;
    background: var(--grad-gold);
    color: var(--crimson-dark);
    font-family: var(--font-body);
    font-size: 10.5px;
    letter-spacing: 2px;
    text-transform: uppercase;
    font-weight: 700;
    padding: 10px 20px;
    border-radius: 10px;
    border: none;
    cursor: pointer;
    transition: all .3s;
    white-space: nowrap;
}

.ad-banner-full .ad-btn:hover {
    transform: translateY(-2px);
}

/* FOOTER */
footer {
    position: relative;
    overflow: hidden;
    background: linear-gradient(135deg,#9B1527 0%,#C41E3A 30%,#C41E3A 55%,#D97706 78%,#F59E0B 100%);
    padding: 0;
}

#galaxyCanvas {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 0;
}

.footer-inner {
    position: relative;
    z-index: 2;
    padding: 64px 5% 0;
}

.footer-brand-row {
    display: grid;
    grid-template-columns: 1.8fr 1fr 1fr 1fr;
    gap: 48px;
    margin-bottom: 48px;
}

.footer-logo-main {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 18px;
}

.footer-logo-symbol {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: rgba(255,255,255,0.22);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 17px;
    box-shadow: 0 4px 18px rgba(0,0,0,0.15);
}

.footer-logo-text {
    font-family: var(--font-display);
    font-size: 21px;
    color: #fff;
    letter-spacing: .5px;
}

.footer-logo-text span {
    color: #FFF9C4;
}

.footer-tagline {
    font-family: var(--font-accent);
    font-size: 13px;
    font-style: italic;
    color: rgba(255,255,255,0.88);
    letter-spacing: 2px;
    margin-bottom: 18px;
}

.footer-about-text {
    font-family: var(--font-body);
    font-size: 12.5px;
    color: rgba(255,255,255,0.9);
    line-height: 1.95;
    margin-bottom: 22px;
    font-weight: 300;
}

.footer-certifications {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    margin-bottom: 22px;
}

.footer-cert-badge {
    display: flex;
    align-items: center;
    gap: 5px;
    background: rgba(255,255,255,0.18);
    border: 1px solid rgba(255,255,255,0.28);
    border-radius: 20px;
    padding: 5px 12px;
    font-family: var(--font-body);
    font-size: 10px;
    color: #fff;
    letter-spacing: 1px;
}

.footer-social {
    display: flex;
    gap: 10px;
}

.soc-btn {
    width: 38px;
    height: 38px;
    border-radius: 50%;
    border: 1px solid rgba(255,255,255,0.3);
    color: rgba(255,255,255,0.85);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    cursor: pointer;
    transition: all .3s;
    background: rgba(255,255,255,0.12);
}

.soc-btn:hover {
    border-color: #fff;
    color: #fff;
    background: rgba(255,255,255,0.28);
    transform: translateY(-3px);
}

.footer-col-title {
    font-family: var(--font-display);
    font-size: 13px;
    color: #fff;
    letter-spacing: 1.5px;
    margin-bottom: 22px;
    display: flex;
    align-items: center;
    gap: 8px;
}

.footer-col-title::after {
    content: '';
    flex: 1;
    height: 1px;
    background: rgba(255,255,255,0.22);
}

.footer-links {
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 11px;
}

.footer-links a {
    font-family: var(--font-body);
    font-size: 12.5px;
    color: #fff;
    transition: all .28s;
    text-decoration: none;
    display: flex;
    align-items: center;
    gap: 7px;
    font-weight: 300;
}

.footer-links a::before {
    content: '›';
    color: rgba(255,255,255,0.6);
    font-size: 14px;
    transition: all .28s;
}

.footer-links a:hover {
    color: #fff;
    padding-left: 5px;
}

.footer-links a:hover::before {
    color: #FFF9C4;
}

.footer-contact-items {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.footer-contact-item {
    display: flex;
    align-items: flex-start;
    gap: 10px;
}

.footer-contact-icon {
    width: 28px;
    height: 28px;
    border-radius: 6px;
    background: rgba(255,255,255,0.18);
    border: 1px solid rgba(255,255,255,0.28);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    flex-shrink: 0;
    margin-top: 1px;
}

.footer-contact-text {
    font-family: var(--font-body);
    font-size: 12px;
    color: rgba(255,255,255,0.88);
    line-height: 1.6;
    font-weight: 300;
}

.footer-contact-text strong {
    color: #fff;
    display: block;
    font-size: 11px;
    letter-spacing: 1px;
    text-transform: uppercase;
    margin-bottom: 1px;
}

.footer-divider {
    height: 1px;
    background: linear-gradient(90deg,transparent,rgba(255,255,255,0.3),rgba(255,255,255,0.15),rgba(255,255,255,0.3),transparent);
}

.footer-bottom-bar {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 14px;
    padding: 24px 0 32px;
}

.footer-copy {
    font-family: var(--font-body);
    font-size: 11px;
    color: rgba(255,255,255,0.78);
    letter-spacing: .8px;
}

.footer-bottom-links {
    display: flex;
    gap: 22px;
    flex-wrap: wrap;
}

.footer-bottom-links a {
    font-family: var(--font-body);
    font-size: 11px;
    color: rgba(255,255,255,0.78);
    text-decoration: none;
    transition: color .25s;
    letter-spacing: .5px;
}

.footer-bottom-links a:hover {
    color: #FFF9C4;
}

.footer-craft {
    font-family: var(--font-body);
    font-size: 10px;
    color: rgba(255,255,255,0.72);
    letter-spacing: 1px;
}

.footer-disclaimer-note {
    font-family: var(--font-body);
    font-size: 10.5px;
    color: rgba(255,255,255,0.6);
    line-height: 1.7;
    margin-bottom: 20px;
    padding: 14px;
    background: rgba(0,0,0,0.12);
    border-radius: 8px;
    border: 1px solid rgba(255,255,255,0.1);
}

/* WIDGETS */
#consultWidget {
    position: fixed;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    z-index: 996;
}

.cw-tab {
    writing-mode: vertical-rl;
    text-orientation: mixed;
    transform: rotate(180deg);
    background: var(--grad-rg);
    color: #fff;
    font-family: var(--font-body);
    font-size: 10px;
    letter-spacing: 3px;
    text-transform: uppercase;
    font-weight: 700;
    padding: 18px 8px;
    cursor: pointer;
    border-radius: 0 8px 8px 0;
    transition: all .3s;
    box-shadow: 3px 0 18px rgba(155,21,39,0.35);
}

.cw-tab:hover {
    padding-right: 14px;
}

.floating-btns {
    position: fixed;
    bottom: 28px;
    right: 28px;
    z-index: 998;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 10px;
}

.float-btn-wa {
    background: #25D366;
    color: #fff;
    width: 56px;
    height: 56px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 26px;
    box-shadow: 0 6px 24px rgba(37,211,102,0.45);
    cursor: pointer;
    transition: all .3s;
    animation: pulse 2.5s ease-in-out infinite;
    border: none;
}

.float-btn-call {
    background: var(--grad-rg);
    color: #fff;
    width: 56px;
    height: 56px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 22px;
    box-shadow: 0 6px 24px rgba(155,21,39,0.4);
    cursor: pointer;
    transition: all .3s;
    animation: pulse 2s ease-in-out 0.3s infinite;
    border: none;
}

.float-btn-wa:hover,.float-btn-call:hover {
    transform: scale(1.12);
}

/* RESPONSIVE */
@media(max-width: 1200px) {
    .bhavani-grid {
        grid-template-columns:1fr 260px 1fr;
        gap: 20px;
    }

    .orbit-card {
        width: 250px;
    }

    .religions-grid {
        grid-template-columns: repeat(2,1fr);
    }

    .locations-grid {
        grid-template-columns: repeat(3,1fr);
    }

    .loc-card.featured {
        grid-column: span 1;
    }

    .loc-card.featured .loc-card-icon-wrap {
        height: 210px;
    }
}

@media(max-width: 1100px) {
    .bhavani-grid {
        grid-template-columns:1fr;
        gap: 24px;
    }

    .bhavani-center-col {
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: center;
        gap: 16px;
    }

    .footer-brand-row {
        grid-template-columns: 1fr 1fr;
        gap: 32px;
    }
}

@media(max-width: 1024px) {
    .ms-grid {
        grid-template-columns:repeat(2,1fr);
    }

    .why-grid {
        grid-template-columns: repeat(2,1fr);
    }

    .why-bottom-strip {
        grid-template-columns: repeat(2,1fr);
    }

    .cosmic-orbit-layout {
        grid-template-columns: 1fr;
        gap: 36px;
    }

    .orbit-center {
        margin: 0 auto;
    }

    .orbit-cards-left,.orbit-cards-right {
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: center;
        gap: 14px;
    }

    .orbit-cards-right .orbit-card {
        text-align: left;
    }

    .orbit-card {
        width: 270px;
    }

    #consultWidget {
        display: none;
    }

    .nav-links,.nav-phone-btn {
        display: none!important;
    }

    .nav-hamburger {
        display: flex!important;
    }

    .nav-phone-mobile {
        display: flex!important;
    }

    .videos-grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .locations-grid {
        grid-template-columns: repeat(2,1fr);
    }
}

@media(max-width: 768px) {
    .hero-right {
        height:105vw!important;
        min-height: 260px!important;
    }

    .hero-left {
        padding: 48px 5% 36px;
    }

    .hero-btns {
        flex-direction: column;
        max-width: 280px;
    }

    .about-inner {
        grid-template-columns: 1fr;
    }

    .about-img-badge {
        right: 10px;
        bottom: 18px;
    }

    .about-text-side {
        padding: 40px 5%;
    }

    .why-grid {
        grid-template-columns: 1fr;
    }

    .ms-grid {
        grid-template-columns: 1fr;
    }

    .testi-card {
        flex: 0 0 calc(100% - 8px);
    }

    .footer-brand-row {
        grid-template-columns: 1fr;
        gap: 28px;
    }

    .c3d-slide {
        width: 230px;
        height: 300px;
    }

    .c3d-slide img {
        width: 230px;
        height: 300px;
    }

    .c3d-slide.pos-left2,.c3d-slide.pos-right2 {
        opacity: 0;
    }

    .bhavani-grid {
        grid-template-columns: 1fr;
    }

    .orbit-card {
        width: 100%!important;
    }

    .top-bar {
        display: none;
    }

    .videos-grid {
        grid-template-columns: 1fr;
    }

    .religions-grid {
        grid-template-columns: 1fr 1fr;
    }

    .religions-message {
        flex-direction: column;
        text-align: center;
        padding: 28px 22px;
    }

    .religions-message-cta {
        margin: 0 auto;
    }

    .locations-grid {
        grid-template-columns: 1fr 1fr;
    }

    .loc-card.featured {
        grid-column: span 2;
    }

    .locations-cta-strip {
        flex-direction: column;
        text-align: center;
    }

    .locations-cta-btns {
        justify-content: center;
    }

    .disclaimer-box {
        padding: 24px 20px;
    }
}

@media(max-width: 480px) {
    .why-bottom-strip {
        grid-template-columns:1fr 1fr;
    }

    .hero-left {
        padding: 40px 5% 32px;
    }

    .cta-banner {
        padding: 80px 5%;
    }

    .floating-btns {
        bottom: 18px;
        right: 16px;
    }

    .nav-inner {
        padding: 0 4%;
    }

    .bhav-services-grid {
        grid-template-columns: 1fr;
    }

    .bhav-neg-grid {
        grid-template-columns: 1fr;
    }

    .religions-grid {
        grid-template-columns: 1fr;
    }

    .locations-grid {
        grid-template-columns: 1fr;
    }

    .loc-card.featured {
        grid-column: span 1;
    }
}


/* =========================================================
   BHAVANI ASTROLOGY — ABOUT PAGE ONLY CSS
   Common/global CSS is loaded from: about/style.css
   Do not copy common styles into this file.
   ========================================================= */

/* ABOUT PAGE OVERRIDES — only properties that differ from the master stylesheet */
:root{--font-display2:'Rozha One',serif;}
#backToTop{left:auto;right:28px;}
.skill-tag{cursor:pointer;}
.why-strip-item{padding:30px 16px;}
.footer-logo-symbol{box-shadow:none;}
.footer-links a::before{transition:none;}

@media(max-width:1100px){
  .footer-brand-row{gap:40px;}
}


.reveal-delay-4{transition-delay:.44s!important;}

.nav-link-btn:hover::after,.nav-link-btn.active::after{transform:scaleX(1);}

.nav-link-btn.active{color:var(--crimson);}

.trust-bar{background:linear-gradient(90deg,var(--crimson-dark),var(--crimson) 30%,var(--gold-deep) 70%,var(--crimson-dark));padding:0;overflow:hidden;}

.trust-bar-inner{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;}

.trust-item{display:flex;align-items:center;gap:10px;padding:14px 24px;border-right:1px solid rgba(252,211,77,0.15);}

.trust-item:last-child{border-right:none;}

.trust-item-icon{font-size:18px;flex-shrink:0;}

.trust-item-text{font-family:var(--font-body);font-size:11px;color:rgba(255,255,255,0.82);letter-spacing:.5px;white-space:nowrap;}

.trust-item-text strong{color:var(--gold-vivid);font-weight:700;}

.page-hero{position:relative;height:520px;overflow:hidden;display:flex;align-items:center;}

.page-hero-bg{position:absolute;inset:0;}

.page-hero-bg img{width:100%;height:100%;object-fit:cover;object-position:center;}

.page-hero-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(92,11,22,0.93) 0%,rgba(155,21,39,0.78) 50%,rgba(146,64,14,0.45) 100%);}

.page-hero-content{position:relative;z-index:10;padding:0 7%;width:100%;}

.page-hero-eyebrow{display:inline-flex;align-items:center;gap:10px;margin-bottom:18px;font-family:var(--font-body);font-size:10px;letter-spacing:5px;text-transform:uppercase;color:var(--gold-vivid);font-weight:700;animation:textSlideLeft .7s .1s var(--ease-smooth) both;}

.page-hero-eyebrow::before{content:"";display:block;width:32px;height:1.5px;background:var(--gold-vivid);}

.page-hero h1{font-family:var(--font-display);font-size:clamp(34px,5.5vw,72px);color:#fff;line-height:1.06;margin-bottom:18px;animation:textSlideUp .8s .28s var(--ease-smooth) both;}

.page-hero h1 em{color:var(--gold-vivid);font-style:italic;}

.page-hero-desc{font-family:var(--font-accent);font-size:18px;color:rgba(255,255,255,0.82);font-style:italic;max-width:520px;line-height:1.8;animation:textSlideUp .7s .46s var(--ease-smooth) both;}

.breadcrumb{display:flex;align-items:center;gap:8px;margin-top:28px;animation:textSlideUp .6s .6s var(--ease-smooth) both;}

.breadcrumb a,.breadcrumb span{font-family:var(--font-body);font-size:11.5px;letter-spacing:1.5px;color:rgba(255,255,255,0.5);transition:color .25s;}

.breadcrumb a:hover{color:var(--gold-vivid);}

.breadcrumb .sep{color:rgba(255,255,255,0.3);}

.breadcrumb .current{color:var(--gold-vivid);}

.hero-float-icon{position:absolute;pointer-events:none;animation:floatY 4s ease-in-out infinite;}

.profile-section{padding:96px 5%;background:#fff;}

.profile-inner{display:grid;grid-template-columns:420px 1fr;gap:72px;align-items:start;max-width:1280px;margin:0 auto;}

.profile-img-wrap{position:sticky;top:100px;}

.profile-img-frame{position:relative;border-radius:18px;overflow:hidden;box-shadow:var(--shadow-xl);}

.profile-img-frame img{width:100%;height:520px;object-fit:cover;object-position:top;transition:transform .9s;}

.profile-img-frame:hover img{transform:scale(1.04);}

.profile-img-overlay{position:absolute;inset:0;background:linear-gradient(0deg,rgba(92,11,22,0.68) 0%,transparent 55%);}

.profile-img-badge{position:absolute;bottom:24px;left:14px;right:14px;display:flex;gap:8px;}

.pib-item{flex:1;background:rgba(255,255,255,0.12);backdrop-filter:blur(12px);border:1px solid rgba(252,211,77,0.4);border-radius:12px;padding:14px;text-align:center;}

.pib-num{font-family:var(--font-display);font-size:24px;color:var(--gold-vivid);line-height:1;}

.pib-lbl{font-family:var(--font-body);font-size:8.5px;letter-spacing:2px;text-transform:uppercase;color:rgba(255,255,255,0.7);margin-top:4px;}

.profile-ring-badge{position:absolute;top:-16px;right:-16px;width:72px;height:72px;border-radius:50%;background:#fff;border:3px solid var(--gold-bright);display:flex;align-items:center;justify-content:center;font-size:28px;box-shadow:var(--shadow-gold);z-index:2;animation:goldGlow 4s ease-in-out infinite;}

.profile-quote{font-family:var(--font-accent);font-size:20px;font-style:italic;color:var(--crimson-dark);line-height:1.7;border-left:3px solid var(--gold-bright);padding-left:24px;margin-bottom:36px;}

.profile-body p{font-family:var(--font-body);font-size:14px;color:var(--text-mid);line-height:1.98;margin-bottom:20px;font-weight:300;}

.profile-certs{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:28px;}

.cert-item{background:var(--crimson-ultra);border:1.5px solid var(--border-light);border-radius:12px;padding:18px;display:flex;gap:12px;align-items:flex-start;transition:all .3s;}

.cert-item:hover{transform:translateY(-4px);border-color:var(--border-gold);box-shadow:var(--shadow-gold);}

.cert-icon{font-size:24px;flex-shrink:0;margin-top:2px;}

.cert-name{font-family:var(--font-display);font-size:13.5px;color:var(--crimson-dark);margin-bottom:3px;}

.cert-desc{font-family:var(--font-body);font-size:11.5px;color:var(--text-muted);line-height:1.55;font-weight:300;}

.why-strip{display:grid;grid-template-columns:repeat(4,1fr);background:var(--grad-rg);overflow:hidden;}

.story-section{background:linear-gradient(160deg,var(--cream) 0%,#fff 50%,var(--crimson-ultra) 100%);padding:88px 5%;position:relative;overflow:hidden;}

.story-section::before{content:"ॐ";position:absolute;top:40px;left:5%;font-size:130px;color:var(--gold);opacity:.04;font-family:serif;pointer-events:none;}

.story-section::after{content:"ॐ";position:absolute;bottom:40px;right:5%;font-size:130px;color:var(--crimson);opacity:.04;font-family:serif;pointer-events:none;}

.story-grid{display:grid;grid-template-columns:1fr 1fr;gap:52px;align-items:center;max-width:1200px;margin:0 auto;}

.story-img{border-radius:18px;overflow:hidden;position:relative;box-shadow:var(--shadow-xl);}

.story-img img{width:100%;height:500px;object-fit:cover;transition:transform .9s;}

.story-img:hover img{transform:scale(1.04);}

.story-img-badge{position:absolute;bottom:24px;left:20px;background:rgba(255,255,255,0.14);backdrop-filter:blur(14px);border:1.5px solid rgba(252,211,77,0.5);border-radius:14px;padding:14px 18px;display:flex;align-items:center;gap:12px;}

.story-img-badge .sib-icon{font-size:28px;}

.story-img-badge .sib-text{font-family:var(--font-display);font-size:15px;color:#fff;line-height:1.2;}

.story-img-badge .sib-sub{font-family:var(--font-body);font-size:10px;color:rgba(255,255,255,0.7);letter-spacing:1.5px;text-transform:uppercase;margin-top:3px;}

.timeline-section{background:linear-gradient(180deg,var(--pearl) 0%,var(--cream) 100%);padding:88px 5%;position:relative;overflow:hidden;}

.timeline-section::before{content:"";position:absolute;inset:0;background-image:radial-gradient(circle,rgba(155,21,39,0.04) 1px,transparent 1px);background-size:28px 28px;pointer-events:none;}

.timeline-inner{max-width:900px;margin:0 auto;position:relative;z-index:1;}

.timeline-list{position:relative;margin-top:64px;}

.timeline-list::before{content:"";position:absolute;left:50%;top:0;bottom:0;width:2px;background:linear-gradient(180deg,var(--crimson),var(--gold-bright),var(--crimson));transform:translateX(-50%);border-radius:2px;}

.tl-item{display:grid;grid-template-columns:1fr 60px 1fr;gap:0;margin-bottom:52px;align-items:start;}

.tl-dot-col{display:flex;flex-direction:column;align-items:center;padding-top:4px;}

.tl-dot{width:46px;height:46px;border-radius:50%;background:var(--grad-rg);border:3px solid var(--gold-bright);display:flex;align-items:center;justify-content:center;font-size:18px;box-shadow:0 4px 20px rgba(155,21,39,0.35);flex-shrink:0;transition:transform .35s var(--ease-spring);}

.tl-dot:hover{transform:scale(1.2);}

.tl-content{padding:0 28px;}

.tl-year{font-family:var(--font-body);font-size:10px;letter-spacing:3.5px;color:var(--gold);text-transform:uppercase;font-weight:700;margin-bottom:5px;}

.tl-title{font-family:var(--font-display);font-size:17px;color:var(--crimson-dark);margin-bottom:7px;line-height:1.3;}

.tl-desc{font-family:var(--font-body);font-size:13px;color:var(--text-mid);line-height:1.88;font-weight:300;}

.values-section{background:linear-gradient(160deg,var(--crimson-dark) 0%,#100306 50%,var(--crimson-deep) 100%);padding:88px 5%;position:relative;overflow:hidden;}

.values-section::before{content:"ॐ";position:absolute;font-size:360px;color:rgba(252,211,77,0.03);top:50%;left:50%;transform:translate(-50%,-50%);font-family:serif;pointer-events:none;}

.orbit-stars-bg{position:absolute;inset:0;pointer-events:none;overflow:hidden;}

.values-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:60px;position:relative;z-index:1;}

.val-card{background:rgba(255,255,255,0.05);border:1px solid rgba(217,119,6,0.2);border-radius:16px;padding:38px 26px;text-align:center;transition:all .45s;cursor:pointer;position:relative;overflow:hidden;}

.val-card::before{content:"";position:absolute;top:0;left:0;right:0;height:2.5px;background:var(--grad-rg);transform:scaleX(0);transform-origin:left;transition:transform .38s;}

.val-card:hover{background:rgba(217,119,6,0.1);border-color:rgba(217,119,6,0.4);transform:translateY(-10px);}

.val-card:hover::before{transform:scaleX(1);}

.val-icon{font-size:36px;margin-bottom:18px;display:block;transition:transform .4s var(--ease-spring);}

.val-card:hover .val-icon{transform:scale(1.15) rotate(8deg);}

.val-title{font-family:var(--font-display);font-size:17px;color:var(--gold-vivid);margin-bottom:12px;}

.val-desc{font-family:var(--font-body);font-size:13px;color:rgba(255,255,255,0.55);line-height:1.88;font-weight:300;}

.services-preview{background:linear-gradient(180deg,var(--off-white),var(--pearl));padding:88px 5%;}

.svc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:52px;}

.svc-card{background:#fff;border:1.5px solid var(--border);border-radius:16px;padding:30px 24px;transition:all .42s;cursor:pointer;box-shadow:var(--shadow-sm);position:relative;overflow:hidden;}

.svc-card::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--grad-rg);transform:scaleX(0);transform-origin:left;transition:transform .38s;}

.svc-card:hover{transform:translateY(-8px);box-shadow:var(--shadow-lg);border-color:var(--border-gold);}

.svc-card:hover::before{transform:scaleX(1);}

.svc-icon-wrap{width:60px;height:60px;border-radius:14px;background:var(--gold-pale);border:1.5px solid var(--border-gold);display:flex;align-items:center;justify-content:center;font-size:26px;margin-bottom:18px;transition:all .38s;}

.svc-card:hover .svc-icon-wrap{background:var(--grad-rg);transform:scale(1.08) rotate(4deg);box-shadow:0 8px 22px rgba(155,21,39,0.28);}

.svc-title{font-family:var(--font-display);font-size:17px;color:var(--text-dark);margin-bottom:10px;}

.svc-desc{font-family:var(--font-body);font-size:13px;color:var(--text-mid);line-height:1.8;font-weight:300;}

.svc-link{font-family:var(--font-body);font-size:11px;letter-spacing:2px;text-transform:uppercase;color:var(--gold-deep);font-weight:600;margin-top:14px;display:inline-flex;align-items:center;gap:5px;transition:gap .25s;}

.svc-card:hover .svc-link{gap:10px;}

.awards-section{background:#fff;padding:88px 5%;}

.awards-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;margin-top:60px;}

.award-card{background:var(--pearl);border:1.5px solid var(--border);border-radius:16px;padding:32px 22px;text-align:center;transition:all .42s;cursor:pointer;position:relative;overflow:hidden;box-shadow:var(--shadow-sm);}

.award-card::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--grad-rg);transform:scaleX(0);transform-origin:left;transition:transform .38s;}

.award-card:hover{transform:translateY(-8px);box-shadow:var(--shadow-lg);border-color:var(--border-gold);background:var(--gold-pale);}

.award-card:hover::before{transform:scaleX(1);}

.award-icon{font-size:40px;margin-bottom:16px;display:block;transition:transform .38s var(--ease-spring);}

.award-card:hover .award-icon{transform:scale(1.14) rotate(7deg);}

.award-year{font-family:var(--font-body);font-size:10px;letter-spacing:3.5px;color:var(--gold);text-transform:uppercase;font-weight:700;margin-bottom:5px;}

.award-title{font-family:var(--font-display);font-size:15px;color:var(--crimson-dark);margin-bottom:8px;line-height:1.35;}

.award-body{font-family:var(--font-body);font-size:12.5px;color:var(--text-muted);line-height:1.72;font-weight:300;}

@media (max-width:1100px){
  .profile-inner{grid-template-columns:1fr;gap:40px;}
  .profile-img-wrap{position:static;}
  .profile-img-frame img{height:400px;}
  .values-grid{grid-template-columns:repeat(2,1fr);}
  .awards-grid{grid-template-columns:repeat(2,1fr);}
  .svc-grid{grid-template-columns:repeat(2,1fr);}
  .story-grid{grid-template-columns:1fr;}
}

@media (max-width:768px){
  .trust-bar{display:none;}
  .values-grid{grid-template-columns:1fr 1fr;}
  .awards-grid{grid-template-columns:1fr 1fr;}
  .profile-certs{grid-template-columns:1fr;}
  .page-hero{height:380px;}
  .cta-banner{padding:80px 5%;}
  .timeline-list::before{left:22px;}
  .tl-item{display:flex;gap:18px;align-items:flex-start;margin-bottom:38px;}
  .tl-item .tl-empty{display:none;}
  .tl-content{text-align:left!important;padding:8px 0 0!important;}
  .why-strip{grid-template-columns:repeat(2,1fr);}
  .svc-grid{grid-template-columns:1fr;}
}

@media (max-width:480px){
  .values-grid{grid-template-columns:1fr;}
  .awards-grid{grid-template-columns:1fr;}
}














/* SERVICE PAGE ONLY — font used by the original Service page */
@import url("https://fonts.googleapis.com/css2?family=Rozha+One&display=swap");
:root{--font-display:'Rozha One',serif;}

:root{--crimson:#9B1527;--crimson-mid:#C41E3A;--crimson-bright:#E8192C;--crimson-soft:#F4A0A8;--crimson-pale:#FDE8EA;--crimson-ultra:#FFF5F6;--crimson-deep:#7A0F1E;--crimson-dark:#5C0B16; --gold:#D97706;--gold-bright:#F59E0B;--gold-vivid:#FCD34D;--gold-pale:#FEF3C7;--gold-deep:#92400E;--gold-accent:#FFB800; --grad-red:linear-gradient(135deg,#9B1527,#C41E3A,#E8192C); --grad-gold:linear-gradient(135deg,#D97706,#F59E0B,#FCD34D); --grad-rg:linear-gradient(135deg,#9B1527 0%,#C41E3A 40%,#D97706 80%,#F59E0B 100%); --white:#FFFFFF;--pearl:#FDF8F0;--cream:#FBF5E8;--off-white:#FAFBFC; --border:#F0D0D4;--border-light:#F8EAEC;--border-mid:#E8C4C8;--border-gold:rgba(217,119,6,0.3); --text-dark:#1A0508;--text-mid:#4A1520;--text-light:#7C3040;--text-muted:#A07080; --shadow-sm:0 2px 12px rgba(155,21,39,0.08);--shadow-md:0 8px 32px rgba(155,21,39,0.14);--shadow-lg:0 20px 56px rgba(155,21,39,0.18);--shadow-xl:0 32px 80px rgba(155,21,39,0.24);--shadow-gold:0 8px 32px rgba(217,119,6,0.28); --font-display:"Rozha One",serif;--font-body:"Poppins",sans-serif;--font-accent:"Cormorant Garamond",serif; --ease-smooth:cubic-bezier(0.25,0.46,0.45,0.94);--ease-spring:cubic-bezier(0.34,1.56,0.64,1);}
img{display:block;object-fit:cover;max-width:100%;}
/* SCROLL & BACK TO TOP */
#backToTop{position:fixed;bottom:100px;right:20px;z-index:997;width:44px;height:44px;border-radius:50%;background:#fff;border:1.5px solid var(--border-mid);color:var(--crimson);font-size:22px;line-height:1;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:var(--shadow-md);opacity:0;transform:translateY(20px);transition:all .35s var(--ease-smooth);pointer-events:none;}
::-webkit-scrollbar{width:5px;}
/* TOP BAR */
/* NAV */
.nav-link-btn.active::after{transform:scaleX(1);}
.nav-link-btn.active{color:var(--crimson);}
/* DROPDOWN */
/* COMMONS */
.sec-title{font-family:var(--font-display);font-size:clamp(24px,3.2vw,44px);color:var(--text-dark);line-height:1.2;margin-bottom:14px;}
.btn-red{background:var(--grad-rg);color:#fff;font-family:var(--font-body);font-size:11.5px;letter-spacing:2px;text-transform:uppercase;font-weight:600;padding:12px 28px;border-radius:10px;border:none;transition:all .3s;box-shadow:0 4px 16px rgba(155,21,39,0.3);cursor:pointer;}
/* PAGE HERO */
.page-hero{position:relative;min-height:480px;overflow:hidden;display:flex;align-items:center;}
.page-hero-bg{position:absolute;inset:0;}
.page-hero-bg img{width:100%;height:100%;object-fit:cover;object-position:center top;}
.page-hero-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(92,11,22,0.95) 0%,rgba(155,21,39,0.85) 45%,rgba(146,64,14,0.55) 100%);}
.page-hero-content{position:relative;z-index:10;padding:60px 7%;width:100%;}
.page-hero-eyebrow{display:inline-flex;align-items:center;gap:10px;margin-bottom:14px;font-family:var(--font-body);font-size:10px;letter-spacing:6px;text-transform:uppercase;color:var(--gold-vivid);font-weight:700;animation:textSlideLeft .7s .1s var(--ease-smooth) both;}
.page-hero-eyebrow::before{content:"";display:block;width:36px;height:1.5px;background:var(--gold-vivid);}
.page-hero h1{font-family:var(--font-display);font-size:clamp(30px,5.5vw,68px);color:#fff;line-height:1.05;margin-bottom:16px;animation:textSlideUp .8s .28s var(--ease-smooth) both;}
.page-hero h1 em{color:var(--gold-vivid);}
.page-hero p{font-family:var(--font-accent);font-size:clamp(14px,1.6vw,19px);color:rgba(255,255,255,0.82);font-style:italic;max-width:540px;line-height:1.75;animation:textSlideUp .7s .46s var(--ease-smooth) both;}
.breadcrumb{display:flex;align-items:center;gap:8px;margin-top:22px;flex-wrap:wrap;animation:textSlideUp .6s .6s var(--ease-smooth) both;}
.breadcrumb a,.breadcrumb span{font-family:var(--font-body);font-size:12px;color:rgba(255,255,255,0.5);transition:color .25s;}
.breadcrumb a:hover{color:var(--gold-vivid);}
.breadcrumb .sep{color:rgba(255,255,255,0.3);}
.breadcrumb .current{color:var(--gold-vivid);}
.hero-pill-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px;animation:textSlideUp .6s .72s var(--ease-smooth) both;}
.hero-pill{padding:5px 14px;border-radius:18px;border:1px solid rgba(252,211,77,0.4);font-family:var(--font-body);font-size:10px;color:rgba(255,255,255,0.85);background:rgba(255,255,255,0.08);backdrop-filter:blur(4px);cursor:pointer;transition:all .25s;font-weight:500;}
.hero-pill:hover{background:rgba(252,211,77,0.2);border-color:var(--gold-vivid);color:var(--gold-vivid);}
/* TRUST STRIP */
.trust-strip{background:var(--grad-rg);padding:0;overflow:hidden;}
.trust-strip-inner{display:flex;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;}
.trust-strip-inner::-webkit-scrollbar{display:none;}
.ts-item{padding:16px 22px;border-right:1px solid rgba(255,255,255,0.12);display:flex;align-items:center;gap:10px;flex:1;min-width:130px;justify-content:center;flex-shrink:0;}
.ts-item:last-child{border-right:none;}
.ts-icon{font-size:18px;flex-shrink:0;}
.ts-text{font-family:var(--font-body);font-size:11px;color:rgba(255,255,255,0.85);line-height:1.4;white-space:nowrap;}
.ts-text strong{color:var(--gold-vivid);display:block;font-size:13px;font-weight:700;}
/* FILTER TABS */
.filter-section{background:#fff;padding:18px 5%;border-bottom:1.5px solid var(--border-light);position:sticky;top:82px;z-index:50;box-shadow:0 2px 14px rgba(155,21,39,0.06);}
.filter-tabs{display:flex;gap:7px;flex-wrap:wrap;justify-content:center;}
.filter-tab{padding:8px 18px;border-radius:20px;font-family:var(--font-body);font-size:10.5px;letter-spacing:1.5px;text-transform:uppercase;font-weight:600;cursor:pointer;transition:all .3s;border:1.5px solid var(--border-mid);background:#fff;color:var(--text-mid);}
.filter-tab:hover{border-color:var(--border-gold);color:var(--gold-deep);background:var(--gold-pale);}
.filter-tab.active{background:var(--grad-rg);color:#fff;border-color:transparent;box-shadow:0 4px 14px rgba(155,21,39,0.3);}
/* FEATURED SERVICE */
.featured-service{position:relative;overflow:hidden;cursor:pointer;}
.featured-service img{width:100%;height:clamp(320px,55vw,580px);object-fit:cover;transition:transform .8s var(--ease-smooth);}
.featured-service:hover img{transform:scale(1.04);}
.featured-service-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(92,11,22,0.94) 0%,rgba(155,21,39,0.72) 45%,rgba(155,21,39,0.18) 80%,transparent 100%);}
.featured-service-content{position:absolute;inset:0;display:flex;align-items:center;padding:0 6%;}
.featured-service-inner{max-width:520px;width:100%;}
.fs-badge{display:inline-flex;align-items:center;gap:8px;background:rgba(252,211,77,0.2);border:1px solid rgba(252,211,77,0.5);border-radius:18px;padding:5px 14px;font-family:var(--font-body);font-size:9px;letter-spacing:3px;text-transform:uppercase;color:var(--gold-vivid);font-weight:700;margin-bottom:14px;}
.fs-title{font-family:var(--font-display);font-size:clamp(26px,4vw,54px);color:#fff;line-height:1.05;margin-bottom:14px;}
.fs-desc{font-family:var(--font-accent);font-size:clamp(14px,1.5vw,18px);color:rgba(255,255,255,0.82);font-style:italic;line-height:1.75;margin-bottom:22px;max-width:440px;}
.fs-points{display:flex;flex-direction:column;gap:7px;margin-bottom:24px;}
.fs-point{display:flex;align-items:center;gap:9px;font-family:var(--font-body);font-size:12.5px;color:rgba(255,255,255,0.88);}
.fs-point::before{content:"✦";color:var(--gold-vivid);font-size:9px;flex-shrink:0;}
.fs-btns{display:flex;gap:10px;flex-wrap:wrap;}
.btn-fs-primary{background:var(--grad-gold);color:var(--crimson-dark);font-family:var(--font-body);font-size:10.5px;letter-spacing:2.5px;text-transform:uppercase;font-weight:700;padding:13px 24px;border-radius:10px;border:none;cursor:pointer;transition:all .3s;display:inline-flex;align-items:center;gap:8px;}
.btn-fs-primary:hover{transform:translateY(-3px);box-shadow:var(--shadow-gold);}
.btn-fs-outline{background:rgba(255,255,255,0.12);color:#fff;border:1.5px solid rgba(255,255,255,0.4);font-family:var(--font-body);font-size:10.5px;letter-spacing:2px;text-transform:uppercase;font-weight:600;padding:12px 22px;border-radius:10px;cursor:pointer;transition:all .3s;backdrop-filter:blur(8px);}
.btn-fs-outline:hover{background:rgba(255,255,255,0.22);}
/* 3-COL SERVICES GRID */
.services-main-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;background:var(--border-light);}
.svc-card{position:relative;overflow:hidden;cursor:pointer;background:#1a0508;}
.svc-card img{width:100%;height:100%;object-fit:cover;transition:transform .7s var(--ease-smooth);}
.svc-card:hover img{transform:scale(1.06);}
.svc-overlay{position:absolute;inset:0;transition:all .4s;}
.svc-content{position:absolute;bottom:0;left:0;right:0;padding:22px;background:linear-gradient(0deg,rgba(0,0,0,0.88) 0%,rgba(0,0,0,0.5) 55%,transparent 100%);transition:all .4s;}
.svc-card:hover .svc-content{padding-bottom:28px;}
.svc-number{font-family:var(--font-body);font-size:9px;letter-spacing:4px;color:var(--gold-vivid);font-weight:700;text-transform:uppercase;margin-bottom:7px;}
.svc-icon-badge{width:42px;height:42px;border-radius:50%;background:var(--grad-rg);display:flex;align-items:center;justify-content:center;font-size:18px;margin-bottom:9px;box-shadow:0 4px 14px rgba(155,21,39,0.5);transition:transform .3s var(--ease-spring);}
.svc-card:hover .svc-icon-badge{transform:scale(1.12) rotate(8deg);}
.svc-name{font-family:var(--font-display);font-size:clamp(14px,1.8vw,20px);color:#fff;line-height:1.25;margin-bottom:5px;}
.svc-desc{font-family:var(--font-body);font-size:12px;color:rgba(255,255,255,0.72);line-height:1.65;font-weight:300;max-height:0;overflow:hidden;transition:max-height .5s,opacity .4s;}
.svc-card:hover .svc-desc{max-height:80px;opacity:1;}
.svc-tags{display:flex;flex-wrap:wrap;gap:5px;margin-top:10px;opacity:0;transform:translateY(8px);transition:all .4s;}
.svc-card:hover .svc-tags{opacity:1;transform:none;}
.svc-tag{font-family:var(--font-body);font-size:9px;color:var(--gold-vivid);background:rgba(252,211,77,0.15);border:1px solid rgba(252,211,77,0.35);padding:3px 9px;border-radius:12px;letter-spacing:1px;text-transform:uppercase;font-weight:600;}
.svc-cta-row{display:flex;align-items:center;justify-content:space-between;margin-top:10px;opacity:0;transform:translateY(10px);transition:all .4s;}
.svc-card:hover .svc-cta-row{opacity:1;transform:none;}
.svc-cta-link{font-family:var(--font-body);font-size:10px;letter-spacing:2px;text-transform:uppercase;color:var(--gold-vivid);font-weight:700;}
.svc-cta-btn{background:var(--grad-rg);color:#fff;font-family:var(--font-body);font-size:9.5px;letter-spacing:1.5px;text-transform:uppercase;font-weight:700;padding:7px 14px;border-radius:8px;border:none;cursor:pointer;transition:all .3s;}
.svc-card::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--grad-rg);z-index:10;transform:scaleX(0);transform-origin:left;transition:transform .4s;}
.svc-card:hover::before{transform:scaleX(1);}
.svc-tall{height:clamp(280px,38vw,480px);}
.svc-medium{height:clamp(240px,30vw,380px);}
.svc-wide{height:clamp(260px,32vw,400px);}
/* FULL ROW */
.svc-fullrow{display:grid;grid-template-columns:1fr 1fr;}
.svc-fullrow.reverse{direction:rtl;}
.svc-fullrow.reverse>*{direction:ltr;}
.svc-img-half{position:relative;overflow:hidden;min-height:360px;}
.svc-img-half img{width:100%;height:100%;object-fit:cover;transition:transform .8s;}
.svc-img-half:hover img{transform:scale(1.05);}
.svc-text-half{padding:56px 52px;display:flex;flex-direction:column;justify-content:center;}
.svc-text-half.dark{background:linear-gradient(160deg,#2D0610,#5C0B16);}
.svc-text-half.dark .sth-title,.svc-text-half.dark .sth-label{color:#fff;}
.svc-text-half.dark .sth-desc{color:rgba(255,255,255,0.72);}
.svc-text-half.dark .sth-divider{background:rgba(255,255,255,0.14);}
.svc-text-half.gold{background:var(--gold-pale);}
.sth-label{font-family:var(--font-body);font-size:9px;letter-spacing:4px;color:var(--gold-deep);text-transform:uppercase;font-weight:700;margin-bottom:12px;display:flex;align-items:center;gap:8px;}
.sth-label::before{content:"✦";color:var(--gold);}
.sth-icon{font-size:46px;margin-bottom:18px;}
.sth-title{font-family:var(--font-display);font-size:clamp(22px,2.6vw,36px);color:var(--text-dark);line-height:1.15;margin-bottom:12px;}
.sth-title em{font-style:italic;background:var(--grad-rg);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;}
.sth-divider{height:3px;width:50px;background:var(--grad-gold);border-radius:2px;margin-bottom:18px;}
.sth-desc{font-family:var(--font-body);font-size:13.5px;color:var(--text-mid);line-height:1.9;margin-bottom:22px;font-weight:300;}
.sth-points{display:flex;flex-direction:column;gap:11px;margin-bottom:26px;}
.sth-point{display:flex;align-items:flex-start;gap:12px;font-family:var(--font-body);font-size:13px;color:var(--text-mid);font-weight:300;}
.sth-point-icon{width:30px;height:30px;border-radius:8px;background:var(--gold-pale);border:1px solid var(--border-gold);display:flex;align-items:center;justify-content:center;font-size:13px;flex-shrink:0;margin-top:2px;}
.svc-text-half.dark .sth-point-icon{background:rgba(255,255,255,0.1);border-color:rgba(255,255,255,0.2);}
.svc-text-half.dark .sth-point{color:rgba(255,255,255,0.75);}
.sth-point-text strong{display:block;color:var(--text-dark);font-weight:600;margin-bottom:2px;}
.svc-text-half.dark .sth-point-text strong{color:#fff;}
.sth-btns{display:flex;gap:10px;flex-wrap:wrap;}
.btn-sth{background:var(--grad-rg);color:#fff;font-family:var(--font-body);font-size:10px;letter-spacing:2px;text-transform:uppercase;font-weight:700;padding:12px 22px;border-radius:10px;border:none;cursor:pointer;transition:all .3s;display:inline-flex;align-items:center;gap:8px;box-shadow:0 4px 14px rgba(155,21,39,0.3);}
.btn-sth:hover{transform:translateY(-3px);box-shadow:0 10px 28px rgba(155,21,39,0.5);}
.btn-sth-wa{background:linear-gradient(135deg,#25D366,#128C7E);color:#fff;font-family:var(--font-body);font-size:10px;letter-spacing:2px;text-transform:uppercase;font-weight:700;padding:12px 22px;border-radius:10px;border:none;cursor:pointer;transition:all .3s;display:inline-flex;align-items:center;gap:8px;}
.btn-sth-wa:hover{transform:translateY(-3px);}
/* OVERLAY GRID 4-COL */
.grid-section{padding:64px 5%;}
.svc-overlay-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;}
.sov-card{border-radius:14px;overflow:hidden;position:relative;cursor:pointer;aspect-ratio:4/5;}
.sov-card img{width:100%;height:100%;object-fit:cover;transition:transform .6s;}
.sov-card:hover img{transform:scale(1.08);}
.sov-overlay{position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,0.9) 0%,rgba(0,0,0,0.3) 52%,transparent 100%);display:flex;flex-direction:column;justify-content:flex-end;padding:22px 18px;transition:all .4s;}
.sov-card:hover .sov-overlay{background:linear-gradient(0deg,rgba(92,11,22,0.95) 0%,rgba(155,21,39,0.55) 55%,rgba(146,64,14,0.18) 100%);}
.sov-icon{font-size:30px;margin-bottom:9px;display:block;transition:transform .35s var(--ease-spring);}
.sov-card:hover .sov-icon{transform:scale(1.15) rotate(8deg);}
.sov-num{font-family:var(--font-body);font-size:8px;letter-spacing:3px;color:var(--gold-vivid);font-weight:700;text-transform:uppercase;margin-bottom:4px;}
.sov-name{font-family:var(--font-display);font-size:clamp(14px,1.5vw,17px);color:#fff;line-height:1.25;margin-bottom:5px;}
.sov-desc{font-family:var(--font-body);font-size:11px;color:rgba(255,255,255,0.7);line-height:1.6;font-weight:300;max-height:0;overflow:hidden;transition:max-height .45s;}
.sov-card:hover .sov-desc{max-height:72px;margin-bottom:8px;}
.sov-btn{background:rgba(252,211,77,0.18);border:1px solid rgba(252,211,77,0.5);color:var(--gold-vivid);font-family:var(--font-body);font-size:9px;letter-spacing:2px;text-transform:uppercase;font-weight:700;padding:6px 13px;border-radius:8px;cursor:pointer;transition:all .3s;opacity:0;transform:translateY(8px);}
.sov-card:hover .sov-btn{opacity:1;transform:none;}
.sov-btn:hover{background:var(--grad-rg);border-color:transparent;color:#fff;}
/* SPECIALTY 3-COL */
.specialty-row{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;background:var(--border-light);}
.sp-card{position:relative;height:clamp(260px,32vw,360px);overflow:hidden;cursor:pointer;}
.sp-card img{width:100%;height:100%;object-fit:cover;transition:transform .7s;}
.sp-card:hover img{transform:scale(1.07);}
.sp-overlay{position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,0.9) 0%,rgba(0,0,0,0.4) 55%,transparent 100%);}
.sp-content{position:absolute;bottom:0;left:0;right:0;padding:24px 20px;}
.sp-icon{font-size:32px;margin-bottom:9px;display:block;}
.sp-num{font-family:var(--font-body);font-size:8px;letter-spacing:3px;color:var(--gold-vivid);text-transform:uppercase;font-weight:700;margin-bottom:5px;}
.sp-name{font-family:var(--font-display);font-size:clamp(15px,2vw,22px);color:#fff;margin-bottom:7px;line-height:1.2;}
.sp-desc{font-family:var(--font-body);font-size:12px;color:rgba(255,255,255,0.72);line-height:1.65;font-weight:300;max-height:0;overflow:hidden;transition:max-height .45s;}
.sp-card:hover .sp-desc{max-height:60px;}
.sp-tag-row{display:flex;flex-wrap:wrap;gap:5px;margin-top:9px;opacity:0;transition:opacity .4s;}
.sp-card:hover .sp-tag-row{opacity:1;}
.sp-tag{font-family:var(--font-body);font-size:8.5px;color:var(--gold-vivid);background:rgba(252,211,77,0.14);border:1px solid rgba(252,211,77,0.35);padding:3px 8px;border-radius:10px;text-transform:uppercase;letter-spacing:1px;font-weight:600;}
.sp-cta{display:inline-flex;align-items:center;gap:7px;margin-top:11px;background:var(--grad-rg);color:#fff;font-family:var(--font-body);font-size:9.5px;letter-spacing:2px;text-transform:uppercase;font-weight:700;padding:7px 16px;border-radius:8px;border:none;cursor:pointer;opacity:0;transform:translateY(8px);transition:all .4s;}
.sp-card:hover .sp-cta{opacity:1;transform:none;}
/* WIDE BANNER */
.wide-banner{position:relative;overflow:hidden;cursor:pointer;margin:2px 0;}
.wide-banner img{width:100%;height:clamp(220px,35vw,400px);object-fit:cover;transition:transform .8s;}
.wide-banner:hover img{transform:scale(1.04);}
.wide-banner-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(92,11,22,0.92) 0%,rgba(155,21,39,0.75) 35%,rgba(155,21,39,0.3) 65%,transparent 100%);}
.wide-banner-content{position:absolute;inset:0;display:flex;align-items:center;padding:0 6%;}
.wbc-inner{max-width:480px;width:100%;}
.wbc-label{font-family:var(--font-body);font-size:9px;letter-spacing:4px;color:var(--gold-vivid);text-transform:uppercase;font-weight:700;margin-bottom:11px;display:flex;align-items:center;gap:8px;}
.wbc-label::before{content:"✦";color:var(--gold-vivid);}
.wbc-title{font-family:var(--font-display);font-size:clamp(22px,3vw,44px);color:#fff;line-height:1.1;margin-bottom:12px;}
.wbc-desc{font-family:var(--font-accent);font-size:clamp(13px,1.4vw,17px);color:rgba(255,255,255,0.8);font-style:italic;line-height:1.75;margin-bottom:22px;}
.wbc-btns{display:flex;gap:10px;flex-wrap:wrap;}
/* SECTION DIVIDER */
.section-divider{background:var(--grad-rg);padding:44px 5%;position:relative;overflow:hidden;}
.section-divider::before{content:"ॐ";position:absolute;font-size:240px;color:rgba(255,255,255,0.04);top:50%;left:50%;transform:translate(-50%,-50%);font-family:serif;pointer-events:none;}
.sd-inner{display:flex;align-items:center;justify-content:space-between;position:relative;z-index:1;flex-wrap:wrap;gap:20px;}
.sd-text h3{font-family:var(--font-display);font-size:clamp(18px,2.8vw,34px);color:#fff;margin-bottom:5px;}
.sd-text p{font-family:var(--font-accent);font-size:15px;color:rgba(255,255,255,0.75);font-style:italic;}
.sd-badge{display:flex;gap:14px;flex-wrap:wrap;}
.sd-badge-item{background:rgba(255,255,255,0.12);border:1px solid rgba(255,255,255,0.25);border-radius:12px;padding:11px 18px;text-align:center;backdrop-filter:blur(8px);}
.sd-badge-num{font-family:var(--font-display);font-size:26px;color:var(--gold-vivid);line-height:1;}
.sd-badge-lbl{font-family:var(--font-body);font-size:9px;letter-spacing:2px;color:rgba(255,255,255,0.6);text-transform:uppercase;margin-top:2px;}
/* PROCESS */
.process-section{padding:80px 5%;background:var(--pearl);position:relative;overflow:hidden;}
.process-section::before{content:"";position:absolute;inset:0;background-image:radial-gradient(circle,rgba(217,119,6,0.04) 1px,transparent 1px);background-size:24px 24px;pointer-events:none;}
.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:52px;position:relative;}
.process-grid::before{content:"";position:absolute;top:32px;left:12.5%;right:12.5%;height:2px;background:linear-gradient(90deg,var(--gold-pale),var(--gold-bright),var(--gold-pale));z-index:0;}
.process-step{text-align:center;padding:0 16px;position:relative;z-index:1;}
.process-dot{width:64px;height:64px;border-radius:50%;background:var(--grad-rg);border:4px solid var(--gold-bright);display:flex;align-items:center;justify-content:center;margin:0 auto 18px;font-size:24px;box-shadow:var(--shadow-gold);transition:all .35s var(--ease-spring);}
.process-step:hover .process-dot{transform:scale(1.12) rotate(8deg);}
.process-num{font-family:var(--font-body);font-size:8px;letter-spacing:3px;color:var(--gold-deep);text-transform:uppercase;font-weight:700;margin-bottom:7px;}
.process-title{font-family:var(--font-display);font-size:16px;color:var(--text-dark);margin-bottom:7px;line-height:1.3;}
.process-desc{font-family:var(--font-body);font-size:12px;color:var(--text-mid);line-height:1.7;font-weight:300;}
/* TESTIMONIALS */
.testi-strip{background:linear-gradient(160deg,#2D0610,#5C0B16);padding:80px 5%;position:relative;overflow:hidden;}
.testi-strip::before{content:"ॐ";position:absolute;font-size:300px;color:rgba(252,211,77,0.03);top:50%;left:50%;transform:translate(-50%,-50%);font-family:serif;pointer-events:none;}
.testi-cards-row{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:48px;position:relative;z-index:1;}
.tcard{background:rgba(255,255,255,0.06);border:1.5px solid rgba(252,211,77,0.18);border-radius:16px;padding:30px 26px;transition:all .42s;}
.tcard:hover{background:rgba(255,255,255,0.1);border-color:rgba(252,211,77,0.4);transform:translateY(-6px);}
.tcard-quote{font-family:var(--font-display);font-size:42px;background:var(--grad-gold);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1;margin-bottom:6px;}
.tcard-text{font-family:var(--font-body);font-size:13px;color:rgba(255,255,255,0.78);line-height:1.88;margin-bottom:20px;font-weight:300;}
.tcard-author{display:flex;align-items:center;gap:11px;border-top:1px solid rgba(252,211,77,0.18);padding-top:16px;}
.tcard-name{font-family:var(--font-display);font-size:14px;color:#fff;}
.tcard-sign{font-family:var(--font-body);font-size:10px;color:rgba(255,255,255,0.5);margin-top:2px;}
.tcard-stars{color:var(--gold-vivid);font-size:12px;margin-top:3px;}
/* CTA */
.cta-section{position:relative;overflow:hidden;}
.cta-img-wrap{position:relative;min-height:400px;}
.cta-img-wrap img{width:100%;height:100%;min-height:400px;object-fit:cover;}
.cta-img-wrap::after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(92,11,22,0.95) 0%,rgba(155,21,39,0.85) 40%,rgba(146,64,14,0.75) 100%);}
.cta-content{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;padding:40px 5%;z-index:10;}
.cta-content h2{font-family:var(--font-display);font-size:clamp(24px,4.5vw,56px);color:#fff;margin-bottom:14px;}
.cta-content p{font-family:var(--font-accent);font-size:clamp(15px,1.8vw,19px);font-style:italic;color:rgba(255,255,255,0.82);max-width:500px;margin:0 auto 32px;line-height:1.8;}
.cta-btns{display:flex;gap:12px;flex-wrap:wrap;justify-content:center;}
.btn-cta-wa{background:linear-gradient(135deg,#25D366,#128C7E);color:#fff;font-family:var(--font-body);font-size:11px;letter-spacing:2px;text-transform:uppercase;font-weight:700;padding:13px 28px;border-radius:10px;border:none;cursor:pointer;transition:all .3s;display:flex;align-items:center;gap:9px;box-shadow:0 6px 24px rgba(37,211,102,0.4);}
.btn-cta-wa:hover{transform:translateY(-3px);}
.cta-particle{position:absolute;width:3px;height:3px;border-radius:50%;background:var(--gold-vivid);animation:floatUp 6s ease-in-out infinite;}
/* FLOATING & CONSULT */
.floating-btns{position:fixed;bottom:24px;right:20px;z-index:998;display:flex;flex-direction:column;align-items:flex-end;gap:9px;}
/* ════ FOOTER — Updated to match about.html ════ */
/* Contact items — same as about.html */
/* RESPONSIVE */
@media (max-width:1100px){
.svc-fullrow{grid-template-columns:1fr;}
.svc-fullrow.reverse{direction:ltr;}
.svc-img-half{min-height:280px;}
.svc-img-half img{height:320px;}
.svc-text-half{padding:40px 36px;}
.svc-overlay-grid{grid-template-columns:repeat(2,1fr);}
.nav-links,.nav-phone-btn{display:none!important;}
.nav-hamburger{display:flex!important;}
.nav-phone-mobile{display:flex!important;}
}
@media (max-width:900px){
.services-main-grid{grid-template-columns:repeat(2,1fr);}
.specialty-row{grid-template-columns:1fr 1fr;}
.testi-cards-row{grid-template-columns:1fr 1fr;}
.process-grid{grid-template-columns:repeat(2,1fr);gap:36px;}
.process-grid::before{display:none;}
}
@media (max-width:768px){
.nav-inner{height:70px;padding:0 4%;}
.nav-logo-wrap img{height:62px;}
.filter-section{top:70px;padding:12px 4%;}
#consultWidget{display:none;}
.top-bar{padding:7px 4%;}
.top-bar-text{font-size:10px;letter-spacing:0.4px;}
.page-hero{min-height:auto;}
.page-hero-content{padding:36px 5% 44px;}
.page-hero h1{font-size:clamp(26px,8vw,38px);}
.page-hero p{font-size:13.5px;}
.hero-pill-row{gap:6px;margin-top:16px;}
.hero-pill{font-size:9px;padding:4px 11px;}
.trust-strip-inner{flex-wrap:nowrap;justify-content:flex-start;}
.ts-item{min-width:130px;padding:12px 14px;}
.filter-section{overflow-x:auto;white-space:nowrap;}
.filter-tabs{flex-wrap:nowrap;justify-content:flex-start;padding-bottom:4px;}
.filter-tab{flex-shrink:0;padding:7px 14px;font-size:9.5px;}
.featured-service img{height:clamp(340px,90vw,460px);}
.featured-service-overlay{background:linear-gradient(180deg,rgba(92,11,22,0.12) 0%,rgba(92,11,22,0.65) 40%,rgba(92,11,22,0.98) 100%);}
.featured-service-content{align-items:flex-end;padding:0;}
.featured-service-inner{max-width:100%;padding:20px 5% 28px;}
.fs-desc{display:none;}
.fs-btns{flex-direction:column;gap:9px;}
.btn-fs-primary,.btn-fs-outline{width:100%;justify-content:center;text-align:center;}
.services-main-grid{grid-template-columns:1fr;gap:2px;}
.svc-tall,.svc-medium,.svc-wide{height:clamp(220px,65vw,290px);}
.svc-desc{max-height:58px!important;opacity:1!important;}
.svc-tags{opacity:1!important;transform:none!important;}
.svc-cta-row{opacity:1!important;transform:none!important;}
.svc-card::before{transform:scaleX(1)!important;}
.svc-name{font-size:16px;}
.svc-desc{font-size:11.5px;}
.svc-fullrow{grid-template-columns:1fr;}
.svc-fullrow.reverse{direction:ltr;}
.svc-img-half{min-height:200px;}
.svc-img-half img{height:230px;width:100%;}
.svc-text-half{padding:30px 5%;}
.sth-icon{font-size:36px;margin-bottom:12px;}
.sth-title{font-size:clamp(20px,5.5vw,28px);}
.sth-desc{font-size:13px;margin-bottom:16px;}
.sth-btns{flex-direction:column;gap:9px;}
.btn-sth,.btn-sth-wa{width:100%;justify-content:center;}
.grid-section{padding:36px 4%;}
.svc-overlay-grid{grid-template-columns:1fr 1fr;gap:10px;}
.sov-card{aspect-ratio:3/4;}
.sov-desc{max-height:44px!important;margin-bottom:6px!important;}
.sov-btn{opacity:1!important;transform:none!important;font-size:8.5px;padding:5px 10px;}
.sov-name{font-size:13px;}
.sov-overlay{padding:14px 12px;}
.specialty-row{grid-template-columns:1fr;gap:2px;}
.sp-card{height:clamp(220px,65vw,280px);}
.sp-desc{max-height:44px!important;}
.sp-tag-row{opacity:1!important;}
.sp-cta{opacity:1!important;transform:none!important;}
.wide-banner img{height:clamp(240px,70vw,320px);}
.wide-banner-overlay{background:linear-gradient(180deg,rgba(92,11,22,0.15) 0%,rgba(92,11,22,0.97) 65%);}
.wide-banner-content{align-items:flex-end;}
.wbc-inner{max-width:100%;padding:0 5% 24px;}
.wbc-title{font-size:clamp(20px,6.5vw,30px);}
.wbc-btns{flex-direction:column;gap:9px;}
.wbc-btns .btn-fs-primary,.wbc-btns .btn-fs-outline{width:100%;justify-content:center;}
.section-divider{padding:28px 5%;}
.sd-inner{flex-direction:column;gap:16px;text-align:center;}
.sd-badge{justify-content:center;}
.process-section{padding:44px 5%;}
.process-grid{grid-template-columns:1fr 1fr;gap:24px;margin-top:32px;}
.process-grid::before{display:none;}
.process-dot{width:52px;height:52px;font-size:20px;margin-bottom:12px;}
.testi-strip{padding:44px 5%;}
.testi-cards-row{grid-template-columns:1fr;gap:14px;margin-top:28px;}
.tcard{padding:22px 18px;}
.cta-img-wrap{min-height:380px;}
.cta-img-wrap img{min-height:380px;}
.cta-content{padding:30px 5%;}
.cta-btns{flex-direction:column;align-items:center;gap:10px;}
.btn-cta-wa,.cta-btns .btn-fs-primary{width:100%;max-width:300px;justify-content:center;}
/* Footer responsive */
.footer-inner{padding:40px 5% 0;}
.footer-bottom-bar{flex-direction:column;align-items:flex-start;gap:10px;padding:18px 0 24px;}
.footer-bottom-links{gap:14px;}
.floating-btns{bottom:16px;right:14px;}
.float-btn-wa,.float-btn-call{width:50px;height:50px;font-size:22px;}
#backToTop{right:14px;bottom:86px;width:40px;height:40px;}
}
@media (max-width:480px){
.svc-overlay-grid{grid-template-columns:1fr;}
.sov-card{aspect-ratio:16/10;}
.process-grid{grid-template-columns:1fr;}
.sd-badge{flex-direction:column;align-items:center;}
.footer-social{gap:8px;}
.soc-btn{width:34px;height:34px;}
.top-bar{display:none;}
.featured-service img{height:clamp(310px,100vw,420px);}
}
















/* ZODIAC PAGE — original display font */
@import url('https://fonts.googleapis.com/css2?family=Rozha+One&display=swap');
:root{--font-display:'Rozha One',serif;}

/* ZODIAC PAGE — additional reveal timing */
.reveal-delay-4{transition-delay:.44s!important;}

/* HERO — PAGE BANNER */
.page-hero{position:relative;height:480px;overflow:hidden;display:flex;align-items:center;background:var(--grad-hero);}
.page-hero::before{content:'';position:absolute;inset:0;background-image:radial-gradient(circle,rgba(255,255,255,0.04) 1.5px,transparent 1.5px);background-size:24px 24px;pointer-events:none;z-index:1;}
.page-hero-bg{position:absolute;inset:0;}
.page-hero-bg img{width:100%;height:100%;object-fit:cover;opacity:0.18;mix-blend-mode:multiply;}
.page-hero-orb{position:absolute;right:-60px;top:50%;transform:translateY(-50%);width:500px;height:500px;border-radius:50%;border:1px dashed rgba(252,211,77,0.15);animation:spinSlow 30s linear infinite;pointer-events:none;}
.page-hero-orb::before{content:'';position:absolute;inset:40px;border-radius:50%;border:1px solid rgba(252,211,77,0.12);animation:spinRev 20s linear infinite;}
.page-hero-orb::after{content:'✦';position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:320px;color:rgba(252,211,77,0.04);animation:rotateStar 60s linear infinite;}
.page-hero-content{position:relative;z-index:10;padding:0 7%;width:100%;}
.page-hero-eyebrow{display:inline-flex;align-items:center;gap:12px;margin-bottom:18px;font-family:var(--font-body);font-size:10.5px;letter-spacing:5px;text-transform:uppercase;color:var(--gold-vivid);font-weight:700;animation:textSlideLeft .7s .1s var(--ease-smooth) both;}
.page-hero-eyebrow::before{content:'';display:block;width:32px;height:1.5px;background:var(--gold-vivid);}
.page-hero h1{font-family:var(--font-display);font-size:clamp(36px,5.5vw,72px);color:#fff;line-height:1.05;font-weight:400;margin-bottom:16px;animation:textSlideUp .8s .25s var(--ease-smooth) both;}
.page-hero h1 em{color:var(--gold-vivid);font-style:italic;}
.page-hero p{font-family:var(--font-accent);font-size:18px;color:rgba(255,255,255,0.82);font-style:italic;max-width:520px;line-height:1.8;animation:textSlideUp .8s .42s var(--ease-smooth) both;}
.breadcrumb{display:flex;align-items:center;gap:9px;margin-top:22px;animation:textSlideUp .7s .58s var(--ease-smooth) both;}
.breadcrumb a,.breadcrumb span{font-family:var(--font-body);font-size:11.5px;color:rgba(255,255,255,0.5);transition:color .25s;letter-spacing:.5px;}
.breadcrumb a:hover{color:var(--gold-vivid);}
.breadcrumb .sep{color:rgba(255,255,255,0.25);}
.breadcrumb .current{color:var(--gold-vivid);}

/* ELEMENT STRIP */
.element-strip{background:linear-gradient(90deg,var(--crimson-dark),var(--crimson) 30%,var(--gold-deep) 70%,var(--crimson-dark));padding:0;overflow:hidden;}
.element-inner{display:grid;grid-template-columns:repeat(4,1fr);}
.el-item{padding:24px;border-right:1px solid rgba(252,211,77,0.15);text-align:center;cursor:pointer;transition:background .3s;}
.el-item:hover{background:rgba(255,255,255,0.1);}
.el-item:last-child{border-right:none;}
.el-icon{font-size:28px;margin-bottom:7px;display:block;transition:transform .4s var(--ease-spring);}
.el-item:hover .el-icon{transform:scale(1.2) rotate(10deg);}
.el-name{font-family:var(--font-display);font-size:15px;color:var(--gold-vivid);margin-bottom:4px;}
.el-signs{font-family:var(--font-body);font-size:11px;color:rgba(255,255,255,0.6);letter-spacing:1px;}

/* SIGN FINDER */
.sign-finder{background:linear-gradient(180deg,var(--cream),var(--pearl));padding:80px 5%;}
.finder-inner{max-width:700px;margin:0 auto;text-align:center;}
.finder-card{background:#fff;border-radius:20px;padding:48px 44px;box-shadow:var(--shadow-lg);border:1.5px solid var(--border-gold);margin-top:40px;}
.finder-card-title{font-family:var(--font-display);font-size:22px;color:var(--text-dark);margin-bottom:6px;}
.finder-card-sub{font-family:var(--font-accent);font-size:15px;font-style:italic;color:var(--text-muted);margin-bottom:28px;}
.finder-inputs{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px;margin-bottom:20px;}
.finder-select{padding:13px 14px;border:1.5px solid var(--border);border-radius:10px;font-family:var(--font-body);font-size:13.5px;color:var(--text-dark);background:#fff;outline:none;cursor:pointer;transition:border-color .3s;appearance:none;}
.finder-select:focus{border-color:var(--crimson);}
.finder-btn{width:100%;background:var(--grad-rg);color:#fff;font-family:var(--font-body);font-size:11.5px;letter-spacing:2.5px;text-transform:uppercase;font-weight:700;padding:15px;border-radius:10px;border:none;cursor:pointer;transition:all .35s;box-shadow:0 6px 24px rgba(155,21,39,0.3);}
.finder-btn:hover{transform:translateY(-3px);box-shadow:0 12px 40px rgba(155,21,39,0.45);}
.finder-result{margin-top:28px;padding:28px;background:linear-gradient(135deg,var(--crimson-ultra),var(--gold-pale));border-radius:14px;border:2px solid var(--border-gold);display:none;}
.finder-result.show{display:block;}
.fr-sym{font-size:56px;margin-bottom:10px;}
.fr-name{font-family:var(--font-display);font-size:30px;color:var(--text-dark);margin-bottom:5px;}
.fr-dates{font-family:var(--font-body);font-size:13px;color:var(--text-muted);margin-bottom:14px;letter-spacing:1px;}
.fr-desc{font-family:var(--font-body);font-size:13.5px;color:var(--text-mid);line-height:1.85;font-weight:300;}

/* ZODIAC GRID */
.zodiac-grid-section{background:#fff;padding:88px 5%;}
.z-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;margin-top:56px;}
.z-card{border-radius:16px;overflow:hidden;position:relative;cursor:pointer;transition:all .5s var(--ease-smooth);box-shadow:var(--shadow-sm);height:320px;border:2px solid transparent;}
.z-card:hover{transform:translateY(-14px) scale(1.03);box-shadow:var(--shadow-xl);border-color:var(--gold-bright);}
.z-card img{width:100%;height:320px;transition:transform .6s var(--ease-smooth);}
.z-card:hover img{transform:scale(1.08);}
.z-card-overlay{position:absolute;inset:0;background:linear-gradient(0deg,rgba(92,11,22,0.92) 0%,rgba(0,0,0,0.1) 52%,transparent 100%);display:flex;flex-direction:column;justify-content:flex-end;padding:22px 18px;}
.zc-sym{font-size:34px;margin-bottom:5px;transition:transform .4s var(--ease-spring);}
.z-card:hover .zc-sym{transform:scale(1.22) rotate(8deg);}
.zc-name{font-family:var(--font-display);font-size:19px;color:var(--gold-vivid);}
.zc-dates{font-family:var(--font-body);font-size:10px;color:rgba(255,255,255,0.65);letter-spacing:1px;margin-top:3px;}
.zc-ruler{font-family:var(--font-body);font-size:10px;color:rgba(255,255,255,0.48);margin-top:5px;}
.zc-el{display:inline-block;font-family:var(--font-body);font-size:9px;letter-spacing:2px;text-transform:uppercase;margin-top:8px;padding:4px 11px;border-radius:20px;}
.fire-el{background:rgba(239,68,68,0.38);color:#fca5a5;}
.earth-el{background:rgba(34,197,94,0.28);color:#86efac;}
.air-el{background:rgba(59,130,246,0.28);color:#93c5fd;}
.water-el{background:rgba(155,21,39,0.38);color:#f4a0a8;}
/* hover info panel */
.z-card-info{position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(160deg,rgba(92,11,22,0.97),rgba(40,0,0,0.97));padding:24px 20px;display:flex;flex-direction:column;justify-content:center;opacity:0;transition:opacity .4s var(--ease-smooth);}
.z-card:hover .z-card-info{opacity:1;}
.zi-sym{font-size:38px;margin-bottom:8px;}
.zi-name{font-family:var(--font-display);font-size:20px;color:var(--gold-vivid);margin-bottom:4px;}
.zi-keyword{font-family:var(--font-body);font-size:9.5px;letter-spacing:3px;text-transform:uppercase;color:rgba(255,255,255,0.45);margin-bottom:12px;}
.zi-traits{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:14px;}
.zi-trait{font-family:var(--font-body);font-size:9.5px;background:rgba(217,119,6,0.18);border:1px solid rgba(217,119,6,0.35);color:var(--gold-vivid);padding:3px 9px;border-radius:20px;}
.zi-row{display:flex;gap:8px;margin-bottom:4px;align-items:center;}
.zi-lbl{font-family:var(--font-body);font-size:9.5px;color:rgba(255,255,255,0.38);min-width:60px;}
.zi-val{font-family:var(--font-body);font-size:10.5px;color:rgba(255,255,255,0.82);font-weight:500;}
.zi-btn{width:100%;background:var(--grad-gold);color:var(--crimson-dark);font-family:var(--font-body);font-size:9.5px;letter-spacing:2px;text-transform:uppercase;font-weight:700;padding:9px;border-radius:7px;border:none;cursor:pointer;margin-top:12px;transition:all .3s;}
.zi-btn:hover{transform:translateY(-2px);box-shadow:var(--shadow-gold);}

/* PLANETS SECTION */
.planets-section{background:#0d0510;padding:100px 5%;position:relative;overflow:hidden;}
.planets-section::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 20% 30%,rgba(155,21,39,0.18) 0%,transparent 45%),radial-gradient(ellipse at 80% 70%,rgba(217,119,6,0.1) 0%,transparent 40%);pointer-events:none;}
.planets-stars{position:absolute;inset:0;pointer-events:none;}
.planets-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:20px;margin-top:60px;position:relative;z-index:1;}
.planet-card{background:rgba(255,255,255,0.05);border:1px solid rgba(217,119,6,0.15);border-radius:14px;padding:30px 20px;text-align:center;transition:all .45s var(--ease-smooth);cursor:pointer;position:relative;overflow:hidden;}
.planet-card::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:var(--grad-rg);transform:scaleX(0);transform-origin:left;transition:transform .38s;}
.planet-card:hover{background:rgba(217,119,6,0.09);border-color:rgba(217,119,6,0.45);transform:translateY(-9px);}
.planet-card:hover::before{transform:scaleX(1);}
.planet-icon{font-size:34px;margin-bottom:12px;display:block;transition:transform .4s var(--ease-spring);}
.planet-card:hover .planet-icon{transform:scale(1.2) rotate(10deg);}
.planet-sym{font-family:var(--font-display);font-size:22px;color:var(--gold-vivid);margin-bottom:3px;}
.planet-name{font-family:var(--font-body);font-size:11px;letter-spacing:2px;text-transform:uppercase;color:rgba(255,255,255,0.65);margin-bottom:7px;}
.planet-rules{font-family:var(--font-body);font-size:11px;color:rgba(255,255,255,0.38);line-height:1.7;}

/* COMPATIBILITY */
.compat-section{background:var(--pearl);padding:88px 5%;}
.compat-tool{max-width:800px;margin:56px auto 0;}
.compat-inner{background:#fff;border-radius:20px;padding:44px;box-shadow:var(--shadow-lg);border:1.5px solid var(--border-gold);}
.compat-row{display:grid;grid-template-columns:1fr 60px 1fr;gap:0;align-items:center;margin-bottom:22px;}
.compat-vs{text-align:center;font-family:var(--font-display);font-size:24px;color:var(--gold-deep);}
.compat-select{width:100%;padding:14px 16px;border:1.5px solid var(--border);border-radius:10px;font-family:var(--font-body);font-size:14px;color:var(--text-dark);background:#fff;outline:none;cursor:pointer;transition:border-color .3s;appearance:none;}
.compat-select:focus{border-color:var(--crimson);}
.compat-btn{width:100%;background:var(--grad-rg);color:#fff;font-family:var(--font-body);font-size:11.5px;letter-spacing:2.5px;text-transform:uppercase;font-weight:700;padding:15px;border-radius:10px;border:none;cursor:pointer;transition:all .35s;box-shadow:0 6px 24px rgba(155,21,39,0.3);}
.compat-btn:hover{transform:translateY(-3px);box-shadow:0 12px 40px rgba(155,21,39,0.45);}
.compat-result{margin-top:28px;padding:28px;background:linear-gradient(135deg,var(--crimson-ultra),var(--gold-pale));border-radius:14px;border:2px solid var(--border-gold);display:none;}
.compat-result.show{display:block;}
.cr-header{display:flex;align-items:center;justify-content:center;gap:28px;margin-bottom:20px;}
.cr-sign{text-align:center;}
.cr-sym{font-size:48px;}
.cr-name{font-family:var(--font-display);font-size:16px;color:var(--text-dark);}
.cr-vs{font-family:var(--font-display);font-size:26px;color:var(--gold-deep);}
.cr-score-wrap{text-align:center;margin-bottom:14px;}
.cr-score{font-family:var(--font-display);font-size:60px;color:var(--crimson);line-height:1;}
.cr-score-lbl{font-family:var(--font-body);font-size:11px;letter-spacing:2px;text-transform:uppercase;color:var(--text-muted);margin-top:4px;}
.cr-bar{height:10px;background:var(--border);border-radius:5px;overflow:hidden;margin:12px 0 20px;}
.cr-bar-fill{height:100%;background:var(--grad-rg);border-radius:5px;transition:width 1.2s var(--ease-smooth);}
.cr-areas{display:grid;grid-template-columns:1fr 1fr;gap:10px;}
.cr-area{background:#fff;border-radius:9px;padding:12px 16px;border:1px solid var(--border-gold);}
.cr-area-lbl{font-family:var(--font-body);font-size:9.5px;letter-spacing:2px;text-transform:uppercase;color:var(--text-muted);margin-bottom:3px;}
.cr-area-score{font-family:var(--font-display);font-size:17px;color:var(--crimson);}
.cr-desc{font-family:var(--font-accent);font-size:16px;font-style:italic;color:var(--text-mid);line-height:1.85;margin-top:18px;text-align:center;}

/* AD RIBBON */
.ad-ribbon{background:linear-gradient(90deg,var(--gold-pale),var(--cream),var(--gold-pale));border-top:1.5px solid var(--border-gold);border-bottom:1.5px solid var(--border-gold);padding:12px 5%;display:flex;align-items:center;justify-content:space-between;cursor:pointer;transition:background .3s;gap:12px;flex-wrap:wrap;}
.ad-ribbon:hover{background:var(--gold-pale);}
.ad-ribbon .ar-left{display:flex;align-items:center;gap:14px;flex-wrap:wrap;}
.ad-ribbon .ar-badge{background:var(--grad-rg);color:#fff;font-family:var(--font-body);font-size:8.5px;letter-spacing:2.5px;text-transform:uppercase;font-weight:700;padding:4px 11px;border-radius:18px;white-space:nowrap;}
.ad-ribbon .ar-text{font-family:var(--font-accent);font-size:15px;color:var(--text-dark);font-weight:600;}
.ad-ribbon .ar-text em{font-style:italic;color:var(--gold-deep);}
.ad-ribbon .ar-cta{font-family:var(--font-body);font-size:10.5px;letter-spacing:2px;text-transform:uppercase;color:var(--gold-deep);font-weight:700;border:1.5px solid var(--gold);padding:6px 18px;border-radius:18px;transition:all .25s;white-space:nowrap;}
.ad-ribbon .ar-cta:hover{background:var(--gold);color:#fff;}

/* CTA BANNER */
.cta-banner{position:relative;overflow:hidden;padding:100px 5%;text-align:center;}
.cta-banner-bg{position:absolute;inset:0;z-index:0;}
.cta-banner-bg img{width:100%;height:100%;object-fit:cover;}
.cta-banner-bg::after{content:'';position:absolute;inset:0;background:linear-gradient(135deg,rgba(76,10,20,0.9),rgba(155,21,39,0.7) 40%,rgba(146,64,14,0.8) 100%);}
.cta-content{position:relative;z-index:10;}
.cta-content h2{font-family:var(--font-display);font-size:clamp(26px,4.8vw,58px);color:#fff;margin-bottom:16px;}
.cta-content p{font-family:var(--font-accent);font-size:18px;font-style:italic;color:rgba(255,255,255,0.88);max-width:520px;margin:0 auto 40px;line-height:1.88;}
.btn-white{background:#fff;color:var(--crimson-dark);font-family:var(--font-body);font-size:12px;letter-spacing:3px;text-transform:uppercase;padding:15px 52px;border-radius:10px;border:none;font-weight:700;box-shadow:0 8px 36px rgba(0,0,0,0.22);transition:all .3s;cursor:pointer;}
.btn-white:hover{transform:translateY(-3px);box-shadow:0 14px 48px rgba(0,0,0,0.28);}

/* TRUST BAR */
.trust-bar{background:linear-gradient(90deg,var(--crimson-dark),var(--crimson) 30%,var(--gold-deep) 70%,var(--crimson-dark));padding:0;overflow:hidden;}
.trust-bar-inner{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;}
.trust-item{display:flex;align-items:center;gap:10px;padding:14px 24px;border-right:1px solid rgba(252,211,77,0.15);}
.trust-item:last-child{border-right:none;}
.trust-item-icon{font-size:18px;flex-shrink:0;}
.trust-item-text{font-family:var(--font-body);font-size:11px;color:rgba(255,255,255,0.82);letter-spacing:.5px;white-space:nowrap;}
.trust-item-text strong{color:var(--gold-vivid);font-weight:700;}


/* Page-content inline style replacements */
.zodiac-center{text-align:center;}
.zodiac-center-label{justify-content:center;}
.zodiac-center-line{margin:0 auto;}
.zodiac-grid-hint{font-family:var(--font-body);font-size:13.5px;color:var(--text-muted);margin-top:-20px;}
.zodiac-planet-heading{position:relative;z-index:1;}
.zodiac-dark-label{color:rgba(252,211,77,0.9);justify-content:center;}
.zodiac-muted-gold{color:rgba(252,211,77,0.5);}
.zodiac-white-title{color:#fff;}
.zodiac-gold-em{background:linear-gradient(135deg,var(--gold-vivid),var(--gold-bright));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;}
.zodiac-planet-intro{font-family:var(--font-accent);font-style:italic;font-size:17px;color:rgba(255,255,255,0.55);max-width:480px;margin:0 auto;}
.zodiac-compat-intro{font-family:var(--font-accent);font-style:italic;font-size:17px;color:var(--text-mid);max-width:500px;margin:0 auto;line-height:1.85;}
.zodiac-cta-star{font-size:40px;margin-bottom:20px;color:var(--gold-vivid);animation:rotateStar 9s linear infinite;display:inline-block;}
.zodiac-cta-note{margin-top:22px;font-family:var(--font-body);font-size:10.5px;letter-spacing:3px;color:rgba(255,255,255,0.5);text-transform:uppercase;}













@import url('https://fonts.googleapis.com/css2?family=Rozha+One&display=swap');
:root{--font-display:'Rozha One',serif;}

:root{--crimson:#9B1527;--crimson-mid:#C41E3A;--crimson-bright:#E8192C;--crimson-soft:#F4A0A8;--crimson-pale:#FDE8EA;--crimson-ultra:#FFF5F6;--crimson-deep:#7A0F1E;--crimson-dark:#5C0B16;
  --gold:#D97706;--gold-bright:#F59E0B;--gold-vivid:#FCD34D;--gold-pale:#FEF3C7;--gold-deep:#92400E;--gold-accent:#FFB800;
  --grad-red:linear-gradient(135deg,#9B1527,#C41E3A,#E8192C);
  --grad-gold:linear-gradient(135deg,#D97706,#F59E0B,#FCD34D);
  --grad-rg:linear-gradient(135deg,#9B1527 0%,#C41E3A 40%,#D97706 80%,#F59E0B 100%);
  --grad-hero:linear-gradient(160deg,#5C0B16 0%,#9B1527 40%,#C41E3A 70%,#D97706 100%);
  --white:#FFFFFF;--off-white:#FAFBFC;--pearl:#FDF8F0;--cream:#FBF5E8;
  --border:#F0D0D4;--border-light:#F8EAEC;--border-mid:#E8C4C8;--border-gold:rgba(217,119,6,0.3);
  --text-dark:#1A0508;--text-mid:#4A1520;--text-light:#7C3040;--text-muted:#A07080;
  --shadow-sm:0 2px 12px rgba(155,21,39,0.08);--shadow-md:0 8px 32px rgba(155,21,39,0.14);--shadow-lg:0 20px 56px rgba(155,21,39,0.18);--shadow-xl:0 32px 80px rgba(155,21,39,0.24);--shadow-gold:0 8px 32px rgba(217,119,6,0.28);
  --font-display:"Rozha One",serif;--font-body:"Poppins",sans-serif;--font-accent:"Cormorant Garamond",serif;
  --ease-smooth:cubic-bezier(0.25,0.46,0.45,0.94);--ease-spring:cubic-bezier(0.34,1.56,0.64,1);}
input,select,textarea{font-family:inherit;}
#backToTop{position:fixed;bottom:100px;right:28px;z-index:997;width:44px;height:44px;border-radius:50%;background:#fff;border:1.5px solid var(--border-mid);color:var(--crimson);font-size:18px;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:var(--shadow-md);opacity:0;transform:translateY(20px);transition:all .35s var(--ease-smooth);pointer-events:none;}
@keyframes checkBounce {
0%{transform:scale(0) rotate(-10deg)}
70%{transform:scale(1.2) rotate(3deg)}
100%{transform:scale(1) rotate(0)}
}
@keyframes loadDot {
0%,80%,100%{transform:scale(0);opacity:.3}
40%{transform:scale(1);opacity:1}
}
@keyframes waPop {
0%{transform:scale(0.8);opacity:0}
70%{transform:scale(1.05)}
100%{transform:scale(1);opacity:1}
}
.reveal-delay-4{transition-delay:.44s!important;}
.nav-link-btn{display:flex;align-items:center;gap:5px;font-family:var(--font-body);font-size:12px;letter-spacing:1.8px;text-transform:uppercase;font-weight:600;color:var(--text-mid);padding:10px 15px;border-radius:4px;transition:all .3s;position:relative;background:none;border:none;cursor:pointer;}
.nav-link-btn:hover,.nav-link-btn.active{color:var(--crimson);}
.nav-link-btn:hover::after,.nav-link-btn.active::after{transform:scaleX(1);}
.dd-texts .dd-name{font-family:var(--font-display);font-size:13px;color:var(--crimson-dark);margin-bottom:2px;}
.dd-footer-link{font-family:var(--font-body);font-size:10.5px;letter-spacing:2px;text-transform:uppercase;color:var(--crimson);font-weight:600;}
.btn-red{background:var(--grad-rg);color:#fff;font-family:var(--font-body);font-size:11.5px;letter-spacing:2px;text-transform:uppercase;font-weight:600;padding:12px 28px;border-radius:10px;border:none;transition:all .3s var(--ease-smooth);box-shadow:0 4px 16px rgba(155,21,39,0.3);cursor:pointer;}
.page-hero{position:relative;height:480px;overflow:hidden;display:flex;align-items:center;background:var(--grad-hero);}
.page-hero::before{content:"";position:absolute;inset:0;background-image:radial-gradient(circle,rgba(255,255,255,0.04) 1.5px,transparent 1.5px);background-size:24px 24px;pointer-events:none;z-index:1;}
.page-hero-bg{position:absolute;inset:0;}
.page-hero-bg img{width:100%;height:100%;object-fit:cover;opacity:0.18;mix-blend-mode:multiply;}
.page-hero-orb{position:absolute;right:-60px;top:50%;transform:translateY(-50%);width:500px;height:500px;border-radius:50%;border:1px dashed rgba(252,211,77,0.15);animation:spinSlow 30s linear infinite;pointer-events:none;}
.page-hero-orb::before{content:"";position:absolute;inset:40px;border-radius:50%;border:1px solid rgba(252,211,77,0.12);animation:spinRev 20s linear infinite;}
.page-hero-orb::after{content:"✦";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:320px;color:rgba(252,211,77,0.04);}
.page-hero-content{position:relative;z-index:10;padding:0 7%;width:100%;}
.page-hero-eyebrow{display:inline-flex;align-items:center;gap:12px;margin-bottom:18px;font-family:var(--font-body);font-size:10.5px;letter-spacing:5px;text-transform:uppercase;color:var(--gold-vivid);font-weight:700;animation:textSlideLeft .7s .1s var(--ease-smooth) both;}
.page-hero-eyebrow::before{content:"";display:block;width:32px;height:1.5px;background:var(--gold-vivid);}
.page-hero h1{font-family:var(--font-display);font-size:clamp(36px,5.5vw,72px);color:#fff;line-height:1.05;font-weight:400;margin-bottom:16px;animation:textSlideUp .8s .25s var(--ease-smooth) both;}
.page-hero h1 em{color:var(--gold-vivid);font-style:italic;}
.page-hero p{font-family:var(--font-accent);font-size:18px;color:rgba(255,255,255,0.82);font-style:italic;max-width:520px;line-height:1.8;animation:textSlideUp .8s .42s var(--ease-smooth) both;}
.breadcrumb{display:flex;align-items:center;gap:9px;margin-top:22px;animation:textSlideUp .7s .58s var(--ease-smooth) both;}
.breadcrumb a,.breadcrumb span{font-family:var(--font-body);font-size:11.5px;color:rgba(255,255,255,0.5);transition:color .25s;letter-spacing:.5px;}
.breadcrumb a:hover{color:var(--gold-vivid);}
.breadcrumb .sep{color:rgba(255,255,255,0.25);}
.breadcrumb .current{color:var(--gold-vivid);}
.trust-bar{background:linear-gradient(90deg,var(--crimson-dark),var(--crimson) 30%,var(--gold-deep) 70%,var(--crimson-dark));padding:0;overflow:hidden;}
.trust-bar-inner{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;}
.trust-item{display:flex;align-items:center;gap:10px;padding:14px 24px;border-right:1px solid rgba(252,211,77,0.15);}
.trust-item:last-child{border-right:none;}
.trust-item-icon{font-size:18px;flex-shrink:0;}
.trust-item-text{font-family:var(--font-body);font-size:11px;color:rgba(255,255,255,0.82);letter-spacing:.5px;white-space:nowrap;}
.trust-item-text strong{color:var(--gold-vivid);font-weight:700;}
.contact-strip{background:linear-gradient(90deg,var(--crimson-dark),var(--crimson) 30%,var(--gold-deep) 70%,var(--crimson-dark));padding:0;overflow:hidden;}
.contact-strip-inner{display:grid;grid-template-columns:repeat(4,1fr);}
.cs-item{padding:26px 22px;border-right:1px solid rgba(252,211,77,0.15);display:flex;align-items:center;gap:15px;cursor:pointer;transition:background .3s;}
.cs-item:hover{background:rgba(255,255,255,0.1);}
.cs-item:last-child{border-right:none;}
.cs-icon{width:48px;height:48px;border-radius:50%;background:rgba(255,255,255,0.12);border:2px solid rgba(252,211,77,0.35);display:flex;align-items:center;justify-content:center;font-size:19px;flex-shrink:0;transition:all .35s var(--ease-spring);}
.cs-item:hover .cs-icon{background:rgba(252,211,77,0.18);border-color:var(--gold-vivid);transform:scale(1.12);}
.cs-label{font-family:var(--font-body);font-size:9px;letter-spacing:3px;text-transform:uppercase;color:rgba(255,255,255,0.5);margin-bottom:4px;font-weight:600;}
.cs-value{font-family:var(--font-display);font-size:14px;color:#fff;line-height:1.35;}
.cs-value a{color:#fff;}
.cs-sub{font-family:var(--font-body);font-size:11px;color:rgba(255,255,255,0.48);margin-top:2px;font-weight:300;}
.contact-main{padding:96px 5%;background:var(--off-white);position:relative;}
.contact-main::before{content:"";position:absolute;inset:0;background-image:radial-gradient(circle,rgba(217,119,6,0.028) 1.5px,transparent 1.5px);background-size:28px 28px;pointer-events:none;}
.contact-inner{display:grid;grid-template-columns:1fr 1.05fr;gap:64px;max-width:1400px;margin:0 auto;position:relative;z-index:1;}
.form-wrap{background:#fff;border-radius:24px;padding:52px 44px;box-shadow:var(--shadow-xl);border:1.5px solid var(--border-gold);}
.form-eyebrow{font-family:var(--font-body);font-size:9.5px;letter-spacing:5px;text-transform:uppercase;color:var(--gold);font-weight:700;margin-bottom:8px;display:flex;align-items:center;gap:8px;}
.form-eyebrow::before{content:"✦";font-size:9px;}
.form-title{font-family:var(--font-display);font-size:32px;color:var(--text-dark);line-height:1.15;margin-bottom:8px;}
.form-subtitle{font-family:var(--font-accent);font-size:16px;font-style:italic;color:var(--text-light);line-height:1.65;margin-bottom:0;}
.form-divider{height:1px;background:linear-gradient(90deg,transparent,var(--border-gold),transparent);margin:24px 0;}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px;}
.form-row.full{grid-template-columns:1fr;}
.form-group{display:flex;flex-direction:column;gap:7px;}
.form-label{font-family:var(--font-body);font-size:9.5px;letter-spacing:2px;text-transform:uppercase;color:var(--text-mid);font-weight:700;}
.form-label .req{color:var(--crimson);}
.form-input,.form-select,.form-textarea{padding:13px 16px;border:1.5px solid var(--border-mid);border-radius:10px;font-family:var(--font-body);font-size:13px;color:var(--text-dark);background:#fff;transition:all .3s;outline:none;}
.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--crimson-mid);box-shadow:0 0 0 4px rgba(155,21,39,0.07);}
.form-input:hover,.form-select:hover,.form-textarea:hover{border-color:var(--border-gold);}
.form-input::placeholder,.form-textarea::placeholder{color:var(--text-muted);font-size:12.5px;}
.form-select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23A07080' stroke-width='1.5' fill='none'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;padding-right:36px;}
.form-textarea{resize:vertical;min-height:120px;line-height:1.75;}
.form-birth-wrap{background:linear-gradient(135deg,var(--gold-pale),var(--cream));border:1.5px solid var(--border-gold);border-radius:14px;padding:22px;margin-bottom:18px;}
.form-birth-title{display:flex;align-items:center;gap:8px;font-family:var(--font-body);font-size:10px;letter-spacing:2px;text-transform:uppercase;color:var(--gold-deep);font-weight:700;margin-bottom:16px;}
.form-birth-title::before{content:"✦";font-size:9px;}
.birth-row{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px;}
.form-check-row{display:flex;align-items:flex-start;gap:12px;margin-bottom:28px;margin-top:4px;}
.form-check{width:18px;height:18px;border:2px solid var(--border-gold);border-radius:4px;accent-color:var(--crimson);cursor:pointer;flex-shrink:0;margin-top:2px;}
.form-check-label{font-family:var(--font-body);font-size:12px;color:var(--text-mid);line-height:1.65;font-weight:300;}
.form-submit{width:100%;background:linear-gradient(135deg,#1da851,#25D366,#128C7E);color:#fff;font-family:var(--font-body);font-size:11.5px;letter-spacing:3px;text-transform:uppercase;font-weight:700;padding:18px;border-radius:12px;border:none;box-shadow:0 8px 32px rgba(37,211,102,0.38);transition:all .35s var(--ease-smooth);cursor:pointer;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;gap:10px;}
.form-submit::before{content:"";position:absolute;top:0;left:-100%;width:60%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,0.15),transparent);transition:left .5s;}
.form-submit:hover::before{left:160%;}
.form-submit:hover{transform:translateY(-3px);box-shadow:0 16px 48px rgba(37,211,102,0.5);}
.form-submit-icon{font-size:22px;flex-shrink:0;}
.form-success{display:none;text-align:center;padding:60px 20px;}
.success-icon{font-size:72px;margin-bottom:22px;animation:checkBounce .7s var(--ease-spring) both;display:block;}
.success-title{font-family:var(--font-display);font-size:32px;color:var(--text-dark);margin-bottom:12px;}
.success-msg{font-family:var(--font-body);font-size:14px;color:var(--text-mid);line-height:1.95;font-weight:300;}
.success-badge{display:inline-flex;align-items:center;gap:9px;background:var(--gold-pale);border:1.5px solid var(--border-gold);border-radius:22px;padding:9px 20px;margin-top:26px;font-family:var(--font-body);font-size:12px;color:var(--gold-deep);font-weight:700;}
.success-wa-btn{margin-top:16px;display:inline-flex;align-items:center;gap:10px;background:linear-gradient(135deg,#1da851,#25D366);color:#fff;font-family:var(--font-body);font-size:12px;letter-spacing:1.5px;text-transform:uppercase;font-weight:700;padding:14px 28px;border-radius:12px;border:none;cursor:pointer;box-shadow:0 6px 24px rgba(37,211,102,0.32);transition:all .35s;text-decoration:none;animation:waPop .6s .3s var(--ease-spring) both;}
.success-wa-btn:hover{transform:translateY(-3px);box-shadow:0 12px 40px rgba(37,211,102,0.48);}
.success-back-btn{margin-top:14px;background:none;border:1.5px solid var(--border-gold);color:var(--gold-deep);font-family:var(--font-body);font-size:11px;letter-spacing:2px;text-transform:uppercase;font-weight:600;padding:10px 24px;border-radius:8px;cursor:pointer;transition:all .3s;display:inline-block;}
.success-back-btn:hover{background:var(--gold-pale);}
.ai-panel{background:#fff;border-radius:20px;border:1.5px solid var(--border);overflow:hidden;box-shadow:var(--shadow-md);margin-top:28px;}
.ai-panel-header{background:linear-gradient(135deg,#0d0510,#18003a);padding:22px 30px;display:flex;align-items:center;gap:14px;}
.ai-panel-icon{width:44px;height:44px;border-radius:12px;background:rgba(252,211,77,0.15);border:1px solid rgba(252,211,77,0.3);display:flex;align-items:center;justify-content:center;font-size:20px;flex-shrink:0;}
.ai-panel-title{font-family:var(--font-display);font-size:16px;color:#fff;}
.ai-panel-sub{font-family:var(--font-body);font-size:10.5px;color:rgba(255,255,255,0.45);letter-spacing:1px;margin-top:2px;}
.ai-badge{margin-left:auto;background:linear-gradient(135deg,var(--gold),var(--gold-vivid));color:var(--crimson-dark);font-family:var(--font-body);font-size:9px;letter-spacing:2px;text-transform:uppercase;font-weight:700;padding:4px 12px;border-radius:20px;white-space:nowrap;}
.ai-panel-body{padding:26px 30px;}
.ai-input-wrap{display:flex;flex-direction:column;gap:12px;}
.ai-textarea{width:100%;padding:13px 16px;border:1.5px solid var(--border-mid);border-radius:10px;font-family:var(--font-body);font-size:13px;color:var(--text-dark);background:#fff;outline:none;resize:none;height:88px;transition:border-color .3s;line-height:1.7;}
.ai-textarea:focus{border-color:var(--crimson);}
.ai-textarea::placeholder{color:var(--text-muted);}
.ai-generate-btn{width:100%;background:var(--grad-rg);color:#fff;font-family:var(--font-body);font-size:11px;letter-spacing:2px;text-transform:uppercase;font-weight:700;padding:14px;border-radius:10px;border:none;cursor:pointer;transition:all .35s;box-shadow:0 6px 24px rgba(155,21,39,0.3);display:flex;align-items:center;justify-content:center;gap:10px;}
.ai-generate-btn:hover{transform:translateY(-3px);box-shadow:0 12px 40px rgba(155,21,39,0.45);}
.ai-generate-btn:disabled{opacity:0.6;cursor:not-allowed;transform:none;}
.ai-output{margin-top:20px;padding:22px;background:linear-gradient(135deg,var(--crimson-ultra),var(--gold-pale));border-radius:14px;border:1.5px solid var(--border-gold);display:none;}
.ai-output.show{display:block;}
.ai-output-label{font-family:var(--font-body);font-size:9px;letter-spacing:4px;text-transform:uppercase;color:var(--gold);font-weight:700;margin-bottom:10px;display:flex;align-items:center;gap:7px;}
.ai-output-label::before{content:"✦";font-size:8px;}
.ai-output-text{font-family:var(--font-accent);font-size:16px;color:var(--text-dark);line-height:1.95;font-style:italic;}
.loading-dots{display:flex;gap:6px;justify-content:center;padding:18px 0;}
.loading-dot{width:8px;height:8px;border-radius:50%;background:var(--crimson);animation:loadDot 1.4s ease-in-out infinite;}
.loading-dot:nth-child(2){animation-delay:.2s;background:var(--gold);}
.loading-dot:nth-child(3){animation-delay:.4s;background:var(--crimson);}
.sb-eyebrow{font-family:var(--font-body);font-size:9.5px;letter-spacing:4px;text-transform:uppercase;color:var(--gold);font-weight:700;margin-bottom:5px;display:flex;align-items:center;gap:7px;}
.sb-eyebrow::before{content:"✦";font-size:9px;}
.sb-title{font-family:var(--font-display);font-size:22px;color:var(--text-dark);margin-bottom:18px;}
.sidebar-block{margin-bottom:32px;}
.contact-card{background:#fff;border:1.5px solid var(--border-gold);border-radius:14px;padding:20px 18px;margin-bottom:12px;display:flex;align-items:flex-start;gap:14px;transition:all .4s;cursor:pointer;}
.contact-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-gold);border-color:var(--gold-bright);}
.cc-icon{width:48px;height:48px;border-radius:12px;background:var(--gold-pale);border:2px solid var(--border-gold);display:flex;align-items:center;justify-content:center;font-size:20px;flex-shrink:0;transition:all .35s var(--ease-spring);}
.contact-card:hover .cc-icon{background:var(--grad-rg);border-color:var(--crimson);transform:scale(1.08);}
.cc-label{font-family:var(--font-body);font-size:9px;letter-spacing:3px;text-transform:uppercase;color:var(--text-muted);margin-bottom:4px;font-weight:600;}
.cc-value{font-family:var(--font-display);font-size:16px;color:var(--text-dark);line-height:1.3;}
.cc-value a{color:var(--text-dark);}
.cc-sub{font-family:var(--font-body);font-size:11.5px;color:var(--text-muted);margin-top:3px;font-weight:300;}
.whatsapp-btn{width:100%;background:linear-gradient(135deg,#1da851,#25D366,#128C7E);color:#fff;font-family:var(--font-body);font-size:12px;letter-spacing:2px;text-transform:uppercase;font-weight:600;padding:16px;border-radius:12px;border:none;display:flex;align-items:center;justify-content:center;gap:10px;cursor:pointer;transition:all .35s;box-shadow:0 6px 24px rgba(37,211,102,0.32);margin-top:16px;}
.whatsapp-btn:hover{transform:translateY(-3px);box-shadow:0 12px 40px rgba(37,211,102,0.48);}
.hours-wrap{background:#fff;border:1.5px solid var(--border-gold);border-radius:14px;overflow:hidden;}
.hours-row{display:flex;justify-content:space-between;align-items:center;padding:13px 20px;border-bottom:1px solid var(--border-light);}
.hours-row:last-child{border-bottom:none;}
.hours-row.today{background:linear-gradient(90deg,var(--gold-pale),transparent);}
.hours-day{font-family:var(--font-body);font-size:13px;color:var(--text-mid);font-weight:500;}
.hours-time{font-family:var(--font-body);font-size:13px;color:var(--gold-deep);font-weight:700;}
.hours-badge{background:var(--gold-pale);font-family:var(--font-body);font-size:9.5px;padding:3px 10px;border-radius:20px;color:var(--gold-deep);font-weight:700;border:1px solid var(--border-gold);}
.why-list{display:flex;flex-direction:column;gap:10px;}
.why-item{display:flex;align-items:flex-start;gap:11px;padding:12px 14px;background:#fff;border:1px solid var(--border-gold);border-radius:10px;transition:all .3s;}
.why-item:hover{background:var(--gold-pale);transform:translateX(4px);}
.why-icon{font-size:16px;flex-shrink:0;margin-top:1px;}
.why-text{font-family:var(--font-body);font-size:12.5px;color:var(--text-mid);line-height:1.6;font-weight:300;}
.guarantee-band{background:var(--grad-rg);border-radius:14px;padding:22px;display:flex;align-items:center;gap:14px;margin-top:14px;}
.guarantee-icon{font-size:36px;flex-shrink:0;animation:floatY 2.5s ease-in-out infinite;}
.guarantee-title{font-family:var(--font-display);font-size:16px;color:#fff;margin-bottom:4px;}
.guarantee-text{font-family:var(--font-body);font-size:12px;color:rgba(255,255,255,0.75);line-height:1.6;font-weight:300;}
.services-preview{background:linear-gradient(180deg,var(--cream),var(--pearl));padding:88px 5%;}
.sp-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:52px;}
.sp-card{background:#fff;border:1.5px solid var(--border-gold);border-radius:16px;padding:26px 20px;text-align:center;transition:all .42s var(--ease-smooth);cursor:pointer;position:relative;overflow:hidden;}
.sp-card::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--grad-rg);transform:scaleX(0);transition:transform .38s;transform-origin:left;}
.sp-card:hover{border-color:var(--gold-bright);transform:translateY(-8px);box-shadow:var(--shadow-gold);}
.sp-card:hover::before{transform:scaleX(1);}
.sp-icon{font-size:34px;margin-bottom:13px;display:block;transition:transform .38s var(--ease-spring);}
.sp-card:hover .sp-icon{transform:scale(1.18) rotate(6deg);}
.sp-name{font-family:var(--font-display);font-size:15px;color:var(--text-dark);margin-bottom:6px;}
.sp-sub{font-family:var(--font-body);font-size:11px;color:var(--text-muted);line-height:1.6;font-weight:300;margin-bottom:10px;}
.sp-book{display:inline-flex;align-items:center;gap:5px;font-family:var(--font-body);font-size:10px;letter-spacing:2px;text-transform:uppercase;color:var(--crimson);font-weight:600;transition:gap .3s;}
.sp-card:hover .sp-book{gap:10px;}
.cta-banner{position:relative;overflow:hidden;padding:100px 5%;text-align:center;}
.btn-white{background:#fff;color:var(--crimson-dark);font-family:var(--font-body);font-size:12px;letter-spacing:3px;text-transform:uppercase;padding:15px 52px;border-radius:10px;border:none;font-weight:700;box-shadow:0 8px 36px rgba(0,0,0,0.22);transition:all .3s;cursor:pointer;}
.cta-badge{display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,0.12);border:1px solid rgba(252,211,77,0.3);border-radius:22px;padding:8px 18px;margin-top:22px;font-family:var(--font-body);font-size:11px;color:var(--gold-vivid);font-weight:600;letter-spacing:1px;}
@media (max-width:1100px) {
.contact-inner{grid-template-columns:1fr;gap:44px;}
.sp-grid{grid-template-columns:repeat(2,1fr);}
}
@media (max-width:1024px) {
.contact-strip-inner{grid-template-columns:1fr 1fr;}
}
@media (max-width:768px) {
.trust-bar{display:none;}
.page-hero{height:400px;}
.form-wrap{padding:36px 24px;}
.form-row{grid-template-columns:1fr;}
.birth-row{grid-template-columns:1fr 1fr;}
.contact-strip-inner{grid-template-columns:1fr;}
.sp-grid{grid-template-columns:1fr 1fr;}
}
@media (max-width:480px) {
.birth-row{grid-template-columns:1fr;}
.sp-grid{grid-template-columns:1fr;}
}










/* Horoscope page-specific styles. Common rules are loaded from about/style.css. */
@import url('https://fonts.googleapis.com/css2?family=Rozha+One&display=swap');
:root{--font-display:'Rozha One',serif;}

:root{
  --crimson:#9B1527;--crimson-mid:#C41E3A;--crimson-bright:#E8192C;--crimson-soft:#F4A0A8;--crimson-pale:#FDE8EA;--crimson-ultra:#FFF5F6;--crimson-deep:#7A0F1E;--crimson-dark:#5C0B16;
  --gold:#D97706;--gold-bright:#F59E0B;--gold-vivid:#FCD34D;--gold-pale:#FEF3C7;--gold-deep:#92400E;--gold-accent:#FFB800;
  --grad-red:linear-gradient(135deg,#9B1527,#C41E3A,#E8192C);
  --grad-gold:linear-gradient(135deg,#D97706,#F59E0B,#FCD34D);
  --grad-rg:linear-gradient(135deg,#9B1527 0%,#C41E3A 40%,#D97706 80%,#F59E0B 100%);
  --grad-hero:linear-gradient(160deg,#5C0B16 0%,#9B1527 40%,#C41E3A 70%,#D97706 100%);
  --white:#FFFFFF;--off-white:#FAFBFC;--pearl:#FDF8F0;--cream:#FBF5E8;
  --border:#F0D0D4;--border-light:#F8EAEC;--border-mid:#E8C4C8;--border-gold:rgba(217,119,6,0.3);
  --text-dark:#1A0508;--text-mid:#4A1520;--text-light:#7C3040;--text-muted:#A07080;
  --shadow-sm:0 2px 12px rgba(155,21,39,0.08);--shadow-md:0 8px 32px rgba(155,21,39,0.14);--shadow-lg:0 20px 56px rgba(155,21,39,0.18);--shadow-xl:0 32px 80px rgba(155,21,39,0.24);--shadow-gold:0 8px 32px rgba(217,119,6,0.28);
  --font-display:"Rozha One",serif;--font-body:"Poppins",sans-serif;--font-accent:"Cormorant Garamond",serif;
  --ease-smooth:cubic-bezier(0.25,0.46,0.45,0.94);--ease-spring:cubic-bezier(0.34,1.56,0.64,1);
}

#backToTop{position:fixed;bottom:100px;right:28px;z-index:997;width:44px;height:44px;border-radius:50%;background:#fff;border:1.5px solid var(--border-mid);color:var(--crimson);font-size:18px;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:var(--shadow-md);opacity:0;transform:translateY(20px);transition:all .35s var(--ease-smooth);pointer-events:none;}

@keyframes gradShift{
0%,100%{background-position:0% 50%}50%{background-position:100% 50%}
}

@keyframes shimmer{
0%{background-position:-200% 0}100%{background-position:200% 0}
}

@keyframes orbPulse{
0%,100%{transform:scale(1)}50%{transform:scale(1.08)}
}

.reveal-delay-4{transition-delay:.44s!important;}

.nav-link-btn{display:flex;align-items:center;gap:5px;font-family:var(--font-body);font-size:12px;letter-spacing:1.8px;text-transform:uppercase;font-weight:600;color:var(--text-mid);padding:10px 15px;border-radius:4px;transition:all .3s;position:relative;background:none;border:none;cursor:pointer;}

.nav-link-btn:hover,.nav-link-btn.active{color:var(--crimson);}

.nav-link-btn:hover::after,.nav-link-btn.active::after{transform:scaleX(1);}

.dd-texts .dd-name{font-family:var(--font-display);font-size:13px;color:var(--crimson-dark);margin-bottom:2px;}

.dd-footer-link{font-family:var(--font-body);font-size:10.5px;letter-spacing:2px;text-transform:uppercase;color:var(--crimson);font-weight:600;}

.btn-red{background:var(--grad-rg);color:#fff;font-family:var(--font-body);font-size:11.5px;letter-spacing:2px;text-transform:uppercase;font-weight:600;padding:12px 28px;border-radius:10px;border:none;transition:all .3s var(--ease-smooth);box-shadow:0 4px 16px rgba(155,21,39,0.3);cursor:pointer;}

.page-hero{position:relative;height:480px;overflow:hidden;display:flex;align-items:center;background:var(--grad-hero);}

.page-hero::before{content:"";position:absolute;inset:0;background-image:radial-gradient(circle,rgba(255,255,255,0.04) 1.5px,transparent 1.5px);background-size:24px 24px;pointer-events:none;z-index:1;}

.page-hero-bg{position:absolute;inset:0;}

.page-hero-bg img{width:100%;height:100%;object-fit:cover;opacity:0.18;mix-blend-mode:multiply;}

.page-hero-orb{position:absolute;right:-60px;top:50%;transform:translateY(-50%);width:500px;height:500px;border-radius:50%;border:1px dashed rgba(252,211,77,0.15);animation:spinSlow 30s linear infinite;pointer-events:none;}

.page-hero-orb::before{content:"";position:absolute;inset:40px;border-radius:50%;border:1px solid rgba(252,211,77,0.12);animation:spinRev 20s linear infinite;}

.page-hero-orb::after{content:"✦";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:320px;color:rgba(252,211,77,0.04);}

.page-hero-content{position:relative;z-index:10;padding:0 7%;width:100%;}

.page-hero-eyebrow{display:inline-flex;align-items:center;gap:12px;margin-bottom:18px;font-family:var(--font-body);font-size:10.5px;letter-spacing:5px;text-transform:uppercase;color:var(--gold-vivid);font-weight:700;animation:textSlideLeft .7s .1s var(--ease-smooth) both;}

.page-hero-eyebrow::before{content:"";display:block;width:32px;height:1.5px;background:var(--gold-vivid);}

.page-hero h1{font-family:var(--font-display);font-size:clamp(36px,5.5vw,72px);color:#fff;line-height:1.05;font-weight:400;margin-bottom:16px;animation:textSlideUp .8s .25s var(--ease-smooth) both;}

.page-hero h1 em{color:var(--gold-vivid);font-style:italic;}

.page-hero-sub{font-family:var(--font-accent);font-size:18px;color:rgba(255,255,255,0.82);font-style:italic;max-width:520px;line-height:1.8;animation:textSlideUp .8s .42s var(--ease-smooth) both;margin-bottom:18px;}

.hero-date-pill{display:inline-flex;align-items:center;gap:10px;background:rgba(252,211,77,0.12);border:1px solid rgba(252,211,77,0.38);border-radius:30px;padding:10px 22px;animation:textSlideUp .6s .55s var(--ease-smooth) both;margin-bottom:14px;}

.hero-date-pill span{font-family:var(--font-body);font-size:12.5px;color:var(--gold-vivid);letter-spacing:1px;}

.breadcrumb{display:flex;align-items:center;gap:9px;animation:textSlideUp .7s .68s var(--ease-smooth) both;}

.breadcrumb a,.breadcrumb span{font-family:var(--font-body);font-size:11.5px;color:rgba(255,255,255,0.5);transition:color .25s;letter-spacing:.5px;}

.breadcrumb a:hover{color:var(--gold-vivid);}

.breadcrumb .sep{color:rgba(255,255,255,0.25);}

.breadcrumb .current{color:var(--gold-vivid);}

.trust-bar{background:linear-gradient(90deg,var(--crimson-dark),var(--crimson) 30%,var(--gold-deep) 70%,var(--crimson-dark));padding:0;overflow:hidden;}

.trust-bar-inner{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;}

.trust-item{display:flex;align-items:center;gap:10px;padding:14px 24px;border-right:1px solid rgba(252,211,77,0.15);}

.trust-item:last-child{border-right:none;}

.trust-item-icon{font-size:18px;flex-shrink:0;}

.trust-item-text{font-family:var(--font-body);font-size:11px;color:rgba(255,255,255,0.82);letter-spacing:.5px;white-space:nowrap;}

.trust-item-text strong{color:var(--gold-vivid);font-weight:700;}

.period-tabs{background:var(--cream);border-bottom:2px solid var(--border-gold);}

.tabs-inner{display:flex;padding:0 5%;overflow-x:auto;scrollbar-width:none;max-width:1400px;margin:0 auto;}

.tabs-inner::-webkit-scrollbar{display:none;}

.tab-btn{font-family:var(--font-body);font-size:11px;letter-spacing:2px;text-transform:uppercase;font-weight:600;color:var(--text-muted);padding:18px 24px;border:none;background:none;cursor:pointer;border-bottom:3px solid transparent;white-space:nowrap;transition:all .3s;display:flex;align-items:center;gap:8px;}

.tab-btn:hover{color:var(--crimson);}

.tab-btn.active{color:var(--crimson);border-bottom-color:var(--crimson);}

.tab-icon{font-size:15px;}

.sign-selector{background:#fff;padding:40px 5%;border-bottom:1.5px solid var(--border-gold);}

.sign-selector-inner{max-width:1400px;margin:0 auto;}

.ss-title{font-family:var(--font-body);font-size:10px;letter-spacing:4px;text-transform:uppercase;color:var(--text-muted);margin-bottom:18px;font-weight:600;}

.signs-row{display:grid;grid-template-columns:repeat(12,1fr);gap:8px;}

.sign-chip{background:var(--pearl);border:1.5px solid var(--border);border-radius:12px;padding:13px 6px;text-align:center;cursor:pointer;transition:all .35s var(--ease-smooth);}

.sign-chip:hover{background:var(--crimson-ultra);border-color:var(--border-mid);transform:translateY(-3px);}

.sign-chip.active{background:var(--grad-rg);border-color:var(--gold-bright);transform:translateY(-4px);box-shadow:0 8px 24px rgba(155,21,39,0.35);}

.sc-sym{font-size:22px;display:block;margin-bottom:4px;transition:transform .35s var(--ease-spring);}

.sign-chip:hover .sc-sym{transform:scale(1.2);}

.sign-chip.active .sc-sym{animation:orbPulse 2s ease infinite;}

.sc-name{font-family:var(--font-body);font-size:8.5px;letter-spacing:1px;text-transform:uppercase;color:var(--text-muted);transition:color .3s;}

.sign-chip.active .sc-name{color:rgba(255,255,255,0.8);}

.horo-detail{background:linear-gradient(180deg,var(--cream),var(--pearl));padding:80px 5%;}

.horo-detail-inner{display:grid;grid-template-columns:1fr 360px;gap:48px;max-width:1400px;margin:0 auto;}

.reading-card{background:#fff;border-radius:20px;border:1.5px solid var(--border);overflow:hidden;box-shadow:var(--shadow-md);}

.rc-header{background:var(--grad-rg);padding:40px 44px;display:flex;align-items:center;gap:28px;}

.rc-sym-wrap{width:88px;height:88px;border-radius:50%;background:rgba(255,255,255,0.12);border:3px solid var(--gold-vivid);display:flex;align-items:center;justify-content:center;font-size:42px;flex-shrink:0;box-shadow:0 0 32px rgba(252,211,77,0.32);animation:orbPulse 3s ease infinite;}

.rc-sign-name{font-family:var(--font-display);font-size:34px;color:#fff;line-height:1;margin-bottom:4px;}

.rc-dates{font-family:var(--font-body);font-size:12px;color:rgba(255,255,255,0.6);letter-spacing:1px;margin-bottom:10px;}

.rc-rating{display:flex;gap:4px;}

.rc-star{font-size:18px;color:rgba(252,211,77,0.3);}

.rc-star.lit{color:var(--gold-vivid);}

.rc-body{padding:40px 44px;}

.rc-period-label{font-family:var(--font-body);font-size:9.5px;letter-spacing:4px;text-transform:uppercase;color:var(--gold);font-weight:700;margin-bottom:8px;}

.rc-reading-text{font-family:var(--font-accent);font-size:17px;color:var(--text-dark);line-height:2;font-style:italic;margin-bottom:28px;}

.rc-divider{height:1px;background:linear-gradient(90deg,var(--crimson),var(--gold-bright),transparent);margin-bottom:28px;}

.aspects-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:28px;}

.aspect-item{background:var(--crimson-ultra);border:1px solid var(--border-light);border-radius:12px;padding:16px 18px;transition:all .3s;}

.aspect-item:hover{background:var(--gold-pale);border-color:var(--border-gold);}

.ai-label{font-family:var(--font-body);font-size:9.5px;letter-spacing:3px;text-transform:uppercase;color:var(--text-muted);margin-bottom:5px;font-weight:600;}

.ai-value{font-family:var(--font-display);font-size:16px;color:var(--crimson-dark);}

.score-section{margin-bottom:28px;}

.score-title{font-family:var(--font-body);font-size:10px;letter-spacing:3px;text-transform:uppercase;color:var(--text-muted);font-weight:600;margin-bottom:16px;}

.score-row{margin-bottom:13px;}

.sr-header{display:flex;justify-content:space-between;margin-bottom:5px;}

.sr-lbl{font-family:var(--font-body);font-size:12.5px;color:var(--text-mid);font-weight:500;}

.sr-val{font-family:var(--font-display);font-size:13px;color:var(--crimson);}

.sr-bar{height:7px;background:var(--pearl);border-radius:4px;overflow:hidden;}

.sr-fill{height:100%;background:var(--grad-rg);border-radius:4px;transition:width 1.4s var(--ease-smooth);}

.remedies-section{background:linear-gradient(135deg,var(--crimson-ultra),var(--gold-pale));border-radius:14px;padding:26px;border:1px solid var(--border-gold);}

.rem-title{font-family:var(--font-display);font-size:17px;color:var(--crimson-dark);margin-bottom:16px;display:flex;align-items:center;gap:8px;}

.rem-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px;}

.rem-item{background:#fff;border:1px solid var(--border);border-radius:9px;padding:11px 13px;display:flex;align-items:center;gap:10px;transition:all .25s;}

.rem-item:hover{background:var(--gold-pale);border-color:var(--border-gold);}

.rem-icon{font-size:17px;flex-shrink:0;}

.rem-lbl{font-family:var(--font-body);font-size:9px;letter-spacing:2px;text-transform:uppercase;color:var(--text-muted);margin-bottom:2px;}

.rem-val{font-family:var(--font-display);font-size:13px;color:var(--crimson-dark);}

.ai-panel{background:#fff;border-radius:20px;border:1.5px solid var(--border);overflow:hidden;box-shadow:var(--shadow-md);margin-top:28px;}

.ai-panel-header{background:linear-gradient(135deg,#0d0510,#18003a);padding:24px 32px;display:flex;align-items:center;gap:16px;}

.ai-panel-icon{width:44px;height:44px;border-radius:12px;background:rgba(252,211,77,0.15);border:1px solid rgba(252,211,77,0.3);display:flex;align-items:center;justify-content:center;font-size:20px;flex-shrink:0;}

.ai-panel-title{font-family:var(--font-display);font-size:17px;color:#fff;}

.ai-panel-sub{font-family:var(--font-body);font-size:11px;color:rgba(255,255,255,0.45);letter-spacing:1px;margin-top:2px;}

.ai-badge{margin-left:auto;background:linear-gradient(135deg,var(--gold),var(--gold-vivid));color:var(--crimson-dark);font-family:var(--font-body);font-size:9px;letter-spacing:2px;text-transform:uppercase;font-weight:700;padding:4px 12px;border-radius:20px;}

.ai-panel-body{padding:28px 32px;}

.ai-select-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:18px;}

.ai-select{width:100%;padding:12px 14px;border:1.5px solid var(--border);border-radius:10px;font-family:var(--font-body);font-size:13.5px;color:var(--text-dark);background:#fff;outline:none;cursor:pointer;transition:border-color .3s;appearance:none;}

.ai-select:focus{border-color:var(--crimson);}

.ai-question-input{width:100%;padding:13px 16px;border:1.5px solid var(--border);border-radius:10px;font-family:var(--font-body);font-size:13px;color:var(--text-dark);background:#fff;outline:none;resize:none;height:80px;transition:border-color .3s;margin-bottom:14px;}

.ai-question-input:focus{border-color:var(--crimson);}

.ai-question-input::placeholder{color:var(--text-muted);}

.ai-generate-btn{width:100%;background:var(--grad-rg);color:#fff;font-family:var(--font-body);font-size:11.5px;letter-spacing:2.5px;text-transform:uppercase;font-weight:700;padding:15px;border-radius:10px;border:none;cursor:pointer;transition:all .35s;box-shadow:0 6px 24px rgba(155,21,39,0.3);display:flex;align-items:center;justify-content:center;gap:10px;}

.ai-generate-btn:hover{transform:translateY(-3px);box-shadow:0 12px 40px rgba(155,21,39,0.45);}

.ai-generate-btn:disabled{opacity:0.6;cursor:not-allowed;transform:none;}

.ai-output{margin-top:22px;padding:24px;background:linear-gradient(135deg,var(--crimson-ultra),var(--gold-pale));border-radius:14px;border:1.5px solid var(--border-gold);display:none;}

.ai-output.show{display:block;}

.ai-output-label{font-family:var(--font-body);font-size:9.5px;letter-spacing:4px;text-transform:uppercase;color:var(--gold);font-weight:700;margin-bottom:12px;display:flex;align-items:center;gap:8px;}

.ai-output-label::before{content:"✦";font-size:8px;}

.ai-output-text{font-family:var(--font-accent);font-size:16px;color:var(--text-dark);line-height:1.95;font-style:italic;}

.loading-dots{display:flex;gap:6px;justify-content:center;padding:20px 0;}

.loading-dot{width:8px;height:8px;border-radius:50%;background:var(--crimson);animation:loadDot 1.4s ease-in-out infinite;}

.loading-dot:nth-child(2){animation-delay:.2s;background:var(--gold);}

.loading-dot:nth-child(3){animation-delay:.4s;background:var(--crimson);}

@keyframes loadDot{
0%,80%,100%{transform:scale(0);opacity:.3}40%{transform:scale(1);opacity:1}
}

.moon-widget{background:linear-gradient(135deg,#080015,#18003a);border-radius:16px;padding:28px;margin-bottom:22px;text-align:center;border:1.5px solid rgba(252,211,77,0.2);}

.moon-icon{font-size:62px;margin-bottom:12px;display:block;animation:floatY 4s ease-in-out infinite;}

.moon-name{font-family:var(--font-display);font-size:19px;color:var(--gold-vivid);margin-bottom:5px;}

.moon-desc{font-family:var(--font-body);font-size:12.5px;color:rgba(255,255,255,0.6);line-height:1.75;font-weight:300;}

.moon-energy{font-family:var(--font-body);font-size:10px;letter-spacing:3px;text-transform:uppercase;color:var(--gold-vivid);font-weight:700;margin-top:14px;}

.planet-pos-widget{background:#fff;border:1.5px solid var(--border);border-radius:16px;padding:26px;margin-bottom:22px;box-shadow:var(--shadow-sm);}

.pw-title{font-family:var(--font-display);font-size:17px;color:var(--crimson-dark);margin-bottom:18px;}

.planet-row{display:flex;align-items:center;justify-content:space-between;padding:11px 0;border-bottom:1px solid var(--border-light);}

.planet-row:last-child{border-bottom:none;}

.pr-left{display:flex;align-items:center;gap:10px;}

.pr-icon{font-size:17px;}

.pr-name{font-family:var(--font-body);font-size:12.5px;color:var(--text-mid);font-weight:500;}

.pr-sign{font-family:var(--font-display);font-size:13.5px;color:var(--crimson-dark);}

.pr-deg{font-family:var(--font-body);font-size:10.5px;color:var(--text-muted);}

.sidebar-book-cta{background:var(--grad-rg);border-radius:16px;padding:30px 26px;text-align:center;border:2px solid var(--gold-bright);}

.sidebar-book-cta .cta-icon{font-size:34px;margin-bottom:11px;}

.sidebar-book-cta .cta-title{font-family:var(--font-display);font-size:17px;color:#fff;margin-bottom:8px;line-height:1.3;}

.sidebar-book-cta .cta-desc{font-family:var(--font-body);font-size:12px;color:rgba(255,255,255,0.65);margin-bottom:18px;line-height:1.7;font-weight:300;}

.sidebar-book-cta .cta-btn{width:100%;background:var(--gold-vivid);color:var(--crimson-dark);font-family:var(--font-body);font-size:10.5px;letter-spacing:2px;text-transform:uppercase;font-weight:700;padding:12px;border-radius:8px;border:none;cursor:pointer;transition:all .3s;}

.sidebar-book-cta .cta-btn:hover{background:var(--gold-bright);transform:translateY(-2px);}

.quick-section{background:#fff;padding:96px 5%;}

.quick-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border:1.5px solid var(--border);border-radius:18px;overflow:hidden;margin-top:52px;box-shadow:var(--shadow-sm);}

.qc{padding:26px 18px;border-right:1px solid var(--border);border-bottom:1px solid var(--border);cursor:pointer;transition:all .35s var(--ease-smooth);position:relative;overflow:hidden;background:#fff;}

.qc:hover{background:var(--gold-pale);transform:translateY(-4px);box-shadow:var(--shadow-md);z-index:1;}

.qc::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--grad-rg);transform:scaleX(0);transition:transform .35s;transform-origin:left;}

.qc:hover::before{transform:scaleX(1);}

.qc:nth-child(4n){border-right:none;}

.qc:nth-child(n/**/+9){border-bottom:none;}

.qc-sym{font-size:30px;display:block;margin-bottom:8px;transition:transform .35s var(--ease-spring);}

.qc:hover .qc-sym{transform:scale(1.25) rotate(10deg);}

.qc-name{font-family:var(--font-display);font-size:15px;color:var(--crimson-dark);}

.qc-pred{font-family:var(--font-body);font-size:12px;color:var(--text-mid);line-height:1.7;margin-top:5px;font-weight:300;}

.qc-lucky{font-family:var(--font-body);font-size:10px;color:var(--gold-deep);font-weight:600;margin-top:9px;letter-spacing:1px;}

.qc-rating{display:flex;gap:2px;margin-top:5px;}

.qcr{font-size:11px;color:rgba(217,119,6,0.25);}

.qcr.lit{color:var(--gold-bright);}

.weekly-strip{background:var(--grad-rg);padding:80px 5%;}

.week-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:10px;margin-top:44px;}

.day-card{background:rgba(255,255,255,0.07);border:1px solid rgba(255,255,255,0.12);border-radius:12px;padding:18px 10px;text-align:center;cursor:pointer;transition:all .4s var(--ease-smooth);}

.day-card:hover,.day-card.today{background:rgba(255,255,255,0.14);border-color:rgba(252,211,77,0.5);transform:translateY(-6px);}

.day-card.today{border-color:var(--gold-vivid);box-shadow:0 8px 28px rgba(252,211,77,0.22);}

.day-name{font-family:var(--font-body);font-size:8.5px;letter-spacing:3px;text-transform:uppercase;color:rgba(255,255,255,0.48);margin-bottom:7px;}

.day-card.today .day-name{color:var(--gold-vivid);}

.day-num{font-family:var(--font-display);font-size:22px;color:#fff;margin-bottom:9px;line-height:1;}

.day-planet{font-size:21px;margin-bottom:7px;display:block;}

.day-energy{font-family:var(--font-body);font-size:10px;color:rgba(255,255,255,0.52);line-height:1.5;font-weight:300;}

.day-score{display:flex;justify-content:center;gap:2px;margin-top:7px;}

.ds{width:6px;height:6px;border-radius:50%;background:rgba(255,255,255,0.18);}

.ds.lit{background:var(--gold-vivid);}

.cta-banner{position:relative;overflow:hidden;padding:100px 5%;text-align:center;}

.btn-white{background:#fff;color:var(--crimson-dark);font-family:var(--font-body);font-size:12px;letter-spacing:3px;text-transform:uppercase;padding:15px 52px;border-radius:10px;border:none;font-weight:700;box-shadow:0 8px 36px rgba(0,0,0,0.22);transition:all .3s;cursor:pointer;}

@media (max-width:1100px){
.horo-detail-inner{grid-template-columns:1fr;}.horo-sidebar{display:grid;grid-template-columns:1fr 1fr;gap:18px;}
}

@media (max-width:1024px){
.signs-row{grid-template-columns:repeat(6,1fr);}.quick-grid{grid-template-columns:repeat(3,1fr);}.qc:nth-child(4n){border-right:1px solid var(--border);}.qc:nth-child(3n){border-right:none;}.week-grid{grid-template-columns:repeat(4,1fr);}.footer-brand-row{grid-template-columns:1fr 1fr;gap:32px;}
}

@media (max-width:768px){
.trust-bar{display:none;}.page-hero{height:400px;}.signs-row{grid-template-columns:repeat(4,1fr);}.aspects-grid{grid-template-columns:1fr 1fr;}.rem-grid{grid-template-columns:1fr;}.quick-grid{grid-template-columns:repeat(2,1fr);}.week-grid{grid-template-columns:repeat(4,1fr);}.horo-sidebar{display:block;}.rc-header{flex-direction:column;text-align:center;padding:28px;}.rc-body{padding:26px;}.ai-select-row{grid-template-columns:1fr;}.ai-panel-body{padding:22px;}
}

@media (max-width:480px){
.signs-row{grid-template-columns:repeat(3,1fr);}.week-grid{grid-template-columns:repeat(2,1fr);}.quick-grid{grid-template-columns:1fr 1fr;}
}











/* Privacy / Disclaimer / Refund page styles only. Shared styles live in about/style.css. */
.page-hero{position:relative;height:380px;overflow:hidden;display:flex;align-items:center;}
.page-hero-bg{position:absolute;inset:0;background:linear-gradient(160deg,var(--crimson-dark) 0%,#9B1527 45%,#C41E3A 70%,#D97706 100%);}
.page-hero-pattern{position:absolute;inset:0;background-image:radial-gradient(circle,rgba(252,211,77,0.08) 1.5px,transparent 1.5px);background-size:30px 30px;pointer-events:none;}
.page-hero-om{position:absolute;font-size:400px;color:rgba(255,255,255,0.03);top:50%;right:5%;transform:translateY(-50%);font-family:serif;pointer-events:none;line-height:1;}
.page-hero-content{position:relative;z-index:10;padding:0 7%;width:100%;}
.page-hero-eyebrow{display:inline-flex;align-items:center;gap:10px;margin-bottom:18px;font-family:var(--font-body);font-size:10px;letter-spacing:5px;text-transform:uppercase;color:var(--gold-vivid);font-weight:700;animation:textSlideLeft .7s .1s var(--ease-smooth) both;}
.page-hero-eyebrow::before{content:"";display:block;width:32px;height:1.5px;background:var(--gold-vivid);}
.page-hero h1{font-family:var(--font-display);font-size:clamp(34px,5vw,64px);color:#fff;line-height:1.06;margin-bottom:14px;animation:textSlideUp .8s .28s var(--ease-smooth) both;}
.page-hero h1 em{color:var(--gold-vivid);font-style:italic;}
.page-hero-desc{font-family:var(--font-accent);font-size:17px;color:rgba(255,255,255,0.78);font-style:italic;max-width:560px;line-height:1.8;animation:textSlideUp .7s .46s var(--ease-smooth) both;}
.page-tabs{background:#fff;border-bottom:2px solid var(--border);position:sticky;top:82px;z-index:99;box-shadow:0 2px 12px rgba(155,21,39,0.06);}
.last-updated{background:linear-gradient(90deg,var(--gold-pale),var(--cream));border-bottom:1.5px solid var(--border-gold);padding:12px 7%;display:flex;align-items:center;gap:12px;}
.lu-dot{width:8px;height:8px;border-radius:50%;background:var(--gold-bright);flex-shrink:0;animation:pulse 2s ease-in-out infinite;}
.lu-text{font-family:var(--font-body);font-size:12px;color:var(--gold-deep);font-weight:500;letter-spacing:0.5px;}
.privacy-layout{display:grid;grid-template-columns:280px 1fr;gap:0;max-width:1280px;margin:0 auto;padding:56px 5% 80px;}
.privacy-sidebar{position:sticky;top:150px;height:fit-content;}
.toc-card{background:#fff;border:1.5px solid var(--border);border-radius:16px;overflow:hidden;box-shadow:var(--shadow-sm);}
.toc-header{background:var(--grad-rg);padding:18px 22px;display:flex;align-items:center;gap:10px;}
.toc-header-icon{font-size:18px;}
.toc-header-title{font-family:var(--font-display);font-size:14px;color:#fff;letter-spacing:0.5px;}
.toc-list{list-style:none;padding:12px 0;}
.toc-item a{display:flex;align-items:center;gap:10px;padding:9px 22px;font-family:var(--font-body);font-size:12px;color:var(--text-mid);font-weight:400;transition:all .25s;border-left:3px solid transparent;text-decoration:none;}
.toc-item a:hover{background:var(--crimson-ultra);color:var(--crimson);border-left-color:var(--crimson);padding-left:26px;}
.toc-item a.active{background:var(--crimson-ultra);color:var(--crimson);border-left-color:var(--crimson);font-weight:600;}
.toc-num{font-family:var(--font-body);font-size:9px;letter-spacing:2px;color:var(--gold);font-weight:700;flex-shrink:0;}
.toc-section-label{font-family:var(--font-body);font-size:8.5px;letter-spacing:3px;text-transform:uppercase;color:var(--text-muted);padding:10px 22px 4px;font-weight:600;}
.toc-contact-box{margin:16px 14px;background:var(--crimson-ultra);border:1.5px solid var(--border);border-radius:12px;padding:16px;text-align:center;}
.toc-contact-box p{font-family:var(--font-body);font-size:11px;color:var(--text-mid);line-height:1.6;margin-bottom:10px;font-weight:300;}
.toc-contact-btn{display:block;background:var(--grad-rg);color:#fff;font-family:var(--font-body);font-size:10px;letter-spacing:1.5px;text-transform:uppercase;font-weight:700;padding:9px 14px;border-radius:8px;text-decoration:none;transition:all .3s;}
.toc-contact-btn:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);}
.policy-content{padding-left:52px;}
.policy-section{margin-bottom:52px;scroll-margin-top:160px;}
.policy-section:last-child{margin-bottom:0;}
.section-header{display:flex;align-items:flex-start;gap:16px;margin-bottom:22px;padding-bottom:18px;border-bottom:1.5px solid var(--border-light);}
.section-num-badge{width:44px;height:44px;border-radius:12px;background:var(--grad-rg);display:flex;align-items:center;justify-content:center;font-family:var(--font-body);font-size:13px;color:#fff;font-weight:700;flex-shrink:0;box-shadow:0 4px 14px rgba(155,21,39,0.28);}
.section-icon-badge{width:44px;height:44px;border-radius:12px;background:var(--gold-pale);border:1.5px solid var(--border-gold);display:flex;align-items:center;justify-content:center;font-size:20px;flex-shrink:0;}
.section-icon-badge.crimson{background:var(--crimson-ultra);border-color:var(--border-mid);}
.section-title-wrap{flex:1;}
.section-tag{font-family:var(--font-body);font-size:9px;letter-spacing:3.5px;color:var(--gold);text-transform:uppercase;font-weight:700;margin-bottom:4px;}
.section-tag.red{color:var(--crimson-mid);}
.section-title{font-family:var(--font-display);font-size:clamp(18px,2.2vw,26px);color:var(--text-dark);line-height:1.2;}
.chapter-divider{background:var(--grad-rg);border-radius:12px;padding:20px 28px;margin:52px 0 40px;display:flex;align-items:center;gap:14px;}
.chapter-divider-icon{font-size:28px;flex-shrink:0;}
.chapter-divider-title{font-family:var(--font-display);font-size:clamp(16px,2vw,22px);color:#fff;line-height:1.2;}
.chapter-divider-sub{font-family:var(--font-body);font-size:11px;color:rgba(255,255,255,0.7);letter-spacing:1.5px;text-transform:uppercase;margin-top:2px;}
.policy-text{font-family:var(--font-body);font-size:14px;color:var(--text-mid);line-height:2;font-weight:300;margin-bottom:18px;}
.policy-text:last-child{margin-bottom:0;}
.policy-text strong{color:var(--text-dark);font-weight:600;}
.policy-text a{color:var(--crimson);text-decoration:underline;text-underline-offset:3px;}
.policy-list{list-style:none;display:flex;flex-direction:column;gap:10px;margin:14px 0 18px;}
.policy-list li{display:flex;align-items:flex-start;gap:12px;font-family:var(--font-body);font-size:13.5px;color:var(--text-mid);line-height:1.8;font-weight:300;}
.policy-list li::before{content:"✦";color:var(--gold);font-size:9px;flex-shrink:0;margin-top:6px;}
.policy-highlight{background:linear-gradient(135deg,var(--crimson-ultra),var(--gold-pale));border:1.5px solid var(--border-gold);border-left:4px solid var(--gold-bright);border-radius:12px;padding:20px 22px;margin:20px 0;}
.policy-highlight p{font-family:var(--font-accent);font-size:16px;font-style:italic;color:var(--text-mid);line-height:1.8;}
.policy-highlight strong{color:var(--crimson-dark);font-style:normal;}
.policy-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:18px 0;}
.policy-grid-item{background:var(--pearl);border:1.5px solid var(--border);border-radius:12px;padding:18px;transition:all .3s;}
.policy-grid-item:hover{border-color:var(--border-gold);box-shadow:var(--shadow-gold);transform:translateY(-3px);}
.pgi-icon{font-size:24px;margin-bottom:10px;}
.pgi-title{font-family:var(--font-display);font-size:14px;color:var(--text-dark);margin-bottom:6px;}
.pgi-desc{font-family:var(--font-body);font-size:12px;color:var(--text-muted);line-height:1.65;font-weight:300;}
.policy-warning{background:var(--crimson-ultra);border:1.5px solid var(--border-mid);border-left:4px solid var(--crimson-mid);border-radius:12px;padding:18px 22px;margin:18px 0;display:flex;align-items:flex-start;gap:14px;}
.pw-icon{font-size:22px;flex-shrink:0;margin-top:2px;}
.pw-text{font-family:var(--font-body);font-size:13px;color:var(--text-mid);line-height:1.75;font-weight:300;}
.pw-text strong{color:var(--crimson-dark);}
.policy-amber{background:linear-gradient(135deg,#FFFBEB,#FEF3C7);border:1.5px solid var(--border-gold);border-left:4px solid var(--gold-bright);border-radius:12px;padding:18px 22px;margin:18px 0;display:flex;align-items:flex-start;gap:14px;}
.policy-contact-card{background:var(--grad-rg);border-radius:16px;padding:32px;text-align:center;margin-top:16px;box-shadow:var(--shadow-xl);}
.pcc-icon{font-size:36px;margin-bottom:14px;display:block;}
.pcc-title{font-family:var(--font-display);font-size:22px;color:#fff;margin-bottom:10px;}
.pcc-desc{font-family:var(--font-accent);font-size:16px;font-style:italic;color:rgba(255,255,255,0.82);line-height:1.75;margin-bottom:24px;}
.pcc-items{display:flex;flex-direction:column;gap:10px;margin-bottom:22px;}
.pcc-item{background:rgba(255,255,255,0.12);border:1px solid rgba(255,255,255,0.25);border-radius:10px;padding:12px 18px;display:flex;align-items:center;gap:12px;text-align:left;}
.pcc-item-icon{font-size:16px;flex-shrink:0;}
.pcc-item-text{font-family:var(--font-body);font-size:12.5px;color:#fff;font-weight:300;}
.pcc-item-text strong{display:block;font-weight:600;font-size:11px;letter-spacing:1px;text-transform:uppercase;color:var(--gold-vivid);margin-bottom:1px;}
.pcc-btn{display:inline-flex;align-items:center;gap:9px;background:#fff;color:var(--crimson-dark);font-family:var(--font-body);font-size:11px;letter-spacing:2px;text-transform:uppercase;font-weight:700;padding:12px 28px;border-radius:10px;border:none;cursor:pointer;transition:all .3s;text-decoration:none;box-shadow:0 4px 18px rgba(0,0,0,0.12);}
.pcc-btn:hover{transform:translateY(-3px);box-shadow:0 10px 32px rgba(0,0,0,0.2);}
.section-divider{height:1px;background:linear-gradient(90deg,transparent,var(--border-gold),transparent);margin:8px 0 52px;}
@media (max-width:1024px){.privacy-layout{grid-template-columns:1fr;}.privacy-sidebar{position:static;display:none;}.policy-content{padding-left:0;}.page-tabs{top:70px;}}
@media (max-width:768px){.page-hero{height:auto;padding:60px 0 0;}.page-hero-content{padding:0 5% 52px;}.page-hero h1{font-size:clamp(28px,8vw,40px);}.privacy-layout{padding:36px 5% 56px;}.policy-grid{grid-template-columns:1fr;}}
@media (max-width:480px){.section-header{flex-direction:column;gap:12px;}}

/* Privacy page visibility fallback: content must remain visible even if reveal observer is unavailable. */
.reveal{opacity:1;transform:none;}
.reveal.visible{opacity:1;transform:none;}

