/* Single bio page. Bump the ?v= in index.html whenever this file changes. */

:root{
  --ink:#17201d;
  --ink-soft:#4a5652;
  --green:#5a4a3c;
  --green-deep:#3c2f26;
  --gold:#b98a4b;
  --gold-soft:#e6d3b8;
  --cream:#faf6f0;
  --cream-2:#f2ece1;
  --line:#e3dccf;
  --serif:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,"Times New Roman",serif;
  --sans:ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
}

*{box-sizing:border-box}
body{
  margin:0;
  background:var(--cream);
  background-image:radial-gradient(circle at 15% 0%,#fff 0%,var(--cream) 45%);
  color:var(--ink);
  font-family:var(--sans);
  font-size:17px;
  line-height:1.7;
  -webkit-font-smoothing:antialiased;
}
img{max-width:100%;display:block}

.page{
  width:min(1000px,90vw);
  margin:0 auto;
  padding:clamp(40px,8vw,96px) 0 clamp(32px,5vw,64px);
}

.bio{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:clamp(30px,5vw,52px);
}

/* portrait */
.portrait{margin:0;width:100%;max-width:660px}
.portrait img{
  width:100%;
  height:auto;              /* show the photo whole, never cropped by the frame */
  border-radius:18px;
  box-shadow:0 22px 54px rgba(60,47,38,.20);
}

/* text */
.reg{font-size:.58em;vertical-align:super;line-height:0;letter-spacing:.02em}
.eyebrow{
  text-transform:uppercase;
  letter-spacing:.16em;
  font-size:.72rem;
  font-weight:700;
  color:var(--gold);
  margin:0 0 .8em;
}
h1{
  font-family:var(--serif);
  font-weight:600;
  font-size:clamp(2.1rem,5vw,3.1rem);
  line-height:1.1;
  letter-spacing:-.01em;
  margin:0 0 .25em;
}

.bio-text{width:100%;max-width:660px}
.brandline{
  font-family:var(--serif);
  font-size:1.05rem;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--green);
  margin:.1em 0 1.7em;
}
.brandline::after{
  content:"";
  display:block;
  width:64px;
  height:3px;
  margin-top:.85em;
  background:var(--gold-soft);
  border-radius:2px;
}
.contact{margin:0 0 1.8em;display:flex;flex-wrap:wrap;gap:12px}
.btn{
  display:inline-block;
  background:var(--green-deep);
  color:#fff;
  text-decoration:none;
  font-weight:600;
  font-size:1rem;
  letter-spacing:.01em;
  padding:14px 28px;
  border-radius:999px;
  box-shadow:0 8px 22px rgba(60,47,38,.18);
  transition:background .2s ease,transform .15s ease;
  word-break:break-word;
}
.btn:hover{background:#2b211a;transform:translateY(-1px)}
.btn-ghost{
  background:transparent;
  color:var(--green-deep);
  border:1px solid var(--line);
  box-shadow:none;
}
.btn-ghost:hover{background:#efe7db;color:var(--green-deep)}
.bio-text p{margin:0 0 1.15em;color:var(--ink-soft)}
.bio-text p:first-of-type{font-size:1.14rem;color:var(--ink)}
.bio-text strong{color:var(--ink);font-weight:600}

.lessons{
  list-style:none;
  margin:1.6em 0;
  padding:0;
  display:grid;
  gap:12px;
}
.lessons li{
  font-family:var(--serif);
  font-size:1.08rem;
  line-height:1.5;
  color:var(--green-deep);
  background:#fff;
  border-left:4px solid var(--gold);
  border-radius:0 12px 12px 0;
  padding:16px 22px;
  box-shadow:0 6px 22px rgba(60,47,38,.06);
}

/* footer */
.site-footer{
  border-top:1px solid var(--line);
  padding:26px 0 34px;
  text-align:center;
  color:var(--ink-soft);
}
.site-footer p{margin:0 0 .35em;font-size:.92rem;word-break:break-word}
.site-footer a{color:var(--green-deep);text-decoration:none;border-bottom:1px solid var(--gold-soft)}
.site-footer strong{font-family:var(--serif);color:var(--ink);font-weight:600}
.fine{font-size:.78rem;color:#8d8577}

@media (max-width:760px){
  .bio{gap:26px}
}

@media (prefers-reduced-motion:reduce){
  .btn:hover{transform:none}
}
