:root{--pa:#FBF7EE;--pa2:#F2EBDA;--ink:#2E1A3B;--co:#F25C3B;--co2:#C8401F;--mi:#CFE8DA;--mu:#625869;--ln:#E0D6C2;--wh:#fff}
*{box-sizing:border-box;margin:0;padding:0}
body{font:18px/1.65 "Libre Franklin",Arial,sans-serif;color:var(--ink);background:var(--pa)}
a{color:var(--co2);text-underline-offset:3px}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--co);outline-offset:2px}
.skip{position:absolute;left:-999px;top:0;background:var(--mi);padding:8px 12px;z-index:99}.skip:focus{left:0}
h1,h2,h3,.slab{font-family:"Alfa Slab One",Rockwell,Georgia,serif;font-weight:400;line-height:1.08}
.w{max-width:1160px;margin:0 auto;padding:0 24px}
header.top{border-bottom:4px solid var(--ink);background:var(--pa)}
header.top .w{display:flex;justify-content:space-between;align-items:center;gap:16px;padding-top:14px;padding-bottom:14px}
.logo{display:flex;align-items:center;gap:12px;color:var(--ink);text-decoration:none}
.cal{width:46px;border:3px solid var(--ink);background:var(--wh);text-align:center;line-height:1}
.cal i{display:block;background:var(--co);color:#fff;font:700 10px "Libre Franklin",sans-serif;letter-spacing:1px;padding:3px 0;font-style:normal}
.cal b{display:block;font:400 22px "Alfa Slab One",serif;padding:4px 0 5px}
.logo strong{font:400 28px "Alfa Slab One",serif;display:block;line-height:1}.logo small{display:block;font:600 12px "Libre Franklin",sans-serif;letter-spacing:1.4px;text-transform:uppercase;color:var(--mu);margin-top:4px}
nav.m{display:flex;gap:4px 18px;flex-wrap:wrap}nav.m a{color:var(--ink);text-decoration:none;font-weight:700;font-size:15px;padding:4px 0;border-bottom:3px solid transparent}nav.m a:hover,nav.m a.on{border-color:var(--co)}
.menu-btn{display:none;font:700 14px "Libre Franklin",sans-serif;padding:7px 12px;border:2px solid var(--ink);background:transparent;cursor:pointer}
.kick{font:700 13px "Libre Franklin",sans-serif;letter-spacing:1.6px;text-transform:uppercase;color:var(--co2)}
.hero{border-bottom:4px solid var(--ink)}
.hero .w{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:48px;padding-top:46px;padding-bottom:46px;align-items:start}
.hero h1{font-size:clamp(40px,5.6vw,70px);margin:10px 0 16px}.hero h1 span{color:var(--co)}
.hero p.dek{font-size:20px;max-width:34em}
.tool{background:var(--wh);border:4px solid var(--ink);padding:24px;box-shadow:10px 10px 0 var(--mi)}
.tool h2{font-size:26px;margin-bottom:6px}.tool label{display:block;font-weight:700;margin:12px 0 6px}
.tool input[type=date]{width:100%;font:600 20px "Libre Franklin",sans-serif;padding:12px;border:3px solid var(--ink);background:var(--pa);border-radius:0;color:var(--ink)}
.tool .row2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.btn{display:inline-block;font:700 17px "Libre Franklin",sans-serif;padding:13px 22px;border:3px solid var(--ink);background:var(--co);color:#fff;cursor:pointer;margin-top:16px;text-decoration:none}
.btn:hover{background:var(--co2)}.btn.alt{background:var(--wh);color:var(--ink)}
.err{color:var(--co2);font-weight:700;min-height:1.2em;margin-top:8px;font-size:16px}
.priv{font-size:14px;color:var(--mu);margin-top:10px}
.out{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:6px}
.out.one{grid-template-columns:1fr}
.res{background:var(--wh);border:3px solid var(--ink);padding:16px 18px}
.res h3{font-size:20px;margin-bottom:8px;padding-bottom:6px;border-bottom:3px solid var(--mi)}
.r{display:grid;grid-template-columns:1fr auto;gap:2px 12px;padding:7px 0;border-bottom:1px solid var(--ln)}.r:last-child{border-bottom:0}
.r span{font-size:15px;color:var(--mu)}.r b{text-align:right;font-weight:700}.r small{grid-column:1/-1;font-size:13px;color:var(--mu)}
.nt{font-size:14px;color:var(--mu);margin-top:8px}
.big{font:400 56px/1 "Alfa Slab One",serif;color:var(--co);margin:4px 0}
section.s{padding:48px 0;border-bottom:1px solid var(--ln)}
.sh{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-bottom:20px}.sh h2{font-size:clamp(28px,3.4vw,40px)}
.tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:4px solid var(--ink);border-left:1px solid var(--ln)}
.tiles a{display:block;padding:18px 18px 20px;border-right:1px solid var(--ln);border-bottom:1px solid var(--ln);text-decoration:none;color:var(--ink);background:var(--pa)}
.tiles a b{display:block;font:400 21px/1.15 "Alfa Slab One",serif;margin-bottom:6px}.tiles a span{font-size:15px;color:var(--mu)}
.tiles a:hover{background:var(--mi)}
.xmas{display:inline-block;background:var(--ink);color:#fff;font:700 15px "Libre Franklin",sans-serif;padding:6px 12px;margin-top:18px}
.ph{border-bottom:4px solid var(--ink)}.ph .w{padding-top:34px;padding-bottom:30px;display:grid;grid-template-columns:minmax(0,6fr) minmax(0,6fr);gap:40px;align-items:start}
.ph h1{font-size:clamp(34px,4.6vw,54px);margin:8px 0 12px}.ph p{font-size:19px}
.crumb{font-size:14px;color:var(--mu)}.crumb a{color:var(--mu)}
.body{padding:34px 0 56px}.pr{max-width:46em}.pr h2{font-size:28px;margin:26px 0 8px}.pr ul,.pr ol{margin:8px 0 12px 22px}
table.t{border-collapse:collapse;width:100%;max-width:46em;margin:12px 0;background:var(--wh)}table.t th,table.t td{border:1px solid var(--ln);padding:8px 10px;text-align:left;font-size:16px}table.t th{background:var(--pa2)}
.fb label.f{display:block;font-weight:700;margin:12px 0 4px;font-size:16px}.fb input,.fb textarea{width:100%;font:inherit;padding:10px;border:3px solid var(--ink);background:#fff;border-radius:0}.fb .r2{display:grid;grid-template-columns:1fr 1fr;gap:14px}.fb .hp{position:absolute;left:-9999px}.fb .msg{margin-top:12px;font-weight:700}.fb .msg.ok{color:#1f6b3b}.fb .msg.err{color:var(--co2)}
footer.ft{background:var(--ink);color:#E9E1EE;padding:40px 0 20px}
footer.ft .g{display:grid;grid-template-columns:4fr 3fr 3fr 3fr;gap:28px}footer.ft h4{font:400 18px "Alfa Slab One",serif;color:var(--mi);margin-bottom:8px}
footer.ft a{color:#E9E1EE;display:block;padding:2px 0;font-size:15px}footer.ft p{font-size:15px;margin-bottom:6px}footer.ft .lg{margin-top:24px;padding-top:14px;border-top:1px solid #4a3657;font-size:13px;color:#BFB3C6}
#cn{position:fixed;left:0;right:0;bottom:0;background:var(--wh);border-top:4px solid var(--ink);padding:12px 20px;display:none;gap:12px;align-items:center;flex-wrap:wrap;z-index:50;font-size:15px}
#cn.on{display:flex}#cn span{flex:1;min-width:220px}#cn button{font:700 15px "Libre Franklin",sans-serif;padding:8px 14px;border:3px solid var(--ink);background:var(--ink);color:#fff;cursor:pointer}#cn button.no{background:#fff;color:var(--ink)}
[hidden]{display:none!important}
@media(max-width:980px){.hero .w,.ph .w{grid-template-columns:1fr;gap:28px}.out{grid-template-columns:1fr 1fr}.tiles{grid-template-columns:1fr 1fr}footer.ft .g{grid-template-columns:1fr 1fr}}
@media(max-width:680px){body{font-size:17px}.menu-btn{display:block}header.top .w{flex-wrap:wrap}nav.m{display:none;width:100%;flex-direction:column}body.menu-open nav.m{display:flex}.out,.tiles{grid-template-columns:1fr}.tool .row2,.fb .r2{grid-template-columns:1fr}footer.ft .g{grid-template-columns:1fr}.w{padding:0 18px}.tool{box-shadow:6px 6px 0 var(--mi)}}
.w.pr{max-width:1160px}.w.pr>*{max-width:46em}.w.pr>table.t{max-width:46em}
