:root {
    --primary-blue: #2367ca;
    --vibrant-blue: #2367ca;
    --light-blue-bg: #e6f7ff;
    --dark-blue-btn: #2b6cb0;
    --red: #ff0000;
    --green: #15803d;
    /* Darker green as requested */
    --cream-bg: #fff7d7;
    --text-dark: #333333;
    --text-gray: #4b5563;
    --body-font-size: clamp(1.2rem, 2.5vw, 1.4rem);
}

.price-slash {
    display: inline-block;
    transform: scaleY(0.7);
    /* Aggressive scale to ensure it never exceeds digit height */
    transform-origin: center;
    vertical-align: middle;
    position: relative;
    top: -0.02em;
    /* Subtle nudge for perfect centering */
    margin: 0 1px;
    font-weight: inherit;
    line-height: 1;
}

.no-wrap-price {
    white-space: nowrap !important;
    display: inline-block;
}

.dot-reduce {
    font-size: 0.7em;
    /* More aggressive reduction for actual dots */
    opacity: 0.8;
    vertical-align: baseline;
    letter-spacing: 0px;
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

html,
body {
    overflow-x: hidden;
    width: 100%;
    margin: 0;
    padding: 0;
}

body {
    font-family: 'Barlow Semi Condensed', sans-serif;
    line-height: 1.6;
    color: var(--text-dark);
    background-color: #ffffff;
    overflow-wrap: break-word;
    word-wrap: break-word;
    padding-bottom: 55px;
}

/* Typography */
h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: 'Barlow Semi Condensed', sans-serif;
    letter-spacing: 0.5px;
}

/* Top Banner */
.top-banner {
    background: #ffffff;
    color: #333333;
    padding: 10px 20px;
    text-align: center;
    border-bottom: none;
    font-family: 'Barlow Semi Condensed', sans-serif;
    font-weight: 700;
    font-size: 1.6rem;
    text-transform: none;
    letter-spacing: 0.5px;
}

.top-banner a {
    color: inherit;
    text-decoration: underline;
}

body.modal-active .sticky-footer-bar {
    display: none !important;
}

body.modal-active {
    overflow: hidden;
    /* Prevent background scroll while modal is up */
}

body.modal-active .modal-overlay {
    background: rgba(0, 0, 0, 0.7);
    /* Dark semi-transparent overlay */
}

.main-container {
    width: 100%;
    max-width: 1400px;
    margin: 0 auto;
    padding: 0;
    background: #fff;
    box-shadow: 0 0 60px rgba(0, 0, 0, 0.12);
    /* Stronger premium shadow */
    min-height: 100vh;
    position: relative;
    overflow-x: hidden;
    display: flex;
    flex-direction: column;
}

/* Internal padding for sections within the flush container */
.hero-card,
.discovery-section,
.workshop-features-section,
.desk-section,
.comparison-section,
.note-cta-section,
.footer {
    padding-left: 40px !important;
    padding-right: 40px !important;
    margin: 0 !important;
}

@media (max-width: 1440px) {
    .main-container {
        max-width: 95%;
    }
}

@media (max-width: 768px) {
    .main-container {
        width: 90%;
        max-width: 100%;
        margin: 20px auto;
        box-shadow: 0 0 30px rgba(0, 0, 0, 0.1);
        border-radius: 12px;
        overflow: visible;
    }

    .top-banner {
        font-size: 0.9rem;
        padding: 8px 15px;
    }

    .hero-card,
    .discovery-section,
    .workshop-features-section,
    .desk-section,
    .comparison-section,
    .note-cta-section,
    .footer {
        padding-left: 20px !important;
        padding-right: 20px !important;
        padding-top: 15px !important;
        padding-bottom: 25px !important;
    }

    .attention-box {
        padding: 12px 20px;
        font-size: 1rem;
        margin-bottom: 25px;
    }

    .main-headline .top-line {
        font-size: 1.6rem;
    }

    .main-headline .hero-step-headline {
        font-size: clamp(1rem, 4.5vw, 1.6rem);
        /* Adjust so it fits in one line on mobile */
        white-space: nowrap;
        overflow-wrap: normal;
        word-break: normal;
    }

    .main-headline .even-if {
        font-size: 1.3rem;
    }

    .main-headline .bottom-line {
        font-size: 1.3rem;
    }

    .hint-text {
        font-size: 1rem;
        margin: 20px auto 30px auto;
    }

    .cta-button {
        width: 100%;
        padding: 15px 20px;
        border-radius: 8px;
    }

    .cta-main-text {
        font-size: 1.1rem;
    }

    .section-title {
        font-size: 1.8rem;
        margin-bottom: 30px;
    }

    .workshop-unified-box {
        padding: 20px;
        border-radius: 15px;
    }

    .features-grid {
        grid-template-columns: 1fr;
        gap: 15px;
    }

    .desk-content h2 {
        font-size: 1.6rem;
    }

    .comparison-grid {
        grid-template-columns: 1fr;
    }

    .comparison-header {
        font-size: 1.5rem;
    }

    .video-section>div {
        max-width: 100% !important;
    }

    .video-grid {
        grid-template-columns: 1fr;
    }

    .discover-card {
        min-height: auto;
        padding: 30px 20px;
    }

    .gallery-grid {
        grid-template-columns: 1fr;
    }

    .note-title {
        font-size: 1.4rem;
    }

    .note-sub-title {
        font-size: 1.2rem;
    }
}

/* Hero Section */
.hero-card {
    background: transparent;
    padding-top: 20px;
    padding-bottom: 40px;
    text-align: center;
    margin: 0;
    color: #333;
}

.hero-card h1 {
    margin-bottom: 20px;
}

.attention-box {
    background-color: #dbeafe;
    /* Light blue matching screenshot */
    border-radius: 8px;
    display: inline-block;
    padding: 15px 40px;
    margin: 0 auto 40px auto;
    max-width: 800px;
    font-size: 1.35rem;
    line-height: 1.5;
    font-family: 'Barlow Semi Condensed', sans-serif;
    font-weight: 500;
    /* Increased for max darkness */
    color: #333333;
    /* Max dark */
}

.attention-box p {
    display: inline;
}

.attention-text {
    font-weight: 700;
    color: #ff0000;
    /* Red color for Attention word */
    text-decoration: underline;
}

.main-headline {
    font-family: 'Barlow Semi Condensed', sans-serif;
    font-weight: 700;
    /* Entire headline bold */
    margin-bottom: 25px;
    color: #333;
    line-height: 1.2;
    text-align: center;
}

.main-headline .top-line {
    display: block;
    font-size: clamp(1.8rem, 4.5vw, 2.8rem);
    margin-bottom: 2px;
    color: #000;
}

