/*
Theme Name: GeneratePress
Theme URI: https://generatepress.com
Author: Tom Usborne
Author URI: https://generatepress.com/about
Description: GeneratePress is a lightweight WordPress theme built with a focus on speed and usability. Performance is important to us, which is why a fresh GeneratePress install adds less than 10kb (gzipped) to your page size. We take full advantage of the block editor (Gutenberg), which gives you more control over creating your content. If you use page builders, GeneratePress is the right theme for you. It is completely compatible with all major page builders, including Beaver Builder and Elementor. Thanks to our emphasis on WordPress coding standards, we can boast full compatibility with all well-coded plugins, including WooCommerce. GeneratePress is fully responsive, uses valid HTML/CSS, and is translated into over 25 languages by our amazing community of users. A few of our many features include 60+ color controls, powerful dynamic typography, 5 navigation locations, 5 sidebar layouts, dropdown menus (click or hover), and 9 widget areas. Learn more and check out our powerful premium version at https://generatepress.com
Version: 3.6.1
Requires at least: 6.5
Tested up to: 6.9
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: generatepress
Tags: two-columns, three-columns, one-column, right-sidebar, left-sidebar, footer-widgets, blog, e-commerce, flexible-header, full-width-template, buddypress, custom-header, custom-background, custom-menu, custom-colors, sticky-post, threaded-comments, translation-ready, rtl-language-support, featured-images, theme-options

GeneratePress, Copyright 2014-2025 EDGE22 Studios LTD.
GeneratePress is distributed under the terms of the GNU GPL

GeneratePress is based on Underscores http://underscores.me/, (C) 2012-2025 Automattic, Inc.

Actual CSS can be found in /assets/css/ folder.
*/
/* =========================
   SECTION
========================= */

.gplnest-best-products{
    position:relative;
    width:100%;
}

.gplnest-products-header{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    margin-bottom:20px;
}

.gplnest-products-header h2{
    margin:0 0 17px;
    color:#0f172a;
    font-size:24px;
    font-weight:800;
}


/* =========================
   TABS
========================= */

.gplnest-product-tabs{
    display:flex;
    gap:36px;
}
.gplnest-slider-arrow.prev {
    left: -18px;
    background: none;
    width: 30px;
    height: 30px;
    border-radius: 85px;
    line-height: 48px;
    font-size: 20px !important;
    min-height: 40px !important;
}
.gplnest-slider-arrow.next {
    right: -18px;
    background: none;
    width: 30px !important;
    height: 30px !important;
    border-radius: 85px;
    line-height: 48px !important;
    font-size: 29px !important;
    min-height: 40px !important;
}
.gplnest-product-tabs button{
    position:relative;
    border:0;
    background:none;
    padding:0 0 11px;
    cursor:pointer;

    color:#64748b;
    font-size:13px;
    font-weight:600;
}

.gplnest-product-tabs button::after{
    content:"";
    position:absolute;
    left:0;
    right:0;
    bottom:0;

    height:2px;

    background:linear-gradient(
        90deg,
        #2563eb,
        #7c3aed
    );

    transform:scaleX(0);
    transition:.25s ease;
}

.gplnest-product-tabs button.active{
    color:#4f46e5;
}

.gplnest-product-tabs button.active::after{
    transform:scaleX(1);
}


.gplnest-view-all{
    color:#4f46e5;
    font-size:13px;
    font-weight:700;
    text-decoration:none;
}


/* =========================
   TAB PANEL
========================= */

.gplnest-tab-panel{
    position:relative;
    display:none;
}

.gplnest-tab-panel.active{
    display:block;
}


/* =========================
   PRODUCT SLIDER
========================= */

.gplnest-product-track{
    display:flex;
    gap:18px;

    overflow-x:auto;
    scroll-behavior:smooth;
    scrollbar-width:none;

    padding:3px 3px 14px;
}

.gplnest-product-track::-webkit-scrollbar{
    display:none;
}


/* =========================
   CARD
========================= */

.gplnest-product-card{
    flex:0 0 calc((100% - 72px) / 4);

    min-width:0;

    overflow:hidden;

    background:#fff;

    border:1px solid #e6eaf1;
    border-radius:13px;

    box-shadow:
        0 5px 18px rgba(15,23,42,.07);

    transition:.3s ease;
}

.gplnest-product-card:hover{
    transform:translateY(-5px);

    box-shadow:
        0 15px 30px rgba(15,23,42,.12);
}


/* IMAGE */

.gplnest-product-image{
    position:relative;

    display:block;

    aspect-ratio:5/3;

    overflow:hidden;

    background:#f1f5f9;
}

.gplnest-product-image img{
    width:100%;
    height:100%;

    display:block;

    object-fit:cover;

    transition:.4s ease;
}

.gplnest-product-card:hover
.gplnest-product-image img{
    transform:scale(1.04);
}


/* PREMIUM BADGE */

.gplnest-premium{
    position:absolute;
    left:10px;
    top:10px;

    padding:6px 10px;

    border-radius:30px;

    background:#fff;

    color:#111827;

    font-size:9px;
    font-weight:800;
    letter-spacing:.5px;

    box-shadow:
        0 4px 12px rgba(0,0,0,.1);
}


/* CONTENT */

.gplnest-product-content{
    padding:12px;
}

.gplnest-product-title{
    display:-webkit-box;

    -webkit-box-orient:vertical;
    -webkit-line-clamp:2;

    overflow:hidden;

    min-height:38px;

    color:#111827;

    font-size:13px;
    font-weight:700;

    line-height:1.4;

    text-decoration:none;
}

.gplnest-product-title:hover{
    color:#2563eb;
}


/* PRICE */

.gplnest-price{
    margin:9px 0;

    color:#4f46e5;

    font-size:16px;
    font-weight:800;
}


/* =========================
   EDD BUTTON
========================= */

.gplnest-product-card .edd-no-js,
.gplnest-product-card .edd_go_to_checkout,
.gplnest-product-card .edd_price_options{
    display:none !important;
}

.gplnest-product-card
button.edd-add-to-cart{
    width:100% !important;

    min-height:36px;

    display:flex !important;

    align-items:center;
    justify-content:center;

    border:0 !important;

    border-radius:7px !important;

    padding:8px 12px !important;

    background:
        linear-gradient(
            90deg,
            #2563eb,
            #4f46e5,
            #7c3aed
        ) !important;

    color:#fff !important;

    font-size:12px !important;

    font-weight:700 !important;

    transition:.25s ease;
}

.gplnest-product-card
button.edd-add-to-cart:hover{
    transform:translateY(-1px);

    box-shadow:
        0 7px 15px rgba(79,70,229,.28);
}


/* =========================
   SLIDER ARROWS
========================= */

.gplnest-slider-arrow{
    position:absolute;

    top:50%;

    z-index:10;

    width:34px;
    height:34px;

    display:flex;

    align-items:center;
    justify-content:center;

    border:1px solid #dbe2ee;

    border-radius:50%;

    background:#fff;

    color:#64748b;

    font-size:24px;

    cursor:pointer;

    box-shadow:
        0 5px 15px rgba(15,23,42,.08);

    transform:translateY(-50%);
}

.gplnest-slider-arrow.prev{
    left:-18px;
}

.gplnest-slider-arrow.next{
    right:-18px;
}


/* =========================
   RESPONSIVE
========================= */

@media(max-width:1024px){

    .gplnest-product-card{
        flex:0 0 calc((100% - 36px) / 3);
    }

}

@media(max-width:767px){

    .gplnest-products-header{
        display:block;
    }

    .gplnest-view-all{
        display:inline-block;
        margin-top:12px;
    }

    .gplnest-product-tabs{
        gap:25px;

        overflow-x:auto;
    }

    .gplnest-product-card{
        flex:0 0 70%;
    }

    .gplnest-slider-arrow{
        display:none;
    }

}
.gplnest-product-tabs button {
    position: relative;
    border: 0;
    background: none;
    padding: 0 0 11px;
    cursor: pointer;
    color: #64748b;
    font-size: 13px;
    font-weight: 600;
    background: none !important;
}

/* ==========================================
   GPLNEST — HOW IT WORKS PREMIUM SECTION
========================================== */

.how-it-works{
    position: relative;
    overflow: hidden;
    padding: 90px 30px 95px;

    background:
        radial-gradient(circle at 15% 20%, rgba(37,99,235,.10), transparent 28%),
        radial-gradient(circle at 85% 75%, rgba(124,58,237,.10), transparent 30%),
        linear-gradient(180deg,#f8faff 0%,#f3f5ff 100%);
}


/* Decorative background glow */
.how-it-works::before,
.how-it-works::after{
    content:"";
    position:absolute;
    width:350px;
    height:350px;
    border-radius:50%;
    filter:blur(80px);
    pointer-events:none;
}

.how-it-works::before{
    left:-170px;
    top:-120px;
    background:rgba(37,99,235,.12);
}

.how-it-works::after{
    right:-170px;
    bottom:-150px;
    background:rgba(124,58,237,.12);
}


/* ==========================================
   SECTION HEADER
========================================== */

.how-it-works .section-kicker{
    position:relative;
    z-index:2;

    text-align:center;
    margin-bottom:14px;

    color:#4f46e5;

    font-size:13px;
    font-weight:800;
    letter-spacing:3px;
    text-transform:uppercase;
}


.how-it-works .section-title{
    position:relative;
    z-index:2;

    max-width:900px;
    margin:0 auto 55px;

    text-align:center;

    color:#0b1023;

    font-size:48px;
    line-height:1.08;
    font-weight:850;
    letter-spacing:-1.8px;
}


/* ==========================================
   STEPS GRID
========================================== */

.steps-wrap{
    position:relative;
    z-index:2;

    max-width:1450px;
    margin:auto;

    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:28px;
}


/* Connecting line */

.steps-wrap::after{
    content:"";

    position:absolute;

    left:15%;
    right:15%;
    top:205px;

    height:2px;

    background:linear-gradient(
        90deg,
        rgba(37,99,235,.15),
        #6366f1,
        rgba(124,58,237,.15)
    );

    z-index:-1;
}


/* ==========================================
   STEP
========================================== */

.how-step{
    position:relative;
}


/* ==========================================
   DEMO CARD
========================================== */

.step-demo{
    position:relative;

    min-height:180px;

    padding:18px;

    overflow:hidden;

    border:1px solid rgba(148,163,184,.22);
    border-radius:22px;

    background:rgba(255,255,255,.85);

    backdrop-filter:blur(18px);

    box-shadow:
        0 15px 40px rgba(15,23,42,.07),
        inset 0 1px 0 rgba(255,255,255,.9);

    transition:
        transform .35s cubic-bezier(.2,.8,.2,1),
        box-shadow .35s ease,
        border-color .35s ease;
}


/* Gradient top highlight */

.step-demo::before{
    content:"";

    position:absolute;

    top:0;
    left:12%;
    right:12%;

    height:2px;

    background:linear-gradient(
        90deg,
        transparent,
        #3b82f6,
        #7c3aed,
        transparent
    );

    opacity:0;

    transition:.35s;
}


.how-step:hover .step-demo{
    transform:translateY(-8px);

    border-color:rgba(99,102,241,.28);

    box-shadow:
        0 25px 55px rgba(15,23,42,.11),
        0 12px 30px rgba(79,70,229,.08);
}


.how-step:hover .step-demo::before{
    opacity:1;
}


/* ==========================================
   NUMBER
========================================== */

.step-number{
    position:relative;
    z-index:5;

    width:48px;
    height:48px;

    margin:18px 0 10px;

    display:flex;
    align-items:center;
    justify-content:center;

    border-radius:50%;

    background:linear-gradient(
        135deg,
        #2563eb 0%,
        #4f46e5 55%,
        #7c3aed 100%
    );

    color:#fff;

    font-size:17px;
    font-weight:800;

    border:5px solid #eef2ff;

    box-shadow:
        0 7px 18px rgba(79,70,229,.30);

    transition:.3s ease;
}


.how-step:hover .step-number{
    transform:scale(1.10) rotate(4deg);

    box-shadow:
        0 10px 25px rgba(79,70,229,.40);
}


/* ==========================================
   STEP TITLE
========================================== */

.step-title{
    margin:0 0 7px;

    color:#0f172a;

    font-size:22px;
    line-height:1.3;
    font-weight:800;

    letter-spacing:-.4px;

    transition:.25s;
}


.how-step:hover .step-title{
    color:#4f46e5;
}


/* ==========================================
   DESCRIPTION
========================================== */

.step-text{
    max-width:420px;

    margin:0;

    color:#64748b;

    font-size:16px;
    line-height:1.65;
}


/* ==========================================
   PLAN OPTIONS
========================================== */

.plan-option{
    display:flex;
    align-items:center;
    justify-content:space-between;

    min-height:45px;

    padding:10px 13px;
    margin-bottom:8px;

    border:1px solid #e2e8f0;
    border-radius:11px;

    background:rgba(248,250,252,.9);

    color:#111827;

    font-size:13px;
    font-weight:700;

    transition:.25s ease;
}


.plan-option:hover{
    transform:translateX(3px);
    background:#fff;
    border-color:#c7d2fe;
}


.plan-option.active{
    border:2px solid #4f46e5;

    background:
        linear-gradient(
            90deg,
            rgba(37,99,235,.05),
            rgba(124,58,237,.05)
        );

    box-shadow:0 5px 15px rgba(79,70,229,.08);
}


.plan-left{
    display:flex;
    align-items:center;
    gap:9px;
}


.plan-radio{
    position:relative;

    width:18px;
    height:18px;

    border:2px solid #cbd5e1;
    border-radius:50%;

    background:#fff;
}


.plan-option.active .plan-radio{
    border:5px solid #4f46e5;
}


/* ==========================================
   SEARCH BOX
========================================== */

.fake-search{
    height:45px;

    display:flex;
    align-items:center;

    padding:0 14px;
    margin-bottom:10px;

    border:2px solid #a5b4fc;
    border-radius:14px;

    background:#fff;

    color:#111827;

    font-size:14px;

    box-shadow:
        0 5px 15px rgba(79,70,229,.06);
}


.fake-result{
    display:flex;
    align-items:center;
    gap:10px;

    padding:9px 11px;
    margin-bottom:7px;

    border:1px solid #e5e7eb;
    border-radius:11px;

    background:#f8fafc;

    transition:.25s ease;
}


.fake-result:hover{
    background:#fff;
    border-color:#c7d2fe;
    transform:translateX(3px);
}


.fake-circle{
    flex:0 0 30px;

    width:30px;
    height:30px;

    border-radius:50%;

    background:linear-gradient(
        135deg,
        #bfdbfe,
        #c4b5fd
    );
}


.fake-lines{
    flex:1;
}


.fake-line{
    width:75%;
    height:6px;

    margin-bottom:5px;

    border-radius:20px;

    background:#d7dce5;
}


.fake-line.small{
    width:45%;
}


.fake-price{
    color:#111827;

    font-size:13px;
    font-weight:800;
}


/* ==========================================
   DOWNLOAD / INSTALL
========================================== */

.download-box{
    position:relative;

    padding:14px;

    border:1px solid #dfe4ee;
    border-radius:13px;

    background:
        linear-gradient(
            180deg,
            #ffffff,
            #f8fafc
        );
}


.file-row{
    display:flex;
    align-items:center;
    gap:9px;

    min-height:42px;

    color:#111827;

    font-size:14px;
    font-weight:750;
}


.download-progress{
    position:relative;

    overflow:hidden;

    height:8px;

    margin:10px 0 15px;

    border-radius:20px;

    background:#e2e8f0;
}


.download-progress::after{
    content:"";

    position:absolute;
    inset:0;

    border-radius:inherit;

    background:linear-gradient(
        90deg,
        #2563eb,
        #4f46e5,
        #8b5cf6
    );

    animation:gpl-progress 2.5s ease-in-out infinite;
}


@keyframes gpl-progress{

    0%{
        transform:translateX(-100%);
    }

    45%,
    100%{
        transform:translateX(0);
    }
}


/* SUCCESS BADGE */

.success-badge{
    display:inline-flex;
    align-items:center;
    gap:6px;

    padding:7px 12px;

    border-radius:999px;

    background:#dcfce7;

    color:#15803d;

    font-size:12px;
    font-weight:800;

    box-shadow:0 5px 15px rgba(22,163,74,.08);
}


/* ==========================================
   RESPONSIVE
========================================== */

@media(max-width:1024px){

    .steps-wrap{
        grid-template-columns:1fr;
        max-width:650px;
    }

    .steps-wrap::after{
        display:none;
    }

    .how-it-works .section-title{
        font-size:40px;
    }

}


@media(max-width:767px){

    .how-it-works{
        padding:60px 18px;
    }

    .how-it-works .section-title{
        font-size:31px;
        letter-spacing:-1px;
        margin-bottom:35px;
    }

    .steps-wrap{
        gap:30px;
    }

    .step-demo{
        min-height:auto;
        border-radius:18px;
        padding:14px;
    }

    .step-title{
        font-size:20px;
    }

    .step-text{
        font-size:15px;
    }
}
.gpl-currency-switcher{
    display:inline-flex;
    align-items:center;
    gap:7px;
    padding:7px 11px;
    border:1px solid rgba(255,255,255,.16);
    border-radius:999px;
    background:rgba(255,255,255,.08);
    backdrop-filter:blur(10px);
}

.gpl-currency-switcher a{
    color:#fff;
    font-size:12px;
    font-weight:800;
    text-decoration:none;
    transition:.2s ease;
}

.gpl-currency-switcher a:hover{
    color:#8ab4ff;
}

.gpl-currency-switcher span{
    color:rgba(255,255,255,.35);
}
/* =========================================
   GPLNEST NEWSLETTER - SCREENSHOT STYLE
========================================= */

#newsletter_section{
    position:relative;
    overflow:hidden;

    max-width:1180px;
    margin:40px auto;

    padding:28px 36px;

    border-radius:18px;

    background:
        linear-gradient(
            100deg,
            #18217b 0%,
            #2149ad 50%,
            #1749ad 72%,
            #5433c8 100%
        );

    box-shadow:
        0 14px 35px rgba(31, 41, 130, .18);
}


/* subtle glow */
#newsletter_section::after{
    content:"";
    position:absolute;
    right:-120px;
    top:-100px;

    width:260px;
    height:260px;

    border-radius:50%;

    background:rgba(139,92,246,.22);
    filter:blur(55px);

    pointer-events:none;
}


/* =========================================
   INNER GRID
========================================= */

#newsletter_section > .e-con-inner{
    position:relative;
    z-index:2;

    width:100%;
    max-width:none;

    display:grid;
    grid-template-columns:minmax(0, .95fr) minmax(420px, 1.05fr);
    grid-template-rows:auto auto;

    align-items:center;

    column-gap:55px;
    row-gap:4px;
}


/* =========================================
   HEADING
========================================= */

#newsletter_section .elementor-widget-heading{
    grid-column:1;
    grid-row:1;

    margin:0;
    padding-left:110px;
}

#newsletter_section .elementor-heading-title{
    margin:0;

    color:#fff;

    font-size:26px;
    line-height:1.2;
    font-weight:800;
}


/* =========================================
   TEXT
========================================= */

#newsletter_section .elementor-widget-text-editor{
    grid-column:1;
    grid-row:2;

    margin:0;
    padding-left:110px;
}

#newsletter_section .elementor-widget-text-editor p{
    max-width:470px;
    margin:0;

    color:rgba(255,255,255,.82);

    font-size:13px;
    line-height:1.6;
}


/* =========================================
   LEFT ILLUSTRATION
========================================= */

