:root {
    color-scheme: light;
    --background: oklch(0.975 0.014 75);
    --foreground: oklch(0.28 0.045 268);
    --card: oklch(0.995 0.006 75);
    --card-foreground: oklch(0.28 0.045 268);
    --primary: oklch(0.52 0.15 291);
    --primary-hover: oklch(0.46 0.16 291);
    --primary-foreground: oklch(0.99 0.005 75);
    --secondary: oklch(0.93 0.03 288);
    --secondary-foreground: oklch(0.28 0.045 268);
    --muted: oklch(0.955 0.014 75);
    --muted-foreground: oklch(0.48 0.03 265);
    --accent: oklch(0.87 0.07 78);
    --accent-foreground: oklch(0.28 0.045 268);
    --border: oklch(0.9 0.015 80);
    --radius: 1.25rem;
    --radius-sm: calc(var(--radius) * 0.6);
    --radius-md: calc(var(--radius) * 0.8);
    --radius-lg: var(--radius);
    --radius-xl: calc(var(--radius) * 1.4);
    --radius-2xl: calc(var(--radius) * 1.8);
    --radius-3xl: calc(var(--radius) * 2.2);
    --lavender: oklch(0.88 0.06 291);
    --lavender-foreground: oklch(0.32 0.08 291);
    --sky: oklch(0.86 0.06 232);
    --sky-foreground: oklch(0.3 0.07 232);
    --mint: oklch(0.86 0.08 166);
    --mint-foreground: oklch(0.3 0.07 166);
    --peach: oklch(0.87 0.08 45);
    --peach-foreground: oklch(0.35 0.09 40);
    --sunshine: oklch(0.88 0.1 92);
    --sunshine-foreground: oklch(0.38 0.08 80);
    --navy: oklch(0.24 0.06 275);
    --navy-foreground: oklch(0.96 0.02 80);
    --success: oklch(0.65 0.15 155);
    --success-foreground: oklch(0.99 0.005 75);
    --rose: oklch(0.72 0.14 15);
    --rose-foreground: oklch(0.99 0.005 75);
    --font-sans: "Plus Jakarta Sans", "Noto Sans", ui-sans-serif, system-ui, sans-serif;
    --font-display: "Fredoka", ui-rounded, sans-serif;
    --font-hindi: "Noto Sans Devanagari", "Noto Sans", sans-serif;
    --font-gujarati: "Noto Sans Gujarati", "Noto Sans", sans-serif;
    --container-max: 1240px;
}

@media (max-width: 767px) {

    /* Keep the sticky purchase bar within the screen. */
    .sticky-cta {
        left: 0;
        right: 0;
        width: auto;
        max-width: 100%;
        box-sizing: border-box;
    }

    .sticky-cta__info {
        min-width: 0;
    }

    .sticky-cta__price {
        flex-wrap: wrap;
    }

    /* Keep the avatar, hide the admin-bar account name. */
    #wpadminbar .display-name {
        display: none !important;
    }
}

a:focus-visible,
button:focus-visible,
[tabindex]:focus-visible {
    outline: 3px solid color-mix(in oklab, var(--primary) 55%, transparent);
    outline-offset: 3px;
    border-radius: 4px;
}

.container {
    width: 100%;
    max-width: var(--container-max);
    margin: 0 auto;
    padding: 0 1rem;
}

.container-copy {
    width: 100%;
    max-width: 760px;
    margin: 0 auto;
    padding: 0 1rem;
}

@media (min-width: 768px) {

    .container,
    .container-copy {
        padding: 0 2rem;
    }
}

.section {
    padding: 32px 0;
}

@media (min-width: 768px) {
    .section {
        padding: 48px 0;
    }
}

.section-heading {
    text-align: center;
    font-family: var(--font-display);
    font-weight: 600;
    font-size: 1.625rem;
    color: var(--foreground);
    letter-spacing: -0.01em;
    line-height: 1.2;
}

@media (min-width: 640px) {
    .section-heading {
        font-size: 2.125rem;
    }
}

.section-subhead {
    margin-top: 0.5rem;
    color: var(--muted-foreground);
    font-size: 0.9375rem;
    text-align: center;
    max-width: 38rem;
    margin-left: auto;
    margin-right: auto;
    line-height: 1.55;
}

.section-intro {
    max-width: 40rem;
    margin: 0 auto;
    text-align: center;
}

.font-sans-fallback {
    font-family: "Noto Sans", ui-sans-serif, system-ui, sans-serif;
}

.btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    border-radius: 999px;
    border: none;
    font-family: var(--font-sans);
    font-weight: 700;
    font-size: 0.9375rem;
    padding: 0 1.5rem;
    height: 2.875rem;
    background: var(--primary);
    color: var(--primary-foreground);
    transition: all 0.22s cubic-bezier(0.34, 1.56, 0.64, 1);
    white-space: nowrap;
    line-height: 1;
    position: relative;
    overflow: hidden;
}

.btn:hover {
    background: var(--primary-hover);
    transform: translateY(-1px);
    box-shadow: 0 10px 24px -8px color-mix(in oklab, var(--primary) 50%, transparent);
}

.btn:active {
    transform: translateY(0);
}

.btn svg {
    width: 1rem;
    height: 1rem;
}

.btn-lg {
    height: 3.25rem;
    padding: 0 2rem;
    font-size: 1rem;
}

.btn-sm {
    height: 2.25rem;
    padding: 0 1rem;
    font-size: 0.8125rem;
}

.btn-outline {
    background: transparent;
    color: var(--foreground);
    border: 1.5px solid var(--border);
}

.btn-outline:hover {
    background: var(--card);
    border-color: color-mix(in oklab, var(--foreground) 20%, transparent);
}

.btn-ghost {
    background: transparent;
    color: var(--foreground);
}

.btn-ghost:hover {
    background: var(--muted);
    box-shadow: none;
    transform: none;
}

.btn-sunshine {
    background: var(--sunshine);
    color: var(--sunshine-foreground);
}

.btn-sunshine:hover {
    background: color-mix(in oklab, var(--sunshine) 92%, black 8%);
}

.btn-block {
    width: 100%;
}

.btn-shine::after {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.25), transparent);
    transition: left 0.6s ease;
    pointer-events: none;
}

.btn-shine:hover::after {
    left: 100%;
}

.badge {
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
    border-radius: 999px;
    background: var(--primary);
    color: var(--primary-foreground);
    font-size: 0.6875rem;
    font-weight: 700;
    letter-spacing: 0.03em;
    padding: 0.3rem 0.7rem;
    text-transform: uppercase;
}

