diff --git a/apple-touch-icon.png b/apple-touch-icon.png
new file mode 100644
index 0000000..0797e09
Binary files /dev/null and b/apple-touch-icon.png differ
diff --git a/css/base.css b/css/base.css
new file mode 100644
index 0000000..2d83697
--- /dev/null
+++ b/css/base.css
@@ -0,0 +1,82 @@
+*,
+::before,
+::after {
+ box-sizing: border-box;
+ border-width: 0;
+ border-style: solid;
+ border-color: #e5e7eb;
+}
+
+html {
+ line-height: 1.5;
+ font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont,
+ 'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif,
+ 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';
+}
+
+body {
+ margin: 0;
+ line-height: inherit;
+}
+
+h1,
+h2,
+h3 {
+ font-size: inherit;
+ font-weight: inherit;
+}
+
+a {
+ color: inherit;
+ text-decoration: inherit;
+}
+
+button {
+ font-family: inherit;
+ font-feature-settings: inherit;
+ font-variation-settings: inherit;
+ font-size: 100%;
+ font-weight: inherit;
+ line-height: inherit;
+ color: inherit;
+ margin: 0;
+ padding: 0;
+}
+
+button,
+select {
+ text-transform: none;
+}
+
+h1,
+h2,
+h3,
+h4 p {
+ margin: 0;
+}
+
+ol,
+ul {
+ list-style: none;
+ margin: 0;
+ padding: 0;
+}
+
+button,
+[role='button'] {
+ cursor: pointer;
+}
+
+:disabled {
+ cursor: default;
+}
+
+img,
+svg {
+ display: block;
+}
+
+img {
+ max-width: 100%;
+ height: auto;
+}
diff --git a/css/media-queries.css b/css/media-queries.css
new file mode 100644
index 0000000..82eb3fc
--- /dev/null
+++ b/css/media-queries.css
@@ -0,0 +1,65 @@
+@media (min-width: 768px) {
+ .title-hero {
+ font-size: 3.5rem;
+ }
+
+ .intro-section {
+ padding-top: 7rem;
+ padding-bottom: 7rem;
+ }
+
+ .title-hero {
+ font-size: 4.5rem;
+ line-height: 1;
+ }
+
+ .intro-paragraph {
+ font-size: 1.5rem;
+ }
+
+ .intro-button-group {
+ flex-direction: row;
+ }
+
+ .about-section {
+ padding-top: 7rem;
+ padding-bottom: 7rem;
+ }
+
+ .supporters-section {
+ padding-top: 7rem;
+ padding-bottom: 7rem;
+ }
+
+ .title-medium {
+ font-size: 1.5rem;
+ line-height: 2rem;
+ }
+
+ .resources-section {
+ padding-top: 7rem;
+ padding-bottom: 7rem;
+ }
+
+ .contact-email {
+ padding-left: 2.5rem;
+ padding-right: 2.5rem;
+ }
+
+ .contact-grid {
+ display: grid;
+ grid-template-columns: 1.5fr 2fr;
+ > :nth-child(1) {
+ grid-row: 1 / 3;
+ grid-column: 1 / 2;
+ }
+ > :nth-child(2) {
+ grid-row: 1 / 2;
+ grid-column: 2 / 3;
+ }
+ > :nth-child(3) {
+ grid-row: 2 / 3;
+ grid-column: 2 / 3;
+ }
+ }
+}
diff --git a/css/normalize.css b/css/normalize.css
deleted file mode 100644
index b0c1902..0000000
--- a/css/normalize.css
+++ /dev/null
@@ -1,349 +0,0 @@
-/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
-
-/* Document
- ========================================================================== */
-
-/**
- * 1. Correct the line height in all browsers.
- * 2. Prevent adjustments of font size after orientation changes in iOS.
- */
-
-html {
- line-height: 1.15; /* 1 */
- -webkit-text-size-adjust: 100%; /* 2 */
-}
-
-/* Sections
- ========================================================================== */
-
-/**
- * Remove the margin in all browsers.
- */
-
-body {
- margin: 0;
-}
-
-/**
- * Render the `main` element consistently in IE.
- */
-
-main {
- display: block;
-}
-
-/**
- * Correct the font size and margin on `h1` elements within `section` and
- * `article` contexts in Chrome, Firefox, and Safari.
- */
-
-h1 {
- font-size: 2em;
- margin: 0.67em 0;
-}
-
-/* Grouping content
- ========================================================================== */
-
-/**
- * 1. Add the correct box sizing in Firefox.
- * 2. Show the overflow in Edge and IE.
- */
-
-hr {
- box-sizing: content-box; /* 1 */
- height: 0; /* 1 */
- overflow: visible; /* 2 */
-}
-
-/**
- * 1. Correct the inheritance and scaling of font size in all browsers.
- * 2. Correct the odd `em` font sizing in all browsers.
- */
-
-pre {
- font-family: monospace, monospace; /* 1 */
- font-size: 1em; /* 2 */
-}
-
-/* Text-level semantics
- ========================================================================== */
-
-/**
- * Remove the gray background on active links in IE 10.
- */
-
-a {
- background-color: transparent;
-}
-
-/**
- * 1. Remove the bottom border in Chrome 57-
- * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
- */
-
-abbr[title] {
- border-bottom: none; /* 1 */
- text-decoration: underline; /* 2 */
- text-decoration: underline dotted; /* 2 */
-}
-
-/**
- * Add the correct font weight in Chrome, Edge, and Safari.
- */
-
-b,
-strong {
- font-weight: bolder;
-}
-
-/**
- * 1. Correct the inheritance and scaling of font size in all browsers.
- * 2. Correct the odd `em` font sizing in all browsers.
- */
-
-code,
-kbd,
-samp {
- font-family: monospace, monospace; /* 1 */
- font-size: 1em; /* 2 */
-}
-
-/**
- * Add the correct font size in all browsers.
- */
-
-small {
- font-size: 80%;
-}
-
-/**
- * Prevent `sub` and `sup` elements from affecting the line height in
- * all browsers.
- */
-
-sub,
-sup {
- font-size: 75%;
- line-height: 0;
- position: relative;
- vertical-align: baseline;
-}
-
-sub {
- bottom: -0.25em;
-}
-
-sup {
- top: -0.5em;
-}
-
-/* Embedded content
- ========================================================================== */
-
-/**
- * Remove the border on images inside links in IE 10.
- */
-
-img {
- border-style: none;
-}
-
-/* Forms
- ========================================================================== */
-
-/**
- * 1. Change the font styles in all browsers.
- * 2. Remove the margin in Firefox and Safari.
- */
-
-button,
-input,
-optgroup,
-select,
-textarea {
- font-family: inherit; /* 1 */
- font-size: 100%; /* 1 */
- line-height: 1.15; /* 1 */
- margin: 0; /* 2 */
-}
-
-/**
- * Show the overflow in IE.
- * 1. Show the overflow in Edge.
- */
-
-button,
-input { /* 1 */
- overflow: visible;
-}
-
-/**
- * Remove the inheritance of text transform in Edge, Firefox, and IE.
- * 1. Remove the inheritance of text transform in Firefox.
- */
-
-button,
-select { /* 1 */
- text-transform: none;
-}
-
-/**
- * Correct the inability to style clickable types in iOS and Safari.
- */
-
-button,
-[type="button"],
-[type="reset"],
-[type="submit"] {
- -webkit-appearance: button;
-}
-
-/**
- * Remove the inner border and padding in Firefox.
- */
-
-button::-moz-focus-inner,
-[type="button"]::-moz-focus-inner,
-[type="reset"]::-moz-focus-inner,
-[type="submit"]::-moz-focus-inner {
- border-style: none;
- padding: 0;
-}
-
-/**
- * Restore the focus styles unset by the previous rule.
- */
-
-button:-moz-focusring,
-[type="button"]:-moz-focusring,
-[type="reset"]:-moz-focusring,
-[type="submit"]:-moz-focusring {
- outline: 1px dotted ButtonText;
-}
-
-/**
- * Correct the padding in Firefox.
- */
-
-fieldset {
- padding: 0.35em 0.75em 0.625em;
-}
-
-/**
- * 1. Correct the text wrapping in Edge and IE.
- * 2. Correct the color inheritance from `fieldset` elements in IE.
- * 3. Remove the padding so developers are not caught out when they zero out
- * `fieldset` elements in all browsers.
- */
-
-legend {
- box-sizing: border-box; /* 1 */
- color: inherit; /* 2 */
- display: table; /* 1 */
- max-width: 100%; /* 1 */
- padding: 0; /* 3 */
- white-space: normal; /* 1 */
-}
-
-/**
- * Add the correct vertical alignment in Chrome, Firefox, and Opera.
- */
-
-progress {
- vertical-align: baseline;
-}
-
-/**
- * Remove the default vertical scrollbar in IE 10+.
- */
-
-textarea {
- overflow: auto;
-}
-
-/**
- * 1. Add the correct box sizing in IE 10.
- * 2. Remove the padding in IE 10.
- */
-
-[type="checkbox"],
-[type="radio"] {
- box-sizing: border-box; /* 1 */
- padding: 0; /* 2 */
-}
-
-/**
- * Correct the cursor style of increment and decrement buttons in Chrome.
- */
-
-[type="number"]::-webkit-inner-spin-button,
-[type="number"]::-webkit-outer-spin-button {
- height: auto;
-}
-
-/**
- * 1. Correct the odd appearance in Chrome and Safari.
- * 2. Correct the outline style in Safari.
- */
-
-[type="search"] {
- -webkit-appearance: textfield; /* 1 */
- outline-offset: -2px; /* 2 */
-}
-
-/**
- * Remove the inner padding in Chrome and Safari on macOS.
- */
-
-[type="search"]::-webkit-search-decoration {
- -webkit-appearance: none;
-}
-
-/**
- * 1. Correct the inability to style clickable types in iOS and Safari.
- * 2. Change font properties to `inherit` in Safari.
- */
-
-::-webkit-file-upload-button {
- -webkit-appearance: button; /* 1 */
- font: inherit; /* 2 */
-}
-
-/* Interactive
- ========================================================================== */
-
-/*
- * Add the correct display in Edge, IE 10+, and Firefox.
- */
-
-details {
- display: block;
-}
-
-/*
- * Add the correct display in all browsers.
- */
-
-summary {
- display: list-item;
-}
-
-/* Misc
- ========================================================================== */
-
-/**
- * Add the correct display in IE 10+.
- */
-
-template {
- display: none;
-}
-
-/**
- * Add the correct display in IE 10.
- */
-
-[hidden] {
- display: none;
-}
\ No newline at end of file
diff --git a/css/style.css b/css/style.css
index 5d0045a..91a386c 100644
--- a/css/style.css
+++ b/css/style.css
@@ -1,129 +1,435 @@
-@import 'normalize.css';
+:root {
+ /* indigo colors */
+ --color-indigo-50: rgb(238, 242, 255);
+ --color-indigo-100: rgb(224, 231, 255);
+ --color-indigo-200: rgb(199, 210, 254);
+ --color-indigo-300: rgb(165, 180, 252);
+ --color-indigo-400: rgb(129, 140, 248);
+ --color-indigo-500: rgb(99, 102, 241);
+ --color-indigo-600: rgb(79, 70, 229);
+ --color-indigo-700: rgb(67, 56, 202);
+ --color-indigo-800: rgb(55, 48, 163);
+ --color-indigo-900: rgb(49, 46, 129);
+ --color-indigo-950: rgb(30, 27, 75);
+
+ /* rose colors */
+ --color-rose-50: rgb(255, 241, 242);
+ --color-rose-100: rgb(255, 228, 230);
+ --color-rose-200: rgb(254, 205, 211);
+ --color-rose-300: rgb(253, 164, 175);
+ --color-rose-400: rgb(251, 113, 133);
+ --color-rose-500: rgb(244, 63, 94);
+ --color-rose-600: rgb(225, 29, 72);
+ --color-rose-700: rgb(190, 18, 60);
+ --color-rose-800: rgb(159, 18, 57);
+ --color-rose-900: rgb(136, 19, 55);
+ --color-rose-950: rgb(76, 5, 25);
+
+ /* gray colors */
+ --color-gray-50: rgb(249, 250, 251);
+ --color-gray-100: rgb(243 244 246);
+ --color-gray-200: rgb(229, 231, 235);
+ --color-gray-300: rgb(209, 213, 219);
+ --color-gray-400: rgb(156, 163, 175);
+ --color-gray-500: rgb(107, 114, 128);
+ --color-gray-600: rgb(75, 85, 99);
+ --color-gray-700: rgb(55, 65, 81);
+ --color-gray-800: rgb(31, 41, 55);
+ --color-gray-900: rgb(17, 24, 39);
+ --color-gray-950: rgb(3, 7, 18);
+
+ --color-white: rgb(255, 255, 255);
+}
body {
- font-family: Tahoma,Verdana,Segoe,sans-serif;
- color:#333;
- background:url("../images/background.jpg") #eee;
+ color: var(--color-gray-900);
+ font-size: 1.1rem;
+}
+
+.header-content {
+ display: flex;
+ align-items: center;
+ justify-content: space-between;
+ padding-top: 1.5rem;
+ padding-bottom: 1.5rem;
}
-h2 {
- margin-top: 0;
+.logo-openpgp {
+ align-items: center;
+ display: flex;
+ gap: 0.75rem;
+ font-size: 1.25rem;
+ line-height: 1.75rem;
+ font-weight: 600;
+ letter-spacing: 0.025em;
}
-a:hover, a:active { outline: none; }
-a, a:active, a:visited { color: #607890; text-decoration:none;}
-a:hover { color: #036; }
+.logo-openpgp img {
+ flex: none;
+}
+
+.logo-github {
+ display: flex;
+ align-items: center;
+ justify-content: center;
+ width: 2rem;
+ height: 2rem;
+ color: var(--color-gray-500);
+}
+
+.logo-github:hover,
+.logo-github:focus {
+ color: var(--color-indigo-600);
+}
-ul#donate, ul#sponsors {
- list-style-type: none;
- padding-left: .5em;
- margin-left: .5em;
+.logo-github svg {
+ height: 1.5rem;
+ width: 1.5rem;
+ flex-shrink: 0;
+ fill: currentColor;
}
-ul#donate li {
- margin-bottom: 1em;
+.intro-section {
+ background-color: var(--color-indigo-50);
+ padding-top: 3rem;
+ padding-bottom: 3rem;
+ background-image: url('../img/hero.jpg');
+ background-blend-mode: color;
+ background-position: center;
+ background-repeat: no-repeat;
+ background-size: cover;
}
-.block {
- margin:0 auto 1rem auto;
- padding:2em;
- max-width:70em;
- background:#fff;
- box-shadow: 0px 2px 4px rgba(0,0,0,.2);
- border-radius: 5px;
- border:1px solid #ccc;
- background: #fafafa;
+.intro-content {
+ max-width: 42rem;
+ margin-inline: auto;
+}
+.container {
+ max-width: 60rem;
+ margin-left: auto;
+ margin-right: auto;
+ padding-left: 1.5rem;
+ padding-right: 1.5rem;
+}
+
+.title-hero {
+ font-size: 2.25rem;
+ line-height: 1;
+ font-weight: 600;
+}
+
+.intro-paragraph {
+ font-size: 1.25rem;
+ margin-top: 3rem;
+}
+
+.intro-button-group {
+ display: flex;
+ flex-direction: column;
+ margin-top: 2.5rem;
+ gap: 0.5rem;
+}
+
+.primary-btn {
+ border-radius: 0.75rem;
+ background-color: var(--color-indigo-700);
+ padding: 0.75rem 2.5rem;
+ font-size: 0.875rem;
+ font-weight: 600;
+ color: var(--color-white);
+ text-align: center;
+ cursor: pointer;
+ display: inline-flex;
+ gap: 0.5rem;
+ align-items: center;
+ justify-content: center;
}
-header#title {
- background:#369;
- color:#eee;
- margin:0 0 2rem 0;
- padding:.5em;
- box-shadow: 0px 2px 4px rgba(0,0,0,.2);
+.primary-btn:hover,
+.primary-btn:focus {
+ background-color: var(--color-indigo-900);
+ color: var(--color-white);
}
-#browsers {
- width:90%;
- margin:0 auto;
+.primary-btn svg {
+ height: 1rem;
+ width: 1rem;
+ fill: currentColor;
}
-.logo-list a {
+.secondary-btn {
+ border-radius: 0.75rem;
+ padding: 0.75rem 2.5rem;
+ font-size: 0.875rem;
+ font-weight: 600;
+ color: var(--color-indigo-600);
+ text-align: center;
+ border: 2px solid currentColor;
+ cursor: pointer;
display: inline-block;
- padding: 1rem;
- border: 1px solid #ccc;
+}
+
+.secondary-btn:hover,
+.secondary-btn:focus {
+ color: var(--color-indigo-900);
+}
+
+.about-section {
+ padding-top: 3rem;
+ padding-bottom: 3rem;
+}
+
+.about-grid {
+ margin-inline: auto;
+ display: flex;
+ flex-direction: column;
+ align-items: center;
+ gap: 3rem;
+}
+
+.supporters-section {
+ background-color: var(--color-indigo-50);
+ padding-top: 3rem;
+ padding-bottom: 3rem;
+}
+
+.title-eyebrow {
+ font-size: 0.875rem;
+ font-weight: 600;
+ color: var(--color-indigo-500);
+}
+
+.title-medium {
+ font-size: 1.25rem;
+ line-height: 1.75rem;
+ font-weight: 600;
+}
+
+.margin-top {
+ margin-top: 3rem;
+}
+
+.supporters-container {
+ display: flex;
+ flex-wrap: wrap;
+ gap: 1.5rem;
+ padding-top: 1.5rem;
+ padding-bottom: 1.5rem;
+}
+
+.supporters-logo-container {
+ display: flex;
+ flex-wrap: wrap;
+ align-items: center;
+ gap: 1.5rem;
+ padding-top: 1.5rem;
+ padding-bottom: 1.5rem;
+}
+
+.resources-container {
+ display: flex;
+ flex-direction: column;
+ gap: 0.75rem;
+ align-items: flex-start;
+ padding: 1.5rem;
+ border-radius: 0.25rem;
+ background-color: var(--color-indigo-100);
+}
+
+.resources-list {
+ align-self: stretch;
+}
+
+.resources-list li {
+ margin-top: 1rem;
+}
+
+.security-contact-container {
+ display: flex;
+ flex-direction: column;
+ gap: 0.75rem;
+ align-items: flex-start;
+ padding: 1.5rem;
+ border-radius: 0.25rem;
+ background-color: var(--color-rose-50);
+}
+
+.contact-title {
+ font-size: 0.875rem;
+ font-weight: 600;
+ color: var(--color-gray-700);
+}
+
+.contact-container {
+ display: flex;
+ flex-direction: column;
+ gap: 0.75rem;
+ align-items: flex-start;
+ padding: 1.5rem;
+ border-radius: 0.25rem;
+ background-color: var(--color-indigo-50);
+}
+
+.contact-email {
+ border-radius: 0.75rem;
+ padding-left: 1.5rem;
+ padding-right: 1.5rem;
+ padding-top: 0.75rem;
+ padding-bottom: 0.75rem;
+ font-size: 0.875rem;
+ font-weight: 600;
text-align: center;
- width: 8rem;
- margin: 0 .5rem .5rem 0;
- box-shadow: 0px 1px 2px rgba(0,0,0,.2);
- border-radius: 3px;
- background: #fafafa;
+ cursor: pointer;
+ border: 2px solid currentColor;
}
-.logo-list a:hover {
- background: #fff;
- box-shadow: 0px 2px 3px rgba(0,0,0,.2)
+.contact-email-security {
+ color: var(--color-rose-700);
}
-.logo-list a:active {
- box-shadow: inset 0 1px 2px rgba(0,0,0,.2);
- background: #e5e5e5;
+.contact-email-general {
+ color: var(--color-indigo-700);
}
-.logo-list a img {
- display: block;
- margin: 0 auto .5rem;
- height: 80px;
- width: auto;
+.contact-email-security:hover,
+.contact-email-security:focus {
+ color: var(--color-rose-900);
+}
+
+.contact-email-general:hover,
+.contact-email-general:focus {
+ color: var(--color-indigo-950);
+}
+
+.contact-text {
+ font-size: 0.875rem;
+ color: var(--color-gray-500);
+}
+
+.resources-title {
+ font-size: 0.875rem;
+ font-weight: 600;
+ color: var(--color-gray-700);
+}
+
+.supporter-link,
+.user-link {
+ color: var(--color-gray-500);
+ background-color: var(--color-white);
+ border-radius: 0.5rem;
+ padding: 1.5rem;
+ display: flex;
+ flex-direction: column;
+ align-items: center;
+ justify-content: space-between;
+ gap: 0.5rem;
+ width: 200px;
}
-.logo-list a span {
+.supporter-link .supporter-link:hover,
+.supporter-link:focus,
+.user-link:hover,
+.user-link:focus {
+ box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1),
+ 0 4px 6px -2px rgba(0, 0, 0, 0.05);
+}
+
+.supporter-link:hover,
+.user-link:hover {
+ transition: all 0.25s;
+ transform: scale(1.1);
+}
+
+.supporter-link {
+ padding: 3rem;
+ width: 200px;
+}
+
+.supporter-link p {
+ margin-bottom: 0;
+}
+
+.resources-section {
+ padding-top: 3rem;
+ padding-bottom: 3rem;
+}
+
+.default-link {
+ color: currentColor;
+ text-decoration: underline;
+ text-decoration-color: var(--color-indigo-300);
+}
+
+.default-link:hover,
+.default-link:focus {
+ color: var(--color-indigo-900);
+ text-decoration-color: var(--color-indigo-500);
+}
+
+.resource-link {
display: block;
+ padding: 0.5rem 1rem;
+ color: currentColor;
+ text-decoration: none;
+ border-radius: 0.75rem;
+ background-color: var(--color-indigo-50);
}
-.logo {
- height:5em;
- width:5em;
- margin-right:1em;
+.resource-link:hover,
+.resource-link:focus {
+ color: var(--color-indigo-900);
+ background-color: var(--color-white);
}
-#submitbutton {
- background-color: #333;
- color: #fff;
- border-radius: 5px;
+/* contact section */
+
+.contact-grid {
+ display: flex;
+ flex-direction: column;
+ gap: 2rem;
+ justify-content: stretch;
}
-header#title > div {
- display: inline-block;
- width: 24rem;
+/* footer */
+
+.footer {
+ padding-top: 3rem;
+ padding-bottom: 3rem;
+ background-color: var(--color-indigo-900);
+ color: var(--color-white);
}
-header#title h1,
-header#title p {
- margin: .5rem 0;
+.footer-content {
+ display: flex;
+ gap: 0.75rem;
+ align-items: center;
+ justify-content: flex-end;
}
-#eu-horizon {
- float: right;
- width: 240px;
- margin: .8rem 0;
+.logo-euro {
+ display: block;
+ width: 15rem;
}
-textarea {
- width: 40em;
- height: 5em;
- max-width: 90%;
+/* Utilities */
+
+.text-gray-500 {
+ color: var(--color-gray-500);
}
+.mx-auto {
+ margin-left: auto;
+ margin-right: auto;
+}
-@media screen and (max-width: 660px) {
- header > div img {
- display: none;
- }
- header#title > div {
- width: 18rem;
- }
- .block {
- margin: 1rem;
- }
+.sr-only {
+ position: absolute;
+ width: 1px;
+ height: 1px;
+ padding: 0;
+ margin: -1px;
+ overflow: hidden;
+ clip: rect(0, 0, 0, 0);
+ white-space: nowrap;
+ border-width: 0;
}
diff --git a/favicon-16x16.png b/favicon-16x16.png
new file mode 100644
index 0000000..99ddc48
Binary files /dev/null and b/favicon-16x16.png differ
diff --git a/favicon-32x32.png b/favicon-32x32.png
new file mode 100644
index 0000000..37e2bdc
Binary files /dev/null and b/favicon-32x32.png differ
diff --git a/favicon.ico b/favicon.ico
index 5bb2181..10f94be 100644
Binary files a/favicon.ico and b/favicon.ico differ
diff --git a/images/background.jpg b/images/background.jpg
deleted file mode 100644
index cb18cb3..0000000
Binary files a/images/background.jpg and /dev/null differ
diff --git a/images/icon_gumroad.png b/images/icon_gumroad.png
deleted file mode 100644
index 2772dcc..0000000
Binary files a/images/icon_gumroad.png and /dev/null differ
diff --git a/images/icon_openpgpjs.png b/images/icon_openpgpjs.png
deleted file mode 100644
index 90578af..0000000
Binary files a/images/icon_openpgpjs.png and /dev/null differ
diff --git a/images/icon_paypal.png b/images/icon_paypal.png
deleted file mode 100644
index bdabdc4..0000000
Binary files a/images/icon_paypal.png and /dev/null differ
diff --git a/images/logo-gdpr-eu-white.svg b/images/logo-gdpr-eu-white.svg
deleted file mode 100644
index 4ba326d..0000000
--- a/images/logo-gdpr-eu-white.svg
+++ /dev/null
@@ -1,2 +0,0 @@
-
-
diff --git a/images/logo_encrypto.png b/images/logo_encrypto.png
deleted file mode 100644
index 9a27e12..0000000
Binary files a/images/logo_encrypto.png and /dev/null differ
diff --git a/images/logo_firefox.png b/images/logo_firefox.png
deleted file mode 100644
index 351a29d..0000000
Binary files a/images/logo_firefox.png and /dev/null differ
diff --git a/images/logo_flowcrypt.jpg b/images/logo_flowcrypt.jpg
deleted file mode 100644
index f457da1..0000000
Binary files a/images/logo_flowcrypt.jpg and /dev/null differ
diff --git a/images/logo_globaleaks.png b/images/logo_globaleaks.png
deleted file mode 100644
index 7f47e84..0000000
Binary files a/images/logo_globaleaks.png and /dev/null differ
diff --git a/images/logo_hoodiecrow.png b/images/logo_hoodiecrow.png
deleted file mode 100644
index a3e3860..0000000
Binary files a/images/logo_hoodiecrow.png and /dev/null differ
diff --git a/images/logo_html5.png b/images/logo_html5.png
deleted file mode 100644
index 66bf102..0000000
Binary files a/images/logo_html5.png and /dev/null differ
diff --git a/images/logo_ie.png b/images/logo_ie.png
deleted file mode 100644
index 0b2ec47..0000000
Binary files a/images/logo_ie.png and /dev/null differ
diff --git a/images/logo_js.png b/images/logo_js.png
deleted file mode 100644
index 1e2c5f5..0000000
Binary files a/images/logo_js.png and /dev/null differ
diff --git a/images/logo_mailvelope.png b/images/logo_mailvelope.png
deleted file mode 100644
index 3f6817b..0000000
Binary files a/images/logo_mailvelope.png and /dev/null differ
diff --git a/images/logo_mymail_crypt.jpg b/images/logo_mymail_crypt.jpg
deleted file mode 100644
index 24fea3b..0000000
Binary files a/images/logo_mymail_crypt.jpg and /dev/null differ
diff --git a/images/logo_openudc.png b/images/logo_openudc.png
deleted file mode 100644
index c2a7efb..0000000
Binary files a/images/logo_openudc.png and /dev/null differ
diff --git a/images/logo_opera.png b/images/logo_opera.png
deleted file mode 100644
index f685e03..0000000
Binary files a/images/logo_opera.png and /dev/null differ
diff --git a/images/logo_passbolt.png b/images/logo_passbolt.png
deleted file mode 100644
index ddfebbf..0000000
Binary files a/images/logo_passbolt.png and /dev/null differ
diff --git a/images/logo_pgpanywhere.png b/images/logo_pgpanywhere.png
deleted file mode 100644
index 59ba850..0000000
Binary files a/images/logo_pgpanywhere.png and /dev/null differ
diff --git a/images/logo_proton_mail.png b/images/logo_proton_mail.png
deleted file mode 100644
index bdc522f..0000000
Binary files a/images/logo_proton_mail.png and /dev/null differ
diff --git a/images/logo_roundcube.png b/images/logo_roundcube.png
deleted file mode 100644
index 9327695..0000000
Binary files a/images/logo_roundcube.png and /dev/null differ
diff --git a/images/logo_safari.png b/images/logo_safari.png
deleted file mode 100644
index ae402a6..0000000
Binary files a/images/logo_safari.png and /dev/null differ
diff --git a/images/mail.png b/images/mail.png
deleted file mode 100644
index 806b70e..0000000
Binary files a/images/mail.png and /dev/null differ
diff --git a/images/octocat.png b/images/octocat.png
deleted file mode 100644
index d91ff0d..0000000
Binary files a/images/octocat.png and /dev/null differ
diff --git a/images/overview.png b/images/overview.png
deleted file mode 100644
index 9f9e8d9..0000000
Binary files a/images/overview.png and /dev/null differ
diff --git a/images/twitter.png b/images/twitter.png
deleted file mode 100644
index 47ac316..0000000
Binary files a/images/twitter.png and /dev/null differ
diff --git a/img/hero.jpg b/img/hero.jpg
new file mode 100644
index 0000000..03df0dc
Binary files /dev/null and b/img/hero.jpg differ
diff --git a/img/logo_encrypto.png b/img/logo_encrypto.png
new file mode 100644
index 0000000..d46202a
Binary files /dev/null and b/img/logo_encrypto.png differ
diff --git a/img/logo_flowcrypt.jpg b/img/logo_flowcrypt.jpg
new file mode 100644
index 0000000..3db5f80
Binary files /dev/null and b/img/logo_flowcrypt.jpg differ
diff --git a/img/logo_gdpr-eu-white.svg b/img/logo_gdpr-eu-white.svg
new file mode 100644
index 0000000..e190fae
--- /dev/null
+++ b/img/logo_gdpr-eu-white.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/img/logo_github.svg b/img/logo_github.svg
new file mode 100644
index 0000000..c04f45f
--- /dev/null
+++ b/img/logo_github.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/img/logo_globaleaks.svg b/img/logo_globaleaks.svg
new file mode 100644
index 0000000..946d443
--- /dev/null
+++ b/img/logo_globaleaks.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/img/logo_mailvelope.svg b/img/logo_mailvelope.svg
new file mode 100644
index 0000000..8dfdc97
--- /dev/null
+++ b/img/logo_mailvelope.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/img/logo_mymail_crypt.jpg b/img/logo_mymail_crypt.jpg
new file mode 100644
index 0000000..459d7f3
Binary files /dev/null and b/img/logo_mymail_crypt.jpg differ
diff --git a/img/logo_openudc.png b/img/logo_openudc.png
new file mode 100644
index 0000000..b6c28d2
Binary files /dev/null and b/img/logo_openudc.png differ
diff --git a/img/logo_passbolt.png b/img/logo_passbolt.png
new file mode 100644
index 0000000..2b1efee
Binary files /dev/null and b/img/logo_passbolt.png differ
diff --git a/img/logo_pgpanywhere.png b/img/logo_pgpanywhere.png
new file mode 100644
index 0000000..8ddaf08
Binary files /dev/null and b/img/logo_pgpanywhere.png differ
diff --git a/img/logo_protonmail.svg b/img/logo_protonmail.svg
new file mode 100644
index 0000000..e54b78d
--- /dev/null
+++ b/img/logo_protonmail.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/img/logo_stf.jpeg b/img/logo_stf.jpeg
new file mode 100644
index 0000000..917253b
Binary files /dev/null and b/img/logo_stf.jpeg differ
diff --git a/img/openpgpjs-logo.svg b/img/openpgpjs-logo.svg
new file mode 100644
index 0000000..912b29c
--- /dev/null
+++ b/img/openpgpjs-logo.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/img/overview.png b/img/overview.png
new file mode 100644
index 0000000..4ce31b5
Binary files /dev/null and b/img/overview.png differ
diff --git a/index.html b/index.html
index 79033a5..de5dcf4 100644
--- a/index.html
+++ b/index.html
@@ -1,111 +1,424 @@
-
+
-
-
-
- OpenPGP.js | OpenPGP JavaScript Implementation
-
-
-
-
-
-
- About
-
- This project aims to provide an Open Source OpenPGP library in JavaScript so it can be used on virtually every device.
- Instead of other implementations that are aimed at using native code, OpenPGP.js is meant to bypass this requirement (i.e. people will not have to install gpg on their machines in order to use the library).
- The idea is to implement all the needed OpenPGP functionality in a JavaScript library that can be reused in other projects that provide browser extensions or server applications.
- It should allow you to sign, encrypt, decrypt, and verify any kind of text - in particular e-mails - as well as managing keys.
-
- This project is maintained by Proton Mail .
-
- Contacts:
-
-
-
+
+
+
+ OpenPGP.js
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
OpenPGP JavaScript Implementation
+
+ OpenPGP.js is an Open Source JavaScript library implementing the
+ OpenPGP standard for cryptographic operations, such as encrypting,
+ decrypting, signing and verifying messages across devices and
+ applications without requiring native code installation.
+
+
+
+
+
+
+
+
+
+
+
About OpenPGP
+
+ This project aims to provide an Open Source OpenPGP library in
+ JavaScript so it can be used on virtually every device.
+ Instead of other implementations that are aimed at using
+ native code, OpenPGP.js is meant to bypass this requirement
+ (i.e. people will not have to install gpg on their machines in
+ order to use the library). The idea is to implement all the
+ needed OpenPGP functionality in a JavaScript library that can
+ be reused in other projects that provide browser extensions or
+ server applications. It should allow you to sign, encrypt,
+ decrypt, and verify any kind of text - in particular e-mails -
+ as well as managing keys.
+
+
+ To fetch public keys, the
+ WKD client
+ and/or
+ HKP client
+ can be used. The latter can also be used to upload public keys
+ to OpenPGP key servers.
+
+
+ This project is maintained by
+ Proton Mail .
+
+
+
+
+
+
+
+
+
+
+
+
+
Supporters
+
+
+ Who else is using OpenPGP.js
+
+
+
+
+
+
+
+
+
diff --git a/safari-pinned-tab.svg b/safari-pinned-tab.svg
new file mode 100644
index 0000000..b9102ad
--- /dev/null
+++ b/safari-pinned-tab.svg
@@ -0,0 +1 @@
+
\ No newline at end of file