/* Fast Brick Offers v2 — warm paper + berry (not BR navy/orange, not charcoal/lime) */
:root{
  --bg:#f6f1ea;
  --bg-deep:#efe7db;
  --card:#fffdf9;
  --ink:#1c1917;
  --muted:#5c5650;
  --berry:#b4234a;
  --berry-d:#8f1a3a;
  --line:#e2d8cc;
  --danger:#b4234a;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:"Nunito Sans",system-ui,sans-serif;
  color:var(--ink);
  background:var(--bg);
  line-height:1.6;
  font-size:17px;
}
.wrap{
  max-width:720px;
  margin:0 auto;
  padding:0 20px;
}
.wrap-wide{
  max-width:720px;
  margin:0 auto;
  padding:0 20px;
}

/* Header — compact bar, same reading column */
.top{
  background:var(--card);
  border-bottom:1px solid var(--line);
}
.top .wrap{
  display:flex;
  justify-content:space-between;
  align-items:center;
  height:64px;
  gap:12px;
}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink);min-width:0}
.brand img{height:40px;width:auto;display:block;border-radius:5px;flex-shrink:0}
.brand .word{
  font-family:Fraunces,Georgia,serif;
  font-weight:700;
  font-size:1.05rem;
  letter-spacing:-.02em;
  line-height:1.15;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.brand .word em{font-style:italic;color:var(--berry);font-weight:600}

.btn{
  display:inline-block;
  background:var(--berry);
  color:#fff;
  font-family:"Nunito Sans",system-ui,sans-serif;
  font-weight:700;
  padding:12px 20px;
  border-radius:8px;
  border:0;
  text-decoration:none;
  font-size:.95rem;
  cursor:pointer;
  transition:background .15s ease;
}
.btn:hover{background:var(--berry-d)}
.btn.sm{padding:8px 14px;font-size:.85rem;flex-shrink:0}

/* Hero — single column, natural type size */
.hero{padding:48px 0 28px}
.eyebrow{
  font-family:"Nunito Sans",sans-serif;
  font-weight:700;
  font-size:.75rem;
  letter-spacing:.1em;
  text-transform:uppercase;
  color:var(--berry);
  margin:0 0 12px;
}
h1{
  font-family:Fraunces,Georgia,serif;
  font-weight:700;
  font-size:clamp(1.85rem, 4.2vw, 2.45rem);
  line-height:1.18;
  margin:0 0 16px;
  letter-spacing:-.02em;
  max-width:22ch;
}
.lead{
  font-size:1.05rem;
  color:var(--muted);
  max-width:38em;
  margin:0 0 24px;
}
.hero-actions{margin:0}

/* Drop the stretchy aside / stud grid — reading column only */
.hero-grid{display:block}
.hero-aside{display:none}

/* Points — stacked list at same width */
.points{padding:8px 0 12px}
.points-head{
  font-weight:700;
  font-size:.75rem;
  letter-spacing:.1em;
  text-transform:uppercase;
  color:var(--muted);
  margin:0 0 14px;
}
.points ul{
  list-style:none;
  padding:0;
  margin:0;
  display:flex;
  flex-direction:column;
  gap:10px;
}
.points li{
  display:grid;
  grid-template-columns:auto 1fr;
  gap:14px;
  align-items:start;
  padding:16px 18px;
  border-radius:12px;
  background:var(--card);
  border:1px solid var(--line);
}
.points .n{
  font-family:Fraunces,Georgia,serif;
  font-weight:700;
  font-size:.95rem;
  color:#fff;
  background:var(--berry);
  width:32px;height:32px;
  border-radius:8px;
  display:grid;place-items:center;
}
.points strong{
  font-family:Fraunces,Georgia,serif;
  font-weight:650;
  display:inline;
  margin-right:.25em;
}
.points li span{color:var(--muted)}

/* Form — same column width, not full-bleed card */
.formwrap{
  margin:28px auto 20px;
  background:var(--card);
  border:1px solid var(--line);
  border-radius:14px;
  padding:24px 20px 28px;
}
.formwrap h2{
  font-family:Fraunces,Georgia,serif;
  font-weight:700;
  font-size:1.45rem;
  margin:0 0 8px;
  letter-spacing:-.02em;
}
.formwrap > p{color:var(--muted);margin:0 0 20px}
form label{display:block;font-weight:700;font-size:.88rem;margin-bottom:14px;color:var(--ink)}
input,textarea{
  width:100%;
  margin-top:6px;
  padding:11px 12px;
  font:inherit;
  border:1.5px solid var(--line);
  border-radius:8px;
  background:#fff;
  color:var(--ink);
}
input:focus,textarea:focus{
  outline:none;
  border-color:var(--berry);
  box-shadow:0 0 0 3px rgba(180,35,74,.18);
}
.grid{display:grid;gap:0 14px}
.err{color:var(--danger);font-weight:600;font-size:.85rem}
.hp{position:absolute;left:-9999px}
.fine{font-size:.8rem;color:var(--muted)}
.formwrap .btn{margin-top:4px}
.formwrap .fine{margin-top:12px}

footer{
  padding:28px 0 40px;
  color:var(--muted);
  font-size:.88rem;
  border-top:1px solid var(--line);
  margin-top:24px;
  background:var(--bg-deep);
}
footer .fine{color:#7a736b}

@media(min-width:560px){
  .grid{grid-template-columns:1fr 1fr}
  .formwrap{padding:28px 28px 32px}
  .hero{padding:56px 0 32px}
}
