/* Lorewright Studios — shared styles. Dark warm theme, centered layout. */
:root{
  --bg:#1a1612;
  --bg-soft:#221d18;
  --text:#f0e9df;
  --accent:#d97757;
  --accent-hover:#e8906f;
  --muted:#b8ada0;
  --border:#2a241e;
  --maxw:720px;
}
*{box-sizing:border-box;}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;}
body{
  margin:0;background:var(--bg);color:var(--text);
  font-family:Inter,system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  font-size:18px;line-height:1.6;text-align:center;
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;
}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 24px;}
a{color:var(--accent);text-decoration:none;font-weight:500;}
a:hover,a:focus{text-decoration:underline;color:var(--accent-hover);}
:focus-visible{outline:3px solid var(--accent);outline-offset:3px;border-radius:3px;}
img{max-width:100%;height:auto;}

/* Skip link */
.skip{position:absolute;left:-9999px;}
.skip:focus{position:fixed;left:50%;transform:translateX(-50%);top:12px;background:var(--accent);color:#1a1612;padding:10px 18px;border-radius:8px;z-index:100;font-weight:600;}

/* Header */
header.site{padding:34px 0 6px;}
header.site .brand{font-family:"Cormorant Garamond",Georgia,serif;font-size:1.7rem;font-weight:600;color:var(--text);letter-spacing:.4px;}
header.site .brand:hover,header.site .brand:focus{text-decoration:none;color:var(--text);}
.backhome{display:inline-block;margin-top:10px;font-size:.95rem;color:var(--muted);}

/* Typography */
main{padding:10px 0 30px;}
h1,h2,h3{font-family:"Cormorant Garamond",Georgia,"Times New Roman",serif;line-height:1.12;}
h1{font-size:3.5rem;font-weight:500;margin:.25em auto .35em;max-width:16ch;}
.tagline{font-size:1.3rem;color:var(--muted);max-width:34ch;margin:0 auto 2.4em;}
h2{color:var(--accent);font-size:1.55rem;font-weight:600;margin:2.3em auto .6em;}
h3{color:var(--accent);font-size:1.18rem;font-weight:600;margin:1.7em auto .35em;}
p{max-width:60ch;margin:0 auto 1.2em;}
strong{font-weight:600;}
hr{border:0;border-top:1px solid var(--border);max-width:120px;margin:2.4em auto;}

/* Lists (centered, no hanging bullets) */
ul.clean{list-style:none;padding:0;margin:0 auto 1.4em;max-width:58ch;}
ul.clean li{margin:.55em 0;}
ul.clean li::before{content:"\2022";color:var(--accent);margin-right:.5em;}

/* Buttons */
.btn{display:inline-block;background:var(--accent);color:#1a1612;font-weight:600;padding:14px 28px;border-radius:10px;text-decoration:none;font-size:1.05rem;}
.btn:hover,.btn:focus{background:var(--accent-hover);color:#1a1612;text-decoration:none;}
.btn-row{margin:1.8em auto;}

/* Blockquote / developer quote */
blockquote{font-family:"Cormorant Garamond",Georgia,serif;font-size:1.7rem;font-style:italic;color:var(--text);max-width:28ch;margin:1.4em auto;line-height:1.3;}
blockquote .attrib{display:block;font-family:Inter,sans-serif;font-size:1rem;font-style:normal;color:var(--muted);margin-top:.7em;}

/* Fact sheet */
dl.facts{max-width:520px;margin:1.2em auto 2em;}
dl.facts dt{color:var(--accent);font-weight:600;font-size:.8rem;text-transform:uppercase;letter-spacing:.09em;margin-top:1.15em;}
dl.facts dd{margin:.15em 0 0;}

/* Media: key art, gallery, video */
.keyart{display:block;width:100%;max-width:680px;border-radius:14px;margin:1.2em auto 2.2em;box-shadow:0 12px 44px rgba(0,0,0,.55);}
.gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;max-width:720px;margin:1.4em auto 2em;}
.gallery a{display:block;border-radius:12px;overflow:hidden;line-height:0;box-shadow:0 6px 22px rgba(0,0,0,.45);}
.gallery img{width:100%;display:block;transition:transform .3s ease;}
.gallery a:hover img,.gallery a:focus img{transform:scale(1.04);}
.gallery figcaption{display:none;}
.video-embed{position:relative;max-width:720px;margin:1.4em auto 2.2em;aspect-ratio:16/9;}
.video-embed iframe{position:absolute;inset:0;width:100%;height:100%;border:0;border-radius:14px;box-shadow:0 12px 44px rgba(0,0,0,.55);}

/* Downloads */
ul.downloads{list-style:none;padding:0;margin:1em auto 1.6em;max-width:40ch;}
ul.downloads li{margin:.55em 0;}

/* Footer */
footer.site{border-top:1px solid var(--border);margin-top:52px;padding:30px 0 60px;color:var(--muted);font-size:.95rem;}
footer.site nav a{color:var(--muted);margin:0 9px;display:inline-block;}
footer.site .copy{margin-top:14px;}

@media (max-width:560px){
  h1{font-size:2.6rem;}
  body{font-size:17px;}
  .gallery{grid-template-columns:1fr;}
}

/* Top navigation tab bar */
header.site{padding:28px 0 0;border-bottom:1px solid var(--border);}
header.site .topnav{margin-top:16px;display:flex;flex-wrap:wrap;justify-content:center;gap:4px;}
header.site .topnav a{color:var(--muted);font-weight:500;font-size:1rem;padding:9px 16px;border-radius:8px 8px 0 0;border-bottom:2px solid transparent;}
header.site .topnav a:hover,header.site .topnav a:focus{color:var(--text);background:var(--bg-soft);text-decoration:none;}
header.site .topnav a.active{color:var(--accent);border-bottom-color:var(--accent);background:var(--bg-soft);}

/* Brand crest watermark background */
body{background-color:var(--bg);background-image:url(/assets/bg-crest.jpg);background-repeat:no-repeat;background-position:center 64px;background-attachment:fixed;background-size:min(560px,82vw);}

/* Newsletter signup */
footer.site .newsletter{max-width:32rem;margin:0 auto 1.8em;}
.nl-label{color:var(--text);font-size:1rem;margin:0 auto .7em;max-width:34ch;}
.nl-row{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;}
.newsletter input[type=email]{flex:1 1 13rem;min-width:0;background:var(--bg-soft);border:1px solid var(--border);color:var(--text);border-radius:9px;padding:12px 14px;font-size:1rem;font-family:inherit;text-align:center;}
.newsletter input[type=email]::placeholder{color:var(--muted);}
.newsletter input[type=email]:focus{outline:none;border-color:var(--accent);}
.newsletter .btn{padding:12px 22px;font-size:1rem;}
.newsletter .hp{position:absolute;left:-9999px;}
