diff --git a/res/drawable/shift_logo.xml b/res/drawable/shift_logo.xml
new file mode 100644
index 0000000..7c48a73
--- /dev/null
+++ b/res/drawable/shift_logo.xml
@@ -0,0 +1,29 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+    Copyright (c) 2022 SHIFT GmbH
+
+    Licensed under the Apache License, Version 2.0 (the "License");
+    you may not use this file except in compliance with the License.
+    You may obtain a copy of the License at
+
+        http://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+-->
+<vector
+    xmlns:android="http://schemas.android.com/apk/res/android"
+    android:width="200dp"
+    android:height="200dp"
+    android:viewportWidth="426"
+    android:viewportHeight="426">
+    <path
+        android:fillColor="@color/lineage_accent"
+        android:fillType="nonZero"
+        android:pathData="M212.57,6.09C194.2,6.09 175.84,8.52 158.12,13.37C140.99,18.07 124.5,25 109.16,33.95C94.04,42.77 80.06,53.53 67.64,65.87C55.23,78.22 44.4,92.14 35.5,107.21C26.47,122.5 19.45,138.95 14.67,156.04C9.72,173.72 7.19,192.05 7.09,210.41C6.99,228.81 9.33,247.2 14.1,264.97C18.7,282.13 25.56,298.68 34.43,314.07C43.18,329.25 53.87,343.3 66.16,355.78C78.44,368.26 92.32,379.16 107.34,388.14C122.57,397.25 138.98,404.36 156.04,409.23C173.67,414.27 191.97,416.9 210.31,417.1C228.71,417.3 247.13,415.06 264.93,410.39C282.11,405.87 298.7,399.11 314.13,390.32C329.35,381.65 343.44,371.04 355.98,358.83C368.51,346.62 379.48,332.82 388.54,317.85C397.71,302.69 404.91,286.35 409.88,269.34C415.02,251.76 417.76,233.51 418.08,215.21C418.4,196.8 416.29,178.35 411.73,160.51C407.33,143.3 400.67,126.67 391.99,111.18C383.43,95.91 372.91,81.75 360.78,69.14C348.66,56.54 334.93,45.49 320.03,36.34C304.94,27.07 288.64,19.77 271.68,14.7C254.15,9.45 235.93,6.59 217.64,6.15C215.95,6.11 214.26,6.09 212.57,6.09M81.08,262.58C76.01,262.58 70.74,262.22 65.85,260.76C63.89,260.17 62.17,259.11 61.5,257.06C60.89,255.2 61.03,252.88 62.16,251.23C63.5,249.27 65.66,249.12 67.82,249.43C70.39,249.79 72.96,250.11 75.55,250.28C80.24,250.6 85.27,250.83 89.88,249.68C93.5,248.78 96.59,246.64 97.54,242.87C98.24,240.07 97.95,236.98 96.78,234.35C95.39,231.24 92.97,228.66 90.51,226.37C86.3,222.47 81.53,219.32 77,215.84C70.54,210.87 63.65,204.74 62.74,196.15C61.92,188.47 64.47,180.37 71.26,176.18C78.52,171.69 87.93,171.68 96.16,172.07C100.11,172.26 104.34,172.53 108.07,173.98C109.95,174.71 111.52,176.04 111.85,178.13C112.14,179.91 111.85,182.04 110.62,183.43C109.12,185.13 106.93,184.99 104.89,184.77C102,184.45 99.1,184.22 96.19,184.1C91.68,183.93 86.4,183.53 82.15,185.45C79.38,186.7 78.07,189.17 77.85,192.13C77.63,195.26 78.89,197.82 80.89,200.17C87.66,208.12 97.67,212.45 104.96,219.85C107.79,222.72 110.22,226.03 111.61,229.84C112.97,233.59 113.3,237.68 112.97,241.64C112.39,248.6 109.07,254.71 102.91,258.19C96.38,261.88 88.44,262.58 81.08,262.58M197.42,256.69C197.42,258.69 196.69,260.58 194.88,261.58C193.2,262.5 191.15,262.62 189.29,262.58C185.53,262.49 181.74,261.02 181.74,256.68L181.74,202.81C181.74,196.38 180.61,189.18 173.91,186.55C170.45,185.19 166.58,185.02 162.91,185C160.12,184.99 157.31,185.11 154.54,185.5C152.61,185.77 150.55,186.12 148.79,186.98C145.39,188.65 146.14,193.31 146.14,196.54L146.14,256.63C146.14,257.96 145.88,259.33 145.02,260.39C143.86,261.85 141.94,262.34 140.17,262.51C136.62,262.84 131.58,262.36 130.75,258.1C130.41,256.35 130.62,254.38 130.62,252.62L130.62,148.01C130.62,145.67 131.41,143.52 133.71,142.58C135.44,141.87 137.45,141.84 139.29,141.93C141.05,142.02 142.98,142.33 144.36,143.52C146.31,145.19 146.14,147.79 146.14,150.12L146.14,166.73C146.14,169.19 146.15,172.62 148.93,173.61C151.03,174.35 153.72,173.9 155.9,173.8C158.39,173.69 160.87,173.51 163.36,173.39C168.29,173.16 173.27,173.1 178.16,173.87C184.74,174.92 191.04,177.78 194.32,183.87C196.98,188.81 197.42,194.58 197.42,200.09L197.42,248.55C197.42,251.26 197.42,253.98 197.42,256.69M245.98,173.88L238.7,173.88C238.2,173.88 238.11,173.74 238.11,174.21L238.11,207.58C238.11,210.54 237.03,213.07 234.04,214C230.95,214.96 226.03,214.92 223.76,212.23C222.39,210.6 222.43,208.5 222.43,206.5L222.43,174.72C222.43,174.67 222.44,173.87 222.43,173.87L215.09,173.87C213.76,173.87 212.75,173.09 213.55,171.71C214.24,170.51 214.93,169.31 215.63,168.11C218.71,162.78 221.78,157.45 224.86,152.12C226.04,150.07 227.22,148.03 228.4,145.98C229.09,144.78 230.37,142.55 231.64,144.75C236.62,153.37 241.59,161.98 246.57,170.6C247.24,171.76 248.38,173.88 245.98,173.88M354.52,251.8C355.61,251.8 356.7,251.78 357.78,251.8C359.89,251.8 361.3,252.9 361.6,255C361.87,256.92 361.74,259.45 360.14,260.79C358.64,262.05 356.24,262.38 354.39,262.69C347.24,263.91 337.46,263.72 332.99,256.96C329.75,252.07 329.69,245.57 329.69,239.92L329.69,193.42C329.69,192.55 329.7,191.68 329.69,190.81C329.68,189.47 329.7,187.72 328.28,187.07C327.15,186.55 325.81,186.65 324.59,186.65L295.21,186.65C293.51,186.65 290.86,186.26 289.92,188C289.31,189.15 289.45,190.6 289.45,191.88L289.45,256.64C289.45,258.04 289.15,259.48 288.2,260.55C286.97,261.95 285.02,262.39 283.24,262.52C279.72,262.79 274.74,262.28 273.91,258.07C273.72,257.12 273.78,256.11 273.78,255.15L273.78,192.8C273.78,192.06 273.79,191.32 273.78,190.57C273.76,189.21 273.7,187.58 272.23,187.01C271.06,186.54 269.72,186.65 268.48,186.65L263.89,186.65C262.66,186.65 261.36,186.75 260.24,186.16C258.55,185.28 258.09,183.26 257.97,181.5C257.85,179.64 257.9,177.35 259.19,175.86C260.18,174.71 261.64,174.55 263.06,174.55L267.47,174.55C269.73,174.55 273.37,175.16 273.71,172.16C273.99,169.74 273.78,167.21 273.78,164.77C273.78,160.96 274.02,157.06 275.14,153.4C276.06,150.39 277.66,147.59 280.17,145.63C283.02,143.4 286.63,142.44 290.17,142.09C294.88,141.61 299.9,141.8 304.57,142.61C305.79,142.82 307.05,143.08 308.15,143.66C310.18,144.72 310.73,146.86 310.68,149C310.65,150.89 309.98,152.78 307.93,153.23C306.87,153.46 305.67,153.34 304.59,153.34C301.92,153.34 299.16,153.15 296.51,153.45C293.3,153.83 291.02,155.53 290.13,158.69C289.22,161.93 289.45,165.41 289.45,168.74C289.45,169.97 289.35,171.28 289.56,172.5C289.84,174.04 291.09,174.41 292.5,174.51C294.19,174.63 295.91,174.55 297.6,174.55L319.05,174.55C321.74,174.55 324.62,174.82 327.3,174.44C329.97,174.06 329.69,171.62 329.69,169.49L329.69,160.85C329.69,158.76 329.58,156.63 329.71,154.54C329.83,152.6 330.69,150.85 332.47,149.96C334.11,149.14 336.05,149.06 337.85,149.09C339.66,149.13 341.69,149.33 343.18,150.48C344.58,151.56 345.03,153.31 345.03,155.02L345.03,169.95C345.03,170.9 344.97,171.88 345.21,172.8C345.62,174.34 347.25,174.49 348.61,174.53C351.16,174.63 353.73,174.55 356.29,174.55C358.81,174.55 362.11,174.05 363.28,176.91C364.02,178.73 363.97,181.07 363.62,182.98C363.29,184.76 362.32,186.25 360.43,186.57C359.48,186.73 358.46,186.65 357.51,186.65L349.55,186.65C348.32,186.65 346.63,186.59 345.76,187.63C344.8,188.77 345.03,190.57 345.03,192L345.03,238.48C345.03,243.26 345.1,249.77 350.68,251.35C351.93,251.7 353.23,251.8 354.52,251.8"
+        android:strokeWidth="1"
+        android:strokeColor="@color/lineage_accent" />
+</vector>
diff --git a/res/layout-television/welcome_activity.xml b/res/layout-television/welcome_activity.xml
index 7d0e210..2bc3153 100644
--- a/res/layout-television/welcome_activity.xml
+++ b/res/layout-television/welcome_activity.xml
@@ -36,7 +36,7 @@
             android:layout_height="0dp"
             android:layout_weight="65"
             android:layout_gravity="center"