#newsletter_section::before{
    content:"✉";

    position:absolute;
    left:28px;
    top:50%;

    transform:translateY(-50%);

    width:82px;
    height:82px;

    display:flex;
    align-items:center;
    justify-content:center;

    border-radius:20px;

    background:
        linear-gradient(
            145deg,
            #5c5ff6,
            #763ee6
        );

    color:#fff;

    font-size:38px;

    box-shadow:
        0 12px 28px rgba(35, 25, 110, .28);

    z-index:3;
}


/* =========================================
   FORM WRAPPER
========================================= */

#newsletter_section .elementor-widget-shortcode{
    grid-column:2;
    grid-row:1 / span 2;

    width:100%;
    margin:0;
}

#newsletter_section .tnp,
#newsletter_section .tnp-subscription{
    width:100% !important;
    max-width:none !important;
    margin:0 !important;
}


/* =========================================
   FORM
========================================= */

#newsletter_section .tnp-subscription form{
    display:grid;
    grid-template-columns:1fr auto;

    width:100%;
    gap:0;

    margin:0;
}


/* =========================================
   EMAIL FIELD
========================================= */

#newsletter_section .tnp-field-email{
    margin:0 !important;
}

#newsletter_section .tnp-field-email > label{
    display:none !important;
}

#newsletter_section input.tnp-email{
    width:100% !important;
    height:48px !important;

    margin:0 !important;
    padding:0 18px !important;

    border:0 !important;
    outline:0 !important;

    border-radius:10px 0 0 10px !important;

    background:#fff !important;

    color:#111827 !important;

    font-size:13px !important;
    font-weight:500;

    box-shadow:none !important;
}

#newsletter_section input.tnp-email::placeholder{
    color:#94a3b8;
}

#newsletter_section input.tnp-email:focus{
    box-shadow:
        inset 0 0 0 2px rgba(99,102,241,.18) !important;
}


/* =========================================
   SUBSCRIBE BUTTON
========================================= */

#newsletter_section .tnp-field-button{
    margin:0 !important;
}

#newsletter_section input.tnp-submit{
    min-width:150px;
    height:48px !important;

    margin:0 !important;
    padding:0 24px !important;

    border:0 !important;

    border-radius:0 10px 10px 0 !important;

    background:
        linear-gradient(
            90deg,
            #6c39ed 0%,
            #9a3be7 100%
        ) !important;

    color:#fff !important;

    font-size:13px !important;
    font-weight:700 !important;

    cursor:pointer;

    box-shadow:none !important;

    transition:
        filter .25s ease,
        transform .25s ease;
}

#newsletter_section input.tnp-submit:hover{
    filter:brightness(1.08);
}


/* =========================================
   PRIVACY POLICY
========================================= */

#newsletter_section .tnp-privacy-field{
    grid-column:1 / -1;

    margin:7px 0 0 !important;
}

#newsletter_section .tnp-privacy-field label{
    display:flex;
    align-items:center;
    gap:6px;

    color:rgba(255,255,255,.72) !important;

    font-size:10px !important;
    line-height:1.3;
}

#newsletter_section input.tnp-privacy{
    width:13px !important;
    height:13px !important;

    margin:0 !important;
}


/* =========================================
   TABLET
========================================= */

@media(max-width:950px){

    #newsletter_section{
        padding:28px 26px;
    }

    #newsletter_section > .e-con-inner{
        grid-template-columns:1fr;
        gap:18px;
    }

    #newsletter_section .elementor-widget-heading,
    #newsletter_section .elementor-widget-text-editor{
        grid-column:1;
        padding-left:95px;
    }

    #newsletter_section .elementor-widget-shortcode{
        grid-column:1;
        grid-row:auto;
    }

    #newsletter_section::before{
        width:70px;
        height:70px;
        font-size:32px;
    }
}


/* =========================================
   MOBILE
========================================= */

@media(max-width:767px){

    #newsletter_section{
        margin:25px 15px;

        padding:26px 18px;

        border-radius:16px;
    }

    #newsletter_section::before{
        position:relative;

        left:auto;
        top:auto;

        transform:none;

        width:62px;
        height:62px;

        margin:0 auto 14px;
    }

    #newsletter_section > .e-con-inner{
        display:flex;
        flex-direction:column;
        gap:12px;
    }

    #newsletter_section .elementor-widget-heading,
    #newsletter_section .elementor-widget-text-editor{
        padding-left:0;
        text-align:center;
    }

    #newsletter_section .elementor-heading-title{
        font-size:23px;
    }

    #newsletter_section .elementor-widget-text-editor p{
        font-size:13px;
    }

    #newsletter_section .tnp-subscription form{
        display:flex;
        flex-direction:column;
        gap:8px;
    }

    #newsletter_section input.tnp-email{
        border-radius:10px !important;
    }

    #newsletter_section input.tnp-submit{
        width:100% !important;

        border-radius:10px !important;
    }

    #newsletter_section .tnp-privacy-field{
        text-align:left;
    }
}
/* =========================================
   GPLNEST BLOG CARD - FINAL
========================================= */

#blog_single{
    position:relative;
    overflow:hidden;
    height:100%;

    border:1px solid #e6eaf2;
    border-radius:16px;

    background:#fff;

    box-shadow:
        0 8px 24px rgba(15,23,42,.07);

    transition:
        transform .3s ease,
        box-shadow .3s ease,
        border-color .3s ease;
}

#blog_single:hover{
    transform:translateY(-6px);
    border-color:#d7dcf0;

    box-shadow:
        0 18px 40px rgba(15,23,42,.12);
}


/* =========================================
   INNER
========================================= */

#blog_single > .e-con-inner{
    position:relative;

    display:flex;
    flex-direction:column;

    height:100%;

    padding:0 !important;
    gap:0 !important;
}


/* =========================================
   FEATURED IMAGE
========================================= */

#blog_single .elementor-widget-theme-post-featured-image{
    position:relative;

    overflow:hidden;

    margin:0 !important;

    border-radius:16px 16px 0 0;
}

#blog_single .elementor-widget-theme-post-featured-image a{
    display:block;
}

#blog_single .elementor-widget-theme-post-featured-image img{
    width:100%;
    height:263px;

    display:block;

    object-fit:cover;

    transition:
        transform .45s ease,
        filter .35s ease;
}

#blog_single:hover
.elementor-widget-theme-post-featured-image img{
    transform:scale(1.045);
}

#blog_single .elementor-post-info li:nth-child(1) {
    position: absolute;
    left: 14px;
    bottom: -60px;
    margin: 0 !important;
    pointer-events: auto;
}
/* dark image overlay */
#blog_single
.elementor-widget-theme-post-featured-image::after{
    content:"";

    position:absolute;
    inset:0;

    z-index:1;

    pointer-events:none;

    background:
        linear-gradient(
            to top,
            rgba(5,12,35,.58) 0%,
            rgba(5,12,35,.12) 50%,
            transparent 100%
        );
}


/* =========================================
   POST INFO OVER IMAGE
========================================= */

#blog_single .elementor-widget-post-info{
    position:absolute;

    top:0;
    left:0;

    z-index:5;

    width:100%;
    height:264px;

    margin:0 !important;

    pointer-events:none;
}

#blog_single .elementor-post-info{
    width:100%;
    height:100%;

    margin:0 !important;
    padding:0 !important;

    position:relative;
}


/* =========================================
   CATEGORY BADGE
========================================= */

/* Terms item */
#blog_single
.elementor-post-info li:nth-child(3){
    position:absolute;

    top:14px;
    left:14px;

    margin:0 !important;

    pointer-events:auto;
}

#blog_single
.elementor-post-info li:nth-child(3)
.elementor-icon-list-icon{
    display:none !important;
}

#blog_single
.elementor-post-info li:nth-child(3)
.elementor-post-info__terms-list-item{
    display:inline-flex;

    align-items:center;
    justify-content:center;

    padding:6px 11px;

    border-radius:999px;

    background:
        linear-gradient(
            90deg,
            #2563eb,
            #4f46e5,
            #7c3aed
        );

    color:#fff !important;

    font-size:10px;
    font-weight:800;
    letter-spacing:.6px;

    text-transform:uppercase;

    text-decoration:none !important;

    box-shadow:
        0 5px 14px rgba(79,70,229,.28);
}


/* =========================================
   DATE
========================================= */

#blog_single
.elementor-post-info li:nth-child(1){
    position:absolute;

    left:14px;
    bottom:14px;

    margin:0 !important;

    pointer-events:auto;
}

#blog_single
.elementor-post-info li:nth-child(1) a{
    display:inline-flex;

    align-items:center;
    gap:6px;

    color:#fff !important;

    font-size:11px;
    font-weight:600;

    text-decoration:none !important;
}

#blog_single
.elementor-post-info li:nth-child(1)
.elementor-icon-list-icon svg{
    width:13px;
    height:13px;

    fill:#fff !important;
}

#blog_single
.elementor-post-info li:nth-child(1)
.elementor-icon-list-text{
    color:#fff !important;
}


/* =========================================
   HIDE TIME
========================================= */

#blog_single
.elementor-post-info li:nth-child(2){
    display:none !important;
}


/* =========================================
   TITLE
========================================= */

#blog_single .elementor-widget-theme-post-title{
    margin:0 !important;

    padding:20px 16px 7px;
}

#blog_single .elementor-heading-title{
    margin:0;

    color:#111827;

    font-size:17px;
    line-height:1.4;
    font-weight:800;

    letter-spacing:-.25px;

    display:-webkit-box;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:2;

    overflow:hidden;
}

#blog_single .elementor-heading-title a{
    color:inherit !important;
    text-decoration:none !important;

    transition:color .25s ease;
}

#blog_single:hover
.elementor-heading-title a{
    color:#4f46e5 !important;
}


/* =========================================
   EXCERPT
========================================= */

#blog_single .elementor-widget-theme-post-excerpt{
    margin:0 !important;

    padding:0 16px 12px;
}

#blog_single .elementor-widget-theme-post-excerpt p{
    margin:0;

    color:#64748b;

    font-size:13px;
    line-height:1.6;

    display:-webkit-box;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:2;

    overflow:hidden;
}


/* =========================================
   READ MORE
========================================= */

#blog_single .elementor-widget-button{
    margin-top:auto !important;

    padding:0 16px 18px;
}

#blog_single .elementor-widget-button .elementor-button{
    width:auto !important;

    min-height:auto !important;

    padding:0 !important;

    border:0 !important;

    background:transparent !important;

    color:#4f46e5 !important;

    box-shadow:none !important;

    font-size:13px !important;
    font-weight:750 !important;

    text-decoration:none !important;
}

#blog_single
.elementor-widget-button
.elementor-button-text{
    color:#4f46e5 !important;

    transition:color .25s ease;
}

#blog_single
.elementor-widget-button
.elementor-button:hover{
    background:transparent !important;

    transform:none !important;
}

#blog_single
.elementor-widget-button
.elementor-button:hover
.elementor-button-text{
    color:#7c3aed !important;
}


/* =========================================
   MOBILE
========================================= */

@media(max-width:767px){

    #blog_single{
        border-radius:14px;
    }

    #blog_single
    .elementor-widget-theme-post-featured-image,
    #blog_single
    .elementor-widget-theme-post-featured-image img{
        border-radius:14px 14px 0 0;
    }

    #blog_single
    .elementor-widget-theme-post-featured-image img{
        height:175px;
    }

    #blog_single
    .elementor-widget-post-info{
        height:175px;
    }

    #blog_single
    .elementor-heading-title{
        font-size:16px;
    }

    #blog_single
    .elementor-widget-theme-post-excerpt p{
        font-size:12px;
    }
}

/* ======================================================
   GPLNEST PRODUCT DETAIL PAGE
====================================================== */

.single-download{
    background:#f7f9fd;
}


/* ======================================================
   PRODUCT HERO
====================================================== */

.product-hero{
    position:relative;
    overflow:hidden;

    padding:65px 24px;

    background:
        radial-gradient(
            circle at 15% 20%,
            rgba(37,99,235,.12),
            transparent 30%
        ),
        radial-gradient(
            circle at 85% 70%,
            rgba(124,58,237,.12),
            transparent 30%
        ),
        linear-gradient(
            180deg,
            #f9faff,
            #f4f6ff
        );
}

.product-hero .elementor-heading-title{
    color:#0f172a;

    font-size:48px;
    line-height:1.08;
    font-weight:850;

    letter-spacing:-1.5px;
}

.product-hero
.elementor-widget-text-editor{
    max-width:760px;
}

.product-hero
.elementor-widget-text-editor p{
    color:#64748b;

    font-size:17px;
    line-height:1.7;
}


/* ======================================================
   TRUST POINTS
====================================================== */

.product-trust-points{
    display:flex;
    flex-wrap:wrap;

    gap:10px;

    margin-top:22px;
}

.product-trust-points span{
    display:inline-flex;
    align-items:center;

    gap:7px;

    padding:9px 13px;

    border:1px solid #e1e7f0;
    border-radius:999px;

    background:#fff;

    color:#334155;

    font-size:13px;
    font-weight:650;

    box-shadow:
        0 5px 15px rgba(15,23,42,.05);
}

.product-trust-points span::before{
    content:"✓";

    width:19px;
    height:19px;

    display:flex;
    align-items:center;
    justify-content:center;

    border-radius:50%;

    background:#dcfce7;

    color:#16a34a;

    font-size:11px;
    font-weight:900;
}


/* ======================================================
   PRODUCT ACTION BUTTONS
====================================================== */

.gpl-product-actions{
    display:flex;
    flex-wrap:wrap;

    gap:10px;

    margin-top:22px;
}

.gpl-product-actions a{
    display:inline-flex;
    align-items:center;
    justify-content:center;

    min-height:42px;

    padding:9px 16px;

    border:1px solid #dbe2ee;
    border-radius:10px;

    background:#fff;

    color:#334155;

    font-size:13px;
    font-weight:700;

    text-decoration:none;

    transition:.25s ease;
}

.gpl-product-actions a:hover{
    color:#4f46e5;

    border-color:#c7d2fe;

    transform:translateY(-2px);

    box-shadow:
        0 8px 18px rgba(79,70,229,.10);
}


/* ======================================================
   PRODUCT MAIN
====================================================== */

.product-main{
    padding:60px 24px;
}

.product-main > .e-con-inner{
    max-width:1250px;

    display:grid;
    grid-template-columns:minmax(0,1.35fr) minmax(340px,.65fr);

    gap:45px;
    align-items:start;
}


/* ======================================================
   PRODUCT IMAGE
====================================================== */

.product-main
.elementor-widget-theme-post-featured-image{
    overflow:hidden;

    border:1px solid #e4e9f2;
    border-radius:22px;

    background:#fff;

    box-shadow:
        0 15px 40px rgba(15,23,42,.07);
}

.product-main
.elementor-widget-theme-post-featured-image img{
    width:100%;

    display:block;

    border-radius:22px;
}


/* ======================================================
   PURCHASE CARD
====================================================== */

.purchase-card{
    position:sticky;
    top:110px;

    padding:28px;

    border:1px solid #e5eaf2;
    border-radius:24px;

    background:#fff;

    box-shadow:
        0 18px 45px rgba(15,23,42,.09);
}

.purchase-card
.elementor-heading-title{
    margin:0;

    color:#0f172a;

    font-size:26px;
    font-weight:850;
}


/* ======================================================
   PRODUCT PRICE
====================================================== */

.purchase-card .edd_price{
    display:block;

    margin:15px 0;

    color:#4f46e5;

    font-size:40px;
    line-height:1;

    font-weight:900;

    letter-spacing:-1px;
}


/* ======================================================
   PURCHASE LABEL
====================================================== */

.purchase-type{
    display:inline-flex;

    padding:7px 11px;

    margin-bottom:18px;

    border-radius:999px;

    background:#eef2ff;

    color:#4f46e5;

    font-size:11px;
    font-weight:800;

    text-transform:uppercase;
    letter-spacing:.6px;
}


/* ======================================================
   PURCHASE BENEFITS
====================================================== */

.purchase-benefits{
    list-style:none;

    margin:0 0 25px;
    padding:0;
}

.purchase-benefits li{
    position:relative;

    margin-bottom:12px;

    padding-left:29px;

    color:#475569;

    font-size:14px;
}

.purchase-benefits li::before{
    content:"✓";

    position:absolute;

    left:0;
    top:0;

    width:19px;
    height:19px;

    display:flex;
    align-items:center;
    justify-content:center;

    border-radius:50%;

    background:#dcfce7;

    color:#16a34a;

    font-size:11px;
    font-weight:900;
}


/* ======================================================
   EDD DUPLICATE BUTTON FIX
====================================================== */

.purchase-card .edd-no-js,
.purchase-card .edd_go_to_checkout{
    display:none !important;
}


/* ======================================================
   EDD ADD TO CART
====================================================== */

.purchase-card
.edd_purchase_submit_wrapper
button.edd-add-to-cart.edd-has-js{

    width:100% !important;
    min-height:54px;

    display:flex !important;
    align-items:center;
    justify-content:center;

    padding:13px 20px !important;

    border:0 !important;
    border-radius:13px !important;

    background:
        linear-gradient(
            90deg,
            #2563eb,
            #4f46e5,
            #7c3aed
        ) !important;

    color:#fff !important;

    font-size:15px !important;
    font-weight:800 !important;

    cursor:pointer;

    box-shadow:
        0 11px 25px rgba(79,70,229,.24);

    transition:.28s ease;
}

.purchase-card
button.edd-add-to-cart.edd-has-js:hover{

    transform:translateY(-2px);

    box-shadow:
        0 15px 30px rgba(79,70,229,.34);
}


/* ======================================================
   MEMBERSHIP MINI CTA
====================================================== */

.purchase-membership{
    margin-top:20px;

    padding:15px;

    border-radius:13px;

    background:
        linear-gradient(
            135deg,
            #eef4ff,
            #f4efff
        );

    color:#475569;

    font-size:13px;
    line-height:1.6;
}

.purchase-membership a{
    color:#4f46e5;
    font-weight:750;

    text-decoration:none;
}


/* ======================================================
   VERSION BOX
====================================================== */

.product-version-box{
    margin-top:25px;

    padding:23px;

    border:1px solid #e5eaf2;
    border-radius:18px;

    background:#fff;

    box-shadow:
        0 8px 25px rgba(15,23,42,.05);
}

.product-version-row{
    display:flex;

    align-items:center;
    justify-content:space-between;

    gap:20px;

    padding:11px 0;

    border-bottom:1px solid #edf0f5;
}

.product-version-row:last-child{
    border-bottom:0;
}

.product-version-label{
    color:#64748b;

    font-size:13px;
}

.product-version-value{
    color:#0f172a;

    font-size:14px;
    font-weight:750;
}


/* ======================================================
   CONTENT SECTIONS
====================================================== */

.product-content-section,
.product-installation,
.product-faq{
    padding:75px 24px;
}

.product-content-section:nth-child(even){
    background:#f8faff;
}

.product-content-section > .e-con-inner,
.product-installation > .e-con-inner,
.product-faq > .e-con-inner{

    max-width:1050px;

    margin:auto;
}

.product-content-section
.elementor-heading-title,
.product-installation
.elementor-heading-title,
.product-faq
.elementor-heading-title{

    color:#0f172a;

    font-size:38px;
    font-weight:850;

    letter-spacing:-1px;
}

.product-content-section p,
.product-installation p{

    color:#64748b;

    font-size:16px;
    line-height:1.8;
}


/* ======================================================
   KEY FEATURES
====================================================== */

.product-features{
    display:grid;

    grid-template-columns:repeat(2,1fr);

    gap:12px;

    margin-top:25px;
}

.product-feature{
    display:flex;
    align-items:center;

    gap:10px;

    padding:14px 16px;

    border:1px solid #e5eaf2;
    border-radius:12px;

    background:#fff;

    color:#334155;

    font-size:14px;
    font-weight:650;
}

