    :root {
        --pv-green-950: #062417;
        --pv-green-900: #0A3622;
        --pv-green-800: #0F5132;
        --pv-green-700: #176B43;
        --pv-green-600: #1F8A4C;
        --pv-green-500: #28A85D;
        --pv-lime-500: #B8E85A;
        --pv-lime-300: #DAF89A;
        --pv-ice: #EAF7F3;
        --pv-cream: #F6F1E6;
        --pv-sand: #E9DEC9;
        --pv-ink: #101713;
        --pv-muted: #68766E;
        --pv-white: #FFFFFF;
        --pv-line: rgba(10, 54, 34, 0.12);
        --pv-shadow-soft: 0 18px 60px rgba(6, 36, 23, 0.12);
        --pv-shadow-strong: 0 34px 100px rgba(6, 36, 23, 0.28);
        --pv-radius-xl: 42px;
        --pv-radius-lg: 30px;
        --pv-radius-md: 20px;
        --pv-container: 1220px;
    }

    html {
        scroll-behavior: smooth;
    }

    body {
        background: var(--pv-cream);
    }

    .pv-home {
        position: relative;
        overflow: hidden;
        color: var(--pv-ink);
        font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
        background:
            radial-gradient(circle at 12% 6%, rgba(184, 232, 90, 0.28), transparent 28%),
            radial-gradient(circle at 86% 2%, rgba(31, 138, 76, 0.18), transparent 31%),
            linear-gradient(180deg, #FCFAF4 0%, #FFFFFF 42%, #F6F1E6 100%);
    }

    .pv-home * {
        box-sizing: border-box;
    }

    .pv-container {
        width: min(var(--pv-container), calc(100% - 38px));
        margin-inline: auto;
    }

    .pv-section {
        position: relative;
        padding: 96px 0;
    }

    .pv-noise {
        position: absolute;
        inset: 0;
        opacity: .08;
        pointer-events: none;
        background-image:
            linear-gradient(rgba(6,36,23,.16) 1px, transparent 1px),
            linear-gradient(90deg, rgba(6,36,23,.12) 1px, transparent 1px);
        background-size: 64px 64px;
        mask-image: radial-gradient(circle at 50% 20%, black, transparent 75%);
    }

    .pv-topbar {
        position: sticky;
        top: 0;
        z-index: 999;
        backdrop-filter: blur(20px);
        background: rgba(246, 241, 230, .76);
        border-bottom: 1px solid rgba(10, 54, 34, .08);
    }

    .pv-nav {
        display: flex;
        align-items: center;
        justify-content: space-between;
        min-height: 78px;
        gap: 22px;
    }

    .pv-brand {
        display: inline-flex;
        align-items: center;
        gap: 12px;
        color: var(--pv-green-950);
        text-decoration: none;
        font-weight: 950;
        letter-spacing: -0.03em;
    }

    .pv-brand img {
        width: 46px;
        height: 46px;
        object-fit: contain;
        border-radius: 14px;
    }

    .pv-brand span {
        font-size: 20px;
    }

    .pv-menu {
        display: flex;
        align-items: center;
        gap: 8px;
    }

    .pv-menu a {
        display: inline-flex;
        align-items: center;
        min-height: 42px;
        padding: 0 14px;
        color: var(--pv-green-900);
        text-decoration: none;
        font-size: 14px;
        font-weight: 850;
        border-radius: 999px;
        transition: background .2s ease, transform .2s ease;
    }

    .pv-menu a:hover {
        background: rgba(31, 138, 76, .10);
        transform: translateY(-1px);
        text-decoration: none;
    }

    .pv-nav-actions {
        display: flex;
        align-items: center;
        gap: 10px;
    }

    .pv-lang {
        display: inline-flex;
        align-items: center;
        padding: 4px;
        border-radius: 999px;
        background: rgba(255,255,255,.68);
        border: 1px solid var(--pv-line);
        box-shadow: 0 8px 25px rgba(6,36,23,.08);
    }

    .pv-lang button {
        min-width: 44px;
        height: 34px;
        border: 0;
        border-radius: 999px;
        background: transparent;
        color: var(--pv-green-900);
        font-weight: 950;
        cursor: pointer;
        transition: background .2s ease, color .2s ease;
    }

    .pv-lang button.is-active {
        color: var(--pv-white);
        background: var(--pv-green-800);
    }

    .pv-btn {
        position: relative;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 10px;
        min-height: 54px;
        padding: 15px 22px;
        border: 0;
        border-radius: 999px;
        text-decoration: none;
        font-weight: 950;
        line-height: 1;
        cursor: pointer;
        overflow: hidden;
        transition: transform .22s ease, box-shadow .22s ease, background .22s ease;
    }

    .pv-btn:hover {
        transform: translateY(-2px);
        text-decoration: none;
    }

    .pv-btn-primary {
        color: var(--pv-white);
        background: linear-gradient(135deg, var(--pv-green-600), var(--pv-green-950));
        box-shadow: 0 18px 42px rgba(31, 138, 76, .32);
    }

    .pv-btn-primary::after {
        content: "";
        position: absolute;
        inset: -120% -40%;
        background: linear-gradient(110deg, transparent 35%, rgba(255,255,255,.32), transparent 65%);
        transform: translateX(-60%);
        animation: pvShine 5s ease-in-out infinite;
    }

    .pv-btn-secondary {
        color: var(--pv-green-950);
        background: rgba(255,255,255,.86);
        border: 1px solid var(--pv-line);
        box-shadow: var(--pv-shadow-soft);
    }

    .pv-btn span {
        position: relative;
        z-index: 1;
    }

    .pv-mobile-menu {
        display: none;
    }

    .pv-eyebrow {
        display: inline-flex;
        align-items: center;
        gap: 9px;
        padding: 9px 15px;
        border-radius: 999px;
        color: var(--pv-green-950);
        background: rgba(31, 138, 76, .10);
        border: 1px solid rgba(31, 138, 76, .12);
        font-size: 12px;
        font-weight: 950;
        letter-spacing: .10em;
        text-transform: uppercase;
    }

    .pv-eyebrow::before {
        content: "";
        width: 9px;
        height: 9px;
        border-radius: 50%;
        background: var(--pv-lime-500);
        box-shadow: 0 0 0 7px rgba(184,232,90,.25);
    }

    .pv-title {
        margin: 18px 0 18px;
        color: var(--pv-green-950);
        font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
        font-size: clamp(40px, 7vw, 94px);
        line-height: .89;
        letter-spacing: -0.075em;
        font-weight: 1000;
        text-wrap: balance;
    }

    .pv-title span {
        color: transparent;
        background: linear-gradient(110deg, var(--pv-green-700), var(--pv-green-500), #77B540);
        -webkit-background-clip: text;
        background-clip: text;
    }

    .pv-subtitle {
        max-width: 760px;
        margin: 0;
        color: var(--pv-muted);
        font-size: clamp(18px, 2vw, 22px);
        line-height: 1.58;
        text-wrap: pretty;
    }

    .pv-hero {
        position: relative;
        min-height: 850px;
        display: grid;
        align-items: center;
        padding: 74px 0 94px;
    }

    .pv-hero-grid {
        position: relative;
        z-index: 2;
        display: grid;
        grid-template-columns: 1.05fr .95fr;
        gap: 58px;
        align-items: center;
    }

    .pv-hero-copy {
        transform: translateY(0);
    }

    .pv-hero-actions {
        display: flex;
        flex-wrap: wrap;
        gap: 14px;
        margin-top: 34px;
    }

    .pv-proof-row {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 14px;
        margin-top: 38px;
    }

    .pv-proof {
        padding: 18px;
        border-radius: 24px;
        background: rgba(255,255,255,.74);
        border: 1px solid rgba(10,54,34,.08);
        box-shadow: 0 18px 45px rgba(6,36,23,.09);
    }

    .pv-proof strong {
        display: block;
        color: var(--pv-green-950);
        font-size: clamp(24px, 3vw, 34px);
        line-height: 1;
        letter-spacing: -0.05em;
    }

    .pv-proof span {
        display: block;
        margin-top: 7px;
        color: var(--pv-muted);
        font-size: 12px;
        line-height: 1.35;
        font-weight: 850;
    }

    .pv-visual-stage {
        position: relative;
        min-height: 640px;
        perspective: 1000px;
    }

    .pv-orbit-card {
        position: absolute;
        inset: 0;
        border-radius: 56px;
        background:
            radial-gradient(circle at 20% 10%, rgba(218, 248, 154, .56), transparent 30%),
            radial-gradient(circle at 90% 20%, rgba(255,255,255,.22), transparent 28%),
            linear-gradient(145deg, var(--pv-green-950), var(--pv-green-700));
        box-shadow: var(--pv-shadow-strong);
        overflow: hidden;
        transform-style: preserve-3d;
    }

    .pv-orbit-card::before {
        content: "";
        position: absolute;
        inset: 24px;
        border: 1px solid rgba(255,255,255,.20);
        border-radius: 42px;
        pointer-events: none;
    }

    .pv-orbit-card::after {
        content: "";
        position: absolute;
        width: 520px;
        height: 520px;
        border-radius: 999px;
        left: 50%;
        top: 50%;
        transform: translate(-50%, -50%);
        border: 1px solid rgba(255,255,255,.16);
        box-shadow:
            0 0 0 68px rgba(255,255,255,.045),
            0 0 0 138px rgba(255,255,255,.025);
        animation: pvPulseRing 5s ease-in-out infinite;
    }

    .pv-product {
        position: absolute;
        z-index: 3;
        left: 50%;
        top: 50%;
        width: min(75%, 405px);
        min-height: 500px;
        transform: translate(-50%, -50%) rotate(-4deg);
        border-radius: 38px;
        background:
            linear-gradient(180deg, rgba(255,255,255,.98), rgba(234,247,243,.98));
        box-shadow: 0 36px 100px rgba(0,0,0,.26);
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        padding: 34px;
        text-align: center;
        animation: pvFloat 5.2s ease-in-out infinite;
    }

    .pv-product img {
        max-width: 76%;
        height: auto;
        margin-bottom: 28px;
        filter: drop-shadow(0 16px 28px rgba(6,36,23,.14));
    }

    .pv-product h3 {
        margin: 0;
        color: var(--pv-green-950);
        font-size: 40px;
        line-height: .95;
        letter-spacing: -0.055em;
        font-weight: 1000;
    }

    .pv-product p {
        margin: 10px 0 0;
        color: var(--pv-muted);
        font-weight: 850;
    }

    .pv-floating-chip {
        position: absolute;
        z-index: 4;
        width: min(220px, 46%);
        padding: 16px 17px;
        border-radius: 24px;
        background: rgba(255,255,255,.88);
        border: 1px solid rgba(255,255,255,.72);
        color: var(--pv-green-950);
        box-shadow: 0 24px 60px rgba(0,0,0,.19);
        backdrop-filter: blur(16px);
    }

    .pv-floating-chip strong {
        display: block;
        font-size: 30px;
        line-height: 1;
        letter-spacing: -0.05em;
        color: var(--pv-green-700);
    }

    .pv-floating-chip span {
        display: block;
        margin-top: 6px;
        font-size: 12px;
        line-height: 1.35;
        color: var(--pv-green-900);
        font-weight: 850;
    }

    .pv-floating-chip.one {
        top: 42px;
        right: -8px;
        animation: pvFloat 6.3s ease-in-out infinite;
    }

    .pv-floating-chip.two {
        left: -20px;
        bottom: 54px;
        animation: pvFloat 5.7s ease-in-out infinite reverse;
    }

    .pv-floating-chip.three {
        right: 30px;
        bottom: 32px;
        animation: pvFloat 6.8s ease-in-out infinite;
    }

    .pv-section-head {
        display: grid;
        grid-template-columns: .88fr 1.12fr;
        gap: 44px;
        align-items: end;
        margin-bottom: 40px;
    }

    .pv-section-title {
        margin: 16px 0 0;
        color: var(--pv-green-950);
        font-size: clamp(34px, 5vw, 66px);
        line-height: .95;
        letter-spacing: -0.062em;
        font-weight: 1000;
        text-wrap: balance;
    }

    .pv-section-copy {
        margin: 0;
        color: var(--pv-muted);
        font-size: 18px;
        line-height: 1.7;
    }

    .pv-benefits {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 22px;
    }

    .pv-benefit {
        position: relative;
        min-height: 330px;
        padding: 30px;
        border-radius: var(--pv-radius-xl);
        background: rgba(255,255,255,.82);
        border: 1px solid rgba(10,54,34,.08);
        box-shadow: var(--pv-shadow-soft);
        overflow: hidden;
        transition: transform .25s ease, box-shadow .25s ease;
    }

    .pv-benefit:hover {
        transform: translateY(-8px);
        box-shadow: 0 28px 80px rgba(6,36,23,.16);
    }

    .pv-benefit::after {
        content: "";
        position: absolute;
        width: 180px;
        height: 180px;
        right: -70px;
        bottom: -70px;
        border-radius: 50%;
        background: rgba(184,232,90,.23);
    }

    .pv-benefit-icon {
        width: 62px;
        height: 62px;
        display: grid;
        place-items: center;
        border-radius: 22px;
        background: linear-gradient(135deg, var(--pv-ice), #FFFFFF);
        color: var(--pv-green-700);
        font-size: 30px;
        box-shadow: 0 14px 30px rgba(6,36,23,.08);
        margin-bottom: 24px;
    }

    .pv-benefit h3 {
        position: relative;
        z-index: 1;
        margin: 0 0 13px;
        color: var(--pv-green-950);
        font-size: 25px;
        line-height: 1.05;
        letter-spacing: -0.035em;
        font-weight: 950;
    }

    .pv-benefit p {
        position: relative;
        z-index: 1;
        margin: 0;
        color: var(--pv-muted);
        line-height: 1.68;
    }

    .pv-calculator-section {
        background:
            linear-gradient(180deg, transparent 0%, rgba(234,247,243,.84) 18%, rgba(234,247,243,.84) 82%, transparent 100%);
    }

    .pv-calc-shell {
        display: grid;
        grid-template-columns: .92fr 1.08fr;
        gap: 28px;
        align-items: stretch;
    }

    .pv-dark-panel,
    .pv-light-panel {
        border-radius: 48px;
        padding: 44px;
        overflow: hidden;
    }

    .pv-dark-panel {
        position: relative;
        color: var(--pv-white);
        background:
            radial-gradient(circle at 16% 12%, rgba(184,232,90,.35), transparent 32%),
            linear-gradient(145deg, var(--pv-green-950), var(--pv-green-800));
        box-shadow: var(--pv-shadow-strong);
    }

    .pv-dark-panel::after {
        content: "";
        position: absolute;
        inset: auto -120px -170px auto;
        width: 360px;
        height: 360px;
        border-radius: 50%;
        background: rgba(255,255,255,.08);
    }

    .pv-dark-panel h2,
    .pv-light-panel h2 {
        margin: 18px 0 16px;
        font-size: clamp(34px, 5vw, 58px);
        line-height: .95;
        letter-spacing: -0.06em;
        font-weight: 1000;
        text-wrap: balance;
    }

    .pv-dark-panel p {
        position: relative;
        z-index: 1;
        color: rgba(255,255,255,.77);
        font-size: 17px;
        line-height: 1.7;
    }

    .pv-light-panel {
        background: rgba(255,255,255,.88);
        border: 1px solid rgba(10,54,34,.08);
        box-shadow: var(--pv-shadow-soft);
    }

    .pv-calc-form {
        display: grid;
        gap: 18px;
        margin-top: 26px;
    }

    .pv-field label {
        display: block;
        margin-bottom: 8px;
        color: var(--pv-green-950);
        font-size: 14px;
        font-weight: 950;
    }

    .pv-field input,
    .pv-field select {
        width: 100%;
        height: 58px;
        border-radius: 20px;
        border: 1px solid rgba(10,54,34,.14);
        background: #FBFDFB;
        color: var(--pv-green-950);
        font-size: 18px;
        font-weight: 800;
        padding: 0 16px;
        outline: none;
        transition: border .2s ease, box-shadow .2s ease;
    }

    .pv-field input:focus,
    .pv-field select:focus {
        border-color: var(--pv-green-600);
        box-shadow: 0 0 0 5px rgba(31,138,76,.13);
    }

    .pv-calc-result {
        position: relative;
        padding: 26px;
        border-radius: 32px;
        background:
            radial-gradient(circle at 12% 12%, rgba(184,232,90,.38), transparent 32%),
            linear-gradient(135deg, var(--pv-ice), #FFFFFF);
        border: 1px solid rgba(31,138,76,.13);
        overflow: hidden;
    }

    .pv-calc-result small {
        display: block;
        margin-bottom: 9px;
        color: var(--pv-muted);
        font-size: 12px;
        font-weight: 950;
        letter-spacing: .10em;
        text-transform: uppercase;
    }

    .pv-calc-result strong {
        display: block;
        color: var(--pv-green-950);
        font-size: clamp(32px, 4vw, 50px);
        line-height: .95;
        letter-spacing: -0.06em;
        font-weight: 1000;
    }

    .pv-calc-metrics {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 12px;
        margin-top: 20px;
    }

    .pv-calc-mini {
        padding: 16px;
        border-radius: 20px;
        background: rgba(255,255,255,.85);
        border: 1px solid rgba(10,54,34,.07);
    }

    .pv-calc-mini b {
        display: block;
        color: var(--pv-green-700);
        font-size: 24px;
        line-height: 1;
        letter-spacing: -0.04em;
    }

    .pv-calc-mini span {
        display: block;
        margin-top: 7px;
        color: var(--pv-muted);
        font-size: 12px;
        line-height: 1.25;
        font-weight: 850;
    }

    .pv-note {
        margin: 14px 0 0;
        color: var(--pv-muted);
        font-size: 13px;
        line-height: 1.55;
    }

    .pv-list {
        position: relative;
        z-index: 1;
        display: grid;
        gap: 14px;
        margin-top: 26px;
    }

    .pv-list-item {
        display: grid;
        grid-template-columns: 38px 1fr;
        gap: 13px;
        align-items: start;
    }

    .pv-check {
        width: 38px;
        height: 38px;
        display: grid;
        place-items: center;
        border-radius: 50%;
        color: var(--pv-green-950);
        background: var(--pv-lime-500);
        font-weight: 1000;
    }

    .pv-list-item strong {
        display: block;
        color: var(--pv-white);
        font-weight: 950;
    }

    .pv-list-item span {
        display: block;
        margin-top: 4px;
        color: rgba(255,255,255,.72);
        line-height: 1.45;
    }

    .pv-story {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 28px;
        align-items: stretch;
    }

    .pv-story-card {
        position: relative;
        min-height: 520px;
        border-radius: 48px;
        padding: 44px;
        overflow: hidden;
        box-shadow: var(--pv-shadow-soft);
    }

    .pv-story-card.science {
        color: var(--pv-white);
        background:
            radial-gradient(circle at 18% 18%, rgba(184,232,90,.30), transparent 32%),
            linear-gradient(145deg, var(--pv-green-950), #071B12);
    }

    .pv-story-card.origin {
        background:
            radial-gradient(circle at 80% 18%, rgba(184,232,90,.26), transparent 28%),
            linear-gradient(145deg, #FFFFFF, var(--pv-ice));
        border: 1px solid rgba(10,54,34,.08);
    }

    .pv-story-card h2 {
        margin: 14px 0 16px;
        font-size: clamp(34px, 4vw, 54px);
        line-height: .95;
        letter-spacing: -0.06em;
        font-weight: 1000;
    }

    .pv-story-card p {
        margin: 0;
        font-size: 17px;
        line-height: 1.75;
    }

    .pv-story-card.science p {
        color: rgba(255,255,255,.76);
    }

    .pv-story-card.origin p {
        color: var(--pv-muted);
    }

    .pv-timeline {
        display: grid;
        gap: 14px;
        margin-top: 30px;
    }

    .pv-timeline-item {
        display: grid;
        grid-template-columns: 54px 1fr;
        gap: 14px;
        align-items: start;
    }

    .pv-timeline-item b {
        width: 54px;
        height: 54px;
        display: grid;
        place-items: center;
        border-radius: 18px;
        color: var(--pv-green-950);
        background: var(--pv-lime-500);
        font-weight: 1000;
    }

    .pv-timeline-item strong {
        display: block;
        color: inherit;
        font-size: 18px;
        font-weight: 950;
    }

    .pv-timeline-item span {
        display: block;
        margin-top: 4px;
        color: inherit;
        opacity: .72;
        line-height: 1.5;
    }

    .pv-products-panel {
        border-radius: 48px;
        padding: 30px;
        background: rgba(255,255,255,.88);
        border: 1px solid rgba(10,54,34,.08);
        box-shadow: var(--pv-shadow-soft);
    }

    .pv-products-panel .woocommerce ul.products {
        margin-bottom: 0;
    }

    .pv-products-panel .woocommerce ul.products li.product {
        border-radius: 26px;
        overflow: hidden;
        padding: 18px !important;
        background: #FFFFFF;
        box-shadow: 0 14px 40px rgba(6,36,23,.08);
    }

    .pv-comparison {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 24px;
        align-items: stretch;
    }

    .pv-compare {
        min-height: 380px;
        border-radius: 48px;
        padding: 44px;
        overflow: hidden;
    }

    .pv-compare.good {
        color: var(--pv-white);
        background:
            radial-gradient(circle at 20% 18%, rgba(184,232,90,.30), transparent 28%),
            linear-gradient(145deg, var(--pv-green-700), var(--pv-green-950));
        box-shadow: var(--pv-shadow-strong);
    }

    .pv-compare.neutral {
        color: #4E3E2E;
        background: linear-gradient(145deg, var(--pv-sand), #F5EDDE);
        border: 1px solid rgba(78,62,46,.08);
    }

    .pv-compare h3 {
        margin: 0 0 16px;
        font-size: clamp(30px, 4vw, 48px);
        line-height: .95;
        letter-spacing: -0.055em;
        font-weight: 1000;
    }

    .pv-compare p {
        margin: 0;
        line-height: 1.72;
        opacity: .84;
        font-size: 17px;
    }

    .pv-steps {
        display: grid;
        grid-template-columns: repeat(4, 1fr);
        gap: 18px;
        counter-reset: step;
    }

    .pv-step {
        counter-increment: step;
        position: relative;
        min-height: 250px;
        padding: 26px;
        border-radius: 32px;
        background: rgba(255,255,255,.86);
        border: 1px solid rgba(10,54,34,.08);
        box-shadow: var(--pv-shadow-soft);
    }

    .pv-step::before {
        content: counter(step);
        width: 48px;
        height: 48px;
        display: grid;
        place-items: center;
        border-radius: 50%;
        margin-bottom: 20px;
        color: var(--pv-white);
        background: var(--pv-green-950);
        font-weight: 1000;
    }

    .pv-step h3 {
        margin: 0 0 10px;
        color: var(--pv-green-950);
        font-size: 21px;
        line-height: 1.08;
        letter-spacing: -0.035em;
        font-weight: 950;
    }

    .pv-step p {
        margin: 0;
        color: var(--pv-muted);
        line-height: 1.6;
    }

    .pv-faq {
        display: grid;
        gap: 12px;
        max-width: 900px;
        margin: 0 auto;
    }

    .pv-faq-item {
        border-radius: 24px;
        background: rgba(255,255,255,.86);
        border: 1px solid rgba(10,54,34,.08);
        box-shadow: 0 12px 38px rgba(6,36,23,.07);
        overflow: hidden;
    }

    .pv-faq-question {
        width: 100%;
        display: flex;
        justify-content: space-between;
        gap: 16px;
        align-items: center;
        padding: 20px 22px;
        border: 0;
        background: transparent;
        color: var(--pv-green-950);
        font-size: 17px;
        font-weight: 950;
        text-align: left;
        cursor: pointer;
    }

    .pv-faq-question span:last-child {
        width: 34px;
        height: 34px;
        display: grid;
        place-items: center;
        border-radius: 50%;
        background: var(--pv-ice);
        flex: 0 0 auto;
        transition: transform .2s ease;
    }

    .pv-faq-answer {
        max-height: 0;
        overflow: hidden;
        transition: max-height .25s ease;
    }

    .pv-faq-answer p {
        margin: 0;
        padding: 0 22px 22px;
        color: var(--pv-muted);
        line-height: 1.65;
    }

    .pv-faq-item.is-open .pv-faq-question span:last-child {
        transform: rotate(45deg);
    }

    .pv-cta {
        position: relative;
        border-radius: 56px;
        padding: 74px 50px;
        text-align: center;
        color: var(--pv-white);
        background:
            radial-gradient(circle at 50% 0%, rgba(184,232,90,.35), transparent 34%),
            linear-gradient(145deg, var(--pv-green-950), var(--pv-green-700));
        box-shadow: var(--pv-shadow-strong);
        overflow: hidden;
    }

    .pv-cta::before,
    .pv-cta::after {
        content: "";
        position: absolute;
        border-radius: 999px;
        border: 1px solid rgba(255,255,255,.15);
    }

    .pv-cta::before {
        width: 420px;
        height: 420px;
        left: -160px;
        top: -160px;
    }

    .pv-cta::after {
        width: 540px;
        height: 540px;
        right: -220px;
        bottom: -260px;
    }

    .pv-cta h2,
    .pv-cta p,
    .pv-cta .pv-hero-actions {
        position: relative;
        z-index: 1;
    }

    .pv-cta h2 {
        max-width: 900px;
        margin: 0 auto 18px;
        font-size: clamp(36px, 5vw, 72px);
        line-height: .92;
        letter-spacing: -0.07em;
        font-weight: 1000;
        text-wrap: balance;
    }

    .pv-cta p {
        max-width: 760px;
        margin: 0 auto;
        color: rgba(255,255,255,.76);
        font-size: 19px;
        line-height: 1.65;
    }

    .pv-reveal {
        opacity: 0;
        transform: translateY(30px);
        transition: opacity .7s ease, transform .7s ease;
    }

    .pv-reveal.is-visible {
        opacity: 1;
        transform: translateY(0);
    }

    @keyframes pvFloat {
        0%, 100% { transform: translate(-50%, -50%) rotate(-4deg) translateY(0); }
        50% { transform: translate(-50%, -50%) rotate(-2deg) translateY(-16px); }
    }

    @keyframes pvPulseRing {
        0%, 100% { opacity: .75; transform: translate(-50%, -50%) scale(1); }
        50% { opacity: 1; transform: translate(-50%, -50%) scale(1.04); }
    }

    @keyframes pvShine {
        0%, 65% { transform: translateX(-80%); }
        100% { transform: translateX(80%); }
    }

    @media (max-width: 1080px) {
        .pv-menu {
            display: none;
        }

        .pv-mobile-menu {
            display: inline-flex;
        }

        .pv-hero-grid,
        .pv-calc-shell,
        .pv-story,
        .pv-comparison,
        .pv-section-head {
            grid-template-columns: 1fr;
        }

        .pv-hero {
            min-height: auto;
        }

        .pv-visual-stage {
            min-height: 580px;
        }

        .pv-benefits,
        .pv-steps {
            grid-template-columns: repeat(2, 1fr);
        }
    }

    @media (max-width: 720px) {
        .pv-nav {
            min-height: 68px;
        }

        .pv-brand span {
            display: none;
        }

        .pv-section {
            padding: 66px 0;
        }

        .pv-title {
            font-size: clamp(44px, 14vw, 66px);
        }

        .pv-proof-row,
        .pv-benefits,
        .pv-steps,
        .pv-calc-metrics {
            grid-template-columns: 1fr;
        }

        .pv-dark-panel,
        .pv-light-panel,
        .pv-story-card,
        .pv-compare,
        .pv-cta {
            padding: 30px;
            border-radius: 34px;
        }

        .pv-visual-stage {
            min-height: 500px;
        }

        .pv-orbit-card {
            border-radius: 38px;
        }

        .pv-product {
            width: 80%;
            min-height: 390px;
        }

        .pv-product h3 {
            font-size: 32px;
        }

        .pv-floating-chip {
            position: relative;
            width: auto;
            inset: auto !important;
            margin: 10px;
            display: none;
        }

        .pv-nav-actions .pv-btn {
            display: none;
        }
    }
    .pv-site-footer {
    background: #07120d;
    color: #ffffff;
    padding: 72px 0 28px;
    font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
    }

    .pv-footer-container {
        width: min(1180px, calc(100% - 40px));
        margin: 0 auto;
        display: grid;
        grid-template-columns: 1.1fr 1fr 1fr;
        gap: 56px;
    }

    .pv-footer-column h3 {
        margin: 0 0 28px;
        color: #ffffff;
        font-size: 28px;
        line-height: 1;
        font-weight: 950;
        letter-spacing: -0.04em;
        text-transform: uppercase;
    }

    .pv-footer-column p {
        margin: 0 0 18px;
        color: rgba(255, 255, 255, 0.62);
        font-size: 17px;
        line-height: 1.6;
    }

    .pv-footer-column strong {
        color: rgba(255, 255, 255, 0.78);
        font-weight: 900;
    }

    .pv-footer-column a {
        color: rgba(255, 255, 255, 0.72);
        text-decoration: none;
    }

    .pv-footer-column a:hover {
        color: #b8e85a;
    }

    .pv-footer-social {
        display: flex;
        gap: 14px;
        margin: 8px 0 28px;
    }

    .pv-footer-social a {
        width: 46px;
        height: 46px;
        display: grid;
        place-items: center;
        border-radius: 50%;
        background: #ffffff;
        color: #07120d;
        font-weight: 950;
        font-size: 22px;
        text-decoration: none;
        transition: transform .2s ease, background .2s ease;
    }

    .pv-footer-social a:hover {
        transform: translateY(-3px);
        background: #b8e85a;
        color: #07120d;
    }

    .pv-footer-note {
        max-width: 320px;
    }

    .pv-footer-bottom {
        width: min(1180px, calc(100% - 40px));
        margin: 54px auto 0;
        padding-top: 26px;
        border-top: 1px solid rgba(255, 255, 255, 0.10);
        display: flex;
        justify-content: space-between;
        gap: 20px;
    }

    .pv-footer-bottom p {
        margin: 0;
        color: rgba(255, 255, 255, 0.45);
        font-size: 14px;
    }

    @media (max-width: 900px) {
        .pv-footer-container {
            grid-template-columns: 1fr;
            gap: 34px;
        }
        .pv-footer-bottom {
            flex-direction: column;
        }
    }
    
    @media (max-width: 900px) {
    .pv-footer-container {
        grid-template-columns: 1fr;
        gap: 34px;
    }
    .pv-footer-bottom {
        flex-direction: column;
    }
}



/* =====================================================
   GALERÍA RESULTADOS / ANTES Y DESPUÉS CON HOVER
   ===================================================== */

.pv-gallery-section {
    position: relative;
    padding: 110px 0;
    background:
        radial-gradient(circle at 12% 8%, rgba(184, 232, 90, 0.22), transparent 28%),
        radial-gradient(circle at 90% 12%, rgba(31, 138, 76, 0.15), transparent 30%),
        linear-gradient(180deg, #ffffff 0%, #f6f1e6 100%);
    overflow: hidden;
}

.pv-gallery-section .pv-section-heading {
    max-width: 880px;
    margin-bottom: 46px;
}

.pv-gallery-section .pv-section-heading h2 {
    max-width: 780px;
}

.pv-gallery-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 24px;
}

.pv-gallery-card {
    position: relative;
    min-height: 420px;
    border-radius: 34px;
    overflow: hidden;
    background: #eaf7f3;
    box-shadow: 0 24px 70px rgba(6, 36, 23, 0.14);
    isolation: isolate;
    transition: transform .28s ease, box-shadow .28s ease;
}

.pv-gallery-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 34px 100px rgba(6, 36, 23, 0.22);
}

.pv-gallery-card img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .45s ease, filter .35s ease;
}

.pv-gallery-card:hover img {
    transform: scale(1.06);
    filter: brightness(0.82);
}

/* Fondo oscuro solo aparece con hover */
.pv-gallery-card::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    background:
        linear-gradient(
            180deg,
            rgba(6, 36, 23, 0.02) 0%,
            rgba(6, 36, 23, 0.16) 45%,
            rgba(6, 36, 23, 0.78) 100%
        );
    opacity: 0;
    transition: opacity .35s ease;
}

.pv-gallery-card:hover::after {
    opacity: 1;
}

/* Caja de información oculta inicialmente */
.pv-gallery-content {
    position: absolute;
    left: 22px;
    right: 22px;
    bottom: 22px;
    z-index: 2;
    padding: 20px;
    border-radius: 26px;
    background: rgba(255, 255, 255, 0.92);
    backdrop-filter: blur(16px);
    border: 1px solid rgba(255, 255, 255, 0.55);

    opacity: 0;
    transform: translateY(22px);
    pointer-events: none;
    transition: opacity .32s ease, transform .32s ease;
}

.pv-gallery-card:hover .pv-gallery-content {
    opacity: 1;
    transform: translateY(0);
    pointer-events: auto;
}

/* Etiqueta visible siempre, pequeña y flotante */
.pv-gallery-content span {
    position: absolute;
    left: 0;
    bottom: calc(100% + 14px);

    display: inline-flex;
    align-items: center;
    padding: 7px 12px;
    border-radius: 999px;
    color: #062417;
    background: rgba(184, 232, 90, 0.92);
    font-size: 11px;
    font-weight: 950;
    text-transform: uppercase;
    letter-spacing: .08em;
    box-shadow: 0 12px 28px rgba(6, 36, 23, 0.18);

    opacity: 1;
    transform: translateY(0);
}

.pv-gallery-card.is-featured .pv-gallery-content span {
    color: #ffffff;
    background: #176b43;
}

/* Título y descripción aparecen con hover */
.pv-gallery-content h3 {
    margin: 0 0 8px;
    color: #062417;
    font-size: 22px;
    line-height: 1.05;
    letter-spacing: -0.04em;
    font-weight: 950;
}

.pv-gallery-content p {
    margin: 0;
    color: #68766e;
    font-size: 14px;
    line-height: 1.5;
}

/* Versión táctil: mostrar información siempre en móvil */
@media (max-width: 1050px) {
    .pv-gallery-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 680px) {
    .pv-gallery-section {
        padding: 76px 0;
    }

    .pv-gallery-grid {
        grid-template-columns: 1fr;
    }

    .pv-gallery-card {
        min-height: 360px;
    }

    .pv-gallery-card::after {
        opacity: 1;
    }

    .pv-gallery-content {
        opacity: 1;
        transform: translateY(0);
        pointer-events: auto;
        padding: 16px;
        left: 16px;
        right: 16px;
        bottom: 16px;
    }

    .pv-gallery-content h3 {
        font-size: 19px;
    }

    .pv-gallery-content p {
        font-size: 13px;
    }
}