.blue-highlight {
    color: #2a65b3;
    /* Brand Blue */
}

.main-headline .hero-step-headline {
    display: block;
    font-size: clamp(1.2rem, 3.5vw, 3.2rem);
    /* Slightly smaller to fit one line */
    margin-bottom: 5px;
    white-space: nowrap;
    /* Force one line */
    overflow: visible;
    color: #333;
}

.main-headline .even-if {
    display: block;
    font-size: clamp(1.8rem, 4.5vw, 2.8rem);
    margin-bottom: 2px;
    text-align: center;
    color: #000;
}

.main-headline .bottom-line {
    display: block;
    font-size: clamp(1.6rem, 4.2vw, 3rem);
    line-height: 1.1;
    color: #000;
}

.underline {
    text-decoration: underline;
    text-underline-offset: 8px;
}

.sub-headline {
    font-size: 2.2rem;
    font-weight: 800;
    margin-bottom: 25px;
    line-height: 1.1;
    color: #222;
}

.blue-text {
    color: #2a65b3;
}

.hint-text {
    font-family: 'Barlow Semi Condensed', sans-serif;
    font-style: italic;
    color: #444444;
    /* Darkened as requested */
    font-weight: 500;
    font-size: clamp(1.3rem, 3vw, 1.6rem);
    /* Increased size */
    line-height: 1.6;
    max-width: 1000px;
    margin: 30px auto 40px auto;
    text-align: center;
    letter-spacing: -0.2px;
}

.hint-text strong,
.hint-text em {
    font-weight: 700;
}

.cta-button,
.register-btn,
.footer-cta-btn,
.popup-cta-btn {
    font-family: 'Poppins', sans-serif !important;
    font-weight: 700 !important;
}

.cta-button {
    font-family: 'Poppins', sans-serif !important;
    font-weight: 700 !important;
    background: #2367ca;
    /* New Brand Blue */
    color: #fff;
    border: none;
    padding: 18px 40px;
    border-radius: 12px;
    cursor: pointer;
    box-shadow: 0 4px 15px rgba(35, 103, 202, 0.3);
    display: flex;
    flex-direction: column;
    align-items: center;
    width: fit-content;
    margin: 0 auto;
    transition: all 0.2s ease;
}

.cta-button:hover {
    background: #2a65b3;
    transform: translateY(-2px);
}

.cta-main-text {
    font-size: clamp(1.4rem, 4vw, 1.8rem);
    font-weight: 700;
    margin-bottom: 5px;
    font-family: 'Poppins', sans-serif;
    text-transform: none;
    /* Changed from uppercase to match screenshot */
}

.cta-sub-text {
    font-size: 0.7rem;
    font-weight: 500;
    text-transform: uppercase;
    opacity: 0.95;
    letter-spacing: 0.2px;
}

.arrow {
    margin-left: 5px;
}

.price-strike {
    text-decoration: line-through;
    text-decoration-thickness: 1px;
    opacity: 0.8;
    margin-right: 5px;
}

.cta-bonus-tag {
    font-size: 1.2rem;
    font-weight: 800;
    color: #333;
    margin-top: 15px;
    text-align: center;
    display: block;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    font-family: 'Poppins', sans-serif;
}

/* Video Section */
.video-section {
    background: #000;
    padding: 30px 40px;
    margin: 0;
}

.video-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
    max-width: 800px;
    margin: 0 auto;
}

.video-box {
    position: relative;
    aspect-ratio: 16/9;
    background: #333;
    border-radius: 8px;
    overflow: hidden;
}

.video-box img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: 0.7;
}

.video-label {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    background: rgba(0, 0, 0, 0.8);
    color: #fff;
    padding: 5px 10px;
    font-size: 0.7rem;
    font-weight: bold;
}

/* Discovery Section */
.discovery-section {
    text-align: center;
    padding-top: 10px;
    /* Reduced gap */
    padding-bottom: 30px;
    margin: 0;
}

.section-title {
    font-size: 2.2rem;
    font-weight: 900;
    margin-bottom: 40px;
}

.blue-underline {
    color: #2a65b3;
    text-decoration: underline;
}

.discover-grid {
    display: grid;
    grid-template-columns: repeat(8, 2fr);
    /* 8 narrow columns to allow for 1/4 width cards staggered */
    gap: 20px;
    /* Reduced horizontal gap for more card width */
}

/* Row 1: Main Workshop Days */
.m-day {
    grid-column: 1 / span 2;
    grid-row: 1;
}

.w-day {
    grid-column: 3 / span 2;
    grid-row: 1;
}

.f-day {
    grid-column: 5 / span 2;
    grid-row: 1;
}

.su-day {
    grid-column: 7 / span 2;
    grid-row: 1;
}

/* Row 2: Assignment Days (Staggered "between" the columns above) */
.t-day {
    grid-column: 2 / span 2;
    grid-row: 2;
}

.th-day {
    grid-column: 4 / span 2;
    grid-row: 2;
}

.sa-day {
    grid-column: 6 / span 2;
    grid-row: 2;
}

@media (max-width: 1024px) {
    .discover-grid {
        grid-template-columns: 1fr;
    }

    .m-day,
    .w-day,
    .f-day,
    .su-day,
    .t-day,
    .th-day,
    .sa-day {
        grid-column: auto;
        grid-row: auto;
    }
}

.discover-card {
    border: 2px dashed #2a65b3;
    /* Standardized unified stripe line */
    border-radius: 8px;
    padding: 35px 10px;
    background: #fff;
    text-align: center;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    min-height: 280px;
    gap: 15px;
    transition: transform 0.3s ease;
}

.discover-card:hover {
    transform: translateY(-5px);
    background: #e6f3ff;
}

.discover-card h3 {
    font-size: 2.8rem;
    font-weight: 800;
    margin-bottom: 15px;
    color: #333333;
    font-family: 'Barlow Semi Condensed', sans-serif;
    letter-spacing: 1px;
    line-height: 1;
    text-transform: uppercase;
}

.date-row {
    background: transparent;
    padding: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 8px;
    font-weight: 700;
    margin-bottom: 15px;
    font-size: clamp(1rem, 2vw, 1.3rem);
    /* Responsive sizing */
    color: #333333;
    line-height: 1.2;
    font-family: 'Barlow Semi Condensed', sans-serif;
    white-space: nowrap;
    /* Force one line as per request */
}

.discover-card p {
    font-size: var(--body-font-size);
    /* Reverted to original as requested */
    color: #444444;
    line-height: 1.3;
    font-weight: 500;
    margin-top: 5px;
    font-family: 'Barlow Semi Condensed', sans-serif;
    letter-spacing: -0.3px;
    /* Subtle compression to fit 4 lines */
}

