/* Vivaah — boutique blush, ivory, rose-gold */

body.vivaah-front {
    --vivaah-ivory: #fffdfc;
    --vivaah-paper: #fff8f6;
    --vivaah-blush: #f6eef1;
    --vivaah-line: #ead7dc;
    --vivaah-rose: #b54766;
    --vivaah-rose-deep: #8e2f4c;
    --vivaah-rose-soft: #e7b8c4;
    --vivaah-gold: #c4a574;
    --vivaah-gold-soft: #e8d5b5;
    --vivaah-ink: #2b1a20;
    --vivaah-mute: #6f5a60;
    --vivaah-shadow: 0 24px 60px rgba(43, 26, 32, 0.08);

    font-family: "Outfit", "DM Sans", sans-serif !important;
    font-weight: 400 !important;
    color: var(--vivaah-mute) !important;
    background: var(--vivaah-ivory) !important;
    letter-spacing: 0.01em;
}

body.vivaah-front h1,
body.vivaah-front h2,
body.vivaah-front h3,
body.vivaah-front .section-title h2,
body.vivaah-front .display-4 {
    font-family: "Playfair Display", "Cormorant Garamond", Georgia, serif;
    font-weight: 500;
    letter-spacing: -0.02em;
    color: var(--vivaah-ink);
}

body.vivaah-front .aiz-main-wrapper {
    background: var(--vivaah-ivory) !important;
}

/* Header */
body.vivaah-front .top-navbar {
    background: rgba(255, 253, 252, 0.86) !important;
    border-bottom: 1px solid var(--vivaah-line) !important;
    font-size: 11px;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: var(--vivaah-mute) !important;
}

body.vivaah-front .top-navbar a,
body.vivaah-front .top-navbar .opacity-60 {
    color: var(--vivaah-mute) !important;
    opacity: 1 !important;
}

body.vivaah-front .vivaah-top-mark {
    color: var(--vivaah-gold);
    font-family: "Cormorant Garamond", serif;
    font-style: italic;
    letter-spacing: 0.22em;
    text-transform: uppercase;
    font-size: 12px;
}

body.vivaah-front .aiz-header {
    background: rgba(255, 253, 252, 0.78) !important;
    backdrop-filter: blur(22px) saturate(1.2);
    border: 0 !important;
    box-shadow: none !important;
    border-bottom: 1px solid rgba(196, 165, 116, 0.22) !important;
}

body.vivaah-front .aiz-header .logo img {
    height: 46px !important;
    max-height: 46px;
}

body.vivaah-front .aiz-header .nav-link {
    background: transparent !important;
    padding: 22px 18px !important;
    position: relative;
}

body.vivaah-front .aiz-header .nav-link span,
body.vivaah-front .vivaah-nav-text {
    font-family: "Outfit", sans-serif !important;
    font-size: 11px !important;
    font-weight: 500 !important;
    letter-spacing: 0.22em !important;
    text-transform: uppercase;
    background: none !important;
    -webkit-text-fill-color: var(--vivaah-ink) !important;
    color: var(--vivaah-ink) !important;
}

body.vivaah-front .aiz-header li.bg-primary-grad {
    background: transparent !important;
}

body.vivaah-front .aiz-header li.bg-primary-grad .nav-link span,
body.vivaah-front .aiz-header .nav-link:hover span {
    background: none !important;
    -webkit-text-fill-color: var(--vivaah-rose) !important;
    color: var(--vivaah-rose) !important;
}

body.vivaah-front .aiz-header li.bg-primary-grad .nav-link::after {
    content: "";
    position: absolute;
    left: 18px;
    right: 18px;
    bottom: 12px;
    height: 1px;
    background: linear-gradient(90deg, transparent, var(--vivaah-gold), transparent);
}

body.vivaah-front .bg-primary-grad {
    background: var(--vivaah-rose) !important;
    border: 0 !important;
}

body.vivaah-front .btn-primary,
body.vivaah-front .btn.bg-primary-grad,
body.vivaah-front .vivaah-join-btn {
    background: var(--vivaah-rose) !important;
    border: 0 !important;
    box-shadow: 0 10px 28px rgba(181, 71, 102, 0.22);
    border-radius: 999px !important;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    font-size: 12px;
    font-weight: 500;
    color: #fff !important;
    padding-left: 22px !important;
    padding-right: 22px !important;
}

