:root{
  --bg:#F2EFE9; --ink:#121212; --mute:#6B6660; --soft:#3B3834; --line:#CFCBC3; --accent:#0B3FCF; --field:#FBFAF7;
}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]){ --bg:#141412; --ink:#F1EEE7; --mute:#8E8A82; --soft:#C4C0B8; --line:#2E2C28; --accent:#6C8CFF; --field:#1C1B18; }
}
:root[data-theme="dark"]{ --bg:#141412; --ink:#F1EEE7; --mute:#8E8A82; --soft:#C4C0B8; --line:#2E2C28; --accent:#6C8CFF; --field:#1C1B18; }
:root{color-scheme:light}
:root[data-theme="dark"]{color-scheme:dark}
@media (prefers-color-scheme: dark){ :root:not([data-theme="light"]){color-scheme:dark} }
*{box-sizing:border-box}
html,body{margin:0}
body{
  background:var(--bg); color:var(--ink);
  font:400 17px/1.55 "Manrope",system-ui,-apple-system,sans-serif;
  padding-inline:clamp(16px,4vw,48px); padding-block:20px 40px;
  max-width:1200px; margin:0 auto;
}
a{color:inherit}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:3px}

.top,.foot{display:flex;justify-content:space-between;gap:16px;font:600 12px/1 "Manrope",sans-serif;letter-spacing:.12em;text-transform:uppercase;color:var(--mute)}
.top a{text-decoration:none}
.top a:hover{color:var(--accent)}
.top .right{display:flex;gap:20px;align-items:center}
.theme{font:inherit;letter-spacing:inherit;text-transform:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer;display:inline-flex;align-items:center;gap:6px}
.theme:hover{color:var(--accent)}
.theme svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.theme .sun,.theme .moon{display:none}
:root[data-theme="dark"] .theme .sun{display:block}
:root[data-theme="light"] .theme .moon{display:block}
:root:not([data-theme]) .theme .moon{display:block}
@media (prefers-color-scheme: dark){ :root:not([data-theme]) .theme .moon{display:none} :root:not([data-theme]) .theme .sun{display:block} }

.hero{padding-block:clamp(56px,12vh,140px) clamp(40px,8vh,96px)}
.hero h1{
  font-family:"Archivo","Arial Black",sans-serif;font-weight:900;
  font-size:clamp(56px,13vw,168px);line-height:.88;letter-spacing:-.02em;margin:0;
  text-wrap:balance;
}
.hero h1 span{display:block;color:var(--accent)}
.lede{font-size:clamp(19px,2.4vw,26px);line-height:1.4;margin:28px 0 0;color:var(--soft)}

.row{
  display:grid;grid-template-columns:minmax(140px,1fr) minmax(0,3fr);gap:16px 40px;
  padding-block:32px;border-top:2px solid var(--ink);
}
.row h2{font:600 12px/1.6 "Manrope",sans-serif;letter-spacing:.12em;text-transform:uppercase;color:var(--mute);margin:0;padding-top:6px}
.row p{margin:0 0 12px;max-width:60ch}
.row p:last-child{margin-bottom:0}
.big-link a{
  font-family:"Archivo",sans-serif;font-weight:900;letter-spacing:-.015em;
  font-size:clamp(28px,4vw,44px);line-height:1;text-decoration:none;
}
.big-link a:hover{color:var(--accent)}
.big-link small{font-size:.5em;color:var(--mute);vertical-align:.25em}

.list{list-style:none;margin:0;padding:0}
.list li{display:flex;flex-wrap:wrap;justify-content:space-between;gap:4px 16px;padding:12px 0;border-bottom:1px solid var(--line)}
.list li:first-child{padding-top:0}
.list a{font-weight:600;text-decoration:none;border-bottom:1px solid var(--line)}
.list a:hover{color:var(--accent);border-color:var(--accent)}
.list span{color:var(--mute);font-size:15px}
.row .big-link + p + .list{margin-top:24px}

.grid-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:0 32px}
.grid-list li{display:flex;flex-direction:column;gap:2px;padding:10px 0;border-bottom:1px solid var(--line)}
.grid-list a{font-weight:600;text-decoration:none;width:fit-content;border-bottom:1px solid var(--line)}
.grid-list a:hover{color:var(--accent);border-color:var(--accent)}
.grid-list span{color:var(--mute);font-size:14px}

.form{display:grid;gap:18px;max-width:560px}
.form label{display:grid;gap:6px;font:600 12px/1 "Manrope",sans-serif;letter-spacing:.1em;text-transform:uppercase;color:var(--mute)}
.form input,.form textarea{
  font:400 17px/1.4 "Manrope",sans-serif;color:var(--ink);background:var(--field);
  border:1px solid var(--line);border-radius:4px;padding:12px 14px;width:100%;
}
.form textarea{resize:vertical;min-height:120px}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.actions{display:flex;align-items:center;flex-wrap:wrap;gap:16px}
.form button{
  font:600 14px/1 "Manrope",sans-serif;letter-spacing:.08em;text-transform:uppercase;
  background:var(--ink);color:var(--bg);border:0;border-radius:4px;padding:14px 22px;cursor:pointer;
}
.form button:hover{background:var(--accent);color:#fff}
.form button[disabled]{opacity:.5;cursor:default}
.status{margin:0;font-size:15px;color:var(--mute)}
.status.ok{color:#1F8A4C}
.status.err{color:#C0392B}

.foot{margin-top:48px;padding-top:20px;border-top:1px solid var(--line)}

@media (max-width:640px){
  .row{grid-template-columns:1fr;gap:10px}
}
@media (prefers-reduced-motion:no-preference){
  html{scroll-behavior:smooth}
}