.badge-sunshine {
    background: var(--sunshine);
    color: var(--sunshine-foreground);
}

.badge-soft {
    background: color-mix(in oklab, var(--primary) 12%, var(--card));
    color: var(--primary);
}





.lang-picker {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    width: 100%;
    max-width: 100%;
}

.lang-picker__label {
    font-size: 0.6875rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: color-mix(in oklab, var(--foreground) 55%, transparent);
    display: flex;
    align-items: center;
    gap: 0.35rem;
}

.lang-picker__label svg {
    width: 0.85rem;
    height: 0.85rem;
    color: var(--primary);
}

.lang-options {
    display: flex;
    padding: 0.25rem;
    border-radius: 999px;
    background: var(--muted);
    border: 1px solid var(--border);
    gap: 0.15rem;
    width: fit-content;
    max-width: 100%;
    overflow-x: auto;
    scrollbar-width: none;
    -webkit-overflow-scrolling: touch;
}

.lang-options::-webkit-scrollbar {
    display: none;
}

.lang-option {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    padding: 0.5rem 1rem;
    border-radius: 999px;
    background: transparent;
    border: none;
    font-family: var(--font-sans);
    font-size: 0.8125rem;
    font-weight: 700;
    color: var(--muted-foreground);
    cursor: pointer;
    transition: all 0.2s ease;
    line-height: 1;
    white-space: nowrap;
    flex-shrink: 0;
    min-height: 2.25rem;
}

.lang-option:hover {
    color: var(--foreground);
}

.lang-option.is-active {
    background: var(--card);
    color: var(--primary);
    box-shadow: 0 2px 8px -2px rgba(0, 0, 0, 0.12);
}

.lang-option[data-lang="hi"] {
    font-family: var(--font-hindi);
    font-size: 0.875rem;
}

.lang-option[data-lang="gu"] {
    font-family: var(--font-gujarati);
    font-size: 0.875rem;
}

.lang-picker--sm .lang-option {
    padding: 0.4rem 0.75rem;
    font-size: 0.75rem;
}

.lang-picker--sm .lang-option[data-lang="hi"] {
    font-size: 0.8125rem;
}

.lang-picker--sm .lang-option[data-lang="gu"] {
    font-size: 0.8125rem;
}

.lang-note {
    font-size: 0.75rem;
    color: var(--muted-foreground);
    display: flex;
    align-items: center;
    gap: 0.35rem;
    flex-wrap: wrap;
}

.lang-note svg {
    width: 0.8rem;
    height: 0.8rem;
    color: var(--success);
    flex-shrink: 0;
}

.hero {
    position: relative;
    overflow: hidden;
    padding: 12px 0 32px;
    background:
        radial-gradient(ellipse 55% 45% at 15% 10%, color-mix(in oklab, var(--lavender) 45%, transparent) 0%, transparent 60%),
        radial-gradient(ellipse 45% 50% at 90% 30%, color-mix(in oklab, var(--sunshine) 30%, transparent) 0%, transparent 55%);
}

@media (min-width: 768px) {
    .hero {
        padding: 16px 0 48px;
    }
}

.hero__grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 1.5rem;
    align-items: center;
}

@media (min-width: 900px) {
    .hero__grid {
        grid-template-columns: 1fr 1fr;
        gap: 2rem;
    }
}

.hero__media {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: var(--radius-3xl);
    background: linear-gradient(135deg, var(--lavender) 0%, color-mix(in oklab, var(--sky) 40%, var(--lavender)) 100%);
    padding: 1.5rem;
    aspect-ratio: 1 / 1;
    overflow: hidden;
    box-shadow: 0 30px 60px -20px color-mix(in oklab, var(--primary) 30%, transparent);
    order: -1;
}

@media (min-width: 900px) {
    .hero__media {
        order: 2;
        padding: 2rem;
    }
}

.hero__media::before {
    content: '';
    position: absolute;
    inset: 12%;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(255, 255, 255, 0.6), transparent 65%);
    filter: blur(30px);
}

.hero__media img {
    position: relative;
    z-index: 1;
    width: 100%;
    height: 100%;
    object-fit: contain;
    filter: drop-shadow(0 30px 50px rgba(0, 0, 0, 0.25));
    transition: transform 0.6s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.hero__media:hover img {
    transform: scale(1.04) rotate(-1deg);
}

.hero-float-badge {
    position: absolute;
    background: var(--card);
    border-radius: 0.9rem;
    padding: 0.5rem 0.75rem;
    box-shadow: 0 12px 28px -8px rgba(0, 0, 0, 0.22);
    display: flex;
    align-items: center;
    gap: 0.4rem;
    font-size: 0.75rem;
    font-weight: 700;
    z-index: 3;
    animation: float 4s ease-in-out infinite;
}

.hero-float-badge svg {
    width: 0.9rem;
    height: 0.9rem;
    color: var(--success);
}

.hero-float-badge--top {
    top: 1rem;
    left: 1rem;
}

.hero-float-badge--bottom {
    bottom: 1rem;
    right: 1rem;
    animation-delay: -2s;
}

.eyebrow {
    display: inline-flex;
    width: fit-content;
    align-items: center;
    gap: 0.4rem;
    border-radius: 999px;
    background:
        color-mix(in oklab, var(--primary) 10%, var(--card));
    color: var(--primary);
    border: 1px solid color-mix(in oklab, var(--primary) 18%, transparent);
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    padding: 0.4rem 0.9rem;
    text-transform: uppercase;
}

@keyframes float {

    0%,
    100% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(-5px);
    }
}

.hero__content {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    order: 2;
}

@media (min-width: 900px) {
    .hero__content {
        order: 1;
    }
}

.hero__title {
    font-family: var(--font-display);
    font-weight: 600;
    font-size: 2.25rem;
    line-height: 1.05;
    letter-spacing: -0.02em;
}

@media (min-width: 640px) {
    .hero__title {
        font-size: 3rem;
    }
}

@media (min-width: 1024px) {
    .hero__title {
        font-size: 3.5rem;
    }
}

.hero__title em {
    font-style: italic;
    font-weight: 500;
    color: var(--primary);
}

.hero__lede {
    max-width: 32rem;
    color: var(--muted-foreground);
    line-height: 1.6;
    font-size: 1.0625rem;
}

.hero-chips {
    display: flex;
    flex-wrap: wrap;
    gap: 0.4rem;
}

.chip {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    border-radius: 999px;
    background: color-mix(in oklab, var(--primary) 8%, var(--card));
    color: color-mix(in oklab, var(--primary) 85%, black);
    font-size: 0.75rem;
    font-weight: 700;
    padding: 0.35rem 0.75rem;
}

