@font-face {
  font-family: PlasmaPix;
  src: url(../assets/fonts/PlasmaPix-Regular.ttf) format('truetype');
  font-weight: 400;
  font-display: swap;
}
@font-face {
  font-family: PlasmaPix;
  src: url(../assets/fonts/PlasmaPix-Bold.ttf) format('truetype');
  font-weight: 700;
  font-display: swap;
}

:root {
  --ink: #0b0b0b;
  --paper: #f3f2ee;
  --pg: #ff6a1f;
  --sans: 'Archivo', 'Arial Narrow', Arial, sans-serif;
  --mono: 'Martian Mono', Consolas, 'Courier New', monospace;
  --pix: PlasmaPix, Consolas, monospace;
  --gut: clamp(6px, 1.6vw, 22px);
  --pad: clamp(14px, 4vw, 64px);
  --rul: 0px;
  --tb: 58px;
  --hatch: repeating-linear-gradient(-45deg, var(--ink) 0 1px, transparent 1px 8px);
  --dots: radial-gradient(circle, var(--ink) 0 1.2px, transparent 1.6px) 0 0 / 7px 7px;
  --exo-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='1232 926 207 215'%3E%3Cg fill='black' stroke-linejoin='round'%3E%3Cpath d='M1419.66 1038.58C1412.54 1033.96 1405.27 1028.84 1408.09 1019.54C1408.77 1017.26 1408.68 1005.73 1407.78 1003.54C1406.97 1001.56 1401.35 994.814 1399.55 993.657C1387 985.566 1376.34 974.567 1368.61 961.775C1368.65 962.359 1368.29 963.014 1367.67 963.035C1361.42 957.453 1352.25 957.013 1343.87 956.849C1334.49 956.675 1325.11 956.501 1315.73 956.316C1306.74 956.153 1297.71 955.979 1288.79 957.115C1274.47 958.938 1260.8 964.069 1247.28 969.159C1241.16 971.464 1241.49 971.248 1239.84 973.973C1239.86 974.853 1239.87 975.734 1239.87 976.615C1240.49 977.977 1241.11 979.349 1241.38 980.794C1243.23 983.712 1243.55 988.178 1243.13 991.854C1241.17 1009.05 1235.16 1026.27 1238.31 1043.28C1241.69 1061.54 1239.18 1083.68 1253.13 1095.94C1263.45 1105 1273.79 1118.12 1286.84 1122.41C1296.7 1125.66 1304.01 1130.91 1315.41 1136.36C1322.6 1139.8 1338.79 1140.06 1348.47 1139.01C1357.26 1138.06 1355.45 1129.27 1358.08 1124.06C1361.59 1117.07 1355.79 1105.92 1367.35 1112.1C1374.22 1115.78 1379.19 1119.96 1390.88 1119.06C1398.93 1118.07 1405.46 1112.74 1408.14 1108.59C1408.12 1108.51 1413.7 1101.37 1413.7 1101.37L1415.57 1099.41C1415.57 1099.41 1416.74 1096.93 1417.39 1095.72C1418.1 1093.86 1419.02 1092.11 1420.11 1090.44C1420.73 1089.49 1421.39 1088.55 1422.04 1087.62C1421.67 1087.08 1421.4 1086.61 1421.55 1086.41C1425.71 1081.08 1427.87 1080.53 1430.93 1074.51C1433.51 1069.43 1436.1 1061.68 1436.39 1056C1437.01 1044.27 1429.51 1044.96 1419.66 1038.57V1038.58ZM1304.87 963.311C1304.22 963.311 1304.22 962.287 1304.87 962.287C1305.53 962.287 1305.53 963.311 1304.87 963.311Z'/%3E%3Cpath d='M1419.98 1035.38C1412.86 1030.77 1405.59 1025.64 1408.41 1016.35C1409.09 1014.07 1409 1002.54 1408.1 1000.35C1407.29 998.372 1401.67 991.623 1399.88 990.465C1387.32 982.375 1376.66 971.375 1368.94 958.584C1368.97 959.168 1368.61 959.823 1368 959.844C1361.74 954.262 1352.57 953.822 1344.19 953.658C1334.81 953.484 1325.43 953.31 1316.05 953.125C1307.06 952.961 1298.04 952.787 1289.12 953.924C1274.79 955.747 1261.13 960.878 1247.61 965.968C1241.48 968.272 1241.81 968.057 1240.16 970.781C1240.18 971.662 1240.19 972.543 1240.19 973.424C1240.82 974.786 1241.43 976.158 1241.7 977.602C1243.55 980.521 1243.87 984.986 1243.45 988.663C1241.49 1005.86 1235.48 1023.07 1238.64 1040.09C1242.02 1058.35 1239.51 1080.49 1253.46 1092.75C1263.77 1101.81 1274.11 1114.93 1287.16 1119.22C1297.02 1122.47 1304.33 1127.72 1315.73 1133.17C1322.92 1136.61 1339.11 1136.87 1348.79 1135.82C1357.58 1134.87 1355.78 1126.08 1358.4 1120.87C1361.91 1113.87 1356.12 1102.73 1367.67 1108.91C1374.54 1112.58 1379.52 1116.77 1391.2 1115.87C1399.25 1114.88 1405.79 1109.55 1408.46 1105.4C1408.44 1105.32 1411.62 1100.8 1414.02 1098.17C1414.73 1097.39 1415.26 1097.07 1415.9 1096.22C1416.86 1094.93 1417.06 1093.74 1417.72 1092.53C1418.42 1090.67 1419.35 1088.92 1420.43 1087.25C1421.06 1086.29 1421.71 1085.36 1422.37 1084.43C1421.99 1083.89 1421.72 1083.42 1421.88 1083.22C1426.03 1077.89 1428.2 1077.34 1431.26 1071.32C1433.84 1066.24 1436.42 1058.49 1436.72 1052.81C1437.33 1041.08 1429.83 1041.76 1419.98 1035.37V1035.38ZM1305.2 960.12C1304.54 960.12 1304.54 959.096 1305.2 959.096C1305.85 959.096 1305.85 960.12 1305.2 960.12Z'/%3E%3Cpath d='M1416.26 1036.32C1409.31 1031.81 1402.21 1026.81 1404.96 1017.73C1405.63 1015.51 1405.54 1004.25 1404.66 1002.11C1403.87 1000.18 1398.38 993.59 1396.63 992.46C1384.37 984.56 1373.96 973.82 1366.42 961.33C1366.45 961.9 1366.1 962.54 1365.5 962.56C1359.39 957.11 1350.44 956.68 1342.26 956.52C1333.1 956.35 1323.94 956.18 1314.78 956C1306 955.84 1297.19 955.67 1288.48 956.78C1274.49 958.56 1261.15 963.57 1247.95 968.54C1241.97 970.79 1242.29 970.58 1240.68 973.24C1240.7 974.1 1240.71 974.96 1240.71 975.82C1241.32 977.15 1241.92 978.49 1242.18 979.9C1243.99 982.75 1244.3 987.11 1243.89 990.7C1241.98 1007.49 1236.11 1024.3 1239.19 1040.91C1242.49 1058.74 1240.04 1080.36 1253.66 1092.33C1263.73 1101.18 1273.83 1113.99 1286.57 1118.18C1296.2 1121.35 1303.34 1126.48 1314.47 1131.8C1321.49 1135.16 1337.3 1135.41 1346.75 1134.39C1355.33 1133.46 1353.57 1124.88 1356.13 1119.79C1359.56 1112.96 1353.9 1102.08 1365.18 1108.11C1371.89 1111.7 1376.75 1115.79 1388.16 1114.91C1396.02 1113.94 1402.4 1108.74 1405.01 1104.68C1404.99 1104.61 1408.1 1100.2 1410.44 1097.63C1411.14 1096.87 1412.27 1095.72 1412.27 1095.72C1412.27 1095.72 1413.41 1093.3 1414.05 1092.12C1414.74 1090.3 1415.64 1088.59 1416.7 1086.96C1417.31 1086.03 1417.95 1085.12 1418.59 1084.21C1418.22 1083.68 1417.96 1083.22 1418.11 1083.03C1422.17 1077.82 1424.28 1077.29 1427.27 1071.41C1429.79 1066.45 1432.31 1058.88 1432.6 1053.33C1433.2 1041.88 1425.88 1042.55 1416.26 1036.31V1036.32ZM1304.18 962.83C1303.54 962.83 1303.54 961.83 1304.18 961.83C1304.82 961.83 1304.82 962.83 1304.18 962.83Z'/%3E%3Cpath d='M1369.57 1086.75C1370.75 1086.08 1372.18 1086.11 1373.51 1086.29L1392.85 1092.93C1388.08 1099.08 1378.51 1100.87 1371.84 1096.84C1370.05 1095.76 1368.4 1094.25 1367.77 1092.25C1367.13 1090.25 1367.75 1087.77 1369.57 1086.75Z'/%3E%3Cpath d='M1388.15 1092.57C1393.89 1093.11 1407.44 1083.51 1408.15 1083.34C1410.12 1082.87 1411.92 1083.08 1411.92 1083.08C1413.13 1083.21 1414.11 1083.52 1414.78 1083.78' fill='none' stroke='black' stroke-width='3' stroke-linecap='round'/%3E%3Cpath d='M1396.36 1018.79C1397.83 1020.17 1399.58 1021.11 1401.41 1021.85C1403.09 1021.85 1404.78 1021.91 1406.46 1022.02C1407.29 1011.17 1406.56 999.38 1399.83 991.31C1399.08 990.41 1398.18 989.53 1397.06 989.37C1394.36 989 1392.99 992.68 1392.55 995.55C1391.32 1003.67 1390.57 1013.35 1396.35 1018.78L1396.36 1018.79Z'/%3E%3Cpath d='M1376.96 947.63C1377.17 946.14 1377.04 944.59 1375.81 943.9C1374.78 943.33 1373.5 943.71 1372.39 944.11C1372.32 944.13 1372.25 944.16 1372.19 944.18C1370.09 944.13 1367.46 944.65 1364.59 945.38C1360.63 946.38 1356.86 948.43 1354.7 951.61C1353.32 953.64 1352.71 956.33 1354.02 958.4C1354.62 959.34 1355.56 960.07 1356.51 960.74C1358.52 962.18 1360.63 963.5 1362.82 964.71C1363.41 965.03 1364.04 965.36 1364.73 965.4C1364.83 965.4 1364.92 965.39 1365.02 965.38C1366.67 967.37 1368.78 968.68 1370.94 967.61C1373.44 966.37 1374.77 960.02 1375.65 954.87C1376.09 953.8 1376.46 952.71 1376.71 951.59C1377.07 949.96 1377.14 948.66 1376.97 947.62L1376.96 947.63Z'/%3E%3Cpath d='M1306.26 961.32C1306.24 961.26 1306.21 961.2 1306.19 961.14C1305.83 960.8 1305.46 960.45 1305.1 960.11C1305.08 960.1 1305.07 960.09 1305.06 960.07C1304.8 960.01 1304.54 959.98 1304.31 959.95C1304.28 959.95 1304.26 959.93 1304.24 959.93C1304.22 959.93 1304.21 959.92 1304.19 959.91C1304.17 959.91 1304.15 959.9 1304.13 959.89C1303.87 959.75 1303.78 959.31 1304 959.1C1304 959.09 1304.01 959.08 1304.02 959.07C1308.13 950.29 1306.06 938.41 1299.2 931.48C1293.04 925.24 1281.02 930.83 1275.9 936.18C1272.72 939.5 1270.87 942.64 1269.86 945.87L1269.83 945.9C1269.76 946.18 1269.66 946.45 1269.54 946.71C1269.46 946.94 1269.35 947.17 1269.23 947.38C1269.13 947.66 1269.01 947.92 1268.86 948.17C1268.83 948.24 1268.81 948.32 1268.77 948.39C1268.65 948.69 1268.5 948.99 1268.31 949.25C1267.47 951.46 1266.3 953.52 1264.98 955.41C1264.93 955.48 1264.88 955.55 1264.84 955.63C1261.88 960.17 1259.72 967.54 1259.7 972.83C1259.7 975.28 1259.49 975.06 1259.25 976.95C1258.93 979.45 1257.07 979.48 1257.85 984.2C1258.24 986.56 1260.51 987.42 1262.54 987.1C1263 987.03 1263.48 986.86 1263.95 986.64C1273.9 985.55 1280.54 975.21 1289.73 971.02C1295.37 968.45 1302.43 967.83 1306.24 962.91C1306.39 962.4 1306.42 961.85 1306.28 961.33L1306.26 961.32Z'/%3E%3Cpath d='M1414.08 1050.18C1413.41 1050.71 1412.76 1051.31 1412.35 1052.06C1410.51 1050.95 1408.67 1049.84 1406.84 1048.72C1406.35 1048.42 1404.31 1046.8 1403.8 1047.04C1403.18 1047.34 1403.66 1049.35 1403.72 1049.94C1404.17 1054.47 1405.23 1059.02 1407.59 1062.95C1410.46 1067.72 1415.54 1071.42 1421.09 1071.42C1421.07 1071.39 1421.06 1071.36 1421.04 1071.33C1421.56 1071.38 1422.08 1071.35 1422.57 1071.18C1423.34 1070.91 1423.96 1070.34 1424.54 1069.76C1428.89 1065.34 1431.76 1059.49 1432.61 1053.33C1434.27 1041.34 1419.73 1045.75 1414.09 1050.18H1414.08Z'/%3E%3Cpath d='M1368.22 992.63C1366.4 991.54 1364.33 990.96 1362.34 990.21C1354.46 987.25 1347.89 981.67 1341.62 976.07C1336.31 971.33 1330.08 966.15 1323.01 967.03C1318.48 967.6 1314.59 970.67 1311.83 974.32C1309.07 977.97 1307.25 982.21 1305.13 986.26C1299.02 997.92 1290.29 1008.2 1279.76 1016.12C1275.44 1019.37 1270.8 1022.25 1267 1026.1C1263.2 1029.95 1260.28 1035.04 1260.45 1040.45C1260.53 1042.96 1261.28 1045.44 1261.13 1047.96C1261.04 1049.51 1260.61 1051.01 1260.28 1052.52C1259.25 1057.29 1259.25 1062.28 1260.28 1067.05C1260.81 1069.47 1261.61 1071.87 1263.04 1073.89C1266.86 1079.32 1274.08 1080.92 1280.61 1082.09C1277.8 1085.59 1279.17 1090.71 1280.66 1094.94C1282.39 1099.81 1284.22 1104.86 1287.87 1108.52C1294.84 1115.5 1306.02 1115.34 1315.85 1114.53C1321.5 1114.06 1327.16 1113.53 1332.68 1112.29C1335.55 1111.65 1338.44 1110.78 1340.79 1109.03C1343.46 1107.05 1345.22 1104.09 1346.74 1101.13C1349.9 1094.97 1352.34 1088.27 1352.36 1081.35C1352.38 1074.43 1349.68 1067.25 1344.15 1063.09C1341.56 1061.14 1338.41 1059.87 1336.27 1057.43C1334.13 1054.99 1333.54 1050.66 1336.22 1048.83C1337.74 1047.79 1339.76 1047.92 1341.58 1048.21C1347.51 1049.16 1353.71 1051.35 1359.32 1049.21C1363.32 1047.69 1366.22 1044.21 1368.62 1040.67C1370.66 1037.66 1372.53 1034.35 1372.8 1030.72C1373.07 1027.09 1371.33 1023.09 1367.95 1021.75C1364.62 1020.43 1360.93 1021.94 1357.46 1022.79C1353.99 1023.64 1349.45 1023.35 1347.94 1020.11C1347.21 1018.54 1360.97 1017.17 1362.14 1017.28C1365.83 1017.63 1370.4 1020.46 1373.24 1016.9C1378.42 1010.41 1374.91 996.66 1368.18 992.63H1368.22Z'/%3E%3Cpath d='M1415.95 1036.44C1409 1031.93 1401.9 1026.93 1404.65 1017.85C1405.32 1015.63 1405.23 1004.37 1404.35 1002.23C1403.56 1000.3 1398.07 993.707 1396.32 992.577C1384.06 984.677 1373.65 973.937 1366.11 961.447C1366.14 962.017 1365.79 962.656 1365.19 962.676C1359.08 957.226 1350.13 956.797 1341.95 956.637C1332.79 956.467 1323.63 956.296 1314.47 956.116C1305.69 955.956 1296.88 955.787 1288.17 956.897C1274.18 958.677 1260.84 963.686 1247.64 968.656C1241.66 970.906 1241.98 970.696 1240.37 973.356C1240.39 974.216 1240.4 975.076 1240.4 975.937C1241.01 977.267 1241.61 978.607 1241.87 980.017C1243.68 982.867 1243.99 987.227 1243.58 990.817C1241.67 1007.61 1235.8 1024.42 1238.88 1041.03C1242.18 1058.86 1239.73 1080.48 1253.35 1092.45C1263.42 1101.3 1273.52 1114.11 1286.26 1118.3C1295.89 1121.47 1303.03 1126.6 1314.16 1131.92C1321.18 1135.28 1336.99 1135.53 1346.44 1134.51C1355.02 1133.58 1353.26 1125 1355.82 1119.91C1359.25 1113.08 1353.59 1102.2 1364.87 1108.23C1371.58 1111.82 1376.44 1115.91 1387.85 1115.03C1395.71 1114.06 1402.09 1108.86 1404.7 1104.8C1404.68 1104.73 1410 1098 1410 1098L1412 1095C1412 1095 1413.1 1093.42 1413.74 1092.24C1414.43 1090.42 1415.33 1088.71 1416.39 1087.08C1417 1086.15 1418.44 1085.62 1418.28 1084.33C1418.21 1083.83 1417.59 1082.01 1419 1080C1423.06 1074.79 1423.97 1077.41 1426.96 1071.53C1429.48 1066.57 1432 1059 1432.29 1053.45C1432.89 1042 1425.57 1042.67 1415.95 1036.43V1036.44ZM1303.87 962.947C1303.23 962.947 1303.23 961.947 1303.87 961.947C1304.51 961.947 1304.51 962.947 1303.87 962.947Z' stroke='black' stroke-width='8'/%3E%3C/g%3E%3C/svg%3E");
}