/* Restoration of uniformity for all days */

/* Workshop Features Section */
.workshop-features-section {
    padding: 20px 40px;
    /* Reduced vertical padding */
    background: #fff;
    margin: 0;
    text-align: center;
}

.workshop-features-container {
    max-width: 1100px;
    /* Increased to allow outer padding without reducing inner content */
    margin: 0 auto;
}

.workshop-features-section .main-heading {
    font-family: 'Barlow Semi Condensed', sans-serif;
    font-weight: 700;
    font-size: clamp(2.2rem, 5vw, 3.2rem);
    color: #333;
    margin-bottom: 20px;
    line-height: 1.2;
    text-transform: none;
}

/* Workshop Features Layout Restructure */
.features-outer-wrapper {
    border: 2px solid #e2e8f0;
    border-radius: 25px;
    padding: 40px 40px;
    background: #fff;
    margin-bottom: 10px;
    /* Reduced gap between boxes */
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.04);
}

.inner-tools-box {
    border: 2px dashed #2a65b3;
    /* The primary unified stripe line */
    border-radius: 20px;
    padding: 35px 35px 45px 35px;
    /* Reduced bottom padding */
    background: #ffffff;
    margin-bottom: 30px;
    /* Aligned for centered badge */
    position: relative;
}

.inner-tools-box:last-child {
    margin-bottom: 40px;
}

/* Professional Sale Tag UI - Global Refinements */
.inner-value-label {
    position: absolute;
    bottom: -40px;
    /* Centered in the new larger gap */
    left: 50%;
    transform: translateX(-50%);
    background: #ffffff;
    padding: 10px 30px;
    /* Slimmer vertical padding */
    border-radius: 50px;
    border: 2px solid #2a65b3;
    box-shadow: 0 15px 45px rgba(42, 101, 179, 0.2);
    z-index: 10;
    width: max-content;
    white-space: nowrap;
}

.sale-tag-container {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    font-family: 'Poppins', sans-serif;
}

.value-label-text {
    font-size: 1rem;
    font-weight: 800;
    color: #333;
}

.price-x-wrap {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-weight: 800;
    font-size: inherit;
    color: inherit;
    padding: 0 8px;
}

/* Increased vertical gap for better breathing room */
.inner-tools-box:first-of-type {
    margin-bottom: 80px;
    /* Space for the inner-value-label to breathe */
}

/* Responsive Overrides (Mobile & Tablet) */
@media (max-width: 1024px) {
    .inner-tools-box:first-of-type {
        margin-bottom: 60px;
    }

    .feature-box {
        padding-bottom: 80px !important;
    }
}


.price-x-wrap::before,
.price-x-wrap::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    width: 100%;
    height: 2.5px;
    background: #ff0000;
    border-radius: 10px;
    opacity: 0.8;
}

/* Blue variant for the X-cross */
.price-x-wrap-blue::before,
.price-x-wrap-blue::after {
    background: #2367ca !important;
}

.price-x-wrap::before {
    transform: translateY(-50%) rotate(12deg);
}

.price-x-wrap::after {
    transform: translateY(-50%) rotate(-12deg);
}

.white-ribbon-offer {
    position: relative;
    background: #ffffff;
    border: 3px solid #ff0000;
    padding: 4px 15px;
    transform: skewX(-15deg) rotate(-2deg);
    border-radius: 6px;
    box-shadow: 3px 3px 0px #ff0000;
    display: flex;
    align-items: center;
    justify-content: center;
}

.free-red-text {
    color: #ff0000;
    font-weight: 950;
    font-size: 1.25rem;
    text-transform: uppercase;
    animation: freePulseBadge 1.5s infinite;
}

/* Responsive Overrides (Mobile & Tablet) */
@media (max-width: 1024px) {
    .feature-box {
        padding-bottom: 100px !important;
        /* Dedicated space to prevent tag overlap with list */
    }

    .sale-tag-container {
        flex-direction: column;
        gap: 5px;
    }

    .value-label-text {
        font-size: 0.8rem;
        /* Smaller text on mobile */
        font-weight: 700;
    }

    .price-x-wrap {
        font-size: 1rem;
        padding: 0 4px;
    }

    .price-x-wrap::before,
    .price-x-wrap::after {
        height: 1.2px;
    }

    .white-ribbon-offer {
        padding: 2px 10px;
        border-width: 2px;
        border-radius: 4px;
        box-shadow: 2px 2px 0px #ff0000;
    }

    .free-red-text {
        font-size: 0.9rem;
    }

    .inner-value-label {
        width: 90%;
        bottom: -30px;
        padding: 8px 15px;
        /* Extra slim mobile pill */
        border-radius: 20px;
    }

    .box-value {
        width: 100% !important;
        margin-top: auto !important;
        padding: 10px !important;
        border-radius: 12px !important;
        z-index: 5;
    }
}

@media (max-width: 768px) {
    .feature-box {
        padding-bottom: 110px !important;
        /* Extra breathing room for smaller mobile screens */
    }
}



.ribbon-free-badge {
    position: relative;
    display: inline-block;
    padding: 5px 20px;
    margin-left: 10px;
}

.red-ribbon-bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #ff0000;
    transform: skewX(-15deg) rotate(-2deg);
    border-radius: 4px;
    box-shadow: 0 4px 10px rgba(255, 0, 0, 0.2);
}

.free-text-urgent {
    position: relative;
    color: #ffffff;
    /* Contrast for readability, but user asked for red text. Wait. */
    font-weight: 950;
    font-size: 1.2rem;
    text-transform: uppercase;
    letter-spacing: 1px;
    z-index: 2;
    animation: freePulseBadge 1.2s infinite ease-in-out;
}

/* Alternative: White Ribbon with Red Text if color: red is strict */
.white-ribbon-offer {
    position: relative;
    background: #fff;
    border: 3px solid #ff0000;
    padding: 4px 15px;
    transform: skewX(-15deg) rotate(-2deg);
    border-radius: 4px;
    box-shadow: 2px 2px 0px #ff0000;
}

.free-red-text {
    color: #ff0000;
    font-weight: 900;
    font-size: 1.25rem;
    display: inline-block;
}

@keyframes freePulseBadge {
    0% {
        transform: scale(1);
    }

    50% {
        transform: scale(1.08);
    }

    100% {
        transform: scale(1);
    }
}