-            android:src="@drawable/logo"
+            android:src="@drawable/shift_logo"
             android:adjustViewBounds="true"
             android:scaleType="fitCenter"
             android:gravity="center"
diff --git a/res/layout/finish_activity.xml b/res/layout/finish_activity.xml
index 8416b2a..1cd03e7 100644
--- a/res/layout/finish_activity.xml
+++ b/res/layout/finish_activity.xml
@@ -33,10 +33,10 @@
 
         <ImageView
             android:id="@+id/brand_logo"
-            android:layout_width="match_parent"
-            android:layout_height="0px"
+            android:layout_width="wrap_content"
+            android:layout_height="0dp"
             android:layout_weight="1"
-            android:src="@drawable/logo"
+            android:src="@drawable/shift_logo"
             android:adjustViewBounds="true"
             android:scaleType="fitCenter"
             android:gravity="center"
diff --git a/res/layout/welcome_activity.xml b/res/layout/welcome_activity.xml
index 6493dc2..ec14cd5 100644
--- a/res/layout/welcome_activity.xml
+++ b/res/layout/welcome_activity.xml
@@ -41,11 +41,12 @@
 
             <ImageView
                 android:id="@+id/brand_logo"
-                android:layout_width="match_parent"
+                android:layout_width="wrap_content"
                 android:layout_height="wrap_content"
