/* =========================================
RENTAL LOADER
========================================= */

.rs-loading-v3{

    width:100%;

    min-height:220px;

    display:flex;
    align-items:center;
    justify-content:center;

    font-size:18px;
    font-weight:700;

    color:#ff6600;

    background:#fff;

    border-radius:24px;

    box-shadow:
        0 10px 30px rgba(0,0,0,0.06);

    position:relative;

    overflow:hidden;

}

/* SHIMMER */

.rs-loading-v3::after{

    content:"";

    position:absolute;

    top:0;
    left:-150%;

    width:120%;
    height:100%;

    background:
        linear-gradient(
            90deg,
            transparent,
            rgba(255,255,255,0.6),
            transparent
        );

    animation:rsShimmer 1.5s infinite;

}

@keyframes rsShimmer{

    100%{

        left:150%;

    }

}

header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 9999;
    background: rgba(255, 255, 255, 0.92);
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.08);
    border-bottom: 1px solid rgba(255, 255, 255, 0.35);
    transition: 0.3s ease;
}

nav {
    max-width: 1200px;
    margin: auto;
    padding: 12px 20px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 20px;
}

.logo {
    display: flex;
    align-items: center;
    gap: 12px;
    font-size: 24px;
    font-weight: 800;
    color: #9a22f6;
    white-space: nowrap;
}

.logo img {
    width: 42px;
    height: 42px;
    border-radius: 50%;
    object-fit: cover;
    background: #fff;
    padding: 3px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
}

.menu {
    display: flex;
    align-items: center;
    gap: 18px;
    flex-wrap: wrap;
}

.menu a {
    color: #334155;
    font-weight: 700;
    font-size: 15px;
    transition: 0.3s ease;
}

.menu a:hover {
    color: #9a22f6;
}

.btn {
    padding: 12px 18px;
    border-radius: 999px;
    background: linear-gradient(to right, #9a22f6, #f96fdc);
    color: #fff;
    font-weight: 700;
    display: inline-block;
    box-shadow: 0 10px 20px rgba(154, 34, 246, 0.25);
    transition: 0.3s ease;
}

.btn:hover {
    transform: translateY(-2px);
}

/* MOBILE */
@media(max-width:768px) {
    nav {
        padding: 10px 15px;
    }

    .menu {
        display: none;
    }

    .logo {
        font-size: 20px;
    }

    .logo img {
        width: 36px;
        height: 36px;
    }

    .btn {
        padding: 10px 14px;
        font-size: 14px;
    }
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    font-family: Arial, Helvetica, sans-serif;
}

/* HERO */
.hero {
    position: relative;
    min-height: 100vh;
    overflow: hidden;
    display: flex;
    align-items: center;
    padding: 110px 28px 70px;
    color: #fff;
    background: #08111f;
}

/* BACKGROUND SLIDER */
.hero-slider {
    position: absolute;
    inset: 0;
    z-index: 1;
    overflow: hidden;
}

.hero-slide {
    position: absolute;
    inset: 0;
    opacity: 0;
    transform: scale(1.06);
    transition: opacity 1.2s ease, transform 6s linear;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
}

/* ACTIVE */
.hero-slide.active {
    opacity: 1;
    transform: scale(1);
}

.air {
    background-position: center center !important;
    background-size: cover !important;
}

.train {
    background-position: center center;
}

.bus {
    background-position: center 55%;
}

.hill {
    background-position: center center;
}

.nature {
    background-position: center center;
}

.beach {
    background-position: center 68% !important;
    background-size: cover !important;
}

.city {
    background-position: center 35%;
}

.road {
    background-position: center 55%;
}

.temple {
    background-position: center 42%;
}

.luxury {
    background-position: center center;
}

/* MOBILE FIX */
@media(max-width:768px) {
    .hero-slide {
        background-size: cover;
    }

    .air {
        background-position: 58% center !important;
    }

    .train {
        background-position: center center;
    }

    .bus {
        background-position: 60% center;
    }

    .hill {
        background-position: center center;
    }

    .nature {
        background-position: center center;
    }

    .beach {
        background-position: 72% center !important;
    }

    .city {
        background-position: 58% center;
    }

    .road {
        background-position: 65% center;
    }

    .temple {
        background-position: center center;
    }

    .luxury {
        background-position: center center;
    }
}

/* OVERLAY */
.hero-overlay {
    position: absolute;
    inset: 0;
    z-index: 2;
    background:
        linear-gradient(90deg,
            rgba(2, 8, 20, .88) 0%,
            rgba(2, 8, 20, .65) 42%,
            rgba(2, 8, 20, .35) 100%);
}

/* GLOW EFFECT */
.hero-glow {
    position: absolute;
    width: 420px;
    height: 420px;
    border-radius: 50%;
    right: 8%;
    top: 8%;
    z-index: 2;
    filter: blur(90px);
    background: rgba(0, 255, 190, .14);
    animation: floatGlow 7s ease-in-out infinite;
}

@keyframes floatGlow {

    0%,
    100% {
        transform: translateY(0px);
    }

    50% {
        transform: translateY(28px);
    }
}

/* CONTENT */
.hero-wrap {
    position: relative;
    z-index: 5;
    width: 100%;
    max-width: 1320px;
    margin: auto;
}

.hero-grid {
    display: grid;
    grid-template-columns: 1.1fr .9fr;
    gap: 42px;
    align-items: center;
}

/* LEFT SIDE */
.hero-badge {
    display: inline-block;
    padding: 11px 18px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .14);
    border: 1px solid rgba(255, 255, 255, .16);
    backdrop-filter: blur(10px);
    font-size: 14px;
    font-weight: 700;
    margin-bottom: 22px;
}

.hero h1 {
    font-size: 64px;
    line-height: 1.05;
    font-weight: 900;
    margin-bottom: 18px;
}

/* ANIMATED RANSAN */
.hero h1 span {
    color: #00e6b8;
    background: linear-gradient(90deg,
            #00e6b8,
            #ffffff,
            #00e6b8);
    background-size: 220% auto;
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    animation: textShine 3s linear infinite;
}

@keyframes textShine {
    to {
        background-position: 220% center;
    }
}

/* TYPING TEXT */
.typing {
    min-height: 38px;
    font-size: 26px;
    font-weight: 800;
    color: #00f0bc;
    margin-bottom: 18px;
}

.hero p {
    max-width: 720px;
    font-size: 19px;
    line-height: 1.75;
    color: rgba(255, 255, 255, .92);
    margin-bottom: 28px;
}

/* TRUST BADGES */
.hero-features {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-bottom: 28px;
}

.hero-features span {
    padding: 10px 15px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .10);
    border: 1px solid rgba(255, 255, 255, .10);
    font-size: 14px;
    font-weight: 700;
}

/* BUTTONS */
.hero-actions {
    display: flex;
    gap: 14px;
    flex-wrap: wrap;
}

.hero-btn {
    padding: 15px 24px;
    border-radius: 999px;
    text-decoration: none;
    font-weight: 800;
    transition: .25s;
}

.hero-btn.primary {
    background: #00c986;
    color: #fff;
}

.hero-btn.primary:hover {
    transform: translateY(-3px);
}

.hero-btn.outline {
    border: 2px solid rgba(255, 255, 255, .7);
    color: #fff;
}

.hero-btn.outline:hover {
    background: #fff;
    color: #111;
}

/* DOTS */
.hero-dots {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    bottom: 22px;
    z-index: 9;
    display: flex;
    gap: 10px;
}

.hero-dots span {
    width: 11px;
    height: 11px;
    border-radius: 50%;
    background: rgba(255, 255, 255, .35);
    cursor: pointer;
}

.hero-dots span.active {
    background: #00e6b8;
}

/* SCROLL */
.scroll-cue {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    bottom: 55px;
    z-index: 9;
    font-size: 13px;
    animation: bounce 1.4s infinite;
}

@keyframes bounce {

    0%,
    100% {
        transform: translate(-50%, 0);
    }

    50% {
        transform: translate(-50%, 8px);
    }
}

/* MOBILE */
@media(max-width:980px) {
    .hero-grid {
        grid-template-columns: 1fr;
    }

    .hero h1 {
        font-size: 48px;
    }

    .service-card {
        max-width: 620px;
    }
}

@media(max-width:768px) {
    .hero {
        padding: 105px 18px 70px;
    }

    .hero h1 {
        font-size: 38px;
    }

    .typing {
        font-size: 20px;
        min-height: 28px;
    }

    .hero p {
        font-size: 16px;
    }

    .hero-features {
        gap: 8px;
    }

    .hero-features span {
        font-size: 13px;
    }

    .hero-actions {
        justify-content: center;
    }

    .hero-btn {
        width: 100%;
        text-align: center;
    }
}

:root {
    --primary: #003366;
    --secondary: #00b894;
    --accent: #f39c12;
    --light: #f8fafc;
    --dark: #0f172a
}

* {
    box-sizing: border-box
}

body {
    margin: 0;
    font-family: Inter, Arial, sans-serif;
    color: var(--dark);
    background: #fff
}

a {
    text-decoration: none
}

header {
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 10;
    background: rgba(255, 255, 255, .92);
    backdrop-filter: blur(8px);
    box-shadow: 0 2px 10px rgba(0, 0, 0, .08)
}

nav {
    max-width: 1200px;
    margin: auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 14px 20px
}

.logo {
    font-weight: 800;
    color: var(--primary);
    font-size: 24px
}

.menu a {
    margin: 0 10px;
    color: #334155;
    font-weight: 600
}

.btn {
    padding: 12px 18px;
    border-radius: 999px;
    background: var(--secondary);
    color: #fff;
    font-weight: 700;
    display: inline-block
}

.hero {
    min-height: 100vh;
    padding: 120px 20px 60px;
    background: linear-gradient(rgba(20, 10, 40, .55), rgba(20, 10, 40, .55)), linear-gradient(to right, #9a22f6, #f96fdc), url('https://images.unsplash.com/photo-1501785888041-af3ef285b470?q=80&w=1600&auto=format&fit=crop') center/cover;
    color: #fff;
    display: flex;
    align-items: center
}

.wrap {
    max-width: 1200px;
    margin: auto
}

.hero h1 {
    font-size: 56px;
    line-height: 1.1;
    margin: 0 0 14px
}

.hero p {
    font-size: 20px;
    max-width: 700px
}

.actions {
    display: flex;
    gap: 14px;
    flex-wrap: wrap;
    margin-top: 24px
}

.outline {
    background: transparent;
    border: 2px solid #fff
}

.section {
    padding: 80px 20px
}

.title {
    text-align: center;
    font-size: 38px;
    color: var(--primary);
    margin-bottom: 14px
}

.sub {
    text-align: center;
    color: #64748b;
    max-width: 700px;
    margin: 0 auto 40px
}

.grid {
    display: grid;
    gap: 24px
}

.grid-4 {
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr))
}

.card {
    background: #fff;
    border-radius: 22px;
    padding: 24px;
    box-shadow: 0 10px 30px rgba(2, 6, 23, .08)
}

.card h3 {
    margin-top: 0;
    color: var(--primary)
}

.packages .card {
    border-top: 5px solid var(--secondary)
}

.fleet .card {
    border-top: 5px solid var(--accent)
}

.review {
    font-style: italic
}

.cta {
    background: linear-gradient(135deg, var(--primary), #0b5aa8);
    color: #fff;
    border-radius: 28px;
    padding: 50px;
    text-align: center
}

.form {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 16px
}

.form input,
.form textarea {
    padding: 14px;
    border: 1px solid #cbd5e1;
    border-radius: 12px;
    width: 100%
}

.footer {
    background: #0f172a;
    color: #cbd5e1;
    padding: 40px 20px
}

.footer a {
    color: #fff
}

.whatsapp {
    position: fixed;
    right: 18px;
    bottom: 18px;
    background: #25D366;
    color: #fff;
    padding: 14px 18px;
    border-radius: 999px;
    font-weight: 800;
    box-shadow: 0 8px 20px rgba(0, 0, 0, .2)
}

@media(max-width:768px) {
    .hero h1 {
        font-size: 40px
    }

    .menu {
        display: none
    }
}

html {
    scroll-behavior: smooth
}

.hero::after {
    content: '';
    position: absolute;
    inset: 0;
    background: radial-gradient(circle at 20% 20%, rgba(255, 255, 255, .18), transparent 30%), radial-gradient(circle at 80% 30%, rgba(0, 184, 148, .15), transparent 25%);
    pointer-events: none
}

.hero {
    position: relative;
    overflow: hidden
}

.glass {
    background: rgba(255, 255, 255, .12);
    backdrop-filter: blur(12px);
    border: 1px solid rgba(255, 255, 255, .18);
    padding: 18px;
    border-radius: 20px;
    display: inline-block;
    margin-top: 22px
}

.badge {
    display: inline-block;
    padding: 8px 14px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .18);
    font-weight: 700;
    margin-bottom: 16px
}

.stats {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
    gap: 16px;
    margin-top: 28px
}

.stat {
    background: #fff;
    color: #0f172a;
    padding: 18px;
    border-radius: 20px;
    box-shadow: 0 10px 25px rgba(0, 0, 0, .08)
}

.card:hover {
    transform: translateY(-8px);
    transition: .3s ease
}

.stickybar {
    position: fixed;
    left: 50%;
    transform: translateX(-50%);
    bottom: 18px;
    background: #fff;
    border-radius: 999px;
    padding: 10px 14px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, .14);
    z-index: 20;
    display: flex;
    gap: 10px
}

.stickybar a {
    padding: 10px 14px;
    border-radius: 999px;
    font-weight: 700;
    color: #0f172a
}

.stickybar a.primary {
    background: var(--secondary);
    color: #fff
}

@media(max-width:768px) {
    .stickybar {
        width: 92%;
        justify-content: space-between
    }
}

.langswitch {
    display: flex;
    gap: 8px;
    justify-content: center;
    margin-top: 18px
}

.langswitch button {
    border: none;
    padding: 10px 14px;
    border-radius: 999px;
    font-weight: 700;
    cursor: pointer
}

.counter {
    font-size: 34px;
    font-weight: 900;
    color: #9a22f6
}

.fadein {
    opacity: 0;
    transform: translateY(24px);
    transition: all .8s ease
}

.fadein.show {
    opacity: 1;
    transform: none
}

.slider {
    display: flex;
    gap: 18px;
    overflow: auto;
    scroll-snap-type: x mandatory;
    padding-bottom: 8px
}

.slide {
    min-width: 280px;
    scroll-snap-align: start
}

.mini {
    font-size: 14px;
    color: #64748b
}