*,
*::before,
*::after {
  box-sizing: border-box;
}
html {
  background: var(--paper);
  color: var(--ink);
  -webkit-text-size-adjust: 100%;
  scroll-behavior: smooth;
  scroll-padding-top: calc(var(--tb) + 18px);
}
body {
  margin: 0;
  background: var(--paper);
  color: var(--ink);
  font: 400 17px/1.5 var(--sans);
  font-variation-settings: 'wdth' 96;
  overflow-x: hidden;
}
img,
canvas {
  display: block;
  max-width: 100%;
}
a {
  color: inherit;
}
h1,
h2,
h3,
p,
ol,
ul,
figure {
  margin: 0;
  padding: 0;
}
ol,
ul {
  list-style: none;
}
button {
  font: inherit;
}
::selection {
  background: var(--ink);
  color: var(--paper);
}
:focus-visible {
  outline: 2px dashed var(--ink);
  outline-offset: 3px;
}

.wm {
  font: 400 24px/1 var(--pix);
  letter-spacing: 0.06em;
  text-shadow: 0.04em 0 0 currentColor;
  white-space: nowrap;
}

.sheet {
  position: relative;
  margin: var(--gut);
  min-height: calc(100vh - 2 * var(--gut));
  border: 1.5px solid var(--ink);
}
.ruler {
  display: none;
}

