
.hero-form .hero-main img,
.hero-form .hero-small img,
.hero-form .mini-card img{
  object-fit:contain;
}
.hero-visual-single{
  border:1px solid rgba(255,255,255,.5);
  background:rgba(255,255,255,.45);
  backdrop-filter:blur(8px);
  border-radius:36px;
  padding:20px;
  box-shadow:0 30px 80px rgba(15,23,42,.12);
}
.hero-visual-single img{
  width:100%;
  min-height:520px;
  object-fit:cover;
  border-radius:28px;
  box-shadow:0 20px 40px rgba(15,23,42,.12);
}
.form-section{padding:24px 0 96px;}
.form-layout{display:grid;grid-template-columns:1.15fr .85fr;gap:24px;}
.form-card,.summary-card{border:1px solid var(--line);background:#fff;border-radius:32px;box-shadow:var(--shadow);padding:28px;}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;}
.field{display:flex;flex-direction:column;gap:8px;}
.field.full{grid-column:1 / -1;}
label{font-size:14px;font-weight:700;color:#334155;}
input,select,textarea{width:100%;border:1px solid #cbd5e1;background:#fff;border-radius:16px;padding:14px 16px;font:inherit;color:#0f172a;outline:none;transition:border-color .2s ease, box-shadow .2s ease;}
input:focus,select:focus,textarea:focus{border-color:#8eaa28;box-shadow:0 0 0 4px rgba(142,170,40,.12);}
input:disabled,select:disabled{background:#f8fafc;color:#94a3b8;}
small{color:#64748b;line-height:1.5;}
.checkbox{display:flex;align-items:flex-start;gap:10px;font-weight:600;}
.checkbox input{width:18px;height:18px;margin-top:2px;}
.checkbox-field{justify-content:flex-end;}
.form-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:24px;}
.message{margin-top:18px;padding:14px 16px;border-radius:16px;font-weight:600;}
.message.error{background:#fef2f2;color:#991b1b;border:1px solid #fecaca;}
.message.success{background:#f0fdf4;color:#166534;border:1px solid #bbf7d0;}
.summary-card h3{margin:8px 0 18px;font-size:28px;line-height:1.15;}
.summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;}
.summary-grid div{border:1px solid var(--line);background:#f8fafc;border-radius:18px;padding:14px;}
.summary-grid span{display:block;font-size:12px;text-transform:uppercase;letter-spacing:.12em;color:#94a3b8;}
.summary-grid strong{display:block;margin-top:8px;color:#0f172a;}
#generatedText{margin-top:20px;min-height:280px;resize:vertical;background:#f8fafc;}
.note{margin:18px 0 0;padding:14px 16px;border-radius:18px;background:#f8fafc;color:#475569;border:1px solid var(--line);}
@media (max-width:1100px){.form-layout{grid-template-columns:1fr;}}
@media (max-width:760px){
  .form-grid,.summary-grid{grid-template-columns:1fr;}
  .hero-visual-single img{min-height:280px;}
}