.chatbot {
    position: fixed;
    left: 18px;
    bottom: 18px;
    background: linear-gradient(to right, #9a22f6, #f96fdc);
    color: #fff;
    padding: 14px 18px;
    border-radius: 999px;
    font-weight: 800;
    z-index: 21;
    box-shadow: 0 8px 20px rgba(0, 0, 0, .2)
}

.tabs {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    justify-content: center;
    margin: 20px 0
}

.tabs button {
    padding: 10px 16px;
    border: none;
    border-radius: 999px;
    font-weight: 800;
    cursor: pointer
}

.leadbox {
    background: #fff;
    border-radius: 24px;
    padding: 24px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, .08)
}

.mapbox {
    height: 320px;
    border: 0;
    border-radius: 24px;
    width: 100%
}

.pill {
    display: inline-block;
    padding: 8px 12px;
    border-radius: 999px;
    background: #eef2ff;
    color: #312e81;
    font-weight: 700;
    margin: 4px
}

.service-card {
    background: rgba(255, 255, 255, .12);
    backdrop-filter: blur(18px);
    border: 1px solid rgba(255, 255, 255, .15);
    border-radius: 28px;
    padding: 28px;
    box-shadow: 0 24px 55px rgba(0, 0, 0, .25);
    position: relative;
    overflow: hidden;
}

/* TOP SPOTLIGHT */
.spotlight {
    padding: 14px 18px;
    border-radius: 18px;
    background: linear-gradient(135deg, #00c986, #00e7ff);
    color: #001b22;
    font-weight: 900;
    margin-bottom: 18px;
    font-size: 15px;
    box-shadow: 0 12px 25px rgba(0, 255, 200, .28);
    animation: spotGlow 3s ease infinite;
}

@keyframes spotGlow {

    0%,
    100% {
        transform: scale(1);
    }

    50% {
        transform: scale(1.03);
    }
}

/* COUNTER */
.live-booking {
    margin-bottom: 16px;
    font-size: 14px;
    font-weight: 700;
    color: #fff;
    opacity: .92;
}

.live-booking span {
    color: #00ffd0;
    font-size: 24px;
    font-weight: 900;
}

/* TITLE */
.service-card h3 {
    font-size: 28px;
    margin-bottom: 6px;
    color: #fff;
}

.service-card p {
    font-size: 14px;
    color: rgba(255, 255, 255, .82);
    margin-bottom: 18px;
}

/* LIST */
.service-list {
    display: grid;
    gap: 14px;
}

.service-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 16px 18px;
    border-radius: 18px;
    background: rgba(255, 255, 255, .08);
    color: #fff;
    text-decoration: none;
    transition: .30s ease;
    border: 1px solid rgba(255, 255, 255, .08);
}

.service-item:hover {
    transform: translateY(-5px);
    background: rgba(255, 255, 255, .14);
}

.service-left {
    display: flex;
    align-items: center;
    gap: 14px;
}

.service-icon {
    width: 42px;
    height: 42px;
    border-radius: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(255, 255, 255, .12);
    font-size: 20px;
}

.service-name-wrap {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}

.service-name {
    font-size: 16px;
    font-weight: 800;
}

/* BADGE NEXT TO TEXT */
.service-badge {
    font-size: 11px;
    padding: 6px 10px;
    border-radius: 999px;
    font-weight: 900;
    animation: pulseBadge 1.4s infinite;
    box-shadow: 0 0 0 rgba(255, 255, 255, .4);
}

@keyframes pulseBadge {
    0% {
        transform: scale(1);
        opacity: 1;
    }

    50% {
        transform: scale(1.08);
        opacity: .95;
    }

    100% {
        transform: scale(1);
    }
}

/* COLORS */
.blue .service-badge {
    background: #dbeafe;
    color: #1d4ed8;
}

.purple .service-badge {
    background: #f3e8ff;
    color: #7e22ce;
}

.orange .service-badge {
    background: #ffedd5;
    color: #ea580c;
}

.green .service-badge {
    background: #dcfce7;
    color: #15803d;
}

.teal .service-badge {
    background: #ccfbf1;
    color: #0f766e;
}

.service-arrow {
    font-size: 20px;
    transition: .3s;
}

.service-item:hover .service-arrow {
    transform: translateX(6px);
}

/* MOBILE */
@media(max-width:768px) {
    .service-card {
        padding: 22px;
    }

    .spotlight {
        font-size: 14px;
    }

    .service-name {
        font-size: 15px;
    }
}

.hero-desc {
    margin-top: 18px;
    padding: 16px 18px;
    border-radius: 18px;
    background: rgba(255, 255, 255, .08);
    border: 1px solid rgba(255, 255, 255, .12);
    backdrop-filter: blur(12px);
    max-width: 680px;
    font-size: 16px;
    line-height: 1.7;
    color: rgba(255, 255, 255, .92);
    box-shadow: 0 10px 25px rgba(0, 0, 0, .18);
    animation: fadeUp 1s ease;
}

/* First line = strong */
.hero-desc .line1 {
    display: block;
    font-size: 17px;
    font-weight: 800;
    color: #ffffff;
    margin-bottom: 6px;
    letter-spacing: .3px;
}

/* Second line = soft premium */
.hero-desc .line2 {
    display: block;
    font-size: 14px;
    font-weight: 500;
    color: rgba(255, 255, 255, .75);
}