.ox {
  position: relative;
  z-index: 1;
}
.ox::before,
.ox::after {
  content: '';
  position: absolute;
  pointer-events: none;
  z-index: 2;
}
.ox::before {
  inset: 0 -9px;
  border-top: 1px solid var(--ink);
  border-bottom: 1px solid var(--ink);
}
.ox::after {
  inset: -9px 0;
  border-left: 1px solid var(--ink);
  border-right: 1px solid var(--ink);
}

.ht {
  position: absolute;
  pointer-events: none;
}
.ht canvas {
  display: block;
  width: 100%;
  height: 100%;
  max-width: none;
}
.ht-shadow {
  left: 18px;
  top: 18px;
  width: 100%;
  height: 100%;
  transition: transform 0.35s cubic-bezier(0.3, 0.7, 0.2, 1);
}

.tb {
  position: sticky;
  top: 0;
  z-index: 20;
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: stretch;
  height: var(--tb);
  background: var(--paper);
  border-bottom: 1.5px solid var(--ink);
  margin-left: var(--rul);
}
.tb > * {
  display: flex;
  align-items: center;
  text-decoration: none;
}
.tb-brand {
  gap: 10px;
  padding: 0 20px 0 14px;
  border-right: 1px solid var(--ink);
}
.tb-brand img {
  width: 30px;
  height: 30px;
}
.tb-nav {
  overflow: hidden;
}
.tb-nav a {
  display: flex;
  align-items: center;
  height: 100%;
  padding: 0 clamp(12px, 1.6vw, 26px);
  font: 500 12px/1 var(--mono);
  font-variation-settings: 'wdth' 85;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  text-decoration: none;
  border-right: 1px solid var(--ink);
  transition: background 0.15s, color 0.15s;
}
.tb-nav a:hover,
.tb-nav a[aria-current='true'] {
  background: var(--ink);
  color: var(--paper);
}
.tb-exo {
  gap: 8px;
  padding: 0 20px;
  border-left: 1px solid var(--ink);
  font: 400 12px/1 var(--mono);
}
.tb-exo:hover {
  background: var(--ink);
  color: var(--paper);
}
.exo-wm {
  font-family: 'Archivo Narrow', 'Arial Narrow', 'Archivo', sans-serif;
  font-weight: 600;
  font-stretch: condensed;
  letter-spacing: -0.01em;
}
.tb-exo .exo-wm {
  font-size: 22px;
  line-height: 1;
}
.tb-exo .exo-mark {
  width: auto;
  height: 30px;
}
.tb-exo .exo-sh {
  margin: 0 -2px 0 2px;
}
.exo-mark {
  flex: none;
  transition: filter 0.2s;
}
.exo-sh {
  position: relative;
  display: block;
  flex: none;
  line-height: 0;
}
.exo-sh::before {
  content: '';
  position: absolute;
  inset: 0;
  transform: translate(var(--sh-d, 3px), var(--sh-d, 3px));
  background: radial-gradient(circle, currentColor 0 var(--sh-r, 1px), transparent calc(var(--sh-r, 1px) + 0.4px)) 0 0 / var(--sh-p, 4px) var(--sh-p, 4px);
  -webkit-mask: var(--exo-mask) center / contain no-repeat;
  mask: var(--exo-mask) center / contain no-repeat;
  pointer-events: none;
}
.exo-sh .exo-mark {
  position: relative;
  display: block;
}

