/* Haven Talent Group — shared site styles */

:root{
  --bg:#fdfdfc; --bg2:#f3f2ef; --ink:#121110; --ink-soft:#65625c;
  --line:#e4e1db; --dark:#0a0a0a; --dark2:#161513; --on-dark:#f5f4f2; --on-dark-soft:#a9a6a0;
  --dark-line:rgba(255,255,255,0.14);
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{margin:0; background:var(--bg); font-family:'Work Sans',sans-serif;}
a{color:var(--ink); text-decoration:none;}
a:hover{color:var(--ink-soft);}
img{max-width:100%;}

.serif{font-family:'Newsreader',Georgia,serif;}
.eyebrow{font-family:'Work Sans',sans-serif; font-size:12px; letter-spacing:0.16em; text-transform:uppercase; color:var(--ink-soft);}
.navlink{font-family:'Work Sans',sans-serif; font-size:13px; letter-spacing:0.05em; text-transform:uppercase; text-decoration:none; color:var(--ink-soft);}
.navlink.active{color:var(--ink); border-bottom:1px solid var(--ink); padding-bottom:3px;}
.btn-dark{font-family:'Work Sans',sans-serif; font-size:13px; letter-spacing:0.04em; text-transform:uppercase; background:var(--ink); color:var(--bg); padding:14px 28px; border-radius:6px; display:inline-block; border:1px solid var(--ink); cursor:pointer;}
.btn-outline{font-family:'Work Sans',sans-serif; font-size:13px; letter-spacing:0.04em; text-transform:uppercase; background:transparent; color:var(--ink); padding:13px 27px; border-radius:6px; display:inline-block; border:1px solid var(--ink); cursor:pointer;}
.btn-on-dark{font-family:'Work Sans',sans-serif; font-size:13px; letter-spacing:0.04em; text-transform:uppercase; background:var(--on-dark); color:var(--dark); padding:16px 32px; border-radius:6px; display:inline-block; border:none; cursor:pointer;}

.field-label{font-family:'Work Sans',sans-serif; font-size:12px; letter-spacing:0.04em; text-transform:uppercase; color:var(--ink-soft); display:block; margin-bottom:8px;}
.field-input{width:100%; font-family:'Work Sans',sans-serif; font-size:15px; color:var(--ink); background:var(--bg); border:1px solid var(--line); border-radius:6px; padding:13px 14px;}
.field-input::placeholder{color:#a9a6a0;}
.field-input:focus{outline:2px solid var(--ink); outline-offset:-1px;}

/* site chrome */
.site-header{position:sticky; top:0; z-index:10; display:flex; align-items:center; justify-content:space-between; gap:24px; padding:16px 48px; background:var(--bg); border-bottom:1px solid var(--line); flex-wrap:wrap;}
.site-header .brand{display:flex; align-items:center; gap:14px;}
.site-header .brand img{width:50px; height:50px; flex-shrink:0; display:block;}
.site-header .brand span{font-size:24px; color:var(--ink);}
.site-header nav{display:flex; align-items:center; gap:32px; flex-wrap:wrap;}

.site-footer{padding:56px 48px 40px; background:var(--bg2); border-top:1px solid var(--line);}
.site-footer .footer-top{display:flex; justify-content:space-between; gap:40px; max-width:1200px; margin:0 auto; flex-wrap:wrap;}
.site-footer .footer-brand{max-width:280px;}
.site-footer .footer-brand .row{display:flex; align-items:center; gap:12px; margin-bottom:14px;}
.site-footer .footer-brand .row img{width:34px; height:34px; flex-shrink:0; display:block;}
.site-footer .footer-brand .row div{font-size:18px; color:var(--ink);}
.site-footer .footer-links{display:flex; gap:56px; flex-wrap:wrap;}
.site-footer .footer-links a{color:var(--ink-soft); font-size:13px;}
.site-footer .footer-links .col{display:flex; flex-direction:column; gap:9px;}
.site-footer .footer-bottom{max-width:1200px; margin:40px auto 0; padding-top:20px; border-top:1px solid var(--line); font-size:12px; color:var(--ink-soft);}

@media (max-width: 720px){
  .site-header, .site-footer, section{padding-left:24px !important; padding-right:24px !important;}
  .site-footer .footer-top{flex-direction:column;}
}
