:root{
  --cream:#FDF9F0;
  --navy:#293748;
  --navy-deep:#1B2532;
  --navy-soft:#5C6B7D;
  --line:#E2D9C8;
  --paper:#FFFFFF;
  --nav-h:64px;
}
*{box-sizing:border-box;}
html,body{
  height:100%;
  margin:0;
  overflow:hidden;
}
body{
  background:var(--cream);
  color:var(--navy);
  font-family:'Inter', -apple-system, 'Helvetica Neue', Arial, sans-serif;
  display:flex;
  flex-direction:column;
}

/* Nav */
header.site{
  height:var(--nav-h);
  flex:0 0 auto;
  border-bottom:1px solid var(--line);
  display:flex;
  align-items:center;
  justify-content:center;
  background:var(--cream);
}
.navbar{
  width:100%;
  max-width:900px;
  padding:0 24px;
  display:flex;
  align-items:center;
  justify-content:space-between;
}
.logo-link{display:flex; align-items:center;}
.logo-link img{height:26px; width:auto; display:block;}
nav.links{display:flex; gap:22px;}
nav.links a{
  font-size:13px;
  font-weight:500;
  color:var(--navy-soft);
  text-decoration:none;
  padding-bottom:3px;
  border-bottom:1px solid transparent;
  transition:color .15s ease, border-color .15s ease;
}
nav.links a:hover,
nav.links a[aria-current="page"]{
  color:var(--navy);
  border-bottom-color:var(--navy);
}
nav.links a:focus-visible{outline:2px solid var(--navy); outline-offset:3px;}

/* Frame */
main.frame{
  flex:1 1 auto;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  padding:24px 26px;
  overflow:hidden;
  text-align:center;
}
.inner{
  width:100%;
  max-width:680px;
}

.rule{
  width:40px;
  height:2px;
  background:var(--navy);
  margin:0 auto 22px;
  opacity:.75;
}

.eyebrow{
  font-size:11.5px;
  font-weight:700;
  letter-spacing:0.13em;
  text-transform:uppercase;
  color:var(--navy-soft);
  display:block;
  margin-bottom:12px;
}

h1{
  font-weight:700;
  font-size:clamp(27px, 4.3vw, 44px);
  line-height:1.14;
  letter-spacing:-0.022em;
  margin:0 auto;
  max-width:16ch;
  color:var(--navy-deep);
}

.sub{
  margin:16px auto 0;
  color:var(--navy-soft);
  font-size:clamp(14px, 1.5vw, 16.5px);
  line-height:1.55;
  max-width:48ch;
}

form.contact-form{
  margin:26px auto 0;
  display:flex;
  gap:10px;
  width:100%;
  max-width:430px;
  flex-wrap:wrap;
  justify-content:center;
}
input[type="email"]{
  flex:1;
  min-width:210px;
  padding:13px 15px;
  border:1px solid var(--line);
  border-radius:6px;
  font-family:'Inter', sans-serif;
  font-size:14.5px;
  background:var(--paper);
  color:var(--navy);
}
input[type="email"]::placeholder{color:#A9B2BC;}
input[type="email"]:focus-visible{outline:2px solid var(--navy); outline-offset:1px;}

button.btn{
  padding:13px 22px;
  border:none;
  border-radius:6px;
  background:var(--navy);
  color:var(--cream);
  font-family:'Inter', sans-serif;
  font-weight:600;
  font-size:14.5px;
  cursor:pointer;
  transition:background .15s ease;
}
button.btn:hover{background:var(--navy-deep);}
button.btn:focus-visible{outline:2px solid var(--navy); outline-offset:3px;}

.confirm{
  margin-top:16px;
  font-size:14px;
  color:var(--navy);
  font-weight:600;
  display:none;
}

.disclaimer{
  margin:26px auto 0;
  font-size:10.5px;
  color:var(--navy-soft);
  max-width:58ch;
  line-height:1.55;
  opacity:.85;
}

@media (max-width:640px){
  nav.links{gap:14px;}
  .logo-link img{height:22px;}
  .disclaimer{margin-top:18px;}
}