body.vivaah-front .btn-primary:hover,
body.vivaah-front .btn.bg-primary-grad:hover {
    background: var(--vivaah-rose-deep) !important;
    color: #fff !important;
    filter: none;
}

body.vivaah-front .btn-soft-primary {
    background: var(--vivaah-blush) !important;
    color: var(--vivaah-rose) !important;
    border-radius: 999px !important;
}

body.vivaah-front .btn-light {
    border: 1px solid var(--vivaah-line) !important;
    background: #fff !important;
    color: var(--vivaah-mute) !important;
    border-radius: 999px !important;
}

body.vivaah-front .text-primary {
    color: var(--vivaah-rose) !important;
}

/* Hero */
body.vivaah-front .home-slider-area {
    min-height: 94vh;
}

body.vivaah-front .home-slider-area::after {
    content: "";
    position: absolute;
    inset: 0;
    background:
        linear-gradient(105deg, rgba(255, 253, 252, 0.92) 0%, rgba(255, 248, 246, 0.62) 38%, rgba(255, 253, 252, 0.08) 68%),
        linear-gradient(180deg, rgba(43, 26, 32, 0.06) 0%, rgba(43, 26, 32, 0.22) 100%);
    z-index: 1;
    pointer-events: none;
}

body.vivaah-front .home-slider-area > .container {
    z-index: 2;
}

body.vivaah-front .home-slider-area h1,
body.vivaah-front .home-slider-area h2,
body.vivaah-front .vivaah-hero-copy h2,
body.vivaah-front .vivaah-hero-copy p,
body.vivaah-front .home-slider-area .text-dark {
    color: var(--vivaah-ink) !important;
}

body.vivaah-front .home-slider-area h2,
body.vivaah-front .vivaah-hero-copy h2 {
    font-family: "Playfair Display", serif !important;
    font-size: clamp(40px, 5.6vw, 72px) !important;
    line-height: 1.08 !important;
    font-weight: 500 !important;
    max-width: 12ch;
    letter-spacing: -0.03em;
}

body.vivaah-front .vivaah-hero-copy p,
body.vivaah-front .vivaah-hero-copy .vivaah-lede {
    font-family: "Cormorant Garamond", serif;
    font-style: italic;
    font-size: 22px !important;
    line-height: 1.55;
    max-width: 28ch;
    color: var(--vivaah-mute) !important;
}

body.vivaah-front .vivaah-eyebrow,
body.vivaah-front .vivaah-hero-copy .text-uppercase {
    font-family: "Outfit", sans-serif !important;
    font-style: normal !important;
    font-size: 11px !important;
    font-weight: 500 !important;
    letter-spacing: 0.32em !important;
    text-transform: uppercase;
    color: var(--vivaah-gold) !important;
}

body.vivaah-front .vivaah-join-card,
body.vivaah-front .home-slider-area .card {
    border: 1px solid rgba(196, 165, 116, 0.35) !important;
    border-radius: 28px !important;
    box-shadow: var(--vivaah-shadow) !important;
    background: rgba(255, 253, 252, 0.94) !important;
    backdrop-filter: blur(16px);
    overflow: hidden;
}

body.vivaah-front .home-slider-area .card-body {
    padding: 32px !important;
}

body.vivaah-front .vivaah-join-card h2,
body.vivaah-front .vivaah-auth-card h1 {
    font-family: "Playfair Display", serif;
    font-size: 28px !important;
    color: var(--vivaah-ink) !important;
}

body.vivaah-front .form-control {
    border-radius: 14px !important;
    border-color: var(--vivaah-line) !important;
    min-height: 46px;
    background: #fff !important;
    font-family: "Outfit", sans-serif;
}

body.vivaah-front .form-control:focus {
    border-color: var(--vivaah-rose) !important;
    box-shadow: 0 0 0 0.15rem rgba(181, 71, 102, 0.12) !important;
}

