@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Poppins:wght@100;200;300;400;500;600;700;800&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Nunito:wght@200;300;400;600;700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Montserrat+Alternates:wght@700;800&family=Orbitron:wght@800&family=Righteous&display=swap");
@import url('https://fonts.googleapis.com/css2?family=Mr+Dafoe&family=Ms+Madi&display=swap');

.wrapper {
      width: 1280px;
      margin: 0 auto;
}

#home {
      background-color: #0d0826;
      width: 100%;
      max-height: 100vh;
}

.header {
      width: 100%;
      height: 150px;
      display: flex;
}

.header .logo {
      width: 25%;
      display: flex;
      align-items: center;
      justify-content: center;
}

.header .logo img {
      width: 160px;
      height: auto;
}

.header .ul-1 {
      width: 50%;
      display: flex;
      align-items: center;
      text-align: center;
      justify-content: space-between;
}

.header .ul-1 li {
      display: flex;
}

.header .ul-1 li a {
      color: #fff;
      font-size: 1.3rem;
      font-weight: 600;
      font-family: "Nunito", sans-serif;
}

.header .ul-1 li a:hover {
      border: 2px solid #2A3E62;
      color: #2A3E62;
      border-radius: 20px;
      padding: 8px 20px;
}

.header .ul-2 {
      width: 25%;
      display: flex;
      align-items: center;
      justify-content: center;
}

.header .ul-2 a {
      color: #fff;
      padding: 8px 20px;
      border: 2px solid #fff;
      border-radius: 20px;
      font-size: 1.3rem;
      font-weight: 600;
      font-family: "Nunito", sans-serif;
}

.header .ul-2 a:hover {
      border: 2px solid #2A3E62;
      color: #2A3E62;
}

.content-home {
      display: flex;
      width: 100%;
      align-items: center;
      justify-content: center;
      padding: 50px 0;
}

.content-home .home-box-descr-esq {
      width: 50%;
      color: #fff;
      padding-left: 50px;
}

.content-home .home-box-descr-esq .home-h1 {
      font-family: "Ms Madi", cursive;
      font-size: 3.5rem;
      font-weight: 100;
      text-align: center;
      margin-bottom: 20px;
}

.content-home .home-box-descr-esq .home-p {
      font-family: "Nunito", sans-serif;
      font-size: 1.5rem;
      font-weight: 100;
      text-align: center;
}


.content-home .home-box-logo {
      width: 10%;
      position: relative;
      display: inline-block;
      overflow: hidden;
}

@keyframes brilhoAlternado {
      0% {
        filter: brightness(1);
      }
      100% {
        filter: brightness(1.5);
      }
}

.content-home .home-box-logo img {
      width: 160px;
      height: auto;
      display: block;
      animation: brilhoAlternado 2s infinite alternate ease-in-out;
}


.content-home .home-box-descr-dir {
      width: 40%;
      padding-right: 50px;
}

.content-home .home-box-descr-dir .home-p {
      font-family: "Nunito", sans-serif;
      font-size: 1.5rem;
      font-weight: 100;
      text-align: center;
      color: #fff;
}


#sobre {
      width: 1280px;
      margin: 0 auto;
      padding: 0 50px;
      display: flex;
      flex-direction: column;
      box-sizing: border-box;
      background-color: #0d0826;
}

.sobre-container-esq,
.sobre-container-dir {
      position: relative;
      width: 100%;
      height: 50vh;
      overflow: visible;
      display: flex;
      align-items: center;
      justify-content: center;
}

.sobre-box-esq,
.sobre-box-dir {
      display: flex;
      align-items: center;
      justify-content: center;
      width: 100%;
      position: relative;
}

.figura-woman img,
.figura-men img {
      width: 250px;
      height: auto;
      object-fit: contain;
      z-index: 2;
}

.figura-woman {
      position: relative;
      z-index: 2;
      margin-bottom: -60px; /* invade a parte de baixo */
}

.figura-men {
      position: relative;
      z-index: 2;
      margin-top: -60px; /* invade a parte de cima */
}

.sobre-box-esq-desc,
.sobre-box-dir-desc {
      max-width: 600px;
      margin: 0 2rem;
      z-index: 1;
}

.sobre-container-esq {
      color: white;
}

.sobre-container-dir {
      color: white;
}

#certificados {
      background-color: #0d0826;
      width: 100%;
      min-height: 100vh;
      max-height: 100vh;
      border: 1px solid #fff;
}

#trabalho {
      background-color: #0d0826;
      width: 100%;
      min-height: 100vh;
      max-height: 100vh;
      border: 1px solid #fff;
}

#informacoes {
      background-color: #0d0826;
      width: 100%;
      min-height: 100vh;
      max-height: 100vh;
      padding: 40px 20px;
      border: 1px solid #fff;
}

#informacoes h4 {
      text-align: center;
      font-size: 1.2rem;
      margin-bottom: 30px;
      color: #888;
}

.tabela-atendimento,
.tabela-descricao-valor {
      max-width: 600px;
      margin: 20px auto;
      border: 1px solid #ccc;
      border-radius: 8px;
      overflow: hidden;
}