.chip svg {
    width: 0.8rem;
    height: 0.8rem;
}

.price-block-hero {
    display: flex;
    align-items: baseline;
    gap: 0.6rem;
    flex-wrap: wrap;
    padding: 0.25rem 0 0;
    margin-bottom: 10px;
}

.price-hero {
    font-family: var(--font-display);
    font-weight: 600;
    font-size: 2.5rem;
    letter-spacing: -0.02em;
    line-height: 1;
}


ins:has(.woocommerce-Price-amount.amount) {
    text-decoration: none !important;
    border-bottom: none !important;
    box-shadow: none !important;
    margin-left: 5px;
}

.price-note-hero {
    margin-top: -0.35rem;
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--muted-foreground);
    margin-bottom: 10px;
}

.hero-ctas {
    display: flex;
    flex-direction: column;
    gap: 0.65rem;
    margin-top: 0.25rem;
}

@media (min-width: 480px) {
    .hero-ctas {
        flex-direction: row;
        flex-wrap: wrap;
        align-items: center;
    }
}

.hero-microcopy {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem 1.25rem;
    padding-top: 0.5rem;
    border-top: 1px solid var(--border);
    margin-top: 0.25rem;
}

.hero-microcopy span {
    display: flex;
    align-items: center;
    gap: 0.35rem;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--muted-foreground);
}

.hero-microcopy svg {
    width: 0.9rem;
    height: 0.9rem;
    color: var(--primary);
}

.trust-strip {
    background: var(--card);
    border-top: 1px solid var(--border);
    border-bottom: 1px solid var(--border);
    padding: 0.75rem 0;
}

.trust-strip__grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0.75rem;
    text-align: center;
}

@media (min-width: 640px) {
    .trust-strip__grid {
        grid-template-columns: repeat(4, 1fr);
    }
}

.trust-item {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.4rem;
}

.trust-item svg {
    width: 1rem;
    height: 1rem;
    color: var(--primary);
    flex-shrink: 0;
}

.trust-item__text {
    font-size: 0.8125rem;
    font-weight: 600;
    color: color-mix(in oklab, var(--foreground) 80%, transparent);
}

.product-spread {
    position: relative;
    padding: 1rem 0;
}

.journey {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    margin-top: 1.5rem;
    position: relative;
}

@media (min-width: 1024px) {
    .journey {
        flex-direction: row;
        justify-content: space-between;
        gap: 0;
    }
}

.journey-step {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 0.5rem;
    padding: 0.75rem 0.5rem;
    border-radius: var(--radius-xl);
    background: var(--card);
    border: 1px solid var(--border);
    transition: all 0.25s ease;
    flex: 1;
    min-width: 0;
    position: relative;
}

@media (min-width: 1024px) {
    .journey-step {
        background: transparent;
        border: none;
        padding: 0 0.25rem;
    }

    .journey-step:hover {
        transform: translateY(-4px);
    }
}

.journey-step__dot {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2.25rem;
    height: 2.25rem;
    border-radius: 999px;
    background: color-mix(in oklab, var(--step-color, var(--primary)) 18%, var(--card));
    color: var(--step-color, var(--primary));
    font-family: var(--font-display);
    font-size: 0.75rem;
    font-weight: 700;
    border: 2px solid color-mix(in oklab, var(--step-color, var(--primary)) 30%, transparent);
}

.journey-step:nth-child(1) {
    --step-color: var(--lavender-foreground);
}

.journey-step:nth-child(2) {
    --step-color: var(--sky-foreground);
}

.journey-step:nth-child(3) {
    --step-color: var(--mint-foreground);
}

.journey-step:nth-child(4) {
    --step-color: var(--peach-foreground);
}

.journey-step:nth-child(5) {
    --step-color: var(--sunshine-foreground);
}

.journey-step:nth-child(6) {
    --step-color: var(--primary);
}

.journey-step__age {
    font-family: var(--font-display);
    font-size: 0.875rem;
    font-weight: 600;
}

.journey-step__focus {
    font-size: 0.6875rem;
    line-height: 1.4;
    color: var(--muted-foreground);
    max-width: 12rem;
}

.journey-step__label {
    font-size: 0.625rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--step-color, var(--primary));
}

@media (min-width: 1024px) {
    .journey::before {
        content: '';
        position: absolute;
        top: 1.125rem;
        left: 8%;
        right: 8%;
        height: 2px;
        background: repeating-linear-gradient(90deg, var(--border) 0 8px, transparent 8px 16px);
        z-index: 0;
        pointer-events: none;
    }

    .journey-step {
        z-index: 1;
        background: var(--card);
        border: 1px solid var(--border);
        border-radius: var(--radius-xl);
        padding: 0.75rem 0.5rem;
    }
}

.activity-bar {
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
    margin-top: 1.5rem;
    max-width: 800px;
    margin-left: auto;
    margin-right: auto;
}

.activity-bar__segments {
    display: flex;
    height: 2.25rem;
    border-radius: 999px;
    overflow: hidden;
    background: var(--muted);
    border: 1px solid var(--border);
}

.activity-seg {
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.625rem;
    font-weight: 800;
    color: var(--foreground);
    transition: flex 0.2s ease;
    position: relative;
    min-width: 0;
}

.activity-seg:nth-child(1) {
    background: var(--lavender);
    flex: 15;
}

.activity-seg:nth-child(2) {
    background: var(--sky);
    flex: 16;
}

.activity-seg:nth-child(3) {
    background: var(--mint);
    flex: 17;
}

.activity-seg:nth-child(4) {
    background: var(--peach);
    flex: 17;
}

.activity-seg:nth-child(5) {
    background: var(--sunshine);
    flex: 17;
}

.activity-seg:nth-child(6) {
    background: var(--secondary);
    flex: 18;
}

.activity-bar__legend {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem 1rem;
    justify-content: center;
    font-size: 0.6875rem;
    font-weight: 600;
    color: var(--muted-foreground);
}

.activity-bar__legend span {
    display: flex;
    align-items: center;
    gap: 0.25rem;
}

.activity-bar__legend i {
    display: block;
    width: 0.65rem;
    height: 0.65rem;
    border-radius: 999px;
}

.filter-tabs {
    display: flex;
    flex-wrap: wrap;
    gap: 0.35rem;
    justify-content: center;
    margin: 1rem 0 0.75rem;
}

.filter-tab {
    padding: 0.45rem 1rem;
    border-radius: 999px;
    border: 1.5px solid var(--border);
    background: transparent;
    font-size: 0.75rem;
    font-weight: 700;
    color: var(--muted-foreground);
    transition: all 0.2s;
    min-height: 2.25rem;
}

