:root{--blue:#4f80e1;--blue-d:#3a63c0;--ink:#1c2748;--cream:#fffbea;--mist:#eef0ff;--line:#c9d5f5}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;background:#fff;color:var(--ink);font:400 1.05rem/1.7 'Lora',Georgia,serif}
a{color:inherit}img{max-width:100%;display:block}
h1,h2,.logo,.eyebrow,nav a,.btn,.count,.num,.pn,label{font-family:'Jost',system-ui,sans-serif}
.nav{position:sticky;top:0;z-index:5;display:flex;justify-content:space-between;align-items:center;padding:.9rem 1.5rem;background:rgba(255,255,255,.92);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
.logo{text-decoration:none;letter-spacing:.3em;text-transform:uppercase;font-weight:300;font-size:.85rem;color:var(--blue-d)}
nav a{margin-left:1.5rem;text-decoration:none;letter-spacing:.2em;text-transform:uppercase;font-size:.72rem;font-weight:300}
nav a:hover{color:var(--blue)}
.wrap{max-width:1100px;margin:0 auto;padding:5rem 1.5rem 3rem}.narrow{max-width:680px}
.hero{min-height:88vh;display:grid;place-items:center;text-align:center;color:var(--cream);padding:4rem 1.5rem;
background:radial-gradient(ellipse 45% 25% at 18% 12%,#e8e4ff 0,transparent 70%),radial-gradient(ellipse 40% 22% at 95% 52%,#d9d4ff 0,transparent 70%),radial-gradient(ellipse 60% 26% at 30% 100%,#e6e1ff 0,transparent 72%),linear-gradient(180deg,#8fb0ff,#4f80e1 55%,#4b7bdc)}
.hero h1{font-weight:300;font-size:clamp(3.2rem,12vw,7.5rem);line-height:1;letter-spacing:.08em;margin:0}
.brush{width:min(300px,60%);margin:2rem auto 1.5rem}.brush path{fill:none;stroke:var(--cream);stroke-width:4;stroke-linecap:round;opacity:.95}
.by{font:300 1rem/1.8 'Jost',sans-serif;letter-spacing:.35em;margin:0 0 2rem}
.lede{max-width:34em;margin:0 auto 2.2rem;font-size:1.1rem}
.btn{display:inline-block;padding:.8rem 2rem;border:1px solid currentColor;text-decoration:none;letter-spacing:.25em;text-transform:uppercase;font-size:.75rem;background:none;cursor:pointer;color:inherit;transition:.2s}
.btn:hover{background:var(--cream);color:var(--blue-d)}.btn.solid{color:var(--blue-d);border-color:var(--blue)}.btn.solid:hover{background:var(--blue);color:#fff}
.intro{font-size:1.2rem;text-align:center;max-width:36em;margin:0 auto;padding-top:0}#welcome{padding-bottom:0}
.eyebrow{letter-spacing:.3em;text-transform:uppercase;font-size:.72rem;color:var(--blue);margin:0}
h2{font-weight:300;font-size:clamp(1.8rem,4vw,2.6rem);margin:.3rem 0 0;line-height:1.2}
.rule{display:block;width:34px;height:2px;background:var(--blue);margin:1.1rem 0 2rem}
.light{color:var(--cream)}.rule.light{background:var(--cream)}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:1.4rem}
.card{position:relative;display:block;text-decoration:none;background:var(--mist);overflow:hidden;aspect-ratio:3/4}
.card img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.card:hover img{transform:scale(1.05)}
.card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(20,32,80,.85))}
.card span{position:absolute;left:1rem;right:1rem;z-index:1;color:#fff}
.num{top:.8rem;font-size:.75rem;letter-spacing:.2em;opacity:.85}.t{bottom:2rem;font:400 1.1rem/1.25 'Jost',sans-serif}
.d{bottom:.8rem;font:italic .78rem 'Lora',serif;opacity:.8}
.band{background:var(--blue);color:var(--cream)}.band .wrap{padding:5rem 1.5rem}.band p{font-size:1.1rem}.sig{font-style:italic;margin-top:2rem}
.form{display:grid;gap:1.2rem}.form label{font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;font-weight:300}
.form input,.form textarea{width:100%;margin-top:.4rem;padding:.8rem;border:1px solid var(--line);font:inherit;color:var(--ink);background:#fff}
.form input:focus,.form textarea:focus{outline:2px solid var(--blue);border-color:transparent}.form .btn{justify-self:start}
.foot{text-align:center;padding:2.5rem 1rem;font-size:.8rem;color:#7b88b3;border-top:1px solid var(--line)}
/* poem page */
.poem{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);min-height:calc(100vh - 56px)}
.poem figure{margin:0;position:sticky;top:56px;height:calc(100vh - 56px)}.poem figure img{width:100%;height:100%;object-fit:cover}
.poem article{padding:5rem clamp(1.5rem,6vw,5rem);align-self:center}
.count{letter-spacing:.3em;font-size:.75rem;color:var(--blue);margin:0}
.poem h1{font-weight:300;font-size:clamp(2rem,4.5vw,3.2rem);line-height:1.15;margin:.4rem 0 0}
.verse{font-size:1.15rem;line-height:1.85}.poem article p{margin:0 0 1.1rem}
.date{font-style:italic;color:var(--blue);text-align:right;margin-top:2rem!important}
.pn{display:flex;justify-content:space-between;gap:1rem;padding:1.5rem;border-top:1px solid var(--line);font-size:.85rem;letter-spacing:.08em}
.pn a{text-decoration:none;color:var(--blue-d)}.pn a:hover{text-decoration:underline}
.thanks{text-align:center}.thanks .rule{margin:1rem auto 2rem}
@media(max-width:760px){.poem{grid-template-columns:1fr}.poem figure{position:static;height:42vh}.poem article{padding:2.5rem 1.5rem}nav a{margin-left:.9rem;letter-spacing:.12em}.logo{letter-spacing:.2em}}
