:root{
  --bby-red:#C8102E;
  --bby-gold:#D4AF37;
  --bby-black:#0a0a0a;
  --bby-ink:#222;
  --bby-muted:#6b7280;
  --bg:#f7f7f7;
  --card:#ffffff;
  --ring:rgba(200,16,46,.35);
  --ring-strong:rgba(200,16,46,.6);
  --grad:linear-gradient(135deg,var(--bby-red),var(--bby-gold));
}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{
  font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,"Helvetica Neue",Arial,"Apple Color Emoji","Segoe UI Emoji";
  color:var(--bby-ink); background:var(--bg);
  line-height:1.6;
}
.container{max-width:1100px;margin:0 auto;padding:0 20px}
.site-header{background:#fff;border-bottom:1px solid #eee;position:sticky;top:0;z-index:10}
.header-inner{display:flex;align-items:center;justify-content:space-between;height:64px}
.brand{display:flex;align-items:center;gap:.6rem;text-decoration:none;color:var(--bby-black);font-weight:700}
.brand-mark{display:inline-grid;place-items:center;width:36px;height:36px;border-radius:12px;background:var(--grad);color:#fff;font-size:18px;box-shadow:0 6px 20px rgba(0,0,0,.12)}
.brand-text{font-family:"Playfair Display",serif;font-size:20px;letter-spacing:.3px}
.nav a{color:#444;text-decoration:none;font-weight:600;margin-left:18px}
.nav a.active{color:var(--bby-red)}
.section{padding:64px 0}
.section-eyebrow{color:var(--bby-red);text-transform:uppercase;letter-spacing:.12em;font-weight:700;margin:0 0 6px}
.section-title{font-family:"Playfair Display",serif;font-size:40px;line-height:1.2;margin:0 0 10px}
.section-lead{max-width:820px;color:var(--bby-muted);font-size:18px;margin:0 0 36px}
.contact-container{display:grid;grid-template-columns:1fr 1.4fr;gap:28px}
@media (max-width: 900px){.contact-container{grid-template-columns:1fr}}
.card{background:var(--card);border:1px solid #eee;border-radius:18px;padding:24px;box-shadow:0 10px 30px rgba(0,0,0,.04)}
.card-title{font-size:20px;margin:0 0 16px;font-weight:800}
.card-sep{border:none;border-top:1px dashed #eee;margin:16px 0}
.contact-item{display:flex;gap:14px;align-items:flex-start;margin:14px 0}
.contact-icon{font-size:22px;line-height:1}
.contact-highlights{margin:0;padding-left:18px;color:#444}
.contact-highlights li{margin:8px 0}
/* Form */
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media (max-width:700px){.form-row{grid-template-columns:1fr}}
.form-group{margin-bottom:16px}
label{display:block;font-weight:700;margin:0 0 8px}
input,select,textarea{
  width:100%;padding:14px 14px;border:1.5px solid #ddd;border-radius:12px;background:#fff;font:inherit;
  transition:border .15s, box-shadow .15s;
}
textarea{resize:vertical}
input:focus,select:focus,textarea:focus{
  outline:none;border-color:var(--ring-strong);
  box-shadow:0 0 0 4px var(--ring);
}
.hp{position:absolute !important;left:-9999px !important;opacity:0 !important;height:0 !important;width:0 !important}
.error{color:#b00020;font-size:13px;min-height:18px;padding-top:4px}
.cta-button{
  width:100%;display:inline-flex;justify-content:center;align-items:center;gap:10px;
  padding:14px 18px;border:none;border-radius:14px;font-weight:800;cursor:pointer;
  background:var(--grad);color:#fff;transition:transform .05s ease, filter .15s ease; position:relative;
}
.cta-button:active{transform:translateY(1px)}
.btn-spinner{
  width:18px;height:18px;border-radius:50%;border:3px solid rgba(255,255,255,.55);border-top-color:#fff;
  animation:spin .9s linear infinite; display:none;
}
.cta-button.loading .btn-spinner{display:inline-block}
.cta-button.loading .btn-text{opacity:.7}
@keyframes spin{to{transform:rotate(360deg)}}
.policy-note{font-size:13px;color:#666;margin:12px 0 0;text-align:center}
.form-success,.form-error{text-align:center;padding:28px;border-radius:18px;border:1px solid #eee;background:#fff}
.form-success.hidden,.form-error.hidden{display:none}
.form-success h3{margin:.3rem 0 0;color:#198754}
.form-error h3{margin:.3rem 0 0;color:#b00020}
.big-emoji{font-size:52px;margin-bottom:6px}
.site-footer{padding:36px 0;border-top:1px solid #eee;color:#666;text-align:center;background:#fff}