.buy {
  position: relative;
  z-index: 0;
  display: inline-flex;
  align-items: stretch;
  text-decoration: none;
  color: var(--ink);
  cursor: pointer;
}
.buy::before {
  content: '';
  position: absolute;
  inset: 0;
  z-index: -1;
  background: var(--hatch);
  border: 1px solid var(--ink);
  transition: transform 0.22s cubic-bezier(0.3, 0.7, 0.2, 1.3);
}
.buy:hover::before,
.buy:focus-visible::before {
  transform: translate(7px, 7px);
}
.buy > * {
  display: flex;
  align-items: center;
  background: var(--pg);
  border: 1.5px solid var(--ink);
}
.buy > * + * {
  border-left: 0;
}
.buy b {
  font-weight: 700;
  font-variation-settings: 'wdth' 72;
  text-transform: uppercase;
  letter-spacing: 0.01em;
}
.buy:active > * {
  background: var(--ink);
  color: var(--pg);
}
.checkout {
  display: inline-flex;
  margin: 0;
}
button.buy {
  appearance: none;
  margin: 0;
  padding: 0;
  border: 0;
  background: none;
  font: inherit;
  text-align: left;
}
.checkout.busy .buy {
  cursor: progress;
}
.checkout.busy .buy > * {
  background: var(--hatch), var(--pg);
}
.itch {
  display: block;
  width: 100%;
  max-width: 560px;
  height: 175px;
  border: 0;
}
.checkout-note {
  margin-top: 14px;
  padding: 9px 12px 8px;
  border: 1.5px solid var(--ink);
  font: 500 11px/1.45 var(--mono);
  font-variation-settings: 'wdth' 85;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}
.pr {
  gap: 9px;
  font: 400 12px/1 var(--pix);
}
.pr em {
  font: 700 24px/1 var(--pix);
  font-style: normal;
}
s {
  position: relative;
  text-decoration: none;
  display: inline-block;
}
s::after {
  content: '';
  position: absolute;
  left: -14%;
  right: -10%;
  top: 52%;
  height: 1.5px;
  background: currentColor;
  transform: rotate(-17deg);
}

.hero {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
  gap: clamp(28px, 4vw, 72px);
  align-items: start;
  padding: clamp(44px, 6vw, 96px) var(--pad) clamp(48px, 6vw, 88px);
  margin-left: var(--rul);
  border-bottom: 1.5px solid var(--ink);
  overflow: hidden;
}
.ink {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  max-width: none;
  z-index: 0;
  pointer-events: none;
}
.hero-txt,
.shot {
  position: relative;
  z-index: 1;
}
.kick {
  display: flex;
  font: 500 11px/1 var(--mono);
  font-variation-settings: 'wdth' 85;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  margin-bottom: 26px;
}
.kick span {
  padding: 7px 10px 6px;
  border: 1px solid var(--ink);
  background: var(--paper);
}
.kick span + span {
  border-left: 0;
  background: var(--ink);
  color: var(--paper);
}
h1 {
  font-size: clamp(54px, 7.3vw, 132px);
  line-height: 0.84;
  font-weight: 760;
  font-variation-settings: 'wdth' 62;
  text-transform: uppercase;
  letter-spacing: -0.008em;
  margin-left: -0.04em;
}
h1 span {
  white-space: nowrap;
}
h1 b {
  display: inline-block;
  width: 0.17em;
  height: 0.17em;
  margin-left: 0.05em;
  background: var(--ink);
  overflow: hidden;
  text-indent: 1em;
  white-space: nowrap;
}
.lead {
  max-width: 34ch;
  margin-top: 30px;
  font-size: clamp(17px, 1.35vw, 20px);
  line-height: 1.45;
  background: var(--paper);
  box-shadow: 0 0 0 6px var(--paper);
}
.cta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 18px 26px;
  margin-top: 34px;
}
.buy-l b {
  padding: 0 22px;
  font-size: clamp(19px, 1.6vw, 23px);
  min-height: 64px;
}
.buy-l .pr {
  padding: 0 18px;
  gap: 12px;
}
.watch {
  font: 500 12px/1.2 var(--mono);
  font-variation-settings: 'wdth' 85;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  text-decoration: none;
  padding: 6px 0;
  border-bottom: 1px solid var(--ink);
  background: var(--paper);
}
.watch span {
  display: inline-block;
  transition: transform 0.2s;
}
.watch:hover span {
  transform: translateY(4px);
}
.meta {
  margin-top: 26px;
  font: 400 11px/1.6 var(--mono);
  font-variation-settings: 'wdth' 85;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  background: var(--paper);
  display: inline-block;
}

