/**
 * Pricing Page Styles
 * Becoin.net Subscription Page
 * Updated to match Figma design
 */
@font-face {
    font-family: 'Gilroy';
    src: url('../fonts/Gilroy-Regular.eot');
    src: local('Gilroy Regular'), local('Gilroy-Regular'),
    url('../fonts/Gilroy-Regular.eot?#iefix') format('embedded-opentype'),
    url('../fonts/Gilroy-Regular.woff2') format('woff2'),
    url('../fonts/Gilroy-Regular.woff') format('woff'),
    url('../fonts/Gilroy-Regular.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'Gilroy';
    src: url('../fonts/Gilroy-Semibold.eot');
    src: local('Gilroy Semibold'), local('Gilroy-Semibold'),
    url('../fonts/Gilroy-Semibold.eot?#iefix') format('embedded-opentype'),
    url('../fonts/Gilroy-Semibold.woff2') format('woff2'),
    url('../fonts/Gilroy-Semibold.woff') format('woff'),
    url('../fonts/Gilroy-Semibold.ttf') format('truetype');
    font-weight: 600;
    font-style: normal;
}

/* ========================================
   CSS Variables / Design Tokens (from Figma)
======================================== */
:root {
    /* Primary Colors */
    --primary-blue: #4B61D1;
    --primary-blue-dark: #3a4db8;
    --primary-blue-light: #738AFF;

    /* Accent Colors */
    --accent-gold: #FFCE31;
    --accent-cyan: #7CCCDA;

    /* Text Colors */
    --text-primary: #000000;
    --text-secondary: #7D7D7D;
    --text-muted: #999999;
    --text-white: #FFFFFF;
    --text-disabled: #818181;

    /* Background Colors */
    --bg-white: #FFFFFF;
    --bg-light: #F9FAFF;
    --bg-light-blue: #EFF2FF;
    --bg-feature: #E8F2FB;
    --bg-gray: #F9F9F9;

    /* Gradients */
    --gradient-hero: linear-gradient(180deg, #738AFF 0%, #7CCCDA 100%);
    --gradient-feature-card: linear-gradient(180deg, #F9FAFF 0%, #EFF2FF 100%);
    --gradient-yearly-card: linear-gradient(180deg, #5B6EF5 0%, #7CCCDA 100%);

    /* Badge */
    --badge-orange: linear-gradient(135deg, #FF8C42 0%, #FF6B35 100%);

    /* Borders */
    --border-light: #CBCBCB;
    --border-card: #E7E7E7;

    /* Shadows */
    --shadow-card: 0px 16px 40px rgba(26, 64, 137, 0.06);
    --shadow-icon: 0px 0px 24px rgba(75, 97, 209, 0.5);
    --shadow-button: 0px 1px 4px rgba(0, 0, 0, 0.25);

    /* Typography - Fonts */
    --font-gilroy: 'Gilroy', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    --font-poppins: 'Poppins', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    --font-sans-serif: 'SansSerif', -apple-system, BlinkMacSystemFont, sans-serif;

    /* Font Sizes */
    --font-size-xs: 12px;
    --font-size-sm: 14px;
    --font-size-base: 16px;
    --font-size-md: 18px;
    --font-size-lg: 20px;
    --font-size-xl: 22px;
    --font-size-2xl: 23px;
    --font-size-3xl: 28px;
    --font-size-4xl: 40px;
    --font-size-5xl: 42px;
    --font-size-hero: 66px;

    /* Spacing */
    --spacing-1: 4px;
    --spacing-2: 8px;
    --spacing-3: 12px;
    --spacing-4: 16px;
    --spacing-5: 20px;
    --spacing-6: 24px;
    --spacing-8: 32px;
    --spacing-10: 40px;
    --spacing-12: 48px;
    --spacing-16: 64px;
    --spacing-20: 80px;

    /* Border Radius */
    --radius-sm: 6px;
    --radius-md: 8px;
    --radius-lg: 10px;
    --radius-xl: 16px;
    --radius-full: 99px;

    /* Transitions */
    --transition-fast: 150ms ease;
    --transition-base: 250ms ease;
    --transition-slow: 350ms ease;
}

/* ========================================
   Reset & Base Styles
======================================== */
*,
*::before,
*::after {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

html {
    scroll-behavior: smooth;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

body.pricing-page {
    font-family: var(--font-gilroy);
    font-size: var(--font-size-base);
    line-height: 1.3;
    color: var(--text-primary);
    background-color: var(--bg-white);
}

a {
    text-decoration: none;
    color: inherit;
    transition: color var(--transition-fast);
}

ul {
    list-style: none;
    padding: 0;
    padding-left: 0;
}

p {
    margin-bottom: 0;
}

/* ========================================
   Hero Section
======================================== */
.pricing-hero {
    background: url(/wp-content/themes/becoin/public/img/hero-bg.jpg) center/cover no-repeat;
    background-color: #738AFF;
    min-height: 579px;
    padding: var(--spacing-6) var(--spacing-8);
    padding-bottom: 200px;
    text-align: center;
    position: relative;
    border-radius: 0 0 var(--radius-lg) var(--radius-lg);
    overflow: hidden;
}

.pricing-hero::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
//   background: linear-gradient(180deg, rgba(115, 138, 255, 0.9) 0%, rgba(124, 204, 218, 0.8) 100%);
    pointer-events: none;
}

/* Navigation */
.pricing-nav {
    display: flex;
    justify-content: space-between;
    align-items: center;
    max-width: 1320px;
    margin: 0 auto;
    padding: var(--spacing-4) 0;
    position: relative;
    z-index: 10;
}

.nav-logo .logo-text {
    font-size: var(--font-size-lg);
    font-weight: 700;
    color: var(--text-white);
}

.nav-logo img {
    height: 49px;
    width: auto;
}

.nav-links {
    display: flex;
    gap: 34px;
    align-items: center;
}

.nav-links a {
    color: var(--text-white);
    font-family: var(--font-poppins);
    font-size: var(--font-size-md);
    font-weight: 400;
    padding: var(--spacing-2) var(--spacing-3);
    transition: all var(--transition-fast);
}

.nav-links a:hover,
.nav-links a.nav-active {
    opacity: 0.8;
}

/* Separator line */
.pricing-nav::after {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    bottom: -10px;
    height: 1px;
    background: rgba(255, 255, 255, 0.29);
}

/* Hero Content */
.hero-content {
    max-width: 700px;
    margin: var(--spacing-16) auto var(--spacing-8);
    position: relative;
    z-index: 10;
}

.hero-content h1 {
    font-family: var(--font-poppins);
    font-size: var(--font-size-hero);
    font-weight: 400;
    color: var(--text-white);
    margin-bottom: var(--spacing-6);
    line-height: 110%;
    text-transform: capitalize;
}

.hero-content p {
    font-family: var(--font-poppins);
    font-size: var(--font-size-2xl);
    color: var(--text-white);
    line-height: 120%;
    text-transform: capitalize;
}

/* ========================================
   Pricing Cards Section
======================================== */
.pricing-cards {
    margin-top: -150px;
    padding: 0 var(--spacing-8);
    background: var(--bg-light);
    position: relative;
    z-index: 20;
}

.pricing-container {
    display: grid;
    grid-template-columns: repeat(4, 300px);
    gap: var(--spacing-6);
    max-width: 1320px;
    margin: 0 auto;
    justify-content: center;
}

/* Pricing Card */
.pricing-card {
    background: var(--bg-white);
    border-radius: var(--radius-xl);
    box-shadow: var(--shadow-card);
    overflow: hidden;
    transition: all var(--transition-base);
    display: flex;
    flex-direction: column;
    padding: 24px 15px;
    min-height: 520px;
}

.pricing-card:hover {
    transform: translateY(-4px);
}

/* Featured Card (Yearly) */
.pricing-card.featured {
    background: var(--gradient-yearly-card);
    position: relative;
    overflow: visible;
    border: none;
}

.pricing-card.featured .plan-badge,
.pricing-card.featured .plan-description,
.pricing-card.featured .plan-price .period,
.pricing-card.featured .features-list,
.pricing-card.featured .features-text {
    color: var(--text-white);
}

.pricing-card.featured .plan-price .price {
    color: var(--accent-gold);
}

/* Most Popular Badge */
.popular-badge {
    position: absolute;
    top: 16px;
    right: -8px;
    background: url(/wp-content/themes/becoin/public/img/badge.png) center no-repeat;
    padding: 12px 12px 6px 10px;
    color: var(--text-white);
    font-family: var(--font-poppins);
    font-size: 9px;
    font-weight: 600;
    letter-spacing: 0.02em;
    text-transform: uppercase;
    border-radius: 4px 4px 4px 0;
    z-index: 10;
}


/* Card Header */
.card-header {
    margin-bottom: var(--spacing-4);
    position: relative;
    z-index: 1;
}

.plan-badge {
    display: inline-block;
    font-family: var(--font-gilroy);
    font-size: var(--font-size-lg);
    font-weight: 600;
    text-transform: uppercase;
    color: var(--text-primary);
    margin-bottom: var(--spacing-3);
}

.plan-price {
    margin-bottom: var(--spacing-3);
    display: flex;
    align-items: baseline;
}

.plan-price .price {
    font-family: var(--font-gilroy);
    font-size: var(--font-size-4xl);
    font-weight: 600;
    color: var(--primary-blue);
    line-height: 1;
}

.plan-price .period {
    font-family: var(--font-gilroy);
    font-size: var(--font-size-md);
    font-weight: 400;
    color: var(--text-primary);
    margin-left: 4px;
}

.plan-description {
    font-family: var(--font-gilroy);
    font-size: var(--font-size-md);
    color: var(--text-primary);
    line-height: 130%;
    letter-spacing: 0.01em;
    min-height: 75px;
}

.mg-23 {
    margin-bottom: 23px;
}

/* Card Body */
.card-body {
    flex: 1;
    display: flex;
    flex-direction: column;
    position: relative;
    z-index: 1;
}

/* Buttons - using .pricing-btn to avoid Bootstrap conflicts */
.pricing-btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 14px var(--spacing-6) !important;
    font-family: 'Open Sans', sans-serif !important;
    font-size: var(--font-size-base) !important;
    font-weight: 600 !important;
    text-align: center !important;
    border-radius: var(--radius-md) !important;
    cursor: pointer !important;
    transition: all var(--transition-fast) !important;
    border: 1px solid var(--primary-blue) !important;
    width: 100% !important;
    margin-bottom: var(--spacing-5) !important;
    text-transform: capitalize !important;
    text-decoration: none !important;
    min-height: 50px !important;
    box-shadow: none !important;
    line-height: 1.3 !important;
}

.pricing-btn.pricing-btn-primary {
    background: var(--accent-gold) !important;
    border-color: var(--accent-gold) !important;
    color: var(--text-primary) !important;
}

.pricing-btn.pricing-btn-primary:hover {
    background: #e6b82c !important;
    border-color: #e6b82c !important;
}

.pricing-btn.pricing-btn-outline {
    background: var(--bg-white) !important;
    color: var(--primary-blue) !important;
    border-color: var(--primary-blue) !important;
}

.pricing-btn.pricing-btn-outline:hover {
    background: var(--primary-blue) !important;
    color: var(--text-white) !important;
}

/* Features List */
.features-list {
    font-family: var(--font-gilroy);
    font-size: var(--font-size-md);
    color: var(--text-primary);
    line-height: 26px;
}

.features-list li {
    display: flex;
    align-items: flex-start;
    gap: var(--spacing-2);
    padding: var(--spacing-2) 0;
}

.features-list .icon {
    flex-shrink: 0;
    width: 24px;
    height: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.features-list .icon svg {
    width: 24px;
    height: 24px;
}

.features-list .feature-enabled .icon {
    color: var(--primary-blue);
}

.features-list .feature-disabled {
    color: var(--text-secondary);
    text-decoration: line-through;
}

.features-list .feature-disabled .icon {
    color: var(--text-muted);
}

/* Simple features text */
.features-text {
    font-family: var(--font-gilroy);
    font-size: var(--font-size-md);
    color: var(--text-primary);
    line-height: 130%;
    letter-spacing: 0.01em;
}

/* ========================================
   Features Section
======================================== */
.features-section {
    padding: var(--spacing-16) var(--spacing-8);
}

.features-container {
    max-width: 1320px;
    margin: 0 auto;
}

.features-section h2 {
    text-align: center;
    font-family: var(--font-gilroy);
    font-size: var(--font-size-5xl);
    font-weight: 600;
    color: var(--text-primary);
    margin-bottom: var(--spacing-12);
    line-height: 110%;
    text-transform: capitalize;
}

.features-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: var(--spacing-6);
}

/* Feature Item */
.feature-item {
    background: var(--gradient-feature-card);
    border-radius: var(--radius-xl);
    padding: var(--spacing-10) var(--spacing-6);
    text-align: center;
    min-height: 330px;
    display: flex;
    flex-direction: column;
    align-items: center;
    transition: all var(--transition-base);
}

.feature-item:hover {
    transform: translateY(-4px);
}

.feature-icon {
    width: 98px;
    height: 98px;
    margin-bottom: var(--spacing-6);
    background-color: rgba(255, 255, 255, 0.06);
    box-shadow: var(--shadow-icon);
    border-radius: var(--radius-full);
    background-position: center;
    background-repeat: no-repeat;
    background-size: auto;
}

/* Feature Icons - PNG backgrounds */
.feature-icon.icon-0 {
    background-image: url('/wp-content/themes/becoin/public/img/pricing/Icon.png');
}

.feature-icon.icon-1 {
    background-image: url('/wp-content/themes/becoin/public/img/pricing/Icon_1.png');
}

.feature-icon.icon-2 {
    background-image: url('/wp-content/themes/becoin/public/img/pricing/Icon_2.png');
}

.feature-icon.icon-3 {
    background-image: url('/wp-content/themes/becoin/public/img/pricing/Icon_3.png');
}

.feature-icon.icon-4 {
    background-image: url('/wp-content/themes/becoin/public/img/pricing/Icon_4.png');
}

.feature-icon.icon-5 {
    background-image: url('/wp-content/themes/becoin/public/img/pricing/Icon_5.png');
}

.feature-icon.icon-6 {
    background-image: url('/wp-content/themes/becoin/public/img/pricing/Icon_6.png');
}

.feature-icon.icon-7 {
    background-image: url('/wp-content/themes/becoin/public/img/pricing/Icon_7.png');
}

.feature-icon.icon-8 {
    background-image: url('/wp-content/themes/becoin/public/img/pricing/Icon_8.png');
}

.feature-icon.icon-9 {
    background-image: url('/wp-content/themes/becoin/public/img/pricing/Icon_9.png');
}

.feature-icon.icon-10 {
    background-image: url('/wp-content/themes/becoin/public/img/pricing/Icon_10.png');
}

.feature-icon.icon-11 {
    background-image: url('/wp-content/themes/becoin/public/img/pricing/Icon_11.png');
}

.feature-icon.icon-12 {
    background-image: url('/wp-content/themes/becoin/public/img/pricing/Icon_12.png');
}

.feature-icon.icon-13 {
    background-image: url('/wp-content/themes/becoin/public/img/pricing/Icon_13.png');
}

.feature-icon.icon-14 {
    background-image: url('/wp-content/themes/becoin/public/img/pricing/Icon_14.png');
}

.feature-icon.icon-15 {
    background-image: url('/wp-content/themes/becoin/public/img/pricing/Icon_15.png');
}

.feature-item h3 {
    font-family: var(--font-gilroy);
    font-size: var(--font-size-2xl);
    font-weight: 600;
    color: var(--text-primary);
    margin-bottom: var(--spacing-4);
    line-height: 30px;
}

.feature-item p {
    font-family: var(--font-gilroy);
    font-size: var(--font-size-md);
    color: var(--text-primary);
    line-height: 26px;
}

/* ========================================
   Commitment Section
======================================== */
.commitment-section {
    padding: var(--spacing-8);
}

.commitment-container {
    max-width: 1233px;
    margin: 0 auto;
    background: var(--primary-blue);
    border-radius: var(--radius-md);
    padding: var(--spacing-12) var(--spacing-16);
    text-align: center;
    position: relative;
    overflow: hidden;
}

/* Decorative elements */
.commitment-container::before,
.commitment-container::after {
    content: '';
    position: absolute;
    width: 204px;
    height: 218px;
    opacity: 0.43;
    background: url(/wp-content/themes/becoin/public/img/ballon.png) no-repeat center/contain;
}

.commitment-container::before {
    left: 0;
    top: 0;
}

.commitment-container::after {
    right: 0;
    top: 0;
    transform: scaleX(-1);
}

.commitment-section h2 {
    font-family: var(--font-gilroy);
    font-size: var(--font-size-3xl);
    font-weight: 600;
    color: var(--text-white);
    margin-bottom: var(--spacing-4);
    line-height: 110%;
    text-transform: capitalize;
    position: relative;
    z-index: 1;
}

.commitment-section p {
    font-family: var(--font-gilroy);
    font-size: var(--font-size-xl);
    color: var(--text-white);
    line-height: 130%;
    max-width: 944px;
    margin: 0 auto;
    position: relative;
    z-index: 1;
}

/* ========================================
   Subscription Portal Section
======================================== */
.subscription-portal {
    padding: var(--spacing-12) var(--spacing-8);
    background: var(--bg-light);
    text-align: center;
}

.portal-container {
    max-width: 500px;
    margin: 0 auto;
    padding: var(--spacing-8);
    background: var(--bg-white);
    border-radius: var(--radius-xl);
    box-shadow: var(--shadow-card);
}

.portal-container h3 {
    font-family: var(--font-gilroy);
    font-size: var(--font-size-xl);
    font-weight: 600;
    color: var(--text-primary);
    margin-bottom: var(--spacing-2);
}

.portal-container p {
    font-family: var(--font-gilroy);
    color: var(--text-secondary);
    margin-bottom: var(--spacing-6);
}

.portal-container .pricing-btn {
    width: auto !important;
    margin-bottom: 0 !important;
}

/* ========================================
   Responsive Design
======================================== */

/* Large Desktop */
@media (max-width: 1400px) {
    .pricing-container {
        grid-template-columns: repeat(4, 280px);
    }
}

/* Tablet */
@media (max-width: 1200px) {
    .pricing-container {
        grid-template-columns: repeat(2, 300px);
    }

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

    .hero-content h1 {
        font-size: 48px;
    }
}

/* Mobile */
@media (max-width: 768px) {
    .pricing-nav {
        flex-direction: column;
        gap: var(--spacing-4);
    }

    .nav-links {
        flex-wrap: wrap;
        justify-content: center;
        gap: var(--spacing-4);
    }

    .hero-content h1 {
        font-size: 36px;
    }

    .hero-content p {
        font-size: var(--font-size-md);
    }

    .pricing-container {
        grid-template-columns: 1fr;
        max-width: 320px;
    }

    .pricing-cards {
        padding: 0 var(--spacing-4);
    }

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

    .features-section,
    .commitment-section {
        padding: var(--spacing-12) var(--spacing-4);
    }

    .commitment-container {
        padding: var(--spacing-8);
    }

    .features-section h2 {
        font-size: var(--font-size-3xl);
    }
}

/* Small Mobile */
@media (max-width: 480px) {
    .hero-content h1 {
        font-size: 28px;
    }

    .plan-price .price {
        font-size: 32px;
    }

    .features-section h2 {
        font-size: var(--font-size-xl);
    }
}

/* ========================================
   Animations
======================================== */
@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(20px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.pricing-card {
    animation: fadeInUp 0.5s ease-out;
}

.pricing-card:nth-child(1) {
    animation-delay: 0.1s;
}

.pricing-card:nth-child(2) {
    animation-delay: 0.2s;
}

.pricing-card:nth-child(3) {
    animation-delay: 0.3s;
}

.pricing-card:nth-child(4) {
    animation-delay: 0.4s;
}

.feature-item {
    animation: fadeInUp 0.5s ease-out;
    animation-fill-mode: both;
}

.feature-item:nth-child(1) {
    animation-delay: 0.1s;
}

.feature-item:nth-child(2) {
    animation-delay: 0.15s;
}

.feature-item:nth-child(3) {
    animation-delay: 0.2s;
}

.feature-item:nth-child(4) {
    animation-delay: 0.25s;
}

.feature-item:nth-child(5) {
    animation-delay: 0.3s;
}

.feature-item:nth-child(6) {
    animation-delay: 0.35s;
}

.feature-item:nth-child(7) {
    animation-delay: 0.4s;
}

.feature-item:nth-child(8) {
    animation-delay: 0.45s;
}

.feature-item:nth-child(9) {
    animation-delay: 0.5s;
}

.feature-item:nth-child(10) {
    animation-delay: 0.55s;
}

.feature-item:nth-child(11) {
    animation-delay: 0.6s;
}

.feature-item:nth-child(12) {
    animation-delay: 0.65s;
}
.gc-2 {
    grid-column: 2;
}
/* ========================================
   Utility Classes
======================================== */
.text-center {
    text-align: center;
}

.text-white {
    color: var(--text-white);
}

.text-primary {
    color: var(--primary-blue);
}

.text-gold {
    color: var(--accent-gold);
}