
  :root{
    --verde: #1F4A3E;
    --rose: #B4685E;
    --rose-claro: #D8A8A0;
    --dourado: #C99A4E;
    --creme: #FBF7F2;
    --creme-escuro: #F2E9E1;
    --texto: #3A3532;
  }
  *{ margin:0; padding:0; box-sizing:border-box; }
  body{
    font-family:'Jost', sans-serif; background:var(--creme-escuro); color:var(--texto);
    padding:50px 20px;
  }
  .card{
    max-width:720px; margin:0 auto; background:var(--creme); border-radius:8px;
    padding:56px 60px; box-shadow:0 20px 50px rgba(31,74,62,0.08);
  }
  .logo{ display:block; height:90px; margin:0 auto 8px; }
  h1{
    font-family:'Cormorant Garamond',serif; font-size:30px; color:var(--verde); font-weight:500;
    text-align:center; margin-bottom:8px;
  }
  .subtitle{
    text-align:center; font-size:14px; color:#7a7268; margin-bottom:16px; line-height:1.6;
  }
  .lgpd-note{
    font-size:12.5px; color:#8a8178; background:var(--creme-escuro); border-radius:4px;
    padding:14px 18px; margin-bottom:36px; line-height:1.6;
  }
  fieldset{ border:none; margin-bottom:34px; }
  legend{
    font-family:'Cormorant Garamond',serif; font-size:20px; color:var(--verde); font-weight:600;
    margin-bottom:18px; padding-bottom:8px; border-bottom:1px solid #E7DCD3; width:100%;
  }
  .row{ display:grid; grid-template-columns:1fr 1fr; gap:18px; margin-bottom:18px; }
  .row.three{ grid-template-columns:1fr 1fr 1fr; }
  .row.single{ grid-template-columns:1fr; }
  .field{ display:flex; flex-direction:column; gap:7px; }
  .field.full{ grid-column:1 / -1; }
  label{ font-size:12.5px; letter-spacing:0.8px; text-transform:uppercase; color:var(--verde); }
  label .opt{ color:#a49a90; text-transform:none; letter-spacing:0; font-size:11.5px; }
  input, select, textarea{
    font-family:'Jost',sans-serif; font-size:15px; padding:12px 14px; border:1px solid #D9CCC1;
    border-radius:3px; background:#fff; color:var(--texto); width:100%;
  }
  textarea{ resize:vertical; min-height:80px; }
  input:focus, select:focus, textarea:focus{ outline:none; border-color:var(--rose); }
  .radio-group, .check-group{ display:flex; flex-wrap:wrap; gap:10px 22px; margin-top:2px; }
  .radio-group label, .check-group label{
    display:flex; align-items:center; gap:7px; font-size:14.5px; text-transform:none;
    letter-spacing:0; color:var(--texto); cursor:pointer;
  }
  .radio-group input, .check-group input{ width:auto; accent-color:var(--verde); }
  input[type="file"]{ padding:9px; font-size:13.5px; }
  .submit-btn{
    width:100%; background:var(--verde); color:var(--creme); border:none; padding:17px;
    border-radius:3px; font-family:'Jost',sans-serif; font-size:14px; letter-spacing:2px;
    text-transform:uppercase; cursor:pointer; margin-top:8px; transition:background .2s;
  }
  .submit-btn:hover{ background:var(--rose); }
  .note{ text-align:center; font-size:12.5px; color:#a49a90; margin-top:16px; }
  .consent{ display:flex; gap:10px; align-items:flex-start; font-size:13px; color:#6b635c; margin-bottom:26px; }
  .consent input{ width:auto; margin-top:3px; accent-color:var(--verde); }
  .success-box{ text-align:center; padding:30px 0; }
  .success-box h2{ font-family:'Cormorant Garamond',serif; font-size:28px; color:var(--verde); margin-bottom:14px; }
  .success-box p{ font-size:15px; color:#6b635c; }
