/* Troy's Texas BBQ -- dark smoky Texas theme. Self-hosted, zero CDN. */

@font-face {
  font-family: "Alfa Slab One";
  src: url("/static/fonts/alfa-slab-one-v21-latin-regular.woff2") format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Inter";
  src: url("/static/fonts/inter-v20-latin-regular.woff2") format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Inter";
  src: url("/static/fonts/inter-v20-latin-500.woff2") format("woff2");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Inter";
  src: url("/static/fonts/inter-v20-latin-600.woff2") format("woff2");
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Inter";
  src: url("/static/fonts/inter-v20-latin-700.woff2") format("woff2");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

:root {
  --char: #171310;
  --smoke: #241E19;
  --cream: #F5EDE3;
  --ember: #E8590C;
  --ember-dark: #c74c09;
  --red: #B23A1E;
  --gold: #D9A441;
  --line: rgba(245, 237, 227, 0.12);
  --shadow: 0 10px 30px rgba(0,0,0,0.45);
  --radius: 4px;
  --font-display: "Alfa Slab One", "Impact", sans-serif;
  --font-body: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  --max-w: 1180px;
}

* { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body {
  margin: 0;
  background-color: var(--char);
  background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAA9pUlEQVR42i2a9z/V++PAX+/9Pu8zqERGVqmIjCIpJIRIWrhIohQtyadUCg3dbnXrVmSFJkXaSpKMFBmVPRp2ISPhnPNe31++/8Xz+Xw8oSVLlqDr169Hent7+ZKSElIqlfI5OTmTixcvhgICAuC0tDTM29sb3rdvn0xBQQG/e/fuZGlpKb5p0ybu+vXr/KZNm7gTJ05gMAzz0dHRaFNT0+TWrVvJDRs2cD9//oT37NkDz5o1i79796702bNngk2bNsmfPn3KC4VCxNfXFzI0NKQRBEFyc3OxmTNngtTUVH7hwoX8nDlz5Hv37kXT0tLQ3t5eYGFhMVFbWwsMDQ3xHz9+0F1dXaS5ubnc398fGRgYYK5duwYmJydxkiShjRs3gtHRUebWrVvsuXPneA0NDWBhYSFAEAScPn2ad3Z2Zm/evIkYGhryICYmRoRhmMTKykry999/S3Jzc7GEhATKw8NDCEEQ6evrK7KwsJAkJiZKtm3bhhcVFeEAAPHt27eFAoEAy8/PJw8fPoweOXJEPG/ePEwqlWLLly/Hx8bGRBs2bCCbm5uJ4OBgsqqqSlJUVCTs6+vDjh07RmhrawsoihL/73//E4eFhaGzZ8+WaGpqErq6uujdu3exQ4cOkVKplLC3txf//v2b+P37N7VlyxbM1NRU0t7eLmhubqaGh4dRMzMztKamRrB48WIiMDCQ6OnpwZubm/F///1XGB0djXV2dorMzMxQgiCwQ4cO4R8/fhROTEwQ1dXV6IYNGygIgiAqLi4OEgqF/Pbt25kdO3bAEomEefjwIcZxHN3U1ET6+flJW1paYLlcTvA8D3l6ejJv375F7OzsQEJCApg+fTobGRnJvXv3Dre0tJT19fUhr169Qj09PVmSJOVBQUG4sbGx3MrKilBTU5PPnz+f//DhA6qkpMSuWbMGf/nyJRQaGgrFx8eD1NRU6bp16/gHDx4QqqqqjJ2dHdbW1sawLItpaWlx+/fvZ7S1tdnXr18jNjY2zJUrV+D29nbg5+eHS6VSYGBgINPV1YUGBweRJUuWQBMTE3I/Pz/s4MGDwMvLC1NSUgLPnj2jU1NT0ejoaDm8bt06xs3NTVZRUcG3tLSQmpqaoLOzE7p16xZdV1eHhIeH80FBQairqyv08+dPaPny5YyJiQnX29tLm5ubQy9evIBiYmLkycnJYGxsjO/r62MfPnyIpKSk0ARB8MnJydimTZvYrq4u7PLly+DLly+IgYEBMDQ0RBUUFMjNmzczKIpC1dXVtLm5uVwkEkEeHh6Cc+fOwRRFYRRFsfHx8byBgYFs48aN0L1795D379/j8fHxaHt7OxwbGwvr6enxCQkJcFlZGb1lyxaot7eX27lzJ9za2gpdvnyZKi8vh37+/AlNmTJFeuLEicnbt29z//zzD5+WlsbChoaGvLKyMnzp0iXs48ePrK+vL3r58mXIxMSEuHLlCpg7dy7k6OiI4zgONTQ0TJqYmLBdXV1QTEwMeuDAAWlsbKxMXV0dNjMzYw8dOsTq6uqSz58/Z+3s7LjFixeD2tpaZMuWLcivX7/4xMRELjw8HLly5Qr+7t072tbWlq2trYUlEgngOI7V0dHhqqqqEAsLi0lVVVXp5cuXZdHR0VxJSQnU2tqKfvjwgdHU1GTHx8fZV69e8SoqKvjw8DD07t07QXZ2Njhw4ACrqqoKcRwn+PTpE6Ourg6Cg4N5kUgExcXF8S0tLYSlpSVUXl7OPXnyhKmrq8Ohbdu2YSoqKkBTU1Nw8+ZNvrm5mSkvL8c6OzsnR0dHeX19fWLz5s38iRMnUDMzM+nY2BjIyckhdu/ezf348QO+d+8e8+fPH2bKlCn40NAQWLlyJefm5gYnJibS69evh169egXJZDLw7ds3NDIyEvj5+cnU1NSw6OhoODY2lo+JiQFisVj+77//wkuWLAHV1dWEtrY2++fPH14mk/G2trb806dPQWtrKzs4OIi2tbUhOjo6tKKiIqqlpQUjCCKtq6tDpkyZAvX19fE5OTnokiVLmKamJubYsWNwcHAwLxQKybNnz3Jbt24F+fn59K5du+DW1lbWyMgIAzRNY+rq6ribm5s4JSUFi46OxhoaGsT79+8XlZSUCDs7O8m2tjZSU1NTbGZmRuzatYvU19fHDx8+jM+ZMweHIIjq7e0Vj4yMkIqKisTly5fJHz9+YAcPHiS3bdtGWVlZifbv3y9xc3MjnZ2dMU1NTfzatWviy5cvC21tbYUpKSnU2bNnRQzDCPX19cVKSkrU7du3xTExMeiCBQsIiqIkZ86cESspKeEjIyOizs5O0s/PT/zt2zcJTdPYyMiI4NOnT4Jbt25JzM3N8aysLIplWbK6ulo0depUoZGRkSA2NlawdOlSCgAgGRwcpNTV1Yn8/Hwxz/MStK+vj1+9ejXS1tZGOzo64v7+/jKapmWGhoa4o6MjVFFRwd68eRPU1NSwgYGBuL6+PqSlpcXt2rULgmEY1NTU8EeOHAHd3d3s0aNHMXV1dTgjI4NRVVUFJ06cYPr7+/Fp06bRT548QVVUVJCuri6msbERrFq1irG1tWU/fvxIWFpacmvXroV+/vwpu3r1Km9paUk7ODiAiooKREdHZ3L79u3I7Nmziba2Nsjf3x9KSkpi1NTUEBUVFXLKlCnysLAwkJKSwqAoSp49e5a9f/8+yM/PlyYmJoKRkRFMX18fqqioYD9//oyEhYUxNjY2PEVRICoqikW3b9+O3Lx5E09ISGBv3LiBlJeXExs3bkQePXo02dbWhj5//lwQHBwsZ1kWqKio8IGBgfLjx49jb968gdXV1ekLFy7gRUVFcisrK7K+vh709PTQBw8eFNja2sq3b99OaGlpQeXl5fDAwADo6uqSV1dXs8rKyrLQ0FD40KFD+PPnz5n+/n4sMjIS2NjYgNbWVnxoaIi7efMmPDg4SK9evVrQ1tbGSSQSKc/zvL+/P3n06FH+6NGjcEREBG9tbU3QND3p4uKCxsfH8ykpKXBlZSUydepU3MnJSd7d3c0cOHCAr6qqQg0MDKQNDQ2wkpISqqenx0ybNg1FcRxHVq5cyaalpbHLly/ndu7cCXt4eMjmzJkDWltbEU1NzYnfv3+jf//9N3v69Gn2f//7nyAtLW3C1NQUuXv3Lu7v7z+ZkZFBhoaGyq2srHgEQWAXFxeZUCgETU1NUE5OjlQulyPh4eGooaEhExkZiRYXF3OFhYVoUFCQLD8/Hy8vLwdRUVG8lZUVcfv2bejkyZOgoaFB1tvbi/f09IBNmzbxOTk5YOXKlZiurq4MgiCkv7+fV1RUhFRVVeX+/v6CRYsWMW1tbfLBwUHYzs4OCgoKop88eYIBAPClS5fSBEFgExMTkyzLcv39/YiLiwuYMmUKD9fW1iIHDhxA9uzZA9++fRsLCQmRPXz4EO/t7UUPHToEPXv2DJ4/fz7f2NiI1tfXA11dXT4kJAQPCgrCnZ2dJ8fGxpBFixYxjo6O7NOnT0FVVRXLcRx54cIF3sLCgqmoqMAyMzNZBwcHGoIgwefPnxlzc3OwYsUKeHh4GBkeHka0tbX57OxsXk1NTT579mx6xYoV8uPHj1MoisKlpaUTS5Ys4ZcsWcLb2tryOjo60IoVKwAEQfTu3bsBAAAiSZIhCAKuqanhpFIpPTk5KVdRUQEAAGTp0qX86tWrsdOnT8udnZ2x9vZ2dN68ecjLly/BwMAAh8ydOxcKCwtDbG1toe3bt7OamppwS0sLV1NTw4yPjyOKioqAIAi8sbGRefToEdDV1eW+fPmCaWhoQAUFBWxBQQE6Y8YMtKWlBdPR0WEMDAyAn58frKGhARITE0FOTg534sQJ1NbWlg4ICABPnz4lx8bGkOvXr3Pp6elwT08P6+XlBQcFBckOHz4MtLS0uMuXL/MURcF6enrQ5cuXIX9/f/6vv/5ClZWVsX///RfdtGmTnOd5EBYWBh49ekQMDAywFRUVSEtLC5g+fTpJURS7bt06xNfXF21ra5NFRESgnp6ekImJiczb2xuur69nhUIhMj4+zsKKioq8s7MzHRwcDAYGBlCJRIJ+/vwZDQ0NhVRVVeWjo6NwUFAQs3fvXsLR0RGTSCSolpYWb2hoKK+srITevHmDMAzDDgwMMObm5uDUqVOkp6cnGx0djbe2tgIFBQV0/fr1rIqKClxbW4vMnj2bAQDIdXV1OalUyhcUFEBVVVV0ZGQk1NLSAm/evBltbW2ljIyM6ODgYKmdnR185swZREtLC9m4cePk8PCwvLS0FDIxMQE1NTW8qqrqZFVVFXf//n3oxo0bTHJyMrt8+XLSw8ODa2hoYLy9vYlTp07JWJaVh4eHkzzPs7m5uciKFStkW7duhdGlS5dyYWFhvFwu50+dOoVzHCerq6tDfv36ReI4Dq5cucKGhYUxwcHB0O/fv9mNGzcyPM+DpUuXom1tbZiFhYVcW1sbX7NmjXzOnDmcvb09nZCQAL19+5YZGBiADh06JF+7di32+vVrtKqqSvbvv/8CBEHIAwcO8GfOnGHT0tKYHz9+CEZGRuSrV6/GqqqqZAKBAEAQxAkEAoGBgQF99uxZtr+/H12zZg0vlUqx8PDwyYCAAMjS0pKwt7enc3JyUCsrK97GxkaQm5tLNzc3g5CQEEJLS4svKChge3p6iNbWVpmCgoI0MzOTePXqFeTm5oa6uLjA8ODgoKC9vR3Py8vjFBUVpdbW1qC6upqZmJgA3t7ek5mZmezY2Bi5ZMkSLiAggOV5Hp42bRqxa9cuaHR0lPfw8MDU1NQmra2tYVtbW1JfXx/u7e1lS0tLUQcHB8jOzo58/Pgxff36dfnGjRsJe3t7EB4eTkulUrmCggJ39OhRor+/f/Lnz598VlaWrLi4mHBzc0PCw8MFycnJspqaGkwqlfI+Pj60hYUFpaurC8bHxwW1tbW4hoYG+PbtG5yfnw8VFRXRycnJk5aWluysWbP4jx8/crq6uuy///7LIwhC29jY8CdOnCCbmpq4Z8+e8TAMgy1btjDA2dkZU1VVJcvKysSNjY3E2rVrBRkZGcTatWuFw8PDwmvXrgmFQiFWUVEh6u/vJ/bs2SN++vQpqqqqSrIsKx4ZGSFRFMXa29vx06dPC2pqagQqKiqUmpqaOCgoSHD58mXs7du3ot7eXtGFCxfEy5Ytw01NTamioiJBQUEBvm3bNnF1dbVISUkJnTZtGn7v3j3hz58/cScnJ8HNmzfxiooKcVJSkjgnJ0ckl8vFSUlJQpIkBXfv3pVYWlpS165dk4jFYvHv37/JiIgIdHx8HC8pKcGjoqJQS0tLQiAQCDMyMqjVq1dTO3bsoEZHR9GVK1eKQkNDRXfu3JEgHz9+pKysrPiEhAQwY8YMxNzcHP3y5Qty9uxZ+uzZs7xQKOScnJzgly9fQlKpFDYwMAAtLS1gcHAQ09PTY5uamlgrKyu+ra0NzJ49Gy0rK4O0tbVZJycnePr06UxWVhbJMAwdEhKCaWlpQdra2vJv374hJiYmcGxsLC6XyyffvXsHFxcXo11dXUBDQ4P39vbmHBwcsNOnT7Pbt29nfX19obS0NDopKYnes2cPZGJiAunq6oLExERm1qxZXHd3N83zPPDz8xNcuXKF2bZtG+Lp6UnQNM0kJyfDIyMj9Pr164mEhAT58+fP8c2bNzNRUVF8WFgYA7q7u8msrCwSwzDyxYsXhJaWlmTZsmXCa9eu4bW1tZL09HTs6tWrgn379hEODg5Cd3d3YVFRETU6Oirau3cvoa+vL+ru7hbl5+djS5YsQbdv3y52c3PDMzMzRZ2dnVhISIhYLpdj3d3d6I8fP/D6+nrhzJkzRYODg5Jr166hlZWVJARBhJ6eHtrc3CzQ1tYWaWpqYqOjo+ilS5coPz8/vKmpSVBaWiosLi6m9PX1JQ4ODpLHjx9jvr6+ooqKCpGdnR0BQRCamJgobGlpEZWUlBDHjh0TPnr0CD9//jyxZMkStLGxUUySJBESEoItXLhQPGXKFOGMGTMISFlZmaqsrGQvXLjANjc3k6tXr6YVFBRwCILkExMTfFNTEzpv3jwuLi4OtbKygmNjY7lZs2ZJnzx5Qk2bNo37/v07t2DBAub9+/fo27dv4StXrtCxsbFQY2MjUl9fD+Xl5XH79u0DlpaW3ODgIPTmzRs4Pj5efuvWLX7evHn42bNnaTc3N1JBQYGjaZozNTWlP336hHz8+BFdvnw5PDg4yE6dOhU2MDBgNDU1kfHxcbampgY6dOgQvGjRIrBv3z5GTU0NVlZWptPS0uCrV6/C1dXV4NChQ7yPjw9QU1PDCwoKOGNjY9bd3R2HIIj19fXlAADsrVu3AKSpqSkaGxuTEQTBFxQUwDdv3uSbmpp4XV1d8vDhw6y5uTna0tICwTA8QVEUWVtbK7WwsCBPnjwJcByXrlq1Cvbx8eGVlZVhZWVlXEtLiyEIAsrIyOAzMzPh+/fvMzNnziQuXrwI+vr6JouKirDfv3/DZmZm0ilTpsBz5szBnj59inz48IE/ffo039PTQ3t5eeGnT5+mZ8+ezUZGRhKxsbHy//77j6uoqBB8+/aN/fr1K2doaIjNmzcPuLm5QZ2dnUxaWhodGhrKx8bG4g4ODrSlpSU5c+ZMxsHBAYuKimLDwsKYgoICjKIoLj09HQ0KCppsaGiAgZ6eHnbmzBm8pKRE4u7uTt24cUNgYWGBwTBMdnV1Cf755x/M3t4e27x5M9XT0yP6+PEjJhaLsWfPnomMjY3Fd+7coXAcJ+vq6qj58+eLoqKixJ6enpKSkhLcycmJTE5OJhmGwbW1tfGvX7+STU1N5OTkJPbixQvy2LFjEpZlxVu3bhVaWFjgKSkpaGVlpaCkpETQ0dEhaG9vlzg6OpK3bt0SBwcHCzMyMvAPHz4I4uPjJTRNi6OiogRv3rwhKyoqBFZWVuLg4GCxn5+fRCwWC3fu3CmMj4/HPn36JOF5Hk9JSSFiY2Ml7u7uVHFxMdbT0yMeHx8XIwUFBdT8+fORlStXMjRNM6qqqoSvry9bUFCAe3h4cKamptyBAwfAunXrQGFhIaylpQWfPn2aiIqKYmpqakB7ezv3/PlzdseOHXx0dDQ/Y8YMqK+vDwQGBoINGzawampq2LNnz1hLS0s+Ojqamzt3Lrl161bsy5cvzMjICHznzh02JiYGGhoaghsbG3kXFxfE1tYWHRoaAkuXLuXCw8M5ZWVlLj8/H62vr0e+f//OGxoaMmpqanRdXR3h5eUFFRUVIX/99RcwMzMDWVlZzH///QdVVFQgurq66MGDB6EHDx7w1dXVvI2NDf3jxw84Pz8fMzEx4UJCQmDE398fvXTpEtDW1oaVlJQQfX19eUFBAZKTkwOvWLGCO3PmDGpnZ8cHBARgQUFB/MyZM8Hw8DBfWFhIf/v2jd+/fz/b3NyMmJiYAGdnZ9zU1BTExcVBN27cYPX09HBnZ2cwbdo0+OHDh4STkxN/+PBhEBQUxBYVFSFyuZzR09PDpkyZAjk5OdHZ2dlQU1MTExkZiSIIAl+/fp0LCQkBAoEAbW9vl2dkZNDj4+NkZmYm09/fD+nq6rJyuRy+cuUKBMMwZGhoyAYEBDCBgYGwq6sru3HjRqCpqQmdO3dOXlVVRf7584exs7MD69at44yMjACKohzIyckRrVixQiyVSgUzZsxAzczMJAMDA6itrS3e0dEhBABQ27dvx5OTk/Fz585hL168IA0MDAQbNmxAKysrJampqURbW5tkwYIFGACA+PPnD2Zvby/ev3+/qKurC0VRVGBtbU3Z29sLZ8+eTZSVlWGLFi3CMjIyBElJSXhpaSnu4uKCoSgq3rBhg/DJkyfE6tWrqc7OTsLQ0BBzcnLCysrKBG1tbQInJyfi/Pnzkvnz5xP//fcfmpycTAQEBFBXr16VqKurEyzLUkuWLCF4npfMnj1bhOO44MaNG3h5ebm4qalJ4O3tLdTT00N1dXXRuLg4QklJCYU+fPggevfuHbxixQpGJpPRsbGxSHt7O+A4Dl2+fLnc1tYWPXz4MPf69WvexsYGKCgoIAoKClBHRwdrbW3N3r9/H+J5HshkMiQuLo61srICHz584OPi4tCqqire0dEREASBlJSUQLW1tVInJyeBp6cnQ9M0393djREEIS8vL2cxDEOmTJmC3rx5k7906RJTXl6Ol5WV0TU1NcDU1BR+9uwZs2jRIuDn5wd5e3vjt2/f5kQiEbR7925WRUWFXbFiBV9XV4e0tLTgOI6Djo4Obvny5fDy5cvlsbGxfFxcHCoQCNjbt28T69evpxmGwd68eSMH5ubmxKFDhyiaplFnZ2fS2NgYPXDggKiurk7Q39+PmZiYiBwcHCQVFRWYlpYWtWLFCiI+Pp68fv06lZmZKejr6yMPHjyIbd++HV+8eDFuYWGB9/b2CjMyMihra2vR8+fPib6+PvLXr1+ktbU15uHhIUlJSRErKSkRmZmZ+IIFC4i8vDxKVVVVkpSURP71119obW2tMDo6GhscHMScnJwwHMfRffv24du2baNev34tmT9/vvjkyZOYUCjEtm3bJunq6sKNjY0FNjY26ODgIOrp6Sn+8uULxXEcWlpaKmltbcWfPXtGbN68mbxw4YLQzc0NPXr0qOTq1atC5MWLFwIPDw/ZokWL0H/++YfbtGkT3NLSggUEBPA2NjboqVOnOBzH+fr6ej4/Px9ycXFhxGIx99dff2EDAwNIVlYW8+rVK3jBggVwaWkpuHbtGnL8+HGGZVnMycmJDQwMhGpqarDy8nLIw8ODO3nypDwoKIjx9PQkOzo66Nu3b/P19fU4juOyBQsW8Lq6uvzatWt5BEGAtrY2sLW1FezYsQNNSEgA7u7uICkpic7MzMScnZ0xbW1tduHChez58+fRv/76i6+vrwehoaHktWvXgI2NDa2urk4WFRVBFy9ehOrq6kB9fT3v6ekJmpqayLKyMuDi4sIDDMPInTt3Erq6uoITJ05gAAD07du3wsbGRryurk5YXFwsePPmDTY+Pi7ev38/3tfXh02ZMoWkKEpw6tQpTE9PT+Dl5UWtW7cOMzY2FkxOTqLt7e2SDRs2iL9+/Yqrq6tjd+/eJbZs2UKdPn1acvHiRfLQoUOYqqoqRdM0rq6uLoAgiDI0NCTHx8cJU1NTNCQkBI+Pj8d+//6NXbt2jRodHRWePn0aKy8vxwsLC6nCwkK8u7sbjYuLEw4NDZH79+8ntbS0cFNTU+zhw4eiuro6cUREhEhLS4tqbGwUjY2NiSMjI4VJSUlYZWUl6urqivX09OAbN24kkICAAPjBgweoWCzGzpw5w7W3t5MMw7D/+9//ODc3N5QkSbijowPMnDlTPm/ePDAxMQG1tLTgAoFA3tTUhJw8eRJGURScO3cO37x5s2zr1q3ookWL6GXLltHj4+MoQRBsYGAgoqSkRFMUxUMQBPbu3UtmZWXRubm58JMnT6AZM2ZAdXV13Nq1a4GTkxM+a9YsJjMzE+I4jjAxMaGNjY25GTNmwGfOnIFu3ryJPHnyBOrr64OdnJzgiYkJLCMjA/n+/TublpaGGRkZ0SoqKigAgO3v7+eTk5O5Y8eOgcbGRkZJSQlubm4WUBTFGxgYYAcPHsSQuro6cvHixeisWbP4kJAQ1sfHB1FTU0OMjIwgFRUVbs6cOVxmZiYyNDRETJs2Dd22bRsdExODqqiogMbGRuT+/fu8lZUV1t3dTefn55MGBgZMUlISPjw8zBgaGpIAACwqKkoWFRWFPnjwALaxsYGMjIwgW1tbXktLC1+1ahUik8nA3Llz2fT0dDglJQWuqKiAlJSUSCMjI2jfvn1sYmIiNHXqVMTNzQ3S19dHnJycQFFREZyeno48evSINTMzAyiKYitXrgRv376FPD096W/fvoGgoCAkKiqK1dPT46qqqrDNmzdjVVVV9KtXr5iwsDAwNjZGw6tXrwb9/f3SuLg4qKmpCfHx8eHmzZs3cfr0afjOnTtAQ0MD+v37t2zHjh3g6dOn8qioKPTEiROyRYsWodu2baMhCKKFQqHc3t4enTt3LpOTkwPn5uayPT09MABg4tOnTzKGYRCxWIx9/vyZHhwcRCEIYnV0dJDMzExeT08PxMTEwPv27eO+ffsGP378mOc4Dp09ezZ78+ZNWVNTE6Srq0skJCSgHR0daHFxMZueng4BAFgtLa3J1tZWBkEQxsDAgJZIJMzLly/lXV1d0MOHD+GKigq5hoYGee7cOb6uro4+efIkV1VVxQQHB1MXLlxADA0NYeTt27f8nTt3oHPnznF2dnZYU1MTd+bMGW5kZIQhSZI0NTXlfH19MSMjI5mVlRVy584d9tixY5iOjg6LIAi6detWIi0tTX7r1i2mtbWVO3v2LK6oqAibm5uzAwMD6P79+3E1NTWorq5ONn/+fHzt2rWysLAwYubMmZPKysr4jh07uNevX7OBgYHohg0bUJqm5UlJSTQMw9j169fh1tZWJjg4GHR3d3MikUhGkiS2Z88eTi6XM5cuXcJHR0cZHx8fbGhoiHZ0dCS3bNnCuLq6oiYmJkhBQQGbmJiIYBiGL168mDc2NpbDMEwYGxuDoKAgZGJiAkBWVlbY4sWLeWtra6yvrw8xMDCQeXt7Qz09PaChoYF/9OgR2dnZKW9paUFMTU2hsbExrrGxEfr+/Ts6b948Njs7G/Hx8WFfv34NKSsrg7dv30Jqamp8UFAQxHGc7MuXL+jevXthbW1trqCggHNzc4M+fPgA5+bm0hcuXCDKy8t5giBAbW0tzTAMrq+vD2loaIDLly+DGTNmcKtWrZIpKCgQdnZ20Pfv36HCwkImIiICNjExkZ4/fx729vYmIQiS7dq1i6coihwaGpKmp6fDLi4uaFZWFtvU1MScPXtWsHHjRllVVRVx6tQpJjc3F7S2tsJHjhyRoitXroQDAwNBa2srmpeXJ4cgCLe3t0cMDAykZmZmRE9PD9vU1IQcPnwYlslk8u7ubsLV1XVy7ty50J07d2Rbt27FGhsbscTERHbmzJnyt2/fEjU1NfL379/jxsbGaFJSEt3d3Q3fvXuXWLZsGf3r1y++paUFfvDgAT5lyhTp/fv38crKSkQsFrPz5s1jExISgIuLC7x69WqpsbExqaenh5uZmTFubm7Q+/fvmfnz5xMsy8IDAwPIvXv3iNevX09evHiR8PT0hFeuXAkMDAy4qqoqZN68ebLp06fzERERaEVFBQ/DMOTn58fU1NSgP3/+ZCAIkubk5FDwq1evMB0dHWLr1q3gyZMnnI6ODtTe3i6PiIgg6uvrmZs3b4K8vDw0NjaWr6iowDU1NWUrV64kh4aGELlcju7bt49esGDB5JEjR2RTp04lzpw5w9A0jaxatYqbnJxkLl68CNfW1oLq6mppeHg4smjRIjwvL482NjZmFixYADs7O3NLly6VMgwD/fr1C/n58yerpaXFe3p6Yl++fIFCQ0PhW7duQYcOHWKbm5tRfX19ur29XX716lV+2bJl7LRp03B3d3dGXV2dmzZtmrStrQ318/ND1q5di8AwDOXm5qIDAwPA19cXS01Nlaenp3O6urpodnY2BkGQDPb29pb39/dzEomEvXnzJuHu7g47ODhgL1++5NXV1ZF9+/YxMTExbFZWlkxbW5vHcZwvKipiv3//PqGtrY3KZDI8KysLh2EYtLe3y7Zs2QKGhoagjRs38t++fcN1dXWR0dFRLD4+HomPj+cpiuK/fv2K6unpIbq6umDBggVIS0sLVF9fDxUVFTGqqqpEXV0dX1payvj4+ECZmZnco0eP0IMHD5IfP36kOY5jAwMDseTkZLBz50548+bNsrS0NBAUFAQSExOJ79+/46tWrZJRFIVUVlbi7u7udGlpKTh8+DAYHR0VwDAsf/36NdvU1MTJZDIE2NvbYyRJEo2NjbipqSk+NjYmnjZtmmjZsmXYxMSEZMWKFWIAgKS9vV3U1NQkUFZWFrW1tRETExPUkydPxGZmZpSDgwP5588fwsDAgPz06RMZEBCAIggiXrZsmQhBECokJETw6dMngYWFBd7a2iqJjY0lm5ubxQUFBeLz589LPnz4QNTV1YkmJyfxwsJC0eTkJHnt2jXxw4cPqZUrV0qWLVtGdHd34wsXLiSqq6sFampq+Lt37yQwDGOrVq0Sfv36FdPW1ib37dsnmDdvnnjatGlUdXW1+NKlS+KZM2fiLMsKMQwjLl26REyZMkV84MABsaenp2Tq1KkC6PDhw5K4uDipoaEhnJGRAXEcB6WmpsLXr1+XzZ07lwgKCgI6OjpsW1sb19jYiO7cuRNetGgR7eXlBX/58gUeHh4G+/btY2/fvo04OzsDlmV5Ozs72MLCQp6Xl4fa2NjAs2bN4oyMjNi+vj7Y3d0dxTCM9vf3B6ampvyRI0fAw4cP4ZiYGDonJwd3dHTkamtrUTU1NVlzczOGYRgzffp0aGhoiOc4DqxZs4aPiYnhf//+Laivr+cJguCnTp3K3717F+7q6uIGBgbAp0+fIDMzM66zsxP5+PHj5NWrVwlLS0vo+vXrXFZWFtTd3Q3l5uayqqqqNDw6OsosXLgQOX/+PPbixQv21atX7KxZs/isrCzUxMSEd3Z2pmfPng2MjIwQQ0ND8O+//wI7OztMQ0OD3rBhA/3ixQuupqaGnTJlCh8bGyv38vICJ06cgO7du4cODg6yRkZG7OzZs+muri4+ICAAKi4uZi0sLPienh4QHR0NnT17FlZQUODz8vJIjuPY6dOng3/++YdLT09HTU1NQXd3N29qagoHBwdzxcXFvEwmg0JDQ9Hdu3fLa2pq6O/fv7OfPn3ir169KgsNDaUHBweRWbNmydrb2xkfHx/p8PAwpKamBgmFQqmamhr86dMnuYuLC7R161amtLQURSmKYv39/dHTp0/LVFRUuJcvX1K3b9+mra2t4fb2doiiKP7gwYPohQsXoNmzZ3MKCgqMt7c3cuzYMeDt7Q21tLQAHR0dsHjxYtnTp0/JPXv2sO7u7iAoKAiMjIyAnTt3gqNHjxIdHR2T1tbWwMPDAxOLxXBGRgbj7OyM/vr1i3vx4gW8bNkyfs6cOaC+vh7Kzs6Wm5ubQzAM8+np6STHcbSSkhIcFRXFpqWlgdevX/P6+vrwnz9/OC8vL+7KlSuQVCrlR0dHkSdPnjAjIyO4jY0NcHR05FRVVVkDAwPm/v37kJ6entzS0hKxtraefPHiBcJxHAKOHTuGbtu2TWhiYiIKDQ0Vvnv3TpKeni5Yu3atZPr06SIbGxtyYmJCkpiYSLx48QLdu3cvFhkZKfn69auAIAj8/PnzYmtrayoqKgqdPn26eGxsTLxmzRqBkZER4eHhIVywYIHk/v37Ek1NTTQvL0/i7u4usrCwwGUyGXHjxg3Ro0ePhIGBgWhxcbHAwcGBVFJSEn7//l2UkJAgksvlxObNm0WPHz8WDA8Pk+vWrcPWrFkjvHr1KllQUCAEAEhKSkpwgUAgfvnypfjw4cMCbW1tSXl5OcFxnMjd3V188eJFwadPnyS3bt3CTE1NRbq6uuiKFStwRUVFwsLCQgh3d3dD2dnZcEJCAnzx4kXo1atXExoaGlxdXd3Exo0b4cLCQlYmk4HTp0/DGhoaWG5uLqmoqMhZWFgwV65c4Ts6Ovg/f/7QcrmcfPjwoXzv3r28iYkJumDBAuzkyZPyM2fOAGtra/Dq1SsoPT1dGh0dDQ4cOEB6eXlhy5cvZ0dGRiAHBwds6tSpWGJiIrR9+3b4/Pnz3ODgIPvr1y90165d0s2bN/Oqqqro2NgY8vTpU7a1tZXv7e2VnT9/njt//jxPURTHMIysqqqKT0lJ4fPz88GpU6eYjo4OsGzZMjQtLW0ShmF87ty5vEQiEXh5eXFPnjzhent7OdjDwwN7+/atNDc3FwiFQnj58uWgo6MDGx0dxTo7O+kDBw5ABgYG4N69e7CPjw/35s0b2s7OTm5sbIxeuHABz87OBikpKcizZ884VVVVvquri+/t7eX27t0LX7x4kXj37p3MyspKDsMw2tzczOM4zikoKNBTpkxha2pq0J07dzIPHz4ECgoK/J49e+CUlBS5TCZDra2tWQcHB7mHhwdiZWUFeJ5nx8bGQFdXF5KcnAxXVlaS3759o83NzYnu7m740qVLZGlpKezr60s3NzezEomE9/X1ndTV1YXi4+OBtrY2YmZmhvz999/SsLAwFIZh+M6dOwhkZmYmKC8vR83NzWWWlpb4qVOngI6OjnT//v2kpqYm6+/vD3l6esq3bNlCIQhC9/b2cmNjY+zExAR+7tw5OCYmhn79+jUcFRWFHT16dPLo0aPEo0ePOIIgkLq6Onbt2rWIQCDgUlJSGARBcB0dHdnixYvxzMxMDsMwFMdx+vPnz4iampo8ODgY7N69GykrK4Pev38PjY6O0vX19XxXVxdUWVlJHDlyBAwNDQEAgPzq1auwuro6rKGhAeXk5MC1tbVSgiAwQ0NDesuWLZC2tjbr7+8P8vPz8b6+PnRiYkL28uVLvqioiFBTU2NGRka4kZERBO7q6kIrKyuZ1NRUIjc3F6xevZr/+vUr4HkeLFiwgK6qqoIrKiqQ7u5uVkVFhZdKpej79+/xadOmISKRCOTn56PJyclMWFiYlOd5TFFRkQ0PD5d///6dU1VVhS5cuECzLIsoKipyP378kEZHR5Pq6uqy6OhomCAIJjw8nDY3N2cVFRVBVlYWEAqFUGVlJefi4sJ+/PiR7+rqgl+/fk1ERERMBgYGcmfOnOHPnTuHDw8Pc05OTvCDBw/4jo4ONiQkhLC2tmZSU1MJFRUVdmBgAHZ1daXmzZsnb2lpmTA1NYWFQiHn5eXFbtmyhc3MzMRjYmIg6MWLF+jBgwfRAwcOQDNnzmRmzJhBODk5MR8/fuRWr14Nh4aGovPnzweJiYn048ePOQUFBXz79u28goICN23aNM7FxQUHAPD+/v6wuro6PTg4yLS0tIDHjx9T7u7ussTERMTe3p5PTU1F8vPzpTRNo+rq6qy6ujpCkiQTHx9PhYWF0dra2qiDg4Ns48aNyKpVqzBnZ2d25syZyMKFC1mKopDU1FTuzZs3/Lx582Tl5eUCkiT5HTt20BkZGXBkZCS7Z88eTlNTE8/MzET2798vi4iIgIODg5n+/n78+vXr0OrVq7k9e/bwp0+fRg0NDeXp6elIa2srBx88eJD48uULcvfuXW5wcBAvKytj582bx65btw6qr69HNDU1wY4dO6SLFi1iFRQU0NLSUtn169dhlmWZ/v5+cvfu3eyOHTsYCwsL2tDQEGlpaUEVFRXhtLS0yQ8fPuABAQFsamoqMjIywrS3t6PKysrcjRs3EEVFRdTGxgaQJDnh5OSErVmzRpqXl8dVVFRA6urq0uHhYfjWrVvybdu2MS0tLay3t7fMwcFBrqysjG7cuJFraGigly9fjre1tYHMzEygpqaGLV26FCooKJAaGhrykZGRiKurK4xhGD99+nSooKAAWrNmDZSXl8esW7cOTU5O5kJCQjCwdu1aYVlZGZabm0u0t7dTDx48EEVGRuJz584Vy2Qy7NevXwJTU1Ohj48PWVtbiy1evFhSUlIiYFlWoqWlhe3duxcHAOBubm7C+Ph4qru7mwgJCZHcuHGDTElJoR4+fIihKCquqanBExIS0MLCQpG6ujr6/Plz7OLFi2hkZCRVUVEhuXHjBlVbW0t9/fpVtGvXLom3t7fQycmJKCsrEzQ0NOCXL1+WLF++HMcwDCNJEpfJZJJv377h8+fPx+vr64UtLS1iPz8/YUtLi6i3t5f6/wpMIQgi5nmeOHPmDFVQUIBOmzZNPDk5KViyZIl4YmICg5ydnUVOTk58UlIShGEYXVZWRlhYWIDIyEg+KiqK6e/vh7u6uiCSJKH8/HxWKBRy379/544dO0acOXMG9Pf3T+7evVuwdetWUFZWBh05coSPjIykBwYGWGdnZ6Kvr4/x8fHhJBIJ/OfPHyYvL0+gra0N/vz5A129epX+3//+x2tpaSHd3d3Q06dPWXV1dXbWrFnYqVOn+Dt37qA7duwAERERMl9fX7apqQm6fPkyVFdXh+I4zgEA0JMnT3IeHh5QUVER7e3tzT179owwMTFBvn79ykVERMgyMjKwxsZGnud5PisrCyQkJCBPnjxBfvz4wbm4uMCokpISe+DAAYzn+UkYhjE7OztOIpHAjo6OzKdPn3hFRUVGX1+f1dTUBMuXLxfU1tbSQ0NDpImJCVtaWkoDANBbt25xHz9+RGpqauS/f//GFRUVgY+PD1i9erXUwsIC7+vrY1pbW+Hm5maiv7+fMzIygsPCwqQqKir8yMgIceLECdrHxweNiIhgzp8/D2QyGXz//n3u4sWLbF1dHfL06VM2PDwcvXbtGpSbm4sqKSnxcrkc6u7u5nJycmCGYaRr164lAgIC4EOHDjHNzc18bGwsqqqqispkMjogIACJioriOjs70aSkJDY4OFg+MjKCR0REAOTx48dIQ0OD3NraGqxcuRLdt2+fXEtLC54zZ458+/btSF1dHcTzPKqmpgbi4+PRFy9eoEuXLpXm5eXxJSUlgk2bNoH3798zs2fPlpeWlpIxMTHyz58/I8rKylhubi5bUVGBchzH/fr1C3V1dUWDg4PZW7duIaWlpXx1dTXLsiwUFxfHbtmyhXNzc4NcXV2J7u5ufurUqfDnz5/lCIKgmZmZrKOjI8rzvPzs2bPc/PnzMZZluaVLlzJfv35lNTQ0CFtbW/7Hjx/0kSNHcAzDwOjoKLx7927OzMyMTUxMhKqrq3GSJOF9+/bBDx8+RJqamthPnz4x8F9//cVnZ2cTUqkUTk1NlY2NjSE1NTV8cnIy1tjYSKuqqtKOjo7M58+f0bVr104aGhpyxsbG2Pr168mcnByZsbExt2nTJm7x4sW4RCJhvLy82Ddv3sDXr1+fLCoqghYtWgRHRkZCmzdv5pOSktiEhATs8OHDch0dHVBfXw/Ky8t5PT09EBgYiMEwDH7//k3b29vD9fX1kL29PbFixYrJqVOn4r9//2YqKiqIs2fPcrm5ubJfv37xAwMDBEmSRElJCaShoQFSU1O5L1++8M+ePeNTU1PZxMREeO7cucjjx4+xyspKztbWVsZxHENRFFJWVsa0trYSIDU1FR8YGBCLRCLhr1+/8NraWrywsFDy69cvCQBAMnv2bOrevXsiRUVFsrW1lQwNDZXo6+uLs7Oz0ZcvX6KWlpZUQUGBUElJSVBQUIDr6uqKduzYgWdnZxNWVlaSP3/+iHfu3EncunVL8Pfff4uam5tJdXV17PXr14K+vj6hjY2NMD4+Xvjq1SuJjo4O0d/fj+nr61O+vr7k3LlzsQ0bNpBLlizBOY7Dd+zYIRIKhWRDQ4PE3t5e+OjRI6qrq0tCURQZEBCACYVCIjs7m3rw4IEkMzNT2NXVJUxJSRHb29uTXl5eZEREhPD169fkjBkz8KdPn5I/f/7EERRFBX/+/JFTFIVnZ2czAwMD/OHDh0FRURHYtm0bS1EUd/78eezSpUvc+fPnobNnz0JVVVVAXV2dDQwMxL98+cKIxWLo48eP9OzZswVmZmbc9OnTsZycHCQjI4Nxd3cHJSUl7Ldv36Ds7GzAcRy8b98+9tevX2xqaiquo6PDdHR00MnJyUhRURHm6OiIpKenMyEhIfDZs2eJmJgYvq6uDlZVVYUNDQ1lRkZGCACADQkJQQIDAxk/Pz+wa9cu/vHjx+jt27e53bt3cyzLcjt37kTevHkjnzlzJnP8+HHU398fam1thbds2YKUlZVxnZ2dyMjICArRNI2mp6cLIAji1q1bx2hra7N2dnaoq6sr7u3tPXnjxg3s/fv3kK6uruzNmzdoUVERW1hYSFpbW4OfP3/SSkpKbFVVFeHi4sK4urpilZWVsri4OOzGjRucRCKhLS0tMVdXV+z79+8TX79+RS9fvowuW7YMlsvlk1KplPDw8GDHx8d5LS0tlqZpaN26deCff/5BduzYAeXl5TFxcXGQuro6pqurS1dUVCCPHj2iPTw8oOrqauzevXssQRCcvr4+UV1dLRscHOSuX7+OYBjGL1y4EK6qquJhGOauXr0K3N3d+Y8fP+Kampqsrq4u29fXR2hqarKwuro6BACAQkND5evWrcP9/PwEM2bM4NTU1Casra0hmqYRLy8vrqGhgbSxsUHnzJkD3N3d+UOHDskfPXrEKSgogNzcXDAwMAAJhUJOVVUVTJ06lb9y5Qqno6OD5+bmgpCQEPb48ePko0ePkP/++4959OjR5KpVq/De3l5ucHAQxjAMNzAwgDU0NOCGhgbo8uXLcFlZGePt7U2+e/eO+H+5wkZHR2l/f3/s0qVLhKGhIb13714oJycHOXnyJNDS0uLb29vx0tJSaNWqVaS3tzf05MkT4vz58/izZ8+g4uJiyMnJievp6UFtbW2pOXPmyCYmJhigq6srFIvFeGlpqTgzMxNPSUkRm5qaYgzDCLdv305yHCc8deqU6MGDB6L/PzWwsrIy4fXr16nOzk7h1KlTUR8fH1FKSgpO0zTl4OBAvnv3TmhpaSmmaVoyMjIi9PDwEGloaFBxcXHC4uJi8dOnT8lbt26hEolErKKighcUFAjEYrEkNzeXMjU1pR4+fCj4/PmzQENDQ3L06FEiMjJSkp6eLp4/fz6WmpqK5eTk4BRFie7cuYMODAxImpubxU1NTSRFUUKhUCgoLi4Wv3v3TmBmZiZcuHChJCQkRMBxnOj+/ft4UlKS4Nu3bwTHcZI5c+aIUFdXV1ZNTY1raGgA5ubmUGBgIIAgiHz48CFdUFCAjY+Ps729vdyNGzew//77jywsLOQIgmAWLVqEpKWlwY2NjVRERMREWVmZYOvWrfLs7GxoeHgY7u3t5Xfu3MnExcWx8+fPBy4uLuiSJUs4d3d3xNnZGf5/9qfnzJmDFhUV0ba2tlxAQAC4ePEi6uzsDPf19XETExOy+vp66M+fPxMikQg1NjYWHDp0iB0fH5dpa2uzv3//hnp6emh/f39IVVWVNzY2hlEUhYqKirjc3FxOUVERhIaGwlpaWlxrayuXmprKKyoqcmNjY6ijo6N8YmICQc6cOQPxPE8uXbqUz8nJ4f/8+cPn5eVxNTU1zOPHj/GkpCR48eLFbEREBEtRFBofHw8oioK1tbXlc+bMASUlJXKWZVEAADN//nyyoKAAUVRUnJw+fTp7/Phx9Pv375CpqSmXnJwMXbhwAXr+/DlMkiQ4ePAgvWDBAjIyMhK+evUqferUKdjY2Bg+f/48XVRUxGdnZ2NZWVm8p6cnkpubC/358wd3d3eXEwTBXLt2Dfv69Svk5OSE37t3T1ZQUIC5ubkx8fHx3O/fv9mEhAT4xYsXmEwmo69evQq+fPmC3b59W56amkoEBgYyubm5/Js3b6CNGzfCMIqikJWVFZ2QkMB2dnbCU6dOhby8vOjJyUl0+/bt/IcPH2T29vbYnDlzWDc3NxbHcXbdunXInTt3cAUFBeznz5/gxYsX6JMnT7jKykrZmjVraCcnJzA+Pk68f/+enZycxHp6eqDS0lLMysqKj46O5jdu3Mh1dHTAtbW1tFwuly5fvhyqq6tjb9++DW/btg09d+4c5ODgAJ49e4bk5+fzioqK0M2bN6VWVlYMTdOQk5MTBwCQGxsb0x0dHUR9fb3s77//5icmJuDw8HCsq6uLDgsLkxoZGfFLly7lMQyTrVmzRvDvv//CGIYR/f39SHl5Ob9r1y4EmJiYCMRiMWljY0MVFRWJLSwsBO7u7qi+vr5wfHxceObMGTEMwwJlZWVJX1+fYMWKFcSMGTMkFy9eFGhoaGClpaVYVVUV6evrS1RVVWEURRHr16+nampqSHd3dywxMVH45csX0t7eXmBqaioIDg4Wdnd3U2NjY2RzczPW3Nws2Lx5M9Xa2oopKSmJcnNzheHh4ZI1a9YIDQwMyOHhYWrevHnCpKQk3M7OTpKUlES0traSM2bMEM2dOxddvHixqKWlhTIxMRHGxsYKjh8/LtbX1xeRJIkNDg7imzZtolRUVLCGhgYyIyND/OPHD0lvb6/49OnTgs2bNxPoggULmA0bNggeP37MrFq1arK4uBhatmwZPDQ0BFpbW5GwsDC5sbExPnXqVPn/V1bOxcVlMjIyEsYwDF64cCGxYcMGYGpqysTHx3MXL15EHz16BCiKYn79+gXn5eWBgIAA5N27dyA8PJxRU1NDu7u7J8vLy8E///xD3b17l0lLS0OuXr0q7+np4Xieh11dXWVz5szB+vv74cePH8NSqZRZtmwZduPGDXbGjBkohmEyKysroKioSLi7u/PXrl2Dly9fDhkaGsIrVqyQKSkpoba2toKqqip2fHwcXr9+Pefl5YV/+PBBumXLFkgqleLZ2dlMS0sLDltbW8N9fX1cZ2enPDc3Fx0cHBS4uroCDQ0N+ZcvXxg7Ozvs1atXk1lZWYi3tzcSFhYG5s6dCxkZGbF1dXXoihUrJvv7+7nk5GS4vr4eunHjBrNnzx66sLCQKCsr4wEASElJCbds2TL5wMAAamNjM/ns2TMCRVF01qxZk9nZ2XxTUxPz8+dP+OvXr6y7uzvX2tqKfPjwATx8+FBuZ2cn7+npQd3d3eXh4eGchoYGzfM8OHjwIDMwMADv3r0b0dHR4TZt2gQNDQ0xxcXFnEwmgw8cOMAYGhoiKioqfGRkJHTz5k3ZzZs3+ZcvX2K+vr6so6MjUVhYyABjY2NRenq6KDc3V7J27VpUIpGITp48SaSkpFCWlpbo69evyWfPnmEzZsyQ2NraChMTE8UwDAvv379PHDx4UJCUlEQ6OTlRx44dwzIzM0WBgYGCHz9+YK6urtTnz58xY2NjtKWlBR8bGyO6u7uxwsJCSU1NjbiyspLkeV7S3NwslMvl1Pr163E7Ozthf38/vmzZMuLnz59CRUVFvLCwEPv06RNmbW0tuHLlCuru7o69fv2aLCoqIhMSEoQSiQR3dnYWNzU1oampqeSePXtwuVyO2tjYiB4/fowpKytTExMT4rS0NHFfX5+guLhYaG9vjw8MDAh7enrw/wNOIoVwSSEf2gAAAABJRU5ErkJggg==");
  background-repeat: repeat;
  color: var(--cream);
  font-family: var(--font-body);
  font-size: 16px;
  line-height: 1.55;
  overflow-x: hidden;
  min-height: 100vh;
  display: flex;
  flex-direction: column;
}
main { flex: 1 0 auto; }
img { max-width: 100%; height: auto; display: block; }
a { color: var(--gold); text-decoration: none; }
a:hover { text-decoration: underline; }
.container { max-width: var(--max-w); margin: 0 auto; padding: 0 20px; }
h1, h2, h3, .display {
  font-family: var(--font-display);
  font-weight: 400;
  line-height: 1.05;
  letter-spacing: 0.5px;
  color: var(--cream);
  text-shadow: 0 2px 0 rgba(0,0,0,0.3);
}
h1 { font-size: clamp(2.2rem, 8vw, 4.2rem); }
h2 { font-size: clamp(1.6rem, 5vw, 2.6rem); }
h3 { font-size: clamp(1.2rem, 3.5vw, 1.6rem); }
p { margin: 0 0 1em; }

.kicker {
  font-family: var(--font-body);
  font-weight: 700;
  letter-spacing: 3px;
  text-transform: uppercase;
  font-size: 0.85rem;
  color: var(--ember);
}
.star-sep { color: var(--gold); margin: 0 0.5em; }
.badge {
  display: inline-block;
  border: 1px solid var(--line);
  border-radius: 999px;
  padding: 4px 14px;
  font-size: 0.8rem;
  letter-spacing: 1px;
  text-transform: uppercase;
  color: var(--gold);
  background: rgba(217,164,65,0.08);
}
.badge-famous {
  display: inline-block;
  background: var(--ember);
  color: var(--char);
  font-weight: 700;
  font-size: 0.72rem;
  letter-spacing: 1px;
  text-transform: uppercase;
  padding: 3px 10px;
  border-radius: 999px;
}

/* Buttons */
.btn {
  display: inline-block;
  background: var(--ember);
  color: var(--char);
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 1.5px;
  font-size: 0.95rem;
  padding: 14px 28px;
  border: none;
  border-radius: var(--radius);
  cursor: pointer;
  text-align: center;
  transition: background 0.15s ease, transform 0.1s ease;
}
.btn:hover { background: var(--ember-dark); text-decoration: none; }
.btn:active { transform: scale(0.98); }
.btn-outline {
  background: transparent;
  border: 2px solid var(--ember);
  color: var(--ember);
}
.btn-outline:hover { background: var(--ember); color: var(--char); }
.btn-block { display: block; width: 100%; }
.btn-lg { padding: 20px 28px; font-size: 1.15rem; }
.btn-secondary { background: var(--smoke); color: var(--cream); border: 1px solid var(--line); }
.btn-secondary:hover { background: #2e2620; }
.btn-danger { background: var(--red); color: var(--cream); }
.btn-danger:hover { background: #8f2e17; }
.btn-sm { padding: 8px 14px; font-size: 0.8rem; }

/* Nav */
.site-nav {
  position: sticky;
  top: 0;
  z-index: 50;
  background: rgba(23,19,16,0.96);
  border-bottom: 1px solid var(--line);
  backdrop-filter: blur(6px);
}
.site-nav .container {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-top: 12px;
  padding-bottom: 12px;
}
.brand {
  font-family: var(--font-display);
  font-size: 1.4rem;
  color: var(--cream);
  display: flex;
  align-items: center;
  gap: 8px;
}
.brand .kicker { font-size: 0.6rem; display: block; }
.brand-flame { width: 26px; height: 26px; flex-shrink: 0; }
.nav-links {
  display: flex;
  gap: 22px;
  list-style: none;
  margin: 0;
  padding: 0;
  flex-wrap: wrap;
}
.nav-links a {
  color: var(--cream);
  font-weight: 600;
  font-size: 0.92rem;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}
.nav-links a:hover { color: var(--ember); text-decoration: none; }
.nav-toggle {
  display: none;
  background: none;
  border: 1px solid var(--line);
  color: var(--cream);
  border-radius: var(--radius);
  padding: 8px 12px;
  font-size: 1.2rem;
}

@media (max-width: 780px) {
  .nav-links {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    background: var(--char);
    border-bottom: 1px solid var(--line);
    flex-direction: column;
    padding: 16px 20px 24px;
    gap: 16px;
  }
  .nav-links.open { display: flex; }
  .nav-toggle { display: inline-block; }
}

/* Status banner */
.status-banner {
  padding: 12px 0;
  text-align: center;
  font-weight: 700;
  letter-spacing: 0.5px;
}
.status-banner .container { display: flex; align-items: center; justify-content: center; gap: 10px; flex-wrap: wrap; }
.status-open { background: linear-gradient(90deg, #2c5f2d, #3f7d40); color: #eafeea; }
.status-closed { background: linear-gradient(90deg, #7a2313, var(--red)); color: #ffeee9; }
.status-banner small { font-weight: 500; opacity: 0.9; }

.announcement-bar {
  background: var(--gold);
  color: var(--char);
  text-align: center;
  font-weight: 700;
  font-size: 0.85rem;
  letter-spacing: 0.5px;
  padding: 8px 16px;
}

/* Hero */
.hero {
  position: relative;
  min-height: 78vh;
  display: flex;
  align-items: flex-end;
  background-color: var(--char);
  background-size: cover;
  background-position: center;
  overflow: hidden;
}
.hero::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(23,19,16,0.15) 0%, rgba(23,19,16,0.55) 55%, rgba(23,19,16,0.96) 100%);
}
.hero-content {
  position: relative;
  z-index: 2;
  padding: 60px 0 48px;
  width: 100%;
}
.hero .kicker { display: block; margin-bottom: 6px; }
.hero h1 { margin: 0 0 14px; }
.hero-sub { font-size: 1.15rem; max-width: 46ch; color: var(--cream); opacity: 0.92; }
.hero-ctas { display: flex; gap: 14px; margin-top: 22px; flex-wrap: wrap; }

/* Sections */
.section { padding: 56px 0; border-bottom: 1px solid var(--line); }
.section:last-child { border-bottom: none; }
.section-head { margin-bottom: 28px; text-align: center; }
.section-head .kicker { display: block; margin-bottom: 6px; }
.section-tinted { background: linear-gradient(180deg, rgba(36,30,25,0.5), transparent); }

/* Find the truck card */
.find-card {
  background: var(--smoke);
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 28px;
  box-shadow: var(--shadow);
  display: grid;
  gap: 18px;
  grid-template-columns: 1fr;
}
@media (min-width: 640px) {
  .find-card { grid-template-columns: 1.2fr 1fr; align-items: center; }
}
.find-card .addr { font-size: 1.15rem; font-weight: 600; }
.find-card .hours-today { color: var(--gold); font-weight: 600; }

/* Grids */
.grid { display: grid; gap: 22px; }
.grid-2 { grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); }
.grid-3 { grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); }
.grid-4 { grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)); }

/* Menu highlight / item cards */
.item-card {
  background: var(--smoke);
  border: 1px solid var(--line);
  border-radius: 8px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  box-shadow: var(--shadow);
}
.item-card img { aspect-ratio: 4/3; object-fit: cover; width: 100%; }
.item-card .item-photo-placeholder {
  aspect-ratio: 4/3; width: 100%;
  background: linear-gradient(135deg, #2c241d, #171310);
  display: flex; align-items: center; justify-content: center;
  font-family: var(--font-display); color: var(--line); font-size: 2rem;
}
.item-body { padding: 16px 18px; flex: 1; display: flex; flex-direction: column; gap: 6px; }
.item-title-row { display: flex; justify-content: space-between; align-items: baseline; gap: 10px; }
.item-title-row h3 { margin: 0; font-size: 1.15rem; }
.item-price { color: var(--gold); font-weight: 700; white-space: nowrap; }
.item-desc { color: rgba(245,237,227,0.75); font-size: 0.92rem; margin: 0; }

/* Menu sections */
.menu-section { margin-bottom: 46px; }
.menu-section h2 { border-bottom: 3px solid var(--ember); display: inline-block; padding-bottom: 6px; margin-bottom: 20px; }
.menu-item-row {
  display: flex; justify-content: space-between; gap: 18px;
  padding: 16px 0; border-bottom: 1px dashed var(--line);
}
.menu-item-row:last-child { border-bottom: none; }
.menu-item-row .mi-thumb {
  width: 72px; height: 72px; object-fit: cover; border-radius: 8px;
  flex-shrink: 0; border: 1px solid var(--line);
}
.menu-item-row > div { flex: 1; }
.menu-item-row .mi-name { font-weight: 700; font-size: 1.05rem; }
.menu-item-row .mi-desc { color: rgba(245,237,227,0.7); font-size: 0.9rem; margin-top: 2px; }
.menu-item-row .mi-price { color: var(--gold); font-weight: 700; white-space: nowrap; }

/* Gallery */
.gallery-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 8px 8px; }
.gallery-grid figure { margin: 0; }
.gallery-grid a { display: block; overflow: hidden; border-radius: 4px; aspect-ratio: 1/1; }
.gallery-grid img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.3s ease; }
.gallery-grid a:hover img { transform: scale(1.06); }
.gallery-grid figcaption { padding: 6px 2px 0; color: rgba(245,237,227,0.65); font-size: 0.78rem; line-height: 1.3; }
.gallery-strip { display: grid; grid-auto-flow: column; grid-auto-columns: 42%; gap: 12px; overflow-x: auto; padding-bottom: 8px; scroll-snap-type: x mandatory; }
.gallery-strip img { scroll-snap-align: start; border-radius: 6px; aspect-ratio: 4/3; object-fit: cover; }
@media (min-width: 780px) { .gallery-strip { grid-auto-columns: 22%; } }

.lightbox-overlay {
  position: fixed; inset: 0; background: rgba(10,8,6,0.94);
  display: none; align-items: center; justify-content: center; z-index: 200; padding: 24px;
}
.lightbox-overlay.open { display: flex; }
.lightbox-overlay img { max-width: 92vw; max-height: 84vh; border-radius: 6px; box-shadow: var(--shadow); }
.lightbox-close, .lightbox-prev, .lightbox-next {
  position: absolute; background: rgba(23,19,16,0.7); color: var(--cream); border: 1px solid var(--line);
  border-radius: 999px; width: 44px; height: 44px; font-size: 1.4rem; cursor: pointer; display: flex; align-items: center; justify-content: center;
}
.lightbox-close { top: 18px; right: 18px; }
.lightbox-prev { left: 18px; top: 50%; transform: translateY(-50%); }
.lightbox-next { right: 18px; top: 50%; transform: translateY(-50%); }

/* News */
.news-card { background: var(--smoke); border: 1px solid var(--line); border-radius: 8px; padding: 22px; }
.news-date { color: var(--gold); font-size: 0.85rem; text-transform: uppercase; letter-spacing: 1px; }
.news-body :is(p, ul, ol) { color: rgba(245,237,227,0.88); }

/* Forms */
.form-wrap { max-width: 640px; }
label { display: block; font-weight: 600; margin-bottom: 6px; font-size: 0.95rem; }
.field { margin-bottom: 18px; }
.hint { font-size: 0.8rem; color: rgba(245,237,227,0.6); margin-top: 4px; }
input[type=text], input[type=email], input[type=tel], input[type=date],
input[type=number], input[type=password], input[type=file], select, textarea {
  width: 100%;
  font-size: 16px; /* prevents iOS zoom-jump */
  padding: 13px 14px;
  border-radius: var(--radius);
  border: 1px solid var(--line);
  background: var(--smoke);
  color: var(--cream);
  font-family: var(--font-body);
}
textarea { min-height: 120px; resize: vertical; }
input:focus, select:focus, textarea:focus { outline: 2px solid var(--ember); outline-offset: 1px; }
.field-hp { position: absolute; left: -9999px; top: -9999px; opacity: 0; height: 0; width: 0; }
.required-mark { color: var(--ember); }

.flash { padding: 14px 18px; border-radius: var(--radius); margin-bottom: 18px; font-weight: 600; }
.flash-error { background: rgba(178,58,30,0.18); border: 1px solid var(--red); color: #ffd9cf; }
.flash-success { background: rgba(61,122,61,0.18); border: 1px solid #3d7a3d; color: #d7ffd7; }

/* Footer */
footer.site-footer {
  background: #0f0c0a;
  border-top: 1px solid var(--line);
  padding: 40px 0 24px;
  margin-top: 40px;
  font-size: 0.9rem;
  color: rgba(245,237,227,0.75);
}
.footer-grid { display: grid; gap: 28px; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); }
.footer-grid h4 { font-family: var(--font-body); text-transform: uppercase; letter-spacing: 1px; font-size: 0.8rem; color: var(--gold); margin: 0 0 12px; }
.social-icons { display: flex; gap: 12px; margin-top: 10px; }
.social-icons a { border: 1px solid var(--line); border-radius: 50%; width: 36px; height: 36px; display: flex; align-items: center; justify-content: center; }
.kccs-credit { text-align: center; margin-top: 30px; padding-top: 18px; border-top: 1px solid var(--line); font-size: 0.8rem; opacity: 0.65; }
.kccs-credit a { color: rgba(245,237,227,0.8); }

/* CTA band */
.cta-band {
  background: linear-gradient(120deg, var(--red), var(--ember));
  text-align: center;
  padding: 48px 20px;
  border-radius: 10px;
}
.cta-band h2 { margin: 0 0 10px; }
.cta-band p { max-width: 50ch; margin-left: auto; margin-right: auto; opacity: 0.95; }

/* Tables (weekly hours) -- wide table scrolls in its own wrapper, no page h-scroll */
.table-wrap { overflow-x: auto; -webkit-overflow-scrolling: touch; }
table.hours-table { width: 100%; border-collapse: collapse; min-width: 480px; }
table.hours-table th, table.hours-table td { padding: 10px 14px; border-bottom: 1px solid var(--line); text-align: left; }
table.hours-table th { color: var(--gold); text-transform: uppercase; font-size: 0.8rem; letter-spacing: 1px; }
.today-row { color: var(--ember); font-weight: 700; }

/* Utility */
.text-center { text-align: center; }
.mt-0 { margin-top: 0; }
.mb-0 { margin-bottom: 0; }
.small { font-size: 0.85rem; }
.stack { display: flex; flex-direction: column; gap: 14px; }
.divider-flame { text-align: center; margin: 0; color: var(--ember); font-size: 1.4rem; }

/* ===================== ADMIN ===================== */
body.admin { background: var(--char); }
.admin-shell { display: flex; min-height: 100vh; }
.admin-nav {
  width: 220px; flex-shrink: 0; background: #100d0a; border-right: 1px solid var(--line);
  padding: 18px 0; position: sticky; top: 0; height: 100vh; overflow-y: auto;
}
.admin-nav .brand { padding: 0 18px 18px; font-size: 1.1rem; }
.admin-nav a {
  display: block; padding: 12px 18px; color: var(--cream); font-weight: 600; font-size: 0.92rem;
  border-left: 3px solid transparent;
}
.admin-nav a:hover, .admin-nav a.active { background: rgba(232,89,12,0.1); border-left-color: var(--ember); text-decoration: none; color: var(--ember); }
.admin-main { flex: 1; padding: 24px 18px 80px; max-width: 900px; }
.admin-topbar { display: none; }

@media (max-width: 860px) {
  .admin-shell { flex-direction: column; }
  .admin-nav { display: none; width: 100%; height: auto; position: static; }
  .admin-nav.open { display: block; }
  .admin-topbar {
    display: flex; align-items: center; justify-content: space-between;
    padding: 14px 16px; background: #100d0a; border-bottom: 1px solid var(--line);
    position: sticky; top: 0; z-index: 60;
  }
  .admin-main { padding: 18px 14px 100px; max-width: 100%; }
}

.quick-actions { display: grid; gap: 16px; grid-template-columns: 1fr; margin-bottom: 30px; }
@media (min-width: 560px) { .quick-actions { grid-template-columns: repeat(3, 1fr); } }
.quick-btn {
  display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 8px;
  padding: 28px 12px; border-radius: 10px; border: none; cursor: pointer;
  font-weight: 800; text-transform: uppercase; letter-spacing: 0.5px; font-size: 1rem;
  min-height: 96px; box-shadow: var(--shadow);
}
.quick-btn .emoji { font-size: 2rem; }
.quick-open { background: linear-gradient(135deg, #2c5f2d, #3f8f40); color: #eafeea; }
.quick-closed { background: linear-gradient(135deg, #7a2313, var(--red)); color: #ffeee9; }
.quick-clear { background: var(--smoke); border: 1px solid var(--line); color: var(--cream); }

.status-live {
  padding: 22px; border-radius: 10px; margin-bottom: 24px; text-align: center; font-size: 1.3rem; font-weight: 800;
}

.admin-card { background: var(--smoke); border: 1px solid var(--line); border-radius: 8px; padding: 20px; margin-bottom: 18px; }
.admin-list-row {
  display: flex; align-items: center; justify-content: space-between; gap: 12px;
  padding: 14px 0; border-bottom: 1px solid var(--line); flex-wrap: wrap;
}
.admin-list-row:last-child { border-bottom: none; }
.row-actions { display: flex; gap: 8px; flex-wrap: wrap; }
.toggle-pill {
  display: inline-flex; align-items: center; gap: 6px; padding: 6px 12px; border-radius: 999px; font-size: 0.8rem; font-weight: 700;
}
.pill-on { background: rgba(61,122,61,0.25); color: #b7f5b7; }
.pill-off { background: rgba(178,58,30,0.25); color: #ffcfc0; }
.day-row { display: grid; grid-template-columns: 90px 1fr; gap: 12px; align-items: center; padding: 12px 0; border-bottom: 1px solid var(--line); }
.day-row .day-fields { display: flex; gap: 8px; flex-wrap: wrap; align-items: center; }
.day-row input[type=time], .day-row input[type=text] { width: auto; min-width: 110px; }
.sticky-save { position: sticky; bottom: 0; background: var(--char); padding: 14px 0; border-top: 1px solid var(--line); margin-top: 10px; }

.submission-card { border-left: 4px solid var(--gold); }
.submission-card.sub-failed { border-left-color: var(--red); }
.submission-meta { font-size: 0.8rem; color: rgba(245,237,227,0.6); margin-bottom: 10px; }
.submission-fields dt { font-weight: 700; color: var(--gold); font-size: 0.8rem; text-transform: uppercase; margin-top: 10px; }
.submission-fields dd { margin: 2px 0 0; }

.login-wrap { max-width: 380px; margin: 10vh auto; padding: 0 20px; }
.login-card { background: var(--smoke); border: 1px solid var(--line); border-radius: 10px; padding: 30px 24px; box-shadow: var(--shadow); }
