/* Shaadi Forever visual refresh: warm, calm, and focused on trust. */
:root {
    --sf-wine: #741d32;
    --sf-wine-dark: #4c1020;
    --sf-gold: #c5974b;
    --sf-cream: #fff9f2;
    --sf-ink: #2d2024;
}

body { background: var(--sf-cream); color: #5d5254; }
.top-navbar { background: #fffaf5 !important; border-color: #eadfd5 !important; }
.aiz-header { border: 0 !important; box-shadow: 0 8px 28px rgba(70, 25, 35, .08) !important; }
.aiz-navbar { min-height: 72px; }
.aiz-navbar .nav-link { letter-spacing: .02em; }
.aiz-navbar .nav-link:hover .text-primary-grad,
.aiz-navbar .bg-primary-grad .text-primary-grad { color: var(--sf-wine) !important; -webkit-text-fill-color: var(--sf-wine); }
.btn-primary, .bg-primary-grad {
    border: 0 !important;
    border-radius: 999px !important;
    padding: .74rem 1.35rem !important;
    box-shadow: 0 8px 20px rgba(116, 29, 50, .2);
    background: linear-gradient(135deg, var(--sf-wine) 0%, #a84359 100%) !important;
}
.btn-primary:hover { transform: translateY(-1px); box-shadow: 0 12px 24px rgba(116, 29, 50, .28); }

.sf-hero { min-height: 680px !important; isolation: isolate; }
.sf-hero:after { content: ''; position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg, rgba(255,249,242,.95) 0%, rgba(255,249,242,.82) 42%, rgba(55,12,24,.14) 100%); }
.sf-hero .absolute-full { z-index: -2; }
.sf-hero .img-fit { filter: saturate(.82) contrast(.98); }
.sf-hero-copy { max-width: 575px; }
.sf-eyebrow { display: inline-block; color: var(--sf-wine); font-size: .75rem; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; margin-bottom: 1rem; }
.sf-hero-copy h1 { color: var(--sf-ink); font-family: Georgia, 'Times New Roman', serif; font-size: clamp(2.55rem, 5vw, 4.8rem); font-weight: 500; line-height: 1.06; letter-spacing: -.045em; margin-bottom: 1.2rem; }
.sf-hero-copy p { font-size: 1.08rem; line-height: 1.8; max-width: 500px; color: #594b4f; }
.sf-hero-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 1.25rem; margin-top: 1.9rem; }
.sf-text-link { color: var(--sf-wine); font-weight: 700; text-decoration: underline; text-underline-offset: 4px; }
.sf-hero-trust { display: flex; flex-wrap: wrap; gap: 1rem 1.4rem; margin-top: 2rem; color: #5b444b; font-size: .84rem; font-weight: 600; }
.sf-hero-trust i { color: var(--sf-gold); font-size: 1.05rem; margin-right: .25rem; }

.sf-registration-card { border: 0; border-radius: 18px; box-shadow: 0 20px 60px rgba(48, 14, 25, .19); overflow: hidden; }
.sf-registration-card .card-body { padding: 2rem; }
.sf-registration-card .form-control { min-height: 45px; border-color: #eaded8; border-radius: 8px; }
.sf-registration-card .form-control:focus { border-color: var(--sf-wine); box-shadow: 0 0 0 .2rem rgba(116, 29, 50, .1); }

.section-title h2, .sf-section-title { color: var(--sf-ink); font-family: Georgia, 'Times New Roman', serif; font-size: clamp(2rem, 3vw, 2.75rem); font-weight: 500; letter-spacing: -.025em; }
.section-title p { max-width: 650px; margin-left: auto; margin-right: auto; line-height: 1.7; }
.py-7.bg-white, .pt-7.bg-white { background: var(--sf-cream) !important; }

/* Clear separation between the homepage stories, profiles, and packages. */
.sf-member-card { border: 1px solid #eaded8 !important; border-radius: 14px !important; background: #fff; box-shadow: 0 8px 22px rgba(70, 30, 39, .06); transition: transform .2s ease, box-shadow .2s ease; }
.sf-member-card:hover { transform: translateY(-5px); box-shadow: 0 16px 32px rgba(70, 30, 39, .14); }
.sf-member-card img { height: 330px !important; }
.sf-member-card .absolute-bottom-left > .bg-white { opacity: .96 !important; }

/* How-it-works cards */
.section-title + .row .border.p-3 { height: 100%; padding: 1.7rem !important; border: 1px solid #eaded8 !important; border-radius: 14px; background: #fff; box-shadow: 0 6px 20px rgba(70, 30, 39, .04); }
.section-title + .row .text-primary { color: var(--sf-wine) !important; }

/* Trust area and success stories */
.bg-fixed { background-attachment: scroll !important; }
.bg-dark { background-color: var(--sf-wine-dark) !important; }
.bg-dark .text-primary { color: #f5c878 !important; }
.card.border-gray-800 { border-radius: 14px !important; border: 1px solid rgba(255,255,255,.16) !important; }

/* Package cards */
.aiz-carousel .border-right { border: 1px solid #eaded8 !important; border-radius: 14px; background: #fff; box-shadow: 0 6px 20px rgba(70, 30, 39, .05); margin: .45rem; }
.display-4 { color: var(--sf-wine); font-family: Georgia, 'Times New Roman', serif; }

.aiz-footer { background: #38101d !important; }
.sf-whatsapp { position: fixed; right: 22px; bottom: 22px; z-index: 1030; display: inline-flex; align-items: center; gap: .45rem; padding: .72rem 1rem; border-radius: 999px; background: #1ea952; color: #fff !important; font-size: .82rem; font-weight: 700; box-shadow: 0 10px 24px rgba(0,0,0,.22); }
.sf-whatsapp i { font-size: 1.35rem; }

@media (max-width: 991.98px) {
    .sf-hero { min-height: auto !important; }
    .sf-hero:after { background: rgba(255,249,242,.87); }
    .sf-hero .row { padding-top: 8rem !important; }
    .sf-registration-card { margin-top: .5rem; }
    .sf-member-card img { height: 315px !important; }
    .sf-whatsapp { bottom: 72px; right: 16px; }
}

@media (max-width: 575.98px) {
    .sf-hero-copy h1 { font-size: 2.7rem; }
    .sf-registration-card .card-body { padding: 1.35rem; }
    .sf-hero-trust { display: grid; gap: .65rem; }
    .aiz-navbar { min-height: 60px; }
}
