:root{--header-height:110px}
.site-header{position:sticky;top:0;z-index:50;background:var(--cream);box-shadow:0 3px 14px #00000008}
html{scroll-behavior:auto;scrollbar-gutter:stable;scroll-padding-top:calc(var(--header-height) + 16px)}
section{scroll-margin-top:0}
.skip:focus{position:fixed;z-index:60}
.header-actions .theme-toggle[hidden]{display:inline-flex;visibility:hidden}
.site-header .nav-contact{font-weight:700;color:var(--gold)}
.contact-footer{display:block;padding:0;background:#183f36;color:#f4f0e7;--gold:#e7bd76;--body:#e0e8e2;--line:#6d887b}
.contact-footer .connect{border:0}
.contact-footer .connect-card:hover{background:#ffffff09}
.footer-bottom{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1.5rem;padding:1.6rem 7vw;border-top:1px solid var(--line)}
.footer-bottom>a:last-child{color:var(--gold)}
[data-theme=dark] .contact-footer{background:#0b1b16}
@media(max-width:640px){.footer-bottom{align-items:flex-start;flex-direction:column;padding:1.5rem 6vw}}
.facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:2rem}
.facts>span{min-width:0}
.facts b{overflow-wrap:anywhere}
.connect{padding:5rem 7vw;border-top:1px solid var(--line)}
.connect-heading{margin-bottom:2.5rem}
.connect h2{font-size:clamp(2rem,3.4vw,3.2rem)}
.connect-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem}
.connect-card{display:flex;flex-direction:column;align-items:flex-start;gap:1rem;padding:1.6rem;border:1px solid var(--line);text-decoration:none;min-width:0;transition:border-color .2s,background .2s}
.connect-card:hover{border-color:var(--gold);background:#956b2d09}
.connect-label{color:var(--gold);font-size:.9rem;font-weight:700}
.connect-card strong{font-size:1.2rem;line-height:1.6;overflow-wrap:anywhere}
.connect-card>span:last-child{color:var(--body);font-size:1rem;margin-top:auto}
[data-theme=dark] .connect-card:hover{background:#e2b8720c}
@media(max-width:950px){.facts{grid-template-columns:repeat(2,minmax(0,1fr))}.connect-grid{grid-template-columns:1fr}.connect-card{padding:1.5rem}.site-header nav{gap:.5rem 1.2rem}}
@media(max-width:640px){.site-header{padding:.65rem 6vw;gap:.5rem}.site-header nav{flex-wrap:nowrap;overflow-x:auto;justify-content:space-between;gap:1rem;padding-top:.4rem}.site-header nav a{white-space:nowrap;flex-shrink:0;min-height:40px}.facts{gap:2rem 1rem}.facts b{font-size:1.6rem}.connect{padding:3.5rem 6vw}.connect-card strong{font-size:1.1rem}}