/* Responsive Stacking */
@media (max-width: 768px) {
    .feature-box {
        padding-bottom: 30px !important;
        /* Ensure space for box-value */
    }

    .sale-tag-container {
        display: block;
        text-align: center;
        padding: 0;
    }

    .value-label-text {
        font-size: 0.75rem;
        display: inline-block;
        margin-right: 4px;
        color: #666;
    }

    .price-x-wrap {
        font-size: 0.9rem;
        display: inline-block;
    }

    .price-x-wrap::before,
    .price-x-wrap::after {
        height: 1.2px;
    }

    .white-ribbon-offer {
        display: block;
        margin: 3px auto 0;
        padding: 1px 8px;
        /* Extra compact */
        border-width: 2px;
        width: fit-content;
    }

    .free-red-text {
        font-size: 0.85rem;
    }

    .inner-value-label {
        width: 92%;
        bottom: -28px;
        padding: 6px 12px;
    }

    .box-value {
        width: 95% !important;
        margin-top: 15px !important;
        padding: 6px 10px !important;
        box-shadow: 0 5px 15px rgba(0, 0, 0, 0.05);
        border-radius: 10px !important;
    }
}






.features-box-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 30px;
}

.feature-box {
    background: #fff;
    border: 1px solid #e2e8f0;
    /* Subtle professional border instead of stripes */
    border-radius: 8px;
    padding: 30px 20px;
    text-align: center;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.03);
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    transition: transform 0.3s ease;
    overflow-wrap: break-word;
    word-wrap: break-word;
    min-width: 0;
}

/* Professional Group Backgrounds with Darker Outlines (More Pronounced) */
.feature-box.color-1 {
    background: #f0f7ff;
    /* Soft Blue */
    border: 1.5px solid #93c5fd;
    /* Darker Blue Outline */
}

.feature-box.color-2 {
    background: #f5f3ff;
    /* Soft Indigo */
    border: 1.5px solid #c4b5fd;
    /* Darker Indigo Outline */
}

.feature-box.color-3 {
    background: #f8fafc;
    /* Soft Slate */
    border: 1.5px solid #94a3b8;
    /* Much Darker Slate Outline for Group 3 */
}

.feature-box:hover {
    transform: translateY(-5px);
}

.box-heading {
    font-family: 'Poppins', sans-serif;
    font-size: 1.4rem;
    font-weight: 800;
    margin-bottom: 20px;
    color: #2a65b3;
    line-height: 1.2;
}

.box-list {
    list-style: none;
    padding: 0;
    margin: 0 0 20px 0;
    text-align: left;
    width: 100%;
}

.box-list li {
    font-size: var(--body-font-size);
    font-weight: 400;
    /* Removed bold formatting */
    margin-bottom: 12px;
    display: flex;
    align-items: center;
    /* Vertically centered */
    gap: 10px;
    color: #000000;
    font-weight: 500;
}

.box-desc {
    font-size: var(--body-font-size);
    color: #000000;
    /* Max dark as requested */
    margin-bottom: 20px;
    line-height: 1.5;
    font-weight: 500;
}

.box-emoji {
    font-size: 2.5rem;
    margin-bottom: 15px;
}

.box-emoji.modern-icon {
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0 auto 15px;
    height: 60px;
    width: 60px;
    border-radius: 14px;
    font-size: 1.8rem;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
}

/* Unique Professional Colors */
.icon-indigo {
    color: #6366f1;
    background: rgba(99, 102, 241, 0.1);
    border: 1px solid rgba(99, 102, 241, 0.2);
}

.icon-emerald {
    color: #10b981;
    background: rgba(16, 185, 129, 0.1);
    border: 1px solid rgba(16, 185, 129, 0.2);
}

.feature-box:hover .icon-indigo {
    transform: translateY(-3px) scale(1.1);
    background: rgba(99, 102, 241, 0.15);
    box-shadow: 0 8px 20px rgba(99, 102, 241, 0.2);
}

.feature-box:hover .icon-emerald {
    transform: translateY(-3px) scale(1.1);
    background: rgba(16, 185, 129, 0.15);
    box-shadow: 0 8px 20px rgba(16, 185, 129, 0.2);
}

.box-value {
    margin-top: auto;
    background: #ffffff;
    padding: 12px 20px;
    border-radius: 50px;
    border: 1px solid #e1e8f0;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05);
    display: flex;
    justify-content: center;
    align-items: center;
}


@media (max-width: 768px) {
    .workshop-features-section {
        padding: 40px 15px;
    }

    .features-outer-wrapper {
        padding: 30px 15px;
        border-radius: 20px;
    }

    .workshop-features-section .main-heading {
        font-size: clamp(1.8rem, 8vw, 2.2rem);
        margin-bottom: 30px;
    }

    .inner-tools-box {
        padding: 30px 15px 45px 15px;
        /* Added extra bottom padding for tag space */
        margin-bottom: 35px;
    }

    .inner-value-label {
        font-size: 0.95rem;
        padding: 8px 18px;
        bottom: -20px;
        /* Positioned at bottom */
        top: auto;
    }

    .features-box-grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .box-heading {
        font-size: 1.15rem;
        margin-bottom: 15px;
    }

    .box-list li {
        font-size: 0.95rem;
        margin-bottom: 10px;
    }

    .feature-box {
        padding: 20px 15px;
    }
}

/* Extra Mobile Polish for very small screens */
@media (max-width: 480px) {
    .workshop-features-section .main-heading {
        font-size: 1.6rem;
    }

    .inner-value-label {
        width: 85%;
        text-align: center;
        white-space: normal;
    }
}

/* Extra Bonuses Styling */
.bonus-resources-section {
    margin-bottom: 40px;
}

.bonus-flex-container {
    display: grid;
    grid-template-columns: 1fr 1fr;
    /* Back to side-by-side layout */
    gap: 20px;
    max-width: 1000px;
    margin: 0 auto;
}

.bonus-card-wide {
    background: #f8fbff;
    /* Match top container background */
    border: 1.5px solid #e1e8f0;
    /* Use same subtle border */
    padding: 15px 20px;
    /* Slightly reduced padding to help text fit */
    border-radius: 15px;
    display: flex;
    align-items: center;
    gap: 12px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.03);
    /* Same shadow as top box */
    text-align: left;
    min-height: 80px;
    /* Consistent height */
}

.bonus-emoji {
    font-size: 1.5rem;
    /* Small gift icon */
    flex-shrink: 0;
}

.bonus-title {
    font-family: 'Poppins', sans-serif;
    font-size: 1rem;
    /* Slightly smaller to ensure it stays on one line in 2-column layout */
    font-weight: 700;
    color: #000;
    line-height: 1.2;
    white-space: normal;
    /* Allow wrapping on mobile */
}