.product-feature::before{
    content:"✓";

    width:22px;
    height:22px;

    display:flex;
    align-items:center;
    justify-content:center;

    border-radius:7px;

    background:#eef2ff;

    color:#4f46e5;

    font-weight:900;
}


/* ======================================================
   INSTALLATION STEPS
====================================================== */

.installation-steps{
    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:20px;

    margin-top:30px;
}

.install-step{
    padding:24px;

    border:1px solid #e4e9f2;
    border-radius:18px;

    background:#fff;

    box-shadow:
        0 10px 25px rgba(15,23,42,.05);
}

.install-step-number{
    width:38px;
    height:38px;

    margin-bottom:14px;

    display:flex;
    align-items:center;
    justify-content:center;

    border-radius:50%;

    background:
        linear-gradient(
            135deg,
            #2563eb,
            #7c3aed
        );

    color:#fff;

    font-weight:850;
}


/* ======================================================
   FAQ
====================================================== */

.product-faq .elementor-accordion-item{
    overflow:hidden;

    margin-bottom:12px;

    border:1px solid #e3e8f0 !important;
    border-radius:13px !important;

    background:#fff;
}

.product-faq
.elementor-tab-title{

    padding:18px 20px !important;

    color:#0f172a !important;

    font-size:15px;
    font-weight:750;
}

.product-faq
.elementor-tab-content{

    padding:0 20px 20px !important;

    color:#64748b;

    font-size:14px;
    line-height:1.7;
}


/* ======================================================
   MEMBERSHIP CTA
====================================================== */

.membership-product-cta{
    overflow:hidden;

    max-width:1200px;

    margin:50px auto;

    padding:45px;

    border-radius:24px;

    background:
        radial-gradient(
            circle at right,
            rgba(139,92,246,.4),
            transparent 35%
        ),
        linear-gradient(
            110deg,
            #0c2463,
            #164bb0,
            #4b21ad
        );

    text-align:center;

    color:#fff;

    box-shadow:
        0 18px 45px rgba(30,45,130,.18);
}

.membership-product-cta
.elementor-heading-title{

    color:#fff;

    font-size:34px;
    font-weight:850;
}

.membership-product-cta p{
    color:rgba(255,255,255,.78);
}


/* ======================================================
   RESPONSIVE
====================================================== */

@media(max-width:1024px){

    .product-main > .e-con-inner{
        grid-template-columns:1fr;
    }

    .purchase-card{
        position:relative;
        top:auto;
    }

    .installation-steps{
        grid-template-columns:1fr;
    }
}


@media(max-width:767px){

    .product-hero{
        padding:50px 18px;
    }

    .product-hero
    .elementor-heading-title{

        font-size:35px;
    }

    .product-main{
        padding:40px 16px;
    }

    .purchase-card{
        padding:22px;

        border-radius:19px;
    }

    .purchase-card .edd_price{
        font-size:34px;
    }

    .product-features{
        grid-template-columns:1fr;
    }

    .product-content-section,
    .product-installation,
    .product-faq{

        padding:55px 18px;
    }

    .product-content-section
    .elementor-heading-title,
    .product-installation
    .elementor-heading-title,
    .product-faq
    .elementor-heading-title{

        font-size:30px;
    }

    .membership-product-cta{
        margin:30px 15px;
        padding:35px 20px;
    }
}
/* =====================================================
   GPLNEST FAQ SECTION
===================================================== */

#section_faq{
    position:relative;
    overflow:hidden;
    padding:90px 24px;

    background:
        radial-gradient(circle at 12% 20%, rgba(37,99,235,.10), transparent 28%),
        radial-gradient(circle at 88% 75%, rgba(124,58,237,.10), transparent 30%),
        linear-gradient(180deg,#f8faff 0%,#f4f6ff 100%);
}

/* soft glow */
#section_faq::before,
#section_faq::after{
    content:"";
    position:absolute;
    border-radius:50%;
    filter:blur(90px);
    pointer-events:none;
}

#section_faq::before{
    width:360px;
    height:360px;
    left:-180px;
    top:100px;
    background:rgba(59,130,246,.14);
}

#section_faq::after{
    width:380px;
    height:380px;
    right:-180px;
    bottom:20px;
    background:rgba(139,92,246,.14);
}


/* =====================================================
   MAIN GRID
===================================================== */

/* #section_faq > .e-con-inner{
    position:relative;
    z-index:2;

    max-width:1250px;
    margin:auto;

    display:grid;
    grid-template-columns:minmax(280px,.75fr) minmax(0,1.25fr);

    gap:70px;
    align-items:start;
}
 */

/* =====================================================
   LEFT SIDE
===================================================== */

#section_faq > .e-con-inner > .e-con:first-child{
    position:sticky;
    top:110px;
}


/* Heading */
#section_faq #Ask_Us_Anything{
    margin:0 0 14px;
}

#section_faq #Ask_Us_Anything .elementor-heading-title{
    margin:0;

    color:#0f172a;

    font-size:46px;
    line-height:1.1;
    font-weight:850;
    letter-spacing:-1.4px;
}


/* Intro text */
#section_faq > .e-con-inner > .e-con:first-child
.elementor-widget-text-editor{
    margin:0 0 24px;
}

#section_faq > .e-con-inner > .e-con:first-child
.elementor-widget-text-editor p{
    margin:0;

    max-width:430px;

    color:#64748b;

    font-size:16px;
    line-height:1.7;
}


/* Ask button */
#section_faq > .e-con-inner > .e-con:first-child
.elementor-widget-button .elementor-button{
    min-height:48px;

    display:inline-flex;
    align-items:center;
    justify-content:center;

    padding:12px 20px;

    border:0;
    border-radius:12px;

    background:
        linear-gradient(
            90deg,
            #2563eb,
            #4f46e5,
            #7c3aed
        );

    color:#fff;

    font-size:14px;
    font-weight:800;

    box-shadow:
        0 10px 24px rgba(79,70,229,.24);

    transition:.28s ease;
}

#section_faq > .e-con-inner > .e-con:first-child
.elementor-widget-button .elementor-button:hover{
    transform:translateY(-2px);

    box-shadow:
        0 14px 30px rgba(79,70,229,.34);
}


/* =====================================================
   ACCORDION WRAPPER
===================================================== */

#section_faq .elementor-widget-n-accordion{
    width:100%;
}

#section_faq .e-n-accordion{
    display:flex;
    flex-direction:column;
    gap:12px;
}


/* =====================================================
   FAQ ITEM
===================================================== */

#section_faq .e-n-accordion-item{
    overflow:hidden;

    border:1px solid #e3e8f0;
    border-radius:16px;

    background:rgba(255,255,255,.92);

    box-shadow:
        0 8px 24px rgba(15,23,42,.05);

    transition:
        border-color .28s ease,
        box-shadow .28s ease,
        transform .28s ease,
        background .28s ease;
}

#section_faq .e-n-accordion-item:hover{
    transform:translateY(-2px);

    border-color:#c7d2fe;

    box-shadow:
        0 14px 30px rgba(15,23,42,.09);
}


/* Active/open item */
#section_faq .e-n-accordion-item[open]{
    border-color:rgba(99,102,241,.35);

    background:
        linear-gradient(
            180deg,
            #ffffff 0%,
            #f8f8ff 100%
        );

    box-shadow:
        0 16px 38px rgba(79,70,229,.11);
}


/* =====================================================
   QUESTION TITLE
===================================================== */

#section_faq .e-n-accordion-item-title{
    position:relative;

    min-height:66px;

    display:flex;
    align-items:center;
    justify-content:space-between;

    gap:20px;

    padding:18px 20px !important;

    cursor:pointer;

    list-style:none;

    background:transparent;

    transition:.25s ease;
}

/* remove default marker */
#section_faq .e-n-accordion-item-title::-webkit-details-marker{
    display:none;
}

#section_faq .e-n-accordion-item-title::marker{
    display:none;
}


/* left accent icon */
#section_faq .e-n-accordion-item-title::before{
    content:"?";

    width:34px;
    height:34px;
    min-width:34px;

    display:flex;
    align-items:center;
    justify-content:center;

    border-radius:10px;

    background:#eef2ff;

    color:#4f46e5;

    font-size:16px;
    font-weight:900;

    transition:.25s ease;
}

#section_faq .e-n-accordion-item[open]
.e-n-accordion-item-title::before{
    background:
        linear-gradient(
            135deg,
            #2563eb,
            #7c3aed
        );

    color:#fff;

    box-shadow:
        0 6px 16px rgba(79,70,229,.24);
}


/* question text */
#section_faq .e-n-accordion-item-title-header{
    flex:1;
}

#section_faq .e-n-accordion-item-title-text{
    color:#111827;

    font-size:16px;
    line-height:1.4;
    font-weight:750;

    transition:color .25s ease;
}

#section_faq .e-n-accordion-item[open]
.e-n-accordion-item-title-text{
    color:#4f46e5;
}


/* =====================================================
   ARROW ICON
===================================================== */

#section_faq .e-n-accordion-item-title-icon{
    width:34px;
    height:34px;
    min-width:34px;

    display:flex;
    align-items:center;
    justify-content:center;

    border-radius:10px;

    background:#f8fafc;

    color:#64748b;

    border:1px solid #e7ebf2;

    transition:
        transform .25s ease,
        background .25s ease,
        color .25s ease;
}

#section_faq .e-n-accordion-item[open]
.e-n-accordion-item-title-icon{
    background:#eef2ff;
    color:#4f46e5;
}


/* if Elementor icon fonts act weird */
#section_faq .e-n-accordion-item-title-icon i{
    font-size:13px;
}


/* =====================================================
   ANSWER CONTENT
===================================================== */

#section_faq .e-n-accordion-item > .e-con{
    padding:0 20px 20px 74px !important;
}

#section_faq .e-n-accordion-item
.elementor-widget-text-editor{
    margin:0;
}

#section_faq .e-n-accordion-item
.elementor-widget-text-editor p{
    margin:0;

    color:#64748b;

    font-size:14px;
    line-height:1.75;
}


/* nice divider inside open item */
#section_faq .e-n-accordion-item[open]
.e-n-accordion-item-title{
    border-bottom:1px solid #eef1f6;
}


/* =====================================================
   MICRO ACCENTS
===================================================== */

/* subtle active glow */
#section_faq .e-n-accordion-item[open]::before{
    content:"";

    position:absolute;

    width:120px;
    height:120px;

    right:-60px;
    top:-60px;

    border-radius:50%;

    background:rgba(99,102,241,.08);

    pointer-events:none;
}


/* =====================================================
   TABLET
===================================================== */

@media(max-width:1024px){

    #section_faq > .e-con-inner{
        grid-template-columns:1fr;
        gap:38px;
    }

    #section_faq > .e-con-inner > .e-con:first-child{
        position:relative;
        top:auto;

        text-align:center;
    }

    #section_faq > .e-con-inner > .e-con:first-child
    .elementor-widget-text-editor p{
        margin:auto;
    }

    #section_faq #Ask_Us_Anything
    .elementor-heading-title{
        font-size:38px;
    }

}


/* =====================================================
   MOBILE
===================================================== */

@media(max-width:767px){

    #section_faq{
        padding:60px 16px;
    }

    #section_faq #Ask_Us_Anything
    .elementor-heading-title{
        font-size:31px;
    }

    #section_faq .e-n-accordion{
        gap:10px;
    }

    #section_faq .e-n-accordion-item{
        border-radius:13px;
    }

    #section_faq .e-n-accordion-item-title{
        min-height:60px;

        padding:14px !important;

        gap:12px;
    }

    #section_faq .e-n-accordion-item-title::before{
        width:30px;
        height:30px;
        min-width:30px;

        border-radius:8px;

        font-size:14px;
    }

    #section_faq .e-n-accordion-item-title-icon{
        width:30px;
        height:30px;
        min-width:30px;

        border-radius:8px;
    }

    #section_faq .e-n-accordion-item-title-text{
        font-size:14px;
    }

    #section_faq .e-n-accordion-item > .e-con{
        padding:
            0 14px 17px 56px !important;
    }

    #section_faq .e-n-accordion-item
    .elementor-widget-text-editor p{
        font-size:13px;
    }

}
.gpl-product-trust-list{
    list-style:none;
    margin:0;
    padding:0;

    display:flex;
    flex-direction:column;
    gap:15px;
}

.gpl-product-trust-list li{
    display:flex;
    align-items:center;
    gap:12px;

    color:#53607a;
    font-size:14px;
    font-weight:600;
    line-height:1.45;
}

.gpl-product-trust-list .trust-icon{
    width:24px;
    min-width:24px;
    height:24px;

    display:flex;
    align-items:center;
    justify-content:center;

    color:#3047ff;

    font-size:17px;
    font-weight:800;
}
/* =========================================
   GPLNEST VERSION HISTORY
========================================= */

.gpl-version-history{
    padding:24px;

    border:1px solid #e6eaf2;
    border-radius:20px;

    background:#fff;

    box-shadow:
        0 10px 30px rgba(15,23,42,.06);
}

.gpl-version-head{
    margin-bottom:18px;
}

.gpl-version-head h3{
    margin:0 0 4px;

    color:#0f172a;

    font-size:19px;
    font-weight:800;
}

.gpl-version-head p{
    margin:0;

    color:#64748b;

    font-size:12px;
}


/* GRID */

.gpl-version-grid{
    display:grid;

    grid-template-columns:repeat(4,minmax(0,1fr));

    gap:12px;
}


/* VERSION ITEM */

.gpl-version-item{
    position:relative;

    min-height:76px;

    padding:13px 14px;

    border:1px solid #e6eaf2;
    border-radius:12px;

    background:#f8fafc;

    transition:.25s ease;
}

.gpl-version-item:hover{
    transform:translateY(-2px);

    border-color:#c7d2fe;

    background:#fff;

    box-shadow:
        0 9px 20px rgba(15,23,42,.07);
}


/* LATEST */

.gpl-version-item.latest{
    border-color:#4f46e5;

    background:
        linear-gradient(
            135deg,
            #3048f3,
            #6738e9
        );
}

.gpl-version-item.latest strong,
.gpl-version-item.latest .gpl-version-date{
    color:#fff;
}


/* TOP */

.gpl-version-top{
    display:flex;
    align-items:center;
    justify-content:space-between;

    gap:8px;
}

.gpl-version-top strong{
    color:#111827;

    font-size:14px;
    font-weight:800;
}


/* BADGE */

.gpl-version-badge{
    padding:4px 7px;

    border-radius:999px;

    background:#dcfce7;

    color:#15803d;

    font-size:8px;
    font-weight:800;

    text-transform:uppercase;
    letter-spacing:.4px;
}


/* DATE */

.gpl-version-date{
    display:block;

    margin-top:7px;

    color:#7c879c;

    font-size:10px;
}


/* RESPONSIVE */

@media(max-width:900px){

    .gpl-version-grid{
        grid-template-columns:repeat(2,1fr);
    }

}

@media(max-width:500px){

    .gpl-version-grid{
        grid-template-columns:1fr;
    }

}
/* =========================================
   GPLNEST PRODUCT RIGHT PURCHASE CARD
========================================= */

#product-right{
    position:relative;
    overflow:hidden;

    padding:28px 26px;

    border:1px solid #e5e9f2;
    border-radius:24px;

    background:
        radial-gradient(circle at top right, rgba(99,102,241,.08), transparent 32%),
        #ffffff;

    box-shadow:
        0 18px 45px rgba(15,23,42,.10);

    transition:
        transform .3s ease,
        box-shadow .3s ease,
        border-color .3s ease;
}

#product-right:hover{
    transform:translateY(-4px);
    border-color:#d4d9f5;

    box-shadow:
        0 24px 55px rgba(15,23,42,.13);
}


/* =========================================
   PRODUCT TITLE
========================================= */

#product-right
.elementor-widget-theme-post-title{
    margin:0 0 12px !important;
}

#product-right
.elementor-widget-theme-post-title
.elementor-heading-title{
    margin:0;

    color:#0f172a;

    font-size:25px;
    line-height:1.25;
    font-weight:850;

    letter-spacing:-.6px;
}


/* =========================================
   PRICE + ONE TIME
========================================= */

#product-right
.elementor-element-1880aed{
    margin:0 0 22px !important;
}

#product-right
.elementor-element-1880aed
.elementor-heading-title{
    display:flex;
    align-items:flex-end;
    gap:8px;

    margin:0;

    color:#64748b;

    font-size:13px;
    font-weight:650;
}


/* EDD price */
#product-right
.elementor-element-1880aed
.edd_price{
    color:#111827 !important;

    font-size:42px;
    line-height:1;
    font-weight:900;

    letter-spacing:-1.5px;
}


/* remove dash */
#product-right
.elementor-element-1880aed
.elementor-heading-title{
    font-size:0;
}

/* one-time text */
#product-right
.elementor-element-1880aed
.elementor-heading-title > span:last-child{
    display:inline-flex;

    margin-bottom:3px;

    padding:5px 9px;

    border-radius:999px;

    background:#eef2ff;

    color:#4f46e5;

    font-size:11px;
    font-weight:800;

    text-transform:uppercase;
    letter-spacing:.35px;
}

#product-right
.elementor-element-1880aed
.edd_price{
    font-size:42px;
}


/* =========================================
   EDD FORM RESET
========================================= */

#product-right
.elementor-element-7a29013{
    margin:0 0 25px !important;
}

#product-right
.elementor-element-7a29013
.elementor-heading-title{
    margin:0;
    padding:0;

    font-size:inherit;
}


/* form */
#product-right
.edd_download_purchase_form{
    width:100%;

    margin:0;
}


/* =========================================
   VERSION OPTION
========================================= */

#product-right
.edd_price_options{
    margin:0 0 14px;
}

#product-right
.edd_price_options ul{
    margin:0;
    padding:0;

    list-style:none;
}

#product-right
.edd_price_options li{
    margin:0;

    list-style:none;
}

#product-right
.edd_price_options label{
    width:100%;

    display:flex;
    align-items:center;

    min-height:46px;

    padding:10px 12px;

    border:1px solid #e3e8f0;
    border-radius:12px;

    background:#f8fafc;

    color:#53607a;

    font-size:13px;
    font-weight:600;
}


/* checkbox */
#product-right
.edd_price_options input[type="checkbox"]{
    appearance:none;
    -webkit-appearance:none;

    width:18px;
    height:18px;
    min-width:18px;

    margin:0 9px 0 0;

    position:relative;

    border:2px solid #cbd5e1;
    border-radius:5px;

    background:#fff;
}

#product-right
.edd_price_options input[type="checkbox"]:checked{
    border-color:#4f46e5;

    background:
        linear-gradient(
            135deg,
            #2563eb,
            #7c3aed
        );
}

#product-right
.edd_price_options input[type="checkbox"]:checked::after{
    content:"";

    position:absolute;

    left:5px;
    top:2px;

    width:4px;
    height:8px;

    border:solid #fff;
    border-width:0 2px 2px 0;

    transform:rotate(45deg);
}


/* option price */
#product-right
.edd_price_option_price{
    margin-left:auto;

    color:#111827;

    font-weight:800;
}


/* =========================================
   CRITICAL EDD BUTTON FIX
========================================= */

/* Hide no-JS duplicate */
#product-right .edd-no-js{
    display:none !important;
}

/* Hide checkout duplicate */
#product-right .edd_go_to_checkout{
    display:none !important;
}


/* =========================================
   REAL ADD TO CART BUTTON
========================================= */

