.elementor-29 .elementor-element.elementor-element-462298e{width:100%;max-width:100%;margin:-10px 0px calc(var(--kit-widget-spacing, 0px) + -86px) 0px;}/* Start custom CSS for html, class: .elementor-element-462298e *//* =========================================================
   VOYANEST — HISTORICAL MONUMENTS
   PREMIUM RESPONSIVE CSS
   ========================================================= */


/* =========================================================
   ROOT
   ========================================================= */

:root {
    --teal: #0F4C5C;
    --dark-teal: #082F3A;

    --gold: #E8B86D;
    --gold-dark: #C8944D;

    --cream: #F8F6F1;
    --white: #FFFFFF;

    --text: #1E2933;
    --muted: #69767C;

    --border: #E6E1D8;

    --radius: 22px;

    --shadow:
        0 18px 45px rgba(15, 76, 92, 0.10);
}


/* =========================================================
   RESET
   ========================================================= */

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
}

html,
body {
    width: 100%;
    max-width: 100%;
    overflow-x: hidden;
}

body {
    font-family: "DM Sans", sans-serif;
    background: var(--cream);
    color: var(--text);
    line-height: 1.7;
}

img {
    width: 100%;
    display: block;
    object-fit: cover;
}

a {
    text-decoration: none;
    color: inherit;
}


/* =========================================================
   CONTAINER
   ========================================================= */

.container {
    width: min(1180px, 90%);
    margin: 0 auto;
}


/* =========================================================
   HERO
   ========================================================= */

.monument-hero {
    width: 100% !important;
    max-width: none !important;

    height: 680px;
    min-height: 680px;

    position: relative;

    display: flex;
    align-items: center;

    color: white;

    background-image:
        url("https://images.unsplash.com/photo-1564507592333-c60657eea523?auto=format&fit=crop&w=2000&q=90");

    background-size: cover;
    background-position: center;

    overflow: hidden;
}


/* Cinematic image movement */

.monument-hero::before {
    content: "";
    position: absolute;
    inset: -3%;

    background-image:
        url("https://images.unsplash.com/photo-1564507592333-c60657eea523?auto=format&fit=crop&w=2000&q=90");

    background-size: cover;
    background-position: center;

    z-index: 0;

    animation: heroZoom 12s ease-out forwards;
}

@keyframes heroZoom {

    from {
        transform: scale(1.08);
    }

    to {
        transform: scale(1);
    }

}


/* Hero dark overlay */

.hero-overlay {
    position: absolute;
    inset: 0;

    background:
        linear-gradient(
            90deg,
            rgba(5, 33, 40, 0.88),
            rgba(5, 33, 40, 0.48),
            rgba(5, 33, 40, 0.12)
        );

    z-index: 1;

    pointer-events: none;
}


/* Hero content */

.hero-content {
    width: min(1180px, 90%);

    margin: 0 auto;

    position: relative;

    z-index: 3;

    padding-top: 40px;

    animation:
        heroContentReveal
        1s
        cubic-bezier(.22,1,.36,1)
        both;
}