@media (max-width: 768px) {
    .bonus-flex-container {
        grid-template-columns: 1fr;
    }

    .bonus-card-wide {
        padding: 20px;
        min-height: auto;
    }

    .bonus-title {
        font-size: 1rem;
        white-space: normal;
    }
}

/* Desk Section - Card Design Inspired by Screenshot 2 */
.desk-section {
    background-color: #ffffff;
    /* General page background */
    margin: 0;
    padding: 60px 20px;
}

.desk-content {
    max-width: 1000px;
    margin: 0 auto;
    background-color: var(--cream-bg);
    /* Cream yellow background for the card */
    padding: 50px 60px;
    border-radius: 15px;
    /* Matching rounded corners */
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
    /* Subtle professional shadow */
    border: 1px solid #eef2f7;
}

.desk-content h2 {
    font-family: 'Bebas Neue', sans-serif;
    font-size: 2.8rem;
    font-weight: 500;
    color: #333;
    margin-bottom: 25px;
    text-transform: none;
    /* Sentence case/Title case as per screenshot */
    letter-spacing: 0.5px;
}

.desk-content h3 {
    font-style: italic;
    font-weight: 800;
    font-size: 1.5rem;
    color: #333;
    margin-bottom: 20px;
    text-transform: none;
}

.pain-list {
    list-style-type: none;
    margin-bottom: 35px;
}

.desk-content .pain-list li,
.desk-content .story-body p {
    font-size: clamp(1.3rem, 2.5vw, 1.5rem);
    /* Specially enlarged for desk content */
    font-weight: 400;
}

.pain-list li {
    font-size: var(--body-font-size);
    font-weight: 400;
    /* Standard body regular weight */
    color: #444444;
    margin-bottom: 25px;
    /* Slightly more space since border is gone */
    padding: 0;
    /* Remove container padding */
    background: transparent;
    /* Remove container background */
    border-radius: 0;
    line-height: 1.4;
    display: flex;
    align-items: flex-start;
    transition: all 0.3s ease;
}

.pain-list li:hover {
    transform: translateX(10px);
    color: #2a65b3;
    /* Subtle color shift on hover for interactivity */
}

.pain-list li .icon {
    display: none;
    /* Hide the ❌ icon as per screenshot 2 */
}

.italic-bold {
    font-style: italic;
    font-weight: 800;
    font-size: 1.5rem;
    color: #333;
    margin-top: 35px;
    margin-bottom: 20px;
}

.story-body p {
    margin-bottom: 20px;
    font-size: var(--body-font-size);
    line-height: 1.4;
    /* Standardized with pain-list */
    color: #444444;
    font-weight: 500;
    /* Increased for maximum darkness */
}

@media (max-width: 768px) {
    .desk-section {
        padding: 40px 15px;
    }

    .desk-content {
        padding: 35px 25px;
    }

    .desk-content h2 {
        font-size: 2.2rem;
    }

    .desk-content h3 {
        font-size: 1.25rem;
    }

    .pain-list li {
        font-size: var(--body-font-size);
    }

    .story-body p {
        font-size: var(--body-font-size);
    }
}

/* Comparison Section */
.comparison-section {
    margin: 0;
    padding-top: 30px;
    padding-bottom: 30px;
}

.comparison-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 15px;
    /* Minimized to provide more text space */
}

.comparison-card {
    border: 1px dashed #000000;
    border-radius: 12px;
    padding: 16px;
    /* Further reduced to maximize horizontal width */
    background: #f6f9fe;
}

.comparison-header {
    text-align: center;
    font-size: 1.8rem;
    font-weight: 900;
    margin-bottom: 30px;
    position: relative;
    display: inline-block;
    width: 100%;
}

.comparison-header::after {
    content: '';
    display: block;
    width: 120px;
    height: 4px;
    margin: 15px auto 0;
}

.red-text {
    color: #f22b2b;
}

.red-text::after {
    background: #f22b2b;
}

.green-text {
    color: var(--green);
}

.green-text::after {
    background: var(--green);
}

.comparison-list li {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    /* Tighter gap to gain characters */
    margin-bottom: 15px;
    font-weight: 500;
    /* Smart font sizing: Prevents 3rd line on laptops at 100% zoom */
    font-size: clamp(1.05rem, 1.8vw, 1.25rem);
    color: #444444;
    line-height: 1.3;
}

.check-icon {
    width: 24px;
    height: 24px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 0.8rem;
    font-weight: 900;
    flex-shrink: 0;
    margin-top: 5px;
    /* Perfect alignment with top of text */
}

.check-icon.red {
    background: var(--red);
}

.check-icon.green {
    background: var(--green);
}

/* Gallery Section */
.gallery-section {
    margin-bottom: 60px;
}

.gallery-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}

.gallery-grid img {
    width: 100%;
    border-radius: 12px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
    transition: transform 0.3s ease;
}

.gallery-grid img:hover {
    transform: scale(1.03);
}

/* Note & CTA Section */
.note-cta-section {
    background: transparent;
    padding-top: 10px;
    padding-bottom: 30px;
    margin: 0;
    text-align: center;
}

.note-title {
    font-size: 1.8rem;
    font-weight: 900;
    margin-bottom: 10px;
    color: #333;
}

.note-sub-title {
    font-size: 2rem;
    font-weight: 900;
    margin-bottom: 30px;
}

.primary-btn {
    background: #3174cf !important;
}

/* Footer */
.footer {
    padding: 60px 40px;
    text-align: center;
    border-top: 1px solid #e5e7eb;
}

.disclaimer {
    font-size: 0.85rem;
    color: #666;
    max-width: 900px;
    margin: 0 auto 20px auto;
    line-height: 1.5;
}

.footer-links {
    margin-top: 15px;
    margin-bottom: 0;
    font-weight: 600;
}

.footer-links a {
    color: #3b82f6;
    text-decoration: none;
    margin: 0 10px;
}

/* Modal Overlay */
.modal-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.7);
    display: flex;
    align-items: flex-start;
    /* Better for tall content on small screens */
    justify-content: center;
    z-index: 1000;
    opacity: 0;
    visibility: hidden;
    transition: all 0.3s ease;
    padding: 20px;
    /* Safe area around modal */
    overflow-y: auto;
    /* Enable outer scroll if modal is too tall */
    overscroll-behavior: contain;
}

.modal-overlay.active {
    opacity: 1;
    visibility: visible;
}

.modal-content {
    background: #fff;
    width: 95%;
    max-width: 600px;
    padding: 40px 40px 35px;
    border-radius: 16px;
    position: relative;
    transform: translateY(20px);
    transition: all 0.3s ease;
    margin: auto;
    /* Centering trick with flex-start parent */
    overflow: visible;
    /* Let form determine size */
    box-shadow: 0 20px 50px rgba(0, 0, 0, 0.3);
}