#product-right
.edd_purchase_submit_wrapper
button.edd-add-to-cart.edd-has-js{
    position:relative;

    width:100% !important;
    min-height:54px;

    display:flex !important;
    align-items:center;
    justify-content:center;

    padding:14px 20px !important;

    overflow:hidden;

    border:0 !important;
    border-radius:14px !important;

    background:
        linear-gradient(
            90deg,
            #2465f6 0%,
            #4f46e5 50%,
            #7c3aed 100%
        ) !important;

    color:#fff !important;

    font-size:15px !important;
    font-weight:800 !important;

    cursor:pointer;

    box-shadow:
        0 11px 25px rgba(79,70,229,.25);

    transition:
        transform .25s ease,
        box-shadow .25s ease,
        filter .25s ease;
}


/* shine */
#product-right
button.edd-add-to-cart.edd-has-js::before{
    content:"";

    position:absolute;

    top:0;
    left:-80%;

    width:55%;
    height:100%;

    background:
        linear-gradient(
            110deg,
            transparent,
            rgba(255,255,255,.28),
            transparent
        );

    transform:skewX(-18deg);

    transition:left .55s ease;
}

#product-right
button.edd-add-to-cart.edd-has-js:hover::before{
    left:135%;
}


/* hover */
#product-right
button.edd-add-to-cart.edd-has-js:hover{
    transform:translateY(-2px);

    filter:brightness(1.04);

    box-shadow:
        0 15px 30px rgba(79,70,229,.35);
}


/* loading */
#product-right .edd-loading{
    margin-left:8px;
}


/* =========================================
   ADDED TO CART ALERT
========================================= */

#product-right
.edd-cart-added-alert{
    margin-top:8px;

    color:#16a34a;

    font-size:12px;
    font-weight:700;
}

#product-right
.edd-cart-added-alert svg{
    width:15px;
    height:15px;

    fill:currentColor;
}


/* =========================================
   TRUST LIST
========================================= */

#product-right
.elementor-element-72e9034{
    margin:0 !important;

    padding-top:22px;

    border-top:1px solid #edf0f5;
}

#product-right
.elementor-element-72e9034
.elementor-heading-title{
    margin:0;

    font-size:inherit;
}


/* List */
#product-right
.gpl-product-trust-list{
    display:flex;
    flex-direction:column;

    gap:15px;

    margin:0;
    padding:0;

    list-style:none;
}


/* List item */
#product-right
.gpl-product-trust-list li{
    display:flex;
    align-items:center;

    gap:11px;

    color:#53607a;

    font-size:14px;
    line-height:1.45;
    font-weight:600;
}


/* =========================================
   TRUST ICONS
========================================= */

#product-right
.gpl-product-trust-list
.trust-icon{
    width:27px;
    height:27px;
    min-width:27px;

    display:flex;
    align-items:center;
    justify-content:center;

    border-radius:8px;

    background:#eef2ff;

    color:#3348ff;

    font-size:15px;

    overflow:hidden;
}


/* WordPress emoji img cleanup */
#product-right
.gpl-product-trust-list
.trust-icon img.emoji{
    width:16px !important;
    height:16px !important;

    margin:0 !important;

    object-fit:contain;
}


/* Virus */
#product-right .trust-virus .trust-icon{
    background:#ecfdf3;
    color:#16a34a;
}


/* License */
#product-right .trust-license .trust-icon{
    background:#fff7ed;
}


/* Support */
#product-right .trust-support .trust-icon{
    background:#eef2ff;
}


/* Secure */
#product-right .trust-secure .trust-icon{
    background:#eff6ff;
}


/* Downloads */
#product-right .trust-downloads .trust-icon{
    background:#eef2ff;

    color:#4f46e5;

    font-size:20px;
    font-weight:800;
}


/* =========================================
   OPTIONAL STICKY DESKTOP
========================================= */

@media(min-width:1025px){

    #product-right{
        position:sticky;

        top:110px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media(max-width:767px){

    #product-right{
        padding:22px 18px;

        border-radius:20px;
    }

    #product-right
    .elementor-widget-theme-post-title
    .elementor-heading-title{
        font-size:22px;
    }

    #product-right
    .elementor-element-1880aed
    .edd_price{
        font-size:36px;
    }

    #product-right
    .edd_purchase_submit_wrapper
    button.edd-add-to-cart.edd-has-js{
        min-height:50px;

        border-radius:12px !important;

        font-size:14px !important;
    }

    #product-right
    .gpl-product-trust-list li{
        font-size:13px;
    }

}
/* =====================================================
   GPLNEST PRODUCT TAB BAR
===================================================== */

#tab_section {
    position: sticky;
    top: 0;
    z-index: 90;
    width: 100%;
    background: rgb(255 255 255 / 0%);
    /* backdrop-filter: blur(16px); */
    -webkit-backdrop-filter: blur(16px);
    border-top: 1px solid #e8ecf300;
    border-bottom: 1px solid #e8ecf300;
    box-shadow: 0 8px 25px rgba(15, 23, 42, .06);
    color: #fff;
}


/* Inner layout */
#tab_section > .e-con-inner{
    max-width:1180px;
    margin:auto;

    display:grid;
    grid-template-columns:1fr auto;

    align-items:center;

    gap:30px;

    min-height:64px;

    padding:7px 0;
}


/* =====================================================
   LEFT MENU
===================================================== */

#tab_section
.elementor-element-0f022f1{
    min-width:0;
}


/* Elementor menu reset */
#tab_section #pgpl-pd__nav{
    width:auto;
}

#tab_section #pgpl-pd__nav .e-n-menu{
    width:auto;
}

#tab_section #pgpl-pd__nav .e-n-menu-wrapper{
    width:auto !important;
}

#tab_section #pgpl-pd__nav .e-n-menu-heading{
    display:flex;
    align-items:center;

    gap:7px;

    margin:0;
    padding:4px;

    border-radius:999px;

    background:#f3f5fa;
}


/* Menu item */
#tab_section #pgpl-pd__nav .e-n-menu-item{
    margin:0;
}


/* Menu links */
#tab_section
#pgpl-pd__nav
.e-n-menu-title-container{
    min-height:38px;

    display:flex;
    align-items:center;
    justify-content:center;

    padding:0 16px !important;

    border-radius:999px;

    color:#667085 !important;

    font-size:12px;
    line-height:1;
    font-weight:750;

    text-decoration:none;

    transition:
        background .25s ease,
        color .25s ease,
        box-shadow .25s ease;
}


/* Hover */
#tab_section
#pgpl-pd__nav
.e-n-menu-title-container:hover{
    background:#fff;

    color:#3348ff !important;

    box-shadow:
        0 4px 12px rgba(15,23,42,.07);
}


/* Overview first active by default */
#tab_section
#pgpl-pd__nav
.e-n-menu-item:first-child
.e-n-menu-title-container{
    background:#101426;

    color:#fff !important;

    box-shadow:
        0 5px 14px rgba(15,23,42,.14);
}


/* =====================================================
   RIGHT SIDE PRICE + CART
===================================================== */

#tab_section
.elementor-element-5b3fc17{
    display:flex;
    flex-direction:row;

    align-items:center;
    justify-content:flex-end;

    gap:12px;

    width:auto;
}


/* Price widget */
#tab_section
.elementor-element-b84516f{
    width:auto;
    margin:0 !important;
}


/* Price heading */
#tab_section
.elementor-element-b84516f
.elementor-heading-title{
    margin:0;

    color:#111827;

    font-size:inherit;
}


/* EDD price */
#tab_section
.elementor-element-b84516f
.edd_price{
    display:inline-block;

    color:#111827 !important;

    font-size:17px;
    line-height:1;
    font-weight:850;

    letter-spacing:-.3px;
}


/* =====================================================
   CART WIDGET RESET
===================================================== */

#tab_section
.elementor-element-f3de361{
    width:auto;
    margin:0 !important;
}

#tab_section
.elementor-element-f3de361
.elementor-heading-title{
    margin:0;
    padding:0;

    font-size:inherit;
}


/* Form */
#tab_section .edd_download_purchase_form{
    margin:0;

    display:flex;
    align-items:center;
}


/* Hide version selector in compact nav */
#tab_section .edd_price_options{
    display:none !important;
}


/* IMPORTANT - duplicate EDD controls */
#tab_section .edd-no-js,
#tab_section .edd_go_to_checkout{
    display:none !important;
}


/* =====================================================
   REAL ADD TO CART BUTTON
===================================================== */

#tab_section
.edd_purchase_submit_wrapper{
    margin:0;
}

#tab_section
.edd_purchase_submit_wrapper
button.edd-add-to-cart.edd-has-js{
    width:auto !important;
    min-width:105px;
    min-height:38px;

    display:flex !important;
    align-items:center;
    justify-content:center;

    padding:9px 17px !important;

    border:0 !important;
    border-radius:999px !important;

    background:
        linear-gradient(
            90deg,
            #2c47f5 0%,
            #4b45ef 52%,
            #7b38ee 100%
        ) !important;

    color:#fff !important;

    font-size:11px !important;
    line-height:1 !important;
    font-weight:800 !important;

    white-space:nowrap;

    cursor:pointer;

    box-shadow:
        0 7px 17px rgba(73,67,235,.23);

    transition:
        transform .22s ease,
        box-shadow .22s ease,
        filter .22s ease;
}

#tab_section
.edd_purchase_submit_wrapper
button.edd-add-to-cart.edd-has-js:hover{
    transform:translateY(-1px);

    filter:brightness(1.06);

    box-shadow:
        0 10px 21px rgba(73,67,235,.32);
}


/* EDD loading */
#tab_section .edd-loading{
    margin-left:6px;
}


/* Added to cart alert */
#tab_section .edd-cart-added-alert{
    position:absolute;

    right:0;
    top:44px;

    padding:6px 9px;

    border:1px solid #bbf7d0;
    border-radius:7px;

    background:#f0fdf4;

    color:#15803d;

    font-size:10px;
    font-weight:700;

    box-shadow:
        0 7px 18px rgba(15,23,42,.08);
}


/* =====================================================
   SMOOTH ANCHORS
===================================================== */

html{
    scroll-behavior:smooth;
}


/* Prevent sticky bar hiding section heading */
#Overview,
#Installation,
#faq{
    scroll-margin-top:90px;
}


/* =====================================================
   TABLET
===================================================== */

@media(max-width:1024px){

    #tab_section > .e-con-inner{
        padding:7px 18px;
    }

    #tab_section
    #pgpl-pd__nav
    .e-n-menu-title-container{
        padding:0 12px !important;
    }

}


/* =====================================================
   MOBILE
===================================================== */

@media(max-width:767px){

    #tab_section{
        top:0;
    }

    #tab_section > .e-con-inner{
        display:flex;
        flex-direction:column;

        gap:7px;

        padding:8px 12px;
    }


    /* Keep tabs horizontally scrollable */
    #tab_section
    .elementor-element-0f022f1{
        width:100%;
        overflow-x:auto;

        scrollbar-width:none;
    }

    #tab_section
    .elementor-element-0f022f1::-webkit-scrollbar{
        display:none;
    }

    #tab_section #pgpl-pd__nav{
        min-width:max-content;
    }


    /* Hide Elementor hamburger */
    #tab_section .e-n-menu-toggle{
        display:none !important;
    }

    #tab_section .e-n-menu-wrapper{
        display:block !important;
    }


    #tab_section
    .elementor-element-5b3fc17{
        width:100%;

        justify-content:space-between;
    }

    #tab_section
    .elementor-element-b84516f
    .edd_price{
        font-size:16px;
    }

    #tab_section
    .edd_purchase_submit_wrapper
    button.edd-add-to-cart.edd-has-js{
        min-height:36px;

        padding:8px 15px !important;

        font-size:10px !important;
    }
}

/* =========================================
   GPLNEST OVERVIEW SECTION
========================================= */

#Overview{
    position:relative;
    overflow:hidden;
    padding:30px 10px;

    background:
        radial-gradient(circle at 12% 15%, rgba(37,99,235,.07), transparent 28%),
        radial-gradient(circle at 90% 80%, rgba(124,58,237,.07), transparent 30%),
        #ffffff;
}

#Overview > .e-con-inner{
    position:relative;
    z-index:2;

    max-width:1180px;
    margin:0 auto;
}


/* =========================================
   SMALL SECTION LABEL
========================================= */

#Overview
.elementor-element-7559866{
    margin:0 0 8px !important;
}

#Overview
.elementor-element-7559866
.elementor-heading-title{
    margin:0;

    color:#4f46e5;

    font-size:13px;
    line-height:1.2;
    font-weight:800;

    letter-spacing:2px;
    text-transform:uppercase;
}


/* =========================================
   MAIN TITLE
========================================= */

#Overview
.elementor-element-bf4c6e6{
    margin:0 0 0px !important;
}

#Overview
.elementor-element-bf4c6e6
.elementor-heading-title{
    margin:0;

    color:#0f172a;

    font-size:30px;
    line-height:1.08;
    font-weight:850;

    letter-spacing:-1.3px;
}


/* =========================================
   CONTENT CARD
========================================= */

#Overview
.elementor-element-f9c4b16{
    position:relative;

    max-width:900px;

    padding:28px 30px;

    border:1px solid #e5e9f2;
    border-radius:20px;

    background:
        linear-gradient(
            135deg,
            rgba(255,255,255,1),
            rgba(248,250,255,.96)
        );

    box-shadow:
        0 14px 36px rgba(15,23,42,.07);

    transition:
        transform .3s ease,
        box-shadow .3s ease,
        border-color .3s ease;
}

#Overview
.elementor-element-f9c4b16:hover{
    transform:translateY(-3px);

    border-color:#cfd7ff;

    box-shadow:
        0 20px 44px rgba(15,23,42,.10);
}

/* =========================================
   GPL NEST PRODUCT CONTENT
========================================= */

#product_content{
    color:#344054;
    font-size:15px;
    line-height:1.8;
}

#product_content p{
    margin:0 0 10px;
    color:#475467;
}

#product_content h2{
    position:relative;
    margin:42px 0 18px;
    color:#0b1f4d;
    font-size:30px;
    line-height:1.3;
    font-weight:800;
    letter-spacing:-.3px;
}

#product_content h2:after{
content: "";
    display:block;
    width:52px;
    height:4px;
    margin-top:10px;
    border-radius:10px;
    background:linear-gradient(90deg,#3156f5,#7c2ae8);
}


/* =========================================
   LISTS
========================================= */

#product_content ul{
    list-style:none;
    padding:0;
    margin:18px 0 28px;
}

#product_content ul li{
    position:relative;
    margin-bottom:13px;
    padding:12px 14px 12px 48px;
    color:#344054;
    background:#f8faff;
    border:1px solid #edf1f7;
    border-radius:12px;
    transition:.25s ease;
}

#product_content ul li:hover{
    transform:translateX(3px);
    border-color:#d8e0ff;
    background:#f4f7ff;
}

#product_content ul li:before{
    content:"✓";
    position:absolute;
    left:15px;
    top:13px;
    width:22px;
    height:22px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:50%;
    color:#fff;
    background:linear-gradient(135deg,#3156f5,#7c2ae8);
    font-size:12px;
    font-weight:800;
    box-shadow:0 5px 12px rgba(49,86,245,.2);
}

#product_content ul li strong{
    color:#10285c;
}


/* =========================================
   LINKS
========================================= */

#product_content a{
    color:#3156f5;
    text-decoration:none;
    font-weight:600;
}

#product_content a:hover{
    color:#6d28d9;
}


/* =========================================
   EDD PURCHASE BOX
========================================= */

#product_content .edd_download_purchase_form{
    margin-top:36px;
    padding:24px;
    border:1px solid #e3e8f2;
    border-radius:16px;
    background:
        linear-gradient(135deg,rgba(49,86,245,.05),rgba(124,42,232,.05)),
        #fff;
    box-shadow:0 10px 30px rgba(15,40,90,.07);
}


/* Purchase / Add To Cart / Checkout */

#product_content .edd_purchase_submit_wrapper{
    width:100%;
}

#product_content .edd-submit,
#product_content .edd_go_to_checkout{
    display:flex !important;
    align-items:center;
    justify-content:center;
    width:100%;
    min-height:54px;
    padding:14px 24px;
    border:0;
    border-radius:10px;
    color:#fff !important;
    background:linear-gradient(90deg,#3156f5 0%,#7427e9 100%) !important;
    font-size:16px;
    font-weight:700;
    text-decoration:none !important;
    cursor:pointer;
    box-shadow:0 10px 22px rgba(67,56,202,.20);
    transition:.25s ease;
}

#product_content .edd-submit:hover,
#product_content .edd_go_to_checkout:hover{
    transform:translateY(-2px);
    box-shadow:0 14px 28px rgba(67,56,202,.28);
    color:#fff !important;
}


/* Important:
   EDD inline style="display:none" ko CSS normal rule
   override nahi karega. Checkout button visible rahega.
*/


/* =========================================
   ADDED TO CART MESSAGE
========================================= */

#product_content .edd-cart-ajax-alert{
    display:block;
}

#product_content .edd-cart-added-alert{
    margin-top:12px;
    padding:10px 14px;
    border:1px solid #abefc6;
    border-radius:8px;
    color:#067647;
    background:#ecfdf3;
    font-size:14px;
    font-weight:600;
}

#product_content .edd-cart-added-alert svg{
    width:18px;
    height:18px;
    margin-right:5px;
    fill:#12b76a;
}


/* =========================================
   FIRST INTRO AREA
========================================= */

#product_content > p:first-child{
    font-size:18px;
    color:#344054;
}

#product_content > p:first-child:first-letter{
    font-weight:700;
}


/* =========================================
   OPTIONAL SECTION SPACING
========================================= */

#product_content h2 + p{
    margin-top:0;
}

#product_content p + h2,
#product_content ul + h2{
    margin-top:44px;
}


/* =========================================
   MOBILE
========================================= */

@media(max-width:767px){

    #product_content{
        font-size:16px;
        line-height:1.75;
    }

    #product_content h2{
        margin-top:34px;
        font-size:25px;
    }

    #product_content ul li{
        padding:11px 12px 11px 44px;
        border-radius:10px;
    }

    #product_content ul li:before{
        left:13px;
        top:12px;
    }

    #product_content .edd_download_purchase_form{
        padding:18px;
        border-radius:12px;
    }

    #product_content .edd-submit,
    #product_content .edd_go_to_checkout{
        min-height:50px;
        font-size:15px;
    }
}
/* left accent */
#Overview
.elementor-element-f9c4b16::before{
    content:"";

    position:absolute;

    left:0;
    top:20px;
    bottom:20px;

    width:4px;

    border-radius:0 999px 999px 0;

    background:
        linear-gradient(
            180deg,
            #2563eb,
            #4f46e5,
            #7c3aed
        );
}


/* text */
#Overview
.elementor-element-f9c4b16,
#Overview
.elementor-element-f9c4b16 p{
    color:#5f6b7d;

    font-size:16px;
    line-height:1.8;
    font-weight:500;
}

#Overview
.elementor-element-f9c4b16 p{
    margin:0;
}


/* strong text */
#Overview
.elementor-element-f9c4b16 strong{
    color:#0f172a;
    font-weight:750;
}


/* links */
#Overview
.elementor-element-f9c4b16 a{
    color:#4f46e5;

    font-weight:700;
    text-decoration:none;
}

#Overview
.elementor-element-f9c4b16 a:hover{
    text-decoration:underline;
}


/* =========================================
   MOBILE
========================================= */

@media(max-width:767px){

    #Overview{
       padding:30px 10px;;
    }

    #Overview
    .elementor-element-bf4c6e6
    .elementor-heading-title{
        font-size:32px;
        letter-spacing:-.8px;
    }

    #Overview
    .elementor-element-f9c4b16{
        padding:22px 20px 22px 24px;

        border-radius:16px;
    }

    #Overview
    .elementor-element-f9c4b16,
    #Overview
    .elementor-element-f9c4b16 p{
        font-size:14px;
        line-height:1.75;
    }

}
/* =====================================================
   GPLNEST INSTALLATION SECTION
===================================================== */

