/* InvertLogic site styles. Font: Source Serif 4 (SIL OFL 1.1), latin subset,
   instanced at wght 600 / opsz 28, embedded as data URI - no external requests. */

@font-face {
  font-family: "Source Serif 4";
  src: url(data:font/woff2;base64,d09GMgABAAAAAD3gABAAAAAAlxAAAD2AAAQBBgAAAAAAAAAAAAAAAAAAAAAAAAAAGUYaNBvqcByBKgZgP1NUQVRaAIJuEQgKgadkgYguATYCJAOHUAuDagAEIAWFegcgG1WERQdi2DgAIOM+phGpR4NJ/j8nJ3KVq/0GgJVhZTKSMhVZGHMVHxPVk8oLZ0r1cstrw4FbPFjCQ07hKXvDGtF7eT/cYf92iUTZlNDPFQqMjPHn3bbVGeBOjZyIjAStQWZm7wmLhA6AXetahbKvCkKTJhIeSLEi3uH5bfk+ICJCS8cnW0UUCRWx4uzkvNbT8yJjl9uuatvVqq92mVtfrG7zcM6cfGHsJjwAFjjUFGjjwjXRTw/99H97k7yWT2tdVWEYj3AIjdQIoTjzf7PaHFgvTXiTBbQ0ap/ZIf05GhzgvD4P/9lWf+tVNQXN9Ij1mkZkK27fLBMnniT8FmRkHDIWAm9dyUkhFE0iKWbzm/T+7X5ss/5wue3+f7ab2G3NbdQqyogxA6XKlLYpoSlNCYQQXgP8W7E0wc2Wy2EpDRAqru/D8gXw34AAmMhNmrPdOPm3A1Js/IQEAKN69mIn5FhXiv1Um/4bUp2X/YonELGVmEFMK74zg0WU7ydTrvQaoXGvqC/NlalZOs3lCgDliIMM7+2hdHxrU+47y3e5c9Fns7Or3Z0dDqwMgCVFczIEQehJgKwjiDPg4szSqcSTcw4gZXiyZ94YZ3PjMkVvok8/+vog/EjSR9YEYfr18HgW/byE9DLDVsWIiKpRa+3xH07r74Y9/otlFWCHO0oREQkSJEgmQYJIt/sfj9VKFJwoZ11s9Pqfy9h84LsUMMBknBHGmymA1YAFAeJ/gPBd2L7uzi6AOv/C7ELAvmNSXwdg39PX2A7YD9bGugAbGkAgYOBAswIECGA9AAoNwQri4QHJlg1SrhykXTtITAwEAqxl4K1YgdI0arkfuKuvC2AABQQK9vgPz9e6I50UAnYsgMcPCrCPZdb4OK/9FXnexJDJWVIEYl125tu8zpuPctgubLg92e/4nu3nvdn7fTMISM+IjA4QEQhSPCIyGjoGJhY2EQ2zTDkickXlKdCh3ySDVltrHVPhzNzC0kdJn2Wsb8f+DkxizkZda8c0syebrZq3LGJLQyt6yf6kSZqz1V3rlO+NTGV7W2ZPmZ+10Fmu1QBmoAmPbNwpe/Ik9V8J/A4pqE8GLnw78r11m1J1vWK/ZNKSs8251hGfTPl0zjfHHNB9yLMfbJvi76zZn82/sdBaXtH4xMU/vYhondNBjT5gkumaVP6ARFp90/bHnU26Fk9yQRhxt9qaGJWnzZuEuymmSdEb+hv+Sy4GlvdU8r10WXxRfXLBp2d9+ZNvbKJvE98P/PhjdSik0yYSX/DNQv4G9IenIVjUKKNALsBZ9jdFEAgpBBjHBBUZ4xa5lmaa2nMKiHPAH7J3wqc6X6a+kXzrru+d8YPbftTkXwNB9xlTLBfkUty1aLT7MD9ukEEiF5nkORurBNeK2C98mVMpTc2N2TCKq9CH8cVXe9v+qfn/RfNPWgr5GGPw51XjQ4uU1hDstGNS0C9WFpc1O9JfTkvYFizfvy2xWOH5X/557SHoccX9RXefSlCY3yZCvbaWlN4vGyTBJknoejRc3y+mfz+5USpyFkDZC6oYxCEMicNKm2Lq4XhSao8cIBmRQ7ihJUKlFHil2BW6ZHZf2PsxY7MJzsaxCr4GLhurWDNgkaGodh5Kbq99rBpvGg3z0v3NHT6Kh7syniOd8XZXsoVKSW6gCVMdIVmf5Xhp/5/5/jXIpVrwvn18ZEeuSNmi+de/EjKBkYhLy5yjq3Og+OAcmyILtcFdQ0+8TNaSKFVTfFxoGGSvWgkpmJLP+1TKCpFwvo7doOmxEIz30tEAYhqDBCMkPIlYZ+iRzvl2MjJ2akDwZ47ozNk0n0YQJd2iqs0MnmAaBNm+Rg2mu8drkKRQBJbKWpswKd/+CtDOWDXhfiQ4CAhTp6fUZCFuwEx4dpg/5EI/pfdP5nlBrTXIjZvdBaxL6ISunpqISpYV8DH0O7lGa4znAiL1zW7tHBmM6WarHm2YHx9NC9l8GfIIWaNUXVnt2/z5IB5MtQ77DTXths8C/xy7dOkMsvst4/19Kgv2wl6/2m2wxW9mXEsnExPEx0R5W65zsE8IS8/PAMOhek1BUTU4eZExTLN2xWbniHQap+wuKKxaL3bRG7cVJKwSLjvGCb3e6CQjkEuu164eFKBnL2TSjnrKNe86+z5Ev6PHwLEAgr2iIFYkubVm8WB6YtuK50hnq5Npjnw11FqS68PLgxF8YEMPsnzoB5OVnZRGUDCR3kVKusxNTKM69HbVS8UGFrnGGHLxgMFKLnqx4sdtlBQRvPQsqKoxrqR575o/9+DUHE4j0nNjst5sRb43vzsineHWNWd1dyCqJ7qXRwcxZyIFEsRplhJfbw3sSHtrfvQrt2wCpd2Sc0NZi+uNjG/TLKMTXqZj9PP8hV+7UnUv+7HTpdi0lUuYJVytXhxP7a2t0V9r7bOX0YmqtsLdP0/71Q/Y0YfnsoDjjNMlkDZBgBxTInrAKMVabZwsYqHYj7xMbQVLwZgrrqriA1Rv2KvF5fyVharsB5egnqJDTZcziQRtTeIDZCbpm+njevkYyojPTjMcKyVB9tJBfGwtslUtfsrRu7fHhMpEyM54XsApiykamHLlUhpIYnTTISV1ZTAoJp9FZI2g8xAf305rbBkSVQoa61gl4kPOeSuXC1NiE4lYQF7Wz5vt6XOQxyagfrbthm1Ad45b11/n7AUKiVwIuYr9HHfv27r14/ylOjhua5ypHnb6GQOfVdfE7g2KpArbsEYDP9F4V0Sq9+yHxXWjMeRKqJBasPHW/JHSpwJbu8owBZVT1TORT/TXikwrondAFpZxma9XudVMzlnuzBGjY59flNDmTStKtnaICTPeiYeFqhHDSTX7WlV8mJXzbTMGtD9KrEi4GReLTndHw3zcWR/SVbv6slEVHe9MbFB5wt5dqxz5iuR2K6el1/HizE8gX0zPlh3R9FU7qoFa4stgVT6+mgHanLZpUriz+cep2/J/2aEc3btII1AjndHC6SGDgTiiPSVVWPmEaIf67D8NxWFMUfqmQ+BtAxT8NG68dh0ZLyqspn88tg/MFwrwONgTSOhdJNlKjh/88mxZP3XFqN+lFLh9fqkpH6lN6fz+BhiLahGUQn5HAj0rL4AVqvdASLlYt0AWq/Lj6Eh9iMrswoWf5h3z+R3Xc3zF71Ya+NSKz90ylp0mS3beF954aowvjnric1957i5Jv4Ir4PWJXhd0Mxw71wrMINNBoM5sJyYNge5PmMVjJqM1FtN0EQP4/DYhZg3KigwPc1zXQd0D5RPyeLZGF6Xm0S0gX5maLiflHhA7ZlvUTQXTkmxLr3uvn7iyZEkGG3ZQKdQNdSyXo0rbE0GbYcMFGmMUvHkyfUmcPY67xToHhdkfO+iYfcX57OIktcYOUh7uumhZ6KUD5h9HIZK6ndlo+Zs5yZvuc4KovkORwk1wN8KuyRH6HSupxwJK60ZjGmyb69a+0+KVpFj6wRDxBtMSrO33bak2jYtZbaW236a42vVx4Ee4v5PTmWtt4aZYiFcijRfrhOay2iitFeTsI7XG6c/YMqReApSc00pfJleGw5k1X7N/urJT86ZzQ9bKe+ynkBIdtMEyhBqvnM56EcrSldgmg4gmsS9VpzY0GOyRS3jXKNnJ7qQQwCJbCGUhUk3L2CqWfGQ79a0ciyjO6Ha7v+7Y10bjrf3BJX8k+vXgm2iOupIhBT0qd60a2LZWl6RkjEGg/L7qFtl2lmJzxo+2u43VG1irS6arPNKHDdiaHimMnTUlK9YA1fLa6HigR6hbKLpRgpIFRGF3GqJxgqrGFGLNgXYvyptYfF4fzEZH2hYH70i+2pXPyo7H8nzaMFcU5QPFKkDVTeRQ47OaW9U0VaeZZq6M7qwidJfd7OMAC/3T+O5LLGAIevz9yXX1vZoMTrz/TTYyUFKE6bnLgovNQNb6hjXOxwaB70kJjy8MRKGWIvcN3rujBGcjNrFCUqg2HNTriBkZEcMWwLpVCx4HPoaoqY10e2sYOUzx2XSRLY611TLFuplUV+vw8niALG2D8dJkRVWxTNsccjFQ2tLq0enUhngYCoRoKIWoA7FBnrZEexcXca9tB7CJUFJmqGX05JWwtra2yoJ3fRXeOanHmJpqifzZw87NUwNs1kfej4veLOjD/A1dVWHFPye1Xti2oXek6m+jUhUiqWQ3bY/V6vm6f2P6AETidSNK3s7QWF3I00vkbAbUtYnhflgj2tymXLoCjJ6HAHChLvGKakJxpCCdyu1Y01X3bY3e3l9HX9Sc6Ym1iRXxH7vyiy+vME0UH56p60aykdomgUNgIX+oB7palPB9Yggj+R5trF498RaFV1sLW8a5L8z/TCohQDDXPWNjY4F1HKgs9/TqBa1+6vjpuZ/W9a3577mDNRIsvDd4q7GdSlnqWJcZXFnY87SRlxvezjkS6y/J2pIOO8CxLU8F2eyO9EjQOnNB6nE9YBbpAZ3mJ4TY0xIBSZ2VnYmQinrogGHnVYfsivVoYSd1kP8YtCb3VOM0ntWQMu0vrHCsceyTEwo4/UuAprZsBMvh7eEXWuiVv53XDKYsKIwI4t2x1jTExaYAf5gMN9Lfzqv4VVykTxZIXXMcXAd/fB3WcY7ReCIeWS0JB5b4DPlFAAnR8FAiVgYx55kk4p6xfolanBttP9HMlU2kvjprD8MK0laUwrAjqj/sOtn3C4yg3zV9agz3bDqbj499jtb4YWyDxMnJ6tYWN2vQTJtOj5GqdWqJ/HCEkbQaDC0WSitbrRY/9upq/0Bv2tHjKLZB2oNf1JwRlNtdczERLYTmmuiWnzWL7pbS66oWxXZ14Z5BgQ8Sj/9bwbLD099ZpyQ+2FWAszComIXfE8VAqH8OTmqbhT/ko9FUe2SrBsB6cLNju3k+tYPCrRPKVjXUroWPfyeYERgEFH8e2tKFW1eGc7jWnkJkzqfz5XyJzYgZ4ZExtrxugw3yWUu+5Fx9XlXi523qmk5IukIMw+C2ERarPZrEkAu8WN5WTRDe4fW3U0x5+8MU+iXjItEyXXPw3ekOpN6Uvs4O91aP4f4Nb+pl+lX3ZNM2lxS4Lj5t+qIeoLj11cinOJFiWMiCNED8rCrWWp/IdID5/qoT2VjNbfVGVXG1vZVj53U8+w8Jg5wnMhhAx4zv627MHoaXpbhsDv6NNwaZcicZnoJxQsna2RljovYwDUeWUgI2litSLcorhuoU0vsnWeQwhfufjToyPZDeBdaH/VuLHQRYRrHXky1XZaEYheUWaEk0N+8nhRBNWfYE2/uU4dXc4Pa4S26/U6Qf+Bj+mv74TopFlzMV4OPhaL5ztVBmMRqUrG49pFIHWqU7tG6kMgJOu0LxoDVeROK/kTA4x+BQp21jEu54KVuIwzpS+HzbR/3pq2CmYPkVpbPOrbr+igEq/O+wCCD1gLsMqbfUSoNWW22GtdYZtcFWs2x3xALHnbLJxz62zZe+sd1ll+1y1U273XbHu1544QAI5IUwJAUaOhQlhjhxYCpqcZggGhAtHT0MIxMzFgs0YHc48QSoCBDwUuAQEACcLyAoCVaiRDkS5UK+qUWhQYlx9ZkgEXPPWegM0LXxuOIBAeI7BjYCq58BC4mWGyB5P5wkgttBs4oCDrYAD7vywOmAC2QC9seSkftsYG8iFJjZJxsRCfwhHPa3NRvAKdhsvACseQ5w3adyyBIBkmsA+zmBb6UD99EDx8/qN/aAZsiIBkwGlNg5Mp4tp4ChFAJjeAsHccRRku5JLA4ckJBEcED47snSJJJwzzPQZUIzKbIN1CdCihjGSA+OAxcCsCBgoHYBrI6SCPQ7j+CDukM1AGwFdj6FhRVwWtfpBiwRsc8G9sBHhZmd0pGQwZ+CRXfWTABHY9KyA3YAKYC9AZzTMYBj6Xn5ARtfVjwgczBj73UBWG544D0RpgkByz0k8UrnBwoKKpIunzDSeBDM52MXip+DxP//HQecP57o/+vNkN0/c3UjSbn4g/c114rBjQN8Vn5d+gRJuKQ0LFy8MmWbDEkUsyngk5nqU5jm15sEQcebV2rAKzPBqzARF7wQqBwqz1sqDuhz4gMue0+D3MwUHtAFjYxDxSEQKACMr80nxPm+XHCWcG85Cvf/68D4KRmAAOSzbgLszSDFiAVsfy7P4RCPPNo/GaoHHrunJQb1g/5w0mlAMQhoFHyU1CO4AIIFcg25Qx8QEBk/35oLoDPo+oKGSjlgX0IoCHpOXuVqTDbojG/c8asx4fZClpAnlI+Nwd4MXNJUqDXFFmd9667f9j4rZAq5efyqpQpO//+wOQDMGPD1NrOM6gYRA84EXAy4WjHgecArAIBYZaNTvvSdQRvstc8Rly3zlqUOWG6F6665Ya2T3nbIO27Z4653HbTfbZDVvvK1L3zjsKPuO+5j293xlhMe+NxN7/vAPS8cs9tD7/nEDt+76JJ18mUKCAoJy3JV9k/VPa83atKsRas2P2jXqUu3Hr1i+kCgOcYmQLwEyHdAXgB2/gDY60dgeRkYewOABQoEJR4aQjzkhaFOQAAyCE2+/HhxIAgIx6A4Q5XROBga1Hw1U3UI5ZzhtrF21mfFHMNIjoXyQ7d8exYIbx9jSJoQx9CtJjAwhcXwhslHvXbBBUVPOVKqp83htFPlRyHSiIaorSbtCRAgTAKSdMIJOYA0bGGMHKLOER9LQpDHMQLFl7IoYQmVgjTIJAL6U2THteEgW5iRC4UIsV1SmlCMFT/lXjN7jK3kadvjHhlZVKgssqaam6w2mOWjxShdcoOrG8VythvjOtNAdtjQEs32k2HxtPqIoyzLr2g3NEX9Em7LKr8EEaNFAN3waWA2IT/uwpXw4HvGI6UKmMl/z+AjFVuz9MYCc8AUbW4QqU9qLMeWbNUDFj4W2gnv5rTN78ZmHf9ttK6FTop6CCB3kRcuFdUzPZ9TE/fphGKw0ftnXzMGk1c2aQdUb0zYuv9w7SvsI1IJXDGRanvYCXK7W8Ow1Uqr8+UmoHY8nYKQQAbYauygnWiuFESCwZz8fHBAtssIFEa6n9JxA/wP0omnUQjPSgKMvhgXKWq+iGZt4wAMHYovShj0RhCkNipcNYGURSU8jPKWtDuC0oaAFKdPClkF/RLUr0GeekSy18i8snWTKktQH2ysGhSzkzRZ3JMISazUxVmHD/AMLMWin2dFba+qkyStzC0AHQJNOGJsMTtOggkF+zWD0fRlwzqXk7Lo0zlO0faKBwQaXzZjKxN2rTzRANMDZt6WN2A7PNYUKYK10bCOdyxH+NqQ9nMsaMZQQPib+La5cYvKvwKWSMNW7kW/CTupae2gSdWweWZlRQbNK4Fw7d94LGEyff/tLcCGvqOcExwwEyTuqXsNVNbx+RIMGBop310w0tf1XVR5AjNYtpKQzbzCMcW8HNcK8BxX2JLXE/26+ZR6g6z/u1iwqhfjX37cPuhihxms2C38ukVFfb0CGXevPh5PLa+HBP1WufeFIIq2IL2Gwamn+36rU7ld5nku2jyWeZxB8Tmj/FjiCb2MCoXoxv1KY/ROoul/ML6DGeAJ6enEDmqrxtAPXhGrIIOaRMEHw8YcCNDOCg9Vlr53aXIhpwLb18NvgVwHw5sljaP/d+JxFw+gP4+xvsGkXb5PJlhaFfUTElwEoIlK9uhnUUFg7YpdxdMciO+Zl9gE8NGONzUX3c2uCdZuAkU2NyjtzCP6BOPWxTnfjQiMMTwuhjZlA2HYNr6NkCQnwqIDLQEGRdHnm3wqef+D9lOSOYluyem4//cSKnjT22Pc967YiZK7+bElFwxqnc7l3dSUjdJgtL0ft2EUfvClIplPWJBGd7Nnopgk2KDim/cwOChFtYzMiVBkXhWgIHP2IgVNFyMhjTMrbfPyobZeVMwRQ3OcqLWm/+Nkj91mjDRoWgJuY4hdHxBobyss5fYYUJ6PdJF3IXA6Te5ayTFOkNQRePcJYNTR9r6yBwNy9cuusyyrBtAAkxr3c7pBiXaAcV1UsMQCR2O9XG9Qkr/TEYc1qNXXZLen2R0GEkU3Tn5lFeuM8qQRSPN8wBjJGqp5sVITG53aRupECHx3La/AX0ctbbZtYzXhWXZmZx2coBDoCwh/Cxh2h7ROtcSk3gaKFl1MRVs3g3IZvOn62fOfg85f52ejKo1gcKjqAHOyMunZWxZTkjKMUgBcSWNwHXxvC/eDJ3qbMRUMWZE0uqxaGyfAcV6+RcMOXcwgTrXsGiAdIm5KMLrp9qHy8vIr3wukBuHnypjyPWWXP+rXEYQQJtrPluDPqRaoA2K6coZylC10iZUtUaF0o4IHHno37+3SEMUk2Nq529MCRWZGENoPNdagGWpucaGNaTOUuLIwUayywcngIzfF/IWAzcurzF4OHqaIxIbhDlNUoR+aMk6EgY5w0LraQWA5FGlaRqCkEWefFcnqvZDIvNj/MPq9LFWshlkZ0+Ha0edDYrIatNaGwvfRfBM6tP/2c+1v/Qd2TrRyCIJB5xekDvFgDuOI1O+dmSWxA4kMww6kMnnEKqW2MfgIXKiHYr5VPpMc22Bzzqa1biuxYlTdUjtQZ8OFzNN84NZBCfd7wyEt1fwnShoTD7W7W4zW7ZZsmtvG1z3X4a40ds9ygez09ewfuZzLDe8a30pqd7V164so1U0N6QbkZ6wvPmhtCytzTrgNDuvjLTdUrRQzArq+vH+YpaV3AkKgD9eDw53opcyFblsrpJDw62mj/JtIltCYjt9yTF/aNNmmU04KSesFm12Bhjkd9kBPWz/Oz3HKU1VDyC4utJTOqQHVnEEgbHg83SRFR532+Wb/k0Mu5sZ9F9V3Xf/3vu/MK2Aw8sslwSS/hd/OC0GIHwFoLGSJRvm/QtWJ/Mh0vQ7dlcm4Lmg+ao8jDMe1cAcRkexjXikN4cL9xbYM3AL28wFAGJRG3RvqHVG7Fd9RrZlzCCdjjZ6k3iWhSskQzDcd55T7NZuVO1w1nKUu2GcSPCqWQT0Sc4SPAQFYXX3GXVnwkAHbnmnmCT12W/Di9RT76TvYLTkFvIWI8fXXUg/FxWoXHfMVNd+4mIbXJIRqGdBJPCjnDZqhuN/z5pIEWlWoZ4AHDgrjnkxFr/wNStKaOzsogTOXeq8SrZqxXcGblf6gcbvcEAi/6V3OxgvUp/rOwEJ7qjMRkmDR/CiZCnlOMLfx/LAaAvXT4VON1qEb7UAlgKnu6IZ03feHhnuNjL/rpI07aDEDMkm9tCx6YCFrvaqyfIA3nd+4GmwnuQ4vqZ/b9pZzc7oBxOx8KjebMVJ1yufE3KbigCRlg1HZblk42ZMpf129nVYcWb5SyVhl/MqF4JpzuXWJrvlKOp4J85SRxVRLkAfrCBEut8K1gDbs7kOLsv5MjIhQdMICFzWAme1zmE9v40wZamABqUSxgXUGhZDBZIC2V5Crr20wF8qJkjaF5iNEiLSzjdi1GXrcngd688D8elYWSF/o2W17cZpAfcGm4O9sP+7roX8iS0DTXpqAXelTG4Ir2hms7Knm1iu5dWmSNH7MGsbKMUthTDcP7awjE9tooJ3AY6u+ZXiURYflMJ3FthPr1La8d5wbZQ6lpc39LtxdBg27irzDe7SzTX3jvSFFpvW2gmiP3HpjIc+i62+xXI9AaPw5+CqxHSVxF3tGDpz08+lrRPd76K9KofHOJnPpsmS13ohL7egbpWhTkHH1NVRyTKXoqEldLgAmh4CPmU1o0Zp/4br3Hym0kDtjIQ2DFT196nSPDKgEVezy0gUDVmqz4znSsmliGRBIlAugjTM0oDDK8s6RYSCQtfrmPYN/krv1yav20ug9MhTo82uimTfKVygaZ4ttDYosX2y+OjFCstSlVwrZdoXrmo9aoAPlcY2hgASuPpFIvnioIDIlvGevxFhD80TWWa0gCiJRU8JaTy6iXMcusyo1ZkjC1nl8QCugvztaWAAK5vOEe/SIdnakqR3NeK00BLwrmzVrOnhpOmNlM/3tSYfnByFCaF2hnoQ+/QSawlHuJE1aWKAwnUh/2mJJLDGk80uQiF1FDjzszIVbFZ0P91HLkldQ+ez662YQaYw6k1mCqib6VCHjrdz8gC/rWVhVsq4B30JyN6Zo/Nt338nuspRQHl4jmtJVUfxKYewG410IqNanHVrF4BRjqsqkkQ9uJG3frzrYcTIvm2SiedtXXv5iFCVx2HJGMsnQVB2yqmlSR6Ip4PfVQ/eiHrQbdyk8UX6U4ilhlxkMJThAN5VkA3PrQoOoySrWmNsExtoRw9y7sgA82GOHgKx72EHH2QgOQiUjas1y0c3b+aAjpA0N5i5RWdf3HpGAJpFIpLA/9r7BuoGE/tpwH1I6A++UyeYIkr6ibtJTyAumUiKI/qMc9fAqnjOCjJYZeOZPhNYI68JSW+fly4r5qFAfgZRqeYncqRIjS6AWW1U2sxvdEN4lMquyWnWu17a1ddM190leYdcyO9eb+VllXoPKLo66KpD9xeQ3s1OVW7Bl8cxKaSlZM0BJskcuap2bPbZe1iL2WZfIniEIqwHTPMVZe00bKyF4Z+aFJGuHD7G9rC1r/qbNl7V04+lj1NXLj03gPT5lpugVumYQNg8Ii5udNdnO9L6oSLd+i8wAVGg/2hwxZtvqdFvJ+NYFlXc3RaFb4NWBXpX0db2krP0fz/qvn3657Otjl//K3utc+cH3Spez8QR9jKAEcniEQHSkkUBThwW2tIFm0jARam6zihydUAvk03cXFPl9gYL08jZtkyWN87dGfemELqZbmVOrNGTqlIr0Ul0InZCPatEaA3ox3+u1tPMj+C54mYMIZlJwkq681DiUX2AZqSyPP439upqkz+NWuaXrbyNqAxyxu97nmtnUaJ9Z4/XIo+wqwy3penfcqtUNTNn8XXaZpRVGalqtMtvD2gyl6idkVKcbB8sXdC2tm6qb37AsJ7q8tb1k+bqcRoIASipeqsN/29st6sdVmt4Fiza44w+2uw1XDQkl5BYquUF7b/48eJWDahkQr3XC+or4dzM6MNJRAnxjbXhfoua6AVMNnCnPFi+7OuuAaC2s0lc+Xw6QwpMNpWX6oWiuYbisYpoxW5KW8OAMarVbtuFXKBpiK5Lr0l0zGxrso3XpaZIlYkOGB4qxBpnQ+GQttoXnUcJkuB0HAzk8ncAbIcDfkSBZEFQ1Q1AtcnaVIKe59fP1i93wsBANH/r3JNDc5RJJjIdKtEFNUGUXLIJH2hDWFCWPAPkXNINfLKMtE/q+WgrP+HIGqfPkZeOy6Qz6f9FKHBVd1O0Afh0dNgM/qIfmgappUBisiazyoIpvV9EupfM9f8N6eJQgAhMyrxoUZDp0DVAj+ZvC0VSTKxaa3vVhNTyJwBpIor/ezQ/gDkJt4CTCF3/JMz+5efXRmqzyX0536tRmvcX6PCUYAVBTm8WlbYAaQZpBEYL3uBPO/NIFK+AZBCHgwy14ZhUevtgFT4vHSapX6uI8pd/83J6gGf8Nn193JtEIJ77zQ3QSPECQjtTcTE1NBqh1ahM8uzQDf7VjJTydACq4Ac/sx8Mbh83WbFIX/CtcjaeTG4dUSLU3HA+/l/vwwTse80ZQRnJ1aoqLjSPFhabhotJOrcvdoeY4xjnBuCT7tV6dMp/SkZJMaVcWePVa7Ri2UDuSkz3mIx1TuRanoR66v7XsQ+t6rGkKflAXzMqJdOgmVPYbHCVuu3XcZHvzn83wakcSePq9r8Kmr3bRBkAGJ+tjFbEh88r0dNLBc+ItQjCsLrFhAMVPU4fI1gE1QzasbdkG8YLRk+ckjdoJlodfyVN9af5h3bLY1NI8WJtVZ4ygEs79vnX7Cu32qkl4+MGOg5xJQn9H+olkb+U2o5em8bemsTH3MRwR/DlSIpg3llIjj9hV2VaXs6BZm2EuZsfHzfUK1qVztbnP5eJmooS/4R5++ESOQxY0u5wl7QawAp5LkM4jwLcELYR0e8Vd9DH40cUtPVL5oHK6QAaNpGCXJaWvqtfcApoEIwSoqcVSFJWMy1AYzX6VtC5v0DK7xT3Y4VowBMvgGQS+iAA/gBsS6UCF+nnD6BEuJXk/wXZvQ3U/LFQN4iUKvOoHuBZPAQjUBxtGZuPIuRvfpG8kU3IXQJbTG9J2kKmR9QhHP8yBpxEEvxLgJHgCoeZXPHwZrsTTQQJcg2VUYeEdj6o/xnJPqW/AwwT5EAGmFe/GPN1BcHeunrF6LhguExLCpbgCIoz2r8YywQZ4LkFS8X8IQJAPZOaZphjzgR/4EC1Xr51ZtKuf27WjwXrlTHAVzIenEqQoAnwRLsfTAU3aUjGTsGCBU7HJjTlyRdJcOQO3Zp1TvsWDOQZ24u2hVI/wWFifSZ2lTdkpVr3Ynd17mSYf5pOezfvrjGT9kT++hrQmNeonw4tCEXnWCSIx2wQYjOOWte3+UmemRJzjvcF8iU/8Z34a+A/wpf9iEhz0IwGs+B3NNeSaPbAbgS9ZBPH7uX7KdM4zqcjOz0+pSikz0z+6PG88qzdrpcha5DB15Oba+ypSAAEfaHE5O3Pyvb1dbp8hW4yz+N+is4CPGIl1fEaTfi4pSkuVF6Qr1axTk2mjUp+fDZ7jnaUuU0dOrrOvOsXJhz5KoS6VRQXiZmF+WjI/2iSRTTo+QtE/n9WJwFQhTa7fs7DiAwL+RYf3YqWAjPe3Od0dkdzkvtYUr6vYYCx2k2FVTPW1YipXGmlic6XColCyPN8P61RvNvabCwJsIJQ2UdwdFOlXAGSCgPhiSNNFLOFmkHO5u38OseTS94bQeB7d7zJh3Rjxt5e2YmaBsPi+GARAJvDssB6ygms/+wv5jUL2Fzt+GcBP/YDGO9GvtAeYbo7ouLE9ifwAWbJeIph/IPF3EYHMihcPpOYIwrBE4s00N/EMS11Fck3AZNYGihQuydRPf5cgqEKDLlQof4tTZVfI5RVsdqdNIVdkr/w6ET3FfC0T8KR1FEMVRXoIDUYQFRxupck+VK0XgCgIowektRR9TRM6ioaHVVjt/klOO3Bm4pe4rVu8TLHXX1DRLARREEKDUlpH3XAkvfI6GMPzY4UHPM+Qc0cIQd29qYKVAv6qB+I/VAD3ij+93VDGYtElcc44PmHm1twmVLAhdYcqnhm9MxliLtmfUMX2TvwljYOW2Aj4TLA9E460nmJookhPopAYB1P0igMPeTPLhUGikkfdcXMWzF2QWn9tISqavU14U/r/EdkjWStxxNQ0UPTNDafaSdtHV3Z2RAIAcUWgWqAnTVwMAkndd3iuYToRGwiBxl5pTc2pzXLelZ7/FfQD+4tmY4eXeNmSNN8s1CcVUuOy4mF6qXEpHBl9/7sTjiUeVW6G2JtX3oag+c87Iyatpehq26MSKsGV0c7cnjAVv3WjWk2UmgHQZAU+vc2V3BOJervb3F5vjHlNNDelp0+aSopjVWQGfBecVMplVh7vHmY5Fwh+ljVS7M0U2QUUGEBAzJLgOSEuz2ZVjBOBIAihpt3hF2B9tJmck1JxQBBNqUqpMNEvX5kbY/Zm7RTaCp2mztxcW29lMlD8LGuh2OopstQ7ztLS/ZEddfTVpLi4pNe5lM32hXxxy3+IGh+Kycemk7xvZjbdIYEACEjq1UFEbdCJmBGTfCNdUlNPcTeKn6zKi19tCDHvv2IoMt1LuatNG+Zy9rYhaDwq+H3jEqk1G3yM14aT0gec3CGNcWutWHQ2SuMfufO1pvCRFFb58pQeOINKRbU52N1qTe+vfPiggNf7W9adtR9Jtbr0MjlYuMN60Np1yO1zpzITBFdDmhjxnGlXJnITJVV2lkn6MrHow5z/wVV8SiACqhCEtWUUyW7GSeToAYdKTP/+vO01Mbbdx5mHxPRCCOMb8S7mScSo9LQUPEB+dGt4Xh81eWqD/cgtzgkZkDUTPQ+JsqOyIIEKvkK+c2tKrI2aM6nSM9hCTe4sd+y4ZR7ppGYN1iJPyH6TtRIVXxBl92QVBPEJgmy/LIgnA6w0imdF8NKNX+BfI4onlUzeJu2lyJop0ueXrpHyYgWx5OFro1+/jR0ZunCUdumI7KWsimi6RJS9K8vCM0HFK8aSd6ihiWxqjfx7aP/+M7oLdK+y+EXmR7b3/2CH7LVeQ8/5y7jpcybwlL2SMUkTIfkZQXJCEsZTAEvI3C2cWB0rlc3rj185TUjb3URsnBxULHdgtoF3sFBFjWF4auB8mi1ACjfgqVV4+PqD0PvJqkLxhhL05fHv1jzVc3gj7viDji74C0epuRoeJCQ5Thevtn6xZCa68bk+SY+IGq4aQOV1ppfD8TLZQlYj3Mg2RA3sr1tL3PWw9rPY1EWCXduEO/c1JCd1qPLT9XqDT6fOp3akJFPb1QU+vUGfrlflJ3UcEgRLQ7mDqVMoGPFU6Coq2/otH63/VfrxOTl5af6sUDSmn1o9oLMXuBTsTK+1k1/wzqqwptqiMT91W0C0ejoBVsIzCNur4RGCbIgAg714V9jrEX6YpcugZeoWjUqCmUkhXPULqnI7l/psyrMZXue5HZGMFhv39Kk0IDME1Fkn+MQcE4nBOG5tDJcIXGn5GagcH4rjawmnOooM+mI3maXqU30pX8CVVhWz7J+haFwiWAu/WTBytdwFPH5WGpebxmLlsRXztlSz2MadZPzVbxvm23m8ngH2w/Lf1Ct+O44wbl65h4192COPoPICsNwD2NImCteelgRaLA8yqOXVq4SlXENZQ66b62k8NHT6JJH0rByxJrJKqlX78+XJEj+BADarcOg3E5sh6PWxaMRq6PcXZyQ8t2P0n6ViUfdJIWcaceyMKfC9sEAtKJDh1VHB/9JKT8Tb3uxwixsnvjfwq7LaEY6kVFuyeNNKKscblxQFxB0p4WLZdRmRNS4jjVWkkohxzLIMH5wKruKZo2SvEuT9jL6BdS641C6VW1EpBplQEH2ereR6uBu1lPO3RBTg56VWpQZKXZehNp7y8eSbvM0Wjdj6KlN67mB5DIikQdRc6+gKvJFHNECNeNalZ49JU/O0waSbLLqKU4QVE+vOul6q0bkSQqy+Q9ciEzqEKAL6NysxC/8MEQFYWHkE6h3/VTIkr0IYATnrMA9JRP1RFNn7sVUs7xzl7HbVSy5MEqLkcdcUhadyYT93Okq9uRzOvCmJngTMlNc0shdR4Fe1HbCidgAMNSdOAyiT7J+ahdeQa9qoEiTwSZToOuRC+RIqwtUy68xy4y4vIqj6WwbZ7T+yzcbjfTviHbodLdfr48VHng+AbI5Mtn6IzuPSMp1C9Wrcn7zHzEiPr0dmRHsKtg7sEMSDO+GRyW4Wj1tBEaAb+0E0fg8aKaa61r9pzd6bUPsrqKOHoPWjLKWunrcQ3QxIH6aKvfAlni+A30kP7SabXYm8vpARREnLjzzwnBP/sbgAXCGhrS7lggM8xnsr9YaoUSfPjqZcRf5NHUFz5RKvV6bWZYuGHgnVo4XC07Os8btkudyKPY5fpfX6Qst31QTZt7JyAtg5J/yi26Ei5qMrHmnH0fNsnSY9R2KK5AUc9txokRIwHllzYfhdsfisgpSX9PL+64vBPyrKNtm83Dl071uNAOCd9b7kZRMmesyZ871q4oQlm0dzcryk7pISUu8ZJ40WOkPsKS3R/0E+EwJh6TxW01yW9B8A/CAorupPUN2yX0OupYhBEPgBMAcy/MHf/kgtEeSpUj1+cxLzvY+oFRXCqUTy+R6zy18ptvsL1Yocox4urqqLpPH7tud/Rq+sA0/xhc0hbFb/OTLn0GRS0YrWCWT9fYFXo/rpnkGll6jP/KSSreDISAOzCaTc2l9Y5M11g9m5XL2vTKn165QKf9RwkuiPK1XDAb3VUdBsBGLc+4wG0tEpp6ecfou1qfBSpmh/dCV4iC+oz0kI1J2nsM9OJOTzy0uSNFcFGTq9MP2ihvl45vwkQ1Fd+h0yol6fgZP7mzT20jRfcmWnCeDxgUavbVJxtn1Wc8vyjEpMQRa1w5c+TjghHGaN+0nIO8IK2fw2v47//E4y2lJusTlyDMpih1ma+0k2F/Sugy3Umqa63Z5nPvAfPm2c1Og3KrrCpoZ4CvrrdLH4KF+kH9IJ7/i0Za99drEftlmzy5VOT54M9qk5p3y2Peh7bJlfxcudwmMfW8fnLP221BF2yDP1VnturRpUkQaymC1p3iJubyjKqrsp4P7O9VuNdyIi8ZT5bfHbiqwuW4nWVJRiEOd8nMvVBepSLQMFYcNwdeuSMFiKE34hFH0pFH4pEn4BUne/Ehz8auj7zQvraPw2CeXH//NMVJsqL9MO1uAEpwVkEv5BUYOC4BnE5fWQB1TqNHpx0cFsgqIBrKd0C/e9GOx793sjPlp5AkInqo8tqMUzU9b/vus9Ojc4L899gPvkZzrz5g9FefKAR5MDGm/yfpeQKnta1KQiJamIPWloHEkCgelL8s0va/IpKmnGi0X3v9q0pn1V9TQhmWsHr+TXjtugZv7b3zsygPxS5u+ZT8JxdGcJ36ZFefPT59jCzzNTahYZtpWXG7bWLI6NH7Oh9NnVSUH9JhLU0ml9YW2HWsgNQL9EtdteWDqgVsjqYMwiwAkXTY6N8CwCqAE8G22kM36RPObDjSGOSQ4vO+/7jSPE+d5nyp95xSKCyCt+qmC+j/OJWL/7LiyF5aYQpxHmPxb/yqAbMCDZTNreFCItbwI9fz8NPgUlm8NEw/RkPB887wq+GwTf0P/vGSUklVCTSpKIK4Z+2fWSXHpB9m9e/i3aw7+31CZP/rpn8pnH//6T+838xlEMAbOiiZ4TU//599E3U2q+npyTd+6vC7av8vP/lT3MhF6CJ+3GEH9E0LiZSMcd7EBdrCNa/5Qz+vMuPApo2tWSq3PW4RPYz3n0vOrH8V9/8DQubooW7o5Ioe20Uf8MQWyI9LzTab80QrZ9KmD21Ryx+7UhleTP1fOxfz7n8Bg9eRcUd8/8gFIylfKUiAy4ZqW1SXMy4LoUr6G2LG2yKBTRTvI9IoHGdsut5n4B2znBfDnO646F8GDpmRSYaqgutw5H86xDvGWqPpDp+1SV24byorZhwPVSflVyKxyNanoCAR2KRuJYcnJbTojEeqO58OKU0+ws01vKvUZBdkOQAwsrNiOq5Yy6t/P2J4nGC8NOhyDUIKHwvfsYdQpk9YJ3QcFB4tZzCUlZpEbuG4KULKHHEykmqoSslU9mUNPuxsQy29JFPbgPiQ1E1bYdJAttcr5ZEw4ptVqDuWHW3lBIYShgkuqln5g+OV6Vai+p0NtsBkNOarK9vMJgs8MFQTkoVPM4z3Qqdoku+6ZfLBUbvNUkJ41J3sCK6LVv+KyCrYvBuoUHbkpY77DLzMwsOMVCq2oapjHx61hlyWUZU6f4CormpdX1WZZEI/qBgmi3wqfJwVcf2FFHM0ZG9FUV5pHCEDwrp6+raI4ut215Yc7ycQG43ReISEB53UwXTjgt7nLZ5VeXrpRduX39YwlwbKPcp4IrAiGNOZXHfmVFKKAsPY68j5QdCJGy3iaTTltcwP4P2dMgeSenghgsJXJ2F4bQolXSWQuAdqeptPhmn4mtLBURPmKs+2xcIRHnqTDlG10Z+1WCRz/SI6mmxCtZ4O0NKemmqkg4kZSes/fEhzG85jYsW6dnS+jwBJnELk6Y8fDValsdCasKCpUxkTfdrlZ+PmLzQ+k2o2yGnwXO75yQ9Clmel5ffm8HPiHVYjn1j2cxSNokpvKhNbrFItxhWtJ0RxOZmMIvCumS3f7UJfgFCfGrmp7vRL4H5AkK4e+ZSU0LZzLG34x7s5TG+phCWNjTN7p2PTi1QRdUqMImszoYVqi1QbkmaDGrQ0HFbRaHo9OxOSymmq3Ts9Vg++cSSKlESCQIpRJSis+4lErXAbFky/OS7wf9u0nnCOcoxCYiBX8XPyg6l8jj/XtOpNC/JRPPnTVpQ9kqrTZLpaaajNow1eayw5nbSbhveZz4FSbDoknn//uOQmwkUbnfIhOrl3MXRyUWk37/xAOPdxZLBJz+rWTiFF6YmHu1df5bDMXaP6SCifxpmvRsszJotJnzq/Wptnwx35W+jUTYZ6gkhI+Vhalka8Bk12SIPF5a1CkNah22oiZ9bsMh/SH44G7dbmDR6D7QEWYp/xeXej3S4jSdml9zNm7Z66Yw15DZ4fH05ETT+/o9AWO2ODGQHqORN5IrCH4k5u8HQM82lBtq2RmIJ4w0sQQ1xJQ5rLnlaoc5R6zzuuuXUkjrBZXEnLtfnCAbvvYJY9v6eDpuINbbQq2pA9KngXOrBpdkUSsXpNgn2HoJSpRyIqGVohzFK43K6hWxnpjAyUMPoPGY2/sq8Mr3lTn40SP6dfq1A0/LBuZxwp+uCYPH2b9k/PLZD1fTroKXsqjPiYaFy28vWt44l7m1cAXABLgxLk91a+BxG7iTEm5+v7ueH/l6PcdSGTSWhbf+m/SZcNLn/4HHHeczzn92oUb7fBcQ/HErlII1li1vlEsMOP0T+qk0RsEAVeDLlQravpiQn0SjF6YEfgzwIn1P6Zf+bzcAu/soQdM7EusiMt4iU678w709B4TvuYUZAtKv4/Dk2VTit4VryMDj3r76G07ixxTyWwxi1Wh/j4bfuoSTSGsKvyVSZ5PxOb+QMoQGMMjbuShqatYMv6MrAaAZNXNnlB9qjCijPFgysCN9yJgBM0Q/865R6B8teb7I4Ff6QTXul7+X7eh+cODKQqtfw/LhE7FU5qst/y6wvGr+5WKTznw/mBoK/hMErX5WLZdby+JchJMRDntzUQr0XWdFOZwoi+VlivcrNmOHJUA29wmTeYXHfUzXq5+q0+xGgxlqX201GXPAZ4qtWs02hfTRbm1gH2IwDk4a53gynwe8YlwZnJDVmO+/yJae8dDRF2Pn+/HcY0mMeNAcY/ApzZ2Mz5B+VDuqGBFGvmK/aaMPHdUp/Op4TEFacxKVFf/pla1gJmbTsZbYyRu/vxCe+wO5lpPCoQ8yH5KQV5XBfICWAwQIQDyAUBgEUiylUi5VohFQPgtN5OhHnOlIsZSKSsDWh+CEFIuUE7cTWjjpSWe5SLGUSrmoOH2RcyZSLKWi4mwVagTutgH4GymSEimTSlFz/gcWyIJw2wAiIkVSIkqhoT4Aa6RIJALsY5CNq9RJQYqkRMpEyQ2LnCKkSEpEyS3qFAMyA6DQ4Bi7VJ2YqutN1Y2sev6ueslV33+R318IwqxhqUw4V2idZQ1Ljg6yggDJsjUOgJWrwBpgpi9EsCqmrn03CuvBO21tdna9PA0b6CoXPwVka21yaXlb2ISJfCUibPZt9oWwDcO+npu2PW/ysgG9EV3vkzuB/z9Lp+1NbdXytfrbyUq9m4JqJvyngf+v4++reEbOPLOJv4fwQRINPgWMfbYFu/DOvm/TaZxFSaQf3q7zucXP1a/PR2hl8op10G7cpoUIrpfahe8ClPAi33nne+Kc7xefij9v9IdDXp+Fxh//+Btt09CTPOeHy4EJHr/6L4DVQJ8aHYg1YoVYMNls8BQ3o3vIgR4+Y4dYAwUxkEszHaDT6ysx8fx3Qc6oAM9fOx8bFWs0vAXEsNcGsQbjJwO9+/DJ5x/5t38iPhI/E8/nvySb4nyZp/DLMwUiPsIkSUC2U8oStJtnRo8hzQF69mr6PzYqPtKoPo/urs6OykeYy5n/zzVjKvLM1eqAfNKFVOHcJJc5X+SnzqGIkrc6RAK9nSXNQD4TUMGVJG/+muu0++cLd25tDLPkJEfZPrRQZNo9zDPQy5zu5J7mNIBBfyxRd4OzOeN6Cz1fOdw7RIcn84EOg0kuRW7lVADcfcr4jYGvspZiHsjt+RpnhkPtXexZ40k/J5q1UfQL0vlnQlkJBnL+AZzYVVmcuYNabLdJCR5ydwtZkFAw6s7KppT1sXg3pqpDOh8Of64M1UAAvEwWPSTb8J3Nq3zFIpL7TRWqPAmIP40CGa9w/Gamr+dlNRx/l2mc4oghz5pj6r8ahTHszWQKxqY/cT98kGpsjDn71XzsNxBgCfr0TfjjtxA9v2GQyKcAnx/9VjUAfPPMoZGJHqfGbMBKCAABfitD3yigyPaAvJb2104XdQPoNph2k7cZ3GNKswZY6ZoI/R1OD8mBebsb4/Ip5KMXv18S90gFhRUPS8vFAVlr0foZcfRYwI3TcB2V0C7kStDyH3kDmHlKVjd58HOrcYsFrJZkuVqsCOa+Gu+5BswxFadlg0qVhqvUMLN0R3ByiCpR2IbQ8+/83zdKCZEB+bZ8hNVSUXWPIeU9IauQVdMD9IDw/YpDoBACymdDpVsi/4l7IEjbpOWB4tUiIVbVHCN3XYpKohW77YHIKFBBJdcF33G4zQeaYC5a4hmLYAasRqeurp9gFQJyCIMOVMAEBUi4OfbzigT6h0ycMbB7UUBaDFDld+KigbYEIIuUHzAo3jPgZpMI3p18Fe7L8SU4s6e6RBSjZwuebE7pcPOGyxUklaJx7qEluOTemloR8XOSpcHPTgHN3KKMExdYr39IDyDkNW3rMPoLfr7FH+WUFaGnkxRIARhknBM74TtLyZOVWBlQzZcLEhcB+IWAkUrlYsb+snhGRyvpCEsBUtKyUvBxqu9gFC0QqtC7s0QGRglAVroRmBOBC3AUmqEKKiAXZkAxRGA5bHpvPlyPTBDgV4tg1Uj47yVAnNMG2yBBSwIAPgakFsL1cS0Cwf1apEK/1aJoklEbpyE909FMuXRlUAlS0bX1mKXXdsNUV9sPVxvERN8DNh62EXsImRgYWQhpm9fEmJumQbc6jVx+gUn6xWinn1gopEu9bn16jNXmtMHOWqlFTEwPFz29Cb1Zp3Yh003TzjwJ0xC2q28V00Iov3e/Rn0G1J+pWxcWf0StzqRwbyYoSOj4Iqrf9d4soIvUfQlKdqsmQpa1H+lm43Wo1cdCx8DAwi1NBp9c7lM3ciq77l+tLtpVqtLcNnL/BkMJGysu0P5GWhss3Im2xFZMfUoHmmCkOp8ysnFvY7VrLNImYROfpCYBq9fGKn/NBf1GxEEnhnaH3Rvk6hEzb71aJtw5e7JGJo40XqJRWfPXtkJiRXmi8JEA8sfLN5cJ) format("woff2");
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}

:root {
  --bg: #f7f8fa;
  --surface: #ffffff;
  --text: #16181d;
  --muted: #5a6270;
  --accent: #0f4c81;
  --accent-soft: rgba(15, 76, 129, 0.08);
  --accent-contrast: #ffffff;
  --rule: #e3e6ea;
  --shadow: 0 1px 2px rgba(22, 24, 29, 0.04), 0 8px 24px rgba(22, 24, 29, 0.05);
  --shadow-lift: 0 14px 34px rgba(22, 24, 29, 0.10);
  --band-bg: #0b2440;
  --band-bg-2: #0a1c31;
  --band-text: #eef2f7;
  --band-muted: #9db2c7;
  --band-accent: #7fb3e0;
  --band-rule: rgba(255, 255, 255, 0.14);
  --mono: ui-monospace, "SF Mono", SFMono-Regular, Menlo, Consolas, monospace;
  --serif: "Source Serif 4", "Iowan Old Style", Georgia, "Times New Roman", serif;
  --sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
}
@media (prefers-color-scheme: dark) {
  :root {
    --bg: #0f1115;
    --surface: #161a20;
    --text: #e8eaed;
    --muted: #9aa3af;
    --accent: #7fb3e0;
    --accent-soft: rgba(127, 179, 224, 0.12);
    --accent-contrast: #0f1115;
    --rule: #262b33;
    --shadow: 0 1px 2px rgba(0, 0, 0, 0.3), 0 8px 24px rgba(0, 0, 0, 0.3);
    --shadow-lift: 0 14px 34px rgba(0, 0, 0, 0.45);
    --band-bg: #0d1826;
    --band-bg-2: #0a121d;
    --band-text: #e8eef5;
    --band-muted: #8fa3b8;
    --band-rule: rgba(255, 255, 255, 0.1);
  }
}

* { margin: 0; padding: 0; box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  background: var(--bg);
  color: var(--text);
  font-family: var(--sans);
  line-height: 1.65;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  display: flex; flex-direction: column; min-height: 100vh;
}
a { color: var(--accent); text-decoration: none; }
a:hover { text-decoration: underline; }
section { scroll-margin-top: 5.5rem; }
h1, h2, h3 { font-family: var(--serif); font-weight: 600; letter-spacing: -0.01em; }

.accent-bar {
  height: 3px;
  background: linear-gradient(90deg, #0f4c81, #2f7ec0, #7fb3e0);
}

/* ---------- nav ---------- */
nav.site {
  position: sticky; top: 0; z-index: 10;
  background: color-mix(in srgb, var(--bg) 84%, transparent);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  border-bottom: 1px solid var(--rule);
}
.nav-inner {
  max-width: 72rem; margin: 0 auto; padding: 0.85rem 1.5rem;
  display: flex; align-items: center; gap: 1.5rem;
}
.brand {
  font-weight: 700; letter-spacing: 0.02em; color: var(--text);
  display: flex; align-items: center; gap: 0.6rem; font-size: 1.02rem;
}
.brand:hover { text-decoration: none; }
.brand-mark {
  width: 1.7rem; height: 1.7rem; border-radius: 0.45rem;
  background: linear-gradient(135deg, #0f4c81, #14649f);
  color: #fff; font-size: 0.74rem; font-weight: 700;
  display: inline-flex; align-items: center; justify-content: center;
}
.nav-links { margin-left: auto; display: flex; align-items: center; gap: 1.5rem; font-size: 0.95rem; }
.nav-links a { color: var(--muted); }
.nav-links a:hover { color: var(--text); text-decoration: none; }
@media (max-width: 680px) { .nav-links a:not(.btn) { display: none; } }

/* ---------- buttons ---------- */
.btn {
  display: inline-block; padding: 0.6rem 1.2rem; border-radius: 0.55rem;
  background: var(--accent); color: var(--accent-contrast) !important;
  font-weight: 600; font-size: 0.95rem; border: 1px solid transparent;
  transition: filter 0.15s ease, transform 0.15s ease;
}
.btn:hover { text-decoration: none; filter: brightness(1.08); transform: translateY(-1px); }
.btn-ghost { background: transparent; color: var(--accent) !important; border: 1px solid var(--rule); }
.btn-ghost:hover { border-color: var(--accent); filter: none; }

/* on-dark button variants */
.band .btn, .hero .btn { background: #ffffff; color: #0b2440 !important; }
.band .btn-ghost, .hero .btn-ghost {
  background: transparent; color: var(--band-text) !important;
  border: 1px solid rgba(255, 255, 255, 0.35);
}
.band .btn-ghost:hover, .hero .btn-ghost:hover { border-color: #ffffff; }

/* ---------- hero ---------- */
.hero {
  background:
    radial-gradient(70rem 32rem at 78% -18%, rgba(127, 179, 224, 0.16), transparent 60%),
    linear-gradient(180deg, var(--band-bg), var(--band-bg-2));
  color: var(--band-text);
  border-bottom: 1px solid var(--rule);
  position: relative;
  overflow: hidden;
}
.hero::before {
  content: ""; position: absolute; inset: 0; pointer-events: none;
  background-image:
    linear-gradient(rgba(255, 255, 255, 0.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255, 255, 255, 0.035) 1px, transparent 1px);
  background-size: 56px 56px;
  mask-image: linear-gradient(180deg, #000 0%, transparent 78%);
  -webkit-mask-image: linear-gradient(180deg, #000 0%, transparent 78%);
}
.hero-inner {
  position: relative;
  max-width: 72rem; margin: 0 auto; padding: 5.5rem 1.5rem 5rem;
  display: grid; grid-template-columns: minmax(0, 1fr) 21rem;
  gap: 3.5rem; align-items: center;
}
@media (max-width: 920px) { .hero-inner { grid-template-columns: 1fr; gap: 2.5rem; padding-top: 4rem; } }
.kicker {
  font-family: var(--mono); font-size: 0.78rem; letter-spacing: 0.18em;
  text-transform: uppercase; color: var(--accent); margin-bottom: 1.2rem;
}
.hero .kicker { color: var(--band-accent); }
.hero h1 {
  font-size: clamp(2.2rem, 4.6vw, 3.3rem); line-height: 1.14;
  margin-bottom: 1.3rem; color: #ffffff; max-width: 44rem;
}
.hero .lede { font-size: 1.13rem; color: var(--band-muted); max-width: 40rem; margin-bottom: 2.2rem; }
.hero-actions { display: flex; flex-wrap: wrap; gap: 0.85rem; }

.proof {
  border: 1px solid var(--band-rule);
  background: rgba(255, 255, 255, 0.05);
  border-radius: 1rem; padding: 1.7rem 1.6rem;
  display: flex; flex-direction: column; gap: 1.25rem;
}
.proof-item { border-left: 2px solid var(--band-accent); padding-left: 1rem; }
.proof-item .label {
  font-family: var(--mono); font-size: 0.7rem; letter-spacing: 0.16em;
  text-transform: uppercase; color: var(--band-accent); display: block; margin-bottom: 0.15rem;
}
.proof-item .value { color: var(--band-text); font-size: 0.98rem; line-height: 1.45; display: block; }

/* ---------- sections ---------- */
.wrap { max-width: 72rem; margin: 0 auto; padding: 0 1.5rem; }
.section-head { margin: 5rem 0 2rem; max-width: 46rem; }
.section-head .kicker { margin-bottom: 0.5rem; }
.section-head h2 { font-size: clamp(1.5rem, 3vw, 2rem); }
.section-head .rule { width: 3.5rem; height: 3px; background: var(--accent); margin-top: 0.9rem; border-radius: 2px; }

/* ---------- service cards ---------- */
.cards { display: grid; grid-template-columns: repeat(auto-fit, minmax(19rem, 1fr)); gap: 1.2rem; }
.card {
  position: relative;
  background: var(--surface); border: 1px solid var(--rule); border-radius: 1rem;
  padding: 1.7rem 1.6rem 1.6rem;
  box-shadow: var(--shadow);
  transition: transform 0.16s ease, box-shadow 0.16s ease, border-color 0.16s ease;
}
.card:hover { transform: translateY(-3px); box-shadow: var(--shadow-lift); border-color: var(--accent); }
.card .num {
  position: absolute; top: 1.3rem; right: 1.4rem;
  font-family: var(--mono); font-size: 0.75rem; color: var(--muted); opacity: 0.7;
}
.card .icon {
  width: 2.5rem; height: 2.5rem; border-radius: 0.65rem;
  background: var(--accent-soft); color: var(--accent);
  display: flex; align-items: center; justify-content: center; margin-bottom: 1.05rem;
}
.card h3 { font-size: 1.12rem; margin-bottom: 0.5rem; }
.card p { color: var(--muted); font-size: 0.96rem; }

/* ---------- quote band ---------- */
.quote-band {
  margin-top: 5rem;
  background: linear-gradient(180deg, var(--band-bg), var(--band-bg-2));
}
.quote-inner { max-width: 72rem; margin: 0 auto; padding: 4rem 1.5rem; position: relative; }
.quote-inner blockquote {
  font-family: var(--serif); font-style: italic; font-size: clamp(1.2rem, 2.5vw, 1.55rem);
  line-height: 1.5; max-width: 46rem; margin: 0 auto; text-align: center; color: #ffffff;
}
.quote-inner::before {
  content: "\201C"; font-family: var(--serif); font-size: 6.5rem; line-height: 1;
  color: var(--band-accent); opacity: 0.4; position: absolute; top: 1.1rem; left: 50%;
  transform: translateX(-26rem);
}
@media (max-width: 860px) { .quote-inner::before { left: 1rem; transform: none; } }

/* ---------- independent ---------- */
.split { display: grid; grid-template-columns: repeat(auto-fit, minmax(20rem, 1fr)); gap: 2rem; max-width: 72rem; }
.split p { color: var(--muted); border-left: 2px solid var(--rule); padding-left: 1.2rem; }
.split p strong { color: var(--text); }

/* ---------- timeline ---------- */
.tl-intro { color: var(--muted); max-width: 46rem; margin-bottom: 2rem; }
.timeline { list-style: none; border-left: 2px solid var(--rule); padding-left: 1.8rem; max-width: 48rem; }
.timeline li { position: relative; margin-bottom: 1.7rem; }
.timeline li::before {
  content: ""; position: absolute; left: -2.28rem; top: 0.45rem;
  width: 0.7rem; height: 0.7rem; border-radius: 50%;
  background: var(--accent); border: 2.5px solid var(--bg);
}
.timeline .years {
  display: inline-block; font-family: var(--mono); font-size: 0.72rem; letter-spacing: 0.08em;
  text-transform: uppercase; color: var(--accent); background: var(--accent-soft);
  padding: 0.14rem 0.6rem; border-radius: 1rem; margin-bottom: 0.3rem;
}
.timeline strong { display: block; font-size: 1.03rem; }
.timeline span.desc { color: var(--muted); font-size: 0.96rem; }

/* ---------- writing ---------- */
.writing-card {
  display: block; background: var(--surface); border: 1px solid var(--rule);
  border-radius: 1rem; padding: 1.8rem 1.7rem; max-width: 48rem;
  box-shadow: var(--shadow);
  transition: transform 0.16s ease, box-shadow 0.16s ease, border-color 0.16s ease;
}
.writing-card:hover { transform: translateY(-3px); box-shadow: var(--shadow-lift); border-color: var(--accent); text-decoration: none; }
.writing-card h3 { color: var(--accent); font-size: 1.18rem; margin-bottom: 0.45rem; }
.writing-card p { color: var(--muted); font-size: 0.97rem; }
.writing-card .read { font-family: var(--mono); font-size: 0.78rem; color: var(--muted); display: block; margin-top: 1rem; }

/* ---------- footer band ---------- */
footer.band {
  margin-top: auto;
  border-top: 5.5rem solid var(--bg);
  background: linear-gradient(180deg, var(--band-bg), var(--band-bg-2));
  color: var(--band-text);
}
.footer-inner { max-width: 72rem; margin: 0 auto; padding: 3.8rem 1.5rem 2.6rem; }
.footer-inner .kicker { color: var(--band-accent); }
.footer-inner h2 { font-size: clamp(1.6rem, 3vw, 2.1rem); color: #fff; margin-bottom: 0.6rem; }
.footer-inner .sub { color: var(--band-muted); margin-bottom: 1.8rem; max-width: 42rem; }
.footer-actions { display: flex; flex-wrap: wrap; gap: 0.85rem; margin-bottom: 2.6rem; }
.fine { color: var(--band-muted); font-size: 0.88rem; border-top: 1px solid var(--band-rule); padding-top: 1.5rem; }
.fine a { color: var(--band-muted); text-decoration: underline; text-decoration-color: var(--band-rule); }
.fine a:hover { color: var(--band-text); }

/* ---------- subpage header ---------- */
.page-head {
  background: linear-gradient(180deg, var(--band-bg), var(--band-bg-2));
  color: var(--band-text);
  border-bottom: 1px solid var(--rule);
}
.page-head-inner { max-width: 72rem; margin: 0 auto; padding: 3.6rem 1.5rem 3rem; }
.page-head .kicker { color: var(--band-accent); }
.page-head h1 { font-size: clamp(1.9rem, 4vw, 2.7rem); line-height: 1.16; color: #fff; margin-bottom: 0.7rem; }
.page-head .sub { color: var(--band-muted); max-width: 42rem; font-size: 1.06rem; }

/* ---------- service detail blocks ---------- */
.svc-block { max-width: 50rem; padding: 2.6rem 0; border-top: 1px solid var(--rule); }
.svc-block:first-of-type { border-top: none; padding-top: 3rem; }
.svc-block .svc-tag {
  font-family: var(--mono); font-size: 0.75rem; letter-spacing: 0.14em;
  text-transform: uppercase; color: var(--accent); display: block; margin-bottom: 0.4rem;
}
.svc-block h2 { font-size: 1.5rem; margin-bottom: 0.7rem; }
.svc-block > p { color: var(--muted); }
.checks { list-style: none; margin-top: 1rem; }
.checks li { position: relative; padding-left: 1.5rem; margin-bottom: 0.55rem; color: var(--muted); }
.checks li::before {
  content: ""; position: absolute; left: 0; top: 0.72em;
  width: 0.6rem; height: 2.5px; background: var(--accent); border-radius: 2px;
}
.checks li strong { color: var(--text); }

/* ---------- card link ---------- */
.card .more {
  display: inline-block; margin-top: 0.9rem;
  font-family: var(--mono); font-size: 0.78rem; color: var(--accent);
}

/* ---------- contact ---------- */
.contact-main { max-width: 50rem; }
.contact-main p.big { font-size: 1.1rem; color: var(--muted); max-width: 42rem; }

.contact-grid { display: grid; grid-template-columns: minmax(0, 1fr) 18rem; gap: 3rem; align-items: start; margin-top: 2.2rem; }
@media (max-width: 860px) { .contact-grid { grid-template-columns: 1fr; } }

.form-grid { display: grid; gap: 1.1rem; }
.form-grid label { font-size: 0.9rem; font-weight: 600; display: block; margin-bottom: 0.3rem; }
.form-grid label .opt { font-weight: 400; color: var(--muted); }
.form-grid input, .form-grid select, .form-grid textarea {
  width: 100%; padding: 0.7rem 0.85rem;
  border: 1px solid var(--rule); border-radius: 0.55rem;
  background: var(--surface); color: var(--text);
  font: inherit; font-size: 0.97rem;
}
.form-grid input:focus, .form-grid select:focus, .form-grid textarea:focus {
  outline: none; border-color: var(--accent);
  box-shadow: 0 0 0 3px var(--accent-soft);
}
.form-grid textarea { min-height: 9rem; resize: vertical; }
.form-grid button.btn { justify-self: start; cursor: pointer; font-size: 1rem; }
.hp { display: none; }
#form-status { font-size: 0.95rem; margin-top: 0.2rem; }
#form-status.ok { color: var(--accent); font-weight: 600; }
#form-status.err { color: #b3403a; font-weight: 600; }

.side-card {
  border: 1px solid var(--rule); border-radius: 1rem; background: var(--surface);
  padding: 1.6rem 1.5rem; box-shadow: var(--shadow);
}
.side-card h3 { font-size: 1.05rem; margin-bottom: 0.5rem; }
.side-card p { color: var(--muted); font-size: 0.93rem; margin-bottom: 1rem; }
.side-card .btn { display: block; text-align: center; margin-bottom: 0.7rem; }
.side-card .fine-link { font-size: 0.88rem; color: var(--muted); word-break: break-all; }

/* ---------- article ---------- */
.article-hero {
  background: linear-gradient(180deg, var(--band-bg), var(--band-bg-2));
  color: var(--band-text);
  border-bottom: 1px solid var(--rule);
}
.article-hero-inner { max-width: 48rem; margin: 0 auto; padding: 3.6rem 1.25rem 2.8rem; }
.article-hero .kicker { color: var(--band-accent); }
.article-hero h1 { font-size: clamp(1.8rem, 4vw, 2.5rem); line-height: 1.18; color: #fff; margin-bottom: 0.8rem; }
.article-hero .byline { color: var(--band-muted); font-size: 0.95rem; }
main.article { max-width: 48rem; margin: 0 auto; padding: 2.8rem 1.25rem 4rem; }
main.article .lede { font-size: 1.12rem; }
main.article h2 { font-size: 1.35rem; margin: 2.6rem 0 0.8rem; padding-top: 1.6rem; border-top: 1px solid var(--rule); }
main.article p { margin-bottom: 0.95rem; }
main.article blockquote {
  font-family: var(--serif); font-style: italic; font-size: 1.15rem;
  background: var(--surface); border-left: 3px solid var(--accent);
  border-radius: 0 0.7rem 0.7rem 0; padding: 1.1rem 1.4rem; margin: 1.8rem 0;
}
main.article ul { list-style: none; margin: 0 0 1.1rem; }
main.article ul li { position: relative; padding-left: 1.5rem; margin-bottom: 0.55rem; }
main.article ul li::before {
  content: ""; position: absolute; left: 0; top: 0.72em;
  width: 0.6rem; height: 2.5px; background: var(--accent); border-radius: 2px;
}
main.article ul li strong { color: var(--text); }
main.article code {
  font-family: var(--mono); font-size: 0.86em;
  background: var(--accent-soft); border-radius: 0.3em; padding: 0.08em 0.35em;
}
.muted { color: var(--muted); font-size: 0.95rem; }
main.article footer { margin-top: 3rem; padding-top: 1.6rem; border-top: 1px solid var(--rule); }
