/* V101 — premium editorial typography system */
:root{
  --twl-display:"Baskerville","Iowan Old Style","Palatino Linotype","Book Antiqua",Georgia,"Times New Roman",serif;
  --twl-ui:"Avenir Next","Helvetica Neue",Arial,sans-serif;
}

body{
  font-family:var(--twl-ui);
  text-rendering:optimizeLegibility;
}

h1,h2,h3,
.display,
.footer-brand,
.modal h2{
  font-family:var(--twl-display)!important;
  font-weight:400!important;
  font-kerning:normal;
  font-feature-settings:"kern" 1,"liga" 1;
  text-wrap:balance;
}
h1{letter-spacing:-.048em!important}
h2{letter-spacing:-.036em!important}
h3{letter-spacing:-.018em!important}

.eyebrow{
  font-family:var(--twl-ui)!important;
  font-size:9px;
  font-weight:600;
  letter-spacing:.22em;
}

header,.site-header{
  height:78px!important;
  padding-left:max(2.8vw,34px)!important;
  padding-right:max(2.8vw,34px)!important;
  background:rgba(252,250,246,.97)!important;
  border-bottom-color:#d8cdbd!important;
  box-shadow:0 1px 0 rgba(92,72,45,.035);
}
.brand b,.brand strong{
  font-family:var(--twl-display)!important;
  font-size:32px!important;
  line-height:.92!important;
  font-weight:400!important;
  letter-spacing:-.038em!important;
  color:#27231f!important;
  font-kerning:normal;
}
.brand small{
  margin-top:9px!important;
  font-family:var(--twl-ui)!important;
  font-size:7px!important;
  font-weight:500!important;
  letter-spacing:.27em!important;
  color:#5f564c!important;
}
.nav{gap:clamp(18px,2vw,34px)!important;align-items:center}
.nav a{
  position:relative;
  padding:8px 0!important;
  font-family:var(--twl-ui)!important;
  font-size:10px!important;
  font-weight:500!important;
  letter-spacing:.17em!important;
  line-height:1!important;
  color:#484039!important;
  transition:color .18s ease!important;
}
.nav a:hover{color:#8b6737!important}
.connect-nav{
  border-bottom:0!important;
  padding-bottom:9px!important;
}
.connect-nav::after{
  content:"";
  position:absolute;
  left:0;
  right:.17em;
  bottom:0;
  height:1px;
  background:#9d7742;
}

@media(min-width:901px) and (max-width:1240px){
  header,.site-header{padding-left:28px!important;padding-right:28px!important}
  .brand b,.brand strong{font-size:28px!important}
  .brand small{font-size:6px!important;letter-spacing:.22em!important}
  .nav{gap:13px!important}
  .nav a{font-size:8.5px!important;letter-spacing:.12em!important}
}

@media(max-width:900px){
  header,.site-header{height:68px!important;padding-left:18px!important;padding-right:18px!important}
  .brand b,.brand strong{font-size:27px!important}
  .brand small{margin-top:6px!important;font-size:6px!important;letter-spacing:.22em!important}
  .nav.mobile{top:68px!important;padding:24px 20px!important;background:#fcfaf6!important}
  .nav.mobile a{width:100%;font-size:10px!important;letter-spacing:.15em!important;padding:9px 0!important}
  .nav.mobile .connect-nav::after{right:auto;width:82px}
}

@media(max-width:520px){
  h1{letter-spacing:-.042em!important}
  h2{letter-spacing:-.03em!important}
  h3{letter-spacing:-.012em!important}
}
