As Nossas Rotinas

Aulas Desenhadas à sua Medida

Explore as nossas três aulas distintas, concebidas para se adequarem a todos os níveis de fitness. Seja iniciante ou um praticante experiente, poderá praticar PILAT3S ao seu ritmo.
PILAT3S Signature Routines
Dynamic Reformer Pilates

Personalizado para si

Baseado em décadas de experiência, o conceito PILAT3S oferece três tipos de rotinas concebidas para todos os níveis de fitness: Align, Tone e Power.
Experience Routines DRP
PILAT3S Xpress Routine
Xpress

Burn, Sculpt, Repeat

A nossa rotina Tone também é oferecida como uma aula Xpress de 30 minutos – ideal para quem precisa de otimizar o seu calendário e praticar actividade física em curtos espaços de tempos.
Novo no PILAT3S?

O seu Guia de Boas-Vindas

Quer seja um praticante experiente ou esteja a dar os primeiros passos no Pilates Reformer, estamos aqui para apoiar o seu percurso em cada etapa. Aqui encontrará tudo o que precisa de saber antes da sua primeira aula.
Experience Routines Taster
Contacte-nos

Fale connosco

Tem alguma questão ou precisa de ajuda? Preencha o formulário abaixo e a nossa equipa entrará em contacto consigo brevemente.

Tem alguma pergunta sobre o seu estúdio?

Siga-nos nas redes sociais:
<form id="brxe-bjdyin" action="<?php echo esc_url($_SERVER['REQUEST_URI']); ?>" method="post">
  <div class="form-group" role="group">
    <input
      id="form-field-feefcf"
      name="form-field-30d577"
      aria-label="Nome"
      spellcheck="false"
      type="text"
      placeholder="Digite seu nome"
      required
    >
  </div>

  <div class="form-group" role="group">
    <input
      id="form-field-97c8ca"
      name="form-field-bxhina"
      aria-label="Sobrenome"
      spellcheck="false"
      type="text"
      placeholder="Digite seu sobrenome"
    >
  </div>

  <div class="form-group" role="group">
    <input
      id="form-field-7d3755"
      name="form-field-40ae92"
      aria-label="E-mail"
      type="email"
      maxlength="320"
      placeholder="Digite seu e-mail"
      required
    >
  </div>

  <div class="form-group" role="group">
    <input
      id="form-field-4a09f6"
      name="form-field-madcme"
      aria-label="Telefone"
      type="tel"
      placeholder="Digite seu número de telefone"
    >
  </div>

  <?php echo do_shortcode('[filter_country_studio]'); ?>

  <div class="form-group" role="group">
    <textarea
      id="form-field-c2b017"
      name="form-field-2f0f5e"
      aria-label="Mensagem"
      spellcheck="false"
      placeholder="Sua mensagem…"
      required
    ></textarea>
  </div>

  <!-- Honeypot escondido -->
  <div style="display:none !important;">
    <input type="text" name="anti_robot_field" tabindex="-1" autocomplete="off">
  </div>

  <!-- reCAPTCHA v2 -->
  <div class="g-recaptcha" data-sitekey="6Lc48RksAAAAAH3KnpT2sH_OCu-tkc4KTyNWpaRE"></div>
  <script src="https://www.google.com/recaptcha/api.js" async defer></script>

  <div class="form-group" role="radiogroup" aria-labelledby="label-yicrye">
    <ul class="options-wrapper">
      <li>
        <input
          type="radio"
          id="form-field-yicrye-0"
          name="form-field-yicrye[]"
          required
          value="Autorizo ser contactado(a) em relação à minha solicitação."
        >
        <label for="form-field-yicrye-0">
          Autorizo ser contactado(a) em relação à minha solicitação.
        </label>
      </li>
    </ul>
  </div>

  <div class="form-group submit-button-wrapper">
    <button type="submit" class="bricks-button bricks-background-primary icon-right">
      <span class="text">Enviar mensagem</span>

      <svg class="icon-send" xmlns="http://www.w3.org/2000/svg" width="24" height="25" viewBox="0 0 24 25" fill="none">
        <path d="M19 12.2798H5" stroke="#FAFAFA" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" />
        <path d="M14 17.2798L19 12.2798" stroke="#FAFAFA" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" />
        <path d="M14 7.27979L19 12.2798" stroke="#FAFAFA" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" />
      </svg>

      <span class="loading">
        <svg version="1.1" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg">
          <g stroke-linecap="round" stroke-width="1" stroke="currentColor" fill="none" stroke-linejoin="round">
            <path d="M0.927,10.199l2.787,4.151l3.205,-3.838"></path>
            <path d="M23.5,14.5l-2.786,-4.15l-3.206,3.838"></path>
            <path d="M20.677,10.387c0.834,4.408 -2.273,8.729 -6.509,9.729c-2.954,0.699 -5.916,-0.238 -7.931,-2.224"></path>
            <path d="M3.719,14.325c-1.314,-4.883 1.969,-9.675 6.538,-10.753c3.156,-0.747 6.316,0.372 8.324,2.641"></path>
          </g>
          <path fill="none" d="M0,0h24v24h-24Z"></path>
        </svg>
      </span>
    </button>

    <input type="hidden" name="custom_studio_form" value="1">
  </div>
</form>

