:root{--paper:#22242a;--ink:#f2f0eb;--muted:#b4b6bf;--line:#454852;--green:#b3d1b8;--accent:#f2a68e}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 Arial,sans-serif}a{color:inherit;text-underline-offset:4px}button,input,select{font:inherit}button{cursor:pointer;background:var(--green);color:#18251b;border:1px solid var(--green);padding:11px 20px;border-radius:3px}button:disabled{opacity:.5;cursor:wait}button.secondary{background:transparent;color:var(--ink);border-color:var(--line)}button.danger{background:transparent;color:var(--accent);border-color:var(--accent)}button:hover{filter:brightness(.9)}input,select{padding:10px;border:1px solid var(--line);background:#2c2f37;color:var(--ink);border-radius:3px;min-width:0}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--accent);outline-offset:4px}.masthead{max-width:1320px;margin:auto;padding:30px 42px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{font:34px/1.1 Georgia,serif;text-decoration:none;letter-spacing:-1px}.brand span{display:block;font:9px/2.5 Arial,sans-serif;letter-spacing:3px}nav{display:flex;gap:25px;font-size:13px}nav a{text-decoration:none}main{max-width:1236px;margin:auto;padding:0 28px 70px}.hero{padding:72px 0 60px;max-width:800px}.section-label{font:11px/1.5 Arial,sans-serif;letter-spacing:2.2px;color:var(--green);text-transform:uppercase;margin:16px 0}h1,h2,h3{font-family:Georgia,serif;font-weight:400;line-height:1.15}h1{font-size:clamp(38px,6vw,76px);letter-spacing:-2px;margin:22px 0}h1 em{font-weight:400;color:var(--green)}.hero p,.intro{font-size:18px;color:var(--muted);max-width:650px}.section-bar{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding:22px 0}.section-bar h2{font-size:24px;margin:0}.section-bar span{font-size:10px;letter-spacing:1.5px;color:var(--muted)}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:45px 28px}.card{text-decoration:none}.card-photo{aspect-ratio:4/5;overflow:hidden;background:#2c2f37}.card-photo img{width:100%;height:100%;object-fit:cover;transition:transform .3s}.card:hover img{transform:scale(1.025)}.card h2{font-size:27px;line-height:1.25;margin:10px 0}.card p{font-size:14px;color:var(--muted)}.read-link{font-size:11px;letter-spacing:1.2px;text-transform:uppercase}.empty{padding:45px 0;grid-column:1/-1;color:var(--muted)}.pagination{display:flex;justify-content:space-between;margin-top:40px}.story{padding-top:35px}.back{font-size:12px;text-decoration:none}.story-head{max-width:900px;margin:45px auto;text-align:center}.story-head h1{font-size:clamp(36px,5vw,62px)}.story-head .intro{margin:24px auto}.story-head small{color:var(--muted)}.story-cover{max-width:900px;margin:0 auto 50px;background:#2c2f37}.story-cover img{width:100%;max-height:850px;object-fit:contain;display:block}.prose{max-width:730px;margin:auto;font:19px/1.85 Georgia,serif}.prose h2{font-size:32px;margin-top:45px}.credit{font:13px/1.7 Arial,sans-serif;color:var(--muted);padding:20px 0;border-top:1px solid var(--line);margin:40px 0}.photo-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:25px;align-items:start}figure{margin:0}figure img{width:100%;display:block}figcaption{font-size:11px;color:var(--muted);padding:8px 0}footer{border-top:1px solid var(--line);padding:32px 42px;display:flex;justify-content:space-between;gap:20px}footer span{font:24px Georgia,serif}footer p{font-size:11px;color:var(--muted);margin:0}.panel{padding:26px;border:1px solid var(--line);background:#292c33;margin:24px 0}.login-row{display:flex;gap:15px;margin-top:10px}.login-row input{flex:1}.toolbar,.actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.toolbar{padding:20px 0}.draft h2{font-size:32px}.draft p{max-width:850px}.draft details{margin:24px 0}.draft summary{cursor:pointer;font-weight:bold}.review-images{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:25px 0}.review-images img{width:100%;max-height:320px;object-fit:contain;background:#22242a}.metadata{font-size:12px;color:var(--muted)}.warning{color:var(--accent)}#message{min-height:25px}[hidden]{display:none!important}@media(max-width:800px){.grid{grid-template-columns:repeat(2,1fr)}.masthead{padding:25px}.hero{padding:45px 0}footer{display:block}.review-images{grid-template-columns:repeat(2,1fr)}}@media(max-width:520px){.grid,.photo-grid{grid-template-columns:1fr}.masthead{align-items:flex-start}.brand{font-size:28px}nav{flex-direction:column;gap:4px;font-size:11px}main{padding:0 20px 50px}.hero h1{font-size:43px}.section-bar span{display:none}.login-row{flex-direction:column}.review-images{grid-template-columns:1fr 1fr}.panel{padding:18px}.prose{font-size:18px}}

/* Let story photography reach both screen edges on phones. */
@media(max-width:767px){
  .story-cover,.story .photo-grid{width:calc(100% + 56px);max-width:none;margin-left:-28px;margin-right:-28px}
  .story .photo-grid{grid-template-columns:minmax(0,1fr)}
  .story-cover img{height:auto;max-height:none}
  .story .photo-grid figcaption{padding-left:28px;padding-right:28px}
}
@media(max-width:520px){
  .story-cover,.story .photo-grid{width:calc(100% + 40px);margin-left:-20px;margin-right:-20px}
  .story .photo-grid figcaption{padding-left:20px;padding-right:20px}
}
