 * {
   margin: 0;
   padding: 0;
   box-sizing: border-box;
 }

 :root {
   --cor1: #104a55;
   --cor2: #024248;
   --cor3: #339795;
   --cor4: #071d41;
   --cor5: rgba(0, 0, 0, .1);
   --cor6: #39b54a;
   --cor7: #006837;
 }

 .body {
   font-family: 'Raleway', sans-serif;
   background-color: #f2f2f2;
   margin: 0;
   padding: 0px;
   display: flex;
   flex-direction: column;
   justify-content: center;
   align-items: center;
   height: 100vh;
   gap: 20px;
   overflow-x: hidden;
 }

 .container {
   width: 300px;
   /* margin: 80px auto; */
   padding: 10px;
   background-color: white;
   border-radius: 10px;
   box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
   gap: 10px;
 }

 .container h2 {
   font-size: 18px;
 }

 form {
   display: flex;
   flex-direction: column;
 }

 form input,
 form select {
   padding: 12px;
   /*margin-bottom: 15px;*/
   border: 1px solid #ccc;
   border-radius: 8px;
   font-size: 15px;
 }

 form button {
   padding: 12px;
   background-color: #4CAF50;
   color: white;
   border: none;
   border-radius: 8px;
   font-size: 16px;
   cursor: pointer;
   transition: background-color 0.3s ease;
 }

 form button:hover {
   background-color: #45a049;
 }

 .container p {
   text-align: center;
   margin-top: 20px;
 }

 .container a {
   color: #007bff;
   text-decoration: none;
 }

 .container a:hover {
   text-decoration: underline;
 }

 /* === Estilo exclusivo do formulário de cadastro === */
 .cadastro-container {
   max-width: 400px;
   margin: 60px auto;
   padding: 40px 30px;
   background-color: #f7f7f7;
   border-radius: 20px;
   box-shadow: 0px 4px 20px rgba(0, 0, 0, 0.1);
 }

 .cadastro-container h2 {
   text-align: center;
   margin-bottom: 20px;
   font-family: 'Raleway', sans-serif;
 }

 .cadastro-container input,
 .cadastro-container select,
 .cadastro-container button {
   width: 100%;
   padding: 12px;
   margin: 10px 0;
   border: 1px solid #ccc;
   border-radius: 10px;
   box-sizing: border-box;
   font-size: 16px;
   font-family: 'Raleway', sans-serif;
 }

 .cadastro-container button {
   background-color: #007bff;
   color: white;
   font-weight: bold;
   cursor: pointer;
   transition: background-color 0.3s ease;
 }

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

 .cadastro-container label {
   font-size: 14px;
   display: block;
   margin-top: 10px;
 }

 .cadastro-container a {
   color: #007bff;
   text-decoration: none;
 }

 .cadastro-container a:hover {
   text-decoration: underline;
 }

 .politica-container {
   font-family: 'Raleway', sans-serif;
   max-width: 800px;
   margin: 40px auto;
   padding: 20px;
   background-color: #fff;
   border-radius: 12px;
   box-shadow: 0 0 12px rgba(0, 0, 0, 0.05);
   line-height: 1.6;
   color: #333;
 }

 .politica-container h1 {
   font-size: 28px;
   margin-bottom: 20px;
   color: #007bff;
 }

 .politica-container h2 {
   font-size: 22px;
   margin-top: 30px;
   margin-bottom: 10px;
 }

 .politica-container p {
   font-size: 16px;
   margin-bottom: 16px;
 }

 .criar-email {
   padding: 15px;
   background-color: white;
   border-radius: 10px;
   box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
   height: auto;
   display: flex;
   flex-direction: column;
   gap: 20px;
 }

 .criar-email h2 {
   margin: 0;
 }

 .criar-email a {
   text-decoration: none;
   color: #fff;
   padding: 15px;
   border-radius: 10px;
   font-size: 24px;
   margin: 0;
   background-color: var(--cor1);
   transition: .5;
 }

 .criar-email a:hover {
   background-color: var(--cor3);
   color: #000;
   transition: .5;
 }

 @media screen and (min-width: 1200px) {
   .body {
     flex-direction: row;
   }

   .container {
     width: 400px;
     /* margin: 80px auto; */
     padding: 30px;
   }

   .container h2 {
     text-align: center;
     margin: 0 0 20px 0;
     font-size: 26px;
   }
 }

 @media screen and (max-width: 768px) {
   body {
     flex-direction: column;
   }

   .container h2 {
     text-align: center;
     margin-bottom: 20px;
     font-size: 32px;
   }
 }