/* Cuppa custom polish on top of Tailwind */
:root { scroll-behavior: smooth; }
body { -webkit-font-smoothing: antialiased; }

.font-display { font-family: 'Poppins', system-ui, sans-serif; }

.hero-gradient {
  background:
    radial-gradient(900px 400px at 80% -10%, color-mix(in srgb, var(--brand, #ff5e5b) 22%, transparent), transparent),
    radial-gradient(700px 360px at 0% 0%, #ffe9d6, transparent);
}

/* Photo hero (landing page) — landscape image, figure on the LEFT. */
.hero-photo {
  background-image: url('/hero.jpg');
  background-size: cover;
  background-position: left center;
  background-repeat: no-repeat;
}
/* Mobile: light cream wash over the whole image so centered text stays legible. */
.hero-photo-overlay {
  background: linear-gradient(
    180deg,
    rgba(255, 248, 240, 0.88) 0%,
    rgba(255, 248, 240, 0.74) 50%,
    rgba(255, 248, 240, 0.90) 100%
  );
}
@media (min-width: 768px) {
  /* Text lives in the right-hand cream space; fade from transparent on the left
     (over the figure) to near-opaque cream on the right (behind the text). */
  .hero-photo-overlay {
    background: linear-gradient(
      90deg,
      rgba(255, 248, 240, 0) 0%,
      rgba(255, 248, 240, 0.05) 22%,
      rgba(255, 248, 240, 0.45) 44%,
      rgba(255, 248, 240, 0.92) 66%,
      rgba(255, 248, 240, 0.97) 100%
    );
  }
}

.coffee-btn { transition: transform .08s ease, box-shadow .2s ease; }
.coffee-btn:active { transform: translateY(1px) scale(.99); }

.tier-card { transition: border-color .15s ease, transform .15s ease; }
.tier-card:hover { transform: translateY(-2px); }

.locked-post { position: relative; }
.locked-post .locked-body {
  filter: blur(6px); user-select: none; pointer-events: none; max-height: 7rem; overflow: hidden;
}
.locked-overlay {
  position: absolute; inset: 0; display: grid; place-items: center;
  background: linear-gradient(180deg, transparent, rgba(255,248,240,.92) 70%);
}

.prose-cuppa a { color: var(--brand, #ff5e5b); text-decoration: underline; }