.modal-overlay.active .modal-content {
    transform: translateY(0);
}

.modal-close {
    position: absolute;
    top: 20px;
    right: 20px;
    background: none;
    border: none;
    font-size: 2rem;
    cursor: pointer;
    color: #666;
}

.modal-title {
    font-family: 'Bebas Neue', sans-serif;
    text-align: center;
    font-size: clamp(1.8rem, 4vw, 2.4rem);
    font-weight: 900;
    margin-bottom: 25px;
    line-height: 1.1;
    text-transform: uppercase;
    color: #333;
}

/* Registration Form */
.form-group {
    margin-bottom: 20px;
}

.form-group label {
    display: block;
    font-weight: 600;
    margin-bottom: 8px;
    text-transform: none;
    /* Changed from lowercase */
    font-family: 'Poppins', sans-serif;
}

.required {
    color: var(--red);
}

.form-group input {
    width: 100%;
    padding: 12px 16px;
    border: 1px solid #d1d5db;
    border-radius: 8px;
    font-size: 1rem;
}

.phone-input-wrapper {
    display: flex;
    gap: 10px;
}

.country-select {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 12px 15px;
    border: 1px solid #d1d5db;
    border-radius: 8px;
    background: #f9fafb;
    cursor: pointer;
}

.country-select img {
    width: 20px;
}

.dropdown-arrow {
    font-size: 0.7rem;
    color: #666;
}

.register-btn {
    font-family: 'Poppins', sans-serif;
    font-weight: 700;
    width: 100%;
    background: #3174cf;
    color: #fff;
    border: none;
    padding: 15px;
    border-radius: 8px;
    font-size: 2.2rem;
    font-weight: 800;
    cursor: pointer;
    margin-top: 10px;
    transition: background 0.2s;
    text-transform: uppercase;
    letter-spacing: 1px;
    line-height: 1;
}

.register-btn:hover {
    background: #2a65b3;
}

@media (max-width: 1024px) {
    .discover-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .discover-card {
        min-height: 250px;
    }
}

@media (max-width: 768px) {
    .container {
        padding: 0 15px 15px 15px;
    }

    .video-section {
        margin-left: -15px;
        margin-right: -15px;
        padding: 40px 15px;
    }

    .desk-section {
        padding: 40px 20px;
    }

    .hero-card {
        padding: 30px 15px;
    }

    .main-headline .top-line {
        font-size: 1.8rem;
    }

    .main-headline .hero-step-headline {
        white-space: normal;
        font-size: 1.6rem;
    }

    .mobile-break-text {
        display: block;
        margin-top: 5px;
    }

    .main-headline .even-if {
        font-size: 1.8rem;
    }

    .main-headline .bottom-line {
        font-size: 1.5rem;
    }

    .discover-grid {
        grid-template-columns: 1fr;
    }

    .comparison-grid,
    .video-grid {
        grid-template-columns: 1fr;
    }

    .attention-box {
        padding: 10px 15px;
        font-size: 1.1rem;
        width: 100%;
    }

    .cta-button {
        width: 100%;
        padding: 15px 10px;
    }

    .cta-main-text {
        font-size: 1.2rem;
        text-align: center;
    }

    .gallery-grid {
        grid-template-columns: 1fr;
    }

    .date-row {
        white-space: normal;
        text-align: center;
    }

    .whatsapp-btn {
        min-width: 100%;
        padding: 15px 10px;
        font-size: 1.5rem;
    }
}

/* New Workshop Styles */
.even-if-box {
    background: #fdf2f2;
    border-left: 4px solid var(--red);
    padding: 20px;
    margin: 20px auto;
    max-width: 600px;
    text-align: left;
    border-radius: 8px;
}

.even-if-title {
    font-weight: 800;
    margin-bottom: 10px;
    color: var(--red);
}

.even-if-list {
    list-style: none;
    font-weight: 500;
}

.framework-text {
    font-size: 1.4rem;
    margin: 10px 0 30px;
    color: #444;
}

.benefits-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 15px;
    margin-bottom: 40px;
}

.benefit-item {
    background: #f0fdf4;
    border: 1px solid #bbf7d0;
    padding: 15px;
    border-radius: 8px;
    font-weight: 700;
    color: #166534;
}

/* Pain Section */
.pain-section {
    background: #fff;
    padding: 60px 40px;
    border-radius: 12px;
    margin-bottom: 40px;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
}

.pain-container {
    max-width: 700px;
    margin: 0 auto;
}

.pain-intro {
    font-size: 1.3rem;
    font-weight: 600;
    margin-bottom: 25px;
    color: #444;
}

.pain-list {
    list-style: none;
    text-align: left;
}

.pain-list li {
    font-size: 1.1rem;
    margin-bottom: 15px;
    display: flex;
    gap: 12px;
    font-weight: 500;
}

/* Truth Section */
.truth-section {
    background: #f8fafc;
    padding: 60px 20px;
    text-align: center;
    margin-bottom: 40px;
}

.truth-highlight {
    font-size: 1.5rem;
    margin-bottom: 40px;
    line-height: 1.4;
}

.strategy-comparison {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 30px;
    max-width: 900px;
    margin: 0 auto;
}

.old-way,
.new-way {
    background: #fff;
    padding: 30px;
    border-radius: 12px;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.05);
}

.old-way h3 {
    color: var(--red);
    margin-bottom: 20px;
}

.new-way h3 {
    color: var(--green);
    margin-bottom: 20px;
}

.old-way ul {
    list-style: none;
    text-align: left;
    margin-bottom: 20px;
}

.old-way li {
    margin-bottom: 10px;
    font-weight: 500;
}

.result-text {
    font-style: italic;
    color: #666;
    font-size: 0.9rem;
}

.highlight-box {
    background: #f0fdf4;
    padding: 15px;
    border-radius: 8px;
    margin-top: 20px;
    border: 1px dashed var(--green);
}

/* Solution Section */
.solution-section {
    padding: 60px 20px;
    background: #fff;
    border-radius: 12px;
    margin-bottom: 40px;
}

.sub-intro {
    font-size: 1.2rem;
    margin-bottom: 40px;
    color: #555;
    text-align: center;
}

.workshop-benefits {
    max-width: 600px;
    margin: 0 auto 40px;
    text-align: left;
}

.workshop-benefits h4 {
    font-family: 'Poppins', sans-serif;
    margin-bottom: 20px;
    font-size: 1.2rem;
}

.check-list {
    list-style: none;
}

.check-list li {
    margin-bottom: 12px;
    display: flex;
    gap: 10px;
    font-weight: 600;
}

