
:root{
  --bccp3-brown:#60392e;
  --bccp3-pink:#d85e8f;
  --bccp3-pink-dark:#b83f71;
  --bccp3-cream:#fff8f3;
  --bccp3-border:#ead9d1;
  --bccp3-text:#4b2d25;
}
.bccp3-wrap{max-width:920px;margin:30px auto;padding:0 16px;color:var(--bccp3-text)}
.bccp3-hero{padding:28px;border-radius:22px;background:linear-gradient(135deg,#fff1f6,#f3e2d8);text-align:center}
.bccp3-kicker{margin:0;color:var(--bccp3-pink-dark);font-weight:900;letter-spacing:.14em;text-transform:uppercase;font-size:.75rem}
.bccp3-hero h1{margin:8px 0;color:var(--bccp3-brown);font-size:clamp(2rem,5vw,3.5rem)}
.bccp3-hero p{max-width:700px;margin:0 auto;line-height:1.7}
.bccp3-form{margin-top:20px;padding:26px;border:1px solid var(--bccp3-border);border-radius:20px;background:#fff;box-shadow:0 14px 40px rgba(75,44,34,.08)}
.bccp3-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}
.bccp3-form label{display:block;margin:14px 0;font-weight:800}
.bccp3-form input,.bccp3-form select,.bccp3-form textarea{width:100%;box-sizing:border-box;margin-top:6px;padding:12px;border:1px solid #cdb5aa;border-radius:10px;background:#fff}
.bccp3-extras{margin:18px 0;padding:16px;border:1px solid var(--bccp3-border);border-radius:14px}
.bccp3-extras legend{padding:0 8px;color:var(--bccp3-brown);font-weight:900}
.bccp3-extras label{display:inline-flex;align-items:center;gap:8px;margin:7px 16px 7px 0;font-weight:700}
.bccp3-extras input,.bccp3-terms input{width:auto;margin:0}
.bccp3-terms{display:flex!important;align-items:flex-start;gap:10px;line-height:1.5}
.bccp3-submit{width:100%;padding:15px;border:0;border-radius:999px;background:var(--bccp3-pink);color:#fff;font-weight:900;font-size:1rem;cursor:pointer}
.bccp3-submit:hover{background:var(--bccp3-pink-dark)}
.bccp3-submit:disabled{opacity:.65;cursor:wait}
.bccp3-error{display:none;margin:15px 0;padding:12px;border:1px solid #d79b9b;border-radius:10px;background:#fff0f0;color:#8a1e1e;font-weight:800}
.bccp3-notice{margin:16px 0;padding:13px;border-radius:10px;background:#fff2d7;color:#775600}
.bccp3-confirmation{max-width:650px;margin:60px auto;padding:36px 22px;border:1px solid var(--bccp3-border);border-radius:24px;background:var(--bccp3-cream);text-align:center;color:var(--bccp3-text)}
.bccp3-confirmation>span{display:inline-grid;place-items:center;width:64px;height:64px;border-radius:50%;background:#e5f7eb;color:#27733e;font-size:2rem;font-weight:900}
.bccp3-confirmation h1{color:var(--bccp3-brown)}
@media(max-width:700px){.bccp3-grid{grid-template-columns:1fr}.bccp3-form{padding:20px}}
