/* Points of Light — quiet reader-facing letter. */
body[data-page="points"]{
  background:#090d0a;
  color:#c8beaa;
}
body[data-page="points"] .site-header{
  background:#080c09;
}
body[data-page="points"] .points-page-main{
  background:
    radial-gradient(circle at 50% 10%,rgba(181,145,75,.065),transparent 30%),
    linear-gradient(180deg,#090e0a 0%,#090d0a 100%);
}
body[data-page="points"] .points-letter{
  width:min(720px,calc(100% - 48px));
  padding:74px 0 82px;
}
body[data-page="points"] .points-letter-head{
  text-align:center;
}
body[data-page="points"] .points-letter-kicker,
body[data-page="book"] .points-invite-kicker{
  margin:0;
  color:#9f9686;
  font-family:Arial,Helvetica,sans-serif;
  font-size:.68rem;
  font-weight:600;
  letter-spacing:.14em;
  text-transform:uppercase;
}
body[data-page="points"] .points-letter h1{
  margin:9px 0 5px;
  color:#e0c58f;
  font-family:Georgia,'Times New Roman',serif;
  font-size:clamp(2.65rem,5vw,4rem);
  font-weight:400;
  letter-spacing:-.015em;
  line-height:1.05;
}
body[data-page="points"] .points-letter-subtitle{
  margin:0;
  color:#b4aa97;
  font-family:Georgia,'Times New Roman',serif;
  font-size:1rem;
  font-style:italic;
}
body[data-page="points"] .points-letter-rule{
  width:72px;
  height:1px;
  margin:35px auto 42px;
  background:rgba(215,182,122,.36);
}
body[data-page="points"] .points-letter-body{
  max-width:650px;
  margin:0 auto;
}
body[data-page="points"] .points-letter-body p{
  margin:0 0 22px;
  color:#c9bfac;
  font-family:Georgia,'Times New Roman',serif;
  font-size:1.04rem;
  line-height:1.82;
}
body[data-page="points"] .points-letter-body .points-opening{
  margin-bottom:24px;
  color:#f0e6d3;
  font-size:1.35rem;
  line-height:1.62;
}
body[data-page="points"] .points-letter-body .points-short{
  color:#dfc58e;
  font-size:1.12rem;
}
body[data-page="points"] .points-letter-body blockquote{
  margin:34px 0 36px;
  padding:25px 28px;
  border-top:1px solid rgba(215,182,122,.18);
  border-bottom:1px solid rgba(215,182,122,.18);
  color:#eee3cf;
  font-family:Georgia,'Times New Roman',serif;
  font-size:1.45rem;
  font-style:italic;
  line-height:1.4;
  text-align:center;
}
body[data-page="points"] .points-letter-body .points-closing{
  margin:36px 0 0;
  color:#e2c78d;
  font-size:2rem;
  line-height:1.25;
  text-align:center;
}
body[data-page="points"] .points-back{
  display:block;
  width:max-content;
  margin:54px auto 0;
  color:#9f9686;
  font-family:Arial,Helvetica,sans-serif;
  font-size:.69rem;
  font-weight:600;
  letter-spacing:.11em;
  text-decoration:none;
  text-transform:uppercase;
}
body[data-page="points"] .points-back:hover,
body[data-page="points"] .points-back:focus-visible{
  color:#dec58e;
}

/* Book-page invitation: a discovery, not an ad. */
body[data-page="book"] .points-invite{
  position:relative;
  display:block;
  margin-top:30px;
  padding:24px 0 7px;
  border-top:1px solid rgba(215,182,122,.18);
  color:inherit;
  text-decoration:none;
}
body[data-page="book"] .points-invite strong{
  display:block;
  width:max-content;
  margin-top:6px;
  color:#ddc38e;
  font-family:Georgia,'Times New Roman',serif;
  font-size:1.55rem;
  font-weight:400;
  line-height:1.15;
  transition:color .18s ease;
}
body[data-page="book"] .points-invite::after{
  content:"";
  display:block;
  width:44px;
  height:1px;
  margin-top:15px;
  background:rgba(215,182,122,.30);
  transition:width .2s ease,background .2s ease;
}
body[data-page="book"] .points-invite:hover strong,
body[data-page="book"] .points-invite:focus-visible strong{
  color:#f0ddb5;
}
body[data-page="book"] .points-invite:hover::after,
body[data-page="book"] .points-invite:focus-visible::after{
  width:72px;
  background:rgba(215,182,122,.55);
}

@media(max-width:640px){
  body[data-page="points"] .points-letter{
    width:calc(100% - 38px);
    padding:46px 0 58px;
  }
  body[data-page="points"] .points-letter h1{
    font-size:2.75rem;
  }
  body[data-page="points"] .points-letter-rule{
    margin:27px auto 32px;
  }
  body[data-page="points"] .points-letter-body p{
    font-size:.98rem;
    line-height:1.72;
    margin-bottom:19px;
  }
  body[data-page="points"] .points-letter-body .points-opening{
    font-size:1.2rem;
    line-height:1.55;
  }
  body[data-page="points"] .points-letter-body blockquote{
    margin:29px 0 31px;
    padding:21px 14px;
    font-size:1.3rem;
  }
  body[data-page="points"] .points-letter-body .points-closing{
    font-size:1.85rem;
  }
  body[data-page="book"] .points-invite{
    margin-top:26px;
    padding-top:22px;
    text-align:center;
  }
  body[data-page="book"] .points-invite strong{
    margin:6px auto 0;
  }
  body[data-page="book"] .points-invite::after{
    margin:14px auto 0;
  }
}

/* V49 final: center the Book-page reader invitation in its column on desktop as approved. */
body[data-page="book"] .points-invite{
  text-align:center;
}
body[data-page="book"] .points-invite strong{
  margin:6px auto 0;
}
body[data-page="book"] .points-invite::after{
  margin:15px auto 0;
}
