{"id":8650,"date":"2026-05-14T07:55:57","date_gmt":"2026-05-14T07:55:57","guid":{"rendered":"https:\/\/jf-moinhosdagandara.pt\/?page_id=8650"},"modified":"2026-05-14T08:24:44","modified_gmt":"2026-05-14T08:24:44","slug":"formularios","status":"publish","type":"page","link":"https:\/\/jf-moinhosdagandara.pt\/?page_id=8650","title":{"rendered":"Formul\u00e1rios"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"8650\" class=\"elementor elementor-8650\">\n\t\t\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-779be5e elementor-section-boxed elementor-section-height-default elementor-section-height-default wpr-particle-no wpr-jarallax-no wpr-parallax-no wpr-sticky-section-no\" data-id=\"779be5e\" data-element_type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-ebf2436\" data-id=\"ebf2436\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-1c5f76b elementor-widget elementor-widget-shortcode\" data-id=\"1c5f76b\" data-element_type=\"widget\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"elementor-shortcode\">    <div class=\"gi-form-wrapper\">\n        <style>\n            .gi-form-wrapper { max-width: 780px; margin: 30px auto; font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Arial, sans-serif; }\n            .gi-card { background: #fff; border: 1px solid #e5e7eb; border-radius: 18px; padding: 28px; box-shadow: 0 18px 45px rgba(15,23,42,.08); }\n            .gi-title { margin: 0 0 6px; font-size: 1.8rem; color: #111827; }\n            .gi-subtitle { margin: 0 0 24px; color: #6b7280; }\n            .gi-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 18px; }\n            .gi-field-full { grid-column: 1 \/ -1; }\n            .gi-group-title { grid-column: 1 \/ -1; margin: 10px 0 -4px; padding-top: 12px; border-top: 1px solid #e5e7eb; font-weight: 700; color: #111827; }\n            .gi-field label { display: block; font-size: .92rem; font-weight: 650; margin-bottom: 7px; color: #374151; }\n            .gi-required { color: #dc2626; }\n            .gi-field input, .gi-field select, .gi-field textarea { width: 100%; box-sizing: border-box; border: 1px solid #d1d5db; border-radius: 12px; padding: 12px 13px; font-size: 1rem; background: #fff; color: #111827; }\n            .gi-field textarea { min-height: 88px; resize: vertical; }\n            .gi-field input:focus, .gi-field select:focus, .gi-field textarea:focus { outline: 0; border-color: #2563eb; box-shadow: 0 0 0 4px rgba(37,99,235,.12); }\n            .gi-field input[readonly] { background: #f3f4f6; color: #4b5563; }\n            .gi-price-box { grid-column: 1 \/ -1; background: #f8fafc; border: 1px solid #dbeafe; border-radius: 16px; padding: 18px; display: flex; justify-content: space-between; gap: 16px; align-items: center; }\n            .gi-price-box small { display: block; margin-top: 4px; color: #64748b; }\n            .gi-price-value { font-size: 1.6rem; font-weight: 800; color: #0f172a; white-space: nowrap; }\n            .gi-submit { margin-top: 22px; width: 100%; border: 0; border-radius: 14px; padding: 15px 18px; cursor: pointer; font-size: 1.05rem; font-weight: 750; background: #111827; color: #fff; }\n            .gi-submit:hover { background: #000; }\n            .gi-alert { border-radius: 14px; padding: 16px 18px; margin-bottom: 18px; }\n            .gi-alert-success { background: #ecfdf5; color: #065f46; border: 1px solid #a7f3d0; }\n            .gi-alert-error { background: #fef2f2; color: #991b1b; border: 1px solid #fecaca; }\n            .gi-alert ul { margin: 8px 0 0 20px; }\n            @media (max-width: 700px) { .gi-grid { grid-template-columns: 1fr; } .gi-field, .gi-field-full, .gi-price-box { grid-column: 1 \/ -1; } .gi-price-box { align-items: flex-start; flex-direction: column; } }\n        <\/style>\n\n        \n        \n        <form class=\"gi-card gi-form\" method=\"post\">\n            <input type=\"hidden\" id=\"gi_nonce\" name=\"gi_nonce\" value=\"cf4c856cf8\" \/><input type=\"hidden\" name=\"_wp_http_referer\" value=\"\/index.php?rest_route=%2Fwp%2Fv2%2Fpages%2F8650\" \/>            <input type=\"hidden\" name=\"gi_submit_inscricao\" value=\"1\">\n\n            <h2 class=\"gi-title\">Formul\u00e1rio de Inscri\u00e7\u00e3o<\/h2>\n            <p class=\"gi-subtitle\">Preencha os dados da inscri\u00e7\u00e3o. O valor \u00e9 calculado automaticamente pela data de nascimento.<\/p>\n\n            <div class=\"gi-grid\">\n                                    \n                                        <div class=\"gi-field gi-field-full\">\n                        <label for=\"gi_nome\">\n                            Nome                            <span class=\"gi-required\">*<\/span>                        <\/label>\n\n                                                    <input\n                                id=\"gi_nome\"\n                                type=\"text\"\n                                name=\"nome\"\n                                placeholder=\"Nome completo\"\n                                required                                                                                            >\n                                            <\/div>\n                                    \n                                        <div class=\"gi-field\">\n                        <label for=\"gi_data_nascimento\">\n                            Data de nascimento                            <span class=\"gi-required\">*<\/span>                        <\/label>\n\n                                                    <input\n                                id=\"gi_data_nascimento\"\n                                type=\"date\"\n                                name=\"data_nascimento\"\n                                placeholder=\"\"\n                                required                                                                                            >\n                                            <\/div>\n                                                        \n                                        <div class=\"gi-field\">\n                        <label for=\"gi_nif\">\n                            NIF                            <span class=\"gi-required\">*<\/span>                        <\/label>\n\n                                                    <input\n                                id=\"gi_nif\"\n                                type=\"text\"\n                                name=\"nif\"\n                                placeholder=\"123456789\"\n                                required                                pattern=\"[0-9]{9}\"                                maxlength=\"9\"                            >\n                                            <\/div>\n                                    \n                                        <div class=\"gi-field\">\n                        <label for=\"gi_telemovel\">\n                            Telem\u00f3vel                            <span class=\"gi-required\">*<\/span>                        <\/label>\n\n                                                    <input\n                                id=\"gi_telemovel\"\n                                type=\"tel\"\n                                name=\"telemovel\"\n                                placeholder=\"912345678\"\n                                required                                pattern=\"[0-9]{9}\"                                maxlength=\"9\"                            >\n                                            <\/div>\n                                    \n                                        <div class=\"gi-field gi-field-full\">\n                        <label for=\"gi_email\">\n                            Email                            <span class=\"gi-required\">*<\/span>                        <\/label>\n\n                                                    <input\n                                id=\"gi_email\"\n                                type=\"email\"\n                                name=\"email\"\n                                placeholder=\"email@dominio.pt\"\n                                required                                                                                            >\n                                            <\/div>\n                                    \n                                        <div class=\"gi-field gi-field-full\">\n                        <label for=\"gi_morada\">\n                            Morada                            <span class=\"gi-required\">*<\/span>                        <\/label>\n\n                                                    <textarea id=\"gi_morada\" name=\"morada\" placeholder=\"Morada completa\" required><\/textarea>\n                                            <\/div>\n                                    \n                                        <div class=\"gi-field gi-field-full\">\n                        <label for=\"gi_tamanho_tshirt\">\n                            Tamanho da T-shirt                            <span class=\"gi-required\">*<\/span>                        <\/label>\n\n                                                    <select id=\"gi_tamanho_tshirt\" name=\"tamanho_tshirt\" required>\n                                <option value=\"\">Selecione...<\/option>\n                                                                    <option value=\"4 anos\">4 anos<\/option>\n                                                                    <option value=\"6 anos\">6 anos<\/option>\n                                                                    <option value=\"8 anos\">8 anos<\/option>\n                                                                    <option value=\"10 anos\">10 anos<\/option>\n                                                                    <option value=\"12 anos\">12 anos<\/option>\n                                                                    <option value=\"XS\">XS<\/option>\n                                                                    <option value=\"S\">S<\/option>\n                                                                    <option value=\"M\">M<\/option>\n                                                                    <option value=\"L\">L<\/option>\n                                                                    <option value=\"XL\">XL<\/option>\n                                                                    <option value=\"XXL\">XXL<\/option>\n                                                            <\/select>\n                                            <\/div>\n                                    <div class=\"gi-group-title\">Contacto de Emerg\u00eancia<\/div>\n                                        <div class=\"gi-field\">\n                        <label for=\"gi_emergencia_nome\">\n                            Contacto de Emerg\u00eancia - Nome                            <span class=\"gi-required\">*<\/span>                        <\/label>\n\n                                                    <input\n                                id=\"gi_emergencia_nome\"\n                                type=\"text\"\n                                name=\"emergencia_nome\"\n                                placeholder=\"Nome do contacto\"\n                                required                                                                                            >\n                                            <\/div>\n                                    \n                                        <div class=\"gi-field\">\n                        <label for=\"gi_emergencia_telemovel\">\n                            Contacto de Emerg\u00eancia - Telem\u00f3vel                            <span class=\"gi-required\">*<\/span>                        <\/label>\n\n                                                    <input\n                                id=\"gi_emergencia_telemovel\"\n                                type=\"tel\"\n                                name=\"emergencia_telemovel\"\n                                placeholder=\"912345678\"\n                                required                                pattern=\"[0-9]{9}\"                                maxlength=\"9\"                            >\n                                            <\/div>\n                                                            <div class=\"gi-price-box\">\n                            <div>\n                                <strong>Valor<\/strong>\n                                <small>At\u00e9 aos 12 anos: 6 \u20ac \u00b7 Mais de 12 anos: 10 \u20ac<\/small>\n                            <\/div>\n                            <div class=\"gi-price-value\" id=\"gi_valor_display\">--<\/div>\n                        <\/div>\n                        <input type=\"hidden\" name=\"valor\" id=\"gi_valor\" value=\"\">\n                        <input type=\"hidden\" name=\"idade\" id=\"gi_idade_hidden\" value=\"\">\n                                <\/div>\n\n            <button type=\"submit\" class=\"gi-submit\">Confirmar inscri\u00e7\u00e3o<\/button>\n        <\/form>\n\n        <script>\n        (function(){\n            const nasc = document.getElementById('gi_data_nascimento');\n            const valorDisplay = document.getElementById('gi_valor_display');\n            const valorInput = document.getElementById('gi_valor');\n            const idadeInput = document.getElementById('gi_idade_hidden');\n\n            function calcAge(value) {\n                if (!value) return null;\n                const birth = new Date(value + 'T00:00:00');\n                const today = new Date();\n                if (isNaN(birth.getTime()) || birth > today) return null;\n                let age = today.getFullYear() - birth.getFullYear();\n                const m = today.getMonth() - birth.getMonth();\n                if (m < 0 || (m === 0 && today.getDate() < birth.getDate())) age--;\n                return age;\n            }\n\n            function updatePrice() {\n                const age = calcAge(nasc ? nasc.value : '');\n                if (age === null) {\n                    valorDisplay.textContent = '--';\n                    valorInput.value = '';\n                    idadeInput.value = '';\n                    return;\n                }\n                const value = age <= 12 ? 6 : 10;\n                valorDisplay.textContent = value.toFixed(2).replace('.', ',') + ' \u20ac';\n                valorInput.value = value.toFixed(2);\n                idadeInput.value = age;\n            }\n\n            if (nasc) {\n                nasc.addEventListener('change', updatePrice);\n                nasc.addEventListener('input', updatePrice);\n                updatePrice();\n            }\n        })();\n        <\/script>\n    <\/div>\n    <\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"","protected":false},"author":1,"featured_media":8651,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"om_disable_all_campaigns":false,"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"powered_cache_disable_cache":false,"powered_cache_disable_lazyload":false,"footnotes":""},"class_list":["post-8650","page","type-page","status-publish","has-post-thumbnail","hentry"],"aioseo_notices":[],"blog_post_layout_featured_media_urls":{"thumbnail":["https:\/\/jf-moinhosdagandara.pt\/wp-content\/uploads\/2026\/05\/forms_bck-150x150.png",150,150,true],"full":["https:\/\/jf-moinhosdagandara.pt\/wp-content\/uploads\/2026\/05\/forms_bck.png",936,764,false]},"categories_names":null,"comments_number":"0","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/jf-moinhosdagandara.pt\/index.php?rest_route=\/wp\/v2\/pages\/8650","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/jf-moinhosdagandara.pt\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/jf-moinhosdagandara.pt\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/jf-moinhosdagandara.pt\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/jf-moinhosdagandara.pt\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=8650"}],"version-history":[{"count":10,"href":"https:\/\/jf-moinhosdagandara.pt\/index.php?rest_route=\/wp\/v2\/pages\/8650\/revisions"}],"predecessor-version":[{"id":8663,"href":"https:\/\/jf-moinhosdagandara.pt\/index.php?rest_route=\/wp\/v2\/pages\/8650\/revisions\/8663"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/jf-moinhosdagandara.pt\/index.php?rest_route=\/wp\/v2\/media\/8651"}],"wp:attachment":[{"href":"https:\/\/jf-moinhosdagandara.pt\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=8650"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}