.filter-tab.is-active {
    background: var(--primary);
    border-color: var(--primary);
    color: var(--primary-foreground);
}

.filter-tab:hover:not(.is-active) {
    border-color: color-mix(in oklab, var(--primary) 40%, var(--border));
    color: var(--foreground);
}

.preview-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0.75rem;
    margin-top: 0.5rem;
}

@media (min-width: 640px) {
    .preview-grid {
        grid-template-columns: repeat(3, 1fr);
        gap: 0.75rem;
    }
}

@media (min-width: 1024px) {
    .preview-grid {
        grid-template-columns: repeat(5, 1fr);
    }
}

.preview-card {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    border-radius: var(--radius-xl);
    background: var(--card);
    border: 1px solid var(--border);
    overflow: hidden;
    transition: all 0.3s ease;
    position: relative;
    cursor: pointer;
    text-align: left;
}

.preview-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 20px 40px -16px rgba(0, 0, 0, 0.15);
    border-color: color-mix(in oklab, var(--primary) 30%, var(--border));
}

.preview-card__img {
    aspect-ratio: 4 / 5;
    overflow: hidden;
    background: var(--muted);
    position: relative;
}

.preview-card__img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.5s ease;
}

.preview-card:hover .preview-card__img img {
    transform: scale(1.05);
}

.preview-card__body {
    padding: 0 0.75rem 0.75rem;
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
}

.preview-card__name {
    font-family: var(--font-display);
    font-size: 0.9375rem;
    font-weight: 600;
}

.preview-card__meta {
    display: flex;
    flex-wrap: wrap;
    gap: 0.3rem;
}

.preview-card__meta span {
    display: inline-flex;
    align-items: center;
    gap: 0.2rem;
    padding: 0.15rem 0.5rem;
    border-radius: 999px;
    background: var(--muted);
    color: var(--muted-foreground);
    font-size: 0.6875rem;
    font-weight: 600;
}

.preview-card__view {
    font-size: 0.6875rem;
    font-weight: 700;
    color: var(--primary);
    margin-top: 0.2rem;
}

.modal-overlay {
    position: fixed;
    inset: 0;
    z-index: 100;
    background: rgba(0, 0, 0, 0.5);
    display: none;
    align-items: center;
    justify-content: center;
    padding: 1rem;
    backdrop-filter: blur(4px);
}

.modal-overlay.is-open {
    display: flex;
}

.modal-box {
    background: var(--card);
    border-radius: var(--radius-2xl);
    max-width: 640px;
    width: 100%;
    max-height: 90vh;
    overflow-y: auto;
    padding: 1.25rem;
    position: relative;
    box-shadow: 0 40px 80px -20px rgba(0, 0, 0, 0.4);
    animation: fadeIn 0.25s ease;
}

@keyframes fadeIn {
    from {
        opacity: 0;
        transform: scale(0.97);
    }

    to {
        opacity: 1;
        transform: scale(1);
    }
}

.modal-image {
    margin: -0.25rem 0 1rem;
    border-radius: var(--radius-xl);
    overflow: hidden;
    background: var(--muted);
    aspect-ratio: 16 / 9;
}

.modal-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.modal-close {
    position: absolute;
    top: 0.75rem;
    right: 0.75rem;
    width: 2.25rem;
    height: 2.25rem;
    border-radius: 999px;
    background: var(--muted);
    border: none;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 2;
}

.modal-box h2 {
    font-family: var(--font-display);
    font-size: 1.5rem;
    font-weight: 600;
    margin-bottom: 0.4rem;
}

.modal-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 0.4rem;
    margin-bottom: 0.75rem;
}

.modal-meta span {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.25rem 0.75rem;
    border-radius: 999px;
    background: var(--muted);
    font-size: 0.6875rem;
    font-weight: 600;
}

.modal-section {
    margin-bottom: 0.6rem;
}

.modal-section h4 {
    font-size: 0.6875rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--primary);
    margin-bottom: 0.1rem;
}

.modal-section p {
    font-size: 0.9375rem;
    line-height: 1.55;
}

.modal-tip,
.modal-safety {
    padding: 0.6rem 0.85rem;
    border-radius: var(--radius-md);
    font-size: 0.8125rem;
    line-height: 1.5;
    display: flex;
    gap: 0.5rem;
    margin-top: 0.4rem;
}

.modal-tip {
    background: color-mix(in oklab, var(--mint) 35%, var(--card));
}

.modal-safety {
    background: color-mix(in oklab, var(--peach) 35%, var(--card));
}

.modal-tip svg,
.modal-safety svg {
    width: 1rem;
    height: 1rem;
    flex-shrink: 0;
    margin-top: 0.1rem;
}

.parent-solve {
    display: grid;
    grid-template-columns: 1fr;
    gap: 1rem;
    margin-top: 1.5rem;
    background: var(--mint);
    padding: 1.5rem 1.25rem;
    border-radius: var(--radius-3xl);
}

@media (min-width: 640px) {
    .parent-solve {
        grid-template-columns: 1fr 1fr;
        gap: 1.5rem;
        padding: 2rem;
    }
}

.parent-solve__col h3 {
    font-family: var(--font-display);
    font-size: 1.25rem;
    font-weight: 600;
    margin-bottom: 0.5rem;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.parent-solve__col ul {
    display: flex;
    flex-direction: column;
    gap: 0.4rem;
}

.parent-solve__col li {
    display: flex;
    align-items: flex-start;
    gap: 0.5rem;
    font-size: 0.875rem;
    line-height: 1.5;
}

.parent-solve__col li svg {
    width: 1rem;
    height: 1rem;
    flex-shrink: 0;
    margin-top: 0.15rem;
}

.core-kit {
    display: grid;
    grid-template-columns: 1fr;
    gap: 0.75rem;
    margin-top: 1.5rem;
}

@media (min-width: 640px) {
    .core-kit {
        grid-template-columns: repeat(3, 1fr);
        gap: 1rem;
    }
}

.core-card {
    background: var(--card);
    border: 1px solid var(--border);
    border-radius: var(--radius-2xl);
    padding: 1.25rem 1rem;
    display: flex;
    flex-direction: column;
    gap: 0.6rem;
    transition: all 0.25s ease;
}

.core-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 20px 40px -20px rgba(0, 0, 0, 0.15);
    border-color: color-mix(in oklab, var(--primary) 30%, var(--border));
}

.core-card__icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2.75rem;
    height: 2.75rem;
    border-radius: 1rem;
    background: var(--lavender);
    color: var(--lavender-foreground);
}

