:root{
  --oyster:#E4DED1; --charcoal:#29353A; --deepbay:#244F61;
  --bluecrab:#5B91A4; --poolglass:#9BCBD4; --dune:#C7A575; --liveoak:#59634B;
}
*{box-sizing:border-box;margin:0;padding:0}
html,body{height:100%}
body{
  background:#FFFFFF; color:var(--charcoal);
  font-family:Montserrat,-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif;
  font-size:16px; line-height:1.7; -webkit-font-smoothing:antialiased;
  display:flex; flex-direction:column; align-items:center; justify-content:center;
  min-height:100%; padding:40px 24px;
}
main{width:100%; max-width:560px; text-align:center}
.logo{width:100%; max-width:300px; height:auto; display:block; margin:0 auto 34px}
.eyebrow{
  font-size:11px; letter-spacing:.28em; text-transform:uppercase;
  font-weight:500; color:var(--liveoak); margin-bottom:16px;
}
h1{
  font-family:"Libre Baskerville",Georgia,serif; font-weight:400;
  font-size:clamp(25px,5.4vw,36px); line-height:1.25; color:var(--deepbay);
  margin-bottom:16px;
}
.lede{font-size:15px; line-height:1.75; max-width:470px; margin:0 auto 22px; color:#4f5a5f}
.whatsnew{
  list-style:none; display:grid; grid-template-columns:repeat(2,auto);
  justify-content:center; gap:9px 36px; text-align:left; margin:0 auto 32px;
}
.whatsnew li{
  display:flex; align-items:center; gap:9px;
  font-size:13.5px; font-weight:500; color:var(--deepbay); letter-spacing:.02em;
}
.whatsnew li::before{
  content:""; flex:none; width:5px; height:5px;
  border-radius:50%; background:var(--poolglass);
}
form{display:flex; gap:10px; max-width:440px; margin:0 auto; flex-wrap:wrap}
input[type=email]{
  flex:1 1 220px; min-width:0; height:50px; padding:0 16px;
  font-family:inherit; font-size:15px; color:var(--charcoal);
  background:#fff; border:1px solid #cfd8da; border-radius:4px;
}
input[type=email]::placeholder{color:#8d8d85}
input[type=email]:focus{outline:none; border-color:var(--deepbay); box-shadow:0 0 0 3px rgba(36,79,97,.14)}
button{
  flex:0 0 auto; height:50px; padding:0 26px; border:0; border-radius:4px; cursor:pointer;
  background:var(--deepbay); color:#fff;
  font-family:inherit; font-size:12px; font-weight:500; letter-spacing:.2em; text-transform:uppercase;
  transition:background .15s ease;
}
button:hover{background:#1d4152}
button:disabled{opacity:.6; cursor:default}
.hp{position:absolute; left:-9999px; width:1px; height:1px; opacity:0}
.note{font-size:12.5px; color:#6b7075; margin-top:12px; min-height:17px}
.note.err{color:#B96545}
.note.ok{color:var(--liveoak)}
.divider{
  width:100%; max-width:440px; margin:26px auto 22px;
  border-top:1px solid #E4DED1;
}
.guest{font-size:14px; color:#55606a}
.guest a{
  display:inline-block; margin-top:10px; color:var(--deepbay);
  font-size:12px; font-weight:500; letter-spacing:.16em; text-transform:uppercase;
  text-decoration:none; border-bottom:1px solid var(--dune); padding-bottom:3px;
}
.guest a:hover{border-bottom-color:var(--deepbay)}
footer{
  margin-top:44px; font-size:12px; letter-spacing:.04em; color:#8a938f; line-height:1.9;
}
footer a{color:#7d7d74; text-decoration:none}
footer a:hover{color:var(--deepbay)}
@media (max-width:480px){
  body{padding:30px 20px}
  .logo{max-width:210px; margin-bottom:26px}
  .lede{font-size:14.5px; margin-bottom:16px}
  .whatsnew{gap:8px 22px; margin-bottom:28px}
  .whatsnew li{font-size:12.5px}
  form{flex-direction:column; gap:12px}
  input[type=email]{flex:0 0 50px; width:100%}
  button{flex:0 0 50px; width:100%}
  .divider{margin:26px auto 20px}
  footer{margin-top:36px}
}
