/* Shared navigation for the profile and Climate Forecastory. */
.site-header { position:sticky; top:0; z-index:1000; flex:0 0 auto; background:#f7f6f2f5; border-bottom:1px solid #ded4c3; backdrop-filter:blur(12px); color:#252525; font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; line-height:1.7; }
.site-header * { box-sizing:border-box; }
.site-header a { color:inherit; text-decoration:none; }
.site-header a:focus-visible,.site-header button:focus-visible { outline:2px solid #745a3b; outline-offset:5px; border-radius:2px; }
.site-header .shell { width:min(1120px,calc(100% - 96px)); margin-inline:auto; }
.site-header .nav-wrap { display:flex; align-items:center; justify-content:space-between; gap:30px; height:80px; }
.site-header .brand-links { display:flex; align-items:center; gap:24px; min-width:0; }
.site-header .site-brand { display:flex; align-items:baseline; font-weight:650; font-size:21px; letter-spacing:-.7px; white-space:nowrap; }
.site-header .dashboard-nav-link { white-space:nowrap; font-size:12px; font-weight:500; color:#745a3b; padding:7px 0 7px 22px; border-left:1px solid #ded4c3; }
.site-header .dashboard-nav-link:hover,.site-header .site-navigation a:hover { color:#745a3b; text-decoration:underline; text-underline-offset:5px; }
.site-header .dashboard-nav-link[aria-current="page"] { color:#745a3b; font-weight:650; text-decoration:underline; text-underline-offset:6px; }
.site-header .site-navigation { display:flex; align-items:center; gap:29px; font-size:12px; font-weight:500; }
.site-header .site-navigation a { padding-block:5px; }
.site-header .site-navigation .nav-contact { margin-left:8px; padding:8px 15px; color:#745a3b; border:1px solid #b7a283; border-radius:3px; }
.site-header .nav-contact span { margin-left:8px; }
.site-header .site-navigation .nav-contact:hover { background:#efe6d5; }
.site-header .nav-toggle { display:none; border:0; padding:10px 0 10px 12px; background:transparent; color:#252525; font:inherit; font-size:12px; align-items:center; gap:8px; }
.skip-link { position:fixed; left:16px; top:-70px; z-index:2000; padding:10px 18px; background:#252525; color:white; text-decoration:none; }
.skip-link:focus { top:12px; color:white; }
@media(max-width:1100px) { .site-header .shell { width:calc(100% - 64px); } }
@media(max-width:980px) {
 .site-header .nav-toggle { display:flex; }
 .site-header .site-navigation { display:none; position:absolute; left:0; right:0; top:100%; border-bottom:1px solid #ded4c3; padding:16px 20px 22px; background:#f7f6f2; flex-direction:column; gap:4px; align-items:stretch; }
 .site-header.nav-open .site-navigation { display:flex; }
 .site-header .site-navigation a { padding:10px 0; font-size:14px; }
 .site-header .site-navigation .nav-contact { margin:5px 0 0; padding:10px 12px; }
}
@media(max-width:767px) {
 .site-header .shell { width:calc(100% - 40px); }
 .site-header .nav-wrap { height:68px; gap:12px; }
 .site-header .brand-links { gap:12px; }
 .site-header .site-brand { font-size:18px; }
 .site-header .dashboard-nav-link { padding-left:12px; font-size:11px; }
}
@media(max-width:380px) {
 .site-header .nav-wrap { gap:9px; }
 .site-header .brand-links { gap:9px; }
 .site-header .site-brand { font-size:16px; }
 .site-header .dashboard-nav-link { padding-left:9px; font-size:10px; }
 .site-header .nav-toggle { padding-left:4px; gap:5px; font-size:11px; }
}
