.page { overflow: hidden; } #logo { display: flex; img { width: auto; max-width: 100%; max-height: 240px; } } .pencil-texture { position: absolute; --remaining-width-to-full: calc(var(--max-width-plus-padding) - min(calc(100vw - 100px), var(--max-width-plus-padding))); left: Max(calc(-1 * var(--remaining-width-to-full)), -50px); width: 100px; mix-blend-mode: multiply; @media screen and (max-width: 1000px) { width: 40px; top: 400px; left: -10px; } } #quick-links { margin-top: calc(80 * var(--variable-px)); display: flex; gap: calc(var(--font-size-link) * 0.8); flex-wrap: wrap; div { display: flex; gap: calc(var(--font-size-link) * 0.8); flex-direction: row; img { width: 48px; display: block; } } } #hero-message { h1 { font-size: var(--font-size-intro-heading); } p { font-size: var(--font-size-intro-body); @media screen and (max-width: 1400px) { max-width: unset !important; } } } .hexagons { max-width: var(--max-width); margin: auto; position: relative; bottom: calc(-80 * var(--variable-px)); div { position: absolute; top: 0; right: 10%; svg { position: absolute; margin: auto; top: 0; right: 0; bottom: 0; left: 0; transform: translate(-50%) rotate(347deg); opacity: 0.25; width: Max(1000px, Min(1400px, calc(100vw * 1400 / 1920))); height: auto; polygon { fill: none; stroke: gray; stroke-width: 1px; } } } } #graphite-tomorrow > img { margin: 16px 0; } #disciplines { align-items: center; .informational-group { margin-top: 0; .informational { margin-top: 40px; } } } // #node-graph { // #node-graph-intro { // .section { // align-items: center; // } // ~ section { // margin-top: calc(80 * var(--variable-px)); // } // } // } #vector-art { .section { align-items: center; .background-video { position: relative; font-size: 0; video { max-width: Min(100%, 1280px); } // Uses a white border over the video to cover up the edges of the video which, due to a Chrome rendering bug, displays black edges sometimes when scrolling &::after { content: ""; position: absolute; inset: 0; border: 2px solid white; pointer-events: none; } } .download-artwork { display: flex; align-items: center; img { width: 128px; height: 128px; border: 12px solid var(--color-walnut); vertical-align: top; } p { display: flex; flex-direction: column; max-width: 300px; margin-left: 40px; text-align: left; } } } } #imaginate { #imaginate-intro { .alternating-text { position: relative; span { // Move left by half (since it's centered) the average (half the 74px difference) of the variance in word lengths margin-left: calc(-1.54em / 2 / 2); opacity: 0; $alternate-duration: 15s; $alternate-words: 5; animation: $alternate-duration infinite linear 0s fade-word; // The 1st child is the widest &:not(:nth-child(1)) { position: absolute; right: 0; } @for $i from 1 through $alternate-words { &:nth-child(#{$i}) { animation-delay: ($alternate-duration / $alternate-words * ($i - 1)); } } @keyframes fade-word { // Fade in at the start (which begins staggered on each item by `animation-delay`) #{0.0%} { opacity: 0; } #{2.5%} { opacity: 1; } // Remain visible for this item's slice of time, then fade out #{0.0% + 100% / ($alternate-words + 1)} { opacity: 1; } #{2.5% + 100% / ($alternate-words + 1)} { opacity: 0; } } } } .section { align-items: center; } ~ section { margin-top: calc(80 * var(--variable-px)); } } // #imaginate-creative-concepts-carousel { // margin-top: 20px; // .screenshot-details { // justify-content: center; // } // + blockquote { // margin-top: 0; // } // } } .feature-explainer { margin-top: 40px; .diptych { width: 100%; .section { justify-content: center; align-items: center; h2 { text-align: center; } } } .section { flex: 1 1 calc(50% - (80 * var(--variable-px)) / 2); } } #community { background-color: var(--color-lime); #newsletter { #newsletter-success { background: var(--color-crimson); margin-top: 40px; padding: 40px; width: 100%; color: var(--color-fog); box-sizing: border-box; &:not(:target) { display: none; } } #newsletter-success:target ~ form { display: none; } form { width: 100%; margin-top: 40px; display: flex; gap: 20px; flex-wrap: wrap; .same-line { display: flex; gap: 20px; flex: 100000 1 0; div { min-height: auto; } @media screen and (max-width: 1200px) { flex-direction: column; flex: 1 1 100%; &.name, &.email { flex: 1 1 100%; } } } .column { display: flex; flex-direction: column; justify-content: flex-end; --input-focus-color: var(--color-ale); &.name { flex: 1 0 0; min-width: 240px; } &.phone { display: none; } &.email { flex: 1 0 0; min-width: 240px; } @media screen and (max-width: 400px) { &.name, &.email { min-width: 100%; } } &.submit { flex: 1 0 auto; } label, input { flex: 0 0 auto; } label { font-size: var(--font-size-link); font-weight: 800; margin-bottom: 10px; line-height: 1; } input:not([type="submit"]) { flex: 0 0 auto; width: 100%; height: calc(var(--font-size-link) * 2); font-size: calc(var(--font-size-link) * 0.9); color: inherit; border: var(--border-thickness) solid currentColor; outline: none; margin: 0; padding: 0 var(--font-size-link); font-family: inherit; font-weight: inherit; box-sizing: border-box; &:focus { border-color: var(--input-focus-color); } } input[type="submit"] { background: none; outline: none; cursor: pointer; &:focus { border-color: var(--input-focus-color); color: var(--input-focus-color); } } } } } #social .social-links { display: flex; flex-wrap: wrap; gap: 20px 80px; margin-top: 40px; .column { display: flex; flex-direction: column; gap: 20px; a { text-decoration: none; display: flex; img { width: 48px; height: 48px; } span { line-height: 48px; margin: 0; margin-left: 20px; } } } } } #demo-video { max-width: 1000px; } #fundraising { background-color: var(--color-seaside); color: rgba(0, 0, 0, 0.9); .graphic { max-width: 400px; } } #get-involved-box { background-color: var(--color-lemon); background-blend-mode: color-burn; }