.core-card:nth-child(2) .core-card__icon {
    background: var(--sky);
    color: var(--sky-foreground);
}

.core-card:nth-child(3) .core-card__icon {
    background: var(--peach);
    color: var(--peach-foreground);
}

.core-card__icon svg {
    width: 1.25rem;
    height: 1.25rem;
}

.core-card h3 {
    font-family: var(--font-display);
    font-size: 1.125rem;
    font-weight: 600;
}

.core-card p {
    font-size: 0.875rem;
    color: var(--muted-foreground);
    line-height: 1.55;
}

.bonus-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0.5rem;
    margin-top: 1rem;
}

@media (min-width: 640px) {
    .bonus-grid {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media (min-width: 1024px) {
    .bonus-grid {
        grid-template-columns: repeat(4, 1fr);
    }
}

.bonus-item {
    display: flex;
    align-items: center;
    gap: 0.6rem;
    padding: 0.6rem 0.75rem;
    background: var(--card);
    border: 1px solid var(--border);
    border-radius: var(--radius-xl);
    font-size: 0.75rem;
    font-weight: 600;
}

.bonus-item svg {
    width: 1rem;
    height: 1rem;
    color: var(--primary);
    flex-shrink: 0;
}

.pdf-viewer {
    margin-top: 1.5rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.75rem;
}

.pdf-viewer__frame {
    position: relative;
    width: 100%;
    max-width: 500px;
    aspect-ratio: 1 / 1.4;
    background: #fffdf8;
    border-radius: var(--radius-xl);
    box-shadow: 0 30px 60px -20px rgba(0, 0, 0, 0.25);
    overflow: hidden;
    transition: box-shadow 0.3s ease;
}

.pdf-viewer__frame img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    transition: opacity 0.2s ease;
}

.pdf-viewer__controls {
    display: flex;
    align-items: center;
    gap: 1rem;
}

.pdf-viewer__controls button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.75rem;
    height: 2.75rem;
    border-radius: 999px;
    border: 1.5px solid var(--border);
    background: var(--card);
    transition: all 0.2s;
}

.pdf-viewer__controls button:hover {
    border-color: var(--primary);
    background: var(--primary);
    color: var(--primary-foreground);
}

.pdf-viewer__counter {
    font-size: 0.8125rem;
    font-weight: 600;
    min-width: 5rem;
    text-align: center;
}

.lang-showcase {
    display: grid;
    grid-template-columns: 1fr;
    gap: 0.75rem;
    margin-top: 1.5rem;
    max-width: 900px;
    margin-left: auto;
    margin-right: auto;
}

@media (min-width: 640px) {
    .lang-showcase {
        grid-template-columns: repeat(3, 1fr);
    }
}

.lang-card {
    background: var(--card);
    border: 2px solid var(--border);
    border-radius: var(--radius-xl);
    padding: 1rem;
    transition: all 0.25s ease;
}

.lang-card:hover,
.lang-card.is-highlight {
    border-color: var(--primary);
    box-shadow: 0 12px 32px -12px color-mix(in oklab, var(--primary) 30%, transparent);
    transform: translateY(-2px);
}

.lang-card__lang {
    font-size: 0.75rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: var(--muted-foreground);
}

.lang-card__title {
    font-family: var(--font-display);
    font-size: 1.125rem;
    font-weight: 600;
    margin: 0.3rem 0;
}

.lang-card__excerpt {
    font-size: 0.8125rem;
    line-height: 1.55;
    color: var(--muted-foreground);
}

.lang-card--hindi .lang-card__title,
.lang-card--hindi .lang-card__excerpt {
    font-family: var(--font-hindi);
}

.lang-card--gujarati .lang-card__title,
.lang-card--gujarati .lang-card__excerpt {
    font-family: var(--font-gujarati);
}

.use-way {
    display: grid;
    grid-template-columns: 1fr;
    gap: 1.5rem;
    margin-top: 1.5rem;
    align-items: center;
}

@media (min-width: 768px) {
    .use-way {
        grid-template-columns: 1fr 1fr;
        gap: 2rem;
    }
}

.use-way__visual {
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--card);
    border-radius: var(--radius-3xl);
    border: 1px solid var(--border);
    padding: 1.5rem;
    min-height: 240px;
    position: relative;
}

.use-way__visual img {
    max-height: 200px;
    width: auto;
}

.use-way__list {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.use-way__item {
    display: flex;
    gap: 0.75rem;
}

.use-way__item svg {
    width: 1.25rem;
    height: 1.25rem;
    color: var(--primary);
    flex-shrink: 0;
    margin-top: 0.15rem;
}

.use-way__item h4 {
    font-family: var(--font-display);
    font-size: 1rem;
    font-weight: 600;
}

.use-way__item p {
    font-size: 0.8125rem;
    color: var(--muted-foreground);
    line-height: 1.55;
}

.how-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 0.75rem;
    margin-top: 1.5rem;
}

@media (min-width: 640px) {
    .how-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 1rem;
    }
}

@media (min-width: 1024px) {
    .how-grid {
        grid-template-columns: repeat(4, 1fr);
    }
}

.how-step {
    display: flex;
    flex-direction: column;
    gap: 0.6rem;
    padding: 1.25rem 1rem;
    border-radius: var(--radius-2xl);
    background: var(--card);
    border: 1px solid var(--border);
    position: relative;
    transition: transform 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
}

.how-step:hover {
    transform: translateY(-4px);
    border-color: color-mix(in oklab, var(--primary) 30%, var(--border));
    box-shadow: 0 20px 40px -20px rgba(0, 0, 0, 0.15);
}

.how-step__num {
    font-family: var(--font-display);
    font-size: 1.75rem;
    font-weight: 600;
    color: var(--primary);
    line-height: 1;
}

.how-step__icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2.5rem;
    height: 2.5rem;
    border-radius: 0.85rem;
    background: color-mix(in oklab, var(--primary) 12%, var(--card));
    color: var(--primary);
}

.how-step__icon svg {
    width: 1.15rem;
    height: 1.15rem;
}

.how-step h3 {
    font-family: var(--font-display);
    font-size: 1.125rem;
    font-weight: 600;
}

.how-step p {
    font-size: 0.8125rem;
    color: var(--muted-foreground);
    line-height: 1.55;
}

.safety-card {
    margin-top: 1.5rem;
    border-radius: var(--radius-3xl);
    background: linear-gradient(135deg, color-mix(in oklab, var(--peach) 40%, var(--card)) 0%, var(--card) 100%);
    border: 1px solid var(--border);
    padding: 1.5rem 1.25rem;
    position: relative;
    overflow: hidden;
}