#Installation{
    position:relative;
    overflow:hidden;
   padding:30px 10px;;

    background:
        radial-gradient(circle at 10% 15%, rgba(37,99,235,.08), transparent 28%),
        radial-gradient(circle at 90% 85%, rgba(124,58,237,.08), transparent 30%),
        linear-gradient(180deg,#ffffff 0%,#f8faff 100%);
}

#Installation > .e-con-inner{
    position:relative;
    z-index:2;

    max-width:1180px;
    margin:auto;
}


/* =====================================================
   SMALL HEADING
===================================================== */

#Installation
.elementor-element-b4952fc{
    margin:0 0 8px;
}

#Installation
.elementor-element-b4952fc
.elementor-heading-title{
    margin:0;

    color:#4f46e5;

    font-size:13px;
    font-weight:800;
    letter-spacing:2.2px;

    text-transform:uppercase;
}


/* =====================================================
   MAIN TITLE
===================================================== */

#Installation
.elementor-element-d0bf6aa{
    margin:0 0 32px;
}

#Installation
.elementor-element-d0bf6aa
.elementor-heading-title{
    margin:0;

    color:#0f172a;

    font-size:44px;
    line-height:1.1;
    font-weight:850;

    letter-spacing:-1.3px;
}


/* =====================================================
   WHAT YOU'LL NEED BOX
===================================================== */

#Installation
.elementor-element-6380255{
    position:relative;

    margin-bottom:42px;
    padding:22px 24px;

    overflow:hidden;

    border:1px solid #dfe6f1;
    border-radius:18px;

    background:
        linear-gradient(
            135deg,
            rgba(239,246,255,.95),
            rgba(245,243,255,.95)
        );

    box-shadow:
        0 10px 30px rgba(15,23,42,.05);
}

#Installation
.elementor-element-6380255::before{
    content:"✓";

    position:absolute;

    top:20px;
    left:20px;

    width:36px;
    height:36px;

    display:flex;
    align-items:center;
    justify-content:center;

    border-radius:10px;

    background:
        linear-gradient(
            135deg,
            #2563eb,
            #7c3aed
        );

    color:#fff;

    font-size:18px;
    font-weight:900;

    box-shadow:
        0 7px 16px rgba(79,70,229,.22);
}

#Installation
.elementor-element-6380255
.elementor-widget-text-editor{
    padding-left:52px;
}

#Installation
.elementor-element-6380255 h3{
    margin:0 0 7px;

    color:#0f172a;

    font-size:18px;
    font-weight:800;
}

#Installation
.elementor-element-6380255 ul{
    margin:0;
    padding-left:18px;
}

#Installation
.elementor-element-6380255 li{
    color:#64748b;

    font-size:14px;
    line-height:1.7;
}


/* =====================================================
   TIMELINE
===================================================== */

#Installation .pgpl-pd__timeline{
    position:relative;

    display:flex;
    flex-direction:column;

    gap:26px;

    margin:0;
    padding:0;

    list-style:none;
}


/* vertical connector */
#Installation .pgpl-pd__timeline::before{
    content:"";

    position:absolute;

    left:25px;
    top:30px;
    bottom:30px;

    width:2px;

    background:
        linear-gradient(
            180deg,
            #2563eb 0%,
            #6366f1 50%,
            #7c3aed 100%
        );

    opacity:.22;
}


/* =====================================================
   STEP
===================================================== */

#Installation .pgpl-pd__tl-step{
    position:relative;

    display:grid;
    grid-template-columns:52px minmax(0,1fr);

    gap:20px;

    margin:0;
    padding:0;
}


/* Number */
#Installation .pgpl-pd__tl-num{
    position:relative;
    z-index:3;

    width:50px;
    height:50px;

    display:flex;
    align-items:center;
    justify-content:center;

    border-radius:50%;

    background:
        linear-gradient(
            135deg,
            #2563eb,
            #4f46e5,
            #7c3aed
        );

    color:#fff;

    font-size:17px;
    font-weight:850;

    border:5px solid #eef2ff;

    box-shadow:
        0 9px 22px rgba(79,70,229,.26);

    transition:.3s ease;
}

#Installation
.pgpl-pd__tl-step:hover
.pgpl-pd__tl-num{
    transform:scale(1.08);
}


/* =====================================================
   STEP CARD
===================================================== */

#Installation .pgpl-pd__tl-body{
    position:relative;

    overflow:hidden;

    padding:24px;

    border:1px solid #e4e9f2;
    border-radius:20px;

    background:#fff;

    box-shadow:
        0 10px 28px rgba(15,23,42,.06);

    transition:
        transform .3s ease,
        box-shadow .3s ease,
        border-color .3s ease;
}

#Installation
.pgpl-pd__tl-step:hover
.pgpl-pd__tl-body{
    transform:translateY(-4px);

    border-color:#c7d2fe;

    box-shadow:
        0 20px 42px rgba(15,23,42,.11);
}


/* top gradient accent */
#Installation .pgpl-pd__tl-body::before{
    content:"";

    position:absolute;

    top:0;
    left:0;
    right:0;

    height:3px;

    background:
        linear-gradient(
            90deg,
            #2563eb,
            #4f46e5,
            #7c3aed
        );

    opacity:0;

    transition:.3s ease;
}

#Installation
.pgpl-pd__tl-step:hover
.pgpl-pd__tl-body::before{
    opacity:1;
}


/* =====================================================
   STEP TITLE
===================================================== */

#Installation .pgpl-pd__tl-body h3{
    margin:0 0 8px;

    color:#0f172a;

    font-size:21px;
    line-height:1.3;
    font-weight:800;

    letter-spacing:-.3px;
}


/* =====================================================
   STEP TEXT
===================================================== */

#Installation .pgpl-pd__tl-body p{
    margin:0 0 18px;

    color:#64748b;

    font-size:14px;
    line-height:1.7;
}


/* inline code-like highlights */
#Installation .pgpl-pd__tl-body strong{
    color:#334155;
    font-weight:750;
}


/* =====================================================
   STEP IMAGE
===================================================== */

#Installation .pgpl-pd__step-img{
/*     width:100%;
    max-width:100%; */

    display:block;
    width: 35%;
    margin-top:12px;

    border:1px solid #e4e8f0;
    border-radius:14px;

    background:#f8fafc;

    box-shadow:
        0 8px 22px rgba(15,23,42,.06);

    transition:
        transform .35s ease,
        box-shadow .35s ease;
}

#Installation
.pgpl-pd__tl-step:hover
.pgpl-pd__step-img{
    transform:scale(1.01);

    box-shadow:
        0 12px 28px rgba(15,23,42,.10);
}

p.pgpl-pd__steps-footer {
    font-size: 14px;
    font-weight: 500;
}
/* =====================================================
   RESPONSIVE
===================================================== */

@media(max-width:767px){

    #Installation{
        padding:30px 10px;;
    }

    #Installation
    .elementor-element-d0bf6aa
    .elementor-heading-title{
        font-size:32px;
    }

    #Installation
    .elementor-element-6380255{
        padding:18px;
    }

    #Installation
    .elementor-element-6380255::before{
        position:relative;

        top:auto;
        left:auto;

        margin-bottom:12px;
    }

    #Installation
    .elementor-element-6380255
    .elementor-widget-text-editor{
        padding-left:0;
    }

    #Installation .pgpl-pd__timeline::before{
        left:20px;
    }

    #Installation .pgpl-pd__tl-step{
        grid-template-columns:42px minmax(0,1fr);
        gap:13px;
    }

    #Installation .pgpl-pd__tl-num{
        width:40px;
        height:40px;

        border-width:4px;

        font-size:14px;
    }

    #Installation .pgpl-pd__tl-body{
        padding:18px;

        border-radius:16px;
    }

    #Installation .pgpl-pd__tl-body h3{
        font-size:18px;
    }

    #Installation .pgpl-pd__tl-body p{
        font-size:13px;
    }

    #Installation .pgpl-pd__step-img{
        border-radius:11px;
    }
}
/* =====================================================
   GPLNEST PRODUCT FAQ SECTION
===================================================== */

#faq{
    position:relative;
    overflow:hidden;

    padding:30px 10px;;

    background:
        radial-gradient(circle at 10% 10%,
            rgba(37,99,235,.07),
            transparent 28%),
        radial-gradient(circle at 90% 90%,
            rgba(124,58,237,.07),
            transparent 30%),
        #f8faff;
}

#faq > .e-con-inner{
    position:relative;
    z-index:2;

    max-width:980px;
    margin:0 auto;
}


/* =====================================================
   SMALL FAQ LABEL
===================================================== */

#faq .elementor-element-b370474{
    margin:0 0 8px !important;
}

#faq
.elementor-element-b370474
.elementor-heading-title{
    margin:0;

    color:#4f46e5;

    font-size:13px;
    line-height:1.2;
    font-weight:800;

    letter-spacing:2.2px;
    text-transform:uppercase;
}


/* =====================================================
   MAIN HEADING
===================================================== */

#faq .elementor-element-e0fa1f3{
    margin:0 0 34px !important;
}

#faq
.elementor-element-e0fa1f3
.elementor-heading-title{
    margin:0;

    color:#0f172a;

    font-size:44px;
    line-height:1.08;
    font-weight:850;

    letter-spacing:-1.3px;
}


/* =====================================================
   ACCORDION WRAPPER
===================================================== */

#faq .elementor-element-0ae1e0c{
    width:100%;
}

#faq .e-n-accordion{
    display:flex;
    flex-direction:column;

    gap:13px;
}


/* =====================================================
   FAQ CARD
===================================================== */

#faq .e-n-accordion-item{
    position:relative;

    overflow:hidden;

    margin:0 !important;

    border:1px solid #e3e8f1;
    border-radius:16px;

    background:#fff;

    box-shadow:
        0 7px 22px rgba(15,23,42,.045);

    transition:
        border-color .25s ease,
        box-shadow .25s ease,
        transform .25s ease;
}


/* Hover */
#faq .e-n-accordion-item:hover{
    border-color:#cdd5ff;

    box-shadow:
        0 12px 28px rgba(15,23,42,.075);
}


/* Open FAQ */
#faq .e-n-accordion-item[open]{
    border-color:#c7d2fe;

    background:
        linear-gradient(
            135deg,
            #ffffff 0%,
            #f8f9ff 100%
        );

    box-shadow:
        0 14px 32px rgba(79,70,229,.09);
}


/* Gradient top line when open */
#faq .e-n-accordion-item[open]::before{
    content:"";

    position:absolute;

    top:0;
    left:0;
    right:0;

    height:3px;

    background:
        linear-gradient(
            90deg,
            #2563eb,
            #4f46e5,
            #7c3aed
        );
}


/* =====================================================
   QUESTION / SUMMARY
===================================================== */

#faq .e-n-accordion-item-title{
    min-height:64px;

    display:flex;
    align-items:center;
    justify-content:space-between;

    gap:20px;

    padding:17px 20px !important;

    border:0 !important;

    background:transparent !important;

    cursor:pointer;
}


/* Remove browser marker */
#faq .e-n-accordion-item-title::marker{
    display:none;
}

#faq .e-n-accordion-item-title::-webkit-details-marker{
    display:none;
}


/* =====================================================
   QUESTION NUMBER / ICON
===================================================== */

#faq .e-n-accordion-item-title-header{
    display:flex;
    align-items:center;

    gap:13px;

    min-width:0;
}


/* Question icon */
#faq .e-n-accordion-item-title-header::before{
    content:"?";

    width:31px;
    height:31px;
    min-width:31px;

    display:flex;
    align-items:center;
    justify-content:center;

    border-radius:9px;

    background:#eef2ff;

    color:#4f46e5;

    font-size:14px;
    font-weight:900;

    transition:
        background .25s ease,
        color .25s ease,
        transform .25s ease;
}


/* Active icon */
#faq
.e-n-accordion-item[open]
.e-n-accordion-item-title-header::before{
    background:
        linear-gradient(
            135deg,
            #2563eb,
            #7c3aed
        );

    color:#fff;

    transform:rotate(-6deg);

    box-shadow:
        0 6px 14px rgba(79,70,229,.22);
}


/* =====================================================
   QUESTION TEXT
===================================================== */

#faq .e-n-accordion-item-title-text{
    color:#172033 !important;

    font-size:15px;
    line-height:1.45;
    font-weight:750;

    transition:color .25s ease;
}

#faq
.e-n-accordion-item[open]
.e-n-accordion-item-title-text{
    color:#312e81 !important;
}


/* =====================================================
   CHEVRON ICON
===================================================== */

#faq .e-n-accordion-item-title-icon{
    width:32px;
    height:32px;
    min-width:32px;

    display:flex;
    align-items:center;
    justify-content:center;

    border-radius:50%;

    background:#f4f6fa;

    color:#64748b;

    transition:
        background .25s ease,
        color .25s ease,
        transform .25s ease;
}

#faq .e-n-accordion-item-title-icon svg{
    width:11px !important;
    height:11px !important;

    fill:currentColor !important;
}


/* Open */
#faq
.e-n-accordion-item[open]
.e-n-accordion-item-title-icon{
    background:#eef2ff;

    color:#4f46e5;

    box-shadow:
        inset 0 0 0 1px #d9ddff;
}


/* =====================================================
   ANSWER AREA
===================================================== */

#faq
.e-n-accordion-item
> [role="region"]{
    padding:0 20px 20px 64px !important;

    background:transparent !important;
}


/* Elementor inner widget reset */
#faq
.e-n-accordion-item
> [role="region"]
.elementor-widget-text-editor{
    margin:0 !important;
}


/* Answer text */
#faq
.e-n-accordion-item
> [role="region"]
.elementor-widget-text-editor,
#faq
.e-n-accordion-item
> [role="region"]
.elementor-widget-text-editor p{
    color:#64748b;

    font-size:14px;
    line-height:1.75;
    font-weight:500;
}


/* Remove unwanted paragraph margin */
#faq
.e-n-accordion-item
> [role="region"]
.elementor-widget-text-editor p{
    margin:0;
}


/* Links inside answers */
#faq
.e-n-accordion-item
> [role="region"] a{
    color:#4f46e5;

    font-weight:700;
    text-decoration:none;
}

#faq
.e-n-accordion-item
> [role="region"] a:hover{
    text-decoration:underline;
}


/* Strong text */
#faq
.e-n-accordion-item
> [role="region"] strong{
    color:#334155;
    font-weight:750;
}


/* =====================================================
   DESKTOP SMALL ANIMATION
===================================================== */

@media(min-width:768px){

    #faq .e-n-accordion-item:hover{
        transform:translateY(-2px);
    }

}


/* =====================================================
   TABLET
===================================================== */

@media(max-width:1024px){

    #faq{
        padding:30px 10px;;
    }

    #faq > .e-con-inner{
        max-width:900px;
    }

}


/* =====================================================
   MOBILE
===================================================== */

@media(max-width:767px){

    #faq{
       padding:30px 10px;;
    }

    #faq
    .elementor-element-e0fa1f3
    .elementor-heading-title{
        font-size:32px;
        letter-spacing:-.8px;
    }

    #faq .e-n-accordion{
        gap:10px;
    }

    #faq .e-n-accordion-item{
        border-radius:14px;
    }

    #faq .e-n-accordion-item-title{
        min-height:58px;

        gap:10px;

        padding:14px 14px !important;
    }

    #faq .e-n-accordion-item-title-header{
        gap:10px;
    }

    #faq .e-n-accordion-item-title-header::before{
        width:28px;
        height:28px;
        min-width:28px;

        border-radius:8px;

        font-size:12px;
    }

    #faq .e-n-accordion-item-title-text{
        font-size:14px;
    }

    #faq .e-n-accordion-item-title-icon{
        width:28px;
        height:28px;
        min-width:28px;
    }

    #faq
    .e-n-accordion-item
    > [role="region"]{
        padding:
            0 14px 17px 52px !important;
    }

    #faq
    .e-n-accordion-item
    > [role="region"]
    .elementor-widget-text-editor,
    #faq
    .e-n-accordion-item
    > [role="region"]
    .elementor-widget-text-editor p{
        font-size:13px;
        line-height:1.7;
    }

}
/* =====================================================
   GPLNEST MEMBERSHIP CTA - UPDATED
===================================================== */

#membership{
    position:relative;
    overflow:hidden;
    background:#f8faff;
}

#membership > .e-con-inner{
    position:relative;
    max-width:1180px;
    margin:0 auto;

    display:grid;
    grid-template-columns:1fr auto;
    align-items:center;
    gap:40px;

    padding:40px 44px;

    overflow:hidden;
    border-radius:28px;

    background:
        radial-gradient(circle at 10% 10%, rgba(255,255,255,.18), transparent 28%),
        radial-gradient(circle at 92% 88%, rgba(255,255,255,.12), transparent 28%),
        linear-gradient(110deg,#2446f4 0%,#4f46e5 52%,#7c3aed 100%);

    box-shadow:
        0 24px 55px rgba(79,70,229,.24);
}


/* Decorative circles */

#membership > .e-con-inner::before,
#membership > .e-con-inner::after{
    content:"";
    position:absolute;
    border-radius:50%;
    pointer-events:none;
}

#membership > .e-con-inner::before{
    width:270px;
    height:270px;
    top:-170px;
    right:-70px;
    background:rgba(255,255,255,.10);
}

#membership > .e-con-inner::after{
    width:190px;
    height:190px;
    bottom:-125px;
    left:-85px;
    background:rgba(255,255,255,.07);
}


/* =====================================================
   LEFT CONTENT
===================================================== */

#membership .elementor-element-869e94f{
    position:relative;
    z-index:2;
    max-width:720px;
}


/* Membership label */

#membership .elementor-element-2c0a162{
    margin:0 0 12px !important;
}

#membership
.elementor-element-2c0a162
.elementor-heading-title{
    display:inline-flex;
    align-items:center;

    margin:0;
    padding:7px 11px;

    border:1px solid rgba(255,255,255,.20);
    border-radius:999px;

    background:rgba(255,255,255,.12);

    color:#fff;

    font-size:10px;
    line-height:1;
    font-weight:800;

    letter-spacing:1.4px;
    text-transform:uppercase;

    backdrop-filter:blur(8px);
    -webkit-backdrop-filter:blur(8px);
}


/* Main heading */

#membership .elementor-element-b8c4f3d{
    margin:0 0 10px !important;
}

#membership
.elementor-element-b8c4f3d
.elementor-heading-title{
    margin:0;

    color:#fff;

    font-size:36px;
    line-height:1.12;
    font-weight:850;

    letter-spacing:-1px;
}


/* Description */

#membership .elementor-element-eb49dd4{
    margin:0 !important;
}

#membership
.elementor-element-eb49dd4,
#membership
.elementor-element-eb49dd4 p{
    margin:0;

    color:rgba(255,255,255,.84);

    font-size:15px;
    line-height:1.7;
    font-weight:500;
}


/* =====================================================
   RIGHT BUTTON
===================================================== */

#membership .elementor-element-206a29c{
    position:relative;
    z-index:2;

    width:auto;

    display:flex;
    align-items:center;
    justify-content:flex-end;
}

#membership .elementor-element-46ee6bb{
    margin:0 !important;
}

#membership
.elementor-element-46ee6bb
.elementor-button{
    min-height:52px;

    display:inline-flex;
    align-items:center;
    justify-content:center;

    padding:14px 22px;

    border:1px solid rgba(255,255,255,.50);
    border-radius:14px;

    background:#fff;

    color:#4338ca;

    font-size:13px;
    font-weight:800;

    box-shadow:
        0 10px 25px rgba(15,23,42,.18);

    transition:
        transform .25s ease,
        box-shadow .25s ease,
        background .25s ease;
}


/* Arrow */

#membership
.elementor-element-46ee6bb
.elementor-button-text::after{
    content:"→";
    display:inline-block;

    margin-left:9px;

    font-size:16px;
    transition:transform .25s ease;
}