+                android:layout_gravity="center"
                 android:adjustViewBounds="true"
                 android:scaleType="centerCrop"
-                android:src="@drawable/logo" />
+                android:src="@drawable/shift_logo" />
 
             <Space
                 android:layout_width="match_parent"
diff --git a/res/values/colors.xml b/res/values/colors.xml
index 77c43ce..2acaa8c 100644
--- a/res/values/colors.xml
+++ b/res/values/colors.xml
@@ -23,7 +23,7 @@
     <color name="primary">@color/page_background</color>
     <color name="primary_dark">#c2c5c7</color>
     <color name="accent">@*android:color/accent_device_default_light</color>
-    <color name="lineage_accent">#167C80</color>
+    <color name="lineage_accent">#006677</color>
     <color name="primary_text">#8a000000</color>
     <color name="secondary_text">#42000000</color>
     <color name="button_bar_text_enabled">#ff1e1e1e</color>
diff --git a/res/values/shift_strings.xml b/res/values/shift_strings.xml
new file mode 100644
index 0000000..5979a21
--- /dev/null
+++ b/res/values/shift_strings.xml
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+     Copyright (C) 2013-2015 The CyanogenMod Project
+     Copyright (C) 2017-2020, 2022 The LineageOS Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
+<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="shift_os_name" translatable="false">ShiftOS</string>
+    <string name="shift_setup_services">ShiftOS features</string>
+    <string name="shift_services_privacy_policy_uri" translatable="false">https://shift.eco/legal</string>
+</resources>
diff --git a/src/org/lineageos/setupwizard/LineageSettingsActivity.java b/src/org/lineageos/setupwizard/LineageSettingsActivity.java
index 9d1055c..e59ef46 100644
--- a/src/org/lineageos/setupwizard/LineageSettingsActivity.java
+++ b/src/org/lineageos/setupwizard/LineageSettingsActivity.java
@@ -71,9 +71,9 @@
         mSetupWizardApp = (SetupWizardApp) getApplication();
         setNextText(R.string.next);
 
