/* Houghten family design refinements. Shared by the family and Chris sections. */
:root{--paper:#f5f2e9;--ink:#26362d;--muted:#56614f;--line:#c9ccbe;--accent:#657755}
html{scroll-padding-top:28px}
body{font-size:17px;-webkit-font-smoothing:antialiased}
header{gap:26px;min-height:94px}
nav{flex-wrap:wrap;justify-content:flex-end;gap:12px 24px;line-height:1.5}
nav a{text-decoration:none;border-bottom:1px solid transparent;padding:6px 0}
nav a:hover,nav a[aria-current="page"]{border-bottom-color:var(--accent)}
header .brand{white-space:nowrap}
a{transition:color .15s ease}
a:hover{color:#825039}
.skip-link{position:fixed;top:-100px;left:20px;z-index:99;padding:10px 18px;background:var(--ink);color:#fff}
.skip-link:focus{top:12px}
.hero{padding-top:56px;padding-bottom:64px;gap:54px}
.hero figure{transform:rotate(1deg)}
.hero img{background:#e3e4d9}
.section{padding:44px 0;gap:48px}
.eyebrow{color:#56634d;font-size:11px;line-height:1.7}
.items{gap:18px}
.items>.item{padding:24px;border:1px solid #d5d8ca;background:#faf8f1;border-radius:5px;display:flex;flex-direction:column;align-items:flex-start}
.items>.item>p{flex:1}
.items>.item h3 a{font-size:25px;font-weight:400;text-decoration:none}
.items>.item h3{line-height:1.2}
.project-state{display:block;font:600 10px/1.5 system-ui,sans-serif;text-transform:uppercase;letter-spacing:1.3px;color:#657755;margin-bottom:13px}
.featured{border-left:4px solid #657755}
.project-body{max-width:760px}
.project-body p{color:#46533f}
.project-header .intro{max-width:700px}
.project-header h1{max-width:900px}
.project-body h2{line-height:1.25}
.section-link,.dev-links a,.hero-links a,.profile-links a,.feature-links a{line-height:1.8}
.family-corners{gap:18px}
.family-corners .item{padding:22px;border:1px solid #d5d8ca;border-radius:5px;background:#faf8f1}
.family-corners .pet-corner{background:#e9ecdf}
.family-menu>div{top:34px;border-radius:4px}
.family-menu summary{padding:6px 0}
.family-actions{display:flex;gap:14px 24px;flex-wrap:wrap;font-size:14px;font-weight:600;margin-top:25px}
.family-actions a:first-child{padding:8px 15px;border:1px solid #8b987b;border-radius:3px;text-decoration:none}
.family-actions a{align-self:center}
.site-footer{display:flex;gap:18px;flex-wrap:wrap;justify-content:space-between}
.footer-links{display:flex;gap:18px;flex-wrap:wrap}
.architecture{width:100%;border-collapse:collapse;font-size:15px;margin:22px 0 32px}
.architecture caption{text-align:left;font:normal 25px Georgia,serif;margin-bottom:14px}
.architecture th,.architecture td{text-align:left;vertical-align:top;padding:14px 12px;border-bottom:1px solid #c9ccbe}
.architecture th{font-weight:600;color:#26362d;background:#e9ecdf}
.architecture td:first-child{font-weight:600;width:28%}
.note-label{font-size:13px;color:#56614f}
@media(max-width:760px){
 header{flex-direction:column;align-items:flex-start;padding-top:20px;padding-bottom:20px;gap:12px;min-height:0}
 nav{justify-content:flex-start;gap:8px 18px;font-size:13px}
 .hero{gap:30px;padding:32px 0 42px}
 .section{gap:22px;padding:32px 0}
 .hero img{height:300px}
 .hero figure{margin:0 3px}
 .items{gap:16px}
 .items>.item{padding:20px}
 .family-menu>div{left:0;right:auto}
 .project-header h1{font-size:clamp(39px,9vw,64px);letter-spacing:-1.5px}
 .project-body p{font-size:17px;line-height:1.75}
 footer{align-items:flex-start}
}
@media(max-width:480px){
 header,main,footer{padding-left:20px;padding-right:20px}
 .hero h1{font-size:64px;letter-spacing:-2.5px}
 .items,.family-corners{grid-template-columns:1fr}
 .featured{padding:24px}
 .featured h2{font-size:38px}
 .architecture th,.architecture td{padding:10px 8px;font-size:13px}
 .architecture td:first-child{width:30%}
}
@media(prefers-reduced-motion:reduce){a{transition:none}}

.feature-preview{margin:0;align-self:center;min-width:0}.feature-preview img{display:block;width:100%;height:auto;border-radius:6px;border:1px solid #26362d30;box-shadow:0 8px 22px #26362d16}.feature-preview figcaption{font-size:11px;margin-top:10px;color:#56614f}.project-screenshot{margin:28px 0}.project-screenshot img{display:block;width:100%;height:auto;border:1px solid #c9ccbe;border-radius:6px}.project-screenshot a{display:block}.project-screenshot figcaption{font-size:13px;line-height:1.6;color:#56614f;margin-top:12px}.controls-shot img{aspect-ratio:2.7;object-fit:cover;object-position:top}.case .project-screenshot{margin:20px 0 25px}