@media (min-width: 768px) {
    .safety-card {
        padding: 2rem;
    }
}

.safety-card__head {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    margin-bottom: 0.75rem;
}

.safety-card__icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2.5rem;
    height: 2.5rem;
    border-radius: 0.85rem;
    background: var(--peach);
    color: var(--peach-foreground);
    flex-shrink: 0;
}

.safety-card__icon svg {
    width: 1.15rem;
    height: 1.15rem;
}

.safety-card h2 {
    font-family: var(--font-display);
    font-size: 1.5rem;
    font-weight: 600;
}

@media (min-width: 640px) {
    .safety-card h2 {
        font-size: 1.875rem;
    }
}

.safety-card>p {
    font-size: 0.9375rem;
    line-height: 1.6;
    color: var(--foreground);
    margin-bottom: 1rem;
    max-width: 44rem;
}

.safety-list {
    display: grid;
    grid-template-columns: 1fr;
    gap: 0.5rem;
    margin-bottom: 1.25rem;
}

@media (min-width: 640px) {
    .safety-list {
        grid-template-columns: 1fr 1fr;
        gap: 0.5rem 1.25rem;
    }
}

.safety-list li {
    display: flex;
    align-items: flex-start;
    gap: 0.6rem;
    font-size: 0.875rem;
    line-height: 1.5;
    color: var(--foreground);
}

.safety-list i {
    width: 1rem;
    height: 1rem;
    color: var(--peach-foreground);
    flex-shrink: 0;
    margin-top: 0.2rem;
}

.safety-disclaimer {
    padding: 0.75rem 1rem;
    border-radius: var(--radius-lg);
    background: var(--card);
    border: 1px solid var(--border);
    font-size: 0.8125rem;
    line-height: 1.55;
    color: var(--muted-foreground);
    font-style: italic;
}

.pricing-card {
    margin-top: 1.5rem;
    border-radius: var(--radius-3xl);
    background: linear-gradient(135deg, var(--navy) 0%, oklch(0.28 0.08 275) 100%);
    color: var(--navy-foreground);
    overflow: hidden;
    box-shadow: 0 30px 60px -20px rgba(0, 0, 0, 0.3);
    position: relative;
    padding: 1.25rem;
}

@media (min-width: 768px) {
    .pricing-card {
        padding: 1.75rem;
    }
}

.pricing-card::before {
    content: '';
    position: absolute;
    inset: 0;
    background:
        radial-gradient(circle at 80% 20%, color-mix(in oklab, var(--primary) 25%, transparent), transparent 50%),
        radial-gradient(circle at 20% 80%, color-mix(in oklab, var(--sunshine) 15%, transparent), transparent 50%);
    pointer-events: none;
}

.pricing-card__inner {
    position: relative;
    display: grid;
    grid-template-columns: 1fr;
    gap: 1.5rem;
    align-items: center;
}

@media (min-width: 768px) {
    .pricing-card__inner {
        grid-template-columns: 1fr 1.15fr;
        gap: 2rem;
    }
}

.pricing-card__media {
    display: flex;
    align-items: center;
    justify-content: center;
    aspect-ratio: 4 / 3;
    border-radius: var(--radius-2xl);
    overflow: hidden;
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.08) 0%, rgba(255, 255, 255, 0.02) 100%);
    border: 1px solid rgba(255, 255, 255, 0.1);
    padding: 1rem;
    position: relative;
}

.pricing-card__media img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    filter: drop-shadow(0 30px 50px rgba(0, 0, 0, 0.5));
    position: relative;
    z-index: 1;
}

.pricing-card__media::before {
    content: '';
    position: absolute;
    inset: 15%;
    border-radius: 50%;
    background: radial-gradient(circle, color-mix(in oklab, var(--sunshine) 30%, transparent), transparent 70%);
    filter: blur(30px);
}