/* Hover */

#membership
.elementor-element-46ee6bb
.elementor-button:hover{
    transform:translateY(-2px);

    background:#f8faff;

    box-shadow:
        0 15px 32px rgba(15,23,42,.22);
}

#membership
.elementor-element-46ee6bb
.elementor-button:hover
.elementor-button-text::after{
    transform:translateX(4px);
}


/* =====================================================
   TABLET
===================================================== */

@media(max-width:900px){

    #membership > .e-con-inner{
        grid-template-columns:1fr;
        gap:24px;
      padding:30px 10px;
    }

    #membership .elementor-element-206a29c{
        justify-content:flex-start;
    }

}


/* =====================================================
   MOBILE
===================================================== */

@media(max-width:767px){

    #membership{
        padding:30px 10px;
    }

    #membership > .e-con-inner{
        padding:28px 22px;
        border-radius:22px;
    }

    #membership
    .elementor-element-b8c4f3d
    .elementor-heading-title{
        font-size:28px;
        letter-spacing:-.7px;
    }

    #membership
    .elementor-element-eb49dd4,
    #membership
    .elementor-element-eb49dd4 p{
        font-size:14px;
    }

    #membership .elementor-element-206a29c,
    #membership .elementor-element-46ee6bb{
        width:100%;
    }

    #membership
    .elementor-element-46ee6bb
    .elementor-button{
        width:100%;
        min-height:50px;
    }

}
/* =====================================================
   GPLNEST RELATED PRODUCTS HEADER
===================================================== */

#related-products{
    position:relative;
    overflow:hidden;

    padding:75px 24px 35px;

    background:
        radial-gradient(circle at 10% 20%, rgba(37,99,235,.06), transparent 28%),
        radial-gradient(circle at 90% 80%, rgba(124,58,237,.06), transparent 28%),
        #ffffff;
}

#related-products > .e-con-inner{
    max-width:1180px;
    margin:0 auto;

    display:grid;
    grid-template-columns:1fr auto;

    align-items:end;
    gap:35px;
}


/* =====================================================
   LEFT SIDE
===================================================== */

#related-products
.elementor-element-fb73a41{
    max-width:720px;
}


/* Small label */

#related-products
.elementor-element-425e8a8{
    margin:0 0 10px !important;
}

#related-products
.elementor-element-425e8a8
.elementor-heading-title{
    margin:0;

    color:#4f46e5;

    font-size:13px;
    line-height:1.2;
    font-weight:800;

    letter-spacing:2px;
    text-transform:uppercase;
}


/* Description */

#related-products
.elementor-element-483bb10{
    margin:0 !important;
}

#related-products
.elementor-element-483bb10,
#related-products
.elementor-element-483bb10 p{
    margin:0;

    color:#64748b;

    font-size:15px;
    line-height:1.7;
    font-weight:500;
}


/* =====================================================
   RIGHT BUTTON
===================================================== */

#related-products
.elementor-element-4b59e8d{
    width:auto;

    display:flex;
    align-items:center;
    justify-content:flex-end;
}

#related-products
.elementor-element-8ba936b{
    margin:0 !important;
}


/* Button */

#related-products
.elementor-element-8ba936b
.elementor-button{
    min-height:48px;

    display:inline-flex;
    align-items:center;
    justify-content:center;

    padding:12px 20px;

    border:1px solid #d9def0;
    border-radius:12px;

    background:#fff;

    color:#3348ef;

    font-size:13px;
    font-weight:800;

    box-shadow:
        0 7px 18px rgba(15,23,42,.06);

    transition:
        transform .25s ease,
        background .25s ease,
        color .25s ease,
        border-color .25s ease,
        box-shadow .25s ease;
}


/* Arrow */

#related-products
.elementor-element-8ba936b
.elementor-button-text::after{
    content:"→";

    display:inline-block;

    margin-left:8px;

    font-size:16px;

    transition:transform .25s ease;
}


/* Hover */

#related-products
.elementor-element-8ba936b
.elementor-button:hover{
    transform:translateY(-2px);

    border-color:#4f46e5;

    background:
        linear-gradient(
            90deg,
            #2c47f5,
            #4f46e5,
            #7c3aed
        );

    color:#fff;

    box-shadow:
        0 12px 25px rgba(79,70,229,.22);
}

#related-products
.elementor-element-8ba936b
.elementor-button:hover
.elementor-button-text::after{
    transform:translateX(4px);
}


/* =====================================================
   TABLET
===================================================== */

@media(max-width:900px){

    #related-products > .e-con-inner{
        grid-template-columns:1fr;
        align-items:start;
        gap:22px;
    }

    #related-products
    .elementor-element-4b59e8d{
        justify-content:flex-start;
    }

}


/* =====================================================
   MOBILE
===================================================== */

@media(max-width:767px){

    #related-products{
        padding:55px 16px 25px;
    }

    #related-products
    .elementor-element-483bb10,
    #related-products
    .elementor-element-483bb10 p{
        font-size:14px;
    }

    #related-products
    .elementor-element-4b59e8d,
    #related-products
    .elementor-element-8ba936b{
        width:100%;
    }

    #related-products
    .elementor-element-8ba936b
    .elementor-button{
        width:100%;
    }
}
/* =========================================
   GPL NEST - NEW ACCOUNT / RIGHT LOGIN CARD
   Container ID: #newcreate
   ========================================= */

#newcreate{
    position: relative;
    overflow: hidden;
    padding: 40px 42px 34px;
    border-radius: 18px;
    background:
        radial-gradient(circle at 50% 0%, rgba(115, 74, 255, .18), transparent 38%),
        linear-gradient(145deg, #f8f8ff 0%, #eef4ff 55%, #f9f7ff 100%);
    border: 1px solid rgba(83, 74, 235, .08);
    box-shadow: 0 18px 45px rgba(29, 52, 112, .08);
    text-align: center;
    align-items: center;
}

/* subtle background decoration */
#newcreate:before{
    content: "";
    position: absolute;
    width: 300px;
    height: 300px;
    border-radius: 50%;
    right: -160px;
    top: -145px;
    background: rgba(92, 62, 239, .06);
    pointer-events: none;
}

#newcreate:after{
    content: "";
    position: absolute;
    width: 220px;
    height: 220px;
    border-radius: 50%;
    left: -130px;
    bottom: -125px;
    background: rgba(24, 110, 245, .05);
    pointer-events: none;
}

/* keep widgets above decorations */
#newcreate > .elementor-element{
    position: relative;
    z-index: 2;
}


/* =========================================
   IMAGE
   ========================================= */

#newcreate .elementor-element-0f98637{
    margin-bottom: 12px;
}

#newcreate .elementor-element-0f98637 img{
    display: block;
    width: 100%;
    max-width: 430px;
    height: auto;
    margin: 0 auto;
    border-radius: 14px;
    object-fit: contain;
}


/* =========================================
   MAIN HEADING
   ========================================= */

#newcreate .elementor-element-abf8e3f{
    margin-bottom: 8px;
}

#newcreate .elementor-element-abf8e3f .elementor-heading-title{
    margin: 0;
    color: #101a33;
    font-size: 34px;
    line-height: 1.2;
    font-weight: 800;
    letter-spacing: -0.5px;
}

#newcreate .elementor-element-abf8e3f .elementor-heading-title span{
    color: #5138ef;
}


/* =========================================
   DESCRIPTION
   ========================================= */

#newcreate .elementor-element-51e2d14{
    max-width: 480px;
    margin: 0 auto 23px;
}

#newcreate .elementor-element-51e2d14 .elementor-heading-title{
    margin: 0;
    color: #68738a;
    font-size: 15px;
    line-height: 1.7;
    font-weight: 400;
}


/* =========================================
   CREATE ACCOUNT BUTTON
   ========================================= */

#newcreate .elementor-element-d2883bc{
    width: 100%;
    margin-bottom: 30px;
}

#newcreate .elementor-element-d2883bc .elementor-button{
    width: 100%;
    max-width: 340px;
    min-height: 56px;
    display: inline-flex;
    justify-content: center;
    align-items: center;

    padding: 14px 28px;

    border: 2px solid #5c3cf0;
    border-radius: 9px;

    color: #5335ec;
    background: rgba(255,255,255,.58);

    font-size: 16px;
    font-weight: 700;
    text-decoration: none;

    box-shadow: 0 7px 20px rgba(71, 62, 190, .06);

    transition:
        transform .2s ease,
        box-shadow .2s ease,
        color .2s ease,
        background .2s ease;
}

#newcreate .elementor-element-d2883bc .elementor-button:hover{
    color: #fff;
    border-color: transparent;
    background: linear-gradient(100deg, #1468f4 0%, #6330ed 100%);
    transform: translateY(-2px);
    box-shadow: 0 12px 28px rgba(82, 54, 225, .22);
}


/* =========================================
   BENEFIT ICON LIST
   ========================================= */

#newcreate .elementor-element-f4d9432{
    width: 100%;
    margin-top: 4px;
}

#newcreate .elementor-element-f4d9432 .elementor-icon-list-items{
    width: 100%;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    align-items: start;
    gap: 12px;

    margin: 0;
    padding: 0;
}

/* override Elementor inline layout */
#newcreate .elementor-element-f4d9432 .elementor-icon-list-item{
    width: 100% !important;
    margin: 0 !important;
    padding: 0 10px;

    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;

    gap: 9px;

    border-right: 1px solid rgba(72, 86, 128, .12);
}

#newcreate .elementor-element-f4d9432 .elementor-icon-list-item:last-child{
    border-right: 0;
}


/* icon circle */

#newcreate .elementor-icon-list-icon{
    width: 48px;
    height: 48px;

    display: flex;
    align-items: center;
    justify-content: center;

    padding: 11px;
    margin: 0 !important;

    border-radius: 50%;
    background: rgba(255,255,255,.78);

    box-shadow: 0 8px 22px rgba(58, 70, 150, .10);
}

#newcreate .elementor-icon-list-icon svg{
    width: 25px;
    height: 25px;
}


/* benefit text */

#newcreate .elementor-icon-list-text{
    color: #152039;
    font-size: 12px;
    line-height: 1.4;
    font-weight: 700;
    text-align: center;

    padding: 0 !important;
}


/* =========================================
   OPTIONAL: nicer icon consistency
   Overrides mixed SVG colors slightly
   ========================================= */

#newcreate .elementor-icon-list-item:nth-child(1)
.elementor-icon-list-icon{
    background: rgba(61, 122, 255, .10);
}

#newcreate .elementor-icon-list-item:nth-child(2)
.elementor-icon-list-icon{
    background: rgba(44, 207, 207, .10);
}

#newcreate .elementor-icon-list-item:nth-child(3)
.elementor-icon-list-icon{
    background: rgba(104, 72, 241, .10);
}


/* =========================================
   TABLET
   ========================================= */

@media (max-width: 1024px){

    #newcreate{
        padding: 34px 28px 30px;
    }

    #newcreate .elementor-element-0f98637 img{
        max-width: 380px;
    }

    #newcreate .elementor-element-abf8e3f .elementor-heading-title{
        font-size: 30px;
    }
}


/* =========================================
   MOBILE
   ========================================= */

@media (max-width: 767px){

    #newcreate{
        padding: 28px 18px 25px;
        border-radius: 14px;
    }

    #newcreate .elementor-element-0f98637 img{
        max-width: 320px;
    }

    #newcreate .elementor-element-abf8e3f .elementor-heading-title{
        font-size: 27px;
    }

    #newcreate .elementor-element-51e2d14 .elementor-heading-title{
        font-size: 14px;
        line-height: 1.65;
    }

    #newcreate .elementor-element-d2883bc .elementor-button{
        max-width: 100%;
        font-size: 15px;
    }

    #newcreate .elementor-element-f4d9432
    .elementor-icon-list-items{
        grid-template-columns: repeat(3, 1fr);
        gap: 4px;
    }

    #newcreate .elementor-element-f4d9432
    .elementor-icon-list-item{
        padding: 0 4px;
    }

    #newcreate .elementor-icon-list-icon{
        width: 43px;
        height: 43px;
        padding: 10px;
    }

    #newcreate .elementor-icon-list-icon svg{
        width: 22px;
        height: 22px;
    }

    #newcreate .elementor-icon-list-text{
        font-size: 10px;
    }
}
/* ==============================================
   GPL NEST HEADER ACTIONS
============================================== */

.gpl-hd-actions{
    position:relative;

    display:flex;
    align-items:center;
    justify-content:flex-end;

    gap:10px;

    font-family:inherit;
}


/* ==============================================
   BROWSE
============================================== */

.gpl-hd-browse{
    min-height:43px;

    display:inline-flex;
    align-items:center;
    gap:8px;

    padding:0 15px;

    border:1px solid rgba(255,255,255,.18);
    border-radius:999px;

    background:rgba(255,255,255,.08);

    color:#fff;

    font-size:13px;
    font-weight:700;

    text-decoration:none;

    transition:.2s ease;
}

.gpl-hd-browse:hover{
    background:rgba(255,255,255,.13);
    color:#fff;
}

.gpl-hd-browse svg{
    width:17px;
    height:17px;

    fill:none;
    stroke:currentColor;
    stroke-width:1.8;

    stroke-linecap:round;
    stroke-linejoin:round;
}


/* ==============================================
   ACCOUNT WRAPPER
============================================== */

.gpl-hd-account{
    position:relative;
}


/* account button */

.gpl-hd-account-toggle{
    min-height:44px;

    display:flex;
    align-items:center;
    gap:8px;

    padding:5px 13px 5px 6px;

    border:1px solid rgba(255,255,255,.9);
    border-radius:999px;

    background:rgba(255,255,255,.08);

    color:#fff;

    font-family:inherit;
    font-size:13px;
    font-weight:700;

    cursor:pointer;

    box-shadow:
        0 0 0 1px rgba(255,255,255,.13);

    transition:.2s ease;
}

.gpl-hd-account-toggle:hover,
.gpl-hd-account-toggle[aria-expanded="true"]{
    background:#303862;
}


/* ==============================================
   AVATAR
============================================== */

.gpl-hd-avatar{
    width:29px;
    height:29px;
    min-width:29px;

    display:flex;
    align-items:center;
    justify-content:center;

    border-radius:9px;

    background:#293ee7;

    color:#fff;

    font-size:10px;
    font-weight:900;
}

.gpl-hd-avatar-lg{
    width:40px;
    height:40px;
    min-width:40px;

    border-radius:11px;

    font-size:13px;
}


/* ==============================================
   CHEVRON
============================================== */

.gpl-hd-chevron{
    width:14px !important;
    height:14px !important;

    fill:none;
    stroke:currentColor;
    stroke-width:1.9;

    stroke-linecap:round;
    stroke-linejoin:round;

    transition:transform .2s ease;
}

.gpl-hd-account-toggle[aria-expanded="true"]
.gpl-hd-chevron{
    transform:rotate(180deg);
}


/* ==============================================
   DROPDOWN
============================================== */

.gpl-hd-account-menu{
    position:absolute;

    top:calc(100% + 10px);
    right:0;

    z-index:99999;

    width:320px;

    padding:10px 9px;

    overflow:hidden;

    border:1px solid rgba(255,255,255,.08);
    border-radius:18px;

    background:#0e1326;

    color:#fff;

    box-shadow:
        0 28px 60px rgba(4,7,18,.42),
        0 8px 20px rgba(4,7,18,.22);
}

.gpl-hd-account-menu[hidden]{
    display:none !important;
}


/* ==============================================
   USER DETAILS
============================================== */

.gpl-hd-user{
    display:flex;
    align-items:center;

    gap:11px;

    padding:9px 11px 14px;

    border-bottom:1px solid rgba(255,255,255,.09);
}

.gpl-hd-user-meta{
    min-width:0;

    display:flex;
    flex-direction:column;

    gap:5px;
}

.gpl-hd-user-meta strong{
    max-width:225px;

    overflow:hidden;

    color:#fff;

    font-size:12px;
    line-height:1.3;
    font-weight:800;

    white-space:nowrap;
    text-overflow:ellipsis;
}

.gpl-hd-user-meta > span{
    max-width:225px;

    overflow:hidden;

    color:#9ca6bc;

    font-size:10px;

    white-space:nowrap;
    text-overflow:ellipsis;
}


/* ==============================================
   NAVIGATION
============================================== */

.gpl-hd-account-nav{
    padding:8px 0;
}

.gpl-hd-account-nav ul{
    display:flex;
    flex-direction:column;

    gap:1px;

    margin:0;
    padding:0;

    list-style:none;
}

.gpl-hd-account-nav li{
    margin:0;
    padding:0;
}

.gpl-hd-account-nav a{
    min-height:40px;

    display:flex;
    align-items:center;

    gap:11px;

    padding:8px 11px;

    border-radius:9px;

    color:#cbd1df;

    font-size:12px;
    font-weight:700;

    text-decoration:none;

    transition:.18s ease;
}

.gpl-hd-account-nav a:hover{
    background:rgba(255,255,255,.065);

    color:#fff;
}


/* icons */

.gpl-hd-account-nav svg,
.gpl-hd-logout svg{
    width:17px;
    height:17px;
    min-width:17px;

    fill:none;
    stroke:currentColor;
    stroke-width:1.8;

    stroke-linecap:round;
    stroke-linejoin:round;

    color:#8993ab;
}

.gpl-hd-account-nav a:hover svg{
    color:#c7d2fe;
}


/* ==============================================
   LOGOUT
============================================== */

.gpl-hd-logout{
    min-height:44px;

    display:flex;
    align-items:center;

    gap:11px;

    padding:10px 11px;

    border-top:1px solid rgba(255,255,255,.09);

    color:#9ca5b9;

    font-size:12px;
    font-weight:700;

    text-decoration:none;

    transition:.18s ease;
}

.gpl-hd-logout:hover{
    color:#fff;
}


/* ==============================================
   CART
============================================== */

.gpl-hd-cart{
    min-height:42px;

    display:flex;
    align-items:center;

    gap:7px;

    padding:0 4px;

    color:#fff;

    font-size:13px;
    font-weight:700;

    text-decoration:none;
}

.gpl-hd-cart svg{
    width:18px;
    height:18px;

    fill:none;
    stroke:currentColor;
    stroke-width:1.9;

    stroke-linecap:round;
    stroke-linejoin:round;

    color:#d7dcef;
}

.gpl-hd-cart:hover{
    color:#fff;
}


/* ==============================================
   LOGIN
============================================== */

.gpl-hd-login{
    min-height:43px;

    display:flex;
    align-items:center;

    padding:0 18px;

    border:1px solid rgba(255,255,255,.5);
    border-radius:999px;

    background:rgba(255,255,255,.08);

    color:#fff;

    font-size:13px;
    font-weight:700;

    text-decoration:none;
}


/* ==============================================
   MOBILE
============================================== */

@media(max-width:767px){

    .gpl-hd-browse{
        display:none;
    }

    .gpl-hd-account-label{
        display:none;
    }

    .gpl-hd-account-toggle{
        padding:5px;
    }

    .gpl-hd-account-toggle .gpl-hd-chevron{
        display:none;
    }

    .gpl-hd-cart span{
        display:none;
    }

    .gpl-hd-account-menu{
        position:fixed;

        top:70px;
        left:15px;
        right:15px;

        width:auto;
    }

}
/* =========================================================
   GPLNEST MEMBERSHIP - CLEAN FINAL CSS
========================================================= */


/* =========================
   SECTION
========================= */

