:root{
  --ink:#15140f;
  --paper:#f4f1ea;
  --accent:#ff5a3c;
  --muted:#7a7568;
  --line:rgba(21,20,15,.12);
  --max:1180px;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  font-family:'Inter',system-ui,sans-serif;
  background:var(--paper);
  color:var(--ink);
  line-height:1.6;
  overflow-x:hidden;
  cursor:none;
}
a{color:inherit;text-decoration:none;cursor:none}
button{cursor:none}
img{display:block;max-width:100%}
h1,h2,h3{font-family:'Fraunces',Georgia,serif;font-weight:600;line-height:1.05;letter-spacing:-.02em}
.wrap{max-width:var(--max);margin:0 auto;padding:0 28px}
.label{font-size:.72rem;letter-spacing:.22em;text-transform:uppercase;color:var(--accent);font-weight:600}
.serif-i{font-style:italic;font-weight:400}

/* Buttons */
.btn{display:inline-flex;align-items:center;gap:.5em;padding:14px 26px;border-radius:100px;
  font-weight:600;font-size:.95rem;transition:transform .3s ease,background .3s ease}
.btn-dark{background:var(--ink);color:var(--paper)}
.btn-dark:hover{transform:translateY(-3px)}
.btn-line{border:1px solid var(--line)}
.btn-line:hover{background:var(--ink);color:var(--paper)}

/* Scroll reveal */
.reveal{opacity:0;transform:translateY(34px);transition:opacity .9s cubic-bezier(.2,.7,.2,1),transform .9s cubic-bezier(.2,.7,.2,1)}
.reveal.in{opacity:1;transform:none}
.reveal-left{opacity:0;transform:translateX(-40px);transition:opacity .9s ease,transform .9s ease}
.reveal-left.in{opacity:1;transform:none}

/* Custom cursor */
.cur{position:fixed;top:0;left:0;pointer-events:none;z-index:9000;mix-blend-mode:difference}
.cur-dot{width:8px;height:8px;border-radius:50%;background:#fff;transform:translate(-50%,-50%)}
.cur-ring{width:38px;height:38px;border:1px solid #fff;border-radius:50%;transform:translate(-50%,-50%);transition:width .25s,height .25s}

@keyframes marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@keyframes floaty{0%,100%{transform:translateY(0)}50%{transform:translateY(-14px)}}
@media (max-width:760px){body{cursor:auto}.cur{display:none}a,button{cursor:pointer}}