/* ===========================
   Hybrid "Tweed-Journal" Style
   Courier headings + Garamond body
   Warm paper + dark mode
   =========================== */

@import url('https://fonts.googleapis.com/css2?family=EB+Garamond&display=swap');

:root{
  /* Light theme (warm paper) */
  --paper:#f9f7f3;   /* warmer than ivory */
  --ink:#111;
  --muted:#555;
  --rule:#cfcfcf;
  --max:760px;

  /* Optional subtle paper grain (light only) */
  --paper-grain: radial-gradient(#ece9e2 0.55px, transparent 0.55px);
}

@media (prefers-color-scheme: dark){
  :root{
    --paper:#0f1011;  /* deep gray, easy on eyes */
    --ink:#ececec;
    --muted:#b7b7b7;
    --rule:#2c2d2f;
    --paper-grain:none; /* no grain in dark */
  }
}

/* Let the browser know we support both */
html { color-scheme: light dark; }

html,body{margin:0;padding:0}
body{
  font-family:'EB Garamond','Times New Roman',serif;
  background: var(--paper);
  /* faint paper grain in light mode only */
  background-image: var(--paper-grain);
  background-size: 22px 22px;
  color:var(--ink);
  max-width:var(--max);
  margin:0 auto;
  padding:2.4rem 1.7rem;
  line-height:1.7;
  font-size:1.05rem;
}

a{ color:inherit; text-decoration: underline; text-underline-offset: 2px; }
a:hover{ text-decoration-thickness: 2px; }

#dateline{
  font-size: .95rem;
  color: var(--muted);
  margin-bottom: .8rem;
}

/* Headings + header/nav use Courier for character */
h1,h2,h3,header,footer,nav a{
  font-family:"Courier New", Courier, monospace;
  letter-spacing: 0.02em;
}

header{ text-align:center; margin-bottom:2rem; }
h1{ font-size:1.8rem; margin:0 0 .35rem 0; }
.subtitle{
  margin-top:.3rem;
  font-family:'EB Garamond','Times New Roman',serif;
  color:var(--muted);
  font-size:1rem;
}

nav a{
  text-decoration:none;
  border-bottom:1px solid transparent;
  margin:0 .5em;
}
nav a:hover{ border-color: currentColor; }

section{
  margin-top:1.8rem;
  padding-top:.8rem;
  border-top:1px dashed var(--rule);
}
h2{ font-size:1.2rem; margin:0 0 .6rem 0; }
ul{ margin-left:1.5rem; }

.small{ color:var(--muted); font-size:.95rem; }

/* Simple “card” (if you want to use it later) */
.card{
  border:1px solid var(--rule);
  border-left:4px solid #0a9396;
  border-radius:6px;
  padding:1rem 1.1rem;
}

/* Contact form (optional) */
form.contact{
  display:grid; gap:.75rem; margin-top:.6rem;
}
label{ display:grid; gap:.25rem; }
input[type="text"], input[type="email"], textarea{
  font-family: inherit; font-size:1rem; color:inherit;
  background:transparent; border:1px solid var(--rule);
  padding:.5rem .6rem; border-radius:2px;
}
textarea{ min-height:120px; resize:vertical; }
button{
  font-family:inherit; background:transparent; color:inherit;
  border:1px solid currentColor; padding:.5rem .9rem; cursor:pointer;
}
button:hover{ background: #0000000a; }

/* Honeypot (anti-spam) */
.hp-wrap{ position:relative; height:0; overflow:hidden; }
.hp-wrap input{ position:absolute; left:-9999px; }

/* Print */
@media print{
  nav, footer { color:#000; }
  a{ text-decoration:none; }
}