.bonus-box {
    background: #eff6ff;
    border: 2px solid #3b82f6;
    border-radius: 12px;
    padding: 30px;
    max-width: 600px;
    margin: 0 auto;
    text-align: left;
}

.bonus-header {
    display: flex;
    align-items: center;
    gap: 15px;
    margin-bottom: 15px;
}

.bonus-header h4 {
    font-family: 'Poppins', sans-serif;
    font-size: 1.3rem;
    margin: 0;
}

.gift-icon {
    font-size: 2rem;
}

.bonus-list {
    list-style: none;
    margin-top: 15px;
}

.bonus-list li {
    margin-bottom: 8px;
    font-weight: 600;
    color: #1e40af;
}

/* Offer Section */
.offer-section {
    padding: 60px 20px;
    text-align: center;
}

.offer-card {
    background: #fff;
    padding: 40px;
    border-radius: 20px;
    border: 3px solid #3b82f6;
    max-width: 800px;
    margin: 0 auto;
    box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1);
}

.pricing-box {
    margin: 30px 0;
}

.old-price {
    text-decoration: line-through;
    color: #666;
    font-size: 1.2rem;
}

.new-price {
    font-size: 2rem;
    font-weight: 900;
    color: var(--primary-blue);
    margin-top: 10px;
}

.price-val {
    font-size: 3rem;
    color: var(--red);
}

.urgency-text {
    font-weight: 800;
    color: var(--red);
    margin-bottom: 30px;
}

.career-milestones {
    margin-bottom: 40px;
    font-size: 1.2rem;
    font-weight: 500;
}

.career-milestones .highlight {
    font-size: 1.5rem;
    font-weight: 900;
    color: #000;
    margin-top: 15px;
}

@media (max-width: 768px) {
    .strategy-comparison {
        grid-template-columns: 1fr;
    }

    .main-headline {
        font-size: 2.2rem;
    }
}

/* Thank You Page Styles */
.thank-you-container {
    max-width: 900px;
    margin: 5px auto;
    text-align: center;
    padding: 10px 20px;
}

.alert-banner {
    background-color: #e6f0ff;
    border: 2px dashed #0096ff;
    padding: 15px;
    border-radius: 12px;
    margin-bottom: 20px;
    display: inline-block;
}

.alert-banner p {
    font-weight: 800;
    font-size: 1.4rem;
    color: #000;
}

.congrats-title {
    font-family: 'Bebas Neue', sans-serif;
    font-size: clamp(1.2rem, 6.5vw, 4.5rem);
    font-weight: 900;
    margin-bottom: 25px;
    text-transform: uppercase;
    color: #000;
    letter-spacing: 1px;
    line-height: 1.1;
    white-space: nowrap;
}

.whatsapp-btn {
    font-family: 'Poppins', sans-serif;
    background: #25d366;
    /* WhatsApp Green */
    color: #fff;
    border: none;
    padding: 18px 45px;
    border-radius: 12px;
    cursor: pointer;
    text-decoration: none;
    display: flex;
    justify-content: center;
    align-items: center;
    width: fit-content;
    min-width: 280px;
    max-width: 100%;
    margin: 0 auto;
    box-shadow: 0 4px 15px rgba(37, 211, 102, 0.3);
    transition: transform 0.2s, background 0.2s;
    font-size: 1.6rem;
    font-weight: 700;
    gap: 15px;
    line-height: 1;
    text-transform: none;
    /* Changed from uppercase */
}

.whatsapp-btn:hover {
    background: #2a65b3;
    transform: translateY(-2px);
}

.whatsapp-btn img {
    flex-shrink: 0;
    width: 32px;
    /* Slightly larger for impact */
    height: 32px;
}

.whatsapp-btn span {
    display: inline-block;
}

.confirm-text {
    font-size: 1.3rem;
    line-height: 1.5;
    margin-bottom: 40px;
    color: #000;
    max-width: 800px;
    margin-left: auto;
    margin-right: auto;
    font-weight: 500;
}

.confirm-text .blue-underline {
    color: #1271c2;
    text-decoration: underline;
    font-weight: 800;
}

.confirm-text i {
    font-style: italic;
}

.event-details {
    margin-top: 40px;
}

.event-details p {
    font-size: 1.8rem;
    font-weight: 800;
    margin-bottom: 15px;
    color: #000;
}

.script-headline {
    font-family: 'Bebas Neue', sans-serif;
    font-size: clamp(1.8rem, 5vw, 2.8rem);
    font-weight: 800;
    margin-top: 25px;
    margin-bottom: 20px;
    color: #000;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.script-headline span {
    text-decoration: none;
    color: #3b82f6;
    font-weight: 700;
}

.see-you-text {
    font-family: 'Poppins', sans-serif;
    color: #1271c2;
    font-size: 1.4rem;
    margin-top: 20px;
    text-align: center;
    width: 100%;
    display: block;
    font-weight: 600;
    font-style: italic;
}

@media (max-width: 600px) {
    .congrats-title {
        font-size: clamp(1.1rem, 7vw, 2.8rem);
    }

    .confirm-text {
        font-size: 1.1rem;
    }

    .whatsapp-main-text {
        font-size: 1.1rem;
    }

    .script-headline {
        font-size: 2rem;
    }

    .whatsapp-btn {
        padding: 10px 15px;
        min-width: 100%;
    }

    .modal-content {
        padding: 25px 15px;
    }

    .modal-title {
        font-size: 1.6rem;
    }
}

/* --- STICKY FOOTER BAR --- */
.sticky-footer-bar {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    background: #2367ca;
    /* Updated to use new blue */
    font-family: 'Poppins', sans-serif;
    border-top: 2px solid rgba(255, 255, 255, 0.2);
    z-index: 10000;
    padding: 4px 0;
    /* Tightened bar padding globally */
    box-shadow: 0 -10px 30px rgba(0, 0, 0, 0.15);
    display: flex;
    justify-content: center;
    align-items: center;
}

.footer-inner {
    width: 100%;
    max-width: 1400px;
    margin: 0 auto;
    padding: 0 20px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 20px;
}

/* Timer Section */
.footer-timer-box {
    display: flex;
    flex-direction: column;
    align-items: center;
    position: relative;
    min-width: 180px;
}