@keyframes heroContentReveal {

    from {
        opacity: 0;
        transform: translateY(40px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }

}


/* Eyebrow */

.eyebrow {
    display: inline-block;

    color: var(--gold);

    font-size: 11px;

    letter-spacing: 3px;

    font-weight: 700;

    animation:
        fadeUp
        .8s
        ease
        .15s
        both;
}


/* Hero title */

.hero-content h1 {
    font-family: "Playfair Display", serif;

    font-size: clamp(55px, 8vw, 90px);

    line-height: 1.02;

    margin: 18px 0;

    font-weight: 600;

    animation:
        fadeUp
        .9s
        ease
        .3s
        both;
}

.hero-content h1 em {
    color: var(--gold);
    font-weight: 500;
}


/* Hero paragraph */

.hero-content p {
    max-width: 570px;

    color: rgba(255,255,255,.82);

    font-size: 16px;

    margin-bottom: 30px;

    animation:
        fadeUp
        .9s
        ease
        .5s
        both;
}


/* Hero button */

.hero-button {
    display: inline-flex;

    padding: 14px 24px;

    background: var(--gold);

    color: white;

    border-radius: 50px;

    font-size: 13px;

    font-weight: 700;

    transition:
        transform .35s ease,
        background .35s ease,
        box-shadow .35s ease;

    animation:
        fadeUp
        .9s
        ease
        .7s
        both;
}

.hero-button:hover {
    background: white;

    color: var(--teal);

    transform: translateY(-4px);

    box-shadow:
        0 12px 30px rgba(0,0,0,.18);
}


/* Hero location */

.hero-location {
    position: absolute;

    bottom: 30px;

    right: 5%;

    z-index: 3;

    font-size: 10px;

    letter-spacing: 3px;

    opacity: .7;

    animation:
        fadeIn
        1.2s
        ease
        1s
        both;
}


/* Common animations */

@keyframes fadeUp {

    from {
        opacity: 0;
        transform: translateY(25px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }

}

@keyframes fadeIn {

    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }

}


/* =========================================================
   INTRO
   ========================================================= */

.intro-section {
    padding: 100px 0;
    background: var(--cream);
}

.intro-grid {
    display: grid;

    grid-template-columns: 1fr 1fr;

    gap: 90px;

    align-items: center;
}

.section-label {
    color: var(--gold-dark);

    font-size: 10px;

    letter-spacing: 3px;

    font-weight: 700;
}

.intro-title h2 {
    font-family: "Playfair Display", serif;

    font-size: clamp(40px, 5vw, 62px);

    line-height: 1.15;

    margin-top: 12px;
}

.intro-title h2 span {
    color: var(--teal);
    font-style: italic;
}

.intro-text p {
    color: var(--muted);

    font-size: 16px;

    margin-bottom: 18px;

    max-width: 540px;
}


/* =========================================================
   MONUMENT SECTION
   ========================================================= */

.monuments-section {
    padding: 100px 0;
    background: white;
}

.international {
    background: var(--cream);
}

.section-heading {
    display: flex;

    justify-content: space-between;

    align-items: end;

    gap: 40px;

    margin-bottom: 45px;
}

.section-heading h2 {
    font-family: "Playfair Display", serif;

    font-size: clamp(40px, 5vw, 58px);

    line-height: 1.15;

    margin-top: 10px;
}

.section-heading h2 span {
    color: var(--teal);
    font-style: italic;
}

.section-heading > p {
    color: var(--muted);

    max-width: 390px;

    font-size: 14px;
}


/* =========================================================
   FEATURED MONUMENT
   ========================================================= */

.featured-monument {
    display: grid;

    grid-template-columns: 1.15fr .85fr;

    min-height: 540px;

    background: var(--cream);

    border-radius: 25px;

    overflow: hidden;

    margin-bottom: 25px;

    transition:
        transform .45s ease,
        box-shadow .45s ease;
}

.featured-monument:hover {
    transform: translateY(-5px);

    box-shadow:
        0 25px 55px rgba(15,76,92,.12);
}

.featured-image {
    position: relative;

    min-height: 500px;

    overflow: hidden;
}

.featured-image img {
    height: 100%;

    transition:
        transform .8s cubic-bezier(.22,1,.36,1);
}

.featured-monument:hover .featured-image img {
    transform: scale(1.05);
}

.image-tag {
    position: absolute;

    left: 25px;

    bottom: 25px;

    background: white;

    color: var(--teal);

    padding: 8px 15px;

    border-radius: 30px;

    font-size: 9px;

    letter-spacing: 2px;

    font-weight: 700;
}

.featured-content {
    padding: 55px 50px;

    display: flex;

    flex-direction: column;

    justify-content: center;
}

.number {
    color: var(--gold-dark);

    font-size: 12px;

    letter-spacing: 2px;

    font-weight: 700;
}

.featured-content h3 {
    font-family: "Playfair Display", serif;

    font-size: 48px;

    line-height: 1.1;

    margin-top: 8px;
}

.place {
    color: var(--teal);

    font-size: 13px;

    font-weight: 600;

    margin: 8px 0 20px;
}

.featured-content > p {
    color: var(--muted);

    font-size: 14px;
}

.monument-facts {
    display: flex;

    gap: 35px;

    border-top: 1px solid var(--border);

    border-bottom: 1px solid var(--border);

    margin: 25px 0;

    padding: 18px 0;
}

.monument-facts strong {
    display: block;

    color: var(--teal);

    font-family: "Playfair Display", serif;

    font-size: 21px;
}

.monument-facts span {
    font-size: 10px;

    color: var(--muted);
}

.learn-more {
    color: var(--teal);

    font-size: 13px;

    font-weight: 700;

    transition:
        color .3s ease,
        transform .3s ease;
}

.learn-more:hover {
    color: var(--gold-dark);

    transform: translateX(5px);
}


/* =========================================================
   INDIA MONUMENT GRID
   ========================================================= */

.monument-grid {
    display: grid;

    grid-template-columns: repeat(2, 1fr);

    gap: 25px;
}

.monument-card {
    background: var(--cream);

    border-radius: var(--radius);

    overflow: hidden;

    transition:
        transform .4s ease,
        box-shadow .4s ease;
}

.monument-card:hover {
    transform: translateY(-8px);

    box-shadow: var(--shadow);
}

.card-image {
    height: 280px;

    position: relative;

    overflow: hidden;
}

.card-image img {
    height: 100%;

    transition:
        transform .7s cubic-bezier(.22,1,.36,1);
}

.monument-card:hover .card-image img {
    transform: scale(1.07);
}

.country-tag {
    position: absolute;

    top: 18px;

    left: 18px;

    background: white;

    color: var(--teal);

    padding: 6px 12px;

    border-radius: 30px;

    font-size: 9px;

    letter-spacing: 2px;

    font-weight: 700;
}

.card-content {
    padding: 28px;
}

.card-number {
    color: var(--gold-dark);

    font-size: 11px;

    font-weight: 700;

    letter-spacing: 2px;
}

.card-content h3 {
    font-family: "Playfair Display", serif;

    font-size: 30px;

    line-height: 1.2;

    margin: 5px 0;
}

.location {
    color: var(--teal);

    font-size: 12px;

    font-weight: 600;
}

.card-content p {
    color: var(--muted);

    font-size: 13px;

    margin: 12px 0;
}

.card-content a {
    color: var(--teal);

    font-size: 12px;

    font-weight: 700;

    transition:
        color .3s ease,
        letter-spacing .3s ease;
}

.card-content a:hover {
    color: var(--gold-dark);

    letter-spacing: .4px;
}


/* =========================================================
   QUOTE SECTION
   ========================================================= */

.quote-section {
    height: 480px;

    position: relative;

    display: flex;

    align-items: center;

    justify-content: center;

    text-align: center;

    color: white;

    background-image:
        url("https://images.unsplash.com/photo-1526392060635-9d6019884377?auto=format&fit=crop&w=1800&q=85");

    background-size: cover;

    background-position: center;

    overflow: hidden;
}

.quote-overlay {
    position: absolute;

    inset: 0;

    background: rgba(4,35,43,.65);
}

.quote-content {
    position: relative;

    z-index: 2;

    padding: 20px;

    animation:
        fadeUp
        1s
        ease
        both;
}

.quote-content span {
    color: var(--gold);

    font-size: 10px;

    letter-spacing: 3px;

    font-weight: 700;
}

.quote-content h2 {
    font-family: "Playfair Display", serif;

    font-size: clamp(40px, 6vw, 65px);

    line-height: 1.15;

    margin-top: 15px;
}


/* =========================================================
   INTERNATIONAL CARDS
   ========================================================= */

.international-grid {
    display: grid;

    grid-template-columns: repeat(3, 1fr);

    gap: 22px;
}

.world-card {
    background: white;

    border-radius: var(--radius);

    overflow: hidden;

    transition:
        transform .4s ease,
        box-shadow .4s ease;

    box-shadow:
        0 5px 25px rgba(15,76,92,.04);
}

.world-card:hover {
    transform: translateY(-8px);

    box-shadow: var(--shadow);
}

.world-image {
    height: 350px;

    position: relative;

    overflow: hidden;
}

.world-image img {
    height: 100%;

    transition:
        transform .7s cubic-bezier(.22,1,.36,1);
}

.world-card:hover .world-image img {
    transform: scale(1.07);
}

.world-overlay {
    position: absolute;

    inset: 0;

    background:
        linear-gradient(
            to top,
            rgba(3,27,34,.85),
            transparent 65%
        );
}

.world-info {
    position: absolute;

    left: 23px;

    bottom: 22px;

    color: white;

    z-index: 2;
}

.world-info span {
    color: var(--gold);

    font-size: 9px;

    letter-spacing: 3px;

    font-weight: 700;
}

.world-info h3 {
    font-family: "Playfair Display", serif;

    font-size: 30px;

    line-height: 1.2;

    margin-top: 4px;
}

.world-info p {
    font-size: 11px;

    opacity: .8;
}

.world-bottom {
    padding: 22px;
}

.world-bottom p {
    color: var(--muted);

    font-size: 13px;

    margin-bottom: 12px;
}

.world-bottom a {
    color: var(--teal);

    font-size: 12px;

    font-weight: 700;

    transition:
        color .3s ease,
        transform .3s ease;
}

.world-bottom a:hover {
    color: var(--gold-dark);
}


/* =========================================================
   CTA — FULL WIDTH
   ========================================================= */

.monument-cta {
    width: 100% !important;

    max-width: none !important;

    margin: 0 !important;

    padding: 110px 0;

    background: var(--teal) !important;

    color: white;

    text-align: center;

    position: relative;

    overflow: hidden;
}


/* Decorative glow */

.monument-cta::before {
    content: "";

    position: absolute;

    width: 420px;
    height: 420px;

    border-radius: 50%;

    background:
        radial-gradient(
            circle,
            rgba(232,184,109,.14),
            transparent 70%
        );

    top: -220px;
    right: -120px;

    pointer-events: none;
}


/* CTA content */

.monument-cta .container {
    position: relative;

    z-index: 2;

    animation:
        ctaReveal
        1s
        ease-out
        both;
}

@keyframes ctaReveal {

    from {
        opacity: 0;
        transform: translateY(35px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }

}

.monument-cta h2 {
    font-family: "Playfair Display", serif;

    font-size: clamp(42px, 6vw, 68px);

    line-height: 1.1;

    margin: 15px 0;
}

.monument-cta h2 span {
    color: var(--gold);

    font-style: italic;
}

.monument-cta p {
    max-width: 550px;

    margin: 0 auto 30px;

    color: rgba(255,255,255,.7);

    font-size: 14px;
}

.cta-button {
    display: inline-flex;

    padding: 14px 25px;

    background: var(--gold);

    color: white;

    border-radius: 50px;

    font-size: 13px;

    font-weight: 700;

    transition:
        transform .35s ease,
        background .35s ease,
        box-shadow .35s ease;
}

.cta-button:hover {
    background: white;

    color: var(--teal);

    transform: translateY(-5px);

    box-shadow:
        0 12px 30px rgba(0,0,0,.18);
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 900px) {

    .monument-hero {
        height: 600px;
        min-height: 600px;
    }

    .intro-grid {
        grid-template-columns: 1fr;
        gap: 30px;
    }

    .featured-monument {
        grid-template-columns: 1fr;
    }

    .featured-image {
        min-height: 400px;
    }

    .international-grid {
        grid-template-columns: 1fr 1fr;
    }

}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 600px) {

    .container {
        width: 88%;
    }

    .monument-hero {
        height: 650px;
        min-height: 650px;

        background-position: 62% center;
    }

    .monument-hero::before {
        background-position: 62% center;
    }

    .hero-content {
        width: 86%;
        padding-top: 20px;
    }

    .hero-content h1 {
        font-size: 50px;
    }

    .hero-content p {
        font-size: 14px;
    }

    .hero-location {
        right: 6%;
        bottom: 25px;
        font-size: 8px;
    }

    .intro-section {
        padding: 75px 0;
    }

    .monuments-section {
        padding: 75px 0;
    }

    .section-heading {
        display: block;
    }

    .section-heading > p {
        margin-top: 15px;
    }

    .monument-grid {
        grid-template-columns: 1fr;
    }

    .international-grid {
        grid-template-columns: 1fr;
    }

    .featured-content {
        padding: 35px 25px;
    }

    .featured-content h3 {
        font-size: 38px;
    }

    .card-image {
        height: 300px;
    }

    .world-image {
        height: 330px;
    }

    .quote-section {
        height: 400px;
    }

    .quote-content h2 {
        font-size: 40px;
    }

    .monument-cta {
        padding: 80px 0;
    }

    .monument-cta h2 {
        font-size: 42px;
    }

}


/* =========================================================
   SMALL MOBILE
   ========================================================= */

@media (max-width: 400px) {

    .hero-content h1 {
        font-size: 43px;
    }

    .featured-content h3 {
        font-size: 34px;
    }

    .card-image {
        height: 250px;
    }

    .world-image {
        height: 300px;
    }

    .monument-cta h2 {
        font-size: 36px;
    }

}
/* ==========================================
   FINAL FULL WIDTH FIX
   ========================================== */

html,
body {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow-x: hidden !important;
}


/* ===== HERO FULL WIDTH ===== */

body .monument-hero {
    width: 100vw !important;
    max-width: 100vw !important;

    margin-left: 0 !important;
    margin-right: 0 !important;
    margin-top: 0 !important;

    padding-left: 0 !important;
    padding-right: 0 !important;

    border-radius: 0 !important;

    box-sizing: border-box !important;
}


/* Hero content ko andar hi spacing milegi */

body .monument-hero .hero-content {
    width: 90% !important;
    max-width: 1180px !important;

    margin-left: auto !important;
    margin-right: auto !important;
}


/* ===== CTA FULL WIDTH ===== */

body .monument-cta {
    width: 100vw !important;
    max-width: 100vw !important;

    margin-left: 0 !important;
    margin-right: 0 !important;

    padding-left: 0 !important;
    padding-right: 0 !important;

    border-radius: 0 !important;

    box-sizing: border-box !important;

    background: #0F4C5C !important;
}


/* CTA container ki width maintain rahegi */

body .monument-cta .container {
    width: 90% !important;
    max-width: 1180px !important;

    margin-left: auto !important;
    margin-right: auto !important;
}


/* ===== NO WHITE OVERLAY ON CTA ===== */

body .monument-cta::before {
    pointer-events: none !important;
}


/* ===== HERO IMAGE ===== */

body .monument-hero::before {
    width: 100% !important;
    height: 100% !important;

    left: 0 !important;
    right: 0 !important;
    top: 0 !important;
    bottom: 0 !important;
}


/* ===== SMOOTH HERO ANIMATION ===== */

body .monument-hero .hero-content {
    animation: monumentHeroText 1.1s ease-out both;
}

@keyframes monumentHeroText {

    0% {
        opacity: 0;
        transform: translateY(35px);
    }

    100% {
        opacity: 1;
        transform: translateY(0);
    }

}


/* ===== HERO BUTTON ===== */

body .monument-hero .hero-button {
    transition:
        transform .35s ease,
        background .35s ease,
        box-shadow .35s ease;
}

body .monument-hero .hero-button:hover {
    transform: translateY(-5px);
    box-shadow: 0 12px 30px rgba(0,0,0,.20);
}


/* ===== CARDS ANIMATION ===== */

body .monument-card,
body .world-card,
body .featured-monument {
    transition:
        transform .45s cubic-bezier(.22,1,.36,1),
        box-shadow .45s ease;
}

body .monument-card:hover,
body .world-card:hover {
    transform: translateY(-8px);
}


/* ===== IMAGE ZOOM ===== */

body .monument-card img,
body .world-card img,
body .featured-monument img {
    transition: transform .8s cubic-bezier(.22,1,.36,1);
}

body .monument-card:hover img,
body .world-card:hover img,
body .featured-monument:hover img {
    transform: scale(1.06);
}


/* ===== CTA BUTTON ANIMATION ===== */

body .monument-cta .cta-button {
    transition:
        transform .35s ease,
        box-shadow .35s ease,
        background .35s ease;
}

body .monument-cta .cta-button:hover {
    transform: translateY(-5px);
    box-shadow: 0 12px 30px rgba(0,0,0,.20);
}


/* ===== MOBILE ===== */

@media (max-width: 600px) {

    body .monument-hero {
        width: 100vw !important;
        min-height: 650px;
    }

    body .monument-cta {
        width: 100vw !important;
    }

}
/* ===== FORCE HERO + CTA TO TOUCH BOTH EDGES ===== */

body .monument-hero,
body .monument-cta {
    position: relative !important;

    width: 100vw !important;
    max-width: 100vw !important;

    left: 0 !important;
    right: auto !important;

    margin-left: 0 !important;
    margin-right: 0 !important;

    transform: none !important;
}


/* If parent/container is creating the left gap */
body .monument-hero {
    margin-left: calc(50% - 50vw) !important;
}

body .monument-cta {
    margin-left: calc(50% - 50vw) !important;
}/* End custom CSS */