/* ============================================================
   legal.css — dipakai di halaman kontak, syarat & ketentuan,
   dan kebijakan refund (tampilan artikel/prose + form kontak).
   ============================================================ */

.content-wrap{ max-width:820px; margin:0 auto; padding:8px 20px 60px; }
.card{
  background:#fff; border:1px solid var(--line); border-radius:var(--radius);
  
}

/* Prose (Syarat & Ketentuan, Kebijakan Refund) */
.prose h2{ font-family:'Fraunces', serif; font-size:18px; font-weight:600; color:var(--red-dark); margin:26px 0 10px; }
.prose h2:first-child{ margin-top:0; }
.prose p{ font-size:14.5px; margin-bottom:12px; }
.prose ul, .prose ol{ margin:0 0 12px 20px; font-size:14.5px; }
.prose li{ margin-bottom:6px; }
.prose strong{ font-weight:600; }
.section-num{
  display:inline-flex; align-items:center; justify-content:center;
  width:22px; height:22px; border-radius:6px;
  background:#FDF3EF; color:var(--red); font-size:12px; font-weight:700;
  margin-right:8px;
}
.prose a{ color:var(--red); font-weight:600; }

/* Form kontak */
.contact-grid{ display:grid; grid-template-columns:1.3fr 1fr; gap:18px; max-width:1080px; margin:0 auto; padding:8px 20px 60px; align-items:start; }
@media (max-width:860px){ .contact-grid{ grid-template-columns:1fr; } }

.field{ margin-bottom:18px; }
.field label{ display:block; font-size:13px; font-weight:600; margin-bottom:6px; color:var(--ink); }
.field textarea{
  width:100%; min-height:130px; resize:vertical;
  font-family:'Poppins',sans-serif; font-size:14px;
  padding:12px 13px; border-radius:11px; border:1.5px solid var(--line);
  background:#FBF7EE;
}
.field textarea:focus{ outline:2px solid var(--gold); outline-offset:1px; }
.field-error{ color:var(--red); font-size:12.5px; margin-top:5px; font-weight:500; }

.contact-submit{
  padding:12px 22px; border-radius:100px; border:none;
  background:var(--red); color:#fff; font-weight:700; font-size:14px; cursor:pointer;
}
.contact-submit:hover{ background:var(--red-dark); }

.alert-success{
  background:#F1F8EE; border:1.5px solid var(--green); color:#1e5c33;
  border-radius:12px; padding:13px 15px; font-size:13.5px; font-weight:500; margin-bottom:18px;
}

.side-title{ font-family:'Fraunces', serif; font-weight:600; font-size:19px; color:var(--red-dark); margin-bottom:5px; }
.side-sub{ color:var(--ink-soft); font-size:13.5px; margin-bottom:20px; }

.contact-item{ display:flex; gap:13px; align-items:flex-start; padding:14px 0; border-top:1px solid var(--line); }
.contact-item:first-of-type{ border-top:none; padding-top:0; }
.contact-item .icon{ width:36px; height:36px; flex:none; border-radius:10px; display:flex; align-items:center; justify-content:center; font-size:16px; }
.contact-item .icon.wa{ background:#EAF4E7; }
.contact-item .icon.mail{ background:#FDF3EF; }
.contact-item .icon.ig{ background:#FBF0DA; }
.contact-item h3{ font-size:13.5px; font-weight:600; margin-bottom:2px; }
.contact-item p{ font-size:13.5px; color:var(--ink-soft); }

.hours{ margin-top:20px; padding-top:18px; border-top:1px solid var(--line); font-size:12.5px; color:var(--ink-soft); }
.hours strong{ color:var(--ink); display:block; margin-bottom:4px; font-size:13.5px; }