.shot {
  margin: 30px 0 0 34px;
}
.shot .ht-shadow {
  height: auto;
  aspect-ratio: 2560 / 1560;
}
.shot:hover .ht-shadow {
  transform: translate(-6px, -6px);
}
.shot-img {
  position: relative;
  overflow: hidden;
  border: 1.5px solid var(--ink);
  background: var(--ink);
}
.shot-img img {
  width: 100%;
  height: auto;
}
.mk {
  position: absolute;
  z-index: 3;
  width: 44px;
  height: 44px;
  display: grid;
  place-items: center;
  font: 700 24px/1 var(--pix);
  background: var(--ink);
  color: var(--pg);
  border: 2px solid var(--pg);
  transform: translate(10px, 10px) scale(0.6);
  opacity: 0;
  transition: opacity 0.2s, transform 0.25s cubic-bezier(0.3, 0.7, 0.2, 1.3), left 0.3s, top 0.3s;
  pointer-events: none;
}
.hl {
  position: absolute;
  z-index: 2;
  opacity: 0;
  border: 2px solid var(--pg);
  box-shadow: 0 0 0 4000px rgba(11, 11, 11, 0.64);
  transition: opacity 0.25s, left 0.3s, top 0.3s, width 0.3s, height 0.3s;
  pointer-events: none;
}
.co {
  position: absolute;
  z-index: 4;
  width: min(300px, 42%);
  padding: 13px 15px 14px;
  background: var(--ink);
  color: var(--paper);
  border: 2px solid var(--pg);
  opacity: 0;
  transform: translateY(6px);
  transition: opacity 0.2s, transform 0.25s;
  pointer-events: none;
}
.co b {
  display: block;
  margin-bottom: 7px;
  font: 400 12px/1 var(--pix);
  letter-spacing: 1px;
  text-shadow: 1px 0 0 currentColor;
  color: var(--pg);
  text-transform: uppercase;
}
.co span {
  display: block;
  font-size: 13.5px;
  line-height: 1.42;
}
.co::before {
  content: '';
  position: absolute;
  background: var(--pg);
}
.co[data-side='r']::before {
  right: 100%;
  top: 20px;
  width: 14px;
  height: 2px;
}
.co[data-side='l']::before {
  left: 100%;
  top: 20px;
  width: 14px;
  height: 2px;
}
.co[data-low='1']::before {
  top: auto;
  bottom: 20px;
}
.co[data-side='t']::before {
  top: 100%;
  left: 22px;
  width: 2px;
  height: 14px;
}
.co[data-side='in']::before {
  display: none;
}
.shot-img.on .hl,
.shot-img.on .mk,
.shot-img.on .co {
  opacity: 1;
}
.shot-img.on .mk {
  transform: translate(10px, 10px) scale(1);
}
.shot-img.on .co {
  transform: none;
}
.legend {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-top: 18px;
  border-top: 1px solid var(--ink);
  counter-reset: lg;
}
.legend li {
  counter-increment: lg;
  position: relative;
  padding: 12px 12px 12px 36px;
  font-size: 13.5px;
  line-height: 1.35;
  border-bottom: 1px solid var(--ink);
  background: var(--paper);
  cursor: default;
  transition: background 0.15s, color 0.15s;
}
.legend li:not(:nth-child(3n + 1)) {
  border-left: 1px solid var(--ink);
}
.legend li::before {
  content: counter(lg);
  position: absolute;
  left: 10px;
  top: 12px;
  font: 700 12px/1 var(--pix);
}
.legend li b {
  display: block;
  font-weight: 700;
  font-variation-settings: 'wdth' 75;
  text-transform: uppercase;
  letter-spacing: 0.02em;
}
.legend li:hover,
.legend li:focus-visible,
.legend li.on {
  background: var(--ink);
  color: var(--paper);
}
.legend li.on::before {
  color: var(--pg);
}

.dim {
  position: absolute;
  pointer-events: none;
  font: 500 10px/1 var(--mono);
  font-variation-settings: 'wdth' 80;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  --tick: linear-gradient(-45deg, transparent calc(50% - 0.7px), var(--ink) calc(50% - 0.7px) calc(50% + 0.7px), transparent calc(50% + 0.7px));
  transition: clip-path 1.1s cubic-bezier(0.6, 0, 0.2, 1);
}
.dim::before,
.dim::after {
  content: '';
  position: absolute;
}
.dim span {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  background: var(--paper);
  padding: 0 8px;
  white-space: nowrap;
}
.dim-x {
  left: 0;
  right: 0;
  top: -32px;
  height: 22px;
  background: var(--tick) -6px 50% / 12px 12px no-repeat, var(--tick) calc(100% + 6px) 50% / 12px 12px no-repeat;
  clip-path: inset(0 50% 0 50%);
}
.dim-x::before {
  left: -8px;
  right: -8px;
  top: 50%;
  border-top: 1px solid var(--ink);
}
.dim-x::after {
  inset: 2px 0 -10px;
  border-left: 1px solid var(--ink);
  border-right: 1px solid var(--ink);
}
.dim-y {
  top: 0;
  bottom: 0;
  left: -34px;
  width: 22px;
  background: var(--tick) 50% -6px / 12px 12px no-repeat, var(--tick) 50% calc(100% + 6px) / 12px 12px no-repeat;
  clip-path: inset(50% 0 50% 0);
}
.dim-y::before {
  top: -8px;
  bottom: -8px;
  left: 50%;
  border-left: 1px solid var(--ink);
}
.dim-y::after {
  inset: 0 -10px 0 2px;
  border-top: 1px solid var(--ink);
  border-bottom: 1px solid var(--ink);
}
.dim-y span {
  writing-mode: vertical-rl;
  transform: translate(-50%, -50%) rotate(180deg);
  padding: 8px 0;
}
.in .dim {
  clip-path: inset(-4px -14px -4px -14px);
}

.sec {
  padding: clamp(56px, 7vw, 112px) var(--pad);
  margin-left: var(--rul);
  border-bottom: 1.5px solid var(--ink);
}
.sh {
  position: relative;
  padding-top: 24px;
  margin-bottom: clamp(38px, 4.4vw, 64px);
}
.sh::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 1.5px;
  background: var(--ink);
  transform-origin: 0 0;
  transform: scaleX(0);
  transition: transform 1.2s cubic-bezier(0.6, 0, 0.2, 1);
}
.sh::after {
  content: '';
  position: absolute;
  left: 0;
  top: -9px;
  width: 16px;
  height: 10px;
  background: var(--ink);
  clip-path: polygon(0 0, 100% 100%, 0 100%);
}
.in .sh::before {
  transform: scaleX(1);
}
.sh h2 {
  font-size: clamp(38px, 5vw, 80px);
  line-height: 0.9;
  font-weight: 740;
  font-variation-settings: 'wdth' 64;
  text-transform: uppercase;
}
.ht-bar {
  right: 0;
  top: -15px;
  width: min(240px, 30%);
  height: 12px;
}

