@tailwind base;
@tailwind components;
@tailwind utilities;

:root { color-scheme: light; }
html { scroll-behavior: smooth; }
body { @apply bg-cream text-ink antialiased; }
::selection { background: #ead0cc; color: #2f2826; }
.eyebrow { @apply text-[.72rem] font-semibold uppercase tracking-[.24em] text-rose; }
.display { @apply font-serif text-4xl leading-[1.04] tracking-[-.035em] sm:text-5xl lg:text-6xl; }
.section { @apply px-5 py-20 sm:px-8 lg:px-12 lg:py-28; }
.shell { @apply mx-auto max-w-7xl; }
.btn { @apply inline-flex min-h-12 items-center justify-center rounded-full px-6 text-sm font-semibold tracking-wide transition focus:outline-none focus:ring-2 focus:ring-rose focus:ring-offset-2; }
.btn-dark { @apply btn bg-ink text-white hover:-translate-y-0.5 hover:bg-rose; }
.btn-light { @apply btn border border-ink/15 bg-white/80 text-ink hover:border-rose/40 hover:bg-white; }
.card { @apply rounded-[2rem] border border-ink/10 bg-white shadow-soft; }
.field { @apply w-full rounded-2xl border border-ink/15 bg-white px-4 py-3.5 text-base outline-none transition placeholder:text-ink/35 focus:border-rose focus:ring-2 focus:ring-rose/15; }
@keyframes rise { from { opacity: 0; transform: translateY(14px); } to { opacity: 1; transform: translateY(0); } }
.rise { animation: rise .65s ease both; }
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { scroll-behavior: auto !important; animation: none !important; transition: none !important; } }
