{"id":77,"date":"2025-10-23T13:50:45","date_gmt":"2025-10-23T13:50:45","guid":{"rendered":"https:\/\/zerocarbono.org\/?page_id=77"},"modified":"2026-01-08T00:40:31","modified_gmt":"2026-01-08T00:40:31","slug":"linea-base","status":"publish","type":"page","link":"https:\/\/zerocarbono.org\/en\/linea-base\/","title":{"rendered":"Baseline"},"content":{"rendered":"<div data-elementor-type=\"wp-page\" data-elementor-id=\"77\" class=\"elementor elementor-77\" data-elementor-post-type=\"page\">\n\t\t\t\t<div class=\"elementor-element elementor-element-2079c99 e-flex e-con-boxed e-con e-parent\" data-id=\"2079c99\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-4eea79c elementor-widget elementor-widget-shortcode\" data-id=\"4eea79c\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"shortcode.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\"><!DOCTYPE html>\n<html lang=\"es\">\n<head>\n    <meta charset=\"UTF-8\">\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\n    <title>Estudio de L\u00ednea Base<\/title>\n    <style>\n        :root {\n            --azul-principal: #031e35;\n            --verde-principal: #325825;\n            --verde-claro: #f0f7f0;\n            --gris-oscuro: #374151;\n            --gris-medio: #6b7280;\n            --blanco: #ffffff;\n        }\n\n        * {\n            margin: 0;\n            padding: 0;\n            box-sizing: border-box;\n            font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;\n        }\n\n        body {\n            background: linear-gradient(135deg, #fafcff 0%, #f8fafc 100%);\n            color: var(--gris-oscuro);\n            line-height: 1.6;\n            min-height: 100vh;\n        }\n\n        .container {\n            max-width: 1100px;\n            margin: 0 auto;\n            padding: 0 20px;\n        }\n\n        \/* Header Refinado *\/\n        .header {\n            padding: 30px 0 0px;\n            text-align: center;\n            position: relative;\n        }\n\n        .header::before {\n            content: \"\";\n            position: absolute;\n            top: 50%;\n            left: 50%;\n            transform: translate(-50%, -50%);\n            width: 300px;\n            height: 300px;\n            background: radial-gradient(circle, var(--verde-claro) 0%, transparent 70%);\n            opacity: 0.4;\n            z-index: -1;\n        }\n\n        .badge {\n            display: inline-block;\n            background: var(--blanco);\n            color: var(--verde-principal);\n            padding: 10px 24px;\n            border-radius: 24px;\n            font-size: 0.85rem;\n            font-weight: 500;\n            margin-bottom: 30px;\n            border: 1px solid rgba(50, 88, 37, 0.1);\n            box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);\n            backdrop-filter: blur(10px);\n        }\n\n        .title {\n            font-size: 3rem;\n            font-weight: 700;\n            color: var(--azul-principal);\n            margin-bottom: 25px;\n            line-height: 1.1;\n            letter-spacing: -0.5px;\n        }\n\n        .title-gradient {\n            background: linear-gradient(135deg, var(--azul-principal) 0%, var(--verde-principal) 100%);\n            -webkit-background-clip: text;\n            -webkit-text-fill-color: transparent;\n            background-clip: text;\n        }\n\n        .subtitle {\n            font-size: 1.3rem;\n            color: var(--gris-medio);\n            max-width: 600px;\n            margin: 0 auto;\n            font-weight: 400;\n            line-height: 1.5;\n        }\n\n        \/* Stats elegantes *\/\n        .stats {\n            display: flex;\n            justify-content: center;\n            gap: 60px;\n            margin-top: 80px;\n            position: relative;\n        }\n\n        .stats::before {\n            content: \"\";\n            position: absolute;\n            top: 50%;\n            left: 50%;\n            transform: translate(-50%, -50%);\n            width: 1px;\n            height: 40px;\n            background: linear-gradient(to bottom, transparent, var(--gris-medio), transparent);\n            opacity: 0.3;\n        }\n\n        .stat {\n            text-align: center;\n            position: relative;\n        }\n\n        .stat::after {\n            content: \"\";\n            position: absolute;\n            bottom: -10px;\n            left: 50%;\n            transform: translateX(-50%);\n            width: 0;\n            height: 2px;\n            background: var(--verde-principal);\n            transition: width 0.6s ease;\n        }\n\n        .stat:hover::after {\n            width: 30px;\n        }\n\n        .stat-number {\n            display: block;\n            font-size: 2.2rem;\n            font-weight: 700;\n            color: var(--verde-principal);\n            margin-bottom: 8px;\n        }\n\n        .stat-label {\n            font-size: 0.9rem;\n            color: var(--gris-medio);\n            font-weight: 500;\n            letter-spacing: 0.5px;\n        }\n\n        \/* Secciones con l\u00edneas sutiles *\/\n        .section {\n            padding: 100px 0;\n            position: relative;\n        }\n\n        .section::before {\n            content: \"\";\n            position: absolute;\n            top: 0;\n            left: 50%;\n            transform: translateX(-50%);\n            width: 1px;\n            height: 0;\n            background: linear-gradient(to bottom, transparent, var(--gris-medio), transparent);\n            opacity: 0.2;\n            animation: growLine 1.5s ease-out forwards;\n        }\n\n        @keyframes growLine {\n            to {\n                height: 100%;\n            }\n        }\n\n        .section-title {\n            font-size: 2rem;\n            font-weight: 700;\n            color: var(--azul-principal);\n            margin-bottom: 60px;\n            text-align: center;\n            position: relative;\n        }\n\n        .section-title::after {\n            content: \"\";\n            position: absolute;\n            bottom: -15px;\n            left: 50%;\n            transform: translateX(-50%);\n            width: 50px;\n            height: 2px;\n            background: var(--verde-principal);\n            border-radius: 1px;\n            animation: expandLine 1s ease-out 0.5s both;\n        }\n\n        @keyframes expandLine {\n            from {\n                width: 0;\n            }\n            to {\n                width: 50px;\n            }\n        }\n\n        \/* Grid con animaciones sutiles *\/\n        .grid {\n            display: grid;\n            grid-template-columns: repeat(auto-fit, minmax(340px, 1fr));\n            gap: 30px;\n        }\n\n        .card {\n            padding: 40px 35px;\n            background: var(--blanco);\n            border-radius: 16px;\n            box-shadow: 0 4px 20px rgba(0, 0, 0, 0.06);\n            border: 1px solid rgba(0, 0, 0, 0.03);\n            transition: all 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);\n            position: relative;\n            overflow: hidden;\n        }\n\n        .card::before {\n            content: \"\";\n            position: absolute;\n            top: 0;\n            left: -100%;\n            width: 100%;\n            height: 100%;\n            background: linear-gradient(90deg, transparent, rgba(50, 88, 37, 0.02), transparent);\n            transition: left 0.8s ease;\n        }\n\n        .card:hover::before {\n            left: 100%;\n        }\n\n        .card:hover {\n            transform: translateY(-3px);\n            box-shadow: 0 8px 30px rgba(0, 0, 0, 0.1);\n        }\n\n        .card-icon {\n            font-size: 2.2rem;\n            margin-bottom: 25px;\n            color: var(--verde-principal);\n            opacity: 0;\n            animation: fadeInUp 0.6s ease-out 0.2s both;\n        }\n\n        @keyframes fadeInUp {\n            from {\n                opacity: 0;\n                transform: translateY(10px);\n            }\n            to {\n                opacity: 1;\n                transform: translateY(0);\n            }\n        }\n\n        .card-title {\n            font-size: 1.3rem;\n            font-weight: 600;\n            color: var(--azul-principal);\n            margin-bottom: 15px;\n            opacity: 0;\n            animation: fadeInUp 0.6s ease-out 0.3s both;\n        }\n\n        .card-text {\n            color: var(--gris-medio);\n            font-size: 0.95rem;\n            line-height: 1.6;\n            opacity: 0;\n            animation: fadeInUp 0.6s ease-out 0.4s both;\n        }\n\n        \/* Importancia con dise\u00f1o elegante *\/\n        .importancia-grid {\n            display: grid;\n            grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));\n            gap: 25px;\n        }\n\n        .importancia-item {\n            display: flex;\n            align-items: flex-start;\n            gap: 20px;\n            padding: 30px;\n            background: var(--blanco);\n            border-radius: 12px;\n            box-shadow: 0 4px 15px rgba(0, 0, 0, 0.04);\n            transition: all 0.3s ease;\n            position: relative;\n        }\n\n        .importancia-item::before {\n            content: \"\";\n            position: absolute;\n            left: 0;\n            top: 0;\n            height: 0;\n            width: 3px;\n            background: var(--verde-principal);\n            transition: height 0.6s ease;\n        }\n\n        .importancia-item:hover::before {\n            height: 100%;\n        }\n\n        .importancia-icon {\n            font-size: 1.8rem;\n            color: var(--verde-principal);\n            flex-shrink: 0;\n            background: var(--verde-claro);\n            padding: 12px;\n            border-radius: 10px;\n            transition: transform 0.3s ease;\n        }\n\n        .importancia-item:hover .importancia-icon {\n            transform: scale(1.1);\n        }\n\n        .importancia-content h4 {\n            color: var(--azul-principal);\n            margin-bottom: 10px;\n            font-size: 1.1rem;\n            font-weight: 600;\n        }\n\n        .importancia-content p {\n            color: var(--gris-medio);\n            font-size: 0.9rem;\n            line-height: 1.5;\n        }\n\n        \/* Resultados con efecto de aparici\u00f3n *\/\n        .resultados-grid {\n            display: grid;\n            grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));\n            gap: 30px;\n            margin-bottom: 50px;\n        }\n\n        .resultado-card {\n            padding: 40px 35px;\n            background: linear-gradient(135deg, var(--azul-principal) 0%, #1a2d3e 100%);\n            border-radius: 16px;\n            text-align: center;\n            color: var(--blanco);\n            position: relative;\n            overflow: hidden;\n            opacity: 0;\n            animation: fadeInUp 0.8s ease-out 0.6s both;\n        }\n\n        .resultado-card:nth-child(2) {\n            animation-delay: 0.7s;\n        }\n\n        .resultado-card::before {\n            content: \"\";\n            position: absolute;\n            top: -20px;\n            right: -20px;\n            width: 80px;\n            height: 80px;\n            background: rgba(255, 255, 255, 0.05);\n            border-radius: 50%;\n        }\n\n        .resultado-icon {\n            font-size: 2.5rem;\n            margin-bottom: 20px;\n            color: var(--verde-claro);\n            opacity: 0.9;\n        }\n\n        .resultado-title {\n            font-size: 1.2rem;\n            margin-bottom: 12px;\n            font-weight: 600;\n            letter-spacing: 0.5px;\n        }\n\n        .nota {\n            background: var(--verde-claro);\n            padding: 30px;\n            border-radius: 16px;\n            border-left: 4px solid var(--verde-principal);\n            margin-top: 40px;\n            opacity: 0;\n            animation: fadeInUp 0.8s ease-out 0.8s both;\n        }\n\n        .nota p {\n            color: var(--azul-principal);\n            font-size: 1rem;\n            font-weight: 500;\n            line-height: 1.5;\n        }\n\n        \/* CTA elegante *\/\n        .cta {\n            text-align: center;\n            padding: 100px 0;\n            background: var(--blanco);\n            border-radius: 24px;\n            margin: 60px 0;\n            box-shadow: 0 8px 40px rgba(0, 0, 0, 0.08);\n            position: relative;\n            overflow: hidden;\n        }\n\n        .cta::before {\n            content: \"\";\n            position: absolute;\n            top: 0;\n            left: 0;\n            right: 0;\n            height: 4px;\n            background: linear-gradient(90deg, var(--azul-principal), var(--verde-principal));\n        }\n\n        .cta-title {\n            font-size: 2.2rem;\n            margin-bottom: 20px;\n            color: var(--azul-principal);\n            font-weight: 700;\n        }\n\n        .cta-text {\n            font-size: 1.2rem;\n            margin-bottom: 35px;\n            color: var(--gris-medio);\n            max-width: 500px;\n            margin-left: auto;\n            margin-right: auto;\n            line-height: 1.5;\n        }\n\n        .cta-button {\n            display: inline-flex;\n            align-items: center;\n            gap: 12px;\n            background: var(--verde-principal);\n            color: var(--blanco);\n            padding: 16px 40px;\n            border-radius: 12px;\n            font-size: 1.1rem;\n            font-weight: 600;\n            text-decoration: none;\n            transition: all 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);\n            position: relative;\n            overflow: hidden;\n        }\n\n        .cta-button::before {\n            content: \"\";\n            position: absolute;\n            top: 0;\n            left: -100%;\n            width: 100%;\n            height: 100%;\n            background: linear-gradient(90deg, transparent, rgba(255,255,255,0.2), transparent);\n            transition: left 0.6s ease;\n        }\n\n        .cta-button:hover::before {\n            left: 100%;\n        }\n\n        .cta-button:hover {\n            transform: translateY(-2px);\n            box-shadow: 0 8px 25px rgba(50, 88, 37, 0.3);\n        }\n\n        \/* Responsive *\/\n        @media (max-width: 768px) {\n            .container {\n                padding: 0 15px;\n            }\n\n            .header {\n                padding: 80px 0 50px;\n            }\n\n            .title {\n                font-size: 2.4rem;\n            }\n\n            .stats {\n                flex-direction: column;\n                gap: 40px;\n                margin-top: 60px;\n            }\n\n            .stats::before {\n                display: none;\n            }\n\n            .section {\n                padding: 80px 0;\n            }\n\n            .grid {\n                grid-template-columns: 1fr;\n            }\n\n            .importancia-grid {\n                grid-template-columns: 1fr;\n            }\n\n            .resultados-grid {\n                grid-template-columns: 1fr;\n            }\n        }\n\n        @media (max-width: 480px) {\n            .title {\n                font-size: 2rem;\n            }\n\n            .section-title {\n                font-size: 1.7rem;\n            }\n\n            .card {\n                padding: 30px 25px;\n            }\n        }\n    <\/style>\n<\/head>\n<body>\n    <div class=\"container\">\n        <!-- Header -->\n        <div class=\"header\">\n            <div class=\"badge\">\ud83d\udcca Specialized Study<\/div>\n            <h1 class=\"title\"><span class=\"title-gradient\">1.-Baseline Study<br>The Solid Foundation of Your Environmental Project<\/span><\/h1>\n            <p class=\"subtitle\">\n               Are you considering developing a project for carbon, water, plastic, agricultural, biochar, or other environmental credits? <br>  It all starts with a Baseline Study, an essential assessment that defines the true potential of your initiative.\n\n            <\/p>\n            <div class=\"stats\">\n                <div class=\"stat\">\n                    <span class=\"stat-number\">2<\/span>\n                    <span class=\"stat-label\">Weeks<\/span>\n                <\/div>\n                <div class=\"stat\">\n                    <span class=\"stat-number\">\ud83d\udcc8<\/span>\n                    <span class=\"stat-label\">Viability<\/span>\n                <\/div>\n                <div class=\"stat\">\n                    <span class=\"stat-number\">\ud83d\udcb0<\/span>\n                    <span class=\"stat-label\">Low cost<\/span>\n                <\/div>\n            <\/div>\n        <\/div>\n\n        <!-- Qu\u00e9 es -->\n        <div class=\"section\">\n            <h2 class=\"section-title\">What is a Baseline Study?<\/h2>\n<p>The Baseline Study is a detailed analysis that establishes the fundamental parameters of your project:<\/p>\n            <div class=\"grid\">\n                <div class=\"card\">\n                    <div class=\"card-icon\">\ud83d\uddfa\ufe0f<\/div>\n                    <h3 class=\"card-title\">Location and context:<\/h3>\n                    <p class=\"card-text\">Satellite assessment to analyze natural (flora, fauna) and social (nearby communities) capital.<\/p>\n                <\/div>\n                \n                <div class=\"card\">\n                    <div class=\"card-icon\">\ud83d\udccb<\/div>\n                    <h3 class=\"card-title\">Methodology and certification<\/h3>\n                    <p class=\"card-text\">Selection of the most appropriate international regulations and methodology, along with an analysis of certification costs.<\/p>\n                <\/div>\n                \n                <div class=\"card\">\n                    <div class=\"card-icon\">\u2696\ufe0f<\/div>\n                    <h3 class=\"card-title\">Legal framework<\/h3>\n                    <p class=\"card-text\">Review of local laws that may impact the project.<\/p>\n                <\/div>\n                \n                <div class=\"card\">\n                    <div class=\"card-icon\">\ud83e\uddee<\/div>\n                    <h3 class=\"card-title\">Credit calculation<\/h3>\n                    <p class=\"card-text\">Conservative projection of credits generated during the project's useful life.<\/p>\n                <\/div>\n                \n                <div class=\"card\">\n                    <div class=\"card-icon\">\ud83d\udcb9<\/div>\n                    <h3 class=\"card-title\">Market Price<\/h3>\n                    <p class=\"card-text\">Research of updated values for similar credits in global markets.<\/p>\n                <\/div>\n            <\/div>\n        <\/div>\n\n        <!-- Importancia -->\n        <div class=\"section\">\n            <h2 class=\"section-title\">Why is it crucial?<\/h2>\n            <div class=\"importancia-grid\">\n                <div class=\"importancia-item\">\n                    <div class=\"importancia-icon\">\ud83d\udee1\ufe0f<\/div>\n                    <div class=\"importancia-content\">\n                        <h4>Reduce risks<\/h4>\n                        <p>Precisely define key variables (Price and Quantity of credits).<\/p>\n                    <\/div>\n                <\/div>\n                \n                <div class=\"importancia-item\">\n                    <div class=\"importancia-icon\">\ud83d\udcca<\/div>\n                    <div class=\"importancia-content\">\n                        <h4>Reliable projections<\/h4>\n                        <p>Generate realistic scenarios (pessimistic, intermediate, optimistic) for credit sales.<\/p>\n                    <\/div>\n                <\/div>\n                \n                <div class=\"importancia-item\">\n                    <div class=\"importancia-icon\">\ud83c\udfaf<\/div>\n                    <div class=\"importancia-content\">\n                        <h4>Decision making<\/h4>\n                        <p>If the project is viable in the pessimistic scenario , it is viable to be developed.<\/p>\n                    <\/div>\n                <\/div>\n            <\/div>\n        <\/div>\n\n        <!-- Resultados -->\n        <div class=\"section\">\n            <h2 class=\"section-title\">Key result<\/h2>\n<p>You will gain clarity on:<\/p>\n            <div class=\"resultados-grid\">\n                <div class=\"resultado-card\">\n                    <div class=\"resultado-icon\">\ud83d\udcb0<\/div>\n                    <h4 class=\"resultado-title\">Revenue Potential<\/h4>\n                    <p class=\"card-text\">Projected annual and total cash flow.<\/p>\n                <\/div>\n                \n                <div class=\"resultado-card\">\n                    <div class=\"resultado-icon\">\u2705<\/div>\n                    <h4 class=\"resultado-title\">Feasibility<\/h4>\n                    <p class=\"card-text\">Confirmation that the project minimizes risks and maximizes opportunities.<\/p>\n                <\/div>\n            <\/div>\n            \n            <div class=\"nota\">\n                <p>\ud83d\udca1 <strong>Important:<\/strong> Este es un estudio de bajo costo que en 2 semanas permite saber si tu proyecto es viable o no.<\/p>\n            <\/div>\n        <\/div>\n\n        <!-- CTA -->\n    <div class=\"cta\">\n    <h2 class=\"cta-title\">Ready to get started?<\/h2>\n    <p class=\"cta-text\">\n      If you want more information about our service and its associated costs, download our presentation brochure here.\n    <\/p>\n\n    <!--BOT\u00d3N -->\n    <button id=\"abrir-formulario\" class=\"cta-button\" type=\"button\">\n        \ud83d\udce5 Download Brochure\n    <\/button>\n\n    <!-- AQU\u00cd  SHORTCODE -->\n    <div class=\"formulario-wrapper\">\n        \n  <div class=\"dg-wrap\" style=\"text-align:center;margin-top:30px;\">\n    <button id=\"dg-btn\" class=\"dg-btn\">\n      DESCARGAR DOCUMENTO <i class=\"fa fa-download\"><\/i>\n    <\/button>\n\n    <form id=\"dg-form\" class=\"dg-form\" style=\"display:none;\" novalidate action=\"\">\n      <h3 class=\"dg-title\">\ud83c\udf31 Completa los datos para continuar<\/h3>\n\n      <div class=\"dg-row\">\n        <label class=\"lbl-name\">Nombre *<\/label>\n        <input name=\"name\" required>\n      <\/div>\n\n      <div class=\"dg-row-inline\">\n        <div class=\"dg-col\">\n          <label class=\"lbl-company\">Corporaci\u00f3n *<\/label>\n          <input name=\"company\" required>\n        <\/div>\n        <div class=\"dg-col\">\n          <label class=\"lbl-role\">Cargo *<\/label>\n          <input name=\"role\" required>\n        <\/div>\n      <\/div>\n\n      <div class=\"dg-row\">\n        <label class=\"lbl-email\">Correo *<\/label>\n        <input type=\"email\" name=\"email\" required>\n      <\/div>\n\n      <!-- WhatsApp + Pa\u00eds en dos columnas -->\n      <div class=\"dg-row-inline\">\n        <div class=\"dg-col\">\n          <label class=\"lbl-phone\">WhatsApp completo (con c\u00f3digo de \u00e1rea) *<\/label>\n          <input name=\"phone\" required>\n        <\/div>\n        <div class=\"dg-col\">\n          <label class=\"lbl-country\">Pa\u00eds *<\/label>\n          <input name=\"country\" required>\n        <\/div>\n      <\/div>\n\n      <div class=\"dg-row\">\n        <label class=\"lbl-message\">Mensaje<\/label>\n        <textarea name=\"message\" rows=\"2\"><\/textarea>\n      <\/div>\n\n      <div class=\"dg-row dg-acept\">\n        <label>\n          <input type=\"checkbox\" name=\"policy\" required>\n          <span class=\"lbl-policy\">Acepto las pol\u00edticas de privacidad<\/span>\n        <\/label>\n      <\/div>\n\n      <button type=\"submit\" class=\"dg-submit\">\n        ENVIAR Y DESCARGAR <i class=\"fa fa-paper-plane\"><\/i>\n      <\/button>\n    <input type=\"hidden\" name=\"trp-form-language\" value=\"en\"\/><\/form>\n\n    <p class=\"dg-msg\" style=\"display:none;\"><\/p>\n  <\/div>\n\n<style>\n\/* ===== CONTENEDOR ===== *\/\n.dg-form{\n  margin:25px auto;\n  max-width:750px;\n  background:#ffffff;\n  padding:40px 45px;\n  border-radius:22px;\n  box-shadow:0 20px 45px rgba(0,0,0,0.07);\n  opacity:0;\n  transform:translateY(15px);\n  transition:all .45s ease;\n  \/* Asegurar que se oculte completamente *\/\n  visibility: hidden;\n  height: 0;\n  overflow: hidden;\n}\n\n.dg-form.dg-show{\n  display:block!important;\n  opacity:1!important;\n  transform:translateY(0);\n  \/* Mostrar completamente *\/\n  visibility: visible;\n  height: auto;\n  overflow: visible;\n}\n\n.dg-form[style*=\"display: none\"] {\n  display: none !important;\n  opacity: 0 !important;\n  visibility: hidden !important;\n  height: 0 !important;\n  overflow: hidden !important;\n}\n\n\/* ===== T\u00cdTULO ===== *\/\n.dg-title{\n  text-align:left!important;\n  color:#031e35;\n  font-weight:800;\n  margin-bottom:35px;\n  line-height:1.2;\n  font-size:26px;\n}\n\n\/* ===== ETIQUETAS ===== *\/\n.dg-row label,\n.dg-row-inline label{\n  display:block;\n  color:#031e35;\n  font-weight:600;\n  margin-bottom:10px;\n  margin-top:12px;  \n  font-size:14px;\n  text-align:left !important;\n}\n\n\/* ===== CAMPOS ===== *\/\n.dg-row input,\n.dg-row textarea,\n.dg-row-inline input{\n  width:100%;\n  padding:14px 16px;\n  border:1px solid #dbe3dc;\n  background:#f8fdf8;\n  border-radius:12px;\n  font-size:15px;\n  color:#031e35;\n  outline:none;\n  box-shadow:0 2px 6px rgba(50,88,37,0.06);\n  transition:all .25s ease;\n}\n.dg-row input::placeholder,\n.dg-row textarea::placeholder{\n  color:#8aa09a;\n}\n\n\/* Campos inv\u00e1lidos SOLO cuando se ha intentado enviar *\/\n.dg-form.submitted input:invalid,\n.dg-form.submitted textarea:invalid,\n.dg-form.submitted .dg-row-inline input:invalid{\n  border-color:#ff4444;\n  background:#fff8f8;\n}\n\n\/* Hover y focus *\/\n.dg-row input:focus,\n.dg-row textarea:focus{\n  border-color:#2e7d32;\n  background:#ffffff;\n  box-shadow:0 0 0 3px rgba(46,125,50,0.18);\n}\n\n\/* ===== DOS COLUMNAS ===== *\/\n.dg-row-inline{\n  display:flex;\n  gap:18px;\n  margin-bottom:18px;\n}\n.dg-row-inline .dg-col{\n  flex:1;\n}\n\n\/* ===== CHECKBOX ===== *\/\n.dg-acept label{\n  font-size:14px;\n  color:#031e35;\n  text-align:left !important;\n}\n.dg-acept input{\n  width:auto;\n  transform:scale(1.2);\n  cursor:pointer;\n}\n\n\/* Checkbox inv\u00e1lido SOLO cuando se ha intentado enviar *\/\n.dg-form.submitted .dg-acept input:invalid{\n  outline:2px solid #ff4444;\n}\n\n\/* ===== BOT\u00d3N PREMIUM ===== *\/\n.dg-submit{\n  display:inline-flex;\n  align-items:center;\n  justify-content:center;\n  gap:10px;\n  padding:16px 42px;\n  background:linear-gradient(90deg,#031e35,#325825);\n  color:#ffffff;\n  font-size:16px;\n  font-weight:700;\n  border:none;\n  border-radius:50px;\n  cursor:pointer;\n  margin:35px auto 0;\n  position:relative;\n  overflow:hidden;\n  transition:transform .25s ease;\n  box-shadow:0 8px 25px rgba(0,0,0,0.15);\n}\n\n\/* Animaci\u00f3n premium del bot\u00f3n *\/\n.dg-submit::before{\n  content:\"\";\n  position:absolute;\n  top:0;\n  left:-120%;\n  width:120%;\n  height:100%;\n  background:linear-gradient(\n    120deg,\n    transparent,\n    rgba(255,255,255,0.28),\n    transparent\n  );\n  transition:all .6s ease;\n}\n\n.dg-submit:hover::before{\n  left:120%;\n}\n\n.dg-submit:hover{\n  transform:translateY(-3px);\n  box-shadow:0 12px 30px rgba(0,0,0,0.23);\n}\n\n\/* ===== MENSAJE ===== *\/\n.dg-msg{\n  text-align:center;\n  margin-top:30px;\n  font-weight:700;\n  color:#2e7d32;\n  font-size:20px;\n}\n\n\/* Mensaje de error *\/\n.dg-msg.error{\n  color:#ff4444;\n}\n\n\/* ===== RESPONSIVE ===== *\/\n@media(max-width:600px){\n  .dg-row-inline{\n    flex-direction:column;\n  }\n  .dg-form{\n    padding:30px 25px;\n  }\n  .dg-title{\n    font-size:22px;\n  }\n}\n<\/style>\n\n<script>\ndocument.addEventListener('DOMContentLoaded',()=>{\n  const btn  = document.getElementById('dg-btn');\n  const form = document.getElementById('dg-form');\n  const msg  = document.querySelector('.dg-msg');\n\n  const htmlLang=document.documentElement.lang||'';\n  const lang=(location.pathname.includes('\/en\/')||htmlLang.startsWith('en'))?'en':'es';\n\n  const tAll = {\n    es:{\n      title:'\ud83c\udf31 Completa los datos para continuar',\n      name:'Nombre *',\n      company:'Corporaci\u00f3n *',\n      role:'Cargo *',\n      email:'Correo *',\n      phone:'WhatsApp completo (con c\u00f3digo de \u00e1rea) *',\n      country:'Pa\u00eds *',\n      message:'Mensaje',\n      policy:'Acepto las pol\u00edticas de privacidad',\n      submit:'ENVIAR Y DESCARGAR',\n      done:'\u2705 Documento enviado a su correo',\n      error:'\u274c Error al enviar. Por favor revisa los campos.',\n      validation:'\u274c Por favor completa todos los campos obligatorios'\n    },\n    en:{\n      title:'\ud83c\udf31 Complete the information to continue',\n      name:'Name *',\n      company:'Corporation *',\n      role:'Position *',\n      email:'Email *',\n      phone:'Full WhatsApp (with area code) *',\n      country:'Country *',\n      message:'Message',\n      policy:'I accept the privacy policy',\n      submit:'SEND AND DOWNLOAD',\n      done:'\u2705 Document sent to your email',\n      error:'\u274c Error sending. Please check the fields.',\n      validation:'\u274c Please complete all required fields'\n    }\n  };\n  const t = tAll[lang];\n\n  \/\/ Traducci\u00f3n\n  form.querySelector('.dg-title').textContent   = t.title;\n  form.querySelector('.lbl-name').textContent   = t.name;\n  form.querySelector('.lbl-company').textContent= t.company;\n  form.querySelector('.lbl-role').textContent   = t.role;\n  form.querySelector('.lbl-email').textContent  = t.email;\n  form.querySelector('.lbl-phone').textContent  = t.phone;\n  form.querySelector('.lbl-country').textContent= t.country;\n  form.querySelector('.lbl-message').textContent= t.message;\n  form.querySelector('.lbl-policy').textContent = t.policy;\n  form.querySelector('.dg-submit').childNodes[0].textContent = t.submit+' ';\n\n  \/\/ Guardado de datos\n  const fields=form.querySelectorAll('input, textarea');\n  fields.forEach(f=>{\n    const key='dg_'+f.name;\n    const saved=localStorage.getItem(key);\n    if(saved) f.value=saved;\n    f.addEventListener('input',()=>localStorage.setItem(key,f.value));\n  });\n\n  const policy=form.querySelector('input[name=\"policy\"]');\n  if(policy){\n    const savedPolicy=localStorage.getItem('dg_policy');\n    if(savedPolicy==='true') policy.checked=true;\n    policy.addEventListener('change',()=>localStorage.setItem('dg_policy',policy.checked));\n  }\n\n  \/\/ Mostrar \/ ocultar formulario\n  btn.addEventListener('click',e=>{\n    e.preventDefault();\n    if(form.classList.contains('dg-show')){\n      form.classList.remove('dg-show');\n      setTimeout(()=>form.style.display='none',300);\n    } else {\n      form.style.display='block';\n      requestAnimationFrame(()=>form.classList.add('dg-show'));\n    }\n  });\n\n  \/\/ Funci\u00f3n para validar formulario\n  function validateForm() {\n    const requiredFields = form.querySelectorAll('input[required], textarea[required]');\n    let isValid = true;\n    \n    requiredFields.forEach(field => {\n      if (!field.value.trim()) {\n        isValid = false;\n      }\n    });\n    \n    \/\/ Validar checkbox de pol\u00edtica\n    const policyCheckbox = form.querySelector('input[name=\"policy\"]');\n    if (policyCheckbox && !policyCheckbox.checked) {\n      isValid = false;\n    }\n    \n    \/\/ Validar email\n    const emailField = form.querySelector('input[type=\"email\"]');\n    if (emailField && emailField.value && !isValidEmail(emailField.value)) {\n      isValid = false;\n    }\n    \n    return isValid;\n  }\n  \n  \/\/ Funci\u00f3n para validar email\n  function isValidEmail(email) {\n    const emailRegex = \/^[^\\s@]+@[^\\s@]+\\.[^\\s@]+$\/;\n    return emailRegex.test(email);\n  }\n\n  \/\/ Env\u00edo\n  form.addEventListener('submit',async e=>{\n    e.preventDefault();\n    msg.style.display='none';\n    msg.classList.remove('error');\n\n    \/\/ Marcar que se intent\u00f3 enviar (para mostrar errores)\n    form.classList.add('submitted');\n\n    \/\/ Validar formulario antes de enviar\n    if (!validateForm()) {\n      msg.textContent = t.validation;\n      msg.classList.add('error');\n      msg.style.display = 'block';\n      return; \/\/ Detener el env\u00edo\n    }\n\n    const fd=new FormData(form);\n    fd.append('action','dg_submit');\n    fd.append('security','2417d6d52c');\n    fd.append('title','Pesta\u00f1a Linea Base');\n    fd.append('pdf_es','https:\/\/zerocarbono.org\/wp-content\/uploads\/2026\/01\/1.-Estudio-Linea-Base.pdf');\n    fd.append('pdf_en','https:\/\/zerocarbono.org\/wp-content\/uploads\/2026\/01\/1.-Baseline-Study.jpg');\n    fd.append('link_es','');\n    fd.append('link_en','');\n    fd.append('lang',lang);\n\n    try {\n      const res=await fetch('https:\/\/zerocarbono.org\/wp-admin\/admin-ajax.php',{method:'POST',body:fd});\n      const json=await res.json();\n\n      if(json && json.success){\n        \/\/ FORZAR la ocultaci\u00f3n del formulario de m\u00faltiples maneras\n        form.style.display = 'none';\n        form.style.opacity = '0';\n        form.style.visibility = 'hidden';\n        form.style.height = '0';\n        form.style.overflow = 'hidden';\n        form.classList.remove('dg-show', 'submitted');\n        \n        \/\/ Resetear el formulario\n        form.reset();\n        \n        \/\/ Limpiar localStorage\n        fields.forEach(f=>localStorage.removeItem('dg_'+f.name));\n        if(policy) localStorage.removeItem('dg_policy');\n        \n        \/\/ Mostrar mensaje de \u00e9xito\n        msg.textContent=t.done;\n        msg.classList.remove('error');\n        msg.style.display='block';\n        msg.style.opacity='1';\n        \n        \/\/ Ocultar mensaje despu\u00e9s de 4 segundos\n        setTimeout(()=>{\n          msg.style.opacity='0';\n          setTimeout(()=>{\n            msg.style.display='none';\n          },300);\n        },4000);\n        \n      }else{\n        msg.textContent=t.error;\n        msg.classList.add('error');\n        msg.style.display='block';\n        \n        \/\/ Ocultar mensaje de error despu\u00e9s de 5 segundos\n        setTimeout(()=>{\n          msg.style.opacity='0';\n          setTimeout(()=>{\n            msg.style.display='none';\n          },300);\n        },5000);\n      }\n    } catch(error) {\n      msg.textContent=t.error;\n      msg.classList.add('error');\n      msg.style.display='block';\n    }\n  });\n});\n<\/script>\n\n\n    <\/div>\n<\/div>\n\n\n        <\/div>\n    <\/div>\n<\/body>\n<\/html><\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-c8c7374 e-flex e-con-boxed e-con e-parent\" data-id=\"c8c7374\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-00fcadf elementor-widget elementor-widget-html\" data-id=\"00fcadf\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<script>\r\ndocument.addEventListener('DOMContentLoaded', () => {\r\n\r\n    const btnCTA = document.getElementById('abrir-formulario');\r\n    const btnShortcode = document.getElementById('dg-btn');\r\n    const form = document.getElementById('dg-form');\r\n\r\n    if(btnCTA && btnShortcode && form){\r\n\r\n        btnCTA.addEventListener('click', e => {\r\n            e.preventDefault();\r\n\r\n            \/\/ activa la l\u00f3gica original (abre\/cierra)\r\n            btnShortcode.click();\r\n\r\n            \/\/ esperamos un poquito para que el shortcode cambie las clases\r\n            setTimeout(() => {\r\n\r\n                \/\/ si el shortcode LO ABRI\u00d3 (tiene dg-show)\r\n                if(form.classList.contains('dg-show')){\r\n                    form.classList.add('dg-visible');      \/\/ mostrar animado\r\n                    form.style.display = 'block';          \/\/ visible\r\n                }\r\n\r\n                \/\/ si el shortcode LO CERR\u00d3 (no tiene dg-show)\r\n                else {\r\n                    form.classList.remove('dg-visible');   \/\/ ocultamos animaci\u00f3n\r\n                    form.style.display = 'none';           \/\/ completamente oculto\r\n                }\r\n\r\n            }, 50);\r\n        });\r\n    }\r\n});\r\n<\/script>\r\n\r\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-e5d8404 elementor-widget elementor-widget-html\" data-id=\"e5d8404\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n#dg-btn {\r\n    display: none !important;\r\n}\r\n\r\n.formulario-wrapper {\r\n    margin-top: 20px;\r\n}\r\n\r\n#dg-form {\r\n    display: none;\r\n    opacity: 0;\r\n    transform: translateY(-10px);\r\n    transition: all 0.4s ease;\r\n}\r\n\r\n#dg-form.dg-visible {\r\n    display: block !important;\r\n    opacity: 1 !important;\r\n    transform: translateY(0);\r\n}\r\n<\/style>\r\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>","protected":false},"excerpt":{"rendered":"<p>Estudio de L\u00ednea Base \ud83d\udcca Estudio Especializado 1.-Estudio de L\u00ednea BaseLa Base S\u00f3lida de Tu Proyecto Ambiental \u00bfEst\u00e1s considerando desarrollar un proyecto de cr\u00e9ditos de carbono, agua, pl\u00e1stico, agr\u00edcola, biochar u otros cr\u00e9ditos ambientales? Todo comienza con un Estudio de L\u00ednea Base, una evaluaci\u00f3n esencial que define el potencial real de tu iniciativa. 2 Semanas [&hellip;]<\/p>","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-77","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/zerocarbono.org\/en\/wp-json\/wp\/v2\/pages\/77","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/zerocarbono.org\/en\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/zerocarbono.org\/en\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/zerocarbono.org\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/zerocarbono.org\/en\/wp-json\/wp\/v2\/comments?post=77"}],"version-history":[{"count":50,"href":"https:\/\/zerocarbono.org\/en\/wp-json\/wp\/v2\/pages\/77\/revisions"}],"predecessor-version":[{"id":1847,"href":"https:\/\/zerocarbono.org\/en\/wp-json\/wp\/v2\/pages\/77\/revisions\/1847"}],"wp:attachment":[{"href":"https:\/\/zerocarbono.org\/en\/wp-json\/wp\/v2\/media?parent=77"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}