.bld {
  display: grid;
  grid-template-columns: minmax(0, 7fr) minmax(0, 5fr);
  gap: clamp(30px, 4.6vw, 80px);
  align-items: start;
}
.take-tabs {
  display: flex;
  margin-bottom: 46px;
}
.take-tabs button {
  appearance: none;
  border: 1px solid var(--ink);
  background: var(--paper);
  color: var(--ink);
  padding: 13px 22px 12px;
  font: 600 12px/1 var(--mono);
  font-variation-settings: 'wdth' 85;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  cursor: pointer;
}
.take-tabs button + button {
  border-left: 0;
}
.take-tabs button[aria-selected='true'] {
  background: var(--ink);
  color: var(--paper);
}
.take-tabs button:not([aria-selected='true']):hover {
  background: var(--hatch), var(--paper);
}
.vid {
  position: relative;
  margin-right: 18px;
}
.ph {
  position: relative;
  aspect-ratio: var(--w) / var(--h);
  border: 1.5px solid var(--ink);
  background: var(--dots), var(--paper);
  overflow: hidden;
}
.ph video {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}
.vid-big .ph video {
  opacity: 0;
  transition: opacity 0.35s;
}
.vid-big .ph video.on {
  opacity: 1;
}
.vid-big:hover .ht-shadow {
  transform: translate(-6px, -6px);
}
.bld-txt {
  padding-top: 4px;
}
.bld-lead {
  font-size: clamp(19px, 1.6vw, 24px);
  line-height: 1.38;
  max-width: 26ch;
}
.bld-big {
  margin-top: 22px;
  font-size: clamp(44px, 5vw, 84px);
  line-height: 0.9;
  font-weight: 760;
  font-variation-settings: 'wdth' 62;
  letter-spacing: -0.005em;
}
.bld-big em,
.exo-big {
  position: relative;
  z-index: 0;
  display: inline-block;
  white-space: nowrap;
}
.bld-big em {
  font-style: normal;
  text-transform: uppercase;
  color: var(--pg);
}
.bld-big em::before,
.exo-big::before {
  content: attr(data-t);
  position: absolute;
  left: 0.05em;
  top: 0.05em;
  z-index: -1;
  color: transparent;
  background: radial-gradient(circle, var(--ink) 0 1.3px, transparent 1.75px) 0 0 / 6px 6px;
  -webkit-background-clip: text;
  background-clip: text;
  white-space: nowrap;
  pointer-events: none;
}
.acc {
  margin-top: clamp(30px, 3.6vw, 52px);
  border-top: 1.5px solid var(--ink);
}
.acc-i {
  border-bottom: 1px solid var(--ink);
}
.acc-h {
  appearance: none;
  width: 100%;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto 18px;
  align-items: center;
  gap: 18px;
  padding: 18px 4px 17px;
  background: none;
  border: 0;
  color: var(--ink);
  cursor: pointer;
  text-align: left;
  transition: background 0.18s, color 0.18s, padding 0.25s;
}
.acc-h b {
  font-size: 24px;
  line-height: 1;
  font-weight: 720;
  font-variation-settings: 'wdth' 66;
  text-transform: uppercase;
}
.acc-h span {
  font: 500 11px/1 var(--mono);
  font-variation-settings: 'wdth' 85;
  letter-spacing: 0.07em;
  text-transform: uppercase;
}
.acc-h i {
  position: relative;
  width: 16px;
  height: 16px;
}
.acc-h i::before,
.acc-h i::after {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  top: 7px;
  height: 2px;
  background: currentColor;
  transition: transform 0.3s;
}
.acc-h i::after {
  transform: rotate(90deg);
}
.acc-h:hover,
.acc-i.open .acc-h {
  background: var(--ink);
  color: var(--paper);
  padding-left: 16px;
  padding-right: 16px;
}
.acc-i.open .acc-h i::after {
  transform: rotate(0deg);
}
.acc-b {
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows 0.45s cubic-bezier(0.3, 0.7, 0.2, 1);
}
.acc-i.open .acc-b {
  grid-template-rows: 1fr;
}
.acc-in {
  min-height: 0;
  overflow: hidden;
}
.steps {
  counter-reset: st;
  padding: 6px 0 14px;
}
.steps li {
  counter-increment: st;
  display: grid;
  grid-template-columns: 30px 70px minmax(0, 1fr);
  gap: 6px;
  padding: 12px 0 11px;
  border-bottom: 1px dotted var(--ink);
  font-size: 14.5px;
  line-height: 1.35;
}
.steps li:last-child {
  border-bottom: 0;
}
.steps li::before {
  content: counter(st, decimal-leading-zero);
  font: 400 12px/1.5 var(--pix);
}
.steps li b {
  font-weight: 700;
  font-variation-settings: 'wdth' 75;
  text-transform: uppercase;
  letter-spacing: 0.02em;
}

.lab {
  display: grid;
  grid-template-columns: minmax(0, 2fr) minmax(250px, 1fr);
  border: 1.5px solid var(--ink);
}
.vp {
  position: relative;
  aspect-ratio: 16 / 10;
  background: #050302;
  overflow: hidden;
  touch-action: none;
  user-select: none;
  cursor: crosshair;
}
.vp canvas {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}
.vp::before {
  content: '';
  position: absolute;
  inset: 14px;
  z-index: 2;
  pointer-events: none;
  --c: #ff6a1f;
  --l: 22px;
  background:
    linear-gradient(var(--c), var(--c)) 0 0 / var(--l) 1px no-repeat,
    linear-gradient(var(--c), var(--c)) 0 0 / 1px var(--l) no-repeat,
    linear-gradient(var(--c), var(--c)) 100% 0 / var(--l) 1px no-repeat,
    linear-gradient(var(--c), var(--c)) 100% 0 / 1px var(--l) no-repeat,
    linear-gradient(var(--c), var(--c)) 0 100% / var(--l) 1px no-repeat,
    linear-gradient(var(--c), var(--c)) 0 100% / 1px var(--l) no-repeat,
    linear-gradient(var(--c), var(--c)) 100% 100% / var(--l) 1px no-repeat,
    linear-gradient(var(--c), var(--c)) 100% 100% / 1px var(--l) no-repeat;
  opacity: 0.8;
}
.vp-tag,
.vp-count,
.vp-hint {
  position: absolute;
  pointer-events: none;
  color: #f2d6c2;
  font: 400 12px/1 var(--pix);
  letter-spacing: 0.04em;
  text-transform: uppercase;
}
.vp-tag {
  left: 26px;
  top: 26px;
}
.vp-tag b {
  color: #ff6a1f;
}
.vp-count {
  left: 26px;
  bottom: 24px;
  display: grid;
  gap: 6px;
  color: #a8836c;
}
.vp-count b {
  font: 700 36px/0.9 var(--pix);
  color: #ff6a1f;
}
.vp-hint {
  right: 26px;
  bottom: 26px;
  color: #a8836c;
  transition: opacity 0.6s;
}
.vp.used .vp-hint {
  opacity: 0;
}
.ctl {
  border-left: 1.5px solid var(--ink);
  padding: 20px 20px 22px;
  display: flex;
  flex-direction: column;
  gap: 4px;
  background: var(--paper);
}
.pre,
.pal,
.tg {
  flex: none;
}
.pre {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  margin-bottom: 14px;
}
.tg {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  margin-top: 14px;
}
.pre button,
.tg button,
.pal button {
  appearance: none;
  border: 1px solid var(--ink);
  background: var(--paper);
  color: var(--ink);
  cursor: pointer;
}
.pre button,
.tg button {
  padding: 11px 4px 10px;
  font: 600 11px/1 var(--mono);
  font-variation-settings: 'wdth' 80;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}
.pre button + button,
.tg button + button,
.pal button + button {
  border-left: 0;
}
.pre button[aria-pressed='true'],
.tg button[aria-pressed='true'] {
  background: var(--ink);
  color: var(--paper);
}
.pre button:not([aria-pressed='true']):hover,
.tg button:not([aria-pressed='true']):hover {
  background: var(--hatch), var(--paper);
}
.sl {
  flex: 1 1 38px;
  display: grid;
  grid-template-columns: 84px minmax(0, 1fr) 62px;
  align-items: center;
  gap: 10px;
  min-height: 38px;
  max-height: 92px;
  border-bottom: 1px dotted var(--ink);
}
.sl > span {
  font: 500 10.5px/1 var(--mono);
  font-variation-settings: 'wdth' 80;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}
.sl output {
  font: 400 12px/1 var(--pix);
  text-align: right;
}
input[type='range'] {
  -webkit-appearance: none;
  appearance: none;
  width: 100%;
  height: 26px;
  margin: 0;
  background:
    linear-gradient(var(--ink), var(--ink)) 0 50% / 100% 1px no-repeat,
    repeating-linear-gradient(to right, var(--ink) 0 1px, transparent 1px calc(10% - 0.1px)) 0 calc(50% + 6px) / 100% 4px no-repeat;
  cursor: ew-resize;
}
input[type='range']::-webkit-slider-runnable-track {
  height: 26px;
  background: transparent;
}
input[type='range']::-webkit-slider-thumb {
  -webkit-appearance: none;
  width: 10px;
  height: 18px;
  margin-top: 4px;
  background: var(--ink);
  border: 0;
  border-radius: 0;
}
input[type='range']::-moz-range-track {
  height: 26px;
  background: transparent;
}
input[type='range']::-moz-range-thumb {
  width: 10px;
  height: 18px;
  background: var(--ink);
  border: 0;
  border-radius: 0;
}
input[type='range']:focus-visible {
  outline-offset: 0;
}
.pal {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  margin-top: 18px;
}
.pal button {
  height: 32px;
  position: relative;
}
.pal button[aria-pressed='true']::after {
  content: '';
  position: absolute;
  inset: -6px 40% auto;
  height: 4px;
  background: var(--ink);
}