.gpl-membership{
    position:relative;
    overflow:hidden;
    padding:90px 24px;

    background:
        radial-gradient(circle at 15% 15%, rgba(37,99,235,.10), transparent 28%),
        radial-gradient(circle at 85% 80%, rgba(124,58,237,.11), transparent 30%),
        linear-gradient(180deg,#f9faff 0%,#f4f6ff 100%);
}

.gpl-membership::before,
.gpl-membership::after{
    content:"";
    position:absolute;

    width:370px;
    height:370px;

    border-radius:50%;
    filter:blur(90px);

    pointer-events:none;
}

.gpl-membership::before{
    left:-180px;
    top:180px;

    background:rgba(59,130,246,.12);
}

.gpl-membership::after{
    right:-180px;
    bottom:60px;

    background:rgba(139,92,246,.12);
}

.gpl-membership-inner{
    position:relative;
    z-index:2;

    max-width:1380px;
    margin:auto;
}


/* =========================
   HEADER
========================= */

.gpl-membership-kicker{
    text-align:center;
    margin-bottom:12px;

    color:#4f46e5;

    font-size:13px;
    font-weight:800;
    letter-spacing:2.5px;
    text-transform:uppercase;
}

.gpl-membership-title{
    max-width:900px;
    margin:0 auto 16px;

    text-align:center;

    color:#0f172a;

    font-size:48px;
    font-weight:850;
    line-height:1.1;
    letter-spacing:-1.5px;
}

.gpl-membership-title .highlight{
    background:linear-gradient(
        90deg,
        #2583ff 0%,
        #5966f7 50%,
        #8b5cf6 100%
    );

    -webkit-background-clip:text;
    -webkit-text-fill-color:transparent;
    background-clip:text;
}

.gpl-membership-desc{
    max-width:820px;
    margin:0 auto 32px;

    text-align:center;

    color:#64748b;

    font-size:16px;
    line-height:1.7;
}


/* =========================
   EVERY PLAN INCLUDES
========================= */

.gpl-membership-includes{
    max-width:1200px;

       padding: 0px 26px;
    margin:0 auto 55px;

    display:grid;
    grid-template-columns:repeat(5,1fr);

    gap:0;

    border:1px solid rgba(99,102,241,.10);
    border-radius:22px;

    background:rgba(255,255,255,.92);

    box-shadow:
        0 15px 38px rgba(15,23,42,.06);

    backdrop-filter:blur(16px);
}
#tab_section #pgpl-pd__nav .e-n-menu-item:first-child .e-n-menu-title-container span {
    color: #fff !important;
}
.gpl-membership-includes span{
    position:relative;

    display:flex;
    align-items:center;
    justify-content:center;

    min-height:54px;

    color:#334155;

    font-size:13px;
    line-height:1.45;
    font-weight:650;

    text-align:center;
}

.gpl-membership-includes span:not(:last-child){
    border-right:1px solid #e8ecf4;
}

.gpl-membership-includes span::before{
    content:"✓";

    width:29px;
    height:29px;
    min-width:29px;

    margin-right:10px;

    display:flex;
    align-items:center;
    justify-content:center;

    border-radius:9px;

    background:#eef4ff;

    color:#2563eb;

    font-size:14px;
    font-weight:900;
}


/* =========================
   PRICING GRID
========================= */

.gpl-pricing-grid{
    max-width:1180px;
    margin:0 auto;

    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));

    gap:26px;
    align-items:stretch;
}


/* =========================
   PLAN CARD
========================= */

.gpl-plan{
    position:relative;

    display:flex;
    flex-direction:column;

    min-height:570px;

    padding:34px 28px 27px;

    border:1px solid #e7ebf3;
    border-radius:25px;

    background:
        radial-gradient(circle at top right, rgba(59,130,246,.05), transparent 30%),
        #fff;

    box-shadow:
        0 15px 40px rgba(15,23,42,.07);

    transition:
        transform .35s ease,
        box-shadow .35s ease,
        border-color .35s ease;
}

.gpl-plan:hover{
    transform:translateY(-8px);

    border-color:#c7d2fe;

    box-shadow:
        0 25px 55px rgba(15,23,42,.12);
}


/* =========================
   YEARLY - MOST POPULAR
========================= */

.gpl-plan.popular{
    border:2px solid #7557f7;

    transform:translateY(-13px);

    background:
        radial-gradient(
            circle at top,
            rgba(139,92,246,.09),
            transparent 31%
        ),
        #fff;

    box-shadow:
        0 22px 55px rgba(109,73,240,.17);
}

.gpl-plan.popular:hover{
    transform:translateY(-17px);
}

.gpl-popular-badge{
    position:absolute;

    top:-16px;
    left:50%;

    transform:translateX(-50%);

    padding:8px 18px;

    border-radius:999px;

    background:
        linear-gradient(
            90deg,
            #4f46e5,
            #7c3aed,
            #9333ea
        );

    color:#fff;

    font-size:11px;
    font-weight:800;
    letter-spacing:.5px;

    white-space:nowrap;

    box-shadow:
        0 9px 23px rgba(99,52,220,.30);
}


/* =========================
   ICON
========================= */

.gpl-plan-icon{
    width:62px;
    height:62px;

    margin:0 auto 16px;

    display:flex;
    align-items:center;
    justify-content:center;

    border-radius:50%;

    font-size:27px;

    box-shadow:
        inset 0 0 0 1px rgba(15,23,42,.05);
}


/* Monthly icon */
.gpl-plan:nth-child(1) .gpl-plan-icon{
    background:#edf5ff;
    color:#2563eb;
}

/* Yearly icon */
.gpl-plan:nth-child(2) .gpl-plan-icon{
    background:#f2edff;
    color:#7c3aed;
}

/* Lifetime icon */
.gpl-plan:nth-child(3) .gpl-plan-icon{
    background:#eaf9ef;
    color:#16a34a;
}


/* =========================
   PLAN TEXT
========================= */

.gpl-plan-name{
    margin:0 0 7px;

    text-align:center;

    color:#0f172a;

    font-size:26px;
    font-weight:850;
}

.gpl-plan-tagline{
    min-height:42px;

    margin-bottom:20px;

    text-align:center;

    font-size:14px;
    font-weight:700;
}

.gpl-plan:nth-child(1) .gpl-plan-tagline{
    color:#2563eb;
}

.gpl-plan:nth-child(2) .gpl-plan-tagline{
    color:#6d32ef;
}

.gpl-plan:nth-child(3) .gpl-plan-tagline{
    color:#16a34a;
}


/* =========================
   PRICE
========================= */

.gpl-plan-price{
    display:flex;
    align-items:flex-end;
    justify-content:center;

    gap:6px;

    min-height:70px;

    padding-bottom:22px;
    margin-bottom:22px;

    border-bottom:1px solid #e9edf4;
}

.gpl-price-main{
    font-size:42px;
    line-height:1;
    font-weight:900;
    letter-spacing:-1.2px;
}

.gpl-plan:nth-child(1) .gpl-price-main{
    color:#2563eb;
}

.gpl-plan:nth-child(2) .gpl-price-main{
    color:#6d32ef;
}

.gpl-plan:nth-child(3) .gpl-price-main{
    color:#16a34a;
}

.gpl-price-suffix{
    margin-bottom:3px;

    color:#64748b;

    font-size:13px;
    font-weight:600;
}


/* =========================
   FEATURES
========================= */

.gpl-plan-features{
    flex:1;

    list-style:none;

    margin:0 0 28px;
    padding:4px 0 0;
}

.gpl-plan-features li{
    position:relative;

    margin-bottom:14px;
    padding-left:30px;

    color:#263246;

    font-size:14px;
    line-height:1.5;
    font-weight:550;
}

.gpl-plan-features li::before{
    content:"✓";

    position:absolute;

    left:0;
    top:0;

    width:20px;
    height:20px;

    display:flex;
    align-items:center;
    justify-content:center;

    border-radius:50%;

    font-size:11px;
    font-weight:900;
}

.gpl-plan:nth-child(1) .gpl-plan-features li::before{
    background:#eaf2ff;
    color:#2563eb;
}

.gpl-plan:nth-child(2) .gpl-plan-features li::before{
    background:#f1ebff;
    color:#8b45f5;
}

.gpl-plan:nth-child(3) .gpl-plan-features li::before{
    background:#e9f9ee;
    color:#16a34a;
}


/* =========================
   EDD ACTION
========================= */

.gpl-plan-action{
    margin-top:auto;
}


/* Important:
   EDD normally outputs:
   - JS add to cart button
   - no-JS fallback input
   - checkout link
*/

/* Hide fallback */
.gpl-plan .edd-no-js{
    display:none !important;
}

/* Hide checkout link */
.gpl-plan .edd_go_to_checkout{
    display:none !important;
}

/* Hide EDD variable option selector */
.gpl-plan .edd_price_options{
    display:none !important;
}


/* =========================
   ONLY REAL EDD BUTTON
========================= */

.gpl-plan
.edd_purchase_submit_wrapper
button.edd-add-to-cart.edd-has-js{

    width:100% !important;
    min-height:52px;

    display:flex !important;
    align-items:center;
    justify-content:center;

    padding:13px 18px !important;

    border:0 !important;
    border-radius:14px !important;

    color:#fff !important;

    font-size:14px !important;
    font-weight:800 !important;
    line-height:1.2;

    text-decoration:none !important;

    cursor:pointer;

    transition:
        transform .28s ease,
        box-shadow .28s ease,
        filter .28s ease;
}


/* Monthly button */
.gpl-plan:nth-child(1)
button.edd-add-to-cart.edd-has-js{

    background:
        linear-gradient(
            90deg,
            #2870f6,
            #4458f5
        ) !important;

    box-shadow:
        0 10px 22px rgba(37,99,235,.20);
}


/* Yearly button */
.gpl-plan:nth-child(2)
button.edd-add-to-cart.edd-has-js{

    background:
        linear-gradient(
            90deg,
            #7138f3,
            #a33cf1
        ) !important;

    box-shadow:
        0 12px 25px rgba(124,58,237,.27);
}


/* Lifetime button */
.gpl-plan:nth-child(3)
button.edd-add-to-cart.edd-has-js{

    background:
        linear-gradient(
            90deg,
            #20a84e,
            #35bd5b
        ) !important;

    box-shadow:
        0 10px 22px rgba(22,163,74,.20);
}


/* Hover */
.gpl-plan
button.edd-add-to-cart.edd-has-js:hover{

    transform:translateY(-2px);

    filter:brightness(1.06);

    box-shadow:
        0 14px 28px rgba(31,41,55,.17);
}


/* EDD loading spinner */
.gpl-plan .edd-loading{
    margin-left:8px;
}


/* Added to cart message */
.gpl-plan .edd-cart-added-alert{
    margin-top:8px;

    color:#16a34a;

    font-size:12px;
    font-weight:700;
}


/* =========================
   TABLET
========================= */

@media(max-width:1024px){

    .gpl-membership-includes{
        grid-template-columns:repeat(2,1fr);
        gap:10px;
    }

    .gpl-membership-includes span{
        border-right:0 !important;
    }

    .gpl-pricing-grid{
        max-width:650px;

        grid-template-columns:1fr;
    }

    .gpl-plan{
        min-height:auto;
    }

    .gpl-plan.popular{
        transform:none;
    }

    .gpl-plan.popular:hover{
        transform:translateY(-8px);
    }
}


/* =========================
   MOBILE
========================= */

@media(max-width:767px){

    .gpl-membership{
        padding:65px 16px;
    }

    .gpl-membership-title{
        font-size:34px;
        letter-spacing:-1px;
    }

    .gpl-membership-desc{
        font-size:15px;
    }

    .gpl-membership-includes{
        display:flex;
        flex-direction:column;

        padding:16px;

        border-radius:18px;
    }

    .gpl-membership-includes span{
        justify-content:flex-start;

        min-height:auto;

        padding:9px 6px;

        text-align:left;
    }

    .gpl-plan{
        padding:28px 21px 22px;

        border-radius:21px;
    }

    .gpl-price-main{
        font-size:36px;
    }

    .gpl-plan
    .edd_purchase_submit_wrapper
    button.edd-add-to-cart.edd-has-js{

        min-height:48px;

        border-radius:12px !important;

        font-size:13px !important;
    }
}
/* =========================================
   GPL NEST FORGOT PASSWORD
========================================= */

.gpl-auth{
    min-height:70vh;

    display:flex;
    align-items:center;
    justify-content:center;

    padding:70px 20px;

    background:
        radial-gradient(circle at 20% 10%,
            rgba(37,99,235,.08),
            transparent 30%),
        radial-gradient(circle at 85% 85%,
            rgba(124,58,237,.08),
            transparent 30%),
        #f8faff;
}

.gpl-auth__card{
    width:100%;
    max-width:480px;

    overflow:hidden;

    border:1px solid #e4e8f0;
    border-radius:24px;

    background:#fff;

    box-shadow:
        0 25px 65px rgba(15,23,42,.13);
}

.gpl-auth__main{
    padding:38px;
}


/* kicker */

.gpl-auth__kicker{
    display:inline-flex;

    margin-bottom:14px;

    padding:6px 10px;

    border-radius:999px;

    background:#eef2ff;

    color:#4f46e5;

    font-size:10px;
    font-weight:800;

    letter-spacing:1px;
    text-transform:uppercase;
}


/* title */

.gpl-auth__title{
    margin:0 0 10px;

    color:#0f172a;

    font-size:32px;
    line-height:1.15;
    font-weight:850;

    letter-spacing:-.8px;
}


/* subtitle */

.gpl-auth__sub{
    margin:0 0 26px;

    color:#64748b;

    font-size:14px;
    line-height:1.65;
}


/* =========================================
   FIELD
========================================= */

.gpl-auth__field{
    margin-bottom:16px;
}

.gpl-auth__field label{
    display:block;

    margin-bottom:7px;

    color:#334155;

    font-size:12px;
    font-weight:750;
}

.gpl-auth__control{
    position:relative;
}

.gpl-auth__control input{
    width:100%;
    height:50px;

    padding:0 15px 0 46px;

    border:1px solid #dce2ec;
    border-radius:12px;

    outline:none;

    background:#fff;

    color:#0f172a;

    font-size:14px;

    transition:.2s ease;
}

.gpl-auth__control input:focus{
    border-color:#4f46e5;

    box-shadow:
        0 0 0 4px rgba(79,70,229,.10);
}


/* field icon */

.gpl-auth__icon{
    position:absolute;

    left:15px;
    top:50%;

    width:18px;
    height:18px;

    transform:translateY(-50%);

    fill:#94a3b8;
}


/* =========================================
   BUTTON
========================================= */

.gpl-auth__submit{
    width:100%;
    min-height:50px;

    display:flex;
    align-items:center;
    justify-content:center;

    border:0;
    border-radius:12px;

    background:
        linear-gradient(
            90deg,
            #2d4cf3,
            #4f46e5,
            #7c3aed
        );

    color:#fff;

    font-size:13px;
    font-weight:800;

    cursor:pointer;

    box-shadow:
        0 10px 24px rgba(79,70,229,.25);

    transition:.25s ease;
}

.gpl-auth__submit:hover{
    transform:translateY(-2px);

    box-shadow:
        0 14px 30px rgba(79,70,229,.32);
}


/* =========================================
   MESSAGES
========================================= */

.gpl-auth-msg{
    margin-bottom:18px;

    padding:12px 14px;

    border-radius:10px;

    font-size:12px;
    line-height:1.55;
}

.gpl-auth-msg.success{
    border:1px solid #bbf7d0;

    background:#f0fdf4;

    color:#15803d;
}

.gpl-auth-msg.error{
    border:1px solid #fecaca;

    background:#fef2f2;

    color:#b91c1c;
}


/* =========================================
   BACK LINK
========================================= */

.gpl-auth__alt{
    margin:20px 0 0;

    text-align:center;
}

.gpl-auth__back{
    color:#4f46e5;

    font-size:12px;
    font-weight:750;

    text-decoration:none;
}

.gpl-auth__back:hover{
    text-decoration:underline;
}


/* mobile */

@media(max-width:600px){

    .gpl-auth{
        padding:45px 15px;
    }

    .gpl-auth__main{
        padding:27px 21px;
    }

    .gpl-auth__title{
        font-size:27px;
    }
}
/* =========================================
   GPL NEST - CREATE ACCOUNT PAGE
   Main Container
========================================= */

#account_Create {
    padding: 70px 20px;
    background:
        radial-gradient(circle at 10% 20%, rgba(37, 99, 235, .08), transparent 30%),
        radial-gradient(circle at 90% 80%, rgba(124, 58, 237, .08), transparent 30%),
        #f7f9ff;
}

#account_Create > .e-con-inner {
    max-width: 1280px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 24px;
    align-items: stretch;
}


/* =========================================
   LEFT + RIGHT CARDS
========================================= */

#account_Create .elementor-element-49d69d1,
#account_Create .elementor-element-f2395a2 {
    background: #ffffff;
    border: 1px solid #e7eaf3;
    border-radius: 24px;
    padding: 45px;
    box-shadow: 0 15px 45px rgba(24, 39, 75, 0.08);
}


/* =========================================
   LEFT SIDE - CREATE ACCOUNT
========================================= */

#account_Create .elementor-element-49d69d1 {
    justify-content: flex-start;
}

#account_Create .elementor-element-e15d86c {
    margin-bottom: 5px;
}

#account_Create .elementor-element-e15d86c h2 {
    margin: 0;
    color: #0c1d46;
    font-size: 36px;
    font-weight: 700;
    line-height: 1.2;
    text-align: center;
}

#account_Create .elementor-element-e15d86c h2 span {
    color: #2563eb;
}


/* Intro Text */

#account_Create .elementor-element-0d70d9c {
    margin-bottom: 25px;
}

#account_Create .elementor-element-0d70d9c p {
    margin: 0;
    color: #687086;
    font-size: 15px;
    line-height: 1.7;
    text-align: center;
}


/* =========================================
   REGISTRATION FORM
========================================= */

#account_Create form {
    width: 100%;
}

#account_Create form p {
    margin: 0 0 18px;
}

#account_Create form label {
    display: block;
    margin-bottom: 7px;
    color: #101828;
    font-size: 14px;
    font-weight: 600;
}


/* Inputs */

#account_Create form input[type="text"],
#account_Create form input[type="email"],
#account_Create form input[type="password"],
#account_Create form input[type="tel"],
#account_Create form select {
    width: 100%;
    height: 52px;
    padding: 0 16px;
    color: #182230;
    font-size: 14px;
    background: #fff;
    border: 1px solid #d9dfeb;
    border-radius: 8px;
    outline: none;
    box-shadow: none;
    transition: all .25s ease;
}

#account_Create form input::placeholder {
    color: #98a2b3;
}


/* Focus */

#account_Create form input[type="text"]:focus,
#account_Create form input[type="email"]:focus,
#account_Create form input[type="password"]:focus,
#account_Create form input[type="tel"]:focus,
#account_Create form select:focus {
    border-color: #2563eb;
    box-shadow: 0 0 0 3px rgba(37, 99, 235, .10);
}


/* Checkbox */

#account_Create form input[type="checkbox"] {
    width: 16px;
    height: 16px;
    accent-color: #4f46e5;
}


/* Links */

#account_Create form a {
    color: #2563eb;
    text-decoration: none;
    font-weight: 500;
}

#account_Create form a:hover {
    color: #6d28d9;
}


/* Create Account Button */

#account_Create form input[type="submit"],
#account_Create form button[type="submit"],
#account_Create .edd-submit {
    width: 100%;
    min-height: 52px;
    padding: 13px 25px;
    border: 0;
    border-radius: 8px;
    background: linear-gradient(90deg, #2447f9 0%, #7624eb 100%);
    color: #fff;
    font-size: 16px;
    font-weight: 600;
    cursor: pointer;
    box-shadow: 0 8px 20px rgba(79, 70, 229, .20);
    transition: all .25s ease;
}

