on master help sign in
sigils post tweaks, sass fixes, semantic templating, cleaning up weird spacing all over the place
a561e21Matilde Park
content/blog/creating-sigils.md+7−7
@@ -10,17 +10,17 @@ image ="https://media.urbit.org/site/posts/essays/sigils3.png"
10
10
11<!-- ![](https://media.urbit.org/site/blog-9.jpg) -->
11<!-- ![](https://media.urbit.org/site/blog-9.jpg) -->
12
12
13−One of the basic building blocks of Urbit is Urbit ID, our naming and identity system. Your Urbit ID is a short, recognizable name that’s also a network address for your Urbit OS instance. (You can find a complete, high level description of Urbit ID [here](https://urbit.org/understanding-urbit/urbit-id/)).
13+One of the basic building blocks of Urbit is Urbit ID, our naming and identity system. Your Urbit ID is a short, recognizable name that’s also a network address for your Urbit OS instance. (You can find a complete, high level description of Urbit ID [here](https://urbit.org/understanding-urbit/urbit-id/).)
14
14
15−Your Urbit ID is meant to feel a bit like a secret code name. It doesn’t leak any information about the real you — but it’s still memorable and recognizable. Getting an Urbit Id should feel exciting, like getting a brand new identity in a new world.
15+Your Urbit ID is meant to feel a bit like a secret code name. It doesn’t leak any information about the real you — but it’s still memorable and recognizable. Getting an Urbit ID should feel exciting, like getting a brand new identity in a new world.
16
16
17From a design standpoint, some of this is accomplished simply by having a system for the names themselves. Under the hood, Urbit IDs are actually just numbers. There has always been an algorithm for turning these numbers into pronounceable names like `~tacryt-socryp` (13,304,832) or `~litzod` (1,280) or `~nes` (212).
17From a design standpoint, some of this is accomplished simply by having a system for the names themselves. Under the hood, Urbit IDs are actually just numbers. There has always been an algorithm for turning these numbers into pronounceable names like `~tacryt-socryp` (13,304,832) or `~litzod` (1,280) or `~nes` (212).
18
18
19While the names are great, they’re not quite enough. Especially in a rich interface. Each Urbit ID really needed some form of visual representation, image, or crest. A digital identity needs to be something you can really attach to, both yours and those that belong to your friends.
19While the names are great, they’re not quite enough. Especially in a rich interface. Each Urbit ID really needed some form of visual representation, image, or crest. A digital identity needs to be something you can really attach to, both yours and those that belong to your friends.
20
20
21−There are 2^32 or 4.2 billion unique Urbit IDs. Clearly there’s no way that we were going to do this by hand. And purely algorithmic solutions can often produce disappointing, undifferentiated output.
21+There are 2<sup>32</sup> or 4.2 billion unique Urbit IDs. Clearly there’s no way that we were going to do this by hand. And purely algorithmic solutions can often produce disappointing, undifferentiated output.
22
22
23−Regardless, we set out to tackle this problem. In the end, every Urbit ID got its very own ‘sigil’.
23+Regardless, we set out to tackle this problem. In the end, every Urbit ID got its very own ‘sigil.’
24
24
25In this post we’ll walk through how we thought about the problem, iterated through possible solutions, and the toolchain we used to arrive at the final result.
25In this post we’ll walk through how we thought about the problem, iterated through possible solutions, and the toolchain we used to arrive at the final result.
26
26
@@ -64,7 +64,7 @@ The plans of both Ledoux and Palladio are incredibly dynamic. They’re mostly g
64
64
65Another influence: international maritime signal flags. We like these not only because of their striking visual qualities, but also because they correspond with a letter system, just like our sigils. Each one conveys useful information; for example, “Keep clear of me; I am maneuvering with difficulty,” a flag we all feel like raising from time to time. This influence was key to the idea that pairing symbol to phoneme was a possibility.
65Another influence: international maritime signal flags. We like these not only because of their striking visual qualities, but also because they correspond with a letter system, just like our sigils. Each one conveys useful information; for example, “Keep clear of me; I am maneuvering with difficulty,” a flag we all feel like raising from time to time. This influence was key to the idea that pairing symbol to phoneme was a possibility.
66
66
67−You can see the whole collection of our visual research here: [https://www.are.na/tlon/2019-sigils-research](https://www.are.na/tlon/2019-sigils-research)
67+You can see the whole collection of our visual research [here](https://www.are.na/tlon/2019-sigils-research).
68
68
69Ultimately, we didn’t specifically draw on any of these influences very consciously. The goal of visual research is to get a sense of the territory, what has been tried, and what works. We think these threads of prior work are evident in the final result — you can *feel* them, but it’s tough to point to them individually.
69Ultimately, we didn’t specifically draw on any of these influences very consciously. The goal of visual research is to get a sense of the territory, what has been tried, and what works. We think these threads of prior work are evident in the final result — you can *feel* them, but it’s tough to point to them individually.
70
70
@@ -72,13 +72,13 @@ Ultimately, we didn’t specifically draw on any of these influences very consci
72
72
73> *“Lev’s sigil appeared, strobing, as Netherton was getting out of the cab in Henrietta Street. “Yes?” Netherton asked.”*
73> *“Lev’s sigil appeared, strobing, as Netherton was getting out of the cab in Henrietta Street. “Yes?” Netherton asked.”*
74>
74>
75−> — William Gibson, The Peripheral
75+> <cite>— William Gibson, The Peripheral</cite>
76
76
77Before we get to how we worked through the problem of actually designing these things, let’s talk about the problem of naming.
77Before we get to how we worked through the problem of actually designing these things, let’s talk about the problem of naming.
78
78
79We went through so many names for these things. Crest, symbol, seal, tag, pictograph, stamp, emblem, signet, icon, glyph, holomark, visage, radigy, pattern, the list goes on for an incredibly (embarrassingly) long time. We argued about this, we went back and forth about it.
79We went through so many names for these things. Crest, symbol, seal, tag, pictograph, stamp, emblem, signet, icon, glyph, holomark, visage, radigy, pattern, the list goes on for an incredibly (embarrassingly) long time. We argued about this, we went back and forth about it.
80
80
81−Sigil won, ultimately, because of the way that it’s personified in William Gibson’s The Peripheral. In the far future characters talk to each other by some kind of telepresence. When a call comes in from someone else they first appear as a ‘sigil’. It’s a strange word, but we were imagining a similar use-case.
81+Sigil won, ultimately, because of the way that it’s personified in William Gibson’s *The Peripheral*. In the far future, characters talk to each other by some kind of telepresence. When a call comes in from someone else, they first appear as a ‘sigil.’ It’s a strange word, but we were imagining a similar use-case.
82
82
83While we can’t point to any specific parts of our visual research that reappear directly, sigil is lovingly borrowed.
83While we can’t point to any specific parts of our visual research that reappear directly, sigil is lovingly borrowed.
84
84
content/community/hoonschool.md+1−1
@@ -22,4 +22,4 @@ Hoon 101 is a six-week, introductory-level course. It’s appropriate for motiva
22
22
23We're in the process of designing advanced Hoon Courses, but they aren't ready yet. They'll cover advanced development with Hoon, such as app development, kernel development, and the details of the Hoon type system. Such classes will be appropriate for graduates of Hoon 101. Check back later if you're interested in enrolling.
23We're in the process of designing advanced Hoon Courses, but they aren't ready yet. They'll cover advanced development with Hoon, such as app development, kernel development, and the details of the Hoon type system. Such classes will be appropriate for graduates of Hoon 101. Check back later if you're interested in enrolling.
24
24
25−<iframe id="apply" src="https://docs.google.com/forms/d/e/1FAIpQLSdcEoEqpFvB1WCTKPaYUSbJcjQ2nHk_z4XcZPIQc0SFD1rgmA/viewform?embedded=true" width="640" height="1500" frameborder="0" marginheight="0" marginwidth="0">Loading…</iframe>
25+<iframe id="apply" src="https://docs.google.com/forms/d/e/1FAIpQLSdcEoEqpFvB1WCTKPaYUSbJcjQ2nHk_z4XcZPIQc0SFD1rgmA/viewform?embedded=true" width="640" height="1350" frameborder="0" marginheight="0" marginwidth="0">Loading…</iframe>
sass/_main.scss+25−10
@@ -173,7 +173,6 @@ footer nav {
173
173
174body.essay {
174body.essay {
175 h1 {
175 h1 {
176− font-size: 1rem;
177 max-width: 95vw;
176 max-width: 95vw;
178 }
177 }
179 &:not(.bg-white) {
178 &:not(.bg-white) {
@@ -197,13 +196,25 @@ body.essay {
197 }
196 }
198 }
197 }
199
198
200− h2:not(:first-of-type) {
199+ h2 {
201 margin-top: 4rem;
200 margin-top: 4rem;
202 }
201 }
203
202
204 img {
203 img {
205 display: block;
204 display: block;
206− // margin: 0 auto;
205+ }
206+ div.footnote-definition {
207+ &[id="0"] {
208+ margin-top: 4rem;
209+ padding-top: 2rem;
210+ border-top: 1px solid black;
211+ }
212+ p {
213+ display: inline;
214+ }
215+ &:not([id="0"]) {
216+ margin: 2rem 0;
217+ }
207 }
218 }
208}
219}
209
220
@@ -225,6 +236,17 @@ ul p {
225figure {
236figure {
226 margin: 0;
237 margin: 0;
227}
238}
239+ // blockquote reset
240+blockquote {
241+ margin-block-start: 0;
242+ margin-block-end: 0;
243+ margin-inline-start: 0;
244+ margin-inline-end: 0;
245+ margin-bottom: 2rem;
246+ cite {
247+ font-style: normal;
248+ }
249+}
228
250
229 // images for posts
251 // images for posts
230img {
252img {
@@ -237,13 +259,6 @@ h1, h2, h3, h4, h5 {
237 margin-block-end: 0;
259 margin-block-end: 0;
238 @extend .fw6;
260 @extend .fw6;
239 font-size: 1rem;
261 font-size: 1rem;
240−}
241−
242−h1, .f1 {
243− @extend .lh-solid;
244−}
245−
246−h2, .f2, h3, .f3 {
247 @extend .lh-title;
262 @extend .lh-title;
248}
263}
249
264
templates/essays/post.html+3−3
@@ -1,5 +1,5 @@
1{% extends "base.html" %}
1{% extends "base.html" %}
2−{% block title %}
2+{% block title %}
3 <meta name="og:title" content="{{ page.title }} - {{ config.title }}">
3 <meta name="og:title" content="{{ page.title }} - {{ config.title }}">
4 <title>{{ page.title }} - {{ config.title }}</title>
4 <title>{{ page.title }} - {{ config.title }}</title>
5{% endblock title %}
5{% endblock title %}
@@ -44,9 +44,9 @@
44</nav>
44</nav>
45
45
46<article class="mb4 mt4 measure-wide full c4-12-lg">
46<article class="mb4 mt4 measure-wide full c4-12-lg">
47− <h2 class="f5 fw6 mt0 mb1">{{ page.title }}</h2>
47+ <h1 class="f5 fw6 mt0 mb1">{{ page.title }}</h1>
48 {% if page.extra.author %}
48 {% if page.extra.author %}
49− <span class="db">
49+ <span class="db">
50 <span class="dib fw4 mr1" rel="author">{{ page.extra.author }}</span>
50 <span class="dib fw4 mr1" rel="author">{{ page.extra.author }}</span>
51 {% if page.extra.ship %}
51 {% if page.extra.ship %}
52 <address class="dib gray0 fw4 mono">{{ page.extra.ship }}</address>
52 <address class="dib gray0 fw4 mono">{{ page.extra.ship }}</address>
templates/index.html+3−7
@@ -41,8 +41,6 @@
41 "></iframe> -->
41 "></iframe> -->
42</section>
42</section>
43
43
44−<!-- <nav class="full-bleed full grid12"> -->
45−
46<section class="full lh-copy c2-7-md c3-7-lg mt4">
44<section class="full lh-copy c2-7-md c3-7-lg mt4">
47 <p class="mb4">
45 <p class="mb4">
48 Urbit is two new pieces of technology:<br/>
46 Urbit is two new pieces of technology:<br/>
@@ -75,7 +73,7 @@
75 </ul>
73 </ul>
76</section>
74</section>
77
75
78−<section class="full c2-7-md c7-11-lg mt5">
76+<section class="full c7-12-md c7-11-lg mt5">
79 <h1 class="mb3">Developer Resources</h1>
77 <h1 class="mb3">Developer Resources</h1>
80 <p class="lh-copy mt1">If you're someone who likes playing with experimental software, you should dive right in. Booting an Urbit takes only a few minutes.</p>
78 <p class="lh-copy mt1">If you're someone who likes playing with experimental software, you should dive right in. Booting an Urbit takes only a few minutes.</p>
81 <ul class="list">
79 <ul class="list">
@@ -94,7 +92,7 @@
94 </ul>
92 </ul>
95</section>
93</section>
96
94
97−<section class="full c7-12-md c3-7-lg mt5">
95+<section class="full c2-7-md c3-7-lg mt5">
98 <h1 class="mb3">Learn More</h1>
96 <h1 class="mb3">Learn More</h1>
99 <p class="lh-copy mt1">We share ongoing project developments, discuss technical considerations, and update our public roadmap as often as possible.</p>
97 <p class="lh-copy mt1">We share ongoing project developments, discuss technical considerations, and update our public roadmap as often as possible.</p>
100 <ul class="list">
98 <ul class="list">
@@ -113,7 +111,7 @@
113 </ul>
111 </ul>
114</section>
112</section>
115
113
116−<section class="full c2-7-md c7-11-lg mv5">
114+<section class="full c7-12-md c7-11-lg mv5">
117 <h1 class="mb3">Stay Up to Date</h1>
115 <h1 class="mb3">Stay Up to Date</h1>
118 <p class="lh-copy mt1 mb3">
116 <p class="lh-copy mt1 mb3">
119 We send regular updates about our project. Enter your email to get them.
117 We send regular updates about our project. Enter your email to get them.
@@ -165,7 +163,5 @@
165 </p>
163 </p>
166</section>
164</section>
167
165
168− <!-- </nav> -->
169−<!-- </article> -->
170{% include "partials/footer.html" %}
166{% include "partials/footer.html" %}
171{% endblock content %}
167{% endblock content %}
templates/list.html+4−4
@@ -1,9 +1,9 @@
1{% extends "base.html" %}
1{% extends "base.html" %}
2−{% block title %}
2+{% block title %}
3 <meta name="og:title" content="{{ section.title }} - {{ config.title }}">
3 <meta name="og:title" content="{{ section.title }} - {{ config.title }}">
4 <title>{{ section.title }} - {{ config.title }}</title>
4 <title>{{ section.title }} - {{ config.title }}</title>
5{% endblock title %}
5{% endblock title %}
6−{% block description %}
6+{% block description %}
7 <meta name="og:description" content="Directory for {{ section.title }}.">
7 <meta name="og:description" content="Directory for {{ section.title }}.">
8 <meta name="description" content="Directory for {{ section.title }}.">
8 <meta name="description" content="Directory for {{ section.title }}.">
9{% endblock description %}
9{% endblock description %}
@@ -23,7 +23,7 @@
23 {% include "partials/navigation-search.html" %}
23 {% include "partials/navigation-search.html" %}
24</nav>
24</nav>
25<!-- content -->
25<!-- content -->
26−<article class="mt4 mb7 c1-13 c4-12-lg">
26+<article class="mt4 mb4 c1-13 c4-12-lg">
27 <ul class="posts">
27 <ul class="posts">
28 {% set posts = get_section(path=section.relative_path) %}
28 {% set posts = get_section(path=section.relative_path) %}
29 {% for page in posts.pages %}
29 {% for page in posts.pages %}
@@ -40,7 +40,7 @@
40 <li class="mb4">
40 <li class="mb4">
41 <h2 class="f4 fw4 mt0 mb0"><a class="bb-0" href="{{ subsection.permalink }}">{{ subsection.title }}</a></h2>
41 <h2 class="f4 fw4 mt0 mb0"><a class="bb-0" href="{{ subsection.permalink }}">{{ subsection.title }}</a></h2>
42 <p class="mt0">{{ subsection.description }}</p>
42 <p class="mt0">{{ subsection.description }}</p>
43− </li>
43+ </li>
44 {% endfor %}
44 {% endfor %}
45 </ul>
45 </ul>
46</article>
46</article>
templates/page.html+4−1
@@ -1,6 +1,6 @@
1{% extends "base.html" %}
1{% extends "base.html" %}
2
2
3−{% block title %}
3+{% block title %}
4 <meta name="og:title" content="{{ page.title }} - {{ config.title }}">
4 <meta name="og:title" content="{{ page.title }} - {{ config.title }}">
5 <title>{{ page.title }} - {{ config.title }}</title>
5 <title>{{ page.title }} - {{ config.title }}</title>
6{% endblock title %}
6{% endblock title %}
@@ -22,6 +22,9 @@
22 <meta name="twitter:image" content="https://media.urbit.org/logo/urbit-logo-card.png">
22 <meta name="twitter:image" content="https://media.urbit.org/logo/urbit-logo-card.png">
23 {% endif %}
23 {% endif %}
24{% endblock image %}
24{% endblock image %}
25+{% block bodyclasses %}
26+class="essay bg-white"
27+{% endblock bodyclasses %}
25
28
26{% block content %}
29{% block content %}
27
30
templates/partials/pagination.html+13−13
@@ -1,26 +1,26 @@
1−<footer class="relative mt4 mb4">{% if page.earlier %}
1+<footer class="relative">{% if page.earlier %}
2 <a class="bb-0" href="{{page.earlier.permalink}}">
2 <a class="bb-0" href="{{page.earlier.permalink}}">
3− <nav class="previous absolute right-1 t-right mb4">
3+ <nav class="previous absolute right-1 t-right">
4 {% if page.extra.hide_previous_title %} {% else %}<p class="mb0 f5">Previous Post:</p>{% endif %}
4 {% if page.extra.hide_previous_title %} {% else %}<p class="mb0 f5">Previous Post:</p>{% endif %}
5 <p {% if page.extra.flatten_pagination %}
5 <p {% if page.extra.flatten_pagination %}
6 data-flat="true"
6 data-flat="true"
7− class="mt5 relative mb5
7+ class="mt5 relative mb5
8 {% else %}
8 {% else %}
9 class="mt0 mb0 fw6 f5
9 class="mt0 mb0 fw6 f5
10 {% endif %}
10 {% endif %}
11 ">{{page.earlier.title}}</p>
11 ">{{page.earlier.title}}</p>
12− <time class="mono db f5 mb5">{{page.earlier.date | date(format="~%Y.%-m.%-d") }}</time>
12+ <time class="mono db f5 mb4">{{page.earlier.date | date(format="~%Y.%-m.%-d") }}</time>
13 </nav>
13 </nav>
14 </a>
14 </a>
15
15
16 {% elif page.heavier and not page.extra.hidenext %}
16 {% elif page.heavier and not page.extra.hidenext %}
17
17
18 <a class="bb-0" href="{{page.heavier.permalink}}">
18 <a class="bb-0" href="{{page.heavier.permalink}}">
19− <nav class="previous absolute right-1 t-right mb4">
19+ <nav class="previous absolute right-1 t-right">
20 {% if page.extra.hide_next_title %} {% else %}<p class="mb0 f5">Next Post:</p>{% endif %}
20 {% if page.extra.hide_next_title %} {% else %}<p class="mb0 f5">Next Post:</p>{% endif %}
21 <p {% if page.extra.flatten_pagination %}
21 <p {% if page.extra.flatten_pagination %}
22 data-flat="true"
22 data-flat="true"
23− class="mt5 relative mb5
23+ class="mt5 relative mb5
24 {% else %}
24 {% else %}
25 class="mt0 mb0 fw6 f5
25 class="mt0 mb0 fw6 f5
26 {% endif %}
26 {% endif %}
@@ -31,10 +31,10 @@
31
31
32 {% if page.relative_path == "understanding-urbit/urbit-os.md" %}
32 {% if page.relative_path == "understanding-urbit/urbit-os.md" %}
33 <a class="bb-0" href="/understanding-urbit/">
33 <a class="bb-0" href="/understanding-urbit/">
34− <nav class="next absolute left-1 t-left mb4">
34+ <nav class="next absolute left-1 t-left">
35 <p {% if page.extra.flatten_pagination %}
35 <p {% if page.extra.flatten_pagination %}
36 data-flat="true"
36 data-flat="true"
37− class="mt5 relative mb5
37+ class="mt5 relative mb5
38 {% else %}
38 {% else %}
39 class="mt0 mb0 fw6 f5
39 class="mt0 mb0 fw6 f5
40 {% endif %}
40 {% endif %}
@@ -44,16 +44,16 @@
44 {% elif page.later %}
44 {% elif page.later %}
45
45
46 <a class="bb-0" href="{{page.later.permalink}}">
46 <a class="bb-0" href="{{page.later.permalink}}">
47− <nav class="next absolute left-1 mb4">
47+ <nav class="next absolute left-1">
48 {% if page.extra.hide_next_title %} {% else %}<p class="mb0 f5">Next Post:</p>{% endif %}
48 {% if page.extra.hide_next_title %} {% else %}<p class="mb0 f5">Next Post:</p>{% endif %}
49 <p {% if page.extra.flatten_pagination %}
49 <p {% if page.extra.flatten_pagination %}
50 data-flat="true"
50 data-flat="true"
51− class="mt5 relative mb5
51+ class="mt5 relative mb5
52 {% else %}
52 {% else %}
53 class="mt0 mb0 fw6 f5
53 class="mt0 mb0 fw6 f5
54 {% endif %}
54 {% endif %}
55 ">{{page.later.title}}</p>
55 ">{{page.later.title}}</p>
56− <time class="mono db f5 mb5">{{page.later.date | date(format="~%Y.%-m.%-d") }}</time>
56+ <time class="mono db f5 mb4">{{page.later.date | date(format="~%Y.%-m.%-d") }}</time>
57 </nav>
57 </nav>
58 </a>
58 </a>
59
59
@@ -61,11 +61,11 @@
61 {% elif page.lighter and not page.extra.hideprevious %}
61 {% elif page.lighter and not page.extra.hideprevious %}
62
62
63 <a class="bb-0" href="{{page.lighter.permalink}}">
63 <a class="bb-0" href="{{page.lighter.permalink}}">
64− <nav class="next absolute left-1 mb4">
64+ <nav class="next absolute left-1">
65 {% if page.extra.hide_previous_title %} {% else %}<p class="mb0 f5">Previous Post:</p>{% endif %}
65 {% if page.extra.hide_previous_title %} {% else %}<p class="mb0 f5">Previous Post:</p>{% endif %}
66 <p {% if page.extra.flatten_pagination %}
66 <p {% if page.extra.flatten_pagination %}
67 data-flat="true"
67 data-flat="true"
68− class="mt5 relative mb5
68+ class="mt5 relative mb5
69 {% else %}
69 {% else %}
70 class="mt0 mb0 fw6 f5
70 class="mt0 mb0 fw6 f5
71 {% endif %}
71 {% endif %}
templates/understanding-urbit/list.html+1−1
@@ -79,7 +79,7 @@
79 {% endfor %}
79 {% endfor %}
80</footer>
80</footer>
81
81
82−<section class="full c4-10-lg lh-copy mv6">
82+<section class="full c4-10-lg lh-copy mt6 mb4">
83 <iframe name="nothing" style="display:none;"></iframe>
83 <iframe name="nothing" style="display:none;"></iframe>
84 <p class="mt5">If you’d like to follow our progress, we send monthly updates via email:</p>
84 <p class="mt5">If you’d like to follow our progress, we send monthly updates via email:</p>
85 <form
85 <form
templates/understanding-urbit/post.html+3−3
@@ -1,6 +1,6 @@
1{% extends "base.html" %}
1{% extends "base.html" %}
2
2
3−{% block title %}
3+{% block title %}
4 <meta name="og:title" content="{{ page.title }} - {{ config.title }}">
4 <meta name="og:title" content="{{ page.title }} - {{ config.title }}">
5 <title>{{ page.title }} - {{ config.title }}</title>
5 <title>{{ page.title }} - {{ config.title }}</title>
6{% endblock title %}
6{% endblock title %}
@@ -68,12 +68,12 @@
68 {% if page.extra.readtime %}
68 {% if page.extra.readtime %}
69 <span class="dib mono{% if page.date %} ml2{% endif %} gray2 f5">{{ page.reading_time }}m read</span>
69 <span class="dib mono{% if page.date %} ml2{% endif %} gray2 f5">{{ page.reading_time }}m read</span>
70 {% endif %}
70 {% endif %}
71−
71+
72 {{ page.content | safe }}
72 {{ page.content | safe }}
73
73
74 {% include "partials/pagination.html" %}
74 {% include "partials/pagination.html" %}
75 </article>
75 </article>
76− <section class="full c4-10-lg lh-copy mv6">
76+ <section class="full c4-10-lg lh-copy mt6 mb4">
77 <iframe name="nothing" style="display:none;"></iframe>
77 <iframe name="nothing" style="display:none;"></iframe>
78 <p class="mt5">If you’d like to follow our progress, we send monthly updates via email:</p>
78 <p class="mt5">If you’d like to follow our progress, we send monthly updates via email:</p>
79 <form
79 <form