.fpof-wrap{max-width:760px;margin:0 auto;background:#fff;border:1px solid #eee;border-radius:14px;padding:10px}
.fpof-wrap h3{margin:6px 0 12px 0}
.fpof-section{margin-bottom:18px}

/* Label asas */
.fpof-section label{
  display:block;
  margin-bottom:10px;
  font-weight:700;
  font-size:1rem;
}

/* Input/textarea/select */
.fpof-section input[type="text"],
.fpof-section input[type="tel"],
.fpof-section input[type="email"],
.fpof-section textarea,
.fpof-section select{
  width:100%;
  padding:5px 15px;
  border:1px solid #ddd;
  border-radius:10px;
  font-size:1rem;
  height:2.5em;
  font-weight:400;
  box-sizing:border-box;
  background-color: #eaeef38f;
}

/* Textarea lebih tinggi */
.fpof-section textarea{
  height:100px;
  line-height:1.5;
}

.fpof-checkbox,.fpof-radio{display:block;margin:8px 0}

.fpof-grid-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px}
@media (max-width:640px){.fpof-grid-3{grid-template-columns:1fr}}
.fpof-packages{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px}
@media (max-width:840px){.fpof-packages{grid-template-columns:1fr}}
.fpof-card{display:block;border:1px solid #e4e4e4;border-radius:14px;padding:10px;cursor:pointer}
.fpof-card input{display:none}
.fpof-card-body{display:flex;flex-direction:column;gap:6px}
.fpof-card-title{font-size:15px}
.fpof-card-prices{display:flex;gap:8px;align-items:baseline}
.fpof-price{font-weight:700}
.fpof-price-promo{font-weight:800}
.fpof-price-strike{text-decoration:line-through;color:#888}
.fpof-card input:checked + .fpof-card-body{outline:2px solid #111;border-radius:10px;padding:8px}
.fpof-summary{border-top:1px dashed #ddd;padding-top:10px;margin-top:8px;display:grid;gap:6px}
.fpof-summary .fpof-total{font-weight:800;font-size:18px}
.fpof-actions{margin-top:12px}
.fpof-btn{width:100%;padding:14px;border:none;border-radius:12px;background:#ee4d2d;color:#fff;font-weight:800;cursor:pointer}
.fpof-btn:hover{background:#db3315}
.fpof-msg{margin-top:10px;font-size:14px}
.fpof-msg.error{color:#ff0000}
.fpof-hidden{display:none}

/* Placeholder & thanks box */
.fpof-placeholder,.fpof-thanks{
  border:1px solid #eee;background:#fafafa;padding:16px;border-radius:10px;
}

/* ====== RADIO LIST (pilihan pakej) ====== */
.fpof-packages-list{display:grid;gap:2px}

/* Buang height tetap; guna align-items:center supaya radio & teks betul-betul center */
.fpof-option{
  display:flex;
  align-items:center;
  gap:10px;
  padding:6px 12px;
  margin-top:4px !important;
  margin-bottom:4px !important;
  border:1px dashed #286b86;
  border-radius:10px;
  color:#286b86;
  font-size:.85rem !important;
  line-height:1.25;              /* pastikan teks tak terlalu rapat */
  font-weight:600 !important;
}

/* Reset margin default radio + pampasan selepas scale supaya sejajar vertikal */
.fpof-option input[type="radio"]{
  margin:0;                      /* reset margin lalai browser */
  transform:translateY(1px) scale(1.1);
  flex:0 0 auto;                 /* jangan regangkan radio */
  align-self:center;             /* pastikan center dalam flex */
}

/* Teks sebelah radio */
.fpof-option span{line-height:1.25;display:inline-block}

#fpof_email_group.fpof-hidden{display:none !important}

/* Logo FPX */
.fpof-fpx-logo{vertical-align:middle;max-height:22px;padding-bottom:4px}

/* Placeholder warna */
.fpof-wrap input::placeholder,
.fpof-wrap textarea::placeholder{color:#ccc;opacity:1}

/* Heading h2 + garis tengah */
.fpof-section h2{
  text-align:center;
  position:relative;
  padding-bottom:15px;
  margin-bottom:25px;
}
.fpof-section h2::after{
  content:'';
  position:absolute;
  display:block;
  width:80px;height:2px;background-color:#e0e0e0;
  bottom:0;left:50%;transform:translateX(-50%);
}

/* Heading h3 */
.fpof-section h3{font-size:1.5rem !important;font-weight:700 !important}

/* Label teks checkbox emel */
.fpof-nakmail{color:#56565f;font-size:.9rem !important;font-weight:400 !important}