.tour {
  position: relative;
}
.tour.live {
  height: calc(100vh - var(--tb) + var(--n, 7) * 62vh);
}
.tour-stick {
  display: grid;
  grid-template-columns: minmax(0, 4fr) minmax(0, 8fr);
  gap: clamp(30px, 4.4vw, 76px);
  align-items: center;
}
.tour.live .tour-stick {
  position: sticky;
  top: var(--tb);
  height: calc(100vh - var(--tb));
  height: calc(100svh - var(--tb));
  padding: 26px 0;
}
.tour-left {
  display: grid;
  gap: clamp(28px, 5vh, 56px);
  align-content: center;
}
.tour-map {
  display: grid;
  border-left: 1.5px solid var(--ink);
}
.tour-map button {
  appearance: none;
  position: relative;
  display: block;
  width: 100%;
  padding: 7px 0 7px 16px;
  background: none;
  border: 0;
  color: var(--ink);
  text-align: left;
  font: 500 11px/1.2 var(--mono);
  font-variation-settings: 'wdth' 85;
  letter-spacing: 0.07em;
  text-transform: uppercase;
  opacity: 0.38;
  cursor: pointer;
  transition: opacity 0.25s;
}
.tour-map button::before {
  content: '';
  position: absolute;
  left: -1.5px;
  top: 0;
  bottom: 0;
  width: 5px;
  background: var(--ink);
  transform: scaleY(0);
  transition: transform 0.35s cubic-bezier(0.3, 0.7, 0.2, 1);
}
.tour-map button:hover {
  opacity: 0.8;
}
.tour-map button.on {
  opacity: 1;
}
.tour-map button.on::before {
  transform: scaleY(1);
}
.tour-txt {
  display: grid;
}
.stop {
  margin-bottom: 40px;
}
.stop h3 {
  font-size: clamp(32px, 3.5vw, 58px);
  line-height: 0.92;
  font-weight: 740;
  font-variation-settings: 'wdth' 62;
  text-transform: uppercase;
}
.stop h3::after {
  content: '';
  display: block;
  height: 1.5px;
  margin: 20px 0 18px;
  background: var(--ink);
  transform-origin: 0 0;
}
.stop p {
  font-size: clamp(16px, 1.25vw, 18px);
  line-height: 1.5;
  max-width: 42ch;
}
.tour.live .stop {
  grid-area: 1 / 1;
  margin: 0;
  opacity: 0;
  transform: translateY(30px);
  transition: opacity 0.3s, transform 0.55s cubic-bezier(0.2, 0.7, 0.2, 1);
  pointer-events: none;
}
.tour.live .stop.past {
  transform: translateY(-30px);
}
.tour.live .stop.on {
  opacity: 1;
  transform: none;
  pointer-events: auto;
  transition-delay: 0.08s;
}
.tour.live .stop h3::after {
  transform: scaleX(0);
  transition: transform 0.8s 0.12s cubic-bezier(0.6, 0, 0.2, 1);
}
.tour.live .stop.on h3::after {
  transform: scaleX(1);
}
.tour-view .ph video {
  opacity: 0;
  transition: opacity 0.45s;
}
.tour-view .ph video.on {
  opacity: 1;
}
.tour-view:hover .ht-shadow {
  transform: translate(-6px, -6px);
}

.sched {
  width: 100%;
  border-collapse: collapse;
  border-top: 4px double var(--ink);
  border-bottom: 1.5px solid var(--ink);
}
.sched tr {
  border-bottom: 1px solid var(--ink);
  transition: background 0.12s, color 0.12s;
}
.sched tr:hover {
  background: var(--ink);
  color: var(--paper);
}
.sched th,
.sched td {
  text-align: left;
  vertical-align: baseline;
  padding: 15px 14px 14px 0;
}
.sched th {
  width: 22%;
  font: 600 11px/1.4 var(--mono);
  font-variation-settings: 'wdth' 85;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  padding-left: 12px;
}
.sched td {
  font-size: 15.5px;
  line-height: 1.45;
}
.sched td.n {
  text-align: right;
  white-space: nowrap;
  font: 700 24px/1 var(--pix);
  padding-right: 12px;
  width: 16%;
}