.linha {
      display: flex;
      justify-content: space-between;
      padding: 15px 20px;
      border-bottom: 1px solid #eee;
}

.linha:last-child {
      border-bottom: none;
}

.dia,
.descricao {
      color: #888;
      font-weight: 500;
      font-size: 1rem;
}

.horario,
.valor {
      font-weight: bold;
      color: #888;
      font-size: 1rem;
}

.fechado .horario {
      color: #c00;
}

.button-link {
      display: inline-block;
      text-decoration: none;
      border: none;
      border-radius: 5px;
      cursor: pointer;
      color: #fff;
      padding: 8px 20px;
      border: 2px solid #fff;
      border-radius: 20px;
      font-size: 1.3rem;
      font-weight: 600;
      font-family: "Nunito", sans-serif;
}

.button-link:hover {
      border: 2px solid #2A3E62;
      color: #2A3E62;
      border-radius: 20px;
      padding: 8px 20px;
}

#contato {
      background-color: #0d0826;
      width: 100%;
      min-height: 100vh;
      max-height: 100vh;
      padding: 40px 20px;
}

#contato h4 {
      text-align: center;
      font-size: 1.2rem;
      margin-bottom: 30px;
      color: #888;
}
/* Container flex horizontal */
.container-contato {
      display: flex;
      align-items: center;   /* vertical center */
      gap: 0;                /* sem espaçamento entre imagem e form */
      max-width: 900px;      /* limite máximo de largura da seção */
      margin: 0 auto;        /* centraliza horizontalmente */
      padding: 20px;
}

/* Imagem logo */
.box-logo-ctt img {
      display: block;
      max-width: 220px;
      height: auto;
      object-fit: contain;
}

.box-logo-ctt h5 {
      color: #888;
      padding: 20px 0 0 10px;
      font-size: 1rem;
}

/* Form ocupando o restante */
.box-form-ctt {
      flex: 1;
      margin-left: 0;
      padding-left: 20px; /* um pouco de espaço entre imagem e form */
}

/* Form interno */
.box-form-ctt form {
      width: 100%;
      font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
      font-size: 16px;
      color: #222;
}

/* Inputs e textarea */
.inputs {
      width: 100%;
      padding: 10px 12px;
      margin-bottom: 15px;
      border: 1.5px solid #ccc;
      border-radius: 6px;
      font-size: 16px;
      transition: border-color 0.3s ease;
      box-sizing: border-box;
}

.inputs:focus {
      outline: none;
      border-color: #007BFF; /* azul suave no foco */
      background-color: #f9faff;
}

/* Placeholder */
.inputs::placeholder {
      color: #999;
      font-style: italic;
}

/* Textarea com altura maior */
textarea.inputs {
      resize: vertical;
      min-height: 120px;
      font-family: inherit;
}

/* Botão enviar */
.first-button {
      background-color: #007BFF;
      border: none;
      padding: 12px 25px;
      border-radius: 6px;
      color: white;
      font-weight: 600;
      font-size: 18px;
      cursor: pointer;
      transition: background-color 0.3s ease;
}

.first-button:hover {
      background-color: #0056b3;
}

/* Span de erro (se usar para validação) */
.span-required {
      color: #d9534f; /* vermelho */
      font-size: 14px;
      display: none; /* inicialmente oculto, mostrar via JS se quiser */
      margin-top: -10px;
      margin-bottom: 10px;
}

#footer {
      background-color: #444;
      color: #ddd;
      font-size: 13px;
      font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
      padding: 30px 20px;
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between;
      gap: 20px;
}

/* Coração vermelho */
#footer i.fa-heart {
      color: red;
}

/* Cada box do footer */
.box-esq-footer,
.box-meio1-footer,
.box-meio2-footer,
.box-dir-footer {
      flex: 1 1 200px;
      min-width: 200px;
}

/* Logo central */
.box-meio1-footer img {
      max-width: 80px;
      height: auto;
      display: block;
      margin: 0 auto;
}

/* Mapa do site */
.box-meio2-footer h6 {
      color: #fff;
      font-size: 14px;
      margin-bottom: 10px;
}

.box-meio2-footer ul {
      list-style: none;
      padding: 0;
      margin: 0;
}

.box-meio2-footer ul li {
      margin: 4px 0;
}

.box-meio2-footer ul li a {
      text-decoration: none;
      color: #ccc;
      transition: color 0.3s ease;
}

.box-meio2-footer ul li a:hover {
      color: #fff;
}

/* Redes sociais */
.box-dir-footer ul {
      display: flex;
      gap: 12px;
      padding: 0;
      margin: 0;
}

.box-dir-footer a.social-icon {
      font-size: 18px;
      color: #ccc;
      transition: color 0.3s ease;
}

.box-dir-footer a.social-icon:hover {
      color: #fff;
}

.box-brasist {
      display: flex;
      justify-content: center;
      align-items: center;
      color: #999;
      background-color: #000;
      text-align: center;
      padding: 20px 0;
}

.box-brasist .logo-brasist {
      display: flex;
      padding: 0 40px 0 0;
}

.box-brasist a {
      color: #999;
}

.box-brasist a:hover {
      color: #0056b3;
}

