*{box-sizing:border-box}
body{margin:0;background:#f2ede3;font-family:'Newsreader',Georgia,serif;color:#2b2926;-webkit-font-smoothing:antialiased}
a{color:inherit}
.mono{font-family:'IBM Plex Mono',ui-monospace,monospace}
@keyframes riseIn{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}

/* ===== Contact form ===== */
.fld{width:100%;font-family:'Newsreader',Georgia,serif;font-size:17px;color:#2b2926;background:#f7f3ea;border:1px solid rgba(35,39,43,.22);border-radius:2px;padding:14px 16px;outline:none}
.fld:focus{border-color:#403b33;background:#fbf8f2}
.fld:focus-visible{outline:3px solid #755a26;outline-offset:2px}
.fld::placeholder{color:#6e685a}
textarea.fld{resize:vertical;min-height:130px;line-height:1.5}
label.lbl{display:block;font-family:'IBM Plex Mono',monospace;font-size:10px;letter-spacing:.2em;color:#5c6742;margin-bottom:8px}

/* ===== Legal pages ===== */
.sec h2{margin:0 0 12px;font-size:25px;font-weight:400;letter-spacing:-.01em;color:#2b2926}
.sec p{margin:0 0 16px;font-size:17px;line-height:1.7;color:#403b33;font-weight:300}


  @media (max-width:1080px){
    .navbar{flex-wrap:wrap !important;gap:14px !important;row-gap:12px !important}
    .navlinks{flex-wrap:wrap !important;gap:14px 18px !important}
  }
  @media (max-width:900px){
    .rgrid{grid-template-columns:1fr !important}
    .rgrid:not(.rgrid-hair){gap:28px !important}
    .rgrid > div{border-right:none !important}
    .navbar{flex-wrap:wrap !important;gap:14px !important;row-gap:12px !important}
    .navlinks{flex-wrap:wrap !important;gap:14px 18px !important}
    .fbtns{flex-direction:column !important;align-items:stretch !important}
    .fbtns > a{text-align:center}
  }
  @media (max-width:560px){
    .navlinks{width:100%}
  }

/* ===== Accessibility ===== */
a.skip{position:absolute;left:-9999px;top:0;z-index:100;background:#f2ede3;color:#26231f;font-family:'IBM Plex Mono',monospace;font-size:13px;padding:14px 20px;border:2px solid #26231f}
a.skip:focus{left:8px;top:8px}
.vh{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
:focus-visible{outline:3px solid currentColor;outline-offset:3px;border-radius:2px}
main:focus,#pagetop:focus{outline:none}
a:hover{color:inherit;text-decoration:underline;text-underline-offset:3px}
a[style*="border-radius"]:hover,a[style*="background:#b08b4e"]:hover,nav a:hover{text-decoration:none}
a.skip:hover{text-decoration:none}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001ms !important;animation-iteration-count:1 !important;transition-duration:.001ms !important}
}
@media (forced-colors:active){
  a.skip{border:2px solid}
}