.deal-wrap {
  position: relative;
  max-width: 820px;
  margin: 0 auto;
  padding-right: 18px;
}
.deal-wrap .ht-shadow {
  width: calc(100% - 18px);
}
.deal-wrap:hover .ht-shadow {
  transform: translate(-6px, -6px);
}
.deal {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 1.12fr) 22px minmax(0, 1fr);
  border: 1.5px solid var(--ink);
  background: var(--paper);
}
.deal-strip {
  position: relative;
  grid-column: 2;
  grid-row: 1;
  border-left: 1.5px solid var(--ink);
  border-right: 1.5px solid var(--ink);
}
.deal-l {
  grid-column: 1;
  grid-row: 1;
  padding: clamp(20px, 2.6vw, 34px);
}
.deal-r {
  grid-column: 3;
  grid-row: 1;
  padding: clamp(20px, 2.6vw, 34px);
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.deal-buy {
  grid-column: 1 / -1;
  grid-row: 2;
  display: flex;
  justify-content: center;
  padding: clamp(16px, 2.2vw, 28px);
  border-top: 1.5px solid var(--ink);
}
.deal-name {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-bottom: 22px;
}
.deal-name img {
  width: 52px;
  height: 52px;
}
.deal-name .wm {
  font-size: 24px;
}
.gets li {
  position: relative;
  padding: 11px 0 10px 26px;
  border-top: 1px dotted var(--ink);
  font-size: 15.5px;
  line-height: 1.35;
}
.gets li::before {
  content: '';
  position: absolute;
  left: 2px;
  top: 17px;
  width: 8px;
  height: 8px;
  background: var(--ink);
}
.tag-old {
  display: flex;
  align-items: center;
  gap: 12px;
  font: 700 24px/1 var(--pix);
}
.off {
  padding: 5px 8px 4px;
  border: 1.5px solid var(--ink);
  background: var(--pg);
  font-size: 18px;
}
.tag-new {
  font: 700 clamp(72px, 7vw, 96px)/0.85 var(--pix);
  margin: 10px 0 24px -0.04em;
}
.buy-xl b {
  padding: 0 20px;
  font-size: clamp(18px, 1.5vw, 21px);
  min-height: 60px;
}
.buy-xl .pr {
  padding: 0 16px;
  font: 700 24px/1 var(--pix);
}
.fine {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px 14px;
  margin-top: 18px;
  font: 400 11px/1.5 var(--mono);
  font-variation-settings: 'wdth' 85;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}
.stripe {
  display: block;
  line-height: 0;
  transition: transform 0.2s;
}
.stripe img {
  width: auto;
  height: 30px;
}
.stripe:hover {
  transform: translateY(-2px);
}

.thx {
  min-height: calc(100vh - var(--tb) - 2 * var(--gut) - 64px);
}
.thx-ok,
.thx-err {
  max-width: 720px;
}
.thx .lead {
  margin-top: 0;
  max-width: 40ch;
}
.thx-dl {
  display: flex;
  flex-wrap: wrap;
  gap: 18px 22px;
  margin-top: 34px;
}
.thx .meta a {
  text-decoration: none;
  border-bottom: 1px solid var(--ink);
}

.exo {
  position: relative;
  margin-left: var(--rul);
  border-bottom: 1.5px solid var(--ink);
}
.exo-band {
  left: 0;
  right: 0;
  top: 0;
  height: 26px;
}
.exo-in {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: end;
  gap: 18px clamp(24px, 4vw, 64px);
  padding: clamp(40px, 4.6vw, 68px) var(--pad);
  text-decoration: none;
  transition: background 0.2s, color 0.2s;
}
.exo-lock {
  display: flex;
  align-items: center;
  gap: 0.12em;
  font-size: clamp(72px, 9vw, 136px);
}
.exo-lock .exo-mark {
  width: auto;
  height: 0.92em;
}
.exo-lock .exo-sh {
  --sh-d: 0.045em;
  --sh-p: 7px;
  --sh-r: 1.3px;
}
.exo-big {
  font-size: 1em;
  line-height: 0.78;
  padding-bottom: 0.06em;
}
.exo-big::before {
  left: 0.045em;
  top: 0.045em;
  background-size: 7px 7px;
}
.exo-t {
  font-size: clamp(18px, 1.6vw, 22px);
  line-height: 1.35;
  font-variation-settings: 'wdth' 90;
}
.exo-go {
  font: 600 12px/1 var(--mono);
  font-variation-settings: 'wdth' 85;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  padding: 14px 16px 13px;
  border: 1px solid currentColor;
  white-space: nowrap;
}
.exo-go span {
  display: inline-block;
  transition: transform 0.2s;
}
.exo-in:hover {
  background: var(--ink);
  color: var(--paper);
}
.exo-in:hover .exo-big::before {
  background-image: radial-gradient(circle, var(--paper) 0 1.3px, transparent 1.75px);
}
.exo-in:hover .exo-go span {
  transform: translateX(6px);
}

.ft {
  margin-left: var(--rul);
  padding: 20px var(--pad) 22px;
  font: 500 12px/1 var(--mono);
  font-variation-settings: 'wdth' 85;
  letter-spacing: 0.06em;
}

.sparks {
  position: fixed;
  inset: 0;
  width: 100vw;
  height: 100vh;
  pointer-events: none;
  z-index: 60;
}

@media (min-width: 1000px) {
  :root {
    --rul: 24px;
  }
  .ruler {
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 24px;
    border-right: 1px solid var(--ink);
    background:
      repeating-linear-gradient(to bottom, var(--ink) 0 1px, transparent 1px 48px) 0 0 / 14px 100% no-repeat,
      repeating-linear-gradient(to bottom, var(--ink) 0 1px, transparent 1px 8px) 0 0 / 6px 100% no-repeat;
  }
}

@media (max-width: 1180px) {
  .hero {
    grid-template-columns: minmax(0, 1fr);
  }
  .shot {
    margin: 46px 0 0 30px;
  }
  .bld {
    grid-template-columns: minmax(0, 1fr);
  }
  .bld-txt {
    max-width: 640px;
  }
}

@media (max-width: 900px) {
  .tb-nav,
  .tb-exo {
    display: none;
  }
  .tb {
    grid-template-columns: minmax(0, 1fr);
  }
  .tb-brand {
    border-right: 0;
  }
  .lab {
    grid-template-columns: minmax(0, 1fr);
  }
  .ctl {
    border-left: 0;
    border-top: 1.5px solid var(--ink);
  }
  .legend {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .legend li:not(:nth-child(3n + 1)) {
    border-left: 0;
  }
  .legend li:nth-child(2n) {
    border-left: 1px solid var(--ink);
  }
  .tour-stick {
    grid-template-columns: minmax(0, 1fr);
  }
  .tour.live .tour-stick {
    align-content: start;
    gap: 22px;
    padding: 16px 0 20px;
  }
  .tour.live .tour-left {
    display: contents;
  }
  .tour.live .tour-map {
    order: 1;
    display: flex;
    gap: 4px;
    border-left: 0;
  }
  .tour.live .tour-map li {
    flex: 1;
  }
  .tour.live .tour-map button {
    height: 6px;
    padding: 0;
    font-size: 0;
    background: var(--ink);
    opacity: 0.18;
  }
  .tour.live .tour-map button.on {
    opacity: 1;
  }
  .tour.live .tour-map button::before {
    display: none;
  }
  .tour.live .tour-view {
    order: 2;
    margin-right: 12px;
  }
  .tour.live .tour-txt {
    order: 3;
  }
  .tour .ht-shadow {
    left: 12px;
    top: 12px;
  }
  .deal {
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: auto 22px auto;
  }
  .deal-strip {
    grid-column: 1;
    grid-row: 2;
    border: 0;
    border-top: 1.5px solid var(--ink);
    border-bottom: 1.5px solid var(--ink);
  }
  .deal-l {
    grid-row: 1;
  }
  .deal-r {
    grid-column: 1;
    grid-row: 3;
  }
  .deal-buy {
    grid-row: 4;
  }
  .exo-in {
    grid-template-columns: minmax(0, 1fr);
    align-items: start;
  }
  .exo-go {
    justify-self: start;
  }
}

@media (max-width: 600px) {
  body {
    font-size: 16px;
  }
  .tb-brand {
    padding: 0 10px;
    gap: 8px;
  }
  .tb-brand img {
    width: 26px;
    height: 26px;
  }
  .shot {
    margin: 42px 0 0 26px;
  }
  .dim-y {
    left: -30px;
  }
  .legend {
    grid-template-columns: minmax(0, 1fr);
  }
  .legend li:nth-child(n) {
    border-left: 0;
  }
  .mk {
    width: 30px;
    height: 30px;
    font-size: 12px;
  }
  .co {
    width: 62%;
    padding: 9px 10px 10px;
  }
  .co span {
    font-size: 12px;
  }
  .ht-shadow {
    left: 12px;
    top: 12px;
  }
  .vid {
    margin-right: 12px;
  }
  .take-tabs {
    margin-bottom: 40px;
  }
  .sl {
    grid-template-columns: 78px minmax(0, 1fr) 56px;
  }
  .stop h3 {
    font-size: 28px;
  }
  .stop h3::after {
    margin: 12px 0 12px;
  }
  .stop p {
    font-size: 15px;
  }
  .sched,
  .sched tbody,
  .sched tr,
  .sched th,
  .sched td {
    display: block;
    width: auto;
  }
  .sched tr {
    position: relative;
    padding: 12px 0;
  }
  .sched th,
  .sched td {
    padding: 2px 70px 2px 10px;
  }
  .sched td.n {
    position: absolute;
    right: 0;
    top: 14px;
    padding: 0 10px 0 0;
    width: auto;
    font-size: 12px;
  }
  .buy-l b,
  .buy-xl b {
    padding: 0 16px;
  }
  .deal-wrap {
    padding-right: 12px;
  }
  .deal-wrap .ht-shadow {
    width: calc(100% - 12px);
  }
}

@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }
  .dim,
  .sh::before,
  .buy::before,
  .acc-b,
  .tour.live .stop,
  .tour.live .stop h3::after,
  .tour-view .ph video {
    transition: none;
  }
}
