:root{
  --sand:#F4ECE1;
  --cream:#FAF6F0;
  --ink:#1C1612;
  --clay:#B4441A;
  --clay-dark:#9A3B14;
  --clay-deep:#6E2A0E;
}
.hero{padding-bottom:5.2rem}
.hero:after{z-index:0;height:3.25rem}
.hero > *{position:relative;z-index:1}
.hero-cta{position:relative;z-index:2}
.hero h1{line-height:1.04}
.brand-mark{width:36px;height:36px;border-radius:8px;flex-shrink:0}
.brand{align-items:center}
.offer-lead{color:#F4ECE1}
.legal-full{font-size:.75rem;color:#9B8F84}
.section-kicker{color:#9A3B14}
.offer .section-kicker{color:#E8A078}
.work{background:var(--cream)}
.work-grid{list-style:none;margin:1.25rem 0 0;padding:0;display:grid;gap:.7rem;grid-template-columns:1fr 1fr}
.work-grid img{width:100%;height:9.5rem;object-fit:cover;border-radius:12px;border:1px solid var(--line)}
@media(min-width:720px){
  .work-grid{grid-template-columns:1fr 1fr 1fr 1fr}
  .work-grid img{height:11rem}
}
@media(min-width:900px){
  .dock{display:none}
  body{padding-bottom:0}
  .topbar .btn-compact{min-height:44px}
}

#cta-toast{
  position:fixed;left:50%;bottom:1.25rem;transform:translateX(-50%) translateY(1rem);
  background:#1C1612;color:#F4ECE1;padding:.75rem 1.1rem;border-radius:999px;
  font-weight:600;font-size:.92rem;z-index:80;opacity:0;pointer-events:none;
  box-shadow:0 10px 28px rgba(28,22,18,.24);max-width:min(34rem,calc(100% - 2rem));
  text-align:center;transition:opacity .2s ease,transform .2s ease;
}
#cta-toast.show{opacity:1;transform:translateX(-50%) translateY(0)}
@media(min-width:900px){
  #cta-toast{bottom:1.5rem}
}

/* Prominent Google review CTA */
.btn-review{
  background:#0F7F88;
  color:#fff;
  border-color:#0B5F66;
  box-shadow:0 6px 0 #08454A;
}
.btn-review:hover{background:#0B5F66;border-color:#0B5F66;color:#fff}
.btn-review:active{transform:translateY(2px);box-shadow:0 4px 0 #08454A}
.btn-review.btn-compact{box-shadow:none}
.review-ask{
  background:var(--cream);
  text-align:left;
  border-top:1px solid rgba(28,22,18,.08);
  border-bottom:1px solid rgba(28,22,18,.08);
}
.review-ask p{margin:.7rem 0 0;color:var(--ink-soft);max-width:36rem}
.review-ask .btn-review{margin-top:1.15rem;max-width:28rem}
@media(min-width:720px){
  .review-ask{padding-top:2.5rem;padding-bottom:2.5rem}
}
