@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,600;1,300;1,400&family=Epilogue:wght@300;400;500;600;700;800&family=Epilogue+Mono:wght@400&display=swap');

:root {
  --cream:      #F5EFE4;
  --parchment:  #EDE4D5;
  --linen:      #E4D9C8;
  --warm-white: #FAF6F0;
  --rust:       #B85C38;
  --rust-l:     #D4714A;
  --rust-dim:   rgba(184,92,56,0.1);
  --rust-bdr:   rgba(184,92,56,0.25);
  --ink:        #1E1612;
  --bark:       #3D2B1F;
  --stone:      #7A6A5E;
  --stone-l:    #A8998E;
  --border:     rgba(61,43,31,0.1);
}

*,*::before,*::after { margin:0; padding:0; box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { background:var(--cream); color:var(--ink); font-family:'Epilogue',sans-serif; font-weight:300; overflow-x:hidden; cursor:none; }

/* ── CURSOR ── */
.cursor { position:fixed; width:26px; height:26px; pointer-events:none; z-index:9999; transform:translate(-50%,-50%); }
.cursor svg { width:100%; height:100%; animation:twinkle 2s ease-in-out infinite; }
@keyframes twinkle {
  0%,100% { transform:scale(1) rotate(0deg); opacity:1; }
  40%      { transform:scale(1.35) rotate(20deg); opacity:.6; }
  70%      { transform:scale(.8) rotate(-10deg); opacity:.9; }
}

/* ── NAV ── */
nav {
  position:fixed; top:0; left:0; right:0; z-index:200;
  display:flex; justify-content:space-between; align-items:center;
  padding:1.3rem 4rem;
  background:rgba(245,239,228,0.92); backdrop-filter:blur(14px);
  border-bottom:1px solid var(--border);
}

/* Left group: logo + availability tag */
.nav-left {
  display:flex; align-items:center; gap:1.4rem;
}
.nav-logo { font-family:'Cormorant Garamond',serif; font-size:1.15rem; font-weight:600; color:var(--bark); text-decoration:none; letter-spacing:.04em; }
/* nav-logo uses plain text now */

/* Availability — small quiet tag next to logo */
.nav-avail {
  font-size:.58rem; font-weight:700; letter-spacing:.13em; text-transform:uppercase;
  color:var(--rust); border:1px solid var(--rust-bdr);
  padding:.28rem .75rem; background:var(--rust-dim); white-space:nowrap;
}

/* Right group: nav links, no numbers */
.nav-links { display:flex; gap:2.2rem; list-style:none; }
.nav-links a {
  font-size:.68rem; font-weight:500; letter-spacing:.12em; text-transform:uppercase;
  color:var(--stone); text-decoration:none; transition:color .3s;
}
.nav-links a:hover, .nav-links a.active { color:var(--bark); }
.nav-links a.active { border-bottom:1px solid var(--rust); padding-bottom:1px; }

/* ── SHARED ATOMS ── */
.eyebrow { display:flex; align-items:center; gap:.8rem; font-size:.63rem; font-weight:600; letter-spacing:.2em; text-transform:uppercase; color:var(--rust); margin-bottom:.9rem; }
.eyebrow::before { content:''; width:1.6rem; height:1px; background:var(--rust); flex-shrink:0; }
.h-serif { font-family:'Cormorant Garamond',serif; font-weight:400; line-height:1.05; color:var(--bark); }
/* em in body text only — headings use plain styling */
.reveal { opacity:0; transform:translateY(20px); transition:opacity .75s ease,transform .75s ease; }
.reveal.on { opacity:1; transform:none; }

/* ── MARQUEE ── */
.marquee-wrap { overflow:hidden; background:var(--rust); }
.marquee-track { display:flex; width:max-content; animation:slide 30s linear infinite; }
.marquee-track:hover { animation-play-state:paused; }
.m-item { display:flex; align-items:center; gap:1.6rem; padding:.85rem 1.6rem; }
.m-item span { font-size:.65rem; font-weight:500; letter-spacing:.15em; text-transform:uppercase; color:rgba(250,246,240,.75); white-space:nowrap; transition:color .3s; }
.m-item:hover span { color:#FAF6F0; }
.m-sep { width:3px; height:3px; background:rgba(250,246,240,.4); border-radius:50%; flex-shrink:0; }
@keyframes slide { from{transform:translateX(0)}to{transform:translateX(-50%)} }

/* ── CONNECT BANNER ── */
.connect-banner { display:flex; flex-direction:column; align-items:center; justify-content:center; padding:6rem 5rem; text-align:center; border-top:1px solid var(--border); background:var(--warm-white); gap:1.5rem; }
.connect-banner a.cta-link { font-size:.72rem; font-weight:600; letter-spacing:.15em; text-transform:uppercase; color:var(--rust); text-decoration:none; display:inline-flex; align-items:center; gap:.6rem; border-bottom:1px solid var(--rust-bdr); padding-bottom:2px; transition:gap .3s; }
.connect-banner a.cta-link:hover { gap:1rem; }

/* ── FOOTER ── */
footer { padding:1.8rem 4rem; border-top:1px solid var(--border); display:flex; justify-content:space-between; align-items:center; background:var(--parchment); }
.f-logo { font-family:'Cormorant Garamond',serif; font-size:1.1rem; color:var(--bark); }
/* f-logo uses plain text now */
.f-txt { font-size:.6rem; color:var(--stone-l); letter-spacing:.08em; }