.timer-tag {
    background: #ef4444;
    /* Alert Red for urgency */
    color: #fff;
    font-size: 0.65rem;
    font-weight: 900;
    padding: 2px 10px;
    border-radius: 4px;
    position: absolute;
    top: -12px;
    white-space: nowrap;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.timer-display {
    border: 1.5px solid rgba(255, 255, 255, 0.3);
    border-radius: 8px;
    padding: 8px 15px;
    display: flex;
    gap: 12px;
    background: rgba(49, 116, 207, 0.1);
    /* Subtle blue tint */
}

.time-num {
    color: #fff;
    font-size: 1.5rem;
    /* Slightly smaller */
    font-weight: 900;
    line-height: 1;
}

.time-label {
    color: rgba(255, 255, 255, 0.9);
    /* Clear white labels on blue */
    font-size: 0.65rem;
    text-transform: uppercase;
    font-weight: 800;
    margin-top: 4px;
}

/* Price Section */
.footer-price-info {
    text-align: center;
}

.price-top-label {
    color: #ffffff;
    font-size: 0.75rem;
    /* Smaller label */
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 1.2px;
    display: block;
    margin-bottom: 2px;
}

.price-main-val {
    color: #fff;
    font-size: 1.8rem;
    font-weight: 900;
    font-family: 'Poppins', sans-serif;
    letter-spacing: -0.5px;
    line-height: 1;
}

/* CTA Section */
.footer-cta-btn {
    background: #ffffff;
    color: #2367ca;
    /* Updated blue */
    padding: 12px 45px;
    /* Larger, more prominent padding */
    border-radius: 10px;
    font-weight: 900;
    font-size: 1.45rem;
    /* Larger font size globally */
    font-family: 'Poppins', sans-serif;
    text-transform: uppercase;
    border: none;
    cursor: pointer;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
    white-space: nowrap;
    text-decoration: none;
    display: inline-block;
}

.footer-cta-btn:hover {
    background: #f8fafc;
    /* Subtle off-white on hover */
    color: #2367ca;
    /* Darker blue text */
    transform: translateY(-3px) scale(1.02);
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.2);
}

/* Mobile Responsiveness for Footer */
@media (max-width: 768px) {
    .sticky-footer-bar {
        padding: 8px 0;
    }

    .footer-inner {
        flex-direction: row;
        justify-content: space-around;
        gap: 10px;
        padding: 0 10px;
    }

    .footer-timer-box {
        display: none;
        /* Hide timer on mobile to save space */
    }

    .price-main-val {
        font-size: 1.4rem;
    }

    .footer-cta-btn {
        padding: 10px 15px;
        font-size: 0.9rem;
        font-weight: 900;
    }

    /* Modal Mobile Adjustments */
    .modal-content {
        padding: 30px 20px;
    }

    .modal-close {
        top: 10px;
        right: 15px;
        font-size: 1.5rem;
    }

    .modal-title {
        font-size: 1.4rem;
        margin-bottom: 20px;
    }

    .register-btn {
        font-size: 1.5rem;
        padding: 12px;
    }
}

@media (max-width: 480px) {
    .price-main-val {
        font-size: 1.2rem;
    }

    .footer-cta-btn {
        padding: 8px 12px;
        font-size: 0.9rem;
    }

    .main-headline .top-line {
        font-size: 1.4rem;
    }

    .main-headline .hero-step-headline {
        font-size: 1.6rem;
    }

    .cta-main-text {
        font-size: 1rem;
    }
}

.register-btn {
    font-size: 1.5rem;
    padding: 12px;
}

/* FAQ Section */
.faq-section {
    padding: 20px 40px 20px;
    background: #ffffff;
    text-align: center;
}

.faq-container {
    max-width: 1100px;
    /* Increased width as requested */
    margin: 40px auto 0;
    text-align: left;
    padding: 0 20px;
    /* Extra side space for breathing room */
}

.faq-item {
    background: #fff;
    border: 1px solid #e2e8f0;
    border-radius: 12px;
    margin-bottom: 15px;
    overflow: hidden;
    transition: all 0.3s ease;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.02);
}

.faq-item.active {
    border-color: #2a65b3;
    box-shadow: 0 4px 12px rgba(42, 101, 179, 0.08);
}

.faq-question {
    padding: 22px 30px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    cursor: pointer;
    font-weight: 700;
    font-size: var(--body-font-size);
    color: #1a202c;
    user-select: none;
    transition: background 0.2s ease;
}

.faq-question:hover {
    background: #f8fafc;
}

.faq-answer {
    padding: 0 30px;
    max-height: 0;
    overflow: hidden;
    transition: all 0.35s cubic-bezier(0.4, 0, 0.2, 1);
    color: #000000;
    line-height: 1.8;
    font-size: var(--body-font-size);
    font-weight: 500;
    /* Standardized for max darkness */
}

.faq-item.active .faq-answer {
    padding: 0 30px 30px 30px;
    max-height: 1000px;
}

.faq-icon {
    font-size: 1.6rem;
    font-weight: 400;
    color: #2a65b3;
    width: 24px;
    height: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: transform 0.3s ease;
}

@media (max-width: 768px) {
    .faq-section {
        padding: 50px 20px;
    }

    .faq-question {
        padding: 18px 20px;
        font-size: 1.05rem;
        line-height: 1.4;
    }

    .faq-answer {
        padding: 0 20px;
        font-size: var(--body-font-size);
    }

    .faq-item.active .faq-answer {
        padding: 0 20px 20px 20px;
    }
}

.footer {
    padding-top: 50px;
    padding-bottom: 20px;
    background: #fdfdfd;
    margin-top: auto;
    font-family: 'Poppins', sans-serif;
    /* Applied Poppins to footer */
    /* Push to bottom of container */
}

.disclaimer {
    color: #000000;
    font-size: 0.85rem;
    margin-bottom: 20px;
    line-height: 1.6;
    font-weight: 500;
    text-align: center;
    max-width: 1100px;
    margin-left: auto;
    margin-right: auto;
}

.footer-links {
    margin-top: 15px;
    text-align: center;
    font-weight: 600;
}

.footer-links a {
    color: #2367ca;
    /* Updated blue */
    text-decoration: none;
    margin: 0 10px;
}

.footer-links a:hover {
    text-decoration: underline;
}

/* Horizontal Button Animation */
.cta-button,
.footer-cta-btn,
.whatsapp-btn {
    animation: slideHorizontal 0.5s ease-in-out infinite;
}

@keyframes slideHorizontal {

    0%,
    100% {
        transform: translateX(0);
    }

    50% {
        transform: translateX(10px);
    }
}

.pricing-one-liner {
    font-family: 'Poppins', sans-serif;
    font-size: clamp(1.1rem, 4.5vw, 2.22rem);
    font-weight: 800;
    text-transform: uppercase;
    color: #000;
    border-bottom: 5px solid #000;
    padding-bottom: 2px;
    display: inline-block;
    white-space: nowrap;
    line-height: 1.1;
    margin-bottom: 25px;
    letter-spacing: -0.3px;
}