/* =============================================
   footer-v2.css  —  Textellent Footer V2
   Enqueued via functions.php (footer_v2_enqueue_styles)
   All selectors prefixed with .footer-v2-
   ============================================= */


/* ─────────────────────────────────────────────
   Shared container
   ───────────────────────────────────────────── */
.footer-v2-container {
    max-width  : 1380px;
    margin     : 0 auto;
    padding    : 0 20px;
    position   : relative;
    z-index    : 1;
}


/* ─────────────────────────────────────────────
   Newsletter band
   ───────────────────────────────────────────── */
.footer-v2-newsletter {
    background : linear-gradient(135deg, #5C76FF 25%, #945CFF 100%);
    padding    : 60px 20px;
    position   : relative;
    overflow   : hidden;
	margin-top: 40px;
}

/* decorative circle – top-right */
.footer-v2-newsletter::before {
    content        : '';
    position       : absolute;
    top            : -50%;
    right          : -10%;
    width          : 500px;
    height         : 500px;
    background     : rgba(255, 255, 255, 0.1);
    border-radius  : 50%;
    pointer-events : none;
}

.footer-v2-newsletter-content {
    display        : grid;
    grid-template-columns : 1fr 1fr;
    gap            : 40px;
    align-items    : center;
}

.footer-v2-newsletter-text h2 {
    font-family  : 'Poppins', sans-serif;
    font-size    : 42px;
    font-weight  : 700;
    color        : #fff;
    margin       : 0 0 12px;
    line-height  : 1.2;
	padding-left : 0px !important;
}
.footer-v2-newsletter-text h2:after {
    display: none !important;
}
.footer-v2-newsletter-text p {
    font-family  : 'Poppins', sans-serif;
    font-size    : 18px;
    color        : rgba(255, 255, 255, 0.9);
    font-weight  : 400;
    margin       : 0;
}
/* ── Newsletter text alignment fix ── */
.footer-v2-newsletter-text {
    padding-left: 0 !important;
    margin-left: 0 !important;
}

.footer-v2-newsletter-text h2 {
    padding-left: 0 !important;
    margin-left: 0 !important;
    text-indent: 0 !important;
}

.footer-v2-newsletter-text p {
    padding-left: 0 !important;
    margin-left: 0 !important;
    text-indent: 0 !important;
}

/* ─────────────────────────────────────────────
   Email input + Subscribe button
   ───────────────────────────────────────────── */
.footer-v2-newsletter-form {
    width : 100%;
}

.footer-v2-input-wrapper {
    display     : flex;
    background  : #fff;
    border-radius : 50px;
    overflow    : hidden;
    box-shadow  : 0 8px 24px rgba(0, 0, 0, 0.15);
    transition  : transform 0.2s ease, box-shadow 0.2s ease;
}

.footer-v2-input-wrapper:focus-within {
    transform   : translateY(-2px);
    box-shadow  : 0 12px 32px rgba(0, 0, 0, 0.2);
}

.footer-v2-input-wrapper input[type="email"] {
    flex           : 1;
    border         : none;
    padding        : 18px 24px;
    font-size      : 16px;
    font-family    : 'Poppins', sans-serif;
    color          : #333;
    outline        : none;
    background     : transparent;
}

.footer-v2-input-wrapper input[type="email"]::placeholder {
    color : #999;
}

.footer-v2-subscribe-btn {
    background    : linear-gradient(135deg, #5C76FF 25%, #945CFF 100%);
    color         : #fff;
    border        : none;
    padding       : 18px 40px;
    font-size     : 16px;
    font-weight   : 600;
    font-family   : 'Poppins', sans-serif;
    cursor        : pointer;
    white-space   : nowrap;
    transition    : opacity 0.2s ease, transform 0.2s ease;
    display       : flex;
    align-items   : center;
    gap           : 8px;
}

.footer-v2-subscribe-btn:hover {
    opacity   : 0.9;
    transform : translateX(2px);
}

.footer-v2-subscribe-btn.subscribed {
    background : linear-gradient(135deg, #5CFF94 24.52%, #5CC8FF 100%);
}


/* ─────────────────────────────────────────────
   Main footer shell
   ───────────────────────────────────────────── */
.footer-v2-main {
    background : #0D0549;
    padding    : 80px 20px 0;
}

/* Override theme's body.general-wrapper footer { padding: 6.66667rem 0 10rem }
   Specificity: 0,2,2 beats theme's 0,1,2 — no !important needed */
body.general-wrapper footer.footer-v2-main {
    padding : 80px 20px 2rem;
}


/* ─────────────────────────────────────────────
   4-column grid
   ───────────────────────────────────────────── */
.footer-v2-grid {
    display                : grid;
    grid-template-columns  : 1.5fr 0.8fr 0.8fr 0.8fr;
    gap                    : 30px;
}

.footer-v2-col h3 {
    font-family     : 'Poppins', sans-serif;
    font-size       : 18px;
    font-weight     : 700;
    color           : #fff;
    margin          : 0 0 24px;
    text-transform  : uppercase;
    letter-spacing  : 0.5px;
}


/* ─────────────────────────────────────────────
   Logo
   ───────────────────────────────────────────── */
.footer-v2-logo-link {
    display        : inline-block;
    margin-bottom  : 28px;
}

.footer-v2-logo {
    max-width : 180px;
    display   : block;
}


/* ─────────────────────────────────────────────
   Contact groups (label + icon + number)
   ───────────────────────────────────────────── */
.footer-v2-contact-group {
    margin-bottom : 12px;
}

.footer-v2-contact-label {
    font-family     : 'Poppins', sans-serif;
    font-size       : 13px;
    color           : #FFE55C;
    font-weight     : 600;
    text-transform  : uppercase;
    letter-spacing  : 0.5px;
    margin-bottom   : 8px;
    display         : block;
}

.footer-v2-contact-item {
    display         : flex;
    align-items     : center;
    gap             : 12px;
    color           : rgba(255, 255, 255, 0.8);
    font-size       : 15px;
    text-decoration : none;
    transition      : color 0.2s ease;
}

.footer-v2-contact-item:hover {
    color : #fff;
}

.footer-v2-icon-wrapper {
    width            : 40px;
    height           : 40px;
    border-radius    : 50%;
    background       : rgba(255, 255, 255, 0.1);
    display          : flex;
    align-items      : center;
    justify-content  : center;
    flex-shrink      : 0;
    color            : rgba(255, 255, 255, 0.8);
    transition       : background 0.2s ease, transform 0.2s ease;
}

.footer-v2-contact-item:hover .footer-v2-icon-wrapper {
    background : linear-gradient(135deg, #5C76FF 25%, #945CFF 100%);
    transform  : translateY(-3px);
}

.footer-v2-contact-value {
    font-family : 'Poppins', sans-serif;
    font-size   : 24px;
    font-weight : 700;
    color       : #fff;
    display     : block;
    line-height : 1.2;
}


/* ─────────────────────────────────────────────
   Address row
   ───────────────────────────────────────────── */
.footer-v2-address {
    display       : flex;
    gap           : 12px;
    margin-top    : 20px;
    margin-bottom : 32px;
    color         : rgba(255, 255, 255, 0.8);
    font-size     : 15px;
    line-height   : 1.6;
    font-family   : 'Poppins', sans-serif;
}

.footer-v2-address p {
    margin : 0;
}


/* ─────────────────────────────────────────────
   wp_nav_menu list output
   ───────────────────────────────────────────── */
.footer-v2-links {
    list-style : none;
    padding    : 0;
    margin     : 0;
}

.footer-v2-links li {
    display        : block;
    margin-bottom  : 12px;
}

.footer-v2-links a {
    color           : rgba(255, 255, 255, 0.8);
    text-decoration : none;
    font-size       : 15px;
    font-family     : 'Poppins', sans-serif;
    display         : block;
    transition      : color 0.2s ease, transform 0.2s ease;
}

.footer-v2-links a:hover {
    color     : #5C76FF;
    transform : translateX(4px);
}


/* ─────────────────────────────────────────────
   Social + App-download row
   ───────────────────────────────────────────── */
.footer-v2-secondary-grid {
    display                : grid;
    grid-template-columns  : 1fr 1fr;
    gap                    : 0;
    padding                : 0;
}

.footer-v2-social-section {
    display     : flex;
    align-items : center;
}

.footer-v2-social-links {
    display : flex;
    gap     : 12px;
}

.footer-v2-social-link {
    width            : 40px;
    height           : 40px;
    border-radius    : 50%;
    background       : rgba(255, 255, 255, 0.1);
    display          : flex;
    align-items      : center;
    justify-content  : center;
    color            : #fff;
    text-decoration  : none;
    transition       : background 0.2s ease, transform 0.2s ease;
}

.footer-v2-social-link svg {
    color : #fff;
    fill  : #fff;
}

.footer-v2-social-link:hover {
    background : linear-gradient(135deg, #5C76FF 25%, #945CFF 100%);
    transform  : translateY(-3px);
    color      : #fff;
}

.footer-v2-social-link:hover svg {
    color : #fff;
    fill  : #fff;
}

/* App download badges */
.footer-v2-download-section h4 {
    font-family     : 'Poppins', sans-serif;
    font-size       : 16px;
    font-weight     : 600;
    color           : #FFE55C;
    margin          : 0 0 16px;
    text-transform  : uppercase;
    letter-spacing  : 0.5px;
}

.footer-v2-app-downloads {
    display     : flex;
    gap         : 16px;
    align-items : center;
}

.footer-v2-app-downloads img {
    height     : 44px;
    width      : auto;
    transition : transform 0.2s ease;
}

.footer-v2-app-downloads img:hover {
    transform : translateY(-2px);
}


/* ─────────────────────────────────────────────
   Footer bottom bar
   ───────────────────────────────────────────── */
.footer-v2-bottom {
    border-top  : 1px solid rgba(255, 255, 255, 0.1);
    margin-top  : 48px;
    padding     : 32px 0;
    background  : #0D0549;
}

.footer-v2-bottom-content {
    display          : flex;
    justify-content  : space-between;
    align-items      : center;
    flex-wrap        : wrap;
    gap              : 20px;
}

.footer-v2-legal {
    color       : rgba(255, 255, 255, 0.6);
    font-size   : 13px;
    line-height : 1.6;
    font-family : 'Poppins', sans-serif;
}

.footer-v2-legal p {
    margin : 0 0 4px;
}

/* trust badges */
.footer-v2-trust-badges {
    display     : flex;
    gap         : 16px;
    align-items : center;
}

.footer-v2-badge {
    background  : rgba(255, 255, 255, 0.1);
    padding     : 8px 16px;
    border-radius : 20px;
    font-size   : 12px;
    color       : rgba(255, 255, 255, 0.8);
    font-weight : 500;
    font-family : 'Poppins', sans-serif;
}


/* ─────────────────────────────────────────────
   Newsletter success toast
   ───────────────────────────────────────────── */
.footer-v2-success-message {
    position       : fixed;
    bottom         : 20px;
    right          : 20px;
    background     : linear-gradient(135deg, #5CFF94 24.52%, #5CC8FF 100%);
    color          : #fff;
    padding        : 16px 24px;
    border-radius  : 50px;
    font-weight    : 600;
    font-size      : 15px;
    font-family    : 'Poppins', sans-serif;
    box-shadow     : 0 8px 24px rgba(0, 0, 0, 0.2);
    opacity        : 0;
    transform      : translateY(20px);
    transition     : opacity 0.3s ease, transform 0.3s ease;
    z-index        : 1000;
    pointer-events : none;
}

.footer-v2-success-message.show {
    opacity        : 1;
    transform      : translateY(0);
    pointer-events : auto;
}


/* =============================================
   Responsive  –  Tablet  (≤ 968 px)
   ============================================= */
@media (max-width: 968px) {

    .footer-v2-newsletter-content {
        grid-template-columns : 1fr;
        gap                   : 32px;
        text-align            : center;
    }

    .footer-v2-newsletter-text h2 {
        font-size : 32px;
    }

    .footer-v2-grid {
        grid-template-columns : 1fr 1fr;
        gap                   : 40px;
    }

    .footer-v2-bottom-content {
        flex-direction : column;
        text-align     : center;
    }

    .footer-v2-trust-badges {
        flex-wrap       : wrap;
        justify-content : center;
    }
}


/* =============================================
   Responsive  –  Mobile  (≤ 640 px)
   ============================================= */
@media (max-width: 640px) {

    .footer-v2-newsletter {
        padding    : 40px 16px;
        margin-top : 40px;
    }

    .footer-v2-newsletter-text h2 {
        font-size : 28px;
    }

    .footer-v2-newsletter-text p {
        font-size : 16px;
    }

    .footer-v2-input-wrapper {
        flex-direction : column;
        gap            : 16px;
        background     : transparent;
        box-shadow     : none;
        border-radius  : 0;
        padding        : 0;
    }

    .footer-v2-input-wrapper input[type="email"] {
        padding        : 16px 20px;
        font-size      : 15px;
        border-radius  : 50px;
        background     : #fff;
        box-shadow     : 0 8px 24px rgba(0, 0, 0, 0.15);
        width          : 100%;
    }

    .footer-v2-subscribe-btn {
        border-radius   : 50px;
        justify-content : center;
        padding         : 16px 32px;
        width           : 100%;
        box-shadow      : 0 8px 24px rgba(0, 0, 0, 0.15);
        background      : linear-gradient(135deg, #FF5CC8 0%, #5C5CFF 100%);
    }

    .footer-v2-main {
        padding : 40px 16px 0;
    }

    body.general-wrapper footer.footer-v2-main {
        padding : 40px 16px 2rem;
    }

    .footer-v2-grid {
        grid-template-columns : 1fr;
        gap                   : 40px;
    }

    .footer-v2-logo {
        margin-left  : 0;
        margin-right : 0;
    }

    .footer-v2-contact-value {
        font-size : 28px;
    }

    .footer-v2-secondary-grid {
        grid-template-columns : 1fr;
        gap                   : 40px;
        text-align            : center;
    }

    .footer-v2-social-section {
        justify-content : center;
    }

    .footer-v2-social-links {
        justify-content : center;
    }

    .footer-v2-app-downloads {
        justify-content : center;
        flex-wrap       : wrap;
    }
}