body.vivaah-front .form-label {
    font-weight: 500;
    color: var(--vivaah-ink);
    font-size: 12px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

/* Sections */
body.vivaah-front .section-title {
    position: relative;
}

body.vivaah-front .section-title::before,
body.vivaah-front .vivaah-section-mark::before {
    content: "✦";
    display: block;
    color: var(--vivaah-gold);
    font-size: 11px;
    letter-spacing: 0.6em;
    margin-bottom: 16px;
}

body.vivaah-front .section-title h2,
body.vivaah-front .text-dark {
    color: var(--vivaah-ink) !important;
}

body.vivaah-front .section-title h2 {
    font-size: clamp(32px, 4vw, 48px) !important;
    font-weight: 500 !important;
}

body.vivaah-front .section-title p,
body.vivaah-front .opacity-60 {
    color: var(--vivaah-mute) !important;
}

body.vivaah-front .section-title p {
    max-width: 34em;
    margin-left: auto;
    margin-right: auto;
    font-size: 16px;
    line-height: 1.75;
}

body.vivaah-front .vivaah-member-card,
body.vivaah-front .carousel-box > .rounded.border {
    border: 1px solid transparent !important;
    border-radius: 24px !important;
    box-shadow: 0 18px 40px rgba(43, 26, 32, 0.08);
    background: #fff;
    transition: transform 0.35s ease, box-shadow 0.35s ease, border-color 0.35s ease;
}

body.vivaah-front .vivaah-member-card:hover {
    transform: translateY(-8px);
    border-color: var(--vivaah-gold-soft) !important;
    box-shadow: 0 28px 50px rgba(181, 71, 102, 0.14);
}

body.vivaah-front .vivaah-member-card img,
body.vivaah-front .carousel-box .h-400px {
    height: 380px !important;
    object-fit: cover;
}

body.vivaah-front .vivaah-member-name {
    font-family: "Playfair Display", serif;
    font-size: 20px;
    font-weight: 500;
    color: var(--vivaah-ink) !important;
}

body.vivaah-front .vivaah-member-card .absolute-bottom-left > .bg-white {
    background: linear-gradient(180deg, transparent, rgba(255, 253, 252, 0.97)) !important;
    opacity: 1 !important;
}

body.vivaah-front .py-9,
body.vivaah-front .py-8,
body.vivaah-front .py-7 {
    padding-top: 104px !important;
    padding-bottom: 104px !important;
}

body.vivaah-front section.bg-white {
    background: var(--vivaah-ivory) !important;
}

body.vivaah-front .vivaah-blush,
body.vivaah-front .bg-dark.text-white {
    background: var(--vivaah-blush) !important;
    color: var(--vivaah-ink) !important;
}

body.vivaah-front .vivaah-blush h2,
body.vivaah-front .bg-dark.text-white h2,
body.vivaah-front .vivaah-blush .text-primary {
    color: var(--vivaah-ink) !important;
}

body.vivaah-front .card.border-gray-800 {
    border: 0 !important;
    border-radius: 22px !important;
    box-shadow: 0 18px 40px rgba(181, 71, 102, 0.1);
}

body.vivaah-front .bg-dark.opacity-60,
body.vivaah-front .absolute-full.bg-dark {
    background: linear-gradient(180deg, transparent, rgba(43, 26, 32, 0.72)) !important;
    opacity: 1 !important;
}

/* Footer */
body.vivaah-front .aiz-footer {
    background:
        linear-gradient(180deg, #fffdfc 0%, #f6eef1 100%) !important;
    color: var(--vivaah-mute) !important;
    border-top: 1px solid rgba(196, 165, 116, 0.35);
    padding-top: 72px !important;
}

body.vivaah-front .vivaah-footer-rule {
    width: 72px;
    height: 1px;
    margin: 0 auto 32px;
    background: linear-gradient(90deg, transparent, var(--vivaah-gold), transparent);
}

body.vivaah-front .vivaah-footer-nav {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 8px 28px;
    list-style: none;
    padding: 0;
    margin: 28px 0 0;
}

body.vivaah-front .vivaah-footer-nav a {
    font-size: 11px;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    color: var(--vivaah-ink) !important;
}

body.vivaah-front .vivaah-footer-nav a:hover {
    color: var(--vivaah-rose) !important;
}

body.vivaah-front .aiz-footer h4,
body.vivaah-front .aiz-footer .text-primary,
body.vivaah-front .aiz-footer .border-primary {
    color: var(--vivaah-rose) !important;
    border-color: var(--vivaah-line) !important;
    letter-spacing: 0.16em;
    font-family: "Outfit", sans-serif;
    font-size: 12px !important;
}

body.vivaah-front .aiz-footer .text-white,
body.vivaah-front .aiz-footer a {
    color: var(--vivaah-mute) !important;
}

body.vivaah-front .aiz-footer .opacity-60 {
    opacity: 1 !important;
    color: var(--vivaah-mute) !important;
    line-height: 1.8;
    font-size: 16px;
    font-family: "Cormorant Garamond", serif;
    font-style: italic;
}

body.vivaah-front .vivaah-footer-copy {
    border-top: 1px solid var(--vivaah-line) !important;
    margin-top: 36px;
    padding-top: 22px;
    font-size: 12px;
    letter-spacing: 0.08em;
}

/* Packages */
body.vivaah-front .vivaah-package {
    background: #fff;
    border: 1px solid var(--vivaah-line);
    border-radius: 28px;
    overflow: hidden;
    box-shadow: 0 16px 36px rgba(43, 26, 32, 0.06);
    height: 100%;
}

body.vivaah-front .vivaah-package.is-featured {
    border-color: var(--vivaah-gold);
    transform: translateY(-10px);
    box-shadow: 0 28px 56px rgba(196, 165, 116, 0.28);
}

body.vivaah-front .vivaah-package .card-body {
    padding: 36px 28px !important;
}

body.vivaah-front .vivaah-package h5 {
    font-family: "Playfair Display", serif;
    font-size: 26px;
}

body.vivaah-front .vivaah-package .display-4 {
    font-size: 40px !important;
    color: var(--vivaah-ink);
}

body.vivaah-front .vivaah-package img {
    height: 72px !important;
    width: 72px !important;
    object-fit: cover;
    border-radius: 50%;
    border: 1px solid var(--vivaah-gold-soft);
    padding: 3px;
}

body.vivaah-front .vivaah-trusted {
    position: relative;
    background-size: cover !important;
    background-position: center !important;
    min-height: auto !important;
    padding: 110px 0 !important;
    color: var(--vivaah-ink) !important;
}

body.vivaah-front .vivaah-trusted::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(246, 238, 241, 0.92), rgba(255, 253, 252, 0.88));
}

