:root{--color-bg:#faf8f5;--color-bg-alt:#f1ece6;--color-ink:#2c2f3a;--color-ink-soft:#5b5f6e;--color-coral:#f4978e;--color-coral-deep:#e2645a;--color-line:#e3ddd5;--color-surface:#fff;--font-display:"Space Grotesk", "Helvetica Neue", sans-serif;--font-body:"Inter", system-ui, sans-serif;--container:1080px;--radius:14px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:var(--font-body);color:var(--color-ink);background:var(--color-bg);-webkit-font-smoothing:antialiased;margin:0;line-height:1.6}h1,h2,h3,h4{font-family:var(--font-display);letter-spacing:-.01em;margin:0;font-weight:600;line-height:1.15}p{margin:0}a{color:inherit}img{max-width:100%;display:block}button{font-family:inherit}a:focus-visible,button:focus-visible{outline:2px solid var(--color-coral-deep);outline-offset:3px;border-radius:4px}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition-duration:.01ms!important;animation-duration:.01ms!important}}.container{max-width:var(--container);margin:0 auto;padding:0 24px}.container--narrow{max-width:720px}.eyebrow{font-family:var(--font-display);letter-spacing:.18em;text-transform:uppercase;color:var(--color-coral-deep);margin:0 0 10px;font-size:.78rem;font-weight:600}.header{z-index:10;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--color-line);background:#faf8f5d9;position:sticky;top:0}.header__inner{justify-content:space-between;align-items:center;height:72px;display:flex}.logo{font-family:var(--font-display);letter-spacing:-.02em;font-size:1.25rem;font-weight:700;text-decoration:none}.nav{gap:28px;display:flex}.nav a{color:var(--color-ink-soft);font-size:.95rem;font-weight:500;text-decoration:none;transition:color .15s}.nav a:hover{color:var(--color-ink)}.hero{background:var(--color-ink);color:var(--color-bg);padding:96px 0 110px;position:relative;overflow:hidden}.hero__accent{pointer-events:none;position:absolute;inset:0}.hero__bar{background:var(--color-coral);border-radius:999px;display:block;position:absolute}.hero__bar--one{opacity:.9;width:130%;height:90px;top:18%;right:-20%;transform:rotate(-18deg)}.hero__bar--two{opacity:.35;width:110%;height:60px;top:58%;right:-30%;transform:rotate(-18deg)}.hero__inner{max-width:620px;position:relative}.hero .eyebrow{color:var(--color-coral)}.hero__title{margin-bottom:22px;font-size:clamp(2.25rem,5vw,3.4rem)}.hero__lead{color:#faf8f5c7;max-width:480px;font-size:1.05rem}.section{padding:80px 0}.section--alt{background:var(--color-bg-alt)}.section__head{margin-bottom:40px}.section__head h2{font-size:clamp(1.8rem,3.5vw,2.4rem)}.grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:28px;display:grid}.card{background:var(--color-surface);border:1px solid var(--color-line);border-radius:var(--radius);flex-direction:column;display:flex;overflow:hidden}.card__media{aspect-ratio:16/10;background:var(--color-bg-alt);overflow:hidden}.card__media img{object-fit:cover;width:100%;height:100%}.card__body{flex-direction:column;flex:1;gap:10px;padding:22px;display:flex}.card__title{font-size:1.15rem}.card__text{color:var(--color-ink-soft);font-size:.95rem}.card__price{font-family:var(--font-display);color:var(--color-coral-deep);margin-top:auto;font-weight:600}.card__date{letter-spacing:.06em;text-transform:uppercase;color:var(--color-ink-soft);font-size:.8rem}.card__link{color:var(--color-coral-deep);margin-top:auto;font-size:.9rem;font-weight:600;text-decoration:none}.card__link:hover{text-decoration:underline}.status{color:var(--color-ink-soft);font-size:.95rem}.status--error{color:var(--color-coral-deep)}.status--error code{background:#0000000d;border-radius:4px;padding:2px 6px}.prose{color:var(--color-ink-soft)}.prose>*+*{margin-top:1em}.prose h2,.prose h3{color:var(--color-ink);margin-top:1.6em}.prose img{border-radius:var(--radius);margin:1.4em 0}.prose a{color:var(--color-coral-deep);text-decoration:underline}.footer{border-top:1px solid var(--color-line);padding:32px 0}.footer__inner{color:var(--color-ink-soft);flex-wrap:wrap;justify-content:space-between;gap:8px;font-size:.85rem;display:flex}@media (width<=640px){.nav{gap:16px}.nav a{font-size:.85rem}.hero{padding:64px 0 80px}.section{padding:56px 0}}