.pricing-card__content {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.pricing-card__content h2 {
    font-family: var(--font-display);
    font-weight: 600;
    font-size: 1.5rem;
    line-height: 1.15;
    letter-spacing: -0.01em;
}

@media (min-width: 640px) {
    .pricing-card__content h2 {
        font-size: 1.875rem;
    }
}

.pricing-card__features {
    display: grid;
    grid-template-columns: 1fr;
    gap: 0.4rem;
}

@media (min-width: 480px) {
    .pricing-card__features {
        grid-template-columns: 1fr 1fr;
    }
}

.pricing-card__features li {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.8125rem;
    font-weight: 500;
    color: color-mix(in oklab, var(--navy-foreground) 90%, transparent);
}

.pricing-card__features svg {
    width: 1rem;
    height: 1rem;
    color: var(--sunshine);
    flex-shrink: 0;
}

.pricing-card .lang-picker__label {
    color: color-mix(in oklab, var(--navy-foreground) 65%, transparent);
}

.pricing-card .lang-picker__label svg {
    color: var(--sunshine);
}

.pricing-card .lang-options {
    background: rgba(255, 255, 255, 0.08);
    border-color: rgba(255, 255, 255, 0.15);
}

.pricing-card .lang-option {
    color: color-mix(in oklab, var(--navy-foreground) 70%, transparent);
}

.pricing-card .lang-option:hover {
    color: var(--navy-foreground);
}

.pricing-card .lang-option.is-active {
    background: var(--sunshine);
    color: var(--sunshine-foreground);
    box-shadow: 0 4px 12px -2px rgba(0, 0, 0, 0.3);
}

.pricing-card .lang-note {
    color: color-mix(in oklab, var(--navy-foreground) 65%, transparent);
}

.pricing-card__price-row {
    display: flex;
    align-items: baseline;
    gap: 0.6rem;
    flex-wrap: wrap;
    margin-top: 0.25rem;
}

.pricing-card__price {
    font-family: var(--font-display);
    font-size: 2.25rem;
    font-weight: 600;
    color: var(--sunshine);
    letter-spacing: -0.02em;
    line-height: 1;
}

@media (min-width: 640px) {
    .pricing-card__price {
        font-size: 2.5rem;
    }
}

.pricing-card__microcopy {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem 1rem;
    font-size: 0.75rem;
    color: color-mix(in oklab, var(--navy-foreground) 70%, transparent);
    margin-top: 0.25rem;
}

.pricing-card__microcopy span {
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
}

.pricing-card__microcopy svg {
    width: 0.8rem;
    height: 0.8rem;
}

.gift-note {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    background: var(--card);
    border: 1px solid var(--border);
    border-radius: var(--radius-xl);
    padding: 0.75rem 1rem;
    margin-top: 0.75rem;
    font-size: 0.875rem;
}

.faq-group {
    margin-top: 1.25rem;
}

.faq-group__title {
    font-family: var(--font-display);
    font-size: 1.125rem;
    font-weight: 600;
    margin-bottom: 0.4rem;
    color: var(--primary);
}

.accordion {
    display: flex;
    flex-direction: column;
    gap: 0.4rem;
}

.accordion-item {
    border: 1px solid var(--border);
    border-radius: var(--radius-xl);
    background: var(--card);
    overflow: hidden;
    transition: all 0.2s ease;
}

.accordion-item:hover {
    border-color: color-mix(in oklab, var(--primary) 25%, var(--border));
}

.accordion-item.is-open {
    border-color: color-mix(in oklab, var(--primary) 40%, var(--border));
    box-shadow: 0 8px 24px -8px color-mix(in oklab, var(--primary) 20%, transparent);
}

.accordion-trigger {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    background: none;
    border: none;
    text-align: left;
    padding: 0.85rem 1rem;
    font-family: var(--font-display);
    font-size: 0.9375rem;
    font-weight: 600;
    color: var(--foreground);
    min-height: 44px;
}

.accordion-trigger svg {
    width: 1.05rem;
    height: 1.05rem;
    color: var(--primary);
    flex-shrink: 0;
    transition: transform 0.25s ease;
}

.accordion-item.is-open .accordion-trigger i {
    transform: rotate(180deg);
}

.accordion-content {
    display: none;
    padding: 0 1rem 1rem;
    color: var(--muted-foreground);
    line-height: 1.6;
    font-size: 0.875rem;
}

.accordion-item.is-open .accordion-content {
    display: block;
    animation: fadeIn 0.25s ease;
}

.final-cta {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
    text-align: center;
    border-radius: var(--radius-3xl);
    background:
        radial-gradient(ellipse 70% 60% at 50% 0%, color-mix(in oklab, var(--lavender) 60%, transparent), transparent 60%),
        var(--secondary);
    padding: 2rem 1.25rem;
    position: relative;
    overflow: hidden;
}

@media (min-width: 768px) {
    .final-cta {
        padding: 2.5rem;
    }
}

.final-cta__media {
    width: 8rem;
    position: relative;
    z-index: 1;
}

.final-cta__media img {
    width: 100%;
    filter: drop-shadow(0 24px 40px rgba(0, 0, 0, 0.22));
}

.final-cta h2 {
    font-family: var(--font-display);
    font-size: 1.625rem;
    font-weight: 600;
    letter-spacing: -0.01em;
    position: relative;
    z-index: 1;
}

@media (min-width: 640px) {
    .final-cta h2 {
        font-size: 2.125rem;
    }
}

.final-cta>p {
    max-width: 30rem;
    color: var(--muted-foreground);
    font-size: 1rem;
    position: relative;
    z-index: 1;
}

.final-cta__chips {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    justify-content: center;
    position: relative;
    z-index: 1;
}

.final-cta__price {
    font-family: var(--font-display);
    font-size: 2.5rem;
    font-weight: 600;
    color: var(--primary);
    letter-spacing: -0.02em;
    line-height: 1;
    position: relative;
    z-index: 1;
}

.final-cta__actions {
    display: flex;
    flex-direction: column;
    gap: 0.65rem;
    position: relative;
    z-index: 1;
    width: 100%;
}

@media (min-width: 480px) {
    .final-cta__actions {
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: center;
    }
}

.site-footer {
    border-top: 1px solid var(--border);
    background: var(--card);
}

.footer-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 1.5rem;
    padding: 1.5rem 0;
}

@media (min-width: 640px) {
    .footer-grid {
        grid-template-columns: 1fr 1fr;
    }
}

@media (min-width: 768px) {
    .footer-grid {
        grid-template-columns: 2fr 1fr 1fr 1fr;
    }
}

.footer-col {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.footer-col p {
    max-width: 18rem;
    font-size: 0.8125rem;
    line-height: 1.55;
    color: var(--muted-foreground);
}

.footer-social {
    display: flex;
    align-items: center;
    gap: 0.6rem;
    color: var(--muted-foreground);
}

.footer-social svg {
    width: 1.05rem;
    height: 1.05rem;
}

.footer-social a:hover {
    color: var(--foreground);
}

.footer-col h3 {
    font-family: var(--font-display);
    font-size: 0.8125rem;
    font-weight: 600;
}

.footer-col a,
.footer-col span {
    font-size: 0.8125rem;
    color: var(--muted-foreground);
    transition: color 0.15s;
}

.footer-col a:hover {
    color: var(--foreground);
}

.footer-col .muted-static {
    color: color-mix(in oklab, var(--muted-foreground) 65%, transparent);
}

.footer-divider {
    height: 1px;
    background: var(--border);
    margin: 1rem 0;
}

.footer-bottom {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.5rem;
    padding-bottom: 5rem;
    text-align: center;
}

@media (min-width: 640px) {
    .footer-bottom {
        flex-direction: row;
        justify-content: space-between;
        padding-bottom: 1.5rem;
    }
}

.footer-bottom p {
    font-size: 0.6875rem;
    color: var(--muted-foreground);
}

.footer-secure {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    font-size: 0.6875rem;
    color: var(--muted-foreground);
    font-weight: 500;
}

.footer-secure svg {
    width: 0.9rem;
    height: 0.9rem;
    color: var(--success);
}

.sticky-cta {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 45;
    background: var(--card);
    border-top: 1px solid var(--border);
    padding: 0.5rem 0.75rem;
    display: flex;
    align-items: center;
    gap: 0.5rem;
    box-shadow: 0 -8px 24px -8px rgba(0, 0, 0, 0.12);
    transform: translateY(100%);
    transition: transform 0.3s ease;
}

.sticky-cta.is-visible {
    transform: translateY(0);
}

.sticky-cta__info {
    display: flex;
    flex-direction: column;
    gap: 0.05rem;
    flex: 1;
    min-width: 0;
}

.sticky-cta__title {
    font-size: 0.625rem;
    font-weight: 700;
    color: var(--muted-foreground);
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.sticky-cta__price {
    font-family: var(--font-display);
    font-size: 1.0625rem;
    font-weight: 600;
    display: flex;
    align-items: baseline;
    gap: 0.35rem;
}

@media (min-width: 640px) {
    .sticky-cta {
        display: none;
    }
}

.float-card {
    position: fixed;
    bottom: 1rem;
    right: 1rem;
    z-index: 45;
    width: 16rem;
    background: var(--card);
    border: 1.5px solid var(--border);
    border-radius: var(--radius-xl);
    padding: 0.85rem;
    box-shadow: 0 24px 48px -16px rgba(0, 0, 0, 0.22);
    opacity: 0;
    transform: translateY(20px);
    pointer-events: none;
    transition: all 0.35s ease;
    display: none;
}

@media (min-width: 1024px) {
    .float-card {
        display: block;
    }

    .float-card.is-visible {
        opacity: 1;
        transform: translateY(0);
        pointer-events: auto;
    }
}

.float-card__title {
    font-family: var(--font-display);
    font-size: 0.9375rem;
    font-weight: 600;
    margin-bottom: 0.3rem;
    line-height: 1.3;
}

.float-card__price {
    font-family: var(--font-display);
    font-size: 1.375rem;
    font-weight: 600;
    margin-bottom: 0.6rem;
}

.float-card .lang-picker {
    margin-bottom: 0.6rem;
    gap: 0.3rem;
}

.float-card .lang-options {
    width: 100%;
    display: flex;
}

.float-card .lang-option {
    flex: 1;
    justify-content: center;
    padding: 0.4rem 0.35rem;
    font-size: 0.6875rem;
}

.float-card .lang-option[data-lang="hi"] {
    font-size: 0.75rem;
}

.float-card .lang-option[data-lang="gu"] {
    font-size: 0.75rem;
}

#toast-host {
    position: fixed;
    bottom: 4.5rem;
    left: 50%;
    transform: translateX(-50%);
    z-index: 100;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.5rem;
    pointer-events: none;
}

@media (min-width: 640px) {
    #toast-host {
        bottom: 1.25rem;
    }
}