body.vivaah-front .vivaah-trusted > .container {
    position: relative;
    z-index: 1;
}

body.vivaah-front .vivaah-trusted h2 {
    font-size: clamp(34px, 4vw, 52px) !important;
}

body.vivaah-front .vivaah-trusted .border-gray-600 {
    border-color: var(--vivaah-gold-soft) !important;
    background: #fff;
    border-radius: 18px;
    box-shadow: 0 12px 30px rgba(43, 26, 32, 0.05);
}

body.vivaah-front .vivaah-trusted .bg-dark.opacity-60 {
    display: none;
}

body.vivaah-front .vivaah-reviews {
    position: relative;
    color: var(--vivaah-ink) !important;
    padding: 110px 0 !important;
}

body.vivaah-front .vivaah-reviews::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(255, 253, 252, 0.9), rgba(246, 238, 241, 0.9));
}

body.vivaah-front .vivaah-reviews .fs-18 {
    font-family: "Cormorant Garamond", serif;
    font-style: italic;
    font-size: 30px !important;
    line-height: 1.5;
    color: var(--vivaah-ink) !important;
    max-width: 18em;
    margin: 0 auto;
}

body.vivaah-front .vivaah-reviews h2 {
    color: var(--vivaah-ink) !important;
}

body.vivaah-front .how-it-works-card,
body.vivaah-front .border.p-3.mb-3 {
    border: 1px solid var(--vivaah-line) !important;
    border-radius: 24px !important;
    background: #fff;
    box-shadow: 0 10px 30px rgba(43, 26, 32, 0.04);
    min-height: 180px;
    padding: 28px !important;
}

body.vivaah-front .how-it-works-card .h1 {
    font-family: "Playfair Display", serif !important;
    font-size: 48px !important;
    color: var(--vivaah-gold) !important;
    line-height: 1;
}

body.vivaah-front .how-it-works-card .text-secondary {
    color: var(--vivaah-ink) !important;
    font-family: "Playfair Display", serif;
    font-size: 22px !important;
}

body.vivaah-front .slick-dots li button:before {
    color: var(--vivaah-rose) !important;
}

body.vivaah-front .aiz-mobile-bottom-nav {
    border-top: 1px solid var(--vivaah-line) !important;
}

body.vivaah-front .vivaah-story-tile .text-primary,
body.vivaah-front .vivaah-story-tile h2 {
    color: #fff !important;
}

body.vivaah-front .vivaah-story-card {
    border: 0 !important;
    border-radius: 24px !important;
    overflow: hidden;
    box-shadow: 0 16px 40px rgba(43, 26, 32, 0.08);
}

