:root{--pa:#F5F1E8;--pa2:#ECE5D4;--ink:#1E2B24;--vm:#C9412A;--vm2:#A3321F;--sg:#7E9679;--kr:#E3D2AE;--ln:#D6CDB8;--mu:#5B5F55;--wh:#FFFDF8}
*{box-sizing:border-box;margin:0;padding:0}
body{font:18px/1.65 "Karla",Verdana,sans-serif;color:var(--ink);background:var(--pa)}
a{color:var(--vm2);text-underline-offset:3px}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--vm);outline-offset:2px}
.skip{position:absolute;left:-999px;top:0;background:var(--kr);padding:8px 12px;z-index:99}.skip:focus{left:0}
h1,h2,h3,.logo b{font-family:"Young Serif",Georgia,serif;font-weight:400;line-height:1.12}
.mono{font-family:"Courier Prime","Courier New",monospace}
.w{max-width:1160px;margin:0 auto;padding:0 26px}
header.mast{border-bottom:1px solid var(--ink)}
header.mast .w{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-top:16px;padding-bottom:14px}
.logo{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--ink)}
.stamp{width:46px;height:54px;background:var(--vm);color:var(--wh);display:flex;align-items:center;justify-content:center;font:400 24px "Young Serif",serif;outline:2px dashed var(--vm);outline-offset:3px}
.logo b{font-size:30px;display:block}.logo small{display:block;font:700 12px "Courier Prime",monospace;letter-spacing:1.5px;text-transform:uppercase;color:var(--mu)}
nav.m{display:flex;gap:4px 22px;flex-wrap:wrap}nav.m a{color:var(--ink);text-decoration:none;font-weight:700;font-size:16px;padding:4px 0;border-bottom:2px solid transparent}nav.m a:hover,nav.m a.on{border-color:var(--vm)}
.menu-btn{display:none;font:700 15px "Karla",sans-serif;padding:7px 14px;border:1px solid var(--ink);background:transparent;cursor:pointer}
.hero .w{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:56px;padding-top:54px;padding-bottom:54px;align-items:center}
.lab{font:700 13px "Courier Prime",monospace;letter-spacing:1.6px;text-transform:uppercase;color:var(--vm2)}
.hero h1{font-size:clamp(40px,5.4vw,68px);margin:12px 0 18px}.hero h1 i{font-style:normal;color:var(--vm)}
.hero p{font-size:20px;max-width:34em;margin-bottom:24px}
.btn{display:inline-block;font:700 16px "Karla",sans-serif;padding:12px 20px;border:1px solid var(--ink);background:var(--ink);color:var(--wh);text-decoration:none;cursor:pointer;margin:0 10px 10px 0}
.btn:hover{background:#000}.btn.alt{background:transparent;color:var(--ink)}.btn.alt:hover{background:var(--kr)}.btn.sm{padding:6px 12px;font-size:14px;margin:0}
.card{background:var(--wh);border:1px solid var(--ink);padding:34px 32px 30px;position:relative;box-shadow:8px 8px 0 var(--kr)}
.card .pm{position:absolute;top:18px;right:18px;width:64px;height:76px;border:2px dashed var(--vm);display:flex;align-items:center;justify-content:center;color:var(--vm);font:400 30px "Young Serif",serif}
.card .to{font:700 13px "Courier Prime",monospace;letter-spacing:1.4px;text-transform:uppercase;color:var(--mu)}
.card blockquote{font:400 25px/1.35 "Young Serif",Georgia,serif;margin:18px 70px 18px 0}
.card .fr{font-style:italic;color:var(--mu)}
.card.t-sage{background:#EEF2EA;box-shadow:8px 8px 0 #C9D6C4}.card.t-ink{background:var(--ink);color:#F5F1E8;box-shadow:8px 8px 0 var(--vm)}.card.t-ink .to,.card.t-ink .fr{color:#C9C3B2}.card.t-ink .pm{border-color:#F5F1E8;color:#F5F1E8}
section.s{padding:50px 0;border-top:1px solid var(--ln)}
.sh{display:flex;align-items:baseline;justify-content:space-between;gap:20px;margin-bottom:22px}.sh h2{font-size:clamp(30px,3.6vw,42px)}.sh a{font-weight:700}
.occ{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--ink)}
.occ a{display:grid;grid-template-columns:44px minmax(0,1fr);gap:4px 10px;padding:16px 18px 16px 0;border-bottom:1px solid var(--ln);text-decoration:none;color:var(--ink)}
.occ a:nth-child(3n+2),.occ a:nth-child(3n){padding-left:18px;border-left:1px solid var(--ln)}
.occ i{font:700 14px "Courier Prime",monospace;font-style:normal;color:var(--vm);grid-row:span 2;padding-top:6px}
.occ b{font:400 23px "Young Serif",serif}.occ span{font-size:15px;color:var(--mu)}
.occ a:hover b{text-decoration:underline;text-decoration-color:var(--vm)}
.split{display:grid;grid-template-columns:4fr 8fr;gap:48px}
.steps{list-style:none;counter-reset:s}.steps li{counter-increment:s;display:grid;grid-template-columns:50px 1fr;padding:14px 0;border-bottom:1px solid var(--ln)}
.steps li:before{content:counter(s,decimal-leading-zero);font:700 16px "Courier Prime",monospace;color:var(--vm);padding-top:4px}
.steps b{display:block;font-size:19px}
.ph{border-bottom:1px solid var(--ink);background:var(--pa2)}.ph .w{padding-top:40px;padding-bottom:34px}
.ph h1{font-size:clamp(34px,4.6vw,54px);margin:10px 0 10px}.ph p{max-width:44em;font-size:19px}
.crumb{font-size:14px;color:var(--mu)}.crumb a{color:var(--mu)}
.msgs{list-style:none;border-top:1px solid var(--ink);margin-top:10px}
.msgs li{display:grid;grid-template-columns:170px minmax(0,1fr) auto;gap:18px;padding:18px 0;border-bottom:1px solid var(--ln);align-items:start}
.msgs .tone{font:700 13px "Courier Prime",monospace;letter-spacing:1px;text-transform:uppercase;color:var(--sg);padding-top:5px}
.msgs p{font:400 21px/1.45 "Young Serif",Georgia,serif}
.msgs .cp{white-space:nowrap}
.body{padding:34px 0 56px}.body .pr{max-width:46em}.body .pr h2{font-size:28px;margin:28px 0 8px}.body .pr ul,.body .pr ol{margin:8px 0 12px 22px}
.side2{display:grid;grid-template-columns:minmax(0,8fr) minmax(0,4fr);gap:44px}
.aside{border-left:1px solid var(--ln);padding-left:26px}.aside h3{font-size:22px;margin-bottom:8px}.aside ul{list-style:none}.aside li{padding:5px 0;border-bottom:1px solid var(--ln)}
.maker{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:44px;align-items:start}
.maker label{display:block;font-weight:700;margin:14px 0 4px;font-size:16px}
.maker select,.maker input,.maker textarea,.fb input,.fb textarea{width:100%;font:inherit;font-size:17px;padding:10px;border:1px solid var(--ink);background:var(--wh);border-radius:0}
.pick{max-height:280px;overflow:auto;border:1px solid var(--ink);background:var(--wh)}
.pick button{display:block;width:100%;text-align:left;font:16px/1.4 "Karla",sans-serif;padding:10px 12px;border:0;border-bottom:1px solid var(--ln);background:transparent;cursor:pointer;color:var(--ink)}
.pick button[aria-pressed=true]{background:var(--kr)}
.themes{display:flex;gap:8px;flex-wrap:wrap}.themes button{font:700 14px "Karla",sans-serif;padding:8px 12px;border:1px solid var(--ink);background:var(--wh);cursor:pointer}.themes button[aria-pressed=true]{background:var(--ink);color:var(--wh)}
.note{font-size:15px;color:var(--mu);margin-top:12px}
.toast{font-weight:700;color:var(--sg);min-height:1.5em;margin-top:8px}
.fb label.f{display:block;font-weight:700;margin:12px 0 4px;font-size:16px}.fb .r2{display:grid;grid-template-columns:1fr 1fr;gap:14px}.fb .msg{margin-top:12px;font-weight:700}.fb .msg.ok{color:#2e6b3a}.fb .msg.err{color:var(--vm2)}.fb .hp{position:absolute;left:-9999px}
footer.ft{background:var(--ink);color:#E6E0D0;padding:42px 0 22px;margin-top:0}
footer.ft .g{display:grid;grid-template-columns:5fr 3fr 3fr 3fr;gap:30px}
footer.ft h4{font:700 13px "Courier Prime",monospace;letter-spacing:1.5px;text-transform:uppercase;color:var(--kr);margin-bottom:10px}
footer.ft a{color:#E6E0D0;display:block;padding:2px 0;font-size:16px}footer.ft p{font-size:16px;margin-bottom:6px}
footer.ft .lg{margin-top:26px;padding-top:14px;border-top:1px solid #3c4a42;font-size:14px;color:#B9B4A4}
#cn{position:fixed;left:16px;bottom:16px;max-width:560px;background:var(--wh);border:1px solid var(--ink);padding:14px 16px;display:none;gap:10px;align-items:center;flex-wrap:wrap;z-index:50;font-size:15px;box-shadow:6px 6px 0 var(--kr)}
#cn.on{display:flex}#cn span{flex:1;min-width:220px}#cn button{font:700 15px "Karla",sans-serif;padding:8px 14px;border:1px solid var(--ink);background:var(--ink);color:var(--wh);cursor:pointer}#cn button.no{background:transparent;color:var(--ink)}
@media(max-width:960px){.hero .w,.split,.side2,.maker{grid-template-columns:1fr;gap:30px}.occ{grid-template-columns:1fr 1fr}.occ a:nth-child(3n+2),.occ a:nth-child(3n){padding-left:0;border-left:0}.occ a:nth-child(2n){padding-left:18px;border-left:1px solid var(--ln)}.aside{border-left:0;padding-left:0}footer.ft .g{grid-template-columns:1fr 1fr}}
@media(max-width:720px){body{font-size:17px}.menu-btn{display:block}header.mast .w{flex-wrap:wrap}nav.m{display:none;width:100%;flex-direction:column}body.menu-open nav.m{display:flex}.occ{grid-template-columns:1fr}.occ a:nth-child(2n){padding-left:0;border-left:0}.msgs li{grid-template-columns:1fr;gap:6px}.fb .r2{grid-template-columns:1fr}footer.ft .g{grid-template-columns:1fr}.w{padding:0 18px}.card blockquote{margin-right:0;margin-top:70px;font-size:22px}#cn{left:8px;right:8px}}
@media print{header.mast,footer.ft,#cn,.ph,.ctrl,.nop,.skip{display:none!important}body{background:#fff}.maker{display:block}.card{box-shadow:none;max-width:6in;margin:1in auto}}