.toast {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    background: var(--foreground);
    color: var(--background);
    font-size: 0.8125rem;
    font-weight: 600;
    padding: 0.6rem 1rem;
    border-radius: 999px;
    box-shadow: 0 12px 32px rgba(0, 0, 0, 0.25);
    transition: opacity 0.25s ease, transform 0.25s ease;
}

.toast svg {
    width: 1rem;
    height: 1rem;
    color: var(--success);
}

.toast.is-leaving {
    opacity: 0;
    transform: translateY(6px);
}

.text-center {
    text-align: center;
}

/* Spread Paper Slider */
/* ============================================================
       Product spread — SWIPEABLE version
       ============================================================ */
.product-spread {
    position: relative;
    padding: 1rem 0;
    overflow: hidden;
}

.product-spread .section-intro {
    max-width: 40rem;
    margin: 0 auto;
    text-align: center;
}

.product-spread .section-heading {
    text-align: center;
    font-family: var(--font-display);
    font-weight: 600;
    font-size: 1.625rem;
    color: var(--foreground);
    letter-spacing: -0.01em;
    line-height: 1.2;
}

@media (min-width: 640px) {
    .product-spread .section-heading {
        font-size: 2.125rem;
    }
}

.product-spread .section-subhead {
    margin-top: 0.5rem;
    color: var(--muted-foreground);
    font-size: 0.9375rem;
    text-align: center;
    max-width: 38rem;
    margin-left: auto;
    margin-right: auto;
    line-height: 1.55;
}

/* Swipeable stack */
.spread-swiper {
    position: relative;
    margin: 1rem auto 0.75rem;
    max-width: 860px;
    padding: 0 0.5rem;
}

.spread-swiper__viewport {
    position: relative;
    overflow-x: auto;
    overflow-y: hidden;
    scroll-snap-type: x mandatory;
    scroll-behavior: smooth;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    cursor: grab;
    padding: 1.5rem 0 1rem;
    -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 6%, #000 94%, transparent 100%);
    mask-image: linear-gradient(90deg, transparent 0, #000 6%, #000 94%, transparent 100%);
}

.spread-swiper__viewport::-webkit-scrollbar {
    display: none;
}

.spread-swiper__viewport.is-dragging {
    cursor: grabbing;
    scroll-behavior: auto;
}

.spread-swiper__track {
    display: flex;
    gap: 0.75rem;
    padding: 0 45%;
    min-height: 300px;
    align-items: center;
}

@media (min-width: 700px) {
    .spread-swiper__track {
        padding: 0 42%;
    }
}

.spread-slide {
    flex: 0 0 auto;
    width: 160px;
    height: 213px;
    border-radius: 0.6rem;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
    background: #fffdf8;
    overflow: hidden;
    scroll-snap-align: center;
    transition: transform 0.35s ease, box-shadow 0.35s ease;
    transform-origin: center center;
}

.spread-slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    pointer-events: none;
    -webkit-user-drag: none;
    user-select: none;
}

.spread-slide.is-active {
    transform: scale(1.06);
    box-shadow: 0 18px 40px -12px rgba(0, 0, 0, 0.22);
    z-index: 2;
}

@media (min-width: 700px) {
    .spread-slide {
        width: 190px;
        height: 253px;
    }
}

.spread-slide:nth-child(odd) {
    transform: rotate(-1.5deg);
}

.spread-slide:nth-child(even) {
    transform: rotate(1.5deg);
}

.spread-slide.is-active {
    transform: scale(1.06) rotate(0deg);
}

/* Swiper controls */
.spread-swiper__controls {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.75rem;
    margin-top: 0.5rem;
}

.spread-swiper__btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.5rem;
    height: 2.5rem;
    border-radius: 999px;
    border: 1.5px solid var(--border);
    background: var(--card);
    color: var(--foreground);
    transition: all 0.2s ease;
    flex-shrink: 0;
}

.spread-swiper__btn:hover:not(:disabled) {
    border-color: var(--primary);
    background: var(--primary);
    color: var(--primary-foreground);
}

.spread-swiper__btn:disabled {
    opacity: 0.35;
    cursor: not-allowed;
}

.spread-swiper__btn svg {
    width: 1.05rem;
    height: 1.05rem;
}

.spread-swiper__dots {
    display: flex;
    align-items: center;
    gap: 0.35rem;
}

.spread-swiper__dot {
    width: 0.45rem;
    height: 0.45rem;
    border-radius: 999px;
    background: color-mix(in oklab, var(--foreground) 20%, transparent);
    border: none;
    padding: 0;
    transition: all 0.25s ease;
}

.spread-swiper__dot.is-active {
    width: 1.25rem;
    background: var(--primary);
}

.spread-stats {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 1rem 2rem;
    margin: 1rem 0 0.5rem;
}

.spread-stat {
    text-align: center;
}

.spread-stat__num {
    font-family: var(--font-display);
    font-size: 2rem;
    font-weight: 600;
    color: var(--primary);
    line-height: 1;
}

.spread-stat__label {
    font-size: 0.75rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: var(--muted-foreground);
}

/* End Spred Paper Slider */
