:root {
  --cream: #f5f1e9;
  --paper: #fffdf8;
  --ink: #171714;
  --muted: #6d6a62;
  --line: #dcd6cb;
  --accent: #f65a2b;
  --accent-dark: #d94217;
  --dark: #1a1916;
  --brand-photo: url("data:image/jpeg;base64,/9j/4AAQSkZJRgABAQEAYABgAAD/2wBDAAQDAwQDAwQEBAQFBQQFBwsHBwYGBw4KCggLEA4RERAOEA8SFBoWEhMYEw8QFh8XGBsbHR0dERYgIh8cIhocHRz/2wBDAQUFBQcGBw0HBw0cEhASHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBz/wAARCADAAMADASIAAhEBAxEB/8QAHQAAAgIDAQEBAAAAAAAAAAAABAUDBgECBwgACf/EAEwQAAIBAwMCAwQGBgYGCAcAAAECAwQFEQASIQYxE0FRFCJhcQcygZGh0RUWI0KxwQgkM1Ji0jRygoOi4SVDY3WTwtPwJlRzdISS8f/EABkBAAIDAQAAAAAAAAAAAAAAAAABAgMEBf/EACcRAAICAgICAgIBBQAAAAAAAAABAhEDIRIxBFETQSJhBRQycYGR/9oADAMBAAIRAxEAPwDtVT1T1LS1VFSv0rCJq1nSEfpNcEqpY5OzjgHX1dW9Z1tFVUq9K0KieJ4tzXYcblIzgJ8da9Q9SU0tw6fqoKG7yCirvElK26XiNopEJ7c8sumsfXdvfIWjvLN/3ZN/l0/9jAbTU9aQ01JT1nT1sxFHHE8ouhJbAALbfD+GcZ1mqv3UkV+Npp7Jb5XeFqmOR68pujVwuSNhwcsOOfno+Hr62VKF4aW8SoCVLR22VhkEgjt3BBGktb1Oi9YW25paL61LDQ1FPKy26TILvGyYGOfqt8tAJGb/AEXWl8s1dbks9lgNVE0Xim5OxTPngR8402t8nVz1CivtFojiJG94q53b5hfDH8dSxde0Tg5tt+Uf4rXKP5a2pevrbWQJPT0l4khkAZXW2y4YHzBxyNCaCgWa/dUS36stNLa7Qpp4UnEk9VId8bMyg4VeDlTxoHqO39dXuy1tripenYoauExNIZ59y5HJAx65xrC9WInWMlxFnvppHtq0xcW6TPiLMWAx3xhjzp83WtIUMzW+9Kirk5t78Y0AL6OTr01sRqqXpmKFiBLJHLUO2P8ACpAGfmdfVN160N/mtttpunHipqeOZ5Klp0OZGcAALn+4fv04o+qKW400dVT0F1kgkUOj+yEbgRkEZPnpZQXib9Zq+vNjvi0k1FBCpajwS6PITxuz2caYiC+UX0gXm1VtAn6q061ULwO+6okIDAgkcDnnz0bbx1rC8MFfV9NRKseF8GCokZsDHm4Gm8l5WOGWoFJcY1VC5DU/YDk8Z19TXalvVHDVxU1YEZA8bvFsyCMgjJ5BGloCr1l661fqWa0UVR00ESjjrBLPTVBOGdkxtD98qT8jratoPpHrqOohF66UiWWMpvS3VBK5BGRmT462zV/rxPXiz3NqT9Gx0njCJNrOkrvx72cYYc6d1N/eGmZDYry4K5JjjjyPvcc6SoCrWHpb6QrRbqOhPVXT3s9LCkCMLTIz7VAAzmUAnA1Ld6jrKDqi1Weg6htxWopZp5pKi1A4KMgGAsg77/Xy0XQdbe0Rw1kVlvElLVlWiRkiVwMfX5k+qfv+GtWqLpV9aUVwHTlfHRRUk1OZZZYfrO6EHAcnGEPx57aegR8lF1tNDN/8U2cPHzuFjb19PG50B090J1dYba0EPW1KYmkeYF7MrEF3Lt3k7ZY6sUV+r4Kqcx9NXWTc20oJYAFA7Ny/Y+Xn641r0/1RP1XZZZo7RXUKiV4Vapki3MUYqxwrHjKkfHT0IBukXVtqks8CdTUkhran2Z2e1KMfs3fcAH/wdj66llsPWVS2F61hhXHKpZYjn72Opr617qrlZnhsMk0NBUPO8ntkS+JmJ0GAe3L559NMae7XnB39OMuDgZuEPb7NJIYDbulLvQw1JfqaSWsqH3tUCgiTnAA9wcHAGNVr6RI+pumejrxeKXq+fxqKDxVjNup9jncBg5BPn66t9n6kqbpPcoY7ZJminMDM86hWbaGIXjkDcBnjVY+ka0dS9XdI3yyUNnp0esEapNNXqFYeIrMMBcjgHTENLZ0xe5aZnqurri8hQBdtJTKEPrgJzpdB9G9dHeP0wetbxLVIhhP9XpwuzdkrgJxyBz340xhufWFDQwRnpy2SOqhWAupHl6mLSyh6/v8AN1HNY36SpoKlYFqnka6BkKsxUYKxnnKnvjtoCixRdT2R87L1bm+VUn56nN8taAF7lRqO/M6/npD11b4E6MvUkdLErw05mUrEARsIb0/w6sjUdM5LCmhweR+yHY/ZoJFM6Z6ssdFDc6Sa80ETR3Or2q9QoyjSFlIyex3askPVNklP7O825vlVJ+eizQUrfWpYD6ZiX8tIeqKKnhNhlFLDhLvTKf2Y7NvT0/xDQIcfrBadw3XWiAJxzUL+eqz0V1NaKbpCzw1N2oYpYYPDZJKhVI2sRyCfQat/sMBAHs0WP/pj8tfG10rkk0UBPmfBXP8ADSAVHq6wtkLe7cT8KlPz0ruHVFpl3ol3oD7pGBUpzkEeupr9bKeHqTpI+yxKklRUxlfCADZp2IyMc/V1YRbKVDkUUAPr4Iz/AA0bJKit9H9U2aLpOze0XighlFJErpJUKrKQoBBBPw0/TquwSe6t7trNjOBUof56mShpOxpKfA4z4S4/hpdNS0kHU9PIYoIw1BKDiNQDiROe2ltBSCKm/WWWjqE/S1CcxMDioXzU/HUfTdwt8HTloR62AbKSJCWcDkIB29fhqo9UfTV0b0YZVq6yNp1Zl8KFAxO0c5x92uPXH+mHEXYW2zB9xz4kzgfLAH8TpOaQ1Bs9Pm/2dJBEbnRiRhkIZRuI+Wo6q8W1IWd66nVMH3i/GvH5/pQdRSXYXJKChEwpzToWDFUQsGJPPJyNaN/Se65epEkVVQxRseIhTBgR9pz9ukslkvjZ6j6av9hpOn7RFU3ShSaKljVw0gDKcdtO/wBdemotqte6EMRwPE5OvN9o/pZTt4S3ex0s2368lNIUJHyOR31b7L9O/SvUvV1kq2le2iCnqImFUQFLvs2gN2/dPfGnz9EeD+zsB646ajIc3il7jJG4/wABpL0d1XZaWwUkU9dHHUPJKxjaNwfelcjjb6Effq409cKimjmhbdG4yGByDrcSMwOWGfQnUtkBTN1tYaeRY5a/a7ttUeBKdx9Bhee3lolr7QyUvjI8xjzjPs0vf5bc6HuSx1F2sW6rijanqJJgjPy+InXj5bs86d+0R/8AzKcf9oPz0JsKKX09fqOia6tOlcpnr5ZV/qM53JhQpGE7YXTZ+trPHje9am5go3UE4BJOAOU9dPTUJyfaU4/7QfnpL1NVxPT0EIqowZLhTZ/ar9VZAx8+3u6KaQaC57jD38Gs59KWQ/y1WaTwU6nuVY1JXgT08EMb+ySYIQuW/d45bVwNwo8H+t0//ir+etRcKIj/AEymP+9X89MEVZujLA6sj2uBlYYKsWII9CM6yvRfT6LhbTThfTn89TRWGMAqK65ktwC1Y550r6Zov0n09bKueuuDzzU6tIRVuAX7NwD6g6AB7NYbXB1T1BSihhEccdJLEvOFDo4bHPGSunE3RvT9QMS2mlkAOcMCefv1E/SVA9W9WJrilTIixvIlbICyrnAPPOMn7zoLqS3C02Koq4K+5LJC0Ryaxz7pkUN3P90nSAPXoXpxe1phX/VZx/5tJ+l+lrTUUlwWek3vT3GqhUmaTIRZDtH1uwUgaspsiKSq19yABI/0tj/HQtP0tDSmcwXK6xePK00m2rOGdu7du5xpjsyeh+n5CrNbYm2HcpaRyVPbIJbjU6dHWVSAKBBuOP7R/wDNpXdaSooaizxRXa6COrrRBJmpydpjkbjI45UakvssXTdpqrlVXe6CGmQuSZi54+AXS0BXKO7WPpHoujvtxdVkjgfxWkmbfIVZhgZPJ415R+lz6fK/rKvmhsSrb6OE4SoAYTSISCB341VvpI+kifqevqYaWWRbRAXMMbO2G5LZI8sk9jrmglLlCThjg/LjVbdlkYkxulXLIyzF5ZW5zv5P36PopHCEkovqoXJPzOo7fbKmvdfAQsDwQBzj56tUXRd1kpvcgG0+bjJ1VKUYl8McpdCj21wnuoHIOQSOB9momrZ5SQJCAfrNjOflpzJ0JfVTD08kgPx/kNLa3pe7UpYSwPGB3AU/+8aIzj9DcJLtAbV6jCwliQfrLyxOi6SvZOSCrDGOcn/loeOlkjXJjIA4AUYzr5oRK4zlVH7qjk/L89TUkV8ZHqj+jv8ASZFXVk9ivci1DSQt7LJMoZsgcrn5DXqN6KlltVKphhen8OMbGQEMMDGvy+pZamhq45KeaWnmjIZdre8D5HX6CfRlV/rx0VZq6equa1BjAqAKl1AdeMD4HGR89Sxy3RVONbL3TWG0UkvixWuiSTtvWBc/fjTFIoFHEMQXPI8Mflqrx2ofrE1GK65tB7GZSDWPlW8QKCDn0zprL0vRzxlHqbmVPfFfKM/jq1FTJrJTUkdqpfAhh2um/IjHvZJOfx0XNb6adkaSkp3ZPql4VO35ZHGhoLJR0cEUMRqFSIbV/rEhOPjk6H/QNIKgMJ6/bgkqayUg/wDFoAYrR04OPZYB5cRL+Wl1jiikpZ5TDEd9TMARGB7ocgeXw1KbPSn/AKyrAHkKqT/NrWmstJSR7ImqAg7KamQgfe2gaK1+grweR1VXqc5yKWn/AMmhrd0ncrVSx0tL1RXiCPOxWpoDjLEnnZ6k6IWHqFe92oD/APgH/wBTQlsrr9cJblF7dQI9FVGnOaNjuGxWDf2nGQ/4aNAazwXqC+W63nqKpaOrhnk8Q0kGQ0ezj6uOQ5+7RNx6XuNzoaiiqOpas0867XApIASM577fhqOotN7qLhQ1rXShEtF4mwCibDB1CkH9p8AdGyfp2GCWQ1tvcxozbfZXGcAnH19IZstqvYyf1mlOf71BD+Wgrab7V3O8Uj3xAKGSJVIoY8sHjD5PPrkfZouz1l0uVqoq0y0X9agjmCiJ/d3KDj63x1pDbbpTXK4VsVTRb60Rb0aJyAY1Kgj3vMH8NOgJK2xXCvNMZr226lnWojK0cYw6ggZ9RgnjXmr+k/1xX0kcXTAuZqUdRLP/AFdY8YzgccnXoy9XW82WgNY/6OlQSxRlQkgxvkVM9/LdnXhX6bblPd/pGvhnbc0U5i4JIAXjzJP2eWoSf0SicvnOUZB2ZcaMtVpmr5Igqcuew8/P/wB/LWqQh2Ix389dI+jm0vJWo+0f3QW7AeZ1VOVItxQt7Lp9H3RUcMEbyR4JG4Z9NdVorJDHtHhqQO3GsWyiWGBMDG0YGNOoUOVYNxrBJ29nXglFaMQ2iPg7VHrwNZrOlrbcY2SeBGB76KMqx4DMBk41NHKqDljnzwO+nCiUlasplV9FFjqeTGFUcBVGMDUCfRNZKR98UCfaM6vRqUwcBufhrfezxsMfhqwq4pHJeq/okt1zojFTlIK2P3oJgOFPo3wP/PXe/oRuTV30f0IkkaGro80k8YRcq6HBBOOdVOojzFtZAAPQaf8A0WUK0tbe5Yp9pqHjkaFh7u7aVLfbgauwOpUZPLgnHkdBprfKt1qK5q5jJJGIgPBUbUBLYz58nTKTxUgkk9rKqqlsmNTgDnSaWW6GqaOJrdwAOfEzznuB8tS1Ed0lpJIy1AN6FG/tOMgjjWxHODY2lqqeOWOtYBlDAmFeQRntrVlmJC+0SZHntUZ/DQ9JDW08ccTvS4VAo2q/YDHmdfI9c1XIhWlFOqqfEBbcSc8bfhjv8dAIlNPKGytXIB6bV/LS+he4VFqSeavdZmXcwWFMDJ7dtMJTNhhHNHvI4LREgf8AFrTZUogSJ6bbjB3I2f46YFHtlz6kultpK6IWQR1UKTKGE2QGUHHf461orf1PQ1tzqY5LIxuEqTMjCbCMsapx8woOhrDT9QWOy0FuMFsm9khWESePIu4LwDjZomC+3qW5VVCKG3iWnijlLGpfDBywGPc8th+/SA3uF56itnsQnp7O/tdVHSqY5JQFZ84JyO3H46YGbqRoyPAs2GGD+1m7f/rpTeIb9doaVBS2uNqarhqlPtMhyY23Y+p5jj7dM4q++cKbdb++Btq2/wDT0hgtkpepbLaKC3BLNOtJCkIkMsylgowDjafTREV7uxvMlsko6ATLSiq8QTuVKlymMbc5yPx0PbOobndqCKsgtlNskLrtarIIKsVOfc9VOh2W+frAl0Fto9oozStH7Ycn9oHBzs+BH26Yhlf6G73u0z0G23xCQo3ib5GIKurjjb/hx9uvDP0wUM1N9JXUS1CIsr1TSFVbIG73u/mOde3q/qO5Wyhqqyqs8Qgpo2kcpWhjtAycDZrxr/SCeRPpIrJpqcU71UUUuzfvHK4znA9NVzJ4+zn1HThnHGup9B7I6qOP7T6a5RRzEPkHI7ca7V9E9lFXHJcZzlIn2op8z6nWXLOkbMMbZ12lI9nGdwz5dtExOORuJI9NBNNhMZ5zrT9IClQucYHqdYltnRSpDpX8NSzdvU6mSqhxgYyNUOp64iVtk21ogeQPI/y0um+k20JUeGu4kDBYdgfTVii1tMsTT0zp7OrBtgGcai8Vo1Rmk+twNUik61pqqNjDKM4xjPc6Mqr2ClBGHBKt7x9eDqSmh/FZZqutVI8Fstn107+j2scXqaONA5lhPDPt7EH0OuG3v6SaakrTSwgVEinGF5wfPto/pnrq4xX+hmjgnpwsqgAx8Nk4I+OQdW45VJMx+TFcHFHqKlSp9uqag08SSvsGwz5GFBAOQvHfRj1NUqZmhpoxkDPtBPc4/u6S2u++1VNXCKCtM1O6rLkJ7hZdwB970OdH1UklQqKKaYBXVju2+Rz666COMTTVlcHCpRROB+8KkAH711rBJXLUzPJSqquFAHtAIGBz5alM5B5ifHrkY/jqNbgkkk0camRoiA4QglSRnH3HQgIp7lPSCWeWkQRxgc+OPM49PjpiJJsbjEgbzHidvtxpPdFmqqUxpSTtudCcbewcE+fw0WKx0GWpZ3JOTjb+eixnPaXqi8VktZFHaKQNSTGB91aeWCq2R+z7YYaGWq6gS+TXJbVQsktKlO0QryDlXZg2fD9GIxpTQydQUdfdKg2ujZK2VJQi1xGwiNUPOznO0HRE/Ut0o5qWKayx76uXwY9tapG7azc+7xwp1GwSG1f1XdrXQVNbU2OLwKaMyP4dcpIA74yg0xF6vAKn9DRA9/8ATl/y6qt6qbzdrLcbeLNEhq6eSEP7cpCllIBPu+Wc6Np73d0giWSxlnVFVmWtj5IHJ5GiwoJsVRfLNQvSvZY5VE80qMlegwrys4HK+W7Giper6+nrKSklsEvj1e/wgtbEQdgy3PyOllP1TXVM9XDHY5jJSuqSD2qIYJUMMevBGhLjUXaqu1mro7NIBQSTF1NVHlleMpgfbg6LChxfLxWVVluNPV2Wanp56aSN5jVRMEDKRnAOT31w/rPpSh+k2jN5rkejrYkSCCsD59wcKGXt/wD3XV+oLtcbhZq2mazVMCyREeKZ42C/YDnVHoLvT2zo+mkqYy6yyHCADJwcefy1i8rJNNcWdf8AjsGOWOUpq3Z54u3Sdw6VqFp7hFt3E7JF+q4HmNdp+i8FOnIlwQpkYk6i64gXq3pGoqKenkE1HKrIJFw31sH7xon6PYpKWwRRTKY3JJ2sMHVDnyhvslHDwyNLots7mJT25PB0lqJ4oIXqrjMkNPHyTI4A+7z1Y44EmB5zxgfDQ0nTVFPKHniWRuwDjI1Rs1Kkc8qut7bVRSLbemK+6Lj+0SDw0I+bcn7tIWhaqqx4/TCUkbHAYKWzn48Efd9uuzrZ1gCiHYijyx2GhZrNFWv4jkui+frqfapIlW7OfWLp+GOsR1jMeGwVzwNXzqLp1XsFSKTLVKxllAOC+OcA+We2ilt8cIyEAXHp3Pz0fRSeJC8ZbGDx8Bp4409kpdaOF9P2rqOqnjkjMVJGrHdTwMgIXyySp5/DV+6FpL5J1RSUd/iWrolJm3US/tSFydmBjJPHIxxnTJrTHTVUrIjIS3JTj7dN7LMbfWx1YyWgcNu9fX/38dXQ76MeSP4umdIs/UP6PuvUNTU2u7pFW1SSwYpCx2LCic4PHKnjTGo+kG1UkEk1RTXeKGMZZ3oJMAfPGlknWdjEpiaqkEmN232eQnHrwvb46RdUdTWqsslTTQTSO8pjXaIJc48Rd37voCdb1KjjcS4t11btpHsd4z/3fL+WgLP1fRQVN0kno7tGJ6nfGTQSncgjQA8DjkHQ7dZWGRmIuHme8Ug/8utP1zsAYqLpCGHcYbI/DT5sXEsEnX9lgVTKa+MMwQF6GUZYnAH1e5Ovm62tJzxXj50E3+XVH6h6otFTFblirkkVbhTySbVb3UVixY8dgQNNF6xsLDH6Vp/tJ/LRzDiVr9ZLsLj7CbHF4/gePxXDaV3be+3vn+OoLjPe6+S3sLLCjUlUlRn25TuADKV+r5htCtUX83WKvFlpjsp3pynt685dWBzt8tp+/U9X1HebfR1FXU2GIQQIZHMdcrEAeg286AGsd0vBIBsGc8ZFdH+Wo7d1JW3GkhqoLFOYZRuUmpiBxkj19RqJLzewFcWGMjgjFwTn/h0FY6q72m1x0ktl3mJpDlKtMBWdmA5HkCBpAG0lXdaS6XOqNhmaKs8JlC1UWQVTac8+fGi5+p6qkRDPYa1RJIkS4miOWY4A+t66H/WGujqIqd7DUiWYMyAVERyFxnz+I0Nea66VlLEkVhqg8dRBNkzxdkkVj+93wDoAZVF9rmikQ9N3E7lIwJIfT/X1zy4WOpltlPRxR/1qjmd1hYjJDHOPTI5H2a6K19qTn/oG4H/ai/z6WLVC4Vssy0FRTiMmOR5tvDg4I4J1nzw5RtG/wc3xycfZWrWzS0dzopgsdUrqzQcEoMZB+051lVMYViRgfDGj7rCKeaouMiohwFMgHJXPYn56Ah3yCRXAwH90jzXy1z2dJ6dsd0RyMgc6YRsFyzHB/E6T0wMSE50dRTCR2y3GhOyaV7JZPEkJXGBjyHbS693GKz0SlSpkf3cnjA0yraxIFYLyQPLVJrYP0vUSeMD4eCoG78dT5JdFkV7HdHLUVMSSFt0XfHf79M6cIrZZwpI7ao0896t9OIqV4SqgDc+ckfLQS3C7eIGlMbZH1VBH46kp+kEuK+zoF0ZYIhOpXHbQBmE0e6IYU+ffVeSsmr6U+OxQgYCg5xqazVR8KaIY3A+8D31Yp09lFRadF/sl+o4b+7T1kcIhtcEJZ2Kjf4jkjPqBt+8asp6ptADE3ekx3OZh+egbZe7PBQUtO90oi0UYUhpRnPnoTqW+WeTp+6LDX0LyNTSBVEikklSOPv1uXRwJ1ydDxep7O4OLvRH/AH6/npPa7/bDdr9I9xpVV6iMIWmUBgIUGRk8850yhutl2Kq11uIUAD9qnp89b+3Whh/pNvI8syR/noEZF9tJGP0pQ5/+4T89bC6Wt+1woT/vk/PSa8Pa5ZLZGhoG31keduw8AM3l8tMxDayOUoifkmgCg3DqO522NGntEAWQ7Q61mQDgnn3PhpXLfbrfKGvRKCnelKGBttQDljwDnb258tIb71bJXNJbo44m8B1aWWNm2bTkd++MN3Hx1iuul3orUsNsltFMikB2jbLkhsY2sO+Oc9sDvzqEsly/RXdHQKS43daSNJLTF4qIqk+2ryQMZ+rrMd6r6hZkFlcmNzE39bj7jvj1HOk1jvFyqbVDUSR0s7YIeXxfDyQcH3cHGpKS7Vwrp6dKOB2nX2pcVPG3he+31GrYyT2A1qrhcnrKGoWxSsIPEBAqo84ZccfaNEVF/q6WmlmksdUI413MRPExA+WdA1F4raKDxZqGLwwyoStRnlmAH7vqRqSrqbhPSTwewLukUp/bjH8NFjQeL9VKcGw1v/jRf5tCUl0rKV6zfYK90qKh5hteI4DY4OW+eoaS/VlbCKiK1yeCSQD4qZOCQePmNZHU7irko/0XVtUxxrKyKycKxIB+t6qdIYuv1VT1dP7A1kuUNVWBxAH2FdyjcTw/kBnQMUrREp8mGPQ6nvnUopLlZLlV2q5w0dDO4lYRK5bxUMahQrEkliNADdUQLUwrKgBOFlTawXJ4KnsfhrF5UEkmjo+JklJtSY5gfdGBnj11illKyOATuDaDpG2qSD7rHI+HrrdGMVUxzw+Pv1hOpB6I7lWl5Gj3BQBkknS6huETH3XRiOOGBxoy62uKtdDINyke8vk2NQr0jaZFBehhVj+8qgE6nB0SYRLLTSAPJMqc8ZI0tkq7TBIWerjOOMA5+7WX6TtdI7MAgP8AdZc6ykNspTmOJCT5pEAdaItMHCNWLEuKXCSX9HwMfDwS0uVUj4eZ1ZLHT0dNcoaq4VFPSwyMGJlcKDt525PcnQSxRU8U8saHDMM57nVysNXaoKMe01VGZZQCRIwIX4DOpxhyl+jn+RlUE0gtrzaJuqoJVrqBoUoJBvEqY3NKnGc98Lp6tfaZM4q6Bv8Aeof56XrV2Z1wJLcy/NMaV3oWh5bVGkVvfxK2PeUVD7oDE5x5cDW1HJLGRZ5O5trfbGdKrbQ2mrrru/s1BIoqFjU+GjD3Y1zj7SdEi12Fwc0lsPzjj19+hLC3agtv+zGn8tFBYULFaHBIt1Cc98QJz+GtX6es6xu5tdFtVSx/YL2H2ar36GtM3VLwihpfAhoVcoq8b2lIB488KdNT03aGz/0fBj4A9vv0Ajz9f731HWNJtoqaFnTfIabL7lXzKk+XGgZusbpUK9PVUlPE8LZwq+HIy4yMgeXOdJ5b7cJ6lkoI/AkVSMNlAgbn3j92h2opJHRpLnHUtUAsfBXBUjGV+X4cawzk9tfZTfo6Bb7teKCxzUhoo3jYs4kE4BXcc9sHPOmFP1Fd466GqFnXEcDQ7TP3BYNnOPUfjoKepggoaaCnyZS6pmTG4AHv7o5ONWmlqKQxAoQ6t2Oe/wBh1og3dWXwSYBWdTXSvpGgayhcsjBhUA4KsGHl8NGL1ncixJsMoGfKcflolGRhtjOD57ucakOxMMzhfiRxqzZZwQtt3UtxoIPAay1TgOzAq6j6zFsfjrEd/rY75PcjZ6kpJSpT+HvXcCrs2fl72NOVckkcfIjjUoYYONvbkHsdK5D4REF56mqLhRxLHaapZYaqnqAHK7T4cquQcHIzt0d0vcmvkVe1QG8cTsXyuMZ5wOTnGdOI7VV10E80ESrDToXlmmOyOMDkkn+QydCWGNoCjOyMZM8qpUY8uDz9+s/kv8dl3ixqbcQeop3pJZAgJX01G06TIASVdfLTy4QEktg4+Wk1XbjKdw+trn2dRWlaMeN4iK2fq+emlLNG42seDzqsTeJTsVJOPQ6zBc3h2Ix2+Wfhq2CRW5tFqqKcFSNm8E+Q7aWzW+LcGRR6HjjUKXnaGRnJI8xqQXATEMR5asjSJOVogqa2nt0QlqQTGrchRkkkED8caf0nUlk9ipkevpt6RqpDHzAGe40qo2o3WaruEsMcEPH7U4AJPBP8Bouna0V9RHDTPFPvTxA0a5ULnAJPlkg41qxvijlZ3GU+wy03qzfpC6sayhCt4ITc6gHCnJGfidRdQXO1StZ0gqKEl7lBvMbpwgJJzjy4GsyWCgZd00EZjHOSM61HSFqKEimgx6bRq1Noq4IsAqbNKy7jb3yRnJjOq/0ZHa6vpujmqIaOSaVpXYsqFhmVyB9gwNaDo+1FSDSU6nz9wAa0foi1Llnp6cjPfaNSti+MnNNbT1rBTpT0ywJbZJHRQAGZpVC5x5gK336+60goLf0reKunpo0qIqc+E68FXJ2qR9pGgpekLSo4gX/dgjWo6MtjoR4eUPkWJH4nSt+g+P8AZ5xlkjlnmlMwZ3G7c438+R55PGPl8dRQ1bUUxDszjZllVPjkZx8u+kk1S1HPMrIvhMBhw2TtPlpjU0k0UQbxFclN7HccrzjaR6/D5a5/+TGXQ9RJXosq1UYZHGI/DClCQeeT3+etbVepZahJJa6MqzK67v8Aq8DnODz2/HVf6Y+j7qnrKoC2GyVVWQwBmjj2xqPPdIxA/LV3uX9HXrCz0TVNXDBUMuWkpaSo3TcenAB+QOtCxzk7ompMslH1JSTbm9pR1DeGGXklvMfLz0we906xsFmRwRn3SGyPgPPVBsH0Z3+tWnFD09XCByCJJDsC/EbsHXWOj/6OdN4SS9RTSROTn2aik7f60n8l+/WjHHJJtUWrJXYqslVLd6lKOlUy1sh92JVIyPj6fE9tdUsPRq2xqee6NFLPIxwinckY+7k/hq09O9F2PpKhkp7PQw06ty0nLSP/AKznk9u2ca2uiFKemYhThj21qjh4q2J5OXRB1Pa3m6LuaQ8+5vIUfWVWyw+4HXKceGsbKchWB489d4t0itC0b8r32k5GD5fx1yTqXp8dO15ouRTzEvSN5MmeUz6r2+WDrB5+J6mvo3eBlW4MiqHzEAQ3YEHy0tdgcbT7w5zplTqTAYm528c+eltTTshYAYPlrmUdWO0KaweK21kH89KJKJ5GIQEj49tWCSnLZLbl57a3SiLr58/DTRCUStRUcnihBkkd8eQ08gokUe8oJx56Op6BYGJ8wNTMEiikkbOFHYdz8BqxNshpLZYPo6tEdxqLs08Ec9KIlgdJFDKxJ3YIPoAD9ujepegbTNOtbTxpR1kBREkRfcIzwrJ2PJ7jkeurZ0fYx0/0/DTyoPbJmNROc/vtzj7BgfZrF6iaWjuCqMysjFPmoyPxGu5iwRWNRkjhZsnPI5I4vdL/AFdsvFFbau3mKKqzmoZv2ecn6rdm7fA89tMjXDtn7vPXSLZHTXWmw0SyUszCQRyqGAz3GD8c6SXf6P6CoZ46dpqZyuQsbZUD7eR9+q/6eStp2OGWtSKnDVpsIBOAMAk5x89fSVSkbSA5A5+Gpqroi6UyOIKiGRAf3sqyj48HOpqLoq5V+9kalynG4lv441DhL0W/JH2A+Ojcndz8NbrLGV27snvjtoW9Wu5dOI81dSSJTAczxjdGvzI7fbjVTk66tUO5pq2EqTjBf04/lqL12SUk+jzPSVHiyoqIHTOwBE95ueBj18teuvoo+g+2xdP0d/6qoKurnqVEkVCytGKZMnG8cFmxzg8YPnpx9DP9Huk+jYr1BdXWuvhX3MrlKEH+73y/kW8vL113SKulLElvFXGWVuTjVmDw1/fNWYOhZSypb4oYqdIlo15jWJQigfADt8tQ3aVJ4FmVgc5/DU91p0FHJUUox4bB2T+7zyfu0MKUexVAGWXfuU+WCPzB1vrQ7E8BYzeIDnjGTplHWvgBu3w41DTwb0GFONZCHcQflj00kqHY3pKgb8MeMeuob3GDb9wwwRwc/PQ8cfunB5H46JqnMtiq27si7uPLB0NaEjW3TfshgsHPl6j0/nom72ih6ltj0NaMrkPG6n3onHZlPqPx5B0Bav2KBmB2597Pppy0YEniRvg/VKjz/wCeoSgpKmNSado5NcrfU2K7exVsZVpBmKYD9nOB6H19R3Gha1fczjtrs1bR094pjT1dOs0J+sjDlSOxHmCPXVIvfQkrpIbdVKeP7Kp4I/2h3+0a5GbwnF3Do62DzYtVPTObGdS+NpI78aLjcMeRoSq6W6ropChslRIP78JWRT9oOj7d0p1RUcfomWInznZUH4nWX4J30a3ng1fJCu53FachAcFuNXP6P+mpLvLFd62MrboGDU6MP7Z/75/wjy9T8tfdPfRG6XP9I9RVEdRs5SihyY/9pj3+Q11dAiRhVVU3ABQowAB5a6HjeE0+czn+T5iacIf9BZQG3Yxz7uG40sMampmRSfDCYGedNsoruch8dz/IaBhQ/wBYc44HPGuocwrnT8TUlZJTE+6Wyvw+GmFSDDW8n63BPoNByAU1dHMO24cDTK4ofa8jHrwO+lEb7sV1G8GXDMzqOCNHWciGyuWOGdyc4xnWjLiXceecHRFcpp4KeFAVDKXI+Z0LsH0SUTPM5VQcMOc9gNct+lT6BKLquE3Dp6kp6O7oSZY0VUSpBPp2Dj17Hz11m2oVVE3FHblmA5C6KmqTDmONQM8fLQ8cZqmLm0wunkMDeE53AjseQRqKSkNIyyxsXgJ4x3T4HRbwCoiKMNjg5R+65+J9NQwStGTBN7r4w6+XzGrCLZBUIomppUwI5sxygfvA8dvtzoWkp2Wlki53JiMn1xkfy0TVq1KAwxtEgYjyz54+YOfs0RGincRg7pME/DLaBWJqdQgAbAAONR1cIWcHjB5GdMvCMckqAAFW8ufx1LWx+JTpJjmI848gdA0wOnUIiuQGO7zHGNEyUmyCuUZEU0LEYHbjtqRYFZCBnkZ5HB1uXIo6qHzjQkZ88jUWSQJRxL4MYYcbecjRWwftFwBlQc+pGo7eoSFSM8fHIGjAdxVWIIHmBjQM+WUmMF2wcYHr9+tHG47Q/cZyPPWM+GzEgccZJ1kx8+6Rgjt31FgiLwlDFRy3kD56lSlAG8sPe47c6jyD7rJgg8kLjX0cW3tjbnlQO+oKKJEsqhNu0c59TzrdZCEYZxgeuTrDZxt2jPoD21A7qkL4XAHoe+rCB8VDQFnY8sTwNBI/hw1BCn3mUAffo4MVgQ8gN56XyOqxhSSS8y7Sx3eR0BQqutKxjZlG3H36NnYz0tFUAD30XPPnqauTxRtDgsRyFU6jt0LSWrwx3ikZefPnI/jp1sRC4L7cjufIaLr4A0ijKkGNQBjHmdfUsZeQtj6owM9s6kmdTUIGydsYY7fQEjQhktBiGllkC5eVtir8B/z1ItESDJNIAT+6BqWjCx06SZ5YEqWHbJ182CwZiTjsNNET/9k=");
}