body.vivaah-front .vivaah-story-card img {
    border-radius: 0;
    width: 100%;
    object-fit: cover;
}

body.vivaah-front .vivaah-banner img {
    border-radius: 22px;
    box-shadow: 0 16px 40px rgba(43, 26, 32, 0.08);
    filter: saturate(0.92);
}

body.vivaah-front .card,
body.vivaah-front .vivaah-auth-card {
    border: 1px solid var(--vivaah-line) !important;
    border-radius: 28px !important;
    box-shadow: var(--vivaah-shadow);
    background: #fff;
}

body.vivaah-front .card-header {
    background: var(--vivaah-paper) !important;
    border-bottom: 1px solid var(--vivaah-line) !important;
    border-radius: 28px 28px 0 0 !important;
}

body.vivaah-front .vivaah-listing-card {
    border: 0 !important;
    border-radius: 28px !important;
    background: #fff;
    box-shadow: 0 12px 32px rgba(43, 26, 32, 0.07);
    overflow: hidden;
}

body.vivaah-front .aiz-filter-sidebar .card {
    border-radius: 28px !important;
}

body.vivaah-front .aiz-user-sidenav {
    background: #fff;
    border: 1px solid var(--vivaah-line);
    border-radius: 28px !important;
    box-shadow: 0 12px 32px rgba(43, 26, 32, 0.05);
}

body.vivaah-front .aiz-side-nav-link {
    border-radius: 12px;
    margin: 2px 10px;
}

body.vivaah-front .aiz-side-nav-link.active,
body.vivaah-front .aiz-side-nav-link:hover {
    background: var(--vivaah-blush) !important;
    color: var(--vivaah-rose) !important;
}

body.vivaah-front .aiz-user-panel .bg-light {
    background: var(--vivaah-blush) !important;
    border-radius: 20px !important;
}

body.vivaah-front .badge-success {
    background: var(--vivaah-rose) !important;
}

body.vivaah-front .badge-info {
    background: var(--vivaah-rose-soft) !important;
    color: var(--vivaah-ink) !important;
}

body.vivaah-front .page-item.active .page-link,
body.vivaah-front .pagination .page-item.active .page-link {
    background: var(--vivaah-rose) !important;
    border-color: var(--vivaah-rose) !important;
    color: #fff !important;
}

body.vivaah-front .page-link {
    color: var(--vivaah-rose);
    border-color: var(--vivaah-line);
}

body.vivaah-front .modal-content {
    border: 0;
    border-radius: 28px;
    overflow: hidden;
}

body.vivaah-front .dropdown-item.active,
body.vivaah-front .dropdown-item:active,
body.vivaah-front .dropdown-item:hover {
    background: var(--vivaah-blush);
    color: var(--vivaah-rose);
}

body.vivaah-front .bootstrap-select .dropdown-toggle {
    border-radius: 14px !important;
    border-color: var(--vivaah-line) !important;
    background: #fff !important;
}

body.vivaah-front .home-slider-area .p-4.bg-white {
    border-radius: 28px 28px 0 0;
    box-shadow: 0 -20px 50px rgba(43, 26, 32, 0.08);
    border: 1px solid var(--vivaah-line) !important;
}

body.vivaah-front .aiz-header .border-top {
    border-color: var(--vivaah-line) !important;
    background: rgba(255, 253, 252, 0.9);
}

body.vivaah-front .aiz-cookie-alert .bg-dark {
    background: var(--vivaah-ink) !important;
}

body.vivaah-front .accordion .card-header,
body.vivaah-front [data-toggle="collapse"] {
    color: var(--vivaah-ink);
}

body.vivaah-front section.bg-primary-grad {
    background: linear-gradient(135deg, #b54766 0%, #8e2f4c 100%) !important;
    border-radius: 0 !important;
    box-shadow: none;
}

body.vivaah-front .aiz-mobile-bottom-nav {
    background: #fff !important;
}

body.vivaah-front .aiz-mobile-bottom-nav .opacity-100 {
    color: var(--vivaah-rose) !important;
}

@media (max-width: 767px) {
    body.vivaah-front .home-slider-area {
        min-height: auto;
        padding-top: 108px;
    }

    body.vivaah-front .vivaah-package.is-featured {
        transform: none;
    }

    body.vivaah-front .home-slider-area h2 {
        max-width: none;
    }
}