<!-- Mensagem de sucesso -->
<?php if (isset($_GET['success'])) : ?>
  <div class="alert alert-success">
    <?php
      $lang = function_exists('pll_current_language') ? pll_current_language() : 'en';

      switch ($lang) {
        case 'pt':
          echo 'Sua mensagem foi enviada com sucesso!';
          break;
        case 'es':
          echo '¡Tu mensaje ha sido enviado con éxito!';
          break;
        case 'en':
        default:
          echo 'Your message has been sent successfully!';
          break;
      }
    ?>
  </div>
<?php endif; ?>
#brxe-bjdyin {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.form-group {
    display: flex;
    flex-direction: column;
    padding: 0 0 20px;
    width: 100%;
}

.form-group {
    padding-bottom: 12px;
}

.form-group:nth-child(1) {
    width: 48.6%;
}

.form-group:nth-child(2) {
    width: 48.6%;
}

.form-group input {
    font-size: 16px;
    font-weight: 400;
    color: var(--bricks-color-gymnyz);
    line-height: 1.5;
    background-color: var(--bricks-color-fappzc);
    border-radius: 24px;
    padding-top: 12px;
    padding-right: 18px;
    padding-bottom: 12px;
    padding-left: 18px;
}

.form-group select {
    font-size: 16px;
    font-weight: 400;
    color: var(--bricks-color-ubyowm);
    line-height: 1.5;
    background-color: var(--bricks-color-fappzc);
    border-radius: 24px;
    padding-top: 12px;
    padding-right: 18px;
    padding-bottom: 12px;
    padding-left: 18px;
}

.form-group textarea {
    font-size: 16px;
    font-weight: 400;
    color: var(--bricks-color-gymnyz);
    line-height: 1.5;
    background-color: var(--bricks-color-fappzc);
    border-radius: 24px;
    padding-top: 12px;
    padding-right: 18px;
    padding-bottom: 12px;
    padding-left: 18px;
  	resize: none;
}

.form-group label {
    font-size: 14px;
    text-transform: none;
    letter-spacing: 0px;
    font-weight: 400;
}

.options-wrapper {
    list-style-type: none;
    margin: 0;
    padding: 0;
}

.options-wrapper li {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: nowrap;
    gap: 5px;
}

.options-wrapper input,.options-wrapper label {
    display: inline-block;
    height: auto;
    margin: 0 5px 0 0;
    width: auto;
}

.submit-button-wrapper {
    margin-top: 0;
    margin-right: 0;
    margin-bottom: 0;
    margin-left: 0;
}

.submit-button-wrapper {
    width: 100%;
  	max-width: 200px;
}

.g-recaptcha {
    margin-bottom: 15px !important;
}

.bricks-button {
  width: 100%;
    font-size: 14px;
    line-height: 1.1;
    color: var(--bricks-color-fappzc);
    border-radius: 100px;
    transition: .2s;
    padding-top: 8px;
    padding-right: 16px;
    padding-bottom: 8px;
    padding-left: 16px;
}

button[type=submit] .loading {
    display: none;
}


@media(max-width: 991px) {
  .submit-button-wrapper {
        max-width: 100%;
    		height: 100%;
    }
  
  .bricks-button {
        width: 100% !important;
        min-width: 100% !important;
    		height: 41px;
    }
}

@media(max-width: 478px) {
  .form-group:nth-child(1) {
    width: 100%;
}

.form-group:nth-child(2) {
    width: 100%;
}
}
document.addEventListener('DOMContentLoaded', function () {
  const form = document.getElementById('brxe-bjdyin');
  const button = document.getElementById('submitBtn');
  const icon = button.querySelector('.icon-send');
  const loading = button.querySelector('.loading');
  const text = button.querySelector('.text');

  form.addEventListener('submit', function () {
    icon.style.display = 'none';
    loading.style.display = 'inline-block';
    text.textContent = getLocalizedSendingText();
  });

  function getLocalizedSendingText() {
    const lang = document.documentElement.lang || 'en';
    switch (lang) {
      case 'pt': return 'Enviando...';
      case 'es': return 'Enviando...';
      case 'fr': return 'Envoi en cours...';
      default: return 'Sending...';
    }
  }
});

document.addEventListener("DOMContentLoaded", function () {
  const form = document.getElementById("brxe-bjdyin");

  form.addEventListener("submit", function (e) {

    // HONEYPOT → Si rempli, bloquer
    const honeypot = form.querySelector("input[name='anti_robot_field']");
    if (honeypot && honeypot.value.trim() !== "") {
      e.preventDefault();
      alert("Erreur de validation.");
      return false;
    }

    // reCAPTCHA vide → bloquer
    const recaptcha = grecaptcha.getResponse();
    if (recaptcha.length === 0) {
      e.preventDefault();
      alert("Veuillez confirmer que vous n’êtes pas un robot.");
      return false;
    }

    // 🔥 Délai de 1,5 s pour réinitialiser après envoi réussi
    setTimeout(() => {
      if (typeof grecaptcha !== "undefined") {
        grecaptcha.reset();
      }
    }, 1500);
  });
});
Em breve

Fique atento ao que vem por aí

Estamos a trabalhar nos bastidores para oferecer recursos novos e interessantes para melhorar a sua experiência no PILAT3S. Esta página está em desenvolvimento e será lançada em breve. Volte mais tarde para atualizações e prepare-se para elevar a sua jornada de fitness.