* {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

body {
  margin: 0;
  background: var(--cream);
  color: var(--ink);
  font-family: "Manrope", Arial, Helvetica, sans-serif;
  -webkit-font-smoothing: antialiased;
}

a {
  color: inherit;
  text-decoration: none;
}

svg {
  width: 1.15em;
  fill: none;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 1.6;
}

.shell {
  width: min(1320px, calc(100% - 64px));
  margin-inline: auto;
}

.hero {
  min-height: 100vh;
  overflow: hidden;
  background:
    radial-gradient(
      circle at 75% 42%,
      rgba(246, 90, 43, 0.11),
      transparent 30%
    ),
    linear-gradient(rgba(23, 23, 20, 0.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(23, 23, 20, 0.035) 1px, transparent 1px),
    var(--cream);
  background-size:
    auto,
    68px 68px,
    68px 68px,
    auto;
}

.site-header {
  height: 104px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-bottom: 1px solid rgba(23, 23, 20, 0.13);
}

.brand {
  display: inline-flex;
  align-items: center;
  gap: 12px;
}

.brand-mark {
  width: 42px;
  height: 42px;
  flex: 0 0 42px;
  display: block;
  overflow: hidden;
  border: 1px solid rgba(23, 23, 20, 0.28);
  border-radius: 50%;
  background-color: #d8d2c7;
  background-image: var(--brand-photo);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  box-shadow: 0 4px 14px rgba(23, 23, 20, 0.12);
}

.brand-name {
  font-size: 15px;
  font-weight: 700;
  letter-spacing: -0.02em;
}

.main-nav {
  display: flex;
  gap: 38px;
  font-size: 14px;
}
.main-nav a {
  transition: color 0.25s ease;
}
.main-nav a:hover {
  color: var(--accent);
}

.header-contact {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding-bottom: 8px;
  border-bottom: 1px solid var(--ink);
  font-size: 14px;
  font-weight: 700;
}

.header-contact svg,
.button svg {
  transition: transform 0.25s ease;
}
.header-contact:hover svg,
.button:hover svg {
  transform: translateX(4px);
}

.hero-content {
  min-height: calc(100vh - 194px);
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(390px, 0.85fr);
  align-items: center;
  gap: 70px;
  padding-block: 72px 84px;
}

.hero-copy {
  position: relative;
  z-index: 2;
  animation: reveal 0.8s ease both;
}

.eyebrow {
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 0 0 28px;
  color: var(--muted);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

.eyebrow span {
  width: 26px;
  height: 2px;
  background: var(--accent);
}

h1,
h2,
h3,
p {
  margin-top: 0;
}

h1 {
  max-width: 890px;
  margin-bottom: 34px;
  font-size: clamp(56px, 6.6vw, 102px);
  font-weight: 600;
  letter-spacing: -0.075em;
  line-height: 0.91;
}

h1 em,
h2 em {
  color: var(--accent);
  font-family: "Lora", Georgia, "Times New Roman", serif;
  font-style: italic;
  font-weight: 500;
  letter-spacing: -0.045em;
}

.hero-accent {
  white-space: nowrap;
}

.hero-lead {
  max-width: 660px;
  margin-bottom: 38px;
  color: var(--muted);
  font-size: 18px;
  line-height: 1.65;
}

.hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.button {
  min-height: 58px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  padding: 0 26px;
  border-radius: 100px;
  font-size: 14px;
  font-weight: 700;
  transition:
    color 0.25s ease,
    background 0.25s ease,
    border-color 0.25s ease,
    transform 0.25s ease;
}

.button:hover {
  transform: translateY(-2px);
}
.button-primary {
  background: var(--accent);
  color: white;
}
.button-primary:hover {
  background: var(--accent-dark);
}
.button-secondary {
  border: 1px solid var(--line);
  background: rgba(255, 255, 255, 0.35);
}
.button-secondary:hover {
  border-color: var(--ink);
  background: var(--paper);
}

.hero-visual {
  aspect-ratio: 1 / 1.02;
  position: relative;
  display: grid;
  place-items: center;
  animation: reveal 0.8s 0.14s ease both;
}

.orbit {
  position: absolute;
  border: 1px solid rgba(23, 23, 20, 0.18);
  border-radius: 50%;
}
.orbit-one {
  width: 79%;
  height: 79%;
}
.orbit-two {
  width: 52%;
  height: 92%;
  transform: rotate(48deg);
}

.visual-card {
  position: absolute;
  z-index: 2;
  border: 1px solid rgba(23, 23, 20, 0.12);
  background: rgba(255, 253, 248, 0.91);
  box-shadow: 0 24px 70px rgba(52, 42, 28, 0.12);
  backdrop-filter: blur(12px);
}

.card-main {
  width: 72%;
  padding: 46px 40px;
  transform: rotate(-4deg);
}

.card-main p {
  margin-bottom: 42px;
  color: var(--muted);
  font-size: 12px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}
.card-main strong {
  display: block;
  margin-bottom: 10px;
  font-size: clamp(38px, 4vw, 62px);
  letter-spacing: -0.065em;
}
.card-main span {
  color: var(--muted);
  font-size: 15px;
}

.card-detail {
  right: 0;
  bottom: 18%;
  width: 210px;
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 18px;
  transform: rotate(4deg);
}

.card-detail p {
  margin: 0;
  font-size: 12px;
  line-height: 1.4;
}
.detail-dot {
  flex: 0 0 auto;
  width: 11px;
  height: 11px;
  border-radius: 50%;
  background: #64b67a;
  box-shadow: 0 0 0 5px rgba(100, 182, 122, 0.15);
}

.visual-code {
  position: absolute;
  left: 5%;
  top: 13%;
  z-index: 3;
  width: 102px;
  padding: 17px;
  border-radius: 12px;
  background: var(--dark);
  box-shadow: 0 16px 35px rgba(23, 23, 20, 0.22);
  transform: rotate(8deg);
}

.visual-code span {
  display: block;
  height: 3px;
  margin: 6px 0;
  border-radius: 4px;
  background: var(--accent);
}
.visual-code span:nth-child(2) {
  width: 58%;
  background: #f5d28c;
}
.visual-code span:nth-child(3) {
  width: 80%;
  background: #8eb9ce;
}

.hero-spark {
  position: absolute;
  color: var(--accent);
  font-size: 30px;
}
.spark-one {
  right: 4%;
  top: 9%;
}
.spark-two {
  left: 11%;
  bottom: 13%;
  font-size: 20px;
}

.trust-row {
  min-height: 100px;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  align-items: stretch;
  border-top: 1px solid rgba(23, 23, 20, 0.13);
  border-bottom: 1px solid rgba(23, 23, 20, 0.1);
  background: rgba(255, 253, 248, 0.58);
  box-shadow: inset 0 2px 0 rgba(246, 90, 43, 0.58);
}

.trust-row p {
  min-height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 11px;
  margin: 0;
  padding: 22px 26px;
  border-left: 1px solid rgba(23, 23, 20, 0.13);
  color: var(--ink);
  font-size: 13px;
  font-weight: 600;
  line-height: 1.45;
}
.trust-row p:first-child {
  border-left: 0;
}
.trust-row p::before {
  content: "✓";
  width: 22px;
  height: 22px;
  flex: 0 0 22px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: rgba(246, 90, 43, 0.12);
  box-shadow: inset 0 0 0 1px rgba(246, 90, 43, 0.2);
  color: var(--accent);
  font-size: 11px;
  font-weight: 800;
}
.trust-row p span {
  text-align: left;
}
.trust-row p strong {
  font-weight: 800;
  background: linear-gradient(
    to top,
    rgba(246, 90, 43, 0.17) 0 34%,
    transparent 34%
  );
  -webkit-box-decoration-break: clone;
  box-decoration-break: clone;
}

.section {
  padding-block: 150px;
}

.section-heading {
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(300px, 0.55fr);
  align-items: end;
  gap: 80px;
  margin-bottom: 72px;
}

.section-heading .eyebrow {
  grid-column: 1 / -1;
  margin-bottom: -42px;
}

.section-heading h2 {
  max-width: 840px;
  margin: 0;
  font-size: clamp(44px, 5vw, 74px);
  font-weight: 600;
  letter-spacing: -0.06em;
  line-height: 0.98;
}

.section-heading > p,
.projects-heading > p {
  margin: 0;
  color: var(--muted);
  font-size: 16px;
  line-height: 1.65;
}

.services-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  border-top: 1px solid var(--line);
  border-left: 1px solid var(--line);
}

.service-card {
  min-height: 380px;
  position: relative;
  padding: 44px;
  border-right: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
  background: rgba(255, 253, 248, 0.38);
  transition:
    background 0.3s ease,
    transform 0.3s ease;
}

.service-card:hover {
  z-index: 1;
  background: var(--paper);
  transform: translateY(-4px);
}
.service-number {
  display: block;
  margin-bottom: 68px;
  color: var(--accent);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.14em;
}
.service-card h3 {
  margin-bottom: 18px;
  font-size: 31px;
  letter-spacing: -0.045em;
}
.service-card > p {
  max-width: 500px;
  margin-bottom: 30px;
  color: var(--muted);
  font-size: 15px;
  line-height: 1.65;
}
.tags {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.tags span {
  padding: 8px 12px;
  border: 1px solid var(--line);
  border-radius: 100px;
  color: var(--muted);
  font-size: 11px;
}

.audience-strip {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 25px;
  padding: 42px 20px 0;
  color: var(--muted);
  font-size: 12px;
}
.audience-strip p {
  margin: 0;
}
.audience-strip span {
  color: var(--accent);
}

.projects-section {
  background: var(--paper);
}
.projects-heading {
  align-items: end;
}
.projects-heading .eyebrow {
  grid-column: auto;
  margin-bottom: 28px;
}
.projects-heading > div h2 {
  margin: 0;
}
.projects-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 72px 28px;
}
.project-card {
  display: block;
}

.project-preview {
  aspect-ratio: 1.38 / 1;
  overflow: hidden;
  position: relative;
  padding: 30px 30px 0;
  transition: transform 0.45s cubic-bezier(0.2, 0.7, 0.2, 1);
}

.project-card:hover .project-preview {
  transform: translateY(-7px);
}
.project-orange {
  background: #f47b45;
}
.project-sand {
  background: #c9b79d;
}
.project-blue {
  background: #8fb5c8;
}
.project-ink {
  background: #252729;
}

.browser-bar {
  height: 30px;
  display: flex;
  align-items: center;
  gap: 5px;
  padding: 0 13px;
  border-radius: 11px 11px 0 0;
  background: #ece9e2;
}
.browser-bar span {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #b8b4aa;
}
.project-screen {
  height: calc(100% - 30px);
  position: relative;
  padding: 38px;
  background: #f7f4ed;
}
.project-screen::after {
  content: "";
  position: absolute;
  right: -8%;
  bottom: -29%;
  width: 56%;
  aspect-ratio: 1;
  border: 1px solid rgba(23, 23, 20, 0.15);
  border-radius: 50%;
}
.screen-index {
  display: block;
  margin-bottom: 20px;
  color: var(--accent);
  font-size: 11px;
  letter-spacing: 0.15em;
}
.project-screen p {
  max-width: 280px;
  margin-bottom: 9px;
  color: var(--muted);
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.1em;
}
.project-screen strong {
  display: block;
  max-width: 75%;
  font-size: clamp(27px, 3vw, 46px);
  letter-spacing: -0.055em;
  line-height: 0.98;
}
.screen-line {
  position: absolute;
  left: 38px;
  bottom: 35px;
  width: 82px;
  height: 7px;
  background: var(--accent);
}

.project-info {
  padding-top: 23px;
}
.project-info > p:first-child {
  margin-bottom: 12px;
  color: var(--muted);
  font-size: 11px;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}
.project-title-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 15px;
}
.project-title-row h3 {
  margin: 0;
  font-size: 28px;
  letter-spacing: -0.04em;
}
.project-arrow {
  width: 44px;
  height: 44px;
  display: grid;
  place-items: center;
  border: 1px solid var(--line);
  border-radius: 50%;
  transition:
    color 0.25s ease,
    background 0.25s ease,
    border-color 0.25s ease;
}
.project-card:hover .project-arrow {
  color: white;
  background: var(--accent);
  border-color: var(--accent);
}
.project-description {
  max-width: 560px;
  margin: 15px 0 0;
  color: var(--muted);
  font-size: 14px;
  line-height: 1.65;
}

.contact-card {
  min-height: 480px;
  overflow: hidden;
  position: relative;
  display: grid;
  grid-template-columns: 1.2fr 0.55fr;
  align-items: end;
  gap: 80px;
  margin-top: 150px;
  padding: 70px;
  background: var(--accent);
  color: white;
}

.contact-card > div {
  position: relative;
  z-index: 2;
}
.eyebrow.light {
  color: rgba(255, 255, 255, 0.72);
}
.eyebrow.light span {
  background: white;
}
.contact-card h2 {
  max-width: 780px;
  margin: 0;
  font-size: clamp(48px, 5.5vw, 80px);
  font-weight: 600;
  letter-spacing: -0.065em;
  line-height: 0.98;
}
.contact-card h2 em {
  color: white;
}
.contact-content p {
  margin-bottom: 30px;
  color: rgba(255, 255, 255, 0.76);
  font-size: 15px;
  line-height: 1.65;
}
.button-light {
  width: fit-content;
  background: white;
  color: var(--ink);
}
.button-light:hover {
  background: var(--ink);
  color: white;
}
.contact-shape {
  position: absolute;
  border: 1px solid rgba(255, 255, 255, 0.22);
  border-radius: 50%;
}
.shape-one {
  right: -140px;
  top: -220px;
  width: 520px;
  height: 520px;
}
.shape-two {
  right: 110px;
  top: -100px;
  width: 380px;
  height: 620px;
  transform: rotate(45deg);
}

.site-footer {
  min-height: 150px;
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  align-items: center;
  gap: 30px;
}
.site-footer > p {
  margin: 0;
  color: var(--muted);
  font-size: 12px;
  text-align: center;
}
.socials {
  display: flex;
  justify-content: flex-end;
  gap: 24px;
  font-size: 12px;
  font-weight: 700;
}
.socials a:hover {
  color: var(--accent);
}

@keyframes reveal {
  from {
    opacity: 0;
    transform: translateY(18px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@media (max-width: 1080px) {
  .hero-content {
    grid-template-columns: minmax(0, 1.2fr) minmax(320px, 0.8fr);
    gap: 32px;
  }
  .hero-visual {
    transform: scale(0.9);
  }
  .section-heading {
    gap: 50px;
  }
  .contact-card {
    grid-template-columns: 1fr;
    gap: 50px;
  }
  .contact-content {
    max-width: 520px;
  }
}

@media (max-width: 820px) {
  .shell {
    width: min(100% - 40px, 680px);
  }
  .site-header {
    height: 86px;
  }
  .main-nav {
    display: none;
  }
  .header-contact {
    font-size: 12px;
  }
  .hero-content {
    min-height: auto;
    grid-template-columns: 1fr;
    padding-block: 70px 48px;
  }
  .hero-copy {
    text-align: left;
  }
  h1 {
    font-size: clamp(52px, 12vw, 82px);
  }
  .hero-lead {
    max-width: 600px;
  }
  .hero-visual {
    width: min(100%, 540px);
    margin: -10px auto 0;
  }
  .trust-row {
    grid-template-columns: repeat(2, 1fr);
    padding-block: 10px;
  }
  .trust-row p {
    min-height: 62px;
    justify-content: flex-start;
    padding: 14px 20px;
  }
  .trust-row p:nth-child(-n + 2) {
    border-bottom: 1px solid rgba(23, 23, 20, 0.1);
  }
  .trust-row p:nth-child(3) {
    border-left: 0;
  }
  .section {
    padding-block: 100px;
  }
  .section-heading,
  .projects-heading {
    grid-template-columns: 1fr;
    gap: 30px;
  }
  .section-heading .eyebrow {
    grid-column: auto;
    margin-bottom: 0;
  }
  .services-grid,
  .projects-grid {
    grid-template-columns: 1fr;
  }
  .projects-grid {
    gap: 58px;
  }
  .audience-strip {
    flex-wrap: wrap;
    gap: 12px 18px;
  }
  .contact-card {
    min-height: 560px;
    margin-top: 100px;
    padding: 50px 36px;
  }
  .site-footer {
    grid-template-columns: 1fr;
    justify-items: center;
    padding-block: 42px;
  }
  .socials {
    justify-content: center;
  }
}

@media (max-width: 520px) {
  .shell {
    width: min(100% - 28px, 500px);
  }
  .brand-name {
    display: none;
  }
  .header-contact {
    padding: 12px 16px;
    border: 1px solid var(--line);
    border-radius: 100px;
  }
  .header-contact svg {
    display: none;
  }
  .hero-content {
    padding-top: 54px;
  }
  .eyebrow {
    margin-bottom: 22px;
    font-size: 10px;
  }
  h1 {
    margin-bottom: 26px;
    font-size: clamp(43px, 13.5vw, 68px);
    line-height: 0.94;
  }
  .hero-lead {
    font-size: 16px;
  }
  .hero-actions {
    display: grid;
  }
  .button {
    width: 100%;
  }
  .hero-visual {
    margin-top: 6px;
  }
  .card-main {
    width: 78%;
    padding: 30px 24px;
  }
  .card-main p {
    margin-bottom: 28px;
  }
  .card-main strong {
    font-size: 34px;
  }
  .card-detail {
    right: 0;
    bottom: 11%;
    width: 175px;
  }
  .visual-code {
    left: 0;
    top: 9%;
  }
  .trust-row {
    grid-template-columns: 1fr;
    padding-block: 6px;
  }
  .trust-row p {
    min-height: 54px;
    padding: 14px;
    border-left: 0;
    border-bottom: 1px solid rgba(23, 23, 20, 0.1);
  }
  .trust-row p:last-child {
    border-bottom: 0;
  }
  .section {
    padding-block: 82px;
  }
  .section-heading {
    margin-bottom: 48px;
  }
  .section-heading h2 {
    font-size: 42px;
  }
  .service-card {
    min-height: auto;
    padding: 32px 24px;
  }
  .service-number {
    margin-bottom: 42px;
  }
  .service-card h3 {
    font-size: 27px;
  }
  .audience-strip {
    display: none;
  }
  .project-preview {
    padding: 16px 16px 0;
  }
  .project-screen {
    padding: 25px;
  }
  .project-screen strong {
    font-size: 28px;
  }
  .screen-line {
    left: 25px;
    bottom: 25px;
  }
  .contact-card {
    width: calc(100% + 28px);
    left: -14px;
    margin-top: 82px;
    padding: 42px 28px;
  }
  .contact-card h2 {
    font-size: 45px;
  }
  .socials {
    flex-wrap: wrap;
  }
}

@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }
  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
}
