/* Ling Family History - site stylesheet (no framework) */
:root{
  --paper:#f7f1e3; --card:#fffdf7; --ink:#2b2118; --muted:#6b5b4b;
  --accent:#7a2e1d; --accent-dark:#5a1f12; --line:#e2d6bd; --nav:#3b2a1e;
  --radius:10px; --wrap:1100px;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);
  font:18px/1.7 Georgia,"Iowan Old Style","Palatino Linotype",Palatino,"Times New Roman",serif}
img{max-width:100%;height:auto;display:block}
a{color:var(--accent)} a:hover{color:var(--accent-dark)}
a:focus-visible,summary:focus-visible,button:focus-visible{outline:3px solid #c98b2b;outline-offset:2px}
.skip{position:absolute;left:-9999px}
.skip:focus{left:16px;top:8px;background:#fff;padding:8px 12px;z-index:10}

/* Header */
.site-header{background:var(--nav)}
.banner{display:block;max-width:var(--wrap);margin:0 auto}
.banner img{width:100%}

/* Navigation */
.site-nav{background:var(--nav);border-top:1px solid rgba(255,255,255,.12);position:sticky;top:0;z-index:5}
.site-nav .menu{max-width:var(--wrap);margin:0 auto;padding:0 12px;display:flex;flex-wrap:wrap;list-style:none;gap:2px}
.site-nav .menu>li{position:relative}
.site-nav a,.site-nav summary{display:block;padding:12px 14px;color:#f4ead6;text-decoration:none;
  font:600 16px/1.2 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;cursor:pointer}
.site-nav summary{list-style:none}
.site-nav summary::-webkit-details-marker{display:none}
.site-nav summary::after{content:" \25BE";font-size:.8em}
.site-nav a:hover,.site-nav summary:hover,.site-nav details[open]>summary{background:rgba(255,255,255,.1)}
.site-nav a[aria-current=page]{background:var(--accent)}
.site-nav .sub{position:absolute;left:0;top:100%;min-width:230px;max-height:75vh;overflow:auto;margin:0;padding:6px 0;
  list-style:none;background:#2c1f16;border-radius:0 0 var(--radius) var(--radius);box-shadow:0 10px 24px rgba(0,0,0,.3)}
.site-nav .sub a{font-weight:500;padding:9px 16px}
@media (max-width:700px){
  .site-nav{position:static}
  .site-nav .menu{padding:0}
  .site-nav .menu>li{flex:1 1 auto}
  .site-nav .sub{position:static;box-shadow:none;border-radius:0;max-height:none}
}

/* Main content */
main{max-width:var(--wrap);margin:0 auto;padding:28px 16px 48px}
.content{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:28px clamp(16px,4vw,44px)}
h1{font-size:clamp(1.6rem,4vw,2.3rem);line-height:1.2;color:var(--accent-dark);margin:0 0 .4em;text-align:center}
h2{font-size:1.4rem;color:var(--accent-dark);margin:1.6em 0 .5em}
.breadcrumb{font:15px/1.4 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;color:var(--muted);margin:0 0 14px}
.breadcrumb a{color:var(--muted)}
.page-links{text-align:center;font-weight:bold;margin-top:0}
.content p{margin:0 0 1em}
.content ul{padding-left:1.3em}
.content table{max-width:100%;border-collapse:collapse}
.content td,.content th{border:1px solid var(--line);padding:4px 8px}

.wiki-list{list-style:none;padding-left:0}
.wiki-list li{padding:6px 0;border-bottom:1px dotted var(--line)}
.wiki-list a{font-weight:bold}

/* Photos */
.photo{margin:1.2em auto;text-align:center}
.photo img{margin:0 auto;border-radius:6px;box-shadow:0 2px 10px rgba(0,0,0,.18)}
.grid{display:grid;gap:18px;margin:1.2em 0}
.grid.g2{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}
.grid.g3{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
.grid.g4{grid-template-columns:repeat(auto-fill,minmax(170px,1fr))}
.tile{display:flex;flex-direction:column;gap:6px;text-decoration:none;color:var(--ink);
  background:#fff;border:1px solid var(--line);border-radius:8px;padding:8px;transition:transform .15s,box-shadow .15s}
.tile:hover{transform:translateY(-2px);box-shadow:0 6px 16px rgba(0,0,0,.15);color:var(--ink)}
.tile img{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:4px}
.tile span{font:14px/1.35 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;text-align:center}
.back{display:inline-block;margin-top:1.5em;font:600 16px system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;text-decoration:none}

/* Footer */
.site-footer{background:var(--nav);color:#e8dcc4;text-align:center;padding:28px 16px;
  font:15px/1.7 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif}
.site-footer a{color:#f4ead6}
@media print{.site-nav,.site-footer,.back{display:none}.content{border:0}}
