:root{--tap:48px}
html{-webkit-text-size-adjust:100%}
body{overflow-x:hidden}
p,li{font-size:max(1rem,16px);line-height:1.65}
small,.brand-sub,figcaption,.issue{font-size:max(.8rem,13px)!important}
.site-nav a,.breadcrumbs a,nav[aria-label="Breadcrumb"] a,.crumbs a,footer a,.btn,.filter a,.gallery-filters a{min-height:var(--tap);display:inline-flex;align-items:center;padding-inline:.6rem}
.menu-toggle{min-height:var(--tap);min-width:var(--tap)}
img{max-width:100%;height:auto}
.entity-nav{display:flex;gap:.25rem;justify-content:center;background:#f6f1e8;border-bottom:1px solid #d9cfbf;position:sticky;top:0;z-index:40;padding:.25rem .5rem}
.entity-nav a{flex:0 1 auto;min-height:var(--tap);display:flex;align-items:center;justify-content:center;padding:0 1.1rem;border-radius:999px;color:#3b2f2a;text-decoration:none;font-weight:600;font-size:15px;letter-spacing:.02em}
.entity-nav a[aria-current=page]{background:#7a2f2a;color:#fff}
@media (max-width:760px){.entity-nav{position:fixed;top:auto;bottom:0;left:0;right:0;border-top:1px solid #d9cfbf;border-bottom:0;padding:.3rem .25rem calc(.3rem + env(safe-area-inset-bottom));justify-content:space-around;box-shadow:0 -4px 16px rgba(0,0,0,.08)}.entity-nav a{flex:1;padding:0 .2rem;font-size:13px;min-height:52px;border-radius:12px}body{padding-bottom:76px}}
.hub,.ent{padding-block:2.5rem 3rem}
.hub-title{font-size:clamp(2.4rem,9vw,4.5rem);margin:.2rem 0 .6rem}
.hub-dek{font-size:1.1rem;max-width:38rem;margin-bottom:1.8rem}
.hub-grid{display:grid;gap:1.1rem;grid-template-columns:1fr}
@media (min-width:760px){.hub-grid{grid-template-columns:1fr 1fr;gap:1.5rem}}
.hub-card{position:relative;display:block;border-radius:18px;overflow:hidden;aspect-ratio:4/3;min-height:220px;color:#fff;text-decoration:none;box-shadow:0 6px 24px rgba(0,0,0,.12)}
.hub-card img{width:100%;height:100%;object-fit:cover;transition:transform .4s}
.hub-card:hover img{transform:scale(1.04)}
.hub-card-text{position:absolute;inset:auto 0 0 0;padding:1.2rem 1.3rem;background:linear-gradient(transparent,rgba(0,0,0,.72));display:flex;flex-direction:column;gap:.25rem}
.hub-card-text strong{font-size:1.45rem;font-family:inherit}
.hub-card-text span{font-size:1rem;opacity:.92}
.hub-contact{margin-top:2rem;font-size:1.05rem}.hub-contact a{display:inline-flex;min-height:48px;align-items:center}
.ent h1{font-size:clamp(2rem,7vw,3.4rem);margin:.2rem 0 .6rem}.ent h2{margin-top:2.4rem}
.ent-gallery{display:grid;gap:.8rem;grid-template-columns:1fr}
@media (min-width:760px){.ent-gallery{grid-template-columns:repeat(3,1fr)}}
.ent-gallery img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:14px}
.ent-links{display:flex;flex-wrap:wrap;gap:.8rem}.ent-links .btn{min-height:48px}
.ent-posts{padding-left:0;list-style:none}.ent-posts a{display:flex;min-height:48px;align-items:center;border-bottom:1px solid #e3d9c9}
.ent-disc{margin-top:2rem;font-size:14px!important;opacity:.8}
.brand{min-height:48px;display:inline-flex;align-items:center}
main a:not(p a):not(li a):not(.hub-card):not(figure a){min-height:48px;display:inline-flex;align-items:center}
@media (max-width:760px){.entity-nav a{font-size:14px}}
.brand{min-height:48px;display:inline-flex;align-items:center}
main a:not(p a):not(li a):not(.hub-card):not(figure a){min-height:48px;display:inline-flex;align-items:center}
@media (max-width:760px){.entity-nav a{font-size:14px}}
.ent-hero{margin:0 0 1.2rem;border-radius:18px;overflow:hidden;aspect-ratio:16/9;background:#1d1714}
.ent-hero img,.ent-hero video{width:100%;height:100%;object-fit:cover;display:block}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.ent-video{aspect-ratio:4/5;max-width:520px;margin-inline:auto;background:#10140f url(/_astro/fosterai-hero-poster.webp) center/cover}
@media (prefers-reduced-motion:reduce){.ent-video video{visibility:hidden}}
.ent-cap{text-align:center;font-size:14px!important;opacity:.8}
.aff li{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;border-bottom:1px solid #e3d9c9}.aff li a{border:0;font-weight:600}.aff li span{opacity:.75;font-size:15px}
.aff li a{min-width:48px;padding-inline:.5rem;justify-content:center}
.project-links a,a.tap{min-height:48px;display:inline-flex;align-items:center;padding:0 .4rem}.ent-dek-note{padding:2rem 0;font-size:1.1rem}
