/* fb-landing.css — branded paid-traffic landing pages. Mobile-first. */
:root{ --gold:#c9a84c; --gold-dark:#b8943a; --ink:#1a2b4a; --grey:#f8f9fa; --line:#e7e3da; }
*{ box-sizing:border-box; }
body.fblp{ margin:0; font-family:'Raleway',-apple-system,Segoe UI,Roboto,Arial,sans-serif; color:#2a2a2a; background:#fff; -webkit-font-smoothing:antialiased; }
img{ max-width:100%; }

/* top bar */
.fblp-topbar{ border-bottom:1px solid var(--line); background:#fff; }
.fblp-topbar-in{ max-width:1060px; margin:0 auto; padding:14px 20px; display:flex; align-items:baseline; gap:14px; flex-wrap:wrap; }
.fblp-logo{ font-family:'Cormorant Garamond',serif; font-size:22px; font-weight:700; color:var(--ink); letter-spacing:.2px; }
.fblp-broker{ font-size:11px; letter-spacing:.08em; text-transform:uppercase; color:#8a8f98; }

.fblp-wrap{ max-width:1060px; margin:0 auto; padding:0 20px; }

/* hero */
.fblp-hero{ padding:30px 0 18px; display:grid; gap:28px; grid-template-columns:1fr; }
.fblp-badges{ display:flex; gap:8px; flex-wrap:wrap; margin-bottom:14px; }
.fblp-badges span{ font-size:11px; font-weight:700; letter-spacing:.04em; text-transform:uppercase; color:var(--gold-dark); background:#faf6ec; border:1px solid #efe3c6; border-radius:20px; padding:5px 11px; }
.fblp-h1{ font-family:'Cormorant Garamond',serif; font-size:30px; line-height:1.14; color:var(--ink); margin:0 0 10px; font-weight:700; }
.fblp-sub{ font-size:16px; color:#444; margin:0 0 20px; line-height:1.5; }

/* form card */
.fblp-card{ background:var(--grey); border:1px solid var(--line); border-radius:14px; padding:20px; }
.fblp-form{ display:flex; flex-direction:column; }
.fblp-input{ width:100%; padding:13px 14px; font-size:16px; font-family:inherit; border:1.5px solid #d6d2c8; border-radius:9px; margin-bottom:11px; background:#fff; }
.fblp-input:focus{ outline:none; border-color:var(--gold); }
.fblp-btn{ width:100%; padding:15px; font-size:16px; font-weight:800; letter-spacing:.02em; color:#fff; background:var(--gold); border:none; border-radius:9px; cursor:pointer; transition:background .15s; }
.fblp-btn:hover{ background:var(--gold-dark); }
.fblp-btn:disabled{ opacity:.6; cursor:default; }
.fblp-err{ color:#b91c1c; font-size:14px; margin-top:9px; }
.fblp-fine{ font-size:12px; color:#7a7f87; margin:11px 0 0; line-height:1.5; }
.fblp-hp{ position:absolute; left:-9999px; width:1px; height:1px; opacity:0; }

/* 2-step capture: step 1 = address/name/email, step 2 = optional phone */
.fblp-step[hidden]{ display:none !important; }
.fblp-step{ display:flex; flex-direction:column; }
.fblp-step2-lede{ font-size:14px; line-height:1.5; color:#3a3f47; margin:0 0 13px; }
.fblp-step2-lede strong{ color:var(--ink); }
.fblp-skip{ display:block; width:100%; margin:10px 0 0; padding:6px; background:none; border:none; color:#7a7f87; font-family:inherit; font-size:13px; text-decoration:underline; cursor:pointer; }
.fblp-skip:hover{ color:var(--ink); }
.fblp-skip:disabled{ opacity:.6; cursor:default; }

/* report preview — booklet */
.fblp-preview{ display:flex; flex-direction:column; align-items:center; }
.fblp-booklet{ position:relative; width:100%; max-width:312px; margin:8px auto 0; }
.fblp-booklet-badge{ position:absolute; top:-11px; right:-5px; z-index:5; font-size:10px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; color:#fff; background:var(--gold-dark); border-radius:5px; padding:4px 9px; box-shadow:0 5px 12px -4px rgba(184,148,58,.75); }
.fblp-booklet-stack{ position:relative; }
.fblp-booklet-stack::before, .fblp-booklet-stack::after{ content:''; position:absolute; inset:0; background:#fbfbf9; border:1px solid var(--line); border-radius:10px; }
.fblp-booklet-stack::after{ transform:translate(7px,6px) rotate(1.5deg); z-index:0; }
.fblp-booklet-stack::before{ transform:translate(3px,3px) rotate(.7deg); z-index:1; }
.fblp-booklet-img{ position:relative; z-index:2; display:block; width:100%; border-radius:10px; border:1px solid var(--line); box-shadow:0 26px 56px -20px rgba(26,43,74,.62); }
.fblp-preview-cap{ font-size:13px; color:#7a7f87; text-align:center; margin:18px 0 0; max-width:312px; }

/* about */
.fblp-about{ display:flex; flex-direction:column; align-items:center; text-align:center; gap:18px; padding:36px 0; border-top:1px solid var(--line); margin-top:14px; }
.fblp-shot{ width:168px; height:206px; object-fit:cover; object-position:top center; flex:0 0 auto; border-radius:14px; border:1px solid var(--line); box-shadow:0 16px 38px -16px rgba(26,43,74,.55); }
.fblp-h2{ font-family:'Cormorant Garamond',serif; font-size:24px; font-weight:700; color:var(--ink); margin:0 0 10px; }
.fblp-about-copy p{ font-size:15px; line-height:1.62; color:#3a3f47; margin:0; }
@media(min-width:640px){
  .fblp-about{ flex-direction:row; align-items:flex-start; text-align:left; gap:26px; }
  .fblp-shot{ width:190px; height:232px; }
}

/* timing funnel form (existing wts-form) restyled to match */
.fblp .wts-gate[hidden]{ display:none !important; }
.fblp .wts-gate{ display:flex; flex-direction:column; }
.fblp .wts-hidden-select{ display:none !important; }
.fblp .wts-gate-next{ width:100% !important; }
.fblp .wts-form-card{ background:transparent !important; }
.fblp .wts-form{ display:flex !important; flex-direction:column !important; }
.fblp .wts-form input, .fblp .wts-form select{ width:100% !important; padding:13px 14px !important; font-size:16px !important; font-family:inherit !important; color:#2a2a2a !important; border:1.5px solid #d6d2c8 !important; border-radius:9px !important; margin:0 0 11px !important; background:#fff !important; box-sizing:border-box !important; }
.fblp .wts-form input:focus, .fblp .wts-form select:focus{ outline:none !important; border-color:var(--gold) !important; }
.fblp .wts-form .ccap-hp, .fblp .wts-form .wts-hp{ display:none !important; }
.fblp .wts-btn{ width:100% !important; padding:15px !important; font-size:16px !important; font-weight:800 !important; letter-spacing:.02em !important; color:#fff !important; background:var(--gold) !important; border:none !important; border-radius:9px !important; cursor:pointer !important; }
.fblp .wts-btn:hover{ background:var(--gold-dark) !important; }
.fblp .ccap-micro, .fblp .ccap-msg{ font-size:12px !important; color:#7a7f87 !important; margin-top:10px !important; }

/* reviews */
.fblp-reviews{ padding:30px 0 10px; border-top:1px solid var(--line); }
.fblp-review-grid{ display:grid; gap:16px; grid-template-columns:1fr; margin-top:16px; }
.fblp-review{ background:var(--grey); border:1px solid var(--line); border-radius:12px; padding:18px; }
.fblp-stars{ color:var(--gold); font-size:15px; letter-spacing:2px; margin-bottom:8px; }
.fblp-review-body{ font-size:14px; line-height:1.55; color:#3a3f47; margin:0 0 10px; }
.fblp-review-name{ font-size:13px; font-weight:700; color:var(--ink); }
.fblp-review-name span{ font-weight:500; color:#7a7f87; }

/* what's inside the report (timing) */
.fblp-inside{ padding:38px 0 10px; border-top:1px solid var(--line); }
.fblp-inside-h2{ text-align:center; }
.fblp-inside-lede{ text-align:center; font-size:14.5px; color:#6c727b; max-width:560px; margin:0 auto 28px; line-height:1.55; }
.fblp-inside-grid{ display:grid; gap:28px 24px; grid-template-columns:1fr; }
.fblp-inside-item{ text-align:center; }
.fblp-inside-num{ display:inline-flex; align-items:center; justify-content:center; width:52px; height:52px; border-radius:50%;
  background:var(--ink); color:#fff; font-family:'Cormorant Garamond',serif; font-size:25px; font-weight:700; margin-bottom:12px;
  border:2px solid var(--gold); }
.fblp-inside-item h3{ font-size:15px; font-weight:800; color:var(--ink); margin:0 0 6px; line-height:1.32; max-width:300px; margin-left:auto; margin-right:auto; }
.fblp-inside-item p{ font-size:14px; color:#555; line-height:1.55; margin:0 auto; max-width:320px; }
.fblp-inside-cta{ display:block; width:max-content; max-width:92%; margin:32px auto 8px; background:var(--gold); color:#fff;
  font-size:16px; font-weight:800; letter-spacing:.02em; text-decoration:none; padding:15px 42px; border-radius:9px; }
.fblp-inside-cta:hover{ background:var(--gold-dark); }
@media(min-width:760px){ .fblp-inside-grid{ grid-template-columns:repeat(3,1fr); gap:34px 26px; } }

/* footer — SR branded */
.fblp-foot{ background:#0a0a0a; color:#cdd3dd; text-align:center; padding:34px 20px 40px; margin-top:34px; }
.fblp-foot-brand{ font-family:'Cormorant Garamond',serif; font-size:26px; font-weight:700; color:#fff; letter-spacing:.4px; }
.fblp-foot-sub{ font-size:11px; letter-spacing:.18em; text-transform:uppercase; color:var(--gold); margin:4px 0 16px; }
.fblp-foot-links{ display:flex; flex-wrap:wrap; gap:8px 0; justify-content:center; align-items:center; font-size:13px; max-width:640px; margin:0 auto; }
.fblp-foot-links a{ color:#e7e3da; text-decoration:none; padding:2px 14px; border-right:1px solid rgba(255,255,255,.18); }
.fblp-foot-links a:last-child{ border-right:none; }
.fblp-foot-links a:hover{ color:var(--gold); }
.fblp-foot-fine{ font-size:12px; color:#8a93a3; margin-top:16px; }

@media(min-width:860px){
  .fblp-hero{ grid-template-columns:1.05fr .95fr; align-items:start; padding-top:42px; }
  .fblp-h1{ font-size:38px; }
  .fblp-review-grid{ grid-template-columns:repeat(3,1fr); }
  .fblp-preview-frame{ max-width:380px; margin-top:6px; }
}
