
:root{
  --bg:#f4f0f4;--card:#fbf8fc;--ink:#2a232f;--ink-soft:#564d5d;--ink-faint:#8d8593;
  --lilac:#8a6a9a;--lilac-dark:#5a4567;--gold:#9a8456;
  --line:rgba(50,40,60,.12);
  --display:'Cormorant',Georgia,serif;
  --sans:'Lato',system-ui,sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0}
body{font-family:var(--sans);font-weight:300;background:var(--bg);color:var(--ink);font-size:16px;line-height:1.72}
a{color:inherit;text-decoration:none}img{display:block;max-width:100%;height:auto}
.wrap{max-width:1180px;margin:0 auto;padding:0 36px}
.site-header{padding:40px 0 22px;text-align:center;position:relative}
.site-header:after{content:"";display:block;width:40px;height:1px;background:var(--gold);margin:18px auto 0}
.brand{font-family:var(--display);font-size:38px;font-weight:500;font-style:italic;letter-spacing:.5px;color:var(--lilac-dark)}
.brand-sub{display:block;font-family:var(--sans);font-size:10px;letter-spacing:.32em;text-transform:uppercase;color:var(--ink-faint);margin-top:6px;font-weight:400}
.nav{padding:18px 0;display:flex;justify-content:center;gap:34px;font-family:var(--sans);font-size:11px;text-transform:uppercase;letter-spacing:.22em;font-weight:700;border-bottom:1px solid var(--line)}
.nav a{color:var(--ink-soft)}
.nav a:hover{color:var(--lilac-dark)}
.hero{padding:50px 0 40px;text-align:center}
.hero .kicker{font-family:var(--sans);font-size:10px;letter-spacing:.32em;text-transform:uppercase;color:var(--gold);font-weight:700;margin-bottom:18px}
.hero h1{font-family:var(--display);font-size:56px;font-weight:500;font-style:italic;line-height:1.1;color:var(--ink)}
.hero .lead{margin-top:22px;font-size:17px;color:var(--ink-soft);max-width:560px;margin-left:auto;margin-right:auto}
.masonry{padding:30px 0 60px;column-count:3;column-gap:30px}
.tile{break-inside:avoid;background:var(--card);margin-bottom:30px;display:block;border-radius:0;overflow:hidden;border:1px solid var(--line);transition:transform .25s}
.tile:hover{transform:translateY(-2px)}
.tile-img{width:100%;display:block}
.tile-img img{width:100%;display:block}
.tile:nth-child(3n+1) .tile-img img{aspect-ratio:4/5;object-fit:cover}
.tile:nth-child(3n+2) .tile-img img{aspect-ratio:3/2;object-fit:cover}
.tile:nth-child(3n) .tile-img img{aspect-ratio:1/1;object-fit:cover}
.tile-body{padding:22px 24px 24px}
.tile-meta{font-family:var(--sans);font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--gold);font-weight:700;margin-bottom:8px}
.tile-title{font-family:var(--display);font-size:22px;font-weight:500;font-style:italic;line-height:1.25;margin-bottom:8px}
.tile-title a:hover{color:var(--lilac-dark)}
.tile-dek{color:var(--ink-soft);font-size:14px;line-height:1.6;font-weight:300}
.tile-more{margin-top:10px;font-family:var(--sans);font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--lilac-dark);font-weight:700}
.article-wrap{max-width:780px;margin:0 auto;padding:0 36px}
.article{padding:50px 0 30px}
.article .kicker{text-align:center;font-family:var(--sans);font-size:10px;letter-spacing:.32em;text-transform:uppercase;color:var(--gold);font-weight:700;margin-bottom:16px}
.article h1{font-family:var(--display);font-size:50px;font-weight:500;font-style:italic;line-height:1.12;text-align:center}
.article .dek{margin:22px auto 0;font-size:18px;color:var(--ink-soft);text-align:center;max-width:620px}
.article-meta{margin:26px 0;text-align:center;font-family:var(--sans);font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--ink-faint);font-weight:400}
.hero-img{margin:30px -36px}
.hero-img img{width:100%;max-height:540px;object-fit:cover}
.body p{margin:0 0 22px}
.body h2{font-family:var(--display);font-size:30px;font-weight:500;font-style:italic;margin:38px 0 14px;color:var(--lilac-dark);text-align:center}
.body blockquote{margin:34px 0;padding:24px 30px;background:var(--card);border-left:3px solid var(--lilac);font-family:var(--display);font-size:22px;font-style:italic;color:var(--ink-soft)}
.body figure{margin:34px -36px}
.body figure img{width:100%}
.endmark{margin:50px auto 0;text-align:center;font-family:var(--display);font-size:22px;color:var(--gold)}
.footer{padding:32px 0;border-top:1px solid var(--line);font-family:var(--sans);font-size:11px;color:var(--ink-faint);text-align:center;letter-spacing:.18em;text-transform:uppercase}
.about-body{max-width:680px;margin:0 auto;padding:30px 0 60px}
.about-body h2{font-family:var(--display);font-size:32px;margin:30px 0 14px;font-weight:500;font-style:italic;color:var(--lilac-dark);text-align:center}
.about-body p{margin-bottom:18px;font-size:16px;color:var(--ink-soft)}
@media(max-width:900px){.masonry{column-count:2}}
@media(max-width:600px){.masonry{column-count:1}.hero h1{font-size:36px}.article h1{font-size:32px}.hero-img,.body figure{margin-left:-22px;margin-right:-22px}.wrap,.article-wrap{padding:0 22px}}
