
.pptrf-box{
  --pptrf-gold:#c99432;
  --pptrf-dark:#2a1b12;
  --pptrf-border:#e2d4c2;
  --pptrf-bg:#fffaf3;
  margin:34px 0;
  padding:28px;
  border:1px solid var(--pptrf-border);
  border-radius:12px;
  background:var(--pptrf-bg);
  box-shadow:0 12px 35px rgba(62,38,18,.05);
}
.pptrf-kicker{
  margin-bottom:8px;
  color:#a8751e;
  font-size:12px;
  font-weight:800;
  letter-spacing:.14em;
}
.pptrf-box h2{
  margin:0 0 10px;
  color:var(--pptrf-dark);
}
.pptrf-box p{
  margin-top:0;
}
.pptrf-short-head{
  display:grid;
  grid-template-columns:minmax(0,1fr) 280px;
  gap:24px;
  align-items:start;
}
.pptrf-mini-note{
  padding:14px 16px;
  border-left:3px solid var(--pptrf-gold);
  background:#fff;
  font-size:14px;
  line-height:1.5;
}
.pptrf-form{
  margin-top:22px;
}
.pptrf-grid{
  display:grid;
  gap:16px;
}
.pptrf-grid-4{
  grid-template-columns:repeat(4,minmax(0,1fr));
}
.pptrf-grid-3{
  grid-template-columns:repeat(3,minmax(0,1fr));
}
.pptrf-grid-upload{
  grid-template-columns:minmax(0,1fr) auto;
  align-items:end;
  margin-top:16px;
}
.pptrf-field{
  display:flex;
  flex-direction:column;
  gap:7px;
  margin:0;
}
.pptrf-field>span,
.pptrf-section-title{
  font-weight:700;
  color:#4a3527;
}
.pptrf-field input,
.pptrf-field select,
.pptrf-field textarea{
  box-sizing:border-box;
  width:100%;
  min-height:46px;
  padding:10px 12px;
  border:1px solid #d8c8b4;
  border-radius:7px;
  background:#fff;
  color:#2b2119;
  font:inherit;
}
.pptrf-field textarea{
  min-height:110px;
  resize:vertical;
}
.pptrf-field input:focus,
.pptrf-field select:focus,
.pptrf-field textarea:focus{
  outline:none;
  border-color:var(--pptrf-gold);
  box-shadow:0 0 0 3px rgba(201,148,50,.12);
}
.pptrf-field small{
  color:#806f61;
  font-size:12px;
}
.pptrf-upload input[type=file]{
  padding:8px;
}
.pptrf-actions{
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:10px;
}
.pptrf-submit{
  min-height:48px;
  padding:0 22px;
  border:0;
  border-radius:6px;
  background:var(--pptrf-gold);
  color:#20140c;
  font-weight:800;
  font-size:15px;
  cursor:pointer;
}
.pptrf-submit:hover{
  filter:brightness(.96);
}
.pptrf-details-link{
  color:#8b611d;
  font-size:13px;
  text-decoration:none;
}
.pptrf-section-title{
  margin:24px 0 12px;
  padding-top:18px;
  border-top:1px solid #eadfce;
}
.pptrf-section-title:first-of-type{
  margin-top:10px;
}
.pptrf-details{
  margin:22px 0;
  border:1px solid #e0d1bd;
  border-radius:7px;
  background:#fff;
}
.pptrf-details summary{
  padding:14px 16px;
  cursor:pointer;
  font-weight:700;
}
.pptrf-check-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px 16px;
  padding:0 16px 16px;
}
.pptrf-check-grid label{
  display:flex;
  gap:8px;
  align-items:flex-start;
}
.pptrf-wide{
  margin-top:16px;
}
.pptrf-bottom{
  display:flex;
  justify-content:space-between;
  gap:18px;
  align-items:center;
  margin-top:20px;
}
.pptrf-privacy{
  color:#756559;
  font-size:12px;
}
.pptrf-notice{
  margin:14px 0;
  padding:12px 14px;
  border-radius:6px;
}
.pptrf-success{
  border:1px solid #b9d9b5;
  background:#eff8ed;
}
.pptrf-error{
  border:1px solid #e3b5ad;
  background:#fff0ed;
}
.pptrf-hp{
  position:absolute!important;
  left:-9999px!important;
  width:1px!important;
  height:1px!important;
  overflow:hidden!important;
}
@media(max-width:900px){
  .pptrf-grid-4,
  .pptrf-grid-3{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .pptrf-short-head{
    grid-template-columns:1fr;
  }
}
@media(max-width:640px){
  .pptrf-box{
    margin:24px 0;
    padding:20px 16px;
    border-radius:9px;
  }
  .pptrf-grid-4,
  .pptrf-grid-3,
  .pptrf-grid-upload,
  .pptrf-check-grid{
    grid-template-columns:1fr;
  }
  .pptrf-actions{
    align-items:stretch;
  }
  .pptrf-submit{
    width:100%;
  }
  .pptrf-bottom{
    flex-direction:column;
    align-items:stretch;
  }
}