-        String os_name = getString(R.string.os_name);
+        String os_name = getString(R.string.shift_os_name);
         String privacyPolicy = getString(R.string.services_pp_explanation, os_name);
-        String privacyPolicyUri = getString(R.string.services_privacy_policy_uri);
+        String privacyPolicyUri = getString(R.string.shift_services_privacy_policy_uri);
         String policySummary = getString(R.string.services_find_privacy_policy, privacyPolicyUri);
         String servicesFullDescription = getString(R.string.services_full_description,
                 privacyPolicy, policySummary);
@@ -125,7 +125,7 @@
 
     @Override
     protected int getTitleResId() {
-        return R.string.setup_services;
+        return R.string.shift_setup_services;
     }
 
     @Override
diff --git a/src/org/lineageos/setupwizard/WelcomeActivity.java b/src/org/lineageos/setupwizard/WelcomeActivity.java
index b115f81..4bd6409 100644
--- a/src/org/lineageos/setupwizard/WelcomeActivity.java
+++ b/src/org/lineageos/setupwizard/WelcomeActivity.java
@@ -51,7 +51,7 @@
 
         TextView welcomeTitle = findViewById(R.id.welcome_title);
         welcomeTitle.setText(getString(R.string.setup_welcome_message,
-                getString(R.string.os_name)));
+                getString(R.string.shift_os_name)));
     }
 
     @Override
diff --git a/src/org/lineageos/setupwizard/backup/RestoreIntroActivity.java b/src/org/lineageos/setupwizard/backup/RestoreIntroActivity.java
index dd154dc..9b58064 100644
--- a/src/org/lineageos/setupwizard/backup/RestoreIntroActivity.java
+++ b/src/org/lineageos/setupwizard/backup/RestoreIntroActivity.java
@@ -38,7 +38,7 @@
     protected void onCreate(Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);
         getGlifLayout().setDescriptionText(getString(R.string.intro_restore_subtitle,
-                getString(R.string.os_name)));
+                getString(R.string.shift_os_name)));
     }
 
     @Override