#account_Create form input[type="submit"]:hover,
#account_Create form button[type="submit"]:hover,
#account_Create .edd-submit:hover {
    transform: translateY(-2px);
    box-shadow: 0 12px 25px rgba(79, 70, 229, .28);
}


/* =========================================
   LOGIN / SUCCESS / ERROR MESSAGES
========================================= */

#account_Create .gpl-auth-msg {
    width: 100%;
    padding: 15px 18px;
    border-radius: 8px;
    font-size: 14px;
    font-weight: 500;
}

#account_Create .gpl-auth-msg.success {
    color: #067647;
    background: #ecfdf3;
    border: 1px solid #abefc6;
}

#account_Create .gpl-auth-msg.error {
    color: #b42318;
    background: #fef3f2;
    border: 1px solid #fecdca;
}


/* =========================================
   RIGHT SIDE
========================================= */

#account_Create .elementor-element-f2395a2 {
    display: flex;
    flex-direction: column;
    justify-content: center;
    overflow: hidden;
    background:
        radial-gradient(circle at 80% 10%, rgba(37, 99, 235, .08), transparent 35%),
        #ffffff;
}


/* Image */

#account_Create .elementor-element-24fde8a {
    text-align: center;
    margin-bottom: 15px;
}

#account_Create .elementor-element-24fde8a img {
    display: block;
    width: 100%;
    max-width: 440px;
    height: 300px;
    margin: 0 auto;
    object-fit: contain;
}


/* Why Create Account Heading */

#account_Create .elementor-element-5996876 {
    margin-top: 5px;
    margin-bottom: 12px;
}

#account_Create .elementor-element-5996876 h2 {
    margin: 0;
    color: #0c1d46;
    font-size: 30px;
    font-weight: 700;
    line-height: 1.25;
}

#account_Create .elementor-element-5996876 h2 span {
    color: #2563eb;
}


/* =========================================
   BENEFIT LIST
========================================= */

#account_Create .elementor-icon-list-items {
    margin: 0;
    padding: 0;
}

#account_Create .elementor-icon-list-item {
    margin-bottom: 13px;
    align-items: center;
}

#account_Create .elementor-icon-list-icon {
    margin-right: 10px;
}

#account_Create .elementor-icon-list-icon i {
    color: #6d28d9;
    font-size: 19px;
}

#account_Create .elementor-icon-list-text {
    color: #344054;
    font-size: 15px;
    font-weight: 500;
    line-height: 1.5;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 1024px) {

    #account_Create {
        padding: 50px 20px;
    }

    #account_Create > .e-con-inner {
        grid-template-columns: 1fr;
        max-width: 750px;
    }

    #account_Create .elementor-element-49d69d1,
    #account_Create .elementor-element-f2395a2 {
        padding: 40px;
    }

    #account_Create .elementor-element-24fde8a img {
        max-width: 400px;
        height: auto;
    }
}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    #account_Create {
        padding: 30px 12px;
    }

    #account_Create > .e-con-inner {
        gap: 18px;
    }

    #account_Create .elementor-element-49d69d1,
    #account_Create .elementor-element-f2395a2 {
        padding: 28px 20px;
        border-radius: 16px;
    }

    #account_Create .elementor-element-e15d86c h2 {
        font-size: 28px;
    }

    #account_Create .elementor-element-0d70d9c p {
        font-size: 14px;
    }

    #account_Create .elementor-element-0d70d9c br {
        display: none;
    }

    #account_Create .elementor-element-24fde8a img {
        max-width: 300px;
        height: auto;
    }

    #account_Create .elementor-element-5996876 h2 {
        font-size: 25px;
        text-align: center;
    }

    #account_Create .elementor-icon-list-text {
        font-size: 14px;
    }

    #account_Create form input[type="text"],
    #account_Create form input[type="email"],
    #account_Create form input[type="password"],
    #account_Create form input[type="tel"],
    #account_Create form select {
        height: 50px;
    }
}
.gpl-register-login {
    text-align: center;
    margin-top: 20px;
}
button.gpl-register-submit {
    margin-top: 21px;
}
.gpl-field {
    margin-top: 9px;
}
/* =========================================
   CATEGORY ARCHIVE
========================================= */

.gpl-category-filter{
    overflow:hidden;

    border:1px solid #e3e7ef;
    border-radius:20px;

    background:#fff;

    box-shadow:
        0 10px 30px rgba(15,23,42,.06);
}


/* HEADER */

.gpl-filter-head{
    display:flex;
    align-items:center;
    justify-content:space-between;

    padding:17px 14px 10px;

    color:#111827;

    font-size:13px;
    font-weight:800;
}

.gpl-filter-head span{
    color:#64748b;

    font-size:11px;
}


/* SEARCH */

.gpl-filter-search{
    padding:0 12px 12px;
}

.gpl-filter-input{
    width:100%;
    height:38px;

    padding:0 12px;

    border:1px solid #dfe4ed;
    border-radius:10px;

    outline:none;

    color:#334155;

    font-size:12px;
}

.gpl-filter-input:focus{
    border-color:#4f46e5;

    box-shadow:
        0 0 0 3px rgba(79,70,229,.08);
}


/* LIST */

.gpl-filter-list{
    margin:0;
    padding:8px 0;

    list-style:none;

    border-top:1px solid #edf0f5;
}

.gpl-filter-list li{
    margin:0;
}

.gpl-filter-list a{
    min-height:36px;

    display:flex;
    align-items:center;

    gap:9px;

    padding:7px 13px;

    color:#64748b;

    font-size:12px;
    font-weight:500;

    text-decoration:none;

    transition:.2s ease;
}

.gpl-filter-list a:hover{
    background:#f7f8ff;

    color:#4338ca;
}


/* CHECK */

.gpl-filter-check{
    width:15px;
    height:15px;
    min-width:15px;

    border:1px solid #cfd5df;
    border-radius:5px;

    background:#fff;
}

.gpl-filter-name{
    flex:1;
}

.gpl-filter-count{
    color:#64748b;

    font-size:10px;
    font-weight:700;
}
/* =====================================================
   GPL NEST - POPULAR TAGS
===================================================== */

.gpl-popular-tags{
    width:100%;

    padding:20px;

    border:1px solid #e6e9f1;
    border-radius:20px;

    background:#fff;

    box-shadow:
        0 8px 25px rgba(15,23,42,.045);
}


/* Heading */

.gpl-popular-tags__head{
    display:flex;
    align-items:center;
    justify-content:space-between;

    margin-bottom:14px;
}

.gpl-popular-tags__head h3{
    margin:0;

    color:#10172a;

    font-size:15px;
    line-height:1.2;
    font-weight:800;

    letter-spacing:-.2px;
}


/* Tags wrapper */

.gpl-popular-tags__list{
    display:flex;
    flex-wrap:wrap;

    gap:8px;
}


/* Individual tag */

.gpl-popular-tag{
    display:inline-flex;
    align-items:center;
    justify-content:center;

    min-height:29px;

    padding:6px 11px;

    border:1px solid #e7eaf1;
    border-radius:999px;

    background:#f4f6fa;

    color:#53617b;

    font-size:10px;
    line-height:1;
    font-weight:650;

    text-decoration:none;

    white-space:nowrap;

    transition:
        color .2s ease,
        background .2s ease,
        border-color .2s ease,
        transform .2s ease,
        box-shadow .2s ease;
}


/* Hover */

.gpl-popular-tag:hover{
    transform:translateY(-1px);

    border-color:#cbd3ff;

    background:#eef2ff;

    color:#4338ca;

    box-shadow:
        0 5px 12px rgba(79,70,229,.10);
}


/* Mobile */

@media(max-width:767px){

    .gpl-popular-tags{
        padding:17px;

        border-radius:16px;
    }

    .gpl-popular-tags__list{
        gap:7px;
    }

    .gpl-popular-tag{
        padding:6px 10px;
    }
}
.gpl-archive-stats {
    display: flex;
    align-items: stretch;
    justify-content: center;

    background: rgba(255, 255, 255, 0.96);
    border-radius: 18px;
    padding: 14px 8px;

    box-shadow: 0 8px 25px rgba(70, 90, 180, 0.10);
    overflow: hidden;
}

.gpl-archive-stat {
    position: relative;
    flex: 1;

    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;

    min-width: 100px;
    padding: 0 20px;
    text-align: center;
}

/* Vertical divider */
.gpl-archive-stat:not(:last-child)::after {
    content: "";
    position: absolute;

    right: 0;
    top: 5px;
    bottom: 5px;

    width: 1px;
    background: #d8dff2;
}

/* Main number */
.gpl-archive-stat strong {
    color: #691CEA;
    font-size: 21px;
    line-height: 1;
    font-weight: 700;
    letter-spacing: -.4px;
    font-family: 'Poppins';
}

/* Bottom label */
.gpl-archive-stat span {
    display: block;

    color: #53617a;
    font-size: 11px;
    line-height: 1.3;
    font-weight: 500;
}

/* Mobile */
@media (max-width: 600px) {
    .gpl-archive-stats {
        border-radius: 14px;
        padding: 12px 4px;
    }

    .gpl-archive-stat {
        min-width: 0;
        padding: 0 10px;
    }

    .gpl-archive-stat strong {
        font-size: 16px;
    }

    .gpl-archive-stat span {
        font-size: 9px;
    }
}
.gpl-archive-stats {
     gap: 0px !important; 
}
.gpl-archive-stat {
    display: flex;
    flex-direction: column;
    /* gap: 3px; */
    width: 149px;
}


/* =========================================
   GPL NEST - SINGLE BLOG POST
========================================= */

#post_content{
    padding:55px 20px 80px;
    background:#fff;
}

#post_content > .e-con-inner{
    max-width:1280px;
    margin:0 auto;
    display:grid;
    grid-template-columns:minmax(0, 2fr) minmax(300px, .9fr);
    gap:32px;
    align-items:start;
}


/* =========================================
   MAIN ARTICLE
========================================= */

#post_content .elementor-element-483ef0e{
    min-width:0;
}


/* Featured Image */

#post_content .elementor-element-fd26c3f{
    margin-bottom:30px;
}

#post_content .elementor-element-fd26c3f img{
    width:100%;
    height:auto;
    display:block;
    border-radius:16px;
    box-shadow:0 14px 40px rgba(15,40,90,.10);
}


/* =========================================
   ARTICLE TYPOGRAPHY
========================================= */

#post_content .elementor-widget-theme-post-content {
    color: #344054;
    font-size: 14px;
    line-height: 24px;
}

#post_content .elementor-widget-theme-post-content h1{
    margin:0 0 25px;
    color:#071a41;
    font-size:40px;
    line-height:1.2;
    font-weight:800;
    letter-spacing:-.5px;
}

#post_content .elementor-widget-theme-post-content h2{
    margin:48px 0 18px;
    color:#071a41;
    font-size:30px;
    line-height:1.3;
    font-weight:750;
}

#post_content .elementor-widget-theme-post-content h3{
    margin:32px 0 12px;
    color:#10285c;
    font-size:23px;
    line-height:1.35;
    font-weight:700;
}

#post_content .elementor-widget-theme-post-content h4{
    color:#10285c;
    font-size:19px;
}

#post_content .elementor-widget-theme-post-content p{
    margin:0 0 17px;
}

#post_content .elementor-widget-theme-post-content strong{
    color:#0b2a67;
    font-weight:700;
}

#post_content .elementor-widget-theme-post-content a{
    color:#3156f5;
    text-decoration:none;
}

#post_content .elementor-widget-theme-post-content a:hover{
    color:#6d28d9;
}


/* Lists */

#post_content .elementor-widget-theme-post-content ul,
#post_content .elementor-widget-theme-post-content ol{
    margin:18px 0 26px;
    padding-left:28px;
}

#post_content .elementor-widget-theme-post-content li{
    margin-bottom:10px;
    padding-left:3px;
}


/* Modern UL bullet */

#post_content .elementor-widget-theme-post-content ul{
    list-style:none;
    padding-left:0;
}

#post_content .elementor-widget-theme-post-content ul li{
    position:relative;
    padding-left:34px;
}

#post_content .elementor-widget-theme-post-content ul li:before{
    content:"✓";
    position:absolute;
    left:0;
    top:3px;
    width:21px;
    height:21px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:50%;
    color:#fff;
    background:linear-gradient(135deg,#2563eb,#6d28d9);
    font-size:11px;
    font-weight:800;
    box-shadow:0 4px 10px rgba(49,86,245,.2);
}


/* =========================================
   TABLE
========================================= */

#post_content .elementor-widget-theme-post-content table{
    width:100%;
    margin:30px 0;
    border-collapse:separate;
    border-spacing:0;
    overflow:hidden;
    border:1px solid #e2e8f0;
    border-radius:14px;
    background:#fff;
    box-shadow:0 8px 25px rgba(15,40,90,.06);
}

#post_content .elementor-widget-theme-post-content th{
    padding:15px 18px;
    color:#fff;
    text-align:left;
    background:linear-gradient(90deg,#2448f5,#7128e8);
    border:none;
    font-weight:700;
}

#post_content .elementor-widget-theme-post-content td{
    padding:14px 18px;
    border:0;
    border-bottom:1px solid #edf0f5;
    color:#344054;
}

#post_content .elementor-widget-theme-post-content tr:last-child td{
    border-bottom:0;
}

#post_content .elementor-widget-theme-post-content tbody tr:nth-child(even){
    background:#f8faff;
}


/* =========================================
   SIDEBAR
========================================= */

#post_content .elementor-element-0b1bcc7{
    min-width:0;
    gap:20px;
}

#post_content .elementor-element-0b1bcc7 > .elementor-element{
    background:#fff;
    border:1px solid #e4e9f3;
    border-radius:16px;
    box-shadow:0 8px 30px rgba(15,40,90,.06);
}


/* =========================================
   SEARCH
========================================= */

#post_content .elementor-element-cb71705{
    padding:18px;
}

#post_content .e-search-form{
    display:flex;
    gap:8px;
}

#post_content .e-search-input-wrapper{
    flex:1;
}

#post_content .e-search-input{
    width:100%;
    min-height:46px;
    padding:0 14px;
    border:1px solid #dde3ee;
    border-radius:9px;
    outline:none;
    color:#172554;
    background:#f9fbff;
}

#post_content .e-search-input:focus{
    border-color:#3156f5;
    box-shadow:0 0 0 3px rgba(49,86,245,.1);
}

#post_content .e-search-submit{
    min-height:46px;
    padding:0 20px;
    border:none;
    border-radius:9px;
    color:#fff;
    font-size:14px;
    font-weight:650;
    cursor:pointer;
    background:linear-gradient(135deg,#3156f5,#6d28d9);
    transition:.25s ease;
}

#post_content .e-search-submit:hover{
    transform:translateY(-1px);
    box-shadow:0 8px 18px rgba(80,55,230,.25);
}


/* =========================================
   RECENT POSTS
========================================= */

#post_content .elementor-element-23596ec{
    padding:18px;
}

#post_content .elementor-element-23596ec .elementor-posts{
    display:flex;
    flex-direction:column;
    gap:0;
}

#post_content .elementor-element-23596ec .elementor-post{
    width:100%;
}

#post_content .elementor-element-23596ec .elementor-post__card{
    display:grid;
    grid-template-columns:100px 1fr;
    gap:13px;
    align-items:center;
    padding:12px 0;
    border:0;
    border-radius:0;
    box-shadow:none;
    border-bottom:1px solid #edf1f7;
    background:#fff;
}

#post_content .elementor-element-23596ec .elementor-post:last-child .elementor-post__card{
    border-bottom:0;
}

#post_content .elementor-element-23596ec .elementor-post__thumbnail__link{
    width:100px;
}

#post_content .elementor-element-23596ec .elementor-post__thumbnail{
    padding-bottom:66% !important;
    border-radius:8px;
    overflow:hidden;
}

#post_content .elementor-element-23596ec .elementor-post__thumbnail img{
    object-fit:cover;
}

#post_content .elementor-element-23596ec .elementor-post__text{
    padding:0;
    margin:0;
}

#post_content .elementor-element-23596ec .elementor-post__title{
    margin:0;
    font-size:14px;
    line-height:1.35;
    font-weight:700;
}

#post_content .elementor-element-23596ec .elementor-post__title a{
    color:#10285c;
}

#post_content .elementor-element-23596ec .elementor-post__title a:hover{
    color:#3156f5;
}

#post_content .elementor-element-23596ec .elementor-post__badge{
    display:none;
}

#post_content .elementor-element-23596ec .elementor-post__read-more{
    display:none;
}


/* =========================================
   TABLE OF CONTENTS
========================================= */

#post_content .elementor-element-4846216{
    padding:0;
    overflow:hidden;
}

#post_content .elementor-toc__header{
    padding:18px 20px;
    background:linear-gradient(135deg,#f3f7ff,#f5f0ff);
    border-bottom:1px solid #e5eaf4;
}

#post_content .elementor-toc__header-title{
    margin:0;
    color:#0b2861;
    font-size:18px;
    font-weight:750;
}

#post_content .elementor-toc__body{
    padding:16px 18px 20px;
    max-height:520px;
    overflow:auto;
}

#post_content .elementor-toc__body::-webkit-scrollbar{
    width:5px;
}

#post_content .elementor-toc__body::-webkit-scrollbar-thumb{
    background:#c9d3e6;
    border-radius:20px;
}

#post_content .elementor-toc__list-wrapper{
    margin:0;
}

#post_content .elementor-toc__list-item{
    margin-bottom:9px;
}

#post_content .elementor-toc__list-item-text{
    color:#44536d;
    font-size:13px;
    line-height:1.45;
    transition:.2s ease;
}

#post_content .elementor-toc__list-item-text:hover{
    color:#3156f5;
}

#post_content .elementor-toc__top-level{
    color:#10285c;
    font-weight:650;
}


/* =========================================
   ANCHOR OFFSET
========================================= */

#post_content .elementor-menu-anchor{
    scroll-margin-top:120px;
}


/* =========================================
   TABLET
========================================= */

@media(max-width:1024px){

    #post_content{
        padding:40px 20px 60px;
    }

    #post_content > .e-con-inner{
        grid-template-columns:1fr;
    }

    #post_content .elementor-element-0b1bcc7{
        display:grid;
        grid-template-columns:1fr 1fr;
        align-items:start;
    }

    #post_content .elementor-element-23596ec,
    #post_content .elementor-element-4846216{
        grid-column:1 / -1;
    }

    #post_content .elementor-widget-theme-post-content h1{
        font-size:34px;
    }
}


/* =========================================
   MOBILE
========================================= */

@media(max-width:767px){

    #post_content{
        padding:25px 14px 45px;
    }

    #post_content > .e-con-inner{
        gap:25px;
    }

    #post_content .elementor-widget-theme-post-content{
        font-size:16px;
        line-height:1.75;
    }

    #post_content .elementor-widget-theme-post-content h1{
        font-size:28px;
    }

    #post_content .elementor-widget-theme-post-content h2{
        margin-top:38px;
        font-size:25px;
    }

    #post_content .elementor-widget-theme-post-content h3{
        font-size:20px;
    }

    #post_content .elementor-element-fd26c3f img{
        border-radius:12px;
    }

    #post_content .elementor-element-0b1bcc7{
        display:flex;
        flex-direction:column;
    }

    #post_content .elementor-element-0b1bcc7 > .elementor-element{
        width:100%;
    }

    #post_content .e-search-form{
        flex-direction:column;
    }

    #post_content .e-search-submit{
        width:100%;
    }

    #post_content .elementor-element-23596ec .elementor-post__card{
        grid-template-columns:90px 1fr;
    }

    #post_content .elementor-element-23596ec .elementor-post__thumbnail__link{
        width:90px;
    }

    #post_content .elementor-widget-theme-post-content table{
        display:block;
        overflow-x:auto;
        white-space:nowrap;
    }
}