@font-face{font-family:"DM Serif Display";font-weight:400;font-display:swap;src:url(fonts/dm-serif-display-400.woff2) format("woff2")}
@font-face{font-family:"Karla";font-weight:200 800;font-display:swap;src:url(fonts/karla-var.woff2) format("woff2")}
@font-face{font-family:"Pinyon Script";font-weight:400;font-display:swap;src:url(fonts/pinyon-script-400.woff2) format("woff2")}
:root{--bg:#FBF8FD;--soft:#F1EAF9;--rose:#6B3FA0;--head:#2E1B45;--ink:#2F2A38;--muted:#665C75;--line:#E9E0F3;--deep:#2E1B45;--on-deep-2:#D3C6E6;color-scheme:light dark}
@media (prefers-color-scheme:dark){:root{--bg:#130E1A;--soft:#241B31;--rose:#CFB4F2;--head:#F5F0FB;--ink:#E7E1EF;--muted:#AA9FBA;--line:#342945;--deep:#1F0F33}}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);font:300 17px/1.7 Karla,system-ui,sans-serif;-webkit-font-smoothing:antialiased;display:flex;flex-direction:column;min-height:100vh}
.wrap{max-width:780px;margin:0 auto;padding:0 20px;width:100%}
header{border-bottom:1px solid var(--line)}
header .wrap,footer .wrap{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;padding-block:18px}
.logo{display:flex;align-items:baseline;gap:6px;text-decoration:none;color:var(--head)}
.script{font-family:"Pinyon Script",cursive;color:var(--rose);font-weight:400}
.logo .script{font-size:2.1rem;line-height:.8;transform:translateY(5px)}
.logo .caps{font-family:"DM Serif Display",Georgia,serif;font-size:1.1rem;letter-spacing:.02em}
.btn{display:inline-block;background:var(--head);color:var(--bg);text-decoration:none;border-radius:999px;padding:12px 22px;font-weight:500}
main{flex:1;padding-block:56px 80px}
h1,h2{font-family:"DM Serif Display",Georgia,serif;font-weight:400;color:var(--head);line-height:1.1}
h1{font-size:clamp(2.2rem,6vw,3.4rem);margin:0 0 8px}
h1 .script{font-size:1.25em}
h2{font-size:1.45rem;margin:40px 0 10px}
p{margin:0 0 12px}
a{color:var(--rose)}
b{font-weight:600}
mark{background:var(--soft);color:var(--rose);padding:1px 6px;border-radius:6px}
.maj{color:var(--muted);font-size:.9rem}
.nf{text-align:center;padding-top:40px}.nf .big{font-size:5rem;line-height:1;margin:0}
footer{background:var(--deep);color:var(--on-deep-2);font-size:.85rem}
footer nav{display:flex;gap:18px}footer a{color:inherit}