/* subtle animation */
@keyframes fadeUp {
    from {
        opacity: 0;
        transform: translateY(10px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes fadeFloat {

    0%,
    100% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(-4px);
    }
}

@media(max-width:768px) {
    .hero-desc {
        font-size: 16px;
        padding: 16px;
        line-height: 1.7;
    }
}

.hero-badge.luxury {
    display: inline-block;
    padding: 10px 18px;
    border-radius: 999px;
    background: linear-gradient(90deg, #00f5c3, rgba(255, 255, 255, .2), #6c5ce7);
    background-size: 200% auto;
    color: #fff;
    font-weight: 700;
    font-size: 13px;
    letter-spacing: .6px;
    border: 1px solid rgba(255, 255, 255, .2);
    animation: shine 4s linear infinite;
    position: relative;
    overflow: hidden;
    min-width: 260px;
    text-align: center;
}

/* smooth fade animation */
.hero-badge span {
    display: inline-block;
    animation: fadeText 4s ease-in-out infinite;
}

@keyframes shine {
    0% {
        background-position: 0% center;
    }

    100% {
        background-position: 200% center;
    }
}

@keyframes fadeText {
    0% {
        opacity: 0;
        transform: translateY(6px);
    }

    10% {
        opacity: 1;
        transform: translateY(0);
    }

    40% {
        opacity: 1;
    }

    50% {
        opacity: 0;
        transform: translateY(-6px);
    }

    100% {
        opacity: 0;
    }
}

.travel-experience {
    margin-top: 18px;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.rotating-text {
    font-size: 18px;
    font-weight: 700;
    color: #fff;
    display: flex;
    gap: 10px;
    align-items: center;
    opacity: .95;
}

.rotating-text .label {
    color: #00e6b8;
    font-weight: 800;
}

.travel-chips {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.chip {
    padding: 10px 14px;
    border-radius: 999px;
    font-size: 13px;
    font-weight: 700;
    background: rgba(255, 255, 255, .10);
    border: 1px solid rgba(255, 255, 255, .14);
    backdrop-filter: blur(10px);
    display: flex;
    align-items: center;
    gap: 8px;
}

.chip.live .dot {
    width: 8px;
    height: 8px;
    background: #00ff88;
    border-radius: 50%;
    box-shadow: 0 0 10px #00ff88;
    animation: pulse 1.5s infinite;
}

@keyframes pulse {
    0% {
        transform: scale(1);
        opacity: 1;
    }

    50% {
        transform: scale(1.6);
        opacity: .5;
    }

    100% {
        transform: scale(1);
        opacity: 1;
    }
}

.premium-line {
    font-size: 15px;
    line-height: 1.7;
    color: rgba(255, 255, 255, .88);
    max-width: 650px;
    border-left: 3px solid rgba(0, 230, 184, .6);
    padding-left: 12px;
}

.hero-metrics-v2 {
    display: flex;
    gap: 12px;
    margin-top: 18px;
    flex-wrap: wrap;
}

.metric-v2 {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 12px 14px;
    border-radius: 14px;
    background: rgba(255, 255, 255, .08);
    border: 1px solid rgba(255, 255, 255, .12);
    backdrop-filter: blur(14px);
    color: #fff;
    transition: all .25s cubic-bezier(.2, .8, .2, 1);
    position: relative;
    overflow: hidden;
}

/* hover = smooth lift (2026 feel) */
.metric-v2:hover {
    transform: translateY(-4px);
    background: rgba(255, 255, 255, .14);
}

/* value + label */
.metric-v2 .value {
    font-size: 15px;
    font-weight: 900;
    line-height: 1.2;
}

.metric-v2 .label {
    font-size: 11px;
    opacity: .75;
}

/* icon style */
.metric-v2 .icon {
    font-size: 18px;
    opacity: .9;
}

/* LIVE DOT PULSE */
.metric-v2 .dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #00ff9d;
    box-shadow: 0 0 12px #00ff9d;
    animation: livePulse 1.6s infinite;
}

@keyframes livePulse {
    0% {
        transform: scale(1);
        opacity: 1;
    }

    50% {
        transform: scale(1.8);
        opacity: .4;
    }

    100% {
        transform: scale(1);
        opacity: 1;
    }
}

/* soft glow sweep (2026 UI trend) */
.metric-v2::after {
    content: "";
    position: absolute;
    inset: -60%;
    background: radial-gradient(circle, rgba(0, 230, 184, .12), transparent 60%);
    animation: floatGlow 6s linear infinite;
}

@keyframes floatGlow {
    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(360deg);
    }
}

/* HERO SLIDER FIX */
.hero-slider {
    position: absolute;
    inset: 0;
    z-index: 1;
    overflow: hidden;
}

.hero-slide {
    position: absolute;
    inset: 0;
    opacity: 0;
    transform: scale(1.06);
    transition: opacity 1.2s ease, transform 6s linear;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
}

/* ACTIVE */
.hero-slide.active {
    opacity: 1;
    transform: scale(1);
}

/* CUSTOM IMAGE POSITIONS */
/* Helps avoid crop / overlap issue */
.air {
    background-position: center 38%;
}

.train {
    background-position: center center;
}

.bus {
    background-position: center 55%;
}

.hill {
    background-position: center center;
}

.nature {
    background-position: center center;
}

.beach {
    background-position: center 62%;
}

.city {
    background-position: center 35%;
}

.road {
    background-position: center 55%;
}

.temple {
    background-position: center 42%;
}

.luxury {
    background-position: center center;
}

/* MOBILE FIX */
@media(max-width:768px) {
    .hero-slide {
        background-size: cover;
    }

    .air {
        background-position: 62% center;
    }

    .train {
        background-position: center center;
    }

    .bus {
        background-position: 60% center;
    }

    .hill {
        background-position: center center;
    }

    .nature {
        background-position: center center;
    }

    .beach {
        background-position: 68% center;
    }

    .city {
        background-position: 58% center;
    }

    .road {
        background-position: 65% center;
    }

    .temple {
        background-position: center center;
    }

    .luxury {
        background-position: center center;
    }
}

.hero-actions-v2 {
    margin-top: 22px;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

/* PRIMARY CTA (Booking engine style) */
.cta-primary {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 14px 18px;
    border-radius: 14px;
    background: linear-gradient(90deg, #00e6b8, #00bcd4);
    color: #001b1a;
    font-weight: 900;
    text-decoration: none;
    transition: all .25s cubic-bezier(.2, .8, .2, 1);
    box-shadow: 0 12px 30px rgba(0, 230, 184, .25);
}

.cta-primary:hover {
    transform: translateY(-3px) scale(1.02);
}

/* secondary group */
.cta-group {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

/* chips style (2026 minimal UI) */
.cta-chip {
    flex: 1;
    text-align: center;
    padding: 10px 12px;
    border-radius: 12px;
    background: rgba(255, 255, 255, .08);
    border: 1px solid rgba(255, 255, 255, .12);
    color: #fff;
    text-decoration: none;
    font-size: 13px;
    font-weight: 700;
    transition: .25s ease;
}

.cta-chip:hover {
    background: rgba(255, 255, 255, .14);
    transform: translateY(-2px);
}

/* LIVE chat indicator */
.cta-chip.live {
    position: relative;
    border: 1px solid rgba(0, 230, 184, .3);
}

.cta-chip.live::before {
    content: "";
    width: 8px;
    height: 8px;
    background: #00ff9d;
    border-radius: 50%;
    position: absolute;
    left: 10px;
    top: 50%;
    transform: translateY(-50%);
    box-shadow: 0 0 10px #00ff9d;
    animation: pulse 1.5s infinite;
}

@keyframes pulse {
    0% {
        transform: translateY(-50%) scale(1);
    }

    50% {
        transform: translateY(-50%) scale(1.6);
    }

    100% {
        transform: translateY(-50%) scale(1);
    }
}

.service-card-v2 {
    background: rgba(255, 255, 255, 0.7);
    backdrop-filter: blur(14px);
    border: 1px solid rgba(0, 0, 0, 0.06);
    border-radius: 20px;
    padding: 22px;
    text-align: left;
    transition: all .3s ease;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.06);
    position: relative;
    overflow: hidden;
}

/* hover effect */
.service-card-v2:hover {
    transform: translateY(-8px);
    box-shadow: 0 18px 45px rgba(0, 0, 0, 0.12);
    border-color: rgba(154, 34, 246, 0.25);
}

/* icon */
.service-card-v2 .icon {
    font-size: 28px;
    margin-bottom: 12px;
}

/* title */
.service-card-v2 h3 {
    font-size: 18px;
    font-weight: 800;
    color: #0f172a;
    margin-bottom: 6px;
}

/* description */
.service-card-v2 p {
    font-size: 14px;
    color: #64748b;
    line-height: 1.6;
    margin-bottom: 14px;
}

/* badge */
.service-card-v2 .tag {
    display: inline-block;
    font-size: 11px;
    font-weight: 800;
    padding: 6px 10px;
    border-radius: 999px;
    background: linear-gradient(90deg, #9a22f6, #f96fdc);
    color: #fff;
    letter-spacing: 0.5px;
}

/* subtle glow animation */
.service-card-v2::before {
    content: "";
    position: absolute;
    top: -40%;
    left: -40%;
    width: 200%;
    height: 200%;
    background: radial-gradient(circle, rgba(154, 34, 246, 0.08), transparent 60%);
    opacity: 0;
    transition: 0.4s;
}

.service-card-v2:hover::before {
    opacity: 1;
}

.rs-service-hub-v3 {
    padding: 80px 20px;
    background: #0b1220;
    color: #fff;
}

.rs-service-hub-wrap-v3 {
    max-width: 1100px;
    margin: auto;
}

/* HEADER */
.rs-service-hub-header-v3 {
    text-align: center;
    margin-bottom: 30px;
}

.rs-service-hub-header-v3 h2 {
    font-size: 36px;
    font-weight: 900;
}

.rs-service-hub-header-v3 p {
    color: #94a3b8;
}

/* STRIP */
.rs-service-hub-strip-v3 {
    display: flex;
    justify-content: center;
    gap: 15px;
    flex-wrap: wrap;
    margin-bottom: 30px;
}

.rs-service-hub-strip-v3 div {
    background: #111827;
    padding: 8px 14px;
    border-radius: 999px;
    font-size: 13px;
    color: #cbd5e1;
}

/* STACK */
.rs-service-stack-v3 {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

/* BLOCK */
.rs-service-block-v3 {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 20px;
    border-radius: 18px;
    background: #111827;
    border: 1px solid #1f2937;
    cursor: pointer;
    transition: .3s ease;
}

.rs-service-block-v3:hover {
    transform: translateY(-4px);
    border-color: #38bdf8;
}

/* ICON */
.rs-icon-v3 {
    font-size: 28px;
    width: 60px;
}

/* CONTENT */
.rs-content-v3 {
    flex: 1;
}

.rs-content-v3 h3 {
    margin: 0;
    font-size: 18px;
}

.rs-content-v3 p {
    margin: 4px 0;
    font-size: 13px;
    color: #94a3b8;
}

/* TAGS */
.rs-mini-tags-v3 {
    display: flex;
    gap: 8px;
    margin-top: 8px;
    flex-wrap: wrap;
}

.rs-mini-tags-v3 span {
    font-size: 11px;
    padding: 4px 8px;
    border-radius: 999px;
    background: #0f172a;
    color: #38bdf8;
}

/* ACTION */
.rs-action-v3 {
    color: #38bdf8;
    font-weight: 700;
}

/* COLOR THEMES */
.rs-ticket-v3 {
    border-left: 4px solid #3b82f6;
}

.rs-package-v3 {
    border-left: 4px solid #f97316;
}

.rs-rental-v3 {
    border-left: 4px solid #10b981;
}

.rs-utility-v3 {
    border-left: 4px solid #a855f7;
}

.rs-modal-v3 {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.6);
    display: none;
    justify-content: center;
    align-items: center;
    z-index: 9999;
}

.rs-modal-box-v3 {
    width: 90%;
    max-width: 600px;
    background: #0f172a;
    color: #fff;
    padding: 20px;
    border-radius: 16px;
}

.rs-modal-header-v3 {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.rs-modal-header-v3 .close {
    cursor: pointer;
    font-size: 24px;
}

.rsx-drawer-overlay {
    position: fixed;
    inset: 0;
    background: rgba(15, 23, 42, .55);
    z-index: 9998;
    opacity: 0;
    visibility: hidden;
    transition: .25s ease;
}

.rsx-drawer-overlay.show {
    opacity: 1;
    visibility: visible;
}

.rsx-drawer {
    position: fixed;
    top: 0;
    right: -520px;
    width: 520px;
    max-width: 100%;
    height: 100vh;
    background: #fff;
    z-index: 9999;
    box-shadow: -20px 0 60px rgba(0, 0, 0, .18);
    transition: .35s ease;
    display: flex;
    flex-direction: column;
}

.rsx-drawer.show {
    right: 0;
}

.rsx-drawer-head {
    padding: 20px;
    border-bottom: 1px solid #e2e8f0;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.rsx-drawer-head h3 {
    margin: 0;
    font-size: 24px;
    font-weight: 900;
    color: #0f172a;
}

.rsx-drawer-head p {
    margin: 4px 0 0;
    color: #64748b;
    font-size: 14px;
}

.rsx-close {
    width: 42px;
    height: 42px;
    border: none;
    border-radius: 12px;
    background: #f1f5f9;
    cursor: pointer;
    font-size: 18px;
}

.rsx-drawer-body {
    padding: 20px;
    overflow: auto;
}

/* forms */
.rsx-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
}

.rsx-field {
    margin-bottom: 12px;
}

.rsx-field label {
    display: block;
    font-size: 13px;
    font-weight: 700;
    margin-bottom: 6px;
    color: #334155;
}

.rsx-input {
    width: 100%;
    padding: 13px;
    border: 1px solid #cbd5e1;
    border-radius: 12px;
    outline: none;
}

.rsx-btn {
    width: 100%;
    padding: 14px;
    border: none;
    border-radius: 14px;
    background: linear-gradient(90deg, #00e6b8, #00bcd4);
    font-weight: 900;
    cursor: pointer;
    margin-top: 8px;
}

/* mini cards */
.rsx-tabrow {
    display: flex;
    gap: 10px;
    margin-bottom: 18px;
    flex-wrap: wrap;
}

.rsx-tab {
    padding: 10px 14px;
    background: #eef2ff;
    border-radius: 999px;
    cursor: pointer;
    font-weight: 800;
}

.rsx-tab.active {
    background: #0f172a;
    color: #fff;
}

/* cards */
.rsx-list {
    display: grid;
    gap: 14px;
}

.rsx-card {
    border: 1px solid #e2e8f0;
    border-radius: 18px;
    overflow: hidden;
    background: #fff;
}

.rsx-card img {
    width: 100%;
    height: 180px;
    object-fit: cover;
    display: block;
}

.rsx-card-body {
    padding: 14px;
}

.rsx-price {
    color: #059669;
    font-weight: 900;
    font-size: 20px;
}

.rsx-tag {
    display: inline-block;
    background: #f1f5f9;
    padding: 6px 10px;
    border-radius: 999px;
    font-size: 12px;
    margin-right: 6px;
    margin-top: 6px;
}

.rsx-result {
    margin-top: 18px;
    padding: 14px;
    border-radius: 14px;
    background: #f8fafc;
    font-weight: 700;
}

@media(max-width:700px) {
    .rsx-drawer {
        width: 100%;
    }

    .rsx-grid {
        grid-template-columns: 1fr;
    }
}

.rs-service-wrap-item-v3 {
    margin-bottom: 14px;
}

.rs-expand-v3 {
    max-height: 0;
    overflow: hidden;
    transition:
        max-height .45s ease,
        padding .35s ease,
        opacity .35s ease;
    opacity: 0;
    margin-top: -8px;
    padding: 0 22px;
    border-radius: 0 0 22px 22px;
    background: linear-gradient(180deg, #ffffff, #f8fafc);
    border: 1px solid rgba(2, 6, 23, .08);
    border-top: none;
    box-shadow:
        0 18px 45px rgba(2, 6, 23, .06);
}

.rs-expand-v3.open {
    max-height: 1400px;
    padding: 20px 22px 22px;
    opacity: 1;
}

.rs-service-wrap-item-v3.active .rs-service-block-v3 {
    border-radius: 22px 22px 0 0;
    box-shadow:
        0 10px 30px rgba(2, 6, 23, .08);
}

.rs-tabs-v3 {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    margin-bottom: 14px;
}

.rs-tab-v3 {
    border: none;
    padding: 10px 14px;
    border-radius: 999px;
    background: #eef2ff;
    font-weight: 800;
    cursor: pointer;
}

.rs-tab-v3.active {
    background: #0f172a;
    color: #fff;
}

.rs-grid-v3 {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 12px;
}

.rs-grid-v3 input,
.rs-grid-v3 select {
    width: 100%;
    padding: 13px;
    border: 1px solid #cbd5e1;
    border-radius: 12px;
}

.rs-search-btn-v3 {
    width: 100%;
    margin-top: 14px;
    border: none;
    padding: 14px;
    border-radius: 14px;
    font-weight: 900;
    background: linear-gradient(90deg, #00e6b8, #00bcd4);
    cursor: pointer;
}

.rs-result-box-v3 {
    margin-top: 14px;
    background: #f8fafc;
    padding: 16px;
    border-radius: 14px;
    font-weight: 800;
}

.rs-card-grid-v3 {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 14px;
}

.rs-card-v3 {
    border: 1px solid #e2e8f0;
    border-radius: 18px;
    overflow: hidden;
}

.rs-card-v3 img {
    width: 100%;
    height: 180px;
    object-fit: cover;
}

.rs-card-body-v3 {
    padding: 14px;
}

.rs-card-body-v3 h4 {
    margin: 0 0 8px;
}

.rs-price-v3 {
    color: #059669;
    font-size: 22px;
    font-weight: 900;
}

.rs-pill-row-v3 {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

.rs-pill-row-v3 span {
    background: #f1f5f9;
    padding: 10px 14px;
    border-radius: 999px;
}

@media(max-width:768px) {

    .rs-grid-v3,
    .rs-card-grid-v3 {
        grid-template-columns: 1fr;
    }
}

/* Ticket */
.rs-ticket-v3+.rs-expand-v3 {
    border-left: 4px solid #3b82f6;
}

/* Package */
.rs-package-v3+.rs-expand-v3 {
    border-left: 4px solid #f97316;
}

/* Rental */
.rs-rental-v3+.rs-expand-v3 {
    border-left: 4px solid #10b981;
}

/* Utility */
.rs-utility-v3+.rs-expand-v3 {
    border-left: 4px solid #a855f7;
}

.rs-traveller-box-v3 {
    margin-top: 18px;
    background: #f7f9fc;
    padding: 18px;
    border-radius: 16px;
    border: 1px solid #e5e7eb;
}

.rs-label-v3 {
    display: block;
    font-size: 15px;
    font-weight: 700;
    margin-bottom: 14px;
    color: #111827;
}

.rs-travel-grid-v3 {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 14px;
}

.rs-travel-item-v3 {
    display: flex;
    flex-direction: column;
}

.rs-travel-title-v3 {
    font-size: 14px;
    font-weight: 600;
    margin-bottom: 8px;
    color: #374151;
}

.rs-travel-item-v3 select {
    width: 100%;
    padding: 14px;
    border-radius: 12px;
    border: 1px solid #d1d5db;
    background: #fff;
    font-size: 16px;
    font-weight: 600;
    outline: none;
}

/* MOBILE */
@media(max-width:700px) {
    .rs-travel-grid-v3 {
        grid-template-columns: 1fr;
    }
}

.rs-traveller-box-v3 {
    margin-top: 18px;
}

.rs-air-row-v3 {
    display: grid;
    grid-template-columns:
        1.2fr 1.2fr 1.2fr .8fr .8fr .8fr;
    gap: 14px;
    align-items: end;
}

.rs-travel-inline-v3 {
    display: flex;
    flex-direction: column;
}

.rs-travel-inline-v3 label {
    font-size: 13px;
    font-weight: 600;
    margin-bottom: 6px;
    color: #374151;
}

.rs-travel-inline-v3 select {
    padding: 14px;
    border-radius: 12px;
    border: 1px solid #d1d5db;
    background: #fff;
    font-size: 15px;
    font-weight: 600;
}

/* MOBILE */
@media(max-width:900px) {
    .rs-air-row-v3 {
        grid-template-columns: 1fr 1fr;
    }
}

@media(max-width:600px) {
    .rs-air-row-v3 {
        grid-template-columns: 1fr;
    }
}

.rs-air-row-v3 input,
.rs-air-row-v3 select {
    width: 100%;
    height: 52px;
    padding: 0 14px;
    border: 1px solid #d7dce5;
    border-radius: 12px;
    background: #fff;
    font-size: 15px;
    font-weight: 500;
    color: #111827;
    outline: none;
    transition: .3s;
}

/* FOCUS */
.rs-air-row-v3 input:focus,
.rs-air-row-v3 select:focus {
    border-color: #0066ff;
    box-shadow:
        0 0 0 3px rgba(0, 102, 255, .12);
}

/* LABEL */
.rs-travel-inline-v3 label {
    display: block;
    font-size: 13px;
    font-weight: 600;
    margin-bottom: 6px;
    color: #374151;
}

/* GRID */
.rs-air-row-v3 {
    display: grid;
    grid-template-columns:
        1.3fr 1.3fr 1.2fr .7fr .7fr .7fr;
    gap: 14px;
    align-items: end;
}

/* MOBILE */
@media(max-width:900px) {
    .rs-air-row-v3 {
        grid-template-columns: 1fr 1fr;
    }
}

@media(max-width:600px) {
    .rs-air-row-v3 {
        grid-template-columns: 1fr;
    }
}

.rs-air-row-v3 {
    position: relative;
}

.rs-air-suggest {

    position: absolute;

    top: 115px;

    left: 0;

    width: 100%;

    background: #fff;

    border-radius: 20px;

    overflow: hidden;

    z-index: 9999;

    box-shadow:
        0 20px 50px rgba(0, 0, 0, .12);

    display: none;

    border:
        1px solid rgba(0, 0, 0, .05);

    backdrop-filter: blur(20px);

}

.rs-air-item {

    display: flex;

    align-items: center;

    gap: 14px;

    padding: 14px 18px;

    cursor: pointer;

    transition: .25s;

    border-bottom:
        1px solid rgba(0, 0, 0, .05);

}

.rs-air-item:hover {

    background: #f8fafc;

}

.rs-air-icon {

    width: 42px;
    height: 42px;

    border-radius: 50%;

    background:
        linear-gradient(135deg,
            #2563eb,
            #1d4ed8);

    display: flex;
    align-items: center;
    justify-content: center;

    color: #fff;

    font-size: 18px;

}

.rs-air-city {

    font-size: 15px;
    font-weight: 700;

    color: #111827;

}

.rs-air-country {

    font-size: 12px;

    color: #6b7280;

    margin-top: 2px;

}


/* ========================================
POPULAR ROUTES
======================================== */

.rs-popular-routes {

    display: flex;

    gap: 10px;

    flex-wrap: wrap;

    margin-top: 18px;

}

.rs-popular-routes button {

    border: none;

    background:
        linear-gradient(135deg,
            #eff6ff,
            #dbeafe);

    color: #2563eb;

    padding: 10px 16px;

    border-radius: 999px;

    font-size: 13px;

    font-weight: 700;

    cursor: pointer;

    transition: .25s;

}

.rs-popular-routes button:hover {

    transform: translateY(-2px);

    box-shadow:
        0 10px 20px rgba(37, 99, 235, .15);

}

.rs-ai-box {
    margin-top: 14px;
    display: none;
    animation: rsFade .35s ease;
}

.rs-ai-card {

    background:
        linear-gradient(135deg,
            rgba(255, 255, 255, .18),
            rgba(255, 255, 255, .08));

    backdrop-filter: blur(18px);

    border:
        1px solid rgba(255, 255, 255, .18);

    padding: 18px;

    border-radius: 20px;

    box-shadow:
        0 10px 40px rgba(0, 0, 0, .12);

}

.rs-ai-top {
    display: flex;
    align-items: center;
    gap: 14px;
}

.rs-ai-emoji {
    font-size: 32px;
}

.rs-ai-title {
    font-size: 15px;
    font-weight: 700;
    color: #111827;
}

.rs-ai-sub {
    font-size: 13px;
    color: #6b7280;
    margin-top: 4px;
}

.rs-ai-meta {
    margin-top: 10px;
    font-size: 13px;
    color: #374151;
}

@keyframes rsFade {

    from {
        opacity: 0;
        transform: translateY(10px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }

}

/* =========================================
TOUR PACKAGE SECTION
========================================= */

.rs-package-slider-wrap {

    position: relative;

    width: 100%;

    overflow: hidden;

    padding: 10px 0;

}

/* =========================================
HORIZONTAL SLIDER
========================================= */

.rs-card-grid-v3 {

    display: flex;

    gap: 22px;

    overflow-x: auto;

    scroll-behavior: smooth;

    scrollbar-width: none;

    padding: 8px 4px 20px;

}

.rs-card-grid-v3::-webkit-scrollbar {
    display: none;
}

/* =========================================
PACKAGE CARD
========================================= */

.rs-package-card {

    background: #fff;

    border-radius: 28px;

    overflow: hidden;

    box-shadow:
        0 12px 40px rgba(0, 0, 0, .08);

    transition: .35s ease;

    flex-shrink: 0;

    position: relative;

}

.rs-package-card:hover {

    transform:
        translateY(-6px);

}



/* =========================================
DYNAMIC THEME GRADIENTS
========================================= */

/* BASE */

.rs-package-card::before{

    background-size:200% 200%;

    animation:rsGradientMove 8s ease infinite;

}

@keyframes rsGradientMove{

    0%{
        background-position:0% 50%;
    }

    50%{
        background-position:100% 50%;
    }

    100%{
        background-position:0% 50%;
    }

}

.rs-package-card{

    position:relative;

    overflow:hidden;

    background:#fff;

}

/* BEACH */

.rs-package-card[data-theme*="beach"]{

    background:
    linear-gradient(
        135deg,
        rgba(14,165,233,.08),
        rgba(6,182,212,.03)
    );

}

/* HONEYMOON */

.rs-package-card[data-theme*="honeymoon"]{

    background:
    linear-gradient(
        135deg,
        rgba(236,72,153,.08),
        rgba(168,85,247,.04)
    );

}

/* LUXURY */

.rs-package-card[data-theme*="luxury"]{

    background:
    linear-gradient(
        135deg,
        rgba(245,158,11,.10),
        rgba(251,191,36,.04)
    );

}

/* ADVENTURE */

.rs-package-card[data-theme*="adventure"]{

    background:
    linear-gradient(
        135deg,
        rgba(249,115,22,.08),
        rgba(239,68,68,.04)
    );

}

/* FAMILY */

.rs-package-card[data-theme*="family"]{

    background:
    linear-gradient(
        135deg,
        rgba(34,197,94,.08),
        rgba(16,185,129,.04)
    );

}

/* ROMANTIC */

.rs-package-card[data-theme*="romantic"]{

    background:
    linear-gradient(
        135deg,
        rgba(244,63,94,.08),
        rgba(236,72,153,.04)
    );

}

/* MALDIVES */

.rs-package-card[data-theme*="maldives"]{

    background:
    linear-gradient(
        135deg,
        rgba(56,189,248,.10),
        rgba(45,212,191,.04)
    );

}

/* =========================================
4 CARDS DESKTOP
========================================= */

@media(max-width:1200px) {

    .rs-package-card {
        min-width: calc(33.33% - 16px);
    }

}

/* =========================================
2 CARDS TABLET
========================================= */

@media(max-width:768px) {

    .rs-package-card {
        min-width: calc(50% - 12px);
    }

}

/* =========================================
1 CARD MOBILE
========================================= */

@media(max-width:560px) {

    .rs-package-card {
        min-width: 100%;
    }

}


/* =========================================
IMAGE
========================================= */

.rs-package-image-wrap {

    position: relative;

    height: 230px;

    overflow: hidden;

}

.rs-package-image-wrap img {

    width: 100%;

    height: 100%;

    object-fit: cover;

    transition: 1s ease;

}

.rs-package-card:hover img {

    transform: scale(1.06);

}




/* =========================================
CARD BODY
========================================= */

.rs-card-body-v3 {

    padding: 20px;

}


.rs-card-body-v3 h4 {

    font-size: 20px;

    font-weight: 800;

    margin-bottom: 10px;

    color: #111827;

}

/* =========================================
META
========================================= */

.rs-package-meta {

    margin-top: 10px;

    font-size: 14px;

    color: #4b5563;

    line-height: 1.5;

}

/* =========================================
PRICE
========================================= */

.rs-price-v3 {

    font-size: 26px;

    font-weight: 800;

    color: #111827;

    margin-top: 12px;

}

/* =========================================
BUTTON GROUP
========================================= */

.rs-package-btn-wrap {

    display: flex;

    gap: 12px;

    margin-top: 18px;

}

/* =========================================
BUTTON
========================================= */

.rs-package-btn {

    flex: 1;

    border: none;

    padding: 14px;

    border-radius: 16px;

    font-weight: 700;

    cursor: pointer;

    transition: .3s ease;

    font-size: 14px;

}

/* VIEW BUTTON */

.rs-package-btn.view {

    background:
        linear-gradient(135deg,
            #2563eb,
            #1d4ed8);

    color: #fff;

}

/* WHATSAPP BUTTON */

.rs-package-btn.whatsapp {

    background:
        linear-gradient(135deg,
            #22c55e,
            #16a34a);

    color: #fff;

}

.rs-package-btn:hover {

    transform:
        translateY(-2px);

}

/* =========================================
SEARCH BOX
========================================= */

.rs-package-search-wrap {

    margin-bottom: 20px;

}

.rs-package-search-wrap input {

    width: 100%;

    padding: 16px 20px;

    border: none;

    border-radius: 18px;

    background: #f3f4f6;

    font-size: 15px;

    outline: none;

    transition: .3s ease;

    color: #111827;

    box-shadow:
        inset 0 0 0 2px transparent;

}

.rs-package-search-wrap input:focus {

    background: #fff;

    box-shadow:
        inset 0 0 0 2px #2563eb,
        0 10px 30px rgba(37, 99, 235, .12);

}

/* =========================================
FILTER BUTTONS
========================================= */

.rs-package-filter {

    display: flex;

    gap: 12px;

    flex-wrap: wrap;

    margin-bottom: 26px;

}

.rs-filter-btn {

    border: none;

    padding: 12px 18px;

    border-radius: 999px;

    background: #f3f4f6;

    color: #111827;

    cursor: pointer;

    font-weight: 700;

    transition: .3s ease;

}

.rs-filter-btn:hover {

    transform:
        translateY(-2px);

}

.rs-filter-btn.active {

    background:
        linear-gradient(135deg,
            #2563eb,
            #1d4ed8);

    color: #fff;

}

/* =========================================
SLIDER ARROWS
========================================= */

.rs-slider-arrow {

    position: absolute;

    top: 45%;

    transform: translateY(-50%);

    z-index: 20;

    width: 50px;

    height: 50px;

    border: none;

    border-radius: 50%;

    background: #fff;

    box-shadow:
        0 10px 30px rgba(0, 0, 0, .12);

    cursor: pointer;

    font-size: 28px;

    font-weight: 700;

    transition: .3s ease;

}

.rs-slider-arrow:hover {

    transform:
        translateY(-50%) scale(1.06);

}

.rs-slider-arrow.left {
    left: -10px;
}

.rs-slider-arrow.right {
    right: -10px;
}

/* =========================================
MODAL
========================================= */

.rs-package-modal {

    position: fixed;

    inset: 0;

    background:
        rgba(0, 0, 0, .7);

    z-index: 999999;

    display: none;

    align-items: center;

    justify-content: center;

    padding: 20px;

}

.rs-package-modal.active {
    display: flex;
}

.rs-package-modal-box {

    width: 100%;

    max-width: 900px;

    background: #fff;

    border-radius: 28px;

    overflow: auto;

    max-height: 92vh;

    position: relative;

    animation: rsModal .35s ease;

}

@keyframes rsModal {

    from {
        transform: translateY(30px);
        opacity: 0;
    }

    to {
        transform: none;
        opacity: 1;
    }

}

.rs-modal-close {

    position: absolute;

    top: 16px;

    right: 16px;

    width: 42px;

    height: 42px;

    border: none;

    border-radius: 50%;

    background: #fff;

    cursor: pointer;

    font-size: 18px;

    box-shadow:
        0 10px 25px rgba(0, 0, 0, .15);

}

.rs-modal-banner {

    width: 100%;

    height: 340px;

    object-fit: cover;

}

.rs-modal-content {
    padding: 28px;
}

.rs-modal-title {

    font-size: 34px;

    font-weight: 800;

    color: #111827;

}

.rs-modal-meta {

    display: flex;

    gap: 12px;

    flex-wrap: wrap;

    margin: 18px 0;

}

.rs-modal-chip {

    padding: 10px 16px;

    border-radius: 999px;

    background: #f3f4f6;

    font-size: 13px;

    font-weight: 700;

    color: #111827;

}

/* =========================================
SKELETON
========================================= */

.rs-package-skeleton {

    min-width: 300px;

    height: 380px;

    border-radius: 24px;

    background:
        linear-gradient(90deg,
            #f3f4f6 25%,
            #e5e7eb 50%,
            #f3f4f6 75%);

    background-size: 400% 100%;

    animation: rsSkeleton 1.4s infinite;

}

@keyframes rsSkeleton {

    0% {
        background-position: 100% 50%;
    }

    100% {
        background-position: 0 50%;
    }

}



/* =========================================
TOP CHIPS
========================================= */

.rs-package-top {

    display: flex;

    justify-content: space-between;

    align-items: center;

    gap: 10px;

    margin-bottom: 14px;

}

.rs-rating-chip,
.rs-theme-chip {

    padding: 8px 14px;

    border-radius: 999px;

    background: #f3f4f6;

    font-size: 12px;

    font-weight: 700;

}

/* =========================================
TITLE
========================================= */

.rs-package-title {

    font-size: 22px;

    font-weight: 800;

    color: #111827;

    margin-bottom: 10px;

    line-height: 1.3;

}




/* =========================================
PRICE ROW
========================================= */

.rs-price-row {

    display: flex;

    justify-content: space-between;

    align-items: center;

    margin-bottom: 22px;

}

.rs-price-label {

    font-size: 12px;

    color: #2563eb;

    font-weight: 700;

    text-transform: uppercase;

    letter-spacing: .5px;

}

.rs-price-v3 {

    font-size: 30px;

    font-weight: 900;

    color: #111827;

    margin-top: 4px;

}


/* =========================================
DAYS CHIP
========================================= */

.rs-days-chip {

    background: #f3f4f6;

    padding: 12px 16px;

    border-radius: 18px;

    font-size: 13px;

    font-weight: 700;

    color: #111827;

}

/* =========================================
META
========================================= */

.rs-package-meta-wrap {

    display: flex;

    flex-wrap: wrap;

    gap: 10px;

    margin-bottom: 18px;

}

.rs-meta-item {

    background: #f9fafb;

    padding: 10px 14px;

    border-radius: 14px;

    font-size: 13px;

    font-weight: 700;

    color: #374151;

}

/* =========================================
INCLUDES
========================================= */

.rs-package-includes {

    font-size: 14px;

    line-height: 1.7;

    color: #4b5563;

    margin-bottom: 20px;

}

/* =========================================
BUTTON ROW
========================================= */

.rs-package-btn-row {

    display: flex;

    gap: 12px;

}

/* =========================================
BUTTONS
========================================= */

.rs-package-btn {

    flex: 1;

    border: none;

    padding: 14px;

    border-radius: 18px;

    font-weight: 700;

    cursor: pointer;

    transition: .3s;

    font-size: 14px;

}

.rs-package-btn.secondary {

    background: #f3f4f6;

    color: #111827;

}

.rs-package-btn.secondary:hover {

    background: #e5e7eb;

}

.rs-package-btn.whatsapp {

    background:
        linear-gradient(135deg,
            #22c55e,
            #16a34a);

    color: #fff;

}

.rs-package-btn.whatsapp:hover {

    transform: translateY(-2px);

}

/* =========================================
MODAL MODERN FIX
========================================= */

.rs-modal-content {

    padding: 34px;

    background: #fff;

}

.rs-modal-title {

    font-size: 38px;

    font-weight: 900;

    color: #111827;

    margin-bottom: 14px;

    line-height: 1.2;

}

.rs-modal-city {

    font-size: 16px;

    color: #374151;

    margin-bottom: 22px;

    font-weight: 700;

}

/* =========================================
MODAL DESCRIPTION
========================================= */

.rs-modal-description {

    margin-top: 22px;

    line-height: 1.9;

    color: #4b5563;

    font-size: 15px;

}

/* =========================================
MOBILE
========================================= */

@media(max-width:768px) {

    .rs-package-title {

        font-size: 19px;

    }

    .rs-price-v3 {

        font-size: 24px;

    }

}

/* =========================================
ULTRA MODAL 2026
========================================= */

.rsx-modal-wrap {

    position: fixed;

    inset: 0;

    background: #f8fafc;

    z-index: 999999;

    overflow-y: auto;

    display: none;

}

.rsx-modal-wrap.active {
    display: block;
}

/* =========================================
MODAL BOX
========================================= */

.rsx-modal-box {

    width: 100%;

    min-height: 100vh;

    background: #fff;

    position: relative;

}

/* =========================================
CLOSE
========================================= */

.rsx-close-btn {

    position: fixed;

    top: 20px;
    right: 20px;

    width: 54px;
    height: 54px;

    border: none;

    border-radius: 50%;

    background: #fff;

    font-size: 22px;

    font-weight: 700;

    cursor: pointer;

    z-index: 999;

    box-shadow:
        0 10px 30px rgba(0, 0, 0, .18);

}

/* =========================================
HERO
========================================= */

.rsx-hero {

    position: relative;

    height: 75vh;

    overflow: hidden;

}

.rsx-hero img {

    width: 100%;
    height: 100%;

    object-fit: cover;

}

.rsx-hero-overlay {

    position: absolute;

    inset: 0;

    background:
        linear-gradient(to top,
            rgba(0, 0, 0, .85),
            rgba(0, 0, 0, .15));

    display: flex;

    flex-direction: column;

    justify-content: flex-end;

    padding: 60px;

}

/* =========================================
BADGE
========================================= */

.rsx-badge-live {

    width: max-content;

    padding: 10px 18px;

    border-radius: 999px;

    background:
        linear-gradient(135deg,
            #8b5cf6,
            #7c3aed);

    color: #fff;

    font-size: 13px;

    font-weight: 700;

    margin-bottom: 18px;

}

/* =========================================
TITLE
========================================= */

.rsx-title {

    font-size: 52px;

    font-weight: 900;

    line-height: 1.1;

    color: #fff;

    margin: 0;

}

/* =========================================
CITY
========================================= */

.rsx-city {

    margin-top: 14px;

    font-size: 18px;

    font-weight: 600;

    color: #fff;

    opacity: .95;

}

/* =========================================
BODY
========================================= */

.rsx-body{

    max-width:1200px;

    margin:auto;

    padding:
    40px
    24px
    320px;

}

/* =========================================
HEADINGS
========================================= */

.rsx-heading {

    font-size: 28px;

    font-weight: 800;

    color: #111827;

    margin-top: 42px;

    margin-bottom: 20px;

}

/* =========================================
AI HIGHLIGHTS
========================================= */

.rsx-ai-wrap {

    display: flex;

    gap: 14px;

    flex-wrap: wrap;

}

.rsx-ai-wrap div {

    background:
        linear-gradient(135deg,
            #dbeafe,
            #bfdbfe);

    color: #1e3a8a;

    padding: 14px 20px;

    border-radius: 999px;

    font-weight: 700;

}

/* =========================================
CHIPS
========================================= */

.rsx-chip-wrap {

    display: flex;

    gap: 12px;

    flex-wrap: wrap;

}

.rsx-chip-wrap div {

    padding: 13px 18px;

    border-radius: 999px;

    background: #f3f4f6;

    color: #111827;

    font-weight: 700;

    font-size: 14px;

}

/* =========================================
TIMELINE
========================================= */

.rsx-timeline-item {

    position: relative;

    padding-left: 42px;

    margin-bottom: 34px;

}

.rsx-timeline-item:before {

    content: "";

    position: absolute;

    left: 0;
    top: 8px;

    width: 18px;
    height: 18px;

    border-radius: 50%;

    background: #2563eb;

}

.rsx-day {

    font-size: 20px;

    font-weight: 800;

    color: #111827;

    margin-bottom: 8px;

}

.rsx-text {

    color: #4b5563;

    line-height: 1.8;

}

/* =========================================
DESCRIPTION
========================================= */

.rsx-description {

    margin-top: 40px;

    font-size: 16px;

    line-height: 1.9;

    color: #374151;

}

/* =========================================
GALLERY
========================================= */

.rsx-gallery{

    display:grid;

    grid-template-columns:
    repeat(auto-fit,minmax(280px,1fr));

    gap:24px;

    margin-top:20px;

    margin-bottom:40px;

}

.rsx-gallery img{

    width:100%;

    height:240px;

    object-fit:cover;

    border-radius:24px;

    display:block;

}

/* =========================================
STICKY BAR
========================================= */

/* =========================================
2026 ULTRA PREMIUM STICKY BAR
========================================= */

.rsx-sticky-bar {

    position: fixed;

    left: 20px;
    right: 20px;
    bottom: 20px;

    z-index: 99999;

    display: flex;

    justify-content: space-between;

    align-items: center;

    gap: 20px;

    padding: 20px 24px;

    border-radius: 28px;

    backdrop-filter: blur(24px);

    background:
        rgba(255, 255, 255, .72);

    border:
        1px solid rgba(255, 255, 255, .45);

    box-shadow:
        0 20px 60px rgba(0, 0, 0, .18);

    overflow: hidden;

}

/* =========================================
ANIMATED BORDER
========================================= */

.rsx-sticky-bar:before {

    content: "";

    position: absolute;

    inset: -2px;

    background:
        linear-gradient(90deg,
            #2563eb,
            #7c3aed,
            #ec4899,
            #f59e0b,
            #2563eb);

    background-size: 300% 300%;

    animation: rsBorderMove 6s linear infinite;

    z-index: -2;

}

.rsx-sticky-bar:after {

    content: "";

    position: absolute;

    inset: 1px;

    border-radius: 26px;

    background:
        rgba(255, 255, 255, .85);

    z-index: -1;

}

@keyframes rsBorderMove {

    0% {
        background-position: 0% 50%;
    }

    100% {
        background-position: 300% 50%;
    }

}

/* =========================================
PRICE WRAP
========================================= */

.rsp-price-box {

    display: flex;

    flex-direction: column;

    gap: 10px;

}

/* TOP ROW */

.rsp-price-top {

    display: flex;

    align-items: center;

    gap: 10px;

    flex-wrap: wrap;

}

/* SAVE BADGE */

.rsp-save-badge {

    background:
        linear-gradient(135deg,
            #ef4444,
            #dc2626);

    color: #fff;

    padding: 8px 16px;

    border-radius: 999px;

    font-size: 12px;

    font-weight: 900;

    animation: rspPulse 2s infinite;

    box-shadow:
        0 8px 24px rgba(239, 68, 68, .35);

}

/* OLD PRICE */

.rsp-old-price {

    font-size: 16px;

    color: #9ca3af;

    text-decoration: line-through;

    font-weight: 700;

}

/* MAIN PRICE */

.rsp-new-price {

    font-size: 52px;

    font-weight: 900;

    line-height: 1;

    letter-spacing: -2px;

    background:
        linear-gradient(135deg,
            #f59e0b,
            #ea580c);

    background-clip: text;

    -webkit-background-clip: text;

    color: transparent;

}

/* SUBTEXT */

.rsp-price-sub {

    display: flex;

    gap: 10px;

    flex-wrap: wrap;

    align-items: center;

}

/* PILLS */

.rsp-info-pill {

    padding: 10px 16px;

    border-radius: 999px;

    font-size: 12px;

    font-weight: 800;

    display: flex;

    align-items: center;

    gap: 8px;

}

/* SLOT */

.rsp-pill-red {

    background: #fee2e2;

    color: #dc2626;

}

/* BOOKED */

.rsp-pill-blue {

    background: #dbeafe;

    color: #2563eb;

}

/* TIMER */

.rsp-pill-yellow {

    background: #fef3c7;

    color: #b45309;

}

/* BUTTON */

.rsx-whatsapp-btn {

    border: none;

    padding: 18px 30px;

    border-radius: 20px;

    background:
        linear-gradient(135deg,
            #22c55e,
            #16a34a);

    color: #fff;

    font-size: 15px;

    font-weight: 900;

    cursor: pointer;

    white-space: nowrap;

    box-shadow:
        0 12px 30px rgba(34, 197, 94, .3);

}

/* PULSE */

@keyframes rspPulse {

    0% {
        transform: scale(1);
    }

    50% {
        transform: scale(1.06);
    }

    100% {
        transform: scale(1);
    }

}

/* MOBILE */

@media(max-width:768px) {

    .rsx-sticky-bar {

        left: 12px;
        right: 12px;
        bottom: 12px;

        padding: 16px;

        flex-direction: column;

        align-items: flex-start;

    }

    .rsp-new-price {

        font-size: 40px;

    }

    .rsx-whatsapp-btn {

        width: 100%;

    }

}

/* =========================================
TIMELINE TEXT FIX
========================================= */

#rsTimeline {

    margin-top: 20px;

}

.rsp-timeline-text {

    color: #111827 !important;

    font-size: 15px;

    line-height: 1.9;

    font-weight: 500;

}

.rs-gallery {

    display: flex;

    gap: 18px;

    overflow-x: auto;

    scroll-snap-type: x mandatory;

    padding-bottom: 10px;

}

.rs-gallery img {

    min-width: 320px;

    height: 220px;

    object-fit: cover;

    border-radius: 24px;

    scroll-snap-align: start;

}

/* =========================================
ULTRA PREMIUM PRICE UI
========================================= */

.rsp-price-box {

    display: flex;

    flex-direction: column;

    gap: 8px;

}

/* TOP ROW */

.rsp-price-top {

    display: flex;

    align-items: center;

    gap: 10px;

    flex-wrap: wrap;

}

/* OFFER BADGE */

.rsp-save-badge {

    background:
        linear-gradient(135deg,
            #dc2626,
            #ef4444);

    color: #fff;

    font-size: 12px;

    font-weight: 800;

    padding: 7px 14px;

    border-radius: 999px;

    box-shadow:
        0 6px 18px rgba(239, 68, 68, .25);

    animation: rspPulse 2s infinite;

}

/* OLD PRICE */

.rsp-old-price {

    font-size: 15px;

    color: #9ca3af;

    text-decoration: line-through;

    font-weight: 700;

}

/* MAIN PRICE */

.rsp-new-price {

    font-size: 42px;

    font-weight: 900;

    line-height: 1;

    letter-spacing: -1px;

    color: #f59e0b;

    text-shadow:
        0 4px 18px rgba(245, 158, 11, .25);

}

/* LABEL */

.rsp-price-sub {

    display: flex;

    align-items: center;

    gap: 8px;

    color: #6b7280;

    font-size: 13px;

    font-weight: 700;

}

/* ICON */

.rsp-price-icon {

    width: 28px;

    height: 28px;

    border-radius: 50%;

    background:
        linear-gradient(135deg,
            #fef3c7,
            #fde68a);

    display: flex;

    align-items: center;

    justify-content: center;

    font-size: 14px;

}

/* ANIMATION */

@keyframes rspPulse {

    0% {
        transform: scale(1);
    }

    50% {
        transform: scale(1.05);
    }

    100% {
        transform: scale(1);
    }

}

/* =========================================
ULTRA PREMIUM TOUR PLAN
========================================= */

.rsp-tour-row {

    display: flex;

    gap: 22px;

    margin-bottom: 28px;

    position: relative;

}

/* LEFT */

.rsp-tour-left {

    width: 90px;

    display: flex;

    flex-direction: column;

    align-items: center;

    flex-shrink: 0;

}

.rsp-tour-day {

    color: #fff;

    padding: 12px 18px;

    border-radius: 999px;

    font-size: 13px;

    font-weight: 800;

    box-shadow:
        0 10px 25px rgba(0, 0, 0, .12);

    letter-spacing: .4px;

}

.rsp-tour-line {

    width: 4px;

    flex: 1;

    margin-top: 10px;

    border-radius: 999px;

}

/* RIGHT */

.rsp-tour-right {
    flex: 1;
}

.rsp-tour-card {

    background: #fff;

    border: 1px solid #eef2ff;

    border-radius: 28px;

    padding: 24px;

    display: flex;

    gap: 18px;

    align-items: flex-start;

    transition: .35s ease;

    box-shadow:
        0 10px 35px rgba(0, 0, 0, .06);

}

.rsp-tour-card:hover {

    transform:
        translateY(-4px);

    box-shadow:
        0 18px 40px rgba(0, 0, 0, .12);

}

/* ICON */

.rsp-tour-icon {

    width: 58px;

    height: 58px;

    border-radius: 20px;

    display: flex;

    align-items: center;

    justify-content: center;

    font-size: 28px;

    flex-shrink: 0;

}

/* CONTENT */

.rsp-tour-content {
    flex: 1;
}

.rsp-tour-title {

    font-size: 17px;

    font-weight: 800;

    color: #111827;

    margin-bottom: 10px;

}

.rsp-tour-desc {

    font-size: 15px;

    line-height: 1.8;

    color: #4b5563;

}

/* MOBILE */

@media(max-width:768px) {

    .rsp-tour-row {
        gap: 14px;
    }

    .rsp-tour-left {
        width: 70px;
    }

    .rsp-tour-card {
        padding: 18px;
    }

    .rsp-tour-icon {

        width: 48px;
        height: 48px;

        font-size: 22px;

    }

}

/* =====================================================
2026 ULTRA PREMIUM STICKY BAR ENHANCEMENTS
===================================================== */

/* =========================================
AUTO HIDE + SHRINK
========================================= */

.rsx-sticky-bar{

    transition:
    transform .35s ease,
    padding .35s ease,
    backdrop-filter .35s ease,
    background .35s ease;

}

/* HIDE ON SCROLL DOWN */

.rsx-sticky-hide{

    transform:
    translateY(140%);

}

/* SHRINK MODE */

.rsx-sticky-small{

    padding:12px 18px !important;

    backdrop-filter:blur(24px);

}

.rsx-sticky-small .rsp-new-price{

    font-size:30px !important;

}

.rsx-sticky-small .rsx-whatsapp-btn{

    padding:12px 18px !important;

    font-size:14px;

}

/* =========================================
GLASSMORPHISM EFFECT
========================================= */

.rsx-sticky-bar{

    background:
    rgba(255,255,255,.72);

    backdrop-filter:
    blur(18px);

    -webkit-backdrop-filter:
    blur(18px);

    border-top:
    1px solid rgba(255,255,255,.35);

    box-shadow:
    0 -10px 40px rgba(0,0,0,.08);

}

/* =========================================
FLOATING GLOW BEHIND PRICE
========================================= */

.rsp-price-box{

    position:relative;

    z-index:2;

}

.rsp-price-box:before{

    content:"";

    position:absolute;

    width:140px;

    height:140px;

    background:
    radial-gradient(
        circle,
        rgba(245,158,11,.30),
        transparent 70%
    );

    top:-40px;

    left:-20px;

    z-index:-1;

    filter:blur(28px);

    animation:rspFloatGlow 5s ease-in-out infinite;

}

/* GLOW ANIMATION */

@keyframes rspFloatGlow{

    0%{
        transform:translateY(0px);
    }

    50%{
        transform:translateY(-8px);
    }

    100%{
        transform:translateY(0px);
    }

}

/* =========================================
LIVE VIEW COUNTER
========================================= */

.rsp-pill-purple{

    background:
    linear-gradient(
        135deg,
        #ede9fe,
        #ddd6fe
    );

    color:#6d28d9;

}

/* =========================================
SAVE BADGE SPARKLE
========================================= */

.rsp-save-badge{

    position:relative;

    overflow:hidden;

}

/* SHIMMER */

.rsp-save-badge:before{

    content:"";

    position:absolute;

    top:0;

    left:-120%;

    width:80%;

    height:100%;

    background:
    linear-gradient(
        90deg,
        transparent,
        rgba(255,255,255,.75),
        transparent
    );

    transform:skewX(-20deg);

    animation:rspShimmer 2.5s infinite;

}

@keyframes rspShimmer{

    100%{
        left:140%;
    }

}

/* SPARKLE */

.rsp-save-badge:after{

    content:"✨";

    position:absolute;

    top:-10px;

    right:-6px;

    font-size:14px;

    animation:rspSparkle 1.8s infinite;

}

@keyframes rspSparkle{

    0%{
        transform:scale(.8) rotate(0deg);
        opacity:.4;
    }

    50%{
        transform:scale(1.3) rotate(20deg);
        opacity:1;
    }

    100%{
        transform:scale(.8) rotate(0deg);
        opacity:.4;
    }

}

/* =========================================
DYNAMIC URGENCY COLORS
========================================= */

.rsp-pill-green{

    background:
    linear-gradient(
        135deg,
        #dcfce7,
        #bbf7d0
    );

    color:#15803d;

}

.rsp-pill-orange{

    background:
    linear-gradient(
        135deg,
        #fed7aa,
        #fdba74
    );

    color:#c2410c;

}

.rsp-pill-red{

    background:
    linear-gradient(
        135deg,
        #fecaca,
        #fca5a5
    );

    color:#b91c1c;

}

/* =========================================
MOBILE
========================================= */

@media(max-width:768px){

    .rsp-price-sub{

        flex-wrap:wrap;

    }

    .rsp-new-price{

        font-size:34px;

    }

}

/* =====================================================
PREMIUM DESCRIPTION UI
===================================================== */

.rsx-description-card{

    position:relative;

    overflow:hidden;

    padding:32px;

    border-radius:28px;

    background:
    linear-gradient(
        135deg,
        rgba(255,255,255,.92),
        rgba(255,255,255,.78)
    );

    backdrop-filter:
    blur(18px);

    -webkit-backdrop-filter:
    blur(18px);

    border:
    1px solid rgba(255,255,255,.35);

    box-shadow:
    0 14px 50px rgba(0,0,0,.08);

    margin-top:20px;

}

/* FLOATING GLOW */

.rsx-description-card:before{

    content:"";

    position:absolute;

    width:220px;

    height:220px;

    border-radius:50%;

    background:
    radial-gradient(
        circle,
        rgba(59,130,246,.12),
        transparent 70%
    );

    top:-100px;

    right:-80px;

    filter:blur(30px);

}

/* ICON */

.rsx-description-icon{

    width:62px;

    height:62px;

    border-radius:20px;

    background:
    linear-gradient(
        135deg,
        #fef3c7,
        #fde68a
    );

    display:flex;

    align-items:center;

    justify-content:center;

    font-size:28px;

    margin-bottom:20px;

    box-shadow:
    0 10px 25px rgba(245,158,11,.18);

}

/* TEXT */

.rsx-description-text{

    position:relative;

    z-index:2;

    font-size:17px;

    line-height:1.95;

    color:#374151;

    font-weight:500;

    letter-spacing:.2px;

}

/* MOBILE */

@media(max-width:768px){

    .rsx-description-card{

        padding:24px;

        border-radius:24px;

    }

    .rsx-description-text{

        font-size:15px;

        line-height:1.8;

    }

}

/* =====================================================
ULTRA PREMIUM DESCRIPTION SYSTEM
===================================================== */

/* WRAP */

.rsx-description-wrap{

    position:relative;

    margin-top:30px;

}

/* =========================================
FLOATING PARTICLES
========================================= */

.rsx-particle{

    position:absolute;

    border-radius:50%;

    filter:blur(30px);

    opacity:.55;

    animation:rsxFloatParticle 8s infinite ease-in-out;

}

.rsx-particle.p1{

    width:180px;
    height:180px;

    background:
    rgba(59,130,246,.16);

    top:-40px;
    left:-20px;

}

.rsx-particle.p2{

    width:140px;
    height:140px;

    background:
    rgba(245,158,11,.14);

    right:-10px;
    top:60px;

}

.rsx-particle.p3{

    width:100px;
    height:100px;

    background:
    rgba(236,72,153,.12);

    bottom:-20px;
    left:40%;

}

@keyframes rsxFloatParticle{

    0%{
        transform:translateY(0px);
    }

    50%{
        transform:translateY(-18px);
    }

    100%{
        transform:translateY(0px);
    }

}

/* =========================================
CARD
========================================= */

.rsx-description-card{

    position:relative;

    overflow:hidden;

    padding:34px;

    border-radius:30px;

    background:
    linear-gradient(
        135deg,
        rgba(255,255,255,.92),
        rgba(255,255,255,.78)
    );

    backdrop-filter:
    blur(18px);

    -webkit-backdrop-filter:
    blur(18px);

    border:
    1px solid rgba(255,255,255,.35);

    box-shadow:
    0 18px 60px rgba(0,0,0,.08);

}

/* ICON */

.rsx-description-icon{

    width:68px;
    height:68px;

    border-radius:22px;

    display:flex;

    align-items:center;

    justify-content:center;

    font-size:30px;

    margin-bottom:22px;

    background:
    linear-gradient(
        135deg,
        #fef3c7,
        #fde68a
    );

}

/* TITLE */

.rsx-description-title{

    font-size:28px;

    font-weight:900;

    color:#111827;

    margin-bottom:24px;

}

/* =========================================
AI SUMMARY CHIPS
========================================= */

.rsx-ai-summary-wrap{

    display:flex;

    flex-wrap:wrap;

    gap:10px;

    margin-bottom:28px;

}

.rsx-ai-summary-chip{

    padding:10px 16px;

    border-radius:999px;

    background:
    linear-gradient(
        135deg,
        #dbeafe,
        #bfdbfe
    );

    color:#1d4ed8;

    font-size:13px;

    font-weight:800;

    box-shadow:
    0 6px 18px rgba(37,99,235,.12);

}

/* =========================================
DESCRIPTION TEXT
========================================= */

.rsx-description-text{

    position:relative;

    z-index:2;

    color:#374151;

    font-size:17px;

    line-height:2;

    font-weight:500;

    max-height:150px;

    overflow:hidden;

    transition:max-height .5s ease;

}

/* EXPAND */

.rsx-description-text.rsx-expand{

    max-height:1000px;

}

/* =========================================
TYPEWRITER
========================================= */

.rsx-typewriter{

    animation:
    rsxFadeText 1.2s ease;

}

@keyframes rsxFadeText{

    from{

        opacity:0;
        transform:translateY(12px);

    }

    to{

        opacity:1;
        transform:none;

    }

}

/* =========================================
KEYWORD HIGHLIGHT
========================================= */

.rsx-keyword{

    display:inline-block;

    padding:3px 10px;

    border-radius:999px;

    background:
    linear-gradient(
        135deg,
        #fef3c7,
        #fde68a
    );

    color:#92400e;

    font-weight:800;

    margin:0 2px;

}

/* =========================================
FADE OVERLAY
========================================= */

.rsx-fade-overlay{

    position:absolute;

    left:0;
    right:0;
    bottom:58px;

    height:90px;

    background:
    linear-gradient(
        to bottom,
        transparent,
        rgba(255,255,255,.96)
    );

    pointer-events:none;

}

/* =========================================
READ MORE BUTTON
========================================= */

.rsx-readmore-btn{

    margin-top:18px;

    border:none;

    padding:14px 24px;

    border-radius:16px;

    cursor:pointer;

    font-weight:800;

    color:#fff;

    background:
    linear-gradient(
        135deg,
        #2563eb,
        #1d4ed8
    );

    box-shadow:
    0 10px 25px rgba(37,99,235,.25);

}

/* =========================================
REMOVE FADE WHEN EXPANDED
========================================= */

.rsx-description-text.rsx-expand
+ .rsx-fade-overlay{

    display:none;

}

/* MOBILE */

@media(max-width:768px){

    .rsx-description-card{

        padding:24px;

        border-radius:24px;

    }

    .rsx-description-title{

        font-size:22px;

    }

    .rsx-description-text{

        font-size:15px;

        line-height:1.9;

    }

}

/* =========================================
MODERN 2026 PACKAGE CARD
========================================= */

.rs-package-card{

    background:#fff;

    border-radius:28px;

    overflow:hidden;

    box-shadow:
    0 10px 40px rgba(0,0,0,.08);

    transition:.35s ease;

    position:relative;

    display:flex;

    flex-direction:column;

}

.rs-package-card:hover{

    transform:
    translateY(-8px);

    box-shadow:
    0 18px 60px rgba(0,0,0,.12);

}

/* =========================================
IMAGE
========================================= */

.rs-package-image-wrap{

    position:relative;

    height:240px;

    overflow:hidden;

}

.rs-package-image-wrap img{

    width:100%;

    height:100%;

    object-fit:cover;

    transition:1s ease;

}

.rs-package-card:hover
.rs-package-image-wrap img{

    transform:scale(1.08);

}



/* =========================================
BODY
========================================= */

.rs-card-body-v3{

    padding:22px;

    display:flex;

    flex-direction:column;

    gap:18px;

}

/* =========================================
TOP
========================================= */

.rs-package-top-row{

    display:flex;

    justify-content:space-between;

    align-items:flex-start;

    gap:12px;

}

/* =========================================
TITLE
========================================= */

.rs-package-title{

    font-size:22px;

    font-weight:800;

    color:#111827;

    margin-bottom:8px;

    line-height:1.3;

}



/* =========================================
MODERN DAYS CHIP
========================================= */

.rs-modern-days-chip{

    background:
    linear-gradient(
        135deg,
        #eff6ff,
        #dbeafe
    );

    color:#2563eb;

    border-radius:16px;

    padding:10px 14px;

    font-size:13px;

    font-weight:800;

    white-space:nowrap;

    display:flex;

    align-items:center;

    gap:6px;

    border:
    1px solid #bfdbfe;

}

/* =========================================
PRICE BOX
========================================= */

.rs-modern-price-box{

    display:flex;

    flex-direction:column;

    gap:8px;

}

/* OLD PRICE */

.rs-card-old-price{

    color:#9ca3af;

    text-decoration:line-through;

    font-size:14px;

    font-weight:700;

}

/* PRICE ROW */

.rs-card-price-row{

    display:flex;

    align-items:center;

    justify-content:space-between;

    gap:10px;

}

/* PRICE PILL */

.rs-card-price-pill{

    display:flex;

    align-items:center;

    gap:10px;

    padding:14px 18px;

    border-radius:22px;

    background:
    linear-gradient(
        135deg,
        rgba(245,158,11,.12),
        rgba(249,115,22,.12)
    );

    border:
    1px solid rgba(245,158,11,.18);

    backdrop-filter:blur(10px);

}

/* ICON */

.rs-price-icon{

    width:36px;

    height:36px;

    border-radius:50%;

    background:
    linear-gradient(
        135deg,
        #f59e0b,
        #ea580c
    );

    display:flex;

    align-items:center;

    justify-content:center;

    color:#fff;

    font-size:16px;

}

/* PRICE */

.rs-card-price{

    font-size:30px;

    font-weight:900;

    color:#111827;

    line-height:1;

}

/* SAVE */

.rs-save-pill{

    background:
    linear-gradient(
        135deg,
        #dc2626,
        #ef4444
    );

    color:#fff;

    padding:10px 14px;

    border-radius:999px;

    font-size:12px;

    font-weight:800;

    animation:rsPulse 2s infinite;

}

/* STARTING */

.rs-price-starting{

    font-size:13px;

    color:#6b7280;

    font-weight:700;

}

/* =========================================
BUTTONS
========================================= */

.rs-package-btn-row{

    display:flex;

    gap:12px;

    margin-top:auto;

}

/* COMMON */

.rs-modern-btn{

    flex:1;

    border:none;

    height:52px;

    border-radius:18px;

    font-size:15px;

    font-weight:800;

    cursor:pointer;

    transition:.3s ease;

}

/* VIEW */

.rs-view-btn{

    background:
    linear-gradient(
        135deg,
        #111827,
        #1f2937
    );

    color:#fff;

}

.rs-view-btn:hover{

    transform:translateY(-3px);

}

/* WA */

.rs-wa-btn{

    background:
    linear-gradient(
        135deg,
        #22c55e,
        #16a34a
    );

    color:#fff;

}

.rs-wa-btn:hover{

    transform:translateY(-3px);

}

/* =========================================
ANIMATION
========================================= */

@keyframes rsPulse{

    0%{
        transform:scale(1);
    }

    50%{
        transform:scale(1.05);
    }

    100%{
        transform:scale(1);
    }

}

/* =========================================
MOBILE
========================================= */

@media(max-width:768px){

    .rs-package-image-wrap{

        height:210px;

    }

    .rs-card-price{

        font-size:24px;

    }

    .rs-package-btn-row{

        flex-direction:column;

    }

}

/* =========================================
GLASS OVERLAY
========================================= */

.rs-image-glass{

    position:absolute;

    left:14px;
    right:14px;
    bottom:14px;

    display:flex;

    justify-content:space-between;

    align-items:center;

    padding:10px 14px;

    border-radius:18px;

    backdrop-filter:blur(18px);

    background:rgba(255,255,255,.18);

    border:
    1px solid rgba(255,255,255,.22);

    color:#fff;

    font-weight:700;

    z-index:5;

}

.rs-package-image-wrap{

    position:relative;

    overflow:hidden;

}

.rs-package-image-wrap img{

    transition:
    transform .7s ease;

}

.rs-package-card:hover
.rs-package-image-wrap img{

    transform:scale(1.08);

}

.rs-live-viewing{

    margin-top:10px;

    font-size:13px;

    font-weight:700;

    color:#2563eb;

}

.rs-theme-pill-wrap{

    margin-top:10px;

}

.rs-theme-pill{

    display:inline-flex;

    align-items:center;

    gap:8px;

    padding:8px 14px;

    border-radius:999px;

    background:#eff6ff;

    color:#2563eb;

    font-size:12px;

    font-weight:800;

}

.rs-modern-btn{

    transition:
    transform .25s ease,
    box-shadow .25s ease;

}

.rs-modern-btn:hover{

    transform:translateY(-2px);

    box-shadow:
    0 10px 22px rgba(0,0,0,.12);

}

.rs-package-card{

    transition:
    transform .35s ease,
    box-shadow .35s ease;

}

.rs-package-card:hover{

    transform:
    translateY(-8px);

    box-shadow:
    0 30px 60px rgba(0,0,0,.15);

}

.rs-package-card:before{

    background:var(--cardGradient);

}

/* =========================================
AI SUMMARY
========================================= */

.rs-ai-summary-line{

    position:relative;

    display:flex;

    align-items:center;

    gap:10px;

    margin-top:14px;

    padding:12px 14px;

    border-radius:16px;

    overflow:hidden;

    background:
    linear-gradient(
        135deg,
        rgba(99,102,241,.06),
        rgba(168,85,247,.06)
    );

    border:
    1px solid rgba(99,102,241,.08);

    font-size:13px;

    line-height:1.5;

    font-weight:600;

    color:#374151;

    transition:
    opacity .35s ease,
    transform .35s ease;

}

.rs-ai-summary-line::before{

    content:"";

    position:absolute;

    top:0;

    left:-120%;

    width:60%;

    height:100%;

    background:
    linear-gradient(
        90deg,
        transparent,
        rgba(255,255,255,.45),
        transparent
    );

    transform:skewX(-20deg);

}

/* =========================================
SHIMMER ACTIVE
========================================= */

.rs-ai-summary-line.rs-ai-changing::before{

    animation:
    rsAIShimmer .8s ease;

}

/* =========================================
SHIMMER KEYFRAME
========================================= */

@keyframes rsAIShimmer{

    100%{

        left:160%;

    }

}

/* =========================================
CHANGE ANIMATION
========================================= */

.rs-ai-summary-line.rs-ai-changing{

    opacity:.75;

    transform:translateY(5px);

}

/* =========================================
AI ICON
========================================= */

.rs-ai-icon{

    font-size:16px;

    animation:
    rsAIPulse 2s infinite;

}

/* =========================================
AI ICON PULSE
========================================= */

@keyframes rsAIPulse{

    0%{

        transform:scale(1);

        opacity:1;

    }

    50%{

        transform:scale(1.18);

        opacity:.7;

    }

    100%{

        transform:scale(1);

        opacity:1;

    }

}

/* =========================================
TEXT
========================================= */

.rs-ai-text{

    overflow:hidden;

    white-space:nowrap;

    text-overflow:ellipsis;

}

/* =========================================
HOVER EXPANSION
========================================= */

.rs-package-card{

    transition:
    transform .35s ease,
    box-shadow .35s ease;

}

.rs-package-card:hover{

    transform:
    translateY(-10px)
    scale(1.01);

    box-shadow:
    0 30px 60px rgba(0,0,0,.16);

}

/* =========================================
SEASON BADGE
========================================= */

.rs-season-badge{

    position:absolute;

    top:14px;

    right:14px;

    z-index:3;

    background:
    rgba(255,255,255,.18);

    backdrop-filter:blur(14px);

    border:1px solid rgba(255,255,255,.25);

    color:#fff;

    font-size:12px;

    font-weight:800;

    padding:8px 14px;

    border-radius:999px;

    box-shadow:
    0 8px 24px rgba(0,0,0,.18);

}

/* =========================================
MODERN DURATION PILLS
========================================= */

.rs-duration-wrap{

    display:flex;

    gap:10px;

    margin-top:14px;

    flex-wrap:wrap;

}

.rs-duration-pill{

    display:flex;

    align-items:center;

    gap:8px;

    padding:10px 14px;

    border-radius:999px;

    font-size:13px;

    font-weight:800;

    backdrop-filter:blur(12px);

    border:1px solid rgba(255,255,255,.25);

    box-shadow:
    0 8px 22px rgba(0,0,0,.08);

}

.rs-day-pill{

    background:
    linear-gradient(
        135deg,
        rgba(37,99,235,.14),
        rgba(59,130,246,.08)
    );

    color:#2563eb;

}

.rs-night-pill{

    background:
    linear-gradient(
        135deg,
        rgba(124,58,237,.14),
        rgba(168,85,247,.08)
    );

    color:#7c3aed;

}

.rs-duration-icon{

    font-size:15px;

}

/* =========================================
MODERN THEME PILLS
========================================= */

.rs-theme-pill{

    display:inline-flex;

    align-items:center;

    gap:8px;

    padding:8px 14px;

    border-radius:999px;

    font-size:12px;

    font-weight:800;

    color:#fff;

    margin-top:10px;

    box-shadow:
    0 8px 22px rgba(0,0,0,.12);

}

.rs-theme-honeymoon{

    background:
    linear-gradient(
        135deg,
        #ec4899,
        #db2777
    );

}

.rs-theme-luxury{

    background:
    linear-gradient(
        135deg,
        #f59e0b,
        #ea580c
    );

}

.rs-theme-family{

    background:
    linear-gradient(
        135deg,
        #10b981,
        #059669
    );

}

.rs-theme-adventure{

    background:
    linear-gradient(
        135deg,
        #2563eb,
        #0891b2
    );

}

.rs-theme-beach{

    background:
    linear-gradient(
        135deg,
        #06b6d4,
        #0ea5e9
    );

}

.rs-theme-default{

    background:
    linear-gradient(
        135deg,
        #64748b,
        #475569
    );

}

/* =========================================
CLEAN IMAGE RATING
========================================= */

.rs-image-rating-wrap{

    position:absolute;

    top:14px;

    right:14px;

    z-index:3;

}

.rs-image-rating{

    display:flex;

    align-items:center;

    gap:6px;

    padding:9px 14px;

    border-radius:999px;

    background:
    rgba(15,23,42,.72);

    backdrop-filter:blur(16px);

    -webkit-backdrop-filter:blur(16px);

    color:#fff;

    font-size:12px;

    font-weight:800;

    letter-spacing:.3px;

    border:
    1px solid rgba(255,255,255,.12);

    box-shadow:
    0 10px 30px rgba(0,0,0,.28);

}



/* =========================================
LOCATION
========================================= */

.rs-package-location{

    display:flex;

    align-items:center;

    gap:8px;

    font-size:14px;

    color:#6b7280;

    margin-top:6px;

}

/* DOT */

.rs-location-dot{

    opacity:.5;

}

/* =========================================
META ROW
========================================= */

.rs-meta-row{

    display:flex;

    align-items:center;

    gap:10px;

    flex-wrap:wrap;

    margin-top:14px;

}

/* MINI DURATION */

.rs-mini-duration{

    display:flex;

    align-items:center;

    gap:6px;

    padding:8px 12px;

    border-radius:999px;

    background:#f8fafc;

    font-size:12px;

    font-weight:700;

    color:#f59e0b;

}

/* NIGHT */

.rs-mini-duration.rs-night{

    color:#6366f1;

}

/* =========================================
INLINE SEASON
========================================= */

.rs-season-badge-inline{

    background:#f8fafc;

    border:1px solid #e2e8f0;

    color:#475569;

    padding:8px 12px;

    border-radius:999px;

    font-size:12px;

    font-weight:700;

}

/* =========================================
2026 LUXURY PACKAGE BADGE
========================================= */

.rs-package-badge{

    position:absolute;

    top:16px;

    left:-10px;

    z-index:5;

    display:flex;

    align-items:center;

    gap:6px;

    padding:10px 18px;

    border-radius:
    0 14px 14px 0;

    font-size:12px;

    font-weight:800;

    color:#fff;

    letter-spacing:.4px;

    backdrop-filter:blur(14px);

    overflow:hidden;

    box-shadow:
    0 12px 30px rgba(0,0,0,.22);

}

/* SHINE EFFECT */

.rs-package-badge::after{

    content:"";

    position:absolute;

    inset:0;

    background:
    linear-gradient(
        120deg,
        transparent,
        rgba(255,255,255,.25),
        transparent
    );

    transform:translateX(-120%);

    animation:rsBadgeShine 4s infinite;

}

@keyframes rsBadgeShine{

    100%{
        transform:translateX(120%);
    }

}

/* =========================================
BEST SELLER
========================================= */

.rs-package-badge.best-seller{

    background:
    linear-gradient(
        135deg,
        #f59e0b,
        #ea580c
    );

}

/* =========================================
TRENDING
========================================= */

.rs-package-badge.trending{

    background:
    linear-gradient(
        135deg,
        #ef4444,
        #dc2626
    );

}

/* =========================================
HONEYMOON
========================================= */

.rs-package-badge.honeymoon{

    background:
    linear-gradient(
        135deg,
        #ec4899,
        #db2777
    );

}

/* =========================================
LUXURY
========================================= */

.rs-package-badge.luxury{

    background:
    linear-gradient(
        135deg,
        #8b5cf6,
        #6d28d9
    );

}

/* =========================================
FAMILY
========================================= */

.rs-package-badge.family{

    background:
    linear-gradient(
        135deg,
        #10b981,
        #059669
    );

}

/* =========================================
ADVENTURE
========================================= */

.rs-package-badge.adventure{

    background:
    linear-gradient(
        135deg,
        #0ea5e9,
        #0369a1
    );

}   


/* =========================================
LIVE STATUS
========================================= */

.rs-live-status{

    margin-top:14px;

    min-height:24px;

    display:flex;

    align-items:center;

    gap:10px;

    padding:10px 14px;

    border-radius:14px;

    position:relative;

    overflow:hidden;

    font-size:13px;

    font-weight:700;

    transition:
    all .3s ease;

}

/* =========================================
LIVE TEXT
========================================= */

.rs-live-status-text{

    white-space:nowrap;

}

/* =========================================
LIVE DOT
========================================= */

.rs-live-dot{

    width:10px;

    height:10px;

    border-radius:50%;

    background:#10b981;

    position:relative;

    flex-shrink:0;

}

/* PULSE */

.rs-live-dot::after{

    content:"";

    position:absolute;

    inset:-4px;

    border-radius:50%;

    background:
    rgba(16,185,129,.35);

    animation:
    rsLivePulse 1.8s infinite;

}

@keyframes rsLivePulse{

    0%{

        transform:scale(.6);
        opacity:1;

    }

    100%{

        transform:scale(2);
        opacity:0;

    }

}

/* =========================================
TYPING CURSOR
========================================= */

.rs-live-status.typing::after{

    content:"|";

    animation:
    rsCursorBlink .7s infinite;

}

@keyframes rsCursorBlink{

    0%{
        opacity:1;
    }

    50%{
        opacity:0;
    }

    100%{
        opacity:1;
    }

}

/* =========================================
FADE EFFECT
========================================= */

.rs-live-status.fade{

    opacity:.65;

    transform:translateY(3px);

}

/* LOW */

.rs-urgency-low{

    background:
    rgba(16,185,129,.10);

    color:#047857;

    border:
    1px solid rgba(16,185,129,.25);

}

/* MEDIUM */

.rs-urgency-medium{

    background:
    rgba(245,158,11,.12);

    color:#d97706;

    border:
    1px solid rgba(245,158,11,.25);

}

/* HIGH */

.rs-urgency-high{

    background:
    rgba(239,68,68,.12);

    color:#dc2626;

    border:
    1px solid rgba(239,68,68,.25);

    animation:
    rsUrgencyPulse 1.5s infinite;

}

@keyframes rsUrgencyPulse{

    0%{
        transform:scale(1);
    }

    50%{
        transform:scale(1.02);
    }

    100%{
        transform:scale(1);
    }

}

/* =========================================
WHATSAPP BUTTON ROTATION
========================================= */

.rs-wa-btn-text{

    display:inline-block;

    transition:
    all .3s ease;

}

/* CHANGE EFFECT */

.rs-wa-changing{

    opacity:.4;

    transform:translateY(2px);

}

/* =========================================
OFFER PILL
========================================= */

.rs-offer-pill{

    display:inline-flex;

    align-items:center;

    gap:6px;

    padding:8px 14px;

    border-radius:999px;

    font-size:12px;

    font-weight:700;

    margin-top:14px;

    width:max-content;

}

/* HOT */

.rs-offer-hot{

    background:
    rgba(239,68,68,.12);

    color:#dc2626;

}

/* WARM */

.rs-offer-warm{

    background:
    rgba(245,158,11,.12);

    color:#d97706;

}

/* COOL */

.rs-offer-cool{

    background:
    rgba(59,130,246,.12);

    color:#2563eb;

}

/* DANGER */

.rs-offer-danger{

    background:
    rgba(220,38,38,.12);

    color:#b91c1c;

    animation:
    rsOfferPulse 1.6s infinite;

}

@keyframes rsOfferPulse{

    0%{
        transform:scale(1);
    }

    50%{
        transform:scale(1.03);
    }

    100%{
        transform:scale(1);
    }

}

/* =========================================
AI MATCH CARD
========================================= */

.rs-ai-match-card{

    position:relative;

    display:flex;

    align-items:center;

    gap:20px;

    padding:24px;

    border-radius:28px;

    margin-top:16px;

    overflow:hidden;

    background:
    linear-gradient(
        135deg,
        rgba(17,24,39,.96),
        rgba(30,41,59,.94)
    );

    border:
    1px solid rgba(255,255,255,.08);

    box-shadow:
    0 10px 40px rgba(0,0,0,.35);

}

/* GLOW */

.rs-ai-match-card::before{

    content:"";

    position:absolute;

    top:-80px;
    right:-80px;

    width:220px;
    height:220px;

    border-radius:50%;

    background:
    radial-gradient(
        circle,
        rgba(99,102,241,.35),
        transparent 70%
    );

}

/* =========================================
LEFT
========================================= */

.rs-ai-match-left{

    flex-shrink:0;

}

/* =========================================
RING
========================================= */

.rs-ai-match-ring{

    width:110px;
    height:110px;

    border-radius:50%;

    display:flex;

    align-items:center;

    justify-content:center;

    background:
    conic-gradient(
        #8b5cf6 0%,
        #ec4899 35%,
        #06b6d4 70%,
        #10b981 100%
    );

    padding:6px;

    animation:
    rsSpinGlow 8s linear infinite;

}

.rs-ai-match-inner{

    width:100%;
    height:100%;

    border-radius:50%;

    background:#0f172a;

    display:flex;

    align-items:center;

    justify-content:center;

    flex-direction:column;

    color:#fff;

    font-size:34px;

    font-weight:800;

}

.rs-ai-match-inner span{

    font-size:16px;

    opacity:.7;

}

/* =========================================
RIGHT
========================================= */

.rs-ai-match-right{

    flex:1;

}

/* TITLE */

.rs-ai-match-title{

    font-size:20px;

    font-weight:800;

    color:#fff;

    margin-bottom:8px;

}

/* SUBTITLE */

.rs-ai-match-subtitle{

    font-size:15px;

    line-height:1.6;

    color:rgba(255,255,255,.75);

    margin-bottom:16px;

}

/* TAGS */

.rs-ai-match-tags{

    display:flex;

    flex-wrap:wrap;

    gap:10px;

}

.rs-ai-match-tags span{

    padding:10px 14px;

    border-radius:999px;

    font-size:13px;

    font-weight:700;

    color:#fff;

    background:
    rgba(255,255,255,.08);

    border:
    1px solid rgba(255,255,255,.08);

    backdrop-filter:blur(10px);

}

/* =========================================
ANIMATION
========================================= */

@keyframes rsSpinGlow{

    from{

        transform:rotate(0deg);

    }

    to{

        transform:rotate(360deg);

    }

}

/* =========================================
MOBILE
========================================= */

@media(max-width:768px){

    .rs-ai-match-card{

        flex-direction:column;

        text-align:center;

    }

    .rs-ai-match-tags{

        justify-content:center;

    }

}

/* =========================================
2026 LIVE BOOKING FEED
========================================= */

.rs-live-feed-wrap{

    display:flex;
    flex-direction:column;
    gap:14px;

    margin-top:18px;
    margin-bottom:28px;

}

/* CARD */

.rs-live-feed-card{

    position:relative;

    display:flex;
    align-items:center;
    gap:14px;

    padding:16px 18px;

    border-radius:24px;

    background:
    rgba(255,255,255,.75);

    backdrop-filter:blur(20px);

    border:
    1px solid rgba(255,255,255,.5);

    box-shadow:
    0 10px 30px rgba(0,0,0,.08);

    overflow:hidden;

    animation:
    rsFeedFade .5s ease;

}

/* GLOW */

.rs-live-feed-card::before{

    content:"";

    position:absolute;
    inset:0;

    background:
    linear-gradient(
        90deg,
        transparent,
        rgba(255,255,255,.4),
        transparent
    );

    transform:translateX(-100%);

    animation:
    rsFeedShine 4s linear infinite;

}

/* LEFT */

.rs-live-feed-left{

    width:54px;
    height:54px;

    border-radius:18px;

    display:flex;
    align-items:center;
    justify-content:center;

    font-size:24px;

    background:
    linear-gradient(
        135deg,
        #2563eb,
        #7c3aed
    );

    color:#fff;

    flex-shrink:0;

    box-shadow:
    0 8px 20px rgba(37,99,235,.25);

}

/* CONTENT */

.rs-live-feed-content{

    flex:1;

}

/* TITLE */

.rs-live-feed-title{

    font-size:15px;
    font-weight:700;

    color:#111827;

    margin-bottom:6px;

}

/* SUB */

.rs-live-feed-sub{

    font-size:13px;

    color:#6b7280;

}

/* LIVE DOT */

.rs-live-feed-live{

    display:flex;
    align-items:center;
    gap:6px;

    font-size:12px;
    font-weight:700;

    color:#ef4444;

}

/* DOT */

.rs-live-feed-dot{

    width:10px;
    height:10px;

    border-radius:50%;

    background:#ef4444;

    animation:
    rsPulse 1.2s infinite;

}

/* ANIMATION */

@keyframes rsPulse{

    0%{
        transform:scale(1);
        opacity:1;
    }

    50%{
        transform:scale(1.5);
        opacity:.4;
    }

    100%{
        transform:scale(1);
        opacity:1;
    }

}

@keyframes rsFeedFade{

    from{
        opacity:0;
        transform:
        translateY(20px);
    }

    to{
        opacity:1;
        transform:
        translateY(0);
    }

}

@keyframes rsFeedShine{

    to{
        transform:
        translateX(100%);
    }

}


/* =====================================
FULLSCREEN GALLERY
===================================== */

.rs-fullscreen-gallery{

    position:fixed;

    inset:0;

    background:
    rgba(0,0,0,.96);

    z-index:999999;

    display:flex;

    align-items:center;

    justify-content:center;

    opacity:0;

    visibility:hidden;

    transition:.35s;

}

/* ACTIVE */

.rs-fullscreen-gallery.active{

    opacity:1;

    visibility:visible;

}

/* IMAGE */

.rs-fullscreen-gallery img{

    max-width:92%;

    max-height:88vh;

    border-radius:24px;

    object-fit:cover;

    box-shadow:
    0 20px 80px rgba(0,0,0,.5);

    animation:
    rsZoomGallery .35s ease;

}

/* CLOSE */

.rs-fullscreen-close{

    position:absolute;

    top:24px;
    right:24px;

    width:52px;
    height:52px;

    border-radius:50%;

    display:flex;

    align-items:center;

    justify-content:center;

    background:
    rgba(255,255,255,.12);

    backdrop-filter:blur(10px);

    color:#fff;

    font-size:22px;

    cursor:pointer;

    z-index:2;

}

/* NAV */

.rs-fullscreen-nav{

    position:absolute;

    top:50%;

    transform:translateY(-50%);

    width:64px;
    height:64px;

    border-radius:50%;

    display:flex;

    align-items:center;

    justify-content:center;

    background:
    rgba(255,255,255,.12);

    backdrop-filter:blur(12px);

    color:#fff;

    font-size:34px;

    cursor:pointer;

    user-select:none;

    z-index:2;

}

/* PREV */

.rs-prev{

    left:24px;

}

/* NEXT */

.rs-next{

    right:24px;

}

/* COUNTER */

.rs-fullscreen-counter{

    position:absolute;

    top:24px;

    left:50%;

    transform:translateX(-50%);

    padding:12px 22px;

    border-radius:999px;

    background:
    rgba(255,255,255,.12);

    backdrop-filter:blur(12px);

    color:#fff;

    font-size:14px;

    font-weight:700;

}

/* GALLERY IMAGE */

.rs-gallery-image{

    cursor:pointer;

    transition:.35s;

}

.rs-gallery-image:hover{

    transform:
    scale(1.04);

}

/* ANIMATION */

@keyframes rsZoomGallery{

    from{

        opacity:0;

        transform:
        scale(.9);

    }

    to{

        opacity:1;

        transform:
        scale(1);

    }

}

/* MOBILE */

@media(max-width:768px){

    .rs-fullscreen-nav{

        width:52px;
        height:52px;

        font-size:26px;

    }

}


/* =========================================
LEAD OVERLAY
========================================= */

.rs-lead-overlay{

    position:fixed;
    inset:0;

    background:rgba(0,0,0,.65);

    backdrop-filter:blur(10px);

    z-index:999999;

    display:flex;
    align-items:center;
    justify-content:center;

    padding:20px;

    opacity:0;
    visibility:hidden;

    transition:.3s;

}

/* ACTIVE */

.rs-lead-overlay.active{

    opacity:1;
    visibility:visible;

}

/* =========================================
POPUP
========================================= */

.rs-lead-popup{

    width:100%;
    max-width:520px;

    max-height:90vh;

    overflow-y:auto;

    background:#fff;

    border-radius:32px;

    padding:28px;

    position:relative;

    box-shadow:
    0 30px 80px rgba(0,0,0,.25);

    animation:rsPopup .35s ease;

}

/* =========================================
SCROLLBAR
========================================= */

.rs-lead-popup::-webkit-scrollbar{

    width:6px;

}

.rs-lead-popup::-webkit-scrollbar-thumb{

    background:#d1d5db;

    border-radius:20px;

}

/* =========================================
ANIMATION
========================================= */

@keyframes rsPopup{

    from{

        transform:translateY(40px) scale(.95);

        opacity:0;

    }

    to{

        transform:none;

        opacity:1;

    }

}

/* =========================================
CLOSE
========================================= */

.rs-lead-close{

    position:absolute;
    top:18px;
    right:18px;

    width:42px;
    height:42px;

    border:none;

    border-radius:50%;

    background:#f3f4f6;

    cursor:pointer;

    font-size:18px;

}

/* =========================================
HEADER
========================================= */

.rs-lead-header{

    text-align:center;

    margin-bottom:24px;

}

.rs-lead-badge{

    display:inline-flex;
    align-items:center;
    gap:8px;

    background:linear-gradient(
        135deg,
        #7c3aed,
        #2563eb
    );

    color:#fff;

    padding:10px 18px;

    border-radius:999px;

    font-size:13px;
    font-weight:700;

    margin-bottom:18px;

}

.rs-lead-title{

    font-size:32px;
    font-weight:800;

    color:#111827;

    margin-bottom:10px;

}

.rs-lead-sub{

    color:#6b7280;

    font-size:15px;
    line-height:1.7;

}

/* =========================================
FORM
========================================= */

.rs-lead-form{

    display:flex;
    flex-direction:column;

    gap:16px;

}

/* =========================================
INPUTS
========================================= */

.rs-lead-form input,
.rs-lead-form select{

    width:100%;

    height:58px;

    border:1px solid #e5e7eb;

    border-radius:18px;

    padding:0 18px;

    font-size:15px;

    background:#f9fafb;

    outline:none;

    transition:.25s;

}

.rs-lead-form input:focus,
.rs-lead-form select:focus{

    border-color:#7c3aed;

    background:#fff;

    box-shadow:
    0 0 0 4px rgba(124,58,237,.12);

}

/* =========================================
GRID
========================================= */

.rs-lead-grid{

    display:grid;

    grid-template-columns:1fr 1fr 1fr;

    gap:12px;

}

/* =========================================
BUTTON
========================================= */

.rs-lead-submit{

    height:60px;

    border:none;

    border-radius:20px;

    background:linear-gradient(
        135deg,
        #7c3aed,
        #2563eb
    );

    color:#fff;

    font-size:16px;
    font-weight:700;

    cursor:pointer;

    transition:.3s;

}

.rs-lead-submit:hover{

    transform:translateY(-2px);

    box-shadow:
    0 20px 40px rgba(37,99,235,.25);

}

/* =========================================
MOBILE
========================================= */

@media(max-width:768px){

    .rs-lead-popup{

        padding:22px;

        border-radius:28px;

    }

    .rs-lead-grid{

        grid-template-columns:1fr;

    }

}

/* =========================================
TOAST
========================================= */

.rs-toast{

    position:fixed;

    top:30px;
    right:30px;

    background:#111827;

    color:#fff;

    padding:16px 22px;

    border-radius:18px;

    display:flex;

    align-items:center;

    gap:12px;

    z-index:999999;

    font-size:15px;

    font-weight:600;

    box-shadow:
    0 20px 50px rgba(0,0,0,.35);

    transform:
    translateY(-30px);

    opacity:0;

    pointer-events:none;

    transition:.4s;

    min-width:260px;

}

/* ACTIVE */

.rs-toast.active{

    transform:
    translateY(0);

    opacity:1;

}

/* ICON */

.rs-toast-icon{

    width:38px;
    height:38px;

    border-radius:50%;

    display:flex;
    align-items:center;
    justify-content:center;

    background:
    linear-gradient(
        135deg,
        #10b981,
        #059669
    );

    font-size:18px;

    flex-shrink:0;

}

/* TEXT */

.rs-toast-text{

    line-height:1.4;

}

.rs-ai-urgency{

    background:#fff3cd;
    color:#856404;
    padding:10px;
    border-radius:10px;
    margin-top:12px;
    font-size:13px;
    font-weight:600;
    text-align:center;

}

/* =========================================
AI LIVE CARDS
========================================= */

.rs-ai-live-wrap{

    display:flex;
    gap:10px;
    margin-top:14px;

}

.rs-ai-live-card{

    flex:1;
    background:#fff7eb;
    border:1px solid #ffe2b5;
    padding:10px;
    border-radius:12px;
    font-size:13px;
    font-weight:600;
    color:#ff6b00;

}

/* =========================================
AI RECOMMEND
========================================= */

.rs-ai-recommend{

    margin-top:14px;
    background:#f4f7ff;
    border:1px solid #dbe5ff;
    padding:12px;
    border-radius:14px;
    font-size:13px;
    line-height:1.5;

}

/* =========================================
PERSONA
========================================= */

.rs-ai-persona{

    margin-top:12px;
    background:#f8f5ff;
    border:1px solid #e7ddff;
    padding:12px;
    border-radius:14px;
    font-size:13px;

}

/* =========================================
AI SCORE
========================================= */

.rs-ai-score-wrap{

    margin-top:16px;

}

.rs-ai-score-label{

    font-size:13px;
    margin-bottom:8px;
    font-weight:600;

}

.rs-ai-score-bar{

    height:10px;
    background:#eee;
    border-radius:50px;
    overflow:hidden;

}

.rs-ai-score-fill{

    height:100%;
    width:92%;
    background:linear-gradient(
        90deg,
        #00c853,
        #00e676
    );

    border-radius:50px;

}

.rs-ai-score-text{

    margin-top:6px;
    font-size:12px;
    color:#00a651;
    font-weight:700;

}

/* =========================================
TYPING
========================================= */

.rs-ai-typing{

    margin-top:16px;
    display:flex;
    align-items:center;
    gap:6px;
    font-size:13px;
    color:#666;

}

.rs-ai-typing span{

    width:6px;
    height:6px;
    border-radius:50%;
    background:#25d366;
    animation:typingBounce 1s infinite;

}

.rs-ai-typing span:nth-child(2){

    animation-delay:0.2s;

}

.rs-ai-typing span:nth-child(3){

    animation-delay:0.4s;

}

@keyframes typingBounce{

    0%,80%,100%{

        transform:translateY(0);

    }

    40%{

        transform:translateY(-5px);

    }

}

/* =========================================
RENTAL PREMIUM PRICE
========================================= */

.rsr-price-box{

    display:flex;

    flex-direction:column;

    gap:12px;
}

/* TOP */

.rsr-price-top{

    display:flex;

    align-items:center;

    gap:12px;

    flex-wrap:wrap;
}

/* SAVE */

.rsr-save-badge{

    padding:8px 16px;

    border-radius:999px;

    background:
        linear-gradient(
            135deg,
            #ef4444,
            #dc2626
        );

    color:#fff;

    font-size:12px;

    font-weight:900;

    box-shadow:
        0 10px 24px rgba(239,68,68,.3);

    animation:
        rsrPricePulse 2s infinite;
}

/* OLD */

.rsr-old-price{

    font-size:15px;

    font-weight:700;

    color:#94a3b8;

    text-decoration:line-through;
}

/* MAIN */

.rsr-new-price{

    font-size:52px;

    line-height:1;

    font-weight:900;

    letter-spacing:-2px;

    background:
        linear-gradient(
            135deg,
            #f59e0b,
            #ea580c
        );

    background-clip:text;

    -webkit-background-clip:text;

    color:transparent;
}

/* SUB */

.rsr-price-sub{

    display:flex;

    flex-wrap:wrap;

    gap:10px;

    align-items:center;
}

/* PILLS */

.rsr-info-pill{

    padding:10px 16px;

    border-radius:999px;

    font-size:12px;

    font-weight:800;

    display:flex;

    align-items:center;

    gap:8px;
}

/* RED */

.rsr-pill-red{

    background:#fee2e2;

    color:#dc2626;
}

/* ORANGE */

.rsr-pill-orange{

    background:#ffedd5;

    color:#ea580c;
}

/* GREEN */

.rsr-pill-green{

    background:#dcfce7;

    color:#16a34a;
}

/* BLUE */

.rsr-pill-blue{

    background:#dbeafe;

    color:#2563eb;
}

/* YELLOW */

.rsr-pill-yellow{

    background:#fef3c7;

    color:#b45309;
}

/* PULSE */

@keyframes rsrPricePulse{

    0%{

        transform:scale(1);
    }

    50%{

        transform:scale(1.05);
    }

    100%{

        transform:scale(1);
    }
}

/* =========================================
MOBILE
========================================= */

@media(max-width:768px){

    .rsr-new-price{

        font-size:40px;
    }

}